![Oracle Drags Its Feet in the JavaScript Trademark Dispute](https://cdn.sanity.io/images/cgdhsj6q/production/919c3b22c24f93884c548d60cbb338e819ff2435-1024x1024.webp?w=400&fit=max&auto=format)
Security News
Oracle Drags Its Feet in the JavaScript Trademark Dispute
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
@cloudideaas/ngx-mask-ionic
Advanced tools
Unlike the original ngx-mask library the unmasked value will not be mapped to your form or bound value. Unfortunately Ionic syncs the value of the html input with the form - so there is no way (at least I could find) to track the values seperately. To put it another way - ngx-mask sets input.value to the masked value and form.value to the unmasked value, which isn't possible with Ionic since it syncs these two values.
$ npm install --save ngx-mask-ionic
Import ngx-mask-ionic module in Angular app.
import {NgxMaskIonicModule} from 'ngx-mask-ionic'
(...)
@NgModule({
(...)
imports: [
NgxMaskIonicModule.forRoot(options)
// Or no options and use default values
NgxMaskIonicModule.forRoot()
// ^^^ Chose one of the two options above, but not both.
]
(...)
})
... And in your page Module (eg. HomeModule, MyPageModule, ..)
import {NgxMaskIonicModule} from 'ngx-mask-ionic'
(...)
@NgModule({
(...)
imports: [
NgxMaskIonicModule
]
(...)
})
Then, just define masks in inputs.
<ion-input
formControlName="phoneNumber"
mask="(000) 000-0000"
type="text"
maxlength="14"
></ion-input>
<ion-input
formControlName="email"
mask="A*@A*.S*"
[dropSpecialCharacters]="false"
type="text"
></ion-input>
Also you can use mask pipe
<span>{{phone | mask: '(000) 000-0000'}}</span>
mask | example |
---|---|
9999-99-99 | 2017-04-15 |
0*.00 | 2017.22 |
000.000.000-99 | 048.457.987-98 |
AAAA | 0F6g |
SSSS | asDF |
You can define your custom options for all directives (as object in the mask module) or for each (as attributes for directive)
We have next default characters:
character |
---|
/ |
( |
) |
. |
: |
- |
space |
+ |
, |
@ |
<ion-input
type="text"
specialCharacters="[ '[' ,']' , '\' ]"
mask="[00]\[000]"
></ion-input>
Input value: 789-874.98
Masked value: [78]\[987]
We have next default patterns:
code | meaning |
---|---|
0 | digits (like 0 to 9 numbers) |
9 | digits (like 0 to 9 numbers), but optional |
A | letters (uppercase or lowercase) and digits |
S | only letters (uppercase or lowercase) |
<ion-input type="text" [patterns]="customPatterns" mask="(000-000)"></ion-input>
and in your component
public customPatterns = {'0': { pattern: new RegExp('\[a-zA-Z\]')}};
// OR
public customPatterns = pattern: { '0': { pattern: /[a-zA-Z']/ }};
Input value: 789HelloWorld
Masked value: (Hel-loW)
You can add prefix to you masked value
<ion-input type="text" prefix="+7 " mask="(000) 000 00 00"></ion-input>
You can add sufix to you masked value
<ion-input type="text" sufix=" $" mask="0000"></ion-input>
You can choose if mask will drop special character in the model, or not, default value true
<ion-input
type="text"
[dropSpecialCharacters]="false"
mask="000-000.00"
></ion-input>
Input value: 789-874.98
Model value: 789-874.98
You can choose if mask is shown while typing, or not, default value false
<ion-input mask="(000) 000-0000" prefix="+7" [showMaskTyped]="true"></ion-input>
You can choose clear the input if the input value not match the mask, default value false
You can pass array of expression and custom Pattern to pipe
<span>{{phone | mask: customMaska}}</span>
and in your component
customMaska: [string, pattern];
pattern = {
'P': {
pattern: new RegExp('\\d'),
}};
this.customMaska = ['PPP-PPP', this.pattern];
You can pass into mask pattern with brackets
<ion-input type="text" mask="A{4}"></ion-input>
This project was generated with Angular CLI version 7.0.3.
FAQs
Upgrade of ngx-mask-ionic to Angular 16
The npm package @cloudideaas/ngx-mask-ionic receives a total of 4 weekly downloads. As such, @cloudideaas/ngx-mask-ionic popularity was classified as not popular.
We found that @cloudideaas/ngx-mask-ionic demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.
Security News
Maven Central now validates Sigstore signatures, making it easier for developers to verify the provenance of Java packages.