@genexus/genexus-ide-ui 1.1.5 → 1.1.7

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 (699) hide show
  1. package/dist/cjs/{code-render-0e9837c4.js → code-render-55d37767.js} +3 -3
  2. package/dist/cjs/code-render-55d37767.js.map +1 -0
  3. package/dist/cjs/{form-validation-ffe2b957.js → form-validation-178cf461.js} +3 -7
  4. package/dist/cjs/form-validation-178cf461.js.map +1 -0
  5. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  6. package/dist/cjs/gx-ide-about.cjs.entry.js +1 -1
  7. package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js +15 -9
  8. package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js.map +1 -1
  9. package/dist/cjs/gx-ide-ai-message.cjs.entry.js +2 -2
  10. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +4 -3
  11. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js.map +1 -1
  12. package/dist/cjs/gx-ide-bpm-assign-roles.cjs.entry.js +1 -1
  13. package/dist/cjs/gx-ide-bpm-export-xpdl.cjs.entry.js +5 -3
  14. package/dist/cjs/gx-ide-bpm-export-xpdl.cjs.entry.js.map +1 -1
  15. package/dist/cjs/gx-ide-bpm-import-files.cjs.entry.js +3 -2
  16. package/dist/cjs/gx-ide-bpm-import-files.cjs.entry.js.map +1 -1
  17. package/dist/cjs/gx-ide-bpm-import-gxpm.cjs.entry.js +1 -1
  18. package/dist/cjs/gx-ide-bpm-objects-selector.cjs.entry.js +1 -1
  19. package/dist/cjs/gx-ide-bpm-sync-gam-roles.cjs.entry.js +3 -2
  20. package/dist/cjs/gx-ide-bpm-sync-gam-roles.cjs.entry.js.map +1 -1
  21. package/dist/cjs/gx-ide-bpm-task-documents.cjs.entry.js +11 -9
  22. package/dist/cjs/gx-ide-bpm-task-documents.cjs.entry.js.map +1 -1
  23. package/dist/cjs/gx-ide-bpm-timer-duration.cjs.entry.js +3 -2
  24. package/dist/cjs/gx-ide-bpm-timer-duration.cjs.entry.js.map +1 -1
  25. package/dist/cjs/gx-ide-card.cjs.entry.js +1 -1
  26. package/dist/cjs/gx-ide-chat-container_2.cjs.entry.js +1 -1
  27. package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js +23 -18
  28. package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js.map +1 -1
  29. package/dist/cjs/gx-ide-container_2.cjs.entry.js +2 -1
  30. package/dist/cjs/gx-ide-container_2.cjs.entry.js.map +1 -1
  31. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +10 -6
  32. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
  33. package/dist/cjs/gx-ide-current-user-info.cjs.entry.js +4 -3
  34. package/dist/cjs/gx-ide-current-user-info.cjs.entry.js.map +1 -1
  35. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +5 -4
  36. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js.map +1 -1
  37. package/dist/cjs/gx-ide-data-selector.cjs.entry.js +4 -3
  38. package/dist/cjs/gx-ide-data-selector.cjs.entry.js.map +1 -1
  39. package/dist/cjs/gx-ide-data-type-selector.cjs.entry.js +5 -4
  40. package/dist/cjs/gx-ide-data-type-selector.cjs.entry.js.map +1 -1
  41. package/dist/cjs/gx-ide-deployment-tool.cjs.entry.js +20 -16
  42. package/dist/cjs/gx-ide-deployment-tool.cjs.entry.js.map +1 -1
  43. package/dist/cjs/gx-ide-design-import.cjs.entry.js +29 -21
  44. package/dist/cjs/gx-ide-design-import.cjs.entry.js.map +1 -1
  45. package/dist/cjs/gx-ide-directory-selector.cjs.entry.js +2 -1
  46. package/dist/cjs/gx-ide-directory-selector.cjs.entry.js.map +1 -1
  47. package/dist/cjs/gx-ide-edit-module-server.cjs.entry.js +3 -2
  48. package/dist/cjs/gx-ide-edit-module-server.cjs.entry.js.map +1 -1
  49. package/dist/cjs/gx-ide-entity-selector.cjs.entry.js +5 -3
  50. package/dist/cjs/gx-ide-entity-selector.cjs.entry.js.map +1 -1
  51. package/dist/cjs/gx-ide-file-uploader.cjs.entry.js +45 -60
  52. package/dist/cjs/gx-ide-file-uploader.cjs.entry.js.map +1 -1
  53. package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js +3 -2
  54. package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js.map +1 -1
  55. package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js +1 -1
  56. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +8 -5
  57. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js.map +1 -1
  58. package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js +1 -1
  59. package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js.map +1 -1
  60. package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js +5 -14
  61. package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js.map +1 -1
  62. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js +3 -3
  63. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js.map +1 -1
  64. package/dist/cjs/gx-ide-navigation-report.cjs.entry.js +7 -4
  65. package/dist/cjs/gx-ide-navigation-report.cjs.entry.js.map +1 -1
  66. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +18 -13
  67. package/dist/cjs/gx-ide-new-environment.cjs.entry.js.map +1 -1
  68. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +35 -31
  69. package/dist/cjs/gx-ide-new-kb.cjs.entry.js.map +1 -1
  70. package/dist/cjs/gx-ide-new-object.cjs.entry.js +9 -6
  71. package/dist/cjs/gx-ide-new-object.cjs.entry.js.map +1 -1
  72. package/dist/cjs/gx-ide-new-version.cjs.entry.js +61 -17
  73. package/dist/cjs/gx-ide-new-version.cjs.entry.js.map +1 -1
  74. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +7 -6
  75. package/dist/cjs/gx-ide-object-selector.cjs.entry.js.map +1 -1
  76. package/dist/cjs/gx-ide-open-api-import.cjs.entry.js +9 -5
  77. package/dist/cjs/gx-ide-open-api-import.cjs.entry.js.map +1 -1
  78. package/dist/cjs/gx-ide-references.cjs.entry.js +23 -18
  79. package/dist/cjs/gx-ide-references.cjs.entry.js.map +1 -1
  80. package/dist/cjs/gx-ide-sc-chat-container.cjs.entry.js +1 -1
  81. package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js +29 -16
  82. package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js.map +1 -1
  83. package/dist/cjs/gx-ide-select-user-team.cjs.entry.js +4 -3
  84. package/dist/cjs/gx-ide-select-user-team.cjs.entry.js.map +1 -1
  85. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +7 -4
  86. package/dist/cjs/gx-ide-share-kb.cjs.entry.js.map +1 -1
  87. package/dist/cjs/gx-ide-sign-in-team.cjs.entry.js +3 -2
  88. package/dist/cjs/gx-ide-sign-in-team.cjs.entry.js.map +1 -1
  89. package/dist/cjs/gx-ide-sign-in.cjs.entry.js +1 -1
  90. package/dist/cjs/gx-ide-splash.cjs.entry.js +4 -3
  91. package/dist/cjs/gx-ide-splash.cjs.entry.js.map +1 -1
  92. package/dist/cjs/gx-ide-start-page.cjs.entry.js +7 -4
  93. package/dist/cjs/gx-ide-start-page.cjs.entry.js.map +1 -1
  94. package/dist/cjs/gx-ide-status-buttons.cjs.entry.js +1 -1
  95. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +4 -4
  96. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
  97. package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js +270 -0
  98. package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js.map +1 -0
  99. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +1 -1
  100. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +2 -2
  101. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js.map +1 -1
  102. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +1 -1
  103. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +4 -3
  104. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js.map +1 -1
  105. package/dist/cjs/gx-ide-template.cjs.entry.js +1 -1
  106. package/dist/cjs/gx-ide-welcome-page.cjs.entry.js +8 -6
  107. package/dist/cjs/gx-ide-welcome-page.cjs.entry.js.map +1 -1
  108. package/dist/cjs/gx-ide-wf-settings.cjs.entry.js +1 -1
  109. package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js +14 -8
  110. package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js.map +1 -1
  111. package/dist/cjs/gx-ide-ww-files.cjs.entry.js +21 -18
  112. package/dist/cjs/gx-ide-ww-files.cjs.entry.js.map +1 -1
  113. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +7 -18
  114. package/dist/cjs/gx-ide-ww-images.cjs.entry.js.map +1 -1
  115. package/dist/cjs/{helpers-e5a13fa5.js → helpers-30f109a4.js} +6 -6
  116. package/dist/cjs/helpers-30f109a4.js.map +1 -0
  117. package/dist/cjs/index.cjs.js +7 -1
  118. package/dist/cjs/index.cjs.js.map +1 -1
  119. package/dist/cjs/loader.cjs.js +1 -1
  120. package/dist/cjs/{locale-36b93b1b.js → locale-ff30a5f3.js} +4 -4
  121. package/dist/cjs/locale-ff30a5f3.js.map +1 -0
  122. package/dist/collection/collection-manifest.json +1 -0
  123. package/dist/collection/common/common.js +7 -4
  124. package/dist/collection/common/common.js.map +1 -1
  125. package/dist/collection/common/form-validation.js +4 -7
  126. package/dist/collection/common/form-validation.js.map +1 -1
  127. package/dist/collection/common/helpers.js +10 -9
  128. package/dist/collection/common/helpers.js.map +1 -1
  129. package/dist/collection/common/images/ai-avatar.svg +11 -0
  130. package/dist/collection/common/locale.js +3 -3
  131. package/dist/collection/common/locale.js.map +1 -1
  132. package/dist/collection/common/render-suggest.js +1 -1
  133. package/dist/collection/common/render-suggest.js.map +1 -1
  134. package/dist/collection/components/_helpers/container/container.js +2 -1
  135. package/dist/collection/components/_helpers/container/container.js.map +1 -1
  136. package/dist/collection/components/_helpers/directory-selector/directory-selector.js +2 -1
  137. package/dist/collection/components/_helpers/directory-selector/directory-selector.js.map +1 -1
  138. package/dist/collection/components/_helpers/entity-selector/entity-selector.js +4 -2
  139. package/dist/collection/components/_helpers/entity-selector/entity-selector.js.map +1 -1
  140. package/dist/collection/components/_helpers/list-selector/list-selector-item/list-selector-item.js +1 -1
  141. package/dist/collection/components/_helpers/list-selector/list-selector-item/list-selector-item.js.map +1 -1
  142. package/dist/collection/components/ai-assistant/ai-assistant.js +14 -8
  143. package/dist/collection/components/ai-assistant/ai-assistant.js.map +1 -1
  144. package/dist/collection/components/bpm/application-declaration/bpm-app-declaration.js +3 -2
  145. package/dist/collection/components/bpm/application-declaration/bpm-app-declaration.js.map +1 -1
  146. package/dist/collection/components/bpm/export-xpdl/bpm-export-xpdl.js +4 -2
  147. package/dist/collection/components/bpm/export-xpdl/bpm-export-xpdl.js.map +1 -1
  148. package/dist/collection/components/bpm/import-files/bpm-import-files.js +2 -1
  149. package/dist/collection/components/bpm/import-files/bpm-import-files.js.map +1 -1
  150. package/dist/collection/components/bpm/sync-gam-roles/bpm-sync-gam-roles.js +2 -1
  151. package/dist/collection/components/bpm/sync-gam-roles/bpm-sync-gam-roles.js.map +1 -1
  152. package/dist/collection/components/bpm/task-documents/helpers.js +1 -1
  153. package/dist/collection/components/bpm/task-documents/helpers.js.map +1 -1
  154. package/dist/collection/components/bpm/task-documents/task-documents.js +9 -7
  155. package/dist/collection/components/bpm/task-documents/task-documents.js.map +1 -1
  156. package/dist/collection/components/bpm/timer-duration/bpm-timer-duration.js +2 -1
  157. package/dist/collection/components/bpm/timer-duration/bpm-timer-duration.js.map +1 -1
  158. package/dist/collection/components/chat/code-render.js +2 -2
  159. package/dist/collection/components/chat/code-render.js.map +1 -1
  160. package/dist/collection/components/current-user-info/current-user-info.js +3 -2
  161. package/dist/collection/components/current-user-info/current-user-info.js.map +1 -1
  162. package/dist/collection/components/dashboard-home/dashboard-home.js +3 -2
  163. package/dist/collection/components/dashboard-home/dashboard-home.js.map +1 -1
  164. package/dist/collection/components/data-selector/data-selector.js +3 -2
  165. package/dist/collection/components/data-selector/data-selector.js.map +1 -1
  166. package/dist/collection/components/data-type-selector/data-type-selector.js +4 -3
  167. package/dist/collection/components/data-type-selector/data-type-selector.js.map +1 -1
  168. package/dist/collection/components/deployment-tool/deployment-tool.js +18 -11
  169. package/dist/collection/components/deployment-tool/deployment-tool.js.map +1 -1
  170. package/dist/collection/components/deployment-tool/helpers.js +1 -4
  171. package/dist/collection/components/deployment-tool/helpers.js.map +1 -1
  172. package/dist/collection/components/design-import/design-import.js +27 -19
  173. package/dist/collection/components/design-import/design-import.js.map +1 -1
  174. package/dist/collection/components/design-import/helpers.js +1 -1
  175. package/dist/collection/components/design-import/helpers.js.map +1 -1
  176. package/dist/collection/components/file-uploader/file-uploader.js +44 -59
  177. package/dist/collection/components/file-uploader/file-uploader.js.map +1 -1
  178. package/dist/collection/components/gam-installation-settings/gam-installation-settings.js +2 -1
  179. package/dist/collection/components/gam-installation-settings/gam-installation-settings.js.map +1 -1
  180. package/dist/collection/components/kb-manager-import/kb-manager-import.js +7 -4
  181. package/dist/collection/components/kb-manager-import/kb-manager-import.js.map +1 -1
  182. package/dist/collection/components/modules/edit-module-server/edit-module-server.js +2 -1
  183. package/dist/collection/components/modules/edit-module-server/edit-module-server.js.map +1 -1
  184. package/dist/collection/components/modules/manage-module-references/manage-module-references.js +2 -2
  185. package/dist/collection/components/modules/manage-module-references/manage-module-references.js.map +1 -1
  186. package/dist/collection/components/modules/manage-module-references-v2/manage-module-references-v2.js +4 -13
  187. package/dist/collection/components/modules/manage-module-references-v2/manage-module-references-v2.js.map +1 -1
  188. package/dist/collection/components/navigation-report/navigation-report.js +6 -3
  189. package/dist/collection/components/navigation-report/navigation-report.js.map +1 -1
  190. package/dist/collection/components/new-environment/new-environment.js +15 -10
  191. package/dist/collection/components/new-environment/new-environment.js.map +1 -1
  192. package/dist/collection/components/new-kb/new-kb.js +32 -28
  193. package/dist/collection/components/new-kb/new-kb.js.map +1 -1
  194. package/dist/collection/components/new-object/new-object.js +8 -5
  195. package/dist/collection/components/new-object/new-object.js.map +1 -1
  196. package/dist/collection/components/new-version/gx-ide-assets/new-version/langs/new-version.lang.en.json +3 -1
  197. package/dist/collection/components/new-version/gx-ide-assets/new-version/langs/new-version.lang.ja.json +3 -1
  198. package/dist/collection/components/new-version/gx-ide-assets/new-version/langs/new-version.lang.zh.json +3 -1
  199. package/dist/collection/components/new-version/new-version.css +4 -0
  200. package/dist/collection/components/new-version/new-version.js +126 -20
  201. package/dist/collection/components/new-version/new-version.js.map +1 -1
  202. package/dist/collection/components/object-selector/object-selector.js +5 -4
  203. package/dist/collection/components/object-selector/object-selector.js.map +1 -1
  204. package/dist/collection/components/open-api-import/open-api-import.js +8 -4
  205. package/dist/collection/components/open-api-import/open-api-import.js.map +1 -1
  206. package/dist/collection/components/references/helpers.js +13 -9
  207. package/dist/collection/components/references/helpers.js.map +1 -1
  208. package/dist/collection/components/references/references.js +11 -9
  209. package/dist/collection/components/references/references.js.map +1 -1
  210. package/dist/collection/components/select-kb-items/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.en.json +2 -1
  211. package/dist/collection/components/select-kb-items/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.ja.json +1 -0
  212. package/dist/collection/components/select-kb-items/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.zh.json +1 -0
  213. package/dist/collection/components/select-kb-items/helpers.js +10 -5
  214. package/dist/collection/components/select-kb-items/helpers.js.map +1 -1
  215. package/dist/collection/components/select-kb-items/select-kb-items.css +22 -27
  216. package/dist/collection/components/select-kb-items/select-kb-items.js +36 -9
  217. package/dist/collection/components/select-kb-items/select-kb-items.js.map +1 -1
  218. package/dist/collection/components/select-user-team/helpers.js +1 -1
  219. package/dist/collection/components/select-user-team/helpers.js.map +1 -1
  220. package/dist/collection/components/select-user-team/select-user-team.js +2 -1
  221. package/dist/collection/components/select-user-team/select-user-team.js.map +1 -1
  222. package/dist/collection/components/sign-in-team/sign-in-team.js +2 -1
  223. package/dist/collection/components/sign-in-team/sign-in-team.js.map +1 -1
  224. package/dist/collection/components/splash/splash.js +3 -2
  225. package/dist/collection/components/splash/splash.js.map +1 -1
  226. package/dist/collection/components/start-page/start-page.js +6 -3
  227. package/dist/collection/components/start-page/start-page.js.map +1 -1
  228. package/dist/collection/components/team-dev/commit/commit.js +2 -2
  229. package/dist/collection/components/team-dev/commit/commit.js.map +1 -1
  230. package/dist/collection/components/team-dev/connect-gx-server/connect-gx-server.js +21 -16
  231. package/dist/collection/components/team-dev/connect-gx-server/connect-gx-server.js.map +1 -1
  232. package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js +8 -4
  233. package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js.map +1 -1
  234. package/dist/collection/components/team-dev/history/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.en.json +42 -0
  235. package/dist/collection/components/team-dev/history/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.ja.json +42 -0
  236. package/dist/collection/components/team-dev/history/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.zh.json +42 -0
  237. package/dist/collection/components/team-dev/history/helpers.js +22 -0
  238. package/dist/collection/components/team-dev/history/helpers.js.map +1 -0
  239. package/dist/collection/components/team-dev/history/history.css +124 -0
  240. package/dist/collection/components/team-dev/history/history.js +448 -0
  241. package/dist/collection/components/team-dev/history/history.js.map +1 -0
  242. package/dist/collection/components/team-dev/share-kb/share-kb.js +5 -2
  243. package/dist/collection/components/team-dev/share-kb/share-kb.js.map +1 -1
  244. package/dist/collection/components/team-dev/update/update.js +2 -1
  245. package/dist/collection/components/team-dev/update/update.js.map +1 -1
  246. package/dist/collection/components/team-dev/update-partial-selection/update-partial-selection.js +1 -1
  247. package/dist/collection/components/team-dev/update-partial-selection/update-partial-selection.js.map +1 -1
  248. package/dist/collection/components/welcome-page/welcome-page.js +7 -5
  249. package/dist/collection/components/welcome-page/welcome-page.js.map +1 -1
  250. package/dist/collection/components/ww-attributes/helpers.js +2 -1
  251. package/dist/collection/components/ww-attributes/helpers.js.map +1 -1
  252. package/dist/collection/components/ww-attributes/ww-attributes.js +11 -6
  253. package/dist/collection/components/ww-attributes/ww-attributes.js.map +1 -1
  254. package/dist/collection/components/ww-files/helpers.js +2 -1
  255. package/dist/collection/components/ww-files/helpers.js.map +1 -1
  256. package/dist/collection/components/ww-files/ww-files.js +18 -16
  257. package/dist/collection/components/ww-files/ww-files.js.map +1 -1
  258. package/dist/collection/components/ww-images/ww-images.js +5 -16
  259. package/dist/collection/components/ww-images/ww-images.js.map +1 -1
  260. package/dist/collection/index.js +4 -0
  261. package/dist/collection/index.js.map +1 -1
  262. package/dist/collection/testing/locale.e2e.js +4 -3
  263. package/dist/collection/testing/locale.e2e.js.map +1 -1
  264. package/dist/components/code-render.js +2 -2
  265. package/dist/components/code-render.js.map +1 -1
  266. package/dist/components/container.js +2 -1
  267. package/dist/components/container.js.map +1 -1
  268. package/dist/components/entity-selector.js +4 -2
  269. package/dist/components/entity-selector.js.map +1 -1
  270. package/dist/components/form-validation.js +2 -6
  271. package/dist/components/form-validation.js.map +1 -1
  272. package/dist/components/gx-ide-ai-assistant.js +14 -8
  273. package/dist/components/gx-ide-ai-assistant.js.map +1 -1
  274. package/dist/components/gx-ide-bpm-app-declaration.js +3 -2
  275. package/dist/components/gx-ide-bpm-app-declaration.js.map +1 -1
  276. package/dist/components/gx-ide-bpm-export-xpdl.js +4 -2
  277. package/dist/components/gx-ide-bpm-export-xpdl.js.map +1 -1
  278. package/dist/components/gx-ide-bpm-import-files.js +2 -1
  279. package/dist/components/gx-ide-bpm-import-files.js.map +1 -1
  280. package/dist/components/gx-ide-bpm-sync-gam-roles.js +2 -1
  281. package/dist/components/gx-ide-bpm-sync-gam-roles.js.map +1 -1
  282. package/dist/components/gx-ide-bpm-task-documents.js +10 -8
  283. package/dist/components/gx-ide-bpm-task-documents.js.map +1 -1
  284. package/dist/components/gx-ide-bpm-timer-duration.js +2 -1
  285. package/dist/components/gx-ide-bpm-timer-duration.js.map +1 -1
  286. package/dist/components/gx-ide-connect-gx-server.js +21 -16
  287. package/dist/components/gx-ide-connect-gx-server.js.map +1 -1
  288. package/dist/components/gx-ide-create-kb-from-server.js +8 -4
  289. package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
  290. package/dist/components/gx-ide-current-user-info.js +3 -2
  291. package/dist/components/gx-ide-current-user-info.js.map +1 -1
  292. package/dist/components/gx-ide-dashboard-home.js +3 -2
  293. package/dist/components/gx-ide-dashboard-home.js.map +1 -1
  294. package/dist/components/gx-ide-data-selector.js +3 -2
  295. package/dist/components/gx-ide-data-selector.js.map +1 -1
  296. package/dist/components/gx-ide-data-type-selector.js +4 -3
  297. package/dist/components/gx-ide-data-type-selector.js.map +1 -1
  298. package/dist/components/gx-ide-deployment-tool.js +19 -15
  299. package/dist/components/gx-ide-deployment-tool.js.map +1 -1
  300. package/dist/components/gx-ide-design-import.js +28 -20
  301. package/dist/components/gx-ide-design-import.js.map +1 -1
  302. package/dist/components/gx-ide-directory-selector.js +2 -1
  303. package/dist/components/gx-ide-directory-selector.js.map +1 -1
  304. package/dist/components/gx-ide-edit-module-server.js +2 -1
  305. package/dist/components/gx-ide-edit-module-server.js.map +1 -1
  306. package/dist/components/gx-ide-file-uploader.js +44 -59
  307. package/dist/components/gx-ide-file-uploader.js.map +1 -1
  308. package/dist/components/gx-ide-gam-installation-settings.js +2 -1
  309. package/dist/components/gx-ide-gam-installation-settings.js.map +1 -1
  310. package/dist/components/gx-ide-kb-manager-import.js +7 -4
  311. package/dist/components/gx-ide-kb-manager-import.js.map +1 -1
  312. package/dist/components/gx-ide-manage-module-references-v2.js +4 -13
  313. package/dist/components/gx-ide-manage-module-references-v2.js.map +1 -1
  314. package/dist/components/gx-ide-manage-module-references.js +2 -2
  315. package/dist/components/gx-ide-manage-module-references.js.map +1 -1
  316. package/dist/components/gx-ide-navigation-report.js +6 -3
  317. package/dist/components/gx-ide-navigation-report.js.map +1 -1
  318. package/dist/components/gx-ide-new-environment.js +15 -10
  319. package/dist/components/gx-ide-new-environment.js.map +1 -1
  320. package/dist/components/gx-ide-new-kb.js +32 -28
  321. package/dist/components/gx-ide-new-kb.js.map +1 -1
  322. package/dist/components/gx-ide-new-object.js +8 -5
  323. package/dist/components/gx-ide-new-object.js.map +1 -1
  324. package/dist/components/gx-ide-new-version.js +67 -17
  325. package/dist/components/gx-ide-new-version.js.map +1 -1
  326. package/dist/components/gx-ide-object-selector.js +5 -4
  327. package/dist/components/gx-ide-object-selector.js.map +1 -1
  328. package/dist/components/gx-ide-open-api-import.js +8 -4
  329. package/dist/components/gx-ide-open-api-import.js.map +1 -1
  330. package/dist/components/gx-ide-references.js +22 -17
  331. package/dist/components/gx-ide-references.js.map +1 -1
  332. package/dist/components/gx-ide-select-kb-items.js +1 -501
  333. package/dist/components/gx-ide-select-kb-items.js.map +1 -1
  334. package/dist/components/gx-ide-select-user-team.js +3 -2
  335. package/dist/components/gx-ide-select-user-team.js.map +1 -1
  336. package/dist/components/gx-ide-share-kb.js +5 -2
  337. package/dist/components/gx-ide-share-kb.js.map +1 -1
  338. package/dist/components/gx-ide-sign-in-team.js +2 -1
  339. package/dist/components/gx-ide-sign-in-team.js.map +1 -1
  340. package/dist/components/gx-ide-splash.js +3 -2
  341. package/dist/components/gx-ide-splash.js.map +1 -1
  342. package/dist/components/gx-ide-start-page.js +6 -3
  343. package/dist/components/gx-ide-start-page.js.map +1 -1
  344. package/dist/components/gx-ide-team-dev-commit.js +2 -2
  345. package/dist/components/gx-ide-team-dev-commit.js.map +1 -1
  346. package/dist/components/gx-ide-team-dev-history.d.ts +11 -0
  347. package/dist/components/gx-ide-team-dev-history.js +322 -0
  348. package/dist/components/gx-ide-team-dev-history.js.map +1 -0
  349. package/dist/components/gx-ide-team-dev-update-partial-selection.js +1 -1
  350. package/dist/components/gx-ide-team-dev-update-partial-selection.js.map +1 -1
  351. package/dist/components/gx-ide-team-dev-update.js +2 -1
  352. package/dist/components/gx-ide-team-dev-update.js.map +1 -1
  353. package/dist/components/gx-ide-welcome-page.js +7 -5
  354. package/dist/components/gx-ide-welcome-page.js.map +1 -1
  355. package/dist/components/gx-ide-ww-attributes.js +13 -7
  356. package/dist/components/gx-ide-ww-attributes.js.map +1 -1
  357. package/dist/components/gx-ide-ww-files.js +20 -17
  358. package/dist/components/gx-ide-ww-files.js.map +1 -1
  359. package/dist/components/gx-ide-ww-images.js +5 -16
  360. package/dist/components/gx-ide-ww-images.js.map +1 -1
  361. package/dist/components/helpers.js +5 -5
  362. package/dist/components/helpers.js.map +1 -1
  363. package/dist/components/index.js +6 -0
  364. package/dist/components/index.js.map +1 -1
  365. package/dist/components/list-selector-item.js +1 -1
  366. package/dist/components/list-selector-item.js.map +1 -1
  367. package/dist/components/locale.js +3 -3
  368. package/dist/components/locale.js.map +1 -1
  369. package/dist/components/select-kb-items.js +520 -0
  370. package/dist/components/select-kb-items.js.map +1 -0
  371. package/dist/esm/{code-render-f3afd300.js → code-render-53b3b0bd.js} +3 -3
  372. package/dist/esm/code-render-53b3b0bd.js.map +1 -0
  373. package/dist/esm/{form-validation-71dca8c6.js → form-validation-cd0215c6.js} +3 -7
  374. package/dist/{genexus-ide-ui/p-549b8f0c.js.map → esm/form-validation-cd0215c6.js.map} +1 -1
  375. package/dist/esm/genexus-ide-ui.js +1 -1
  376. package/dist/esm/gx-ide-about.entry.js +1 -1
  377. package/dist/esm/gx-ide-ai-assistant.entry.js +15 -9
  378. package/dist/esm/gx-ide-ai-assistant.entry.js.map +1 -1
  379. package/dist/esm/gx-ide-ai-message.entry.js +2 -2
  380. package/dist/esm/gx-ide-bpm-app-declaration.entry.js +4 -3
  381. package/dist/esm/gx-ide-bpm-app-declaration.entry.js.map +1 -1
  382. package/dist/esm/gx-ide-bpm-assign-roles.entry.js +1 -1
  383. package/dist/esm/gx-ide-bpm-export-xpdl.entry.js +5 -3
  384. package/dist/esm/gx-ide-bpm-export-xpdl.entry.js.map +1 -1
  385. package/dist/esm/gx-ide-bpm-import-files.entry.js +3 -2
  386. package/dist/esm/gx-ide-bpm-import-files.entry.js.map +1 -1
  387. package/dist/esm/gx-ide-bpm-import-gxpm.entry.js +1 -1
  388. package/dist/esm/gx-ide-bpm-objects-selector.entry.js +1 -1
  389. package/dist/esm/gx-ide-bpm-sync-gam-roles.entry.js +3 -2
  390. package/dist/esm/gx-ide-bpm-sync-gam-roles.entry.js.map +1 -1
  391. package/dist/esm/gx-ide-bpm-task-documents.entry.js +11 -9
  392. package/dist/esm/gx-ide-bpm-task-documents.entry.js.map +1 -1
  393. package/dist/esm/gx-ide-bpm-timer-duration.entry.js +3 -2
  394. package/dist/esm/gx-ide-bpm-timer-duration.entry.js.map +1 -1
  395. package/dist/esm/gx-ide-card.entry.js +1 -1
  396. package/dist/esm/gx-ide-chat-container_2.entry.js +1 -1
  397. package/dist/esm/gx-ide-connect-gx-server.entry.js +23 -18
  398. package/dist/esm/gx-ide-connect-gx-server.entry.js.map +1 -1
  399. package/dist/esm/gx-ide-container_2.entry.js +2 -1
  400. package/dist/esm/gx-ide-container_2.entry.js.map +1 -1
  401. package/dist/esm/gx-ide-create-kb-from-server.entry.js +10 -6
  402. package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
  403. package/dist/esm/gx-ide-current-user-info.entry.js +4 -3
  404. package/dist/esm/gx-ide-current-user-info.entry.js.map +1 -1
  405. package/dist/esm/gx-ide-dashboard-home.entry.js +5 -4
  406. package/dist/esm/gx-ide-dashboard-home.entry.js.map +1 -1
  407. package/dist/esm/gx-ide-data-selector.entry.js +4 -3
  408. package/dist/esm/gx-ide-data-selector.entry.js.map +1 -1
  409. package/dist/esm/gx-ide-data-type-selector.entry.js +5 -4
  410. package/dist/esm/gx-ide-data-type-selector.entry.js.map +1 -1
  411. package/dist/esm/gx-ide-deployment-tool.entry.js +20 -16
  412. package/dist/esm/gx-ide-deployment-tool.entry.js.map +1 -1
  413. package/dist/esm/gx-ide-design-import.entry.js +29 -21
  414. package/dist/esm/gx-ide-design-import.entry.js.map +1 -1
  415. package/dist/esm/gx-ide-directory-selector.entry.js +2 -1
  416. package/dist/esm/gx-ide-directory-selector.entry.js.map +1 -1
  417. package/dist/esm/gx-ide-edit-module-server.entry.js +3 -2
  418. package/dist/esm/gx-ide-edit-module-server.entry.js.map +1 -1
  419. package/dist/esm/gx-ide-entity-selector.entry.js +5 -3
  420. package/dist/esm/gx-ide-entity-selector.entry.js.map +1 -1
  421. package/dist/esm/gx-ide-file-uploader.entry.js +45 -60
  422. package/dist/esm/gx-ide-file-uploader.entry.js.map +1 -1
  423. package/dist/esm/gx-ide-gam-installation-settings.entry.js +3 -2
  424. package/dist/esm/gx-ide-gam-installation-settings.entry.js.map +1 -1
  425. package/dist/esm/gx-ide-kb-manager-export.entry.js +1 -1
  426. package/dist/esm/gx-ide-kb-manager-import.entry.js +8 -5
  427. package/dist/esm/gx-ide-kb-manager-import.entry.js.map +1 -1
  428. package/dist/esm/gx-ide-list-selector_2.entry.js +1 -1
  429. package/dist/esm/gx-ide-list-selector_2.entry.js.map +1 -1
  430. package/dist/esm/gx-ide-manage-module-references-v2.entry.js +5 -14
  431. package/dist/esm/gx-ide-manage-module-references-v2.entry.js.map +1 -1
  432. package/dist/esm/gx-ide-manage-module-references.entry.js +3 -3
  433. package/dist/esm/gx-ide-manage-module-references.entry.js.map +1 -1
  434. package/dist/esm/gx-ide-navigation-report.entry.js +7 -4
  435. package/dist/esm/gx-ide-navigation-report.entry.js.map +1 -1
  436. package/dist/esm/gx-ide-new-environment.entry.js +18 -13
  437. package/dist/esm/gx-ide-new-environment.entry.js.map +1 -1
  438. package/dist/esm/gx-ide-new-kb.entry.js +35 -31
  439. package/dist/esm/gx-ide-new-kb.entry.js.map +1 -1
  440. package/dist/esm/gx-ide-new-object.entry.js +9 -6
  441. package/dist/esm/gx-ide-new-object.entry.js.map +1 -1
  442. package/dist/esm/gx-ide-new-version.entry.js +61 -17
  443. package/dist/esm/gx-ide-new-version.entry.js.map +1 -1
  444. package/dist/esm/gx-ide-object-selector.entry.js +7 -6
  445. package/dist/esm/gx-ide-object-selector.entry.js.map +1 -1
  446. package/dist/esm/gx-ide-open-api-import.entry.js +9 -5
  447. package/dist/esm/gx-ide-open-api-import.entry.js.map +1 -1
  448. package/dist/esm/gx-ide-references.entry.js +23 -18
  449. package/dist/esm/gx-ide-references.entry.js.map +1 -1
  450. package/dist/esm/gx-ide-sc-chat-container.entry.js +1 -1
  451. package/dist/esm/gx-ide-select-kb-items.entry.js +29 -16
  452. package/dist/esm/gx-ide-select-kb-items.entry.js.map +1 -1
  453. package/dist/esm/gx-ide-select-user-team.entry.js +4 -3
  454. package/dist/esm/gx-ide-select-user-team.entry.js.map +1 -1
  455. package/dist/esm/gx-ide-share-kb.entry.js +7 -4
  456. package/dist/esm/gx-ide-share-kb.entry.js.map +1 -1
  457. package/dist/esm/gx-ide-sign-in-team.entry.js +3 -2
  458. package/dist/esm/gx-ide-sign-in-team.entry.js.map +1 -1
  459. package/dist/esm/gx-ide-sign-in.entry.js +1 -1
  460. package/dist/esm/gx-ide-splash.entry.js +4 -3
  461. package/dist/esm/gx-ide-splash.entry.js.map +1 -1
  462. package/dist/esm/gx-ide-start-page.entry.js +7 -4
  463. package/dist/esm/gx-ide-start-page.entry.js.map +1 -1
  464. package/dist/esm/gx-ide-status-buttons.entry.js +1 -1
  465. package/dist/esm/gx-ide-team-dev-commit.entry.js +4 -4
  466. package/dist/esm/gx-ide-team-dev-commit.entry.js.map +1 -1
  467. package/dist/esm/gx-ide-team-dev-history.entry.js +266 -0
  468. package/dist/esm/gx-ide-team-dev-history.entry.js.map +1 -0
  469. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +1 -1
  470. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +2 -2
  471. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js.map +1 -1
  472. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +1 -1
  473. package/dist/esm/gx-ide-team-dev-update.entry.js +4 -3
  474. package/dist/esm/gx-ide-team-dev-update.entry.js.map +1 -1
  475. package/dist/esm/gx-ide-template.entry.js +1 -1
  476. package/dist/esm/gx-ide-welcome-page.entry.js +8 -6
  477. package/dist/esm/gx-ide-welcome-page.entry.js.map +1 -1
  478. package/dist/esm/gx-ide-wf-settings.entry.js +1 -1
  479. package/dist/esm/gx-ide-ww-attributes.entry.js +14 -8
  480. package/dist/esm/gx-ide-ww-attributes.entry.js.map +1 -1
  481. package/dist/esm/gx-ide-ww-files.entry.js +21 -18
  482. package/dist/esm/gx-ide-ww-files.entry.js.map +1 -1
  483. package/dist/esm/gx-ide-ww-images.entry.js +7 -18
  484. package/dist/esm/gx-ide-ww-images.entry.js.map +1 -1
  485. package/dist/esm/{helpers-5f1c9a32.js → helpers-10479d69.js} +6 -6
  486. package/dist/esm/helpers-10479d69.js.map +1 -0
  487. package/dist/esm/index.js +7 -1
  488. package/dist/esm/index.js.map +1 -1
  489. package/dist/esm/loader.js +1 -1
  490. package/dist/esm/{locale-643afe17.js → locale-e5107fad.js} +4 -4
  491. package/dist/esm/locale-e5107fad.js.map +1 -0
  492. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  493. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  494. package/dist/genexus-ide-ui/gx-ide-assets/new-version/langs/new-version.lang.en.json +3 -1
  495. package/dist/genexus-ide-ui/gx-ide-assets/new-version/langs/new-version.lang.ja.json +3 -1
  496. package/dist/genexus-ide-ui/gx-ide-assets/new-version/langs/new-version.lang.zh.json +3 -1
  497. package/dist/genexus-ide-ui/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.en.json +2 -1
  498. package/dist/genexus-ide-ui/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.ja.json +1 -0
  499. package/dist/genexus-ide-ui/gx-ide-assets/select-kb-items/langs/select-kb-items.lang.zh.json +1 -0
  500. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.en.json +42 -0
  501. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.ja.json +42 -0
  502. package/dist/genexus-ide-ui/gx-ide-assets/team-dev-history/langs/team-dev-history.lang.zh.json +42 -0
  503. package/dist/genexus-ide-ui/index.esm.js +7 -1
  504. package/dist/genexus-ide-ui/index.esm.js.map +1 -1
  505. package/dist/genexus-ide-ui/{p-11dccb8f.entry.js → p-01d96378.entry.js} +16 -17
  506. package/dist/genexus-ide-ui/p-01d96378.entry.js.map +1 -0
  507. package/dist/genexus-ide-ui/{p-75e1aa31.entry.js → p-036d005d.entry.js} +5 -4
  508. package/dist/genexus-ide-ui/p-036d005d.entry.js.map +1 -0
  509. package/dist/genexus-ide-ui/{p-f5a48b33.entry.js → p-04205aa4.entry.js} +6 -5
  510. package/dist/genexus-ide-ui/p-04205aa4.entry.js.map +1 -0
  511. package/dist/genexus-ide-ui/{p-f6ceb01a.entry.js → p-04c6bd23.entry.js} +29 -28
  512. package/dist/genexus-ide-ui/p-04c6bd23.entry.js.map +1 -0
  513. package/dist/genexus-ide-ui/{p-f52bcdac.entry.js → p-0550fd5f.entry.js} +2 -2
  514. package/dist/genexus-ide-ui/{p-e1d75f00.entry.js → p-05b04291.entry.js} +2 -2
  515. package/dist/genexus-ide-ui/{p-e1d75f00.entry.js.map → p-05b04291.entry.js.map} +1 -1
  516. package/dist/genexus-ide-ui/{p-a6029d9a.entry.js → p-0acf517c.entry.js} +129 -117
  517. package/dist/genexus-ide-ui/p-0acf517c.entry.js.map +1 -0
  518. package/dist/genexus-ide-ui/{p-bfd9066c.entry.js → p-0bdf34f2.entry.js} +4 -6
  519. package/dist/genexus-ide-ui/p-0bdf34f2.entry.js.map +1 -0
  520. package/dist/genexus-ide-ui/{p-2be58a7a.entry.js → p-14165308.entry.js} +2 -2
  521. package/dist/genexus-ide-ui/{p-7cedb0f0.entry.js → p-1bc2613e.entry.js} +69 -66
  522. package/dist/genexus-ide-ui/p-1bc2613e.entry.js.map +1 -0
  523. package/dist/genexus-ide-ui/{p-c5cca204.entry.js → p-1c7ea1cb.entry.js} +11 -10
  524. package/dist/genexus-ide-ui/p-1c7ea1cb.entry.js.map +1 -0
  525. package/dist/genexus-ide-ui/{p-daa29451.entry.js → p-1dd7be84.entry.js} +17 -14
  526. package/dist/genexus-ide-ui/p-1dd7be84.entry.js.map +1 -0
  527. package/dist/genexus-ide-ui/{p-549b8f0c.js → p-289c3290.js} +15 -16
  528. package/dist/genexus-ide-ui/p-289c3290.js.map +1 -0
  529. package/dist/genexus-ide-ui/{p-032b4a81.entry.js → p-29c69938.entry.js} +22 -19
  530. package/dist/genexus-ide-ui/p-29c69938.entry.js.map +1 -0
  531. package/dist/genexus-ide-ui/{p-db4f756a.entry.js → p-3085add2.entry.js} +188 -176
  532. package/dist/genexus-ide-ui/p-3085add2.entry.js.map +1 -0
  533. package/dist/genexus-ide-ui/{p-857866f8.js → p-311eedf3.js} +9 -8
  534. package/dist/genexus-ide-ui/p-311eedf3.js.map +1 -0
  535. package/dist/genexus-ide-ui/{p-2e90a13a.entry.js → p-31beae9e.entry.js} +3 -2
  536. package/dist/genexus-ide-ui/p-31beae9e.entry.js.map +1 -0
  537. package/dist/genexus-ide-ui/{p-e37e95e7.entry.js → p-34fd4875.entry.js} +5 -20
  538. package/dist/genexus-ide-ui/p-34fd4875.entry.js.map +1 -0
  539. package/dist/genexus-ide-ui/{p-9a39e49c.entry.js → p-35f9ebbc.entry.js} +2 -2
  540. package/dist/genexus-ide-ui/{p-db4750ff.entry.js → p-385c9544.entry.js} +147 -138
  541. package/dist/genexus-ide-ui/p-385c9544.entry.js.map +1 -0
  542. package/dist/genexus-ide-ui/{p-8f1f4126.entry.js → p-3da8db15.entry.js} +9 -9
  543. package/dist/genexus-ide-ui/p-3da8db15.entry.js.map +1 -0
  544. package/dist/genexus-ide-ui/{p-b1833747.entry.js → p-4538dea5.entry.js} +31 -26
  545. package/dist/genexus-ide-ui/p-4538dea5.entry.js.map +1 -0
  546. package/dist/genexus-ide-ui/{p-6dc05a27.entry.js → p-45996535.entry.js} +4 -3
  547. package/dist/genexus-ide-ui/p-45996535.entry.js.map +1 -0
  548. package/dist/genexus-ide-ui/{p-4d929210.entry.js → p-4b38fffc.entry.js} +2 -2
  549. package/dist/genexus-ide-ui/{p-d1cc4724.entry.js → p-4d0ba4f6.entry.js} +8 -15
  550. package/dist/genexus-ide-ui/p-4d0ba4f6.entry.js.map +1 -0
  551. package/dist/genexus-ide-ui/{p-66d9269a.entry.js → p-4e943649.entry.js} +19 -16
  552. package/dist/genexus-ide-ui/p-4e943649.entry.js.map +1 -0
  553. package/dist/genexus-ide-ui/{p-ec01c70c.entry.js → p-67e0b419.entry.js} +7 -6
  554. package/dist/genexus-ide-ui/p-67e0b419.entry.js.map +1 -0
  555. package/dist/genexus-ide-ui/{p-45d2fa91.entry.js → p-68969051.entry.js} +12 -11
  556. package/dist/genexus-ide-ui/p-68969051.entry.js.map +1 -0
  557. package/dist/genexus-ide-ui/{p-9b238bf7.entry.js → p-690942cb.entry.js} +178 -173
  558. package/dist/genexus-ide-ui/p-690942cb.entry.js.map +1 -0
  559. package/dist/genexus-ide-ui/{p-b211bca8.entry.js → p-6b957e82.entry.js} +2 -2
  560. package/dist/genexus-ide-ui/{p-be794132.entry.js → p-6f898249.entry.js} +233 -228
  561. package/dist/genexus-ide-ui/p-6f898249.entry.js.map +1 -0
  562. package/dist/genexus-ide-ui/{p-29575656.entry.js → p-704499e5.entry.js} +116 -107
  563. package/dist/genexus-ide-ui/p-704499e5.entry.js.map +1 -0
  564. package/dist/genexus-ide-ui/p-74715731.entry.js +541 -0
  565. package/dist/genexus-ide-ui/p-74715731.entry.js.map +1 -0
  566. package/dist/genexus-ide-ui/{p-ac0438d6.entry.js → p-767e0f6d.entry.js} +12 -11
  567. package/dist/genexus-ide-ui/p-767e0f6d.entry.js.map +1 -0
  568. package/dist/genexus-ide-ui/{p-6168d48c.entry.js → p-7abe2214.entry.js} +167 -160
  569. package/dist/genexus-ide-ui/p-7abe2214.entry.js.map +1 -0
  570. package/dist/genexus-ide-ui/{p-50eaa96d.entry.js → p-7d8812b0.entry.js} +99 -89
  571. package/dist/genexus-ide-ui/p-7d8812b0.entry.js.map +1 -0
  572. package/dist/genexus-ide-ui/p-80c1ddc3.entry.js +218 -0
  573. package/dist/genexus-ide-ui/p-80c1ddc3.entry.js.map +1 -0
  574. package/dist/genexus-ide-ui/{p-9c690c36.entry.js → p-88c81f18.entry.js} +13 -12
  575. package/dist/genexus-ide-ui/p-88c81f18.entry.js.map +1 -0
  576. package/dist/genexus-ide-ui/{p-5e05f830.entry.js → p-8cb937b7.entry.js} +35 -31
  577. package/dist/genexus-ide-ui/p-8cb937b7.entry.js.map +1 -0
  578. package/dist/genexus-ide-ui/p-9ddea83b.js +146 -0
  579. package/dist/genexus-ide-ui/p-9ddea83b.js.map +1 -0
  580. package/dist/genexus-ide-ui/{p-0e53f1ef.entry.js → p-a1415a9c.entry.js} +161 -159
  581. package/dist/genexus-ide-ui/p-a1415a9c.entry.js.map +1 -0
  582. package/dist/genexus-ide-ui/{p-c30b2104.entry.js → p-a47d71eb.entry.js} +11 -9
  583. package/dist/genexus-ide-ui/p-a47d71eb.entry.js.map +1 -0
  584. package/dist/genexus-ide-ui/{p-2dbf722d.entry.js → p-a8d0b62e.entry.js} +192 -172
  585. package/dist/genexus-ide-ui/p-a8d0b62e.entry.js.map +1 -0
  586. package/dist/genexus-ide-ui/{p-f315c6e0.entry.js → p-aab809c4.entry.js} +2 -2
  587. package/dist/genexus-ide-ui/{p-f5879a41.entry.js → p-b1851e6b.entry.js} +3 -3
  588. package/dist/genexus-ide-ui/{p-f5879a41.entry.js.map → p-b1851e6b.entry.js.map} +1 -1
  589. package/dist/genexus-ide-ui/{p-95f831a8.entry.js → p-b2928645.entry.js} +2 -2
  590. package/dist/genexus-ide-ui/{p-39c527ff.entry.js → p-b58fb87b.entry.js} +2 -2
  591. package/dist/genexus-ide-ui/{p-a86a8692.entry.js → p-c38ce0bf.entry.js} +36 -32
  592. package/dist/genexus-ide-ui/p-c38ce0bf.entry.js.map +1 -0
  593. package/dist/genexus-ide-ui/{p-3edbf07d.js → p-c5178973.js} +3 -3
  594. package/dist/genexus-ide-ui/{p-3edbf07d.js.map → p-c5178973.js.map} +1 -1
  595. package/dist/genexus-ide-ui/{p-0d83a34d.entry.js → p-c7badbf1.entry.js} +66 -62
  596. package/dist/genexus-ide-ui/p-c7badbf1.entry.js.map +1 -0
  597. package/dist/genexus-ide-ui/{p-8b046b4b.entry.js → p-d095a37c.entry.js} +10 -9
  598. package/dist/genexus-ide-ui/p-d095a37c.entry.js.map +1 -0
  599. package/dist/genexus-ide-ui/{p-353810b8.entry.js → p-d3767a7d.entry.js} +104 -99
  600. package/dist/genexus-ide-ui/p-d3767a7d.entry.js.map +1 -0
  601. package/dist/genexus-ide-ui/{p-02fc47cd.entry.js → p-d8379699.entry.js} +2 -2
  602. package/dist/genexus-ide-ui/{p-cdf8b082.entry.js → p-da473001.entry.js} +2 -2
  603. package/dist/genexus-ide-ui/{p-501c7b1f.entry.js → p-de7f0c1f.entry.js} +22 -19
  604. package/dist/genexus-ide-ui/p-de7f0c1f.entry.js.map +1 -0
  605. package/dist/genexus-ide-ui/{p-5da3e999.entry.js → p-ded7444c.entry.js} +17 -16
  606. package/dist/genexus-ide-ui/p-ded7444c.entry.js.map +1 -0
  607. package/dist/genexus-ide-ui/{p-9a9ee1ee.entry.js → p-e24902a0.entry.js} +2 -2
  608. package/dist/genexus-ide-ui/{p-5a42428d.entry.js → p-e28e6bc4.entry.js} +15 -14
  609. package/dist/genexus-ide-ui/p-e28e6bc4.entry.js.map +1 -0
  610. package/dist/genexus-ide-ui/{p-7782e1b8.entry.js → p-e502c2fd.entry.js} +61 -56
  611. package/dist/genexus-ide-ui/p-e502c2fd.entry.js.map +1 -0
  612. package/dist/genexus-ide-ui/{p-f2bd9044.entry.js → p-e7fb3ee3.entry.js} +2 -2
  613. package/dist/genexus-ide-ui/{p-e5571f49.entry.js → p-eb9e760d.entry.js} +18 -18
  614. package/dist/genexus-ide-ui/p-eb9e760d.entry.js.map +1 -0
  615. package/dist/genexus-ide-ui/{p-eb51429c.entry.js → p-ec0809a7.entry.js} +2 -2
  616. package/dist/genexus-ide-ui/{p-460db3ff.entry.js → p-ecba870e.entry.js} +3 -3
  617. package/dist/genexus-ide-ui/{p-e26e05c7.entry.js → p-f49bb305.entry.js} +18 -12
  618. package/dist/genexus-ide-ui/p-f49bb305.entry.js.map +1 -0
  619. package/dist/genexus-ide-ui/{p-8636a0bd.entry.js → p-f722955f.entry.js} +2 -2
  620. package/dist/genexus-ide-ui/{p-a8cc41e4.entry.js → p-f7421997.entry.js} +61 -58
  621. package/dist/genexus-ide-ui/p-f7421997.entry.js.map +1 -0
  622. package/dist/types/components/new-version/new-version.d.ts +27 -1
  623. package/dist/types/components/select-kb-items/select-kb-items.d.ts +8 -0
  624. package/dist/types/components/team-dev/history/helpers.d.ts +7 -0
  625. package/dist/types/components/team-dev/history/history.d.ts +109 -0
  626. package/dist/types/components.d.ts +141 -18
  627. package/dist/types/index.d.ts +4 -0
  628. package/package.json +3 -3
  629. package/dist/cjs/code-render-0e9837c4.js.map +0 -1
  630. package/dist/cjs/form-validation-ffe2b957.js.map +0 -1
  631. package/dist/cjs/helpers-e5a13fa5.js.map +0 -1
  632. package/dist/cjs/locale-36b93b1b.js.map +0 -1
  633. package/dist/esm/code-render-f3afd300.js.map +0 -1
  634. package/dist/esm/form-validation-71dca8c6.js.map +0 -1
  635. package/dist/esm/helpers-5f1c9a32.js.map +0 -1
  636. package/dist/esm/locale-643afe17.js.map +0 -1
  637. package/dist/genexus-ide-ui/p-032b4a81.entry.js.map +0 -1
  638. package/dist/genexus-ide-ui/p-0d83a34d.entry.js.map +0 -1
  639. package/dist/genexus-ide-ui/p-0e53f1ef.entry.js.map +0 -1
  640. package/dist/genexus-ide-ui/p-11dccb8f.entry.js.map +0 -1
  641. package/dist/genexus-ide-ui/p-29575656.entry.js.map +0 -1
  642. package/dist/genexus-ide-ui/p-2dbf722d.entry.js.map +0 -1
  643. package/dist/genexus-ide-ui/p-2e90a13a.entry.js.map +0 -1
  644. package/dist/genexus-ide-ui/p-353810b8.entry.js.map +0 -1
  645. package/dist/genexus-ide-ui/p-45d2fa91.entry.js.map +0 -1
  646. package/dist/genexus-ide-ui/p-501c7b1f.entry.js.map +0 -1
  647. package/dist/genexus-ide-ui/p-50eaa96d.entry.js.map +0 -1
  648. package/dist/genexus-ide-ui/p-51601b85.js +0 -145
  649. package/dist/genexus-ide-ui/p-51601b85.js.map +0 -1
  650. package/dist/genexus-ide-ui/p-5a42428d.entry.js.map +0 -1
  651. package/dist/genexus-ide-ui/p-5da3e999.entry.js.map +0 -1
  652. package/dist/genexus-ide-ui/p-5e05f830.entry.js.map +0 -1
  653. package/dist/genexus-ide-ui/p-6168d48c.entry.js.map +0 -1
  654. package/dist/genexus-ide-ui/p-66d9269a.entry.js.map +0 -1
  655. package/dist/genexus-ide-ui/p-6dc05a27.entry.js.map +0 -1
  656. package/dist/genexus-ide-ui/p-75e1aa31.entry.js.map +0 -1
  657. package/dist/genexus-ide-ui/p-7782e1b8.entry.js.map +0 -1
  658. package/dist/genexus-ide-ui/p-7cedb0f0.entry.js.map +0 -1
  659. package/dist/genexus-ide-ui/p-857866f8.js.map +0 -1
  660. package/dist/genexus-ide-ui/p-8b046b4b.entry.js.map +0 -1
  661. package/dist/genexus-ide-ui/p-8f1f4126.entry.js.map +0 -1
  662. package/dist/genexus-ide-ui/p-970d16ca.entry.js +0 -149
  663. package/dist/genexus-ide-ui/p-970d16ca.entry.js.map +0 -1
  664. package/dist/genexus-ide-ui/p-9b238bf7.entry.js.map +0 -1
  665. package/dist/genexus-ide-ui/p-9c690c36.entry.js.map +0 -1
  666. package/dist/genexus-ide-ui/p-a6029d9a.entry.js.map +0 -1
  667. package/dist/genexus-ide-ui/p-a86a8692.entry.js.map +0 -1
  668. package/dist/genexus-ide-ui/p-a8cc41e4.entry.js.map +0 -1
  669. package/dist/genexus-ide-ui/p-ac0438d6.entry.js.map +0 -1
  670. package/dist/genexus-ide-ui/p-b1833747.entry.js.map +0 -1
  671. package/dist/genexus-ide-ui/p-be794132.entry.js.map +0 -1
  672. package/dist/genexus-ide-ui/p-bfd9066c.entry.js.map +0 -1
  673. package/dist/genexus-ide-ui/p-c30b2104.entry.js.map +0 -1
  674. package/dist/genexus-ide-ui/p-c5cca204.entry.js.map +0 -1
  675. package/dist/genexus-ide-ui/p-d1cc4724.entry.js.map +0 -1
  676. package/dist/genexus-ide-ui/p-daa29451.entry.js.map +0 -1
  677. package/dist/genexus-ide-ui/p-db4750ff.entry.js.map +0 -1
  678. package/dist/genexus-ide-ui/p-db4f756a.entry.js.map +0 -1
  679. package/dist/genexus-ide-ui/p-e26e05c7.entry.js.map +0 -1
  680. package/dist/genexus-ide-ui/p-e37e95e7.entry.js.map +0 -1
  681. package/dist/genexus-ide-ui/p-e5571f49.entry.js.map +0 -1
  682. package/dist/genexus-ide-ui/p-ec01c70c.entry.js.map +0 -1
  683. package/dist/genexus-ide-ui/p-f5a48b33.entry.js.map +0 -1
  684. package/dist/genexus-ide-ui/p-f6ceb01a.entry.js.map +0 -1
  685. /package/dist/genexus-ide-ui/{p-f52bcdac.entry.js.map → p-0550fd5f.entry.js.map} +0 -0
  686. /package/dist/genexus-ide-ui/{p-2be58a7a.entry.js.map → p-14165308.entry.js.map} +0 -0
  687. /package/dist/genexus-ide-ui/{p-9a39e49c.entry.js.map → p-35f9ebbc.entry.js.map} +0 -0
  688. /package/dist/genexus-ide-ui/{p-4d929210.entry.js.map → p-4b38fffc.entry.js.map} +0 -0
  689. /package/dist/genexus-ide-ui/{p-b211bca8.entry.js.map → p-6b957e82.entry.js.map} +0 -0
  690. /package/dist/genexus-ide-ui/{p-f315c6e0.entry.js.map → p-aab809c4.entry.js.map} +0 -0
  691. /package/dist/genexus-ide-ui/{p-95f831a8.entry.js.map → p-b2928645.entry.js.map} +0 -0
  692. /package/dist/genexus-ide-ui/{p-39c527ff.entry.js.map → p-b58fb87b.entry.js.map} +0 -0
  693. /package/dist/genexus-ide-ui/{p-02fc47cd.entry.js.map → p-d8379699.entry.js.map} +0 -0
  694. /package/dist/genexus-ide-ui/{p-cdf8b082.entry.js.map → p-da473001.entry.js.map} +0 -0
  695. /package/dist/genexus-ide-ui/{p-9a9ee1ee.entry.js.map → p-e24902a0.entry.js.map} +0 -0
  696. /package/dist/genexus-ide-ui/{p-f2bd9044.entry.js.map → p-e7fb3ee3.entry.js.map} +0 -0
  697. /package/dist/genexus-ide-ui/{p-eb51429c.entry.js.map → p-ec0809a7.entry.js.map} +0 -0
  698. /package/dist/genexus-ide-ui/{p-460db3ff.entry.js.map → p-ecba870e.entry.js.map} +0 -0
  699. /package/dist/genexus-ide-ui/{p-8636a0bd.entry.js.map → p-f722955f.entry.js.map} +0 -0
