@delon/abc 18.2.0 → 19.0.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 (264) hide show
  1. package/auto-focus/auto-focus.directive.d.ts +3 -5
  2. package/avatar-list/avatar-list.component.d.ts +3 -0
  3. package/avatar-list/avatar-list.module.d.ts +3 -0
  4. package/exception/exception.component.d.ts +1 -1
  5. package/fesm2022/auto-focus.mjs +19 -28
  6. package/fesm2022/auto-focus.mjs.map +1 -1
  7. package/fesm2022/avatar-list.mjs +35 -27
  8. package/fesm2022/avatar-list.mjs.map +1 -1
  9. package/fesm2022/cell.mjs +104 -107
  10. package/fesm2022/cell.mjs.map +1 -1
  11. package/fesm2022/chart-observer-size.mjs +17 -22
  12. package/fesm2022/chart-observer-size.mjs.map +1 -1
  13. package/fesm2022/count-down.mjs +11 -12
  14. package/fesm2022/count-down.mjs.map +1 -1
  15. package/fesm2022/date-picker.mjs +26 -26
  16. package/fesm2022/date-picker.mjs.map +1 -1
  17. package/fesm2022/down-file.mjs +19 -15
  18. package/fesm2022/down-file.mjs.map +1 -1
  19. package/fesm2022/ellipsis.mjs +29 -25
  20. package/fesm2022/ellipsis.mjs.map +1 -1
  21. package/fesm2022/error-collect.mjs +22 -21
  22. package/fesm2022/error-collect.mjs.map +1 -1
  23. package/fesm2022/exception.mjs +24 -20
  24. package/fesm2022/exception.mjs.map +1 -1
  25. package/fesm2022/footer-toolbar.mjs +13 -14
  26. package/fesm2022/footer-toolbar.mjs.map +1 -1
  27. package/fesm2022/full-content.mjs +31 -38
  28. package/fesm2022/full-content.mjs.map +1 -1
  29. package/fesm2022/global-footer.mjs +24 -23
  30. package/fesm2022/global-footer.mjs.map +1 -1
  31. package/fesm2022/hotkey.mjs +13 -15
  32. package/fesm2022/hotkey.mjs.map +1 -1
  33. package/fesm2022/loading.mjs +23 -21
  34. package/fesm2022/loading.mjs.map +1 -1
  35. package/fesm2022/lodop.mjs +15 -13
  36. package/fesm2022/lodop.mjs.map +1 -1
  37. package/fesm2022/media.mjs +30 -30
  38. package/fesm2022/media.mjs.map +1 -1
  39. package/fesm2022/notice-icon.mjs +48 -84
  40. package/fesm2022/notice-icon.mjs.map +1 -1
  41. package/fesm2022/onboarding.mjs +41 -37
  42. package/fesm2022/onboarding.mjs.map +1 -1
  43. package/fesm2022/page-header.mjs +48 -36
  44. package/fesm2022/page-header.mjs.map +1 -1
  45. package/fesm2022/pdf.mjs +45 -34
  46. package/fesm2022/pdf.mjs.map +1 -1
  47. package/fesm2022/quick-menu.mjs +22 -22
  48. package/fesm2022/quick-menu.mjs.map +1 -1
  49. package/fesm2022/result.mjs +17 -16
  50. package/fesm2022/result.mjs.map +1 -1
  51. package/fesm2022/reuse-tab.mjs +124 -122
  52. package/fesm2022/reuse-tab.mjs.map +1 -1
  53. package/fesm2022/se.mjs +68 -50
  54. package/fesm2022/se.mjs.map +1 -1
  55. package/fesm2022/sg.mjs +22 -21
  56. package/fesm2022/sg.mjs.map +1 -1
  57. package/fesm2022/st.mjs +445 -419
  58. package/fesm2022/st.mjs.map +1 -1
  59. package/fesm2022/sv.mjs +62 -43
  60. package/fesm2022/sv.mjs.map +1 -1
  61. package/fesm2022/tag-select.mjs +18 -20
  62. package/fesm2022/tag-select.mjs.map +1 -1
  63. package/fesm2022/xlsx.mjs +17 -18
  64. package/fesm2022/xlsx.mjs.map +1 -1
  65. package/fesm2022/zip.mjs +7 -6
  66. package/fesm2022/zip.mjs.map +1 -1
  67. package/hotkey/hotkey.directive.d.ts +2 -2
  68. package/notice-icon/notice-icon-tab.component.d.ts +5 -6
  69. package/notice-icon/notice-icon.component.d.ts +17 -22
  70. package/package.json +5 -75
  71. package/reuse-tab/public_api.d.ts +2 -1
  72. package/st/st-column-source.d.ts +1 -0
  73. package/st/st-filter.component.d.ts +4 -4
  74. package/st/st-row.directive.d.ts +1 -1
  75. package/st/st-widget-host.directive.d.ts +1 -1
  76. package/st/st.component.d.ts +38 -26
  77. package/st/st.interfaces.d.ts +26 -4
  78. package/st/st.module.d.ts +1 -22
  79. package/st/st.types.d.ts +2 -3
  80. package/sv/sv-container.component.d.ts +1 -1
  81. package/esm2022/abc.mjs +0 -5
  82. package/esm2022/auto-focus/auto-focus.directive.mjs +0 -40
  83. package/esm2022/auto-focus/auto-focus.mjs +0 -5
  84. package/esm2022/auto-focus/auto-focus.module.mjs +0 -17
  85. package/esm2022/auto-focus/index.mjs +0 -3
  86. package/esm2022/avatar-list/avatar-list-item.component.mjs +0 -27
  87. package/esm2022/avatar-list/avatar-list.component.mjs +0 -79
  88. package/esm2022/avatar-list/avatar-list.mjs +0 -5
  89. package/esm2022/avatar-list/avatar-list.module.mjs +0 -21
  90. package/esm2022/avatar-list/public_api.mjs +0 -4
  91. package/esm2022/cell/cell-host.directive.mjs +0 -35
  92. package/esm2022/cell/cell.component.mjs +0 -289
  93. package/esm2022/cell/cell.mjs +0 -5
  94. package/esm2022/cell/cell.module.mjs +0 -55
  95. package/esm2022/cell/cell.service.mjs +0 -173
  96. package/esm2022/cell/cell.types.mjs +0 -2
  97. package/esm2022/cell/index.mjs +0 -7
  98. package/esm2022/cell/provide.mjs +0 -18
  99. package/esm2022/count-down/count-down.component.mjs +0 -50
  100. package/esm2022/count-down/count-down.mjs +0 -5
  101. package/esm2022/count-down/count-down.module.mjs +0 -19
  102. package/esm2022/count-down/public_api.mjs +0 -3
  103. package/esm2022/date-picker/date-picker.mjs +0 -5
  104. package/esm2022/date-picker/date-picker.module.mjs +0 -21
  105. package/esm2022/date-picker/public_api.mjs +0 -4
  106. package/esm2022/date-picker/range-shortcut.component.mjs +0 -34
  107. package/esm2022/date-picker/range.directive.mjs +0 -168
  108. package/esm2022/down-file/down-file.directive.mjs +0 -113
  109. package/esm2022/down-file/down-file.mjs +0 -5
  110. package/esm2022/down-file/down-file.module.mjs +0 -19
  111. package/esm2022/down-file/public_api.mjs +0 -3
  112. package/esm2022/ellipsis/ellipsis.component.mjs +0 -219
  113. package/esm2022/ellipsis/ellipsis.mjs +0 -5
  114. package/esm2022/ellipsis/ellipsis.module.mjs +0 -20
  115. package/esm2022/ellipsis/public_api.mjs +0 -3
  116. package/esm2022/error-collect/error-collect.component.mjs +0 -110
  117. package/esm2022/error-collect/error-collect.mjs +0 -5
  118. package/esm2022/error-collect/error-collect.module.mjs +0 -19
  119. package/esm2022/error-collect/public_api.mjs +0 -3
  120. package/esm2022/exception/exception.component.mjs +0 -103
  121. package/esm2022/exception/exception.mjs +0 -5
  122. package/esm2022/exception/exception.module.mjs +0 -22
  123. package/esm2022/exception/public_api.mjs +0 -3
  124. package/esm2022/footer-toolbar/footer-toolbar.component.mjs +0 -33
  125. package/esm2022/footer-toolbar/footer-toolbar.mjs +0 -5
  126. package/esm2022/footer-toolbar/footer-toolbar.module.mjs +0 -20
  127. package/esm2022/footer-toolbar/public_api.mjs +0 -3
  128. package/esm2022/full-content/full-content-toggle.directive.mjs +0 -25
  129. package/esm2022/full-content/full-content.component.mjs +0 -125
  130. package/esm2022/full-content/full-content.mjs +0 -5
  131. package/esm2022/full-content/full-content.module.mjs +0 -19
  132. package/esm2022/full-content/full-content.service.mjs +0 -22
  133. package/esm2022/full-content/public_api.mjs +0 -5
  134. package/esm2022/global-footer/global-footer-item.component.mjs +0 -27
  135. package/esm2022/global-footer/global-footer.component.mjs +0 -65
  136. package/esm2022/global-footer/global-footer.mjs +0 -5
  137. package/esm2022/global-footer/global-footer.module.mjs +0 -20
  138. package/esm2022/global-footer/global-footer.types.mjs +0 -2
  139. package/esm2022/global-footer/public_api.mjs +0 -5
  140. package/esm2022/hotkey/hotkey.directive.mjs +0 -36
  141. package/esm2022/hotkey/hotkey.mjs +0 -5
  142. package/esm2022/hotkey/hotkey.module.mjs +0 -17
  143. package/esm2022/hotkey/public_api.mjs +0 -3
  144. package/esm2022/let/index.mjs +0 -3
  145. package/esm2022/let/let.directive.mjs +0 -40
  146. package/esm2022/let/let.mjs +0 -5
  147. package/esm2022/let/let.module.mjs +0 -20
  148. package/esm2022/loading/loading.component.mjs +0 -26
  149. package/esm2022/loading/loading.mjs +0 -5
  150. package/esm2022/loading/loading.module.mjs +0 -22
  151. package/esm2022/loading/loading.service.mjs +0 -88
  152. package/esm2022/loading/loading.types.mjs +0 -2
  153. package/esm2022/loading/public_api.mjs +0 -5
  154. package/esm2022/lodop/lodop.mjs +0 -5
  155. package/esm2022/lodop/lodop.module.mjs +0 -12
  156. package/esm2022/lodop/lodop.service.mjs +0 -224
  157. package/esm2022/lodop/lodop.types.mjs +0 -2
  158. package/esm2022/lodop/public_api.mjs +0 -4
  159. package/esm2022/media/media.component.mjs +0 -114
  160. package/esm2022/media/media.mjs +0 -5
  161. package/esm2022/media/media.module.mjs +0 -18
  162. package/esm2022/media/media.service.mjs +0 -46
  163. package/esm2022/media/public_api.mjs +0 -4
  164. package/esm2022/notice-icon/notice-icon-tab.component.mjs +0 -41
  165. package/esm2022/notice-icon/notice-icon.component.mjs +0 -96
  166. package/esm2022/notice-icon/notice-icon.mjs +0 -5
  167. package/esm2022/notice-icon/notice-icon.module.mjs +0 -59
  168. package/esm2022/notice-icon/notice-icon.types.mjs +0 -2
  169. package/esm2022/notice-icon/public_api.mjs +0 -5
  170. package/esm2022/observers/chart-observer-size.mjs +0 -5
  171. package/esm2022/observers/observer-size.mjs +0 -117
  172. package/esm2022/observers/public-api.mjs +0 -2
  173. package/esm2022/onboarding/onboarding.component.mjs +0 -127
  174. package/esm2022/onboarding/onboarding.mjs +0 -5
  175. package/esm2022/onboarding/onboarding.module.mjs +0 -42
  176. package/esm2022/onboarding/onboarding.service.mjs +0 -192
  177. package/esm2022/onboarding/onboarding.storage.mjs +0 -17
  178. package/esm2022/onboarding/onboarding.types.mjs +0 -2
  179. package/esm2022/onboarding/public_api.mjs +0 -6
  180. package/esm2022/page-header/page-header.component.mjs +0 -220
  181. package/esm2022/page-header/page-header.mjs +0 -5
  182. package/esm2022/page-header/page-header.module.mjs +0 -45
  183. package/esm2022/page-header/public_api.mjs +0 -3
  184. package/esm2022/pdf/pdf.component.mjs +0 -449
  185. package/esm2022/pdf/pdf.config.mjs +0 -10
  186. package/esm2022/pdf/pdf.mjs +0 -5
  187. package/esm2022/pdf/pdf.module.mjs +0 -19
  188. package/esm2022/pdf/pdf.types.mjs +0 -16
  189. package/esm2022/pdf/public_api.mjs +0 -5
  190. package/esm2022/public_api.mjs +0 -3
  191. package/esm2022/quick-menu/public_api.mjs +0 -3
  192. package/esm2022/quick-menu/quick-menu.component.mjs +0 -81
  193. package/esm2022/quick-menu/quick-menu.mjs +0 -5
  194. package/esm2022/quick-menu/quick-menu.module.mjs +0 -20
  195. package/esm2022/result/public_api.mjs +0 -3
  196. package/esm2022/result/result.component.mjs +0 -58
  197. package/esm2022/result/result.mjs +0 -5
  198. package/esm2022/result/result.module.mjs +0 -23
  199. package/esm2022/reuse-tab/lifecycle_hooks.mjs +0 -2
  200. package/esm2022/reuse-tab/provide.mjs +0 -74
  201. package/esm2022/reuse-tab/public_api.mjs +0 -14
  202. package/esm2022/reuse-tab/reuse-tab-context-menu.component.mjs +0 -75
  203. package/esm2022/reuse-tab/reuse-tab-context.component.mjs +0 -30
  204. package/esm2022/reuse-tab/reuse-tab-context.directive.mjs +0 -36
  205. package/esm2022/reuse-tab/reuse-tab-context.service.mjs +0 -54
  206. package/esm2022/reuse-tab/reuse-tab.cache.mjs +0 -13
  207. package/esm2022/reuse-tab/reuse-tab.component.mjs +0 -337
  208. package/esm2022/reuse-tab/reuse-tab.interfaces.mjs +0 -33
  209. package/esm2022/reuse-tab/reuse-tab.mjs +0 -5
  210. package/esm2022/reuse-tab/reuse-tab.module.mjs +0 -79
  211. package/esm2022/reuse-tab/reuse-tab.service.mjs +0 -574
  212. package/esm2022/reuse-tab/reuse-tab.state.mjs +0 -16
  213. package/esm2022/reuse-tab/reuse-tab.strategy.mjs +0 -23
  214. package/esm2022/se/public_api.mjs +0 -5
  215. package/esm2022/se/se-container.component.mjs +0 -158
  216. package/esm2022/se/se.component.mjs +0 -220
  217. package/esm2022/se/se.mjs +0 -5
  218. package/esm2022/se/se.module.mjs +0 -22
  219. package/esm2022/se/se.types.mjs +0 -14
  220. package/esm2022/sg/public_api.mjs +0 -4
  221. package/esm2022/sg/sg-container.component.mjs +0 -44
  222. package/esm2022/sg/sg.component.mjs +0 -62
  223. package/esm2022/sg/sg.mjs +0 -5
  224. package/esm2022/sg/sg.module.mjs +0 -19
  225. package/esm2022/st/provide.mjs +0 -18
  226. package/esm2022/st/public_api.mjs +0 -13
  227. package/esm2022/st/st-column-source.mjs +0 -496
  228. package/esm2022/st/st-data-source.mjs +0 -507
  229. package/esm2022/st/st-export.mjs +0 -87
  230. package/esm2022/st/st-filter.component.mjs +0 -293
  231. package/esm2022/st/st-row.directive.mjs +0 -43
  232. package/esm2022/st/st-widget-host.directive.mjs +0 -31
  233. package/esm2022/st/st-widget.mjs +0 -26
  234. package/esm2022/st/st.component.mjs +0 -966
  235. package/esm2022/st/st.config.mjs +0 -79
  236. package/esm2022/st/st.interfaces.mjs +0 -2
  237. package/esm2022/st/st.mjs +0 -5
  238. package/esm2022/st/st.module.mjs +0 -100
  239. package/esm2022/st/st.types.mjs +0 -2
  240. package/esm2022/sv/public_api.mjs +0 -5
  241. package/esm2022/sv/sv-container.component.mjs +0 -127
  242. package/esm2022/sv/sv-value.component.mjs +0 -53
  243. package/esm2022/sv/sv.component.mjs +0 -109
  244. package/esm2022/sv/sv.mjs +0 -5
  245. package/esm2022/sv/sv.module.mjs +0 -24
  246. package/esm2022/tag-select/public_api.mjs +0 -3
  247. package/esm2022/tag-select/tag-select.component.mjs +0 -53
  248. package/esm2022/tag-select/tag-select.mjs +0 -5
  249. package/esm2022/tag-select/tag-select.module.mjs +0 -20
  250. package/esm2022/xlsx/public_api.mjs +0 -5
  251. package/esm2022/xlsx/xlsx.directive.mjs +0 -28
  252. package/esm2022/xlsx/xlsx.mjs +0 -5
  253. package/esm2022/xlsx/xlsx.module.mjs +0 -17
  254. package/esm2022/xlsx/xlsx.service.mjs +0 -128
  255. package/esm2022/xlsx/xlsx.types.mjs +0 -2
  256. package/esm2022/zip/public_api.mjs +0 -3
  257. package/esm2022/zip/zip.mjs +0 -5
  258. package/esm2022/zip/zip.service.mjs +0 -116
  259. package/esm2022/zip/zip.types.mjs +0 -2
  260. package/fesm2022/let.mjs +0 -64
  261. package/fesm2022/let.mjs.map +0 -1
  262. package/let/index.d.ts +0 -2
  263. package/let/let.directive.d.ts +0 -19
  264. package/let/let.module.d.ts +0 -10
