@genexus/genexus-ide-ui 1.1.4 → 1.1.6

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 (398) hide show
  1. package/dist/cjs/MERCURY_ASSETS-972bf7f4.js +9 -0
  2. package/dist/cjs/MERCURY_ASSETS-972bf7f4.js.map +1 -0
  3. package/dist/cjs/code-render-55d37767.js +86 -0
  4. package/dist/cjs/code-render-55d37767.js.map +1 -0
  5. package/dist/cjs/{common-72f91a78.js → common-090e6d3a.js} +28 -12
  6. package/dist/cjs/common-090e6d3a.js.map +1 -0
  7. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  8. package/dist/cjs/gx-ide-ai-message.cjs.entry.js +2 -3
  9. package/dist/cjs/gx-ide-ai-message.cjs.entry.js.map +1 -1
  10. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +5 -6
  11. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js.map +1 -1
  12. package/dist/cjs/gx-ide-bpm-task-documents.cjs.entry.js +4 -5
  13. package/dist/cjs/gx-ide-bpm-task-documents.cjs.entry.js.map +1 -1
  14. package/dist/cjs/gx-ide-chat-container_2.cjs.entry.js +239 -0
  15. package/dist/cjs/gx-ide-chat-container_2.cjs.entry.js.map +1 -0
  16. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +3 -4
  17. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
  18. package/dist/cjs/gx-ide-current-user-info.cjs.entry.js +2 -3
  19. package/dist/cjs/gx-ide-current-user-info.cjs.entry.js.map +1 -1
  20. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +2 -3
  21. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js.map +1 -1
  22. package/dist/cjs/gx-ide-data-selector.cjs.entry.js +3 -4
  23. package/dist/cjs/gx-ide-data-selector.cjs.entry.js.map +1 -1
  24. package/dist/cjs/gx-ide-data-type-selector.cjs.entry.js +2 -3
  25. package/dist/cjs/gx-ide-data-type-selector.cjs.entry.js.map +1 -1
  26. package/dist/cjs/gx-ide-design-import.cjs.entry.js +7 -8
  27. package/dist/cjs/gx-ide-design-import.cjs.entry.js.map +1 -1
  28. package/dist/cjs/gx-ide-entity-selector.cjs.entry.js +3 -4
  29. package/dist/cjs/gx-ide-entity-selector.cjs.entry.js.map +1 -1
  30. package/dist/cjs/gx-ide-file-item.cjs.entry.js +5 -6
  31. package/dist/cjs/gx-ide-file-item.cjs.entry.js.map +1 -1
  32. package/dist/cjs/gx-ide-file-uploader.cjs.entry.js +2 -3
  33. package/dist/cjs/gx-ide-file-uploader.cjs.entry.js.map +1 -1
  34. package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js +6 -7
  35. package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js.map +1 -1
  36. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +5 -6
  37. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js.map +1 -1
  38. package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js +4 -5
  39. package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js.map +1 -1
  40. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js +4 -5
  41. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js.map +1 -1
  42. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +1 -1
  43. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +3 -4
  44. package/dist/cjs/gx-ide-new-kb.cjs.entry.js.map +1 -1
  45. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +4 -5
  46. package/dist/cjs/gx-ide-object-selector.cjs.entry.js.map +1 -1
  47. package/dist/cjs/gx-ide-open-api-import.cjs.entry.js +3 -4
  48. package/dist/cjs/gx-ide-open-api-import.cjs.entry.js.map +1 -1
  49. package/dist/cjs/gx-ide-references.cjs.entry.js +3 -4
  50. package/dist/cjs/gx-ide-references.cjs.entry.js.map +1 -1
  51. package/dist/cjs/gx-ide-sc-chat-container.cjs.entry.js +202 -98
  52. package/dist/cjs/gx-ide-sc-chat-container.cjs.entry.js.map +1 -1
  53. package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js +3 -4
  54. package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js.map +1 -1
  55. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +2 -3
  56. package/dist/cjs/gx-ide-share-kb.cjs.entry.js.map +1 -1
  57. package/dist/cjs/gx-ide-splash.cjs.entry.js +3 -4
  58. package/dist/cjs/gx-ide-splash.cjs.entry.js.map +1 -1
  59. package/dist/cjs/gx-ide-start-page.cjs.entry.js +5 -6
  60. package/dist/cjs/gx-ide-start-page.cjs.entry.js.map +1 -1
  61. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +1 -1
  62. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
  63. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +1 -1
  64. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js.map +1 -1
  65. package/dist/cjs/gx-ide-welcome-page.cjs.entry.js +2 -3
  66. package/dist/cjs/gx-ide-welcome-page.cjs.entry.js.map +1 -1
  67. package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js +3 -4
  68. package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js.map +1 -1
  69. package/dist/cjs/gx-ide-ww-files.cjs.entry.js +1 -1
  70. package/dist/cjs/gx-ide-ww-files.cjs.entry.js.map +1 -1
  71. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +2 -2
  72. package/dist/cjs/gx-ide-ww-images.cjs.entry.js.map +1 -1
  73. package/dist/cjs/index.cjs.js +8 -2
  74. package/dist/cjs/index.cjs.js.map +1 -1
  75. package/dist/cjs/loader.cjs.js +1 -1
  76. package/dist/collection/collection-manifest.json +2 -1
  77. package/dist/collection/common/common.js +19 -6
  78. package/dist/collection/common/common.js.map +1 -1
  79. package/dist/collection/common/images/ai-avatar.svg +11 -0
  80. package/dist/collection/components/bpm/application-declaration/bpm-app-declaration.css +1 -0
  81. package/dist/collection/components/chat/chat-container/chat-container.css +118 -0
  82. package/dist/collection/components/chat/chat-container/chat-container.js +218 -0
  83. package/dist/collection/components/chat/chat-container/chat-container.js.map +1 -0
  84. package/dist/collection/components/chat/chat-container/gx-ide-assets/chat-container/langs/chat-container.lang.en.json +9 -0
  85. package/dist/collection/components/chat/chat-container/gx-ide-assets/chat-container/langs/chat-container.lang.ja.json +9 -0
  86. package/dist/collection/components/chat/chat-container/gx-ide-assets/chat-container/langs/chat-container.lang.zh.json +9 -0
  87. package/dist/collection/components/chat/chat-welcome/chat-welcome.css +109 -0
  88. package/dist/collection/components/chat/chat-welcome/chat-welcome.js +228 -0
  89. package/dist/collection/components/chat/chat-welcome/chat-welcome.js.map +1 -0
  90. package/dist/collection/components/chat/chat-welcome/gx-ide-assets/chat-welcome/helpers.js +3 -0
  91. package/dist/collection/components/chat/chat-welcome/gx-ide-assets/chat-welcome/helpers.js.map +1 -0
  92. package/dist/collection/components/chat/chat-welcome/gx-ide-assets/chat-welcome/helpers.tsx +31 -0
  93. package/dist/collection/components/chat/chat-welcome/gx-ide-assets/chat-welcome/images/ai-avatar-welcome.svg +21 -0
  94. package/dist/collection/components/chat/chat-welcome/gx-ide-assets/chat-welcome/images/ai-avatar.svg +11 -0
  95. package/dist/collection/components/chat/chat-welcome/gx-ide-assets/chat-welcome/images/header-illustration.svg +24 -0
  96. package/dist/collection/components/chat/chat-welcome/gx-ide-assets/chat-welcome/langs/chat-welcome.lang.en.json +10 -0
  97. package/dist/collection/components/chat/chat-welcome/gx-ide-assets/chat-welcome/langs/chat-welcome.lang.ja.json +10 -0
  98. package/dist/collection/components/chat/chat-welcome/gx-ide-assets/chat-welcome/langs/chat-welcome.lang.zh.json +10 -0
  99. package/dist/collection/components/chat/code-render.js +65 -0
  100. package/dist/collection/components/chat/code-render.js.map +1 -0
  101. package/dist/collection/components/data-selector/data-selector.css +1 -0
  102. package/dist/collection/components/object-selector/object-selector.css +1 -0
  103. package/dist/collection/components/team-dev/commit/commit.css +1 -0
  104. package/dist/collection/components/team-dev/update/update.css +2 -0
  105. package/dist/collection/components/ww-attributes/ww-attributes.css +1 -0
  106. package/dist/collection/components/ww-files/ww-files.css +1 -0
  107. package/dist/collection/components/ww-images/ww-images.css +1 -0
  108. package/dist/collection/index.js +5 -1
  109. package/dist/collection/index.js.map +1 -1
  110. package/dist/collection/showcase/chat-container/callbacks.js +105 -90
  111. package/dist/collection/showcase/chat-container/callbacks.js.map +1 -1
  112. package/dist/collection/showcase/chat-container/chat.showcase.js +145 -10
  113. package/dist/collection/showcase/chat-container/chat.showcase.js.map +1 -1
  114. package/dist/collection/testing/locale.e2e.js +1 -0
  115. package/dist/collection/testing/locale.e2e.js.map +1 -1
  116. package/dist/components/MERCURY_ASSETS.js +5 -1
  117. package/dist/components/MERCURY_ASSETS.js.map +1 -1
  118. package/dist/components/ai-message.js +1 -2
  119. package/dist/components/ai-message.js.map +1 -1
  120. package/dist/components/chat-container.js +70 -7
  121. package/dist/components/chat-container.js.map +1 -1
  122. package/dist/components/chat-welcome.js +146 -0
  123. package/dist/components/chat-welcome.js.map +1 -0
  124. package/dist/components/code-render.js +68 -41
  125. package/dist/components/code-render.js.map +1 -1
  126. package/dist/components/common.js +27 -11
  127. package/dist/components/common.js.map +1 -1
  128. package/dist/components/entity-selector.js +1 -2
  129. package/dist/components/entity-selector.js.map +1 -1
  130. package/dist/components/file-item.js +1 -2
  131. package/dist/components/file-item.js.map +1 -1
  132. package/dist/components/gx-ide-bpm-app-declaration.js +2 -3
  133. package/dist/components/gx-ide-bpm-app-declaration.js.map +1 -1
  134. package/dist/components/gx-ide-bpm-task-documents.js +1 -2
  135. package/dist/components/gx-ide-bpm-task-documents.js.map +1 -1
  136. package/dist/components/gx-ide-chat-welcome.d.ts +11 -0
  137. package/dist/components/gx-ide-chat-welcome.js +8 -0
  138. package/dist/components/gx-ide-chat-welcome.js.map +1 -0
  139. package/dist/components/gx-ide-create-kb-from-server.js +1 -2
  140. package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
  141. package/dist/components/gx-ide-current-user-info.js +1 -2
  142. package/dist/components/gx-ide-current-user-info.js.map +1 -1
  143. package/dist/components/gx-ide-dashboard-home.js +1 -2
  144. package/dist/components/gx-ide-dashboard-home.js.map +1 -1
  145. package/dist/components/gx-ide-data-selector.js +2 -3
  146. package/dist/components/gx-ide-data-selector.js.map +1 -1
  147. package/dist/components/gx-ide-data-type-selector.js +1 -2
  148. package/dist/components/gx-ide-data-type-selector.js.map +1 -1
  149. package/dist/components/gx-ide-design-import.js +1 -2
  150. package/dist/components/gx-ide-design-import.js.map +1 -1
  151. package/dist/components/gx-ide-file-uploader.js +1 -2
  152. package/dist/components/gx-ide-file-uploader.js.map +1 -1
  153. package/dist/components/gx-ide-kb-manager-export.js +1 -2
  154. package/dist/components/gx-ide-kb-manager-export.js.map +1 -1
  155. package/dist/components/gx-ide-kb-manager-import.js +1 -2
  156. package/dist/components/gx-ide-kb-manager-import.js.map +1 -1
  157. package/dist/components/gx-ide-manage-module-references-v2.js +1 -2
  158. package/dist/components/gx-ide-manage-module-references-v2.js.map +1 -1
  159. package/dist/components/gx-ide-manage-module-references.js +1 -2
  160. package/dist/components/gx-ide-manage-module-references.js.map +1 -1
  161. package/dist/components/gx-ide-new-kb.js +1 -2
  162. package/dist/components/gx-ide-new-kb.js.map +1 -1
  163. package/dist/components/gx-ide-object-selector.js +2 -3
  164. package/dist/components/gx-ide-object-selector.js.map +1 -1
  165. package/dist/components/gx-ide-open-api-import.js +1 -2
  166. package/dist/components/gx-ide-open-api-import.js.map +1 -1
  167. package/dist/components/gx-ide-references.js +1 -2
  168. package/dist/components/gx-ide-references.js.map +1 -1
  169. package/dist/components/gx-ide-sc-chat-container.js +215 -100
  170. package/dist/components/gx-ide-sc-chat-container.js.map +1 -1
  171. package/dist/components/gx-ide-select-kb-items.js +1 -2
  172. package/dist/components/gx-ide-select-kb-items.js.map +1 -1
  173. package/dist/components/gx-ide-share-kb.js +1 -2
  174. package/dist/components/gx-ide-share-kb.js.map +1 -1
  175. package/dist/components/gx-ide-splash.js +1 -2
  176. package/dist/components/gx-ide-splash.js.map +1 -1
  177. package/dist/components/gx-ide-start-page.js +1 -2
  178. package/dist/components/gx-ide-start-page.js.map +1 -1
  179. package/dist/components/gx-ide-team-dev-commit.js +1 -1
  180. package/dist/components/gx-ide-team-dev-commit.js.map +1 -1
  181. package/dist/components/gx-ide-team-dev-update.js +1 -1
  182. package/dist/components/gx-ide-team-dev-update.js.map +1 -1
  183. package/dist/components/gx-ide-welcome-page.js +1 -2
  184. package/dist/components/gx-ide-welcome-page.js.map +1 -1
  185. package/dist/components/gx-ide-ww-attributes.js +2 -3
  186. package/dist/components/gx-ide-ww-attributes.js.map +1 -1
  187. package/dist/components/gx-ide-ww-files.js +1 -1
  188. package/dist/components/gx-ide-ww-files.js.map +1 -1
  189. package/dist/components/gx-ide-ww-images.js +1 -1
  190. package/dist/components/gx-ide-ww-images.js.map +1 -1
  191. package/dist/components/index.js +6 -0
  192. package/dist/components/index.js.map +1 -1
  193. package/dist/esm/MERCURY_ASSETS-039222dd.js +7 -0
  194. package/dist/esm/MERCURY_ASSETS-039222dd.js.map +1 -0
  195. package/dist/esm/code-render-53b3b0bd.js +83 -0
  196. package/dist/esm/code-render-53b3b0bd.js.map +1 -0
  197. package/dist/esm/{common-ccb4504a.js → common-719c4daf.js} +28 -12
  198. package/dist/esm/common-719c4daf.js.map +1 -0
  199. package/dist/esm/genexus-ide-ui.js +1 -1
  200. package/dist/esm/gx-ide-ai-message.entry.js +1 -2
  201. package/dist/esm/gx-ide-ai-message.entry.js.map +1 -1
  202. package/dist/esm/gx-ide-bpm-app-declaration.entry.js +2 -3
  203. package/dist/esm/gx-ide-bpm-app-declaration.entry.js.map +1 -1
  204. package/dist/esm/gx-ide-bpm-task-documents.entry.js +1 -2
  205. package/dist/esm/gx-ide-bpm-task-documents.entry.js.map +1 -1
  206. package/dist/esm/gx-ide-chat-container_2.entry.js +234 -0
  207. package/dist/esm/gx-ide-chat-container_2.entry.js.map +1 -0
  208. package/dist/esm/gx-ide-create-kb-from-server.entry.js +1 -2
  209. package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
  210. package/dist/esm/gx-ide-current-user-info.entry.js +1 -2
  211. package/dist/esm/gx-ide-current-user-info.entry.js.map +1 -1
  212. package/dist/esm/gx-ide-dashboard-home.entry.js +1 -2
  213. package/dist/esm/gx-ide-dashboard-home.entry.js.map +1 -1
  214. package/dist/esm/gx-ide-data-selector.entry.js +2 -3
  215. package/dist/esm/gx-ide-data-selector.entry.js.map +1 -1
  216. package/dist/esm/gx-ide-data-type-selector.entry.js +1 -2
  217. package/dist/esm/gx-ide-data-type-selector.entry.js.map +1 -1
  218. package/dist/esm/gx-ide-design-import.entry.js +1 -2
  219. package/dist/esm/gx-ide-design-import.entry.js.map +1 -1
  220. package/dist/esm/gx-ide-entity-selector.entry.js +1 -2
  221. package/dist/esm/gx-ide-entity-selector.entry.js.map +1 -1
  222. package/dist/esm/gx-ide-file-item.entry.js +1 -2
  223. package/dist/esm/gx-ide-file-item.entry.js.map +1 -1
  224. package/dist/esm/gx-ide-file-uploader.entry.js +1 -2
  225. package/dist/esm/gx-ide-file-uploader.entry.js.map +1 -1
  226. package/dist/esm/gx-ide-kb-manager-export.entry.js +1 -2
  227. package/dist/esm/gx-ide-kb-manager-export.entry.js.map +1 -1
  228. package/dist/esm/gx-ide-kb-manager-import.entry.js +1 -2
  229. package/dist/esm/gx-ide-kb-manager-import.entry.js.map +1 -1
  230. package/dist/esm/gx-ide-manage-module-references-v2.entry.js +2 -3
  231. package/dist/esm/gx-ide-manage-module-references-v2.entry.js.map +1 -1
  232. package/dist/esm/gx-ide-manage-module-references.entry.js +2 -3
  233. package/dist/esm/gx-ide-manage-module-references.entry.js.map +1 -1
  234. package/dist/esm/gx-ide-new-environment.entry.js +1 -1
  235. package/dist/esm/gx-ide-new-kb.entry.js +2 -3
  236. package/dist/esm/gx-ide-new-kb.entry.js.map +1 -1
  237. package/dist/esm/gx-ide-object-selector.entry.js +2 -3
  238. package/dist/esm/gx-ide-object-selector.entry.js.map +1 -1
  239. package/dist/esm/gx-ide-open-api-import.entry.js +1 -2
  240. package/dist/esm/gx-ide-open-api-import.entry.js.map +1 -1
  241. package/dist/esm/gx-ide-references.entry.js +1 -2
  242. package/dist/esm/gx-ide-references.entry.js.map +1 -1
  243. package/dist/esm/gx-ide-sc-chat-container.entry.js +203 -99
  244. package/dist/esm/gx-ide-sc-chat-container.entry.js.map +1 -1
  245. package/dist/esm/gx-ide-select-kb-items.entry.js +1 -2
  246. package/dist/esm/gx-ide-select-kb-items.entry.js.map +1 -1
  247. package/dist/esm/gx-ide-share-kb.entry.js +1 -2
  248. package/dist/esm/gx-ide-share-kb.entry.js.map +1 -1
  249. package/dist/esm/gx-ide-splash.entry.js +2 -3
  250. package/dist/esm/gx-ide-splash.entry.js.map +1 -1
  251. package/dist/esm/gx-ide-start-page.entry.js +1 -2
  252. package/dist/esm/gx-ide-start-page.entry.js.map +1 -1
  253. package/dist/esm/gx-ide-team-dev-commit.entry.js +1 -1
  254. package/dist/esm/gx-ide-team-dev-commit.entry.js.map +1 -1
  255. package/dist/esm/gx-ide-team-dev-update.entry.js +1 -1
  256. package/dist/esm/gx-ide-team-dev-update.entry.js.map +1 -1
  257. package/dist/esm/gx-ide-welcome-page.entry.js +1 -2
  258. package/dist/esm/gx-ide-welcome-page.entry.js.map +1 -1
  259. package/dist/esm/gx-ide-ww-attributes.entry.js +2 -3
  260. package/dist/esm/gx-ide-ww-attributes.entry.js.map +1 -1
  261. package/dist/esm/gx-ide-ww-files.entry.js +1 -1
  262. package/dist/esm/gx-ide-ww-files.entry.js.map +1 -1
  263. package/dist/esm/gx-ide-ww-images.entry.js +2 -2
  264. package/dist/esm/gx-ide-ww-images.entry.js.map +1 -1
  265. package/dist/esm/index.js +8 -2
  266. package/dist/esm/index.js.map +1 -1
  267. package/dist/esm/loader.js +1 -1
  268. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  269. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  270. package/dist/genexus-ide-ui/gx-ide-assets/chat-container/langs/chat-container.lang.en.json +9 -0
  271. package/dist/genexus-ide-ui/gx-ide-assets/chat-container/langs/chat-container.lang.ja.json +9 -0
  272. package/dist/genexus-ide-ui/gx-ide-assets/chat-container/langs/chat-container.lang.zh.json +9 -0
  273. package/dist/genexus-ide-ui/gx-ide-assets/chat-welcome/helpers.tsx +31 -0
  274. package/dist/genexus-ide-ui/gx-ide-assets/chat-welcome/images/ai-avatar-welcome.svg +21 -0
  275. package/dist/genexus-ide-ui/gx-ide-assets/chat-welcome/images/ai-avatar.svg +11 -0
  276. package/dist/genexus-ide-ui/gx-ide-assets/chat-welcome/images/header-illustration.svg +24 -0
  277. package/dist/genexus-ide-ui/gx-ide-assets/chat-welcome/langs/chat-welcome.lang.en.json +10 -0
  278. package/dist/genexus-ide-ui/gx-ide-assets/chat-welcome/langs/chat-welcome.lang.ja.json +10 -0
  279. package/dist/genexus-ide-ui/gx-ide-assets/chat-welcome/langs/chat-welcome.lang.zh.json +10 -0
  280. package/dist/genexus-ide-ui/index.esm.js +8 -2
  281. package/dist/genexus-ide-ui/index.esm.js.map +1 -1
  282. package/dist/genexus-ide-ui/{p-a1d73ca3.entry.js → p-01d96378.entry.js} +3 -5
  283. package/dist/genexus-ide-ui/{p-a1d73ca3.entry.js.map → p-01d96378.entry.js.map} +1 -1
  284. package/dist/genexus-ide-ui/{p-f51adb3d.entry.js → p-036d005d.entry.js} +2 -2
  285. package/dist/genexus-ide-ui/{p-f3f35e5c.entry.js → p-04205aa4.entry.js} +2 -4
  286. package/dist/genexus-ide-ui/{p-f3f35e5c.entry.js.map → p-04205aa4.entry.js.map} +1 -1
  287. package/dist/genexus-ide-ui/{p-961bb2cc.entry.js → p-0bdf34f2.entry.js} +3 -5
  288. package/dist/genexus-ide-ui/{p-961bb2cc.entry.js.map → p-0bdf34f2.entry.js.map} +1 -1
  289. package/dist/genexus-ide-ui/{p-fa18a70c.entry.js → p-1c7ea1cb.entry.js} +8 -10
  290. package/dist/genexus-ide-ui/{p-fa18a70c.entry.js.map → p-1c7ea1cb.entry.js.map} +1 -1
  291. package/dist/genexus-ide-ui/{p-530c32aa.entry.js → p-29c69938.entry.js} +8 -10
  292. package/dist/genexus-ide-ui/{p-530c32aa.entry.js.map → p-29c69938.entry.js.map} +1 -1
  293. package/dist/genexus-ide-ui/{p-67762237.entry.js → p-385c9544.entry.js} +2 -2
  294. package/dist/genexus-ide-ui/{p-4b79c3ab.entry.js → p-3da8db15.entry.js} +2 -4
  295. package/dist/genexus-ide-ui/{p-4b79c3ab.entry.js.map → p-3da8db15.entry.js.map} +1 -1
  296. package/dist/genexus-ide-ui/{p-ef5dfd35.entry.js → p-41a4364d.entry.js} +2 -4
  297. package/dist/genexus-ide-ui/{p-ef5dfd35.entry.js.map → p-41a4364d.entry.js.map} +1 -1
  298. package/dist/genexus-ide-ui/{p-56331289.entry.js → p-4538dea5.entry.js} +13 -15
  299. package/dist/genexus-ide-ui/{p-56331289.entry.js.map → p-4538dea5.entry.js.map} +1 -1
  300. package/dist/genexus-ide-ui/{p-4c717aa7.entry.js → p-48062d23.entry.js} +2 -4
  301. package/dist/genexus-ide-ui/{p-4c717aa7.entry.js.map → p-48062d23.entry.js.map} +1 -1
  302. package/dist/genexus-ide-ui/{p-9a609b51.js → p-48f5911b.js} +50 -33
  303. package/dist/genexus-ide-ui/p-48f5911b.js.map +1 -0
  304. package/dist/genexus-ide-ui/{p-6d2174ed.entry.js → p-4d0ba4f6.entry.js} +3 -5
  305. package/dist/genexus-ide-ui/{p-6d2174ed.entry.js.map → p-4d0ba4f6.entry.js.map} +1 -1
  306. package/dist/genexus-ide-ui/{p-76c3fc51.entry.js → p-4e943649.entry.js} +2 -4
  307. package/dist/genexus-ide-ui/{p-76c3fc51.entry.js.map → p-4e943649.entry.js.map} +1 -1
  308. package/dist/genexus-ide-ui/{p-29a026bb.entry.js → p-67e0b419.entry.js} +10 -12
  309. package/dist/genexus-ide-ui/{p-29a026bb.entry.js.map → p-67e0b419.entry.js.map} +1 -1
  310. package/dist/genexus-ide-ui/{p-bbf88f43.entry.js → p-690942cb.entry.js} +2 -4
  311. package/dist/genexus-ide-ui/{p-bbf88f43.entry.js.map → p-690942cb.entry.js.map} +1 -1
  312. package/dist/genexus-ide-ui/{p-84618917.entry.js → p-6f898249.entry.js} +3 -5
  313. package/dist/genexus-ide-ui/{p-84618917.entry.js.map → p-6f898249.entry.js.map} +1 -1
  314. package/dist/genexus-ide-ui/{p-fecc50e4.entry.js → p-704499e5.entry.js} +40 -42
  315. package/dist/genexus-ide-ui/{p-fecc50e4.entry.js.map → p-704499e5.entry.js.map} +1 -1
  316. package/dist/genexus-ide-ui/{p-fe490103.entry.js → p-7abe2214.entry.js} +8 -10
  317. package/dist/genexus-ide-ui/{p-fe490103.entry.js.map → p-7abe2214.entry.js.map} +1 -1
  318. package/dist/genexus-ide-ui/{p-c747afac.entry.js → p-7d8812b0.entry.js} +17 -19
  319. package/dist/genexus-ide-ui/{p-c747afac.entry.js.map → p-7d8812b0.entry.js.map} +1 -1
  320. package/dist/genexus-ide-ui/{p-edf889d2.entry.js → p-88c81f18.entry.js} +2 -4
  321. package/dist/genexus-ide-ui/{p-edf889d2.entry.js.map → p-88c81f18.entry.js.map} +1 -1
  322. package/dist/genexus-ide-ui/{p-1072bf33.entry.js → p-8cb937b7.entry.js} +2 -4
  323. package/dist/genexus-ide-ui/{p-1072bf33.entry.js.map → p-8cb937b7.entry.js.map} +1 -1
  324. package/dist/genexus-ide-ui/{p-fdf41406.entry.js → p-9fa1200f.entry.js} +12 -14
  325. package/dist/genexus-ide-ui/{p-fdf41406.entry.js.map → p-9fa1200f.entry.js.map} +1 -1
  326. package/dist/genexus-ide-ui/{p-fcecdafa.entry.js → p-a1415a9c.entry.js} +3 -3
  327. package/dist/genexus-ide-ui/{p-50f304fe.entry.js → p-aab809c4.entry.js} +11 -13
  328. package/dist/genexus-ide-ui/{p-50f304fe.entry.js.map → p-aab809c4.entry.js.map} +1 -1
  329. package/dist/genexus-ide-ui/{p-833c3585.entry.js → p-c38ce0bf.entry.js} +2 -4
  330. package/dist/genexus-ide-ui/{p-833c3585.entry.js.map → p-c38ce0bf.entry.js.map} +1 -1
  331. package/dist/genexus-ide-ui/p-c5178973.js +109 -0
  332. package/dist/genexus-ide-ui/p-c5178973.js.map +1 -0
  333. package/dist/genexus-ide-ui/{p-eea944d4.entry.js → p-c7badbf1.entry.js} +2 -4
  334. package/dist/genexus-ide-ui/{p-eea944d4.entry.js.map → p-c7badbf1.entry.js.map} +1 -1
  335. package/dist/genexus-ide-ui/{p-2b3938b4.entry.js → p-d2107cb2.entry.js} +2 -2
  336. package/dist/genexus-ide-ui/{p-ba7d1472.entry.js → p-d3767a7d.entry.js} +2 -2
  337. package/dist/genexus-ide-ui/p-da473001.entry.js +338 -0
  338. package/dist/genexus-ide-ui/p-da473001.entry.js.map +1 -0
  339. package/dist/genexus-ide-ui/{p-007173ef.entry.js → p-e28e6bc4.entry.js} +3 -5
  340. package/dist/genexus-ide-ui/{p-007173ef.entry.js.map → p-e28e6bc4.entry.js.map} +1 -1
  341. package/dist/genexus-ide-ui/{p-4cbc8a8b.entry.js → p-eb9e760d.entry.js} +10 -12
  342. package/dist/genexus-ide-ui/{p-4cbc8a8b.entry.js.map → p-eb9e760d.entry.js.map} +1 -1
  343. package/dist/genexus-ide-ui/p-ec0809a7.entry.js +317 -0
  344. package/dist/genexus-ide-ui/p-ec0809a7.entry.js.map +1 -0
  345. package/dist/genexus-ide-ui/{p-5687fdb7.entry.js → p-ecba870e.entry.js} +9 -11
  346. package/dist/genexus-ide-ui/{p-5687fdb7.entry.js.map → p-ecba870e.entry.js.map} +1 -1
  347. package/dist/genexus-ide-ui/{p-5ac47c69.js → p-ede7bd20.js} +6885 -6346
  348. package/dist/genexus-ide-ui/p-ede7bd20.js.map +1 -0
  349. package/dist/types/common/common.d.ts +1 -1
  350. package/dist/types/components/{_helpers → chat}/chat-container/chat-container.d.ts +13 -2
  351. package/dist/types/components/chat/chat-welcome/chat-welcome.d.ts +39 -0
  352. package/dist/types/components/chat/chat-welcome/gx-ide-assets/chat-welcome/helpers.d.ts +1 -0
  353. package/dist/types/components/{_helpers/chat-container → chat}/code-render.d.ts +1 -1
  354. package/dist/types/components.d.ts +73 -0
  355. package/dist/types/index.d.ts +5 -1
  356. package/dist/types/showcase/chat-container/callbacks.d.ts +1 -1
  357. package/dist/types/showcase/chat-container/chat.showcase.d.ts +15 -0
  358. package/package.json +5 -5
  359. package/dist/cjs/MERCURY_ASSETS-6bbcc011.js +0 -5
  360. package/dist/cjs/MERCURY_ASSETS-6bbcc011.js.map +0 -1
  361. package/dist/cjs/assets-manager-7227a74b.js +0 -7
  362. package/dist/cjs/assets-manager-7227a74b.js.map +0 -1
  363. package/dist/cjs/code-render-db7cb770.js +0 -59
  364. package/dist/cjs/code-render-db7cb770.js.map +0 -1
  365. package/dist/cjs/common-72f91a78.js.map +0 -1
  366. package/dist/cjs/gx-ide-chat-container.cjs.entry.js +0 -62
  367. package/dist/cjs/gx-ide-chat-container.cjs.entry.js.map +0 -1
  368. package/dist/collection/components/_helpers/chat-container/chat-container.css +0 -204
  369. package/dist/collection/components/_helpers/chat-container/chat-container.js +0 -137
  370. package/dist/collection/components/_helpers/chat-container/chat-container.js.map +0 -1
  371. package/dist/collection/components/_helpers/chat-container/code-render.js +0 -46
  372. package/dist/collection/components/_helpers/chat-container/code-render.js.map +0 -1
  373. package/dist/components/assets-manager.js +0 -5
  374. package/dist/components/assets-manager.js.map +0 -1
  375. package/dist/esm/MERCURY_ASSETS-bbdf7018.js +0 -3
  376. package/dist/esm/MERCURY_ASSETS-bbdf7018.js.map +0 -1
  377. package/dist/esm/assets-manager-0d129105.js +0 -5
  378. package/dist/esm/assets-manager-0d129105.js.map +0 -1
  379. package/dist/esm/code-render-6cbb0e63.js +0 -56
  380. package/dist/esm/code-render-6cbb0e63.js.map +0 -1
  381. package/dist/esm/common-ccb4504a.js.map +0 -1
  382. package/dist/esm/gx-ide-chat-container.entry.js +0 -58
  383. package/dist/esm/gx-ide-chat-container.entry.js.map +0 -1
  384. package/dist/genexus-ide-ui/p-1a74d49a.entry.js +0 -231
  385. package/dist/genexus-ide-ui/p-1a74d49a.entry.js.map +0 -1
  386. package/dist/genexus-ide-ui/p-5ac47c69.js.map +0 -1
  387. package/dist/genexus-ide-ui/p-6e4208d8.js +0 -9
  388. package/dist/genexus-ide-ui/p-6e4208d8.js.map +0 -1
  389. package/dist/genexus-ide-ui/p-9a609b51.js.map +0 -1
  390. package/dist/genexus-ide-ui/p-be8a59fd.js +0 -107
  391. package/dist/genexus-ide-ui/p-be8a59fd.js.map +0 -1
  392. package/dist/genexus-ide-ui/p-db9c3b37.entry.js +0 -85
  393. package/dist/genexus-ide-ui/p-db9c3b37.entry.js.map +0 -1
  394. /package/dist/genexus-ide-ui/{p-f51adb3d.entry.js.map → p-036d005d.entry.js.map} +0 -0
  395. /package/dist/genexus-ide-ui/{p-67762237.entry.js.map → p-385c9544.entry.js.map} +0 -0
  396. /package/dist/genexus-ide-ui/{p-fcecdafa.entry.js.map → p-a1415a9c.entry.js.map} +0 -0
  397. /package/dist/genexus-ide-ui/{p-2b3938b4.entry.js.map → p-d2107cb2.entry.js.map} +0 -0
  398. /package/dist/genexus-ide-ui/{p-ba7d1472.entry.js.map → p-d3767a7d.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["convertActionToTreeViewItem","operations","treeData","forEach","operation","importCategoryTreeItem","id","caption","name","expanded","leaf","checkbox","push","openApiImportCss","CSS_BUNDLES","FILE_ICON","getIconPath","category","colorType","MENU_DELETE","CHECKBOX_ALL_CHECKED_VALUE","CHECKBOX_ALL_UNCHECKED_VALUE","GxIdeOpenAPIImport","_GxIdeOpenAPIImport__componentLocale","set","this","_GxIdeOpenAPIImport_renderedFirstTime","_GxIdeOpenAPIImport_shortcutsSrc","getAssetPath","_GxIdeOpenAPIImport_chShortcutsEl","_GxIdeOpenAPIImport_fileInputHiddenEl","_GxIdeOpenAPIImport_parentEl","_GxIdeOpenAPIImport_objectsTreeEl","_GxIdeOpenAPIImport_cancelImportHandler","cancelCallback","_GxIdeOpenAPIImport_handleImport","async","importCallback","selectedOperations","_GxIdeOpenAPIImport_objectsTreeCheckedItemsChangedHandler","event","detail","size","allItems","checkedItems","values","filter","node","item","checked","map","length","selectAllCheckboxValue","selectAllCheckboxIndeterminate","_GxIdeOpenAPIImport_handleSelectAll","__classPrivateFieldGet","updateAllItemsProperties","op","_GxIdeOpenAPIImport_objectTreeClickedHandler","selectedOperationForDescription","_a","description","_GxIdeOpenAPIImport_removeFileSelection","selectedFile","value","actionListItems","_GxIdeOpenAPIImport_selectFileInputChangedHandler","target","files","loadCallback","_GxIdeOpenAPIImport_selectFileInputHandler","click","_GxIdeOpenAPIImport_renderFooter","h","class","checkedValue","unCheckedValue","main","selectAll","indeterminate","onInput","disabled","importingIsInProcess","part","slot","onClick","footer","cancel","import","componentDidRender","componentDidRenderFirstTime","emit","componentName","__classPrivateFieldSet","componentWillLoad","Locale","getComponentStrings","el","suspendShortcuts","suspend","render","Host","model","src","ref","role","htmlFor","header","fileNameLabel","autoFocus","type","readonly","placeholder","fileNamePlaceholder","startImgSrc","hidden","accept","onChange","removeFileSelection","title","selectFileButton","moduleFolderLabel","defaultParent","defaultValue","selectEntityCallback","selectParentCallback","labelPosition","onCheckedItemsChange","onSelectedItemsChange","procedureDescription","call"],"sources":["src/components/open-api-import/helpers.ts","src/components/open-api-import/open-api-import.scss?tag=gx-ide-open-api-import&encapsulation=shadow","src/components/open-api-import/open-api-import.tsx"],"sourcesContent":["import { ApiOperationData } from \"./open-api-import\";\nimport { TreeViewItemModel } from \"@genexus/chameleon-controls-library\";\n\nexport const convertActionToTreeViewItem = (\n operations: ApiOperationData[]\n): TreeViewItemModel[] => {\n const treeData: TreeViewItemModel[] = [];\n if (!operations) {\n return treeData;\n }\n operations.forEach(operation => {\n const importCategoryTreeItem: TreeViewItemModel = {\n id: operation.id,\n caption: `${operation.name}`,\n expanded: true,\n leaf: true,\n checkbox: true\n };\n treeData.push(importCategoryTreeItem);\n });\n return treeData;\n};\n","section {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.main {\n position: relative;\n display: contents;\n}\n\n.input-file {\n display: flex;\n}\n\n.field {\n width: 100%;\n}\n\n.control-header__operations,\n.control-header__description {\n padding-block-start: var(--mer-spacing--md);\n}\n\n.header__field-group {\n grid-template:\n \"import-file-label import-file-name buttons-container\" max-content\n \"module-folder-label module-folder module-folder\" max-content\n / max-content 1fr max-content;\n}\n.module-folder-name {\n grid-area: module-folder;\n}\n.module-folder-label {\n grid-area: module-folder-label;\n}\n.import-file-label {\n grid-area: import-file-label;\n}\n\n.header__buttons-container {\n grid-area: buttons-container;\n}\n\n.section-grid {\n display: grid;\n grid-template:\n \"top-content-operations top-content-description\" max-content\n \"operations-area operations-description\" 1fr\n / 1fr 1fr;\n background-color: var(--items-container__bg-color);\n border-style: var(--items-container__border-style);\n border-width: var(--items-container__border-width);\n border-color: var(--items-container__border-color);\n border-block-start: 0;\n overflow-y: auto;\n}\n\n.list-wrapper {\n grid-area: operations-area;\n border-inline-end: var(--section-common-border);\n}\n.label {\n margin-top: 6px !important;\n}\n\n.tree-operations::part(item__header) {\n // WA Since this is a tree without parent node.\n // This componnent should ideally by an action-list,\n // but at the time of writting it doesn't support checkboxes.\n padding-inline-start: 0;\n}\n\n.procedure-description {\n grid-area: operations-description;\n overflow: auto;\n text-align: justify;\n}\n\n.control-header__operations {\n grid-area: top-content-operations;\n background-color: var(--items-container__bg-color);\n}\n\n.control-header__description {\n grid-area: top-content-description;\n background-color: var(--items-container__bg-color);\n}\n.text-align-center {\n text-align: center;\n}\n","/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n State,\n getAssetPath,\n Method\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../common/locale\";\nimport { EntityData } from \"../../common/types\";\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\nimport {\n TreeViewItemModel,\n TreeViewItemModelExtended,\n ChCheckboxCustomEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { convertActionToTreeViewItem } from \"./helpers\";\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 \"components/list-box\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/spacing\",\n \"utils/typography\"\n];\n\nconst FILE_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"file\",\n colorType: \"on-elevation\"\n});\n\nconst MENU_DELETE = getIconPath({\n category: \"menus\",\n name: \"delete\",\n colorType: \"primary\"\n});\n\nconst CHECKBOX_ALL_CHECKED_VALUE = \"allChecked\";\nconst CHECKBOX_ALL_UNCHECKED_VALUE = \"allUnchecked\";\n\n@Component({\n tag: \"gx-ide-open-api-import\",\n styleUrl: \"open-api-import.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/open-api-import\"]\n})\nexport class GxIdeOpenAPIImport {\n #_componentLocale: any;\n #renderedFirstTime = false;\n #shortcutsSrc = getAssetPath(`./gx-ide-assets/new-object/shortcuts.json`);\n\n @Element() el: HTMLGxIdeOpenApiImportElement;\n\n #chShortcutsEl: HTMLChShortcutsElement;\n #fileInputHiddenEl!: HTMLInputElement;\n #parentEl!: HTMLGxIdeEntitySelectorElement;\n\n @State() actionListItems: TreeViewItemModel[] = [];\n @State() importingIsInProcess = false;\n @State() operations: ApiOperationData[] = [];\n @State() selectedFile: File;\n @State() selectedOperationForDescription: string;\n @State() selectedOperations: string[] = [];\n @State() selectAllCheckboxValue: string;\n @State() selectAllCheckboxIndeterminate: boolean = false;\n\n /**\n * Default value for the Module/Folder field.\n */\n @Prop() readonly defaultParent: EntityData;\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Callback invoked when the user wants to cancel the export process.\n */\n @Prop() readonly cancelCallback: CancelCallback;\n\n /**\n * Callback invoked when the user wants to initiate the import process.\n */\n @Prop() readonly importCallback: ImportCallback;\n\n /**\n * Callback invoked must be loaded the content for an specification API\n */\n @Prop() readonly loadCallback: LoadCallback;\n\n /**\n * Callback invoked when action is executed on Module/Folder filter (button '...').\n */\n @Prop() readonly selectParentCallback: SelectParentCallback;\n\n /**\n * @description Gets fired when the component has rendered for the first time.\n */\n @Event() componentDidRenderFirstTime: EventEmitter<string>;\n\n #objectsTreeEl!: HTMLChTreeViewRenderElement;\n\n componentDidRender() {\n if (!this.#renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this.#_componentLocale.componentName\n );\n this.#renderedFirstTime = true;\n }\n }\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#chShortcutsEl.suspend = true;\n } else {\n this.#chShortcutsEl.suspend = false;\n }\n }\n\n // 9.LOCAL METHODS //\n #cancelImportHandler = () => {\n if (this.cancelCallback) {\n this.cancelCallback();\n }\n };\n\n #handleImport = async () => {\n await this.importCallback(this.selectedOperations);\n };\n\n #objectsTreeCheckedItemsChangedHandler = (\n event: CustomEvent<Map<string, TreeViewItemModelExtended>>\n ) => {\n if (event.detail.size === 0) {\n return;\n }\n const allItems = event.detail;\n const checkedItems = [...allItems.values()].filter(\n node => node.item.checked\n );\n this.selectedOperations = checkedItems.map(item => item.item.id);\n\n // Evaluate \"Select All\" checkbox state (siguiendo el patrón de kb-manager-import)\n if (allItems.size === checkedItems.length) {\n this.selectAllCheckboxValue = CHECKBOX_ALL_CHECKED_VALUE;\n this.selectAllCheckboxIndeterminate = false;\n } else if (checkedItems.length === 0) {\n this.selectAllCheckboxValue = CHECKBOX_ALL_UNCHECKED_VALUE;\n this.selectAllCheckboxIndeterminate = false;\n } else {\n this.selectAllCheckboxIndeterminate = true;\n }\n };\n\n #handleSelectAll = (event: ChCheckboxCustomEvent<string> | InputEvent) => {\n if (\"detail\" in event && this.#objectsTreeEl) {\n const checked =\n (event as ChCheckboxCustomEvent<string>).detail ===\n CHECKBOX_ALL_CHECKED_VALUE;\n // Usar updateAllItemsProperties como en kb-manager-import\n this.#objectsTreeEl.updateAllItemsProperties({ checked: checked });\n this.selectedOperations = checked ? this.operations.map(op => op.id) : [];\n this.selectAllCheckboxValue = checked\n ? CHECKBOX_ALL_CHECKED_VALUE\n : CHECKBOX_ALL_UNCHECKED_VALUE;\n this.selectAllCheckboxIndeterminate = false;\n }\n };\n\n #objectTreeClickedHandler = (\n event: CustomEvent<TreeViewItemModelExtended[]>\n ) => {\n this.selectedOperationForDescription = this.operations.filter(\n op => op.id === event.detail[0]?.item.id\n )[0]?.description;\n };\n\n #removeFileSelection = () => {\n this.selectedFile = null;\n this.#fileInputHiddenEl.value = null;\n this.operations = [];\n this.actionListItems = [];\n this.selectedOperationForDescription = null;\n };\n\n #selectFileInputChangedHandler = async (event: InputEvent) => {\n const target = event.target as HTMLInputElement;\n if (target.files?.length > 0) {\n this.selectedFile = target.files[0];\n this.operations = await this.loadCallback(\n this.selectedFile,\n this.#parentEl.value.id\n );\n this.actionListItems = convertActionToTreeViewItem(this.operations);\n }\n };\n\n #selectFileInputHandler = () => {\n this.#fileInputHiddenEl.click();\n };\n\n #renderFooter = (): HTMLElement => {\n return (\n <footer class=\"control-footer control-footer-space-between spacing-body-block-end spacing-body-inline\">\n <div class=\"buttons-spacer\">\n <ch-checkbox\n id=\"select-all-checkbox\"\n class=\"checkbox\"\n checkedValue={CHECKBOX_ALL_CHECKED_VALUE}\n unCheckedValue={CHECKBOX_ALL_UNCHECKED_VALUE}\n caption={this.#_componentLocale.main.selectAll}\n value={this.selectAllCheckboxValue}\n indeterminate={this.selectAllCheckboxIndeterminate}\n onInput={this.#handleSelectAll}\n disabled={this.importingIsInProcess || !this.operations?.length}\n part=\"select-all-checkbox\"\n ></ch-checkbox>\n </div>\n <div class=\"buttons-spacer\">\n <button\n class=\"button-secondary\"\n slot=\"footer-end\"\n part=\"button-cancel\"\n onClick={this.#cancelImportHandler}\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n\n <button\n class=\"button-primary\"\n slot=\"footer-end\"\n part=\"button-confirm\"\n onClick={this.#handleImport}\n >\n {this.#_componentLocale.footer.import}\n </button>\n </div>\n </footer>\n );\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n <section>\n <header\n class=\"header control-header-with-border space-body spacing-body-inline spacing-body-block-start\"\n role=\"banner\"\n >\n <div class=\"field-group header__field-group\">\n <div class=\"import-file-label\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"file-name\">\n {this.#_componentLocale.header.fileNameLabel}\n </label>\n </div>\n </div>\n <div class=\"input-file\">\n <div class=\"field input-file\">\n <ch-edit\n autoFocus\n id=\"file-name\"\n class=\"input file\"\n part=\"file-name\"\n type=\"text\"\n readonly\n value={this.selectedFile?.name}\n placeholder={\n this.#_componentLocale.header.fileNamePlaceholder\n }\n startImgSrc={FILE_ICON}\n ></ch-edit>\n <input\n hidden\n type=\"file\"\n accept=\".json, .yaml\"\n onChange={this.#selectFileInputChangedHandler}\n ref={(el: HTMLInputElement) =>\n (this.#fileInputHiddenEl = el as HTMLInputElement)\n }\n />\n </div>\n <div class=\"cancel-btn \">\n <button\n aria-label={\n this.#_componentLocale.header.removeFileSelection\n }\n title={this.#_componentLocale.header.removeFileSelection}\n id=\"reset-all-button\"\n class=\"button-tertiary button-icon-only\"\n part=\"reset-all-button\"\n onClick={this.#removeFileSelection}\n >\n <ch-image class=\"icon-md\" src={MENU_DELETE}></ch-image>\n </button>\n </div>\n </div>\n\n <div class=\"header__buttons-container\">\n <button\n id=\"select-file-load-button\"\n class=\"button-primary\"\n part=\"select-file-load-button\"\n onClick={this.#selectFileInputHandler}\n disabled={this.importingIsInProcess}\n >\n {this.#_componentLocale.header.selectFileButton}\n </button>\n </div>\n <div class=\"module-folder-label\">\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.#_componentLocale.header.moduleFolderLabel}\n </label>\n </div>\n </div>\n <div class=\"field module-folder-name \">\n <gx-ide-entity-selector\n value={this.defaultParent}\n defaultValue={this.defaultParent}\n selectEntityCallback={this.selectParentCallback}\n labelPosition=\"none\"\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.#parentEl = el as HTMLGxIdeEntitySelectorElement)\n }\n class=\"module-folder\"\n ></gx-ide-entity-selector>\n </div>\n </div>\n </header>\n\n <main class=\"main\">\n <div class=\"section-grid\">\n <h2\n id=\"operations-title\"\n class=\"control-header control-header-with-border control-header__operations subtitle-regular-xs text-align-center spacing-body-inline\"\n >\n {this.#_componentLocale.main.operations}\n </h2>\n\n <div\n class=\"list-wrapper field-group spacing-body-block-start spacing-body-inline scrollable\"\n role=\"region\"\n aria-labelledby=\"operations-title\"\n >\n <ch-tree-view-render\n class=\"tree-view tree-operations\"\n model={this.actionListItems}\n show-lines=\"last\"\n onCheckedItemsChange={\n this.#objectsTreeCheckedItemsChangedHandler\n }\n onSelectedItemsChange={this.#objectTreeClickedHandler}\n ref={el =>\n (this.#objectsTreeEl = el as HTMLChTreeViewRenderElement)\n }\n ></ch-tree-view-render>\n </div>\n\n <h2\n id=\"description-title\"\n class=\"control-header control-header-with-border control-header__description subtitle-regular-xs text-align-center spacing-body-inline\"\n >\n {this.#_componentLocale.main.procedureDescription}\n </h2>\n\n <div\n class=\"procedure-description field-group spacing-body-block-start spacing-body-inline scrollable\"\n role=\"region\"\n aria-labelledby=\"description-title\"\n >\n {this.selectedOperationForDescription}\n </div>\n </div>\n </main>\n {this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type ApiOperationData = {\n id: string;\n name: string;\n description: string;\n};\nexport type SelectionEventDetail = {\n itemId: string;\n itemValue: string;\n};\n\nexport type CancelCallback = () => Promise<void>;\nexport type ImportCallback = (operationIds: string[]) => Promise<boolean>;\nexport type SelectParentCallback = () => Promise<EntityData | undefined>;\nexport type LoadCallback = (\n source: string | File,\n parentId: string\n) => Promise<ApiOperationData[]>;\n"],"mappings":"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"}
