@delon/abc 16.2.0 → 16.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (187) hide show
  1. package/avatar-list/avatar-list.component.d.ts +3 -4
  2. package/cell/cell-host.directive.d.ts +13 -0
  3. package/cell/cell.component.d.ts +45 -0
  4. package/cell/cell.module.d.ts +17 -0
  5. package/cell/cell.service.d.ts +23 -0
  6. package/cell/cell.types.d.ts +238 -0
  7. package/cell/index.d.ts +5 -0
  8. package/cell/style/index.less +63 -0
  9. package/error-collect/error-collect.component.d.ts +2 -3
  10. package/esm2022/auto-focus/auto-focus.directive.mjs +3 -3
  11. package/esm2022/auto-focus/auto-focus.module.mjs +4 -4
  12. package/esm2022/avatar-list/avatar-list-item.component.mjs +5 -5
  13. package/esm2022/avatar-list/avatar-list.component.mjs +9 -12
  14. package/esm2022/avatar-list/avatar-list.module.mjs +4 -4
  15. package/esm2022/cell/cell-host.directive.mjs +34 -0
  16. package/esm2022/cell/cell.component.mjs +270 -0
  17. package/esm2022/cell/cell.mjs +5 -0
  18. package/esm2022/cell/cell.module.mjs +54 -0
  19. package/esm2022/cell/cell.service.mjs +168 -0
  20. package/esm2022/cell/cell.types.mjs +2 -0
  21. package/esm2022/cell/index.mjs +6 -0
  22. package/esm2022/count-down/count-down.component.mjs +5 -5
  23. package/esm2022/count-down/count-down.module.mjs +4 -4
  24. package/esm2022/date-picker/date-picker.module.mjs +4 -4
  25. package/esm2022/date-picker/range-shortcut.component.mjs +3 -3
  26. package/esm2022/date-picker/range.directive.mjs +3 -3
  27. package/esm2022/down-file/down-file.directive.mjs +3 -3
  28. package/esm2022/down-file/down-file.module.mjs +4 -4
  29. package/esm2022/ellipsis/ellipsis.component.mjs +5 -5
  30. package/esm2022/ellipsis/ellipsis.module.mjs +4 -4
  31. package/esm2022/error-collect/error-collect.component.mjs +11 -13
  32. package/esm2022/error-collect/error-collect.module.mjs +4 -4
  33. package/esm2022/exception/exception.component.mjs +14 -14
  34. package/esm2022/exception/exception.module.mjs +4 -4
  35. package/esm2022/footer-toolbar/footer-toolbar.component.mjs +5 -5
  36. package/esm2022/footer-toolbar/footer-toolbar.module.mjs +4 -4
  37. package/esm2022/full-content/full-content-toggle.directive.mjs +3 -3
  38. package/esm2022/full-content/full-content.component.mjs +12 -14
  39. package/esm2022/full-content/full-content.module.mjs +4 -4
  40. package/esm2022/full-content/full-content.service.mjs +3 -3
  41. package/esm2022/global-footer/global-footer-item.component.mjs +5 -5
  42. package/esm2022/global-footer/global-footer.component.mjs +12 -14
  43. package/esm2022/global-footer/global-footer.module.mjs +4 -4
  44. package/esm2022/hotkey/hotkey.directive.mjs +3 -3
  45. package/esm2022/hotkey/hotkey.module.mjs +4 -4
  46. package/esm2022/let/let.directive.mjs +3 -3
  47. package/esm2022/let/let.module.mjs +4 -4
  48. package/esm2022/loading/loading.component.mjs +5 -5
  49. package/esm2022/loading/loading.module.mjs +4 -4
  50. package/esm2022/loading/loading.service.mjs +3 -3
  51. package/esm2022/lodop/lodop.module.mjs +4 -4
  52. package/esm2022/lodop/lodop.service.mjs +3 -3
  53. package/esm2022/media/media.component.mjs +11 -13
  54. package/esm2022/media/media.module.mjs +4 -4
  55. package/esm2022/media/media.service.mjs +3 -3
  56. package/esm2022/notice-icon/notice-icon-tab.component.mjs +5 -5
  57. package/esm2022/notice-icon/notice-icon.component.mjs +5 -5
  58. package/esm2022/notice-icon/notice-icon.module.mjs +4 -4
  59. package/esm2022/observers/observer-size.mjs +10 -10
  60. package/esm2022/onboarding/onboarding.component.mjs +3 -3
  61. package/esm2022/onboarding/onboarding.module.mjs +4 -4
  62. package/esm2022/onboarding/onboarding.service.mjs +3 -3
  63. package/esm2022/page-header/page-header.component.mjs +16 -16
  64. package/esm2022/page-header/page-header.module.mjs +27 -6
  65. package/esm2022/pdf/pdf.component.mjs +14 -16
  66. package/esm2022/pdf/pdf.module.mjs +4 -4
  67. package/esm2022/pdf/pdf.types.mjs +2 -1
  68. package/esm2022/qr/qr.component.mjs +3 -3
  69. package/esm2022/qr/qr.module.mjs +4 -4
  70. package/esm2022/quick-menu/quick-menu.component.mjs +5 -5
  71. package/esm2022/quick-menu/quick-menu.module.mjs +4 -4
  72. package/esm2022/result/result.component.mjs +12 -14
  73. package/esm2022/result/result.module.mjs +4 -4
  74. package/esm2022/reuse-tab/public_api.mjs +2 -1
  75. package/esm2022/reuse-tab/reuse-tab-context-menu.component.mjs +3 -3
  76. package/esm2022/reuse-tab/reuse-tab-context.component.mjs +3 -3
  77. package/esm2022/reuse-tab/reuse-tab-context.directive.mjs +3 -3
  78. package/esm2022/reuse-tab/reuse-tab-context.service.mjs +3 -3
  79. package/esm2022/reuse-tab/reuse-tab.component.mjs +12 -16
  80. package/esm2022/reuse-tab/reuse-tab.module.mjs +4 -4
  81. package/esm2022/reuse-tab/reuse-tab.service.mjs +3 -3
  82. package/esm2022/se/se-container.component.mjs +10 -10
  83. package/esm2022/se/se.component.mjs +13 -15
  84. package/esm2022/se/se.module.mjs +4 -4
  85. package/esm2022/sg/sg-container.component.mjs +5 -5
  86. package/esm2022/sg/sg.component.mjs +5 -5
  87. package/esm2022/sg/sg.module.mjs +4 -4
  88. package/esm2022/st/st-column-source.mjs +8 -4
  89. package/esm2022/st/st-data-source.mjs +14 -7
  90. package/esm2022/st/st-export.mjs +3 -3
  91. package/esm2022/st/st-filter.component.mjs +12 -12
  92. package/esm2022/st/st-row.directive.mjs +6 -6
  93. package/esm2022/st/st-widget-host.directive.mjs +3 -3
  94. package/esm2022/st/st-widget.mjs +3 -3
  95. package/esm2022/st/st.component.mjs +83 -97
  96. package/esm2022/st/st.interfaces.mjs +1 -1
  97. package/esm2022/st/st.module.mjs +9 -5
  98. package/esm2022/st/st.types.mjs +1 -1
  99. package/esm2022/sv/sv-container.component.mjs +22 -12
  100. package/esm2022/sv/sv-value.component.mjs +6 -6
  101. package/esm2022/sv/sv.component.mjs +12 -9
  102. package/esm2022/sv/sv.module.mjs +4 -4
  103. package/esm2022/tag-select/tag-select.component.mjs +10 -14
  104. package/esm2022/tag-select/tag-select.module.mjs +4 -4
  105. package/esm2022/xlsx/xlsx.directive.mjs +3 -3
  106. package/esm2022/xlsx/xlsx.module.mjs +4 -4
  107. package/esm2022/xlsx/xlsx.service.mjs +3 -3
  108. package/esm2022/zip/zip.module.mjs +4 -4
  109. package/esm2022/zip/zip.service.mjs +3 -3
  110. package/exception/exception.component.d.ts +2 -3
  111. package/fesm2022/auto-focus.mjs +7 -7
  112. package/fesm2022/avatar-list.mjs +16 -19
  113. package/fesm2022/avatar-list.mjs.map +1 -1
  114. package/fesm2022/cell.mjs +521 -0
  115. package/fesm2022/cell.mjs.map +1 -0
  116. package/fesm2022/chart-observer-size.mjs +10 -10
  117. package/fesm2022/count-down.mjs +8 -8
  118. package/fesm2022/count-down.mjs.map +1 -1
  119. package/fesm2022/date-picker.mjs +10 -10
  120. package/fesm2022/down-file.mjs +7 -7
  121. package/fesm2022/ellipsis.mjs +8 -8
  122. package/fesm2022/ellipsis.mjs.map +1 -1
  123. package/fesm2022/error-collect.mjs +14 -16
  124. package/fesm2022/error-collect.mjs.map +1 -1
  125. package/fesm2022/exception.mjs +17 -17
  126. package/fesm2022/exception.mjs.map +1 -1
  127. package/fesm2022/footer-toolbar.mjs +8 -8
  128. package/fesm2022/footer-toolbar.mjs.map +1 -1
  129. package/fesm2022/full-content.mjs +21 -23
  130. package/fesm2022/full-content.mjs.map +1 -1
  131. package/fesm2022/global-footer.mjs +19 -21
  132. package/fesm2022/global-footer.mjs.map +1 -1
  133. package/fesm2022/hotkey.mjs +7 -7
  134. package/fesm2022/let.mjs +7 -7
  135. package/fesm2022/loading.mjs +11 -11
  136. package/fesm2022/loading.mjs.map +1 -1
  137. package/fesm2022/lodop.mjs +7 -7
  138. package/fesm2022/media.mjs +17 -19
  139. package/fesm2022/media.mjs.map +1 -1
  140. package/fesm2022/notice-icon.mjs +12 -12
  141. package/fesm2022/notice-icon.mjs.map +1 -1
  142. package/fesm2022/onboarding.mjs +10 -10
  143. package/fesm2022/page-header.mjs +41 -20
  144. package/fesm2022/page-header.mjs.map +1 -1
  145. package/fesm2022/pdf.mjs +18 -19
  146. package/fesm2022/pdf.mjs.map +1 -1
  147. package/fesm2022/qr.mjs +7 -7
  148. package/fesm2022/quick-menu.mjs +8 -8
  149. package/fesm2022/quick-menu.mjs.map +1 -1
  150. package/fesm2022/result.mjs +15 -17
  151. package/fesm2022/result.mjs.map +1 -1
  152. package/fesm2022/reuse-tab.mjs +31 -35
  153. package/fesm2022/reuse-tab.mjs.map +1 -1
  154. package/fesm2022/se.mjs +25 -27
  155. package/fesm2022/se.mjs.map +1 -1
  156. package/fesm2022/sg.mjs +12 -12
  157. package/fesm2022/sg.mjs.map +1 -1
  158. package/fesm2022/st.mjs +134 -133
  159. package/fesm2022/st.mjs.map +1 -1
  160. package/fesm2022/sv.mjs +41 -28
  161. package/fesm2022/sv.mjs.map +1 -1
  162. package/fesm2022/tag-select.mjs +13 -17
  163. package/fesm2022/tag-select.mjs.map +1 -1
  164. package/fesm2022/xlsx.mjs +10 -10
  165. package/fesm2022/zip.mjs +7 -7
  166. package/global-footer/global-footer.component.d.ts +6 -6
  167. package/index.less +1 -0
  168. package/package.json +10 -5
  169. package/page-header/page-header.component.d.ts +5 -5
  170. package/page-header/page-header.module.d.ts +2 -1
  171. package/page-header/style/index.less +1 -0
  172. package/pdf/pdf.component.d.ts +6 -5
  173. package/pdf/pdf.types.d.ts +2 -1
  174. package/result/result.component.d.ts +6 -6
  175. package/reuse-tab/public_api.d.ts +1 -0
  176. package/reuse-tab/reuse-tab.component.d.ts +2 -3
  177. package/se/se.component.d.ts +2 -3
  178. package/st/st-data-source.d.ts +1 -1
  179. package/st/st.component.d.ts +7 -7
  180. package/st/st.interfaces.d.ts +22 -2
  181. package/st/st.module.d.ts +17 -16
  182. package/st/st.types.d.ts +3 -0
  183. package/sv/style/index.less +36 -0
  184. package/sv/sv-container.component.d.ts +7 -2
  185. package/sv/sv.component.d.ts +3 -3
  186. package/tag-select/tag-select.component.d.ts +2 -3
  187. package/theme-default.less +11 -0
