@genexus/genexus-ide-ui 0.0.92 → 0.0.94

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 (1159) hide show
  1. package/dist/cjs/array-300dcbf5.js +12 -0
  2. package/dist/cjs/array-300dcbf5.js.map +1 -0
  3. package/dist/cjs/ch-accordion.cjs.entry.js +1 -1
  4. package/dist/cjs/ch-action-group-render.cjs.entry.js +1 -1
  5. package/dist/cjs/ch-action-group_2.cjs.entry.js +1 -1
  6. package/dist/cjs/ch-alert.cjs.entry.js +1 -1
  7. package/dist/cjs/ch-checkbox_3.cjs.entry.js +948 -864
  8. package/dist/cjs/ch-checkbox_3.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ch-dropdown-item-separator.cjs.entry.js +1 -1
  10. package/dist/cjs/ch-dropdown-item.cjs.entry.js +1 -1
  11. package/dist/cjs/ch-dropdown-render.cjs.entry.js +1 -1
  12. package/dist/cjs/ch-dropdown.cjs.entry.js +1 -1
  13. package/dist/cjs/ch-flexible-layout-render.cjs.entry.js +216 -151
  14. package/dist/cjs/ch-flexible-layout-render.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ch-flexible-layout_3.cjs.entry.js +1259 -312
  16. package/dist/cjs/ch-flexible-layout_3.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ch-form-checkbox.cjs.entry.js +1 -1
  18. package/dist/cjs/ch-grid-action-refresh_7.cjs.entry.js +1 -1
  19. package/dist/cjs/ch-grid-column-display.cjs.entry.js +1 -1
  20. package/dist/cjs/ch-grid-infinite-scroll.cjs.entry.js +1 -1
  21. package/dist/cjs/ch-grid-row-actions.cjs.entry.js +1 -1
  22. package/dist/cjs/ch-grid-rowset-empty.cjs.entry.js +1 -1
  23. package/dist/cjs/ch-grid-rowset-legend.cjs.entry.js +1 -1
  24. package/dist/cjs/ch-grid-virtual-scroller.cjs.entry.js +1 -1
  25. package/dist/cjs/ch-grid_8.cjs.entry.js +2 -2
  26. package/dist/cjs/ch-icon.cjs.entry.js +1 -1
  27. package/dist/cjs/ch-intersection-observer.cjs.entry.js +1 -1
  28. package/dist/cjs/ch-next-data-modeling-render.cjs.entry.js +1 -1
  29. package/dist/cjs/ch-next-data-modeling_2.cjs.entry.js +1 -1
  30. package/dist/cjs/ch-next-progress-bar.cjs.entry.js +1 -1
  31. package/dist/cjs/ch-notifications-item.cjs.entry.js +1 -1
  32. package/dist/cjs/ch-notifications.cjs.entry.js +1 -1
  33. package/dist/cjs/ch-qr.cjs.entry.js +1 -1
  34. package/dist/cjs/ch-select-option.cjs.entry.js +1 -1
  35. package/dist/cjs/ch-select.cjs.entry.js +2 -2
  36. package/dist/cjs/ch-shortcuts_2.cjs.entry.js +1 -2
  37. package/dist/cjs/ch-shortcuts_2.cjs.entry.js.map +1 -1
  38. package/dist/cjs/ch-sidebar-menu-list-item.cjs.entry.js +1 -1
  39. package/dist/cjs/ch-sidebar-menu-list.cjs.entry.js +1 -1
  40. package/dist/cjs/ch-sidebar-menu.cjs.entry.js +2 -2
  41. package/dist/cjs/ch-step-list-item.cjs.entry.js +1 -1
  42. package/dist/cjs/ch-step-list.cjs.entry.js +1 -1
  43. package/dist/cjs/ch-style.cjs.entry.js +1 -1
  44. package/dist/cjs/ch-suggest_4.cjs.entry.js +3 -3
  45. package/dist/cjs/ch-test-flexible-layout.cjs.entry.js +238 -20
  46. package/dist/cjs/ch-test-flexible-layout.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ch-test-suggest.cjs.entry.js +1 -1
  48. package/dist/cjs/ch-textblock.cjs.entry.js +2 -2
  49. package/dist/cjs/ch-timer.cjs.entry.js +1 -1
  50. package/dist/cjs/ch-tooltip.cjs.entry.js +1 -1
  51. package/dist/cjs/ch-tree-item.cjs.entry.js +1 -1
  52. package/dist/cjs/ch-tree-view-render-wrapper.cjs.entry.js +5 -3
  53. package/dist/cjs/ch-tree-view-render-wrapper.cjs.entry.js.map +1 -1
  54. package/dist/cjs/ch-tree-view-render_2.cjs.entry.js +791 -606
  55. package/dist/cjs/ch-tree-view-render_2.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ch-tree.cjs.entry.js +1 -1
  57. package/dist/cjs/ch-window_2.cjs.entry.js +1 -1
  58. package/dist/cjs/{common-f34f3bdb.js → common-4114cd52.js} +2 -2
  59. package/dist/cjs/{common-f34f3bdb.js.map → common-4114cd52.js.map} +1 -1
  60. package/dist/cjs/{form-ed642807.js → form-fa8928cb.js} +2 -2
  61. package/dist/cjs/{form-ed642807.js.map → form-fa8928cb.js.map} +1 -1
  62. package/dist/cjs/genexus-ide-ui.cjs.js +2 -2
  63. package/dist/cjs/gx-grid-chameleon.cjs.entry.js +1 -1
  64. package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js +1 -1
  65. package/dist/cjs/gx-ide-ai-message.cjs.entry.js +2 -2
  66. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +3 -3
  67. package/dist/cjs/gx-ide-card.cjs.entry.js +1 -1
  68. package/dist/cjs/gx-ide-container_3.cjs.entry.js +2 -2
  69. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +11 -4
  70. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
  71. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +2 -2
  72. package/dist/cjs/gx-ide-directory-selector.cjs.entry.js +1 -1
  73. package/dist/cjs/gx-ide-entity-selector_2.cjs.entry.js +10 -20
  74. package/dist/cjs/gx-ide-entity-selector_2.cjs.entry.js.map +1 -1
  75. package/dist/cjs/gx-ide-file-selector.cjs.entry.js +1 -1
  76. package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js +1 -1
  77. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +2 -2
  78. package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js +1 -1
  79. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +3 -3
  80. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +2 -2
  81. package/dist/cjs/gx-ide-new-object.cjs.entry.js +1 -1
  82. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +3 -3
  83. package/dist/cjs/gx-ide-recent-news.cjs.entry.js +1 -1
  84. package/dist/cjs/gx-ide-references.cjs.entry.js +2 -2
  85. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +2 -2
  86. package/dist/cjs/gx-ide-start-page.cjs.entry.js +2 -2
  87. package/dist/cjs/gx-ide-status-buttons.cjs.entry.js +2 -2
  88. package/dist/cjs/gx-ide-status-buttons.cjs.entry.js.map +1 -1
  89. package/dist/cjs/gx-ide-switch-panel.cjs.entry.js +1 -1
  90. package/dist/cjs/gx-ide-switcher.cjs.entry.js +1 -1
  91. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +3 -3
  92. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +1 -1
  93. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +1 -1
  94. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +1 -1
  95. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +3 -3
  96. package/dist/cjs/gx-ide-template.cjs.entry.js +1 -1
  97. package/dist/cjs/gx-ide-test.cjs.entry.js +1 -1
  98. package/dist/cjs/gx-ide-top-bar.cjs.entry.js +1 -1
  99. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +3 -3
  100. package/dist/cjs/gxg-accordion-item.cjs.entry.js +2 -2
  101. package/dist/cjs/gxg-accordion.cjs.entry.js +1 -1
  102. package/dist/cjs/gxg-alert.cjs.entry.js +1 -1
  103. package/dist/cjs/gxg-box.cjs.entry.js +1 -1
  104. package/dist/cjs/gxg-breadcrumb.cjs.entry.js +1 -1
  105. package/dist/cjs/gxg-breadcrumbs.cjs.entry.js +1 -1
  106. package/dist/cjs/gxg-button-group.cjs.entry.js +2 -2
  107. package/dist/cjs/gxg-button_2.cjs.entry.js +3 -3
  108. package/dist/cjs/gxg-button_2.cjs.entry.js.map +1 -1
  109. package/dist/cjs/gxg-card_2.cjs.entry.js +8 -7
  110. package/dist/cjs/gxg-card_2.cjs.entry.js.map +1 -1
  111. package/dist/cjs/gxg-color-picker.cjs.entry.js +1 -1
  112. package/dist/cjs/gxg-column.cjs.entry.js +1 -1
  113. package/dist/cjs/gxg-columns.cjs.entry.js +1 -1
  114. package/dist/cjs/gxg-combo-box_2.cjs.entry.js +3 -3
  115. package/dist/cjs/gxg-container.cjs.entry.js +1 -1
  116. package/dist/cjs/gxg-contextual-menu-item.cjs.entry.js +1 -1
  117. package/dist/cjs/gxg-contextual-menu-submenu.cjs.entry.js +1 -1
  118. package/dist/cjs/gxg-contextual-menu.cjs.entry.js +1 -1
  119. package/dist/cjs/gxg-demo.cjs.entry.js +1 -1
  120. package/dist/cjs/gxg-drag-box.cjs.entry.js +1 -1
  121. package/dist/cjs/gxg-drag-container.cjs.entry.js +1 -1
  122. package/dist/cjs/gxg-drop-down.cjs.entry.js +2 -2
  123. package/dist/cjs/gxg-filter-item.cjs.entry.js +1 -1
  124. package/dist/cjs/gxg-filter.cjs.entry.js +1 -1
  125. package/dist/cjs/gxg-form-checkbox-group.cjs.entry.js +2 -2
  126. package/dist/cjs/gxg-form-checkbox.cjs.entry.js +3 -3
  127. package/dist/cjs/gxg-form-message.cjs.entry.js +2 -2
  128. package/dist/cjs/gxg-form-radio-group.cjs.entry.js +2 -2
  129. package/dist/cjs/gxg-form-radio.cjs.entry.js +4 -4
  130. package/dist/cjs/gxg-form-radio.cjs.entry.js.map +1 -1
  131. package/dist/cjs/gxg-form-text.cjs.entry.js +3 -3
  132. package/dist/cjs/gxg-form-textarea.cjs.entry.js +7 -7
  133. package/dist/cjs/gxg-form-textarea.cjs.entry.js.map +1 -1
  134. package/dist/cjs/gxg-ide-loader.cjs.entry.js +1 -1
  135. package/dist/cjs/gxg-label_2.cjs.entry.js +2 -2
  136. package/dist/cjs/gxg-list-box_2.cjs.entry.js +158 -141
  137. package/dist/cjs/gxg-list-box_2.cjs.entry.js.map +1 -1
  138. package/dist/cjs/gxg-loader.cjs.entry.js +1 -1
  139. package/dist/cjs/gxg-menu-item.cjs.entry.js +1 -1
  140. package/dist/cjs/gxg-menu-slim-item.cjs.entry.js +1 -1
  141. package/dist/cjs/gxg-menu-slim-list.cjs.entry.js +1 -1
  142. package/dist/cjs/gxg-menu-slim.cjs.entry.js +1 -1
  143. package/dist/cjs/gxg-menu.cjs.entry.js +1 -1
  144. package/dist/cjs/gxg-modal.cjs.entry.js +2 -2
  145. package/dist/cjs/gxg-more-info.cjs.entry.js +1 -1
  146. package/dist/cjs/gxg-option-v2.cjs.entry.js +1 -1
  147. package/dist/cjs/gxg-option.cjs.entry.js +1 -1
  148. package/dist/cjs/gxg-options-item.cjs.entry.js +1 -1
  149. package/dist/cjs/gxg-options.cjs.entry.js +2 -2
  150. package/dist/cjs/gxg-paginator.cjs.entry.js +1 -1
  151. package/dist/cjs/gxg-pill.cjs.entry.js +2 -2
  152. package/dist/cjs/gxg-pills.cjs.entry.js +2 -2
  153. package/dist/cjs/gxg-progress-bar.cjs.entry.js +1 -1
  154. package/dist/cjs/gxg-scroll.cjs.entry.js +1 -1
  155. package/dist/cjs/gxg-select-v2.cjs.entry.js +2 -2
  156. package/dist/cjs/gxg-select.cjs.entry.js +3 -3
  157. package/dist/cjs/gxg-separator.cjs.entry.js +1 -1
  158. package/dist/cjs/gxg-slider.cjs.entry.js +1 -1
  159. package/dist/cjs/gxg-spacer-layout.cjs.entry.js +1 -1
  160. package/dist/cjs/gxg-spacer-one.cjs.entry.js +1 -1
  161. package/dist/cjs/gxg-split.cjs.entry.js +1 -1
  162. package/dist/cjs/gxg-splitter.cjs.entry.js +1 -1
  163. package/dist/cjs/gxg-stack.cjs.entry.js +1 -1
  164. package/dist/cjs/gxg-stepper.cjs.entry.js +1 -1
  165. package/dist/cjs/gxg-tab_4.cjs.entry.js +2 -2
  166. package/dist/cjs/gxg-test.cjs.entry.js +163 -6
  167. package/dist/cjs/gxg-test.cjs.entry.js.map +1 -1
  168. package/dist/cjs/gxg-text.cjs.entry.js +2 -2
  169. package/dist/cjs/gxg-toggle.cjs.entry.js +1 -1
  170. package/dist/cjs/gxg-toolbar-item.cjs.entry.js +1 -1
  171. package/dist/cjs/gxg-toolbar.cjs.entry.js +1 -1
  172. package/dist/cjs/gxg-tree-grid-divs.cjs.entry.js +1 -1
  173. package/dist/cjs/gxg-tree-item.cjs.entry.js +38 -33
  174. package/dist/cjs/gxg-tree-item.cjs.entry.js.map +1 -1
  175. package/dist/cjs/gxg-tree.cjs.entry.js +1 -1
  176. package/dist/cjs/gxg-window.cjs.entry.js +1 -1
  177. package/dist/cjs/{helpers-40d78bf9.js → helpers-01aea623.js} +2 -2
  178. package/dist/cjs/{helpers-40d78bf9.js.map → helpers-01aea623.js.map} +1 -1
  179. package/dist/cjs/{index-edccf065.js → index-41ca7a2c.js} +2 -2
  180. package/dist/cjs/{index-edccf065.js.map → index-41ca7a2c.js.map} +1 -1
  181. package/dist/cjs/{index-c66d7fae.js → index-88537600.js} +2 -10
  182. package/dist/{esm/index-2d51259e.js.map → cjs/index-88537600.js.map} +1 -1
  183. package/dist/cjs/loader.cjs.js +2 -2
  184. package/dist/cjs/{render-combo-items-1a9782e0.js → render-combo-items-a497f337.js} +2 -2
  185. package/dist/cjs/{render-combo-items-1a9782e0.js.map → render-combo-items-a497f337.js.map} +1 -1
  186. package/dist/cjs/{render-suggest-497f9dc2.js → render-suggest-22c4d886.js} +2 -2
  187. package/dist/cjs/{render-suggest-497f9dc2.js.map → render-suggest-22c4d886.js.map} +1 -1
  188. package/dist/cjs/{store-ff9e2cad.js → store-027ba050.js} +2 -2
  189. package/dist/cjs/{store-ff9e2cad.js.map → store-027ba050.js.map} +1 -1
  190. package/dist/cjs/utils-0d8557ae.js +150 -0
  191. package/dist/cjs/utils-0d8557ae.js.map +1 -0
  192. package/dist/cjs/{utils-5ba52db3.js → utils-438c7042.js} +9 -1
  193. package/dist/cjs/utils-438c7042.js.map +1 -0
  194. package/dist/collection/components/_helpers/status-buttons/gx-ide-status-buttons.js +1 -1
  195. package/dist/collection/components/_helpers/status-buttons/gx-ide-status-buttons.js.map +1 -1
  196. package/dist/collection/components/create-kb-from-server/create-kb-from-server.js +13 -3
  197. package/dist/collection/components/create-kb-from-server/create-kb-from-server.js.map +1 -1
  198. package/dist/components/array.js +9 -0
  199. package/dist/components/array.js.map +1 -0
  200. package/dist/components/button.js +1 -1
  201. package/dist/components/button.js.map +1 -1
  202. package/dist/components/card.js +5 -4
  203. package/dist/components/card.js.map +1 -1
  204. package/dist/components/ch-test-flexible-layout.js +237 -19
  205. package/dist/components/ch-test-flexible-layout.js.map +1 -1
  206. package/dist/components/ch-tree-view-render-wrapper.js +6 -2
  207. package/dist/components/ch-tree-view-render-wrapper.js.map +1 -1
  208. package/dist/components/date-picker.js +8 -18
  209. package/dist/components/date-picker.js.map +1 -1
  210. package/dist/components/flexible-layout-render.js +220 -154
  211. package/dist/components/flexible-layout-render.js.map +1 -1
  212. package/dist/components/flexible-layout.js +336 -55
  213. package/dist/components/flexible-layout.js.map +1 -1
  214. package/dist/components/form-radio.js +3 -3
  215. package/dist/components/form-radio.js.map +1 -1
  216. package/dist/components/form-textarea.js +4 -4
  217. package/dist/components/form-textarea.js.map +1 -1
  218. package/dist/components/gx-ide-create-kb-from-server.js +12 -3
  219. package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
  220. package/dist/components/gx-ide-status-buttons2.js +1 -1
  221. package/dist/components/gx-ide-status-buttons2.js.map +1 -1
  222. package/dist/components/gxg-test.js +200 -15
  223. package/dist/components/gxg-test.js.map +1 -1
  224. package/dist/components/gxg-tree-item.js +37 -32
  225. package/dist/components/gxg-tree-item.js.map +1 -1
  226. package/dist/components/layout-splitter.js +452 -187
  227. package/dist/components/layout-splitter.js.map +1 -1
  228. package/dist/components/list-box-item.js +6 -6
  229. package/dist/components/list-box-item.js.map +1 -1
  230. package/dist/components/list-box.js +149 -132
  231. package/dist/components/list-box.js.map +1 -1
  232. package/dist/components/shortcuts.js +0 -1
  233. package/dist/components/shortcuts.js.map +1 -1
  234. package/dist/components/tab.js +591 -127
  235. package/dist/components/tab.js.map +1 -1
  236. package/dist/components/tree-view-item.js +523 -472
  237. package/dist/components/tree-view-item.js.map +1 -1
  238. package/dist/components/tree-view-render.js +788 -602
  239. package/dist/components/tree-view-render.js.map +1 -1
  240. package/dist/components/tree-view.js +432 -398
  241. package/dist/components/tree-view.js.map +1 -1
  242. package/dist/components/tree-view2.js +9 -5
  243. package/dist/components/tree-view2.js.map +1 -1
  244. package/dist/components/utils.js +7 -1
  245. package/dist/components/utils.js.map +1 -1
  246. package/dist/components/utils2.js +52 -0
  247. package/dist/components/utils2.js.map +1 -0
  248. package/dist/esm/array-e181c3b5.js +9 -0
  249. package/dist/esm/array-e181c3b5.js.map +1 -0
  250. package/dist/esm/ch-accordion.entry.js +1 -1
  251. package/dist/esm/ch-action-group-render.entry.js +1 -1
  252. package/dist/esm/ch-action-group_2.entry.js +1 -1
  253. package/dist/esm/ch-alert.entry.js +1 -1
  254. package/dist/esm/ch-checkbox_3.entry.js +948 -864
  255. package/dist/esm/ch-checkbox_3.entry.js.map +1 -1
  256. package/dist/esm/ch-dropdown-item-separator.entry.js +1 -1
  257. package/dist/esm/ch-dropdown-item.entry.js +1 -1
  258. package/dist/esm/ch-dropdown-render.entry.js +1 -1
  259. package/dist/esm/ch-dropdown.entry.js +1 -1
  260. package/dist/esm/ch-flexible-layout-render.entry.js +216 -151
  261. package/dist/esm/ch-flexible-layout-render.entry.js.map +1 -1
  262. package/dist/esm/ch-flexible-layout_3.entry.js +1259 -312
  263. package/dist/esm/ch-flexible-layout_3.entry.js.map +1 -1
  264. package/dist/esm/ch-form-checkbox.entry.js +1 -1
  265. package/dist/esm/ch-grid-action-refresh_7.entry.js +1 -1
  266. package/dist/esm/ch-grid-column-display.entry.js +1 -1
  267. package/dist/esm/ch-grid-infinite-scroll.entry.js +1 -1
  268. package/dist/esm/ch-grid-row-actions.entry.js +1 -1
  269. package/dist/esm/ch-grid-rowset-empty.entry.js +1 -1
  270. package/dist/esm/ch-grid-rowset-legend.entry.js +1 -1
  271. package/dist/esm/ch-grid-virtual-scroller.entry.js +1 -1
  272. package/dist/esm/ch-grid_8.entry.js +2 -2
  273. package/dist/esm/ch-icon.entry.js +1 -1
  274. package/dist/esm/ch-intersection-observer.entry.js +1 -1
  275. package/dist/esm/ch-next-data-modeling-render.entry.js +1 -1
  276. package/dist/esm/ch-next-data-modeling_2.entry.js +1 -1
  277. package/dist/esm/ch-next-progress-bar.entry.js +1 -1
  278. package/dist/esm/ch-notifications-item.entry.js +1 -1
  279. package/dist/esm/ch-notifications.entry.js +1 -1
  280. package/dist/esm/ch-qr.entry.js +1 -1
  281. package/dist/esm/ch-select-option.entry.js +1 -1
  282. package/dist/esm/ch-select.entry.js +2 -2
  283. package/dist/esm/ch-shortcuts_2.entry.js +1 -2
  284. package/dist/esm/ch-shortcuts_2.entry.js.map +1 -1
  285. package/dist/esm/ch-sidebar-menu-list-item.entry.js +1 -1
  286. package/dist/esm/ch-sidebar-menu-list.entry.js +1 -1
  287. package/dist/esm/ch-sidebar-menu.entry.js +2 -2
  288. package/dist/esm/ch-step-list-item.entry.js +1 -1
  289. package/dist/esm/ch-step-list.entry.js +1 -1
  290. package/dist/esm/ch-style.entry.js +1 -1
  291. package/dist/esm/ch-suggest_4.entry.js +3 -3
  292. package/dist/esm/ch-test-flexible-layout.entry.js +238 -20
  293. package/dist/esm/ch-test-flexible-layout.entry.js.map +1 -1
  294. package/dist/esm/ch-test-suggest.entry.js +1 -1
  295. package/dist/esm/ch-textblock.entry.js +2 -2
  296. package/dist/esm/ch-timer.entry.js +1 -1
  297. package/dist/esm/ch-tooltip.entry.js +1 -1
  298. package/dist/esm/ch-tree-item.entry.js +1 -1
  299. package/dist/esm/ch-tree-view-render-wrapper.entry.js +5 -3
  300. package/dist/esm/ch-tree-view-render-wrapper.entry.js.map +1 -1
  301. package/dist/esm/ch-tree-view-render_2.entry.js +790 -605
  302. package/dist/esm/ch-tree-view-render_2.entry.js.map +1 -1
  303. package/dist/esm/ch-tree.entry.js +1 -1
  304. package/dist/esm/ch-window_2.entry.js +1 -1
  305. package/dist/esm/{common-c414e768.js → common-f3b421ed.js} +2 -2
  306. package/dist/esm/{common-c414e768.js.map → common-f3b421ed.js.map} +1 -1
  307. package/dist/esm/{form-9bfc4e06.js → form-bcdc7789.js} +2 -2
  308. package/dist/esm/{form-9bfc4e06.js.map → form-bcdc7789.js.map} +1 -1
  309. package/dist/esm/genexus-ide-ui.js +3 -3
  310. package/dist/esm/gx-grid-chameleon.entry.js +1 -1
  311. package/dist/esm/gx-ide-ai-assistant.entry.js +1 -1
  312. package/dist/esm/gx-ide-ai-message.entry.js +2 -2
  313. package/dist/esm/gx-ide-bpm-app-declaration.entry.js +3 -3
  314. package/dist/esm/gx-ide-card.entry.js +1 -1
  315. package/dist/esm/gx-ide-container_3.entry.js +2 -2
  316. package/dist/esm/gx-ide-create-kb-from-server.entry.js +11 -4
  317. package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
  318. package/dist/esm/gx-ide-dashboard-home.entry.js +2 -2
  319. package/dist/esm/gx-ide-directory-selector.entry.js +1 -1
  320. package/dist/esm/gx-ide-entity-selector_2.entry.js +10 -20
  321. package/dist/esm/gx-ide-entity-selector_2.entry.js.map +1 -1
  322. package/dist/esm/gx-ide-file-selector.entry.js +1 -1
  323. package/dist/esm/gx-ide-kb-manager-export.entry.js +1 -1
  324. package/dist/esm/gx-ide-kb-manager-import.entry.js +2 -2
  325. package/dist/esm/gx-ide-list-selector_2.entry.js +1 -1
  326. package/dist/esm/gx-ide-new-environment.entry.js +3 -3
  327. package/dist/esm/gx-ide-new-kb.entry.js +2 -2
  328. package/dist/esm/gx-ide-new-object.entry.js +1 -1
  329. package/dist/esm/gx-ide-object-selector.entry.js +3 -3
  330. package/dist/esm/gx-ide-recent-news.entry.js +1 -1
  331. package/dist/esm/gx-ide-references.entry.js +2 -2
  332. package/dist/esm/gx-ide-share-kb.entry.js +2 -2
  333. package/dist/esm/gx-ide-start-page.entry.js +2 -2
  334. package/dist/esm/gx-ide-status-buttons.entry.js +2 -2
  335. package/dist/esm/gx-ide-status-buttons.entry.js.map +1 -1
  336. package/dist/esm/gx-ide-switch-panel.entry.js +1 -1
  337. package/dist/esm/gx-ide-switcher.entry.js +1 -1
  338. package/dist/esm/gx-ide-team-dev-commit.entry.js +3 -3
  339. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +1 -1
  340. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +1 -1
  341. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +1 -1
  342. package/dist/esm/gx-ide-team-dev-update.entry.js +3 -3
  343. package/dist/esm/gx-ide-template.entry.js +1 -1
  344. package/dist/esm/gx-ide-test.entry.js +1 -1
  345. package/dist/esm/gx-ide-top-bar.entry.js +1 -1
  346. package/dist/esm/gx-ide-ww-images.entry.js +3 -3
  347. package/dist/esm/gxg-accordion-item.entry.js +2 -2
  348. package/dist/esm/gxg-accordion.entry.js +1 -1
  349. package/dist/esm/gxg-alert.entry.js +1 -1
  350. package/dist/esm/gxg-box.entry.js +1 -1
  351. package/dist/esm/gxg-breadcrumb.entry.js +1 -1
  352. package/dist/esm/gxg-breadcrumbs.entry.js +1 -1
  353. package/dist/esm/gxg-button-group.entry.js +2 -2
  354. package/dist/esm/gxg-button_2.entry.js +3 -3
  355. package/dist/esm/gxg-button_2.entry.js.map +1 -1
  356. package/dist/esm/gxg-card_2.entry.js +8 -7
  357. package/dist/esm/gxg-card_2.entry.js.map +1 -1
  358. package/dist/esm/gxg-color-picker.entry.js +1 -1
  359. package/dist/esm/gxg-column.entry.js +1 -1
  360. package/dist/esm/gxg-columns.entry.js +1 -1
  361. package/dist/esm/gxg-combo-box_2.entry.js +3 -3
  362. package/dist/esm/gxg-container.entry.js +1 -1
  363. package/dist/esm/gxg-contextual-menu-item.entry.js +1 -1
  364. package/dist/esm/gxg-contextual-menu-submenu.entry.js +1 -1
  365. package/dist/esm/gxg-contextual-menu.entry.js +1 -1
  366. package/dist/esm/gxg-demo.entry.js +1 -1
  367. package/dist/esm/gxg-drag-box.entry.js +1 -1
  368. package/dist/esm/gxg-drag-container.entry.js +1 -1
  369. package/dist/esm/gxg-drop-down.entry.js +2 -2
  370. package/dist/esm/gxg-filter-item.entry.js +1 -1
  371. package/dist/esm/gxg-filter.entry.js +1 -1
  372. package/dist/esm/gxg-form-checkbox-group.entry.js +2 -2
  373. package/dist/esm/gxg-form-checkbox.entry.js +3 -3
  374. package/dist/esm/gxg-form-message.entry.js +2 -2
  375. package/dist/esm/gxg-form-radio-group.entry.js +2 -2
  376. package/dist/esm/gxg-form-radio.entry.js +4 -4
  377. package/dist/esm/gxg-form-radio.entry.js.map +1 -1
  378. package/dist/esm/gxg-form-text.entry.js +3 -3
  379. package/dist/esm/gxg-form-textarea.entry.js +7 -7
  380. package/dist/esm/gxg-form-textarea.entry.js.map +1 -1
  381. package/dist/esm/gxg-ide-loader.entry.js +1 -1
  382. package/dist/esm/gxg-label_2.entry.js +2 -2
  383. package/dist/esm/gxg-list-box_2.entry.js +158 -141
  384. package/dist/esm/gxg-list-box_2.entry.js.map +1 -1
  385. package/dist/esm/gxg-loader.entry.js +1 -1
  386. package/dist/esm/gxg-menu-item.entry.js +1 -1
  387. package/dist/esm/gxg-menu-slim-item.entry.js +1 -1
  388. package/dist/esm/gxg-menu-slim-list.entry.js +1 -1
  389. package/dist/esm/gxg-menu-slim.entry.js +1 -1
  390. package/dist/esm/gxg-menu.entry.js +1 -1
  391. package/dist/esm/gxg-modal.entry.js +2 -2
  392. package/dist/esm/gxg-more-info.entry.js +1 -1
  393. package/dist/esm/gxg-option-v2.entry.js +1 -1
  394. package/dist/esm/gxg-option.entry.js +1 -1
  395. package/dist/esm/gxg-options-item.entry.js +1 -1
  396. package/dist/esm/gxg-options.entry.js +2 -2
  397. package/dist/esm/gxg-paginator.entry.js +1 -1
  398. package/dist/esm/gxg-pill.entry.js +2 -2
  399. package/dist/esm/gxg-pills.entry.js +2 -2
  400. package/dist/esm/gxg-progress-bar.entry.js +1 -1
  401. package/dist/esm/gxg-scroll.entry.js +1 -1
  402. package/dist/esm/gxg-select-v2.entry.js +2 -2
  403. package/dist/esm/gxg-select.entry.js +3 -3
  404. package/dist/esm/gxg-separator.entry.js +1 -1
  405. package/dist/esm/gxg-slider.entry.js +1 -1
  406. package/dist/esm/gxg-spacer-layout.entry.js +1 -1
  407. package/dist/esm/gxg-spacer-one.entry.js +1 -1
  408. package/dist/esm/gxg-split.entry.js +1 -1
  409. package/dist/esm/gxg-splitter.entry.js +1 -1
  410. package/dist/esm/gxg-stack.entry.js +1 -1
  411. package/dist/esm/gxg-stepper.entry.js +1 -1
  412. package/dist/esm/gxg-tab_4.entry.js +2 -2
  413. package/dist/esm/gxg-test.entry.js +163 -6
  414. package/dist/esm/gxg-test.entry.js.map +1 -1
  415. package/dist/esm/gxg-text.entry.js +2 -2
  416. package/dist/esm/gxg-toggle.entry.js +1 -1
  417. package/dist/esm/gxg-toolbar-item.entry.js +1 -1
  418. package/dist/esm/gxg-toolbar.entry.js +1 -1
  419. package/dist/esm/gxg-tree-grid-divs.entry.js +1 -1
  420. package/dist/esm/gxg-tree-item.entry.js +38 -33
  421. package/dist/esm/gxg-tree-item.entry.js.map +1 -1
  422. package/dist/esm/gxg-tree.entry.js +1 -1
  423. package/dist/esm/gxg-window.entry.js +1 -1
  424. package/dist/esm/{helpers-c1a0fa8e.js → helpers-7a7ae540.js} +2 -2
  425. package/dist/esm/{helpers-c1a0fa8e.js.map → helpers-7a7ae540.js.map} +1 -1
  426. package/dist/esm/{index-6960469c.js → index-08adb93b.js} +2 -2
  427. package/dist/esm/{index-6960469c.js.map → index-08adb93b.js.map} +1 -1
  428. package/dist/esm/{index-2d51259e.js → index-692bb924.js} +2 -10
  429. package/dist/esm/index-692bb924.js.map +1 -0
  430. package/dist/esm/loader.js +3 -3
  431. package/dist/esm/{render-combo-items-65457163.js → render-combo-items-eb2a54b4.js} +2 -2
  432. package/dist/esm/{render-combo-items-65457163.js.map → render-combo-items-eb2a54b4.js.map} +1 -1
  433. package/dist/esm/{render-suggest-9c876328.js → render-suggest-47b8bc70.js} +2 -2
  434. package/dist/esm/{render-suggest-9c876328.js.map → render-suggest-47b8bc70.js.map} +1 -1
  435. package/dist/esm/{store-5e68d7e0.js → store-7887c6b7.js} +2 -2
  436. package/dist/esm/{store-5e68d7e0.js.map → store-7887c6b7.js.map} +1 -1
  437. package/dist/esm/{utils-b9f4c3b4.js → utils-b8c6bdd1.js} +8 -2
  438. package/dist/esm/utils-b8c6bdd1.js.map +1 -0
  439. package/dist/esm/utils-ea89d74e.js +131 -0
  440. package/dist/esm/utils-ea89d74e.js.map +1 -0
  441. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +3 -3
  442. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  443. package/dist/genexus-ide-ui/icon-assets/bpm/arrows.svg +1 -1
  444. package/dist/genexus-ide-ui/icon-assets/bpm/cancel-2.svg +1 -1
  445. package/dist/genexus-ide-ui/icon-assets/bpm/cancel-4.svg +1 -1
  446. package/dist/genexus-ide-ui/icon-assets/bpm/compensation-1.svg +1 -1
  447. package/dist/genexus-ide-ui/icon-assets/bpm/compensation-2.svg +1 -1
  448. package/dist/genexus-ide-ui/icon-assets/bpm/compensation-3.svg +1 -1
  449. package/dist/genexus-ide-ui/icon-assets/bpm/compensation-4.svg +1 -1
  450. package/dist/genexus-ide-ui/icon-assets/bpm/conditional-1.svg +1 -1
  451. package/dist/genexus-ide-ui/icon-assets/bpm/conditional-2.svg +1 -1
  452. package/dist/genexus-ide-ui/icon-assets/bpm/conditional-5.svg +1 -1
  453. package/dist/genexus-ide-ui/icon-assets/bpm/conditional-6.svg +1 -1
  454. package/dist/genexus-ide-ui/icon-assets/bpm/conditional.svg +1 -1
  455. package/dist/genexus-ide-ui/icon-assets/bpm/delete.svg +1 -1
  456. package/dist/genexus-ide-ui/icon-assets/bpm/error-1.svg +1 -1
  457. package/dist/genexus-ide-ui/icon-assets/bpm/error-2.svg +1 -1
  458. package/dist/genexus-ide-ui/icon-assets/bpm/escalation-1.svg +1 -1
  459. package/dist/genexus-ide-ui/icon-assets/bpm/escalation-2.svg +1 -1
  460. package/dist/genexus-ide-ui/icon-assets/bpm/escalation-3.svg +1 -1
  461. package/dist/genexus-ide-ui/icon-assets/bpm/escalation-4.svg +1 -1
  462. package/dist/genexus-ide-ui/icon-assets/bpm/escalation-5.svg +1 -1
  463. package/dist/genexus-ide-ui/icon-assets/bpm/escalation-6.svg +1 -1
  464. package/dist/genexus-ide-ui/icon-assets/bpm/link-3.svg +1 -1
  465. package/dist/genexus-ide-ui/icon-assets/bpm/link-4.svg +1 -1
  466. package/dist/genexus-ide-ui/icon-assets/bpm/message-1.svg +1 -1
  467. package/dist/genexus-ide-ui/icon-assets/bpm/message-2.svg +1 -1
  468. package/dist/genexus-ide-ui/icon-assets/bpm/message-3.svg +1 -1
  469. package/dist/genexus-ide-ui/icon-assets/bpm/message-4.svg +1 -1
  470. package/dist/genexus-ide-ui/icon-assets/bpm/message-5.svg +1 -1
  471. package/dist/genexus-ide-ui/icon-assets/bpm/message-6.svg +1 -1
  472. package/dist/genexus-ide-ui/icon-assets/bpm/multiple-1.svg +1 -1
  473. package/dist/genexus-ide-ui/icon-assets/bpm/multiple-2.svg +1 -1
  474. package/dist/genexus-ide-ui/icon-assets/bpm/multiple-3.svg +1 -1
  475. package/dist/genexus-ide-ui/icon-assets/bpm/multiple-4.svg +1 -1
  476. package/dist/genexus-ide-ui/icon-assets/bpm/multiple-5.svg +1 -1
  477. package/dist/genexus-ide-ui/icon-assets/bpm/multiple-6.svg +1 -1
  478. package/dist/genexus-ide-ui/icon-assets/bpm/oval-doble.svg +1 -1
  479. package/dist/genexus-ide-ui/icon-assets/bpm/oval.svg +1 -1
  480. package/dist/genexus-ide-ui/icon-assets/bpm/paralell-1.svg +1 -1
  481. package/dist/genexus-ide-ui/icon-assets/bpm/paralell-2.svg +1 -1
  482. package/dist/genexus-ide-ui/icon-assets/bpm/paralell-3.svg +1 -1
  483. package/dist/genexus-ide-ui/icon-assets/bpm/paralell-4.svg +1 -1
  484. package/dist/genexus-ide-ui/icon-assets/bpm/person.svg +1 -1
  485. package/dist/genexus-ide-ui/icon-assets/bpm/signal-1.svg +1 -1
  486. package/dist/genexus-ide-ui/icon-assets/bpm/signal-2.svg +1 -1
  487. package/dist/genexus-ide-ui/icon-assets/bpm/signal-3.svg +1 -1
  488. package/dist/genexus-ide-ui/icon-assets/bpm/signal-4.svg +1 -1
  489. package/dist/genexus-ide-ui/icon-assets/bpm/signal-5.svg +1 -1
  490. package/dist/genexus-ide-ui/icon-assets/bpm/signal-6.svg +1 -1
  491. package/dist/genexus-ide-ui/icon-assets/bpm/subprocess.svg +1 -1
  492. package/dist/genexus-ide-ui/icon-assets/bpm/tasks.svg +1 -1
  493. package/dist/genexus-ide-ui/icon-assets/bpm/terminale-4.svg +1 -1
  494. package/dist/genexus-ide-ui/icon-assets/bpm/timer-1.svg +1 -1
  495. package/dist/genexus-ide-ui/icon-assets/bpm/timer-2.svg +1 -1
  496. package/dist/genexus-ide-ui/icon-assets/bpm/timer-5.svg +1 -1
  497. package/dist/genexus-ide-ui/icon-assets/bpm/timer-6.svg +1 -1
  498. package/dist/genexus-ide-ui/icon-assets/controls/action-group-item.svg +1 -1
  499. package/dist/genexus-ide-ui/icon-assets/controls/action-group.svg +1 -1
  500. package/dist/genexus-ide-ui/icon-assets/controls/button-group.svg +1 -1
  501. package/dist/genexus-ide-ui/icon-assets/controls/button.svg +1 -1
  502. package/dist/genexus-ide-ui/icon-assets/controls/call-target.svg +1 -1
  503. package/dist/genexus-ide-ui/icon-assets/controls/canva.svg +1 -1
  504. package/dist/genexus-ide-ui/icon-assets/controls/class-html.svg +1 -1
  505. package/dist/genexus-ide-ui/icon-assets/controls/component.svg +1 -1
  506. package/dist/genexus-ide-ui/icon-assets/controls/default.svg +1 -1
  507. package/dist/genexus-ide-ui/icon-assets/controls/embedded-page.svg +1 -1
  508. package/dist/genexus-ide-ui/icon-assets/controls/error-viewer.svg +1 -1
  509. package/dist/genexus-ide-ui/icon-assets/controls/file-upload.svg +1 -1
  510. package/dist/genexus-ide-ui/icon-assets/controls/flex.svg +1 -1
  511. package/dist/genexus-ide-ui/icon-assets/controls/font.svg +1 -1
  512. package/dist/genexus-ide-ui/icon-assets/controls/free-style-grid.svg +1 -1
  513. package/dist/genexus-ide-ui/icon-assets/controls/google-analytics.svg +1 -1
  514. package/dist/genexus-ide-ui/icon-assets/controls/google-annotated-tmeline.svg +1 -1
  515. package/dist/genexus-ide-ui/icon-assets/controls/google-charts.svg +1 -1
  516. package/dist/genexus-ide-ui/icon-assets/controls/google-geomap.svg +1 -1
  517. package/dist/genexus-ide-ui/icon-assets/controls/grid.svg +1 -1
  518. package/dist/genexus-ide-ui/icon-assets/controls/group.svg +1 -1
  519. package/dist/genexus-ide-ui/icon-assets/controls/gx-scheduler.svg +1 -1
  520. package/dist/genexus-ide-ui/icon-assets/controls/history-manager.svg +1 -1
  521. package/dist/genexus-ide-ui/icon-assets/controls/horizontal-line.svg +1 -1
  522. package/dist/genexus-ide-ui/icon-assets/controls/html.svg +1 -1
  523. package/dist/genexus-ide-ui/icon-assets/controls/hyperlink.svg +1 -1
  524. package/dist/genexus-ide-ui/icon-assets/controls/id-html.svg +1 -1
  525. package/dist/genexus-ide-ui/icon-assets/controls/media-player.svg +1 -1
  526. package/dist/genexus-ide-ui/icon-assets/controls/messages.svg +1 -1
  527. package/dist/genexus-ide-ui/icon-assets/controls/pop-up.svg +1 -1
  528. package/dist/genexus-ide-ui/icon-assets/controls/section.svg +1 -1
  529. package/dist/genexus-ide-ui/icon-assets/controls/smart-table.svg +1 -1
  530. package/dist/genexus-ide-ui/icon-assets/controls/snippet.svg +1 -1
  531. package/dist/genexus-ide-ui/icon-assets/controls/tab-page.svg +1 -1
  532. package/dist/genexus-ide-ui/icon-assets/controls/tab.svg +1 -1
  533. package/dist/genexus-ide-ui/icon-assets/controls/table-cell.svg +1 -1
  534. package/dist/genexus-ide-ui/icon-assets/controls/table-column.svg +1 -1
  535. package/dist/genexus-ide-ui/icon-assets/controls/table-row.svg +1 -1
  536. package/dist/genexus-ide-ui/icon-assets/controls/table.svg +1 -1
  537. package/dist/genexus-ide-ui/icon-assets/controls/tag-html.svg +1 -1
  538. package/dist/genexus-ide-ui/icon-assets/controls/text-block.svg +1 -1
  539. package/dist/genexus-ide-ui/icon-assets/controls/treeview.svg +1 -1
  540. package/dist/genexus-ide-ui/icon-assets/controls/variable.svg +1 -1
  541. package/dist/genexus-ide-ui/icon-assets/editing-structures/attribute-description.svg +1 -1
  542. package/dist/genexus-ide-ui/icon-assets/editing-structures/attribute-formula.svg +1 -1
  543. package/dist/genexus-ide-ui/icon-assets/editing-structures/attribute-key.svg +1 -1
  544. package/dist/genexus-ide-ui/icon-assets/editing-structures/default.svg +1 -1
  545. package/dist/genexus-ide-ui/icon-assets/editing-structures/platforms.svg +1 -1
  546. package/dist/genexus-ide-ui/icon-assets/editing-structures/redundant-attribute.svg +1 -1
  547. package/dist/genexus-ide-ui/icon-assets/editing-structures/system-index.svg +1 -1
  548. package/dist/genexus-ide-ui/icon-assets/editing-structures/user-index.svg +1 -1
  549. package/dist/genexus-ide-ui/icon-assets/gemini-tools/add-circle.svg +1 -1
  550. package/dist/genexus-ide-ui/icon-assets/gemini-tools/add.svg +1 -1
  551. package/dist/genexus-ide-ui/icon-assets/gemini-tools/card-view.svg +1 -1
  552. package/dist/genexus-ide-ui/icon-assets/gemini-tools/close.svg +1 -1
  553. package/dist/genexus-ide-ui/icon-assets/gemini-tools/color-picker.svg +1 -1
  554. package/dist/genexus-ide-ui/icon-assets/gemini-tools/delete.svg +1 -1
  555. package/dist/genexus-ide-ui/icon-assets/gemini-tools/deleted.svg +1 -1
  556. package/dist/genexus-ide-ui/icon-assets/gemini-tools/download.svg +1 -1
  557. package/dist/genexus-ide-ui/icon-assets/gemini-tools/duplicate.svg +1 -1
  558. package/dist/genexus-ide-ui/icon-assets/gemini-tools/edit-wand.svg +1 -1
  559. package/dist/genexus-ide-ui/icon-assets/gemini-tools/empty.svg +1 -1
  560. package/dist/genexus-ide-ui/icon-assets/gemini-tools/error.svg +1 -1
  561. package/dist/genexus-ide-ui/icon-assets/gemini-tools/file.svg +1 -1
  562. package/dist/genexus-ide-ui/icon-assets/gemini-tools/flow-arrow.svg +1 -1
  563. package/dist/genexus-ide-ui/icon-assets/gemini-tools/folder.svg +1 -1
  564. package/dist/genexus-ide-ui/icon-assets/gemini-tools/list-view.svg +1 -1
  565. package/dist/genexus-ide-ui/icon-assets/gemini-tools/minus-circle.svg +1 -1
  566. package/dist/genexus-ide-ui/icon-assets/gemini-tools/minus.svg +1 -1
  567. package/dist/genexus-ide-ui/icon-assets/gemini-tools/more-info.svg +1 -1
  568. package/dist/genexus-ide-ui/icon-assets/gemini-tools/notice.svg +1 -1
  569. package/dist/genexus-ide-ui/icon-assets/gemini-tools/open-window.svg +1 -1
  570. package/dist/genexus-ide-ui/icon-assets/gemini-tools/read-only.svg +1 -1
  571. package/dist/genexus-ide-ui/icon-assets/gemini-tools/reset.svg +1 -1
  572. package/dist/genexus-ide-ui/icon-assets/gemini-tools/search.svg +1 -1
  573. package/dist/genexus-ide-ui/icon-assets/gemini-tools/show-more-horizontal.svg +1 -1
  574. package/dist/genexus-ide-ui/icon-assets/gemini-tools/show-more-vertical.svg +1 -1
  575. package/dist/genexus-ide-ui/icon-assets/gemini-tools/success.svg +1 -1
  576. package/dist/genexus-ide-ui/icon-assets/gemini-tools/warning.svg +1 -1
  577. package/dist/genexus-ide-ui/icon-assets/general/android.svg +1 -1
  578. package/dist/genexus-ide-ui/icon-assets/general/angular.svg +1 -1
  579. package/dist/genexus-ide-ui/icon-assets/general/apple.svg +1 -1
  580. package/dist/genexus-ide-ui/icon-assets/general/csharp.svg +1 -1
  581. package/dist/genexus-ide-ui/icon-assets/general/customization.svg +1 -1
  582. package/dist/genexus-ide-ui/icon-assets/general/datastore.svg +1 -1
  583. package/dist/genexus-ide-ui/icon-assets/general/db2.svg +1 -1
  584. package/dist/genexus-ide-ui/icon-assets/general/environment-no-select.svg +1 -1
  585. package/dist/genexus-ide-ui/icon-assets/general/environment-select.svg +1 -1
  586. package/dist/genexus-ide-ui/icon-assets/general/generator.svg +1 -1
  587. package/dist/genexus-ide-ui/icon-assets/general/informix.svg +1 -1
  588. package/dist/genexus-ide-ui/icon-assets/general/java.svg +1 -1
  589. package/dist/genexus-ide-ui/icon-assets/general/knowledge-base.svg +1 -1
  590. package/dist/genexus-ide-ui/icon-assets/general/mysql.svg +1 -1
  591. package/dist/genexus-ide-ui/icon-assets/general/oracle.svg +1 -1
  592. package/dist/genexus-ide-ui/icon-assets/general/patterns.svg +1 -1
  593. package/dist/genexus-ide-ui/icon-assets/general/postgre-sql.svg +1 -1
  594. package/dist/genexus-ide-ui/icon-assets/general/references.svg +1 -1
  595. package/dist/genexus-ide-ui/icon-assets/general/sap-hana.svg +1 -1
  596. package/dist/genexus-ide-ui/icon-assets/general/sd-web.svg +1 -1
  597. package/dist/genexus-ide-ui/icon-assets/general/sd.svg +1 -1
  598. package/dist/genexus-ide-ui/icon-assets/general/services.svg +1 -1
  599. package/dist/genexus-ide-ui/icon-assets/general/sql-server.svg +1 -1
  600. package/dist/genexus-ide-ui/icon-assets/general/swift.svg +1 -1
  601. package/dist/genexus-ide-ui/icon-assets/general/version.svg +1 -1
  602. package/dist/genexus-ide-ui/icon-assets/gx-server/changes-commit-pending.svg +1 -1
  603. package/dist/genexus-ide-ui/icon-assets/gx-server/conflict.svg +1 -1
  604. package/dist/genexus-ide-ui/icon-assets/gx-server/delete.svg +1 -1
  605. package/dist/genexus-ide-ui/icon-assets/gx-server/internal.svg +1 -1
  606. package/dist/genexus-ide-ui/icon-assets/gx-server/lock-by-user-changes.svg +1 -1
  607. package/dist/genexus-ide-ui/icon-assets/gx-server/lock-by-user-reserve.svg +1 -1
  608. package/dist/genexus-ide-ui/icon-assets/gx-server/lock-without-changes.svg +1 -1
  609. package/dist/genexus-ide-ui/icon-assets/gx-server/new.svg +1 -1
  610. package/dist/genexus-ide-ui/icon-assets/gx-server/private.svg +1 -1
  611. package/dist/genexus-ide-ui/icon-assets/gx-server/public.svg +1 -1
  612. package/dist/genexus-ide-ui/icon-assets/gx-test/cutfo.svg +1 -1
  613. package/dist/genexus-ide-ui/icon-assets/gx-test/explorer.svg +1 -1
  614. package/dist/genexus-ide-ui/icon-assets/gx-test/image.svg +1 -1
  615. package/dist/genexus-ide-ui/icon-assets/gx-test/plus.svg +1 -1
  616. package/dist/genexus-ide-ui/icon-assets/gx-test/record-mock.svg +1 -1
  617. package/dist/genexus-ide-ui/icon-assets/gx-test/result-error.svg +1 -1
  618. package/dist/genexus-ide-ui/icon-assets/gx-test/result-exception.svg +1 -1
  619. package/dist/genexus-ide-ui/icon-assets/gx-test/result-ok.svg +1 -1
  620. package/dist/genexus-ide-ui/icon-assets/gx-test/result-skipped.svg +1 -1
  621. package/dist/genexus-ide-ui/icon-assets/gx-test/result-warning.svg +1 -1
  622. package/dist/genexus-ide-ui/icon-assets/gx-test/run-test-cancel.svg +1 -1
  623. package/dist/genexus-ide-ui/icon-assets/gx-test/run-test-suite.svg +1 -1
  624. package/dist/genexus-ide-ui/icon-assets/gx-test/run-tests.svg +1 -1
  625. package/dist/genexus-ide-ui/icon-assets/gx-test/run-ui-test-sd.svg +1 -1
  626. package/dist/genexus-ide-ui/icon-assets/gx-test/run-ui-test-web.svg +1 -1
  627. package/dist/genexus-ide-ui/icon-assets/gx-test/run-unit-test.svg +1 -1
  628. package/dist/genexus-ide-ui/icon-assets/gx-test/screenshot-viewer.svg +1 -1
  629. package/dist/genexus-ide-ui/icon-assets/gx-test/test-folder-open.svg +1 -1
  630. package/dist/genexus-ide-ui/icon-assets/gx-test/test-folder.svg +1 -1
  631. package/dist/genexus-ide-ui/icon-assets/gx-test/test-results.svg +1 -1
  632. package/dist/genexus-ide-ui/icon-assets/gx-test/test-suite.svg +1 -1
  633. package/dist/genexus-ide-ui/icon-assets/gx-test/ui-test-sd.svg +1 -1
  634. package/dist/genexus-ide-ui/icon-assets/gx-test/ui-test-web.svg +1 -1
  635. package/dist/genexus-ide-ui/icon-assets/gx-test/unit-test-db.svg +1 -1
  636. package/dist/genexus-ide-ui/icon-assets/gx-test/unit-test.svg +1 -1
  637. package/dist/genexus-ide-ui/icon-assets/menus/build-all.svg +1 -1
  638. package/dist/genexus-ide-ui/icon-assets/menus/build.svg +1 -1
  639. package/dist/genexus-ide-ui/icon-assets/menus/cancel-build.svg +1 -1
  640. package/dist/genexus-ide-ui/icon-assets/menus/copy.svg +1 -1
  641. package/dist/genexus-ide-ui/icon-assets/menus/create-database-tables.svg +1 -1
  642. package/dist/genexus-ide-ui/icon-assets/menus/cut.svg +1 -1
  643. package/dist/genexus-ide-ui/icon-assets/menus/delete.svg +1 -1
  644. package/dist/genexus-ide-ui/icon-assets/menus/find.svg +1 -1
  645. package/dist/genexus-ide-ui/icon-assets/menus/new-object.svg +1 -1
  646. package/dist/genexus-ide-ui/icon-assets/menus/open-object.svg +1 -1
  647. package/dist/genexus-ide-ui/icon-assets/menus/paste.svg +1 -1
  648. package/dist/genexus-ide-ui/icon-assets/menus/properties.svg +1 -1
  649. package/dist/genexus-ide-ui/icon-assets/menus/redo.svg +1 -1
  650. package/dist/genexus-ide-ui/icon-assets/menus/run.svg +1 -1
  651. package/dist/genexus-ide-ui/icon-assets/menus/save-all.svg +1 -1
  652. package/dist/genexus-ide-ui/icon-assets/menus/save.svg +1 -1
  653. package/dist/genexus-ide-ui/icon-assets/menus/undo-close-object.svg +1 -1
  654. package/dist/genexus-ide-ui/icon-assets/menus/undo.svg +1 -1
  655. package/dist/genexus-ide-ui/icon-assets/navigation/arrow-down-skyblue.svg +1 -1
  656. package/dist/genexus-ide-ui/icon-assets/navigation/arrow-down.svg +1 -1
  657. package/dist/genexus-ide-ui/icon-assets/navigation/arrow-left.svg +1 -1
  658. package/dist/genexus-ide-ui/icon-assets/navigation/arrow-right.svg +1 -1
  659. package/dist/genexus-ide-ui/icon-assets/navigation/arrow-up.svg +1 -1
  660. package/dist/genexus-ide-ui/icon-assets/navigation/bullet.svg +1 -1
  661. package/dist/genexus-ide-ui/icon-assets/navigation/chevron-down.svg +1 -1
  662. package/dist/genexus-ide-ui/icon-assets/navigation/chevron-left.svg +1 -1
  663. package/dist/genexus-ide-ui/icon-assets/navigation/chevron-right.svg +1 -1
  664. package/dist/genexus-ide-ui/icon-assets/navigation/chevron-up.svg +1 -1
  665. package/dist/genexus-ide-ui/icon-assets/navigation/drag.svg +1 -1
  666. package/dist/genexus-ide-ui/icon-assets/navigation/gx-arrow-right.svg +1 -1
  667. package/dist/genexus-ide-ui/icon-assets/navigation/level-down.svg +1 -1
  668. package/dist/genexus-ide-ui/icon-assets/navigation/level-up.svg +1 -1
  669. package/dist/genexus-ide-ui/icon-assets/navigation/pill-filled.svg +1 -1
  670. package/dist/genexus-ide-ui/icon-assets/navigation/pill-outlined.svg +1 -1
  671. package/dist/genexus-ide-ui/icon-assets/objects/api.svg +1 -1
  672. package/dist/genexus-ide-ui/icon-assets/objects/attribute.svg +1 -1
  673. package/dist/genexus-ide-ui/icon-assets/objects/bg-color.svg +1 -1
  674. package/dist/genexus-ide-ui/icon-assets/objects/business-process-diagram.svg +1 -1
  675. package/dist/genexus-ide-ui/icon-assets/objects/calendars.svg +1 -1
  676. package/dist/genexus-ide-ui/icon-assets/objects/category.svg +1 -1
  677. package/dist/genexus-ide-ui/icon-assets/objects/conversational-flows.svg +1 -1
  678. package/dist/genexus-ide-ui/icon-assets/objects/customization.svg +1 -1
  679. package/dist/genexus-ide-ui/icon-assets/objects/dashboard.svg +1 -1
  680. package/dist/genexus-ide-ui/icon-assets/objects/data-provider.svg +1 -1
  681. package/dist/genexus-ide-ui/icon-assets/objects/data-selector.svg +1 -1
  682. package/dist/genexus-ide-ui/icon-assets/objects/data-view.svg +1 -1
  683. package/dist/genexus-ide-ui/icon-assets/objects/datastore-category.svg +1 -1
  684. package/dist/genexus-ide-ui/icon-assets/objects/datastore.svg +1 -1
  685. package/dist/genexus-ide-ui/icon-assets/objects/dataview-index.svg +1 -1
  686. package/dist/genexus-ide-ui/icon-assets/objects/deployment-unit.svg +1 -1
  687. package/dist/genexus-ide-ui/icon-assets/objects/design.svg +1 -1
  688. package/dist/genexus-ide-ui/icon-assets/objects/diagram.svg +1 -1
  689. package/dist/genexus-ide-ui/icon-assets/objects/document-workflow.svg +1 -1
  690. package/dist/genexus-ide-ui/icon-assets/objects/document.svg +1 -1
  691. package/dist/genexus-ide-ui/icon-assets/objects/domain.svg +1 -1
  692. package/dist/genexus-ide-ui/icon-assets/objects/dso.svg +1 -1
  693. package/dist/genexus-ide-ui/icon-assets/objects/environment-no-select.svg +1 -1
  694. package/dist/genexus-ide-ui/icon-assets/objects/environment-select.svg +1 -1
  695. package/dist/genexus-ide-ui/icon-assets/objects/external-object.svg +1 -1
  696. package/dist/genexus-ide-ui/icon-assets/objects/file.svg +1 -1
  697. package/dist/genexus-ide-ui/icon-assets/objects/folder.svg +1 -1
  698. package/dist/genexus-ide-ui/icon-assets/objects/generator-category.svg +1 -1
  699. package/dist/genexus-ide-ui/icon-assets/objects/generator.svg +1 -1
  700. package/dist/genexus-ide-ui/icon-assets/objects/image.svg +1 -1
  701. package/dist/genexus-ide-ui/icon-assets/objects/knowledge-base.svg +1 -1
  702. package/dist/genexus-ide-ui/icon-assets/objects/lenguage.svg +1 -1
  703. package/dist/genexus-ide-ui/icon-assets/objects/masterpage.svg +1 -1
  704. package/dist/genexus-ide-ui/icon-assets/objects/menu.svg +1 -1
  705. package/dist/genexus-ide-ui/icon-assets/objects/menubar.svg +1 -1
  706. package/dist/genexus-ide-ui/icon-assets/objects/mini-app.svg +1 -1
  707. package/dist/genexus-ide-ui/icon-assets/objects/module.svg +1 -1
  708. package/dist/genexus-ide-ui/icon-assets/objects/notification-templates.svg +1 -1
  709. package/dist/genexus-ide-ui/icon-assets/objects/object.svg +1 -1
  710. package/dist/genexus-ide-ui/icon-assets/objects/offline-database.svg +1 -1
  711. package/dist/genexus-ide-ui/icon-assets/objects/orphant-document.svg +1 -1
  712. package/dist/genexus-ide-ui/icon-assets/objects/panel-for-sd.svg +1 -1
  713. package/dist/genexus-ide-ui/icon-assets/objects/patterns.svg +1 -1
  714. package/dist/genexus-ide-ui/icon-assets/objects/procedure.svg +1 -1
  715. package/dist/genexus-ide-ui/icon-assets/objects/query.svg +1 -1
  716. package/dist/genexus-ide-ui/icon-assets/objects/references.svg +1 -1
  717. package/dist/genexus-ide-ui/icon-assets/objects/report.svg +1 -1
  718. package/dist/genexus-ide-ui/icon-assets/objects/roles.svg +1 -1
  719. package/dist/genexus-ide-ui/icon-assets/objects/stencil.svg +1 -1
  720. package/dist/genexus-ide-ui/icon-assets/objects/structured-data-type.svg +1 -1
  721. package/dist/genexus-ide-ui/icon-assets/objects/subtype-group.svg +1 -1
  722. package/dist/genexus-ide-ui/icon-assets/objects/super-app.svg +1 -1
  723. package/dist/genexus-ide-ui/icon-assets/objects/table.svg +1 -1
  724. package/dist/genexus-ide-ui/icon-assets/objects/theme-for-sd.svg +1 -1
  725. package/dist/genexus-ide-ui/icon-assets/objects/theme.svg +1 -1
  726. package/dist/genexus-ide-ui/icon-assets/objects/to-be-defined.svg +1 -1
  727. package/dist/genexus-ide-ui/icon-assets/objects/transaction.svg +1 -1
  728. package/dist/genexus-ide-ui/icon-assets/objects/url-rewrite.svg +1 -1
  729. package/dist/genexus-ide-ui/icon-assets/objects/version.svg +1 -1
  730. package/dist/genexus-ide-ui/icon-assets/objects/web-component.svg +1 -1
  731. package/dist/genexus-ide-ui/icon-assets/objects/webpanel.svg +1 -1
  732. package/dist/genexus-ide-ui/icon-assets/objects/work-panel.svg +1 -1
  733. package/dist/genexus-ide-ui/icon-assets/objects/workflow.svg +1 -1
  734. package/dist/genexus-ide-ui/icon-assets/objects-parts/condition.svg +1 -1
  735. package/dist/genexus-ide-ui/icon-assets/objects-parts/conditions.svg +1 -1
  736. package/dist/genexus-ide-ui/icon-assets/objects-parts/events.svg +1 -1
  737. package/dist/genexus-ide-ui/icon-assets/objects-parts/rules.svg +1 -1
  738. package/dist/genexus-ide-ui/icon-assets/objects-parts/variables.svg +1 -1
  739. package/dist/genexus-ide-ui/icon-assets/patterns/attributes.svg +1 -1
  740. package/dist/genexus-ide-ui/icon-assets/patterns/cell.svg +1 -1
  741. package/dist/genexus-ide-ui/icon-assets/patterns/detail.svg +1 -1
  742. package/dist/genexus-ide-ui/icon-assets/patterns/documentation.svg +1 -1
  743. package/dist/genexus-ide-ui/icon-assets/patterns/events.svg +1 -1
  744. package/dist/genexus-ide-ui/icon-assets/patterns/filters.svg +1 -1
  745. package/dist/genexus-ide-ui/icon-assets/patterns/fixed-data.svg +1 -1
  746. package/dist/genexus-ide-ui/icon-assets/patterns/list.svg +1 -1
  747. package/dist/genexus-ide-ui/icon-assets/patterns/orders.svg +1 -1
  748. package/dist/genexus-ide-ui/icon-assets/patterns/parameter.svg +1 -1
  749. package/dist/genexus-ide-ui/icon-assets/patterns/parameters.svg +1 -1
  750. package/dist/genexus-ide-ui/icon-assets/patterns/pattern-category.svg +1 -1
  751. package/dist/genexus-ide-ui/icon-assets/patterns/row.svg +1 -1
  752. package/dist/genexus-ide-ui/icon-assets/patterns/structure.svg +1 -1
  753. package/dist/genexus-ide-ui/icon-assets/patterns/tab.svg +1 -1
  754. package/dist/genexus-ide-ui/icon-assets/patterns/tabs.svg +1 -1
  755. package/dist/genexus-ide-ui/icon-assets/patterns/work-with-web.svg +1 -1
  756. package/dist/genexus-ide-ui/icon-assets/patterns/workwith-for-sd.svg +1 -1
  757. package/dist/genexus-ide-ui/icon-assets/patterns-default-associated/default-associated.svg +1 -1
  758. package/dist/genexus-ide-ui/icon-assets/patterns-default-associated/modified.svg +1 -1
  759. package/dist/genexus-ide-ui/icon-assets/patterns-default-associated/synchronized.svg +1 -1
  760. package/dist/genexus-ide-ui/icon-assets/window-tools/alphabetical-order.svg +1 -1
  761. package/dist/genexus-ide-ui/icon-assets/window-tools/backend.svg +1 -1
  762. package/dist/genexus-ide-ui/icon-assets/window-tools/breakpoints.svg +1 -1
  763. package/dist/genexus-ide-ui/icon-assets/window-tools/category-groups.svg +1 -1
  764. package/dist/genexus-ide-ui/icon-assets/window-tools/datastores.svg +1 -1
  765. package/dist/genexus-ide-ui/icon-assets/window-tools/debugx.svg +1 -1
  766. package/dist/genexus-ide-ui/icon-assets/window-tools/error-list.svg +1 -1
  767. package/dist/genexus-ide-ui/icon-assets/window-tools/filter-conditions.svg +1 -1
  768. package/dist/genexus-ide-ui/icon-assets/window-tools/filter.svg +1 -1
  769. package/dist/genexus-ide-ui/icon-assets/window-tools/frontend.svg +1 -1
  770. package/dist/genexus-ide-ui/icon-assets/window-tools/genexus-cloud.svg +1 -1
  771. package/dist/genexus-ide-ui/icon-assets/window-tools/history.svg +1 -1
  772. package/dist/genexus-ide-ui/icon-assets/window-tools/indexer-monitor.svg +1 -1
  773. package/dist/genexus-ide-ui/icon-assets/window-tools/kb-explorer.svg +1 -1
  774. package/dist/genexus-ide-ui/icon-assets/window-tools/last-changes-view.svg +1 -1
  775. package/dist/genexus-ide-ui/icon-assets/window-tools/logout.svg +1 -1
  776. package/dist/genexus-ide-ui/icon-assets/window-tools/output.svg +1 -1
  777. package/dist/genexus-ide-ui/icon-assets/window-tools/performance-test-objects.svg +1 -1
  778. package/dist/genexus-ide-ui/icon-assets/window-tools/preferences.svg +1 -1
  779. package/dist/genexus-ide-ui/icon-assets/window-tools/properties.svg +1 -1
  780. package/dist/genexus-ide-ui/icon-assets/window-tools/references.svg +1 -1
  781. package/dist/genexus-ide-ui/icon-assets/window-tools/responsive-sizes.svg +1 -1
  782. package/dist/genexus-ide-ui/icon-assets/window-tools/rol.svg +1 -1
  783. package/dist/genexus-ide-ui/icon-assets/window-tools/roles.svg +1 -1
  784. package/dist/genexus-ide-ui/icon-assets/window-tools/services.svg +1 -1
  785. package/dist/genexus-ide-ui/icon-assets/window-tools/teamdev.svg +1 -1
  786. package/dist/genexus-ide-ui/icon-assets/window-tools/toolbox.svg +1 -1
  787. package/dist/genexus-ide-ui/icon-assets/window-tools/watch.svg +1 -1
  788. package/dist/genexus-ide-ui/icon-assets/window-tools/work-with-attributes.svg +1 -1
  789. package/dist/genexus-ide-ui/icon-assets/window-tools/workflow-settings.svg +1 -1
  790. package/dist/genexus-ide-ui/icon-assets/window-tools/workflow.svg +1 -1
  791. package/dist/genexus-ide-ui/{p-4335d78d.entry.js → p-001372c2.entry.js} +3 -3
  792. package/dist/genexus-ide-ui/{p-8480a5f7.entry.js → p-038675b4.entry.js} +3 -3
  793. package/dist/genexus-ide-ui/{p-132f1a53.entry.js → p-04d751fa.entry.js} +4 -4
  794. package/dist/genexus-ide-ui/{p-de8ceb68.entry.js → p-06cdf966.entry.js} +2 -2
  795. package/dist/genexus-ide-ui/{p-6ac4aef1.entry.js → p-07f5e845.entry.js} +4 -4
  796. package/dist/genexus-ide-ui/{p-7bb7cdeb.js → p-08f45769.js} +2 -2
  797. package/dist/genexus-ide-ui/{p-1472c78f.js → p-099548f7.js} +2 -2
  798. package/dist/genexus-ide-ui/{p-c1b7bf2f.entry.js → p-0b3dfc86.entry.js} +2 -2
  799. package/dist/genexus-ide-ui/{p-3f035c0a.js → p-0c088e26.js} +2 -2
  800. package/dist/genexus-ide-ui/{p-a17d61be.entry.js → p-0c10e042.entry.js} +2 -2
  801. package/dist/genexus-ide-ui/{p-4d278798.entry.js → p-0d246e5b.entry.js} +2 -2
  802. package/dist/genexus-ide-ui/{p-aa670e68.entry.js → p-0f4cf364.entry.js} +2 -2
  803. package/dist/genexus-ide-ui/{p-bb341c47.entry.js → p-1023012c.entry.js} +4 -4
  804. package/dist/genexus-ide-ui/{p-04111560.entry.js → p-10c578a4.entry.js} +4 -4
  805. package/dist/genexus-ide-ui/{p-53e5df3b.entry.js → p-10ca43ee.entry.js} +2 -2
  806. package/dist/genexus-ide-ui/{p-a5c57b1d.entry.js → p-1538ac27.entry.js} +3 -3
  807. package/dist/genexus-ide-ui/{p-024533a2.entry.js → p-1564762f.entry.js} +2 -2
  808. package/dist/genexus-ide-ui/{p-f28d7f68.entry.js → p-15781838.entry.js} +2 -2
  809. package/dist/genexus-ide-ui/{p-637a5168.entry.js → p-18e48464.entry.js} +2 -2
  810. package/dist/genexus-ide-ui/{p-fe6cf49e.entry.js → p-1964e138.entry.js} +3 -3
  811. package/dist/genexus-ide-ui/{p-3174871a.entry.js → p-1a297683.entry.js} +2 -2
  812. package/dist/genexus-ide-ui/{p-86ee3387.entry.js → p-208041b8.entry.js} +3 -3
  813. package/dist/genexus-ide-ui/{p-8b08f173.entry.js → p-25220e28.entry.js} +17 -26
  814. package/dist/genexus-ide-ui/{p-8b08f173.entry.js.map → p-25220e28.entry.js.map} +1 -1
  815. package/dist/genexus-ide-ui/{p-4520e2a2.entry.js → p-28a6ab9a.entry.js} +2 -2
  816. package/dist/genexus-ide-ui/{p-7e79f920.entry.js → p-2a6f5aba.entry.js} +3 -3
  817. package/dist/genexus-ide-ui/{p-5f89e42d.entry.js → p-2e0a1960.entry.js} +2 -2
  818. package/dist/genexus-ide-ui/{p-c5df7133.entry.js → p-30b7297d.entry.js} +2 -2
  819. package/dist/genexus-ide-ui/{p-6548d418.entry.js → p-352e2c20.entry.js} +2 -2
  820. package/dist/genexus-ide-ui/{p-1117db17.entry.js → p-36ff173f.entry.js} +9 -9
  821. package/dist/genexus-ide-ui/{p-159a5a60.entry.js → p-37ce39e3.entry.js} +2 -2
  822. package/dist/genexus-ide-ui/{p-942233fc.entry.js → p-3ae7428e.entry.js} +2 -2
  823. package/dist/genexus-ide-ui/{p-8518f9f5.entry.js → p-3aed87e1.entry.js} +2 -2
  824. package/dist/genexus-ide-ui/{p-444e50ee.entry.js → p-3c2357cf.entry.js} +5 -5
  825. package/dist/genexus-ide-ui/p-3d131f61.entry.js +1428 -0
  826. package/dist/genexus-ide-ui/p-3d131f61.entry.js.map +1 -0
  827. package/dist/genexus-ide-ui/{p-04adc77d.entry.js → p-3ddac2b8.entry.js} +2 -2
  828. package/dist/genexus-ide-ui/{p-f5e5b21e.entry.js → p-3f0b6af7.entry.js} +2 -2
  829. package/dist/genexus-ide-ui/{p-0604bbee.entry.js → p-40c3529a.entry.js} +4 -4
  830. package/dist/genexus-ide-ui/{p-a4d5d277.entry.js → p-43554153.entry.js} +2 -2
  831. package/dist/genexus-ide-ui/{p-d4b165db.entry.js → p-43ffe165.entry.js} +2 -2
  832. package/dist/genexus-ide-ui/{p-92f45796.entry.js → p-47bcd3a6.entry.js} +2 -2
  833. package/dist/genexus-ide-ui/{p-57137c83.entry.js → p-4b9b3e4e.entry.js} +2 -2
  834. package/dist/genexus-ide-ui/p-4c12ed5a.entry.js +1085 -0
  835. package/dist/genexus-ide-ui/p-4c12ed5a.entry.js.map +1 -0
  836. package/dist/genexus-ide-ui/{p-96a559ce.entry.js → p-4f376659.entry.js} +4 -4
  837. package/dist/genexus-ide-ui/{p-71298dc8.entry.js → p-4f3c94c4.entry.js} +2 -2
  838. package/dist/genexus-ide-ui/p-4f3c94c4.entry.js.map +1 -0
  839. package/dist/genexus-ide-ui/{p-479de27c.entry.js → p-4f6eaae0.entry.js} +2 -2
  840. package/dist/genexus-ide-ui/{p-b78719d3.js → p-5028570f.js} +2 -2
  841. package/dist/genexus-ide-ui/{p-9c1fa094.entry.js → p-51c8754e.entry.js} +3 -3
  842. package/dist/genexus-ide-ui/{p-780a3309.entry.js → p-51e1d34e.entry.js} +2 -2
  843. package/dist/genexus-ide-ui/{p-f974b905.entry.js → p-5201a218.entry.js} +3 -3
  844. package/dist/genexus-ide-ui/{p-e2537609.entry.js → p-529d5f14.entry.js} +3 -3
  845. package/dist/genexus-ide-ui/{p-5cc59da8.entry.js → p-54975e06.entry.js} +2 -2
  846. package/dist/genexus-ide-ui/{p-6281ca3e.entry.js → p-57978bf3.entry.js} +2 -2
  847. package/dist/genexus-ide-ui/{p-7f782726.entry.js → p-5a5e9459.entry.js} +2 -2
  848. package/dist/genexus-ide-ui/{p-5cec37bc.entry.js → p-5b2f8741.entry.js} +2 -2
  849. package/dist/genexus-ide-ui/{p-2cdf5c87.entry.js → p-5c0d6f9b.entry.js} +2 -2
  850. package/dist/genexus-ide-ui/{p-3149e6f2.entry.js → p-5e4b2563.entry.js} +2 -2
  851. package/dist/genexus-ide-ui/p-5f671d1f.js +9 -0
  852. package/dist/genexus-ide-ui/p-5f671d1f.js.map +1 -0
  853. package/dist/genexus-ide-ui/{p-7b60fc65.entry.js → p-603800f2.entry.js} +3 -3
  854. package/dist/genexus-ide-ui/{p-ea80da25.entry.js → p-61fa38a0.entry.js} +2 -2
  855. package/dist/genexus-ide-ui/{p-0c1ef5eb.entry.js → p-642aff55.entry.js} +2 -2
  856. package/dist/genexus-ide-ui/{p-62caab49.entry.js → p-64848f25.entry.js} +5 -5
  857. package/dist/genexus-ide-ui/{p-f3a99271.entry.js → p-64cdf586.entry.js} +2 -2
  858. package/dist/genexus-ide-ui/{p-23277761.entry.js → p-6511f892.entry.js} +3 -3
  859. package/dist/genexus-ide-ui/{p-99f5be87.entry.js → p-651ca405.entry.js} +2 -2
  860. package/dist/genexus-ide-ui/{p-547656dd.entry.js → p-66730660.entry.js} +2 -2
  861. package/dist/genexus-ide-ui/{p-4a0316b9.entry.js → p-6846e080.entry.js} +2 -2
  862. package/dist/genexus-ide-ui/{p-1d606552.entry.js → p-6889dc5c.entry.js} +2 -2
  863. package/dist/genexus-ide-ui/{p-e47bba0e.entry.js → p-69837f5a.entry.js} +2 -2
  864. package/dist/genexus-ide-ui/p-6b66ce90.entry.js +17 -0
  865. package/dist/genexus-ide-ui/{p-95c85944.js → p-6bfe0db9.js} +2 -2
  866. package/dist/genexus-ide-ui/{p-2a3af5ac.entry.js → p-6e05bc89.entry.js} +3 -3
  867. package/dist/genexus-ide-ui/{p-04d6cd2d.entry.js → p-730a90b0.entry.js} +2 -2
  868. package/dist/genexus-ide-ui/{p-a94a20a4.entry.js → p-73269d9d.entry.js} +5 -5
  869. package/dist/genexus-ide-ui/{p-2e3e48f6.entry.js → p-73a078e2.entry.js} +551 -497
  870. package/dist/genexus-ide-ui/p-73a078e2.entry.js.map +1 -0
  871. package/dist/genexus-ide-ui/{p-8d8d2e4c.entry.js → p-75dde376.entry.js} +2 -2
  872. package/dist/genexus-ide-ui/{p-11225a5a.entry.js → p-7692f269.entry.js} +2 -2
  873. package/dist/genexus-ide-ui/{p-e4c542c6.js → p-7c350e3f.js} +2 -2
  874. package/dist/genexus-ide-ui/{p-635dacc5.entry.js → p-7c7c26ab.entry.js} +384 -368
  875. package/dist/genexus-ide-ui/p-7c7c26ab.entry.js.map +1 -0
  876. package/dist/genexus-ide-ui/{p-97baa2a4.entry.js → p-7c8e949f.entry.js} +7 -7
  877. package/dist/genexus-ide-ui/{p-97baa2a4.entry.js.map → p-7c8e949f.entry.js.map} +1 -1
  878. package/dist/genexus-ide-ui/{p-2edf390a.entry.js → p-7da9797d.entry.js} +3 -3
  879. package/dist/genexus-ide-ui/{p-d5d95242.entry.js → p-7e66544c.entry.js} +2 -2
  880. package/dist/genexus-ide-ui/{p-cdf82b7f.entry.js → p-7ee0b797.entry.js} +4 -4
  881. package/dist/genexus-ide-ui/{p-65ac0693.entry.js → p-7ef60196.entry.js} +2 -2
  882. package/dist/genexus-ide-ui/{p-f2a206c9.entry.js → p-801635fa.entry.js} +4 -4
  883. package/dist/genexus-ide-ui/{p-e66b63b6.entry.js → p-8049dfe8.entry.js} +2 -2
  884. package/dist/genexus-ide-ui/{p-3230c967.entry.js → p-8070ead3.entry.js} +4 -4
  885. package/dist/genexus-ide-ui/{p-3230c967.entry.js.map → p-8070ead3.entry.js.map} +1 -1
  886. package/dist/genexus-ide-ui/{p-13fb9b0c.entry.js → p-8343ae2e.entry.js} +7 -7
  887. package/dist/genexus-ide-ui/{p-e266fd1e.entry.js → p-8624a495.entry.js} +3 -3
  888. package/dist/genexus-ide-ui/{p-a18c4312.entry.js → p-8708a417.entry.js} +7 -7
  889. package/dist/genexus-ide-ui/{p-5943edc4.entry.js → p-88455969.entry.js} +189 -44
  890. package/dist/genexus-ide-ui/p-88455969.entry.js.map +1 -0
  891. package/dist/genexus-ide-ui/{p-aada8352.entry.js → p-8b7fa9a4.entry.js} +18 -10
  892. package/dist/genexus-ide-ui/p-8b7fa9a4.entry.js.map +1 -0
  893. package/dist/genexus-ide-ui/p-8dca63f8.entry.js +1243 -0
  894. package/dist/genexus-ide-ui/p-8dca63f8.entry.js.map +1 -0
  895. package/dist/genexus-ide-ui/p-8dcfc193.js +143 -0
  896. package/dist/genexus-ide-ui/p-8dcfc193.js.map +1 -0
  897. package/dist/genexus-ide-ui/{p-aed7c461.entry.js → p-90234b7d.entry.js} +2 -2
  898. package/dist/genexus-ide-ui/{p-9feb37f7.entry.js → p-908971c9.entry.js} +2 -2
  899. package/dist/genexus-ide-ui/{p-ce4512a9.entry.js → p-917eb5c8.entry.js} +2 -2
  900. package/dist/genexus-ide-ui/{p-c4dc84ef.entry.js → p-94fb2adc.entry.js} +2 -2
  901. package/dist/genexus-ide-ui/{p-0ddd47ff.entry.js → p-9590ccf3.entry.js} +2 -2
  902. package/dist/genexus-ide-ui/{p-93998965.entry.js → p-974fdadd.entry.js} +2 -2
  903. package/dist/genexus-ide-ui/{p-a070f8ba.entry.js → p-97c5a0f2.entry.js} +6 -5
  904. package/dist/genexus-ide-ui/p-97c5a0f2.entry.js.map +1 -0
  905. package/dist/genexus-ide-ui/{p-4757a377.entry.js → p-97ef7986.entry.js} +2 -2
  906. package/dist/genexus-ide-ui/{p-8ac9e0e3.entry.js → p-a28a7a27.entry.js} +3 -3
  907. package/dist/genexus-ide-ui/{p-b56b67c8.entry.js → p-a3236695.entry.js} +2 -2
  908. package/dist/genexus-ide-ui/{p-fb25e42e.entry.js → p-a6ea7f58.entry.js} +2 -2
  909. package/dist/genexus-ide-ui/{p-1f61a0b5.entry.js → p-a9381a51.entry.js} +3 -3
  910. package/dist/genexus-ide-ui/{p-3ad50d19.entry.js → p-ac2b99ce.entry.js} +3 -3
  911. package/dist/genexus-ide-ui/{p-8d58b0b1.entry.js → p-ac54d3dd.entry.js} +2 -2
  912. package/dist/genexus-ide-ui/{p-91bb6c23.entry.js → p-aca7d171.entry.js} +2 -2
  913. package/dist/genexus-ide-ui/{p-4345f3bd.js → p-aca92ca0.js} +8 -8
  914. package/dist/genexus-ide-ui/{p-279e200d.entry.js → p-ada1696f.entry.js} +6 -6
  915. package/dist/genexus-ide-ui/{p-f5795593.entry.js → p-afb42984.entry.js} +2 -2
  916. package/dist/genexus-ide-ui/{p-686ba64a.entry.js → p-b0e20394.entry.js} +2 -2
  917. package/dist/genexus-ide-ui/{p-44c816f7.entry.js → p-b1c9e006.entry.js} +52 -52
  918. package/dist/genexus-ide-ui/{p-8eac3c88.entry.js → p-b3e632eb.entry.js} +2 -2
  919. package/dist/genexus-ide-ui/{p-8b5c6f86.entry.js → p-b55bb638.entry.js} +2 -2
  920. package/dist/genexus-ide-ui/{p-4f832012.entry.js → p-b5f61be2.entry.js} +2 -3
  921. package/dist/genexus-ide-ui/p-b5f61be2.entry.js.map +1 -0
  922. package/dist/genexus-ide-ui/p-b9938af8.entry.js +247 -0
  923. package/dist/genexus-ide-ui/p-b9938af8.entry.js.map +1 -0
  924. package/dist/genexus-ide-ui/{p-5090cf74.entry.js → p-bbd5cbc5.entry.js} +3 -3
  925. package/dist/genexus-ide-ui/{p-4ad8c255.entry.js → p-bbe5fba9.entry.js} +2 -2
  926. package/dist/genexus-ide-ui/{p-8fc62af2.entry.js → p-bdb4eff7.entry.js} +3 -3
  927. package/dist/genexus-ide-ui/{p-f5a34947.entry.js → p-bf424108.entry.js} +2 -2
  928. package/dist/genexus-ide-ui/{p-9e59c362.entry.js → p-bffbf29a.entry.js} +9 -9
  929. package/dist/genexus-ide-ui/{p-d076a59b.entry.js → p-c333b010.entry.js} +2 -2
  930. package/dist/genexus-ide-ui/{p-6e6bbcea.entry.js → p-c3dee80f.entry.js} +16 -12
  931. package/dist/genexus-ide-ui/p-c3dee80f.entry.js.map +1 -0
  932. package/dist/genexus-ide-ui/{p-f5b4b0ac.entry.js → p-c64ed711.entry.js} +3 -3
  933. package/dist/genexus-ide-ui/{p-59171ba2.entry.js → p-c721ad47.entry.js} +3 -3
  934. package/dist/genexus-ide-ui/{p-0a8f651a.entry.js → p-c835ed6d.entry.js} +2 -2
  935. package/dist/genexus-ide-ui/{p-7a3c9238.entry.js → p-c8d0ee58.entry.js} +3 -3
  936. package/dist/genexus-ide-ui/{p-b6a92ed4.entry.js → p-c9dc6492.entry.js} +3 -3
  937. package/dist/genexus-ide-ui/{p-a273b0c8.entry.js → p-ca220abf.entry.js} +3 -3
  938. package/dist/genexus-ide-ui/{p-a273b0c8.entry.js.map → p-ca220abf.entry.js.map} +1 -1
  939. package/dist/genexus-ide-ui/{p-bc2e4830.entry.js → p-cd7f933d.entry.js} +2 -2
  940. package/dist/genexus-ide-ui/{p-43b64878.entry.js → p-ce8a18f0.entry.js} +3 -3
  941. package/dist/genexus-ide-ui/{p-1960de7e.entry.js → p-ce8ade61.entry.js} +2 -2
  942. package/dist/genexus-ide-ui/{p-83ea68f1.entry.js → p-d1951379.entry.js} +2 -2
  943. package/dist/genexus-ide-ui/{p-b3b8277e.entry.js → p-d230799f.entry.js} +5 -5
  944. package/dist/genexus-ide-ui/p-d230799f.entry.js.map +1 -0
  945. package/dist/genexus-ide-ui/{p-f33c6a66.entry.js → p-d2332373.entry.js} +2 -2
  946. package/dist/genexus-ide-ui/{p-e2998738.entry.js → p-d4533ac6.entry.js} +2 -2
  947. package/dist/genexus-ide-ui/{p-c4c4462d.entry.js → p-d4e152a8.entry.js} +2 -2
  948. package/dist/genexus-ide-ui/{p-5e91d2bc.entry.js → p-d6e6ca09.entry.js} +2 -2
  949. package/dist/genexus-ide-ui/{p-1e275d2c.js → p-d8a08b43.js} +44 -52
  950. package/dist/genexus-ide-ui/p-d8a08b43.js.map +1 -0
  951. package/dist/genexus-ide-ui/{p-ed865ce1.entry.js → p-d8f4f03c.entry.js} +2 -2
  952. package/dist/genexus-ide-ui/{p-6d64b154.entry.js → p-dabca27c.entry.js} +2 -2
  953. package/dist/genexus-ide-ui/{p-40c135e7.entry.js → p-db770bb3.entry.js} +2 -2
  954. package/dist/genexus-ide-ui/{p-904db679.entry.js → p-dcaf6083.entry.js} +4 -4
  955. package/dist/genexus-ide-ui/{p-a8e60143.entry.js → p-dd77446b.entry.js} +5 -5
  956. package/dist/genexus-ide-ui/{p-43296d6e.entry.js → p-e1585f37.entry.js} +2 -2
  957. package/dist/genexus-ide-ui/{p-61de96f8.entry.js → p-e39ebc90.entry.js} +2 -2
  958. package/dist/genexus-ide-ui/p-e408d7b7.js +54 -0
  959. package/dist/genexus-ide-ui/p-e408d7b7.js.map +1 -0
  960. package/dist/genexus-ide-ui/{p-f14753c8.entry.js → p-e5ce6275.entry.js} +2 -2
  961. package/dist/genexus-ide-ui/{p-e2382d48.entry.js → p-e747b958.entry.js} +4 -4
  962. package/dist/genexus-ide-ui/{p-806d0a19.entry.js → p-e74da627.entry.js} +35 -35
  963. package/dist/genexus-ide-ui/{p-af85e128.entry.js → p-e988ba86.entry.js} +2 -2
  964. package/dist/genexus-ide-ui/{p-620e3d6b.entry.js → p-ed305b60.entry.js} +2 -2
  965. package/dist/genexus-ide-ui/{p-30e749f7.entry.js → p-f4578b13.entry.js} +2 -2
  966. package/dist/genexus-ide-ui/{p-a6b36098.entry.js → p-f5d8b1e1.entry.js} +2 -2
  967. package/dist/genexus-ide-ui/{p-32283a2f.entry.js → p-f86073ea.entry.js} +2 -2
  968. package/dist/genexus-ide-ui/{p-1fb6de33.entry.js → p-f99f6957.entry.js} +2 -2
  969. package/dist/genexus-ide-ui/{p-660f644f.entry.js → p-fbd14f24.entry.js} +3 -3
  970. package/dist/genexus-ide-ui/{p-61126ed3.entry.js → p-fc0c5b6f.entry.js} +2 -2
  971. package/dist/genexus-ide-ui/{p-344ec5ed.entry.js → p-fd0bcf82.entry.js} +3 -3
  972. package/dist/genexus-ide-ui/{p-7d6a7d55.entry.js → p-fe3d9132.entry.js} +2 -2
  973. package/dist/genexus-ide-ui/{p-8f66c5b3.entry.js → p-ff264cda.entry.js} +2 -2
  974. package/dist/genexus-ide-ui/{p-eeaf79d6.entry.js → p-ffa0a15e.entry.js} +2 -2
  975. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/flexible-layout/flexible-layout/flexible-layout.css +16 -0
  976. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/layout-splitter/layout-splitter.css +29 -19
  977. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/tab/tab.css +89 -31
  978. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/test/test-flexible-layout/test-flexible-layout.css +270 -22
  979. package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/tree-view/tree-view-item/tree-view-item.css +19 -4
  980. package/dist/node_modules/@genexus/gemini/dist/collection/components/button/button.css +1 -1
  981. package/dist/node_modules/@genexus/gemini/dist/collection/components/card/card.css +14 -3
  982. package/dist/node_modules/@genexus/gemini/dist/collection/components/list-box/list-box.css +1 -0
  983. package/dist/node_modules/@genexus/gemini/dist/collection/components/list-box-item/list-box-item.css +0 -1
  984. package/dist/node_modules/@genexus/gemini/dist/collection/components/test/test.css +0 -26
  985. package/dist/node_modules/@genexus/gemini/dist/collection/components/tree-view/tree-view.css +3 -7
  986. package/dist/types/components/create-kb-from-server/create-kb-from-server.d.ts +2 -1
  987. package/package.json +3 -3
  988. package/dist/cjs/index-c66d7fae.js.map +0 -1
  989. package/dist/cjs/utils-4b616111.js +0 -53
  990. package/dist/cjs/utils-4b616111.js.map +0 -1
  991. package/dist/cjs/utils-5ba52db3.js.map +0 -1
  992. package/dist/esm/utils-b9f4c3b4.js.map +0 -1
  993. package/dist/esm/utils-df5b9202.js +0 -41
  994. package/dist/esm/utils-df5b9202.js.map +0 -1
  995. package/dist/genexus-ide-ui/p-125c9d13.entry.js +0 -486
  996. package/dist/genexus-ide-ui/p-125c9d13.entry.js.map +0 -1
  997. package/dist/genexus-ide-ui/p-1e275d2c.js.map +0 -1
  998. package/dist/genexus-ide-ui/p-2d40bb14.entry.js +0 -17
  999. package/dist/genexus-ide-ui/p-2d6c8883.entry.js +0 -850
  1000. package/dist/genexus-ide-ui/p-2d6c8883.entry.js.map +0 -1
  1001. package/dist/genexus-ide-ui/p-2e3e48f6.entry.js.map +0 -1
  1002. package/dist/genexus-ide-ui/p-4997af38.entry.js +0 -186
  1003. package/dist/genexus-ide-ui/p-4997af38.entry.js.map +0 -1
  1004. package/dist/genexus-ide-ui/p-4f832012.entry.js.map +0 -1
  1005. package/dist/genexus-ide-ui/p-5943edc4.entry.js.map +0 -1
  1006. package/dist/genexus-ide-ui/p-635dacc5.entry.js.map +0 -1
  1007. package/dist/genexus-ide-ui/p-6e6bbcea.entry.js.map +0 -1
  1008. package/dist/genexus-ide-ui/p-71298dc8.entry.js.map +0 -1
  1009. package/dist/genexus-ide-ui/p-a070f8ba.entry.js.map +0 -1
  1010. package/dist/genexus-ide-ui/p-aada8352.entry.js.map +0 -1
  1011. package/dist/genexus-ide-ui/p-b3b8277e.entry.js.map +0 -1
  1012. package/dist/genexus-ide-ui/p-bd97454f.entry.js +0 -1079
  1013. package/dist/genexus-ide-ui/p-bd97454f.entry.js.map +0 -1
  1014. package/dist/genexus-ide-ui/p-cec9a00f.js +0 -48
  1015. package/dist/genexus-ide-ui/p-cec9a00f.js.map +0 -1
  1016. package/dist/genexus-ide-ui/p-f2a63bb5.js +0 -45
  1017. package/dist/genexus-ide-ui/p-f2a63bb5.js.map +0 -1
  1018. /package/dist/genexus-ide-ui/{p-4335d78d.entry.js.map → p-001372c2.entry.js.map} +0 -0
  1019. /package/dist/genexus-ide-ui/{p-8480a5f7.entry.js.map → p-038675b4.entry.js.map} +0 -0
  1020. /package/dist/genexus-ide-ui/{p-132f1a53.entry.js.map → p-04d751fa.entry.js.map} +0 -0
  1021. /package/dist/genexus-ide-ui/{p-de8ceb68.entry.js.map → p-06cdf966.entry.js.map} +0 -0
  1022. /package/dist/genexus-ide-ui/{p-6ac4aef1.entry.js.map → p-07f5e845.entry.js.map} +0 -0
  1023. /package/dist/genexus-ide-ui/{p-7bb7cdeb.js.map → p-08f45769.js.map} +0 -0
  1024. /package/dist/genexus-ide-ui/{p-1472c78f.js.map → p-099548f7.js.map} +0 -0
  1025. /package/dist/genexus-ide-ui/{p-c1b7bf2f.entry.js.map → p-0b3dfc86.entry.js.map} +0 -0
  1026. /package/dist/genexus-ide-ui/{p-3f035c0a.js.map → p-0c088e26.js.map} +0 -0
  1027. /package/dist/genexus-ide-ui/{p-a17d61be.entry.js.map → p-0c10e042.entry.js.map} +0 -0
  1028. /package/dist/genexus-ide-ui/{p-4d278798.entry.js.map → p-0d246e5b.entry.js.map} +0 -0
  1029. /package/dist/genexus-ide-ui/{p-aa670e68.entry.js.map → p-0f4cf364.entry.js.map} +0 -0
  1030. /package/dist/genexus-ide-ui/{p-bb341c47.entry.js.map → p-1023012c.entry.js.map} +0 -0
  1031. /package/dist/genexus-ide-ui/{p-04111560.entry.js.map → p-10c578a4.entry.js.map} +0 -0
  1032. /package/dist/genexus-ide-ui/{p-53e5df3b.entry.js.map → p-10ca43ee.entry.js.map} +0 -0
  1033. /package/dist/genexus-ide-ui/{p-a5c57b1d.entry.js.map → p-1538ac27.entry.js.map} +0 -0
  1034. /package/dist/genexus-ide-ui/{p-024533a2.entry.js.map → p-1564762f.entry.js.map} +0 -0
  1035. /package/dist/genexus-ide-ui/{p-f28d7f68.entry.js.map → p-15781838.entry.js.map} +0 -0
  1036. /package/dist/genexus-ide-ui/{p-637a5168.entry.js.map → p-18e48464.entry.js.map} +0 -0
  1037. /package/dist/genexus-ide-ui/{p-fe6cf49e.entry.js.map → p-1964e138.entry.js.map} +0 -0
  1038. /package/dist/genexus-ide-ui/{p-3174871a.entry.js.map → p-1a297683.entry.js.map} +0 -0
  1039. /package/dist/genexus-ide-ui/{p-86ee3387.entry.js.map → p-208041b8.entry.js.map} +0 -0
  1040. /package/dist/genexus-ide-ui/{p-4520e2a2.entry.js.map → p-28a6ab9a.entry.js.map} +0 -0
  1041. /package/dist/genexus-ide-ui/{p-7e79f920.entry.js.map → p-2a6f5aba.entry.js.map} +0 -0
  1042. /package/dist/genexus-ide-ui/{p-5f89e42d.entry.js.map → p-2e0a1960.entry.js.map} +0 -0
  1043. /package/dist/genexus-ide-ui/{p-c5df7133.entry.js.map → p-30b7297d.entry.js.map} +0 -0
  1044. /package/dist/genexus-ide-ui/{p-6548d418.entry.js.map → p-352e2c20.entry.js.map} +0 -0
  1045. /package/dist/genexus-ide-ui/{p-1117db17.entry.js.map → p-36ff173f.entry.js.map} +0 -0
  1046. /package/dist/genexus-ide-ui/{p-159a5a60.entry.js.map → p-37ce39e3.entry.js.map} +0 -0
  1047. /package/dist/genexus-ide-ui/{p-942233fc.entry.js.map → p-3ae7428e.entry.js.map} +0 -0
  1048. /package/dist/genexus-ide-ui/{p-8518f9f5.entry.js.map → p-3aed87e1.entry.js.map} +0 -0
  1049. /package/dist/genexus-ide-ui/{p-444e50ee.entry.js.map → p-3c2357cf.entry.js.map} +0 -0
  1050. /package/dist/genexus-ide-ui/{p-04adc77d.entry.js.map → p-3ddac2b8.entry.js.map} +0 -0
  1051. /package/dist/genexus-ide-ui/{p-f5e5b21e.entry.js.map → p-3f0b6af7.entry.js.map} +0 -0
  1052. /package/dist/genexus-ide-ui/{p-0604bbee.entry.js.map → p-40c3529a.entry.js.map} +0 -0
  1053. /package/dist/genexus-ide-ui/{p-a4d5d277.entry.js.map → p-43554153.entry.js.map} +0 -0
  1054. /package/dist/genexus-ide-ui/{p-d4b165db.entry.js.map → p-43ffe165.entry.js.map} +0 -0
  1055. /package/dist/genexus-ide-ui/{p-92f45796.entry.js.map → p-47bcd3a6.entry.js.map} +0 -0
  1056. /package/dist/genexus-ide-ui/{p-57137c83.entry.js.map → p-4b9b3e4e.entry.js.map} +0 -0
  1057. /package/dist/genexus-ide-ui/{p-96a559ce.entry.js.map → p-4f376659.entry.js.map} +0 -0
  1058. /package/dist/genexus-ide-ui/{p-479de27c.entry.js.map → p-4f6eaae0.entry.js.map} +0 -0
  1059. /package/dist/genexus-ide-ui/{p-b78719d3.js.map → p-5028570f.js.map} +0 -0
  1060. /package/dist/genexus-ide-ui/{p-9c1fa094.entry.js.map → p-51c8754e.entry.js.map} +0 -0
  1061. /package/dist/genexus-ide-ui/{p-780a3309.entry.js.map → p-51e1d34e.entry.js.map} +0 -0
  1062. /package/dist/genexus-ide-ui/{p-f974b905.entry.js.map → p-5201a218.entry.js.map} +0 -0
  1063. /package/dist/genexus-ide-ui/{p-e2537609.entry.js.map → p-529d5f14.entry.js.map} +0 -0
  1064. /package/dist/genexus-ide-ui/{p-5cc59da8.entry.js.map → p-54975e06.entry.js.map} +0 -0
  1065. /package/dist/genexus-ide-ui/{p-6281ca3e.entry.js.map → p-57978bf3.entry.js.map} +0 -0
  1066. /package/dist/genexus-ide-ui/{p-7f782726.entry.js.map → p-5a5e9459.entry.js.map} +0 -0
  1067. /package/dist/genexus-ide-ui/{p-5cec37bc.entry.js.map → p-5b2f8741.entry.js.map} +0 -0
  1068. /package/dist/genexus-ide-ui/{p-2cdf5c87.entry.js.map → p-5c0d6f9b.entry.js.map} +0 -0
  1069. /package/dist/genexus-ide-ui/{p-3149e6f2.entry.js.map → p-5e4b2563.entry.js.map} +0 -0
  1070. /package/dist/genexus-ide-ui/{p-7b60fc65.entry.js.map → p-603800f2.entry.js.map} +0 -0
  1071. /package/dist/genexus-ide-ui/{p-ea80da25.entry.js.map → p-61fa38a0.entry.js.map} +0 -0
  1072. /package/dist/genexus-ide-ui/{p-0c1ef5eb.entry.js.map → p-642aff55.entry.js.map} +0 -0
  1073. /package/dist/genexus-ide-ui/{p-62caab49.entry.js.map → p-64848f25.entry.js.map} +0 -0
  1074. /package/dist/genexus-ide-ui/{p-f3a99271.entry.js.map → p-64cdf586.entry.js.map} +0 -0
  1075. /package/dist/genexus-ide-ui/{p-23277761.entry.js.map → p-6511f892.entry.js.map} +0 -0
  1076. /package/dist/genexus-ide-ui/{p-99f5be87.entry.js.map → p-651ca405.entry.js.map} +0 -0
  1077. /package/dist/genexus-ide-ui/{p-547656dd.entry.js.map → p-66730660.entry.js.map} +0 -0
  1078. /package/dist/genexus-ide-ui/{p-4a0316b9.entry.js.map → p-6846e080.entry.js.map} +0 -0
  1079. /package/dist/genexus-ide-ui/{p-1d606552.entry.js.map → p-6889dc5c.entry.js.map} +0 -0
  1080. /package/dist/genexus-ide-ui/{p-e47bba0e.entry.js.map → p-69837f5a.entry.js.map} +0 -0
  1081. /package/dist/genexus-ide-ui/{p-2d40bb14.entry.js.map → p-6b66ce90.entry.js.map} +0 -0
  1082. /package/dist/genexus-ide-ui/{p-95c85944.js.map → p-6bfe0db9.js.map} +0 -0
  1083. /package/dist/genexus-ide-ui/{p-2a3af5ac.entry.js.map → p-6e05bc89.entry.js.map} +0 -0
  1084. /package/dist/genexus-ide-ui/{p-04d6cd2d.entry.js.map → p-730a90b0.entry.js.map} +0 -0
  1085. /package/dist/genexus-ide-ui/{p-a94a20a4.entry.js.map → p-73269d9d.entry.js.map} +0 -0
  1086. /package/dist/genexus-ide-ui/{p-8d8d2e4c.entry.js.map → p-75dde376.entry.js.map} +0 -0
  1087. /package/dist/genexus-ide-ui/{p-11225a5a.entry.js.map → p-7692f269.entry.js.map} +0 -0
  1088. /package/dist/genexus-ide-ui/{p-e4c542c6.js.map → p-7c350e3f.js.map} +0 -0
  1089. /package/dist/genexus-ide-ui/{p-2edf390a.entry.js.map → p-7da9797d.entry.js.map} +0 -0
  1090. /package/dist/genexus-ide-ui/{p-d5d95242.entry.js.map → p-7e66544c.entry.js.map} +0 -0
  1091. /package/dist/genexus-ide-ui/{p-cdf82b7f.entry.js.map → p-7ee0b797.entry.js.map} +0 -0
  1092. /package/dist/genexus-ide-ui/{p-65ac0693.entry.js.map → p-7ef60196.entry.js.map} +0 -0
  1093. /package/dist/genexus-ide-ui/{p-f2a206c9.entry.js.map → p-801635fa.entry.js.map} +0 -0
  1094. /package/dist/genexus-ide-ui/{p-e66b63b6.entry.js.map → p-8049dfe8.entry.js.map} +0 -0
  1095. /package/dist/genexus-ide-ui/{p-13fb9b0c.entry.js.map → p-8343ae2e.entry.js.map} +0 -0
  1096. /package/dist/genexus-ide-ui/{p-e266fd1e.entry.js.map → p-8624a495.entry.js.map} +0 -0
  1097. /package/dist/genexus-ide-ui/{p-a18c4312.entry.js.map → p-8708a417.entry.js.map} +0 -0
  1098. /package/dist/genexus-ide-ui/{p-aed7c461.entry.js.map → p-90234b7d.entry.js.map} +0 -0
  1099. /package/dist/genexus-ide-ui/{p-9feb37f7.entry.js.map → p-908971c9.entry.js.map} +0 -0
  1100. /package/dist/genexus-ide-ui/{p-ce4512a9.entry.js.map → p-917eb5c8.entry.js.map} +0 -0
  1101. /package/dist/genexus-ide-ui/{p-c4dc84ef.entry.js.map → p-94fb2adc.entry.js.map} +0 -0
  1102. /package/dist/genexus-ide-ui/{p-0ddd47ff.entry.js.map → p-9590ccf3.entry.js.map} +0 -0
  1103. /package/dist/genexus-ide-ui/{p-93998965.entry.js.map → p-974fdadd.entry.js.map} +0 -0
  1104. /package/dist/genexus-ide-ui/{p-4757a377.entry.js.map → p-97ef7986.entry.js.map} +0 -0
  1105. /package/dist/genexus-ide-ui/{p-8ac9e0e3.entry.js.map → p-a28a7a27.entry.js.map} +0 -0
  1106. /package/dist/genexus-ide-ui/{p-b56b67c8.entry.js.map → p-a3236695.entry.js.map} +0 -0
  1107. /package/dist/genexus-ide-ui/{p-fb25e42e.entry.js.map → p-a6ea7f58.entry.js.map} +0 -0
  1108. /package/dist/genexus-ide-ui/{p-1f61a0b5.entry.js.map → p-a9381a51.entry.js.map} +0 -0
  1109. /package/dist/genexus-ide-ui/{p-3ad50d19.entry.js.map → p-ac2b99ce.entry.js.map} +0 -0
  1110. /package/dist/genexus-ide-ui/{p-8d58b0b1.entry.js.map → p-ac54d3dd.entry.js.map} +0 -0
  1111. /package/dist/genexus-ide-ui/{p-91bb6c23.entry.js.map → p-aca7d171.entry.js.map} +0 -0
  1112. /package/dist/genexus-ide-ui/{p-4345f3bd.js.map → p-aca92ca0.js.map} +0 -0
  1113. /package/dist/genexus-ide-ui/{p-279e200d.entry.js.map → p-ada1696f.entry.js.map} +0 -0
  1114. /package/dist/genexus-ide-ui/{p-f5795593.entry.js.map → p-afb42984.entry.js.map} +0 -0
  1115. /package/dist/genexus-ide-ui/{p-686ba64a.entry.js.map → p-b0e20394.entry.js.map} +0 -0
  1116. /package/dist/genexus-ide-ui/{p-44c816f7.entry.js.map → p-b1c9e006.entry.js.map} +0 -0
  1117. /package/dist/genexus-ide-ui/{p-8eac3c88.entry.js.map → p-b3e632eb.entry.js.map} +0 -0
  1118. /package/dist/genexus-ide-ui/{p-8b5c6f86.entry.js.map → p-b55bb638.entry.js.map} +0 -0
  1119. /package/dist/genexus-ide-ui/{p-5090cf74.entry.js.map → p-bbd5cbc5.entry.js.map} +0 -0
  1120. /package/dist/genexus-ide-ui/{p-4ad8c255.entry.js.map → p-bbe5fba9.entry.js.map} +0 -0
  1121. /package/dist/genexus-ide-ui/{p-8fc62af2.entry.js.map → p-bdb4eff7.entry.js.map} +0 -0
  1122. /package/dist/genexus-ide-ui/{p-f5a34947.entry.js.map → p-bf424108.entry.js.map} +0 -0
  1123. /package/dist/genexus-ide-ui/{p-9e59c362.entry.js.map → p-bffbf29a.entry.js.map} +0 -0
  1124. /package/dist/genexus-ide-ui/{p-d076a59b.entry.js.map → p-c333b010.entry.js.map} +0 -0
  1125. /package/dist/genexus-ide-ui/{p-f5b4b0ac.entry.js.map → p-c64ed711.entry.js.map} +0 -0
  1126. /package/dist/genexus-ide-ui/{p-59171ba2.entry.js.map → p-c721ad47.entry.js.map} +0 -0
  1127. /package/dist/genexus-ide-ui/{p-0a8f651a.entry.js.map → p-c835ed6d.entry.js.map} +0 -0
  1128. /package/dist/genexus-ide-ui/{p-7a3c9238.entry.js.map → p-c8d0ee58.entry.js.map} +0 -0
  1129. /package/dist/genexus-ide-ui/{p-b6a92ed4.entry.js.map → p-c9dc6492.entry.js.map} +0 -0
  1130. /package/dist/genexus-ide-ui/{p-bc2e4830.entry.js.map → p-cd7f933d.entry.js.map} +0 -0
  1131. /package/dist/genexus-ide-ui/{p-43b64878.entry.js.map → p-ce8a18f0.entry.js.map} +0 -0
  1132. /package/dist/genexus-ide-ui/{p-1960de7e.entry.js.map → p-ce8ade61.entry.js.map} +0 -0
  1133. /package/dist/genexus-ide-ui/{p-83ea68f1.entry.js.map → p-d1951379.entry.js.map} +0 -0
  1134. /package/dist/genexus-ide-ui/{p-f33c6a66.entry.js.map → p-d2332373.entry.js.map} +0 -0
  1135. /package/dist/genexus-ide-ui/{p-e2998738.entry.js.map → p-d4533ac6.entry.js.map} +0 -0
  1136. /package/dist/genexus-ide-ui/{p-c4c4462d.entry.js.map → p-d4e152a8.entry.js.map} +0 -0
  1137. /package/dist/genexus-ide-ui/{p-5e91d2bc.entry.js.map → p-d6e6ca09.entry.js.map} +0 -0
  1138. /package/dist/genexus-ide-ui/{p-ed865ce1.entry.js.map → p-d8f4f03c.entry.js.map} +0 -0
  1139. /package/dist/genexus-ide-ui/{p-6d64b154.entry.js.map → p-dabca27c.entry.js.map} +0 -0
  1140. /package/dist/genexus-ide-ui/{p-40c135e7.entry.js.map → p-db770bb3.entry.js.map} +0 -0
  1141. /package/dist/genexus-ide-ui/{p-904db679.entry.js.map → p-dcaf6083.entry.js.map} +0 -0
  1142. /package/dist/genexus-ide-ui/{p-a8e60143.entry.js.map → p-dd77446b.entry.js.map} +0 -0
  1143. /package/dist/genexus-ide-ui/{p-43296d6e.entry.js.map → p-e1585f37.entry.js.map} +0 -0
  1144. /package/dist/genexus-ide-ui/{p-61de96f8.entry.js.map → p-e39ebc90.entry.js.map} +0 -0
  1145. /package/dist/genexus-ide-ui/{p-f14753c8.entry.js.map → p-e5ce6275.entry.js.map} +0 -0
  1146. /package/dist/genexus-ide-ui/{p-e2382d48.entry.js.map → p-e747b958.entry.js.map} +0 -0
  1147. /package/dist/genexus-ide-ui/{p-806d0a19.entry.js.map → p-e74da627.entry.js.map} +0 -0
  1148. /package/dist/genexus-ide-ui/{p-af85e128.entry.js.map → p-e988ba86.entry.js.map} +0 -0
  1149. /package/dist/genexus-ide-ui/{p-620e3d6b.entry.js.map → p-ed305b60.entry.js.map} +0 -0
  1150. /package/dist/genexus-ide-ui/{p-30e749f7.entry.js.map → p-f4578b13.entry.js.map} +0 -0
  1151. /package/dist/genexus-ide-ui/{p-a6b36098.entry.js.map → p-f5d8b1e1.entry.js.map} +0 -0
  1152. /package/dist/genexus-ide-ui/{p-32283a2f.entry.js.map → p-f86073ea.entry.js.map} +0 -0
  1153. /package/dist/genexus-ide-ui/{p-1fb6de33.entry.js.map → p-f99f6957.entry.js.map} +0 -0
  1154. /package/dist/genexus-ide-ui/{p-660f644f.entry.js.map → p-fbd14f24.entry.js.map} +0 -0
  1155. /package/dist/genexus-ide-ui/{p-61126ed3.entry.js.map → p-fc0c5b6f.entry.js.map} +0 -0
  1156. /package/dist/genexus-ide-ui/{p-344ec5ed.entry.js.map → p-fd0bcf82.entry.js.map} +0 -0
  1157. /package/dist/genexus-ide-ui/{p-7d6a7d55.entry.js.map → p-fe3d9132.entry.js.map} +0 -0
  1158. /package/dist/genexus-ide-ui/{p-8f66c5b3.entry.js.map → p-ff264cda.entry.js.map} +0 -0
  1159. /package/dist/genexus-ide-ui/{p-eeaf79d6.entry.js.map → p-ffa0a15e.entry.js.map} +0 -0
