@delon/abc 12.4.1 → 13.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 (758) hide show
  1. package/abc.d.ts +1 -0
  2. package/auto-focus/{autoFocus.d.ts → auto-focus.d.ts} +1 -0
  3. package/auto-focus/auto-focus.directive.d.ts +7 -2
  4. package/auto-focus/auto-focus.module.d.ts +5 -0
  5. package/auto-focus/package.json +6 -7
  6. package/avatar-list/avatar-list-item.component.d.ts +7 -4
  7. package/avatar-list/avatar-list.component.d.ts +4 -1
  8. package/avatar-list/avatar-list.d.ts +5 -0
  9. package/avatar-list/avatar-list.module.d.ts +9 -0
  10. package/avatar-list/package.json +6 -7
  11. package/avatar-list/style/index.less +6 -0
  12. package/count-down/count-down.component.d.ts +4 -1
  13. package/count-down/count-down.d.ts +1 -0
  14. package/count-down/count-down.module.d.ts +7 -0
  15. package/count-down/package.json +5 -6
  16. package/date-picker/date-picker.d.ts +5 -0
  17. package/date-picker/date-picker.module.d.ts +9 -0
  18. package/date-picker/package.json +6 -7
  19. package/date-picker/public_api.d.ts +1 -0
  20. package/date-picker/range-shortcut.component.d.ts +3 -0
  21. package/date-picker/range.directive.d.ts +3 -0
  22. package/down-file/down-file.d.ts +5 -0
  23. package/down-file/down-file.directive.d.ts +5 -2
  24. package/down-file/down-file.module.d.ts +7 -0
  25. package/down-file/package.json +6 -7
  26. package/ellipsis/ellipsis.component.d.ts +5 -2
  27. package/ellipsis/ellipsis.d.ts +1 -0
  28. package/ellipsis/ellipsis.module.d.ts +8 -0
  29. package/ellipsis/package.json +5 -6
  30. package/ellipsis/style/index.less +4 -0
  31. package/error-collect/error-collect.component.d.ts +3 -0
  32. package/error-collect/error-collect.d.ts +5 -0
  33. package/error-collect/error-collect.module.d.ts +7 -0
  34. package/error-collect/package.json +6 -7
  35. package/error-collect/style/index.less +1 -0
  36. package/{esm2015/abc.js → esm2020/abc.mjs} +0 -0
  37. package/esm2020/auto-focus/auto-focus.directive.mjs +48 -0
  38. package/esm2020/auto-focus/auto-focus.mjs +5 -0
  39. package/esm2020/auto-focus/auto-focus.module.mjs +17 -0
  40. package/{esm2015/auto-focus/index.js → esm2020/auto-focus/index.mjs} +0 -0
  41. package/esm2020/avatar-list/avatar-list-item.component.mjs +26 -0
  42. package/esm2020/avatar-list/avatar-list.component.mjs +89 -0
  43. package/esm2020/avatar-list/avatar-list.mjs +5 -0
  44. package/esm2020/avatar-list/avatar-list.module.mjs +22 -0
  45. package/{esm2015/avatar-list/public_api.js → esm2020/avatar-list/public_api.mjs} +0 -0
  46. package/esm2020/count-down/count-down.component.mjs +45 -0
  47. package/{esm2015/count-down/count-down.js → esm2020/count-down/count-down.mjs} +0 -0
  48. package/esm2020/count-down/count-down.module.mjs +20 -0
  49. package/{esm2015/count-down/public_api.js → esm2020/count-down/public_api.mjs} +0 -0
  50. package/esm2020/date-picker/date-picker.mjs +5 -0
  51. package/esm2020/date-picker/date-picker.module.mjs +22 -0
  52. package/{esm2015/date-picker/public_api.js → esm2020/date-picker/public_api.mjs} +2 -1
  53. package/esm2020/date-picker/range-shortcut.component.mjs +40 -0
  54. package/esm2020/date-picker/range.directive.mjs +174 -0
  55. package/esm2020/down-file/down-file.directive.mjs +114 -0
  56. package/esm2020/down-file/down-file.mjs +5 -0
  57. package/esm2020/down-file/down-file.module.mjs +20 -0
  58. package/{esm2015/down-file/public_api.js → esm2020/down-file/public_api.mjs} +0 -0
  59. package/esm2020/ellipsis/ellipsis.component.mjs +229 -0
  60. package/{esm2015/ellipsis/ellipsis.js → esm2020/ellipsis/ellipsis.mjs} +0 -0
  61. package/esm2020/ellipsis/ellipsis.module.mjs +21 -0
  62. package/{esm2015/ellipsis/public_api.js → esm2020/ellipsis/public_api.mjs} +0 -0
  63. package/esm2020/error-collect/error-collect.component.mjs +118 -0
  64. package/esm2020/error-collect/error-collect.mjs +5 -0
  65. package/esm2020/error-collect/error-collect.module.mjs +20 -0
  66. package/{esm2015/error-collect/public_api.js → esm2020/error-collect/public_api.mjs} +0 -0
  67. package/esm2020/exception/exception.component.mjs +105 -0
  68. package/{esm2015/exception/exception.js → esm2020/exception/exception.mjs} +0 -0
  69. package/esm2020/exception/exception.module.mjs +23 -0
  70. package/{esm2015/exception/public_api.js → esm2020/exception/public_api.mjs} +0 -0
  71. package/esm2020/footer-toolbar/footer-toolbar.component.mjs +44 -0
  72. package/esm2020/footer-toolbar/footer-toolbar.mjs +5 -0
  73. package/esm2020/footer-toolbar/footer-toolbar.module.mjs +21 -0
  74. package/{esm2015/footer-toolbar/public_api.js → esm2020/footer-toolbar/public_api.mjs} +0 -0
  75. package/esm2020/full-content/full-content-toggle.directive.mjs +24 -0
  76. package/esm2020/full-content/full-content.component.mjs +138 -0
  77. package/esm2020/full-content/full-content.mjs +5 -0
  78. package/esm2020/full-content/full-content.module.mjs +20 -0
  79. package/esm2020/full-content/full-content.service.mjs +23 -0
  80. package/{esm2015/full-content/public_api.js → esm2020/full-content/public_api.mjs} +0 -0
  81. package/esm2020/global-footer/global-footer-item.component.mjs +30 -0
  82. package/esm2020/global-footer/global-footer.component.mjs +73 -0
  83. package/esm2020/global-footer/global-footer.mjs +5 -0
  84. package/esm2020/global-footer/global-footer.module.mjs +21 -0
  85. package/{esm2015/global-footer/global-footer.types.js → esm2020/global-footer/global-footer.types.mjs} +0 -0
  86. package/{esm2015/global-footer/public_api.js → esm2020/global-footer/public_api.mjs} +0 -0
  87. package/esm2020/image/image.directive.mjs +146 -0
  88. package/{esm2015/image/image.js → esm2020/image/image.mjs} +0 -0
  89. package/esm2020/image/image.module.mjs +20 -0
  90. package/{esm2015/image/public_api.js → esm2020/image/public_api.mjs} +0 -0
  91. package/{esm2015/let/index.js → esm2020/let/index.mjs} +0 -0
  92. package/esm2020/let/let.directive.mjs +36 -0
  93. package/{esm2015/let/let.js → esm2020/let/let.mjs} +0 -0
  94. package/esm2020/let/let.module.mjs +17 -0
  95. package/esm2020/loading/loading.component.mjs +26 -0
  96. package/{esm2015/loading/loading.js → esm2020/loading/loading.mjs} +0 -0
  97. package/esm2020/loading/loading.module.mjs +24 -0
  98. package/esm2020/loading/loading.service.mjs +88 -0
  99. package/{esm2015/loading/loading.types.js → esm2020/loading/loading.types.mjs} +0 -0
  100. package/{esm2015/loading/public_api.js → esm2020/loading/public_api.mjs} +0 -0
  101. package/{esm2015/lodop/lodop.js → esm2020/lodop/lodop.mjs} +0 -0
  102. package/esm2020/lodop/lodop.module.mjs +12 -0
  103. package/esm2020/lodop/lodop.service.mjs +222 -0
  104. package/esm2020/lodop/lodop.types.mjs +2 -0
  105. package/{esm2015/lodop/public_api.js → esm2020/lodop/public_api.mjs} +0 -0
  106. package/esm2020/media/media.component.mjs +106 -0
  107. package/{esm2015/media/media.js → esm2020/media/media.mjs} +0 -0
  108. package/esm2020/media/media.module.mjs +19 -0
  109. package/esm2020/media/media.service.mjs +46 -0
  110. package/{esm2015/media/plyr.types.js → esm2020/media/plyr.types.mjs} +0 -0
  111. package/{esm2015/media/public_api.js → esm2020/media/public_api.mjs} +0 -0
  112. package/esm2020/notice-icon/notice-icon-tab.component.mjs +34 -0
  113. package/esm2020/notice-icon/notice-icon.component.mjs +80 -0
  114. package/esm2020/notice-icon/notice-icon.mjs +5 -0
  115. package/esm2020/notice-icon/notice-icon.module.mjs +60 -0
  116. package/{esm2015/notice-icon/notice-icon.types.js → esm2020/notice-icon/notice-icon.types.mjs} +0 -0
  117. package/{esm2015/notice-icon/public_api.js → esm2020/notice-icon/public_api.mjs} +0 -0
  118. package/esm2020/onboarding/onboarding.component.mjs +134 -0
  119. package/{esm2015/onboarding/onboarding.js → esm2020/onboarding/onboarding.mjs} +0 -0
  120. package/esm2020/onboarding/onboarding.module.mjs +25 -0
  121. package/esm2020/onboarding/onboarding.service.mjs +185 -0
  122. package/{esm2015/onboarding/onboarding.types.js → esm2020/onboarding/onboarding.types.mjs} +0 -0
  123. package/{esm2015/onboarding/public_api.js → esm2020/onboarding/public_api.mjs} +0 -0
  124. package/esm2020/page-header/page-header.component.mjs +247 -0
  125. package/esm2020/page-header/page-header.mjs +5 -0
  126. package/esm2020/page-header/page-header.module.mjs +24 -0
  127. package/{esm2015/page-header/public_api.js → esm2020/page-header/public_api.mjs} +0 -0
  128. package/esm2020/pdf/pdf.component.mjs +460 -0
  129. package/{esm2015/pdf/pdf.config.js → esm2020/pdf/pdf.config.mjs} +2 -2
  130. package/{esm2015/pdf/pdf.js → esm2020/pdf/pdf.mjs} +0 -0
  131. package/esm2020/pdf/pdf.module.mjs +20 -0
  132. package/{esm2015/pdf/pdf.types.js → esm2020/pdf/pdf.types.mjs} +0 -0
  133. package/{esm2015/pdf/public_api.js → esm2020/pdf/public_api.mjs} +0 -0
  134. package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
  135. package/{esm2015/qr/public_api.js → esm2020/qr/public_api.mjs} +0 -0
  136. package/esm2020/qr/qr.component.mjs +136 -0
  137. package/{esm2015/qr/qr.config.js → esm2020/qr/qr.config.mjs} +2 -2
  138. package/{esm2015/qr/qr.js → esm2020/qr/qr.mjs} +0 -0
  139. package/esm2020/qr/qr.module.mjs +19 -0
  140. package/{esm2015/qr/qr.types.js → esm2020/qr/qr.types.mjs} +0 -0
  141. package/{esm2015/quick-menu/public_api.js → esm2020/quick-menu/public_api.mjs} +0 -0
  142. package/esm2020/quick-menu/quick-menu.component.mjs +89 -0
  143. package/esm2020/quick-menu/quick-menu.mjs +5 -0
  144. package/esm2020/quick-menu/quick-menu.module.mjs +21 -0
  145. package/{esm2015/result/public_api.js → esm2020/result/public_api.mjs} +0 -0
  146. package/esm2020/result/result.component.mjs +61 -0
  147. package/{esm2015/result/result.js → esm2020/result/result.mjs} +0 -0
  148. package/esm2020/result/result.module.mjs +21 -0
  149. package/{esm2015/reuse-tab/lifecycle_hooks.js → esm2020/reuse-tab/lifecycle_hooks.mjs} +0 -0
  150. package/{esm2015/reuse-tab/public_api.js → esm2020/reuse-tab/public_api.mjs} +0 -0
  151. package/esm2020/reuse-tab/reuse-tab-context-menu.component.mjs +76 -0
  152. package/esm2020/reuse-tab/reuse-tab-context.component.mjs +33 -0
  153. package/esm2020/reuse-tab/reuse-tab-context.directive.mjs +35 -0
  154. package/esm2020/reuse-tab/reuse-tab-context.service.mjs +55 -0
  155. package/esm2020/reuse-tab/reuse-tab.component.mjs +318 -0
  156. package/{esm2015/reuse-tab/reuse-tab.interfaces.js → esm2020/reuse-tab/reuse-tab.interfaces.mjs} +0 -0
  157. package/esm2020/reuse-tab/reuse-tab.mjs +5 -0
  158. package/esm2020/reuse-tab/reuse-tab.module.mjs +29 -0
  159. package/esm2020/reuse-tab/reuse-tab.service.mjs +533 -0
  160. package/{esm2015/reuse-tab/reuse-tab.strategy.js → esm2020/reuse-tab/reuse-tab.strategy.mjs} +0 -0
  161. package/esm2020/se/public_api.mjs +5 -0
  162. package/esm2020/se/se-container.component.mjs +173 -0
  163. package/esm2020/se/se.component.mjs +233 -0
  164. package/esm2020/se/se.mjs +5 -0
  165. package/esm2020/se/se.module.mjs +23 -0
  166. package/{esm2015/se/se.types.js → esm2020/se/se.types.mjs} +0 -0
  167. package/{esm2015/sg/public_api.js → esm2020/sg/public_api.mjs} +0 -0
  168. package/esm2020/sg/sg-container.component.mjs +52 -0
  169. package/esm2020/sg/sg.component.mjs +67 -0
  170. package/esm2020/sg/sg.mjs +5 -0
  171. package/esm2020/sg/sg.module.mjs +20 -0
  172. package/{esm2015/st/public_api.js → esm2020/st/public_api.mjs} +0 -0
  173. package/esm2020/st/st-column-source.mjs +470 -0
  174. package/esm2020/st/st-data-source.mjs +448 -0
  175. package/esm2020/st/st-export.mjs +89 -0
  176. package/esm2020/st/st-filter.component.mjs +262 -0
  177. package/esm2020/st/st-row.directive.mjs +45 -0
  178. package/esm2020/st/st-widget-host.directive.mjs +31 -0
  179. package/esm2020/st/st-widget.mjs +26 -0
  180. package/esm2020/st/st.component.mjs +969 -0
  181. package/{esm2015/st/st.config.js → esm2020/st/st.config.mjs} +0 -0
  182. package/esm2020/st/st.interfaces.mjs +2 -0
  183. package/esm2020/st/st.mjs +5 -0
  184. package/esm2020/st/st.module.mjs +98 -0
  185. package/{esm2015/st/st.types.js → esm2020/st/st.types.mjs} +0 -0
  186. package/esm2020/sv/public_api.mjs +5 -0
  187. package/esm2020/sv/sv-container.component.mjs +125 -0
  188. package/esm2020/sv/sv-value.component.mjs +44 -0
  189. package/esm2020/sv/sv.component.mjs +113 -0
  190. package/esm2020/sv/sv.mjs +5 -0
  191. package/esm2020/sv/sv.module.mjs +25 -0
  192. package/{esm2015/tag-select/public_api.js → esm2020/tag-select/public_api.mjs} +0 -0
  193. package/esm2020/tag-select/tag-select.component.mjs +64 -0
  194. package/esm2020/tag-select/tag-select.mjs +5 -0
  195. package/esm2020/tag-select/tag-select.module.mjs +21 -0
  196. package/{esm2015/xlsx/public_api.js → esm2020/xlsx/public_api.mjs} +0 -0
  197. package/esm2020/xlsx/xlsx.directive.mjs +27 -0
  198. package/{esm2015/xlsx/xlsx.js → esm2020/xlsx/xlsx.mjs} +0 -0
  199. package/esm2020/xlsx/xlsx.module.mjs +19 -0
  200. package/esm2020/xlsx/xlsx.service.mjs +128 -0
  201. package/{esm2015/xlsx/xlsx.types.js → esm2020/xlsx/xlsx.types.mjs} +0 -0
  202. package/{esm2015/zip/public_api.js → esm2020/zip/public_api.mjs} +0 -0
  203. package/{esm2015/zip/zip.js → esm2020/zip/zip.mjs} +0 -0
  204. package/esm2020/zip/zip.module.mjs +15 -0
  205. package/esm2020/zip/zip.service.mjs +114 -0
  206. package/{esm2015/zip/zip.types.js → esm2020/zip/zip.types.mjs} +0 -0
  207. package/exception/exception.component.d.ts +3 -0
  208. package/exception/exception.d.ts +1 -0
  209. package/exception/exception.module.d.ts +10 -0
  210. package/exception/package.json +5 -6
  211. package/exception/style/index.less +9 -0
  212. package/fesm2015/{abc.js → abc.mjs} +1 -1
  213. package/fesm2015/abc.mjs.map +1 -0
  214. package/fesm2015/auto-focus.mjs +69 -0
  215. package/fesm2015/auto-focus.mjs.map +1 -0
  216. package/fesm2015/avatar-list.mjs +140 -0
  217. package/fesm2015/avatar-list.mjs.map +1 -0
  218. package/fesm2015/count-down.mjs +69 -0
  219. package/fesm2015/count-down.mjs.map +1 -0
  220. package/fesm2015/{datePicker.js → date-picker.mjs} +63 -40
  221. package/fesm2015/date-picker.mjs.map +1 -0
  222. package/fesm2015/down-file.mjs +141 -0
  223. package/fesm2015/down-file.mjs.map +1 -0
  224. package/fesm2015/ellipsis.mjs +255 -0
  225. package/fesm2015/ellipsis.mjs.map +1 -0
  226. package/fesm2015/error-collect.mjs +144 -0
  227. package/fesm2015/error-collect.mjs.map +1 -0
  228. package/fesm2015/exception.mjs +135 -0
  229. package/fesm2015/exception.mjs.map +1 -0
  230. package/fesm2015/footer-toolbar.mjs +70 -0
  231. package/fesm2015/footer-toolbar.mjs.map +1 -0
  232. package/fesm2015/full-content.mjs +202 -0
  233. package/fesm2015/full-content.mjs.map +1 -0
  234. package/fesm2015/global-footer.mjs +127 -0
  235. package/fesm2015/global-footer.mjs.map +1 -0
  236. package/fesm2015/image.mjs +165 -0
  237. package/fesm2015/image.mjs.map +1 -0
  238. package/fesm2015/let.mjs +59 -0
  239. package/fesm2015/let.mjs.map +1 -0
  240. package/fesm2015/loading.mjs +140 -0
  241. package/fesm2015/loading.mjs.map +1 -0
  242. package/fesm2015/{lodop.js → lodop.mjs} +15 -15
  243. package/fesm2015/lodop.mjs.map +1 -0
  244. package/fesm2015/media.mjs +170 -0
  245. package/fesm2015/media.mjs.map +1 -0
  246. package/fesm2015/notice-icon.mjs +173 -0
  247. package/fesm2015/notice-icon.mjs.map +1 -0
  248. package/fesm2015/onboarding.mjs +335 -0
  249. package/fesm2015/onboarding.mjs.map +1 -0
  250. package/fesm2015/page-header.mjs +277 -0
  251. package/fesm2015/page-header.mjs.map +1 -0
  252. package/fesm2015/{pdf.js → pdf.mjs} +81 -54
  253. package/fesm2015/pdf.mjs.map +1 -0
  254. package/fesm2015/qr.mjs +171 -0
  255. package/fesm2015/qr.mjs.map +1 -0
  256. package/fesm2015/quick-menu.mjs +114 -0
  257. package/fesm2015/quick-menu.mjs.map +1 -0
  258. package/fesm2015/result.mjs +89 -0
  259. package/fesm2015/result.mjs.map +1 -0
  260. package/fesm2015/{reuseTab.js → reuse-tab.mjs} +183 -160
  261. package/fesm2015/reuse-tab.mjs.map +1 -0
  262. package/fesm2015/se.mjs +443 -0
  263. package/fesm2015/se.mjs.map +1 -0
  264. package/fesm2015/sg.mjs +139 -0
  265. package/fesm2015/sg.mjs.map +1 -0
  266. package/fesm2015/{table.js → st.mjs} +610 -492
  267. package/fesm2015/st.mjs.map +1 -0
  268. package/fesm2015/sv.mjs +302 -0
  269. package/fesm2015/sv.mjs.map +1 -0
  270. package/fesm2015/tag-select.mjs +92 -0
  271. package/fesm2015/tag-select.mjs.map +1 -0
  272. package/fesm2015/{xlsx.js → xlsx.mjs} +42 -42
  273. package/fesm2015/xlsx.mjs.map +1 -0
  274. package/fesm2015/{zip.js → zip.mjs} +35 -32
  275. package/fesm2015/zip.mjs.map +1 -0
  276. package/fesm2020/abc.mjs +7 -0
  277. package/fesm2020/abc.mjs.map +1 -0
  278. package/fesm2020/auto-focus.mjs +69 -0
  279. package/fesm2020/auto-focus.mjs.map +1 -0
  280. package/fesm2020/avatar-list.mjs +137 -0
  281. package/fesm2020/avatar-list.mjs.map +1 -0
  282. package/fesm2020/count-down.mjs +69 -0
  283. package/fesm2020/count-down.mjs.map +1 -0
  284. package/fesm2020/date-picker.mjs +236 -0
  285. package/fesm2020/date-picker.mjs.map +1 -0
  286. package/fesm2020/down-file.mjs +138 -0
  287. package/fesm2020/down-file.mjs.map +1 -0
  288. package/fesm2020/ellipsis.mjs +253 -0
  289. package/fesm2020/ellipsis.mjs.map +1 -0
  290. package/fesm2020/error-collect.mjs +141 -0
  291. package/fesm2020/error-collect.mjs.map +1 -0
  292. package/fesm2020/exception.mjs +132 -0
  293. package/fesm2020/exception.mjs.map +1 -0
  294. package/fesm2020/footer-toolbar.mjs +68 -0
  295. package/fesm2020/footer-toolbar.mjs.map +1 -0
  296. package/fesm2020/full-content.mjs +199 -0
  297. package/fesm2020/full-content.mjs.map +1 -0
  298. package/fesm2020/global-footer.mjs +124 -0
  299. package/fesm2020/global-footer.mjs.map +1 -0
  300. package/fesm2020/image.mjs +170 -0
  301. package/fesm2020/image.mjs.map +1 -0
  302. package/fesm2020/let.mjs +57 -0
  303. package/fesm2020/let.mjs.map +1 -0
  304. package/fesm2020/loading.mjs +138 -0
  305. package/fesm2020/loading.mjs.map +1 -0
  306. package/fesm2020/lodop.mjs +239 -0
  307. package/fesm2020/lodop.mjs.map +1 -0
  308. package/fesm2020/media.mjs +172 -0
  309. package/fesm2020/media.mjs.map +1 -0
  310. package/fesm2020/notice-icon.mjs +173 -0
  311. package/fesm2020/notice-icon.mjs.map +1 -0
  312. package/fesm2020/onboarding.mjs +343 -0
  313. package/fesm2020/onboarding.mjs.map +1 -0
  314. package/fesm2020/page-header.mjs +274 -0
  315. package/fesm2020/page-header.mjs.map +1 -0
  316. package/fesm2020/pdf.mjs +506 -0
  317. package/fesm2020/pdf.mjs.map +1 -0
  318. package/fesm2020/qr.mjs +171 -0
  319. package/fesm2020/qr.mjs.map +1 -0
  320. package/fesm2020/quick-menu.mjs +114 -0
  321. package/fesm2020/quick-menu.mjs.map +1 -0
  322. package/fesm2020/result.mjs +86 -0
  323. package/fesm2020/result.mjs.map +1 -0
  324. package/fesm2020/reuse-tab.mjs +1106 -0
  325. package/fesm2020/reuse-tab.mjs.map +1 -0
  326. package/fesm2020/se.mjs +436 -0
  327. package/fesm2020/se.mjs.map +1 -0
  328. package/fesm2020/sg.mjs +137 -0
  329. package/fesm2020/sg.mjs.map +1 -0
  330. package/fesm2020/st.mjs +2469 -0
  331. package/fesm2020/st.mjs.map +1 -0
  332. package/fesm2020/sv.mjs +298 -0
  333. package/fesm2020/sv.mjs.map +1 -0
  334. package/fesm2020/tag-select.mjs +89 -0
  335. package/fesm2020/tag-select.mjs.map +1 -0
  336. package/fesm2020/xlsx.mjs +175 -0
  337. package/fesm2020/xlsx.mjs.map +1 -0
  338. package/fesm2020/zip.mjs +134 -0
  339. package/fesm2020/zip.mjs.map +1 -0
  340. package/footer-toolbar/footer-toolbar.component.d.ts +4 -1
  341. package/footer-toolbar/footer-toolbar.d.ts +5 -0
  342. package/footer-toolbar/footer-toolbar.module.d.ts +8 -0
  343. package/footer-toolbar/package.json +6 -7
  344. package/footer-toolbar/style/index.less +1 -0
  345. package/full-content/full-content-toggle.directive.d.ts +3 -0
  346. package/full-content/full-content.component.d.ts +6 -3
  347. package/full-content/full-content.d.ts +5 -0
  348. package/full-content/full-content.module.d.ts +7 -0
  349. package/full-content/full-content.service.d.ts +3 -0
  350. package/full-content/package.json +6 -7
  351. package/full-content/style/index.less +1 -0
  352. package/global-footer/global-footer-item.component.d.ts +5 -2
  353. package/global-footer/global-footer.component.d.ts +3 -0
  354. package/global-footer/global-footer.d.ts +5 -0
  355. package/global-footer/global-footer.module.d.ts +8 -0
  356. package/global-footer/package.json +6 -7
  357. package/global-footer/style/index.less +5 -0
  358. package/image/image.d.ts +1 -0
  359. package/image/image.directive.d.ts +4 -1
  360. package/image/image.module.d.ts +7 -0
  361. package/image/package.json +5 -6
  362. package/let/let.d.ts +1 -0
  363. package/let/let.directive.d.ts +3 -0
  364. package/let/let.module.d.ts +5 -0
  365. package/let/package.json +5 -6
  366. package/loading/loading.component.d.ts +3 -0
  367. package/loading/loading.d.ts +1 -0
  368. package/loading/loading.module.d.ts +10 -0
  369. package/loading/loading.service.d.ts +4 -1
  370. package/loading/package.json +5 -6
  371. package/loading/style/index.less +3 -0
  372. package/lodop/lodop.d.ts +1 -0
  373. package/lodop/lodop.module.d.ts +4 -0
  374. package/lodop/lodop.service.d.ts +3 -0
  375. package/lodop/lodop.types.d.ts +4 -0
  376. package/lodop/package.json +5 -6
  377. package/media/media.component.d.ts +4 -1
  378. package/media/media.d.ts +1 -0
  379. package/media/media.module.d.ts +6 -0
  380. package/media/media.service.d.ts +3 -0
  381. package/media/package.json +5 -6
  382. package/notice-icon/notice-icon-tab.component.d.ts +3 -0
  383. package/notice-icon/notice-icon.component.d.ts +4 -1
  384. package/notice-icon/notice-icon.d.ts +5 -0
  385. package/notice-icon/notice-icon.module.d.ts +16 -0
  386. package/notice-icon/package.json +6 -7
  387. package/notice-icon/style/index.less +17 -0
  388. package/onboarding/onboarding.component.d.ts +4 -1
  389. package/onboarding/onboarding.d.ts +1 -0
  390. package/onboarding/onboarding.module.d.ts +11 -0
  391. package/onboarding/onboarding.service.d.ts +3 -0
  392. package/onboarding/package.json +5 -6
  393. package/onboarding/schema.json +1 -1
  394. package/onboarding/style/index.less +6 -0
  395. package/package.json +274 -14
  396. package/page-header/package.json +6 -7
  397. package/page-header/page-header.component.d.ts +4 -1
  398. package/page-header/page-header.d.ts +5 -0
  399. package/page-header/page-header.module.d.ts +11 -0
  400. package/page-header/style/index.less +10 -0
  401. package/page-header/style/rtl.less +3 -0
  402. package/pdf/package.json +5 -6
  403. package/pdf/pdf.component.d.ts +5 -2
  404. package/pdf/pdf.d.ts +1 -0
  405. package/pdf/pdf.module.d.ts +7 -0
  406. package/qr/package.json +5 -6
  407. package/qr/qr.component.d.ts +13 -10
  408. package/qr/qr.d.ts +1 -0
  409. package/qr/qr.module.d.ts +6 -0
  410. package/quick-menu/package.json +6 -7
  411. package/quick-menu/quick-menu.component.d.ts +6 -3
  412. package/quick-menu/quick-menu.d.ts +5 -0
  413. package/quick-menu/quick-menu.module.d.ts +8 -0
  414. package/quick-menu/style/index.less +2 -0
  415. package/result/package.json +5 -6
  416. package/result/result.component.d.ts +6 -3
  417. package/result/result.d.ts +1 -0
  418. package/result/result.module.d.ts +8 -0
  419. package/result/style/index.less +7 -0
  420. package/reuse-tab/package.json +6 -7
  421. package/reuse-tab/reuse-tab-context-menu.component.d.ts +3 -0
  422. package/reuse-tab/reuse-tab-context.component.d.ts +4 -1
  423. package/reuse-tab/reuse-tab-context.directive.d.ts +3 -0
  424. package/reuse-tab/reuse-tab-context.service.d.ts +4 -1
  425. package/reuse-tab/reuse-tab.component.d.ts +13 -10
  426. package/reuse-tab/reuse-tab.d.ts +5 -0
  427. package/reuse-tab/reuse-tab.module.d.ts +15 -0
  428. package/reuse-tab/reuse-tab.service.d.ts +7 -4
  429. package/reuse-tab/style/index.less +4 -0
  430. package/se/package.json +6 -7
  431. package/se/public_api.d.ts +0 -1
  432. package/se/se-container.component.d.ts +18 -4
  433. package/se/se.component.d.ts +13 -8
  434. package/{footer-toolbar/footerToolbar.d.ts → se/se.d.ts} +1 -0
  435. package/se/se.module.d.ts +10 -0
  436. package/se/style/index.less +2 -0
  437. package/sg/package.json +6 -7
  438. package/sg/sg-container.component.d.ts +4 -1
  439. package/sg/sg.component.d.ts +4 -1
  440. package/{error-collect/errorCollect.d.ts → sg/sg.d.ts} +1 -0
  441. package/sg/sg.module.d.ts +7 -0
  442. package/st/package.json +6 -7
  443. package/st/st-column-source.d.ts +4 -1
  444. package/st/st-data-source.d.ts +3 -0
  445. package/st/st-export.d.ts +3 -0
  446. package/st/st-filter.component.d.ts +3 -0
  447. package/st/st-row.directive.d.ts +7 -2
  448. package/st/st-widget-host.directive.d.ts +5 -3
  449. package/st/st-widget.d.ts +3 -0
  450. package/st/st.component.d.ts +40 -12
  451. package/{down-file/downFile.d.ts → st/st.d.ts} +1 -0
  452. package/st/st.interfaces.d.ts +2 -2
  453. package/st/st.module.d.ts +27 -0
  454. package/st/style/index.less +8 -0
  455. package/sv/package.json +6 -7
  456. package/sv/public_api.d.ts +0 -1
  457. package/sv/style/index.less +8 -0
  458. package/sv/sv-container.component.d.ts +16 -3
  459. package/sv/sv-value.component.d.ts +3 -0
  460. package/sv/sv.component.d.ts +13 -10
  461. package/{avatar-list/avatarList.d.ts → sv/sv.d.ts} +1 -0
  462. package/sv/sv.module.d.ts +12 -0
  463. package/tag-select/package.json +6 -7
  464. package/tag-select/style/index.less +4 -0
  465. package/tag-select/style/rtl.less +3 -0
  466. package/tag-select/tag-select.component.d.ts +3 -0
  467. package/tag-select/tag-select.d.ts +5 -0
  468. package/tag-select/tag-select.module.d.ts +8 -0
  469. package/xlsx/package.json +5 -6
  470. package/xlsx/xlsx.d.ts +1 -0
  471. package/xlsx/xlsx.directive.d.ts +3 -0
  472. package/xlsx/xlsx.module.d.ts +6 -0
  473. package/xlsx/xlsx.service.d.ts +3 -0
  474. package/zip/package.json +5 -6
  475. package/zip/zip.d.ts +1 -0
  476. package/zip/zip.module.d.ts +5 -0
  477. package/zip/zip.service.d.ts +3 -0
  478. package/abc.metadata.json +0 -1
  479. package/auto-focus/autoFocus.metadata.json +0 -1
  480. package/avatar-list/avatarList.metadata.json +0 -1
  481. package/bundles/abc.umd.js +0 -19
  482. package/bundles/abc.umd.js.map +0 -1
  483. package/bundles/autoFocus.umd.js +0 -394
  484. package/bundles/autoFocus.umd.js.map +0 -1
  485. package/bundles/avatarList.umd.js +0 -465
  486. package/bundles/avatarList.umd.js.map +0 -1
  487. package/bundles/count-down.umd.js +0 -75
  488. package/bundles/count-down.umd.js.map +0 -1
  489. package/bundles/datePicker.umd.js +0 -552
  490. package/bundles/datePicker.umd.js.map +0 -1
  491. package/bundles/downFile.umd.js +0 -474
  492. package/bundles/downFile.umd.js.map +0 -1
  493. package/bundles/edit.umd.js +0 -776
  494. package/bundles/edit.umd.js.map +0 -1
  495. package/bundles/ellipsis.umd.js +0 -578
  496. package/bundles/ellipsis.umd.js.map +0 -1
  497. package/bundles/errorCollect.umd.js +0 -461
  498. package/bundles/errorCollect.umd.js.map +0 -1
  499. package/bundles/exception.umd.js +0 -150
  500. package/bundles/exception.umd.js.map +0 -1
  501. package/bundles/footerToolbar.umd.js +0 -401
  502. package/bundles/footerToolbar.umd.js.map +0 -1
  503. package/bundles/fullContent.umd.js +0 -550
  504. package/bundles/fullContent.umd.js.map +0 -1
  505. package/bundles/globalFooter.umd.js +0 -455
  506. package/bundles/globalFooter.umd.js.map +0 -1
  507. package/bundles/grid.umd.js +0 -470
  508. package/bundles/grid.umd.js.map +0 -1
  509. package/bundles/image.umd.js +0 -482
  510. package/bundles/image.umd.js.map +0 -1
  511. package/bundles/let.umd.js +0 -76
  512. package/bundles/let.umd.js.map +0 -1
  513. package/bundles/loading.umd.js +0 -181
  514. package/bundles/loading.umd.js.map +0 -1
  515. package/bundles/lodop.umd.js +0 -605
  516. package/bundles/lodop.umd.js.map +0 -1
  517. package/bundles/media.umd.js +0 -536
  518. package/bundles/media.umd.js.map +0 -1
  519. package/bundles/noticeIcon.umd.js +0 -468
  520. package/bundles/noticeIcon.umd.js.map +0 -1
  521. package/bundles/onboarding.umd.js +0 -370
  522. package/bundles/onboarding.umd.js.map +0 -1
  523. package/bundles/pageHeader.umd.js +0 -570
  524. package/bundles/pageHeader.umd.js.map +0 -1
  525. package/bundles/pdf.umd.js +0 -863
  526. package/bundles/pdf.umd.js.map +0 -1
  527. package/bundles/qr.umd.js +0 -491
  528. package/bundles/qr.umd.js.map +0 -1
  529. package/bundles/quickMenu.umd.js +0 -442
  530. package/bundles/quickMenu.umd.js.map +0 -1
  531. package/bundles/result.umd.js +0 -100
  532. package/bundles/result.umd.js.map +0 -1
  533. package/bundles/reuseTab.umd.js +0 -1522
  534. package/bundles/reuseTab.umd.js.map +0 -1
  535. package/bundles/table.umd.js +0 -2586
  536. package/bundles/table.umd.js.map +0 -1
  537. package/bundles/tagSelect.umd.js +0 -419
  538. package/bundles/tagSelect.umd.js.map +0 -1
  539. package/bundles/view.umd.js +0 -592
  540. package/bundles/view.umd.js.map +0 -1
  541. package/bundles/xlsx.umd.js +0 -529
  542. package/bundles/xlsx.umd.js.map +0 -1
  543. package/bundles/zip.umd.js +0 -482
  544. package/bundles/zip.umd.js.map +0 -1
  545. package/count-down/count-down.metadata.json +0 -1
  546. package/date-picker/datePicker.d.ts +0 -5
  547. package/date-picker/datePicker.metadata.json +0 -1
  548. package/down-file/downFile.metadata.json +0 -1
  549. package/ellipsis/ellipsis.metadata.json +0 -1
  550. package/error-collect/errorCollect.metadata.json +0 -1
  551. package/esm2015/auto-focus/auto-focus.directive.js +0 -42
  552. package/esm2015/auto-focus/auto-focus.module.js +0 -12
  553. package/esm2015/auto-focus/autoFocus.js +0 -5
  554. package/esm2015/avatar-list/avatar-list-item.component.js +0 -20
  555. package/esm2015/avatar-list/avatar-list.component.js +0 -89
  556. package/esm2015/avatar-list/avatar-list.module.js +0 -17
  557. package/esm2015/avatar-list/avatarList.js +0 -5
  558. package/esm2015/count-down/count-down.component.js +0 -36
  559. package/esm2015/count-down/count-down.module.js +0 -15
  560. package/esm2015/date-picker/date-picker.module.js +0 -17
  561. package/esm2015/date-picker/datePicker.js +0 -6
  562. package/esm2015/date-picker/range-shortcut.component.js +0 -26
  563. package/esm2015/date-picker/range.directive.js +0 -171
  564. package/esm2015/down-file/down-file.directive.js +0 -103
  565. package/esm2015/down-file/down-file.module.js +0 -15
  566. package/esm2015/down-file/downFile.js +0 -5
  567. package/esm2015/ellipsis/ellipsis.component.js +0 -224
  568. package/esm2015/ellipsis/ellipsis.module.js +0 -16
  569. package/esm2015/error-collect/error-collect.component.js +0 -112
  570. package/esm2015/error-collect/error-collect.module.js +0 -15
  571. package/esm2015/error-collect/errorCollect.js +0 -5
  572. package/esm2015/exception/exception.component.js +0 -103
  573. package/esm2015/exception/exception.module.js +0 -18
  574. package/esm2015/footer-toolbar/footer-toolbar.component.js +0 -46
  575. package/esm2015/footer-toolbar/footer-toolbar.module.js +0 -16
  576. package/esm2015/footer-toolbar/footerToolbar.js +0 -5
  577. package/esm2015/full-content/full-content-toggle.directive.js +0 -23
  578. package/esm2015/full-content/full-content.component.js +0 -135
  579. package/esm2015/full-content/full-content.module.js +0 -15
  580. package/esm2015/full-content/full-content.service.js +0 -21
  581. package/esm2015/full-content/fullContent.js +0 -5
  582. package/esm2015/global-footer/global-footer-item.component.js +0 -24
  583. package/esm2015/global-footer/global-footer.component.js +0 -77
  584. package/esm2015/global-footer/global-footer.module.js +0 -16
  585. package/esm2015/global-footer/globalFooter.js +0 -5
  586. package/esm2015/image/image.directive.js +0 -133
  587. package/esm2015/image/image.module.js +0 -15
  588. package/esm2015/let/let.directive.js +0 -31
  589. package/esm2015/let/let.module.js +0 -12
  590. package/esm2015/loading/loading.component.js +0 -26
  591. package/esm2015/loading/loading.module.js +0 -19
  592. package/esm2015/loading/loading.service.js +0 -92
  593. package/esm2015/lodop/lodop.module.js +0 -7
  594. package/esm2015/lodop/lodop.service.js +0 -219
  595. package/esm2015/lodop/lodop.types.js +0 -2
  596. package/esm2015/media/media.component.js +0 -104
  597. package/esm2015/media/media.module.js +0 -14
  598. package/esm2015/media/media.service.js +0 -53
  599. package/esm2015/notice-icon/notice-icon-tab.component.js +0 -30
  600. package/esm2015/notice-icon/notice-icon.component.js +0 -74
  601. package/esm2015/notice-icon/notice-icon.module.js +0 -35
  602. package/esm2015/notice-icon/noticeIcon.js +0 -5
  603. package/esm2015/onboarding/onboarding.component.js +0 -130
  604. package/esm2015/onboarding/onboarding.module.js +0 -20
  605. package/esm2015/onboarding/onboarding.service.js +0 -178
  606. package/esm2015/page-header/page-header.component.js +0 -216
  607. package/esm2015/page-header/page-header.module.js +0 -19
  608. package/esm2015/page-header/pageHeader.js +0 -5
  609. package/esm2015/pdf/pdf.component.js +0 -433
  610. package/esm2015/pdf/pdf.module.js +0 -15
  611. package/esm2015/qr/qr.component.js +0 -128
  612. package/esm2015/qr/qr.module.js +0 -14
  613. package/esm2015/quick-menu/quick-menu.component.js +0 -90
  614. package/esm2015/quick-menu/quick-menu.module.js +0 -16
  615. package/esm2015/quick-menu/quickMenu.js +0 -5
  616. package/esm2015/result/result.component.js +0 -62
  617. package/esm2015/result/result.module.js +0 -16
  618. package/esm2015/reuse-tab/reuse-tab-context-menu.component.js +0 -74
  619. package/esm2015/reuse-tab/reuse-tab-context.component.js +0 -32
  620. package/esm2015/reuse-tab/reuse-tab-context.directive.js +0 -33
  621. package/esm2015/reuse-tab/reuse-tab-context.service.js +0 -53
  622. package/esm2015/reuse-tab/reuse-tab.component.js +0 -300
  623. package/esm2015/reuse-tab/reuse-tab.module.js +0 -24
  624. package/esm2015/reuse-tab/reuse-tab.service.js +0 -534
  625. package/esm2015/reuse-tab/reuseTab.js +0 -5
  626. package/esm2015/se/edit.js +0 -5
  627. package/esm2015/se/public_api.js +0 -6
  628. package/esm2015/se/se-container.component.js +0 -115
  629. package/esm2015/se/se-title.component.js +0 -40
  630. package/esm2015/se/se.component.js +0 -214
  631. package/esm2015/se/se.module.js +0 -19
  632. package/esm2015/sg/grid.js +0 -5
  633. package/esm2015/sg/sg-container.component.js +0 -49
  634. package/esm2015/sg/sg.component.js +0 -65
  635. package/esm2015/sg/sg.module.js +0 -15
  636. package/esm2015/st/index.js +0 -2
  637. package/esm2015/st/st-column-source.js +0 -428
  638. package/esm2015/st/st-data-source.js +0 -429
  639. package/esm2015/st/st-export.js +0 -90
  640. package/esm2015/st/st-filter.component.js +0 -149
  641. package/esm2015/st/st-row.directive.js +0 -40
  642. package/esm2015/st/st-td.component.js +0 -232
  643. package/esm2015/st/st-widget-host.directive.js +0 -34
  644. package/esm2015/st/st-widget.js +0 -24
  645. package/esm2015/st/st.component.js +0 -784
  646. package/esm2015/st/st.interfaces.js +0 -2
  647. package/esm2015/st/st.module.js +0 -56
  648. package/esm2015/st/table.js +0 -8
  649. package/esm2015/sv/public_api.js +0 -6
  650. package/esm2015/sv/sv-container.component.js +0 -63
  651. package/esm2015/sv/sv-title.component.js +0 -40
  652. package/esm2015/sv/sv-value.component.js +0 -32
  653. package/esm2015/sv/sv.component.js +0 -105
  654. package/esm2015/sv/sv.module.js +0 -21
  655. package/esm2015/sv/view.js +0 -5
  656. package/esm2015/tag-select/tag-select.component.js +0 -70
  657. package/esm2015/tag-select/tag-select.module.js +0 -16
  658. package/esm2015/tag-select/tagSelect.js +0 -5
  659. package/esm2015/xlsx/xlsx.directive.js +0 -26
  660. package/esm2015/xlsx/xlsx.module.js +0 -14
  661. package/esm2015/xlsx/xlsx.service.js +0 -129
  662. package/esm2015/zip/zip.module.js +0 -10
  663. package/esm2015/zip/zip.service.js +0 -115
  664. package/exception/exception.metadata.json +0 -1
  665. package/fesm2015/abc.js.map +0 -1
  666. package/fesm2015/autoFocus.js +0 -59
  667. package/fesm2015/autoFocus.js.map +0 -1
  668. package/fesm2015/avatarList.js +0 -128
  669. package/fesm2015/avatarList.js.map +0 -1
  670. package/fesm2015/count-down.js +0 -56
  671. package/fesm2015/count-down.js.map +0 -1
  672. package/fesm2015/datePicker.js.map +0 -1
  673. package/fesm2015/downFile.js +0 -122
  674. package/fesm2015/downFile.js.map +0 -1
  675. package/fesm2015/edit.js +0 -396
  676. package/fesm2015/edit.js.map +0 -1
  677. package/fesm2015/ellipsis.js +0 -244
  678. package/fesm2015/ellipsis.js.map +0 -1
  679. package/fesm2015/errorCollect.js +0 -131
  680. package/fesm2015/errorCollect.js.map +0 -1
  681. package/fesm2015/exception.js +0 -125
  682. package/fesm2015/exception.js.map +0 -1
  683. package/fesm2015/footerToolbar.js +0 -66
  684. package/fesm2015/footerToolbar.js.map +0 -1
  685. package/fesm2015/fullContent.js +0 -191
  686. package/fesm2015/fullContent.js.map +0 -1
  687. package/fesm2015/globalFooter.js +0 -118
  688. package/fesm2015/globalFooter.js.map +0 -1
  689. package/fesm2015/grid.js +0 -129
  690. package/fesm2015/grid.js.map +0 -1
  691. package/fesm2015/image.js +0 -152
  692. package/fesm2015/image.js.map +0 -1
  693. package/fesm2015/let.js +0 -48
  694. package/fesm2015/let.js.map +0 -1
  695. package/fesm2015/loading.js +0 -138
  696. package/fesm2015/loading.js.map +0 -1
  697. package/fesm2015/lodop.js.map +0 -1
  698. package/fesm2015/media.js +0 -174
  699. package/fesm2015/media.js.map +0 -1
  700. package/fesm2015/noticeIcon.js +0 -141
  701. package/fesm2015/noticeIcon.js.map +0 -1
  702. package/fesm2015/onboarding.js +0 -328
  703. package/fesm2015/onboarding.js.map +0 -1
  704. package/fesm2015/pageHeader.js +0 -239
  705. package/fesm2015/pageHeader.js.map +0 -1
  706. package/fesm2015/pdf.js.map +0 -1
  707. package/fesm2015/qr.js +0 -159
  708. package/fesm2015/qr.js.map +0 -1
  709. package/fesm2015/quickMenu.js +0 -111
  710. package/fesm2015/quickMenu.js.map +0 -1
  711. package/fesm2015/result.js +0 -83
  712. package/fesm2015/result.js.map +0 -1
  713. package/fesm2015/reuseTab.js.map +0 -1
  714. package/fesm2015/table.js.map +0 -1
  715. package/fesm2015/tagSelect.js +0 -90
  716. package/fesm2015/tagSelect.js.map +0 -1
  717. package/fesm2015/view.js +0 -256
  718. package/fesm2015/view.js.map +0 -1
  719. package/fesm2015/xlsx.js.map +0 -1
  720. package/fesm2015/zip.js.map +0 -1
  721. package/footer-toolbar/footerToolbar.metadata.json +0 -1
  722. package/full-content/fullContent.d.ts +0 -4
  723. package/full-content/fullContent.metadata.json +0 -1
  724. package/global-footer/globalFooter.d.ts +0 -4
  725. package/global-footer/globalFooter.metadata.json +0 -1
  726. package/image/image.metadata.json +0 -1
  727. package/let/let.metadata.json +0 -1
  728. package/loading/loading.metadata.json +0 -1
  729. package/lodop/lodop.metadata.json +0 -1
  730. package/media/media.metadata.json +0 -1
  731. package/notice-icon/noticeIcon.d.ts +0 -4
  732. package/notice-icon/noticeIcon.metadata.json +0 -1
  733. package/onboarding/onboarding.metadata.json +0 -1
  734. package/page-header/pageHeader.d.ts +0 -4
  735. package/page-header/pageHeader.metadata.json +0 -1
  736. package/pdf/pdf.metadata.json +0 -1
  737. package/qr/qr.metadata.json +0 -1
  738. package/quick-menu/quickMenu.d.ts +0 -4
  739. package/quick-menu/quickMenu.metadata.json +0 -1
  740. package/result/result.metadata.json +0 -1
  741. package/reuse-tab/reuseTab.d.ts +0 -4
  742. package/reuse-tab/reuseTab.metadata.json +0 -1
  743. package/se/edit.d.ts +0 -4
  744. package/se/edit.metadata.json +0 -1
  745. package/se/se-title.component.d.ts +0 -10
  746. package/sg/grid.d.ts +0 -4
  747. package/sg/grid.metadata.json +0 -1
  748. package/st/index.d.ts +0 -1
  749. package/st/st-td.component.d.ts +0 -27
  750. package/st/table.d.ts +0 -7
  751. package/st/table.metadata.json +0 -1
  752. package/sv/sv-title.component.d.ts +0 -10
  753. package/sv/view.d.ts +0 -4
  754. package/sv/view.metadata.json +0 -1
  755. package/tag-select/tagSelect.d.ts +0 -4
  756. package/tag-select/tagSelect.metadata.json +0 -1
  757. package/xlsx/xlsx.metadata.json +0 -1
  758. package/zip/zip.metadata.json +0 -1
