moh-common-lib
Version:
A library of Angular components, services, and styles for B.C. Government Ministry of Health (MoH).
48 lines • 3.99 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Directive, Output, EventEmitter, HostListener } from '@angular/core';
var DateFieldFormatDirective = /** @class */ (function () {
function DateFieldFormatDirective() {
this.ngModelChange = new EventEmitter(false);
}
/**
* @param {?} event
* @return {?}
*/
DateFieldFormatDirective.prototype.onInput = /**
* @param {?} event
* @return {?}
*/
function (event) {
/** @type {?} */
var input = (/** @type {?} */ (event.target));
/** @type {?} */
var maxlen = input.getAttribute('maxlength');
/** @type {?} */
var trimmed = input.value.trim();
if (/[^\d]+/.test(input.value)) {
trimmed = trimmed.replace(/[^\d]/g, '');
}
trimmed = trimmed.substr(0, Number(maxlen));
input.value = trimmed;
this.ngModelChange.emit(trimmed);
};
DateFieldFormatDirective.decorators = [
{ type: Directive, args: [{
selector: '[commonDateFieldFormat]'
},] }
];
DateFieldFormatDirective.propDecorators = {
ngModelChange: [{ type: Output }],
onInput: [{ type: HostListener, args: ['input', ['$event'],] }]
};
return DateFieldFormatDirective;
}());
export { DateFieldFormatDirective };
if (false) {
/** @type {?} */
DateFieldFormatDirective.prototype.ngModelChange;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1maWVsZC1mb3JtYXQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbW9oLWNvbW1vbi1saWIvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9kYXRlL2RhdGUtZmllbGQtZm9ybWF0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RTtJQUFBO1FBS1ksa0JBQWEsR0FBeUIsSUFBSSxZQUFZLENBQVMsS0FBSyxDQUFDLENBQUM7SUFrQmxGLENBQUM7Ozs7O0lBZkMsMENBQU87Ozs7SUFEUCxVQUNTLEtBQW9COztZQUNyQixLQUFLLEdBQUcsbUJBQUEsS0FBSyxDQUFDLE1BQU0sRUFBb0I7O1lBQ3hDLE1BQU0sR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFFLFdBQVcsQ0FBRTs7WUFFNUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFO1FBQ2hDLElBQUksUUFBUSxDQUFDLElBQUksQ0FBRSxLQUFLLENBQUMsS0FBSyxDQUFFLEVBQUc7WUFFakMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQ3pDO1FBRUQsT0FBTyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUUsQ0FBQyxFQUFFLE1BQU0sQ0FBRSxNQUFNLENBQUUsQ0FBRSxDQUFDO1FBRWhELEtBQUssQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFFLE9BQU8sQ0FBRSxDQUFDO0lBQ3JDLENBQUM7O2dCQXRCRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtpQkFDcEM7OztnQ0FHRSxNQUFNOzBCQUVOLFlBQVksU0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUM7O0lBZ0JuQywrQkFBQztDQUFBLEFBdkJELElBdUJDO1NBcEJZLHdCQUF3Qjs7O0lBRW5DLGlEQUFnRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbY29tbW9uRGF0ZUZpZWxkRm9ybWF0XSdcclxufSlcclxuZXhwb3J0IGNsYXNzIERhdGVGaWVsZEZvcm1hdERpcmVjdGl2ZSB7XHJcblxyXG4gIEBPdXRwdXQoKSBuZ01vZGVsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPihmYWxzZSk7XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2lucHV0JywgWyckZXZlbnQnXSlcclxuICBvbklucHV0KCBldmVudDogS2V5Ym9hcmRFdmVudCApIHtcclxuICAgIGNvbnN0IGlucHV0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XHJcbiAgICBjb25zdCBtYXhsZW4gPSBpbnB1dC5nZXRBdHRyaWJ1dGUoICdtYXhsZW5ndGgnICk7XHJcblxyXG4gICAgbGV0IHRyaW1tZWQgPSBpbnB1dC52YWx1ZS50cmltKCk7XHJcbiAgICBpZiAoL1teXFxkXSsvLnRlc3QoIGlucHV0LnZhbHVlICkgKSB7XHJcblxyXG4gICAgICB0cmltbWVkID0gdHJpbW1lZC5yZXBsYWNlKC9bXlxcZF0vZywgJycpO1xyXG4gICAgfVxyXG5cclxuICAgIHRyaW1tZWQgPSB0cmltbWVkLnN1YnN0ciggMCwgTnVtYmVyKCBtYXhsZW4gKSApO1xyXG5cclxuICAgIGlucHV0LnZhbHVlID0gdHJpbW1lZDtcclxuICAgIHRoaXMubmdNb2RlbENoYW5nZS5lbWl0KCB0cmltbWVkICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==