@delon/abc 13.0.0 → 13.2.1

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.
Files changed (182) hide show
  1. package/README.md +1 -1
  2. package/auto-focus/auto-focus.directive.d.ts +3 -1
  3. package/ellipsis/ellipsis.component.d.ts +1 -0
  4. package/error-collect/error-collect.component.d.ts +4 -2
  5. package/esm2020/auto-focus/auto-focus.directive.mjs +9 -7
  6. package/esm2020/auto-focus/auto-focus.module.mjs +4 -4
  7. package/esm2020/avatar-list/avatar-list-item.component.mjs +3 -3
  8. package/esm2020/avatar-list/avatar-list.component.mjs +3 -3
  9. package/esm2020/avatar-list/avatar-list.module.mjs +4 -4
  10. package/esm2020/count-down/count-down.component.mjs +3 -3
  11. package/esm2020/count-down/count-down.module.mjs +4 -4
  12. package/esm2020/date-picker/date-picker.module.mjs +4 -4
  13. package/esm2020/date-picker/range-shortcut.component.mjs +3 -3
  14. package/esm2020/date-picker/range.directive.mjs +3 -3
  15. package/esm2020/down-file/down-file.directive.mjs +3 -3
  16. package/esm2020/down-file/down-file.module.mjs +4 -4
  17. package/esm2020/ellipsis/ellipsis.component.mjs +8 -5
  18. package/esm2020/ellipsis/ellipsis.module.mjs +4 -4
  19. package/esm2020/error-collect/error-collect.component.mjs +12 -8
  20. package/esm2020/error-collect/error-collect.module.mjs +4 -4
  21. package/esm2020/exception/exception.component.mjs +3 -3
  22. package/esm2020/exception/exception.module.mjs +4 -4
  23. package/esm2020/footer-toolbar/footer-toolbar.component.mjs +3 -3
  24. package/esm2020/footer-toolbar/footer-toolbar.module.mjs +4 -4
  25. package/esm2020/full-content/full-content-toggle.directive.mjs +3 -3
  26. package/esm2020/full-content/full-content.component.mjs +17 -15
  27. package/esm2020/full-content/full-content.module.mjs +4 -4
  28. package/esm2020/full-content/full-content.service.mjs +3 -3
  29. package/esm2020/global-footer/global-footer-item.component.mjs +3 -3
  30. package/esm2020/global-footer/global-footer.component.mjs +3 -3
  31. package/esm2020/global-footer/global-footer.module.mjs +4 -4
  32. package/esm2020/image/image.directive.mjs +3 -3
  33. package/esm2020/image/image.module.mjs +4 -4
  34. package/esm2020/let/let.directive.mjs +3 -3
  35. package/esm2020/let/let.module.mjs +4 -4
  36. package/esm2020/loading/loading.component.mjs +3 -3
  37. package/esm2020/loading/loading.module.mjs +4 -4
  38. package/esm2020/loading/loading.service.mjs +3 -3
  39. package/esm2020/lodop/lodop.module.mjs +4 -4
  40. package/esm2020/lodop/lodop.service.mjs +3 -3
  41. package/esm2020/media/media.component.mjs +25 -13
  42. package/esm2020/media/media.module.mjs +4 -4
  43. package/esm2020/media/media.service.mjs +6 -5
  44. package/esm2020/media/public_api.mjs +1 -2
  45. package/esm2020/notice-icon/notice-icon-tab.component.mjs +3 -3
  46. package/esm2020/notice-icon/notice-icon.component.mjs +3 -3
  47. package/esm2020/notice-icon/notice-icon.module.mjs +4 -4
  48. package/esm2020/onboarding/onboarding.component.mjs +3 -3
  49. package/esm2020/onboarding/onboarding.module.mjs +4 -4
  50. package/esm2020/onboarding/onboarding.service.mjs +3 -3
  51. package/esm2020/page-header/page-header.component.mjs +3 -3
  52. package/esm2020/page-header/page-header.module.mjs +4 -4
  53. package/esm2020/pdf/pdf.component.mjs +27 -13
  54. package/esm2020/pdf/pdf.module.mjs +4 -4
  55. package/esm2020/qr/qr.component.mjs +5 -5
  56. package/esm2020/qr/qr.module.mjs +4 -4
  57. package/esm2020/quick-menu/quick-menu.component.mjs +3 -3
  58. package/esm2020/quick-menu/quick-menu.module.mjs +4 -4
  59. package/esm2020/result/result.component.mjs +3 -3
  60. package/esm2020/result/result.module.mjs +4 -4
  61. package/esm2020/reuse-tab/reuse-tab-context-menu.component.mjs +3 -3
  62. package/esm2020/reuse-tab/reuse-tab-context.component.mjs +3 -3
  63. package/esm2020/reuse-tab/reuse-tab-context.directive.mjs +3 -3
  64. package/esm2020/reuse-tab/reuse-tab-context.service.mjs +3 -3
  65. package/esm2020/reuse-tab/reuse-tab.component.mjs +3 -3
  66. package/esm2020/reuse-tab/reuse-tab.module.mjs +4 -4
  67. package/esm2020/reuse-tab/reuse-tab.service.mjs +3 -3
  68. package/esm2020/se/se-container.component.mjs +6 -6
  69. package/esm2020/se/se.component.mjs +11 -13
  70. package/esm2020/se/se.module.mjs +4 -4
  71. package/esm2020/sg/sg-container.component.mjs +3 -3
  72. package/esm2020/sg/sg.component.mjs +3 -3
  73. package/esm2020/sg/sg.module.mjs +4 -4
  74. package/esm2020/st/st-column-source.mjs +3 -3
  75. package/esm2020/st/st-data-source.mjs +3 -3
  76. package/esm2020/st/st-export.mjs +3 -3
  77. package/esm2020/st/st-filter.component.mjs +3 -3
  78. package/esm2020/st/st-row.directive.mjs +6 -6
  79. package/esm2020/st/st-widget-host.directive.mjs +3 -3
  80. package/esm2020/st/st-widget.mjs +3 -3
  81. package/esm2020/st/st.component.mjs +6 -6
  82. package/esm2020/st/st.module.mjs +4 -4
  83. package/esm2020/sv/sv-container.component.mjs +6 -6
  84. package/esm2020/sv/sv-value.component.mjs +3 -3
  85. package/esm2020/sv/sv.component.mjs +3 -3
  86. package/esm2020/sv/sv.module.mjs +4 -4
  87. package/esm2020/tag-select/tag-select.component.mjs +3 -3
  88. package/esm2020/tag-select/tag-select.module.mjs +4 -4
  89. package/esm2020/xlsx/xlsx.directive.mjs +3 -3
  90. package/esm2020/xlsx/xlsx.module.mjs +4 -4
  91. package/esm2020/xlsx/xlsx.service.mjs +3 -3
  92. package/esm2020/zip/zip.module.mjs +4 -4
  93. package/esm2020/zip/zip.service.mjs +3 -3
  94. package/fesm2015/auto-focus.mjs +12 -10
  95. package/fesm2015/auto-focus.mjs.map +1 -1
  96. package/fesm2015/avatar-list.mjs +10 -10
  97. package/fesm2015/count-down.mjs +7 -7
  98. package/fesm2015/date-picker.mjs +10 -10
  99. package/fesm2015/down-file.mjs +7 -7
  100. package/fesm2015/ellipsis.mjs +11 -8
  101. package/fesm2015/ellipsis.mjs.map +1 -1
  102. package/fesm2015/error-collect.mjs +15 -11
  103. package/fesm2015/error-collect.mjs.map +1 -1
  104. package/fesm2015/exception.mjs +7 -7
  105. package/fesm2015/footer-toolbar.mjs +7 -7
  106. package/fesm2015/full-content.mjs +26 -25
  107. package/fesm2015/full-content.mjs.map +1 -1
  108. package/fesm2015/global-footer.mjs +10 -10
  109. package/fesm2015/image.mjs +7 -7
  110. package/fesm2015/let.mjs +7 -7
  111. package/fesm2015/loading.mjs +10 -10
  112. package/fesm2015/lodop.mjs +7 -7
  113. package/fesm2015/media.mjs +32 -21
  114. package/fesm2015/media.mjs.map +1 -1
  115. package/fesm2015/notice-icon.mjs +10 -10
  116. package/fesm2015/onboarding.mjs +10 -10
  117. package/fesm2015/page-header.mjs +7 -7
  118. package/fesm2015/pdf.mjs +32 -17
  119. package/fesm2015/pdf.mjs.map +1 -1
  120. package/fesm2015/qr.mjs +8 -8
  121. package/fesm2015/qr.mjs.map +1 -1
  122. package/fesm2015/quick-menu.mjs +7 -7
  123. package/fesm2015/result.mjs +7 -7
  124. package/fesm2015/reuse-tab.mjs +22 -22
  125. package/fesm2015/se.mjs +20 -22
  126. package/fesm2015/se.mjs.map +1 -1
  127. package/fesm2015/sg.mjs +10 -10
  128. package/fesm2015/st.mjs +34 -34
  129. package/fesm2015/sv.mjs +16 -16
  130. package/fesm2015/tag-select.mjs +7 -7
  131. package/fesm2015/xlsx.mjs +10 -10
  132. package/fesm2015/zip.mjs +7 -7
  133. package/fesm2020/auto-focus.mjs +12 -10
  134. package/fesm2020/auto-focus.mjs.map +1 -1
  135. package/fesm2020/avatar-list.mjs +10 -10
  136. package/fesm2020/count-down.mjs +7 -7
  137. package/fesm2020/date-picker.mjs +10 -10
  138. package/fesm2020/down-file.mjs +7 -7
  139. package/fesm2020/ellipsis.mjs +11 -8
  140. package/fesm2020/ellipsis.mjs.map +1 -1
  141. package/fesm2020/error-collect.mjs +15 -11
  142. package/fesm2020/error-collect.mjs.map +1 -1
  143. package/fesm2020/exception.mjs +7 -7
  144. package/fesm2020/footer-toolbar.mjs +7 -7
  145. package/fesm2020/full-content.mjs +26 -24
  146. package/fesm2020/full-content.mjs.map +1 -1
  147. package/fesm2020/global-footer.mjs +10 -10
  148. package/fesm2020/image.mjs +7 -7
  149. package/fesm2020/let.mjs +7 -7
  150. package/fesm2020/loading.mjs +10 -10
  151. package/fesm2020/lodop.mjs +7 -7
  152. package/fesm2020/media.mjs +32 -21
  153. package/fesm2020/media.mjs.map +1 -1
  154. package/fesm2020/notice-icon.mjs +10 -10
  155. package/fesm2020/onboarding.mjs +10 -10
  156. package/fesm2020/page-header.mjs +7 -7
  157. package/fesm2020/pdf.mjs +31 -17
  158. package/fesm2020/pdf.mjs.map +1 -1
  159. package/fesm2020/qr.mjs +8 -8
  160. package/fesm2020/qr.mjs.map +1 -1
  161. package/fesm2020/quick-menu.mjs +7 -7
  162. package/fesm2020/result.mjs +7 -7
  163. package/fesm2020/reuse-tab.mjs +22 -22
  164. package/fesm2020/se.mjs +20 -22
  165. package/fesm2020/se.mjs.map +1 -1
  166. package/fesm2020/sg.mjs +10 -10
  167. package/fesm2020/st.mjs +34 -34
  168. package/fesm2020/sv.mjs +16 -16
  169. package/fesm2020/tag-select.mjs +7 -7
  170. package/fesm2020/xlsx.mjs +10 -10
  171. package/fesm2020/zip.mjs +7 -7
  172. package/full-content/full-content.component.d.ts +1 -3
  173. package/media/media.component.d.ts +11 -12
  174. package/media/public_api.d.ts +0 -1
  175. package/package.json +5 -4
  176. package/pdf/pdf.component.d.ts +2 -1
  177. package/pdf/style/index.less +2 -2
  178. package/qr/qr.component.d.ts +1 -1
  179. package/se/se.component.d.ts +1 -1
  180. package/se/style/index.less +2 -0
  181. package/esm2020/media/plyr.types.mjs +0 -2
  182. package/media/plyr.types.d.ts +0 -58
