@delon/abc 12.4.2 → 13.1.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 (755) 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} +597 -483
  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/style/index.less +6 -0
  394. package/package.json +274 -14
  395. package/page-header/package.json +6 -7
  396. package/page-header/page-header.component.d.ts +4 -1
  397. package/page-header/page-header.d.ts +5 -0
  398. package/page-header/page-header.module.d.ts +11 -0
  399. package/page-header/style/index.less +10 -0
  400. package/page-header/style/rtl.less +3 -0
  401. package/pdf/package.json +5 -6
  402. package/pdf/pdf.component.d.ts +5 -2
  403. package/pdf/pdf.d.ts +1 -0
  404. package/pdf/pdf.module.d.ts +7 -0
  405. package/qr/package.json +5 -6
  406. package/qr/qr.component.d.ts +13 -10
  407. package/qr/qr.d.ts +1 -0
  408. package/qr/qr.module.d.ts +6 -0
  409. package/quick-menu/package.json +6 -7
  410. package/quick-menu/quick-menu.component.d.ts +6 -3
  411. package/quick-menu/quick-menu.d.ts +5 -0
  412. package/quick-menu/quick-menu.module.d.ts +8 -0
  413. package/quick-menu/style/index.less +2 -0
  414. package/result/package.json +5 -6
  415. package/result/result.component.d.ts +6 -3
  416. package/result/result.d.ts +1 -0
  417. package/result/result.module.d.ts +8 -0
  418. package/result/style/index.less +7 -0
  419. package/reuse-tab/package.json +6 -7
  420. package/reuse-tab/reuse-tab-context-menu.component.d.ts +3 -0
  421. package/reuse-tab/reuse-tab-context.component.d.ts +4 -1
  422. package/reuse-tab/reuse-tab-context.directive.d.ts +3 -0
  423. package/reuse-tab/reuse-tab-context.service.d.ts +4 -1
  424. package/reuse-tab/reuse-tab.component.d.ts +13 -10
  425. package/reuse-tab/reuse-tab.d.ts +5 -0
  426. package/reuse-tab/reuse-tab.module.d.ts +15 -0
  427. package/reuse-tab/reuse-tab.service.d.ts +7 -4
  428. package/reuse-tab/style/index.less +4 -0
  429. package/se/package.json +6 -7
  430. package/se/public_api.d.ts +0 -1
  431. package/se/se-container.component.d.ts +18 -4
  432. package/se/se.component.d.ts +13 -8
  433. package/{footer-toolbar/footerToolbar.d.ts → se/se.d.ts} +1 -0
  434. package/se/se.module.d.ts +10 -0
  435. package/se/style/index.less +2 -0
  436. package/sg/package.json +6 -7
  437. package/sg/sg-container.component.d.ts +4 -1
  438. package/sg/sg.component.d.ts +4 -1
  439. package/{error-collect/errorCollect.d.ts → sg/sg.d.ts} +1 -0
  440. package/sg/sg.module.d.ts +7 -0
  441. package/st/package.json +6 -7
  442. package/st/st-column-source.d.ts +4 -1
  443. package/st/st-data-source.d.ts +3 -0
  444. package/st/st-export.d.ts +3 -0
  445. package/st/st-filter.component.d.ts +3 -0
  446. package/st/st-row.directive.d.ts +7 -2
  447. package/st/st-widget-host.directive.d.ts +5 -3
  448. package/st/st-widget.d.ts +3 -0
  449. package/st/st.component.d.ts +38 -11
  450. package/{down-file/downFile.d.ts → st/st.d.ts} +1 -0
  451. package/st/st.interfaces.d.ts +2 -2
  452. package/st/st.module.d.ts +27 -0
  453. package/st/style/index.less +8 -0
  454. package/sv/package.json +6 -7
  455. package/sv/public_api.d.ts +0 -1
  456. package/sv/style/index.less +8 -0
  457. package/sv/sv-container.component.d.ts +16 -3
  458. package/sv/sv-value.component.d.ts +3 -0
  459. package/sv/sv.component.d.ts +13 -10
  460. package/{avatar-list/avatarList.d.ts → sv/sv.d.ts} +1 -0
  461. package/sv/sv.module.d.ts +12 -0
  462. package/tag-select/package.json +6 -7
  463. package/tag-select/style/index.less +4 -0
  464. package/tag-select/style/rtl.less +3 -0
  465. package/tag-select/tag-select.component.d.ts +3 -0
  466. package/tag-select/tag-select.d.ts +5 -0
  467. package/tag-select/tag-select.module.d.ts +8 -0
  468. package/xlsx/package.json +5 -6
  469. package/xlsx/xlsx.d.ts +1 -0
  470. package/xlsx/xlsx.directive.d.ts +3 -0
  471. package/xlsx/xlsx.module.d.ts +6 -0
  472. package/xlsx/xlsx.service.d.ts +3 -0
  473. package/zip/package.json +5 -6
  474. package/zip/zip.d.ts +1 -0
  475. package/zip/zip.module.d.ts +5 -0
  476. package/zip/zip.service.d.ts +3 -0
  477. package/abc.metadata.json +0 -1
  478. package/auto-focus/autoFocus.metadata.json +0 -1
  479. package/avatar-list/avatarList.metadata.json +0 -1
  480. package/bundles/abc.umd.js +0 -19
  481. package/bundles/abc.umd.js.map +0 -1
  482. package/bundles/autoFocus.umd.js +0 -394
  483. package/bundles/autoFocus.umd.js.map +0 -1
  484. package/bundles/avatarList.umd.js +0 -465
  485. package/bundles/avatarList.umd.js.map +0 -1
  486. package/bundles/count-down.umd.js +0 -75
  487. package/bundles/count-down.umd.js.map +0 -1
  488. package/bundles/datePicker.umd.js +0 -552
  489. package/bundles/datePicker.umd.js.map +0 -1
  490. package/bundles/downFile.umd.js +0 -474
  491. package/bundles/downFile.umd.js.map +0 -1
  492. package/bundles/edit.umd.js +0 -776
  493. package/bundles/edit.umd.js.map +0 -1
  494. package/bundles/ellipsis.umd.js +0 -578
  495. package/bundles/ellipsis.umd.js.map +0 -1
  496. package/bundles/errorCollect.umd.js +0 -461
  497. package/bundles/errorCollect.umd.js.map +0 -1
  498. package/bundles/exception.umd.js +0 -150
  499. package/bundles/exception.umd.js.map +0 -1
  500. package/bundles/footerToolbar.umd.js +0 -401
  501. package/bundles/footerToolbar.umd.js.map +0 -1
  502. package/bundles/fullContent.umd.js +0 -550
  503. package/bundles/fullContent.umd.js.map +0 -1
  504. package/bundles/globalFooter.umd.js +0 -455
  505. package/bundles/globalFooter.umd.js.map +0 -1
  506. package/bundles/grid.umd.js +0 -470
  507. package/bundles/grid.umd.js.map +0 -1
  508. package/bundles/image.umd.js +0 -482
  509. package/bundles/image.umd.js.map +0 -1
  510. package/bundles/let.umd.js +0 -76
  511. package/bundles/let.umd.js.map +0 -1
  512. package/bundles/loading.umd.js +0 -181
  513. package/bundles/loading.umd.js.map +0 -1
  514. package/bundles/lodop.umd.js +0 -605
  515. package/bundles/lodop.umd.js.map +0 -1
  516. package/bundles/media.umd.js +0 -536
  517. package/bundles/media.umd.js.map +0 -1
  518. package/bundles/noticeIcon.umd.js +0 -468
  519. package/bundles/noticeIcon.umd.js.map +0 -1
  520. package/bundles/onboarding.umd.js +0 -370
  521. package/bundles/onboarding.umd.js.map +0 -1
  522. package/bundles/pageHeader.umd.js +0 -570
  523. package/bundles/pageHeader.umd.js.map +0 -1
  524. package/bundles/pdf.umd.js +0 -863
  525. package/bundles/pdf.umd.js.map +0 -1
  526. package/bundles/qr.umd.js +0 -491
  527. package/bundles/qr.umd.js.map +0 -1
  528. package/bundles/quickMenu.umd.js +0 -442
  529. package/bundles/quickMenu.umd.js.map +0 -1
  530. package/bundles/result.umd.js +0 -100
  531. package/bundles/result.umd.js.map +0 -1
  532. package/bundles/reuseTab.umd.js +0 -1522
  533. package/bundles/reuseTab.umd.js.map +0 -1
  534. package/bundles/table.umd.js +0 -2590
  535. package/bundles/table.umd.js.map +0 -1
  536. package/bundles/tagSelect.umd.js +0 -419
  537. package/bundles/tagSelect.umd.js.map +0 -1
  538. package/bundles/view.umd.js +0 -592
  539. package/bundles/view.umd.js.map +0 -1
  540. package/bundles/xlsx.umd.js +0 -529
  541. package/bundles/xlsx.umd.js.map +0 -1
  542. package/bundles/zip.umd.js +0 -482
  543. package/bundles/zip.umd.js.map +0 -1
  544. package/count-down/count-down.metadata.json +0 -1
  545. package/date-picker/datePicker.d.ts +0 -5
  546. package/date-picker/datePicker.metadata.json +0 -1
  547. package/down-file/downFile.metadata.json +0 -1
  548. package/ellipsis/ellipsis.metadata.json +0 -1
  549. package/error-collect/errorCollect.metadata.json +0 -1
  550. package/esm2015/auto-focus/auto-focus.directive.js +0 -42
  551. package/esm2015/auto-focus/auto-focus.module.js +0 -12
  552. package/esm2015/auto-focus/autoFocus.js +0 -5
  553. package/esm2015/avatar-list/avatar-list-item.component.js +0 -20
  554. package/esm2015/avatar-list/avatar-list.component.js +0 -89
  555. package/esm2015/avatar-list/avatar-list.module.js +0 -17
  556. package/esm2015/avatar-list/avatarList.js +0 -5
  557. package/esm2015/count-down/count-down.component.js +0 -36
  558. package/esm2015/count-down/count-down.module.js +0 -15
  559. package/esm2015/date-picker/date-picker.module.js +0 -17
  560. package/esm2015/date-picker/datePicker.js +0 -6
  561. package/esm2015/date-picker/range-shortcut.component.js +0 -26
  562. package/esm2015/date-picker/range.directive.js +0 -171
  563. package/esm2015/down-file/down-file.directive.js +0 -103
  564. package/esm2015/down-file/down-file.module.js +0 -15
  565. package/esm2015/down-file/downFile.js +0 -5
  566. package/esm2015/ellipsis/ellipsis.component.js +0 -224
  567. package/esm2015/ellipsis/ellipsis.module.js +0 -16
  568. package/esm2015/error-collect/error-collect.component.js +0 -112
  569. package/esm2015/error-collect/error-collect.module.js +0 -15
  570. package/esm2015/error-collect/errorCollect.js +0 -5
  571. package/esm2015/exception/exception.component.js +0 -103
  572. package/esm2015/exception/exception.module.js +0 -18
  573. package/esm2015/footer-toolbar/footer-toolbar.component.js +0 -46
  574. package/esm2015/footer-toolbar/footer-toolbar.module.js +0 -16
  575. package/esm2015/footer-toolbar/footerToolbar.js +0 -5
  576. package/esm2015/full-content/full-content-toggle.directive.js +0 -23
  577. package/esm2015/full-content/full-content.component.js +0 -135
  578. package/esm2015/full-content/full-content.module.js +0 -15
  579. package/esm2015/full-content/full-content.service.js +0 -21
  580. package/esm2015/full-content/fullContent.js +0 -5
  581. package/esm2015/global-footer/global-footer-item.component.js +0 -24
  582. package/esm2015/global-footer/global-footer.component.js +0 -77
  583. package/esm2015/global-footer/global-footer.module.js +0 -16
  584. package/esm2015/global-footer/globalFooter.js +0 -5
  585. package/esm2015/image/image.directive.js +0 -133
  586. package/esm2015/image/image.module.js +0 -15
  587. package/esm2015/let/let.directive.js +0 -31
  588. package/esm2015/let/let.module.js +0 -12
  589. package/esm2015/loading/loading.component.js +0 -26
  590. package/esm2015/loading/loading.module.js +0 -19
  591. package/esm2015/loading/loading.service.js +0 -92
  592. package/esm2015/lodop/lodop.module.js +0 -7
  593. package/esm2015/lodop/lodop.service.js +0 -219
  594. package/esm2015/lodop/lodop.types.js +0 -2
  595. package/esm2015/media/media.component.js +0 -104
  596. package/esm2015/media/media.module.js +0 -14
  597. package/esm2015/media/media.service.js +0 -53
  598. package/esm2015/notice-icon/notice-icon-tab.component.js +0 -30
  599. package/esm2015/notice-icon/notice-icon.component.js +0 -74
  600. package/esm2015/notice-icon/notice-icon.module.js +0 -35
  601. package/esm2015/notice-icon/noticeIcon.js +0 -5
  602. package/esm2015/onboarding/onboarding.component.js +0 -130
  603. package/esm2015/onboarding/onboarding.module.js +0 -20
  604. package/esm2015/onboarding/onboarding.service.js +0 -178
  605. package/esm2015/page-header/page-header.component.js +0 -216
  606. package/esm2015/page-header/page-header.module.js +0 -19
  607. package/esm2015/page-header/pageHeader.js +0 -5
  608. package/esm2015/pdf/pdf.component.js +0 -433
  609. package/esm2015/pdf/pdf.module.js +0 -15
  610. package/esm2015/qr/qr.component.js +0 -128
  611. package/esm2015/qr/qr.module.js +0 -14
  612. package/esm2015/quick-menu/quick-menu.component.js +0 -90
  613. package/esm2015/quick-menu/quick-menu.module.js +0 -16
  614. package/esm2015/quick-menu/quickMenu.js +0 -5
  615. package/esm2015/result/result.component.js +0 -62
  616. package/esm2015/result/result.module.js +0 -16
  617. package/esm2015/reuse-tab/reuse-tab-context-menu.component.js +0 -74
  618. package/esm2015/reuse-tab/reuse-tab-context.component.js +0 -32
  619. package/esm2015/reuse-tab/reuse-tab-context.directive.js +0 -33
  620. package/esm2015/reuse-tab/reuse-tab-context.service.js +0 -53
  621. package/esm2015/reuse-tab/reuse-tab.component.js +0 -300
  622. package/esm2015/reuse-tab/reuse-tab.module.js +0 -24
  623. package/esm2015/reuse-tab/reuse-tab.service.js +0 -534
  624. package/esm2015/reuse-tab/reuseTab.js +0 -5
  625. package/esm2015/se/edit.js +0 -5
  626. package/esm2015/se/public_api.js +0 -6
  627. package/esm2015/se/se-container.component.js +0 -115
  628. package/esm2015/se/se-title.component.js +0 -40
  629. package/esm2015/se/se.component.js +0 -214
  630. package/esm2015/se/se.module.js +0 -19
  631. package/esm2015/sg/grid.js +0 -5
  632. package/esm2015/sg/sg-container.component.js +0 -49
  633. package/esm2015/sg/sg.component.js +0 -65
  634. package/esm2015/sg/sg.module.js +0 -15
  635. package/esm2015/st/st-column-source.js +0 -428
  636. package/esm2015/st/st-data-source.js +0 -429
  637. package/esm2015/st/st-export.js +0 -90
  638. package/esm2015/st/st-filter.component.js +0 -149
  639. package/esm2015/st/st-row.directive.js +0 -40
  640. package/esm2015/st/st-td.component.js +0 -232
  641. package/esm2015/st/st-widget-host.directive.js +0 -34
  642. package/esm2015/st/st-widget.js +0 -24
  643. package/esm2015/st/st.component.js +0 -788
  644. package/esm2015/st/st.interfaces.js +0 -2
  645. package/esm2015/st/st.module.js +0 -56
  646. package/esm2015/st/table.js +0 -8
  647. package/esm2015/sv/public_api.js +0 -6
  648. package/esm2015/sv/sv-container.component.js +0 -63
  649. package/esm2015/sv/sv-title.component.js +0 -40
  650. package/esm2015/sv/sv-value.component.js +0 -32
  651. package/esm2015/sv/sv.component.js +0 -105
  652. package/esm2015/sv/sv.module.js +0 -21
  653. package/esm2015/sv/view.js +0 -5
  654. package/esm2015/tag-select/tag-select.component.js +0 -70
  655. package/esm2015/tag-select/tag-select.module.js +0 -16
  656. package/esm2015/tag-select/tagSelect.js +0 -5
  657. package/esm2015/xlsx/xlsx.directive.js +0 -26
  658. package/esm2015/xlsx/xlsx.module.js +0 -14
  659. package/esm2015/xlsx/xlsx.service.js +0 -129
  660. package/esm2015/zip/zip.module.js +0 -10
  661. package/esm2015/zip/zip.service.js +0 -115
  662. package/exception/exception.metadata.json +0 -1
  663. package/fesm2015/abc.js.map +0 -1
  664. package/fesm2015/autoFocus.js +0 -59
  665. package/fesm2015/autoFocus.js.map +0 -1
  666. package/fesm2015/avatarList.js +0 -128
  667. package/fesm2015/avatarList.js.map +0 -1
  668. package/fesm2015/count-down.js +0 -56
  669. package/fesm2015/count-down.js.map +0 -1
  670. package/fesm2015/datePicker.js.map +0 -1
  671. package/fesm2015/downFile.js +0 -122
  672. package/fesm2015/downFile.js.map +0 -1
  673. package/fesm2015/edit.js +0 -396
  674. package/fesm2015/edit.js.map +0 -1
  675. package/fesm2015/ellipsis.js +0 -244
  676. package/fesm2015/ellipsis.js.map +0 -1
  677. package/fesm2015/errorCollect.js +0 -131
  678. package/fesm2015/errorCollect.js.map +0 -1
  679. package/fesm2015/exception.js +0 -125
  680. package/fesm2015/exception.js.map +0 -1
  681. package/fesm2015/footerToolbar.js +0 -66
  682. package/fesm2015/footerToolbar.js.map +0 -1
  683. package/fesm2015/fullContent.js +0 -191
  684. package/fesm2015/fullContent.js.map +0 -1
  685. package/fesm2015/globalFooter.js +0 -118
  686. package/fesm2015/globalFooter.js.map +0 -1
  687. package/fesm2015/grid.js +0 -129
  688. package/fesm2015/grid.js.map +0 -1
  689. package/fesm2015/image.js +0 -152
  690. package/fesm2015/image.js.map +0 -1
  691. package/fesm2015/let.js +0 -48
  692. package/fesm2015/let.js.map +0 -1
  693. package/fesm2015/loading.js +0 -138
  694. package/fesm2015/loading.js.map +0 -1
  695. package/fesm2015/lodop.js.map +0 -1
  696. package/fesm2015/media.js +0 -174
  697. package/fesm2015/media.js.map +0 -1
  698. package/fesm2015/noticeIcon.js +0 -141
  699. package/fesm2015/noticeIcon.js.map +0 -1
  700. package/fesm2015/onboarding.js +0 -328
  701. package/fesm2015/onboarding.js.map +0 -1
  702. package/fesm2015/pageHeader.js +0 -239
  703. package/fesm2015/pageHeader.js.map +0 -1
  704. package/fesm2015/pdf.js.map +0 -1
  705. package/fesm2015/qr.js +0 -159
  706. package/fesm2015/qr.js.map +0 -1
  707. package/fesm2015/quickMenu.js +0 -111
  708. package/fesm2015/quickMenu.js.map +0 -1
  709. package/fesm2015/result.js +0 -83
  710. package/fesm2015/result.js.map +0 -1
  711. package/fesm2015/reuseTab.js.map +0 -1
  712. package/fesm2015/table.js.map +0 -1
  713. package/fesm2015/tagSelect.js +0 -90
  714. package/fesm2015/tagSelect.js.map +0 -1
  715. package/fesm2015/view.js +0 -256
  716. package/fesm2015/view.js.map +0 -1
  717. package/fesm2015/xlsx.js.map +0 -1
  718. package/fesm2015/zip.js.map +0 -1
  719. package/footer-toolbar/footerToolbar.metadata.json +0 -1
  720. package/full-content/fullContent.d.ts +0 -4
  721. package/full-content/fullContent.metadata.json +0 -1
  722. package/global-footer/globalFooter.d.ts +0 -4
  723. package/global-footer/globalFooter.metadata.json +0 -1
  724. package/image/image.metadata.json +0 -1
  725. package/let/let.metadata.json +0 -1
  726. package/loading/loading.metadata.json +0 -1
  727. package/lodop/lodop.metadata.json +0 -1
  728. package/media/media.metadata.json +0 -1
  729. package/notice-icon/noticeIcon.d.ts +0 -4
  730. package/notice-icon/noticeIcon.metadata.json +0 -1
  731. package/onboarding/onboarding.metadata.json +0 -1
  732. package/page-header/pageHeader.d.ts +0 -4
  733. package/page-header/pageHeader.metadata.json +0 -1
  734. package/pdf/pdf.metadata.json +0 -1
  735. package/qr/qr.metadata.json +0 -1
  736. package/quick-menu/quickMenu.d.ts +0 -4
  737. package/quick-menu/quickMenu.metadata.json +0 -1
  738. package/result/result.metadata.json +0 -1
  739. package/reuse-tab/reuseTab.d.ts +0 -4
  740. package/reuse-tab/reuseTab.metadata.json +0 -1
  741. package/se/edit.d.ts +0 -4
  742. package/se/edit.metadata.json +0 -1
  743. package/se/se-title.component.d.ts +0 -10
  744. package/sg/grid.d.ts +0 -4
  745. package/sg/grid.metadata.json +0 -1
  746. package/st/st-td.component.d.ts +0 -27
  747. package/st/table.d.ts +0 -7
  748. package/st/table.metadata.json +0 -1
  749. package/sv/sv-title.component.d.ts +0 -10
  750. package/sv/view.d.ts +0 -4
  751. package/sv/view.metadata.json +0 -1
  752. package/tag-select/tagSelect.d.ts +0 -4
  753. package/tag-select/tagSelect.metadata.json +0 -1
  754. package/xlsx/xlsx.metadata.json +0 -1
  755. package/zip/zip.metadata.json +0 -1
