@leoborel/ngx-ui-switch
Version:
switch button for angular4
1 lines • 14.9 kB
Source Map (JSON)
{"version":3,"file":"leoborel-ngx-ui-switch.mjs","sources":["../../../src/lib/ui-switch/ui-switch.token.ts","../../../src/lib/ui-switch/ui-switch.component.ts","../../../src/lib/ui-switch/ui-switch.component.html","../../../src/lib/ui-switch/ui-switch.module.ts","../../../src/lib/leoborel-ngx-ui-switch.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\r\n\r\nexport const UI_SWITCH_OPTIONS = new InjectionToken('UI_SWITCH_OPTIONS');\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n HostListener,\r\n forwardRef,\r\n Inject,\r\n Optional,\r\n OnDestroy,\r\n} from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\r\nimport { UI_SWITCH_OPTIONS } from './ui-switch.token';\r\nimport { UiSwitchModuleConfig } from './ui-switch.config';\r\nimport { Observable, Subscription } from 'rxjs';\r\n\r\nconst UI_SWITCH_CONTROL_VALUE_ACCESSOR: any = {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => UiSwitchComponent),\r\n multi: true,\r\n};\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'ui-switch',\r\n templateUrl: 'ui-switch.component.html',\r\n providers: [UI_SWITCH_CONTROL_VALUE_ACCESSOR],\r\n})\r\nexport class UiSwitchComponent implements ControlValueAccessor, OnDestroy {\r\n private _checked: boolean;\r\n private _disabled: boolean;\r\n private _reverse: boolean;\r\n private _loading: boolean;\r\n private _beforeChange: Subscription;\r\n\r\n @Input() size;\r\n @Input() color;\r\n @Input() switchOffColor;\r\n @Input() switchColor;\r\n @Input() defaultBgColor;\r\n @Input() defaultBoColor;\r\n @Input() checkedLabel;\r\n @Input() uncheckedLabel;\r\n @Input() checkedTextColor;\r\n @Input() uncheckedTextColor;\r\n @Input() beforeChange: Observable<boolean>;\r\n\r\n @Input()\r\n set checked(v: boolean) {\r\n this._checked = v !== false;\r\n }\r\n\r\n get checked() {\r\n return this._checked;\r\n }\r\n\r\n @Input()\r\n set disabled(v: boolean) {\r\n this._disabled = v !== false;\r\n }\r\n\r\n get disabled() {\r\n return this._disabled;\r\n }\r\n\r\n @Input()\r\n set reverse(v: boolean) {\r\n this._reverse = v !== false;\r\n }\r\n\r\n get reverse() {\r\n return this._reverse;\r\n }\r\n\r\n @Input()\r\n set loading(v: boolean) {\r\n this._loading = v !== false;\r\n }\r\n\r\n get loading() {\r\n return this._loading;\r\n }\r\n\r\n /**\r\n * Emits changed value\r\n */\r\n // eslint-disable-next-line @angular-eslint/no-output-native\r\n @Output() change = new EventEmitter<boolean>();\r\n\r\n /**\r\n * Emits DOM event\r\n */\r\n @Output() changeEvent = new EventEmitter<MouseEvent>();\r\n\r\n /**\r\n * Emits changed value\r\n */\r\n @Output() valueChange = new EventEmitter<boolean>();\r\n\r\n constructor(\r\n @Inject(UI_SWITCH_OPTIONS) @Optional() config: UiSwitchModuleConfig = {},\r\n private cdr: ChangeDetectorRef\r\n ) {\r\n this.size = (config && config.size) || 'medium';\r\n this.color = config && config.color;\r\n this.switchOffColor = config && config.switchOffColor;\r\n this.switchColor = config && config.switchColor;\r\n this.defaultBgColor = config && config.defaultBgColor;\r\n this.defaultBoColor = config && config.defaultBoColor;\r\n this.checkedLabel = config && config.checkedLabel;\r\n this.uncheckedLabel = config && config.uncheckedLabel;\r\n this.checkedTextColor = config && config.checkedTextColor;\r\n this.uncheckedTextColor = config && config.uncheckedTextColor;\r\n }\r\n\r\n getColor(flag = '') {\r\n if (flag === 'borderColor') {\r\n return this.defaultBoColor;\r\n }\r\n if (flag === 'switchColor') {\r\n if (this.reverse) {\r\n return !this.checked ? this.switchColor : this.switchOffColor || this.switchColor;\r\n }\r\n return this.checked ? this.switchColor : this.switchOffColor || this.switchColor;\r\n }\r\n if (flag === 'checkedTextColor') {\r\n return this.reverse ? this.uncheckedTextColor : this.checkedTextColor;\r\n }\r\n if (flag === 'uncheckedTextColor') {\r\n return this.reverse ? this.checkedTextColor : this.uncheckedTextColor;\r\n }\r\n if (this.reverse) {\r\n return !this.checked ? this.color : this.defaultBgColor;\r\n }\r\n return this.checked ? this.color : this.defaultBgColor;\r\n }\r\n\r\n onClick(event: MouseEvent) {\r\n if (this.disabled) {\r\n return;\r\n }\r\n this.checked = !this.checked;\r\n\r\n // Component events\r\n this.change.emit(this.checked);\r\n this.valueChange.emit(this.checked);\r\n this.changeEvent.emit(event);\r\n\r\n // value accessor callbacks\r\n this.onChangeCallback(this.checked);\r\n this.onTouchedCallback(this.checked);\r\n this.cdr.markForCheck();\r\n }\r\n\r\n @HostListener('click', ['$event'])\r\n onToggle(event: MouseEvent) {\r\n if (this.disabled) {\r\n return;\r\n }\r\n if (this.beforeChange) {\r\n this._beforeChange = this.beforeChange.subscribe((confirm: boolean) => {\r\n if (confirm) {\r\n this.onClick(event);\r\n }\r\n });\r\n } else {\r\n this.onClick(event);\r\n }\r\n }\r\n\r\n writeValue(obj: any): void {\r\n if (obj !== this.checked) {\r\n this.checked = !!obj;\r\n }\r\n\r\n this.onChangeCallback(this.checked);\r\n if (this.cdr) {\r\n this.cdr.markForCheck();\r\n }\r\n }\r\n\r\n registerOnChange(fn: any) {\r\n this.onChangeCallback = fn;\r\n }\r\n\r\n registerOnTouched(fn: any) {\r\n this.onTouchedCallback = fn;\r\n }\r\n\r\n setDisabledState(isDisabled: boolean) {\r\n this.disabled = isDisabled;\r\n }\r\n\r\n private onTouchedCallback = (v: any) => {};\r\n private onChangeCallback = (v: any) => {};\r\n\r\n ngOnDestroy() {\r\n if (this._beforeChange) {\r\n this._beforeChange.unsubscribe();\r\n }\r\n }\r\n}\r\n","<button\r\n type=\"button\"\r\n class=\"switch\"\r\n role=\"switch\"\r\n [attr.aria-checked]=\"checked\"\r\n [class.checked]=\"checked\"\r\n [class.disabled]=\"disabled\"\r\n [class.loading]=\"loading\"\r\n [class.switch-large]=\"size === 'large'\"\r\n [class.switch-medium]=\"size === 'medium'\"\r\n [class.switch-small]=\"size === 'small'\"\r\n [style.background-color]=\"getColor()\"\r\n [style.border-color]=\"getColor('borderColor')\"\r\n>\r\n <label class=\"switch-pane\" *ngIf=\"checkedLabel || uncheckedLabel\">\r\n <span\r\n [attr.aria-label]=\"this.checkedLabel\"\r\n class=\"switch-label-checked\"\r\n [style.color]=\"getColor('checkedTextColor')\"\r\n >{{ this.checkedLabel }}</span\r\n >\r\n <span\r\n [attr.aria-label]=\"this.uncheckedLabel\"\r\n class=\"switch-label-unchecked\"\r\n [style.color]=\"getColor('uncheckedTextColor')\"\r\n >{{ this.uncheckedLabel }}</span\r\n >\r\n </label>\r\n <small [style.background]=\"getColor('switchColor')\">\r\n <ng-content></ng-content>\r\n </small>\r\n</button>\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { UiSwitchComponent } from './ui-switch.component';\r\nimport { UI_SWITCH_OPTIONS } from './ui-switch.token';\r\nimport { UiSwitchModuleConfig } from './ui-switch.config';\r\n\r\n@NgModule({\r\n declarations: [UiSwitchComponent],\r\n imports: [CommonModule, FormsModule],\r\n exports: [FormsModule, UiSwitchComponent],\r\n})\r\nexport class UiSwitchModule {\r\n static forRoot(\r\n config: UiSwitchModuleConfig | null | undefined\r\n ): ModuleWithProviders<UiSwitchModule> {\r\n return {\r\n ngModule: UiSwitchModule,\r\n providers: [{ provide: UI_SWITCH_OPTIONS, useValue: config || {} }],\r\n };\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}