@alauda/ui 6.5.10-beta.3 → 6.5.10-beta.5

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/accordion/accordion-item/accordion-item.component.d.ts +3 -3
  2. package/accordion/accordion.component.d.ts +1 -1
  3. package/anchor/anchor.component.d.ts +2 -2
  4. package/anchor/anchor.directive.d.ts +3 -3
  5. package/autocomplete/autocomplete-placeholder.component.d.ts +1 -1
  6. package/autocomplete/autocomplete.component.d.ts +1 -1
  7. package/autocomplete/autocomplete.directive.d.ts +2 -2
  8. package/autocomplete/autocomplete.types.d.ts +1 -1
  9. package/autocomplete/helper-directives.d.ts +1 -1
  10. package/autocomplete/suggestion/suggestion.component.d.ts +1 -1
  11. package/autocomplete/suggestion-group/suggestion-group.component.d.ts +1 -1
  12. package/back-top/back-top.component.d.ts +2 -2
  13. package/breadcrumb/breadcrumb-item.component.d.ts +1 -1
  14. package/breadcrumb/breadcrumb.component.d.ts +1 -1
  15. package/button/button-group/button-group.component.d.ts +1 -1
  16. package/button/button.component.d.ts +1 -1
  17. package/button/button.types.d.ts +1 -10
  18. package/card/card.component.d.ts +1 -1
  19. package/card/helper-directives.d.ts +3 -6
  20. package/card/section.component.d.ts +1 -1
  21. package/checkbox/checkbox-group/checkbox-group.component.d.ts +1 -1
  22. package/checkbox/checkbox.component.d.ts +1 -1
  23. package/color-picker/color-picker.component.d.ts +1 -1
  24. package/date-picker/calendar/date-picker-panel/component.d.ts +1 -1
  25. package/date-picker/calendar/footer/component.d.ts +1 -1
  26. package/date-picker/calendar/header/component.d.ts +1 -1
  27. package/date-picker/calendar/panel/picker-panel.d.ts +1 -1
  28. package/date-picker/calendar/range-picker-panel/component.d.ts +1 -1
  29. package/date-picker/date-picker/date-picker.component.d.ts +1 -1
  30. package/date-picker/date-picker.type.d.ts +2 -2
  31. package/date-picker/range-picker/range-picker.component.d.ts +1 -1
  32. package/date-picker/trigger/trigger.component.d.ts +1 -1
  33. package/dialog/confirm-dialog/confirm-dialog.component.d.ts +1 -1
  34. package/dialog/dialog-content/dialog-close.directive.d.ts +1 -1
  35. package/dialog/dialog-content/dialog-content.component.d.ts +1 -1
  36. package/dialog/dialog-content/dialog-footer.component.d.ts +1 -1
  37. package/dialog/dialog-content/dialog-header.component.d.ts +1 -1
  38. package/dialog/dialog.component.d.ts +1 -1
  39. package/dialog/dialog.types.d.ts +3 -3
  40. package/drawer/component/drawer.component.d.ts +1 -1
  41. package/drawer/component/helper-directives.d.ts +3 -3
  42. package/dropdown/dropdown-active.directive.d.ts +1 -1
  43. package/dropdown/dropdown-button/dropdown-button.component.d.ts +1 -1
  44. package/dropdown/dropdown.directive.d.ts +1 -1
  45. package/dropdown/dropdown.types.d.ts +1 -1
  46. package/dropdown/helper-directives.d.ts +1 -1
  47. package/dropdown/menu/menu-content.directive.d.ts +1 -1
  48. package/dropdown/menu/menu.component.d.ts +1 -1
  49. package/dropdown/menu-group/menu-group.component.d.ts +1 -1
  50. package/dropdown/menu-item/menu-item.component.d.ts +1 -1
  51. package/dropdown/submenu/submenu.component.d.ts +1 -1
  52. package/esm2022/accordion/accordion-item/accordion-item.component.mjs +73 -0
  53. package/esm2022/accordion/accordion.component.mjs +29 -0
  54. package/esm2022/accordion/accordion.module.mjs +39 -0
  55. package/esm2022/alauda-ui.mjs +2 -0
  56. package/esm2022/anchor/anchor.component.mjs +141 -0
  57. package/esm2022/anchor/anchor.directive.mjs +198 -0
  58. package/esm2022/anchor/anchor.module.mjs +35 -0
  59. package/{esm2020 → esm2022}/autocomplete/autocomplete-placeholder.component.mjs +4 -4
  60. package/esm2022/autocomplete/autocomplete.component.mjs +72 -0
  61. package/esm2022/autocomplete/autocomplete.directive.mjs +278 -0
  62. package/esm2022/autocomplete/autocomplete.module.mjs +53 -0
  63. package/{esm2020 → esm2022}/autocomplete/helper-directives.mjs +4 -4
  64. package/esm2022/autocomplete/suggestion/suggestion.component.mjs +85 -0
  65. package/esm2022/autocomplete/suggestion-group/suggestion-group.component.mjs +25 -0
  66. package/esm2022/back-top/back-top.component.mjs +68 -0
  67. package/esm2022/back-top/back-top.module.mjs +19 -0
  68. package/esm2022/breadcrumb/breadcrumb-item.component.mjs +33 -0
  69. package/esm2022/breadcrumb/breadcrumb.component.mjs +56 -0
  70. package/esm2022/breadcrumb/breadcrumb.module.mjs +20 -0
  71. package/{esm2020 → esm2022}/button/button-group/button-group.component.mjs +4 -4
  72. package/esm2022/button/button.component.mjs +124 -0
  73. package/esm2022/button/button.module.mjs +20 -0
  74. package/esm2022/button/button.types.mjs +13 -0
  75. package/esm2022/card/card.component.mjs +14 -0
  76. package/esm2022/card/card.module.mjs +40 -0
  77. package/esm2022/card/helper-directives.mjs +45 -0
  78. package/{esm2020 → esm2022}/card/section.component.mjs +4 -4
  79. package/esm2022/checkbox/checkbox-group/checkbox-group.component.mjs +60 -0
  80. package/esm2022/checkbox/checkbox.component.mjs +116 -0
  81. package/esm2022/checkbox/checkbox.module.mjs +20 -0
  82. package/esm2022/color-picker/color-picker.component.mjs +28 -0
  83. package/esm2022/color-picker/color-picker.module.mjs +19 -0
  84. package/esm2022/date-picker/calendar/constant.mjs +31 -0
  85. package/esm2022/date-picker/calendar/date-picker-panel/component.mjs +137 -0
  86. package/esm2022/date-picker/calendar/footer/component.mjs +29 -0
  87. package/esm2022/date-picker/calendar/header/component.mjs +99 -0
  88. package/esm2022/date-picker/calendar/panel/picker-panel.mjs +158 -0
  89. package/esm2022/date-picker/calendar/range-picker-panel/component.mjs +210 -0
  90. package/esm2022/date-picker/calendar/util.mjs +152 -0
  91. package/esm2022/date-picker/date-picker/date-picker.component.mjs +115 -0
  92. package/esm2022/date-picker/date-picker.module.mjs +82 -0
  93. package/esm2022/date-picker/range-picker/range-picker.component.mjs +88 -0
  94. package/esm2022/date-picker/trigger/trigger.component.mjs +76 -0
  95. package/esm2022/dialog/confirm-dialog/confirm-dialog-config.mjs +13 -0
  96. package/esm2022/dialog/confirm-dialog/confirm-dialog.component.mjs +88 -0
  97. package/{esm2020 → esm2022}/dialog/dialog-animations.mjs +1 -2
  98. package/esm2022/dialog/dialog-config.mjs +14 -0
  99. package/esm2022/dialog/dialog-content/dialog-close.directive.mjs +42 -0
  100. package/esm2022/dialog/dialog-content/dialog-content.component.mjs +19 -0
  101. package/esm2022/dialog/dialog-content/dialog-footer.component.mjs +13 -0
  102. package/esm2022/dialog/dialog-content/dialog-header.component.mjs +42 -0
  103. package/esm2022/dialog/dialog-ref.mjs +52 -0
  104. package/esm2022/dialog/dialog.component.mjs +154 -0
  105. package/esm2022/dialog/dialog.module.mjs +65 -0
  106. package/esm2022/dialog/dialog.service.mjs +124 -0
  107. package/esm2022/drawer/component/drawer.component.mjs +248 -0
  108. package/esm2022/drawer/component/helper-directives.mjs +33 -0
  109. package/esm2022/drawer/drawer.module.mjs +36 -0
  110. package/esm2022/drawer/drawer.service.mjs +47 -0
  111. package/esm2022/dropdown/dropdown-active.directive.mjs +18 -0
  112. package/esm2022/dropdown/dropdown-button/dropdown-button.component.mjs +58 -0
  113. package/esm2022/dropdown/dropdown.directive.mjs +83 -0
  114. package/esm2022/dropdown/dropdown.module.mjs +65 -0
  115. package/{esm2020 → esm2022}/dropdown/helper-directives.mjs +4 -4
  116. package/esm2022/dropdown/menu/menu-content.directive.mjs +59 -0
  117. package/esm2022/dropdown/menu/menu.component.mjs +26 -0
  118. package/{esm2020 → esm2022}/dropdown/menu-group/menu-group.component.mjs +4 -4
  119. package/esm2022/dropdown/menu-item/menu-item.component.mjs +35 -0
  120. package/esm2022/dropdown/submenu/submenu.component.mjs +38 -0
  121. package/esm2022/form/common-form.mjs +88 -0
  122. package/esm2022/form/form-item/form-item.component.mjs +121 -0
  123. package/esm2022/form/form.directive.mjs +70 -0
  124. package/esm2022/form/form.module.mjs +48 -0
  125. package/esm2022/form/helper-directives.mjs +78 -0
  126. package/{esm2020 → esm2022}/i18n/i18n.module.mjs +5 -5
  127. package/esm2022/i18n/i18n.pipe.mjs +21 -0
  128. package/esm2022/i18n/i18n.service.mjs +46 -0
  129. package/esm2022/icon/icon-register.service.mjs +75 -0
  130. package/esm2022/icon/icon.component.mjs +74 -0
  131. package/esm2022/icon/icon.module.mjs +21 -0
  132. package/{esm2020 → esm2022}/inline-alert/helper-directives.mjs +4 -4
  133. package/esm2022/inline-alert/inline-alert.component.mjs +54 -0
  134. package/esm2022/inline-alert/inline-alert.module.mjs +20 -0
  135. package/esm2022/input/autosize.directive.mjs +56 -0
  136. package/esm2022/input/helper-directives.mjs +43 -0
  137. package/esm2022/input/input-group/input-group.component.mjs +46 -0
  138. package/esm2022/input/input.component.mjs +59 -0
  139. package/esm2022/input/input.module.mjs +85 -0
  140. package/esm2022/input/number-input/number-input.component.mjs +115 -0
  141. package/esm2022/input/search/search.component.mjs +87 -0
  142. package/esm2022/input/tags-input/tags-input.component.mjs +264 -0
  143. package/esm2022/message/base-message.mjs +99 -0
  144. package/esm2022/message/message-wrapper.component.mjs +15 -0
  145. package/esm2022/message/message.component.mjs +77 -0
  146. package/esm2022/message/message.config.mjs +20 -0
  147. package/esm2022/message/message.module.mjs +22 -0
  148. package/{esm2020 → esm2022}/message/message.service.mjs +4 -4
  149. package/esm2022/notification/notification-wrapper.component.mjs +17 -0
  150. package/esm2022/notification/notification.component.mjs +106 -0
  151. package/esm2022/notification/notification.module.mjs +23 -0
  152. package/{esm2020 → esm2022}/notification/notification.service.mjs +4 -4
  153. package/esm2022/paginator/paginator-intl.mjs +24 -0
  154. package/esm2022/paginator/paginator.component.mjs +124 -0
  155. package/esm2022/paginator/paginator.module.mjs +24 -0
  156. package/esm2022/radio/base-radio.mjs +72 -0
  157. package/esm2022/radio/radio-button/radio-button.component.mjs +41 -0
  158. package/esm2022/radio/radio-group/radio-group.component.mjs +70 -0
  159. package/esm2022/radio/radio.component.mjs +23 -0
  160. package/esm2022/radio/radio.module.mjs +21 -0
  161. package/esm2022/scrolling/fixed-size-table-virtual-scroll-strategy.mjs +80 -0
  162. package/esm2022/scrolling/fixed-size-table-virtual-scroll.directive.mjs +119 -0
  163. package/esm2022/scrolling/fixed-size-virtual-scroll.directive.mjs +27 -0
  164. package/{esm2020 → esm2022}/scrolling/scrolling.module.mjs +9 -9
  165. package/{esm2020 → esm2022}/scrolling/virtual-for-of.directive.mjs +4 -4
  166. package/esm2022/scrolling/virtual-scroll-viewport.component.mjs +26 -0
  167. package/esm2022/select/base-select.mjs +345 -0
  168. package/{esm2020 → esm2022}/select/helper-directives.mjs +7 -7
  169. package/esm2022/select/multi-select/multi-select.component.mjs +318 -0
  170. package/esm2022/select/option/option.component.mjs +119 -0
  171. package/esm2022/select/option-group/option-group.component.mjs +25 -0
  172. package/{esm2020 → esm2022}/select/option-placeholder.component.mjs +4 -4
  173. package/esm2022/select/select.component.mjs +107 -0
  174. package/esm2022/select/select.module.mjs +78 -0
  175. package/esm2022/select/validators.mjs +78 -0
  176. package/esm2022/shared/click-outside.directive.mjs +29 -0
  177. package/{esm2020 → esm2022}/shared/shared.module.mjs +5 -5
  178. package/esm2022/sort/sort-errors.mjs +13 -0
  179. package/esm2022/sort/sort-header.component.mjs +74 -0
  180. package/esm2022/sort/sort.directive.mjs +73 -0
  181. package/esm2022/sort/sort.module.mjs +19 -0
  182. package/esm2022/status-bar/status-bar.component.mjs +28 -0
  183. package/esm2022/status-bar/status-bar.module.mjs +19 -0
  184. package/esm2022/steps/steps.component.mjs +180 -0
  185. package/esm2022/steps/steps.module.mjs +19 -0
  186. package/esm2022/switch/switch.component.mjs +43 -0
  187. package/esm2022/switch/switch.module.mjs +18 -0
  188. package/esm2022/table/table-cell-def.directive.mjs +25 -0
  189. package/esm2022/table/table-cell.component.mjs +115 -0
  190. package/esm2022/table/table-cell.directive.mjs +29 -0
  191. package/esm2022/table/table-column-def.directive.mjs +31 -0
  192. package/esm2022/table/table-header-cell-def.directive.mjs +25 -0
  193. package/esm2022/table/table-header-cell.directive.mjs +25 -0
  194. package/esm2022/table/table-header-row-def.directive.mjs +33 -0
  195. package/esm2022/table/table-header-row.component.mjs +24 -0
  196. package/esm2022/table/table-placeholder.directive.mjs +33 -0
  197. package/esm2022/table/table-row-def.directive.mjs +34 -0
  198. package/esm2022/table/table-row.component.mjs +43 -0
  199. package/esm2022/table/table-scroll.directive.mjs +133 -0
  200. package/esm2022/table/table.component.mjs +79 -0
  201. package/esm2022/table/table.module.mjs +96 -0
  202. package/esm2022/table-of-contents/table-of-contents.module.mjs +20 -0
  203. package/esm2022/table-of-contents/toc-container.directive.mjs +111 -0
  204. package/esm2022/table-of-contents/toc-content.directive.mjs +39 -0
  205. package/esm2022/table-of-contents/toc-link.directive.mjs +48 -0
  206. package/esm2022/tabs/tab-body.component.mjs +151 -0
  207. package/esm2022/tabs/tab-context.service.mjs +30 -0
  208. package/esm2022/tabs/tab-group.component.mjs +256 -0
  209. package/esm2022/tabs/tab-header-active-indicator.component.mjs +46 -0
  210. package/esm2022/tabs/tab-header.component.mjs +276 -0
  211. package/esm2022/tabs/tab.component.mjs +77 -0
  212. package/esm2022/tabs/tabs.module.mjs +86 -0
  213. package/esm2022/tabs/tabs.types.mjs +10 -0
  214. package/esm2022/tag/check-tag/check-tag.component.mjs +31 -0
  215. package/esm2022/tag/tag.component.mjs +63 -0
  216. package/esm2022/tag/tag.module.mjs +20 -0
  217. package/esm2022/theme/theme.module.mjs +18 -0
  218. package/esm2022/theme/theme.pipe.mjs +64 -0
  219. package/esm2022/theme/theme.service.mjs +55 -0
  220. package/esm2022/time-picker/component.mjs +181 -0
  221. package/esm2022/time-picker/panel/panel.component.mjs +240 -0
  222. package/esm2022/time-picker/time-picker.module.mjs +56 -0
  223. package/esm2022/tooltip/base-tooltip.mjs +329 -0
  224. package/esm2022/tooltip/tooltip-active.directive.mjs +51 -0
  225. package/esm2022/tooltip/tooltip-copy.directive.mjs +87 -0
  226. package/esm2022/tooltip/tooltip-intl.mjs +21 -0
  227. package/esm2022/tooltip/tooltip.component.mjs +120 -0
  228. package/esm2022/tooltip/tooltip.directive.mjs +44 -0
  229. package/esm2022/tooltip/tooltip.module.mjs +32 -0
  230. package/{esm2020 → esm2022}/tree-select/tree-node-placeholder.component.mjs +4 -4
  231. package/esm2022/tree-select/tree-select.component.mjs +350 -0
  232. package/esm2022/tree-select/tree-select.module.mjs +34 -0
  233. package/esm2022/types.mjs +8 -0
  234. package/esm2022/utils/bem.mjs +44 -0
  235. package/esm2022/utils/coercion.mjs +13 -0
  236. package/{fesm2020 → fesm2022}/alauda-ui.mjs +2818 -2871
  237. package/fesm2022/alauda-ui.mjs.map +1 -0
  238. package/form/common-form.d.ts +1 -8
  239. package/form/form-item/form-item.component.d.ts +1 -1
  240. package/form/form.directive.d.ts +1 -1
  241. package/form/form.types.d.ts +2 -2
  242. package/form/helper-directives.d.ts +5 -5
  243. package/i18n/i18n.pipe.d.ts +1 -1
  244. package/i18n/i18n.type.d.ts +1 -1
  245. package/icon/icon.component.d.ts +1 -1
  246. package/inline-alert/helper-directives.d.ts +1 -1
  247. package/inline-alert/inline-alert.component.d.ts +1 -1
  248. package/inline-alert/inline-alert.types.d.ts +1 -1
  249. package/input/autosize.directive.d.ts +1 -4
  250. package/input/helper-directives.d.ts +4 -4
  251. package/input/input-group/input-group.component.d.ts +1 -1
  252. package/input/input.component.d.ts +1 -4
  253. package/input/number-input/number-input.component.d.ts +1 -1
  254. package/input/search/search.component.d.ts +1 -1
  255. package/input/tags-input/tags-input.component.d.ts +3 -3
  256. package/message/message-wrapper.component.d.ts +1 -1
  257. package/message/message.component.d.ts +1 -1
  258. package/message/message.config.d.ts +0 -20
  259. package/notification/notification-wrapper.component.d.ts +1 -1
  260. package/notification/notification.component.d.ts +1 -5
  261. package/notification/notification.config.d.ts +1 -1
  262. package/package.json +14 -20
  263. package/paginator/paginator-intl.d.ts +0 -9
  264. package/paginator/paginator.component.d.ts +1 -15
  265. package/radio/base-radio.d.ts +1 -1
  266. package/radio/radio-button/radio-button.component.d.ts +1 -1
  267. package/radio/radio-group/radio-group.component.d.ts +1 -4
  268. package/radio/radio.component.d.ts +1 -1
  269. package/radio/radio.types.d.ts +1 -1
  270. package/scrolling/fixed-size-table-virtual-scroll.directive.d.ts +1 -1
  271. package/scrolling/fixed-size-virtual-scroll.directive.d.ts +1 -1
  272. package/scrolling/virtual-for-of.directive.d.ts +1 -1
  273. package/scrolling/virtual-scroll-viewport.component.d.ts +1 -1
  274. package/select/base-select.d.ts +1 -4
  275. package/select/helper-directives.d.ts +2 -2
  276. package/select/multi-select/multi-select.component.d.ts +1 -1
  277. package/select/option/option.component.d.ts +1 -1
  278. package/select/option-group/option-group.component.d.ts +1 -1
  279. package/select/option-placeholder.component.d.ts +1 -1
  280. package/select/select.component.d.ts +1 -1
  281. package/select/select.types.d.ts +3 -3
  282. package/select/validators.d.ts +1 -1
  283. package/shared/click-outside.directive.d.ts +1 -1
  284. package/sort/sort-errors.d.ts +0 -4
  285. package/sort/sort-header.component.d.ts +1 -1
  286. package/sort/sort.directive.d.ts +1 -1
  287. package/sort/sort.types.d.ts +2 -2
  288. package/status-bar/status-bar.component.d.ts +1 -1
  289. package/status-bar/status-bar.types.d.ts +2 -2
  290. package/steps/steps.component.d.ts +1 -4
  291. package/steps/types.d.ts +3 -6
  292. package/switch/switch.component.d.ts +1 -1
  293. package/table/table-cell-def.directive.d.ts +1 -5
  294. package/table/table-cell.component.d.ts +2 -2
  295. package/table/table-cell.directive.d.ts +1 -2
  296. package/table/table-column-def.directive.d.ts +1 -5
  297. package/table/table-header-cell-def.directive.d.ts +1 -5
  298. package/table/table-header-cell.directive.d.ts +1 -2
  299. package/table/table-header-row-def.directive.d.ts +1 -5
  300. package/table/table-header-row.component.d.ts +1 -2
  301. package/table/table-placeholder.directive.d.ts +2 -2
  302. package/table/table-row-def.directive.d.ts +1 -6
  303. package/table/table-row.component.d.ts +1 -2
  304. package/table/table-scroll.directive.d.ts +2 -2
  305. package/table/table.component.d.ts +1 -1
  306. package/table-of-contents/toc-container.directive.d.ts +1 -1
  307. package/table-of-contents/toc-content.directive.d.ts +1 -1
  308. package/table-of-contents/toc-link.directive.d.ts +1 -1
  309. package/tabs/tab-body.component.d.ts +7 -23
  310. package/tabs/tab-context.service.d.ts +0 -3
  311. package/tabs/tab-group.component.d.ts +1 -29
  312. package/tabs/tab-header-active-indicator.component.d.ts +1 -10
  313. package/tabs/tab-header.component.d.ts +2 -85
  314. package/tabs/tab.component.d.ts +1 -19
  315. package/tabs/tabs.types.d.ts +2 -5
  316. package/tag/check-tag/check-tag.component.d.ts +1 -1
  317. package/tag/tag.component.d.ts +1 -1
  318. package/tag/tag.types.d.ts +1 -1
  319. package/theme/style.css +5 -1
  320. package/theme/theme.pipe.d.ts +4 -4
  321. package/theme/theme.types.d.ts +3 -3
  322. package/time-picker/component.d.ts +1 -1
  323. package/time-picker/panel/panel.component.d.ts +1 -1
  324. package/time-picker/time-picker.type.d.ts +1 -1
  325. package/tooltip/base-tooltip.d.ts +1 -1
  326. package/tooltip/tooltip-active.directive.d.ts +1 -1
  327. package/tooltip/tooltip-copy.directive.d.ts +1 -1
  328. package/tooltip/tooltip-intl.d.ts +0 -4
  329. package/tooltip/tooltip.component.d.ts +1 -1
  330. package/tooltip/tooltip.directive.d.ts +1 -1
  331. package/tree-select/tree-node-placeholder.component.d.ts +1 -1
  332. package/tree-select/tree-select.component.d.ts +2 -2
  333. package/tree-select/tree-select.types.d.ts +1 -1
  334. package/types.d.ts +2 -5
  335. package/utils/operators.d.ts +1 -1
  336. package/.changeset/README.md +0 -8
  337. package/alauda-ui.d.ts +0 -5
  338. package/esm2020/accordion/accordion-item/accordion-item.component.mjs +0 -73
  339. package/esm2020/accordion/accordion.component.mjs +0 -27
  340. package/esm2020/accordion/accordion.module.mjs +0 -39
  341. package/esm2020/alauda-ui.mjs +0 -5
  342. package/esm2020/anchor/anchor.component.mjs +0 -138
  343. package/esm2020/anchor/anchor.directive.mjs +0 -182
  344. package/esm2020/anchor/anchor.module.mjs +0 -36
  345. package/esm2020/autocomplete/autocomplete.component.mjs +0 -64
  346. package/esm2020/autocomplete/autocomplete.directive.mjs +0 -278
  347. package/esm2020/autocomplete/autocomplete.module.mjs +0 -53
  348. package/esm2020/autocomplete/suggestion/suggestion.component.mjs +0 -79
  349. package/esm2020/autocomplete/suggestion-group/suggestion-group.component.mjs +0 -23
  350. package/esm2020/back-top/back-top.component.mjs +0 -67
  351. package/esm2020/back-top/back-top.module.mjs +0 -19
  352. package/esm2020/breadcrumb/breadcrumb-item.component.mjs +0 -32
  353. package/esm2020/breadcrumb/breadcrumb.component.mjs +0 -57
  354. package/esm2020/breadcrumb/breadcrumb.module.mjs +0 -20
  355. package/esm2020/button/button.component.mjs +0 -122
  356. package/esm2020/button/button.module.mjs +0 -20
  357. package/esm2020/button/button.types.mjs +0 -22
  358. package/esm2020/card/card.component.mjs +0 -16
  359. package/esm2020/card/card.module.mjs +0 -40
  360. package/esm2020/card/helper-directives.mjs +0 -50
  361. package/esm2020/checkbox/checkbox-group/checkbox-group.component.mjs +0 -61
  362. package/esm2020/checkbox/checkbox.component.mjs +0 -112
  363. package/esm2020/checkbox/checkbox.module.mjs +0 -20
  364. package/esm2020/color-picker/color-picker.component.mjs +0 -28
  365. package/esm2020/color-picker/color-picker.module.mjs +0 -19
  366. package/esm2020/date-picker/calendar/constant.mjs +0 -32
  367. package/esm2020/date-picker/calendar/date-picker-panel/component.mjs +0 -128
  368. package/esm2020/date-picker/calendar/footer/component.mjs +0 -29
  369. package/esm2020/date-picker/calendar/header/component.mjs +0 -103
  370. package/esm2020/date-picker/calendar/panel/picker-panel.mjs +0 -155
  371. package/esm2020/date-picker/calendar/range-picker-panel/component.mjs +0 -209
  372. package/esm2020/date-picker/calendar/util.mjs +0 -146
  373. package/esm2020/date-picker/date-picker/date-picker.component.mjs +0 -110
  374. package/esm2020/date-picker/date-picker.module.mjs +0 -84
  375. package/esm2020/date-picker/range-picker/range-picker.component.mjs +0 -86
  376. package/esm2020/date-picker/trigger/trigger.component.mjs +0 -69
  377. package/esm2020/dialog/confirm-dialog/confirm-dialog-config.mjs +0 -12
  378. package/esm2020/dialog/confirm-dialog/confirm-dialog.component.mjs +0 -85
  379. package/esm2020/dialog/dialog-config.mjs +0 -15
  380. package/esm2020/dialog/dialog-content/dialog-close.directive.mjs +0 -38
  381. package/esm2020/dialog/dialog-content/dialog-content.component.mjs +0 -20
  382. package/esm2020/dialog/dialog-content/dialog-footer.component.mjs +0 -15
  383. package/esm2020/dialog/dialog-content/dialog-header.component.mjs +0 -39
  384. package/esm2020/dialog/dialog-ref.mjs +0 -48
  385. package/esm2020/dialog/dialog.component.mjs +0 -148
  386. package/esm2020/dialog/dialog.module.mjs +0 -68
  387. package/esm2020/dialog/dialog.service.mjs +0 -121
  388. package/esm2020/drawer/component/drawer.component.mjs +0 -232
  389. package/esm2020/drawer/component/helper-directives.mjs +0 -37
  390. package/esm2020/drawer/drawer.module.mjs +0 -37
  391. package/esm2020/drawer/drawer.service.mjs +0 -44
  392. package/esm2020/dropdown/dropdown-active.directive.mjs +0 -21
  393. package/esm2020/dropdown/dropdown-button/dropdown-button.component.mjs +0 -57
  394. package/esm2020/dropdown/dropdown.directive.mjs +0 -81
  395. package/esm2020/dropdown/dropdown.module.mjs +0 -65
  396. package/esm2020/dropdown/menu/menu-content.directive.mjs +0 -51
  397. package/esm2020/dropdown/menu/menu.component.mjs +0 -26
  398. package/esm2020/dropdown/menu-item/menu-item.component.mjs +0 -37
  399. package/esm2020/dropdown/submenu/submenu.component.mjs +0 -40
  400. package/esm2020/form/common-form.mjs +0 -91
  401. package/esm2020/form/form-item/form-item.component.mjs +0 -108
  402. package/esm2020/form/form.directive.mjs +0 -69
  403. package/esm2020/form/form.module.mjs +0 -48
  404. package/esm2020/form/helper-directives.mjs +0 -80
  405. package/esm2020/i18n/i18n.pipe.mjs +0 -20
  406. package/esm2020/i18n/i18n.service.mjs +0 -43
  407. package/esm2020/icon/icon-register.service.mjs +0 -74
  408. package/esm2020/icon/icon.component.mjs +0 -65
  409. package/esm2020/icon/icon.module.mjs +0 -21
  410. package/esm2020/inline-alert/inline-alert.component.mjs +0 -53
  411. package/esm2020/inline-alert/inline-alert.module.mjs +0 -20
  412. package/esm2020/input/autosize.directive.mjs +0 -59
  413. package/esm2020/input/helper-directives.mjs +0 -43
  414. package/esm2020/input/input-group/input-group.component.mjs +0 -39
  415. package/esm2020/input/input.component.mjs +0 -61
  416. package/esm2020/input/input.module.mjs +0 -87
  417. package/esm2020/input/number-input/number-input.component.mjs +0 -112
  418. package/esm2020/input/search/search.component.mjs +0 -88
  419. package/esm2020/input/tags-input/tags-input.component.mjs +0 -260
  420. package/esm2020/message/base-message.mjs +0 -90
  421. package/esm2020/message/message-wrapper.component.mjs +0 -14
  422. package/esm2020/message/message.component.mjs +0 -70
  423. package/esm2020/message/message.config.mjs +0 -21
  424. package/esm2020/message/message.module.mjs +0 -23
  425. package/esm2020/notification/notification-wrapper.component.mjs +0 -16
  426. package/esm2020/notification/notification.component.mjs +0 -107
  427. package/esm2020/notification/notification.module.mjs +0 -24
  428. package/esm2020/paginator/paginator-intl.mjs +0 -37
  429. package/esm2020/paginator/paginator.component.mjs +0 -125
  430. package/esm2020/paginator/paginator.module.mjs +0 -24
  431. package/esm2020/radio/base-radio.mjs +0 -67
  432. package/esm2020/radio/radio-button/radio-button.component.mjs +0 -42
  433. package/esm2020/radio/radio-group/radio-group.component.mjs +0 -76
  434. package/esm2020/radio/radio.component.mjs +0 -24
  435. package/esm2020/radio/radio.module.mjs +0 -21
  436. package/esm2020/scrolling/fixed-size-table-virtual-scroll-strategy.mjs +0 -83
  437. package/esm2020/scrolling/fixed-size-table-virtual-scroll.directive.mjs +0 -121
  438. package/esm2020/scrolling/fixed-size-virtual-scroll.directive.mjs +0 -28
  439. package/esm2020/scrolling/virtual-scroll-viewport.component.mjs +0 -26
  440. package/esm2020/select/base-select.mjs +0 -337
  441. package/esm2020/select/multi-select/multi-select.component.mjs +0 -313
  442. package/esm2020/select/option/option.component.mjs +0 -112
  443. package/esm2020/select/option-group/option-group.component.mjs +0 -23
  444. package/esm2020/select/select.component.mjs +0 -108
  445. package/esm2020/select/select.module.mjs +0 -80
  446. package/esm2020/select/validators.mjs +0 -79
  447. package/esm2020/shared/click-outside.directive.mjs +0 -28
  448. package/esm2020/sort/sort-errors.mjs +0 -17
  449. package/esm2020/sort/sort-header.component.mjs +0 -72
  450. package/esm2020/sort/sort.directive.mjs +0 -75
  451. package/esm2020/sort/sort.module.mjs +0 -19
  452. package/esm2020/status-bar/status-bar.component.mjs +0 -29
  453. package/esm2020/status-bar/status-bar.module.mjs +0 -19
  454. package/esm2020/steps/steps.component.mjs +0 -184
  455. package/esm2020/steps/steps.module.mjs +0 -19
  456. package/esm2020/switch/switch.component.mjs +0 -46
  457. package/esm2020/switch/switch.module.mjs +0 -18
  458. package/esm2020/table/table-cell-def.directive.mjs +0 -29
  459. package/esm2020/table/table-cell.component.mjs +0 -121
  460. package/esm2020/table/table-cell.directive.mjs +0 -31
  461. package/esm2020/table/table-column-def.directive.mjs +0 -37
  462. package/esm2020/table/table-header-cell-def.directive.mjs +0 -29
  463. package/esm2020/table/table-header-cell.directive.mjs +0 -27
  464. package/esm2020/table/table-header-row-def.directive.mjs +0 -39
  465. package/esm2020/table/table-header-row.component.mjs +0 -25
  466. package/esm2020/table/table-placeholder.directive.mjs +0 -30
  467. package/esm2020/table/table-row-def.directive.mjs +0 -42
  468. package/esm2020/table/table-row.component.mjs +0 -43
  469. package/esm2020/table/table-scroll.directive.mjs +0 -134
  470. package/esm2020/table/table.component.mjs +0 -79
  471. package/esm2020/table/table.module.mjs +0 -96
  472. package/esm2020/table-of-contents/table-of-contents.module.mjs +0 -20
  473. package/esm2020/table-of-contents/toc-container.directive.mjs +0 -109
  474. package/esm2020/table-of-contents/toc-content.directive.mjs +0 -35
  475. package/esm2020/table-of-contents/toc-link.directive.mjs +0 -44
  476. package/esm2020/tabs/tab-body.component.mjs +0 -165
  477. package/esm2020/tabs/tab-context.service.mjs +0 -31
  478. package/esm2020/tabs/tab-group.component.mjs +0 -291
  479. package/esm2020/tabs/tab-header-active-indicator.component.mjs +0 -53
  480. package/esm2020/tabs/tab-header.component.mjs +0 -367
  481. package/esm2020/tabs/tab.component.mjs +0 -85
  482. package/esm2020/tabs/tabs.module.mjs +0 -88
  483. package/esm2020/tabs/tabs.types.mjs +0 -13
  484. package/esm2020/tag/check-tag/check-tag.component.mjs +0 -33
  485. package/esm2020/tag/tag.component.mjs +0 -66
  486. package/esm2020/tag/tag.module.mjs +0 -20
  487. package/esm2020/theme/theme.module.mjs +0 -18
  488. package/esm2020/theme/theme.pipe.mjs +0 -69
  489. package/esm2020/theme/theme.service.mjs +0 -52
  490. package/esm2020/time-picker/component.mjs +0 -179
  491. package/esm2020/time-picker/panel/panel.component.mjs +0 -230
  492. package/esm2020/time-picker/time-picker.module.mjs +0 -58
  493. package/esm2020/tooltip/base-tooltip.mjs +0 -322
  494. package/esm2020/tooltip/tooltip-active.directive.mjs +0 -49
  495. package/esm2020/tooltip/tooltip-copy.directive.mjs +0 -82
  496. package/esm2020/tooltip/tooltip-intl.mjs +0 -29
  497. package/esm2020/tooltip/tooltip.component.mjs +0 -107
  498. package/esm2020/tooltip/tooltip.directive.mjs +0 -47
  499. package/esm2020/tooltip/tooltip.module.mjs +0 -33
  500. package/esm2020/tree-select/tree-select.component.mjs +0 -340
  501. package/esm2020/tree-select/tree-select.module.mjs +0 -34
  502. package/esm2020/types.mjs +0 -11
  503. package/esm2020/utils/bem.mjs +0 -44
  504. package/esm2020/utils/coercion.mjs +0 -17
  505. package/fesm2015/alauda-ui.mjs +0 -12051
  506. package/fesm2015/alauda-ui.mjs.map +0 -1
  507. package/fesm2020/alauda-ui.mjs.map +0 -1
  508. package/src/accordion/README.md +0 -13
  509. package/src/anchor/README.md +0 -23
  510. package/src/dropdown/README.md +0 -57
  511. package/src/form/README.md +0 -32
  512. package/src/icon/README.md +0 -28
  513. package/src/inline-alert/README.md +0 -16
  514. package/src/input/number-input/README.md +0 -16
  515. package/src/select/README.md +0 -57
  516. package/src/sort/README.md +0 -13
  517. package/src/table/README.md +0 -8
  518. package/src/table-of-contents/README.md +0 -94
  519. package/src/tag/README.md +0 -32
  520. package/src/tree-select/README.md +0 -34
  521. /package/{esm2020 → esm2022}/accordion/index.mjs +0 -0
  522. /package/{esm2020 → esm2022}/anchor/index.mjs +0 -0
  523. /package/{esm2020 → esm2022}/anchor/types.mjs +0 -0
  524. /package/{esm2020 → esm2022}/anchor/utils.mjs +0 -0
  525. /package/{esm2020 → esm2022}/autocomplete/autocomplete.types.mjs +0 -0
  526. /package/{esm2020 → esm2022}/autocomplete/index.mjs +0 -0
  527. /package/{esm2020 → esm2022}/back-top/index.mjs +0 -0
  528. /package/{esm2020 → esm2022}/breadcrumb/index.mjs +0 -0
  529. /package/{esm2020 → esm2022}/button/index.mjs +0 -0
  530. /package/{esm2020 → esm2022}/card/index.mjs +0 -0
  531. /package/{esm2020 → esm2022}/checkbox/index.mjs +0 -0
  532. /package/{esm2020 → esm2022}/color-picker/index.mjs +0 -0
  533. /package/{esm2020 → esm2022}/core/animation/animation-consts.mjs +0 -0
  534. /package/{esm2020 → esm2022}/date-picker/date-picker.type.mjs +0 -0
  535. /package/{esm2020 → esm2022}/date-picker/index.mjs +0 -0
  536. /package/{esm2020 → esm2022}/dialog/dialog.types.mjs +0 -0
  537. /package/{esm2020 → esm2022}/dialog/index.mjs +0 -0
  538. /package/{esm2020 → esm2022}/dialog/utils/errors.mjs +0 -0
  539. /package/{esm2020 → esm2022}/dialog/utils/index.mjs +0 -0
  540. /package/{esm2020 → esm2022}/drawer/component/drawer-ref.mjs +0 -0
  541. /package/{esm2020 → esm2022}/drawer/index.mjs +0 -0
  542. /package/{esm2020 → esm2022}/dropdown/dropdown.types.mjs +0 -0
  543. /package/{esm2020 → esm2022}/dropdown/index.mjs +0 -0
  544. /package/{esm2020 → esm2022}/form/form.types.mjs +0 -0
  545. /package/{esm2020 → esm2022}/form/index.mjs +0 -0
  546. /package/{esm2020 → esm2022}/i18n/i18n.type.mjs +0 -0
  547. /package/{esm2020 → esm2022}/i18n/index.mjs +0 -0
  548. /package/{esm2020 → esm2022}/i18n/language/en.mjs +0 -0
  549. /package/{esm2020 → esm2022}/i18n/language/zh.mjs +0 -0
  550. /package/{esm2020 → esm2022}/icon/icons.mjs +0 -0
  551. /package/{esm2020 → esm2022}/icon/index.mjs +0 -0
  552. /package/{esm2020 → esm2022}/icon/utils.mjs +0 -0
  553. /package/{esm2020 → esm2022}/index.mjs +0 -0
  554. /package/{esm2020 → esm2022}/inline-alert/index.mjs +0 -0
  555. /package/{esm2020 → esm2022}/inline-alert/inline-alert.types.mjs +0 -0
  556. /package/{esm2020 → esm2022}/input/index.mjs +0 -0
  557. /package/{esm2020 → esm2022}/input/tags-input/with-max-row-count.mjs +0 -0
  558. /package/{esm2020 → esm2022}/input/utils/index.mjs +0 -0
  559. /package/{esm2020 → esm2022}/message/index.mjs +0 -0
  560. /package/{esm2020 → esm2022}/message/message-animations.mjs +0 -0
  561. /package/{esm2020 → esm2022}/notification/index.mjs +0 -0
  562. /package/{esm2020 → esm2022}/notification/notification.config.mjs +0 -0
  563. /package/{esm2020 → esm2022}/paginator/index.mjs +0 -0
  564. /package/{esm2020 → esm2022}/radio/index.mjs +0 -0
  565. /package/{esm2020 → esm2022}/radio/radio.types.mjs +0 -0
  566. /package/{esm2020 → esm2022}/scrolling/index.mjs +0 -0
  567. /package/{esm2020 → esm2022}/select/index.mjs +0 -0
  568. /package/{esm2020 → esm2022}/select/select.types.mjs +0 -0
  569. /package/{esm2020 → esm2022}/sort/index.mjs +0 -0
  570. /package/{esm2020 → esm2022}/sort/sort.types.mjs +0 -0
  571. /package/{esm2020 → esm2022}/status-bar/index.mjs +0 -0
  572. /package/{esm2020 → esm2022}/status-bar/status-bar.types.mjs +0 -0
  573. /package/{esm2020 → esm2022}/steps/index.mjs +0 -0
  574. /package/{esm2020 → esm2022}/steps/types.mjs +0 -0
  575. /package/{esm2020 → esm2022}/switch/index.mjs +0 -0
  576. /package/{esm2020 → esm2022}/table/index.mjs +0 -0
  577. /package/{esm2020 → esm2022}/table-of-contents/index.mjs +0 -0
  578. /package/{esm2020 → esm2022}/tabs/index.mjs +0 -0
  579. /package/{esm2020 → esm2022}/tag/index.mjs +0 -0
  580. /package/{esm2020 → esm2022}/tag/tag.types.mjs +0 -0
  581. /package/{esm2020 → esm2022}/theme/index.mjs +0 -0
  582. /package/{esm2020 → esm2022}/theme/theme.types.mjs +0 -0
  583. /package/{esm2020 → esm2022}/theme/utils.mjs +0 -0
  584. /package/{esm2020 → esm2022}/time-picker/constant.mjs +0 -0
  585. /package/{esm2020 → esm2022}/time-picker/index.mjs +0 -0
  586. /package/{esm2020 → esm2022}/time-picker/time-picker.type.mjs +0 -0
  587. /package/{esm2020 → esm2022}/tooltip/index.mjs +0 -0
  588. /package/{esm2020 → esm2022}/tooltip/tooltip.types.mjs +0 -0
  589. /package/{esm2020 → esm2022}/tooltip/utils/index.mjs +0 -0
  590. /package/{esm2020 → esm2022}/tree-select/index.mjs +0 -0
  591. /package/{esm2020 → esm2022}/tree-select/tree-select.types.mjs +0 -0
  592. /package/{esm2020 → esm2022}/utils/animations.mjs +0 -0
  593. /package/{esm2020 → esm2022}/utils/async.mjs +0 -0
  594. /package/{esm2020 → esm2022}/utils/fn.mjs +0 -0
  595. /package/{esm2020 → esm2022}/utils/index.mjs +0 -0
  596. /package/{esm2020 → esm2022}/utils/observe-dom.mjs +0 -0
  597. /package/{esm2020 → esm2022}/utils/operators.mjs +0 -0
  598. /package/{esm2020 → esm2022}/utils/scroll-into-view.mjs +0 -0
  599. /package/{esm2020 → esm2022}/utils/watch-content-exist.mjs +0 -0
