@genexus/genexus-ide-ui 0.0.63 → 0.0.65

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 (541) hide show
  1. package/dist/cjs/ch-accordion.cjs.entry.js +1 -1
  2. package/dist/cjs/ch-action-group_2.cjs.entry.js +1 -1
  3. package/dist/cjs/ch-alert.cjs.entry.js +1 -1
  4. package/dist/cjs/{ch-checkbox_4.cjs.entry.js → ch-checkbox_3.cjs.entry.js} +39 -615
  5. package/dist/cjs/ch-drag-bar.cjs.entry.js +1 -1
  6. package/dist/cjs/ch-dropdown-item-separator.cjs.entry.js +1 -1
  7. package/dist/cjs/ch-dropdown-item.cjs.entry.js +1 -1
  8. package/dist/cjs/ch-dropdown.cjs.entry.js +1 -1
  9. package/dist/cjs/ch-form-checkbox.cjs.entry.js +1 -1
  10. package/dist/cjs/ch-grid-action-refresh_7.cjs.entry.js +1 -1
  11. package/dist/cjs/ch-grid-column-display.cjs.entry.js +1 -1
  12. package/dist/cjs/ch-grid-infinite-scroll.cjs.entry.js +1 -1
  13. package/dist/cjs/ch-grid-row-actions.cjs.entry.js +1 -1
  14. package/dist/cjs/ch-grid-rowset-empty.cjs.entry.js +1 -1
  15. package/dist/cjs/ch-grid-rowset-legend.cjs.entry.js +1 -1
  16. package/dist/cjs/ch-grid-virtual-scroller.cjs.entry.js +1 -1
  17. package/dist/cjs/ch-grid_8.cjs.entry.js +2 -2
  18. package/dist/cjs/ch-icon.cjs.entry.js +116 -0
  19. package/dist/cjs/ch-intersection-observer.cjs.entry.js +1 -1
  20. package/dist/cjs/ch-next-data-modeling-render.cjs.entry.js +1 -1
  21. package/dist/cjs/ch-next-data-modeling_2.cjs.entry.js +1 -1
  22. package/dist/cjs/ch-next-progress-bar.cjs.entry.js +1 -1
  23. package/dist/cjs/ch-notifications-item.cjs.entry.js +1 -1
  24. package/dist/cjs/ch-notifications.cjs.entry.js +1 -1
  25. package/dist/cjs/ch-qr.cjs.entry.js +1 -1
  26. package/dist/cjs/ch-select-option.cjs.entry.js +1 -1
  27. package/dist/cjs/ch-select.cjs.entry.js +2 -2
  28. package/dist/cjs/ch-sidebar-menu-list-item.cjs.entry.js +1 -1
  29. package/dist/cjs/ch-sidebar-menu-list.cjs.entry.js +1 -1
  30. package/dist/cjs/ch-sidebar-menu.cjs.entry.js +2 -2
  31. package/dist/cjs/ch-step-list-item.cjs.entry.js +1 -1
  32. package/dist/cjs/ch-step-list.cjs.entry.js +1 -1
  33. package/dist/cjs/ch-style.cjs.entry.js +1 -1
  34. package/dist/cjs/ch-suggest_4.cjs.entry.js +3 -3
  35. package/dist/cjs/ch-test-action-group.cjs.entry.js +1 -1
  36. package/dist/cjs/ch-test-dropdown.cjs.entry.js +1 -1
  37. package/dist/cjs/ch-test-suggest.cjs.entry.js +1 -1
  38. package/dist/cjs/ch-textblock.cjs.entry.js +1 -1
  39. package/dist/cjs/ch-timer.cjs.entry.js +1 -1
  40. package/dist/cjs/ch-tooltip.cjs.entry.js +1 -1
  41. package/dist/cjs/ch-tree-item.cjs.entry.js +1 -1
  42. package/dist/cjs/ch-tree-view-render-wrapper.cjs.entry.js +6 -3
  43. package/dist/cjs/ch-tree-view-render_2.cjs.entry.js +822 -0
  44. package/dist/cjs/ch-tree.cjs.entry.js +1 -1
  45. package/dist/cjs/ch-window_2.cjs.entry.js +1 -1
  46. package/dist/cjs/{common-5d08e273.js → common-2100f35f.js} +1 -1
  47. package/dist/cjs/{config-c652329b.js → config-8cf5ba3b.js} +5 -1
  48. package/dist/cjs/{form-c75c9ac0.js → form-437d6a38.js} +1 -1
  49. package/dist/cjs/genexus-ide-ui.cjs.js +2 -2
  50. package/dist/cjs/gx-grid-chameleon.cjs.entry.js +1 -1
  51. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +4 -4
  52. package/dist/cjs/gx-ide-container_4.cjs.entry.js +7 -3
  53. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +2 -2
  54. package/dist/cjs/gx-ide-directory-selector.cjs.entry.js +24 -5
  55. package/dist/cjs/gx-ide-entity-selector_2.cjs.entry.js +2 -2
  56. package/dist/cjs/gx-ide-file-selector.cjs.entry.js +1 -1
  57. package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js +90 -44
  58. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +124 -32
  59. package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js +1 -1
  60. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +3 -3
  61. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +3 -3
  62. package/dist/cjs/gx-ide-new-object.cjs.entry.js +2 -2
  63. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +3 -3
  64. package/dist/cjs/gx-ide-references.cjs.entry.js +3 -3
  65. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +3 -3
  66. package/dist/cjs/{gx-ide-status-buttons_2.cjs.entry.js → gx-ide-status-buttons.cjs.entry.js} +1 -73
  67. package/dist/cjs/gx-ide-switch-panel.cjs.entry.js +1 -1
  68. package/dist/cjs/gx-ide-switcher.cjs.entry.js +1 -1
  69. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +3 -3
  70. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +2 -2
  71. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +2 -2
  72. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +2 -2
  73. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +3 -3
  74. package/dist/cjs/gx-ide-template.cjs.entry.js +2 -2
  75. package/dist/cjs/gx-ide-test.cjs.entry.js +1 -1
  76. package/dist/cjs/gx-ide-top-bar.cjs.entry.js +1 -1
  77. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +3 -3
  78. package/dist/cjs/gxg-accordion-item.cjs.entry.js +2 -2
  79. package/dist/cjs/gxg-accordion.cjs.entry.js +1 -1
  80. package/dist/cjs/gxg-alert.cjs.entry.js +1 -1
  81. package/dist/cjs/gxg-box.cjs.entry.js +1 -1
  82. package/dist/cjs/gxg-breadcrumb.cjs.entry.js +1 -1
  83. package/dist/cjs/gxg-breadcrumbs.cjs.entry.js +1 -1
  84. package/dist/cjs/{gxg-button-group.cjs.entry.js → gxg-button-group_2.cjs.entry.js} +108 -3
  85. package/dist/cjs/{gxg-button.cjs.entry.js → gxg-button_2.cjs.entry.js} +65 -2
  86. package/dist/cjs/gxg-card.cjs.entry.js +36 -3
  87. package/dist/cjs/gxg-color-picker.cjs.entry.js +1 -1
  88. package/dist/cjs/gxg-column.cjs.entry.js +1 -1
  89. package/dist/cjs/gxg-columns.cjs.entry.js +1 -1
  90. package/dist/cjs/gxg-combo-box_2.cjs.entry.js +3 -3
  91. package/dist/cjs/gxg-container.cjs.entry.js +1 -1
  92. package/dist/cjs/gxg-contextual-menu-item.cjs.entry.js +1 -1
  93. package/dist/cjs/gxg-contextual-menu-submenu.cjs.entry.js +1 -1
  94. package/dist/cjs/gxg-contextual-menu.cjs.entry.js +1 -1
  95. package/dist/cjs/gxg-demo.cjs.entry.js +1 -1
  96. package/dist/cjs/gxg-drag-box.cjs.entry.js +1 -1
  97. package/dist/cjs/gxg-drag-container.cjs.entry.js +1 -1
  98. package/dist/cjs/gxg-drop-down.cjs.entry.js +2 -2
  99. package/dist/cjs/gxg-filter-item.cjs.entry.js +1 -1
  100. package/dist/cjs/gxg-filter.cjs.entry.js +1 -1
  101. package/dist/cjs/gxg-form-checkbox-group.cjs.entry.js +2 -2
  102. package/dist/cjs/gxg-form-checkbox.cjs.entry.js +3 -3
  103. package/dist/cjs/gxg-form-message.cjs.entry.js +2 -2
  104. package/dist/cjs/gxg-form-radio-group.cjs.entry.js +2 -2
  105. package/dist/cjs/gxg-form-radio.cjs.entry.js +1 -1
  106. package/dist/cjs/gxg-form-textarea.cjs.entry.js +3 -3
  107. package/dist/cjs/gxg-label_2.cjs.entry.js +2 -2
  108. package/dist/cjs/gxg-list-box_2.cjs.entry.js +4 -4
  109. package/dist/cjs/gxg-loader.cjs.entry.js +1 -1
  110. package/dist/cjs/gxg-menu-item.cjs.entry.js +1 -1
  111. package/dist/cjs/gxg-menu-slim-item.cjs.entry.js +1 -1
  112. package/dist/cjs/gxg-menu-slim-list.cjs.entry.js +1 -1
  113. package/dist/cjs/gxg-menu-slim.cjs.entry.js +1 -1
  114. package/dist/cjs/gxg-menu.cjs.entry.js +1 -1
  115. package/dist/cjs/gxg-modal.cjs.entry.js +2 -2
  116. package/dist/cjs/gxg-more-info.cjs.entry.js +1 -1
  117. package/dist/cjs/gxg-option-v2.cjs.entry.js +1 -1
  118. package/dist/cjs/gxg-option.cjs.entry.js +1 -1
  119. package/dist/cjs/gxg-options-item.cjs.entry.js +1 -1
  120. package/dist/cjs/gxg-options.cjs.entry.js +2 -2
  121. package/dist/cjs/gxg-paginator.cjs.entry.js +1 -1
  122. package/dist/cjs/gxg-pill.cjs.entry.js +12 -4
  123. package/dist/cjs/gxg-pills.cjs.entry.js +4 -3
  124. package/dist/cjs/gxg-progress-bar.cjs.entry.js +1 -1
  125. package/dist/cjs/gxg-scroll.cjs.entry.js +1 -1
  126. package/dist/cjs/gxg-select-v2.cjs.entry.js +2 -2
  127. package/dist/cjs/gxg-select.cjs.entry.js +3 -3
  128. package/dist/cjs/gxg-separator.cjs.entry.js +1 -1
  129. package/dist/cjs/gxg-slider.cjs.entry.js +1 -1
  130. package/dist/cjs/gxg-spacer-layout.cjs.entry.js +1 -1
  131. package/dist/cjs/gxg-spacer-one.cjs.entry.js +1 -1
  132. package/dist/cjs/gxg-split.cjs.entry.js +1 -1
  133. package/dist/cjs/gxg-splitter.cjs.entry.js +1 -1
  134. package/dist/cjs/gxg-stack.cjs.entry.js +1 -1
  135. package/dist/cjs/gxg-stepper.cjs.entry.js +1 -1
  136. package/dist/cjs/gxg-tab_4.cjs.entry.js +14 -7
  137. package/dist/cjs/gxg-test.cjs.entry.js +1 -1
  138. package/dist/cjs/gxg-text.cjs.entry.js +8 -4
  139. package/dist/cjs/gxg-title-editable.cjs.entry.js +2 -3
  140. package/dist/cjs/gxg-toggle.cjs.entry.js +1 -1
  141. package/dist/cjs/gxg-toolbar-item.cjs.entry.js +1 -1
  142. package/dist/cjs/gxg-toolbar.cjs.entry.js +1 -1
  143. package/dist/cjs/gxg-tree-grid-divs.cjs.entry.js +1 -1
  144. package/dist/cjs/gxg-tree-item.cjs.entry.js +1 -1
  145. package/dist/cjs/gxg-tree.cjs.entry.js +1 -1
  146. package/dist/cjs/gxg-window.cjs.entry.js +1 -1
  147. package/dist/cjs/{index-3e90909d.js → index-69adec41.js} +1 -1
  148. package/dist/cjs/{index-5a32426a.js → index-f9bb1815.js} +5 -0
  149. package/dist/cjs/loader.cjs.js +2 -2
  150. package/dist/cjs/{render-combo-items-d99a186a.js → render-combo-items-05509216.js} +1 -1
  151. package/dist/cjs/{render-suggest-c623955f.js → render-suggest-a4363c7b.js} +1 -1
  152. package/dist/cjs/{store-0866de9f.js → store-5fad773e.js} +2 -1
  153. package/dist/collection/common/config.js +5 -1
  154. package/dist/collection/components/_helpers/directory-selector/directory-selector.js +28 -4
  155. package/dist/collection/components/_helpers/list-selector/list-selector-item/list-selector-item.js +1 -1
  156. package/dist/collection/components/_helpers/list-selector/list-selector.js +1 -1
  157. package/dist/collection/components/kb-manager-export/gx-ide-assets/kb-manager-export/langs/kb-manager-export.lang.en.json +8 -1
  158. package/dist/collection/components/kb-manager-export/helpers.js +4 -4
  159. package/dist/collection/components/kb-manager-export/kb-manager-export.css +0 -20
  160. package/dist/collection/components/kb-manager-export/kb-manager-export.js +99 -51
  161. package/dist/collection/components/kb-manager-import/gx-ide-assets/kb-manager-import/langs/kb-manager-import.lang.en.json +1 -1
  162. package/dist/collection/components/kb-manager-import/helpers.js +8 -4
  163. package/dist/collection/components/kb-manager-import/kb-manager-import.css +3 -0
  164. package/dist/collection/components/kb-manager-import/kb-manager-import.js +136 -25
  165. package/dist/components/button-group.js +1 -1
  166. package/dist/components/ch-tree-view-render-wrapper.js +5 -2
  167. package/dist/components/config.js +5 -1
  168. package/dist/components/directory-selector.js +25 -5
  169. package/dist/components/form-text.js +6 -1
  170. package/dist/components/gx-ide-kb-manager-export.js +151 -78
  171. package/dist/components/gx-ide-kb-manager-import.js +125 -30
  172. package/dist/components/gxg-card.js +66 -4
  173. package/dist/components/gxg-pill.js +11 -2
  174. package/dist/components/gxg-pills.js +3 -2
  175. package/dist/components/gxg-title-editable.js +1 -151
  176. package/dist/components/icon2.js +1 -0
  177. package/dist/components/ide-loader.js +75 -14
  178. package/dist/components/list-box-item.js +1 -1
  179. package/dist/components/store.js +1 -0
  180. package/dist/components/tab-bar.js +3 -1
  181. package/dist/components/tab-button.js +2 -1
  182. package/dist/components/tab.js +2 -1
  183. package/dist/components/tabs.js +8 -2
  184. package/dist/components/text.js +8 -3
  185. package/dist/components/title-editable.js +152 -0
  186. package/dist/components/tree-view-item.js +41 -26
  187. package/dist/components/tree-view-render.js +81 -18
  188. package/dist/components/tree-view2.js +9 -4
  189. package/dist/esm/ch-accordion.entry.js +1 -1
  190. package/dist/esm/ch-action-group_2.entry.js +1 -1
  191. package/dist/esm/ch-alert.entry.js +1 -1
  192. package/dist/esm/{ch-checkbox_4.entry.js → ch-checkbox_3.entry.js} +40 -615
  193. package/dist/esm/ch-drag-bar.entry.js +1 -1
  194. package/dist/esm/ch-dropdown-item-separator.entry.js +1 -1
  195. package/dist/esm/ch-dropdown-item.entry.js +1 -1
  196. package/dist/esm/ch-dropdown.entry.js +1 -1
  197. package/dist/esm/ch-form-checkbox.entry.js +1 -1
  198. package/dist/esm/ch-grid-action-refresh_7.entry.js +1 -1
  199. package/dist/esm/ch-grid-column-display.entry.js +1 -1
  200. package/dist/esm/ch-grid-infinite-scroll.entry.js +1 -1
  201. package/dist/esm/ch-grid-row-actions.entry.js +1 -1
  202. package/dist/esm/ch-grid-rowset-empty.entry.js +1 -1
  203. package/dist/esm/ch-grid-rowset-legend.entry.js +1 -1
  204. package/dist/esm/ch-grid-virtual-scroller.entry.js +1 -1
  205. package/dist/esm/ch-grid_8.entry.js +2 -2
  206. package/dist/esm/ch-icon.entry.js +112 -0
  207. package/dist/esm/ch-intersection-observer.entry.js +1 -1
  208. package/dist/esm/ch-next-data-modeling-render.entry.js +1 -1
  209. package/dist/esm/ch-next-data-modeling_2.entry.js +1 -1
  210. package/dist/esm/ch-next-progress-bar.entry.js +1 -1
  211. package/dist/esm/ch-notifications-item.entry.js +1 -1
  212. package/dist/esm/ch-notifications.entry.js +1 -1
  213. package/dist/esm/ch-qr.entry.js +1 -1
  214. package/dist/esm/ch-select-option.entry.js +1 -1
  215. package/dist/esm/ch-select.entry.js +2 -2
  216. package/dist/esm/ch-sidebar-menu-list-item.entry.js +1 -1
  217. package/dist/esm/ch-sidebar-menu-list.entry.js +1 -1
  218. package/dist/esm/ch-sidebar-menu.entry.js +2 -2
  219. package/dist/esm/ch-step-list-item.entry.js +1 -1
  220. package/dist/esm/ch-step-list.entry.js +1 -1
  221. package/dist/esm/ch-style.entry.js +1 -1
  222. package/dist/esm/ch-suggest_4.entry.js +3 -3
  223. package/dist/esm/ch-test-action-group.entry.js +1 -1
  224. package/dist/esm/ch-test-dropdown.entry.js +1 -1
  225. package/dist/esm/ch-test-suggest.entry.js +1 -1
  226. package/dist/esm/ch-textblock.entry.js +1 -1
  227. package/dist/esm/ch-timer.entry.js +1 -1
  228. package/dist/esm/ch-tooltip.entry.js +1 -1
  229. package/dist/esm/ch-tree-item.entry.js +1 -1
  230. package/dist/esm/ch-tree-view-render-wrapper.entry.js +6 -3
  231. package/dist/esm/ch-tree-view-render_2.entry.js +817 -0
  232. package/dist/esm/ch-tree.entry.js +1 -1
  233. package/dist/esm/ch-window_2.entry.js +1 -1
  234. package/dist/esm/{common-ec35ec2f.js → common-202491f0.js} +1 -1
  235. package/dist/esm/{config-ee66bdf4.js → config-2fae16a2.js} +5 -1
  236. package/dist/esm/{form-267b92df.js → form-1e8f483d.js} +1 -1
  237. package/dist/esm/genexus-ide-ui.js +3 -3
  238. package/dist/esm/gx-grid-chameleon.entry.js +1 -1
  239. package/dist/esm/gx-ide-bpm-app-declaration.entry.js +4 -4
  240. package/dist/esm/gx-ide-container_4.entry.js +7 -3
  241. package/dist/esm/gx-ide-create-kb-from-server.entry.js +2 -2
  242. package/dist/esm/gx-ide-directory-selector.entry.js +24 -5
  243. package/dist/esm/gx-ide-entity-selector_2.entry.js +2 -2
  244. package/dist/esm/gx-ide-file-selector.entry.js +1 -1
  245. package/dist/esm/gx-ide-kb-manager-export.entry.js +90 -44
  246. package/dist/esm/gx-ide-kb-manager-import.entry.js +124 -32
  247. package/dist/esm/gx-ide-list-selector_2.entry.js +1 -1
  248. package/dist/esm/gx-ide-new-environment.entry.js +3 -3
  249. package/dist/esm/gx-ide-new-kb.entry.js +3 -3
  250. package/dist/esm/gx-ide-new-object.entry.js +2 -2
  251. package/dist/esm/gx-ide-object-selector.entry.js +3 -3
  252. package/dist/esm/gx-ide-references.entry.js +3 -3
  253. package/dist/esm/gx-ide-share-kb.entry.js +3 -3
  254. package/dist/esm/{gx-ide-status-buttons_2.entry.js → gx-ide-status-buttons.entry.js} +2 -73
  255. package/dist/esm/gx-ide-switch-panel.entry.js +1 -1
  256. package/dist/esm/gx-ide-switcher.entry.js +1 -1
  257. package/dist/esm/gx-ide-team-dev-commit.entry.js +3 -3
  258. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +2 -2
  259. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +2 -2
  260. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +2 -2
  261. package/dist/esm/gx-ide-team-dev-update.entry.js +3 -3
  262. package/dist/esm/gx-ide-template.entry.js +2 -2
  263. package/dist/esm/gx-ide-test.entry.js +1 -1
  264. package/dist/esm/gx-ide-top-bar.entry.js +1 -1
  265. package/dist/esm/gx-ide-ww-images.entry.js +3 -3
  266. package/dist/esm/gxg-accordion-item.entry.js +2 -2
  267. package/dist/esm/gxg-accordion.entry.js +1 -1
  268. package/dist/esm/gxg-alert.entry.js +1 -1
  269. package/dist/esm/gxg-box.entry.js +1 -1
  270. package/dist/esm/gxg-breadcrumb.entry.js +1 -1
  271. package/dist/esm/gxg-breadcrumbs.entry.js +1 -1
  272. package/dist/esm/{gxg-button-group.entry.js → gxg-button-group_2.entry.js} +108 -4
  273. package/dist/esm/{gxg-button.entry.js → gxg-button_2.entry.js} +65 -3
  274. package/dist/esm/gxg-card.entry.js +36 -3
  275. package/dist/esm/gxg-color-picker.entry.js +1 -1
  276. package/dist/esm/gxg-column.entry.js +1 -1
  277. package/dist/esm/gxg-columns.entry.js +1 -1
  278. package/dist/esm/gxg-combo-box_2.entry.js +3 -3
  279. package/dist/esm/gxg-container.entry.js +1 -1
  280. package/dist/esm/gxg-contextual-menu-item.entry.js +1 -1
  281. package/dist/esm/gxg-contextual-menu-submenu.entry.js +1 -1
  282. package/dist/esm/gxg-contextual-menu.entry.js +1 -1
  283. package/dist/esm/gxg-demo.entry.js +1 -1
  284. package/dist/esm/gxg-drag-box.entry.js +1 -1
  285. package/dist/esm/gxg-drag-container.entry.js +1 -1
  286. package/dist/esm/gxg-drop-down.entry.js +2 -2
  287. package/dist/esm/gxg-filter-item.entry.js +1 -1
  288. package/dist/esm/gxg-filter.entry.js +1 -1
  289. package/dist/esm/gxg-form-checkbox-group.entry.js +2 -2
  290. package/dist/esm/gxg-form-checkbox.entry.js +3 -3
  291. package/dist/esm/gxg-form-message.entry.js +2 -2
  292. package/dist/esm/gxg-form-radio-group.entry.js +2 -2
  293. package/dist/esm/gxg-form-radio.entry.js +1 -1
  294. package/dist/esm/gxg-form-textarea.entry.js +3 -3
  295. package/dist/esm/gxg-label_2.entry.js +2 -2
  296. package/dist/esm/gxg-list-box_2.entry.js +4 -4
  297. package/dist/esm/gxg-loader.entry.js +1 -1
  298. package/dist/esm/gxg-menu-item.entry.js +1 -1
  299. package/dist/esm/gxg-menu-slim-item.entry.js +1 -1
  300. package/dist/esm/gxg-menu-slim-list.entry.js +1 -1
  301. package/dist/esm/gxg-menu-slim.entry.js +1 -1
  302. package/dist/esm/gxg-menu.entry.js +1 -1
  303. package/dist/esm/gxg-modal.entry.js +2 -2
  304. package/dist/esm/gxg-more-info.entry.js +1 -1
  305. package/dist/esm/gxg-option-v2.entry.js +1 -1
  306. package/dist/esm/gxg-option.entry.js +1 -1
  307. package/dist/esm/gxg-options-item.entry.js +1 -1
  308. package/dist/esm/gxg-options.entry.js +2 -2
  309. package/dist/esm/gxg-paginator.entry.js +1 -1
  310. package/dist/esm/gxg-pill.entry.js +12 -4
  311. package/dist/esm/gxg-pills.entry.js +4 -3
  312. package/dist/esm/gxg-progress-bar.entry.js +1 -1
  313. package/dist/esm/gxg-scroll.entry.js +1 -1
  314. package/dist/esm/gxg-select-v2.entry.js +2 -2
  315. package/dist/esm/gxg-select.entry.js +3 -3
  316. package/dist/esm/gxg-separator.entry.js +1 -1
  317. package/dist/esm/gxg-slider.entry.js +1 -1
  318. package/dist/esm/gxg-spacer-layout.entry.js +1 -1
  319. package/dist/esm/gxg-spacer-one.entry.js +1 -1
  320. package/dist/esm/gxg-split.entry.js +1 -1
  321. package/dist/esm/gxg-splitter.entry.js +1 -1
  322. package/dist/esm/gxg-stack.entry.js +1 -1
  323. package/dist/esm/gxg-stepper.entry.js +1 -1
  324. package/dist/esm/gxg-tab_4.entry.js +14 -7
  325. package/dist/esm/gxg-test.entry.js +1 -1
  326. package/dist/esm/gxg-text.entry.js +8 -4
  327. package/dist/esm/gxg-title-editable.entry.js +2 -3
  328. package/dist/esm/gxg-toggle.entry.js +1 -1
  329. package/dist/esm/gxg-toolbar-item.entry.js +1 -1
  330. package/dist/esm/gxg-toolbar.entry.js +1 -1
  331. package/dist/esm/gxg-tree-grid-divs.entry.js +1 -1
  332. package/dist/esm/gxg-tree-item.entry.js +1 -1
  333. package/dist/esm/gxg-tree.entry.js +1 -1
  334. package/dist/esm/gxg-window.entry.js +1 -1
  335. package/dist/esm/{index-0da01575.js → index-0aa3977d.js} +5 -0
  336. package/dist/esm/{index-ea94e298.js → index-5ae5cf27.js} +1 -1
  337. package/dist/esm/loader.js +3 -3
  338. package/dist/esm/{render-combo-items-faf78e28.js → render-combo-items-ede5de19.js} +1 -1
  339. package/dist/esm/{render-suggest-e44dde1b.js → render-suggest-f3af661b.js} +1 -1
  340. package/dist/esm/{store-c2650ca5.js → store-eca88b9a.js} +2 -1
  341. package/dist/genexus-ide-ui/genexus-ide-ui.css +3 -3
  342. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  343. package/dist/genexus-ide-ui/gx-ide-assets/kb-manager-export/langs/kb-manager-export.lang.en.json +8 -1
  344. package/dist/genexus-ide-ui/gx-ide-assets/kb-manager-import/langs/kb-manager-import.lang.en.json +1 -1
  345. package/dist/genexus-ide-ui/{p-71b14079.entry.js → p-00bb2aa7.entry.js} +1 -1
  346. package/dist/genexus-ide-ui/{p-1fe05a05.entry.js → p-01978a13.entry.js} +1 -1
  347. package/dist/genexus-ide-ui/{p-13177896.entry.js → p-0261c202.entry.js} +1 -1
  348. package/dist/genexus-ide-ui/{p-aacec189.entry.js → p-02c50994.entry.js} +1 -1
  349. package/dist/genexus-ide-ui/{p-73cfc07c.entry.js → p-040e960d.entry.js} +1 -1
  350. package/dist/genexus-ide-ui/p-045ddedf.entry.js +1 -0
  351. package/dist/genexus-ide-ui/{p-cbe42c29.entry.js → p-0495c639.entry.js} +1 -1
  352. package/dist/genexus-ide-ui/{p-b5dc509f.entry.js → p-07c6f7dd.entry.js} +1 -1
  353. package/dist/genexus-ide-ui/p-0906fb46.js +2 -0
  354. package/dist/genexus-ide-ui/{p-1294d220.entry.js → p-0cba56a1.entry.js} +1 -1
  355. package/dist/genexus-ide-ui/{p-0c360621.entry.js → p-0e29d370.entry.js} +1 -1
  356. package/dist/genexus-ide-ui/{p-fec82adb.entry.js → p-0ff8550a.entry.js} +1 -1
  357. package/dist/genexus-ide-ui/{p-eddf8a1e.entry.js → p-10fa87ef.entry.js} +1 -1
  358. package/dist/genexus-ide-ui/{p-9aa2dd17.entry.js → p-112dc730.entry.js} +1 -1
  359. package/dist/genexus-ide-ui/{p-bb7ae451.entry.js → p-128c0527.entry.js} +1 -1
  360. package/dist/genexus-ide-ui/p-13ffa7c0.js +1 -0
  361. package/dist/genexus-ide-ui/{p-db4f2732.entry.js → p-15685d3f.entry.js} +1 -1
  362. package/dist/genexus-ide-ui/{p-5e40990d.entry.js → p-161969f3.entry.js} +1 -1
  363. package/dist/genexus-ide-ui/{p-b9d071f7.entry.js → p-16b0acef.entry.js} +1 -1
  364. package/dist/genexus-ide-ui/{p-fb92083f.entry.js → p-1a8d710a.entry.js} +1 -1
  365. package/dist/genexus-ide-ui/{p-81c9847d.entry.js → p-20751bae.entry.js} +1 -1
  366. package/dist/genexus-ide-ui/{p-0dee851b.entry.js → p-207c378b.entry.js} +1 -1
  367. package/dist/genexus-ide-ui/{p-a48badf0.entry.js → p-21a768d0.entry.js} +1 -1
  368. package/dist/genexus-ide-ui/{p-1dece95c.entry.js → p-231244f2.entry.js} +1 -1
  369. package/dist/genexus-ide-ui/p-232fe7cb.entry.js +1 -0
  370. package/dist/genexus-ide-ui/{p-e7c46bbe.entry.js → p-2422a593.entry.js} +1 -1
  371. package/dist/genexus-ide-ui/p-2447a18f.entry.js +1 -0
  372. package/dist/genexus-ide-ui/{p-283afc3b.entry.js → p-2589e00e.entry.js} +1 -1
  373. package/dist/genexus-ide-ui/{p-3e3cb535.entry.js → p-264b3088.entry.js} +1 -1
  374. package/dist/genexus-ide-ui/p-264f77c4.entry.js +1 -0
  375. package/dist/genexus-ide-ui/{p-c6b514cb.entry.js → p-266539cf.entry.js} +1 -1
  376. package/dist/genexus-ide-ui/{p-bb77cb65.entry.js → p-27d835c0.entry.js} +1 -1
  377. package/dist/genexus-ide-ui/{p-0f1388e1.entry.js → p-2dc875c2.entry.js} +1 -1
  378. package/dist/genexus-ide-ui/{p-f7aa606a.entry.js → p-2ec6d722.entry.js} +1 -1
  379. package/dist/genexus-ide-ui/{p-117498b7.entry.js → p-383f10ab.entry.js} +1 -1
  380. package/dist/genexus-ide-ui/{p-e8e2f4c1.entry.js → p-39bd6c60.entry.js} +1 -1
  381. package/dist/genexus-ide-ui/{p-df7996d5.entry.js → p-39c03652.entry.js} +1 -1
  382. package/dist/genexus-ide-ui/{p-df02f70a.entry.js → p-3dacc147.entry.js} +1 -1
  383. package/dist/genexus-ide-ui/{p-eb328b50.entry.js → p-3fbc7703.entry.js} +1 -1
  384. package/dist/genexus-ide-ui/{p-636d02fa.entry.js → p-3fc20855.entry.js} +1 -1
  385. package/dist/genexus-ide-ui/{p-f8c8eebd.entry.js → p-42f71c47.entry.js} +1 -1
  386. package/dist/genexus-ide-ui/p-43386091.entry.js +1 -0
  387. package/dist/genexus-ide-ui/{p-a2479a2f.entry.js → p-43947003.entry.js} +1 -1
  388. package/dist/genexus-ide-ui/{p-2c17e71d.entry.js → p-439a45c1.entry.js} +1 -1
  389. package/dist/genexus-ide-ui/{p-8243c51d.entry.js → p-46632b39.entry.js} +1 -1
  390. package/dist/genexus-ide-ui/{p-bfb41ce9.js → p-47629213.js} +1 -1
  391. package/dist/genexus-ide-ui/{p-4f02b7bf.entry.js → p-4a756245.entry.js} +1 -1
  392. package/dist/genexus-ide-ui/{p-718759e7.entry.js → p-4ad2bc69.entry.js} +1 -1
  393. package/dist/genexus-ide-ui/{p-45b17fd8.entry.js → p-4ca8f7d3.entry.js} +1 -1
  394. package/dist/genexus-ide-ui/{p-9b93752d.entry.js → p-4cb93e1b.entry.js} +1 -1
  395. package/dist/genexus-ide-ui/{p-123b8351.entry.js → p-4d42f077.entry.js} +1 -1
  396. package/dist/genexus-ide-ui/{p-8a29aa0e.entry.js → p-4d653456.entry.js} +1 -1
  397. package/dist/genexus-ide-ui/{p-984f7626.entry.js → p-4da6f594.entry.js} +1 -1
  398. package/dist/genexus-ide-ui/{p-1fc0c236.entry.js → p-53424a7c.entry.js} +1 -1
  399. package/dist/genexus-ide-ui/{p-11af125f.js → p-551539eb.js} +1 -1
  400. package/dist/genexus-ide-ui/{p-7b63be93.entry.js → p-5624cbd0.entry.js} +1 -1
  401. package/dist/genexus-ide-ui/{p-f69d8c9f.entry.js → p-57972075.entry.js} +1 -1
  402. package/dist/genexus-ide-ui/{p-6b301bbb.entry.js → p-59244df7.entry.js} +1 -1
  403. package/dist/genexus-ide-ui/{p-9dfc4afa.entry.js → p-5babe487.entry.js} +1 -1
  404. package/dist/genexus-ide-ui/{p-5ec25f04.entry.js → p-61b5f2f2.entry.js} +1 -1
  405. package/dist/genexus-ide-ui/{p-d30c5a8e.entry.js → p-6272fb68.entry.js} +1 -1
  406. package/dist/genexus-ide-ui/{p-606d6814.entry.js → p-6811e556.entry.js} +1 -1
  407. package/dist/genexus-ide-ui/{p-34763105.entry.js → p-68626d13.entry.js} +1 -1
  408. package/dist/genexus-ide-ui/p-689ffafd.entry.js +1 -0
  409. package/dist/genexus-ide-ui/p-68be9582.entry.js +1 -0
  410. package/dist/genexus-ide-ui/{p-90416fc8.js → p-698d274a.js} +1 -1
  411. package/dist/genexus-ide-ui/p-6bb17c51.js +1 -0
  412. package/dist/genexus-ide-ui/{p-d67c476c.entry.js → p-6cd18b45.entry.js} +1 -1
  413. package/dist/genexus-ide-ui/{p-98b8a4b7.entry.js → p-6dba1f6c.entry.js} +1 -1
  414. package/dist/genexus-ide-ui/{p-df744a68.entry.js → p-6fafe9d4.entry.js} +1 -1
  415. package/dist/genexus-ide-ui/{p-65e532d8.entry.js → p-718dc78b.entry.js} +1 -1
  416. package/dist/genexus-ide-ui/{p-3485ddda.entry.js → p-73204c8a.entry.js} +1 -1
  417. package/dist/genexus-ide-ui/p-783a1530.entry.js +1 -0
  418. package/dist/genexus-ide-ui/{p-e8a21ed7.entry.js → p-7ae11b35.entry.js} +1 -1
  419. package/dist/genexus-ide-ui/{p-abfc0ad8.entry.js → p-7c64e541.entry.js} +1 -1
  420. package/dist/genexus-ide-ui/{p-ade59c73.entry.js → p-7d1fd88e.entry.js} +1 -1
  421. package/dist/genexus-ide-ui/{p-82ba2bec.entry.js → p-7d327d28.entry.js} +1 -1
  422. package/dist/genexus-ide-ui/p-7dfeb944.entry.js +1 -0
  423. package/dist/genexus-ide-ui/{p-fc6b970d.entry.js → p-7fc8f83b.entry.js} +1 -1
  424. package/dist/genexus-ide-ui/p-81776364.entry.js +1 -0
  425. package/dist/genexus-ide-ui/{p-b8917eee.entry.js → p-832a1eff.entry.js} +1 -1
  426. package/dist/genexus-ide-ui/{p-94d2d18a.entry.js → p-88f896a6.entry.js} +1 -1
  427. package/dist/genexus-ide-ui/p-8c574452.entry.js +1 -0
  428. package/dist/genexus-ide-ui/{p-dfac4d3c.entry.js → p-8cf88b58.entry.js} +1 -1
  429. package/dist/genexus-ide-ui/{p-4d506c74.entry.js → p-8d99e6a5.entry.js} +1 -1
  430. package/dist/genexus-ide-ui/{p-7c44a3c8.entry.js → p-8fddfbd1.entry.js} +1 -1
  431. package/dist/genexus-ide-ui/{p-19e6c2b8.entry.js → p-90b5b7ed.entry.js} +1 -1
  432. package/dist/genexus-ide-ui/{p-4a01a404.entry.js → p-91fe1c0d.entry.js} +1 -1
  433. package/dist/genexus-ide-ui/{p-976e8118.entry.js → p-95d1a4e7.entry.js} +1 -1
  434. package/dist/genexus-ide-ui/{p-3fc9cf29.entry.js → p-97dc4967.entry.js} +1 -1
  435. package/dist/genexus-ide-ui/{p-9f4b6230.entry.js → p-98ea872a.entry.js} +1 -1
  436. package/dist/genexus-ide-ui/{p-fb368434.entry.js → p-99da5de7.entry.js} +1 -1
  437. package/dist/genexus-ide-ui/{p-870c7d8f.entry.js → p-9b29a8e8.entry.js} +1 -1
  438. package/dist/genexus-ide-ui/{p-1ff3cf87.entry.js → p-9df2aae3.entry.js} +1 -1
  439. package/dist/genexus-ide-ui/{p-1b51da5e.entry.js → p-a05224f3.entry.js} +1 -1
  440. package/dist/genexus-ide-ui/{p-527ace08.entry.js → p-a06d0915.entry.js} +1 -1
  441. package/dist/genexus-ide-ui/{p-a9c8b373.entry.js → p-a0d3d2b0.entry.js} +1 -1
  442. package/dist/genexus-ide-ui/{p-c11c96d7.entry.js → p-a214edb5.entry.js} +1 -1
  443. package/dist/genexus-ide-ui/{p-a5463fc9.entry.js → p-a2c7dc8a.entry.js} +1 -1
  444. package/dist/genexus-ide-ui/{p-46ed607e.entry.js → p-a6f02255.entry.js} +1 -1
  445. package/dist/genexus-ide-ui/{p-4e53dfaf.entry.js → p-a7c3a0fc.entry.js} +1 -1
  446. package/dist/genexus-ide-ui/p-a85038e2.js +1 -0
  447. package/dist/genexus-ide-ui/p-a8d037cf.entry.js +1 -0
  448. package/dist/genexus-ide-ui/{p-566ae3e7.entry.js → p-a96aa03c.entry.js} +1 -1
  449. package/dist/genexus-ide-ui/{p-56935fba.entry.js → p-b0268924.entry.js} +1 -1
  450. package/dist/genexus-ide-ui/{p-52f6ee1e.js → p-b9fca59c.js} +1 -1
  451. package/dist/genexus-ide-ui/{p-f93e94dc.entry.js → p-ba7c3c18.entry.js} +1 -1
  452. package/dist/genexus-ide-ui/{p-a8e97a42.entry.js → p-baabb0be.entry.js} +1 -1
  453. package/dist/genexus-ide-ui/{p-0574b321.entry.js → p-bca4d4c1.entry.js} +1 -1
  454. package/dist/genexus-ide-ui/{p-25b333a5.entry.js → p-bce289e6.entry.js} +1 -1
  455. package/dist/genexus-ide-ui/{p-d9a5b3d6.entry.js → p-bf5c0727.entry.js} +1 -1
  456. package/dist/genexus-ide-ui/{p-339a8480.entry.js → p-bf93ac90.entry.js} +1 -1
  457. package/dist/genexus-ide-ui/{p-9c82381c.entry.js → p-c00aa636.entry.js} +1 -1
  458. package/dist/genexus-ide-ui/{p-8a70239f.entry.js → p-c19354eb.entry.js} +1 -1
  459. package/dist/genexus-ide-ui/{p-68ec655f.entry.js → p-c3a1a74c.entry.js} +1 -1
  460. package/dist/genexus-ide-ui/{p-aec51bab.entry.js → p-c5e22cd8.entry.js} +1 -1
  461. package/dist/genexus-ide-ui/p-c914cc1f.entry.js +1 -0
  462. package/dist/genexus-ide-ui/{p-b4b4cbdc.entry.js → p-cb1845a9.entry.js} +1 -1
  463. package/dist/genexus-ide-ui/{p-ad30241e.entry.js → p-cc7d2262.entry.js} +1 -1
  464. package/dist/genexus-ide-ui/{p-4cf3c2b9.entry.js → p-ccc9151e.entry.js} +1 -1
  465. package/dist/genexus-ide-ui/{p-780caf92.entry.js → p-cd285670.entry.js} +1 -1
  466. package/dist/genexus-ide-ui/{p-72be1b75.entry.js → p-cd2fb5c9.entry.js} +1 -1
  467. package/dist/genexus-ide-ui/{p-7e13efb2.entry.js → p-cd6dafe5.entry.js} +1 -1
  468. package/dist/genexus-ide-ui/{p-8738b63b.entry.js → p-cd74a437.entry.js} +1 -1
  469. package/dist/genexus-ide-ui/{p-5cc7c201.entry.js → p-cdaaf8f9.entry.js} +1 -1
  470. package/dist/genexus-ide-ui/{p-e542c155.entry.js → p-ce76b613.entry.js} +1 -1
  471. package/dist/genexus-ide-ui/{p-cb3a255c.entry.js → p-d080030a.entry.js} +1 -1
  472. package/dist/genexus-ide-ui/p-d0dbf94f.entry.js +1 -0
  473. package/dist/genexus-ide-ui/p-d192b1e9.entry.js +1 -0
  474. package/dist/genexus-ide-ui/{p-133b562f.entry.js → p-d25da0c9.entry.js} +1 -1
  475. package/dist/genexus-ide-ui/{p-b0cb9690.entry.js → p-d5005f26.entry.js} +1 -1
  476. package/dist/genexus-ide-ui/{p-f9f1d95d.entry.js → p-da2dfb82.entry.js} +1 -1
  477. package/dist/genexus-ide-ui/{p-32bade0f.entry.js → p-da5317f5.entry.js} +1 -1
  478. package/dist/genexus-ide-ui/{p-657e57e7.entry.js → p-dc3efe56.entry.js} +1 -1
  479. package/dist/genexus-ide-ui/p-e45b5686.entry.js +1 -0
  480. package/dist/genexus-ide-ui/{p-9e428123.entry.js → p-e7c96dec.entry.js} +1 -1
  481. package/dist/genexus-ide-ui/{p-93ec18f7.entry.js → p-eb49012b.entry.js} +1 -1
  482. package/dist/genexus-ide-ui/{p-42209f9f.entry.js → p-ec9c9f44.entry.js} +1 -1
  483. package/dist/genexus-ide-ui/{p-7dd9df47.entry.js → p-ed89f1ee.entry.js} +1 -1
  484. package/dist/genexus-ide-ui/{p-f3837d78.entry.js → p-eed26277.entry.js} +1 -1
  485. package/dist/genexus-ide-ui/{p-3c8b9c4b.entry.js → p-efd187d0.entry.js} +1 -1
  486. package/dist/genexus-ide-ui/{p-b900ffbc.entry.js → p-f7fd7fa8.entry.js} +1 -1
  487. package/dist/genexus-ide-ui/{p-6d42b2c4.entry.js → p-f8750a75.entry.js} +1 -1
  488. package/dist/genexus-ide-ui/{p-bacd879c.entry.js → p-f97d7bbe.entry.js} +1 -1
  489. package/dist/genexus-ide-ui/p-fae07693.entry.js +1 -0
  490. package/dist/genexus-ide-ui/{p-253669d3.entry.js → p-fb2a7e10.entry.js} +1 -1
  491. package/dist/genexus-ide-ui/{p-0e28d8f3.entry.js → p-fb921907.entry.js} +1 -1
  492. package/dist/genexus-ide-ui/{p-866f6d39.entry.js → p-fc03bdd3.entry.js} +1 -1
  493. package/dist/genexus-ide-ui/{p-d7b452ef.entry.js → p-fd73e13a.entry.js} +1 -1
  494. package/dist/genexus-ide-ui/{p-0ae159de.entry.js → p-fdb7b01c.entry.js} +1 -1
  495. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/tree-view/tree-view-item/tree-view-item.css +58 -36
  496. package/dist/node_modules/@genexus/gemini/dist/collection/components/button-group/button-group.css +4 -5
  497. package/dist/node_modules/@genexus/gemini/dist/collection/components/card/card.css +96 -0
  498. package/dist/node_modules/@genexus/gemini/dist/collection/components/ide-loader/ide-loader.css +17 -9
  499. package/dist/node_modules/@genexus/gemini/dist/collection/components/list-box-item/list-box-item.css +2 -2
  500. package/dist/node_modules/@genexus/gemini/dist/collection/components/pills/pill.css +28 -0
  501. package/dist/node_modules/@genexus/gemini/dist/collection/components/pills/pills.css +7 -0
  502. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab/tab.css +6 -0
  503. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab-bar/tab-bar.css +10 -0
  504. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab-button/tab-button.css +43 -0
  505. package/dist/node_modules/@genexus/gemini/dist/collection/components/tabs/tabs.css +12 -0
  506. package/dist/node_modules/@genexus/gemini/dist/collection/components/text/text.css +10 -0
  507. package/dist/node_modules/@genexus/gemini/dist/collection/components/title-editable/title-editable.css +8 -3
  508. package/dist/node_modules/@genexus/gemini/dist/collection/components/tree-view/tree-view.css +16 -24
  509. package/dist/types/common/config.d.ts +3 -0
  510. package/dist/types/components/_helpers/directory-selector/directory-selector.d.ts +4 -0
  511. package/dist/types/components/kb-manager-export/helpers.d.ts +2 -0
  512. package/dist/types/components/kb-manager-export/kb-manager-export.d.ts +14 -9
  513. package/dist/types/components/kb-manager-import/helpers.d.ts +2 -0
  514. package/dist/types/components/kb-manager-import/kb-manager-import.d.ts +17 -2
  515. package/dist/types/components.d.ts +17 -10
  516. package/package.json +3 -3
  517. package/dist/cjs/ch-icon_2.cjs.entry.js +0 -178
  518. package/dist/cjs/gxg-tree-view.cjs.entry.js +0 -165
  519. package/dist/esm/ch-icon_2.entry.js +0 -173
  520. package/dist/esm/gxg-tree-view.entry.js +0 -161
  521. package/dist/genexus-ide-ui/p-00b5896d.entry.js +0 -1
  522. package/dist/genexus-ide-ui/p-19fef562.entry.js +0 -1
  523. package/dist/genexus-ide-ui/p-2781b92a.entry.js +0 -1
  524. package/dist/genexus-ide-ui/p-292fc3f4.entry.js +0 -1
  525. package/dist/genexus-ide-ui/p-2e0a65a3.entry.js +0 -1
  526. package/dist/genexus-ide-ui/p-2f3c0023.entry.js +0 -1
  527. package/dist/genexus-ide-ui/p-38c18db5.js +0 -1
  528. package/dist/genexus-ide-ui/p-3f0f7f80.entry.js +0 -1
  529. package/dist/genexus-ide-ui/p-40a57a36.entry.js +0 -1
  530. package/dist/genexus-ide-ui/p-54f01d52.entry.js +0 -1
  531. package/dist/genexus-ide-ui/p-606fee7b.entry.js +0 -1
  532. package/dist/genexus-ide-ui/p-6211ca46.entry.js +0 -1
  533. package/dist/genexus-ide-ui/p-8a7c4561.entry.js +0 -1
  534. package/dist/genexus-ide-ui/p-9380b713.entry.js +0 -1
  535. package/dist/genexus-ide-ui/p-976c3a09.js +0 -2
  536. package/dist/genexus-ide-ui/p-a2cb0e6b.entry.js +0 -1
  537. package/dist/genexus-ide-ui/p-b819706e.entry.js +0 -1
  538. package/dist/genexus-ide-ui/p-b8d5c561.js +0 -1
  539. package/dist/genexus-ide-ui/p-e46e26a6.js +0 -1
  540. package/dist/genexus-ide-ui/p-f6a6d8bb.entry.js +0 -1
  541. package/dist/genexus-ide-ui/p-fbb1cd20.entry.js +0 -1
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement, w as writeTask, f as forceUpdate } from './index-0da01575.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement, w as writeTask } from './index-0aa3977d.js';
2
2
  import { D as DISABLED_CLASS } from './reserverd-names-2a2d0fb3.js';
