ng-zorro-antd
Version:
An enterprise-class UI components based on Ant Design and Angular
1 lines • 15 kB
Source Map (JSON)
{"version":3,"file":"ng-zorro-antd-switch.mjs","sources":["../../components/switch/switch.component.ts","../../components/switch/switch.module.ts","../../components/switch/public-api.ts","../../components/switch/ng-zorro-antd-switch.ts"],"sourcesContent":["/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { FocusMonitor } from '@angular/cdk/a11y';\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport { ENTER, LEFT_ARROW, RIGHT_ARROW, SPACE } from '@angular/cdk/keycodes';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n booleanAttribute,\n forwardRef\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { NzConfigKey, NzConfigService, WithConfig } from 'ng-zorro-antd/core/config';\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { NzSizeDSType, OnChangeType, OnTouchedType } from 'ng-zorro-antd/core/types';\nimport { fromEventOutsideAngular } from 'ng-zorro-antd/core/util';\nimport { NzWaveModule } from 'ng-zorro-antd/core/wave';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\nconst NZ_CONFIG_MODULE_NAME: NzConfigKey = 'switch';\n\n@Component({\n selector: 'nz-switch',\n exportAs: 'nzSwitch',\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NzSwitchComponent),\n multi: true\n }\n ],\n template: `\n <button\n nz-wave\n type=\"button\"\n class=\"ant-switch\"\n #switchElement\n [attr.id]=\"nzId\"\n [disabled]=\"nzDisabled\"\n [class.ant-switch-checked]=\"isChecked\"\n [class.ant-switch-loading]=\"nzLoading\"\n [class.ant-switch-disabled]=\"nzDisabled\"\n [class.ant-switch-small]=\"nzSize === 'small'\"\n [class.ant-switch-rtl]=\"dir === 'rtl'\"\n [nzWaveExtraNode]=\"true\"\n >\n <span class=\"ant-switch-handle\">\n @if (nzLoading) {\n <nz-icon nzType=\"loading\" class=\"ant-switch-loading-icon\" />\n }\n </span>\n <span class=\"ant-switch-inner\">\n @if (isChecked) {\n <ng-container *nzStringTemplateOutlet=\"nzCheckedChildren\">{{ nzCheckedChildren }}</ng-container>\n } @else {\n <ng-container *nzStringTemplateOutlet=\"nzUnCheckedChildren\">{{ nzUnCheckedChildren }}</ng-container>\n }\n </span>\n <div class=\"ant-click-animating-node\"></div>\n </button>\n `,\n imports: [NzWaveModule, NzIconModule, NzOutletModule]\n})\nexport class NzSwitchComponent implements ControlValueAccessor, AfterViewInit, OnDestroy, OnInit {\n readonly _nzModuleName: NzConfigKey = NZ_CONFIG_MODULE_NAME;\n\n isChecked = false;\n onChange: OnChangeType = () => {};\n onTouched: OnTouchedType = () => {};\n @ViewChild('switchElement', { static: true }) switchElement!: ElementRef<HTMLElement>;\n @Input({ transform: booleanAttribute }) nzLoading = false;\n @Input({ transform: booleanAttribute }) nzDisabled = false;\n @Input({ transform: booleanAttribute }) nzControl = false;\n @Input() nzCheckedChildren: string | TemplateRef<void> | null = null;\n @Input() nzUnCheckedChildren: string | TemplateRef<void> | null = null;\n @Input() @WithConfig() nzSize: NzSizeDSType = 'default';\n @Input() nzId: string | null = null;\n\n dir: Direction = 'ltr';\n\n private destroy$ = new Subject<void>();\n private isNzDisableFirstChange = true;\n\n updateValue(value: boolean): void {\n if (this.isChecked !== value) {\n this.isChecked = value;\n this.onChange(this.isChecked);\n }\n }\n\n focus(): void {\n this.focusMonitor.focusVia(this.switchElement.nativeElement, 'keyboard');\n }\n\n blur(): void {\n this.switchElement.nativeElement.blur();\n }\n\n constructor(\n public nzConfigService: NzConfigService,\n private host: ElementRef<HTMLElement>,\n private ngZone: NgZone,\n private cdr: ChangeDetectorRef,\n private focusMonitor: FocusMonitor,\n private directionality: Directionality\n ) {}\n\n ngOnInit(): void {\n this.directionality.change.pipe(takeUntil(this.destroy$)).subscribe((direction: Direction) => {\n this.dir = direction;\n this.cdr.detectChanges();\n });\n\n this.dir = this.directionality.value;\n\n fromEventOutsideAngular(this.host.nativeElement, 'click')\n .pipe(takeUntil(this.destroy$))\n .subscribe(event => {\n event.preventDefault();\n\n if (this.nzControl || this.nzDisabled || this.nzLoading) {\n return;\n }\n\n this.ngZone.run(() => {\n this.updateValue(!this.isChecked);\n this.cdr.markForCheck();\n });\n });\n\n fromEventOutsideAngular<KeyboardEvent>(this.switchElement.nativeElement, 'keydown')\n .pipe(takeUntil(this.destroy$))\n .subscribe(event => {\n if (this.nzControl || this.nzDisabled || this.nzLoading) {\n return;\n }\n\n const { keyCode } = event;\n if (keyCode !== LEFT_ARROW && keyCode !== RIGHT_ARROW && keyCode !== SPACE && keyCode !== ENTER) {\n return;\n }\n\n event.preventDefault();\n\n this.ngZone.run(() => {\n if (keyCode === LEFT_ARROW) {\n this.updateValue(false);\n } else if (keyCode === RIGHT_ARROW) {\n this.updateValue(true);\n } else if (keyCode === SPACE || keyCode === ENTER) {\n this.updateValue(!this.isChecked);\n }\n\n this.cdr.markForCheck();\n });\n });\n }\n\n ngAfterViewInit(): void {\n this.focusMonitor\n .monitor(this.switchElement!.nativeElement, true)\n .pipe(takeUntil(this.destroy$))\n .subscribe(focusOrigin => {\n if (!focusOrigin) {\n /** https://github.com/angular/angular/issues/17793 **/\n Promise.resolve().then(() => this.onTouched());\n }\n });\n }\n\n ngOnDestroy(): void {\n this.focusMonitor.stopMonitoring(this.switchElement!.nativeElement);\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n writeValue(value: boolean): void {\n this.isChecked = value;\n this.cdr.markForCheck();\n }\n\n registerOnChange(fn: OnChangeType): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: OnTouchedType): void {\n this.onTouched = fn;\n }\n\n setDisabledState(disabled: boolean): void {\n this.nzDisabled = (this.isNzDisableFirstChange && this.nzDisabled) || disabled;\n this.isNzDisableFirstChange = false;\n this.cdr.markForCheck();\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { NgModule } from '@angular/core';\n\nimport { NzSwitchComponent } from './switch.component';\n\n@NgModule({\n imports: [NzSwitchComponent],\n exports: [NzSwitchComponent]\n})\nexport class NzSwitchModule {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nexport * from './switch.component';\nexport * from './switch.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}