@genexus/genexus-ide-ui 1.0.46 → 1.0.47

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 (305) hide show
  1. package/dist/cjs/MERCURY_ASSETS-fbc83c8c.js +9 -0
  2. package/dist/cjs/MERCURY_ASSETS-fbc83c8c.js.map +1 -0
  3. package/dist/cjs/{config-b21feeee.js → config-6a768514.js} +3 -3
  4. package/dist/cjs/config-6a768514.js.map +1 -0
  5. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  6. package/dist/cjs/gx-ide-ai-message.cjs.entry.js +1 -1
  7. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +1 -1
  8. package/dist/cjs/gx-ide-bpm-assign-roles.cjs.entry.js +1 -1
  9. package/dist/cjs/gx-ide-bpm-export-xpdl.cjs.entry.js +1 -1
  10. package/dist/cjs/gx-ide-bpm-import-files.cjs.entry.js +1 -1
  11. package/dist/cjs/gx-ide-bpm-import-gxpm.cjs.entry.js +1 -1
  12. package/dist/cjs/gx-ide-bpm-objects-selector.cjs.entry.js +1 -1
  13. package/dist/cjs/gx-ide-bpm-timer-duration.cjs.entry.js +1 -1
  14. package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js +1 -1
  15. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +2 -2
  16. package/dist/cjs/gx-ide-current-user-info.cjs.entry.js +19 -17
  17. package/dist/cjs/gx-ide-current-user-info.cjs.entry.js.map +1 -1
  18. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +1 -1
  19. package/dist/cjs/gx-ide-data-selector.cjs.entry.js +2 -2
  20. package/dist/cjs/gx-ide-data-type-selector.cjs.entry.js +2 -2
  21. package/dist/cjs/gx-ide-data-type-selector.cjs.entry.js.map +1 -1
  22. package/dist/cjs/gx-ide-design-import.cjs.entry.js +4 -4
  23. package/dist/cjs/gx-ide-design-import.cjs.entry.js.map +1 -1
  24. package/dist/cjs/gx-ide-empty-state.cjs.entry.js +1 -1
  25. package/dist/cjs/gx-ide-empty-state.cjs.entry.js.map +1 -1
  26. package/dist/cjs/gx-ide-entity-selector.cjs.entry.js +1 -1
  27. package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js +1 -1
  28. package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js +1 -1
  29. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +3 -3
  30. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js.map +1 -1
  31. package/dist/cjs/gx-ide-loader.cjs.entry.js +2 -2
  32. package/dist/cjs/gx-ide-loader.cjs.entry.js.map +1 -1
  33. package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js +1 -1
  34. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js +1 -1
  35. package/dist/cjs/gx-ide-navigation-report.cjs.entry.js +1 -1
  36. package/dist/cjs/gx-ide-navigation-report.cjs.entry.js.map +1 -1
  37. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +5 -5
  38. package/dist/cjs/gx-ide-new-environment.cjs.entry.js.map +1 -1
  39. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +5 -5
  40. package/dist/cjs/gx-ide-new-kb.cjs.entry.js.map +1 -1
  41. package/dist/cjs/gx-ide-new-object.cjs.entry.js +2 -2
  42. package/dist/cjs/gx-ide-new-object.cjs.entry.js.map +1 -1
  43. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +3 -3
  44. package/dist/cjs/gx-ide-object-selector.cjs.entry.js.map +1 -1
  45. package/dist/cjs/gx-ide-references.cjs.entry.js +1 -1
  46. package/dist/cjs/gx-ide-select-user-team.cjs.entry.js +1 -1
  47. package/dist/cjs/gx-ide-select-user-team.cjs.entry.js.map +1 -1
  48. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +2 -2
  49. package/dist/cjs/gx-ide-sign-in-team.cjs.entry.js +2 -2
  50. package/dist/cjs/gx-ide-sign-in-team.cjs.entry.js.map +1 -1
  51. package/dist/cjs/gx-ide-start-page.cjs.entry.js +8 -8
  52. package/dist/cjs/gx-ide-start-page.cjs.entry.js.map +1 -1
  53. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +1 -1
  54. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +1 -1
  55. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +1 -1
  56. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +1 -1
  57. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +1 -1
  58. package/dist/cjs/gx-ide-template.cjs.entry.js +1 -1
  59. package/dist/cjs/gx-ide-welcome-page.cjs.entry.js +1 -1
  60. package/dist/cjs/gx-ide-wf-settings.cjs.entry.js +1 -1
  61. package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js +3 -3
  62. package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js.map +1 -1
  63. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +1 -1
  64. package/dist/cjs/loader.cjs.js +1 -1
  65. package/dist/collection/common/config.js +2 -2
  66. package/dist/collection/common/config.js.map +1 -1
  67. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.js +1 -1
  68. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.js.map +1 -1
  69. package/dist/collection/components/_helpers/ide-loader/ide-loader.js +2 -2
  70. package/dist/collection/components/_helpers/ide-loader/ide-loader.js.map +1 -1
  71. package/dist/collection/components/current-user-info/current-user-info.css +16 -5
  72. package/dist/collection/components/current-user-info/current-user-info.js +38 -15
  73. package/dist/collection/components/current-user-info/current-user-info.js.map +1 -1
  74. package/dist/collection/components/current-user-info/gx-ide-assets/current-user-info/langs/current-user-info.lang.en.json +2 -2
  75. package/dist/collection/components/current-user-info/gx-ide-assets/current-user-info/langs/current-user-info.lang.ja.json +2 -2
  76. package/dist/collection/components/current-user-info/gx-ide-assets/current-user-info/langs/current-user-info.lang.zh.json +2 -2
  77. package/dist/collection/components/data-type-selector/data-type-selector.js +1 -1
  78. package/dist/collection/components/data-type-selector/data-type-selector.js.map +1 -1
  79. package/dist/collection/components/design-import/design-import.js +2 -2
  80. package/dist/collection/components/design-import/design-import.js.map +1 -1
  81. package/dist/collection/components/kb-manager-import/kb-manager-import.js +2 -2
  82. package/dist/collection/components/kb-manager-import/kb-manager-import.js.map +1 -1
  83. package/dist/collection/components/navigation-report/navigation-report.js +1 -1
  84. package/dist/collection/components/navigation-report/navigation-report.js.map +1 -1
  85. package/dist/collection/components/new-environment/new-environment.js +4 -4
  86. package/dist/collection/components/new-environment/new-environment.js.map +1 -1
  87. package/dist/collection/components/new-kb/new-kb.js +3 -3
  88. package/dist/collection/components/new-kb/new-kb.js.map +1 -1
  89. package/dist/collection/components/new-object/new-object.js +1 -1
  90. package/dist/collection/components/new-object/new-object.js.map +1 -1
  91. package/dist/collection/components/object-selector/object-selector.js +1 -1
  92. package/dist/collection/components/object-selector/object-selector.js.map +1 -1
  93. package/dist/collection/components/select-user-team/select-user-team.js +1 -1
  94. package/dist/collection/components/select-user-team/select-user-team.js.map +1 -1
  95. package/dist/collection/components/sign-in-team/sign-in-team.js +2 -2
  96. package/dist/collection/components/sign-in-team/sign-in-team.js.map +1 -1
  97. package/dist/collection/components/start-page/start-page.js +7 -7
  98. package/dist/collection/components/start-page/start-page.js.map +1 -1
  99. package/dist/collection/components/ww-attributes/ww-attributes.js +1 -1
  100. package/dist/collection/components/ww-attributes/ww-attributes.js.map +1 -1
  101. package/dist/components/MERCURY_ASSETS.js +2 -2
  102. package/dist/components/MERCURY_ASSETS.js.map +1 -1
  103. package/dist/components/config.js +2 -2
  104. package/dist/components/config.js.map +1 -1
  105. package/dist/components/gx-ide-current-user-info.js +19 -16
  106. package/dist/components/gx-ide-current-user-info.js.map +1 -1
  107. package/dist/components/gx-ide-data-type-selector.js +1 -1
  108. package/dist/components/gx-ide-data-type-selector.js.map +1 -1
  109. package/dist/components/gx-ide-design-import.js +2 -2
  110. package/dist/components/gx-ide-design-import.js.map +1 -1
  111. package/dist/components/gx-ide-empty-state2.js +1 -1
  112. package/dist/components/gx-ide-empty-state2.js.map +1 -1
  113. package/dist/components/gx-ide-kb-manager-import.js +2 -2
  114. package/dist/components/gx-ide-kb-manager-import.js.map +1 -1
  115. package/dist/components/gx-ide-navigation-report.js +1 -1
  116. package/dist/components/gx-ide-navigation-report.js.map +1 -1
  117. package/dist/components/gx-ide-new-environment.js +4 -4
  118. package/dist/components/gx-ide-new-environment.js.map +1 -1
  119. package/dist/components/gx-ide-new-kb.js +3 -3
  120. package/dist/components/gx-ide-new-kb.js.map +1 -1
  121. package/dist/components/gx-ide-new-object.js +1 -1
  122. package/dist/components/gx-ide-new-object.js.map +1 -1
  123. package/dist/components/gx-ide-object-selector.js +1 -1
  124. package/dist/components/gx-ide-object-selector.js.map +1 -1
  125. package/dist/components/gx-ide-select-user-team.js +1 -1
  126. package/dist/components/gx-ide-select-user-team.js.map +1 -1
  127. package/dist/components/gx-ide-sign-in-team.js +2 -2
  128. package/dist/components/gx-ide-sign-in-team.js.map +1 -1
  129. package/dist/components/gx-ide-start-page.js +7 -7
  130. package/dist/components/gx-ide-start-page.js.map +1 -1
  131. package/dist/components/gx-ide-ww-attributes.js +1 -1
  132. package/dist/components/gx-ide-ww-attributes.js.map +1 -1
  133. package/dist/components/ide-loader.js +2 -2
  134. package/dist/components/ide-loader.js.map +1 -1
  135. package/dist/esm/MERCURY_ASSETS-91a1db9c.js +7 -0
  136. package/dist/esm/MERCURY_ASSETS-91a1db9c.js.map +1 -0
  137. package/dist/esm/{config-ed1f26d7.js → config-1ef9d75a.js} +3 -3
  138. package/dist/{cjs/config-b21feeee.js.map → esm/config-1ef9d75a.js.map} +1 -1
  139. package/dist/esm/genexus-ide-ui.js +1 -1
  140. package/dist/esm/gx-ide-ai-message.entry.js +1 -1
  141. package/dist/esm/gx-ide-bpm-app-declaration.entry.js +1 -1
  142. package/dist/esm/gx-ide-bpm-assign-roles.entry.js +1 -1
  143. package/dist/esm/gx-ide-bpm-export-xpdl.entry.js +1 -1
  144. package/dist/esm/gx-ide-bpm-import-files.entry.js +1 -1
  145. package/dist/esm/gx-ide-bpm-import-gxpm.entry.js +1 -1
  146. package/dist/esm/gx-ide-bpm-objects-selector.entry.js +1 -1
  147. package/dist/esm/gx-ide-bpm-timer-duration.entry.js +1 -1
  148. package/dist/esm/gx-ide-connect-gx-server.entry.js +1 -1
  149. package/dist/esm/gx-ide-create-kb-from-server.entry.js +2 -2
  150. package/dist/esm/gx-ide-current-user-info.entry.js +19 -17
  151. package/dist/esm/gx-ide-current-user-info.entry.js.map +1 -1
  152. package/dist/esm/gx-ide-dashboard-home.entry.js +1 -1
  153. package/dist/esm/gx-ide-data-selector.entry.js +2 -2
  154. package/dist/esm/gx-ide-data-type-selector.entry.js +2 -2
  155. package/dist/esm/gx-ide-data-type-selector.entry.js.map +1 -1
  156. package/dist/esm/gx-ide-design-import.entry.js +4 -4
  157. package/dist/esm/gx-ide-design-import.entry.js.map +1 -1
  158. package/dist/esm/gx-ide-empty-state.entry.js +1 -1
  159. package/dist/esm/gx-ide-empty-state.entry.js.map +1 -1
  160. package/dist/esm/gx-ide-entity-selector.entry.js +1 -1
  161. package/dist/esm/gx-ide-gam-installation-settings.entry.js +1 -1
  162. package/dist/esm/gx-ide-kb-manager-export.entry.js +1 -1
  163. package/dist/esm/gx-ide-kb-manager-import.entry.js +3 -3
  164. package/dist/esm/gx-ide-kb-manager-import.entry.js.map +1 -1
  165. package/dist/esm/gx-ide-loader.entry.js +2 -2
  166. package/dist/esm/gx-ide-loader.entry.js.map +1 -1
  167. package/dist/esm/gx-ide-manage-module-references-v2.entry.js +1 -1
  168. package/dist/esm/gx-ide-manage-module-references.entry.js +1 -1
  169. package/dist/esm/gx-ide-navigation-report.entry.js +1 -1
  170. package/dist/esm/gx-ide-navigation-report.entry.js.map +1 -1
  171. package/dist/esm/gx-ide-new-environment.entry.js +5 -5
  172. package/dist/esm/gx-ide-new-environment.entry.js.map +1 -1
  173. package/dist/esm/gx-ide-new-kb.entry.js +5 -5
  174. package/dist/esm/gx-ide-new-kb.entry.js.map +1 -1
  175. package/dist/esm/gx-ide-new-object.entry.js +2 -2
  176. package/dist/esm/gx-ide-new-object.entry.js.map +1 -1
  177. package/dist/esm/gx-ide-object-selector.entry.js +3 -3
  178. package/dist/esm/gx-ide-object-selector.entry.js.map +1 -1
  179. package/dist/esm/gx-ide-references.entry.js +1 -1
  180. package/dist/esm/gx-ide-select-user-team.entry.js +1 -1
  181. package/dist/esm/gx-ide-select-user-team.entry.js.map +1 -1
  182. package/dist/esm/gx-ide-share-kb.entry.js +2 -2
  183. package/dist/esm/gx-ide-sign-in-team.entry.js +2 -2
  184. package/dist/esm/gx-ide-sign-in-team.entry.js.map +1 -1
  185. package/dist/esm/gx-ide-start-page.entry.js +8 -8
  186. package/dist/esm/gx-ide-start-page.entry.js.map +1 -1
  187. package/dist/esm/gx-ide-team-dev-commit.entry.js +1 -1
  188. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +1 -1
  189. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +1 -1
  190. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +1 -1
  191. package/dist/esm/gx-ide-team-dev-update.entry.js +1 -1
  192. package/dist/esm/gx-ide-template.entry.js +1 -1
  193. package/dist/esm/gx-ide-welcome-page.entry.js +1 -1
  194. package/dist/esm/gx-ide-wf-settings.entry.js +1 -1
  195. package/dist/esm/gx-ide-ww-attributes.entry.js +3 -3
  196. package/dist/esm/gx-ide-ww-attributes.entry.js.map +1 -1
  197. package/dist/esm/gx-ide-ww-images.entry.js +1 -1
  198. package/dist/esm/loader.js +1 -1
  199. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  200. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  201. package/dist/genexus-ide-ui/gx-ide-assets/current-user-info/langs/current-user-info.lang.en.json +2 -2
  202. package/dist/genexus-ide-ui/gx-ide-assets/current-user-info/langs/current-user-info.lang.ja.json +2 -2
  203. package/dist/genexus-ide-ui/gx-ide-assets/current-user-info/langs/current-user-info.lang.zh.json +2 -2
  204. package/dist/genexus-ide-ui/{p-6747cc1e.entry.js → p-0c60c76f.entry.js} +5 -5
  205. package/dist/genexus-ide-ui/{p-78b90603.js → p-13738332.js} +3 -3
  206. package/dist/genexus-ide-ui/{p-78b90603.js.map → p-13738332.js.map} +1 -1
  207. package/dist/genexus-ide-ui/{p-2b4b1dfc.entry.js → p-18317dd7.entry.js} +5 -5
  208. package/dist/genexus-ide-ui/{p-2b4b1dfc.entry.js.map → p-18317dd7.entry.js.map} +1 -1
  209. package/dist/genexus-ide-ui/{p-617e65ca.js → p-1986d34d.js} +2190 -20
  210. package/dist/genexus-ide-ui/p-1986d34d.js.map +1 -0
  211. package/dist/genexus-ide-ui/{p-793248c8.entry.js → p-1e44952c.entry.js} +2 -2
  212. package/dist/genexus-ide-ui/{p-f50076d3.entry.js → p-1feae6ef.entry.js} +2 -2
  213. package/dist/genexus-ide-ui/{p-092609aa.entry.js → p-22d8de70.entry.js} +2 -2
  214. package/dist/genexus-ide-ui/{p-bb9df26f.entry.js → p-27a2429c.entry.js} +2 -2
  215. package/dist/genexus-ide-ui/{p-3637528d.entry.js → p-2b1634e7.entry.js} +2 -2
  216. package/dist/genexus-ide-ui/{p-d2ab4f70.entry.js → p-2dcfa6ef.entry.js} +32 -32
  217. package/dist/genexus-ide-ui/{p-d2ab4f70.entry.js.map → p-2dcfa6ef.entry.js.map} +1 -1
  218. package/dist/genexus-ide-ui/{p-b04a0ae3.entry.js → p-2e043c76.entry.js} +3 -3
  219. package/dist/genexus-ide-ui/{p-b04a0ae3.entry.js.map → p-2e043c76.entry.js.map} +1 -1
  220. package/dist/genexus-ide-ui/{p-d18718c7.entry.js → p-307e47a1.entry.js} +2 -2
  221. package/dist/genexus-ide-ui/{p-a7027cf7.entry.js → p-37a2e9ac.entry.js} +2 -2
  222. package/dist/genexus-ide-ui/{p-e5fb0c12.entry.js → p-4621ec24.entry.js} +2 -2
  223. package/dist/genexus-ide-ui/{p-efebc74b.entry.js → p-4f6d120f.entry.js} +3 -3
  224. package/dist/genexus-ide-ui/{p-efebc74b.entry.js.map → p-4f6d120f.entry.js.map} +1 -1
  225. package/dist/genexus-ide-ui/{p-2b658e35.entry.js → p-4f815835.entry.js} +2 -2
  226. package/dist/genexus-ide-ui/{p-64e09524.entry.js → p-64e05f19.entry.js} +39 -39
  227. package/dist/genexus-ide-ui/p-64e05f19.entry.js.map +1 -0
  228. package/dist/genexus-ide-ui/{p-5619120d.entry.js → p-64f2a9f4.entry.js} +4 -4
  229. package/dist/genexus-ide-ui/{p-5619120d.entry.js.map → p-64f2a9f4.entry.js.map} +1 -1
  230. package/dist/genexus-ide-ui/{p-10da0eee.entry.js → p-6d8b4f96.entry.js} +2 -2
  231. package/dist/genexus-ide-ui/{p-8bb81d6f.entry.js → p-7153555f.entry.js} +12 -12
  232. package/dist/genexus-ide-ui/{p-8bb81d6f.entry.js.map → p-7153555f.entry.js.map} +1 -1
  233. package/dist/genexus-ide-ui/{p-faea4a40.entry.js → p-846c67a1.entry.js} +2 -2
  234. package/dist/genexus-ide-ui/{p-7754ae2e.entry.js → p-86b0cf22.entry.js} +52 -52
  235. package/dist/genexus-ide-ui/{p-7754ae2e.entry.js.map → p-86b0cf22.entry.js.map} +1 -1
  236. package/dist/genexus-ide-ui/{p-75ed87db.entry.js → p-8cebb078.entry.js} +2 -2
  237. package/dist/genexus-ide-ui/{p-1693a2d1.entry.js → p-92c51f3e.entry.js} +20 -20
  238. package/dist/genexus-ide-ui/{p-ab653cc2.entry.js → p-9dbe2323.entry.js} +2 -2
  239. package/dist/genexus-ide-ui/{p-ab653cc2.entry.js.map → p-9dbe2323.entry.js.map} +1 -1
  240. package/dist/genexus-ide-ui/{p-48cc3f73.entry.js → p-9e34f166.entry.js} +3 -3
  241. package/dist/genexus-ide-ui/{p-48cc3f73.entry.js.map → p-9e34f166.entry.js.map} +1 -1
  242. package/dist/genexus-ide-ui/{p-0a690a6b.entry.js → p-9e78c60c.entry.js} +2 -2
  243. package/dist/genexus-ide-ui/{p-a9d67992.entry.js → p-a1c5775d.entry.js} +3 -3
  244. package/dist/genexus-ide-ui/{p-a27c088d.entry.js → p-a40648dc.entry.js} +41 -39
  245. package/dist/genexus-ide-ui/p-a40648dc.entry.js.map +1 -0
  246. package/dist/genexus-ide-ui/{p-fc61a10f.entry.js → p-a837de2e.entry.js} +2 -2
  247. package/dist/genexus-ide-ui/{p-0f08bb20.entry.js → p-a8739942.entry.js} +18 -18
  248. package/dist/genexus-ide-ui/p-a8739942.entry.js.map +1 -0
  249. package/dist/genexus-ide-ui/{p-c0e184da.entry.js → p-aa324232.entry.js} +2 -2
  250. package/dist/genexus-ide-ui/{p-d32a6ca4.entry.js → p-af05e095.entry.js} +2 -2
  251. package/dist/genexus-ide-ui/{p-de797eeb.entry.js → p-b5fa3116.entry.js} +2 -2
  252. package/dist/genexus-ide-ui/{p-c7e6222b.entry.js → p-c1162623.entry.js} +55 -55
  253. package/dist/genexus-ide-ui/{p-c7e6222b.entry.js.map → p-c1162623.entry.js.map} +1 -1
  254. package/dist/genexus-ide-ui/{p-5dfd773c.entry.js → p-d9c27591.entry.js} +2 -2
  255. package/dist/genexus-ide-ui/{p-e5712f63.entry.js → p-e2a87cd7.entry.js} +2 -2
  256. package/dist/genexus-ide-ui/{p-6c1928d2.entry.js → p-e36d7f5c.entry.js} +3 -3
  257. package/dist/genexus-ide-ui/{p-6c1928d2.entry.js.map → p-e36d7f5c.entry.js.map} +1 -1
  258. package/dist/genexus-ide-ui/{p-47e31aba.entry.js → p-e4bbec21.entry.js} +3 -3
  259. package/dist/genexus-ide-ui/{p-c2274796.entry.js → p-e4bd955a.entry.js} +2 -2
  260. package/dist/genexus-ide-ui/{p-d5aa2525.entry.js → p-ec2cb326.entry.js} +2 -2
  261. package/dist/genexus-ide-ui/{p-2137f5fa.entry.js → p-ec6129c7.entry.js} +14 -14
  262. package/dist/genexus-ide-ui/{p-2137f5fa.entry.js.map → p-ec6129c7.entry.js.map} +1 -1
  263. package/dist/genexus-ide-ui/{p-ccbd4dab.entry.js → p-f1cc5d30.entry.js} +2 -2
  264. package/dist/genexus-ide-ui/{p-8ea94a5e.entry.js → p-f252dd07.entry.js} +3 -3
  265. package/dist/genexus-ide-ui/{p-6563141c.entry.js → p-f827b9b8.entry.js} +2 -2
  266. package/dist/types/components/current-user-info/current-user-info.d.ts +9 -0
  267. package/dist/types/components.d.ts +10 -2
  268. package/package.json +5 -5
  269. package/dist/cjs/MERCURY_ASSETS-27fcab57.js +0 -9
  270. package/dist/cjs/MERCURY_ASSETS-27fcab57.js.map +0 -1
  271. package/dist/esm/MERCURY_ASSETS-845caae6.js +0 -7
  272. package/dist/esm/MERCURY_ASSETS-845caae6.js.map +0 -1
  273. package/dist/esm/config-ed1f26d7.js.map +0 -1
  274. package/dist/genexus-ide-ui/p-0f08bb20.entry.js.map +0 -1
  275. package/dist/genexus-ide-ui/p-617e65ca.js.map +0 -1
  276. package/dist/genexus-ide-ui/p-64e09524.entry.js.map +0 -1
  277. package/dist/genexus-ide-ui/p-a27c088d.entry.js.map +0 -1
  278. /package/dist/genexus-ide-ui/{p-6747cc1e.entry.js.map → p-0c60c76f.entry.js.map} +0 -0
  279. /package/dist/genexus-ide-ui/{p-793248c8.entry.js.map → p-1e44952c.entry.js.map} +0 -0
  280. /package/dist/genexus-ide-ui/{p-f50076d3.entry.js.map → p-1feae6ef.entry.js.map} +0 -0
  281. /package/dist/genexus-ide-ui/{p-092609aa.entry.js.map → p-22d8de70.entry.js.map} +0 -0
  282. /package/dist/genexus-ide-ui/{p-bb9df26f.entry.js.map → p-27a2429c.entry.js.map} +0 -0
  283. /package/dist/genexus-ide-ui/{p-3637528d.entry.js.map → p-2b1634e7.entry.js.map} +0 -0
  284. /package/dist/genexus-ide-ui/{p-d18718c7.entry.js.map → p-307e47a1.entry.js.map} +0 -0
  285. /package/dist/genexus-ide-ui/{p-a7027cf7.entry.js.map → p-37a2e9ac.entry.js.map} +0 -0
  286. /package/dist/genexus-ide-ui/{p-e5fb0c12.entry.js.map → p-4621ec24.entry.js.map} +0 -0
  287. /package/dist/genexus-ide-ui/{p-2b658e35.entry.js.map → p-4f815835.entry.js.map} +0 -0
  288. /package/dist/genexus-ide-ui/{p-10da0eee.entry.js.map → p-6d8b4f96.entry.js.map} +0 -0
  289. /package/dist/genexus-ide-ui/{p-faea4a40.entry.js.map → p-846c67a1.entry.js.map} +0 -0
  290. /package/dist/genexus-ide-ui/{p-75ed87db.entry.js.map → p-8cebb078.entry.js.map} +0 -0
  291. /package/dist/genexus-ide-ui/{p-1693a2d1.entry.js.map → p-92c51f3e.entry.js.map} +0 -0
  292. /package/dist/genexus-ide-ui/{p-0a690a6b.entry.js.map → p-9e78c60c.entry.js.map} +0 -0
  293. /package/dist/genexus-ide-ui/{p-a9d67992.entry.js.map → p-a1c5775d.entry.js.map} +0 -0
  294. /package/dist/genexus-ide-ui/{p-fc61a10f.entry.js.map → p-a837de2e.entry.js.map} +0 -0
  295. /package/dist/genexus-ide-ui/{p-c0e184da.entry.js.map → p-aa324232.entry.js.map} +0 -0
  296. /package/dist/genexus-ide-ui/{p-d32a6ca4.entry.js.map → p-af05e095.entry.js.map} +0 -0
  297. /package/dist/genexus-ide-ui/{p-de797eeb.entry.js.map → p-b5fa3116.entry.js.map} +0 -0
  298. /package/dist/genexus-ide-ui/{p-5dfd773c.entry.js.map → p-d9c27591.entry.js.map} +0 -0
  299. /package/dist/genexus-ide-ui/{p-e5712f63.entry.js.map → p-e2a87cd7.entry.js.map} +0 -0
  300. /package/dist/genexus-ide-ui/{p-47e31aba.entry.js.map → p-e4bbec21.entry.js.map} +0 -0
  301. /package/dist/genexus-ide-ui/{p-c2274796.entry.js.map → p-e4bd955a.entry.js.map} +0 -0
  302. /package/dist/genexus-ide-ui/{p-d5aa2525.entry.js.map → p-ec2cb326.entry.js.map} +0 -0
  303. /package/dist/genexus-ide-ui/{p-ccbd4dab.entry.js.map → p-f1cc5d30.entry.js.map} +0 -0
  304. /package/dist/genexus-ide-ui/{p-8ea94a5e.entry.js.map → p-f252dd07.entry.js.map} +0 -0
  305. /package/dist/genexus-ide-ui/{p-6563141c.entry.js.map → p-f827b9b8.entry.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"names":["newEnvironmentCss","CSS_BUNDLES","MAIN_SECTION_CLASSES","BASIC_SECTION_PARENT_CLASSES","BASIC_TAB_SELECTOR","ADVANCED_TAB_SELECTOR","GxIdeNewEnvironment","_GxIdeNewEnvironment_advancedTabHasBeenRendered","set","this","_GxIdeNewEnvironment_chShortcutsEl","_GxIdeNewEnvironment_envNameModifiedByUser","_GxIdeNewEnvironment_frontEndsCheckedMap","Map","_GxIdeNewEnvironment_selectedDataStoreId","_GxIdeNewEnvironment_selectedLanguageId","_GxIdeNewEnvironment_selectedRuntimeEnvironmentId","_GxIdeNewEnvironment_shortcutsSrc","getAssetPath","_GxIdeNewEnvironment_newEnvironmentSectionsModel","_GxIdeNewEnvironment_componentLocale","_GxIdeNewEnvironment_dataStoreEl","_GxIdeNewEnvironment_environmentNameEl","_GxIdeNewEnvironment_languageEl","_GxIdeNewEnvironment_setAsCurrentEnvironmentEl","_GxIdeNewEnvironment_dataStoreValueChangedHandler","__classPrivateFieldSet","__classPrivateFieldGet","value","_GxIdeNewEnvironment_updateEnvironmentName","call","_GxIdeNewEnvironment_envNameInputHandler","e","newEnvName","detail","trim","environmentName","_GxIdeNewEnvironment_evaluateSelectedRuntimeEnvironmentId","_a","runtimes","_GxIdeNewEnvironment_evaluateTooltipRender","controlReference","_b","validatableControls","get","id","hasError","_c","message","h","class","actionElement","blockAlign","config","tooltipSettings","inlineAlign","delay","_GxIdeNewEnvironment_initializeValidatableControlsBasicTab","forEach","validatableControl","reference","undefined","_GxIdeNewEnvironment_languageValueChangedHandler","async","event","_GxIdeNewEnvironment_updateDataSources","_GxIdeNewEnvironment_updateFrontEnds","_GxIdeNewEnvironment_renderAdvanced","name","_GxIdeNewEnvironment_renderBasic","length","runtime","onChange","_GxIdeNewEnvironment_runtimeEnvironmentChangedHandler","model","runtimesRadioGroupModel","caption","tabBasic","backEnd","backEndLabel","htmlFor","language","part","disabled","languages","languageComboBoxModel","onInput","ref","el","dataStores","dataStoresComboBoxModel","frontEnd","frontEndLabel","role","generators","renderChCheckboxItems","frontEnds","_GxIdeNewEnvironment_frontEndCheckboxInputHandler","_GxIdeNewEnvironment_createCallbackHandler","selectedFrontEndIds","createCallback","setAsCurrent","then","formSubmitResult","validateControls","_GxIdeNewEnvironment_tabSelectionChangedHandler","newSelectedId","advancedTabIsVisible","updatedDataSources","getDataSourcesCallback","getEnvironmentNameCallback","updatedFrontEnds","getFrontEndsCallback","checkedValue","target","checked","_GxIdeNewEnvironment_updateFrontEndsCheckedMap","checkboxId","currentState","push","checkboxIndex","findIndex","removeIndex","dataStoresChanged","newValue","mapOptionsToComboBoxItemModel","getSelectedItem","languagesChanged","runtimesChanged","connectedCallback","componentDidLoad","componentDidRender","componentWillLoad","Locale","getComponentStrings","tabLabel","tabAdvanced","suspendShortcuts","suspend","render","Host","src","header","isAdvanced","autoFocus","placeholder","environmentNamePlaceholder","tab","tabListPosition","selectedId","overflow","contain","onSelectedItemChange","slot","footer","setAsCurrentEnvironment","setAsTarget","onClick","cancelCallback","btnCancel","btnCreate"],"sources":["src/components/new-environment/new-environment.scss?tag=gx-ide-new-environment&encapsulation=shadow","src/components/new-environment/new-environment.tsx"],"sourcesContent":[":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.section {\n display: contents;\n}\n\n.basic,\n.advanced {\n padding-block-start: var(--mer-spacing--md);\n block-size: 100%;\n overflow: auto;\n}\n.advanced {\n padding-block-end: var(--content-block-spacing);\n}\n\n// basic\n.basic {\n display: grid;\n grid-template:\n \"runtime-environment runtime-environment\" max-content\n \"back-end front-end\" 1fr;\n grid-template-columns: 1fr 1fr;\n}\n.basic__runtime-environment {\n grid-area: runtime-environment;\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--mer-spacing--xs);\n}\n.basic__runtime-environment.one-runtime-only {\n align-items: center;\n flex-direction: row;\n justify-content: center;\n}\n.control-header__back-end,\n.control-header__front-end {\n padding-block-start: var(--mer-spacing--md);\n}\n.basic__back-end {\n grid-area: back-end;\n}\n.basic__front-end {\n grid-area: front-end;\n}\n.basic__back-end,\n.basic__front-end {\n display: grid;\n grid-template-rows: max-content 1fr;\n grid-auto-rows: max-content;\n overflow: auto;\n}\n.main__back-end {\n border-inline-end: var(--section-common-border);\n}\n.main__back-end,\n.main__front-end {\n grid-auto-rows: max-content;\n padding-block: var(--content-block-spacing);\n overflow: auto;\n}\n\n// WA / TODO: Add a helper class in Mercury to justify text.\n.text-align-center {\n text-align: center; // should be resolved on mercury\n}\n\n.tab::part(page) {\n // WA / TODO: Remove this line when the ch-tab renders supports scrollbar\n // custom styling\n scrollbar-width: thin;\n}\n","/* STENCIL IMPORTS */\nimport {\n Component,\n Element,\n getAssetPath,\n Host,\n Method,\n Prop,\n State,\n h,\n Watch\n} from \"@stencil/core\";\n\nimport { MercuryBundles } from \"@genexus/mercury\";\n\nimport { config } from \"../../common/config\";\nimport { Locale } from \"../../common/locale\";\nimport {\n mapOptionsToComboBoxItemModel,\n renderChCheckboxItems\n} from \"../../common/helpers\";\nimport { getSelectedItem } from \"../../common/common\";\nimport { FormSubmitResult, GxOption } from \"../../common/types\";\nimport {\n ControlValidation,\n validateControls\n} from \"../../common/form-validation\";\nimport {\n ChRadioGroupRenderCustomEvent,\n TabModel,\n ComboBoxModel,\n ChEditCustomEvent,\n RadioGroupModel,\n ChCheckboxCustomEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { removeIndex } from \"../../common/array\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n // TODO: review if \"utils/form--full\" is required.\n \"resets/box-sizing\",\n \"components/tab\",\n \"components/tooltip\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"chameleon/scrollbar\"\n];\n\nconst MAIN_SECTION_CLASSES: string = \"main\";\nconst BASIC_SECTION_PARENT_CLASSES: string = \"basic\";\nconst BASIC_TAB_SELECTOR: string = \"basic\";\nconst ADVANCED_TAB_SELECTOR: string = \"advanced\";\n\n@Component({\n tag: \"gx-ide-new-environment\",\n styleUrl: \"new-environment.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/new-environment\"]\n})\nexport class GxIdeNewEnvironment {\n #advancedTabHasBeenRendered: boolean = false;\n #chShortcutsEl!: HTMLChShortcutsElement;\n #envNameModifiedByUser = false;\n /**\n * frontEndsState saves the id's of the front ends checkboxes that are checked\n */\n // TODO (Use a set instead of an array to improve performance)\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #frontEndsCheckedMap = new Map<string, string[]>();\n #selectedDataStoreId: string;\n #selectedLanguageId: string;\n #selectedRuntimeEnvironmentId: string;\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/new-environment/shortcuts.json`\n );\n #newEnvironmentSectionsModel: TabModel = [];\n\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\n @Element() el: HTMLGxIdeNewEnvironmentElement;\n\n // References needed to collect data con \"createCallback\" button submit*/\n #dataStoreEl!: HTMLChComboBoxRenderElement;\n #environmentNameEl!: HTMLChEditElement;\n #languageEl!: HTMLChComboBoxRenderElement;\n #setAsCurrentEnvironmentEl!: HTMLChCheckboxElement;\n\n @State() advancedTabIsVisible: boolean = false;\n\n /**\n * Allows selecting multiple generators for the front end\n * TODO: Check if this property can be deleted, since we can call getFrontEndsCallback.\n */\n @State() frontEnds: GxOption[];\n\n @State() validatableControls = new Map<string, ControlValidation>();\n\n // representations of GxOption[] as ComboBoxModel or RadioGroupModel.\n @State() dataStoresComboBoxModel: ComboBoxModel = [];\n @State() languageComboBoxModel: ComboBoxModel = [];\n @State() runtimesRadioGroupModel: RadioGroupModel = [];\n\n /**\n * Callback invoked when user wants to cancel\n */\n @Prop() readonly cancelCallback: CancelCallback;\n\n /**\n * Callback invoked when user confirms the KB creation\n */\n @Prop() readonly createCallback!: CreateCallback;\n\n /**\n * Allows defining the DBMS to be used in the solution\n */\n @Prop({ mutable: true }) dataStores!: GxOption[];\n @Watch(\"dataStores\")\n dataStoresChanged(newValue: GxOption[]) {\n if (newValue?.length) {\n this.dataStoresComboBoxModel = mapOptionsToComboBoxItemModel(newValue);\n this.#selectedDataStoreId = getSelectedItem(newValue);\n }\n }\n\n /**\n * Name of the new environment\n */\n @Prop({ mutable: true }) environmentName: string;\n\n /**\n * Callback invoked when user changes the language or the runtime\n */\n @Prop() readonly getDataSourcesCallback!: GetDataSourcesCallback;\n\n /**\n * Callback invoked when user changes the language or data source\n */\n @Prop() readonly getEnvironmentNameCallback!: GetEnvironmentNameCallback;\n\n /**\n * Callback invoked when user changes the language\n */\n @Prop() readonly getFrontEndsCallback!: GetFrontEndsCallback;\n\n /**\n * Define if the Advanced tab should be displayed\n */\n @Prop() readonly isAdvanced: boolean = false;\n\n /**\n * Possible values for 'Language' combo\n */\n @Prop() readonly languages!: GxOption[];\n @Watch(\"languages\")\n languagesChanged(newValue: GxOption[]) {\n if (newValue?.length) {\n this.languageComboBoxModel = mapOptionsToComboBoxItemModel(newValue);\n this.#selectedLanguageId = getSelectedItem(newValue);\n this.#updateFrontEnds();\n }\n }\n\n /**\n * Possible values for 'Runtime Environment' radio button\n */\n @Prop() readonly runtimes!: GxOption[];\n @Watch(\"runtimes\")\n runtimesChanged(newValue: GxOption[]) {\n if (newValue?.length) {\n this.runtimesRadioGroupModel = mapOptionsToComboBoxItemModel(\n this.runtimes\n );\n }\n }\n\n /**\n * Belongs to checkbox 'Set as current environment' @default true\n *\n */\n @Prop() readonly setAsTarget?: boolean = true;\n\n connectedCallback() {\n this.dataStoresChanged(this.dataStores);\n this.languagesChanged(this.languages);\n this.runtimesChanged(this.runtimes);\n }\n\n componentDidLoad() {\n this.#initializeValidatableControlsBasicTab();\n }\n\n componentDidRender() {\n if (this.advancedTabIsVisible && !this.#advancedTabHasBeenRendered) {\n // just call this once.\n this.#advancedTabHasBeenRendered = true;\n }\n }\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.#newEnvironmentSectionsModel = [\n {\n id: BASIC_TAB_SELECTOR,\n name: this.#componentLocale.tabBasic.tabLabel\n },\n {\n id: ADVANCED_TAB_SELECTOR,\n name: this.#componentLocale.tabAdvanced.tabLabel\n }\n ];\n this.#evaluateSelectedRuntimeEnvironmentId();\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 #dataStoreValueChangedHandler = () => {\n /* the data store item id is used for the value (they are equal)*/\n this.#selectedDataStoreId = this.#dataStoreEl.value;\n this.#updateEnvironmentName();\n };\n\n #envNameInputHandler = (e: ChEditCustomEvent<string> | InputEvent) => {\n const newEnvName = (e as ChEditCustomEvent<string>).detail.trim();\n this.#envNameModifiedByUser = newEnvName !== this.environmentName;\n };\n\n #evaluateSelectedRuntimeEnvironmentId = () => {\n this.#selectedRuntimeEnvironmentId = this.runtimes[0]?.value;\n };\n\n // TODO: We must avoid performing the get 3 times.\n // It is used on new-environment as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #initializeValidatableControlsBasicTab = () => {\n // populate #controlsValidation with the controls that could have errors.\n const validatableControls: HTMLElement[] = [\n this.#dataStoreEl,\n this.#languageEl\n ];\n validatableControls.forEach(validatableControl => {\n if (validatableControl.id) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #languageValueChangedHandler = async (\n event: CustomEvent<string> | InputEvent\n ) => {\n this.#selectedLanguageId = event.detail as string;\n await this.#updateDataSources();\n this.#updateFrontEnds();\n this.#updateEnvironmentName();\n };\n\n #renderAdvanced = (): Element => {\n return <slot name=\"property-grid\"></slot>;\n };\n\n #renderBasic = (): HTMLElement[] => {\n return [\n <div\n class={{\n \"basic__runtime-environment\": true,\n \"control-header-with-border\": true,\n \"one-runtime-only\": this.runtimes.length === 1\n }}\n >\n {this.runtimes.length > 1\n ? [\n <h2\n // Runtime Environment\n class=\"heading-5 text-align-center\"\n >\n {this.#componentLocale.runtime}\n </h2>,\n <ch-radio-group-render\n class=\"radio-group\"\n onChange={this.#runtimeEnvironmentChangedHandler}\n model={this.runtimesRadioGroupModel}\n value={this.#selectedRuntimeEnvironmentId}\n ></ch-radio-group-render>\n ]\n : [\n <h2 class=\"heading-5 text-align-center\">\n {this.#componentLocale.runtime}:\n </h2>,\n <p>{this.runtimesRadioGroupModel[0].caption}</p>\n ]}\n </div>,\n <section class=\"basic__back-end scrollable\">\n <h2\n // back end\n class=\"control-header control-header-with-border control-header__back-end heading-5 text-align-center spacing-body-inline\"\n >\n {this.#componentLocale.tabBasic.backEnd.backEndLabel}\n </h2>\n\n <div class=\"field-group main__back-end spacing-body-inline scrollable\">\n <div\n // #language\n class=\"field field-block\"\n >\n <label class=\"label\" htmlFor=\"language\">\n {this.#componentLocale.tabBasic.backEnd.language}\n </label>\n <ch-combo-box-render\n id=\"language\"\n class=\"combo-box\"\n part=\"language\"\n value={this.#selectedLanguageId}\n disabled={this.languages.length === 0}\n model={this.languageComboBoxModel}\n onInput={this.#languageValueChangedHandler}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#languageEl = el as HTMLChComboBoxRenderElement)\n }\n // TODO: toolTip={config.tooltip}\n ></ch-combo-box-render>\n {this.#evaluateTooltipRender(this.#languageEl)}\n </div>\n\n <div\n // #data stores\n class=\"field field-block\"\n >\n <label class=\"label\" htmlFor=\"data-store\">\n {this.#componentLocale.tabBasic.backEnd.dataStores}\n </label>\n <ch-combo-box-render\n id=\"data-store\"\n class=\"combo-box\"\n part=\"data-store\"\n value={this.#selectedDataStoreId}\n model={this.dataStoresComboBoxModel}\n onInput={this.#dataStoreValueChangedHandler}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#dataStoreEl = el as HTMLChComboBoxRenderElement)\n }\n // TODO: toolTip={config.tooltip}\n ></ch-combo-box-render>\n {this.#evaluateTooltipRender(this.#dataStoreEl)}\n </div>\n </div>\n </section>,\n\n <section class=\"basic__front-end scrollable\">\n <h2\n // front end\n class=\"control-header control-header-with-border control-header__front-end heading-5 text-align-center spacing-body-inline\"\n >\n {this.#componentLocale.tabBasic.frontEnd.frontEndLabel}\n </h2>\n <div\n class=\"field-group front-end__checkboxes spacing-body-inline main__front-end scrollable\"\n role=\"group\"\n aria-labelledby={this.#componentLocale.tabBasic.frontEnd.generators}\n >\n {renderChCheckboxItems(\n this.frontEnds,\n this.#frontEndCheckboxInputHandler,\n this.#frontEndsCheckedMap.get(this.#selectedLanguageId)\n )}\n </div>\n </section>\n ];\n };\n\n #runtimeEnvironmentChangedHandler = async (\n event: ChRadioGroupRenderCustomEvent<string>\n ): Promise<void> => {\n this.#selectedRuntimeEnvironmentId = event.detail;\n await this.#updateDataSources();\n this.#updateEnvironmentName();\n };\n\n #createCallbackHandler = async () => {\n const selectedFrontEndIds =\n this.#frontEndsCheckedMap.get(this.#selectedLanguageId) ?? [];\n\n this.createCallback({\n setAsCurrent: !!this.#setAsCurrentEnvironmentEl?.value,\n name: this.#environmentNameEl.value,\n runtime: this.#selectedRuntimeEnvironmentId,\n language: this.#languageEl.value,\n dataStores: this.#dataStoreEl.value,\n frontEnds: selectedFrontEndIds\n }).then((formSubmitResult: FormSubmitResult) => {\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n });\n };\n\n #tabSelectionChangedHandler = (\n event: CustomEvent<{\n lastSelectedIndex: number;\n newSelectedId: string;\n newSelectedIndex: number;\n }>\n ): void => {\n if (event.detail.newSelectedId === ADVANCED_TAB_SELECTOR) {\n this.advancedTabIsVisible = true;\n // Some logic for advanced tab is done on componentDidRender lifecycle,\n // since the reference to the elements is needed.\n }\n };\n\n #updateDataSources = async () => {\n const updatedDataSources = await this.getDataSourcesCallback(\n this.#selectedLanguageId,\n this.#selectedRuntimeEnvironmentId\n );\n if (updatedDataSources?.length > 0) {\n this.dataStores = updatedDataSources;\n }\n };\n\n #updateEnvironmentName = async () => {\n if (!this.#envNameModifiedByUser) {\n this.environmentName = await this.getEnvironmentNameCallback(\n this.#selectedLanguageId,\n this.#selectedDataStoreId,\n this.#selectedRuntimeEnvironmentId\n );\n }\n };\n\n #updateFrontEnds = async () => {\n const updatedFrontEnds = await this.getFrontEndsCallback(\n this.#selectedLanguageId\n );\n if (updatedFrontEnds?.length > 0) {\n this.frontEnds = updatedFrontEnds;\n }\n };\n\n #frontEndCheckboxInputHandler = (\n event: ChCheckboxCustomEvent<string> | InputEvent\n ) => {\n const checkedValue = (event.target as HTMLChCheckboxElement).checkedValue;\n const checked = event.detail === checkedValue;\n this.#updateFrontEndsCheckedMap(checkedValue, checked);\n };\n\n /**\n * This function updates frontEndsCheckedMap, that contains the checked\n * checkboxes for each language front ends.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #updateFrontEndsCheckedMap = (checkboxId: string, checked: boolean) => {\n let currentState = this.#frontEndsCheckedMap.get(this.#selectedLanguageId);\n if (!currentState) {\n // first time\n currentState = [];\n this.#frontEndsCheckedMap.set(this.#selectedLanguageId, currentState);\n }\n if (checked) {\n // update by adding\n currentState.push(checkboxId);\n } else {\n // update by removing\n const checkboxIndex = currentState.findIndex(id => id === checkboxId);\n removeIndex(currentState, checkboxIndex);\n }\n };\n\n render() {\n return (\n <Host class=\"widget scrollable\">\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=\"section\">\n <header\n class={{\n \"header\": true,\n \"spacing-body-inline\": true,\n \"spacing-body-block-start\": true,\n \"control-header\": this.isAdvanced,\n \"control-header-with-border\": !this.isAdvanced\n }}\n >\n <div\n // #environment name\n class=\"field field-inline\"\n >\n <label class=\"label\" htmlFor=\"environment-name\">\n {this.#componentLocale.name}\n </label>\n <ch-edit\n // environment name\n autoFocus\n id=\"environment-name\"\n class=\"input\"\n part=\"environment-name\"\n value={this.environmentName}\n placeholder={this.#componentLocale.environmentNamePlaceholder}\n // TODO: toolTip={config.tooltip}\n ref={(el: HTMLChEditElement) =>\n (this.#environmentNameEl = el as HTMLChEditElement)\n }\n onInput={this.#envNameInputHandler}\n ></ch-edit>\n </div>\n </header>\n\n {this.isAdvanced ? (\n <ch-tab-render\n // main section\n class={{\n tab: true,\n [MAIN_SECTION_CLASSES]: true\n }}\n tabListPosition=\"block-start\"\n model={this.#newEnvironmentSectionsModel}\n selectedId={BASIC_TAB_SELECTOR}\n overflow=\"auto\"\n contain=\"size\"\n onSelectedItemChange={\n !this.advancedTabIsVisible && this.#tabSelectionChangedHandler\n }\n >\n <div\n slot={BASIC_TAB_SELECTOR}\n class={BASIC_SECTION_PARENT_CLASSES}\n part=\"tab-button-basic\"\n >\n {this.#renderBasic()}\n </div>\n {this.advancedTabIsVisible && (\n <div\n slot={ADVANCED_TAB_SELECTOR}\n class=\"advanced spacing-body-inline\"\n part=\"tab-button-advanced\"\n >\n {this.#renderAdvanced()}\n </div>\n )}\n </ch-tab-render>\n ) : (\n <div\n // main section\n class={MAIN_SECTION_CLASSES}\n >\n <div class={BASIC_SECTION_PARENT_CLASSES}>\n {this.#renderBasic()}\n </div>\n </div>\n )}\n\n <footer\n class={{\n \"control-footer\": this.isAdvanced,\n \"control-footer-with-border\": !this.isAdvanced,\n \"control-footer-space-between\": true,\n \"spacing-body-block-end\": true,\n \"spacing-body-inline\": true\n }}\n >\n <ch-checkbox\n // #set as current environment\n class=\"checkbox\"\n caption={this.#componentLocale.footer.setAsCurrentEnvironment}\n ref={(el: HTMLChCheckboxElement) =>\n (this.#setAsCurrentEnvironmentEl = el as HTMLChCheckboxElement)\n }\n checkedValue=\"current-environment\"\n value={this.setAsTarget ? \"current-environment\" : \"\"}\n part=\"set-as-current-environment\"\n ></ch-checkbox>\n\n <div class=\"buttons-spacer\">\n <button\n // #cancel\n class=\"button-secondary\"\n onClick={this.cancelCallback}\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 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 type CancelCallback = () => Promise<void>;\n\nexport type CreateCallback = (\n data: NewEnvironmentData\n) => Promise<FormSubmitResult>;\n\nexport type GetDataSourcesCallback = (\n selectedLanguageId: string,\n selectedRuntimeId: string\n) => Promise<GxOption[]>;\n\nexport type GetEnvironmentNameCallback = (\n selectedLanguageId: string,\n selectedDataSourceId: string,\n selectedRuntimeId: string\n) => Promise<string | undefined>;\n\nexport type GetFrontEndsCallback = (\n selectedLanguageId: string\n) => Promise<GxOption[]>;\n\nexport interface NewEnvironmentData {\n setAsCurrent: boolean;\n name: string;\n runtime: string;\n language: string;\n dataStores: string;\n frontEnds: string[];\n}\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["getInitialsFromName","name","trim","nameData","split","filter","Boolean","length","toUpperCase","limitFullName","fullName","fullNameData","currentUserInfoCss","CSS_BUNDLES","CHEVRON_DOWN_ICON","getIconPath","category","colorType","MY_ACCOUNT_ID","CHANGE_TEAM_ID","SIGN_OUT_ID","LANGUAGE_ID","GxIdeNewEnvironment","_GxIdeNewEnvironment_componentLocale","set","this","_GxIdeNewEnvironment_initials","_GxIdeNewEnvironment_menuDropdownModel","_GxIdeNewEnvironment_userLoginButton","_GxIdeNewEnvironment_dropDownitemClickHandler","_event","_target","itemId","changeTeamCallback","signOutCallback","changeLanguageCallback","componentWillLoad","__classPrivateFieldSet","Locale","getComponentStrings","el","userInfo","id","caption","__classPrivateFieldGet","changeTeamLabel","showSeparator","signOutLabel","render","userName","_a","h","Host","class","model","position","itemClickCallback","ref","slot","_b","team","src","containerRef","onClick","termsCallback","termsAndConditionsText","privacyCallback","privacyPolicyText"],"sources":["src/components/current-user-info/helpers.tsx","src/components/current-user-info/current-user-info.scss?tag=gx-ide-current-user-info&encapsulation=shadow","src/components/current-user-info/current-user-info.tsx"],"sourcesContent":["/**\n * Returns initials from the first two words of a name. Returns \"X\" for invalid input.\n *\n * @param name - The full name string.\n * @returns Initials of the first two words, or \"X\" if invalid.\n *\n * Example:\n * getInitialsFromName(\"John Doe\") -> \"JD\"\n * getInitialsFromName(\"Jane\") -> \"J\"\n * getInitialsFromName(\"\") -> \"X\"\n */\nexport const getInitialsFromName = (name: string): string | null => {\n if (typeof name !== \"string\" || name.trim() === \"\") {\n return \"X\";\n }\n\n const nameData = name.split(\" \").filter(Boolean); // Remove any empty strings from splitting\n if (nameData.length === 1) {\n return nameData[0][0].toUpperCase();\n } else {\n return `${nameData[0][0].toUpperCase()}${nameData[1][0].toUpperCase()}`;\n }\n};\n\n/**\n * Limits the full name to the first two words. Returns null for invalid input.\n *\n * @param fullName - The full name string to be limited.\n * @returns The first two words of the full name, or null if invalid.\n *\n * Example:\n * limitFullName(\"John Doe Smith\") -> \"John Doe\"\n * limitFullName(\"Jane\") -> \"Jane\"\n * limitFullName(\"\") -> null\n */\nexport const limitFullName = (fullName: string): string | null => {\n if (typeof fullName !== \"string\" || fullName.trim() === \"\") {\n return null;\n }\n\n const fullNameData = fullName.split(\" \").filter(Boolean); // Remove any empty strings from splitting\n if (fullNameData.length === 1) {\n return fullNameData[0];\n } else {\n return `${fullNameData[0]} ${fullNameData[1]}`;\n }\n};\n","@import \"../../../node_modules/@genexus/mercury/dist/mercury.scss\";\n\n:host {\n display: inline-grid;\n justify-items: end;\n block-size: 100%;\n}\n\n.user-login {\n &__button {\n all: unset;\n display: grid;\n grid-template-columns: max-content max-content max-content;\n align-items: center;\n gap: var(--mer-spacing--sm);\n block-size: auto;\n cursor: pointer;\n }\n &__details {\n display: grid;\n grid-template-rows: max-content max-content;\n gap: var(--mer-spacing--3xs);\n justify-items: end;\n }\n &__name {\n font-weight: var(--mer-font__weight--medium);\n font-size: var(--mer-font__size--3xs);\n color: var(--mer-text__on-elevation);\n }\n &__organization {\n font-weight: var(--mer-font__weight--light);\n font-size: var(--mer-font__size--4xs);\n color: var(--mer-text__neutral);\n }\n &__name,\n &__organization {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n max-inline-size: 120px;\n display: inline-block;\n }\n &__avatar {\n font-size: 9px;\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n justify-content: center;\n block-size: var(--mer-spacing--lg);\n inline-size: var(--mer-spacing--lg);\n color: var(--mer-text__on-elevation);\n border-radius: 50%;\n background-color: var(--mer-color__tinted-primary--10);\n border: var(--mer-border__width--sm) solid var(--mer-color__primary--200);\n }\n\n &__footer {\n display: flex;\n flex-direction: column;\n gap: var(--mer-spacing--2xs);\n }\n}\n\n.agreement-link {\n text-decoration: underline;\n cursor: pointer;\n}\n","/* STENCIL IMPORTS */\nimport { Component, Element, Host, Prop, State, h } from \"@stencil/core\";\n\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\nimport { Locale } from \"../../common/locale\";\nimport { getInitialsFromName, limitFullName } from \"./helpers\";\nimport { DropdownModel } from \"@genexus/chameleon-controls-library\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n // TODO: review if \"utils/form--full\" is required.\n \"resets/box-sizing\",\n \"components/tooltip\",\n \"components/switch\",\n \"components/icon\",\n \"components/dropdown\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"chameleon/scrollbar\"\n];\n\nconst CHEVRON_DOWN_ICON = getIconPath({\n category: \"navigation\",\n name: \"chevron-down\",\n colorType: \"neutral\"\n});\n\nconst MY_ACCOUNT_ID = \"my-account\";\nconst CHANGE_TEAM_ID = \"change-team\";\nconst SIGN_OUT_ID = \"sign-out\";\nconst LANGUAGE_ID = \"language\";\n\n@Component({\n tag: \"gx-ide-current-user-info\",\n styleUrl: \"current-user-info.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/current-user-info\"]\n})\nexport class GxIdeNewEnvironment {\n #componentLocale: any;\n #initials: string = \"\";\n // #mode: Mode;\n #menuDropdownModel: DropdownModel;\n\n @Element() el: HTMLGxIdeCurrentUserInfoElement;\n #userLoginButton: HTMLButtonElement;\n\n @State() showMenu: boolean = false;\n\n /**\n * User data\n */\n @Prop() readonly userInfo: UserInfo;\n\n /**\n * Callback executed when the user click \"My Account\" link\n */\n @Prop() readonly myAccountCallback!: () => Promise<void>;\n\n /**\n * Callback executed when the user click \"change team\" link\n */\n @Prop() readonly changeTeamCallback!: () => Promise<void>;\n\n /**\n * Callback executed when the user click \"Language\" link\n */\n @Prop() readonly changeLanguageCallback!: () => Promise<void>;\n\n /**\n * Callback executed when the user switch the \"Mode\" status\n */\n @Prop() readonly changeModeCallback!: (mode: Mode) => Promise<void>;\n\n /**\n * Callback executed when the user click \"Sign Out\" link\n */\n @Prop() readonly signOutCallback!: () => Promise<void>;\n\n /**\n * Callback executed when the user clicks on the \"term and conditions\" link\n */\n @Prop() readonly termsCallback: () => Promise<void>;\n\n /**\n * Callback executed when the user clicks on the \"privacy policy\" link\n */\n @Prop() readonly privacyCallback: () => Promise<void>;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.#initials = getInitialsFromName(this.userInfo.name);\n this.#menuDropdownModel = [\n // {\n // id: MY_ACCOUNT_ID,\n // caption: this.#componentLocale.myAccountLabel,\n // showSeparator: false\n // },\n {\n id: CHANGE_TEAM_ID,\n caption: this.#componentLocale.changeTeamLabel,\n showSeparator: false\n },\n {\n id: SIGN_OUT_ID,\n caption: this.#componentLocale.signOutLabel,\n showSeparator: true\n }\n // {\n // id: LANGUAGE_ID,\n // caption: this.#componentLocale.languageLabel,\n // showSeparator: true\n // }\n ];\n }\n\n // #handleModeSwitch = () => {\n // this.#mode = this.#mode === \"dark\" ? \"light\" : \"dark\";\n // if (this.changeModeCallback) {\n // this.changeModeCallback(this.#mode);\n // }\n // };\n\n #dropDownitemClickHandler = (\n _event: UIEvent,\n _target: string,\n itemId: string\n ): void => {\n if (itemId === MY_ACCOUNT_ID) {\n // this.myAccountCallback();\n } else if (itemId === CHANGE_TEAM_ID) {\n this.changeTeamCallback();\n } else if (itemId === SIGN_OUT_ID) {\n this.signOutCallback();\n } else if (itemId === LANGUAGE_ID) {\n this.changeLanguageCallback();\n }\n };\n\n render() {\n const userName = limitFullName(this.userInfo?.name);\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-dropdown-render\n class=\"dropdown\"\n model={this.#menuDropdownModel}\n position=\"InsideEnd_OutsideEnd\"\n itemClickCallback={this.#dropDownitemClickHandler}\n >\n <button\n class=\"user-login__button\"\n ref={el => (this.#userLoginButton = el as HTMLButtonElement)}\n slot=\"action\"\n >\n <div class=\"user-login__details\">\n {userName ? (\n <span class=\"user-login__name\">{userName}</span>\n ) : null}\n {this.userInfo?.team ? (\n <span class=\"user-login__organization\">\n {this.userInfo.team}\n </span>\n ) : null}\n </div>\n\n <div class=\"user-login__avatar\">{this.#initials}</div>\n <ch-image\n src={CHEVRON_DOWN_ICON}\n class=\"icon-md\"\n containerRef={this.#userLoginButton}\n ></ch-image>\n </button>\n <div class=\"user-login__footer footer-slot\" slot=\"footer\">\n <span\n class=\"text-body-regular-s agreement-link\"\n onClick={this.termsCallback}\n >\n {this.#componentLocale.termsAndConditionsText}\n </span>\n <span\n class=\"text-body-regular-s agreement-link\"\n onClick={this.privacyCallback}\n >\n {this.#componentLocale.privacyPolicyText}\n </span>\n </div>\n </ch-dropdown-render>\n </Host>\n );\n }\n}\n\nexport type UserInfo = {\n name: string;\n team: string;\n};\n\nexport type Mode = \"dark\" | \"light\";\n"],"mappings":"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"}