@genexus/genexus-ide-ui 0.0.20 → 0.0.22

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 (608) hide show
  1. package/dist/cjs/ch-accordion.cjs.entry.js +1 -1
  2. package/dist/cjs/ch-checkbox.cjs.entry.js +93 -0
  3. package/dist/cjs/ch-drag-bar.cjs.entry.js +1 -1
  4. package/dist/cjs/ch-dropdown-item-separator.cjs.entry.js +1 -1
  5. package/dist/cjs/ch-dropdown-item.cjs.entry.js +1 -1
  6. package/dist/cjs/ch-dropdown.cjs.entry.js +1 -1
  7. package/dist/cjs/ch-form-checkbox.cjs.entry.js +1 -1
  8. package/dist/cjs/ch-grid-action-refresh_6.cjs.entry.js +1 -1
  9. package/dist/cjs/ch-grid-column-display.cjs.entry.js +1 -1
  10. package/dist/cjs/ch-grid-column-resize_4.cjs.entry.js +150 -0
  11. package/dist/cjs/ch-grid-row-actions.cjs.entry.js +26 -3
  12. package/dist/cjs/ch-grid-rowset-empty.cjs.entry.js +1 -1
  13. package/dist/cjs/ch-grid-rowset-legend.cjs.entry.js +23 -0
  14. package/dist/cjs/ch-grid-virtual-scroller.cjs.entry.js +1 -1
  15. package/dist/cjs/{ch-grid_7.cjs.entry.js → ch-grid_4.cjs.entry.js} +72 -155
  16. package/dist/cjs/ch-icon_2.cjs.entry.js +2 -2
  17. package/dist/cjs/ch-intersection-observer.cjs.entry.js +1 -1
  18. package/dist/cjs/ch-next-data-modeling-item.cjs.entry.js +2 -2
  19. package/dist/cjs/ch-next-data-modeling.cjs.entry.js +1 -1
  20. package/dist/cjs/ch-next-progress-bar.cjs.entry.js +1 -1
  21. package/dist/cjs/ch-notifications-item.cjs.entry.js +1 -1
  22. package/dist/cjs/ch-notifications.cjs.entry.js +1 -1
  23. package/dist/cjs/ch-paginator-pages.cjs.entry.js +1 -1
  24. package/dist/cjs/ch-qr.cjs.entry.js +1 -1
  25. package/dist/cjs/ch-select-option.cjs.entry.js +1 -1
  26. package/dist/cjs/ch-select.cjs.entry.js +2 -2
  27. package/dist/cjs/ch-sidebar-menu-list-item.cjs.entry.js +1 -1
  28. package/dist/cjs/ch-sidebar-menu-list.cjs.entry.js +1 -1
  29. package/dist/cjs/ch-sidebar-menu.cjs.entry.js +2 -2
  30. package/dist/cjs/ch-step-list-item.cjs.entry.js +1 -1
  31. package/dist/cjs/ch-step-list.cjs.entry.js +1 -1
  32. package/dist/cjs/ch-style.cjs.entry.js +1 -1
  33. package/dist/cjs/ch-suggest_5.cjs.entry.js +5 -6
  34. package/dist/cjs/ch-test-tree-x.cjs.entry.js +266 -0
  35. package/dist/cjs/ch-textblock.cjs.entry.js +2 -2
  36. package/dist/cjs/ch-tree-item.cjs.entry.js +1 -1
  37. package/dist/cjs/ch-tree-x_3.cjs.entry.js +966 -0
  38. package/dist/cjs/ch-tree.cjs.entry.js +1 -1
  39. package/dist/cjs/ch-window_2.cjs.entry.js +1 -1
  40. package/dist/cjs/{form-b12384de.js → form-a22de8f3.js} +1 -1
  41. package/dist/cjs/{form-validation-58a5de69.js → form-validation-f8e709d0.js} +1 -1
  42. package/dist/cjs/genexus-ide-ui.cjs.js +2 -2
  43. package/dist/cjs/gx-grid-chameleon.cjs.entry.js +1 -1
  44. package/dist/cjs/gx-ide-container.cjs.entry.js +2 -2
  45. package/dist/cjs/gx-ide-directory-selector.cjs.entry.js +2 -2
  46. package/dist/cjs/gx-ide-entity-selector.cjs.entry.js +2 -2
  47. package/dist/cjs/gx-ide-list-selector-item.cjs.entry.js +89 -0
  48. package/dist/cjs/gx-ide-list-selector.cjs.entry.js +51 -0
  49. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +3 -3
  50. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +3 -3
  51. package/dist/cjs/gx-ide-references.cjs.entry.js +3 -3
  52. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +216 -0
  53. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +70 -0
  54. package/dist/cjs/gx-ide-template.cjs.entry.js +2 -2
  55. package/dist/cjs/gx-ide-test.cjs.entry.js +2 -2
  56. package/dist/cjs/gx-ide-top-bar_2.cjs.entry.js +3 -3
  57. package/dist/cjs/gxg-accordion-item.cjs.entry.js +3 -3
  58. package/dist/cjs/gxg-accordion.cjs.entry.js +2 -2
  59. package/dist/cjs/gxg-alert.cjs.entry.js +2 -2
  60. package/dist/cjs/gxg-box.cjs.entry.js +2 -2
  61. package/dist/cjs/gxg-breadcrumb.cjs.entry.js +1 -1
  62. package/dist/cjs/gxg-breadcrumbs.cjs.entry.js +1 -1
  63. package/dist/cjs/gxg-button-group.cjs.entry.js +3 -3
  64. package/dist/cjs/gxg-button.cjs.entry.js +3 -3
  65. package/dist/cjs/gxg-card.cjs.entry.js +2 -2
  66. package/dist/cjs/gxg-color-picker.cjs.entry.js +2 -2
  67. package/dist/cjs/gxg-column.cjs.entry.js +2 -2
  68. package/dist/cjs/gxg-columns.cjs.entry.js +2 -2
  69. package/dist/cjs/gxg-combo-box_8.cjs.entry.js +11 -10
  70. package/dist/cjs/gxg-container.cjs.entry.js +2 -2
  71. package/dist/cjs/gxg-contextual-menu-item.cjs.entry.js +2 -2
  72. package/dist/cjs/gxg-contextual-menu-submenu.cjs.entry.js +2 -2
  73. package/dist/cjs/gxg-contextual-menu.cjs.entry.js +2 -2
  74. package/dist/cjs/gxg-date-picker.cjs.entry.js +3 -3
  75. package/dist/cjs/gxg-demo.cjs.entry.js +2 -2
  76. package/dist/cjs/gxg-drag-box.cjs.entry.js +2 -2
  77. package/dist/cjs/gxg-drag-container.cjs.entry.js +2 -2
  78. package/dist/cjs/gxg-drop-down.cjs.entry.js +3 -3
  79. package/dist/cjs/gxg-filter-item.cjs.entry.js +1 -1
  80. package/dist/cjs/gxg-filter.cjs.entry.js +2 -2
  81. package/dist/cjs/gxg-form-checkbox.cjs.entry.js +4 -4
  82. package/dist/cjs/gxg-form-message.cjs.entry.js +3 -3
  83. package/dist/cjs/gxg-form-text.cjs.entry.js +4 -4
  84. package/dist/cjs/gxg-form-textarea.cjs.entry.js +13 -7
  85. package/dist/cjs/gxg-label_2.cjs.entry.js +4 -4
  86. package/dist/cjs/{gxg-list-box.cjs.entry.js → gxg-list-box_2.cjs.entry.js} +123 -4
  87. package/dist/cjs/gxg-loader.cjs.entry.js +2 -2
  88. package/dist/cjs/gxg-menu-item.cjs.entry.js +2 -2
  89. package/dist/cjs/gxg-menu-list.cjs.entry.js +2 -2
  90. package/dist/cjs/gxg-menu.cjs.entry.js +2 -2
  91. package/dist/cjs/gxg-modal.cjs.entry.js +3 -3
  92. package/dist/cjs/gxg-more-info.cjs.entry.js +2 -2
  93. package/dist/cjs/gxg-option-v2.cjs.entry.js +1 -1
  94. package/dist/cjs/gxg-option.cjs.entry.js +2 -2
  95. package/dist/cjs/gxg-options-item.cjs.entry.js +1 -1
  96. package/dist/cjs/gxg-options.cjs.entry.js +3 -3
  97. package/dist/cjs/gxg-paginator.cjs.entry.js +1 -1
  98. package/dist/cjs/gxg-pill.cjs.entry.js +3 -3
  99. package/dist/cjs/gxg-progress-bar.cjs.entry.js +2 -2
  100. package/dist/{genexus-ide-ui/p-f560bbb6.entry.js → cjs/gxg-scroll.cjs.entry.js} +19 -1
  101. package/dist/cjs/gxg-select-v2.cjs.entry.js +2 -2
  102. package/dist/cjs/gxg-select.cjs.entry.js +4 -4
  103. package/dist/cjs/gxg-separator.cjs.entry.js +2 -2
  104. package/dist/cjs/gxg-slider.cjs.entry.js +2 -2
  105. package/dist/cjs/gxg-spacer-layout.cjs.entry.js +2 -2
  106. package/dist/cjs/gxg-spacer-one.cjs.entry.js +2 -2
  107. package/dist/cjs/gxg-split.cjs.entry.js +1 -1
  108. package/dist/cjs/gxg-splitter.cjs.entry.js +1 -1
  109. package/dist/cjs/gxg-stack.cjs.entry.js +2 -2
  110. package/dist/cjs/gxg-stepper.cjs.entry.js +2 -2
  111. package/dist/cjs/gxg-test.cjs.entry.js +1 -1
  112. package/dist/cjs/gxg-title.cjs.entry.js +3 -3
  113. package/dist/cjs/gxg-toggle.cjs.entry.js +2 -2
  114. package/dist/cjs/gxg-toolbar-item.cjs.entry.js +2 -2
  115. package/dist/cjs/gxg-toolbar.cjs.entry.js +2 -2
  116. package/dist/cjs/gxg-tree-grid-divs.cjs.entry.js +1 -1
  117. package/dist/cjs/gxg-tree_2.cjs.entry.js +3 -3
  118. package/dist/cjs/gxg-window.cjs.entry.js +2 -2
  119. package/dist/cjs/helpers-8845f008.js +25 -0
  120. package/dist/cjs/{index-b1633949.js → index-3e90909d.js} +1 -1
  121. package/dist/cjs/{index-6b74a39f.js → index-5a32426a.js} +1 -0
  122. package/dist/cjs/loader.cjs.js +2 -2
  123. package/dist/cjs/{reserverd-names-b673183c.js → reserverd-names-1b00889a.js} +2 -0
  124. package/dist/cjs/{store-c59c1d50.js → store-0866de9f.js} +1 -1
  125. package/dist/cjs/{update-tree-model-33f25694.js → update-tree-model-8b154db1.js} +1 -1
  126. package/dist/collection/collection-manifest.json +10 -0
  127. package/dist/collection/common/render-combo-items.js +10 -0
  128. package/dist/collection/components/_template/template.css +6 -2
  129. package/dist/collection/components/container/container.css +23 -5
  130. package/dist/collection/components/directory-selector/directory-selector.css +23 -0
  131. package/dist/collection/components/entity-selector/entity-selector.css +23 -0
  132. package/dist/collection/components/list-selector/list-selector-item/list-selector-item.css +51 -0
  133. package/dist/collection/components/list-selector/list-selector-item/list-selector-item.js +182 -0
  134. package/dist/collection/components/list-selector/list-selector.css +65 -0
  135. package/dist/collection/components/list-selector/list-selector.js +174 -0
  136. package/dist/collection/components/new-environment/new-environment.css +6 -2
  137. package/dist/collection/components/new-kb/new-kb.css +6 -2
  138. package/dist/collection/components/references/references.css +6 -2
  139. package/dist/collection/components/team-dev-commit/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.en.json +22 -0
  140. package/dist/collection/components/team-dev-commit/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.ja.json +3 -0
  141. package/dist/collection/components/team-dev-commit/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.zh.json +3 -0
  142. package/dist/collection/components/team-dev-commit/team-dev-commit.css +165 -0
  143. package/dist/collection/components/team-dev-commit/team-dev-commit.js +439 -0
  144. package/dist/collection/components/team-dev-select-recent-comment/gx-ide-assets/team-dev-select-recent-comment/langs/team-dev-select-recent-comment.lang.en.json +4 -0
  145. package/dist/collection/components/team-dev-select-recent-comment/gx-ide-assets/team-dev-select-recent-comment/langs/team-dev-select-recent-comment.lang.ja.json +3 -0
  146. package/dist/collection/components/team-dev-select-recent-comment/gx-ide-assets/team-dev-select-recent-comment/langs/team-dev-select-recent-comment.lang.zh.json +3 -0
  147. package/dist/collection/components/team-dev-select-recent-comment/team-dev-select-recent-comment.css +127 -0
  148. package/dist/collection/components/team-dev-select-recent-comment/team-dev-select-recent-comment.js +148 -0
  149. package/dist/components/button-group.js +1 -1
  150. package/dist/components/button.js +1 -1
  151. package/dist/components/ch-checkbox.js +6 -0
  152. package/dist/components/ch-grid-row-actions.js +27 -3
  153. package/dist/components/ch-grid2.js +53 -13
  154. package/dist/components/ch-suggest2.js +0 -2
  155. package/dist/components/ch-test-tree-x.js +313 -0
  156. package/dist/components/ch-tree-x-list-item.js +6 -0
  157. package/dist/components/ch-tree-x-list.js +6 -0
  158. package/dist/components/ch-tree-x.js +6 -0
  159. package/dist/components/checkbox.js +115 -0
  160. package/dist/components/combo-box.js +2 -2
  161. package/dist/components/container.js +1 -1
  162. package/dist/components/container2.js +253 -0
  163. package/dist/components/form-checkbox.js +2 -2
  164. package/dist/components/form-radio-group.js +2 -2
  165. package/dist/components/form-radio.js +1 -1
  166. package/dist/components/form-text.js +2 -2
  167. package/dist/components/form-textarea.js +176 -0
  168. package/dist/components/form.js +1 -1
  169. package/dist/components/gx-ide-directory-selector.js +1 -1
  170. package/dist/components/gx-ide-entity-selector.js +1 -1
  171. package/dist/components/gx-ide-list-selector-item.d.ts +11 -0
  172. package/dist/components/gx-ide-list-selector-item.js +107 -0
  173. package/dist/components/gx-ide-list-selector.d.ts +11 -0
  174. package/dist/components/gx-ide-list-selector.js +78 -0
  175. package/dist/components/gx-ide-new-environment.js +1 -1
  176. package/dist/components/gx-ide-new-kb.js +1 -1
  177. package/dist/components/gx-ide-references.js +1 -1
  178. package/dist/components/gx-ide-team-dev-commit.d.ts +11 -0
  179. package/dist/components/gx-ide-team-dev-commit.js +395 -0
  180. package/dist/components/gx-ide-team-dev-select-recent-comment.d.ts +11 -0
  181. package/dist/components/gx-ide-team-dev-select-recent-comment.js +148 -0
  182. package/dist/components/gx-ide-template.js +1 -1
  183. package/dist/components/gxg-accordion-item.js +1 -1
  184. package/dist/components/gxg-accordion.js +1 -1
  185. package/dist/components/gxg-alert.js +1 -1
  186. package/dist/components/gxg-box.js +1 -1
  187. package/dist/components/gxg-card.js +1 -1
  188. package/dist/components/gxg-color-picker.js +1 -1
  189. package/dist/components/gxg-column.js +1 -1
  190. package/dist/components/gxg-columns.js +1 -1
  191. package/dist/components/gxg-container.js +1 -251
  192. package/dist/components/gxg-contextual-menu-item.js +1 -1
  193. package/dist/components/gxg-contextual-menu-submenu.js +1 -1
  194. package/dist/components/gxg-contextual-menu.js +1 -1
  195. package/dist/components/gxg-date-picker.js +1 -1
  196. package/dist/components/gxg-demo.js +1 -1
  197. package/dist/components/gxg-drag-box.js +1 -1
  198. package/dist/components/gxg-drag-container.js +1 -1
  199. package/dist/components/gxg-drop-down.js +1 -1
  200. package/dist/components/gxg-filter.js +1 -1
  201. package/dist/components/gxg-form-checkbox-group2.js +2 -2
  202. package/dist/components/gxg-form-message.js +1 -1
  203. package/dist/components/gxg-form-textarea.js +1 -165
  204. package/dist/components/gxg-grid2.js +1 -1
  205. package/dist/components/gxg-label2.js +1 -1
  206. package/dist/components/gxg-list-box-item.js +1 -178
  207. package/dist/components/gxg-list-box.js +1 -789
  208. package/dist/components/gxg-loader.js +1 -1
  209. package/dist/components/gxg-menu-item.js +1 -1
  210. package/dist/components/gxg-menu-list.js +1 -1
  211. package/dist/components/gxg-menu.js +1 -1
  212. package/dist/components/gxg-modal.js +1 -1
  213. package/dist/components/gxg-more-info.js +1 -1
  214. package/dist/components/gxg-option.js +1 -1
  215. package/dist/components/gxg-options.js +1 -1
  216. package/dist/components/gxg-pill.js +1 -1
  217. package/dist/components/gxg-progress-bar.js +1 -1
  218. package/dist/components/gxg-scroll.js +33 -0
  219. package/dist/components/gxg-select.js +2 -2
  220. package/dist/components/gxg-separator.js +1 -1
  221. package/dist/components/gxg-slider.js +1 -1
  222. package/dist/components/gxg-spacer-layout.js +1 -1
  223. package/dist/components/gxg-spacer-one.js +1 -1
  224. package/dist/components/gxg-stack.js +1 -1
  225. package/dist/components/gxg-stepper.js +1 -1
  226. package/dist/components/gxg-toggle.js +1 -1
  227. package/dist/components/gxg-toolbar-item.js +1 -1
  228. package/dist/components/gxg-toolbar.js +1 -1
  229. package/dist/components/gxg-tree-item2.js +1 -1
  230. package/dist/components/gxg-tree2.js +1 -1
  231. package/dist/components/gxg-window.js +1 -1
  232. package/dist/components/helpers.js +20 -8
  233. package/dist/components/icon2.js +1 -1
  234. package/dist/components/index.d.ts +4 -0
  235. package/dist/components/index.js +10 -0
  236. package/dist/{esm/gxg-list-box-item.entry.js → components/list-box-item.js} +69 -12
  237. package/dist/{esm/gxg-list-box.entry.js → components/list-box.js} +67 -14
  238. package/dist/components/reserverd-names.js +2 -1
  239. package/dist/components/suggest.js +2 -2
  240. package/dist/components/tab-bar.js +1 -1
  241. package/dist/components/tab-button.js +1 -1
  242. package/dist/components/tab.js +1 -1
  243. package/dist/components/tabs.js +2 -1
  244. package/dist/components/text.js +1 -1
  245. package/dist/components/title.js +1 -1
  246. package/dist/components/tooltip.js +1 -1
  247. package/dist/components/tree-x-list-item.js +595 -0
  248. package/dist/components/tree-x-list.js +81 -0
  249. package/dist/components/tree-x.js +378 -0
  250. package/dist/esm/ch-accordion.entry.js +1 -1
  251. package/dist/esm/ch-checkbox.entry.js +89 -0
  252. package/dist/esm/ch-drag-bar.entry.js +1 -1
  253. package/dist/esm/ch-dropdown-item-separator.entry.js +1 -1
  254. package/dist/esm/ch-dropdown-item.entry.js +1 -1
  255. package/dist/esm/ch-dropdown.entry.js +1 -1
  256. package/dist/esm/ch-form-checkbox.entry.js +1 -1
  257. package/dist/esm/ch-grid-action-refresh_6.entry.js +1 -1
  258. package/dist/esm/ch-grid-column-display.entry.js +1 -1
  259. package/dist/esm/ch-grid-column-resize_4.entry.js +143 -0
  260. package/dist/esm/ch-grid-row-actions.entry.js +26 -3
  261. package/dist/esm/ch-grid-rowset-empty.entry.js +1 -1
  262. package/dist/esm/ch-grid-rowset-legend.entry.js +19 -0
  263. package/dist/esm/ch-grid-virtual-scroller.entry.js +1 -1
  264. package/dist/esm/{ch-grid_7.entry.js → ch-grid_4.entry.js} +72 -152
  265. package/dist/esm/ch-icon_2.entry.js +2 -2
  266. package/dist/esm/ch-intersection-observer.entry.js +1 -1
  267. package/dist/esm/ch-next-data-modeling-item.entry.js +2 -2
  268. package/dist/esm/ch-next-data-modeling.entry.js +1 -1
  269. package/dist/esm/ch-next-progress-bar.entry.js +1 -1
  270. package/dist/esm/ch-notifications-item.entry.js +1 -1
  271. package/dist/esm/ch-notifications.entry.js +1 -1
  272. package/dist/esm/ch-paginator-pages.entry.js +1 -1
  273. package/dist/esm/ch-qr.entry.js +1 -1
  274. package/dist/esm/ch-select-option.entry.js +1 -1
  275. package/dist/esm/ch-select.entry.js +2 -2
  276. package/dist/esm/ch-sidebar-menu-list-item.entry.js +1 -1
  277. package/dist/esm/ch-sidebar-menu-list.entry.js +1 -1
  278. package/dist/esm/ch-sidebar-menu.entry.js +2 -2
  279. package/dist/esm/ch-step-list-item.entry.js +1 -1
  280. package/dist/esm/ch-step-list.entry.js +1 -1
  281. package/dist/esm/ch-style.entry.js +1 -1
  282. package/dist/esm/ch-suggest_5.entry.js +5 -6
  283. package/dist/esm/ch-test-tree-x.entry.js +262 -0
  284. package/dist/esm/ch-textblock.entry.js +2 -2
  285. package/dist/esm/ch-tree-item.entry.js +1 -1
  286. package/dist/esm/ch-tree-x_3.entry.js +960 -0
  287. package/dist/esm/ch-tree.entry.js +1 -1
  288. package/dist/esm/ch-window_2.entry.js +1 -1
  289. package/dist/esm/{form-d0cdf54f.js → form-5e68671c.js} +2 -2
  290. package/dist/esm/{form-validation-702577da.js → form-validation-cdb16431.js} +1 -1
  291. package/dist/esm/genexus-ide-ui.js +3 -3
  292. package/dist/esm/gx-grid-chameleon.entry.js +1 -1
  293. package/dist/esm/gx-ide-container.entry.js +2 -2
  294. package/dist/esm/gx-ide-directory-selector.entry.js +2 -2
  295. package/dist/esm/gx-ide-entity-selector.entry.js +2 -2
  296. package/dist/esm/gx-ide-list-selector-item.entry.js +85 -0
  297. package/dist/esm/gx-ide-list-selector.entry.js +47 -0
  298. package/dist/esm/gx-ide-new-environment.entry.js +3 -3
  299. package/dist/esm/gx-ide-new-kb.entry.js +3 -3
  300. package/dist/esm/gx-ide-references.entry.js +3 -3
  301. package/dist/esm/gx-ide-team-dev-commit.entry.js +212 -0
  302. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +66 -0
  303. package/dist/esm/gx-ide-template.entry.js +2 -2
  304. package/dist/esm/gx-ide-test.entry.js +2 -2
  305. package/dist/esm/gx-ide-top-bar_2.entry.js +3 -3
  306. package/dist/esm/gxg-accordion-item.entry.js +3 -3
  307. package/dist/esm/gxg-accordion.entry.js +2 -2
  308. package/dist/esm/gxg-alert.entry.js +2 -2
  309. package/dist/esm/gxg-box.entry.js +2 -2
  310. package/dist/esm/gxg-breadcrumb.entry.js +1 -1
  311. package/dist/esm/gxg-breadcrumbs.entry.js +1 -1
  312. package/dist/esm/gxg-button-group.entry.js +3 -3
  313. package/dist/esm/gxg-button.entry.js +3 -3
  314. package/dist/esm/gxg-card.entry.js +2 -2
  315. package/dist/esm/gxg-color-picker.entry.js +2 -2
  316. package/dist/esm/gxg-column.entry.js +2 -2
  317. package/dist/esm/gxg-columns.entry.js +2 -2
  318. package/dist/esm/gxg-combo-box_8.entry.js +11 -10
  319. package/dist/esm/gxg-container.entry.js +2 -2
  320. package/dist/esm/gxg-contextual-menu-item.entry.js +2 -2
  321. package/dist/esm/gxg-contextual-menu-submenu.entry.js +2 -2
  322. package/dist/esm/gxg-contextual-menu.entry.js +2 -2
  323. package/dist/esm/gxg-date-picker.entry.js +3 -3
  324. package/dist/esm/gxg-demo.entry.js +2 -2
  325. package/dist/esm/gxg-drag-box.entry.js +2 -2
  326. package/dist/esm/gxg-drag-container.entry.js +2 -2
  327. package/dist/esm/gxg-drop-down.entry.js +3 -3
  328. package/dist/esm/gxg-filter-item.entry.js +1 -1
  329. package/dist/esm/gxg-filter.entry.js +2 -2
  330. package/dist/esm/gxg-form-checkbox.entry.js +4 -4
  331. package/dist/esm/gxg-form-message.entry.js +3 -3
  332. package/dist/esm/gxg-form-text.entry.js +4 -4
  333. package/dist/esm/gxg-form-textarea.entry.js +13 -7
  334. package/dist/esm/gxg-label_2.entry.js +4 -4
  335. package/dist/esm/gxg-list-box_2.entry.js +856 -0
  336. package/dist/esm/gxg-loader.entry.js +2 -2
  337. package/dist/esm/gxg-menu-item.entry.js +2 -2
  338. package/dist/esm/gxg-menu-list.entry.js +2 -2
  339. package/dist/esm/gxg-menu.entry.js +2 -2
  340. package/dist/esm/gxg-modal.entry.js +3 -3
  341. package/dist/esm/gxg-more-info.entry.js +2 -2
  342. package/dist/esm/gxg-option-v2.entry.js +1 -1
  343. package/dist/esm/gxg-option.entry.js +2 -2
  344. package/dist/esm/gxg-options-item.entry.js +1 -1
  345. package/dist/esm/gxg-options.entry.js +3 -3
  346. package/dist/esm/gxg-paginator.entry.js +1 -1
  347. package/dist/esm/gxg-pill.entry.js +3 -3
  348. package/dist/esm/gxg-progress-bar.entry.js +2 -2
  349. package/dist/esm/gxg-scroll.entry.js +15 -0
  350. package/dist/esm/gxg-select-v2.entry.js +2 -2
  351. package/dist/esm/gxg-select.entry.js +4 -4
  352. package/dist/esm/gxg-separator.entry.js +2 -2
  353. package/dist/esm/gxg-slider.entry.js +2 -2
  354. package/dist/esm/gxg-spacer-layout.entry.js +2 -2
  355. package/dist/esm/gxg-spacer-one.entry.js +2 -2
  356. package/dist/esm/gxg-split.entry.js +1 -1
  357. package/dist/esm/gxg-splitter.entry.js +1 -1
  358. package/dist/esm/gxg-stack.entry.js +2 -2
  359. package/dist/esm/gxg-stepper.entry.js +2 -2
  360. package/dist/esm/gxg-test.entry.js +1 -1
  361. package/dist/esm/gxg-title.entry.js +3 -3
  362. package/dist/esm/gxg-toggle.entry.js +2 -2
  363. package/dist/esm/gxg-toolbar-item.entry.js +2 -2
  364. package/dist/esm/gxg-toolbar.entry.js +2 -2
  365. package/dist/esm/gxg-tree-grid-divs.entry.js +1 -1
  366. package/dist/esm/gxg-tree_2.entry.js +3 -3
  367. package/dist/esm/gxg-window.entry.js +2 -2
  368. package/dist/esm/helpers-56190205.js +22 -0
  369. package/dist/esm/{index-7d5d0c30.js → index-0da01575.js} +1 -1
  370. package/dist/esm/{index-b7960231.js → index-ea94e298.js} +1 -1
  371. package/dist/esm/loader.js +3 -3
  372. package/dist/esm/{reserverd-names-482f1a10.js → reserverd-names-2a2d0fb3.js} +2 -1
  373. package/dist/esm/{store-1b33440d.js → store-c2650ca5.js} +1 -1
  374. package/dist/esm/{update-tree-model-7a983259.js → update-tree-model-6c612f05.js} +1 -1
  375. package/dist/genexus-ide-ui/genexus-ide-ui.css +2 -2
  376. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  377. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.en.json +22 -0
  378. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.ja.json +3 -0
  379. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.zh.json +3 -0
  380. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-select-recent-comment/langs/team-dev-select-recent-comment.lang.en.json +4 -0
  381. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-select-recent-comment/langs/team-dev-select-recent-comment.lang.ja.json +3 -0
  382. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-select-recent-comment/langs/team-dev-select-recent-comment.lang.zh.json +3 -0
  383. package/dist/genexus-ide-ui/p-01406cbc.js +1 -0
  384. package/dist/genexus-ide-ui/{p-a4127238.entry.js → p-0141cbce.entry.js} +1 -1
  385. package/dist/genexus-ide-ui/{p-9cd409c6.entry.js → p-0200a864.entry.js} +1 -1
  386. package/dist/genexus-ide-ui/{p-517ec820.entry.js → p-0425797a.entry.js} +1 -1
  387. package/dist/genexus-ide-ui/{p-1965bccc.entry.js → p-04f094d1.entry.js} +1 -1
  388. package/dist/genexus-ide-ui/{p-f9519533.entry.js → p-0574b321.entry.js} +1 -1
  389. package/dist/genexus-ide-ui/p-06ddf2a3.entry.js +1 -0
  390. package/dist/genexus-ide-ui/p-080f6c41.js +1 -0
  391. package/dist/genexus-ide-ui/{p-84b6056f.entry.js → p-08b20f6c.entry.js} +1 -1
  392. package/dist/genexus-ide-ui/{p-0c06c1f9.entry.js → p-092ccacd.entry.js} +1 -1
  393. package/dist/genexus-ide-ui/{p-ada218b2.entry.js → p-0ae159de.entry.js} +1 -1
  394. package/dist/genexus-ide-ui/p-0be8946d.entry.js +1 -0
  395. package/dist/genexus-ide-ui/{p-20fb1fbb.entry.js → p-0dee851b.entry.js} +1 -1
  396. package/dist/genexus-ide-ui/{p-75e9ee1c.entry.js → p-115eee61.entry.js} +1 -1
  397. package/dist/genexus-ide-ui/{p-4e2efbe1.entry.js → p-117498b7.entry.js} +1 -1
  398. package/dist/genexus-ide-ui/{p-f36b3dfe.entry.js → p-133b562f.entry.js} +1 -1
  399. package/dist/genexus-ide-ui/p-16d35368.entry.js +1 -0
  400. package/dist/genexus-ide-ui/{p-009a0766.entry.js → p-192f1342.entry.js} +1 -1
  401. package/dist/genexus-ide-ui/p-1e686f3a.entry.js +1 -0
  402. package/dist/genexus-ide-ui/{p-6759cb37.entry.js → p-22e142e8.entry.js} +1 -1
  403. package/dist/genexus-ide-ui/{p-d8fb556d.entry.js → p-25b333a5.entry.js} +1 -1
  404. package/dist/genexus-ide-ui/{p-026990ca.entry.js → p-2f3c0023.entry.js} +1 -1
  405. package/dist/genexus-ide-ui/{p-76104757.entry.js → p-32bade0f.entry.js} +1 -1
  406. package/dist/genexus-ide-ui/p-35864ae2.entry.js +1 -0
  407. package/dist/genexus-ide-ui/{p-6dedbe57.entry.js → p-395a65de.entry.js} +1 -1
  408. package/dist/genexus-ide-ui/{p-870aca87.entry.js → p-3b4fca51.entry.js} +1 -1
  409. package/dist/genexus-ide-ui/{p-d8feb149.entry.js → p-3c8b9c4b.entry.js} +1 -1
  410. package/dist/genexus-ide-ui/p-3d9a4ede.entry.js +1 -0
  411. package/dist/genexus-ide-ui/{p-7e6f69c0.entry.js → p-455abc7c.entry.js} +1 -1
  412. package/dist/genexus-ide-ui/{p-bdc7c71d.entry.js → p-46ed607e.entry.js} +1 -1
  413. package/dist/genexus-ide-ui/{p-56a7eb09.entry.js → p-47a7c313.entry.js} +1 -1
  414. package/dist/genexus-ide-ui/{p-5328fb05.entry.js → p-49f2abf4.entry.js} +1 -1
  415. package/dist/genexus-ide-ui/{p-0ab556b4.entry.js → p-4a01a404.entry.js} +1 -1
  416. package/dist/genexus-ide-ui/{p-82b4d895.entry.js → p-4aa2885b.entry.js} +1 -1
  417. package/dist/genexus-ide-ui/{p-784c76ad.entry.js → p-4cf3c2b9.entry.js} +1 -1
  418. package/dist/genexus-ide-ui/{p-4fe65800.entry.js → p-4e0c2df1.entry.js} +1 -1
  419. package/dist/genexus-ide-ui/p-50c603e6.entry.js +1 -0
  420. package/dist/genexus-ide-ui/p-54bab171.entry.js +1 -0
  421. package/dist/genexus-ide-ui/p-54cef7ae.entry.js +1 -0
  422. package/dist/genexus-ide-ui/p-554ed73a.entry.js +1 -0
  423. package/dist/genexus-ide-ui/{p-19cf13d2.entry.js → p-55d98662.entry.js} +1 -1
  424. package/dist/genexus-ide-ui/p-566ae3e7.entry.js +1 -0
  425. package/dist/genexus-ide-ui/{p-756b2fc5.entry.js → p-5755f985.entry.js} +1 -1
  426. package/dist/genexus-ide-ui/{p-19767d76.entry.js → p-59ed4cb1.entry.js} +1 -1
  427. package/dist/genexus-ide-ui/{p-336eb631.entry.js → p-5d5fde3b.entry.js} +1 -1
  428. package/dist/genexus-ide-ui/{p-aa8b6bdf.entry.js → p-5e40990d.entry.js} +1 -1
  429. package/dist/genexus-ide-ui/{p-03e3a427.entry.js → p-5ec25f04.entry.js} +1 -1
  430. package/dist/genexus-ide-ui/{p-03b50eac.entry.js → p-5f04a6c6.entry.js} +1 -1
  431. package/dist/genexus-ide-ui/{p-80a7594c.entry.js → p-6050cdba.entry.js} +1 -1
  432. package/dist/genexus-ide-ui/{p-2a4070ed.entry.js → p-6073c264.entry.js} +1 -1
  433. package/dist/genexus-ide-ui/{p-3b54e72a.entry.js → p-65ad7def.entry.js} +1 -1
  434. package/dist/genexus-ide-ui/{p-bcd15af7.entry.js → p-6b301bbb.entry.js} +1 -1
  435. package/dist/genexus-ide-ui/p-6c825ffc.entry.js +1 -0
  436. package/dist/genexus-ide-ui/{p-df2d2a44.entry.js → p-6cd618a8.entry.js} +1 -1
  437. package/dist/genexus-ide-ui/p-6d378d61.entry.js +1 -0
  438. package/dist/genexus-ide-ui/{p-551dd2e7.entry.js → p-6d42b2c4.entry.js} +1 -1
  439. package/dist/genexus-ide-ui/{p-f18db0fa.entry.js → p-6da13f78.entry.js} +1 -1
  440. package/dist/genexus-ide-ui/{p-71c8e106.entry.js → p-70489f0c.entry.js} +1 -1
  441. package/dist/genexus-ide-ui/{p-7882ec8f.entry.js → p-717456fe.entry.js} +1 -1
  442. package/dist/genexus-ide-ui/{p-8c28238e.js → p-71ecc7fd.js} +1 -1
  443. package/dist/genexus-ide-ui/{p-b29b72ee.entry.js → p-7241defb.entry.js} +1 -1
  444. package/dist/genexus-ide-ui/p-72e1b9d5.entry.js +1 -0
  445. package/dist/genexus-ide-ui/{p-e353ab63.entry.js → p-76b376d6.entry.js} +1 -1
  446. package/dist/genexus-ide-ui/p-7d69420f.entry.js +1 -0
  447. package/dist/genexus-ide-ui/{p-91d76a26.entry.js → p-7e13efb2.entry.js} +1 -1
  448. package/dist/genexus-ide-ui/{p-c8227269.entry.js → p-81c9847d.entry.js} +1 -1
  449. package/dist/genexus-ide-ui/{p-fa8a5244.entry.js → p-84e91b37.entry.js} +1 -1
  450. package/dist/genexus-ide-ui/{p-588d8d7e.entry.js → p-866f6d39.entry.js} +1 -1
  451. package/dist/genexus-ide-ui/{p-509ac9ed.entry.js → p-893b9559.entry.js} +1 -1
  452. package/dist/genexus-ide-ui/{p-95cc3b42.entry.js → p-894b33d5.entry.js} +1 -1
  453. package/dist/genexus-ide-ui/{p-721f0ba7.entry.js → p-8a02a18c.entry.js} +1 -1
  454. package/dist/genexus-ide-ui/{p-71a70f61.entry.js → p-8a70239f.entry.js} +1 -1
  455. package/dist/genexus-ide-ui/p-8d46f8d8.entry.js +1 -0
  456. package/dist/genexus-ide-ui/{p-4fddaad8.entry.js → p-8e0dbe42.entry.js} +1 -1
  457. package/dist/genexus-ide-ui/{p-a031c434.entry.js → p-92e84fcc.entry.js} +1 -1
  458. package/dist/genexus-ide-ui/{p-ee37a0b3.js → p-976c3a09.js} +2 -2
  459. package/dist/genexus-ide-ui/{p-69baf840.entry.js → p-999a3e61.entry.js} +2 -2
  460. package/dist/genexus-ide-ui/p-9dc36eb3.entry.js +1 -0
  461. package/dist/genexus-ide-ui/{p-6375af51.entry.js → p-a244661f.entry.js} +1 -1
  462. package/dist/genexus-ide-ui/p-a2479a2f.entry.js +1 -0
  463. package/dist/genexus-ide-ui/{p-f51c0a1e.entry.js → p-a30b3d5d.entry.js} +1 -1
  464. package/dist/genexus-ide-ui/{p-0576445e.entry.js → p-a35f09e9.entry.js} +1 -1
  465. package/dist/genexus-ide-ui/p-a4b359b1.entry.js +1 -0
  466. package/dist/genexus-ide-ui/{p-f92c8072.entry.js → p-a708db45.entry.js} +1 -1
  467. package/dist/genexus-ide-ui/{p-4c7a6e89.entry.js → p-ad9fdfdf.entry.js} +1 -1
  468. package/dist/genexus-ide-ui/p-ade59c73.entry.js +1 -0
  469. package/dist/genexus-ide-ui/{p-53c10876.entry.js → p-aec51bab.entry.js} +1 -1
  470. package/dist/genexus-ide-ui/{p-94e54916.entry.js → p-b0ff985d.entry.js} +1 -1
  471. package/dist/genexus-ide-ui/p-b26b5d74.entry.js +1 -0
  472. package/dist/genexus-ide-ui/{p-6e139bbe.entry.js → p-b4b4cbdc.entry.js} +1 -1
  473. package/dist/genexus-ide-ui/{p-f3f68272.entry.js → p-b7322149.entry.js} +1 -1
  474. package/dist/genexus-ide-ui/{p-89dc8d6b.entry.js → p-b8917eee.entry.js} +1 -1
  475. package/dist/genexus-ide-ui/{p-0aa565cd.entry.js → p-b9d071f7.entry.js} +1 -1
  476. package/dist/genexus-ide-ui/p-bac6580b.js +1 -0
  477. package/dist/genexus-ide-ui/{p-c10eca17.entry.js → p-bbd16c80.entry.js} +1 -1
  478. package/dist/genexus-ide-ui/{p-44dcdfc1.js → p-bfb41ce9.js} +1 -1
  479. package/dist/genexus-ide-ui/{p-a4670f69.entry.js → p-c10d5f34.entry.js} +1 -1
  480. package/dist/genexus-ide-ui/{p-5d824da5.entry.js → p-c11c96d7.entry.js} +1 -1
  481. package/dist/genexus-ide-ui/{p-f93ba1d6.entry.js → p-c38c6957.entry.js} +1 -1
  482. package/dist/genexus-ide-ui/{p-cc263066.entry.js → p-c4536205.entry.js} +1 -1
  483. package/dist/genexus-ide-ui/{p-1ac6ba79.entry.js → p-c580682f.entry.js} +1 -1
  484. package/dist/genexus-ide-ui/{p-1598af34.entry.js → p-c7425416.entry.js} +1 -1
  485. package/dist/genexus-ide-ui/{p-62ca9114.entry.js → p-c779a4be.entry.js} +1 -1
  486. package/dist/genexus-ide-ui/{p-33987fe7.entry.js → p-c9aca4d9.entry.js} +1 -1
  487. package/dist/genexus-ide-ui/{p-ee604964.entry.js → p-cab184a7.entry.js} +1 -1
  488. package/dist/genexus-ide-ui/p-d5c29251.entry.js +1 -0
  489. package/dist/genexus-ide-ui/p-d7f0bc80.entry.js +1 -0
  490. package/dist/genexus-ide-ui/p-db1367b1.entry.js +1 -0
  491. package/dist/genexus-ide-ui/p-db945a17.js +1 -0
  492. package/dist/genexus-ide-ui/{p-d5f093de.entry.js → p-df7996d5.entry.js} +1 -1
  493. package/dist/genexus-ide-ui/{p-4e657980.entry.js → p-dfea4c44.entry.js} +1 -1
  494. package/dist/genexus-ide-ui/{p-2b784b7f.entry.js → p-e0556f4e.entry.js} +1 -1
  495. package/dist/genexus-ide-ui/{p-a192341c.js → p-e46e26a6.js} +1 -1
  496. package/dist/genexus-ide-ui/{p-ad083270.entry.js → p-e4fb3d77.entry.js} +1 -1
  497. package/dist/genexus-ide-ui/{p-1feb3a18.entry.js → p-e7c46bbe.entry.js} +1 -1
  498. package/dist/genexus-ide-ui/{p-36da18f6.entry.js → p-e8e2f4c1.entry.js} +1 -1
  499. package/dist/genexus-ide-ui/{p-46ea87b5.entry.js → p-ea363993.entry.js} +1 -1
  500. package/dist/genexus-ide-ui/p-f1a3397d.entry.js +1 -0
  501. package/dist/genexus-ide-ui/p-f28601c2.entry.js +1 -0
  502. package/dist/genexus-ide-ui/{p-055e64e0.entry.js → p-f5802cde.entry.js} +1 -1
  503. package/dist/genexus-ide-ui/{p-f3e62f92.entry.js → p-f71ee847.entry.js} +1 -1
  504. package/dist/genexus-ide-ui/p-f8c8eebd.entry.js +1 -0
  505. package/dist/genexus-ide-ui/{p-0a7a18e0.entry.js → p-fec82adb.entry.js} +1 -1
  506. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/checkbox/checkbox.css +62 -0
  507. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/grid/grid-row-actions/ch-grid-row-actions.css +5 -0
  508. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/test/test-tree-x.css +59 -0
  509. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/tree-x/tree-x.css +29 -0
  510. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/tree-x-list/tree-x-list.css +6 -0
  511. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/tree-x-list-item/tree-x-list-item.css +244 -0
  512. package/dist/node_modules/@genexus/gemini/dist/collection/components/accordion/accordion.css +23 -0
  513. package/dist/node_modules/@genexus/gemini/dist/collection/components/accordion-item/accordion-item.css +23 -0
  514. package/dist/node_modules/@genexus/gemini/dist/collection/components/alert/alert.css +23 -0
  515. package/dist/node_modules/@genexus/gemini/dist/collection/components/box/box.css +23 -5
  516. package/dist/node_modules/@genexus/gemini/dist/collection/components/button/button.css +23 -0
  517. package/dist/node_modules/@genexus/gemini/dist/collection/components/button-group/button-group.css +23 -0
  518. package/dist/node_modules/@genexus/gemini/dist/collection/components/card/card.css +23 -0
  519. package/dist/node_modules/@genexus/gemini/dist/collection/components/color-picker/color-picker.css +23 -0
  520. package/dist/node_modules/@genexus/gemini/dist/collection/components/column/column.css +23 -0
  521. package/dist/node_modules/@genexus/gemini/dist/collection/components/columns/columns.css +23 -0
  522. package/dist/node_modules/@genexus/gemini/dist/collection/components/combo-box/combo-box.css +23 -5
  523. package/dist/node_modules/@genexus/gemini/dist/collection/components/container/container.css +23 -0
  524. package/dist/node_modules/@genexus/gemini/dist/collection/components/contextual-menu/contextual-menu.css +23 -0
  525. package/dist/node_modules/@genexus/gemini/dist/collection/components/contextual-menu-item/contextual-menu-item.css +23 -0
  526. package/dist/node_modules/@genexus/gemini/dist/collection/components/contextual-menu-submenu/contextual-menu-submenu.css +23 -0
  527. package/dist/node_modules/@genexus/gemini/dist/collection/components/date-picker/date-picker.css +23 -0
  528. package/dist/node_modules/@genexus/gemini/dist/collection/components/demo/demo.css +23 -0
  529. package/dist/node_modules/@genexus/gemini/dist/collection/components/drag-box/drag-box.css +23 -0
  530. package/dist/node_modules/@genexus/gemini/dist/collection/components/drag-container/drag-container.css +23 -0
  531. package/dist/node_modules/@genexus/gemini/dist/collection/components/drop-down/drop-down.css +23 -5
  532. package/dist/node_modules/@genexus/gemini/dist/collection/components/filter/gxg-filter.css +23 -5
  533. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-checkbox/form-checkbox.css +23 -0
  534. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-checkbox-group/gxg-form-checkbox-group.css +23 -0
  535. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-message/form-message.css +23 -0
  536. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-option/option.css +23 -0
  537. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-radio/form-radio.css +23 -0
  538. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-radio-group/form-radio-group.css +23 -0
  539. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-select/select.css +23 -0
  540. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-text/form-text.css +23 -0
  541. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-textarea/form-textarea.css +23 -0
  542. package/dist/node_modules/@genexus/gemini/dist/collection/components/grid/gxg-grid.css +23 -5
  543. package/dist/node_modules/@genexus/gemini/dist/collection/components/icon/icon.css +23 -0
  544. package/dist/node_modules/@genexus/gemini/dist/collection/components/label/gxg-label.css +23 -0
  545. package/dist/node_modules/@genexus/gemini/dist/collection/components/list-box/list-box.css +23 -5
  546. package/dist/node_modules/@genexus/gemini/dist/collection/components/list-box-item/list-box-item.css +23 -0
  547. package/dist/node_modules/@genexus/gemini/dist/collection/components/loader-gxg/loader.css +23 -0
  548. package/dist/node_modules/@genexus/gemini/dist/collection/components/menu/menu.css +23 -0
  549. package/dist/node_modules/@genexus/gemini/dist/collection/components/menu-item/menu-item.css +23 -0
  550. package/dist/node_modules/@genexus/gemini/dist/collection/components/menu-list/menu-list.css +23 -0
  551. package/dist/node_modules/@genexus/gemini/dist/collection/components/modal/modal.css +23 -0
  552. package/dist/node_modules/@genexus/gemini/dist/collection/components/more-info/more-info.css +23 -0
  553. package/dist/node_modules/@genexus/gemini/dist/collection/components/options/gxg-options.css +23 -10
  554. package/dist/node_modules/@genexus/gemini/dist/collection/components/pill/pill.css +23 -0
  555. package/dist/node_modules/@genexus/gemini/dist/collection/components/progress-bar/progress-bar.css +23 -0
  556. package/dist/node_modules/@genexus/gemini/dist/collection/components/scroll/scroll.css +682 -0
  557. package/dist/node_modules/@genexus/gemini/dist/collection/components/separator/separator.css +23 -0
  558. package/dist/node_modules/@genexus/gemini/dist/collection/components/slider/slider.css +23 -0
  559. package/dist/node_modules/@genexus/gemini/dist/collection/components/spacer-layout/spacer-layout.css +23 -0
  560. package/dist/node_modules/@genexus/gemini/dist/collection/components/spacer-one/spacer-one.css +23 -0
  561. package/dist/node_modules/@genexus/gemini/dist/collection/components/stack/stack.css +23 -0
  562. package/dist/node_modules/@genexus/gemini/dist/collection/components/stepper/stepper.css +23 -0
  563. package/dist/node_modules/@genexus/gemini/dist/collection/components/suggest/styles.css +37 -13
  564. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab/tab.css +23 -0
  565. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab-bar/tab-bar.css +23 -0
  566. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab-button/tab-button.css +23 -0
  567. package/dist/node_modules/@genexus/gemini/dist/collection/components/tabs/tabs.css +23 -5
  568. package/dist/node_modules/@genexus/gemini/dist/collection/components/text/text.css +23 -0
  569. package/dist/node_modules/@genexus/gemini/dist/collection/components/title/title.css +23 -0
  570. package/dist/node_modules/@genexus/gemini/dist/collection/components/toggle/toggle.css +23 -0
  571. package/dist/node_modules/@genexus/gemini/dist/collection/components/toolbar/toolbar.css +23 -0
  572. package/dist/node_modules/@genexus/gemini/dist/collection/components/toolbar-item/toolbar-item.css +23 -0
  573. package/dist/node_modules/@genexus/gemini/dist/collection/components/tooltip/tooltip.css +23 -0
  574. package/dist/node_modules/@genexus/gemini/dist/collection/components/tree/gxg-tree.css +23 -5
  575. package/dist/node_modules/@genexus/gemini/dist/collection/components/tree-item/gxg-tree-item.css +23 -0
  576. package/dist/node_modules/@genexus/gemini/dist/collection/components/window/window.css +23 -5
  577. package/dist/types/common/render-combo-items.d.ts +2 -0
  578. package/dist/types/common/types.d.ts +2 -0
  579. package/dist/types/components/list-selector/list-selector-item/list-selector-item.d.ts +55 -0
  580. package/dist/types/components/list-selector/list-selector.d.ts +32 -0
  581. package/dist/types/components/team-dev-commit/team-dev-commit.d.ts +125 -0
  582. package/dist/types/components/team-dev-select-recent-comment/team-dev-select-recent-comment.d.ts +63 -0
  583. package/dist/types/components.d.ts +263 -0
  584. package/package.json +3 -3
  585. package/dist/cjs/ch-grid-rowset-legend_2.cjs.entry.js +0 -51
  586. package/dist/cjs/gxg-list-box-item.cjs.entry.js +0 -127
  587. package/dist/esm/ch-grid-rowset-legend_2.entry.js +0 -46
  588. package/dist/genexus-ide-ui/p-05b815a2.js +0 -1
  589. package/dist/genexus-ide-ui/p-2d0f76dd.entry.js +0 -1
  590. package/dist/genexus-ide-ui/p-3b2a830e.entry.js +0 -1
  591. package/dist/genexus-ide-ui/p-528c300c.entry.js +0 -1
  592. package/dist/genexus-ide-ui/p-55246341.entry.js +0 -1
  593. package/dist/genexus-ide-ui/p-58536458.js +0 -1
  594. package/dist/genexus-ide-ui/p-5bbf6ff9.entry.js +0 -1
  595. package/dist/genexus-ide-ui/p-6d8c6dd0.entry.js +0 -1
  596. package/dist/genexus-ide-ui/p-814252a9.entry.js +0 -1
  597. package/dist/genexus-ide-ui/p-83cd6b73.entry.js +0 -1
  598. package/dist/genexus-ide-ui/p-8a547c9f.entry.js +0 -1
  599. package/dist/genexus-ide-ui/p-8f35d978.entry.js +0 -1
  600. package/dist/genexus-ide-ui/p-97c1f045.entry.js +0 -1
  601. package/dist/genexus-ide-ui/p-abad6cb9.entry.js +0 -1
  602. package/dist/genexus-ide-ui/p-b3d6653d.js +0 -1
  603. package/dist/genexus-ide-ui/p-b6152c51.entry.js +0 -1
  604. package/dist/genexus-ide-ui/p-bf73003b.entry.js +0 -1
  605. package/dist/genexus-ide-ui/p-cb9bf31c.entry.js +0 -1
  606. package/dist/genexus-ide-ui/p-dff92210.entry.js +0 -1
  607. package/dist/genexus-ide-ui/p-ea904a31.entry.js +0 -1
  608. package/dist/genexus-ide-ui/p-f014238e.entry.js +0 -1