@@ -1 +1 @@
1
- {"version":3,"file":"qr.mjs","sources":["../../../../packages/abc/qr/qr.config.ts","../../../../packages/abc/qr/qr.component.ts","../../../../packages/abc/qr/qr.module.ts","../../../../packages/abc/qr/qr.ts"],"sourcesContent":["import { AlainQRConfig } from '@delon/util/config';\n\nexport const QR_DEFULAT_CONFIG: AlainQRConfig = {\n lib: `https://cdn.jsdelivr.net/npm/qrious/dist/qrious.min.js`,\n background: 'white',\n backgroundAlpha: 1,\n foreground: 'black',\n foregroundAlpha: 1,\n level: 'L',\n mime: 'image/png',\n padding: 10,\n size: 220,\n delay: 0\n};\n","import { Platform } from '@angular/cdk/platform';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n ViewEncapsulation\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport { AlainConfigService, AlainQRConfig } from '@delon/util/config';\nimport { InputNumber, NumberInput } from '@delon/util/decorator';\nimport { LazyService } from '@delon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { QR_DEFULAT_CONFIG } from './qr.config';\nimport { QROptions } from './qr.types';\n\n@Component({\n selector: 'qr',\n exportAs: 'qr',\n template: ` <img *ngIf=\"dataURL\" style=\"max-width: 100%; max-height: 100%;\" [src]=\"dataURL\" /> `,\n host: {\n '[style.display]': `'inline-block'`,\n '[style.height.px]': 'size',\n '[style.width.px]': 'size'\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class QRComponent implements OnChanges, AfterViewInit, OnDestroy {\n static ngAcceptInputType_padding: NumberInput;\n static ngAcceptInputType_size: NumberInput;\n static ngAcceptInputType_delay: NumberInput;\n\n private lazy$?: Subscription;\n private qr: NzSafeAny;\n private cog: AlainQRConfig;\n private option!: QROptions;\n private inited = false;\n\n dataURL!: string;\n\n @Input() background?: string;\n @Input() backgroundAlpha?: number;\n @Input() foreground?: string;\n @Input() foregroundAlpha?: number;\n @Input() level?: string;\n @Input() mime?: string;\n @Input() @InputNumber() padding?: number;\n @Input() @InputNumber() size?: number;\n @Input() value = '';\n @Input() @InputNumber() delay?: number;\n @Output() readonly change = new EventEmitter<string>();\n\n constructor(\n private cdr: ChangeDetectorRef,\n configSrv: AlainConfigService,\n private lazySrv: LazyService,\n private platform: Platform\n ) {\n this.cog = configSrv.merge('qr', QR_DEFULAT_CONFIG)!;\n Object.assign(this, this.cog);\n }\n\n private init(): void {\n if (!this.inited) {\n return;\n }\n\n if (this.qr == null) {\n this.qr = new (window as NzSafeAny).QRious();\n }\n this.qr.set(this.option);\n this.dataURL = this.qr.toDataURL();\n this.change.emit(this.dataURL);\n this.cdr.detectChanges();\n }\n\n private initDelay(): void {\n this.inited = true;\n setTimeout(() => this.init(), this.delay);\n }\n\n ngAfterViewInit(): void {\n if (!this.platform.isBrowser) {\n return;\n }\n if ((window as NzSafeAny).QRious) {\n this.initDelay();\n return;\n }\n const url = this.cog.lib!;\n this.lazy$ = this.lazySrv.change\n .pipe(filter(ls => ls.length === 1 && ls[0].path === url && ls[0].status === 'ok'))\n .subscribe(() => this.initDelay());\n this.lazySrv.load(url);\n }\n\n ngOnChanges(): void {\n const option: QROptions = {\n background: this.background,\n backgroundAlpha: this.backgroundAlpha,\n foreground: this.foreground,\n foregroundAlpha: this.foregroundAlpha,\n level: this.level as NzSafeAny,\n mime: this.mime,\n padding: this.padding,\n size: this.size,\n value: this.toUtf8ByteArray(this.value)\n };\n this.option = option;\n this.init();\n }\n\n private toUtf8ByteArray(str: string): string {\n str = encodeURI(str);\n const result: number[] = [];\n for (let i = 0; i < str.length; i++) {\n if (str.charAt(i) !== '%') {\n result.push(str.charCodeAt(i));\n } else {\n result.push(parseInt(str.substring(i + 1, 2), 16));\n i += 2;\n }\n }\n return result.map(v => String.fromCharCode(v)).join('');\n }\n\n ngOnDestroy(): void {\n if (this.lazy$) {\n this.lazy$.unsubscribe();\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { QRComponent } from './qr.component';\n\nconst COMPONENTS = [QRComponent];\n\n@NgModule({\n imports: [CommonModule],\n declarations: COMPONENTS,\n exports: COMPONENTS\n})\nexport class QRModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"qr.mjs","sources":["../../../../packages/abc/qr/qr.config.ts","../../../../packages/abc/qr/qr.component.ts","../../../../packages/abc/qr/qr.module.ts","../../../../packages/abc/qr/qr.ts"],"sourcesContent":["import { AlainQRConfig } from '@delon/util/config';\n\nexport const QR_DEFULAT_CONFIG: AlainQRConfig = {\n lib: `https://cdn.jsdelivr.net/npm/qrious/dist/qrious.min.js`,\n background: 'white',\n backgroundAlpha: 1,\n foreground: 'black',\n foregroundAlpha: 1,\n level: 'L',\n mime: 'image/png',\n padding: 10,\n size: 220,\n delay: 0\n};\n","import { Platform } from '@angular/cdk/platform';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n ViewEncapsulation\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport { AlainConfigService, AlainQRConfig } from '@delon/util/config';\nimport { InputNumber, NumberInput } from '@delon/util/decorator';\nimport { LazyService } from '@delon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { QR_DEFULAT_CONFIG } from './qr.config';\nimport { QROptions } from './qr.types';\n\n@Component({\n selector: 'qr',\n exportAs: 'qr',\n template: ` <img *ngIf=\"dataURL\" style=\"max-width: 100%; max-height: 100%;\" [src]=\"dataURL\" /> `,\n host: {\n '[style.display]': `'inline-block'`,\n '[style.height.px]': 'size',\n '[style.width.px]': 'size'\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class QRComponent implements OnChanges, AfterViewInit, OnDestroy {\n static ngAcceptInputType_padding: NumberInput;\n static ngAcceptInputType_size: NumberInput;\n static ngAcceptInputType_delay: NumberInput;\n\n private lazy$?: Subscription;\n private qr: NzSafeAny;\n private cog: AlainQRConfig;\n private option!: QROptions;\n private inited = false;\n\n dataURL!: string;\n\n @Input() background?: string;\n @Input() backgroundAlpha?: number;\n @Input() foreground?: string;\n @Input() foregroundAlpha?: number;\n @Input() level?: string;\n @Input() mime?: string;\n @Input() @InputNumber() padding?: number;\n @Input() @InputNumber() size?: number;\n @Input() value: string | (() => string) = '';\n @Input() @InputNumber() delay?: number;\n @Output() readonly change = new EventEmitter<string>();\n\n constructor(\n private cdr: ChangeDetectorRef,\n configSrv: AlainConfigService,\n private lazySrv: LazyService,\n private platform: Platform\n ) {\n this.cog = configSrv.merge('qr', QR_DEFULAT_CONFIG)!;\n Object.assign(this, this.cog);\n }\n\n private init(): void {\n if (!this.inited) {\n return;\n }\n\n if (this.qr == null) {\n this.qr = new (window as NzSafeAny).QRious();\n }\n this.qr.set(this.option);\n this.dataURL = this.qr.toDataURL();\n this.change.emit(this.dataURL);\n this.cdr.detectChanges();\n }\n\n private initDelay(): void {\n this.inited = true;\n setTimeout(() => this.init(), this.delay);\n }\n\n ngAfterViewInit(): void {\n if (!this.platform.isBrowser) {\n return;\n }\n if ((window as NzSafeAny).QRious) {\n this.initDelay();\n return;\n }\n const url = this.cog.lib!;\n this.lazy$ = this.lazySrv.change\n .pipe(filter(ls => ls.length === 1 && ls[0].path === url && ls[0].status === 'ok'))\n .subscribe(() => this.initDelay());\n this.lazySrv.load(url);\n }\n\n ngOnChanges(): void {\n const option: QROptions = {\n background: this.background,\n backgroundAlpha: this.backgroundAlpha,\n foreground: this.foreground,\n foregroundAlpha: this.foregroundAlpha,\n level: this.level as NzSafeAny,\n mime: this.mime,\n padding: this.padding,\n size: this.size,\n value: typeof this.value === 'function' ? this.value() : this.toUtf8ByteArray(this.value)\n };\n this.option = option;\n this.init();\n }\n\n private toUtf8ByteArray(str: string): string {\n str = encodeURI(str);\n const result: number[] = [];\n for (let i = 0; i < str.length; i++) {\n if (str.charAt(i) !== '%') {\n result.push(str.charCodeAt(i));\n } else {\n result.push(parseInt(str.substring(i + 1, 2), 16));\n i += 2;\n }\n }\n return result.map(v => String.fromCharCode(v)).join('');\n }\n\n ngOnDestroy(): void {\n if (this.lazy$) {\n this.lazy$.unsubscribe();\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { QRComponent } from './qr.component';\n\nconst COMPONENTS = [QRComponent];\n\n@NgModule({\n imports: [CommonModule],\n declarations: COMPONENTS,\n exports: COMPONENTS\n})\nexport class QRModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -58,8 +58,8 @@ class QuickMenuComponent {
58
58
  }
59
59
  }
60
60
  }
