@genexus/genexus-ide-ui 0.0.61 → 0.0.63

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 (411) hide show
  1. package/dist/cjs/{ch-tree-x_3.cjs.entry.js → ch-checkbox_4.cjs.entry.js} +277 -75
  2. package/dist/cjs/ch-grid_8.cjs.entry.js +1 -1
  3. package/dist/cjs/ch-next-data-modeling-render.cjs.entry.js +242 -0
  4. package/dist/cjs/{ch-next-data-modeling-item.cjs.entry.js → ch-next-data-modeling_2.cjs.entry.js} +20 -1
  5. package/dist/cjs/ch-tree-view-render-wrapper.cjs.entry.js +160 -0
  6. package/dist/cjs/{config-149ec5fe.js → config-c652329b.js} +5 -1
  7. package/dist/cjs/detect-click-outside-d18e5541.js +25 -0
  8. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  9. package/dist/cjs/{grid-be8c3413.js → grid-d12c16c7.js} +1 -0
  10. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +12 -7
  11. package/dist/cjs/{gxg-form-text.cjs.entry.js → gx-ide-container_4.cjs.entry.js} +238 -0
  12. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +11 -4
  13. package/dist/cjs/gx-ide-entity-selector_2.cjs.entry.js +18 -2
  14. package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js +54 -44
  15. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +40 -19
  16. package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js +18 -2
  17. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +10 -5
  18. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +14 -10
  19. package/dist/cjs/gx-ide-new-object.cjs.entry.js +12 -7
  20. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +21 -10
  21. package/dist/cjs/gx-ide-references.cjs.entry.js +21 -27
  22. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +11 -7
  23. package/dist/cjs/gx-ide-switch-panel.cjs.entry.js +19 -0
  24. package/dist/cjs/gx-ide-switcher.cjs.entry.js +19 -0
  25. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +35 -8
  26. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +34 -16
  27. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +13 -5
  28. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +11 -4
  29. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +25 -16
  30. package/dist/cjs/gx-ide-template.cjs.entry.js +9 -4
  31. package/dist/cjs/gx-ide-test.cjs.entry.js +113 -121
  32. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +39 -29
  33. package/dist/cjs/gxg-button-group.cjs.entry.js +1 -1
  34. package/dist/cjs/gxg-color-picker.cjs.entry.js +2 -2
  35. package/dist/cjs/gxg-combo-box_2.cjs.entry.js +1 -1
  36. package/dist/cjs/gxg-form-radio-group.cjs.entry.js +6 -1
  37. package/dist/cjs/gxg-form-textarea.cjs.entry.js +24 -2
  38. package/dist/cjs/gxg-menu-slim.cjs.entry.js +2 -23
  39. package/dist/cjs/gxg-pill.cjs.entry.js +2 -2
  40. package/dist/cjs/gxg-pills.cjs.entry.js +34 -0
  41. package/dist/cjs/gxg-title-editable.cjs.entry.js +116 -0
  42. package/dist/cjs/{gxg-tree_2.cjs.entry.js → gxg-tree-item.cjs.entry.js} +1 -213
  43. package/dist/cjs/gxg-tree-view.cjs.entry.js +165 -0
  44. package/dist/cjs/gxg-tree.cjs.entry.js +218 -0
  45. package/dist/cjs/loader.cjs.js +1 -1
  46. package/dist/collection/collection-manifest.json +25 -18
  47. package/dist/collection/common/config.js +5 -1
  48. package/dist/collection/common/grid.js +1 -0
  49. package/dist/collection/common/render-list-item.js +12 -0
  50. package/dist/collection/components/{container → _helpers/container}/container.css +33 -1
  51. package/dist/collection/components/{container → _helpers/container}/container.js +159 -6
  52. package/dist/collection/components/{entity-selector → _helpers/entity-selector}/entity-selector.js +5 -5
  53. package/dist/collection/components/{list-selector → _helpers/list-selector}/list-selector-item/list-selector-item.css +11 -3
  54. package/dist/collection/components/{list-selector → _helpers/list-selector}/list-selector-item/list-selector-item.js +36 -2
  55. package/dist/collection/components/{list-selector → _helpers/list-selector}/list-selector.js +2 -2
  56. package/dist/collection/components/_helpers/switcher/switch-panel/switch-panel.css +3 -0
  57. package/dist/collection/components/_helpers/switcher/switch-panel/switch-panel.js +18 -0
  58. package/dist/collection/components/_helpers/switcher/switcher.css +3 -0
  59. package/dist/collection/components/_helpers/switcher/switcher.js +18 -0
  60. package/dist/collection/components/_helpers/title/title.css +42 -0
  61. package/dist/collection/components/_helpers/title/title.js +156 -0
  62. package/dist/collection/components/{application-declaration/bpm-app-declaration.css → _starting-template/template.css} +18 -11
  63. package/dist/collection/components/{_template → _starting-template}/template.js +9 -4
  64. package/dist/collection/components/_test/test.css +5 -0
  65. package/dist/collection/components/_test/test.js +128 -212
  66. package/dist/collection/components/{team-dev-commit/team-dev-commit.css → bpm-application-declaration/bpm-app-declaration.css} +33 -37
  67. package/dist/collection/components/{application-declaration → bpm-application-declaration}/bpm-app-declaration.js +11 -6
  68. package/dist/collection/components/{application-declaration → bpm-application-declaration}/gx-ide-assets/bpm-app-declaration/langs/bpm-app-declaration.lang.en.json +1 -1
  69. package/dist/collection/components/create-kb-from-server/create-kb-from-server.css +24 -1
  70. package/dist/collection/components/create-kb-from-server/create-kb-from-server.js +11 -4
  71. package/dist/collection/components/create-kb-from-server/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.en.json +2 -1
  72. package/dist/collection/components/kb-manager-export/gx-ide-assets/kb-manager-export/langs/kb-manager-export.lang.en.json +1 -0
  73. package/dist/collection/components/kb-manager-export/helpers.js +10 -26
  74. package/dist/collection/components/kb-manager-export/kb-manager-export.css +50 -18
  75. package/dist/collection/components/kb-manager-export/kb-manager-export.js +65 -23
  76. package/dist/collection/components/kb-manager-import/gx-ide-assets/kb-manager-import/langs/kb-manager-import.lang.en.json +2 -0
  77. package/dist/collection/components/kb-manager-import/helpers.js +2 -2
  78. package/dist/collection/components/kb-manager-import/kb-manager-import.css +26 -6
  79. package/dist/collection/components/kb-manager-import/kb-manager-import.js +36 -15
  80. package/dist/collection/components/new-environment/new-environment.css +36 -17
  81. package/dist/collection/components/new-environment/new-environment.js +10 -5
  82. package/dist/collection/components/new-kb/new-kb.css +18 -5
  83. package/dist/collection/components/new-kb/new-kb.js +13 -9
  84. package/dist/collection/components/new-object/new-object.css +60 -11
  85. package/dist/collection/components/new-object/new-object.js +24 -5
  86. package/dist/collection/components/object-selector/gx-ide-assets/object-selector/langs/object-selector.lang.en.json +1 -1
  87. package/dist/collection/components/object-selector/object-selector.css +70 -26
  88. package/dist/collection/components/object-selector/object-selector.js +20 -9
  89. package/dist/collection/components/references/references.css +25 -13
  90. package/dist/collection/components/references/references.js +20 -26
  91. package/dist/collection/components/share-kb/gx-ide-assets/share-kb/langs/share-kb.lang.en.json +2 -1
  92. package/dist/collection/components/share-kb/share-kb.css +34 -10
  93. package/dist/collection/components/share-kb/share-kb.js +10 -6
  94. package/dist/collection/components/{team-dev-commit → team-dev/commit}/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.en.json +1 -1
  95. package/dist/collection/components/team-dev/commit/team-dev-commit.css +264 -0
  96. package/dist/collection/components/{team-dev-commit → team-dev/commit}/team-dev-commit.js +44 -16
  97. package/dist/collection/components/{team-dev-select-recent-comment → team-dev/select-recent-comment}/gx-ide-assets/team-dev-select-recent-comment/langs/team-dev-select-recent-comment.lang.en.json +1 -0
  98. package/dist/collection/components/team-dev/select-recent-comment/helpers.js +7 -0
  99. package/dist/collection/components/{team-dev-select-recent-comment → team-dev/select-recent-comment}/team-dev-select-recent-comment.css +20 -2
  100. package/dist/collection/components/{team-dev-select-recent-comment → team-dev/select-recent-comment}/team-dev-select-recent-comment.js +33 -16
  101. package/dist/collection/components/{team-dev-update → team-dev/update}/gx-ide-assets/team-dev-update/langs/team-dev-update.lang.en.json +1 -1
  102. package/dist/collection/components/{team-dev-update → team-dev/update}/team-dev-update.css +46 -41
  103. package/dist/collection/components/{team-dev-update → team-dev/update}/team-dev-update.js +29 -20
  104. package/dist/collection/components/{team-dev-update-partial-selection → team-dev/update-partial-selection}/team-dev-update-partial-selection.css +22 -23
  105. package/dist/collection/components/{team-dev-update-partial-selection → team-dev/update-partial-selection}/team-dev-update-partial-selection.js +30 -5
  106. package/dist/collection/components/{team-dev-update-to-revision → team-dev/update-to-revision}/gx-ide-assets/team-dev-update-to-revision/langs/team-dev-update-to-revision.lang.en.json +1 -1
  107. package/dist/collection/components/{team-dev-update-to-revision → team-dev/update-to-revision}/team-dev-update-to-revision.css +18 -7
  108. package/dist/collection/components/{team-dev-update-to-revision → team-dev/update-to-revision}/team-dev-update-to-revision.js +28 -4
  109. package/dist/collection/components/ww-images/gx-ide-assets/ww-images/langs/ww-images.lang.en.json +4 -2
  110. package/dist/collection/components/ww-images/ww-images.css +103 -61
  111. package/dist/collection/components/ww-images/ww-images.js +55 -28
  112. package/dist/collection/pages/assets/common.js +2 -2
  113. package/dist/components/button-group.js +1 -1
  114. package/dist/components/ch-next-data-modeling-item.js +1 -457
  115. package/dist/components/ch-next-data-modeling-render.js +295 -0
  116. package/dist/components/ch-next-data-modeling.js +1 -27
  117. package/dist/components/ch-tree-view-item.js +6 -0
  118. package/dist/components/ch-tree-view-render-wrapper.js +224 -0
  119. package/dist/components/ch-tree-view-render.js +6 -0
  120. package/dist/components/ch-tree-view.js +6 -0
  121. package/dist/components/combo-box.js +1 -1
  122. package/dist/components/config.js +5 -1
  123. package/dist/components/container.js +61 -9
  124. package/dist/components/date-picker.js +19 -2
  125. package/dist/components/detect-click-outside.js +23 -0
  126. package/dist/components/form-radio-group.js +7 -1
  127. package/dist/components/form-textarea.js +27 -3
  128. package/dist/components/grid.js +1 -0
  129. package/dist/components/gx-ide-bpm-app-declaration.js +52 -41
  130. package/dist/components/gx-ide-create-kb-from-server.js +28 -15
  131. package/dist/components/gx-ide-kb-manager-export.js +90 -74
  132. package/dist/components/gx-ide-kb-manager-import.js +73 -40
  133. package/dist/components/gx-ide-new-environment.js +21 -10
  134. package/dist/components/gx-ide-new-kb.js +24 -14
  135. package/dist/components/gx-ide-new-object.js +24 -13
  136. package/dist/components/gx-ide-object-selector.js +55 -38
  137. package/dist/components/gx-ide-references.js +54 -48
  138. package/dist/components/gx-ide-share-kb.js +27 -17
  139. package/dist/components/gx-ide-status-buttons2.js +1 -1
  140. package/dist/components/gx-ide-switch-panel.d.ts +11 -0
  141. package/dist/components/gx-ide-switch-panel.js +33 -0
  142. package/dist/components/gx-ide-switcher.d.ts +11 -0
  143. package/dist/components/gx-ide-switcher.js +33 -0
  144. package/dist/components/gx-ide-team-dev-commit.js +64 -30
  145. package/dist/components/gx-ide-team-dev-select-recent-comment.js +51 -45
  146. package/dist/components/gx-ide-team-dev-update-partial-selection.js +52 -32
  147. package/dist/components/gx-ide-team-dev-update-to-revision.js +24 -11
  148. package/dist/components/gx-ide-team-dev-update.js +67 -40
  149. package/dist/components/gx-ide-template.js +20 -9
  150. package/dist/components/gx-ide-test.js +126 -159
  151. package/dist/components/gx-ide-title.d.ts +11 -0
  152. package/dist/components/gx-ide-title.js +6 -0
  153. package/dist/components/gx-ide-top-bar.js +1 -1
  154. package/dist/components/gx-ide-ww-images.js +74 -58
  155. package/dist/components/gxg-color-picker.js +2 -2
  156. package/dist/components/gxg-container.js +251 -1
  157. package/dist/components/gxg-grid2.js +1 -1
  158. package/dist/components/gxg-menu-slim-list.js +1 -1
  159. package/dist/components/gxg-menu-slim.js +1 -22
  160. package/dist/components/gxg-pill.js +2 -2
  161. package/dist/components/gxg-pills.js +50 -0
  162. package/dist/components/gxg-title-editable.js +156 -0
  163. package/dist/components/gxg-title.js +1 -1
  164. package/dist/components/gxg-tree-item.js +614 -1
  165. package/dist/components/gxg-tree-view.js +2 -2
  166. package/dist/components/gxg-tree.js +236 -1
  167. package/dist/components/ide-loader.js +1 -1
  168. package/dist/components/index.d.ts +17 -14
  169. package/dist/components/index.js +10 -3
  170. package/dist/components/list-selector-item.js +20 -3
  171. package/dist/components/list-selector.js +1 -1
  172. package/dist/components/next-data-modeling-item.js +466 -0
  173. package/dist/{esm/ch-next-data-modeling.entry.js → components/next-data-modeling.js} +21 -7
  174. package/dist/components/title.js +32 -37
  175. package/dist/{esm/gxg-title.entry.js → components/title2.js} +26 -8
  176. package/dist/components/{tree-x-list-item.js → tree-view-item.js} +9 -9
  177. package/dist/components/{ch-test-tree-x.js → tree-view-render.js} +168 -28
  178. package/dist/components/tree-view.js +410 -440
  179. package/dist/components/tree-view2.js +226 -0
  180. package/dist/esm/{ch-tree-x_3.entry.js → ch-checkbox_4.entry.js} +275 -74
  181. package/dist/esm/ch-grid_8.entry.js +1 -1
  182. package/dist/esm/ch-next-data-modeling-render.entry.js +238 -0
  183. package/dist/esm/{ch-next-data-modeling-item.entry.js → ch-next-data-modeling_2.entry.js} +21 -3
  184. package/dist/esm/ch-tree-view-render-wrapper.entry.js +156 -0
  185. package/dist/esm/{config-9b4321f9.js → config-ee66bdf4.js} +5 -1
  186. package/dist/esm/detect-click-outside-16ce8235.js +23 -0
  187. package/dist/esm/genexus-ide-ui.js +1 -1
  188. package/dist/esm/{grid-1354bf8f.js → grid-9988c857.js} +1 -0
  189. package/dist/esm/gx-ide-bpm-app-declaration.entry.js +12 -7
  190. package/dist/esm/{gxg-form-text.entry.js → gx-ide-container_4.entry.js} +237 -2
  191. package/dist/esm/gx-ide-create-kb-from-server.entry.js +11 -4
  192. package/dist/esm/gx-ide-entity-selector_2.entry.js +18 -2
  193. package/dist/esm/gx-ide-kb-manager-export.entry.js +54 -44
  194. package/dist/esm/gx-ide-kb-manager-import.entry.js +40 -19
  195. package/dist/esm/gx-ide-list-selector_2.entry.js +18 -2
  196. package/dist/esm/gx-ide-new-environment.entry.js +10 -5
  197. package/dist/esm/gx-ide-new-kb.entry.js +14 -10
  198. package/dist/esm/gx-ide-new-object.entry.js +12 -7
  199. package/dist/esm/gx-ide-object-selector.entry.js +21 -10
  200. package/dist/esm/gx-ide-references.entry.js +21 -27
  201. package/dist/esm/gx-ide-share-kb.entry.js +11 -7
  202. package/dist/esm/gx-ide-switch-panel.entry.js +15 -0
  203. package/dist/esm/gx-ide-switcher.entry.js +15 -0
  204. package/dist/esm/gx-ide-team-dev-commit.entry.js +35 -8
  205. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +35 -17
  206. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +13 -5
  207. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +11 -4
  208. package/dist/esm/gx-ide-team-dev-update.entry.js +25 -16
  209. package/dist/esm/gx-ide-template.entry.js +9 -4
  210. package/dist/esm/gx-ide-test.entry.js +114 -122
  211. package/dist/esm/gx-ide-ww-images.entry.js +39 -29
  212. package/dist/esm/gxg-button-group.entry.js +1 -1
  213. package/dist/esm/gxg-color-picker.entry.js +2 -2
  214. package/dist/esm/gxg-combo-box_2.entry.js +1 -1
  215. package/dist/esm/gxg-form-radio-group.entry.js +6 -1
  216. package/dist/esm/gxg-form-textarea.entry.js +24 -2
  217. package/dist/esm/gxg-menu-slim.entry.js +1 -22
  218. package/dist/esm/gxg-pill.entry.js +2 -2
  219. package/dist/esm/gxg-pills.entry.js +30 -0
  220. package/dist/esm/gxg-title-editable.entry.js +112 -0
  221. package/dist/{components/gxg-tree-item2.js → esm/gxg-tree-item.entry.js} +10 -80
  222. package/dist/esm/gxg-tree-view.entry.js +161 -0
  223. package/dist/{components/gxg-tree2.js → esm/gxg-tree.entry.js} +8 -32
  224. package/dist/esm/loader.js +1 -1
  225. package/dist/genexus-ide-ui/genexus-ide-ui.css +4 -4
  226. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  227. package/dist/genexus-ide-ui/gx-ide-assets/bpm-app-declaration/langs/bpm-app-declaration.lang.en.json +1 -1
  228. package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.en.json +2 -1
  229. package/dist/genexus-ide-ui/gx-ide-assets/kb-manager-export/langs/kb-manager-export.lang.en.json +1 -0
  230. package/dist/genexus-ide-ui/gx-ide-assets/kb-manager-import/langs/kb-manager-import.lang.en.json +2 -0
  231. package/dist/genexus-ide-ui/gx-ide-assets/object-selector/langs/object-selector.lang.en.json +1 -1
  232. package/dist/genexus-ide-ui/gx-ide-assets/share-kb/langs/share-kb.lang.en.json +2 -1
  233. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.en.json +1 -1
  234. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-select-recent-comment/langs/team-dev-select-recent-comment.lang.en.json +1 -0
  235. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-update/langs/team-dev-update.lang.en.json +1 -1
  236. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-update-to-revision/langs/team-dev-update-to-revision.lang.en.json +1 -1
  237. package/dist/genexus-ide-ui/gx-ide-assets/ww-images/langs/ww-images.lang.en.json +4 -2
  238. package/dist/genexus-ide-ui/icon-assets/gemini-tools/edit.svg +1 -1
  239. package/dist/genexus-ide-ui/p-0f1388e1.entry.js +1 -0
  240. package/dist/genexus-ide-ui/p-13177896.entry.js +1 -0
  241. package/dist/genexus-ide-ui/p-19fef562.entry.js +1 -0
  242. package/dist/genexus-ide-ui/p-1b51da5e.entry.js +1 -0
  243. package/dist/genexus-ide-ui/p-25aa052f.js +1 -0
  244. package/dist/genexus-ide-ui/p-2781b92a.entry.js +1 -0
  245. package/dist/genexus-ide-ui/p-283afc3b.entry.js +1 -0
  246. package/dist/genexus-ide-ui/p-2c17e71d.entry.js +1 -0
  247. package/dist/genexus-ide-ui/p-2fbab2a9.js +1 -0
  248. package/dist/genexus-ide-ui/p-38c18db5.js +1 -0
  249. package/dist/genexus-ide-ui/p-40a57a36.entry.js +1 -0
  250. package/dist/genexus-ide-ui/p-42209f9f.entry.js +1 -0
  251. package/dist/genexus-ide-ui/p-4d506c74.entry.js +1 -0
  252. package/dist/genexus-ide-ui/p-527ace08.entry.js +1 -0
  253. package/dist/genexus-ide-ui/{p-a94dd4c1.entry.js → p-56935fba.entry.js} +1 -1
  254. package/dist/genexus-ide-ui/p-5cc7c201.entry.js +1 -0
  255. package/dist/genexus-ide-ui/p-606fee7b.entry.js +1 -0
  256. package/dist/genexus-ide-ui/p-636d02fa.entry.js +1 -0
  257. package/dist/genexus-ide-ui/p-68ec655f.entry.js +1 -0
  258. package/dist/genexus-ide-ui/p-71b14079.entry.js +1 -0
  259. package/dist/genexus-ide-ui/p-780caf92.entry.js +1 -0
  260. package/dist/genexus-ide-ui/p-7b63be93.entry.js +1 -0
  261. package/dist/genexus-ide-ui/p-7c44a3c8.entry.js +1 -0
  262. package/dist/genexus-ide-ui/p-8a29aa0e.entry.js +1 -0
  263. package/dist/genexus-ide-ui/p-8a7c4561.entry.js +1 -0
  264. package/dist/genexus-ide-ui/p-9380b713.entry.js +1 -0
  265. package/dist/genexus-ide-ui/p-a2cb0e6b.entry.js +1 -0
  266. package/dist/genexus-ide-ui/p-a9c8b373.entry.js +1 -0
  267. package/dist/genexus-ide-ui/p-aacec189.entry.js +1 -0
  268. package/dist/genexus-ide-ui/{p-178545b2.entry.js → p-abfc0ad8.entry.js} +1 -1
  269. package/dist/genexus-ide-ui/p-b0cb9690.entry.js +1 -0
  270. package/dist/genexus-ide-ui/p-b819706e.entry.js +1 -0
  271. package/dist/genexus-ide-ui/p-bacd879c.entry.js +1 -0
  272. package/dist/genexus-ide-ui/{p-9c9a28b4.entry.js → p-c6b514cb.entry.js} +1 -1
  273. package/dist/genexus-ide-ui/p-d9a5b3d6.entry.js +1 -0
  274. package/dist/genexus-ide-ui/p-df02f70a.entry.js +1 -0
  275. package/dist/genexus-ide-ui/p-df744a68.entry.js +1 -0
  276. package/dist/genexus-ide-ui/p-f3837d78.entry.js +1 -0
  277. package/dist/genexus-ide-ui/p-f69d8c9f.entry.js +1 -0
  278. package/dist/genexus-ide-ui/p-f7aa606a.entry.js +1 -0
  279. package/dist/genexus-ide-ui/p-fbb1cd20.entry.js +1 -0
  280. package/dist/genexus-ide-ui/p-fc6b970d.entry.js +1 -0
  281. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/next/data-modeling-render/next-data-modeling-render.css +3 -0
  282. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/renders/tree-view/tree-view-render.css +3 -0
  283. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/test/test-tree-view/tree-view-render-wrapper.css +0 -0
  284. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/tree-view/tree-view/tree-view.css +45 -0
  285. package/dist/node_modules/@genexus/gemini/dist/collection/components/button-group/button-group.css +2 -2
  286. package/dist/node_modules/@genexus/gemini/dist/collection/components/combo-box/combo-box.css +3 -0
  287. package/dist/node_modules/@genexus/gemini/dist/collection/components/date-picker/date-picker.css +9 -0
  288. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-radio-group/form-radio-group.css +4 -0
  289. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-textarea/form-textarea.css +28 -0
  290. package/dist/node_modules/@genexus/gemini/dist/collection/components/grid/gxg-grid.css +6 -3
  291. package/dist/node_modules/@genexus/gemini/dist/collection/components/pills/pills.css +9 -0
  292. package/dist/node_modules/@genexus/gemini/dist/collection/components/title-editable/title-editable.css +88 -0
  293. package/dist/node_modules/@genexus/gemini/dist/collection/components/tree-item/gxg-tree-item.css +1 -1
  294. package/dist/node_modules/@genexus/gemini/dist/collection/components/tree-view/tree-view.css +88 -90
  295. package/dist/types/common/config.d.ts +4 -0
  296. package/dist/types/common/grid.d.ts +1 -0
  297. package/dist/types/common/helpers.d.ts +2 -2
  298. package/dist/types/common/render-list-item.d.ts +2 -0
  299. package/dist/types/components/{container → _helpers/container}/container.d.ts +34 -0
  300. package/dist/types/components/{entity-selector → _helpers/entity-selector}/entity-selector.d.ts +3 -3
  301. package/dist/types/components/{list-selector → _helpers/list-selector}/list-selector-item/list-selector-item.d.ts +8 -1
  302. package/dist/types/components/{list-selector → _helpers/list-selector}/list-selector.d.ts +3 -3
  303. package/dist/types/components/{status-buttons → _helpers/status-buttons}/gx-ide-status-buttons.d.ts +1 -1
  304. package/dist/types/components/_helpers/switcher/switch-panel/switch-panel.d.ts +3 -0
  305. package/dist/types/components/_helpers/switcher/switcher.d.ts +3 -0
  306. package/dist/types/components/_helpers/title/title.d.ts +34 -0
  307. package/dist/types/components/{_template → _starting-template}/template.d.ts +2 -1
  308. package/dist/types/components/_test/test.d.ts +8 -33
  309. package/dist/types/components/{application-declaration → bpm-application-declaration}/bpm-app-declaration.d.ts +2 -1
  310. package/dist/types/components/create-kb-from-server/create-kb-from-server.d.ts +3 -1
  311. package/dist/types/components/kb-manager-export/helpers.d.ts +4 -4
  312. package/dist/types/components/kb-manager-export/kb-manager-export.d.ts +16 -5
  313. package/dist/types/components/kb-manager-import/helpers.d.ts +3 -3
  314. package/dist/types/components/kb-manager-import/kb-manager-import.d.ts +8 -7
  315. package/dist/types/components/new-environment/new-environment.d.ts +2 -1
  316. package/dist/types/components/new-kb/new-kb.d.ts +2 -1
  317. package/dist/types/components/new-object/new-object.d.ts +6 -0
  318. package/dist/types/components/object-selector/object-selector.d.ts +2 -1
  319. package/dist/types/components/references/helpers.d.ts +2 -2
  320. package/dist/types/components/references/references.d.ts +6 -6
  321. package/dist/types/components/share-kb/share-kb.d.ts +2 -1
  322. package/dist/types/components/{team-dev-commit → team-dev/commit}/team-dev-commit.d.ts +6 -3
  323. package/dist/types/components/team-dev/select-recent-comment/helpers.d.ts +2 -0
  324. package/dist/types/components/{team-dev-select-recent-comment → team-dev/select-recent-comment}/team-dev-select-recent-comment.d.ts +7 -2
  325. package/dist/types/components/{team-dev-update → team-dev/update}/team-dev-update.d.ts +5 -4
  326. package/dist/types/components/{team-dev-update-partial-selection → team-dev/update-partial-selection}/team-dev-update-partial-selection.d.ts +7 -1
  327. package/dist/types/components/{team-dev-update-to-revision → team-dev/update-to-revision}/team-dev-update-to-revision.d.ts +7 -1
  328. package/dist/types/components/ww-images/ww-images.d.ts +9 -6
  329. package/dist/types/components.d.ts +185 -65
  330. package/package.json +3 -3
  331. package/dist/cjs/ch-checkbox.cjs.entry.js +0 -93
  332. package/dist/cjs/ch-next-data-modeling.cjs.entry.js +0 -19
  333. package/dist/cjs/ch-test-tree-x.cjs.entry.js +0 -458
  334. package/dist/cjs/gx-ide-container.cjs.entry.js +0 -132
  335. package/dist/cjs/gxg-title.cjs.entry.js +0 -51
  336. package/dist/collection/components/_template/template.css +0 -151
  337. package/dist/components/ch-tree-x-list-item.js +0 -6
  338. package/dist/components/ch-tree-x.js +0 -6
  339. package/dist/components/container2.js +0 -253
  340. package/dist/components/tree-x.js +0 -504
  341. package/dist/esm/ch-checkbox.entry.js +0 -89
  342. package/dist/esm/ch-test-tree-x.entry.js +0 -454
  343. package/dist/esm/gx-ide-container.entry.js +0 -128
  344. package/dist/esm/gxg-tree_2.entry.js +0 -757
  345. package/dist/genexus-ide-ui/p-024df897.entry.js +0 -1
  346. package/dist/genexus-ide-ui/p-0341fbab.entry.js +0 -1
  347. package/dist/genexus-ide-ui/p-092ccacd.entry.js +0 -1
  348. package/dist/genexus-ide-ui/p-13a5bc23.entry.js +0 -1
  349. package/dist/genexus-ide-ui/p-163a93a4.entry.js +0 -1
  350. package/dist/genexus-ide-ui/p-1ad68b23.entry.js +0 -3
  351. package/dist/genexus-ide-ui/p-1b23aee7.entry.js +0 -1
  352. package/dist/genexus-ide-ui/p-2142874f.entry.js +0 -1
  353. package/dist/genexus-ide-ui/p-2b7d4cca.entry.js +0 -1
  354. package/dist/genexus-ide-ui/p-481312bc.entry.js +0 -1
  355. package/dist/genexus-ide-ui/p-4e601007.entry.js +0 -1
  356. package/dist/genexus-ide-ui/p-53e5a04f.entry.js +0 -1
  357. package/dist/genexus-ide-ui/p-5755f985.entry.js +0 -1
  358. package/dist/genexus-ide-ui/p-734d3baa.entry.js +0 -1
  359. package/dist/genexus-ide-ui/p-9457280f.js +0 -1
  360. package/dist/genexus-ide-ui/p-97d634d5.entry.js +0 -1
  361. package/dist/genexus-ide-ui/p-9beeb9c5.entry.js +0 -1
  362. package/dist/genexus-ide-ui/p-9e530c7d.entry.js +0 -1
  363. package/dist/genexus-ide-ui/p-a3171fdf.entry.js +0 -1
  364. package/dist/genexus-ide-ui/p-aaa7e647.entry.js +0 -1
  365. package/dist/genexus-ide-ui/p-ac3b8e90.entry.js +0 -1
  366. package/dist/genexus-ide-ui/p-ad5040e4.entry.js +0 -1
  367. package/dist/genexus-ide-ui/p-b2ea372b.entry.js +0 -1
  368. package/dist/genexus-ide-ui/p-b685ffba.entry.js +0 -1
  369. package/dist/genexus-ide-ui/p-c6a7b93c.js +0 -1
  370. package/dist/genexus-ide-ui/p-c7e11c6b.entry.js +0 -1
  371. package/dist/genexus-ide-ui/p-cd00ba19.entry.js +0 -1
  372. package/dist/genexus-ide-ui/p-d04d634e.entry.js +0 -1
  373. package/dist/genexus-ide-ui/p-d3d14461.entry.js +0 -1
  374. package/dist/genexus-ide-ui/p-d8096d40.entry.js +0 -1
  375. package/dist/genexus-ide-ui/p-de28d44c.entry.js +0 -1
  376. package/dist/genexus-ide-ui/p-f16b53ea.entry.js +0 -1
  377. package/dist/genexus-ide-ui/p-f5ef55c5.entry.js +0 -1
  378. package/dist/genexus-ide-ui/p-f83093aa.entry.js +0 -1
  379. package/dist/genexus-ide-ui/p-ffb82b40.entry.js +0 -1
  380. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/test/test-tree-x.css +0 -3
  381. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/tree-view/tree-x/tree-x.css +0 -45
  382. /package/dist/collection/components/{directory-selector → _helpers/directory-selector}/directory-selector.css +0 -0
  383. /package/dist/collection/components/{directory-selector → _helpers/directory-selector}/directory-selector.js +0 -0
  384. /package/dist/collection/components/{entity-selector → _helpers/entity-selector}/entity-selector.css +0 -0
  385. /package/dist/collection/components/{list-selector → _helpers/list-selector}/list-selector.css +0 -0
  386. /package/dist/collection/components/{status-buttons → _helpers/status-buttons}/gx-ide-status-buttons.css +0 -0
  387. /package/dist/collection/components/{status-buttons → _helpers/status-buttons}/gx-ide-status-buttons.js +0 -0
  388. /package/dist/collection/components/{top-bar → _helpers/top-bar}/top-bar.css +0 -0
  389. /package/dist/collection/components/{top-bar → _helpers/top-bar}/top-bar.js +0 -0
  390. /package/dist/collection/components/{_template → _starting-template}/gx-ide-assets/template/langs/template.lang.en.json +0 -0
  391. /package/dist/collection/components/{_template → _starting-template}/gx-ide-assets/template/langs/template.lang.ja.json +0 -0
  392. /package/dist/collection/components/{_template → _starting-template}/gx-ide-assets/template/langs/template.lang.zh.json +0 -0
  393. /package/dist/collection/components/{application-declaration → bpm-application-declaration}/gx-ide-assets/bpm-app-declaration/langs/bpm-app-declaration.lang.ja.json +0 -0
  394. /package/dist/collection/components/{application-declaration → bpm-application-declaration}/gx-ide-assets/bpm-app-declaration/langs/bpm-app-declaration.lang.zh.json +0 -0
  395. /package/dist/collection/components/{application-declaration → bpm-application-declaration}/helpers.js +0 -0
  396. /package/dist/collection/components/{team-dev-commit → team-dev/commit}/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.ja.json +0 -0
  397. /package/dist/collection/components/{team-dev-commit → team-dev/commit}/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.zh.json +0 -0
  398. /package/dist/collection/components/{team-dev-select-recent-comment → team-dev/select-recent-comment}/gx-ide-assets/team-dev-select-recent-comment/langs/team-dev-select-recent-comment.lang.ja.json +0 -0
  399. /package/dist/collection/components/{team-dev-select-recent-comment → team-dev/select-recent-comment}/gx-ide-assets/team-dev-select-recent-comment/langs/team-dev-select-recent-comment.lang.zh.json +0 -0
  400. /package/dist/collection/components/{team-dev-update → team-dev/update}/gx-ide-assets/team-dev-update/langs/team-dev-update.lang.ja.json +0 -0
  401. /package/dist/collection/components/{team-dev-update → team-dev/update}/gx-ide-assets/team-dev-update/langs/team-dev-update.lang.zh.json +0 -0
  402. /package/dist/collection/components/{team-dev-update-partial-selection → team-dev/update-partial-selection}/gx-ide-assets/team-dev-update-partial-selection/langs/team-dev-update-partial-selection.lang.en.json +0 -0
  403. /package/dist/collection/components/{team-dev-update-partial-selection → team-dev/update-partial-selection}/gx-ide-assets/team-dev-update-partial-selection/langs/team-dev-update-partial-selection.lang.ja.json +0 -0
  404. /package/dist/collection/components/{team-dev-update-partial-selection → team-dev/update-partial-selection}/gx-ide-assets/team-dev-update-partial-selection/langs/team-dev-update-partial-selection.lang.zh.json +0 -0
  405. /package/dist/collection/components/{team-dev-update-to-revision → team-dev/update-to-revision}/gx-ide-assets/team-dev-update-to-revision/langs/team-dev-update-to-revision.lang.ja.json +0 -0
  406. /package/dist/collection/components/{team-dev-update-to-revision → team-dev/update-to-revision}/gx-ide-assets/team-dev-update-to-revision/langs/team-dev-update-to-revision.lang.zh.json +0 -0
  407. /package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/tree-view/{tree-x-list-item/tree-x-list-item.css → tree-view-item/tree-view-item.css} +0 -0
  408. /package/dist/node_modules/@genexus/gemini/dist/collection/components/{pill → pills}/pill.css +0 -0
  409. /package/dist/types/components/{directory-selector → _helpers/directory-selector}/directory-selector.d.ts +0 -0
  410. /package/dist/types/components/{top-bar → _helpers/top-bar}/top-bar.d.ts +0 -0
  411. /package/dist/types/components/{application-declaration → bpm-application-declaration}/helpers.d.ts +0 -0
