@genexus/genexus-ide-ui 1.1.2 → 1.1.4

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 (293) hide show
  1. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  2. package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js +1 -1
  3. package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js.map +1 -1
  4. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +180 -166
  5. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js.map +1 -1
  6. package/dist/cjs/gx-ide-bpm-assign-roles.cjs.entry.js +1 -1
  7. package/dist/cjs/gx-ide-bpm-assign-roles.cjs.entry.js.map +1 -1
  8. package/dist/cjs/gx-ide-bpm-export-xpdl.cjs.entry.js +1 -1
  9. package/dist/cjs/gx-ide-bpm-export-xpdl.cjs.entry.js.map +1 -1
  10. package/dist/cjs/gx-ide-bpm-import-files.cjs.entry.js +1 -1
  11. package/dist/cjs/gx-ide-bpm-import-files.cjs.entry.js.map +1 -1
  12. package/dist/cjs/gx-ide-bpm-import-gxpm.cjs.entry.js +1 -1
  13. package/dist/cjs/gx-ide-bpm-import-gxpm.cjs.entry.js.map +1 -1
  14. package/dist/cjs/gx-ide-bpm-objects-selector.cjs.entry.js +1 -1
  15. package/dist/cjs/gx-ide-bpm-objects-selector.cjs.entry.js.map +1 -1
  16. package/dist/cjs/gx-ide-bpm-timer-duration.cjs.entry.js +1 -1
  17. package/dist/cjs/gx-ide-bpm-timer-duration.cjs.entry.js.map +1 -1
  18. package/dist/cjs/gx-ide-card.cjs.entry.js +1 -1
  19. package/dist/cjs/gx-ide-card.cjs.entry.js.map +1 -1
  20. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +1 -1
  21. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js.map +1 -1
  22. package/dist/cjs/gx-ide-deployment-tool.cjs.entry.js +1 -1
  23. package/dist/cjs/gx-ide-deployment-tool.cjs.entry.js.map +1 -1
  24. package/dist/cjs/gx-ide-edit-module-server.cjs.entry.js +1 -1
  25. package/dist/cjs/gx-ide-edit-module-server.cjs.entry.js.map +1 -1
  26. package/dist/cjs/gx-ide-empty-state.cjs.entry.js +1 -1
  27. package/dist/cjs/gx-ide-empty-state.cjs.entry.js.map +1 -1
  28. package/dist/cjs/gx-ide-file-item.cjs.entry.js +110 -0
  29. package/dist/cjs/gx-ide-file-item.cjs.entry.js.map +1 -0
  30. package/dist/cjs/gx-ide-file-uploader.cjs.entry.js +399 -0
  31. package/dist/cjs/gx-ide-file-uploader.cjs.entry.js.map +1 -0
  32. package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js +1 -1
  33. package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js.map +1 -1
  34. package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js +1 -1
  35. package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js.map +1 -1
  36. package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js +1 -1
  37. package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js.map +1 -1
  38. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js +1 -1
  39. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js.map +1 -1
  40. package/dist/cjs/gx-ide-references.cjs.entry.js +1 -1
  41. package/dist/cjs/gx-ide-references.cjs.entry.js.map +1 -1
  42. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +1 -1
  43. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
  44. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +1 -1
  45. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js.map +1 -1
  46. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +1 -1
  47. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js.map +1 -1
  48. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +1 -1
  49. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js.map +1 -1
  50. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +1 -1
  51. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js.map +1 -1
  52. package/dist/cjs/gx-ide-template.cjs.entry.js +1 -1
  53. package/dist/cjs/gx-ide-template.cjs.entry.js.map +1 -1
  54. package/dist/cjs/gx-ide-wf-settings.cjs.entry.js +1 -1
  55. package/dist/cjs/gx-ide-wf-settings.cjs.entry.js.map +1 -1
  56. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +1 -1
  57. package/dist/cjs/gx-ide-ww-images.cjs.entry.js.map +1 -1
  58. package/dist/cjs/loader.cjs.js +1 -1
  59. package/dist/collection/collection-manifest.json +2 -0
  60. package/dist/collection/components/_helpers/card/card.css +9 -0
  61. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.css +9 -0
  62. package/dist/collection/components/_helpers/list-selector/list-selector.css +9 -0
  63. package/dist/collection/components/_starting-template/template.css +9 -0
  64. package/dist/collection/components/ai-assistant/ai-assistant.css +9 -0
  65. package/dist/collection/components/bpm/application-declaration/bpm-app-declaration.css +36 -27
  66. package/dist/collection/components/bpm/application-declaration/bpm-app-declaration.js +217 -181
  67. package/dist/collection/components/bpm/application-declaration/bpm-app-declaration.js.map +1 -1
  68. package/dist/collection/components/bpm/application-declaration/gx-ide-assets/bpm-app-declaration/langs/bpm-app-declaration.lang.en.json +14 -2
  69. package/dist/collection/components/bpm/application-declaration/gx-ide-assets/bpm-app-declaration/langs/bpm-app-declaration.lang.ja.json +15 -3
  70. package/dist/collection/components/bpm/application-declaration/gx-ide-assets/bpm-app-declaration/langs/bpm-app-declaration.lang.zh.json +14 -2
  71. package/dist/collection/components/bpm/assign-roles/bpm-assign-roles.css +9 -0
  72. package/dist/collection/components/bpm/export-xpdl/bpm-export-xpdl.css +9 -0
  73. package/dist/collection/components/bpm/import-files/bpm-import-files.css +9 -0
  74. package/dist/collection/components/bpm/import-gxpm/bpm-import-gxpm.css +9 -0
  75. package/dist/collection/components/bpm/objects-selector/bpm-objects-selector.css +9 -0
  76. package/dist/collection/components/bpm/timer-duration/bpm-timer-duration.css +9 -0
  77. package/dist/collection/components/dashboard-home/dashboard-home.css +9 -0
  78. package/dist/collection/components/deployment-tool/deployment-tool.css +9 -0
  79. package/dist/collection/components/file-uploader/file-item/file-item.css +97 -0
  80. package/dist/collection/components/file-uploader/file-item/file-item.js +246 -0
  81. package/dist/collection/components/file-uploader/file-item/file-item.js.map +1 -0
  82. package/dist/collection/components/file-uploader/file-uploader.css +687 -0
  83. package/dist/collection/components/file-uploader/file-uploader.js +750 -0
  84. package/dist/collection/components/file-uploader/file-uploader.js.map +1 -0
  85. package/dist/collection/components/file-uploader/gx-ide-assets/file-uploader/langs/file-uploader.lang.en.json +36 -0
  86. package/dist/collection/components/file-uploader/gx-ide-assets/file-uploader/langs/file-uploader.lang.ja.json +36 -0
  87. package/dist/collection/components/file-uploader/gx-ide-assets/file-uploader/langs/file-uploader.lang.zh.json +36 -0
  88. package/dist/collection/components/file-uploader/types.js +2 -0
  89. package/dist/collection/components/file-uploader/types.js.map +1 -0
  90. package/dist/collection/components/gam-installation-settings/gam-installation-settings.css +9 -0
  91. package/dist/collection/components/modules/edit-module-server/edit-module-server.css +9 -0
  92. package/dist/collection/components/modules/manage-module-references/manage-module-references.css +9 -0
  93. package/dist/collection/components/modules/manage-module-references-v2/manage-module-references.css +9 -0
  94. package/dist/collection/components/references/references.css +9 -0
  95. package/dist/collection/components/team-dev/commit/commit.css +9 -0
  96. package/dist/collection/components/team-dev/select-recent-comment/select-recent-comment.css +9 -0
  97. package/dist/collection/components/team-dev/update/update.css +9 -0
  98. package/dist/collection/components/team-dev/update-partial-selection/update-partial-selection.css +9 -0
  99. package/dist/collection/components/team-dev/update-to-revision/update-to-revision.css +9 -0
  100. package/dist/collection/components/wf-settings/wf-settings.css +9 -0
  101. package/dist/collection/components/ww-images/ww-images.css +9 -0
  102. package/dist/collection/testing/locale.e2e.js +4 -1
  103. package/dist/collection/testing/locale.e2e.js.map +1 -1
  104. package/dist/components/bpm-objects-selector.js +1 -1
  105. package/dist/components/bpm-objects-selector.js.map +1 -1
  106. package/dist/components/file-item.js +130 -0
  107. package/dist/components/file-item.js.map +1 -0
  108. package/dist/components/gx-ide-ai-assistant.js +1 -1
  109. package/dist/components/gx-ide-ai-assistant.js.map +1 -1
  110. package/dist/components/gx-ide-bpm-app-declaration.js +189 -184
  111. package/dist/components/gx-ide-bpm-app-declaration.js.map +1 -1
  112. package/dist/components/gx-ide-bpm-assign-roles.js +1 -1
  113. package/dist/components/gx-ide-bpm-assign-roles.js.map +1 -1
  114. package/dist/components/gx-ide-bpm-export-xpdl.js +1 -1
  115. package/dist/components/gx-ide-bpm-export-xpdl.js.map +1 -1
  116. package/dist/components/gx-ide-bpm-import-files.js +1 -1
  117. package/dist/components/gx-ide-bpm-import-files.js.map +1 -1
  118. package/dist/components/gx-ide-bpm-import-gxpm.js +1 -1
  119. package/dist/components/gx-ide-bpm-import-gxpm.js.map +1 -1
  120. package/dist/components/gx-ide-bpm-timer-duration.js +1 -1
  121. package/dist/components/gx-ide-bpm-timer-duration.js.map +1 -1
  122. package/dist/components/gx-ide-card.js +1 -1
  123. package/dist/components/gx-ide-card.js.map +1 -1
  124. package/dist/components/gx-ide-dashboard-home.js +1 -1
  125. package/dist/components/gx-ide-dashboard-home.js.map +1 -1
  126. package/dist/components/gx-ide-deployment-tool.js +1 -1
  127. package/dist/components/gx-ide-deployment-tool.js.map +1 -1
  128. package/dist/components/gx-ide-edit-module-server.js +1 -1
  129. package/dist/components/gx-ide-edit-module-server.js.map +1 -1
  130. package/dist/components/gx-ide-empty-state2.js +1 -1
  131. package/dist/components/gx-ide-empty-state2.js.map +1 -1
  132. package/dist/components/gx-ide-file-item.d.ts +11 -0
  133. package/dist/components/gx-ide-file-item.js +8 -0
  134. package/dist/components/gx-ide-file-item.js.map +1 -0
  135. package/dist/components/gx-ide-file-uploader.d.ts +11 -0
  136. package/dist/components/gx-ide-file-uploader.js +438 -0
  137. package/dist/components/gx-ide-file-uploader.js.map +1 -0
  138. package/dist/components/gx-ide-gam-installation-settings.js +1 -1
  139. package/dist/components/gx-ide-gam-installation-settings.js.map +1 -1
  140. package/dist/components/gx-ide-manage-module-references-v2.js +1 -1
  141. package/dist/components/gx-ide-manage-module-references-v2.js.map +1 -1
  142. package/dist/components/gx-ide-manage-module-references.js +1 -1
  143. package/dist/components/gx-ide-manage-module-references.js.map +1 -1
  144. package/dist/components/gx-ide-references.js +1 -1
  145. package/dist/components/gx-ide-references.js.map +1 -1
  146. package/dist/components/gx-ide-team-dev-commit.js +1 -1
  147. package/dist/components/gx-ide-team-dev-commit.js.map +1 -1
  148. package/dist/components/gx-ide-team-dev-select-recent-comment.js +1 -1
  149. package/dist/components/gx-ide-team-dev-select-recent-comment.js.map +1 -1
  150. package/dist/components/gx-ide-team-dev-update-partial-selection.js +1 -1
  151. package/dist/components/gx-ide-team-dev-update-partial-selection.js.map +1 -1
  152. package/dist/components/gx-ide-team-dev-update-to-revision.js +1 -1
  153. package/dist/components/gx-ide-team-dev-update-to-revision.js.map +1 -1
  154. package/dist/components/gx-ide-team-dev-update.js +1 -1
  155. package/dist/components/gx-ide-team-dev-update.js.map +1 -1
  156. package/dist/components/gx-ide-template.js +1 -1
  157. package/dist/components/gx-ide-template.js.map +1 -1
  158. package/dist/components/gx-ide-wf-settings.js +1 -1
  159. package/dist/components/gx-ide-wf-settings.js.map +1 -1
  160. package/dist/components/gx-ide-ww-images.js +1 -1
  161. package/dist/components/gx-ide-ww-images.js.map +1 -1
  162. package/dist/components/list-selector.js +1 -1
  163. package/dist/components/list-selector.js.map +1 -1
  164. package/dist/esm/genexus-ide-ui.js +1 -1
  165. package/dist/esm/gx-ide-ai-assistant.entry.js +1 -1
  166. package/dist/esm/gx-ide-ai-assistant.entry.js.map +1 -1
  167. package/dist/esm/gx-ide-bpm-app-declaration.entry.js +181 -167
  168. package/dist/esm/gx-ide-bpm-app-declaration.entry.js.map +1 -1
  169. package/dist/esm/gx-ide-bpm-assign-roles.entry.js +1 -1
  170. package/dist/esm/gx-ide-bpm-assign-roles.entry.js.map +1 -1
  171. package/dist/esm/gx-ide-bpm-export-xpdl.entry.js +1 -1
  172. package/dist/esm/gx-ide-bpm-export-xpdl.entry.js.map +1 -1
  173. package/dist/esm/gx-ide-bpm-import-files.entry.js +1 -1
  174. package/dist/esm/gx-ide-bpm-import-files.entry.js.map +1 -1
  175. package/dist/esm/gx-ide-bpm-import-gxpm.entry.js +1 -1
  176. package/dist/esm/gx-ide-bpm-import-gxpm.entry.js.map +1 -1
  177. package/dist/esm/gx-ide-bpm-objects-selector.entry.js +1 -1
  178. package/dist/esm/gx-ide-bpm-objects-selector.entry.js.map +1 -1
  179. package/dist/esm/gx-ide-bpm-timer-duration.entry.js +1 -1
  180. package/dist/esm/gx-ide-bpm-timer-duration.entry.js.map +1 -1
  181. package/dist/esm/gx-ide-card.entry.js +1 -1
  182. package/dist/esm/gx-ide-card.entry.js.map +1 -1
  183. package/dist/esm/gx-ide-dashboard-home.entry.js +1 -1
  184. package/dist/esm/gx-ide-dashboard-home.entry.js.map +1 -1
  185. package/dist/esm/gx-ide-deployment-tool.entry.js +1 -1
  186. package/dist/esm/gx-ide-deployment-tool.entry.js.map +1 -1
  187. package/dist/esm/gx-ide-edit-module-server.entry.js +1 -1
  188. package/dist/esm/gx-ide-edit-module-server.entry.js.map +1 -1
  189. package/dist/esm/gx-ide-empty-state.entry.js +1 -1
  190. package/dist/esm/gx-ide-empty-state.entry.js.map +1 -1
  191. package/dist/esm/gx-ide-file-item.entry.js +106 -0
  192. package/dist/esm/gx-ide-file-item.entry.js.map +1 -0
  193. package/dist/esm/gx-ide-file-uploader.entry.js +395 -0
  194. package/dist/esm/gx-ide-file-uploader.entry.js.map +1 -0
  195. package/dist/esm/gx-ide-gam-installation-settings.entry.js +1 -1
  196. package/dist/esm/gx-ide-gam-installation-settings.entry.js.map +1 -1
  197. package/dist/esm/gx-ide-list-selector_2.entry.js +1 -1
  198. package/dist/esm/gx-ide-list-selector_2.entry.js.map +1 -1
  199. package/dist/esm/gx-ide-manage-module-references-v2.entry.js +1 -1
  200. package/dist/esm/gx-ide-manage-module-references-v2.entry.js.map +1 -1
  201. package/dist/esm/gx-ide-manage-module-references.entry.js +1 -1
  202. package/dist/esm/gx-ide-manage-module-references.entry.js.map +1 -1
  203. package/dist/esm/gx-ide-references.entry.js +1 -1
  204. package/dist/esm/gx-ide-references.entry.js.map +1 -1
  205. package/dist/esm/gx-ide-team-dev-commit.entry.js +1 -1
  206. package/dist/esm/gx-ide-team-dev-commit.entry.js.map +1 -1
  207. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +1 -1
  208. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js.map +1 -1
  209. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +1 -1
  210. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js.map +1 -1
  211. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +1 -1
  212. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js.map +1 -1
  213. package/dist/esm/gx-ide-team-dev-update.entry.js +1 -1
  214. package/dist/esm/gx-ide-team-dev-update.entry.js.map +1 -1
  215. package/dist/esm/gx-ide-template.entry.js +1 -1
  216. package/dist/esm/gx-ide-template.entry.js.map +1 -1
  217. package/dist/esm/gx-ide-wf-settings.entry.js +1 -1
  218. package/dist/esm/gx-ide-wf-settings.entry.js.map +1 -1
  219. package/dist/esm/gx-ide-ww-images.entry.js +1 -1
  220. package/dist/esm/gx-ide-ww-images.entry.js.map +1 -1
  221. package/dist/esm/loader.js +1 -1
  222. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  223. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  224. package/dist/genexus-ide-ui/gx-ide-assets/bpm-app-declaration/langs/bpm-app-declaration.lang.en.json +14 -2
  225. package/dist/genexus-ide-ui/gx-ide-assets/bpm-app-declaration/langs/bpm-app-declaration.lang.ja.json +15 -3
  226. package/dist/genexus-ide-ui/gx-ide-assets/bpm-app-declaration/langs/bpm-app-declaration.lang.zh.json +14 -2
  227. package/dist/genexus-ide-ui/gx-ide-assets/file-uploader/langs/file-uploader.lang.en.json +36 -0
  228. package/dist/genexus-ide-ui/gx-ide-assets/file-uploader/langs/file-uploader.lang.ja.json +36 -0
  229. package/dist/genexus-ide-ui/gx-ide-assets/file-uploader/langs/file-uploader.lang.zh.json +36 -0
  230. package/dist/genexus-ide-ui/{p-1e8f5da5.entry.js → p-04c6bd23.entry.js} +29 -29
  231. package/dist/genexus-ide-ui/{p-3e936f26.entry.js → p-05b04291.entry.js} +2 -2
  232. package/dist/genexus-ide-ui/{p-3ecdb582.entry.js → p-1072bf33.entry.js} +2 -2
  233. package/dist/genexus-ide-ui/{p-683cb15e.entry.js → p-14165308.entry.js} +2 -2
  234. package/dist/genexus-ide-ui/{p-2027c939.entry.js → p-2b3938b4.entry.js} +2 -2
  235. package/dist/genexus-ide-ui/{p-48826a6f.entry.js → p-3085add2.entry.js} +99 -99
  236. package/dist/genexus-ide-ui/{p-e4c2e200.entry.js → p-35f9ebbc.entry.js} +5 -5
  237. package/dist/genexus-ide-ui/{p-038c3f9b.entry.js → p-45996535.entry.js} +2 -2
  238. package/dist/genexus-ide-ui/{p-50b22f23.entry.js → p-4b38fffc.entry.js} +2 -2
  239. package/dist/genexus-ide-ui/{p-8f00263d.entry.js → p-6d2174ed.entry.js} +2 -2
  240. package/dist/genexus-ide-ui/{p-3d4355b4.entry.js → p-767e0f6d.entry.js} +8 -8
  241. package/dist/genexus-ide-ui/{p-bac13202.entry.js → p-844b7117.entry.js} +17 -17
  242. package/dist/genexus-ide-ui/{p-a790c4c9.entry.js → p-961bb2cc.entry.js} +2 -2
  243. package/dist/genexus-ide-ui/p-a1d73ca3.entry.js +310 -0
  244. package/dist/genexus-ide-ui/p-a1d73ca3.entry.js.map +1 -0
  245. package/dist/genexus-ide-ui/{p-9b5cb6b9.entry.js → p-a47d71eb.entry.js} +5 -5
  246. package/dist/genexus-ide-ui/{p-a05d4963.entry.js → p-b1851e6b.entry.js} +8 -8
  247. package/dist/genexus-ide-ui/{p-c6c955a3.entry.js → p-b2928645.entry.js} +2 -2
  248. package/dist/genexus-ide-ui/{p-3b8db39e.entry.js → p-b58fb87b.entry.js} +2 -2
  249. package/dist/genexus-ide-ui/p-bbf88f43.entry.js +475 -0
  250. package/dist/genexus-ide-ui/p-bbf88f43.entry.js.map +1 -0
  251. package/dist/genexus-ide-ui/{p-59ed3f39.entry.js → p-d8379699.entry.js} +2 -2
  252. package/dist/genexus-ide-ui/{p-beea29fa.entry.js → p-e24902a0.entry.js} +2 -2
  253. package/dist/genexus-ide-ui/{p-54fbb568.entry.js → p-edf889d2.entry.js} +2 -2
  254. package/dist/genexus-ide-ui/p-ef5dfd35.entry.js +157 -0
  255. package/dist/genexus-ide-ui/p-ef5dfd35.entry.js.map +1 -0
  256. package/dist/genexus-ide-ui/{p-a59a07e2.entry.js → p-f49bb305.entry.js} +2 -2
  257. package/dist/genexus-ide-ui/{p-cd397078.entry.js → p-f51adb3d.entry.js} +2 -2
  258. package/dist/genexus-ide-ui/{p-74c81ca3.entry.js → p-f722955f.entry.js} +2 -2
  259. package/dist/genexus-ide-ui/{p-2a6683e1.entry.js → p-f7421997.entry.js} +2 -2
  260. package/dist/genexus-ide-ui/{p-22b8bdb1.entry.js → p-fcecdafa.entry.js} +2 -2
  261. package/dist/types/components/bpm/application-declaration/bpm-app-declaration.d.ts +22 -44
  262. package/dist/types/components/file-uploader/file-item/file-item.d.ts +31 -0
  263. package/dist/types/components/file-uploader/file-uploader.d.ts +51 -0
  264. package/dist/types/components/file-uploader/types.d.ts +31 -0
  265. package/dist/types/components.d.ts +249 -10
  266. package/package.json +1 -1
  267. package/dist/genexus-ide-ui/p-55c87f23.entry.js +0 -287
  268. package/dist/genexus-ide-ui/p-55c87f23.entry.js.map +0 -1
  269. /package/dist/genexus-ide-ui/{p-1e8f5da5.entry.js.map → p-04c6bd23.entry.js.map} +0 -0
  270. /package/dist/genexus-ide-ui/{p-3e936f26.entry.js.map → p-05b04291.entry.js.map} +0 -0
  271. /package/dist/genexus-ide-ui/{p-3ecdb582.entry.js.map → p-1072bf33.entry.js.map} +0 -0
  272. /package/dist/genexus-ide-ui/{p-683cb15e.entry.js.map → p-14165308.entry.js.map} +0 -0
  273. /package/dist/genexus-ide-ui/{p-2027c939.entry.js.map → p-2b3938b4.entry.js.map} +0 -0
  274. /package/dist/genexus-ide-ui/{p-48826a6f.entry.js.map → p-3085add2.entry.js.map} +0 -0
  275. /package/dist/genexus-ide-ui/{p-e4c2e200.entry.js.map → p-35f9ebbc.entry.js.map} +0 -0
  276. /package/dist/genexus-ide-ui/{p-038c3f9b.entry.js.map → p-45996535.entry.js.map} +0 -0
  277. /package/dist/genexus-ide-ui/{p-50b22f23.entry.js.map → p-4b38fffc.entry.js.map} +0 -0
  278. /package/dist/genexus-ide-ui/{p-8f00263d.entry.js.map → p-6d2174ed.entry.js.map} +0 -0
  279. /package/dist/genexus-ide-ui/{p-3d4355b4.entry.js.map → p-767e0f6d.entry.js.map} +0 -0
  280. /package/dist/genexus-ide-ui/{p-bac13202.entry.js.map → p-844b7117.entry.js.map} +0 -0
  281. /package/dist/genexus-ide-ui/{p-a790c4c9.entry.js.map → p-961bb2cc.entry.js.map} +0 -0
  282. /package/dist/genexus-ide-ui/{p-9b5cb6b9.entry.js.map → p-a47d71eb.entry.js.map} +0 -0
  283. /package/dist/genexus-ide-ui/{p-a05d4963.entry.js.map → p-b1851e6b.entry.js.map} +0 -0
  284. /package/dist/genexus-ide-ui/{p-c6c955a3.entry.js.map → p-b2928645.entry.js.map} +0 -0
  285. /package/dist/genexus-ide-ui/{p-3b8db39e.entry.js.map → p-b58fb87b.entry.js.map} +0 -0
  286. /package/dist/genexus-ide-ui/{p-59ed3f39.entry.js.map → p-d8379699.entry.js.map} +0 -0
  287. /package/dist/genexus-ide-ui/{p-beea29fa.entry.js.map → p-e24902a0.entry.js.map} +0 -0
  288. /package/dist/genexus-ide-ui/{p-54fbb568.entry.js.map → p-edf889d2.entry.js.map} +0 -0
  289. /package/dist/genexus-ide-ui/{p-a59a07e2.entry.js.map → p-f49bb305.entry.js.map} +0 -0
  290. /package/dist/genexus-ide-ui/{p-cd397078.entry.js.map → p-f51adb3d.entry.js.map} +0 -0
  291. /package/dist/genexus-ide-ui/{p-74c81ca3.entry.js.map → p-f722955f.entry.js.map} +0 -0
  292. /package/dist/genexus-ide-ui/{p-2a6683e1.entry.js.map → p-f7421997.entry.js.map} +0 -0
  293. /package/dist/genexus-ide-ui/{p-22b8bdb1.entry.js.map → p-fcecdafa.entry.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-uploader.js","sourceRoot":"","sources":["../../../src/components/file-uploader/file-uploader.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @stencil-community/own-methods-must-be-private */\n/* eslint-disable @stencil-community/own-props-must-be-private */\n/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n State,\n Method\n} from \"@stencil/core\";\n\nimport { MercuryBundles, getIconPath } from \"@genexus/mercury\";\nimport { Locale } from \"../../common/locale\";\nimport { UploadedFile, FileUploadState, UploadResult } from \"./types\";\n\nconst PLUS_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"add\",\n colorType: \"primary\"\n});\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/icon\",\n \"components/list-box\",\n \"components/edit\",\n \"utils/typography\",\n \"utils/spacing\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/elevation\",\n \"chameleon/scrollbar\"\n];\n\ntype FileValidationResult = {\n isValid: boolean;\n error?: string;\n};\n\n@Component({\n tag: \"gx-ide-file-uploader\",\n styleUrl: \"file-uploader.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/file-uploader\"]\n})\nexport class FileUploader {\n #_componentLocale: any;\n #fileInputEl!: HTMLInputElement;\n\n @Element() el!: HTMLGxIdeFileUploaderElement;\n\n /** Allowed file types/extensions (e.g. ['.jpg', '.png', 'image/*', 'application/pdf']) */\n @Prop() readonly types?: string[] = [];\n\n /** Whether multiple files can be selected */\n @Prop() readonly multiple: boolean = false;\n\n /** Whether file names can be edited */\n @Prop() readonly canEditName: boolean = false;\n\n /** Label to display in the uploader dialog */\n @Prop() readonly label?: string;\n\n /** Function to handle file upload */\n @Prop() readonly uploadFunction!: (\n file: File,\n progressCallback: (progress: number) => void\n ) => Promise<UploadResult>;\n\n /** Function to cancel file upload */\n @Prop() readonly cancelUploadFunction?: (fileId: string) => Promise<void>;\n\n /** Callback when a file is uploaded successfully */\n @Prop() readonly fileUploadedCallback?: (file: UploadedFile) => Promise<void>;\n\n /** Callback when the dialog is canceled */\n @Prop() readonly dialogCanceledCallback?: () => Promise<void>;\n\n /** Callback when the dialog is confirmed with files */\n @Prop() readonly dialogConfirmedCallback?: (\n files: UploadedFile[]\n ) => Promise<void>;\n\n /** Callback when upload is cancelled */\n @Prop() readonly uploadCancelledCallback?: (fileId: string) => Promise<void>;\n\n /** Callback when file is renamed */\n @Prop() readonly fileRenamedCallback?: (data: {\n fileId: string;\n newName: string;\n }) => Promise<void>;\n\n /** Callback when a file validation error occurs */\n @Prop() readonly fileValidationErrorCallback?: (data: {\n fileName: string;\n error: string;\n }) => Promise<void>;\n\n /** Callback when a file deletion error occurs */\n @Prop() readonly fileDeletionErrorCallback?: (data: {\n fileName: string;\n error: string;\n }) => Promise<void>;\n\n /** Callback when a file is deleted */\n @Prop() readonly fileDeletedCallback?: (file: UploadedFile) => Promise<void>;\n\n /** Callback before deleting a file to get confirmation */\n @Prop() readonly onBeforeDelete?: (file: UploadedFile) => Promise<boolean>;\n\n @State() private fileStates: Map<string, FileUploadState> = new Map();\n @State() private isDragging: boolean = false;\n #dragCounter = 0;\n\n /** Initializes component with locale strings */\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n /** Generates a unique ID for file identification */\n #generateId = (): string => {\n return Math.random().toString(36).substr(2, 9);\n };\n\n /** Validates if a file matches the allowed types */\n #isValidFile(file: File): FileValidationResult {\n // If no types specified, accept any file\n if (!this.types || this.types.length === 0) {\n return { isValid: true };\n }\n\n for (const type of this.types) {\n // Handle wildcards like 'image/*'\n if (type.includes(\"/*\")) {\n const baseType = type.split(\"/\")[0];\n if (file.type.startsWith(baseType)) {\n return { isValid: true };\n }\n }\n // Handle extensions like '.jpg'\n else if (type.startsWith(\".\")) {\n if (file.name.toLowerCase().endsWith(type.toLowerCase())) {\n return { isValid: true };\n }\n }\n // Handle specific MIME types\n else if (file.type === type || file.type === `application/${type}`) {\n return { isValid: true };\n }\n }\n\n return {\n isValid: false,\n error:\n this.#_componentLocale?.errors?.invalidFileType || \"Invalid file type\"\n };\n }\n\n /** Filters valid files from a FileList */\n #getValidFiles(files: FileList): File[] {\n const validFiles: File[] = [];\n\n Array.from(files).forEach(file => {\n const validation = this.#isValidFile(file);\n if (validation.isValid) {\n validFiles.push(file);\n } else {\n this.fileValidationErrorCallback?.({\n fileName: file.name,\n error: validation.error\n });\n }\n });\n\n return validFiles;\n }\n\n /** Handles drag enter event */\n #handleDragEnter = (e: DragEvent) => {\n e.preventDefault();\n e.stopPropagation();\n this.#dragCounter++;\n this.isDragging = true;\n };\n\n /** Handles drag leave event */\n #handleDragLeave = (e: DragEvent) => {\n e.preventDefault();\n e.stopPropagation();\n this.#dragCounter--;\n if (this.#dragCounter === 0) {\n this.isDragging = false;\n }\n };\n\n /** Handles drag over event */\n #handleDragOver = (e: DragEvent) => {\n e.preventDefault();\n e.stopPropagation();\n };\n\n /** Handles drop event */\n #handleDrop = (e: DragEvent) => {\n e.preventDefault();\n e.stopPropagation();\n this.isDragging = false;\n this.#dragCounter = 0;\n\n const files = e.dataTransfer?.files;\n if (files) {\n this.#handleFiles(files);\n }\n };\n\n /** Triggers file input click */\n #handleFileSelect = () => {\n this.#fileInputEl?.click();\n };\n\n /** Handles file input change event */\n #handleFileInput = (e: Event) => {\n const files = (e.target as HTMLInputElement).files;\n if (files) {\n this.#handleFiles(files);\n }\n };\n\n /** Processes files and starts upload */\n #handleFiles = (files: FileList) => {\n const validFiles: File[] = this.#getValidFiles(files);\n\n validFiles.forEach(async file => {\n const id = this.#generateId();\n const fileState: FileUploadState = {\n id,\n name: file.name,\n file,\n pending: true,\n progress: 0\n };\n\n if (!this.multiple) {\n this.fileStates.clear();\n }\n\n this.fileStates = new Map(this.fileStates.set(id, fileState));\n\n if (this.uploadFunction) {\n try {\n const uploadPromise = this.uploadFunction(file, progress => {\n const state = this.fileStates.get(id);\n if (state) {\n const updatedState = {\n ...state,\n progress: progress,\n pending: progress < 100\n };\n this.fileStates = new Map(this.fileStates.set(id, updatedState));\n }\n });\n\n // Store the upload promise/object for potential cancellation\n const stateWithPromise = {\n ...this.fileStates.get(id),\n uploadPromise\n };\n this.fileStates = new Map(this.fileStates.set(id, stateWithPromise));\n\n const result = await uploadPromise;\n console.log(\"Upload result:\", { id, result });\n\n const state = this.fileStates.get(id);\n if (state) {\n if (result.success && result.remoteId) {\n const updatedState = {\n ...state,\n remoteId: result.remoteId,\n pending: false,\n progress: 100\n };\n this.fileStates = new Map(this.fileStates.set(id, updatedState));\n console.log(\"File uploaded successfully:\", updatedState);\n await this.fileUploadedCallback?.({\n name: state.name,\n originalName: state.file.name,\n remoteId: result.remoteId\n });\n } else {\n const updatedState = {\n ...state,\n error: result.errors?.upload || \"Upload failed\",\n pending: false\n };\n this.fileStates = new Map(this.fileStates.set(id, updatedState));\n console.log(\"File upload failed:\", updatedState);\n }\n }\n } catch (error) {\n const state = this.fileStates.get(id);\n if (state) {\n const updatedState = {\n ...state,\n error:\n error instanceof Error\n ? error.message\n : \"Unknown error occurred\",\n pending: false\n };\n this.fileStates = new Map(this.fileStates.set(id, updatedState));\n console.log(\"File upload error:\", updatedState);\n }\n }\n }\n });\n\n if (this.#fileInputEl) {\n this.#fileInputEl.value = \"\";\n }\n };\n\n /** Handles file name change */\n #handleNameChange = async (\n event: CustomEvent<{ id: string; name: string }>\n ) => {\n const { id, name } = event.detail;\n const file = this.fileStates.get(id);\n\n if (file) {\n const updatedFile = {\n ...file,\n name: name.trim(),\n isEditing: false\n };\n\n this.fileStates = new Map(this.fileStates.set(id, updatedFile));\n await this.fileRenamedCallback?.({ fileId: id, newName: name.trim() });\n }\n };\n\n /** Handles individual file cancellation or deletion */\n #handleFileCancel = async (event: CustomEvent<string>) => {\n const id = event.detail;\n const state = this.fileStates.get(id);\n if (state) {\n try {\n if (state.pending) {\n // Cancel upload in progress\n if (\n state.uploadPromise &&\n typeof state.uploadPromise.cancel === \"function\"\n ) {\n state.uploadPromise.cancel();\n } else if (this.cancelUploadFunction) {\n await this.cancelUploadFunction(id);\n }\n\n await this.uploadCancelledCallback?.(id);\n\n this.fileStates.delete(id);\n this.fileStates = new Map(this.fileStates);\n } else {\n const fileToDelete: UploadedFile = {\n name: state.name,\n originalName: state.file.name,\n remoteId: state.remoteId\n };\n\n const shouldDelete = await this.onBeforeDelete?.(fileToDelete);\n\n if (shouldDelete) {\n await this.fileDeletedCallback?.(fileToDelete);\n this.fileStates.delete(id);\n this.fileStates = new Map(this.fileStates);\n }\n }\n } catch (error) {\n await this.fileDeletionErrorCallback?.({\n fileName: state.name,\n error:\n error instanceof Error ? error.message : \"Unknown error occurred\"\n });\n }\n }\n };\n\n /** Handles dialog confirmation */\n #handleConfirm = async () => {\n // Verificar si hay subidas en progreso\n const hasPendingUploads = Array.from(this.fileStates.values()).some(\n file => file.pending\n );\n\n if (hasPendingUploads) {\n return; // No permitir confirmar si hay subidas en progreso\n }\n\n // Obtener todos los archivos que están completamente subidos\n const uploadedFiles: UploadedFile[] = Array.from(this.fileStates.values())\n .filter(file => {\n const isValid = !file.pending && file.remoteId && !file.error;\n console.log(\"File validation:\", {\n id: file.id,\n name: file.name,\n pending: file.pending,\n remoteId: file.remoteId,\n error: file.error,\n isValid\n });\n return isValid;\n })\n .map(file => ({\n name: file.name,\n originalName: file.file.name,\n remoteId: file.remoteId as string\n }));\n\n console.log(\"Files to be confirmed:\", uploadedFiles);\n\n if (uploadedFiles.length > 0) {\n await this.dialogConfirmedCallback?.(uploadedFiles);\n }\n\n // Clear file states\n this.fileStates.clear();\n this.fileStates = new Map();\n\n // Reset file input\n if (this.#fileInputEl) {\n this.#fileInputEl.value = \"\";\n }\n };\n\n /** Handles dialog cancellation */\n #handleCancel = async () => {\n try {\n // Cancelamos todas las subidas en progreso\n for (const [id, state] of this.fileStates.entries()) {\n if (state.pending && this.cancelUploadFunction) {\n try {\n await this.cancelUploadFunction(id);\n await this.uploadCancelledCallback?.(id);\n } catch (error) {\n // Error handling for upload cancellation\n }\n }\n }\n\n // Limpiamos todos los estados\n this.fileStates.clear();\n this.fileStates = new Map();\n\n if (this.#fileInputEl) {\n this.#fileInputEl.value = \"\";\n }\n\n await this.dialogCanceledCallback?.();\n } catch (error) {\n this.fileStates.clear();\n this.fileStates = new Map();\n await this.dialogCanceledCallback?.();\n }\n };\n\n /** Clears the current file selection */\n @Method()\n async clear() {\n for (const [id, state] of this.fileStates.entries()) {\n if (state.pending && this.cancelUploadFunction) {\n try {\n await this.cancelUploadFunction(id);\n await this.uploadCancelledCallback?.(id);\n } catch (error) {\n // Error handling for upload cancellation\n }\n }\n }\n this.fileStates.clear();\n }\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <input\n type=\"file\"\n class=\"hidden-input\"\n multiple={this.multiple}\n accept={this.types\n ?.map(type => (type.startsWith(\".\") ? type : `.${type}`))\n .join(\",\")}\n onChange={this.#handleFileInput}\n ref={el => (this.#fileInputEl = el as HTMLInputElement)}\n aria-hidden=\"true\"\n tabIndex={-1}\n style={{ display: \"none\" }}\n />\n <div class=\"file-uploader-dialog\">\n <div class=\"dialog-content\">\n {this.isDragging || this.fileStates.size === 0 ? (\n <div\n class={{\n \"file-uploader__drop-zone\": true,\n \"file-uploader__drop-zone--dragging\": this.isDragging\n }}\n onDragEnter={this.#handleDragEnter}\n onDragLeave={this.#handleDragLeave}\n onDragOver={this.#handleDragOver}\n onDrop={this.#handleDrop}\n >\n <button\n class=\"button-tertiary button-icon-and-text\"\n type=\"button\"\n onClick={this.#handleFileSelect}\n >\n <ch-image class=\"icon-md\" src={PLUS_ICON}></ch-image>\n <label class=\"label\">\n {this.multiple\n ? this.#_componentLocale?.header.uploadButtonMultiple\n : this.#_componentLocale?.header.uploadButtonSingle}\n </label>\n </button>\n <div class=\"text-container\">\n <div class=\"label-primary-row\">\n <label class=\"label\">\n {this.label || this.#_componentLocale?.header.orText}\n </label>\n <label class=\"label\">\n {this.#_componentLocale?.header.dragAndDrop}\n </label>\n </div>\n <span class=\"caption\">\n {this.types && this.types.length > 0\n ? this.#_componentLocale?.header.acceptedFiles.replace(\n \"{0}\",\n this.types.join(\", \")\n )\n : this.#_componentLocale?.header.allFilesAccepted}\n </span>\n </div>\n </div>\n ) : (\n <div class=\"file-uploader__list\">\n <div class=\"file-uploader__list-header spacing-body-block-end\">\n <div class=\"file-uploader__list-title-container\">\n <label class=\"label\">\n {this.label ||\n this.#_componentLocale?.fileList.attachedFiles}\n </label>\n <span class=\"caption\">\n {this.#_componentLocale?.fileList.filesCount.replace(\n \"{0}\",\n this.fileStates.size.toString()\n )}\n </span>\n </div>\n {this.multiple && (\n <button\n class=\"button-tertiary button-icon-and-text\"\n type=\"button\"\n onClick={this.#handleFileSelect}\n >\n <ch-image class=\"icon-md\" src={PLUS_ICON}></ch-image>\n <label class=\"label\">\n {this.multiple\n ? this.#_componentLocale?.header.uploadButtonMultiple\n : this.#_componentLocale?.header.uploadButtonSingle}\n </label>\n </button>\n )}\n </div>\n <div class=\"file-uploader__list-content scrollable\">\n {Array.from(this.fileStates.values()).map(file => (\n <gx-ide-file-item\n key={file.id}\n file={file}\n editable={this.canEditName}\n onFileNameChange={this.#handleNameChange}\n onFileDelete={this.#handleFileCancel}\n onFileCancel={this.#handleFileCancel}\n />\n ))}\n </div>\n </div>\n )}\n </div>\n <div class=\"dialog-footer control-footer control-footer-with-border\">\n <div class=\"buttons-spacer\">\n <button\n class=\"button-secondary\"\n type=\"button\"\n onClick={this.#handleCancel}\n >\n {this.#_componentLocale?.buttons.cancel}\n </button>\n <button\n class=\"button-primary\"\n type=\"button\"\n onClick={this.#handleConfirm}\n disabled={\n this.fileStates.size === 0 ||\n Array.from(this.fileStates.values()).some(\n file => file.pending\n )\n }\n >\n {this.#_componentLocale?.buttons.confirm}\n </button>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -0,0 +1,36 @@