@@ -1,16 +1,16 @@
1
1
  import { Direction, Directionality } from '@angular/cdk/bidi';
2
- import { AfterViewInit, ChangeDetectorRef, OnChanges, OnDestroy } from '@angular/core';
2
+ import { AfterViewInit, ChangeDetectorRef, OnChanges } from '@angular/core';
3
3
  import { NumberInput } from '@delon/util/decorator';
4
4
  import type { NgStyleInterface, NzSizeLDSType } from 'ng-zorro-antd/core/types';
5
5
  import { AvatarListItemComponent } from './avatar-list-item.component';
6
6
  import * as i0 from "@angular/core";
7
- export declare class AvatarListComponent implements AfterViewInit, OnChanges, OnDestroy {
7
+ export declare class AvatarListComponent implements AfterViewInit, OnChanges {
8
8
  private cdr;
9
9
  private directionality;
10
10
  static ngAcceptInputType_maxLength: NumberInput;
11
11
  private inited;
12
12
  private _items;
13
- private destroy$;
13
+ private dir$;
14
14
  items: AvatarListItemComponent[];
15
15
  exceedCount: number;
16
16
  dir: Direction;
@@ -23,7 +23,6 @@ export declare class AvatarListComponent implements AfterViewInit, OnChanges, On
23
23
  private gen;
24
24
  ngAfterViewInit(): void;
25
25
  ngOnChanges(): void;
26
- ngOnDestroy(): void;
27
26
  static ɵfac: i0.ɵɵFactoryDeclaration<AvatarListComponent, [null, { optional: true; }]>;
28
27
  static ɵcmp: i0.ɵɵComponentDeclaration<AvatarListComponent, "avatar-list", ["avatarList"], { "size": { "alias": "size"; "required": false; }; "maxLength": { "alias": "maxLength"; "required": false; }; "excessItemsStyle": { "alias": "excessItemsStyle"; "required": false; }; }, {}, ["_items"], never, false, never>;
29
28
  }
@@ -0,0 +1,13 @@
1
+ import { OnInit, ViewContainerRef } from '@angular/core';
2
+ import { CellService } from './cell.service';
3
+ import { CellWidgetData } from './cell.types';
4
+ import * as i0 from "@angular/core";
5
+ export declare class CellHostDirective implements OnInit {
6
+ private srv;
7
+ private viewContainerRef;
8
+ data: CellWidgetData;
9
+ constructor(srv: CellService, viewContainerRef: ViewContainerRef);
10
+ ngOnInit(): void;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<CellHostDirective, never>;
12
+ static ɵdir: i0.ɵɵDirectiveDeclaration<CellHostDirective, "[cell-widget-host]", never, { "data": { "alias": "data"; "required": false; }; }, {}, never, never, false, never>;
13
+ }
@@ -0,0 +1,45 @@
1
+ import { ChangeDetectorRef, ElementRef, EventEmitter, OnChanges, OnDestroy, Renderer2, SimpleChange } from '@angular/core';
2
+ import type { SafeValue } from '@angular/platform-browser';
3
+ import { Router } from '@angular/router';
4
+ import { BooleanInput } from '@delon/util/decorator';
5
+ import type { NzSafeAny } from 'ng-zorro-antd/core/types';
6
+ import { NzImageService } from 'ng-zorro-antd/image';
7
+ import { CellService } from './cell.service';
8
+ import type { CellOptions, CellTextResult, CellValue, CellWidgetData } from './cell.types';
9
+ import * as i0 from "@angular/core";
10
+ export declare class CellComponent implements OnChanges, OnDestroy {
11
+ private srv;
12
+ private router;
13
+ private cdr;
14
+ private el;
15
+ private renderer;
16
+ private imgSrv;
17
+ private win;
18
+ static ngAcceptInputType_loading: BooleanInput;
19
+ static ngAcceptInputType_disabled: BooleanInput;
20
+ private destroy$?;
21
+ _text: string | SafeValue | string[] | number;
22
+ _unit?: string;
23
+ res?: CellTextResult;
24
+ showDefault: boolean;
25
+ value?: CellValue;
26
+ readonly valueChange: EventEmitter<any>;
27
+ options?: CellOptions;
28
+ loading: boolean;
29
+ disabled: boolean;
30
+ get safeOpt(): CellOptions;
31
+ get isText(): boolean;
32
+ get hostData(): CellWidgetData;
33
+ constructor(srv: CellService, router: Router, cdr: ChangeDetectorRef, el: ElementRef<HTMLElement>, renderer: Renderer2, imgSrv: NzImageService, win: any);
34
+ private updateValue;
35
+ private setClass;
36
+ ngOnChanges(changes: {
37
+ [p in keyof CellComponent]?: SimpleChange;
38
+ }): void;
39
+ change(value: NzSafeAny): void;
40
+ _link(e: Event): void;
41
+ _showImg(img: string): void;
42
+ ngOnDestroy(): void;
43
+ static ɵfac: i0.ɵɵFactoryDeclaration<CellComponent, never>;
44
+ static ɵcmp: i0.ɵɵComponentDeclaration<CellComponent, "cell, [cell]", ["cell"], { "value": { "alias": "value"; "required": false; }; "options": { "alias": "options"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, { "valueChange": "valueChange"; }, never, never, false, never>;
45
+ }
@@ -0,0 +1,17 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./cell.component";
3
+ import * as i2 from "./cell-host.directive";
4
+ import * as i3 from "@angular/common";
5
+ import * as i4 from "@angular/forms";
6
+ import * as i5 from "ng-zorro-antd/checkbox";
7
+ import * as i6 from "ng-zorro-antd/radio";
8
+ import * as i7 from "ng-zorro-antd/badge";
9
+ import * as i8 from "ng-zorro-antd/tag";
10
+ import * as i9 from "ng-zorro-antd/tooltip";
11
+ import * as i10 from "ng-zorro-antd/icon";
12
+ import * as i11 from "ng-zorro-antd/experimental/image";
13
+ export declare class CellModule {
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<CellModule, never>;
15
+ static ɵmod: i0.ɵɵNgModuleDeclaration<CellModule, [typeof i1.CellComponent, typeof i2.CellHostDirective], [typeof i3.CommonModule, typeof i4.FormsModule, typeof i5.NzCheckboxModule, typeof i6.NzRadioModule, typeof i7.NzBadgeModule, typeof i8.NzTagModule, typeof i9.NzToolTipModule, typeof i10.NzIconModule, typeof i11.NzImageModule], [typeof i1.CellComponent]>;
16
+ static ɵinj: i0.ɵɵInjectorDeclaration<CellModule>;
17
+ }
@@ -0,0 +1,23 @@
1
+ import { Type } from '@angular/core';
2
+ import { DomSanitizer } from '@angular/platform-browser';
3
+ import { Observable } from 'rxjs';
4
+ import { AlainConfigService } from '@delon/util/config';
5
+ import { CurrencyService } from '@delon/util/format';
6
+ import { NzI18nService } from 'ng-zorro-antd/i18n';
7
+ import type { CellOptions, CellTextResult, CellWidget } from './cell.types';
8
+ import * as i0 from "@angular/core";
9
+ export declare class CellService {
10
+ private nzI18n;
11
+ private currency;
12
+ private dom;
13
+ private globalOptions;
14
+ private widgets;
15
+ constructor(configSrv: AlainConfigService, nzI18n: NzI18nService, currency: CurrencyService, dom: DomSanitizer);
16
+ registerWidget(key: string, widget: Type<unknown>): void;
17
+ getWidget(key: string): CellWidget | undefined;
18
+ private genType;
19
+ fixOptions(options?: CellOptions): CellOptions;
20
+ get(value: unknown, options?: CellOptions): Observable<CellTextResult>;
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<CellService, never>;
22
+ static ɵprov: i0.ɵɵInjectableDeclaration<CellService>;
23
+ }
@@ -0,0 +1,238 @@
1
+ import type { Type } from '@angular/core';
2
+ import type { SafeValue } from '@angular/platform-browser';
3
+ import type { Observable } from 'rxjs';
4
+ import type { CurrencyCNYOptions, CurrencyFormatOptions, CurrencyMegaOptions, FormatMaskOption } from '@delon/util/format';
5
+ import type { NzImagePreviewOptions } from 'ng-zorro-antd/image';
6
+ export type CellRenderType = 'primary' | 'success' | 'danger' | 'warning';
7
+ export type CellSize = 'large' | 'small';
8
+ export type CellBaseValue = string | number | boolean | Date | null | undefined | SafeValue;
9
+ export interface CellTextUnit {
10
+ text?: string | SafeValue | string[] | number;
11
+ color?: string;
12
+ unit?: string;
13
+ }
14
+ export interface CellTextResult {
15
+ result: CellTextUnit;
16
+ safeHtml?: 'text' | 'html' | 'safeHtml';
17
+ options: CellOptions;
18
+ }
19
+ export type CellValue = CellBaseValue | CellBaseValue[] | CellTextUnit | CellFuValue;
20
+ export type CellFuValue = (value: unknown, options: CellOptions) => Observable<CellTextUnit>;
21
+ export type CellWidgetFn = (value: unknown, options: CellOptions) => CellTextUnit;
22
+ export interface CellWidget {
23
+ type: 'fn' | 'widget';
24
+ ref: Type<unknown> | CellWidgetFn;
25
+ }
26
+ export type CellType = 'string' | 'number' | 'mega' | 'currency' | 'cny' | 'boolean' | 'date' | 'img' | 'link' | 'html' | 'badge' | 'tag' | 'checkbox' | 'radio' | 'enum' | 'widget';
27
+ export interface CellOptions {
28
+ /**
29
+ * 指定渲染类型,若不指定则根据 `value` 类型自动转换
30
+ */
31
+ type?: CellType;
32
+ tooltip?: string;
33
+ /**
34
+ * Render Type
35
+ *
36
+ * 渲染类型
37
+ */
38
+ renderType?: CellRenderType;
39
+ /**
40
+ * Size
41
+ *
42
+ * 大小
43
+ */
44
+ size?: CellSize;
45
+ /**
46
+ * Default Text
47
+ *
48
+ * 默认文本
49
+ */
50
+ default?: CellDefaultText;
51
+ /**
52
+ * Unit
53
+ *
54
+ * 单位
55
+ */
56
+ unit?: string;
57
+ /**
58
+ * Format mask, [Document](https://ng-alain.com/util/format/en#formatMask)
59
+ *
60
+ * 格式化掩码, 参考[文档](https://ng-alain.com/util/format/zh#formatMask)
61
+ */
62
+ mask?: string | FormatMaskOption;
63
+ widget?: {
64
+ key?: string;
65
+ data?: unknown;
66
+ };
67
+ /**
68
+ * Date config, supports `minutes ago` formatting
69
+ *
70
+ * 日期配置,支持 `几分钟前` 格式化
71
+ */
72
+ date?: {
73
+ /**
74
+ * 格式化字符,默认:`yyyy-MM-dd HH:mm:ss`
75
+ * - 若值为 `fn` 时,渲染为 `几分钟前`
76
+ */
77
+ format?: string;
78
+ };
79
+ /**
80
+ * Large number format filter, [Document](https://ng-alain.com/util/format/en#mega)
81
+ *
82
+ * 大数据格式化,[文档](https://ng-alain.com/util/format/en#mega)
83
+ */
84
+ mega?: CurrencyMegaOptions;
85
+ /**
86
+ * 货币
87
+ */
88
+ currency?: CurrencyFormatOptions;
89
+ /**
90
+ * Converted into RMB notation
91
+ *
92
+ * 转化成人民币表示法
93
+ */
94
+ cny?: CurrencyCNYOptions;
95
+ /**
96
+ * 布尔
97
+ */
98
+ boolean?: {
99
+ yes?: string;
100
+ no?: string;
101
+ mode?: 'full' | 'icon' | 'text';
102
+ };
103
+ /**
104
+ * Image config, support large image preview
105
+ *
106
+ * 图像配置,支持大图预览
107
+ */
108
+ img?: {
109
+ size?: number;
110
+ /**
111
+ * 点击查看大图,若 `true` 表示直接使用当前作为大图
112
+ */
113
+ big?: true | string | ((value: unknown) => string);
114
+ previewOptions?: NzImagePreviewOptions;
115
+ };
116
+ /**
117
+ * Link, if it starts with `/`, it means routing jump
118
+ *
119
+ * 链接,若指定URL是以 `/` 开头视为路由跳转
120
+ */
121
+ link?: {
122
+ /**
123
+ * Link, if it starts with `/`, it means routing jump
124
+ *
125
+ * 链接,若指定URL是以 `/` 开头视为路由跳转
126
+ */
127
+ url?: string;
128
+ /**
129
+ * Open type of the external link
130
+ *
131
+ * 外链的打开方式
132
+ */
133
+ target?: '_blank' | '_self' | '_parent' | '_top';
134
+ };
135
+ /**
136
+ * HTML config
137
+ *
138
+ * HTML 配置
139
+ */
140
+ html?: {
141
+ safe?: 'text' | 'html' | 'safeHtml';
142
+ };
143
+ /**
144
+ * Badge config
145
+ *
146
+ * 徽章配置
147
+ */
148
+ badge?: {
149
+ data?: CellBadge;
150
+ };
151
+ /**
152
+ * Tag config
153
+ *
154
+ * 标签配置
155
+ */
156
+ tag?: {
157
+ data?: CellTag;
158
+ };
159
+ /**
160
+ * Checkbox config
161
+ *
162
+ * 复选框配置
163
+ */
164
+ checkbox?: {
165
+ label?: string;
166
+ };
167
+ /**
168
+ * Radio config
169
+ *
170
+ * 单选框配置
171
+ */
172
+ radio?: {
173
+ label?: string;
174
+ };
175
+ enum?: {
176
+ [key: string]: string;
177
+ [key: number]: string;
178
+ };
179
+ }
180
+ /**
181
+ * 徽标信息
182
+ */
183
+ export interface CellBadge {
184
+ [key: number]: CellBadgeValue;
185
+ [key: string]: CellBadgeValue;
186
+ }
187
+ export interface CellBadgeValue {
188
+ /**
189
+ * 文本
190
+ */
191
+ text?: string;
192
+ /**
193
+ * 徽标颜色值
194
+ */
195
+ color?: 'success' | 'processing' | 'default' | 'error' | 'warning';
196
+ /**
197
+ * Text popup tip
198
+ *
199
+ * 文字提示
200
+ */
201
+ tooltip?: string;
202
+ }
203
+ /**
204
+ * 标签信息
205
+ */
206
+ export interface CellTag {
207
+ [key: number]: CellTagValue;
208
+ [key: string]: CellTagValue;
209
+ }
210
+ export interface CellTagValue {
211
+ /**
212
+ * 文本
213
+ */
214
+ text?: string;
215
+ /**
216
+ * 颜色值,支持预设和色值
217
+ * - 预设:geekblue,blue,purple,success,red,volcano,orange,gold,lime,green,cyan
218
+ * - 色值:#f50,#ff0
219
+ */
220
+ color?: 'geekblue' | 'blue' | 'purple' | 'success' | 'red' | 'volcano' | 'orange' | 'gold' | 'lime' | 'green' | 'cyan' | string;
221
+ /**
222
+ * Text popup tip
223
+ *
224
+ * 文字提示
225
+ */
226
+ tooltip?: string;
227
+ }
228
+ export interface CellDefaultText {
229
+ text?: string;
230
+ condition?: unknown;
231
+ }
232
+ export interface CellWidgetData {
233
+ value?: unknown;
234
+ options?: CellOptions;
235
+ }
236
+ export interface CellWidgetInstance {
237
+ readonly data: CellWidgetData;
238
+ }
@@ -0,0 +1,5 @@
1
+ export * from './cell.component';
2
+ export * from './cell-host.directive';
3
+ export * from './cell.module';
4
+ export * from './cell.service';
5
+ export * from './cell.types';
@@ -0,0 +1,63 @@
1
+ @import '../../../theme/theme-default.less';
2
+ @cell-prefix: ~'.cell';
3
+
4
+ @{cell-prefix} {
5
+ &__has-unit {
6
+ align-items: baseline;
7
+ }
8
+
9
+ &__has-default {
10
+ color: @cell-default-color;
11
+ }
12
+
13
+ &__primary {
14
+ color: @primary-color;
15
+ }
16
+
17
+ &__success {
18
+ color: @success-color;
19
+ }
20
+
21
+ &__danger {
22
+ color: @error-color;
23
+ }
24
+
25
+ &__warning {
26
+ color: @warning-color;
27
+ }
28
+
29
+ &__large {
30
+ font-size: @cell-large;
31
+ }
32
+
33
+ &__small {
34
+ font-size: @cell-small;
35
+ }
36
+
37
+ &[data-type="img"] {
38
+ .img:not(:last-child) {
39
+ margin-right: @cell-img-space;
40
+ }
41
+ }
42
+
43
+ .img {
44
+ vertical-align: middle;
45
+ border-radius: 4px;
46
+ }
47
+
48
+ .unit {
49
+ margin-left: 2px;
50
+ color: @cell-unit-color;
51
+ font-size: @cell-unit-font-size;
52
+ }
53
+
54
+ &__disabled {
55
+ &[data-type="link"] {
56
+ pointer-events: none;
57
+
58
+ > a {
59
+ color: @cell-link-disabled-color;
60
+ }
61
+ }
62
+ }
63
+ }
@@ -1,10 +1,10 @@
1
1
  import { Direction, Directionality } from '@angular/cdk/bidi';
2
2
  import { Platform } from '@angular/cdk/platform';
3
- import { ChangeDetectorRef, ElementRef, OnDestroy, OnInit } from '@angular/core';
3
+ import { ChangeDetectorRef, ElementRef, OnInit } from '@angular/core';
4
4
  import { AlainConfigService } from '@delon/util/config';
5
5
  import type { NzSafeAny } from 'ng-zorro-antd/core/types';
6
6
  import * as i0 from "@angular/core";
7
- export declare class ErrorCollectComponent implements OnInit, OnDestroy {
7
+ export declare class ErrorCollectComponent implements OnInit {
8
8
  private el;
9
9
  private cdr;
10
10
  private doc;
@@ -24,7 +24,6 @@ export declare class ErrorCollectComponent implements OnInit, OnDestroy {
24
24
  private install;
25
25
  private findParent;
26
26
  ngOnInit(): void;
27
- ngOnDestroy(): void;
28
27
  static ɵfac: i0.ɵɵFactoryDeclaration<ErrorCollectComponent, [null, null, null, null, { optional: true; }, null]>;
29
28
  static ɵcmp: i0.ɵɵComponentDeclaration<ErrorCollectComponent, "error-collect, [error-collect]", ["errorCollect"], { "freq": { "alias": "freq"; "required": false; }; "offsetTop": { "alias": "offsetTop"; "required": false; }; }, {}, never, never, false, never>;
30
29
  }
@@ -27,8 +27,8 @@ export class AutoFocusDirective {
27
27
  this._focusoutTimeout = null;
28
28
  }
29
29
  }
30
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AutoFocusDirective, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.Platform }], target: i0.ɵɵFactoryTarget.Directive }); }
31
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.6", type: AutoFocusDirective, selector: "[auto-focus], input[autofocus=\"autofocus\"], textarea[autofocus=\"autofocus\"]", inputs: { enabled: "enabled", delay: "delay" }, exportAs: ["autoFocus"], ngImport: i0 }); }
30
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: AutoFocusDirective, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.Platform }], target: i0.ɵɵFactoryTarget.Directive }); }
31
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.3", type: AutoFocusDirective, selector: "[auto-focus], input[autofocus=\"autofocus\"], textarea[autofocus=\"autofocus\"]", inputs: { enabled: "enabled", delay: "delay" }, exportAs: ["autoFocus"], ngImport: i0 }); }
32
32
  }