3
3
  import { f as focusComposedPath, m as mouseEventModifierKey } from './helpers-1ecd5e26.js';
4
4
 
@@ -563,9 +563,10 @@ const ChTreeView = class {
563
563
  };
564
564
  ChTreeView.style = treeViewCss;
565
565
 
566
- const treeViewItemCss = ":where(button){all:unset;display:flex;user-select:none;touch-action:manipulation;-webkit-user-drag:element}*,::before,::after{box-sizing:border-box}:host{--checkbox-size:1em;--expandable-button-width:0.75em;--ch-tree-x-list-item-dashed-line--offset:0px;--tab-width:calc(\n var(--checkbox-size) + var(--expandable-button-width) +\n (5px * 2)\n );display:grid;grid-template-rows:min-content;overflow:hidden}.header{--own-offset:0px;display:flex;align-items:center;min-height:calc(1em + 6px);padding-inline-start:var(--padding-inline-start)}.header--disabled{opacity:0.5;pointer-events:none}.header--even{--padding-inline-start:calc(\n var(--parent-padding-inline-start--odd, 0px) + var(--tab-width)\n )}.header--even+.expandable{--parent-padding-inline-start--even:calc(\n var(--parent-padding-inline-start--odd, 0px) + var(--tab-width)\n )}.header--even .dashed-line{--inset-inline-start:calc(\n var(--parent-padding-inline-start--odd, 0px) +\n var(--parent-checkbox-offset) + var(--parent-expandable-offset)\n )}.header--even-expandable{--padding-inline-start:calc(\n var(--parent-padding-inline-start--odd, 0px) + var(--tab-width) - calc(\n var(--expandable-button-width) + 5px\n )\n )}.header--even-expandable+.expandable{--parent-padding-inline-start--even:calc(\n var(--parent-padding-inline-start--odd, 0px) + var(--tab-width) - calc(\n var(--expandable-button-width) + 5px\n )\n )}.header--odd{--padding-inline-start:calc(\n var(--parent-padding-inline-start--even, 0px) + var(--tab-width)\n )}.header--odd+.expandable{--parent-padding-inline-start--odd:calc(\n var(--parent-padding-inline-start--even, 0px) + var(--tab-width)\n )}.header--odd .dashed-line{--inset-inline-start:calc(\n var(--parent-padding-inline-start--even, 0px) +\n var(--parent-checkbox-offset) + var(--parent-expandable-offset)\n )}.header--odd-expandable{--padding-inline-start:calc(\n var(--parent-padding-inline-start--even, 0px) + var(--tab-width) - calc(\n var(--expandable-button-width) + 5px\n )\n )}.header--odd-expandable+.expandable{--parent-padding-inline-start--odd:calc(\n var(--parent-padding-inline-start--even, 0px) + var(--tab-width) - calc(\n var(--expandable-button-width) + 5px\n )\n )}.header--level-0{--padding-inline-start:0px}.header--level-0+.expandable{--parent-padding-inline-start--even:0px}.header--expandable-offset{--own-offset:calc(\n var(--expandable-button-width) + 5px\n )}.header--expandable-offset+.expandable{--parent-expandable-offset:calc(var(--expandable-button-width) / 2)}.header--checkbox-offset+.expandable{--parent-checkbox-offset:calc(var(--checkbox-size) / 2);--parent-negative-checkbox-offset:calc(var(--checkbox-size) / 2)}.dashed-line{position:absolute;inset-inline-start:calc( var(--inset-inline-start) + var(--ch-tree-x-list-item-dashed-line--offset) );height:1px;width:calc( var(--tab-width) - var(--parent-checkbox-offset) - var(--parent-expandable-offset) - var(--own-offset) - var(--ch-tree-x-list-item-dashed-line--offset) - 4px );border:0 dashed color-mix(in srgb, currentColor 65%, transparent);border-block-end-width:1px;pointer-events:none;content-visibility:hidden;z-index:1}.last-all-line{inset-block-start:0;height:calc(100% - var(--distance-to-checkbox));border-inline-start-width:1px;border-end-start-radius:2px}.last-line{inset-block-start:0;height:100%;border-inline-start-width:1px;border-style:solid;border-block-end:unset}.expandable-button{display:grid;place-items:center;width:var(--expandable-button-width);height:var(--expandable-button-width);margin-inline-end:5px;z-index:1;cursor:pointer;content-visibility:auto;contain-intrinsic-size:auto var(--expandable-button-width)}.expandable-button::before{content:\"\";width:calc(100% - 2px);height:calc(100% - 2px);background-color:currentColor;-webkit-mask-size:calc(var(--expandable-button-width) - 2px)}.expandable-button--collapsed::before{-webkit-mask-image:url('data:image/svg+xml,<svg viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M14.15,8.5H8.54v5.61h-1V8.5H1.93v-1H7.54V1.89h1V7.5h5.61Z\"/></svg>')}.expandable-button--expanded::before{-webkit-mask-image:url('data:image/svg+xml,<svg viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M14.15,8.5H1.93v-1H14.15Z\"/></svg>')}.expandable-button:focus-visible{outline:1px solid #000}.checkbox{margin-inline-end:5px}.checkbox::part(container){width:var(--checkbox-size);height:var(--checkbox-size)}.action{display:grid;grid-template:\"left-img text right-img\"/max-content 1fr max-content;align-items:center;height:100%;flex:1;cursor:pointer}.readonly-mode{padding-block:0.75px}.left-img,.right-img{display:block;width:0.875em;height:0.875em;content-visibility:auto;contain-intrinsic-size:auto 0.875em}.left-img{grid-area:left-img;margin-inline-end:5px}.right-img{grid-area:right-img;margin-inline-start:5px}.edit-name{grid-area:text;width:100%;height:100%;padding:0;margin:0;background-color:unset;color:unset;border:1px solid currentColor;font:unset;outline:unset}.downloading{width:0.75em;height:0.75em;margin-inline-start:8px;border:2px solid currentColor;border-inline-start-color:transparent;border-radius:50%;opacity:0.75;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.expandable{--parent-expandable-offset:0px;--parent-negative-checkbox-offset:0px;--parent-checkbox-offset:0px;display:grid;grid-auto-rows:min-content;position:relative;content-visibility:auto;contain-intrinsic-size:auto 100px}.expandable--collapsed{display:none;overflow:hidden;content-visibility:hidden}";
566
+ const treeViewItemCss = ":where(button){all:unset;display:flex;user-select:none;touch-action:manipulation;-webkit-user-drag:element}*,::before,::after{box-sizing:border-box}:host{--ch-tree-view-view__checkbox-size:1em;--ch-tree-view-view__expandable-button-width:0.75em;--ch-tree-view-item__dashed-line--inset-inline-start:0px;--ch-tree-view-item__dashed-line--inset-inline-end:4px;--ch-tree-view-item-gap:5px;--ch-tree-view-item-custom-padding-inline-start:0px;--ch-tree-tab-width:calc(\n var(--ch-tree-view-view__checkbox-size) +\n var(--ch-tree-view-view__expandable-button-width) +\n (var(--ch-tree-view-item-gap) * 2)\n );display:grid;grid-template-rows:min-content;overflow:hidden}.header{--own-offset:0px;display:flex;align-items:center;min-height:calc(1em + 6px);padding-inline-start:calc( var(--padding-inline-start) + var(--ch-tree-view-item-custom-padding-inline-start) )}.header--disabled{opacity:0.5;pointer-events:none}.header--even{--padding-inline-start:calc(\n var(--parent-padding-inline-start--odd, 0px) + var(--ch-tree-tab-width)\n )}.header--even+.expandable{--parent-padding-inline-start--even:calc(\n var(--parent-padding-inline-start--odd, 0px) + var(--ch-tree-tab-width)\n )}.header--even .dashed-line{--inset-inline-start:calc(\n var(--parent-padding-inline-start--odd, 0px) +\n var(--parent-checkbox-offset) + var(--parent-expandable-offset)\n )}.header--even-expandable{--padding-inline-start:calc(\n var(--parent-padding-inline-start--odd, 0px) + var(--ch-tree-tab-width) -\n calc(\n var(--ch-tree-view-view__expandable-button-width) +\n var(--ch-tree-view-item-gap)\n )\n )}.header--even-expandable+.expandable{--parent-padding-inline-start--even:calc(\n var(--parent-padding-inline-start--odd, 0px) + var(--ch-tree-tab-width) -\n calc(\n var(--ch-tree-view-view__expandable-button-width) +\n var(--ch-tree-view-item-gap)\n )\n )}.header--odd{--padding-inline-start:calc(\n var(--parent-padding-inline-start--even, 0px) + var(--ch-tree-tab-width)\n )}.header--odd+.expandable{--parent-padding-inline-start--odd:calc(\n var(--parent-padding-inline-start--even, 0px) + var(--ch-tree-tab-width)\n )}.header--odd .dashed-line{--inset-inline-start:calc(\n var(--parent-padding-inline-start--even, 0px) +\n var(--parent-checkbox-offset) + var(--parent-expandable-offset)\n )}.header--odd-expandable{--padding-inline-start:calc(\n var(--parent-padding-inline-start--even, 0px) + var(--ch-tree-tab-width) -\n calc(\n var(--ch-tree-view-view__expandable-button-width) +\n var(--ch-tree-view-item-gap)\n )\n )}.header--odd-expandable+.expandable{--parent-padding-inline-start--odd:calc(\n var(--parent-padding-inline-start--even, 0px) + var(--ch-tree-tab-width) -\n calc(\n var(--ch-tree-view-view__expandable-button-width) +\n var(--ch-tree-view-item-gap)\n )\n )}.header--level-0{--padding-inline-start:0px}.header--level-0+.expandable{--parent-padding-inline-start--even:0px}.header--expandable-offset{--own-offset:calc(\n var(--ch-tree-view-view__expandable-button-width) +\n var(--ch-tree-view-item-gap)\n )}.header--expandable-offset+.expandable{--parent-expandable-offset:calc(\n var(--ch-tree-view-view__expandable-button-width) / 2\n )}.header--checkbox-offset+.expandable{--parent-checkbox-offset:calc(\n var(--ch-tree-view-view__checkbox-size) / 2\n );--parent-negative-checkbox-offset:calc(\n var(--ch-tree-view-view__checkbox-size) / 2\n )}.dashed-line{position:absolute;inset-inline-start:calc( var(--inset-inline-start) + var(--ch-tree-view-item__dashed-line--inset-inline-start) + var(--ch-tree-view-item-custom-padding-inline-start) );height:1px;width:calc( var(--ch-tree-tab-width) - var(--parent-checkbox-offset) - var(--parent-expandable-offset) - var(--own-offset) - var(--ch-tree-view-item__dashed-line--inset-inline-start) - var(--ch-tree-view-item__dashed-line--inset-inline-end) );border:0 dashed color-mix(in srgb, currentColor 65%, transparent);border-block-end-width:1px;pointer-events:none;content-visibility:hidden;z-index:1}.last-all-line{inset-block-start:0;height:calc(100% - var(--ch-tree-view-item-distance-to-checkbox));border-inline-start-width:1px;border-end-start-radius:2px}.last-line{inset-block-start:0;height:100%;border-inline-start-width:1px;border-style:solid;border-block-end:unset}.expandable-button{display:grid;place-items:center;width:var(--ch-tree-view-view__expandable-button-width);height:var(--ch-tree-view-view__expandable-button-width);margin-inline-end:var(--ch-tree-view-item-gap);z-index:1;cursor:pointer;content-visibility:auto;contain-intrinsic-size:auto var(--ch-tree-view-view__expandable-button-width)}.expandable-button::before{content:\"\";width:calc(100% - 2px);height:calc(100% - 2px);background-color:currentColor;-webkit-mask-size:calc( var(--ch-tree-view-view__expandable-button-width) - 2px )}.expandable-button--collapsed::before{-webkit-mask-image:url('data:image/svg+xml,<svg viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M14.15,8.5H8.54v5.61h-1V8.5H1.93v-1H7.54V1.89h1V7.5h5.61Z\"/></svg>')}.expandable-button--expanded::before{-webkit-mask-image:url('data:image/svg+xml,<svg viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M14.15,8.5H1.93v-1H14.15Z\"/></svg>')}.expandable-button:focus-visible{outline:1px solid #000}.checkbox{width:var(--ch-tree-view-view__checkbox-size);margin-inline-end:var(--ch-tree-view-item-gap)}.checkbox::part(container){width:var(--ch-tree-view-view__checkbox-size);height:var(--ch-tree-view-view__checkbox-size)}.action{display:grid;grid-template:\"left-img text right-img\"/max-content 1fr max-content;align-items:center;height:100%;flex:1;cursor:pointer}.readonly-mode{padding-block:0.75px}.left-img,.right-img{display:block;width:0.875em;height:0.875em;content-visibility:auto;contain-intrinsic-size:auto 0.875em}.left-img{grid-area:left-img;margin-inline-end:var(--ch-tree-view-item-gap)}.right-img{grid-area:right-img;margin-inline-start:var(--ch-tree-view-item-gap)}.edit-name{grid-area:text;width:100%;height:100%;padding:0;margin:0;background-color:unset;color:unset;border:1px solid currentColor;font:unset;outline:unset}.downloading{width:0.75em;height:0.75em;margin-inline-start:8px;border:2px solid currentColor;border-inline-start-color:transparent;border-radius:50%;opacity:0.75;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.expandable{--parent-expandable-offset:0px;--parent-negative-checkbox-offset:0px;--parent-checkbox-offset:0px;display:grid;grid-auto-rows:min-content;position:relative}.expandable--lazy-loaded{content-visibility:auto;contain-intrinsic-size:auto 100px}.expandable--collapsed{display:none;overflow:hidden;content-visibility:hidden}";
567
567
 