1
+ {
2
+ "componentName": "File Uploader",
3
+ "header": {
4
+ "uploadButtonSingle": "Upload File",
5
+ "uploadButtonMultiple": "Upload Files",
6
+ "dragAndDrop": "Drag and drop file",
7
+ "orText": "or",
8
+ "acceptedFiles": "Accepted files: {0}",
9
+ "allFilesAccepted": "All files accepted"
10
+ },
11
+ "fileList": {
12
+ "attachedFiles": "Attached files",
13
+ "filesCount": "{0} file(s) attached"
14
+ },
15
+ "fileItem": {
16
+ "editButtonAriaLabel": "Edit file name",
17
+ "deleteButtonAriaLabel": "Delete file",
18
+ "cancelUploadButtonAriaLabel": "Cancel upload",
19
+ "editNameAriaLabel": "Edit file name"
20
+ },
21
+ "buttons": {
22
+ "cancel": "Cancel",
23
+ "confirm": "Confirm"
24
+ },
25
+ "confirmations": {
26
+ "deleteFile": "Are you sure you want to delete this file?",
27
+ "cancelUpload": "Are you sure you want to cancel this upload?"
28
+ },
29
+ "errors": {
30
+ "uploadFailed": "Failed to upload file",
31
+ "cancelFailed": "Failed to cancel upload",
32
+ "invalidFileType": "Invalid file type",
33
+ "fileTooBig": "File is too large",
34
+ "renameFailed": "Failed to rename file"
35
+ }
36
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "componentName": "",
3
+ "header": {
4
+ "uploadButtonSingle": "",
5
+ "uploadButtonMultiple": "",
6
+ "dragAndDrop": "",
7
+ "orText": "",
8
+ "acceptedFiles": "",
9
+ "allFilesAccepted": ""
10
+ },
11
+ "fileList": {
12
+ "attachedFiles": "",
13
+ "filesCount": ""
14
+ },
15
+ "fileItem": {
16
+ "editButtonAriaLabel": "",
17
+ "deleteButtonAriaLabel": "",
18
+ "cancelUploadButtonAriaLabel": "",
19
+ "editNameAriaLabel": ""
20
+ },
21
+ "buttons": {
22
+ "cancel": "",
23
+ "confirm": ""
24
+ },
25
+ "confirmations": {
26
+ "deleteFile": "",
27
+ "cancelUpload": ""
28
+ },
29
+ "errors": {
30
+ "uploadFailed": "",
31
+ "cancelFailed": "",
32
+ "invalidFileType": "",
33
+ "fileTooBig": "",
34
+ "renameFailed": ""
35
+ }
36
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "componentName": "",
3
+ "header": {
4
+ "uploadButtonSingle": "",
5
+ "uploadButtonMultiple": "",
6
+ "dragAndDrop": "",
7
+ "orText": "",
8
+ "acceptedFiles": "",
9
+ "allFilesAccepted": ""
10
+ },
11
+ "fileList": {
12
+ "attachedFiles": "",
13
+ "filesCount": ""
14
+ },
15
+ "fileItem": {
16
+ "editButtonAriaLabel": "",
17
+ "deleteButtonAriaLabel": "",
18
+ "cancelUploadButtonAriaLabel": "",
19
+ "editNameAriaLabel": ""
20
+ },
21
+ "buttons": {
22
+ "cancel": "",
23
+ "confirm": ""
24
+ },
25
+ "confirmations": {
26
+ "deleteFile": "",
27
+ "cancelUpload": ""
28
+ },
29
+ "errors": {
30
+ "uploadFailed": "",
31
+ "cancelFailed": "",
32
+ "invalidFileType": "",
33
+ "fileTooBig": "",
34
+ "renameFailed": ""
35
+ }
36
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/file-uploader/types.ts"],"names":[],"mappings":"","sourcesContent":["export interface FileUploadState {\n id: string;\n name: string;\n file: File;\n pending: boolean;\n progress: number;\n remoteId?: string;\n error?: string;\n isEditing?: boolean;\n uploadPromise?: any;\n}\n\nexport interface UploadedFile {\n name: string;\n originalName: string;\n remoteId: string;\n}\n\nexport interface FileItemProps {\n file: FileUploadState;\n canEdit?: boolean;\n onNameChange?: (id: string, newName: string) => void;\n onDelete?: (id: string) => void;\n onEdit?: (id: string) => void;\n onCancelUpload?: (id: string) => void;\n}\n\nexport type UploadResult = {\n success: boolean;\n remoteId?: string;\n errors?: {\n [key: string]: string;\n };\n};\n"]}
@@ -370,6 +370,15 @@ New classes for Chameleon + Mercury
370
370
  display: contents;
371
371
  }
