UNPKG

@neocomplexx/ngx-neo-directives

Version:

This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 7.0.5.

60 lines 4.58 kB
/** * @fileoverview added by tsickle * Generated from: lib/strings.directive.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Directive, ElementRef, HostListener, Input } from '@angular/core'; export class StringsDirective { /** * @param {?} _el */ constructor(_el) { this._el = _el; this.el = this._el; } /** * @param {?} e * @return {?} */ onKeyDown(e) { if (e.key === 'Delete' || e.key === 'Tab' || e.key === 'Backspace' || e.key === 'ArrowLeft' || e.altKey || e.ctrlKey || e.key === 'Home' || e.key === 'End' || e.key === 'PageDown' || e.key === 'PageUp' || e.key === 'ArrowRight' || e.key === 'Control' || e.key === 'Alt' || e.key === 'Shift') { return; } /** @type {?} */ const element = this._el.nativeElement.value; if (element && element.length >= this.maxLength) { e.preventDefault(); } } } StringsDirective.decorators = [ { type: Directive, args: [{ // tslint:disable-next-line:directive-selector selector: '[maxLength]' },] } ]; /** @nocollapse */ StringsDirective.ctorParameters = () => [ { type: ElementRef } ]; StringsDirective.propDecorators = { maxLength: [{ type: Input }], onKeyDown: [{ type: HostListener, args: ['keydown', ['$event'],] }] }; if (false) { /** * @type {?} * @private */ StringsDirective.prototype.el; /** @type {?} */ StringsDirective.prototype.maxLength; /** * @type {?} * @private */ StringsDirective.prototype._el; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5ncy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AbmVvY29tcGxleHgvbmd4LW5lby1kaXJlY3RpdmVzLyIsInNvdXJjZXMiOlsibGliL3N0cmluZ3MuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU0zRSxNQUFNLE9BQU8sZ0JBQWdCOzs7O0lBSXpCLFlBQW9CLEdBQWU7UUFBZixRQUFHLEdBQUgsR0FBRyxDQUFZO1FBQy9CLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQztJQUN2QixDQUFDOzs7OztJQUVvQyxTQUFTLENBQUMsQ0FBZ0I7UUFDM0QsSUFBSSxDQUFDLENBQUMsR0FBRyxLQUFLLFFBQVEsSUFBSSxDQUFDLENBQUMsR0FBRyxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUMsR0FBRyxLQUFLLFdBQVcsSUFBSSxDQUFDLENBQUMsR0FBRyxLQUFLLFdBQVc7WUFDdkYsQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssTUFBTSxJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssS0FBSyxJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssVUFBVSxJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssUUFBUTtZQUMxRyxDQUFDLENBQUMsR0FBRyxLQUFLLFlBQVksSUFBSSxDQUFDLENBQUMsR0FBRyxLQUFLLFNBQVMsSUFBSSxDQUFDLENBQUMsR0FBRyxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUMsR0FBRyxLQUFLLE9BQU8sRUFBRTtZQUFFLE9BQU87U0FBRTs7Y0FFaEcsT0FBTyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLEtBQUs7UUFDNUMsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQzdDLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUN0QjtJQUNMLENBQUM7OztZQXJCSixTQUFTLFNBQUM7O2dCQUVQLFFBQVEsRUFBRSxhQUFhO2FBQzFCOzs7O1lBTG1CLFVBQVU7Ozt3QkFRekIsS0FBSzt3QkFNTCxZQUFZLFNBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDOzs7Ozs7O0lBUG5DLDhCQUF1Qjs7SUFDdkIscUNBQXdCOzs7OztJQUVaLCtCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6ZGlyZWN0aXZlLXNlbGVjdG9yXG4gICAgc2VsZWN0b3I6ICdbbWF4TGVuZ3RoXSdcbn0pXG5leHBvcnQgY2xhc3MgU3RyaW5nc0RpcmVjdGl2ZSB7XG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZjtcbiAgICBASW5wdXQoKSBtYXhMZW5ndGg6IGFueTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2VsOiBFbGVtZW50UmVmKSB7XG4gICAgICAgIHRoaXMuZWwgPSB0aGlzLl9lbDtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duJywgWyckZXZlbnQnXSkgb25LZXlEb3duKGU6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgaWYgKGUua2V5ID09PSAnRGVsZXRlJyB8fCBlLmtleSA9PT0gJ1RhYicgfHwgZS5rZXkgPT09ICdCYWNrc3BhY2UnIHx8IGUua2V5ID09PSAnQXJyb3dMZWZ0JyB8fFxuICAgICAgICAgICAgZS5hbHRLZXkgfHwgZS5jdHJsS2V5IHx8IGUua2V5ID09PSAnSG9tZScgfHwgZS5rZXkgPT09ICdFbmQnIHx8IGUua2V5ID09PSAnUGFnZURvd24nIHx8IGUua2V5ID09PSAnUGFnZVVwJyB8fFxuICAgICAgICAgICAgZS5rZXkgPT09ICdBcnJvd1JpZ2h0JyB8fCBlLmtleSA9PT0gJ0NvbnRyb2wnIHx8IGUua2V5ID09PSAnQWx0JyB8fCBlLmtleSA9PT0gJ1NoaWZ0JykgeyByZXR1cm47IH1cblxuICAgICAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5fZWwubmF0aXZlRWxlbWVudC52YWx1ZTtcbiAgICAgICAgaWYgKGVsZW1lbnQgJiYgZWxlbWVudC5sZW5ndGggPj0gdGhpcy5tYXhMZW5ndGgpIHtcbiAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==