@@ -3,8 +3,94 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-5a32426a.js');
6
+ const reserverdNames = require('./reserverd-names-1b00889a.js');
6
7
  const helpers = require('./helpers-291cb1cb.js');
7
8
 
9
+ const checkboxCss = "*,::before,::after{box-sizing:border-box}:host{display:flex;align-items:center;align-self:stretch;outline:unset;touch-action:manipulation;user-select:none}:host(.ch-checkbox--actionable) :is(.input,.label){cursor:pointer}.container{position:relative;width:min(1em, 20px);height:min(1em, 20px);border:1px solid var(--option-border-color, currentColor);border-radius:18.75%}.container--checked{background-color:var(--option-checked-color, #ffffff00)}.container:focus-within{box-shadow:0 0 1px 1px color-mix(in srgb, currentColor 25%, transparent)}.input{display:flex;width:100%;height:100%;opacity:0;margin:0;padding:0}.option{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);width:50%;height:50%;background-color:currentColor;opacity:0;pointer-events:none}.option--checked{opacity:1;-webkit-mask:url(\"data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8' %3E%3Cpath fill='currentColor' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z' /%3E%3C/svg%3E\")}.option--indeterminate{opacity:1}.label{margin-inline-start:min(0.35em, 7px)}";
10
+
11
+ const CHECKBOX_ID = "checkbox";
12
+ const PARTS = (checked, indeterminate) => `${checked ? " checked" : ""}${indeterminate ? " indeterminate" : ""}`;
13
+ const CheckBox = class {
14
+ constructor(hostRef) {
15
+ index.registerInstance(this, hostRef);
16
+ this.click = index.createEvent(this, "click", 7);
17
+ this.input = index.createEvent(this, "input", 7);
18
+ /**
19
+ * This attribute lets you specify if the element is disabled.
20
+ * If disabled, it will not fire any user interaction related event
21
+ * (for example, click event).
22
+ */
23
+ this.disabled = false;
24
+ /**
25
+ * True to highlight control when an action is fired.
26
+ */
27
+ this.highlightable = false;
28
+ /**
29
+ * `true` if the control's value is indeterminate.
30
+ */
31
+ this.indeterminate = false;
32
+ /**
33
+ * This attribute indicates that the user cannot modify the value of the control.
34
+ * Same as [readonly](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-readonly)
35
+ * attribute for `input` elements.
36
+ */
37
+ this.readonly = false;
38
+ this.getValue = (checked) => checked ? this.checkedValue : this.unCheckedValue;
39
+ /**
40
+ * Checks if it is necessary to prevent the click from bubbling
41
+ */
42
+ this.handleClick = (event) => {
43
+ if (this.readonly || this.disabled) {
44
+ return;
45
+ }
46
+ event.stopPropagation();
47
+ };
48
+ this.handleChange = (event) => {
49
+ event.stopPropagation();
50
+ const inputRef = event.target;
51
+ const checked = inputRef.checked;
52
+ const value = this.getValue(checked);
53
+ this.checked = checked;
54
+ this.value = value;
55
+ inputRef.value = value; // Update input's value before emitting the event
56
+ this.input.emit(event);
57
+ if (this.highlightable) {
58
+ this.click.emit();
59
+ }
60
+ };
61
+ }
62
+ valueChanged() {
63
+ this.checked = this.value === this.checkedValue;
64
+ }
65
+ componentWillLoad() {
66
+ this.checked = this.value === this.checkedValue;
67
+ }
68
+ render() {
69
+ var _a;
70
+ const additionalParts = PARTS(this.checked, this.indeterminate);
71
+ return (index.h(index.Host, { class: {
72
+ [reserverdNames.DISABLED_CLASS]: this.disabled,
73
+ "ch-checkbox--actionable": (!this.readonly && !this.disabled) ||
74
+ (this.readonly && this.highlightable)
75
+ } }, index.h("div", { class: {
76
+ container: true,
77
+ "container--checked": this.checked
78
+ }, part: `container${additionalParts}` }, index.h("input", { "aria-label": ((_a = this.accessibleName) === null || _a === void 0 ? void 0 : _a.trim()) !== "" &&
79
+ this.accessibleName !== this.caption
80
+ ? this.accessibleName
81
+ : null, id: this.caption ? CHECKBOX_ID : null, class: "input", part: "input", type: "checkbox", checked: this.checked, disabled: this.disabled || this.readonly, indeterminate: this.indeterminate, value: this.value, onClick: this.handleClick, onInput: this.handleChange }), index.h("div", { class: {
82
+ option: true,
83
+ "option--checked": this.checked && !this.indeterminate,
84
+ "option--indeterminate": this.indeterminate
85
+ }, part: `option${additionalParts}`, "aria-hidden": "true" })), this.caption && (index.h("label", { class: "label", part: "label", htmlFor: CHECKBOX_ID, onClick: this.handleClick }, this.caption))));
86
+ }
87
+ get element() { return index.getElement(this); }
88
+ static get watchers() { return {
89
+ "value": ["valueChanged"]
90
+ }; }
91
+ };
92
+ CheckBox.style = checkboxCss;
93
+
8
94
  const scrollToEdge = (event, container, scrollSpeed, scrollThreshold) => {
9
95
  const mousePositionY = event.clientY - container.getBoundingClientRect().top;
10
96
  const containerHeight = container.clientHeight;
@@ -19,10 +105,10 @@ const scrollToEdge = (event, container, scrollSpeed, scrollThreshold) => {
19
105
  }
20
106
  };