372
372
 
373
+ .pill-tag {
374
+ padding: 1px 4px;
375
+ border-radius: 2px;
376
+ min-inline-size: 40px;
377
+ text-align: center;
378
+ margin-inline-end: 10px;
379
+ font-size: 11px;
380
+ }
381
+
373
382
  /* - - - - - - - - - - - - - - - - - - -
374
383
  Old classes (Gemini) to be removed soon
375
384
  - - - - - - - - - - - - - - - - - - - */
@@ -370,6 +370,15 @@ New classes for Chameleon + Mercury
370
370
  display: contents;
371
371
  }
372
372
 
373
+ .pill-tag {
374
+ padding: 1px 4px;
375
+ border-radius: 2px;
376
+ min-inline-size: 40px;
377
+ text-align: center;
378
+ margin-inline-end: 10px;
379
+ font-size: 11px;
380
+ }
381
+
373
382
  /* - - - - - - - - - - - - - - - - - - -
374
383
  Old classes (Gemini) to be removed soon
375
384
  - - - - - - - - - - - - - - - - - - - */
@@ -370,6 +370,15 @@ New classes for Chameleon + Mercury
370
370
  display: contents;
371
371
  }
372
372
 
373
+ .pill-tag {
374
+ padding: 1px 4px;
375
+ border-radius: 2px;
376
+ min-inline-size: 40px;
377
+ text-align: center;
378
+ margin-inline-end: 10px;
379
+ font-size: 11px;
380
+ }
381
+
373
382
  /* - - - - - - - - - - - - - - - - - - -
374
383
  Old classes (Gemini) to be removed soon
375
384
  - - - - - - - - - - - - - - - - - - - */
