@ngx-performance-ui/core
Version:
Ngx Performance UI - Core
161 lines • 9.14 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { ChangeDetectorRef, Component, Injector, Input } from '@angular/core';
/**
* @template T, U
*/
var AbstractNgModelComponent = /** @class */ (function () {
function AbstractNgModelComponent(injector) {
this.injector = injector;
this.valueFn = (/**
* @param {?} value
* @return {?}
*/
function (value) { return (/** @type {?} */ (((/** @type {?} */ (value))))); });
this.valueLimitFn = (/**
* @param {?} value
* @return {?}
*/
function (value) { return false; });
this.cdRef = injector.get(ChangeDetectorRef);
}
Object.defineProperty(AbstractNgModelComponent.prototype, "value", {
get: /**
* @return {?}
*/
function () {
return this._value || this.defaultValue;
},
set: /**
* @param {?} value
* @return {?}
*/
function (value) {
value = this.valueFn((/** @type {?} */ (((/** @type {?} */ (value))))), this._value);
if (this.valueLimitFn(value, this._value) !== false)
return;
this._value = value;
this.notifyValueChange();
},
enumerable: true,
configurable: true
});
Object.defineProperty(AbstractNgModelComponent.prototype, "defaultValue", {
get: /**
* @return {?}
*/
function () {
return this._value;
},
enumerable: true,
configurable: true
});
/**
* @return {?}
*/
AbstractNgModelComponent.prototype.notifyValueChange = /**
* @return {?}
*/
function () {
if (this.onChange) {
this.onChange(this.value);
}
};
/**
* @param {?} value
* @return {?}
*/
AbstractNgModelComponent.prototype.writeValue = /**
* @param {?} value
* @return {?}
*/
function (value) {
var _this = this;
this._value = this.valueLimitFn(value, this._value) || value;
setTimeout((/**
* @return {?}
*/
function () { return _this.cdRef.detectChanges(); }), 0);
};
/**
* @param {?} fn
* @return {?}
*/
AbstractNgModelComponent.prototype.registerOnChange = /**
* @param {?} fn
* @return {?}
*/
function (fn) {
this.onChange = fn;
};
/**
* @param {?} fn
* @return {?}
*/
AbstractNgModelComponent.prototype.registerOnTouched = /**
* @param {?} fn
* @return {?}
*/
function (fn) {
this.onTouched = fn;
};
/**
* @param {?} isDisabled
* @return {?}
*/
AbstractNgModelComponent.prototype.setDisabledState = /**
* @param {?} isDisabled
* @return {?}
*/
function (isDisabled) {
this.disabled = isDisabled;
};
AbstractNgModelComponent.decorators = [
{ type: Component, args: [{ template: '' }] }
];
/** @nocollapse */
AbstractNgModelComponent.ctorParameters = function () { return [
{ type: Injector }
]; };
AbstractNgModelComponent.propDecorators = {
disabled: [{ type: Input }],
id: [{ type: Input }],
ngModel: [{ type: Input }],
valueFn: [{ type: Input }],
valueLimitFn: [{ type: Input }],
value: [{ type: Input }]
};
return AbstractNgModelComponent;
}());
export { AbstractNgModelComponent };
if (false) {
/**
* @type {?}
* @protected
*/
AbstractNgModelComponent.prototype._value;
/** @type {?} */
AbstractNgModelComponent.prototype.disabled;
/** @type {?} */
AbstractNgModelComponent.prototype.id;
/** @type {?} */
AbstractNgModelComponent.prototype.ngModel;
/** @type {?} */
AbstractNgModelComponent.prototype.valueFn;
/** @type {?} */
AbstractNgModelComponent.prototype.valueLimitFn;
/** @type {?} */
AbstractNgModelComponent.prototype.onChange;
/** @type {?} */
AbstractNgModelComponent.prototype.onTouched;
/**
* @type {?}
* @protected
*/
AbstractNgModelComponent.prototype.cdRef;
/** @type {?} */
AbstractNgModelComponent.prototype.injector;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctbW9kZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neC1wZXJmb3JtYW5jZS11aS9jb3JlLyIsInNvdXJjZXMiOlsibGliL2Fic3RyYWN0cy9uZy1tb2RlbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUNBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQUU5RTtJQTBDRSxrQ0FBbUIsUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQTVCckMsWUFBTzs7OztRQUF1QyxVQUFBLEtBQUssV0FBSSxtQkFBQSxDQUFDLG1CQUFBLEtBQUssRUFBTyxDQUFDLEVBQUssR0FBQSxFQUFDO1FBRzNFLGlCQUFZOzs7O1FBQXlDLFVBQUEsS0FBSyxJQUFJLE9BQUEsS0FBSyxFQUFMLENBQUssRUFBQztRQTBCbEUsSUFBSSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDL0MsQ0FBQztJQXpCRCxzQkFDSSwyQ0FBSzs7OztRQVNUO1lBQ0UsT0FBTyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDMUMsQ0FBQzs7Ozs7UUFaRCxVQUNVLEtBQVE7WUFDaEIsS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQUEsQ0FBQyxtQkFBQSxLQUFLLEVBQU8sQ0FBQyxFQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBRXZELElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEtBQUs7Z0JBQUUsT0FBTztZQUU1RCxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUNwQixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUMzQixDQUFDOzs7T0FBQTtJQU1ELHNCQUFJLGtEQUFZOzs7O1FBQWhCO1lBQ0UsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQ3JCLENBQUM7OztPQUFBOzs7O0lBV0Qsb0RBQWlCOzs7SUFBakI7UUFDRSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDM0I7SUFDSCxDQUFDOzs7OztJQUVELDZDQUFVOzs7O0lBQVYsVUFBVyxLQUFRO1FBQW5CLGlCQUdDO1FBRkMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDO1FBQzdELFVBQVU7OztRQUFDLGNBQU0sT0FBQSxLQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxFQUExQixDQUEwQixHQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2xELENBQUM7Ozs7O0lBRUQsbURBQWdCOzs7O0lBQWhCLFVBQWlCLEVBQU87UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQzs7Ozs7SUFFRCxvREFBaUI7Ozs7SUFBakIsVUFBa0IsRUFBTztRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDOzs7OztJQUVELG1EQUFnQjs7OztJQUFoQixVQUFpQixVQUFtQjtRQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztJQUM3QixDQUFDOztnQkFuRUYsU0FBUyxTQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRTs7OztnQkFGWSxRQUFROzs7MkJBTTVDLEtBQUs7cUJBR0wsS0FBSzswQkFHTCxLQUFLOzBCQUdMLEtBQUs7K0JBR0wsS0FBSzt3QkFHTCxLQUFLOztJQWlEUiwrQkFBQztDQUFBLEFBcEVELElBb0VDO1NBbkVZLHdCQUF3Qjs7Ozs7O0lBQ25DLDBDQUFvQjs7SUFFcEIsNENBQ2tCOztJQUVsQixzQ0FDVzs7SUFFWCwyQ0FDZ0I7O0lBRWhCLDJDQUMyRTs7SUFFM0UsZ0RBQ29FOztJQW9CcEUsNENBQTJCOztJQUMzQiw2Q0FBb0I7Ozs7O0lBRXBCLHlDQUFtQzs7SUFFdkIsNENBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbmplY3RvciwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7IHRlbXBsYXRlOiAnJyB9KVxuZXhwb3J0IGNsYXNzIEFic3RyYWN0TmdNb2RlbENvbXBvbmVudDxUID0gYW55LCBVID0gVD4gaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHByb3RlY3RlZCBfdmFsdWU6IFQ7XG5cbiAgQElucHV0KClcbiAgZGlzYWJsZWQ6IGJvb2xlYW47XG5cbiAgQElucHV0KClcbiAgaWQ6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBuZ01vZGVsOiBudW1iZXI7XG5cbiAgQElucHV0KClcbiAgdmFsdWVGbjogKHZhbHVlOiBVLCBwcmV2aW91c1ZhbHVlPzogVCkgPT4gVCA9IHZhbHVlID0+ICh2YWx1ZSBhcyBhbnkpIGFzIFQ7XG5cbiAgQElucHV0KClcbiAgdmFsdWVMaW1pdEZuOiAodmFsdWU6IFQsIHByZXZpb3VzVmFsdWU/OiBUKSA9PiBhbnkgPSB2YWx1ZSA9PiBmYWxzZTtcblxuICBASW5wdXQoKVxuICBzZXQgdmFsdWUodmFsdWU6IFQpIHtcbiAgICB2YWx1ZSA9IHRoaXMudmFsdWVGbigodmFsdWUgYXMgYW55KSBhcyBVLCB0aGlzLl92YWx1ZSk7XG5cbiAgICBpZiAodGhpcy52YWx1ZUxpbWl0Rm4odmFsdWUsIHRoaXMuX3ZhbHVlKSAhPT0gZmFsc2UpIHJldHVybjtcblxuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgdGhpcy5ub3RpZnlWYWx1ZUNoYW5nZSgpO1xuICB9XG5cbiAgZ2V0IHZhbHVlKCk6IFQge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZSB8fCB0aGlzLmRlZmF1bHRWYWx1ZTtcbiAgfVxuXG4gIGdldCBkZWZhdWx0VmFsdWUoKTogVCB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG5cbiAgb25DaGFuZ2U6ICh2YWx1ZTogVCkgPT4ge307XG4gIG9uVG91Y2hlZDogKCkgPT4ge307XG5cbiAgcHJvdGVjdGVkIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZjtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgdGhpcy5jZFJlZiA9IGluamVjdG9yLmdldChDaGFuZ2VEZXRlY3RvclJlZik7XG4gIH1cblxuICBub3RpZnlWYWx1ZUNoYW5nZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5vbkNoYW5nZSkge1xuICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgICB9XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBUKTogdm9pZCB7XG4gICAgdGhpcy5fdmFsdWUgPSB0aGlzLnZhbHVlTGltaXRGbih2YWx1ZSwgdGhpcy5fdmFsdWUpIHx8IHZhbHVlO1xuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCksIDApO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxufVxuIl19