UNPKG

@asi-ngtools/lib

Version:

This project is a little components library, simple to use, which will help you to simplify your project.

85 lines (84 loc) 5.74 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc */ import { DefaultControlValueAccessor } from './../common/default-control-value-accessor'; import { Component, Input, forwardRef, Renderer2, ElementRef } from '@angular/core'; import { NG_VALUE_ACCESSOR } from '@angular/forms'; export class AsiCheckboxComponent extends DefaultControlValueAccessor { /** * @param {?} renderer * @param {?} elementRef */ constructor(renderer, elementRef) { super(); this.renderer = renderer; this.elementRef = elementRef; /** * Label position */ this.labelPosition = 'top'; /** * design : checkbox (square) or radio (round) */ this.type = 'checkbox'; } /** * @return {?} */ ngOnInit() { this.renderer.addClass(this.elementRef.nativeElement, 'label-' + this.labelPosition); } /** * @return {?} */ toggleCheck() { this.value = !this.value; } } AsiCheckboxComponent.decorators = [ { type: Component, args: [{ selector: 'asi-checkbox', host: { 'class': 'asi-component asi-checkbox' }, template: "<label class=\"input-label\" *ngIf=\"label != null\">{{label | translate}}</label>\r\n\r\n<button type=\"button\" [disabled]=\"disabled\" (click)=\"toggleCheck()\" class=\"checkbox asi-focus-error\" [ngClass]=\"{ 'checked': value, 'radio' : type == 'radio' }\">\r\n <div><span class=\"checkbox-button\"></span></div>\r\n</button>", providers: [ { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => AsiCheckboxComponent), multi: true } ] }] } ]; /** @nocollapse */ AsiCheckboxComponent.ctorParameters = () => [ { type: Renderer2 }, { type: ElementRef } ]; AsiCheckboxComponent.propDecorators = { label: [{ type: Input }], labelPosition: [{ type: Input }], type: [{ type: Input }] }; if (false) { /** * Label (is translated) * @type {?} */ AsiCheckboxComponent.prototype.label; /** * Label position * @type {?} */ AsiCheckboxComponent.prototype.labelPosition; /** * design : checkbox (square) or radio (round) * @type {?} */ AsiCheckboxComponent.prototype.type; /** @type {?} */ AsiCheckboxComponent.prototype.renderer; /** @type {?} */ AsiCheckboxComponent.prototype.elementRef; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNpLWNoZWNrYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bhc2ktbmd0b29scy9saWIvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9hc2ktY2hlY2tib3gvYXNpLWNoZWNrYm94LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDekYsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFVLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFjbkQsTUFBTSwyQkFBNEIsU0FBUSwyQkFBMkI7Ozs7O0lBVW5FLFlBQW9CLFFBQW1CLEVBQVUsVUFBc0I7UUFDckUsS0FBSyxFQUFFLENBQUM7UUFEVSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQVUsZUFBVSxHQUFWLFVBQVUsQ0FBWTs7Ozs2QkFMd0IsS0FBSzs7OztvQkFHOUQsVUFBVTtLQUkvQzs7OztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxRQUFRLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0tBQ3RGOzs7O0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO0tBQzFCOzs7WUFoQ0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxjQUFjO2dCQUN4QixJQUFJLEVBQUUsRUFBRSxPQUFPLEVBQUUsNEJBQTRCLEVBQUU7Z0JBQy9DLHdWQUEwQztnQkFDMUMsU0FBUyxFQUFFO29CQUNUO3dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7d0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUM7d0JBQ25ELEtBQUssRUFBRSxJQUFJO3FCQUNaO2lCQUNGO2FBQ0Y7Ozs7WUFkOEMsU0FBUztZQUFFLFVBQVU7OztvQkFrQmpFLEtBQUs7NEJBRUwsS0FBSzttQkFHTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVmYXVsdENvbnRyb2xWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi8uLi9jb21tb24vZGVmYXVsdC1jb250cm9sLXZhbHVlLWFjY2Vzc29yJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgZm9yd2FyZFJlZiwgT25Jbml0LCBSZW5kZXJlcjIsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FzaS1jaGVja2JveCcsXHJcbiAgaG9zdDogeyAnY2xhc3MnOiAnYXNpLWNvbXBvbmVudCBhc2ktY2hlY2tib3gnIH0sXHJcbiAgdGVtcGxhdGVVcmw6ICdhc2ktY2hlY2tib3guY29tcG9uZW50Lmh0bWwnLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQXNpQ2hlY2tib3hDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEFzaUNoZWNrYm94Q29tcG9uZW50IGV4dGVuZHMgRGVmYXVsdENvbnRyb2xWYWx1ZUFjY2Vzc29yIGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgLyoqIExhYmVsIChpcyB0cmFuc2xhdGVkKSAqL1xyXG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XHJcbiAgLyoqIExhYmVsIHBvc2l0aW9uICovXHJcbiAgQElucHV0KCkgbGFiZWxQb3NpdGlvbjogJ3RvcCcgfCAnbGVmdCcgfCAncmlnaHQnIHwgJ2JvdHRvbScgfCAnYm90dG9tLWNlbnRlcicgfCAndG9wLWNlbnRlcicgPSAndG9wJztcclxuXHJcbiAgLyoqIGRlc2lnbiA6IGNoZWNrYm94IChzcXVhcmUpIG9yIHJhZGlvIChyb3VuZCkgKi9cclxuICBASW5wdXQoKSB0eXBlOiAnY2hlY2tib3gnIHwgJ3JhZGlvJyA9ICdjaGVja2JveCc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnbGFiZWwtJyArIHRoaXMubGFiZWxQb3NpdGlvbik7XHJcbiAgfVxyXG5cclxuICB0b2dnbGVDaGVjaygpIHtcclxuICAgIHRoaXMudmFsdWUgPSAhdGhpcy52YWx1ZTtcclxuICB9XHJcbn1cclxuIl19