@alauda/ui 6.5.10-beta.2 → 6.5.10-beta.4

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 (599) hide show
  1. package/.changeset/README.md +8 -0
  2. package/accordion/accordion-item/accordion-item.component.d.ts +3 -3
  3. package/accordion/accordion.component.d.ts +1 -1
  4. package/alauda-ui.d.ts +5 -0
  5. package/anchor/anchor.component.d.ts +2 -2
  6. package/anchor/anchor.directive.d.ts +3 -3
  7. package/autocomplete/autocomplete-placeholder.component.d.ts +1 -1
  8. package/autocomplete/autocomplete.component.d.ts +1 -1
  9. package/autocomplete/autocomplete.directive.d.ts +2 -2
  10. package/autocomplete/autocomplete.types.d.ts +1 -1
  11. package/autocomplete/helper-directives.d.ts +1 -1
  12. package/autocomplete/suggestion/suggestion.component.d.ts +1 -1
  13. package/autocomplete/suggestion-group/suggestion-group.component.d.ts +1 -1
  14. package/back-top/back-top.component.d.ts +2 -2
  15. package/breadcrumb/breadcrumb-item.component.d.ts +1 -1
  16. package/breadcrumb/breadcrumb.component.d.ts +1 -1
  17. package/button/button-group/button-group.component.d.ts +1 -1
  18. package/button/button.component.d.ts +1 -1
  19. package/button/button.types.d.ts +10 -1
  20. package/card/card.component.d.ts +1 -1
  21. package/card/helper-directives.d.ts +6 -3
  22. package/card/section.component.d.ts +1 -1
  23. package/checkbox/checkbox-group/checkbox-group.component.d.ts +1 -1
  24. package/checkbox/checkbox.component.d.ts +1 -1
  25. package/color-picker/color-picker.component.d.ts +1 -1
  26. package/date-picker/calendar/date-picker-panel/component.d.ts +1 -1
  27. package/date-picker/calendar/footer/component.d.ts +1 -1
  28. package/date-picker/calendar/header/component.d.ts +1 -1
  29. package/date-picker/calendar/panel/picker-panel.d.ts +1 -1
  30. package/date-picker/calendar/range-picker-panel/component.d.ts +1 -1
  31. package/date-picker/date-picker/date-picker.component.d.ts +1 -1
  32. package/date-picker/date-picker.type.d.ts +2 -2
  33. package/date-picker/range-picker/range-picker.component.d.ts +1 -1
  34. package/date-picker/trigger/trigger.component.d.ts +1 -1
  35. package/dialog/confirm-dialog/confirm-dialog.component.d.ts +1 -1
  36. package/dialog/dialog-content/dialog-close.directive.d.ts +1 -1
  37. package/dialog/dialog-content/dialog-content.component.d.ts +1 -1
  38. package/dialog/dialog-content/dialog-footer.component.d.ts +1 -1
  39. package/dialog/dialog-content/dialog-header.component.d.ts +1 -1
  40. package/dialog/dialog.component.d.ts +1 -1
  41. package/dialog/dialog.types.d.ts +3 -3
  42. package/drawer/component/drawer.component.d.ts +1 -1
  43. package/drawer/component/helper-directives.d.ts +3 -3
  44. package/dropdown/dropdown-active.directive.d.ts +1 -1
  45. package/dropdown/dropdown-button/dropdown-button.component.d.ts +1 -1
  46. package/dropdown/dropdown.directive.d.ts +1 -1
  47. package/dropdown/dropdown.types.d.ts +1 -1
  48. package/dropdown/helper-directives.d.ts +1 -1
  49. package/dropdown/menu/menu-content.directive.d.ts +1 -1
  50. package/dropdown/menu/menu.component.d.ts +1 -1
  51. package/dropdown/menu-group/menu-group.component.d.ts +1 -1
  52. package/dropdown/menu-item/menu-item.component.d.ts +1 -1
  53. package/dropdown/submenu/submenu.component.d.ts +1 -1
  54. package/esm2020/accordion/accordion-item/accordion-item.component.mjs +73 -0
  55. package/esm2020/accordion/accordion.component.mjs +27 -0
  56. package/esm2020/accordion/accordion.module.mjs +39 -0
  57. package/esm2020/alauda-ui.mjs +5 -0
  58. package/esm2020/anchor/anchor.component.mjs +138 -0
  59. package/esm2020/anchor/anchor.directive.mjs +182 -0
  60. package/esm2020/anchor/anchor.module.mjs +36 -0
  61. package/{esm2022 → esm2020}/autocomplete/autocomplete-placeholder.component.mjs +4 -4
  62. package/esm2020/autocomplete/autocomplete.component.mjs +64 -0
  63. package/esm2020/autocomplete/autocomplete.directive.mjs +278 -0
  64. package/esm2020/autocomplete/autocomplete.module.mjs +53 -0
  65. package/{esm2022 → esm2020}/autocomplete/helper-directives.mjs +4 -4
  66. package/esm2020/autocomplete/suggestion/suggestion.component.mjs +79 -0
  67. package/esm2020/autocomplete/suggestion-group/suggestion-group.component.mjs +23 -0
  68. package/esm2020/back-top/back-top.component.mjs +67 -0
  69. package/esm2020/back-top/back-top.module.mjs +19 -0
  70. package/esm2020/breadcrumb/breadcrumb-item.component.mjs +32 -0
  71. package/esm2020/breadcrumb/breadcrumb.component.mjs +57 -0
  72. package/esm2020/breadcrumb/breadcrumb.module.mjs +20 -0
  73. package/{esm2022 → esm2020}/button/button-group/button-group.component.mjs +4 -4
  74. package/esm2020/button/button.component.mjs +122 -0
  75. package/esm2020/button/button.module.mjs +20 -0
  76. package/esm2020/button/button.types.mjs +22 -0
  77. package/esm2020/card/card.component.mjs +16 -0
  78. package/esm2020/card/card.module.mjs +40 -0
  79. package/esm2020/card/helper-directives.mjs +50 -0
  80. package/{esm2022 → esm2020}/card/section.component.mjs +4 -4
  81. package/esm2020/checkbox/checkbox-group/checkbox-group.component.mjs +61 -0
  82. package/esm2020/checkbox/checkbox.component.mjs +112 -0
  83. package/esm2020/checkbox/checkbox.module.mjs +20 -0
  84. package/esm2020/color-picker/color-picker.component.mjs +28 -0
  85. package/esm2020/color-picker/color-picker.module.mjs +19 -0
  86. package/esm2020/date-picker/calendar/constant.mjs +32 -0
  87. package/esm2020/date-picker/calendar/date-picker-panel/component.mjs +128 -0
  88. package/esm2020/date-picker/calendar/footer/component.mjs +29 -0
  89. package/esm2020/date-picker/calendar/header/component.mjs +103 -0
  90. package/esm2020/date-picker/calendar/panel/picker-panel.mjs +155 -0
  91. package/esm2020/date-picker/calendar/range-picker-panel/component.mjs +209 -0
  92. package/esm2020/date-picker/calendar/util.mjs +146 -0
  93. package/esm2020/date-picker/date-picker/date-picker.component.mjs +110 -0
  94. package/esm2020/date-picker/date-picker.module.mjs +84 -0
  95. package/esm2020/date-picker/range-picker/range-picker.component.mjs +86 -0
  96. package/esm2020/date-picker/trigger/trigger.component.mjs +69 -0
  97. package/esm2020/dialog/confirm-dialog/confirm-dialog-config.mjs +12 -0
  98. package/esm2020/dialog/confirm-dialog/confirm-dialog.component.mjs +85 -0
  99. package/{esm2022 → esm2020}/dialog/dialog-animations.mjs +2 -1
  100. package/esm2020/dialog/dialog-config.mjs +15 -0
  101. package/esm2020/dialog/dialog-content/dialog-close.directive.mjs +38 -0
  102. package/esm2020/dialog/dialog-content/dialog-content.component.mjs +20 -0
  103. package/esm2020/dialog/dialog-content/dialog-footer.component.mjs +15 -0
  104. package/esm2020/dialog/dialog-content/dialog-header.component.mjs +39 -0
  105. package/esm2020/dialog/dialog-ref.mjs +48 -0
  106. package/esm2020/dialog/dialog.component.mjs +148 -0
  107. package/esm2020/dialog/dialog.module.mjs +68 -0
  108. package/esm2020/dialog/dialog.service.mjs +121 -0
  109. package/esm2020/drawer/component/drawer.component.mjs +232 -0
  110. package/esm2020/drawer/component/helper-directives.mjs +37 -0
  111. package/esm2020/drawer/drawer.module.mjs +37 -0
  112. package/esm2020/drawer/drawer.service.mjs +44 -0
  113. package/esm2020/dropdown/dropdown-active.directive.mjs +21 -0
  114. package/esm2020/dropdown/dropdown-button/dropdown-button.component.mjs +57 -0
  115. package/esm2020/dropdown/dropdown.directive.mjs +81 -0
  116. package/esm2020/dropdown/dropdown.module.mjs +65 -0
  117. package/{esm2022 → esm2020}/dropdown/helper-directives.mjs +4 -4
  118. package/esm2020/dropdown/menu/menu-content.directive.mjs +51 -0
  119. package/esm2020/dropdown/menu/menu.component.mjs +26 -0
  120. package/{esm2022 → esm2020}/dropdown/menu-group/menu-group.component.mjs +4 -4
  121. package/esm2020/dropdown/menu-item/menu-item.component.mjs +37 -0
  122. package/esm2020/dropdown/submenu/submenu.component.mjs +40 -0
  123. package/esm2020/form/common-form.mjs +91 -0
  124. package/esm2020/form/form-item/form-item.component.mjs +108 -0
  125. package/esm2020/form/form.directive.mjs +69 -0
  126. package/esm2020/form/form.module.mjs +48 -0
  127. package/esm2020/form/helper-directives.mjs +80 -0
  128. package/{esm2022 → esm2020}/i18n/i18n.module.mjs +5 -5
  129. package/esm2020/i18n/i18n.pipe.mjs +20 -0
  130. package/esm2020/i18n/i18n.service.mjs +43 -0
  131. package/esm2020/icon/icon-register.service.mjs +74 -0
  132. package/esm2020/icon/icon.component.mjs +65 -0
  133. package/esm2020/icon/icon.module.mjs +21 -0
  134. package/{esm2022 → esm2020}/inline-alert/helper-directives.mjs +4 -4
  135. package/esm2020/inline-alert/inline-alert.component.mjs +53 -0
  136. package/esm2020/inline-alert/inline-alert.module.mjs +20 -0
  137. package/esm2020/input/autosize.directive.mjs +59 -0
  138. package/esm2020/input/helper-directives.mjs +43 -0
  139. package/esm2020/input/input-group/input-group.component.mjs +39 -0
  140. package/esm2020/input/input.component.mjs +61 -0
  141. package/esm2020/input/input.module.mjs +87 -0
  142. package/esm2020/input/number-input/number-input.component.mjs +112 -0
  143. package/esm2020/input/search/search.component.mjs +88 -0
  144. package/esm2020/input/tags-input/tags-input.component.mjs +260 -0
  145. package/esm2020/message/base-message.mjs +90 -0
  146. package/esm2020/message/message-wrapper.component.mjs +14 -0
  147. package/esm2020/message/message.component.mjs +70 -0
  148. package/esm2020/message/message.config.mjs +21 -0
  149. package/esm2020/message/message.module.mjs +23 -0
  150. package/{esm2022 → esm2020}/message/message.service.mjs +4 -4
  151. package/esm2020/notification/notification-wrapper.component.mjs +16 -0
  152. package/esm2020/notification/notification.component.mjs +107 -0
  153. package/esm2020/notification/notification.module.mjs +24 -0
  154. package/{esm2022 → esm2020}/notification/notification.service.mjs +4 -4
  155. package/esm2020/paginator/paginator-intl.mjs +37 -0
  156. package/esm2020/paginator/paginator.component.mjs +125 -0
  157. package/esm2020/paginator/paginator.module.mjs +24 -0
  158. package/esm2020/radio/base-radio.mjs +67 -0
  159. package/esm2020/radio/radio-button/radio-button.component.mjs +42 -0
  160. package/esm2020/radio/radio-group/radio-group.component.mjs +76 -0
  161. package/esm2020/radio/radio.component.mjs +24 -0
  162. package/esm2020/radio/radio.module.mjs +21 -0
  163. package/esm2020/scrolling/fixed-size-table-virtual-scroll-strategy.mjs +83 -0
  164. package/esm2020/scrolling/fixed-size-table-virtual-scroll.directive.mjs +121 -0
  165. package/esm2020/scrolling/fixed-size-virtual-scroll.directive.mjs +28 -0
  166. package/{esm2022 → esm2020}/scrolling/scrolling.module.mjs +9 -9
  167. package/{esm2022 → esm2020}/scrolling/virtual-for-of.directive.mjs +4 -4
  168. package/esm2020/scrolling/virtual-scroll-viewport.component.mjs +26 -0
  169. package/esm2020/select/base-select.mjs +337 -0
  170. package/{esm2022 → esm2020}/select/helper-directives.mjs +7 -7
  171. package/esm2020/select/multi-select/multi-select.component.mjs +313 -0
  172. package/esm2020/select/option/option.component.mjs +112 -0
  173. package/esm2020/select/option-group/option-group.component.mjs +23 -0
  174. package/{esm2022 → esm2020}/select/option-placeholder.component.mjs +4 -4
  175. package/esm2020/select/select.component.mjs +108 -0
  176. package/esm2020/select/select.module.mjs +80 -0
  177. package/esm2020/select/validators.mjs +79 -0
  178. package/esm2020/shared/click-outside.directive.mjs +28 -0
  179. package/{esm2022 → esm2020}/shared/shared.module.mjs +5 -5
  180. package/esm2020/sort/sort-errors.mjs +17 -0
  181. package/esm2020/sort/sort-header.component.mjs +72 -0
  182. package/esm2020/sort/sort.directive.mjs +75 -0
  183. package/esm2020/sort/sort.module.mjs +19 -0
  184. package/esm2020/status-bar/status-bar.component.mjs +29 -0
  185. package/esm2020/status-bar/status-bar.module.mjs +19 -0
  186. package/esm2020/steps/steps.component.mjs +184 -0
  187. package/esm2020/steps/steps.module.mjs +19 -0
  188. package/esm2020/switch/switch.component.mjs +46 -0
  189. package/esm2020/switch/switch.module.mjs +18 -0
  190. package/esm2020/table/table-cell-def.directive.mjs +29 -0
  191. package/esm2020/table/table-cell.component.mjs +121 -0
  192. package/esm2020/table/table-cell.directive.mjs +31 -0
  193. package/esm2020/table/table-column-def.directive.mjs +37 -0
  194. package/esm2020/table/table-header-cell-def.directive.mjs +29 -0
  195. package/esm2020/table/table-header-cell.directive.mjs +27 -0
  196. package/esm2020/table/table-header-row-def.directive.mjs +39 -0
  197. package/esm2020/table/table-header-row.component.mjs +25 -0
  198. package/esm2020/table/table-placeholder.directive.mjs +30 -0
  199. package/esm2020/table/table-row-def.directive.mjs +42 -0
  200. package/esm2020/table/table-row.component.mjs +43 -0
  201. package/esm2020/table/table-scroll.directive.mjs +134 -0
  202. package/esm2020/table/table.component.mjs +79 -0
  203. package/esm2020/table/table.module.mjs +96 -0
  204. package/esm2020/table-of-contents/table-of-contents.module.mjs +20 -0
  205. package/esm2020/table-of-contents/toc-container.directive.mjs +109 -0
  206. package/esm2020/table-of-contents/toc-content.directive.mjs +35 -0
  207. package/esm2020/table-of-contents/toc-link.directive.mjs +44 -0
  208. package/esm2020/tabs/tab-body.component.mjs +165 -0
  209. package/esm2020/tabs/tab-context.service.mjs +31 -0
  210. package/esm2020/tabs/tab-group.component.mjs +291 -0
  211. package/esm2020/tabs/tab-header-active-indicator.component.mjs +53 -0
  212. package/esm2020/tabs/tab-header.component.mjs +367 -0
  213. package/esm2020/tabs/tab.component.mjs +85 -0
  214. package/esm2020/tabs/tabs.module.mjs +88 -0
  215. package/esm2020/tabs/tabs.types.mjs +13 -0
  216. package/esm2020/tag/check-tag/check-tag.component.mjs +33 -0
  217. package/esm2020/tag/tag.component.mjs +66 -0
  218. package/esm2020/tag/tag.module.mjs +20 -0
  219. package/esm2020/theme/theme.module.mjs +18 -0
  220. package/esm2020/theme/theme.pipe.mjs +69 -0
  221. package/esm2020/theme/theme.service.mjs +52 -0
  222. package/esm2020/time-picker/component.mjs +179 -0
  223. package/esm2020/time-picker/panel/panel.component.mjs +230 -0
  224. package/esm2020/time-picker/time-picker.module.mjs +58 -0
  225. package/esm2020/tooltip/base-tooltip.mjs +322 -0
  226. package/esm2020/tooltip/tooltip-active.directive.mjs +49 -0
  227. package/esm2020/tooltip/tooltip-copy.directive.mjs +82 -0
  228. package/esm2020/tooltip/tooltip-intl.mjs +29 -0
  229. package/esm2020/tooltip/tooltip.component.mjs +107 -0
  230. package/esm2020/tooltip/tooltip.directive.mjs +47 -0
  231. package/esm2020/tooltip/tooltip.module.mjs +33 -0
  232. package/{esm2022 → esm2020}/tree-select/tree-node-placeholder.component.mjs +4 -4
  233. package/esm2020/tree-select/tree-select.component.mjs +340 -0
  234. package/esm2020/tree-select/tree-select.module.mjs +34 -0
  235. package/esm2020/types.mjs +11 -0
  236. package/esm2020/utils/bem.mjs +44 -0
  237. package/esm2020/utils/coercion.mjs +17 -0
  238. package/fesm2015/alauda-ui.mjs +12051 -0
  239. package/fesm2015/alauda-ui.mjs.map +1 -0
  240. package/{fesm2022 → fesm2020}/alauda-ui.mjs +2863 -2810
  241. package/fesm2020/alauda-ui.mjs.map +1 -0
  242. package/form/common-form.d.ts +8 -1
  243. package/form/form-item/form-item.component.d.ts +1 -1
  244. package/form/form.directive.d.ts +1 -1
  245. package/form/form.types.d.ts +2 -2
  246. package/form/helper-directives.d.ts +5 -5
  247. package/i18n/i18n.pipe.d.ts +1 -1
  248. package/i18n/i18n.type.d.ts +1 -1
  249. package/icon/icon.component.d.ts +1 -1
  250. package/inline-alert/helper-directives.d.ts +1 -1
  251. package/inline-alert/inline-alert.component.d.ts +1 -1
  252. package/inline-alert/inline-alert.types.d.ts +1 -1
  253. package/input/autosize.directive.d.ts +4 -1
  254. package/input/helper-directives.d.ts +4 -4
  255. package/input/input-group/input-group.component.d.ts +1 -1
  256. package/input/input.component.d.ts +4 -1
  257. package/input/number-input/number-input.component.d.ts +1 -1
  258. package/input/search/search.component.d.ts +1 -1
  259. package/input/tags-input/tags-input.component.d.ts +4 -4
  260. package/message/message-wrapper.component.d.ts +1 -1
  261. package/message/message.component.d.ts +1 -1
  262. package/message/message.config.d.ts +20 -0
  263. package/notification/notification-wrapper.component.d.ts +1 -1
  264. package/notification/notification.component.d.ts +5 -1
  265. package/notification/notification.config.d.ts +1 -1
  266. package/package.json +19 -13
  267. package/paginator/paginator-intl.d.ts +9 -0
  268. package/paginator/paginator.component.d.ts +15 -1
  269. package/radio/base-radio.d.ts +1 -1
  270. package/radio/radio-button/radio-button.component.d.ts +1 -1
  271. package/radio/radio-group/radio-group.component.d.ts +4 -1
  272. package/radio/radio.component.d.ts +1 -1
  273. package/radio/radio.types.d.ts +1 -1
  274. package/scrolling/fixed-size-table-virtual-scroll.directive.d.ts +1 -1
  275. package/scrolling/fixed-size-virtual-scroll.directive.d.ts +1 -1
  276. package/scrolling/virtual-for-of.directive.d.ts +1 -1
  277. package/scrolling/virtual-scroll-viewport.component.d.ts +1 -1
  278. package/select/base-select.d.ts +4 -1
  279. package/select/helper-directives.d.ts +2 -2
  280. package/select/multi-select/multi-select.component.d.ts +1 -1
  281. package/select/option/option.component.d.ts +1 -1
  282. package/select/option-group/option-group.component.d.ts +1 -1
  283. package/select/option-placeholder.component.d.ts +1 -1
  284. package/select/select.component.d.ts +1 -1
  285. package/select/select.types.d.ts +3 -3
  286. package/select/validators.d.ts +1 -1
  287. package/shared/click-outside.directive.d.ts +1 -1
  288. package/sort/sort-errors.d.ts +4 -0
  289. package/sort/sort-header.component.d.ts +1 -1
  290. package/sort/sort.directive.d.ts +1 -1
  291. package/sort/sort.types.d.ts +2 -2
  292. package/src/accordion/README.md +13 -0
  293. package/src/anchor/README.md +23 -0
  294. package/src/dropdown/README.md +57 -0
  295. package/src/form/README.md +32 -0
  296. package/src/icon/README.md +28 -0
  297. package/src/inline-alert/README.md +16 -0
  298. package/src/input/number-input/README.md +16 -0
  299. package/src/select/README.md +57 -0
  300. package/src/sort/README.md +13 -0
  301. package/src/table/README.md +8 -0
  302. package/src/table-of-contents/README.md +94 -0
  303. package/src/tag/README.md +32 -0
  304. package/src/tree-select/README.md +34 -0
  305. package/status-bar/status-bar.component.d.ts +1 -1
  306. package/status-bar/status-bar.types.d.ts +2 -2
  307. package/steps/steps.component.d.ts +4 -1
  308. package/steps/types.d.ts +6 -3
  309. package/switch/switch.component.d.ts +1 -1
  310. package/table/table-cell-def.directive.d.ts +5 -1
  311. package/table/table-cell.component.d.ts +2 -2
  312. package/table/table-cell.directive.d.ts +2 -1
  313. package/table/table-column-def.directive.d.ts +5 -1
  314. package/table/table-header-cell-def.directive.d.ts +5 -1
  315. package/table/table-header-cell.directive.d.ts +2 -1
  316. package/table/table-header-row-def.directive.d.ts +5 -1
  317. package/table/table-header-row.component.d.ts +2 -1
  318. package/table/table-placeholder.directive.d.ts +2 -2
  319. package/table/table-row-def.directive.d.ts +6 -1
  320. package/table/table-row.component.d.ts +2 -1
  321. package/table/table-scroll.directive.d.ts +2 -2
  322. package/table/table.component.d.ts +1 -1
  323. package/table-of-contents/toc-container.directive.d.ts +1 -1
  324. package/table-of-contents/toc-content.directive.d.ts +1 -1
  325. package/table-of-contents/toc-link.directive.d.ts +1 -1
  326. package/tabs/tab-body.component.d.ts +23 -7
  327. package/tabs/tab-context.service.d.ts +3 -0
  328. package/tabs/tab-group.component.d.ts +29 -1
  329. package/tabs/tab-header-active-indicator.component.d.ts +10 -1
  330. package/tabs/tab-header.component.d.ts +85 -2
  331. package/tabs/tab.component.d.ts +19 -1
  332. package/tabs/tabs.types.d.ts +5 -2
  333. package/tag/check-tag/check-tag.component.d.ts +1 -1
  334. package/tag/tag.component.d.ts +1 -1
  335. package/tag/tag.types.d.ts +1 -1
  336. package/theme/style.css +1 -5
  337. package/theme/theme.pipe.d.ts +4 -4
  338. package/theme/theme.types.d.ts +3 -3
  339. package/time-picker/component.d.ts +1 -1
  340. package/time-picker/panel/panel.component.d.ts +1 -1
  341. package/time-picker/time-picker.type.d.ts +1 -1
  342. package/tooltip/base-tooltip.d.ts +1 -1
  343. package/tooltip/tooltip-active.directive.d.ts +1 -1
  344. package/tooltip/tooltip-copy.directive.d.ts +1 -1
  345. package/tooltip/tooltip-intl.d.ts +4 -0
  346. package/tooltip/tooltip.component.d.ts +1 -1
  347. package/tooltip/tooltip.directive.d.ts +1 -1
  348. package/tree-select/tree-node-placeholder.component.d.ts +1 -1
  349. package/tree-select/tree-select.component.d.ts +2 -2
  350. package/tree-select/tree-select.types.d.ts +1 -1
  351. package/types.d.ts +5 -2
  352. package/utils/operators.d.ts +1 -1
  353. package/esm2022/accordion/accordion-item/accordion-item.component.mjs +0 -73
  354. package/esm2022/accordion/accordion.component.mjs +0 -29
  355. package/esm2022/accordion/accordion.module.mjs +0 -39
  356. package/esm2022/alauda-ui.mjs +0 -2
  357. package/esm2022/anchor/anchor.component.mjs +0 -141
  358. package/esm2022/anchor/anchor.directive.mjs +0 -198
  359. package/esm2022/anchor/anchor.module.mjs +0 -35
  360. package/esm2022/autocomplete/autocomplete.component.mjs +0 -72
  361. package/esm2022/autocomplete/autocomplete.directive.mjs +0 -278
  362. package/esm2022/autocomplete/autocomplete.module.mjs +0 -53
  363. package/esm2022/autocomplete/suggestion/suggestion.component.mjs +0 -85
  364. package/esm2022/autocomplete/suggestion-group/suggestion-group.component.mjs +0 -25
  365. package/esm2022/back-top/back-top.component.mjs +0 -68
  366. package/esm2022/back-top/back-top.module.mjs +0 -19
  367. package/esm2022/breadcrumb/breadcrumb-item.component.mjs +0 -33
  368. package/esm2022/breadcrumb/breadcrumb.component.mjs +0 -56
  369. package/esm2022/breadcrumb/breadcrumb.module.mjs +0 -20
  370. package/esm2022/button/button.component.mjs +0 -124
  371. package/esm2022/button/button.module.mjs +0 -20
  372. package/esm2022/button/button.types.mjs +0 -13
  373. package/esm2022/card/card.component.mjs +0 -14
  374. package/esm2022/card/card.module.mjs +0 -40
  375. package/esm2022/card/helper-directives.mjs +0 -45
  376. package/esm2022/checkbox/checkbox-group/checkbox-group.component.mjs +0 -60
  377. package/esm2022/checkbox/checkbox.component.mjs +0 -116
  378. package/esm2022/checkbox/checkbox.module.mjs +0 -20
  379. package/esm2022/color-picker/color-picker.component.mjs +0 -28
  380. package/esm2022/color-picker/color-picker.module.mjs +0 -19
  381. package/esm2022/date-picker/calendar/constant.mjs +0 -31
  382. package/esm2022/date-picker/calendar/date-picker-panel/component.mjs +0 -137
  383. package/esm2022/date-picker/calendar/footer/component.mjs +0 -29
  384. package/esm2022/date-picker/calendar/header/component.mjs +0 -99
  385. package/esm2022/date-picker/calendar/panel/picker-panel.mjs +0 -158
  386. package/esm2022/date-picker/calendar/range-picker-panel/component.mjs +0 -210
  387. package/esm2022/date-picker/calendar/util.mjs +0 -152
  388. package/esm2022/date-picker/date-picker/date-picker.component.mjs +0 -115
  389. package/esm2022/date-picker/date-picker.module.mjs +0 -82
  390. package/esm2022/date-picker/range-picker/range-picker.component.mjs +0 -88
  391. package/esm2022/date-picker/trigger/trigger.component.mjs +0 -76
  392. package/esm2022/dialog/confirm-dialog/confirm-dialog-config.mjs +0 -13
  393. package/esm2022/dialog/confirm-dialog/confirm-dialog.component.mjs +0 -88
  394. package/esm2022/dialog/dialog-config.mjs +0 -14
  395. package/esm2022/dialog/dialog-content/dialog-close.directive.mjs +0 -42
  396. package/esm2022/dialog/dialog-content/dialog-content.component.mjs +0 -19
  397. package/esm2022/dialog/dialog-content/dialog-footer.component.mjs +0 -13
  398. package/esm2022/dialog/dialog-content/dialog-header.component.mjs +0 -42
  399. package/esm2022/dialog/dialog-ref.mjs +0 -52
  400. package/esm2022/dialog/dialog.component.mjs +0 -154
  401. package/esm2022/dialog/dialog.module.mjs +0 -65
  402. package/esm2022/dialog/dialog.service.mjs +0 -124
  403. package/esm2022/drawer/component/drawer.component.mjs +0 -248
  404. package/esm2022/drawer/component/helper-directives.mjs +0 -33
  405. package/esm2022/drawer/drawer.module.mjs +0 -36
  406. package/esm2022/drawer/drawer.service.mjs +0 -47
  407. package/esm2022/dropdown/dropdown-active.directive.mjs +0 -18
  408. package/esm2022/dropdown/dropdown-button/dropdown-button.component.mjs +0 -58
  409. package/esm2022/dropdown/dropdown.directive.mjs +0 -83
  410. package/esm2022/dropdown/dropdown.module.mjs +0 -65
  411. package/esm2022/dropdown/menu/menu-content.directive.mjs +0 -59
  412. package/esm2022/dropdown/menu/menu.component.mjs +0 -26
  413. package/esm2022/dropdown/menu-item/menu-item.component.mjs +0 -35
  414. package/esm2022/dropdown/submenu/submenu.component.mjs +0 -38
  415. package/esm2022/form/common-form.mjs +0 -88
  416. package/esm2022/form/form-item/form-item.component.mjs +0 -121
  417. package/esm2022/form/form.directive.mjs +0 -70
  418. package/esm2022/form/form.module.mjs +0 -48
  419. package/esm2022/form/helper-directives.mjs +0 -78
  420. package/esm2022/i18n/i18n.pipe.mjs +0 -21
  421. package/esm2022/i18n/i18n.service.mjs +0 -46
  422. package/esm2022/icon/icon-register.service.mjs +0 -75
  423. package/esm2022/icon/icon.component.mjs +0 -74
  424. package/esm2022/icon/icon.module.mjs +0 -21
  425. package/esm2022/inline-alert/inline-alert.component.mjs +0 -54
  426. package/esm2022/inline-alert/inline-alert.module.mjs +0 -20
  427. package/esm2022/input/autosize.directive.mjs +0 -56
  428. package/esm2022/input/helper-directives.mjs +0 -43
  429. package/esm2022/input/input-group/input-group.component.mjs +0 -46
  430. package/esm2022/input/input.component.mjs +0 -59
  431. package/esm2022/input/input.module.mjs +0 -85
  432. package/esm2022/input/number-input/number-input.component.mjs +0 -115
  433. package/esm2022/input/search/search.component.mjs +0 -87
  434. package/esm2022/input/tags-input/tags-input.component.mjs +0 -264
  435. package/esm2022/message/base-message.mjs +0 -99
  436. package/esm2022/message/message-wrapper.component.mjs +0 -15
  437. package/esm2022/message/message.component.mjs +0 -77
  438. package/esm2022/message/message.config.mjs +0 -20
  439. package/esm2022/message/message.module.mjs +0 -22
  440. package/esm2022/notification/notification-wrapper.component.mjs +0 -17
  441. package/esm2022/notification/notification.component.mjs +0 -106
  442. package/esm2022/notification/notification.module.mjs +0 -23
  443. package/esm2022/paginator/paginator-intl.mjs +0 -24
  444. package/esm2022/paginator/paginator.component.mjs +0 -124
  445. package/esm2022/paginator/paginator.module.mjs +0 -24
  446. package/esm2022/radio/base-radio.mjs +0 -72
  447. package/esm2022/radio/radio-button/radio-button.component.mjs +0 -41
  448. package/esm2022/radio/radio-group/radio-group.component.mjs +0 -70
  449. package/esm2022/radio/radio.component.mjs +0 -23
  450. package/esm2022/radio/radio.module.mjs +0 -21
  451. package/esm2022/scrolling/fixed-size-table-virtual-scroll-strategy.mjs +0 -80
  452. package/esm2022/scrolling/fixed-size-table-virtual-scroll.directive.mjs +0 -119
  453. package/esm2022/scrolling/fixed-size-virtual-scroll.directive.mjs +0 -27
  454. package/esm2022/scrolling/virtual-scroll-viewport.component.mjs +0 -26
  455. package/esm2022/select/base-select.mjs +0 -345
  456. package/esm2022/select/multi-select/multi-select.component.mjs +0 -318
  457. package/esm2022/select/option/option.component.mjs +0 -119
  458. package/esm2022/select/option-group/option-group.component.mjs +0 -25
  459. package/esm2022/select/select.component.mjs +0 -107
  460. package/esm2022/select/select.module.mjs +0 -78
  461. package/esm2022/select/validators.mjs +0 -78
  462. package/esm2022/shared/click-outside.directive.mjs +0 -29
  463. package/esm2022/sort/sort-errors.mjs +0 -13
  464. package/esm2022/sort/sort-header.component.mjs +0 -74
  465. package/esm2022/sort/sort.directive.mjs +0 -73
  466. package/esm2022/sort/sort.module.mjs +0 -19
  467. package/esm2022/status-bar/status-bar.component.mjs +0 -28
  468. package/esm2022/status-bar/status-bar.module.mjs +0 -19
  469. package/esm2022/steps/steps.component.mjs +0 -180
  470. package/esm2022/steps/steps.module.mjs +0 -19
  471. package/esm2022/switch/switch.component.mjs +0 -43
  472. package/esm2022/switch/switch.module.mjs +0 -18
  473. package/esm2022/table/table-cell-def.directive.mjs +0 -25
  474. package/esm2022/table/table-cell.component.mjs +0 -115
  475. package/esm2022/table/table-cell.directive.mjs +0 -29
  476. package/esm2022/table/table-column-def.directive.mjs +0 -31
  477. package/esm2022/table/table-header-cell-def.directive.mjs +0 -25
  478. package/esm2022/table/table-header-cell.directive.mjs +0 -25
  479. package/esm2022/table/table-header-row-def.directive.mjs +0 -33
  480. package/esm2022/table/table-header-row.component.mjs +0 -24
  481. package/esm2022/table/table-placeholder.directive.mjs +0 -33
  482. package/esm2022/table/table-row-def.directive.mjs +0 -34
  483. package/esm2022/table/table-row.component.mjs +0 -43
  484. package/esm2022/table/table-scroll.directive.mjs +0 -133
  485. package/esm2022/table/table.component.mjs +0 -79
  486. package/esm2022/table/table.module.mjs +0 -96
  487. package/esm2022/table-of-contents/table-of-contents.module.mjs +0 -20
  488. package/esm2022/table-of-contents/toc-container.directive.mjs +0 -111
  489. package/esm2022/table-of-contents/toc-content.directive.mjs +0 -39
  490. package/esm2022/table-of-contents/toc-link.directive.mjs +0 -48
  491. package/esm2022/tabs/tab-body.component.mjs +0 -151
  492. package/esm2022/tabs/tab-context.service.mjs +0 -30
  493. package/esm2022/tabs/tab-group.component.mjs +0 -256
  494. package/esm2022/tabs/tab-header-active-indicator.component.mjs +0 -46
  495. package/esm2022/tabs/tab-header.component.mjs +0 -276
  496. package/esm2022/tabs/tab.component.mjs +0 -77
  497. package/esm2022/tabs/tabs.module.mjs +0 -86
  498. package/esm2022/tabs/tabs.types.mjs +0 -10
  499. package/esm2022/tag/check-tag/check-tag.component.mjs +0 -31
  500. package/esm2022/tag/tag.component.mjs +0 -63
  501. package/esm2022/tag/tag.module.mjs +0 -20
  502. package/esm2022/theme/theme.module.mjs +0 -18
  503. package/esm2022/theme/theme.pipe.mjs +0 -64
  504. package/esm2022/theme/theme.service.mjs +0 -55
  505. package/esm2022/time-picker/component.mjs +0 -181
  506. package/esm2022/time-picker/panel/panel.component.mjs +0 -240
  507. package/esm2022/time-picker/time-picker.module.mjs +0 -56
  508. package/esm2022/tooltip/base-tooltip.mjs +0 -329
  509. package/esm2022/tooltip/tooltip-active.directive.mjs +0 -51
  510. package/esm2022/tooltip/tooltip-copy.directive.mjs +0 -87
  511. package/esm2022/tooltip/tooltip-intl.mjs +0 -21
  512. package/esm2022/tooltip/tooltip.component.mjs +0 -120
  513. package/esm2022/tooltip/tooltip.directive.mjs +0 -44
  514. package/esm2022/tooltip/tooltip.module.mjs +0 -32
  515. package/esm2022/tree-select/tree-select.component.mjs +0 -350
  516. package/esm2022/tree-select/tree-select.module.mjs +0 -34
  517. package/esm2022/types.mjs +0 -8
  518. package/esm2022/utils/bem.mjs +0 -44
  519. package/esm2022/utils/coercion.mjs +0 -13
  520. package/fesm2022/alauda-ui.mjs.map +0 -1
  521. /package/{esm2022 → esm2020}/accordion/index.mjs +0 -0
  522. /package/{esm2022 → esm2020}/anchor/index.mjs +0 -0
  523. /package/{esm2022 → esm2020}/anchor/types.mjs +0 -0
  524. /package/{esm2022 → esm2020}/anchor/utils.mjs +0 -0
  525. /package/{esm2022 → esm2020}/autocomplete/autocomplete.types.mjs +0 -0
  526. /package/{esm2022 → esm2020}/autocomplete/index.mjs +0 -0
  527. /package/{esm2022 → esm2020}/back-top/index.mjs +0 -0
  528. /package/{esm2022 → esm2020}/breadcrumb/index.mjs +0 -0
  529. /package/{esm2022 → esm2020}/button/index.mjs +0 -0
  530. /package/{esm2022 → esm2020}/card/index.mjs +0 -0
  531. /package/{esm2022 → esm2020}/checkbox/index.mjs +0 -0
  532. /package/{esm2022 → esm2020}/color-picker/index.mjs +0 -0
  533. /package/{esm2022 → esm2020}/core/animation/animation-consts.mjs +0 -0
  534. /package/{esm2022 → esm2020}/date-picker/date-picker.type.mjs +0 -0
  535. /package/{esm2022 → esm2020}/date-picker/index.mjs +0 -0
  536. /package/{esm2022 → esm2020}/dialog/dialog.types.mjs +0 -0
  537. /package/{esm2022 → esm2020}/dialog/index.mjs +0 -0
  538. /package/{esm2022 → esm2020}/dialog/utils/errors.mjs +0 -0
  539. /package/{esm2022 → esm2020}/dialog/utils/index.mjs +0 -0
  540. /package/{esm2022 → esm2020}/drawer/component/drawer-ref.mjs +0 -0
  541. /package/{esm2022 → esm2020}/drawer/index.mjs +0 -0
  542. /package/{esm2022 → esm2020}/dropdown/dropdown.types.mjs +0 -0
  543. /package/{esm2022 → esm2020}/dropdown/index.mjs +0 -0
  544. /package/{esm2022 → esm2020}/form/form.types.mjs +0 -0
  545. /package/{esm2022 → esm2020}/form/index.mjs +0 -0
  546. /package/{esm2022 → esm2020}/i18n/i18n.type.mjs +0 -0
  547. /package/{esm2022 → esm2020}/i18n/index.mjs +0 -0
  548. /package/{esm2022 → esm2020}/i18n/language/en.mjs +0 -0
  549. /package/{esm2022 → esm2020}/i18n/language/zh.mjs +0 -0
  550. /package/{esm2022 → esm2020}/icon/icons.mjs +0 -0
  551. /package/{esm2022 → esm2020}/icon/index.mjs +0 -0
  552. /package/{esm2022 → esm2020}/icon/utils.mjs +0 -0
  553. /package/{esm2022 → esm2020}/index.mjs +0 -0
  554. /package/{esm2022 → esm2020}/inline-alert/index.mjs +0 -0
  555. /package/{esm2022 → esm2020}/inline-alert/inline-alert.types.mjs +0 -0
  556. /package/{esm2022 → esm2020}/input/index.mjs +0 -0
  557. /package/{esm2022 → esm2020}/input/tags-input/with-max-row-count.mjs +0 -0
  558. /package/{esm2022 → esm2020}/input/utils/index.mjs +0 -0
  559. /package/{esm2022 → esm2020}/message/index.mjs +0 -0
  560. /package/{esm2022 → esm2020}/message/message-animations.mjs +0 -0
  561. /package/{esm2022 → esm2020}/notification/index.mjs +0 -0
  562. /package/{esm2022 → esm2020}/notification/notification.config.mjs +0 -0
  563. /package/{esm2022 → esm2020}/paginator/index.mjs +0 -0
  564. /package/{esm2022 → esm2020}/radio/index.mjs +0 -0
  565. /package/{esm2022 → esm2020}/radio/radio.types.mjs +0 -0
  566. /package/{esm2022 → esm2020}/scrolling/index.mjs +0 -0
  567. /package/{esm2022 → esm2020}/select/index.mjs +0 -0
  568. /package/{esm2022 → esm2020}/select/select.types.mjs +0 -0
  569. /package/{esm2022 → esm2020}/sort/index.mjs +0 -0
  570. /package/{esm2022 → esm2020}/sort/sort.types.mjs +0 -0
  571. /package/{esm2022 → esm2020}/status-bar/index.mjs +0 -0
  572. /package/{esm2022 → esm2020}/status-bar/status-bar.types.mjs +0 -0
  573. /package/{esm2022 → esm2020}/steps/index.mjs +0 -0
  574. /package/{esm2022 → esm2020}/steps/types.mjs +0 -0
  575. /package/{esm2022 → esm2020}/switch/index.mjs +0 -0
  576. /package/{esm2022 → esm2020}/table/index.mjs +0 -0
  577. /package/{esm2022 → esm2020}/table-of-contents/index.mjs +0 -0
  578. /package/{esm2022 → esm2020}/tabs/index.mjs +0 -0
  579. /package/{esm2022 → esm2020}/tag/index.mjs +0 -0
  580. /package/{esm2022 → esm2020}/tag/tag.types.mjs +0 -0
  581. /package/{esm2022 → esm2020}/theme/index.mjs +0 -0
  582. /package/{esm2022 → esm2020}/theme/theme.types.mjs +0 -0
  583. /package/{esm2022 → esm2020}/theme/utils.mjs +0 -0
  584. /package/{esm2022 → esm2020}/time-picker/constant.mjs +0 -0
  585. /package/{esm2022 → esm2020}/time-picker/index.mjs +0 -0
  586. /package/{esm2022 → esm2020}/time-picker/time-picker.type.mjs +0 -0
  587. /package/{esm2022 → esm2020}/tooltip/index.mjs +0 -0
  588. /package/{esm2022 → esm2020}/tooltip/tooltip.types.mjs +0 -0
  589. /package/{esm2022 → esm2020}/tooltip/utils/index.mjs +0 -0
  590. /package/{esm2022 → esm2020}/tree-select/index.mjs +0 -0
  591. /package/{esm2022 → esm2020}/tree-select/tree-select.types.mjs +0 -0
  592. /package/{esm2022 → esm2020}/utils/animations.mjs +0 -0
  593. /package/{esm2022 → esm2020}/utils/async.mjs +0 -0
  594. /package/{esm2022 → esm2020}/utils/fn.mjs +0 -0
  595. /package/{esm2022 → esm2020}/utils/index.mjs +0 -0
  596. /package/{esm2022 → esm2020}/utils/observe-dom.mjs +0 -0
  597. /package/{esm2022 → esm2020}/utils/operators.mjs +0 -0
  598. /package/{esm2022 → esm2020}/utils/scroll-into-view.mjs +0 -0
  599. /package/{esm2022 → esm2020}/utils/watch-content-exist.mjs +0 -0
