UNPKG

6.92 kBSource Map (JSON)View Raw
1{"version":3,"file":"primeng-togglebutton.umd.js","sources":["ng://primeng/togglebutton/togglebutton.ts"],"sourcesContent":["import {NgModule,Component,Input,Output,EventEmitter,forwardRef,AfterViewInit,ViewChild,ElementRef,ChangeDetectionStrategy} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {NG_VALUE_ACCESSOR, ControlValueAccessor} from '@angular/forms';\n\nexport const TOGGLEBUTTON_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ToggleButton),\n multi: true\n};\n\n@Component({\n selector: 'p-toggleButton',\n template: `\n <div [ngClass]=\"{'ui-button ui-togglebutton ui-widget ui-state-default ui-corner-all': true, 'ui-button-text-only': (!onIcon && !offIcon), \n 'ui-button-text-icon-left': (onIcon && offIcon && hasOnLabel && hasOffLabel && iconPos === 'left'), \n 'ui-button-text-icon-right': (onIcon && offIcon && hasOnLabel && hasOffLabel && iconPos === 'right'),'ui-button-icon-only': (onIcon && offIcon && !hasOnLabel && !hasOffLabel),\n 'ui-state-active': checked,'ui-state-focus':focus,'ui-state-disabled':disabled}\" [ngStyle]=\"style\" [class]=\"styleClass\" \n (click)=\"toggle($event)\" (keydown.enter)=\"toggle($event)\">\n <div class=\"ui-helper-hidden-accessible\">\n <input #checkbox type=\"checkbox\" [attr.id]=\"inputId\" [checked]=\"checked\" (focus)=\"onFocus()\" (blur)=\"onBlur()\" [attr.tabindex]=\"tabindex\"\n role=\"button\" [attr.aria-pressed]=\"checked\" [attr.aria-labelledby]=\"ariaLabelledBy\">\n </div>\n <span *ngIf=\"onIcon||offIcon\" class=\"ui-button-icon-left\" [class]=\"checked ? this.onIcon : this.offIcon\" [ngClass]=\"{'ui-button-icon-left': (iconPos === 'left'), \n 'ui-button-icon-right': (iconPos === 'right')}\"></span>\n <span class=\"ui-button-text ui-unselectable-text\">{{checked ? hasOnLabel ? onLabel : 'ui-btn' : hasOffLabel ? offLabel : 'ui-btn'}}</span>\n </div>\n `,\n providers: [TOGGLEBUTTON_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.Default\n})\nexport class ToggleButton implements ControlValueAccessor,AfterViewInit {\n\n @Input() onLabel: string = 'Yes';\n\n @Input() offLabel: string = 'No';\n\n @Input() onIcon: string;\n\n @Input() offIcon: string;\n\n @Input() ariaLabelledBy: string;\n\n @Input() disabled: boolean;\n\n @Input() style: any;\n\n @Input() styleClass: string;\n\n @Input() inputId: string;\n\n @Input() tabindex: number;\n\n @Input() iconPos: string = 'left';\n\n @Output() onChange: EventEmitter<any> = new EventEmitter();\n \n @ViewChild('checkbox') checkboxViewChild: ElementRef;\n \n checkbox: HTMLInputElement;\n \n checked: boolean = false;\n\n focus: boolean = false;\n \n onModelChange: Function = () => {};\n \n onModelTouched: Function = () => {};\n \n ngAfterViewInit() {\n if (this.checkboxViewChild){\n this.checkbox = <HTMLInputElement> this.checkboxViewChild.nativeElement;\n }\n }\n \n toggle(event: Event) {\n if (!this.disabled) {\n this.checked = !this.checked;\n this.onModelChange(this.checked);\n this.onModelTouched();\n this.onChange.emit({\n originalEvent: event,\n checked: this.checked\n });\n if (this.checkbox) {\n this.checkbox.focus();\n }\n }\n }\n\n onFocus() {\n this.focus = true;\n }\n \n onBlur() {\n this.focus = false;\n this.onModelTouched();\n }\n \n writeValue(value: any) : void {\n this.checked = value;\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 }\n \n get hasOnLabel():boolean {\n return this.onLabel && this.onLabel.length > 0;\n }\n \n get hasOffLabel():boolean {\n return this.onLabel && this.onLabel.length > 0;\n }\n}\n\n@NgModule({\n imports: [CommonModule],\n exports: [ToggleButton],\n declarations: [ToggleButton]\n})\nexport class ToggleButtonModule { }\n"],"names":["NG_VALUE_ACCESSOR","forwardRef","EventEmitter","Input","Output","ViewChild","Component","ChangeDetectionStrategy","NgModule","CommonModule"],"mappings":"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"}
\No newline at end of file