@neocomplexx/ngx-neo-directives-mat
Version:
36 lines • 3.51 kB
JavaScript
import { __decorate, __metadata } from "tslib";
import { Directive, Input, ElementRef, HostListener } from '@angular/core';
let NeoChangeCommandDirective = class NeoChangeCommandDirective {
constructor(element) {
this.element = element;
}
onInputChange(event) {
const value = this.element.nativeElement.value;
if (!this._lastValue || this._lastValue !== value) {
this._lastValue = value;
this.changeCommand.execute(value);
}
}
};
NeoChangeCommandDirective.ctorParameters = () => [
{ type: ElementRef }
];
__decorate([
Input(),
__metadata("design:type", Object)
], NeoChangeCommandDirective.prototype, "changeCommand", void 0);
__decorate([
HostListener('keyup', ['$event']),
__metadata("design:type", Function),
__metadata("design:paramtypes", [KeyboardEvent]),
__metadata("design:returntype", void 0)
], NeoChangeCommandDirective.prototype, "onInputChange", null);
NeoChangeCommandDirective = __decorate([
Directive({
// tslint:disable-next-line:directive-selector
selector: '[changeCommand]'
}),
__metadata("design:paramtypes", [ElementRef])
], NeoChangeCommandDirective);
export { NeoChangeCommandDirective };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVvLWNoYW5nZWNvbW1hbmQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5lb2NvbXBsZXh4L25neC1uZW8tZGlyZWN0aXZlcy1tYXQvIiwic291cmNlcyI6WyJsaWIvbmVvLWNoYW5nZWNvbW1hbmQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBUTNFLElBQWEseUJBQXlCLEdBQXRDLE1BQWEseUJBQXlCO0lBS2xDLFlBQW9CLE9BQW1CO1FBQW5CLFlBQU8sR0FBUCxPQUFPLENBQVk7SUFDdkMsQ0FBQztJQUVrQyxhQUFhLENBQUMsS0FBb0I7UUFDakUsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDO1FBRS9DLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssS0FBSyxFQUFFO1lBQy9DLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1lBQ3hCLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3JDO0lBQ0wsQ0FBQztDQUNKLENBQUE7O1lBWGdDLFVBQVU7O0FBSjlCO0lBQVIsS0FBSyxFQUFFOztnRUFBeUI7QUFPRTtJQUFsQyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7O3FDQUFzQixhQUFhOzs4REFPcEU7QUFmUSx5QkFBeUI7SUFKckMsU0FBUyxDQUFDO1FBQ1AsOENBQThDO1FBQzlDLFFBQVEsRUFBRSxpQkFBaUI7S0FDOUIsQ0FBQztxQ0FNK0IsVUFBVTtHQUw5Qix5QkFBeUIsQ0FnQnJDO1NBaEJZLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJQ29tbWFuZCB9IGZyb20gJy4vbmd4LWNvbW1hbmQvY29tbWFuZC5kaXJlY3RpdmUnO1xyXG5cclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOmRpcmVjdGl2ZS1zZWxlY3RvclxyXG4gICAgc2VsZWN0b3I6ICdbY2hhbmdlQ29tbWFuZF0nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOZW9DaGFuZ2VDb21tYW5kRGlyZWN0aXZlIHtcclxuICAgIEBJbnB1dCgpIGNoYW5nZUNvbW1hbmQ6IElDb21tYW5kO1xyXG5cclxuICAgIHByaXZhdGUgX2xhc3RWYWx1ZTogc3RyaW5nO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZikge1xyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleXVwJywgWyckZXZlbnQnXSkgb25JbnB1dENoYW5nZShldmVudDogS2V5Ym9hcmRFdmVudCkge1xyXG4gICAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQudmFsdWU7XHJcblxyXG4gICAgICAgIGlmICghdGhpcy5fbGFzdFZhbHVlIHx8IHRoaXMuX2xhc3RWYWx1ZSAhPT0gdmFsdWUpIHtcclxuICAgICAgICAgICAgdGhpcy5fbGFzdFZhbHVlID0gdmFsdWU7XHJcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlQ29tbWFuZC5leGVjdXRlKHZhbHVlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19