1.0.0 • Published 3 years ago

ngx-mask-workspace v1.0.0

Weekly downloads
3
License
MIT
Repository
-
Last release
3 years ago

Ngx-mask

An input mask directives library built on top of Angular.

License: MIT

Installation

npm config set @utp:registry https://npm.stdev.ru/
npm install @utp/ngx-mask

Setup

import { NgxMaskModule } from 'ngx-mask';

@NgModule({
  imports: [
    IMaskModule,
    ...
  ],
  ...
}) {...}

Usage

<!-- directive -->
<input phoneMask [maskOptions]="{mask: '+{7}(000)000-00-00'}"
  <!--see more mask optional props in a guide-->
/>

Directives

:page_with_curl: Avalaible masks

phoneMask

By using this mask we can mask our phone numbers

Usage
<input phoneMask [unMask]="true"/>

alphaNumericMask

By using this mask we can limit our inputs to only alphabets and numbers

Usage
<input alphaNumericMask [withCyrillic]="true"/>
Options
OptionDefaultDescription
onlyLowerCasefalseAllow only lowercase letters
onlyUpperCasefalseAllow only uppercase letters
withCyrillicfalseAllow cyrillic letters also
withWhiteSpacefalseAllow withWhiteSpace

datePickerMask

By using this mask we can mask our date

Usage
<input datePickerMask nzFormat="dd.MM.yyyy hh:mm:ss" formControlName="date" [nzShowTime]="true"/>

floatMask

By using this mask we can mask a number to use , instead of .

Usage
<input floatMask [fractionLength]="2" [withMinus]="true"/>
Options
OptionDefaultDescription
fractionLength2Fraction length
withMinusfalseAllow negetive number

grnzmask

By using this mask we can mask out input in GRNZ format

Usage
<input grnzMask [isTrailer]="true"/>
Options
OptionDefaultDescription
isTrailerfalseIs trailer or not

intMask

By using this mask we can allow only integer numbers in the input

Usage
<input intMask [withMinus]="true"/>
Options
OptionDefaultDescription
withMinusfalseAllow negetive number

kppMask

By using this mask we can put only valid kpp number

Usage
<input kppMask [kppMasMode]="2"/>
Options
OptionDefaultDescription
kppMasMode2Resident -> 0, NotResident -> 1, All -> 2

subCodeMask

By using this mask we can put only subcode number 000-000 number

Usage
<input subCodeMask/>

cadastralMask

By using this mask we can make our cadastral mask 00:00:0000000:00

Usage
<input cadastralMask [unMask]="true"/>

numberMask

By using this mask we can make our input to have only numbers

Usage
<input numberMask [withMinus]="true" [decimal]="false" type="text">
Options
OptionDefaultDescription
decimaltrueallow decimal numbers
withMinusfalseallow negetive numbers

cyrillicMask

By using this mask we can allow only allow cyrillic letters

Usage
<input cyrillicMask type="text">

Optional props

DirectiveDefaultDescriptionUsage
maskOptionsDepends on directive typePass / override mask option object[maskOptions]="{mask: '+{7}(000)000-00-00'}"
unMaskfalseGet unmasked value on form submit (It doesn't work with datePickerMask)[unMask] = "true"

Development

As to make changes to this package follow the steps:

  1. Build ngx-mask
  npm run lib:build
  1. (Optional) Launch example app
  ng serve

Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.

Code scaffolding

Run ng generate component component-name to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module.

Build

Run ng build to build the project. The build artifacts will be stored in the dist/ directory. Use the --prod flag for a production build.

Running unit tests

Run ng test to execute the unit tests via Karma.

Running end-to-end tests

Run ng e2e to execute the end-to-end tests via Protractor.

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI README.