21
107
 
22
- const treeXCss = "ch-tree-x{display:flex;position:relative;width:100%;overflow:auto}ch-tree-x>.ch-tree-x-container{position:absolute;inset:0}ch-tree-x.ch-tree-x-dragging-item ch-tree-x-list-item{pointer-events:var(--ch-tree-x-pointer-events, all)}ch-tree-x.ch-tree-x-dragging-item .ch-tree-x-list-item--deny-drop{pointer-events:none}ch-tree-x.ch-tree-x--dragging-selected-items ch-tree-x-list-item[selected]{--ch-tree-x-pointer-events:none}ch-tree-x.ch-tree-x-waiting-drop-processing{cursor:wait}ch-tree-x.ch-tree-x-waiting-drop-processing>.ch-tree-x-container{pointer-events:none}.ch-tree-x-drag-info{--rtl-offset:16px;position:fixed;left:0;top:0;transform:translate(calc(var(--ch-tree-x-dragging-item-x) + var(--rtl-offset)), calc(var(--ch-tree-x-dragging-item-y) + 8px));pointer-events:none;z-index:1;animation:ch-tree-x-drag-info-fade-in 10ms}@keyframes ch-tree-x-drag-info-fade-in{0%,100%{opacity:0}}html[dir=rtl] .ch-tree-x-drag-info{--rtl-offset:-100%}";
108
+ const treeViewCss = "ch-tree-view{display:flex;position:relative;width:100%;overflow:auto}ch-tree-view>.ch-tree-view-container{position:absolute;inset:0}ch-tree-view.ch-tree-view-dragging-item ch-tree-view-item{pointer-events:var(--ch-tree-view-pointer-events, all)}ch-tree-view.ch-tree-view-dragging-item .ch-tree-view-list-item--deny-drop{pointer-events:none}ch-tree-view.ch-tree-view--dragging-selected-items ch-tree-view-item[selected]{--ch-tree-view-pointer-events:none}ch-tree-view.ch-tree-view-waiting-drop-processing{cursor:wait}ch-tree-view.ch-tree-view-waiting-drop-processing>.ch-tree-view-container{pointer-events:none}.ch-tree-view-drag-info{--rtl-offset:16px;position:fixed;left:0;top:0;transform:translate(calc(var(--ch-tree-view-dragging-item-x) + var(--rtl-offset)), calc(var(--ch-tree-view-dragging-item-y) + 8px));pointer-events:none;z-index:1;animation:ch-tree-view-drag-info-fade-in 10ms}@keyframes ch-tree-view-drag-info-fade-in{0%,100%{opacity:0}}html[dir=rtl] .ch-tree-view-drag-info{--rtl-offset:-100%}";
23
109
 