@@ -370,6 +370,15 @@ New classes for Chameleon + Mercury
370
370
  display: contents;
371
371
  }
372
372
 
373
+ .pill-tag {
374
+ padding: 1px 4px;
375
+ border-radius: 2px;
376
+ min-inline-size: 40px;
377
+ text-align: center;
378
+ margin-inline-end: 10px;
379
+ font-size: 11px;
380
+ }
381
+
373
382
  /* - - - - - - - - - - - - - - - - - - -
374
383
  Old classes (Gemini) to be removed soon
375
384
  - - - - - - - - - - - - - - - - - - - */
@@ -370,6 +370,15 @@ New classes for Chameleon + Mercury
370
370
  display: contents;
371
371
  }
372
372
 
373
+ .pill-tag {
374
+ padding: 1px 4px;
375
+ border-radius: 2px;
376
+ min-inline-size: 40px;
377
+ text-align: center;
378
+ margin-inline-end: 10px;
379
+ font-size: 11px;
380
+ }
381
+
373
382
  /* - - - - - - - - - - - - - - - - - - -
374
383
  Old classes (Gemini) to be removed soon
375
384
  - - - - - - - - - - - - - - - - - - - */
@@ -370,6 +370,15 @@ New classes for Chameleon + Mercury
370
370
  display: contents;
