@genexus/genexus-ide-ui 1.0.17 → 1.0.18

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 (362) hide show
  1. package/dist/cjs/{assets-manager-64c42a1e.js → assets-manager-4b67360e.js} +143 -69
  2. package/dist/cjs/assets-manager-4b67360e.js.map +1 -0
  3. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  4. package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js +1 -1
  5. package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js.map +1 -1
  6. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +1 -1
  7. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js.map +1 -1
  8. package/dist/cjs/gx-ide-bpm-assign-roles.cjs.entry.js +1 -1
  9. package/dist/cjs/gx-ide-bpm-assign-roles.cjs.entry.js.map +1 -1
  10. package/dist/cjs/gx-ide-bpm-export-xpdl.cjs.entry.js +1 -1
  11. package/dist/cjs/gx-ide-bpm-export-xpdl.cjs.entry.js.map +1 -1
  12. package/dist/cjs/gx-ide-bpm-import-files.cjs.entry.js +1 -1
  13. package/dist/cjs/gx-ide-bpm-import-files.cjs.entry.js.map +1 -1
  14. package/dist/cjs/gx-ide-bpm-import-gxpm.cjs.entry.js +1 -1
  15. package/dist/cjs/gx-ide-bpm-import-gxpm.cjs.entry.js.map +1 -1
  16. package/dist/cjs/gx-ide-bpm-objects-selector.cjs.entry.js +1 -1
  17. package/dist/cjs/gx-ide-bpm-objects-selector.cjs.entry.js.map +1 -1
  18. package/dist/cjs/gx-ide-bpm-timer-duration.cjs.entry.js +1 -1
  19. package/dist/cjs/gx-ide-bpm-timer-duration.cjs.entry.js.map +1 -1
  20. package/dist/cjs/gx-ide-card.cjs.entry.js +1 -1
  21. package/dist/cjs/gx-ide-card.cjs.entry.js.map +1 -1
  22. package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js +1 -1
  23. package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js.map +1 -1
  24. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +1 -1
  25. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
  26. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +2 -2
  27. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js.map +1 -1
  28. package/dist/cjs/gx-ide-data-selector.cjs.entry.js +2 -2
  29. package/dist/cjs/gx-ide-data-selector.cjs.entry.js.map +1 -1
  30. package/dist/cjs/gx-ide-design-import.cjs.entry.js +1 -1
  31. package/dist/cjs/gx-ide-design-import.cjs.entry.js.map +1 -1
  32. package/dist/cjs/gx-ide-edit-module-server.cjs.entry.js +1 -1
  33. package/dist/cjs/gx-ide-edit-module-server.cjs.entry.js.map +1 -1
  34. package/dist/cjs/gx-ide-empty-state_2.cjs.entry.js +1 -1
  35. package/dist/cjs/gx-ide-empty-state_2.cjs.entry.js.map +1 -1
  36. package/dist/cjs/gx-ide-entity-selector.cjs.entry.js +1 -1
  37. package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js +1 -1
  38. package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js.map +1 -1
  39. package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js +1 -1
  40. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +1 -1
  41. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js.map +1 -1
  42. package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js +1 -1
  43. package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js.map +1 -1
  44. package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js +2 -2
  45. package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js.map +1 -1
  46. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js +2 -2
  47. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js.map +1 -1
  48. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +1 -1
  49. package/dist/cjs/gx-ide-new-object.cjs.entry.js +284 -169
  50. package/dist/cjs/gx-ide-new-object.cjs.entry.js.map +1 -1
  51. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +2 -2
  52. package/dist/cjs/gx-ide-object-selector.cjs.entry.js.map +1 -1
  53. package/dist/cjs/gx-ide-recent-news.cjs.entry.js +2 -2
  54. package/dist/cjs/gx-ide-recent-news.cjs.entry.js.map +1 -1
  55. package/dist/cjs/gx-ide-references.cjs.entry.js +1 -1
  56. package/dist/cjs/gx-ide-references.cjs.entry.js.map +1 -1
  57. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +1 -1
  58. package/dist/cjs/gx-ide-share-kb.cjs.entry.js.map +1 -1
  59. package/dist/cjs/gx-ide-start-page.cjs.entry.js +2 -2
  60. package/dist/cjs/gx-ide-start-page.cjs.entry.js.map +1 -1
  61. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +1 -1
  62. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
  63. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +1 -1
  64. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js.map +1 -1
  65. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +1 -1
  66. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js.map +1 -1
  67. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +1 -1
  68. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js.map +1 -1
  69. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +1 -1
  70. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js.map +1 -1
  71. package/dist/cjs/gx-ide-template.cjs.entry.js +1 -1
  72. package/dist/cjs/gx-ide-template.cjs.entry.js.map +1 -1
  73. package/dist/cjs/gx-ide-wf-settings.cjs.entry.js +1 -1
  74. package/dist/cjs/gx-ide-wf-settings.cjs.entry.js.map +1 -1
  75. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +1 -1
  76. package/dist/cjs/gx-ide-ww-images.cjs.entry.js.map +1 -1
  77. package/dist/cjs/loader.cjs.js +1 -1
  78. package/dist/collection/common/chameleon-helpers.js +7 -0
  79. package/dist/collection/common/chameleon-helpers.js.map +1 -0
  80. package/dist/collection/components/_helpers/card/card.css +8 -0
  81. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.css +8 -0
  82. package/dist/collection/components/_helpers/list-selector/list-selector.css +8 -0
  83. package/dist/collection/components/_starting-template/template.css +8 -0
  84. package/dist/collection/components/ai-assistant/ai-assistant.css +8 -0
  85. package/dist/collection/components/bpm/application-declaration/bpm-app-declaration.css +16 -0
  86. package/dist/collection/components/bpm/assign-roles/bpm-assign-roles.css +8 -0
  87. package/dist/collection/components/bpm/export-xpdl/bpm-export-xpdl.css +8 -0
  88. package/dist/collection/components/bpm/import-files/bpm-import-files.css +8 -0
  89. package/dist/collection/components/bpm/import-gxpm/bpm-import-gxpm.css +8 -0
  90. package/dist/collection/components/bpm/objects-selector/bpm-objects-selector.css +8 -0
  91. package/dist/collection/components/bpm/timer-duration/bpm-timer-duration.css +8 -0
  92. package/dist/collection/components/connect-gx-server/connect-gx-server.css +8 -0
  93. package/dist/collection/components/create-kb-from-server/create-kb-from-server.css +8 -0
  94. package/dist/collection/components/dashboard-home/dashboard-home.css +8 -0
  95. package/dist/collection/components/data-selector/data-selector.css +8 -0
  96. package/dist/collection/components/design-import/design-import.css +8 -0
  97. package/dist/collection/components/gam-installation-settings/gam-installation-settings.css +8 -0
  98. package/dist/collection/components/kb-manager-import/kb-manager-import.css +16 -0
  99. package/dist/collection/components/modules/edit-module-server/edit-module-server.css +8 -0
  100. package/dist/collection/components/modules/manage-module-references/manage-module-references.css +8 -0
  101. package/dist/collection/components/modules/manage-module-references-v2/manage-module-references.css +8 -0
  102. package/dist/collection/components/new-object/gx-ide-assets/new-object/langs/new-object.lang.en.json +2 -0
  103. package/dist/collection/components/new-object/gx-ide-assets/new-object/shortcuts.json +3 -3
  104. package/dist/collection/components/new-object/helpers.js +33 -0
  105. package/dist/collection/components/new-object/helpers.js.map +1 -0
  106. package/dist/collection/components/new-object/new-object.css +22 -622
  107. package/dist/collection/components/new-object/new-object.js +348 -296
  108. package/dist/collection/components/new-object/new-object.js.map +1 -1
  109. package/dist/collection/components/object-selector/object-selector.css +8 -0
  110. package/dist/collection/components/references/references.css +8 -0
  111. package/dist/collection/components/share-kb/share-kb.css +8 -0
  112. package/dist/collection/components/start-page/recent-news.css +8 -0
  113. package/dist/collection/components/start-page/start-page.css +8 -0
  114. package/dist/collection/components/team-dev/commit/commit.css +16 -0
  115. package/dist/collection/components/team-dev/select-recent-comment/select-recent-comment.css +8 -0
  116. package/dist/collection/components/team-dev/update/update.css +16 -0
  117. package/dist/collection/components/team-dev/update-partial-selection/update-partial-selection.css +8 -0
  118. package/dist/collection/components/team-dev/update-to-revision/update-to-revision.css +8 -0
  119. package/dist/collection/components/wf-settings/wf-settings.css +8 -0
  120. package/dist/collection/components/ww-images/ww-images.css +16 -0
  121. package/dist/components/assets-manager.js +142 -68
  122. package/dist/components/assets-manager.js.map +1 -1
  123. package/dist/components/bpm-objects-selector.js +1 -1
  124. package/dist/components/bpm-objects-selector.js.map +1 -1
  125. package/dist/components/gx-ide-ai-assistant.js +1 -1
  126. package/dist/components/gx-ide-ai-assistant.js.map +1 -1
  127. package/dist/components/gx-ide-bpm-app-declaration.js +1 -1
  128. package/dist/components/gx-ide-bpm-app-declaration.js.map +1 -1
  129. package/dist/components/gx-ide-bpm-assign-roles.js +1 -1
  130. package/dist/components/gx-ide-bpm-assign-roles.js.map +1 -1
  131. package/dist/components/gx-ide-bpm-export-xpdl.js +1 -1
  132. package/dist/components/gx-ide-bpm-export-xpdl.js.map +1 -1
  133. package/dist/components/gx-ide-bpm-import-files.js +1 -1
  134. package/dist/components/gx-ide-bpm-import-files.js.map +1 -1
  135. package/dist/components/gx-ide-bpm-import-gxpm.js +1 -1
  136. package/dist/components/gx-ide-bpm-import-gxpm.js.map +1 -1
  137. package/dist/components/gx-ide-bpm-timer-duration.js +1 -1
  138. package/dist/components/gx-ide-bpm-timer-duration.js.map +1 -1
  139. package/dist/components/gx-ide-card.js +1 -1
  140. package/dist/components/gx-ide-card.js.map +1 -1
  141. package/dist/components/gx-ide-connect-gx-server.js +1 -1
  142. package/dist/components/gx-ide-connect-gx-server.js.map +1 -1
  143. package/dist/components/gx-ide-create-kb-from-server.js +1 -1
  144. package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
  145. package/dist/components/gx-ide-dashboard-home.js +1 -1
  146. package/dist/components/gx-ide-dashboard-home.js.map +1 -1
  147. package/dist/components/gx-ide-data-selector.js +1 -1
  148. package/dist/components/gx-ide-data-selector.js.map +1 -1
  149. package/dist/components/gx-ide-design-import.js +1 -1
  150. package/dist/components/gx-ide-design-import.js.map +1 -1
  151. package/dist/components/gx-ide-edit-module-server.js +1 -1
  152. package/dist/components/gx-ide-edit-module-server.js.map +1 -1
  153. package/dist/components/gx-ide-empty-state2.js +1 -1
  154. package/dist/components/gx-ide-empty-state2.js.map +1 -1
  155. package/dist/components/gx-ide-gam-installation-settings.js +1 -1
  156. package/dist/components/gx-ide-gam-installation-settings.js.map +1 -1
  157. package/dist/components/gx-ide-kb-manager-import.js +1 -1
  158. package/dist/components/gx-ide-kb-manager-import.js.map +1 -1
  159. package/dist/components/gx-ide-manage-module-references-v2.js +1 -1
  160. package/dist/components/gx-ide-manage-module-references-v2.js.map +1 -1
  161. package/dist/components/gx-ide-manage-module-references.js +1 -1
  162. package/dist/components/gx-ide-manage-module-references.js.map +1 -1
  163. package/dist/components/gx-ide-new-object.js +298 -192
  164. package/dist/components/gx-ide-new-object.js.map +1 -1
  165. package/dist/components/gx-ide-object-selector.js +1 -1
  166. package/dist/components/gx-ide-object-selector.js.map +1 -1
  167. package/dist/components/gx-ide-references.js +1 -1
  168. package/dist/components/gx-ide-references.js.map +1 -1
  169. package/dist/components/gx-ide-share-kb.js +1 -1
  170. package/dist/components/gx-ide-share-kb.js.map +1 -1
  171. package/dist/components/gx-ide-start-page.js +1 -1
  172. package/dist/components/gx-ide-start-page.js.map +1 -1
  173. package/dist/components/gx-ide-team-dev-commit.js +1 -1
  174. package/dist/components/gx-ide-team-dev-commit.js.map +1 -1
  175. package/dist/components/gx-ide-team-dev-select-recent-comment.js +1 -1
  176. package/dist/components/gx-ide-team-dev-select-recent-comment.js.map +1 -1
  177. package/dist/components/gx-ide-team-dev-update-partial-selection.js +1 -1
  178. package/dist/components/gx-ide-team-dev-update-partial-selection.js.map +1 -1
  179. package/dist/components/gx-ide-team-dev-update-to-revision.js +1 -1
  180. package/dist/components/gx-ide-team-dev-update-to-revision.js.map +1 -1
  181. package/dist/components/gx-ide-team-dev-update.js +1 -1
  182. package/dist/components/gx-ide-team-dev-update.js.map +1 -1
  183. package/dist/components/gx-ide-template.js +1 -1
  184. package/dist/components/gx-ide-template.js.map +1 -1
  185. package/dist/components/gx-ide-wf-settings.js +1 -1
  186. package/dist/components/gx-ide-wf-settings.js.map +1 -1
  187. package/dist/components/gx-ide-ww-images.js +1 -1
  188. package/dist/components/gx-ide-ww-images.js.map +1 -1
  189. package/dist/components/list-selector.js +1 -1
  190. package/dist/components/list-selector.js.map +1 -1
  191. package/dist/components/recent-news.js +1 -1
  192. package/dist/components/recent-news.js.map +1 -1
  193. package/dist/esm/{assets-manager-120996e9.js → assets-manager-251883e0.js} +143 -69
  194. package/dist/esm/assets-manager-251883e0.js.map +1 -0
  195. package/dist/esm/genexus-ide-ui.js +1 -1
  196. package/dist/esm/gx-ide-ai-assistant.entry.js +1 -1
  197. package/dist/esm/gx-ide-ai-assistant.entry.js.map +1 -1
  198. package/dist/esm/gx-ide-bpm-app-declaration.entry.js +1 -1
  199. package/dist/esm/gx-ide-bpm-app-declaration.entry.js.map +1 -1
  200. package/dist/esm/gx-ide-bpm-assign-roles.entry.js +1 -1
  201. package/dist/esm/gx-ide-bpm-assign-roles.entry.js.map +1 -1
  202. package/dist/esm/gx-ide-bpm-export-xpdl.entry.js +1 -1
  203. package/dist/esm/gx-ide-bpm-export-xpdl.entry.js.map +1 -1
  204. package/dist/esm/gx-ide-bpm-import-files.entry.js +1 -1
  205. package/dist/esm/gx-ide-bpm-import-files.entry.js.map +1 -1
  206. package/dist/esm/gx-ide-bpm-import-gxpm.entry.js +1 -1
  207. package/dist/esm/gx-ide-bpm-import-gxpm.entry.js.map +1 -1
  208. package/dist/esm/gx-ide-bpm-objects-selector.entry.js +1 -1
  209. package/dist/esm/gx-ide-bpm-objects-selector.entry.js.map +1 -1
  210. package/dist/esm/gx-ide-bpm-timer-duration.entry.js +1 -1
  211. package/dist/esm/gx-ide-bpm-timer-duration.entry.js.map +1 -1
  212. package/dist/esm/gx-ide-card.entry.js +1 -1
  213. package/dist/esm/gx-ide-card.entry.js.map +1 -1
  214. package/dist/esm/gx-ide-connect-gx-server.entry.js +1 -1
  215. package/dist/esm/gx-ide-connect-gx-server.entry.js.map +1 -1
  216. package/dist/esm/gx-ide-create-kb-from-server.entry.js +1 -1
  217. package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
  218. package/dist/esm/gx-ide-dashboard-home.entry.js +2 -2
  219. package/dist/esm/gx-ide-dashboard-home.entry.js.map +1 -1
  220. package/dist/esm/gx-ide-data-selector.entry.js +2 -2
  221. package/dist/esm/gx-ide-data-selector.entry.js.map +1 -1
  222. package/dist/esm/gx-ide-design-import.entry.js +1 -1
  223. package/dist/esm/gx-ide-design-import.entry.js.map +1 -1
  224. package/dist/esm/gx-ide-edit-module-server.entry.js +1 -1
  225. package/dist/esm/gx-ide-edit-module-server.entry.js.map +1 -1
  226. package/dist/esm/gx-ide-empty-state_2.entry.js +1 -1
  227. package/dist/esm/gx-ide-empty-state_2.entry.js.map +1 -1
  228. package/dist/esm/gx-ide-entity-selector.entry.js +1 -1
  229. package/dist/esm/gx-ide-gam-installation-settings.entry.js +1 -1
  230. package/dist/esm/gx-ide-gam-installation-settings.entry.js.map +1 -1
  231. package/dist/esm/gx-ide-kb-manager-export.entry.js +1 -1
  232. package/dist/esm/gx-ide-kb-manager-import.entry.js +1 -1
  233. package/dist/esm/gx-ide-kb-manager-import.entry.js.map +1 -1
  234. package/dist/esm/gx-ide-list-selector_2.entry.js +1 -1
  235. package/dist/esm/gx-ide-list-selector_2.entry.js.map +1 -1
  236. package/dist/esm/gx-ide-manage-module-references-v2.entry.js +2 -2
  237. package/dist/esm/gx-ide-manage-module-references-v2.entry.js.map +1 -1
  238. package/dist/esm/gx-ide-manage-module-references.entry.js +2 -2
  239. package/dist/esm/gx-ide-manage-module-references.entry.js.map +1 -1
  240. package/dist/esm/gx-ide-new-kb.entry.js +1 -1
  241. package/dist/esm/gx-ide-new-object.entry.js +284 -169
  242. package/dist/esm/gx-ide-new-object.entry.js.map +1 -1
  243. package/dist/esm/gx-ide-object-selector.entry.js +2 -2
  244. package/dist/esm/gx-ide-object-selector.entry.js.map +1 -1
  245. package/dist/esm/gx-ide-recent-news.entry.js +2 -2
  246. package/dist/esm/gx-ide-recent-news.entry.js.map +1 -1
  247. package/dist/esm/gx-ide-references.entry.js +1 -1
  248. package/dist/esm/gx-ide-references.entry.js.map +1 -1
  249. package/dist/esm/gx-ide-share-kb.entry.js +1 -1
  250. package/dist/esm/gx-ide-share-kb.entry.js.map +1 -1
  251. package/dist/esm/gx-ide-start-page.entry.js +2 -2
  252. package/dist/esm/gx-ide-start-page.entry.js.map +1 -1
  253. package/dist/esm/gx-ide-team-dev-commit.entry.js +1 -1
  254. package/dist/esm/gx-ide-team-dev-commit.entry.js.map +1 -1
  255. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +1 -1
  256. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js.map +1 -1
  257. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +1 -1
  258. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js.map +1 -1
  259. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +1 -1
  260. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js.map +1 -1
  261. package/dist/esm/gx-ide-team-dev-update.entry.js +1 -1
  262. package/dist/esm/gx-ide-team-dev-update.entry.js.map +1 -1
  263. package/dist/esm/gx-ide-template.entry.js +1 -1
  264. package/dist/esm/gx-ide-template.entry.js.map +1 -1
  265. package/dist/esm/gx-ide-wf-settings.entry.js +1 -1
  266. package/dist/esm/gx-ide-wf-settings.entry.js.map +1 -1
  267. package/dist/esm/gx-ide-ww-images.entry.js +1 -1
  268. package/dist/esm/gx-ide-ww-images.entry.js.map +1 -1
  269. package/dist/esm/loader.js +1 -1
  270. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  271. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  272. package/dist/genexus-ide-ui/gx-ide-assets/new-object/langs/new-object.lang.en.json +2 -0
  273. package/dist/genexus-ide-ui/gx-ide-assets/new-object/shortcuts.json +3 -3
  274. package/dist/genexus-ide-ui/{p-faa6fc25.entry.js → p-01581437.entry.js} +2 -2
  275. package/dist/genexus-ide-ui/{p-eb52d685.entry.js → p-037ea55d.entry.js} +2 -2
  276. package/dist/genexus-ide-ui/{p-e4cbd23c.entry.js → p-0a1167a6.entry.js} +3 -3
  277. package/dist/genexus-ide-ui/{p-1ad7189f.entry.js → p-0d5fc7ca.entry.js} +2 -2
  278. package/dist/genexus-ide-ui/{p-ad92d701.entry.js → p-26b2037d.entry.js} +2 -2
  279. package/dist/genexus-ide-ui/{p-99d52e11.entry.js → p-39792ac8.entry.js} +2 -2
  280. package/dist/genexus-ide-ui/{p-4546fa05.entry.js → p-3b3f5ecb.entry.js} +3 -3
  281. package/dist/genexus-ide-ui/{p-edffe8d7.entry.js → p-3f9f8691.entry.js} +2 -2
  282. package/dist/genexus-ide-ui/{p-424ed874.entry.js → p-4ce47bcd.entry.js} +2 -2
  283. package/dist/genexus-ide-ui/{p-6df9fab1.js → p-58e7d1ab.js} +143 -69
  284. package/dist/genexus-ide-ui/p-58e7d1ab.js.map +1 -0
  285. package/dist/genexus-ide-ui/{p-58e33dda.entry.js → p-5961ae84.entry.js} +2 -2
  286. package/dist/genexus-ide-ui/{p-c484250c.entry.js → p-68605d06.entry.js} +20 -20
  287. package/dist/genexus-ide-ui/p-6b8f6569.entry.js +418 -0
  288. package/dist/genexus-ide-ui/p-6b8f6569.entry.js.map +1 -0
  289. package/dist/genexus-ide-ui/{p-e0da6770.entry.js → p-7bbefdcc.entry.js} +2 -2
  290. package/dist/genexus-ide-ui/{p-1d56cc71.entry.js → p-82032e9c.entry.js} +2 -2
  291. package/dist/genexus-ide-ui/{p-b967c6e3.entry.js → p-9346bb01.entry.js} +2 -2
  292. package/dist/genexus-ide-ui/{p-8da18e59.entry.js → p-940c83a6.entry.js} +2 -2
  293. package/dist/genexus-ide-ui/{p-a7be549c.entry.js → p-95c31c66.entry.js} +2 -2
  294. package/dist/genexus-ide-ui/{p-241f3d69.entry.js → p-98b5b178.entry.js} +2 -2
  295. package/dist/genexus-ide-ui/{p-8b9cf93c.entry.js → p-a4a56375.entry.js} +2 -2
  296. package/dist/genexus-ide-ui/{p-bb1d0ab8.entry.js → p-b113c5b4.entry.js} +5 -5
  297. package/dist/genexus-ide-ui/{p-7f08a5f8.entry.js → p-b1f6fdd6.entry.js} +2 -2
  298. package/dist/genexus-ide-ui/{p-a29d27ed.entry.js → p-b3a336b8.entry.js} +2 -2
  299. package/dist/genexus-ide-ui/{p-9a9fdfc0.entry.js → p-bfbce8fb.entry.js} +2 -2
  300. package/dist/genexus-ide-ui/{p-70588f0b.entry.js → p-c2c6f3f0.entry.js} +2 -2
  301. package/dist/genexus-ide-ui/p-ca8b0024.entry.js +683 -0
  302. package/dist/genexus-ide-ui/{p-36cfb4c0.entry.js → p-cfd29ed2.entry.js} +2 -2
  303. package/dist/genexus-ide-ui/{p-d703bff2.entry.js → p-cff74f8a.entry.js} +3 -3
  304. package/dist/genexus-ide-ui/{p-85f7f92d.entry.js → p-d15717c5.entry.js} +3 -3
  305. package/dist/genexus-ide-ui/{p-4bf55012.entry.js → p-d5d0ed5e.entry.js} +2 -2
  306. package/dist/genexus-ide-ui/{p-c10d7879.entry.js → p-dffecb40.entry.js} +2 -2
  307. package/dist/genexus-ide-ui/{p-35c9edc0.entry.js → p-e08213ef.entry.js} +3 -3
  308. package/dist/genexus-ide-ui/{p-dbf8b06e.entry.js → p-e7bb68ec.entry.js} +2 -2
  309. package/dist/genexus-ide-ui/{p-d1a76638.entry.js → p-ec6ea5d2.entry.js} +2 -2
  310. package/dist/genexus-ide-ui/{p-a5d5fb4d.entry.js → p-f06147d7.entry.js} +3 -3
  311. package/dist/genexus-ide-ui/{p-15711eed.entry.js → p-f471d180.entry.js} +2 -2
  312. package/dist/genexus-ide-ui/{p-be640a8a.entry.js → p-f96614f3.entry.js} +13 -13
  313. package/dist/genexus-ide-ui/{p-e54bdad1.entry.js → p-fae9bd6c.entry.js} +10 -10
  314. package/dist/genexus-ide-ui/{p-89a7d88f.entry.js → p-fc64d088.entry.js} +2 -2
  315. package/dist/types/common/chameleon-helpers.d.ts +5 -0
  316. package/dist/types/components/new-object/helpers.d.ts +6 -0
  317. package/dist/types/components/new-object/new-object.d.ts +42 -75
  318. package/dist/types/components.d.ts +10 -20
  319. package/package.json +5 -5
  320. package/dist/cjs/assets-manager-64c42a1e.js.map +0 -1
  321. package/dist/esm/assets-manager-120996e9.js.map +0 -1
  322. package/dist/genexus-ide-ui/p-6df9fab1.js.map +0 -1
  323. package/dist/genexus-ide-ui/p-88fff4f3.entry.js +0 -344
  324. package/dist/genexus-ide-ui/p-88fff4f3.entry.js.map +0 -1
  325. package/dist/genexus-ide-ui/p-c2fdb419.entry.js +0 -683
  326. /package/dist/genexus-ide-ui/{p-faa6fc25.entry.js.map → p-01581437.entry.js.map} +0 -0
  327. /package/dist/genexus-ide-ui/{p-eb52d685.entry.js.map → p-037ea55d.entry.js.map} +0 -0
  328. /package/dist/genexus-ide-ui/{p-e4cbd23c.entry.js.map → p-0a1167a6.entry.js.map} +0 -0
  329. /package/dist/genexus-ide-ui/{p-1ad7189f.entry.js.map → p-0d5fc7ca.entry.js.map} +0 -0
  330. /package/dist/genexus-ide-ui/{p-ad92d701.entry.js.map → p-26b2037d.entry.js.map} +0 -0
  331. /package/dist/genexus-ide-ui/{p-99d52e11.entry.js.map → p-39792ac8.entry.js.map} +0 -0
  332. /package/dist/genexus-ide-ui/{p-4546fa05.entry.js.map → p-3b3f5ecb.entry.js.map} +0 -0
  333. /package/dist/genexus-ide-ui/{p-edffe8d7.entry.js.map → p-3f9f8691.entry.js.map} +0 -0
  334. /package/dist/genexus-ide-ui/{p-424ed874.entry.js.map → p-4ce47bcd.entry.js.map} +0 -0
  335. /package/dist/genexus-ide-ui/{p-58e33dda.entry.js.map → p-5961ae84.entry.js.map} +0 -0
  336. /package/dist/genexus-ide-ui/{p-c484250c.entry.js.map → p-68605d06.entry.js.map} +0 -0
  337. /package/dist/genexus-ide-ui/{p-e0da6770.entry.js.map → p-7bbefdcc.entry.js.map} +0 -0
  338. /package/dist/genexus-ide-ui/{p-1d56cc71.entry.js.map → p-82032e9c.entry.js.map} +0 -0
  339. /package/dist/genexus-ide-ui/{p-b967c6e3.entry.js.map → p-9346bb01.entry.js.map} +0 -0
  340. /package/dist/genexus-ide-ui/{p-8da18e59.entry.js.map → p-940c83a6.entry.js.map} +0 -0
  341. /package/dist/genexus-ide-ui/{p-a7be549c.entry.js.map → p-95c31c66.entry.js.map} +0 -0
  342. /package/dist/genexus-ide-ui/{p-241f3d69.entry.js.map → p-98b5b178.entry.js.map} +0 -0
  343. /package/dist/genexus-ide-ui/{p-8b9cf93c.entry.js.map → p-a4a56375.entry.js.map} +0 -0
  344. /package/dist/genexus-ide-ui/{p-bb1d0ab8.entry.js.map → p-b113c5b4.entry.js.map} +0 -0
  345. /package/dist/genexus-ide-ui/{p-7f08a5f8.entry.js.map → p-b1f6fdd6.entry.js.map} +0 -0
  346. /package/dist/genexus-ide-ui/{p-a29d27ed.entry.js.map → p-b3a336b8.entry.js.map} +0 -0
  347. /package/dist/genexus-ide-ui/{p-9a9fdfc0.entry.js.map → p-bfbce8fb.entry.js.map} +0 -0
  348. /package/dist/genexus-ide-ui/{p-70588f0b.entry.js.map → p-c2c6f3f0.entry.js.map} +0 -0
  349. /package/dist/genexus-ide-ui/{p-c2fdb419.entry.js.map → p-ca8b0024.entry.js.map} +0 -0
  350. /package/dist/genexus-ide-ui/{p-36cfb4c0.entry.js.map → p-cfd29ed2.entry.js.map} +0 -0
  351. /package/dist/genexus-ide-ui/{p-d703bff2.entry.js.map → p-cff74f8a.entry.js.map} +0 -0
  352. /package/dist/genexus-ide-ui/{p-85f7f92d.entry.js.map → p-d15717c5.entry.js.map} +0 -0
  353. /package/dist/genexus-ide-ui/{p-4bf55012.entry.js.map → p-d5d0ed5e.entry.js.map} +0 -0
  354. /package/dist/genexus-ide-ui/{p-c10d7879.entry.js.map → p-dffecb40.entry.js.map} +0 -0
  355. /package/dist/genexus-ide-ui/{p-35c9edc0.entry.js.map → p-e08213ef.entry.js.map} +0 -0
  356. /package/dist/genexus-ide-ui/{p-dbf8b06e.entry.js.map → p-e7bb68ec.entry.js.map} +0 -0
  357. /package/dist/genexus-ide-ui/{p-d1a76638.entry.js.map → p-ec6ea5d2.entry.js.map} +0 -0
  358. /package/dist/genexus-ide-ui/{p-a5d5fb4d.entry.js.map → p-f06147d7.entry.js.map} +0 -0
  359. /package/dist/genexus-ide-ui/{p-15711eed.entry.js.map → p-f471d180.entry.js.map} +0 -0
  360. /package/dist/genexus-ide-ui/{p-be640a8a.entry.js.map → p-f96614f3.entry.js.map} +0 -0
  361. /package/dist/genexus-ide-ui/{p-e54bdad1.entry.js.map → p-fae9bd6c.entry.js.map} +0 -0
  362. /package/dist/genexus-ide-ui/{p-89a7d88f.entry.js.map → p-fc64d088.entry.js.map} +0 -0