@@ -40,7 +40,8 @@ export class GxIdeBpmTimerDuration {
40
40
  }
41
41
  // 10.RENDER() FUNCTION //
42
42
  render() {
43
- return (h(Host, { class: "gx-ide-component" }, h("div", { class: "gx-ide-main-wrapper" }, h("gx-ide-container", { containerTitle: this.displayTitle ? this._componentLocale.componentName : null, slimmerFooter: config.gxIdeContainer.slimmerFooter }, h("div", { class: "control-wrapper control-wrapper--vertical" }, h("label", { htmlFor: "years" }, this._componentLocale.controls.years), h("input", { type: "number", id: "years", class: "input-text input-text--full-width", value: this.duration?.years.toString(), ref: el => (this.yearsEl = el) })), h("div", { class: "control-wrapper control-wrapper--vertical" }, h("label", { htmlFor: "months" }, this._componentLocale.controls.months), h("input", { type: "number", id: "months", class: "input-text input-text--full-width", value: this.duration?.months.toString(), ref: el => (this.monthsEl = el) })), h("div", { class: "control-wrapper control-wrapper--vertical" }, h("label", { htmlFor: "days" }, this._componentLocale.controls.days), h("input", { type: "number", id: "days", class: "input-text input-text--full-width", value: this.duration?.days.toString(), ref: el => (this.daysEl = el) })), h("div", { class: "control-wrapper control-wrapper--vertical" }, h("label", { htmlFor: "hours" }, this._componentLocale.controls.hours), h("input", { type: "number", id: "hours", class: "input-text input-text--full-width", value: this.duration?.hours.toString(), ref: el => (this.hoursEl = el) })), h("div", { class: "control-wrapper control-wrapper--vertical" }, h("label", { htmlFor: "minutes" }, this._componentLocale.controls.minutes), h("input", { type: "number", id: "minutes", class: "input-text input-text--full-width", value: this.duration?.minutes.toString(), ref: el => (this.minutesEl = el) })), h("div", { class: "control-wrapper control-wrapper--vertical" }, h("label", { htmlFor: "seconds" }, this._componentLocale.controls.seconds), h("input", { type: "number", id: "seconds", class: "input-text input-text--full-width", value: this.duration?.seconds.toString(), ref: el => (this.secondsEl = el) })), h("div", { class: "controls-wrapper" }, h("button", { onClick: this.confirmCallbackHandler }, this._componentLocale.controls.ok), h("button", { onClick: this.cancelCallback }, this._componentLocale.controls.cancel))))));
43
+ var _a, _b, _c, _d, _e, _f;
44
+ return (h(Host, { class: "gx-ide-component" }, h("div", { class: "gx-ide-main-wrapper" }, h("gx-ide-container", { containerTitle: this.displayTitle ? this._componentLocale.componentName : null, slimmerFooter: config.gxIdeContainer.slimmerFooter }, h("div", { class: "control-wrapper control-wrapper--vertical" }, h("label", { htmlFor: "years" }, this._componentLocale.controls.years), h("input", { type: "number", id: "years", class: "input-text input-text--full-width", value: (_a = this.duration) === null || _a === void 0 ? void 0 : _a.years.toString(), ref: el => (this.yearsEl = el) })), h("div", { class: "control-wrapper control-wrapper--vertical" }, h("label", { htmlFor: "months" }, this._componentLocale.controls.months), h("input", { type: "number", id: "months", class: "input-text input-text--full-width", value: (_b = this.duration) === null || _b === void 0 ? void 0 : _b.months.toString(), ref: el => (this.monthsEl = el) })), h("div", { class: "control-wrapper control-wrapper--vertical" }, h("label", { htmlFor: "days" }, this._componentLocale.controls.days), h("input", { type: "number", id: "days", class: "input-text input-text--full-width", value: (_c = this.duration) === null || _c === void 0 ? void 0 : _c.days.toString(), ref: el => (this.daysEl = el) })), h("div", { class: "control-wrapper control-wrapper--vertical" }, h("label", { htmlFor: "hours" }, this._componentLocale.controls.hours), h("input", { type: "number", id: "hours", class: "input-text input-text--full-width", value: (_d = this.duration) === null || _d === void 0 ? void 0 : _d.hours.toString(), ref: el => (this.hoursEl = el) })), h("div", { class: "control-wrapper control-wrapper--vertical" }, h("label", { htmlFor: "minutes" }, this._componentLocale.controls.minutes), h("input", { type: "number", id: "minutes", class: "input-text input-text--full-width", value: (_e = this.duration) === null || _e === void 0 ? void 0 : _e.minutes.toString(), ref: el => (this.minutesEl = el) })), h("div", { class: "control-wrapper control-wrapper--vertical" }, h("label", { htmlFor: "seconds" }, this._componentLocale.controls.seconds), h("input", { type: "number", id: "seconds", class: "input-text input-text--full-width", value: (_f = this.duration) === null || _f === void 0 ? void 0 : _f.seconds.toString(), ref: el => (this.secondsEl = el) })), h("div", { class: "controls-wrapper" }, h("button", { onClick: this.confirmCallbackHandler }, this._componentLocale.controls.ok), h("button", { onClick: this.cancelCallback }, this._componentLocale.controls.cancel))))));
44
45
  }