371
371
  }
372
372
 
373
+ .pill-tag {
374
+ padding: 1px 4px;
375
+ border-radius: 2px;
376
+ min-inline-size: 40px;
377
+ text-align: center;
378
+ margin-inline-end: 10px;
379
+ font-size: 11px;
380
+ }
381
+
373
382
  /* - - - - - - - - - - - - - - - - - - -
374
383
  Old classes (Gemini) to be removed soon
375
384
  - - - - - - - - - - - - - - - - - - - */
@@ -370,6 +370,15 @@ New classes for Chameleon + Mercury
370
370
  display: contents;
371
371
  }
372
372
 
373
+ .pill-tag {
374
+ padding: 1px 4px;
375
+ border-radius: 2px;
376
+ min-inline-size: 40px;
377
+ text-align: center;
378
+ margin-inline-end: 10px;
379
+ font-size: 11px;
380
+ }
381
+
373
382
  /* - - - - - - - - - - - - - - - - - - -
374
383
  Old classes (Gemini) to be removed soon
375
384
  - - - - - - - - - - - - - - - - - - - */
@@ -370,6 +370,15 @@ New classes for Chameleon + Mercury
370
370
  display: contents;
371
371
  }
372
372
 
373
+ .pill-tag {
374
+ padding: 1px 4px;
375
+ border-radius: 2px;
376
+ min-inline-size: 40px;
377
+ text-align: center;
378
+ margin-inline-end: 10px;
379
+ font-size: 11px;
380
+ }
381
+
373
382
  /* - - - - - - - - - - - - - - - - - - -
374
383
  Old classes (Gemini) to be removed soon
375
384
  - - - - - - - - - - - - - - - - - - - */
@@ -370,6 +370,15 @@ New classes for Chameleon + Mercury
370
370
  display: contents;
371
371
  }
372
372
 
373
+ .pill-tag {
374
+ padding: 1px 4px;
375
+ border-radius: 2px;
376
+ min-inline-size: 40px;
377
+ text-align: center;
378
+ margin-inline-end: 10px;
379
+ font-size: 11px;
380
+ }
381
+
373
382
  /* - - - - - - - - - - - - - - - - - - -
374
383
  Old classes (Gemini) to be removed soon
375
384
  - - - - - - - - - - - - - - - - - - - */