@@ -2,104 +2,399 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-c66d7fae.js');
6
- const utils = require('./utils-5ba52db3.js');
7
- const utils$1 = require('./utils-4b616111.js');
5
+ const index = require('./index-88537600.js');
6
+ const utils = require('./utils-438c7042.js');
7
+ const utils$1 = require('./utils-0d8557ae.js');
8
+ const array = require('./array-300dcbf5.js');
9
+ const helpers = require('./helpers-82e25593.js');
8
10
 
9
- const flexibleLayoutCss = ":host{display:contents}";
11
+ // Custom vars
12
+ const BLOCK_START = "--ch-flexible-layout-drop-area-block-start";
13
+ const BLOCK_END = "--ch-flexible-layout-drop-area-block-end";
14
+ const INLINE_START = "--ch-flexible-layout-drop-area-inline-start";
15
+ const INLINE_END = "--ch-flexible-layout-drop-area-inline-end";
16
+ /**
17
+ * If the mouse position is in the interval [0%, 30%] the droppable area should
18
+ * be displayed at the START position with half the size.
19
+ */
20
+ const START_HALF_THRESHOLD = 30; // In percentage
21
+ /**
22
+ * If the mouse position is in the interval [70%, 100%] the droppable area
23
+ * should be displayed at the END position with half the size.
24
+ */
25
+ const END_HALF_THRESHOLD = 100 - START_HALF_THRESHOLD; // In percentage
26
+ const EDGE_SIZE = 0.5;
27
+ const setProperty$1 = (element, property, value) => element.style.setProperty(property, `${value}px`);
28
+ const droppableAreaMap = {
29
+ "block-start": (documentRect, mainViewRect) => [
30
+ mainViewRect.top,
31
+ documentRect.height - (mainViewRect.top + mainViewRect.height * EDGE_SIZE),
32
+ mainViewRect.left,
33
+ documentRect.width - (mainViewRect.left + mainViewRect.width)
34
+ ],
35
+ "block-end": (documentRect, mainViewRect) => [
36
+ mainViewRect.top + mainViewRect.height * EDGE_SIZE,
37
+ documentRect.height - (mainViewRect.top + mainViewRect.height),
38
+ mainViewRect.left,
39
+ documentRect.width - (mainViewRect.left + mainViewRect.width)
40
+ ],
41
+ "inline-start": (documentRect, mainViewRect) => [
42
+ mainViewRect.top,
43
+ documentRect.height - (mainViewRect.top + mainViewRect.height),
44
+ mainViewRect.left,
45
+ documentRect.width - (mainViewRect.left + mainViewRect.width * EDGE_SIZE)
46
+ ],
47
+ "inline-end": (documentRect, mainViewRect) => [
48
+ mainViewRect.top,
49
+ documentRect.height - (mainViewRect.top + mainViewRect.height),
50
+ mainViewRect.left + mainViewRect.width * EDGE_SIZE,
51
+ documentRect.width - (mainViewRect.left + mainViewRect.width)
52
+ ],
53
+ center: (documentRect, mainViewRect) => [
54
+ mainViewRect.top,
55
+ documentRect.height - (mainViewRect.top + mainViewRect.height),
56
+ mainViewRect.left,
57
+ documentRect.width - (mainViewRect.left + mainViewRect.width)
58
+ ]
59
+ };
60
+ let lastDroppableArea;
61
+ let lastViewId;
62
+ const handleWidgetDrag = (draggableView, droppableAreaRef) => (event) => {
63
+ event.stopPropagation(); // Prevents the remove of the droppable area
64
+ // - - - - - - - - - - - DOM read operations - - - - - - - - - - -
65
+ const documentRect = document.documentElement.getBoundingClientRect();
66
+ const mainViewRect = draggableView.mainView.getBoundingClientRect();
67
+ const positionX = event.clientX; // Mouse position X
68
+ const positionY = event.clientY; // Mouse position Y
69
+ const distanceToTheLeftEdge = positionX - mainViewRect.left;
70
+ const distanceToTheTopEdge = positionY - mainViewRect.top;
71
+ const relativePositionX = (distanceToTheLeftEdge / mainViewRect.width) * 100;
72
+ const relativePositionY = (distanceToTheTopEdge / mainViewRect.height) * 100;
73
+ let droppableArea;
74
+ // Block start (Most likely droppable area)
75
+ if (relativePositionY <= START_HALF_THRESHOLD &&
76
+ utils.inBetween(relativePositionY, relativePositionX, 100 - relativePositionY)) {
77
+ droppableArea = "block-start";
78
+ }
79
+ // Inline End (second most likely droppable area)
80
+ else if (relativePositionX >= END_HALF_THRESHOLD &&
81
+ utils.inBetween(100 - relativePositionX, relativePositionY, relativePositionX)) {
82
+ droppableArea = "inline-end";
83
+ }
84
+ // Inline Start
85
+ else if (relativePositionX <= START_HALF_THRESHOLD &&
86
+ utils.inBetween(relativePositionX, relativePositionY, 100 - relativePositionX)) {
87
+ droppableArea = "inline-start";
88
+ }
89
+ // Block end
90
+ else if (relativePositionY >= END_HALF_THRESHOLD &&
91
+ utils.inBetween(100 - relativePositionY, relativePositionX, relativePositionY)) {
92
+ droppableArea = "block-end";
93
+ }
94
+ // Center
95
+ else {
96
+ droppableArea = "center";
97
+ }
98
+ // If the droppable area did not change, there is no need to update the DOM
99
+ if (lastViewId === draggableView.viewId &&
100
+ lastDroppableArea === droppableArea) {
101
+ return;
102
+ }
103
+ lastDroppableArea = droppableArea;
104
+ lastViewId = draggableView.viewId;
105
+ const droppableAreaSizes = droppableAreaMap[droppableArea](documentRect, mainViewRect);
106
+ // - - - - - - - - - - - DOM write operations - - - - - - - - - - -
107
+ setProperty$1(droppableAreaRef, BLOCK_START, droppableAreaSizes[0]);
108
+ setProperty$1(droppableAreaRef, BLOCK_END, droppableAreaSizes[1]);
109
+ setProperty$1(droppableAreaRef, INLINE_START, droppableAreaSizes[2]);
110
+ setProperty$1(droppableAreaRef, INLINE_END, droppableAreaSizes[3]);
111
+ };
112
+ const removeDroppableAreaStyles = (droppableAreaRef) => {
113
+ lastDroppableArea = undefined;
114
+ lastViewId = undefined;
115
+ droppableAreaRef.removeAttribute("style");
116
+ };
117
+ const getWidgetDropInfo = () => lastDroppableArea === undefined
118
+ ? undefined
119
+ : { dropAreaTarget: lastDroppableArea, viewIdTarget: lastViewId };
10
120
 
