@genexus/genexus-ide-ui 1.1.55 → 1.1.57

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 (412) hide show
  1. package/dist/cjs/assets-manager-089e91b1.js +7 -0
  2. package/dist/cjs/assets-manager-089e91b1.js.map +1 -0
  3. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  4. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +8 -4
  5. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js.map +1 -1
  6. package/dist/cjs/gx-ide-bpm-task-documents.cjs.entry.js +8 -4
  7. package/dist/cjs/gx-ide-bpm-task-documents.cjs.entry.js.map +1 -1
  8. package/dist/cjs/gx-ide-chat-container_2.cjs.entry.js +12 -16
  9. package/dist/cjs/gx-ide-chat-container_2.cjs.entry.js.map +1 -1
  10. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +8 -4
  11. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
  12. package/dist/cjs/gx-ide-current-user-info.cjs.entry.js +6 -2
  13. package/dist/cjs/gx-ide-current-user-info.cjs.entry.js.map +1 -1
  14. package/dist/cjs/gx-ide-data-selector.cjs.entry.js +6 -2
  15. package/dist/cjs/gx-ide-data-selector.cjs.entry.js.map +1 -1
  16. package/dist/cjs/gx-ide-data-type-selector.cjs.entry.js +6 -2
  17. package/dist/cjs/gx-ide-data-type-selector.cjs.entry.js.map +1 -1
  18. package/dist/cjs/gx-ide-design-import.cjs.entry.js +11 -7
  19. package/dist/cjs/gx-ide-design-import.cjs.entry.js.map +1 -1
  20. package/dist/cjs/gx-ide-details-acknowledgements.cjs.entry.js +6 -2
  21. package/dist/cjs/gx-ide-details-acknowledgements.cjs.entry.js.map +1 -1
  22. package/dist/cjs/gx-ide-entity-selector.cjs.entry.js +7 -3
  23. package/dist/cjs/gx-ide-entity-selector.cjs.entry.js.map +1 -1
  24. package/dist/cjs/gx-ide-file-item.cjs.entry.js +9 -5
  25. package/dist/cjs/gx-ide-file-item.cjs.entry.js.map +1 -1
  26. package/dist/cjs/gx-ide-file-uploader.cjs.entry.js +6 -2
  27. package/dist/cjs/gx-ide-file-uploader.cjs.entry.js.map +1 -1
  28. package/dist/cjs/gx-ide-json-import.cjs.entry.js +7 -3
  29. package/dist/cjs/gx-ide-json-import.cjs.entry.js.map +1 -1
  30. package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js +10 -6
  31. package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js.map +1 -1
  32. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +9 -5
  33. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js.map +1 -1
  34. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js +7 -3
  35. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js.map +1 -1
  36. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +6 -2
  37. package/dist/cjs/gx-ide-new-kb.cjs.entry.js.map +1 -1
  38. package/dist/cjs/gx-ide-new-version.cjs.entry.js +15 -3
  39. package/dist/cjs/gx-ide-new-version.cjs.entry.js.map +1 -1
  40. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +7 -3
  41. package/dist/cjs/gx-ide-object-selector.cjs.entry.js.map +1 -1
  42. package/dist/cjs/gx-ide-open-api-import.cjs.entry.js +7 -3
  43. package/dist/cjs/gx-ide-open-api-import.cjs.entry.js.map +1 -1
  44. package/dist/cjs/gx-ide-plugin-details.cjs.entry.js +8 -4
  45. package/dist/cjs/gx-ide-plugin-details.cjs.entry.js.map +1 -1
  46. package/dist/cjs/gx-ide-plugin-explorer.cjs.entry.js +6 -2
  47. package/dist/cjs/gx-ide-plugin-explorer.cjs.entry.js.map +1 -1
  48. package/dist/cjs/gx-ide-references.cjs.entry.js +7 -3
  49. package/dist/cjs/gx-ide-references.cjs.entry.js.map +1 -1
  50. package/dist/cjs/gx-ide-sc-chat-container.cjs.entry.js +263 -20
  51. package/dist/cjs/gx-ide-sc-chat-container.cjs.entry.js.map +1 -1
  52. package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js +7 -3
  53. package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js.map +1 -1
  54. package/dist/cjs/gx-ide-server-selector.cjs.entry.js +9 -5
  55. package/dist/cjs/gx-ide-server-selector.cjs.entry.js.map +1 -1
  56. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +6 -2
  57. package/dist/cjs/gx-ide-share-kb.cjs.entry.js.map +1 -1
  58. package/dist/cjs/gx-ide-splash.cjs.entry.js +6 -2
  59. package/dist/cjs/gx-ide-splash.cjs.entry.js.map +1 -1
  60. package/dist/cjs/gx-ide-start-page.cjs.entry.js +9 -5
  61. package/dist/cjs/gx-ide-start-page.cjs.entry.js.map +1 -1
  62. package/dist/cjs/gx-ide-starting-template.cjs.entry.js +6 -2
  63. package/dist/cjs/gx-ide-starting-template.cjs.entry.js.map +1 -1
  64. package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js +14 -10
  65. package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js.map +1 -1
  66. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +7 -3
  67. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
  68. package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js +10 -6
  69. package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js.map +1 -1
  70. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +6 -2
  71. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js.map +1 -1
  72. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +17 -13
  73. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js.map +1 -1
  74. package/dist/cjs/gx-ide-welcome-page.cjs.entry.js +6 -2
  75. package/dist/cjs/gx-ide-welcome-page.cjs.entry.js.map +1 -1
  76. package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js +6 -2
  77. package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js.map +1 -1
  78. package/dist/cjs/gx-ide-ww-files.cjs.entry.js +8 -4
  79. package/dist/cjs/gx-ide-ww-files.cjs.entry.js.map +1 -1
  80. package/dist/cjs/index.cjs.js +0 -3
  81. package/dist/cjs/index.cjs.js.map +1 -1
  82. package/dist/cjs/loader.cjs.js +1 -1
  83. package/dist/cjs/mer-animated-dots-001c7465.js +79 -0
  84. package/dist/cjs/mer-animated-dots-001c7465.js.map +1 -0
  85. package/dist/cjs/{tabular-grid-render-b1767da2.js → tabular-grid-render-f97a5ab3.js} +18 -14
  86. package/dist/cjs/tabular-grid-render-f97a5ab3.js.map +1 -0
  87. package/dist/cjs/{utilities-0e316b39.js → utilities-0815a260.js} +10 -6
  88. package/dist/cjs/utilities-0815a260.js.map +1 -0
  89. package/dist/collection/components/chat/chat-container/chat-container.js +2 -10
  90. package/dist/collection/components/chat/chat-container/chat-container.js.map +1 -1
  91. package/dist/collection/components/new-version/gx-ide-assets/new-version/shortcuts.json +15 -0
  92. package/dist/collection/components/new-version/new-version.js +17 -4
  93. package/dist/collection/components/new-version/new-version.js.map +1 -1
  94. package/dist/collection/index.js +0 -2
  95. package/dist/collection/index.js.map +1 -1
  96. package/dist/collection/showcase/chat-container/callbacks.js +9 -9
  97. package/dist/collection/showcase/chat-container/callbacks.js.map +1 -1
  98. package/dist/collection/showcase/chat-container/chat.showcase.js +4 -4
  99. package/dist/collection/showcase/chat-container/chat.showcase.js.map +1 -1
  100. package/dist/collection/showcase/chat-container/models.js +18 -18
  101. package/dist/collection/showcase/chat-container/models.js.map +1 -1
  102. package/dist/components/chat-container.js +6 -11
  103. package/dist/components/chat-container.js.map +1 -1
  104. package/dist/components/chat-welcome.js +4 -1
  105. package/dist/components/chat-welcome.js.map +1 -1
  106. package/dist/components/entity-selector.js +4 -1
  107. package/dist/components/entity-selector.js.map +1 -1
  108. package/dist/components/file-item.js +4 -1
  109. package/dist/components/file-item.js.map +1 -1
  110. package/dist/components/gx-ide-bpm-app-declaration.js +4 -1
  111. package/dist/components/gx-ide-bpm-app-declaration.js.map +1 -1
  112. package/dist/components/gx-ide-bpm-task-documents.js +4 -1
  113. package/dist/components/gx-ide-bpm-task-documents.js.map +1 -1
  114. package/dist/components/gx-ide-create-kb-from-server.js +4 -1
  115. package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
  116. package/dist/components/gx-ide-current-user-info.js +4 -1
  117. package/dist/components/gx-ide-current-user-info.js.map +1 -1
  118. package/dist/components/gx-ide-data-selector.js +4 -1
  119. package/dist/components/gx-ide-data-selector.js.map +1 -1
  120. package/dist/components/gx-ide-data-type-selector.js +4 -1
  121. package/dist/components/gx-ide-data-type-selector.js.map +1 -1
  122. package/dist/components/gx-ide-design-import.js +4 -1
  123. package/dist/components/gx-ide-design-import.js.map +1 -1
  124. package/dist/components/gx-ide-details-acknowledgements.js +4 -1
  125. package/dist/components/gx-ide-details-acknowledgements.js.map +1 -1
  126. package/dist/components/gx-ide-file-uploader.js +4 -1
  127. package/dist/components/gx-ide-file-uploader.js.map +1 -1
  128. package/dist/components/gx-ide-json-import.js +4 -1
  129. package/dist/components/gx-ide-json-import.js.map +1 -1
  130. package/dist/components/gx-ide-kb-manager-export.js +4 -1
  131. package/dist/components/gx-ide-kb-manager-export.js.map +1 -1
  132. package/dist/components/gx-ide-kb-manager-import.js +4 -1
  133. package/dist/components/gx-ide-kb-manager-import.js.map +1 -1
  134. package/dist/components/gx-ide-manage-module-references.js +4 -1
  135. package/dist/components/gx-ide-manage-module-references.js.map +1 -1
  136. package/dist/components/gx-ide-new-kb.js +4 -1
  137. package/dist/components/gx-ide-new-kb.js.map +1 -1
  138. package/dist/components/gx-ide-new-version.js +17 -4
  139. package/dist/components/gx-ide-new-version.js.map +1 -1
  140. package/dist/components/gx-ide-object-selector.js +4 -1
  141. package/dist/components/gx-ide-object-selector.js.map +1 -1
  142. package/dist/components/gx-ide-open-api-import.js +4 -1
  143. package/dist/components/gx-ide-open-api-import.js.map +1 -1
  144. package/dist/components/gx-ide-plugin-details.js +4 -1
  145. package/dist/components/gx-ide-plugin-details.js.map +1 -1
  146. package/dist/components/gx-ide-plugin-explorer.js +4 -1
  147. package/dist/components/gx-ide-plugin-explorer.js.map +1 -1
  148. package/dist/components/gx-ide-references.js +4 -1
  149. package/dist/components/gx-ide-references.js.map +1 -1
  150. package/dist/components/gx-ide-sc-chat-container.js +263 -20
  151. package/dist/components/gx-ide-sc-chat-container.js.map +1 -1
  152. package/dist/components/gx-ide-server-selector.js +4 -1
  153. package/dist/components/gx-ide-server-selector.js.map +1 -1
  154. package/dist/components/gx-ide-share-kb.js +4 -1
  155. package/dist/components/gx-ide-share-kb.js.map +1 -1
  156. package/dist/components/gx-ide-splash.js +4 -1
  157. package/dist/components/gx-ide-splash.js.map +1 -1
  158. package/dist/components/gx-ide-start-page.js +4 -1
  159. package/dist/components/gx-ide-start-page.js.map +1 -1
  160. package/dist/components/gx-ide-starting-template.js +4 -1
  161. package/dist/components/gx-ide-starting-template.js.map +1 -1
  162. package/dist/components/gx-ide-team-dev-bring-changes.js +4 -1
  163. package/dist/components/gx-ide-team-dev-bring-changes.js.map +1 -1
  164. package/dist/components/gx-ide-team-dev-history.js +4 -1
  165. package/dist/components/gx-ide-team-dev-history.js.map +1 -1
  166. package/dist/components/gx-ide-team-dev-update-partial-selection.js +4 -1
  167. package/dist/components/gx-ide-team-dev-update-partial-selection.js.map +1 -1
  168. package/dist/components/gx-ide-team-dev-update.js +4 -1
  169. package/dist/components/gx-ide-team-dev-update.js.map +1 -1
  170. package/dist/components/gx-ide-welcome-page.js +4 -1
  171. package/dist/components/gx-ide-welcome-page.js.map +1 -1
  172. package/dist/components/gx-ide-ww-attributes.js +4 -1
  173. package/dist/components/gx-ide-ww-attributes.js.map +1 -1
  174. package/dist/components/gx-ide-ww-files.js +4 -1
  175. package/dist/components/gx-ide-ww-files.js.map +1 -1
  176. package/dist/components/index.js +0 -1
  177. package/dist/components/index.js.map +1 -1
  178. package/dist/components/mer-animated-dots.js +81 -0
  179. package/dist/components/mer-animated-dots.js.map +1 -0
  180. package/dist/components/select-kb-items.js +4 -1
  181. package/dist/components/select-kb-items.js.map +1 -1
  182. package/dist/components/tabular-grid-render.js +4 -1
  183. package/dist/components/tabular-grid-render.js.map +1 -1
  184. package/dist/components/utilities.js +4 -1
  185. package/dist/components/utilities.js.map +1 -1
  186. package/dist/esm/assets-manager-7d6fc08f.js +5 -0
  187. package/dist/esm/assets-manager-7d6fc08f.js.map +1 -0
  188. package/dist/esm/genexus-ide-ui.js +1 -1
  189. package/dist/esm/gx-ide-bpm-app-declaration.entry.js +5 -1
  190. package/dist/esm/gx-ide-bpm-app-declaration.entry.js.map +1 -1
  191. package/dist/esm/gx-ide-bpm-task-documents.entry.js +5 -1
  192. package/dist/esm/gx-ide-bpm-task-documents.entry.js.map +1 -1
  193. package/dist/esm/gx-ide-chat-container_2.entry.js +7 -11
  194. package/dist/esm/gx-ide-chat-container_2.entry.js.map +1 -1
  195. package/dist/esm/gx-ide-create-kb-from-server.entry.js +5 -1
  196. package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
  197. package/dist/esm/gx-ide-current-user-info.entry.js +5 -1
  198. package/dist/esm/gx-ide-current-user-info.entry.js.map +1 -1
  199. package/dist/esm/gx-ide-data-selector.entry.js +5 -1
  200. package/dist/esm/gx-ide-data-selector.entry.js.map +1 -1
  201. package/dist/esm/gx-ide-data-type-selector.entry.js +5 -1
  202. package/dist/esm/gx-ide-data-type-selector.entry.js.map +1 -1
  203. package/dist/esm/gx-ide-design-import.entry.js +5 -1
  204. package/dist/esm/gx-ide-design-import.entry.js.map +1 -1
  205. package/dist/esm/gx-ide-details-acknowledgements.entry.js +5 -1
  206. package/dist/esm/gx-ide-details-acknowledgements.entry.js.map +1 -1
  207. package/dist/esm/gx-ide-entity-selector.entry.js +5 -1
  208. package/dist/esm/gx-ide-entity-selector.entry.js.map +1 -1
  209. package/dist/esm/gx-ide-file-item.entry.js +5 -1
  210. package/dist/esm/gx-ide-file-item.entry.js.map +1 -1
  211. package/dist/esm/gx-ide-file-uploader.entry.js +5 -1
  212. package/dist/esm/gx-ide-file-uploader.entry.js.map +1 -1
  213. package/dist/esm/gx-ide-json-import.entry.js +5 -1
  214. package/dist/esm/gx-ide-json-import.entry.js.map +1 -1
  215. package/dist/esm/gx-ide-kb-manager-export.entry.js +5 -1
  216. package/dist/esm/gx-ide-kb-manager-export.entry.js.map +1 -1
  217. package/dist/esm/gx-ide-kb-manager-import.entry.js +5 -1
  218. package/dist/esm/gx-ide-kb-manager-import.entry.js.map +1 -1
  219. package/dist/esm/gx-ide-manage-module-references.entry.js +5 -1
  220. package/dist/esm/gx-ide-manage-module-references.entry.js.map +1 -1
  221. package/dist/esm/gx-ide-new-kb.entry.js +5 -1
  222. package/dist/esm/gx-ide-new-kb.entry.js.map +1 -1
  223. package/dist/esm/gx-ide-new-version.entry.js +16 -4
  224. package/dist/esm/gx-ide-new-version.entry.js.map +1 -1
  225. package/dist/esm/gx-ide-object-selector.entry.js +5 -1
  226. package/dist/esm/gx-ide-object-selector.entry.js.map +1 -1
  227. package/dist/esm/gx-ide-open-api-import.entry.js +5 -1
  228. package/dist/esm/gx-ide-open-api-import.entry.js.map +1 -1
  229. package/dist/esm/gx-ide-plugin-details.entry.js +5 -1
  230. package/dist/esm/gx-ide-plugin-details.entry.js.map +1 -1
  231. package/dist/esm/gx-ide-plugin-explorer.entry.js +5 -1
  232. package/dist/esm/gx-ide-plugin-explorer.entry.js.map +1 -1
  233. package/dist/esm/gx-ide-references.entry.js +5 -1
  234. package/dist/esm/gx-ide-references.entry.js.map +1 -1
  235. package/dist/esm/gx-ide-sc-chat-container.entry.js +263 -20
  236. package/dist/esm/gx-ide-sc-chat-container.entry.js.map +1 -1
  237. package/dist/esm/gx-ide-select-kb-items.entry.js +5 -1
  238. package/dist/esm/gx-ide-select-kb-items.entry.js.map +1 -1
  239. package/dist/esm/gx-ide-server-selector.entry.js +5 -1
  240. package/dist/esm/gx-ide-server-selector.entry.js.map +1 -1
  241. package/dist/esm/gx-ide-share-kb.entry.js +5 -1
  242. package/dist/esm/gx-ide-share-kb.entry.js.map +1 -1
  243. package/dist/esm/gx-ide-splash.entry.js +5 -1
  244. package/dist/esm/gx-ide-splash.entry.js.map +1 -1
  245. package/dist/esm/gx-ide-start-page.entry.js +5 -1
  246. package/dist/esm/gx-ide-start-page.entry.js.map +1 -1
  247. package/dist/esm/gx-ide-starting-template.entry.js +5 -1
  248. package/dist/esm/gx-ide-starting-template.entry.js.map +1 -1
  249. package/dist/esm/gx-ide-team-dev-bring-changes.entry.js +7 -3
  250. package/dist/esm/gx-ide-team-dev-bring-changes.entry.js.map +1 -1
  251. package/dist/esm/gx-ide-team-dev-commit.entry.js +7 -3
  252. package/dist/esm/gx-ide-team-dev-commit.entry.js.map +1 -1
  253. package/dist/esm/gx-ide-team-dev-history.entry.js +6 -2
  254. package/dist/esm/gx-ide-team-dev-history.entry.js.map +1 -1
  255. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +5 -1
  256. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js.map +1 -1
  257. package/dist/esm/gx-ide-team-dev-update.entry.js +7 -3
  258. package/dist/esm/gx-ide-team-dev-update.entry.js.map +1 -1
  259. package/dist/esm/gx-ide-welcome-page.entry.js +5 -1
  260. package/dist/esm/gx-ide-welcome-page.entry.js.map +1 -1
  261. package/dist/esm/gx-ide-ww-attributes.entry.js +5 -1
  262. package/dist/esm/gx-ide-ww-attributes.entry.js.map +1 -1
  263. package/dist/esm/gx-ide-ww-files.entry.js +5 -1
  264. package/dist/esm/gx-ide-ww-files.entry.js.map +1 -1
  265. package/dist/esm/index.js +0 -2
  266. package/dist/esm/index.js.map +1 -1
  267. package/dist/esm/loader.js +1 -1
  268. package/dist/esm/mer-animated-dots-75d88f7e.js +77 -0
  269. package/dist/esm/mer-animated-dots-75d88f7e.js.map +1 -0
  270. package/dist/esm/{tabular-grid-render-96d67a8c.js → tabular-grid-render-2fca02f4.js} +7 -3
  271. package/dist/esm/tabular-grid-render-2fca02f4.js.map +1 -0
  272. package/dist/esm/{utilities-6624d90e.js → utilities-0cdc28eb.js} +6 -2
  273. package/dist/esm/utilities-0cdc28eb.js.map +1 -0
  274. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  275. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  276. package/dist/genexus-ide-ui/gx-ide-assets/new-version/shortcuts.json +15 -0
  277. package/dist/genexus-ide-ui/index.esm.js +0 -2
  278. package/dist/genexus-ide-ui/index.esm.js.map +1 -1
  279. package/dist/genexus-ide-ui/{p-2ce60f4c.entry.js → p-02883452.entry.js} +28 -20
  280. package/dist/genexus-ide-ui/{p-2ce60f4c.entry.js.map → p-02883452.entry.js.map} +1 -1
  281. package/dist/genexus-ide-ui/{p-c5eac770.entry.js → p-0548097b.entry.js} +10 -2
  282. package/dist/genexus-ide-ui/{p-c5eac770.entry.js.map → p-0548097b.entry.js.map} +1 -1
  283. package/dist/genexus-ide-ui/{p-64dbc4c0.entry.js → p-082780cc.entry.js} +10 -2
  284. package/dist/genexus-ide-ui/{p-64dbc4c0.entry.js.map → p-082780cc.entry.js.map} +1 -1
  285. package/dist/genexus-ide-ui/{p-9ac4aaa0.entry.js → p-1baf026c.entry.js} +16 -8
  286. package/dist/genexus-ide-ui/{p-9ac4aaa0.entry.js.map → p-1baf026c.entry.js.map} +1 -1
  287. package/dist/genexus-ide-ui/{p-098a7288.entry.js → p-1d647672.entry.js} +19 -11
  288. package/dist/genexus-ide-ui/{p-098a7288.entry.js.map → p-1d647672.entry.js.map} +1 -1
  289. package/dist/genexus-ide-ui/{p-13630aa2.entry.js → p-1e1d2672.entry.js} +51 -43
  290. package/dist/genexus-ide-ui/{p-13630aa2.entry.js.map → p-1e1d2672.entry.js.map} +1 -1
  291. package/dist/genexus-ide-ui/{p-b6a75c44.entry.js → p-207a698a.entry.js} +57 -49
  292. package/dist/genexus-ide-ui/{p-b6a75c44.entry.js.map → p-207a698a.entry.js.map} +1 -1
  293. package/dist/genexus-ide-ui/{p-d18c51fe.entry.js → p-2726ab59.entry.js} +18 -10
  294. package/dist/genexus-ide-ui/{p-d18c51fe.entry.js.map → p-2726ab59.entry.js.map} +1 -1
  295. package/dist/genexus-ide-ui/{p-0c5b7e75.entry.js → p-27633aae.entry.js} +10 -2
  296. package/dist/genexus-ide-ui/{p-0c5b7e75.entry.js.map → p-27633aae.entry.js.map} +1 -1
  297. package/dist/genexus-ide-ui/{p-2fe7ffc8.entry.js → p-28c11aff.entry.js} +32 -24
  298. package/dist/genexus-ide-ui/{p-2fe7ffc8.entry.js.map → p-28c11aff.entry.js.map} +1 -1
  299. package/dist/genexus-ide-ui/{p-3b955964.entry.js → p-2a51ea80.entry.js} +10 -2
  300. package/dist/genexus-ide-ui/{p-3b955964.entry.js.map → p-2a51ea80.entry.js.map} +1 -1
  301. package/dist/genexus-ide-ui/{p-1056dfe7.entry.js → p-336bb2ce.entry.js} +28 -20
  302. package/dist/genexus-ide-ui/{p-1056dfe7.entry.js.map → p-336bb2ce.entry.js.map} +1 -1
  303. package/dist/genexus-ide-ui/{p-ac026635.entry.js → p-364e8ecb.entry.js} +16 -8
  304. package/dist/genexus-ide-ui/{p-ac026635.entry.js.map → p-364e8ecb.entry.js.map} +1 -1
  305. package/dist/genexus-ide-ui/p-3c14bdfc.entry.js +234 -0
  306. package/dist/genexus-ide-ui/p-3c14bdfc.entry.js.map +1 -0
  307. package/dist/genexus-ide-ui/{p-1d044bf5.entry.js → p-4548ae72.entry.js} +17 -9
  308. package/dist/genexus-ide-ui/{p-1d044bf5.entry.js.map → p-4548ae72.entry.js.map} +1 -1
  309. package/dist/genexus-ide-ui/{p-80e49324.entry.js → p-46bb921b.entry.js} +36 -28
  310. package/dist/genexus-ide-ui/{p-80e49324.entry.js.map → p-46bb921b.entry.js.map} +1 -1
  311. package/dist/genexus-ide-ui/{p-11a60dbe.entry.js → p-506760d7.entry.js} +10 -2
  312. package/dist/genexus-ide-ui/{p-11a60dbe.entry.js.map → p-506760d7.entry.js.map} +1 -1
  313. package/dist/genexus-ide-ui/p-6e29711e.entry.js +608 -0
  314. package/dist/genexus-ide-ui/p-6e29711e.entry.js.map +1 -0
  315. package/dist/genexus-ide-ui/{p-7b986243.entry.js → p-71d4d3dd.entry.js} +32 -24
  316. package/dist/genexus-ide-ui/{p-7b986243.entry.js.map → p-71d4d3dd.entry.js.map} +1 -1
  317. package/dist/genexus-ide-ui/{p-891faf90.entry.js → p-77c315d9.entry.js} +28 -20
  318. package/dist/genexus-ide-ui/{p-891faf90.entry.js.map → p-77c315d9.entry.js.map} +1 -1
  319. package/dist/genexus-ide-ui/{p-18bbaa49.entry.js → p-7c95f511.entry.js} +16 -8
  320. package/dist/genexus-ide-ui/{p-18bbaa49.entry.js.map → p-7c95f511.entry.js.map} +1 -1
  321. package/dist/genexus-ide-ui/{p-eedb407c.entry.js → p-7e3cccf7.entry.js} +10 -2
  322. package/dist/genexus-ide-ui/{p-eedb407c.entry.js.map → p-7e3cccf7.entry.js.map} +1 -1
  323. package/dist/genexus-ide-ui/{p-410a35da.entry.js → p-8925fc99.entry.js} +40 -32
  324. package/dist/genexus-ide-ui/{p-410a35da.entry.js.map → p-8925fc99.entry.js.map} +1 -1
  325. package/dist/genexus-ide-ui/{p-072419f9.entry.js → p-94f74c12.entry.js} +18 -10
  326. package/dist/genexus-ide-ui/{p-072419f9.entry.js.map → p-94f74c12.entry.js.map} +1 -1
  327. package/dist/genexus-ide-ui/{p-d24c1115.entry.js → p-97f6438c.entry.js} +67 -59
  328. package/dist/genexus-ide-ui/{p-d24c1115.entry.js.map → p-97f6438c.entry.js.map} +1 -1
  329. package/dist/genexus-ide-ui/{p-9270c80f.entry.js → p-981873da.entry.js} +114 -118
  330. package/dist/genexus-ide-ui/p-981873da.entry.js.map +1 -0
  331. package/dist/genexus-ide-ui/{p-17b54532.entry.js → p-99b1dfd7.entry.js} +39 -31
  332. package/dist/genexus-ide-ui/{p-17b54532.entry.js.map → p-99b1dfd7.entry.js.map} +1 -1
  333. package/dist/genexus-ide-ui/{p-e1d0adf6.entry.js → p-9f7c347c.entry.js} +24 -16
  334. package/dist/genexus-ide-ui/{p-e1d0adf6.entry.js.map → p-9f7c347c.entry.js.map} +1 -1
  335. package/dist/genexus-ide-ui/{p-eacc81c8.entry.js → p-a28c2a64.entry.js} +122 -114
  336. package/dist/genexus-ide-ui/{p-eacc81c8.entry.js.map → p-a28c2a64.entry.js.map} +1 -1
  337. package/dist/genexus-ide-ui/{p-cccd6565.entry.js → p-a73db549.entry.js} +10 -2
  338. package/dist/genexus-ide-ui/{p-cccd6565.entry.js.map → p-a73db549.entry.js.map} +1 -1
  339. package/dist/genexus-ide-ui/{p-547fbde8.entry.js → p-be1ceb01.entry.js} +28 -20
  340. package/dist/genexus-ide-ui/{p-547fbde8.entry.js.map → p-be1ceb01.entry.js.map} +1 -1
  341. package/dist/genexus-ide-ui/{p-7adb9d1f.entry.js → p-c133095b.entry.js} +78 -70
  342. package/dist/genexus-ide-ui/{p-7adb9d1f.entry.js.map → p-c133095b.entry.js.map} +1 -1
  343. package/dist/genexus-ide-ui/{p-a58048e9.entry.js → p-c1c3996c.entry.js} +12 -4
  344. package/dist/genexus-ide-ui/{p-a58048e9.entry.js.map → p-c1c3996c.entry.js.map} +1 -1
  345. package/dist/genexus-ide-ui/{p-7551c2e9.entry.js → p-c426a3e7.entry.js} +22 -14
  346. package/dist/genexus-ide-ui/{p-7551c2e9.entry.js.map → p-c426a3e7.entry.js.map} +1 -1
  347. package/dist/genexus-ide-ui/{p-4f88fecd.entry.js → p-d12739cf.entry.js} +17 -9
  348. package/dist/genexus-ide-ui/{p-4f88fecd.entry.js.map → p-d12739cf.entry.js.map} +1 -1
  349. package/dist/genexus-ide-ui/{p-c8270f7d.js → p-d3ee56a4.js} +45 -37
  350. package/dist/genexus-ide-ui/{p-c8270f7d.js.map → p-d3ee56a4.js.map} +1 -1
  351. package/dist/genexus-ide-ui/p-d42e842b.js +7 -0
  352. package/dist/genexus-ide-ui/p-d42e842b.js.map +1 -0
  353. package/dist/genexus-ide-ui/{p-401bfc97.js → p-d4ecd3bb.js} +9366 -7152
  354. package/dist/genexus-ide-ui/p-d4ecd3bb.js.map +1 -0
  355. package/dist/genexus-ide-ui/{p-48e87e4f.entry.js → p-de6e9132.entry.js} +71 -63
  356. package/dist/genexus-ide-ui/{p-48e87e4f.entry.js.map → p-de6e9132.entry.js.map} +1 -1
  357. package/dist/genexus-ide-ui/{p-05fa08d7.entry.js → p-e4e3a7af.entry.js} +19 -11
  358. package/dist/genexus-ide-ui/{p-05fa08d7.entry.js.map → p-e4e3a7af.entry.js.map} +1 -1
  359. package/dist/genexus-ide-ui/{p-a24571ca.js → p-ea4b35b6.js} +19 -11
  360. package/dist/genexus-ide-ui/{p-a24571ca.js.map → p-ea4b35b6.js.map} +1 -1
  361. package/dist/genexus-ide-ui/{p-bd0ffc08.entry.js → p-f47b08c5.entry.js} +44 -36
  362. package/dist/genexus-ide-ui/{p-bd0ffc08.entry.js.map → p-f47b08c5.entry.js.map} +1 -1
  363. package/dist/types/components/new-version/new-version.d.ts +4 -0
  364. package/dist/types/index.d.ts +0 -2
  365. package/package.json +9 -8
  366. package/dist/cjs/MERCURY_ASSETS-f14e91ff.js +0 -9
  367. package/dist/cjs/MERCURY_ASSETS-f14e91ff.js.map +0 -1
  368. package/dist/cjs/render-item.lit-3f18e009.js +0 -329
  369. package/dist/cjs/render-item.lit-3f18e009.js.map +0 -1
  370. package/dist/cjs/tabular-grid-render-b1767da2.js.map +0 -1
  371. package/dist/cjs/utilities-0e316b39.js.map +0 -1
  372. package/dist/collection/components/chat/chat-container/gx-ide-assets/chat-container/chat-lit.css +0 -376
  373. package/dist/collection/components/chat/lit-custom-render/actions.lit.js +0 -27
  374. package/dist/collection/components/chat/lit-custom-render/actions.lit.js.map +0 -1
  375. package/dist/collection/components/chat/lit-custom-render/code-block.lit.js +0 -46
  376. package/dist/collection/components/chat/lit-custom-render/code-block.lit.js.map +0 -1
  377. package/dist/collection/components/chat/lit-custom-render/dots-animation.js +0 -61
  378. package/dist/collection/components/chat/lit-custom-render/dots-animation.js.map +0 -1
  379. package/dist/collection/components/chat/lit-custom-render/render-item.lit.js +0 -122
  380. package/dist/collection/components/chat/lit-custom-render/render-item.lit.js.map +0 -1
  381. package/dist/collection/components/chat/lit-custom-render/spinner-animation.js +0 -58
  382. package/dist/collection/components/chat/lit-custom-render/spinner-animation.js.map +0 -1
  383. package/dist/collection/components/chat/lit-custom-render/types.js +0 -2
  384. package/dist/collection/components/chat/lit-custom-render/types.js.map +0 -1
  385. package/dist/collection/components/chat/lit-custom-render/utils.js +0 -50
  386. package/dist/collection/components/chat/lit-custom-render/utils.js.map +0 -1
  387. package/dist/components/MERCURY_ASSETS.js +0 -7
  388. package/dist/components/MERCURY_ASSETS.js.map +0 -1
  389. package/dist/components/render-item.lit.js +0 -327
  390. package/dist/components/render-item.lit.js.map +0 -1
  391. package/dist/esm/MERCURY_ASSETS-ccf43ae3.js +0 -7
  392. package/dist/esm/MERCURY_ASSETS-ccf43ae3.js.map +0 -1
  393. package/dist/esm/render-item.lit-449f2946.js +0 -327
  394. package/dist/esm/render-item.lit-449f2946.js.map +0 -1
  395. package/dist/esm/tabular-grid-render-96d67a8c.js.map +0 -1
  396. package/dist/esm/utilities-6624d90e.js.map +0 -1
  397. package/dist/genexus-ide-ui/gx-ide-assets/chat-container/chat-lit.css +0 -376
  398. package/dist/genexus-ide-ui/p-401bfc97.js.map +0 -1
  399. package/dist/genexus-ide-ui/p-5f65a4bb.entry.js +0 -218
  400. package/dist/genexus-ide-ui/p-5f65a4bb.entry.js.map +0 -1
  401. package/dist/genexus-ide-ui/p-8d6f2b4f.entry.js +0 -359
  402. package/dist/genexus-ide-ui/p-8d6f2b4f.entry.js.map +0 -1
  403. package/dist/genexus-ide-ui/p-9270c80f.entry.js.map +0 -1
  404. package/dist/genexus-ide-ui/p-fd4f9904.js +0 -955
  405. package/dist/genexus-ide-ui/p-fd4f9904.js.map +0 -1
  406. package/dist/types/components/chat/lit-custom-render/actions.lit.d.ts +0 -2
  407. package/dist/types/components/chat/lit-custom-render/code-block.lit.d.ts +0 -2
  408. package/dist/types/components/chat/lit-custom-render/dots-animation.d.ts +0 -5
  409. package/dist/types/components/chat/lit-custom-render/render-item.lit.d.ts +0 -3
  410. package/dist/types/components/chat/lit-custom-render/spinner-animation.d.ts +0 -5
  411. package/dist/types/components/chat/lit-custom-render/types.d.ts +0 -4
  412. package/dist/types/components/chat/lit-custom-render/utils.d.ts +0 -23