24
- const TREE_ITEM_TAG_NAME$1 = "ch-tree-x-list-item";
25
- const TREE_TAG_NAME = "ch-tree-x";
110
+ const TREE_ITEM_TAG_NAME$1 = "ch-tree-view-item";
111
+ const TREE_TAG_NAME = "ch-tree-view";
26
112
  // Selectors
27
113
  // const CHECKED_ITEMS = `${TREE_ITEM_TAG_NAME}[checked]`;
28
114
  const TEXT_FORMAT = "text/plain";
@@ -33,9 +119,9 @@ const isTreeItem = (element) => element.tagName.toLowerCase() === TREE_ITEM_TAG_
33
119
  const getFocusedTreeItem = () => helpers.focusComposedPath().find(isTreeItem);
34
120
  const canMoveTreeItemFocus = (treeItem) => treeItem && !treeItem.editing;
35
121
  const getDroppableZoneKey = (newContainerId, draggedItems) => `"newContainerId":"${newContainerId}","metadata":"${JSON.stringify(draggedItems)}"`;
36
- const POSITION_X_DRAG_CUSTOM_VAR = "--ch-tree-x-dragging-item-x";
37
- const POSITION_Y_DRAG_CUSTOM_VAR = "--ch-tree-x-dragging-item-y";
38
- const ChTreeX = class {
122
+ const POSITION_X_DRAG_CUSTOM_VAR = "--ch-tree-view-dragging-item-x";
123
+ const POSITION_Y_DRAG_CUSTOM_VAR = "--ch-tree-view-dragging-item-y";
124
+ const ChTreeView = class {
39
125
  constructor(hostRef) {
40
126
  index.registerInstance(this, hostRef);
41
127
  this.droppableZoneEnter = index.createEvent(this, "droppableZoneEnter", 7);
@@ -133,7 +219,7 @@ const ChTreeX = class {
133
219
  // async getCheckedItems(): Promise<CheckedTreeItemInfo[]> {
134
220
  // const checkedItems = Array.from(
135
221
  // this.el.querySelectorAll(CHECKED_ITEMS)
136
- // ) as HTMLChTreeXListItemElement[];
222
+ // ) as HTMLChTreeViewItemElement[];
137
223
  // return checkedItems.map(item => ({
138
224
  // id: item.id,
139
225
  // caption: item.caption,
@@ -471,22 +557,22 @@ const ChTreeX = class {
471
557
  }
472
558
  render() {
473
559
  return (index.h(index.Host, { class: {
474
- "ch-tree-x-dragging-item": this.draggingInTheDocument,
475
- "ch-tree-x-not-dragging-item": !this.draggingInTheDocument,
476
- "ch-tree-x--dragging-selected-items": this.draggingInTree && this.draggingSelectedItems,
477
- "ch-tree-x-waiting-drop-processing": this.waitDropProcessing
478
- } }, index.h("div", { role: "tree", part: "tree-x-container", "aria-multiselectable": this.multiSelection.toString(), class: "ch-tree-x-container" }, index.h("slot", null)), this.draggingInTree && (index.h("span", { "aria-hidden": "true", class: "ch-tree-x-drag-info" }, this.dragInfo))));
560
+ "ch-tree-view-dragging-item": this.draggingInTheDocument,
561
+ "ch-tree-view-not-dragging-item": !this.draggingInTheDocument,
562
+ "ch-tree-view--dragging-selected-items": this.draggingInTree && this.draggingSelectedItems,
563
+ "ch-tree-view-waiting-drop-processing": this.waitDropProcessing
564
+ } }, index.h("div", { role: "tree", part: "tree-x-container", "aria-multiselectable": this.multiSelection.toString(), class: "ch-tree-view-container" }, index.h("slot", null)), this.draggingInTree && (index.h("span", { "aria-hidden": "true", class: "ch-tree-view-drag-info" }, this.dragInfo))));
479
565
  }