45
46
  static get is() { return "gx-ide-bpm-timer-duration"; }
46
47
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"bpm-timer-duration.js","sourceRoot":"","sources":["../../../../src/components/bpm/timer-duration/bpm-timer-duration.tsx"],"names":[],"mappings":"AAAA,qBAAqB;AACrB,OAAO,EACL,SAAS,EACT,IAAI,EACJ,CAAC,EACD,IAAI,EACJ,OAAO,EACP,KAAK,EAEN,MAAM,eAAe,CAAC;AACvB,6BAA6B;AAC7B,oBAAoB;AACpB,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAQhD,MAAM,OAAO,qBAAqB;;QAOxB,sBAAiB,GAAG,KAAK,CAAC;QA0DlC,iBAAiB;QAEjB,0BAA0B;QAE1B,qBAAqB;QAEb,2BAAsB,GAAG,KAAK,IAAI,EAAE;YAC1C,IAAI,IAAI,CAAC,eAAe,EAAE;gBACxB,MAAM,IAAI,GAAkB;oBAC1B,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;oBACnC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;oBACrC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;oBACjC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;oBACnC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;oBACvC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;iBACxC,CAAC;gBAEF,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;aAClC;QACH,CAAC,CAAC;4BAzD8B,KAAK;;;;;IAuBrC,mCAAmC;IAEnC,KAAK,CAAC,iBAAiB;QACrB,IAAI,CAAC,gBAAgB,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YAC3B,IAAI,CAAC,2BAA2B,CAAC,IAAI,CACnC,IAAI,CAAC,gBAAgB,CAAC,aAAa,CACpC,CAAC;YACF,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;SAC/B;IACH,CAAC;IAuBD,0BAA0B;IAE1B,MAAM;QACJ,OAAO,CACL,EAAC,IAAI,IAAC,KAAK,EAAC,kBAAkB;YAC5B,WAAK,KAAK,EAAC,qBAAqB;gBAC9B,wBACE,cAAc,EACZ,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,EAEhE,aAAa,EAAE,MAAM,CAAC,cAAc,CAAC,aAAa;oBAElD,WAAK,KAAK,EAAC,2CAA2C;wBACpD,aAAO,OAAO,EAAC,OAAO,IACnB,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAC/B;wBACR,aACE,IAAI,EAAC,QAAQ,EACb,EAAE,EAAC,OAAO,EACV,KAAK,EAAC,mCAAmC,EACzC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,EACtC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,EAAsB,CAAC,GAClD,CACE;oBAEN,WAAK,KAAK,EAAC,2CAA2C;wBACpD,aAAO,OAAO,EAAC,QAAQ,IACpB,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAChC;wBACR,aACE,IAAI,EAAC,QAAQ,EACb,EAAE,EAAC,QAAQ,EACX,KAAK,EAAC,mCAAmC,EACzC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,EACvC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,EAAsB,CAAC,GACnD,CACE;oBAEN,WAAK,KAAK,EAAC,2CAA2C;wBACpD,aAAO,OAAO,EAAC,MAAM,IAClB,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAC9B;wBACR,aACE,IAAI,EAAC,QAAQ,EACb,EAAE,EAAC,MAAM,EACT,KAAK,EAAC,mCAAmC,EACzC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,EACrC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,EAAsB,CAAC,GACjD,CACE;oBAEN,WAAK,KAAK,EAAC,2CAA2C;wBACpD,aAAO,OAAO,EAAC,OAAO,IACnB,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAC/B;wBACR,aACE,IAAI,EAAC,QAAQ,EACb,EAAE,EAAC,OAAO,EACV,KAAK,EAAC,mCAAmC,EACzC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,EACtC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,EAAsB,CAAC,GAClD,CACE;oBAEN,WAAK,KAAK,EAAC,2CAA2C;wBACpD,aAAO,OAAO,EAAC,SAAS,IACrB,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CACjC;wBACR,aACE,IAAI,EAAC,QAAQ,EACb,EAAE,EAAC,SAAS,EACZ,KAAK,EAAC,mCAAmC,EACzC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,EACxC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,EAAsB,CAAC,GACpD,CACE;oBAEN,WAAK,KAAK,EAAC,2CAA2C;wBACpD,aAAO,OAAO,EAAC,SAAS,IACrB,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CACjC;wBACR,aACE,IAAI,EAAC,QAAQ,EACb,EAAE,EAAC,SAAS,EACZ,KAAK,EAAC,mCAAmC,EACzC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,EACxC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,EAAsB,CAAC,GACpD,CACE;oBAEN,WAAK,KAAK,EAAC,kBAAkB;wBAC3B,cAAQ,OAAO,EAAE,IAAI,CAAC,sBAAsB,IACzC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAC3B;wBACT,cAAQ,OAAO,EAAE,IAAI,CAAC,cAAc,IACjC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAC/B,CACL,CACW,CACf,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\n/* CUSTOM IMPORTS */\nimport { config } from \"../../../common/config\";\nimport { Locale } from \"../../../common/locale\";\n\n@Component({\n tag: \"gx-ide-bpm-timer-duration\",\n styleUrl: \"bpm-timer-duration.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/bpm-timer-duration\"]\n})\nexport class GxIdeBpmTimerDuration {\n // 1.OWN PROPERTIES //\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private renderedFirstTime = false;\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeBpmTimerDurationElement;\n\n private yearsEl!: HTMLInputElement;\n private monthsEl!: HTMLInputElement;\n private daysEl!: HTMLInputElement;\n private hoursEl!: HTMLInputElement;\n private minutesEl!: HTMLInputElement;\n private secondsEl!: HTMLInputElement;\n\n // 3.STATE() VARIABLES //\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Current value for timer.\n */\n @Prop() readonly duration?: TimerDuration;\n\n /**\n * Callback invoked when user confirms application declaration, (OK Button)\n */\n @Prop() readonly confirmCallback: (data: TimerDuration) => Promise<void>;\n\n /**\n * Callback invoked when user cancels application declaration */\n @Prop() readonly cancelCallback: () => Promise<void>;\n\n // 5.EVENTS (EMIT) //\n\n /**\n * @description Gets fired when the component has rendered for the first time.\n */\n @Event() componentDidRenderFirstTime: EventEmitter<string>;\n\n // 6.COMPONENT LIFECYCLE METHODS //\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n componentDidRender() {\n if (!this.renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this._componentLocale.componentName\n );\n this.renderedFirstTime = true;\n }\n }\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n // 9.LOCAL METHODS //\n\n private confirmCallbackHandler = async () => {\n if (this.confirmCallback) {\n const data: TimerDuration = {\n years: parseInt(this.yearsEl.value),\n months: parseInt(this.monthsEl.value),\n days: parseInt(this.daysEl.value),\n hours: parseInt(this.hoursEl.value),\n minutes: parseInt(this.minutesEl.value),\n seconds: parseInt(this.secondsEl.value)\n };\n\n await this.confirmCallback(data);\n }\n };\n\n // 10.RENDER() FUNCTION //\n\n render() {\n return (\n <Host class=\"gx-ide-component\">\n <div class=\"gx-ide-main-wrapper\">\n <gx-ide-container\n containerTitle={\n this.displayTitle ? this._componentLocale.componentName : null\n }\n slimmerFooter={config.gxIdeContainer.slimmerFooter}\n >\n <div class=\"control-wrapper control-wrapper--vertical\">\n <label htmlFor=\"years\">\n {this._componentLocale.controls.years}\n </label>\n <input\n type=\"number\"\n id=\"years\"\n class=\"input-text input-text--full-width\"\n value={this.duration?.years.toString()}\n ref={el => (this.yearsEl = el as HTMLInputElement)}\n />\n </div>\n\n <div class=\"control-wrapper control-wrapper--vertical\">\n <label htmlFor=\"months\">\n {this._componentLocale.controls.months}\n </label>\n <input\n type=\"number\"\n id=\"months\"\n class=\"input-text input-text--full-width\"\n value={this.duration?.months.toString()}\n ref={el => (this.monthsEl = el as HTMLInputElement)}\n />\n </div>\n\n <div class=\"control-wrapper control-wrapper--vertical\">\n <label htmlFor=\"days\">\n {this._componentLocale.controls.days}\n </label>\n <input\n type=\"number\"\n id=\"days\"\n class=\"input-text input-text--full-width\"\n value={this.duration?.days.toString()}\n ref={el => (this.daysEl = el as HTMLInputElement)}\n />\n </div>\n\n <div class=\"control-wrapper control-wrapper--vertical\">\n <label htmlFor=\"hours\">\n {this._componentLocale.controls.hours}\n </label>\n <input\n type=\"number\"\n id=\"hours\"\n class=\"input-text input-text--full-width\"\n value={this.duration?.hours.toString()}\n ref={el => (this.hoursEl = el as HTMLInputElement)}\n />\n </div>\n\n <div class=\"control-wrapper control-wrapper--vertical\">\n <label htmlFor=\"minutes\">\n {this._componentLocale.controls.minutes}\n </label>\n <input\n type=\"number\"\n id=\"minutes\"\n class=\"input-text input-text--full-width\"\n value={this.duration?.minutes.toString()}\n ref={el => (this.minutesEl = el as HTMLInputElement)}\n />\n </div>\n\n <div class=\"control-wrapper control-wrapper--vertical\">\n <label htmlFor=\"seconds\">\n {this._componentLocale.controls.seconds}\n </label>\n <input\n type=\"number\"\n id=\"seconds\"\n class=\"input-text input-text--full-width\"\n value={this.duration?.seconds.toString()}\n ref={el => (this.secondsEl = el as HTMLInputElement)}\n />\n </div>\n\n <div class=\"controls-wrapper\">\n <button onClick={this.confirmCallbackHandler}>\n {this._componentLocale.controls.ok}\n </button>\n <button onClick={this.cancelCallback}>\n {this._componentLocale.controls.cancel}\n </button>\n </div>\n </gx-ide-container>\n </div>\n </Host>\n );\n }\n}\n\nexport type TimerDuration = {\n years: number;\n months: number;\n days: number;\n hours: number;\n minutes: number;\n seconds: number;\n};\n"]}
1
+ {"version":3,"file":"bpm-timer-duration.js","sourceRoot":"","sources":["../../../../src/components/bpm/timer-duration/bpm-timer-duration.tsx"],"names":[],"mappings":"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","sourcesContent":["/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\n/* CUSTOM IMPORTS */\nimport { config } from \"../../../common/config\";\nimport { Locale } from \"../../../common/locale\";\n\n@Component({\n tag: \"gx-ide-bpm-timer-duration\",\n styleUrl: \"bpm-timer-duration.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/bpm-timer-duration\"]\n})\nexport class GxIdeBpmTimerDuration {\n // 1.OWN PROPERTIES //\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private renderedFirstTime = false;\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeBpmTimerDurationElement;\n\n private yearsEl!: HTMLInputElement;\n private monthsEl!: HTMLInputElement;\n private daysEl!: HTMLInputElement;\n private hoursEl!: HTMLInputElement;\n private minutesEl!: HTMLInputElement;\n private secondsEl!: HTMLInputElement;\n\n // 3.STATE() VARIABLES //\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Current value for timer.\n */\n @Prop() readonly duration?: TimerDuration;\n\n /**\n * Callback invoked when user confirms application declaration, (OK Button)\n */\n @Prop() readonly confirmCallback: (data: TimerDuration) => Promise<void>;\n\n /**\n * Callback invoked when user cancels application declaration */\n @Prop() readonly cancelCallback: () => Promise<void>;\n\n // 5.EVENTS (EMIT) //\n\n /**\n * @description Gets fired when the component has rendered for the first time.\n */\n @Event() componentDidRenderFirstTime: EventEmitter<string>;\n\n // 6.COMPONENT LIFECYCLE METHODS //\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n componentDidRender() {\n if (!this.renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this._componentLocale.componentName\n );\n this.renderedFirstTime = true;\n }\n }\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n // 9.LOCAL METHODS //\n\n private confirmCallbackHandler = async () => {\n if (this.confirmCallback) {\n const data: TimerDuration = {\n years: parseInt(this.yearsEl.value),\n months: parseInt(this.monthsEl.value),\n days: parseInt(this.daysEl.value),\n hours: parseInt(this.hoursEl.value),\n minutes: parseInt(this.minutesEl.value),\n seconds: parseInt(this.secondsEl.value)\n };\n\n await this.confirmCallback(data);\n }\n };\n\n // 10.RENDER() FUNCTION //\n\n render() {\n return (\n <Host class=\"gx-ide-component\">\n <div class=\"gx-ide-main-wrapper\">\n <gx-ide-container\n containerTitle={\n this.displayTitle ? this._componentLocale.componentName : null\n }\n slimmerFooter={config.gxIdeContainer.slimmerFooter}\n >\n <div class=\"control-wrapper control-wrapper--vertical\">\n <label htmlFor=\"years\">\n {this._componentLocale.controls.years}\n </label>\n <input\n type=\"number\"\n id=\"years\"\n class=\"input-text input-text--full-width\"\n value={this.duration?.years.toString()}\n ref={el => (this.yearsEl = el as HTMLInputElement)}\n />\n </div>\n\n <div class=\"control-wrapper control-wrapper--vertical\">\n <label htmlFor=\"months\">\n {this._componentLocale.controls.months}\n </label>\n <input\n type=\"number\"\n id=\"months\"\n class=\"input-text input-text--full-width\"\n value={this.duration?.months.toString()}\n ref={el => (this.monthsEl = el as HTMLInputElement)}\n />\n </div>\n\n <div class=\"control-wrapper control-wrapper--vertical\">\n <label htmlFor=\"days\">\n {this._componentLocale.controls.days}\n </label>\n <input\n type=\"number\"\n id=\"days\"\n class=\"input-text input-text--full-width\"\n value={this.duration?.days.toString()}\n ref={el => (this.daysEl = el as HTMLInputElement)}\n />\n </div>\n\n <div class=\"control-wrapper control-wrapper--vertical\">\n <label htmlFor=\"hours\">\n {this._componentLocale.controls.hours}\n </label>\n <input\n type=\"number\"\n id=\"hours\"\n class=\"input-text input-text--full-width\"\n value={this.duration?.hours.toString()}\n ref={el => (this.hoursEl = el as HTMLInputElement)}\n />\n </div>\n\n <div class=\"control-wrapper control-wrapper--vertical\">\n <label htmlFor=\"minutes\">\n {this._componentLocale.controls.minutes}\n </label>\n <input\n type=\"number\"\n id=\"minutes\"\n class=\"input-text input-text--full-width\"\n value={this.duration?.minutes.toString()}\n ref={el => (this.minutesEl = el as HTMLInputElement)}\n />\n </div>\n\n <div class=\"control-wrapper control-wrapper--vertical\">\n <label htmlFor=\"seconds\">\n {this._componentLocale.controls.seconds}\n </label>\n <input\n type=\"number\"\n id=\"seconds\"\n class=\"input-text input-text--full-width\"\n value={this.duration?.seconds.toString()}\n ref={el => (this.secondsEl = el as HTMLInputElement)}\n />\n </div>\n\n <div class=\"controls-wrapper\">\n <button onClick={this.confirmCallbackHandler}>\n {this._componentLocale.controls.ok}\n </button>\n <button onClick={this.cancelCallback}>\n {this._componentLocale.controls.cancel}\n </button>\n </div>\n </gx-ide-container>\n </div>\n </Host>\n );\n }\n}\n\nexport type TimerDuration = {\n years: number;\n months: number;\n days: number;\n hours: number;\n minutes: number;\n seconds: number;\n};\n"]}
@@ -12,7 +12,7 @@ const copy = (text, isForCodeRender = false) => (event) => {
12
12
  const copyButtonRef = event.target;
13
13
  if (isForCodeRender) {
14
14
  const copyTextElement = copyButtonRef.previousElementSibling;
15
- const copyTextElementOriginalParts = copyTextElement?.getAttribute("part");
15
+ const copyTextElementOriginalParts = copyTextElement === null || copyTextElement === void 0 ? void 0 : copyTextElement.getAttribute("part");
16
16
  const copyTextElementWithCopiedPart = `${copyTextElementOriginalParts} ${CODE_RENDER_COPIED_PART}`;
17
17
  copyTextElement.setAttribute("part", copyTextElementWithCopiedPart);
18
18
  setTimeout(() => {
@@ -21,7 +21,7 @@ const copy = (text, isForCodeRender = false) => (event) => {
21
21
  }
22
22
  else {
23
23
  const cmSmartGridCellRef = copyButtonRef.closest("ch-smart-grid-cell");
24
- const cmSmartGridCellRefOriginalParts = cmSmartGridCellRef?.getAttribute("part");
24
+ const cmSmartGridCellRefOriginalParts = cmSmartGridCellRef === null || cmSmartGridCellRef === void 0 ? void 0 : cmSmartGridCellRef.getAttribute("part");
25
25
  const cmSmartGridCellRefWithCopiedPart = `${cmSmartGridCellRefOriginalParts} copied`;
26
26
  cmSmartGridCellRef.setAttribute("part", cmSmartGridCellRefWithCopiedPart);
27
27
  setTimeout(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"code-render.js","sourceRoot":"","sources":["../../../src/components/chat/code-render.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAO,MAAM,eAAe,CAAC;AAOvC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,MAAM,aAAa,GAAG,cAAc,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AACxD,MAAM,qBAAqB,GAAG,yBAAyB,CAAC;AACxD,MAAM,uBAAuB,GAAG,GAAG,qBAAqB,SAAS,CAAC;AAClE,MAAM,sBAAsB,GAAG,mBAAmB,CAAC;AAEnD,MAAM,IAAI,GACR,CAAC,IAAY,EAAE,kBAA2B,KAAK,EAAE,EAAE,CACnD,CAAC,KAAY,EAAE,EAAE;IACf,MAAM,cAAc,GAAG,IAAI,CAAC;IAC5B,KAAK,CAAC,eAAe,EAAE,CAAC;IAExB,kBAAkB;IAClB,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAEpC,MAAM,aAAa,GAAG,KAAK,CAAC,MAAqB,CAAC;IAElD,IAAI,eAAe,EAAE;QACnB,MAAM,eAAe,GAAG,aAAa,CAAC,sBAAsB,CAAC;QAE7D,MAAM,4BAA4B,GAChC,eAAe,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;QACxC,MAAM,6BAA6B,GAAG,GAAG,4BAA4B,IAAI,uBAAuB,EAAE,CAAC;QACnG,eAAe,CAAC,YAAY,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAC;QAEpE,UAAU,CAAC,GAAG,EAAE;YACd,eAAe,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,4BAA4B,EAAE,CAAC,CAAC;QAC1E,CAAC,EAAE,cAAc,CAAC,CAAC;KACpB;SAAM;QACL,MAAM,kBAAkB,GAAG,aAAa,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAEvE,MAAM,+BAA+B,GACnC,kBAAkB,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,gCAAgC,GAAG,GAAG,+BAA+B,SAAS,CAAC;QACrF,kBAAkB,CAAC,YAAY,CAAC,MAAM,EAAE,gCAAgC,CAAC,CAAC;QAE1E,UAAU,CAAC,GAAG,EAAE;YACd,kBAAkB,CAAC,YAAY,CAC7B,MAAM,EACN,GAAG,+BAA+B,EAAE,CACrC,CAAC;QACJ,CAAC,EAAE,cAAc,CAAC,CAAC;KACpB;AACH,CAAC,CAAC;AAEJ,MAAM,UAAU,GAAG,CACjB,UAAkB,EAClB,cAAsB,EACtB,cAAsB,EACtB,kBAA2B,KAAK,EAChC,EAAE;IACF,OAAO,CACL,4BACc,cAAc,EAC1B,KAAK,EAAE,cAAc,EACrB,KAAK,EAAC,kBAAkB,EACxB,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,EAC1C,IAAI,EAAE,wBAAwB,cAAc,EAAE,GACtC,CACX,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAC5B,CAAC,wBAAgC,EAAE,EAAE,CACrC,CAAC,OAAwC,EAA4B,EAAE,CACrE,CACE,WAAK,KAAK,EAAC,sBAAsB;IAC/B,WAAK,KAAK,EAAE,sBAAsB,EAAE,IAAI,EAAE,sBAAsB;QAC9D,SAAG,IAAI,EAAC,yBAAyB,aAAW;QAC3C,UAAU,CACT,OAAO,CAAC,SAAS,EACjB,wBAAwB,EACxB,aAAa,EACb,IAAI,CACL,CACG;IACN,eACE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAC1B,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,EAClD,KAAK,EAAE,OAAO,CAAC,SAAS,GACf,CACP,CACP,CAAC;AAEN,MAAM,mBAAmB,GAAG,CAC1B,eAAuB,EACvB,WAAmB,EACnB,cAAsB,EACtB,QAAgB,EACH,EAAE;IACf,OAAO,CACL,WAAK,IAAI,EAAC,iBAAiB;QACzB,WAAK,IAAI,EAAC,uBAAuB;YAC/B,YACE,IAAI,EAAC,iBAAiB,EACtB,KAAK,EAAE,EAAE,eAAe,EAAE,OAAO,eAAe,GAAG,EAAE,GAC/C;YACR,YAAM,IAAI,EAAE,yBAAyB,IAAG,WAAW,CAAQ;YAC3D,YAAM,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAC,eAAe,IAC3C,QAAQ,CACJ,CACH;QACN,WAAK,IAAI,EAAC,qBAAqB;YAC7B,SAAG,IAAI,EAAC,sBAAsB,aAAW;YACxC,UAAU,CAAC,cAAc,EAAE,WAAW,EAAE,gBAAgB,CAAC,CACtD,CACF,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GACnC,CACE,KAAa,EACb,mBAA2B,EAC3B,gBAAwB,cAAc,EACtC,EAAE,CACJ,CAAC,YAA+D,EAAE,EAAE;IAClE,MAAM,aAAa,GAAG,mBAAmB,CACvC,mBAAmB,EACnB,aAAa,EACb,YAAY,CAAC,OAAiB,EAC9B,YAAY,CAAC,QAAQ,CACtB,CAAC;IACF,IAAI,YAAY,CAAC,IAAI,KAAK,WAAW,EAAE;QACrC,OAAO,YAAY,CAAC,MAAM,KAAK,SAAS;YACtC,CAAC,CAAC;gBACE,aAAa;gBACb,WAAK,IAAI,EAAC,+BAA+B;oBACvC,YAAM,IAAI,EAAC,qBAAqB,IAAE,YAAY,CAAC,OAAO,CAAQ;oBAC7D,aAAa,CACV;aACP;YACH,CAAC,CAAC;gBACE,aAAa;gBACb,WAAK,IAAI,EAAE,8BAA8B,YAAY,CAAC,KAAK,EAAE;oBAC3D,0BACE,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,KAAK,EACpB,UAAU,EAAE,iBAAiB,CAAC,eAAe,CAAC,EAC9C,KAAK,EAAE,YAAY,CAAC,OAAiB,EACrC,WAAW,EAAE,GAAG,sBAAsB,IAAI,qBAAqB,IAAI,uBAAuB,EAAE,GACxE,CAClB;aACP,CAAC;KACP;SAAM,IAAI,YAAY,CAAC,IAAI,KAAK,MAAM,EAAE;QACvC,OAAO;YACL,YAAM,IAAI,EAAE,oBAAoB,YAAY,CAAC,IAAI,EAAE,IAChD,YAAY,CAAC,OAAO,CAChB;SACR,CAAC;KACH;SAAM;QACL,wEAAwE;QACxE,OAAO;YACL,aAAa;YACb,YAAM,IAAI,EAAE,oBAAoB,YAAY,CAAC,IAAI,EAAE,IAChD,YAAY,CAAC,OAAO,CAChB;SACR,CAAC;KACH;AACH,CAAC,CAAC","sourcesContent":["import { h, JSX } from \"@stencil/core\";\nimport {\n MarkdownViewerCodeRender,\n ChatMessageByRole\n} from \"@genexus/chameleon-controls-library\";\nimport { MarkdownViewerCodeRenderOptions } from \"@genexus/chameleon-controls-library/dist/types/components/markdown-viewer/parsers/types\";\n\nimport { ANIMATION_DOTS } from \"../../common/common\";\nconst animationDots = ANIMATION_DOTS(\"regular\", \"nexa\");\nconst CODE_RENDER_COPY_PART = \"code-block-header__copy\";\nconst CODE_RENDER_COPIED_PART = `${CODE_RENDER_COPY_PART}-copied`;\nconst CODE_BLOCK_HEADER_PART = \"code-block-header\";\n\nconst copy =\n (text: string, isForCodeRender: boolean = false) =>\n (event: Event) => {\n const setTimeoutTime = 1750;\n event.stopPropagation();\n\n // 1. Copy message\n navigator.clipboard.writeText(text);\n\n const copyButtonRef = event.target as HTMLElement;\n\n if (isForCodeRender) {\n const copyTextElement = copyButtonRef.previousElementSibling;\n\n const copyTextElementOriginalParts =\n copyTextElement?.getAttribute(\"part\");\n const copyTextElementWithCopiedPart = `${copyTextElementOriginalParts} ${CODE_RENDER_COPIED_PART}`;\n copyTextElement.setAttribute(\"part\", copyTextElementWithCopiedPart);\n\n setTimeout(() => {\n copyTextElement.setAttribute(\"part\", `${copyTextElementOriginalParts}`);\n }, setTimeoutTime);\n } else {\n const cmSmartGridCellRef = copyButtonRef.closest(\"ch-smart-grid-cell\");\n\n const cmSmartGridCellRefOriginalParts =\n cmSmartGridCellRef?.getAttribute(\"part\");\n const cmSmartGridCellRefWithCopiedPart = `${cmSmartGridCellRefOriginalParts} copied`;\n cmSmartGridCellRef.setAttribute(\"part\", cmSmartGridCellRefWithCopiedPart);\n\n setTimeout(() => {\n cmSmartGridCellRef.setAttribute(\n \"part\",\n `${cmSmartGridCellRefOriginalParts}`\n );\n }, setTimeoutTime);\n }\n };\n\nconst copyButton = (\n textToCopy: string,\n accessibleName: string,\n additionalPart: string,\n isForCodeRender: boolean = false\n) => {\n return (\n <button\n aria-label={accessibleName}\n title={accessibleName}\n class=\"button-copy-code\"\n type=\"button\"\n onClick={copy(textToCopy, isForCodeRender)}\n part={`message__copy-button ${additionalPart}`}\n ></button>\n );\n};\n\nexport const mercuryCodeRender =\n (copyButtonAccessibleName: string) =>\n (options: MarkdownViewerCodeRenderOptions): MarkdownViewerCodeRender =>\n (\n <div class=\"code-block-container\">\n <div class={CODE_BLOCK_HEADER_PART} part={CODE_BLOCK_HEADER_PART}>\n <p part=\"code-block-header__copy\">Copied</p>\n {copyButton(\n options.plainText,\n copyButtonAccessibleName,\n \"code-render\",\n true\n )}\n </div>\n <ch-code\n language={options.language}\n lastNestedChildClass={options.lastNestedChildClass}\n value={options.plainText}\n ></ch-code>\n </div>\n );\n\nconst renderMessageHeader = (\n avatarImagePath: string,\n displayName: string,\n messageContent: string,\n metadata: string\n): JSX.Element => {\n return (\n <div part=\"message__header\">\n <div part=\"message__header-start\">\n <span\n part=\"message__avatar\"\n style={{ backgroundImage: `url(${avatarImagePath})` }}\n ></span>\n <span part={`message__role assistant`}>{displayName}</span>\n <time dateTime={metadata} part=\"message__time\">\n {metadata}\n </time>\n </div>\n <div part=\"message__header-end\">\n <p part=\"message__header-copy\">Copied</p>\n {copyButton(messageContent, \"Copy code\", \"common-message\")}\n </div>\n </div>\n );\n};\n\nexport const mercuryChatMessageRender =\n (\n theme: string,\n assistantAvatarPath: string,\n assistantName: string = \"AI Assistant\"\n ) =>\n (messageModel: ChatMessageByRole<\"assistant\" | \"error\" | \"user\">) => {\n const messageHeader = renderMessageHeader(\n assistantAvatarPath,\n assistantName,\n messageModel.content as string,\n messageModel.metadata\n );\n if (messageModel.role === \"assistant\") {\n return messageModel.status === \"waiting\"\n ? [\n messageHeader,\n <div part=\"message__processing-container\">\n <span part=\"message__processing\">{messageModel.content}</span>\n {animationDots}\n </div>\n ]\n : [\n messageHeader,\n <div part={`message__content assistant ${messageModel.parts}`}>\n <ch-markdown-viewer\n theme={theme}\n showIndicator={false}\n renderCode={mercuryCodeRender(\"Copy response\")}\n value={messageModel.content as string}\n exportparts={`${CODE_BLOCK_HEADER_PART},${CODE_RENDER_COPY_PART},${CODE_RENDER_COPIED_PART}`}\n ></ch-markdown-viewer>\n </div>\n ];\n } else if (messageModel.role === \"user\") {\n return [\n <span part={`message__content ${messageModel.role}`}>\n {messageModel.content}\n </span>\n ];\n } else {\n // error (this is nor from assistant but design dictates to show header)\n return [\n messageHeader,\n <span part={`message__content ${messageModel.role}`}>\n {messageModel.content}\n </span>\n ];\n }\n };\n"]}
1
+ {"version":3,"file":"code-render.js","sourceRoot":"","sources":["../../../src/components/chat/code-render.tsx"],"names":[],"mappings":"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","sourcesContent":["import { h, JSX } from \"@stencil/core\";\nimport {\n MarkdownViewerCodeRender,\n ChatMessageByRole\n} from \"@genexus/chameleon-controls-library\";\nimport { MarkdownViewerCodeRenderOptions } from \"@genexus/chameleon-controls-library/dist/types/components/markdown-viewer/parsers/types\";\n\nimport { ANIMATION_DOTS } from \"../../common/common\";\nconst animationDots = ANIMATION_DOTS(\"regular\", \"nexa\");\nconst CODE_RENDER_COPY_PART = \"code-block-header__copy\";\nconst CODE_RENDER_COPIED_PART = `${CODE_RENDER_COPY_PART}-copied`;\nconst CODE_BLOCK_HEADER_PART = \"code-block-header\";\n\nconst copy =\n (text: string, isForCodeRender: boolean = false) =>\n (event: Event) => {\n const setTimeoutTime = 1750;\n event.stopPropagation();\n\n // 1. Copy message\n navigator.clipboard.writeText(text);\n\n const copyButtonRef = event.target as HTMLElement;\n\n if (isForCodeRender) {\n const copyTextElement = copyButtonRef.previousElementSibling;\n\n const copyTextElementOriginalParts =\n copyTextElement?.getAttribute(\"part\");\n const copyTextElementWithCopiedPart = `${copyTextElementOriginalParts} ${CODE_RENDER_COPIED_PART}`;\n copyTextElement.setAttribute(\"part\", copyTextElementWithCopiedPart);\n\n setTimeout(() => {\n copyTextElement.setAttribute(\"part\", `${copyTextElementOriginalParts}`);\n }, setTimeoutTime);\n } else {\n const cmSmartGridCellRef = copyButtonRef.closest(\"ch-smart-grid-cell\");\n\n const cmSmartGridCellRefOriginalParts =\n cmSmartGridCellRef?.getAttribute(\"part\");\n const cmSmartGridCellRefWithCopiedPart = `${cmSmartGridCellRefOriginalParts} copied`;\n cmSmartGridCellRef.setAttribute(\"part\", cmSmartGridCellRefWithCopiedPart);\n\n setTimeout(() => {\n cmSmartGridCellRef.setAttribute(\n \"part\",\n `${cmSmartGridCellRefOriginalParts}`\n );\n }, setTimeoutTime);\n }\n };\n\nconst copyButton = (\n textToCopy: string,\n accessibleName: string,\n additionalPart: string,\n isForCodeRender: boolean = false\n) => {\n return (\n <button\n aria-label={accessibleName}\n title={accessibleName}\n class=\"button-copy-code\"\n type=\"button\"\n onClick={copy(textToCopy, isForCodeRender)}\n part={`message__copy-button ${additionalPart}`}\n ></button>\n );\n};\n\nexport const mercuryCodeRender =\n (copyButtonAccessibleName: string) =>\n (options: MarkdownViewerCodeRenderOptions): MarkdownViewerCodeRender =>\n (\n <div class=\"code-block-container\">\n <div class={CODE_BLOCK_HEADER_PART} part={CODE_BLOCK_HEADER_PART}>\n <p part=\"code-block-header__copy\">Copied</p>\n {copyButton(\n options.plainText,\n copyButtonAccessibleName,\n \"code-render\",\n true\n )}\n </div>\n <ch-code\n language={options.language}\n lastNestedChildClass={options.lastNestedChildClass}\n value={options.plainText}\n ></ch-code>\n </div>\n );\n\nconst renderMessageHeader = (\n avatarImagePath: string,\n displayName: string,\n messageContent: string,\n metadata: string\n): JSX.Element => {\n return (\n <div part=\"message__header\">\n <div part=\"message__header-start\">\n <span\n part=\"message__avatar\"\n style={{ backgroundImage: `url(${avatarImagePath})` }}\n ></span>\n <span part={`message__role assistant`}>{displayName}</span>\n <time dateTime={metadata} part=\"message__time\">\n {metadata}\n </time>\n </div>\n <div part=\"message__header-end\">\n <p part=\"message__header-copy\">Copied</p>\n {copyButton(messageContent, \"Copy code\", \"common-message\")}\n </div>\n </div>\n );\n};\n\nexport const mercuryChatMessageRender =\n (\n theme: string,\n assistantAvatarPath: string,\n assistantName: string = \"AI Assistant\"\n ) =>\n (messageModel: ChatMessageByRole<\"assistant\" | \"error\" | \"user\">) => {\n const messageHeader = renderMessageHeader(\n assistantAvatarPath,\n assistantName,\n messageModel.content as string,\n messageModel.metadata\n );\n if (messageModel.role === \"assistant\") {\n return messageModel.status === \"waiting\"\n ? [\n messageHeader,\n <div part=\"message__processing-container\">\n <span part=\"message__processing\">{messageModel.content}</span>\n {animationDots}\n </div>\n ]\n : [\n messageHeader,\n <div part={`message__content assistant ${messageModel.parts}`}>\n <ch-markdown-viewer\n theme={theme}\n showIndicator={false}\n renderCode={mercuryCodeRender(\"Copy response\")}\n value={messageModel.content as string}\n exportparts={`${CODE_BLOCK_HEADER_PART},${CODE_RENDER_COPY_PART},${CODE_RENDER_COPIED_PART}`}\n ></ch-markdown-viewer>\n </div>\n ];\n } else if (messageModel.role === \"user\") {\n return [\n <span part={`message__content ${messageModel.role}`}>\n {messageModel.content}\n </span>\n ];\n } else {\n // error (this is nor from assistant but design dictates to show header)\n return [\n messageHeader,\n <span part={`message__content ${messageModel.role}`}>\n {messageModel.content}\n </span>\n ];\n }\n };\n"]}
@@ -107,8 +107,9 @@ export class GxIdeNewEnvironment {
107
107
  ], "f");
108
108
  }
109
109
  render() {
110
- const userName = limitFullName(this.userInfo?.name);
111
- return (h(Host, { class: "widget" }, h("ch-theme", { model: CSS_BUNDLES }), h("ch-action-menu-render", { class: "dropdown user-login__button", model: __classPrivateFieldGet(this, _GxIdeNewEnvironment_menuDropdownModel, "f"), inlineAlign: "inside-end", blockAlign: "outside-end", onButtonClick: __classPrivateFieldGet(this, _GxIdeNewEnvironment_dropDownitemClickHandler, "f") }, h("div", { class: "user-login__details" }, userName ? h("span", { class: "user-login__name" }, userName) : null, this.userInfo?.team ? (h("span", { class: "user-login__organization" }, this.userInfo.team)) : null), h("div", { class: "user-login__avatar" }, __classPrivateFieldGet(this, _GxIdeNewEnvironment_initials, "f")), h("ch-image", { src: CHEVRON_DOWN_ICON, class: "icon-md", containerRef: __classPrivateFieldGet(this, _GxIdeNewEnvironment_userLoginButton, "f") }), h("div", { class: "user-login__footer footer-slot", slot: "agreement" }, h("button", { class: "body-regular-s agreement-link", onClick: this.termsCallback }, __classPrivateFieldGet(this, _GxIdeNewEnvironment_componentLocale, "f").termsAndConditionsCaption), h("button", { class: "body-regular-s\tagreement-link", onClick: this.privacyCallback }, __classPrivateFieldGet(this, _GxIdeNewEnvironment_componentLocale, "f").privacyPolicyCaption)))));
110
+ var _a, _b;
111
+ const userName = limitFullName((_a = this.userInfo) === null || _a === void 0 ? void 0 : _a.name);
112
+ return (h(Host, { class: "widget" }, h("ch-theme", { model: CSS_BUNDLES }), h("ch-action-menu-render", { class: "dropdown user-login__button", model: __classPrivateFieldGet(this, _GxIdeNewEnvironment_menuDropdownModel, "f"), inlineAlign: "inside-end", blockAlign: "outside-end", onButtonClick: __classPrivateFieldGet(this, _GxIdeNewEnvironment_dropDownitemClickHandler, "f") }, h("div", { class: "user-login__details" }, userName ? h("span", { class: "user-login__name" }, userName) : null, ((_b = this.userInfo) === null || _b === void 0 ? void 0 : _b.team) ? (h("span", { class: "user-login__organization" }, this.userInfo.team)) : null), h("div", { class: "user-login__avatar" }, __classPrivateFieldGet(this, _GxIdeNewEnvironment_initials, "f")), h("ch-image", { src: CHEVRON_DOWN_ICON, class: "icon-md", containerRef: __classPrivateFieldGet(this, _GxIdeNewEnvironment_userLoginButton, "f") }), h("div", { class: "user-login__footer footer-slot", slot: "agreement" }, h("button", { class: "body-regular-s agreement-link", onClick: this.termsCallback }, __classPrivateFieldGet(this, _GxIdeNewEnvironment_componentLocale, "f").termsAndConditionsCaption), h("button", { class: "body-regular-s\tagreement-link", onClick: this.privacyCallback }, __classPrivateFieldGet(this, _GxIdeNewEnvironment_componentLocale, "f").privacyPolicyCaption)))));
112
113
  }
113
114
  static get is() { return "gx-ide-current-user-info"; }
114
115
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"current-user-info.js","sourceRoot":"","sources":["../../../src/components/current-user-info/current-user-info.tsx"],"names":[],"mappings":"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","sourcesContent":["/* 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 {\n ActionMenuItemActionableModel,\n ActionMenuModel,\n ChActionMenuRenderCustomEvent,\n ChPopoverAlign\n} 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: ActionMenuModel;\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 * Defines the menu block and inline alignment\n */\n @Prop() readonly menuAlign: MenuAlign;\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 },\n {\n id: SIGN_OUT_ID,\n caption: this.#componentLocale.signOutLabel\n },\n {\n type: \"separator\"\n },\n {\n type: \"slot\",\n id: \"agreement\"\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: ChActionMenuRenderCustomEvent<ActionMenuItemActionableModel>\n ): void => {\n const id = event.detail.id;\n if (id === MY_ACCOUNT_ID) {\n // this.myAccountCallback();\n } else if (id === CHANGE_TEAM_ID) {\n this.changeTeamCallback();\n } else if (id === SIGN_OUT_ID) {\n this.signOutCallback();\n } else if (id === 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-action-menu-render\n class=\"dropdown user-login__button\"\n model={this.#menuDropdownModel}\n inlineAlign=\"inside-end\"\n blockAlign=\"outside-end\"\n onButtonClick={this.#dropDownitemClickHandler}\n >\n <div class=\"user-login__details\">\n {userName ? <span class=\"user-login__name\">{userName}</span> : null}\n {this.userInfo?.team ? (\n <span class=\"user-login__organization\">{this.userInfo.team}</span>\n ) : null}\n </div>\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 <div class=\"user-login__footer footer-slot\" slot=\"agreement\">\n <button\n class=\"body-regular-s agreement-link\"\n onClick={this.termsCallback}\n >\n {this.#componentLocale.termsAndConditionsCaption}\n </button>\n <button\n class=\"body-regular-s\tagreement-link\"\n onClick={this.privacyCallback}\n >\n {this.#componentLocale.privacyPolicyCaption}\n </button>\n </div>\n </ch-action-menu-render>\n </Host>\n );\n }\n}\n\nexport type MenuAlign = {\n blockAlign: ChPopoverAlign;\n inlineAlign: ChPopoverAlign;\n};\n\nexport type UserInfo = {\n name: string;\n team: string;\n};\n\nexport type Mode = \"dark\" | \"light\";\n"]}
1
+ {"version":3,"file":"current-user-info.js","sourceRoot":"","sources":["../../../src/components/current-user-info/current-user-info.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qBAAqB;AACrB,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAEzE,OAAO,EAAE,WAAW,EAAkB,MAAM,kBAAkB,CAAC;AAE/D,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAQ/D,MAAM,WAAW,GAAmB;IAClC,kDAAkD;IAClD,mBAAmB;IACnB,oBAAoB;IACpB,mBAAmB;IACnB,iBAAiB;IACjB,qBAAqB;IACrB,cAAc;IACd,kBAAkB;IAClB,eAAe;IACf,qBAAqB;CACtB,CAAC;AAEF,MAAM,iBAAiB,GAAG,WAAW,CAAC;IACpC,QAAQ,EAAE,YAAY;IACtB,IAAI,EAAE,cAAc;IACpB,SAAS,EAAE,SAAS;CACrB,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,YAAY,CAAC;AACnC,MAAM,cAAc,GAAG,aAAa,CAAC;AACrC,MAAM,WAAW,GAAG,UAAU,CAAC;AAC/B,MAAM,WAAW,GAAG,UAAU,CAAC;AAQ/B,MAAM,OAAO,mBAAmB;;QAC9B,uDAAsB;QACtB,wCAAoB,EAAE,EAAC;QACvB,eAAe;QACf,yDAAoC;QAGpC,uDAAoC;QA4EpC,8BAA8B;QAC9B,2DAA2D;QAC3D,mCAAmC;QACnC,2CAA2C;QAC3C,MAAM;QACN,KAAK;QAEL,wDAA4B,CAC1B,KAAmE,EAC7D,EAAE;YACR,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,IAAI,EAAE,KAAK,aAAa,EAAE;gBACxB,4BAA4B;aAC7B;iBAAM,IAAI,EAAE,KAAK,cAAc,EAAE;gBAChC,IAAI,CAAC,kBAAkB,EAAE,CAAC;aAC3B;iBAAM,IAAI,EAAE,KAAK,WAAW,EAAE;gBAC7B,IAAI,CAAC,eAAe,EAAE,CAAC;aACxB;iBAAM,IAAI,EAAE,KAAK,WAAW,EAAE;gBAC7B,IAAI,CAAC,sBAAsB,EAAE,CAAC;aAC/B;QACH,CAAC,EAAC;wBA9F2B,KAAK;;;;;;;;;;;IA+ClC,KAAK,CAAC,iBAAiB;QACrB,uBAAA,IAAI,wCAAoB,MAAM,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,MAAA,CAAC;QAClE,uBAAA,IAAI,iCAAa,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAA,CAAC;QACzD,uBAAA,IAAI,0CAAsB;YACxB,IAAI;YACJ,uBAAuB;YACvB,mDAAmD;YACnD,yBAAyB;YACzB,KAAK;YACL;gBACE,EAAE,EAAE,cAAc;gBAClB,OAAO,EAAE,uBAAA,IAAI,4CAAiB,CAAC,eAAe;aAC/C;YACD;gBACE,EAAE,EAAE,WAAW;gBACf,OAAO,EAAE,uBAAA,IAAI,4CAAiB,CAAC,YAAY;aAC5C;YACD;gBACE,IAAI,EAAE,WAAW;aAClB;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,EAAE,EAAE,WAAW;aAChB;SACF,MAAA,CAAC;IACJ,CAAC;IAwBD,MAAM;;QACJ,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAA,IAAI,CAAC,QAAQ,0CAAE,IAAI,CAAC,CAAC;QACpD,OAAO,CACL,EAAC,IAAI,IAAC,KAAK,EAAC,QAAQ;YAClB,gBAAU,KAAK,EAAE,WAAW,GAAa;YACzC,6BACE,KAAK,EAAC,6BAA6B,EACnC,KAAK,EAAE,uBAAA,IAAI,8CAAmB,EAC9B,WAAW,EAAC,YAAY,EACxB,UAAU,EAAC,aAAa,EACxB,aAAa,EAAE,uBAAA,IAAI,qDAA0B;gBAE7C,WAAK,KAAK,EAAC,qBAAqB;oBAC7B,QAAQ,CAAC,CAAC,CAAC,YAAM,KAAK,EAAC,kBAAkB,IAAE,QAAQ,CAAQ,CAAC,CAAC,CAAC,IAAI;oBAClE,CAAA,MAAA,IAAI,CAAC,QAAQ,0CAAE,IAAI,EAAC,CAAC,CAAC,CACrB,YAAM,KAAK,EAAC,0BAA0B,IAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAQ,CACnE,CAAC,CAAC,CAAC,IAAI,CACJ;gBACN,WAAK,KAAK,EAAC,oBAAoB,IAAE,uBAAA,IAAI,qCAAU,CAAO;gBACtD,gBACE,GAAG,EAAE,iBAAiB,EACtB,KAAK,EAAC,SAAS,EACf,YAAY,EAAE,uBAAA,IAAI,4CAAiB,GACzB;gBACZ,WAAK,KAAK,EAAC,gCAAgC,EAAC,IAAI,EAAC,WAAW;oBAC1D,cACE,KAAK,EAAC,+BAA+B,EACrC,OAAO,EAAE,IAAI,CAAC,aAAa,IAE1B,uBAAA,IAAI,4CAAiB,CAAC,yBAAyB,CACzC;oBACT,cACE,KAAK,EAAC,gCAA+B,EACrC,OAAO,EAAE,IAAI,CAAC,eAAe,IAE5B,uBAAA,IAAI,4CAAiB,CAAC,oBAAoB,CACpC,CACL,CACgB,CACnB,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["/* 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 {\n ActionMenuItemActionableModel,\n ActionMenuModel,\n ChActionMenuRenderCustomEvent,\n ChPopoverAlign\n} 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: ActionMenuModel;\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 * Defines the menu block and inline alignment\n */\n @Prop() readonly menuAlign: MenuAlign;\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 },\n {\n id: SIGN_OUT_ID,\n caption: this.#componentLocale.signOutLabel\n },\n {\n type: \"separator\"\n },\n {\n type: \"slot\",\n id: \"agreement\"\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: ChActionMenuRenderCustomEvent<ActionMenuItemActionableModel>\n ): void => {\n const id = event.detail.id;\n if (id === MY_ACCOUNT_ID) {\n // this.myAccountCallback();\n } else if (id === CHANGE_TEAM_ID) {\n this.changeTeamCallback();\n } else if (id === SIGN_OUT_ID) {\n this.signOutCallback();\n } else if (id === 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-action-menu-render\n class=\"dropdown user-login__button\"\n model={this.#menuDropdownModel}\n inlineAlign=\"inside-end\"\n blockAlign=\"outside-end\"\n onButtonClick={this.#dropDownitemClickHandler}\n >\n <div class=\"user-login__details\">\n {userName ? <span class=\"user-login__name\">{userName}</span> : null}\n {this.userInfo?.team ? (\n <span class=\"user-login__organization\">{this.userInfo.team}</span>\n ) : null}\n </div>\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 <div class=\"user-login__footer footer-slot\" slot=\"agreement\">\n <button\n class=\"body-regular-s agreement-link\"\n onClick={this.termsCallback}\n >\n {this.#componentLocale.termsAndConditionsCaption}\n </button>\n <button\n class=\"body-regular-s\tagreement-link\"\n onClick={this.privacyCallback}\n >\n {this.#componentLocale.privacyPolicyCaption}\n </button>\n </div>\n </ch-action-menu-render>\n </Host>\n );\n }\n}\n\nexport type MenuAlign = {\n blockAlign: ChPopoverAlign;\n inlineAlign: ChPopoverAlign;\n};\n\nexport type UserInfo = {\n name: string;\n team: string;\n};\n\nexport type Mode = \"dark\" | \"light\";\n"]}
@@ -143,13 +143,14 @@ export class GxIdeDashboardHome {
143
143
  }
144
144
  // 11.RENDER() MAIN FUNCTION //
145
145
  render() {
146
- return (h(Host, null, h("div", { class: "gx-ide-main-wrapper" }, h("div", { class: "grid grid--basic" }, h("div", { class: "kb gxi-overflow-auto" }, h("gxg-title-editable", { value: this.kb.name, "disable-edition": !this.enableEditKBName, "click-to-edit": true, fluid: true, onValueChanged: this.handleKbNameChange, focusType: "text", debounce: true, ref: el => (this.kbNameEl = el) }), h("div", { class: "align-center kb-detail" }, h("gxg-pill", { id: "pill", type: "static", icon: "objects/procedure" }, this._componentLocale.version, ": ", this.kb.currentVersion), this.renderKbDates())), h("div", { class: "environment" }, h("gxg-title-editable", { class: "environment-title", value: this.environment.name, "disable-edition": !this.enableEditEnvironmentName, "click-to-edit": true, "title-type": "h3", ref: el => (this.envNameEl = el), onValueChanged: this.handleEnvNameChange, focusType: "text", debounce: true }), h("div", { class: "environment__environments" }, h("gxg-card", { cardType: "mini", class: "environment-card", cardTitle: this.renderFrontEndTitle() }, h("div", { class: "environment-container" }, this.environment?.frontEnd?.map((obj) => (h("div", { class: "environment-item" }, h("gxg-icon", { type: obj.icon, color: "onbackground", style: {
146
+ var _a, _b, _c, _d;
147
+ return (h(Host, null, h("div", { class: "gx-ide-main-wrapper" }, h("div", { class: "grid grid--basic" }, h("div", { class: "kb gxi-overflow-auto" }, h("gxg-title-editable", { value: this.kb.name, "disable-edition": !this.enableEditKBName, "click-to-edit": true, fluid: true, onValueChanged: this.handleKbNameChange, focusType: "text", debounce: true, ref: el => (this.kbNameEl = el) }), h("div", { class: "align-center kb-detail" }, h("gxg-pill", { id: "pill", type: "static", icon: "objects/procedure" }, this._componentLocale.version, ": ", this.kb.currentVersion), this.renderKbDates())), h("div", { class: "environment" }, h("gxg-title-editable", { class: "environment-title", value: this.environment.name, "disable-edition": !this.enableEditEnvironmentName, "click-to-edit": true, "title-type": "h3", ref: el => (this.envNameEl = el), onValueChanged: this.handleEnvNameChange, focusType: "text", debounce: true }), h("div", { class: "environment__environments" }, h("gxg-card", { cardType: "mini", class: "environment-card", cardTitle: this.renderFrontEndTitle() }, h("div", { class: "environment-container" }, (_b = (_a = this.environment) === null || _a === void 0 ? void 0 : _a.frontEnd) === null || _b === void 0 ? void 0 : _b.map((obj) => (h("div", { class: "environment-item" }, h("gxg-icon", { type: obj.icon, color: "onbackground", style: {
147
148
  "--mer-text__on-surface": "var(--gray-05);"
148
149
  } }), obj.name))))), h("gxg-card", { cardType: "mini", class: "environment-card", cardTitle: this._componentLocale.environment.backEnd }, h("div", { class: "environment-container" }, h("div", { class: "environment-item" }, h("gxg-icon", { type: this.environment.backEnd.icon, color: "onbackground", style: {
149
150
  "--mer-text__on-surface": "var(--gray-05);"
150
151
  } }), this.environment.backEnd.name))), h("gxg-card", { cardType: "mini", class: "environment-card", cardTitle: this._componentLocale.environment.dataStore }, h("div", { class: "environment-container" }, h("div", { class: "environment-item" }, h("gxg-icon", { type: this.environment.dataStore.icon, color: "onbackground", style: {
151
152
  "--mer-text__on-surface": "var(--gray-05);"
152
- } }), this.environment.dataStore.name))))), h("gxg-card", { editableTitle: false, cardTitle: this._componentLocale.project.title, class: "project" }, this.renderProjectContent()), h("gxg-card", { editableTitle: false, cardTitle: this._componentLocale.recentObjects.title, class: "recent-objects", cardType: "section", noPaddingTop: true, ref: el => (this.recentObjectsContainerEl = el) }, h("div", { class: "recent-objects__container" }, this.recentObjects?.length === 0 ? (h("gx-ide-empty-state", { class: "recent-objects__empty-state", stateIconSrc: __classPrivateFieldGet(this, _GxIdeDashboardHome_folderIcon, "f"), stateTitle: this._componentLocale.recentObjects.emptyState.title, stateDescription: this._componentLocale.recentObjects.emptyState.description })) : (this.recentObjects?.map((obj) => {
153
+ } }), this.environment.dataStore.name))))), h("gxg-card", { editableTitle: false, cardTitle: this._componentLocale.project.title, class: "project" }, this.renderProjectContent()), h("gxg-card", { editableTitle: false, cardTitle: this._componentLocale.recentObjects.title, class: "recent-objects", cardType: "section", noPaddingTop: true, ref: el => (this.recentObjectsContainerEl = el) }, h("div", { class: "recent-objects__container" }, ((_c = this.recentObjects) === null || _c === void 0 ? void 0 : _c.length) === 0 ? (h("gx-ide-empty-state", { class: "recent-objects__empty-state", stateIconSrc: __classPrivateFieldGet(this, _GxIdeDashboardHome_folderIcon, "f"), stateTitle: this._componentLocale.recentObjects.emptyState.title, stateDescription: this._componentLocale.recentObjects.emptyState.description })) : ((_d = this.recentObjects) === null || _d === void 0 ? void 0 : _d.map((obj) => {
153
154
  const statusLocale = mapStatusToLocale[obj.status];
154
155
  const statusDescription = this._componentLocale.recentObjects.status[statusLocale];
155
156
  return (h("gxg-card", { background: "gray-01", padding: "m", cardType: "article", class: "recent-objects__card", actionable: true, onClick: () => this.openObject(obj.id) }, h("div", { class: "recent-objects__object" }, h("div", { class: "col col-left" }, h("gxg-icon", { type: obj.typeIcon, color: "auto" }), h("gxg-text", { type: "text-regular", class: "obj-name" }, obj.name)), h("div", { class: "col col-right" }, h("gxg-text", { italic: true }, statusDescription, obj.status === "modified"
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard-home.js","sourceRoot":"","sources":["../../../src/components/dashboard-home/dashboard-home.tsx"],"names":[],"mappings":";;;;;;AAAA,qBAAqB;AACrB,OAAO,EACL,SAAS,EACT,IAAI,EACJ,CAAC,EACD,IAAI,EACJ,KAAK,EACL,OAAO,EACP,KAAK,EAEL,KAAK,EACN,MAAM,eAAe,CAAC;AACvB,6BAA6B;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,oBAAoB;AACpB,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,MAAM,gBAAgB,GAElB;IACF,KAAK,EAAE,eAAe;IACtB,UAAU,EAAE,sCAAsC;IAClD,YAAY,EAAE,0CAA0C;IACxD,YAAY,EAAE,IAAI;IAClB,eAAe,EAAE,IAAI;CACtB,CAAC;AAEF,MAAM,iBAAiB,GAEnB;IACF,KAAK,EAAE,KAAK;IACZ,UAAU,EAAE,UAAU;IACtB,YAAY,EAAE,YAAY;IAC1B,YAAY,EAAE,YAAY;IAC1B,eAAe,EAAE,cAAc;CAChC,CAAC;AAQF,MAAM,OAAO,kBAAkB;;QAOrB,sBAAiB,GAAG,KAAK,CAAC;QAElC,yCAAc,WAAW,CAAC;YACxB,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,cAAc;SAC1B,CAAC,EAAC;QAwHH,cAAc;QAEd,uBAAuB;QAEvB,kBAAkB;QAEV,mBAAc,GAAG,GAAG,EAAE;YAC5B,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE;gBACpC,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC,wBAAwB,CAAC;gBACxD,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;aAC3B;QACH,CAAC,CAAC;QAEF,UAAU;QAEF,uBAAkB,GAAG,KAAK,EAAE,YAAiC,EAAE,EAAE;YACvE,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,CAAC;YAC1C,IAAI,IAAI,CAAC,gBAAgB,EAAE;gBACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;gBACtD,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAkB,EAAE,EAAE;oBACnC,IAAI,MAAM,CAAC,OAAO,EAAE;wBAClB,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,aAAa,CAAC;qBAC9B;oBACD,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC7C,CAAC,CAAC,CAAC;aACJ;QACH,CAAC,CAAC;QAEF,mBAAmB;QACX,wBAAmB,GAAG,KAAK,IAAI,EAAE;YACvC,IAAI,IAAI,CAAC,yBAAyB,EAAE;gBAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBACtE,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAkB,EAAE,EAAE;oBACnC,IAAI,MAAM,CAAC,OAAO,EAAE;wBAClB,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;qBAC9C;oBACD,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC9C,CAAC,CAAC,CAAC;aACJ;QACH,CAAC,CAAC;QAEM,4BAAuB,GAAG,KAAK,IAAI,EAAE;YAC3C,IAAI,IAAI,CAAC,uBAAuB,EAAE;gBAChC,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;aACtC;QACH,CAAC,CAAC;QAEF,iBAAiB;QAET,eAAU,GAAG,CAAC,EAAU,EAAE,EAAE;YAClC,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QAC9B,CAAC,CAAC;QAEF,aAAa;QAEL,mBAAc,GAAG,CACvB,MAAkB,EAClB,EAA+B,EAC/B,EAAE;YACF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;gBACnB,EAAE,CAAC,gBAAgB,GAAG,OAAO,CAAC;gBAC9B,EAAE,CAAC,iBAAiB,GAAG,MAAM,CAAC,YAAY,CAAC;aAC5C;iBAAM;gBACL,EAAE,CAAC,gBAAgB,GAAG,eAAe,CAAC;gBACtC,EAAE,CAAC,iBAAiB,GAAG,EAAE,CAAC;aAC3B;QACH,CAAC,CAAC;QAEF,qBAAqB;QAEb,yBAAoB,GAAG,GAAY,EAAE;YAC3C,OAAO,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAC/B,WAAK,KAAK,EAAC,qBAAqB,EAAC,SAAS,EAAE,IAAI,CAAC,kBAAkB,IAChE,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAC5B,kBACE,IAAI,EAAC,qBAAqB,EAC1B,IAAI,EAAC,mBAAmB,EACxB,OAAO,EAAE,IAAI,CAAC,uBAAuB,IAEpC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAChB,CACd,CAAC,CAAC,CAAC,IAAI,CACJ,CACP,CAAC,CAAC,CAAC,IAAI,CAAC;QACX,CAAC,CAAC;8BA5LwB,KAAK;yCAKM,KAAK;;gCAYG,KAAK;;yCAUI,KAAK;;qCAUT,KAAK;;;;;;;IAOvD,oBAAoB,CAAC,gBAAoC;QACvD,IAAI,gBAAgB,EAAE;YACpB,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC;SAC5B;IACH,CAAC;IAqCD,+BAA+B;IAE/B,KAAK,CAAC,iBAAiB;QACrB,IAAI,CAAC,gBAAgB,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YAC3B,IAAI,CAAC,2BAA2B,CAAC,IAAI,CACnC,IAAI,CAAC,gBAAgB,CAAC,aAAa,CACpC,CAAC;YACF,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;SAC/B;IACH,CAAC;IAwFO,mBAAmB;QACzB,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC;YAC1C,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,YAAY;YAChD,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,aAAa,CAAC;IACtD,CAAC;IAEO,aAAa;QACnB,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAC5C,gBAAU,KAAK,EAAC,gBAAgB,EAAC,IAAI,EAAC,WAAW,EAAC,OAAO,EAAC,GAAG;YAEzD,YAAY;YACZ,IAAI,CAAC,EAAE,CAAC,OAAO;gBACb,CAAC,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,KAAK,UAAU,CAC7C,IAAI,CAAC,EAAE,CAAC,OAAO,EACf,iBAAiB,CAClB,EAAE;gBACL,CAAC,CAAC,IAAI;YAET,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;YAElD,qBAAqB;YACrB,IAAI,CAAC,EAAE,CAAC,SAAS;gBACf,CAAC,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,KAAK,UAAU,CAC/C,IAAI,CAAC,EAAE,CAAC,SAAS,EACjB,iBAAiB,CAClB,EAAE;gBACL,CAAC,CAAC,IAAI,CAED,CACZ,CAAC,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;IAED,+BAA+B;IAE/B,MAAM;QACJ,OAAO,CACL,EAAC,IAAI;YACH,WAAK,KAAK,EAAC,qBAAqB;gBAC9B,WAAK,KAAK,EAAC,kBAAkB;oBAC3B,WAAK,KAAK,EAAC,sBAAsB;wBAC/B,0BACE,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,qBACF,CAAC,IAAI,CAAC,gBAAgB,mBACxB,IAAI,EACnB,KAAK,QACL,cAAc,EAAE,IAAI,CAAC,kBAAkB,EACvC,SAAS,EAAC,MAAM,EAChB,QAAQ,QACR,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,EAAiC,CAAC,GAC1C;wBACtB,WAAK,KAAK,EAAC,wBAAwB;4BACjC,gBAAU,EAAE,EAAC,MAAM,EAAC,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,mBAAmB;gCACvD,IAAI,CAAC,gBAAgB,CAAC,OAAO;;gCAAI,IAAI,CAAC,EAAE,CAAC,cAAc,CAC/C;4BAEV,IAAI,CAAC,aAAa,EAAE,CACjB,CACF;oBAEN,WAAK,KAAK,EAAC,aAAa;wBACtB,0BACE,KAAK,EAAC,mBAAmB,EACzB,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,qBACX,CAAC,IAAI,CAAC,yBAAyB,mBACjC,IAAI,gBACR,IAAI,EACf,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,EAAiC,CAAC,EAC/D,cAAc,EAAE,IAAI,CAAC,mBAAmB,EACxC,SAAS,EAAC,MAAM,EAChB,QAAQ,SACY;wBACtB,WAAK,KAAK,EAAC,2BAA2B;4BACpC,gBACE,QAAQ,EAAC,MAAM,EACf,KAAK,EAAC,kBAAkB,EACxB,SAAS,EAAE,IAAI,CAAC,mBAAmB,EAAE;gCAErC,WAAK,KAAK,EAAC,uBAAuB,IAC/B,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,GAAG,CAC9B,CAAC,GAAwB,EAAE,EAAE,CAAC,CAC5B,WAAK,KAAK,EAAC,kBAAkB;oCAC3B,gBACE,IAAI,EAAE,GAAG,CAAC,IAAI,EACd,KAAK,EAAC,cAAc,EACpB,KAAK,EAAE;4CACL,wBAAwB,EAAE,iBAAiB;yCAC5C,GACS;oCACX,GAAG,CAAC,IAAI,CACL,CACP,CACF,CACG,CACG;4BACX,gBACE,QAAQ,EAAC,MAAM,EACf,KAAK,EAAC,kBAAkB,EACxB,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,OAAO;gCAEpD,WAAK,KAAK,EAAC,uBAAuB;oCAChC,WAAK,KAAK,EAAC,kBAAkB;wCAC3B,gBACE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,EACnC,KAAK,EAAC,cAAc,EACpB,KAAK,EAAE;gDACL,wBAAwB,EAAE,iBAAiB;6CAC5C,GACS;wCACX,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAC1B,CACF,CACG;4BAEX,gBACE,QAAQ,EAAC,MAAM,EACf,KAAK,EAAC,kBAAkB,EACxB,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,SAAS;gCAEtD,WAAK,KAAK,EAAC,uBAAuB;oCAChC,WAAK,KAAK,EAAC,kBAAkB;wCAC3B,gBACE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,EACrC,KAAK,EAAC,cAAc,EACpB,KAAK,EAAE;gDACL,wBAAwB,EAAE,iBAAiB;6CAC5C,GACS;wCACX,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAC5B,CACF,CACG,CACP,CACF;oBAEN,gBACE,aAAa,EAAE,KAAK,EACpB,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,KAAK,EAC9C,KAAK,EAAC,SAAS,IA2Bd,IAAI,CAAC,oBAAoB,EAAE,CACnB;oBAEX,gBACE,aAAa,EAAE,KAAK,EACpB,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,KAAK,EACpD,KAAK,EAAC,gBAAgB,EACtB,QAAQ,EAAC,SAAS,EAClB,YAAY,QACZ,GAAG,EAAE,EAAE,CAAC,EAAE,CACR,CAAC,IAAI,CAAC,wBAAwB,GAAG,EAAwB,CAAC;wBAG5D,WAAK,KAAK,EAAC,2BAA2B,IACnC,IAAI,CAAC,aAAa,EAAE,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAClC,0BACE,KAAK,EAAC,6BAA6B,EACnC,YAAY,EAAE,uBAAA,IAAI,sCAAY,EAC9B,UAAU,EACR,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,EAEtD,gBAAgB,EACd,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,UAAU,CAAC,WAAW,GAExC,CACvB,CAAC,CAAC,CAAC,CACF,IAAI,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,GAAqB,EAAE,EAAE;4BAChD,MAAM,YAAY,GAAG,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;4BACnD,MAAM,iBAAiB,GACrB,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;4BAC3D,OAAO,CACL,gBACE,UAAU,EAAC,SAAS,EACpB,OAAO,EAAC,GAAG,EACX,QAAQ,EAAC,SAAS,EAClB,KAAK,EAAC,sBAAsB,EAC5B,UAAU,QACV,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gCAEtC,WAAK,KAAK,EAAC,wBAAwB;oCACjC,WAAK,KAAK,EAAC,cAAc;wCACvB,gBACE,IAAI,EAAE,GAAG,CAAC,QAAQ,EAClB,KAAK,EAAC,MAAM,GACF;wCACZ,gBAAU,IAAI,EAAC,cAAc,EAAC,KAAK,EAAC,UAAU,IAC3C,GAAG,CAAC,IAAI,CACA,CACP;oCACN,WAAK,KAAK,EAAC,eAAe;wCACxB,gBAAU,MAAM;4CACb,iBAAiB;4CACjB,GAAG,CAAC,MAAM,KAAK,UAAU;gDACxB,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,gBAAgB,EAAE,MAAM,CAAC;gDAC1C,CAAC,CAAC,IAAI,CACC;wCACV,GAAG,CAAC,MAAM,KAAK,YAAY;4CAC5B,GAAG,CAAC,MAAM,KAAK,eAAe,CAAC,CAAC,CAAC,CAC/B,gBACE,IAAI,EAAE,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,EAClC,KAAK,EAAC,MAAM,GACF,CACb,CAAC,CAAC,CAAC,IAAI,CACJ,CACF,CACG,CACZ,CAAC;wBACJ,CAAC,CAAC,CACH,CACG,CACG,CACP,CACF;YACN,sBACE,WAAW,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAC/C,WAAW,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,EACrD,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,EAA6B,CAAC,GAC1C,CACb,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n State,\n Element,\n Event,\n EventEmitter,\n Watch\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\nimport { getIconPath } from \"@genexus/mercury\";\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../common/locale\";\nimport { formatDate } from \"../../common/helpers\";\n\nconst mapStatusToIcons: {\n [key in RecentObjectStatus]: StatusIcons;\n} = {\n \"new\": \"gx-server/new\",\n \"modified\": \"patterns-default-associated/modified\",\n \"conflicted\": \"patterns-default-associated/synchronized\",\n \"unmodified\": null,\n \"not-connected\": null\n};\n\nconst mapStatusToLocale: {\n [key in RecentObjectStatus]: string;\n} = {\n \"new\": \"new\",\n \"modified\": \"modified\",\n \"conflicted\": \"conflicted\",\n \"unmodified\": \"unmodified\",\n \"not-connected\": \"notConnected\"\n};\n\n@Component({\n tag: \"gx-ide-dashboard-home\",\n styleUrl: \"dashboard-home.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/dashboard-home\"]\n})\nexport class GxIdeDashboardHome {\n // 1.Own Properties\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private renderedFirstTime = false;\n\n #folderIcon = getIconPath({\n category: \"system\",\n name: \"folder\",\n colorType: \"on-elevation\"\n });\n\n // 2.Reference To Elements\n\n @Element() el: HTMLGxIdeDashboardHomeElement;\n private loaderEl!: HTMLGxgIdeLoaderElement;\n private kbNameEl!: HTMLGxgTitleEditableElement;\n private envNameEl!: HTMLGxgTitleEditableElement;\n private recentObjectsContainerEl!: HTMLGxgCardElement;\n /* private projectDescriptionEl!: HTMLGxgFormTextareaElement;*/\n\n // 3.State\n\n /**\n * The editing state for the environment name.\n */\n @State() editingEnvName = false;\n\n /**\n * The editing state for the project details.\n */\n @State() editingProjectDescription = false;\n\n // 4.Public Property API\n\n /**\n * The KB basic properties.\n */\n @Prop() readonly kb: KBData;\n\n /**\n * This allows the kb to be editable by the user.\n */\n @Prop() readonly enableEditKBName: boolean = false;\n\n /**\n * Information of the current environment.\n */\n @Prop() readonly environment: EnvironmentData;\n\n /**\n * This allows the environment name to be editable by the user.\n */\n @Prop() readonly enableEditEnvironmentName: boolean = false;\n\n /**\n * Project Detail description.\n */\n @Prop() readonly projectDescription: string;\n\n /**\n * This allows the project description to be modified by the user.\n */\n @Prop() readonly enableEditDescription: boolean = false;\n\n /**\n * Recently edited objects.\n */\n @Prop() readonly recentObjects: recentObjectData[];\n @Watch(\"recentObjects\")\n recentObjectsHandler(newRecentObjects: recentObjectData[]) {\n if (newRecentObjects) {\n this.loaderEl.show = false;\n }\n }\n\n /**\n * Callback invoked when user tries to rename the KB.\n * Receives the new name as a parameter\n * and returns a promise with the result of the operation.\n */\n @Prop() readonly renameKBCallback: (name: string) => Promise<EditResult>;\n\n /**\n * Callback invoked when user tries to rename the KB environment.\n * Receives the new name as a parameter\n * and returns a promise with the result of the operation.\n */\n @Prop() readonly renameEnvironmentCallback: (\n name: string\n ) => Promise<EditResult>;\n\n /**\n * Callback invoked when user tries to edit the Project Description.\n * The edition is resolved by the host.\n */\n @Prop() readonly editDescriptionCallback: () => Promise<void>;\n\n /**\n * Callback invoked when user tries to open one of the listed Recent Objects\n * Receives the internal ID of the object\n */\n @Prop() readonly openObjectCallback: (id: string) => Promise<void>;\n\n // 5.Events\n\n /**\n * @description Gets fired when the component has rendered for the first time.\n */\n @Event() componentDidRenderFirstTime: EventEmitter<string>;\n\n // 6.Component Lifecycle Events\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n componentDidLoad() {\n this.evaluateLoader();\n }\n\n componentDidRender() {\n if (!this.renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this._componentLocale.componentName\n );\n this.renderedFirstTime = true;\n }\n }\n\n // 7.Listeners\n\n // 8.Public Methods API\n\n // 9.Local Methods\n\n private evaluateLoader = () => {\n if (this.recentObjects === undefined) {\n this.loaderEl.container = this.recentObjectsContainerEl;\n this.loaderEl.show = true;\n }\n };\n\n // Kb Name\n\n private handleKbNameChange = async (updatedTitle: CustomEvent<string>) => {\n const updatedKbName = updatedTitle.detail;\n if (this.renameKBCallback) {\n const response = this.renameKBCallback(updatedKbName);\n response.then((result: EditResult) => {\n if (result.success) {\n this.kb.name = updatedKbName;\n }\n this.editValidation(result, this.kbNameEl);\n });\n }\n };\n\n // Environment Name\n private handleEnvNameChange = async () => {\n if (this.renameEnvironmentCallback) {\n const response = this.renameEnvironmentCallback(this.envNameEl.value);\n response.then((result: EditResult) => {\n if (result.success) {\n this.environment.name = this.envNameEl.value;\n }\n this.editValidation(result, this.envNameEl);\n });\n }\n };\n\n private handleDescriptionChange = async () => {\n if (this.editDescriptionCallback) {\n await this.editDescriptionCallback();\n }\n };\n\n // Recent Objects\n\n private openObject = (id: string) => {\n this.openObjectCallback(id);\n };\n\n // Validation\n\n private editValidation = (\n result: EditResult,\n el: HTMLGxgTitleEditableElement\n ) => {\n if (!result.success) {\n el.validationStatus = \"error\";\n el.validationMessage = result.errorMessage;\n } else {\n el.validationStatus = \"indeterminate\";\n el.validationMessage = \"\";\n }\n };\n\n // 10.Render Function\n\n private renderProjectContent = (): Element => {\n return this.projectDescription ? (\n <div class=\"project-description\" innerHTML={this.projectDescription}>\n {this.enableEditDescription ? (\n <gxg-button\n type=\"secondary-text-icon\"\n icon=\"gemini-tools/edit\"\n onClick={this.handleDescriptionChange}\n >\n {this._componentLocale.edit}\n </gxg-button>\n ) : null}\n </div>\n ) : null;\n };\n\n private renderFrontEndTitle() {\n return this.environment.frontEnd.length <= 1\n ? this._componentLocale.environment.frontEndLang\n : this._componentLocale.environment.frontEndLangs;\n }\n\n private renderKbDates() {\n return this.kb.created || this.kb.lastBuild ? (\n <gxg-text class=\"display-inline\" type=\"text-gray\" padding=\"s\">\n {\n /* created*/\n this.kb.created\n ? `${this._componentLocale.created}: ${formatDate(\n this.kb.created,\n \"date-time-short\"\n )}`\n : null\n }\n {this.kb.created && this.kb.lastBuild ? \" - \" : null}\n {\n /* last build date */\n this.kb.lastBuild\n ? `${this._componentLocale.lastBuild}: ${formatDate(\n this.kb.lastBuild,\n \"date-time-short\"\n )}`\n : null\n }\n </gxg-text>\n ) : null;\n }\n\n // 11.RENDER() MAIN FUNCTION //\n\n render() {\n return (\n <Host>\n <div class=\"gx-ide-main-wrapper\">\n <div class=\"grid grid--basic\">\n <div class=\"kb gxi-overflow-auto\">\n <gxg-title-editable\n value={this.kb.name}\n disable-edition={!this.enableEditKBName}\n click-to-edit={true}\n fluid\n onValueChanged={this.handleKbNameChange}\n focusType=\"text\"\n debounce\n ref={el => (this.kbNameEl = el as HTMLGxgTitleEditableElement)}\n ></gxg-title-editable>\n <div class=\"align-center kb-detail\">\n <gxg-pill id=\"pill\" type=\"static\" icon=\"objects/procedure\">\n {this._componentLocale.version}: {this.kb.currentVersion}\n </gxg-pill>\n\n {this.renderKbDates()}\n </div>\n </div>\n\n <div class=\"environment\">\n <gxg-title-editable\n class=\"environment-title\"\n value={this.environment.name}\n disable-edition={!this.enableEditEnvironmentName}\n click-to-edit={true}\n title-type=\"h3\"\n ref={el => (this.envNameEl = el as HTMLGxgTitleEditableElement)}\n onValueChanged={this.handleEnvNameChange}\n focusType=\"text\"\n debounce\n ></gxg-title-editable>\n <div class=\"environment__environments\">\n <gxg-card\n cardType=\"mini\"\n class=\"environment-card\"\n cardTitle={this.renderFrontEndTitle()}\n >\n <div class=\"environment-container\">\n {this.environment?.frontEnd?.map(\n (obj: EnvironmentItemData) => (\n <div class=\"environment-item\">\n <gxg-icon\n type={obj.icon}\n color=\"onbackground\"\n style={{\n \"--mer-text__on-surface\": \"var(--gray-05);\"\n }}\n ></gxg-icon>\n {obj.name}\n </div>\n )\n )}\n </div>\n </gxg-card>\n <gxg-card\n cardType=\"mini\"\n class=\"environment-card\"\n cardTitle={this._componentLocale.environment.backEnd}\n >\n <div class=\"environment-container\">\n <div class=\"environment-item\">\n <gxg-icon\n type={this.environment.backEnd.icon}\n color=\"onbackground\"\n style={{\n \"--mer-text__on-surface\": \"var(--gray-05);\"\n }}\n ></gxg-icon>\n {this.environment.backEnd.name}\n </div>\n </div>\n </gxg-card>\n\n <gxg-card\n cardType=\"mini\"\n class=\"environment-card\"\n cardTitle={this._componentLocale.environment.dataStore}\n >\n <div class=\"environment-container\">\n <div class=\"environment-item\">\n <gxg-icon\n type={this.environment.dataStore.icon}\n color=\"onbackground\"\n style={{\n \"--mer-text__on-surface\": \"var(--gray-05);\"\n }}\n ></gxg-icon>\n {this.environment.dataStore.name}\n </div>\n </div>\n </gxg-card>\n </div>\n </div>\n\n <gxg-card\n editableTitle={false}\n cardTitle={this._componentLocale.project.title}\n class=\"project\"\n >\n {/* <gxg-tabs height=\"auto\" minWidth=\"100%\">\n <gxg-tab-bar slot=\"tab-bar-container\" displayBorder>\n <gxg-tab-button\n slot=\"tab-bar\"\n tab-label={this._componentLocale.project.tabs.description}\n tab=\"description\"\n is-selected\n ></gxg-tab-button>\n <gxg-tab-button\n slot=\"tab-bar\"\n tab-label={this._componentLocale.project.tabs.lookFeel}\n tab=\"lookFeel\"\n ></gxg-tab-button>\n <gxg-tab-button\n slot=\"tab-bar\"\n tab-label={this._componentLocale.project.tabs.architecture}\n tab=\"architecture\"\n ></gxg-tab-button>\n </gxg-tab-bar>\n <gxg-tab noPadding tab=\"description\" flexContainer>\n {this.renderProjectContent()}\n </gxg-tab>\n <gxg-tab noPadding tab=\"lookFeel\" flexContainer></gxg-tab>\n <gxg-tab noPadding tab=\"architecture\" flexContainer></gxg-tab>\n </gxg-tabs> */}\n {this.renderProjectContent()}\n </gxg-card>\n\n <gxg-card\n editableTitle={false}\n cardTitle={this._componentLocale.recentObjects.title}\n class=\"recent-objects\"\n cardType=\"section\"\n noPaddingTop\n ref={el =>\n (this.recentObjectsContainerEl = el as HTMLGxgCardElement)\n }\n >\n <div class=\"recent-objects__container\">\n {this.recentObjects?.length === 0 ? (\n <gx-ide-empty-state\n class=\"recent-objects__empty-state\"\n stateIconSrc={this.#folderIcon}\n stateTitle={\n this._componentLocale.recentObjects.emptyState.title\n }\n stateDescription={\n this._componentLocale.recentObjects.emptyState.description\n }\n ></gx-ide-empty-state>\n ) : (\n this.recentObjects?.map((obj: recentObjectData) => {\n const statusLocale = mapStatusToLocale[obj.status];\n const statusDescription =\n this._componentLocale.recentObjects.status[statusLocale];\n return (\n <gxg-card\n background=\"gray-01\"\n padding=\"m\"\n cardType=\"article\"\n class=\"recent-objects__card\"\n actionable\n onClick={() => this.openObject(obj.id)}\n >\n <div class=\"recent-objects__object\">\n <div class=\"col col-left\">\n <gxg-icon\n type={obj.typeIcon}\n color=\"auto\"\n ></gxg-icon>\n <gxg-text type=\"text-regular\" class=\"obj-name\">\n {obj.name}\n </gxg-text>\n </div>\n <div class=\"col col-right\">\n <gxg-text italic>\n {statusDescription}\n {obj.status === \"modified\"\n ? formatDate(obj.modificationDate, \"date\")\n : null}\n </gxg-text>\n {obj.status !== \"unmodified\" &&\n obj.status !== \"not-connected\" ? (\n <gxg-icon\n type={mapStatusToIcons[obj.status]}\n color=\"auto\"\n ></gxg-icon>\n ) : null}\n </div>\n </div>\n </gxg-card>\n );\n })\n )}\n </div>\n </gxg-card>\n </div>\n </div>\n <gxg-ide-loader\n loaderTitle={this._componentLocale.loader.title}\n description={this._componentLocale.loader.description}\n ref={el => (this.loaderEl = el as HTMLGxgIdeLoaderElement)}\n ></gxg-ide-loader>\n </Host>\n );\n }\n}\n\nexport type KBData = {\n name: string;\n currentVersion: string;\n created: Date;\n lastBuild?: Date;\n};\n\nexport type EnvironmentData = {\n name: string;\n frontEnd: EnvironmentItemData[];\n backEnd: EnvironmentItemData;\n dataStore: EnvironmentItemData;\n};\n\nexport type EnvironmentItemData = {\n icon: string;\n name: string;\n};\n\nexport type recentObjectData = {\n id: string;\n typeIcon: string;\n name: string;\n modificationDate: Date;\n status: RecentObjectStatus;\n};\n\nexport type RecentObjectStatus =\n | \"new\"\n | \"modified\"\n | \"conflicted\"\n | \"unmodified\"\n | \"not-connected\";\n\nexport type StatusIcons =\n // toDo: Add proper icons!!\n | \"gx-server/new\"\n | \"patterns-default-associated/modified\"\n | \"patterns-default-associated/synchronized\"\n | \"gx-server/delete\";\n\nexport type EditResult = {\n success: boolean;\n errorMessage: string;\n};\n"]}
1
+ {"version":3,"file":"dashboard-home.js","sourceRoot":"","sources":["../../../src/components/dashboard-home/dashboard-home.tsx"],"names":[],"mappings":"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","sourcesContent":["/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n State,\n Element,\n Event,\n EventEmitter,\n Watch\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\nimport { getIconPath } from \"@genexus/mercury\";\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../common/locale\";\nimport { formatDate } from \"../../common/helpers\";\n\nconst mapStatusToIcons: {\n [key in RecentObjectStatus]: StatusIcons;\n} = {\n \"new\": \"gx-server/new\",\n \"modified\": \"patterns-default-associated/modified\",\n \"conflicted\": \"patterns-default-associated/synchronized\",\n \"unmodified\": null,\n \"not-connected\": null\n};\n\nconst mapStatusToLocale: {\n [key in RecentObjectStatus]: string;\n} = {\n \"new\": \"new\",\n \"modified\": \"modified\",\n \"conflicted\": \"conflicted\",\n \"unmodified\": \"unmodified\",\n \"not-connected\": \"notConnected\"\n};\n\n@Component({\n tag: \"gx-ide-dashboard-home\",\n styleUrl: \"dashboard-home.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/dashboard-home\"]\n})\nexport class GxIdeDashboardHome {\n // 1.Own Properties\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private renderedFirstTime = false;\n\n #folderIcon = getIconPath({\n category: \"system\",\n name: \"folder\",\n colorType: \"on-elevation\"\n });\n\n // 2.Reference To Elements\n\n @Element() el: HTMLGxIdeDashboardHomeElement;\n private loaderEl!: HTMLGxgIdeLoaderElement;\n private kbNameEl!: HTMLGxgTitleEditableElement;\n private envNameEl!: HTMLGxgTitleEditableElement;\n private recentObjectsContainerEl!: HTMLGxgCardElement;\n /* private projectDescriptionEl!: HTMLGxgFormTextareaElement;*/\n\n // 3.State\n\n /**\n * The editing state for the environment name.\n */\n @State() editingEnvName = false;\n\n /**\n * The editing state for the project details.\n */\n @State() editingProjectDescription = false;\n\n // 4.Public Property API\n\n /**\n * The KB basic properties.\n */\n @Prop() readonly kb: KBData;\n\n /**\n * This allows the kb to be editable by the user.\n */\n @Prop() readonly enableEditKBName: boolean = false;\n\n /**\n * Information of the current environment.\n */\n @Prop() readonly environment: EnvironmentData;\n\n /**\n * This allows the environment name to be editable by the user.\n */\n @Prop() readonly enableEditEnvironmentName: boolean = false;\n\n /**\n * Project Detail description.\n */\n @Prop() readonly projectDescription: string;\n\n /**\n * This allows the project description to be modified by the user.\n */\n @Prop() readonly enableEditDescription: boolean = false;\n\n /**\n * Recently edited objects.\n */\n @Prop() readonly recentObjects: recentObjectData[];\n @Watch(\"recentObjects\")\n recentObjectsHandler(newRecentObjects: recentObjectData[]) {\n if (newRecentObjects) {\n this.loaderEl.show = false;\n }\n }\n\n /**\n * Callback invoked when user tries to rename the KB.\n * Receives the new name as a parameter\n * and returns a promise with the result of the operation.\n */\n @Prop() readonly renameKBCallback: (name: string) => Promise<EditResult>;\n\n /**\n * Callback invoked when user tries to rename the KB environment.\n * Receives the new name as a parameter\n * and returns a promise with the result of the operation.\n */\n @Prop() readonly renameEnvironmentCallback: (\n name: string\n ) => Promise<EditResult>;\n\n /**\n * Callback invoked when user tries to edit the Project Description.\n * The edition is resolved by the host.\n */\n @Prop() readonly editDescriptionCallback: () => Promise<void>;\n\n /**\n * Callback invoked when user tries to open one of the listed Recent Objects\n * Receives the internal ID of the object\n */\n @Prop() readonly openObjectCallback: (id: string) => Promise<void>;\n\n // 5.Events\n\n /**\n * @description Gets fired when the component has rendered for the first time.\n */\n @Event() componentDidRenderFirstTime: EventEmitter<string>;\n\n // 6.Component Lifecycle Events\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n componentDidLoad() {\n this.evaluateLoader();\n }\n\n componentDidRender() {\n if (!this.renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this._componentLocale.componentName\n );\n this.renderedFirstTime = true;\n }\n }\n\n // 7.Listeners\n\n // 8.Public Methods API\n\n // 9.Local Methods\n\n private evaluateLoader = () => {\n if (this.recentObjects === undefined) {\n this.loaderEl.container = this.recentObjectsContainerEl;\n this.loaderEl.show = true;\n }\n };\n\n // Kb Name\n\n private handleKbNameChange = async (updatedTitle: CustomEvent<string>) => {\n const updatedKbName = updatedTitle.detail;\n if (this.renameKBCallback) {\n const response = this.renameKBCallback(updatedKbName);\n response.then((result: EditResult) => {\n if (result.success) {\n this.kb.name = updatedKbName;\n }\n this.editValidation(result, this.kbNameEl);\n });\n }\n };\n\n // Environment Name\n private handleEnvNameChange = async () => {\n if (this.renameEnvironmentCallback) {\n const response = this.renameEnvironmentCallback(this.envNameEl.value);\n response.then((result: EditResult) => {\n if (result.success) {\n this.environment.name = this.envNameEl.value;\n }\n this.editValidation(result, this.envNameEl);\n });\n }\n };\n\n private handleDescriptionChange = async () => {\n if (this.editDescriptionCallback) {\n await this.editDescriptionCallback();\n }\n };\n\n // Recent Objects\n\n private openObject = (id: string) => {\n this.openObjectCallback(id);\n };\n\n // Validation\n\n private editValidation = (\n result: EditResult,\n el: HTMLGxgTitleEditableElement\n ) => {\n if (!result.success) {\n el.validationStatus = \"error\";\n el.validationMessage = result.errorMessage;\n } else {\n el.validationStatus = \"indeterminate\";\n el.validationMessage = \"\";\n }\n };\n\n // 10.Render Function\n\n private renderProjectContent = (): Element => {\n return this.projectDescription ? (\n <div class=\"project-description\" innerHTML={this.projectDescription}>\n {this.enableEditDescription ? (\n <gxg-button\n type=\"secondary-text-icon\"\n icon=\"gemini-tools/edit\"\n onClick={this.handleDescriptionChange}\n >\n {this._componentLocale.edit}\n </gxg-button>\n ) : null}\n </div>\n ) : null;\n };\n\n private renderFrontEndTitle() {\n return this.environment.frontEnd.length <= 1\n ? this._componentLocale.environment.frontEndLang\n : this._componentLocale.environment.frontEndLangs;\n }\n\n private renderKbDates() {\n return this.kb.created || this.kb.lastBuild ? (\n <gxg-text class=\"display-inline\" type=\"text-gray\" padding=\"s\">\n {\n /* created*/\n this.kb.created\n ? `${this._componentLocale.created}: ${formatDate(\n this.kb.created,\n \"date-time-short\"\n )}`\n : null\n }\n {this.kb.created && this.kb.lastBuild ? \" - \" : null}\n {\n /* last build date */\n this.kb.lastBuild\n ? `${this._componentLocale.lastBuild}: ${formatDate(\n this.kb.lastBuild,\n \"date-time-short\"\n )}`\n : null\n }\n </gxg-text>\n ) : null;\n }\n\n // 11.RENDER() MAIN FUNCTION //\n\n render() {\n return (\n <Host>\n <div class=\"gx-ide-main-wrapper\">\n <div class=\"grid grid--basic\">\n <div class=\"kb gxi-overflow-auto\">\n <gxg-title-editable\n value={this.kb.name}\n disable-edition={!this.enableEditKBName}\n click-to-edit={true}\n fluid\n onValueChanged={this.handleKbNameChange}\n focusType=\"text\"\n debounce\n ref={el => (this.kbNameEl = el as HTMLGxgTitleEditableElement)}\n ></gxg-title-editable>\n <div class=\"align-center kb-detail\">\n <gxg-pill id=\"pill\" type=\"static\" icon=\"objects/procedure\">\n {this._componentLocale.version}: {this.kb.currentVersion}\n </gxg-pill>\n\n {this.renderKbDates()}\n </div>\n </div>\n\n <div class=\"environment\">\n <gxg-title-editable\n class=\"environment-title\"\n value={this.environment.name}\n disable-edition={!this.enableEditEnvironmentName}\n click-to-edit={true}\n title-type=\"h3\"\n ref={el => (this.envNameEl = el as HTMLGxgTitleEditableElement)}\n onValueChanged={this.handleEnvNameChange}\n focusType=\"text\"\n debounce\n ></gxg-title-editable>\n <div class=\"environment__environments\">\n <gxg-card\n cardType=\"mini\"\n class=\"environment-card\"\n cardTitle={this.renderFrontEndTitle()}\n >\n <div class=\"environment-container\">\n {this.environment?.frontEnd?.map(\n (obj: EnvironmentItemData) => (\n <div class=\"environment-item\">\n <gxg-icon\n type={obj.icon}\n color=\"onbackground\"\n style={{\n \"--mer-text__on-surface\": \"var(--gray-05);\"\n }}\n ></gxg-icon>\n {obj.name}\n </div>\n )\n )}\n </div>\n </gxg-card>\n <gxg-card\n cardType=\"mini\"\n class=\"environment-card\"\n cardTitle={this._componentLocale.environment.backEnd}\n >\n <div class=\"environment-container\">\n <div class=\"environment-item\">\n <gxg-icon\n type={this.environment.backEnd.icon}\n color=\"onbackground\"\n style={{\n \"--mer-text__on-surface\": \"var(--gray-05);\"\n }}\n ></gxg-icon>\n {this.environment.backEnd.name}\n </div>\n </div>\n </gxg-card>\n\n <gxg-card\n cardType=\"mini\"\n class=\"environment-card\"\n cardTitle={this._componentLocale.environment.dataStore}\n >\n <div class=\"environment-container\">\n <div class=\"environment-item\">\n <gxg-icon\n type={this.environment.dataStore.icon}\n color=\"onbackground\"\n style={{\n \"--mer-text__on-surface\": \"var(--gray-05);\"\n }}\n ></gxg-icon>\n {this.environment.dataStore.name}\n </div>\n </div>\n </gxg-card>\n </div>\n </div>\n\n <gxg-card\n editableTitle={false}\n cardTitle={this._componentLocale.project.title}\n class=\"project\"\n >\n {/* <gxg-tabs height=\"auto\" minWidth=\"100%\">\n <gxg-tab-bar slot=\"tab-bar-container\" displayBorder>\n <gxg-tab-button\n slot=\"tab-bar\"\n tab-label={this._componentLocale.project.tabs.description}\n tab=\"description\"\n is-selected\n ></gxg-tab-button>\n <gxg-tab-button\n slot=\"tab-bar\"\n tab-label={this._componentLocale.project.tabs.lookFeel}\n tab=\"lookFeel\"\n ></gxg-tab-button>\n <gxg-tab-button\n slot=\"tab-bar\"\n tab-label={this._componentLocale.project.tabs.architecture}\n tab=\"architecture\"\n ></gxg-tab-button>\n </gxg-tab-bar>\n <gxg-tab noPadding tab=\"description\" flexContainer>\n {this.renderProjectContent()}\n </gxg-tab>\n <gxg-tab noPadding tab=\"lookFeel\" flexContainer></gxg-tab>\n <gxg-tab noPadding tab=\"architecture\" flexContainer></gxg-tab>\n </gxg-tabs> */}\n {this.renderProjectContent()}\n </gxg-card>\n\n <gxg-card\n editableTitle={false}\n cardTitle={this._componentLocale.recentObjects.title}\n class=\"recent-objects\"\n cardType=\"section\"\n noPaddingTop\n ref={el =>\n (this.recentObjectsContainerEl = el as HTMLGxgCardElement)\n }\n >\n <div class=\"recent-objects__container\">\n {this.recentObjects?.length === 0 ? (\n <gx-ide-empty-state\n class=\"recent-objects__empty-state\"\n stateIconSrc={this.#folderIcon}\n stateTitle={\n this._componentLocale.recentObjects.emptyState.title\n }\n stateDescription={\n this._componentLocale.recentObjects.emptyState.description\n }\n ></gx-ide-empty-state>\n ) : (\n this.recentObjects?.map((obj: recentObjectData) => {\n const statusLocale = mapStatusToLocale[obj.status];\n const statusDescription =\n this._componentLocale.recentObjects.status[statusLocale];\n return (\n <gxg-card\n background=\"gray-01\"\n padding=\"m\"\n cardType=\"article\"\n class=\"recent-objects__card\"\n actionable\n onClick={() => this.openObject(obj.id)}\n >\n <div class=\"recent-objects__object\">\n <div class=\"col col-left\">\n <gxg-icon\n type={obj.typeIcon}\n color=\"auto\"\n ></gxg-icon>\n <gxg-text type=\"text-regular\" class=\"obj-name\">\n {obj.name}\n </gxg-text>\n </div>\n <div class=\"col col-right\">\n <gxg-text italic>\n {statusDescription}\n {obj.status === \"modified\"\n ? formatDate(obj.modificationDate, \"date\")\n : null}\n </gxg-text>\n {obj.status !== \"unmodified\" &&\n obj.status !== \"not-connected\" ? (\n <gxg-icon\n type={mapStatusToIcons[obj.status]}\n color=\"auto\"\n ></gxg-icon>\n ) : null}\n </div>\n </div>\n </gxg-card>\n );\n })\n )}\n </div>\n </gxg-card>\n </div>\n </div>\n <gxg-ide-loader\n loaderTitle={this._componentLocale.loader.title}\n description={this._componentLocale.loader.description}\n ref={el => (this.loaderEl = el as HTMLGxgIdeLoaderElement)}\n ></gxg-ide-loader>\n </Host>\n );\n }\n}\n\nexport type KBData = {\n name: string;\n currentVersion: string;\n created: Date;\n lastBuild?: Date;\n};\n\nexport type EnvironmentData = {\n name: string;\n frontEnd: EnvironmentItemData[];\n backEnd: EnvironmentItemData;\n dataStore: EnvironmentItemData;\n};\n\nexport type EnvironmentItemData = {\n icon: string;\n name: string;\n};\n\nexport type recentObjectData = {\n id: string;\n typeIcon: string;\n name: string;\n modificationDate: Date;\n status: RecentObjectStatus;\n};\n\nexport type RecentObjectStatus =\n | \"new\"\n | \"modified\"\n | \"conflicted\"\n | \"unmodified\"\n | \"not-connected\";\n\nexport type StatusIcons =\n // toDo: Add proper icons!!\n | \"gx-server/new\"\n | \"patterns-default-associated/modified\"\n | \"patterns-default-associated/synchronized\"\n | \"gx-server/delete\";\n\nexport type EditResult = {\n success: boolean;\n errorMessage: string;\n};\n"]}
@@ -93,10 +93,11 @@ export class GxIdeDataSelector {
93
93
  }
94
94
  });
95
95
  _GxIdeDataSelector_refreshUIWithNewConfiguration.set(this, () => {
96
+ var _a, _b, _c;
96
97
  this.objects = [];
97
98
  const filters = {
98
- pattern: __classPrivateFieldGet(this, _GxIdeDataSelector_filterPatternEl, "f")?.value,
99
- object: __classPrivateFieldGet(this, _GxIdeDataSelector_filterObjectEl, "f")?.value?.id
99
+ pattern: (_a = __classPrivateFieldGet(this, _GxIdeDataSelector_filterPatternEl, "f")) === null || _a === void 0 ? void 0 : _a.value,
100
+ object: (_c = (_b = __classPrivateFieldGet(this, _GxIdeDataSelector_filterObjectEl, "f")) === null || _b === void 0 ? void 0 : _b.value) === null || _c === void 0 ? void 0 : _c.id
100
101
  };
101
102
  this.loading = true;
102
103
  this.loadItemsCallback(filters).then((items) => {
@@ -1 +1 @@
1
- {"version":3,"file":"data-selector.js","sourceRoot":"","sources":["../../../src/components/data-selector/data-selector.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @stencil-community/own-props-must-be-private */\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n State,\n Method,\n getAssetPath,\n JSX\n} from \"@stencil/core\";\n\nimport { Locale } from \"../../common/locale\";\n\nimport { config } from \"../../common/config\";\nimport { EntityData } from \"../../common/types\";\nimport { MercuryBundles, getIconPath } from \"@genexus/mercury\";\nimport { TabularGridSelectionChangedEvent } from \"@genexus/chameleon-controls-library\";\n\n// Best performance bundle\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/edit\",\n \"components/tabular-grid\",\n \"components/icon\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/spacing\",\n \"chameleon/scrollbar\"\n];\n\nconst FILTER_ICON = getIconPath({\n category: \"window-tools\",\n name: \"filter\",\n colorType: \"on-elevation\"\n});\n\n@Component({\n tag: \"gx-ide-data-selector\",\n styleUrl: \"data-selector.scss\",\n shadow: { delegatesFocus: true },\n assetsDirs: [\"gx-ide-assets/data-selector\"]\n})\nexport class GxIdeDataSelector {\n #firstGridObjectId: string; // used to select the first item after \"loadItemsCallback\"\n #loadItemsCallbackJustCalled: boolean = false; // used to select the first item after \"loadItemsCallback\"\n\n #componentLocale: any;\n #animateEmptyState: boolean = false;\n #shortcutsSrc = getAssetPath(`./gx-ide-assets/data-selector/shortcuts.json`);\n /* References needed to collect data */\n #filterPatternEl!: HTMLChEditElement;\n #filterObjectEl!: HTMLGxIdeEntitySelectorElement;\n #chShortcutsEl: HTMLChShortcutsElement;\n #chTabularGridObjectsEl: HTMLChTabularGridElement;\n\n @Element() el: HTMLGxIdeDataSelectorElement;\n\n /**\n * True if loadItemsCallback has been called and has not been resolved yet.\n */\n @State() loading: boolean = true;\n\n /**\n * The objects rendered in the table\n */\n @State() objects: ItemData[] = [];\n\n /**\n * The selected objects in the table of objects\n */\n @State() selectedObjectsIds: string[] = [];\n\n /**\n * Callback invoked when the user wishes to cancel the selection of objects.\n */\n @Prop() readonly cancelCallback!: CancelCallback;\n\n /**\n * Callback invoked when the user presses the 'OK' button\n */\n @Prop() readonly confirmCallback!: ConfirmCallback;\n\n /**\n * The default value for the module/folder filter\n */\n @Prop() readonly defaultModule: 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 presses the edit button. Receives the first\n * selected element id as a parameter.\n */\n @Prop() readonly editCallback: EditCallback;\n\n /**\n * Callback invoked when the component needs to reload the list of attributes.\n */\n @Prop() readonly loadItemsCallback!: LoadItemsCallback;\n\n /**\n * If true, it will display a loader when needed.\n */\n @Prop() readonly loader = false;\n\n /**\n * Callback invoked when the user presses the 'New' button.\n */\n @Prop() readonly newVariableCallback: NewVariableCallback;\n\n /**\n * Callback invoked when the action is executed in the Object filter. It returns\n * the information of the selected object (id and name) or 'undefined' if it was\n * canceled.\n */\n @Prop() readonly selectObjectCallback: SelectObjectCallback;\n\n /**\n * Single if multiple object selection is not allowed. Default is multiple\n */\n @Prop() readonly selectionType: \"single\" | \"multiple\" = \"multiple\";\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n connectedCallback() {\n this.#refreshUIWithNewConfiguration();\n }\n\n componentDidLoad() {\n this.#filterPatternEl.focus();\n }\n\n componentDidRender() {\n this.#evaluateFirstRowSelection();\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 * Validate necessary data input\n */\n @Method()\n async validate(): Promise<boolean> {\n const isValid = true;\n return isValid;\n }\n\n /**\n * After items have been loaded and rendered, the first row should be selected.\n */\n #evaluateFirstRowSelection = () => {\n if (this.#loadItemsCallbackJustCalled) {\n this.#chTabularGridObjectsEl.selectRow(this.#firstGridObjectId);\n }\n this.#loadItemsCallbackJustCalled = false;\n };\n\n #chGridKeyDownHandler = (e: KeyboardEvent) => {\n if (e.key === \"Enter\") {\n this.#confirmCallbackHandler(e);\n }\n };\n\n #confirmCallbackHandler = (e: MouseEvent | KeyboardEvent): void => {\n e.stopPropagation();\n this.confirmCallback(this.selectedObjectsIds);\n };\n\n #editCallbackHandler = async (e: MouseEvent): Promise<void> => {\n e.stopPropagation();\n if (this.selectedObjectsIds[0]) {\n const result = await this.editCallback(this.selectedObjectsIds[0]);\n if (result) {\n this.#refreshUIWithNewConfiguration();\n }\n }\n };\n\n #hostKeyPressHandler = (e: KeyboardEvent) => {\n // TODO : revise why this is necessary\n // just prevent keypress propagation\n if (e.key === \"Enter\") {\n e.stopPropagation();\n }\n };\n\n #objectsSelectionChangedHandler = (\n event: CustomEvent<TabularGridSelectionChangedEvent>\n ) => {\n this.selectedObjectsIds = event.detail.rowsId;\n };\n\n #newVariableCallbackHandler = async () => {\n const response = await this.newVariableCallback();\n if (response) {\n this.#refreshUIWithNewConfiguration();\n }\n };\n #refreshUIWithNewConfiguration = (): void => {\n this.objects = [];\n const filters: FiltersData = {\n pattern: this.#filterPatternEl?.value,\n object: this.#filterObjectEl?.value?.id\n };\n this.loading = true;\n this.loadItemsCallback(filters).then((items: ItemData[]) => {\n if (items.length) {\n this.objects = this.#sortObjectsByName(items);\n this.#firstGridObjectId = this.objects[0].id;\n this.#loadItemsCallbackJustCalled = true;\n }\n this.selectedObjectsIds = [];\n this.loading = false;\n });\n };\n\n #renderFilter = (): Element[] => {\n return [\n <div class=\"header__field-group field-group\">\n <div class=\"field field-block pattern-field\">\n <label class=\"label\" htmlFor=\"filter-pattern\">\n {this.#componentLocale.filter.pattern}\n </label>\n <ch-edit\n autoFocus\n id=\"filter-pattern\"\n name=\"filter-pattern\"\n class=\"input pattern-input\"\n part=\"filter-pattern\"\n debounce={config.inputDebounce}\n onInput={this.#refreshUIWithNewConfiguration}\n ref={(el: HTMLChEditElement) =>\n (this.#filterPatternEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n </div>\n <gx-ide-entity-selector\n id=\"object-selector\"\n value={this.defaultModule}\n defaultValue={this.defaultModule}\n selectEntityCallback={this.selectObjectCallback}\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.#filterObjectEl = el as HTMLGxIdeEntitySelectorElement)\n }\n class=\"entity\"\n onValueChanged={this.#refreshUIWithNewConfiguration}\n ></gx-ide-entity-selector>\n </div>\n ];\n };\n\n #renderObjects = (): Element => {\n const gridIsEmpty = !this.objects.length;\n const displayLoader = this.loader && this.loading;\n if (!gridIsEmpty || displayLoader) {\n this.#animateEmptyState = true; // improve performance if is first render\n }\n return (\n <ch-tabular-grid\n class={{\n \"tabular-grid\": true,\n \"empty-result\": this.objects.length === 0,\n \"data\": true\n }}\n rowSelectionMode={this.selectionType}\n onKeyDown={this.#chGridKeyDownHandler}\n part=\"ch-grid-objects\"\n onSelectionChanged={\n this.objects.length ? this.#objectsSelectionChangedHandler : undefined\n }\n ref={(el: HTMLChTabularGridElement) =>\n (this.#chTabularGridObjectsEl = el as HTMLChTabularGridElement)\n }\n >\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.name}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.common}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.dataType}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.common}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.description}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.common}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n\n {!gridIsEmpty ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.objects.map((obj: ItemData) => (\n <ch-tabular-grid-row\n rowid={obj.id}\n onDblClick={this.#confirmCallbackHandler}\n class=\"tabular-grid-row\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-image\n src={\n obj.type === \"attribute\"\n ? \"objects/attribute\"\n : \"objects-parts/variables\"\n }\n class=\"icon-md\"\n ></ch-image>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.name}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.dataType}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.description}\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty>\n {displayLoader ? (\n <gx-ide-loader\n loaderTitle={this.#componentLocale.loader.title}\n show\n ></gx-ide-loader>\n ) : (\n <gx-ide-empty-state\n isAnimated={this.#animateEmptyState}\n stateIconSrc={FILTER_ICON}\n stateTitle={this.#componentLocale.emptyState.title}\n ></gx-ide-empty-state>\n )}\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n </ch-tabular-grid>\n );\n };\n\n #renderEditButtons = (): JSX.Element | null => {\n if (!this.editCallback && !this.newVariableCallback) {\n return null;\n }\n\n const newVariableButtonEnabled = this.newVariableCallback && !this.loading;\n const editButtonEnabled =\n this.editCallback && !this.loading && this.selectedObjectsIds.length;\n\n return (\n <div class=\"buttons-spacer\">\n {this.newVariableCallback ? (\n <button\n // New Variable Button\n class=\"button-secondary\"\n disabled={!newVariableButtonEnabled}\n part=\"button button-new\"\n type=\"button\"\n onClick={this.#newVariableCallbackHandler}\n >\n {this.#componentLocale.footer.btnNew}\n </button>\n ) : (\n []\n )}\n {this.editCallback ? (\n <button\n // Edit Button\n class=\"button-secondary\"\n disabled={!editButtonEnabled}\n part=\"button button-edit\"\n type=\"button\"\n onClick={editButtonEnabled && this.#editCallbackHandler}\n >\n {this.#componentLocale.footer.btnEdit}\n </button>\n ) : (\n []\n )}\n </div>\n );\n };\n\n #sortObjectsByName = (objects: ItemData[]): ItemData[] =>\n // TODO (make this a common helper function\n // and use it in other dialog grids that\n // require filter by name).\n objects.sort((a, b) => {\n const nameA = a.name.toLowerCase(),\n nameB = b.name.toLowerCase();\n if (nameA < nameB) {\n return -1;\n }\n if (nameA > nameB) {\n return 1;\n }\n return 0;\n });\n\n render() {\n const okButtonEnabled = !this.loading;\n const footerJustifySpaceBetween: boolean =\n !!this.newVariableCallback || !!this.editCallback;\n\n return (\n <Host onKeyPress={this.#hostKeyPressHandler} 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=\"section\">\n <header class=\"header control-header-with-border spacing-body-block-start spacing-body-inline\">\n {this.#renderFilter()}\n </header>\n {this.#renderObjects()}\n <footer\n class={{\n \"footer\": true,\n \"control-footer-with-border\": true,\n \"control-footer-space-between\": footerJustifySpaceBetween,\n \"spacing-body-inline\": true,\n \"spacing-body-block-end\": true\n }}\n >\n {this.#renderEditButtons()}\n <div class=\"buttons-spacer\">\n <button\n // Cancel Button\n class=\"button-secondary\"\n part=\"button button-cancel\"\n type=\"button\"\n onClick={this.cancelCallback}\n >\n {this.#componentLocale.footer.btnCancel}\n </button>\n <button\n // Confirm Button\n class=\"button-primary\"\n part=\"button button-ok\"\n disabled={!okButtonEnabled}\n type=\"button\"\n onClick={okButtonEnabled && this.#confirmCallbackHandler}\n >\n {this.#componentLocale.footer.btnConfirm}\n </button>\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n\nexport type NewVariableCallback = () => Promise<boolean> | undefined;\n\nexport type CancelCallback = () => Promise<void>;\n\nexport type SelectObjectCallback = () => Promise<EntityData | undefined>;\n\nexport type EditCallback = (id: string) => Promise<boolean> | undefined;\n\nexport type ConfirmCallback = (ids: string[]) => Promise<void>;\n\nexport type LoadItemsCallback = (filters: FiltersData) => Promise<ItemData[]>;\n\nexport type FiltersData = {\n pattern?: string;\n object?: string;\n};\n\nexport type ItemData = {\n type: ItemType;\n id: string;\n name: string;\n dataType: string;\n description: string;\n};\n\nexport type ItemType = \"variable\" | \"attribute\";\n"]}
1
+ {"version":3,"file":"data-selector.js","sourceRoot":"","sources":["../../../src/components/data-selector/data-selector.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iEAAiE;AACjE,OAAO,EACL,SAAS,EACT,IAAI,EACJ,CAAC,EACD,IAAI,EACJ,OAAO,EACP,KAAK,EACL,MAAM,EACN,YAAY,EAEb,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAkB,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/D,0BAA0B;AAC1B,MAAM,WAAW,GAAmB;IAClC,mBAAmB;IACnB,mBAAmB;IACnB,iBAAiB;IACjB,yBAAyB;IACzB,iBAAiB;IACjB,YAAY;IACZ,cAAc;IACd,eAAe;IACf,qBAAqB;CACtB,CAAC;AAEF,MAAM,WAAW,GAAG,WAAW,CAAC;IAC9B,QAAQ,EAAE,cAAc;IACxB,IAAI,EAAE,QAAQ;IACd,SAAS,EAAE,cAAc;CAC1B,CAAC,CAAC;AAQH,MAAM,OAAO,iBAAiB;;QAC5B,uDAA2B,CAAC,0DAA0D;QACtF,yDAAwC,KAAK,EAAC,CAAC,0DAA0D;QAEzG,qDAAsB;QACtB,+CAA8B,KAAK,EAAC;QACpC,0CAAgB,YAAY,CAAC,8CAA8C,CAAC,EAAC;QAC7E,uCAAuC;QACvC,qDAAqC;QACrC,oDAAiD;QACjD,mDAAuC;QACvC,4DAAkD;QA6GlD;;WAEG;QACH,uDAA6B,GAAG,EAAE;YAChC,IAAI,uBAAA,IAAI,sDAA6B,EAAE;gBACrC,uBAAA,IAAI,iDAAwB,CAAC,SAAS,CAAC,uBAAA,IAAI,4CAAmB,CAAC,CAAC;aACjE;YACD,uBAAA,IAAI,kDAAgC,KAAK,MAAA,CAAC;QAC5C,CAAC,EAAC;QAEF,kDAAwB,CAAC,CAAgB,EAAE,EAAE;YAC3C,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE;gBACrB,uBAAA,IAAI,iDAAwB,MAA5B,IAAI,EAAyB,CAAC,CAAC,CAAC;aACjC;QACH,CAAC,EAAC;QAEF,oDAA0B,CAAC,CAA6B,EAAQ,EAAE;YAChE,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAChD,CAAC,EAAC;QAEF,iDAAuB,KAAK,EAAE,CAAa,EAAiB,EAAE;YAC5D,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,IAAI,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE;gBAC9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnE,IAAI,MAAM,EAAE;oBACV,uBAAA,IAAI,wDAA+B,MAAnC,IAAI,CAAiC,CAAC;iBACvC;aACF;QACH,CAAC,EAAC;QAEF,iDAAuB,CAAC,CAAgB,EAAE,EAAE;YAC1C,sCAAsC;YACtC,oCAAoC;YACpC,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE;gBACrB,CAAC,CAAC,eAAe,EAAE,CAAC;aACrB;QACH,CAAC,EAAC;QAEF,4DAAkC,CAChC,KAAoD,EACpD,EAAE;YACF,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;QAChD,CAAC,EAAC;QAEF,wDAA8B,KAAK,IAAI,EAAE;YACvC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAClD,IAAI,QAAQ,EAAE;gBACZ,uBAAA,IAAI,wDAA+B,MAAnC,IAAI,CAAiC,CAAC;aACvC;QACH,CAAC,EAAC;QACF,2DAAiC,GAAS,EAAE;;YAC1C,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;YAClB,MAAM,OAAO,GAAgB;gBAC3B,OAAO,EAAE,MAAA,uBAAA,IAAI,0CAAiB,0CAAE,KAAK;gBACrC,MAAM,EAAE,MAAA,MAAA,uBAAA,IAAI,yCAAgB,0CAAE,KAAK,0CAAE,EAAE;aACxC,CAAC;YACF,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,KAAiB,EAAE,EAAE;gBACzD,IAAI,KAAK,CAAC,MAAM,EAAE;oBAChB,IAAI,CAAC,OAAO,GAAG,uBAAA,IAAI,4CAAmB,MAAvB,IAAI,EAAoB,KAAK,CAAC,CAAC;oBAC9C,uBAAA,IAAI,wCAAsB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,MAAA,CAAC;oBAC7C,uBAAA,IAAI,kDAAgC,IAAI,MAAA,CAAC;iBAC1C;gBACD,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;gBAC7B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,CAAC,CAAC,CAAC;QACL,CAAC,EAAC;QAEF,0CAAgB,GAAc,EAAE;YAC9B,OAAO;gBACL,WAAK,KAAK,EAAC,iCAAiC;oBAC1C,WAAK,KAAK,EAAC,iCAAiC;wBAC1C,aAAO,KAAK,EAAC,OAAO,EAAC,OAAO,EAAC,gBAAgB,IAC1C,uBAAA,IAAI,0CAAiB,CAAC,MAAM,CAAC,OAAO,CAC/B;wBACR,eACE,SAAS,QACT,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,gBAAgB,EACrB,KAAK,EAAC,qBAAqB,EAC3B,IAAI,EAAC,gBAAgB,EACrB,QAAQ,EAAE,MAAM,CAAC,aAAa,EAC9B,OAAO,EAAE,uBAAA,IAAI,wDAA+B,EAC5C,GAAG,EAAE,CAAC,EAAqB,EAAE,EAAE,CAC7B,CAAC,uBAAA,IAAI,sCAAoB,EAAuB,MAAA,CAAC,GAE1C,CACP;oBACN,8BACE,EAAE,EAAC,iBAAiB,EACpB,KAAK,EAAE,IAAI,CAAC,aAAa,EACzB,YAAY,EAAE,IAAI,CAAC,aAAa,EAChC,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAC/C,GAAG,EAAE,CAAC,EAAkC,EAAE,EAAE,CAC1C,CAAC,uBAAA,IAAI,qCAAmB,EAAoC,MAAA,CAAC,EAE/D,KAAK,EAAC,QAAQ,EACd,cAAc,EAAE,uBAAA,IAAI,wDAA+B,GAC3B,CACtB;aACP,CAAC;QACJ,CAAC,EAAC;QAEF,2CAAiB,GAAY,EAAE;YAC7B,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YACzC,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC;YAClD,IAAI,CAAC,WAAW,IAAI,aAAa,EAAE;gBACjC,uBAAA,IAAI,wCAAsB,IAAI,MAAA,CAAC,CAAC,yCAAyC;aAC1E;YACD,OAAO,CACL,uBACE,KAAK,EAAE;oBACL,cAAc,EAAE,IAAI;oBACpB,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;oBACzC,MAAM,EAAE,IAAI;iBACb,EACD,gBAAgB,EAAE,IAAI,CAAC,aAAa,EACpC,SAAS,EAAE,uBAAA,IAAI,+CAAsB,EACrC,IAAI,EAAC,iBAAiB,EACtB,kBAAkB,EAChB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,uBAAA,IAAI,yDAAgC,CAAC,CAAC,CAAC,SAAS,EAExE,GAAG,EAAE,CAAC,EAA4B,EAAE,EAAE,CACpC,CAAC,uBAAA,IAAI,6CAA2B,EAA8B,MAAA,CAAC;gBAGjE,iCAA2B,KAAK,EAAC,yBAAyB;oBACxD,sDACuB,MAAM,EAC3B,WAAW,EAAE,KAAK,EAClB,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAC3C,KAAK,EAAC,qBAAqB,GACH;oBAC1B,6CACe,uBAAA,IAAI,0CAAiB,CAAC,SAAS,CAAC,IAAI,0BAC5B,MAAM,EAC3B,WAAW,EAAE,KAAK,EAClB,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,EACvC,KAAK,EAAC,qBAAqB,GACH;oBAC1B,6CACe,uBAAA,IAAI,0CAAiB,CAAC,SAAS,CAAC,QAAQ,0BAChC,MAAM,EAC3B,WAAW,EAAE,KAAK,EAClB,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,EACvC,KAAK,EAAC,qBAAqB,GACH;oBAC1B,6CACe,uBAAA,IAAI,0CAAiB,CAAC,SAAS,CAAC,WAAW,0BACnC,MAAM,EAC3B,WAAW,EAAE,KAAK,EAClB,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,EACvC,KAAK,EAAC,qBAAqB,GACH,CACA;gBAE3B,CAAC,WAAW,CAAC,CAAC,CAAC,CACd,8BAAwB,KAAK,EAAC,qBAAqB,IAChD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAa,EAAE,EAAE,CAAC,CACnC,2BACE,KAAK,EAAE,GAAG,CAAC,EAAE,EACb,UAAU,EAAE,uBAAA,IAAI,iDAAwB,EACxC,KAAK,EAAC,kBAAkB;oBAExB,4BAAsB,KAAK,EAAC,mBAAmB;wBAC7C,gBACE,GAAG,EACD,GAAG,CAAC,IAAI,KAAK,WAAW;gCACtB,CAAC,CAAC,mBAAmB;gCACrB,CAAC,CAAC,yBAAyB,EAE/B,KAAK,EAAC,SAAS,GACL,CACS;oBACvB,4BAAsB,KAAK,EAAC,mBAAmB,IAC5C,GAAG,CAAC,IAAI,CACY;oBACvB,4BAAsB,KAAK,EAAC,mBAAmB,IAC5C,GAAG,CAAC,QAAQ,CACQ;oBACvB,4BAAsB,KAAK,EAAC,mBAAmB,IAC5C,GAAG,CAAC,WAAW,CACK,CACH,CACvB,CAAC,CACqB,CAC1B,CAAC,CAAC,CAAC,CACF,8BAAwB,KAAK,EAAC,qBAAqB;oBACjD,wCACG,aAAa,CAAC,CAAC,CAAC,CACf,qBACE,WAAW,EAAE,uBAAA,IAAI,0CAAiB,CAAC,MAAM,CAAC,KAAK,EAC/C,IAAI,SACW,CAClB,CAAC,CAAC,CAAC,CACF,0BACE,UAAU,EAAE,uBAAA,IAAI,4CAAmB,EACnC,YAAY,EAAE,WAAW,EACzB,UAAU,EAAE,uBAAA,IAAI,0CAAiB,CAAC,UAAU,CAAC,KAAK,GAC9B,CACvB,CAC4B,CACR,CAC1B,CACe,CACnB,CAAC;QACJ,CAAC,EAAC;QAEF,+CAAqB,GAAuB,EAAE;YAC5C,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;gBACnD,OAAO,IAAI,CAAC;aACb;YAED,MAAM,wBAAwB,GAAG,IAAI,CAAC,mBAAmB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YAC3E,MAAM,iBAAiB,GACrB,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;YAEvE,OAAO,CACL,WAAK,KAAK,EAAC,gBAAgB;gBACxB,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAC1B;oBACE,sBAAsB;oBACtB,KAAK,EAAC,kBAAkB,EACxB,QAAQ,EAAE,CAAC,wBAAwB,EACnC,IAAI,EAAC,mBAAmB,EACxB,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,uBAAA,IAAI,qDAA4B,IAExC,uBAAA,IAAI,0CAAiB,CAAC,MAAM,CAAC,MAAM,CAC7B,CACV,CAAC,CAAC,CAAC,CACF,EAAE,CACH;gBACA,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CACnB;oBACE,cAAc;oBACd,KAAK,EAAC,kBAAkB,EACxB,QAAQ,EAAE,CAAC,iBAAiB,EAC5B,IAAI,EAAC,oBAAoB,EACzB,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,iBAAiB,IAAI,uBAAA,IAAI,8CAAqB,IAEtD,uBAAA,IAAI,0CAAiB,CAAC,MAAM,CAAC,OAAO,CAC9B,CACV,CAAC,CAAC,CAAC,CACF,EAAE,CACH,CACG,CACP,CAAC;QACJ,CAAC,EAAC;QAEF,+CAAqB,CAAC,OAAmB,EAAc,EAAE;QACvD,2CAA2C;QAC3C,wCAAwC;QACxC,2BAA2B;QAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACpB,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,EAChC,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAC/B,IAAI,KAAK,GAAG,KAAK,EAAE;gBACjB,OAAO,CAAC,CAAC,CAAC;aACX;YACD,IAAI,KAAK,GAAG,KAAK,EAAE;gBACjB,OAAO,CAAC,CAAC;aACV;YACD,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,EAAC;uBAhXuB,IAAI;uBAKD,EAAE;kCAKO,EAAE;;;;4BAoBV,KAAK;;;sBAgBX,KAAK;;;6BAiByB,UAAU;;IAElE,KAAK,CAAC,iBAAiB;QACrB,uBAAA,IAAI,sCAAoB,MAAM,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,MAAA,CAAC;IACpE,CAAC;IAED,iBAAiB;QACf,uBAAA,IAAI,wDAA+B,MAAnC,IAAI,CAAiC,CAAC;IACxC,CAAC;IAED,gBAAgB;QACd,uBAAA,IAAI,0CAAiB,CAAC,KAAK,EAAE,CAAC;IAChC,CAAC;IAED,kBAAkB;QAChB,uBAAA,IAAI,oDAA2B,MAA/B,IAAI,CAA6B,CAAC;IACpC,CAAC;IAED;;OAEG;IAEH,KAAK,CAAC,gBAAgB,CAAC,gBAAyB;QAC9C,IAAI,gBAAgB,EAAE;YACpB,uBAAA,IAAI,wCAAe,CAAC,OAAO,GAAG,IAAI,CAAC;SACpC;aAAM;YACL,uBAAA,IAAI,wCAAe,CAAC,OAAO,GAAG,KAAK,CAAC;SACrC;IACH,CAAC;IAED;;OAEG;IAEH,KAAK,CAAC,QAAQ;QACZ,MAAM,OAAO,GAAG,IAAI,CAAC;QACrB,OAAO,OAAO,CAAC;IACjB,CAAC;IA8QD,MAAM;QACJ,MAAM,eAAe,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;QACtC,MAAM,yBAAyB,GAC7B,CAAC,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;QAEpD,OAAO,CACL,EAAC,IAAI,IAAC,UAAU,EAAE,uBAAA,IAAI,8CAAqB,EAAE,KAAK,EAAC,QAAQ;YACzD,gBAAU,KAAK,EAAE,WAAW,GAAa;YACzC,oBACE,GAAG,EAAE,uBAAA,IAAI,uCAAc,EACvB,GAAG,EAAE,CAAC,EAA0B,EAAE,EAAE,CAClC,CAAC,uBAAA,IAAI,oCAAkB,EAA4B,MAAA,CAAC,GAExC;YAEhB,eAAS,KAAK,EAAC,SAAS;gBACtB,cAAQ,KAAK,EAAC,gFAAgF,IAC3F,uBAAA,IAAI,uCAAc,MAAlB,IAAI,CAAgB,CACd;gBACR,uBAAA,IAAI,wCAAe,MAAnB,IAAI,CAAiB;gBACtB,cACE,KAAK,EAAE;wBACL,QAAQ,EAAE,IAAI;wBACd,4BAA4B,EAAE,IAAI;wBAClC,8BAA8B,EAAE,yBAAyB;wBACzD,qBAAqB,EAAE,IAAI;wBAC3B,wBAAwB,EAAE,IAAI;qBAC/B;oBAEA,uBAAA,IAAI,4CAAmB,MAAvB,IAAI,CAAqB;oBAC1B,WAAK,KAAK,EAAC,gBAAgB;wBACzB;4BACE,gBAAgB;4BAChB,KAAK,EAAC,kBAAkB,EACxB,IAAI,EAAC,sBAAsB,EAC3B,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,IAAI,CAAC,cAAc,IAE3B,uBAAA,IAAI,0CAAiB,CAAC,MAAM,CAAC,SAAS,CAChC;wBACT;4BACE,iBAAiB;4BACjB,KAAK,EAAC,gBAAgB,EACtB,IAAI,EAAC,kBAAkB,EACvB,QAAQ,EAAE,CAAC,eAAe,EAC1B,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,eAAe,IAAI,uBAAA,IAAI,iDAAwB,IAEvD,uBAAA,IAAI,0CAAiB,CAAC,MAAM,CAAC,UAAU,CACjC,CACL,CACC,CACD,CACL,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["/* eslint-disable @stencil-community/own-props-must-be-private */\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n State,\n Method,\n getAssetPath,\n JSX\n} from \"@stencil/core\";\n\nimport { Locale } from \"../../common/locale\";\n\nimport { config } from \"../../common/config\";\nimport { EntityData } from \"../../common/types\";\nimport { MercuryBundles, getIconPath } from \"@genexus/mercury\";\nimport { TabularGridSelectionChangedEvent } from \"@genexus/chameleon-controls-library\";\n\n// Best performance bundle\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/edit\",\n \"components/tabular-grid\",\n \"components/icon\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/spacing\",\n \"chameleon/scrollbar\"\n];\n\nconst FILTER_ICON = getIconPath({\n category: \"window-tools\",\n name: \"filter\",\n colorType: \"on-elevation\"\n});\n\n@Component({\n tag: \"gx-ide-data-selector\",\n styleUrl: \"data-selector.scss\",\n shadow: { delegatesFocus: true },\n assetsDirs: [\"gx-ide-assets/data-selector\"]\n})\nexport class GxIdeDataSelector {\n #firstGridObjectId: string; // used to select the first item after \"loadItemsCallback\"\n #loadItemsCallbackJustCalled: boolean = false; // used to select the first item after \"loadItemsCallback\"\n\n #componentLocale: any;\n #animateEmptyState: boolean = false;\n #shortcutsSrc = getAssetPath(`./gx-ide-assets/data-selector/shortcuts.json`);\n /* References needed to collect data */\n #filterPatternEl!: HTMLChEditElement;\n #filterObjectEl!: HTMLGxIdeEntitySelectorElement;\n #chShortcutsEl: HTMLChShortcutsElement;\n #chTabularGridObjectsEl: HTMLChTabularGridElement;\n\n @Element() el: HTMLGxIdeDataSelectorElement;\n\n /**\n * True if loadItemsCallback has been called and has not been resolved yet.\n */\n @State() loading: boolean = true;\n\n /**\n * The objects rendered in the table\n */\n @State() objects: ItemData[] = [];\n\n /**\n * The selected objects in the table of objects\n */\n @State() selectedObjectsIds: string[] = [];\n\n /**\n * Callback invoked when the user wishes to cancel the selection of objects.\n */\n @Prop() readonly cancelCallback!: CancelCallback;\n\n /**\n * Callback invoked when the user presses the 'OK' button\n */\n @Prop() readonly confirmCallback!: ConfirmCallback;\n\n /**\n * The default value for the module/folder filter\n */\n @Prop() readonly defaultModule: 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 presses the edit button. Receives the first\n * selected element id as a parameter.\n */\n @Prop() readonly editCallback: EditCallback;\n\n /**\n * Callback invoked when the component needs to reload the list of attributes.\n */\n @Prop() readonly loadItemsCallback!: LoadItemsCallback;\n\n /**\n * If true, it will display a loader when needed.\n */\n @Prop() readonly loader = false;\n\n /**\n * Callback invoked when the user presses the 'New' button.\n */\n @Prop() readonly newVariableCallback: NewVariableCallback;\n\n /**\n * Callback invoked when the action is executed in the Object filter. It returns\n * the information of the selected object (id and name) or 'undefined' if it was\n * canceled.\n */\n @Prop() readonly selectObjectCallback: SelectObjectCallback;\n\n /**\n * Single if multiple object selection is not allowed. Default is multiple\n */\n @Prop() readonly selectionType: \"single\" | \"multiple\" = \"multiple\";\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n connectedCallback() {\n this.#refreshUIWithNewConfiguration();\n }\n\n componentDidLoad() {\n this.#filterPatternEl.focus();\n }\n\n componentDidRender() {\n this.#evaluateFirstRowSelection();\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 * Validate necessary data input\n */\n @Method()\n async validate(): Promise<boolean> {\n const isValid = true;\n return isValid;\n }\n\n /**\n * After items have been loaded and rendered, the first row should be selected.\n */\n #evaluateFirstRowSelection = () => {\n if (this.#loadItemsCallbackJustCalled) {\n this.#chTabularGridObjectsEl.selectRow(this.#firstGridObjectId);\n }\n this.#loadItemsCallbackJustCalled = false;\n };\n\n #chGridKeyDownHandler = (e: KeyboardEvent) => {\n if (e.key === \"Enter\") {\n this.#confirmCallbackHandler(e);\n }\n };\n\n #confirmCallbackHandler = (e: MouseEvent | KeyboardEvent): void => {\n e.stopPropagation();\n this.confirmCallback(this.selectedObjectsIds);\n };\n\n #editCallbackHandler = async (e: MouseEvent): Promise<void> => {\n e.stopPropagation();\n if (this.selectedObjectsIds[0]) {\n const result = await this.editCallback(this.selectedObjectsIds[0]);\n if (result) {\n this.#refreshUIWithNewConfiguration();\n }\n }\n };\n\n #hostKeyPressHandler = (e: KeyboardEvent) => {\n // TODO : revise why this is necessary\n // just prevent keypress propagation\n if (e.key === \"Enter\") {\n e.stopPropagation();\n }\n };\n\n #objectsSelectionChangedHandler = (\n event: CustomEvent<TabularGridSelectionChangedEvent>\n ) => {\n this.selectedObjectsIds = event.detail.rowsId;\n };\n\n #newVariableCallbackHandler = async () => {\n const response = await this.newVariableCallback();\n if (response) {\n this.#refreshUIWithNewConfiguration();\n }\n };\n #refreshUIWithNewConfiguration = (): void => {\n this.objects = [];\n const filters: FiltersData = {\n pattern: this.#filterPatternEl?.value,\n object: this.#filterObjectEl?.value?.id\n };\n this.loading = true;\n this.loadItemsCallback(filters).then((items: ItemData[]) => {\n if (items.length) {\n this.objects = this.#sortObjectsByName(items);\n this.#firstGridObjectId = this.objects[0].id;\n this.#loadItemsCallbackJustCalled = true;\n }\n this.selectedObjectsIds = [];\n this.loading = false;\n });\n };\n\n #renderFilter = (): Element[] => {\n return [\n <div class=\"header__field-group field-group\">\n <div class=\"field field-block pattern-field\">\n <label class=\"label\" htmlFor=\"filter-pattern\">\n {this.#componentLocale.filter.pattern}\n </label>\n <ch-edit\n autoFocus\n id=\"filter-pattern\"\n name=\"filter-pattern\"\n class=\"input pattern-input\"\n part=\"filter-pattern\"\n debounce={config.inputDebounce}\n onInput={this.#refreshUIWithNewConfiguration}\n ref={(el: HTMLChEditElement) =>\n (this.#filterPatternEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n </div>\n <gx-ide-entity-selector\n id=\"object-selector\"\n value={this.defaultModule}\n defaultValue={this.defaultModule}\n selectEntityCallback={this.selectObjectCallback}\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.#filterObjectEl = el as HTMLGxIdeEntitySelectorElement)\n }\n class=\"entity\"\n onValueChanged={this.#refreshUIWithNewConfiguration}\n ></gx-ide-entity-selector>\n </div>\n ];\n };\n\n #renderObjects = (): Element => {\n const gridIsEmpty = !this.objects.length;\n const displayLoader = this.loader && this.loading;\n if (!gridIsEmpty || displayLoader) {\n this.#animateEmptyState = true; // improve performance if is first render\n }\n return (\n <ch-tabular-grid\n class={{\n \"tabular-grid\": true,\n \"empty-result\": this.objects.length === 0,\n \"data\": true\n }}\n rowSelectionMode={this.selectionType}\n onKeyDown={this.#chGridKeyDownHandler}\n part=\"ch-grid-objects\"\n onSelectionChanged={\n this.objects.length ? this.#objectsSelectionChangedHandler : undefined\n }\n ref={(el: HTMLChTabularGridElement) =>\n (this.#chTabularGridObjectsEl = el as HTMLChTabularGridElement)\n }\n >\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.name}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.common}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.dataType}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.common}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n column-name={this.#componentLocale.tableHead.description}\n column-name-position=\"text\"\n settingable={false}\n size={config.tabularGrid.colSize.common}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n\n {!gridIsEmpty ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.objects.map((obj: ItemData) => (\n <ch-tabular-grid-row\n rowid={obj.id}\n onDblClick={this.#confirmCallbackHandler}\n class=\"tabular-grid-row\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-image\n src={\n obj.type === \"attribute\"\n ? \"objects/attribute\"\n : \"objects-parts/variables\"\n }\n class=\"icon-md\"\n ></ch-image>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.name}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.dataType}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.description}\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty>\n {displayLoader ? (\n <gx-ide-loader\n loaderTitle={this.#componentLocale.loader.title}\n show\n ></gx-ide-loader>\n ) : (\n <gx-ide-empty-state\n isAnimated={this.#animateEmptyState}\n stateIconSrc={FILTER_ICON}\n stateTitle={this.#componentLocale.emptyState.title}\n ></gx-ide-empty-state>\n )}\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n </ch-tabular-grid>\n );\n };\n\n #renderEditButtons = (): JSX.Element | null => {\n if (!this.editCallback && !this.newVariableCallback) {\n return null;\n }\n\n const newVariableButtonEnabled = this.newVariableCallback && !this.loading;\n const editButtonEnabled =\n this.editCallback && !this.loading && this.selectedObjectsIds.length;\n\n return (\n <div class=\"buttons-spacer\">\n {this.newVariableCallback ? (\n <button\n // New Variable Button\n class=\"button-secondary\"\n disabled={!newVariableButtonEnabled}\n part=\"button button-new\"\n type=\"button\"\n onClick={this.#newVariableCallbackHandler}\n >\n {this.#componentLocale.footer.btnNew}\n </button>\n ) : (\n []\n )}\n {this.editCallback ? (\n <button\n // Edit Button\n class=\"button-secondary\"\n disabled={!editButtonEnabled}\n part=\"button button-edit\"\n type=\"button\"\n onClick={editButtonEnabled && this.#editCallbackHandler}\n >\n {this.#componentLocale.footer.btnEdit}\n </button>\n ) : (\n []\n )}\n </div>\n );\n };\n\n #sortObjectsByName = (objects: ItemData[]): ItemData[] =>\n // TODO (make this a common helper function\n // and use it in other dialog grids that\n // require filter by name).\n objects.sort((a, b) => {\n const nameA = a.name.toLowerCase(),\n nameB = b.name.toLowerCase();\n if (nameA < nameB) {\n return -1;\n }\n if (nameA > nameB) {\n return 1;\n }\n return 0;\n });\n\n render() {\n const okButtonEnabled = !this.loading;\n const footerJustifySpaceBetween: boolean =\n !!this.newVariableCallback || !!this.editCallback;\n\n return (\n <Host onKeyPress={this.#hostKeyPressHandler} 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=\"section\">\n <header class=\"header control-header-with-border spacing-body-block-start spacing-body-inline\">\n {this.#renderFilter()}\n </header>\n {this.#renderObjects()}\n <footer\n class={{\n \"footer\": true,\n \"control-footer-with-border\": true,\n \"control-footer-space-between\": footerJustifySpaceBetween,\n \"spacing-body-inline\": true,\n \"spacing-body-block-end\": true\n }}\n >\n {this.#renderEditButtons()}\n <div class=\"buttons-spacer\">\n <button\n // Cancel Button\n class=\"button-secondary\"\n part=\"button button-cancel\"\n type=\"button\"\n onClick={this.cancelCallback}\n >\n {this.#componentLocale.footer.btnCancel}\n </button>\n <button\n // Confirm Button\n class=\"button-primary\"\n part=\"button button-ok\"\n disabled={!okButtonEnabled}\n type=\"button\"\n onClick={okButtonEnabled && this.#confirmCallbackHandler}\n >\n {this.#componentLocale.footer.btnConfirm}\n </button>\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n\nexport type NewVariableCallback = () => Promise<boolean> | undefined;\n\nexport type CancelCallback = () => Promise<void>;\n\nexport type SelectObjectCallback = () => Promise<EntityData | undefined>;\n\nexport type EditCallback = (id: string) => Promise<boolean> | undefined;\n\nexport type ConfirmCallback = (ids: string[]) => Promise<void>;\n\nexport type LoadItemsCallback = (filters: FiltersData) => Promise<ItemData[]>;\n\nexport type FiltersData = {\n pattern?: string;\n object?: string;\n};\n\nexport type ItemData = {\n type: ItemType;\n id: string;\n name: string;\n dataType: string;\n description: string;\n};\n\nexport type ItemType = \"variable\" | \"attribute\";\n"]}
@@ -47,7 +47,8 @@ export class GxIdeKbManagerImport {
47
47
  _GxIdeKbManagerImport_showAll.set(this, false);
48
48
  _GxIdeKbManagerImport_categoriesActionListItemGroupMap.set(this, new Map());
49
49
  _GxIdeKbManagerImport_handleSelectionChange.set(this, (event) => {
50
- const eventType = event.detail[0]?.item.type;
50
+ var _a;
51
+ const eventType = (_a = event.detail[0]) === null || _a === void 0 ? void 0 : _a.item.type;
51
52
  if (eventType === "actionable") {
52
53
  const name = event.detail[0].item.caption;
53
54
  const itemAdditionalBase = event.detail[0].item.additionalInformation["stretch-start"].center[0];
@@ -76,7 +77,7 @@ export class GxIdeKbManagerImport {
76
77
  else if (type === "group" &&
77
78
  __classPrivateFieldGet(this, _GxIdeKbManagerImport_categoriesActionListItemGroupMap, "f").has(name)) {
78
79
  const group = __classPrivateFieldGet(this, _GxIdeKbManagerImport_categoriesActionListItemGroupMap, "f").get(name);
79
- const groupUpdated = { ...group, expanded: group.expanded };
80
+ const groupUpdated = Object.assign(Object.assign({}, group), { expanded: group.expanded });
80
81
  __classPrivateFieldGet(this, _GxIdeKbManagerImport_categoriesActionListItemGroupMap, "f").set(name, groupUpdated);
81
82
  }
82
83
  });
@@ -145,7 +146,7 @@ export class GxIdeKbManagerImport {
145
146
  this.recentlyUsed = [];
146
147
  }
147
148
  categoriesChanged(newCategories) {
148
- if (!newCategories?.length) {
149
+ if (!(newCategories === null || newCategories === void 0 ? void 0 : newCategories.length)) {
149
150
  return;
150
151
  }
151
152
  __classPrivateFieldGet(this, _GxIdeKbManagerImport_categoriesActionListItemGroupMap, "f").clear();