@@ -370,6 +370,15 @@ New classes for Chameleon + Mercury
370
370
  display: contents;
371
371
  }
372
372
 
373
+ .pill-tag {
374
+ padding: 1px 4px;
375
+ border-radius: 2px;
376
+ min-inline-size: 40px;
377
+ text-align: center;
378
+ margin-inline-end: 10px;
379
+ font-size: 11px;
380
+ }
381
+
373
382
  /* - - - - - - - - - - - - - - - - - - -
374
383
  Old classes (Gemini) to be removed soon
375
384
  - - - - - - - - - - - - - - - - - - - */
@@ -370,6 +370,15 @@ New classes for Chameleon + Mercury
370
370
  display: contents;
371
371
  }
372
372
 
373
+ .pill-tag {
374
+ padding: 1px 4px;
375
+ border-radius: 2px;
376
+ min-inline-size: 40px;
377
+ text-align: center;
378
+ margin-inline-end: 10px;
379
+ font-size: 11px;
380
+ }
381
+
373
382
  /* - - - - - - - - - - - - - - - - - - -
374
383
  Old classes (Gemini) to be removed soon
375
384
  - - - - - - - - - - - - - - - - - - - */
@@ -370,6 +370,15 @@ New classes for Chameleon + Mercury
370
370
  display: contents;
371
371
  }
372
372
 
373
+ .pill-tag {
374
+ padding: 1px 4px;
375
+ border-radius: 2px;
376
+ min-inline-size: 40px;
377
+ text-align: center;
378
+ margin-inline-end: 10px;
379
+ font-size: 11px;
380
+ }
381
+
373
382
  /* - - - - - - - - - - - - - - - - - - -
374
383
  Old classes (Gemini) to be removed soon
375
384
  - - - - - - - - - - - - - - - - - - - */
