@delon/abc 15.2.0 → 16.0.0-beta.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 (462) hide show
  1. package/auto-focus/auto-focus.directive.d.ts +1 -1
  2. package/avatar-list/avatar-list-item.component.d.ts +1 -1
  3. package/avatar-list/avatar-list.component.d.ts +1 -1
  4. package/count-down/count-down.component.d.ts +1 -1
  5. package/date-picker/range.directive.d.ts +1 -1
  6. package/down-file/down-file.directive.d.ts +1 -1
  7. package/ellipsis/ellipsis.component.d.ts +1 -1
  8. package/error-collect/error-collect.component.d.ts +1 -1
  9. package/esm2022/auto-focus/auto-focus.directive.mjs +51 -0
  10. package/esm2022/auto-focus/auto-focus.module.mjs +18 -0
  11. package/esm2022/avatar-list/avatar-list-item.component.mjs +27 -0
  12. package/esm2022/avatar-list/avatar-list.component.mjs +89 -0
  13. package/esm2022/avatar-list/avatar-list.module.mjs +23 -0
  14. package/esm2022/count-down/count-down.component.mjs +46 -0
  15. package/esm2022/count-down/count-down.module.mjs +21 -0
  16. package/esm2022/date-picker/date-picker.module.mjs +23 -0
  17. package/esm2022/date-picker/range-shortcut.component.mjs +41 -0
  18. package/esm2022/date-picker/range.directive.mjs +174 -0
  19. package/esm2022/down-file/down-file.directive.mjs +115 -0
  20. package/esm2022/down-file/down-file.module.mjs +21 -0
  21. package/esm2022/ellipsis/ellipsis.component.mjs +233 -0
  22. package/esm2022/ellipsis/ellipsis.module.mjs +22 -0
  23. package/esm2022/error-collect/error-collect.component.mjs +122 -0
  24. package/esm2022/error-collect/error-collect.module.mjs +21 -0
  25. package/esm2022/exception/exception.component.mjs +109 -0
  26. package/esm2022/exception/exception.module.mjs +24 -0
  27. package/esm2022/footer-toolbar/footer-toolbar.component.mjs +45 -0
  28. package/esm2022/footer-toolbar/footer-toolbar.module.mjs +22 -0
  29. package/esm2022/full-content/full-content-toggle.directive.mjs +25 -0
  30. package/esm2022/full-content/full-content.component.mjs +140 -0
  31. package/esm2022/full-content/full-content.module.mjs +21 -0
  32. package/esm2022/full-content/full-content.service.mjs +23 -0
  33. package/esm2022/global-footer/global-footer-item.component.mjs +31 -0
  34. package/esm2022/global-footer/global-footer.component.mjs +73 -0
  35. package/esm2022/global-footer/global-footer.module.mjs +22 -0
  36. package/esm2022/hotkey/hotkey.directive.mjs +37 -0
  37. package/esm2022/hotkey/hotkey.module.mjs +18 -0
  38. package/esm2022/let/let.directive.mjs +38 -0
  39. package/esm2022/let/let.module.mjs +18 -0
  40. package/esm2022/loading/loading.component.mjs +27 -0
  41. package/esm2022/loading/loading.module.mjs +24 -0
  42. package/esm2022/loading/loading.service.mjs +91 -0
  43. package/esm2022/lodop/lodop.module.mjs +13 -0
  44. package/esm2022/lodop/lodop.service.mjs +223 -0
  45. package/esm2022/media/media.component.mjs +118 -0
  46. package/esm2022/media/media.module.mjs +20 -0
  47. package/esm2022/media/media.service.mjs +47 -0
  48. package/esm2022/notice-icon/notice-icon-tab.component.mjs +35 -0
  49. package/esm2022/notice-icon/notice-icon.component.mjs +90 -0
  50. package/esm2022/notice-icon/notice-icon.module.mjs +59 -0
  51. package/esm2022/observers/observer-size.mjs +119 -0
  52. package/esm2022/onboarding/onboarding.component.mjs +135 -0
  53. package/esm2022/onboarding/onboarding.module.mjs +27 -0
  54. package/esm2022/onboarding/onboarding.service.mjs +186 -0
  55. package/esm2022/page-header/page-header.component.mjs +247 -0
  56. package/esm2022/page-header/page-header.module.mjs +25 -0
  57. package/esm2022/pdf/pdf.component.mjs +474 -0
  58. package/esm2022/pdf/pdf.module.mjs +21 -0
  59. package/esm2022/qr/qr.component.mjs +137 -0
  60. package/esm2022/qr/qr.module.mjs +20 -0
  61. package/esm2022/quick-menu/quick-menu.component.mjs +90 -0
  62. package/esm2022/quick-menu/quick-menu.module.mjs +22 -0
  63. package/esm2022/result/result.component.mjs +61 -0
  64. package/esm2022/result/result.module.mjs +22 -0
  65. package/esm2022/reuse-tab/reuse-tab-context-menu.component.mjs +77 -0
  66. package/esm2022/reuse-tab/reuse-tab-context.component.mjs +34 -0
  67. package/esm2022/reuse-tab/reuse-tab-context.directive.mjs +36 -0
  68. package/esm2022/reuse-tab/reuse-tab-context.service.mjs +56 -0
  69. package/esm2022/reuse-tab/reuse-tab.component.mjs +368 -0
  70. package/esm2022/reuse-tab/reuse-tab.module.mjs +50 -0
  71. package/esm2022/reuse-tab/reuse-tab.service.mjs +559 -0
  72. package/esm2022/se/se-container.component.mjs +174 -0
  73. package/esm2022/se/se.component.mjs +235 -0
  74. package/esm2022/se/se.module.mjs +24 -0
  75. package/esm2022/sg/sg-container.component.mjs +53 -0
  76. package/esm2022/sg/sg.component.mjs +68 -0
  77. package/esm2022/sg/sg.module.mjs +21 -0
  78. package/esm2022/st/st-column-source.mjs +493 -0
  79. package/esm2022/st/st-data-source.mjs +480 -0
  80. package/esm2022/st/st-export.mjs +90 -0
  81. package/{esm2020 → esm2022}/st/st-filter.component.mjs +8 -7
  82. package/esm2022/st/st-row.directive.mjs +47 -0
  83. package/esm2022/st/st-widget-host.directive.mjs +32 -0
  84. package/esm2022/st/st-widget.mjs +27 -0
  85. package/esm2022/st/st.component.mjs +1004 -0
  86. package/esm2022/st/st.module.mjs +97 -0
  87. package/esm2022/sv/sv-container.component.mjs +127 -0
  88. package/esm2022/sv/sv-value.component.mjs +45 -0
  89. package/esm2022/sv/sv.component.mjs +120 -0
  90. package/esm2022/sv/sv.module.mjs +26 -0
  91. package/esm2022/tag-select/tag-select.component.mjs +64 -0
  92. package/esm2022/tag-select/tag-select.module.mjs +22 -0
  93. package/esm2022/xlsx/xlsx.directive.mjs +28 -0
  94. package/esm2022/xlsx/xlsx.module.mjs +20 -0
  95. package/esm2022/xlsx/xlsx.service.mjs +129 -0
  96. package/esm2022/zip/zip.module.mjs +16 -0
  97. package/esm2022/zip/zip.service.mjs +117 -0
  98. package/exception/exception.component.d.ts +1 -1
  99. package/{fesm2015 → fesm2022}/auto-focus.mjs +7 -7
  100. package/{fesm2015 → fesm2022}/auto-focus.mjs.map +1 -1
  101. package/{fesm2020 → fesm2022}/avatar-list.mjs +10 -10
  102. package/fesm2022/avatar-list.mjs.map +1 -0
  103. package/{fesm2020 → fesm2022}/chart-observer-size.mjs +10 -10
  104. package/fesm2022/chart-observer-size.mjs.map +1 -0
  105. package/{fesm2020 → fesm2022}/count-down.mjs +7 -7
  106. package/fesm2022/count-down.mjs.map +1 -0
  107. package/{fesm2020 → fesm2022}/date-picker.mjs +14 -13
  108. package/fesm2022/date-picker.mjs.map +1 -0
  109. package/{fesm2020 → fesm2022}/down-file.mjs +8 -8
  110. package/fesm2022/down-file.mjs.map +1 -0
  111. package/{fesm2020 → fesm2022}/ellipsis.mjs +7 -7
  112. package/fesm2022/ellipsis.mjs.map +1 -0
  113. package/{fesm2020 → fesm2022}/error-collect.mjs +9 -9
  114. package/fesm2022/error-collect.mjs.map +1 -0
  115. package/{fesm2020 → fesm2022}/exception.mjs +7 -7
  116. package/fesm2022/exception.mjs.map +1 -0
  117. package/{fesm2020 → fesm2022}/footer-toolbar.mjs +7 -7
  118. package/fesm2022/footer-toolbar.mjs.map +1 -0
  119. package/{fesm2020 → fesm2022}/full-content.mjs +13 -13
  120. package/fesm2022/full-content.mjs.map +1 -0
  121. package/{fesm2020 → fesm2022}/global-footer.mjs +10 -10
  122. package/fesm2022/global-footer.mjs.map +1 -0
  123. package/{fesm2020 → fesm2022}/hotkey.mjs +7 -7
  124. package/{fesm2015 → fesm2022}/hotkey.mjs.map +1 -1
  125. package/{fesm2020 → fesm2022}/let.mjs +9 -8
  126. package/fesm2022/let.mjs.map +1 -0
  127. package/{fesm2020 → fesm2022}/loading.mjs +10 -11
  128. package/fesm2022/loading.mjs.map +1 -0
  129. package/{fesm2020 → fesm2022}/lodop.mjs +7 -7
  130. package/{fesm2020 → fesm2022}/lodop.mjs.map +1 -1
  131. package/{fesm2020 → fesm2022}/media.mjs +10 -10
  132. package/fesm2022/media.mjs.map +1 -0
  133. package/fesm2022/notice-icon.mjs +180 -0
  134. package/fesm2022/notice-icon.mjs.map +1 -0
  135. package/{fesm2020 → fesm2022}/onboarding.mjs +10 -11
  136. package/{fesm2020 → fesm2022}/onboarding.mjs.map +1 -1
  137. package/{fesm2020 → fesm2022}/page-header.mjs +7 -7
  138. package/{fesm2015 → fesm2022}/page-header.mjs.map +1 -1
  139. package/{fesm2020 → fesm2022}/pdf.mjs +9 -10
  140. package/fesm2022/pdf.mjs.map +1 -0
  141. package/{fesm2015 → fesm2022}/qr.mjs +7 -7
  142. package/{fesm2020 → fesm2022}/qr.mjs.map +1 -1
  143. package/{fesm2020 → fesm2022}/quick-menu.mjs +7 -7
  144. package/fesm2022/quick-menu.mjs.map +1 -0
  145. package/{fesm2020 → fesm2022}/result.mjs +7 -7
  146. package/{fesm2020 → fesm2022}/result.mjs.map +1 -1
  147. package/{fesm2020 → fesm2022}/reuse-tab.mjs +31 -31
  148. package/{fesm2015 → fesm2022}/reuse-tab.mjs.map +1 -1
  149. package/{fesm2020 → fesm2022}/se.mjs +15 -15
  150. package/fesm2022/se.mjs.map +1 -0
  151. package/{fesm2020 → fesm2022}/sg.mjs +10 -10
  152. package/fesm2022/sg.mjs.map +1 -0
  153. package/{fesm2020 → fesm2022}/st.mjs +72 -72
  154. package/fesm2022/st.mjs.map +1 -0
  155. package/{fesm2020 → fesm2022}/sv.mjs +20 -20
  156. package/fesm2022/sv.mjs.map +1 -0
  157. package/{fesm2020 → fesm2022}/tag-select.mjs +7 -7
  158. package/fesm2022/tag-select.mjs.map +1 -0
  159. package/{fesm2020 → fesm2022}/xlsx.mjs +10 -10
  160. package/fesm2022/xlsx.mjs.map +1 -0
  161. package/{fesm2020 → fesm2022}/zip.mjs +7 -7
  162. package/{fesm2015 → fesm2022}/zip.mjs.map +1 -1
  163. package/footer-toolbar/footer-toolbar.component.d.ts +1 -1
  164. package/full-content/full-content.component.d.ts +1 -1
  165. package/global-footer/global-footer-item.component.d.ts +1 -1
  166. package/global-footer/global-footer.component.d.ts +1 -1
  167. package/hotkey/hotkey.directive.d.ts +1 -1
  168. package/let/let.directive.d.ts +1 -1
  169. package/loading/style/index.less +1 -4
  170. package/media/media.component.d.ts +1 -1
  171. package/notice-icon/notice-icon-tab.component.d.ts +1 -1
  172. package/notice-icon/notice-icon.component.d.ts +1 -1
  173. package/onboarding/style/index.less +1 -4
  174. package/package.json +105 -175
  175. package/page-header/page-header.component.d.ts +1 -1
  176. package/pdf/pdf.component.d.ts +1 -1
  177. package/qr/qr.component.d.ts +1 -1
  178. package/quick-menu/quick-menu.component.d.ts +1 -1
  179. package/result/result.component.d.ts +1 -1
  180. package/reuse-tab/reuse-tab-context-menu.component.d.ts +1 -1
  181. package/reuse-tab/reuse-tab-context.component.d.ts +1 -1
  182. package/reuse-tab/reuse-tab-context.directive.d.ts +1 -1
  183. package/reuse-tab/reuse-tab.component.d.ts +1 -1
  184. package/se/se-container.component.d.ts +1 -1
  185. package/se/se.component.d.ts +1 -1
  186. package/sg/sg-container.component.d.ts +1 -1
  187. package/sg/sg.component.d.ts +1 -1
  188. package/st/st-filter.component.d.ts +1 -1
  189. package/st/st-row.directive.d.ts +1 -1
  190. package/st/st-widget-host.directive.d.ts +1 -1
  191. package/st/st.component.d.ts +9 -5
  192. package/st/style/index.less +6 -2
  193. package/sv/sv-container.component.d.ts +1 -1
  194. package/sv/sv-value.component.d.ts +1 -1
  195. package/sv/sv.component.d.ts +1 -1
  196. package/tag-select/tag-select.component.d.ts +1 -1
  197. package/xlsx/xlsx.directive.d.ts +1 -1
  198. package/esm2020/auto-focus/auto-focus.directive.mjs +0 -50
  199. package/esm2020/auto-focus/auto-focus.module.mjs +0 -17
  200. package/esm2020/avatar-list/avatar-list-item.component.mjs +0 -26
  201. package/esm2020/avatar-list/avatar-list.component.mjs +0 -88
  202. package/esm2020/avatar-list/avatar-list.module.mjs +0 -22
  203. package/esm2020/count-down/count-down.component.mjs +0 -45
  204. package/esm2020/count-down/count-down.module.mjs +0 -20
  205. package/esm2020/date-picker/date-picker.module.mjs +0 -22
  206. package/esm2020/date-picker/range-shortcut.component.mjs +0 -40
  207. package/esm2020/date-picker/range.directive.mjs +0 -172
  208. package/esm2020/down-file/down-file.directive.mjs +0 -114
  209. package/esm2020/down-file/down-file.module.mjs +0 -20
  210. package/esm2020/ellipsis/ellipsis.component.mjs +0 -232
  211. package/esm2020/ellipsis/ellipsis.module.mjs +0 -21
  212. package/esm2020/error-collect/error-collect.component.mjs +0 -121
  213. package/esm2020/error-collect/error-collect.module.mjs +0 -20
  214. package/esm2020/exception/exception.component.mjs +0 -108
  215. package/esm2020/exception/exception.module.mjs +0 -23
  216. package/esm2020/footer-toolbar/footer-toolbar.component.mjs +0 -44
  217. package/esm2020/footer-toolbar/footer-toolbar.module.mjs +0 -21
  218. package/esm2020/full-content/full-content-toggle.directive.mjs +0 -24
  219. package/esm2020/full-content/full-content.component.mjs +0 -139
  220. package/esm2020/full-content/full-content.module.mjs +0 -20
  221. package/esm2020/full-content/full-content.service.mjs +0 -22
  222. package/esm2020/global-footer/global-footer-item.component.mjs +0 -30
  223. package/esm2020/global-footer/global-footer.component.mjs +0 -72
  224. package/esm2020/global-footer/global-footer.module.mjs +0 -21
  225. package/esm2020/hotkey/hotkey.directive.mjs +0 -36
  226. package/esm2020/hotkey/hotkey.module.mjs +0 -17
  227. package/esm2020/let/let.directive.mjs +0 -36
  228. package/esm2020/let/let.module.mjs +0 -17
  229. package/esm2020/loading/loading.component.mjs +0 -26
  230. package/esm2020/loading/loading.module.mjs +0 -24
  231. package/esm2020/loading/loading.service.mjs +0 -90
  232. package/esm2020/lodop/lodop.module.mjs +0 -12
  233. package/esm2020/lodop/lodop.service.mjs +0 -222
  234. package/esm2020/media/media.component.mjs +0 -117
  235. package/esm2020/media/media.module.mjs +0 -19
  236. package/esm2020/media/media.service.mjs +0 -46
  237. package/esm2020/notice-icon/notice-icon-tab.component.mjs +0 -34
  238. package/esm2020/notice-icon/notice-icon.component.mjs +0 -89
  239. package/esm2020/notice-icon/notice-icon.module.mjs +0 -58
  240. package/esm2020/observers/observer-size.mjs +0 -116
  241. package/esm2020/onboarding/onboarding.component.mjs +0 -134
  242. package/esm2020/onboarding/onboarding.module.mjs +0 -27
  243. package/esm2020/onboarding/onboarding.service.mjs +0 -185
  244. package/esm2020/page-header/page-header.component.mjs +0 -246
  245. package/esm2020/page-header/page-header.module.mjs +0 -24
  246. package/esm2020/pdf/pdf.component.mjs +0 -474
  247. package/esm2020/pdf/pdf.module.mjs +0 -20
  248. package/esm2020/qr/qr.component.mjs +0 -136
  249. package/esm2020/qr/qr.module.mjs +0 -19
  250. package/esm2020/quick-menu/quick-menu.component.mjs +0 -89
  251. package/esm2020/quick-menu/quick-menu.module.mjs +0 -21
  252. package/esm2020/result/result.component.mjs +0 -60
  253. package/esm2020/result/result.module.mjs +0 -21
  254. package/esm2020/reuse-tab/reuse-tab-context-menu.component.mjs +0 -76
  255. package/esm2020/reuse-tab/reuse-tab-context.component.mjs +0 -33
  256. package/esm2020/reuse-tab/reuse-tab-context.directive.mjs +0 -35
  257. package/esm2020/reuse-tab/reuse-tab-context.service.mjs +0 -55
  258. package/esm2020/reuse-tab/reuse-tab.component.mjs +0 -367
  259. package/esm2020/reuse-tab/reuse-tab.module.mjs +0 -49
  260. package/esm2020/reuse-tab/reuse-tab.service.mjs +0 -558
  261. package/esm2020/se/se-container.component.mjs +0 -172
  262. package/esm2020/se/se.component.mjs +0 -234
  263. package/esm2020/se/se.module.mjs +0 -23
  264. package/esm2020/sg/sg-container.component.mjs +0 -52
  265. package/esm2020/sg/sg.component.mjs +0 -67
  266. package/esm2020/sg/sg.module.mjs +0 -20
  267. package/esm2020/st/st-column-source.mjs +0 -492
  268. package/esm2020/st/st-data-source.mjs +0 -479
  269. package/esm2020/st/st-export.mjs +0 -89
  270. package/esm2020/st/st-row.directive.mjs +0 -45
  271. package/esm2020/st/st-widget-host.directive.mjs +0 -31
  272. package/esm2020/st/st-widget.mjs +0 -26
  273. package/esm2020/st/st.component.mjs +0 -1002
  274. package/esm2020/st/st.module.mjs +0 -96
  275. package/esm2020/sv/sv-container.component.mjs +0 -125
  276. package/esm2020/sv/sv-value.component.mjs +0 -44
  277. package/esm2020/sv/sv.component.mjs +0 -119
  278. package/esm2020/sv/sv.module.mjs +0 -25
  279. package/esm2020/tag-select/tag-select.component.mjs +0 -63
  280. package/esm2020/tag-select/tag-select.module.mjs +0 -21
  281. package/esm2020/xlsx/xlsx.directive.mjs +0 -27
  282. package/esm2020/xlsx/xlsx.module.mjs +0 -19
  283. package/esm2020/xlsx/xlsx.service.mjs +0 -128
  284. package/esm2020/zip/zip.module.mjs +0 -15
  285. package/esm2020/zip/zip.service.mjs +0 -116
  286. package/fesm2015/avatar-list.mjs +0 -139
  287. package/fesm2015/avatar-list.mjs.map +0 -1
  288. package/fesm2015/chart-observer-size.mjs +0 -124
  289. package/fesm2015/chart-observer-size.mjs.map +0 -1
  290. package/fesm2015/count-down.mjs +0 -69
  291. package/fesm2015/count-down.mjs.map +0 -1
  292. package/fesm2015/date-picker.mjs +0 -236
  293. package/fesm2015/date-picker.mjs.map +0 -1
  294. package/fesm2015/down-file.mjs +0 -141
  295. package/fesm2015/down-file.mjs.map +0 -1
  296. package/fesm2015/ellipsis.mjs +0 -258
  297. package/fesm2015/ellipsis.mjs.map +0 -1
  298. package/fesm2015/error-collect.mjs +0 -147
  299. package/fesm2015/error-collect.mjs.map +0 -1
  300. package/fesm2015/exception.mjs +0 -138
  301. package/fesm2015/exception.mjs.map +0 -1
  302. package/fesm2015/footer-toolbar.mjs +0 -70
  303. package/fesm2015/footer-toolbar.mjs.map +0 -1
  304. package/fesm2015/full-content.mjs +0 -202
  305. package/fesm2015/full-content.mjs.map +0 -1
  306. package/fesm2015/global-footer.mjs +0 -126
  307. package/fesm2015/global-footer.mjs.map +0 -1
  308. package/fesm2015/hotkey.mjs +0 -57
  309. package/fesm2015/let.mjs +0 -59
  310. package/fesm2015/let.mjs.map +0 -1
  311. package/fesm2015/loading.mjs +0 -142
  312. package/fesm2015/loading.mjs.map +0 -1
  313. package/fesm2015/lodop.mjs +0 -232
  314. package/fesm2015/lodop.mjs.map +0 -1
  315. package/fesm2015/media.mjs +0 -180
  316. package/fesm2015/media.mjs.map +0 -1
  317. package/fesm2015/notice-icon.mjs +0 -180
  318. package/fesm2015/notice-icon.mjs.map +0 -1
  319. package/fesm2015/onboarding.mjs +0 -336
  320. package/fesm2015/onboarding.mjs.map +0 -1
  321. package/fesm2015/page-header.mjs +0 -276
  322. package/fesm2015/pdf.mjs +0 -517
  323. package/fesm2015/pdf.mjs.map +0 -1
  324. package/fesm2015/qr.mjs.map +0 -1
  325. package/fesm2015/quick-menu.mjs +0 -114
  326. package/fesm2015/quick-menu.mjs.map +0 -1
  327. package/fesm2015/result.mjs +0 -88
  328. package/fesm2015/result.mjs.map +0 -1
  329. package/fesm2015/reuse-tab.mjs +0 -1217
  330. package/fesm2015/se.mjs +0 -444
  331. package/fesm2015/se.mjs.map +0 -1
  332. package/fesm2015/sg.mjs +0 -139
  333. package/fesm2015/sg.mjs.map +0 -1
  334. package/fesm2015/st.mjs +0 -2526
  335. package/fesm2015/st.mjs.map +0 -1
  336. package/fesm2015/sv.mjs +0 -308
  337. package/fesm2015/sv.mjs.map +0 -1
  338. package/fesm2015/tag-select.mjs +0 -91
  339. package/fesm2015/tag-select.mjs.map +0 -1
  340. package/fesm2015/xlsx.mjs +0 -172
  341. package/fesm2015/xlsx.mjs.map +0 -1
  342. package/fesm2015/zip.mjs +0 -136
  343. package/fesm2020/abc.mjs +0 -7
  344. package/fesm2020/abc.mjs.map +0 -1
  345. package/fesm2020/auto-focus.mjs +0 -71
  346. package/fesm2020/auto-focus.mjs.map +0 -1
  347. package/fesm2020/avatar-list.mjs.map +0 -1
  348. package/fesm2020/chart-observer-size.mjs.map +0 -1
  349. package/fesm2020/count-down.mjs.map +0 -1
  350. package/fesm2020/date-picker.mjs.map +0 -1
  351. package/fesm2020/down-file.mjs.map +0 -1
  352. package/fesm2020/ellipsis.mjs.map +0 -1
  353. package/fesm2020/error-collect.mjs.map +0 -1
  354. package/fesm2020/exception.mjs.map +0 -1
  355. package/fesm2020/footer-toolbar.mjs.map +0 -1
  356. package/fesm2020/full-content.mjs.map +0 -1
  357. package/fesm2020/global-footer.mjs.map +0 -1
  358. package/fesm2020/hotkey.mjs.map +0 -1
  359. package/fesm2020/let.mjs.map +0 -1
  360. package/fesm2020/loading.mjs.map +0 -1
  361. package/fesm2020/media.mjs.map +0 -1
  362. package/fesm2020/notice-icon.mjs +0 -180
  363. package/fesm2020/notice-icon.mjs.map +0 -1
  364. package/fesm2020/page-header.mjs.map +0 -1
  365. package/fesm2020/pdf.mjs.map +0 -1
  366. package/fesm2020/qr.mjs +0 -171
  367. package/fesm2020/quick-menu.mjs.map +0 -1
  368. package/fesm2020/reuse-tab.mjs.map +0 -1
  369. package/fesm2020/se.mjs.map +0 -1
  370. package/fesm2020/sg.mjs.map +0 -1
  371. package/fesm2020/st.mjs.map +0 -1
  372. package/fesm2020/sv.mjs.map +0 -1
  373. package/fesm2020/tag-select.mjs.map +0 -1
  374. package/fesm2020/xlsx.mjs.map +0 -1
  375. package/fesm2020/zip.mjs.map +0 -1
  376. /package/{esm2020 → esm2022}/abc.mjs +0 -0
  377. /package/{esm2020 → esm2022}/auto-focus/auto-focus.mjs +0 -0
  378. /package/{esm2020 → esm2022}/auto-focus/index.mjs +0 -0
  379. /package/{esm2020 → esm2022}/avatar-list/avatar-list.mjs +0 -0
  380. /package/{esm2020 → esm2022}/avatar-list/public_api.mjs +0 -0
  381. /package/{esm2020 → esm2022}/count-down/count-down.mjs +0 -0
  382. /package/{esm2020 → esm2022}/count-down/public_api.mjs +0 -0
  383. /package/{esm2020 → esm2022}/date-picker/date-picker.mjs +0 -0
  384. /package/{esm2020 → esm2022}/date-picker/public_api.mjs +0 -0
  385. /package/{esm2020 → esm2022}/down-file/down-file.mjs +0 -0
  386. /package/{esm2020 → esm2022}/down-file/public_api.mjs +0 -0
  387. /package/{esm2020 → esm2022}/ellipsis/ellipsis.mjs +0 -0
  388. /package/{esm2020 → esm2022}/ellipsis/public_api.mjs +0 -0
  389. /package/{esm2020 → esm2022}/error-collect/error-collect.mjs +0 -0
  390. /package/{esm2020 → esm2022}/error-collect/public_api.mjs +0 -0
  391. /package/{esm2020 → esm2022}/exception/exception.mjs +0 -0
  392. /package/{esm2020 → esm2022}/exception/public_api.mjs +0 -0
  393. /package/{esm2020 → esm2022}/footer-toolbar/footer-toolbar.mjs +0 -0
  394. /package/{esm2020 → esm2022}/footer-toolbar/public_api.mjs +0 -0
  395. /package/{esm2020 → esm2022}/full-content/full-content.mjs +0 -0
  396. /package/{esm2020 → esm2022}/full-content/public_api.mjs +0 -0
  397. /package/{esm2020 → esm2022}/global-footer/global-footer.mjs +0 -0
  398. /package/{esm2020 → esm2022}/global-footer/global-footer.types.mjs +0 -0
  399. /package/{esm2020 → esm2022}/global-footer/public_api.mjs +0 -0
  400. /package/{esm2020 → esm2022}/hotkey/hotkey.mjs +0 -0
  401. /package/{esm2020 → esm2022}/hotkey/public_api.mjs +0 -0
  402. /package/{esm2020 → esm2022}/let/index.mjs +0 -0
  403. /package/{esm2020 → esm2022}/let/let.mjs +0 -0
  404. /package/{esm2020 → esm2022}/loading/loading.mjs +0 -0
  405. /package/{esm2020 → esm2022}/loading/loading.types.mjs +0 -0
  406. /package/{esm2020 → esm2022}/loading/public_api.mjs +0 -0
  407. /package/{esm2020 → esm2022}/lodop/lodop.mjs +0 -0
  408. /package/{esm2020 → esm2022}/lodop/lodop.types.mjs +0 -0
  409. /package/{esm2020 → esm2022}/lodop/public_api.mjs +0 -0
  410. /package/{esm2020 → esm2022}/media/media.mjs +0 -0
  411. /package/{esm2020 → esm2022}/media/public_api.mjs +0 -0
  412. /package/{esm2020 → esm2022}/notice-icon/notice-icon.mjs +0 -0
  413. /package/{esm2020 → esm2022}/notice-icon/notice-icon.types.mjs +0 -0
  414. /package/{esm2020 → esm2022}/notice-icon/public_api.mjs +0 -0
  415. /package/{esm2020 → esm2022}/observers/chart-observer-size.mjs +0 -0
  416. /package/{esm2020 → esm2022}/observers/public-api.mjs +0 -0
  417. /package/{esm2020 → esm2022}/onboarding/onboarding.mjs +0 -0
  418. /package/{esm2020 → esm2022}/onboarding/onboarding.types.mjs +0 -0
  419. /package/{esm2020 → esm2022}/onboarding/public_api.mjs +0 -0
  420. /package/{esm2020 → esm2022}/page-header/page-header.mjs +0 -0
  421. /package/{esm2020 → esm2022}/page-header/public_api.mjs +0 -0
  422. /package/{esm2020 → esm2022}/pdf/pdf.config.mjs +0 -0
  423. /package/{esm2020 → esm2022}/pdf/pdf.mjs +0 -0
  424. /package/{esm2020 → esm2022}/pdf/pdf.types.mjs +0 -0
  425. /package/{esm2020 → esm2022}/pdf/public_api.mjs +0 -0
  426. /package/{esm2020 → esm2022}/public_api.mjs +0 -0
  427. /package/{esm2020 → esm2022}/qr/public_api.mjs +0 -0
  428. /package/{esm2020 → esm2022}/qr/qr.config.mjs +0 -0
  429. /package/{esm2020 → esm2022}/qr/qr.mjs +0 -0
  430. /package/{esm2020 → esm2022}/qr/qr.types.mjs +0 -0
  431. /package/{esm2020 → esm2022}/quick-menu/public_api.mjs +0 -0
  432. /package/{esm2020 → esm2022}/quick-menu/quick-menu.mjs +0 -0
  433. /package/{esm2020 → esm2022}/result/public_api.mjs +0 -0
  434. /package/{esm2020 → esm2022}/result/result.mjs +0 -0
  435. /package/{esm2020 → esm2022}/reuse-tab/lifecycle_hooks.mjs +0 -0
  436. /package/{esm2020 → esm2022}/reuse-tab/public_api.mjs +0 -0
  437. /package/{esm2020 → esm2022}/reuse-tab/reuse-tab.interfaces.mjs +0 -0
  438. /package/{esm2020 → esm2022}/reuse-tab/reuse-tab.mjs +0 -0
  439. /package/{esm2020 → esm2022}/reuse-tab/reuse-tab.state.mjs +0 -0
  440. /package/{esm2020 → esm2022}/reuse-tab/reuse-tab.strategy.mjs +0 -0
  441. /package/{esm2020 → esm2022}/se/public_api.mjs +0 -0
  442. /package/{esm2020 → esm2022}/se/se.mjs +0 -0
  443. /package/{esm2020 → esm2022}/se/se.types.mjs +0 -0
  444. /package/{esm2020 → esm2022}/sg/public_api.mjs +0 -0
  445. /package/{esm2020 → esm2022}/sg/sg.mjs +0 -0
  446. /package/{esm2020 → esm2022}/st/public_api.mjs +0 -0
  447. /package/{esm2020 → esm2022}/st/st.config.mjs +0 -0
  448. /package/{esm2020 → esm2022}/st/st.interfaces.mjs +0 -0
  449. /package/{esm2020 → esm2022}/st/st.mjs +0 -0
  450. /package/{esm2020 → esm2022}/st/st.types.mjs +0 -0
  451. /package/{esm2020 → esm2022}/sv/public_api.mjs +0 -0
  452. /package/{esm2020 → esm2022}/sv/sv.mjs +0 -0
  453. /package/{esm2020 → esm2022}/tag-select/public_api.mjs +0 -0
  454. /package/{esm2020 → esm2022}/tag-select/tag-select.mjs +0 -0
  455. /package/{esm2020 → esm2022}/xlsx/public_api.mjs +0 -0
  456. /package/{esm2020 → esm2022}/xlsx/xlsx.mjs +0 -0
  457. /package/{esm2020 → esm2022}/xlsx/xlsx.types.mjs +0 -0
  458. /package/{esm2020 → esm2022}/zip/public_api.mjs +0 -0
  459. /package/{esm2020 → esm2022}/zip/zip.mjs +0 -0
  460. /package/{esm2020 → esm2022}/zip/zip.types.mjs +0 -0
  461. /package/{fesm2015 → fesm2022}/abc.mjs +0 -0
  462. /package/{fesm2015 → fesm2022}/abc.mjs.map +0 -0
