@ghcordeiro/ngx-mask
v20.0.5
Published
awesome ngx mask
Maintainers
Readme
Table of Contents
Features
NGX-MASK is a feature-rich input mask directive for Angular applications that provides:
🎯 Masking Patterns
• Custom patterns & expressions
• Multiple mask patterns (|)
• Built-in common patterns
• Prefix & suffix support
🔢 Number Formatting
• Thousand separators
• Decimal markers
• Negative numbers
• Leading zeros
⚡ Input Control
• Real-time validation
• Clear on non-match
• Show/hide mask typing
• Keep character positions
📅 Date & Time
• Leading zero handling
• AM/PM support
• Custom separators
• Multiple formats
🛠️ Customization
• Custom placeholders
• Special characters
• Transform functions
• Custom validation
📋 Form Integration
• Reactive Forms
• ControlValueAccessor
• Built-in validation
• Standalone support
Demo
Check out our live documentation and examples
Installation
# For Angular 17 and above
$ npm install ngx-mask # Using npm
$ bun add ngx-mask # Using bun
# For specific Angular versions:
# Angular 16.x.x
$ npm install [email protected] # Using npm
$ bun add [email protected] # Using bun
# Angular 15.x.x
$ npm install [email protected] # Using npm
$ bun add [email protected] # Using bun
# Angular 14.x.x
$ npm install [email protected] # Using npm
$ bun add [email protected] # Using bun
# Angular 13.x.x or 12.x.x
$ npm install [email protected] # Using npm
$ bun add [email protected] # Using bunPackage Manager Note: You can use either npm or bun based on your preference. Both package managers will work equally well with ngx-mask.
Version Compatibility
NGX-MASK follows Angular's official support policy, supporting Active and LTS versions. Currently supported:
- Angular 17 and newer (latest features and updates)
- For older Angular versions, use the corresponding NGX-MASK version as specified above
Note: Versions for Angular older than v17 will not receive new features or updates.
Quick Start
For Angular 15+ (Standalone)
Application-wide Setup with Default Config
bootstrapApplication(AppComponent, { providers: [provideEnvironmentNgxMask()] }).catch((err) =>
console.error(err)
);With Custom Configuration
import { NgxMaskConfig } from 'ngx-mask';
const maskConfig: Partial<NgxMaskConfig> = { validation: false };
bootstrapApplication(AppComponent, { providers: [provideEnvironmentNgxMask(maskConfig)] }).catch(
(err) => console.error(err)
);Feature-level Configuration
@Component({
selector: 'my-feature',
standalone: true,
imports: [NgxMaskDirective],
providers: [provideNgxMask()],
})
export class MyFeatureComponent {}For Angular < 15 (NgModule)
Application-wide Setup with Default Config
import { NgxMaskModule } from 'ngx-mask';
@NgModule({ imports: [NgxMaskModule.forRoot()] })
export class AppModule {}With Custom Configuration
import { NgxMaskModule, NgxMaskConfig } from 'ngx-mask';
const maskConfig: Partial<NgxMaskConfig> = { validation: false };
@NgModule({ imports: [NgxMaskModule.forRoot(maskConfig)] })
export class AppModule {}Feature-level Configuration
import { NgxMaskModule } from 'ngx-mask';
@NgModule({ imports: [NgxMaskModule.forChild()] })
export class FeatureModule {}Related Projects
Check out other projects by JSDaddy:
Contributing
We welcome contributions! Please read our contributing guidelines to learn about our development process and how you can propose bugfixes and improvements.