@@ -0,0 +1,322 @@
1
+ import { OverlayConfig, } from '@angular/cdk/overlay';
2
+ import { ComponentPortal } from '@angular/cdk/portal';
3
+ import { Directive, EventEmitter, } from '@angular/core';
4
+ import { ReplaySubject, merge, debounceTime, takeUntil, first, filter, Subject, delay, } from 'rxjs';
5
+ import { sleep } from '../utils';
6
+ import { TooltipComponent } from './tooltip.component';
7
+ import { TooltipTrigger } from './tooltip.types';
8
+ import { getOriginPosition, getOverlayPosition } from './utils';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@angular/cdk/overlay";
11
+ export const DISPLAY_DELAY = 50;
12
+ export const HIDDEN_DELAY = 150;
13
+ export class BaseTooltip {
14
+ constructor(overlay, viewContainerRef, elRef, renderer, cdr, ngZone) {
15
+ this.overlay = overlay;
16
+ this.viewContainerRef = viewContainerRef;
17
+ this.elRef = elRef;
18
+ this.renderer = renderer;
19
+ this.cdr = cdr;
20
+ this.ngZone = ngZone;
21
+ this.hideOnClick = false;
22
+ this.disableAnimation = true;
23
+ this.visibleChange = new EventEmitter();
24
+ this.componentClass = TooltipComponent;
25
+ this.hostHovered = false;
26
+ this.tooltipHovered = false;
27
+ this.listeners = [];
28
+ this.inputContent$$ = new ReplaySubject(1);
29
+ this.inputType$$ = new ReplaySubject(1);
30
+ this.inputPosition$$ = new ReplaySubject(1);
31
+ this.inputClass$$ = new ReplaySubject(1);
32
+ this.inputContext$$ = new ReplaySubject(1);
33
+ this.tooltipChanged$ = merge(this.inputContent$$, this.inputType$$, this.inputPosition$$, this.inputClass$$, this.inputContext$$);
34
+ this.destroy$ = new Subject();
35
+ this._position = 'top';
36
+ this._trigger = TooltipTrigger.Hover;
37
+ this._disabled = false;
38
+ this.tooltipChanged$.pipe(debounceTime(0)).subscribe(() => {
39
+ this.updatePosition();
40
+ });
41
+ }
42
+ set content(value) {
43
+ this._content = value;
44
+ this.inputContent$$.next(value);
45
+ }
46
+ get content() {
47
+ return this._content;
48
+ }
49
+ set context(value) {
50
+ this._context = value;
51
+ this.inputContext$$.next(value);
52
+ }
53
+ get context() {
54
+ return this._context;
55
+ }
56
+ set class(value) {
57
+ this.inputClass$$.next(value);
58
+ }
59
+ set type(value) {
60
+ if (!value) {
61
+ return;
62
+ }
63
+ this.inputType$$.next(value);
64
+ }
65
+ set position(value) {
66
+ if (!value || value === this._position) {
67
+ return;
68
+ }
69
+ this._position = value;
70
+ this.inputPosition$$.next(value);
71
+ this._disposeTooltip();
72
+ }
73
+ get position() {
74
+ return this._position;
75
+ }
76
+ set trigger(value) {
77
+ if (!value || value === this._trigger) {
78
+ return;
79
+ }
80
+ this._trigger = value;
81
+ this._disposeTooltip();
82
+ this.ngZone.run(this.updateListeners, this);
83
+ }
84
+ get trigger() {
85
+ return this._trigger;
86
+ }
87
+ set disabled(value) {
88
+ this._disabled = value;
89
+ if (value) {
90
+ this._disposeTooltip();
91
+ }
92
+ }
93
+ get disabled() {
94
+ return this._disabled;
95
+ }
96
+ get isCreated() {
97
+ return !!this.overlayRef;
98
+ }
99
+ _updateTransformOrigin() {
100
+ // @ts-ignore
101
+ const overlayRef = this.overlayRef;
102
+ const positionStrategy = overlayRef._positionStrategy;
103
+ const hasExactPosition = positionStrategy._hasExactPosition(); // 是不是应用了精确定位
104
+ if (!hasExactPosition) {
105
+ return;
106
+ }
107
+ // 如果是精确定位,也就是预设位置空间不足以承载弹出元素,被重新指定新的弹出位置
108
+ const paneRect = positionStrategy._pane.getBoundingClientRect(); // 弹出pane元素Rect
109
+ const triggerElReact = this.elRef.nativeElement.getBoundingClientRect(); // 触发点Rect
110
+ const position = positionStrategy._lastPosition; // 当前策略位置(调整后的最佳的)
111
+ let xOrigin;
112
+ const yOrigin = position.overlayY;
113
+ if (position.overlayX === 'center') {
114
+ xOrigin = 'center';
115
+ }
116
+ else {
117
+ xOrigin = position.overlayX === 'start' ? 'left' : 'right';
118
+ }
119
+ const origins = [xOrigin, yOrigin];
120
+ if (xOrigin === 'center' ||
121
+ (xOrigin === 'left' &&
122
+ ![triggerElReact.right, triggerElReact.left].includes(paneRect.left)) ||
123
+ (xOrigin === 'right' &&
124
+ ![triggerElReact.right, triggerElReact.left].includes(paneRect.right))) {
125
+ const originLeft = triggerElReact.left - paneRect.left + triggerElReact.width / 2;
126
+ origins[0] = Math.min(originLeft, paneRect.width) + 'px';
127
+ }
128
+ if (yOrigin === 'center' ||
129
+ (yOrigin === 'top' &&
130
+ ![triggerElReact.bottom, triggerElReact.top].includes(paneRect.top)) || // 位置没有被完全被颠倒的
131
+ (yOrigin === 'bottom' &&
132
+ ![triggerElReact.bottom, triggerElReact.top].includes(paneRect.bottom)) // 位置没有被完全被颠倒的
133
+ ) {
134
+ const originTop = triggerElReact.top - paneRect.top + triggerElReact.height / 2;
135
+ origins[1] = Math.min(originTop, paneRect.height) + 'px';
136
+ }
137
+ const aniEls = positionStrategy._boundingBox.querySelectorAll(positionStrategy._transformOriginSelector);
138
+ Array.from(aniEls).forEach(el => {
139
+ el.style.transformOrigin = origins.join(' ');
140
+ });
141
+ }
142
+ _createTooltip() {
143
+ if (this.disabled || this.isCreated) {
144
+ return;
145
+ }
146
+ this._disposeTooltip();
147
+ this.overlayRef = this.createOverlay();
148
+ const portal = new ComponentPortal(this.componentClass, this.viewContainerRef);
149
+ this.componentIns = this.overlayRef.attach(portal).instance;
150
+ this.componentIns.setupInputs({
151
+ inputClass$: this.inputClass$$.asObservable(),
152
+ inputContent$: this.inputContent$$.asObservable(),
153
+ inputContext$: this.inputContext$$.asObservable(),
154
+ inputPosition$: this.inputPosition$$.asObservable(),
155
+ inputType$: this.inputType$$.asObservable(),
156
+ disableAnimation: this.disableAnimation,
157
+ });
158
+ this.componentIns.hide$.pipe(takeUntil(this.destroy$)).subscribe(() => {
159
+ this._disposeTooltip();
160
+ });
161
+ if (!this.disableAnimation) {
162
+ merge(this.componentIns.beforeHide$, this.componentIns.beforeShow$.pipe(delay(0)))
163
+ .pipe(takeUntil(this.destroy$))
164
+ .subscribe(this._updateTransformOrigin.bind(this));
165
+ }
166
+ if (this.trigger === TooltipTrigger.Hover) {
167
+ this.componentIns.hover$
168
+ .pipe(takeUntil(this.componentIns.destroy$))
169
+ .subscribe(hovered => {
170
+ this.onTooltipHovered(hovered);
171
+ });
172
+ }
173
+ if (this.trigger === TooltipTrigger.Hover ||
174
+ this.trigger === TooltipTrigger.Click) {
175
+ this.unlistenBody = this.renderer.listen('body', 'click', this.onBodyClick.bind(this));
176
+ }
177
+ this.componentIns?.show();
178
+ this.cdr.markForCheck();
179
+ this.visibleChange.emit(true);
180
+ }
181
+ _disposeTooltip() {
182
+ this.componentIns?.animating$$
183
+ .pipe(filter(animating => !animating), first())
184
+ .subscribe(() => {
185
+ if (this.overlayRef) {
186
+ this.overlayRef.dispose();
187
+ this.overlayRef = null;
188
+ this.componentIns = null;
189
+ this.tooltipHovered = false;
190
+ if (this.unlistenBody) {
191
+ this.unlistenBody();
192
+ this.unlistenBody = null;
193
+ }
194
+ this.visibleChange.emit(false);
195
+ }
196
+ });
197
+ }
198
+ toggleTooltip() {
199
+ if (this.isCreated) {
200
+ this.hide();
201
+ }
202
+ else {
203
+ this.show();
204
+ }
205
+ }
206
+ show() {
207
+ this._createTooltip();
208
+ }
209
+ hide() {
210
+ if (this.disableAnimation) {
211
+ // 如果禁用了动画就立即销毁,而不是等动画完成事件后才销毁
212
+ this._disposeTooltip();
213
+ }
214
+ else {
215
+ this.componentIns?.hide();
216
+ }
217
+ }
218
+ updatePosition() {
219
+ if (this.overlayRef) {
220
+ this.overlayRef.updatePosition();
221
+ }
222
+ }
223
+ ngAfterViewInit() {
224
+ if (this.trigger === TooltipTrigger.Hover) {
225
+ this.updateListeners();
226
+ }
227
+ }
228
+ ngOnDestroy() {
229
+ this.destroy$.next(null);
230
+ this.destroy$.complete();
231
+ this._disposeTooltip();
232
+ this.clearListeners();
233
+ }
234
+ updateListeners() {
235
+ this.clearListeners();
236
+ switch (this.trigger) {
237
+ case TooltipTrigger.Click:
238
+ this.listeners.push(this.renderer.listen(this.elRef.nativeElement, 'click', this.onClick.bind(this)));
239
+ break;
240
+ case TooltipTrigger.Hover:
241
+ this.listeners.push(this.renderer.listen(this.elRef.nativeElement, 'mouseenter', this.onMouseEnter.bind(this)), this.renderer.listen(this.elRef.nativeElement, 'mouseleave', this.onMouseLeave.bind(this)));
242
+ break;
243
+ case TooltipTrigger.Focus:
244
+ this.listeners.push(this.renderer.listen(this.elRef.nativeElement, 'focus', this.onFocus.bind(this)), this.renderer.listen(this.elRef.nativeElement, 'blur', this.onBlur.bind(this)));
245
+ break;
246
+ case TooltipTrigger.Manual:
247
+ break;
248
+ }
249
+ }
250
+ clearListeners() {
251
+ this.listeners.forEach(unListen => {
252
+ unListen();
253
+ });
254
+ this.listeners = [];
255
+ }
256
+ createOverlay() {
257
+ const originPosition = getOriginPosition(this.position);
258
+ const overlayPosition = getOverlayPosition(this.position);
259
+ const positionStrategy = this.overlay
260
+ .position()
261
+ .flexibleConnectedTo(this.elRef)
262
+ .withGrowAfterOpen(true)
263
+ .withTransformOriginOn('.aui-tooltip')
264
+ .withPositions([
265
+ { ...originPosition.main, ...overlayPosition.main },
266
+ { ...originPosition.fallback, ...overlayPosition.fallback },
267
+ ]);
268
+ const scrollStrategy = this.overlay.scrollStrategies.reposition();
269
+ const config = new OverlayConfig({
270
+ positionStrategy,
271
+ scrollStrategy,
272
+ });
273
+ return this.overlay.create(config);
274
+ }
275
+ async onMouseEnter() {
276
+ this.hostHovered = true;
277
+ if (!this.isCreated) {
278
+ await sleep(DISPLAY_DELAY);
279
+ if (this.hostHovered) {
280
+ this._createTooltip();
281
+ }
282
+ }
283
+ }
284
+ async onMouseLeave() {
285
+ this.hostHovered = false;
286
+ await sleep(HIDDEN_DELAY);
287
+ if (!this.tooltipHovered && !this.hostHovered) {
288
+ this.hide();
289
+ }
290
+ }
291
+ async onTooltipHovered(hovered) {
292
+ this.tooltipHovered = hovered;
293
+ if (!hovered) {
294
+ await sleep(HIDDEN_DELAY);
295
+ if (!this.tooltipHovered && !this.hostHovered) {
296
+ this.hide();
297
+ }
298
+ }
299
+ }
300
+ onClick() {
301
+ this.toggleTooltip();
302
+ }
303
+ onBodyClick(event) {
304
+ if (!this.elRef.nativeElement.contains(event.target) &&
305
+ (this.hideOnClick ||
306
+ !this.componentIns.elRef.nativeElement.contains(event.target))) {
307
+ this.hide();
308
+ }
309
+ }
310
+ onFocus() {
311
+ this._createTooltip();
312
+ }
313
+ onBlur() {
314
+ this.hide();
315
+ }
316
+ }
317
+ BaseTooltip.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: BaseTooltip, deps: [{ token: i1.Overlay }, { token: i0.ViewContainerRef }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
318
+ BaseTooltip.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.8", type: BaseTooltip, ngImport: i0 });
319
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: BaseTooltip, decorators: [{
320
+ type: Directive
321
+ }], ctorParameters: function () { return [{ type: i1.Overlay }, { type: i0.ViewContainerRef }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }]; } });
322
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS10b29sdGlwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Rvb2x0aXAvYmFzZS10b29sdGlwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCxhQUFhLEdBRWQsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsZUFBZSxFQUFpQixNQUFNLHFCQUFxQixDQUFDO0FBQ3JFLE9BQU8sRUFHTCxTQUFTLEVBRVQsWUFBWSxHQU1iLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxhQUFhLEVBQ2IsS0FBSyxFQUNMLFlBQVksRUFDWixTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFDTixPQUFPLEVBQ1AsS0FBSyxHQUNOLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVqQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFlLE1BQU0saUJBQWlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sU0FBUyxDQUFDOzs7QUFjaEUsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLEVBQUUsQ0FBQztBQUNoQyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsR0FBRyxDQUFDO0FBY2hDLE1BQU0sT0FBTyxXQUFXO0lBNEd0QixZQUNZLE9BQWdCLEVBQ2hCLGdCQUFrQyxFQUNsQyxLQUFtQyxFQUNuQyxRQUFtQixFQUNuQixHQUFzQixFQUN0QixNQUFjO1FBTGQsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNoQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLFVBQUssR0FBTCxLQUFLLENBQThCO1FBQ25DLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsV0FBTSxHQUFOLE1BQU0s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QUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7O3dHQTdaVSxXQUFXOzRGQUFYLFdBQVc7MkZBQVgsV0FBVztrQkFEdkIsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbm5lY3RlZFBvc2l0aW9uLFxuICBPdmVybGF5LFxuICBPdmVybGF5Q29uZmlnLFxuICBPdmVybGF5UmVmLFxufSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBDb21wb25lbnRQb3J0YWwsIENvbXBvbmVudFR5cGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgTmdab25lLFxuICBPbkRlc3Ryb3ksXG4gIFJlbmRlcmVyMixcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgUmVwbGF5U3ViamVjdCxcbiAgbWVyZ2UsXG4gIGRlYm91bmNlVGltZSxcbiAgdGFrZVVudGlsLFxuICBmaXJzdCxcbiAgZmlsdGVyLFxuICBTdWJqZWN0LFxuICBkZWxheSxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IHNsZWVwIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5pbXBvcnQgeyBUb29sdGlwQ29tcG9uZW50IH0gZnJvbSAnLi90b29sdGlwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb29sdGlwVHJpZ2dlciwgVG9vbHRpcFR5cGUgfSBmcm9tICcuL3Rvb2x0aXAudHlwZXMnO1xuaW1wb3J0IHsgZ2V0T3JpZ2luUG9zaXRpb24sIGdldE92ZXJsYXlQb3NpdGlvbiB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRvb2x0aXBJbnRlcmZhY2Uge1xuICBjb250ZW50OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+O1xuICBjb250ZXh0OiBhbnk7XG4gIGNsYXNzOiBzdHJpbmc7XG4gIHR5cGU6IFRvb2x0aXBUeXBlO1xuICBwb3NpdGlvbjogc3RyaW5nO1xuICB0cmlnZ2VyOiBUb29sdGlwVHJpZ2dlcjtcbiAgZGlzYWJsZWQ6IGJvb2xlYW47XG4gIGhpZGVPbkNsaWNrOiBib29sZWFuO1xuICB2aXNpYmxlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj47XG59XG5cbmV4cG9ydCBjb25zdCBESVNQTEFZX0RFTEFZID0gNTA7XG5leHBvcnQgY29uc3QgSElEREVOX0RFTEFZID0gMTUwO1xuXG4vLyBAdHMtaWdub3JlXG5pbnRlcmZhY2UgSGFja092ZXJsYXlSZWYgZXh0ZW5kcyBPdmVybGF5UmVmIHtcbiAgX3Bvc2l0aW9uU3RyYXRlZ3k6IHtcbiAgICBfaGFzRXhhY3RQb3NpdGlvbjogKCkgPT4gYm9vbGVhbjtcbiAgICBfcGFuZTogSFRNTEVsZW1lbnQ7XG4gICAgX2xhc3RQb3NpdGlvbjogQ29ubmVjdGVkUG9zaXRpb24gfCBudWxsO1xuICAgIF9ib3VuZGluZ0JveDogSFRNTEVsZW1lbnQ7XG4gICAgX3RyYW5zZm9ybU9yaWdpblNlbGVjdG9yOiBzdHJpbmc7XG4gIH07XG59XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGNsYXNzIEJhc2VUb29sdGlwPFQgPSBhbnk+XG4gIGltcGxlbWVudHMgVG9vbHRpcEludGVyZmFjZSwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95XG57XG4gIHNldCBjb250ZW50KHZhbHVlOiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+KSB7XG4gICAgdGhpcy5fY29udGVudCA9IHZhbHVlO1xuICAgIHRoaXMuaW5wdXRDb250ZW50JCQubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBnZXQgY29udGVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5fY29udGVudDtcbiAgfVxuXG4gIHNldCBjb250ZXh0KHZhbHVlOiBUKSB7XG4gICAgdGhpcy5fY29udGV4dCA9IHZhbHVlO1xuICAgIHRoaXMuaW5wdXRDb250ZXh0JCQubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBnZXQgY29udGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5fY29udGV4dDtcbiAgfVxuXG4gIHNldCBjbGFzcyh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5pbnB1dENsYXNzJCQubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBzZXQgdHlwZSh2YWx1ZTogVG9vbHRpcFR5cGUpIHtcbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuaW5wdXRUeXBlJCQubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBzZXQgcG9zaXRpb24odmFsdWU6IHN0cmluZykge1xuICAgIGlmICghdmFsdWUgfHwgdmFsdWUgPT09IHRoaXMuX3Bvc2l0aW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3Bvc2l0aW9uID0gdmFsdWU7XG4gICAgdGhpcy5pbnB1dFBvc2l0aW9uJCQubmV4dCh2YWx1ZSk7XG4gICAgdGhpcy5fZGlzcG9zZVRvb2x0aXAoKTtcbiAgfVxuXG4gIGdldCBwb3NpdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5fcG9zaXRpb247XG4gIH1cblxuICBzZXQgdHJpZ2dlcih2YWx1ZSkge1xuICAgIGlmICghdmFsdWUgfHwgdmFsdWUgPT09IHRoaXMuX3RyaWdnZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fdHJpZ2dlciA9IHZhbHVlO1xuICAgIHRoaXMuX2Rpc3Bvc2VUb29sdGlwKCk7XG4gICAgdGhpcy5uZ1pvbmUucnVuKHRoaXMudXBkYXRlTGlzdGVuZXJzLCB0aGlzKTtcbiAgfVxuXG4gIGdldCB0cmlnZ2VyKCkge1xuICAgIHJldHVybiB0aGlzLl90cmlnZ2VyO1xuICB9XG5cbiAgc2V0IGRpc2FibGVkKHZhbHVlKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSB2YWx1ZTtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuX2Rpc3Bvc2VUb29sdGlwKCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGRpc2FibGVkKCkge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgfVxuXG4gIGhpZGVPbkNsaWNrID0gZmFsc2U7XG4gIGRpc2FibGVBbmltYXRpb24gPSB0cnVlO1xuXG4gIHZpc2libGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgb3ZlcmxheVJlZjogT3ZlcmxheVJlZjtcbiAgcHJvdGVjdGVkIGNvbXBvbmVudENsYXNzOiBDb21wb25lbnRUeXBlPGFueT4gPSBUb29sdGlwQ29tcG9uZW50O1xuICBwcm90ZWN0ZWQgY29tcG9uZW50SW5zOiBUb29sdGlwQ29tcG9uZW50O1xuICBwcm90ZWN0ZWQgaG9zdEhvdmVyZWQgPSBmYWxzZTtcbiAgcHJvdGVjdGVkIHRvb2x0aXBIb3ZlcmVkID0gZmFsc2U7XG4gIHByb3RlY3RlZCBsaXN0ZW5lcnM6IEFycmF5PCgpID0+IHZvaWQ+ID0gW107XG4gIHByb3RlY3RlZCB1bmxpc3RlbkJvZHk6ICgpID0+IHZvaWQ7XG5cbiAgcHJvdGVjdGVkIGlucHV0Q29udGVudCQkID0gbmV3IFJlcGxheVN1YmplY3Q8c3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55Pj4oMSk7XG4gIHByb3RlY3RlZCBpbnB1dFR5cGUkJCA9IG5ldyBSZXBsYXlTdWJqZWN0PFRvb2x0aXBUeXBlPigxKTtcbiAgcHJvdGVjdGVkIGlucHV0UG9zaXRpb24kJCA9IG5ldyBSZXBsYXlTdWJqZWN0PHN0cmluZz4oMSk7XG4gIHByb3RlY3RlZCBpbnB1dENsYXNzJCQgPSBuZXcgUmVwbGF5U3ViamVjdDxzdHJpbmc+KDEpO1xuICBwcm90ZWN0ZWQgaW5wdXRDb250ZXh0JCQgPSBuZXcgUmVwbGF5U3ViamVjdDxhbnk+KDEpO1xuXG4gIHByb3RlY3RlZCB0b29sdGlwQ2hhbmdlZCQgPSBtZXJnZShcbiAgICB0aGlzLmlucHV0Q29udGVudCQkLFxuICAgIHRoaXMuaW5wdXRUeXBlJCQsXG4gICAgdGhpcy5pbnB1dFBvc2l0aW9uJCQsXG4gICAgdGhpcy5pbnB1dENsYXNzJCQsXG4gICAgdGhpcy5pbnB1dENvbnRleHQkJCxcbiAgKTtcblxuICBwcm90ZWN0ZWQgZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xuXG4gIHByb3RlY3RlZCBfcG9zaXRpb24gPSAndG9wJztcbiAgcHJvdGVjdGVkIF90cmlnZ2VyID0gVG9vbHRpcFRyaWdnZXIuSG92ZXI7XG4gIHByb3RlY3RlZCBfZGlzYWJsZWQgPSBmYWxzZTtcbiAgcHJvdGVjdGVkIF9jb250ZXh0OiBUO1xuICBwcm90ZWN0ZWQgX2NvbnRlbnQ6IHN0cmluZyB8IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIGdldCBpc0NyZWF0ZWQoKSB7XG4gICAgcmV0dXJuICEhdGhpcy5vdmVybGF5UmVmO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgcHJvdGVjdGVkIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJvdGVjdGVkIGVsUmVmOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+LFxuICAgIHByb3RlY3RlZCByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByb3RlY3RlZCBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByb3RlY3RlZCBuZ1pvbmU6IE5nWm9uZSxcbiAgKSB7XG4gICAgdGhpcy50b29sdGlwQ2hhbmdlZCQucGlwZShkZWJvdW5jZVRpbWUoMCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVUcmFuc2Zvcm1PcmlnaW4oKSB7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGNvbnN0IG92ZXJsYXlSZWYgPSB0aGlzLm92ZXJsYXlSZWYgYXMgSGFja092ZXJsYXlSZWY7XG4gICAgY29uc3QgcG9zaXRpb25TdHJhdGVneSA9IG92ZXJsYXlSZWYuX3Bvc2l0aW9uU3RyYXRlZ3k7XG4gICAgY29uc3QgaGFzRXhhY3RQb3NpdGlvbiA9IHBvc2l0aW9uU3RyYXRlZ3kuX2hhc0V4YWN0UG9zaXRpb24oKTsgLy8g5piv5LiN5piv5bqU55So5LqG57K+56Gu5a6a5L2NXG4gICAgaWYgKCFoYXNFeGFjdFBvc2l0aW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIC8vIOWmguaenOaYr+eyvuehruWumuS9je+8jOS5n+WwseaYr+mihOiuvuS9jee9ruepuumXtOS4jei2s+S7peaJv+i9veW8ueWHuuWFg+e0oO+8jOiiq+mHjeaWsOaMh+WumuaWsOeahOW8ueWHuuS9jee9rlxuICAgIGNvbnN0IHBhbmVSZWN0ID0gcG9zaXRpb25TdHJhdGVneS5fcGFuZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsgLy8g5by55Ye6cGFuZeWFg+e0oFJlY3RcbiAgICBjb25zdCB0cmlnZ2VyRWxSZWFjdCA9IHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsgLy8g6Kem5Y+R54K5UmVjdFxuXG4gICAgY29uc3QgcG9zaXRpb24gPSBwb3NpdGlvblN0cmF0ZWd5Ll9sYXN0UG9zaXRpb247IC8vIOW9k+WJjeetlueVpeS9jee9ru+8iOiwg+aVtOWQjueahOacgOS9s+eahO+8iVxuICAgIGxldCB4T3JpZ2luOiAnbGVmdCcgfCAncmlnaHQnIHwgJ2NlbnRlcic7XG4gICAgY29uc3QgeU9yaWdpbjogJ3RvcCcgfCAnYm90dG9tJyB8ICdjZW50ZXInID0gcG9zaXRpb24ub3ZlcmxheVk7XG4gICAgaWYgKHBvc2l0aW9uLm92ZXJsYXlYID09PSAnY2VudGVyJykge1xuICAgICAgeE9yaWdpbiA9ICdjZW50ZXInO1xuICAgIH0gZWxzZSB7XG4gICAgICB4T3JpZ2luID0gcG9zaXRpb24ub3ZlcmxheVggPT09ICdzdGFydCcgPyAnbGVmdCcgOiAncmlnaHQnO1xuICAgIH1cblxuICAgIGNvbnN0IG9yaWdpbnM6IHN0cmluZ1tdID0gW3hPcmlnaW4sIHlPcmlnaW5dO1xuICAgIGlmIChcbiAgICAgIHhPcmlnaW4gPT09ICdjZW50ZXInIHx8XG4gICAgICAoeE9yaWdpbiA9PT0gJ2xlZnQnICYmXG4gICAgICAgICFbdHJpZ2dlckVsUmVhY3QucmlnaHQsIHRyaWdnZXJFbFJlYWN0LmxlZnRdLmluY2x1ZGVzKHBhbmVSZWN0LmxlZnQpKSB8fFxuICAgICAgKHhPcmlnaW4gPT09ICdyaWdodCcgJiZcbiAgICAgICAgIVt0cmlnZ2VyRWxSZWFjdC5yaWdodCwgdHJpZ2dlckVsUmVhY3QubGVmdF0uaW5jbHVkZXMocGFuZVJlY3QucmlnaHQpKVxuICAgICkge1xuICAgICAgY29uc3Qgb3JpZ2luTGVmdCA9XG4gICAgICAgIHRyaWdnZXJFbFJlYWN0LmxlZnQgLSBwYW5lUmVjdC5sZWZ0ICsgdHJpZ2dlckVsUmVhY3Qud2lkdGggLyAyO1xuICAgICAgb3JpZ2luc1swXSA9IE1hdGgubWluKG9yaWdpbkxlZnQsIHBhbmVSZWN0LndpZHRoKSArICdweCc7XG4gICAgfVxuICAgIGlmIChcbiAgICAgIHlPcmlnaW4gPT09ICdjZW50ZXInIHx8XG4gICAgICAoeU9yaWdpbiA9PT0gJ3RvcCcgJiZcbiAgICAgICAgIVt0cmlnZ2VyRWxSZWFjdC5ib3R0b20sIHRyaWdnZXJFbFJlYWN0LnRvcF0uaW5jbHVkZXMocGFuZVJlY3QudG9wKSkgfHwgLy8g5L2N572u5rKh5pyJ6KKr5a6M5YWo6KKr6aKg5YCS55qEXG4gICAgICAoeU9yaWdpbiA9PT0gJ2JvdHRvbScgJiZcbiAgICAgICAgIVt0cmlnZ2VyRWxSZWFjdC5ib3R0b20sIHRyaWdnZXJFbFJlYWN0LnRvcF0uaW5jbHVkZXMocGFuZVJlY3QuYm90dG9tKSkgLy8g5L2N572u5rKh5pyJ6KKr5a6M5YWo6KKr6aKg5YCS55qEXG4gICAgKSB7XG4gICAgICBjb25zdCBvcmlnaW5Ub3AgPVxuICAgICAgICB0cmlnZ2VyRWxSZWFjdC50b3AgLSBwYW5lUmVjdC50b3AgKyB0cmlnZ2VyRWxSZWFjdC5oZWlnaHQgLyAyO1xuICAgICAgb3JpZ2luc1sxXSA9IE1hdGgubWluKG9yaWdpblRvcCwgcGFuZVJlY3QuaGVpZ2h0KSArICdweCc7XG4gICAgfVxuICAgIGNvbnN0IGFuaUVscyA9IHBvc2l0aW9uU3RyYXRlZ3kuX2JvdW5kaW5nQm94LnF1ZXJ5U2VsZWN0b3JBbGw8SFRNTEVsZW1lbnQ+KFxuICAgICAgcG9zaXRpb25TdHJhdGVneS5fdHJhbnNmb3JtT3JpZ2luU2VsZWN0b3IsXG4gICAgKTtcbiAgICBBcnJheS5mcm9tKGFuaUVscykuZm9yRWFjaChlbCA9PiB7XG4gICAgICBlbC5zdHlsZS50cmFuc2Zvcm1PcmlnaW4gPSBvcmlnaW5zLmpvaW4oJyAnKTtcbiAgICB9KTtcbiAgfVxuXG4gIF9jcmVhdGVUb29sdGlwKCkge1xuICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMuaXNDcmVhdGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX2Rpc3Bvc2VUb29sdGlwKCk7XG4gICAgdGhpcy5vdmVybGF5UmVmID0gdGhpcy5jcmVhdGVPdmVybGF5KCk7XG4gICAgY29uc3QgcG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbChcbiAgICAgIHRoaXMuY29tcG9uZW50Q2xhc3MsXG4gICAgICB0aGlzLnZpZXdDb250YWluZXJSZWYsXG4gICAgKTtcbiAgICB0aGlzLmNvbXBvbmVudElucyA9IHRoaXMub3ZlcmxheVJlZi5hdHRhY2gocG9ydGFsKS5pbnN0YW5jZTtcbiAgICB0aGlzLmNvbXBvbmVudElucy5zZXR1cElucHV0cyh7XG4gICAgICBpbnB1dENsYXNzJDogdGhpcy5pbnB1dENsYXNzJCQuYXNPYnNlcnZhYmxlKCksXG4gICAgICBpbnB1dENvbnRlbnQkOiB0aGlzLmlucHV0Q29udGVudCQkLmFzT2JzZXJ2YWJsZSgpLFxuICAgICAgaW5wdXRDb250ZXh0JDogdGhpcy5pbnB1dENvbnRleHQkJC5hc09ic2VydmFibGUoKSxcbiAgICAgIGlucHV0UG9zaXRpb24kOiB0aGlzLmlucHV0UG9zaXRpb24kJC5hc09ic2VydmFibGUoKSxcbiAgICAgIGlucHV0VHlwZSQ6IHRoaXMuaW5wdXRUeXBlJCQuYXNPYnNlcnZhYmxlKCksXG4gICAgICBkaXNhYmxlQW5pbWF0aW9uOiB0aGlzLmRpc2FibGVBbmltYXRpb24sXG4gICAgfSk7XG4gICAgdGhpcy5jb21wb25lbnRJbnMuaGlkZSQucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLl9kaXNwb3NlVG9vbHRpcCgpO1xuICAgIH0pO1xuXG4gICAgaWYgKCF0aGlzLmRpc2FibGVBbmltYXRpb24pIHtcbiAgICAgIG1lcmdlKFxuICAgICAgICB0aGlzLmNvbXBvbmVudElucy5iZWZvcmVIaWRlJCxcbiAgICAgICAgdGhpcy5jb21wb25lbnRJbnMuYmVmb3JlU2hvdyQucGlwZShkZWxheSgwKSksXG4gICAgICApXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgICAgLnN1YnNjcmliZSh0aGlzLl91cGRhdGVUcmFuc2Zvcm1PcmlnaW4uYmluZCh0aGlzKSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudHJpZ2dlciA9PT0gVG9vbHRpcFRyaWdnZXIuSG92ZXIpIHtcbiAgICAgIHRoaXMuY29tcG9uZW50SW5zLmhvdmVyJFxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnRJbnMuZGVzdHJveSQpKVxuICAgICAgICAuc3Vic2NyaWJlKGhvdmVyZWQgPT4ge1xuICAgICAgICAgIHRoaXMub25Ub29sdGlwSG92ZXJlZChob3ZlcmVkKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGlmIChcbiAgICAgIHRoaXMudHJpZ2dlciA9PT0gVG9vbHRpcFRyaWdnZXIuSG92ZXIgfHxcbiAgICAgIHRoaXMudHJpZ2dlciA9PT0gVG9vbHRpcFRyaWdnZXIuQ2xpY2tcbiAgICApIHtcbiAgICAgIHRoaXMudW5saXN0ZW5Cb2R5ID0gdGhpcy5yZW5kZXJlci5saXN0ZW4oXG4gICAgICAgICdib2R5JyxcbiAgICAgICAgJ2NsaWNrJyxcbiAgICAgICAgdGhpcy5vbkJvZHlDbGljay5iaW5kKHRoaXMpLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLmNvbXBvbmVudElucz8uc2hvdygpO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuXG4gICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQodHJ1ZSk7XG4gIH1cblxuICBfZGlzcG9zZVRvb2x0aXAoKSB7XG4gICAgdGhpcy5jb21wb25lbnRJbnM/LmFuaW1hdGluZyQkXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKGFuaW1hdGluZyA9PiAhYW5pbWF0aW5nKSxcbiAgICAgICAgZmlyc3QoKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5vdmVybGF5UmVmKSB7XG4gICAgICAgICAgdGhpcy5vdmVybGF5UmVmLmRpc3Bvc2UoKTtcbiAgICAgICAgICB0aGlzLm92ZXJsYXlSZWYgPSBudWxsO1xuICAgICAgICAgIHRoaXMuY29tcG9uZW50SW5zID0gbnVsbDtcbiAgICAgICAgICB0aGlzLnRvb2x0aXBIb3ZlcmVkID0gZmFsc2U7XG4gICAgICAgICAgaWYgKHRoaXMudW5saXN0ZW5Cb2R5KSB7XG4gICAgICAgICAgICB0aGlzLnVubGlzdGVuQm9keSgpO1xuICAgICAgICAgICAgdGhpcy51bmxpc3RlbkJvZHkgPSBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLnZpc2libGVDaGFuZ2UuZW1pdChmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgdG9nZ2xlVG9vbHRpcCgpIHtcbiAgICBpZiAodGhpcy5pc0NyZWF0ZWQpIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNob3coKTtcbiAgICB9XG4gIH1cblxuICBzaG93KCkge1xuICAgIHRoaXMuX2NyZWF0ZVRvb2x0aXAoKTtcbiAgfVxuXG4gIGhpZGUoKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZUFuaW1hdGlvbikge1xuICAgICAgLy8g5aaC5p6c56aB55So5LqG5Yqo55S75bCx56uL5Y2z6ZSA5q+B77yM6ICM5LiN5piv562J5Yqo55S75a6M5oiQ5LqL5Lu25ZCO5omN6ZSA5q+BXG4gICAgICB0aGlzLl9kaXNwb3NlVG9vbHRpcCgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNvbXBvbmVudElucz8uaGlkZSgpO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVBvc2l0aW9uKCkge1xuICAgIGlmICh0aGlzLm92ZXJsYXlSZWYpIHtcbiAgICAgIHRoaXMub3ZlcmxheVJlZi51cGRhdGVQb3NpdGlvbigpO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAodGhpcy50cmlnZ2VyID09PSBUb29sdGlwVHJpZ2dlci5Ib3Zlcikge1xuICAgICAgdGhpcy51cGRhdGVMaXN0ZW5lcnMoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQobnVsbCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX2Rpc3Bvc2VUb29sdGlwKCk7XG4gICAgdGhpcy5jbGVhckxpc3RlbmVycygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHVwZGF0ZUxpc3RlbmVycygpIHtcbiAgICB0aGlzLmNsZWFyTGlzdGVuZXJzKCk7XG4gICAgc3dpdGNoICh0aGlzLnRyaWdnZXIpIHtcbiAgICAgIGNhc2UgVG9vbHRpcFRyaWdnZXIuQ2xpY2s6XG4gICAgICAgIHRoaXMubGlzdGVuZXJzLnB1c2goXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5saXN0ZW4oXG4gICAgICAgICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAnY2xpY2snLFxuICAgICAgICAgICAgdGhpcy5vbkNsaWNrLmJpbmQodGhpcykgYXMgKCkgPT4gdm9pZCxcbiAgICAgICAgICApLFxuICAgICAgICApO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgVG9vbHRpcFRyaWdnZXIuSG92ZXI6XG4gICAgICAgIHRoaXMubGlzdGVuZXJzLnB1c2goXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5saXN0ZW4oXG4gICAgICAgICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAnbW91c2VlbnRlcicsXG4gICAgICAgICAgICB0aGlzLm9uTW91c2VFbnRlci5iaW5kKHRoaXMpIGFzICgpID0+IHZvaWQsXG4gICAgICAgICAgKSxcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLmxpc3RlbihcbiAgICAgICAgICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICdtb3VzZWxlYXZlJyxcbiAgICAgICAgICAgIHRoaXMub25Nb3VzZUxlYXZlLmJpbmQodGhpcykgYXMgKCkgPT4gdm9pZCxcbiAgICAgICAgICApLFxuICAgICAgICApO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgVG9vbHRpcFRyaWdnZXIuRm9jdXM6XG4gICAgICAgIHRoaXMubGlzdGVuZXJzLnB1c2goXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5saXN0ZW4oXG4gICAgICAgICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAnZm9jdXMnLFxuICAgICAgICAgICAgdGhpcy5vbkZvY3VzLmJpbmQodGhpcyksXG4gICAgICAgICAgKSxcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLmxpc3RlbihcbiAgICAgICAgICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICdibHVyJyxcbiAgICAgICAgICAgIHRoaXMub25CbHVyLmJpbmQodGhpcyksXG4gICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIFRvb2x0aXBUcmlnZ2VyLk1hbnVhbDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGNsZWFyTGlzdGVuZXJzKCkge1xuICAgIHRoaXMubGlzdGVuZXJzLmZvckVhY2godW5MaXN0ZW4gPT4ge1xuICAgICAgdW5MaXN0ZW4oKTtcbiAgICB9KTtcbiAgICB0aGlzLmxpc3RlbmVycyA9IFtdO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZU92ZXJsYXkoKTogT3ZlcmxheVJlZiB7XG4gICAgY29uc3Qgb3JpZ2luUG9zaXRpb24gPSBnZXRPcmlnaW5Qb3NpdGlvbih0aGlzLnBvc2l0aW9uKTtcbiAgICBjb25zdCBvdmVybGF5UG9zaXRpb24gPSBnZXRPdmVybGF5UG9zaXRpb24odGhpcy5wb3NpdGlvbik7XG5cbiAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5vdmVybGF5XG4gICAgICAucG9zaXRpb24oKVxuICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8odGhpcy5lbFJlZilcbiAgICAgIC53aXRoR3Jvd0FmdGVyT3Blbih0cnVlKVxuICAgICAgLndpdGhUcmFuc2Zvcm1PcmlnaW5PbignLmF1aS10b29sdGlwJylcbiAgICAgIC53aXRoUG9zaXRpb25zKFtcbiAgICAgICAgeyAuLi5vcmlnaW5Qb3NpdGlvbi5tYWluLCAuLi5vdmVybGF5UG9zaXRpb24ubWFpbiB9LFxuICAgICAgICB7IC4uLm9yaWdpblBvc2l0aW9uLmZhbGxiYWNrLCAuLi5vdmVybGF5UG9zaXRpb24uZmFsbGJhY2sgfSxcbiAgICAgIF0pO1xuXG4gICAgY29uc3Qgc2Nyb2xsU3RyYXRlZ3kgPSB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKCk7XG5cbiAgICBjb25zdCBjb25maWcgPSBuZXcgT3ZlcmxheUNvbmZpZyh7XG4gICAgICBwb3NpdGlvblN0cmF0ZWd5LFxuICAgICAgc2Nyb2xsU3RyYXRlZ3ksXG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXMub3ZlcmxheS5jcmVhdGUoY29uZmlnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBvbk1vdXNlRW50ZXIoKSB7XG4gICAgdGhpcy5ob3N0SG92ZXJlZCA9IHRydWU7XG4gICAgaWYgKCF0aGlzLmlzQ3JlYXRlZCkge1xuICAgICAgYXdhaXQgc2xlZXAoRElTUExBWV9ERUxBWSk7XG4gICAgICBpZiAodGhpcy5ob3N0SG92ZXJlZCkge1xuICAgICAgICB0aGlzLl9jcmVhdGVUb29sdGlwKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIG9uTW91c2VMZWF2ZSgpIHtcbiAgICB0aGlzLmhvc3RIb3ZlcmVkID0gZmFsc2U7XG4gICAgYXdhaXQgc2xlZXAoSElEREVOX0RFTEFZKTtcbiAgICBpZiAoIXRoaXMudG9vbHRpcEhvdmVyZWQgJiYgIXRoaXMuaG9zdEhvdmVyZWQpIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBvblRvb2x0aXBIb3ZlcmVkKGhvdmVyZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnRvb2x0aXBIb3ZlcmVkID0gaG92ZXJlZDtcbiAgICBpZiAoIWhvdmVyZWQpIHtcbiAgICAgIGF3YWl0IHNsZWVwKEhJRERFTl9ERUxBWSk7XG4gICAgICBpZiAoIXRoaXMudG9vbHRpcEhvdmVyZWQgJiYgIXRoaXMuaG9zdEhvdmVyZWQpIHtcbiAgICAgICAgdGhpcy5oaWRlKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG9uQ2xpY2soKSB7XG4gICAgdGhpcy50b2dnbGVUb29sdGlwKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25Cb2R5Q2xpY2soZXZlbnQ6IEV2ZW50KSB7XG4gICAgaWYgKFxuICAgICAgIXRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQgYXMgTm9kZSkgJiZcbiAgICAgICh0aGlzLmhpZGVPbkNsaWNrIHx8XG4gICAgICAgICF0aGlzLmNvbXBvbmVudElucy5lbFJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKSlcbiAgICApIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvbkZvY3VzKCkge1xuICAgIHRoaXMuX2NyZWF0ZVRvb2x0aXAoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvbkJsdXIoKSB7XG4gICAgdGhpcy5oaWRlKCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,49 @@
1
+ import { Directive, Input, } from '@angular/core';
2
+ import { Subject, takeUntil } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./base-tooltip";
5
+ export class TooltipActiveDirective {
6
+ constructor(tooltipDirective, el, renderer) {
7
+ this.el = el;
8
+ this.renderer = renderer;
9
+ this.customClass = '';
10
+ this.destroy$ = new Subject();
11
+ tooltipDirective.visibleChange
12
+ .pipe(takeUntil(this.destroy$))
13
+ .subscribe(visible => {
14
+ this[visible ? 'addClass' : 'removeClass']();
15
+ });
16
+ }
17
+ ngOnDestroy() {
18
+ this.destroy$.next(null);
19
+ this.destroy$.complete();
20
+ }
21
+ addClass() {
22
+ const classArr = typeof this.customClass === 'string'
23
+ ? this.customClass.split(' ')
24
+ : this.customClass;
25
+ classArr.forEach(name => {
26
+ this.renderer.addClass(this.el.nativeElement, name);
27
+ });
28
+ }
29
+ removeClass() {
30
+ const classArr = typeof this.customClass === 'string'
31
+ ? this.customClass.split(' ')
32
+ : this.customClass;
33
+ classArr.forEach(name => {
34
+ this.renderer.removeClass(this.el.nativeElement, name);
35
+ });
36
+ }
37
+ }
38
+ TooltipActiveDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: TooltipActiveDirective, deps: [{ token: i1.BaseTooltip }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
39
+ TooltipActiveDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.8", type: TooltipActiveDirective, selector: "[auiTooltipActive]", inputs: { customClass: ["auiTooltipActive", "customClass"] }, ngImport: i0 });
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: TooltipActiveDirective, decorators: [{
41
+ type: Directive,
42
+ args: [{
43
+ selector: '[auiTooltipActive]',
44
+ }]
45
+ }], ctorParameters: function () { return [{ type: i1.BaseTooltip }, { type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { customClass: [{
46
+ type: Input,
47
+ args: ['auiTooltipActive']
48
+ }] } });
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1hY3RpdmUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Rvb2x0aXAvdG9vbHRpcC1hY3RpdmUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsS0FBSyxHQUdOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFPMUMsTUFBTSxPQUFPLHNCQUFzQjtJQU1qQyxZQUNFLGdCQUE2QixFQUNaLEVBQWMsRUFDZCxRQUFtQjtRQURuQixPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQ2QsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQVB0QyxnQkFBVyxHQUFzQixFQUFFLENBQUM7UUFFcEMsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFPdkIsZ0JBQWdCLENBQUMsYUFBYTthQUMzQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUM5QixTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDbkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO1FBQy9DLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFTyxRQUFRO1FBQ2QsTUFBTSxRQUFRLEdBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxLQUFLLFFBQVE7WUFDbEMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztZQUM3QixDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUN2QixRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3RCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3RELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLFdBQVc7UUFDakIsTUFBTSxRQUFRLEdBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxLQUFLLFFBQVE7WUFDbEMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztZQUM3QixDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUN2QixRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3RCLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3pELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7bUhBekNVLHNCQUFzQjt1R0FBdEIsc0JBQXNCOzJGQUF0QixzQkFBc0I7a0JBSGxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtpQkFDL0I7bUpBR0MsV0FBVztzQkFEVixLQUFLO3VCQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgUmVuZGVyZXIyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBCYXNlVG9vbHRpcCB9IGZyb20gJy4vYmFzZS10b29sdGlwJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2F1aVRvb2x0aXBBY3RpdmVdJyxcbn0pXG5leHBvcnQgY2xhc3MgVG9vbHRpcEFjdGl2ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgnYXVpVG9vbHRpcEFjdGl2ZScpXG4gIGN1c3RvbUNsYXNzOiBzdHJpbmcgfCBzdHJpbmdbXSA9ICcnO1xuXG4gIGRlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICB0b29sdGlwRGlyZWN0aXZlOiBCYXNlVG9vbHRpcCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgKSB7XG4gICAgdG9vbHRpcERpcmVjdGl2ZS52aXNpYmxlQ2hhbmdlXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKHZpc2libGUgPT4ge1xuICAgICAgICB0aGlzW3Zpc2libGUgPyAnYWRkQ2xhc3MnIDogJ3JlbW92ZUNsYXNzJ10oKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KG51bGwpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgYWRkQ2xhc3MoKSB7XG4gICAgY29uc3QgY2xhc3NBcnIgPVxuICAgICAgdHlwZW9mIHRoaXMuY3VzdG9tQ2xhc3MgPT09ICdzdHJpbmcnXG4gICAgICAgID8gdGhpcy5jdXN0b21DbGFzcy5zcGxpdCgnICcpXG4gICAgICAgIDogdGhpcy5jdXN0b21DbGFzcztcbiAgICBjbGFzc0Fyci5mb3JFYWNoKG5hbWUgPT4ge1xuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsIG5hbWUpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSByZW1vdmVDbGFzcygpIHtcbiAgICBjb25zdCBjbGFzc0FyciA9XG4gICAgICB0eXBlb2YgdGhpcy5jdXN0b21DbGFzcyA9PT0gJ3N0cmluZydcbiAgICAgICAgPyB0aGlzLmN1c3RvbUNsYXNzLnNwbGl0KCcgJylcbiAgICAgICAgOiB0aGlzLmN1c3RvbUNsYXNzO1xuICAgIGNsYXNzQXJyLmZvckVhY2gobmFtZSA9PiB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgbmFtZSk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,82 @@
1
+ import { Directive, HostBinding, HostListener, Input, } from '@angular/core';
2
+ import { takeUntil } from 'rxjs';
3
+ import { BaseTooltip } from './base-tooltip';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/cdk/overlay";
6
+ import * as i2 from "./tooltip-intl";
7
+ export class TooltipCopyDirective extends BaseTooltip {
8
+ constructor(overlay, viewContainerRef, elRef, renderer, cdr, ngZone, toolTipIntl) {
9
+ super(overlay, viewContainerRef, elRef, renderer, cdr, ngZone);
10
+ this.toolTipIntl = toolTipIntl;
11
+ this.className = true;
12
+ this.disableAnimation = false;
13
+ }
14
+ get auiTooltipCopy() {
15
+ return this._copyText || this.elRef.nativeElement.textContent;
16
+ }
17
+ set auiTooltipCopy(value) {
18
+ this._copyText = value;
19
+ }
20
+ get auiTooltipCopyTip() {
21
+ return this._copyTip || this.toolTipIntl.copyTip;
22
+ }
23
+ set auiTooltipCopyTip(value) {
24
+ this._copyTip = value;
25
+ }
26
+ get auiTooltipCopySuccessTip() {
27
+ return this._copySuccessTip || this.toolTipIntl.copySuccessTip;
28
+ }
29
+ set auiTooltipCopySuccessTip(value) {
30
+ this._copySuccessTip = value;
31
+ }
32
+ get auiTooltipCopyFailTip() {
33
+ return this._copyFailTip || this.toolTipIntl.copyFailTip;
34
+ }
35
+ set auiTooltipCopyFailTip(value) {
36
+ this._copyFailTip = value;
37
+ }
38
+ ngOnInit() {
39
+ this.content = this.auiTooltipCopyTip;
40
+ this.visibleChange.pipe(takeUntil(this.destroy$)).subscribe(() => {
41
+ this.content = this.auiTooltipCopyTip;
42
+ });
43
+ }
44
+ async onSourceClick() {
45
+ if (!this.disabled) {
46
+ try {
47
+ await navigator.clipboard.writeText(this.auiTooltipCopy);
48
+ this.content = this.auiTooltipCopySuccessTip;
49
+ }
50
+ catch {
51
+ this.content = this.auiTooltipCopyFailTip;
52
+ }
53
+ }
54
+ }
55
+ }
56
+ TooltipCopyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: TooltipCopyDirective, deps: [{ token: i1.Overlay }, { token: i0.ViewContainerRef }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i2.TooltipCopyIntl }], target: i0.ɵɵFactoryTarget.Directive });
57
+ TooltipCopyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.8", type: TooltipCopyDirective, selector: "[auiTooltipCopy]", inputs: { position: ["auiTooltipPosition", "position"], disabled: ["auiTooltipDisabled", "disabled"], disableAnimation: ["auiDisableAnimation", "disableAnimation"], auiTooltipCopy: "auiTooltipCopy", auiTooltipCopyTip: "auiTooltipCopyTip", auiTooltipCopySuccessTip: "auiTooltipCopySuccessTip", auiTooltipCopyFailTip: "auiTooltipCopyFailTip" }, host: { listeners: { "click": "onSourceClick()" }, properties: { "class.aui-tooltip-copy": "this.className" } }, usesInheritance: true, ngImport: i0 });
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: TooltipCopyDirective, decorators: [{
59
+ type: Directive,
60
+ args: [{
61
+ selector: '[auiTooltipCopy]',
62
+ inputs: ['position:auiTooltipPosition', 'disabled:auiTooltipDisabled'],
63
+ }]
64
+ }], ctorParameters: function () { return [{ type: i1.Overlay }, { type: i0.ViewContainerRef }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i2.TooltipCopyIntl }]; }, propDecorators: { className: [{
65
+ type: HostBinding,
66
+ args: ['class.aui-tooltip-copy']
67
+ }], disableAnimation: [{
68
+ type: Input,
69
+ args: ['auiDisableAnimation']
70
+ }], auiTooltipCopy: [{
71
+ type: Input
72
+ }], auiTooltipCopyTip: [{
73
+ type: Input
74
+ }], auiTooltipCopySuccessTip: [{
75
+ type: Input
76
+ }], auiTooltipCopyFailTip: [{
77
+ type: Input
78
+ }], onSourceClick: [{
79
+ type: HostListener,
80
+ args: ['click']
81
+ }] } });
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1jb3B5LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29sdGlwL3Rvb2x0aXAtY29weS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUVMLFNBQVMsRUFFVCxXQUFXLEVBQ1gsWUFBWSxFQUNaLEtBQUssR0FLTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWpDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQU83QyxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsV0FBVztJQWdEbkQsWUFDRSxPQUFnQixFQUNoQixnQkFBa0MsRUFDbEMsS0FBaUIsRUFDakIsUUFBbUIsRUFDbkIsR0FBc0IsRUFDdEIsTUFBYyxFQUNHLFdBQTRCO1FBRTdDLEtBQUssQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFGOUMsZ0JBQVcsR0FBWCxXQUFXLENBQWlCO1FBckQvQyxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBR1IscUJBQWdCLEdBQUcsS0FBSyxDQUFDO0lBcURsQyxDQUFDO0lBbkRELElBQ0ksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxJQUFJLGNBQWMsQ0FBQyxLQUFhO1FBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUNJLGlCQUFpQjtRQUNuQixPQUFPLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUM7SUFDbkQsQ0FBQztJQUVELElBQUksaUJBQWlCLENBQUMsS0FBYTtRQUNqQyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFDSSx3QkFBd0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxJQUFJLHdCQUF3QixDQUFDLEtBQWE7UUFDeEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQ0kscUJBQXFCO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQztJQUMzRCxDQUFDO0lBRUQsSUFBSSxxQkFBcUIsQ0FBQyxLQUFhO1FBQ3JDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO0lBQzVCLENBQUM7SUFtQkQsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1FBQ3RDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQy9ELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1FBQ3hDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUdELEtBQUssQ0FBQyxhQUFhO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2xCLElBQUk7Z0JBQ0YsTUFBTSxTQUFTLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7Z0JBQ3pELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixDQUFDO2FBQzlDO1lBQUMsTUFBTTtnQkFDTixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQzthQUMzQztTQUNGO0lBQ0gsQ0FBQzs7aUhBN0VVLG9CQUFvQjtxR0FBcEIsb0JBQW9COzJGQUFwQixvQkFBb0I7a0JBSmhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsTUFBTSxFQUFFLENBQUMsNkJBQTZCLEVBQUUsNkJBQTZCLENBQUM7aUJBQ3ZFO2lRQUdDLFNBQVM7c0JBRFIsV0FBVzt1QkFBQyx3QkFBd0I7Z0JBSTVCLGdCQUFnQjtzQkFEeEIsS0FBSzt1QkFBQyxxQkFBcUI7Z0JBSXhCLGNBQWM7c0JBRGpCLEtBQUs7Z0JBVUYsaUJBQWlCO3NCQURwQixLQUFLO2dCQVVGLHdCQUF3QjtzQkFEM0IsS0FBSztnQkFVRixxQkFBcUI7c0JBRHhCLEtBQUs7Z0JBa0NBLGFBQWE7c0JBRGxCLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkluaXQsXG4gIFJlbmRlcmVyMixcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQmFzZVRvb2x0aXAgfSBmcm9tICcuL2Jhc2UtdG9vbHRpcCc7XG5pbXBvcnQgeyBUb29sdGlwQ29weUludGwgfSBmcm9tICcuL3Rvb2x0aXAtaW50bCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1thdWlUb29sdGlwQ29weV0nLFxuICBpbnB1dHM6IFsncG9zaXRpb246YXVpVG9vbHRpcFBvc2l0aW9uJywgJ2Rpc2FibGVkOmF1aVRvb2x0aXBEaXNhYmxlZCddLFxufSlcbmV4cG9ydCBjbGFzcyBUb29sdGlwQ29weURpcmVjdGl2ZSBleHRlbmRzIEJhc2VUb29sdGlwIGltcGxlbWVudHMgT25Jbml0IHtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hdWktdG9vbHRpcC1jb3B5JylcbiAgY2xhc3NOYW1lID0gdHJ1ZTtcblxuICBASW5wdXQoJ2F1aURpc2FibGVBbmltYXRpb24nKVxuICBvdmVycmlkZSBkaXNhYmxlQW5pbWF0aW9uID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgZ2V0IGF1aVRvb2x0aXBDb3B5KCkge1xuICAgIHJldHVybiB0aGlzLl9jb3B5VGV4dCB8fCB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQudGV4dENvbnRlbnQ7XG4gIH1cblxuICBzZXQgYXVpVG9vbHRpcENvcHkodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX2NvcHlUZXh0ID0gdmFsdWU7XG4gIH1cblxuICBASW5wdXQoKVxuICBnZXQgYXVpVG9vbHRpcENvcHlUaXAoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvcHlUaXAgfHwgdGhpcy50b29sVGlwSW50bC5jb3B5VGlwO1xuICB9XG5cbiAgc2V0IGF1aVRvb2x0aXBDb3B5VGlwKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9jb3B5VGlwID0gdmFsdWU7XG4gIH1cblxuICBASW5wdXQoKVxuICBnZXQgYXVpVG9vbHRpcENvcHlTdWNjZXNzVGlwKCkge1xuICAgIHJldHVybiB0aGlzLl9jb3B5U3VjY2Vzc1RpcCB8fCB0aGlzLnRvb2xUaXBJbnRsLmNvcHlTdWNjZXNzVGlwO1xuICB9XG5cbiAgc2V0IGF1aVRvb2x0aXBDb3B5U3VjY2Vzc1RpcCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fY29weVN1Y2Nlc3NUaXAgPSB2YWx1ZTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCBhdWlUb29sdGlwQ29weUZhaWxUaXAoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvcHlGYWlsVGlwIHx8IHRoaXMudG9vbFRpcEludGwuY29weUZhaWxUaXA7XG4gIH1cblxuICBzZXQgYXVpVG9vbHRpcENvcHlGYWlsVGlwKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9jb3B5RmFpbFRpcCA9IHZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBfY29weVRleHQ6IHN0cmluZztcbiAgcHJpdmF0ZSBfY29weVRpcDogc3RyaW5nO1xuICBwcml2YXRlIF9jb3B5U3VjY2Vzc1RpcDogc3RyaW5nO1xuICBwcml2YXRlIF9jb3B5RmFpbFRpcDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICBlbFJlZjogRWxlbWVudFJlZixcbiAgICByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgbmdab25lOiBOZ1pvbmUsXG4gICAgcHJpdmF0ZSByZWFkb25seSB0b29sVGlwSW50bDogVG9vbHRpcENvcHlJbnRsLFxuICApIHtcbiAgICBzdXBlcihvdmVybGF5LCB2aWV3Q29udGFpbmVyUmVmLCBlbFJlZiwgcmVuZGVyZXIsIGNkciwgbmdab25lKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuY29udGVudCA9IHRoaXMuYXVpVG9vbHRpcENvcHlUaXA7XG4gICAgdGhpcy52aXNpYmxlQ2hhbmdlLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5jb250ZW50ID0gdGhpcy5hdWlUb29sdGlwQ29weVRpcDtcbiAgICB9KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgYXN5bmMgb25Tb3VyY2VDbGljaygpIHtcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IG5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KHRoaXMuYXVpVG9vbHRpcENvcHkpO1xuICAgICAgICB0aGlzLmNvbnRlbnQgPSB0aGlzLmF1aVRvb2x0aXBDb3B5U3VjY2Vzc1RpcDtcbiAgICAgIH0gY2F0Y2gge1xuICAgICAgICB0aGlzLmNvbnRlbnQgPSB0aGlzLmF1aVRvb2x0aXBDb3B5RmFpbFRpcDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,29 @@
1
+ import { Injectable, Optional, SkipSelf } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ /**
4
+ * Texts to render on the code editor.
5
+ */
6
+ export class TooltipCopyIntl {
7
+ constructor() {
8
+ this.copyTip = 'Click to copy';
9
+ this.copySuccessTip = 'Copied to clipboard';
10
+ this.copyFailTip = 'Copy failed';
11
+ }
12
+ }
13
+ TooltipCopyIntl.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: TooltipCopyIntl, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
14
+ TooltipCopyIntl.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: TooltipCopyIntl });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: TooltipCopyIntl, decorators: [{
16
+ type: Injectable
17
+ }] });
18
+ // eslint-disable-next-line sonar/function-name
19
+ export function TOOLTIP_COPY_INTL_PROVIDER_FACTORY(parentIntl) {
20
+ return parentIntl || new TooltipCopyIntl();
21
+ }
22
+ /** @docs-private */
23
+ export const TOOLTIP_COPY_INTL_INTL_PROVIDER = {
24
+ // If there is already an CodeEditorIntl available, use that. Otherwise, provide a new one.
25
+ provide: TooltipCopyIntl,
26
+ deps: [[new Optional(), new SkipSelf(), TooltipCopyIntl]],
27
+ useFactory: TOOLTIP_COPY_INTL_PROVIDER_FACTORY,
28
+ };
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1pbnRsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Rvb2x0aXAvdG9vbHRpcC1pbnRsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFL0Q7O0dBRUc7QUFFSCxNQUFNLE9BQU8sZUFBZTtJQUQ1QjtRQUVFLFlBQU8sR0FBRyxlQUFlLENBQUM7UUFFMUIsbUJBQWMsR0FBRyxxQkFBcUIsQ0FBQztRQUV2QyxnQkFBVyxHQUFHLGFBQWEsQ0FBQztLQUM3Qjs7NEdBTlksZUFBZTtnSEFBZixlQUFlOzJGQUFmLGVBQWU7a0JBRDNCLFVBQVU7O0FBU1gsK0NBQStDO0FBQy9DLE1BQU0sVUFBVSxrQ0FBa0MsQ0FDaEQsVUFBMkI7SUFFM0IsT0FBTyxVQUFVLElBQUksSUFBSSxlQUFlLEVBQUUsQ0FBQztBQUM3QyxDQUFDO0FBRUQsb0JBQW9CO0FBQ3BCLE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUFHO0lBQzdDLDJGQUEyRjtJQUMzRixPQUFPLEVBQUUsZUFBZTtJQUN4QixJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksUUFBUSxFQUFFLEVBQUUsSUFBSSxRQUFRLEVBQUUsRUFBRSxlQUFlLENBQUMsQ0FBQztJQUN6RCxVQUFVLEVBQUUsa0NBQWtDO0NBQy9DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPcHRpb25hbCwgU2tpcFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBUZXh0cyB0byByZW5kZXIgb24gdGhlIGNvZGUgZWRpdG9yLlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVG9vbHRpcENvcHlJbnRsIHtcbiAgY29weVRpcCA9ICdDbGljayB0byBjb3B5JztcblxuICBjb3B5U3VjY2Vzc1RpcCA9ICdDb3BpZWQgdG8gY2xpcGJvYXJkJztcblxuICBjb3B5RmFpbFRpcCA9ICdDb3B5IGZhaWxlZCc7XG59XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBzb25hci9mdW5jdGlvbi1uYW1lXG5leHBvcnQgZnVuY3Rpb24gVE9PTFRJUF9DT1BZX0lOVExfUFJPVklERVJfRkFDVE9SWShcbiAgcGFyZW50SW50bDogVG9vbHRpcENvcHlJbnRsLFxuKSB7XG4gIHJldHVybiBwYXJlbnRJbnRsIHx8IG5ldyBUb29sdGlwQ29weUludGwoKTtcbn1cblxuLyoqIEBkb2NzLXByaXZhdGUgKi9cbmV4cG9ydCBjb25zdCBUT09MVElQX0NPUFlfSU5UTF9JTlRMX1BST1ZJREVSID0ge1xuICAvLyBJZiB0aGVyZSBpcyBhbHJlYWR5IGFuIENvZGVFZGl0b3JJbnRsIGF2YWlsYWJsZSwgdXNlIHRoYXQuIE90aGVyd2lzZSwgcHJvdmlkZSBhIG5ldyBvbmUuXG4gIHByb3ZpZGU6IFRvb2x0aXBDb3B5SW50bCxcbiAgZGVwczogW1tuZXcgT3B0aW9uYWwoKSwgbmV3IFNraXBTZWxmKCksIFRvb2x0aXBDb3B5SW50bF1dLFxuICB1c2VGYWN0b3J5OiBUT09MVElQX0NPUFlfSU5UTF9QUk9WSURFUl9GQUNUT1JZLFxufTtcbiJdfQ==