@@ -0,0 +1,223 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { of, Subject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@delon/util/other";
5
+ import * as i2 from "@delon/util/config";
6
+ class LodopService {
7
+ constructor(scriptSrv, configSrv) {
8
+ this.scriptSrv = scriptSrv;
9
+ this.pending = false;
10
+ this._lodop = null;
11
+ this._init = new Subject();
12
+ this._events = new Subject();
13
+ this.printBuffer = [];
14
+ this.defaultConfig = configSrv.merge('lodop', {
15
+ url: '//localhost:8443/CLodopfuncs.js',
16
+ name: 'CLODOP',
17
+ companyName: '',
18
+ checkMaxCount: 100
19
+ });
20
+ this.cog = this.defaultConfig;
21
+ }
22
+ /**
23
+ * Get or set configuration, **Note:** Resetting will invert and reload script resources
24
+ *
25
+ * 获取或重新设置配置,**注:**重新设置会倒置重新加载脚本资源
26
+ */
27
+ get cog() {
28
+ return this._cog;
29
+ }
30
+ set cog(value) {
31
+ this._cog = {
32
+ ...this.defaultConfig,
33
+ ...value
34
+ };
35
+ }
36
+ /**
37
+ * Event change notification
38
+ *
39
+ * 事件变更通知
40
+ */
41
+ get events() {
42
+ return this._events.asObservable();
43
+ }
44
+ /**
45
+ * Get lodop object
46
+ *
47
+ * 获取 lodop 对象
48
+ */
49
+ get lodop() {
50
+ if (this._lodop)
51
+ return of({ ok: true, lodop: this._lodop });
52
+ if (this.pending)
53
+ return this._init.asObservable();
54
+ this.request();
55
+ return this._init.asObservable();
56
+ }
57
+ /**
58
+ * Get printer list
59
+ *
60
+ * 获取打印机列表
61
+ */
62
+ get printer() {
63
+ this.check();
64
+ const ret = [];
65
+ const count = this._lodop.GET_PRINTER_COUNT();
66
+ for (let index = 0; index < count; index++) {
67
+ ret.push(this._lodop.GET_PRINTER_NAME(index));
68
+ }
69
+ return ret;
70
+ }
71
+ check() {
72
+ if (!this._lodop)
73
+ throw new Error(`请务必先调用 lodop 获取对象`);
74
+ }
75
+ request() {
76
+ this.pending = true;
77
+ const url = `${this.cog.url}?name=${this.cog.name}`;
78
+ let checkMaxCount = this.cog.checkMaxCount;
79
+ const onResolve = (status, error) => {
80
+ this._init.next({
81
+ ok: status === 'ok',
82
+ status,
83
+ error,
84
+ lodop: this._lodop
85
+ });
86
+ };
87
+ const checkStatus = () => {
88
+ --checkMaxCount;
89
+ if (this._lodop.webskt && this._lodop.webskt.readyState === 1) {
90
+ onResolve('ok');
91
+ }
92
+ else {
93
+ if (checkMaxCount < 0) {
94
+ onResolve('check-limit');
95
+ return;
96
+ }
97
+ setTimeout(() => checkStatus(), 100);
98
+ }
99
+ };
100
+ this.scriptSrv.loadScript(url).then((res) => {
101
+ if (res.status !== 'ok') {
102
+ this.pending = false;
103
+ onResolve('script-load-error', res[0]);
104
+ return;
105
+ }
106
+ const win = window;
107
+ if (win.hasOwnProperty(this.cog.name)) {
108
+ this._lodop = win[this.cog.name];
109
+ }
110
+ if (this._lodop === null) {
111
+ onResolve('load-variable-name-error', { name: this.cog.name });
112
+ return;
113
+ }
114
+ this._lodop.SET_LICENSES(this.cog.companyName, this.cog.license, this.cog.licenseA, this.cog.licenseB);
115
+ checkStatus();
116
+ });
117
+ }
118
+ /**
119
+ * Reset lodop object
120
+ *
121
+ * 重置 lodop 对象
122
+ */
123
+ reset() {
124
+ this._lodop = null;
125
+ this.pending = false;
126
+ this.request();
127
+ }
128
+ /**
129
+ * Attach code to the `lodop` object, the string class supports dynamic parameters of `{{key}}`,
130
+ * **Note:** The code refers to the string data generated by the print design
131
+ *
132
+ * 附加代码至 `lodop` 对象上,字符串类支持 `{{key}}` 的动态参数,**注:** 代码是指打印设计所产生字符串数据
133
+ */
134
+ attachCode(code, contextObj, parser) {
135
+ this.check();
136
+ if (!parser)
137
+ parser = /LODOP\.([^(]+)\(([^\n]+)?\);/i;
138
+ code.split('\n').forEach(line => {
139
+ const res = parser.exec(line.trim());
140
+ if (!res)
141
+ return;
142
+ const fn = this._lodop[res[1]];
143
+ if (fn) {
144
+ let arr = null;
145
+ try {
146
+ const fakeFn = new Function(`return [${res[2]}]`);
147
+ arr = fakeFn();
148
+ }
149
+ catch { }
150
+ if (arr != null && Array.isArray(arr) && contextObj) {
151
+ for (let i = 0; i < arr.length; i++) {
152
+ if (typeof arr[i] === 'string') {
153
+ arr[i] = arr[i].replace(/{{(.*?)}}/g, (_match, key) => contextObj[key.trim()] || '');
154
+ }
155
+ }
156
+ }
157
+ fn.apply(this._lodop, arr);
158
+ }
159
+ });
160
+ }
161
+ /**
162
+ * The code is automatically returned after opening the print design and closing,
163
+ * **Note:** Automatically listen for the `On_Return` event, and it will be removed after running
164
+ *
165
+ * 打开打印设计关闭后自动返回代码,**注:** 自动监听 `On_Return` 事件,运行后会移除
166
+ */
167
+ design() {
168
+ this.check();
169
+ const tid = this._lodop.PRINT_DESIGN();
170
+ return new Promise(resolve => {
171
+ this._lodop.On_Return = (taskID, value) => {
172
+ if (tid !== taskID)
173
+ return;
174
+ this._lodop.On_Return = null;
175
+ resolve(`${value}`);
176
+ };
177
+ });
178
+ }
179
+ printDo() {
180
+ const data = this.printBuffer.shift();
181
+ if (!data)
182
+ return;
183
+ this.attachCode(data.code, data.item, data.parser);
184
+ const tid = this._lodop.PRINT();
185
+ this._lodop.On_Return = (taskID, value) => {
186
+ if (tid !== taskID)
187
+ return;
188
+ this._lodop.On_Return = null;
189
+ this._events.next({
190
+ ok: value === true,
191
+ error: value === true ? null : value,
192
+ ...data
193
+ });
194
+ this.printDo();
195
+ };
196
+ }
197
+ /**
198
+ * Print immediately, generally used for batch printing
199
+ *
200
+ * 立即打印,一般用于批量套打
201
+ */
202
+ print(code, contextObj, parser) {
203
+ this.check();
204
+ if (contextObj) {
205
+ this.printBuffer.push(...(Array.isArray(contextObj) ? contextObj : [contextObj]).map(item => {
206
+ return { code, parser, item };
207
+ }));
208
+ }
209
+ this.printDo();
210
+ }
211
+ ngOnDestroy() {
212
+ this._init.unsubscribe();
213
+ this._events.unsubscribe();
214
+ }
215
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: LodopService, deps: [{ token: i1.LazyService }, { token: i2.AlainConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
216
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: LodopService, providedIn: 'root' }); }
217
+ }
218
+ export { LodopService };
219
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: LodopService, decorators: [{
220
+ type: Injectable,
221
+ args: [{ providedIn: 'root' }]
222
+ }], ctorParameters: function () { return [{ type: i1.LazyService }, { type: i2.AlainConfigService }]; } });
223
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9kb3Auc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FiYy9sb2RvcC9sb2RvcC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDdEQsT0FBTyxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7QUFRL0MsTUFDYSxZQUFZO0lBU3ZCLFlBQW9CLFNBQXNCLEVBQUUsU0FBNkI7UUFBckQsY0FBUyxHQUFULFNBQVMsQ0FBYTtRQU5sQyxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLFdBQU0sR0FBaUIsSUFBSSxDQUFDO1FBQzVCLFVBQUssR0FBRyxJQUFJLE9BQU8sRUFBZSxDQUFDO1FBQ25DLFlBQU8sR0FBRyxJQUFJLE9BQU8sRUFBb0IsQ0FBQztRQUMxQyxnQkFBVyxHQUFnQixFQUFFLENBQUM7UUFHcEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRTtZQUM1QyxHQUFHLEVBQUUsaUNBQWlDO1lBQ3RDLElBQUksRUFBRSxRQUFRO1lBQ2QsV0FBVyxFQUFFLEVBQUU7WUFDZixhQUFhLEVBQUUsR0FBRztTQUNuQixDQUFFLENBQUM7UUFDSixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDaEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxJQUFJLEdBQUc7UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUNELElBQUksR0FBRyxDQUFDLEtBQXVCO1FBQzdCLElBQUksQ0FBQyxJQUFJLEdBQUc7WUFDVixHQUFHLElBQUksQ0FBQyxhQUFhO1lBQ3JCLEdBQUcsS0FBSztTQUNULENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxD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QyxJQUFZLEVBQUUsVUFBcUIsRUFBRSxNQUFlO1FBQ3hELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNiLElBQUksVUFBVSxFQUFFO1lBQ2QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQ25CLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ3BFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDO1lBQ2hDLENBQUMsQ0FBQyxDQUNILENBQUM7U0FDSDtRQUNELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUM3QixDQUFDOzhHQTFOVSxZQUFZO2tIQUFaLFlBQVksY0FEQyxNQUFNOztTQUNuQixZQUFZOzJGQUFaLFlBQVk7a0JBRHhCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBBbGFpbkNvbmZpZ1NlcnZpY2UsIEFsYWluTG9kb3BDb25maWcgfSBmcm9tICdAZGVsb24vdXRpbC9jb25maWcnO1xuaW1wb3J0IHsgTGF6eVNlcnZpY2UgfSBmcm9tICdAZGVsb24vdXRpbC9vdGhlcic7XG5pbXBvcnQgdHlwZSB7IE56U2FmZUFueSB9IGZyb20gJ25nLXpvcnJvLWFudGQvY29yZS90eXBlcyc7XG5cbmltcG9ydCB7IExvZG9wLCBMb2RvcFByaW50UmVzdWx0LCBMb2RvcFJlc3VsdCB9IGZyb20gJy4vbG9kb3AudHlwZXMnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIExvZG9wU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgZGVmYXVsdENvbmZpZzogQWxhaW5Mb2RvcENvbmZpZztcbiAgcHJpdmF0ZSBfY29nITogQWxhaW5Mb2RvcENvbmZpZztcbiAgcHJpdmF0ZSBwZW5kaW5nID0gZmFsc2U7XG4gIHByaXZhdGUgX2xvZG9wOiBMb2RvcCB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF9pbml0ID0gbmV3IFN1YmplY3Q8TG9kb3BSZXN1bHQ+KCk7XG4gIHByaXZhdGUgX2V2ZW50cyA9IG5ldyBTdWJqZWN0PExvZG9wUHJpbnRSZXN1bHQ+KCk7XG4gIHByaXZhdGUgcHJpbnRCdWZmZXI6IE56U2FmZUFueVtdID0gW107XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzY3JpcHRTcnY6IExhenlTZXJ2aWNlLCBjb25maWdTcnY6IEFsYWluQ29uZmlnU2VydmljZSkge1xuICAgIHRoaXMuZGVmYXVsdENvbmZpZyA9IGNvbmZpZ1Nydi5tZXJnZSgnbG9kb3AnLCB7XG4gICAgICB1cmw6ICcvL2xvY2FsaG9zdDo4NDQzL0NMb2RvcGZ1bmNzLmpzJyxcbiAgICAgIG5hbWU6ICdDTE9ET1AnLFxuICAgICAgY29tcGFueU5hbWU6ICcnLFxuICAgICAgY2hlY2tNYXhDb3VudDogMTAwXG4gICAgfSkhO1xuICAgIHRoaXMuY29nID0gdGhpcy5kZWZhdWx0Q29uZmlnO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBvciBzZXQgY29uZmlndXJhdGlvbiwgKipOb3RlOioqIFJlc2V0dGluZyB3aWxsIGludmVydCBhbmQgcmVsb2FkIHNjcmlwdCByZXNvdXJjZXNcbiAgICpcbiAgICog6I635Y+W5oiW6YeN5paw6K6+572u6YWN572u77yMKirms6jvvJoqKumHjeaWsOiuvue9ruS8muWAkue9rumHjeaWsOWKoOi9veiEmuacrOi1hOa6kFxuICAgKi9cbiAgZ2V0IGNvZygpOiBBbGFpbkxvZG9wQ29uZmlnIHtcbiAgICByZXR1cm4gdGhpcy5fY29nO1xuICB9XG4gIHNldCBjb2codmFsdWU6IEFsYWluTG9kb3BDb25maWcpIHtcbiAgICB0aGlzLl9jb2cgPSB7XG4gICAgICAuLi50aGlzLmRlZmF1bHRDb25maWcsXG4gICAgICAuLi52YWx1ZVxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogRXZlbnQgY2hhbmdlIG5vdGlmaWNhdGlvblxuICAgKlxuICAgKiDkuovku7blj5jmm7TpgJrnn6VcbiAgICovXG4gIGdldCBldmVudHMoKTogT2JzZXJ2YWJsZTxMb2RvcFByaW50UmVzdWx0PiB7XG4gICAgcmV0dXJuIHRoaXMuX2V2ZW50cy5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgbG9kb3Agb2JqZWN0XG4gICAqXG4gICAqIOiOt+WPliBsb2RvcCDlr7nosaFcbiAgICovXG4gIGdldCBsb2RvcCgpOiBPYnNlcnZhYmxlPExvZG9wUmVzdWx0PiB7XG4gICAgaWYgKHRoaXMuX2xvZG9wKSByZXR1cm4gb2YoeyBvazogdHJ1ZSwgbG9kb3A6IHRoaXMuX2xvZG9wIH0gYXMgTG9kb3BSZXN1bHQpO1xuICAgIGlmICh0aGlzLnBlbmRpbmcpIHJldHVybiB0aGlzLl9pbml0LmFzT2JzZXJ2YWJsZSgpO1xuXG4gICAgdGhpcy5yZXF1ZXN0KCk7XG5cbiAgICByZXR1cm4gdGhpcy5faW5pdC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgcHJpbnRlciBsaXN0XG4gICAqXG4gICAqIOiOt+WPluaJk+WNsOacuuWIl+ihqFxuICAgKi9cbiAgZ2V0IHByaW50ZXIoKTogc3RyaW5nW10ge1xuICAgIHRoaXMuY2hlY2soKTtcbiAgICBjb25zdCByZXQ6IHN0cmluZ1tdID0gW107XG4gICAgY29uc3QgY291bnQgPSB0aGlzLl9sb2RvcCEuR0VUX1BSSU5URVJfQ09VTlQoKTtcbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgY291bnQ7IGluZGV4KyspIHtcbiAgICAgIHJldC5wdXNoKHRoaXMuX2xvZG9wIS5HRVRfUFJJTlRFUl9OQU1FKGluZGV4KSk7XG4gICAgfVxuICAgIHJldHVybiByZXQ7XG4gIH1cblxuICBwcml2YXRlIGNoZWNrKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fbG9kb3ApIHRocm93IG5ldyBFcnJvcihg6K+35Yqh5b+F5YWI6LCD55SoIGxvZG9wIOiOt+WPluWvueixoWApO1xuICB9XG5cbiAgcHJpdmF0ZSByZXF1ZXN0KCk6IHZvaWQge1xuICAgIHRoaXMucGVuZGluZyA9IHRydWU7XG5cbiAgICBjb25zdCB1cmwgPSBgJHt0aGlzLmNvZy51cmx9P25hbWU9JHt0aGlzLmNvZy5uYW1lfWA7XG4gICAgbGV0IGNoZWNrTWF4Q291bnQgPSB0aGlzLmNvZy5jaGVja01heENvdW50IGFzIG51bWJlcjtcbiAgICBjb25zdCBvblJlc29sdmUgPSAoc3RhdHVzOiBOelNhZmVBbnksIGVycm9yPzogTnpTYWZlQW55KTogdm9pZCA9PiB7XG4gICAgICB0aGlzLl9pbml0Lm5leHQoe1xuICAgICAgICBvazogc3RhdHVzID09PSAnb2snLFxuICAgICAgICBzdGF0dXMsXG4gICAgICAgIGVycm9yLFxuICAgICAgICBsb2RvcDogdGhpcy5fbG9kb3AhXG4gICAgICB9KTtcbiAgICB9O1xuICAgIGNvbnN0IGNoZWNrU3RhdHVzID0gKCk6IHZvaWQgPT4ge1xuICAgICAgLS1jaGVja01heENvdW50O1xuICAgICAgaWYgKHRoaXMuX2xvZG9wIS53ZWJza3QgJiYgdGhpcy5fbG9kb3AhLndlYnNrdC5yZWFkeVN0YXRlID09PSAxKSB7XG4gICAgICAgIG9uUmVzb2x2ZSgnb2snKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChjaGVja01heENvdW50IDwgMCkge1xuICAgICAgICAgIG9uUmVzb2x2ZSgnY2hlY2stbGltaXQnKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiBjaGVja1N0YXR1cygpLCAxMDApO1xuICAgICAgfVxuICAgIH07XG5cbiAgICB0aGlzLnNjcmlwdFNydi5sb2FkU2NyaXB0KHVybCkudGhlbigocmVzOiBOelNhZmVBbnkpID0+IHtcbiAgICAgIGlmIChyZXMuc3RhdHVzICE9PSAnb2snKSB7XG4gICAgICAgIHRoaXMucGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBvblJlc29sdmUoJ3NjcmlwdC1sb2FkLWVycm9yJywgcmVzWzBdKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29uc3Qgd2luID0gd2luZG93IGFzIE56U2FmZUFueTtcbiAgICAgIGlmICh3aW4uaGFzT3duUHJvcGVydHkodGhpcy5jb2cubmFtZSEpKSB7XG4gICAgICAgIHRoaXMuX2xvZG9wID0gd2luW3RoaXMuY29nLm5hbWUhXSBhcyBMb2RvcDtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLl9sb2RvcCA9PT0gbnVsbCkge1xuICAgICAgICBvblJlc29sdmUoJ2xvYWQtdmFyaWFibGUtbmFtZS1lcnJvcicsIHsgbmFtZTogdGhpcy5jb2cubmFtZSB9KTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhpcy5fbG9kb3AuU0VUX0xJQ0VOU0VTKHRoaXMuY29nLmNvbXBhbnlOYW1lISwgdGhpcy5jb2cubGljZW5zZSEsIHRoaXMuY29nLmxpY2Vuc2VBLCB0aGlzLmNvZy5saWNlbnNlQik7XG4gICAgICBjaGVja1N0YXR1cygpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc2V0IGxvZG9wIG9iamVjdFxuICAgKlxuICAgKiDph43nva4gbG9kb3Ag5a+56LGhXG4gICAqL1xuICByZXNldCgpOiB2b2lkIHtcbiAgICB0aGlzLl9sb2RvcCA9IG51bGw7XG4gICAgdGhpcy5wZW5kaW5nID0gZmFsc2U7XG4gICAgdGhpcy5yZXF1ZXN0KCk7XG4gIH1cblxuICAvKipcbiAgICogQXR0YWNoIGNvZGUgdG8gdGhlIGBsb2RvcGAgb2JqZWN0LCB0aGUgc3RyaW5nIGNsYXNzIHN1cHBvcnRzIGR5bmFtaWMgcGFyYW1ldGVycyBvZiBge3trZXl9fWAsXG4gICAqICoqTm90ZToqKiBUaGUgY29kZSByZWZlcnMgdG8gdGhlIHN0cmluZyBkYXRhIGdlbmVyYXRlZCBieSB0aGUgcHJpbnQgZGVzaWduXG4gICAqXG4gICAqIOmZhOWKoOS7o+eggeiHsyBgbG9kb3BgIOWvueixoeS4iu+8jOWtl+espuS4suexu+aUr+aMgSBge3trZXl9fWAg55qE5Yqo5oCB5Y+C5pWw77yMKirms6jvvJoqKiDku6PnoIHmmK/mjIfmiZPljbDorr7orqHmiYDkuqfnlJ/lrZfnrKbkuLLmlbDmja5cbiAgICovXG4gIGF0dGFjaENvZGUoY29kZTogc3RyaW5nLCBjb250ZXh0T2JqPzogTnpTYWZlQW55LCBwYXJzZXI/OiBSZWdFeHApOiB2b2lkIHtcbiAgICB0aGlzLmNoZWNrKCk7XG4gICAgaWYgKCFwYXJzZXIpIHBhcnNlciA9IC9MT0RPUFxcLihbXihdKylcXCgoW15cXG5dKyk/XFwpOy9pO1xuICAgIGNvZGUuc3BsaXQoJ1xcbicpLmZvckVhY2gobGluZSA9PiB7XG4gICAgICBjb25zdCByZXMgPSBwYXJzZXIhLmV4ZWMobGluZS50cmltKCkpO1xuICAgICAgaWYgKCFyZXMpIHJldHVybjtcbiAgICAgIGNvbnN0IGZuID0gdGhpcy5fbG9kb3AhW3Jlc1sxXV07XG4gICAgICBpZiAoZm4pIHtcbiAgICAgICAgbGV0IGFycjogTnpTYWZlQW55W10gfCBudWxsID0gbnVsbDtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCBmYWtlRm4gPSBuZXcgRnVuY3Rpb24oYHJldHVybiBbJHtyZXNbMl19XWApO1xuICAgICAgICAgIGFyciA9IGZha2VGbigpO1xuICAgICAgICB9IGNhdGNoIHt9XG5cbiAgICAgICAgaWYgKGFyciAhPSBudWxsICYmIEFycmF5LmlzQXJyYXkoYXJyKSAmJiBjb250ZXh0T2JqKSB7XG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcnIubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgYXJyW2ldID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICBhcnJbaV0gPSAoYXJyW2ldIGFzIHN0cmluZykucmVwbGFjZSgve3soLio/KX19L2csIChfbWF0Y2gsIGtleSkgPT4gY29udGV4dE9ialtrZXkudHJpbSgpXSB8fCAnJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGZuLmFwcGx5KHRoaXMuX2xvZG9wLCBhcnIhKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgY29kZSBpcyBhdXRvbWF0aWNhbGx5IHJldHVybmVkIGFmdGVyIG9wZW5pbmcgdGhlIHByaW50IGRlc2lnbiBhbmQgY2xvc2luZyxcbiAgICogKipOb3RlOioqIEF1dG9tYXRpY2FsbHkgbGlzdGVuIGZvciB0aGUgYE9uX1JldHVybmAgZXZlbnQsIGFuZCBpdCB3aWxsIGJlIHJlbW92ZWQgYWZ0ZXIgcnVubmluZ1xuICAgKlxuICAgKiDmiZPlvIDmiZPljbDorr7orqHlhbPpl63lkI7oh6rliqjov5Tlm57ku6PnoIHvvIwqKuazqO+8mioqIOiHquWKqOebkeWQrCBgT25fUmV0dXJuYCDkuovku7bvvIzov5DooYzlkI7kvJrnp7vpmaRcbiAgICovXG4gIGRlc2lnbigpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHRoaXMuY2hlY2soKTtcbiAgICBjb25zdCB0aWQgPSB0aGlzLl9sb2RvcCEuUFJJTlRfREVTSUdOKCk7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgICAgdGhpcy5fbG9kb3AhLk9uX1JldHVybiA9ICh0YXNrSUQ6IHN0cmluZywgdmFsdWU6IGJvb2xlYW4gfCBzdHJpbmcpID0+IHtcbiAgICAgICAgaWYgKHRpZCAhPT0gdGFza0lEKSByZXR1cm47XG4gICAgICAgIHRoaXMuX2xvZG9wIS5Pbl9SZXR1cm4gPSBudWxsO1xuICAgICAgICByZXNvbHZlKGAke3ZhbHVlfWApO1xuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuICBwcml2YXRlIHByaW50RG8oKTogdm9pZCB7XG4gICAgY29uc3QgZGF0YSA9IHRoaXMucHJpbnRCdWZmZXIuc2hpZnQoKTtcbiAgICBpZiAoIWRhdGEpIHJldHVybjtcbiAgICB0aGlzLmF0dGFjaENvZGUoZGF0YS5jb2RlLCBkYXRhLml0ZW0sIGRhdGEucGFyc2VyKTtcbiAgICBjb25zdCB0aWQgPSB0aGlzLl9sb2RvcCEuUFJJTlQoKTtcbiAgICB0aGlzLl9sb2RvcCEuT25fUmV0dXJuID0gKHRhc2tJRDogc3RyaW5nLCB2YWx1ZTogYm9vbGVhbiB8IHN0cmluZykgPT4ge1xuICAgICAgaWYgKHRpZCAhPT0gdGFza0lEKSByZXR1cm47XG4gICAgICB0aGlzLl9sb2RvcCEuT25fUmV0dXJuID0gbnVsbDtcbiAgICAgIHRoaXMuX2V2ZW50cy5uZXh0KHtcbiAgICAgICAgb2s6IHZhbHVlID09PSB0cnVlLFxuICAgICAgICBlcnJvcjogdmFsdWUgPT09IHRydWUgPyBudWxsIDogdmFsdWUsXG4gICAgICAgIC4uLmRhdGFcbiAgICAgIH0pO1xuICAgICAgdGhpcy5wcmludERvKCk7XG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcmludCBpbW1lZGlhdGVseSwgZ2VuZXJhbGx5IHVzZWQgZm9yIGJhdGNoIHByaW50aW5nXG4gICAqXG4gICAqIOeri+WNs+aJk+WNsO+8jOS4gOiIrOeUqOS6juaJuemHj+Wll+aJk1xuICAgKi9cbiAgcHJpbnQoY29kZTogc3RyaW5nLCBjb250ZXh0T2JqOiBOelNhZmVBbnksIHBhcnNlcj86IFJlZ0V4cCk6IHZvaWQge1xuICAgIHRoaXMuY2hlY2soKTtcbiAgICBpZiAoY29udGV4dE9iaikge1xuICAgICAgdGhpcy5wcmludEJ1ZmZlci5wdXNoKFxuICAgICAgICAuLi4oQXJyYXkuaXNBcnJheShjb250ZXh0T2JqKSA/IGNvbnRleHRPYmogOiBbY29udGV4dE9ial0pLm1hcChpdGVtID0+IHtcbiAgICAgICAgICByZXR1cm4geyBjb2RlLCBwYXJzZXIsIGl0ZW0gfTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfVxuICAgIHRoaXMucHJpbnREbygpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5faW5pdC51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuX2V2ZW50cy51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,118 @@
1
+ import { __decorate } from "tslib";
2
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';
3
+ import { Subject, timer, takeUntil, take } from 'rxjs';
4
+ import { InputNumber, ZoneOutside } from '@delon/util/decorator';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "./media.service";
7
+ import * as i2 from "@angular/cdk/platform";
8
+ class MediaComponent {
9
+ get player() {
10
+ return this._p;
11
+ }
12
+ constructor(el, renderer, srv, ngZone, platform) {
13
+ this.el = el;
14
+ this.renderer = renderer;
15
+ this.srv = srv;
16
+ this.ngZone = ngZone;
17
+ this.platform = platform;
18
+ this.destroy$ = new Subject();
19
+ this.type = 'video';
20
+ this.delay = 0;
21
+ this.ready = new EventEmitter();
22
+ }
23
+ initDelay() {
24
+ timer(this.delay)
25
+ .pipe(takeUntil(this.destroy$))
26
+ .subscribe(() => this.ngZone.runOutsideAngular(() => this.init()));
27
+ }
28
+ init() {
29
+ const winPlyr = window.Plyr;
30
+ if (!winPlyr) {
31
+ throw new Error(`No window.Plyr found, please make sure that cdn or local path exists, the current referenced path is: ${JSON.stringify(this.srv.cog.urls)}`);
32
+ }
33
+ this.ensureElement();
34
+ const player = (this._p = new winPlyr(this.videoEl, {
35
+ ...this.srv.cog.options
36
+ }));
37
+ player.on('ready', () => this.ngZone.run(() => this.ready.next(player)));
38
+ this.uploadSource();
39
+ }
40
+ ensureElement() {
41
+ const { type } = this;
42
+ let el = this.el.nativeElement.querySelector(type);
43
+ if (!el) {
44
+ el = this.renderer.createElement(type);
45
+ el.controls = true;
46
+ this.el.nativeElement.appendChild(el);
47
+ }
48
+ this.videoEl = el;
49
+ }
50
+ destroy() {
51
+ if (this._p) {
52
+ this._p.destroy();
53
+ }
54
+ }
55
+ uploadSource() {
56
+ if (this._p == null)
57
+ return;
58
+ const { source, type } = this;
59
+ this._p.source = (typeof source === 'string' ? { type, sources: [{ src: source }] } : source);
60
+ }
61
+ ngAfterViewInit() {
62
+ if (!this.platform.isBrowser) {
63
+ return;
64
+ }
65
+ this.srv
66
+ .notify()
67
+ .pipe(takeUntil(this.destroy$), take(1))
68
+ .subscribe(() => this.initDelay());
69
+ this.srv.load();
70
+ }
71
+ ngOnChanges(changes) {
72
+ this.srv.cog = { options: this.options };
73
+ if (changes.source) {
74
+ this.uploadSource();
75
+ }
76
+ }
77
+ ngOnDestroy() {
78
+ this.destroy();
79
+ this._p = null;
80
+ const { destroy$ } = this;
81
+ destroy$.next();
82
+ destroy$.complete();
83
+ }
84
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: MediaComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.MediaService }, { token: i0.NgZone }, { token: i2.Platform }], target: i0.ɵɵFactoryTarget.Component }); }
85
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: MediaComponent, selector: "media", inputs: { type: "type", source: "source", options: "options", delay: "delay" }, outputs: { ready: "ready" }, host: { properties: { "style.display": "'block'" } }, exportAs: ["mediaComponent"], usesOnChanges: true, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
86
+ }
87
+ __decorate([
88
+ InputNumber()
89
+ ], MediaComponent.prototype, "delay", void 0);
90
+ __decorate([
91
+ ZoneOutside()
92
+ ], MediaComponent.prototype, "initDelay", null);
93
+ export { MediaComponent };
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: MediaComponent, decorators: [{
95
+ type: Component,
96
+ args: [{
97
+ selector: 'media',
98
+ exportAs: 'mediaComponent',
99
+ template: `<ng-content></ng-content>`,
100
+ host: {
101
+ '[style.display]': `'block'`
102
+ },
103
+ preserveWhitespaces: false,
104
+ changeDetection: ChangeDetectionStrategy.OnPush,
105
+ encapsulation: ViewEncapsulation.None
106
+ }]
107
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.MediaService }, { type: i0.NgZone }, { type: i2.Platform }]; }, propDecorators: { type: [{
108
+ type: Input
109
+ }], source: [{
110
+ type: Input
111
+ }], options: [{
112
+ type: Input
113
+ }], delay: [{
114
+ type: Input
115
+ }], ready: [{
116
+ type: Output
117
+ }], initDelay: [] } });
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWJjL21lZGlhL21lZGlhLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFJTCxNQUFNLEVBR04saUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJdkQsT0FBTyxFQUFFLFdBQVcsRUFBZSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7OztBQU85RSxNQVdhLGNBQWM7SUFhekIsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFRCxZQUNVLEVBQTJCLEVBQzNCLFFBQW1CLEVBQ25CLEdBQWlCLEVBQ2pCLE1BQWMsRUFDZCxRQUFrQjtRQUpsQixPQUFFLEdBQUYsRUFBRSxDQUF5QjtRQUMzQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFFBQUcsR0FBSCxHQUFHLENBQWM7UUFDakIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGFBQVEsR0FBUixRQUFRLENBQVU7UUFqQnBCLGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRTlCLFNBQUksR0FBYyxPQUFPLENBQUM7UUFHWCxVQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsVUFBSyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7SUFZakQsQ0FBQztJQUdJLFNBQVM7UUFDZixLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQzthQUNkLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQzlCLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJ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SSxPQUFPLENBQUMsTUFBTSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztTQUNyQjtJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2YsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUM7UUFFZixNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsSUFBSSxDQUFDO1FBQzFCLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNoQixRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDdEIsQ0FBQzs4R0F2R1UsY0FBYztrR0FBZCxjQUFjLG1RQVJmLDJCQUEyQjs7QUFrQmI7SUFBZCxXQUFXLEVBQUU7NkNBQVc7QUFnQjFCO0lBRFAsV0FBVyxFQUFFOytDQUtiO1NBOUJVLGNBQWM7MkZBQWQsY0FBYztrQkFYMUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsT0FBTztvQkFDakIsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsSUFBSSxFQUFFO3dCQUNKLGlCQUFpQixFQUFFLFNBQVM7cUJBQzdCO29CQUNELG1CQUFtQixFQUFFLEtBQUs7b0JBQzFCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtpQkFDdEM7Z01BUVUsSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ2tCLEtBQUs7c0JBQTVCLEtBQUs7Z0JBQ2EsS0FBSztzQkFBdkIsTUFBTTtnQkFlQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGxhdGZvcm0gfSBmcm9tICdAYW5ndWxhci9jZGsvcGxhdGZvcm0nO1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjIsXG4gIFNpbXBsZUNoYW5nZSxcbiAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCB0aW1lciwgdGFrZVVudGlsLCB0YWtlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB0eXBlIFBseXIgZnJvbSAncGx5cic7XG5cbmltcG9ydCB7IElucHV0TnVtYmVyLCBOdW1iZXJJbnB1dCwgWm9uZU91dHNpZGUgfSBmcm9tICdAZGVsb24vdXRpbC9kZWNvcmF0b3InO1xuaW1wb3J0IHR5cGUgeyBOelNhZmVBbnkgfSBmcm9tICduZy16b3Jyby1hbnRkL2NvcmUvdHlwZXMnO1xuXG5pbXBvcnQgeyBNZWRpYVNlcnZpY2UgfSBmcm9tICcuL21lZGlhLnNlcnZpY2UnO1xuXG5leHBvcnQgdHlwZSBNZWRpYVR5cGUgPSAnaHRtbDUnIHwgJ3lvdXR1YmUnIHwgJ3ZpZGVvJyB8ICdhdWRpbyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21lZGlhJyxcbiAgZXhwb3J0QXM6ICdtZWRpYUNvbXBvbmVudCcsXG4gIHRlbXBsYXRlOiBgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PmAsXG4gIGhvc3Q6IHtcbiAgICAnW3N0eWxlLmRpc3BsYXldJzogYCdibG9jaydgXG4gIH0sXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBNZWRpYUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX2RlbGF5OiBOdW1iZXJJbnB1dDtcblxuICBwcml2YXRlIF9wPzogUGx5ciB8IG51bGw7XG4gIHByaXZhdGUgdmlkZW9FbD86IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBASW5wdXQoKSB0eXBlOiBNZWRpYVR5cGUgPSAndmlkZW8nO1xuICBASW5wdXQoKSBzb3VyY2U/OiBzdHJpbmcgfCBQbHlyLlNvdXJjZUluZm87XG4gIEBJbnB1dCgpIG9wdGlvbnM/OiBQbHlyLk9wdGlvbnM7XG4gIEBJbnB1dCgpIEBJbnB1dE51bWJlcigpIGRlbGF5ID0gMDtcbiAgQE91dHB1dCgpIHJlYWRvbmx5IHJlYWR5ID0gbmV3IEV2ZW50RW1pdHRlcjxQbHlyPigpO1xuXG4gIGdldCBwbGF5ZXIoKTogUGx5ciB8IHVuZGVmaW5lZCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9wO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgc3J2OiBNZWRpYVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSxcbiAgICBwcml2YXRlIHBsYXRmb3JtOiBQbGF0Zm9ybVxuICApIHt9XG5cbiAgQFpvbmVPdXRzaWRlKClcbiAgcHJpdmF0ZSBpbml0RGVsYXkoKTogdm9pZCB7XG4gICAgdGltZXIodGhpcy5kZWxheSlcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4gdGhpcy5pbml0KCkpKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCB3aW5QbHlyID0gKHdpbmRvdyBhcyBOelNhZmVBbnkpLlBseXI7XG4gICAgaWYgKCF3aW5QbHlyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBObyB3aW5kb3cuUGx5ciBmb3VuZCwgcGxlYXNlIG1ha2Ugc3VyZSB0aGF0IGNkbiBvciBsb2NhbCBwYXRoIGV4aXN0cywgdGhlIGN1cnJlbnQgcmVmZXJlbmNlZCBwYXRoIGlzOiAke0pTT04uc3RyaW5naWZ5KFxuICAgICAgICAgIHRoaXMuc3J2LmNvZy51cmxzXG4gICAgICAgICl9YFxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLmVuc3VyZUVsZW1lbnQoKTtcblxuICAgIGNvbnN0IHBsYXllcjogUGx5ciA9ICh0aGlzLl9wID0gbmV3IHdpblBseXIodGhpcy52aWRlb0VsLCB7XG4gICAgICAuLi50aGlzLnNydi5jb2cub3B0aW9uc1xuICAgIH0pKTtcblxuICAgIHBsYXllci5vbigncmVhZHknLCAoKSA9PiB0aGlzLm5nWm9uZS5ydW4oKCkgPT4gdGhpcy5yZWFkeS5uZXh0KHBsYXllcikpKTtcblxuICAgIHRoaXMudXBsb2FkU291cmNlKCk7XG4gIH1cblxuICBwcml2YXRlIGVuc3VyZUVsZW1lbnQoKTogdm9pZCB7XG4gICAgY29uc3QgeyB0eXBlIH0gPSB0aGlzO1xuICAgIGxldCBlbCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKHR5cGUpIGFzIEhUTUxFbGVtZW50O1xuICAgIGlmICghZWwpIHtcbiAgICAgIGVsID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KHR5cGUpO1xuICAgICAgKGVsIGFzIEhUTUxWaWRlb0VsZW1lbnQpLmNvbnRyb2xzID0gdHJ1ZTtcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5hcHBlbmRDaGlsZChlbCk7XG4gICAgfVxuICAgIHRoaXMudmlkZW9FbCA9IGVsO1xuICB9XG5cbiAgcHJpdmF0ZSBkZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9wKSB7XG4gICAgICB0aGlzLl9wLmRlc3Ryb3koKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHVwbG9hZFNvdXJjZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fcCA9PSBudWxsKSByZXR1cm47XG5cbiAgICBjb25zdCB7IHNvdXJjZSwgdHlwZSB9ID0gdGhpcztcbiAgICB0aGlzLl9wLnNvdXJjZSA9ICh0eXBlb2Ygc291cmNlID09PSAnc3RyaW5nJyA/IHsgdHlwZSwgc291cmNlczogW3sgc3JjOiBzb3VyY2UgfV0gfSA6IHNvdXJjZSkgYXMgUGx5ci5Tb3VyY2VJbmZvO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5wbGF0Zm9ybS5pc0Jyb3dzZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5zcnZcbiAgICAgIC5ub3RpZnkoKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLCB0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmluaXREZWxheSgpKTtcblxuICAgIHRoaXMuc3J2LmxvYWQoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IHsgW3AgaW4ga2V5b2YgTWVkaWFDb21wb25lbnRdPzogU2ltcGxlQ2hhbmdlIH0pOiB2b2lkIHtcbiAgICB0aGlzLnNydi5jb2cgPSB7IG9wdGlvbnM6IHRoaXMub3B0aW9ucyB9O1xuICAgIGlmIChjaGFuZ2VzLnNvdXJjZSkge1xuICAgICAgdGhpcy51cGxvYWRTb3VyY2UoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3koKTtcbiAgICB0aGlzLl9wID0gbnVsbDtcblxuICAgIGNvbnN0IHsgZGVzdHJveSQgfSA9IHRoaXM7XG4gICAgZGVzdHJveSQubmV4dCgpO1xuICAgIGRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,20 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { MediaComponent } from './media.component';
4
+ import * as i0 from "@angular/core";
5
+ const COMPONENTS = [MediaComponent];
6
+ class MediaModule {
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: MediaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.4", ngImport: i0, type: MediaModule, declarations: [MediaComponent], imports: [CommonModule], exports: [MediaComponent] }); }
9
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: MediaModule, imports: [CommonModule] }); }
10
+ }
11
+ export { MediaModule };
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: MediaModule, decorators: [{
13
+ type: NgModule,
14
+ args: [{
15
+ imports: [CommonModule],
16
+ declarations: COMPONENTS,
17
+ exports: COMPONENTS
18
+ }]
19
+ }] });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWJjL21lZGlhL21lZGlhLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBRW5ELE1BQU0sVUFBVSxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7QUFFcEMsTUFLYSxXQUFXOzhHQUFYLFdBQVc7K0dBQVgsV0FBVyxpQkFQSixjQUFjLGFBR3RCLFlBQVksYUFISixjQUFjOytHQU9yQixXQUFXLFlBSlosWUFBWTs7U0FJWCxXQUFXOzJGQUFYLFdBQVc7a0JBTHZCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixZQUFZLEVBQUUsVUFBVTtvQkFDeEIsT0FBTyxFQUFFLFVBQVU7aUJBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE1lZGlhQ29tcG9uZW50IH0gZnJvbSAnLi9tZWRpYS5jb21wb25lbnQnO1xuXG5jb25zdCBDT01QT05FTlRTID0gW01lZGlhQ29tcG9uZW50XTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogQ09NUE9ORU5UUyxcbiAgZXhwb3J0czogQ09NUE9ORU5UU1xufSlcbmV4cG9ydCBjbGFzcyBNZWRpYU1vZHVsZSB7fVxuIl19
@@ -0,0 +1,47 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { Subject, share } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@delon/util/config";
5
+ import * as i2 from "@delon/util/other";
6
+ class MediaService {
7
+ get cog() {
8
+ return this._cog;
9
+ }
10
+ set cog(val) {
11
+ this._cog = this.cogSrv.merge('media', {
12
+ urls: ['https://cdn.jsdelivr.net/npm/plyr/dist/plyr.min.js', 'https://cdn.jsdelivr.net/npm/plyr/dist/plyr.css']
13
+ }, val);
14
+ }
15
+ constructor(cogSrv, lazySrv) {
16
+ this.cogSrv = cogSrv;
17
+ this.lazySrv = lazySrv;
18
+ this.loading = false;
19
+ this.loaded = false;
20
+ this.notify$ = new Subject();
21
+ }
22
+ load() {
23
+ if (this.loading) {
24
+ if (this.loaded) {
25
+ this.notify$.next();
26
+ }
27
+ return this;
28
+ }
29
+ this.loading = true;
30
+ this.lazySrv.load(this.cog.urls).then(() => {
31
+ this.loaded = true;
32
+ this.notify$.next();
33
+ });
34
+ return this;
35
+ }
36
+ notify() {
37
+ return this.notify$.asObservable().pipe(share());
38
+ }
39
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: MediaService, deps: [{ token: i1.AlainConfigService }, { token: i2.LazyService }], target: i0.ɵɵFactoryTarget.Injectable }); }
40
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: MediaService, providedIn: 'root' }); }
41
+ }
42
+ export { MediaService };
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: MediaService, decorators: [{
44
+ type: Injectable,
45
+ args: [{ providedIn: 'root' }]
46
+ }], ctorParameters: function () { return [{ type: i1.AlainConfigService }, { type: i2.LazyService }]; } });
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FiYy9tZWRpYS9tZWRpYS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7QUFLbEQsTUFDYSxZQUFZO0lBTXZCLElBQUksR0FBRztRQUNMLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBQ0QsSUFBSSxHQUFHLENBQUMsR0FBcUI7UUFDM0IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDM0IsT0FBTyxFQUNQO1lBQ0UsSUFBSSxFQUFFLENBQUMsb0RBQW9ELEVBQUUsaURBQWlELENBQUM7U0FDaEgsRUFDRCxHQUFHLENBQ0gsQ0FBQztJQUNMLENBQUM7SUFFRCxZQUFvQixNQUEwQixFQUFVLE9BQW9CO1FBQXhELFdBQU0sR0FBTixNQUFNLENBQW9CO1FBQVUsWUFBTyxHQUFQLE9BQU8sQ0FBYTtRQWpCcEUsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ2YsWUFBTyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFleUMsQ0FBQztJQUVoRixJQUFJO1FBQ0YsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFDZixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO2FBQ3JCO1lBQ0QsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUMxQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztZQUNuQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsTUFBTTtRQUNKLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNuRCxDQUFDOzhHQXRDVSxZQUFZO2tIQUFaLFlBQVksY0FEQyxNQUFNOztTQUNuQixZQUFZOzJGQUFaLFlBQVk7a0JBRHhCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCwgc2hhcmUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQWxhaW5Db25maWdTZXJ2aWNlLCBBbGFpbk1lZGlhQ29uZmlnIH0gZnJvbSAnQGRlbG9uL3V0aWwvY29uZmlnJztcbmltcG9ydCB7IExhenlTZXJ2aWNlIH0gZnJvbSAnQGRlbG9uL3V0aWwvb3RoZXInO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIE1lZGlhU2VydmljZSB7XG4gIHByaXZhdGUgX2NvZyE6IEFsYWluTWVkaWFDb25maWc7XG4gIHByaXZhdGUgbG9hZGluZyA9IGZhbHNlO1xuICBwcml2YXRlIGxvYWRlZCA9IGZhbHNlO1xuICBwcml2YXRlIG5vdGlmeSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGdldCBjb2coKTogQWxhaW5NZWRpYUNvbmZpZyB7XG4gICAgcmV0dXJuIHRoaXMuX2NvZztcbiAgfVxuICBzZXQgY29nKHZhbDogQWxhaW5NZWRpYUNvbmZpZykge1xuICAgIHRoaXMuX2NvZyA9IHRoaXMuY29nU3J2Lm1lcmdlKFxuICAgICAgJ21lZGlhJyxcbiAgICAgIHtcbiAgICAgICAgdXJsczogWydodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL3BseXIvZGlzdC9wbHlyLm1pbi5qcycsICdodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL3BseXIvZGlzdC9wbHlyLmNzcyddXG4gICAgICB9LFxuICAgICAgdmFsXG4gICAgKSE7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvZ1NydjogQWxhaW5Db25maWdTZXJ2aWNlLCBwcml2YXRlIGxhenlTcnY6IExhenlTZXJ2aWNlKSB7fVxuXG4gIGxvYWQoKTogdGhpcyB7XG4gICAgaWYgKHRoaXMubG9hZGluZykge1xuICAgICAgaWYgKHRoaXMubG9hZGVkKSB7XG4gICAgICAgIHRoaXMubm90aWZ5JC5uZXh0KCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdGhpcztcbiAgICB9XG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLmxhenlTcnYubG9hZCh0aGlzLmNvZy51cmxzISkudGhlbigoKSA9PiB7XG4gICAgICB0aGlzLmxvYWRlZCA9IHRydWU7XG4gICAgICB0aGlzLm5vdGlmeSQubmV4dCgpO1xuICAgIH0pO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgbm90aWZ5KCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLm5vdGlmeSQuYXNPYnNlcnZhYmxlKCkucGlwZShzaGFyZSgpKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,35 @@
1
+ import { Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "ng-zorro-antd/list";
5
+ import * as i3 from "ng-zorro-antd/tag";
6
+ import * as i4 from "ng-zorro-antd/core/outlet";
7
+ class NoticeIconTabComponent {
8
+ constructor() {
9
+ this.locale = {};
10
+ this.select = new EventEmitter();
11
+ this.clear = new EventEmitter();
12
+ }
13
+ onClick(item) {
14
+ this.select.emit({ title: this.data.title, item });
15
+ }
16
+ onClear() {
17
+ this.clear.emit(this.data.title);
18
+ }
19
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: NoticeIconTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
20
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: NoticeIconTabComponent, selector: "notice-icon-tab", inputs: { locale: "locale", data: "data" }, outputs: { select: "select", clear: "clear" }, exportAs: ["noticeIconTab"], ngImport: i0, template: "<div *ngIf=\"data.list?.length === 0; else listTpl\" class=\"notice-icon__notfound\">\n <img class=\"notice-icon__notfound-img\" *ngIf=\"data.emptyImage\" [attr.src]=\"data.emptyImage\" alt=\"not found\" />\n <p>\n <ng-container *nzStringTemplateOutlet=\"data.emptyText\">\n {{ data.emptyText || locale.emptyText }}\n </ng-container>\n </p>\n</div>\n<ng-template #listTpl>\n <nz-list [nzDataSource]=\"data.list\" [nzRenderItem]=\"item\">\n <ng-template #item let-item>\n <nz-list-item (click)=\"onClick(item)\" [ngClass]=\"{ 'notice-icon__item-read': item.read }\">\n <nz-list-item-meta [nzTitle]=\"nzTitle\" [nzDescription]=\"nzDescription\" [nzAvatar]=\"item.avatar\">\n <ng-template #nzTitle>\n <ng-container *nzStringTemplateOutlet=\"item.title; context: { $implicit: item }\">{{\n item.title\n }}</ng-container>\n <div class=\"notice-icon__item-extra\" *ngIf=\"item.extra\">\n <nz-tag [nzColor]=\"item.color\">{{ item.extra }}</nz-tag>\n </div>\n </ng-template>\n <ng-template #nzDescription>\n <div *ngIf=\"item.description\" class=\"notice-icon__item-desc\">\n <ng-container *nzStringTemplateOutlet=\"item.description; context: { $implicit: item }\">{{\n item.description\n }}</ng-container>\n </div>\n <div *ngIf=\"item.datetime\" class=\"notice-icon__item-time\">{{ item.datetime }}</div>\n </ng-template>\n </nz-list-item-meta>\n </nz-list-item>\n </ng-template>\n </nz-list>\n <div class=\"notice-icon__clear\" (click)=\"onClear()\">{{ data.clearText || locale.clearText }}</div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.NzListComponent, selector: "nz-list, [nz-list]", inputs: ["nzDataSource", "nzBordered", "nzGrid", "nzHeader", "nzFooter", "nzItemLayout", "nzRenderItem", "nzLoading", "nzLoadMore", "nzPagination", "nzSize", "nzSplit", "nzNoResult"], exportAs: ["nzList"] }, { kind: "component", type: i2.NzListItemComponent, selector: "nz-list-item, [nz-list-item]", inputs: ["nzActions", "nzContent", "nzExtra", "nzNoFlex"], exportAs: ["nzListItem"] }, { kind: "component", type: i2.NzListItemMetaComponent, selector: "nz-list-item-meta, [nz-list-item-meta]", inputs: ["nzAvatar", "nzTitle", "nzDescription"], exportAs: ["nzListItemMeta"] }, { kind: "component", type: i3.NzTagComponent, selector: "nz-tag", inputs: ["nzMode", "nzColor", "nzChecked"], outputs: ["nzOnClose", "nzCheckedChange"], exportAs: ["nzTag"] }, { kind: "directive", type: i4.NzStringTemplateOutletDirective, selector: "[nzStringTemplateOutlet]", inputs: ["nzStringTemplateOutletContext", "nzStringTemplateOutlet"], exportAs: ["nzStringTemplateOutlet"] }], encapsulation: i0.ViewEncapsulation.None }); }
21
+ }
22
+ export { NoticeIconTabComponent };
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: NoticeIconTabComponent, decorators: [{
24
+ type: Component,
25
+ args: [{ selector: 'notice-icon-tab', exportAs: 'noticeIconTab', preserveWhitespaces: false, encapsulation: ViewEncapsulation.None, template: "<div *ngIf=\"data.list?.length === 0; else listTpl\" class=\"notice-icon__notfound\">\n <img class=\"notice-icon__notfound-img\" *ngIf=\"data.emptyImage\" [attr.src]=\"data.emptyImage\" alt=\"not found\" />\n <p>\n <ng-container *nzStringTemplateOutlet=\"data.emptyText\">\n {{ data.emptyText || locale.emptyText }}\n </ng-container>\n </p>\n</div>\n<ng-template #listTpl>\n <nz-list [nzDataSource]=\"data.list\" [nzRenderItem]=\"item\">\n <ng-template #item let-item>\n <nz-list-item (click)=\"onClick(item)\" [ngClass]=\"{ 'notice-icon__item-read': item.read }\">\n <nz-list-item-meta [nzTitle]=\"nzTitle\" [nzDescription]=\"nzDescription\" [nzAvatar]=\"item.avatar\">\n <ng-template #nzTitle>\n <ng-container *nzStringTemplateOutlet=\"item.title; context: { $implicit: item }\">{{\n item.title\n }}</ng-container>\n <div class=\"notice-icon__item-extra\" *ngIf=\"item.extra\">\n <nz-tag [nzColor]=\"item.color\">{{ item.extra }}</nz-tag>\n </div>\n </ng-template>\n <ng-template #nzDescription>\n <div *ngIf=\"item.description\" class=\"notice-icon__item-desc\">\n <ng-container *nzStringTemplateOutlet=\"item.description; context: { $implicit: item }\">{{\n item.description\n }}</ng-container>\n </div>\n <div *ngIf=\"item.datetime\" class=\"notice-icon__item-time\">{{ item.datetime }}</div>\n </ng-template>\n </nz-list-item-meta>\n </nz-list-item>\n </ng-template>\n </nz-list>\n <div class=\"notice-icon__clear\" (click)=\"onClear()\">{{ data.clearText || locale.clearText }}</div>\n</ng-template>\n" }]
26
+ }], propDecorators: { locale: [{
27
+ type: Input
28
+ }], data: [{
29
+ type: Input
30
+ }], select: [{
31
+ type: Output
32
+ }], clear: [{
33
+ type: Output
34
+ }] } });
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWNlLWljb24tdGFiLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FiYy9ub3RpY2UtaWNvbi9ub3RpY2UtaWNvbi10YWIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWJjL25vdGljZS1pY29uL25vdGljZS1pY29uLXRhYi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFNMUYsTUFPYSxzQkFBc0I7SUFQbkM7UUFRVyxXQUFNLEdBQWUsRUFBRSxDQUFDO1FBRWQsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFvQixDQUFDO1FBQzlDLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0tBU3ZEO0lBUEMsT0FBTyxDQUFDLElBQWdCO1FBQ3RCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25DLENBQUM7OEdBWlUsc0JBQXNCO2tHQUF0QixzQkFBc0IsK0tDYm5DLHlzREFtQ0E7O1NEdEJhLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQVBsQyxTQUFTOytCQUNFLGlCQUFpQixZQUNqQixlQUFlLHVCQUVKLEtBQUssaUJBQ1gsaUJBQWlCLENBQUMsSUFBSTs4QkFHNUIsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDYSxNQUFNO3NCQUF4QixNQUFNO2dCQUNZLEtBQUs7c0JBQXZCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTG9jYWxlRGF0YSB9IGZyb20gJ0BkZWxvbi90aGVtZSc7XG5cbmltcG9ydCB7IE5vdGljZUljb25TZWxlY3QsIE5vdGljZUl0ZW0gfSBmcm9tICcuL25vdGljZS1pY29uLnR5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbm90aWNlLWljb24tdGFiJyxcbiAgZXhwb3J0QXM6ICdub3RpY2VJY29uVGFiJyxcbiAgdGVtcGxhdGVVcmw6ICcuL25vdGljZS1pY29uLXRhYi5jb21wb25lbnQuaHRtbCcsXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIE5vdGljZUljb25UYWJDb21wb25lbnQge1xuICBASW5wdXQoKSBsb2NhbGU6IExvY2FsZURhdGEgPSB7fTtcbiAgQElucHV0KCkgZGF0YSE6IE5vdGljZUl0ZW07XG4gIEBPdXRwdXQoKSByZWFkb25seSBzZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPE5vdGljZUljb25TZWxlY3Q+KCk7XG4gIEBPdXRwdXQoKSByZWFkb25seSBjbGVhciA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIG9uQ2xpY2soaXRlbTogTm90aWNlSXRlbSk6IHZvaWQge1xuICAgIHRoaXMuc2VsZWN0LmVtaXQoeyB0aXRsZTogdGhpcy5kYXRhLnRpdGxlLCBpdGVtIH0pO1xuICB9XG5cbiAgb25DbGVhcigpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyLmVtaXQodGhpcy5kYXRhLnRpdGxlKTtcbiAgfVxufVxuIiwiPGRpdiAqbmdJZj1cImRhdGEubGlzdD8ubGVuZ3RoID09PSAwOyBlbHNlIGxpc3RUcGxcIiBjbGFzcz1cIm5vdGljZS1pY29uX19ub3Rmb3VuZFwiPlxuICA8aW1nIGNsYXNzPVwibm90aWNlLWljb25fX25vdGZvdW5kLWltZ1wiICpuZ0lmPVwiZGF0YS5lbXB0eUltYWdlXCIgW2F0dHIuc3JjXT1cImRhdGEuZW1wdHlJbWFnZVwiIGFsdD1cIm5vdCBmb3VuZFwiIC8+XG4gIDxwPlxuICAgIDxuZy1jb250YWluZXIgKm56U3RyaW5nVGVtcGxhdGVPdXRsZXQ9XCJkYXRhLmVtcHR5VGV4dFwiPlxuICAgICAge3sgZGF0YS5lbXB0eVRleHQgfHwgbG9jYWxlLmVtcHR5VGV4dCB9fVxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L3A+XG48L2Rpdj5cbjxuZy10ZW1wbGF0ZSAjbGlzdFRwbD5cbiAgPG56LWxpc3QgW256RGF0YVNvdXJjZV09XCJkYXRhLmxpc3RcIiBbbnpSZW5kZXJJdGVtXT1cIml0ZW1cIj5cbiAgICA8bmctdGVtcGxhdGUgI2l0ZW0gbGV0LWl0ZW0+XG4gICAgICA8bnotbGlzdC1pdGVtIChjbGljayk9XCJvbkNsaWNrKGl0ZW0pXCIgW25nQ2xhc3NdPVwieyAnbm90aWNlLWljb25fX2l0ZW0tcmVhZCc6IGl0ZW0ucmVhZCB9XCI+XG4gICAgICAgIDxuei1saXN0LWl0ZW0tbWV0YSBbbnpUaXRsZV09XCJuelRpdGxlXCIgW256RGVzY3JpcHRpb25dPVwibnpEZXNjcmlwdGlvblwiIFtuekF2YXRhcl09XCJpdGVtLmF2YXRhclwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbnpUaXRsZT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm56U3RyaW5nVGVtcGxhdGVPdXRsZXQ9XCJpdGVtLnRpdGxlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogaXRlbSB9XCI+e3tcbiAgICAgICAgICAgICAgaXRlbS50aXRsZVxuICAgICAgICAgICAgfX08L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub3RpY2UtaWNvbl9faXRlbS1leHRyYVwiICpuZ0lmPVwiaXRlbS5leHRyYVwiPlxuICAgICAgICAgICAgICA8bnotdGFnIFtuekNvbG9yXT1cIml0ZW0uY29sb3JcIj57eyBpdGVtLmV4dHJhIH19PC9uei10YWc+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbnpEZXNjcmlwdGlvbj5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtLmRlc2NyaXB0aW9uXCIgY2xhc3M9XCJub3RpY2UtaWNvbl9faXRlbS1kZXNjXCI+XG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm56U3RyaW5nVGVtcGxhdGVPdXRsZXQ9XCJpdGVtLmRlc2NyaXB0aW9uOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogaXRlbSB9XCI+e3tcbiAgICAgICAgICAgICAgICBpdGVtLmRlc2NyaXB0aW9uXG4gICAgICAgICAgICAgIH19PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtLmRhdGV0aW1lXCIgY2xhc3M9XCJub3RpY2UtaWNvbl9faXRlbS10aW1lXCI+e3sgaXRlbS5kYXRldGltZSB9fTwvZGl2PlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbnotbGlzdC1pdGVtLW1ldGE+XG4gICAgICA8L256LWxpc3QtaXRlbT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L256LWxpc3Q+XG4gIDxkaXYgY2xhc3M9XCJub3RpY2UtaWNvbl9fY2xlYXJcIiAoY2xpY2spPVwib25DbGVhcigpXCI+e3sgZGF0YS5jbGVhclRleHQgfHwgbG9jYWxlLmNsZWFyVGV4dCB9fTwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -0,0 +1,90 @@
1
+ import { __decorate } from "tslib";
2
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';
3
+ import { InputBoolean, InputNumber } from '@delon/util/decorator';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@delon/theme";
6
+ import * as i2 from "@angular/common";
7
+ import * as i3 from "ng-zorro-antd/badge";
8
+ import * as i4 from "ng-zorro-antd/dropdown";
9
+ import * as i5 from "ng-zorro-antd/icon";
10
+ import * as i6 from "ng-zorro-antd/spin";
11
+ import * as i7 from "ng-zorro-antd/tabs";
12
+ import * as i8 from "./notice-icon-tab.component";
13
+ class NoticeIconComponent {
14
+ get overlayCls() {
15
+ return `header-dropdown notice-icon${!this.centered ? ' notice-icon__tab-left' : ''}`;
16
+ }
17
+ constructor(i18n, cdr) {
18
+ this.i18n = i18n;
19
+ this.cdr = cdr;
20
+ this.locale = {};
21
+ this.data = [];
22
+ this.loading = false;
23
+ this.popoverVisible = false;
24
+ this.centered = false;
25
+ this.select = new EventEmitter();
26
+ this.clear = new EventEmitter();
27
+ this.popoverVisibleChange = new EventEmitter();
28
+ }
29
+ onVisibleChange(result) {
30
+ this.popoverVisibleChange.emit(result);
31
+ }
32
+ onSelect(i) {
33
+ this.select.emit(i);
34
+ }
35
+ onClear(title) {
36
+ this.clear.emit(title);
37
+ }
38
+ ngOnInit() {
39
+ this.i18n$ = this.i18n.change.subscribe(() => {
40
+ this.locale = this.i18n.getData('noticeIcon');
41
+ this.cdr.markForCheck();
42
+ });
43
+ }
44
+ ngOnChanges() {
45
+ this.cdr.markForCheck();
46
+ }
47
+ ngOnDestroy() {
48
+ this.i18n$.unsubscribe();
49
+ }
50
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: NoticeIconComponent, deps: [{ token: i1.DelonLocaleService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
51
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: NoticeIconComponent, selector: "notice-icon", inputs: { data: "data", count: "count", loading: "loading", popoverVisible: "popoverVisible", btnClass: "btnClass", btnIconClass: "btnIconClass", centered: "centered" }, outputs: { select: "select", clear: "clear", popoverVisibleChange: "popoverVisibleChange" }, host: { properties: { "class.notice-icon__btn": "true" } }, exportAs: ["noticeIcon"], usesOnChanges: true, ngImport: i0, template: "<ng-template #badgeTpl>\n <nz-badge [nzCount]=\"count\" [ngClass]=\"btnClass!\" [nzStyle]=\"{ 'box-shadow': 'none' }\">\n <i nz-icon nzType=\"bell\" [ngClass]=\"btnIconClass!\"></i>\n </nz-badge>\n</ng-template>\n<div *ngIf=\"data!.length === 0\">\n <ng-template [ngTemplateOutlet]=\"badgeTpl\"></ng-template>\n</div>\n<div\n *ngIf=\"data!.length > 0\"\n nz-dropdown\n [nzVisible]=\"popoverVisible\"\n (nzVisibleChange)=\"onVisibleChange($event)\"\n nzTrigger=\"click\"\n nzPlacement=\"bottomRight\"\n [nzOverlayClassName]=\"overlayCls\"\n [nzDropdownMenu]=\"noticeMenu\"\n>\n <ng-template [ngTemplateOutlet]=\"badgeTpl\"></ng-template>\n</div>\n<nz-dropdown-menu #noticeMenu=\"nzDropdownMenu\">\n <nz-spin [nzSpinning]=\"loading\" [nzDelay]=\"0\">\n <nz-tabset nzSelectedIndex=\"0\" [nzCentered]=\"centered\">\n <nz-tab *ngFor=\"let i of data\" [nzTitle]=\"i.title\">\n <notice-icon-tab\n [locale]=\"locale\"\n [data]=\"i\"\n (select)=\"onSelect($event)\"\n (clear)=\"onClear($event)\"\n ></notice-icon-tab>\n </nz-tab>\n </nz-tabset>\n </nz-spin>\n</nz-dropdown-menu>\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.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.NzBadgeComponent, selector: "nz-badge", inputs: ["nzShowZero", "nzShowDot", "nzStandalone", "nzDot", "nzOverflowCount", "nzColor", "nzStyle", "nzText", "nzTitle", "nzStatus", "nzCount", "nzOffset", "nzSize"], exportAs: ["nzBadge"] }, { kind: "directive", type: i4.NzDropDownDirective, selector: "[nz-dropdown]", inputs: ["nzDropdownMenu", "nzTrigger", "nzMatchWidthElement", "nzBackdrop", "nzClickHide", "nzDisabled", "nzVisible", "nzOverlayClassName", "nzOverlayStyle", "nzPlacement"], outputs: ["nzVisibleChange"], exportAs: ["nzDropdown"] }, { kind: "component", type: i4.NzDropdownMenuComponent, selector: "nz-dropdown-menu", exportAs: ["nzDropdownMenu"] }, { kind: "directive", type: i5.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "component", type: i6.NzSpinComponent, selector: "nz-spin", inputs: ["nzIndicator", "nzSize", "nzTip", "nzDelay", "nzSimple", "nzSpinning"], exportAs: ["nzSpin"] }, { kind: "component", type: i7.NzTabSetComponent, selector: "nz-tabset", inputs: ["nzSelectedIndex", "nzTabPosition", "nzTabBarExtraContent", "nzCanDeactivate", "nzAddIcon", "nzTabBarStyle", "nzType", "nzSize", "nzAnimated", "nzTabBarGutter", "nzHideAdd", "nzCentered", "nzHideAll", "nzLinkRouter", "nzLinkExact"], outputs: ["nzSelectChange", "nzSelectedIndexChange", "nzTabListScroll", "nzClose", "nzAdd"], exportAs: ["nzTabset"] }, { kind: "component", type: i7.NzTabComponent, selector: "nz-tab", inputs: ["nzTitle", "nzClosable", "nzCloseIcon", "nzDisabled", "nzForceRender"], outputs: ["nzSelect", "nzDeselect", "nzClick", "nzContextmenu"], exportAs: ["nzTab"] }, { kind: "component", type: i8.NoticeIconTabComponent, selector: "notice-icon-tab", inputs: ["locale", "data"], outputs: ["select", "clear"], exportAs: ["noticeIconTab"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
52
+ }
53
+ __decorate([
54
+ InputNumber()
55
+ ], NoticeIconComponent.prototype, "count", void 0);
56
+ __decorate([
57
+ InputBoolean()
58
+ ], NoticeIconComponent.prototype, "loading", void 0);
59
+ __decorate([
60
+ InputBoolean()
61
+ ], NoticeIconComponent.prototype, "popoverVisible", void 0);
62
+ __decorate([
63
+ InputBoolean()
64
+ ], NoticeIconComponent.prototype, "centered", void 0);
65
+ export { NoticeIconComponent };
66
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: NoticeIconComponent, decorators: [{
67
+ type: Component,
68
+ args: [{ selector: 'notice-icon', exportAs: 'noticeIcon', host: { '[class.notice-icon__btn]': 'true' }, preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ng-template #badgeTpl>\n <nz-badge [nzCount]=\"count\" [ngClass]=\"btnClass!\" [nzStyle]=\"{ 'box-shadow': 'none' }\">\n <i nz-icon nzType=\"bell\" [ngClass]=\"btnIconClass!\"></i>\n </nz-badge>\n</ng-template>\n<div *ngIf=\"data!.length === 0\">\n <ng-template [ngTemplateOutlet]=\"badgeTpl\"></ng-template>\n</div>\n<div\n *ngIf=\"data!.length > 0\"\n nz-dropdown\n [nzVisible]=\"popoverVisible\"\n (nzVisibleChange)=\"onVisibleChange($event)\"\n nzTrigger=\"click\"\n nzPlacement=\"bottomRight\"\n [nzOverlayClassName]=\"overlayCls\"\n [nzDropdownMenu]=\"noticeMenu\"\n>\n <ng-template [ngTemplateOutlet]=\"badgeTpl\"></ng-template>\n</div>\n<nz-dropdown-menu #noticeMenu=\"nzDropdownMenu\">\n <nz-spin [nzSpinning]=\"loading\" [nzDelay]=\"0\">\n <nz-tabset nzSelectedIndex=\"0\" [nzCentered]=\"centered\">\n <nz-tab *ngFor=\"let i of data\" [nzTitle]=\"i.title\">\n <notice-icon-tab\n [locale]=\"locale\"\n [data]=\"i\"\n (select)=\"onSelect($event)\"\n (clear)=\"onClear($event)\"\n ></notice-icon-tab>\n </nz-tab>\n </nz-tabset>\n </nz-spin>\n</nz-dropdown-menu>\n" }]
69
+ }], ctorParameters: function () { return [{ type: i1.DelonLocaleService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { data: [{
70
+ type: Input
71
+ }], count: [{
72
+ type: Input
73
+ }], loading: [{
74
+ type: Input
75
+ }], popoverVisible: [{
76
+ type: Input
77
+ }], btnClass: [{
78
+ type: Input
79
+ }], btnIconClass: [{
80
+ type: Input
81
+ }], centered: [{
82
+ type: Input
83
+ }], select: [{
84
+ type: Output
85
+ }], clear: [{
86
+ type: Output
87
+ }], popoverVisibleChange: [{
88
+ type: Output
89
+ }] } });
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWNlLWljb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWJjL25vdGljZS1pY29uL25vdGljZS1pY29uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FiYy9ub3RpY2UtaWNvbi9ub3RpY2UtaWNvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFJTCxNQUFNLEVBQ04saUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFBZ0IsWUFBWSxFQUFFLFdBQVcsRUFBZSxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7Ozs7O0FBSzdGLE1BU2EsbUJBQW1CO0lBb0I5QixJQUFJLFVBQVU7UUFDWixPQUFPLDhCQUE4QixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLHdCQUF3QixDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztJQUN4RixDQUFDO0lBRUQsWUFBb0IsSUFBd0IsRUFBVSxHQUFzQjtRQUF4RCxTQUFJLEdBQUosSUFBSSxDQUFvQjtRQUFVLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBakI1RSxXQUFNLEdBQWUsRUFBRSxDQUFDO1FBRWYsU0FBSSxHQUFpQixFQUFFLENBQUM7UUFFUixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLG1CQUFjLEdBQUcsS0FBSyxDQUFDO1FBR3ZCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdkIsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFvQixDQUFDO1FBQzlDLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ25DLHlCQUFvQixHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7SUFNUyxDQUFDO0lBRWhGLGVBQWUsQ0FBQyxNQUFlO1FBQzdCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELFFBQVEsQ0FBQyxDQUFtQjtRQUMxQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0QixDQUFDO0lBRUQsT0FBTyxDQUFDLEtBQWE7UUFDbkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDM0MsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUM5QyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUMzQixDQUFDOzhHQW5EVSxtQkFBbUI7a0dBQW5CLG1CQUFtQixxYUM3QmhDLG9vQ0FrQ0E7O0FESzBCO0lBQWQsV0FBVyxFQUFFO2tEQUFnQjtBQUNkO0lBQWYsWUFBWSxFQUFFO29EQUFpQjtBQUNoQjtJQUFmLFlBQVksRUFBRTsyREFBd0I7QUFHdkI7SUFBZixZQUFZLEVBQUU7cURBQWtCO1NBZi9CLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQVQvQixTQUFTOytCQUNFLGFBQWEsWUFDYixZQUFZLFFBRWhCLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxFQUFFLHVCQUN2QixLQUFLLG1CQUNULHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUk7eUlBVzVCLElBQUk7c0JBQVosS0FBSztnQkFDa0IsS0FBSztzQkFBNUIsS0FBSztnQkFDbUIsT0FBTztzQkFBL0IsS0FBSztnQkFDbUIsY0FBYztzQkFBdEMsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ21CLFFBQVE7c0JBQWhDLEtBQUs7Z0JBQ2EsTUFBTTtzQkFBeEIsTUFBTTtnQkFDWSxLQUFLO3NCQUF2QixNQUFNO2dCQUNZLG9CQUFvQjtzQkFBdEMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IERlbG9uTG9jYWxlU2VydmljZSwgTG9jYWxlRGF0YSB9IGZyb20gJ0BkZWxvbi90aGVtZSc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIElucHV0Qm9vbGVhbiwgSW5wdXROdW1iZXIsIE51bWJlcklucHV0IH0gZnJvbSAnQGRlbG9uL3V0aWwvZGVjb3JhdG9yJztcbmltcG9ydCB0eXBlIHsgTmdDbGFzc1R5cGUgfSBmcm9tICduZy16b3Jyby1hbnRkL2NvcmUvdHlwZXMnO1xuXG5pbXBvcnQgeyBOb3RpY2VJY29uU2VsZWN0LCBOb3RpY2VJdGVtIH0gZnJvbSAnLi9ub3RpY2UtaWNvbi50eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25vdGljZS1pY29uJyxcbiAgZXhwb3J0QXM6ICdub3RpY2VJY29uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL25vdGljZS1pY29uLmNvbXBvbmVudC5odG1sJyxcbiAgaG9zdDogeyAnW2NsYXNzLm5vdGljZS1pY29uX19idG5dJzogJ3RydWUnIH0sXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBOb3RpY2VJY29uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9jb3VudDogTnVtYmVySW5wdXQ7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9sb2FkaW5nOiBCb29sZWFuSW5wdXQ7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9wb3BvdmVyVmlzaWJsZTogQm9vbGVhbklucHV0O1xuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfY2VudGVyZWQ6IEJvb2xlYW5JbnB1dDtcblxuICBwcml2YXRlIGkxOG4kITogU3Vic2NyaXB0aW9uO1xuICBsb2NhbGU6IExvY2FsZURhdGEgPSB7fTtcblxuICBASW5wdXQoKSBkYXRhOiBOb3RpY2VJdGVtW10gPSBbXTtcbiAgQElucHV0KCkgQElucHV0TnVtYmVyKCkgY291bnQ/OiBudW1iZXI7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBsb2FkaW5nID0gZmFsc2U7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBwb3BvdmVyVmlzaWJsZSA9IGZhbHNlO1xuICBASW5wdXQoKSBidG5DbGFzcz86IE5nQ2xhc3NUeXBlO1xuICBASW5wdXQoKSBidG5JY29uQ2xhc3M/OiBOZ0NsYXNzVHlwZTtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIGNlbnRlcmVkID0gZmFsc2U7XG4gIEBPdXRwdXQoKSByZWFkb25seSBzZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPE5vdGljZUljb25TZWxlY3Q+KCk7XG4gIEBPdXRwdXQoKSByZWFkb25seSBjbGVhciA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgcmVhZG9ubHkgcG9wb3ZlclZpc2libGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgZ2V0IG92ZXJsYXlDbHMoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYGhlYWRlci1kcm9wZG93biBub3RpY2UtaWNvbiR7IXRoaXMuY2VudGVyZWQgPyAnIG5vdGljZS1pY29uX190YWItbGVmdCcgOiAnJ31gO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBpMThuOiBEZWxvbkxvY2FsZVNlcnZpY2UsIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBvblZpc2libGVDaGFuZ2UocmVzdWx0OiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5wb3BvdmVyVmlzaWJsZUNoYW5nZS5lbWl0KHJlc3VsdCk7XG4gIH1cblxuICBvblNlbGVjdChpOiBOb3RpY2VJY29uU2VsZWN0KTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3QuZW1pdChpKTtcbiAgfVxuXG4gIG9uQ2xlYXIodGl0bGU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuY2xlYXIuZW1pdCh0aXRsZSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmkxOG4kID0gdGhpcy5pMThuLmNoYW5nZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5sb2NhbGUgPSB0aGlzLmkxOG4uZ2V0RGF0YSgnbm90aWNlSWNvbicpO1xuICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuaTE4biQudW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIiwiPG5nLXRlbXBsYXRlICNiYWRnZVRwbD5cbiAgPG56LWJhZGdlIFtuekNvdW50XT1cImNvdW50XCIgW25nQ2xhc3NdPVwiYnRuQ2xhc3MhXCIgW256U3R5bGVdPVwieyAnYm94LXNoYWRvdyc6ICdub25lJyB9XCI+XG4gICAgPGkgbnotaWNvbiBuelR5cGU9XCJiZWxsXCIgW25nQ2xhc3NdPVwiYnRuSWNvbkNsYXNzIVwiPjwvaT5cbiAgPC9uei1iYWRnZT5cbjwvbmctdGVtcGxhdGU+XG48ZGl2ICpuZ0lmPVwiZGF0YSEubGVuZ3RoID09PSAwXCI+XG4gIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJiYWRnZVRwbFwiPjwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbjxkaXZcbiAgKm5nSWY9XCJkYXRhIS5sZW5ndGggPiAwXCJcbiAgbnotZHJvcGRvd25cbiAgW256VmlzaWJsZV09XCJwb3BvdmVyVmlzaWJsZVwiXG4gIChuelZpc2libGVDaGFuZ2UpPVwib25WaXNpYmxlQ2hhbmdlKCRldmVudClcIlxuICBuelRyaWdnZXI9XCJjbGlja1wiXG4gIG56UGxhY2VtZW50PVwiYm90dG9tUmlnaHRcIlxuICBbbnpPdmVybGF5Q2xhc3NOYW1lXT1cIm92ZXJsYXlDbHNcIlxuICBbbnpEcm9wZG93bk1lbnVdPVwibm90aWNlTWVudVwiXG4+XG4gIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJiYWRnZVRwbFwiPjwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbjxuei1kcm9wZG93bi1tZW51ICNub3RpY2VNZW51PVwibnpEcm9wZG93bk1lbnVcIj5cbiAgPG56LXNwaW4gW256U3Bpbm5pbmddPVwibG9hZGluZ1wiIFtuekRlbGF5XT1cIjBcIj5cbiAgICA8bnotdGFic2V0IG56U2VsZWN0ZWRJbmRleD1cIjBcIiBbbnpDZW50ZXJlZF09XCJjZW50ZXJlZFwiPlxuICAgICAgPG56LXRhYiAqbmdGb3I9XCJsZXQgaSBvZiBkYXRhXCIgW256VGl0bGVdPVwiaS50aXRsZVwiPlxuICAgICAgICA8bm90aWNlLWljb24tdGFiXG4gICAgICAgICAgW2xvY2FsZV09XCJsb2NhbGVcIlxuICAgICAgICAgIFtkYXRhXT1cImlcIlxuICAgICAgICAgIChzZWxlY3QpPVwib25TZWxlY3QoJGV2ZW50KVwiXG4gICAgICAgICAgKGNsZWFyKT1cIm9uQ2xlYXIoJGV2ZW50KVwiXG4gICAgICAgID48L25vdGljZS1pY29uLXRhYj5cbiAgICAgIDwvbnotdGFiPlxuICAgIDwvbnotdGFic2V0PlxuICA8L256LXNwaW4+XG48L256LWRyb3Bkb3duLW1lbnU+XG4iXX0=