33
33
  __decorate([
34
34
  InputBoolean()
@@ -36,7 +36,7 @@ __decorate([
36
36
  __decorate([
37
37
  InputNumber()
38
38
  ], AutoFocusDirective.prototype, "delay", void 0);
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AutoFocusDirective, decorators: [{
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: AutoFocusDirective, decorators: [{
40
40
  type: Directive,
41
41
  args: [{
42
42
  selector: '[auto-focus], input[autofocus="autofocus"], textarea[autofocus="autofocus"]',
@@ -3,11 +3,11 @@ import { AutoFocusDirective } from './auto-focus.directive';
3
3
  import * as i0 from "@angular/core";
4
4
  const COMPONENTS = [AutoFocusDirective];
5
5
  export class AutoFocusModule {
6
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AutoFocusModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.6", ngImport: i0, type: AutoFocusModule, declarations: [AutoFocusDirective], exports: [AutoFocusDirective] }); }
8
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AutoFocusModule }); }
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: AutoFocusModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.3", ngImport: i0, type: AutoFocusModule, declarations: [AutoFocusDirective], exports: [AutoFocusDirective] }); }
8
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: AutoFocusModule }); }
9
9
  }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AutoFocusModule, decorators: [{
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: AutoFocusModule, decorators: [{
11
11
  type: NgModule,
12
12
  args: [{
13
13
  declarations: COMPONENTS,
@@ -1,15 +1,15 @@
1
1
  import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class AvatarListItemComponent {
4
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AvatarListItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: AvatarListItemComponent, selector: "avatar-list-item, [avatar-list-item]", inputs: { src: "src", text: "text", icon: "icon", tips: "tips" }, exportAs: ["avatarListItem"], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
4
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: AvatarListItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.3", type: AvatarListItemComponent, selector: "avatar-list-item, [avatar-list-item]", inputs: { src: "src", text: "text", icon: "icon", tips: "tips" }, exportAs: ["avatarListItem"], ngImport: i0, template: `<ng-content />`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
6
6
  }
7
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AvatarListItemComponent, decorators: [{
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: AvatarListItemComponent, decorators: [{
8
8
  type: Component,
9
9
  args: [{
10
10
  selector: 'avatar-list-item, [avatar-list-item]',
11
11
  exportAs: 'avatarListItem',
12
- template: `<ng-content></ng-content>`,
12
+ template: `<ng-content />`,
13
13
  preserveWhitespaces: false,
14
14
  changeDetection: ChangeDetectionStrategy.OnPush,
15
15
  encapsulation: ViewEncapsulation.None
@@ -23,4 +23,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
23
23
  }], tips: [{
24
24
  type: Input
25
25
  }] } });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLWxpc3QtaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hYmMvYXZhdGFyLWxpc3QvYXZhdGFyLWxpc3QtaXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBVTdGLE1BQU0sT0FBTyx1QkFBdUI7OEdBQXZCLHVCQUF1QjtrR0FBdkIsdUJBQXVCLDRLQUx4QiwyQkFBMkI7OzJGQUsxQix1QkFBdUI7a0JBUm5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHNDQUFzQztvQkFDaEQsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsbUJBQW1CLEVBQUUsS0FBSztvQkFDMUIsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2lCQUN0Qzs4QkFFVSxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXZhdGFyLWxpc3QtaXRlbSwgW2F2YXRhci1saXN0LWl0ZW1dJyxcbiAgZXhwb3J0QXM6ICdhdmF0YXJMaXN0SXRlbScsXG4gIHRlbXBsYXRlOiBgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PmAsXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBBdmF0YXJMaXN0SXRlbUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHNyYz86IHN0cmluZztcbiAgQElucHV0KCkgdGV4dD86IHN0cmluZztcbiAgQElucHV0KCkgaWNvbj86IHN0cmluZztcbiAgQElucHV0KCkgdGlwcz86IHN0cmluZztcbn1cbiJdfQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLWxpc3QtaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hYmMvYXZhdGFyLWxpc3QvYXZhdGFyLWxpc3QtaXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBVTdGLE1BQU0sT0FBTyx1QkFBdUI7OEdBQXZCLHVCQUF1QjtrR0FBdkIsdUJBQXVCLDRLQUx4QixnQkFBZ0I7OzJGQUtmLHVCQUF1QjtrQkFSbkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsc0NBQXNDO29CQUNoRCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixtQkFBbUIsRUFBRSxLQUFLO29CQUMxQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7aUJBQ3RDOzhCQUVVLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdmF0YXItbGlzdC1pdGVtLCBbYXZhdGFyLWxpc3QtaXRlbV0nLFxuICBleHBvcnRBczogJ2F2YXRhckxpc3RJdGVtJyxcbiAgdGVtcGxhdGU6IGA8bmctY29udGVudCAvPmAsXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBBdmF0YXJMaXN0SXRlbUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHNyYz86IHN0cmluZztcbiAgQElucHV0KCkgdGV4dD86IHN0cmluZztcbiAgQElucHV0KCkgaWNvbj86IHN0cmluZztcbiAgQElucHV0KCkgdGlwcz86IHN0cmluZztcbn1cbiJdfQ==
@@ -1,6 +1,6 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { ChangeDetectionStrategy, Component, ContentChildren, Input, Optional, ViewEncapsulation } from '@angular/core';
3
- import { Subject, takeUntil } from 'rxjs';
3
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
4
4
  import { InputNumber } from '@delon/util/decorator';
5
5
  import { AvatarListItemComponent } from './avatar-list-item.component';
6
6
  import * as i0 from "@angular/core";
@@ -26,7 +26,7 @@ export class AvatarListComponent {
26
26
  this.cdr = cdr;
27
27
  this.directionality = directionality;
28
28
  this.inited = false;
29
- this.destroy$ = new Subject();
29
+ this.dir$ = this.directionality.change?.pipe(takeUntilDestroyed());
30
30
  this.items = [];
31
31
  this.exceedCount = 0;
32
32
  this.dir = 'ltr';
@@ -46,8 +46,9 @@ export class AvatarListComponent {
46
46
  }
47
47
  ngAfterViewInit() {
48
48
  this.dir = this.directionality.value;
49
- this.directionality.change?.pipe(takeUntil(this.destroy$)).subscribe((direction) => {
49
+ this.dir$.subscribe((direction) => {
50
50
  this.dir = direction;
51
+ this.cdr.detectChanges();
51
52
  });
52
53
  this.gen();
53
54
  this.inited = true;
@@ -57,22 +58,18 @@ export class AvatarListComponent {
57
58
  this.gen();
58
59
  }
59
60
  }
60
- ngOnDestroy() {
61
- this.destroy$.next();
62
- this.destroy$.complete();
63
- }
64
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AvatarListComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
65
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: AvatarListComponent, selector: "avatar-list", inputs: { size: "size", maxLength: "maxLength", excessItemsStyle: "excessItemsStyle" }, host: { properties: { "class.avatar-list": "true", "class.avatar-list-rtl": "dir === 'rtl'" } }, queries: [{ propertyName: "_items", predicate: AvatarListItemComponent }], exportAs: ["avatarList"], usesOnChanges: true, ngImport: i0, template: "<ul class=\"avatar-list__wrap\">\n <li *ngFor=\"let i of items\" [ngClass]=\"cls\">\n <nz-avatar\n *ngIf=\"i.tips\"\n nz-tooltip\n [nzTooltipTitle]=\"i.tips\"\n [nzSrc]=\"i.src\"\n [nzText]=\"i.text\"\n [nzIcon]=\"i.icon\"\n [nzSize]=\"avatarSize\"\n ></nz-avatar>\n <nz-avatar *ngIf=\"!i.tips\" [nzSrc]=\"i.src\" [nzText]=\"i.text\" [nzIcon]=\"i.icon\" [nzSize]=\"avatarSize\"></nz-avatar>\n </li>\n <li *ngIf=\"exceedCount > 0\" [ngClass]=\"cls\">\n <nz-avatar\n [nzSize]=\"avatarSize\"\n style=\"cursor: auto\"\n [ngStyle]=\"excessItemsStyle\"\n [nzText]=\"'+' + exceedCount\"\n ></nz-avatar>\n </li>\n</ul>\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i3.NzAvatarComponent, selector: "nz-avatar", inputs: ["nzShape", "nzSize", "nzGap", "nzText", "nzSrc", "nzSrcSet", "nzAlt", "nzIcon"], outputs: ["nzError"], exportAs: ["nzAvatar"] }, { kind: "directive", type: i4.NzTooltipDirective, selector: "[nz-tooltip]", inputs: ["nzTooltipTitle", "nzTooltipTitleContext", "nz-tooltip", "nzTooltipTrigger", "nzTooltipPlacement", "nzTooltipOrigin", "nzTooltipVisible", "nzTooltipMouseEnterDelay", "nzTooltipMouseLeaveDelay", "nzTooltipOverlayClassName", "nzTooltipOverlayStyle", "nzTooltipArrowPointAtCenter", "nzTooltipColor"], outputs: ["nzTooltipVisibleChange"], exportAs: ["nzTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
61
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: AvatarListComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
62
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.3", type: AvatarListComponent, selector: "avatar-list", inputs: { size: "size", maxLength: "maxLength", excessItemsStyle: "excessItemsStyle" }, host: { properties: { "class.avatar-list": "true", "class.avatar-list-rtl": "dir === 'rtl'" } }, queries: [{ propertyName: "_items", predicate: AvatarListItemComponent }], exportAs: ["avatarList"], usesOnChanges: true, ngImport: i0, template: "<ul class=\"avatar-list__wrap\">\n <li *ngFor=\"let i of items\" [ngClass]=\"cls\">\n <nz-avatar\n *ngIf=\"i.tips\"\n nz-tooltip\n [nzTooltipTitle]=\"i.tips\"\n [nzSrc]=\"i.src\"\n [nzText]=\"i.text\"\n [nzIcon]=\"i.icon\"\n [nzSize]=\"avatarSize\"\n />\n <nz-avatar *ngIf=\"!i.tips\" [nzSrc]=\"i.src\" [nzText]=\"i.text\" [nzIcon]=\"i.icon\" [nzSize]=\"avatarSize\" />\n </li>\n <li *ngIf=\"exceedCount > 0\" [ngClass]=\"cls\">\n <nz-avatar [nzSize]=\"avatarSize\" style=\"cursor: auto\" [ngStyle]=\"excessItemsStyle\" [nzText]=\"'+' + exceedCount\" />\n </li>\n</ul>\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i3.NzAvatarComponent, selector: "nz-avatar", inputs: ["nzShape", "nzSize", "nzGap", "nzText", "nzSrc", "nzSrcSet", "nzAlt", "nzIcon"], outputs: ["nzError"], exportAs: ["nzAvatar"] }, { kind: "directive", type: i4.NzTooltipDirective, selector: "[nz-tooltip]", inputs: ["nzTooltipTitle", "nzTooltipTitleContext", "nz-tooltip", "nzTooltipTrigger", "nzTooltipPlacement", "nzTooltipOrigin", "nzTooltipVisible", "nzTooltipMouseEnterDelay", "nzTooltipMouseLeaveDelay", "nzTooltipOverlayClassName", "nzTooltipOverlayStyle", "nzTooltipArrowPointAtCenter", "nzTooltipColor"], outputs: ["nzTooltipVisibleChange"], exportAs: ["nzTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
66
63
  }
67
64
  __decorate([
68
65
  InputNumber()
69
66
  ], AvatarListComponent.prototype, "maxLength", void 0);
70
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AvatarListComponent, decorators: [{
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: AvatarListComponent, decorators: [{
71
68
  type: Component,
72
69
  args: [{ selector: 'avatar-list', exportAs: 'avatarList', host: {
73
70
  '[class.avatar-list]': 'true',
74
71
  '[class.avatar-list-rtl]': `dir === 'rtl'`
75
- }, preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ul class=\"avatar-list__wrap\">\n <li *ngFor=\"let i of items\" [ngClass]=\"cls\">\n <nz-avatar\n *ngIf=\"i.tips\"\n nz-tooltip\n [nzTooltipTitle]=\"i.tips\"\n [nzSrc]=\"i.src\"\n [nzText]=\"i.text\"\n [nzIcon]=\"i.icon\"\n [nzSize]=\"avatarSize\"\n ></nz-avatar>\n <nz-avatar *ngIf=\"!i.tips\" [nzSrc]=\"i.src\" [nzText]=\"i.text\" [nzIcon]=\"i.icon\" [nzSize]=\"avatarSize\"></nz-avatar>\n </li>\n <li *ngIf=\"exceedCount > 0\" [ngClass]=\"cls\">\n <nz-avatar\n [nzSize]=\"avatarSize\"\n style=\"cursor: auto\"\n [ngStyle]=\"excessItemsStyle\"\n [nzText]=\"'+' + exceedCount\"\n ></nz-avatar>\n </li>\n</ul>\n" }]
72
+ }, preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ul class=\"avatar-list__wrap\">\n <li *ngFor=\"let i of items\" [ngClass]=\"cls\">\n <nz-avatar\n *ngIf=\"i.tips\"\n nz-tooltip\n [nzTooltipTitle]=\"i.tips\"\n [nzSrc]=\"i.src\"\n [nzText]=\"i.text\"\n [nzIcon]=\"i.icon\"\n [nzSize]=\"avatarSize\"\n />\n <nz-avatar *ngIf=\"!i.tips\" [nzSrc]=\"i.src\" [nzText]=\"i.text\" [nzIcon]=\"i.icon\" [nzSize]=\"avatarSize\" />\n </li>\n <li *ngIf=\"exceedCount > 0\" [ngClass]=\"cls\">\n <nz-avatar [nzSize]=\"avatarSize\" style=\"cursor: auto\" [ngStyle]=\"excessItemsStyle\" [nzText]=\"'+' + exceedCount\" />\n </li>\n</ul>\n" }]
76
73
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.Directionality, decorators: [{
77
74
  type: Optional
78
75
  }] }]; }, propDecorators: { _items: [{
@@ -85,4 +82,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
85
82
  }], excessItemsStyle: [{
86
83
  type: Input
87
84
  }] } });
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWJjL2F2YXRhci1saXN0L2F2YXRhci1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FiYy9hdmF0YXItbGlzdC9hdmF0YXItbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUVMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLEtBQUssRUFHTCxRQUFRLEVBRVIsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxXQUFXLEVBQWUsTUFBTSx1QkFBdUIsQ0FBQztBQUdqRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7O0FBY3ZFLE1BQU0sT0FBTyxtQkFBbUI7SUFjOUIsSUFDSSxJQUFJLENBQUMsS0FBNkM7UUFDcEQsSUFBSSxDQUFDLEdBQUcsR0FBRyxvQkFBb0IsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsS0FBSyxFQUFFLEVBQUUsQ0FBQztRQUNyRixRQUFRLEtBQUssRUFBRTtZQUNiLEtBQUssT0FBTyxDQUFDO1lBQ2IsS0FBSyxPQUFPLENBQUM7WUFDYixLQUFLLFNBQVM7Z0JBQ1osSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7Z0JBQ3hCLE1BQU07WUFDUjtnQkFDRSxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQztnQkFDMUIsTUFBTTtTQUNUO0lBQ0gsQ0FBQztJQUlELFlBQ1UsR0FBc0IsRUFDVixjQUE4QjtRQUQxQyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUNWLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQTlCNUMsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUdmLGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRXZDLFVBQUssR0FBOEIsRUFBRSxDQUFDO1FBQ3RDLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ2hCLFFBQUcsR0FBYyxLQUFLLENBQUM7UUFFdkIsUUFBRyxHQUFHLEVBQUUsQ0FBQztRQUNULGVBQVUsR0FBa0IsU0FBUyxDQUFDO1FBZWQsY0FBUyxHQUFHLENBQUMsQ0FBQztRQUM3QixxQkFBZ0IsR0FBNEIsSUFBSSxDQUFDO0lBS3ZELENBQUM7SUFFSSxHQUFHO1FBQ1QsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQztRQUN4QixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUN0RSxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQ3BDLE1BQU0sU0FBUyxHQUFHLFNBQVMsR0FBRyxDQUFDLElBQUksU0FBUyxJQUFJLGFBQWEsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDMUYsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUNsRCxJQUFJLENBQUMsV0FBVyxHQUFHLFNBQVMsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLGFBQWEsR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM3RSxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQztRQUNyQyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFNBQW9CLEVBQUUsRUFBRTtZQUM1RixJQUFJLENBQUMsR0FBRyxHQUFHLFNBQVMsQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNYLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2YsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1NBQ1o7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDOzhHQWhFVSxtQkFBbUI7a0dBQW5CLG1CQUFtQixtUUFJYix1QkFBdUIsNEVDckMxQyxnckJBc0JBOztBRHVDMEI7SUFBZCxXQUFXLEVBQUU7c0RBQWU7MkZBNUIzQixtQkFBbUI7a0JBWi9CLFNBQVM7K0JBQ0UsYUFBYSxZQUNiLFlBQVksUUFFaEI7d0JBQ0oscUJBQXFCLEVBQUUsTUFBTTt3QkFDN0IseUJBQXlCLEVBQUUsZUFBZTtxQkFDM0MsdUJBQ29CLEtBQUssbUJBQ1QsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSTs7MEJBbUNsQyxRQUFROzRDQTVCSCxNQUFNO3NCQURiLGVBQWU7dUJBQUMsdUJBQXVCLEVBQUUsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFO2dCQVc1RCxJQUFJO3NCQURQLEtBQUs7Z0JBY2tCLFNBQVM7c0JBQWhDLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aW9uLCBEaXJlY3Rpb25hbGl0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9iaWRpJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT3B0aW9uYWwsXG4gIFF1ZXJ5TGlzdCxcbiAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgSW5wdXROdW1iZXIsIE51bWJlcklucHV0IH0gZnJvbSAnQGRlbG9uL3V0aWwvZGVjb3JhdG9yJztcbmltcG9ydCB0eXBlIHsgTmdTdHlsZUludGVyZmFjZSwgTnpTaXplTERTVHlwZSB9IGZyb20gJ25nLXpvcnJvLWFudGQvY29yZS90eXBlcyc7XG5cbmltcG9ydCB7IEF2YXRhckxpc3RJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9hdmF0YXItbGlzdC1pdGVtLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F2YXRhci1saXN0JyxcbiAgZXhwb3J0QXM6ICdhdmF0YXJMaXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2F2YXRhci1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgaG9zdDoge1xuICAgICdbY2xhc3MuYXZhdGFyLWxpc3RdJzogJ3RydWUnLFxuICAgICdbY2xhc3MuYXZhdGFyLWxpc3QtcnRsXSc6IGBkaXIgPT09ICdydGwnYFxuICB9LFxuICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgQXZhdGFyTGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX21heExlbmd0aDogTnVtYmVySW5wdXQ7XG5cbiAgcHJpdmF0ZSBpbml0ZWQgPSBmYWxzZTtcbiAgQENvbnRlbnRDaGlsZHJlbihBdmF0YXJMaXN0SXRlbUNvbXBvbmVudCwgeyBkZXNjZW5kYW50czogZmFsc2UgfSlcbiAgcHJpdmF0ZSBfaXRlbXMhOiBRdWVyeUxpc3Q8QXZhdGFyTGlzdEl0ZW1Db21wb25lbnQ+O1xuICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBpdGVtczogQXZhdGFyTGlzdEl0ZW1Db21wb25lbnRbXSA9IFtdO1xuICBleGNlZWRDb3VudCA9IDA7XG4gIGRpcjogRGlyZWN0aW9uID0gJ2x0cic7XG5cbiAgY2xzID0gJyc7XG4gIGF2YXRhclNpemU6IE56U2l6ZUxEU1R5cGUgPSAnZGVmYXVsdCc7XG4gIEBJbnB1dCgpXG4gIHNldCBzaXplKHZhbHVlOiAnbGFyZ2UnIHwgJ3NtYWxsJyB8ICdtaW5pJyB8ICdkZWZhdWx0Jykge1xuICAgIHRoaXMuY2xzID0gYGF2YXRhci1saXN0X19pdGVtJHt2YWx1ZSA9PT0gJ2RlZmF1bHQnID8gJycgOiBgIGF2YXRhci1saXN0X18ke3ZhbHVlfWB9YDtcbiAgICBzd2l0Y2ggKHZhbHVlKSB7XG4gICAgICBjYXNlICdsYXJnZSc6XG4gICAgICBjYXNlICdzbWFsbCc6XG4gICAgICBjYXNlICdkZWZhdWx0JzpcbiAgICAgICAgdGhpcy5hdmF0YXJTaXplID0gdmFsdWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhpcy5hdmF0YXJTaXplID0gJ3NtYWxsJztcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG4gIEBJbnB1dCgpIEBJbnB1dE51bWJlcigpIG1heExlbmd0aCA9IDA7XG4gIEBJbnB1dCgpIGV4Y2Vzc0l0ZW1zU3R5bGU6IE5nU3R5bGVJbnRlcmZhY2UgfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBkaXJlY3Rpb25hbGl0eTogRGlyZWN0aW9uYWxpdHlcbiAgKSB7fVxuXG4gIHByaXZhdGUgZ2VuKCk6IHZvaWQge1xuICAgIGNvbnN0IHsgX2l0ZW1zIH0gPSB0aGlzO1xuICAgIGNvbnN0IG1heExlbmd0aCA9IHRoaXMubWF4TGVuZ3RoID4gMCA/IHRoaXMubWF4TGVuZ3RoIDogX2l0ZW1zLmxlbmd0aDtcbiAgICBjb25zdCBudW1PZkNoaWxkcmVuID0gX2l0ZW1zLmxlbmd0aDtcbiAgICBjb25zdCBudW1Ub1Nob3cgPSBtYXhMZW5ndGggPiAwICYmIG1heExlbmd0aCA+PSBudW1PZkNoaWxkcmVuID8gbnVtT2ZDaGlsZHJlbiA6IG1heExlbmd0aDtcbiAgICB0aGlzLml0ZW1zID0gX2l0ZW1zLnRvQXJyYXkoKS5zbGljZSgwLCBudW1Ub1Nob3cpO1xuICAgIHRoaXMuZXhjZWVkQ291bnQgPSBudW1Ub1Nob3cgPCBudW1PZkNoaWxkcmVuID8gbnVtT2ZDaGlsZHJlbiAtIG1heExlbmd0aCA6IDA7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZGlyID0gdGhpcy5kaXJlY3Rpb25hbGl0eS52YWx1ZTtcbiAgICB0aGlzLmRpcmVjdGlvbmFsaXR5LmNoYW5nZT8ucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoZGlyZWN0aW9uOiBEaXJlY3Rpb24pID0+IHtcbiAgICAgIHRoaXMuZGlyID0gZGlyZWN0aW9uO1xuICAgIH0pO1xuICAgIHRoaXMuZ2VuKCk7XG4gICAgdGhpcy5pbml0ZWQgPSB0cnVlO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaW5pdGVkKSB7XG4gICAgICB0aGlzLmdlbigpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxufVxuIiwiPHVsIGNsYXNzPVwiYXZhdGFyLWxpc3RfX3dyYXBcIj5cbiAgPGxpICpuZ0Zvcj1cImxldCBpIG9mIGl0ZW1zXCIgW25nQ2xhc3NdPVwiY2xzXCI+XG4gICAgPG56LWF2YXRhclxuICAgICAgKm5nSWY9XCJpLnRpcHNcIlxuICAgICAgbnotdG9vbHRpcFxuICAgICAgW256VG9vbHRpcFRpdGxlXT1cImkudGlwc1wiXG4gICAgICBbbnpTcmNdPVwiaS5zcmNcIlxuICAgICAgW256VGV4dF09XCJpLnRleHRcIlxuICAgICAgW256SWNvbl09XCJpLmljb25cIlxuICAgICAgW256U2l6ZV09XCJhdmF0YXJTaXplXCJcbiAgICA+PC9uei1hdmF0YXI+XG4gICAgPG56LWF2YXRhciAqbmdJZj1cIiFpLnRpcHNcIiBbbnpTcmNdPVwiaS5zcmNcIiBbbnpUZXh0XT1cImkudGV4dFwiIFtuekljb25dPVwiaS5pY29uXCIgW256U2l6ZV09XCJhdmF0YXJTaXplXCI+PC9uei1hdmF0YXI+XG4gIDwvbGk+XG4gIDxsaSAqbmdJZj1cImV4Y2VlZENvdW50ID4gMFwiIFtuZ0NsYXNzXT1cImNsc1wiPlxuICAgIDxuei1hdmF0YXJcbiAgICAgIFtuelNpemVdPVwiYXZhdGFyU2l6ZVwiXG4gICAgICBzdHlsZT1cImN1cnNvcjogYXV0b1wiXG4gICAgICBbbmdTdHlsZV09XCJleGNlc3NJdGVtc1N0eWxlXCJcbiAgICAgIFtuelRleHRdPVwiJysnICsgZXhjZWVkQ291bnRcIlxuICAgID48L256LWF2YXRhcj5cbiAgPC9saT5cbjwvdWw+XG4iXX0=
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWJjL2F2YXRhci1saXN0L2F2YXRhci1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FiYy9hdmF0YXItbGlzdC9hdmF0YXItbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUVMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLEtBQUssRUFFTCxRQUFRLEVBRVIsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRWhFLE9BQU8sRUFBRSxXQUFXLEVBQWUsTUFBTSx1QkFBdUIsQ0FBQztBQUdqRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7O0FBY3ZFLE1BQU0sT0FBTyxtQkFBbUI7SUFjOUIsSUFDSSxJQUFJLENBQUMsS0FBNkM7UUFDcEQsSUFBSSxDQUFDLEdBQUcsR0FBRyxvQkFBb0IsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsS0FBSyxFQUFFLEVBQUUsQ0FBQztRQUNyRixRQUFRLEtBQUssRUFBRTtZQUNiLEtBQUssT0FBTyxDQUFDO1lBQ2IsS0FBSyxPQUFPLENBQUM7WUFDYixLQUFLLFNBQVM7Z0JBQ1osSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7Z0JBQ3hCLE1BQU07WUFDUjtnQkFDRSxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQztnQkFDMUIsTUFBTTtTQUNUO0lBQ0gsQ0FBQztJQUlELFlBQ1UsR0FBc0IsRUFDVixjQUE4QjtRQUQxQyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUNWLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQTlCNUMsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUdmLFNBQUksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDO1FBRXRFLFVBQUssR0FBOEIsRUFBRSxDQUFDO1FBQ3RDLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ2hCLFFBQUcsR0FBYyxLQUFLLENBQUM7UUFFdkIsUUFBRyxHQUFHLEVBQUUsQ0FBQztRQUNULGVBQVUsR0FBa0IsU0FBUyxDQUFDO1FBZWQsY0FBUyxHQUFHLENBQUMsQ0FBQztRQUM3QixxQkFBZ0IsR0FBNEIsSUFBSSxDQUFDO0lBS3ZELENBQUM7SUFFSSxHQUFHO1FBQ1QsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQztRQUN4QixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUN0RSxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQ3BDLE1BQU0sU0FBUyxHQUFHLFNBQVMsR0FBRyxDQUFDLElBQUksU0FBUyxJQUFJLGFBQWEsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDMUYsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUNsRCxJQUFJLENBQUMsV0FBVyxHQUFHLFNBQVMsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLGFBQWEsR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM3RSxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQztRQUNyQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFNBQW9CLEVBQUUsRUFBRTtZQUMzQyxJQUFJLENBQUMsR0FBRyxHQUFHLFNBQVMsQ0FBQztZQUNyQixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ1gsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7SUFDckIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDZixJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7U0FDWjtJQUNILENBQUM7OEdBNURVLG1CQUFtQjtrR0FBbkIsbUJBQW1CLG1RQUliLHVCQUF1Qiw0RUNwQzFDLCttQkFpQkE7O0FEMkMwQjtJQUFkLFdBQVcsRUFBRTtzREFBZTsyRkE1QjNCLG1CQUFtQjtrQkFaL0IsU0FBUzsrQkFDRSxhQUFhLFlBQ2IsWUFBWSxRQUVoQjt3QkFDSixxQkFBcUIsRUFBRSxNQUFNO3dCQUM3Qix5QkFBeUIsRUFBRSxlQUFlO3FCQUMzQyx1QkFDb0IsS0FBSyxtQkFDVCx1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJOzswQkFtQ2xDLFFBQVE7NENBNUJILE1BQU07c0JBRGIsZUFBZTt1QkFBQyx1QkFBdUIsRUFBRSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUU7Z0JBVzVELElBQUk7c0JBRFAsS0FBSztnQkFja0IsU0FBUztzQkFBaEMsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3Rpb24sIERpcmVjdGlvbmFsaXR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT3B0aW9uYWwsXG4gIFF1ZXJ5TGlzdCxcbiAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbmltcG9ydCB7IElucHV0TnVtYmVyLCBOdW1iZXJJbnB1dCB9IGZyb20gJ0BkZWxvbi91dGlsL2RlY29yYXRvcic7XG5pbXBvcnQgdHlwZSB7IE5nU3R5bGVJbnRlcmZhY2UsIE56U2l6ZUxEU1R5cGUgfSBmcm9tICduZy16b3Jyby1hbnRkL2NvcmUvdHlwZXMnO1xuXG5pbXBvcnQgeyBBdmF0YXJMaXN0SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vYXZhdGFyLWxpc3QtaXRlbS5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdmF0YXItbGlzdCcsXG4gIGV4cG9ydEFzOiAnYXZhdGFyTGlzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9hdmF0YXItbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIGhvc3Q6IHtcbiAgICAnW2NsYXNzLmF2YXRhci1saXN0XSc6ICd0cnVlJyxcbiAgICAnW2NsYXNzLmF2YXRhci1saXN0LXJ0bF0nOiBgZGlyID09PSAncnRsJ2BcbiAgfSxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIEF2YXRhckxpc3RDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMge1xuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfbWF4TGVuZ3RoOiBOdW1iZXJJbnB1dDtcblxuICBwcml2YXRlIGluaXRlZCA9IGZhbHNlO1xuICBAQ29udGVudENoaWxkcmVuKEF2YXRhckxpc3RJdGVtQ29tcG9uZW50LCB7IGRlc2NlbmRhbnRzOiBmYWxzZSB9KVxuICBwcml2YXRlIF9pdGVtcyE6IFF1ZXJ5TGlzdDxBdmF0YXJMaXN0SXRlbUNvbXBvbmVudD47XG4gIHByaXZhdGUgZGlyJCA9IHRoaXMuZGlyZWN0aW9uYWxpdHkuY2hhbmdlPy5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKTtcblxuICBpdGVtczogQXZhdGFyTGlzdEl0ZW1Db21wb25lbnRbXSA9IFtdO1xuICBleGNlZWRDb3VudCA9IDA7XG4gIGRpcjogRGlyZWN0aW9uID0gJ2x0cic7XG5cbiAgY2xzID0gJyc7XG4gIGF2YXRhclNpemU6IE56U2l6ZUxEU1R5cGUgPSAnZGVmYXVsdCc7XG4gIEBJbnB1dCgpXG4gIHNldCBzaXplKHZhbHVlOiAnbGFyZ2UnIHwgJ3NtYWxsJyB8ICdtaW5pJyB8ICdkZWZhdWx0Jykge1xuICAgIHRoaXMuY2xzID0gYGF2YXRhci1saXN0X19pdGVtJHt2YWx1ZSA9PT0gJ2RlZmF1bHQnID8gJycgOiBgIGF2YXRhci1saXN0X18ke3ZhbHVlfWB9YDtcbiAgICBzd2l0Y2ggKHZhbHVlKSB7XG4gICAgICBjYXNlICdsYXJnZSc6XG4gICAgICBjYXNlICdzbWFsbCc6XG4gICAgICBjYXNlICdkZWZhdWx0JzpcbiAgICAgICAgdGhpcy5hdmF0YXJTaXplID0gdmFsdWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhpcy5hdmF0YXJTaXplID0gJ3NtYWxsJztcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG4gIEBJbnB1dCgpIEBJbnB1dE51bWJlcigpIG1heExlbmd0aCA9IDA7XG4gIEBJbnB1dCgpIGV4Y2Vzc0l0ZW1zU3R5bGU6IE5nU3R5bGVJbnRlcmZhY2UgfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBkaXJlY3Rpb25hbGl0eTogRGlyZWN0aW9uYWxpdHlcbiAgKSB7fVxuXG4gIHByaXZhdGUgZ2VuKCk6IHZvaWQge1xuICAgIGNvbnN0IHsgX2l0ZW1zIH0gPSB0aGlzO1xuICAgIGNvbnN0IG1heExlbmd0aCA9IHRoaXMubWF4TGVuZ3RoID4gMCA/IHRoaXMubWF4TGVuZ3RoIDogX2l0ZW1zLmxlbmd0aDtcbiAgICBjb25zdCBudW1PZkNoaWxkcmVuID0gX2l0ZW1zLmxlbmd0aDtcbiAgICBjb25zdCBudW1Ub1Nob3cgPSBtYXhMZW5ndGggPiAwICYmIG1heExlbmd0aCA+PSBudW1PZkNoaWxkcmVuID8gbnVtT2ZDaGlsZHJlbiA6IG1heExlbmd0aDtcbiAgICB0aGlzLml0ZW1zID0gX2l0ZW1zLnRvQXJyYXkoKS5zbGljZSgwLCBudW1Ub1Nob3cpO1xuICAgIHRoaXMuZXhjZWVkQ291bnQgPSBudW1Ub1Nob3cgPCBudW1PZkNoaWxkcmVuID8gbnVtT2ZDaGlsZHJlbiAtIG1heExlbmd0aCA6IDA7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZGlyID0gdGhpcy5kaXJlY3Rpb25hbGl0eS52YWx1ZTtcbiAgICB0aGlzLmRpciQuc3Vic2NyaWJlKChkaXJlY3Rpb246IERpcmVjdGlvbikgPT4ge1xuICAgICAgdGhpcy5kaXIgPSBkaXJlY3Rpb247XG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfSk7XG4gICAgdGhpcy5nZW4oKTtcbiAgICB0aGlzLmluaXRlZCA9IHRydWU7XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pbml0ZWQpIHtcbiAgICAgIHRoaXMuZ2VuKCk7XG4gICAgfVxuICB9XG59XG4iLCI8dWwgY2xhc3M9XCJhdmF0YXItbGlzdF9fd3JhcFwiPlxuICA8bGkgKm5nRm9yPVwibGV0IGkgb2YgaXRlbXNcIiBbbmdDbGFzc109XCJjbHNcIj5cbiAgICA8bnotYXZhdGFyXG4gICAgICAqbmdJZj1cImkudGlwc1wiXG4gICAgICBuei10b29sdGlwXG4gICAgICBbbnpUb29sdGlwVGl0bGVdPVwiaS50aXBzXCJcbiAgICAgIFtuelNyY109XCJpLnNyY1wiXG4gICAgICBbbnpUZXh0XT1cImkudGV4dFwiXG4gICAgICBbbnpJY29uXT1cImkuaWNvblwiXG4gICAgICBbbnpTaXplXT1cImF2YXRhclNpemVcIlxuICAgIC8+XG4gICAgPG56LWF2YXRhciAqbmdJZj1cIiFpLnRpcHNcIiBbbnpTcmNdPVwiaS5zcmNcIiBbbnpUZXh0XT1cImkudGV4dFwiIFtuekljb25dPVwiaS5pY29uXCIgW256U2l6ZV09XCJhdmF0YXJTaXplXCIgLz5cbiAgPC9saT5cbiAgPGxpICpuZ0lmPVwiZXhjZWVkQ291bnQgPiAwXCIgW25nQ2xhc3NdPVwiY2xzXCI+XG4gICAgPG56LWF2YXRhciBbbnpTaXplXT1cImF2YXRhclNpemVcIiBzdHlsZT1cImN1cnNvcjogYXV0b1wiIFtuZ1N0eWxlXT1cImV4Y2Vzc0l0ZW1zU3R5bGVcIiBbbnpUZXh0XT1cIicrJyArIGV4Y2VlZENvdW50XCIgLz5cbiAgPC9saT5cbjwvdWw+XG4iXX0=