480
566
  get el() { return index.getElement(this); }
481
567
  };
482
- ChTreeX.style = treeXCss;
568
+ ChTreeView.style = treeViewCss;
483
569
 
484
- const treeXListItemCss = ":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}";
570
+ 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}";
485
571
 
486
572
  const resetDragImage = new Image();
487
573
  const INITIAL_LEVEL = 0;
488
574
  // Selectors
489
- const TREE_ITEM_TAG_NAME = "ch-tree-x-list-item";
575
+ const TREE_ITEM_TAG_NAME = "ch-tree-view-item";
490
576
  const DIRECT_TREE_ITEM_CHILDREN = `:scope>${TREE_ITEM_TAG_NAME}`;
491
577
  const FIRST_ENABLED_SUB_ITEM = `${TREE_ITEM_TAG_NAME}:not([disabled])`;
492
578
  const LAST_SUB_ITEM = `:scope>${TREE_ITEM_TAG_NAME}:last-child`;
@@ -505,7 +591,7 @@ const CHECKBOX_EXPORT_PARTS = [
505
591
  ]
506
592
  .map(getCheckboxExportPart)
507
593
  .join(",");
508
- const ChTreeXListItem = class {
594
+ const ChTreeViewItem = class {
509
595
  constructor(hostRef) {
510
596
  index.registerInstance(this, hostRef);
511
597
  this.checkboxChange = index.createEvent(this, "checkboxChange", 7);
@@ -1064,11 +1150,44 @@ const ChTreeXListItem = class {
1064
1150
  "showLines": ["handleShowLinesChange"]
1065
1151
  }; }
1066
1152
  };
1067
- ChTreeXListItem.style = treeXListItemCss;
1153
+ ChTreeViewItem.style = treeViewItemCss;
1068
1154
 
1069
- const resolveImgPath = (iconAssetsPath, img) => `${iconAssetsPath}/${img}.svg`;
1155
+ const filterWithCamelCase = (stringToFilter, filter, camelCase) => camelCase
1156
+ ? stringToFilter.includes(filter)
1157
+ : stringToFilter.toLowerCase().includes(filter.toLowerCase());
1158
+ const filterWithString = (stringToFilter, filter, filterOptions) => filterOptions.regularExpression
1159
+ ? stringToFilter.match(filter) !== null
1160
+ : filterWithCamelCase(stringToFilter, filter, filterOptions.camelCase);
1161
+ const filterDictionary = {
1162
+ caption: (item, filterInfo) => {
1163
+ var _a;
1164
+ return filterInfo.filter
1165
+ ? filterWithString((_a = item.caption) !== null && _a !== void 0 ? _a : "", filterInfo.filter, filterInfo.filterOptions)
1166
+ : true;
1167
+ },
1168
+ checked: (item, filterInfo) => {
1169
+ var _a, _b;
1170
+ return ((_a = item.checkbox) !== null && _a !== void 0 ? _a : filterInfo.defaultCheckbox) &&
1171
+ !item.indeterminate &&
1172
+ ((_b = item.checked) !== null && _b !== void 0 ? _b : filterInfo.defaultChecked);
1173
+ },
1174
+ "id-list": (item, filterInfo) => filterInfo.filterList.includes(item.id),
1175
+ metadata: (item, filterInfo) => {
1176
+ var _a;
1177
+ return filterInfo.filter
1178
+ ? filterWithString((_a = item.metadata) !== null && _a !== void 0 ? _a : "", filterInfo.filter, filterInfo.filterOptions)
1179
+ : true;
1180
+ },
1181
+ none: () => true,
1182
+ unchecked: (item, filterInfo) => {
1183
+ var _a, _b;
1184
+ return ((_a = item.checkbox) !== null && _a !== void 0 ? _a : filterInfo.defaultCheckbox) &&
1185
+ !item.indeterminate &&
1186
+ !((_b = item.checked) !== null && _b !== void 0 ? _b : filterInfo.defaultChecked);
1187
+ }
1188
+ };
1070
1189
 
1071
- const treeViewCss = ":root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em}.gxg-title-01--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-on-primary)}.gxg-title-02{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em}.gxg-title-02--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em;color:var(--color-on-primary)}.gxg-title-03{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em}.gxg-title-03--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em;color:var(--color-on-primary)}.gxg-title-04{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em}.gxg-title-04--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-on-primary)}.gxg-title-05{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;line-height:1.556em}.gxg-title-05--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;line-height:1.556em;color:var(--color-on-primary)}.gxg-text{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em}.gxg-text--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-on-primary)}.gxg-text--gray{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--gray-05)}.gxg-quote{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;font-style:italic}.gxg-quote--negative{color:var(--color-on-primary)}.gxg-link{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-primary);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--color-primary-hover)}.gxg-link:active{color:var(--color-primary-active)}.gxg-link-gray{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-primary);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--gray-04)}.gxg-link-gray:hover{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-primary);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--gray-04);color:var(--gray-06)}.gxg-alert-error{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-error-dark);display:inline-block}.gxg-alert-warning{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-warning-dark);display:inline-block}.gxg-alert-success{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-success-dark);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--font-family-primary) !important;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm) !important;letter-spacing:var(--letter-spacing-xs);color:var(--color-primary-enabled);text-align:center;line-height:1.455em}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-button-styles{font-family:var(--font-family-primary) !important;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm) !important;letter-spacing:var(--letter-spacing-xs);color:var(--color-primary-enabled);text-align:center;line-height:1.455em}.gxg-scrollbar{}.gxg-scrollbar::-webkit-scrollbar{width:var(--gxg-scrollbar-width, 6px)}.gxg-scrollbar::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background, --gray-02);border-radius:var(--gxg-scrollbar-track-border-radius, 10px)}.gxg-scrollbar::-webkit-scrollbar-thumb{background:var(--gxg-scrollbar-track-thumb-background, --gray-05);border-radius:var(--gxg-scrollbar-track-thumb-radius, 10px)}.gxg-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--gxg-scrollbar-track-thumb-hover-background, --gray-04);cursor:pointer}gxg-tree-view{font-family:var(--font-family-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-regular);color:var(--color-on-background);display:contents}gxg-tree-view ch-tree-x .ch-tree-x-container{padding:var(--spacing-comp-01)}.tree-view{}.tree-view::-webkit-scrollbar{width:var(--gxg-scrollbar-width, 6px)}.tree-view::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background, --gray-02);border-radius:var(--gxg-scrollbar-track-border-radius, 10px)}.tree-view::-webkit-scrollbar-thumb{background:var(--gxg-scrollbar-track-thumb-background, --gray-05);border-radius:var(--gxg-scrollbar-track-thumb-radius, 10px)}.tree-view::-webkit-scrollbar-thumb:hover{background:var(--gxg-scrollbar-track-thumb-hover-background, --gray-04);cursor:pointer}gxg-tree-view[position-relative] ch-tree-x .ch-tree-x-container{position:relative;width:100%}gxg-tree-view[no-padding] ch-tree-x .ch-tree-x-container{padding:0}.tree-view-item::part(dashed-line){border-color:var(--gray-02)}ch-tree-x-list-item{--checkbox-size:var(--gxg-checkbox-size);--expandable-button-width:var(--spacing-comp-04);}ch-tree-x-list-item.tree-view-item--folder::part(action)::before,ch-tree-x-list-item.tree-view-item--module::part(action)::before{grid-area:left-img;content:\"\";width:14px;height:14px;margin-inline-end:4px;background-repeat:no-repeat}ch-tree-x-list-item.tree-view-item--folder::part(action)::before{background-image:url(\"/build/icon-assets/objects/folder.svg\")}ch-tree-x-list-item.tree-view-item--folder::part(action expanded)::before{background-image:url(\"/build/icon-assets/objects/folder-open.svg\")}ch-tree-x-list-item.tree-view-item--module::part(action)::before{background-image:url(\"/build/icon-assets/objects/module.svg\")}ch-tree-x-list-item.tree-view-item--module::part(action expanded)::before{background-image:url(\"/build/icon-assets/objects/module-open.svg\")}ch-tree-x-list-item .tree-view-item--pending-commit::part(action)::before{content:\"\";position:relative;z-index:1;grid-area:left-img;width:5px;height:5px;align-self:end;margin-block-end:3px;margin-inline-start:1px;background-color:#2c3b92;border-radius:50%}ch-tree-x-list-item::part(header):first-child{margin-inline-start:var(--spacing-comp-01)}ch-tree-x-list-item::part(header){padding-inline-end:calc(var(--spacing-comp-02) * 0.65);height:var(--spacing-comp-05);display:flex;gap:5px}ch-tree-x-list-item::part(header):before{content:\"\";display:block}ch-tree-x-list-item::part(header):hover{background-color:var(--gxg-background-color--hover);color:var(--gxg-color--hover)}ch-tree-x-list-item::part(header):focus{outline:var(--border-width-md) solid var(--gxg-border-color--focused);outline-offset:-2px}ch-tree-x-list-item[selected]::part(header){background-color:var(--gxg-background-color--selected)}ch-tree-x-list-item[selected]::part(header):hover{background-color:var(--gxg-background-color--selected-hover)}ch-tree-x-list-item.ch-tree-x-list-item--editing::part(header){border:2px solid transparent}ch-tree-x-list-item::part(expandable-button){background-color:var(--color-hover);margin-inline-end:0}ch-tree-x-list-item::part(expandable-button)::before{background-color:var(--gray-04);-webkit-mask-position:center;-webkit-mask-repeat:no-repeat}ch-tree-x-list-item::part(expandable-button):hover{background-color:var(--color-background)}ch-tree-x-list-item::part(expandable-button):focus{outline:var(--border-width-md) solid var(--gxg-border-color--focused);outline-offset:0}ch-tree-x-list-item::part(checkbox__container){border-color:var(--gray-04);background-color:var(--color-background)}ch-tree-x-list-item::part(checkbox__container):after{content:\"\";position:absolute;display:block;border:solid;border-color:transparent;z-index:0}ch-tree-x-list-item::part(checkbox__container):focus-within{box-shadow:none;outline:var(--border-width-md) solid var(--gxg-border-color--focused);outline-offset:-2px}ch-tree-x-list-item::part(checkbox){margin-inline-end:0}ch-tree-x-list-item::part(checkbox__option){display:none}ch-tree-x-list-item::part(checkbox__container checkbox__checked):after{left:5.5px;top:3px;width:4px;height:7px;border-width:0 2px 2px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);border-color:var(--color-primary-active);transition-property:border-color;transition-duration:var(--ui-animaton-speed);transition-timing-function:ease}ch-tree-x-list-item::part(checkbox__container checkbox__indeterminate):after{left:50%;top:50%;width:8px;height:1.5px;border:0;background-color:var(--color-primary-active);-webkit-transform:rotate(0) translateY(-50%) translateX(-50%);-ms-transform:rotate(0) translateY(-50%) translateX(-50%);transform:rotate(0) translateY(-50%) translateX(-50%)}ch-tree-x-list-item::part(checkbox__input){position:relative;z-index:1}ch-tree-x-list-item::part(action){text-transform:capitalize;display:flex;gap:var(--spacing-comp-01)}ch-tree-x-list-item::part(left-img){width:var(--spacing-comp-04);height:var(--spacing-comp-04);margin-inline-end:0}ch-tree-x-list-item::part(downloading){width:var(--spacing-comp-03);height:var(--spacing-comp-03);border:var(--border-width-md) solid var(--color-primary-enabled);border-inline-start-color:transparent}.ch-tree-x-drag-info{padding-inline:6px;padding-block:2px;background-color:#cfdee6;border:1px solid #0266a0;border-radius:10px;font-size:8px}";
1190
+ const treeViewRenderCss = "ch-tree-view-render{display:contents}";
1072
1191
 
1073
1192
  const DEFAULT_DRAG_DISABLED_VALUE = false;
1074
1193
  const DEFAULT_DROP_DISABLED_VALUE = false;
@@ -1079,7 +1198,13 @@ const DEFAULT_INDETERMINATE_VALUE = false;
1079
1198
  const DEFAULT_LAZY_VALUE = false;
1080
1199
  const DEFAULT_ORDER_VALUE = 0;
1081
1200
  const DEFAULT_SELECTED_VALUE = false;
1082
- const GxgTreeView = class {
1201
+ const defaultRenderItem = (itemModel, treeState, lastItem, level) => {
1202
+ var _a, _b, _c, _d, _e, _f;
1203
+ return (treeState.filterType === "none" || itemModel.render !== false) && (index.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 &&
1204
+ itemModel.items != null &&
1205
+ itemModel.items.map((subModel, index) => defaultRenderItem(subModel, treeState, treeState.showLines && index === itemModel.items.length - 1, level + 1))));
1206
+ };
1207
+ const ChTreeViewRender = class {
1083
1208
  constructor(hostRef) {
1084
1209
  index.registerInstance(this, hostRef);
1085
1210
  this.checkedItemsChange = index.createEvent(this, "checkedItemsChange", 7);
@@ -1090,20 +1215,11 @@ const GxgTreeView = class {
1090
1215
  this.flattenedTreeModel = new Map();
1091
1216
  this.flattenedCheckboxTreeModel = new Map();
1092
1217
  this.selectedItems = new Set();
1093
- this.iconAssetsPath = index.getAssetPath(`./icon-assets`);
1094
1218
  /**
1095
1219
  * This property lets you specify if the tree is waiting to process the drop
1096
1220
  * of items.
1097
1221
  */
1098
1222
  this.waitDropProcessing = false;
1099
- /**
1100
- * Removes the default padding on '.ch-tree-x-container' (Added by Gemini)
1101
- */
1102
- this.noPadding = false;
1103
- /**
1104
- * A temporary fix to force the ch-tree-x tree-x-container to be visible without position:absolute (Added by Gemini)
1105
- */
1106
- this.positionRelative = false;
1107
1223
  /**
1108
1224
  * Set this attribute if you want display a checkbox in all items by default.
1109
1225
  */
@@ -1114,10 +1230,6 @@ const GxgTreeView = class {
1114
1230
  * Only works if `checkbox = true`
1115
1231
  */
1116
1232
  this.checked = false;
1117
- /**
1118
- * A CSS class to set as the `ch-tree-x` element class.
1119
- */
1120
- this.cssClass = "tree-view";
1121
1233
  /**
1122
1234
  * This attribute lets you specify if the drag operation is disabled in all
1123
1235
  * items by default. If `true`, the items can't be dragged.
@@ -1133,15 +1245,44 @@ const GxgTreeView = class {
1133
1245
  * items by default. If `true`, the items can edit its caption in place.
1134
1246
  */
1135
1247
  this.editableItems = DEFAULT_EDITABLE_ITEMS_VALUE;
1248
+ /**
1249
+ * This property lets you determine the list of items that will be filtered.
1250
+ * Only works if `filterType = "id-list"`.
1251
+ */
1252
+ this.filterList = [];
1253
+ /**
1254
+ * This property lets you determine the options that will be applied to the
1255
+ * filter.
1256
+ * Only works if `filterType = "caption" | "metadata"`.
1257
+ */
1258
+ this.filterOptions = {};
1259
+ /**
1260
+ * This attribute lets you define what kind of filter is applied to items.
1261
+ * Only items that satisfy the filter predicate will be displayed.
1262
+ *
1263
+ * | Value | Details |
1264
+ * | ----------- | ---------------------------------------------------------------------------------------------- |
1265
+ * | `checked` | Show only the items that have a checkbox and are checked. |
1266
+ * | `unchecked` | Show only the items that have a checkbox and are not checked. |
1267
+ * | `caption` | Show only the items whose `caption` satisfies the regex determinate by the `filter` property. |
1268
+ * | `metadata` | Show only the items whose `metadata` satisfies the regex determinate by the `filter` property. |
1269
+ * | `id-list` | Show only the items that are contained in the array determinate by the `filterList` property. |
1270
+ * | `none` | Show all items. |
1271
+ */
1272
+ this.filterType = "none";
1136
1273
  /**
1137
1274
  * Set this attribute if you want to allow multi selection of the items.
1138
1275
  */
1139
1276
  this.multiSelection = false;
1277
+ /**
1278
+ * This property allows us to implement custom rendering of tree items.
1279
+ */
1280
+ this.renderItem = defaultRenderItem;
1140
1281
  /**
1141
1282
  * `true` to display the relation between tree items and tree lists using
1142
1283
  * lines.
1143
1284
  */
1144
- this.showLines = "all";
1285
+ this.showLines = "none";
1145
1286
  /**
1146
1287
  * Set this attribute if you want all the children item's checkboxes to be
1147
1288
  * checked when the parent item checkbox is checked, or to be unchecked when
@@ -1162,7 +1303,7 @@ const GxgTreeView = class {
1162
1303
  const requestTimestamp = new Date().getTime();
1163
1304
  const dropInformation = event.detail;
1164
1305
  const promise = this.checkDroppableZoneCallback(dropInformation);
1165
- promise.then((validDrop) => {
1306
+ promise.then(validDrop => {
1166
1307
  this.updateValidDropZone(requestTimestamp, dropInformation.newContainer.id, dropInformation.draggedItems, validDrop);
1167
1308
  });
1168
1309
  };
@@ -1170,7 +1311,7 @@ const GxgTreeView = class {
1170
1311
  event.stopPropagation();
1171
1312
  const itemsToProcess = new Map(event.detail);
1172
1313
  // Remove no longer selected items
1173
- this.selectedItems.forEach((selectedItemId) => {
1314
+ this.selectedItems.forEach(selectedItemId => {
1174
1315
  const itemUIModel = this.flattenedTreeModel.get(selectedItemId).item;
1175
1316
  const itemIsStillSelected = itemsToProcess.get(selectedItemId);
1176
1317
  // The item does not need to be added. Remove it from the processed list
@@ -1250,6 +1391,10 @@ const GxgTreeView = class {
1250
1391
  this.sortItems(newParentUIModel.items);
1251
1392
  // Open the item to visualize the new subitems
1252
1393
  newParentUIModel.expanded = true;
1394
+ // Re-sync checked items
1395
+ this.emitCheckedItemsChange();
1396
+ // Update filters
1397
+ this.processFilters();
1253
1398
  // There is no need to force and update, since the waitDropProcessing
1254
1399
  // prop was modified
1255
1400
  });
@@ -1265,46 +1410,51 @@ const GxgTreeView = class {
1265
1410
  // Reference the new parent in the item
1266
1411
  itemUIModelExtended.parentItem = newParentUIModel;
1267
1412
  };
1268
- this.renderSubModel = (treeSubModel, lastItem, level) => {
1269
- var _a, _b, _c, _d, _e, _f;
1270
- return (index.h("ch-tree-x-list-item", { id: treeSubModel.id, caption: treeSubModel.caption, checkbox: (_a = treeSubModel.checkbox) !== null && _a !== void 0 ? _a : this.checkbox, checked: (_b = treeSubModel.checked) !== null && _b !== void 0 ? _b : this.checked, class: treeSubModel.class, disabled: treeSubModel.disabled, downloading: treeSubModel.downloading, dragDisabled: (_c = treeSubModel.dragDisabled) !== null && _c !== void 0 ? _c : this.dragDisabled, dropDisabled: (_d = treeSubModel.dropDisabled) !== null && _d !== void 0 ? _d : this.dropDisabled, editable: (_e = treeSubModel.editable) !== null && _e !== void 0 ? _e : this.editableItems, expanded: treeSubModel.expanded, indeterminate: treeSubModel.indeterminate, lastItem: lastItem, lazyLoad: treeSubModel.lazy, leaf: treeSubModel.leaf, leftImgSrc: treeSubModel.leftImgSrc
1271
- ? resolveImgPath(this.iconAssetsPath, treeSubModel.leftImgSrc)
1272
- : null, level: level, metadata: treeSubModel.metadata, rightImgSrc: treeSubModel.rightImgSrc, selected: treeSubModel.selected, showExpandableButton: treeSubModel.showExpandableButton, showLines: this.showLines, toggleCheckboxes: (_f = treeSubModel.toggleCheckboxes) !== null && _f !== void 0 ? _f : this.toggleCheckboxes }, !treeSubModel.leaf &&
1273
- treeSubModel.items != null &&
1274
- treeSubModel.items.map((subModel, index) => this.renderSubModel(subModel, this.showLines && index === treeSubModel.items.length - 1, level + 1))));
1275
- };
1276
1413
  this.flattenItemUIModel = (parentModel) => (item) => {
1277
- var _a;
1414
+ var _a, _b, _c, _d, _e, _f;
1278
1415
  this.flattenedTreeModel.set(item.id, {
1279
1416
  parentItem: parentModel,
1280
- item: item,
1417
+ item: item
1281
1418
  });
1282
1419
  // Add the items that have a checkbox in a separate Map
1283
1420
  if ((_a = item.checkbox) !== null && _a !== void 0 ? _a : this.checkbox) {
1284
1421
  this.flattenedCheckboxTreeModel.set(item.id, {
1285
1422
  parentItem: parentModel,
1286
- item: item,
1423
+ item: item
1287
1424
  });
1288
1425
  }
1289
1426
  // Make sure the properties are with their default values to avoid issues
1290
1427
  // when reusing DOM nodes
1291
- item.class = item.class == null ? DEFAULT_CLASS_VALUE : item.class;
1292
- item.expanded =
1293
- item.expanded == null ? DEFAULT_EXPANDED_VALUE : item.expanded;
1294
- item.indeterminate =
1295
- item.indeterminate == null
1296
- ? DEFAULT_INDETERMINATE_VALUE
1297
- : item.indeterminate;
1298
- item.lazy = item.lazy == null ? DEFAULT_LAZY_VALUE : item.lazy;
1299
- item.order = item.order == null ? DEFAULT_ORDER_VALUE : item.order;
1300
- item.selected =
1301
- item.selected == null ? DEFAULT_SELECTED_VALUE : item.selected;
1428
+ item.class || (item.class = DEFAULT_CLASS_VALUE);
1429
+ (_b = item.expanded) !== null && _b !== void 0 ? _b : (item.expanded = DEFAULT_EXPANDED_VALUE);
1430
+ (_c = item.indeterminate) !== null && _c !== void 0 ? _c : (item.indeterminate = DEFAULT_INDETERMINATE_VALUE);
1431
+ (_d = item.lazy) !== null && _d !== void 0 ? _d : (item.lazy = DEFAULT_LAZY_VALUE);
1432
+ (_e = item.order) !== null && _e !== void 0 ? _e : (item.order = DEFAULT_ORDER_VALUE);
1433
+ (_f = item.selected) !== null && _f !== void 0 ? _f : (item.selected = DEFAULT_SELECTED_VALUE);
1302
1434
  if (item.selected) {
1303
1435
  this.selectedItems.add(item.id);
1304
1436
  }
1305
1437
  this.flattenSubModel(item);
1306
1438
  };
1307
1439
  }
1440
+ handleFilterChange() {
1441
+ if (this.filterType === "caption" || this.filterType === "metadata") {
1442
+ this.processFilters();
1443
+ }
1444
+ }
1445
+ handleFilterListChange() {
1446
+ if (this.filterType === "id-list") {
1447
+ this.processFilters();
1448
+ }
1449
+ }
1450
+ handleFilterOptionsChange() {
1451
+ if (this.filterType === "caption" || this.filterType === "metadata") {
1452
+ this.processFilters();
1453
+ }
1454
+ }
1455
+ handleFilterTypeChange() {
1456
+ this.processFilters();
1457
+ }
1308
1458
  handleTreeModelChange() {
1309
1459
  this.flattenModel();
1310
1460
  }
@@ -1327,6 +1477,8 @@ const GxgTreeView = class {
1327
1477
  this.flattenSubModel(itemToLazyLoadContent);
1328
1478
  // Re-sync checked items
1329
1479
  this.emitCheckedItemsChange();
1480
+ // Update filters
1481
+ this.processFilters();
1330
1482
  // Force re-render
1331
1483
  index.forceUpdate(this);
1332
1484
  }
@@ -1365,13 +1517,13 @@ const GxgTreeView = class {
1365
1517
  return [];
1366
1518
  }
1367
1519
  const modifiedTreeItems = [];
1368
- treeItemIds.forEach((treeItemId) => {
1520
+ treeItemIds.forEach(treeItemId => {
1369
1521
  const itemInfo = this.flattenedTreeModel.get(treeItemId).item;
1370
1522
  if (itemInfo) {
1371
1523
  itemInfo.expanded = expand !== null && expand !== void 0 ? expand : !itemInfo.expanded;
1372
1524
  modifiedTreeItems.push({
1373
1525
  id: itemInfo.id,
1374
- expanded: itemInfo.expanded,
1526
+ expanded: itemInfo.expanded
1375
1527
  });
1376
1528
  }
1377
1529
  });
@@ -1383,7 +1535,7 @@ const GxgTreeView = class {
1383
1535
  * Given a subset of item's properties, it updates all item UI models.
1384
1536
  */
1385
1537
  async updateAllItemsProperties(properties) {
1386
- [...this.flattenedTreeModel.values()].forEach((itemUIModel) => {
1538
+ [...this.flattenedTreeModel.values()].forEach(itemUIModel => {
1387
1539
  if (properties.expanded != null) {
1388
1540
  itemUIModel.item.expanded = properties.expanded;
1389
1541
  }
@@ -1392,6 +1544,10 @@ const GxgTreeView = class {
1392
1544
  itemUIModel.item.indeterminate = false;
1393
1545
  }
1394
1546
  });
1547
+ // Update filters
1548
+ if (properties.checked != null) {
1549
+ this.processFilters();
1550
+ }
1395
1551
  index.forceUpdate(this);
1396
1552
  }
1397
1553
  /**
@@ -1399,10 +1555,12 @@ const GxgTreeView = class {
1399
1555
  * of the items in the list.
1400
1556
  */
1401
1557
  async updateItemsProperties(items, properties) {
1402
- items.forEach((item) => {
1558
+ items.forEach(item => {
1403
1559
  const itemUIModel = this.flattenedTreeModel.get(item);
1404
1560
  this.updateItemProperty(itemUIModel, properties);
1405
1561
  });
1562
+ // Update filters
1563
+ this.processFilters();
1406
1564
  index.forceUpdate(this);
1407
1565
  }
1408
1566
  /**
@@ -1420,7 +1578,7 @@ const GxgTreeView = class {
1420
1578
  return;
1421
1579
  }
1422
1580
  const itemInfo = itemUIModel.item;
1423
- Object.keys(properties).forEach((propertyName) => {
1581
+ Object.keys(properties).forEach(propertyName => {
1424
1582
  itemInfo[propertyName] = properties[propertyName];
1425
1583
  });
1426
1584
  }
@@ -1438,6 +1596,12 @@ const GxgTreeView = class {
1438
1596
  itemInfo.checked = detail.checked;
1439
1597
  itemInfo.indeterminate = detail.indeterminate;
1440
1598
  this.emitCheckedItemsChange();
1599
+ // Update filters
1600
+ if (this.filterType === "checked" || this.filterType === "unchecked") {
1601
+ this.processFilters();
1602
+ // Force re-render
1603
+ index.forceUpdate(this);
1604
+ }
1441
1605
  }
1442
1606
  loadLazyChildrenHandler(event) {
1443
1607
  if (!this.lazyLoadTreeItemsCallback) {
@@ -1447,7 +1611,7 @@ const GxgTreeView = class {
1447
1611
  const treeItemId = event.detail;
1448
1612
  const promise = this.lazyLoadTreeItemsCallback(treeItemId);
1449
1613
  event.target.downloading = true;
1450
- promise.then((result) => {
1614
+ promise.then(result => {
1451
1615
  this.loadLazyContent(treeItemId, result);
1452
1616
  });
1453
1617
  }
@@ -1469,9 +1633,11 @@ const GxgTreeView = class {
1469
1633
  // treeModel to force a re-render
1470
1634
  itemRef.caption = newCaption;
1471
1635
  const promise = this.modifyItemCaptionCallback(itemId, newCaption);
1472
- promise.then((status) => {
1636
+ promise.then(status => {
1473
1637
  if (status.success) {
1474
1638
  this.sortItems(itemUIModel.parentItem.items);
1639
+ // Update filters
1640
+ this.processFilters();
1475
1641
  // Force re-render
1476
1642
  index.forceUpdate(this);
1477
1643
  }
@@ -1490,10 +1656,10 @@ const GxgTreeView = class {
1490
1656
  // New copy of the checked items
1491
1657
  const allItemsWithCheckbox = new Map(this.flattenedCheckboxTreeModel);
1492
1658
  // Update the checked value if not defined
1493
- allItemsWithCheckbox.forEach((itemUIModel) => {
1494
- if (itemUIModel.item.checked == null) {
1495
- itemUIModel.item.checked = this.checked;
1496
- }
1659
+ allItemsWithCheckbox.forEach(itemUIModel => {
1660
+ var _a;
1661
+ var _b;
1662
+ (_a = (_b = itemUIModel.item).checked) !== null && _a !== void 0 ? _a : (_b.checked = this.checked);
1497
1663
  });
1498
1664
  this.checkedItemsChange.emit(allItemsWithCheckbox);
1499
1665
  }
@@ -1527,19 +1693,55 @@ const GxgTreeView = class {
1527
1693
  // Re-sync checked items
1528
1694
  this.emitCheckedItemsChange();
1529
1695
  }
1696
+ filterSubModel(item, filterInfo) {
1697
+ let aSubItemIsRendered = false;
1698
+ // Check if a subitem is rendered
1699
+ if (item.leaf !== true && item.items != null) {
1700
+ item.items.forEach(subItem => {
1701
+ const itemSatisfiesFilter = this.filterSubModel(subItem, filterInfo);
1702
+ aSubItemIsRendered || (aSubItemIsRendered = itemSatisfiesFilter);
1703
+ });
1704
+ }
1705
+ // The current item is rendered if it satisfies the filter condition or a
1706
+ // subitem exists that needs to be rendered
1707
+ const satisfiesFilter = filterDictionary[this.filterType](item, filterInfo) || aSubItemIsRendered;
1708
+ item.render = satisfiesFilter; // Update item render
1709
+ return satisfiesFilter;
1710
+ }
1711
+ processFilters() {
1712
+ if (this.filterType === "none") {
1713
+ return;
1714
+ }
1715
+ this.filterSubModel({
1716
+ id: null,
1717
+ caption: null,
1718
+ items: this.treeModel
1719
+ }, {
1720
+ defaultCheckbox: this.checkbox,
1721
+ defaultChecked: this.checked,
1722
+ filter: this.filter,
1723
+ filterList: this.filterList,
1724
+ filterOptions: this.filterOptions
1725
+ });
1726
+ }
1530
1727
  componentWillLoad() {
1531
1728
  this.flattenModel();
1729
+ this.processFilters();
1532
1730
  }
1533
1731
  render() {
1534
- return (index.h("ch-tree-x", { 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((subModel, index) => this.renderSubModel(subModel, this.showLines && index === this.treeModel.length - 1, 0))));
1732
+ return (index.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))));
1535
1733
  }
1536
- static get assetsDirs() { return ["assets"]; }
1537
1734
  static get watchers() { return {
1735
+ "filter": ["handleFilterChange"],
1736
+ "filterList": ["handleFilterListChange"],
1737
+ "filterOptions": ["handleFilterOptionsChange"],
1738
+ "filterType": ["handleFilterTypeChange"],
1538
1739
  "treeModel": ["handleTreeModelChange"]
1539
1740
  }; }
1540
1741
  };
1541
- GxgTreeView.style = treeViewCss;
1742
+ ChTreeViewRender.style = treeViewRenderCss;
1542
1743
 
1543
- exports.ch_tree_x = ChTreeX;
1544
- exports.ch_tree_x_list_item = ChTreeXListItem;
1545
- exports.gxg_tree_view = GxgTreeView;
1744
+ exports.ch_checkbox = CheckBox;
1745
+ exports.ch_tree_view = ChTreeView;
1746
+ exports.ch_tree_view_item = ChTreeViewItem;
1747
+ exports.ch_tree_view_render = ChTreeViewRender;