1
+ {"version":3,"names":["convertActionToTreeViewItem","operations","treeData","forEach","operation","importCategoryTreeItem","id","caption","name","expanded","leaf","checkbox","push","openApiImportCss","CSS_BUNDLES","FILE_ICON","getIconPath","category","colorType","MENU_DELETE","CHECKBOX_ALL_CHECKED_VALUE","CHECKBOX_ALL_UNCHECKED_VALUE","GxIdeOpenAPIImport","_GxIdeOpenAPIImport__componentLocale","set","this","_GxIdeOpenAPIImport_renderedFirstTime","_GxIdeOpenAPIImport_shortcutsSrc","getAssetPath","_GxIdeOpenAPIImport_chShortcutsEl","_GxIdeOpenAPIImport_fileInputHiddenEl","_GxIdeOpenAPIImport_parentEl","_GxIdeOpenAPIImport_objectsTreeEl","_GxIdeOpenAPIImport_cancelImportHandler","cancelCallback","_GxIdeOpenAPIImport_handleImport","async","importCallback","selectedOperations","_GxIdeOpenAPIImport_objectsTreeCheckedItemsChangedHandler","event","detail","size","allItems","checkedItems","values","filter","node","item","checked","map","length","selectAllCheckboxValue","selectAllCheckboxIndeterminate","_GxIdeOpenAPIImport_handleSelectAll","__classPrivateFieldGet","updateAllItemsProperties","op","_GxIdeOpenAPIImport_objectTreeClickedHandler","selectedOperationForDescription","_a","description","_GxIdeOpenAPIImport_removeFileSelection","selectedFile","value","actionListItems","_GxIdeOpenAPIImport_selectFileInputChangedHandler","target","files","loadCallback","_GxIdeOpenAPIImport_selectFileInputHandler","click","_GxIdeOpenAPIImport_renderFooter","h","class","checkedValue","unCheckedValue","main","selectAll","indeterminate","onInput","disabled","importingIsInProcess","part","slot","onClick","footer","cancel","import","componentDidRender","componentDidRenderFirstTime","emit","componentName","__classPrivateFieldSet","componentWillLoad","Locale","getComponentStrings","el","suspendShortcuts","suspend","render","Host","model","src","ref","role","htmlFor","header","fileNameLabel","autoFocus","type","readonly","placeholder","fileNamePlaceholder","startImgSrc","hidden","accept","onChange","removeFileSelection","title","selectFileButton","moduleFolderLabel","defaultParent","defaultValue","selectEntityCallback","selectParentCallback","labelPosition","onCheckedItemsChange","onSelectedItemsChange","procedureDescription","call"],"sources":["src/components/open-api-import/helpers.ts","src/components/open-api-import/open-api-import.scss?tag=gx-ide-open-api-import&encapsulation=shadow","src/components/open-api-import/open-api-import.tsx"],"sourcesContent":["import { ApiOperationData } from \"./open-api-import\";\nimport { TreeViewItemModel } from \"@genexus/chameleon-controls-library\";\n\nexport const convertActionToTreeViewItem = (\n operations: ApiOperationData[]\n): TreeViewItemModel[] => {\n const treeData: TreeViewItemModel[] = [];\n if (!operations) {\n return treeData;\n }\n operations.forEach(operation => {\n const importCategoryTreeItem: TreeViewItemModel = {\n id: operation.id,\n caption: `${operation.name}`,\n expanded: true,\n leaf: true,\n checkbox: true\n };\n treeData.push(importCategoryTreeItem);\n });\n return treeData;\n};\n","section {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.main {\n position: relative;\n display: contents;\n}\n\n.input-file {\n display: flex;\n}\n\n.field {\n width: 100%;\n}\n\n.control-header__operations,\n.control-header__description {\n padding-block-start: var(--mer-spacing--md);\n}\n\n.header__field-group {\n grid-template:\n \"import-file-label import-file-name buttons-container\" max-content\n \"module-folder-label module-folder module-folder\" max-content\n / max-content 1fr max-content;\n}\n.module-folder-name {\n grid-area: module-folder;\n}\n.module-folder-label {\n grid-area: module-folder-label;\n}\n.import-file-label {\n grid-area: import-file-label;\n}\n\n.header__buttons-container {\n grid-area: buttons-container;\n}\n\n.section-grid {\n display: grid;\n grid-template:\n \"top-content-operations top-content-description\" max-content\n \"operations-area operations-description\" 1fr\n / 1fr 1fr;\n background-color: var(--items-container__bg-color);\n border-style: var(--items-container__border-style);\n border-width: var(--items-container__border-width);\n border-color: var(--items-container__border-color);\n border-block-start: 0;\n overflow-y: auto;\n}\n\n.list-wrapper {\n grid-area: operations-area;\n border-inline-end: var(--section-common-border);\n}\n.label {\n margin-top: 6px !important;\n}\n\n.tree-operations::part(item__header) {\n // WA Since this is a tree without parent node.\n // This componnent should ideally by an action-list,\n // but at the time of writting it doesn't support checkboxes.\n padding-inline-start: 0;\n}\n\n.procedure-description {\n grid-area: operations-description;\n overflow: auto;\n text-align: justify;\n}\n\n.control-header__operations {\n grid-area: top-content-operations;\n background-color: var(--items-container__bg-color);\n}\n\n.control-header__description {\n grid-area: top-content-description;\n background-color: var(--items-container__bg-color);\n}\n.text-align-center {\n text-align: center;\n}\n","/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n State,\n getAssetPath,\n Method\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../common/locale\";\nimport { EntityData } from \"../../common/types\";\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\nimport {\n TreeViewItemModel,\n TreeViewItemModelExtended,\n ChCheckboxCustomEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { convertActionToTreeViewItem } from \"./helpers\";\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 \"components/list-box\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/spacing\",\n \"utils/typography\"\n];\n\nconst FILE_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"file\",\n colorType: \"on-elevation\"\n});\n\nconst MENU_DELETE = getIconPath({\n category: \"menus\",\n name: \"delete\",\n colorType: \"primary\"\n});\n\nconst CHECKBOX_ALL_CHECKED_VALUE = \"allChecked\";\nconst CHECKBOX_ALL_UNCHECKED_VALUE = \"allUnchecked\";\n\n@Component({\n tag: \"gx-ide-open-api-import\",\n styleUrl: \"open-api-import.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/open-api-import\"]\n})\nexport class GxIdeOpenAPIImport {\n #_componentLocale: any;\n #renderedFirstTime = false;\n #shortcutsSrc = getAssetPath(`./gx-ide-assets/new-object/shortcuts.json`);\n\n @Element() el: HTMLGxIdeOpenApiImportElement;\n\n #chShortcutsEl: HTMLChShortcutsElement;\n #fileInputHiddenEl!: HTMLInputElement;\n #parentEl!: HTMLGxIdeEntitySelectorElement;\n\n @State() actionListItems: TreeViewItemModel[] = [];\n @State() importingIsInProcess = false;\n @State() operations: ApiOperationData[] = [];\n @State() selectedFile: File;\n @State() selectedOperationForDescription: string;\n @State() selectedOperations: string[] = [];\n @State() selectAllCheckboxValue: string;\n @State() selectAllCheckboxIndeterminate: boolean = false;\n\n /**\n * Default value for the Module/Folder field.\n */\n @Prop() readonly defaultParent: EntityData;\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Callback invoked when the user wants to cancel the export process.\n */\n @Prop() readonly cancelCallback: CancelCallback;\n\n /**\n * Callback invoked when the user wants to initiate the import process.\n */\n @Prop() readonly importCallback: ImportCallback;\n\n /**\n * Callback invoked must be loaded the content for an specification API\n */\n @Prop() readonly loadCallback: LoadCallback;\n\n /**\n * Callback invoked when action is executed on Module/Folder filter (button '...').\n */\n @Prop() readonly selectParentCallback: SelectParentCallback;\n\n /**\n * @description Gets fired when the component has rendered for the first time.\n */\n @Event() componentDidRenderFirstTime: EventEmitter<string>;\n\n #objectsTreeEl!: HTMLChTreeViewRenderElement;\n\n componentDidRender() {\n if (!this.#renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this.#_componentLocale.componentName\n );\n this.#renderedFirstTime = true;\n }\n }\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#chShortcutsEl.suspend = true;\n } else {\n this.#chShortcutsEl.suspend = false;\n }\n }\n\n // 9.LOCAL METHODS //\n #cancelImportHandler = () => {\n if (this.cancelCallback) {\n this.cancelCallback();\n }\n };\n\n #handleImport = async () => {\n await this.importCallback(this.selectedOperations);\n };\n\n #objectsTreeCheckedItemsChangedHandler = (\n event: CustomEvent<Map<string, TreeViewItemModelExtended>>\n ) => {\n if (event.detail.size === 0) {\n return;\n }\n const allItems = event.detail;\n const checkedItems = [...allItems.values()].filter(\n node => node.item.checked\n );\n this.selectedOperations = checkedItems.map(item => item.item.id);\n\n // Evaluate \"Select All\" checkbox state (siguiendo el patrón de kb-manager-import)\n if (allItems.size === checkedItems.length) {\n this.selectAllCheckboxValue = CHECKBOX_ALL_CHECKED_VALUE;\n this.selectAllCheckboxIndeterminate = false;\n } else if (checkedItems.length === 0) {\n this.selectAllCheckboxValue = CHECKBOX_ALL_UNCHECKED_VALUE;\n this.selectAllCheckboxIndeterminate = false;\n } else {\n this.selectAllCheckboxIndeterminate = true;\n }\n };\n\n #handleSelectAll = (event: ChCheckboxCustomEvent<string> | InputEvent) => {\n if (\"detail\" in event && this.#objectsTreeEl) {\n const checked =\n (event as ChCheckboxCustomEvent<string>).detail ===\n CHECKBOX_ALL_CHECKED_VALUE;\n // Usar updateAllItemsProperties como en kb-manager-import\n this.#objectsTreeEl.updateAllItemsProperties({ checked: checked });\n this.selectedOperations = checked ? this.operations.map(op => op.id) : [];\n this.selectAllCheckboxValue = checked\n ? CHECKBOX_ALL_CHECKED_VALUE\n : CHECKBOX_ALL_UNCHECKED_VALUE;\n this.selectAllCheckboxIndeterminate = false;\n }\n };\n\n #objectTreeClickedHandler = (\n event: CustomEvent<TreeViewItemModelExtended[]>\n ) => {\n this.selectedOperationForDescription = this.operations.filter(\n op => op.id === event.detail[0]?.item.id\n )[0]?.description;\n };\n\n #removeFileSelection = () => {\n this.selectedFile = null;\n this.#fileInputHiddenEl.value = null;\n this.operations = [];\n this.actionListItems = [];\n this.selectedOperationForDescription = null;\n };\n\n #selectFileInputChangedHandler = async (event: InputEvent) => {\n const target = event.target as HTMLInputElement;\n if (target.files?.length > 0) {\n this.selectedFile = target.files[0];\n this.operations = await this.loadCallback(\n this.selectedFile,\n this.#parentEl.value.id\n );\n this.actionListItems = convertActionToTreeViewItem(this.operations);\n }\n };\n\n #selectFileInputHandler = () => {\n this.#fileInputHiddenEl.click();\n };\n\n #renderFooter = (): HTMLElement => {\n return (\n <footer class=\"control-footer control-footer-space-between spacing-body-block-end spacing-body-inline\">\n <div class=\"buttons-spacer\">\n <ch-checkbox\n id=\"select-all-checkbox\"\n class=\"checkbox\"\n checkedValue={CHECKBOX_ALL_CHECKED_VALUE}\n unCheckedValue={CHECKBOX_ALL_UNCHECKED_VALUE}\n caption={this.#_componentLocale.main.selectAll}\n value={this.selectAllCheckboxValue}\n indeterminate={this.selectAllCheckboxIndeterminate}\n onInput={this.#handleSelectAll}\n disabled={this.importingIsInProcess || !this.operations?.length}\n part=\"select-all-checkbox\"\n ></ch-checkbox>\n </div>\n <div class=\"buttons-spacer\">\n <button\n class=\"button-secondary\"\n slot=\"footer-end\"\n part=\"button-cancel\"\n onClick={this.#cancelImportHandler}\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n\n <button\n class=\"button-primary\"\n slot=\"footer-end\"\n part=\"button-confirm\"\n onClick={this.#handleImport}\n >\n {this.#_componentLocale.footer.import}\n </button>\n </div>\n </footer>\n );\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n <section>\n <header\n class=\"header control-header-with-border space-body spacing-body-inline spacing-body-block-start\"\n role=\"banner\"\n >\n <div class=\"field-group header__field-group\">\n <div class=\"import-file-label\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"file-name\">\n {this.#_componentLocale.header.fileNameLabel}\n </label>\n </div>\n </div>\n <div class=\"input-file\">\n <div class=\"field input-file\">\n <ch-edit\n autoFocus\n id=\"file-name\"\n class=\"input file\"\n part=\"file-name\"\n type=\"text\"\n readonly\n value={this.selectedFile?.name}\n placeholder={\n this.#_componentLocale.header.fileNamePlaceholder\n }\n startImgSrc={FILE_ICON}\n ></ch-edit>\n <input\n hidden\n type=\"file\"\n accept=\".json, .yaml\"\n onChange={this.#selectFileInputChangedHandler}\n ref={(el: HTMLInputElement) =>\n (this.#fileInputHiddenEl = el as HTMLInputElement)\n }\n />\n </div>\n <div class=\"cancel-btn \">\n <button\n aria-label={\n this.#_componentLocale.header.removeFileSelection\n }\n title={this.#_componentLocale.header.removeFileSelection}\n id=\"reset-all-button\"\n class=\"button-tertiary button-icon-only\"\n part=\"reset-all-button\"\n onClick={this.#removeFileSelection}\n >\n <ch-image class=\"icon-md\" src={MENU_DELETE}></ch-image>\n </button>\n </div>\n </div>\n\n <div class=\"header__buttons-container\">\n <button\n id=\"select-file-load-button\"\n class=\"button-primary\"\n part=\"select-file-load-button\"\n onClick={this.#selectFileInputHandler}\n disabled={this.importingIsInProcess}\n >\n {this.#_componentLocale.header.selectFileButton}\n </button>\n </div>\n <div class=\"module-folder-label\">\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.#_componentLocale.header.moduleFolderLabel}\n </label>\n </div>\n </div>\n <div class=\"field module-folder-name \">\n <gx-ide-entity-selector\n value={this.defaultParent}\n defaultValue={this.defaultParent}\n selectEntityCallback={this.selectParentCallback}\n labelPosition=\"none\"\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.#parentEl = el as HTMLGxIdeEntitySelectorElement)\n }\n class=\"module-folder\"\n ></gx-ide-entity-selector>\n </div>\n </div>\n </header>\n\n <main class=\"main\">\n <div class=\"section-grid\">\n <h2\n id=\"operations-title\"\n class=\"control-header control-header-with-border control-header__operations subtitle-regular-xs text-align-center spacing-body-inline\"\n >\n {this.#_componentLocale.main.operations}\n </h2>\n\n <div\n class=\"list-wrapper field-group spacing-body-block-start spacing-body-inline scrollable\"\n role=\"region\"\n aria-labelledby=\"operations-title\"\n >\n <ch-tree-view-render\n class=\"tree-view tree-operations\"\n model={this.actionListItems}\n show-lines=\"last\"\n onCheckedItemsChange={\n this.#objectsTreeCheckedItemsChangedHandler\n }\n onSelectedItemsChange={this.#objectTreeClickedHandler}\n ref={el =>\n (this.#objectsTreeEl = el as HTMLChTreeViewRenderElement)\n }\n ></ch-tree-view-render>\n </div>\n\n <h2\n id=\"description-title\"\n class=\"control-header control-header-with-border control-header__description subtitle-regular-xs text-align-center spacing-body-inline\"\n >\n {this.#_componentLocale.main.procedureDescription}\n </h2>\n\n <div\n class=\"procedure-description field-group spacing-body-block-start spacing-body-inline scrollable\"\n role=\"region\"\n aria-labelledby=\"description-title\"\n >\n {this.selectedOperationForDescription}\n </div>\n </div>\n </main>\n {this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type ApiOperationData = {\n id: string;\n name: string;\n description: string;\n};\nexport type SelectionEventDetail = {\n itemId: string;\n itemValue: string;\n};\n\nexport type CancelCallback = () => Promise<void>;\nexport type ImportCallback = (operationIds: string[]) => Promise<boolean>;\nexport type SelectParentCallback = () => Promise<EntityData | undefined>;\nexport type LoadCallback = (\n source: string | File,\n parentId: string\n) => Promise<ApiOperationData[]>;\n"],"mappings":"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"}
@@ -2,9 +2,7 @@ import { r as e, c as t, g as s, h as i, H as a, a as l } from "./p-25a9f1d7.js"
2
2
 