@@ -2,7 +2,15 @@ import { r as t, h as e, H as s, a as i } from "./p-97107ecc.js";
2
2
 
3
3
  import { L as n } from "./p-311eedf3.js";
4
4
 
5
- import { g as a } from "./p-401bfc97.js";
5
+ import { g as a } from "./p-d42e842b.js";
6
+
7
+ import "./p-d4ecd3bb.js";
8
+
9
+ import "lit";
10
+
11
+ import "lit/directives/when.js";
12
+
13
+ import "lit/directives/if-defined.js";
6
14
 
7
15
  const o = "property";
8
16
 
@@ -134,7 +142,7 @@ var d = undefined && undefined.__classPrivateFieldSet || function(t, e, s, i, n)
134
142
  return i === "a" ? n.call(t, s) : n ? n.value = s : e.set(t, s), s;
135
143
  };
136
144
 
137
- var l, f, p, u, b, m, w, k, y, g, x, v, M, W, T, C, _, j, I, S, E, z, V, L;
145
+ var l, f, p, u, b, m, w, k, y, g, x, v, M, W, T, j, C, _, I, S, E, z, V, L;
138
146
 
139
147
  const A = a({
140
148
  category: "gemini-tools",
@@ -255,7 +263,7 @@ const q = class {
255
263
  checked: true,
256
264
  dragDisabled: true,
257
265
  dropDisabled: true,
258
- filter: h(this, _, "f").call(this),
266
+ filter: h(this, C, "f").call(this),
259
267
  filterType: this.addKbPropertiesIsChecked && !this.exportAllIsChecked ? "none" : "metadata",
260
268
  model: this.objectsTreeViewModel,
261
269
  showLines: "last",
@@ -264,10 +272,10 @@ const q = class {
264
272
  onCheckedItemsChange: h(this, E, "f")
265
273
  });
266
274
  }));