@@ -1,6 +1,6 @@
1
1
  import { r as t, c as e, h as i, H as o, g as s } from "./p-aaed592c.js";
2
2
 
3
- import { g as r } from "./p-6df9fab1.js";
3
+ import { g as r } from "./p-58e7d1ab.js";
4
4
 
5
5
  import { L as n } from "./p-74d59062.js";
6
6
 
@@ -157,4 +157,4 @@ m = new WeakMap;
157
157
  _.style = a;
158
158
 
159
159
  export { _ as gx_ide_entity_selector };
160
- //# sourceMappingURL=p-58e33dda.entry.js.map
160
+ //# sourceMappingURL=p-5961ae84.entry.js.map
@@ -1,15 +1,15 @@
1
- import { r as e, c as t, h as r, H as a, g as o } from "./p-aaed592c.js";
1
+ import { r as e, c as r, h as t, H as a, g as o } from "./p-aaed592c.js";
2
2
 
3
3
  import { c as i } from "./p-78b90603.js";
4
4
 
5
5
  import { L as s } from "./p-74d59062.js";
6
6
 
7
- const l = ":root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-01--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-02{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-02--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--color-on-primary)}.gxg-title-03{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-03--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-04{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-04--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-05{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-05--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable)}.gxg-text--negative{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text--gray{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--dimmed)}.gxg-quote{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);font-style:italic}.gxg-quote--negative{color:var(--ds-base-font-color--negative)}.gxg-link{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--ds-base-font-color--link-hover)}.gxg-link:active{color:var(--ds-base-font-color--link-active)}.gxg-link-gray{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed)}.gxg-link-gray:hover{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed);filter:brightness(1.4)}.gxg-alert-error{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--error);display:inline-block}.gxg-alert-warning{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--warning);display:inline-block}.gxg-alert-success{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--success);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--ds-base-font-family-primary);font-weight:var(--gxg-label-font-weight);font-size:var(--gxg-label-font-size);color:var(--gxg-label-color);text-align:center;line-height:1.455em;display:flex;align-items:center}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-scrollbar{}.gxg-scrollbar::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gxg-scrollbar::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gxg-scrollbar::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}:host{display:grid;block-size:100%}.card-regular{background-color:var(--mer-surface__elevation--01);border:var(--mer-border__width--sm) solid var(--mer-border-color__on-elevation--01);border-radius:var(--mer-border__radius--md);padding:var(--mer-spacing--md) var(--mer-spacing--md);display:grid}.card-small{background-color:var(--mer-surface__elevation--02);border-radius:var(--mer-border__radius--sm);padding:var(--mer-spacing--sm) var(--mer-spacing--sm)}.card-small--actionable:hover{background-color:var(--mer-color__neutral-gray--600)}.card-small--actionable:active{background-color:var(--mer-color__neutral-gray--650)}.card-small:focus-visible{outline:var(--focus__outline-width) var(--focus__outline-style) var(--focus__outline-color);outline-offset:var(--focus__outline-offset)}.empty-state{block-size:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--mer-spacing--sm);text-align:center}.empty-state__title,.empty-state__button,.empty-state__link{max-inline-size:300px}.opacity-0{opacity:0}.opacity-1{opacity:1}.display-contents{display:contents}.gxi-hidden{display:none !important}.gxi-full-height{height:100%}.gxi-overflow-auto{overflow:auto}.gxi-display-flex{display:flex}.align-start{display:flex;align-items:start}.align-center{display:flex;align-items:center}.align-end{display:flex;align-items:end}.overflow-auto{overflow:auto}.justify-start{display:flex;justify-content:start}.justify-center{display:flex;justify-content:center}.justify-end{display:flex;justify-content:end}.grid{display:grid;grid-row-gap:var(--gx-ide-grid-row-gap);grid-column-gap:var(--gx-ide-grid-column-gap);grid-template-rows:auto}ch-grid-cell{display:flex}ch-grid{overflow:auto;height:100%}ch-grid-column{z-index:99;border-bottom:1px solid var(--mer-color__neutral-gray--800)}ch-grid-column:first-child{padding-inline-start:var(--gx-ide-container__padding) !important}ch-grid-column:last-child{padding-inline-end:var(--gx-ide-container__padding) !important}ch-grid-cell{--mer-spacing--xs:var(--gx-ide-container__padding)}.layout{display:grid;gap:var(--mer-spacing--lg);box-sizing:border-box}.layout--two-cols{grid-template-columns:1fr 1fr}.layout--space-above{padding-block-start:var(--mer-spacing--lg)}gxg-tabs{box-shadow:none}:host(.gx-ide-component){height:100% !important;display:flex !important;flex-direction:column !important}:host(:focus-within) gx-ide-top-bar::part(wrapper){background-color:var(--color-secondary-enabled)}.gx-ide-main-wrapper{color:var(--gx-ide-component-text-color);font-weight:var(--mer-font__weight--regular);font-size:var(--mer-font__size--xs);font-family:var(--mer-font-family--primary);height:100%;background-color:var(--gx-ide-component-background-color);display:flex;flex-direction:column;flex-grow:1;box-sizing:border-box}.gx-ide-main{flex-grow:1;overflow-y:auto;}.gx-ide-main::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-main::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-main::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-main::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-main::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.gx-ide-overflow{overflow-y:auto;}.gx-ide-overflow::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-overflow::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-overflow::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.tree-view-primary{font-size:var(--mer-font__size--2xs)}p{margin:0;font-size:var(--mer-font__size--xxs)}.buttons-container{display:flex;gap:var(--mer-spacing--xs)}:host{display:block}.options{max-width:50%;display:flex;flex-direction:column;gap:var(--gx-ide-form-items-gap)}.message-item{display:flex;align-items:start;gap:var(--mer-spacing--xs)}";
7
+ const l = ":root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-01--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-02{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-02--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--color-on-primary)}.gxg-title-03{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-03--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-04{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-04--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-05{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-05--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable)}.gxg-text--negative{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text--gray{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--dimmed)}.gxg-quote{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);font-style:italic}.gxg-quote--negative{color:var(--ds-base-font-color--negative)}.gxg-link{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--ds-base-font-color--link-hover)}.gxg-link:active{color:var(--ds-base-font-color--link-active)}.gxg-link-gray{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed)}.gxg-link-gray:hover{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed);filter:brightness(1.4)}.gxg-alert-error{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--error);display:inline-block}.gxg-alert-warning{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--warning);display:inline-block}.gxg-alert-success{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--success);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--ds-base-font-family-primary);font-weight:var(--gxg-label-font-weight);font-size:var(--gxg-label-font-size);color:var(--gxg-label-color);text-align:center;line-height:1.455em;display:flex;align-items:center}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-scrollbar{}.gxg-scrollbar::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gxg-scrollbar::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gxg-scrollbar::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}:host{display:grid;block-size:100%}.card-regular{background-color:var(--mer-surface__elevation--01);border:var(--mer-border__width--sm) solid var(--mer-border-color__on-elevation--01);border-radius:var(--mer-border__radius--md);padding:var(--mer-spacing--md) var(--mer-spacing--md);display:grid}.card-small{background-color:var(--mer-surface__elevation--02);border-radius:var(--mer-border__radius--sm);padding:var(--mer-spacing--sm) var(--mer-spacing--sm)}.card-small--actionable:hover{background-color:var(--mer-color__neutral-gray--600)}.card-small--actionable:active{background-color:var(--mer-color__neutral-gray--650)}.card-small:focus-visible{outline:var(--focus__outline-width) var(--focus__outline-style) var(--focus__outline-color);outline-offset:var(--focus__outline-offset)}.empty-state{block-size:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--mer-spacing--sm);text-align:center}.empty-state__title,.empty-state__button,.empty-state__link{max-inline-size:300px}.opacity-0{opacity:0}.opacity-1{opacity:1}.display-contents{display:contents}.gxi-hidden{display:none !important}.gxi-full-height{height:100%}.gxi-overflow-auto{overflow:auto}.gxi-display-flex{display:flex}.align-start{display:flex;align-items:start}.align-center{display:flex;align-items:center}.align-end{display:flex;align-items:end}.overflow-auto{overflow:auto}.justify-start{display:flex;justify-content:start}.justify-center{display:flex;justify-content:center}.justify-end{display:flex;justify-content:end}.grid{display:grid;grid-row-gap:var(--gx-ide-grid-row-gap);grid-column-gap:var(--gx-ide-grid-column-gap);grid-template-rows:auto}ch-grid-cell{display:flex}ch-grid{overflow:auto;height:100%}ch-grid-column{z-index:99;border-bottom:1px solid var(--mer-color__neutral-gray--800)}ch-grid-column:first-child{padding-inline-start:var(--gx-ide-container__padding) !important}ch-grid-column:last-child{padding-inline-end:var(--gx-ide-container__padding) !important}ch-grid-cell{--mer-spacing--xs:var(--gx-ide-container__padding)}.layout{display:grid;gap:var(--mer-spacing--lg);box-sizing:border-box}.layout--two-cols{grid-template-columns:1fr 1fr}.layout--space-above{padding-block-start:var(--mer-spacing--lg)}gxg-tabs{box-shadow:none}:host(.gx-ide-component){height:100% !important;display:flex !important;flex-direction:column !important}:host(:focus-within) gx-ide-top-bar::part(wrapper){background-color:var(--color-secondary-enabled)}.gx-ide-main-wrapper{color:var(--gx-ide-component-text-color);font-weight:var(--mer-font__weight--regular);font-size:var(--mer-font__size--xs);font-family:var(--mer-font-family--primary);height:100%;background-color:var(--gx-ide-component-background-color);display:flex;flex-direction:column;flex-grow:1;box-sizing:border-box}.gx-ide-main{flex-grow:1;overflow-y:auto;}.gx-ide-main::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-main::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-main::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-main::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-main::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.gx-ide-overflow{overflow-y:auto;}.gx-ide-overflow::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-overflow::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-overflow::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.tree-view-primary{font-size:var(--mer-font__size--2xs)}p{margin:0;font-size:var(--mer-font__size--xxs)}.buttons-container{display:flex;gap:var(--mer-spacing--xs)}:host{display:block}.options{max-width:50%;display:flex;flex-direction:column;gap:var(--gx-ide-form-items-gap)}.message-item{display:flex;align-items:start;gap:var(--mer-spacing--xs)}";
8
8
 
