UNPKG

ng-custom-checkbox-values

Version:

Custom checkbox values like strings or numbers other than default boolean

138 lines 9.73 kB
/** * @fileoverview added by tsickle * Generated from: lib/custom-checkbox-values.directive.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Directive, forwardRef, Input, HostListener, ElementRef, Renderer2 } from '@angular/core'; import { NG_VALUE_ACCESSOR } from '@angular/forms'; var CustomCheckboxValuesDirective = /** @class */ (function () { function CustomCheckboxValuesDirective(elementRef, renderer) { this.elementRef = elementRef; this.renderer = renderer; this.propagateChange = (/** * @param {?} _ * @return {?} */ function (_) { }); this.checkedValue = true; this.uncheckedValue = false; this.indeterminateValue = false; } /** * @param {?} ev * @return {?} */ CustomCheckboxValuesDirective.prototype.onHostChange = /** * @param {?} ev * @return {?} */ function (ev) { this.propagateChange(ev.target.checked ? this.checkedValue : this.uncheckedValue); }; /** * @param {?} obj * @return {?} */ CustomCheckboxValuesDirective.prototype.writeValue = /** * @param {?} obj * @return {?} */ function (obj) { if (obj === this.checkedValue) { this.renderer.setProperty(this.elementRef.nativeElement, 'checked', true); this.renderer.setProperty(this.elementRef.nativeElement, 'indeterminate', false); } else if (obj === this.indeterminateValue) { this.renderer.setProperty(this.elementRef.nativeElement, 'checked', false); this.renderer.setProperty(this.elementRef.nativeElement, 'indeterminate', true); } else { this.renderer.setProperty(this.elementRef.nativeElement, 'checked', false); this.renderer.setProperty(this.elementRef.nativeElement, 'indeterminate', false); } }; /** * @param {?} fn * @return {?} */ CustomCheckboxValuesDirective.prototype.registerOnChange = /** * @param {?} fn * @return {?} */ function (fn) { this.propagateChange = fn; }; /** * @param {?} fn * @return {?} */ CustomCheckboxValuesDirective.prototype.registerOnTouched = /** * @param {?} fn * @return {?} */ function (fn) { }; /** * @param {?} isDisabled * @return {?} */ CustomCheckboxValuesDirective.prototype.setDisabledState = /** * @param {?} isDisabled * @return {?} */ function (isDisabled) { }; CustomCheckboxValuesDirective.decorators = [ { type: Directive, args: [{ selector: '[customCheckboxValues]', providers: [ { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef((/** * @return {?} */ function () { return CustomCheckboxValuesDirective; })), multi: true } ] },] } ]; /** @nocollapse */ CustomCheckboxValuesDirective.ctorParameters = function () { return [ { type: ElementRef }, { type: Renderer2 } ]; }; CustomCheckboxValuesDirective.propDecorators = { customCheckboxValues: [{ type: Input }], checkedValue: [{ type: Input }], uncheckedValue: [{ type: Input }], indeterminateValue: [{ type: Input }], onHostChange: [{ type: HostListener, args: ['change', ['$event'],] }] }; return CustomCheckboxValuesDirective; }()); export { CustomCheckboxValuesDirective }; if (false) { /** * @type {?} * @private */ CustomCheckboxValuesDirective.prototype.propagateChange; /** @type {?} */ CustomCheckboxValuesDirective.prototype.customCheckboxValues; /** @type {?} */ CustomCheckboxValuesDirective.prototype.checkedValue; /** @type {?} */ CustomCheckboxValuesDirective.prototype.uncheckedValue; /** @type {?} */ CustomCheckboxValuesDirective.prototype.indeterminateValue; /** * @type {?} * @private */ CustomCheckboxValuesDirective.prototype.elementRef; /** * @type {?} * @private */ CustomCheckboxValuesDirective.prototype.renderer; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWNoZWNrYm94LXZhbHVlcy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZy1jdXN0b20tY2hlY2tib3gtdmFsdWVzLyIsInNvdXJjZXMiOlsibGliL2N1c3RvbS1jaGVja2JveC12YWx1ZXMuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxpQkFBaUIsRUFBd0IsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RTtJQWlCQyx1Q0FBb0IsVUFBc0IsRUFBVSxRQUFtQjtRQUFuRCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQU4vRCxvQkFBZTs7OztRQUFHLFVBQUMsQ0FBTSxJQUFPLENBQUMsRUFBQztRQUVqQyxpQkFBWSxHQUFHLElBQUksQ0FBQztRQUNwQixtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUN2Qix1QkFBa0IsR0FBRyxLQUFLLENBQUM7SUFFdUMsQ0FBQzs7Ozs7SUFHNUUsb0RBQVk7Ozs7SUFEWixVQUNhLEVBQUU7UUFDZCxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDbkYsQ0FBQzs7Ozs7SUFFRCxrREFBVTs7OztJQUFWLFVBQVcsR0FBUTtRQUNsQixJQUFJLEdBQUcsS0FBSyxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQzlCLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUMxRSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxlQUFlLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDakY7YUFBTSxJQUFJLEdBQUcsS0FBSyxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDM0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzNFLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGVBQWUsRUFBRSxJQUFJLENBQUMsQ0FBQztTQUNoRjthQUFNO1lBQ04sSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzNFLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGVBQWUsRUFBRSxLQUFLLENBQUMsQ0FBQztTQUNqRjtJQUNGLENBQUM7Ozs7O0lBRUQsd0RBQWdCOzs7O0lBQWhCLFVBQWlCLEVBQU87UUFDdkIsSUFBSSxDQUFDLGVBQWUsR0FBRyxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7Ozs7SUFFRCx5REFBaUI7Ozs7SUFBakIsVUFBa0IsRUFBTyxJQUFVLENBQUM7Ozs7O0lBRXBDLHdEQUFnQjs7OztJQUFoQixVQUFrQixVQUFtQixJQUFVLENBQUM7O2dCQTNDaEQsU0FBUyxTQUFDO29CQUNWLFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFNBQVMsRUFBRTt3QkFDVjs0QkFDQyxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVTs7OzRCQUFDLGNBQU0sT0FBQSw2QkFBNkIsRUFBN0IsQ0FBNkIsRUFBQzs0QkFDNUQsS0FBSyxFQUFFLElBQUk7eUJBQ1g7cUJBQ0Q7aUJBQ0Q7Ozs7Z0JBWm9ELFVBQVU7Z0JBQUUsU0FBUzs7O3VDQWV4RSxLQUFLOytCQUNMLEtBQUs7aUNBQ0wsS0FBSztxQ0FDTCxLQUFLOytCQUlMLFlBQVksU0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUM7O0lBMEJuQyxvQ0FBQztDQUFBLEFBN0NELElBNkNDO1NBbkNZLDZCQUE2Qjs7Ozs7O0lBQ3pDLHdEQUEwQzs7SUFDMUMsNkRBQW1DOztJQUNuQyxxREFBNkI7O0lBQzdCLHVEQUFnQzs7SUFDaEMsMkRBQW9DOzs7OztJQUV4QixtREFBOEI7Ozs7O0lBQUUsaURBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBmb3J3YXJkUmVmLCBJbnB1dCwgSG9zdExpc3RlbmVyLCBFbGVtZW50UmVmLCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SLCBDb250cm9sVmFsdWVBY2Nlc3NvciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQERpcmVjdGl2ZSh7XG5cdHNlbGVjdG9yOiAnW2N1c3RvbUNoZWNrYm94VmFsdWVzXScsXG5cdHByb3ZpZGVyczogW1xuXHRcdHtcblx0XHRcdHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuXHRcdFx0dXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ3VzdG9tQ2hlY2tib3hWYWx1ZXNEaXJlY3RpdmUpLFxuXHRcdFx0bXVsdGk6IHRydWVcblx0XHR9XG5cdF1cbn0pXG5leHBvcnQgY2xhc3MgQ3VzdG9tQ2hlY2tib3hWYWx1ZXNEaXJlY3RpdmUgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG5cdHByaXZhdGUgcHJvcGFnYXRlQ2hhbmdlID0gKF86IGFueSkgPT4geyB9O1xuXHRASW5wdXQoKSBjdXN0b21DaGVja2JveFZhbHVlczogYW55O1xuXHRASW5wdXQoKSBjaGVja2VkVmFsdWUgPSB0cnVlO1xuXHRASW5wdXQoKSB1bmNoZWNrZWRWYWx1ZSA9IGZhbHNlO1xuXHRASW5wdXQoKSBpbmRldGVybWluYXRlVmFsdWUgPSBmYWxzZTtcblxuXHRjb25zdHJ1Y3Rvcihwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikgeyB9XG5cblx0QEhvc3RMaXN0ZW5lcignY2hhbmdlJywgWyckZXZlbnQnXSlcblx0b25Ib3N0Q2hhbmdlKGV2KSB7XG5cdFx0dGhpcy5wcm9wYWdhdGVDaGFuZ2UoZXYudGFyZ2V0LmNoZWNrZWQgPyB0aGlzLmNoZWNrZWRWYWx1ZSA6IHRoaXMudW5jaGVja2VkVmFsdWUpO1xuXHR9XG5cblx0d3JpdGVWYWx1ZShvYmo6IGFueSk6IHZvaWQge1xuXHRcdGlmIChvYmogPT09IHRoaXMuY2hlY2tlZFZhbHVlKSB7XG5cdFx0XHR0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY2hlY2tlZCcsIHRydWUpO1xuXHRcdFx0dGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2luZGV0ZXJtaW5hdGUnLCBmYWxzZSk7XG5cdFx0fSBlbHNlIGlmIChvYmogPT09IHRoaXMuaW5kZXRlcm1pbmF0ZVZhbHVlKSB7XG5cdFx0XHR0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY2hlY2tlZCcsIGZhbHNlKTtcblx0XHRcdHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdpbmRldGVybWluYXRlJywgdHJ1ZSk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjaGVja2VkJywgZmFsc2UpO1xuXHRcdFx0dGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2luZGV0ZXJtaW5hdGUnLCBmYWxzZSk7XG5cdFx0fVxuXHR9XG5cblx0cmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG5cdFx0dGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcblx0fVxuXG5cdHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHsgfVxuXG5cdHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHsgfVxuXG59XG4iXX0=