267
- C.set(this, (() => {
275
+ j.set(this, (() => {
268
276
  this.hasObjects = this.objectsTreeViewModel && this.objectsTreeViewModel.length > 0;
269
277
  }));
270
- _.set(this, (() => {
278
+ C.set(this, (() => {
271
279
  if (this.addKbPropertiesIsChecked && this.exportAllIsChecked) {
272
280
  return o;
273
281
  // only show properties
@@ -278,7 +286,7 @@ const q = class {
278
286
  }
279
287
  return "none";
280
288
  }));
281
- j.set(this, (t => {
289
+ _.set(this, (t => {
282
290
  this.exportAllIsChecked = h(this, b, "f").value === H;
283
291
  }));
284
292
  I.set(this, (async () => {
@@ -389,7 +397,7 @@ const q = class {
389
397
  }
390
398
  async componentWillLoad() {
391
399
  d(this, p, await n.getComponentStrings(this.el), "f");
392
- h(this, C, "f").call(this);
400
+ h(this, j, "f").call(this);
393
401
  h(this, l, "m", S).call(this, this.objectTypes);
394
402
  }
395
403
  render() {
@@ -453,7 +461,7 @@ const q = class {
453
461
  part: "export-all-checkbox",
454
462
  checkedValue: H,
455
463
  caption: h(this, p, "f").main.exportAll,
456
- onInput: h(this, j, "f"),
464
+ onInput: h(this, _, "f"),
457
465
  ref: t => d(this, b, t, "f")
458
466
  })))), e("div", {
459
467
  class: "main spacing-body-inline"
@@ -481,8 +489,8 @@ const q = class {
481
489
 
482
490
  f = new WeakMap, p = new WeakMap, u = new WeakMap, b = new WeakMap, m = new WeakMap,
483
491
  w = new WeakMap, k = new WeakMap, y = new WeakMap, g = new WeakMap, x = new WeakMap,
484
- v = new WeakMap, M = new WeakMap, W = new WeakMap, T = new WeakMap, C = new WeakMap,
485
- _ = new WeakMap, j = new WeakMap, I = new WeakMap, E = new WeakMap, z = new WeakMap,
492
+ v = new WeakMap, M = new WeakMap, W = new WeakMap, T = new WeakMap, j = new WeakMap,
493
+ C = new WeakMap, _ = new WeakMap, I = new WeakMap, E = new WeakMap, z = new WeakMap,
486
494
  V = new WeakMap, L = new WeakMap, l = new WeakSet, S = function _GxIdeKbManagerExport_objectsTypesArrayToMap(t) {
487
495
  t.forEach((t => {
488
496
  h(this, k, "f").set(t.id, t);
@@ -492,4 +500,4 @@ V = new WeakMap, L = new WeakMap, l = new WeakSet, S = function _GxIdeKbManagerE
492
500
  q.style = c;
493
501
 
494
502
  export { q as gx_ide_kb_manager_export };
495
- //# sourceMappingURL=p-05fa08d7.entry.js.map
503
+ //# sourceMappingURL=p-e4e3a7af.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["KB_PROPERTY","KB_OBJECT","getPropertyIcon","typeId","kbPropertiesTypes","find","propertyType","id","icon","convertObjectTypeToTreeItem","objectType","caption","name","startImgSrc","leaf","parts","expanded","items","convertObjectToTreeItem","object","objectTypes","get","metadata","convertPropertyToTreeItem","property","updateObjectsTreeModel","objects","objectTypesMap","objectsSet","actualTreeState","updatedTreeData","forEach","has","objectTreeItem","objectTypeTreeItemIndex","findIndex","treeItem","objectTypeTreeItem","push","add","convertKbPropertiesDataToTreeItemData","properties","propertyAlreadyExists","node","undefined","propertyTreeItem","unshift","clearKbPropertiesFromTree","filter","item","kbManagerExportCss","FILE_ICON","getIconPath","category","colorType","SETTINGS_ICON","GENERAL_REFERENCES_ICON","MENUS_NEW_OBJECT_ICON","TREE_VIEW_ICON","CHECKBOX_CHECKED_VALUE","CSS_BUNDLES","GxIdeKbManagerExport","_GxIdeKbManagerExport_addKbDescriptionEl","set","this","_GxIdeKbManagerExport_componentLocale","_GxIdeKbManagerExport_animateEmptyState","_GxIdeKbManagerExport_exportAllEl","_GxIdeKbManagerExport_fileNameEl","_GxIdeKbManagerExport_kBPropertiesData","_GxIdeKbManagerExport_objectTypesMap","Map","_GxIdeKbManagerExport_objectsSet","Set","_GxIdeKbManagerExport_addKBPropertiesCallbackHandler","async","_e","addKbPropertiesIsChecked","__classPrivateFieldGet","value","__classPrivateFieldSet","addKBPropertiesCallback","length","objectsTreeViewModel","_GxIdeKbManagerExport_addObjectsCallbackHandler","exportAllIsChecked","addedObjects","addObjectsCallback","_GxIdeKbManagerExport_updateObjects","call","_GxIdeKbManagerExport_addReferencesCallbackHandler","addReferencesCallback","checkedObjectsIds","_GxIdeKbManagerExport_cancelCallbackHandler","cancelled","cancelCallback","exportingIsInProcess","_GxIdeKbManagerExport_clearButtonHandler","clear","_GxIdeKbManagerExport_evaluateContentToDisplay","hasObjects","h","isAnimated","stateTitle","main","noObjectsToDisplay","key","class","onClick","beginByADdingSomeObjects","stateIconSrc","exportAllMessage","checkbox","checked","dragDisabled","dropDisabled","_GxIdeKbManagerExport_evaluateTreeViewFilters","filterType","model","showLines","toggleCheckboxes","sortItemsCallback","_GxIdeKbManagerExport_sortTreeItems","onCheckedItemsChange","_GxIdeKbManagerExport_objectsTreeCheckedItemsChangedHandler","_GxIdeKbManagerExport_evaluateObjects","_GxIdeKbManagerExport_exportAllChangedHandler","_event","_GxIdeKbManagerExport_exportCallbackHandler","fileName","checkedKbPropertiesIds","checkedPropertiesIds","checkedObjectIds","exportCallback","then","event","allItemsWithCheckbox","detail","values","atLeastOnePropertyItemIsChecked","atLeastOneObjectItemIsChecked","subModel","sort","a","b","localeCompare","_GxIdeKbManagerExport_renderFooter","referencesButtonEnabled","clearButtonEnabled","disabled","part","footer","clearButton","src","addReferencesButton","addButton","objectsDataArray","newObjectsTreeModel","objectsTreeViewModelChanged","newObjectsTreeViewModel","objectTypesChanged","newObjectTypesArray","_GxIdeKbManagerExport_instances","_GxIdeKbManagerExport_objectsTypesArrayToMap","componentWillLoad","Locale","getComponentStrings","el","render","exportButtonEnabled","cancelButtonEnabled","Host","htmlFor","header","exportFileName","autoFocus","ref","exportButton","cancelButton","optionsButton","title","optionsCallback","addKnowledgeBaseDescription","checkedValue","onInput","exportAll","loader","cancelLabel","loaderTitle","show","objectTypesArray"],"sources":["src/components/kb-manager-export/helpers.ts","src/components/kb-manager-export/kb-manager-export.scss?tag=gx-ide-kb-manager-export&encapsulation=shadow","src/components/kb-manager-export/kb-manager-export.tsx"],"sourcesContent":["// /* Tree View */\nimport {\n TreeViewItemModel,\n TreeViewModel\n} from \"@genexus/chameleon-controls-library\";\nimport { ObjectData, KBPropertyData, KBPropertyType } from \"./types\";\nimport { ObjectType } from \"../../common/types\";\nexport const KB_PROPERTY = \"property\";\nexport const KB_OBJECT = \"object\";\n\nconst getPropertyIcon = (\n typeId: string,\n kbPropertiesTypes: KBPropertyType[]\n): string =>\n // The object icon has to be retrieved from the ObjectTypes array, by\n // matching the ObjectData typeId with the ObjectType id\n kbPropertiesTypes.find(propertyType => propertyType.id === typeId).icon;\n\nconst convertObjectTypeToTreeItem = (\n objectType: ObjectType\n): TreeViewItemModel => ({\n caption: objectType.name,\n id: objectType.id,\n startImgSrc: objectType.icon,\n leaf: false,\n parts: \"object-type tree-view-item\",\n expanded: true,\n items: []\n});\n\nconst convertObjectToTreeItem = (\n object: ObjectData,\n objectTypes: Map<string, ObjectType>\n): TreeViewItemModel => ({\n caption: object.name,\n id: object.id,\n startImgSrc: objectTypes.get(object.typeId).icon,\n parts: \"object tree-view-item\",\n metadata: KB_OBJECT,\n leaf: true\n});\n\nconst convertPropertyToTreeItem = (\n property: KBPropertyData,\n kbPropertiesTypes: KBPropertyType[]\n): TreeViewItemModel => ({\n caption: property.name,\n id: property.id,\n startImgSrc: getPropertyIcon(property.typeId, kbPropertiesTypes),\n parts: \"property tree-view-item\",\n metadata: KB_PROPERTY,\n leaf: true\n});\n\n/**\n * Updates the tree model with the provided objects.\n * Objects may already exist and are placed under their parent node.\n * If the parent node doesn't exist (identified by typeId on ObjectTypes),\n * it is created and added at the bottom.\n *\n * @param {ObjectData[] | undefined} objects - The array of objects to update.\n * @param {Map<string, ObjectType>} objectTypesMap - A map of object types by ID.\n * @param {Set<string>} objectsSet - A set of existing object IDs.\n * @param {TreeViewModel} actualTreeState - The current tree state to be updated.\n * @returns {TreeViewModel} - The updated tree view model.\n */\nexport const updateObjectsTreeModel = (\n objects: ObjectData[] | undefined,\n objectTypesMap: Map<string, ObjectType>,\n objectsSet: Set<string>,\n actualTreeState: TreeViewModel\n): TreeViewModel => {\n if (!objects) {\n return [...actualTreeState];\n }\n\n const updatedTreeData: TreeViewModel = [...actualTreeState];\n objects.forEach(object => {\n // objects that already exists in the actual actualTreeState should not be added.\n\n if (objectsSet.has(object.id)) {\n // object already exists\n return;\n }\n\n const objectTreeItem = convertObjectToTreeItem(object, objectTypesMap);\n\n // TODO: Improve the algorithm efficiency. This check visits potentially all nodes\n // from the TreeViewModel on each iteration. Using a Map to pre-store the TreeView\n // nodes would improve efficiency.\n const objectTypeTreeItemIndex = updatedTreeData.findIndex(\n treeItem => treeItem.id === object.typeId\n );\n\n if (objectTypeTreeItemIndex === -1) {\n // Create and add new object type tree item\n const objectType = objectTypesMap.get(object.typeId);\n if (objectType) {\n const objectTypeTreeItem = convertObjectTypeToTreeItem(objectType);\n objectTypeTreeItem.items.push(objectTreeItem);\n updatedTreeData.push(objectTypeTreeItem);\n }\n } else {\n // objectType exists already. insert object as children of the object type tree item.\n updatedTreeData[objectTypeTreeItemIndex].items.push(objectTreeItem);\n }\n\n objectsSet.add(object.id);\n });\n\n return updatedTreeData;\n};\n\n/**\n * Converts an array of KB properties data into tree item data for a tree view.\n *\n * @param {KBPropertyData[]} properties - The array of KB property data.\n * @param {KBPropertyType[]} kbPropertiesTypes - The array of KB property types.\n * @param {TreeViewModel} actualTreeState - The current state of the tree.\n * @returns {TreeViewModel} - The updated tree view item models.\n */\nexport const convertKbPropertiesDataToTreeItemData = (\n properties: KBPropertyData[],\n kbPropertiesTypes: KBPropertyType[],\n actualTreeState: TreeViewModel\n): TreeViewModel => {\n if (!properties) {\n return [...actualTreeState];\n }\n\n const updatedTreeData: TreeViewModel = [...actualTreeState];\n properties.forEach(property => {\n // properties have no parent node, and they should be added at the beginning of the tree\n const propertyAlreadyExists =\n updatedTreeData.find(node => node.id === property.id) !== undefined;\n if (propertyAlreadyExists) {\n return;\n }\n const propertyTreeItem = convertPropertyToTreeItem(\n property,\n kbPropertiesTypes\n );\n updatedTreeData.unshift(propertyTreeItem);\n });\n return updatedTreeData;\n};\n\n/**\n * Removes properties from the tree model.\n *\n * @param {TreeViewModel} actualTreeState - The current state of the tree,\n * containing various tree view items.\n * @returns {TreeViewModel} - A new array of tree view items that excludes\n * any items with metadata of type `KB_PROPERTY`.\n */\nexport const clearKbPropertiesFromTree = (\n actualTreeState: TreeViewModel\n): TreeViewModel =>\n actualTreeState.filter(item => item.metadata !== KB_PROPERTY);\n",":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\nsection {\n display: contents;\n}\n\n.header__field-group {\n grid-template:\n \"export-file-name buttons-container\" max-content\n \"checkboxes checkboxes\" max-content\n / 1fr max-content;\n}\n.export-file-name {\n grid-area: export-file-name;\n}\n.header__buttons-container {\n grid-area: buttons-container;\n}\n.header__checkboxes {\n grid-area: checkboxes;\n grid-template-columns: max-content 1fr;\n}\n\n.main {\n position: relative;\n padding-block: var(--content-block-spacing);\n}\n","import { Component, Host, h, Prop, Element, State, Watch } from \"@stencil/core\";\n\nimport { ChCheckboxCustomEvent } from \"@genexus/chameleon-controls-library\";\nimport {\n TreeViewItemModelExtended,\n TreeViewModel\n} from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles } from \"@genexus/mercury\";\n\nimport { Locale } from \"../../common/locale\";\nimport {\n updateObjectsTreeModel,\n convertKbPropertiesDataToTreeItemData,\n clearKbPropertiesFromTree\n} from \"./helpers\";\nimport { ObjectType } from \"../../common/types\";\n\nimport { KB_PROPERTY, KB_OBJECT } from \"./helpers\";\nimport {\n KBPropertiesCallback,\n KBPropertyData,\n KBPropertyType,\n ObjectData,\n ExportFileDirectoryCallback,\n OptionsCallback,\n AddObjectsCallback,\n ExportCallback,\n AddReferencesCallback,\n CancelCallback\n} from \"./types\";\n\nimport { getIconPath } from \"@genexus/mercury\";\n\nconst FILE_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"file\",\n colorType: \"on-elevation\"\n});\nconst SETTINGS_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"settings\",\n colorType: \"primary\"\n});\nconst GENERAL_REFERENCES_ICON = getIconPath({\n category: \"window-tools\",\n name: \"references\",\n colorType: \"neutral\"\n});\nconst MENUS_NEW_OBJECT_ICON = getIconPath({\n category: \"menus\",\n name: \"new-object\",\n colorType: \"on-primary\"\n});\nconst TREE_VIEW_ICON = getIconPath({\n category: \"controls\",\n name: \"treeview\"\n});\nconst CHECKBOX_CHECKED_VALUE = \"true\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/checkbox\",\n \"components/edit\",\n \"components/icon\",\n \"components/tree-view\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/spacing\",\n \"utils/typography\"\n];\n@Component({\n tag: \"gx-ide-kb-manager-export\",\n styleUrl: \"kb-manager-export.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/kb-manager-export\"]\n})\nexport class GxIdeKbManagerExport {\n #addKbDescriptionEl!: HTMLChCheckboxElement;\n #componentLocale: any;\n #animateEmptyState: boolean = false;\n #exportAllEl!: HTMLChCheckboxElement;\n #fileNameEl!: HTMLChEditElement;\n #kBPropertiesData!: KBPropertyData[];\n /**\n * Stores the object types information (name, and icon)\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #objectTypesMap: Map<string, ObjectType> = new Map();\n /**\n * Stores the object's id that have been added.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #objectsSet: Set<string> = new Set();\n\n @Element() el: HTMLGxIdeKbManagerExportElement;\n\n @State() addKbPropertiesIsChecked = false;\n @State() atLeastOnePropertyItemIsChecked = false;\n @State() atLeastOneObjectItemIsChecked = false;\n @State() checkedObjectsIds: string[] = [];\n @State() checkedPropertiesIds: string[] = [];\n @State() exportAllIsChecked = false;\n @State() exportingIsInProcess = false;\n @State() hasObjects: boolean;\n @State() objectsTreeViewModel: TreeViewModel = [];\n @Watch(\"objectsTreeViewModel\")\n objectsTreeViewModelChanged(newObjectsTreeViewModel: TreeViewModel) {\n this.hasObjects =\n newObjectsTreeViewModel && newObjectsTreeViewModel.length > 0;\n if (!this.hasObjects) {\n this.atLeastOnePropertyItemIsChecked = false;\n this.atLeastOneObjectItemIsChecked = false;\n }\n }\n\n /**\n * Callback invoked when the user wants to include KB properties.\n */\n @Prop() readonly addKBPropertiesCallback!: KBPropertiesCallback;\n\n /**\n * Callback invoked when the user wants to add objects.\n */\n @Prop() readonly addObjectsCallback!: AddObjectsCallback;\n\n /**\n *Callback invoked when the user wants to add all the references for the selected objects.\n *@param itemIds:string[] The selected item ids\n *@returns : Returns an object with the items and its references\n */\n @Prop() readonly addReferencesCallback!: AddReferencesCallback;\n\n /**\n * Callback invoked when the user wants to cancel the export process.\n * @returns It returns a boolean indicating whether the process could be canceled or not.\n */\n @Prop() readonly cancelCallback!: CancelCallback;\n\n /**\n *Callback invoked when the user wants to initiate the export process.\n *@param fileName:string\n *@param itemIds:string[] The selected item ids\n *@returns : It returns a boolean indicating whether the process was successful\n */\n @Prop() readonly exportCallback!: ExportCallback;\n\n /**\n * Callback invoked when the user wants to access the export options.\n */\n @Prop() readonly exportFileDirectoryCallback!: ExportFileDirectoryCallback;\n\n /**\n * It allows defining the default Export File Name\n */\n @Prop() readonly fileName: string;\n\n /**\n * Array with the possible types of KB properties\n */\n @Prop() readonly kbPropertiesTypes: KBPropertyType[];\n\n /**\n * If true, it will display a loader when needed.\n */\n @Prop() readonly loader = false;\n\n /**\n * Array of possible object types\n */\n @Prop() readonly objectTypes: ObjectType[];\n @Watch(\"objectTypes\")\n objectTypesChanged(newObjectTypesArray: ObjectType[]) {\n this.#objectsTypesArrayToMap(newObjectTypesArray);\n }\n\n /**\n * Callback invoked when the user wants to access the export options.\n */\n @Prop() readonly optionsCallback: OptionsCallback;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.#evaluateObjects();\n this.#objectsTypesArrayToMap(this.objectTypes);\n }\n\n #addKBPropertiesCallbackHandler = async (\n _e: ChCheckboxCustomEvent<any> | InputEvent\n ) => {\n this.addKbPropertiesIsChecked =\n this.#addKbDescriptionEl.value === CHECKBOX_CHECKED_VALUE;\n if (this.addKbPropertiesIsChecked) {\n this.#kBPropertiesData = await this.addKBPropertiesCallback();\n if (this.#kBPropertiesData.length) {\n this.objectsTreeViewModel = convertKbPropertiesDataToTreeItemData(\n this.#kBPropertiesData,\n this.kbPropertiesTypes,\n this.objectsTreeViewModel\n );\n }\n } else {\n // previous properties (if any) should be removed\n this.objectsTreeViewModel = clearKbPropertiesFromTree(\n this.objectsTreeViewModel\n );\n }\n };\n\n #addObjectsCallbackHandler = async () => {\n this.#exportAllEl.value = undefined;\n this.exportAllIsChecked = false;\n const addedObjects = await this.addObjectsCallback();\n this.#updateObjects(addedObjects);\n };\n\n #addReferencesCallbackHandler = async () => {\n const objects: ObjectData[] = await this.addReferencesCallback(\n this.checkedObjectsIds\n );\n this.#updateObjects(objects);\n };\n\n #cancelCallbackHandler = async () => {\n const cancelled = await this.cancelCallback();\n if (cancelled) {\n this.exportingIsInProcess = false;\n }\n };\n\n #clearButtonHandler = () => {\n this.objectsTreeViewModel = [];\n this.#objectsSet.clear();\n this.#addKbDescriptionEl.value = undefined;\n this.#exportAllEl.value = undefined;\n };\n\n #evaluateContentToDisplay = () => {\n // Nothing to display on the tree-view\n if (!this.hasObjects && !this.exportAllIsChecked) {\n return (\n <gx-ide-empty-state\n isAnimated={this.#animateEmptyState}\n stateTitle={this.#componentLocale.main.noObjectsToDisplay}\n key=\"no-objects-empty-state\"\n >\n <button\n class=\"button-primary\"\n onClick={this.#addObjectsCallbackHandler}\n >\n {this.#componentLocale.main.beginByADdingSomeObjects}\n </button>\n </gx-ide-empty-state>\n );\n } else {\n this.#animateEmptyState = true; // improve performance if is first render\n }\n\n if (this.exportAllIsChecked) {\n return (\n <gx-ide-empty-state\n isAnimated={this.#animateEmptyState}\n stateIconSrc={TREE_VIEW_ICON}\n stateTitle={this.#componentLocale.main.exportAllMessage}\n key=\"exporting-all-empty-state\"\n ></gx-ide-empty-state>\n );\n } else {\n this.#animateEmptyState = true; // improve performance if is first render\n }\n\n return (\n <ch-tree-view-render\n class=\"tree-view\"\n checkbox\n checked\n dragDisabled\n dropDisabled\n filter={this.#evaluateTreeViewFilters()}\n filterType={\n this.addKbPropertiesIsChecked && !this.exportAllIsChecked\n ? \"none\"\n : \"metadata\"\n }\n model={this.objectsTreeViewModel}\n showLines=\"last\"\n toggleCheckboxes\n sortItemsCallback={this.#sortTreeItems}\n onCheckedItemsChange={this.#objectsTreeCheckedItemsChangedHandler}\n ></ch-tree-view-render>\n );\n };\n\n #evaluateObjects = () => {\n this.hasObjects =\n this.objectsTreeViewModel && this.objectsTreeViewModel.length > 0;\n };\n\n #evaluateTreeViewFilters = (): string => {\n if (this.addKbPropertiesIsChecked && this.exportAllIsChecked) {\n return KB_PROPERTY; // only show properties\n }\n if (!this.addKbPropertiesIsChecked && !this.exportAllIsChecked) {\n return KB_OBJECT; // only show objects\n }\n return \"none\";\n };\n\n #exportAllChangedHandler = (\n _event: ChCheckboxCustomEvent<any> | InputEvent\n ) => {\n this.exportAllIsChecked =\n this.#exportAllEl.value === CHECKBOX_CHECKED_VALUE;\n };\n\n #exportCallbackHandler = async () => {\n this.exportingIsInProcess = true;\n const fileName: string = this.#fileNameEl.value;\n const checkedKbPropertiesIds = this.addKbPropertiesIsChecked\n ? this.checkedPropertiesIds\n : [];\n const checkedObjectIds = this.exportAllIsChecked\n ? undefined\n : this.checkedObjectsIds;\n this.exportCallback(\n fileName,\n checkedKbPropertiesIds,\n checkedObjectIds\n ).then(() => {\n this.exportingIsInProcess = false;\n });\n // returns Promise<boolean> but no procedure was detailed on the spec.\n };\n\n #objectsTypesArrayToMap(objectTypesArray: ObjectType[]) {\n objectTypesArray.forEach(objectType => {\n this.#objectTypesMap.set(objectType.id, objectType);\n });\n }\n\n #objectsTreeCheckedItemsChangedHandler = (\n event: CustomEvent<Map<string, TreeViewItemModelExtended>>\n ) => {\n // filter 'checked objects' and 'checked properties' ids\n const checkedObjectsIds: string[] = [];\n const checkedPropertiesIds: string[] = [];\n const allItemsWithCheckbox = [...event.detail.values()];\n allItemsWithCheckbox.forEach(node => {\n if (node.item.checked && node.item.metadata === KB_OBJECT) {\n checkedObjectsIds.push(node.item.id);\n } else if (node.item.checked && node.item.metadata === KB_PROPERTY) {\n checkedPropertiesIds.push(node.item.id);\n }\n });\n this.checkedObjectsIds = checkedObjectsIds;\n this.checkedPropertiesIds = checkedPropertiesIds;\n\n this.atLeastOnePropertyItemIsChecked = this.checkedPropertiesIds.length > 0;\n this.atLeastOneObjectItemIsChecked = this.checkedObjectsIds.length > 0;\n };\n\n #sortTreeItems = (subModel: TreeViewModel) => {\n // \"property\" items should be added on top.\n // else sort alphabetically by \"caption\" value.\n return subModel.sort((a, b) => {\n if (a.metadata === \"property\" && b.metadata !== \"property\") {\n return -1;\n }\n if (b.metadata === \"property\" && a.metadata !== \"property\") {\n return 1;\n }\n\n return a.caption.localeCompare(b.caption);\n });\n };\n\n #renderFooter = (): HTMLElement => {\n const referencesButtonEnabled = this.atLeastOneObjectItemIsChecked;\n const clearButtonEnabled = this.objectsTreeViewModel.length > 0;\n return (\n <footer class=\"footer control-footer-with-border control-footer-space-between space-body spacing-body-inline spacing-body-block-end\">\n <button\n class=\"button-tertiary clear-btn\"\n disabled={!clearButtonEnabled}\n part=\"clear-button\"\n onClick={clearButtonEnabled && this.#clearButtonHandler}\n >\n {this.#componentLocale.footer.clearButton}\n </button>\n\n <div class=\"buttons-spacer\">\n <button\n class=\"button-secondary button-icon-and-text\"\n part=\"references-button\"\n disabled={!referencesButtonEnabled}\n onClick={\n referencesButtonEnabled && this.#addReferencesCallbackHandler\n }\n >\n <ch-image\n class=\"icon-sm\"\n disabled={!referencesButtonEnabled}\n src={GENERAL_REFERENCES_ICON}\n ></ch-image>\n {this.#componentLocale.footer.addReferencesButton}\n </button>\n\n <button\n // Add button\n class=\"button-primary button-icon-and-text\"\n disabled={this.exportAllIsChecked}\n part=\"add-button\"\n onClick={\n !this.exportAllIsChecked && this.#addObjectsCallbackHandler\n }\n >\n <ch-image\n class=\"icon-sm\"\n disabled={this.exportAllIsChecked}\n src={MENUS_NEW_OBJECT_ICON}\n ></ch-image>\n {this.#componentLocale.footer.addButton}\n </button>\n </div>\n </footer>\n );\n };\n\n #updateObjects = (objectsDataArray: ObjectData[]) => {\n if (objectsDataArray.length) {\n const newObjectsTreeModel = updateObjectsTreeModel(\n objectsDataArray,\n this.#objectTypesMap,\n this.#objectsSet,\n this.objectsTreeViewModel\n );\n this.objectsTreeViewModel = newObjectsTreeModel;\n }\n };\n\n render(): void {\n const exportButtonEnabled =\n this.atLeastOnePropertyItemIsChecked ||\n this.atLeastOneObjectItemIsChecked ||\n this.exportAllIsChecked;\n\n const cancelButtonEnabled = this.exportingIsInProcess;\n\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n\n <section>\n <header class=\"header control-header-with-border space-body spacing-body-inline spacing-body-block-start\">\n <div class=\"field-group header__field-group\">\n <div class=\"field field-inline export-file-name\">\n <label class=\"label\" htmlFor=\"xpz-file\">\n {this.#componentLocale.header.exportFileName}\n </label>\n <ch-edit\n autoFocus\n id=\"xpz-file\"\n class=\"input\"\n part=\"xpz-file\"\n value={this.fileName}\n startImgSrc={FILE_ICON}\n ref={(el: HTMLChEditElement) =>\n (this.#fileNameEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n </div>\n\n <div class=\"header__buttons-container buttons-spacer\">\n <button\n id=\"export-kb-btn\"\n class=\"button-primary export-btn\"\n part=\"export-btn\"\n disabled={!exportButtonEnabled}\n onClick={exportButtonEnabled && this.#exportCallbackHandler}\n >\n {this.#componentLocale.header.exportButton}\n </button>\n <button\n id=\"cancel-kb-export-btn\"\n class=\"button-secondary cancel-btn\"\n part=\"cancel-button\"\n disabled={!cancelButtonEnabled}\n onClick={cancelButtonEnabled && this.#cancelCallbackHandler}\n >\n {this.#componentLocale.header.cancelButton}\n </button>\n\n <button\n aria-label={this.#componentLocale.header.optionsButton}\n title={this.#componentLocale.header.optionsButton}\n class=\"button-tertiary button-icon-only options-btn\"\n part=\"select-kb-btn\"\n onClick={this.optionsCallback}\n >\n <ch-image class=\"icon-md\" src={SETTINGS_ICON}></ch-image>\n </button>\n </div>\n\n <div class=\"header__checkboxes field-group\">\n <ch-checkbox\n class=\"checkbox add-kb-description\"\n part=\"add-kb-description\"\n caption={\n this.#componentLocale.main.addKnowledgeBaseDescription\n }\n checkedValue={CHECKBOX_CHECKED_VALUE}\n onInput={this.#addKBPropertiesCallbackHandler}\n ref={(el: HTMLChCheckboxElement) =>\n (this.#addKbDescriptionEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n\n <ch-checkbox\n class=\"checkbox export-all\"\n part=\"export-all-checkbox\"\n checkedValue={CHECKBOX_CHECKED_VALUE}\n caption={this.#componentLocale.main.exportAll}\n onInput={this.#exportAllChangedHandler}\n ref={(el: HTMLChCheckboxElement) =>\n (this.#exportAllEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </div>\n </div>\n </header>\n\n <div class=\"main spacing-body-inline\">\n {this.#evaluateContentToDisplay()}\n {this.loader && this.exportingIsInProcess && (\n <gx-ide-loader\n cancelLabel={this.#componentLocale.loader.cancelLabel}\n loaderTitle={this.#componentLocale.loader.title}\n cancelCallback={this.#cancelCallbackHandler}\n show\n class=\"loader\"\n ></gx-ide-loader>\n )}\n </div>\n\n {this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["KB_PROPERTY","KB_OBJECT","getPropertyIcon","typeId","kbPropertiesTypes","find","propertyType","id","icon","convertObjectTypeToTreeItem","objectType","caption","name","startImgSrc","leaf","parts","expanded","items","convertObjectToTreeItem","object","objectTypes","get","metadata","convertPropertyToTreeItem","property","updateObjectsTreeModel","objects","objectTypesMap","objectsSet","actualTreeState","updatedTreeData","forEach","has","objectTreeItem","objectTypeTreeItemIndex","findIndex","treeItem","objectTypeTreeItem","push","add","convertKbPropertiesDataToTreeItemData","properties","propertyAlreadyExists","node","undefined","propertyTreeItem","unshift","clearKbPropertiesFromTree","filter","item","kbManagerExportCss","FILE_ICON","getIconPath","category","colorType","SETTINGS_ICON","GENERAL_REFERENCES_ICON","MENUS_NEW_OBJECT_ICON","TREE_VIEW_ICON","CHECKBOX_CHECKED_VALUE","CSS_BUNDLES","GxIdeKbManagerExport","_GxIdeKbManagerExport_addKbDescriptionEl","set","this","_GxIdeKbManagerExport_componentLocale","_GxIdeKbManagerExport_animateEmptyState","_GxIdeKbManagerExport_exportAllEl","_GxIdeKbManagerExport_fileNameEl","_GxIdeKbManagerExport_kBPropertiesData","_GxIdeKbManagerExport_objectTypesMap","Map","_GxIdeKbManagerExport_objectsSet","Set","_GxIdeKbManagerExport_addKBPropertiesCallbackHandler","async","_e","addKbPropertiesIsChecked","__classPrivateFieldGet","value","__classPrivateFieldSet","addKBPropertiesCallback","length","objectsTreeViewModel","_GxIdeKbManagerExport_addObjectsCallbackHandler","exportAllIsChecked","addedObjects","addObjectsCallback","_GxIdeKbManagerExport_updateObjects","call","_GxIdeKbManagerExport_addReferencesCallbackHandler","addReferencesCallback","checkedObjectsIds","_GxIdeKbManagerExport_cancelCallbackHandler","cancelled","cancelCallback","exportingIsInProcess","_GxIdeKbManagerExport_clearButtonHandler","clear","_GxIdeKbManagerExport_evaluateContentToDisplay","hasObjects","h","isAnimated","stateTitle","main","noObjectsToDisplay","key","class","onClick","beginByADdingSomeObjects","stateIconSrc","exportAllMessage","checkbox","checked","dragDisabled","dropDisabled","_GxIdeKbManagerExport_evaluateTreeViewFilters","filterType","model","showLines","toggleCheckboxes","sortItemsCallback","_GxIdeKbManagerExport_sortTreeItems","onCheckedItemsChange","_GxIdeKbManagerExport_objectsTreeCheckedItemsChangedHandler","_GxIdeKbManagerExport_evaluateObjects","_GxIdeKbManagerExport_exportAllChangedHandler","_event","_GxIdeKbManagerExport_exportCallbackHandler","fileName","checkedKbPropertiesIds","checkedPropertiesIds","checkedObjectIds","exportCallback","then","event","allItemsWithCheckbox","detail","values","atLeastOnePropertyItemIsChecked","atLeastOneObjectItemIsChecked","subModel","sort","a","b","localeCompare","_GxIdeKbManagerExport_renderFooter","referencesButtonEnabled","clearButtonEnabled","disabled","part","footer","clearButton","src","addReferencesButton","addButton","objectsDataArray","newObjectsTreeModel","objectsTreeViewModelChanged","newObjectsTreeViewModel","objectTypesChanged","newObjectTypesArray","_GxIdeKbManagerExport_instances","_GxIdeKbManagerExport_objectsTypesArrayToMap","componentWillLoad","Locale","getComponentStrings","el","render","exportButtonEnabled","cancelButtonEnabled","Host","htmlFor","header","exportFileName","autoFocus","ref","exportButton","cancelButton","optionsButton","title","optionsCallback","addKnowledgeBaseDescription","checkedValue","onInput","exportAll","loader","cancelLabel","loaderTitle","show","objectTypesArray"],"sources":["src/components/kb-manager-export/helpers.ts","src/components/kb-manager-export/kb-manager-export.scss?tag=gx-ide-kb-manager-export&encapsulation=shadow","src/components/kb-manager-export/kb-manager-export.tsx"],"sourcesContent":["// /* Tree View */\nimport {\n TreeViewItemModel,\n TreeViewModel\n} from \"@genexus/chameleon-controls-library\";\nimport { ObjectData, KBPropertyData, KBPropertyType } from \"./types\";\nimport { ObjectType } from \"../../common/types\";\nexport const KB_PROPERTY = \"property\";\nexport const KB_OBJECT = \"object\";\n\nconst getPropertyIcon = (\n typeId: string,\n kbPropertiesTypes: KBPropertyType[]\n): string =>\n // The object icon has to be retrieved from the ObjectTypes array, by\n // matching the ObjectData typeId with the ObjectType id\n kbPropertiesTypes.find(propertyType => propertyType.id === typeId).icon;\n\nconst convertObjectTypeToTreeItem = (\n objectType: ObjectType\n): TreeViewItemModel => ({\n caption: objectType.name,\n id: objectType.id,\n startImgSrc: objectType.icon,\n leaf: false,\n parts: \"object-type tree-view-item\",\n expanded: true,\n items: []\n});\n\nconst convertObjectToTreeItem = (\n object: ObjectData,\n objectTypes: Map<string, ObjectType>\n): TreeViewItemModel => ({\n caption: object.name,\n id: object.id,\n startImgSrc: objectTypes.get(object.typeId).icon,\n parts: \"object tree-view-item\",\n metadata: KB_OBJECT,\n leaf: true\n});\n\nconst convertPropertyToTreeItem = (\n property: KBPropertyData,\n kbPropertiesTypes: KBPropertyType[]\n): TreeViewItemModel => ({\n caption: property.name,\n id: property.id,\n startImgSrc: getPropertyIcon(property.typeId, kbPropertiesTypes),\n parts: \"property tree-view-item\",\n metadata: KB_PROPERTY,\n leaf: true\n});\n\n/**\n * Updates the tree model with the provided objects.\n * Objects may already exist and are placed under their parent node.\n * If the parent node doesn't exist (identified by typeId on ObjectTypes),\n * it is created and added at the bottom.\n *\n * @param {ObjectData[] | undefined} objects - The array of objects to update.\n * @param {Map<string, ObjectType>} objectTypesMap - A map of object types by ID.\n * @param {Set<string>} objectsSet - A set of existing object IDs.\n * @param {TreeViewModel} actualTreeState - The current tree state to be updated.\n * @returns {TreeViewModel} - The updated tree view model.\n */\nexport const updateObjectsTreeModel = (\n objects: ObjectData[] | undefined,\n objectTypesMap: Map<string, ObjectType>,\n objectsSet: Set<string>,\n actualTreeState: TreeViewModel\n): TreeViewModel => {\n if (!objects) {\n return [...actualTreeState];\n }\n\n const updatedTreeData: TreeViewModel = [...actualTreeState];\n objects.forEach(object => {\n // objects that already exists in the actual actualTreeState should not be added.\n\n if (objectsSet.has(object.id)) {\n // object already exists\n return;\n }\n\n const objectTreeItem = convertObjectToTreeItem(object, objectTypesMap);\n\n // TODO: Improve the algorithm efficiency. This check visits potentially all nodes\n // from the TreeViewModel on each iteration. Using a Map to pre-store the TreeView\n // nodes would improve efficiency.\n const objectTypeTreeItemIndex = updatedTreeData.findIndex(\n treeItem => treeItem.id === object.typeId\n );\n\n if (objectTypeTreeItemIndex === -1) {\n // Create and add new object type tree item\n const objectType = objectTypesMap.get(object.typeId);\n if (objectType) {\n const objectTypeTreeItem = convertObjectTypeToTreeItem(objectType);\n objectTypeTreeItem.items.push(objectTreeItem);\n updatedTreeData.push(objectTypeTreeItem);\n }\n } else {\n // objectType exists already. insert object as children of the object type tree item.\n updatedTreeData[objectTypeTreeItemIndex].items.push(objectTreeItem);\n }\n\n objectsSet.add(object.id);\n });\n\n return updatedTreeData;\n};\n\n/**\n * Converts an array of KB properties data into tree item data for a tree view.\n *\n * @param {KBPropertyData[]} properties - The array of KB property data.\n * @param {KBPropertyType[]} kbPropertiesTypes - The array of KB property types.\n * @param {TreeViewModel} actualTreeState - The current state of the tree.\n * @returns {TreeViewModel} - The updated tree view item models.\n */\nexport const convertKbPropertiesDataToTreeItemData = (\n properties: KBPropertyData[],\n kbPropertiesTypes: KBPropertyType[],\n actualTreeState: TreeViewModel\n): TreeViewModel => {\n if (!properties) {\n return [...actualTreeState];\n }\n\n const updatedTreeData: TreeViewModel = [...actualTreeState];\n properties.forEach(property => {\n // properties have no parent node, and they should be added at the beginning of the tree\n const propertyAlreadyExists =\n updatedTreeData.find(node => node.id === property.id) !== undefined;\n if (propertyAlreadyExists) {\n return;\n }\n const propertyTreeItem = convertPropertyToTreeItem(\n property,\n kbPropertiesTypes\n );\n updatedTreeData.unshift(propertyTreeItem);\n });\n return updatedTreeData;\n};\n\n/**\n * Removes properties from the tree model.\n *\n * @param {TreeViewModel} actualTreeState - The current state of the tree,\n * containing various tree view items.\n * @returns {TreeViewModel} - A new array of tree view items that excludes\n * any items with metadata of type `KB_PROPERTY`.\n */\nexport const clearKbPropertiesFromTree = (\n actualTreeState: TreeViewModel\n): TreeViewModel =>\n actualTreeState.filter(item => item.metadata !== KB_PROPERTY);\n",":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\nsection {\n display: contents;\n}\n\n.header__field-group {\n grid-template:\n \"export-file-name buttons-container\" max-content\n \"checkboxes checkboxes\" max-content\n / 1fr max-content;\n}\n.export-file-name {\n grid-area: export-file-name;\n}\n.header__buttons-container {\n grid-area: buttons-container;\n}\n.header__checkboxes {\n grid-area: checkboxes;\n grid-template-columns: max-content 1fr;\n}\n\n.main {\n position: relative;\n padding-block: var(--content-block-spacing);\n}\n","import { Component, Host, h, Prop, Element, State, Watch } from \"@stencil/core\";\n\nimport { ChCheckboxCustomEvent } from \"@genexus/chameleon-controls-library\";\nimport {\n TreeViewItemModelExtended,\n TreeViewModel\n} from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles } from \"@genexus/mercury\";\n\nimport { Locale } from \"../../common/locale\";\nimport {\n updateObjectsTreeModel,\n convertKbPropertiesDataToTreeItemData,\n clearKbPropertiesFromTree\n} from \"./helpers\";\nimport { ObjectType } from \"../../common/types\";\n\nimport { KB_PROPERTY, KB_OBJECT } from \"./helpers\";\nimport {\n KBPropertiesCallback,\n KBPropertyData,\n KBPropertyType,\n ObjectData,\n ExportFileDirectoryCallback,\n OptionsCallback,\n AddObjectsCallback,\n ExportCallback,\n AddReferencesCallback,\n CancelCallback\n} from \"./types\";\n\nimport { getIconPath } from \"@genexus/mercury\";\n\nconst FILE_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"file\",\n colorType: \"on-elevation\"\n});\nconst SETTINGS_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"settings\",\n colorType: \"primary\"\n});\nconst GENERAL_REFERENCES_ICON = getIconPath({\n category: \"window-tools\",\n name: \"references\",\n colorType: \"neutral\"\n});\nconst MENUS_NEW_OBJECT_ICON = getIconPath({\n category: \"menus\",\n name: \"new-object\",\n colorType: \"on-primary\"\n});\nconst TREE_VIEW_ICON = getIconPath({\n category: \"controls\",\n name: \"treeview\"\n});\nconst CHECKBOX_CHECKED_VALUE = \"true\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/checkbox\",\n \"components/edit\",\n \"components/icon\",\n \"components/tree-view\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/spacing\",\n \"utils/typography\"\n];\n@Component({\n tag: \"gx-ide-kb-manager-export\",\n styleUrl: \"kb-manager-export.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/kb-manager-export\"]\n})\nexport class GxIdeKbManagerExport {\n #addKbDescriptionEl!: HTMLChCheckboxElement;\n #componentLocale: any;\n #animateEmptyState: boolean = false;\n #exportAllEl!: HTMLChCheckboxElement;\n #fileNameEl!: HTMLChEditElement;\n #kBPropertiesData!: KBPropertyData[];\n /**\n * Stores the object types information (name, and icon)\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #objectTypesMap: Map<string, ObjectType> = new Map();\n /**\n * Stores the object's id that have been added.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #objectsSet: Set<string> = new Set();\n\n @Element() el: HTMLGxIdeKbManagerExportElement;\n\n @State() addKbPropertiesIsChecked = false;\n @State() atLeastOnePropertyItemIsChecked = false;\n @State() atLeastOneObjectItemIsChecked = false;\n @State() checkedObjectsIds: string[] = [];\n @State() checkedPropertiesIds: string[] = [];\n @State() exportAllIsChecked = false;\n @State() exportingIsInProcess = false;\n @State() hasObjects: boolean;\n @State() objectsTreeViewModel: TreeViewModel = [];\n @Watch(\"objectsTreeViewModel\")\n objectsTreeViewModelChanged(newObjectsTreeViewModel: TreeViewModel) {\n this.hasObjects =\n newObjectsTreeViewModel && newObjectsTreeViewModel.length > 0;\n if (!this.hasObjects) {\n this.atLeastOnePropertyItemIsChecked = false;\n this.atLeastOneObjectItemIsChecked = false;\n }\n }\n\n /**\n * Callback invoked when the user wants to include KB properties.\n */\n @Prop() readonly addKBPropertiesCallback!: KBPropertiesCallback;\n\n /**\n * Callback invoked when the user wants to add objects.\n */\n @Prop() readonly addObjectsCallback!: AddObjectsCallback;\n\n /**\n *Callback invoked when the user wants to add all the references for the selected objects.\n *@param itemIds:string[] The selected item ids\n *@returns : Returns an object with the items and its references\n */\n @Prop() readonly addReferencesCallback!: AddReferencesCallback;\n\n /**\n * Callback invoked when the user wants to cancel the export process.\n * @returns It returns a boolean indicating whether the process could be canceled or not.\n */\n @Prop() readonly cancelCallback!: CancelCallback;\n\n /**\n *Callback invoked when the user wants to initiate the export process.\n *@param fileName:string\n *@param itemIds:string[] The selected item ids\n *@returns : It returns a boolean indicating whether the process was successful\n */\n @Prop() readonly exportCallback!: ExportCallback;\n\n /**\n * Callback invoked when the user wants to access the export options.\n */\n @Prop() readonly exportFileDirectoryCallback!: ExportFileDirectoryCallback;\n\n /**\n * It allows defining the default Export File Name\n */\n @Prop() readonly fileName: string;\n\n /**\n * Array with the possible types of KB properties\n */\n @Prop() readonly kbPropertiesTypes: KBPropertyType[];\n\n /**\n * If true, it will display a loader when needed.\n */\n @Prop() readonly loader = false;\n\n /**\n * Array of possible object types\n */\n @Prop() readonly objectTypes: ObjectType[];\n @Watch(\"objectTypes\")\n objectTypesChanged(newObjectTypesArray: ObjectType[]) {\n this.#objectsTypesArrayToMap(newObjectTypesArray);\n }\n\n /**\n * Callback invoked when the user wants to access the export options.\n */\n @Prop() readonly optionsCallback: OptionsCallback;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.#evaluateObjects();\n this.#objectsTypesArrayToMap(this.objectTypes);\n }\n\n #addKBPropertiesCallbackHandler = async (\n _e: ChCheckboxCustomEvent<any> | InputEvent\n ) => {\n this.addKbPropertiesIsChecked =\n this.#addKbDescriptionEl.value === CHECKBOX_CHECKED_VALUE;\n if (this.addKbPropertiesIsChecked) {\n this.#kBPropertiesData = await this.addKBPropertiesCallback();\n if (this.#kBPropertiesData.length) {\n this.objectsTreeViewModel = convertKbPropertiesDataToTreeItemData(\n this.#kBPropertiesData,\n this.kbPropertiesTypes,\n this.objectsTreeViewModel\n );\n }\n } else {\n // previous properties (if any) should be removed\n this.objectsTreeViewModel = clearKbPropertiesFromTree(\n this.objectsTreeViewModel\n );\n }\n };\n\n #addObjectsCallbackHandler = async () => {\n this.#exportAllEl.value = undefined;\n this.exportAllIsChecked = false;\n const addedObjects = await this.addObjectsCallback();\n this.#updateObjects(addedObjects);\n };\n\n #addReferencesCallbackHandler = async () => {\n const objects: ObjectData[] = await this.addReferencesCallback(\n this.checkedObjectsIds\n );\n this.#updateObjects(objects);\n };\n\n #cancelCallbackHandler = async () => {\n const cancelled = await this.cancelCallback();\n if (cancelled) {\n this.exportingIsInProcess = false;\n }\n };\n\n #clearButtonHandler = () => {\n this.objectsTreeViewModel = [];\n this.#objectsSet.clear();\n this.#addKbDescriptionEl.value = undefined;\n this.#exportAllEl.value = undefined;\n };\n\n #evaluateContentToDisplay = () => {\n // Nothing to display on the tree-view\n if (!this.hasObjects && !this.exportAllIsChecked) {\n return (\n <gx-ide-empty-state\n isAnimated={this.#animateEmptyState}\n stateTitle={this.#componentLocale.main.noObjectsToDisplay}\n key=\"no-objects-empty-state\"\n >\n <button\n class=\"button-primary\"\n onClick={this.#addObjectsCallbackHandler}\n >\n {this.#componentLocale.main.beginByADdingSomeObjects}\n </button>\n </gx-ide-empty-state>\n );\n } else {\n this.#animateEmptyState = true; // improve performance if is first render\n }\n\n if (this.exportAllIsChecked) {\n return (\n <gx-ide-empty-state\n isAnimated={this.#animateEmptyState}\n stateIconSrc={TREE_VIEW_ICON}\n stateTitle={this.#componentLocale.main.exportAllMessage}\n key=\"exporting-all-empty-state\"\n ></gx-ide-empty-state>\n );\n } else {\n this.#animateEmptyState = true; // improve performance if is first render\n }\n\n return (\n <ch-tree-view-render\n class=\"tree-view\"\n checkbox\n checked\n dragDisabled\n dropDisabled\n filter={this.#evaluateTreeViewFilters()}\n filterType={\n this.addKbPropertiesIsChecked && !this.exportAllIsChecked\n ? \"none\"\n : \"metadata\"\n }\n model={this.objectsTreeViewModel}\n showLines=\"last\"\n toggleCheckboxes\n sortItemsCallback={this.#sortTreeItems}\n onCheckedItemsChange={this.#objectsTreeCheckedItemsChangedHandler}\n ></ch-tree-view-render>\n );\n };\n\n #evaluateObjects = () => {\n this.hasObjects =\n this.objectsTreeViewModel && this.objectsTreeViewModel.length > 0;\n };\n\n #evaluateTreeViewFilters = (): string => {\n if (this.addKbPropertiesIsChecked && this.exportAllIsChecked) {\n return KB_PROPERTY; // only show properties\n }\n if (!this.addKbPropertiesIsChecked && !this.exportAllIsChecked) {\n return KB_OBJECT; // only show objects\n }\n return \"none\";\n };\n\n #exportAllChangedHandler = (\n _event: ChCheckboxCustomEvent<any> | InputEvent\n ) => {\n this.exportAllIsChecked =\n this.#exportAllEl.value === CHECKBOX_CHECKED_VALUE;\n };\n\n #exportCallbackHandler = async () => {\n this.exportingIsInProcess = true;\n const fileName: string = this.#fileNameEl.value;\n const checkedKbPropertiesIds = this.addKbPropertiesIsChecked\n ? this.checkedPropertiesIds\n : [];\n const checkedObjectIds = this.exportAllIsChecked\n ? undefined\n : this.checkedObjectsIds;\n this.exportCallback(\n fileName,\n checkedKbPropertiesIds,\n checkedObjectIds\n ).then(() => {\n this.exportingIsInProcess = false;\n });\n // returns Promise<boolean> but no procedure was detailed on the spec.\n };\n\n #objectsTypesArrayToMap(objectTypesArray: ObjectType[]) {\n objectTypesArray.forEach(objectType => {\n this.#objectTypesMap.set(objectType.id, objectType);\n });\n }\n\n #objectsTreeCheckedItemsChangedHandler = (\n event: CustomEvent<Map<string, TreeViewItemModelExtended>>\n ) => {\n // filter 'checked objects' and 'checked properties' ids\n const checkedObjectsIds: string[] = [];\n const checkedPropertiesIds: string[] = [];\n const allItemsWithCheckbox = [...event.detail.values()];\n allItemsWithCheckbox.forEach(node => {\n if (node.item.checked && node.item.metadata === KB_OBJECT) {\n checkedObjectsIds.push(node.item.id);\n } else if (node.item.checked && node.item.metadata === KB_PROPERTY) {\n checkedPropertiesIds.push(node.item.id);\n }\n });\n this.checkedObjectsIds = checkedObjectsIds;\n this.checkedPropertiesIds = checkedPropertiesIds;\n\n this.atLeastOnePropertyItemIsChecked = this.checkedPropertiesIds.length > 0;\n this.atLeastOneObjectItemIsChecked = this.checkedObjectsIds.length > 0;\n };\n\n #sortTreeItems = (subModel: TreeViewModel) => {\n // \"property\" items should be added on top.\n // else sort alphabetically by \"caption\" value.\n return subModel.sort((a, b) => {\n if (a.metadata === \"property\" && b.metadata !== \"property\") {\n return -1;\n }\n if (b.metadata === \"property\" && a.metadata !== \"property\") {\n return 1;\n }\n\n return a.caption.localeCompare(b.caption);\n });\n };\n\n #renderFooter = (): HTMLElement => {\n const referencesButtonEnabled = this.atLeastOneObjectItemIsChecked;\n const clearButtonEnabled = this.objectsTreeViewModel.length > 0;\n return (\n <footer class=\"footer control-footer-with-border control-footer-space-between space-body spacing-body-inline spacing-body-block-end\">\n <button\n class=\"button-tertiary clear-btn\"\n disabled={!clearButtonEnabled}\n part=\"clear-button\"\n onClick={clearButtonEnabled && this.#clearButtonHandler}\n >\n {this.#componentLocale.footer.clearButton}\n </button>\n\n <div class=\"buttons-spacer\">\n <button\n class=\"button-secondary button-icon-and-text\"\n part=\"references-button\"\n disabled={!referencesButtonEnabled}\n onClick={\n referencesButtonEnabled && this.#addReferencesCallbackHandler\n }\n >\n <ch-image\n class=\"icon-sm\"\n disabled={!referencesButtonEnabled}\n src={GENERAL_REFERENCES_ICON}\n ></ch-image>\n {this.#componentLocale.footer.addReferencesButton}\n </button>\n\n <button\n // Add button\n class=\"button-primary button-icon-and-text\"\n disabled={this.exportAllIsChecked}\n part=\"add-button\"\n onClick={\n !this.exportAllIsChecked && this.#addObjectsCallbackHandler\n }\n >\n <ch-image\n class=\"icon-sm\"\n disabled={this.exportAllIsChecked}\n src={MENUS_NEW_OBJECT_ICON}\n ></ch-image>\n {this.#componentLocale.footer.addButton}\n </button>\n </div>\n </footer>\n );\n };\n\n #updateObjects = (objectsDataArray: ObjectData[]) => {\n if (objectsDataArray.length) {\n const newObjectsTreeModel = updateObjectsTreeModel(\n objectsDataArray,\n this.#objectTypesMap,\n this.#objectsSet,\n this.objectsTreeViewModel\n );\n this.objectsTreeViewModel = newObjectsTreeModel;\n }\n };\n\n render(): void {\n const exportButtonEnabled =\n this.atLeastOnePropertyItemIsChecked ||\n this.atLeastOneObjectItemIsChecked ||\n this.exportAllIsChecked;\n\n const cancelButtonEnabled = this.exportingIsInProcess;\n\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n\n <section>\n <header class=\"header control-header-with-border space-body spacing-body-inline spacing-body-block-start\">\n <div class=\"field-group header__field-group\">\n <div class=\"field field-inline export-file-name\">\n <label class=\"label\" htmlFor=\"xpz-file\">\n {this.#componentLocale.header.exportFileName}\n </label>\n <ch-edit\n autoFocus\n id=\"xpz-file\"\n class=\"input\"\n part=\"xpz-file\"\n value={this.fileName}\n startImgSrc={FILE_ICON}\n ref={(el: HTMLChEditElement) =>\n (this.#fileNameEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n </div>\n\n <div class=\"header__buttons-container buttons-spacer\">\n <button\n id=\"export-kb-btn\"\n class=\"button-primary export-btn\"\n part=\"export-btn\"\n disabled={!exportButtonEnabled}\n onClick={exportButtonEnabled && this.#exportCallbackHandler}\n >\n {this.#componentLocale.header.exportButton}\n </button>\n <button\n id=\"cancel-kb-export-btn\"\n class=\"button-secondary cancel-btn\"\n part=\"cancel-button\"\n disabled={!cancelButtonEnabled}\n onClick={cancelButtonEnabled && this.#cancelCallbackHandler}\n >\n {this.#componentLocale.header.cancelButton}\n </button>\n\n <button\n aria-label={this.#componentLocale.header.optionsButton}\n title={this.#componentLocale.header.optionsButton}\n class=\"button-tertiary button-icon-only options-btn\"\n part=\"select-kb-btn\"\n onClick={this.optionsCallback}\n >\n <ch-image class=\"icon-md\" src={SETTINGS_ICON}></ch-image>\n </button>\n </div>\n\n <div class=\"header__checkboxes field-group\">\n <ch-checkbox\n class=\"checkbox add-kb-description\"\n part=\"add-kb-description\"\n caption={\n this.#componentLocale.main.addKnowledgeBaseDescription\n }\n checkedValue={CHECKBOX_CHECKED_VALUE}\n onInput={this.#addKBPropertiesCallbackHandler}\n ref={(el: HTMLChCheckboxElement) =>\n (this.#addKbDescriptionEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n\n <ch-checkbox\n class=\"checkbox export-all\"\n part=\"export-all-checkbox\"\n checkedValue={CHECKBOX_CHECKED_VALUE}\n caption={this.#componentLocale.main.exportAll}\n onInput={this.#exportAllChangedHandler}\n ref={(el: HTMLChCheckboxElement) =>\n (this.#exportAllEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </div>\n </div>\n </header>\n\n <div class=\"main spacing-body-inline\">\n {this.#evaluateContentToDisplay()}\n {this.loader && this.exportingIsInProcess && (\n <gx-ide-loader\n cancelLabel={this.#componentLocale.loader.cancelLabel}\n loaderTitle={this.#componentLocale.loader.title}\n cancelCallback={this.#cancelCallbackHandler}\n show\n class=\"loader\"\n ></gx-ide-loader>\n )}\n </div>\n\n {this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,6 +1,14 @@
1
1
  import { h as e } from "./p-97107ecc.js";
2
2
 
3
- import { g as s } from "./p-401bfc97.js";
3
+ import { g as s } from "./p-d42e842b.js";
4
+
5
+ import "./p-d4ecd3bb.js";
6
+
7
+ import "lit";
8
+
9
+ import "lit/directives/when.js";
10
+
11
+ import "lit/directives/if-defined.js";
4
12
 
5
13
  // Stencil
6
14
  const c = s({
@@ -9,19 +17,19 @@ const c = s({
9
17
  colorType: "success"
10
18
  });
11
19
 
12
- const r = s({
20
+ const t = s({
13
21
  category: "system",
14
22
  name: "edit",
15
23
  colorType: "warning"
16
24
  });
17
25
 
18
- const a = s({
26
+ const r = s({
19
27
  category: "system",
20
28
  name: "substract",
21
29
  colorType: "error"
22
30
  });
23
31
 
24
- const t = s({
32
+ const o = s({
25
33
  category: "system",
26
34
  name: "warning",
27
35
  colorType: "warning"
@@ -41,29 +49,29 @@ const t = s({
41
49
  * @param {ObjectState} objectState - The current state of the object.
42
50
  * @returns {HTMLChImageElement} A span element containing the corresponding icon and state label.
43
51
  */ const renderObjectStateWithIcon = s => {
44
- let o;
52
+ let a;
45
53
  switch (s) {
46
54
  case "inserted":
47
- o = c;
55
+ a = c;
48
56
  break;
49
57
 
50
58
  case "modified":
51
- o = r;
59
+ a = t;
52
60
  break;
53
61
 
54
62
  case "deleted":
55
- o = a;
63
+ a = r;
56
64
  break;
57
65
 
58
66
  case "conflicted":
59
- o = t;
67
+ a = o;
60
68
  break;
61
69
  }
62
70
  return e("span", {
63
71
  class: "custom-icon-text-wrapper"
64
72
  }, e("ch-image", {
65
73
  class: "icon-md",
66
- src: o
74
+ src: a
67
75
  }), `${s.charAt(0).toUpperCase() + s.slice(1)}`);
68
76
  };
69
77
 
@@ -84,4 +92,4 @@ const t = s({
84
92
  };
85
93
 
86
94
  export { renderObjectStateWithIcon as a, renderObjectTypeWithIcon as r };
87
- //# sourceMappingURL=p-a24571ca.js.map
95
+ //# sourceMappingURL=p-ea4b35b6.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["INSERTED_ICON","getIconPath","category","name","colorType","EDITED_ICON","DELETED_ICON","WARNING_ICON","renderObjectStateWithIcon","objectState","icon","h","class","src","charAt","toUpperCase","slice","renderObjectTypeWithIcon","objectType"],"sources":["src/components/team-dev/common/utilities.tsx"],"sourcesContent":["// Stencil\nimport { h, JSX } from \"@stencil/core\";\nimport { getIconPath } from \"@genexus/mercury\";\nimport { ObjectState } from \"../version-control/common/types\";\nimport { ObjectType } from \"../../../components\";\n\nconst INSERTED_ICON = getIconPath({\n category: \"system\",\n name: \"add\",\n colorType: \"success\"\n});\nconst EDITED_ICON = getIconPath({\n category: \"system\",\n name: \"edit\",\n colorType: \"warning\"\n});\nconst DELETED_ICON = getIconPath({\n category: \"system\",\n name: \"substract\",\n colorType: \"error\"\n});\nconst WARNING_ICON = getIconPath({\n category: \"system\",\n name: \"warning\",\n colorType: \"warning\"\n});\n\n/**\n * Renders a visual indicator (icon and label) for a given object state.\n *\n * This helper function maps a fixed set of object states to corresponding icons\n *\n * Supported states:\n * - \"inserted\": Displays a green \"add\" icon.\n * - \"modified\": Displays a yellow \"edit\" icon.\n * - \"deleted\": Displays a red \"subtract\" icon.\n * - \"conflicted\": Displays a yellow \"warning\" icon.\n *\n * @param {ObjectState} objectState - The current state of the object.\n * @returns {HTMLChImageElement} A span element containing the corresponding icon and state label.\n */\nexport const renderObjectStateWithIcon = (\n objectState: ObjectState\n): HTMLChImageElement => {\n let icon: string;\n switch (objectState) {\n case \"inserted\":\n icon = INSERTED_ICON;\n break;\n case \"modified\":\n icon = EDITED_ICON;\n break;\n case \"deleted\":\n icon = DELETED_ICON;\n break;\n case \"conflicted\":\n icon = WARNING_ICON;\n break;\n }\n return (\n <span class=\"custom-icon-text-wrapper\">\n <ch-image class=\"icon-md\" src={icon}></ch-image>\n {`${objectState.charAt(0).toUpperCase() + objectState.slice(1)}`}\n </span>\n );\n};\n\n/**\n * Renders a GeneXus object type as a span element containing its icon and name.\n *\n * @param {ObjectType} objectType - The GeneXus object type to render, including its `icon` and `name` properties.\n * @returns {JSX.Element} A span element with the object's icon and label.\n */\nexport const renderObjectTypeWithIcon = (\n objectType: ObjectType\n): JSX.Element => {\n // bring changes\n const icon = objectType.icon;\n\n return (\n <span class=\"custom-icon-text-wrapper\">\n <ch-image class=\"icon-md\" src={icon}></ch-image>\n {`${objectType.name}`}\n </span>\n );\n};\n"],"mappings":";;;;;AAMA,MAAMA,IAAgBC,EAAY;EAChCC,UAAU;EACVC,MAAM;EACNC,WAAW;;;AAEb,MAAMC,IAAcJ,EAAY;EAC9BC,UAAU;EACVC,MAAM;EACNC,WAAW;;;AAEb,MAAME,IAAeL,EAAY;EAC/BC,UAAU;EACVC,MAAM;EACNC,WAAW;;;AAEb,MAAMG,IAAeN,EAAY;EAC/BC,UAAU;EACVC,MAAM;EACNC,WAAW;;;;;;;;;;;;;;;;UAiBAI,4BACXC;EAEA,IAAIC;EACJ,QAAQD;GACN,KAAK;IACHC,IAAOV;IACP;;GACF,KAAK;IACHU,IAAOL;IACP;;GACF,KAAK;IACHK,IAAOJ;IACP;;GACF,KAAK;IACHI,IAAOH;IACP;;EAEJ,OACEI,EAAA;IAAMC,OAAM;KACVD,EAAA;IAAUC,OAAM;IAAUC,KAAKH;MAC9B,GAAGD,EAAYK,OAAO,GAAGC,gBAAgBN,EAAYO,MAAM;AACvD;;;;;;;UAUEC,2BACXC;;EAGA,MAAMR,IAAOQ,EAAWR;EAExB,OACEC,EAAA;IAAMC,OAAM;KACVD,EAAA;IAAUC,OAAM;IAAUC,KAAKH;MAC9B,GAAGQ,EAAWf;AACV"}
1
+ {"version":3,"names":["INSERTED_ICON","getIconPath","category","name","colorType","EDITED_ICON","DELETED_ICON","WARNING_ICON","renderObjectStateWithIcon","objectState","icon","h","class","src","charAt","toUpperCase","slice","renderObjectTypeWithIcon","objectType"],"sources":["src/components/team-dev/common/utilities.tsx"],"sourcesContent":["// Stencil\nimport { h, JSX } from \"@stencil/core\";\nimport { getIconPath } from \"@genexus/mercury\";\nimport { ObjectState } from \"../version-control/common/types\";\nimport { ObjectType } from \"../../../components\";\n\nconst INSERTED_ICON = getIconPath({\n category: \"system\",\n name: \"add\",\n colorType: \"success\"\n});\nconst EDITED_ICON = getIconPath({\n category: \"system\",\n name: \"edit\",\n colorType: \"warning\"\n});\nconst DELETED_ICON = getIconPath({\n category: \"system\",\n name: \"substract\",\n colorType: \"error\"\n});\nconst WARNING_ICON = getIconPath({\n category: \"system\",\n name: \"warning\",\n colorType: \"warning\"\n});\n\n/**\n * Renders a visual indicator (icon and label) for a given object state.\n *\n * This helper function maps a fixed set of object states to corresponding icons\n *\n * Supported states:\n * - \"inserted\": Displays a green \"add\" icon.\n * - \"modified\": Displays a yellow \"edit\" icon.\n * - \"deleted\": Displays a red \"subtract\" icon.\n * - \"conflicted\": Displays a yellow \"warning\" icon.\n *\n * @param {ObjectState} objectState - The current state of the object.\n * @returns {HTMLChImageElement} A span element containing the corresponding icon and state label.\n */\nexport const renderObjectStateWithIcon = (\n objectState: ObjectState\n): HTMLChImageElement => {\n let icon: string;\n switch (objectState) {\n case \"inserted\":\n icon = INSERTED_ICON;\n break;\n case \"modified\":\n icon = EDITED_ICON;\n break;\n case \"deleted\":\n icon = DELETED_ICON;\n break;\n case \"conflicted\":\n icon = WARNING_ICON;\n break;\n }\n return (\n <span class=\"custom-icon-text-wrapper\">\n <ch-image class=\"icon-md\" src={icon}></ch-image>\n {`${objectState.charAt(0).toUpperCase() + objectState.slice(1)}`}\n </span>\n );\n};\n\n/**\n * Renders a GeneXus object type as a span element containing its icon and name.\n *\n * @param {ObjectType} objectType - The GeneXus object type to render, including its `icon` and `name` properties.\n * @returns {JSX.Element} A span element with the object's icon and label.\n */\nexport const renderObjectTypeWithIcon = (\n objectType: ObjectType\n): JSX.Element => {\n // bring changes\n const icon = objectType.icon;\n\n return (\n <span class=\"custom-icon-text-wrapper\">\n <ch-image class=\"icon-md\" src={icon}></ch-image>\n {`${objectType.name}`}\n </span>\n );\n};\n"],"mappings":";;;;;;;;;;;;;AAMA,MAAMA,IAAgBC,EAAY;EAChCC,UAAU;EACVC,MAAM;EACNC,WAAW;;;AAEb,MAAMC,IAAcJ,EAAY;EAC9BC,UAAU;EACVC,MAAM;EACNC,WAAW;;;AAEb,MAAME,IAAeL,EAAY;EAC/BC,UAAU;EACVC,MAAM;EACNC,WAAW;;;AAEb,MAAMG,IAAeN,EAAY;EAC/BC,UAAU;EACVC,MAAM;EACNC,WAAW;;;;;;;;;;;;;;;;UAiBAI,4BACXC;EAEA,IAAIC;EACJ,QAAQD;GACN,KAAK;IACHC,IAAOV;IACP;;GACF,KAAK;IACHU,IAAOL;IACP;;GACF,KAAK;IACHK,IAAOJ;IACP;;GACF,KAAK;IACHI,IAAOH;IACP;;EAEJ,OACEI,EAAA;IAAMC,OAAM;KACVD,EAAA;IAAUC,OAAM;IAAUC,KAAKH;MAC9B,GAAGD,EAAYK,OAAO,GAAGC,gBAAgBN,EAAYO,MAAM;AACvD;;;;;;;UAUEC,2BACXC;;EAGA,MAAMR,IAAOQ,EAAWR;EAExB,OACEC,EAAA;IAAMC,OAAM;KACVD,EAAA;IAAUC,OAAM;IAAUC,KAAKH;MAC9B,GAAGQ,EAAWf;AACV"}
@@ -1,15 +1,23 @@
1
- import { g as e, r as a, h as s, H as i, a as t } from "./p-97107ecc.js";
1
+ import { g as e, r as a, h as i, H as s, a as t } from "./p-97107ecc.js";
2
2
 
3
- import { g as r } from "./p-401bfc97.js";
3
+ import { g as r } from "./p-d42e842b.js";
4
+
5
+ import "./p-d4ecd3bb.js";
6
+
7
+ import "lit";
8
+
9
+ import "lit/directives/when.js";
10
+
11
+ import "lit/directives/if-defined.js";
4
12
 
5
13
  import { L as o } from "./p-311eedf3.js";
6
14
 
7
15
  const n = '@charset "UTF-8";:host{display:grid;block-size:100%;grid-auto-rows:max-content;justify-content:center;padding:95px var(--mer-spacing--lg) 95px var(--mer-spacing--lg);overflow:auto}.licenses-descriptions-list,.licenses-names-list{list-style:none;margin:0;padding:0}.main-wrapper{max-inline-size:1000px;display:grid;gap:var(--mer-spacing--xl)}.logo{inline-size:200px;margin:0 auto;margin-block-end:var(--mer-spacing--2xl);opacity:0;transform:translateY(var(--mer-spacing--2xs));animation:showLogo var(--mer-timing--regular) ease-out forwards;animation-delay:var(--mer-timing--regular)}@keyframes showLogo{100%{opacity:1;transform:translateY(0)}}.card{display:grid;border-radius:var(--mer-border__radius--sm);border-width:var(--mer-border__width--sm);border-color:var(--elevation-border-color);border-style:solid;padding:var(--mer-spacing--lg);gap:var(--mer-spacing--md);opacity:0;animation:showCard var(--mer-timing--fast) ease-out forwards;animation-delay:calc(var(--mer-timing--regular) * 2)}@keyframes showCard{100%{opacity:1}}h1.title{font-weight:600}.intro-container{display:grid;gap:var(--mer-spacing--md)}.date-container{display:grid;gap:var(--mer-spacing--sm)}.card-package{opacity:0;transition:opacity var(--mer-timing--fast)}.package-name{--package-name-color:var(--mer-text__primary);color:var(--package-name-color)}.package-name a{display:flex;align-items:center;gap:8px}.package-name.has-link:hover{--package-name-color:var(--mer-text__primary--hover)}.package-name.has-link:active{--package-name-color:var(--mer-text__primary--active)}.package-link{display:inline-block}.licenses-names-list{display:flex;align-items:center}.licenses-names-item:not(:first-child)::before{content:"•";padding-inline:8px}.licenses-descriptions-description{white-space:break-spaces;max-block-size:940px;overflow:auto;line-height:1.5}.licenses-descriptions-item{display:grid;gap:var(--mer-spacing--md)}.code-box{border-radius:var(--mer-border__radius--sm);background-color:var(--mer-surface);border:1px solid var(--mer-border-color__on-elevation--01);padding:var(--mer-spacing--md);font-family:var(--font-family-code);font-size:var(--font-size-body-s);display:grid;gap:var(--mer-spacing--lg)}.description-list{display:grid;gap:var(--mer-spacing--xs);max-inline-size:400px;margin:0 auto}.show-more-button{justify-self:start}.color-default{color:var(--mer-text__highlighted)}.color-neutral{color:var(--mer-color__neutral-gray--400)}.color-primary{color:var(--mer-text__primary)}p{--line-height-tight:1.5;--font-weight-regular:300}hr{border-block-start:0;border-color:var(--mer-border-color__on-elevation--01);inline-size:100%;margin:0}';
8
16
 
9
- var l = undefined && undefined.__classPrivateFieldGet || function(e, a, s, i) {
10
- if (s === "a" && !i) throw new TypeError("Private accessor was defined without a getter");
11
- if (typeof a === "function" ? e !== a || !i : !a.has(e)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
12
- return s === "m" ? i : s === "a" ? i.call(e) : i ? i.value : a.get(e);
17
+ var l = undefined && undefined.__classPrivateFieldGet || function(e, a, i, s) {
18
+ if (i === "a" && !s) throw new TypeError("Private accessor was defined without a getter");
19
+ if (typeof a === "function" ? e !== a || !s : !a.has(e)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
20
+ return i === "m" ? s : i === "a" ? s.call(e) : s ? s.value : a.get(e);
13
21
  };
14
22
 
15
23
  var c, d, m, p, g, h;
@@ -38,36 +46,36 @@ const _ = class {
38
46
  constructor(e) {
39
47
  a(this, e);
40
48
  c.set(this, (e => e === null || e === void 0 ? void 0 : e.toISOString().split("T")[0]));
41
- d.set(this, ((e, a = "name", i) => {
42
- const t = l(this, p, "f").call(this, i, e.name);
49
+ d.set(this, ((e, a = "name", s) => {
50
+ const t = l(this, p, "f").call(this, s, e.name);
43
51
  const r = t === this.expandedLicenseId;
44
- return a === "name" ? s("ul", {
52
+ return a === "name" ? i("ul", {
45
53
  class: "licenses-names-list"
46
- }, s("li", {
54
+ }, i("li", {
47
55
  class: "color-default body-regular-m licenses-names-item"
48
- }, e.name)) : s("ul", {
56
+ }, e.name)) : i("ul", {
49
57
  class: "licenses-descriptions-list"
50
- }, s("li", {
58
+ }, i("li", {
51
59
  class: "licenses-descriptions-item",
52
60
  key: e.name
53
- }, r ? s("p", {
61
+ }, r ? i("p", {
54
62
  class: "code-box color-neutral licenses-descriptions-description scrollable"
55
63
  }, e.description) : null));
56
64
  }));
57
65
  m.set(this, ((e, a) => {
58
- const i = l(this, p, "f").call(this, a, e.name);
59
- const t = i === this.expandedLicenseId;
66
+ const s = l(this, p, "f").call(this, a, e.name);
67
+ const t = s === this.expandedLicenseId;
60
68
  const r = t ? this._componentLocale.detailsCard.hide : this._componentLocale.detailsCard.show;
61
- return s("div", {
69
+ return i("div", {
62
70
  class: "licenses-buttons-container buttons-spacer"
63
- }, s("button", {
71
+ }, i("button", {
64
72
  class: {
65
73
  "button-icon-and-text": true,
66
74
  "button-primary": !t,
67
75
  "button-secondary": t,
68
76
  "show-more-button": true
69
77
  },
70
- onClick: l(this, g, "f").call(this, i)
78
+ onClick: l(this, g, "f").call(this, s)
71
79
  }, r));
72
80
  }));
73
81
  p.set(this, ((e, a) => `${e.packageName}-${e.packageVersion}-${a}`));
@@ -98,7 +106,7 @@ const _ = class {
98
106
  render() {
99
107
  var e;
100
108
  const a = l(this, c, "f").call(this, this.dateGenerated);
101
- return s(i, {
109
+ return i(s, {
102
110
  class: "scrollable",
103
111
  style: {
104
112
  backgroundImage: `url(${y}), url(${k}), url(${w})`,
@@ -106,50 +114,50 @@ const _ = class {
106
114
  backgroundRepeat: "no-repeat, no-repeat, no-repeat",
107
115
  backgroundSize: `${v}, ${v}, ${v}`
108
116
  }
109
- }, s("ch-theme", {
117
+ }, i("ch-theme", {
110
118
  model: x
111
- }), s("div", {
119
+ }), i("div", {
112
120
  class: "main-wrapper"
113
- }, s("img", {
121
+ }, i("img", {
114
122
  src: b,
115
123
  class: "logo"
116
- }), s("div", {
124
+ }), i("div", {
117
125
  class: "card card-details elevation-1"
118
- }, s("div", {
126
+ }, i("div", {
119
127
  class: "intro-container"
120
- }, s("h1", {
128
+ }, i("h1", {
121
129
  class: "title heading-3 color-default"
122
- }, this._componentLocale.detailsCard.title), s("p", {
130
+ }, this._componentLocale.detailsCard.title), i("p", {
123
131
  class: "color-default body-regular-m"
124
- }, this._componentLocale.detailsCard.mainDescription), s("p", {
132
+ }, this._componentLocale.detailsCard.mainDescription), i("p", {
125
133
  class: "color-neutral body-italic-s"
126
- }, this._componentLocale.detailsCard.secondaryDescription)), s("hr", null), s("div", {
134
+ }, this._componentLocale.detailsCard.secondaryDescription)), i("hr", null), i("div", {
127
135
  class: "date-container"
128
- }, s("p", {
136
+ }, i("p", {
129
137
  class: "color-neutral"
130
- }, this._componentLocale.detailsCard.dateGenerated), s("time", {
138
+ }, this._componentLocale.detailsCard.dateGenerated), i("time", {
131
139
  class: "color-default",
132
140
  dateTime: a
133
141
  }, a))), (e = this.packages) === null || e === void 0 ? void 0 : e.map((e => {
134
142
  let a = `${e.packageName} ${e.packageVersion}`;
135
- const i = e.packageURL ? s("a", {
143
+ const s = e.packageURL ? i("a", {
136
144
  href: e.packageURL,
137
145
  target: "_blank",
138
146
  onClick: l(this, h, "f").call(this, e.packageURL),
139
147
  class: "package-link"
140
- }, a, s("ch-image", {
148
+ }, a, i("ch-image", {
141
149
  src: u,
142
150
  class: "package-icon icon-md"
143
151
  })) : a;
144
- return s("article", {
152
+ return i("article", {
145
153
  class: "card card-package elevation-1"
146
- }, s("h2", {
154
+ }, i("h2", {
147
155
  class: {
148
156
  "subtitle-semi-bold-s": true,
149
157
  "package-name": true,
150
158
  "has-link": !!e.packageURL
151
159
  }
152
- }, i), s("p", {
160
+ }, s), i("p", {
153
161
  class: "color-default subtitle-semi-bold-s"
154
162
  }, this._componentLocale.packageCard.declaredLicenses), l(this, d, "f").call(this, e.declaredLicense, "name", e), l(this, d, "f").call(this, e.declaredLicense, "description", e), l(this, m, "f").call(this, e.declaredLicense, e));
155
163
  }))));
@@ -168,4 +176,4 @@ h = new WeakMap;
168
176
  _.style = n;
169
177
 
170
178
  export { _ as gx_ide_details_acknowledgements };
171
- //# sourceMappingURL=p-bd0ffc08.entry.js.map
179
+ //# sourceMappingURL=p-f47b08c5.entry.js.map