@alauda/ui 6.5.9-beta.26 → 6.5.9-beta.27

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