11
- const ChFlexibleLayout = class {
12
- constructor(hostRef) {
13
- // @Listen("keydown", { target: "document" })
14
- // handleKeyDownEvent(event: KeyboardEvent) {
15
- // if (
16
- // !mouseEventModifierKey(event) ||
17
- // event.code !== KEY_B ||
18
- // this.layout.inlineStart == null
19
- // ) {
20
- // return;
21
- // }
22
- // event.stopPropagation();
23
- // event.preventDefault();
24
- // this.layout.inlineStart.expanded = !(
25
- // this.layout.inlineStart.expanded ?? true
26
- // );
27
- // forceUpdate(this);
28
- // }
29
- this.handleMainGroupExpand = () => {
30
- // if (this.layout.inlineStart) {
31
- // this.layout.inlineStart.expanded = false;
32
- // }
33
- // if (this.layout.inlineEnd) {
34
- // this.layout.inlineEnd.expanded = false;
121
+ const flexibleLayoutCss = ":host{display:contents}.droppable-area{width:auto;height:auto;padding:0;margin:0;border:unset;color:unset;inset-block:var(--ch-flexible-layout-drop-area-block-start) var(--ch-flexible-layout-drop-area-block-end);inset-inline:var(--ch-flexible-layout-drop-area-inline-start) var(--ch-flexible-layout-drop-area-inline-end);background-color:color-mix(in srgb, currentColor 15%, transparent);transition-property:inset;transition-duration:150ms;transition-timing-function:ease-in-out;pointer-events:none}";
122
+
123
+ var __classPrivateFieldSet$2 = (undefined && undefined.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
124
+ if (kind === "m") throw new TypeError("Private method is not writable");
125
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
126
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
127
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
128
+ };
129
+ var __classPrivateFieldGet$2 = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
130
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
131
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
132
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
133
+ };
134
+ var _draggableViews, _dragInfo, _viewsOutOfDroppableZoneController, _draggedViewRef, _droppableAreaRef, _layoutSplitterRef, _getViewInfo, _getAllViews, _handleWidgetDragEndKeydown, _handleWidgetDragEnd, _a$2;
135
+ // Keys
136
+ const ESCAPE_KEY = "Escape";
137
+ const ChFlexibleLayout = (_a$2 = class {
138
+ constructor(hostRef) {
139
+ _draggableViews.set(this, void 0);
140
+ _dragInfo.set(this, void 0);
141
+ _viewsOutOfDroppableZoneController.set(this, void 0); // Allocated at runtime to reduce memory usage
142
+ // Refs
143
+ _draggedViewRef.set(this, void 0);
144
+ _droppableAreaRef.set(this, void 0);
145
+ _layoutSplitterRef.set(this, void 0);
146
+ _getViewInfo.set(this, (viewId) => utils$1.getViewInfo(this.itemsInfo, viewId));
147
+ _getAllViews.set(this, () => {
148
+ const views = [];
149
+ this.itemsInfo.forEach(item => {
150
+ const itemView = item
151
+ .view;
152
+ if (itemView != null) {
153
+ views.push(itemView);
154
+ }
155
+ });
156
+ return views;
157
+ });
158
+ // @Listen("keydown", { target: "document" })
159
+ // handleKeyDownEvent(event: KeyboardEvent) {
160
+ // if (
161
+ // !mouseEventModifierKey(event) ||
162
+ // event.code !== KEY_B ||
163
+ // this.layout.inlineStart == null
164
+ // ) {
165
+ // return;
35
166
  // }
36
- // if (this.layout.blockEnd) {
37
- // this.layout.blockEnd.expanded = false;
167
+ // event.stopPropagation();
168
+ // event.preventDefault();
169
+ // this.layout.inlineStart.expanded = !(
170
+ // this.layout.inlineStart.expanded ?? true
171
+ // );
172
+ // forceUpdate(this);
38
173
  // }
174
+ this.handleMainGroupExpand = () => {
175
+ // if (this.layout.inlineStart) {
176
+ // this.layout.inlineStart.expanded = false;
177
+ // }
178
+ // if (this.layout.inlineEnd) {
179
+ // this.layout.inlineEnd.expanded = false;
180
+ // }
181
+ // if (this.layout.blockEnd) {
182
+ // this.layout.blockEnd.expanded = false;
183
+ // }
184
+ index.forceUpdate(this);
185
+ };
186
+ this.handleItemChange = (viewId) => (event) => {
187
+ event.stopPropagation();
188
+ // Add the view id to properly update the render
189
+ const eventInfo = Object.assign(Object.assign({}, event.detail), { viewId: viewId });
190
+ this.selectedViewItemChange.emit(eventInfo);
191
+ };
192
+ this.handleItemClose = (viewId) => (event) => {
193
+ event.stopPropagation();
194
+ // Add the view id to properly update the render
195
+ const eventInfo = Object.assign(Object.assign({}, event.detail), { viewId: viewId });
196
+ this.viewItemClose.emit(eventInfo);
197
+ };
198
+ this.handleDragStart = (viewId) => async (event) => {
199
+ event.stopPropagation();
200
+ // We MUST store the reference before the Promise.allSettle, otherwise
201
+ // the event target will be the flexible-layout control
202
+ __classPrivateFieldSet$2(this, _draggedViewRef, event.target, "f");
203
+ const views = [...this.el.shadowRoot.querySelectorAll("ch-tab")];
204
+ __classPrivateFieldSet$2(this, _dragInfo, {
205
+ index: event.detail,
206
+ viewId: viewId
207
+ }, "f");
208
+ // Get all draggable views
209
+ const draggableViewsResult = await Promise.allSettled(views.map(view => view.getDraggableViews()));
210
+ // Allocate memory
211
+ __classPrivateFieldSet$2(this, _draggableViews, [], "f");
212
+ // Add handlers to manage droppable areas
213
+ draggableViewsResult.forEach((draggableViewResult, index) => {
214
+ if (draggableViewResult.status === "fulfilled") {
215
+ const draggableView = draggableViewResult.value;
216
+ const abortController = new AbortController(); // Necessary to remove the event listener
217
+ const extendedDraggableView = Object.assign(Object.assign({}, draggableView), { viewId: views[index].id, abortController: abortController });
218
+ __classPrivateFieldGet$2(this, _draggableViews, "f").push(extendedDraggableView);
219
+ draggableView.mainView.addEventListener("mousemove", handleWidgetDrag(extendedDraggableView, __classPrivateFieldGet$2(this, _droppableAreaRef, "f")), { capture: true, passive: true, signal: abortController.signal });
220
+ // Remove pointer events to not interfere on the mousemove event
221
+ extendedDraggableView.tabListView.style.pointerEvents = "none";
222
+ extendedDraggableView.pageView.style.pointerEvents = "none";
223
+ }
224
+ });
225
+ document.addEventListener("mouseup", __classPrivateFieldGet$2(this, _handleWidgetDragEnd, "f"), {
226
+ passive: true
227
+ });
228
+ document.addEventListener("keydown", __classPrivateFieldGet$2(this, _handleWidgetDragEndKeydown, "f"), {
229
+ passive: true
230
+ });
231
+ // Removes view when they are out of a droppable area
232
+ __classPrivateFieldSet$2(this, _viewsOutOfDroppableZoneController, new AbortController(), "f");
233
+ document.addEventListener("mousemove", () => removeDroppableAreaStyles(__classPrivateFieldGet$2(this, _droppableAreaRef, "f")), {
234
+ passive: true,
235
+ signal: __classPrivateFieldGet$2(this, _viewsOutOfDroppableZoneController, "f").signal
236
+ });
237
+ // Show droppable area
238
+ __classPrivateFieldGet$2(this, _droppableAreaRef, "f").showPopover(); // Layer 1
239
+ // After that, promote the drag preview to the second layer
240
+ __classPrivateFieldGet$2(this, _draggedViewRef, "f").promoteDragPreviewToTopLayer(); // Layer 2
241
+ // Disable drag bars in layout-splitter to improve the drag experience
242
+ this.dragBarDisabled = true;
243
+ };
244
+ _handleWidgetDragEndKeydown.set(this, (event) => {
245
+ if (event.code !== ESCAPE_KEY) {
246
+ return;
247
+ }
248
+ event.preventDefault();
249
+ // Cancels the drop by removing the drop info
250
+ removeDroppableAreaStyles(__classPrivateFieldGet$2(this, _droppableAreaRef, "f"));
251
+ __classPrivateFieldGet$2(this, _handleWidgetDragEnd, "f").call(this);
252
+ __classPrivateFieldGet$2(this, _draggedViewRef, "f").endDragPreview();
253
+ });
254
+ _handleWidgetDragEnd.set(this, () => {
255
+ // Remove mousemove handlers
256
+ __classPrivateFieldGet$2(this, _draggableViews, "f").forEach(draggableView => {
257
+ draggableView.abortController.abort();
258
+ // Reset pointer events
259
+ draggableView.tabListView.style.pointerEvents = null;
260
+ draggableView.pageView.style.pointerEvents = null;
261
+ });
262
+ // Remove mouseup and keydown handlers
263
+ document.removeEventListener("mouseup", __classPrivateFieldGet$2(this, _handleWidgetDragEnd, "f"));
264
+ document.removeEventListener("keydown", __classPrivateFieldGet$2(this, _handleWidgetDragEndKeydown, "f"));
265
+ __classPrivateFieldGet$2(this, _viewsOutOfDroppableZoneController, "f").abort();
266
+ // Check if must update the view due to a drop
267
+ const dropInfo = getWidgetDropInfo();
268
+ if (dropInfo) {
269
+ this.viewItemReorder.emit(Object.assign(Object.assign({}, __classPrivateFieldGet$2(this, _dragInfo, "f")), dropInfo));
270
+ }
271
+ // Hide droppable area
272
+ __classPrivateFieldGet$2(this, _droppableAreaRef, "f").hidePopover();
273
+ removeDroppableAreaStyles(__classPrivateFieldGet$2(this, _droppableAreaRef, "f"));
274
+ // Free the memory
275
+ __classPrivateFieldSet$2(this, _draggableViews, undefined, "f");
276
+ __classPrivateFieldSet$2(this, _dragInfo, undefined, "f");
277
+ // Re-enable drag bars
278
+ this.dragBarDisabled = false;
279
+ });
280
+ this.renderTab = (tabType, viewInfo) => (index.h("ch-tab", { id: viewInfo.id, key: viewInfo.id, slot: viewInfo.id, exportparts: viewInfo.exportParts, items: viewInfo.widgets, selectedId: viewInfo.selectedWidgetId, type: tabType, onExpandMainGroup: tabType === "main" ? this.handleMainGroupExpand : null, onItemClose: this.handleItemClose(viewInfo.id), onItemDragStart: this.handleDragStart(viewInfo.id), onSelectedItemChange: this.handleItemChange(viewInfo.id) }, viewInfo.widgets.map(widget => widget.wasRendered && index.h("slot", { name: widget.id, slot: widget.id }))));
281
+ this.renderView = (view) => view.type === "blockStart" ? (index.h("header", { key: view.id, slot: view.id }, index.h("slot", null))) : (this.renderTab(view.type, view));
282
+ index.registerInstance(this, hostRef);
283
+ this.viewItemClose = index.createEvent(this, "viewItemClose", 7);
284
+ this.selectedViewItemChange = index.createEvent(this, "selectedViewItemChange", 7);
285
+ this.viewItemReorder = index.createEvent(this, "viewItemReorder", 7);
286
+ this.dragBarDisabled = false;
287
+ this.layoutModel = undefined;
288
+ this.layoutSplitterParts = undefined;
289
+ this.itemsInfo = undefined;
290
+ }
291
+ get el() { return index.getElement(this); }
292
+ /**
293
+ * Schedules a new render of the control even if no state changed.
294
+ */
295
+ async refreshLayout() {
39
296
  index.forceUpdate(this);
40
- };
41
- this.handleItemChange = (viewId) => (event) => {
42
- event.stopPropagation();
43
- // Add the view id to properly update the render
44
- const eventInfo = Object.assign(Object.assign({}, event.detail), { viewId: viewId });
45
- this.selectedViewItemChange.emit(eventInfo);
46
- };
47
- this.renderTab = (tabType, viewInfo) => (index.h("ch-tab", { key: viewInfo.id, slot: viewInfo.id, exportparts: viewInfo.exportParts, items: viewInfo.widgets, type: tabType, onExpandMainGroup: tabType === "main" ? this.handleMainGroupExpand : null, onSelectedItemChange: this.handleItemChange(viewInfo.id) }, [...viewInfo.renderedWidgets.values()].map(widgetId => (index.h("slot", { name: widgetId, slot: widgetId })))));
48
- this.renderView = (view) => view.type === "blockStart" ? (index.h("header", { key: view.id, slot: view.id }, index.h("slot", null))) : (this.renderTab(view.type, view));
49
- index.registerInstance(this, hostRef);
50
- this.selectedViewItemChange = index.createEvent(this, "selectedViewItemChange", 7);
51
- this.layoutModel = undefined;
52
- this.layoutSplitterParts = undefined;
53
- this.viewsInfo = new Map();
54
- }
55
- render() {
56
- const layoutModel = this.layoutModel;
57
- if (layoutModel == null) {
58
- return "";
297
+ __classPrivateFieldGet$2(this, _layoutSplitterRef, "f").refreshLayout();
59
298
  }
60
- return (index.h("ch-layout-splitter", { layout: layoutModel, exportparts: "bar," + this.layoutSplitterParts }, [...this.viewsInfo.values()].map(this.renderView)));
61
- }
62
- };
299
+ /**
300
+ * Removes the view that is identified by the given ID.
301
+ * The layout is rearranged depending on the state of the removed view.
302
+ */
303
+ async removeView(itemId) {
304
+ const result = await __classPrivateFieldGet$2(this, _layoutSplitterRef, "f").removeItem(itemId);
305
+ if (result.success) {
306
+ // Queue re-renders
307
+ index.forceUpdate(this);
308
+ }
309
+ return result;
310
+ }
311
+ /**
312
+ * Given the view ID and the item id, remove the page of the item from the view.
313
+ */
314
+ async removeItemPageInView(viewId, itemId, forceRerender = true) {
315
+ const viewInfo = __classPrivateFieldGet$2(this, _getViewInfo, "f").call(this, viewId);
316
+ if (!viewInfo) {
317
+ return;
318
+ }
319
+ const viewRef = this.el.shadowRoot.querySelector(`ch-tab[id='${viewInfo.id}']`);
320
+ await viewRef.removePage(itemId, forceRerender);
321
+ }
322
+ render() {
323
+ const layoutModel = this.layoutModel;
324
+ if (layoutModel == null) {
325
+ return "";
326
+ }
327
+ return (index.h(index.Host, null, index.h("ch-layout-splitter", { dragBarDisabled: this.dragBarDisabled, layout: layoutModel, exportparts: "bar," + this.layoutSplitterParts, ref: el => (__classPrivateFieldSet$2(this, _layoutSplitterRef, el, "f")) }, __classPrivateFieldGet$2(this, _getAllViews, "f").call(this).map(this.renderView)), index.h("div", { "aria-hidden": "true", class: "droppable-area", part: "droppable-area", popover: "manual", ref: el => (__classPrivateFieldSet$2(this, _droppableAreaRef, el, "f")) })));
328
+ }
329
+ },
330
+ _draggableViews = new WeakMap(),
331
+ _dragInfo = new WeakMap(),
332
+ _viewsOutOfDroppableZoneController = new WeakMap(),
333
+ _draggedViewRef = new WeakMap(),
334
+ _droppableAreaRef = new WeakMap(),
335
+ _layoutSplitterRef = new WeakMap(),
336
+ _getViewInfo = new WeakMap(),
337
+ _getAllViews = new WeakMap(),
338
+ _handleWidgetDragEndKeydown = new WeakMap(),
339
+ _handleWidgetDragEnd = new WeakMap(),
340
+ _a$2);
63
341
  ChFlexibleLayout.style = flexibleLayoutCss;