568
568
  const resetDragImage = new Image();
569
+ const DISTANCE_TO_CHECKBOX_CUSTOM_VAR = "--ch-tree-view-item-distance-to-checkbox";
569
570
  const INITIAL_LEVEL = 0;
570
571
  // Selectors
571
572
  const TREE_ITEM_TAG_NAME = "ch-tree-view-item";
@@ -802,10 +803,11 @@ const ChTreeViewItem = class {
802
803
  event.stopPropagation();
803
804
  const checked = event.target.checked;
804
805
  this.checked = checked;
806
+ this.indeterminate = false; // Changing the checked value makes it no longer indeterminate
805
807
  this.checkboxChange.emit({
806
808
  id: this.el.id,
807
809
  checked: this.checked,
808
- indeterminate: this.indeterminate
810
+ indeterminate: false
809
811
  });
810
812
  };
811
813
  this.renderImg = (cssClass, src) => (h("img", { "aria-hidden": "true", class: cssClass, part: cssClass, alt: "", src: src, loading: "lazy" }));
@@ -843,15 +845,7 @@ const ChTreeViewItem = class {
843
845
  const treeItems = this.getDirectTreeItems();
844
846
  treeItems.forEach(treeItem => {
845
847
  if (treeItem.checked !== newValue || treeItem.indeterminate !== false) {
846
- treeItem.checked = newValue;
847
- treeItem.indeterminate = false;
848
- // Emit the event to sync with the UI model, even if the item does not
849
- // have toggleCheckboxes property
850
- this.checkboxToggleChange.emit({
851
- id: treeItem.id,
852
- checked: newValue,
853
- indeterminate: false
854
- });
848
+ treeItem.updateChecked(newValue, false);
855
849
  }
856
850
  });
857
851
  }
