angular-otp-box
Version:
Angular otp input field component for web applications. Easy to integrate and use.
25 lines • 2.27 kB
JavaScript
import { Directive, ElementRef, Renderer2, Input } from '@angular/core';
export class NumberOnly {
constructor(_elRef, _renderer) {
this._elRef = _elRef;
this._renderer = _renderer;
}
ngOnInit() {
if (!this.disabledNumberOnly) {
this._renderer.setAttribute(this._elRef.nativeElement, 'onkeypress', 'return (event.charCode >= 48 && event.charCode <= 57) || event.charCode == 0');
}
}
}
NumberOnly.decorators = [
{ type: Directive, args: [{
selector: '[numberOnly]'
},] }
];
NumberOnly.ctorParameters = () => [
{ type: ElementRef },
{ type: Renderer2 }
];
NumberOnly.propDecorators = {
disabledNumberOnly: [{ type: Input }]
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyT25seS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLW90cC1ib3gvc3JjL2xpYi9kaXJlY3RpdmVzL251bWJlck9ubHkuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFLeEUsTUFBTSxPQUFPLFVBQVU7SUFFdEIsWUFBb0IsTUFBa0IsRUFBVSxTQUFvQjtRQUFoRCxXQUFNLEdBQU4sTUFBTSxDQUFZO1FBQVUsY0FBUyxHQUFULFNBQVMsQ0FBVztJQUFJLENBQUM7SUFFekUsUUFBUTtRQUNQLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDN0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsWUFBWSxFQUFFLDhFQUE4RSxDQUFDLENBQUM7U0FDcko7SUFDRixDQUFDOzs7WUFYRCxTQUFTLFNBQUM7Z0JBQ1YsUUFBUSxFQUFFLGNBQWM7YUFDeEI7OztZQUptQixVQUFVO1lBQUUsU0FBUzs7O2lDQU12QyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBSZW5kZXJlcjIsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuXHRzZWxlY3RvcjogJ1tudW1iZXJPbmx5XSdcbn0pXG5leHBvcnQgY2xhc3MgTnVtYmVyT25seSB7XG5cdEBJbnB1dCgpIGRpc2FibGVkTnVtYmVyT25seTogYm9vbGVhbjtcblx0Y29uc3RydWN0b3IocHJpdmF0ZSBfZWxSZWY6IEVsZW1lbnRSZWYsIHByaXZhdGUgX3JlbmRlcmVyOiBSZW5kZXJlcjIpIHsgfVxuXG5cdG5nT25Jbml0KCkge1xuXHRcdGlmICghdGhpcy5kaXNhYmxlZE51bWJlck9ubHkpIHtcblx0XHRcdHRoaXMuX3JlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLl9lbFJlZi5uYXRpdmVFbGVtZW50LCAnb25rZXlwcmVzcycsICdyZXR1cm4gKGV2ZW50LmNoYXJDb2RlID49IDQ4ICYmIGV2ZW50LmNoYXJDb2RlIDw9IDU3KSB8fCBldmVudC5jaGFyQ29kZSA9PSAwJyk7XG5cdFx0fVxuXHR9XG59Il19