{"version":3,"file":"primeng-inputswitch.umd.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":["NG_VALUE_ACCESSOR","forwardRef","EventEmitter","Component","ChangeDetectionStrategy","ViewEncapsulation","Input","Output","CommonModule","NgModule"],"mappings":"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"}