@@ -896,22 +890,26 @@ const ChTreeViewItem = class {
896
890
  }
897
891
  updateCheckboxValue(event) {
898
892
  // No need to update the checkbox value based on the children checkbox
899
- if (!this.toggleCheckboxes) {
893
+ if (!this.toggleCheckboxes || this.el === event.target) {
900
894
  return;
901
895
  }
902
896
  const updatedCheck = event.detail.checked;
903
897
  const treeItems = this.getDirectTreeItems();
904
898
  // Check if all the items have the same value as the updated item
905
899
  const allItemsHaveTheSameCheckedValue = treeItems.every(treeItem => treeItem.checked === updatedCheck);
900
+ const eventMustBeEmitted = this.checked !== updatedCheck ||
901
+ this.indeterminate !== !allItemsHaveTheSameCheckedValue;
906
902
  this.ignoreCheckboxChange = this.checked !== updatedCheck;
907
903
  this.checked = updatedCheck;
908
904
  this.indeterminate = !allItemsHaveTheSameCheckedValue;
909
905
  // Sync with the UI Model
910
- this.checkboxToggleChange.emit({
911
- id: this.el.id,
912
- checked: updatedCheck,
913
- indeterminate: !allItemsHaveTheSameCheckedValue
914
- });
906
+ if (eventMustBeEmitted) {
907
+ this.checkboxToggleChange.emit({
908
+ id: this.el.id,
909
+ checked: updatedCheck,
910
+ indeterminate: !allItemsHaveTheSameCheckedValue
911
+ });
912
+ }
915
913
  }
916
914
  /**
917
915
  * Focus the next item in the tree. If the control is expanded, it focuses
@@ -983,7 +981,7 @@ const ChTreeViewItem = class {
983
981
  }
984
982
  /**
985
983
  * Focus the last item in its subtree. If the control is not expanded, it
986
- * focus the control
984
+ * focus the control.
987
985
  */
988
986
  async focusLastItem(ctrlKeyPressed) {
989
987
  // Focus the last subitem if expanded and not lazy loading
@@ -1005,7 +1003,7 @@ const ChTreeViewItem = class {
1005
1003
  this.setFocus(ctrlKeyPressed);
1006
1004
  }
1007
1005
  /**
1008
- * Set focus in the control
1006
+ * Set focus in the control.
1009
1007
  */
1010
1008
  async setFocus(ctrlKeyPressed) {
1011
1009
  this.headerRef.focus();
@@ -1014,6 +1012,20 @@ const ChTreeViewItem = class {
1014
1012
  this.setSelected();
1015
1013
  }
1016
1014
  }
1015
+ /**
1016
+ * Update `checked` and `indeterminate` properties.
1017
+ */
1018
+ async updateChecked(newChecked, newIndeterminate) {
1019
+ this.checked = newChecked;
1020
+ this.indeterminate = newIndeterminate;
1021
+ // Emit the event to sync with the UI model, even if the item does not
1022
+ // have toggleCheckboxes property
1023
+ this.checkboxToggleChange.emit({
1024
+ id: this.el.id,
1025
+ checked: newChecked,
1026
+ indeterminate: newIndeterminate
1027
+ });
1028
+ }
1017
1029
  getDirectTreeItems() {
1018
1030
  return Array.from(this.el.querySelectorAll(DIRECT_TREE_ITEM_CHILDREN));
1019
1031
  }
@@ -1021,7 +1033,7 @@ const ChTreeViewItem = class {
1021
1033
  this.watcher = new ResizeObserver(() => {
1022
1034
  const distanceToCheckbox = this.el.getBoundingClientRect().height -
1023
1035
  this.headerRef.getBoundingClientRect().height / 2;
1024
- this.el.style.setProperty("--distance-to-checkbox", distanceToCheckbox + "px");
1036
+ this.el.style.setProperty(DISTANCE_TO_CHECKBOX_CUSTOM_VAR, distanceToCheckbox + "px");
1025
1037
  });
1026
1038
  this.watcher.observe(this.el);
1027
1039
  this.watcher.observe(this.headerRef);
@@ -1039,6 +1051,7 @@ const ChTreeViewItem = class {
1039
1051
  }
1040
1052
  // Load items
1041
1053
  this.lazyLoad = false;
1054
+ this.downloading = true;
1042
1055
  this.loadLazyContent.emit(this.el.id);
1043
1056
  }
1044
1057
  toggleSelected() {
@@ -1114,7 +1127,7 @@ const ChTreeViewItem = class {
1114
1127
  "header--even-expandable": evenLevel && expandableButtonVisible,
1115
1128
  "header--odd-expandable": !evenLevel && expandableButtonVisible,
1116
1129
  "header--level-0": this.level === INITIAL_LEVEL
1117
- }, part: `header${this.disabled ? " disabled" : ""}${this.selected ? " selected" : ""}`, type: "button", disabled: this.disabled, onClick: this.handleActionClick, onKeyDown: !this.editing ? this.handleActionKeyDown : null,
1130
+ }, part: `header${this.disabled ? " disabled" : ""}${this.selected ? " selected" : ""}${this.level === INITIAL_LEVEL ? " level-0" : ""}`, type: "button", disabled: this.disabled, onClick: this.handleActionClick, onKeyDown: !this.editing ? this.handleActionKeyDown : null,
1118
1131
  // Drag and drop
1119
1132
  draggable: !this.dragDisabled, onDragStart: this.handleDragStart, onDragEnd: !this.dragDisabled ? this.handleDragEnd : null, ref: el => (this.headerRef = el) }, !this.leaf && this.showExpandableButton && (h("button", { type: "button", class: {
1120
1133
  "expandable-button": true,
@@ -1131,10 +1144,11 @@ const ChTreeViewItem = class {
1131
1144
  "dashed-line": true,
1132
1145
  "last-all-line": showAllLines && this.lastItem,
1133
1146
  "last-line": showLastLine
1134
- }, part: `dashed-line${this.lastItem ? " last-all-line" : ""}` }))), hasContent && (h("div", { role: "group", "aria-busy": this.downloading.toString(), "aria-live": this.downloading ? "polite" : null, id: EXPANDABLE_ID, class: {
1147
+ }, part: `dashed-line${this.lastItem ? " last-all-line" : ""}` }))), hasContent && (h("div", { role: "group", "aria-busy": (!!this.downloading).toString(), "aria-live": this.downloading ? "polite" : null, id: EXPANDABLE_ID, class: {
1135
1148
  expandable: true,
1136
- "expandable--collapsed": !this.expanded
1137
- }, part: `expandable${this.expanded ? " expanded" : " collapsed"}` }, h("slot", null)))));
1149
+ "expandable--collapsed": !this.expanded,
1150
+ "expandable--lazy-loaded": !this.downloading
1151
+ }, part: `expandable${this.expanded ? " expanded" : " collapsed"}${!this.downloading ? " lazy-loaded" : ""}` }, h("slot", null)))));
1138
1152
  }