61
- QuickMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: QuickMenuComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
62
- QuickMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: QuickMenuComponent, selector: "quick-menu", inputs: { icon: "icon", top: "top", width: "width", bgColor: "bgColor", borderColor: "borderColor", expand: "expand" }, outputs: { expandChange: "expandChange" }, host: { listeners: { "click": "_click()" }, properties: { "class.quick-menu": "true" } }, exportAs: ["quickMenu"], usesOnChanges: true, ngImport: i0, template: "<div class=\"quick-menu__inner\">\n <div class=\"quick-menu__ctrl\" [ngStyle]=\"ctrlStyle\">\n <div class=\"quick-menu__ctrl-icon\">\n <ng-container *nzStringTemplateOutlet=\"icon\">\n <i nz-icon [nzType]=\"$any(icon)\"></i>\n </ng-container>\n </div>\n </div>\n <ng-content></ng-content>\n</div>\n", directives: [{ type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i2.NzStringTemplateOutletDirective, selector: "[nzStringTemplateOutlet]", inputs: ["nzStringTemplateOutletContext", "nzStringTemplateOutlet"], exportAs: ["nzStringTemplateOutlet"] }, { type: i3.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
61
+ QuickMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: QuickMenuComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
62
+ QuickMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: QuickMenuComponent, selector: "quick-menu", inputs: { icon: "icon", top: "top", width: "width", bgColor: "bgColor", borderColor: "borderColor", expand: "expand" }, outputs: { expandChange: "expandChange" }, host: { listeners: { "click": "_click()" }, properties: { "class.quick-menu": "true" } }, exportAs: ["quickMenu"], usesOnChanges: true, ngImport: i0, template: "<div class=\"quick-menu__inner\">\n <div class=\"quick-menu__ctrl\" [ngStyle]=\"ctrlStyle\">\n <div class=\"quick-menu__ctrl-icon\">\n <ng-container *nzStringTemplateOutlet=\"icon\">\n <i nz-icon [nzType]=\"$any(icon)\"></i>\n </ng-container>\n </div>\n </div>\n <ng-content></ng-content>\n</div>\n", directives: [{ type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i2.NzStringTemplateOutletDirective, selector: "[nzStringTemplateOutlet]", inputs: ["nzStringTemplateOutletContext", "nzStringTemplateOutlet"], exportAs: ["nzStringTemplateOutlet"] }, { type: i3.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
63
63
  __decorate([
64
64
  InputNumber()
65
65
  ], QuickMenuComponent.prototype, "top", void 0);
@@ -69,7 +69,7 @@ __decorate([
69
69
  __decorate([
70
70
  InputBoolean()
71
71
  ], QuickMenuComponent.prototype, "expand", void 0);
72
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: QuickMenuComponent, decorators: [{
72
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: QuickMenuComponent, decorators: [{
73
73
  type: Component,
74
74
  args: [{ selector: 'quick-menu', exportAs: 'quickMenu', host: {
75
75
  '[class.quick-menu]': 'true',
@@ -94,10 +94,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
94
94
  const COMPONENTS = [QuickMenuComponent];
95
95
  class QuickMenuModule {
96
96
  }
97
- QuickMenuModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: QuickMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
98
- QuickMenuModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: QuickMenuModule, declarations: [QuickMenuComponent], imports: [CommonModule, NzIconModule, NzOutletModule], exports: [QuickMenuComponent] });
99
- QuickMenuModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: QuickMenuModule, imports: [[CommonModule, NzIconModule, NzOutletModule]] });
100
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: QuickMenuModule, decorators: [{
97
+ QuickMenuModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: QuickMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
98
+ QuickMenuModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: QuickMenuModule, declarations: [QuickMenuComponent], imports: [CommonModule, NzIconModule, NzOutletModule], exports: [QuickMenuComponent] });
99
+ QuickMenuModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: QuickMenuModule, imports: [[CommonModule, NzIconModule, NzOutletModule]] });
100
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: QuickMenuModule, decorators: [{
101
101
  type: NgModule,
102
102
  args: [{
103
103
  imports: [CommonModule, NzIconModule, NzOutletModule],
@@ -44,9 +44,9 @@ class ResultComponent {
44
44
  this.destroy$.complete();
45
45
  }
46
46
  }
47
- ResultComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ResultComponent, deps: [{ token: i1.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Component });
48
- ResultComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: ResultComponent, selector: "result", inputs: { type: "type", title: "title", description: "description", extra: "extra" }, host: { properties: { "class.result": "true", "class.result-rtl": "dir === 'rtl'" } }, exportAs: ["result"], ngImport: i0, template: "<div class=\"result__icon\">\n <i nz-icon [nzType]=\"_icon\" class=\"result__icon-{{ _type }}\"></i>\n</div>\n<div class=\"result__title\">\n <ng-container *nzStringTemplateOutlet=\"title\">{{ title }}</ng-container>\n</div>\n<div *ngIf=\"description\" class=\"result__desc\">\n <ng-container *nzStringTemplateOutlet=\"description\">{{ description }}</ng-container>\n</div>\n<div *ngIf=\"extra\" class=\"result__extra\">\n <ng-container *nzStringTemplateOutlet=\"extra\">{{ extra }}</ng-container>\n</div>\n<div class=\"result__actions\">\n <ng-content></ng-content>\n</div>\n", directives: [{ type: i2.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { type: i3.NzStringTemplateOutletDirective, selector: "[nzStringTemplateOutlet]", inputs: ["nzStringTemplateOutletContext", "nzStringTemplateOutlet"], exportAs: ["nzStringTemplateOutlet"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
49
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ResultComponent, decorators: [{
47
+ ResultComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ResultComponent, deps: [{ token: i1.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Component });
48
+ ResultComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: ResultComponent, selector: "result", inputs: { type: "type", title: "title", description: "description", extra: "extra" }, host: { properties: { "class.result": "true", "class.result-rtl": "dir === 'rtl'" } }, exportAs: ["result"], ngImport: i0, template: "<div class=\"result__icon\">\n <i nz-icon [nzType]=\"_icon\" class=\"result__icon-{{ _type }}\"></i>\n</div>\n<div class=\"result__title\">\n <ng-container *nzStringTemplateOutlet=\"title\">{{ title }}</ng-container>\n</div>\n<div *ngIf=\"description\" class=\"result__desc\">\n <ng-container *nzStringTemplateOutlet=\"description\">{{ description }}</ng-container>\n</div>\n<div *ngIf=\"extra\" class=\"result__extra\">\n <ng-container *nzStringTemplateOutlet=\"extra\">{{ extra }}</ng-container>\n</div>\n<div class=\"result__actions\">\n <ng-content></ng-content>\n</div>\n", directives: [{ type: i2.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { type: i3.NzStringTemplateOutletDirective, selector: "[nzStringTemplateOutlet]", inputs: ["nzStringTemplateOutletContext", "nzStringTemplateOutlet"], exportAs: ["nzStringTemplateOutlet"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ResultComponent, decorators: [{
50
50
  type: Component,
51
51
  args: [{ selector: 'result', exportAs: 'result', host: {
52
52
  '[class.result]': 'true',
@@ -69,10 +69,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
69
69
  const COMPONENTS = [ResultComponent];
70
70
  class ResultModule {
71
71
  }
72
- ResultModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ResultModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
73
- ResultModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ResultModule, declarations: [ResultComponent], imports: [CommonModule, NzIconModule, NzOutletModule], exports: [ResultComponent] });
74
- ResultModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ResultModule, imports: [[CommonModule, NzIconModule, NzOutletModule]] });
75
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ResultModule, decorators: [{
72
+ ResultModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ResultModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
73
+ ResultModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ResultModule, declarations: [ResultComponent], imports: [CommonModule, NzIconModule, NzOutletModule], exports: [ResultComponent] });
74
+ ResultModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ResultModule, imports: [[CommonModule, NzIconModule, NzOutletModule]] });
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ResultModule, decorators: [{
76
76
  type: NgModule,
77
77
  args: [{
78
78
  imports: [CommonModule, NzIconModule, NzOutletModule],
@@ -70,9 +70,9 @@ class ReuseTabContextMenuComponent {
70
70
  this.notify(null);
71
71
  }
72
72
  }
73
- ReuseTabContextMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabContextMenuComponent, deps: [{ token: i1.DelonLocaleService }], target: i0.ɵɵFactoryTarget.Component });
74
- ReuseTabContextMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: ReuseTabContextMenuComponent, selector: "reuse-tab-context-menu", inputs: { i18n: "i18n", item: "item", event: "event", customContextMenu: "customContextMenu" }, outputs: { close: "close" }, host: { listeners: { "document:click": "closeMenu($event)", "document:contextmenu": "closeMenu($event)" } }, ngImport: i0, template: "<ul nz-menu>\n <li\n *ngIf=\"item.active\"\n nz-menu-item\n (click)=\"click($event, 'refresh')\"\n data-type=\"refresh\"\n [innerHTML]=\"i18n.refresh\"\n ></li>\n <li\n nz-menu-item\n (click)=\"click($event, 'close')\"\n data-type=\"close\"\n [nzDisabled]=\"!item.closable\"\n [innerHTML]=\"i18n.close\"\n ></li>\n <li nz-menu-item (click)=\"click($event, 'closeOther')\" data-type=\"closeOther\" [innerHTML]=\"i18n.closeOther\"></li>\n <li\n nz-menu-item\n (click)=\"click($event, 'closeRight')\"\n data-type=\"closeRight\"\n [nzDisabled]=\"item.last\"\n [innerHTML]=\"i18n.closeRight\"\n ></li>\n <ng-container *ngIf=\"customContextMenu!.length > 0\">\n <li nz-menu-divider></li>\n <li\n *ngFor=\"let i of customContextMenu\"\n nz-menu-item\n [attr.data-type]=\"i.id\"\n [nzDisabled]=\"isDisabled(i)\"\n (click)=\"click($event, 'custom', i)\"\n [innerHTML]=\"i.title\"\n ></li>\n </ng-container>\n</ul>\n", directives: [{ type: i2.NzMenuDirective, selector: "[nz-menu]", inputs: ["nzInlineIndent", "nzTheme", "nzMode", "nzInlineCollapsed", "nzSelectable"], outputs: ["nzClick"], exportAs: ["nzMenu"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NzMenuItemDirective, selector: "[nz-menu-item]", inputs: ["nzPaddingLeft", "nzDisabled", "nzSelected", "nzDanger", "nzMatchRouterExact", "nzMatchRouter"], exportAs: ["nzMenuItem"] }, { type: i2.NzMenuDividerDirective, selector: "[nz-menu-divider]", exportAs: ["nzMenuDivider"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
75
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabContextMenuComponent, decorators: [{
73
+ ReuseTabContextMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabContextMenuComponent, deps: [{ token: i1.DelonLocaleService }], target: i0.ɵɵFactoryTarget.Component });
74
+ ReuseTabContextMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: ReuseTabContextMenuComponent, selector: "reuse-tab-context-menu", inputs: { i18n: "i18n", item: "item", event: "event", customContextMenu: "customContextMenu" }, outputs: { close: "close" }, host: { listeners: { "document:click": "closeMenu($event)", "document:contextmenu": "closeMenu($event)" } }, ngImport: i0, template: "<ul nz-menu>\n <li\n *ngIf=\"item.active\"\n nz-menu-item\n (click)=\"click($event, 'refresh')\"\n data-type=\"refresh\"\n [innerHTML]=\"i18n.refresh\"\n ></li>\n <li\n nz-menu-item\n (click)=\"click($event, 'close')\"\n data-type=\"close\"\n [nzDisabled]=\"!item.closable\"\n [innerHTML]=\"i18n.close\"\n ></li>\n <li nz-menu-item (click)=\"click($event, 'closeOther')\" data-type=\"closeOther\" [innerHTML]=\"i18n.closeOther\"></li>\n <li\n nz-menu-item\n (click)=\"click($event, 'closeRight')\"\n data-type=\"closeRight\"\n [nzDisabled]=\"item.last\"\n [innerHTML]=\"i18n.closeRight\"\n ></li>\n <ng-container *ngIf=\"customContextMenu!.length > 0\">\n <li nz-menu-divider></li>\n <li\n *ngFor=\"let i of customContextMenu\"\n nz-menu-item\n [attr.data-type]=\"i.id\"\n [nzDisabled]=\"isDisabled(i)\"\n (click)=\"click($event, 'custom', i)\"\n [innerHTML]=\"i.title\"\n ></li>\n </ng-container>\n</ul>\n", directives: [{ type: i2.NzMenuDirective, selector: "[nz-menu]", inputs: ["nzInlineIndent", "nzTheme", "nzMode", "nzInlineCollapsed", "nzSelectable"], outputs: ["nzClick"], exportAs: ["nzMenu"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NzMenuItemDirective, selector: "[nz-menu-item]", inputs: ["nzPaddingLeft", "nzDisabled", "nzSelected", "nzDanger", "nzMatchRouterExact", "nzMatchRouter"], exportAs: ["nzMenuItem"] }, { type: i2.NzMenuDividerDirective, selector: "[nz-menu-divider]", exportAs: ["nzMenuDivider"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabContextMenuComponent, decorators: [{
76
76
  type: Component,
77
77
  args: [{ selector: 'reuse-tab-context-menu', host: {
78
78
  '(document:click)': 'closeMenu($event)',
@@ -132,9 +132,9 @@ class ReuseTabContextService {
132
132
  comp.onDestroy(() => sub$.unsubscribe());
133
133
  }
134
134
  }
135
- ReuseTabContextService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabContextService, deps: [{ token: i1$1.Overlay }], target: i0.ɵɵFactoryTarget.Injectable });
136
- ReuseTabContextService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabContextService });
137
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabContextService, decorators: [{
135
+ ReuseTabContextService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabContextService, deps: [{ token: i1$1.Overlay }], target: i0.ɵɵFactoryTarget.Injectable });
136
+ ReuseTabContextService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabContextService });
137
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabContextService, decorators: [{
138
138
  type: Injectable
139
139
  }], ctorParameters: function () { return [{ type: i1$1.Overlay }]; } });
140
140
 
@@ -153,9 +153,9 @@ class ReuseTabContextComponent {
153
153
  this.sub$.unsubscribe();
154
154
  }
155
155
  }
156
- ReuseTabContextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabContextComponent, deps: [{ token: ReuseTabContextService }], target: i0.ɵɵFactoryTarget.Component });
157
- ReuseTabContextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: ReuseTabContextComponent, selector: "reuse-tab-context", inputs: { i18n: "i18n" }, outputs: { change: "change" }, ngImport: i0, template: ``, isInline: true });
158
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabContextComponent, decorators: [{
156
+ ReuseTabContextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabContextComponent, deps: [{ token: ReuseTabContextService }], target: i0.ɵɵFactoryTarget.Component });
157
+ ReuseTabContextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: ReuseTabContextComponent, selector: "reuse-tab-context", inputs: { i18n: "i18n" }, outputs: { change: "change" }, ngImport: i0, template: ``, isInline: true });
158
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabContextComponent, decorators: [{
159
159
  type: Component,
160
160
  args: [{
161
161
  selector: 'reuse-tab-context',
@@ -181,9 +181,9 @@ class ReuseTabContextDirective {
181
181
  event.stopPropagation();
182
182
  }
183
183
  }
184
- ReuseTabContextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabContextDirective, deps: [{ token: ReuseTabContextService }], target: i0.ɵɵFactoryTarget.Directive });
185
- ReuseTabContextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: ReuseTabContextDirective, selector: "[reuse-tab-context-menu]", inputs: { item: ["reuse-tab-context-menu", "item"], customContextMenu: "customContextMenu" }, host: { listeners: { "contextmenu": "_onContextMenu($event)" } }, exportAs: ["reuseTabContextMenu"], ngImport: i0 });
186
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabContextDirective, decorators: [{
184
+ ReuseTabContextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabContextDirective, deps: [{ token: ReuseTabContextService }], target: i0.ɵɵFactoryTarget.Directive });
185
+ ReuseTabContextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.5", type: ReuseTabContextDirective, selector: "[reuse-tab-context-menu]", inputs: { item: ["reuse-tab-context-menu", "item"], customContextMenu: "customContextMenu" }, host: { listeners: { "contextmenu": "_onContextMenu($event)" } }, exportAs: ["reuseTabContextMenu"], ngImport: i0 });
186
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabContextDirective, decorators: [{
187
187
  type: Directive,
188
188
  args: [{
189
189
  selector: '[reuse-tab-context-menu]',
@@ -752,9 +752,9 @@ class ReuseTabService {
752
752
  }
753
753
  }
754
754
  }
755
- ReuseTabService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabService, deps: [{ token: i0.Injector }, { token: i1.MenuService }], target: i0.ɵɵFactoryTarget.Injectable });
756
- ReuseTabService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabService, providedIn: 'root' });
757
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabService, decorators: [{
755
+ ReuseTabService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabService, deps: [{ token: i0.Injector }, { token: i1.MenuService }], target: i0.ɵɵFactoryTarget.Injectable });
756
+ ReuseTabService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabService, providedIn: 'root' });
757
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabService, decorators: [{
758
758
  type: Injectable,
759
759
  args: [{ providedIn: 'root' }]
760
760
  }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.MenuService }]; } });
@@ -981,8 +981,8 @@ class ReuseTabComponent {
981
981
  destroy$.complete();
982
982
  }
983
983
  }
984
- ReuseTabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabComponent, deps: [{ token: ReuseTabService }, { token: i0.ChangeDetectorRef }, { token: i2$1.Router }, { token: i2$1.ActivatedRoute }, { token: ALAIN_I18N_TOKEN, optional: true }, { token: DOCUMENT }, { token: i3.Platform }], target: i0.ɵɵFactoryTarget.Component });
985
- ReuseTabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: ReuseTabComponent, selector: "reuse-tab, [reuse-tab]", inputs: { mode: "mode", i18n: "i18n", debug: "debug", max: "max", tabMaxWidth: "tabMaxWidth", excludes: "excludes", allowClose: "allowClose", keepingScroll: "keepingScroll", keepingScrollContainer: "keepingScrollContainer", customContextMenu: "customContextMenu", tabBarExtraContent: "tabBarExtraContent", tabBarGutter: "tabBarGutter", tabBarStyle: "tabBarStyle", tabType: "tabType", routeParamMatchMode: "routeParamMatchMode", disabled: "disabled", titleRender: "titleRender" }, outputs: { change: "change", close: "close" }, host: { properties: { "class.reuse-tab": "true", "class.reuse-tab__line": "tabType === 'line'", "class.reuse-tab__card": "tabType === 'card'", "class.reuse-tab__disabled": "disabled" } }, providers: [ReuseTabContextService], viewQueries: [{ propertyName: "tabset", first: true, predicate: ["tabset"], descendants: true }], exportAs: ["reuseTab"], usesOnChanges: true, ngImport: i0, template: "<nz-tabset\n #tabset\n [nzSelectedIndex]=\"pos\"\n [nzAnimated]=\"false\"\n [nzType]=\"tabType\"\n [nzTabBarExtraContent]=\"tabBarExtraContent\"\n [nzTabBarGutter]=\"tabBarGutter\"\n [nzTabBarStyle]=\"tabBarStyle\"\n>\n <nz-tab *ngFor=\"let i of list; let index = index\" [nzTitle]=\"titleTemplate\" (nzClick)=\"_to(index)\">\n <ng-template #titleTemplate>\n <div\n [reuse-tab-context-menu]=\"i\"\n [customContextMenu]=\"customContextMenu\"\n class=\"reuse-tab__name\"\n [attr.title]=\"i.title\"\n >\n <span [class.reuse-tab__name-width]=\"tabMaxWidth\" [style.max-width.px]=\"tabMaxWidth\">\n <ng-container\n *ngIf=\"titleRender; else defaultTitle\"\n [ngTemplateOutlet]=\"titleRender\"\n [ngTemplateOutletContext]=\"{ $implicit: i }\"\n ></ng-container>\n <ng-template #defaultTitle>{{ i.title }}</ng-template>\n </span>\n </div>\n <i *ngIf=\"i.closable\" nz-icon nzType=\"close\" class=\"reuse-tab__op\" (click)=\"_close($event, index, false)\"></i>\n </ng-template>\n </nz-tab>\n</nz-tabset>\n<reuse-tab-context [i18n]=\"i18n\" (change)=\"contextMenuChange($event)\"></reuse-tab-context>\n", components: [{ type: i4.NzTabSetComponent, selector: "nz-tabset", inputs: ["nzSelectedIndex", "nzTabPosition", "nzTabBarExtraContent", "nzCanDeactivate", "nzAddIcon", "nzTabBarStyle", "nzType", "nzSize", "nzAnimated", "nzTabBarGutter", "nzHideAdd", "nzCentered", "nzHideAll", "nzLinkRouter", "nzLinkExact"], outputs: ["nzSelectChange", "nzSelectedIndexChange", "nzTabListScroll", "nzClose", "nzAdd"], exportAs: ["nzTabset"] }, { type: i4.NzTabComponent, selector: "nz-tab", inputs: ["nzTitle", "nzClosable", "nzCloseIcon", "nzDisabled", "nzForceRender"], outputs: ["nzSelect", "nzDeselect", "nzClick", "nzContextmenu"], exportAs: ["nzTab"] }, { type: ReuseTabContextComponent, selector: "reuse-tab-context", inputs: ["i18n"], outputs: ["change"] }], directives: [{ type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: ReuseTabContextDirective, selector: "[reuse-tab-context-menu]", inputs: ["reuse-tab-context-menu", "customContextMenu"], exportAs: ["reuseTabContextMenu"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i8.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
984
+ ReuseTabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabComponent, deps: [{ token: ReuseTabService }, { token: i0.ChangeDetectorRef }, { token: i2$1.Router }, { token: i2$1.ActivatedRoute }, { token: ALAIN_I18N_TOKEN, optional: true }, { token: DOCUMENT }, { token: i3.Platform }], target: i0.ɵɵFactoryTarget.Component });
985
+ ReuseTabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: ReuseTabComponent, selector: "reuse-tab, [reuse-tab]", inputs: { mode: "mode", i18n: "i18n", debug: "debug", max: "max", tabMaxWidth: "tabMaxWidth", excludes: "excludes", allowClose: "allowClose", keepingScroll: "keepingScroll", keepingScrollContainer: "keepingScrollContainer", customContextMenu: "customContextMenu", tabBarExtraContent: "tabBarExtraContent", tabBarGutter: "tabBarGutter", tabBarStyle: "tabBarStyle", tabType: "tabType", routeParamMatchMode: "routeParamMatchMode", disabled: "disabled", titleRender: "titleRender" }, outputs: { change: "change", close: "close" }, host: { properties: { "class.reuse-tab": "true", "class.reuse-tab__line": "tabType === 'line'", "class.reuse-tab__card": "tabType === 'card'", "class.reuse-tab__disabled": "disabled" } }, providers: [ReuseTabContextService], viewQueries: [{ propertyName: "tabset", first: true, predicate: ["tabset"], descendants: true }], exportAs: ["reuseTab"], usesOnChanges: true, ngImport: i0, template: "<nz-tabset\n #tabset\n [nzSelectedIndex]=\"pos\"\n [nzAnimated]=\"false\"\n [nzType]=\"tabType\"\n [nzTabBarExtraContent]=\"tabBarExtraContent\"\n [nzTabBarGutter]=\"tabBarGutter\"\n [nzTabBarStyle]=\"tabBarStyle\"\n>\n <nz-tab *ngFor=\"let i of list; let index = index\" [nzTitle]=\"titleTemplate\" (nzClick)=\"_to(index)\">\n <ng-template #titleTemplate>\n <div\n [reuse-tab-context-menu]=\"i\"\n [customContextMenu]=\"customContextMenu\"\n class=\"reuse-tab__name\"\n [attr.title]=\"i.title\"\n >\n <span [class.reuse-tab__name-width]=\"tabMaxWidth\" [style.max-width.px]=\"tabMaxWidth\">\n <ng-container\n *ngIf=\"titleRender; else defaultTitle\"\n [ngTemplateOutlet]=\"titleRender\"\n [ngTemplateOutletContext]=\"{ $implicit: i }\"\n ></ng-container>\n <ng-template #defaultTitle>{{ i.title }}</ng-template>\n </span>\n </div>\n <i *ngIf=\"i.closable\" nz-icon nzType=\"close\" class=\"reuse-tab__op\" (click)=\"_close($event, index, false)\"></i>\n </ng-template>\n </nz-tab>\n</nz-tabset>\n<reuse-tab-context [i18n]=\"i18n\" (change)=\"contextMenuChange($event)\"></reuse-tab-context>\n", components: [{ type: i4.NzTabSetComponent, selector: "nz-tabset", inputs: ["nzSelectedIndex", "nzTabPosition", "nzTabBarExtraContent", "nzCanDeactivate", "nzAddIcon", "nzTabBarStyle", "nzType", "nzSize", "nzAnimated", "nzTabBarGutter", "nzHideAdd", "nzCentered", "nzHideAll", "nzLinkRouter", "nzLinkExact"], outputs: ["nzSelectChange", "nzSelectedIndexChange", "nzTabListScroll", "nzClose", "nzAdd"], exportAs: ["nzTabset"] }, { type: i4.NzTabComponent, selector: "nz-tab", inputs: ["nzTitle", "nzClosable", "nzCloseIcon", "nzDisabled", "nzForceRender"], outputs: ["nzSelect", "nzDeselect", "nzClick", "nzContextmenu"], exportAs: ["nzTab"] }, { type: ReuseTabContextComponent, selector: "reuse-tab-context", inputs: ["i18n"], outputs: ["change"] }], directives: [{ type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: ReuseTabContextDirective, selector: "[reuse-tab-context-menu]", inputs: ["reuse-tab-context-menu", "customContextMenu"], exportAs: ["reuseTabContextMenu"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i8.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
986
986
  __decorate([
987
987
  InputBoolean()
988
988
  ], ReuseTabComponent.prototype, "debug", void 0);
@@ -1001,7 +1001,7 @@ __decorate([
1001
1001
  __decorate([
1002
1002
  InputBoolean()
1003
1003
  ], ReuseTabComponent.prototype, "disabled", void 0);
1004
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabComponent, decorators: [{
1004
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabComponent, decorators: [{
1005
1005
  type: Component,
1006
1006
  args: [{ selector: 'reuse-tab, [reuse-tab]', exportAs: 'reuseTab', host: {
1007
1007
  '[class.reuse-tab]': 'true',
@@ -1087,10 +1087,10 @@ const COMPONENTS = [ReuseTabComponent];
1087
1087
  const NOEXPORTS = [ReuseTabContextMenuComponent, ReuseTabContextComponent, ReuseTabContextDirective];
1088
1088
  class ReuseTabModule {
1089
1089
  }
1090
- ReuseTabModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1091
- ReuseTabModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabModule, declarations: [ReuseTabComponent, ReuseTabContextMenuComponent, ReuseTabContextComponent, ReuseTabContextDirective], imports: [CommonModule, RouterModule, DelonLocaleModule, NzMenuModule, NzTabsModule, NzIconModule, OverlayModule], exports: [ReuseTabComponent] });
1092
- ReuseTabModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabModule, imports: [[CommonModule, RouterModule, DelonLocaleModule, NzMenuModule, NzTabsModule, NzIconModule, OverlayModule]] });
1093
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ReuseTabModule, decorators: [{
1090
+ ReuseTabModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1091
+ ReuseTabModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabModule, declarations: [ReuseTabComponent, ReuseTabContextMenuComponent, ReuseTabContextComponent, ReuseTabContextDirective], imports: [CommonModule, RouterModule, DelonLocaleModule, NzMenuModule, NzTabsModule, NzIconModule, OverlayModule], exports: [ReuseTabComponent] });
1092
+ ReuseTabModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabModule, imports: [[CommonModule, RouterModule, DelonLocaleModule, NzMenuModule, NzTabsModule, NzIconModule, OverlayModule]] });
1093
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ReuseTabModule, decorators: [{
1094
1094
  type: NgModule,
1095
1095
  args: [{
1096
1096
  imports: [CommonModule, RouterModule, DelonLocaleModule, NzMenuModule, NzTabsModule, NzIconModule, OverlayModule],
package/fesm2015/se.mjs CHANGED
@@ -63,8 +63,8 @@ class SEContainerComponent {
63
63
  }
64
64
  }
65
65
  }
66
- SEContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SEContainerComponent, deps: [{ token: i1.AlainConfigService }], target: i0.ɵɵFactoryTarget.Component });
67
- SEContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: SEContainerComponent, selector: "se-container, [se-container]", inputs: { colInCon: ["se-container", "colInCon"], col: "col", labelWidth: "labelWidth", noColon: "noColon", title: "title", gutter: "gutter", nzLayout: "nzLayout", size: "size", firstVisual: "firstVisual", ingoreDirty: "ingoreDirty", line: "line", errors: "errors" }, host: { properties: { "class.ant-row": "true", "class.se__container": "true", "class.se__horizontal": "nzLayout === 'horizontal'", "class.se__vertical": "nzLayout === 'vertical'", "class.se__inline": "nzLayout === 'inline'", "class.se__compact": "size === 'compact'", "style.margin-left.px": "margin", "style.margin-right.px": "margin" } }, exportAs: ["seContainer"], ngImport: i0, template: `
66
+ SEContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SEContainerComponent, deps: [{ token: i1.AlainConfigService }], target: i0.ɵɵFactoryTarget.Component });
67
+ SEContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: SEContainerComponent, selector: "se-container, [se-container]", inputs: { colInCon: ["se-container", "colInCon"], col: "col", labelWidth: "labelWidth", noColon: "noColon", title: "title", gutter: "gutter", nzLayout: "nzLayout", size: "size", firstVisual: "firstVisual", ingoreDirty: "ingoreDirty", line: "line", errors: "errors" }, host: { properties: { "class.ant-row": "true", "class.se__container": "true", "class.se__horizontal": "nzLayout === 'horizontal'", "class.se__vertical": "nzLayout === 'vertical'", "class.se__inline": "nzLayout === 'inline'", "class.se__compact": "size === 'compact'", "style.margin-left.px": "margin", "style.margin-right.px": "margin" } }, exportAs: ["seContainer"], ngImport: i0, template: `
68
68
  <div se-title *ngIf="title">
69
69
  <ng-container *nzStringTemplateOutlet="title">{{ title }}</ng-container>
70
70
  </div>
@@ -91,7 +91,7 @@ __decorate([
91
91
  __decorate([
92
92
  InputBoolean()
93
93
  ], SEContainerComponent.prototype, "line", void 0);
94
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SEContainerComponent, decorators: [{
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SEContainerComponent, decorators: [{
95
95
  type: Component,
96
96
  args: [{
97
97
  selector: 'se-container, [se-container]',
@@ -161,9 +161,9 @@ class SETitleComponent {
161
161
  this.setClass();
162
162
  }
163
163
  }
164
- SETitleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SETitleComponent, deps: [{ token: SEContainerComponent, host: true, optional: true }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
165
- SETitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: SETitleComponent, selector: "se-title, [se-title]", host: { properties: { "class.se__title": "true" } }, exportAs: ["seTitle"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
166
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SETitleComponent, decorators: [{
164
+ SETitleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SETitleComponent, deps: [{ token: SEContainerComponent, host: true, optional: true }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
165
+ SETitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: SETitleComponent, selector: "se-title, [se-title]", host: { properties: { "class.se__title": "true" } }, exportAs: ["seTitle"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
166
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SETitleComponent, decorators: [{
167
167
  type: Component,
168
168
  args: [{
169
169
  selector: 'se-title, [se-title]',
@@ -192,7 +192,7 @@ class SEComponent {
192
192
  this.rep = rep;
193
193
  this.ren = ren;
194
194
  this.cdr = cdr;
195
- this.unsubscribe$ = new Subject();
195
+ this.destroy$ = new Subject();
196
196
  this.clsMap = [];
197
197
  this.inited = false;
198
198
  this.onceFlag = false;
@@ -214,7 +214,7 @@ class SEComponent {
214
214
  }
215
215
  this.el = el.nativeElement;
216
216
  parent.errorNotify
217
- .pipe(takeUntil(this.unsubscribe$), filter(w => this.inited && this.ngControl != null && this.ngControl.name === w.name))
217
+ .pipe(takeUntil(this.destroy$), filter(w => this.inited && this.ngControl != null && this.ngControl.name === w.name))
218
218
  .subscribe(item => {
219
219
  this.error = item.error;
220
220
  this.updateStatus(this.ngControl.invalid);
@@ -260,9 +260,7 @@ class SEComponent {
260
260
  if (!this.ngControl || this.isBindModel)
261
261
  return;
262
262
  this.isBindModel = true;
263
- this.ngControl
264
- .statusChanges.pipe(takeUntil(this.unsubscribe$))
265
- .subscribe(res => this.updateStatus(res === 'INVALID'));
263
+ this.ngControl.statusChanges.pipe(takeUntil(this.destroy$)).subscribe(res => this.updateStatus(res === 'INVALID'));
266
264
  if (this._autoId) {
267
265
  const controlAccessor = this.ngControl.valueAccessor;
268
266
  const control = (_a = ((controlAccessor === null || controlAccessor === void 0 ? void 0 : controlAccessor.elementRef) || (controlAccessor === null || controlAccessor === void 0 ? void 0 : controlAccessor._elementRef))) === null || _a === void 0 ? void 0 : _a.nativeElement;
@@ -328,13 +326,13 @@ class SEComponent {
328
326
  }
329
327
  }
330
328
  ngOnDestroy() {
331
- const { unsubscribe$ } = this;
332
- unsubscribe$.next();
333
- unsubscribe$.complete();
329
+ const { destroy$ } = this;
330
+ destroy$.next();
331
+ destroy$.complete();
334
332
  }
335
333
  }
336
- SEComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SEComponent, deps: [{ token: i0.ElementRef }, { token: SEContainerComponent, host: true, optional: true }, { token: i2.ResponsiveService }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
337
- SEComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: SEComponent, selector: "se", inputs: { optional: "optional", optionalHelp: "optionalHelp", optionalHelpColor: "optionalHelpColor", error: "error", extra: "extra", label: "label", col: "col", required: "required", controlClass: "controlClass", line: "line", labelWidth: "labelWidth", noColon: "noColon", hideLabel: "hideLabel", id: "id" }, host: { properties: { "style.padding-left.px": "paddingValue", "style.padding-right.px": "paddingValue", "class.se__hide-label": "hideLabel", "class.ant-form-item-has-error": "invalid", "class.ant-form-item-with-help": "showErr" } }, queries: [{ propertyName: "ngModel", first: true, predicate: NgModel, descendants: true, static: true }, { propertyName: "formControlName", first: true, predicate: FormControlName, descendants: true, static: true }], viewQueries: [{ propertyName: "contentElement", first: true, predicate: ["contentElement"], descendants: true, static: true }], exportAs: ["se"], usesOnChanges: true, ngImport: i0, template: "<div class=\"ant-form-item-label\" [class.se__nolabel]=\"hideLabel || !label\" [style.width.px]=\"_labelWidth\">\n <label\n *ngIf=\"label\"\n [attr.for]=\"_id\"\n class=\"se__label\"\n [ngClass]=\"{ 'ant-form-item-required': required, 'se__no-colon': _noColon }\"\n >\n <span class=\"se__label-text\">\n <ng-container *nzStringTemplateOutlet=\"label\">{{ label }}</ng-container>\n </span>\n <span *ngIf=\"optional || optionalHelp\" class=\"se__label-optional\" [class.se__label-optional-no-text]=\"!optional\">\n <ng-container *nzStringTemplateOutlet=\"optional\">{{ optional }}</ng-container>\n <i\n *ngIf=\"optionalHelp\"\n nz-tooltip\n [nzTooltipTitle]=\"optionalHelp\"\n [nzTooltipColor]=\"optionalHelpColor\"\n nz-icon\n nzType=\"question-circle\"\n ></i>\n </span>\n </label>\n</div>\n<div class=\"ant-form-item-control se__control\">\n <div class=\"ant-form-item-control-input {{ controlClass }}\">\n <div class=\"ant-form-item-control-input-content\" (cdkObserveContent)=\"checkContent()\" #contentElement>\n <ng-content></ng-content>\n </div>\n </div>\n <div class=\"ant-form-item-explain ant-form-item-explain-error\" *ngIf=\"showErr\">\n <div @helpMotion>\n <ng-container *nzStringTemplateOutlet=\"_error\">{{ _error }}</ng-container>\n </div>\n </div>\n <div *ngIf=\"extra && !compact\" class=\"ant-form-item-extra\">\n <ng-container *nzStringTemplateOutlet=\"extra\">{{ extra }}</ng-container>\n </div>\n</div>\n", directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3$1.NzStringTemplateOutletDirective, selector: "[nzStringTemplateOutlet]", inputs: ["nzStringTemplateOutletContext", "nzStringTemplateOutlet"], exportAs: ["nzStringTemplateOutlet"] }, { type: i5.NzTooltipDirective, selector: "[nz-tooltip]", inputs: ["nzTooltipTitle", "nzTooltipTitleContext", "nz-tooltip", "nzTooltipTrigger", "nzTooltipPlacement", "nzTooltipOrigin", "nzTooltipVisible", "nzTooltipMouseEnterDelay", "nzTooltipMouseLeaveDelay", "nzTooltipOverlayClassName", "nzTooltipOverlayStyle", "nzTooltipArrowPointAtCenter", "nzTooltipColor"], outputs: ["nzTooltipVisibleChange"], exportAs: ["nzTooltip"] }, { type: i6.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }], animations: [helpMotion], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
334
+ SEComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SEComponent, deps: [{ token: i0.ElementRef }, { token: SEContainerComponent, host: true, optional: true }, { token: i2.ResponsiveService }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
335
+ SEComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: SEComponent, selector: "se", inputs: { optional: "optional", optionalHelp: "optionalHelp", optionalHelpColor: "optionalHelpColor", error: "error", extra: "extra", label: "label", col: "col", required: "required", controlClass: "controlClass", line: "line", labelWidth: "labelWidth", noColon: "noColon", hideLabel: "hideLabel", id: "id" }, host: { properties: { "style.padding-left.px": "paddingValue", "style.padding-right.px": "paddingValue", "class.se__hide-label": "hideLabel", "class.ant-form-item-has-error": "invalid", "class.ant-form-item-with-help": "showErr" } }, queries: [{ propertyName: "ngModel", first: true, predicate: NgModel, descendants: true, static: true }, { propertyName: "formControlName", first: true, predicate: FormControlName, descendants: true, static: true }], viewQueries: [{ propertyName: "contentElement", first: true, predicate: ["contentElement"], descendants: true, static: true }], exportAs: ["se"], usesOnChanges: true, ngImport: i0, template: "<div class=\"ant-form-item-label\" [class.se__nolabel]=\"hideLabel || !label\" [style.width.px]=\"_labelWidth\">\n <label\n *ngIf=\"label\"\n [attr.for]=\"_id\"\n class=\"se__label\"\n [ngClass]=\"{ 'ant-form-item-required': required, 'se__no-colon': _noColon }\"\n >\n <span class=\"se__label-text\">\n <ng-container *nzStringTemplateOutlet=\"label\">{{ label }}</ng-container>\n </span>\n <span *ngIf=\"optional || optionalHelp\" class=\"se__label-optional\" [class.se__label-optional-no-text]=\"!optional\">\n <ng-container *nzStringTemplateOutlet=\"optional\">{{ optional }}</ng-container>\n <i\n *ngIf=\"optionalHelp\"\n nz-tooltip\n [nzTooltipTitle]=\"optionalHelp\"\n [nzTooltipColor]=\"optionalHelpColor\"\n nz-icon\n nzType=\"question-circle\"\n ></i>\n </span>\n </label>\n</div>\n<div class=\"ant-form-item-control se__control\">\n <div class=\"ant-form-item-control-input {{ controlClass }}\">\n <div class=\"ant-form-item-control-input-content\" (cdkObserveContent)=\"checkContent()\" #contentElement>\n <ng-content></ng-content>\n </div>\n </div>\n <div @helpMotion class=\"ant-form-item-explain ant-form-item-explain-connected\" *ngIf=\"showErr\">\n <div role=\"alert\" class=\"ant-form-item-explain-error\">\n <ng-container *nzStringTemplateOutlet=\"_error\">{{ _error }}</ng-container>\n </div>\n </div>\n <div *ngIf=\"extra && !compact\" class=\"ant-form-item-extra\">\n <ng-container *nzStringTemplateOutlet=\"extra\">{{ extra }}</ng-container>\n </div>\n</div>\n", directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3$1.NzStringTemplateOutletDirective, selector: "[nzStringTemplateOutlet]", inputs: ["nzStringTemplateOutletContext", "nzStringTemplateOutlet"], exportAs: ["nzStringTemplateOutlet"] }, { type: i5.NzTooltipDirective, selector: "[nz-tooltip]", inputs: ["nzTooltipTitle", "nzTooltipTitleContext", "nz-tooltip", "nzTooltipTrigger", "nzTooltipPlacement", "nzTooltipOrigin", "nzTooltipVisible", "nzTooltipMouseEnterDelay", "nzTooltipMouseLeaveDelay", "nzTooltipOverlayClassName", "nzTooltipOverlayStyle", "nzTooltipArrowPointAtCenter", "nzTooltipColor"], outputs: ["nzTooltipVisibleChange"], exportAs: ["nzTooltip"] }, { type: i6.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }], animations: [helpMotion], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
338
336
  __decorate([
339
337
  InputNumber(null)
340
338
  ], SEComponent.prototype, "col", void 0);
@@ -353,7 +351,7 @@ __decorate([
353
351
  __decorate([
354
352
  InputBoolean()
355
353
  ], SEComponent.prototype, "hideLabel", void 0);
356
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SEComponent, decorators: [{
354
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SEComponent, decorators: [{
357
355
  type: Component,
358
356
  args: [{ selector: 'se', exportAs: 'se', host: {
359
357
  '[style.padding-left.px]': 'paddingValue',
@@ -361,7 +359,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
361
359
  '[class.se__hide-label]': 'hideLabel',
362
360
  '[class.ant-form-item-has-error]': 'invalid',
363
361
  '[class.ant-form-item-with-help]': 'showErr'
364
- }, preserveWhitespaces: false, animations: [helpMotion], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"ant-form-item-label\" [class.se__nolabel]=\"hideLabel || !label\" [style.width.px]=\"_labelWidth\">\n <label\n *ngIf=\"label\"\n [attr.for]=\"_id\"\n class=\"se__label\"\n [ngClass]=\"{ 'ant-form-item-required': required, 'se__no-colon': _noColon }\"\n >\n <span class=\"se__label-text\">\n <ng-container *nzStringTemplateOutlet=\"label\">{{ label }}</ng-container>\n </span>\n <span *ngIf=\"optional || optionalHelp\" class=\"se__label-optional\" [class.se__label-optional-no-text]=\"!optional\">\n <ng-container *nzStringTemplateOutlet=\"optional\">{{ optional }}</ng-container>\n <i\n *ngIf=\"optionalHelp\"\n nz-tooltip\n [nzTooltipTitle]=\"optionalHelp\"\n [nzTooltipColor]=\"optionalHelpColor\"\n nz-icon\n nzType=\"question-circle\"\n ></i>\n </span>\n </label>\n</div>\n<div class=\"ant-form-item-control se__control\">\n <div class=\"ant-form-item-control-input {{ controlClass }}\">\n <div class=\"ant-form-item-control-input-content\" (cdkObserveContent)=\"checkContent()\" #contentElement>\n <ng-content></ng-content>\n </div>\n </div>\n <div class=\"ant-form-item-explain ant-form-item-explain-error\" *ngIf=\"showErr\">\n <div @helpMotion>\n <ng-container *nzStringTemplateOutlet=\"_error\">{{ _error }}</ng-container>\n </div>\n </div>\n <div *ngIf=\"extra && !compact\" class=\"ant-form-item-extra\">\n <ng-container *nzStringTemplateOutlet=\"extra\">{{ extra }}</ng-container>\n </div>\n</div>\n" }]
362
+ }, preserveWhitespaces: false, animations: [helpMotion], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"ant-form-item-label\" [class.se__nolabel]=\"hideLabel || !label\" [style.width.px]=\"_labelWidth\">\n <label\n *ngIf=\"label\"\n [attr.for]=\"_id\"\n class=\"se__label\"\n [ngClass]=\"{ 'ant-form-item-required': required, 'se__no-colon': _noColon }\"\n >\n <span class=\"se__label-text\">\n <ng-container *nzStringTemplateOutlet=\"label\">{{ label }}</ng-container>\n </span>\n <span *ngIf=\"optional || optionalHelp\" class=\"se__label-optional\" [class.se__label-optional-no-text]=\"!optional\">\n <ng-container *nzStringTemplateOutlet=\"optional\">{{ optional }}</ng-container>\n <i\n *ngIf=\"optionalHelp\"\n nz-tooltip\n [nzTooltipTitle]=\"optionalHelp\"\n [nzTooltipColor]=\"optionalHelpColor\"\n nz-icon\n nzType=\"question-circle\"\n ></i>\n </span>\n </label>\n</div>\n<div class=\"ant-form-item-control se__control\">\n <div class=\"ant-form-item-control-input {{ controlClass }}\">\n <div class=\"ant-form-item-control-input-content\" (cdkObserveContent)=\"checkContent()\" #contentElement>\n <ng-content></ng-content>\n </div>\n </div>\n <div @helpMotion class=\"ant-form-item-explain ant-form-item-explain-connected\" *ngIf=\"showErr\">\n <div role=\"alert\" class=\"ant-form-item-explain-error\">\n <ng-container *nzStringTemplateOutlet=\"_error\">{{ _error }}</ng-container>\n </div>\n </div>\n <div *ngIf=\"extra && !compact\" class=\"ant-form-item-extra\">\n <ng-container *nzStringTemplateOutlet=\"extra\">{{ extra }}</ng-container>\n </div>\n</div>\n" }]
365
363
  }], ctorParameters: function () {
366
364
  return [{ type: i0.ElementRef }, { type: SEContainerComponent, decorators: [{
367
365
  type: Optional
@@ -410,10 +408,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
410
408
  const COMPONENTS = [SEContainerComponent, SEComponent, SETitleComponent];
411
409
  class SEModule {
412
410
  }
413
- SEModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SEModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
414
- SEModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SEModule, declarations: [SEContainerComponent, SEComponent, SETitleComponent], imports: [CommonModule, NzToolTipModule, NzIconModule, NzOutletModule], exports: [SEContainerComponent, SEComponent, SETitleComponent] });
415
- SEModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SEModule, imports: [[CommonModule, NzToolTipModule, NzIconModule, NzOutletModule]] });
416
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: SEModule, decorators: [{
411
+ SEModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SEModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
412
+ SEModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SEModule, declarations: [SEContainerComponent, SEComponent, SETitleComponent], imports: [CommonModule, NzToolTipModule, NzIconModule, NzOutletModule], exports: [SEContainerComponent, SEComponent, SETitleComponent] });
413
+ SEModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SEModule, imports: [[CommonModule, NzToolTipModule, NzIconModule, NzOutletModule]] });
414
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SEModule, decorators: [{
417
415
  type: NgModule,
418
416
  args: [{
419
417
  imports: [CommonModule, NzToolTipModule, NzIconModule, NzOutletModule],
@@ -1 +1 @@
1
- {"version":3,"file":"se.mjs","sources":["../../../../packages/abc/se/se-container.component.ts","../../../../packages/abc/se/se.component.ts","../../../../packages/abc/se/se.component.html","../../../../packages/abc/se/se.module.ts","../../../../packages/abc/se/se.types.ts","../../../../packages/abc/se/se.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Host,\n Input,\n OnInit,\n Optional,\n Renderer2,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport type { REP_TYPE } from '@delon/theme';\nimport { AlainConfigService } from '@delon/util/config';\nimport { BooleanInput, InputBoolean, InputNumber, NumberInput, toNumber } from '@delon/util/decorator';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { SEErrorRefresh, SELayout } from './se.types';\n\n@Component({\n selector: 'se-container, [se-container]',\n exportAs: 'seContainer',\n template: `\n <div se-title *ngIf=\"title\">\n <ng-container *nzStringTemplateOutlet=\"title\">{{ title }}</ng-container>\n </div>\n <ng-content></ng-content>\n `,\n host: {\n '[class.ant-row]': `true`,\n '[class.se__container]': `true`,\n '[class.se__horizontal]': `nzLayout === 'horizontal'`,\n '[class.se__vertical]': `nzLayout === 'vertical'`,\n '[class.se__inline]': `nzLayout === 'inline'`,\n '[class.se__compact]': `size === 'compact'`,\n '[style.margin-left.px]': `margin`,\n '[style.margin-right.px]': `margin`\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class SEContainerComponent {\n static ngAcceptInputType_gutter: NumberInput;\n static ngAcceptInputType_col: NumberInput;\n static ngAcceptInputType_colInCon: NumberInput;\n static ngAcceptInputType_labelWidth: NumberInput;\n static ngAcceptInputType_firstVisual: BooleanInput;\n static ngAcceptInputType_ingoreDirty: BooleanInput;\n static ngAcceptInputType_line: BooleanInput;\n static ngAcceptInputType_noColon: BooleanInput;\n\n private errorNotify$ = new BehaviorSubject<SEErrorRefresh>(null as NzSafeAny);\n @Input('se-container') @InputNumber(null) colInCon?: REP_TYPE;\n @Input() @InputNumber(null) col!: REP_TYPE;\n @Input() @InputNumber(null) labelWidth!: number;\n @Input() @InputBoolean() noColon = false;\n @Input() title?: string | TemplateRef<void> | null;\n\n @Input()\n get gutter(): number {\n return this.nzLayout === 'horizontal' ? this._gutter : 0;\n }\n set gutter(value: number) {\n this._gutter = toNumber(value);\n }\n private _gutter!: number;\n\n @Input()\n get nzLayout(): SELayout {\n return this._nzLayout;\n }\n set nzLayout(value: SELayout) {\n this._nzLayout = value;\n if (value === 'inline') {\n this.size = 'compact';\n }\n }\n private _nzLayout!: SELayout;\n\n @Input() size!: 'default' | 'compact';\n @Input() @InputBoolean() firstVisual!: boolean;\n @Input() @InputBoolean() ingoreDirty!: boolean;\n @Input() @InputBoolean() line = false;\n @Input()\n set errors(val: SEErrorRefresh[]) {\n this.setErrors(val);\n }\n\n get margin(): number {\n return -((this.gutter as number) / 2);\n }\n\n get errorNotify(): Observable<SEErrorRefresh> {\n return this.errorNotify$.pipe(filter(v => v != null));\n }\n\n constructor(configSrv: AlainConfigService) {\n configSrv.attach(this, 'se', {\n size: 'default',\n nzLayout: 'horizontal',\n gutter: 32,\n col: 2,\n labelWidth: 150,\n firstVisual: false,\n ingoreDirty: false\n });\n }\n\n setErrors(errors: SEErrorRefresh[]): void {\n for (const error of errors) {\n this.errorNotify$.next(error);\n }\n }\n}\n\n@Component({\n selector: 'se-title, [se-title]',\n exportAs: 'seTitle',\n template: '<ng-content></ng-content>',\n host: {\n '[class.se__title]': 'true'\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class SETitleComponent implements OnInit {\n private el: HTMLElement;\n constructor(\n @Host()\n @Optional()\n private parent: SEContainerComponent,\n el: ElementRef,\n private ren: Renderer2\n ) {\n if (parent == null) {\n throw new Error(`[se-title] must include 'se-container' component`);\n }\n this.el = el.nativeElement;\n }\n\n private setClass(): void {\n const { el } = this;\n const gutter = this.parent.gutter as number;\n this.ren.setStyle(el, 'padding-left', `${gutter / 2}px`);\n this.ren.setStyle(el, 'padding-right', `${gutter / 2}px`);\n }\n\n ngOnInit(): void {\n this.setClass();\n }\n}\n","import {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ElementRef,\n Host,\n Input,\n OnChanges,\n OnDestroy,\n Optional,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { FormControlName, NgModel, RequiredValidator, Validator } from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { filter, takeUntil } from 'rxjs/operators';\n\nimport { ResponsiveService } from '@delon/theme';\nimport { isEmpty } from '@delon/util/browser';\nimport { BooleanInput, InputBoolean, InputNumber, NumberInput } from '@delon/util/decorator';\nimport { helpMotion } from 'ng-zorro-antd/core/animation';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { SEContainerComponent } from './se-container.component';\nimport { SEError, SEErrorType } from './se.types';\n\nconst prefixCls = `se`;\nlet nextUniqueId = 0;\n\n@Component({\n selector: 'se',\n exportAs: 'se',\n templateUrl: './se.component.html',\n host: {\n '[style.padding-left.px]': 'paddingValue',\n '[style.padding-right.px]': 'paddingValue',\n '[class.se__hide-label]': 'hideLabel',\n '[class.ant-form-item-has-error]': 'invalid',\n '[class.ant-form-item-with-help]': 'showErr'\n },\n preserveWhitespaces: false,\n animations: [helpMotion],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class SEComponent implements OnChanges, AfterContentInit, AfterViewInit, OnDestroy {\n static ngAcceptInputType_col: NumberInput;\n static ngAcceptInputType_required: BooleanInput;\n static ngAcceptInputType_line: BooleanInput;\n static ngAcceptInputType_labelWidth: NumberInput;\n static ngAcceptInputType_noColon: BooleanInput;\n static ngAcceptInputType_hideLabel: BooleanInput;\n\n private el: HTMLElement;\n private unsubscribe$ = new Subject<void>();\n @ContentChild(NgModel, { static: true }) private readonly ngModel?: NgModel;\n @ContentChild(FormControlName, { static: true })\n private readonly formControlName?: FormControlName;\n @ViewChild('contentElement', { static: true }) private readonly contentElement!: ElementRef;\n private clsMap: string[] = [];\n private inited = false;\n private onceFlag = false;\n private errorData: SEError = {};\n private isBindModel = false;\n invalid = false;\n _labelWidth: number | null = null;\n _noColon: boolean | null = null;\n _error?: string | TemplateRef<void>;\n\n // #region fields\n\n @Input() optional?: string | TemplateRef<void> | null = null;\n @Input() optionalHelp?: string | TemplateRef<void> | null = null;\n @Input() optionalHelpColor?: string;\n @Input()\n set error(val: SEErrorType) {\n this.errorData = typeof val === 'string' || val instanceof TemplateRef ? { '': val } : val;\n }\n @Input() extra?: string | TemplateRef<void> | null;\n @Input() label?: string | TemplateRef<void> | null;\n @Input() @InputNumber(null) col?: number | null;\n @Input() @InputBoolean() required = false;\n @Input() controlClass?: string | null = '';\n @Input() @InputBoolean(null) line?: boolean | null;\n @Input() @InputNumber(null) labelWidth?: number | null;\n @Input() @InputBoolean(null) noColon?: boolean | null;\n @Input() @InputBoolean() hideLabel = false;\n\n @Input()\n set id(value: string) {\n this._id = value;\n this._autoId = false;\n }\n\n _id = `_se-${++nextUniqueId}`;\n _autoId = true;\n\n // #endregion\n\n get paddingValue(): number {\n return (this.parent.gutter as number) / 2;\n }\n\n get showErr(): boolean {\n return this.invalid && !!this._error && !this.compact;\n }\n\n get compact(): boolean {\n return this.parent.size === 'compact';\n }\n\n private get ngControl(): NgModel | FormControlName | null | undefined {\n return this.ngModel || this.formControlName;\n }\n\n constructor(\n el: ElementRef,\n @Optional() @Host() private parent: SEContainerComponent,\n private rep: ResponsiveService,\n private ren: Renderer2,\n private cdr: ChangeDetectorRef\n ) {\n if (parent == null) {\n throw new Error(`[se] must include 'se-container' component`);\n }\n this.el = el.nativeElement;\n parent.errorNotify\n .pipe(\n takeUntil(this.unsubscribe$),\n filter(w => this.inited && this.ngControl != null && this.ngControl.name === w.name)\n )\n .subscribe(item => {\n this.error = item.error;\n this.updateStatus(this.ngControl!.invalid!);\n });\n }\n\n private setClass(): this {\n const { el, ren, clsMap, col, parent, cdr, line, labelWidth, rep, noColon } = this;\n this._noColon = noColon != null ? noColon : parent.noColon;\n this._labelWidth = parent.nzLayout === 'horizontal' ? (labelWidth != null ? labelWidth : parent.labelWidth) : null;\n clsMap.forEach(cls => ren.removeClass(el, cls));\n clsMap.length = 0;\n const repCls =\n parent.nzLayout === 'horizontal' ? rep.genCls(col != null ? col : parent.colInCon || parent.col) : [];\n clsMap.push(`ant-form-item`, ...repCls, `${prefixCls}__item`);\n if (line || parent.line) {\n clsMap.push(`${prefixCls}__line`);\n }\n clsMap.forEach(cls => ren.addClass(el, cls));\n cdr.detectChanges();\n return this;\n }\n\n private bindModel(): void {\n if (!this.ngControl || this.isBindModel) return;\n\n this.isBindModel = true;\n this.ngControl\n .statusChanges!.pipe(takeUntil(this.unsubscribe$))\n .subscribe(res => this.updateStatus(res === 'INVALID'));\n if (this._autoId) {\n const controlAccessor = this.ngControl.valueAccessor as NzSafeAny;\n const control = (controlAccessor?.elementRef || controlAccessor?._elementRef)?.nativeElement as HTMLElement;\n if (!!control) {\n if (control.id) {\n this._id = control.id;\n } else {\n control.id = this._id;\n }\n }\n }\n // auto required\n if (this.required !== true) {\n const rawValidators = (this.ngControl as NzSafeAny)?._rawValidators as Validator[];\n this.required = rawValidators.find(w => w instanceof RequiredValidator) != null;\n this.cdr.detectChanges();\n }\n }\n\n private updateStatus(invalid: boolean): void {\n if (this.ngControl?.disabled || this.ngControl?.isDisabled) {\n return;\n }\n this.invalid =\n !this.onceFlag && invalid && this.parent.ingoreDirty === false && !this.ngControl?.dirty ? false : invalid;\n const errors = this.ngControl?.errors;\n if (errors != null && Object.keys(errors).length > 0) {\n const key = Object.keys(errors)[0] || '';\n const err = this.errorData[key];\n this._error = err != null ? err : this.errorData[''] || '';\n }\n\n this.cdr.detectChanges();\n }\n\n checkContent(): void {\n const el = this.contentElement.nativeElement;\n const cls = `${prefixCls}__item-empty`;\n if (isEmpty(el)) {\n this.ren.addClass(el, cls);\n } else {\n this.ren.removeClass(el, cls);\n }\n }\n\n ngAfterContentInit(): void {\n this.checkContent();\n }\n\n ngOnChanges(): void {\n this.onceFlag = this.parent.firstVisual;\n if (this.inited) {\n this.setClass().bindModel();\n }\n }\n\n ngAfterViewInit(): void {\n this.setClass().bindModel();\n this.inited = true;\n if (this.onceFlag) {\n Promise.resolve().then(() => {\n this.updateStatus(this.ngControl?.invalid!);\n this.onceFlag = false;\n });\n }\n }\n\n ngOnDestroy(): void {\n const { unsubscribe$ } = this;\n unsubscribe$.next();\n unsubscribe$.complete();\n }\n}\n","<div class=\"ant-form-item-label\" [class.se__nolabel]=\"hideLabel || !label\" [style.width.px]=\"_labelWidth\">\n <label\n *ngIf=\"label\"\n [attr.for]=\"_id\"\n class=\"se__label\"\n [ngClass]=\"{ 'ant-form-item-required': required, 'se__no-colon': _noColon }\"\n >\n <span class=\"se__label-text\">\n <ng-container *nzStringTemplateOutlet=\"label\">{{ label }}</ng-container>\n </span>\n <span *ngIf=\"optional || optionalHelp\" class=\"se__label-optional\" [class.se__label-optional-no-text]=\"!optional\">\n <ng-container *nzStringTemplateOutlet=\"optional\">{{ optional }}</ng-container>\n <i\n *ngIf=\"optionalHelp\"\n nz-tooltip\n [nzTooltipTitle]=\"optionalHelp\"\n [nzTooltipColor]=\"optionalHelpColor\"\n nz-icon\n nzType=\"question-circle\"\n ></i>\n </span>\n </label>\n</div>\n<div class=\"ant-form-item-control se__control\">\n <div class=\"ant-form-item-control-input {{ controlClass }}\">\n <div class=\"ant-form-item-control-input-content\" (cdkObserveContent)=\"checkContent()\" #contentElement>\n <ng-content></ng-content>\n </div>\n </div>\n <div class=\"ant-form-item-explain ant-form-item-explain-error\" *ngIf=\"showErr\">\n <div @helpMotion>\n <ng-container *nzStringTemplateOutlet=\"_error\">{{ _error }}</ng-container>\n </div>\n </div>\n <div *ngIf=\"extra && !compact\" class=\"ant-form-item-extra\">\n <ng-container *nzStringTemplateOutlet=\"extra\">{{ extra }}</ng-container>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzToolTipModule } from 'ng-zorro-antd/tooltip';\n\nimport { SEContainerComponent, SETitleComponent } from './se-container.component';\nimport { SEComponent } from './se.component';\n\nconst COMPONENTS = [SEContainerComponent, SEComponent, SETitleComponent];\n\n@NgModule({\n imports: [CommonModule, NzToolTipModule, NzIconModule, NzOutletModule],\n declarations: COMPONENTS,\n exports: COMPONENTS\n})\nexport class SEModule {}\n","import { TemplateRef } from '@angular/core';\n\nexport type SELayout = 'horizontal' | 'vertical' | 'inline';\n\nexport type SESize = 'default' | 'compact';\n\nexport type SEErrorType = string | TemplateRef<void> | SEError;\n\nexport interface SEError {\n [key: string]: string | TemplateRef<void>;\n}\n\nexport interface SEErrorRefresh {\n name: string;\n error: SEErrorType;\n}\n\n// /**\n// * Error collection\n// * - `name`: The value of` ngModel` or `formControlName`\n// * - `error`: Replaced error value\n// */\n// errors: Array<{ name: string; error: SEErrorType }>;\n// /**\n// * Whether force show error, even if the form component has not invalid, Default: `false`\n// * - `false`: Whether to display error by `invalid`\n// * - `true`: Force show display error\n// */\n// force?: boolean;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;MA6Ca,oBAAoB;IAuD/B,YAAY,SAA6B;QA7CjC,iBAAY,GAAG,IAAI,eAAe,CAAiB,IAAiB,CAAC,CAAC;QAIrD,YAAO,GAAG,KAAK,CAAC;QA2BhB,SAAI,GAAG,KAAK,CAAC;QAepC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE;YAC3B,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,YAAY;YACtB,MAAM,EAAE,EAAE;YACV,GAAG,EAAE,CAAC;YACN,UAAU,EAAE,GAAG;YACf,WAAW,EAAE,KAAK;YAClB,WAAW,EAAE,KAAK;SACnB,CAAC,CAAC;KACJ;IAhDD,IACI,MAAM;QACR,OAAO,IAAI,CAAC,QAAQ,KAAK,YAAY,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;KAC1D;IACD,IAAI,MAAM,CAAC,KAAa;QACtB,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;KAChC;IAGD,IACI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;IACD,IAAI,QAAQ,CAAC,KAAe;QAC1B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,KAAK,KAAK,QAAQ,EAAE;YACtB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;SACvB;KACF;IAOD,IACI,MAAM,CAAC,GAAqB;QAC9B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;KACrB;IAED,IAAI,MAAM;QACR,OAAO,EAAG,IAAI,CAAC,MAAiB,GAAG,CAAC,CAAC,CAAC;KACvC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;KACvD;IAcD,SAAS,CAAC,MAAwB;QAChC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;YAC1B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC/B;KACF;;iHAvEU,oBAAoB;qGAApB,oBAAoB,gsBApBrB;;;;;GAKT,0EAoGU,gBAAgB;AA1Ee;IAAlB,WAAW,CAAC,IAAI,CAAC;sDAAqB;AAClC;IAAlB,WAAW,CAAC,IAAI,CAAC;iDAAgB;AACf;IAAlB,WAAW,CAAC,IAAI,CAAC;wDAAqB;AACvB;IAAf,YAAY,EAAE;qDAAiB;AAyBhB;IAAf,YAAY,EAAE;yDAAuB;AACtB;IAAf,YAAY,EAAE;yDAAuB;AACtB;IAAf,YAAY,EAAE;kDAAc;2FAzC3B,oBAAoB;kBAvBhC,SAAS;mBAAC;oBACT,QAAQ,EAAE,8BAA8B;oBACxC,QAAQ,EAAE,aAAa;oBACvB,QAAQ,EAAE;;;;;GAKT;oBACD,IAAI,EAAE;wBACJ,iBAAiB,EAAE,MAAM;wBACzB,uBAAuB,EAAE,MAAM;wBAC/B,wBAAwB,EAAE,2BAA2B;wBACrD,sBAAsB,EAAE,yBAAyB;wBACjD,oBAAoB,EAAE,uBAAuB;wBAC7C,qBAAqB,EAAE,oBAAoB;wBAC3C,wBAAwB,EAAE,QAAQ;wBAClC,yBAAyB,EAAE,QAAQ;qBACpC;oBACD,mBAAmB,EAAE,KAAK;oBAC1B,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;iBACtC;yGAY2C,QAAQ;sBAAjD,KAAK;uBAAC,cAAc;gBACO,GAAG;sBAA9B,KAAK;gBACsB,UAAU;sBAArC,KAAK;gBACmB,OAAO;sBAA/B,KAAK;gBACG,KAAK;sBAAb,KAAK;gBAGF,MAAM;sBADT,KAAK;gBAUF,QAAQ;sBADX,KAAK;gBAYG,IAAI;sBAAZ,KAAK;gBACmB,WAAW;sBAAnC,KAAK;gBACmB,WAAW;sBAAnC,KAAK;gBACmB,IAAI;sBAA5B,KAAK;gBAEF,MAAM;sBADT,KAAK;;MA2CK,gBAAgB;IAE3B,YAGU,MAA4B,EACpC,EAAc,EACN,GAAc;QAFd,WAAM,GAAN,MAAM,CAAsB;QAE5B,QAAG,GAAH,GAAG,CAAW;QAEtB,IAAI,MAAM,IAAI,IAAI,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;SACrE;QACD,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC;KAC5B;IAEO,QAAQ;QACd,MAAM,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAgB,CAAC;QAC5C,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,cAAc,EAAE,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;QACzD,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,eAAe,EAAE,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;KAC3D;IAED,QAAQ;QACN,IAAI,CAAC,QAAQ,EAAE,CAAC;KACjB;;6GAxBU,gBAAgB,kBAKT,oBAAoB;iGAL3B,gBAAgB,wIARjB,2BAA2B;2FAQ1B,gBAAgB;kBAX5B,SAAS;mBAAC;oBACT,QAAQ,EAAE,sBAAsB;oBAChC,QAAQ,EAAE,SAAS;oBACnB,QAAQ,EAAE,2BAA2B;oBACrC,IAAI,EAAE;wBACJ,mBAAmB,EAAE,MAAM;qBAC5B;oBACD,mBAAmB,EAAE,KAAK;oBAC1B,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;iBACtC;;wBAMmB,oBAAoB;8BAFnC,IAAI;;8BACJ,QAAQ;;;;ACvGb,MAAM,SAAS,GAAG,IAAI,CAAC;AACvB,IAAI,YAAY,GAAG,CAAC,CAAC;MAkBR,WAAW;IAsEtB,YACE,EAAc,EACc,MAA4B,EAChD,GAAsB,EACtB,GAAc,EACd,GAAsB;QAHF,WAAM,GAAN,MAAM,CAAsB;QAChD,QAAG,GAAH,GAAG,CAAmB;QACtB,QAAG,GAAH,GAAG,CAAW;QACd,QAAG,GAAH,GAAG,CAAmB;QAlExB,iBAAY,GAAG,IAAI,OAAO,EAAQ,CAAC;QAKnC,WAAM,GAAa,EAAE,CAAC;QACtB,WAAM,GAAG,KAAK,CAAC;QACf,aAAQ,GAAG,KAAK,CAAC;QACjB,cAAS,GAAY,EAAE,CAAC;QACxB,gBAAW,GAAG,KAAK,CAAC;QAC5B,YAAO,GAAG,KAAK,CAAC;QAChB,gBAAW,GAAkB,IAAI,CAAC;QAClC,aAAQ,GAAmB,IAAI,CAAC;;QAKvB,aAAQ,GAAuC,IAAI,CAAC;QACpD,iBAAY,GAAuC,IAAI,CAAC;QASxC,aAAQ,GAAG,KAAK,CAAC;QACjC,iBAAY,GAAmB,EAAE,CAAC;QAIlB,cAAS,GAAG,KAAK,CAAC;QAQ3C,QAAG,GAAG,OAAO,EAAE,YAAY,EAAE,CAAC;QAC9B,YAAO,GAAG,IAAI,CAAC;QA2Bb,IAAI,MAAM,IAAI,IAAI,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;SAC/D;QACD,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC;QAC3B,MAAM,CAAC,WAAW;aACf,IAAI,CACH,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,EAC5B,MAAM,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CACrF;aACA,SAAS,CAAC,IAAI;YACb,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACxB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAU,CAAC,OAAQ,CAAC,CAAC;SAC7C,CAAC,CAAC;KACN;IA7DD,IACI,KAAK,CAAC,GAAgB;QACxB,IAAI,CAAC,SAAS,GAAG,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,YAAY,WAAW,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC;KAC5F;IAWD,IACI,EAAE,CAAC,KAAa;QAClB,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;KACtB;;IAOD,IAAI,YAAY;QACd,OAAQ,IAAI,CAAC,MAAM,CAAC,MAAiB,GAAG,CAAC,CAAC;KAC3C;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;KACvD;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC;KACvC;IAED,IAAY,SAAS;QACnB,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,eAAe,CAAC;KAC7C;IAwBO,QAAQ;QACd,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QACnF,IAAI,CAAC,QAAQ,GAAG,OAAO,IAAI,IAAI,GAAG,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC3D,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,QAAQ,KAAK,YAAY,IAAI,UAAU,IAAI,IAAI,GAAG,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,IAAI,CAAC;QACnH,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QAChD,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAClB,MAAM,MAAM,GACV,MAAM,CAAC,QAAQ,KAAK,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,GAAG,GAAG,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QACxG,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,MAAM,EAAE,GAAG,SAAS,QAAQ,CAAC,CAAC;QAC9D,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE;YACvB,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,QAAQ,CAAC,CAAC;SACnC;QACD,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QAC7C,GAAG,CAAC,aAAa,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;KACb;IAEO,SAAS;;QACf,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO;QAEhD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS;aACX,aAAc,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aACjD,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC;QAC1D,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,aAA0B,CAAC;YAClE,MAAM,OAAO,GAAG,OAAC,CAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,UAAU,MAAI,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,WAAW,CAAA,CAAC,0CAAE,aAA4B,CAAC;YAC5G,IAAI,CAAC,CAAC,OAAO,EAAE;gBACb,IAAI,OAAO,CAAC,EAAE,EAAE;oBACd,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,EAAE,CAAC;iBACvB;qBAAM;oBACL,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;iBACvB;aACF;SACF;;QAED,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;YAC1B,MAAM,aAAa,GAAI,MAAA,IAAI,CAAC,SAAuB,0CAAE,cAA6B,CAAC;YACnF,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,iBAAiB,CAAC,IAAI,IAAI,CAAC;YAChF,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;SAC1B;KACF;IAEO,YAAY,CAAC,OAAgB;;QACnC,IAAI,CAAA,MAAA,IAAI,CAAC,SAAS,0CAAE,QAAQ,MAAI,MAAA,IAAI,CAAC,SAAS,0CAAE,UAAU,CAAA,EAAE;YAC1D,OAAO;SACR;QACD,IAAI,CAAC,OAAO;YACV,CAAC,IAAI,CAAC,QAAQ,IAAI,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,KAAK,KAAK,IAAI,EAAC,MAAA,IAAI,CAAC,SAAS,0CAAE,KAAK,CAAA,GAAG,KAAK,GAAG,OAAO,CAAC;QAC7G,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,SAAS,0CAAE,MAAM,CAAC;QACtC,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YACpD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACzC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,CAAC,MAAM,GAAG,GAAG,IAAI,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;SAC5D;QAED,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAED,YAAY;QACV,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;QAC7C,MAAM,GAAG,GAAG,GAAG,SAAS,cAAc,CAAC;QACvC,IAAI,OAAO,CAAC,EAAE,CAAC,EAAE;YACf,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;SAC5B;aAAM;YACL,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;SAC/B;KACF;IAED,kBAAkB;QAChB,IAAI,CAAC,YAAY,EAAE,CAAC;KACrB;IAED,WAAW;QACT,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACxC,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,IAAI,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,CAAC;SAC7B;KACF;IAED,eAAe;QACb,IAAI,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC;;gBACrB,IAAI,CAAC,YAAY,CAAC,MAAA,IAAI,CAAC,SAAS,0CAAE,OAAQ,CAAC,CAAC;gBAC5C,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;aACvB,CAAC,CAAC;SACJ;KACF;IAED,WAAW;QACT,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;QAC9B,YAAY,CAAC,IAAI,EAAE,CAAC;QACpB,YAAY,CAAC,QAAQ,EAAE,CAAC;KACzB;;wGA3LU,WAAW;4FAAX,WAAW,+mBAUR,OAAO,gGACP,eAAe,qOC7D/B,2gDAsCA,q8BDQc,CAAC,UAAU,CAAC;AAuCI;IAAlB,WAAW,CAAC,IAAI,CAAC;wCAAqB;AACvB;IAAf,YAAY,EAAE;6CAAkB;AAEb;IAAnB,YAAY,CAAC,IAAI,CAAC;yCAAuB;AACvB;IAAlB,WAAW,CAAC,IAAI,CAAC;+CAA4B;AAC1B;IAAnB,YAAY,CAAC,IAAI,CAAC;4CAA0B;AAC7B;IAAf,YAAY,EAAE;8CAAmB;2FAzChC,WAAW;kBAhBvB,SAAS;+BACE,IAAI,YACJ,IAAI,QAER;wBACJ,yBAAyB,EAAE,cAAc;wBACzC,0BAA0B,EAAE,cAAc;wBAC1C,wBAAwB,EAAE,WAAW;wBACrC,iCAAiC,EAAE,SAAS;wBAC5C,iCAAiC,EAAE,SAAS;qBAC7C,uBACoB,KAAK,cACd,CAAC,UAAU,CAAC,mBACP,uBAAuB,CAAC,MAAM,iBAChC,iBAAiB,CAAC,IAAI;;;8BA0ElC,QAAQ;;8BAAI,IAAI;;yBA9DuC,OAAO;sBAAhE,YAAY;uBAAC,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAEtB,eAAe;sBAD/B,YAAY;uBAAC,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAEiB,cAAc;sBAA7E,SAAS;uBAAC,gBAAgB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAapC,QAAQ;sBAAhB,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACG,iBAAiB;sBAAzB,KAAK;gBAEF,KAAK;sBADR,KAAK;gBAIG,KAAK;sBAAb,KAAK;gBACG,KAAK;sBAAb,KAAK;gBACsB,GAAG;sBAA9B,KAAK;gBACmB,QAAQ;sBAAhC,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACuB,IAAI;sBAAhC,KAAK;gBACsB,UAAU;sBAArC,KAAK;gBACuB,OAAO;sBAAnC,KAAK;gBACmB,SAAS;sBAAjC,KAAK;gBAGF,EAAE;sBADL,KAAK;;;AEnFR,MAAM,UAAU,GAAG,CAAC,oBAAoB,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC;MAO5D,QAAQ;;qGAAR,QAAQ;sGAAR,QAAQ,iBAPD,oBAAoB,EAAE,WAAW,EAAE,gBAAgB,aAG3D,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,aAHnD,oBAAoB,EAAE,WAAW,EAAE,gBAAgB;sGAO1D,QAAQ,YAJV,CAAC,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,CAAC;2FAI3D,QAAQ;kBALpB,QAAQ;mBAAC;oBACR,OAAO,EAAE,CAAC,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,CAAC;oBACtE,YAAY,EAAE,UAAU;oBACxB,OAAO,EAAE,UAAU;iBACpB;;;ACCD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;;;;;;"}
1
+ {"version":3,"file":"se.mjs","sources":["../../../../packages/abc/se/se-container.component.ts","../../../../packages/abc/se/se.component.ts","../../../../packages/abc/se/se.component.html","../../../../packages/abc/se/se.module.ts","../../../../packages/abc/se/se.types.ts","../../../../packages/abc/se/se.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Host,\n Input,\n OnInit,\n Optional,\n Renderer2,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport type { REP_TYPE } from '@delon/theme';\nimport { AlainConfigService } from '@delon/util/config';\nimport { BooleanInput, InputBoolean, InputNumber, NumberInput, toNumber } from '@delon/util/decorator';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { SEErrorRefresh, SELayout } from './se.types';\n\n@Component({\n selector: 'se-container, [se-container]',\n exportAs: 'seContainer',\n template: `\n <div se-title *ngIf=\"title\">\n <ng-container *nzStringTemplateOutlet=\"title\">{{ title }}</ng-container>\n </div>\n <ng-content></ng-content>\n `,\n host: {\n '[class.ant-row]': `true`,\n '[class.se__container]': `true`,\n '[class.se__horizontal]': `nzLayout === 'horizontal'`,\n '[class.se__vertical]': `nzLayout === 'vertical'`,\n '[class.se__inline]': `nzLayout === 'inline'`,\n '[class.se__compact]': `size === 'compact'`,\n '[style.margin-left.px]': `margin`,\n '[style.margin-right.px]': `margin`\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class SEContainerComponent {\n static ngAcceptInputType_gutter: NumberInput;\n static ngAcceptInputType_col: NumberInput;\n static ngAcceptInputType_colInCon: NumberInput;\n static ngAcceptInputType_labelWidth: NumberInput;\n static ngAcceptInputType_firstVisual: BooleanInput;\n static ngAcceptInputType_ingoreDirty: BooleanInput;\n static ngAcceptInputType_line: BooleanInput;\n static ngAcceptInputType_noColon: BooleanInput;\n\n private errorNotify$ = new BehaviorSubject<SEErrorRefresh>(null as NzSafeAny);\n @Input('se-container') @InputNumber(null) colInCon?: REP_TYPE;\n @Input() @InputNumber(null) col!: REP_TYPE;\n @Input() @InputNumber(null) labelWidth!: number;\n @Input() @InputBoolean() noColon = false;\n @Input() title?: string | TemplateRef<void> | null;\n\n @Input()\n get gutter(): number {\n return this.nzLayout === 'horizontal' ? this._gutter : 0;\n }\n set gutter(value: number) {\n this._gutter = toNumber(value);\n }\n private _gutter!: number;\n\n @Input()\n get nzLayout(): SELayout {\n return this._nzLayout;\n }\n set nzLayout(value: SELayout) {\n this._nzLayout = value;\n if (value === 'inline') {\n this.size = 'compact';\n }\n }\n private _nzLayout!: SELayout;\n\n @Input() size!: 'default' | 'compact';\n @Input() @InputBoolean() firstVisual!: boolean;\n @Input() @InputBoolean() ingoreDirty!: boolean;\n @Input() @InputBoolean() line = false;\n @Input()\n set errors(val: SEErrorRefresh[]) {\n this.setErrors(val);\n }\n\n get margin(): number {\n return -((this.gutter as number) / 2);\n }\n\n get errorNotify(): Observable<SEErrorRefresh> {\n return this.errorNotify$.pipe(filter(v => v != null));\n }\n\n constructor(configSrv: AlainConfigService) {\n configSrv.attach(this, 'se', {\n size: 'default',\n nzLayout: 'horizontal',\n gutter: 32,\n col: 2,\n labelWidth: 150,\n firstVisual: false,\n ingoreDirty: false\n });\n }\n\n setErrors(errors: SEErrorRefresh[]): void {\n for (const error of errors) {\n this.errorNotify$.next(error);\n }\n }\n}\n\n@Component({\n selector: 'se-title, [se-title]',\n exportAs: 'seTitle',\n template: '<ng-content></ng-content>',\n host: {\n '[class.se__title]': 'true'\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class SETitleComponent implements OnInit {\n private el: HTMLElement;\n constructor(\n @Host()\n @Optional()\n private parent: SEContainerComponent,\n el: ElementRef,\n private ren: Renderer2\n ) {\n if (parent == null) {\n throw new Error(`[se-title] must include 'se-container' component`);\n }\n this.el = el.nativeElement;\n }\n\n private setClass(): void {\n const { el } = this;\n const gutter = this.parent.gutter as number;\n this.ren.setStyle(el, 'padding-left', `${gutter / 2}px`);\n this.ren.setStyle(el, 'padding-right', `${gutter / 2}px`);\n }\n\n ngOnInit(): void {\n this.setClass();\n }\n}\n","import {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ElementRef,\n Host,\n Input,\n OnChanges,\n OnDestroy,\n Optional,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { FormControlName, NgModel, RequiredValidator, Validator } from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { filter, takeUntil } from 'rxjs/operators';\n\nimport { ResponsiveService } from '@delon/theme';\nimport { isEmpty } from '@delon/util/browser';\nimport { BooleanInput, InputBoolean, InputNumber, NumberInput } from '@delon/util/decorator';\nimport { helpMotion } from 'ng-zorro-antd/core/animation';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { SEContainerComponent } from './se-container.component';\nimport { SEError, SEErrorType } from './se.types';\n\nconst prefixCls = `se`;\nlet nextUniqueId = 0;\n\n@Component({\n selector: 'se',\n exportAs: 'se',\n templateUrl: './se.component.html',\n host: {\n '[style.padding-left.px]': 'paddingValue',\n '[style.padding-right.px]': 'paddingValue',\n '[class.se__hide-label]': 'hideLabel',\n '[class.ant-form-item-has-error]': 'invalid',\n '[class.ant-form-item-with-help]': 'showErr'\n },\n preserveWhitespaces: false,\n animations: [helpMotion],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class SEComponent implements OnChanges, AfterContentInit, AfterViewInit, OnDestroy {\n static ngAcceptInputType_col: NumberInput;\n static ngAcceptInputType_required: BooleanInput;\n static ngAcceptInputType_line: BooleanInput;\n static ngAcceptInputType_labelWidth: NumberInput;\n static ngAcceptInputType_noColon: BooleanInput;\n static ngAcceptInputType_hideLabel: BooleanInput;\n\n private el: HTMLElement;\n private destroy$ = new Subject<void>();\n @ContentChild(NgModel, { static: true }) private readonly ngModel?: NgModel;\n @ContentChild(FormControlName, { static: true })\n private readonly formControlName?: FormControlName;\n @ViewChild('contentElement', { static: true }) private readonly contentElement!: ElementRef;\n private clsMap: string[] = [];\n private inited = false;\n private onceFlag = false;\n private errorData: SEError = {};\n private isBindModel = false;\n invalid = false;\n _labelWidth: number | null = null;\n _noColon: boolean | null = null;\n _error?: string | TemplateRef<void>;\n\n // #region fields\n\n @Input() optional?: string | TemplateRef<void> | null = null;\n @Input() optionalHelp?: string | TemplateRef<void> | null = null;\n @Input() optionalHelpColor?: string;\n @Input()\n set error(val: SEErrorType) {\n this.errorData = typeof val === 'string' || val instanceof TemplateRef ? { '': val } : val;\n }\n @Input() extra?: string | TemplateRef<void> | null;\n @Input() label?: string | TemplateRef<void> | null;\n @Input() @InputNumber(null) col?: number | null;\n @Input() @InputBoolean() required = false;\n @Input() controlClass?: string | null = '';\n @Input() @InputBoolean(null) line?: boolean | null;\n @Input() @InputNumber(null) labelWidth?: number | null;\n @Input() @InputBoolean(null) noColon?: boolean | null;\n @Input() @InputBoolean() hideLabel = false;\n\n @Input()\n set id(value: string) {\n this._id = value;\n this._autoId = false;\n }\n\n _id = `_se-${++nextUniqueId}`;\n _autoId = true;\n\n // #endregion\n\n get paddingValue(): number {\n return (this.parent.gutter as number) / 2;\n }\n\n get showErr(): boolean {\n return this.invalid && !!this._error && !this.compact;\n }\n\n get compact(): boolean {\n return this.parent.size === 'compact';\n }\n\n private get ngControl(): NgModel | FormControlName | null | undefined {\n return this.ngModel || this.formControlName;\n }\n\n constructor(\n el: ElementRef,\n @Optional() @Host() private parent: SEContainerComponent,\n private rep: ResponsiveService,\n private ren: Renderer2,\n private cdr: ChangeDetectorRef\n ) {\n if (parent == null) {\n throw new Error(`[se] must include 'se-container' component`);\n }\n this.el = el.nativeElement;\n parent.errorNotify\n .pipe(\n takeUntil(this.destroy$),\n filter(w => this.inited && this.ngControl != null && this.ngControl.name === w.name)\n )\n .subscribe(item => {\n this.error = item.error;\n this.updateStatus(this.ngControl!.invalid!);\n });\n }\n\n private setClass(): this {\n const { el, ren, clsMap, col, parent, cdr, line, labelWidth, rep, noColon } = this;\n this._noColon = noColon != null ? noColon : parent.noColon;\n this._labelWidth = parent.nzLayout === 'horizontal' ? (labelWidth != null ? labelWidth : parent.labelWidth) : null;\n clsMap.forEach(cls => ren.removeClass(el, cls));\n clsMap.length = 0;\n const repCls =\n parent.nzLayout === 'horizontal' ? rep.genCls(col != null ? col : parent.colInCon || parent.col) : [];\n clsMap.push(`ant-form-item`, ...repCls, `${prefixCls}__item`);\n if (line || parent.line) {\n clsMap.push(`${prefixCls}__line`);\n }\n clsMap.forEach(cls => ren.addClass(el, cls));\n cdr.detectChanges();\n return this;\n }\n\n private bindModel(): void {\n if (!this.ngControl || this.isBindModel) return;\n\n this.isBindModel = true;\n this.ngControl.statusChanges!.pipe(takeUntil(this.destroy$)).subscribe(res => this.updateStatus(res === 'INVALID'));\n if (this._autoId) {\n const controlAccessor = this.ngControl.valueAccessor as NzSafeAny;\n const control = (controlAccessor?.elementRef || controlAccessor?._elementRef)?.nativeElement as HTMLElement;\n if (!!control) {\n if (control.id) {\n this._id = control.id;\n } else {\n control.id = this._id;\n }\n }\n }\n // auto required\n if (this.required !== true) {\n const rawValidators = (this.ngControl as NzSafeAny)?._rawValidators as Validator[];\n this.required = rawValidators.find(w => w instanceof RequiredValidator) != null;\n this.cdr.detectChanges();\n }\n }\n\n private updateStatus(invalid: boolean): void {\n if (this.ngControl?.disabled || this.ngControl?.isDisabled) {\n return;\n }\n this.invalid =\n !this.onceFlag && invalid && this.parent.ingoreDirty === false && !this.ngControl?.dirty ? false : invalid;\n const errors = this.ngControl?.errors;\n if (errors != null && Object.keys(errors).length > 0) {\n const key = Object.keys(errors)[0] || '';\n const err = this.errorData[key];\n this._error = err != null ? err : this.errorData[''] || '';\n }\n\n this.cdr.detectChanges();\n }\n\n checkContent(): void {\n const el = this.contentElement.nativeElement;\n const cls = `${prefixCls}__item-empty`;\n if (isEmpty(el)) {\n this.ren.addClass(el, cls);\n } else {\n this.ren.removeClass(el, cls);\n }\n }\n\n ngAfterContentInit(): void {\n this.checkContent();\n }\n\n ngOnChanges(): void {\n this.onceFlag = this.parent.firstVisual;\n if (this.inited) {\n this.setClass().bindModel();\n }\n }\n\n ngAfterViewInit(): void {\n this.setClass().bindModel();\n this.inited = true;\n if (this.onceFlag) {\n Promise.resolve().then(() => {\n this.updateStatus(this.ngControl?.invalid!);\n this.onceFlag = false;\n });\n }\n }\n\n ngOnDestroy(): void {\n const { destroy$ } = this;\n destroy$.next();\n destroy$.complete();\n }\n}\n","<div class=\"ant-form-item-label\" [class.se__nolabel]=\"hideLabel || !label\" [style.width.px]=\"_labelWidth\">\n <label\n *ngIf=\"label\"\n [attr.for]=\"_id\"\n class=\"se__label\"\n [ngClass]=\"{ 'ant-form-item-required': required, 'se__no-colon': _noColon }\"\n >\n <span class=\"se__label-text\">\n <ng-container *nzStringTemplateOutlet=\"label\">{{ label }}</ng-container>\n </span>\n <span *ngIf=\"optional || optionalHelp\" class=\"se__label-optional\" [class.se__label-optional-no-text]=\"!optional\">\n <ng-container *nzStringTemplateOutlet=\"optional\">{{ optional }}</ng-container>\n <i\n *ngIf=\"optionalHelp\"\n nz-tooltip\n [nzTooltipTitle]=\"optionalHelp\"\n [nzTooltipColor]=\"optionalHelpColor\"\n nz-icon\n nzType=\"question-circle\"\n ></i>\n </span>\n </label>\n</div>\n<div class=\"ant-form-item-control se__control\">\n <div class=\"ant-form-item-control-input {{ controlClass }}\">\n <div class=\"ant-form-item-control-input-content\" (cdkObserveContent)=\"checkContent()\" #contentElement>\n <ng-content></ng-content>\n </div>\n </div>\n <div @helpMotion class=\"ant-form-item-explain ant-form-item-explain-connected\" *ngIf=\"showErr\">\n <div role=\"alert\" class=\"ant-form-item-explain-error\">\n <ng-container *nzStringTemplateOutlet=\"_error\">{{ _error }}</ng-container>\n </div>\n </div>\n <div *ngIf=\"extra && !compact\" class=\"ant-form-item-extra\">\n <ng-container *nzStringTemplateOutlet=\"extra\">{{ extra }}</ng-container>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzToolTipModule } from 'ng-zorro-antd/tooltip';\n\nimport { SEContainerComponent, SETitleComponent } from './se-container.component';\nimport { SEComponent } from './se.component';\n\nconst COMPONENTS = [SEContainerComponent, SEComponent, SETitleComponent];\n\n@NgModule({\n imports: [CommonModule, NzToolTipModule, NzIconModule, NzOutletModule],\n declarations: COMPONENTS,\n exports: COMPONENTS\n})\nexport class SEModule {}\n","import { TemplateRef } from '@angular/core';\n\nexport type SELayout = 'horizontal' | 'vertical' | 'inline';\n\nexport type SESize = 'default' | 'compact';\n\nexport type SEErrorType = string | TemplateRef<void> | SEError;\n\nexport interface SEError {\n [key: string]: string | TemplateRef<void>;\n}\n\nexport interface SEErrorRefresh {\n name: string;\n error: SEErrorType;\n}\n\n// /**\n// * Error collection\n// * - `name`: The value of` ngModel` or `formControlName`\n// * - `error`: Replaced error value\n// */\n// errors: Array<{ name: string; error: SEErrorType }>;\n// /**\n// * Whether force show error, even if the form component has not invalid, Default: `false`\n// * - `false`: Whether to display error by `invalid`\n// * - `true`: Force show display error\n// */\n// force?: boolean;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}