input-mask-angular
Version:
Angular directive using ts-input-mask library
28 lines • 3.33 kB
JavaScript
import { Pipe } from '@angular/core';
import { CaretString, Mask } from 'ts-input-mask';
import * as i0 from "@angular/core";
var InputMaskAngularPipe = /** @class */ (function () {
function InputMaskAngularPipe() {
}
InputMaskAngularPipe.prototype.transform = function (value, primaryFormat, customNotations) {
if (customNotations === void 0) { customNotations = []; }
if (!!primaryFormat) {
var mask = Mask.getOrCreate(primaryFormat, customNotations);
var stringLength = value.length;
var result = mask.apply(new CaretString(value, stringLength), false);
return String(result.formattedText.string);
}
return value;
};
/** @nocollapse */ InputMaskAngularPipe.ɵfac = function InputMaskAngularPipe_Factory(t) { return new (t || InputMaskAngularPipe)(); };
/** @nocollapse */ InputMaskAngularPipe.ɵpipe = i0.ɵɵdefinePipe({ name: "mask", type: InputMaskAngularPipe, pure: true });
return InputMaskAngularPipe;
}());
export { InputMaskAngularPipe };
/*@__PURE__*/ (function () { i0.ɵsetClassMetadata(InputMaskAngularPipe, [{
type: Pipe,
args: [{
name: 'mask'
}]
}], null, null); })();
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbWFzay1hbmd1bGFyLnBpcGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9pbnB1dC1tYXNrLWFuZ3VsYXIvIiwic291cmNlcyI6WyJsaWIvaW5wdXQtbWFzay1hbmd1bGFyLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLElBQUksRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFDLFdBQVcsRUFBRSxJQUFJLEVBQVcsTUFBTSxlQUFlLENBQUM7O0FBRTFEO0lBQUE7S0EwQkM7SUFyQkMsd0NBQVMsR0FBVCxVQUNFLEtBQWEsRUFDYixhQUFxQixFQUNyQixlQUFxQztRQUFyQyxnQ0FBQSxFQUFBLG9CQUFxQztRQUVyQyxJQUFJLENBQUMsQ0FBQyxhQUFhLEVBQUU7WUFDbkIsSUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsZUFBZSxDQUFDLENBQUM7WUFDOUQsSUFBTSxZQUFZLEdBQVcsS0FBSyxDQUFDLE1BQU0sQ0FBQztZQUMxQyxJQUFNLE1BQU0sR0FBZ0IsSUFBSSxDQUFDLEtBQUssQ0FDcEMsSUFBSSxXQUFXLENBQ2IsS0FBSyxFQUNMLFlBQVksQ0FDYixFQUNELEtBQUssQ0FDTixDQUFDO1lBRUYsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUM1QztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs0RkFyQlUsb0JBQW9CO3VFQUFwQixvQkFBb0I7K0JBTmpDO0NBNkJDLEFBMUJELElBMEJDO1NBdkJZLG9CQUFvQjtrREFBcEIsb0JBQW9CO2NBSGhDLElBQUk7ZUFBQztnQkFDSixJQUFJLEVBQUUsTUFBTTthQUNiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q2FyZXRTdHJpbmcsIE1hc2ssIE5vdGF0aW9ufSBmcm9tICd0cy1pbnB1dC1tYXNrJztcblxuQFBpcGUoe1xuICBuYW1lOiAnbWFzaydcbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRNYXNrQW5ndWxhclBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICB0cmFuc2Zvcm0oXG4gICAgdmFsdWU6IHN0cmluZyxcbiAgICBwcmltYXJ5Rm9ybWF0OiBzdHJpbmcsXG4gICAgY3VzdG9tTm90YXRpb25zOiBBcnJheTxOb3RhdGlvbj4gPSBbXVxuICApOiBzdHJpbmcge1xuICAgIGlmICghIXByaW1hcnlGb3JtYXQpIHtcbiAgICAgIGNvbnN0IG1hc2sgPSBNYXNrLmdldE9yQ3JlYXRlKHByaW1hcnlGb3JtYXQsIGN1c3RvbU5vdGF0aW9ucyk7XG4gICAgICBjb25zdCBzdHJpbmdMZW5ndGg6IG51bWJlciA9IHZhbHVlLmxlbmd0aDtcbiAgICAgIGNvbnN0IHJlc3VsdDogTWFzay5SZXN1bHQgPSBtYXNrLmFwcGx5KFxuICAgICAgICBuZXcgQ2FyZXRTdHJpbmcoXG4gICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgc3RyaW5nTGVuZ3RoXG4gICAgICAgICksXG4gICAgICAgIGZhbHNlXG4gICAgICApO1xuXG4gICAgICByZXR1cm4gU3RyaW5nKHJlc3VsdC5mb3JtYXR0ZWRUZXh0LnN0cmluZyk7XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG59XG4iXX0=