9
9
  const n = class {
10
- constructor(r) {
11
- e(this, r);
12
- this.componentDidRenderFirstTime = t(this, "componentDidRenderFirstTime", 7);
10
+ constructor(t) {
11
+ e(this, t);
12
+ this.componentDidRenderFirstTime = r(this, "componentDidRenderFirstTime", 7);
13
13
  this.renderedFirstTime = false;
14
14
  // 7.LISTENERS //
15
15
  // 8.PUBLIC METHODS API //
@@ -49,45 +49,45 @@ const n = class {
49
49
  }
50
50
  // 10.RENDER() FUNCTION //
51
51
  render() {
52
- return r(a, {
52
+ return t(a, {
53
53
  class: "gx-ide-component"
54
- }, r("div", {
54
+ }, t("div", {
55
55
  class: "gx-ide-main-wrapper"
56
- }, r("gx-ide-container", {
56
+ }, t("gx-ide-container", {
57
57
  containerTitle: this.displayTitle ? this._componentLocale.componentName : null,
58
58
  slimmerFooter: i.gxIdeContainer.slimmerFooter
59
- }, r("div", {
59
+ }, t("div", {
60
60
  class: "message-item"
61
- }, r("gxg-icon", {
61
+ }, t("gxg-icon", {
62
62
  type: "gx-server/changes-commit-pending",
63
63
  color: "auto",
64
64
  size: "small"
65
- }), r("gxg-text", null, this._componentLocale.description[this.configurationType])), r("div", {
65
+ }), t("gxg-text", null, this._componentLocale.description[this.configurationType])), t("div", {
66
66
  class: "options"
67
- }, r("gxg-form-checkbox", {
67
+ }, t("gxg-form-checkbox", {
68
68
  label: this._componentLocale.installGxFlow,
69
69
  checked: this.defaultConfiguration.installClient,
70
70
  ref: e => this.installGxFlowEl = e
71
- }), r("gxg-combo-box", {
71
+ }), t("gxg-combo-box", {
72
72
  class: "upgrades-options",
73
73
  label: this._componentLocale.manageUpgrades,
74
74
  disableFilter: true,
75
75
  value: this.defaultConfiguration.futureUpgrades,
76
76
  ref: e => this.futureUpgradesEl = e
77
- }, r("gxg-combo-box-item", {
77
+ }, t("gxg-combo-box-item", {
78
78
  value: "automatic"
79
- }, this._componentLocale.upgradesOptions[0]), r("gxg-combo-box-item", {
79
+ }, this._componentLocale.upgradesOptions[0]), t("gxg-combo-box-item", {
80
80
  value: "prompt"
81
- }, this._componentLocale.upgradesOptions[1]), r("gxg-combo-box-item", {
81
+ }, this._componentLocale.upgradesOptions[1]), t("gxg-combo-box-item", {
82
82
  value: "never"
83
- }, this._componentLocale.upgradesOptions[2]))), r("gxg-text", {
83
+ }, this._componentLocale.upgradesOptions[2]))), t("gxg-text", {
84
84
  textAlign: "end",
85
85
  type: "text-regular"
86
- }, this._componentLocale.prompt[this.configurationType]), r("gxg-button", {
86
+ }, this._componentLocale.prompt[this.configurationType]), t("gxg-button", {
87
87
  slot: "footer-end",
88
88
  type: "outlined",
89
89
  onClick: this.cancelHandler
90
- }, "Cancel"), r("gxg-button", {
90
+ }, "Cancel"), t("gxg-button", {
91
91
  slot: "footer-end",
92
92
  onClick: this.saveCallbackHandler
93
93
  }, this._componentLocale.footer.confirmButton[this.configurationType]))));
@@ -103,4 +103,4 @@ const n = class {
103
103
  n.style = l;
104
104
 
105
105
  export { n as gx_ide_wf_settings };
106
- //# sourceMappingURL=p-c484250c.entry.js.map
106
+ //# sourceMappingURL=p-68605d06.entry.js.map
@@ -0,0 +1,418 @@
1
+ import { r as t, c as i, a as e, h as s, H as a, g as n } from "./p-aaed592c.js";
2
+
3
+ import { c as o } from "./p-78b90603.js";
4
+
5
+ import { L as l } from "./p-74d59062.js";
6
+
7
+ const mapTypeCategoryDataToActionListModel = t => t.map((t => ({
8
+ id: t.id,
9
+ type: "actionable",
10
+ additionalInformation: {
11
+ "stretch-start": {
12
+ center: [ {
13
+ imgSrc: t.icon || undefined
14
+ } ]
15
+ }
16
+ },
17
+ caption: t.name,
18
+ part: `category-${t.id}`
19
+ })));
20
+
21
+ const mapTypeDataToActionListModel = (t, i, e) => t.map((t => ({
22
+ id: `${t.id}`,
23
+ type: "actionable",
24
+ imageSrc: "objects/design",
25
+ selected: e === t.id,
26
+ additionalInformation: {
27
+ "stretch-start": {
28
+ center: [ {
29
+ imgSrc: t.icon
30
+ } ]
31
+ }
32
+ },
33
+ caption: t.name,
34
+ part: `type-${i}-${t.id}`
35
+ })));
36
+
37
+ /**
38
+ * Order the items in the same order as they come.
39
+ */ const sortActionListDefault = t => t;
40
+
41
+ const r = ':host{display:grid;block-size:100%}.main{display:grid;grid-template-rows:1fr max-content max-content}.categories-types-layout{grid-template-columns:1fr 1fr}.api-description-layout{padding-block:calc( var(--content-block-spacing) * 2 );display:grid;grid-template:"api-description-title api-description-title" "api-name-label api-name-control" "api-description-label api-description-control" "api-module-label api-module-control";grid-template-columns:max-content 1fr}.api-description-title{grid-area:api-description-title}.api-name-label{grid-area:api-name-label}.api-name-control{grid-area:api-name-control}.api-description-label{grid-area:api-description-label}.api-description-control{grid-area:api-description-control}.api-module-label{grid-area:api-module-label}.api-module-control{grid-area:api-module-control}';
42
+
43
+ var h = undefined && undefined.__classPrivateFieldGet || function(t, i, e, s) {
44
+ if (e === "a" && !s) throw new TypeError("Private accessor was defined without a getter");
45
+ if (typeof i === "function" ? t !== i || !s : !i.has(t)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
46
+ return e === "m" ? s : e === "a" ? s.call(t) : s ? s.value : i.get(t);
47
+ };
48
+
49
+ var c = undefined && undefined.__classPrivateFieldSet || function(t, i, e, s, a) {
50
+ if (s === "m") throw new TypeError("Private method is not writable");
51
+ if (s === "a" && !a) throw new TypeError("Private accessor was defined without a setter");
52
+ if (typeof i === "function" ? t !== i || !a : !i.has(t)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
53
+ return s === "a" ? a.call(t, e) : a ? a.value = e : i.set(t, e), e;
54
+ };
55
+
56
+ var d, p, f, u, m, b, g, w, y, k, v, M, W, C, x, j, I, S, E, F, T, $, _, P, z, D, L;
57
+
58
+ const N = [ "resets/box-sizing", "components/button", "components/edit", "components/icon", "components/tooltip", "components/list-box", "utils/form", "utils/layout", "utils/typography" ];
59
+
60
+ const A = class {
61
+ constructor(a) {
62
+ t(this, a);
63
+ this.cancel = i(this, "cancel", 7);
64
+ this.create = i(this, "create", 7);
65
+ this.validateName = i(this, "validateName", 7);
66
+ d.add(this);
67
+ /**
68
+ * The component hard-coded strings translations.
69
+ */
70
+ // eslint-disable-next-line @stencil-community/own-props-must-be-private
71
+ p.set(this, void 0);
72
+ f.set(this, e(`./gx-ide-assets/new-object/shortcuts.json`));
73
+ /* References needed to collect data on "Create" button submit */ u.set(this, void 0);
74
+ m.set(this, void 0);
75
+ b.set(this, void 0);
76
+ g.set(this, false);
77
+ w.set(this, void 0);
78
+ y.set(this, void 0);
79
+ k.set(this, false);
80
+ // - - - - - - - - - - -
81
+ v.set(this, (async () => {
82
+ await this.cancelCallback();
83
+ }));
84
+ M.set(this, (t => {
85
+ const i = t.detail;
86
+ if (i.length > 0) {
87
+ const t = this.typeCategories.find((t => t.id === i[0].item.id));
88
+ if (t) {
89
+ this.selectedCategory = t;
90
+ if (t.types.length > 0) {
91
+ this.selectedType = t.types.find((i => i.id === this.selectedTypeMap.get(t.id)));
92
+ }
93
+ }
94
+ }
95
+ }));
96
+ W.set(this, (async () => {
97
+ var t, i, e;
98
+ // validate name first
99
+ const s = await this.validateNameCallback(h(this, y, "f").value);
100
+ if (!!s) {
101
+ // name is invalid
102
+ h(this, L, "f").call(this, s);
103
+ return;
104
+ }
105
+ const a = {
106
+ typeId: (t = this.selectedType) === null || t === void 0 ? void 0 : t.id,
107
+ name: h(this, y, "f").value,
108
+ description: !h(this, g, "f") ? undefined : h(this, b, "f").value,
109
+ moduleId: (e = (i = h(this, w, "f")) === null || i === void 0 ? void 0 : i.value) === null || e === void 0 ? void 0 : e.id
110
+ };
111
+ const n = await this.createCallback(a);
112
+ h(this, L, "f").call(this, n);
113
+ }));
114
+ C.set(this, (() => {
115
+ if (h(this, k, "f") || h(this, g, "f")) {
116
+ console.log("description modified by user");
117
+ return h(this, b, "f").value;
118
+ } else {
119
+ return this.selectedType.name;
120
+ }
121
+ }));
122
+ x.set(this, (t => t.name.replace(/\s/g, "")));
123
+ /**
124
+ * This method defines the initial selected category and type, and it then
125
+ * initializes the name value.
126
+ */
127
+ // eslint-disable-next-line @stencil-community/own-props-must-be-private
128
+ j.set(this, (() => {
129
+ const t = h(this, P, "f").call(this, this.defaultTypeId);
130
+ if (!t) {
131
+ this.selectedCategory = this.typeCategories[0];
132
+ this.selectedType = this.selectedCategory.types[0];
133
+ }
134
+ if (this.selectedType && this.selectedType.name.length > 0) {
135
+ this.name = h(this, x, "f").call(this, this.selectedType);
136
+ this.description = this.selectedType.name;
137
+ }
138
+ }));
139
+ S.set(this, (() => {
140
+ if (h(this, k, "f")) {
141
+ return h(this, y, "f").value;
142
+ } else {
143
+ return h(this, x, "f").call(this, this.selectedType);
144
+ }
145
+ }));
146
+ E.set(this, (async () => {
147
+ const t = await this.validateNameCallback(h(this, y, "f").value);
148
+ h(this, L, "f").call(this, t);
149
+ }));
150
+ F.set(this, (t => {
151
+ this.description = t.detail;
152
+ c(this, g, true, "f");
153
+ }));
154
+ T.set(this, (async t => {
155
+ const i = t.detail;
156
+ if (!h(this, g, "f")) {
157
+ // Description should be equal to name, unless the description was already
158
+ // modified by the user.
159
+ h(this, b, "f").value = i;
160
+ }
161
+ c(this, k, true, "f");
162
+ }));
163
+ $.set(this, (async t => {
164
+ const i = t.detail;
165
+ const e = await this.validateNameCallback(i);
166
+ h(this, L, "f").call(this, e);
167
+ }));
168
+ _.set(this, (() => {
169
+ if (this.selectedType.hasModule || this.selectedType.hasFolder) {
170
+ let t = h(this, p, "f").moduleFolder;
171
+ if (!this.selectedType.hasFolder) {
172
+ t = h(this, p, "f").moduleOnly;
173
+ } else if (!this.selectedType.hasModule) {
174
+ t = h(this, p, "f").folderOnly;
175
+ }
176
+ return [ s("label", {
177
+ // Module/folder
178
+ class: "label api-module-label",
179
+ htmlFor: "module"
180
+ }, t), s("gx-ide-entity-selector", {
181
+ id: "module",
182
+ class: "api-module-control",
183
+ part: "module",
184
+ labelPosition: "none",
185
+ value: this.parent,
186
+ defaultValue: this.defaultParent,
187
+ selectEntityCallback: this.selectModuleCallback,
188
+ ref: t => c(this, w, t, "f")
189
+ }) ];
190
+ }
191
+ return null;
192
+ }));
193
+ P.set(this, (t => {
194
+ if (!t) {
195
+ return false;
196
+ }
197
+ let i = false;
198
+ t: for (let e = 0; e < this.typeCategories.length; e++) {
199
+ for (let s = 0; s < this.typeCategories[e].types.length; s++) {
200
+ const a = this.typeCategories[e].types[s].id;
201
+ if (a === t) {
202
+ this.selectedCategory = this.typeCategories[e];
203
+ this.selectedType = this.typeCategories[e].types[s];
204
+ i = true;
205
+ break t;
206
+ }
207
+ }
208
+ }
209
+ return i;
210
+ }));
211
+ z.set(this, (() => {
212
+ if (this.selectedCategory) {
213
+ // update model by setting the selected category
214
+ h(this, u, "f").updateItemProperties(this.selectedCategory.id, {
215
+ selected: true,
216
+ type: "actionable"
217
+ });
218
+ }
219
+ }));
220
+ D.set(this, (t => {
221
+ const i = t.detail;
222
+ if (i.length > 0) {
223
+ this.selectedType = this.selectedCategory.types.find((t => t.id === i[0].item.id));
224
+ this.selectedTypeMap.set(this.selectedCategory.id, this.selectedType.id);
225
+ }
226
+ }));
227
+ // #validateInitialName = async () => {
228
+ // const result: string | undefined = await this.validateNameCallback(
229
+ // this.name
230
+ // );
231
+ // this.#validateNameHandler(result);
232
+ // };
233
+ /**
234
+ * If the parameter is undefined, it means the name is valid. Otherwise, if it
235
+ * receives a string, it indicates that the name is not valid. The string is the
236
+ * error message to display.
237
+ */
238
+ // eslint-disable-next-line @stencil-community/own-props-must-be-private
239
+ L.set(this, (t => {
240
+ this.nameValidationErrorMessage = t;
241
+ }));
242
+ this.description = undefined;
243
+ this.name = undefined;
244
+ this.nameValidationErrorMessage = undefined;
245
+ this.selectedCategory = undefined;
246
+ this.selectedType = undefined;
247
+ this.typeCategoriesActionListModel = [];
248
+ this.typesActionListModel = [];
249
+ this.selectedTypeMap = new Map;
250
+ this.defaultTypeId = undefined;
251
+ this.defaultParent = undefined;
252
+ this.displayTitle = false;
253
+ this.cancelCallback = undefined;
254
+ this.createCallback = undefined;
255
+ this.shadow = false;
256
+ this.typeCategories = undefined;
257
+ this.parent = undefined;
258
+ this.selectModuleCallback = undefined;
259
+ this.validateNameCallback = undefined;
260
+ }
261
+ typeCategoriesChanged(t) {
262
+ if (t === null || t === void 0 ? void 0 : t.length) {
263
+ this.typeCategoriesActionListModel = mapTypeCategoryDataToActionListModel(this.typeCategories);
264
+ }
265
+ }
266
+ connectedCallback() {
267
+ // this.#validateInitialName();
268
+ }
269
+ async componentWillLoad() {
270
+ h(this, j, "f").call(this);
271
+ c(this, p, await l.getComponentStrings(this.el), "f");
272
+ this.typeCategoriesChanged(this.typeCategories);
273
+ h(this, d, "m", I).call(this);
274
+ }
275
+ componentDidLoad() {
276
+ h(this, z, "f").call(this);
277
+ }
278
+ /**
279
+ * Suspends or reactivates the shortcuts
280
+ */ async suspendShortcuts(t) {
281
+ if (t) {
282
+ h(this, m, "f").suspend = true;
283
+ } else {
284
+ h(this, m, "f").suspend = false;
285
+ }
286
+ }
287
+ render() {
288
+ var t;
289
+ return s(a, {
290
+ class: "widget"
291
+ }, s("ch-theme", {
292
+ model: N
293
+ }), s("ch-shortcuts", {
294
+ src: h(this, f, "f"),
295
+ ref: t => c(this, m, t, "f")
296
+ }), s("section", {
297
+ class: "main"
298
+ }, s("section", {
299
+ class: "field-group categories-types-layout spacing-body-inline spacing-body-block-start"
300
+ }, s("div", {
301
+ class: "field field-block"
302
+ }, s("label", {
303
+ class: "label"
304
+ }, h(this, p, "f").categorySelectionTitle), s("ch-action-list-render", {
305
+ // #select a category
306
+ // TODO: The "scrollable" class is a WA since the action-list currently does not support scrollbar customization
307
+ class: "list-box",
308
+ selection: "single",
309
+ model: this.typeCategoriesActionListModel,
310
+ sortItemsCallback: sortActionListDefault,
311
+ onSelectedItemsChange: h(this, M, "f"),
312
+ ref: t => c(this, u, t, "f")
313
+ })), s("div", {
314
+ class: "field field-block"
315
+ }, s("label", {
316
+ class: "label"
317
+ }, this.selectedCategory.name ? `${this.selectedCategory.name} ${h(this, p, "f").typeSelectionTitleSuffix}` : h(this, p, "f").typeSelectionTitle), s("ch-action-list-render", {
318
+ // #data management types
319
+ // TODO: The "scrollable" class is a WA since the action-list currently does not support scrollbar customization
320
+ class: "list-box",
321
+ selection: "single",
322
+ sortItemsCallback: sortActionListDefault,
323
+ model: mapTypeDataToActionListModel(this.selectedCategory.types, this.selectedCategory.id, this.selectedType.id),
324
+ onSelectedItemsChange: h(this, D, "f")
325
+ }))), s("section", {
326
+ class: "api-description-layout field-group spacing-body-inline"
327
+ }, s("h2", {
328
+ // API Description
329
+ class: "text-align-center api-description-title heading-5"
330
+ }, (t = this.selectedType) === null || t === void 0 ? void 0 : t.description), s("label", {
331
+ // Name
332
+ class: "label api-name-label",
333
+ htmlFor: "name"
334
+ }, h(this, p, "f").objectName), s("div", null, s("ch-edit", {
335
+ autoFocus: true,
336
+ class: {
337
+ "form-input": true,
338
+ "api-name-control": true,
339
+ "form-input-error": !!this.nameValidationErrorMessage
340
+ },
341
+ placeholder: "Name",
342
+ value: h(this, S, "f").call(this),
343
+ ref: t => c(this, y, t, "f"),
344
+ onChange: h(this, $, "f"),
345
+ onInput: h(this, T, "f"),
346
+ onBlur: h(this, E, "f"),
347
+ part: "name"
348
+ }), this.nameValidationErrorMessage && s("ch-tooltip", {
349
+ class: "tooltip",
350
+ actionElement: h(this, y, "f"),
351
+ blockAlign: o.tooltipSettings.blockAlign,
352
+ inlineAlign: o.tooltipSettings.inlineAlign,
353
+ delay: o.tooltipSettings.delay
354
+ }, this.nameValidationErrorMessage)), s("label", {
355
+ // Description
356
+ class: "label api-description-label",
357
+ htmlFor: "description"
358
+ }, h(this, p, "f").objectDescription), s("ch-edit", {
359
+ autoFocus: true,
360
+ class: "form-input api-description-control",
361
+ placeholder: "Description",
362
+ value: h(this, C, "f").call(this),
363
+ // TODO: toolTip={config.tooltip}
364
+ ref: t => c(this, b, t, "f"),
365
+ onInput: h(this, F, "f"),
366
+ part: "description"
367
+ }), h(this, _, "f").call(this)), s("footer", {
368
+ class: "footer control-footer-with-border spacing-body-inline spacing-body-block-end "
369
+ }, s("div", {
370
+ class: "buttons-spacer"
371
+ }, s("button", {
372
+ // cancel
373
+ class: "button-secondary",
374
+ onClick: h(this, v, "f"),
375
+ part: "button button-cancel"
376
+ }, h(this, p, "f").footer.btnCancel), s("button", {
377
+ // create
378
+ class: "button-primary",
379
+ onClick: h(this, W, "f"),
380
+ disabled: !!this.nameValidationErrorMessage,
381
+ part: "button button-create"
382
+ }, h(this, p, "f").footer.btnCreate)))));
383
+ }
384
+ static get delegatesFocus() {
385
+ return true;
386
+ }
387
+ static get assetsDirs() {
388
+ return [ "gx-ide-assets/new-object" ];
389
+ }
390
+ get el() {
391
+ return n(this);
392
+ }
393
+ static get watchers() {
394
+ return {
395
+ typeCategories: [ "typeCategoriesChanged" ]
396
+ };
397
+ }
398
+ };
399
+
400
+ p = new WeakMap, f = new WeakMap, u = new WeakMap, m = new WeakMap, b = new WeakMap,
401
+ g = new WeakMap, w = new WeakMap, y = new WeakMap, k = new WeakMap, v = new WeakMap,
402
+ M = new WeakMap, W = new WeakMap, C = new WeakMap, x = new WeakMap, j = new WeakMap,
403
+ S = new WeakMap, E = new WeakMap, F = new WeakMap, T = new WeakMap, $ = new WeakMap,
404
+ _ = new WeakMap, P = new WeakMap, z = new WeakMap, D = new WeakMap, L = new WeakMap,
405
+ d = new WeakSet, I = function _GxIdeNewObject_initializeSelectedTypeMap() {
406
+ this.typeCategories.forEach((t => {
407
+ if (this.defaultTypeId && t.id === this.selectedCategory.id) {
408
+ this.selectedTypeMap.set(t.id, this.selectedType.id);
409
+ } else {
410
+ this.selectedTypeMap.set(t.id, t.types[0].id);
411
+ }
412
+ }));
413
+ };
414
+
415
+ A.style = r;
416
+
417
+ export { A as gx_ide_new_object };
418
+ //# sourceMappingURL=p-6b8f6569.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["mapTypeCategoryDataToActionListModel","categories","map","category","id","type","additionalInformation","center","imgSrc","icon","undefined","caption","name","part","mapTypeDataToActionListModel","types","selectedCategoryId","selectedTypeId","imageSrc","selected","sortActionListDefault","subModel","newObjectCss","CSS_BUNDLES","GxIdeNewObject","_GxIdeNewObject_componentLocale","set","this","_GxIdeNewObject_shortcutsSrc","getAssetPath","_GxIdeNewObject_categoriesActionListEl","_GxIdeNewObject_chShortcutsEl","_GxIdeNewObject_descriptionEl","_GxIdeNewObject_descriptionModifiedByUser","_GxIdeNewObject_moduleFolderEl","_GxIdeNewObject_nameEl","_GxIdeNewObject_nameModifiedByUser","_GxIdeNewObject_cancelCallbackHandler","async","cancelCallback","_GxIdeNewObject_categoryOnSelectionChangedHandler","selectionEvent","selection","detail","length","selectedCategory","typeCategories","find","item","selectedType","selectedTypeMap","get","_GxIdeNewObject_createCallbackHandler","nameValidation","validateNameCallback","__classPrivateFieldGet","value","_GxIdeNewObject_validateNameHandler","call","data","typeId","_a","description","moduleId","_c","_b","result","createCallback","_GxIdeNewObject_descriptionValueHandler","console","log","_GxIdeNewObject_getNameSuggestion","replace","_GxIdeNewObject_init","defaultTypeFound","_GxIdeNewObject_setDefaultType","defaultTypeId","_GxIdeNewObject_nameValueHandler","_GxIdeNewObject_onBlurNameHandler","_GxIdeNewObject_onInputDescriptionHandler","e","__classPrivateFieldSet","_GxIdeNewObject_onInputNameHandler","_GxIdeNewObject_onNameValueChangedHandler","_GxIdeNewObject_renderModuleFolder","hasModule","hasFolder","labelDescription","moduleFolder","moduleOnly","folderOnly","h","class","htmlFor","labelPosition","parent","defaultValue","defaultParent","selectEntityCallback","selectModuleCallback","ref","el","found","outerLoop","i","j","loopTypeId","_GxIdeNewObject_setSelectedCategoryOnActionList","updateItemProperties","_GxIdeNewObject_typeOnSelectionChangedHandler","nameValidationErrorMessage","Map","typeCategoriesChanged","newValue","typeCategoriesActionListModel","connectedCallback","componentWillLoad","Locale","getComponentStrings","_GxIdeNewObject_instances","_GxIdeNewObject_initializeSelectedTypeMap","componentDidLoad","suspendShortcuts","suspend","render","Host","model","src","categorySelectionTitle","sortItemsCallback","onSelectedItemsChange","typeSelectionTitleSuffix","typeSelectionTitle","objectName","autoFocus","placeholder","onChange","onInput","onBlur","actionElement","blockAlign","config","tooltipSettings","inlineAlign","delay","objectDescription","onClick","footer","btnCancel","disabled","btnCreate","forEach"],"sources":["src/components/new-object/helpers.tsx","src/common/chameleon-helpers.ts","src/components/new-object/new-object.scss?tag=gx-ide-new-object&encapsulation=shadow","src/components/new-object/new-object.tsx"],"sourcesContent":["import { ActionListModel } from \"@genexus/chameleon-controls-library\";\nimport { TypeCategoryData } from \"../..\";\nimport { TypeData } from \"./new-object\";\n\nexport type ChCheckboxArray = HTMLChCheckboxElement[] | null;\n\nexport const mapTypeCategoryDataToActionListModel = (\n categories: TypeCategoryData[]\n): ActionListModel => {\n return categories.map(category => {\n return {\n id: category.id,\n type: \"actionable\",\n additionalInformation: {\n \"stretch-start\": {\n center: [{ imgSrc: category.icon || undefined }]\n }\n },\n caption: category.name,\n part: `category-${category.id}`\n };\n });\n};\n\nexport const mapTypeDataToActionListModel = (\n types: TypeData[],\n selectedCategoryId: string,\n selectedTypeId?: string\n): ActionListModel => {\n return types.map(type => {\n return {\n id: `${type.id}`,\n type: \"actionable\",\n imageSrc: \"objects/design\",\n selected: selectedTypeId === type.id,\n additionalInformation: {\n \"stretch-start\": {\n center: [{ imgSrc: type.icon }]\n }\n },\n caption: type.name,\n part: `type-${selectedCategoryId}-${type.id}`\n };\n });\n};\n","import { ActionListModel } from \"@genexus/chameleon-controls-library/dist/types/components/action-list/types\";\n\n/**\n * Order the items in the same order as they come.\n */\nexport const sortActionListDefault = (subModel: ActionListModel) => {\n return subModel;\n};\n",":host {\n display: grid;\n block-size: 100%;\n}\n\n.main {\n display: grid;\n grid-template-rows: 1fr max-content max-content;\n}\n.categories-types-layout {\n grid-template-columns: 1fr 1fr;\n}\n.api-description-layout {\n padding-block: calc(\n var(--content-block-spacing) * 2\n ); // WA until we define a class for internal spacing.\n display: grid;\n grid-template:\n \"api-description-title api-description-title\"\n \"api-name-label api-name-control\"\n \"api-description-label api-description-control\"\n \"api-module-label api-module-control\";\n grid-template-columns: max-content 1fr;\n}\n.api-description-title {\n grid-area: api-description-title;\n}\n.api-name-label {\n grid-area: api-name-label;\n}\n.api-name-control {\n grid-area: api-name-control;\n}\n.api-description-label {\n grid-area: api-description-label;\n}\n.api-description-control {\n grid-area: api-description-control;\n}\n.api-module-label {\n grid-area: api-module-label;\n}\n.api-module-control {\n grid-area: api-module-control;\n}\n","/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Event,\n EventEmitter,\n Element,\n State,\n Watch,\n getAssetPath,\n Method\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { config } from \"../../common/config\";\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../common/locale\";\nimport { EntityData } from \"../../common/types\";\nimport {\n ActionListItemModelExtended,\n ActionListModel\n} from \"@genexus/chameleon-controls-library\";\nimport {\n mapTypeCategoryDataToActionListModel,\n mapTypeDataToActionListModel\n} from \"./helpers\";\n\nimport { sortActionListDefault } from \"../../common/chameleon-helpers\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/edit\",\n \"components/icon\",\n \"components/tooltip\",\n \"components/list-box\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/typography\"\n];\n\n@Component({\n tag: \"gx-ide-new-object\",\n styleUrl: \"new-object.scss\",\n shadow: { delegatesFocus: true },\n assetsDirs: [\"gx-ide-assets/new-object\"]\n})\nexport class GxIdeNewObject {\n /**\n * The component hard-coded strings translations.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #componentLocale: any;\n #shortcutsSrc = getAssetPath(`./gx-ide-assets/new-object/shortcuts.json`);\n\n @Element() el: HTMLGxIdeNewObjectElement;\n\n /* References needed to collect data on \"Create\" button submit */\n #categoriesActionListEl: HTMLChActionListRenderElement;\n #chShortcutsEl: HTMLChShortcutsElement;\n #descriptionEl!: HTMLChEditElement;\n #descriptionModifiedByUser = false;\n #moduleFolderEl!: HTMLGxIdeEntitySelectorElement;\n #nameEl!: HTMLChEditElement;\n #nameModifiedByUser = false;\n\n /**\n * Description of the new object\n */\n @State() description: string = undefined;\n\n /**\n * Name of the new object\n */\n @State() name: string = undefined;\n @State() nameValidationErrorMessage: string;\n @State() selectedCategory: TypeCategoryData | null;\n @State() selectedType: TypeData | null;\n // representations of TypeCategoryData[] as ComboBoxModel.\n @State() typeCategoriesActionListModel: ActionListModel = [];\n @State() typesActionListModel: ActionListModel = [];\n\n @State() selectedTypeMap: Map<string, string> = new Map();\n\n /**\n * Allows you to define the type selected by default when instantiating the dialog.\n * Represented by the type identifier.\n */\n @Prop() readonly defaultTypeId: string;\n\n /**\n * Default value for the Module/Folder field.\n */\n @Prop() readonly defaultParent: EntityData;\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Callback invoked when user wants to cancel object creation\n */\n @Prop() readonly cancelCallback: CancelCallback;\n\n /**\n * Callback invoked when user wants to confirm object creation\n */\n @Prop() readonly createCallback: CreateCallback;\n\n /**\n * Applies a shadow all around\n */\n @Prop() readonly shadow = false;\n\n /**\n * Array containing category list and its corresponding types\n */\n @Prop({ mutable: true }) typeCategories!: TypeCategoryData[];\n @Watch(\"typeCategories\")\n typeCategoriesChanged(newValue: TypeCategoryData[]) {\n if (newValue?.length) {\n this.typeCategoriesActionListModel = mapTypeCategoryDataToActionListModel(\n this.typeCategories\n );\n }\n }\n\n /**\n * Current value for Module/Folder\n */\n @Prop() readonly parent: EntityData;\n\n /**\n * Callback invoked when the action is executed on the Module/Folder filter\n * (button '...'). It returns the information of the selected object (id and\n * name) or 'undefined' if it was canceled.\n */\n @Prop() readonly selectModuleCallback: SelectModuleCallback;\n\n /**\n * Callback invoked when you must validate a name. Returns an error message or\n * 'undefined' if the name is not valid.\n */\n @Prop() readonly validateNameCallback: ValidateNameCallback;\n\n /**\n * This event emits the 'cancel' event\n */\n @Event() cancel: EventEmitter<boolean>;\n\n /**\n * This event emm=its the data needed to create a new object\n */\n @Event() create: EventEmitter<NewObjectData>;\n\n /**\n * This event is triggered after a validation of the object name is made.\n * Returns 'undefined' if it's valid, otherwise an error message.\n */\n @Event() validateName: EventEmitter<string | undefined>;\n\n connectedCallback() {\n // this.#validateInitialName();\n }\n\n async componentWillLoad() {\n this.#init();\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.typeCategoriesChanged(this.typeCategories);\n this.#initializeSelectedTypeMap();\n }\n\n componentDidLoad() {\n this.#setSelectedCategoryOnActionList();\n }\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#chShortcutsEl.suspend = true;\n } else {\n this.#chShortcutsEl.suspend = false;\n }\n }\n\n // - - - - - - - - - - -\n\n #cancelCallbackHandler = async (): Promise<void> => {\n await this.cancelCallback();\n };\n\n #categoryOnSelectionChangedHandler = (\n selectionEvent: CustomEvent<ActionListItemModelExtended[]>\n ): void => {\n const selection = selectionEvent.detail;\n if (selection.length > 0) {\n const selectedCategory = this.typeCategories.find(\n category => category.id === selection[0].item.id\n );\n if (selectedCategory) {\n this.selectedCategory = selectedCategory;\n if (selectedCategory.types.length > 0) {\n this.selectedType = selectedCategory.types.find(\n type => type.id === this.selectedTypeMap.get(selectedCategory.id)\n );\n }\n }\n }\n };\n\n #createCallbackHandler = async (): Promise<void> => {\n // validate name first\n const nameValidation: string | undefined = await this.validateNameCallback(\n this.#nameEl.value\n );\n if (!!nameValidation) {\n // name is invalid\n this.#validateNameHandler(nameValidation);\n return;\n }\n\n const data: NewObjectData = {\n typeId: this.selectedType?.id,\n name: this.#nameEl.value,\n description: !this.#descriptionModifiedByUser\n ? undefined\n : this.#descriptionEl.value,\n moduleId: this.#moduleFolderEl?.value?.id\n };\n const result = await this.createCallback(data);\n this.#validateNameHandler(result);\n };\n\n #descriptionValueHandler = () => {\n if (this.#nameModifiedByUser || this.#descriptionModifiedByUser) {\n console.log(\"description modified by user\");\n return this.#descriptionEl.value;\n } else {\n return this.selectedType.name;\n }\n };\n\n #getNameSuggestion = (selectedType: TypeData) => {\n // Type name can include whitespaces; we need to replace all whitespaces to\n // avoid invalid suggestions:\n return selectedType.name.replace(/\\s/g, \"\");\n };\n\n /**\n * This method defines the initial selected category and type, and it then\n * initializes the name value.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #init = () => {\n const defaultTypeFound = this.#setDefaultType(this.defaultTypeId);\n if (!defaultTypeFound) {\n this.selectedCategory = this.typeCategories[0];\n this.selectedType = this.selectedCategory.types[0];\n }\n if (this.selectedType && this.selectedType.name.length > 0) {\n this.name = this.#getNameSuggestion(this.selectedType);\n this.description = this.selectedType.name;\n }\n };\n\n /**\n * Initializes the selectedTypeMap with the defaultTypeId if it exists, otherwise\n * it initializes the selectedTypeMap with the first type of each category.\n */\n // eslint-disable-next-line @stencil-community/own-methods-must-be-private\n #initializeSelectedTypeMap() {\n this.typeCategories.forEach(category => {\n if (this.defaultTypeId && category.id === this.selectedCategory.id) {\n this.selectedTypeMap.set(category.id, this.selectedType.id);\n } else {\n this.selectedTypeMap.set(category.id, category.types[0].id);\n }\n });\n }\n\n #nameValueHandler = (): string => {\n if (this.#nameModifiedByUser) {\n return this.#nameEl.value;\n } else {\n return this.#getNameSuggestion(this.selectedType);\n }\n };\n\n #onBlurNameHandler = async () => {\n const result: string | undefined = await this.validateNameCallback(\n this.#nameEl.value\n );\n this.#validateNameHandler(result);\n };\n\n #onInputDescriptionHandler = (e: CustomEvent<string>) => {\n this.description = e.detail;\n this.#descriptionModifiedByUser = true;\n };\n\n #onInputNameHandler = async (e: CustomEvent<any> | InputEvent) => {\n const name = e.detail;\n if (!this.#descriptionModifiedByUser) {\n // Description should be equal to name, unless the description was already\n // modified by the user.\n this.#descriptionEl.value = name;\n }\n this.#nameModifiedByUser = true;\n };\n\n #onNameValueChangedHandler = async (e: CustomEvent<string>) => {\n const name = e.detail;\n const result: string | undefined = await this.validateNameCallback(name);\n this.#validateNameHandler(result);\n };\n\n #renderModuleFolder = () => {\n if (this.selectedType.hasModule || this.selectedType.hasFolder) {\n let labelDescription = this.#componentLocale.moduleFolder;\n if (!this.selectedType.hasFolder) {\n labelDescription = this.#componentLocale.moduleOnly;\n } else if (!this.selectedType.hasModule) {\n labelDescription = this.#componentLocale.folderOnly;\n }\n return [\n <label\n // Module/folder\n class=\"label api-module-label\"\n htmlFor=\"module\"\n >\n {labelDescription}\n </label>,\n <gx-ide-entity-selector\n id=\"module\"\n class=\"api-module-control\"\n part=\"module\"\n labelPosition=\"none\"\n value={this.parent}\n defaultValue={this.defaultParent}\n selectEntityCallback={this.selectModuleCallback}\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.#moduleFolderEl = el as HTMLGxIdeEntitySelectorElement)\n }\n ></gx-ide-entity-selector>\n ];\n }\n return null;\n };\n\n #setDefaultType = (typeId: string | undefined): boolean => {\n if (!typeId) {\n return false;\n }\n let found = false;\n outerLoop: for (let i = 0; i < this.typeCategories.length; i++) {\n for (let j = 0; j < this.typeCategories[i].types.length; j++) {\n const loopTypeId = this.typeCategories[i].types[j].id;\n if (loopTypeId === typeId) {\n this.selectedCategory = this.typeCategories[i];\n this.selectedType = this.typeCategories[i].types[j];\n found = true;\n break outerLoop;\n }\n }\n }\n return found;\n };\n\n #setSelectedCategoryOnActionList = () => {\n if (this.selectedCategory) {\n // update model by setting the selected category\n this.#categoriesActionListEl.updateItemProperties(\n this.selectedCategory.id,\n {\n selected: true,\n type: \"actionable\"\n }\n );\n }\n };\n\n #typeOnSelectionChangedHandler = (\n selectionEvent: CustomEvent<ActionListItemModelExtended[]>\n ) => {\n const selection = selectionEvent.detail;\n if (selection.length > 0) {\n this.selectedType = this.selectedCategory.types.find(\n type => type.id === selection[0].item.id\n );\n this.selectedTypeMap.set(this.selectedCategory.id, this.selectedType.id);\n }\n };\n\n // #validateInitialName = async () => {\n // const result: string | undefined = await this.validateNameCallback(\n // this.name\n // );\n // this.#validateNameHandler(result);\n // };\n\n /**\n * If the parameter is undefined, it means the name is valid. Otherwise, if it\n * receives a string, it indicates that the name is not valid. The string is the\n * error message to display.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #validateNameHandler = (result: string | undefined): void => {\n this.nameValidationErrorMessage = result;\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n\n <section class=\"main\">\n <section class=\"field-group categories-types-layout spacing-body-inline spacing-body-block-start\">\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.#componentLocale.categorySelectionTitle}\n </label>\n <ch-action-list-render\n // #select a category\n // TODO: The \"scrollable\" class is a WA since the action-list currently does not support scrollbar customization\n class=\"list-box\"\n selection=\"single\"\n model={this.typeCategoriesActionListModel}\n sortItemsCallback={sortActionListDefault}\n onSelectedItemsChange={this.#categoryOnSelectionChangedHandler}\n ref={(el: HTMLChActionListRenderElement) =>\n (this.#categoriesActionListEl =\n el as HTMLChActionListRenderElement)\n }\n ></ch-action-list-render>\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.selectedCategory.name\n ? `${this.selectedCategory.name} ${\n this.#componentLocale.typeSelectionTitleSuffix\n }`\n : this.#componentLocale.typeSelectionTitle}\n </label>\n <ch-action-list-render\n // #data management types\n // TODO: The \"scrollable\" class is a WA since the action-list currently does not support scrollbar customization\n class=\"list-box\"\n selection=\"single\"\n sortItemsCallback={sortActionListDefault}\n model={mapTypeDataToActionListModel(\n this.selectedCategory.types,\n this.selectedCategory.id,\n this.selectedType.id\n )}\n onSelectedItemsChange={this.#typeOnSelectionChangedHandler}\n ></ch-action-list-render>\n </div>\n </section>\n\n <section class=\"api-description-layout field-group spacing-body-inline\">\n <h2\n // API Description\n class=\"text-align-center api-description-title heading-5\"\n >\n {this.selectedType?.description}\n </h2>\n\n <label\n // Name\n class=\"label api-name-label\"\n htmlFor=\"name\"\n >\n {this.#componentLocale.objectName}\n </label>\n <div>\n <ch-edit\n autoFocus\n class={{\n \"form-input\": true,\n \"api-name-control\": true,\n \"form-input-error\": !!this.nameValidationErrorMessage\n }}\n placeholder=\"Name\"\n value={this.#nameValueHandler()}\n ref={(el: HTMLChEditElement) =>\n (this.#nameEl = el as HTMLChEditElement)\n }\n onChange={this.#onNameValueChangedHandler}\n onInput={this.#onInputNameHandler as any}\n onBlur={this.#onBlurNameHandler}\n part=\"name\"\n ></ch-edit>\n {this.nameValidationErrorMessage && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={this.#nameEl as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.nameValidationErrorMessage}\n </ch-tooltip>\n )}\n </div>\n\n <label\n // Description\n class=\"label api-description-label\"\n htmlFor=\"description\"\n >\n {this.#componentLocale.objectDescription}\n </label>\n <ch-edit\n autoFocus\n class=\"form-input api-description-control\"\n placeholder=\"Description\"\n value={this.#descriptionValueHandler()}\n // TODO: toolTip={config.tooltip}\n ref={(el: HTMLChEditElement) =>\n (this.#descriptionEl = el as HTMLChEditElement)\n }\n onInput={this.#onInputDescriptionHandler as any}\n part=\"description\"\n ></ch-edit>\n\n {this.#renderModuleFolder()}\n </section>\n <footer class=\"footer control-footer-with-border spacing-body-inline spacing-body-block-end \">\n <div class=\"buttons-spacer\">\n <button\n // cancel\n class=\"button-secondary\"\n onClick={this.#cancelCallbackHandler}\n part=\"button button-cancel\"\n >\n {this.#componentLocale.footer.btnCancel}\n </button>\n\n <button\n // create\n class=\"button-primary\"\n onClick={this.#createCallbackHandler}\n disabled={!!this.nameValidationErrorMessage}\n part=\"button button-create\"\n >\n {this.#componentLocale.footer.btnCreate}\n </button>\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n\nexport interface NewObjectData {\n typeId: string;\n name: string;\n description: string | undefined;\n moduleId: string;\n}\n\nexport type ValidateNameCallback = (\n name: string\n) => Promise<string | undefined>;\n\nexport type SelectModuleCallback = () => Promise<EntityData | undefined>;\n\nexport type CreateCallback = (\n data: NewObjectData\n) => Promise<string | undefined>;\n\nexport type CancelCallback = () => Promise<void>;\n\nexport type TypeCategoryData = {\n id: string;\n name: string;\n icon: string;\n types: TypeData[];\n};\n\nexport type TypeData = {\n id: string;\n name: string;\n icon: string;\n hasModule: boolean;\n hasFolder: boolean;\n description: string;\n};\n"],"mappings":"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"}