@@ -0,0 +1,960 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement, w as writeTask } from './index-0da01575.js';
2
+ import { m as mouseEventModifierKey } from './helpers-56190205.js';
3
+
4
+ const treeXCss = "ch-tree-x{display:flex}ch-tree-x.ch-tree-x-dragging-item :not(.ch-tree-x-list-item--accept-drop){pointer-events:none}ch-tree-x.ch-tree-x-dragging-item .ch-tree-x-list-item--accept-drop{pointer-events:all}ch-tree-x.ch-tree-x-waiting-drop-processing{cursor:wait}ch-tree-x.ch-tree-x-waiting-drop-processing>ch-tree-x-list{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}html[dir=rtl] .ch-tree-x-drag-info{--rtl-offset:-100%}";
5
+
6
+ const TREE_ITEM_TAG_NAME$1 = "ch-tree-x-list-item";
7
+ const TREE_LIST_TAG_NAME = "ch-tree-x-list";
8
+ // Selectors
9
+ const TREE_LIST_AND_ITEM_SELECTOR = TREE_LIST_TAG_NAME + "," + TREE_ITEM_TAG_NAME$1;
10
+ // const CHECKED_ITEMS = `${TREE_ITEM_TAG_NAME}[checked]`;
11
+ const ARROW_DOWN_KEY = "ArrowDown";
12
+ const ARROW_UP_KEY = "ArrowUp";
13
+ const EDIT_KEY = "F2";
14
+ const isExecutedInTree = (event, el) => event.composedPath().includes(el);
15
+ const treeItemIsInEditMode = () => document.activeElement.editing;
16
+ const POSITION_X_DRAG_CUSTOM_VAR = "--ch-tree-x-dragging-item-x";
17
+ const POSITION_Y_DRAG_CUSTOM_VAR = "--ch-tree-x-dragging-item-y";
18
+ const ChTreeX = class {
19
+ constructor(hostRef) {
20
+ registerInstance(this, hostRef);
21
+ this.selectedItemsChange = createEvent(this, "selectedItemsChange", 7);
22
+ this.itemsDropped = createEvent(this, "itemsDropped", 7);
23
+ // @todo TODO: Check if key codes works in Safari
24
+ this.keyDownEvents = {
25
+ [ARROW_DOWN_KEY]: event => {
26
+ if (!isExecutedInTree(event, this.el) || treeItemIsInEditMode()) {
27
+ return;
28
+ }
29
+ event.preventDefault();
30
+ const treeItem = document.activeElement;
31
+ treeItem.focusNextItem(mouseEventModifierKey(event));
32
+ },
33
+ [ARROW_UP_KEY]: event => {
34
+ if (!isExecutedInTree(event, this.el) || treeItemIsInEditMode()) {
35
+ return;
36
+ }
37
+ event.preventDefault();
38
+ const treeItem = document.activeElement;
39
+ treeItem.focusPreviousItem(mouseEventModifierKey(event));
40
+ },
41
+ [EDIT_KEY]: event => {
42
+ if (document.activeElement.tagName.toLowerCase() !== TREE_ITEM_TAG_NAME$1) {
43
+ return;
44
+ }
45
+ event.preventDefault();
46
+ document.activeElement.editing = true;
47
+ }
48
+ };
49
+ this.needForRAF = true; // To prevent redundant RAF (request animation frame) calls
50
+ this.lastPageX = 0;
51
+ this.lastPageY = 0;
52
+ this.selectedItemsInfo = new Map();
53
+ this.draggedIds = [];
54
+ this.draggedParentIds = [];
55
+ this.draggingItem = false;
56
+ /**
57
+ * Level in the tree at which the control is placed.
58
+ */
59
+ this.level = -1;
60
+ /**
61
+ * Set this attribute if you want to allow multi selection of the items.
62
+ */
63
+ this.multiSelection = false;
64
+ /**
65
+ * This property lets you specify the time (in ms) that the mouse must be
66
+ * over in a subtree to open it when dragging.
67
+ */
68
+ this.openSubTreeCountdown = 750;
69
+ /**
70
+ * `true` to display the relation between tree items and tree lists using
71
+ * lines.
72
+ */
73
+ this.showLines = false;
74
+ /**
75
+ * This property lets you specify if the tree is waiting to process the drop
76
+ * of items.
77
+ */
78
+ this.waitDropProcessing = false;
79
+ this.trackItemDragEnter = (event) => {
80
+ event.stopPropagation();
81
+ const currentTarget = event.target;
82
+ // Don't mark droppable zones if they are the dragged items or their direct parents
83
+ if (!this.validDroppableZone(currentTarget.id)) {
84
+ return;
85
+ }
86
+ // Check if it is a valid item
87
+ if (currentTarget.tagName.toLowerCase() !== TREE_ITEM_TAG_NAME$1) {
88
+ return;
89
+ }
90
+ const treeItem = currentTarget;
91
+ treeItem.dragState = "enter";
92
+ this.openSubTreeAfterCountdown(treeItem);
93
+ };
94
+ this.validDroppableZone = (draggedItemId) => !this.draggedIds.includes(draggedItemId) &&
95
+ !this.draggedParentIds.includes(draggedItemId);
96
+ this.trackItemDragLeave = (event) => {
97
+ const currentTarget = event.target;
98
+ if (currentTarget.tagName.toLowerCase() !== TREE_ITEM_TAG_NAME$1) {
99
+ return;
100
+ }
101
+ const treeItem = currentTarget;
102
+ treeItem.dragState = "none";
103
+ this.cancelSubTreeOpening(treeItem);
104
+ };
105
+ this.trackItemDrag = (event) => {
106
+ event.preventDefault();
107
+ this.lastPageX = event.pageX;
108
+ this.lastPageY = event.pageY;
109
+ if (!this.needForRAF) {
110
+ return;
111
+ }
112
+ this.needForRAF = false; // No need to call RAF up until next frame
113
+ requestAnimationFrame(() => {
114
+ this.needForRAF = true; // RAF now consumes the movement instruction so a new one can come
115
+ this.el.style.setProperty(POSITION_X_DRAG_CUSTOM_VAR, `${this.lastPageX}px`);
116
+ this.el.style.setProperty(POSITION_Y_DRAG_CUSTOM_VAR, `${this.lastPageY}px`);
117
+ });
118
+ };
119
+ this.handleKeyDownEvents = (event) => {
120
+ const keyHandler = this.keyDownEvents[event.key];
121
+ if (keyHandler) {
122
+ keyHandler(event);
123
+ }
124
+ };
125
+ }
126
+ handleShowLinesChange(newShowLines) {
127
+ const treeItems = this.el.querySelectorAll(TREE_LIST_AND_ITEM_SELECTOR);
128
+ treeItems.forEach(item => {
129
+ item.showLines = newShowLines;
130
+ });
131
+ }
132
+ /**
133
+ * Given an item id, it displays and scrolls into the item view.
134
+ */
135
+ async scrollIntoVisible(treeItemId) {
136
+ const itemRef = this.el.querySelector(`${TREE_ITEM_TAG_NAME$1}#${treeItemId}`);
137
+ if (!itemRef) {
138
+ return;
139
+ }
140
+ let parentItem = itemRef.parentElement.parentElement;
141
+ // Expand all parents
142
+ while (parentItem.tagName.toLowerCase() === TREE_ITEM_TAG_NAME$1) {
143
+ parentItem.expanded = true;
144
+ parentItem = parentItem.parentElement.parentElement;
145
+ }
146
+ // Wait until the parents are expanded
147
+ requestAnimationFrame(() => {
148
+ itemRef.scrollIntoView();
149
+ });
150
+ }
151
+ // /**
152
+ // * This method is used to toggle a tree item by the tree item id/ids.
153
+ // *
154
+ // * @param treeItemIds An array id the tree items to be toggled.
155
+ // * @param expand A boolean indicating that the tree item should be expanded or collapsed. (optional)
156
+ // * @returns The modified items after the method was called.
157
+ // */
158
+ // @Method()
159
+ // async toggleItems(
160
+ // treeItemIds: string[],
161
+ // expand?: boolean
162
+ // ): Promise<ExpandedTreeItemInfo[]> {
163
+ // if (!treeItemIds) {
164
+ // return [];
165
+ // }
166
+ // const allTreeItems = Array.from(
167
+ // this.el.querySelectorAll(TREE_ITEM_TAG_NAME)
168
+ // );
169
+ // const modifiedTreeItems: ExpandedTreeItemInfo[] = [];
170
+ // treeItemIds.forEach(treeItemId => {
171
+ // const treeItem = allTreeItems.find(item => treeItemId === item.id);
172
+ // if (treeItem) {
173
+ // treeItem.expanded = expand ?? !treeItem.expanded;
174
+ // modifiedTreeItems.push({
175
+ // id: treeItem.id,
176
+ // expanded: treeItem.expanded
177
+ // });
178
+ // }
179
+ // });
180
+ // return modifiedTreeItems;
181
+ // }
182
+ // /**
183
+ // * Returns an array of the selected tree items, providing the id, caption and
184
+ // * selected status.
185
+ // */
186
+ // @Method()
187
+ // async getCheckedItems(): Promise<CheckedTreeItemInfo[]> {
188
+ // const checkedItems = Array.from(
189
+ // this.el.querySelectorAll(CHECKED_ITEMS)
190
+ // ) as HTMLChTreeXListItemElement[];
191
+ // return checkedItems.map(item => ({
192
+ // id: item.id,
193
+ // caption: item.caption,
194
+ // selected: item.selected
195
+ // }));
196
+ // }
197
+ handleItemDragStart(event) {
198
+ document.body.addEventListener("dragover", this.trackItemDrag, {
199
+ capture: true
200
+ });
201
+ this.currentDraggedItem = event.target;
202
+ this.updateDragInfo(event.detail);
203
+ this.el.addEventListener("dragenter", this.trackItemDragEnter, {
204
+ capture: true,
205
+ passive: true
206
+ });
207
+ this.el.addEventListener("dragleave", this.trackItemDragLeave, {
208
+ capture: true,
209
+ passive: true
210
+ });
211
+ // Wait until the custom var values are updated to avoid flickering
212
+ setTimeout(() => {
213
+ this.draggingItem = true;
214
+ }, 10);
215
+ }
216
+ handleItemDragEnd() {
217
+ this.draggingItem = false;
218
+ document.body.removeEventListener("dragover", this.trackItemDrag, {
219
+ capture: true
220
+ });
221
+ this.el.removeEventListener("dragenter", this.trackItemDragEnter, {
222
+ capture: true
223
+ });
224
+ this.el.removeEventListener("dragleave", this.trackItemDragLeave, {
225
+ capture: true
226
+ });
227
+ // Reset not allowed droppable ids
228
+ this.resetVariables();
229
+ }
230
+ handleItemDrop(event) {
231
+ event.stopPropagation();
232
+ this.cancelSubTreeOpening(null, true);
233
+ const selectedItemEl = event.target;
234
+ if (!this.validDroppableZone(selectedItemEl.id)) {
235
+ return;
236
+ }
237
+ this.itemsDropped.emit(event.detail);
238
+ }
239
+ handleSelectedItemChange(event) {
240
+ event.stopPropagation();
241
+ const selectedItemInfo = event.detail;
242
+ const selectedItemEl = event.target;
243
+ this.handleItemSelection(selectedItemEl, selectedItemInfo);
244
+ }
245
+ openSubTreeAfterCountdown(treeItem) {
246
+ this.cancelSubTreeOpening(treeItem);
247
+ if (treeItem.leaf || treeItem.expanded) {
248
+ return;
249
+ }
250
+ this.lastOpenSubTreeItem = treeItem;
251
+ this.openSubTreeTimeout = setTimeout(() => {
252
+ treeItem.expanded = true;
253
+ }, this.openSubTreeCountdown);
254
+ }
255
+ cancelSubTreeOpening(treeItem, forceClear = false) {
256
+ if (this.lastOpenSubTreeItem === treeItem || forceClear) {
257
+ clearTimeout(this.openSubTreeTimeout);
258
+ }
259
+ }
260
+ resetVariables() {
261
+ this.draggedIds = [];
262
+ this.draggedParentIds = [];
263
+ }
264
+ /**
265
+ * Update the dataTransfer in the drag event to store the ids of the dragged
266
+ * items. Also it updates the visual information of the dragged items.
267
+ */
268
+ updateDragInfo(dragInfo) {
269
+ const draggedElement = dragInfo.elem;
270
+ const isDraggingSelectedItems = this.selectedItemsInfo.has(draggedElement.id);
271
+ let joinedDraggedIds;
272
+ if (isDraggingSelectedItems) {
273
+ const selectedItemKeys = [...this.selectedItemsInfo.keys()];
274
+ const selectedItemCount = selectedItemKeys.length;
275
+ this.draggedIds = selectedItemKeys;
276
+ joinedDraggedIds = selectedItemKeys.join(",");
277
+ this.dragInfo =
278
+ selectedItemCount === 1
279
+ ? draggedElement.caption
280
+ : selectedItemCount.toString();
281
+ }
282
+ else {
283
+ joinedDraggedIds = draggedElement.id;
284
+ this.draggedIds = [joinedDraggedIds];
285
+ this.dragInfo = draggedElement.caption;
286
+ }
287
+ this.getDirectParentsOfDraggableItems(isDraggingSelectedItems);
288
+ dragInfo.dataTransfer.setData("text/plain", joinedDraggedIds);
289
+ }
290
+ getDirectParentsOfDraggableItems(draggingSelectedItems) {
291
+ if (!draggingSelectedItems) {
292
+ const parentTreeItemElem = this.currentDraggedItem.parentElement.parentElement;
293
+ if (parentTreeItemElem.tagName.toLowerCase() === TREE_ITEM_TAG_NAME$1) {
294
+ this.draggedParentIds.push(parentTreeItemElem.id);
295
+ }
296
+ return;
297
+ }
298
+ // Dragging selected items
299
+ this.selectedItemsInfo.forEach(selectedItem => {
300
+ const parentId = selectedItem.parentId;
301
+ // parentId === "" when the item is in the first level of the tree
302
+ if (parentId !== "") {
303
+ this.draggedParentIds.push(parentId);
304
+ }
305
+ });
306
+ }
307
+ handleItemSelection(selectedItemEl, selectedItemInfo) {
308
+ // If the Control key was not pressed or multi selection is disabled,
309
+ // remove all selected items
310
+ if (!selectedItemInfo.ctrlKeyPressed || !this.multiSelection) {
311
+ this.selectedItemsInfo.forEach(treeItem => {
312
+ treeItem.itemRef.selected = false;
313
+ });
314
+ this.clearSelectedItems();
315
+ // Re-select the item
316
+ selectedItemEl.selected = selectedItemInfo.selected;
317
+ }
318
+ // If the item is selected, add it to list
319
+ if (selectedItemInfo.selected) {
320
+ this.selectedItemsInfo.set(selectedItemInfo.id, selectedItemInfo);
321
+ }
322
+ else {
323
+ this.selectedItemsInfo.delete(selectedItemInfo.id);
324
+ }
325
+ // Sync with UI model
326
+ this.selectedItemsChange.emit(this.selectedItemsInfo);
327
+ }
328
+ clearSelectedItems() {
329
+ this.selectedItemsInfo.clear();
330
+ }
331
+ connectedCallback() {
332
+ // Set edit mode in items
333
+ this.el.addEventListener("keydown", this.handleKeyDownEvents, {
334
+ capture: true
335
+ });
336
+ }
337
+ disconnectedCallback() {
338
+ this.el.removeEventListener("keydown", this.handleKeyDownEvents);
339
+ this.resetVariables();
340
+ // Remove dragover body event
341
+ this.handleItemDragEnd();
342
+ }
343
+ render() {
344
+ return (h(Host, { class: {
345
+ "ch-tree-x-dragging-item": this.draggingItem,
346
+ "ch-tree-x-waiting-drop-processing": this.waitDropProcessing
347
+ } }, h("slot", null), this.draggingItem && (h("span", { "aria-hidden": "true", class: "ch-tree-x-drag-info" }, this.dragInfo))));
348
+ }
349
+ get el() { return getElement(this); }
350
+ static get watchers() { return {
351
+ "showLines": ["handleShowLinesChange"]
352
+ }; }
353
+ };
354
+ ChTreeX.style = treeXCss;
355
+
356
+ const treeXListCss = ":host{display:grid;grid-auto-rows:min-content;position:relative;width:100%}";
357
+
358
+ /**
359
+ * This variable specifies a reference to the main ch-tree-x element
360
+ */
361
+ let mainTreeRef$1;
362
+ const ChTreeListX = class {
363
+ constructor(hostRef) {
364
+ registerInstance(this, hostRef);
365
+ /**
366
+ * Level in the tree at which the control is placed.
367
+ */
368
+ this.level = 0;
369
+ /**
370
+ * `true` to display the relation between tree items and tree lists using
371
+ * lines.
372
+ */
373
+ this.showLines = true;
374
+ this.updateLastItemDashedLine = () => {
375
+ const treeItems = this.slotRef.assignedElements();
376
+ if (treeItems.length === 0) {
377
+ return;
378
+ }
379
+ const lastItemIndex = treeItems.length - 1;
380
+ for (let i = 0; i < lastItemIndex; i++) {
381
+ treeItems[i].lastItem = false;
382
+ }
383
+ treeItems[lastItemIndex].lastItem = true;
384
+ };
385
+ }
386
+ handleShowLinesChange(newValue) {
387
+ // Displayed items may have changed since the last time that `showLines === true`
388
+ if (newValue) {
389
+ this.updateLastItemDashedLine();
390
+ }
391
+ }
392
+ componentWillLoad() {
393
+ // Set tree level
394
+ const parentElement = this.el.parentElement;
395
+ // Set item level
396
+ this.level = parentElement.level + 1;
397
+ // If the mainTreeRef is not defined, the first item that will load this
398
+ // reference will be the top tree-x-list
399
+ if (!mainTreeRef$1) {
400
+ mainTreeRef$1 = parentElement;
401
+ }
402
+ this.showLines = mainTreeRef$1.showLines;
403
+ }
404
+ render() {
405
+ return (h(Host, { role: this.level === 0 ? "tree" : "group" }, h("slot", { onSlotchange: this.showLines && this.level !== 0
406
+ ? this.updateLastItemDashedLine
407
+ : null, ref: el => (this.slotRef = el) })));
408
+ }
409
+ get el() { return getElement(this); }
410
+ static get watchers() { return {
411
+ "showLines": ["handleShowLinesChange"]
412
+ }; }
413
+ };
414
+ ChTreeListX.style = treeXListCss;
415
+
416
+ const treeXListItemCss = ":where(button){all:unset;display:flex;cursor:pointer;user-select:none;touch-action:manipulation;-webkit-user-drag:element}*,::before,::after{box-sizing:border-box}:host{--checkbox-size:1em;--expandable-button-width:12px;--tab-width:calc(\n var(--checkbox-size) + var(--expandable-button-width) +\n (5px * 2)\n );display:grid;grid-template-rows:min-content}.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:var(--inset-inline-start);height:1px;width:calc( var(--tab-width) - var(--parent-checkbox-offset) - var(--parent-expandable-offset) - var(--own-offset) - 4px );border:0 dashed #a9a9a9;border-block-end-width:1px;pointer-events:none;content-visibility:hidden;contain-intrinsic-size:auto 100px}.last-dashed-line{inset-block-start:0;height:calc(100% - var(--distance-to-checkbox));border-inline-start-width:1px;border-end-start-radius:2px;pointer-events:none}.expandable-button{display:grid;place-items:center;width:var(--expandable-button-width);height:var(--expandable-button-width);margin-inline-end:5px;z-index:1}.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}.action{display:grid;grid-template:\"left-img text right-img\"/max-content 1fr max-content;align-items:center;height:100%;flex:1}.readonly-mode{padding-block:0.75px}.left-img,.right-img{display:block;width:0.875em;height:0.875em}.left-img{grid-area:left-img;margin-inline-end:6px}.right-img{grid-area:right-img;margin-inline-start:6px}.edit-name{grid-area:text;width:100%;height:100%;background-color:unset;padding:0;margin:0;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-template-rows:0fr;content-visibility:auto;contain-intrinsic-size:auto 100px}.expanded{grid-template-rows:1fr}:not(.expanded) ::slotted([slot=tree]){display:none;overflow:hidden;content-visibility:hidden}";
417
+
418
+ const resetDragImage = new Image();
419
+ // Selectors
420
+ const TREE_ITEM_TAG_NAME = "ch-tree-x-list-item";
421
+ const DIRECT_TREE_ITEM_CHILDREN = `:scope>*>${TREE_ITEM_TAG_NAME}`;
422
+ const FIRST_ENABLED_SUB_ITEM = `${TREE_ITEM_TAG_NAME}:not([disabled])`;
423
+ const LAST_SUB_ITEM = `:scope>*>${TREE_ITEM_TAG_NAME}:last-child`;
424
+ // Keys
425
+ const EXPANDABLE_ID = "expandable";
426
+ const ENTER_KEY = "Enter";
427
+ const ESCAPE_KEY = "Escape";
428
+ /**
429
+ * This variable specifies a reference to the main ch-tree-x element
430
+ */
431
+ let mainTreeRef;
432
+ const ChTreeXListItem = class {
433
+ constructor(hostRef) {
434
+ registerInstance(this, hostRef);
435
+ this.checkboxChange = createEvent(this, "checkboxChange", 7);
436
+ this.itemDragStart = createEvent(this, "itemDragStart", 7);
437
+ this.itemDragEnd = createEvent(this, "itemDragEnd", 7);
438
+ this.itemDrop = createEvent(this, "itemDrop", 7);
439
+ this.loadLazyContent = createEvent(this, "loadLazyContent", 7);
440
+ this.modifyCaption = createEvent(this, "modifyCaption", 7);
441
+ this.selectedItemChange = createEvent(this, "selectedItemChange", 7);
442
+ /**
443
+ * Useful to ignore the checkbox change when it was committed from a children.
444
+ */
445
+ this.ignoreCheckboxChange = false;
446
+ /**
447
+ * Set this attribute if you want display a checkbox in the control.
448
+ */
449
+ this.checkbox = false;
450
+ /**
451
+ * Set this attribute if you want the checkbox to be checked by default.
452
+ * Only works if `checkbox = true`
453
+ */
454
+ this.checked = false;
455
+ /**
456
+ * This attribute lets you specify if the element is disabled.
457
+ * If disabled, it will not fire any user interaction related event
458
+ * (for example, click event).
459
+ */
460
+ this.disabled = false;
461
+ /**
462
+ * This property lets you define the current state of the item when it's
463
+ * being dragged.
464
+ */
465
+ this.dragState = "none";
466
+ /**
467
+ * This attribute lets you specify when items are being lazy loaded in the
468
+ * control.
469
+ */
470
+ this.downloading = false;
471
+ /**
472
+ * Set this attribute when the item is in edit mode
473
+ */
474
+ this.editing = false;
475
+ /**
476
+ * If the item has a sub-tree, this attribute determines if the subtree is
477
+ * displayed.
478
+ */
479
+ this.expanded = false;
480
+ /**
481
+ * This attribute specifies if the control is the last items in its subtree
482
+ */
483
+ this.lastItem = false;
484
+ /**
485
+ * Determine if the items are lazy loaded when opening the first time the
486
+ * control.
487
+ */
488
+ this.lazyLoad = false;
489
+ /**
490
+ * The presence of this attribute determine whether the item contains a
491
+ * subtree. `true` if the item does not have a subtree.
492
+ */
493
+ this.leaf = false;
494
+ /**
495
+ * Level in the tree at which the item is placed.
496
+ */
497
+ this.level = 0;
498
+ /**
499
+ * `true` if the checkbox's value is indeterminate.
500
+ */
501
+ this.indeterminate = false;
502
+ /**
503
+ * This attribute lets you specify if the item is selected
504
+ */
505
+ this.selected = false;
506
+ /**
507
+ * `true` to show the downloading spinner when lazy loading the sub items of
508
+ * the control.
509
+ */
510
+ this.showDownloadingSpinner = true;
511
+ /**
512
+ * `true` to show the expandable button that allows to expand/collapse the
513
+ * items of the control. Only works if `leaf === false`.
514
+ */
515
+ this.showExpandableButton = true;
516
+ /**
517
+ * `true` to display the relation between tree items and tree lists using
518
+ * lines.
519
+ */
520
+ this.showLines = true;
521
+ /**
522
+ * Set this attribute if you want all the children item's checkboxes to be
523
+ * checked when the parent item checkbox is checked, or to be unchecked when
524
+ * the parent item checkbox is unchecked.
525
+ */
526
+ this.toggleCheckboxes = false;
527
+ this.checkIfShouldRemoveEditMode = (event) => {
528
+ event.stopPropagation();
529
+ if (event.code !== ENTER_KEY && event.code !== ESCAPE_KEY) {
530
+ return;
531
+ }
532
+ event.preventDefault();
533
+ const commitEdition = event.code === ENTER_KEY;
534
+ this.removeEditMode(true, commitEdition)();
535
+ };
536
+ this.removeEditModeOnClick = (event) => {
537
+ // The click is executed outside the input and the pointer type is defined,
538
+ // meaning that the button click was not triggered by the Enter or Space keys
539
+ if (!event.composedPath().includes(this.inputRef) && event.pointerType) {
540
+ this.removeEditMode(false)();
541
+ }
542
+ };
543
+ this.removeEditMode = (shouldFocusHeader, commitEdition = false) => () => {
544
+ // When pressing the enter key in the input, the removeEditMode event is
545
+ // triggered twice (due to the headerRef.focus() triggering the onBlur
546
+ // event in the input), so we need to check if the edit mode was disabled
547
+ if (!this.editing) {
548
+ return;
549
+ }
550
+ this.editing = false;
551
+ document.body.removeEventListener("click", this.removeEditModeOnClick, {
552
+ capture: true
553
+ });
554
+ const newCaption = this.inputRef.value;
555
+ if (commitEdition && newCaption.trim() !== "") {
556
+ this.modifyCaption.emit({
557
+ id: this.el.id,
558
+ caption: newCaption
559
+ });
560
+ }
561
+ if (shouldFocusHeader) {
562
+ this.headerRef.focus();
563
+ }
564
+ };
565
+ this.toggleExpand = (event) => {
566
+ event.stopPropagation();
567
+ if (!this.leaf) {
568
+ this.expanded = !this.expanded;
569
+ }
570
+ this.selected = true;
571
+ this.selectedItemChange.emit({
572
+ ctrlKeyPressed: mouseEventModifierKey(event),
573
+ expanded: this.expanded,
574
+ goToReference: false,
575
+ id: this.el.id,
576
+ itemRef: this.el,
577
+ parentId: this.el.parentElement.parentElement.id,
578
+ selected: true
579
+ });
580
+ };
581
+ this.handleActionDblClick = (event) => {
582
+ event.stopPropagation();
583
+ if (mouseEventModifierKey(event)) {
584
+ this.toggleSelected();
585
+ return;
586
+ }
587
+ // The Control key is not pressed, so the control can be expanded
588
+ this.toggleExpand(event);
589
+ };
590
+ /**
591
+ * Event triggered by the following actions on the main button:
592
+ * - Click
593
+ * - Enter keydown
594
+ * - Space keydown and keyup
595
+ */
596
+ this.handleActionClick = (event) => {
597
+ event.stopPropagation();
598
+ // Don't perform actions when editing
599
+ if (this.editing) {
600
+ return;
601
+ }
602
+ event.preventDefault();
603
+ // Click event
604
+ if (event.pointerType) {
605
+ this.toggleOrSelect(event);
606
+ return;
607
+ }
608
+ // Enter or space
609
+ this.toggleExpand(event);
610
+ };
611
+ /**
612
+ * Event triggered by key events on the main button.
613
+ */
614
+ this.handleActionKeyDown = (event) => {
615
+ // Only toggle if the Enter key was pressed with the Ctrl key
616
+ if (mouseEventModifierKey(event) && event.code === ENTER_KEY) {
617
+ event.stopPropagation();
618
+ this.toggleSelected();
619
+ }
620
+ };
621
+ this.handleCheckedChange = (event) => {
622
+ event.stopPropagation();
623
+ const checked = event.target.checked;
624
+ this.checked = checked;
625
+ this.checkboxChange.emit(checked);
626
+ };
627
+ this.renderImg = (cssClass, src) => (h("img", { "aria-hidden": "true", class: cssClass, part: cssClass, alt: "", src: src, loading: "lazy" }));
628
+ this.handleDragStart = (event) => {
629
+ event.stopPropagation();
630
+ // Disallow drag when editing the caption
631
+ if (this.editing) {
632
+ event.preventDefault();
633
+ return;
634
+ }
635
+ event.dataTransfer.setDragImage(resetDragImage, 0, 0);
636
+ // this.el.style.cursor = "move";
637
+ this.dragState = "start";
638
+ this.itemDragStart.emit({
639
+ elem: this.el,
640
+ dataTransfer: event.dataTransfer
641
+ });
642
+ };
643
+ this.handleDragEnd = () => {
644
+ // event.preventDefault();
645
+ // this.el.style.cursor = null;
646
+ this.dragState = "none";
647
+ this.itemDragEnd.emit();
648
+ };
649
+ this.handleDrop = (event) => {
650
+ event.stopPropagation();
651
+ this.dragState = "none";
652
+ this.itemDrop.emit({
653
+ dropItemId: this.el.id,
654
+ dataTransfer: event.dataTransfer
655
+ });
656
+ };
657
+ }
658
+ updateChildrenCheckedValue(newValue) {
659
+ if (!this.toggleCheckboxes || this.leaf || this.ignoreCheckboxChange) {
660
+ this.ignoreCheckboxChange = false;
661
+ return;
662
+ }
663
+ const treeItems = this.getDirectTreeItems();
664
+ treeItems.forEach(treeItem => {
665
+ treeItem.checked = newValue;
666
+ });
667
+ }
668
+ handleEditingChange(isEditing) {
669
+ if (!isEditing) {
670
+ return;
671
+ }
672
+ document.body.addEventListener("click", this.removeEditModeOnClick, {
673
+ capture: true
674
+ });
675
+ // Wait until the input is rendered to focus it
676
+ writeTask(() => {
677
+ requestAnimationFrame(() => {
678
+ if (this.inputRef) {
679
+ this.inputRef.focus();
680
+ }
681
+ });
682
+ });
683
+ }
684
+ handleExpandedChange(isExpanded) {
685
+ this.lazyLoadItems(isExpanded);
686
+ }
687
+ handleLasItemChange(isLastItem) {
688
+ if (isLastItem && this.showLines) {
689
+ this.setResizeObserver();
690
+ }
691
+ else {
692
+ this.disconnectObserver();
693
+ }
694
+ }
695
+ handleShowLinesChange(newShowLines) {
696
+ if (newShowLines && this.lastItem) {
697
+ this.setResizeObserver();
698
+ }
699
+ else {
700
+ this.disconnectObserver();
701
+ }
702
+ // @todo BUG: showLines does not update in the mainTreeRef, so we have to
703
+ // sync the ref with the new value
704
+ mainTreeRef.showLines = newShowLines;
705
+ }
706
+ updateCheckboxValue(event) {
707
+ // No need to update the checkbox value based on the children checkbox
708
+ if (!this.toggleCheckboxes) {
709
+ return;
710
+ }
711
+ const updatedCheck = event.detail;
712
+ const treeItems = this.getDirectTreeItems();
713
+ // Check if all the items have the same value as the updated item
714
+ const allItemsHaveTheSameCheckedValue = treeItems.every(treeItem => treeItem.checked === updatedCheck);
715
+ this.ignoreCheckboxChange = this.checked !== updatedCheck;
716
+ this.checked = updatedCheck;
717
+ this.indeterminate = !allItemsHaveTheSameCheckedValue;
718
+ }
719
+ /**
720
+ * Focus the next item in the tree. If the control is expanded, it focuses
721
+ * the first subitem in its tree.
722
+ */
723
+ async focusNextItem(ctrlKeyPressed) {
724
+ // Focus the first subitem if expanded
725
+ if (!this.leaf && this.expanded) {
726
+ const subItem = this.el.querySelector(FIRST_ENABLED_SUB_ITEM);
727
+ // The tree item could be empty or downloading subitem, so it is uncertain
728
+ // if the query won't fail
729
+ if (subItem) {
730
+ subItem.setFocus(ctrlKeyPressed);
731
+ return;
732
+ }
733
+ }
734
+ // Otherwise, focus the next sibling
735
+ this.focusNextSibling(ctrlKeyPressed);
736
+ }
737
+ /**
738
+ * Focus the next sibling item in the tree.
739
+ */
740
+ async focusNextSibling(ctrlKeyPressed) {
741
+ const nextSiblingItem = this.el
742
+ .nextElementSibling;
743
+ // Focus the next sibling, if exists
744
+ if (nextSiblingItem) {
745
+ // If the next sibling is disabled, ask for its next sibling
746
+ if (nextSiblingItem.disabled) {
747
+ nextSiblingItem.focusNextItem(ctrlKeyPressed);
748
+ }
749
+ else {
750
+ nextSiblingItem.setFocus(ctrlKeyPressed);
751
+ }
752
+ return;
753
+ }
754
+ // The item is the last one of the tree at the first level
755
+ if (this.level === 0) {
756
+ return;
757
+ }
758
+ // Otherwise, ask the parent to focus the next sibling
759
+ const parentItem = this.el.parentElement
760
+ .parentElement;
761
+ parentItem.focusNextSibling(ctrlKeyPressed);
762
+ }
763
+ /**
764
+ * Focus the previous item in the tree. If the previous item is expanded, it focuses
765
+ * the last subitem in its tree.
766
+ */
767
+ async focusPreviousItem(ctrlKeyPressed) {
768
+ const previousSiblingItem = this.el
769
+ .previousElementSibling;
770
+ // Focus last item of the previous sibling
771
+ if (previousSiblingItem) {
772
+ previousSiblingItem.focusLastItem(ctrlKeyPressed);
773
+ return;
774
+ }
775
+ // The item is the first one of the tree at the first level
776
+ if (this.level === 0) {
777
+ return;
778
+ }
779
+ // Otherwise, set focus in the parent element
780
+ const parentItem = this.el.parentElement
781
+ .parentElement;
782
+ // Check if the parent is not disabled
783
+ if (parentItem.disabled) {
784
+ parentItem.focusPreviousItem(ctrlKeyPressed);
785
+ return;
786
+ }
787
+ parentItem.setFocus(ctrlKeyPressed);
788
+ }
789
+ /**
790
+ * Focus the last item in its subtree. If the control is not expanded, it
791
+ * focus the control
792
+ */
793
+ async focusLastItem(ctrlKeyPressed) {
794
+ // Focus the last subitem if expanded and not lazy loading
795
+ if (!this.leaf && this.expanded) {
796
+ const lastSubItem = this.el.querySelector(LAST_SUB_ITEM);
797
+ // The tree item could be empty or downloading subitem, so it is uncertain
798
+ // if the query won't fail
799
+ if (lastSubItem) {
800
+ lastSubItem.focusLastItem(ctrlKeyPressed);
801
+ return;
802
+ }
803
+ }
804
+ // If the last item is disabled, try to focus the previous sibling
805
+ if (this.disabled) {
806
+ this.focusPreviousItem(ctrlKeyPressed);
807
+ return;
808
+ }
809
+ // Otherwise, it focuses the control
810
+ this.setFocus(ctrlKeyPressed);
811
+ }
812
+ /**
813
+ * Set focus in the control
814
+ */
815
+ async setFocus(ctrlKeyPressed) {
816
+ this.headerRef.focus();
817
+ // Normal navigation auto selects the item.
818
+ if (!ctrlKeyPressed) {
819
+ this.setSelected(false);
820
+ }
821
+ }
822
+ getDirectTreeItems() {
823
+ return Array.from(this.el.querySelectorAll(DIRECT_TREE_ITEM_CHILDREN));
824
+ }
825
+ setResizeObserver() {
826
+ this.watcher = new ResizeObserver(() => {
827
+ const distanceToCheckbox = this.el.getBoundingClientRect().height -
828
+ this.headerRef.getBoundingClientRect().height / 2;
829
+ this.el.style.setProperty("--distance-to-checkbox", distanceToCheckbox + "px");
830
+ });
831
+ this.watcher.observe(this.el);
832
+ this.watcher.observe(this.headerRef);
833
+ }
834
+ disconnectObserver() {
835
+ if (!this.watcher) {
836
+ return;
837
+ }
838
+ this.watcher.disconnect();
839
+ this.watcher = null;
840
+ }
841
+ lazyLoadItems(expanded) {
842
+ if (!this.lazyLoad || !expanded) {
843
+ return;
844
+ }
845
+ // Load items
846
+ this.lazyLoad = false;
847
+ this.loadLazyContent.emit(this.el.id);
848
+ }
849
+ toggleSelected() {
850
+ const selected = !this.selected;
851
+ this.selected = selected;
852
+ this.selectedItemChange.emit({
853
+ ctrlKeyPressed: true,
854
+ expanded: this.expanded,
855
+ goToReference: false,
856
+ id: this.el.id,
857
+ itemRef: this.el,
858
+ parentId: this.el.parentElement.parentElement.id,
859
+ selected: selected
860
+ });
861
+ }
862
+ setSelected(goToReference) {
863
+ this.selected = true;
864
+ this.selectedItemChange.emit({
865
+ ctrlKeyPressed: false,
866
+ expanded: this.expanded,
867
+ goToReference: goToReference,
868
+ id: this.el.id,
869
+ itemRef: this.el,
870
+ parentId: this.el.parentElement.parentElement.id,
871
+ selected: true
872
+ });
873
+ }
874
+ toggleOrSelect(event) {
875
+ if (mouseEventModifierKey(event)) {
876
+ this.toggleSelected();
877
+ }
878
+ else {
879
+ this.setSelected(true);
880
+ }
881
+ }
882
+ componentWillLoad() {
883
+ const parentElement = this.el.parentElement;
884
+ // Set item level
885
+ this.level = parentElement.level;
886
+ if (!mainTreeRef) {
887
+ mainTreeRef = parentElement.parentElement;
888
+ }
889
+ this.showLines = mainTreeRef.showLines;
890
+ // Check if must lazy load
891
+ this.lazyLoadItems(this.expanded);
892
+ // No need to update more the status
893
+ if (this.level === 0) {
894
+ return;
895
+ }
896
+ // Update checkbox status
897
+ const parentElementItem = parentElement.parentElement;
898
+ if (parentElementItem.checkbox) {
899
+ this.checked = parentElementItem.checked;
900
+ }
901
+ }
902
+ componentDidLoad() {
903
+ if (this.lastItem && this.showLines) {
904
+ this.setResizeObserver();
905
+ }
906
+ }
907
+ disconnectedCallback() {
908
+ // If it was disconnected on edit mode, remove the body event handler
909
+ if (this.editing) {
910
+ this.removeEditMode(false);
911
+ }
912
+ this.disconnectObserver();
913
+ }
914
+ render() {
915
+ const evenLevel = this.level % 2 === 0;
916
+ const expandableButtonVisible = !this.leaf && this.showExpandableButton;
917
+ const expandableButtonNotVisible = !this.leaf && !this.showExpandableButton;
918
+ const acceptDrop = !this.leaf && this.dragState !== "start";
919
+ const hasContent = !this.leaf && !this.lazyLoad;
920
+ return (h(Host, { role: "treeitem", "aria-selected": this.selected ? "true" : null, class: {
921
+ [TREE_ITEM_TAG_NAME + "--downloading"]: this.downloading,
922
+ [TREE_ITEM_TAG_NAME + "--editing"]: this.editing,
923
+ [TREE_ITEM_TAG_NAME + "--drag-" + this.dragState]: this.dragState !== "none" && this.dragState !== "start",
924
+ [TREE_ITEM_TAG_NAME + "--accept-drop"]: acceptDrop
925
+ }, style: { "--level": `${this.level}` },
926
+ // Drag and drop
927
+ onDrop: acceptDrop ? this.handleDrop : null }, h("button", { "aria-controls": hasContent ? EXPANDABLE_ID : null, "aria-expanded": hasContent ? this.expanded.toString() : null, class: {
928
+ header: true,
929
+ "header--selected": this.selected,
930
+ "header--disabled": this.disabled,
931
+ "header--expandable-offset": expandableButtonVisible,
932
+ "header--checkbox-offset": expandableButtonNotVisible && this.checkbox,
933
+ "header--even": evenLevel,
934
+ "header--odd": !evenLevel,
935
+ "header--even-expandable": evenLevel && expandableButtonVisible,
936
+ "header--odd-expandable": !evenLevel && expandableButtonVisible,
937
+ "header--level-0": this.level === 0
938
+ }, part: `header${this.disabled ? " disabled" : ""}${this.selected ? " selected" : ""}`, type: "button", disabled: this.disabled, onClick: this.handleActionClick, onKeyDown: !this.editing ? this.handleActionKeyDown : null,
939
+ // Drag and drop
940
+ draggable: true, onDragStart: this.handleDragStart, onDragEnd: this.handleDragEnd, ref: el => (this.headerRef = el) }, !this.leaf && this.showExpandableButton && (h("button", { type: "button", class: {
941
+ "expandable-button": true,
942
+ "expandable-button--expanded": this.expanded,
943
+ "expandable-button--collapsed": !this.expanded
944
+ }, part: `expandable-button${this.disabled ? " disabled" : ""}${this.expanded ? " expanded" : " collapsed"}`, disabled: this.disabled, onClick: this.toggleExpand })), this.checkbox && (h("ch-checkbox", { accessibleName: this.caption, class: "checkbox", part: `checkbox${this.disabled ? " disabled" : ""}${this.checked ? " checked" : ""}${this.indeterminate ? " indeterminate" : ""}`, checkedValue: "true", disabled: this.disabled, indeterminate: this.indeterminate, unCheckedValue: "false", value: `${this.checked}`, onInput: this.handleCheckedChange })), h("div", { class: {
945
+ action: true,
946
+ "readonly-mode": !this.editing
947
+ }, onDblClick: !this.leaf ? this.handleActionDblClick : null }, this.leftImgSrc && this.renderImg("left-img", this.leftImgSrc), this.editing ? (h("input", { class: "edit-name", part: "edit-name", disabled: this.disabled, type: "text", value: this.caption, onBlur: this.removeEditMode(false), onKeyDown: this.checkIfShouldRemoveEditMode, ref: el => (this.inputRef = el) })) : (this.caption), this.rightImgSrc && this.renderImg("right-img", this.rightImgSrc)), this.showDownloadingSpinner && !this.leaf && this.downloading && (h("div", { class: "downloading", part: "downloading" })), this.showLines && this.level !== 0 && (h("div", { class: { "dashed-line": true, "last-dashed-line": this.lastItem }, part: `dashed-line${this.lastItem ? " last-dashed-line" : ""}` }))), hasContent && (h("div", { "aria-busy": this.downloading.toString(), "aria-live": this.downloading ? "polite" : null, id: EXPANDABLE_ID, class: { expandable: true, expanded: this.expanded }, part: `expandable${this.expanded ? " expanded" : ""}` }, h("slot", { name: "tree" })))));
948
+ }
949
+ get el() { return getElement(this); }
950
+ static get watchers() { return {
951
+ "checked": ["updateChildrenCheckedValue"],
952
+ "editing": ["handleEditingChange"],
953
+ "expanded": ["handleExpandedChange"],
954
+ "lastItem": ["handleLasItemChange"],
955
+ "showLines": ["handleShowLinesChange"]
956
+ }; }
957
+ };
958
+ ChTreeXListItem.style = treeXListItemCss;
959
+
960
+ export { ChTreeX as ch_tree_x, ChTreeListX as ch_tree_x_list, ChTreeXListItem as ch_tree_x_list_item };