@@ -0,0 +1,141 @@
1
+ import { __awaiter } from 'tslib';
2
+ import * as i0 from '@angular/core';
3
+ import { EventEmitter, Directive, Input, Output, NgModule } from '@angular/core';
4
+ import { finalize } from 'rxjs/operators';
5
+ import { saveAs } from 'file-saver';
6
+ import * as i1 from '@delon/theme';
7
+ import { AlainThemeModule } from '@delon/theme';
8
+ import { CommonModule } from '@angular/common';
9
+
10
+ class DownFileDirective {
11
+ constructor(el, _http) {
12
+ this.el = el;
13
+ this._http = _http;
14
+ this.isFileSaverSupported = true;
15
+ this.httpMethod = 'get';
16
+ this.success = new EventEmitter();
17
+ this.error = new EventEmitter();
18
+ let isFileSaverSupported = false;
19
+ try {
20
+ isFileSaverSupported = !!new Blob();
21
+ }
22
+ catch (_a) { }
23
+ this.isFileSaverSupported = isFileSaverSupported;
24
+ if (!isFileSaverSupported) {
25
+ el.nativeElement.classList.add(`down-file__not-support`);
26
+ }
27
+ }
28
+ getDisposition(data) {
29
+ const arr = (data || '')
30
+ .split(';')
31
+ .filter(i => i.includes('='))
32
+ .map(v => {
33
+ const strArr = v.split('=');
34
+ const utfId = `UTF-8''`;
35
+ let value = strArr[1];
36
+ if (value.startsWith(utfId))
37
+ value = value.substring(utfId.length);
38
+ return { [strArr[0].trim()]: value };
39
+ });
40
+ return arr.reduce((_o, item) => item, {});
41
+ }
42
+ setDisabled(status) {
43
+ const el = this.el.nativeElement;
44
+ el.disabled = status;
45
+ el.classList[status ? 'add' : 'remove'](`down-file__disabled`);
46
+ }
47
+ _click(ev) {
48
+ return __awaiter(this, void 0, void 0, function* () {
49
+ if (!this.isFileSaverSupported || (typeof this.pre === 'function' && !(yield this.pre(ev)))) {
50
+ ev.stopPropagation();
51
+ ev.preventDefault();
52
+ return;
53
+ }
54
+ this.setDisabled(true);
55
+ this._http
56
+ .request(this.httpMethod, this.httpUrl, {
57
+ params: this.httpData || {},
58
+ responseType: 'blob',
59
+ observe: 'response',
60
+ body: this.httpBody
61
+ })
62
+ .pipe(finalize(() => this.setDisabled(false)))
63
+ .subscribe({
64
+ next: (res) => {
65
+ if (res.status !== 200 || res.body.size <= 0) {
66
+ this.error.emit(res);
67
+ return;
68
+ }
69
+ const disposition = this.getDisposition(res.headers.get('content-disposition'));
70
+ let fileName = this.fileName;
71
+ if (typeof fileName === 'function')
72
+ fileName = fileName(res);
73
+ fileName =
74
+ fileName ||
75
+ disposition[`filename*`] ||
76
+ disposition[`filename`] ||
77
+ res.headers.get('filename') ||
78
+ res.headers.get('x-filename');
79
+ saveAs(res.body, decodeURI(fileName));
80
+ this.success.emit(res);
81
+ },
82
+ error: err => this.error.emit(err)
83
+ });
84
+ });
85
+ }
86
+ }
87
+ DownFileDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: DownFileDirective, deps: [{ token: i0.ElementRef }, { token: i1._HttpClient }], target: i0.ɵɵFactoryTarget.Directive });
88
+ DownFileDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.2", 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 });
89
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: DownFileDirective, decorators: [{
90
+ type: Directive,
91
+ args: [{
92
+ selector: '[down-file]',
93
+ exportAs: 'downFile',
94
+ host: {
95
+ '(click)': '_click($event)'
96
+ }
97
+ }]
98
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1._HttpClient }]; }, propDecorators: { httpData: [{
99
+ type: Input,
100
+ args: ['http-data']
101
+ }], httpBody: [{
102
+ type: Input,
103
+ args: ['http-body']
104
+ }], httpMethod: [{
105
+ type: Input,
106
+ args: ['http-method']
107
+ }], httpUrl: [{
108
+ type: Input,
109
+ args: ['http-url']
110
+ }], fileName: [{
111
+ type: Input,
112
+ args: ['file-name']
113
+ }], pre: [{
114
+ type: Input
115
+ }], success: [{
116
+ type: Output
117
+ }], error: [{
118
+ type: Output
119
+ }] } });
120
+
121
+ const DIRECTIVES = [DownFileDirective];
122
+ class DownFileModule {
123
+ }
124
+ DownFileModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: DownFileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
125
+ DownFileModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: DownFileModule, declarations: [DownFileDirective], imports: [CommonModule, AlainThemeModule], exports: [DownFileDirective] });
126
+ DownFileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: DownFileModule, imports: [[CommonModule, AlainThemeModule]] });
127
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: DownFileModule, decorators: [{
128
+ type: NgModule,
129
+ args: [{
130
+ imports: [CommonModule, AlainThemeModule],
131
+ declarations: [...DIRECTIVES],
132
+ exports: [...DIRECTIVES]
133
+ }]
134
+ }] });
135
+
136
+ /**
137
+ * Generated bundle index. Do not edit.
138
+ */
139
+
140
+ export { DownFileDirective, DownFileModule };
141
+ //# sourceMappingURL=down-file.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"down-file.mjs","sources":["../../../../packages/abc/down-file/down-file.directive.ts","../../../../packages/abc/down-file/down-file.module.ts","../../../../packages/abc/down-file/down-file.ts"],"sourcesContent":["import { HttpResponse } from '@angular/common/http';\nimport { Directive, ElementRef, EventEmitter, Input, Output } from '@angular/core';\nimport { finalize } from 'rxjs/operators';\n\nimport { saveAs } from 'file-saver';\n\nimport { _HttpClient } from '@delon/theme';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\n@Directive({\n selector: '[down-file]',\n exportAs: 'downFile',\n host: {\n '(click)': '_click($event)'\n }\n})\nexport class DownFileDirective {\n private isFileSaverSupported = true;\n @Input('http-data') httpData: NzSafeAny;\n @Input('http-body') httpBody: NzSafeAny;\n @Input('http-method') httpMethod: string = 'get';\n @Input('http-url') httpUrl!: string;\n @Input('file-name') fileName?: string | ((rep: HttpResponse<Blob>) => string);\n @Input() pre?: (ev: MouseEvent) => Promise<boolean>;\n @Output() readonly success = new EventEmitter<HttpResponse<Blob>>();\n @Output() readonly error = new EventEmitter<NzSafeAny>();\n\n private getDisposition(data: string | null): NzSafeAny {\n const arr: Array<Record<string, string>> = (data || '')\n .split(';')\n .filter(i => i.includes('='))\n .map(v => {\n const strArr = v.split('=');\n const utfId = `UTF-8''`;\n let value = strArr[1];\n if (value.startsWith(utfId)) value = value.substring(utfId.length);\n return { [strArr[0].trim()]: value };\n });\n return arr.reduce((_o, item) => item, {});\n }\n\n constructor(private el: ElementRef<HTMLButtonElement>, private _http: _HttpClient) {\n let isFileSaverSupported = false;\n try {\n isFileSaverSupported = !!new Blob();\n } catch {}\n this.isFileSaverSupported = isFileSaverSupported;\n if (!isFileSaverSupported) {\n el.nativeElement.classList.add(`down-file__not-support`);\n }\n }\n\n private setDisabled(status: boolean): void {\n const el = this.el.nativeElement;\n el.disabled = status;\n el.classList[status ? 'add' : 'remove'](`down-file__disabled`);\n }\n\n async _click(ev: MouseEvent): Promise<void> {\n if (!this.isFileSaverSupported || (typeof this.pre === 'function' && !(await this.pre(ev)))) {\n ev.stopPropagation();\n ev.preventDefault();\n return;\n }\n this.setDisabled(true);\n this._http\n .request(this.httpMethod, this.httpUrl, {\n params: this.httpData || {},\n responseType: 'blob',\n observe: 'response',\n body: this.httpBody\n })\n .pipe(finalize(() => this.setDisabled(false)))\n .subscribe({\n next: (res: HttpResponse<Blob>) => {\n if (res.status !== 200 || res.body!.size <= 0) {\n this.error.emit(res);\n return;\n }\n const disposition = this.getDisposition(res.headers.get('content-disposition'));\n let fileName = this.fileName;\n if (typeof fileName === 'function') fileName = fileName(res);\n fileName =\n fileName ||\n disposition[`filename*`] ||\n disposition[`filename`] ||\n res.headers.get('filename') ||\n res.headers.get('x-filename');\n saveAs(res.body!, decodeURI(fileName as string));\n this.success.emit(res);\n },\n error: err => this.error.emit(err)\n });\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { AlainThemeModule } from '@delon/theme';\n\nimport { DownFileDirective } from './down-file.directive';\n\nconst DIRECTIVES = [DownFileDirective];\n\n@NgModule({\n imports: [CommonModule, AlainThemeModule],\n declarations: [...DIRECTIVES],\n exports: [...DIRECTIVES]\n})\nexport class DownFileModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,255 @@
1
+ import { __decorate } from 'tslib';
2
+ import * as i3 from '@angular/common';
3
+ import { DOCUMENT, CommonModule } from '@angular/common';
4
+ import * as i0 from '@angular/core';
5
+ import { Component, ChangeDetectionStrategy, ViewEncapsulation, Inject, ViewChild, Input, NgModule } from '@angular/core';
6
+ import { take } from 'rxjs/operators';
7
+ import { InputBoolean, InputNumber } from '@delon/util/decorator';
8
+ import * as i1 from '@angular/platform-browser';
9
+ import * as i2 from '@angular/cdk/observers';
10
+ import { ObserversModule } from '@angular/cdk/observers';
11
+ import * as i4 from 'ng-zorro-antd/tooltip';
12
+ import { NzToolTipModule } from 'ng-zorro-antd/tooltip';
13
+
14
+ class EllipsisComponent {
15
+ constructor(el, ngZone, dom, doc, cdr) {
16
+ this.el = el;
17
+ this.ngZone = ngZone;
18
+ this.dom = dom;
19
+ this.doc = doc;
20
+ this.cdr = cdr;
21
+ this.isSupportLineClamp = this.doc.body.style['webkitLineClamp'] !== undefined;
22
+ this.inited = false;
23
+ this.type = 'default';
24
+ this.cls = {};
25
+ this.text = '';
26
+ this.targetCount = 0;
27
+ this.tooltip = false;
28
+ this.fullWidthRecognition = false;
29
+ this.tail = '...';
30
+ }
31
+ get linsWord() {
32
+ const { targetCount, text, tail } = this;
33
+ return ((targetCount > 0 ? text.substring(0, targetCount) : '') +
34
+ (targetCount > 0 && targetCount < text.length ? tail : ''));
35
+ }
36
+ getStrFullLength(str) {
37
+ return str.split('').reduce((pre, cur) => {
38
+ const charCode = cur.charCodeAt(0);
39
+ if (charCode >= 0 && charCode <= 128) {
40
+ return pre + 1;
41
+ }
42
+ return pre + 2;
43
+ }, 0);
44
+ }
45
+ cutStrByFullLength(str, maxLength) {
46
+ let showLength = 0;
47
+ return str.split('').reduce((pre, cur) => {
48
+ const charCode = cur.charCodeAt(0);
49
+ if (charCode >= 0 && charCode <= 128) {
50
+ showLength += 1;
51
+ }
52
+ else {
53
+ showLength += 2;
54
+ }
55
+ if (showLength <= maxLength) {
56
+ return pre + cur;
57
+ }
58
+ return pre;
59
+ }, '');
60
+ }
61
+ bisection(targetHeight, mid, begin, end, text, node) {
62
+ const suffix = this.tail;
63
+ node.innerHTML = text.substring(0, mid) + suffix;
64
+ let sh = node.offsetHeight;
65
+ if (sh <= targetHeight) {
66
+ node.innerHTML = text.substring(0, mid + 1) + suffix;
67
+ sh = node.offsetHeight;
68
+ if (sh > targetHeight || mid === begin) {
69
+ return mid;
70
+ }
71
+ begin = mid;
72
+ mid = end - begin === 1 ? begin + 1 : Math.floor((end - begin) / 2) + begin;
73
+ return this.bisection(targetHeight, mid, begin, end, text, node);
74
+ }
75
+ if (mid - 1 < 0) {
76
+ return mid;
77
+ }
78
+ node.innerHTML = text.substring(0, mid - 1) + suffix;
79
+ sh = node.offsetHeight;
80
+ if (sh <= targetHeight) {
81
+ return mid - 1;
82
+ }
83
+ end = mid;
84
+ mid = Math.floor((end - begin) / 2) + begin;
85
+ return this.bisection(targetHeight, mid, begin, end, text, node);
86
+ }
87
+ genType() {
88
+ const { lines, length, isSupportLineClamp } = this;
89
+ this.cls = {
90
+ ellipsis: true,
91
+ ellipsis__lines: lines && !isSupportLineClamp,
92
+ 'ellipsis__line-clamp': lines && isSupportLineClamp
93
+ };
94
+ if (!lines && !length) {
95
+ this.type = 'default';
96
+ }
97
+ else if (!lines) {
98
+ this.type = 'length';
99
+ }
100
+ else if (isSupportLineClamp) {
101
+ this.type = 'line-clamp';
102
+ }
103
+ else {
104
+ this.type = 'line';
105
+ }
106
+ }
107
+ gen() {
108
+ const { type, lines, length, fullWidthRecognition, tail, orgEl, cdr, ngZone } = this;
109
+ if (type === 'length') {
110
+ const el = orgEl.nativeElement;
111
+ if (el.children.length > 0) {
112
+ throw new Error('Ellipsis content must be string.');
113
+ }
114
+ const lengthText = el.textContent;
115
+ const textLength = fullWidthRecognition ? this.getStrFullLength(lengthText) : lengthText.length;
116
+ if (textLength <= length || length < 0) {
117
+ this.text = lengthText;
118
+ }
119
+ else {
120
+ let displayText;
121
+ if (length - tail.length <= 0) {
122
+ displayText = '';
123
+ }
124
+ else {
125
+ displayText = fullWidthRecognition
126
+ ? this.cutStrByFullLength(lengthText, length)
127
+ : lengthText.slice(0, length);
128
+ }
129
+ this.text = displayText + tail;
130
+ }
131
+ ngZone.run(() => cdr.detectChanges());
132
+ }
133
+ else if (type === 'line') {
134
+ const { shadowOrgEl, shadowTextEl } = this;
135
+ const orgNode = shadowOrgEl.nativeElement;
136
+ const lineText = orgNode.innerText || orgNode.textContent;
137
+ const lineHeight = parseInt(getComputedStyle(this.getEl('.ellipsis')).lineHeight, 10);
138
+ const targetHeight = lines * lineHeight;
139
+ this.getEl('.ellipsis__handle').style.height = `${targetHeight}px`;
140
+ if (orgNode.offsetHeight <= targetHeight) {
141
+ this.text = lineText;
142
+ this.targetCount = lineText.length;
143
+ }
144
+ else {
145
+ // bisection
146
+ const len = lineText.length;
147
+ const mid = Math.ceil(len / 2);
148
+ const count = this.bisection(targetHeight, mid, 0, len, lineText, shadowTextEl.nativeElement.firstChild);
149
+ this.text = lineText;
150
+ this.targetCount = count;
151
+ }
152
+ ngZone.run(() => cdr.detectChanges());
153
+ }
154
+ }
155
+ getEl(cls) {
156
+ return this.el.nativeElement.querySelector(cls);
157
+ }
158
+ executeOnStable(fn) {
159
+ if (this.ngZone.isStable) {
160
+ fn();
161
+ }
162
+ else {
163
+ this.ngZone.onStable.asObservable().pipe(take(1)).subscribe(fn);
164
+ }
165
+ }
166
+ refresh() {
167
+ this.genType();
168
+ const { type, dom, orgEl, cdr } = this;
169
+ const html = orgEl.nativeElement.innerHTML;
170
+ this.orgHtml = dom.bypassSecurityTrustHtml(html);
171
+ cdr.detectChanges();
172
+ this.executeOnStable(() => {
173
+ this.gen();
174
+ if (type !== 'line') {
175
+ const el = this.getEl('.ellipsis');
176
+ if (el) {
177
+ el.innerHTML = html;
178
+ }
179
+ }
180
+ });
181
+ }
182
+ ngAfterViewInit() {
183
+ this.inited = true;
184
+ this.refresh();
185
+ }
186
+ ngOnChanges() {
187
+ if (this.inited) {
188
+ this.refresh();
189
+ }
190
+ }
191
+ }
192
+ EllipsisComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: EllipsisComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.DomSanitizer }, { token: DOCUMENT }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
193
+ EllipsisComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.2", 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 });
194
+ __decorate([
195
+ InputBoolean()
196
+ ], EllipsisComponent.prototype, "tooltip", void 0);
197
+ __decorate([
198
+ InputNumber(null)
199
+ ], EllipsisComponent.prototype, "length", void 0);
200
+ __decorate([
201
+ InputNumber(null)
202
+ ], EllipsisComponent.prototype, "lines", void 0);
203
+ __decorate([
204
+ InputBoolean()
205
+ ], EllipsisComponent.prototype, "fullWidthRecognition", void 0);
206
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: EllipsisComponent, decorators: [{
207
+ type: Component,
208
+ 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" }]
209
+ }], ctorParameters: function () {
210
+ return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.DomSanitizer }, { type: undefined, decorators: [{
211
+ type: Inject,
212
+ args: [DOCUMENT]
213
+ }] }, { type: i0.ChangeDetectorRef }];
214
+ }, propDecorators: { orgEl: [{
215
+ type: ViewChild,
216
+ args: ['orgEl', { static: false }]
217
+ }], shadowOrgEl: [{
218
+ type: ViewChild,
219
+ args: ['shadowOrgEl', { static: false }]
220
+ }], shadowTextEl: [{
221
+ type: ViewChild,
222
+ args: ['shadowTextEl', { static: false }]
223
+ }], tooltip: [{
224
+ type: Input
225
+ }], length: [{
226
+ type: Input
227
+ }], lines: [{
228
+ type: Input
229
+ }], fullWidthRecognition: [{
230
+ type: Input
231
+ }], tail: [{
232
+ type: Input
233
+ }] } });
234
+
235
+ const COMPONENTS = [EllipsisComponent];
236
+ class EllipsisModule {
237
+ }
238
+ EllipsisModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: EllipsisModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
239
+ EllipsisModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: EllipsisModule, declarations: [EllipsisComponent], imports: [CommonModule, ObserversModule, NzToolTipModule], exports: [EllipsisComponent] });
240
+ EllipsisModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: EllipsisModule, imports: [[CommonModule, ObserversModule, NzToolTipModule]] });
241
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: EllipsisModule, decorators: [{
242
+ type: NgModule,
243
+ args: [{
244
+ imports: [CommonModule, ObserversModule, NzToolTipModule],
245
+ declarations: COMPONENTS,
246
+ exports: COMPONENTS
247
+ }]
248
+ }] });
249
+
250
+ /**
251
+ * Generated bundle index. Do not edit.
252
+ */
253
+
254
+ export { EllipsisComponent, EllipsisModule };
255
+ //# sourceMappingURL=ellipsis.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ellipsis.mjs","sources":["../../../../packages/abc/ellipsis/ellipsis.component.ts","../../../../packages/abc/ellipsis/ellipsis.component.html","../../../../packages/abc/ellipsis/ellipsis.module.ts","../../../../packages/abc/ellipsis/ellipsis.ts"],"sourcesContent":["import { DOCUMENT } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Inject,\n Input,\n NgZone,\n OnChanges,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\nimport { take } from 'rxjs/operators';\n\nimport { BooleanInput, InputBoolean, InputNumber, NumberInput } from '@delon/util/decorator';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\n@Component({\n selector: 'ellipsis',\n exportAs: 'ellipsis',\n templateUrl: './ellipsis.component.html',\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class EllipsisComponent implements AfterViewInit, OnChanges {\n static ngAcceptInputType_tooltip: BooleanInput;\n static ngAcceptInputType_length: NumberInput;\n static ngAcceptInputType_lines: NumberInput;\n static ngAcceptInputType_fullWidthRecognition: BooleanInput;\n\n private isSupportLineClamp = this.doc.body.style['webkitLineClamp'] !== undefined;\n @ViewChild('orgEl', { static: false }) private orgEl!: ElementRef;\n @ViewChild('shadowOrgEl', { static: false }) private shadowOrgEl!: ElementRef;\n @ViewChild('shadowTextEl', { static: false }) private shadowTextEl!: ElementRef;\n private inited = false;\n orgHtml!: SafeHtml;\n type = 'default';\n cls = {};\n text = '';\n targetCount = 0;\n\n @Input() @InputBoolean() tooltip = false;\n @Input() @InputNumber(null) length?: number;\n @Input() @InputNumber(null) lines?: number;\n @Input() @InputBoolean() fullWidthRecognition = false;\n @Input() tail = '...';\n\n get linsWord(): string {\n const { targetCount, text, tail } = this;\n return (\n (targetCount > 0 ? text.substring(0, targetCount) : '') +\n (targetCount > 0 && targetCount < text.length ? tail : '')\n );\n }\n\n constructor(\n private el: ElementRef,\n private ngZone: NgZone,\n private dom: DomSanitizer,\n @Inject(DOCUMENT) private doc: NzSafeAny,\n private cdr: ChangeDetectorRef\n ) {}\n\n private getStrFullLength(str: string): number {\n return str.split('').reduce((pre, cur) => {\n const charCode = cur.charCodeAt(0);\n if (charCode >= 0 && charCode <= 128) {\n return pre + 1;\n }\n return pre + 2;\n }, 0);\n }\n\n private cutStrByFullLength(str: string, maxLength: number): string {\n let showLength = 0;\n return str.split('').reduce((pre, cur) => {\n const charCode = cur.charCodeAt(0);\n if (charCode >= 0 && charCode <= 128) {\n showLength += 1;\n } else {\n showLength += 2;\n }\n if (showLength <= maxLength) {\n return pre + cur;\n }\n return pre;\n }, '');\n }\n\n private bisection(\n targetHeight: number,\n mid: number,\n begin: number,\n end: number,\n text: string,\n node: HTMLElement\n ): number {\n const suffix = this.tail;\n node.innerHTML = text.substring(0, mid) + suffix;\n let sh = node.offsetHeight;\n\n if (sh <= targetHeight) {\n node.innerHTML = text.substring(0, mid + 1) + suffix;\n sh = node.offsetHeight;\n if (sh > targetHeight || mid === begin) {\n return mid;\n }\n begin = mid;\n mid = end - begin === 1 ? begin + 1 : Math.floor((end - begin) / 2) + begin;\n return this.bisection(targetHeight, mid, begin, end, text, node);\n }\n if (mid - 1 < 0) {\n return mid;\n }\n node.innerHTML = text.substring(0, mid - 1) + suffix;\n sh = node.offsetHeight;\n if (sh <= targetHeight) {\n return mid - 1;\n }\n end = mid;\n mid = Math.floor((end - begin) / 2) + begin;\n return this.bisection(targetHeight, mid, begin, end, text, node);\n }\n\n private genType(): void {\n const { lines, length, isSupportLineClamp } = this;\n this.cls = {\n ellipsis: true,\n ellipsis__lines: lines && !isSupportLineClamp,\n 'ellipsis__line-clamp': lines && isSupportLineClamp\n };\n if (!lines && !length) {\n this.type = 'default';\n } else if (!lines) {\n this.type = 'length';\n } else if (isSupportLineClamp) {\n this.type = 'line-clamp';\n } else {\n this.type = 'line';\n }\n }\n\n private gen(): void {\n const { type, lines, length, fullWidthRecognition, tail, orgEl, cdr, ngZone } = this;\n if (type === 'length') {\n const el = orgEl.nativeElement as HTMLElement;\n if (el.children.length > 0) {\n throw new Error('Ellipsis content must be string.');\n }\n const lengthText = el.textContent!;\n const textLength = fullWidthRecognition ? this.getStrFullLength(lengthText) : lengthText.length;\n if (textLength <= length! || length! < 0) {\n this.text = lengthText;\n } else {\n let displayText: string;\n if (length! - tail.length <= 0) {\n displayText = '';\n } else {\n displayText = fullWidthRecognition\n ? this.cutStrByFullLength(lengthText, length!)\n : lengthText.slice(0, length);\n }\n this.text = displayText + tail;\n }\n ngZone.run(() => cdr.detectChanges());\n } else if (type === 'line') {\n const { shadowOrgEl, shadowTextEl } = this;\n const orgNode = shadowOrgEl.nativeElement as HTMLElement;\n const lineText = orgNode.innerText || orgNode.textContent!;\n const lineHeight = parseInt(getComputedStyle(this.getEl('.ellipsis')).lineHeight!, 10);\n const targetHeight = lines! * lineHeight;\n this.getEl('.ellipsis__handle').style.height = `${targetHeight}px`;\n\n if (orgNode.offsetHeight <= targetHeight) {\n this.text = lineText;\n this.targetCount = lineText.length;\n } else {\n // bisection\n const len = lineText.length;\n const mid = Math.ceil(len / 2);\n\n const count = this.bisection(targetHeight, mid, 0, len, lineText, shadowTextEl.nativeElement.firstChild);\n this.text = lineText;\n this.targetCount = count;\n }\n ngZone.run(() => cdr.detectChanges());\n }\n }\n\n private getEl(cls: string): HTMLElement {\n return this.el.nativeElement.querySelector(cls);\n }\n\n private executeOnStable(fn: () => void): void {\n if (this.ngZone.isStable) {\n fn();\n } else {\n this.ngZone.onStable.asObservable().pipe(take(1)).subscribe(fn);\n }\n }\n\n refresh(): void {\n this.genType();\n const { type, dom, orgEl, cdr } = this;\n const html = orgEl.nativeElement.innerHTML;\n this.orgHtml = dom.bypassSecurityTrustHtml(html);\n cdr.detectChanges();\n this.executeOnStable(() => {\n this.gen();\n if (type !== 'line') {\n const el = this.getEl('.ellipsis');\n if (el) {\n el.innerHTML = html;\n }\n }\n });\n }\n\n ngAfterViewInit(): void {\n this.inited = true;\n this.refresh();\n }\n\n ngOnChanges(): void {\n if (this.inited) {\n this.refresh();\n }\n }\n}\n","<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","import { ObserversModule } from '@angular/cdk/observers';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzToolTipModule } from 'ng-zorro-antd/tooltip';\n\nimport { EllipsisComponent } from './ellipsis.component';\n\nconst COMPONENTS = [EllipsisComponent];\n\n@NgModule({\n imports: [CommonModule, ObserversModule, NzToolTipModule],\n declarations: COMPONENTS,\n exports: COMPONENTS\n})\nexport class EllipsisModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,144 @@
1
+ import { __decorate } from 'tslib';
2
+ import { DOCUMENT, CommonModule } from '@angular/common';
3
+ import * as i0 from '@angular/core';
4
+ import { Component, ChangeDetectionStrategy, ViewEncapsulation, Inject, Optional, Input, NgModule } from '@angular/core';
5
+ import { Subject, interval } from 'rxjs';
6
+ import { takeUntil } from 'rxjs/operators';
7
+ import { InputNumber } from '@delon/util/decorator';
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
+ import { NzIconModule } from 'ng-zorro-antd/icon';
12
+
13
+ class ErrorCollectComponent {
14
+ constructor(el, cdr, doc, configSrv, directionality) {
15
+ this.el = el;
16
+ this.cdr = cdr;
17
+ this.doc = doc;
18
+ this.directionality = directionality;
19
+ this.formEl = null;
20
+ this.destroy$ = new Subject();
21
+ this._hiden = true;
22
+ this.count = 0;
23
+ this.dir = 'ltr';
24
+ configSrv.attach(this, 'errorCollect', { freq: 500, offsetTop: 65 + 64 + 8 * 2 });
25
+ }
26
+ get errEls() {
27
+ return this.formEl.querySelectorAll('.ant-form-item-has-error');
28
+ }
29
+ update() {
30
+ const count = this.errEls.length;
31
+ if (count === this.count)
32
+ return;
33
+ this.count = count;
34
+ this._hiden = count === 0;
35
+ this.cdr.markForCheck();
36
+ }
37
+ _click() {
38
+ if (this.count === 0)
39
+ return false;
40
+ // nz-form-control
41
+ const els = this.errEls;
42
+ const formItemEl = this.findParent(els[0], '[nz-form-control]') || els[0];
43
+ formItemEl.scrollIntoView(true);
44
+ // fix header height
45
+ this.doc.documentElement.scrollTop -= this.offsetTop;
46
+ return true;
47
+ }
48
+ install() {
49
+ var _a;
50
+ this.dir = this.directionality.value;
51
+ (_a = this.directionality.change) === null || _a === void 0 ? void 0 : _a.pipe(takeUntil(this.destroy$)).subscribe((direction) => {
52
+ this.dir = direction;
53
+ });
54
+ interval(this.freq)
55
+ .pipe(takeUntil(this.destroy$))
56
+ .subscribe(() => this.update());
57
+ this.update();
58
+ }
59
+ findParent(el, selector) {
60
+ let retEl = null;
61
+ while (el) {
62
+ if (el.querySelector(selector)) {
63
+ retEl = el;
64
+ break;
65
+ }
66
+ el = el.parentElement;
67
+ }
68
+ return retEl;
69
+ }
70
+ ngOnInit() {
71
+ this.formEl = this.findParent(this.el.nativeElement, 'form');
72
+ if (this.formEl === null)
73
+ throw new Error('No found form element');
74
+ this.install();
75
+ }
76
+ ngOnDestroy() {
77
+ this.destroy$.next();
78
+ this.destroy$.complete();
79
+ }
80
+ }
81
+ ErrorCollectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.2", 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 });
82
+ ErrorCollectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.2", 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: `
83
+ <i nz-icon nzType="exclamation-circle"></i>
84
+ <span class="error-collect__count">{{ count }}</span>
85
+ `, 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 });
86
+ __decorate([
87
+ InputNumber()
88
+ ], ErrorCollectComponent.prototype, "freq", void 0);
89
+ __decorate([
90
+ InputNumber()
91
+ ], ErrorCollectComponent.prototype, "offsetTop", void 0);
92
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: ErrorCollectComponent, decorators: [{
93
+ type: Component,
94
+ args: [{
95
+ selector: 'error-collect, [error-collect]',
96
+ exportAs: 'errorCollect',
97
+ template: `
98
+ <i nz-icon nzType="exclamation-circle"></i>
99
+ <span class="error-collect__count">{{ count }}</span>
100
+ `,
101
+ host: {
102
+ '[class.error-collect]': 'true',
103
+ '[class.error-collect-rtl]': `dir === 'rtl'`,
104
+ '[class.d-none]': '_hiden',
105
+ '(click)': '_click()'
106
+ },
107
+ preserveWhitespaces: false,
108
+ changeDetection: ChangeDetectionStrategy.OnPush,
109
+ encapsulation: ViewEncapsulation.None
110
+ }]
111
+ }], ctorParameters: function () {
112
+ return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
113
+ type: Inject,
114
+ args: [DOCUMENT]
115
+ }] }, { type: i1.AlainConfigService }, { type: i2.Directionality, decorators: [{
116
+ type: Optional
117
+ }] }];
118
+ }, propDecorators: { freq: [{
119
+ type: Input
120
+ }], offsetTop: [{
121
+ type: Input
122
+ }] } });
123
+
124
+ const COMPONENTS = [ErrorCollectComponent];
125
+ class ErrorCollectModule {
126
+ }
127
+ ErrorCollectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: ErrorCollectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
128
+ ErrorCollectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: ErrorCollectModule, declarations: [ErrorCollectComponent], imports: [CommonModule, NzIconModule], exports: [ErrorCollectComponent] });
129
+ ErrorCollectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: ErrorCollectModule, imports: [[CommonModule, NzIconModule]] });
130
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: ErrorCollectModule, decorators: [{
131
+ type: NgModule,
132
+ args: [{
133
+ imports: [CommonModule, NzIconModule],
134
+ declarations: COMPONENTS,
135
+ exports: COMPONENTS
136
+ }]
137
+ }] });
138
+
139
+ /**
140
+ * Generated bundle index. Do not edit.
141
+ */
142
+
143
+ export { ErrorCollectComponent, ErrorCollectModule };
144
+ //# sourceMappingURL=error-collect.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-collect.mjs","sources":["../../../../packages/abc/error-collect/error-collect.component.ts","../../../../packages/abc/error-collect/error-collect.module.ts","../../../../packages/abc/error-collect/error-collect.ts"],"sourcesContent":["import { Direction, Directionality } from '@angular/cdk/bidi';\nimport { DOCUMENT } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n ViewEncapsulation\n} from '@angular/core';\nimport { interval, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { AlainConfigService } from '@delon/util/config';\nimport { InputNumber } from '@delon/util/decorator';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\n@Component({\n selector: 'error-collect, [error-collect]',\n exportAs: 'errorCollect',\n template: `\n <i nz-icon nzType=\"exclamation-circle\"></i>\n <span class=\"error-collect__count\">{{ count }}</span>\n `,\n host: {\n '[class.error-collect]': 'true',\n '[class.error-collect-rtl]': `dir === 'rtl'`,\n '[class.d-none]': '_hiden',\n '(click)': '_click()'\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class ErrorCollectComponent implements OnInit, OnDestroy {\n private formEl: HTMLFormElement | null = null;\n private destroy$ = new Subject<void>();\n\n _hiden = true;\n count = 0;\n dir: Direction = 'ltr';\n\n @Input() @InputNumber() freq!: number;\n @Input() @InputNumber() offsetTop!: number;\n\n constructor(\n private el: ElementRef,\n private cdr: ChangeDetectorRef,\n @Inject(DOCUMENT) private doc: NzSafeAny,\n configSrv: AlainConfigService,\n @Optional() private directionality: Directionality\n ) {\n configSrv.attach(this, 'errorCollect', { freq: 500, offsetTop: 65 + 64 + 8 * 2 });\n }\n\n private get errEls(): NodeListOf<HTMLElement> {\n return this.formEl!.querySelectorAll('.ant-form-item-has-error');\n }\n\n private update(): void {\n const count = this.errEls.length;\n if (count === this.count) return;\n this.count = count;\n this._hiden = count === 0;\n this.cdr.markForCheck();\n }\n\n _click(): boolean {\n if (this.count === 0) return false;\n // nz-form-control\n const els = this.errEls;\n const formItemEl = this.findParent(els[0], '[nz-form-control]') || els[0];\n formItemEl.scrollIntoView(true);\n // fix header height\n this.doc.documentElement.scrollTop -= this.offsetTop;\n return true;\n }\n\n private install(): void {\n this.dir = this.directionality.value;\n this.directionality.change?.pipe(takeUntil(this.destroy$)).subscribe((direction: Direction) => {\n this.dir = direction;\n });\n interval(this.freq)\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => this.update());\n this.update();\n }\n\n private findParent(el: Element, selector: string): HTMLFormElement | null {\n let retEl: HTMLFormElement | null = null;\n while (el) {\n if (el.querySelector(selector)) {\n retEl = el as HTMLFormElement;\n break;\n }\n el = el.parentElement as HTMLFormElement;\n }\n return retEl;\n }\n\n ngOnInit(): void {\n this.formEl = this.findParent(this.el.nativeElement, 'form');\n if (this.formEl === null) throw new Error('No found form element');\n this.install();\n }\n\n ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\nimport { ErrorCollectComponent } from './error-collect.component';\n\nconst COMPONENTS = [ErrorCollectComponent];\n\n@NgModule({\n imports: [CommonModule, NzIconModule],\n declarations: COMPONENTS,\n exports: COMPONENTS\n})\nexport class ErrorCollectModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}