@@ -0,0 +1,350 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild, ViewChildren, ViewEncapsulation, forwardRef, } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import { BehaviorSubject, combineLatest, map, of, startWith, Subject, switchMap, takeUntil, tap, } from 'rxjs';
4
+ import { CommonFormControl } from '../form';
5
+ import { buildBem, coerceAttrBoolean, coerceString, publishRef, scrollIntoView, } from '../utils';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/common";
8
+ import * as i2 from "../tooltip/tooltip.directive";
9
+ import * as i3 from "../icon/icon.component";
10
+ import * as i4 from "../input/input.component";
11
+ import * as i5 from "../input/input-group/input-group.component";
12
+ import * as i6 from "../input/helper-directives";
13
+ export class TreeSelectComponent extends CommonFormControl {
14
+ get nodesData() {
15
+ return this._nodesData;
16
+ }
17
+ set nodesData(val) {
18
+ if (!val || val === this._nodesData) {
19
+ return;
20
+ }
21
+ this._nodesData = val;
22
+ this.flattedNodes = this.flatNodesData(val);
23
+ this.updateSelectDisplay(this.model);
24
+ }
25
+ loading = false;
26
+ placeholder = '';
27
+ get filterable() {
28
+ return this._filterable;
29
+ }
30
+ set filterable(val) {
31
+ this._filterable = coerceAttrBoolean(val);
32
+ }
33
+ get clearable() {
34
+ return this._clearable;
35
+ }
36
+ set clearable(val) {
37
+ this._clearable = coerceAttrBoolean(val);
38
+ }
39
+ get leafOnly() {
40
+ return this._leafOnly;
41
+ }
42
+ set leafOnly(val) {
43
+ this._leafOnly = coerceAttrBoolean(val);
44
+ }
45
+ filterFn = this._filterFn;
46
+ trackFn = this._trackFn;
47
+ labelFn;
48
+ filterChange = new EventEmitter();
49
+ show = new EventEmitter();
50
+ hide = new EventEmitter();
51
+ selectRef;
52
+ tooltipRef;
53
+ nodeListRef;
54
+ inputRef;
55
+ _nodesData = [];
56
+ _filterString = '';
57
+ _filterable = false;
58
+ _clearable = false;
59
+ _leafOnly = false;
60
+ filterString$$ = new BehaviorSubject(this.filterString);
61
+ filterString$ = this.filterString$$.asObservable();
62
+ containerWidth;
63
+ displayText = '';
64
+ flattedNodes = [];
65
+ get isClearable() {
66
+ return !this.disabled && this.clearable && this.getInputValue();
67
+ }
68
+ get opened() {
69
+ return this.tooltipRef.isCreated;
70
+ }
71
+ get inputReadonly() {
72
+ return !(this.filterable && this.opened);
73
+ }
74
+ get filterString() {
75
+ return this._filterString;
76
+ }
77
+ set filterString(val) {
78
+ if (val !== this._filterString) {
79
+ this._filterString = val;
80
+ this.filterString$$.next(val);
81
+ this.filterChange.emit(val);
82
+ }
83
+ }
84
+ updatePosition() {
85
+ this.tooltipRef.updatePosition();
86
+ }
87
+ onVisibleNodes(visible) {
88
+ if (visible) {
89
+ this.containerWidth = this.selectRef.nativeElement.offsetWidth + 'px';
90
+ this.show.emit();
91
+ this.cdr.detectChanges();
92
+ }
93
+ else {
94
+ if (this.onTouched) {
95
+ this.onTouched();
96
+ }
97
+ this.filterString = '';
98
+ this.hide.emit();
99
+ }
100
+ }
101
+ onInput(event) {
102
+ const value = event.target.value;
103
+ this.filterString = value;
104
+ this.cdr.markForCheck();
105
+ }
106
+ onNodeClick(node) {
107
+ this.selectNode(node);
108
+ }
109
+ getVisibleNodeCount() {
110
+ return this.flattedNodes.filter(node => this.filterFn(this.filterString, node)).length;
111
+ }
112
+ selectNode(node) {
113
+ if (!node.selected) {
114
+ this.emitValue(node.nodeData.value);
115
+ if (this.onChange) {
116
+ this.closeOption();
117
+ }
118
+ }
119
+ }
120
+ onKeyDown(event) {
121
+ if (event.key === 'Escape') {
122
+ this.closeOption();
123
+ event.stopPropagation();
124
+ event.preventDefault();
125
+ }
126
+ }
127
+ openOption() {
128
+ this.tooltipRef.show();
129
+ }
130
+ closeOption() {
131
+ this.inputRef.elementRef.nativeElement.value = this.displayText;
132
+ this.tooltipRef.hide();
133
+ }
134
+ updateSelectDisplay(value) {
135
+ const pickedNode = this.flattedNodes.find(node => this.trackFn(node.value) === this.trackFn(value));
136
+ this.displayText = pickedNode
137
+ ? this.getLabelFromNode(pickedNode).toString()
138
+ : coerceString(this.trackFn(value));
139
+ }
140
+ clearValue(event) {
141
+ this.emitValue(null);
142
+ event.stopPropagation();
143
+ event.preventDefault();
144
+ }
145
+ valueIn(v) {
146
+ this.updateSelectDisplay(v);
147
+ this.closeOption();
148
+ return v;
149
+ }
150
+ getPlaceholder() {
151
+ return this.filterable && this.opened ? this.displayText : this.placeholder;
152
+ }
153
+ getInputValue() {
154
+ return this.filterable && this.opened ? '' : this.displayText;
155
+ }
156
+ trackByLabel = (_, node) => this.getLabelFromNode(node);
157
+ flatNodesData(nodes = []) {
158
+ return nodes.reduce((prevValue, currentNode) => prevValue.concat(currentNode, this.flatNodesData(currentNode.children)), []);
159
+ }
160
+ getLabelFromNode(node) {
161
+ return (this.labelFn?.(node.value) ||
162
+ node.label ||
163
+ coerceString(this.trackFn(node.value)));
164
+ }
165
+ _filterFn(filterString, node) {
166
+ return this.getLabelFromNode(node)?.includes(filterString ?? '');
167
+ }
168
+ _trackFn(value) {
169
+ return value;
170
+ }
171
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: TreeSelectComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
172
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: TreeSelectComponent, selector: "aui-tree-select", inputs: { nodesData: "nodesData", loading: "loading", placeholder: "placeholder", filterable: "filterable", clearable: "clearable", leafOnly: "leafOnly", filterFn: "filterFn", trackFn: "trackFn", labelFn: "labelFn" }, outputs: { filterChange: "filterChange", show: "show", hide: "hide" }, providers: [
173
+ {
174
+ provide: NG_VALUE_ACCESSOR,
175
+ useExisting: forwardRef(() => TreeSelectComponent),
176
+ multi: true,
177
+ },
178
+ ], viewQueries: [{ propertyName: "selectRef", first: true, predicate: ["selectRef"], descendants: true, static: true }, { propertyName: "tooltipRef", first: true, predicate: ["tooltipRef"], descendants: true, static: true }, { propertyName: "nodeListRef", first: true, predicate: ["nodeListRef"], descendants: true, static: true }, { propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"aui-tree-select\"\n [class.isDisabled]=\"disabled\"\n [class.isClearable]=\"isClearable\"\n #selectRef\n #tooltipRef=\"auiTooltip\"\n [auiTooltip]=\"templateRef\"\n [auiTooltipDisabled]=\"disabled\"\n [auiDisableAnimation]=\"true\"\n auiTooltipTrigger=\"click\"\n auiTooltipPosition=\"bottom start\"\n auiTooltipType=\"plain\"\n (auiTooltipVisibleChange)=\"onVisibleNodes($event)\"\n>\n <aui-input-group>\n <input\n #inputRef\n class=\"aui-tree-select__input\"\n autocomplete=\"off\"\n aui-input\n [value]=\"getInputValue()\"\n [disabled]=\"disabled\"\n [placeholder]=\"getPlaceholder()\"\n [readonly]=\"inputReadonly\"\n (input)=\"onInput($event)\"\n (blur)=\"closeOption()\"\n (keydown)=\"onKeyDown($event)\"\n />\n <span\n auiInputSuffix\n class=\"aui-tree-select__icon-container\"\n >\n <aui-icon\n class=\"aui-tree-select__indicator\"\n [icon]=\"loading ? 'spinner' : 'caret_down_s'\"\n ></aui-icon>\n <aui-icon\n class=\"aui-tree-select__clear\"\n icon=\"xmark_small\"\n (click)=\"clearValue($event)\"\n ></aui-icon>\n </span>\n </aui-input-group>\n</div>\n\n<ng-template #templateRef>\n <div\n class=\"aui-tree-node-container\"\n [style.minWidth]=\"containerWidth\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div\n #nodeListRef\n class=\"aui-tree-node-container__content\"\n >\n <aui-tree-node\n *ngFor=\"let data of nodesData; trackBy: trackByLabel\"\n [nodeData]=\"data\"\n [leafOnly]=\"leafOnly\"\n ></aui-tree-node>\n </div>\n <div\n *ngIf=\"!getVisibleNodeCount()\"\n class=\"aui-tree-node-container__placeholder\"\n >\n <ng-content select=\"aui-tree-node-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".aui-tree-node-container{padding:8px 0;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-popper-bg))}:root .aui-tree-node-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-tree-node-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-tree-node-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-tree-node-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-tree-node-container__content{max-height:calc(var(--aui-inline-height-s) * 10);position:relative;overflow:auto}.aui-tree-node-container__content::-webkit-scrollbar{width:4px;height:4px}.aui-tree-node-container__content::-webkit-scrollbar-thumb{border-radius:2px;background-color:rgba(var(--aui-color-n-1),.2)}.aui-tree-node-container__content::-webkit-scrollbar-corner{background-color:transparent}.aui-tree-node-container__placeholder{color:rgb(var(--aui-color-n-4));font-size:var(--aui-font-size-m);text-align:center}.aui-tree-node-container--small .aui-tree-node-container__content{max-height:calc(var(--aui-inline-height-s) * 10)}.aui-tree-node-container--small .aui-tree-node-container__placeholder{font-size:var(--aui-font-size-s)}.aui-tree-select{display:inline-block;position:relative;width:100%}.aui-tree-select__icon-container{display:block;position:relative}.aui-tree-select.isDisabled .aui-tree-select__icon-container{color:rgb(var(--aui-color-n-4))}.aui-tree-select__clear{display:none}.aui-tree-select__clear .aui-icon{border-radius:50%;color:rgb(var(--aui-color-help-text));cursor:pointer;transition:all .3s ease}.aui-tree-select__clear .aui-icon:hover{color:rgb(var(--aui-color-main-bg));background-color:rgb(var(--aui-color-help-text))}.aui-tree-select.isClearable:not(.isDisabled):hover .aui-tree-select__indicator{display:none}.aui-tree-select.isClearable:not(.isDisabled):hover .aui-tree-select__clear{display:flex}.aui-tree-select:not(.isDisabled):hover .aui-input{border-color:rgb(var(--aui-color-primary))}.aui-tree-select__input.aui-input[readonly]:not([disabled]){background-color:rgb(var(--aui-color-n-9));cursor:text}aui-tree-select.ng-invalid.ng-dirty .aui-input,.ng-submitted aui-tree-select.ng-invalid .aui-input{border-color:rgb(var(--aui-color-red))!important}:root aui-tree-select.ng-invalid.ng-dirty .aui-input:focus,:root aui-tree-select.ng-invalid.ng-dirty .aui-input.isFocused,:root .ng-submitted aui-tree-select.ng-invalid .aui-input:focus,:root .ng-submitted aui-tree-select.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}html[aui-theme-mode=light] aui-tree-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=light] aui-tree-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=light] .ng-submitted aui-tree-select.ng-invalid .aui-input:focus,html[aui-theme-mode=light] .ng-submitted aui-tree-select.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] aui-tree-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=system] aui-tree-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=system] .ng-submitted aui-tree-select.ng-invalid .aui-input:focus,html[aui-theme-mode=system] .ng-submitted aui-tree-select.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}}html[aui-theme-mode=dark] aui-tree-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=dark] aui-tree-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=dark] .ng-submitted aui-tree-select.ng-invalid .aui-input:focus,html[aui-theme-mode=dark] .ng-submitted aui-tree-select.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return i1.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i1.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.TooltipDirective; }), selector: "[auiTooltip]", inputs: ["auiTooltip", "auiTooltipContext", "auiTooltipClass", "auiTooltipType", "auiTooltipPosition", "auiTooltipTrigger", "auiTooltipDisabled", "auiTooltipHideOnClick", "auiDisableAnimation"], outputs: ["auiTooltipVisibleChange"], exportAs: ["auiTooltip"] }, { kind: "component", type: i0.forwardRef(function () { return i3.IconComponent; }), selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }, { kind: "component", type: i0.forwardRef(function () { return i4.InputComponent; }), selector: "input[aui-input],textarea[aui-input]", inputs: ["size", "disabled"] }, { kind: "component", type: i0.forwardRef(function () { return i5.InputGroupComponent; }), selector: "aui-input-group" }, { kind: "directive", type: i0.forwardRef(function () { return i6.InputSuffixDirective; }), selector: "[auiInputSuffix]" }, { kind: "component", type: i0.forwardRef(function () { return TreeNodeComponent; }), selector: "aui-tree-node", inputs: ["nodeData", "leafOnly"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
179
+ }
180
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: TreeSelectComponent, decorators: [{
181
+ type: Component,
182
+ args: [{ selector: 'aui-tree-select', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, preserveWhitespaces: false, providers: [
183
+ {
184
+ provide: NG_VALUE_ACCESSOR,
185
+ useExisting: forwardRef(() => TreeSelectComponent),
186
+ multi: true,
187
+ },
188
+ ], template: "<div\n class=\"aui-tree-select\"\n [class.isDisabled]=\"disabled\"\n [class.isClearable]=\"isClearable\"\n #selectRef\n #tooltipRef=\"auiTooltip\"\n [auiTooltip]=\"templateRef\"\n [auiTooltipDisabled]=\"disabled\"\n [auiDisableAnimation]=\"true\"\n auiTooltipTrigger=\"click\"\n auiTooltipPosition=\"bottom start\"\n auiTooltipType=\"plain\"\n (auiTooltipVisibleChange)=\"onVisibleNodes($event)\"\n>\n <aui-input-group>\n <input\n #inputRef\n class=\"aui-tree-select__input\"\n autocomplete=\"off\"\n aui-input\n [value]=\"getInputValue()\"\n [disabled]=\"disabled\"\n [placeholder]=\"getPlaceholder()\"\n [readonly]=\"inputReadonly\"\n (input)=\"onInput($event)\"\n (blur)=\"closeOption()\"\n (keydown)=\"onKeyDown($event)\"\n />\n <span\n auiInputSuffix\n class=\"aui-tree-select__icon-container\"\n >\n <aui-icon\n class=\"aui-tree-select__indicator\"\n [icon]=\"loading ? 'spinner' : 'caret_down_s'\"\n ></aui-icon>\n <aui-icon\n class=\"aui-tree-select__clear\"\n icon=\"xmark_small\"\n (click)=\"clearValue($event)\"\n ></aui-icon>\n </span>\n </aui-input-group>\n</div>\n\n<ng-template #templateRef>\n <div\n class=\"aui-tree-node-container\"\n [style.minWidth]=\"containerWidth\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div\n #nodeListRef\n class=\"aui-tree-node-container__content\"\n >\n <aui-tree-node\n *ngFor=\"let data of nodesData; trackBy: trackByLabel\"\n [nodeData]=\"data\"\n [leafOnly]=\"leafOnly\"\n ></aui-tree-node>\n </div>\n <div\n *ngIf=\"!getVisibleNodeCount()\"\n class=\"aui-tree-node-container__placeholder\"\n >\n <ng-content select=\"aui-tree-node-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".aui-tree-node-container{padding:8px 0;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-popper-bg))}:root .aui-tree-node-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-tree-node-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-tree-node-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-tree-node-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-tree-node-container__content{max-height:calc(var(--aui-inline-height-s) * 10);position:relative;overflow:auto}.aui-tree-node-container__content::-webkit-scrollbar{width:4px;height:4px}.aui-tree-node-container__content::-webkit-scrollbar-thumb{border-radius:2px;background-color:rgba(var(--aui-color-n-1),.2)}.aui-tree-node-container__content::-webkit-scrollbar-corner{background-color:transparent}.aui-tree-node-container__placeholder{color:rgb(var(--aui-color-n-4));font-size:var(--aui-font-size-m);text-align:center}.aui-tree-node-container--small .aui-tree-node-container__content{max-height:calc(var(--aui-inline-height-s) * 10)}.aui-tree-node-container--small .aui-tree-node-container__placeholder{font-size:var(--aui-font-size-s)}.aui-tree-select{display:inline-block;position:relative;width:100%}.aui-tree-select__icon-container{display:block;position:relative}.aui-tree-select.isDisabled .aui-tree-select__icon-container{color:rgb(var(--aui-color-n-4))}.aui-tree-select__clear{display:none}.aui-tree-select__clear .aui-icon{border-radius:50%;color:rgb(var(--aui-color-help-text));cursor:pointer;transition:all .3s ease}.aui-tree-select__clear .aui-icon:hover{color:rgb(var(--aui-color-main-bg));background-color:rgb(var(--aui-color-help-text))}.aui-tree-select.isClearable:not(.isDisabled):hover .aui-tree-select__indicator{display:none}.aui-tree-select.isClearable:not(.isDisabled):hover .aui-tree-select__clear{display:flex}.aui-tree-select:not(.isDisabled):hover .aui-input{border-color:rgb(var(--aui-color-primary))}.aui-tree-select__input.aui-input[readonly]:not([disabled]){background-color:rgb(var(--aui-color-n-9));cursor:text}aui-tree-select.ng-invalid.ng-dirty .aui-input,.ng-submitted aui-tree-select.ng-invalid .aui-input{border-color:rgb(var(--aui-color-red))!important}:root aui-tree-select.ng-invalid.ng-dirty .aui-input:focus,:root aui-tree-select.ng-invalid.ng-dirty .aui-input.isFocused,:root .ng-submitted aui-tree-select.ng-invalid .aui-input:focus,:root .ng-submitted aui-tree-select.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}html[aui-theme-mode=light] aui-tree-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=light] aui-tree-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=light] .ng-submitted aui-tree-select.ng-invalid .aui-input:focus,html[aui-theme-mode=light] .ng-submitted aui-tree-select.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] aui-tree-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=system] aui-tree-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=system] .ng-submitted aui-tree-select.ng-invalid .aui-input:focus,html[aui-theme-mode=system] .ng-submitted aui-tree-select.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}}html[aui-theme-mode=dark] aui-tree-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=dark] aui-tree-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=dark] .ng-submitted aui-tree-select.ng-invalid .aui-input:focus,html[aui-theme-mode=dark] .ng-submitted aui-tree-select.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}\n"] }]
189
+ }], propDecorators: { nodesData: [{
190
+ type: Input
191
+ }], loading: [{
192
+ type: Input
193
+ }], placeholder: [{
194
+ type: Input
195
+ }], filterable: [{
196
+ type: Input
197
+ }], clearable: [{
198
+ type: Input
199
+ }], leafOnly: [{
200
+ type: Input
201
+ }], filterFn: [{
202
+ type: Input
203
+ }], trackFn: [{
204
+ type: Input
205
+ }], labelFn: [{
206
+ type: Input
207
+ }], filterChange: [{
208
+ type: Output
209
+ }], show: [{
210
+ type: Output
211
+ }], hide: [{
212
+ type: Output
213
+ }], selectRef: [{
214
+ type: ViewChild,
215
+ args: ['selectRef', { static: true }]
216
+ }], tooltipRef: [{
217
+ type: ViewChild,
218
+ args: ['tooltipRef', { static: true }]
219
+ }], nodeListRef: [{
220
+ type: ViewChild,
221
+ args: ['nodeListRef', { static: true }]
222
+ }], inputRef: [{
223
+ type: ViewChild,
224
+ args: ['inputRef', { static: true }]
225
+ }] } });
226
+ export class TreeNodeComponent {
227
+ cdr;
228
+ bem = buildBem('aui-tree-node');
229
+ _nodeData;
230
+ nodeData$$ = new BehaviorSubject(this.nodeData);
231
+ destroy$$ = new Subject();
232
+ get nodeData() {
233
+ return this._nodeData;
234
+ }
235
+ set nodeData(val) {
236
+ if (val === this._nodeData) {
237
+ return;
238
+ }
239
+ this._nodeData = val;
240
+ this.nodeData$$.next(val);
241
+ }
242
+ get leafOnly() {
243
+ return this._leafOnly;
244
+ }
245
+ set leafOnly(val) {
246
+ this._leafOnly = coerceAttrBoolean(val);
247
+ }
248
+ titleRef;
249
+ childNodes;
250
+ selected = false;
251
+ visible = true;
252
+ isLeaf = false;
253
+ _leafOnly = true;
254
+ select;
255
+ selected$;
256
+ selfVisible$;
257
+ visible$;
258
+ constructor(select, cdr) {
259
+ this.cdr = cdr;
260
+ this.select = select;
261
+ this.selected$ = combineLatest([
262
+ this.select.model$,
263
+ this.nodeData$$.pipe(map(data => data.value)),
264
+ ]).pipe(map(([selectValue, selfValue]) => selectValue &&
265
+ this.select.trackFn(selectValue) === this.select.trackFn(selfValue)), tap(selected => {
266
+ this.selected = selected;
267
+ }), publishRef());
268
+ this.selfVisible$ = combineLatest([
269
+ this.select.filterString$,
270
+ this.nodeData$$,
271
+ ]).pipe(map(([filterString, nodeData]) => this.select.filterFn(filterString, nodeData)), publishRef());
272
+ }
273
+ ngAfterViewInit() {
274
+ const hasVisibleChildNodes$ = this.childNodes.changes.pipe(startWith(this.childNodes), switchMap((nodes) => nodes.length > 0
275
+ ? combineLatest(nodes.map(node => node.visible$))
276
+ : of([false])), map(visible => visible.some(Boolean)), tap(hasVisibleChildren => (this.isLeaf = !hasVisibleChildren)));
277
+ this.visible$ = combineLatest([
278
+ this.selfVisible$,
279
+ hasVisibleChildNodes$,
280
+ ]).pipe(map(visible => visible.some(Boolean)), publishRef());
281
+ this.visible$.pipe(takeUntil(this.destroy$$)).subscribe(visible => {
282
+ this.visible = visible;
283
+ this.cdr.markForCheck();
284
+ });
285
+ this.selected$.pipe(takeUntil(this.destroy$$)).subscribe(selected => {
286
+ this.selected = selected;
287
+ this.cdr.markForCheck();
288
+ });
289
+ if (this.selected) {
290
+ requestAnimationFrame(() => {
291
+ this.scrollToNode(this);
292
+ });
293
+ }
294
+ }
295
+ ngOnDestroy() {
296
+ this.destroy$$.next();
297
+ this.destroy$$.complete();
298
+ }
299
+ onClick() {
300
+ if (this.nodeData.disabled || this.nodeData.loading) {
301
+ return;
302
+ }
303
+ if (this.leafOnly && !this.isLeaf) {
304
+ this.switchExpanded();
305
+ return;
306
+ }
307
+ this.select.onNodeClick(this);
308
+ }
309
+ switchExpanded() {
310
+ this.nodeData.expanded = !this.nodeData.expanded;
311
+ if (this.nodeData.expanded && this.childNodes.last) {
312
+ requestAnimationFrame(() => {
313
+ this.scrollToNode(this.childNodes.last);
314
+ });
315
+ }
316
+ requestAnimationFrame(() => {
317
+ this.select.updatePosition();
318
+ });
319
+ }
320
+ getIcon() {
321
+ return this.nodeData.expanded
322
+ ? this.nodeData.expandedIcon || this.nodeData.icon
323
+ : this.nodeData.icon;
324
+ }
325
+ trackByLabel(_, data) {
326
+ return data.label;
327
+ }
328
+ scrollToNode(node) {
329
+ if (this.select.nodeListRef) {
330
+ scrollIntoView(this.select.nodeListRef.nativeElement, node.titleRef.nativeElement);
331
+ }
332
+ }
333
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: TreeNodeComponent, deps: [{ token: TreeSelectComponent }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
334
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: TreeNodeComponent, selector: "aui-tree-node", inputs: { nodeData: "nodeData", leafOnly: "leafOnly" }, viewQueries: [{ propertyName: "titleRef", first: true, predicate: ["titleRef"], descendants: true, static: true }, { propertyName: "childNodes", predicate: ["treeNodes"], descendants: true }], ngImport: i0, template: "<div\n [hidden]=\"!visible\"\n class=\"aui-tree-node\"\n [class.isDisabled]=\"nodeData.disabled\"\n [class.isSelected]=\"selected\"\n [attr.data-value]=\"nodeData.value\"\n>\n <div\n class=\"aui-tree-node__content\"\n [class.isLeftOnly]=\"leafOnly && !isLeaf && !nodeData.disabled\"\n >\n <aui-icon\n *ngIf=\"nodeData.loading\"\n class=\"aui-tree-node__loading\"\n margin=\"left\"\n size=\"16\"\n [icon]=\"'spinner'\"\n ></aui-icon>\n <aui-icon\n *ngIf=\"nodeData.children && !nodeData.loading\"\n class=\"aui-tree-node__indicator\"\n margin=\"left\"\n size=\"16\"\n [icon]=\"nodeData.expanded ? 'angle_down' : 'angle_right'\"\n (click)=\"switchExpanded()\"\n ></aui-icon>\n <span\n #titleRef\n class=\"aui-tree-node__title\"\n [class.isDisabled]=\"nodeData.disabled || nodeData.loading\"\n [class.isSelected]=\"selected\"\n [class.unselectable]=\"leafOnly && !isLeaf\"\n (click)=\"onClick()\"\n >\n <aui-icon\n *ngIf=\"nodeData.icon\"\n margin=\"right\"\n [icon]=\"getIcon()\"\n ></aui-icon>\n {{ nodeData.label }}\n </span>\n </div>\n <div\n *ngIf=\"nodeData.children\"\n [hidden]=\"!nodeData.expanded\"\n class=\"aui-tree-node__children\"\n >\n <aui-tree-node\n #treeNodes\n *ngFor=\"let data of nodeData.children; trackBy: trackByLabel\"\n [nodeData]=\"data\"\n [leafOnly]=\"leafOnly\"\n ></aui-tree-node>\n </div>\n</div>\n", styles: [".aui-tree-node__content{display:flex;height:var(--aui-inline-height-m);line-height:var(--aui-inline-height-m);font-size:var(--aui-font-size-m);color:rgb(var(--aui-color-main-text));margin-left:4px;cursor:pointer}.aui-tree-node__content aui-icon{color:rgb(var(--aui-color-n-2))}.aui-tree-node__content.isLeftOnly:hover{background-color:rgb(var(--aui-color-p-6))}.aui-tree-node__title{display:inline-block;padding:6px 8px;width:100%;height:100%;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aui-tree-node__title:hover{background-color:rgb(var(--aui-color-p-6))}.aui-tree-node__title.unselectable{color:rgb(var(--aui-color-n-4))}.aui-tree-node__title.unselectable aui-icon{color:rgb(var(--aui-color-n-4))}.aui-tree-node__title.isSelected{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-tree-node__title.isSelected aui-icon{color:rgb(var(--aui-color-primary))}.aui-tree-node__title.isDisabled{color:rgb(var(--aui-color-n-6));cursor:not-allowed}.aui-tree-node__title.isDisabled aui-icon{color:rgb(var(--aui-color-n-6))}.aui-tree-node__loading{cursor:not-allowed}.aui-tree-node__indicator:hover{color:rgb(var(--aui-color-primary))}.aui-tree-node__children{margin-left:calc(var(--aui-font-size-m) + 6px)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }, { kind: "component", type: TreeNodeComponent, selector: "aui-tree-node", inputs: ["nodeData", "leafOnly"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
335
+ }
336
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: TreeNodeComponent, decorators: [{
337
+ type: Component,
338
+ args: [{ selector: 'aui-tree-node', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, preserveWhitespaces: false, template: "<div\n [hidden]=\"!visible\"\n class=\"aui-tree-node\"\n [class.isDisabled]=\"nodeData.disabled\"\n [class.isSelected]=\"selected\"\n [attr.data-value]=\"nodeData.value\"\n>\n <div\n class=\"aui-tree-node__content\"\n [class.isLeftOnly]=\"leafOnly && !isLeaf && !nodeData.disabled\"\n >\n <aui-icon\n *ngIf=\"nodeData.loading\"\n class=\"aui-tree-node__loading\"\n margin=\"left\"\n size=\"16\"\n [icon]=\"'spinner'\"\n ></aui-icon>\n <aui-icon\n *ngIf=\"nodeData.children && !nodeData.loading\"\n class=\"aui-tree-node__indicator\"\n margin=\"left\"\n size=\"16\"\n [icon]=\"nodeData.expanded ? 'angle_down' : 'angle_right'\"\n (click)=\"switchExpanded()\"\n ></aui-icon>\n <span\n #titleRef\n class=\"aui-tree-node__title\"\n [class.isDisabled]=\"nodeData.disabled || nodeData.loading\"\n [class.isSelected]=\"selected\"\n [class.unselectable]=\"leafOnly && !isLeaf\"\n (click)=\"onClick()\"\n >\n <aui-icon\n *ngIf=\"nodeData.icon\"\n margin=\"right\"\n [icon]=\"getIcon()\"\n ></aui-icon>\n {{ nodeData.label }}\n </span>\n </div>\n <div\n *ngIf=\"nodeData.children\"\n [hidden]=\"!nodeData.expanded\"\n class=\"aui-tree-node__children\"\n >\n <aui-tree-node\n #treeNodes\n *ngFor=\"let data of nodeData.children; trackBy: trackByLabel\"\n [nodeData]=\"data\"\n [leafOnly]=\"leafOnly\"\n ></aui-tree-node>\n </div>\n</div>\n", styles: [".aui-tree-node__content{display:flex;height:var(--aui-inline-height-m);line-height:var(--aui-inline-height-m);font-size:var(--aui-font-size-m);color:rgb(var(--aui-color-main-text));margin-left:4px;cursor:pointer}.aui-tree-node__content aui-icon{color:rgb(var(--aui-color-n-2))}.aui-tree-node__content.isLeftOnly:hover{background-color:rgb(var(--aui-color-p-6))}.aui-tree-node__title{display:inline-block;padding:6px 8px;width:100%;height:100%;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aui-tree-node__title:hover{background-color:rgb(var(--aui-color-p-6))}.aui-tree-node__title.unselectable{color:rgb(var(--aui-color-n-4))}.aui-tree-node__title.unselectable aui-icon{color:rgb(var(--aui-color-n-4))}.aui-tree-node__title.isSelected{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-tree-node__title.isSelected aui-icon{color:rgb(var(--aui-color-primary))}.aui-tree-node__title.isDisabled{color:rgb(var(--aui-color-n-6));cursor:not-allowed}.aui-tree-node__title.isDisabled aui-icon{color:rgb(var(--aui-color-n-6))}.aui-tree-node__loading{cursor:not-allowed}.aui-tree-node__indicator:hover{color:rgb(var(--aui-color-primary))}.aui-tree-node__children{margin-left:calc(var(--aui-font-size-m) + 6px)}\n"] }]
339
+ }], ctorParameters: function () { return [{ type: TreeSelectComponent }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { nodeData: [{
340
+ type: Input
341
+ }], leafOnly: [{
342
+ type: Input
343
+ }], titleRef: [{
344
+ type: ViewChild,
345
+ args: ['titleRef', { static: true }]
346
+ }], childNodes: [{
347
+ type: ViewChildren,
348
+ args: ['treeNodes']
349
+ }] } });
350
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3RyZWUtc2VsZWN0L3RyZWUtc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy90cmVlLXNlbGVjdC90cmVlLXNlbGVjdC5jb21wb25lbnQuaHRtbCIsIi4uLy4uLy4uL3NyYy90cmVlLXNlbGVjdC90cmVlLW5vZGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULFlBQVksRUFDWixpQkFBaUIsRUFDakIsVUFBVSxHQUtYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFDTCxlQUFlLEVBQ2YsYUFBYSxFQUNiLEdBQUcsRUFFSCxFQUFFLEVBQ0YsU0FBUyxFQUNULE9BQU8sRUFDUCxTQUFTLEVBQ1QsU0FBUyxFQUNULEdBQUcsR0FDSixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUk1QyxPQUFPLEVBRUwsUUFBUSxFQUNSLGlCQUFpQixFQUNqQixZQUFZLEVBQ1osVUFBVSxFQUNWLGNBQWMsR0FDZixNQUFNLFVBQVUsQ0FBQzs7Ozs7Ozs7QUFtQmxCLE1BQU0sT0FBTyxtQkFBaUMsU0FBUSxpQkFBb0I7SUFDeEUsSUFDSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFJLFNBQVMsQ0FBQyxHQUFHO1FBQ2YsSUFBSSxDQUFDLEdBQUcsSUFBSSxHQUFHLEtBQUssSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNuQyxPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsVUFBVSxHQUFHLEdBQUcs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RSxDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE9BQU87UUFDTCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUTtZQUMzQixDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJO1lBQ2xELENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztJQUN6QixDQUFDO0lBRUQsWUFBWSxDQUFDLENBQVMsRUFBRSxJQUFpQjtRQUN2QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUEwQjtRQUNyQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFO1lBQzNCLGNBQWMsQ0FDWixJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQ3JDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUM1QixDQUFDO1NBQ0g7SUFDSCxDQUFDO3VHQTNKVSxpQkFBaUI7MkZBQWpCLGlCQUFpQiw4U0U1UzlCLG8vQ0F1REEsdXhERnFQYSxpQkFBaUI7OzJGQUFqQixpQkFBaUI7a0JBUjdCLFNBQVM7K0JBQ0UsZUFBZSxtQkFHUix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLHVCQUNoQixLQUFLO3VJQVV0QixRQUFRO3NCQURYLEtBQUs7Z0JBY0YsUUFBUTtzQkFEWCxLQUFLO2dCQVVOLFFBQVE7c0JBRFAsU0FBUzt1QkFBQyxVQUFVLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUl2QyxVQUFVO3NCQURULFlBQVk7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxuICBWaWV3Q2hpbGRyZW4sXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBmb3J3YXJkUmVmLFxuICBRdWVyeUxpc3QsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBBZnRlclZpZXdJbml0LFxuICBPbkRlc3Ryb3ksXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICBCZWhhdmlvclN1YmplY3QsXG4gIGNvbWJpbmVMYXRlc3QsXG4gIG1hcCxcbiAgT2JzZXJ2YWJsZSxcbiAgb2YsXG4gIHN0YXJ0V2l0aCxcbiAgU3ViamVjdCxcbiAgc3dpdGNoTWFwLFxuICB0YWtlVW50aWwsXG4gIHRhcCxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IENvbW1vbkZvcm1Db250cm9sIH0gZnJvbSAnLi4vZm9ybSc7XG5pbXBvcnQgeyBJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uL2lucHV0JztcbmltcG9ydCB7IFRyYWNrRm4gfSBmcm9tICcuLi9zZWxlY3Qvc2VsZWN0LnR5cGVzJztcbmltcG9ydCB7IFRvb2x0aXBEaXJlY3RpdmUgfSBmcm9tICcuLi90b29sdGlwJztcbmltcG9ydCB7XG4gIEJlbSxcbiAgYnVpbGRCZW0sXG4gIGNvZXJjZUF0dHJCb29sZWFuLFxuICBjb2VyY2VTdHJpbmcsXG4gIHB1Ymxpc2hSZWYsXG4gIHNjcm9sbEludG9WaWV3LFxufSBmcm9tICcuLi91dGlscyc7XG5cbmltcG9ydCB7IFRyZWVOb2RlIH0gZnJvbSAnLi90cmVlLXNlbGVjdC50eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1aS10cmVlLXNlbGVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90cmVlLXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RyZWUtc2VsZWN0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUcmVlU2VsZWN0Q29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFRyZWVTZWxlY3RDb21wb25lbnQ8VCA9IHVua25vd24+IGV4dGVuZHMgQ29tbW9uRm9ybUNvbnRyb2w8VD4ge1xuICBASW5wdXQoKVxuICBnZXQgbm9kZXNEYXRhKCkge1xuICAgIHJldHVybiB0aGlzLl9ub2Rlc0RhdGE7XG4gIH1cblxuICBzZXQgbm9kZXNEYXRhKHZhbCkge1xuICAgIGlmICghdmFsIHx8IHZhbCA9PT0gdGhpcy5fbm9kZXNEYXRhKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX25vZGVzRGF0YSA9IHZhbDtcbiAgICB0aGlzLmZsYXR0ZWROb2RlcyA9IHRoaXMuZmxhdE5vZGVzRGF0YSh2YWwpO1xuICAgIHRoaXMudXBkYXRlU2VsZWN0RGlzcGxheSh0aGlzLm1vZGVsKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGxvYWRpbmcgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBwbGFjZWhvbGRlciA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIGdldCBmaWx0ZXJhYmxlKCkge1xuICAgIHJldHVybiB0aGlzLl9maWx0ZXJhYmxlO1xuICB9XG5cbiAgc2V0IGZpbHRlcmFibGUodmFsOiBib29sZWFuIHwgJycpIHtcbiAgICB0aGlzLl9maWx0ZXJhYmxlID0gY29lcmNlQXR0ckJvb2xlYW4odmFsKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCBjbGVhcmFibGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NsZWFyYWJsZTtcbiAgfVxuXG4gIHNldCBjbGVhcmFibGUodmFsOiBib29sZWFuIHwgJycpIHtcbiAgICB0aGlzLl9jbGVhcmFibGUgPSBjb2VyY2VBdHRyQm9vbGVhbih2YWwpO1xuICB9XG5cbiAgQElucHV0KClcbiAgZ2V0IGxlYWZPbmx5KCkge1xuICAgIHJldHVybiB0aGlzLl9sZWFmT25seTtcbiAgfVxuXG4gIHNldCBsZWFmT25seSh2YWw6IGJvb2xlYW4gfCAnJykge1xuICAgIHRoaXMuX2xlYWZPbmx5ID0gY29lcmNlQXR0ckJvb2xlYW4odmFsKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGZpbHRlckZuID0gdGhpcy5fZmlsdGVyRm47XG5cbiAgQElucHV0KClcbiAgdHJhY2tGbjogVHJhY2tGbjxUPiA9IHRoaXMuX3RyYWNrRm47XG5cbiAgQElucHV0KClcbiAgbGFiZWxGbj86ICh2YWx1ZTogVCkgPT4gc3RyaW5nO1xuXG4gIEBPdXRwdXQoKVxuICBmaWx0ZXJDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBAT3V0cHV0KClcbiAgc2hvdyA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAT3V0cHV0KClcbiAgaGlkZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAVmlld0NoaWxkKCdzZWxlY3RSZWYnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwcm90ZWN0ZWQgc2VsZWN0UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBAVmlld0NoaWxkKCd0b29sdGlwUmVmJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgcHJvdGVjdGVkIHRvb2x0aXBSZWY6IFRvb2x0aXBEaXJlY3RpdmU7XG5cbiAgQFZpZXdDaGlsZCgnbm9kZUxpc3RSZWYnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBub2RlTGlzdFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgQFZpZXdDaGlsZCgnaW5wdXRSZWYnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBpbnB1dFJlZjogSW5wdXRDb21wb25lbnQ7XG5cbiAgcHJpdmF0ZSBfbm9kZXNEYXRhOiBBcnJheTxUcmVlTm9kZTxUPj4gPSBbXTtcbiAgcHJpdmF0ZSBfZmlsdGVyU3RyaW5nID0gJyc7XG4gIHByaXZhdGUgX2ZpbHRlcmFibGUgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfY2xlYXJhYmxlID0gZmFsc2U7XG4gIHByaXZhdGUgX2xlYWZPbmx5ID0gZmFsc2U7XG4gIHByaXZhdGUgcmVhZG9ubHkgZmlsdGVyU3RyaW5nJCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHRoaXMuZmlsdGVyU3RyaW5nKTtcblxuICBmaWx0ZXJTdHJpbmckOiBPYnNlcnZhYmxlPHN0cmluZz4gPSB0aGlzLmZpbHRlclN0cmluZyQkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIGNvbnRhaW5lcldpZHRoOiBzdHJpbmc7XG4gIGRpc3BsYXlUZXh0ID0gJyc7XG4gIGZsYXR0ZWROb2RlczogQXJyYXk8VHJlZU5vZGU8VD4+ID0gW107XG5cbiAgZ2V0IGlzQ2xlYXJhYmxlKCkge1xuICAgIHJldHVybiAhdGhpcy5kaXNhYmxlZCAmJiB0aGlzLmNsZWFyYWJsZSAmJiB0aGlzLmdldElucHV0VmFsdWUoKTtcbiAgfVxuXG4gIGdldCBvcGVuZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMudG9vbHRpcFJlZi5pc0NyZWF0ZWQ7XG4gIH1cblxuICBnZXQgaW5wdXRSZWFkb25seSgpIHtcbiAgICByZXR1cm4gISh0aGlzLmZpbHRlcmFibGUgJiYgdGhpcy5vcGVuZWQpO1xuICB9XG5cbiAgZ2V0IGZpbHRlclN0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5fZmlsdGVyU3RyaW5nO1xuICB9XG5cbiAgc2V0IGZpbHRlclN0cmluZyh2YWwpIHtcbiAgICBpZiAodmFsICE9PSB0aGlzLl9maWx0ZXJTdHJpbmcpIHtcbiAgICAgIHRoaXMuX2ZpbHRlclN0cmluZyA9IHZhbDtcbiAgICAgIHRoaXMuZmlsdGVyU3RyaW5nJCQubmV4dCh2YWwpO1xuICAgICAgdGhpcy5maWx0ZXJDaGFuZ2UuZW1pdCh2YWwpO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVBvc2l0aW9uKCkge1xuICAgIHRoaXMudG9vbHRpcFJlZi51cGRhdGVQb3NpdGlvbigpO1xuICB9XG5cbiAgb25WaXNpYmxlTm9kZXModmlzaWJsZTogYm9vbGVhbikge1xuICAgIGlmICh2aXNpYmxlKSB7XG4gICAgICB0aGlzLmNvbnRhaW5lcldpZHRoID0gdGhpcy5zZWxlY3RSZWYubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aCArICdweCc7XG4gICAgICB0aGlzLnNob3cuZW1pdCgpO1xuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5vblRvdWNoZWQpIHtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuZmlsdGVyU3RyaW5nID0gJyc7XG4gICAgICB0aGlzLmhpZGUuZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIG9uSW5wdXQoZXZlbnQ6IEV2ZW50KSB7XG4gICAgY29uc3QgdmFsdWUgPSAoZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLnZhbHVlO1xuICAgIHRoaXMuZmlsdGVyU3RyaW5nID0gdmFsdWU7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBvbk5vZGVDbGljayhub2RlOiBUcmVlTm9kZUNvbXBvbmVudDxUPikge1xuICAgIHRoaXMuc2VsZWN0Tm9kZShub2RlKTtcbiAgfVxuXG4gIGdldFZpc2libGVOb2RlQ291bnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmxhdHRlZE5vZGVzLmZpbHRlcihub2RlID0+XG4gICAgICB0aGlzLmZpbHRlckZuKHRoaXMuZmlsdGVyU3RyaW5nLCBub2RlKSxcbiAgICApLmxlbmd0aDtcbiAgfVxuXG4gIHNlbGVjdE5vZGUobm9kZTogVHJlZU5vZGVDb21wb25lbnQ8VD4pIHtcbiAgICBpZiAoIW5vZGUuc2VsZWN0ZWQpIHtcbiAgICAgIHRoaXMuZW1pdFZhbHVlKG5vZGUubm9kZURhdGEudmFsdWUpO1xuICAgICAgaWYgKHRoaXMub25DaGFuZ2UpIHtcbiAgICAgICAgdGhpcy5jbG9zZU9wdGlvbigpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmIChldmVudC5rZXkgPT09ICdFc2NhcGUnKSB7XG4gICAgICB0aGlzLmNsb3NlT3B0aW9uKCk7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgb3Blbk9wdGlvbigpIHtcbiAgICB0aGlzLnRvb2x0aXBSZWYuc2hvdygpO1xuICB9XG5cbiAgY2xvc2VPcHRpb24oKSB7XG4gICAgdGhpcy5pbnB1dFJlZi5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLmRpc3BsYXlUZXh0O1xuICAgIHRoaXMudG9vbHRpcFJlZi5oaWRlKCk7XG4gIH1cblxuICB1cGRhdGVTZWxlY3REaXNwbGF5KHZhbHVlOiBhbnkpIHtcbiAgICBjb25zdCBwaWNrZWROb2RlID0gdGhpcy5mbGF0dGVkTm9kZXMuZmluZChcbiAgICAgIG5vZGUgPT4gdGhpcy50cmFja0ZuKG5vZGUudmFsdWUpID09PSB0aGlzLnRyYWNrRm4odmFsdWUpLFxuICAgICk7XG4gICAgdGhpcy5kaXNwbGF5VGV4dCA9IHBpY2tlZE5vZGVcbiAgICAgID8gdGhpcy5nZXRMYWJlbEZyb21Ob2RlKHBpY2tlZE5vZGUpLnRvU3RyaW5nKClcbiAgICAgIDogY29lcmNlU3RyaW5nKHRoaXMudHJhY2tGbih2YWx1ZSkpO1xuICB9XG5cbiAgY2xlYXJWYWx1ZShldmVudDogRXZlbnQpIHtcbiAgICB0aGlzLmVtaXRWYWx1ZShudWxsKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHZhbHVlSW4odjogVCk6IFQge1xuICAgIHRoaXMudXBkYXRlU2VsZWN0RGlzcGxheSh2KTtcbiAgICB0aGlzLmNsb3NlT3B0aW9uKCk7XG4gICAgcmV0dXJuIHY7XG4gIH1cblxuICBnZXRQbGFjZWhvbGRlcigpIHtcbiAgICByZXR1cm4gdGhpcy5maWx0ZXJhYmxlICYmIHRoaXMub3BlbmVkID8gdGhpcy5kaXNwbGF5VGV4dCA6IHRoaXMucGxhY2Vob2xkZXI7XG4gIH1cblxuICBnZXRJbnB1dFZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLmZpbHRlcmFibGUgJiYgdGhpcy5vcGVuZWQgPyAnJyA6IHRoaXMuZGlzcGxheVRleHQ7XG4gIH1cblxuICAvLyBgdGhpc2AgaXMgbm90IGF2YWlsYWJsZSBpbiBgdHJhY2tCeWAuLi5cbiAgdHJhY2tCeUxhYmVsID0gKF86IG51bWJlciwgbm9kZTogVHJlZU5vZGU8VD4pID0+IHRoaXMuZ2V0TGFiZWxGcm9tTm9kZShub2RlKTtcblxuICBwcml2YXRlIGZsYXROb2Rlc0RhdGEobm9kZXM6IEFycmF5PFRyZWVOb2RlPFQ+PiA9IFtdKTogQXJyYXk8VHJlZU5vZGU8VD4+IHtcbiAgICByZXR1cm4gbm9kZXMucmVkdWNlKFxuICAgICAgKHByZXZWYWx1ZTogQXJyYXk8VHJlZU5vZGU8VD4+LCBjdXJyZW50Tm9kZSkgPT5cbiAgICAgICAgcHJldlZhbHVlLmNvbmNhdChjdXJyZW50Tm9kZSwgdGhpcy5mbGF0Tm9kZXNEYXRhKGN1cnJlbnROb2RlLmNoaWxkcmVuKSksXG4gICAgICBbXSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRMYWJlbEZyb21Ob2RlKG5vZGU6IFRyZWVOb2RlPFQ+KSB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMubGFiZWxGbj8uKG5vZGUudmFsdWUpIHx8XG4gICAgICBub2RlLmxhYmVsIHx8XG4gICAgICBjb2VyY2VTdHJpbmcodGhpcy50cmFja0ZuKG5vZGUudmFsdWUpKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9maWx0ZXJGbihmaWx0ZXJTdHJpbmc6IHN0cmluZywgbm9kZTogVHJlZU5vZGU8VD4pIHtcbiAgICByZXR1cm4gdGhpcy5nZXRMYWJlbEZyb21Ob2RlKG5vZGUpPy5pbmNsdWRlcyhmaWx0ZXJTdHJpbmcgPz8gJycpO1xuICB9XG5cbiAgcHJpdmF0ZSBfdHJhY2tGbjxUPih2YWx1ZTogVCkge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdWktdHJlZS1ub2RlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RyZWUtbm9kZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RyZWUtbm9kZS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG59KVxuZXhwb3J0IGNsYXNzIFRyZWVOb2RlQ29tcG9uZW50PFQ+IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgYmVtOiBCZW0gPSBidWlsZEJlbSgnYXVpLXRyZWUtbm9kZScpO1xuXG4gIHByaXZhdGUgX25vZGVEYXRhOiBUcmVlTm9kZTxUPjtcbiAgcHJpdmF0ZSByZWFkb25seSBub2RlRGF0YSQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUcmVlTm9kZTxUPj4odGhpcy5ub2RlRGF0YSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBASW5wdXQoKVxuICBnZXQgbm9kZURhdGEoKSB7XG4gICAgcmV0dXJuIHRoaXMuX25vZGVEYXRhO1xuICB9XG5cbiAgc2V0IG5vZGVEYXRhKHZhbCkge1xuICAgIGlmICh2YWwgPT09IHRoaXMuX25vZGVEYXRhKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX25vZGVEYXRhID0gdmFsO1xuICAgIHRoaXMubm9kZURhdGEkJC5uZXh0KHZhbCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBnZXQgbGVhZk9ubHkoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2xlYWZPbmx5O1xuICB9XG5cbiAgc2V0IGxlYWZPbmx5KHZhbDogYm9vbGVhbiB8ICcnKSB7XG4gICAgdGhpcy5fbGVhZk9ubHkgPSBjb2VyY2VBdHRyQm9vbGVhbih2YWwpO1xuICB9XG5cbiAgQFZpZXdDaGlsZCgndGl0bGVSZWYnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICB0aXRsZVJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgQFZpZXdDaGlsZHJlbigndHJlZU5vZGVzJylcbiAgY2hpbGROb2RlczogUXVlcnlMaXN0PFRyZWVOb2RlQ29tcG9uZW50PFQ+PjtcblxuICBzZWxlY3RlZCA9IGZhbHNlO1xuICB2aXNpYmxlID0gdHJ1ZTtcbiAgaXNMZWFmID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBfbGVhZk9ubHkgPSB0cnVlO1xuICBwcml2YXRlIHJlYWRvbmx5IHNlbGVjdDogVHJlZVNlbGVjdENvbXBvbmVudDxUPjtcbiAgc2VsZWN0ZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBzZWxmVmlzaWJsZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIHZpc2libGUkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNlbGVjdDogVHJlZVNlbGVjdENvbXBvbmVudDxUPixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge1xuICAgIHRoaXMuc2VsZWN0ID0gc2VsZWN0O1xuICAgIHRoaXMuc2VsZWN0ZWQkID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLnNlbGVjdC5tb2RlbCQsXG4gICAgICB0aGlzLm5vZGVEYXRhJCQucGlwZShtYXAoZGF0YSA9PiBkYXRhLnZhbHVlKSksXG4gICAgXSkucGlwZShcbiAgICAgIG1hcChcbiAgICAgICAgKFtzZWxlY3RWYWx1ZSwgc2VsZlZhbHVlXSkgPT5cbiAgICAgICAgICBzZWxlY3RWYWx1ZSAmJlxuICAgICAgICAgIHRoaXMuc2VsZWN0LnRyYWNrRm4oc2VsZWN0VmFsdWUpID09PSB0aGlzLnNlbGVjdC50cmFja0ZuKHNlbGZWYWx1ZSksXG4gICAgICApLFxuICAgICAgdGFwKHNlbGVjdGVkID0+IHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZCA9IHNlbGVjdGVkO1xuICAgICAgfSksXG4gICAgICBwdWJsaXNoUmVmKCksXG4gICAgKTtcbiAgICB0aGlzLnNlbGZWaXNpYmxlJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5zZWxlY3QuZmlsdGVyU3RyaW5nJCxcbiAgICAgIHRoaXMubm9kZURhdGEkJCxcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKChbZmlsdGVyU3RyaW5nLCBub2RlRGF0YV0pID0+XG4gICAgICAgIHRoaXMuc2VsZWN0LmZpbHRlckZuKGZpbHRlclN0cmluZywgbm9kZURhdGEpLFxuICAgICAgKSxcbiAgICAgIHB1Ymxpc2hSZWYoKSxcbiAgICApO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGNvbnN0IGhhc1Zpc2libGVDaGlsZE5vZGVzJCA9IHRoaXMuY2hpbGROb2Rlcy5jaGFuZ2VzLnBpcGUoXG4gICAgICBzdGFydFdpdGgodGhpcy5jaGlsZE5vZGVzKSxcbiAgICAgIHN3aXRjaE1hcCgobm9kZXM6IFF1ZXJ5TGlzdDxUcmVlTm9kZUNvbXBvbmVudDxUPj4pID0+XG4gICAgICAgIG5vZGVzLmxlbmd0aCA+IDBcbiAgICAgICAgICA/IGNvbWJpbmVMYXRlc3Qobm9kZXMubWFwKG5vZGUgPT4gbm9kZS52aXNpYmxlJCkpXG4gICAgICAgICAgOiBvZihbZmFsc2VdKSxcbiAgICAgICksXG4gICAgICBtYXAodmlzaWJsZSA9PiB2aXNpYmxlLnNvbWUoQm9vbGVhbikpLFxuICAgICAgdGFwKGhhc1Zpc2libGVDaGlsZHJlbiA9PiAodGhpcy5pc0xlYWYgPSAhaGFzVmlzaWJsZUNoaWxkcmVuKSksXG4gICAgKTtcbiAgICB0aGlzLnZpc2libGUkID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLnNlbGZWaXNpYmxlJCxcbiAgICAgIGhhc1Zpc2libGVDaGlsZE5vZGVzJCxcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKHZpc2libGUgPT4gdmlzaWJsZS5zb21lKEJvb2xlYW4pKSxcbiAgICAgIHB1Ymxpc2hSZWYoKSxcbiAgICApO1xuXG4gICAgdGhpcy52aXNpYmxlJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkJCkpLnN1YnNjcmliZSh2aXNpYmxlID0+IHtcbiAgICAgIHRoaXMudmlzaWJsZSA9IHZpc2libGU7XG4gICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9KTtcbiAgICB0aGlzLnNlbGVjdGVkJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkJCkpLnN1YnNjcmliZShzZWxlY3RlZCA9PiB7XG4gICAgICB0aGlzLnNlbGVjdGVkID0gc2VsZWN0ZWQ7XG4gICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLnNlbGVjdGVkKSB7XG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICB0aGlzLnNjcm9sbFRvTm9kZSh0aGlzKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveSQkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkJC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgb25DbGljaygpIHtcbiAgICBpZiAodGhpcy5ub2RlRGF0YS5kaXNhYmxlZCB8fCB0aGlzLm5vZGVEYXRhLmxvYWRpbmcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHRoaXMubGVhZk9ubHkgJiYgIXRoaXMuaXNMZWFmKSB7XG4gICAgICB0aGlzLnN3aXRjaEV4cGFuZGVkKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuc2VsZWN0Lm9uTm9kZUNsaWNrKHRoaXMpO1xuICB9XG5cbiAgc3dpdGNoRXhwYW5kZWQoKSB7XG4gICAgdGhpcy5ub2RlRGF0YS5leHBhbmRlZCA9ICF0aGlzLm5vZGVEYXRhLmV4cGFuZGVkO1xuICAgIGlmICh0aGlzLm5vZGVEYXRhLmV4cGFuZGVkICYmIHRoaXMuY2hpbGROb2Rlcy5sYXN0KSB7XG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICB0aGlzLnNjcm9sbFRvTm9kZSh0aGlzLmNoaWxkTm9kZXMubGFzdCk7XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIHRoaXMuc2VsZWN0LnVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgfSk7XG4gIH1cblxuICBnZXRJY29uKCkge1xuICAgIHJldHVybiB0aGlzLm5vZGVEYXRhLmV4cGFuZGVkXG4gICAgICA/IHRoaXMubm9kZURhdGEuZXhwYW5kZWRJY29uIHx8IHRoaXMubm9kZURhdGEuaWNvblxuICAgICAgOiB0aGlzLm5vZGVEYXRhLmljb247XG4gIH1cblxuICB0cmFja0J5TGFiZWwoXzogbnVtYmVyLCBkYXRhOiBUcmVlTm9kZTxUPikge1xuICAgIHJldHVybiBkYXRhLmxhYmVsO1xuICB9XG5cbiAgc2Nyb2xsVG9Ob2RlKG5vZGU6IFRyZWVOb2RlQ29tcG9uZW50PFQ+KSB7XG4gICAgaWYgKHRoaXMuc2VsZWN0Lm5vZGVMaXN0UmVmKSB7XG4gICAgICBzY3JvbGxJbnRvVmlldyhcbiAgICAgICAgdGhpcy5zZWxlY3Qubm9kZUxpc3RSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgbm9kZS50aXRsZVJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJhdWktdHJlZS1zZWxlY3RcIlxuICBbY2xhc3MuaXNEaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gIFtjbGFzcy5pc0NsZWFyYWJsZV09XCJpc0NsZWFyYWJsZVwiXG4gICNzZWxlY3RSZWZcbiAgI3Rvb2x0aXBSZWY9XCJhdWlUb29sdGlwXCJcbiAgW2F1aVRvb2x0aXBdPVwidGVtcGxhdGVSZWZcIlxuICBbYXVpVG9vbHRpcERpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgW2F1aURpc2FibGVBbmltYXRpb25dPVwidHJ1ZVwiXG4gIGF1aVRvb2x0aXBUcmlnZ2VyPVwiY2xpY2tcIlxuICBhdWlUb29sdGlwUG9zaXRpb249XCJib3R0b20gc3RhcnRcIlxuICBhdWlUb29sdGlwVHlwZT1cInBsYWluXCJcbiAgKGF1aVRvb2x0aXBWaXNpYmxlQ2hhbmdlKT1cIm9uVmlzaWJsZU5vZGVzKCRldmVudClcIlxuPlxuICA8YXVpLWlucHV0LWdyb3VwPlxuICAgIDxpbnB1dFxuICAgICAgI2lucHV0UmVmXG4gICAgICBjbGFzcz1cImF1aS10cmVlLXNlbGVjdF9faW5wdXRcIlxuICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICAgIGF1aS1pbnB1dFxuICAgICAgW3ZhbHVlXT1cImdldElucHV0VmFsdWUoKVwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cImdldFBsYWNlaG9sZGVyKClcIlxuICAgICAgW3JlYWRvbmx5XT1cImlucHV0UmVhZG9ubHlcIlxuICAgICAgKGlucHV0KT1cIm9uSW5wdXQoJGV2ZW50KVwiXG4gICAgICAoYmx1cik9XCJjbG9zZU9wdGlvbigpXCJcbiAgICAgIChrZXlkb3duKT1cIm9uS2V5RG93bigkZXZlbnQpXCJcbiAgICAvPlxuICAgIDxzcGFuXG4gICAgICBhdWlJbnB1dFN1ZmZpeFxuICAgICAgY2xhc3M9XCJhdWktdHJlZS1zZWxlY3RfX2ljb24tY29udGFpbmVyXCJcbiAgICA+XG4gICAgICA8YXVpLWljb25cbiAgICAgICAgY2xhc3M9XCJhdWktdHJlZS1zZWxlY3RfX2luZGljYXRvclwiXG4gICAgICAgIFtpY29uXT1cImxvYWRpbmcgPyAnc3Bpbm5lcicgOiAnY2FyZXRfZG93bl9zJ1wiXG4gICAgICA+PC9hdWktaWNvbj5cbiAgICAgIDxhdWktaWNvblxuICAgICAgICBjbGFzcz1cImF1aS10cmVlLXNlbGVjdF9fY2xlYXJcIlxuICAgICAgICBpY29uPVwieG1hcmtfc21hbGxcIlxuICAgICAgICAoY2xpY2spPVwiY2xlYXJWYWx1ZSgkZXZlbnQpXCJcbiAgICAgID48L2F1aS1pY29uPlxuICAgIDwvc3Bhbj5cbiAgPC9hdWktaW5wdXQtZ3JvdXA+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZVJlZj5cbiAgPGRpdlxuICAgIGNsYXNzPVwiYXVpLXRyZWUtbm9kZS1jb250YWluZXJcIlxuICAgIFtzdHlsZS5taW5XaWR0aF09XCJjb250YWluZXJXaWR0aFwiXG4gICAgKG1vdXNlZG93bik9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKVwiXG4gID5cbiAgICA8ZGl2XG4gICAgICAjbm9kZUxpc3RSZWZcbiAgICAgIGNsYXNzPVwiYXVpLXRyZWUtbm9kZS1jb250YWluZXJfX2NvbnRlbnRcIlxuICAgID5cbiAgICAgIDxhdWktdHJlZS1ub2RlXG4gICAgICAgICpuZ0Zvcj1cImxldCBkYXRhIG9mIG5vZGVzRGF0YTsgdHJhY2tCeTogdHJhY2tCeUxhYmVsXCJcbiAgICAgICAgW25vZGVEYXRhXT1cImRhdGFcIlxuICAgICAgICBbbGVhZk9ubHldPVwibGVhZk9ubHlcIlxuICAgICAgPjwvYXVpLXRyZWUtbm9kZT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cIiFnZXRWaXNpYmxlTm9kZUNvdW50KClcIlxuICAgICAgY2xhc3M9XCJhdWktdHJlZS1ub2RlLWNvbnRhaW5lcl9fcGxhY2Vob2xkZXJcIlxuICAgID5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImF1aS10cmVlLW5vZGUtcGxhY2Vob2xkZXJcIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiIsIjxkaXZcbiAgW2hpZGRlbl09XCIhdmlzaWJsZVwiXG4gIGNsYXNzPVwiYXVpLXRyZWUtbm9kZVwiXG4gIFtjbGFzcy5pc0Rpc2FibGVkXT1cIm5vZGVEYXRhLmRpc2FibGVkXCJcbiAgW2NsYXNzLmlzU2VsZWN0ZWRdPVwic2VsZWN0ZWRcIlxuICBbYXR0ci5kYXRhLXZhbHVlXT1cIm5vZGVEYXRhLnZhbHVlXCJcbj5cbiAgPGRpdlxuICAgIGNsYXNzPVwiYXVpLXRyZWUtbm9kZV9fY29udGVudFwiXG4gICAgW2NsYXNzLmlzTGVmdE9ubHldPVwibGVhZk9ubHkgJiYgIWlzTGVhZiAmJiAhbm9kZURhdGEuZGlzYWJsZWRcIlxuICA+XG4gICAgPGF1aS1pY29uXG4gICAgICAqbmdJZj1cIm5vZGVEYXRhLmxvYWRpbmdcIlxuICAgICAgY2xhc3M9XCJhdWktdHJlZS1ub2RlX19sb2FkaW5nXCJcbiAgICAgIG1hcmdpbj1cImxlZnRcIlxuICAgICAgc2l6ZT1cIjE2XCJcbiAgICAgIFtpY29uXT1cIidzcGlubmVyJ1wiXG4gICAgPjwvYXVpLWljb24+XG4gICAgPGF1aS1pY29uXG4gICAgICAqbmdJZj1cIm5vZGVEYXRhLmNoaWxkcmVuICYmICFub2RlRGF0YS5sb2FkaW5nXCJcbiAgICAgIGNsYXNzPVwiYXVpLXRyZWUtbm9kZV9faW5kaWNhdG9yXCJcbiAgICAgIG1hcmdpbj1cImxlZnRcIlxuICAgICAgc2l6ZT1cIjE2XCJcbiAgICAgIFtpY29uXT1cIm5vZGVEYXRhLmV4cGFuZGVkID8gJ2FuZ2xlX2Rvd24nIDogJ2FuZ2xlX3JpZ2h0J1wiXG4gICAgICAoY2xpY2spPVwic3dpdGNoRXhwYW5kZWQoKVwiXG4gICAgPjwvYXVpLWljb24+XG4gICAgPHNwYW5cbiAgICAgICN0aXRsZVJlZlxuICAgICAgY2xhc3M9XCJhdWktdHJlZS1ub2RlX190aXRsZVwiXG4gICAgICBbY2xhc3MuaXNEaXNhYmxlZF09XCJub2RlRGF0YS5kaXNhYmxlZCB8fCBub2RlRGF0YS5sb2FkaW5nXCJcbiAgICAgIFtjbGFzcy5pc1NlbGVjdGVkXT1cInNlbGVjdGVkXCJcbiAgICAgIFtjbGFzcy51bnNlbGVjdGFibGVdPVwibGVhZk9ubHkgJiYgIWlzTGVhZlwiXG4gICAgICAoY2xpY2spPVwib25DbGljaygpXCJcbiAgICA+XG4gICAgICA8YXVpLWljb25cbiAgICAgICAgKm5nSWY9XCJub2RlRGF0YS5pY29uXCJcbiAgICAgICAgbWFyZ2luPVwicmlnaHRcIlxuICAgICAgICBbaWNvbl09XCJnZXRJY29uKClcIlxuICAgICAgPjwvYXVpLWljb24+XG4gICAgICB7eyBub2RlRGF0YS5sYWJlbCB9fVxuICAgIDwvc3Bhbj5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICAqbmdJZj1cIm5vZGVEYXRhLmNoaWxkcmVuXCJcbiAgICBbaGlkZGVuXT1cIiFub2RlRGF0YS5leHBhbmRlZFwiXG4gICAgY2xhc3M9XCJhdWktdHJlZS1ub2RlX19jaGlsZHJlblwiXG4gID5cbiAgICA8YXVpLXRyZWUtbm9kZVxuICAgICAgI3RyZWVOb2Rlc1xuICAgICAgKm5nRm9yPVwibGV0IGRhdGEgb2Ygbm9kZURhdGEuY2hpbGRyZW47IHRyYWNrQnk6IHRyYWNrQnlMYWJlbFwiXG4gICAgICBbbm9kZURhdGFdPVwiZGF0YVwiXG4gICAgICBbbGVhZk9ubHldPVwibGVhZk9ubHlcIlxuICAgID48L2F1aS10cmVlLW5vZGU+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,34 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { IconModule } from '../icon';
4
+ import { InputModule } from '../input';
5
+ import { TooltipModule } from '../tooltip';
6
+ import { TreeNodePlaceholderComponent } from './tree-node-placeholder.component';
7
+ import { TreeNodeComponent, TreeSelectComponent, } from './tree-select.component';
8
+ import * as i0 from "@angular/core";
9
+ export class TreeSelectModule {
10
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: TreeSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.4", ngImport: i0, type: TreeSelectModule, declarations: [TreeSelectComponent,
12
+ TreeNodeComponent,
13
+ TreeNodePlaceholderComponent], imports: [CommonModule, TooltipModule, IconModule, InputModule], exports: [TreeSelectComponent,
14
+ TreeNodeComponent,
15
+ TreeNodePlaceholderComponent] });
16
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: TreeSelectModule, imports: [CommonModule, TooltipModule, IconModule, InputModule] });
17
+ }
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: TreeSelectModule, decorators: [{
19
+ type: NgModule,
20
+ args: [{
21
+ imports: [CommonModule, TooltipModule, IconModule, InputModule],
22
+ declarations: [
23
+ TreeSelectComponent,
24
+ TreeNodeComponent,
25
+ TreeNodePlaceholderComponent,
26
+ ],
27
+ exports: [
28
+ TreeSelectComponent,
29
+ TreeNodeComponent,
30
+ TreeNodePlaceholderComponent,
31
+ ],
32
+ }]
33
+ }] });
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1zZWxlY3QubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3RyZWUtc2VsZWN0L3RyZWUtc2VsZWN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDdkMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUUzQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNqRixPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLG1CQUFtQixHQUNwQixNQUFNLHlCQUF5QixDQUFDOztBQWVqQyxNQUFNLE9BQU8sZ0JBQWdCO3VHQUFoQixnQkFBZ0I7d0dBQWhCLGdCQUFnQixpQkFWekIsbUJBQW1CO1lBQ25CLGlCQUFpQjtZQUNqQiw0QkFBNEIsYUFKcEIsWUFBWSxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsV0FBVyxhQU81RCxtQkFBbUI7WUFDbkIsaUJBQWlCO1lBQ2pCLDRCQUE0Qjt3R0FHbkIsZ0JBQWdCLFlBWmpCLFlBQVksRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLFdBQVc7OzJGQVluRCxnQkFBZ0I7a0JBYjVCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsV0FBVyxDQUFDO29CQUMvRCxZQUFZLEVBQUU7d0JBQ1osbUJBQW1CO3dCQUNuQixpQkFBaUI7d0JBQ2pCLDRCQUE0QjtxQkFDN0I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG1CQUFtQjt3QkFDbkIsaUJBQWlCO3dCQUNqQiw0QkFBNEI7cUJBQzdCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEljb25Nb2R1bGUgfSBmcm9tICcuLi9pY29uJztcbmltcG9ydCB7IElucHV0TW9kdWxlIH0gZnJvbSAnLi4vaW5wdXQnO1xuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gJy4uL3Rvb2x0aXAnO1xuXG5pbXBvcnQgeyBUcmVlTm9kZVBsYWNlaG9sZGVyQ29tcG9uZW50IH0gZnJvbSAnLi90cmVlLW5vZGUtcGxhY2Vob2xkZXIuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIFRyZWVOb2RlQ29tcG9uZW50LFxuICBUcmVlU2VsZWN0Q29tcG9uZW50LFxufSBmcm9tICcuL3RyZWUtc2VsZWN0LmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRvb2x0aXBNb2R1bGUsIEljb25Nb2R1bGUsIElucHV0TW9kdWxlXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgVHJlZVNlbGVjdENvbXBvbmVudCxcbiAgICBUcmVlTm9kZUNvbXBvbmVudCxcbiAgICBUcmVlTm9kZVBsYWNlaG9sZGVyQ29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgVHJlZVNlbGVjdENvbXBvbmVudCxcbiAgICBUcmVlTm9kZUNvbXBvbmVudCxcbiAgICBUcmVlTm9kZVBsYWNlaG9sZGVyQ29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUcmVlU2VsZWN0TW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,8 @@
1
+ export const ComponentSize = {
2
+ Large: 'large',
3
+ Medium: 'medium',
4
+ Small: 'small',
5
+ Mini: 'mini',
6
+ Empty: '',
7
+ };
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHO0lBQzNCLEtBQUssRUFBRSxPQUFPO0lBQ2QsTUFBTSxFQUFFLFFBQVE7SUFDaEIsS0FBSyxFQUFFLE9BQU87SUFDZCxJQUFJLEVBQUUsTUFBTTtJQUlaLEtBQUssRUFBRSxFQUFFO0NBQ0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFZhbHVlT2Y8VD4gPSBUW2tleW9mIFRdO1xuXG5leHBvcnQgY29uc3QgQ29tcG9uZW50U2l6ZSA9IHtcbiAgTGFyZ2U6ICdsYXJnZScsXG4gIE1lZGl1bTogJ21lZGl1bScsXG4gIFNtYWxsOiAnc21hbGwnLFxuICBNaW5pOiAnbWluaScsXG4gIC8qKlxuICAgKiByZXByZXNlbnRzIGRlZmF1bHQgaW50ZXJuYWxseSwgQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvdnNjb2RlLW5nLWxhbmd1YWdlLXNlcnZpY2UvaXNzdWVzLzExNDdcbiAgICovXG4gIEVtcHR5OiAnJyxcbn0gYXMgY29uc3Q7XG5cbmV4cG9ydCB0eXBlIENvbXBvbmVudFNpemUgPSBWYWx1ZU9mPHR5cGVvZiBDb21wb25lbnRTaXplPjtcbiJdfQ==
@@ -0,0 +1,44 @@
1
+ export class Bem {
2
+ namespace;
3
+ constructor(namespace) {
4
+ this.namespace = namespace;
5
+ }
6
+ block(...modifiers) {
7
+ const activatedModifiers = getActivatedModifiers(modifiers);
8
+ if (activatedModifiers.length > 0) {
9
+ return `${this.namespace} ${activatedModifiers
10
+ .map(modifier => this.namespace + '--' + modifier)
11
+ .join(' ')}`;
12
+ }
13
+ return this.namespace;
14
+ }
15
+ modifier(name) {
16
+ return `${this.namespace}--${name}`;
17
+ }
18
+ element(name, ...modifiers) {
19
+ const activatedModifiers = getActivatedModifiers(modifiers);
20
+ if (activatedModifiers.length > 0) {
21
+ return `${this.namespace}__${name} ${activatedModifiers
22
+ .map(modifier => this.namespace + '__' + name + '--' + modifier)
23
+ .join(' ')}`;
24
+ }
25
+ return `${this.namespace}__${name}`;
26
+ }
27
+ }
28
+ function getActivatedModifiers(modifiers) {
29
+ return modifiers.reduce((acc, modifier) => {
30
+ if (!modifier) {
31
+ return acc;
32
+ }
33
+ return acc.concat(typeof modifier === 'string'
34
+ ? [modifier]
35
+ : getActivatedModifiersFromObject(modifier));
36
+ }, []);
37
+ }
38
+ function getActivatedModifiersFromObject(modifiers) {
39
+ return Object.keys(modifiers).filter(key => modifiers[key]);
40
+ }
41
+ export function buildBem(namespace) {
42
+ return new Bem(namespace);
43
+ }
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL2JlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxNQUFNLE9BQU8sR0FBRztJQUNlO0lBQTdCLFlBQTZCLFNBQWlCO1FBQWpCLGNBQVMsR0FBVCxTQUFTLENBQVE7SUFBRyxDQUFDO0lBRWxELEtBQUssQ0FBQyxHQUFHLFNBQXNEO1FBQzdELE1BQU0sa0JBQWtCLEdBQUcscUJBQXFCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDNUQsSUFBSSxrQkFBa0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ2pDLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxJQUFJLGtCQUFrQjtpQkFDM0MsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLEdBQUcsUUFBUSxDQUFDO2lCQUNqRCxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztTQUNoQjtRQUNELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQsUUFBUSxDQUFDLElBQVk7UUFDbkIsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLEtBQUssSUFBSSxFQUFFLENBQUM7SUFDdEMsQ0FBQztJQUVELE9BQU8sQ0FDTCxJQUFZLEVBQ1osR0FBRyxTQUEyRDtRQUU5RCxNQUFNLGtCQUFrQixHQUFHLHFCQUFxQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRTVELElBQUksa0JBQWtCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNqQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsS0FBSyxJQUFJLElBQUksa0JBQWtCO2lCQUNwRCxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksR0FBRyxJQUFJLEdBQUcsSUFBSSxHQUFHLFFBQVEsQ0FBQztpQkFDL0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7U0FDaEI7UUFFRCxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsS0FBSyxJQUFJLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0NBQ0Y7QUFFRCxTQUFTLHFCQUFxQixDQUM1QixTQUEyRDtJQUUzRCxPQUFPLFNBQVMsQ0FBQyxNQUFNLENBQVcsQ0FBQyxHQUFHLEVBQUUsUUFBUSxFQUFFLEVBQUU7UUFDbEQsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNiLE9BQU8sR0FBRyxDQUFDO1NBQ1o7UUFDRCxPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQ2YsT0FBTyxRQUFRLEtBQUssUUFBUTtZQUMxQixDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7WUFDWixDQUFDLENBQUMsK0JBQStCLENBQUMsUUFBUSxDQUFDLENBQzlDLENBQUM7SUFDSixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDVCxDQUFDO0FBRUQsU0FBUywrQkFBK0IsQ0FBQyxTQUV4QztJQUNDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztBQUM5RCxDQUFDO0FBRUQsTUFBTSxVQUFVLFFBQVEsQ0FBQyxTQUFpQjtJQUN4QyxPQUFPLElBQUksR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQzVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBFeHBlcmltZW50YWwgYmVtIGNsYXNzbmFtZSBoZWxwZXJcbmV4cG9ydCBjbGFzcyBCZW0ge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IG5hbWVzcGFjZTogc3RyaW5nKSB7fVxuXG4gIGJsb2NrKC4uLm1vZGlmaWVyczogQXJyYXk8eyBbbmFtZTogc3RyaW5nXTogYm9vbGVhbiB9IHwgc3RyaW5nPikge1xuICAgIGNvbnN0IGFjdGl2YXRlZE1vZGlmaWVycyA9IGdldEFjdGl2YXRlZE1vZGlmaWVycyhtb2RpZmllcnMpO1xuICAgIGlmIChhY3RpdmF0ZWRNb2RpZmllcnMubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIGAke3RoaXMubmFtZXNwYWNlfSAke2FjdGl2YXRlZE1vZGlmaWVyc1xuICAgICAgICAubWFwKG1vZGlmaWVyID0+IHRoaXMubmFtZXNwYWNlICsgJy0tJyArIG1vZGlmaWVyKVxuICAgICAgICAuam9pbignICcpfWA7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLm5hbWVzcGFjZTtcbiAgfVxuXG4gIG1vZGlmaWVyKG5hbWU6IHN0cmluZykge1xuICAgIHJldHVybiBgJHt0aGlzLm5hbWVzcGFjZX0tLSR7bmFtZX1gO1xuICB9XG5cbiAgZWxlbWVudChcbiAgICBuYW1lOiBzdHJpbmcsXG4gICAgLi4ubW9kaWZpZXJzOiBBcnJheTx7IFtuYW1lOiBzdHJpbmddOiBib29sZWFuIHwgJycgfSB8IHN0cmluZz5cbiAgKSB7XG4gICAgY29uc3QgYWN0aXZhdGVkTW9kaWZpZXJzID0gZ2V0QWN0aXZhdGVkTW9kaWZpZXJzKG1vZGlmaWVycyk7XG5cbiAgICBpZiAoYWN0aXZhdGVkTW9kaWZpZXJzLmxlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiBgJHt0aGlzLm5hbWVzcGFjZX1fXyR7bmFtZX0gJHthY3RpdmF0ZWRNb2RpZmllcnNcbiAgICAgICAgLm1hcChtb2RpZmllciA9PiB0aGlzLm5hbWVzcGFjZSArICdfXycgKyBuYW1lICsgJy0tJyArIG1vZGlmaWVyKVxuICAgICAgICAuam9pbignICcpfWA7XG4gICAgfVxuXG4gICAgcmV0dXJuIGAke3RoaXMubmFtZXNwYWNlfV9fJHtuYW1lfWA7XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0QWN0aXZhdGVkTW9kaWZpZXJzKFxuICBtb2RpZmllcnM6IEFycmF5PHsgW25hbWU6IHN0cmluZ106IGJvb2xlYW4gfCAnJyB9IHwgc3RyaW5nPixcbikge1xuICByZXR1cm4gbW9kaWZpZXJzLnJlZHVjZTxzdHJpbmdbXT4oKGFjYywgbW9kaWZpZXIpID0+IHtcbiAgICBpZiAoIW1vZGlmaWVyKSB7XG4gICAgICByZXR1cm4gYWNjO1xuICAgIH1cbiAgICByZXR1cm4gYWNjLmNvbmNhdChcbiAgICAgIHR5cGVvZiBtb2RpZmllciA9PT0gJ3N0cmluZydcbiAgICAgICAgPyBbbW9kaWZpZXJdXG4gICAgICAgIDogZ2V0QWN0aXZhdGVkTW9kaWZpZXJzRnJvbU9iamVjdChtb2RpZmllciksXG4gICAgKTtcbiAgfSwgW10pO1xufVxuXG5mdW5jdGlvbiBnZXRBY3RpdmF0ZWRNb2RpZmllcnNGcm9tT2JqZWN0KG1vZGlmaWVyczoge1xuICBbbmFtZTogc3RyaW5nXTogYm9vbGVhbiB8ICcnO1xufSkge1xuICByZXR1cm4gT2JqZWN0LmtleXMobW9kaWZpZXJzKS5maWx0ZXIoa2V5ID0+IG1vZGlmaWVyc1trZXldKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkQmVtKG5hbWVzcGFjZTogc3RyaW5nKSB7XG4gIHJldHVybiBuZXcgQmVtKG5hbWVzcGFjZSk7XG59XG4iXX0=
@@ -0,0 +1,13 @@
1
+ export function coerceString(val) {
2
+ return val == null ? '' : val?.toString() ?? '';
3
+ }
4
+ export function coerceAttrBoolean(val) {
5
+ return val === '' ? true : !!val;
6
+ }
7
+ export function coerceNumber(val, fallbackValue = 0) {
8
+ return _isNumberValue(val) ? Number(val) : fallbackValue;
9
+ }
10
+ export function _isNumberValue(value) {
11
+ return !isNaN(parseFloat(value)) && !isNaN(Number(value));
12
+ }
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29lcmNpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvY29lcmNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLFlBQVksQ0FBQyxHQUFRO0lBRW5DLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO0FBQ2xELENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsR0FBWTtJQUM1QyxPQUFPLEdBQUcsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztBQUNuQyxDQUFDO0FBRUQsTUFBTSxVQUFVLFlBQVksQ0FBQyxHQUFZLEVBQUUsYUFBYSxHQUFHLENBQUM7SUFDMUQsT0FBTyxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDO0FBQzNELENBQUM7QUFFRCxNQUFNLFVBQVUsY0FBYyxDQUFDLEtBQWM7SUFJM0MsT0FBTyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBZSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztBQUN0RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGNvZXJjZVN0cmluZyh2YWw6IGFueSk6IHN0cmluZyB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5zYWZlLWNhbGxcbiAgcmV0dXJuIHZhbCA9PSBudWxsID8gJycgOiB2YWw/LnRvU3RyaW5nKCkgPz8gJyc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb2VyY2VBdHRyQm9vbGVhbih2YWw6IHVua25vd24pOiBib29sZWFuIHtcbiAgcmV0dXJuIHZhbCA9PT0gJycgPyB0cnVlIDogISF2YWw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb2VyY2VOdW1iZXIodmFsOiB1bmtub3duLCBmYWxsYmFja1ZhbHVlID0gMCk6IG51bWJlciB7XG4gIHJldHVybiBfaXNOdW1iZXJWYWx1ZSh2YWwpID8gTnVtYmVyKHZhbCkgOiBmYWxsYmFja1ZhbHVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gX2lzTnVtYmVyVmFsdWUodmFsdWU6IHVua25vd24pOiBib29sZWFuIHtcbiAgLy8gcGFyc2VGbG9hdCh2YWx1ZSkgaGFuZGxlcyBtb3N0IG9mIHRoZSBjYXNlcyB3ZSdyZSBpbnRlcmVzdGVkIGluIChpdCB0cmVhdHMgbnVsbCwgZW1wdHkgc3RyaW5nLFxuICAvLyBhbmQgb3RoZXIgbm9uLW51bWJlciB2YWx1ZXMgYXMgTmFOLCB3aGVyZSBOdW1iZXIganVzdCB1c2VzIDApIGJ1dCBpdCBjb25zaWRlcnMgdGhlIHN0cmluZ1xuICAvLyAnMTIzaGVsbG8nIHRvIGJlIGEgdmFsaWQgbnVtYmVyLiBUaGVyZWZvcmUgd2UgYWxzbyBjaGVjayBpZiBOdW1iZXIodmFsdWUpIGlzIE5hTi5cbiAgcmV0dXJuICFpc05hTihwYXJzZUZsb2F0KHZhbHVlIGFzIHN0cmluZykpICYmICFpc05hTihOdW1iZXIodmFsdWUpKTtcbn1cbiJdfQ==