ng-zorro-antd
Version:
An enterprise-class UI components based on Ant Design and Angular
1 lines • 9.52 kB
Source Map (JSON)
{"version":3,"file":"ng-zorro-antd-spin.mjs","sources":["../../components/spin/spin.component.ts","../../components/spin/spin.module.ts","../../components/spin/public-api.ts","../../components/spin/ng-zorro-antd-spin.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 { Direction, Directionality } from '@angular/cdk/bidi';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectorRef,\n Component,\n Input,\n OnChanges,\n OnInit,\n SimpleChanges,\n TemplateRef,\n ViewEncapsulation,\n booleanAttribute,\n numberAttribute,\n inject,\n DestroyRef,\n signal\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { BehaviorSubject, Observable, of, ReplaySubject } from 'rxjs';\nimport { distinctUntilChanged, startWith, switchMap } from 'rxjs/operators';\n\nimport { NzConfigKey, onConfigChangeEventForComponent, WithConfig } from 'ng-zorro-antd/core/config';\nimport { NzSafeAny, NzSizeLDSType } from 'ng-zorro-antd/core/types';\n\nconst NZ_CONFIG_MODULE_NAME: NzConfigKey = 'spin';\n\n@Component({\n selector: 'nz-spin',\n exportAs: 'nzSpin',\n encapsulation: ViewEncapsulation.None,\n template: `\n <ng-template #defaultTemplate>\n <span class=\"ant-spin-dot ant-spin-dot-spin\">\n <i class=\"ant-spin-dot-item\"></i>\n <i class=\"ant-spin-dot-item\"></i>\n <i class=\"ant-spin-dot-item\"></i>\n <i class=\"ant-spin-dot-item\"></i>\n </span>\n </ng-template>\n @if (isLoading()) {\n <div>\n <div\n class=\"ant-spin ant-spin-spinning\"\n [class.ant-spin-rtl]=\"dir === 'rtl'\"\n [class.ant-spin-lg]=\"nzSize === 'large'\"\n [class.ant-spin-sm]=\"nzSize === 'small'\"\n [class.ant-spin-show-text]=\"nzTip\"\n >\n <ng-template [ngTemplateOutlet]=\"nzIndicator || defaultTemplate\"></ng-template>\n @if (nzTip) {\n <div class=\"ant-spin-text\">{{ nzTip }}</div>\n }\n </div>\n </div>\n }\n @if (!nzSimple) {\n <div class=\"ant-spin-container\" [class.ant-spin-blur]=\"isLoading()\">\n <ng-content></ng-content>\n </div>\n }\n `,\n host: {\n '[class.ant-spin-nested-loading]': '!nzSimple'\n },\n imports: [NgTemplateOutlet]\n})\nexport class NzSpinComponent implements OnChanges, OnInit {\n readonly _nzModuleName: NzConfigKey = NZ_CONFIG_MODULE_NAME;\n\n private cdr = inject(ChangeDetectorRef);\n private directionality = inject(Directionality);\n private destroyRef = inject(DestroyRef);\n\n @Input() @WithConfig() nzIndicator: TemplateRef<NzSafeAny> | null = null;\n @Input() nzSize: NzSizeLDSType = 'default';\n @Input() nzTip: string | null = null;\n @Input({ transform: numberAttribute }) nzDelay = 0;\n @Input({ transform: booleanAttribute }) nzSimple = false;\n @Input({ transform: booleanAttribute }) nzSpinning = true;\n private spinning$ = new BehaviorSubject(this.nzSpinning);\n private delay$ = new ReplaySubject<number>(1);\n\n readonly isLoading = signal(false);\n\n dir: Direction = 'ltr';\n\n constructor() {\n onConfigChangeEventForComponent(NZ_CONFIG_MODULE_NAME, () => this.cdr.markForCheck());\n }\n\n ngOnInit(): void {\n this.delay$\n .pipe(\n startWith(this.nzDelay),\n distinctUntilChanged(),\n switchMap(delay =>\n // This construct is used to reduce RxJS dependencies.\n // It previously used `debounce(() => timer())`, but consumers may not\n // use these RxJS functions at all, causing them to still be bundled\n // into the main bundle unnecessarily.\n this.spinning$.pipe(\n switchMap(spinning => {\n if (delay === 0 || !spinning) {\n return of(spinning);\n }\n return new Observable<boolean>(subscriber => {\n const timeoutId = setTimeout(() => subscriber.next(spinning), delay);\n return () => clearTimeout(timeoutId);\n });\n })\n )\n ),\n takeUntilDestroyed(this.destroyRef)\n )\n .subscribe(isLoading => {\n this.isLoading.set(isLoading);\n });\n\n this.directionality.change?.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(direction => {\n this.dir = direction;\n this.cdr.detectChanges();\n });\n\n this.dir = this.directionality.value;\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n const { nzSpinning, nzDelay } = changes;\n if (nzSpinning) {\n this.spinning$.next(this.nzSpinning);\n }\n if (nzDelay) {\n this.delay$.next(this.nzDelay);\n }\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 { NzSpinComponent } from './spin.component';\n\n@NgModule({\n imports: [NzSpinComponent],\n exports: [NzSpinComponent]\n})\nexport class NzSpinModule {}\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 './spin.component';\nexport * from './spin.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}