1139
1153
  get el() { return getElement(this); }
1140
1154
  static get watchers() { return {
@@ -1148,593 +1162,4 @@ const ChTreeViewItem = class {
1148
1162
  };
1149
1163
  ChTreeViewItem.style = treeViewItemCss;
1150
1164
 
1151
- const filterWithCamelCase = (stringToFilter, filter, camelCase) => camelCase
1152
- ? stringToFilter.includes(filter)
1153
- : stringToFilter.toLowerCase().includes(filter.toLowerCase());
1154
- const filterWithString = (stringToFilter, filter, filterOptions) => filterOptions.regularExpression
1155
- ? stringToFilter.match(filter) !== null
1156
- : filterWithCamelCase(stringToFilter, filter, filterOptions.camelCase);
1157
- const filterDictionary = {
1158
- caption: (item, filterInfo) => {
1159
- var _a;
1160
- return filterInfo.filter
1161
- ? filterWithString((_a = item.caption) !== null && _a !== void 0 ? _a : "", filterInfo.filter, filterInfo.filterOptions)
1162
- : true;
1163
- },
1164
- checked: (item, filterInfo) => {
1165
- var _a, _b;
1166
- return ((_a = item.checkbox) !== null && _a !== void 0 ? _a : filterInfo.defaultCheckbox) &&
1167
- !item.indeterminate &&
1168
- ((_b = item.checked) !== null && _b !== void 0 ? _b : filterInfo.defaultChecked);
1169
- },
1170
- "id-list": (item, filterInfo) => filterInfo.filterList.includes(item.id),
1171
- metadata: (item, filterInfo) => {
1172
- var _a;
1173
- return filterInfo.filter
1174
- ? filterWithString((_a = item.metadata) !== null && _a !== void 0 ? _a : "", filterInfo.filter, filterInfo.filterOptions)
1175
- : true;
1176
- },
1177
- none: () => true,
1178
- unchecked: (item, filterInfo) => {
1179
- var _a, _b;
1180
- return ((_a = item.checkbox) !== null && _a !== void 0 ? _a : filterInfo.defaultCheckbox) &&
1181
- !item.indeterminate &&
1182
- !((_b = item.checked) !== null && _b !== void 0 ? _b : filterInfo.defaultChecked);
1183
- }
1184
- };
1185
-
1186
- const treeViewRenderCss = "ch-tree-view-render{display:contents}";
1187
-
1188
- const DEFAULT_DRAG_DISABLED_VALUE = false;
1189
- const DEFAULT_DROP_DISABLED_VALUE = false;
1190
- const DEFAULT_CLASS_VALUE = "tree-view-item";
1191
- const DEFAULT_EDITABLE_ITEMS_VALUE = true;
1192
- const DEFAULT_EXPANDED_VALUE = false;
1193
- const DEFAULT_INDETERMINATE_VALUE = false;
1194
- const DEFAULT_LAZY_VALUE = false;
1195
- const DEFAULT_ORDER_VALUE = 0;
1196
- const DEFAULT_SELECTED_VALUE = false;
1197
- const defaultRenderItem = (itemModel, treeState, lastItem, level) => {
1198
- var _a, _b, _c, _d, _e, _f;
1199
- return (treeState.filterType === "none" || itemModel.render !== false) && (h("ch-tree-view-item", { id: itemModel.id, caption: itemModel.caption, checkbox: (_a = itemModel.checkbox) !== null && _a !== void 0 ? _a : treeState.checkbox, checked: (_b = itemModel.checked) !== null && _b !== void 0 ? _b : treeState.checked, class: itemModel.class, disabled: itemModel.disabled, downloading: itemModel.downloading, dragDisabled: (_c = itemModel.dragDisabled) !== null && _c !== void 0 ? _c : treeState.dragDisabled, dropDisabled: (_d = itemModel.dropDisabled) !== null && _d !== void 0 ? _d : treeState.dropDisabled, editable: (_e = itemModel.editable) !== null && _e !== void 0 ? _e : treeState.editableItems, expanded: itemModel.expanded, indeterminate: itemModel.indeterminate, lastItem: lastItem, lazyLoad: itemModel.lazy, leaf: itemModel.leaf, leftImgSrc: itemModel.leftImgSrc, level: level, metadata: itemModel.metadata, rightImgSrc: itemModel.rightImgSrc, selected: itemModel.selected, showExpandableButton: itemModel.showExpandableButton, showLines: treeState.showLines, toggleCheckboxes: (_f = itemModel.toggleCheckboxes) !== null && _f !== void 0 ? _f : treeState.toggleCheckboxes }, !itemModel.leaf &&
1200
- itemModel.items != null &&
1201
- itemModel.items.map((subModel, index) => defaultRenderItem(subModel, treeState, treeState.showLines && index === itemModel.items.length - 1, level + 1))));
1202
- };
1203
- const ChTreeViewRender = class {
1204
- constructor(hostRef) {
1205
- registerInstance(this, hostRef);
1206
- this.checkedItemsChange = createEvent(this, "checkedItemsChange", 7);
1207
- this.itemContextmenu = createEvent(this, "itemContextmenu", 7);
1208
- this.itemOpenReference = createEvent(this, "itemOpenReference", 7);
1209
- this.selectedItemsChange = createEvent(this, "selectedItemsChange", 7);
1210
- // UI Models
1211
- this.flattenedTreeModel = new Map();
1212
- this.flattenedCheckboxTreeModel = new Map();
1213
- this.selectedItems = new Set();
1214
- /**
1215
- * This property lets you specify if the tree is waiting to process the drop
1216
- * of items.
1217
- */
1218
- this.waitDropProcessing = false;
1219
- /**
1220
- * Set this attribute if you want display a checkbox in all items by default.
1221
- */
1222
- this.checkbox = false;
1223
- /**
1224
- * Set this attribute if you want the checkbox to be checked in all items by
1225
- * default.
1226
- * Only works if `checkbox = true`
1227
- */
1228
- this.checked = false;
1229
- /**
1230
- * This attribute lets you specify if the drag operation is disabled in all
1231
- * items by default. If `true`, the items can't be dragged.
1232
- */
1233
- this.dragDisabled = DEFAULT_DRAG_DISABLED_VALUE;
1234
- /**
1235
- * This attribute lets you specify if the drop operation is disabled in all
1236
- * items by default. If `true`, the items won't accept any drops.
1237
- */
1238
- this.dropDisabled = DEFAULT_DROP_DISABLED_VALUE;
1239
- /**
1240
- * This attribute lets you specify if the edit operation is enabled in all
1241
- * items by default. If `true`, the items can edit its caption in place.
1242
- */
1243
- this.editableItems = DEFAULT_EDITABLE_ITEMS_VALUE;
1244
- /**
1245
- * This property lets you determine the list of items that will be filtered.
1246
- * Only works if `filterType = "id-list"`.
1247
- */
1248
- this.filterList = [];
1249
- /**
1250
- * This property lets you determine the options that will be applied to the
1251
- * filter.
1252
- * Only works if `filterType = "caption" | "metadata"`.
1253
- */
1254
- this.filterOptions = {};
1255
- /**
1256
- * This attribute lets you define what kind of filter is applied to items.
1257
- * Only items that satisfy the filter predicate will be displayed.
1258
- *
1259
- * | Value | Details |
1260
- * | ----------- | ---------------------------------------------------------------------------------------------- |
1261
- * | `checked` | Show only the items that have a checkbox and are checked. |
1262
- * | `unchecked` | Show only the items that have a checkbox and are not checked. |
1263
- * | `caption` | Show only the items whose `caption` satisfies the regex determinate by the `filter` property. |
1264
- * | `metadata` | Show only the items whose `metadata` satisfies the regex determinate by the `filter` property. |
1265
- * | `id-list` | Show only the items that are contained in the array determinate by the `filterList` property. |
1266
- * | `none` | Show all items. |
1267
- */
1268
- this.filterType = "none";
1269
- /**
1270
- * Set this attribute if you want to allow multi selection of the items.
1271
- */
1272
- this.multiSelection = false;
1273
- /**
1274
- * This property allows us to implement custom rendering of tree items.
1275
- */
1276
- this.renderItem = defaultRenderItem;
1277
- /**
1278
- * `true` to display the relation between tree items and tree lists using
1279
- * lines.
1280
- */
1281
- this.showLines = "none";
1282
- /**
1283
- * Set this attribute if you want all the children item's checkboxes to be
1284
- * checked when the parent item checkbox is checked, or to be unchecked when
1285
- * the parent item checkbox is unchecked.
1286
- * This attribute will be used in all items by default.
1287
- */
1288
- this.toggleCheckboxes = false;
1289
- /**
1290
- * This property lets you define the model of the ch-tree-x control.
1291
- */
1292
- this.treeModel = [];
1293
- this.handleDroppableZoneEnter = (event) => {
1294
- if (!this.checkDroppableZoneCallback) {
1295
- return;
1296
- }
1297
- event.stopPropagation();
1298
- // Suppose the request is made immediately by executing the callback
1299
- const requestTimestamp = new Date().getTime();
1300
- const dropInformation = event.detail;
1301
- const promise = this.checkDroppableZoneCallback(dropInformation);
1302
- promise.then(validDrop => {
1303
- this.updateValidDropZone(requestTimestamp, dropInformation.newContainer.id, dropInformation.draggedItems, validDrop);
1304
- });
1305
- };
1306
- this.handleSelectedItemsChange = (event) => {
1307
- event.stopPropagation();
1308
- const itemsToProcess = new Map(event.detail);
1309
- // Remove no longer selected items
1310
- this.selectedItems.forEach(selectedItemId => {
1311
- const itemUIModel = this.flattenedTreeModel.get(selectedItemId).item;
1312
- const itemIsStillSelected = itemsToProcess.get(selectedItemId);
1313
- // The item does not need to be added. Remove it from the processed list
1314
- if (itemIsStillSelected) {
1315
- itemUIModel.expanded = itemIsStillSelected.expanded; // Update expanded state
1316
- itemsToProcess.delete(selectedItemId);
1317
- }
1318
- // The item must be un-selected in the UI Model
1319
- else {
1320
- itemUIModel.selected = false;
1321
- this.selectedItems.delete(selectedItemId);
1322
- }
1323
- });
1324
- // Add new selected items
1325
- itemsToProcess.forEach((newSelectedItemInfo, itemId) => {
1326
- const newSelectedItem = this.flattenedTreeModel.get(itemId).item;
1327
- newSelectedItem.selected = true;
1328
- newSelectedItem.expanded = newSelectedItemInfo.expanded;
1329
- this.selectedItems.add(itemId);
1330
- });
1331
- this.selectedItemsChange.emit(event.detail);
1332
- };
1333
- this.handleExpandedItemChange = (event) => {
1334
- const detail = event.detail;
1335
- const itemInfo = this.flattenedTreeModel.get(detail.id).item;
1336
- itemInfo.expanded = detail.expanded;
1337
- };
1338
- this.handleItemContextmenu = (event) => {
1339
- event.stopPropagation();
1340
- this.itemContextmenu.emit(event.detail);
1341
- };
1342
- this.handleItemsDropped = (event) => {
1343
- if (!this.dropItemsCallback) {
1344
- return;
1345
- }
1346
- event.stopPropagation();
1347
- const dataTransferInfo = event.detail;
1348
- const newContainer = dataTransferInfo.newContainer;
1349
- const newParentId = newContainer.id;
1350
- // Check if the parent exists in the UI Model
1351
- if (!this.flattenedTreeModel.get(newParentId)) {
1352
- return;
1353
- }
1354
- const draggedItems = dataTransferInfo.draggedItems;
1355
- if (draggedItems.length === 0) {
1356
- return;
1357
- }
1358
- const promise = this.dropItemsCallback(dataTransferInfo);
1359
- this.waitDropProcessing = true;
1360
- promise.then(async (response) => {
1361
- this.waitDropProcessing = false;
1362
- if (!response.acceptDrop) {
1363
- return;
1364
- }
1365
- const newParentUIModel = this.flattenedTreeModel.get(newParentId).item;
1366
- // Only move the items to the new parent, keeping the state
1367
- if (dataTransferInfo.dropInTheSameTree) {
1368
- // Add the UI models to the new container and remove the UI models from
1369
- // the old containers
1370
- draggedItems.forEach(this.moveItemToNewParent(newParentUIModel));
1371
- // When the selected items are moved, the tree must remove its internal
1372
- // state to not have undefined references
1373
- if (dataTransferInfo.draggingSelectedItems) {
1374
- await this.treeRef.clearSelectedItemsInfo();
1375
- }
1376
- }
1377
- // Add the new items
1378
- else {
1379
- if (response.items == null) {
1380
- return;
1381
- }
1382
- // Add new items to the parent
1383
- newParentUIModel.items.push(...response.items);
1384
- // Flatten the new UI models
1385
- response.items.forEach(this.flattenItemUIModel(newParentUIModel));
1386
- }
1387
- this.sortItems(newParentUIModel.items);
1388
- // Open the item to visualize the new subitems
1389
- newParentUIModel.expanded = true;
1390
- // Re-sync checked items
1391
- this.emitCheckedItemsChange();
1392
- // Update filters
1393
- this.processFilters();
1394
- // There is no need to force and update, since the waitDropProcessing
1395
- // prop was modified
1396
- });
1397
- };
1398
- this.moveItemToNewParent = (newParentUIModel) => (dataTransferInfo) => {
1399
- const itemUIModelExtended = this.flattenedTreeModel.get(dataTransferInfo.id);
1400
- const item = itemUIModelExtended.item;
1401
- const oldParentItem = itemUIModelExtended.parentItem;
1402
- // Remove the UI model from the previous parent
1403
- oldParentItem.items.splice(oldParentItem.items.indexOf(item), 1);
1404
- // Add the UI Model to the new parent
1405
- newParentUIModel.items.push(item);
1406
- // Reference the new parent in the item
1407
- itemUIModelExtended.parentItem = newParentUIModel;
1408
- };
1409
- this.flattenItemUIModel = (parentModel) => (item) => {
1410
- var _a, _b, _c, _d, _e, _f;
1411
- this.flattenedTreeModel.set(item.id, {
1412
- parentItem: parentModel,
1413
- item: item
1414
- });
1415
- // Add the items that have a checkbox in a separate Map
1416
- if ((_a = item.checkbox) !== null && _a !== void 0 ? _a : this.checkbox) {
1417
- this.flattenedCheckboxTreeModel.set(item.id, {
1418
- parentItem: parentModel,
1419
- item: item
1420
- });
1421
- }
1422
- // Make sure the properties are with their default values to avoid issues
1423
- // when reusing DOM nodes
1424
- item.class || (item.class = DEFAULT_CLASS_VALUE);
1425
- (_b = item.expanded) !== null && _b !== void 0 ? _b : (item.expanded = DEFAULT_EXPANDED_VALUE);
1426
- (_c = item.indeterminate) !== null && _c !== void 0 ? _c : (item.indeterminate = DEFAULT_INDETERMINATE_VALUE);
1427
- (_d = item.lazy) !== null && _d !== void 0 ? _d : (item.lazy = DEFAULT_LAZY_VALUE);
1428
- (_e = item.order) !== null && _e !== void 0 ? _e : (item.order = DEFAULT_ORDER_VALUE);
1429
- (_f = item.selected) !== null && _f !== void 0 ? _f : (item.selected = DEFAULT_SELECTED_VALUE);
1430
- if (item.selected) {
1431
- this.selectedItems.add(item.id);
1432
- }
1433
- this.flattenSubModel(item);
1434
- };
1435
- }
1436
- handleFilterChange() {
1437
- if (this.filterType === "caption" || this.filterType === "metadata") {
1438
- this.processFilters();
1439
- }
1440
- }
1441
- handleFilterListChange() {
1442
- if (this.filterType === "id-list") {
1443
- this.processFilters();
1444
- }
1445
- }
1446
- handleFilterOptionsChange() {
1447
- if (this.filterType === "caption" || this.filterType === "metadata") {
1448
- this.processFilters();
1449
- }
1450
- }
1451
- handleFilterTypeChange() {
1452
- this.processFilters();
1453
- }
1454
- handleTreeModelChange() {
1455
- this.flattenModel();
1456
- }
1457
- /**
1458
- * Given an item id, an array of items to add, the download status and the
1459
- * lazy state, updates the item's UI Model.
1460
- */
1461
- async loadLazyContent(itemId, items, downloading = false, lazy = false) {
1462
- const itemToLazyLoadContent = this.flattenedTreeModel.get(itemId).item;
1463
- // Establish that the content was lazy loaded
1464
- itemToLazyLoadContent.downloading = downloading;
1465
- itemToLazyLoadContent.lazy = lazy;
1466
- // Check if there is items to add
1467
- if (items == null) {
1468
- return;
1469
- }
1470
- // @todo What happens in the server when dropping items on a lazy node?
1471
- itemToLazyLoadContent.items = items;
1472
- this.sortItems(itemToLazyLoadContent.items);
1473
- this.flattenSubModel(itemToLazyLoadContent);
1474
- // Re-sync checked items
1475
- this.emitCheckedItemsChange();
1476
- // Update filters
1477
- this.processFilters();
1478
- // Force re-render
1479
- forceUpdate(this);
1480
- }
1481
- /**
1482
- * Given an item id, it displays and scrolls into the item view.
1483
- */
1484
- async scrollIntoVisible(treeItemId) {
1485
- const itemUIModel = this.flattenedTreeModel.get(treeItemId);
1486
- if (!itemUIModel) {
1487
- // @todo Check if the item is on the server?
1488
- return;
1489
- }
1490
- let visitedNode = itemUIModel.parentItem;
1491
- // While the parent is not the root, update the UI Models
1492
- while (visitedNode && visitedNode.id != null) {
1493
- // Expand the item
1494
- visitedNode.expanded = true;
1495
- const visitedNodeUIModel = this.flattenedTreeModel.get(visitedNode.id);
1496
- visitedNode = visitedNodeUIModel.parentItem;
1497
- }
1498
- forceUpdate(this);
1499
- // @todo For some reason, when the model is created using the "big model" option,
1500
- // this implementation does not work when only the UI Model is updated. So, to
1501
- // expand the items, we have to delegate the responsibility to the tree-x
1502
- this.treeRef.scrollIntoVisible(treeItemId);
1503
- }
1504
- /**
1505
- * This method is used to toggle a tree item by the tree item id/ids.
1506
- *
1507
- * @param treeItemIds An array id the tree items to be toggled.
1508
- * @param expand A boolean indicating that the tree item should be expanded or collapsed. (optional)
1509
- * @returns The modified items after the method was called.
1510
- */
1511
- async toggleItems(treeItemIds, expand) {
1512
- if (!treeItemIds) {
1513
- return [];
1514
- }
1515
- const modifiedTreeItems = [];
1516
- treeItemIds.forEach(treeItemId => {
1517
- const itemInfo = this.flattenedTreeModel.get(treeItemId).item;
1518
- if (itemInfo) {
1519
- itemInfo.expanded = expand !== null && expand !== void 0 ? expand : !itemInfo.expanded;
1520
- modifiedTreeItems.push({
1521
- id: itemInfo.id,
1522
- expanded: itemInfo.expanded
1523
- });
1524
- }
1525
- });
1526
- // Force re-render
1527
- forceUpdate(this);
1528
- return modifiedTreeItems;
1529
- }
1530
- /**
1531
- * Given a subset of item's properties, it updates all item UI models.
1532
- */
1533
- async updateAllItemsProperties(properties) {
1534
- [...this.flattenedTreeModel.values()].forEach(itemUIModel => {
1535
- if (properties.expanded != null) {
1536
- itemUIModel.item.expanded = properties.expanded;
1537
- }
1538
- if (properties.checked != null) {
1539
- itemUIModel.item.checked = properties.checked;
1540
- itemUIModel.item.indeterminate = false;
1541
- }
1542
- });
1543
- // Update filters
1544
- if (properties.checked != null) {
1545
- this.processFilters();
1546
- }
1547
- forceUpdate(this);
1548
- }
1549
- /**
1550
- * Given a item list and the properties to update, it updates the properties
1551
- * of the items in the list.
1552
- */
1553
- async updateItemsProperties(items, properties) {
1554
- items.forEach(item => {
1555
- const itemUIModel = this.flattenedTreeModel.get(item);
1556
- this.updateItemProperty(itemUIModel, properties);
1557
- });
1558
- // Update filters
1559
- this.processFilters();
1560
- forceUpdate(this);
1561
- }
1562
- /**
1563
- * Update the information about the valid droppable zones.
1564
- * @param requestTimestamp Time where the request to the server was made. Useful to avoid having old information.
1565
- * @param newContainerId ID of the container where the drag is trying to be made.
1566
- * @param draggedItems Information about the dragged items.
1567
- * @param validDrop Current state of the droppable zone.
1568
- */
1569
- async updateValidDropZone(requestTimestamp, newContainerId, draggedItems, validDrop) {
1570
- this.treeRef.updateValidDropZone(requestTimestamp, newContainerId, draggedItems, validDrop);
1571
- }
1572
- updateItemProperty(itemUIModel, properties) {
1573
- if (!itemUIModel) {
1574
- return;
1575
- }
1576
- const itemInfo = itemUIModel.item;
1577
- Object.keys(properties).forEach(propertyName => {
1578
- itemInfo[propertyName] = properties[propertyName];
1579
- });
1580
- }
1581
- updateCheckboxValue(event) {
1582
- event.stopPropagation();
1583
- const detail = event.detail;
1584
- const treeItemId = detail.id;
1585
- const itemUIModel = this.flattenedCheckboxTreeModel.get(treeItemId);
1586
- // In some cases, when the `treeModel` and `checked` properties are updated
1587
- // outside of the tree control, some events are fired with undefined references
1588
- if (!itemUIModel) {
1589
- return;
1590
- }
1591
- const itemInfo = itemUIModel.item;
1592
- itemInfo.checked = detail.checked;
1593
- itemInfo.indeterminate = detail.indeterminate;
1594
- this.emitCheckedItemsChange();
1595
- // Update filters
1596
- if (this.filterType === "checked" || this.filterType === "unchecked") {
1597
- this.processFilters();
1598
- // Force re-render
1599
- forceUpdate(this);
1600
- }
1601
- }
1602
- loadLazyChildrenHandler(event) {
1603
- if (!this.lazyLoadTreeItemsCallback) {
1604
- return;
1605
- }
1606
- event.stopPropagation();
1607
- const treeItemId = event.detail;
1608
- const promise = this.lazyLoadTreeItemsCallback(treeItemId);
1609
- event.target.downloading = true;
1610
- promise.then(result => {
1611
- this.loadLazyContent(treeItemId, result);
1612
- });
1613
- }
1614
- handleCaptionModification(event) {
1615
- if (!this.modifyItemCaptionCallback) {
1616
- return;
1617
- }
1618
- event.stopPropagation();
1619
- const itemRef = event.target;
1620
- const itemId = event.detail.id;
1621
- const itemUIModel = this.flattenedTreeModel.get(itemId);
1622
- const itemInfo = itemUIModel.item;
1623
- const newCaption = event.detail.caption;
1624
- const oldCaption = itemInfo.caption;
1625
- // Optimistic UI: Update the caption in the UI Model before the change is
1626
- // completed in the server
1627
- itemInfo.caption = newCaption;
1628
- // Due to performance reasons, we don't make a shallow copy of the
1629
- // treeModel to force a re-render
1630
- itemRef.caption = newCaption;
1631
- const promise = this.modifyItemCaptionCallback(itemId, newCaption);
1632
- promise.then(status => {
1633
- if (status.success) {
1634
- this.sortItems(itemUIModel.parentItem.items);
1635
- // Update filters
1636
- this.processFilters();
1637
- // Force re-render
1638
- forceUpdate(this);
1639
- }
1640
- else {
1641
- itemRef.caption = oldCaption;
1642
- itemInfo.caption = oldCaption;
1643
- // Do something with the error message
1644
- }
1645
- });
1646
- }
1647
- handleOpenReference(event) {
1648
- event.stopPropagation();
1649
- this.itemOpenReference.emit(event.detail);
1650
- }
1651
- emitCheckedItemsChange() {
1652
- // New copy of the checked items
1653
- const allItemsWithCheckbox = new Map(this.flattenedCheckboxTreeModel);
1654
- // Update the checked value if not defined
1655
- allItemsWithCheckbox.forEach(itemUIModel => {
1656
- var _a;
1657
- var _b;
1658
- (_a = (_b = itemUIModel.item).checked) !== null && _a !== void 0 ? _a : (_b.checked = this.checked);
1659
- });
1660
- this.checkedItemsChange.emit(allItemsWithCheckbox);
1661
- }
1662
- flattenSubModel(model) {
1663
- const items = model.items;
1664
- if (!items) {
1665
- // Make sure that subtrees don't have an undefined array
1666
- if (model.leaf !== true) {
1667
- model.items = [];
1668
- }
1669
- return;
1670
- }
1671
- this.sortItems(items);
1672
- items.forEach(this.flattenItemUIModel(model));
1673
- }
1674
- sortItems(items) {
1675
- // Ensure that items are sorted
1676
- if (this.sortItemsCallback) {
1677
- this.sortItemsCallback(items);
1678
- }
1679
- }
1680
- flattenModel() {
1681
- this.flattenedTreeModel.clear();
1682
- this.flattenedCheckboxTreeModel.clear();
1683
- this.selectedItems.clear();
1684
- // The model was updated at runtime, so we need to clear the references
1685
- if (this.treeRef) {
1686
- this.treeRef.clearSelectedItemsInfo();
1687
- }
1688
- this.flattenSubModel({ id: null, caption: null, items: this.treeModel });
1689
- // Re-sync checked items
1690
- this.emitCheckedItemsChange();
1691
- }
1692
- filterSubModel(item, filterInfo) {
1693
- let aSubItemIsRendered = false;
1694
- // Check if a subitem is rendered
1695
- if (item.leaf !== true && item.items != null) {
1696
- item.items.forEach(subItem => {
1697
- const itemSatisfiesFilter = this.filterSubModel(subItem, filterInfo);
1698
- aSubItemIsRendered || (aSubItemIsRendered = itemSatisfiesFilter);
1699
- });
1700
- }
1701
- // The current item is rendered if it satisfies the filter condition or a
1702
- // subitem exists that needs to be rendered
1703
- const satisfiesFilter = filterDictionary[this.filterType](item, filterInfo) || aSubItemIsRendered;
1704
- item.render = satisfiesFilter; // Update item render
1705
- return satisfiesFilter;
1706
- }
1707
- processFilters() {
1708
- if (this.filterType === "none") {
1709
- return;
1710
- }
1711
- this.filterSubModel({
1712
- id: null,
1713
- caption: null,
1714
- items: this.treeModel
1715
- }, {
1716
- defaultCheckbox: this.checkbox,
1717
- defaultChecked: this.checked,
1718
- filter: this.filter,
1719
- filterList: this.filterList,
1720
- filterOptions: this.filterOptions
1721
- });
1722
- }
1723
- componentWillLoad() {
1724
- this.flattenModel();
1725
- this.processFilters();
1726
- }
1727
- render() {
1728
- return (h("ch-tree-view", { class: this.cssClass || null, multiSelection: this.multiSelection, waitDropProcessing: this.waitDropProcessing, onDroppableZoneEnter: this.handleDroppableZoneEnter, onExpandedItemChange: this.handleExpandedItemChange, onItemContextmenu: this.handleItemContextmenu, onItemsDropped: this.handleItemsDropped, onSelectedItemsChange: this.handleSelectedItemsChange, ref: el => (this.treeRef = el) }, this.treeModel.map((itemModel, index) => this.renderItem(itemModel, this, this.showLines && index === this.treeModel.length - 1, 0))));
1729
- }
1730
- static get watchers() { return {
1731
- "filter": ["handleFilterChange"],
1732
- "filterList": ["handleFilterListChange"],
1733
- "filterOptions": ["handleFilterOptionsChange"],
1734
- "filterType": ["handleFilterTypeChange"],
1735
- "treeModel": ["handleTreeModelChange"]
1736
- }; }
1737
- };
1738
- ChTreeViewRender.style = treeViewRenderCss;
1739
-
1740
- export { CheckBox as ch_checkbox, ChTreeView as ch_tree_view, ChTreeViewItem as ch_tree_view_item, ChTreeViewRender as ch_tree_view_render };
1165
+ export { CheckBox as ch_checkbox, ChTreeView as ch_tree_view, ChTreeViewItem as ch_tree_view_item };