64
342
 
65
- const sizesToGridTemplate = (items) => items.map(item => item.actualSize).join(" ");
66
- const getComponentSize = (comp, fixedSizes) => {
343
+ const sizesToGridTemplate = (items, itemsInfo, lastItemIndex) => items
344
+ .map((item, index) => item.dragBar?.hidden !== true && index !== lastItemIndex
345
+ ? `${itemsInfo.get(item.id).actualSize} ${item.dragBar?.size ?? 0}px` // Add a column to place the drag bar
346
+ : itemsInfo.get(item.id).actualSize // Last item or not resizable
347
+ )
348
+ .join(" ");
349
+ const getFrSize = (item) => Number(item.size.replace("fr", "").trim());
350
+ const getPxSize = (item) => Number(item.size.replace("px", "").trim());
351
+ const hasAbsoluteValue = (item) => item.size.includes("px");
352
+ const getComponentSize = (item, fixedSizesSum) => {
67
353
  // Pixel value
68
- if (comp.size.includes("px")) {
69
- return comp.size;
354
+ if (hasAbsoluteValue(item)) {
355
+ return item.size;
70
356
  }
71
357
  // If the component has fr value, take into account the sum of fixed values
72
358
  // to calculate the actual relative value
73
- const frValue = Number(comp.size.replace("fr", "").trim());
74
- if (fixedSizes === 0) {
359
+ const frValue = getFrSize(item);
360
+ if (fixedSizesSum === 0) {
75
361
  return `${frValue * 100}%`;
76
362
  }
77
- return comp.fixedOffsetSize
78
- ? `calc(${frValue * 100}% - ${fixedSizes * frValue}px + ${comp.fixedOffsetSize}px)`
79
- : `calc(${frValue * 100}% - ${fixedSizes * frValue}px)`;
363
+ return item.fixedOffsetSize
364
+ ? `calc(${frValue * 100}% - ${fixedSizesSum * frValue - item.fixedOffsetSize}px)`
365
+ : `calc(${frValue * 100}% - ${fixedSizesSum * frValue}px)`;
366
+ };
367
+ const updateSize = (itemUIModel, increment, fixedSizesSum, unitType) => {
368
+ const itemInfo = itemUIModel.item;
369
+ const currentValue = unitType === "px" ? getPxSize(itemInfo) : getFrSize(itemInfo);
370
+ const newValue = currentValue + increment;
371
+ itemInfo.size = `${newValue}${unitType}`;
372
+ itemUIModel.actualSize = getComponentSize(itemInfo, fixedSizesSum);
80
373
  };
81
- const getFrSize = (comp) => Number(comp.size.replace("fr", "").trim());
82
- const getPxSize = (comp) => Number(comp.size.replace("px", "").trim());
83
- const hasAbsoluteValue = (component) => component.size.includes("px");
84
- const getDragBarPosition = (items, index, componentSize) => index === 0
85
- ? componentSize
86
- : `${items[index - 1].dragBarPosition} + ${componentSize}`;
87
- const getLayoutModel = (layout) => {
88
- const layoutModel = structuredClone(layout);
89
- layoutModel.fixedSizesSum = completeLayoutModel(layoutModel.items);
90
- return layoutModel;
374
+ const updateOffsetSize = (itemUIModel, increment, fixedSizesSum) => {
375
+ const itemInfo = itemUIModel.item;
376
+ itemInfo.fixedOffsetSize ??= 0;
377
+ itemInfo.fixedOffsetSize += increment;
378
+ itemUIModel.actualSize = getComponentSize(itemInfo, fixedSizesSum);
91
379
  };
92
- function completeLayoutModel(items) {
380
+ const fixAndUpdateLayoutModel = (layout, itemsInfo) => fixAndUpdateSubModel(layout.items, itemsInfo, utils$1.ROOT_VIEW);
381
+ function fixAndUpdateSubModel(items, itemsInfo, parentItem) {
93
382
  let frSum = 0;
94
- let fixedSizes = 0;
383
+ let fixedSizesSum = 0;
384
+ const lastItemIndex = items.length - 1;
95
385
  // Get the sum of all fr values. Also, store the sum of fixed sizes
96
- items.forEach(item => {
386
+ items.forEach((item, index) => {
97
387
  if (hasAbsoluteValue(item)) {
98
- fixedSizes += getPxSize(item);
388
+ fixedSizesSum += getPxSize(item);
99
389
  }
100
390
  else {
101
391
  frSum += getFrSize(item);
102
392
  }
393
+ // Take into account previous resizes (fixedOffsetSize values) and add drag
394
+ // bar sizes if this is not the last item
395
+ fixedSizesSum +=
396
+ (item.fixedOffsetSize ?? 0) +
397
+ (index !== lastItemIndex ? item.dragBar?.size ?? 0 : 0);
103
398
  });
104
399
  // If there are fr values, we must adjust the frs values to be relative to 1fr
105
400
  if (frSum > 0) {
@@ -111,283 +406,935 @@ function completeLayoutModel(items) {
111
406
  }
112
407
  });
113
408
  }
114
- // Update sizes array and store drag-bar position (dragBarPositions array)
115
- items.forEach((item, index) => {
116
- const componentSize = getComponentSize(item, fixedSizes);
117
- item.actualSize = componentSize;
118
- // Store each drag bar position
119
- const dragBarPosition = getDragBarPosition(items, index, componentSize);
120
- item.dragBarPosition = dragBarPosition;
409
+ // Update the actualSizes and fixedSizes maps
410
+ items.forEach(item => {
411
+ const itemUIModel = {
412
+ item: item,
413
+ parentItem: parentItem,
414
+ actualSize: getComponentSize(item, fixedSizesSum)
415
+ };
121
416
  if (item.items != null) {
122
- item.fixedSizesSum = completeLayoutModel(item.items);
417
+ // eslint-disable-next-line prettier/prettier
418
+ const group = item;
419
+ const fixedSizesSum = fixAndUpdateSubModel(group.items, itemsInfo, group);
420
+ itemUIModel.fixedSizesSum = fixedSizesSum;
123
421
  }
422
+ itemsInfo.set(item.id, itemUIModel);
124
423
  });
125
- return fixedSizes;
424
+ return fixedSizesSum;
126
425
  }
127
- const updateSize = (component, increment, fixedSizes, unitType) => {
128
- const currentValue = unitType === "px" ? getPxSize(component) : getFrSize(component);
129
- const newValue = currentValue + increment;
130
- component.size = `${newValue}${unitType}`;
131
- component.actualSize = getComponentSize(component, fixedSizes);
132
- };
133
- const updateOffsetSize = (component, increment, fixedSizes) => {
134
- component.fixedOffsetSize =
135
- component.fixedOffsetSize != null
136
- ? component.fixedOffsetSize + increment
137
- : increment;
138
- component.actualSize = getComponentSize(component, fixedSizes);
139
- };
140
- const updateComponentsAndDragBar = (info, dragBarPositionCustomVar, gridTemplateDirectionCustomVar) => {
426
+ const updateComponentsAndDragBar = (info, itemsInfo, incrementInPx, gridTemplateDirectionCustomVar) => {
141
427
  // - - - - - - - - - Increments - - - - - - - - -
142
- let incrementInPx = info.newPosition - info.lastPosition;
143
428
  // When the language is RTL, the increment is in the opposite direction
144
- if (info.RTL) {
145
- incrementInPx = -incrementInPx;
146
- }
429
+ const incrementInPxRTL = info.direction === "columns" && info.RTL ? -incrementInPx : incrementInPx;
147
430
  const layoutItems = info.layoutItems;
148
431
  const fixedSizes = info.fixedSizesSum;
149
- const remainingRelativeSizeInPixels = info.dragBarContainerSize - info.fixedSizesSum;
150
- const incrementInFr = incrementInPx / remainingRelativeSizeInPixels;
432
+ const remainingRelativeSizeInPixels = info.containerSize - info.fixedSizesSum;
433
+ const incrementInFr = incrementInPxRTL / remainingRelativeSizeInPixels;
151
434
  // Components at each position of the drag bar
152
- const leftIndex = info.index;
153
- const rightIndex = info.index + 1;
154
- const leftComp = layoutItems[leftIndex];
155
- const rightComp = layoutItems[rightIndex];
435
+ const startItemUIModel = itemsInfo.get(info.itemStartId);
436
+ const endItemUIModel = itemsInfo.get(info.itemEndId);
156
437
  // px / px
157
- if (hasAbsoluteValue(leftComp) && hasAbsoluteValue(rightComp)) {
158
- updateSize(leftComp, incrementInPx, fixedSizes, "px");
159
- updateSize(rightComp, -incrementInPx, fixedSizes, "px");
438
+ if (hasAbsoluteValue(startItemUIModel.item) &&
439
+ hasAbsoluteValue(endItemUIModel.item)) {
440
+ updateSize(startItemUIModel, incrementInPxRTL, fixedSizes, "px");
441
+ updateSize(endItemUIModel, -incrementInPxRTL, fixedSizes, "px");
160
442
  }
161
443
  // px / fr
162
- else if (hasAbsoluteValue(leftComp)) {
163
- updateSize(leftComp, incrementInPx, fixedSizes, "px");
164
- updateOffsetSize(rightComp, -incrementInPx, fixedSizes);
444
+ else if (hasAbsoluteValue(startItemUIModel.item)) {
445
+ updateSize(startItemUIModel, incrementInPxRTL, fixedSizes, "px");
446
+ updateOffsetSize(endItemUIModel, -incrementInPxRTL, fixedSizes);
165
447
  }
166
448
  // fr / px
167
- else if (hasAbsoluteValue(rightComp)) {
168
- updateOffsetSize(leftComp, incrementInPx, fixedSizes);
169
- updateSize(rightComp, -incrementInPx, fixedSizes, "px");
449
+ else if (hasAbsoluteValue(endItemUIModel.item)) {
450
+ updateOffsetSize(startItemUIModel, incrementInPxRTL, fixedSizes);
451
+ updateSize(endItemUIModel, -incrementInPxRTL, fixedSizes, "px");
170
452
  }
171
453
  // fr / fr
172
454
  else {
173
- updateSize(leftComp, incrementInFr, fixedSizes, "fr");
174
- updateSize(rightComp, -incrementInFr, fixedSizes, "fr");
455
+ updateSize(startItemUIModel, incrementInFr, fixedSizes, "fr");
456
+ updateSize(endItemUIModel, -incrementInFr, fixedSizes, "fr");
175
457
  }
176
- // Update drag-bar position
177
- const dragBarPosition = getDragBarPosition(layoutItems, leftIndex, leftComp.actualSize);
178
- leftComp.dragBarPosition = dragBarPosition;
179
458
  // Update in the DOM the grid distribution
180
- info.dragBarContainer.style.setProperty(gridTemplateDirectionCustomVar, sizesToGridTemplate(layoutItems));
181
- // Update in the DOM the drag bar position
182
- info.dragBar.style.setProperty(dragBarPositionCustomVar, `calc(${dragBarPosition})`);
459
+ info.container.style.setProperty(gridTemplateDirectionCustomVar, sizesToGridTemplate(layoutItems, itemsInfo, layoutItems.length - 1));
183
460
  };
184
461
  const getMousePosition = (event, direction) => (direction === "columns" ? event.clientX : event.clientY);
185
462
 
186
- const layoutSplitterCss = "*,::before,::after{box-sizing:border-box}:host{--ch-drag-bar__size:5px;--ch-drag-bar__position-fix:calc(0.5px - var(--ch-drag-bar__size) / 2);display:grid;position:relative;block-size:100%;inline-size:100%}:host(.gx-layout-splitter--resizing) ::slotted(*){pointer-events:none}.bar{position:absolute;z-index:1}.bar::after{content:\"\";display:flex;position:absolute;inline-size:100%;block-size:100%;background-color:currentColor;opacity:0;transition:opacity 0s linear 200ms}.bar:hover::after,.bar:active::after{opacity:1}.container{display:grid;position:relative}.direction--columns{grid-template-columns:var(--ch-layout-splitter__grid-template-direction)}.direction--columns>.bar{inset-block:0;inset-inline-start:calc(var(--ch-drag-bar__start-position));inline-size:1px;cursor:ew-resize}.direction--columns>.bar::after{inline-size:var(--ch-drag-bar__size);margin-inline-start:var(--ch-drag-bar__position-fix)}.direction--rows{grid-template-rows:var(--ch-layout-splitter__grid-template-direction)}.direction--rows>.bar{inset-inline:0;inset-block-start:calc(var(--ch-drag-bar__start-position));block-size:1px;cursor:ns-resize}.direction--rows>.bar::after{margin-block-start:var(--ch-drag-bar__position-fix);block-size:var(--ch-drag-bar__size)}";
463
+ const findItemInParent = (itemToFind) => {
464
+ const itemId = itemToFind.item.id;
465
+ return itemToFind.parentItem.items.findIndex(item => item.id === itemId);
466
+ };
467
+ const removeItem = (itemId, itemsInfo) => {
468
+ const itemToRemoveUIModel = itemsInfo.get(itemId);
469
+ if (!itemToRemoveUIModel) {
470
+ return { success: false, renamedItems: [] };
471
+ }
472
+ // TODO: Valid whether the parent is the root node or not. If it is the root, update the fixedSizesSum
473
+ const itemsToRemove = [];
474
+ const itemToRemoveIndex = findItemInParent(itemToRemoveUIModel);
475
+ const parentItem = itemToRemoveUIModel.parentItem;
476
+ const parentItemItems = parentItem.items;
477
+ const itemToAddSpace = parentItemItems[itemToRemoveIndex === 0 ? 1 : itemToRemoveIndex - 1];
478
+ const renamedItems = [];
479
+ // const itemToAddSpaceUIModel = itemsInfo.get(itemToAddSpace.id);
480
+ // Remove the item in a future iteration
481
+ itemsToRemove.push([parentItemItems, itemToRemoveIndex, itemId]);
482
+ // The space reserved for the item can be given to a sibling item
483
+ if (parentItemItems.length > 2) {
484
+ addSpaceToItem(itemToRemoveUIModel, itemsInfo.get(itemToAddSpace.id), itemsInfo);
485
+ }
486
+ // The current group will have one child. Remove the group and and reconnect
487
+ // the child item with the parent of its group
488
+ else if (parentItemItems.length === 2) {
489
+ // TODO: CHECK PARENT ROOT
490
+ const parentItemUIModel = itemsInfo.get(parentItem.id);
491
+ const secondParentItem = parentItemUIModel.parentItem;
492
+ const parentItemIndex = findItemInParent(parentItemUIModel);
493
+ const itemToReplace = secondParentItem.items[parentItemIndex];
494
+ // Push the item rename
495
+ renamedItems.push({ oldId: itemToAddSpace.id, newId: itemToReplace.id });
496
+ // This property is no longer valid in the new parent
497
+ delete itemToReplace.items;
498
+ // Update all properties in the new parent, except for some specific properties
499
+ Object.keys(itemToAddSpace).forEach((key) => {
500
+ if (key !== "id" &&
501
+ key !== "size" &&
502
+ key !== "dragBar" &&
503
+ key !== "fixedOffsetSize") {
504
+ itemToReplace[key] = itemToAddSpace[key];
505
+ }
506
+ });
507
+ itemsInfo.delete(itemToAddSpace.id);
508
+ }
509
+ else ;
510
+ // Delete the item and all its descendants...
511
+ // TODO: Add recursive removal
512
+ itemsToRemove.forEach(itemToRemove => {
513
+ array.removeElement(itemToRemove[0], itemToRemove[1]);
514
+ itemsInfo.delete(itemToRemove[2]);
515
+ });
516
+ return { success: true, renamedItems: renamedItems };
517
+ };
518
+ function addSpaceToItem(itemToSubtractUIModel, itemToAddUIModel, itemsInfo) {
519
+ console.log(itemToSubtractUIModel, itemToAddUIModel);
520
+ // TODO: Add implementation. Ensure the given space is relative to 100% (1fr)
521
+ // TODO: Remove drag bar Size from fixedSizesSum
522
+ const itemToSubtractInfo = itemToSubtractUIModel.item;
523
+ const itemToAddInfo = itemToAddUIModel.item;
524
+ // px / px
525
+ if (hasAbsoluteValue(itemToSubtractInfo) && hasAbsoluteValue(itemToAddInfo)) {
526
+ // TODO: FixedSizesSum does not make sense when adding pixels. Update implementation to improve this
527
+ updateSize(itemToAddUIModel, getPxSize(itemToSubtractInfo), 0, "px");
528
+ }
529
+ // px / fr
530
+ else if (hasAbsoluteValue(itemToSubtractInfo)) ;
531
+ // fr / px
532
+ else if (hasAbsoluteValue(itemToAddInfo)) ;
533
+ // fr / fr
534
+ else {
535
+ // TODO: Check if the node is the root
536
+ const fixedSizesSum = itemsInfo.get(itemToSubtractUIModel.parentItem.id).fixedSizesSum;
537
+ // Update fixedOffsetSize if the removed item had
538
+ if (itemToSubtractInfo.fixedOffsetSize != null) {
539
+ updateOffsetSize(itemToSubtractUIModel, itemToSubtractInfo.fixedOffsetSize, fixedSizesSum);
540
+ }
541
+ const newFrSize = getFrSize(itemToSubtractInfo) + getFrSize(itemToAddInfo);
542
+ // TODO: In some situations, this should be avoided (fixedSizesSum). Find a way to remove the use of fixedSizesSum
543
+ updateSize(itemToAddUIModel, newFrSize, fixedSizesSum, "fr");
544
+ }
545
+ }
546
+
547
+ const layoutSplitterCss = "*,::after,::before{box-sizing:border-box}:host{--ch-drag-bar__size:5px;display:grid;position:relative;block-size:100%;inline-size:100%}:host(.gx-layout-splitter--resizing) ::slotted(*){pointer-events:none}.bar{--position-fix:calc((var(--size, 0px) - var(--ch-drag-bar__size)) / 2);position:relative;inline-size:100%;block-size:100%;background-color:currentColor;z-index:1}.bar[aria-disabled]{pointer-events:none}.bar:focus-visible{outline:unset}.bar::after{content:\"\";display:flex;position:absolute;background-color:currentColor;opacity:0;transition:opacity 0s linear}.bar:is(:active,:focus-visible,:hover)::after{opacity:1}.bar:hover::after{transition-delay:250ms}.leaf{display:contents}.group{display:grid;position:relative}.direction--columns{grid-template-columns:var(--ch-layout-splitter__distribution)}.direction--columns>.bar{cursor:ew-resize}.direction--columns>.bar::after{block-size:100%;inline-size:var(--ch-drag-bar__size);margin-inline-start:var(--position-fix)}.direction--rows{grid-template-rows:var(--ch-layout-splitter__distribution)}.direction--rows>.bar{cursor:ns-resize}.direction--rows>.bar::after{block-size:var(--ch-drag-bar__size);inline-size:100%;margin-block-start:var(--position-fix)}";
187
548
 
549
+ var __classPrivateFieldGet$1 = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
550
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
551
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
552
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
553
+ };
554
+ var __classPrivateFieldSet$1 = (undefined && undefined.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
555
+ if (kind === "m") throw new TypeError("Private method is not writable");
556
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
557
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
558
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
559
+ };
560
+ var _needForRAF$1, _mouseDownInfo, _lastMousePosition, _newMousePosition, _fixedSizesSumRoot, _itemsInfo, _handleBarDrag, _handleBarDragRAF, _removeMouseMoveHandler, _mouseUpHandler, _initializeDragBarValuesForResizeProcessing, _mouseDownHandler, _handleResize, _renderItems, _a$1;
188
561
  const RESIZING_CLASS = "gx-layout-splitter--resizing";
189
- const DRAG_BAR_POSITION_CUSTOM_VAR = "--ch-drag-bar__start-position";
190
- const GRID_TEMPLATE_DIRECTION_CUSTOM_VAR = "--ch-layout-splitter__grid-template-direction";
191
- const DIRECTION_CLASS = (direction) => `container direction--${direction}`;
192
- const TEMPLATE_STYLE = (items) => ({
193
- [GRID_TEMPLATE_DIRECTION_CUSTOM_VAR]: sizesToGridTemplate(items)
562
+ const GRID_TEMPLATE_DIRECTION_CUSTOM_VAR = "--ch-layout-splitter__distribution";
563
+ const DIRECTION_CLASS = (direction) => `group direction--${direction}`;
564
+ const TEMPLATE_STYLE = (items, itemsInfo) => ({
565
+ [GRID_TEMPLATE_DIRECTION_CUSTOM_VAR]: sizesToGridTemplate(items, itemsInfo, items.length - 1)
194
566
  });
195
- const ChLayoutSplitter = class {
196
- constructor(hostRef) {
197
- this.needForRAF = true; // To prevent redundant RAF (request animation frame) calls
198
- this.handleBarDrag = (event) => {
199
- event.preventDefault();
200
- this.mouseDownInfo.newPosition = getMousePosition(event, this.mouseDownInfo.direction);
201
- if (!this.needForRAF) {
202
- return;
203
- }
204
- this.needForRAF = false; // No need to call RAF up until next frame
205
- requestAnimationFrame(() => {
206
- this.needForRAF = true; // RAF now consumes the movement instruction so a new one can come
207
- updateComponentsAndDragBar(this.mouseDownInfo, DRAG_BAR_POSITION_CUSTOM_VAR, GRID_TEMPLATE_DIRECTION_CUSTOM_VAR);
208
- // Sync new position with last
209
- this.mouseDownInfo.lastPosition = this.mouseDownInfo.newPosition;
567
+ const getAriaControls = (layoutItems, index) => `${layoutItems[index].id} ${layoutItems[index + 1].id}`;
568
+ // Key codes
569
+ const ARROW_UP$1 = "ArrowUp";
570
+ const ARROW_RIGHT$1 = "ArrowRight";
571
+ const ARROW_DOWN$1 = "ArrowDown";
572
+ const ARROW_LEFT$1 = "ArrowLeft";
573
+ const ChLayoutSplitter = (_a$1 = class {
574
+ constructor(hostRef) {
575
+ _needForRAF$1.set(this, true); // To prevent redundant RAF (request animation frame) calls
576
+ _mouseDownInfo.set(this, void 0);
577
+ _lastMousePosition.set(this, void 0);
578
+ _newMousePosition.set(this, void 0);
579
+ _fixedSizesSumRoot.set(this, void 0);
580
+ // Distribution of elements
581
+ _itemsInfo.set(this, new Map());
582
+ _handleBarDrag.set(this, (event) => {
583
+ event.preventDefault();
584
+ __classPrivateFieldSet$1(this, _newMousePosition, getMousePosition(event, __classPrivateFieldGet$1(this, _mouseDownInfo, "f").direction), "f");
585
+ __classPrivateFieldGet$1(this, _handleBarDragRAF, "f").call(this);
210
586
  });
211
- };
212
- // Handler to remove mouse down
213
- this.removeMouseMoveHandler = () => {
214
- document.removeEventListener("mousemove", this.handleBarDrag, {
215
- capture: true
587
+ _handleBarDragRAF.set(this, (incrementInPx) => {
588
+ if (!__classPrivateFieldGet$1(this, _needForRAF$1, "f")) {
589
+ return;
590
+ }
591
+ __classPrivateFieldSet$1(this, _needForRAF$1, false, "f"); // No need to call RAF up until next frame
592
+ requestAnimationFrame(() => {
593
+ __classPrivateFieldSet$1(this, _needForRAF$1, true, "f"); // RAF now consumes the movement instruction so a new one can come
594
+ updateComponentsAndDragBar(__classPrivateFieldGet$1(this, _mouseDownInfo, "f"), __classPrivateFieldGet$1(this, _itemsInfo, "f"), incrementInPx !== null && incrementInPx !== void 0 ? incrementInPx : __classPrivateFieldGet$1(this, _newMousePosition, "f") - __classPrivateFieldGet$1(this, _lastMousePosition, "f"), // Increment in px
595
+ GRID_TEMPLATE_DIRECTION_CUSTOM_VAR);
596
+ // Sync new position with last
597
+ __classPrivateFieldSet$1(this, _lastMousePosition, __classPrivateFieldGet$1(this, _newMousePosition, "f"), "f");
598
+ });
216
599
  });
217
- };
218
- // Remove mousemove and mouseup handlers when mouseup
219
- this.mouseUpHandler = () => {
220
- this.removeMouseMoveHandler();
221
- document.removeEventListener("mouseup", this.mouseUpHandler, {
222
- capture: true
600
+ // Handler to remove mouse down
601
+ _removeMouseMoveHandler.set(this, () => {
602
+ document.removeEventListener("mousemove", __classPrivateFieldGet$1(this, _handleBarDrag, "f"), {
603
+ capture: true
604
+ });
223
605
  });
224
- // Add again pointer-events
225
- this.el.classList.remove(RESIZING_CLASS);
226
- };
227
- this.mouseDownHandler = (direction, index, fixedSizesSum, layoutItems) => (event) => {
228
- // Necessary to prevent selecting the inner image (or other elements) of
229
- // the bar item when the mouse is down
230
- event.preventDefault();
231
- // Initialize the values needed for drag processing
232
- const dragBar = event.target;
233
- const dragBarContainer = dragBar.parentElement;
234
- const currentMousePosition = getMousePosition(event, direction);
235
- this.mouseDownInfo = {
236
- direction: direction,
237
- dragBar: dragBar,
238
- dragBarContainer: dragBarContainer,
239
- dragBarContainerSize: direction === "columns"
240
- ? dragBarContainer.clientWidth
241
- : dragBarContainer.clientHeight,
242
- fixedSizesSum: fixedSizesSum,
243
- index: index,
244
- lastPosition: currentMousePosition,
245
- layoutItems: layoutItems,
246
- newPosition: currentMousePosition,
247
- RTL: utils.isRTL()
248
- };
249
- // Remove pointer-events during drag
250
- this.el.classList.add(RESIZING_CLASS);
251
- // Add listeners
252
- document.addEventListener("mousemove", this.handleBarDrag, {
253
- capture: true
606
+ // Remove mousemove and mouseup handlers when mouseup
607
+ _mouseUpHandler.set(this, () => {
608
+ __classPrivateFieldGet$1(this, _removeMouseMoveHandler, "f").call(this);
609
+ document.removeEventListener("mouseup", __classPrivateFieldGet$1(this, _mouseUpHandler, "f"), {
610
+ capture: true
611
+ });
612
+ // Add again pointer-events
613
+ this.el.classList.remove(RESIZING_CLASS);
254
614
  });
255
- document.addEventListener("mouseup", this.mouseUpHandler, {
256
- capture: true
615
+ _initializeDragBarValuesForResizeProcessing.set(this, (direction, index, fixedSizesSum, layoutItems, event) => {
616
+ // Initialize the values needed for drag processing
617
+ const dragBarContainer = event.target.parentElement;
618
+ __classPrivateFieldSet$1(this, _mouseDownInfo, {
619
+ container: dragBarContainer,
620
+ containerSize: direction === "columns"
621
+ ? dragBarContainer.clientWidth
622
+ : dragBarContainer.clientHeight,
623
+ direction: direction,
624
+ fixedSizesSum: fixedSizesSum,
625
+ itemStartId: layoutItems[index].id,
626
+ itemEndId: layoutItems[index + 1].id,
627
+ layoutItems: layoutItems,
628
+ RTL: utils.isRTL()
629
+ }, "f");
630
+ // Remove pointer-events during drag
631
+ this.el.classList.add(RESIZING_CLASS);
257
632
  });
258
- };
259
- this.renderItems = (direction, fixedSizesSum, layoutItems) => {
260
- const lastComponentIndex = layoutItems.length - 1;
261
- return layoutItems.map((item, index$1) => [
262
- item.items ? (index.h("div", { class: DIRECTION_CLASS(item.direction), style: TEMPLATE_STYLE(item.items) }, this.renderItems(item.direction, item.fixedSizesSum, item.items))) : (index.h("slot", { key: item.id, name: item.id })),
263
- !item.hideDragBar && index$1 !== lastComponentIndex && (index.h("div", { "aria-label": this.barAccessibleName, title: this.barAccessibleName, class: "bar", part: item.dragBarPart ? `bar ${item.dragBarPart}` : "bar", style: {
264
- [DRAG_BAR_POSITION_CUSTOM_VAR]: `calc(${item.dragBarPosition})`
265
- }, onMouseDown: this.mouseDownHandler(direction, index$1, fixedSizesSum, layoutItems) }))
266
- ]);
267
- };
268
- index.registerInstance(this, hostRef);
269
- this.barAccessibleName = "";
270
- this.layout = {
271
- direction: "columns",
272
- items: []
273
- };
274
- }
275
- get el() { return index.getElement(this); }
276
- handleComponentsChange(newLayout) {
277
- this.updateLayoutInfo(newLayout);
278
- }
279
- updateLayoutInfo(layout) {
280
- var _a;
281
- if (((_a = layout === null || layout === void 0 ? void 0 : layout.items) === null || _a === void 0 ? void 0 : _a.length) > 0) {
282
- this.layoutModel = getLayoutModel(layout);
633
+ _mouseDownHandler.set(this, (direction, index, fixedSizesSum, layoutItems) => (event) => {
634
+ // Necessary to prevent selecting the inner image (or other elements) of
635
+ // the bar item when the mouse is down
636
+ event.preventDefault();
637
+ __classPrivateFieldGet$1(this, _initializeDragBarValuesForResizeProcessing, "f").call(this, direction, index, fixedSizesSum, layoutItems, event);
638
+ // Mouse position
639
+ const currentMousePosition = getMousePosition(event, direction);
640
+ __classPrivateFieldSet$1(this, _lastMousePosition, currentMousePosition, "f");
641
+ __classPrivateFieldSet$1(this, _newMousePosition, currentMousePosition, "f"); // Also updated in mouse move
642
+ // Add listeners
643
+ document.addEventListener("mousemove", __classPrivateFieldGet$1(this, _handleBarDrag, "f"), {
644
+ capture: true
645
+ });
646
+ document.addEventListener("mouseup", __classPrivateFieldGet$1(this, _mouseUpHandler, "f"), {
647
+ capture: true,
648
+ passive: true
649
+ });
650
+ });
651
+ _handleResize.set(this, (direction, index, fixedSizesSum, layoutItems) => (event) => {
652
+ if ((direction === "rows" &&
653
+ event.code !== ARROW_UP$1 &&
654
+ event.code !== ARROW_DOWN$1) ||
655
+ (direction === "columns" &&
656
+ event.code !== ARROW_LEFT$1 &&
657
+ event.code !== ARROW_RIGHT$1)) {
658
+ return;
659
+ }
660
+ // Prevent scroll
661
+ event.preventDefault();
662
+ __classPrivateFieldGet$1(this, _initializeDragBarValuesForResizeProcessing, "f").call(this, direction, index, fixedSizesSum, layoutItems, event);
663
+ const positiveIncrement = event.code === ARROW_RIGHT$1 || event.code === ARROW_DOWN$1;
664
+ __classPrivateFieldGet$1(this, _handleBarDragRAF, "f").call(this, positiveIncrement
665
+ ? this.incrementWithKeyboard
666
+ : -this.incrementWithKeyboard);
667
+ });
668
+ _renderItems.set(this, (direction, fixedSizesSum, layoutItems) => {
669
+ const lastComponentIndex = layoutItems.length - 1;
670
+ return layoutItems.map((item, index$1) => {
671
+ var _b, _c, _d;
672
+ return [
673
+ item.items ? (index.h("div", { id: item.id, class: DIRECTION_CLASS(item.direction), style: TEMPLATE_STYLE(item.items, __classPrivateFieldGet$1(this, _itemsInfo, "f")) }, __classPrivateFieldGet$1(this, _renderItems, "f").call(this, item.direction, __classPrivateFieldGet$1(this, _itemsInfo, "f").get(item.id).fixedSizesSum, item.items))) : (index.h("div", { id: item.id, class: "leaf" }, index.h("slot", { key: item.id, name: item.id }))),
674
+ ((_b = item.dragBar) === null || _b === void 0 ? void 0 : _b.hidden) !== true && index$1 !== lastComponentIndex && (index.h("div", {
675
+ // - - - Accessibility - - -
676
+ role: "separator", "aria-controls": getAriaControls(layoutItems, index$1), "aria-disabled": this.dragBarDisabled ? "true" : null, "aria-label": this.barAccessibleName, "aria-orientation": direction === "columns" ? "vertical" : "horizontal", title: this.barAccessibleName, tabindex: "0",
677
+ // - - - - - - - - - - - - -
678
+ class: "bar", part: ((_c = item.dragBar) === null || _c === void 0 ? void 0 : _c.part) ? `bar ${item.dragBar.part}` : "bar", style: ((_d = item.dragBar) === null || _d === void 0 ? void 0 : _d.size) ? { "--size": `${item.dragBar.size}px` } : null, onKeyDown: !this.dragBarDisabled
679
+ ? __classPrivateFieldGet$1(this, _handleResize, "f").call(this, direction, index$1, fixedSizesSum, layoutItems)
680
+ : null, onMouseDown: !this.dragBarDisabled
681
+ ? __classPrivateFieldGet$1(this, _mouseDownHandler, "f").call(this, direction, index$1, fixedSizesSum, layoutItems)
682
+ : null
683
+ }))
684
+ ];
685
+ });
686
+ });
687
+ index.registerInstance(this, hostRef);
688
+ this.barAccessibleName = "Resize";
689
+ this.dragBarDisabled = false;
690
+ this.incrementWithKeyboard = 2;
691
+ this.layout = {
692
+ id: "root",
693
+ direction: "columns",
694
+ items: []
695
+ };
283
696
  }
284
- }
285
- connectedCallback() {
286
- this.updateLayoutInfo(this.layout);
287
- }
288
- disconnectedCallback() {
289
- // Defensive programming. Make sure all event listeners are removed correctly
290
- this.mouseUpHandler();
291
- }
292
- render() {
293
- const layoutModel = this.layoutModel;
294
- if ((layoutModel === null || layoutModel === void 0 ? void 0 : layoutModel.items) == null) {
295
- return "";
697
+ get el() { return index.getElement(this); }
698
+ handleComponentsChange(newLayout) {
699
+ this.updateLayoutInfo(newLayout);
296
700
  }
297
- return (index.h("div", { class: DIRECTION_CLASS(layoutModel.direction), style: TEMPLATE_STYLE(layoutModel.items) }, this.renderItems(layoutModel.direction, layoutModel.fixedSizesSum, layoutModel.items)));
298
- }
299
- static get watchers() { return {
300
- "layout": ["handleComponentsChange"]
301
- }; }
302
- };
701
+ /**
702
+ * Schedules a new render of the control even if no state changed.
703
+ */
704
+ async refreshLayout() {
705
+ index.forceUpdate(this);
706
+ }
707
+ /**
708
+ * Removes the item that is identified by the given ID.
709
+ * The layout is rearranged depending on the state of the removed item.
710
+ */
711
+ async removeItem(viewId) {
712
+ const result = removeItem(viewId, __classPrivateFieldGet$1(this, _itemsInfo, "f"));
713
+ if (result.success) {
714
+ // Queue re-renders
715
+ index.forceUpdate(this);
716
+ }
717
+ return result;
718
+ }
719
+ updateLayoutInfo(layout) {
720
+ var _b;
721
+ // Clear old information
722
+ __classPrivateFieldGet$1(this, _itemsInfo, "f").clear();
723
+ if (((_b = layout === null || layout === void 0 ? void 0 : layout.items) === null || _b === void 0 ? void 0 : _b.length) > 0) {
724
+ __classPrivateFieldSet$1(this, _fixedSizesSumRoot, fixAndUpdateLayoutModel(layout, __classPrivateFieldGet$1(this, _itemsInfo, "f")), "f");
725
+ console.log(__classPrivateFieldGet$1(this, _itemsInfo, "f"));
726
+ }
727
+ }
728
+ connectedCallback() {
729
+ this.updateLayoutInfo(this.layout);
730
+ }
731
+ disconnectedCallback() {
732
+ // Defensive programming. Make sure all event listeners are removed correctly
733
+ __classPrivateFieldGet$1(this, _mouseUpHandler, "f").call(this);
734
+ }
735
+ render() {
736
+ const layoutModel = this.layout;
737
+ if ((layoutModel === null || layoutModel === void 0 ? void 0 : layoutModel.items) == null) {
738
+ return "";
739
+ }
740
+ return (index.h("div", { class: DIRECTION_CLASS(layoutModel.direction), style: TEMPLATE_STYLE(layoutModel.items, __classPrivateFieldGet$1(this, _itemsInfo, "f")) }, __classPrivateFieldGet$1(this, _renderItems, "f").call(this, layoutModel.direction, __classPrivateFieldGet$1(this, _fixedSizesSumRoot, "f"), layoutModel.items)));
741
+ }
742
+ static get watchers() { return {
743
+ "layout": ["handleComponentsChange"]
744
+ }; }
745
+ },
746
+ _needForRAF$1 = new WeakMap(),
747
+ _mouseDownInfo = new WeakMap(),
748
+ _lastMousePosition = new WeakMap(),
749
+ _newMousePosition = new WeakMap(),
750
+ _fixedSizesSumRoot = new WeakMap(),
751
+ _itemsInfo = new WeakMap(),
752
+ _handleBarDrag = new WeakMap(),
753
+ _handleBarDragRAF = new WeakMap(),
754
+ _removeMouseMoveHandler = new WeakMap(),
755
+ _mouseUpHandler = new WeakMap(),
756
+ _initializeDragBarValuesForResizeProcessing = new WeakMap(),
757
+ _mouseDownHandler = new WeakMap(),
758
+ _handleResize = new WeakMap(),
759
+ _renderItems = new WeakMap(),
760
+ _a$1);
303
761
  ChLayoutSplitter.style = layoutSplitterCss;
304
762
 
305
- const tabCss = "*,::after,::before{box-sizing:border-box}:host{display:grid;block-size:100%;inline-size:100%}:host([type=blockStart]){grid-auto-flow:row;grid-auto-rows:max-content}:host([type=inlineStart]){grid-template-columns:max-content 1fr}:host([type=main]),:host([type=blockEnd]){grid-template-rows:max-content 1fr}:host([type=inlineEnd]){grid-template-columns:1fr max-content}:where(button){all:unset;display:flex;align-items:center;user-select:none;touch-action:manipulation;-webkit-user-drag:element;cursor:pointer}.caption-image{display:block;block-size:18px;inline-size:18px}.close-button::after{content:\"\";display:flex;block-size:1em;inline-size:1em;-webkit-mask:url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2 2L15.5 15.5\" stroke=\"white\" stroke-width=\"1.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M15.5 2L2 15.5\" stroke=\"white\" stroke-width=\"1.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>') 50% 50%/0.75em 0.75em no-repeat;background-color:currentColor;opacity:0}.main__button,.blockEnd__button{display:flex;align-items:center}.main__button:hover>.close-button::after,.main__button:focus-within>.close-button::after,.main__button[aria-selected=true]>.close-button::after,.blockEnd__button:hover>.close-button::after,.blockEnd__button:focus-within>.close-button::after,.blockEnd__button[aria-selected=true]>.close-button::after{opacity:1}.inlineStart__tab-list,.inlineEnd__tab-list{display:grid;grid-auto-flow:row;grid-auto-rows:max-content}.inlineEnd__tab-list{order:1}.main__tab-list,.blockEnd__tab-list{display:grid;grid-auto-flow:column;grid-auto-columns:max-content}.page-container{display:grid;block-size:100%;inline-size:100%}@supports (content-visibility: hidden){.page-container--collapsed{content-visibility:hidden;inline-size:0}}@supports not (content-visibility: hidden){.page-container--collapsed{display:none}}.inlineStart__page,.inlineEnd__page{display:grid;grid-template-rows:max-content 1fr}.page--hidden{display:none}";
763
+ const tabCss = "*,::after,::before{box-sizing:border-box}:host{--ch-tab-transition-duration:150ms;display:grid;block-size:100%;inline-size:100%}:host([type=inlineStart]){grid-template-columns:max-content 1fr}:host(.ch-tab-direction--block){grid-template-rows:max-content 1fr}:host([type=inlineEnd]){grid-template-columns:1fr max-content}:where(button){all:unset;display:flex;align-items:center;user-select:none;touch-action:manipulation;-webkit-user-drag:element;cursor:pointer}.caption-image,.decorative-image::before{display:block;block-size:18px;inline-size:18px}.decorative-image::before{content:\"\";-webkit-mask:var(--ch-tab-decorative-image) 50% 50%/100% 100% no-repeat;background-color:currentColor}.close-button::after{content:\"\";display:flex;block-size:1em;inline-size:1em;-webkit-mask:url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2 2L15.5 15.5\" stroke=\"white\" stroke-width=\"1.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M15.5 2L2 15.5\" stroke=\"white\" stroke-width=\"1.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>') 50% 50%/0.75em 0.75em no-repeat;background-color:currentColor;opacity:0}.block__button{display:flex;align-items:center}.block__button:hover>.close-button::after,.block__button:focus-within>.close-button::after,.block__button[aria-selected=true]>.close-button::after{opacity:1}.dragged-element{opacity:0}.dragged-element--outside{display:none}.drag-preview{--ch-tab-snap-drag-preview:clamp(\n var(--ch-tab-tab-list-start),\n var(--ch-tab-mouse-position),\n var(--ch-tab-tab-list-end)\n );position:fixed;left:0;top:0;z-index:108}.drag-preview:popover-open{padding:0;margin:0;border:unset;color:unset;pointer-events:none}.drag-preview-element{cursor:grabbing}.drag-preview--outside-tab-list{transform:translate(calc(var(--ch-tab-mouse-position-x) - var(--ch-tab-mouse-offset-x)), calc(var(--ch-tab-mouse-position-y) - var(--ch-tab-mouse-offset-y)))}.drag-preview--inside-tab-list__block{--ch-tab-mouse-position:calc(\n var(--ch-tab-mouse-position-x) - var(--ch-tab-mouse-offset-x)\n );transform:translate(var(--ch-tab-snap-drag-preview), var(--ch-tab-button-position-y))}.drag-preview--inside-tab-list__inline{--ch-tab-mouse-position:calc(\n var(--ch-tab-mouse-position-y) - var(--ch-tab-mouse-offset-y)\n );transform:translate(var(--ch-tab-button-position-x), var(--ch-tab-snap-drag-preview))}.shifted-element{transition:transform var(--ch-tab-transition-duration)}:host(.ch-tab-direction--block) .shifted-element--start{transform:translate(calc(var(--ch-tab-button-size) * -1), 0)}:host(.ch-tab-direction--block) .shifted-element--end{transform:translate(var(--ch-tab-button-size), 0)}:host(.ch-tab-direction--inline) .shifted-element--start{transform:translateY(calc(var(--ch-tab-button-size) * -1))}:host(.ch-tab-direction--inline) .shifted-element--end{transform:translateY(var(--ch-tab-button-size))}.inline__tab-list{display:grid;grid-auto-flow:row;grid-auto-rows:max-content}:host([type=inlineEnd])>.inline__tab-list{order:1}.block__tab-list{display:grid;grid-auto-flow:column;grid-auto-columns:max-content}.page-container{display:grid;grid-template:\"selected\" 1fr/1fr;block-size:100%;inline-size:100%}.page--selected{grid-area:selected}@supports (content-visibility: hidden){.page-container--collapsed,.page--hidden{content-visibility:hidden}.page-container--collapsed{inline-size:0}}@supports not (content-visibility: hidden){.page-container--collapsed,.page--hidden{display:none}}";
306
764
 
307
- const ChTab = class {
308
- constructor(hostRef) {
309
- this.classes = {};
310
- this.lastSelectedItem = -1;
311
- this.handleSelectedItemChange = (index, itemId) => (event) => {
312
- event.stopPropagation();
313
- this.selectedItemChange.emit({
314
- lastSelectedIndex: this.lastSelectedItem,
315
- newSelectedId: itemId,
316
- newSelectedIndex: index,
317
- type: this.type
318
- });
319
- this.lastSelectedItem = index;
320
- };
321
- this.handleItemDblClick = (event) => {
322
- event.preventDefault();
323
- event.stopPropagation();
324
- this.expandMainGroup.emit();
325
- };
326
- this.handleClose = (itemId) => (event) => {
327
- event.preventDefault();
328
- event.stopPropagation();
329
- this.itemClose.emit(itemId);
330
- };
331
- this.renderTabBar = () => (index.h("div", { role: "tablist", "aria-label": this.accessibleName, class: this.classes.TAB_LIST, part: this.classes.TAB_LIST }, this.items.map((item, index$1) => (index.h("button", { key: utils$1.CAPTION_ID(item.id), id: utils$1.CAPTION_ID(item.id), role: "tab", "aria-controls": utils$1.PAGE_ID(item.id), "aria-label": !this.showCaptions ? item.name : null, "aria-selected": (!!item.selected).toString(), class: this.classes.BUTTON, part: utils.tokenMap({
332
- [this.classes.BUTTON]: true,
333
- [utils$1.CAPTION_ID(item.id)]: true,
334
- [utils$1.SELECTED_PART]: item.selected
335
- }), onClick: !item.selected
336
- ? this.handleSelectedItemChange(index$1, item.id)
337
- : null, onDblClick: this.type === "main" ? this.handleItemDblClick : null }, item.startImageSrc && (index.h("img", { "aria-hidden": "true", class: { [this.classes.IMAGE]: true, "caption-image": true }, part: this.classes.IMAGE, alt: "", src: item.startImageSrc, loading: "lazy" })), this.showCaptions && item.name, this.showCaptions && (index.h("button", { "aria-label": this.closeButtonAccessibleName, class: "close-button", part: utils$1.CLOSE_BUTTON_PART, type: "button", onClick: this.handleClose(item.id) })))))));
338
- this.renderTabPages = () => (index.h("div", { class: {
339
- [this.classes.PAGE_CONTAINER]: true,
340
- "page-container": true,
341
- "page-container--collapsed": !this.expanded
342
- }, part: this.classes.PAGE_CONTAINER }, this.items.map(item => (index.h("div", { key: utils$1.PAGE_ID(item.id), id: utils$1.PAGE_ID(item.id), role: "tabpanel", "aria-labelledby": utils$1.CAPTION_ID(item.name), class: {
343
- [this.classes.PAGE]: true,
344
- "page--hidden": !item.selected
345
- }, part: this.classes.PAGE }, this.showPageName &&
346
- (this.type === "inlineStart" || this.type === "inlineEnd") && (index.h("span", { "aria-hidden": "true", part: this.classes.PAGE_NAME }, item.name)), item.wasRendered && index.h("slot", { name: item.id }))))));
347
- index.registerInstance(this, hostRef);
348
- this.expandMainGroup = index.createEvent(this, "expandMainGroup", 7);
349
- this.itemClose = index.createEvent(this, "itemClose", 7);
350
- this.selectedItemChange = index.createEvent(this, "selectedItemChange", 7);
351
- this.accessibleName = undefined;
352
- this.closeButtonAccessibleName = "Close";
353
- this.expanded = true;
354
- this.items = undefined;
355
- this.showPageName = true;
356
- this.type = undefined;
357
- }
358
- handleItemsChange(newItems) {
359
- this.updateSelectedIndex(newItems);
765
+ var __classPrivateFieldGet = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
766
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
767
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
768
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
769
+ };
770
+ var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
771
+ if (kind === "m") throw new TypeError("Private method is not writable");
772
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
773
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
774
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
775
+ };
776
+ var _cancelId, _classes, _parts, _direction, _selectedIndex, _showCaptions, _lastDragEvent, _needForRAF, _initialMousePosition, _itemSizes, _mouseBoundingLimits, _renderedPages, _dragPreviewRef, _tabListRef, _tabPageRef, _keyEvents, _handleSelectedItemChange, _updateRenderedPages, _handleItemDblClick, _handleDragStart, _handleDragEnd, _handleItemDrag, _handleClose, _handleTabFocus, _imgRender, _renderTabBar, _renderTabPages, _renderDragPreview, _initializeState, _setClassesAndParts, _a;
777
+ // Custom vars
778
+ const TRANSITION_DURATION = "--ch-tab-transition-duration";
779
+ const BUTTON_POSITION_X = "--ch-tab-button-position-x";
780
+ const BUTTON_POSITION_Y = "--ch-tab-button-position-y";
781
+ const BUTTON_SIZE = "--ch-tab-button-size";
782
+ const MOUSE_OFFSET_X = "--ch-tab-mouse-offset-x";
783
+ const MOUSE_OFFSET_Y = "--ch-tab-mouse-offset-y";
784
+ const MOUSE_POSITION_X = "--ch-tab-mouse-position-x";
785
+ const MOUSE_POSITION_Y = "--ch-tab-mouse-position-y";
786
+ const TAB_LIST_EDGE_START_POSITION = "--ch-tab-tab-list-start";
787
+ const TAB_LIST_EDGE_END_POSITION = "--ch-tab-tab-list-end";
788
+ const DECORATIVE_IMAGE = "--ch-tab-decorative-image";
789
+ // Key codes
790
+ const ARROW_UP = "ArrowUp";
791
+ const ARROW_RIGHT = "ArrowRight";
792
+ const ARROW_DOWN = "ArrowDown";
793
+ const ARROW_LEFT = "ArrowLeft";
794
+ const HOME = "Home";
795
+ const END = "End";
796
+ // Selectors
797
+ const FIRST_CAPTION_BUTTON = (tabListRef) => tabListRef.querySelector(":scope>button");
798
+ const LAST_CAPTION_BUTTON = (tabListRef) => tabListRef.querySelector(":scope>button:last-child");
799
+ // Utility functions
800
+ const isDecorativeImg = (item) => item.startImageSrc &&
801
+ (!item.startImageType || item.startImageType === "pseudo-element");
802
+ const getDirection = (type) => type === "main" || type === "blockEnd" ? "block" : "inline";
803
+ const isBlockDirection = (direction) => direction === "block";
804
+ const setProperty = (element, property, value) => element.style.setProperty(property, `${value}px`);
805
+ const setButtonInitialPosition = (element, positionX, positionY) => {
806
+ setProperty(element, BUTTON_POSITION_X, positionX);
807
+ setProperty(element, BUTTON_POSITION_Y, positionY);
808
+ };
809
+ const setButtonSize = (element, size) => {
810
+ setProperty(element, BUTTON_SIZE, size);
811
+ };
812
+ const setMousePosition = (element, positionX, positionY) => {
813
+ setProperty(element, MOUSE_POSITION_X, positionX);
814
+ setProperty(element, MOUSE_POSITION_Y, positionY);
815
+ };
816
+ // Useful to implement snap to the edges
817
+ const setTabListStartEndPosition = (element, startPosition, endPosition) => {
818
+ setProperty(element, TAB_LIST_EDGE_START_POSITION, startPosition);
819
+ setProperty(element, TAB_LIST_EDGE_END_POSITION, endPosition);
820
+ };
821
+ const getTabListSizesAndSetPosition = (hostRef, tabListRef, direction, buttonRect) => {
822
+ const tabListRect = tabListRef.getBoundingClientRect();
823
+ // Tab List information
824
+ const tabListSizes = {
825
+ xStart: tabListRect.x,
826
+ xEnd: tabListRect.x + tabListRect.width,
827
+ yStart: tabListRect.y,
828
+ yEnd: tabListRect.y + tabListRect.height
829
+ };
830
+ if (isBlockDirection(direction)) {
831
+ setTabListStartEndPosition(hostRef, tabListSizes.xStart, tabListSizes.xEnd - buttonRect.width);
360
832
  }
361
- updateSelectedIndex(items) {
362
- if (items == null) {
363
- this.lastSelectedItem = -1;
364
- return;
365
- }
366
- this.lastSelectedItem = items.findIndex(item => item.selected);
833
+ else {
834
+ setTabListStartEndPosition(hostRef, tabListSizes.yStart, tabListSizes.yEnd - buttonRect.height);
367
835
  }
368
- componentWillLoad() {
369
- this.updateSelectedIndex(this.items);
370
- // Initialize classes
371
- this.classes = {
372
- BUTTON: utils$1.BUTTON_CLASS(this.type),
373
- IMAGE: utils$1.IMAGE_CLASS(this.type),
374
- PAGE: utils$1.PAGE_CLASS(this.type),
375
- PAGE_CONTAINER: utils$1.PAGE_CONTAINER_CLASS(this.type),
376
- PAGE_NAME: utils$1.PAGE_NAME_CLASS(this.type),
377
- TAB_LIST: utils$1.TAB_LIST_CLASS(this.type)
378
- };
379
- this.showCaptions = this.type === "main" || this.type === "blockEnd";
836
+ return tabListSizes;
837
+ };
838
+ const setMouseOffset = (element, offsetX, offsetY) => {
839
+ setProperty(element, MOUSE_OFFSET_X, offsetX);
840
+ setProperty(element, MOUSE_OFFSET_Y, offsetY);
841
+ };
842
+ const addGrabbingStyle = () => document.body.style.setProperty("cursor", "grabbing");
843
+ const removeGrabbingStyle = () => document.body.style.removeProperty("cursor");
844
+ const focusNextOrPreviousCaption = (focusNextSibling, tabListRef, focusedCaption, event) => {
845
+ var _b, _c;
846
+ // Prevent scroll
847
+ event.preventDefault();
848
+ let nextFocusedCaption;
849
+ // Determine the next selected caption button
850
+ if (focusNextSibling) {
851
+ nextFocusedCaption = ((_b = focusedCaption.nextElementSibling) !== null && _b !== void 0 ? _b : FIRST_CAPTION_BUTTON(tabListRef));
380
852
  }
381
- render() {
382
- if (this.items == null || this.items.length === 0) {
383
- return "";
384
- }
385
- return (index.h(index.Host, null, this.renderTabBar(), this.renderTabPages()));
853
+ else {
854
+ nextFocusedCaption = ((_c = focusedCaption.previousElementSibling) !== null && _c !== void 0 ? _c : LAST_CAPTION_BUTTON(tabListRef));
386
855
  }
387
- static get watchers() { return {
388
- "items": ["handleItemsChange"]
389
- }; }
856
+ // Focus and select the caption
857
+ nextFocusedCaption.focus();
858
+ nextFocusedCaption.click();
390
859
  };
860
+ const ChTab = (_a = class {
861
+ constructor(hostRef) {
862
+ _cancelId.set(this, void 0);
863
+ // Styling
864
+ _classes.set(this, {});
865
+ _parts.set(this, {});
866
+ _direction.set(this, void 0);
867
+ _selectedIndex.set(this, -1);
868
+ _showCaptions.set(this, void 0);
869
+ _lastDragEvent.set(this, void 0);
870
+ _needForRAF.set(this, true); // To prevent redundant RAF (request animation frame) calls
871
+ _initialMousePosition.set(this, -1);
872
+ // Allocated at runtime to reduce memory usage
873
+ _itemSizes.set(this, void 0);
874
+ /**
875
+ * This variable represents the boundaries of the box where the mouse can be
876
+ * placed when dragging a caption, to consider that the caption is within the
877
+ * tab list.
878
+ */
879
+ _mouseBoundingLimits.set(this, void 0);
880
+ _renderedPages.set(this, new Set());
881
+ // Refs
882
+ _dragPreviewRef.set(this, void 0);
883
+ _tabListRef.set(this, void 0);
884
+ _tabPageRef.set(this, void 0);
885
+ // Keyboard interactions
886
+ _keyEvents.set(this, {
887
+ [ARROW_UP]: (direction, ev, focusedButton) => {
888
+ if (direction === "block") {
889
+ return;
890
+ }
891
+ focusNextOrPreviousCaption(false, __classPrivateFieldGet(this, _tabListRef, "f"), focusedButton, ev);
892
+ },
893
+ [ARROW_RIGHT]: (direction, ev, focusedButton) => {
894
+ if (direction === "inline") {
895
+ return;
896
+ }
897
+ focusNextOrPreviousCaption(!utils.isRTL(), __classPrivateFieldGet(this, _tabListRef, "f"), focusedButton, ev);
898
+ },
899
+ [ARROW_DOWN]: (direction, ev, focusedButton) => {
900
+ if (direction === "block") {
901
+ return;
902
+ }
903
+ focusNextOrPreviousCaption(true, __classPrivateFieldGet(this, _tabListRef, "f"), focusedButton, ev);
904
+ },
905
+ [ARROW_LEFT]: (direction, ev, focusedButton) => {
906
+ if (direction === "inline") {
907
+ return;
908
+ }
909
+ focusNextOrPreviousCaption(utils.isRTL(), __classPrivateFieldGet(this, _tabListRef, "f"), focusedButton, ev);
910
+ },
911
+ [HOME]: () => {
912
+ const nextFocusedCaption = FIRST_CAPTION_BUTTON(__classPrivateFieldGet(this, _tabListRef, "f"));
913
+ // Focus and select the caption
914
+ nextFocusedCaption.focus();
915
+ nextFocusedCaption.click();
916
+ },
917
+ [END]: () => {
918
+ const nextFocusedCaption = LAST_CAPTION_BUTTON(__classPrivateFieldGet(this, _tabListRef, "f"));
919
+ // Focus and select the caption
920
+ nextFocusedCaption.focus();
921
+ nextFocusedCaption.click();
922
+ }
923
+ });
924
+ _handleSelectedItemChange.set(this, (index, itemId) => (event) => {
925
+ event.stopPropagation();
926
+ this.selectedItemChange.emit({
927
+ lastSelectedIndex: __classPrivateFieldGet(this, _selectedIndex, "f"),
928
+ newSelectedId: itemId,
929
+ newSelectedIndex: index,
930
+ type: this.type
931
+ });
932
+ __classPrivateFieldSet(this, _selectedIndex, index, "f");
933
+ // this.selectedId = itemId;
934
+ });
935
+ /**
936
+ * Make a set based on the rendered items array to maintain order between the
937
+ * pages, even when re-ordering tabs. This is useful for optimizing rendering
938
+ * performance by not re-ordering pages when the caption's order changes.
939
+ */
940
+ // eslint-disable-next-line @stencil-community/own-props-must-be-private
941
+ _updateRenderedPages.set(this, (items) => {
942
+ (items !== null && items !== void 0 ? items : []).forEach(item => {
943
+ if (item.wasRendered) {
944
+ __classPrivateFieldGet(this, _renderedPages, "f").add(item.id);
945
+ }
946
+ });
947
+ });
948
+ _handleItemDblClick.set(this, (event) => {
949
+ event.preventDefault();
950
+ event.stopPropagation();
951
+ this.expandMainGroup.emit();
952
+ });
953
+ _handleDragStart.set(this, (index) => (event) => {
954
+ // Remove dragover event to allow mousemove event to fire
955
+ event.preventDefault();
956
+ // Store the index of the dragged element
957
+ this.draggedElementIndex = index;
958
+ // - - - - - - - - - - - DOM read operations - - - - - - - - - - -
959
+ const mousePositionX = event.clientX;
960
+ const mousePositionY = event.clientY;
961
+ const getItemSize = isBlockDirection(__classPrivateFieldGet(this, _direction, "f"))
962
+ ? (item) => item.getBoundingClientRect().width
963
+ : (item) => item.getBoundingClientRect().height;
964
+ __classPrivateFieldSet(this, _itemSizes, [...__classPrivateFieldGet(this, _tabListRef, "f").children].map(getItemSize), "f");
965
+ const buttonRect = event.target.getBoundingClientRect();
966
+ // Tab List information
967
+ const tabListSizes = getTabListSizesAndSetPosition(this.el, __classPrivateFieldGet(this, _tabListRef, "f"), __classPrivateFieldGet(this, _direction, "f"), buttonRect);
968
+ // Button information
969
+ const buttonSizes = {
970
+ xStart: buttonRect.x,
971
+ xEnd: buttonRect.x + buttonRect.width,
972
+ yStart: buttonRect.y,
973
+ yEnd: buttonRect.y + buttonRect.height
974
+ };
975
+ const mouseDistanceToButtonTopEdge = mousePositionY - buttonSizes.yStart;
976
+ const mouseDistanceToButtonBottomEdge = buttonSizes.yEnd - mousePositionY;
977
+ const mouseDistanceToButtonLeftEdge = mousePositionX - buttonSizes.xStart;
978
+ const mouseDistanceToButtonRightEdge = buttonSizes.xEnd - mousePositionX;
979
+ // Mouse limits
980
+ __classPrivateFieldSet(this, _mouseBoundingLimits, {
981
+ xStart: tabListSizes.xStart - mouseDistanceToButtonRightEdge,
982
+ xEnd: tabListSizes.xEnd + mouseDistanceToButtonLeftEdge,
983
+ yStart: tabListSizes.yStart - mouseDistanceToButtonBottomEdge,
984
+ yEnd: tabListSizes.yEnd + mouseDistanceToButtonTopEdge
985
+ }, "f");
986
+ // Store initial mouse position
987
+ __classPrivateFieldSet(this, _initialMousePosition, isBlockDirection(__classPrivateFieldGet(this, _direction, "f"))
988
+ ? mousePositionX
989
+ : mousePositionY, "f");
990
+ // - - - - - - - - - - - DOM write operations - - - - - - - - - - -
991
+ // Initialize mouse position to avoid initial flickering
992
+ setMousePosition(this.el, mousePositionX, mousePositionY);
993
+ // Initialize the button position
994
+ setButtonInitialPosition(this.el, buttonSizes.xStart, buttonSizes.yStart);
995
+ setButtonSize(this.el, isBlockDirection(__classPrivateFieldGet(this, _direction, "f")) ? buttonRect.width : buttonRect.height);
996
+ // Update mouse offset to correctly place the dragged element preview
997
+ setMouseOffset(this.el, mouseDistanceToButtonLeftEdge, mouseDistanceToButtonTopEdge);
998
+ addGrabbingStyle();
999
+ // Add listeners
1000
+ document.body.addEventListener("mousemove", __classPrivateFieldGet(this, _handleItemDrag, "f"), {
1001
+ capture: true,
1002
+ passive: true
1003
+ });
1004
+ document.body.addEventListener("mouseup", __classPrivateFieldGet(this, _handleDragEnd, "f"), {
1005
+ capture: true
1006
+ });
1007
+ });
1008
+ _handleDragEnd.set(this, () => {
1009
+ // Since mousemove callbacks are executed on animation frames, we must also
1010
+ // remove the events on animations frame. Otherwise we would remove the
1011
+ // events and in the next frame the mousemove handler will be executes
1012
+ cancelAnimationFrame(__classPrivateFieldGet(this, _cancelId, "f"));
1013
+ __classPrivateFieldSet(this, _needForRAF, true, "f");
1014
+ document.body.removeEventListener("mousemove", __classPrivateFieldGet(this, _handleItemDrag, "f"), {
1015
+ capture: true
1016
+ });
1017
+ document.body.removeEventListener("mouseup", __classPrivateFieldGet(this, _handleDragEnd, "f"), {
1018
+ capture: true
1019
+ });
1020
+ removeGrabbingStyle();
1021
+ const anItemWasReordered = !this.hasCrossedBoundaries &&
1022
+ this.draggedElementNewIndex !== this.draggedElementIndex;
1023
+ // Move the item to the new position
1024
+ if (anItemWasReordered) {
1025
+ const itemToInsert = array.removeElement(this.items, this.draggedElementIndex);
1026
+ array.insertIntoIndex(this.items, itemToInsert, this.draggedElementNewIndex);
1027
+ // Update last selected index
1028
+ this.adjustLastSelectedIndexValueAfterReorder();
1029
+ }
1030
+ // Restore visibility of the dragged element
1031
+ this.draggedElementIndex = -1;
1032
+ this.draggedElementNewIndex = -1;
1033
+ // Free the memory
1034
+ __classPrivateFieldSet(this, _itemSizes, undefined, "f");
1035
+ // Reset state
1036
+ this.hasCrossedBoundaries = false;
1037
+ this.el.style.removeProperty(TRANSITION_DURATION);
1038
+ });
1039
+ _handleItemDrag.set(this, (event) => {
1040
+ __classPrivateFieldSet(this, _lastDragEvent, event, "f");
1041
+ if (!__classPrivateFieldGet(this, _needForRAF, "f")) {
1042
+ return;
1043
+ }
1044
+ __classPrivateFieldSet(this, _needForRAF, false, "f"); // No need to call RAF up until next frame
1045
+ __classPrivateFieldSet(this, _cancelId, requestAnimationFrame(() => {
1046
+ __classPrivateFieldSet(this, _needForRAF, true, "f"); // RAF now consumes the movement instruction so a new one can come
1047
+ const mousePositionX = __classPrivateFieldGet(this, _lastDragEvent, "f").clientX;
1048
+ const mousePositionY = __classPrivateFieldGet(this, _lastDragEvent, "f").clientY;
1049
+ setMousePosition(this.el, mousePositionX, mousePositionY);
1050
+ // There is no need to update the preview of the reorder
1051
+ if (this.hasCrossedBoundaries) {
1052
+ return;
1053
+ }
1054
+ const mouseLimits = __classPrivateFieldGet(this, _mouseBoundingLimits, "f");
1055
+ const draggedButtonIsInsideTheTabList = utils.inBetween(mouseLimits.xStart, mousePositionX, mouseLimits.xEnd) &&
1056
+ utils.inBetween(mouseLimits.yStart, mousePositionY, mouseLimits.yEnd);
1057
+ // Emit the itemDragStart event the first time the button is out of the
1058
+ // mouse bounds (`mouseBoundingLimits`)
1059
+ if (!draggedButtonIsInsideTheTabList) {
1060
+ this.hasCrossedBoundaries = true;
1061
+ // Remove transition before the render to avoid flickering in the animation
1062
+ this.el.style.setProperty(TRANSITION_DURATION, "0s");
1063
+ this.itemDragStart.emit(this.draggedElementIndex);
1064
+ return;
1065
+ }
1066
+ // There is no need to re-order the items in the preview
1067
+ if (this.items.length === 1) {
1068
+ return;
1069
+ }
1070
+ // In this point, the preview is inside the tab list, we should check
1071
+ // in which place is the preview to give feedback for the item's reorder
1072
+ const mousePosition = isBlockDirection(__classPrivateFieldGet(this, _direction, "f"))
1073
+ ? mousePositionX
1074
+ : mousePositionY;
1075
+ const hasMovedToTheEnd = __classPrivateFieldGet(this, _initialMousePosition, "f") < mousePosition;
1076
+ // Distance traveled from the initial mouse position
1077
+ let distanceTraveled = Math.abs(__classPrivateFieldGet(this, _initialMousePosition, "f") - mousePosition);
1078
+ let newIndex = this.draggedElementIndex;
1079
+ if (hasMovedToTheEnd) {
1080
+ // While it is not the last item and the distance traveled is greater
1081
+ // than half the size of the next item
1082
+ while (newIndex < this.items.length - 1 &&
1083
+ distanceTraveled - __classPrivateFieldGet(this, _itemSizes, "f")[newIndex + 1] / 2 > 0) {
1084
+ distanceTraveled -= __classPrivateFieldGet(this, _itemSizes, "f")[newIndex + 1];
1085
+ newIndex++;
1086
+ }
1087
+ }
1088
+ else {
1089
+ // While it is not the first item and the distance traveled is greater
1090
+ // than half the size of the previous item
1091
+ while (newIndex > 0 &&
1092
+ distanceTraveled - __classPrivateFieldGet(this, _itemSizes, "f")[newIndex - 1] / 2 > 0) {
1093
+ distanceTraveled -= __classPrivateFieldGet(this, _itemSizes, "f")[newIndex - 1];
1094
+ newIndex--;
1095
+ }
1096
+ }
1097
+ // Check if should update the dragged element index in the preview
1098
+ if (this.draggedElementNewIndex !== newIndex) {
1099
+ this.draggedElementNewIndex = newIndex;
1100
+ }
1101
+ }), "f");
1102
+ });
1103
+ _handleClose.set(this, (index, itemId) => (event) => {
1104
+ event.preventDefault();
1105
+ event.stopPropagation();
1106
+ this.itemClose.emit({
1107
+ itemIndex: index,
1108
+ itemId: itemId,
1109
+ type: this.type
1110
+ });
1111
+ });
1112
+ _handleTabFocus.set(this, (event) => {
1113
+ if (this.items.length < 2) {
1114
+ return;
1115
+ }
1116
+ const keyEventHandler = __classPrivateFieldGet(this, _keyEvents, "f")[event.code];
1117
+ if (!keyEventHandler) {
1118
+ return;
1119
+ }
1120
+ const currentFocusedCaption = helpers.focusComposedPath()[0].closest("." + __classPrivateFieldGet(this, _classes, "f").BUTTON);
1121
+ keyEventHandler(__classPrivateFieldGet(this, _direction, "f"), event, currentFocusedCaption);
1122
+ });
1123
+ _imgRender.set(this, (item) => item.startImageType === "img" &&
1124
+ item.startImageSrc && (index.h("img", { "aria-hidden": "true", class: "caption-image " + __classPrivateFieldGet(this, _classes, "f").IMAGE, part: __classPrivateFieldGet(this, _parts, "f").IMAGE, alt: "", src: item.startImageSrc, loading: "lazy" })));
1125
+ _renderTabBar.set(this, (thereAreShiftedElements) => (index.h("div", { role: "tablist", "aria-label": this.accessibleName, class: __classPrivateFieldGet(this, _classes, "f").TAB_LIST, part: __classPrivateFieldGet(this, _parts, "f").TAB_LIST, ref: el => (__classPrivateFieldSet(this, _tabListRef, el, "f")), onKeyDown: __classPrivateFieldGet(this, _handleTabFocus, "f") }, this.items.map((item, index$1) => (index.h("button", { key: utils$1.CAPTION_ID(item.id), id: utils$1.CAPTION_ID(item.id), role: "tab", "aria-controls": utils$1.PAGE_ID(item.id), "aria-label": !__classPrivateFieldGet(this, _showCaptions, "f") ? item.name : null, "aria-selected": (item.id === this.selectedId).toString(), class: {
1126
+ [__classPrivateFieldGet(this, _classes, "f").BUTTON]: true,
1127
+ "decorative-image": isDecorativeImg(item),
1128
+ "dragged-element": this.draggedElementIndex === index$1,
1129
+ "dragged-element--outside": this.draggedElementIndex === index$1 &&
1130
+ this.hasCrossedBoundaries &&
1131
+ this.items.length > 1,
1132
+ "shifted-element": this.draggedElementIndex !== -1,
1133
+ "shifted-element--start": thereAreShiftedElements &&
1134
+ this.draggedElementIndex < index$1 &&
1135
+ index$1 <= this.draggedElementNewIndex,
1136
+ "shifted-element--end": thereAreShiftedElements &&
1137
+ this.draggedElementNewIndex <= index$1 &&
1138
+ index$1 < this.draggedElementIndex
1139
+ }, part: utils.tokenMap({
1140
+ [__classPrivateFieldGet(this, _parts, "f").BUTTON]: true,
1141
+ [utils$1.CAPTION_ID(item.id)]: true,
1142
+ [utils$1.SELECTED_PART]: item.id === this.selectedId
1143
+ }), style: isDecorativeImg(item)
1144
+ ? { [DECORATIVE_IMAGE]: `url("${item.startImageSrc}")` }
1145
+ : null, onAuxClick: __classPrivateFieldGet(this, _handleClose, "f").call(this, index$1, item.id), onClick: !(item.id === this.selectedId)
1146
+ ? __classPrivateFieldGet(this, _handleSelectedItemChange, "f").call(this, index$1, item.id)
1147
+ : null, onDblClick: this.type === "main" ? __classPrivateFieldGet(this, _handleItemDblClick, "f") : null,
1148
+ // Drag and drop
1149
+ onDragStart: !this.dragDisabled ? __classPrivateFieldGet(this, _handleDragStart, "f").call(this, index$1) : null }, __classPrivateFieldGet(this, _imgRender, "f").call(this, item), __classPrivateFieldGet(this, _showCaptions, "f") && item.name, __classPrivateFieldGet(this, _showCaptions, "f") && (index.h("button", { "aria-label": this.closeButtonAccessibleName, class: "close-button", part: utils$1.CLOSE_BUTTON_PART, type: "button", onClick: __classPrivateFieldGet(this, _handleClose, "f").call(this, index$1, item.id) }))))))));
1150
+ _renderTabPages.set(this, () => (index.h("div", { class: {
1151
+ [__classPrivateFieldGet(this, _classes, "f").PAGE_CONTAINER]: true,
1152
+ "page-container": true,
1153
+ "page-container--collapsed": !this.expanded
1154
+ }, part: __classPrivateFieldGet(this, _parts, "f").PAGE_CONTAINER, ref: el => (__classPrivateFieldSet(this, _tabPageRef, el, "f")) }, [...__classPrivateFieldGet(this, _renderedPages, "f").keys()].map(itemId => (index.h("div", { key: utils$1.PAGE_ID(itemId), id: utils$1.PAGE_ID(itemId), role: "tabpanel", "aria-labelledby": utils$1.CAPTION_ID(itemId), class: {
1155
+ [__classPrivateFieldGet(this, _classes, "f").PAGE]: true,
1156
+ "page--selected": itemId === this.selectedId,
1157
+ "page--hidden": !(itemId === this.selectedId)
1158
+ }, part: __classPrivateFieldGet(this, _parts, "f").PAGE }, index.h("slot", { name: itemId })))))));
1159
+ _renderDragPreview.set(this, (draggedElement) => {
1160
+ const classes = {
1161
+ [utils$1.DRAG_PREVIEW]: true,
1162
+ [utils$1.DRAG_PREVIEW_OUTSIDE]: this.hasCrossedBoundaries,
1163
+ [utils$1.DRAG_PREVIEW_INSIDE_INLINE]: !this.hasCrossedBoundaries && !isBlockDirection(__classPrivateFieldGet(this, _direction, "f")),
1164
+ [utils$1.DRAG_PREVIEW_INSIDE_BLOCK]: !this.hasCrossedBoundaries && isBlockDirection(__classPrivateFieldGet(this, _direction, "f"))
1165
+ };
1166
+ return (index.h("div", { "aria-hidden": "true", class: classes, part: utils.tokenMap(classes), ref: el => (__classPrivateFieldSet(this, _dragPreviewRef, el, "f")) }, index.h("button", { class: {
1167
+ [__classPrivateFieldGet(this, _classes, "f").BUTTON]: true,
1168
+ [utils$1.DRAG_PREVIEW_ELEMENT]: true,
1169
+ "decorative-image": isDecorativeImg(draggedElement)
1170
+ }, part: utils.tokenMap({
1171
+ [__classPrivateFieldGet(this, _parts, "f").BUTTON]: true,
1172
+ [utils$1.CAPTION_ID(draggedElement.id)]: true,
1173
+ [utils$1.DRAG_PREVIEW_ELEMENT]: true,
1174
+ [utils$1.SELECTED_PART]: draggedElement.id === this.selectedId
1175
+ }), style: isDecorativeImg(draggedElement)
1176
+ ? { [DECORATIVE_IMAGE]: `url("${draggedElement.startImageSrc}")` }
1177
+ : null }, __classPrivateFieldGet(this, _imgRender, "f").call(this, draggedElement), __classPrivateFieldGet(this, _showCaptions, "f") && draggedElement.name)));
1178
+ });
1179
+ _initializeState.set(this, (type) => {
1180
+ __classPrivateFieldSet(this, _direction, getDirection(type), "f");
1181
+ __classPrivateFieldGet(this, _updateRenderedPages, "f").call(this, this.items);
1182
+ // Initialize classes and parts
1183
+ __classPrivateFieldGet(this, _setClassesAndParts, "f").call(this, __classPrivateFieldGet(this, _direction, "f"), type);
1184
+ __classPrivateFieldSet(this, _showCaptions, isBlockDirection(__classPrivateFieldGet(this, _direction, "f")), "f");
1185
+ });
1186
+ _setClassesAndParts.set(this, (direction, type) => {
1187
+ __classPrivateFieldSet(this, _classes, {
1188
+ BUTTON: utils$1.BUTTON_CLASS(direction),
1189
+ IMAGE: utils$1.IMAGE_CLASS(direction),
1190
+ PAGE: utils$1.PAGE_CLASS(direction),
1191
+ PAGE_CONTAINER: utils$1.PAGE_CONTAINER_CLASS(direction),
1192
+ PAGE_NAME: utils$1.PAGE_NAME_CLASS(direction),
1193
+ TAB_LIST: utils$1.TAB_LIST_CLASS(direction)
1194
+ }, "f");
1195
+ // Add the type information to each part
1196
+ Object.entries(__classPrivateFieldGet(this, _classes, "f")).forEach(([key, value]) => {
1197
+ __classPrivateFieldGet(this, _parts, "f")[key] = `${value} ${type}`;
1198
+ });
1199
+ });
1200
+ index.registerInstance(this, hostRef);
1201
+ this.expandMainGroup = index.createEvent(this, "expandMainGroup", 7);
1202
+ this.itemClose = index.createEvent(this, "itemClose", 7);
1203
+ this.selectedItemChange = index.createEvent(this, "selectedItemChange", 7);
1204
+ this.itemDragStart = index.createEvent(this, "itemDragStart", 7);
1205
+ this.draggedElementIndex = -1;
1206
+ this.draggedElementNewIndex = -1;
1207
+ this.hasCrossedBoundaries = false;
1208
+ this.accessibleName = undefined;
1209
+ this.closeButtonAccessibleName = "Close";
1210
+ this.dragDisabled = false;
1211
+ this.expanded = true;
1212
+ this.items = undefined;
1213
+ this.selectedId = undefined;
1214
+ this.type = undefined;
1215
+ }
1216
+ get el() { return index.getElement(this); }
1217
+ handleItemsChange(newItems) {
1218
+ __classPrivateFieldGet(this, _updateRenderedPages, "f").call(this, newItems);
1219
+ }
1220
+ handleSelectedIdChange(newSelectedId) {
1221
+ __classPrivateFieldGet(this, _renderedPages, "f").add(newSelectedId);
1222
+ }
1223
+ handleTypeChange(newType) {
1224
+ __classPrivateFieldGet(this, _initializeState, "f").call(this, newType);
1225
+ }
1226
+ /**
1227
+ * Ends the preview of the dragged item. Useful for ending the preview via
1228
+ * keyboard interaction.
1229
+ */
1230
+ async endDragPreview() {
1231
+ __classPrivateFieldGet(this, _handleDragEnd, "f").call(this);
1232
+ }
1233
+ /**
1234
+ * Returns the info associated to the draggable view.
1235
+ */
1236
+ async getDraggableViews() {
1237
+ return {
1238
+ mainView: this.el,
1239
+ pageView: __classPrivateFieldGet(this, _tabPageRef, "f"),
1240
+ tabListView: __classPrivateFieldGet(this, _tabListRef, "f")
1241
+ };
1242
+ }
1243
+ /**
1244
+ * Promotes the drag preview to the top layer. Useful to avoid z-index issues.
1245
+ */
1246
+ async promoteDragPreviewToTopLayer() {
1247
+ if (this.draggedElementIndex === -1) {
1248
+ return;
1249
+ }
1250
+ // If this property is added in a declarative way via the Stencil's render,
1251
+ // we would have to use requestAnimationFrame to delay the shopPopover()
1252
+ // method, since the popover defaults to "auto", which does not allow to
1253
+ // keep multiple "auto" popover open at the same time
1254
+ __classPrivateFieldGet(this, _dragPreviewRef, "f").popover = "manual";
1255
+ __classPrivateFieldGet(this, _dragPreviewRef, "f").showPopover();
1256
+ }
1257
+ /**
1258
+ * Given an id, remove the page from the render
1259
+ */
1260
+ async removePage(pageId, forceRerender = true) {
1261
+ __classPrivateFieldGet(this, _renderedPages, "f").delete(pageId);
1262
+ if (forceRerender) {
1263
+ index.forceUpdate(this);
1264
+ }
1265
+ }
1266
+ adjustLastSelectedIndexValueAfterReorder() {
1267
+ var _b, _c;
1268
+ // If the dragged element is the selected element, use the new index
1269
+ if (__classPrivateFieldGet(this, _selectedIndex, "f") === this.draggedElementIndex) {
1270
+ __classPrivateFieldSet(this, _selectedIndex, this.draggedElementNewIndex, "f");
1271
+ }
1272
+ // Dragged element:
1273
+ // - Started: Before the selected index
1274
+ // - Ended: After the selected index or in the same position
1275
+ else if (this.draggedElementIndex < __classPrivateFieldGet(this, _selectedIndex, "f") &&
1276
+ __classPrivateFieldGet(this, _selectedIndex, "f") <= this.draggedElementNewIndex) {
1277
+ __classPrivateFieldSet(this, _selectedIndex, (_b = __classPrivateFieldGet(this, _selectedIndex, "f"), _b--, _b), "f");
1278
+ }
1279
+ // Dragged element:
1280
+ // - Started: After the selected index
1281
+ // - Ended: Before the selected index or in the same position
1282
+ else if (__classPrivateFieldGet(this, _selectedIndex, "f") < this.draggedElementIndex &&
1283
+ this.draggedElementNewIndex <= __classPrivateFieldGet(this, _selectedIndex, "f")) {
1284
+ __classPrivateFieldSet(this, _selectedIndex, (_c = __classPrivateFieldGet(this, _selectedIndex, "f"), _c++, _c), "f");
1285
+ }
1286
+ }
1287
+ componentWillLoad() {
1288
+ __classPrivateFieldGet(this, _initializeState, "f").call(this, this.type);
1289
+ }
1290
+ render() {
1291
+ if (this.items == null || this.items.length === 0) {
1292
+ return "";
1293
+ }
1294
+ const draggedIndex = this.draggedElementIndex;
1295
+ const draggedElement = this.items[draggedIndex];
1296
+ const thereAreShiftedElementsInPreview = !this.hasCrossedBoundaries &&
1297
+ this.draggedElementNewIndex !== -1 &&
1298
+ this.draggedElementIndex !== this.draggedElementNewIndex;
1299
+ return (index.h(index.Host, { class: `ch-tab-direction--${__classPrivateFieldGet(this, _direction, "f")}` }, __classPrivateFieldGet(this, _renderTabBar, "f").call(this, thereAreShiftedElementsInPreview), __classPrivateFieldGet(this, _renderTabPages, "f").call(this), draggedIndex !== -1 && __classPrivateFieldGet(this, _renderDragPreview, "f").call(this, draggedElement)));
1300
+ }
1301
+ static get watchers() { return {
1302
+ "items": ["handleItemsChange"],
1303
+ "selectedId": ["handleSelectedIdChange"],
1304
+ "type": ["handleTypeChange"]
1305
+ }; }
1306
+ },
1307
+ _cancelId = new WeakMap(),
1308
+ _classes = new WeakMap(),
1309
+ _parts = new WeakMap(),
1310
+ _direction = new WeakMap(),
1311
+ _selectedIndex = new WeakMap(),
1312
+ _showCaptions = new WeakMap(),
1313
+ _lastDragEvent = new WeakMap(),
1314
+ _needForRAF = new WeakMap(),
1315
+ _initialMousePosition = new WeakMap(),
1316
+ _itemSizes = new WeakMap(),
1317
+ _mouseBoundingLimits = new WeakMap(),
1318
+ _renderedPages = new WeakMap(),
1319
+ _dragPreviewRef = new WeakMap(),
1320
+ _tabListRef = new WeakMap(),
1321
+ _tabPageRef = new WeakMap(),
1322
+ _keyEvents = new WeakMap(),
1323
+ _handleSelectedItemChange = new WeakMap(),
1324
+ _updateRenderedPages = new WeakMap(),
1325
+ _handleItemDblClick = new WeakMap(),
1326
+ _handleDragStart = new WeakMap(),
1327
+ _handleDragEnd = new WeakMap(),
1328
+ _handleItemDrag = new WeakMap(),
1329
+ _handleClose = new WeakMap(),
1330
+ _handleTabFocus = new WeakMap(),
1331
+ _imgRender = new WeakMap(),
1332
+ _renderTabBar = new WeakMap(),
1333
+ _renderTabPages = new WeakMap(),
1334
+ _renderDragPreview = new WeakMap(),
1335
+ _initializeState = new WeakMap(),
1336
+ _setClassesAndParts = new WeakMap(),
1337
+ _a);
391
1338
  ChTab.style = tabCss;
392
1339
 
393
1340
  exports.ch_flexible_layout = ChFlexibleLayout;