UNPKG

systelab-components

Version:

systelab-components is a set of components that use wide accepted and adopted standard technologies like Angular and Bootstrap, as well as other popular libraries. Please read the ATTRIBUTION.md file for a complete list of dependencies.

45 lines 5.78 kB
import { Component, EventEmitter, HostListener, Input, Output } from '@angular/core'; import * as i0 from "@angular/core"; export class SwitchComponent { constructor() { this.checked = false; this.isCheckedChange = new EventEmitter(); this.disabled = false; } get isChecked() { return this.checked; } set isChecked(val) { this.checked = val; this.isCheckedChange.emit(this.checked); } onToggle() { if (!this.disabled) { this.isChecked = !this.isChecked; } } doKeyDown(event) { if (event.key === ' ') { if (!this.disabled) { this.isChecked = !this.isChecked; } event.preventDefault(); } } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: SwitchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: SwitchComponent, selector: "systelab-switch", inputs: { isChecked: "isChecked", disabled: "disabled" }, outputs: { isCheckedChange: "isCheckedChange" }, host: { listeners: { "click": "onToggle()" } }, ngImport: i0, template: "<span class=\"slab-switch\" [tabIndex]=\"disabled?-1:0\" [class.checked]=\"isChecked\" [class.disabled]=\"disabled\" (keydown)=\"doKeyDown($event)\">\n <span class=\"slab-tick\"></span>\n <input type=\"checkbox\" name=\"checkbox\" [checked]=\"isChecked\" [disabled]=\"disabled\" style=\"display:none\">\n <span class=\"slab-switch-text\"></span>\n</span>\n" }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: SwitchComponent, decorators: [{ type: Component, args: [{ selector: 'systelab-switch', template: "<span class=\"slab-switch\" [tabIndex]=\"disabled?-1:0\" [class.checked]=\"isChecked\" [class.disabled]=\"disabled\" (keydown)=\"doKeyDown($event)\">\n <span class=\"slab-tick\"></span>\n <input type=\"checkbox\" name=\"checkbox\" [checked]=\"isChecked\" [disabled]=\"disabled\" style=\"display:none\">\n <span class=\"slab-switch-text\"></span>\n</span>\n" }] }], propDecorators: { isChecked: [{ type: Input }], isCheckedChange: [{ type: Output }], disabled: [{ type: Input }], onToggle: [{ type: HostListener, args: ['click'] }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dpdGNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N5c3RlbGFiLWNvbXBvbmVudHMvc3JjL2xpYi9zd2l0Y2gvc3dpdGNoLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N5c3RlbGFiLWNvbXBvbmVudHMvc3JjL2xpYi9zd2l0Y2gvc3dpdGNoLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU1yRixNQUFNLE9BQU8sZUFBZTtJQUo1QjtRQUtTLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFXUCxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFdEMsYUFBUSxHQUFHLEtBQUssQ0FBQztLQWlCakM7SUE1QkEsSUFBYSxTQUFTO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBSSxTQUFTLENBQUMsR0FBWTtRQUN6QixJQUFJLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztRQUNuQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQU9NLFFBQVE7UUFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNuQixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztTQUNqQztJQUNGLENBQUM7SUFFTSxTQUFTLENBQUMsS0FBb0I7UUFDcEMsSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLEdBQUcsRUFBRTtZQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDbkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7YUFDakM7WUFDRCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDdkI7SUFDRixDQUFDOzhHQTlCVyxlQUFlO2tHQUFmLGVBQWUsa05DTjVCLCtXQUtBOzsyRkRDYSxlQUFlO2tCQUozQixTQUFTOytCQUNJLGlCQUFpQjs4QkFNakIsU0FBUztzQkFBckIsS0FBSztnQkFTVyxlQUFlO3NCQUEvQixNQUFNO2dCQUVTLFFBQVE7c0JBQXZCLEtBQUs7Z0JBR0MsUUFBUTtzQkFEZCxZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogICAgJ3N5c3RlbGFiLXN3aXRjaCcsXG5cdHRlbXBsYXRlVXJsOiAnc3dpdGNoLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBTd2l0Y2hDb21wb25lbnQge1xuXHRwcml2YXRlIGNoZWNrZWQgPSBmYWxzZTtcblxuXHRASW5wdXQoKSBnZXQgaXNDaGVja2VkKCkge1xuXHRcdHJldHVybiB0aGlzLmNoZWNrZWQ7XG5cdH1cblxuXHRzZXQgaXNDaGVja2VkKHZhbDogYm9vbGVhbikge1xuXHRcdHRoaXMuY2hlY2tlZCA9IHZhbDtcblx0XHR0aGlzLmlzQ2hlY2tlZENoYW5nZS5lbWl0KHRoaXMuY2hlY2tlZCk7XG5cdH1cblxuXHRAT3V0cHV0KCkgcHVibGljIGlzQ2hlY2tlZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuXHRASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcblxuXHRASG9zdExpc3RlbmVyKCdjbGljaycpXG5cdHB1YmxpYyBvblRvZ2dsZSgpIHtcblx0XHRpZiAoIXRoaXMuZGlzYWJsZWQpIHtcblx0XHRcdHRoaXMuaXNDaGVja2VkID0gIXRoaXMuaXNDaGVja2VkO1xuXHRcdH1cblx0fVxuXG5cdHB1YmxpYyBkb0tleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcblx0XHRpZiAoZXZlbnQua2V5ID09PSAnICcpIHtcblx0XHRcdGlmICghdGhpcy5kaXNhYmxlZCkge1xuXHRcdFx0XHR0aGlzLmlzQ2hlY2tlZCA9ICF0aGlzLmlzQ2hlY2tlZDtcblx0XHRcdH1cblx0XHRcdGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cdFx0fVxuXHR9XG59XG4iLCI8c3BhbiBjbGFzcz1cInNsYWItc3dpdGNoXCIgW3RhYkluZGV4XT1cImRpc2FibGVkPy0xOjBcIiBbY2xhc3MuY2hlY2tlZF09XCJpc0NoZWNrZWRcIiBbY2xhc3MuZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiAoa2V5ZG93bik9XCJkb0tleURvd24oJGV2ZW50KVwiPlxuICAgIDxzcGFuIGNsYXNzPVwic2xhYi10aWNrXCI+PC9zcGFuPlxuICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwiY2hlY2tib3hcIiBbY2hlY2tlZF09XCJpc0NoZWNrZWRcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBzdHlsZT1cImRpc3BsYXk6bm9uZVwiPlxuICAgIDxzcGFuIGNsYXNzPVwic2xhYi1zd2l0Y2gtdGV4dFwiPjwvc3Bhbj5cbjwvc3Bhbj5cbiJdfQ==