@@ -110,6 +110,8 @@ const allGeneXusIdeUIComponents = {
110
110
  "gx-ide-edit-module-server": 0,
111
111
  "gx-ide-empty-state": 0,
112
112
  "gx-ide-entity-selector": 0,
113
+ "gx-ide-file-item": 0,
114
+ "gx-ide-file-uploader": 0,
113
115
  "gx-ide-gam-installation-settings": 0,
114
116
  "gx-ide-kb-manager-export": 0,
115
117
  "gx-ide-kb-manager-import": 0,
@@ -166,7 +168,8 @@ const componentsWithoutTranslations = new Set([
166
168
  "gx-ide-switcher",
167
169
  "gx-ide-test",
168
170
  "gx-ide-title",
169
- "gx-ide-top-bar"
171
+ "gx-ide-top-bar",
172
+ "gx-ide-file-item"
170
173
  ]);
171
174
  const componentsWithTranslations = Object.keys(allGeneXusIdeUIComponents).filter(component => !componentsWithoutTranslations.has(component));
172
175
  componentsWithTranslations.forEach(testLocale);
@@ -1 +1 @@
1
- {"version":3,"file":"locale.e2e.js","sourceRoot":"","sources":["../../src/testing/locale.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { E2EPage, newE2EPage } from \"@stencil/core/testing\";\nimport { GeneXusIdeUIControlsTagName } from \"../common/types\";\nimport { haveSameStructure } from \"./same-structure.e2e\";\n\nconst COMPONENT_PREFIX = \"gx-ide-\";\nconst languages: { name: string; attr: string }[] = [\n { name: \"chinese\", attr: \"zh\" },\n { name: \"english\", attr: \"en\" },\n { name: \"japanese\", attr: \"ja\" }\n];\n\nconst testLocale = (componentNameWithPrefix: GeneXusIdeUIControlsTagName) => {\n describe(`[locale][${componentNameWithPrefix}]`, () => {\n let page: E2EPage;\n const componentName = componentNameWithPrefix.replace(COMPONENT_PREFIX, \"\");\n\n // This implementation is a WA since we can't evaluate JS classes in the page.\n // TODO: Implement the locale utility as a function, which can be evaluated\n // in the page\n const getTranslations = () =>\n page.evaluate(component => {\n const ASSETS_FOLDER = \"gx-ide-assets/\";\n const DEFAULT_LANGUAGE = \"en\";\n const LANGS_FOLDER = \"langs/\";\n const LANG_PREFIX = \".lang.\";\n const LANG_EXTENSION = \".json\";\n const lang =\n document\n .getElementsByTagName(\"html\")[0]\n .getAttribute(\"lang\")\n ?.valueOf() ?? DEFAULT_LANGUAGE;\n const folder = `${component}/`;\n\n const path =\n `/build/${ASSETS_FOLDER}${folder}${LANGS_FOLDER}${component}${LANG_PREFIX}${lang}${LANG_EXTENSION}` as const;\n\n return new Promise(resolve => {\n fetch(path)\n .then(async langFile => {\n if (langFile.ok) {\n const fileObject = await langFile.json();\n resolve(fileObject);\n } else {\n resolve(undefined);\n }\n })\n .catch(() => resolve(undefined));\n });\n }, componentName);\n\n beforeEach(async () => {\n page = await newE2EPage({\n failOnConsoleError: true,\n html: \"\" // Necessary\n });\n });\n\n it(\"should work without specifying the language (lang attr) in the browser\", async () => {\n const languageFile: any | undefined = await getTranslations();\n expect(languageFile).toBeTruthy();\n });\n\n it(\"should default to english language when there is no language (lang attr) in the browser\", async () => {\n const languageFile: any | undefined = await getTranslations();\n expect(languageFile).toBeTruthy();\n\n await page.evaluate(() =>\n document.documentElement.setAttribute(\"lang\", \"en\")\n );\n\n const languageEnglishFile: any | undefined = await getTranslations();\n expect(languageEnglishFile).toBeTruthy();\n expect(languageFile).toEqual(languageEnglishFile);\n });\n\n languages.forEach(language => {\n it(`should work with ${language.name} language`, async () => {\n await page.evaluate(\n (attr: string) => document.documentElement.setAttribute(\"lang\", attr),\n language.attr\n );\n const languageFile: any | undefined = await getTranslations();\n expect(languageFile).toBeTruthy();\n });\n });\n\n for (let index = 0; index < languages.length - 1; index++) {\n const language1 = languages[index];\n const language2 = languages[index + 1];\n\n // TODO: Complete all translations. At this moment, Japanese and Chinese\n // translations have missing literals\n it(`should translate the same literals (${language1.name} and ${language2.name})`, async () => {\n await page.evaluate(\n (attr: string) => document.documentElement.setAttribute(\"lang\", attr),\n language1.attr\n );\n const language1File: any | undefined = await getTranslations();\n\n await page.evaluate(\n (attr: string) => document.documentElement.setAttribute(\"lang\", attr),\n language2.attr\n );\n const language2File: any | undefined = await getTranslations();\n\n expect(language1File).toBeTruthy();\n expect(language2File).toBeTruthy();\n expect(haveSameStructure(language1File, language2File)).toBe(true);\n });\n }\n });\n};\n\n// TypeScript does not have a built-in type to exhaust a list with union types\nconst allGeneXusIdeUIComponents: { [key in GeneXusIdeUIControlsTagName]: 0 } = {\n \"gx-ide-about\": 0,\n \"gx-ide-ai-assistant\": 0,\n \"gx-ide-ai-message\": 0,\n \"gx-ide-bpm-app-declaration\": 0,\n \"gx-ide-bpm-assign-roles\": 0,\n \"gx-ide-bpm-import-files\": 0,\n \"gx-ide-bpm-import-gxpm\": 0,\n \"gx-ide-bpm-objects-selector\": 0,\n \"gx-ide-bpm-sync-gam-roles\": 0,\n \"gx-ide-bpm-task-documents\": 0,\n \"gx-ide-bpm-timer-duration\": 0,\n \"gx-ide-card\": 0,\n \"gx-ide-chat-container\": 0,\n \"gx-ide-sc-chat-container\": 0,\n \"gx-ide-connect-gx-server\": 0,\n \"gx-ide-container\": 0,\n \"gx-ide-create-kb-from-server\": 0,\n \"gx-ide-current-user-info\": 0,\n \"gx-ide-dashboard-home\": 0,\n \"gx-ide-data-selector\": 0,\n \"gx-ide-data-type-selector\": 0,\n \"gx-ide-deployment-tool\": 0,\n \"gx-ide-design-import\": 0,\n \"gx-ide-directory-selector\": 0,\n \"gx-ide-edit-module-server\": 0,\n \"gx-ide-empty-state\": 0,\n \"gx-ide-entity-selector\": 0,\n \"gx-ide-gam-installation-settings\": 0,\n \"gx-ide-kb-manager-export\": 0,\n \"gx-ide-kb-manager-import\": 0,\n \"gx-ide-list-selector\": 0,\n \"gx-ide-list-selector-item\": 0,\n \"gx-ide-loader\": 0,\n \"gx-ide-manage-module-references\": 0,\n \"gx-ide-manage-module-references-v2\": 0,\n \"gx-ide-new-environment\": 0,\n \"gx-ide-new-kb\": 0,\n \"gx-ide-new-object\": 0,\n \"gx-ide-new-version\": 0,\n \"gx-ide-object-selector\": 0,\n \"gx-ide-open-api-import\": 0,\n \"gx-ide-references\": 0,\n \"gx-ide-select-kb-items\": 0,\n \"gx-ide-select-user-team\": 0,\n \"gx-ide-sign-in\": 0,\n \"gx-ide-sign-in-team\": 0,\n \"gx-ide-share-kb\": 0,\n \"gx-ide-start-page\": 0,\n \"gx-ide-status-buttons\": 0,\n \"gx-ide-switch-panel\": 0,\n \"gx-ide-switcher\": 0,\n \"gx-ide-team-dev-commit\": 0,\n \"gx-ide-team-dev-select-recent-comment\": 0,\n \"gx-ide-team-dev-update\": 0,\n \"gx-ide-team-dev-update-partial-selection\": 0,\n \"gx-ide-team-dev-update-to-revision\": 0,\n \"gx-ide-template\": 0,\n \"gx-ide-test\": 0,\n \"gx-ide-title\": 0,\n \"gx-ide-top-bar\": 0,\n \"gx-ide-wf-settings\": 0,\n \"gx-ide-ww-images\": 0,\n \"gx-ide-ww-attributes\": 0,\n \"gx-ide-ww-files\": 0,\n \"gx-ide-navigation-report\": 0,\n \"gx-ide-splash\": 0,\n \"gx-ide-welcome-page\": 0,\n \"gx-ide-bpm-export-xpdl\": 0\n};\n\nconst componentsWithoutTranslations = new Set<GeneXusIdeUIControlsTagName>([\n \"gx-ide-ai-message\",\n \"gx-ide-chat-container\",\n \"gx-ide-container\",\n \"gx-ide-sc-chat-container\",\n \"gx-ide-directory-selector\",\n \"gx-ide-empty-state\",\n \"gx-ide-list-selector\",\n \"gx-ide-list-selector-item\",\n \"gx-ide-loader\",\n \"gx-ide-switch-panel\",\n \"gx-ide-switcher\",\n \"gx-ide-test\",\n \"gx-ide-title\",\n \"gx-ide-top-bar\"\n]);\n\nconst componentsWithTranslations = Object.keys(\n allGeneXusIdeUIComponents\n).filter(\n component =>\n !componentsWithoutTranslations.has(component as GeneXusIdeUIControlsTagName)\n);\n\ncomponentsWithTranslations.forEach(testLocale);\n"]}
1
+ {"version":3,"file":"locale.e2e.js","sourceRoot":"","sources":["../../src/testing/locale.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { E2EPage, newE2EPage } from \"@stencil/core/testing\";\nimport { GeneXusIdeUIControlsTagName } from \"../common/types\";\nimport { haveSameStructure } from \"./same-structure.e2e\";\n\nconst COMPONENT_PREFIX = \"gx-ide-\";\nconst languages: { name: string; attr: string }[] = [\n { name: \"chinese\", attr: \"zh\" },\n { name: \"english\", attr: \"en\" },\n { name: \"japanese\", attr: \"ja\" }\n];\n\nconst testLocale = (componentNameWithPrefix: GeneXusIdeUIControlsTagName) => {\n describe(`[locale][${componentNameWithPrefix}]`, () => {\n let page: E2EPage;\n const componentName = componentNameWithPrefix.replace(COMPONENT_PREFIX, \"\");\n\n // This implementation is a WA since we can't evaluate JS classes in the page.\n // TODO: Implement the locale utility as a function, which can be evaluated\n // in the page\n const getTranslations = () =>\n page.evaluate(component => {\n const ASSETS_FOLDER = \"gx-ide-assets/\";\n const DEFAULT_LANGUAGE = \"en\";\n const LANGS_FOLDER = \"langs/\";\n const LANG_PREFIX = \".lang.\";\n const LANG_EXTENSION = \".json\";\n const lang =\n document\n .getElementsByTagName(\"html\")[0]\n .getAttribute(\"lang\")\n ?.valueOf() ?? DEFAULT_LANGUAGE;\n const folder = `${component}/`;\n\n const path =\n `/build/${ASSETS_FOLDER}${folder}${LANGS_FOLDER}${component}${LANG_PREFIX}${lang}${LANG_EXTENSION}` as const;\n\n return new Promise(resolve => {\n fetch(path)\n .then(async langFile => {\n if (langFile.ok) {\n const fileObject = await langFile.json();\n resolve(fileObject);\n } else {\n resolve(undefined);\n }\n })\n .catch(() => resolve(undefined));\n });\n }, componentName);\n\n beforeEach(async () => {\n page = await newE2EPage({\n failOnConsoleError: true,\n html: \"\" // Necessary\n });\n });\n\n it(\"should work without specifying the language (lang attr) in the browser\", async () => {\n const languageFile: any | undefined = await getTranslations();\n expect(languageFile).toBeTruthy();\n });\n\n it(\"should default to english language when there is no language (lang attr) in the browser\", async () => {\n const languageFile: any | undefined = await getTranslations();\n expect(languageFile).toBeTruthy();\n\n await page.evaluate(() =>\n document.documentElement.setAttribute(\"lang\", \"en\")\n );\n\n const languageEnglishFile: any | undefined = await getTranslations();\n expect(languageEnglishFile).toBeTruthy();\n expect(languageFile).toEqual(languageEnglishFile);\n });\n\n languages.forEach(language => {\n it(`should work with ${language.name} language`, async () => {\n await page.evaluate(\n (attr: string) => document.documentElement.setAttribute(\"lang\", attr),\n language.attr\n );\n const languageFile: any | undefined = await getTranslations();\n expect(languageFile).toBeTruthy();\n });\n });\n\n for (let index = 0; index < languages.length - 1; index++) {\n const language1 = languages[index];\n const language2 = languages[index + 1];\n\n // TODO: Complete all translations. At this moment, Japanese and Chinese\n // translations have missing literals\n it(`should translate the same literals (${language1.name} and ${language2.name})`, async () => {\n await page.evaluate(\n (attr: string) => document.documentElement.setAttribute(\"lang\", attr),\n language1.attr\n );\n const language1File: any | undefined = await getTranslations();\n\n await page.evaluate(\n (attr: string) => document.documentElement.setAttribute(\"lang\", attr),\n language2.attr\n );\n const language2File: any | undefined = await getTranslations();\n\n expect(language1File).toBeTruthy();\n expect(language2File).toBeTruthy();\n expect(haveSameStructure(language1File, language2File)).toBe(true);\n });\n }\n });\n};\n\n// TypeScript does not have a built-in type to exhaust a list with union types\nconst allGeneXusIdeUIComponents: { [key in GeneXusIdeUIControlsTagName]: 0 } = {\n \"gx-ide-about\": 0,\n \"gx-ide-ai-assistant\": 0,\n \"gx-ide-ai-message\": 0,\n \"gx-ide-bpm-app-declaration\": 0,\n \"gx-ide-bpm-assign-roles\": 0,\n \"gx-ide-bpm-import-files\": 0,\n \"gx-ide-bpm-import-gxpm\": 0,\n \"gx-ide-bpm-objects-selector\": 0,\n \"gx-ide-bpm-sync-gam-roles\": 0,\n \"gx-ide-bpm-task-documents\": 0,\n \"gx-ide-bpm-timer-duration\": 0,\n \"gx-ide-card\": 0,\n \"gx-ide-chat-container\": 0,\n \"gx-ide-sc-chat-container\": 0,\n \"gx-ide-connect-gx-server\": 0,\n \"gx-ide-container\": 0,\n \"gx-ide-create-kb-from-server\": 0,\n \"gx-ide-current-user-info\": 0,\n \"gx-ide-dashboard-home\": 0,\n \"gx-ide-data-selector\": 0,\n \"gx-ide-data-type-selector\": 0,\n \"gx-ide-deployment-tool\": 0,\n \"gx-ide-design-import\": 0,\n \"gx-ide-directory-selector\": 0,\n \"gx-ide-edit-module-server\": 0,\n \"gx-ide-empty-state\": 0,\n \"gx-ide-entity-selector\": 0,\n \"gx-ide-file-item\": 0,\n \"gx-ide-file-uploader\": 0,\n \"gx-ide-gam-installation-settings\": 0,\n \"gx-ide-kb-manager-export\": 0,\n \"gx-ide-kb-manager-import\": 0,\n \"gx-ide-list-selector\": 0,\n \"gx-ide-list-selector-item\": 0,\n \"gx-ide-loader\": 0,\n \"gx-ide-manage-module-references\": 0,\n \"gx-ide-manage-module-references-v2\": 0,\n \"gx-ide-new-environment\": 0,\n \"gx-ide-new-kb\": 0,\n \"gx-ide-new-object\": 0,\n \"gx-ide-new-version\": 0,\n \"gx-ide-object-selector\": 0,\n \"gx-ide-open-api-import\": 0,\n \"gx-ide-references\": 0,\n \"gx-ide-select-kb-items\": 0,\n \"gx-ide-select-user-team\": 0,\n \"gx-ide-sign-in\": 0,\n \"gx-ide-sign-in-team\": 0,\n \"gx-ide-share-kb\": 0,\n \"gx-ide-start-page\": 0,\n \"gx-ide-status-buttons\": 0,\n \"gx-ide-switch-panel\": 0,\n \"gx-ide-switcher\": 0,\n \"gx-ide-team-dev-commit\": 0,\n \"gx-ide-team-dev-select-recent-comment\": 0,\n \"gx-ide-team-dev-update\": 0,\n \"gx-ide-team-dev-update-partial-selection\": 0,\n \"gx-ide-team-dev-update-to-revision\": 0,\n \"gx-ide-template\": 0,\n \"gx-ide-test\": 0,\n \"gx-ide-title\": 0,\n \"gx-ide-top-bar\": 0,\n \"gx-ide-wf-settings\": 0,\n \"gx-ide-ww-images\": 0,\n \"gx-ide-ww-attributes\": 0,\n \"gx-ide-ww-files\": 0,\n \"gx-ide-navigation-report\": 0,\n \"gx-ide-splash\": 0,\n \"gx-ide-welcome-page\": 0,\n \"gx-ide-bpm-export-xpdl\": 0\n};\n\nconst componentsWithoutTranslations = new Set<GeneXusIdeUIControlsTagName>([\n \"gx-ide-ai-message\",\n \"gx-ide-chat-container\",\n \"gx-ide-container\",\n \"gx-ide-sc-chat-container\",\n \"gx-ide-directory-selector\",\n \"gx-ide-empty-state\",\n \"gx-ide-list-selector\",\n \"gx-ide-list-selector-item\",\n \"gx-ide-loader\",\n \"gx-ide-switch-panel\",\n \"gx-ide-switcher\",\n \"gx-ide-test\",\n \"gx-ide-title\",\n \"gx-ide-top-bar\",\n \"gx-ide-file-item\"\n]);\n\nconst componentsWithTranslations = Object.keys(\n allGeneXusIdeUIComponents\n).filter(\n component =>\n !componentsWithoutTranslations.has(component as GeneXusIdeUIControlsTagName)\n);\n\ncomponentsWithTranslations.forEach(testLocale);\n"]}
@@ -24,7 +24,7 @@ const objectsToListItemData = (objects) => {
24
24
  return itemsData;
25
25
  };
26
26
 
27
- const bpmObjectsSelectorCss = ":root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-01--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-02{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-02--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--color-on-primary)}.gxg-title-03{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-03--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-04{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-04--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-05{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-05--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable)}.gxg-text--negative{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text--gray{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--dimmed)}.gxg-quote{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);font-style:italic}.gxg-quote--negative{color:var(--ds-base-font-color--negative)}.gxg-link{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--ds-base-font-color--link-hover)}.gxg-link:active{color:var(--ds-base-font-color--link-active)}.gxg-link-gray{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed)}.gxg-link-gray:hover{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed);filter:brightness(1.4)}.gxg-alert-error{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--error);display:inline-block}.gxg-alert-warning{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--warning);display:inline-block}.gxg-alert-success{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--success);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--ds-base-font-family-primary);font-weight:var(--gxg-label-font-weight);font-size:var(--gxg-label-font-size);color:var(--gxg-label-color);text-align:center;line-height:1.455em;display:flex;align-items:center}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-scrollbar{}.gxg-scrollbar::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gxg-scrollbar::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gxg-scrollbar::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}:host{display:grid;block-size:100%}.card-regular{background-color:var(--mer-surface__elevation--01);border:var(--mer-border__width--sm) solid var(--mer-border-color__on-elevation--01);border-radius:var(--mer-border__radius--md);padding:var(--mer-spacing--md) var(--mer-spacing--md);display:grid}.card-small{background-color:var(--mer-surface__elevation--02);border-radius:var(--mer-border__radius--sm);padding:var(--mer-spacing--sm) var(--mer-spacing--sm)}.card-small--actionable:hover{background-color:var(--mer-color__neutral-gray--600)}.card-small--actionable:active{background-color:var(--mer-color__neutral-gray--650)}.card-small:focus-visible{outline:var(--focus__outline-width) var(--focus__outline-style) var(--focus__outline-color);outline-offset:var(--focus__outline-offset)}.empty-state{block-size:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--mer-spacing--sm);text-align:center}.empty-state__title,.empty-state__button,.empty-state__link{max-inline-size:300px}.opacity-0{opacity:0}.opacity-1{opacity:1}.display-contents{display:contents}.gxi-hidden{display:none !important}.gxi-full-height{height:100%}.gxi-overflow-auto{overflow:auto}.gxi-display-flex{display:flex}.align-start{display:flex;align-items:start}.align-center{display:flex;align-items:center}.align-end{display:flex;align-items:end}.overflow-auto{overflow:auto}.justify-start{display:flex;justify-content:start}.justify-center{display:flex;justify-content:center}.justify-end{display:flex;justify-content:end}.grid{display:grid;grid-row-gap:var(--gx-ide-grid-row-gap);grid-column-gap:var(--gx-ide-grid-column-gap);grid-template-rows:auto}ch-grid-cell{display:flex}ch-grid{overflow:auto;height:100%}ch-grid-column{z-index:99;border-bottom:1px solid var(--mer-color__neutral-gray--800)}ch-grid-column:first-child{padding-inline-start:var(--gx-ide-container__padding) !important}ch-grid-column:last-child{padding-inline-end:var(--gx-ide-container__padding) !important}ch-grid-cell{--mer-spacing--xs:var(--gx-ide-container__padding)}.layout{display:grid;gap:var(--mer-spacing--lg);box-sizing:border-box}.layout--two-cols{grid-template-columns:1fr 1fr}.layout--space-above{padding-block-start:var(--mer-spacing--lg)}gxg-tabs{box-shadow:none}:host(.gx-ide-component){height:100% !important;display:flex !important;flex-direction:column !important}:host(:focus-within) gx-ide-top-bar::part(wrapper){background-color:var(--color-secondary-enabled)}.gx-ide-main-wrapper{color:var(--gx-ide-component-text-color);font-weight:var(--mer-font__weight--regular);font-size:var(--mer-font__size--xs);font-family:var(--mer-font-family--primary);height:100%;background-color:var(--gx-ide-component-background-color);display:flex;flex-direction:column;flex-grow:1;box-sizing:border-box}.gx-ide-main{flex-grow:1;overflow-y:auto;}.gx-ide-main::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-main::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-main::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-main::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-main::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.gx-ide-overflow{overflow-y:auto;}.gx-ide-overflow::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-overflow::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-overflow::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.tree-view-primary{font-size:var(--mer-font__size--2xs)}p{margin:0;font-size:var(--mer-font__size--xxs)}.buttons-container{display:flex;gap:var(--mer-spacing--xs)}.control-wrapper{display:flex;gap:var(--mer-spacing--xs);align-items:center}.control-wrapper--vertical{flex-direction:column;align-items:start}.controls-wrapper{display:flex;gap:var(--mer-spacing--xs)}.controls-wrapper--vertical{flex-direction:column;align-items:start}.input-text{box-sizing:border-box;background-color:transparent;border:var(--mer-border__width--sm) solid var(--mer-border-color__dim);border-radius:var(--mer-border__width--lg);height:26px;color:var(--mer-text__bright);font-size:var(--mer-font__size--xxs)}.input-text--full-width{align-self:stretch}:host{display:block}.header{display:grid;grid-template-columns:1fr min-content min-content;grid-template-areas:\"label label label\" \"input cancel export\";grid-gap:var(--gx-ide-grid-column-gap)}.header .label{grid-area:label}.header .input{grid-area:input}.header .cancel{grid-area:cancel}.header .export{grid-area:export}";
27
+ const bpmObjectsSelectorCss = ":root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-01--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-02{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-02--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--color-on-primary)}.gxg-title-03{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-03--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-04{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-04--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-05{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-05--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable)}.gxg-text--negative{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text--gray{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--dimmed)}.gxg-quote{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);font-style:italic}.gxg-quote--negative{color:var(--ds-base-font-color--negative)}.gxg-link{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--ds-base-font-color--link-hover)}.gxg-link:active{color:var(--ds-base-font-color--link-active)}.gxg-link-gray{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed)}.gxg-link-gray:hover{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed);filter:brightness(1.4)}.gxg-alert-error{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--error);display:inline-block}.gxg-alert-warning{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--warning);display:inline-block}.gxg-alert-success{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--success);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--ds-base-font-family-primary);font-weight:var(--gxg-label-font-weight);font-size:var(--gxg-label-font-size);color:var(--gxg-label-color);text-align:center;line-height:1.455em;display:flex;align-items:center}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-scrollbar{}.gxg-scrollbar::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gxg-scrollbar::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gxg-scrollbar::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}:host{display:grid;block-size:100%}.card-regular{background-color:var(--mer-surface__elevation--01);border:var(--mer-border__width--sm) solid var(--mer-border-color__on-elevation--01);border-radius:var(--mer-border__radius--md);padding:var(--mer-spacing--md) var(--mer-spacing--md);display:grid}.card-small{background-color:var(--mer-surface__elevation--02);border-radius:var(--mer-border__radius--sm);padding:var(--mer-spacing--sm) var(--mer-spacing--sm)}.card-small--actionable:hover{background-color:var(--mer-color__neutral-gray--600)}.card-small--actionable:active{background-color:var(--mer-color__neutral-gray--650)}.card-small:focus-visible{outline:var(--focus__outline-width) var(--focus__outline-style) var(--focus__outline-color);outline-offset:var(--focus__outline-offset)}.empty-state{block-size:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--mer-spacing--sm);text-align:center}.empty-state__title,.empty-state__button,.empty-state__link{max-inline-size:300px}.opacity-0{opacity:0}.opacity-1{opacity:1}.display-contents{display:contents}.pill-tag{padding:1px 4px;border-radius:2px;min-inline-size:40px;text-align:center;margin-inline-end:10px;font-size:11px}.gxi-hidden{display:none !important}.gxi-full-height{height:100%}.gxi-overflow-auto{overflow:auto}.gxi-display-flex{display:flex}.align-start{display:flex;align-items:start}.align-center{display:flex;align-items:center}.align-end{display:flex;align-items:end}.overflow-auto{overflow:auto}.justify-start{display:flex;justify-content:start}.justify-center{display:flex;justify-content:center}.justify-end{display:flex;justify-content:end}.grid{display:grid;grid-row-gap:var(--gx-ide-grid-row-gap);grid-column-gap:var(--gx-ide-grid-column-gap);grid-template-rows:auto}ch-grid-cell{display:flex}ch-grid{overflow:auto;height:100%}ch-grid-column{z-index:99;border-bottom:1px solid var(--mer-color__neutral-gray--800)}ch-grid-column:first-child{padding-inline-start:var(--gx-ide-container__padding) !important}ch-grid-column:last-child{padding-inline-end:var(--gx-ide-container__padding) !important}ch-grid-cell{--mer-spacing--xs:var(--gx-ide-container__padding)}.layout{display:grid;gap:var(--mer-spacing--lg);box-sizing:border-box}.layout--two-cols{grid-template-columns:1fr 1fr}.layout--space-above{padding-block-start:var(--mer-spacing--lg)}gxg-tabs{box-shadow:none}:host(.gx-ide-component){height:100% !important;display:flex !important;flex-direction:column !important}:host(:focus-within) gx-ide-top-bar::part(wrapper){background-color:var(--color-secondary-enabled)}.gx-ide-main-wrapper{color:var(--gx-ide-component-text-color);font-weight:var(--mer-font__weight--regular);font-size:var(--mer-font__size--xs);font-family:var(--mer-font-family--primary);height:100%;background-color:var(--gx-ide-component-background-color);display:flex;flex-direction:column;flex-grow:1;box-sizing:border-box}.gx-ide-main{flex-grow:1;overflow-y:auto;}.gx-ide-main::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-main::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-main::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-main::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-main::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.gx-ide-overflow{overflow-y:auto;}.gx-ide-overflow::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-overflow::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-overflow::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.tree-view-primary{font-size:var(--mer-font__size--2xs)}p{margin:0;font-size:var(--mer-font__size--xxs)}.buttons-container{display:flex;gap:var(--mer-spacing--xs)}.control-wrapper{display:flex;gap:var(--mer-spacing--xs);align-items:center}.control-wrapper--vertical{flex-direction:column;align-items:start}.controls-wrapper{display:flex;gap:var(--mer-spacing--xs)}.controls-wrapper--vertical{flex-direction:column;align-items:start}.input-text{box-sizing:border-box;background-color:transparent;border:var(--mer-border__width--sm) solid var(--mer-border-color__dim);border-radius:var(--mer-border__width--lg);height:26px;color:var(--mer-text__bright);font-size:var(--mer-font__size--xxs)}.input-text--full-width{align-self:stretch}:host{display:block}.header{display:grid;grid-template-columns:1fr min-content min-content;grid-template-areas:\"label label label\" \"input cancel export\";grid-gap:var(--gx-ide-grid-column-gap)}.header .label{grid-area:label}.header .input{grid-area:input}.header .cancel{grid-area:cancel}.header .export{grid-area:export}";
28
28
 
29
29
  const GxIdeBpmExportXpdl = /*@__PURE__*/ proxyCustomElement(class GxIdeBpmExportXpdl extends HTMLElement {
30
30
  constructor() {