@delon/abc 17.0.4 → 17.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/auto-focus/auto-focus.directive.d.ts +7 -12
- package/avatar-list/avatar-list-item.component.d.ts +1 -1
- package/avatar-list/avatar-list.component.d.ts +10 -12
- package/avatar-list/avatar-list.module.d.ts +6 -6
- package/cell/cell-host.directive.d.ts +3 -5
- package/cell/cell.component.d.ts +10 -15
- package/cell/cell.service.d.ts +4 -7
- package/count-down/count-down.component.d.ts +1 -1
- package/count-down/count-down.module.d.ts +4 -4
- package/date-picker/date-picker.module.d.ts +6 -6
- package/date-picker/range-shortcut.component.d.ts +2 -2
- package/date-picker/range.directive.d.ts +7 -9
- package/down-file/down-file.directive.d.ts +6 -7
- package/down-file/down-file.module.d.ts +4 -4
- package/ellipsis/ellipsis.component.d.ts +12 -15
- package/ellipsis/ellipsis.module.d.ts +5 -5
- package/error-collect/error-collect.component.d.ts +14 -14
- package/error-collect/error-collect.module.d.ts +4 -4
- package/esm2022/auto-focus/auto-focus.directive.mjs +21 -32
- package/esm2022/auto-focus/auto-focus.module.mjs +4 -4
- package/esm2022/avatar-list/avatar-list-item.component.mjs +6 -5
- package/esm2022/avatar-list/avatar-list.component.mjs +28 -34
- package/esm2022/avatar-list/avatar-list.module.mjs +6 -7
- package/esm2022/cell/cell-host.directive.mjs +10 -10
- package/esm2022/cell/cell.component.mjs +43 -59
- package/esm2022/cell/cell.module.mjs +4 -4
- package/esm2022/cell/cell.service.mjs +13 -14
- package/esm2022/count-down/count-down.component.mjs +9 -7
- package/esm2022/count-down/count-down.module.mjs +6 -7
- package/esm2022/date-picker/date-picker.module.mjs +6 -7
- package/esm2022/date-picker/range-shortcut.component.mjs +9 -9
- package/esm2022/date-picker/range.directive.mjs +16 -19
- package/esm2022/down-file/down-file.directive.mjs +17 -18
- package/esm2022/down-file/down-file.module.mjs +7 -8
- package/esm2022/ellipsis/ellipsis.component.mjs +36 -49
- package/esm2022/ellipsis/ellipsis.module.mjs +6 -7
- package/esm2022/error-collect/error-collect.component.mjs +27 -36
- package/esm2022/error-collect/error-collect.module.mjs +6 -7
- package/esm2022/exception/exception.component.mjs +21 -25
- package/esm2022/exception/exception.module.mjs +6 -7
- package/esm2022/footer-toolbar/footer-toolbar.component.mjs +18 -28
- package/esm2022/footer-toolbar/footer-toolbar.module.mjs +6 -7
- package/esm2022/full-content/full-content-toggle.directive.mjs +11 -10
- package/esm2022/full-content/full-content.component.mjs +26 -38
- package/esm2022/full-content/full-content.module.mjs +6 -7
- package/esm2022/full-content/full-content.service.mjs +3 -3
- package/esm2022/global-footer/global-footer-item.component.mjs +9 -12
- package/esm2022/global-footer/global-footer.component.mjs +23 -28
- package/esm2022/global-footer/global-footer.module.mjs +6 -7
- package/esm2022/hotkey/hotkey.directive.mjs +14 -14
- package/esm2022/hotkey/hotkey.module.mjs +4 -4
- package/esm2022/let/let.directive.mjs +3 -3
- package/esm2022/let/let.module.mjs +4 -4
- package/esm2022/loading/loading.component.mjs +8 -8
- package/esm2022/loading/loading.module.mjs +6 -7
- package/esm2022/loading/loading.service.mjs +15 -17
- package/esm2022/lodop/lodop.module.mjs +4 -4
- package/esm2022/lodop/lodop.service.mjs +10 -10
- package/esm2022/media/media.component.mjs +24 -25
- package/esm2022/media/media.module.mjs +6 -7
- package/esm2022/media/media.service.mjs +15 -15
- package/esm2022/notice-icon/notice-icon-tab.component.mjs +16 -9
- package/esm2022/notice-icon/notice-icon.component.mjs +40 -39
- package/esm2022/notice-icon/notice-icon.module.mjs +10 -9
- package/esm2022/observers/observer-size.mjs +18 -18
- package/esm2022/onboarding/onboarding.component.mjs +24 -30
- package/esm2022/onboarding/onboarding.module.mjs +25 -9
- package/esm2022/onboarding/onboarding.service.mjs +26 -33
- package/esm2022/page-header/page-header.component.mjs +61 -84
- package/esm2022/page-header/page-header.module.mjs +9 -9
- package/esm2022/pdf/pdf.component.mjs +46 -71
- package/esm2022/pdf/pdf.module.mjs +6 -7
- package/esm2022/qr/qr.component.mjs +11 -19
- package/esm2022/qr/qr.module.mjs +4 -4
- package/esm2022/quick-menu/quick-menu.component.mjs +21 -29
- package/esm2022/quick-menu/quick-menu.module.mjs +6 -7
- package/esm2022/result/result.component.mjs +20 -22
- package/esm2022/result/result.module.mjs +6 -7
- package/esm2022/reuse-tab/provide.mjs +2 -1
- package/esm2022/reuse-tab/reuse-tab-context-menu.component.mjs +13 -14
- package/esm2022/reuse-tab/reuse-tab-context.component.mjs +12 -16
- package/esm2022/reuse-tab/reuse-tab-context.directive.mjs +9 -9
- package/esm2022/reuse-tab/reuse-tab-context.service.mjs +9 -10
- package/esm2022/reuse-tab/reuse-tab.component.mjs +58 -93
- package/esm2022/reuse-tab/reuse-tab.module.mjs +4 -4
- package/esm2022/reuse-tab/reuse-tab.service.mjs +71 -60
- package/esm2022/reuse-tab/reuse-tab.strategy.mjs +5 -3
- package/esm2022/se/se-container.component.mjs +62 -79
- package/esm2022/se/se.component.mjs +42 -59
- package/esm2022/se/se.module.mjs +6 -7
- package/esm2022/sg/sg-container.component.mjs +12 -20
- package/esm2022/sg/sg.component.mjs +21 -27
- package/esm2022/sg/sg.module.mjs +6 -7
- package/esm2022/st/st-column-source.mjs +4 -4
- package/esm2022/st/st-data-source.mjs +4 -4
- package/esm2022/st/st-export.mjs +30 -21
- package/esm2022/st/st-filter.component.mjs +11 -11
- package/esm2022/st/st-row.directive.mjs +12 -14
- package/esm2022/st/st-widget-host.directive.mjs +10 -10
- package/esm2022/st/st-widget.mjs +3 -3
- package/esm2022/st/st.component.mjs +82 -124
- package/esm2022/st/st.module.mjs +4 -4
- package/esm2022/sv/sv-container.component.mjs +60 -78
- package/esm2022/sv/sv-value.component.mjs +9 -7
- package/esm2022/sv/sv.component.mjs +35 -48
- package/esm2022/sv/sv.module.mjs +6 -7
- package/esm2022/tag-select/tag-select.component.mjs +19 -24
- package/esm2022/tag-select/tag-select.module.mjs +6 -7
- package/esm2022/xlsx/xlsx.directive.mjs +9 -9
- package/esm2022/xlsx/xlsx.module.mjs +4 -4
- package/esm2022/xlsx/xlsx.service.mjs +13 -13
- package/esm2022/zip/zip.service.mjs +13 -13
- package/exception/exception.component.d.ts +13 -13
- package/exception/exception.module.d.ts +7 -7
- package/fesm2022/auto-focus.mjs +24 -35
- package/fesm2022/auto-focus.mjs.map +1 -1
- package/fesm2022/avatar-list.mjs +37 -46
- package/fesm2022/avatar-list.mjs.map +1 -1
- package/fesm2022/cell.mjs +67 -84
- package/fesm2022/cell.mjs.map +1 -1
- package/fesm2022/chart-observer-size.mjs +17 -17
- package/fesm2022/chart-observer-size.mjs.map +1 -1
- package/fesm2022/count-down.mjs +13 -13
- package/fesm2022/count-down.mjs.map +1 -1
- package/fesm2022/date-picker.mjs +28 -33
- package/fesm2022/date-picker.mjs.map +1 -1
- package/fesm2022/down-file.mjs +22 -25
- package/fesm2022/down-file.mjs.map +1 -1
- package/fesm2022/ellipsis.mjs +40 -56
- package/fesm2022/ellipsis.mjs.map +1 -1
- package/fesm2022/error-collect.mjs +31 -42
- package/fesm2022/error-collect.mjs.map +1 -1
- package/fesm2022/exception.mjs +25 -34
- package/fesm2022/exception.mjs.map +1 -1
- package/fesm2022/footer-toolbar.mjs +22 -35
- package/fesm2022/footer-toolbar.mjs.map +1 -1
- package/fesm2022/full-content.mjs +40 -52
- package/fesm2022/full-content.mjs.map +1 -1
- package/fesm2022/global-footer.mjs +34 -45
- package/fesm2022/global-footer.mjs.map +1 -1
- package/fesm2022/hotkey.mjs +17 -17
- package/fesm2022/hotkey.mjs.map +1 -1
- package/fesm2022/let.mjs +7 -7
- package/fesm2022/loading.mjs +26 -33
- package/fesm2022/loading.mjs.map +1 -1
- package/fesm2022/lodop.mjs +13 -13
- package/fesm2022/lodop.mjs.map +1 -1
- package/fesm2022/media.mjs +40 -42
- package/fesm2022/media.mjs.map +1 -1
- package/fesm2022/notice-icon.mjs +61 -62
- package/fesm2022/notice-icon.mjs.map +1 -1
- package/fesm2022/onboarding.mjs +71 -72
- package/fesm2022/onboarding.mjs.map +1 -1
- package/fesm2022/page-header.mjs +68 -97
- package/fesm2022/page-header.mjs.map +1 -1
- package/fesm2022/pdf.mjs +50 -77
- package/fesm2022/pdf.mjs.map +1 -1
- package/fesm2022/qr.mjs +14 -22
- package/fesm2022/qr.mjs.map +1 -1
- package/fesm2022/quick-menu.mjs +25 -37
- package/fesm2022/quick-menu.mjs.map +1 -1
- package/fesm2022/result.mjs +24 -29
- package/fesm2022/result.mjs.map +1 -1
- package/fesm2022/reuse-tab.mjs +175 -206
- package/fesm2022/reuse-tab.mjs.map +1 -1
- package/fesm2022/se.mjs +104 -141
- package/fesm2022/se.mjs.map +1 -1
- package/fesm2022/sg.mjs +34 -47
- package/fesm2022/sg.mjs.map +1 -1
- package/fesm2022/st.mjs +148 -180
- package/fesm2022/st.mjs.map +1 -1
- package/fesm2022/sv.mjs +102 -135
- package/fesm2022/sv.mjs.map +1 -1
- package/fesm2022/tag-select.mjs +23 -31
- package/fesm2022/tag-select.mjs.map +1 -1
- package/fesm2022/xlsx.mjs +22 -22
- package/fesm2022/xlsx.mjs.map +1 -1
- package/fesm2022/zip.mjs +12 -12
- package/fesm2022/zip.mjs.map +1 -1
- package/footer-toolbar/footer-toolbar.component.d.ts +6 -10
- package/footer-toolbar/footer-toolbar.module.d.ts +5 -5
- package/full-content/full-content-toggle.directive.d.ts +2 -4
- package/full-content/full-content.component.d.ts +11 -16
- package/full-content/full-content.module.d.ts +4 -4
- package/global-footer/global-footer-item.component.d.ts +2 -3
- package/global-footer/global-footer.component.d.ts +12 -16
- package/global-footer/global-footer.module.d.ts +5 -5
- package/hotkey/hotkey.directive.d.ts +4 -6
- package/loading/loading.component.d.ts +2 -2
- package/loading/loading.module.d.ts +7 -7
- package/loading/loading.service.d.ts +5 -8
- package/lodop/lodop.service.d.ts +2 -3
- package/media/media.component.d.ts +9 -13
- package/media/media.module.d.ts +3 -3
- package/media/media.service.d.ts +3 -5
- package/notice-icon/notice-icon-tab.component.d.ts +1 -1
- package/notice-icon/notice-icon.component.d.ts +9 -11
- package/notice-icon/notice-icon.module.d.ts +13 -13
- package/observers/observer-size.d.ts +4 -5
- package/onboarding/onboarding.component.d.ts +7 -10
- package/onboarding/onboarding.module.d.ts +8 -8
- package/onboarding/onboarding.service.d.ts +9 -16
- package/package.json +5 -5
- package/page-header/page-header.component.d.ts +24 -27
- package/page-header/page-header.module.d.ts +9 -9
- package/pdf/pdf.component.d.ts +22 -22
- package/pdf/pdf.module.d.ts +4 -4
- package/pdf/pdf.types.d.ts +1 -1
- package/qr/qr.component.d.ts +3 -4
- package/quick-menu/quick-menu.component.d.ts +8 -10
- package/quick-menu/quick-menu.module.d.ts +5 -5
- package/result/result.component.d.ts +8 -9
- package/result/result.module.d.ts +5 -5
- package/reuse-tab/reuse-tab-context-menu.component.d.ts +1 -3
- package/reuse-tab/reuse-tab-context.component.d.ts +4 -7
- package/reuse-tab/reuse-tab-context.directive.d.ts +1 -3
- package/reuse-tab/reuse-tab-context.service.d.ts +1 -3
- package/reuse-tab/reuse-tab.component.d.ts +21 -28
- package/reuse-tab/reuse-tab.service.d.ts +10 -12
- package/reuse-tab/reuse-tab.strategy.d.ts +1 -3
- package/se/se-container.component.d.ts +20 -21
- package/se/se.component.d.ts +17 -21
- package/se/se.module.d.ts +7 -7
- package/sg/sg-container.component.d.ts +4 -5
- package/sg/sg.component.d.ts +9 -12
- package/sg/sg.module.d.ts +4 -4
- package/st/st-export.d.ts +3 -4
- package/st/st-filter.component.d.ts +2 -3
- package/st/st-row.directive.d.ts +3 -4
- package/st/st-widget-host.directive.d.ts +3 -5
- package/st/st.component.d.ts +36 -40
- package/sv/sv-container.component.d.ts +19 -20
- package/sv/sv-value.component.d.ts +1 -1
- package/sv/sv.component.d.ts +13 -16
- package/sv/sv.module.d.ts +9 -9
- package/tag-select/tag-select.component.d.ts +11 -13
- package/tag-select/tag-select.module.d.ts +5 -5
- package/xlsx/xlsx.directive.d.ts +1 -3
- package/xlsx/xlsx.service.d.ts +4 -7
- package/zip/zip.service.d.ts +4 -7
package/fesm2022/cell.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cell.mjs","sources":["../../../../packages/abc/cell/cell.service.ts","../../../../packages/abc/cell/cell-host.directive.ts","../../../../packages/abc/cell/cell.component.ts","../../../../packages/abc/cell/cell.module.ts","../../../../packages/abc/cell/provide.ts","../../../../packages/abc/cell/cell.ts"],"sourcesContent":["import { Injectable, Type } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { map, Observable, of } from 'rxjs';\n\nimport { yn } from '@delon/theme';\nimport { AlainCellConfig, AlainConfigService } from '@delon/util/config';\nimport { formatDate } from '@delon/util/date-time';\nimport { CurrencyService, formatMask } from '@delon/util/format';\nimport { deepMerge } from '@delon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzI18nService } from 'ng-zorro-antd/i18n';\n\nimport type {\n CellFuValue,\n CellOptions,\n CellTextResult,\n CellTextUnit,\n CellType,\n CellWidget,\n CellWidgetFn\n} from './cell.types';\n\n@Injectable({ providedIn: 'root' })\nexport class CellService {\n private globalOptions!: AlainCellConfig;\n private widgets: { [key: string]: CellWidget } = {\n date: {\n type: 'fn',\n ref: (value, opt) => {\n return { text: formatDate(value as string, opt.date!.format!, this.nzI18n.getDateLocale()) };\n }\n },\n mega: {\n type: 'fn',\n ref: (value, opt) => {\n const res = this.currency.mega(value as number, opt.mega);\n return { text: res.value, unit: res.unitI18n };\n }\n },\n currency: {\n type: 'fn',\n ref: (value, opt) => {\n return { text: this.currency.format(value as number, opt.currency) };\n }\n },\n cny: {\n type: 'fn',\n ref: (value, opt) => {\n return { text: this.currency.cny(value as number, opt.cny) };\n }\n },\n boolean: {\n type: 'fn',\n ref: (value, opt) => {\n return { text: this.dom.bypassSecurityTrustHtml(yn(value as boolean, opt.boolean)) };\n }\n },\n img: {\n type: 'fn',\n ref: value => {\n return { text: Array.isArray(value) ? value : [value] };\n }\n }\n };\n\n constructor(\n configSrv: AlainConfigService,\n private nzI18n: NzI18nService,\n private currency: CurrencyService,\n private dom: DomSanitizer\n ) {\n this.globalOptions = configSrv.merge('cell', {\n date: { format: 'yyyy-MM-dd HH:mm:ss' },\n img: { size: 32 },\n default: { text: '-' }\n })!;\n }\n\n registerWidget(key: string, widget: Type<unknown>): void {\n this.widgets[key] = { type: 'widget', ref: widget };\n }\n\n getWidget(key: string): CellWidget | undefined {\n return this.widgets[key];\n }\n\n private genType(value: unknown, options: CellOptions): CellType {\n if (options.type != null) return options.type;\n\n const typeOf = typeof value;\n // When is timestamp\n if (typeOf === 'number' && /^[0-9]{13}$/g.test(value as string)) return 'date';\n if (value instanceof Date || options.date != null) return 'date';\n\n // Auto detection\n if (options.widget != null) return 'widget';\n else if (options.mega != null) return 'mega';\n else if (options.currency != null) return 'currency';\n else if (options.cny != null) return 'cny';\n else if (options.img != null) return 'img';\n else if (options.link != null) return 'link';\n else if (options.html != null) return 'html';\n else if (options.badge != null) return 'badge';\n else if (options.tag != null) return 'tag';\n else if (options.checkbox != null) return 'checkbox';\n else if (options.radio != null) return 'radio';\n else if (options.enum != null) return 'enum';\n else if (typeOf === 'number') return 'number';\n else if (typeOf === 'boolean' || options.boolean != null) return 'boolean';\n else return 'string';\n }\n\n fixOptions(options?: CellOptions): CellOptions {\n return deepMerge({}, this.globalOptions, options);\n }\n\n get(value: unknown, options?: CellOptions): Observable<CellTextResult> {\n const type = this.genType(value, { ...options });\n const opt = this.fixOptions(options);\n opt.type = type;\n const isSafeHtml =\n typeof value === 'object' &&\n typeof (value as NzSafeAny)?.getTypeName === 'function' &&\n (value as NzSafeAny)?.getTypeName() != null;\n\n let res: CellTextResult = {\n result:\n typeof value === 'object' && !isSafeHtml\n ? (value as CellTextUnit)\n : { text: value == null ? '' : isSafeHtml ? value : `${value}` },\n options: opt\n };\n\n const widget = this.widgets[type];\n if (widget?.type === 'fn') {\n res.result = (widget.ref as CellWidgetFn)(value, opt);\n }\n\n return (typeof value === 'function' ? (value as CellFuValue)(value, opt) : of(res.result)).pipe(\n map(text => {\n res.result = text;\n let dictData: { tooltip?: string } | undefined;\n switch (type) {\n case 'badge':\n dictData = (opt.badge?.data ?? {})[value as string];\n res.result = { color: 'default', ...dictData };\n break;\n case 'tag':\n dictData = (opt.tag?.data ?? {})[value as string];\n res.result = dictData as CellTextUnit;\n break;\n case 'enum':\n res.result = { text: (opt.enum ?? {})[value as string] };\n break;\n case 'html':\n res.safeHtml = opt.html?.safe;\n break;\n case 'string':\n if (isSafeHtml) res.safeHtml = 'safeHtml';\n break;\n }\n if ((type === 'badge' || type === 'tag') && dictData?.tooltip != null) {\n res.options.tooltip = dictData.tooltip;\n }\n if (opt.mask != null) {\n res.result.text = formatMask(res.result.text as string, opt.mask);\n }\n return res;\n })\n );\n }\n}\n","import { Directive, Input, OnInit, Type, ViewContainerRef } from '@angular/core';\n\nimport { warn } from '@delon/util/other';\n\nimport { CellService } from './cell.service';\nimport { CellWidgetData } from './cell.types';\n\n@Directive({\n selector: '[cell-widget-host]',\n standalone: true\n})\nexport class CellHostDirective implements OnInit {\n @Input() data!: CellWidgetData;\n\n constructor(\n private srv: CellService,\n private viewContainerRef: ViewContainerRef\n ) {}\n\n ngOnInit(): void {\n const widget = this.data.options!.widget!;\n const componentType = this.srv.getWidget(widget.key!)?.ref as Type<unknown>;\n if (componentType == null) {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n warn(`cell: No widget for type \"${widget.key}\"`);\n }\n return;\n }\n\n this.viewContainerRef.clear();\n const componentRef = this.viewContainerRef.createComponent(componentType);\n (componentRef.instance as { data: CellWidgetData }).data = this.data;\n }\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n Renderer2,\n SimpleChange,\n ViewEncapsulation\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport type { SafeValue } from '@angular/platform-browser';\nimport { Router } from '@angular/router';\nimport { Subscription } from 'rxjs';\n\nimport { updateHostClass } from '@delon/util/browser';\nimport { BooleanInput, InputBoolean } from '@delon/util/decorator';\nimport { WINDOW } from '@delon/util/token';\nimport { NzBadgeModule } from 'ng-zorro-antd/badge';\nimport { NzCheckboxModule } from 'ng-zorro-antd/checkbox';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzImage, NzImageService } from 'ng-zorro-antd/image';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { NzTagModule } from 'ng-zorro-antd/tag';\nimport { NzToolTipModule } from 'ng-zorro-antd/tooltip';\n\nimport { CellHostDirective } from './cell-host.directive';\nimport { CellService } from './cell.service';\nimport type { CellDefaultText, CellOptions, CellTextResult, CellValue, CellWidgetData } from './cell.types';\n\n@Component({\n selector: 'cell, [cell]',\n template: `\n <ng-template #text>\n @switch (safeOpt.type) {\n @case ('checkbox') {\n <label nz-checkbox [nzDisabled]=\"disabled\" [ngModel]=\"value\" (ngModelChange)=\"change($event)\">\n {{ safeOpt.checkbox?.label }}\n </label>\n }\n @case ('radio') {\n <label nz-radio [nzDisabled]=\"disabled\" [ngModel]=\"value\" (ngModelChange)=\"change($event)\">\n {{ safeOpt.radio?.label }}\n </label>\n }\n @case ('link') {\n <a (click)=\"_link($event)\" [attr.target]=\"safeOpt.link?.target\" [attr.title]=\"value\" [innerHTML]=\"_text\"></a>\n }\n @case ('tag') {\n <nz-tag [nzColor]=\"res?.result?.color\">\n <span [innerHTML]=\"_text\"></span>\n </nz-tag>\n }\n @case ('badge') {\n <nz-badge [nzStatus]=\"res?.result?.color\" nzText=\"{{ _text }}\" />\n }\n @case ('widget') {\n <ng-template cell-widget-host [data]=\"hostData\" />\n }\n @case ('img') {\n @for (i of $any(_text); track $index) {\n <img\n [attr.src]=\"i\"\n [attr.height]=\"safeOpt.img?.size\"\n [attr.width]=\"safeOpt.img?.size\"\n (click)=\"_showImg(i)\"\n class=\"img\"\n [class.point]=\"safeOpt.img?.big\"\n />\n }\n }\n @default {\n @if (isText) {\n <span [innerText]=\"_text\" [attr.title]=\"value\"></span>\n } @else {\n <span [innerHTML]=\"_text\" [attr.title]=\"value\"></span>\n }\n @if (_unit) {\n <span class=\"unit\">{{ _unit }}</span>\n }\n }\n }\n </ng-template>\n <ng-template #textWrap>\n @if (showDefault) {\n {{ safeOpt.default?.text }}\n } @else {\n @if (safeOpt.tooltip) {\n <span [nz-tooltip]=\"safeOpt.tooltip\">\n <ng-template [ngTemplateOutlet]=\"text\" />\n </span>\n } @else {\n <ng-template [ngTemplateOutlet]=\"text\" />\n }\n }\n </ng-template>\n @if (loading) {\n <span nz-icon nzType=\"loading\"></span>\n } @else {\n <ng-template [ngTemplateOutlet]=\"textWrap\" />\n }\n `,\n exportAs: 'cell',\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [\n FormsModule,\n NgTemplateOutlet,\n NzCheckboxModule,\n NzRadioModule,\n NzIconModule,\n NzTagModule,\n NzBadgeModule,\n NzToolTipModule,\n CellHostDirective\n ]\n})\nexport class CellComponent implements OnChanges, OnDestroy {\n static ngAcceptInputType_loading: BooleanInput;\n static ngAcceptInputType_disabled: BooleanInput;\n\n private destroy$?: Subscription;\n\n _text!: string | SafeValue | string[] | number;\n _unit?: string;\n res?: CellTextResult;\n showDefault = false;\n\n @Input() value?: CellValue;\n @Output() readonly valueChange = new EventEmitter<NzSafeAny>();\n @Input() options?: CellOptions;\n @Input() @InputBoolean() loading = false;\n @Input() @InputBoolean() disabled = false;\n\n get safeOpt(): CellOptions {\n return this.res?.options ?? {};\n }\n\n get isText(): boolean {\n return this.res?.safeHtml === 'text';\n }\n\n get hostData(): CellWidgetData {\n return {\n value: this.value,\n options: this.srv.fixOptions(this.options)\n };\n }\n\n constructor(\n private srv: CellService,\n private router: Router,\n private cdr: ChangeDetectorRef,\n private el: ElementRef<HTMLElement>,\n private renderer: Renderer2,\n private imgSrv: NzImageService,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n @Inject(WINDOW) private win: any\n ) {}\n\n private updateValue(): void {\n this.destroy$?.unsubscribe();\n this.destroy$ = this.srv.get(this.value, this.options).subscribe(res => {\n this.res = res;\n this.showDefault = this.value == (this.safeOpt.default as CellDefaultText).condition;\n this._text = res.result?.text ?? '';\n this._unit = res.result?.unit ?? this.safeOpt?.unit;\n this.cdr.detectChanges();\n this.setClass();\n });\n }\n\n private setClass(): void {\n const { el, renderer } = this;\n const { renderType, size, type } = this.safeOpt;\n updateHostClass(el.nativeElement, renderer, {\n [`cell`]: true,\n [`cell__${renderType}`]: renderType != null,\n [`cell__${size}`]: size != null,\n [`cell__has-unit`]: this._unit,\n [`cell__has-default`]: this.showDefault,\n [`cell__disabled`]: this.disabled\n });\n el.nativeElement.setAttribute('data-type', `${type}`);\n }\n\n ngOnChanges(changes: { [p in keyof CellComponent]?: SimpleChange }): void {\n // Do not call updateValue when only updating loading, disabled\n if (Object.keys(changes).every(k => ['loading', 'disabled'].includes(k))) {\n this.setClass();\n } else {\n this.updateValue();\n }\n }\n\n change(value: NzSafeAny): void {\n this.value = value;\n this.valueChange.emit(value);\n }\n\n _link(e: Event): void {\n e.preventDefault();\n e.stopPropagation();\n\n if (this.disabled) return;\n\n const link = this.safeOpt.link;\n const url = link?.url;\n if (url == null) return;\n\n if (/https?:\\/\\//g.test(url)) {\n (this.win as Window).open(url, link?.target);\n } else {\n this.router.navigateByUrl(url);\n }\n }\n\n _showImg(img: string): void {\n const config = this.safeOpt.img;\n if (config == null || config.big == null) return;\n\n let idx = -1;\n const list = (this._text as string[]).map((p, index) => {\n if (idx === -1 && p === img) idx = index;\n return typeof config.big === 'function' ? config.big(p) : p;\n });\n this.imgSrv\n .preview(\n list.map(p => ({ src: p }) as NzImage),\n config.previewOptions\n )\n .switchTo(idx);\n }\n\n ngOnDestroy(): void {\n this.destroy$?.unsubscribe();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { NzBadgeModule } from 'ng-zorro-antd/badge';\nimport { NzCheckboxModule } from 'ng-zorro-antd/checkbox';\nimport { NzImageModule } from 'ng-zorro-antd/experimental/image';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { NzTagModule } from 'ng-zorro-antd/tag';\nimport { NzToolTipModule } from 'ng-zorro-antd/tooltip';\n\nimport { CellHostDirective } from './cell-host.directive';\nimport { CellComponent } from './cell.component';\n\nconst COMPS = [CellComponent];\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n NzCheckboxModule,\n NzRadioModule,\n NzBadgeModule,\n NzTagModule,\n NzToolTipModule,\n NzIconModule,\n NzImageModule,\n ...COMPS,\n CellHostDirective\n ],\n exports: COMPS\n})\nexport class CellModule {}\n","import { ENVIRONMENT_INITIALIZER, EnvironmentProviders, inject, makeEnvironmentProviders } from '@angular/core';\n\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { CellService } from './cell.service';\n\nexport interface CellWidgetProvideConfig {\n KEY: string;\n type: NzSafeAny;\n}\n\n/**\n * Just only using Standalone widgets\n */\nexport function provideCellWidgets(...widgets: CellWidgetProvideConfig[]): EnvironmentProviders {\n return makeEnvironmentProviders([\n {\n provide: ENVIRONMENT_INITIALIZER,\n multi: true,\n useValue: () => {\n const srv = inject(CellService);\n widgets.forEach(widget => srv.registerWidget(widget.KEY, widget.type));\n }\n }\n ]);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.CellService","i4"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cell.mjs","sources":["../../../../packages/abc/cell/cell.service.ts","../../../../packages/abc/cell/cell-host.directive.ts","../../../../packages/abc/cell/cell.component.ts","../../../../packages/abc/cell/cell.module.ts","../../../../packages/abc/cell/provide.ts","../../../../packages/abc/cell/cell.ts"],"sourcesContent":["import { Injectable, Type, inject } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { map, Observable, of } from 'rxjs';\n\nimport { yn } from '@delon/theme';\nimport { AlainCellConfig, AlainConfigService } from '@delon/util/config';\nimport { formatDate } from '@delon/util/date-time';\nimport { CurrencyService, formatMask } from '@delon/util/format';\nimport { deepMerge } from '@delon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzI18nService } from 'ng-zorro-antd/i18n';\n\nimport type {\n CellFuValue,\n CellOptions,\n CellTextResult,\n CellTextUnit,\n CellType,\n CellWidget,\n CellWidgetFn\n} from './cell.types';\n\n@Injectable({ providedIn: 'root' })\nexport class CellService {\n private readonly nzI18n = inject(NzI18nService);\n private readonly currency = inject(CurrencyService);\n private readonly dom = inject(DomSanitizer);\n private globalOptions!: AlainCellConfig;\n private widgets: { [key: string]: CellWidget } = {\n date: {\n type: 'fn',\n ref: (value, opt) => {\n return { text: formatDate(value as string, opt.date!.format!, this.nzI18n.getDateLocale()) };\n }\n },\n mega: {\n type: 'fn',\n ref: (value, opt) => {\n const res = this.currency.mega(value as number, opt.mega);\n return { text: res.value, unit: res.unitI18n };\n }\n },\n currency: {\n type: 'fn',\n ref: (value, opt) => {\n return { text: this.currency.format(value as number, opt.currency) };\n }\n },\n cny: {\n type: 'fn',\n ref: (value, opt) => {\n return { text: this.currency.cny(value as number, opt.cny) };\n }\n },\n boolean: {\n type: 'fn',\n ref: (value, opt) => {\n return { text: this.dom.bypassSecurityTrustHtml(yn(value as boolean, opt.boolean)) };\n }\n },\n img: {\n type: 'fn',\n ref: value => {\n return { text: Array.isArray(value) ? value : [value] };\n }\n }\n };\n\n constructor(configSrv: AlainConfigService) {\n this.globalOptions = configSrv.merge('cell', {\n date: { format: 'yyyy-MM-dd HH:mm:ss' },\n img: { size: 32 },\n default: { text: '-' }\n })!;\n }\n\n registerWidget(key: string, widget: Type<unknown>): void {\n this.widgets[key] = { type: 'widget', ref: widget };\n }\n\n getWidget(key: string): CellWidget | undefined {\n return this.widgets[key];\n }\n\n private genType(value: unknown, options: CellOptions): CellType {\n if (options.type != null) return options.type;\n\n const typeOf = typeof value;\n // When is timestamp\n if (typeOf === 'number' && /^[0-9]{13}$/g.test(value as string)) return 'date';\n if (value instanceof Date || options.date != null) return 'date';\n\n // Auto detection\n if (options.widget != null) return 'widget';\n else if (options.mega != null) return 'mega';\n else if (options.currency != null) return 'currency';\n else if (options.cny != null) return 'cny';\n else if (options.img != null) return 'img';\n else if (options.link != null) return 'link';\n else if (options.html != null) return 'html';\n else if (options.badge != null) return 'badge';\n else if (options.tag != null) return 'tag';\n else if (options.checkbox != null) return 'checkbox';\n else if (options.radio != null) return 'radio';\n else if (options.enum != null) return 'enum';\n else if (typeOf === 'number') return 'number';\n else if (typeOf === 'boolean' || options.boolean != null) return 'boolean';\n else return 'string';\n }\n\n fixOptions(options?: CellOptions): CellOptions {\n return deepMerge({}, this.globalOptions, options);\n }\n\n get(value: unknown, options?: CellOptions): Observable<CellTextResult> {\n const type = this.genType(value, { ...options });\n const opt = this.fixOptions(options);\n opt.type = type;\n const isSafeHtml =\n typeof value === 'object' &&\n typeof (value as NzSafeAny)?.getTypeName === 'function' &&\n (value as NzSafeAny)?.getTypeName() != null;\n\n let res: CellTextResult = {\n result:\n typeof value === 'object' && !isSafeHtml\n ? (value as CellTextUnit)\n : { text: value == null ? '' : isSafeHtml ? value : `${value}` },\n options: opt\n };\n\n const widget = this.widgets[type];\n if (widget?.type === 'fn') {\n res.result = (widget.ref as CellWidgetFn)(value, opt);\n }\n\n return (typeof value === 'function' ? (value as CellFuValue)(value, opt) : of(res.result)).pipe(\n map(text => {\n res.result = text;\n let dictData: { tooltip?: string } | undefined;\n switch (type) {\n case 'badge':\n dictData = (opt.badge?.data ?? {})[value as string];\n res.result = { color: 'default', ...dictData };\n break;\n case 'tag':\n dictData = (opt.tag?.data ?? {})[value as string];\n res.result = dictData as CellTextUnit;\n break;\n case 'enum':\n res.result = { text: (opt.enum ?? {})[value as string] };\n break;\n case 'html':\n res.safeHtml = opt.html?.safe;\n break;\n case 'string':\n if (isSafeHtml) res.safeHtml = 'safeHtml';\n break;\n }\n if ((type === 'badge' || type === 'tag') && dictData?.tooltip != null) {\n res.options.tooltip = dictData.tooltip;\n }\n if (opt.mask != null) {\n res.result.text = formatMask(res.result.text as string, opt.mask);\n }\n return res;\n })\n );\n }\n}\n","import { Directive, Input, OnInit, Type, ViewContainerRef, inject } from '@angular/core';\n\nimport { warn } from '@delon/util/other';\n\nimport { CellService } from './cell.service';\nimport { CellWidgetData } from './cell.types';\n\n@Directive({\n selector: '[cell-widget-host]',\n standalone: true\n})\nexport class CellHostDirective implements OnInit {\n private readonly srv = inject(CellService);\n private readonly viewContainerRef = inject(ViewContainerRef);\n\n @Input() data!: CellWidgetData;\n\n ngOnInit(): void {\n const widget = this.data.options!.widget!;\n const componentType = this.srv.getWidget(widget.key!)?.ref as Type<unknown>;\n if (componentType == null) {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n warn(`cell: No widget for type \"${widget.key}\"`);\n }\n return;\n }\n\n this.viewContainerRef.clear();\n const componentRef = this.viewContainerRef.createComponent(componentType);\n (componentRef.instance as { data: CellWidgetData }).data = this.data;\n }\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n Renderer2,\n SimpleChange,\n ViewEncapsulation,\n booleanAttribute,\n inject\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport type { SafeValue } from '@angular/platform-browser';\nimport { Router } from '@angular/router';\nimport { Subscription } from 'rxjs';\n\nimport { updateHostClass } from '@delon/util/browser';\nimport { WINDOW } from '@delon/util/token';\nimport { NzBadgeComponent } from 'ng-zorro-antd/badge';\nimport { NzCheckboxComponent } from 'ng-zorro-antd/checkbox';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzIconDirective } from 'ng-zorro-antd/icon';\nimport { NzImage, NzImageModule, NzImageService } from 'ng-zorro-antd/image';\nimport { NzRadioComponent } from 'ng-zorro-antd/radio';\nimport { NzTagComponent } from 'ng-zorro-antd/tag';\nimport { NzTooltipDirective } from 'ng-zorro-antd/tooltip';\n\nimport { CellHostDirective } from './cell-host.directive';\nimport { CellService } from './cell.service';\nimport type { CellDefaultText, CellOptions, CellTextResult, CellValue, CellWidgetData } from './cell.types';\n\n@Component({\n selector: 'cell, [cell]',\n template: `\n <ng-template #text>\n @switch (safeOpt.type) {\n @case ('checkbox') {\n <label nz-checkbox [nzDisabled]=\"disabled\" [ngModel]=\"value\" (ngModelChange)=\"change($event)\">\n {{ safeOpt.checkbox?.label }}\n </label>\n }\n @case ('radio') {\n <label nz-radio [nzDisabled]=\"disabled\" [ngModel]=\"value\" (ngModelChange)=\"change($event)\">\n {{ safeOpt.radio?.label }}\n </label>\n }\n @case ('link') {\n <a (click)=\"_link($event)\" [attr.target]=\"safeOpt.link?.target\" [attr.title]=\"value\" [innerHTML]=\"_text\"></a>\n }\n @case ('tag') {\n <nz-tag [nzColor]=\"res?.result?.color\">\n <span [innerHTML]=\"_text\"></span>\n </nz-tag>\n }\n @case ('badge') {\n <nz-badge [nzStatus]=\"res?.result?.color\" nzText=\"{{ _text }}\" />\n }\n @case ('widget') {\n <ng-template cell-widget-host [data]=\"hostData\" />\n }\n @case ('img') {\n @for (i of $any(_text); track $index) {\n <img\n [attr.src]=\"i\"\n [attr.height]=\"safeOpt.img?.size\"\n [attr.width]=\"safeOpt.img?.size\"\n (click)=\"_showImg(i)\"\n class=\"img\"\n [class.point]=\"safeOpt.img?.big\"\n />\n }\n }\n @default {\n @if (isText) {\n <span [innerText]=\"_text\" [attr.title]=\"value\"></span>\n } @else {\n <span [innerHTML]=\"_text\" [attr.title]=\"value\"></span>\n }\n @if (_unit) {\n <span class=\"unit\">{{ _unit }}</span>\n }\n }\n }\n </ng-template>\n <ng-template #textWrap>\n @if (showDefault) {\n {{ safeOpt.default?.text }}\n } @else {\n @if (safeOpt.tooltip) {\n <span [nz-tooltip]=\"safeOpt.tooltip\">\n <ng-template [ngTemplateOutlet]=\"text\" />\n </span>\n } @else {\n <ng-template [ngTemplateOutlet]=\"text\" />\n }\n }\n </ng-template>\n @if (loading) {\n <span nz-icon nzType=\"loading\"></span>\n } @else {\n <ng-template [ngTemplateOutlet]=\"textWrap\" />\n }\n `,\n exportAs: 'cell',\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [\n FormsModule,\n NgTemplateOutlet,\n NzCheckboxComponent,\n NzRadioComponent,\n NzIconDirective,\n NzTagComponent,\n NzBadgeComponent,\n NzTooltipDirective,\n NzImageModule,\n CellHostDirective\n ]\n})\nexport class CellComponent implements OnChanges, OnDestroy {\n private readonly srv = inject(CellService);\n private readonly router = inject(Router);\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly renderer = inject(Renderer2);\n private readonly imgSrv = inject(NzImageService);\n private readonly win = inject(WINDOW);\n private readonly el: HTMLElement = inject(ElementRef).nativeElement;\n\n private destroy$?: Subscription;\n\n _text!: string | SafeValue | string[] | number;\n _unit?: string;\n res?: CellTextResult;\n showDefault = false;\n\n @Input() value?: CellValue;\n @Output() readonly valueChange = new EventEmitter<NzSafeAny>();\n @Input() options?: CellOptions;\n @Input({ transform: booleanAttribute }) loading = false;\n @Input({ transform: booleanAttribute }) disabled = false;\n\n get safeOpt(): CellOptions {\n return this.res?.options ?? {};\n }\n\n get isText(): boolean {\n return this.res?.safeHtml === 'text';\n }\n\n get hostData(): CellWidgetData {\n return {\n value: this.value,\n options: this.srv.fixOptions(this.options)\n };\n }\n\n private updateValue(): void {\n this.destroy$?.unsubscribe();\n this.destroy$ = this.srv.get(this.value, this.options).subscribe(res => {\n this.res = res;\n this.showDefault = this.value == (this.safeOpt.default as CellDefaultText).condition;\n this._text = res.result?.text ?? '';\n this._unit = res.result?.unit ?? this.safeOpt?.unit;\n this.cdr.detectChanges();\n this.setClass();\n });\n }\n\n private setClass(): void {\n const { el, renderer } = this;\n const { renderType, size, type } = this.safeOpt;\n updateHostClass(el, renderer, {\n [`cell`]: true,\n [`cell__${renderType}`]: renderType != null,\n [`cell__${size}`]: size != null,\n [`cell__has-unit`]: this._unit,\n [`cell__has-default`]: this.showDefault,\n [`cell__disabled`]: this.disabled\n });\n el.setAttribute('data-type', `${type}`);\n }\n\n ngOnChanges(changes: { [p in keyof CellComponent]?: SimpleChange }): void {\n // Do not call updateValue when only updating loading, disabled\n if (Object.keys(changes).every(k => ['loading', 'disabled'].includes(k))) {\n this.setClass();\n } else {\n this.updateValue();\n }\n }\n\n change(value: NzSafeAny): void {\n this.value = value;\n this.valueChange.emit(value);\n }\n\n _link(e: Event): void {\n e.preventDefault();\n e.stopPropagation();\n\n if (this.disabled) return;\n\n const link = this.safeOpt.link;\n const url = link?.url;\n if (url == null) return;\n\n if (/https?:\\/\\//g.test(url)) {\n this.win.open(url, link?.target);\n } else {\n this.router.navigateByUrl(url);\n }\n }\n\n _showImg(img: string): void {\n const config = this.safeOpt.img;\n if (config == null || config.big == null) return;\n\n let idx = -1;\n const list = (this._text as string[]).map((p, index) => {\n if (idx === -1 && p === img) idx = index;\n return typeof config.big === 'function' ? config.big(p) : p;\n });\n this.imgSrv\n .preview(\n list.map(p => ({ src: p }) as NzImage),\n config.previewOptions\n )\n .switchTo(idx);\n }\n\n ngOnDestroy(): void {\n this.destroy$?.unsubscribe();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { NzBadgeModule } from 'ng-zorro-antd/badge';\nimport { NzCheckboxModule } from 'ng-zorro-antd/checkbox';\nimport { NzImageModule } from 'ng-zorro-antd/experimental/image';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { NzTagModule } from 'ng-zorro-antd/tag';\nimport { NzToolTipModule } from 'ng-zorro-antd/tooltip';\n\nimport { CellHostDirective } from './cell-host.directive';\nimport { CellComponent } from './cell.component';\n\nconst COMPS = [CellComponent];\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n NzCheckboxModule,\n NzRadioModule,\n NzBadgeModule,\n NzTagModule,\n NzToolTipModule,\n NzIconModule,\n NzImageModule,\n ...COMPS,\n CellHostDirective\n ],\n exports: COMPS\n})\nexport class CellModule {}\n","import { ENVIRONMENT_INITIALIZER, EnvironmentProviders, inject, makeEnvironmentProviders } from '@angular/core';\n\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { CellService } from './cell.service';\n\nexport interface CellWidgetProvideConfig {\n KEY: string;\n type: NzSafeAny;\n}\n\n/**\n * Just only using Standalone widgets\n */\nexport function provideCellWidgets(...widgets: CellWidgetProvideConfig[]): EnvironmentProviders {\n return makeEnvironmentProviders([\n {\n provide: ENVIRONMENT_INITIALIZER,\n multi: true,\n useValue: () => {\n const srv = inject(CellService);\n widgets.forEach(widget => srv.registerWidget(widget.KEY, widget.type));\n }\n }\n ]);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","NzImageModule"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, EventEmitter, Directive, Output, NgModule } from '@angular/core';
|
|
2
|
+
import { Injectable, inject, ElementRef, NgZone, EventEmitter, Directive, Output, NgModule } from '@angular/core';
|
|
3
3
|
import { Observable, Subject } from 'rxjs';
|
|
4
4
|
|
|
5
5
|
class SizeObserver {
|
|
@@ -56,18 +56,18 @@ class SizeObserver {
|
|
|
56
56
|
this._observedElements.delete(element);
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0
|
|
60
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0
|
|
59
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: SizeObserver, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
60
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: SizeObserver, providedIn: 'root' }); }
|
|
61
61
|
}
|
|
62
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0
|
|
62
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: SizeObserver, decorators: [{
|
|
63
63
|
type: Injectable,
|
|
64
64
|
args: [{ providedIn: 'root' }]
|
|
65
65
|
}] });
|
|
66
66
|
class ObserverSize {
|
|
67
|
-
constructor(
|
|
68
|
-
this._obs =
|
|
69
|
-
this.el =
|
|
70
|
-
this.ngZone =
|
|
67
|
+
constructor() {
|
|
68
|
+
this._obs = inject(SizeObserver);
|
|
69
|
+
this.el = inject(ElementRef).nativeElement;
|
|
70
|
+
this.ngZone = inject(NgZone);
|
|
71
71
|
this._sub$ = null;
|
|
72
72
|
this.event = new EventEmitter();
|
|
73
73
|
}
|
|
@@ -78,7 +78,7 @@ class ObserverSize {
|
|
|
78
78
|
}
|
|
79
79
|
_sub() {
|
|
80
80
|
this._unsub();
|
|
81
|
-
const stream = this._obs.observe(this.el
|
|
81
|
+
const stream = this._obs.observe(this.el);
|
|
82
82
|
this.ngZone.runOutsideAngular(() => {
|
|
83
83
|
this._sub$ = stream.subscribe(this.event);
|
|
84
84
|
});
|
|
@@ -89,26 +89,26 @@ class ObserverSize {
|
|
|
89
89
|
ngOnDestroy() {
|
|
90
90
|
this._unsub();
|
|
91
91
|
}
|
|
92
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0
|
|
93
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0
|
|
92
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: ObserverSize, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
93
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.0", type: ObserverSize, isStandalone: true, selector: "[observeSize]", outputs: { event: "observeSize" }, exportAs: ["observeSize"], ngImport: i0 }); }
|
|
94
94
|
}
|
|
95
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0
|
|
95
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: ObserverSize, decorators: [{
|
|
96
96
|
type: Directive,
|
|
97
97
|
args: [{
|
|
98
98
|
selector: '[observeSize]',
|
|
99
99
|
exportAs: 'observeSize',
|
|
100
100
|
standalone: true
|
|
101
101
|
}]
|
|
102
|
-
}],
|
|
102
|
+
}], propDecorators: { event: [{
|
|
103
103
|
type: Output,
|
|
104
104
|
args: ['observeSize']
|
|
105
105
|
}] } });
|
|
106
106
|
class ObserversModule {
|
|
107
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0
|
|
108
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0
|
|
109
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0
|
|
107
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: ObserversModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
108
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.0", ngImport: i0, type: ObserversModule, imports: [ObserverSize], exports: [ObserverSize] }); }
|
|
109
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: ObserversModule }); }
|
|
110
110
|
}
|
|
111
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0
|
|
111
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: ObserversModule, decorators: [{
|
|
112
112
|
type: NgModule,
|
|
113
113
|
args: [{
|
|
114
114
|
exports: [ObserverSize],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chart-observer-size.mjs","sources":["../../../../packages/abc/observers/observer-size.ts","../../../../packages/abc/observers/chart-observer-size.ts"],"sourcesContent":["import {\n AfterViewInit,\n Directive,\n ElementRef,\n EventEmitter,\n Injectable,\n NgModule,\n NgZone,\n OnDestroy,\n Output\n} from '@angular/core';\nimport { Observable, Observer, Subject, Subscription } from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class SizeObserver implements OnDestroy {\n private _observedElements = new Map<\n Element,\n {\n observer: MutationObserver | null;\n readonly stream: Subject<MutationRecord[]>;\n count: number;\n }\n >();\n\n ngOnDestroy(): void {\n this._observedElements.forEach((_, element) => this._cleanupObserver(element));\n }\n\n observe(element: Element): Observable<MutationRecord[]> {\n return new Observable((observer: Observer<MutationRecord[]>) => {\n const stream = this._observeElement(element);\n const subscription = stream.subscribe(observer);\n\n return () => {\n subscription.unsubscribe();\n this._unobserveElement(element);\n };\n });\n }\n\n private _observeElement(element: Element): Subject<MutationRecord[]> {\n if (!this._observedElements.has(element)) {\n const stream = new Subject<MutationRecord[]>();\n let observer: MutationObserver | null = null;\n if (typeof MutationObserver !== 'undefined') {\n observer = new MutationObserver(mutations => stream.next(mutations));\n observer.observe(element, {\n attributes: true,\n attributeOldValue: true,\n attributeFilter: ['width', 'height', 'style']\n });\n }\n this._observedElements.set(element, { observer, stream, count: 1 });\n } else {\n this._observedElements.get(element)!.count++;\n }\n return this._observedElements.get(element)!.stream;\n }\n\n private _unobserveElement(element: Element): void {\n if (this._observedElements.has(element)) {\n this._observedElements.get(element)!.count--;\n if (!this._observedElements.get(element)!.count) {\n this._cleanupObserver(element);\n }\n }\n }\n\n private _cleanupObserver(element: Element): void {\n if (this._observedElements.has(element)) {\n const { observer, stream } = this._observedElements.get(element)!;\n if (observer) {\n observer.disconnect();\n }\n stream.complete();\n this._observedElements.delete(element);\n }\n }\n}\n\n@Directive({\n selector: '[observeSize]',\n exportAs: 'observeSize',\n standalone: true\n})\nexport class ObserverSize implements AfterViewInit, OnDestroy {\n private _sub$: Subscription | null = null;\n @Output('observeSize') readonly event = new EventEmitter<MutationRecord[]>();\n\n
|
|
1
|
+
{"version":3,"file":"chart-observer-size.mjs","sources":["../../../../packages/abc/observers/observer-size.ts","../../../../packages/abc/observers/chart-observer-size.ts"],"sourcesContent":["import {\n AfterViewInit,\n Directive,\n ElementRef,\n EventEmitter,\n Injectable,\n NgModule,\n NgZone,\n OnDestroy,\n Output,\n inject\n} from '@angular/core';\nimport { Observable, Observer, Subject, Subscription } from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class SizeObserver implements OnDestroy {\n private _observedElements = new Map<\n Element,\n {\n observer: MutationObserver | null;\n readonly stream: Subject<MutationRecord[]>;\n count: number;\n }\n >();\n\n ngOnDestroy(): void {\n this._observedElements.forEach((_, element) => this._cleanupObserver(element));\n }\n\n observe(element: Element): Observable<MutationRecord[]> {\n return new Observable((observer: Observer<MutationRecord[]>) => {\n const stream = this._observeElement(element);\n const subscription = stream.subscribe(observer);\n\n return () => {\n subscription.unsubscribe();\n this._unobserveElement(element);\n };\n });\n }\n\n private _observeElement(element: Element): Subject<MutationRecord[]> {\n if (!this._observedElements.has(element)) {\n const stream = new Subject<MutationRecord[]>();\n let observer: MutationObserver | null = null;\n if (typeof MutationObserver !== 'undefined') {\n observer = new MutationObserver(mutations => stream.next(mutations));\n observer.observe(element, {\n attributes: true,\n attributeOldValue: true,\n attributeFilter: ['width', 'height', 'style']\n });\n }\n this._observedElements.set(element, { observer, stream, count: 1 });\n } else {\n this._observedElements.get(element)!.count++;\n }\n return this._observedElements.get(element)!.stream;\n }\n\n private _unobserveElement(element: Element): void {\n if (this._observedElements.has(element)) {\n this._observedElements.get(element)!.count--;\n if (!this._observedElements.get(element)!.count) {\n this._cleanupObserver(element);\n }\n }\n }\n\n private _cleanupObserver(element: Element): void {\n if (this._observedElements.has(element)) {\n const { observer, stream } = this._observedElements.get(element)!;\n if (observer) {\n observer.disconnect();\n }\n stream.complete();\n this._observedElements.delete(element);\n }\n }\n}\n\n@Directive({\n selector: '[observeSize]',\n exportAs: 'observeSize',\n standalone: true\n})\nexport class ObserverSize implements AfterViewInit, OnDestroy {\n private readonly _obs = inject(SizeObserver);\n private readonly el: HTMLElement = inject(ElementRef).nativeElement;\n private readonly ngZone = inject(NgZone);\n\n private _sub$: Subscription | null = null;\n @Output('observeSize') readonly event = new EventEmitter<MutationRecord[]>();\n\n ngAfterViewInit(): void {\n if (!this._sub$) {\n this._sub();\n }\n }\n\n private _sub(): void {\n this._unsub();\n const stream = this._obs.observe(this.el);\n this.ngZone.runOutsideAngular(() => {\n this._sub$ = stream.subscribe(this.event);\n });\n }\n\n private _unsub(): void {\n this._sub$?.unsubscribe();\n }\n\n ngOnDestroy(): void {\n this._unsub();\n }\n}\n\n@NgModule({\n exports: [ObserverSize],\n imports: [ObserverSize]\n})\nexport class ObserversModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
package/fesm2022/count-down.mjs
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, ViewChild, Input, Output, NgModule } from '@angular/core';
|
|
3
3
|
import { addSeconds, format } from 'date-fns';
|
|
4
|
-
import
|
|
5
|
-
import { CountdownModule } from 'ngx-countdown';
|
|
4
|
+
import { CountdownComponent, CountdownModule } from 'ngx-countdown';
|
|
6
5
|
import { CommonModule } from '@angular/common';
|
|
7
6
|
|
|
8
7
|
class CountDownComponent {
|
|
@@ -21,12 +20,12 @@ class CountDownComponent {
|
|
|
21
20
|
handleEvent(e) {
|
|
22
21
|
this.event.emit(e);
|
|
23
22
|
}
|
|
24
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0
|
|
25
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0
|
|
23
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: CountDownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
24
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.0", type: CountDownComponent, isStandalone: true, selector: "count-down", inputs: { config: "config", target: "target" }, outputs: { event: "event" }, viewQueries: [{ propertyName: "instance", first: true, predicate: ["cd"], descendants: true }], exportAs: ["countDown"], ngImport: i0, template: `@if (config) {
|
|
26
25
|
<countdown #cd [config]="config" (event)="handleEvent($event)" />
|
|
27
|
-
}`, isInline: true, dependencies: [{ kind: "component", type:
|
|
26
|
+
}`, isInline: true, dependencies: [{ kind: "component", type: CountdownComponent, selector: "countdown", inputs: ["config", "render"], outputs: ["event"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
28
27
|
}
|
|
29
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: CountDownComponent, decorators: [{
|
|
30
29
|
type: Component,
|
|
31
30
|
args: [{
|
|
32
31
|
selector: 'count-down',
|
|
@@ -36,7 +35,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImpor
|
|
|
36
35
|
}`,
|
|
37
36
|
preserveWhitespaces: false,
|
|
38
37
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
39
|
-
encapsulation: ViewEncapsulation.None
|
|
38
|
+
encapsulation: ViewEncapsulation.None,
|
|
39
|
+
standalone: true,
|
|
40
|
+
imports: [CountdownComponent]
|
|
40
41
|
}]
|
|
41
42
|
}], propDecorators: { instance: [{
|
|
42
43
|
type: ViewChild,
|
|
@@ -51,15 +52,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImpor
|
|
|
51
52
|
|
|
52
53
|
const COMPONENTS = [CountDownComponent];
|
|
53
54
|
class CountDownModule {
|
|
54
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0
|
|
55
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0
|
|
56
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0
|
|
55
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: CountDownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
56
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.0", ngImport: i0, type: CountDownModule, imports: [CommonModule, CountdownModule, CountDownComponent], exports: [CountDownComponent] }); }
|
|
57
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: CountDownModule, imports: [CommonModule, CountdownModule, COMPONENTS] }); }
|
|
57
58
|
}
|
|
58
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: CountDownModule, decorators: [{
|
|
59
60
|
type: NgModule,
|
|
60
61
|
args: [{
|
|
61
|
-
imports: [CommonModule, CountdownModule],
|
|
62
|
-
declarations: COMPONENTS,
|
|
62
|
+
imports: [CommonModule, CountdownModule, ...COMPONENTS],
|
|
63
63
|
exports: COMPONENTS
|
|
64
64
|
}]
|
|
65
65
|
}] });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"count-down.mjs","sources":["../../../../packages/abc/count-down/count-down.component.ts","../../../../packages/abc/count-down/count-down.module.ts","../../../../packages/abc/count-down/count-down.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\n\nimport { addSeconds, format } from 'date-fns';\nimport { CountdownComponent, CountdownConfig, CountdownEvent } from 'ngx-countdown';\n\n@Component({\n selector: 'count-down',\n exportAs: 'countDown',\n template: `@if (config) {\n <countdown #cd [config]=\"config\" (event)=\"handleEvent($event)\" />\n }`,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class CountDownComponent {\n @ViewChild('cd', { static: false }) readonly instance!: CountdownComponent;\n\n @Input() config?: CountdownConfig;\n\n /**\n * 目标时间\n */\n @Input()\n set target(value: number | Date) {\n this.config = {\n format: `HH:mm:ss`,\n stopTime: typeof value === 'number' ? addSeconds(new Date(), value).valueOf() : +format(value, 't')\n };\n }\n\n @Output() readonly event = new EventEmitter<CountdownEvent>();\n\n handleEvent(e: CountdownEvent): void {\n this.event.emit(e);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { CountdownModule } from 'ngx-countdown';\n\nimport { CountDownComponent } from './count-down.component';\n\nconst COMPONENTS = [CountDownComponent];\n\n@NgModule({\n imports: [CommonModule, CountdownModule
|
|
1
|
+
{"version":3,"file":"count-down.mjs","sources":["../../../../packages/abc/count-down/count-down.component.ts","../../../../packages/abc/count-down/count-down.module.ts","../../../../packages/abc/count-down/count-down.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\n\nimport { addSeconds, format } from 'date-fns';\nimport { CountdownComponent, CountdownConfig, CountdownEvent } from 'ngx-countdown';\n\n@Component({\n selector: 'count-down',\n exportAs: 'countDown',\n template: `@if (config) {\n <countdown #cd [config]=\"config\" (event)=\"handleEvent($event)\" />\n }`,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [CountdownComponent]\n})\nexport class CountDownComponent {\n @ViewChild('cd', { static: false }) readonly instance!: CountdownComponent;\n\n @Input() config?: CountdownConfig;\n\n /**\n * 目标时间\n */\n @Input()\n set target(value: number | Date) {\n this.config = {\n format: `HH:mm:ss`,\n stopTime: typeof value === 'number' ? addSeconds(new Date(), value).valueOf() : +format(value, 't')\n };\n }\n\n @Output() readonly event = new EventEmitter<CountdownEvent>();\n\n handleEvent(e: CountdownEvent): void {\n this.event.emit(e);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { CountdownModule } from 'ngx-countdown';\n\nimport { CountDownComponent } from './count-down.component';\n\nconst COMPONENTS = [CountDownComponent];\n\n@NgModule({\n imports: [CommonModule, CountdownModule, ...COMPONENTS],\n exports: COMPONENTS\n})\nexport class CountDownModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
package/fesm2022/date-picker.mjs
CHANGED
|
@@ -1,40 +1,39 @@
|
|
|
1
|
-
import * as i1 from '@angular/common';
|
|
2
1
|
import { CommonModule } from '@angular/common';
|
|
3
2
|
import * as i0 from '@angular/core';
|
|
4
|
-
import { Component, ViewChild,
|
|
3
|
+
import { Component, ViewChild, inject, ViewContainerRef, EventEmitter, Directive, Input, Output, NgModule } from '@angular/core';
|
|
5
4
|
import { FormsModule } from '@angular/forms';
|
|
6
|
-
import
|
|
7
|
-
import {
|
|
5
|
+
import { NzRangePickerComponent, NzDatePickerModule } from 'ng-zorro-antd/date-picker';
|
|
6
|
+
import { DomSanitizer } from '@angular/platform-browser';
|
|
8
7
|
import { getTimeDistance, fixEndTimeOfRange } from '@delon/util/date-time';
|
|
9
8
|
import { deepMergeKey, assert } from '@delon/util/other';
|
|
10
|
-
import * as i1
|
|
11
|
-
import * as i2 from '@delon/util/config';
|
|
9
|
+
import * as i1 from '@delon/util/config';
|
|
12
10
|
|
|
13
11
|
class RangePickerShortcutTplComponent {
|
|
14
12
|
constructor() {
|
|
15
13
|
this.list = [];
|
|
16
14
|
}
|
|
17
15
|
click(_) { }
|
|
18
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0
|
|
19
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RangePickerShortcutTplComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
17
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.0", type: RangePickerShortcutTplComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "tpl", first: true, predicate: ["tpl"], descendants: true, static: true }], ngImport: i0, template: `
|
|
20
18
|
<ng-template #tpl>
|
|
21
19
|
@for (i of list; track $index) {
|
|
22
|
-
<a (click)="click(i)" [innerHTML]="i._text" [
|
|
20
|
+
<a (click)="click(i)" [innerHTML]="i._text" [class.ml-sm]="!$first"></a>
|
|
23
21
|
}
|
|
24
22
|
</ng-template>
|
|
25
|
-
`, isInline: true
|
|
23
|
+
`, isInline: true }); }
|
|
26
24
|
}
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RangePickerShortcutTplComponent, decorators: [{
|
|
28
26
|
type: Component,
|
|
29
27
|
args: [{
|
|
30
28
|
selector: '',
|
|
31
29
|
template: `
|
|
32
30
|
<ng-template #tpl>
|
|
33
31
|
@for (i of list; track $index) {
|
|
34
|
-
<a (click)="click(i)" [innerHTML]="i._text" [
|
|
32
|
+
<a (click)="click(i)" [innerHTML]="i._text" [class.ml-sm]="!$first"></a>
|
|
35
33
|
}
|
|
36
34
|
</ng-template>
|
|
37
|
-
|
|
35
|
+
`,
|
|
36
|
+
standalone: true
|
|
38
37
|
}]
|
|
39
38
|
}], propDecorators: { tpl: [{
|
|
40
39
|
type: ViewChild,
|
|
@@ -62,17 +61,17 @@ class RangePickerDirective {
|
|
|
62
61
|
get srv() {
|
|
63
62
|
return this.dp.datePickerService;
|
|
64
63
|
}
|
|
65
|
-
constructor(
|
|
66
|
-
this.dom =
|
|
67
|
-
this.
|
|
68
|
-
this.
|
|
64
|
+
constructor(configSrv) {
|
|
65
|
+
this.dom = inject(DomSanitizer);
|
|
66
|
+
this.vcr = inject(ViewContainerRef);
|
|
67
|
+
this.nativeComp = inject(NzRangePickerComponent, { host: true, optional: true });
|
|
69
68
|
this._shortcut = null;
|
|
70
69
|
this.shortcutFactory = null;
|
|
71
70
|
this.start = null;
|
|
72
71
|
this.end = null;
|
|
73
72
|
this.ngModelEndChange = new EventEmitter();
|
|
74
73
|
if (typeof ngDevMode === 'undefined' || ngDevMode) {
|
|
75
|
-
assert(!!nativeComp, `It should be attached to nz-range-picker component, for example: '<nz-range-picker [(ngModel)]="i.start" extend [(ngModelEnd)]="i.end" shortcut></nz-range-picker>'`);
|
|
74
|
+
assert(!!this.nativeComp, `It should be attached to nz-range-picker component, for example: '<nz-range-picker [(ngModel)]="i.start" extend [(ngModelEnd)]="i.end" shortcut></nz-range-picker>'`);
|
|
76
75
|
}
|
|
77
76
|
const cog = configSrv.merge('dataRange', {
|
|
78
77
|
nzFormat: 'yyyy-MM-dd',
|
|
@@ -182,20 +181,17 @@ class RangePickerDirective {
|
|
|
182
181
|
ngOnDestroy() {
|
|
183
182
|
this.destoryShortcut();
|
|
184
183
|
}
|
|
185
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0
|
|
186
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0
|
|
184
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RangePickerDirective, deps: [{ token: i1.AlainConfigService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
185
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.0", type: RangePickerDirective, isStandalone: true, selector: "nz-range-picker[extend]", inputs: { shortcut: "shortcut", ngModelEnd: "ngModelEnd" }, outputs: { ngModelEndChange: "ngModelEndChange" }, exportAs: ["extendRangePicker"], ngImport: i0 }); }
|
|
187
186
|
}
|
|
188
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0
|
|
187
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: RangePickerDirective, decorators: [{
|
|
189
188
|
type: Directive,
|
|
190
189
|
args: [{
|
|
191
190
|
selector: 'nz-range-picker[extend]',
|
|
192
|
-
exportAs: 'extendRangePicker'
|
|
191
|
+
exportAs: 'extendRangePicker',
|
|
192
|
+
standalone: true
|
|
193
193
|
}]
|
|
194
|
-
}], ctorParameters: () => [{ type: i1
|
|
195
|
-
type: Host
|
|
196
|
-
}, {
|
|
197
|
-
type: Optional
|
|
198
|
-
}] }, { type: i0.ViewContainerRef }], propDecorators: { shortcut: [{
|
|
194
|
+
}], ctorParameters: () => [{ type: i1.AlainConfigService }], propDecorators: { shortcut: [{
|
|
199
195
|
type: Input
|
|
200
196
|
}], ngModelEnd: [{
|
|
201
197
|
type: Input,
|
|
@@ -206,15 +202,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImpor
|
|
|
206
202
|
|
|
207
203
|
const COMPONENTS = [RangePickerDirective, RangePickerShortcutTplComponent];
|
|
208
204
|
class DatePickerModule {
|
|
209
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0
|
|
210
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0
|
|
211
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0
|
|
205
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: DatePickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
206
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.0", ngImport: i0, type: DatePickerModule, imports: [CommonModule, FormsModule, NzDatePickerModule, RangePickerDirective, RangePickerShortcutTplComponent], exports: [RangePickerDirective, RangePickerShortcutTplComponent] }); }
|
|
207
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: DatePickerModule, imports: [CommonModule, FormsModule, NzDatePickerModule] }); }
|
|
212
208
|
}
|
|
213
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0
|
|
209
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: DatePickerModule, decorators: [{
|
|
214
210
|
type: NgModule,
|
|
215
211
|
args: [{
|
|
216
|
-
imports: [CommonModule, FormsModule, NzDatePickerModule],
|
|
217
|
-
declarations: COMPONENTS,
|
|
212
|
+
imports: [CommonModule, FormsModule, NzDatePickerModule, ...COMPONENTS],
|
|
218
213
|
exports: COMPONENTS
|
|
219
214
|
}]
|
|
220
215
|
}] });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date-picker.mjs","sources":["../../../../packages/abc/date-picker/range-shortcut.component.ts","../../../../packages/abc/date-picker/range.directive.ts","../../../../packages/abc/date-picker/date-picker.module.ts","../../../../packages/abc/date-picker/date-picker.ts"],"sourcesContent":["import { Component, TemplateRef, ViewChild } from '@angular/core';\n\nimport { AlainDateRangePickerShortcutItem } from '@delon/util/config';\n\n@Component({\n selector: '',\n template: `\n <ng-template #tpl>\n @for (i of list; track $index) {\n <a (click)=\"click(i)\" [innerHTML]=\"i._text\" [ngClass]=\"{ 'ml-sm': !$first }\"></a>\n }\n </ng-template>\n `\n})\nexport class RangePickerShortcutTplComponent {\n @ViewChild('tpl', { static: true })\n tpl!: TemplateRef<void>;\n\n list: AlainDateRangePickerShortcutItem[] = [];\n\n click(_: AlainDateRangePickerShortcutItem): void {}\n}\n","import {\n AfterViewInit,\n ComponentRef,\n Directive,\n EventEmitter,\n Host,\n Input,\n OnDestroy,\n Optional,\n Output,\n TemplateRef,\n ViewContainerRef\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { AlainConfigService, AlainDateRangePickerShortcut, AlainDateRangePickerShortcutItem } from '@delon/util/config';\nimport { fixEndTimeOfRange, getTimeDistance } from '@delon/util/date-time';\nimport { assert, deepMergeKey } from '@delon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzDatePickerComponent, NzRangePickerComponent } from 'ng-zorro-antd/date-picker';\nimport { DatePickerService } from 'ng-zorro-antd/date-picker/date-picker.service';\n\nimport { RangePickerShortcutTplComponent } from './range-shortcut.component';\n\n@Directive({\n selector: 'nz-range-picker[extend]',\n exportAs: 'extendRangePicker'\n})\nexport class RangePickerDirective implements OnDestroy, AfterViewInit {\n static ngAcceptInputType_shortcut: AlainDateRangePickerShortcut | string | null;\n\n private defaultShortcuts: AlainDateRangePickerShortcut;\n private _shortcut: AlainDateRangePickerShortcut | null = null;\n private shortcutFactory: ComponentRef<RangePickerShortcutTplComponent> | null = null;\n start: Date | null = null;\n end: Date | null = null;\n\n @Input()\n set shortcut(val: AlainDateRangePickerShortcut | null) {\n const item = deepMergeKey(\n { list: [] },\n true,\n this.defaultShortcuts,\n val == null ? {} : val\n ) as AlainDateRangePickerShortcut;\n if (typeof val !== 'object') {\n item.enabled = val !== false;\n }\n (item.list || []).forEach(i => {\n i._text = this.dom.bypassSecurityTrustHtml(i.text);\n });\n this._shortcut = item;\n this.refreshShortcut();\n }\n get shortcut(): AlainDateRangePickerShortcut | null {\n return this._shortcut;\n }\n @Input({ required: true }) ngModelEnd: NzSafeAny;\n @Output() readonly ngModelEndChange = new EventEmitter<NzSafeAny>();\n\n private get dp(): NzDatePickerComponent {\n return this.nativeComp.datePicker;\n }\n\n private get srv(): DatePickerService {\n return this.dp.datePickerService;\n }\n\n constructor(\n private dom: DomSanitizer,\n configSrv: AlainConfigService,\n @Host() @Optional() private nativeComp: NzRangePickerComponent,\n private vcr: ViewContainerRef\n ) {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n assert(\n !!nativeComp,\n `It should be attached to nz-range-picker component, for example: '<nz-range-picker [(ngModel)]=\"i.start\" extend [(ngModelEnd)]=\"i.end\" shortcut></nz-range-picker>'`\n );\n }\n const cog = configSrv.merge('dataRange', {\n nzFormat: 'yyyy-MM-dd',\n nzAllowClear: true,\n nzAutoFocus: false,\n nzPopupStyle: { position: 'relative' },\n nzShowToday: true,\n shortcuts: {\n enabled: false,\n closed: true,\n list: [\n {\n text: '今天',\n fn: () => getTimeDistance('today')\n },\n {\n text: '昨天',\n fn: () => getTimeDistance('yesterday')\n },\n {\n text: '近3天',\n fn: () => getTimeDistance(-2)\n },\n {\n text: '近7天',\n fn: () => getTimeDistance(-6)\n },\n {\n text: '本周',\n fn: () => getTimeDistance('week')\n },\n {\n text: '本月',\n fn: () => getTimeDistance('month')\n },\n {\n text: '全年',\n fn: () => getTimeDistance('year')\n }\n ]\n }\n })!;\n this.defaultShortcuts = { ...cog.shortcuts } as AlainDateRangePickerShortcut;\n Object.assign(this, cog);\n }\n\n private cd(): void {\n (this.dp as NzSafeAny).cdr.markForCheck();\n }\n\n private overrideNative(): void {\n const dp = this.dp;\n dp.writeValue = (value: Date) => {\n const dates = (value && this.ngModelEnd ? [value, this.ngModelEnd] : []).filter(w => !!w);\n this.srv.setValue(this.srv.makeValue(dates));\n this.start = dates.length > 0 ? dates[0] : null;\n this.end = dates.length > 0 ? dates[1] : null;\n this.cd();\n };\n\n const oldOnChangeFn = dp.onChangeFn;\n dp.onChangeFn = (list: Array<Date | null>) => {\n let start: Date | null = null;\n let end: Date | null = null;\n if (list.length > 0 && list.filter(w => w != null).length === 2) {\n [start, end] = fixEndTimeOfRange([list[0]!, list[1]!]);\n }\n this.start = start;\n this.end = end;\n oldOnChangeFn(start);\n this.ngModelEnd = end;\n this.ngModelEndChange.emit(end);\n };\n }\n\n private refreshShortcut(): void {\n if (!this._shortcut) {\n return;\n }\n const { enabled, list } = this._shortcut;\n let extraFooter: TemplateRef<NzSafeAny> | undefined;\n if (!this.nativeComp || !enabled) {\n extraFooter = undefined;\n } else {\n if (!this.shortcutFactory) {\n this.shortcutFactory = this.vcr.createComponent(RangePickerShortcutTplComponent);\n }\n const { instance } = this.shortcutFactory;\n instance.list = list!;\n instance.click = (item: AlainDateRangePickerShortcutItem) => {\n const res = item.fn([this.start, this.end]);\n this.srv.setValue(this.srv.makeValue(res as Date[]));\n this.dp.onChangeFn(res);\n this.dp.close();\n };\n extraFooter = instance.tpl;\n }\n this.nativeComp.datePicker.extraFooter = extraFooter;\n Promise.resolve().then(() => this.cd());\n }\n\n ngAfterViewInit(): void {\n this.overrideNative();\n this.refreshShortcut();\n }\n\n private destoryShortcut(): void {\n if (this.shortcutFactory != null) {\n this.shortcutFactory.destroy();\n }\n }\n\n ngOnDestroy(): void {\n this.destoryShortcut();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { NzDatePickerModule } from 'ng-zorro-antd/date-picker';\n\nimport { RangePickerShortcutTplComponent } from './range-shortcut.component';\nimport { RangePickerDirective } from './range.directive';\n\nconst COMPONENTS = [RangePickerDirective, RangePickerShortcutTplComponent];\n\n@NgModule({\n imports: [CommonModule, FormsModule, NzDatePickerModule],\n declarations: COMPONENTS,\n exports: COMPONENTS\n})\nexport class DatePickerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"date-picker.mjs","sources":["../../../../packages/abc/date-picker/range-shortcut.component.ts","../../../../packages/abc/date-picker/range.directive.ts","../../../../packages/abc/date-picker/date-picker.module.ts","../../../../packages/abc/date-picker/date-picker.ts"],"sourcesContent":["import { Component, TemplateRef, ViewChild } from '@angular/core';\n\nimport { AlainDateRangePickerShortcutItem } from '@delon/util/config';\n\n@Component({\n selector: '',\n template: `\n <ng-template #tpl>\n @for (i of list; track $index) {\n <a (click)=\"click(i)\" [innerHTML]=\"i._text\" [class.ml-sm]=\"!$first\"></a>\n }\n </ng-template>\n `,\n standalone: true\n})\nexport class RangePickerShortcutTplComponent {\n @ViewChild('tpl', { static: true })\n readonly tpl!: TemplateRef<void>;\n\n list: AlainDateRangePickerShortcutItem[] = [];\n\n click(_: AlainDateRangePickerShortcutItem): void {}\n}\n","import {\n AfterViewInit,\n ComponentRef,\n Directive,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n TemplateRef,\n ViewContainerRef,\n inject\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { AlainConfigService, AlainDateRangePickerShortcut, AlainDateRangePickerShortcutItem } from '@delon/util/config';\nimport { fixEndTimeOfRange, getTimeDistance } from '@delon/util/date-time';\nimport { assert, deepMergeKey } from '@delon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzDatePickerComponent, NzRangePickerComponent } from 'ng-zorro-antd/date-picker';\nimport { DatePickerService } from 'ng-zorro-antd/date-picker/date-picker.service';\n\nimport { RangePickerShortcutTplComponent } from './range-shortcut.component';\n\n@Directive({\n selector: 'nz-range-picker[extend]',\n exportAs: 'extendRangePicker',\n standalone: true\n})\nexport class RangePickerDirective implements OnDestroy, AfterViewInit {\n static ngAcceptInputType_shortcut: AlainDateRangePickerShortcut | string | null;\n\n private readonly dom = inject(DomSanitizer);\n private readonly vcr = inject(ViewContainerRef);\n private readonly nativeComp = inject(NzRangePickerComponent, { host: true, optional: true });\n\n private defaultShortcuts: AlainDateRangePickerShortcut;\n private _shortcut: AlainDateRangePickerShortcut | null = null;\n private shortcutFactory: ComponentRef<RangePickerShortcutTplComponent> | null = null;\n start: Date | null = null;\n end: Date | null = null;\n\n @Input()\n set shortcut(val: AlainDateRangePickerShortcut | null) {\n const item = deepMergeKey(\n { list: [] },\n true,\n this.defaultShortcuts,\n val == null ? {} : val\n ) as AlainDateRangePickerShortcut;\n if (typeof val !== 'object') {\n item.enabled = val !== false;\n }\n (item.list || []).forEach(i => {\n i._text = this.dom.bypassSecurityTrustHtml(i.text);\n });\n this._shortcut = item;\n this.refreshShortcut();\n }\n get shortcut(): AlainDateRangePickerShortcut | null {\n return this._shortcut;\n }\n @Input({ required: true }) ngModelEnd: NzSafeAny;\n @Output() readonly ngModelEndChange = new EventEmitter<NzSafeAny>();\n\n private get dp(): NzDatePickerComponent {\n return this.nativeComp!.datePicker;\n }\n\n private get srv(): DatePickerService {\n return this.dp.datePickerService;\n }\n\n constructor(configSrv: AlainConfigService) {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n assert(\n !!this.nativeComp,\n `It should be attached to nz-range-picker component, for example: '<nz-range-picker [(ngModel)]=\"i.start\" extend [(ngModelEnd)]=\"i.end\" shortcut></nz-range-picker>'`\n );\n }\n const cog = configSrv.merge('dataRange', {\n nzFormat: 'yyyy-MM-dd',\n nzAllowClear: true,\n nzAutoFocus: false,\n nzPopupStyle: { position: 'relative' },\n nzShowToday: true,\n shortcuts: {\n enabled: false,\n closed: true,\n list: [\n {\n text: '今天',\n fn: () => getTimeDistance('today')\n },\n {\n text: '昨天',\n fn: () => getTimeDistance('yesterday')\n },\n {\n text: '近3天',\n fn: () => getTimeDistance(-2)\n },\n {\n text: '近7天',\n fn: () => getTimeDistance(-6)\n },\n {\n text: '本周',\n fn: () => getTimeDistance('week')\n },\n {\n text: '本月',\n fn: () => getTimeDistance('month')\n },\n {\n text: '全年',\n fn: () => getTimeDistance('year')\n }\n ]\n }\n })!;\n this.defaultShortcuts = { ...cog.shortcuts } as AlainDateRangePickerShortcut;\n Object.assign(this, cog);\n }\n\n private cd(): void {\n (this.dp as NzSafeAny).cdr.markForCheck();\n }\n\n private overrideNative(): void {\n const dp = this.dp;\n dp.writeValue = (value: Date) => {\n const dates = (value && this.ngModelEnd ? [value, this.ngModelEnd] : []).filter(w => !!w);\n this.srv.setValue(this.srv.makeValue(dates));\n this.start = dates.length > 0 ? dates[0] : null;\n this.end = dates.length > 0 ? dates[1] : null;\n this.cd();\n };\n\n const oldOnChangeFn = dp.onChangeFn;\n dp.onChangeFn = (list: Array<Date | null>) => {\n let start: Date | null = null;\n let end: Date | null = null;\n if (list.length > 0 && list.filter(w => w != null).length === 2) {\n [start, end] = fixEndTimeOfRange([list[0]!, list[1]!]);\n }\n this.start = start;\n this.end = end;\n oldOnChangeFn(start);\n this.ngModelEnd = end;\n this.ngModelEndChange.emit(end);\n };\n }\n\n private refreshShortcut(): void {\n if (!this._shortcut) {\n return;\n }\n const { enabled, list } = this._shortcut;\n let extraFooter: TemplateRef<NzSafeAny> | undefined;\n if (!this.nativeComp || !enabled) {\n extraFooter = undefined;\n } else {\n if (!this.shortcutFactory) {\n this.shortcutFactory = this.vcr.createComponent(RangePickerShortcutTplComponent);\n }\n const { instance } = this.shortcutFactory;\n instance.list = list!;\n instance.click = (item: AlainDateRangePickerShortcutItem) => {\n const res = item.fn([this.start, this.end]);\n this.srv.setValue(this.srv.makeValue(res as Date[]));\n this.dp.onChangeFn(res);\n this.dp.close();\n };\n extraFooter = instance.tpl;\n }\n this.nativeComp!.datePicker.extraFooter = extraFooter;\n Promise.resolve().then(() => this.cd());\n }\n\n ngAfterViewInit(): void {\n this.overrideNative();\n this.refreshShortcut();\n }\n\n private destoryShortcut(): void {\n if (this.shortcutFactory != null) {\n this.shortcutFactory.destroy();\n }\n }\n\n ngOnDestroy(): void {\n this.destoryShortcut();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { NzDatePickerModule } from 'ng-zorro-antd/date-picker';\n\nimport { RangePickerShortcutTplComponent } from './range-shortcut.component';\nimport { RangePickerDirective } from './range.directive';\n\nconst COMPONENTS = [RangePickerDirective, RangePickerShortcutTplComponent];\n\n@NgModule({\n imports: [CommonModule, FormsModule, NzDatePickerModule, ...COMPONENTS],\n exports: COMPONENTS\n})\nexport class DatePickerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;;;;;;MAea,+BAA+B,CAAA;AAX5C,IAAA,WAAA,GAAA;QAeE,IAAI,CAAA,IAAA,GAAuC,EAAE,CAAC;AAG/C,KAAA;IADC,KAAK,CAAC,CAAmC,EAAA,GAAU;8GANxC,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA/B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,+BAA+B,EAThC,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,KAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,KAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;AAMT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAGU,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAX3C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,EAAE;AACZ,oBAAA,QAAQ,EAAE,CAAA;;;;;;AAMT,EAAA,CAAA;AACD,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAA;8BAGU,GAAG,EAAA,CAAA;sBADX,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;;;MCYvB,oBAAoB,CAAA;IAa/B,IACI,QAAQ,CAAC,GAAwC,EAAA;AACnD,QAAA,MAAM,IAAI,GAAG,YAAY,CACvB,EAAE,IAAI,EAAE,EAAE,EAAE,EACZ,IAAI,EACJ,IAAI,CAAC,gBAAgB,EACrB,GAAG,IAAI,IAAI,GAAG,EAAE,GAAG,GAAG,CACS,CAAC;AAClC,QAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;AAC3B,YAAA,IAAI,CAAC,OAAO,GAAG,GAAG,KAAK,KAAK,CAAC;SAC9B;QACD,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC,IAAG;AAC5B,YAAA,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACrD,SAAC,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;AACD,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAID,IAAA,IAAY,EAAE,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,UAAW,CAAC,UAAU,CAAC;KACpC;AAED,IAAA,IAAY,GAAG,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC;KAClC;AAED,IAAA,WAAA,CAAY,SAA6B,EAAA;AAzCxB,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;AAC3B,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAC/B,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAGrF,IAAS,CAAA,SAAA,GAAwC,IAAI,CAAC;QACtD,IAAe,CAAA,eAAA,GAAyD,IAAI,CAAC;QACrF,IAAK,CAAA,KAAA,GAAgB,IAAI,CAAC;QAC1B,IAAG,CAAA,GAAA,GAAgB,IAAI,CAAC;AAuBL,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,YAAY,EAAa,CAAC;AAWlE,QAAA,IAAI,OAAO,SAAS,KAAK,WAAW,IAAI,SAAS,EAAE;YACjD,MAAM,CACJ,CAAC,CAAC,IAAI,CAAC,UAAU,EACjB,CAAqK,mKAAA,CAAA,CACtK,CAAC;SACH;AACD,QAAA,MAAM,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,WAAW,EAAE;AACvC,YAAA,QAAQ,EAAE,YAAY;AACtB,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,WAAW,EAAE,KAAK;AAClB,YAAA,YAAY,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE;AACtC,YAAA,WAAW,EAAE,IAAI;AACjB,YAAA,SAAS,EAAE;AACT,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,MAAM,EAAE,IAAI;AACZ,gBAAA,IAAI,EAAE;AACJ,oBAAA;AACE,wBAAA,IAAI,EAAE,IAAI;AACV,wBAAA,EAAE,EAAE,MAAM,eAAe,CAAC,OAAO,CAAC;AACnC,qBAAA;AACD,oBAAA;AACE,wBAAA,IAAI,EAAE,IAAI;AACV,wBAAA,EAAE,EAAE,MAAM,eAAe,CAAC,WAAW,CAAC;AACvC,qBAAA;AACD,oBAAA;AACE,wBAAA,IAAI,EAAE,KAAK;wBACX,EAAE,EAAE,MAAM,eAAe,CAAC,CAAC,CAAC,CAAC;AAC9B,qBAAA;AACD,oBAAA;AACE,wBAAA,IAAI,EAAE,KAAK;wBACX,EAAE,EAAE,MAAM,eAAe,CAAC,CAAC,CAAC,CAAC;AAC9B,qBAAA;AACD,oBAAA;AACE,wBAAA,IAAI,EAAE,IAAI;AACV,wBAAA,EAAE,EAAE,MAAM,eAAe,CAAC,MAAM,CAAC;AAClC,qBAAA;AACD,oBAAA;AACE,wBAAA,IAAI,EAAE,IAAI;AACV,wBAAA,EAAE,EAAE,MAAM,eAAe,CAAC,OAAO,CAAC;AACnC,qBAAA;AACD,oBAAA;AACE,wBAAA,IAAI,EAAE,IAAI;AACV,wBAAA,EAAE,EAAE,MAAM,eAAe,CAAC,MAAM,CAAC;AAClC,qBAAA;AACF,iBAAA;AACF,aAAA;AACF,SAAA,CAAE,CAAC;QACJ,IAAI,CAAC,gBAAgB,GAAG,EAAE,GAAG,GAAG,CAAC,SAAS,EAAkC,CAAC;AAC7E,QAAA,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;KAC1B;IAEO,EAAE,GAAA;AACP,QAAA,IAAI,CAAC,EAAgB,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;KAC3C;IAEO,cAAc,GAAA;AACpB,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;AACnB,QAAA,EAAE,CAAC,UAAU,GAAG,CAAC,KAAW,KAAI;AAC9B,YAAA,MAAM,KAAK,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1F,YAAA,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;AAC7C,YAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;AAChD,YAAA,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YAC9C,IAAI,CAAC,EAAE,EAAE,CAAC;AACZ,SAAC,CAAC;AAEF,QAAA,MAAM,aAAa,GAAG,EAAE,CAAC,UAAU,CAAC;AACpC,QAAA,EAAE,CAAC,UAAU,GAAG,CAAC,IAAwB,KAAI;YAC3C,IAAI,KAAK,GAAgB,IAAI,CAAC;YAC9B,IAAI,GAAG,GAAgB,IAAI,CAAC;YAC5B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;AAC/D,gBAAA,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC;aACxD;AACD,YAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AACnB,YAAA,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;YACf,aAAa,CAAC,KAAK,CAAC,CAAC;AACrB,YAAA,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;AACtB,YAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClC,SAAC,CAAC;KACH;IAEO,eAAe,GAAA;AACrB,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB,OAAO;SACR;QACD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;AACzC,QAAA,IAAI,WAA+C,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,OAAO,EAAE;YAChC,WAAW,GAAG,SAAS,CAAC;SACzB;aAAM;AACL,YAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;gBACzB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,+BAA+B,CAAC,CAAC;aAClF;AACD,YAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC;AAC1C,YAAA,QAAQ,CAAC,IAAI,GAAG,IAAK,CAAC;AACtB,YAAA,QAAQ,CAAC,KAAK,GAAG,CAAC,IAAsC,KAAI;AAC1D,gBAAA,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC5C,gBAAA,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAa,CAAC,CAAC,CAAC;AACrD,gBAAA,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AACxB,gBAAA,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;AAClB,aAAC,CAAC;AACF,YAAA,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC;SAC5B;QACD,IAAI,CAAC,UAAW,CAAC,UAAU,CAAC,WAAW,GAAG,WAAW,CAAC;AACtD,QAAA,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;KACzC;IAED,eAAe,GAAA;QACb,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;IAEO,eAAe,GAAA;AACrB,QAAA,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,EAAE;AAChC,YAAA,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;SAChC;KACF;IAED,WAAW,GAAA;QACT,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;8GApKU,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,OAAA,EAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,QAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,yBAAyB;AACnC,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAA;uFAeK,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAoBqB,UAAU,EAAA,CAAA;sBAApC,KAAK;uBAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;gBACN,gBAAgB,EAAA,CAAA;sBAAlC,MAAM;;;ACrDT,MAAM,UAAU,GAAG,CAAC,oBAAoB,EAAE,+BAA+B,CAAC,CAAC;MAM9D,gBAAgB,CAAA;8GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,EAHjB,OAAA,EAAA,CAAA,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAHrC,oBAAoB,EAAE,+BAA+B,CAArD,EAAA,OAAA,EAAA,CAAA,oBAAoB,EAAE,+BAA+B,CAAA,EAAA,CAAA,CAAA,EAAA;AAM5D,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,EAHjB,OAAA,EAAA,CAAA,YAAY,EAAE,WAAW,EAAE,kBAAkB,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAG5C,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAJ5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,GAAG,UAAU,CAAC;AACvE,oBAAA,OAAO,EAAE,UAAU;AACpB,iBAAA,CAAA;;;ACdD;;AAEG;;;;"}
|