@@ -6,9 +6,7 @@ import { Router, ActivationStart, ActivationEnd } from '@angular/router';
6
6
  import { BehaviorSubject, share, fromEvent, debounceTime, filter } from 'rxjs';
7
7
 
8
8
  class FullContentService {
9
- constructor() {
10
- this._change = new BehaviorSubject(null);
11
- }
9
+ _change = new BehaviorSubject(null);
12
10
  /** 切换全屏工作区状态 */
13
11
  toggle() {
14
12
  this._change.next(true);
@@ -16,10 +14,10 @@ class FullContentService {
16
14
  get change() {
17
15
  return this._change.pipe(share());
18
16
  }
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FullContentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
20
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FullContentService, providedIn: 'root' }); }
17
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: FullContentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
18
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: FullContentService, providedIn: 'root' });
21
19
  }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FullContentService, decorators: [{
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: FullContentService, decorators: [{
23
21
  type: Injectable,
24
22
  args: [{ providedIn: 'root' }]
25
23
  }] });
@@ -28,21 +26,20 @@ const wrapCls = `full-content__body`;
28
26
  const openedCls = `full-content__opened`;
29
27
  const hideTitleCls = `full-content__hidden-title`;
30
28
  class FullContentComponent {
31
- constructor() {
32
- this.destroy$ = inject(DestroyRef);
33
- this.el = inject(ElementRef).nativeElement;
34
- this.cdr = inject(ChangeDetectorRef);
35
- this.srv = inject(FullContentService);
36
- this.router = inject(Router);
37
- this.doc = inject(DOCUMENT);
38
- this.bodyEl = this.doc.querySelector('body');
39
- this.inited = false;
40
- this.id = `_full-content-${Math.random().toString(36).substring(2)}`;
41
- this._height = 0;
42
- this.hideTitle = true;
43
- this.padding = 24;
44
- this.fullscreenChange = new EventEmitter();
45
- }
29
+ destroy$ = inject(DestroyRef);
30
+ el = inject(ElementRef).nativeElement;
31
+ cdr = inject(ChangeDetectorRef);
32
+ srv = inject(FullContentService);
33
+ router = inject(Router);
34
+ doc = inject(DOCUMENT);
35
+ bodyEl = this.doc.querySelector('body');
36
+ inited = false;
37
+ id = `_full-content-${Math.random().toString(36).substring(2)}`;
38
+ _height = 0;
39
+ fullscreen;
40
+ hideTitle = true;
41
+ padding = 24;
42
+ fullscreenChange = new EventEmitter();
46
43
  updateCls() {
47
44
  const clss = this.bodyEl.classList;
48
45
  if (this.fullscreen) {
@@ -111,10 +108,10 @@ class FullContentComponent {
111
108
  ngOnDestroy() {
112
109
  this.removeInBody();
113
110
  }
114
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FullContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
115
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.7", type: FullContentComponent, isStandalone: true, selector: "full-content", inputs: { fullscreen: ["fullscreen", "fullscreen", booleanAttribute], hideTitle: ["hideTitle", "hideTitle", booleanAttribute], padding: ["padding", "padding", numberAttribute] }, outputs: { fullscreenChange: "fullscreenChange" }, host: { properties: { "class.full-content": "true", "style.height.px": "_height" } }, exportAs: ["fullContent"], usesOnChanges: true, ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
111
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: FullContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
112
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "19.1.1", type: FullContentComponent, isStandalone: true, selector: "full-content", inputs: { fullscreen: ["fullscreen", "fullscreen", booleanAttribute], hideTitle: ["hideTitle", "hideTitle", booleanAttribute], padding: ["padding", "padding", numberAttribute] }, outputs: { fullscreenChange: "fullscreenChange" }, host: { properties: { "class.full-content": "true", "style.height.px": "_height" } }, exportAs: ["fullContent"], usesOnChanges: true, ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
116
113
  }
117
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FullContentComponent, decorators: [{
114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: FullContentComponent, decorators: [{
118
115
  type: Component,
119
116
  args: [{
120
117
  selector: 'full-content',
@@ -126,8 +123,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
126
123
  },
127
124
  preserveWhitespaces: false,
128
125
  changeDetection: ChangeDetectionStrategy.OnPush,
129
- encapsulation: ViewEncapsulation.None,
130
- standalone: true
126
+ encapsulation: ViewEncapsulation.None
131
127
  }]
132
128
  }], propDecorators: { fullscreen: [{
133
129
  type: Input,
@@ -143,34 +139,31 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
143
139
  }] } });
144
140
 
145
141
  class FullContentToggleDirective {
146
- constructor() {
147
- this.parent = inject(FullContentComponent);
148
- }
142
+ parent = inject(FullContentComponent);
149
143
  _click() {
150
144
  this.parent.toggle();
151
145
  }
152
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FullContentToggleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
153
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: FullContentToggleDirective, isStandalone: true, selector: "[full-toggle]", host: { listeners: { "click": "_click()" } }, exportAs: ["fullToggle"], ngImport: i0 }); }
146
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: FullContentToggleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
147
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.1", type: FullContentToggleDirective, isStandalone: true, selector: "[full-toggle]", host: { listeners: { "click": "_click()" } }, exportAs: ["fullToggle"], ngImport: i0 });
154
148
  }