@@ -0,0 +1,114 @@
1
+ import { Directive, EventEmitter, Input, Output } from '@angular/core';
2
+ import { finalize } from 'rxjs/operators';
3
+ import { saveAs } from 'file-saver';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@delon/theme";
6
+ export class DownFileDirective {
7
+ constructor(el, _http) {
8
+ this.el = el;
9
+ this._http = _http;
10
+ this.isFileSaverSupported = true;
11
+ this.httpMethod = 'get';
12
+ this.success = new EventEmitter();
13
+ this.error = new EventEmitter();
14
+ let isFileSaverSupported = false;
15
+ try {
16
+ isFileSaverSupported = !!new Blob();
17
+ }
18
+ catch { }
19
+ this.isFileSaverSupported = isFileSaverSupported;
20
+ if (!isFileSaverSupported) {
21
+ el.nativeElement.classList.add(`down-file__not-support`);
22
+ }
23
+ }
24
+ getDisposition(data) {
25
+ const arr = (data || '')
26
+ .split(';')
27
+ .filter(i => i.includes('='))
28
+ .map(v => {
29
+ const strArr = v.split('=');
30
+ const utfId = `UTF-8''`;
31
+ let value = strArr[1];
32
+ if (value.startsWith(utfId))
33
+ value = value.substring(utfId.length);
34
+ return { [strArr[0].trim()]: value };
35
+ });
36
+ return arr.reduce((_o, item) => item, {});
37
+ }
38
+ setDisabled(status) {
39
+ const el = this.el.nativeElement;
40
+ el.disabled = status;
41
+ el.classList[status ? 'add' : 'remove'](`down-file__disabled`);
42
+ }
43
+ async _click(ev) {
44
+ if (!this.isFileSaverSupported || (typeof this.pre === 'function' && !(await this.pre(ev)))) {
45
+ ev.stopPropagation();
46
+ ev.preventDefault();
47
+ return;
48
+ }
49
+ this.setDisabled(true);
50
+ this._http
51
+ .request(this.httpMethod, this.httpUrl, {
52
+ params: this.httpData || {},
53
+ responseType: 'blob',
54
+ observe: 'response',
55
+ body: this.httpBody
56
+ })
57
+ .pipe(finalize(() => this.setDisabled(false)))
58
+ .subscribe({
59
+ next: (res) => {
60
+ if (res.status !== 200 || res.body.size <= 0) {
61
+ this.error.emit(res);
62
+ return;
63
+ }
64
+ const disposition = this.getDisposition(res.headers.get('content-disposition'));
65
+ let fileName = this.fileName;
66
+ if (typeof fileName === 'function')
67
+ fileName = fileName(res);
68
+ fileName =
69
+ fileName ||
70
+ disposition[`filename*`] ||
71
+ disposition[`filename`] ||
72
+ res.headers.get('filename') ||
73
+ res.headers.get('x-filename');
74
+ saveAs(res.body, decodeURI(fileName));
75
+ this.success.emit(res);
76
+ },
77
+ error: err => this.error.emit(err)
78
+ });
79
+ }
80
+ }
81
+ DownFileDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DownFileDirective, deps: [{ token: i0.ElementRef }, { token: i1._HttpClient }], target: i0.ɵɵFactoryTarget.Directive });
82
+ DownFileDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: DownFileDirective, selector: "[down-file]", inputs: { httpData: ["http-data", "httpData"], httpBody: ["http-body", "httpBody"], httpMethod: ["http-method", "httpMethod"], httpUrl: ["http-url", "httpUrl"], fileName: ["file-name", "fileName"], pre: "pre" }, outputs: { success: "success", error: "error" }, host: { listeners: { "click": "_click($event)" } }, exportAs: ["downFile"], ngImport: i0 });
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DownFileDirective, decorators: [{
84
+ type: Directive,
85
+ args: [{
86
+ selector: '[down-file]',
87
+ exportAs: 'downFile',
88
+ host: {
89
+ '(click)': '_click($event)'
90
+ }
91
+ }]
92
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1._HttpClient }]; }, propDecorators: { httpData: [{
93
+ type: Input,
94
+ args: ['http-data']
95
+ }], httpBody: [{
96
+ type: Input,
97
+ args: ['http-body']
98
+ }], httpMethod: [{
99
+ type: Input,
100
+ args: ['http-method']
101
+ }], httpUrl: [{
102
+ type: Input,
103
+ args: ['http-url']
104
+ }], fileName: [{
105
+ type: Input,
106
+ args: ['file-name']
107
+ }], pre: [{
108
+ type: Input
109
+ }], success: [{
110
+ type: Output
111
+ }], error: [{
112
+ type: Output
113
+ }] } });
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bi1maWxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FiYy9kb3duLWZpbGUvZG93bi1maWxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sWUFBWSxDQUFDOzs7QUFZcEMsTUFBTSxPQUFPLGlCQUFpQjtJQXlCNUIsWUFBb0IsRUFBaUMsRUFBVSxLQUFrQjtRQUE3RCxPQUFFLEdBQUYsRUFBRSxDQUErQjtRQUFVLFVBQUssR0FBTCxLQUFLLENBQWE7UUF4QnpFLHlCQUFvQixHQUFHLElBQUksQ0FBQztRQUdkLGVBQVUsR0FBVyxLQUFLLENBQUM7UUFJOUIsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFzQixDQUFDO1FBQ2pELFVBQUssR0FBRyxJQUFJLFlBQVksRUFBYSxDQUFDO1FBaUJ2RCxJQUFJLG9CQUFvQixHQUFHLEtBQUssQ0FBQztRQUNqQyxJQUFJO1lBQ0Ysb0JBQW9CLEdBQUcsQ0FBQyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7U0FDckM7UUFBQyxNQUFNLEdBQUU7UUFDVixJQUFJLENBQUMsb0JBQW9CLEdBQUcsb0JBQW9CLENBQUM7UUFDakQsSUFBSSxDQUFDLG9CQUFvQixFQUFFO1lBQ3pCLEVBQUUsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1NBQzFEO0lBQ0gsQ0FBQztJQXZCTyxjQUFjLENBQUMsSUFBbUI7UUFDeEMsTUFBTSxHQUFHLEdBQWtDLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQzthQUNwRCxLQUFLLENBQUMsR0FBRyxDQUFD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VUFBVSxDQUFDO3dCQUN2QixHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUM7d0JBQzNCLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO2dCQUNoQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUssRUFBRSxTQUFTLENBQUMsUUFBa0IsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3pCLENBQUM7WUFDRCxLQUFLLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7U0FDbkMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7OEdBN0VVLGlCQUFpQjtrR0FBakIsaUJBQWlCOzJGQUFqQixpQkFBaUI7a0JBUDdCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLFFBQVEsRUFBRSxVQUFVO29CQUNwQixJQUFJLEVBQUU7d0JBQ0osU0FBUyxFQUFFLGdCQUFnQjtxQkFDNUI7aUJBQ0Y7MkhBR3FCLFFBQVE7c0JBQTNCLEtBQUs7dUJBQUMsV0FBVztnQkFDRSxRQUFRO3NCQUEzQixLQUFLO3VCQUFDLFdBQVc7Z0JBQ0ksVUFBVTtzQkFBL0IsS0FBSzt1QkFBQyxhQUFhO2dCQUNELE9BQU87c0JBQXpCLEtBQUs7dUJBQUMsVUFBVTtnQkFDRyxRQUFRO3NCQUEzQixLQUFLO3VCQUFDLFdBQVc7Z0JBQ1QsR0FBRztzQkFBWCxLQUFLO2dCQUNhLE9BQU87c0JBQXpCLE1BQU07Z0JBQ1ksS0FBSztzQkFBdkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmaW5hbGl6ZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgc2F2ZUFzIH0gZnJvbSAnZmlsZS1zYXZlcic7XG5cbmltcG9ydCB7IF9IdHRwQ2xpZW50IH0gZnJvbSAnQGRlbG9uL3RoZW1lJztcbmltcG9ydCB0eXBlIHsgTnpTYWZlQW55IH0gZnJvbSAnbmctem9ycm8tYW50ZC9jb3JlL3R5cGVzJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2Rvd24tZmlsZV0nLFxuICBleHBvcnRBczogJ2Rvd25GaWxlJyxcbiAgaG9zdDoge1xuICAgICcoY2xpY2spJzogJ19jbGljaygkZXZlbnQpJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIERvd25GaWxlRGlyZWN0aXZlIHtcbiAgcHJpdmF0ZSBpc0ZpbGVTYXZlclN1cHBvcnRlZCA9IHRydWU7XG4gIEBJbnB1dCgnaHR0cC1kYXRhJykgaHR0cERhdGE6IE56U2FmZUFueTtcbiAgQElucHV0KCdodHRwLWJvZHknKSBodHRwQm9keTogTnpTYWZlQW55O1xuICBASW5wdXQoJ2h0dHAtbWV0aG9kJykgaHR0cE1ldGhvZDogc3RyaW5nID0gJ2dldCc7XG4gIEBJbnB1dCgnaHR0cC11cmwnKSBodHRwVXJsITogc3RyaW5nO1xuICBASW5wdXQoJ2ZpbGUtbmFtZScpIGZpbGVOYW1lPzogc3RyaW5nIHwgKChyZXA6IEh0dHBSZXNwb25zZTxCbG9iPikgPT4gc3RyaW5nKTtcbiAgQElucHV0KCkgcHJlPzogKGV2OiBNb3VzZUV2ZW50KSA9PiBQcm9taXNlPGJvb2xlYW4+O1xuICBAT3V0cHV0KCkgcmVhZG9ubHkgc3VjY2VzcyA9IG5ldyBFdmVudEVtaXR0ZXI8SHR0cFJlc3BvbnNlPEJsb2I+PigpO1xuICBAT3V0cHV0KCkgcmVhZG9ubHkgZXJyb3IgPSBuZXcgRXZlbnRFbWl0dGVyPE56U2FmZUFueT4oKTtcblxuICBwcml2YXRlIGdldERpc3Bvc2l0aW9uKGRhdGE6IHN0cmluZyB8IG51bGwpOiBOelNhZmVBbnkge1xuICAgIGNvbnN0IGFycjogQXJyYXk8UmVjb3JkPHN0cmluZywgc3RyaW5nPj4gPSAoZGF0YSB8fCAnJylcbiAgICAgIC5zcGxpdCgnOycpXG4gICAgICAuZmlsdGVyKGkgPT4gaS5pbmNsdWRlcygnPScpKVxuICAgICAgLm1hcCh2ID0+IHtcbiAgICAgICAgY29uc3Qgc3RyQXJyID0gdi5zcGxpdCgnPScpO1xuICAgICAgICBjb25zdCB1dGZJZCA9IGBVVEYtOCcnYDtcbiAgICAgICAgbGV0IHZhbHVlID0gc3RyQXJyWzFdO1xuICAgICAgICBpZiAodmFsdWUuc3RhcnRzV2l0aCh1dGZJZCkpIHZhbHVlID0gdmFsdWUuc3Vic3RyaW5nKHV0ZklkLmxlbmd0aCk7XG4gICAgICAgIHJldHVybiB7IFtzdHJBcnJbMF0udHJpbSgpXTogdmFsdWUgfTtcbiAgICAgIH0pO1xuICAgIHJldHVybiBhcnIucmVkdWNlKChfbywgaXRlbSkgPT4gaXRlbSwge30pO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZjxIVE1MQnV0dG9uRWxlbWVudD4sIHByaXZhdGUgX2h0dHA6IF9IdHRwQ2xpZW50KSB7XG4gICAgbGV0IGlzRmlsZVNhdmVyU3VwcG9ydGVkID0gZmFsc2U7XG4gICAgdHJ5IHtcbiAgICAgIGlzRmlsZVNhdmVyU3VwcG9ydGVkID0gISFuZXcgQmxvYigpO1xuICAgIH0gY2F0Y2gge31cbiAgICB0aGlzLmlzRmlsZVNhdmVyU3VwcG9ydGVkID0gaXNGaWxlU2F2ZXJTdXBwb3J0ZWQ7XG4gICAgaWYgKCFpc0ZpbGVTYXZlclN1cHBvcnRlZCkge1xuICAgICAgZWwubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKGBkb3duLWZpbGVfX25vdC1zdXBwb3J0YCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXREaXNhYmxlZChzdGF0dXM6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBjb25zdCBlbCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudDtcbiAgICBlbC5kaXNhYmxlZCA9IHN0YXR1cztcbiAgICBlbC5jbGFzc0xpc3Rbc3RhdHVzID8gJ2FkZCcgOiAncmVtb3ZlJ10oYGRvd24tZmlsZV9fZGlzYWJsZWRgKTtcbiAgfVxuXG4gIGFzeW5jIF9jbGljayhldjogTW91c2VFdmVudCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICghdGhpcy5pc0ZpbGVTYXZlclN1cHBvcnRlZCB8fCAodHlwZW9mIHRoaXMucHJlID09PSAnZnVuY3Rpb24nICYmICEoYXdhaXQgdGhpcy5wcmUoZXYpKSkpIHtcbiAgICAgIGV2LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgZXYucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5zZXREaXNhYmxlZCh0cnVlKTtcbiAgICB0aGlzLl9odHRwXG4gICAgICAucmVxdWVzdCh0aGlzLmh0dHBNZXRob2QsIHRoaXMuaHR0cFVybCwge1xuICAgICAgICBwYXJhbXM6IHRoaXMuaHR0cERhdGEgfHwge30sXG4gICAgICAgIHJlc3BvbnNlVHlwZTogJ2Jsb2InLFxuICAgICAgICBvYnNlcnZlOiAncmVzcG9uc2UnLFxuICAgICAgICBib2R5OiB0aGlzLmh0dHBCb2R5XG4gICAgICB9KVxuICAgICAgLnBpcGUoZmluYWxpemUoKCkgPT4gdGhpcy5zZXREaXNhYmxlZChmYWxzZSkpKVxuICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgIG5leHQ6IChyZXM6IEh0dHBSZXNwb25zZTxCbG9iPikgPT4ge1xuICAgICAgICAgIGlmIChyZXMuc3RhdHVzICE9PSAyMDAgfHwgcmVzLmJvZHkhLnNpemUgPD0gMCkge1xuICAgICAgICAgICAgdGhpcy5lcnJvci5lbWl0KHJlcyk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnN0IGRpc3Bvc2l0aW9uID0gdGhpcy5nZXREaXNwb3NpdGlvbihyZXMuaGVhZGVycy5nZXQoJ2NvbnRlbnQtZGlzcG9zaXRpb24nKSk7XG4gICAgICAgICAgbGV0IGZpbGVOYW1lID0gdGhpcy5maWxlTmFtZTtcbiAgICAgICAgICBpZiAodHlwZW9mIGZpbGVOYW1lID09PSAnZnVuY3Rpb24nKSBmaWxlTmFtZSA9IGZpbGVOYW1lKHJlcyk7XG4gICAgICAgICAgZmlsZU5hbWUgPVxuICAgICAgICAgICAgZmlsZU5hbWUgfHxcbiAgICAgICAgICAgIGRpc3Bvc2l0aW9uW2BmaWxlbmFtZSpgXSB8fFxuICAgICAgICAgICAgZGlzcG9zaXRpb25bYGZpbGVuYW1lYF0gfHxcbiAgICAgICAgICAgIHJlcy5oZWFkZXJzLmdldCgnZmlsZW5hbWUnKSB8fFxuICAgICAgICAgICAgcmVzLmhlYWRlcnMuZ2V0KCd4LWZpbGVuYW1lJyk7XG4gICAgICAgICAgc2F2ZUFzKHJlcy5ib2R5ISwgZGVjb2RlVVJJKGZpbGVOYW1lIGFzIHN0cmluZykpO1xuICAgICAgICAgIHRoaXMuc3VjY2Vzcy5lbWl0KHJlcyk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yOiBlcnIgPT4gdGhpcy5lcnJvci5lbWl0KGVycilcbiAgICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public_api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bi1maWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWJjL2Rvd24tZmlsZS9kb3duLWZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWNfYXBpJztcbiJdfQ==
@@ -0,0 +1,20 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { AlainThemeModule } from '@delon/theme';
4
+ import { DownFileDirective } from './down-file.directive';
5
+ import * as i0 from "@angular/core";
6
+ const DIRECTIVES = [DownFileDirective];
7
+ export class DownFileModule {
8
+ }
9
+ DownFileModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DownFileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ DownFileModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DownFileModule, declarations: [DownFileDirective], imports: [CommonModule, AlainThemeModule], exports: [DownFileDirective] });
11
+ DownFileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DownFileModule, imports: [[CommonModule, AlainThemeModule]] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: DownFileModule, decorators: [{
13
+ type: NgModule,
14
+ args: [{
15
+ imports: [CommonModule, AlainThemeModule],
16
+ declarations: [...DIRECTIVES],
17
+ exports: [...DIRECTIVES]
18
+ }]
19
+ }] });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bi1maWxlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FiYy9kb3duLWZpbGUvZG93bi1maWxlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFaEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBRTFELE1BQU0sVUFBVSxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQztBQU92QyxNQUFNLE9BQU8sY0FBYzs7MkdBQWQsY0FBYzs0R0FBZCxjQUFjLGlCQVBQLGlCQUFpQixhQUd6QixZQUFZLEVBQUUsZ0JBQWdCLGFBSHRCLGlCQUFpQjs0R0FPeEIsY0FBYyxZQUpoQixDQUFDLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQzsyRkFJOUIsY0FBYztrQkFMMUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZ0JBQWdCLENBQUM7b0JBQ3pDLFlBQVksRUFBRSxDQUFDLEdBQUcsVUFBVSxDQUFDO29CQUM3QixPQUFPLEVBQUUsQ0FBQyxHQUFHLFVBQVUsQ0FBQztpQkFDekIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQWxhaW5UaGVtZU1vZHVsZSB9IGZyb20gJ0BkZWxvbi90aGVtZSc7XG5cbmltcG9ydCB7IERvd25GaWxlRGlyZWN0aXZlIH0gZnJvbSAnLi9kb3duLWZpbGUuZGlyZWN0aXZlJztcblxuY29uc3QgRElSRUNUSVZFUyA9IFtEb3duRmlsZURpcmVjdGl2ZV07XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEFsYWluVGhlbWVNb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFsuLi5ESVJFQ1RJVkVTXSxcbiAgZXhwb3J0czogWy4uLkRJUkVDVElWRVNdXG59KVxuZXhwb3J0IGNsYXNzIERvd25GaWxlTW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,229 @@
1
+ import { __decorate } from "tslib";
2
+ import { DOCUMENT } from '@angular/common';
3
+ import { ChangeDetectionStrategy, Component, Inject, Input, ViewChild, ViewEncapsulation } from '@angular/core';
4
+ import { take } from 'rxjs/operators';
5
+ import { InputBoolean, InputNumber } from '@delon/util/decorator';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/platform-browser";
8
+ import * as i2 from "@angular/cdk/observers";
9
+ import * as i3 from "@angular/common";
10
+ import * as i4 from "ng-zorro-antd/tooltip";
11
+ export class EllipsisComponent {
12
+ constructor(el, ngZone, dom, doc, cdr) {
13
+ this.el = el;
14
+ this.ngZone = ngZone;
15
+ this.dom = dom;
16
+ this.doc = doc;
17
+ this.cdr = cdr;
18
+ this.isSupportLineClamp = this.doc.body.style['webkitLineClamp'] !== undefined;
19
+ this.inited = false;
20
+ this.type = 'default';
21
+ this.cls = {};
22
+ this.text = '';
23
+ this.targetCount = 0;
24
+ this.tooltip = false;
25
+ this.fullWidthRecognition = false;
26
+ this.tail = '...';
27
+ }
28
+ get linsWord() {
29
+ const { targetCount, text, tail } = this;
30
+ return ((targetCount > 0 ? text.substring(0, targetCount) : '') +
31
+ (targetCount > 0 && targetCount < text.length ? tail : ''));
32
+ }
33
+ getStrFullLength(str) {
34
+ return str.split('').reduce((pre, cur) => {
35
+ const charCode = cur.charCodeAt(0);
36
+ if (charCode >= 0 && charCode <= 128) {
37
+ return pre + 1;
38
+ }
39
+ return pre + 2;
40
+ }, 0);
41
+ }
42
+ cutStrByFullLength(str, maxLength) {
43
+ let showLength = 0;
44
+ return str.split('').reduce((pre, cur) => {
45
+ const charCode = cur.charCodeAt(0);
46
+ if (charCode >= 0 && charCode <= 128) {
47
+ showLength += 1;
48
+ }
49
+ else {
50
+ showLength += 2;
51
+ }
52
+ if (showLength <= maxLength) {
53
+ return pre + cur;
54
+ }
55
+ return pre;
56
+ }, '');
57
+ }
58
+ bisection(targetHeight, mid, begin, end, text, node) {
59
+ const suffix = this.tail;
60
+ node.innerHTML = text.substring(0, mid) + suffix;
61
+ let sh = node.offsetHeight;
62
+ if (sh <= targetHeight) {
63
+ node.innerHTML = text.substring(0, mid + 1) + suffix;
64
+ sh = node.offsetHeight;
65
+ if (sh > targetHeight || mid === begin) {
66
+ return mid;
67
+ }
68
+ begin = mid;
69
+ mid = end - begin === 1 ? begin + 1 : Math.floor((end - begin) / 2) + begin;
70
+ return this.bisection(targetHeight, mid, begin, end, text, node);
71
+ }
72
+ if (mid - 1 < 0) {
73
+ return mid;
74
+ }
75
+ node.innerHTML = text.substring(0, mid - 1) + suffix;
76
+ sh = node.offsetHeight;
77
+ if (sh <= targetHeight) {
78
+ return mid - 1;
79
+ }
80
+ end = mid;
81
+ mid = Math.floor((end - begin) / 2) + begin;
82
+ return this.bisection(targetHeight, mid, begin, end, text, node);
83
+ }
84
+ genType() {
85
+ const { lines, length, isSupportLineClamp } = this;
86
+ this.cls = {
87
+ ellipsis: true,
88
+ ellipsis__lines: lines && !isSupportLineClamp,
89
+ 'ellipsis__line-clamp': lines && isSupportLineClamp
90
+ };
91
+ if (!lines && !length) {
92
+ this.type = 'default';
93
+ }
94
+ else if (!lines) {
95
+ this.type = 'length';
96
+ }
97
+ else if (isSupportLineClamp) {
98
+ this.type = 'line-clamp';
99
+ }
100
+ else {
101
+ this.type = 'line';
102
+ }
103
+ }
104
+ gen() {
105
+ const { type, lines, length, fullWidthRecognition, tail, orgEl, cdr, ngZone } = this;
106
+ if (type === 'length') {
107
+ const el = orgEl.nativeElement;
108
+ if (el.children.length > 0) {
109
+ throw new Error('Ellipsis content must be string.');
110
+ }
111
+ const lengthText = el.textContent;
112
+ const textLength = fullWidthRecognition ? this.getStrFullLength(lengthText) : lengthText.length;
113
+ if (textLength <= length || length < 0) {
114
+ this.text = lengthText;
115
+ }
116
+ else {
117
+ let displayText;
118
+ if (length - tail.length <= 0) {
119
+ displayText = '';
120
+ }
121
+ else {
122
+ displayText = fullWidthRecognition
123
+ ? this.cutStrByFullLength(lengthText, length)
124
+ : lengthText.slice(0, length);
125
+ }
126
+ this.text = displayText + tail;
127
+ }
128
+ ngZone.run(() => cdr.detectChanges());
129
+ }
130
+ else if (type === 'line') {
131
+ const { shadowOrgEl, shadowTextEl } = this;
132
+ const orgNode = shadowOrgEl.nativeElement;
133
+ const lineText = orgNode.innerText || orgNode.textContent;
134
+ const lineHeight = parseInt(getComputedStyle(this.getEl('.ellipsis')).lineHeight, 10);
135
+ const targetHeight = lines * lineHeight;
136
+ this.getEl('.ellipsis__handle').style.height = `${targetHeight}px`;
137
+ if (orgNode.offsetHeight <= targetHeight) {
138
+ this.text = lineText;
139
+ this.targetCount = lineText.length;
140
+ }
141
+ else {
142
+ // bisection
143
+ const len = lineText.length;
144
+ const mid = Math.ceil(len / 2);
145
+ const count = this.bisection(targetHeight, mid, 0, len, lineText, shadowTextEl.nativeElement.firstChild);
146
+ this.text = lineText;
147
+ this.targetCount = count;
148
+ }
149
+ ngZone.run(() => cdr.detectChanges());
150
+ }
151
+ }
152
+ getEl(cls) {
153
+ return this.el.nativeElement.querySelector(cls);
154
+ }
155
+ executeOnStable(fn) {
156
+ if (this.ngZone.isStable) {
157
+ fn();
158
+ }
159
+ else {
160
+ this.ngZone.onStable.asObservable().pipe(take(1)).subscribe(fn);
161
+ }
162
+ }
163
+ refresh() {
164
+ this.genType();
165
+ const { type, dom, orgEl, cdr } = this;
166
+ const html = orgEl.nativeElement.innerHTML;
167
+ this.orgHtml = dom.bypassSecurityTrustHtml(html);
168
+ cdr.detectChanges();
169
+ this.executeOnStable(() => {
170
+ this.gen();
171
+ if (type !== 'line') {
172
+ const el = this.getEl('.ellipsis');
173
+ if (el) {
174
+ el.innerHTML = html;
175
+ }
176
+ }
177
+ });
178
+ }
179
+ ngAfterViewInit() {
180
+ this.inited = true;
181
+ this.refresh();
182
+ }
183
+ ngOnChanges() {
184
+ if (this.inited) {
185
+ this.refresh();
186
+ }
187
+ }
188
+ }
189
+ EllipsisComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EllipsisComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.DomSanitizer }, { token: DOCUMENT }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
190
+ EllipsisComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: EllipsisComponent, selector: "ellipsis", inputs: { tooltip: "tooltip", length: "length", lines: "lines", fullWidthRecognition: "fullWidthRecognition", tail: "tail" }, viewQueries: [{ propertyName: "orgEl", first: true, predicate: ["orgEl"], descendants: true }, { propertyName: "shadowOrgEl", first: true, predicate: ["shadowOrgEl"], descendants: true }, { propertyName: "shadowTextEl", first: true, predicate: ["shadowTextEl"], descendants: true }], exportAs: ["ellipsis"], usesOnChanges: true, ngImport: i0, template: "<div (cdkObserveContent)=\"refresh()\" #orgEl style=\"display: none\"><ng-content></ng-content></div>\n<ng-template #tooltipTpl let-con>\n <span\n *ngIf=\"tooltip; else con\"\n nz-tooltip\n [nzTooltipTitle]=\"titleTpl\"\n [nzTooltipOverlayStyle]=\"{ 'overflow-wrap': 'break-word', 'word-wrap': 'break-word' }\"\n >\n <ng-container *ngTemplateOutlet=\"con\"></ng-container>\n <ng-template #titleTpl><div [innerHTML]=\"orgHtml\"></div></ng-template>\n </span>\n</ng-template>\n<ng-container [ngSwitch]=\"type\">\n <span *ngSwitchCase=\"'default'\" [ngClass]=\"cls\"></span>\n <ng-container *ngSwitchCase=\"'length'\">\n <ng-template [ngTemplateOutlet]=\"tooltipTpl\" [ngTemplateOutletContext]=\"{ $implicit: lengthTpl }\"></ng-template>\n <ng-template #lengthTpl>{{ text }}</ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"'line-clamp'\">\n <ng-template [ngTemplateOutlet]=\"tooltipTpl\" [ngTemplateOutletContext]=\"{ $implicit: lineClampTpl }\"></ng-template>\n <ng-template #lineClampTpl>\n <div [ngClass]=\"cls\" [ngStyle]=\"{ '-webkit-line-clamp': lines, '-webkit-box-orient': 'vertical' }\"></div>\n </ng-template>\n </ng-container>\n <div *ngSwitchCase=\"'line'\" [ngClass]=\"cls\">\n <div class=\"ellipsis__handle\">\n <ng-template [ngTemplateOutlet]=\"tooltipTpl\" [ngTemplateOutletContext]=\"{ $implicit: lineTpl }\"></ng-template>\n <ng-template #lineTpl>{{ linsWord }}</ng-template>\n <div class=\"ellipsis__shadow\" #shadowOrgEl [innerHTML]=\"orgHtml\"></div>\n <div class=\"ellipsis__shadow\" #shadowTextEl>\n <span>{{ text }}</span>\n </div>\n </div>\n </div>\n</ng-container>\n", directives: [{ type: i2.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NzTooltipDirective, selector: "[nz-tooltip]", inputs: ["nzTooltipTitle", "nzTooltipTitleContext", "nz-tooltip", "nzTooltipTrigger", "nzTooltipPlacement", "nzTooltipOrigin", "nzTooltipVisible", "nzTooltipMouseEnterDelay", "nzTooltipMouseLeaveDelay", "nzTooltipOverlayClassName", "nzTooltipOverlayStyle", "nzTooltipArrowPointAtCenter", "nzTooltipColor"], outputs: ["nzTooltipVisibleChange"], exportAs: ["nzTooltip"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
191
+ __decorate([
192
+ InputBoolean()
193
+ ], EllipsisComponent.prototype, "tooltip", void 0);
194
+ __decorate([
195
+ InputNumber(null)
196
+ ], EllipsisComponent.prototype, "length", void 0);
197
+ __decorate([
198
+ InputNumber(null)
199
+ ], EllipsisComponent.prototype, "lines", void 0);
200
+ __decorate([
201
+ InputBoolean()
202
+ ], EllipsisComponent.prototype, "fullWidthRecognition", void 0);
203
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EllipsisComponent, decorators: [{
204
+ type: Component,
205
+ args: [{ selector: 'ellipsis', exportAs: 'ellipsis', preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div (cdkObserveContent)=\"refresh()\" #orgEl style=\"display: none\"><ng-content></ng-content></div>\n<ng-template #tooltipTpl let-con>\n <span\n *ngIf=\"tooltip; else con\"\n nz-tooltip\n [nzTooltipTitle]=\"titleTpl\"\n [nzTooltipOverlayStyle]=\"{ 'overflow-wrap': 'break-word', 'word-wrap': 'break-word' }\"\n >\n <ng-container *ngTemplateOutlet=\"con\"></ng-container>\n <ng-template #titleTpl><div [innerHTML]=\"orgHtml\"></div></ng-template>\n </span>\n</ng-template>\n<ng-container [ngSwitch]=\"type\">\n <span *ngSwitchCase=\"'default'\" [ngClass]=\"cls\"></span>\n <ng-container *ngSwitchCase=\"'length'\">\n <ng-template [ngTemplateOutlet]=\"tooltipTpl\" [ngTemplateOutletContext]=\"{ $implicit: lengthTpl }\"></ng-template>\n <ng-template #lengthTpl>{{ text }}</ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"'line-clamp'\">\n <ng-template [ngTemplateOutlet]=\"tooltipTpl\" [ngTemplateOutletContext]=\"{ $implicit: lineClampTpl }\"></ng-template>\n <ng-template #lineClampTpl>\n <div [ngClass]=\"cls\" [ngStyle]=\"{ '-webkit-line-clamp': lines, '-webkit-box-orient': 'vertical' }\"></div>\n </ng-template>\n </ng-container>\n <div *ngSwitchCase=\"'line'\" [ngClass]=\"cls\">\n <div class=\"ellipsis__handle\">\n <ng-template [ngTemplateOutlet]=\"tooltipTpl\" [ngTemplateOutletContext]=\"{ $implicit: lineTpl }\"></ng-template>\n <ng-template #lineTpl>{{ linsWord }}</ng-template>\n <div class=\"ellipsis__shadow\" #shadowOrgEl [innerHTML]=\"orgHtml\"></div>\n <div class=\"ellipsis__shadow\" #shadowTextEl>\n <span>{{ text }}</span>\n </div>\n </div>\n </div>\n</ng-container>\n" }]
206
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.DomSanitizer }, { type: undefined, decorators: [{
207
+ type: Inject,
208
+ args: [DOCUMENT]
209
+ }] }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { orgEl: [{
210
+ type: ViewChild,
211
+ args: ['orgEl', { static: false }]
212
+ }], shadowOrgEl: [{
213
+ type: ViewChild,
214
+ args: ['shadowOrgEl', { static: false }]
215
+ }], shadowTextEl: [{
216
+ type: ViewChild,
217
+ args: ['shadowTextEl', { static: false }]
218
+ }], tooltip: [{
219
+ type: Input
220
+ }], length: [{
221
+ type: Input
222
+ }], lines: [{
223
+ type: Input
224
+ }], fullWidthRecognition: [{
225
+ type: Input
226
+ }], tail: [{
227
+ type: Input
228
+ }] } });
229
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxsaXBzaXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWJjL2VsbGlwc2lzL2VsbGlwc2lzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FiYy9lbGxpcHNpcy9lbGxpcHNpcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFFTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUVULE1BQU0sRUFDTixLQUFLLEVBR0wsU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdEMsT0FBTyxFQUFnQixZQUFZLEVBQUUsV0FBVyxFQUFlLE1BQU0sdUJBQXVCLENBQUM7Ozs7OztBQVc3RixNQUFNLE9BQU8saUJBQWlCO0lBK0I1QixZQUNVLEVBQWMsRUFDZCxNQUFjLEVBQ2QsR0FBaUIsRUFDQyxHQUFjLEVBQ2hDLEdBQXNCO1FBSnRCLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsUUFBRyxHQUFILEdBQUcsQ0FBYztRQUNDLFFBQUcsR0FBSCxHQUFHLENBQVc7UUFDaEMsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUE5QnhCLHVCQUFrQixHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLFNBQVMsQ0FBQztRQUkxRSxXQUFNLEdBQUcsS0FBSyxDQUFDO1FBRXZCLFNBQUksR0FBRyxTQUFTLENBQUM7UUFDakIsUUFBRyxHQUFHLEVBQUUsQ0FBQztRQUNULFNBQUksR0FBRyxFQUFFLENBQUM7UUFDVixnQkFBVyxHQUFHLENBQUMsQ0FBQztRQUVTLFlBQU8sR0FB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QUFFO2dCQVFuQixPQUFPO3NCQUEvQixLQUFLO2dCQUNzQixNQUFNO3NCQUFqQyxLQUFLO2dCQUNzQixLQUFLO3NCQUFoQyxLQUFLO2dCQUNtQixvQkFBb0I7c0JBQTVDLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25DaGFuZ2VzLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlSHRtbCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBJbnB1dEJvb2xlYW4sIElucHV0TnVtYmVyLCBOdW1iZXJJbnB1dCB9IGZyb20gJ0BkZWxvbi91dGlsL2RlY29yYXRvcic7XG5pbXBvcnQgdHlwZSB7IE56U2FmZUFueSB9IGZyb20gJ25nLXpvcnJvLWFudGQvY29yZS90eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsbGlwc2lzJyxcbiAgZXhwb3J0QXM6ICdlbGxpcHNpcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbGxpcHNpcy5jb21wb25lbnQuaHRtbCcsXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBFbGxpcHNpc0NvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcyB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV90b29sdGlwOiBCb29sZWFuSW5wdXQ7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9sZW5ndGg6IE51bWJlcklucHV0O1xuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfbGluZXM6IE51bWJlcklucHV0O1xuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfZnVsbFdpZHRoUmVjb2duaXRpb246IEJvb2xlYW5JbnB1dDtcblxuICBwcml2YXRlIGlzU3VwcG9ydExpbmVDbGFtcCA9IHRoaXMuZG9jLmJvZHkuc3R5bGVbJ3dlYmtpdExpbmVDbGFtcCddICE9PSB1bmRlZmluZWQ7XG4gIEBWaWV3Q2hpbGQoJ29yZ0VsJywgeyBzdGF0aWM6IGZhbHNlIH0pIHByaXZhdGUgb3JnRWwhOiBFbGVtZW50UmVmO1xuICBAVmlld0NoaWxkKCdzaGFkb3dPcmdFbCcsIHsgc3RhdGljOiBmYWxzZSB9KSBwcml2YXRlIHNoYWRvd09yZ0VsITogRWxlbWVudFJlZjtcbiAgQFZpZXdDaGlsZCgnc2hhZG93VGV4dEVsJywgeyBzdGF0aWM6IGZhbHNlIH0pIHByaXZhdGUgc2hhZG93VGV4dEVsITogRWxlbWVudFJlZjtcbiAgcHJpdmF0ZSBpbml0ZWQgPSBmYWxzZTtcbiAgb3JnSHRtbCE6IFNhZmVIdG1sO1xuICB0eXBlID0gJ2RlZmF1bHQnO1xuICBjbHMgPSB7fTtcbiAgdGV4dCA9ICcnO1xuICB0YXJnZXRDb3VudCA9IDA7XG5cbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHRvb2x0aXAgPSBmYWxzZTtcbiAgQElucHV0KCkgQElucHV0TnVtYmVyKG51bGwpIGxlbmd0aD86IG51bWJlcjtcbiAgQElucHV0KCkgQElucHV0TnVtYmVyKG51bGwpIGxpbmVzPzogbnVtYmVyO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgZnVsbFdpZHRoUmVjb2duaXRpb24gPSBmYWxzZTtcbiAgQElucHV0KCkgdGFpbCA9ICcuLi4nO1xuXG4gIGdldCBsaW5zV29yZCgpOiBzdHJpbmcge1xuICAgIGNvbnN0IHsgdGFyZ2V0Q291bnQsIHRleHQsIHRhaWwgfSA9IHRoaXM7XG4gICAgcmV0dXJuIChcbiAgICAgICh0YXJnZXRDb3VudCA+IDAgPyB0ZXh0LnN1YnN0cmluZygwLCB0YXJnZXRDb3VudCkgOiAnJykgK1xuICAgICAgKHRhcmdldENvdW50ID4gMCAmJiB0YXJnZXRDb3VudCA8IHRleHQubGVuZ3RoID8gdGFpbCA6ICcnKVxuICAgICk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgbmdab25lOiBOZ1pvbmUsXG4gICAgcHJpdmF0ZSBkb206IERvbVNhbml0aXplcixcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvYzogTnpTYWZlQW55LFxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHt9XG5cbiAgcHJpdmF0ZSBnZXRTdHJGdWxsTGVuZ3RoKHN0cjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICByZXR1cm4gc3RyLnNwbGl0KCcnKS5yZWR1Y2UoKHByZSwgY3VyKSA9PiB7XG4gICAgICBjb25zdCBjaGFyQ29kZSA9IGN1ci5jaGFyQ29kZUF0KDApO1xuICAgICAgaWYgKGNoYXJDb2RlID49IDAgJiYgY2hhckNvZGUgPD0gMTI4KSB7XG4gICAgICAgIHJldHVybiBwcmUgKyAxO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHByZSArIDI7XG4gICAgfSwgMCk7XG4gIH1cblxuICBwcml2YXRlIGN1dFN0ckJ5RnVsbExlbmd0aChzdHI6IHN0cmluZywgbWF4TGVuZ3RoOiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGxldCBzaG93TGVuZ3RoID0gMDtcbiAgICByZXR1cm4gc3RyLnNwbGl0KCcnKS5yZWR1Y2UoKHByZSwgY3VyKSA9PiB7XG4gICAgICBjb25zdCBjaGFyQ29kZSA9IGN1ci5jaGFyQ29kZUF0KDApO1xuICAgICAgaWYgKGNoYXJDb2RlID49IDAgJiYgY2hhckNvZGUgPD0gMTI4KSB7XG4gICAgICAgIHNob3dMZW5ndGggKz0gMTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNob3dMZW5ndGggKz0gMjtcbiAgICAgIH1cbiAgICAgIGlmIChzaG93TGVuZ3RoIDw9IG1heExlbmd0aCkge1xuICAgICAgICByZXR1cm4gcHJlICsgY3VyO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHByZTtcbiAgICB9LCAnJyk7XG4gIH1cblxuICBwcml2YXRlIGJpc2VjdGlvbihcbiAgICB0YXJnZXRIZWlnaHQ6IG51bWJlcixcbiAgICBtaWQ6IG51bWJlcixcbiAgICBiZWdpbjogbnVtYmVyLFxuICAgIGVuZDogbnVtYmVyLFxuICAgIHRleHQ6IHN0cmluZyxcbiAgICBub2RlOiBIVE1MRWxlbWVudFxuICApOiBudW1iZXIge1xuICAgIGNvbnN0IHN1ZmZpeCA9IHRoaXMudGFpbDtcbiAgICBub2RlLmlubmVySFRNTCA9IHRleHQuc3Vic3RyaW5nKDAsIG1pZCkgKyBzdWZmaXg7XG4gICAgbGV0IHNoID0gbm9kZS5vZmZzZXRIZWlnaHQ7XG5cbiAgICBpZiAoc2ggPD0gdGFyZ2V0SGVpZ2h0KSB7XG4gICAgICBub2RlLmlubmVySFRNTCA9IHRleHQuc3Vic3RyaW5nKDAsIG1pZCArIDEpICsgc3VmZml4O1xuICAgICAgc2ggPSBub2RlLm9mZnNldEhlaWdodDtcbiAgICAgIGlmIChzaCA+IHRhcmdldEhlaWdodCB8fCBtaWQgPT09IGJlZ2luKSB7XG4gICAgICAgIHJldHVybiBtaWQ7XG4gICAgICB9XG4gICAgICBiZWdpbiA9IG1pZDtcbiAgICAgIG1pZCA9IGVuZCAtIGJlZ2luID09PSAxID8gYmVnaW4gKyAxIDogTWF0aC5mbG9vcigoZW5kIC0gYmVnaW4pIC8gMikgKyBiZWdpbjtcbiAgICAgIHJldHVybiB0aGlzLmJpc2VjdGlvbih0YXJnZXRIZWlnaHQsIG1pZCwgYmVnaW4sIGVuZCwgdGV4dCwgbm9kZSk7XG4gICAgfVxuICAgIGlmIChtaWQgLSAxIDwgMCkge1xuICAgICAgcmV0dXJuIG1pZDtcbiAgICB9XG4gICAgbm9kZS5pbm5lckhUTUwgPSB0ZXh0LnN1YnN0cmluZygwLCBtaWQgLSAxKSArIHN1ZmZpeDtcbiAgICBzaCA9IG5vZGUub2Zmc2V0SGVpZ2h0O1xuICAgIGlmIChzaCA8PSB0YXJnZXRIZWlnaHQpIHtcbiAgICAgIHJldHVybiBtaWQgLSAxO1xuICAgIH1cbiAgICBlbmQgPSBtaWQ7XG4gICAgbWlkID0gTWF0aC5mbG9vcigoZW5kIC0gYmVnaW4pIC8gMikgKyBiZWdpbjtcbiAgICByZXR1cm4gdGhpcy5iaXNlY3Rpb24odGFyZ2V0SGVpZ2h0LCBtaWQsIGJlZ2luLCBlbmQsIHRleHQsIG5vZGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZW5UeXBlKCk6IHZvaWQge1xuICAgIGNvbnN0IHsgbGluZXMsIGxlbmd0aCwgaXNTdXBwb3J0TGluZUNsYW1wIH0gPSB0aGlzO1xuICAgIHRoaXMuY2xzID0ge1xuICAgICAgZWxsaXBzaXM6IHRydWUsXG4gICAgICBlbGxpcHNpc19fbGluZXM6IGxpbmVzICYmICFpc1N1cHBvcnRMaW5lQ2xhbXAsXG4gICAgICAnZWxsaXBzaXNfX2xpbmUtY2xhbXAnOiBsaW5lcyAmJiBpc1N1cHBvcnRMaW5lQ2xhbXBcbiAgICB9O1xuICAgIGlmICghbGluZXMgJiYgIWxlbmd0aCkge1xuICAgICAgdGhpcy50eXBlID0gJ2RlZmF1bHQnO1xuICAgIH0gZWxzZSBpZiAoIWxpbmVzKSB7XG4gICAgICB0aGlzLnR5cGUgPSAnbGVuZ3RoJztcbiAgICB9IGVsc2UgaWYgKGlzU3VwcG9ydExpbmVDbGFtcCkge1xuICAgICAgdGhpcy50eXBlID0gJ2xpbmUtY2xhbXAnO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnR5cGUgPSAnbGluZSc7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZW4oKTogdm9pZCB7XG4gICAgY29uc3QgeyB0eXBlLCBsaW5lcywgbGVuZ3RoLCBmdWxsV2lkdGhSZWNvZ25pdGlvbiwgdGFpbCwgb3JnRWwsIGNkciwgbmdab25lIH0gPSB0aGlzO1xuICAgIGlmICh0eXBlID09PSAnbGVuZ3RoJykge1xuICAgICAgY29uc3QgZWwgPSBvcmdFbC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xuICAgICAgaWYgKGVsLmNoaWxkcmVuLmxlbmd0aCA+IDApIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdFbGxpcHNpcyBjb250ZW50IG11c3QgYmUgc3RyaW5nLicpO1xuICAgICAgfVxuICAgICAgY29uc3QgbGVuZ3RoVGV4dCA9IGVsLnRleHRDb250ZW50ITtcbiAgICAgIGNvbnN0IHRleHRMZW5ndGggPSBmdWxsV2lkdGhSZWNvZ25pdGlvbiA/IHRoaXMuZ2V0U3RyRnVsbExlbmd0aChsZW5ndGhUZXh0KSA6IGxlbmd0aFRleHQubGVuZ3RoO1xuICAgICAgaWYgKHRleHRMZW5ndGggPD0gbGVuZ3RoISB8fCBsZW5ndGghIDwgMCkge1xuICAgICAgICB0aGlzLnRleHQgPSBsZW5ndGhUZXh0O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbGV0IGRpc3BsYXlUZXh0OiBzdHJpbmc7XG4gICAgICAgIGlmIChsZW5ndGghIC0gdGFpbC5sZW5ndGggPD0gMCkge1xuICAgICAgICAgIGRpc3BsYXlUZXh0ID0gJyc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZGlzcGxheVRleHQgPSBmdWxsV2lkdGhSZWNvZ25pdGlvblxuICAgICAgICAgICAgPyB0aGlzLmN1dFN0ckJ5RnVsbExlbmd0aChsZW5ndGhUZXh0LCBsZW5ndGghKVxuICAgICAgICAgICAgOiBsZW5ndGhUZXh0LnNsaWNlKDAsIGxlbmd0aCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy50ZXh0ID0gZGlzcGxheVRleHQgKyB0YWlsO1xuICAgICAgfVxuICAgICAgbmdab25lLnJ1bigoKSA9PiBjZHIuZGV0ZWN0Q2hhbmdlcygpKTtcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICdsaW5lJykge1xuICAgICAgY29uc3QgeyBzaGFkb3dPcmdFbCwgc2hhZG93VGV4dEVsIH0gPSB0aGlzO1xuICAgICAgY29uc3Qgb3JnTm9kZSA9IHNoYWRvd09yZ0VsLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICBjb25zdCBsaW5lVGV4dCA9IG9yZ05vZGUuaW5uZXJUZXh0IHx8IG9yZ05vZGUudGV4dENvbnRlbnQhO1xuICAgICAgY29uc3QgbGluZUhlaWdodCA9IHBhcnNlSW50KGdldENvbXB1dGVkU3R5bGUodGhpcy5nZXRFbCgnLmVsbGlwc2lzJykpLmxpbmVIZWlnaHQhLCAxMCk7XG4gICAgICBjb25zdCB0YXJnZXRIZWlnaHQgPSBsaW5lcyEgKiBsaW5lSGVpZ2h0O1xuICAgICAgdGhpcy5nZXRFbCgnLmVsbGlwc2lzX19oYW5kbGUnKS5zdHlsZS5oZWlnaHQgPSBgJHt0YXJnZXRIZWlnaHR9cHhgO1xuXG4gICAgICBpZiAob3JnTm9kZS5vZmZzZXRIZWlnaHQgPD0gdGFyZ2V0SGVpZ2h0KSB7XG4gICAgICAgIHRoaXMudGV4dCA9IGxpbmVUZXh0O1xuICAgICAgICB0aGlzLnRhcmdldENvdW50ID0gbGluZVRleHQubGVuZ3RoO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gYmlzZWN0aW9uXG4gICAgICAgIGNvbnN0IGxlbiA9IGxpbmVUZXh0Lmxlbmd0aDtcbiAgICAgICAgY29uc3QgbWlkID0gTWF0aC5jZWlsKGxlbiAvIDIpO1xuXG4gICAgICAgIGNvbnN0IGNvdW50ID0gdGhpcy5iaXNlY3Rpb24odGFyZ2V0SGVpZ2h0LCBtaWQsIDAsIGxlbiwgbGluZVRleHQsIHNoYWRvd1RleHRFbC5uYXRpdmVFbGVtZW50LmZpcnN0Q2hpbGQpO1xuICAgICAgICB0aGlzLnRleHQgPSBsaW5lVGV4dDtcbiAgICAgICAgdGhpcy50YXJnZXRDb3VudCA9IGNvdW50O1xuICAgICAgfVxuICAgICAgbmdab25lLnJ1bigoKSA9PiBjZHIuZGV0ZWN0Q2hhbmdlcygpKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldEVsKGNsczogc3RyaW5nKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcihjbHMpO1xuICB9XG5cbiAgcHJpdmF0ZSBleGVjdXRlT25TdGFibGUoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5uZ1pvbmUuaXNTdGFibGUpIHtcbiAgICAgIGZuKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubmdab25lLm9uU3RhYmxlLmFzT2JzZXJ2YWJsZSgpLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKGZuKTtcbiAgICB9XG4gIH1cblxuICByZWZyZXNoKCk6IHZvaWQge1xuICAgIHRoaXMuZ2VuVHlwZSgpO1xuICAgIGNvbnN0IHsgdHlwZSwgZG9tLCBvcmdFbCwgY2RyIH0gPSB0aGlzO1xuICAgIGNvbnN0IGh0bWwgPSBvcmdFbC5uYXRpdmVFbGVtZW50LmlubmVySFRNTDtcbiAgICB0aGlzLm9yZ0h0bWwgPSBkb20uYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwoaHRtbCk7XG4gICAgY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB0aGlzLmV4ZWN1dGVPblN0YWJsZSgoKSA9PiB7XG4gICAgICB0aGlzLmdlbigpO1xuICAgICAgaWYgKHR5cGUgIT09ICdsaW5lJykge1xuICAgICAgICBjb25zdCBlbCA9IHRoaXMuZ2V0RWwoJy5lbGxpcHNpcycpO1xuICAgICAgICBpZiAoZWwpIHtcbiAgICAgICAgICBlbC5pbm5lckhUTUwgPSBodG1sO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pbml0ZWQgPSB0cnVlO1xuICAgIHRoaXMucmVmcmVzaCgpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaW5pdGVkKSB7XG4gICAgICB0aGlzLnJlZnJlc2goKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgKGNka09ic2VydmVDb250ZW50KT1cInJlZnJlc2goKVwiICNvcmdFbCBzdHlsZT1cImRpc3BsYXk6IG5vbmVcIj48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9kaXY+XG48bmctdGVtcGxhdGUgI3Rvb2x0aXBUcGwgbGV0LWNvbj5cbiAgPHNwYW5cbiAgICAqbmdJZj1cInRvb2x0aXA7IGVsc2UgY29uXCJcbiAgICBuei10b29sdGlwXG4gICAgW256VG9vbHRpcFRpdGxlXT1cInRpdGxlVHBsXCJcbiAgICBbbnpUb29sdGlwT3ZlcmxheVN0eWxlXT1cInsgJ292ZXJmbG93LXdyYXAnOiAnYnJlYWstd29yZCcsICd3b3JkLXdyYXAnOiAnYnJlYWstd29yZCcgfVwiXG4gID5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29uXCI+PC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICN0aXRsZVRwbD48ZGl2IFtpbm5lckhUTUxdPVwib3JnSHRtbFwiPjwvZGl2PjwvbmctdGVtcGxhdGU+XG4gIDwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG48bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJ0eXBlXCI+XG4gIDxzcGFuICpuZ1N3aXRjaENhc2U9XCInZGVmYXVsdCdcIiBbbmdDbGFzc109XCJjbHNcIj48L3NwYW4+XG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidsZW5ndGgnXCI+XG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRvb2x0aXBUcGxcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGxlbmd0aFRwbCB9XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI2xlbmd0aFRwbD57eyB0ZXh0IH19PC9uZy10ZW1wbGF0ZT5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidsaW5lLWNsYW1wJ1wiPlxuICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJ0b29sdGlwVHBsXCIgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBsaW5lQ2xhbXBUcGwgfVwiPjwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlICNsaW5lQ2xhbXBUcGw+XG4gICAgICA8ZGl2IFtuZ0NsYXNzXT1cImNsc1wiIFtuZ1N0eWxlXT1cInsgJy13ZWJraXQtbGluZS1jbGFtcCc6IGxpbmVzLCAnLXdlYmtpdC1ib3gtb3JpZW50JzogJ3ZlcnRpY2FsJyB9XCI+PC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxkaXYgKm5nU3dpdGNoQ2FzZT1cIidsaW5lJ1wiIFtuZ0NsYXNzXT1cImNsc1wiPlxuICAgIDxkaXYgY2xhc3M9XCJlbGxpcHNpc19faGFuZGxlXCI+XG4gICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwidG9vbHRpcFRwbFwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogbGluZVRwbCB9XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjbGluZVRwbD57eyBsaW5zV29yZCB9fTwvbmctdGVtcGxhdGU+XG4gICAgICA8ZGl2IGNsYXNzPVwiZWxsaXBzaXNfX3NoYWRvd1wiICNzaGFkb3dPcmdFbCBbaW5uZXJIVE1MXT1cIm9yZ0h0bWxcIj48L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJlbGxpcHNpc19fc2hhZG93XCIgI3NoYWRvd1RleHRFbD5cbiAgICAgICAgPHNwYW4+e3sgdGV4dCB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
@@ -0,0 +1,21 @@
1
+ import { ObserversModule } from '@angular/cdk/observers';
2
+ import { CommonModule } from '@angular/common';
3
+ import { NgModule } from '@angular/core';
4
+ import { NzToolTipModule } from 'ng-zorro-antd/tooltip';
5
+ import { EllipsisComponent } from './ellipsis.component';
6
+ import * as i0 from "@angular/core";
7
+ const COMPONENTS = [EllipsisComponent];
8
+ export class EllipsisModule {
9
+ }
10
+ EllipsisModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EllipsisModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ EllipsisModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EllipsisModule, declarations: [EllipsisComponent], imports: [CommonModule, ObserversModule, NzToolTipModule], exports: [EllipsisComponent] });
12
+ EllipsisModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EllipsisModule, imports: [[CommonModule, ObserversModule, NzToolTipModule]] });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EllipsisModule, decorators: [{
14
+ type: NgModule,
15
+ args: [{
16
+ imports: [CommonModule, ObserversModule, NzToolTipModule],
17
+ declarations: COMPONENTS,
18
+ exports: COMPONENTS
19
+ }]
20
+ }] });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxsaXBzaXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWJjL2VsbGlwc2lzL2VsbGlwc2lzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXhELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQUV6RCxNQUFNLFVBQVUsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7QUFPdkMsTUFBTSxPQUFPLGNBQWM7OzJHQUFkLGNBQWM7NEdBQWQsY0FBYyxpQkFQUCxpQkFBaUIsYUFHekIsWUFBWSxFQUFFLGVBQWUsRUFBRSxlQUFlLGFBSHRDLGlCQUFpQjs0R0FPeEIsY0FBYyxZQUpoQixDQUFDLFlBQVksRUFBRSxlQUFlLEVBQUUsZUFBZSxDQUFDOzJGQUk5QyxjQUFjO2tCQUwxQixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxlQUFlLEVBQUUsZUFBZSxDQUFDO29CQUN6RCxZQUFZLEVBQUUsVUFBVTtvQkFDeEIsT0FBTyxFQUFFLFVBQVU7aUJBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2ZXJzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL29ic2VydmVycyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTnpUb29sVGlwTW9kdWxlIH0gZnJvbSAnbmctem9ycm8tYW50ZC90b29sdGlwJztcblxuaW1wb3J0IHsgRWxsaXBzaXNDb21wb25lbnQgfSBmcm9tICcuL2VsbGlwc2lzLmNvbXBvbmVudCc7XG5cbmNvbnN0IENPTVBPTkVOVFMgPSBbRWxsaXBzaXNDb21wb25lbnRdO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBPYnNlcnZlcnNNb2R1bGUsIE56VG9vbFRpcE1vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogQ09NUE9ORU5UUyxcbiAgZXhwb3J0czogQ09NUE9ORU5UU1xufSlcbmV4cG9ydCBjbGFzcyBFbGxpcHNpc01vZHVsZSB7fVxuIl19
@@ -0,0 +1,118 @@
1
+ import { __decorate } from "tslib";
2
+ import { DOCUMENT } from '@angular/common';
3
+ import { ChangeDetectionStrategy, Component, Inject, Input, Optional, ViewEncapsulation } from '@angular/core';
4
+ import { interval, Subject } from 'rxjs';
5
+ import { takeUntil } from 'rxjs/operators';
6
+ import { InputNumber } from '@delon/util/decorator';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@delon/util/config";
9
+ import * as i2 from "@angular/cdk/bidi";
10
+ import * as i3 from "ng-zorro-antd/icon";
11
+ export class ErrorCollectComponent {
12
+ constructor(el, cdr, doc, configSrv, directionality) {
13
+ this.el = el;
14
+ this.cdr = cdr;
15
+ this.doc = doc;
16
+ this.directionality = directionality;
17
+ this.formEl = null;
18
+ this.destroy$ = new Subject();
19
+ this._hiden = true;
20
+ this.count = 0;
21
+ this.dir = 'ltr';
22
+ configSrv.attach(this, 'errorCollect', { freq: 500, offsetTop: 65 + 64 + 8 * 2 });
23
+ }
24
+ get errEls() {
25
+ return this.formEl.querySelectorAll('.ant-form-item-has-error');
26
+ }
27
+ update() {
28
+ const count = this.errEls.length;
29
+ if (count === this.count)
30
+ return;
31
+ this.count = count;
32
+ this._hiden = count === 0;
33
+ this.cdr.markForCheck();
34
+ }
35
+ _click() {
36
+ if (this.count === 0)
37
+ return false;
38
+ // nz-form-control
39
+ const els = this.errEls;
40
+ const formItemEl = this.findParent(els[0], '[nz-form-control]') || els[0];
41
+ formItemEl.scrollIntoView(true);
42
+ // fix header height
43
+ this.doc.documentElement.scrollTop -= this.offsetTop;
44
+ return true;
45
+ }
46
+ install() {
47
+ this.dir = this.directionality.value;
48
+ this.directionality.change?.pipe(takeUntil(this.destroy$)).subscribe((direction) => {
49
+ this.dir = direction;
50
+ });
51
+ interval(this.freq)
52
+ .pipe(takeUntil(this.destroy$))
53
+ .subscribe(() => this.update());
54
+ this.update();
55
+ }
56
+ findParent(el, selector) {
57
+ let retEl = null;
58
+ while (el) {
59
+ if (el.querySelector(selector)) {
60
+ retEl = el;
61
+ break;
62
+ }
63
+ el = el.parentElement;
64
+ }
65
+ return retEl;
66
+ }
67
+ ngOnInit() {
68
+ this.formEl = this.findParent(this.el.nativeElement, 'form');
69
+ if (this.formEl === null)
70
+ throw new Error('No found form element');
71
+ this.install();
72
+ }
73
+ ngOnDestroy() {
74
+ this.destroy$.next();
75
+ this.destroy$.complete();
76
+ }
77
+ }
78
+ ErrorCollectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ErrorCollectComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: DOCUMENT }, { token: i1.AlainConfigService }, { token: i2.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Component });
79
+ ErrorCollectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: ErrorCollectComponent, selector: "error-collect, [error-collect]", inputs: { freq: "freq", offsetTop: "offsetTop" }, host: { listeners: { "click": "_click()" }, properties: { "class.error-collect": "true", "class.error-collect-rtl": "dir === 'rtl'", "class.d-none": "_hiden" } }, exportAs: ["errorCollect"], ngImport: i0, template: `
80
+ <i nz-icon nzType="exclamation-circle"></i>
81
+ <span class="error-collect__count">{{ count }}</span>
82
+ `, isInline: true, directives: [{ type: i3.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
83
+ __decorate([
84
+ InputNumber()
85
+ ], ErrorCollectComponent.prototype, "freq", void 0);
86
+ __decorate([
87
+ InputNumber()
88
+ ], ErrorCollectComponent.prototype, "offsetTop", void 0);
89
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ErrorCollectComponent, decorators: [{
90
+ type: Component,
91
+ args: [{
92
+ selector: 'error-collect, [error-collect]',
93
+ exportAs: 'errorCollect',
94
+ template: `
95
+ <i nz-icon nzType="exclamation-circle"></i>
96
+ <span class="error-collect__count">{{ count }}</span>
97
+ `,
98
+ host: {
99
+ '[class.error-collect]': 'true',
100
+ '[class.error-collect-rtl]': `dir === 'rtl'`,
101
+ '[class.d-none]': '_hiden',
102
+ '(click)': '_click()'
103
+ },
104
+ preserveWhitespaces: false,
105
+ changeDetection: ChangeDetectionStrategy.OnPush,
106
+ encapsulation: ViewEncapsulation.None
107
+ }]
108
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
109
+ type: Inject,
110
+ args: [DOCUMENT]
111
+ }] }, { type: i1.AlainConfigService }, { type: i2.Directionality, decorators: [{
112
+ type: Optional
113
+ }] }]; }, propDecorators: { freq: [{
114
+ type: Input
115
+ }], offsetTop: [{
116
+ type: Input
117
+ }] } });
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItY29sbGVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hYmMvZXJyb3ItY29sbGVjdC9lcnJvci1jb2xsZWN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUVULE1BQU0sRUFDTixLQUFLLEVBR0wsUUFBUSxFQUNSLGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN6QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7OztBQW9CcEQsTUFBTSxPQUFPLHFCQUFxQjtJQVdoQyxZQUNVLEVBQWMsRUFDZCxHQUFzQixFQUNKLEdBQWMsRUFDeEMsU0FBNkIsRUFDVCxjQUE4QjtRQUoxQyxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQ2QsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDSixRQUFHLEdBQUgsR0FBRyxDQUFXO1FBRXBCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQWY1QyxXQUFNLEdBQTJCLElBQUksQ0FBQztRQUN0QyxhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUV2QyxXQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ2QsVUFBSyxHQUFHLENBQUMsQ0FBQztRQUNWLFFBQUcsR0FBYyxLQUFLLENBQUM7UUFZckIsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFF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QUFlO0FBQ2Q7SUFBZCxXQUFXLEVBQUU7d0RBQW9COzJGQVRoQyxxQkFBcUI7a0JBakJqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQ0FBZ0M7b0JBQzFDLFFBQVEsRUFBRSxjQUFjO29CQUN4QixRQUFRLEVBQUU7OztHQUdUO29CQUNELElBQUksRUFBRTt3QkFDSix1QkFBdUIsRUFBRSxNQUFNO3dCQUMvQiwyQkFBMkIsRUFBRSxlQUFlO3dCQUM1QyxnQkFBZ0IsRUFBRSxRQUFRO3dCQUMxQixTQUFTLEVBQUUsVUFBVTtxQkFDdEI7b0JBQ0QsbUJBQW1CLEVBQUUsS0FBSztvQkFDMUIsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2lCQUN0Qzs7MEJBZUksTUFBTTsyQkFBQyxRQUFROzswQkFFZixRQUFROzRDQVJhLElBQUk7c0JBQTNCLEtBQUs7Z0JBQ2tCLFNBQVM7c0JBQWhDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3Rpb24sIERpcmVjdGlvbmFsaXR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBpbnRlcnZhbCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBBbGFpbkNvbmZpZ1NlcnZpY2UgfSBmcm9tICdAZGVsb24vdXRpbC9jb25maWcnO1xuaW1wb3J0IHsgSW5wdXROdW1iZXIgfSBmcm9tICdAZGVsb24vdXRpbC9kZWNvcmF0b3InO1xuaW1wb3J0IHR5cGUgeyBOelNhZmVBbnkgfSBmcm9tICduZy16b3Jyby1hbnRkL2NvcmUvdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlcnJvci1jb2xsZWN0LCBbZXJyb3ItY29sbGVjdF0nLFxuICBleHBvcnRBczogJ2Vycm9yQ29sbGVjdCcsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGkgbnotaWNvbiBuelR5cGU9XCJleGNsYW1hdGlvbi1jaXJjbGVcIj48L2k+XG4gICAgPHNwYW4gY2xhc3M9XCJlcnJvci1jb2xsZWN0X19jb3VudFwiPnt7IGNvdW50IH19PC9zcGFuPlxuICBgLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5lcnJvci1jb2xsZWN0XSc6ICd0cnVlJyxcbiAgICAnW2NsYXNzLmVycm9yLWNvbGxlY3QtcnRsXSc6IGBkaXIgPT09ICdydGwnYCxcbiAgICAnW2NsYXNzLmQtbm9uZV0nOiAnX2hpZGVuJyxcbiAgICAnKGNsaWNrKSc6ICdfY2xpY2soKSdcbiAgfSxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIEVycm9yQ29sbGVjdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBmb3JtRWw6IEhUTUxGb3JtRWxlbWVudCB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBfaGlkZW4gPSB0cnVlO1xuICBjb3VudCA9IDA7XG4gIGRpcjogRGlyZWN0aW9uID0gJ2x0cic7XG5cbiAgQElucHV0KCkgQElucHV0TnVtYmVyKCkgZnJlcSE6IG51bWJlcjtcbiAgQElucHV0KCkgQElucHV0TnVtYmVyKCkgb2Zmc2V0VG9wITogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jOiBOelNhZmVBbnksXG4gICAgY29uZmlnU3J2OiBBbGFpbkNvbmZpZ1NlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBkaXJlY3Rpb25hbGl0eTogRGlyZWN0aW9uYWxpdHlcbiAgKSB7XG4gICAgY29uZmlnU3J2LmF0dGFjaCh0aGlzLCAnZXJyb3JDb2xsZWN0JywgeyBmcmVxOiA1MDAsIG9mZnNldFRvcDogNjUgKyA2NCArIDggKiAyIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgZXJyRWxzKCk6IE5vZGVMaXN0T2Y8SFRNTEVsZW1lbnQ+IHtcbiAgICByZXR1cm4gdGhpcy5mb3JtRWwhLnF1ZXJ5U2VsZWN0b3JBbGwoJy5hbnQtZm9ybS1pdGVtLWhhcy1lcnJvcicpO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGUoKTogdm9pZCB7XG4gICAgY29uc3QgY291bnQgPSB0aGlzLmVyckVscy5sZW5ndGg7XG4gICAgaWYgKGNvdW50ID09PSB0aGlzLmNvdW50KSByZXR1cm47XG4gICAgdGhpcy5jb3VudCA9IGNvdW50O1xuICAgIHRoaXMuX2hpZGVuID0gY291bnQgPT09IDA7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBfY2xpY2soKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuY291bnQgPT09IDApIHJldHVybiBmYWxzZTtcbiAgICAvLyBuei1mb3JtLWNvbnRyb2xcbiAgICBjb25zdCBlbHMgPSB0aGlzLmVyckVscztcbiAgICBjb25zdCBmb3JtSXRlbUVsID0gdGhpcy5maW5kUGFyZW50KGVsc1swXSwgJ1tuei1mb3JtLWNvbnRyb2xdJykgfHwgZWxzWzBdO1xuICAgIGZvcm1JdGVtRWwuc2Nyb2xsSW50b1ZpZXcodHJ1ZSk7XG4gICAgLy8gZml4IGhlYWRlciBoZWlnaHRcbiAgICB0aGlzLmRvYy5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wIC09IHRoaXMub2Zmc2V0VG9wO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBpbnN0YWxsKCk6IHZvaWQge1xuICAgIHRoaXMuZGlyID0gdGhpcy5kaXJlY3Rpb25hbGl0eS52YWx1ZTtcbiAgICB0aGlzLmRpcmVjdGlvbmFsaXR5LmNoYW5nZT8ucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoZGlyZWN0aW9uOiBEaXJlY3Rpb24pID0+IHtcbiAgICAgIHRoaXMuZGlyID0gZGlyZWN0aW9uO1xuICAgIH0pO1xuICAgIGludGVydmFsKHRoaXMuZnJlcSlcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy51cGRhdGUoKSk7XG4gICAgdGhpcy51cGRhdGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgZmluZFBhcmVudChlbDogRWxlbWVudCwgc2VsZWN0b3I6IHN0cmluZyk6IEhUTUxGb3JtRWxlbWVudCB8IG51bGwge1xuICAgIGxldCByZXRFbDogSFRNTEZvcm1FbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gICAgd2hpbGUgKGVsKSB7XG4gICAgICBpZiAoZWwucXVlcnlTZWxlY3RvcihzZWxlY3RvcikpIHtcbiAgICAgICAgcmV0RWwgPSBlbCBhcyBIVE1MRm9ybUVsZW1lbnQ7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgZWwgPSBlbC5wYXJlbnRFbGVtZW50IGFzIEhUTUxGb3JtRWxlbWVudDtcbiAgICB9XG4gICAgcmV0dXJuIHJldEVsO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5mb3JtRWwgPSB0aGlzLmZpbmRQYXJlbnQodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnZm9ybScpO1xuICAgIGlmICh0aGlzLmZvcm1FbCA9PT0gbnVsbCkgdGhyb3cgbmV3IEVycm9yKCdObyBmb3VuZCBmb3JtIGVsZW1lbnQnKTtcbiAgICB0aGlzLmluc3RhbGwoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public_api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItY29sbGVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FiYy9lcnJvci1jb2xsZWN0L2Vycm9yLWNvbGxlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWNfYXBpJztcbiJdfQ==