An open API service indexing awesome lists of open source software.

https://github.com/rafaelcorradini/ngx-ion-simple-mask

Input mask for Angular/Ionic
https://github.com/rafaelcorradini/ngx-ion-simple-mask

angular angular7 ionic ionic-angular ionic4 mask ngx simple

Last synced: about 1 month ago
JSON representation

Input mask for Angular/Ionic

Awesome Lists containing this project

README

        

[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://raw.githubusercontent.com/rafaelcorradini/ngx-ion-simple-mask/master/LICENSE)
[![Build Status](https://travis-ci.com/rafaelcorradini/ngx-ion-simple-mask.svg?branch=master)](https://travis-ci.com/rafaelcorradini/ngx-ion-simple-mask)
# ngx-ion-simple-Mask

Input mask for Angular/Ionic (Tested with Ionic 4)

## Installing

```bash
$ npm install --save ngx-ion-simple-mask
```

## Usage

Import ngx-ion-simple-mask module in Angular app.
```typescript
import { SimpleMaskModule } from 'ngx-ion-simple-mask'

@NgModule({
imports: [
SimpleMaskModule
]
})
```

Or import the directive/pipe separately
```typescript
import { SimpleMaskDirective, SimpleMaskPipe } from 'ngx-ion-simple-mask'

@NgModule({
declarations: [
SimpleMaskDirective,
SimpleMaskPipe
]
})
```

### Ionic

ionic usage example:
```html

```

### Angular

Angular usage example:
```html

```

### Form Control/NgModel

The libray works with Form Control and ngModel:
```html

```

```html

```

### Pipe

#### example
```html

{{ '123321123-12' | simpleMask:'999.999.999-99' }}


```
output:
```html

123.321.123-12


```

#### example with add patterns
```html

{{ 'asd-123' | simpleMask:'aaa-II':{'I': '[0-9]' } }}


```
output:
```html

asd-12


```

#### example with new patterns(ignoring old patterns)
```html

{{ '123-bddd' | simpleMask:'III-aaa':{'I': '[0-9]' }:true }}


```
output:
```html

123-aaa


```

## Patterns
### Default patterns:

```typescript
patterns = {
'9': new RegExp('[0-9]'),
'a': new RegExp('[a-z]'),
'A': new RegExp('[A-Z]'),
'x': new RegExp('[a-zA-Z]'),
'*': new RegExp('[a-zA-Z0-9]'),
'~': new RegExp('[-\+]')
};
```

| pattern | meaning |
|------|---------|
| **9** | digits (0-9) |
| **a** | lowercase letters (a-z) |
| **A** | uppercase letters (A-Z) |
| **x** | letters uppercase or lowercase (a-z, A-Z) |
| **~** | - or + |
| **\*** | letters or digits (a-z, A-Z, 0-9) |
| **\\** | cancel next pattern effect |

#### Examples

| mask | example |
| ------- | ------- |
| 999.999.aaa | 113.123.asd |
| (AA) 999 | (AS) 123 |
| 999\\\~ | 999~ |

### Set new patterns

The set strings will be used as regex
```html

```
example of input: abc123

### Add patterns

The set strings will be used as regex
```html

```
example of input: +abc123

## angular-library-starter
The project was built with [angular-library-starter](https://github.com/robisim74/angular-library-starter/).

## License
MIT