155
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FullContentToggleDirective, decorators: [{
149
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: FullContentToggleDirective, decorators: [{
156
150
  type: Directive,
157
151
  args: [{
158
152
  selector: '[full-toggle]',
159
153
  exportAs: 'fullToggle',
160
154
  host: {
161
155
  '(click)': '_click()'
162
- },
163
- standalone: true
156
+ }
164
157
  }]
165
158
  }] });
166
159
 
167
160
  const COMPONENTS = [FullContentComponent, FullContentToggleDirective];
168
161
  class FullContentModule {
169
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FullContentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
170
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.7", ngImport: i0, type: FullContentModule, imports: [CommonModule, FullContentComponent, FullContentToggleDirective], exports: [FullContentComponent, FullContentToggleDirective] }); }
171
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FullContentModule, imports: [CommonModule] }); }
162
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: FullContentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
163
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.1", ngImport: i0, type: FullContentModule, imports: [CommonModule, FullContentComponent, FullContentToggleDirective], exports: [FullContentComponent, FullContentToggleDirective] });
164
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: FullContentModule, imports: [CommonModule] });
172
165
  }
173
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FullContentModule, decorators: [{
166
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: FullContentModule, decorators: [{
174
167
  type: NgModule,
175
168
  args: [{
176
169
  imports: [CommonModule, ...COMPONENTS],
@@ -1 +1 @@
1
- {"version":3,"file":"full-content.mjs","sources":["../../../../packages/abc/full-content/full-content.service.ts","../../../../packages/abc/full-content/full-content.component.ts","../../../../packages/abc/full-content/full-content-toggle.directive.ts","../../../../packages/abc/full-content/full-content.module.ts","../../../../packages/abc/full-content/full-content.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable, share } from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class FullContentService {\n private _change = new BehaviorSubject<boolean | null>(null);\n\n /** 切换全屏工作区状态 */\n toggle(): void {\n this._change.next(true);\n }\n\n get change(): Observable<boolean | null> {\n return this._change.pipe(share());\n }\n}\n","import { DOCUMENT } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DestroyRef,\n ElementRef,\n EventEmitter,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n Output,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n numberAttribute\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ActivationEnd, ActivationStart, Event, Router } from '@angular/router';\nimport { fromEvent, debounceTime, filter } from 'rxjs';\n\nimport { FullContentService } from './full-content.service';\n\nconst wrapCls = `full-content__body`;\nconst openedCls = `full-content__opened`;\nconst hideTitleCls = `full-content__hidden-title`;\n\n@Component({\n selector: 'full-content',\n exportAs: 'fullContent',\n template: ` <ng-content /> `,\n host: {\n '[class.full-content]': 'true',\n '[style.height.px]': '_height'\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true\n})\nexport class FullContentComponent implements AfterViewInit, OnInit, OnChanges, OnDestroy {\n private readonly destroy$ = inject(DestroyRef);\n private readonly el: HTMLElement = inject(ElementRef).nativeElement;\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly srv = inject(FullContentService);\n private readonly router = inject(Router);\n private readonly doc = inject(DOCUMENT);\n\n private bodyEl = this.doc.querySelector('body')!;\n private inited = false;\n private id = `_full-content-${Math.random().toString(36).substring(2)}`;\n\n _height = 0;\n\n @Input({ transform: booleanAttribute }) fullscreen?: boolean;\n @Input({ transform: booleanAttribute }) hideTitle = true;\n @Input({ transform: numberAttribute }) padding = 24;\n @Output() readonly fullscreenChange = new EventEmitter<boolean>();\n\n private updateCls(): void {\n const clss = this.bodyEl.classList;\n if (this.fullscreen) {\n clss.add(openedCls);\n if (this.hideTitle) {\n clss.add(hideTitleCls);\n }\n } else {\n clss.remove(openedCls);\n if (this.hideTitle) {\n clss.remove(hideTitleCls);\n }\n }\n }\n\n private update(): void {\n this.updateCls();\n this.updateHeight();\n this.fullscreenChange.emit(this.fullscreen);\n }\n\n private updateHeight(): void {\n this._height = this.bodyEl.getBoundingClientRect().height - this.el.getBoundingClientRect().top - this.padding;\n this.cdr.detectChanges();\n }\n\n private removeInBody(): void {\n this.bodyEl.classList.remove(wrapCls, openedCls, hideTitleCls);\n }\n\n ngOnInit(): void {\n this.inited = true;\n this.bodyEl.classList.add(wrapCls);\n this.el.id = this.id;\n\n this.updateCls();\n\n // when window resize\n fromEvent(window, 'resize')\n .pipe(takeUntilDestroyed(this.destroy$), debounceTime(200))\n .subscribe(() => this.updateHeight());\n\n // when servier changed\n this.srv.change\n .pipe(\n takeUntilDestroyed(this.destroy$),\n filter(res => res !== null)\n )\n .subscribe(() => this.toggle());\n\n // when router changed\n this.router.events\n .pipe(\n takeUntilDestroyed(this.destroy$),\n filter((e: Event) => e instanceof ActivationStart || e instanceof ActivationEnd),\n debounceTime(200)\n )\n .subscribe(() => {\n if (!!this.doc.querySelector(`#${this.id}`)) {\n this.bodyEl.classList.add(wrapCls);\n this.updateCls();\n } else {\n this.removeInBody();\n }\n });\n }\n\n toggle(): void {\n this.fullscreen = !this.fullscreen;\n this.update();\n this.updateHeight();\n }\n\n ngAfterViewInit(): void {\n setTimeout(() => this.updateHeight());\n }\n\n ngOnChanges(): void {\n if (this.inited) this.update();\n }\n\n ngOnDestroy(): void {\n this.removeInBody();\n }\n}\n","import { Directive, inject } from '@angular/core';\n\nimport { FullContentComponent } from './full-content.component';\n\n@Directive({\n selector: '[full-toggle]',\n exportAs: 'fullToggle',\n host: {\n '(click)': '_click()'\n },\n standalone: true\n})\nexport class FullContentToggleDirective {\n private readonly parent = inject(FullContentComponent);\n\n _click(): void {\n this.parent.toggle();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { FullContentToggleDirective } from './full-content-toggle.directive';\nimport { FullContentComponent } from './full-content.component';\n\nconst COMPONENTS = [FullContentComponent, FullContentToggleDirective];\n\n@NgModule({\n imports: [CommonModule, ...COMPONENTS],\n exports: COMPONENTS\n})\nexport class FullContentModule {}\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":"full-content.mjs","sources":["../../../../packages/abc/full-content/full-content.service.ts","../../../../packages/abc/full-content/full-content.component.ts","../../../../packages/abc/full-content/full-content-toggle.directive.ts","../../../../packages/abc/full-content/full-content.module.ts","../../../../packages/abc/full-content/full-content.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable, share } from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class FullContentService {\n private _change = new BehaviorSubject<boolean | null>(null);\n\n /** 切换全屏工作区状态 */\n toggle(): void {\n this._change.next(true);\n }\n\n get change(): Observable<boolean | null> {\n return this._change.pipe(share());\n }\n}\n","import { DOCUMENT } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DestroyRef,\n ElementRef,\n EventEmitter,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n Output,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n numberAttribute\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ActivationEnd, ActivationStart, Event, Router } from '@angular/router';\nimport { fromEvent, debounceTime, filter } from 'rxjs';\n\nimport { FullContentService } from './full-content.service';\n\nconst wrapCls = `full-content__body`;\nconst openedCls = `full-content__opened`;\nconst hideTitleCls = `full-content__hidden-title`;\n\n@Component({\n selector: 'full-content',\n exportAs: 'fullContent',\n template: ` <ng-content /> `,\n host: {\n '[class.full-content]': 'true',\n '[style.height.px]': '_height'\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class FullContentComponent implements AfterViewInit, OnInit, OnChanges, OnDestroy {\n private readonly destroy$ = inject(DestroyRef);\n private readonly el: HTMLElement = inject(ElementRef).nativeElement;\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly srv = inject(FullContentService);\n private readonly router = inject(Router);\n private readonly doc = inject(DOCUMENT);\n\n private bodyEl = this.doc.querySelector('body')!;\n private inited = false;\n private id = `_full-content-${Math.random().toString(36).substring(2)}`;\n\n _height = 0;\n\n @Input({ transform: booleanAttribute }) fullscreen?: boolean;\n @Input({ transform: booleanAttribute }) hideTitle = true;\n @Input({ transform: numberAttribute }) padding = 24;\n @Output() readonly fullscreenChange = new EventEmitter<boolean>();\n\n private updateCls(): void {\n const clss = this.bodyEl.classList;\n if (this.fullscreen) {\n clss.add(openedCls);\n if (this.hideTitle) {\n clss.add(hideTitleCls);\n }\n } else {\n clss.remove(openedCls);\n if (this.hideTitle) {\n clss.remove(hideTitleCls);\n }\n }\n }\n\n private update(): void {\n this.updateCls();\n this.updateHeight();\n this.fullscreenChange.emit(this.fullscreen);\n }\n\n private updateHeight(): void {\n this._height = this.bodyEl.getBoundingClientRect().height - this.el.getBoundingClientRect().top - this.padding;\n this.cdr.detectChanges();\n }\n\n private removeInBody(): void {\n this.bodyEl.classList.remove(wrapCls, openedCls, hideTitleCls);\n }\n\n ngOnInit(): void {\n this.inited = true;\n this.bodyEl.classList.add(wrapCls);\n this.el.id = this.id;\n\n this.updateCls();\n\n // when window resize\n fromEvent(window, 'resize')\n .pipe(takeUntilDestroyed(this.destroy$), debounceTime(200))\n .subscribe(() => this.updateHeight());\n\n // when servier changed\n this.srv.change\n .pipe(\n takeUntilDestroyed(this.destroy$),\n filter(res => res !== null)\n )\n .subscribe(() => this.toggle());\n\n // when router changed\n this.router.events\n .pipe(\n takeUntilDestroyed(this.destroy$),\n filter((e: Event) => e instanceof ActivationStart || e instanceof ActivationEnd),\n debounceTime(200)\n )\n .subscribe(() => {\n if (!!this.doc.querySelector(`#${this.id}`)) {\n this.bodyEl.classList.add(wrapCls);\n this.updateCls();\n } else {\n this.removeInBody();\n }\n });\n }\n\n toggle(): void {\n this.fullscreen = !this.fullscreen;\n this.update();\n this.updateHeight();\n }\n\n ngAfterViewInit(): void {\n setTimeout(() => this.updateHeight());\n }\n\n ngOnChanges(): void {\n if (this.inited) this.update();\n }\n\n ngOnDestroy(): void {\n this.removeInBody();\n }\n}\n","import { Directive, inject } from '@angular/core';\n\nimport { FullContentComponent } from './full-content.component';\n\n@Directive({\n selector: '[full-toggle]',\n exportAs: 'fullToggle',\n host: {\n '(click)': '_click()'\n }\n})\nexport class FullContentToggleDirective {\n private readonly parent = inject(FullContentComponent);\n\n _click(): void {\n this.parent.toggle();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { FullContentToggleDirective } from './full-content-toggle.directive';\nimport { FullContentComponent } from './full-content.component';\n\nconst COMPONENTS = [FullContentComponent, FullContentToggleDirective];\n\n@NgModule({\n imports: [CommonModule, ...COMPONENTS],\n exports: COMPONENTS\n})\nexport class FullContentModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -8,10 +8,13 @@ import { Router, RouterModule } from '@angular/router';
8
8
  import { WINDOW } from '@delon/util/token';
9
9
 
10
10
  class GlobalFooterItemComponent {
11
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: GlobalFooterItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.7", type: GlobalFooterItemComponent, isStandalone: true, selector: "global-footer-item", inputs: { href: "href", blankTarget: ["blankTarget", "blankTarget", booleanAttribute] }, viewQueries: [{ propertyName: "host", first: true, predicate: ["host"], descendants: true, static: true }], exportAs: ["globalFooterItem"], ngImport: i0, template: ` <ng-template #host><ng-content /></ng-template> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
11
+ host;
12
+ href;
13
+ blankTarget;
14
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: GlobalFooterItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
15
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "19.1.1", type: GlobalFooterItemComponent, isStandalone: true, selector: "global-footer-item", inputs: { href: "href", blankTarget: ["blankTarget", "blankTarget", booleanAttribute] }, viewQueries: [{ propertyName: "host", first: true, predicate: ["host"], descendants: true, static: true }], exportAs: ["globalFooterItem"], ngImport: i0, template: ` <ng-template #host><ng-content /></ng-template> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
13
16
  }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: GlobalFooterItemComponent, decorators: [{
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: GlobalFooterItemComponent, decorators: [{
15
18
  type: Component,
16
19
  args: [{
17
20
  selector: 'global-footer-item',
@@ -19,8 +22,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
19
22
  template: ` <ng-template #host><ng-content /></ng-template> `,
20
23
  preserveWhitespaces: false,
21
24
  changeDetection: ChangeDetectionStrategy.OnPush,
22
- encapsulation: ViewEncapsulation.None,
23
- standalone: true
25
+ encapsulation: ViewEncapsulation.None
24
26
  }]
25
27
  }], propDecorators: { host: [{
26
28
  type: ViewChild,
@@ -33,16 +35,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
33
35
  }] } });
34
36
 
35
37
  class GlobalFooterComponent {
36
- constructor() {
37
- this.router = inject(Router);
38
- this.win = inject(WINDOW);
39
- this.dom = inject(DomSanitizer);
40
- this.directionality = inject(Directionality);
41
- this.cdr = inject(ChangeDetectorRef);
42
- this.destroy$ = inject(DestroyRef);
43
- this._links = [];
44
- this.dir = 'ltr';
45
- }
38
+ router = inject(Router);
39
+ win = inject(WINDOW);
40
+ dom = inject(DomSanitizer);
41
+ directionality = inject(Directionality);
42
+ cdr = inject(ChangeDetectorRef);
43
+ destroy$ = inject(DestroyRef);
44
+ _links = [];
45
+ dir = 'ltr';
46
46
  set links(val) {
47
47
  val.forEach(i => (i._title = this.dom.bypassSecurityTrustHtml(i.title)));
48
48
  this._links = val;
@@ -50,6 +50,7 @@ class GlobalFooterComponent {
50
50
  get links() {
51
51
  return this._links;
52
52
  }
53
+ items;
53
54
  to(item) {
54
55
  if (!item.href) {
55
56
  return;
@@ -72,15 +73,15 @@ class GlobalFooterComponent {
72
73
  this.cdr.detectChanges();
73
74
  });
74
75
  }
75
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: GlobalFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
76
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: GlobalFooterComponent, isStandalone: true, selector: "global-footer", inputs: { links: "links" }, host: { properties: { "class.global-footer": "true", "class.global-footer-rtl": "dir === 'rtl'" } }, queries: [{ propertyName: "items", predicate: GlobalFooterItemComponent }], exportAs: ["globalFooter"], ngImport: i0, template: "@if (links.length > 0 || items.length > 0) {\n <div class=\"global-footer__links\">\n @for (i of links; track $index) {\n <a class=\"global-footer__links-item\" (click)=\"to(i)\" [innerHTML]=\"i._title\"></a>\n }\n @for (i of items; track $index) {\n <a class=\"global-footer__links-item\" (click)=\"to(i)\">\n <ng-container *ngTemplateOutlet=\"i.host\" />\n </a>\n }\n </div>\n}\n<div class=\"global-footer__copyright\">\n <ng-content />\n</div>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
76
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: GlobalFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
77
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.1", type: GlobalFooterComponent, isStandalone: true, selector: "global-footer", inputs: { links: "links" }, host: { properties: { "class.global-footer": "true", "class.global-footer-rtl": "dir === 'rtl'" } }, queries: [{ propertyName: "items", predicate: GlobalFooterItemComponent }], exportAs: ["globalFooter"], ngImport: i0, template: "@if (links.length > 0 || items.length > 0) {\n <div class=\"global-footer__links\">\n @for (i of links; track $index) {\n <a class=\"global-footer__links-item\" (click)=\"to(i)\" [innerHTML]=\"i._title\"></a>\n }\n @for (i of items; track $index) {\n <a class=\"global-footer__links-item\" (click)=\"to(i)\">\n <ng-container *ngTemplateOutlet=\"i.host\" />\n </a>\n }\n </div>\n}\n<div class=\"global-footer__copyright\">\n <ng-content />\n</div>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
77
78
  }
78
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: GlobalFooterComponent, decorators: [{
79
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: GlobalFooterComponent, decorators: [{
79
80
  type: Component,
80
81
  args: [{ selector: 'global-footer', exportAs: 'globalFooter', host: {
81
82
  '[class.global-footer]': 'true',
82
83
  '[class.global-footer-rtl]': `dir === 'rtl'`
83
- }, preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, imports: [NgTemplateOutlet], template: "@if (links.length > 0 || items.length > 0) {\n <div class=\"global-footer__links\">\n @for (i of links; track $index) {\n <a class=\"global-footer__links-item\" (click)=\"to(i)\" [innerHTML]=\"i._title\"></a>\n }\n @for (i of items; track $index) {\n <a class=\"global-footer__links-item\" (click)=\"to(i)\">\n <ng-container *ngTemplateOutlet=\"i.host\" />\n </a>\n }\n </div>\n}\n<div class=\"global-footer__copyright\">\n <ng-content />\n</div>\n" }]
84
+ }, preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [NgTemplateOutlet], template: "@if (links.length > 0 || items.length > 0) {\n <div class=\"global-footer__links\">\n @for (i of links; track $index) {\n <a class=\"global-footer__links-item\" (click)=\"to(i)\" [innerHTML]=\"i._title\"></a>\n }\n @for (i of items; track $index) {\n <a class=\"global-footer__links-item\" (click)=\"to(i)\">\n <ng-container *ngTemplateOutlet=\"i.host\" />\n </a>\n }\n </div>\n}\n<div class=\"global-footer__copyright\">\n <ng-content />\n</div>\n" }]
84
85
  }], propDecorators: { links: [{
85
86
  type: Input
86
87
  }], items: [{
@@ -90,11 +91,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
90
91
 
91
92
  const COMPONENTS = [GlobalFooterComponent, GlobalFooterItemComponent];
92
93
  class GlobalFooterModule {
93
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: GlobalFooterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
94
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.7", ngImport: i0, type: GlobalFooterModule, imports: [CommonModule, RouterModule, GlobalFooterComponent, GlobalFooterItemComponent], exports: [GlobalFooterComponent, GlobalFooterItemComponent] }); }
95
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: GlobalFooterModule, imports: [CommonModule, RouterModule] }); }
94
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: GlobalFooterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
95
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.1", ngImport: i0, type: GlobalFooterModule, imports: [CommonModule, RouterModule, GlobalFooterComponent, GlobalFooterItemComponent], exports: [GlobalFooterComponent, GlobalFooterItemComponent] });
96
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: GlobalFooterModule, imports: [CommonModule, RouterModule] });
96
97
  }
97
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: GlobalFooterModule, decorators: [{
98
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: GlobalFooterModule, decorators: [{
98
99
  type: NgModule,
99
100
  args: [{
100
101
  imports: [CommonModule, RouterModule, ...COMPONENTS],
@@ -1 +1 @@
1
- {"version":3,"file":"global-footer.mjs","sources":["../../../../packages/abc/global-footer/global-footer-item.component.ts","../../../../packages/abc/global-footer/global-footer.component.ts","../../../../packages/abc/global-footer/global-footer.component.html","../../../../packages/abc/global-footer/global-footer.module.ts","../../../../packages/abc/global-footer/global-footer.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n Input,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n booleanAttribute\n} from '@angular/core';\n\n@Component({\n selector: 'global-footer-item',\n exportAs: 'globalFooterItem',\n template: ` <ng-template #host><ng-content /></ng-template> `,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true\n})\nexport class GlobalFooterItemComponent {\n @ViewChild('host', { static: true }) host!: TemplateRef<void>;\n\n @Input() href?: string;\n @Input({ transform: booleanAttribute }) blankTarget?: boolean;\n}\n","import { Direction, Directionality } from '@angular/cdk/bidi';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n DestroyRef,\n Input,\n OnInit,\n QueryList,\n ViewEncapsulation,\n inject\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { Router } from '@angular/router';\n\nimport { WINDOW } from '@delon/util/token';\n\nimport { GlobalFooterItemComponent } from './global-footer-item.component';\nimport { GlobalFooterLink } from './global-footer.types';\n\n@Component({\n selector: 'global-footer',\n exportAs: 'globalFooter',\n templateUrl: './global-footer.component.html',\n host: {\n '[class.global-footer]': 'true',\n '[class.global-footer-rtl]': `dir === 'rtl'`\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [NgTemplateOutlet]\n})\nexport class GlobalFooterComponent implements OnInit {\n private readonly router = inject(Router);\n private readonly win = inject(WINDOW);\n private readonly dom = inject(DomSanitizer);\n private readonly directionality = inject(Directionality);\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly destroy$ = inject(DestroyRef);\n\n private _links: GlobalFooterLink[] = [];\n\n dir?: Direction = 'ltr';\n\n @Input()\n set links(val: GlobalFooterLink[]) {\n val.forEach(i => (i._title = this.dom.bypassSecurityTrustHtml(i.title)));\n this._links = val;\n }\n get links(): GlobalFooterLink[] {\n return this._links;\n }\n\n @ContentChildren(GlobalFooterItemComponent) readonly items!: QueryList<GlobalFooterItemComponent>;\n\n to(item: GlobalFooterLink | GlobalFooterItemComponent): void {\n if (!item.href) {\n return;\n }\n if (item.blankTarget) {\n this.win.open(item.href);\n return;\n }\n if (/^https?:\\/\\//.test(item.href)) {\n this.win.location.href = item.href;\n } else {\n this.router.navigateByUrl(item.href);\n }\n }\n\n ngOnInit(): void {\n this.dir = this.directionality.value;\n this.directionality.change.pipe(takeUntilDestroyed(this.destroy$)).subscribe(direction => {\n this.dir = direction;\n this.cdr.detectChanges();\n });\n }\n}\n","@if (links.length > 0 || items.length > 0) {\n <div class=\"global-footer__links\">\n @for (i of links; track $index) {\n <a class=\"global-footer__links-item\" (click)=\"to(i)\" [innerHTML]=\"i._title\"></a>\n }\n @for (i of items; track $index) {\n <a class=\"global-footer__links-item\" (click)=\"to(i)\">\n <ng-container *ngTemplateOutlet=\"i.host\" />\n </a>\n }\n </div>\n}\n<div class=\"global-footer__copyright\">\n <ng-content />\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nimport { GlobalFooterItemComponent } from './global-footer-item.component';\nimport { GlobalFooterComponent } from './global-footer.component';\n\nconst COMPONENTS = [GlobalFooterComponent, GlobalFooterItemComponent];\n\n@NgModule({\n imports: [CommonModule, RouterModule, ...COMPONENTS],\n exports: COMPONENTS\n})\nexport class GlobalFooterModule {}\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":"global-footer.mjs","sources":["../../../../packages/abc/global-footer/global-footer-item.component.ts","../../../../packages/abc/global-footer/global-footer.component.ts","../../../../packages/abc/global-footer/global-footer.component.html","../../../../packages/abc/global-footer/global-footer.module.ts","../../../../packages/abc/global-footer/global-footer.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n Input,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n booleanAttribute\n} from '@angular/core';\n\n@Component({\n selector: 'global-footer-item',\n exportAs: 'globalFooterItem',\n template: ` <ng-template #host><ng-content /></ng-template> `,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class GlobalFooterItemComponent {\n @ViewChild('host', { static: true }) host!: TemplateRef<void>;\n\n @Input() href?: string;\n @Input({ transform: booleanAttribute }) blankTarget?: boolean;\n}\n","import { Direction, Directionality } from '@angular/cdk/bidi';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n DestroyRef,\n Input,\n OnInit,\n QueryList,\n ViewEncapsulation,\n inject\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { Router } from '@angular/router';\n\nimport { WINDOW } from '@delon/util/token';\n\nimport { GlobalFooterItemComponent } from './global-footer-item.component';\nimport { GlobalFooterLink } from './global-footer.types';\n\n@Component({\n selector: 'global-footer',\n exportAs: 'globalFooter',\n templateUrl: './global-footer.component.html',\n host: {\n '[class.global-footer]': 'true',\n '[class.global-footer-rtl]': `dir === 'rtl'`\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [NgTemplateOutlet]\n})\nexport class GlobalFooterComponent implements OnInit {\n private readonly router = inject(Router);\n private readonly win = inject(WINDOW);\n private readonly dom = inject(DomSanitizer);\n private readonly directionality = inject(Directionality);\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly destroy$ = inject(DestroyRef);\n\n private _links: GlobalFooterLink[] = [];\n\n dir?: Direction = 'ltr';\n\n @Input()\n set links(val: GlobalFooterLink[]) {\n val.forEach(i => (i._title = this.dom.bypassSecurityTrustHtml(i.title)));\n this._links = val;\n }\n get links(): GlobalFooterLink[] {\n return this._links;\n }\n\n @ContentChildren(GlobalFooterItemComponent) readonly items!: QueryList<GlobalFooterItemComponent>;\n\n to(item: GlobalFooterLink | GlobalFooterItemComponent): void {\n if (!item.href) {\n return;\n }\n if (item.blankTarget) {\n this.win.open(item.href);\n return;\n }\n if (/^https?:\\/\\//.test(item.href)) {\n this.win.location.href = item.href;\n } else {\n this.router.navigateByUrl(item.href);\n }\n }\n\n ngOnInit(): void {\n this.dir = this.directionality.value;\n this.directionality.change.pipe(takeUntilDestroyed(this.destroy$)).subscribe(direction => {\n this.dir = direction;\n this.cdr.detectChanges();\n });\n }\n}\n","@if (links.length > 0 || items.length > 0) {\n <div class=\"global-footer__links\">\n @for (i of links; track $index) {\n <a class=\"global-footer__links-item\" (click)=\"to(i)\" [innerHTML]=\"i._title\"></a>\n }\n @for (i of items; track $index) {\n <a class=\"global-footer__links-item\" (click)=\"to(i)\">\n <ng-container *ngTemplateOutlet=\"i.host\" />\n </a>\n }\n </div>\n}\n<div class=\"global-footer__copyright\">\n <ng-content />\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nimport { GlobalFooterItemComponent } from './global-footer-item.component';\nimport { GlobalFooterComponent } from './global-footer.component';\n\nconst COMPONENTS = [GlobalFooterComponent, GlobalFooterItemComponent];\n\n@NgModule({\n imports: [CommonModule, RouterModule, ...COMPONENTS],\n exports: COMPONENTS\n})\nexport class GlobalFooterModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -4,15 +4,13 @@ import { Platform } from '@angular/cdk/platform';
4
4
  import { install, uninstall } from '@github/hotkey';
5
5
 
6
6
  class HotkeyDirective {
7
- constructor() {
8
- this.el = inject(ElementRef).nativeElement;
9
- this.ngZone = inject(NgZone);
10
- this.platform = inject(Platform);
11
- }
7
+ el = inject(ElementRef).nativeElement;
8
+ ngZone = inject(NgZone);
9
+ platform = inject(Platform);
12
10
  /**
13
- * Specify [hotkey format](https://github.com/github/hotkey#hotkey-string-format)
11
+ * Specify [hotkey format](https://github.com/github/hotkey#hotkey-string-format), you can get the code through [Hotkey Code](https://github.github.com/hotkey/hotkey_mapper.html)
14
12
  *
15
- * 指定[热键格式](https://github.com/github/hotkey#hotkey-string-format)
13
+ * 指定[热键格式](https://github.com/github/hotkey#hotkey-string-format),可以通过 [Hotkey Code](https://github.github.com/hotkey/hotkey_mapper.html) 来获取代码。
16
14
  */
17
15
  set hotkey(key) {
18
16
  if (!this.platform.isBrowser)
@@ -24,12 +22,12 @@ class HotkeyDirective {
24
22
  return;
25
23
  this.ngZone.runOutsideAngular(() => uninstall(this.el));
26
24
  }
27
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: HotkeyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
28
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: HotkeyDirective, isStandalone: true, selector: "[hotkey]", inputs: { hotkey: "hotkey" }, ngImport: i0 }); }
25
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: HotkeyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
26
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.1", type: HotkeyDirective, isStandalone: true, selector: "[hotkey]", inputs: { hotkey: "hotkey" }, ngImport: i0 });
29
27
  }
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: HotkeyDirective, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: HotkeyDirective, decorators: [{
31
29
  type: Directive,
32
- args: [{ selector: '[hotkey]', standalone: true }]
30
+ args: [{ selector: '[hotkey]' }]
33
31
  }], propDecorators: { hotkey: [{
34
32
  type: Input,
35
33
  args: ['hotkey']
@@ -37,11 +35,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
37
35
 
38
36
  const DIRECTIVES = [HotkeyDirective];
39
37
  class HotkeyModule {
40
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: HotkeyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
41
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.7", ngImport: i0, type: HotkeyModule, imports: [HotkeyDirective], exports: [HotkeyDirective] }); }
42
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: HotkeyModule }); }
38
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: HotkeyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
39
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.1", ngImport: i0, type: HotkeyModule, imports: [HotkeyDirective], exports: [HotkeyDirective] });
40
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: HotkeyModule });
43
41
  }
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: HotkeyModule, decorators: [{
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: HotkeyModule, decorators: [{
45
43
  type: NgModule,
46
44
  args: [{
47
45
  imports: DIRECTIVES,
@@ -1 +1 @@
1
- {"version":3,"file":"hotkey.mjs","sources":["../../../../packages/abc/hotkey/hotkey.directive.ts","../../../../packages/abc/hotkey/hotkey.module.ts","../../../../packages/abc/hotkey/hotkey.ts"],"sourcesContent":["import { Platform } from '@angular/cdk/platform';\nimport { Directive, ElementRef, Input, NgZone, OnDestroy, inject } from '@angular/core';\n\nimport { install, uninstall } from '@github/hotkey';\n\n@Directive({ selector: '[hotkey]', standalone: true })\nexport class HotkeyDirective implements OnDestroy {\n private readonly el: HTMLElement = inject(ElementRef).nativeElement;\n private readonly ngZone = inject(NgZone);\n private readonly platform = inject(Platform);\n\n /**\n * Specify [hotkey format](https://github.com/github/hotkey#hotkey-string-format)\n *\n * 指定[热键格式](https://github.com/github/hotkey#hotkey-string-format)\n */\n @Input('hotkey')\n set hotkey(key: string) {\n if (!this.platform.isBrowser) return;\n\n this.ngZone.runOutsideAngular(() => install(this.el, key));\n }\n\n ngOnDestroy(): void {\n if (!this.platform.isBrowser) return;\n\n this.ngZone.runOutsideAngular(() => uninstall(this.el));\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { HotkeyDirective } from './hotkey.directive';\n\nconst DIRECTIVES = [HotkeyDirective];\n\n@NgModule({\n imports: DIRECTIVES,\n exports: DIRECTIVES\n})\nexport class HotkeyModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;MAMa,eAAe,CAAA;AAD5B,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,EAAE,GAAgB,MAAM,CAAC,UAAU,CAAC,CAAC,aAAa,CAAC;AACnD,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AACxB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;AAmB9C,KAAA;AAjBC;;;;AAIG;IACH,IACI,MAAM,CAAC,GAAW,EAAA;AACpB,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS;YAAE,OAAO;AAErC,QAAA,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;KAC5D;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS;YAAE,OAAO;AAErC,QAAA,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;KACzD;8GArBU,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,CAAA;8BAY/C,MAAM,EAAA,CAAA;sBADT,KAAK;uBAAC,QAAQ,CAAA;;;ACZjB,MAAM,UAAU,GAAG,CAAC,eAAe,CAAC,CAAC;MAMxB,YAAY,CAAA;8GAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;+GAAZ,YAAY,EAAA,OAAA,EAAA,CANL,eAAe,CAAA,EAAA,OAAA,EAAA,CAAf,eAAe,CAAA,EAAA,CAAA,CAAA,EAAA;+GAMtB,YAAY,EAAA,CAAA,CAAA,EAAA;;2FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBAJxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,UAAU;AACnB,oBAAA,OAAO,EAAE,UAAU;AACpB,iBAAA,CAAA;;;ACTD;;AAEG;;;;"}
1
+ {"version":3,"file":"hotkey.mjs","sources":["../../../../packages/abc/hotkey/hotkey.directive.ts","../../../../packages/abc/hotkey/hotkey.module.ts","../../../../packages/abc/hotkey/hotkey.ts"],"sourcesContent":["import { Platform } from '@angular/cdk/platform';\nimport { Directive, ElementRef, Input, NgZone, OnDestroy, inject } from '@angular/core';\n\nimport { install, uninstall } from '@github/hotkey';\n\n@Directive({ selector: '[hotkey]' })\nexport class HotkeyDirective implements OnDestroy {\n private readonly el: HTMLElement = inject(ElementRef).nativeElement;\n private readonly ngZone = inject(NgZone);\n private readonly platform = inject(Platform);\n\n /**\n * Specify [hotkey format](https://github.com/github/hotkey#hotkey-string-format), you can get the code through [Hotkey Code](https://github.github.com/hotkey/hotkey_mapper.html)\n *\n * 指定[热键格式](https://github.com/github/hotkey#hotkey-string-format),可以通过 [Hotkey Code](https://github.github.com/hotkey/hotkey_mapper.html) 来获取代码。\n */\n @Input('hotkey')\n set hotkey(key: string) {\n if (!this.platform.isBrowser) return;\n\n this.ngZone.runOutsideAngular(() => install(this.el, key));\n }\n\n ngOnDestroy(): void {\n if (!this.platform.isBrowser) return;\n\n this.ngZone.runOutsideAngular(() => uninstall(this.el));\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { HotkeyDirective } from './hotkey.directive';\n\nconst DIRECTIVES = [HotkeyDirective];\n\n@NgModule({\n imports: DIRECTIVES,\n exports: DIRECTIVES\n})\nexport class HotkeyModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;MAMa,eAAe,CAAA;AACT,IAAA,EAAE,GAAgB,MAAM,CAAC,UAAU,CAAC,CAAC,aAAa;AAClD,IAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AACvB,IAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAE5C;;;;AAIG;IACH,IACI,MAAM,CAAC,GAAW,EAAA;AACpB,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS;YAAE;AAE9B,QAAA,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;;IAG5D,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS;YAAE;AAE9B,QAAA,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;;uGApB9C,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,SAAS;mBAAC,EAAE,QAAQ,EAAE,UAAU,EAAE;8BAY7B,MAAM,EAAA,CAAA;sBADT,KAAK;uBAAC,QAAQ;;;ACZjB,MAAM,UAAU,GAAG,CAAC,eAAe,CAAC;MAMvB,YAAY,CAAA;uGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;wGAAZ,YAAY,EAAA,OAAA,EAAA,CANL,eAAe,CAAA,EAAA,OAAA,EAAA,CAAf,eAAe,CAAA,EAAA,CAAA;wGAMtB,YAAY,EAAA,CAAA;;2FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBAJxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,UAAU;AACnB,oBAAA,OAAO,EAAE;AACV,iBAAA;;;ACTD;;AAEG;;;;"}
@@ -1,4 +1,3 @@
1
- import { NgStyle, CommonModule } from '@angular/common';
2
1
  import * as i0 from '@angular/core';
3
2
  import { Component, ChangeDetectionStrategy, ViewEncapsulation, inject, Injectable, NgModule } from '@angular/core';
4
3
  import { NzIconDirective, NzIconModule } from 'ng-zorro-antd/icon';
@@ -8,39 +7,42 @@ import { Overlay, OverlayModule } from '@angular/cdk/overlay';
8
7
  import { ComponentPortal, PortalModule } from '@angular/cdk/portal';
9
8
  import { Subject, debounce, timer } from 'rxjs';
10
9
  import { AlainConfigService } from '@delon/util/config';
10
+ import { CommonModule } from '@angular/common';
11
11
 
12
12
  class LoadingDefaultComponent {
13
- constructor() {
14
- this.dir = 'ltr';
15
- }
13
+ options;
14
+ dir = 'ltr';
16
15
  get icon() {
17
16
  return this.options.icon;
18
17
  }
19
18
  get custom() {
20
19
  return this.options.custom;
21
20
  }
22
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoadingDefaultComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
23
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: LoadingDefaultComponent, isStandalone: true, selector: "loading-default", host: { properties: { "class.loading-default": "true", "class.loading-default-rtl": "dir === 'rtl'" } }, ngImport: i0, template: "@if (options.type! !== 'text') {\n <div class=\"loading-default__icon\">\n @switch (options.type) {\n @case ('spin') {\n <nz-spin nzSimple />\n }\n @case ('icon') {\n <i nz-icon [nzType]=\"icon.type!\" [nzTheme]=\"icon.theme!\" [nzSpin]=\"icon.spin\"></i>\n }\n @default {\n <div class=\"loading-default__custom\" [ngStyle]=\"custom.style!\" [innerHTML]=\"custom.html\"></div>\n }\n }\n </div>\n}\n@if (options.text) {\n <div class=\"loading-default__text\">{{ options.text }}</div>\n}\n", dependencies: [{ kind: "component", type: NzSpinComponent, selector: "nz-spin", inputs: ["nzIndicator", "nzSize", "nzTip", "nzDelay", "nzSimple", "nzSpinning"], exportAs: ["nzSpin"] }, { kind: "directive", type: NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
21
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: LoadingDefaultComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
22
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.1", type: LoadingDefaultComponent, isStandalone: true, selector: "loading-default", host: { properties: { "class.loading-default": "true", "class.loading-default-rtl": "dir === 'rtl'" } }, ngImport: i0, template: "@if (options.type! !== 'text') {\n <div class=\"loading-default__icon\">\n @switch (options.type) {\n @case ('spin') {\n <nz-spin nzSimple />\n }\n @case ('icon') {\n <nz-icon [nzType]=\"icon.type!\" [nzTheme]=\"icon.theme!\" [nzSpin]=\"icon.spin\" />\n }\n @default {\n <div class=\"loading-default__custom\" [style]=\"custom.style!\" [innerHTML]=\"custom.html\"></div>\n }\n }\n </div>\n}\n@if (options.text) {\n <div class=\"loading-default__text\">{{ options.text }}</div>\n}\n", dependencies: [{ kind: "component", type: NzSpinComponent, selector: "nz-spin", inputs: ["nzIndicator", "nzSize", "nzTip", "nzDelay", "nzSimple", "nzSpinning"], exportAs: ["nzSpin"] }, { kind: "directive", type: NzIconDirective, selector: "nz-icon,[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
24
23
  }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoadingDefaultComponent, decorators: [{
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: LoadingDefaultComponent, decorators: [{
26
25
  type: Component,
27
26
  args: [{ selector: 'loading-default', host: {
28
27
  '[class.loading-default]': 'true',
29
28
  '[class.loading-default-rtl]': `dir === 'rtl'`
30
- }, preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, imports: [NzSpinComponent, NzIconDirective, NgStyle], template: "@if (options.type! !== 'text') {\n <div class=\"loading-default__icon\">\n @switch (options.type) {\n @case ('spin') {\n <nz-spin nzSimple />\n }\n @case ('icon') {\n <i nz-icon [nzType]=\"icon.type!\" [nzTheme]=\"icon.theme!\" [nzSpin]=\"icon.spin\"></i>\n }\n @default {\n <div class=\"loading-default__custom\" [ngStyle]=\"custom.style!\" [innerHTML]=\"custom.html\"></div>\n }\n }\n </div>\n}\n@if (options.text) {\n <div class=\"loading-default__text\">{{ options.text }}</div>\n}\n" }]
29
+ }, preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [NzSpinComponent, NzIconDirective], template: "@if (options.type! !== 'text') {\n <div class=\"loading-default__icon\">\n @switch (options.type) {\n @case ('spin') {\n <nz-spin nzSimple />\n }\n @case ('icon') {\n <nz-icon [nzType]=\"icon.type!\" [nzTheme]=\"icon.theme!\" [nzSpin]=\"icon.spin\" />\n }\n @default {\n <div class=\"loading-default__custom\" [style]=\"custom.style!\" [innerHTML]=\"custom.html\"></div>\n }\n }\n </div>\n}\n@if (options.text) {\n <div class=\"loading-default__text\">{{ options.text }}</div>\n}\n" }]
31
30
  }] });
32
31
 
33
32
  class LoadingService {
33
+ overlay = inject(Overlay);
34
+ configSrv = inject(AlainConfigService);
35
+ directionality = inject(Directionality);
36
+ _overlayRef;
37
+ compRef = null;
38
+ opt = null;
39
+ cog;
40
+ n$ = new Subject();
41
+ loading$;
34
42
  get instance() {
35
43
  return this.compRef != null ? this.compRef.instance : null;
36
44
  }
37
45
  constructor() {
38
- this.overlay = inject(Overlay);
39
- this.configSrv = inject(AlainConfigService);
40
- this.directionality = inject(Directionality);
41
- this.compRef = null;
42
- this.opt = null;
43
- this.n$ = new Subject();
44
46
  this.cog = this.configSrv.merge('loading', {
45
47
  type: 'spin',
46
48
  text: '加载中...',
@@ -102,21 +104,21 @@ class LoadingService {
102
104
  ngOnDestroy() {
103
105
  this.loading$.unsubscribe();
104
106
  }
105
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoadingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
106
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoadingService, providedIn: 'root' }); }
107
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: LoadingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
108
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: LoadingService, providedIn: 'root' });
107
109
  }
108
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoadingService, decorators: [{
110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: LoadingService, decorators: [{
109
111
  type: Injectable,
110
112
  args: [{ providedIn: 'root' }]
111
113
  }], ctorParameters: () => [] });
112
114
 
113
115
  const COMPONENTS = [LoadingDefaultComponent];
114
116
  class LoadingModule {
115
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoadingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
116
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.7", ngImport: i0, type: LoadingModule, imports: [CommonModule, OverlayModule, PortalModule, NzIconModule, NzSpinModule, LoadingDefaultComponent], exports: [LoadingDefaultComponent] }); }
117
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoadingModule, imports: [CommonModule, OverlayModule, PortalModule, NzIconModule, NzSpinModule, COMPONENTS] }); }
117
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: LoadingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
118
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.1", ngImport: i0, type: LoadingModule, imports: [CommonModule, OverlayModule, PortalModule, NzIconModule, NzSpinModule, LoadingDefaultComponent], exports: [LoadingDefaultComponent] });
119
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: LoadingModule, imports: [CommonModule, OverlayModule, PortalModule, NzIconModule, NzSpinModule, COMPONENTS] });
118
120
  }
119
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: LoadingModule, decorators: [{
121
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: LoadingModule, decorators: [{
120
122
  type: NgModule,
121
123
  args: [{
122
124
  imports: [CommonModule, OverlayModule, PortalModule, NzIconModule, NzSpinModule, ...COMPONENTS],
@@ -1 +1 @@
1
- {"version":3,"file":"loading.mjs","sources":["../../../../packages/abc/loading/loading.component.ts","../../../../packages/abc/loading/loading.component.html","../../../../packages/abc/loading/loading.service.ts","../../../../packages/abc/loading/loading.module.ts","../../../../packages/abc/loading/loading.ts"],"sourcesContent":["import { Direction } from '@angular/cdk/bidi';\nimport { NgStyle } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\nimport { NzIconDirective } from 'ng-zorro-antd/icon';\nimport { NzSpinComponent } from 'ng-zorro-antd/spin';\n\nimport { LoadingCustom, LoadingIcon, LoadingShowOptions } from './loading.types';\n\n@Component({\n selector: 'loading-default',\n templateUrl: './loading.component.html',\n host: {\n '[class.loading-default]': 'true',\n '[class.loading-default-rtl]': `dir === 'rtl'`\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [NzSpinComponent, NzIconDirective, NgStyle]\n})\nexport class LoadingDefaultComponent {\n options!: LoadingShowOptions;\n dir?: Direction = 'ltr';\n\n get icon(): LoadingIcon {\n return this.options.icon!;\n }\n\n get custom(): LoadingCustom {\n return this.options.custom!;\n }\n}\n","@if (options.type! !== 'text') {\n <div class=\"loading-default__icon\">\n @switch (options.type) {\n @case ('spin') {\n <nz-spin nzSimple />\n }\n @case ('icon') {\n <i nz-icon [nzType]=\"icon.type!\" [nzTheme]=\"icon.theme!\" [nzSpin]=\"icon.spin\"></i>\n }\n @default {\n <div class=\"loading-default__custom\" [ngStyle]=\"custom.style!\" [innerHTML]=\"custom.html\"></div>\n }\n }\n </div>\n}\n@if (options.text) {\n <div class=\"loading-default__text\">{{ options.text }}</div>\n}\n","import { Directionality } from '@angular/cdk/bidi';\nimport { Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { ComponentRef, Injectable, OnDestroy, inject } from '@angular/core';\nimport { Subject, Subscription, timer, debounce } from 'rxjs';\n\nimport { AlainConfigService, AlainLoadingConfig } from '@delon/util/config';\n\nimport { LoadingDefaultComponent } from './loading.component';\nimport { LoadingShowOptions } from './loading.types';\n\n@Injectable({ providedIn: 'root' })\nexport class LoadingService implements OnDestroy {\n private readonly overlay = inject(Overlay);\n private readonly configSrv = inject(AlainConfigService);\n private readonly directionality = inject(Directionality);\n\n private _overlayRef?: OverlayRef;\n private compRef: ComponentRef<LoadingDefaultComponent> | null = null;\n private opt: LoadingShowOptions | null = null;\n private cog: AlainLoadingConfig;\n private n$ = new Subject<void>();\n private loading$: Subscription;\n\n get instance(): LoadingDefaultComponent | null {\n return this.compRef != null ? this.compRef.instance : null;\n }\n\n constructor() {\n this.cog = this.configSrv.merge('loading', {\n type: 'spin',\n text: '加载中...',\n icon: {\n type: 'loading',\n theme: 'outline',\n spin: true\n },\n delay: 0\n })!;\n this.loading$ = this.n$\n .asObservable()\n .pipe(debounce(() => timer(this.opt!.delay!)))\n .subscribe(() => this.create());\n }\n\n private create(): void {\n if (this.opt == null) return;\n\n this._close(false);\n\n this._overlayRef = this.overlay.create({\n positionStrategy: this.overlay.position().global().centerHorizontally().centerVertically(),\n scrollStrategy: this.overlay.scrollStrategies.block(),\n hasBackdrop: true,\n backdropClass: 'loading-backdrop'\n });\n this.compRef = this._overlayRef.attach(new ComponentPortal(LoadingDefaultComponent));\n const dir = this.configSrv.get('loading')!.direction || this.directionality.value;\n if (this.instance != null) {\n this.instance!!.options = this.opt;\n this.instance!!.dir = dir;\n }\n this.compRef.changeDetectorRef.markForCheck();\n }\n\n /**\n * Open a new loading indicator\n *\n * 打开一个新加载指示符\n */\n open(options?: LoadingShowOptions): void {\n this.opt = { ...this.cog, ...options };\n this.n$.next();\n }\n\n private _close(cleanOpt: boolean): void {\n if (cleanOpt) this.opt = null;\n if (!this._overlayRef) return;\n this._overlayRef.detach();\n this.compRef = null;\n }\n\n /**\n * Turn off a loading indicator\n *\n * 关闭一个加载指示符\n */\n close(): void {\n this._close(true);\n }\n\n ngOnDestroy(): void {\n this.loading$.unsubscribe();\n }\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzSpinModule } from 'ng-zorro-antd/spin';\n\nimport { LoadingDefaultComponent } from './loading.component';\n\nconst COMPONENTS = [LoadingDefaultComponent];\n\n@NgModule({\n imports: [CommonModule, OverlayModule, PortalModule, NzIconModule, NzSpinModule, ...COMPONENTS],\n exports: COMPONENTS\n})\nexport class LoadingModule {}\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":"loading.mjs","sources":["../../../../packages/abc/loading/loading.component.ts","../../../../packages/abc/loading/loading.component.html","../../../../packages/abc/loading/loading.service.ts","../../../../packages/abc/loading/loading.module.ts","../../../../packages/abc/loading/loading.ts"],"sourcesContent":["import { Direction } from '@angular/cdk/bidi';\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\nimport { NzIconDirective } from 'ng-zorro-antd/icon';\nimport { NzSpinComponent } from 'ng-zorro-antd/spin';\n\nimport { LoadingCustom, LoadingIcon, LoadingShowOptions } from './loading.types';\n\n@Component({\n selector: 'loading-default',\n templateUrl: './loading.component.html',\n host: {\n '[class.loading-default]': 'true',\n '[class.loading-default-rtl]': `dir === 'rtl'`\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [NzSpinComponent, NzIconDirective]\n})\nexport class LoadingDefaultComponent {\n options!: LoadingShowOptions;\n dir?: Direction = 'ltr';\n\n get icon(): LoadingIcon {\n return this.options.icon!;\n }\n\n get custom(): LoadingCustom {\n return this.options.custom!;\n }\n}\n","@if (options.type! !== 'text') {\n <div class=\"loading-default__icon\">\n @switch (options.type) {\n @case ('spin') {\n <nz-spin nzSimple />\n }\n @case ('icon') {\n <nz-icon [nzType]=\"icon.type!\" [nzTheme]=\"icon.theme!\" [nzSpin]=\"icon.spin\" />\n }\n @default {\n <div class=\"loading-default__custom\" [style]=\"custom.style!\" [innerHTML]=\"custom.html\"></div>\n }\n }\n </div>\n}\n@if (options.text) {\n <div class=\"loading-default__text\">{{ options.text }}</div>\n}\n","import { Directionality } from '@angular/cdk/bidi';\nimport { Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { ComponentRef, Injectable, OnDestroy, inject } from '@angular/core';\nimport { Subject, Subscription, timer, debounce } from 'rxjs';\n\nimport { AlainConfigService, AlainLoadingConfig } from '@delon/util/config';\n\nimport { LoadingDefaultComponent } from './loading.component';\nimport { LoadingShowOptions } from './loading.types';\n\n@Injectable({ providedIn: 'root' })\nexport class LoadingService implements OnDestroy {\n private readonly overlay = inject(Overlay);\n private readonly configSrv = inject(AlainConfigService);\n private readonly directionality = inject(Directionality);\n\n private _overlayRef?: OverlayRef;\n private compRef: ComponentRef<LoadingDefaultComponent> | null = null;\n private opt: LoadingShowOptions | null = null;\n private cog: AlainLoadingConfig;\n private n$ = new Subject<void>();\n private loading$: Subscription;\n\n get instance(): LoadingDefaultComponent | null {\n return this.compRef != null ? this.compRef.instance : null;\n }\n\n constructor() {\n this.cog = this.configSrv.merge('loading', {\n type: 'spin',\n text: '加载中...',\n icon: {\n type: 'loading',\n theme: 'outline',\n spin: true\n },\n delay: 0\n })!;\n this.loading$ = this.n$\n .asObservable()\n .pipe(debounce(() => timer(this.opt!.delay!)))\n .subscribe(() => this.create());\n }\n\n private create(): void {\n if (this.opt == null) return;\n\n this._close(false);\n\n this._overlayRef = this.overlay.create({\n positionStrategy: this.overlay.position().global().centerHorizontally().centerVertically(),\n scrollStrategy: this.overlay.scrollStrategies.block(),\n hasBackdrop: true,\n backdropClass: 'loading-backdrop'\n });\n this.compRef = this._overlayRef.attach(new ComponentPortal(LoadingDefaultComponent));\n const dir = this.configSrv.get('loading')!.direction || this.directionality.value;\n if (this.instance != null) {\n this.instance!!.options = this.opt;\n this.instance!!.dir = dir;\n }\n this.compRef.changeDetectorRef.markForCheck();\n }\n\n /**\n * Open a new loading indicator\n *\n * 打开一个新加载指示符\n */\n open(options?: LoadingShowOptions): void {\n this.opt = { ...this.cog, ...options };\n this.n$.next();\n }\n\n private _close(cleanOpt: boolean): void {\n if (cleanOpt) this.opt = null;\n if (!this._overlayRef) return;\n this._overlayRef.detach();\n this.compRef = null;\n }\n\n /**\n * Turn off a loading indicator\n *\n * 关闭一个加载指示符\n */\n close(): void {\n this._close(true);\n }\n\n ngOnDestroy(): void {\n this.loading$.unsubscribe();\n }\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzSpinModule } from 'ng-zorro-antd/spin';\n\nimport { LoadingDefaultComponent } from './loading.component';\n\nconst COMPONENTS = [LoadingDefaultComponent];\n\n@NgModule({\n imports: [CommonModule, OverlayModule, PortalModule, NzIconModule, NzSpinModule, ...COMPONENTS],\n exports: COMPONENTS\n})\nexport class LoadingModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}