3
3
  import { L as c } from "./p-311eedf3.js";
4
4
 
5
- import { g as o } from "./p-6e4208d8.js";
6
-
7
- import "./p-5ac47c69.js";
5
+ import { g as o } from "./p-ede7bd20.js";
8
6
 
9
7
  const taskDocumentsToActionListItemModel = (e, t) => {
10
8
  const s = [];
@@ -53,7 +51,7 @@ var h = undefined && undefined.__classPrivateFieldSet || function(e, t, s, i, a)
53
51
  return i === "a" ? a.call(e, s) : a ? a.value = s : t.set(e, s), s;
54
52
  };
55
53
 
56
- var d, u, f, b, m, g, p, k, w, v, x, y, M, W, _, C, E, T, I, R, j, q, D, V, S, z, B, N;
54
+ var d, u, f, b, m, g, p, k, w, v, x, y, M, W, _, C, E, T, I, R, q, j, D, V, S, z, B, N;
57
55
 
58
56
  const A = "true";
59
57
 
@@ -112,12 +110,12 @@ const F = class {
112
110
  this.selectedDocument = null;
113
111
  r(this, D, "f").call(this);
114
112
  }));
115
- j.set(this, (async e => {
113
+ q.set(this, (async e => {
116
114
  if (e.detail) {
117
115
  r(this, d, "m", _).call(this, e.detail);
118
116
  }
119
117
  }));
120
- q.set(this, (e => {
118
+ j.set(this, (e => {
121
119
  this.selectedDocument = this.documents.find((t => {
122
120
  var s;
123
121
  return t.name === ((s = e.detail[0]) === null || s === void 0 ? void 0 : s.item.caption);
@@ -272,7 +270,7 @@ const F = class {
272
270
  selection: "single",
273
271
  class: "list-box",
274
272
  model: this.documentsActionListState,
275
- onSelectedItemsChange: r(this, q, "f")
273
+ onSelectedItemsChange: r(this, j, "f")
276
274
  })), r(this, S, "f").call(this) ]));
277
275
  this.documentsActionListState = [];
278
276
  this.documentName = null;
@@ -330,7 +328,7 @@ const F = class {
330
328
  placeholder: r(this, u, "f").documents.suggestPlaceholder,
331
329
  suggest: true,
332
330
  onInput: r(this, T, "f"),
333
- onChange: r(this, j, "f"),
331
+ onChange: r(this, q, "f"),
334
332
  suggestOptions: {
335
333
  alreadyProcessed: false,
336
334
  autoExpand: true,
@@ -369,7 +367,7 @@ const F = class {
369
367
  u = new WeakMap, f = new WeakMap, b = new WeakMap, m = new WeakMap, g = new WeakMap,
370
368
  p = new WeakMap, k = new WeakMap, w = new WeakMap, v = new WeakMap, x = new WeakMap,
371
369
  y = new WeakMap, M = new WeakMap, C = new WeakMap, E = new WeakMap, T = new WeakMap,
372
- R = new WeakMap, j = new WeakMap, q = new WeakMap, D = new WeakMap, V = new WeakMap,
370
+ R = new WeakMap, q = new WeakMap, j = new WeakMap, D = new WeakMap, V = new WeakMap,
373
371
  S = new WeakMap, z = new WeakMap, B = new WeakMap, N = new WeakMap, d = new WeakSet,
374
372
  W = function _GxIdeBpmTaskDocuments_getAllCheckboxes(e) {
375
373
  const t = [];
@@ -416,4 +414,4 @@ W = function _GxIdeBpmTaskDocuments_getAllCheckboxes(e) {
416
414
  F.style = n;
417
415
 
418
416
  export { F as gx_ide_bpm_task_documents };
419
- //# sourceMappingURL=p-fe490103.entry.js.map
417
+ //# sourceMappingURL=p-7abe2214.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["taskDocumentsToActionListItemModel","objects","selectedDocument","actionListDocuments","forEach","object","index","itemId","name","itemValue","push","id","caption","selected","type","convertSuggestedDocumentsToSuggestItems","suggestedDocuments","suggestItems","length","suggestedDocument","suggestItem","value","taskDocumentsCss","CHECKED_VALUE","CSS_BUNDLES","MODULE_ICON","getIconPath","category","MORE_ICON","colorType","DELETE_ICON","NODENAME","GxIdeBpmTaskDocuments","_GxIdeBpmTaskDocuments__componentLocale","set","this","_GxIdeBpmTaskDocuments_renderedFirstTime","_GxIdeBpmTaskDocuments_shortcutsSrc","getAssetPath","_GxIdeBpmTaskDocuments_chShortcutsEl","_GxIdeBpmTaskDocuments_deleteEnabledCheckboxEl","_GxIdeBpmTaskDocuments_deleteRequiredCheckboxEl","_GxIdeBpmTaskDocuments_newEnabledCheckboxEl","_GxIdeBpmTaskDocuments_newRequiredCheckboxEl","_GxIdeBpmTaskDocuments_readEnabledCheckboxEl","_GxIdeBpmTaskDocuments_readRequiredCheckboxEl","_GxIdeBpmTaskDocuments_updateEnabledCheckboxEl","_GxIdeBpmTaskDocuments_updateRequiredCheckboxEl","_GxIdeBpmTaskDocuments_cancelCallbackHandler","cancelCallback","_GxIdeBpmTaskDocuments_confirmCallbackHandler","confirmCallback","documents","_GxIdeBpmTaskDocuments_documentSuggestValueChangedHandler","async","e","detail","suggestDocumentsCallback","then","result","catch","_GxIdeBpmTaskDocuments_handleDeleteButton","filter","doc","__classPrivateFieldGet","_GxIdeBpmTaskDocuments_refreshDocumentsActionListState","call","_GxIdeBpmTaskDocuments_listenDocumentSelected","_GxIdeBpmTaskDocuments_instances","_GxIdeBpmTaskDocuments_addDocument","_GxIdeBpmTaskDocuments_objectSelectionChangedHandler","find","_a","item","sort","a","b","localeCompare","documentsActionListState","_b","_GxIdeBpmTaskDocuments_selectDocumentCallbackHandler","callbackResult","selectDocumentCallback","documentName","_GxIdeBpmTaskDocuments_renderActions","h","class","rowSelectionMode","keyboardNavigationMode","columnResizeMode","columnId","columnName","settingable","actions","enabledCheckbox","requiredCheckbox","rowid","readLabel","checkedValue","readEnabled","toString","ref","el","__classPrivateFieldSet","readRequired","newLabel","_c","newEnabled","_d","newRequired","updateLabel","_e","updateEnabled","_f","updateRequired","deleteLabel","_g","deleteEnabled","_h","deleteRequired","_GxIdeBpmTaskDocuments_renderEmptyState","stateIconSrc","isAnimated","stateTitle","emptyRightPanelInfo","title","onClick","buttonCaption","_GxIdeBpmTaskDocuments_renderFooter","part","footer","cancelButton","confirmButton","_GxIdeBpmTaskDocuments_renderMain","selection","model","onSelectedItemsChange","componentWillLoad","Locale","getComponentStrings","componentDidRender","componentDidRenderFirstTime","emit","componentName","shadowRoot","checkboxes","_GxIdeBpmTaskDocuments_getAllCheckboxes","checkbox","addEventListener","_GxIdeBpmTaskDocuments_handleCheckboxChange","bind","suspendShortcuts","suspend","render","Host","src","placeholder","suggestPlaceholder","suggest","onInput","onChange","suggestOptions","alreadyProcessed","autoExpand","hideMatchesAndShowNonMatches","highlightMatchedItems","matchCase","regularExpression","strict","addDocumentButtonLabel","clearDocumentButtonLabel","node","childNodes","child","nodeName","HTMLElement","documentExists","some","data","map"],"sources":["src/components/bpm/task-documents/helpers.ts","src/components/bpm/task-documents/task-documents.scss?tag=gx-ide-bpm-task-documents&encapsulation=shadow","src/components/bpm/task-documents/task-documents.tsx"],"sourcesContent":["import { TaskDocumentData } from \"./task-documents\";\nimport { ActionListItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/action-list/types\";\nimport { ComboBoxItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/combo-box/types\";\n\nexport const taskDocumentsToActionListItemModel = (\n objects: TaskDocumentData[],\n selectedDocument?: TaskDocumentData\n): ActionListItemModel[] => {\n const actionListDocuments: ActionListItemModel[] = [];\n objects?.forEach((object, index) => {\n const itemId = `task-${object.name}`;\n const itemValue = object.name;\n actionListDocuments.push({\n id: itemId,\n caption: itemValue,\n selected: selectedDocument\n ? selectedDocument.name === object.name\n : index === 0,\n type: \"actionable\"\n });\n });\n return actionListDocuments;\n};\n\n/* References Types*/\n\n/**\n * @description This function converts string[] to ComboBoxItemModel[]\n */\nexport const convertSuggestedDocumentsToSuggestItems = (\n suggestedDocuments: string[]\n): ComboBoxItemModel[] => {\n const suggestItems: ComboBoxItemModel[] = [];\n if (suggestedDocuments.length) {\n suggestedDocuments.forEach((suggestedDocument: string) => {\n const suggestItem: ComboBoxItemModel = {\n value: suggestedDocument,\n caption: suggestedDocument\n };\n suggestItems.push(suggestItem);\n });\n }\n return suggestItems;\n};\n",":host {\n display: grid;\n grid-template-columns: 1fr;\n grid-template-rows: 1fr max-content;\n block-size: 100%;\n overflow: auto;\n}\n.section {\n display: contents;\n}\n.main {\n display: grid;\n grid-template-rows: max-content 1fr max-content;\n block-size: 100%;\n overflow: auto;\n}\n\n.documents__header {\n grid-template-columns: 1fr max-content;\n}\n.documents__suggest {\n flex: 1;\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n State,\n getAssetPath,\n Method\n} from \"@stencil/core\";\nimport { Locale } from \"../../../common/locale\";\nimport {\n convertSuggestedDocumentsToSuggestItems,\n taskDocumentsToActionListItemModel\n} from \"./helpers\";\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\nimport { ActionListItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/action-list/types\";\nimport { ComboBoxItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/combo-box/types\";\nimport { ChComboBoxRenderCustomEvent } from \"@genexus/chameleon-controls-library\";\n\nconst CHECKED_VALUE = \"true\";\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/list-box\",\n \"components/tabular-grid\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/spacing\",\n \"chameleon/scrollbar\"\n];\nconst MODULE_ICON = getIconPath({\n category: \"objects\",\n name: \"module\"\n});\nconst MORE_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"show-more-horizontal\",\n colorType: \"primary\"\n});\nconst DELETE_ICON = getIconPath({\n category: \"menus\",\n name: \"delete\",\n colorType: \"primary\"\n});\n\nconst NODENAME = \"CH-CHECKBOX\";\n@Component({\n tag: \"gx-ide-bpm-task-documents\",\n styleUrl: \"task-documents.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/bpm-task-documents\"]\n})\nexport class GxIdeBpmTaskDocuments {\n #_componentLocale: any;\n #renderedFirstTime = false;\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/bpm-task-documents/shortcuts.json`\n );\n\n @Element() el: HTMLGxIdeBpmTaskDocumentsElement;\n\n #chShortcutsEl: HTMLChShortcutsElement;\n #deleteEnabledCheckboxEl: HTMLChCheckboxElement;\n #deleteRequiredCheckboxEl: HTMLChCheckboxElement;\n\n #newEnabledCheckboxEl: HTMLChCheckboxElement;\n #newRequiredCheckboxEl: HTMLChCheckboxElement;\n #readEnabledCheckboxEl: HTMLChCheckboxElement;\n #readRequiredCheckboxEl: HTMLChCheckboxElement;\n #updateEnabledCheckboxEl: HTMLChCheckboxElement;\n #updateRequiredCheckboxEl: HTMLChCheckboxElement;\n\n /**\n * Documents state for the action list\n */\n @State() documentsActionListState: ActionListItemModel[] = [];\n\n @State() documentName: string = null;\n\n /**\n * Document selected in the action list\n */\n @State() selectedDocument: TaskDocumentData = null;\n\n /**\n * Possible suggestions for the documents\n */\n @State() suggestedDocuments: ComboBoxItemModel[];\n\n /**\n * @property documents\n * @description The current value of the documents for the task\n */\n\n @Prop({ mutable: true }) documents: TaskDocumentData[];\n\n /**\n * @property cancelCallback\n * @description Callback invoked when the user cancels the application declaration (Cancel button)\n */\n @Prop() readonly cancelCallback: CancelCallback;\n\n /**\n * @property confirmCallback\n * @description Callback invoked when the user confirms the application declaration (Ok button)\n */\n @Prop() readonly confirmCallback: ConfirmCallback;\n\n /**\n * @property selectDocumentCallback\n * @description Callback invoked when the user presses the '...' button to access the WorkflowDocuments selection dialog. Returns the name of the document to be inserted in the input or 'undefined' if it was canceled.\n */\n @Prop() readonly selectDocumentCallback: SelectDocumentCallback;\n\n /**\n * @property suggestDocumentsCallback\n * @description Callback that must be called to obtain options for the document input.\n */\n @Prop() readonly suggestDocumentsCallback: SuggestDocumentsCallback;\n\n /**\n * @description Gets fired when the component has rendered for the first time.\n */\n @Event() componentDidRenderFirstTime: EventEmitter<string>;\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n this.#refreshDocumentsActionListState();\n }\n\n componentDidRender() {\n if (!this.#renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this.#_componentLocale.componentName\n );\n this.#renderedFirstTime = true;\n }\n const shadowRoot = this.el.shadowRoot;\n const checkboxes = this.#getAllCheckboxes(\n shadowRoot as unknown as HTMLElement\n );\n if (checkboxes) {\n checkboxes.forEach(checkbox => {\n checkbox.addEventListener(\n \"input\",\n this.#handleCheckboxChange.bind(this)\n );\n });\n }\n }\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#chShortcutsEl.suspend = true;\n } else {\n this.#chShortcutsEl.suspend = false;\n }\n }\n\n #getAllCheckboxes(node: HTMLElement): HTMLChCheckboxElement[] {\n const checkboxes: HTMLChCheckboxElement[] = [];\n\n node.childNodes.forEach(child => {\n if (child.nodeName === NODENAME) {\n checkboxes.push(child as HTMLChCheckboxElement);\n } else if (child instanceof HTMLElement) {\n checkboxes.push(...this.#getAllCheckboxes(child));\n }\n });\n\n return checkboxes;\n }\n #addDocument(documentName: string) {\n const documentExists = this.documents.some(\n doc => doc.name === documentName\n );\n if (!documentExists) {\n this.documents = [\n ...this.documents,\n {\n name: documentName,\n deleteEnabled: false,\n deleteRequired: false,\n newEnabled: false,\n newRequired: false,\n readEnabled: false,\n readRequired: false,\n updateEnabled: false,\n updateRequired: false\n }\n ];\n this.#refreshDocumentsActionListState();\n }\n }\n\n #cancelCallbackHandler = () => {\n this.cancelCallback();\n };\n #confirmCallbackHandler = () => {\n this.confirmCallback(this.documents);\n };\n\n #documentSuggestValueChangedHandler = async (\n e: ChComboBoxRenderCustomEvent<string> & InputEvent\n ) => {\n const value = e.detail;\n this.suggestDocumentsCallback(value)\n .then(result => {\n this.suggestedDocuments =\n convertSuggestedDocumentsToSuggestItems(result);\n })\n .catch(() => {\n // to do\n });\n };\n\n #handleCheckboxChange() {\n const data: TaskDocumentData = {\n name: this.selectedDocument.name,\n readEnabled: this.#readEnabledCheckboxEl.value === CHECKED_VALUE,\n readRequired: this.#readRequiredCheckboxEl.value === CHECKED_VALUE,\n newEnabled: this.#newEnabledCheckboxEl.value === CHECKED_VALUE,\n newRequired: this.#newRequiredCheckboxEl.value === CHECKED_VALUE,\n updateEnabled: this.#updateEnabledCheckboxEl.value === CHECKED_VALUE,\n updateRequired: this.#updateRequiredCheckboxEl.value === CHECKED_VALUE,\n deleteEnabled: this.#deleteEnabledCheckboxEl.value === CHECKED_VALUE,\n deleteRequired: this.#deleteRequiredCheckboxEl.value === CHECKED_VALUE\n };\n\n this.selectedDocument = data;\n\n this.documents = this.documents.map(doc =>\n doc.name === this.selectedDocument.name ? this.selectedDocument : doc\n );\n }\n\n #handleDeleteButton = () => {\n this.documents = this.documents.filter(\n doc => doc.name !== this.selectedDocument.name\n );\n this.selectedDocument = null;\n this.#refreshDocumentsActionListState();\n };\n\n #listenDocumentSelected = async (e: CustomEvent<string>) => {\n if (e.detail) {\n this.#addDocument(e.detail);\n }\n };\n\n #objectSelectionChangedHandler = (e: CustomEvent) => {\n this.selectedDocument = this.documents.find(\n doc => doc.name === e.detail[0]?.item.caption\n );\n };\n\n #refreshDocumentsActionListState = () => {\n this.documents?.sort((a, b) => {\n return a.name.localeCompare(b.name);\n });\n this.documentsActionListState = taskDocumentsToActionListItemModel(\n this.documents,\n this.selectedDocument\n );\n\n this.selectedDocument =\n this.selectedDocument || this.documents?.[0] || null;\n };\n\n #selectDocumentCallbackHandler = async () => {\n const callbackResult = await this.selectDocumentCallback();\n if (callbackResult) {\n this.documentName = callbackResult;\n this.#addDocument(callbackResult);\n }\n };\n\n #renderActions = () => {\n return (\n <ch-tabular-grid\n class=\"tabular-grid scrollable\"\n rowSelectionMode=\"none\"\n keyboardNavigationMode=\"focus\"\n columnResizeMode=\"single\"\n >\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnId=\"code\"\n columnName=\"\"\n settingable={false}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnId=\"enabled\"\n settingable={false}\n columnName={this.#_componentLocale.actions.enabledCheckbox}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnId=\"required\"\n settingable={false}\n columnName={this.#_componentLocale.actions.requiredCheckbox}\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n\n <ch-tabular-grid-row\n // read\n class=\"tabular-grid-row\"\n rowid=\"read\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {this.#_componentLocale.actions.readLabel}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-checkbox\n class=\"checkbox\"\n checkedValue={CHECKED_VALUE}\n value={this.selectedDocument?.readEnabled.toString()}\n ref={el =>\n (this.#readEnabledCheckboxEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-checkbox\n class=\"checkbox\"\n checkedValue={CHECKED_VALUE}\n value={this.selectedDocument?.readRequired.toString()}\n ref={el =>\n (this.#readRequiredCheckboxEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n\n <ch-tabular-grid-row\n // new\n class=\"tabular-grid-row\"\n rowid=\"read\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {this.#_componentLocale.actions.newLabel}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-checkbox\n class=\"checkbox\"\n checkedValue={CHECKED_VALUE}\n value={this.selectedDocument?.newEnabled.toString()}\n ref={el =>\n (this.#newEnabledCheckboxEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-checkbox\n class=\"checkbox\"\n checkedValue={CHECKED_VALUE}\n value={this.selectedDocument?.newRequired.toString()}\n ref={el =>\n (this.#newRequiredCheckboxEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n\n <ch-tabular-grid-row\n // update\n class=\"tabular-grid-row\"\n rowid=\"read\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {this.#_componentLocale.actions.updateLabel}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-checkbox\n class=\"checkbox\"\n checkedValue={CHECKED_VALUE}\n value={this.selectedDocument?.updateEnabled.toString()}\n ref={el =>\n (this.#updateEnabledCheckboxEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-checkbox\n class=\"checkbox\"\n checkedValue={CHECKED_VALUE}\n value={this.selectedDocument?.updateRequired.toString()}\n ref={el =>\n (this.#updateRequiredCheckboxEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n\n <ch-tabular-grid-row\n // delete\n class=\"tabular-grid-row\"\n rowid=\"read\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {this.#_componentLocale.actions.deleteLabel}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-checkbox\n class=\"checkbox\"\n checkedValue={CHECKED_VALUE}\n value={this.selectedDocument?.deleteEnabled.toString()}\n ref={el =>\n (this.#deleteEnabledCheckboxEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-checkbox\n class=\"checkbox\"\n checkedValue={CHECKED_VALUE}\n value={this.selectedDocument?.deleteRequired.toString()}\n ref={el =>\n (this.#deleteRequiredCheckboxEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n </ch-tabular-grid>\n );\n };\n\n #renderEmptyState = () => {\n return (\n <gx-ide-empty-state\n class=\"recent-objects__empty-state\"\n stateIconSrc={MODULE_ICON}\n isAnimated={this.#renderedFirstTime}\n stateTitle={this.#_componentLocale.emptyRightPanelInfo.title}\n >\n <button\n class=\"button-secondary\"\n onClick={this.#selectDocumentCallbackHandler}\n >\n {this.#_componentLocale.emptyRightPanelInfo.buttonCaption}\n </button>\n </gx-ide-empty-state>\n );\n };\n\n #renderFooter = () => {\n return (\n <footer class=\"footer control-footer control-footer-with-border spacing-body-block-end spacing-body-inline\">\n <div class=\"buttons-spacer\">\n <button\n class=\"button-secondary\"\n id=\"button-cancel\"\n onClick={this.#cancelCallbackHandler}\n part=\"button-cancel\"\n >\n {this.#_componentLocale.footer.cancelButton}\n </button>\n <button\n class=\"button-primary\"\n id=\"button-create\"\n onClick={this.#confirmCallbackHandler}\n part=\"button-create\"\n >\n {this.#_componentLocale.footer.confirmButton}\n </button>\n </div>\n </footer>\n );\n };\n\n #renderMain = () => {\n return [\n <div class=\"documents__list spacing-body-inline\">\n <ch-action-list-render\n selection=\"single\"\n class=\"list-box\"\n model={this.documentsActionListState}\n onSelectedItemsChange={this.#objectSelectionChangedHandler}\n ></ch-action-list-render>\n </div>,\n this.#renderActions()\n ];\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n <section class=\"section\">\n <div class=\"main field-group\">\n <div class=\"documents__header buttons-spacer spacing-body-inline spacing-body-block-start\">\n <ch-combo-box-render\n class=\"combo-box documents__suggest\"\n model={this.suggestedDocuments}\n placeholder={\n this.#_componentLocale.documents.suggestPlaceholder\n }\n suggest={true}\n onInput={this.#documentSuggestValueChangedHandler}\n onChange={this.#listenDocumentSelected}\n suggestOptions={{\n alreadyProcessed: false,\n autoExpand: true,\n hideMatchesAndShowNonMatches: false,\n highlightMatchedItems: false,\n matchCase: false,\n regularExpression: false,\n strict: false\n }}\n ></ch-combo-box-render>\n\n <span>\n <button\n class=\"button-tertiary button-icon-only\"\n aria-label={\n this.#_componentLocale.documents.addDocumentButtonLabel\n }\n title={\n this.#_componentLocale.documents.addDocumentButtonLabel\n }\n onClick={this.#selectDocumentCallbackHandler}\n >\n <ch-image class=\"icon-sm\" src={MORE_ICON}></ch-image>\n </button>\n\n <button\n class=\"button-tertiary button-icon-only\"\n aria-label={\n this.#_componentLocale.documents.clearDocumentButtonLabel\n }\n title={\n this.#_componentLocale.documents.clearDocumentButtonLabel\n }\n onClick={this.#handleDeleteButton}\n >\n <ch-image class=\"icon-sm\" src={DELETE_ICON}></ch-image>\n </button>\n </span>\n </div>\n\n {this.documentsActionListState.length\n ? this.#renderMain()\n : this.#renderEmptyState()}\n </div>\n {this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type TaskDocumentData = {\n name: string;\n readEnabled: boolean;\n readRequired: boolean;\n newEnabled: boolean;\n newRequired: boolean;\n updateEnabled: boolean;\n updateRequired: boolean;\n deleteEnabled: boolean;\n deleteRequired: boolean;\n};\n\nexport type SuggestDocumentsCallback = (\n documentName: string\n) => Promise<string[] | undefined>;\nexport type SelectDocumentCallback = () => Promise<string | undefined>;\nexport type ConfirmCallback = (data: TaskDocumentData[]) => Promise<void>;\nexport type CancelCallback = () => Promise<void>;\n"],"mappings":"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"}
1
+ {"version":3,"names":["taskDocumentsToActionListItemModel","objects","selectedDocument","actionListDocuments","forEach","object","index","itemId","name","itemValue","push","id","caption","selected","type","convertSuggestedDocumentsToSuggestItems","suggestedDocuments","suggestItems","length","suggestedDocument","suggestItem","value","taskDocumentsCss","CHECKED_VALUE","CSS_BUNDLES","MODULE_ICON","getIconPath","category","MORE_ICON","colorType","DELETE_ICON","NODENAME","GxIdeBpmTaskDocuments","_GxIdeBpmTaskDocuments__componentLocale","set","this","_GxIdeBpmTaskDocuments_renderedFirstTime","_GxIdeBpmTaskDocuments_shortcutsSrc","getAssetPath","_GxIdeBpmTaskDocuments_chShortcutsEl","_GxIdeBpmTaskDocuments_deleteEnabledCheckboxEl","_GxIdeBpmTaskDocuments_deleteRequiredCheckboxEl","_GxIdeBpmTaskDocuments_newEnabledCheckboxEl","_GxIdeBpmTaskDocuments_newRequiredCheckboxEl","_GxIdeBpmTaskDocuments_readEnabledCheckboxEl","_GxIdeBpmTaskDocuments_readRequiredCheckboxEl","_GxIdeBpmTaskDocuments_updateEnabledCheckboxEl","_GxIdeBpmTaskDocuments_updateRequiredCheckboxEl","_GxIdeBpmTaskDocuments_cancelCallbackHandler","cancelCallback","_GxIdeBpmTaskDocuments_confirmCallbackHandler","confirmCallback","documents","_GxIdeBpmTaskDocuments_documentSuggestValueChangedHandler","async","e","detail","suggestDocumentsCallback","then","result","catch","_GxIdeBpmTaskDocuments_handleDeleteButton","filter","doc","__classPrivateFieldGet","_GxIdeBpmTaskDocuments_refreshDocumentsActionListState","call","_GxIdeBpmTaskDocuments_listenDocumentSelected","_GxIdeBpmTaskDocuments_instances","_GxIdeBpmTaskDocuments_addDocument","_GxIdeBpmTaskDocuments_objectSelectionChangedHandler","find","_a","item","sort","a","b","localeCompare","documentsActionListState","_b","_GxIdeBpmTaskDocuments_selectDocumentCallbackHandler","callbackResult","selectDocumentCallback","documentName","_GxIdeBpmTaskDocuments_renderActions","h","class","rowSelectionMode","keyboardNavigationMode","columnResizeMode","columnId","columnName","settingable","actions","enabledCheckbox","requiredCheckbox","rowid","readLabel","checkedValue","readEnabled","toString","ref","el","__classPrivateFieldSet","readRequired","newLabel","_c","newEnabled","_d","newRequired","updateLabel","_e","updateEnabled","_f","updateRequired","deleteLabel","_g","deleteEnabled","_h","deleteRequired","_GxIdeBpmTaskDocuments_renderEmptyState","stateIconSrc","isAnimated","stateTitle","emptyRightPanelInfo","title","onClick","buttonCaption","_GxIdeBpmTaskDocuments_renderFooter","part","footer","cancelButton","confirmButton","_GxIdeBpmTaskDocuments_renderMain","selection","model","onSelectedItemsChange","componentWillLoad","Locale","getComponentStrings","componentDidRender","componentDidRenderFirstTime","emit","componentName","shadowRoot","checkboxes","_GxIdeBpmTaskDocuments_getAllCheckboxes","checkbox","addEventListener","_GxIdeBpmTaskDocuments_handleCheckboxChange","bind","suspendShortcuts","suspend","render","Host","src","placeholder","suggestPlaceholder","suggest","onInput","onChange","suggestOptions","alreadyProcessed","autoExpand","hideMatchesAndShowNonMatches","highlightMatchedItems","matchCase","regularExpression","strict","addDocumentButtonLabel","clearDocumentButtonLabel","node","childNodes","child","nodeName","HTMLElement","documentExists","some","data","map"],"sources":["src/components/bpm/task-documents/helpers.ts","src/components/bpm/task-documents/task-documents.scss?tag=gx-ide-bpm-task-documents&encapsulation=shadow","src/components/bpm/task-documents/task-documents.tsx"],"sourcesContent":["import { TaskDocumentData } from \"./task-documents\";\nimport { ActionListItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/action-list/types\";\nimport { ComboBoxItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/combo-box/types\";\n\nexport const taskDocumentsToActionListItemModel = (\n objects: TaskDocumentData[],\n selectedDocument?: TaskDocumentData\n): ActionListItemModel[] => {\n const actionListDocuments: ActionListItemModel[] = [];\n objects?.forEach((object, index) => {\n const itemId = `task-${object.name}`;\n const itemValue = object.name;\n actionListDocuments.push({\n id: itemId,\n caption: itemValue,\n selected: selectedDocument\n ? selectedDocument.name === object.name\n : index === 0,\n type: \"actionable\"\n });\n });\n return actionListDocuments;\n};\n\n/* References Types*/\n\n/**\n * @description This function converts string[] to ComboBoxItemModel[]\n */\nexport const convertSuggestedDocumentsToSuggestItems = (\n suggestedDocuments: string[]\n): ComboBoxItemModel[] => {\n const suggestItems: ComboBoxItemModel[] = [];\n if (suggestedDocuments.length) {\n suggestedDocuments.forEach((suggestedDocument: string) => {\n const suggestItem: ComboBoxItemModel = {\n value: suggestedDocument,\n caption: suggestedDocument\n };\n suggestItems.push(suggestItem);\n });\n }\n return suggestItems;\n};\n",":host {\n display: grid;\n grid-template-columns: 1fr;\n grid-template-rows: 1fr max-content;\n block-size: 100%;\n overflow: auto;\n}\n.section {\n display: contents;\n}\n.main {\n display: grid;\n grid-template-rows: max-content 1fr max-content;\n block-size: 100%;\n overflow: auto;\n}\n\n.documents__header {\n grid-template-columns: 1fr max-content;\n}\n.documents__suggest {\n flex: 1;\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n State,\n getAssetPath,\n Method\n} from \"@stencil/core\";\nimport { Locale } from \"../../../common/locale\";\nimport {\n convertSuggestedDocumentsToSuggestItems,\n taskDocumentsToActionListItemModel\n} from \"./helpers\";\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\nimport { ActionListItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/action-list/types\";\nimport { ComboBoxItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/combo-box/types\";\nimport { ChComboBoxRenderCustomEvent } from \"@genexus/chameleon-controls-library\";\n\nconst CHECKED_VALUE = \"true\";\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/list-box\",\n \"components/tabular-grid\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/spacing\",\n \"chameleon/scrollbar\"\n];\nconst MODULE_ICON = getIconPath({\n category: \"objects\",\n name: \"module\"\n});\nconst MORE_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"show-more-horizontal\",\n colorType: \"primary\"\n});\nconst DELETE_ICON = getIconPath({\n category: \"menus\",\n name: \"delete\",\n colorType: \"primary\"\n});\n\nconst NODENAME = \"CH-CHECKBOX\";\n@Component({\n tag: \"gx-ide-bpm-task-documents\",\n styleUrl: \"task-documents.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/bpm-task-documents\"]\n})\nexport class GxIdeBpmTaskDocuments {\n #_componentLocale: any;\n #renderedFirstTime = false;\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/bpm-task-documents/shortcuts.json`\n );\n\n @Element() el: HTMLGxIdeBpmTaskDocumentsElement;\n\n #chShortcutsEl: HTMLChShortcutsElement;\n #deleteEnabledCheckboxEl: HTMLChCheckboxElement;\n #deleteRequiredCheckboxEl: HTMLChCheckboxElement;\n\n #newEnabledCheckboxEl: HTMLChCheckboxElement;\n #newRequiredCheckboxEl: HTMLChCheckboxElement;\n #readEnabledCheckboxEl: HTMLChCheckboxElement;\n #readRequiredCheckboxEl: HTMLChCheckboxElement;\n #updateEnabledCheckboxEl: HTMLChCheckboxElement;\n #updateRequiredCheckboxEl: HTMLChCheckboxElement;\n\n /**\n * Documents state for the action list\n */\n @State() documentsActionListState: ActionListItemModel[] = [];\n\n @State() documentName: string = null;\n\n /**\n * Document selected in the action list\n */\n @State() selectedDocument: TaskDocumentData = null;\n\n /**\n * Possible suggestions for the documents\n */\n @State() suggestedDocuments: ComboBoxItemModel[];\n\n /**\n * @property documents\n * @description The current value of the documents for the task\n */\n\n @Prop({ mutable: true }) documents: TaskDocumentData[];\n\n /**\n * @property cancelCallback\n * @description Callback invoked when the user cancels the application declaration (Cancel button)\n */\n @Prop() readonly cancelCallback: CancelCallback;\n\n /**\n * @property confirmCallback\n * @description Callback invoked when the user confirms the application declaration (Ok button)\n */\n @Prop() readonly confirmCallback: ConfirmCallback;\n\n /**\n * @property selectDocumentCallback\n * @description Callback invoked when the user presses the '...' button to access the WorkflowDocuments selection dialog. Returns the name of the document to be inserted in the input or 'undefined' if it was canceled.\n */\n @Prop() readonly selectDocumentCallback: SelectDocumentCallback;\n\n /**\n * @property suggestDocumentsCallback\n * @description Callback that must be called to obtain options for the document input.\n */\n @Prop() readonly suggestDocumentsCallback: SuggestDocumentsCallback;\n\n /**\n * @description Gets fired when the component has rendered for the first time.\n */\n @Event() componentDidRenderFirstTime: EventEmitter<string>;\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n this.#refreshDocumentsActionListState();\n }\n\n componentDidRender() {\n if (!this.#renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this.#_componentLocale.componentName\n );\n this.#renderedFirstTime = true;\n }\n const shadowRoot = this.el.shadowRoot;\n const checkboxes = this.#getAllCheckboxes(\n shadowRoot as unknown as HTMLElement\n );\n if (checkboxes) {\n checkboxes.forEach(checkbox => {\n checkbox.addEventListener(\n \"input\",\n this.#handleCheckboxChange.bind(this)\n );\n });\n }\n }\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#chShortcutsEl.suspend = true;\n } else {\n this.#chShortcutsEl.suspend = false;\n }\n }\n\n #getAllCheckboxes(node: HTMLElement): HTMLChCheckboxElement[] {\n const checkboxes: HTMLChCheckboxElement[] = [];\n\n node.childNodes.forEach(child => {\n if (child.nodeName === NODENAME) {\n checkboxes.push(child as HTMLChCheckboxElement);\n } else if (child instanceof HTMLElement) {\n checkboxes.push(...this.#getAllCheckboxes(child));\n }\n });\n\n return checkboxes;\n }\n #addDocument(documentName: string) {\n const documentExists = this.documents.some(\n doc => doc.name === documentName\n );\n if (!documentExists) {\n this.documents = [\n ...this.documents,\n {\n name: documentName,\n deleteEnabled: false,\n deleteRequired: false,\n newEnabled: false,\n newRequired: false,\n readEnabled: false,\n readRequired: false,\n updateEnabled: false,\n updateRequired: false\n }\n ];\n this.#refreshDocumentsActionListState();\n }\n }\n\n #cancelCallbackHandler = () => {\n this.cancelCallback();\n };\n #confirmCallbackHandler = () => {\n this.confirmCallback(this.documents);\n };\n\n #documentSuggestValueChangedHandler = async (\n e: ChComboBoxRenderCustomEvent<string> & InputEvent\n ) => {\n const value = e.detail;\n this.suggestDocumentsCallback(value)\n .then(result => {\n this.suggestedDocuments =\n convertSuggestedDocumentsToSuggestItems(result);\n })\n .catch(() => {\n // to do\n });\n };\n\n #handleCheckboxChange() {\n const data: TaskDocumentData = {\n name: this.selectedDocument.name,\n readEnabled: this.#readEnabledCheckboxEl.value === CHECKED_VALUE,\n readRequired: this.#readRequiredCheckboxEl.value === CHECKED_VALUE,\n newEnabled: this.#newEnabledCheckboxEl.value === CHECKED_VALUE,\n newRequired: this.#newRequiredCheckboxEl.value === CHECKED_VALUE,\n updateEnabled: this.#updateEnabledCheckboxEl.value === CHECKED_VALUE,\n updateRequired: this.#updateRequiredCheckboxEl.value === CHECKED_VALUE,\n deleteEnabled: this.#deleteEnabledCheckboxEl.value === CHECKED_VALUE,\n deleteRequired: this.#deleteRequiredCheckboxEl.value === CHECKED_VALUE\n };\n\n this.selectedDocument = data;\n\n this.documents = this.documents.map(doc =>\n doc.name === this.selectedDocument.name ? this.selectedDocument : doc\n );\n }\n\n #handleDeleteButton = () => {\n this.documents = this.documents.filter(\n doc => doc.name !== this.selectedDocument.name\n );\n this.selectedDocument = null;\n this.#refreshDocumentsActionListState();\n };\n\n #listenDocumentSelected = async (e: CustomEvent<string>) => {\n if (e.detail) {\n this.#addDocument(e.detail);\n }\n };\n\n #objectSelectionChangedHandler = (e: CustomEvent) => {\n this.selectedDocument = this.documents.find(\n doc => doc.name === e.detail[0]?.item.caption\n );\n };\n\n #refreshDocumentsActionListState = () => {\n this.documents?.sort((a, b) => {\n return a.name.localeCompare(b.name);\n });\n this.documentsActionListState = taskDocumentsToActionListItemModel(\n this.documents,\n this.selectedDocument\n );\n\n this.selectedDocument =\n this.selectedDocument || this.documents?.[0] || null;\n };\n\n #selectDocumentCallbackHandler = async () => {\n const callbackResult = await this.selectDocumentCallback();\n if (callbackResult) {\n this.documentName = callbackResult;\n this.#addDocument(callbackResult);\n }\n };\n\n #renderActions = () => {\n return (\n <ch-tabular-grid\n class=\"tabular-grid scrollable\"\n rowSelectionMode=\"none\"\n keyboardNavigationMode=\"focus\"\n columnResizeMode=\"single\"\n >\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnId=\"code\"\n columnName=\"\"\n settingable={false}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnId=\"enabled\"\n settingable={false}\n columnName={this.#_componentLocale.actions.enabledCheckbox}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnId=\"required\"\n settingable={false}\n columnName={this.#_componentLocale.actions.requiredCheckbox}\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n\n <ch-tabular-grid-row\n // read\n class=\"tabular-grid-row\"\n rowid=\"read\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {this.#_componentLocale.actions.readLabel}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-checkbox\n class=\"checkbox\"\n checkedValue={CHECKED_VALUE}\n value={this.selectedDocument?.readEnabled.toString()}\n ref={el =>\n (this.#readEnabledCheckboxEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-checkbox\n class=\"checkbox\"\n checkedValue={CHECKED_VALUE}\n value={this.selectedDocument?.readRequired.toString()}\n ref={el =>\n (this.#readRequiredCheckboxEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n\n <ch-tabular-grid-row\n // new\n class=\"tabular-grid-row\"\n rowid=\"read\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {this.#_componentLocale.actions.newLabel}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-checkbox\n class=\"checkbox\"\n checkedValue={CHECKED_VALUE}\n value={this.selectedDocument?.newEnabled.toString()}\n ref={el =>\n (this.#newEnabledCheckboxEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-checkbox\n class=\"checkbox\"\n checkedValue={CHECKED_VALUE}\n value={this.selectedDocument?.newRequired.toString()}\n ref={el =>\n (this.#newRequiredCheckboxEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n\n <ch-tabular-grid-row\n // update\n class=\"tabular-grid-row\"\n rowid=\"read\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {this.#_componentLocale.actions.updateLabel}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-checkbox\n class=\"checkbox\"\n checkedValue={CHECKED_VALUE}\n value={this.selectedDocument?.updateEnabled.toString()}\n ref={el =>\n (this.#updateEnabledCheckboxEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-checkbox\n class=\"checkbox\"\n checkedValue={CHECKED_VALUE}\n value={this.selectedDocument?.updateRequired.toString()}\n ref={el =>\n (this.#updateRequiredCheckboxEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n\n <ch-tabular-grid-row\n // delete\n class=\"tabular-grid-row\"\n rowid=\"read\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {this.#_componentLocale.actions.deleteLabel}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-checkbox\n class=\"checkbox\"\n checkedValue={CHECKED_VALUE}\n value={this.selectedDocument?.deleteEnabled.toString()}\n ref={el =>\n (this.#deleteEnabledCheckboxEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-checkbox\n class=\"checkbox\"\n checkedValue={CHECKED_VALUE}\n value={this.selectedDocument?.deleteRequired.toString()}\n ref={el =>\n (this.#deleteRequiredCheckboxEl = el as HTMLChCheckboxElement)\n }\n ></ch-checkbox>\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n </ch-tabular-grid>\n );\n };\n\n #renderEmptyState = () => {\n return (\n <gx-ide-empty-state\n class=\"recent-objects__empty-state\"\n stateIconSrc={MODULE_ICON}\n isAnimated={this.#renderedFirstTime}\n stateTitle={this.#_componentLocale.emptyRightPanelInfo.title}\n >\n <button\n class=\"button-secondary\"\n onClick={this.#selectDocumentCallbackHandler}\n >\n {this.#_componentLocale.emptyRightPanelInfo.buttonCaption}\n </button>\n </gx-ide-empty-state>\n );\n };\n\n #renderFooter = () => {\n return (\n <footer class=\"footer control-footer control-footer-with-border spacing-body-block-end spacing-body-inline\">\n <div class=\"buttons-spacer\">\n <button\n class=\"button-secondary\"\n id=\"button-cancel\"\n onClick={this.#cancelCallbackHandler}\n part=\"button-cancel\"\n >\n {this.#_componentLocale.footer.cancelButton}\n </button>\n <button\n class=\"button-primary\"\n id=\"button-create\"\n onClick={this.#confirmCallbackHandler}\n part=\"button-create\"\n >\n {this.#_componentLocale.footer.confirmButton}\n </button>\n </div>\n </footer>\n );\n };\n\n #renderMain = () => {\n return [\n <div class=\"documents__list spacing-body-inline\">\n <ch-action-list-render\n selection=\"single\"\n class=\"list-box\"\n model={this.documentsActionListState}\n onSelectedItemsChange={this.#objectSelectionChangedHandler}\n ></ch-action-list-render>\n </div>,\n this.#renderActions()\n ];\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n <section class=\"section\">\n <div class=\"main field-group\">\n <div class=\"documents__header buttons-spacer spacing-body-inline spacing-body-block-start\">\n <ch-combo-box-render\n class=\"combo-box documents__suggest\"\n model={this.suggestedDocuments}\n placeholder={\n this.#_componentLocale.documents.suggestPlaceholder\n }\n suggest={true}\n onInput={this.#documentSuggestValueChangedHandler}\n onChange={this.#listenDocumentSelected}\n suggestOptions={{\n alreadyProcessed: false,\n autoExpand: true,\n hideMatchesAndShowNonMatches: false,\n highlightMatchedItems: false,\n matchCase: false,\n regularExpression: false,\n strict: false\n }}\n ></ch-combo-box-render>\n\n <span>\n <button\n class=\"button-tertiary button-icon-only\"\n aria-label={\n this.#_componentLocale.documents.addDocumentButtonLabel\n }\n title={\n this.#_componentLocale.documents.addDocumentButtonLabel\n }\n onClick={this.#selectDocumentCallbackHandler}\n >\n <ch-image class=\"icon-sm\" src={MORE_ICON}></ch-image>\n </button>\n\n <button\n class=\"button-tertiary button-icon-only\"\n aria-label={\n this.#_componentLocale.documents.clearDocumentButtonLabel\n }\n title={\n this.#_componentLocale.documents.clearDocumentButtonLabel\n }\n onClick={this.#handleDeleteButton}\n >\n <ch-image class=\"icon-sm\" src={DELETE_ICON}></ch-image>\n </button>\n </span>\n </div>\n\n {this.documentsActionListState.length\n ? this.#renderMain()\n : this.#renderEmptyState()}\n </div>\n {this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type TaskDocumentData = {\n name: string;\n readEnabled: boolean;\n readRequired: boolean;\n newEnabled: boolean;\n newRequired: boolean;\n updateEnabled: boolean;\n updateRequired: boolean;\n deleteEnabled: boolean;\n deleteRequired: boolean;\n};\n\nexport type SuggestDocumentsCallback = (\n documentName: string\n) => Promise<string[] | undefined>;\nexport type SelectDocumentCallback = () => Promise<string | undefined>;\nexport type ConfirmCallback = (data: TaskDocumentData[]) => Promise<void>;\nexport type CancelCallback = () => Promise<void>;\n"],"mappings":";;;;;;AAIO,MAAMA,qCAAqC,CAChDC,GACAC;EAEA,MAAMC,IAA6C;EACnDF,MAAO,QAAPA,WAAO,aAAPA,EAASG,SAAQ,CAACC,GAAQC;IACxB,MAAMC,IAAS,QAAQF,EAAOG;IAC9B,MAAMC,IAAYJ,EAAOG;IACzBL,EAAoBO,KAAK;MACvBC,IAAIJ;MACJK,SAASH;MACTI,UAAUX,IACNA,EAAiBM,SAASH,EAAOG,OACjCF,MAAU;MACdQ,MAAM;;AACN;EAEJ,OAAOX;AAAmB;;;;;GAQrB,OAAMY,0CACXC;EAEA,MAAMC,IAAoC;EAC1C,IAAID,EAAmBE,QAAQ;IAC7BF,EAAmBZ,SAASe;MAC1B,MAAMC,IAAiC;QACrCC,OAAOF;QACPP,SAASO;;MAEXF,EAAaP,KAAKU;AAAY;;EAGlC,OAAOH;AAAY;;AC1CrB,MAAMK,IAAmB;;;;;;;;;;;;;;;;;ACsBzB,MAAMC,IAAgB;;AACtB,MAAMC,IAA8B,EAClC,qBACA,uBACA,2BACA,oBACA,gBACA,iBACA;;AAEF,MAAMC,IAAcC,EAAY;EAC9BC,UAAU;EACVnB,MAAM;;;AAER,MAAMoB,IAAYF,EAAY;EAC5BC,UAAU;EACVnB,MAAM;EACNqB,WAAW;;;AAEb,MAAMC,IAAcJ,EAAY;EAC9BC,UAAU;EACVnB,MAAM;EACNqB,WAAW;;;AAGb,MAAME,IAAW;;MAOJC,IAAqB;;;;;IAChCC,EAAAC,IAAAC,WAAA;IACAC,EAAAF,IAAAC,MAAqB;IACrBE,EAAAH,IAAAC,MAAgBG,EACd;IAKFC,EAAAL,IAAAC,WAAA;IACAK,EAAAN,IAAAC,WAAA;IACAM,EAAAP,IAAAC,WAAA;IAEAO,EAAAR,IAAAC,WAAA;IACAQ,EAAAT,IAAAC,WAAA;IACAS,EAAAV,IAAAC,WAAA;IACAU,EAAAX,IAAAC,WAAA;IACAW,EAAAZ,IAAAC,WAAA;IACAY,EAAAb,IAAAC,WAAA;IAiIAa,EAAAd,IAAAC,OAAyB;MACvBA,KAAKc;AAAgB;IAEvBC,EAAAhB,IAAAC,OAA0B;MACxBA,KAAKgB,gBAAgBhB,KAAKiB;AAAU;IAGtCC,EAAAnB,IAAAC,OAAsCmB,MACpCC;MAEA,MAAMlC,IAAQkC,EAAEC;MAChBrB,KAAKsB,yBAAyBpC,GAC3BqC,MAAKC;QACJxB,KAAKnB,qBACHD,wCAAwC4C;AAAO,UAElDC,OAAM;AAEL;IAuBNC,EAAA3B,IAAAC,OAAsB;MACpBA,KAAKiB,YAAYjB,KAAKiB,UAAUU,QAC9BC,KAAOA,EAAIvD,SAAS2B,KAAKjC,iBAAiBM;MAE5C2B,KAAKjC,mBAAmB;MACxB8D,EAAA7B,MAAI8B,GAAA,KAAiCC,KAArC/B;AAAuC;IAGzCgC,EAAAjC,IAAAC,OAA0BmB,MAAOC;MAC/B,IAAIA,EAAEC,QAAQ;QACZQ,EAAA7B,MAAIiC,GAAA,KAAAC,GAAaH,KAAjB/B,MAAkBoB,EAAEC;;;IAIxBc,EAAApC,IAAAC,OAAkCoB;MAChCpB,KAAKjC,mBAAmBiC,KAAKiB,UAAUmB,MACrCR;QAAG,IAAAS;QAAI,OAAAT,EAAIvD,WAASgE,IAAAjB,EAAEC,OAAO,QAAE,QAAAgB,WAAA,aAAAA,EAAEC,KAAK7D;AAAO;AAC9C;IAGHqD,EAAA/B,IAAAC,OAAmC;;OACjCqC,IAAArC,KAAKiB,eAAS,QAAAoB,WAAA,aAAAA,EAAEE,MAAK,CAACC,GAAGC,MAChBD,EAAEnE,KAAKqE,cAAcD,EAAEpE;MAEhC2B,KAAK2C,2BAA2B9E,mCAC9BmC,KAAKiB,WACLjB,KAAKjC;MAGPiC,KAAKjC,mBACHiC,KAAKjC,sBAAoB6E,IAAA5C,KAAKiB,eAAS,QAAA2B,WAAA,aAAAA,EAAG,OAAM;AAAI;IAGxDC,EAAA9C,IAAAC,OAAiCmB;MAC/B,MAAM2B,UAAuB9C,KAAK+C;MAClC,IAAID,GAAgB;QAClB9C,KAAKgD,eAAeF;QACpBjB,EAAA7B,MAAIiC,GAAA,KAAAC,GAAaH,KAAjB/B,MAAkB8C;;;IAItBG,EAAAlD,IAAAC,OAAiB;;MACf,OACEkD,EAAA;QACEC,OAAM;QACNC,kBAAiB;QACjBC,wBAAuB;QACvBC,kBAAiB;SAEjBJ,EAAA;QAA2BC,OAAM;SAC/BD,EAAA;QACEC,OAAM;QACNI,UAAS;QACTC,YAAW;QACXC,aAAa;UAEfP,EAAA;QACEC,OAAM;QACNI,UAAS;QACTE,aAAa;QACbD,YAAY3B,EAAA7B,MAAIF,GAAA,KAAmB4D,QAAQC;UAE7CT,EAAA;QACEC,OAAM;QACNI,UAAS;QACTE,aAAa;QACbD,YAAY3B,EAAA7B,MAAIF,GAAA,KAAmB4D,QAAQE;WAI/CV,EAAA;;QAEEC,OAAM;QACNU,OAAM;SAENX,EAAA;QAAsBC,OAAM;SACzBtB,EAAA7B,MAAIF,GAAA,KAAmB4D,QAAQI,YAElCZ,EAAA;QAAsBC,OAAM;SAC1BD,EAAA;QACEC,OAAM;QACNY,cAAc3E;QACdF,QAAOmD,IAAArC,KAAKjC,sBAAgB,QAAAsE,WAAA,aAAAA,EAAE2B,YAAYC;QAC1CC,KAAKC,KACFC,EAAApE,MAAIS,GAA0B0D,GAA2B;WAIhEjB,EAAA;QAAsBC,OAAM;SAC1BD,EAAA;QACEC,OAAM;QACNY,cAAc3E;QACdF,QAAO0D,IAAA5C,KAAKjC,sBAAgB,QAAA6E,WAAA,aAAAA,EAAEyB,aAAaJ;QAC3CC,KAAKC,KACFC,EAAApE,MAAIU,GAA2ByD,GAA2B;YAMnEjB,EAAA;;QAEEC,OAAM;QACNU,OAAM;SAENX,EAAA;QAAsBC,OAAM;SACzBtB,EAAA7B,MAAIF,GAAA,KAAmB4D,QAAQY,WAElCpB,EAAA;QAAsBC,OAAM;SAC1BD,EAAA;QACEC,OAAM;QACNY,cAAc3E;QACdF,QAAOqF,IAAAvE,KAAKjC,sBAAgB,QAAAwG,WAAA,aAAAA,EAAEC,WAAWP;QACzCC,KAAKC,KACFC,EAAApE,MAAIO,GAAyB4D,GAA2B;WAI/DjB,EAAA;QAAsBC,OAAM;SAC1BD,EAAA;QACEC,OAAM;QACNY,cAAc3E;QACdF,QAAOuF,IAAAzE,KAAKjC,sBAAgB,QAAA0G,WAAA,aAAAA,EAAEC,YAAYT;QAC1CC,KAAKC,KACFC,EAAApE,MAAIQ,GAA0B2D,GAA2B;YAMlEjB,EAAA;;QAEEC,OAAM;QACNU,OAAM;SAENX,EAAA;QAAsBC,OAAM;SACzBtB,EAAA7B,MAAIF,GAAA,KAAmB4D,QAAQiB,cAElCzB,EAAA;QAAsBC,OAAM;SAC1BD,EAAA;QACEC,OAAM;QACNY,cAAc3E;QACdF,QAAO0F,IAAA5E,KAAKjC,sBAAgB,QAAA6G,WAAA,aAAAA,EAAEC,cAAcZ;QAC5CC,KAAKC,KACFC,EAAApE,MAAIW,GAA4BwD,GAA2B;WAIlEjB,EAAA;QAAsBC,OAAM;SAC1BD,EAAA;QACEC,OAAM;QACNY,cAAc3E;QACdF,QAAO4F,IAAA9E,KAAKjC,sBAAgB,QAAA+G,WAAA,aAAAA,EAAEC,eAAed;QAC7CC,KAAKC,KACFC,EAAApE,MAAIY,GAA6BuD,GAA2B;YAMrEjB,EAAA;;QAEEC,OAAM;QACNU,OAAM;SAENX,EAAA;QAAsBC,OAAM;SACzBtB,EAAA7B,MAAIF,GAAA,KAAmB4D,QAAQsB,cAElC9B,EAAA;QAAsBC,OAAM;SAC1BD,EAAA;QACEC,OAAM;QACNY,cAAc3E;QACdF,QAAO+F,IAAAjF,KAAKjC,sBAAgB,QAAAkH,WAAA,aAAAA,EAAEC,cAAcjB;QAC5CC,KAAKC,KACFC,EAAApE,MAAIK,GAA4B8D,GAA2B;WAIlEjB,EAAA;QAAsBC,OAAM;SAC1BD,EAAA;QACEC,OAAM;QACNY,cAAc3E;QACdF,QAAOiG,IAAAnF,KAAKjC,sBAAgB,QAAAoH,WAAA,aAAAA,EAAEC,eAAenB;QAC7CC,KAAKC,KACFC,EAAApE,MAAIM,GAA6B6D,GAA2B;;AAKrD;IAItBkB,EAAAtF,IAAAC,OAAoB,MAEhBkD,EAAA;MACEC,OAAM;MACNmC,cAAchG;MACdiG,YAAY1D,EAAA7B,MAAIC,GAAA;MAChBuF,YAAY3D,EAAA7B,MAAIF,GAAA,KAAmB2F,oBAAoBC;OAEvDxC,EAAA;MACEC,OAAM;MACNwC,SAAS9D,EAAA7B,MAAI6C,GAAA;OAEZhB,EAAA7B,MAAIF,GAAA,KAAmB2F,oBAAoBG;IAMpDC,EAAA9F,IAAAC,OAAgB,MAEZkD,EAAA;MAAQC,OAAM;OACZD,EAAA;MAAKC,OAAM;OACTD,EAAA;MACEC,OAAM;MACN3E,IAAG;MACHmH,SAAS9D,EAAA7B,MAAIa,GAAA;MACbiF,MAAK;OAEJjE,EAAA7B,MAAIF,GAAA,KAAmBiG,OAAOC,eAEjC9C,EAAA;MACEC,OAAM;MACN3E,IAAG;MACHmH,SAAS9D,EAAA7B,MAAIe,GAAA;MACb+E,MAAK;OAEJjE,EAAA7B,MAAIF,GAAA,KAAmBiG,OAAOE;IAOzCC,EAAAnG,IAAAC,OAAc,MACL,EACLkD,EAAA;MAAKC,OAAM;OACTD,EAAA;MACEiD,WAAU;MACVhD,OAAM;MACNiD,OAAOpG,KAAK2C;MACZ0D,uBAAuBxE,EAAA7B,MAAImC,GAAA;SAG/BN,EAAA7B,MAAIiD,GAAA,KAAelB,KAAnB/B;oCA3ZuD;wBAE3B;4BAKc;;;;;;;;EA2C9C,uBAAMsG;IACJlC,EAAApE,MAAIF,SAA2ByG,EAAOC,oBAAoBxG,KAAKmE,KAAG;IAClEtC,EAAA7B,MAAI8B,GAAA,KAAiCC,KAArC/B;;EAGF,kBAAAyG;IACE,KAAK5E,EAAA7B,MAAIC,GAAA,MAAqB;MAC5BD,KAAK0G,4BAA4BC,KAC/B9E,EAAA7B,MAAIF,GAAA,KAAmB8G;MAEzBxC,EAAApE,MAAIC,GAAsB,MAAI;;IAEhC,MAAM4G,IAAa7G,KAAKmE,GAAG0C;IAC3B,MAAMC,IAAajF,EAAA7B,MAAIiC,GAAA,KAAA8E,GAAkBhF,KAAtB/B,MACjB6G;IAEF,IAAIC,GAAY;MACdA,EAAW7I,SAAQ+I;QACjBA,EAASC,iBACP,SACApF,EAAA7B,MAAIiC,GAAA,KAAAiF,GAAuBC,KAAKnH;AACjC;;;;;SASP,sBAAMoH,CAAiBA;IACrB,IAAIA,GAAkB;MACpBvF,EAAA7B,MAAII,GAAA,KAAgBiH,UAAU;WACzB;MACLxF,EAAA7B,MAAII,GAAA,KAAgBiH,UAAU;;;EA2UlC,MAAAC;IACE,OACEpE,EAACqE,GAAI;MAACpE,OAAM;OACVD,EAAA;MAAUkD,OAAO/G;QACjB6D,EAAA;MACEsE,KAAK3F,EAAA7B,MAAIE,GAAA;MACTgE,KAAMC,KACHC,EAAApE,MAAII,GAAkB+D,GAA4B;QAGvDjB,EAAA;MAASC,OAAM;OACbD,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAKC,OAAM;OACTD,EAAA;MACEC,OAAM;MACNiD,OAAOpG,KAAKnB;MACZ4I,aACE5F,EAAA7B,MAAIF,GAAA,KAAmBmB,UAAUyG;MAEnCC,SAAS;MACTC,SAAS/F,EAAA7B,MAAIkB,GAAA;MACb2G,UAAUhG,EAAA7B,MAAIgC,GAAA;MACd8F,gBAAgB;QACdC,kBAAkB;QAClBC,YAAY;QACZC,8BAA8B;QAC9BC,uBAAuB;QACvBC,WAAW;QACXC,mBAAmB;QACnBC,QAAQ;;QAIZnF,EAAA,cACEA,EAAA;MACEC,OAAM;MAAkC,cAEtCtB,EAAA7B,MAAIF,GAAA,KAAmBmB,UAAUqH;MAEnC5C,OACE7D,EAAA7B,MAAIF,GAAA,KAAmBmB,UAAUqH;MAEnC3C,SAAS9D,EAAA7B,MAAI6C,GAAA;OAEbK,EAAA;MAAUC,OAAM;MAAUqE,KAAK/H;SAGjCyD,EAAA;MACEC,OAAM;MAAkC,cAEtCtB,EAAA7B,MAAIF,GAAA,KAAmBmB,UAAUsH;MAEnC7C,OACE7D,EAAA7B,MAAIF,GAAA,KAAmBmB,UAAUsH;MAEnC5C,SAAS9D,EAAA7B,MAAI0B,GAAA;OAEbwB,EAAA;MAAUC,OAAM;MAAUqE,KAAK7H;WAKpCK,KAAK2C,yBAAyB5D,SAC3B8C,EAAA7B,MAAIkG,GAAA,KAAYnE,KAAhB/B,QACA6B,EAAA7B,MAAIqF,GAAA,KAAkBtD,KAAtB/B,QAEL6B,EAAA7B,MAAI6F,GAAA,KAAc9D,KAAlB/B;;;;;;;;;;;;;;;qDAzYSwI;EAChB,MAAM1B,IAAsC;EAE5C0B,EAAKC,WAAWxK,SAAQyK;IACtB,IAAIA,EAAMC,aAAa/I,GAAU;MAC/BkH,EAAWvI,KAAKmK;WACX,IAAIA,aAAiBE,aAAa;MACvC9B,EAAWvI,QAAQsD,EAAA7B,MAAIiC,GAAA,KAAA8E,yCAAkBhF,KAAtB/B,MAAuB0I;;;EAI9C,OAAO5B;AACT,GAAC5E,IAAA,SAAAA,mCACYc;EACX,MAAM6F,IAAiB7I,KAAKiB,UAAU6H,MACpClH,KAAOA,EAAIvD,SAAS2E;EAEtB,KAAK6F,GAAgB;IACnB7I,KAAKiB,YAAY,KACZjB,KAAKiB,WACR;MACE5C,MAAM2E;MACNkC,eAAe;MACfE,gBAAgB;MAChBZ,YAAY;MACZE,aAAa;MACbV,aAAa;MACbK,cAAc;MACdQ,eAAe;MACfE,gBAAgB;;IAGpBlD,EAAA7B,MAAI8B,GAAA,KAAiCC,KAArC/B;;AAEJ,GAACkH,IAAA,SAAAA;EAwBC,MAAM6B,IAAyB;IAC7B1K,MAAM2B,KAAKjC,iBAAiBM;IAC5B2F,aAAanC,EAAA7B,MAAIS,GAAA,KAAwBvB,UAAUE;IACnDiF,cAAcxC,EAAA7B,MAAIU,GAAA,KAAyBxB,UAAUE;IACrDoF,YAAY3C,EAAA7B,MAAIO,GAAA,KAAuBrB,UAAUE;IACjDsF,aAAa7C,EAAA7B,MAAIQ,GAAA,KAAwBtB,UAAUE;IACnDyF,eAAehD,EAAA7B,MAAIW,GAAA,KAA0BzB,UAAUE;IACvD2F,gBAAgBlD,EAAA7B,MAAIY,GAAA,KAA2B1B,UAAUE;IACzD8F,eAAerD,EAAA7B,MAAIK,GAAA,KAA0BnB,UAAUE;IACvDgG,gBAAgBvD,EAAA7B,MAAIM,GAAA,KAA2BpB,UAAUE;;EAG3DY,KAAKjC,mBAAmBgL;EAExB/I,KAAKiB,YAAYjB,KAAKiB,UAAU+H,KAAIpH,KAClCA,EAAIvD,SAAS2B,KAAKjC,iBAAiBM,OAAO2B,KAAKjC,mBAAmB6D;AAEtE"}
@@ -1,10 +1,8 @@
1
1
  import { r as t, h as e, H as i, a as s } from "./p-25a9f1d7.js";
2
2
 
3
- import { g as a } from "./p-6e4208d8.js";
3
+ import { g as a } from "./p-ede7bd20.js";
4
4
 
5
- import "./p-5ac47c69.js";
6
-
7
- import { c as r } from "./p-13738332.js";
5
+ import { c as n } from "./p-13738332.js";
8
6
 
9
7
  import { L as l } from "./p-311eedf3.js";
10
8
 
@@ -17,7 +15,7 @@ const mapOptionsToComboBoxItemModel = t => t.map((t => {
17
15
  };
18
16
  }));
19
17
 
20
- const n = ':host{display:grid;block-size:100%;overflow:auto;grid-template-rows:max-content 1fr max-content}.section{display:contents}.header{grid-template:"name type" max-content "object object" max-content;grid-template-columns:1fr 1fr}.name__field{grid-area:name}.name__label{inline-size:40px}.type__field{grid-area:type}.more__btn{grid-area:more;inline-size:64px}.object-selector__field{grid-area:object}.main{overflow:auto}ch-tabular-grid.tabular-grid--empty::part(main){overflow:hidden}ch-tabular-grid-rowset-empty{position:relative}.tabular-grid-row ch-tabular-grid-cell:is(:nth-child(2),:nth-child(3),:nth-child(4)){padding-block:var(--grid-cell__padding-block);padding-inline:var(--grid-cell__padding-inline);align-items:start;justify-content:start;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.matching-attributes{margin:0}';
18
+ const r = ':host{display:grid;block-size:100%;overflow:auto;grid-template-rows:max-content 1fr max-content}.section{display:contents}.header{grid-template:"name type" max-content "object object" max-content;grid-template-columns:1fr 1fr}.name__field{grid-area:name}.name__label{inline-size:40px}.type__field{grid-area:type}.more__btn{grid-area:more;inline-size:64px}.object-selector__field{grid-area:object}.main{overflow:auto}ch-tabular-grid.tabular-grid--empty::part(main){overflow:hidden}ch-tabular-grid-rowset-empty{position:relative}.tabular-grid-row ch-tabular-grid-cell:is(:nth-child(2),:nth-child(3),:nth-child(4)){padding-block:var(--grid-cell__padding-block);padding-inline:var(--grid-cell__padding-inline);align-items:start;justify-content:start;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-inline-size:0}.matching-attributes{margin:0}';
21
19
 
22
20
  var o = undefined && undefined.__classPrivateFieldGet || function(t, e, i, s) {
23
21
  if (i === "a" && !s) throw new TypeError("Private accessor was defined without a getter");
@@ -32,9 +30,9 @@ var c = undefined && undefined.__classPrivateFieldSet || function(t, e, i, s, a)
32
30
  return s === "a" ? a.call(t, i) : a ? a.value = i : e.set(t, i), i;
33
31
  };
34
32
 
35
- var d, h, u, f, m, b, p, g, w, v, y, k, _, x, W, j;
33
+ var d, h, u, f, m, b, p, g, w, v, y, k, _, x, W, M;
36
34
 
37
- const M = [ "resets/box-sizing", "components/button", "components/edit", "components/combo-box", "components/tabular-grid", "components/icon", "utils/form", "utils/layout", "utils/spacing", "chameleon/scrollbar" ];
35
+ const j = [ "resets/box-sizing", "components/button", "components/edit", "components/combo-box", "components/tabular-grid", "components/icon", "utils/form", "utils/layout", "utils/spacing", "chameleon/scrollbar" ];
38
36
 
39
37
  const z = a({
40
38
  category: "window-tools",
@@ -131,24 +129,24 @@ const T = class {
131
129
  "column-name": "",
132
130
  "column-name-position": "text",
133
131
  settingable: false,
134
- size: r.tabularGrid.colSize.maxContent,
132
+ size: n.tabularGrid.colSize.maxContent,
135
133
  class: "tabular-grid-column"
136
134
  }), e("ch-tabular-grid-column", {
137
135
  "column-name": o(this, d, "f").tableHead.name,
138
136
  "column-name-position": "text",
139
- size: r.tabularGrid.colSize.auto,
137
+ size: n.tabularGrid.colSize.auto,
140
138
  class: "tabular-grid-column",
141
139
  settingable: false
142
140
  }), e("ch-tabular-grid-column", {
143
141
  "column-name": o(this, d, "f").tableHead.type,
144
142
  "column-name-position": "text",
145
143
  class: "tabular-grid-column",
146
- size: r.tabularGrid.colSize.auto,
144
+ size: n.tabularGrid.colSize.auto,
147
145
  settingable: false
148
146
  }), e("ch-tabular-grid-column", {
149
147
  "column-name": o(this, d, "f").tableHead.description,
150
148
  "column-name-position": "text",
151
- size: r.tabularGrid.colSize.auto,
149
+ size: n.tabularGrid.colSize.auto,
152
150
  class: "tabular-grid-column",
153
151
  settingable: false
154
152
  })), o(this, k, "f").call(this));
@@ -221,7 +219,7 @@ const T = class {
221
219
  value: this.type,
222
220
  model: mapOptionsToComboBoxItemModel((t = this.types) !== null && t !== void 0 ? t : []),
223
221
  part: "filter-type",
224
- onInput: o(this, j, "f")
222
+ onInput: o(this, M, "f")
225
223
  })), e("div", {
226
224
  class: "field field-inline object-selector__field"
227
225
  }, e("label", {
@@ -245,7 +243,7 @@ const T = class {
245
243
  this.name = t.detail.trim();
246
244
  o(this, b, "f").call(this);
247
245
  }));
248
- j.set(this, (t => {
246
+ M.set(this, (t => {
249
247
  this.type = t.detail;
250
248
  o(this, b, "f").call(this);
251
249
  }));
@@ -304,19 +302,19 @@ const T = class {
304
302
  render() {
305
303
  var t, s;
306
304
  const a = !this.attributes || this.attributes.length === 0;
307
- const r = ((t = this.attributes) === null || t === void 0 ? void 0 : t.length) === 1 ? o(this, d, "f").matchingAttribute : o(this, d, "f").matchingAttributes;
305
+ const n = ((t = this.attributes) === null || t === void 0 ? void 0 : t.length) === 1 ? o(this, d, "f").matchingAttribute : o(this, d, "f").matchingAttributes;
308
306
  const l = ((s = this.attributes) === null || s === void 0 ? void 0 : s.length) || 0;
309
307
  return e(i, {
310
308
  class: "widget"
311
309
  }, e("ch-theme", {
312
- model: M
310
+ model: j
313
311
  }), e("section", {
314
312
  class: "section"
315
313
  }, o(this, _, "f").call(this), o(this, y, "f").call(this), e("footer", {
316
314
  class: "control-footer control-footer-with-border spacing-body-block-end spacing-body-inline control-footer-space-between"
317
315
  }, e("p", {
318
316
  class: "body-regular-s matching-attributes"
319
- }, `${l} ${r}`), e("button", {
317
+ }, `${l} ${n}`), e("button", {
320
318
  id: "button-select-all",
321
319
  class: "button-primary",
322
320
  onClick: o(this, x, "f"),
@@ -335,9 +333,9 @@ const T = class {
335
333
  d = new WeakMap, h = new WeakMap, u = new WeakMap, f = new WeakMap, m = new WeakMap,
336
334
  b = new WeakMap, p = new WeakMap, g = new WeakMap, w = new WeakMap, v = new WeakMap,
337
335
  y = new WeakMap, k = new WeakMap, _ = new WeakMap, x = new WeakMap, W = new WeakMap,
338
- j = new WeakMap;
336
+ M = new WeakMap;
339
337
 
340
- T.style = n;
338
+ T.style = r;
341
339
 
342
340
  export { T as gx_ide_ww_attributes };
343
- //# sourceMappingURL=p-c747afac.entry.js.map
341
+ //# sourceMappingURL=p-7d8812b0.entry.js.map