UNPKG

5.76 kBSource Map (JSON)View Raw
1{"version":3,"file":"primeng-inputswitch.js","sources":["../../src/app/components/inputswitch/inputswitch.ts","../../src/app/components/inputswitch/primeng-inputswitch.ts"],"sourcesContent":["import {NgModule,Component,Input,forwardRef,EventEmitter,Output,ChangeDetectorRef,ChangeDetectionStrategy, ViewEncapsulation} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {NG_VALUE_ACCESSOR,ControlValueAccessor} from '@angular/forms';\n\nexport const INPUTSWITCH_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputSwitch),\n multi: true\n};\n\n@Component({\n selector: 'p-inputSwitch',\n template: `\n <div [ngClass]=\"{'p-inputswitch p-component': true, 'p-inputswitch-checked': checked, 'p-disabled': disabled, 'p-focus': focused}\" \n [ngStyle]=\"style\" [class]=\"styleClass\" (click)=\"onClick($event, cb)\">\n <div class=\"p-hidden-accessible\">\n <input #cb type=\"checkbox\" [attr.id]=\"inputId\" [attr.name]=\"name\" [attr.tabindex]=\"tabindex\" [checked]=\"checked\" (change)=\"onInputChange($event)\"\n (focus)=\"onFocus($event)\" (blur)=\"onBlur($event)\" [disabled]=\"disabled\" role=\"switch\" [attr.aria-checked]=\"checked\" [attr.aria-labelledby]=\"ariaLabelledBy\"/>\n </div>\n <span class=\"p-inputswitch-slider\"></span>\n </div>\n `,\n providers: [INPUTSWITCH_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./inputswitch.css']\n})\nexport class InputSwitch implements ControlValueAccessor {\n\n @Input() style: any;\n\n @Input() styleClass: string;\n\n @Input() tabindex: number;\n\n @Input() inputId: string;\n\n @Input() name: string;\n\n @Input() disabled: boolean;\n\n @Input() readonly: boolean;\n\n @Input() ariaLabelledBy: string;\n \n @Output() onChange: EventEmitter<any> = new EventEmitter();\n\n checked: boolean = false;\n\n focused: boolean = false;\n\n onModelChange: Function = () => {};\n\n onModelTouched: Function = () => {};\n\n constructor(private cd: ChangeDetectorRef) {}\n\n onClick(event: Event, cb: HTMLInputElement) {\n if (!this.disabled && !this.readonly) {\n event.preventDefault();\n this.toggle(event);\n cb.focus();\n }\n }\n\n onInputChange(event: Event) {\n if (!this.readonly) {\n const inputChecked = (<HTMLInputElement> event.target).checked;\n this.updateModel(event, inputChecked);\n }\n }\n\n toggle(event: Event) {\n this.updateModel(event, !this.checked);\n }\n\n updateModel(event: Event, value: boolean) {\n this.checked = value;\n this.onModelChange(this.checked);\n this.onChange.emit({\n originalEvent: event,\n checked: this.checked\n });\n }\n\n onFocus(event: Event) {\n this.focused = true;\n }\n\n onBlur(event: Event) {\n this.focused = false;\n this.onModelTouched();\n }\n\n writeValue(checked: any) : void {\n this.checked = checked;\n this.cd.markForCheck();\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n \n setDisabledState(val: boolean): void {\n this.disabled = val;\n this.cd.markForCheck();\n }\n}\n\n@NgModule({\n imports: [CommonModule],\n exports: [InputSwitch],\n declarations: [InputSwitch]\n})\nexport class InputSwitchModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;MAIa,0BAA0B,GAAQ;IAC7C,OAAO,EAAE,iBAAiB;IAC1B,WAAW,EAAE,UAAU,CAAC,MAAM,WAAW,CAAC;IAC1C,KAAK,EAAE,IAAI;EACX;MAmBW,WAAW;IA4BpB,YAAoB,EAAqB;QAArB,OAAE,GAAF,EAAE,CAAmB;QAV/B,aAAQ,GAAsB,IAAI,YAAY,EAAE,CAAC;QAE3D,YAAO,GAAY,KAAK,CAAC;QAEzB,YAAO,GAAY,KAAK,CAAC;QAEzB,kBAAa,GAAa,SAAQ,CAAC;QAEnC,mBAAc,GAAa,SAAQ,CAAC;KAES;IAE7C,OAAO,CAAC,KAAY,EAAE,EAAoB;QACtC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClC,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACnB,EAAE,CAAC,KAAK,EAAE,CAAC;SACd;KACJ;IAED,aAAa,CAAC,KAAY;QACtB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAChB,MAAM,YAAY,GAAuB,KAAK,CAAC,MAAO,CAAC,OAAO,CAAC;YAC/D,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;SACzC;KACJ;IAED,MAAM,CAAC,KAAY;QACf,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KAC1C;IAED,WAAW,CAAC,KAAY,EAAE,KAAc;QACpC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACf,aAAa,EAAE,KAAK;YACpB,OAAO,EAAE,IAAI,CAAC,OAAO;SACxB,CAAC,CAAC;KACN;IAED,OAAO,CAAC,KAAY;QAChB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;KACvB;IAED,MAAM,CAAC,KAAY;QACf,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,cAAc,EAAE,CAAC;KACzB;IAED,UAAU,CAAC,OAAY;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC;KAC1B;IAED,gBAAgB,CAAC,EAAY;QACzB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;KAC3B;IAED,iBAAiB,CAAC,EAAY;QAC1B,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;KAC5B;IAED,gBAAgB,CAAC,GAAY;QACzB,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;QACpB,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC;KAC1B;;;YApGJ,SAAS,SAAC;gBACP,QAAQ,EAAE,eAAe;gBACzB,QAAQ,EAAE;;;;;;;;;KAST;gBACD,SAAS,EAAE,CAAC,0BAA0B,CAAC;gBACvC,eAAe,EAAE,uBAAuB,CAAC,MAAM;gBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;;aAExC;;;YA1B+D,iBAAiB;;;oBA6B5E,KAAK;yBAEL,KAAK;uBAEL,KAAK;sBAEL,KAAK;mBAEL,KAAK;uBAEL,KAAK;uBAEL,KAAK;6BAEL,KAAK;uBAEL,MAAM;;MAyEE,iBAAiB;;;YAL7B,QAAQ,SAAC;gBACN,OAAO,EAAE,CAAC,YAAY,CAAC;gBACvB,OAAO,EAAE,CAAC,WAAW,CAAC;gBACtB,YAAY,EAAE,CAAC,WAAW,CAAC;aAC9B;;;ACrHD;;;;;;"}
\No newline at end of file