@genexus/genexus-ide-ui 1.0.48 → 1.0.50

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 (227) hide show
  1. package/dist/{esm/MERCURY_ASSETS-91a1db9c.js → cjs/MERCURY_ASSETS-ac982891.js} +2 -4
  2. package/dist/cjs/MERCURY_ASSETS-ac982891.js.map +1 -0
  3. package/dist/cjs/assets-manager-7227a74b.js +7 -0
  4. package/dist/cjs/assets-manager-7227a74b.js.map +1 -0
  5. package/dist/cjs/code-render-9b3efb53.js +50 -0
  6. package/dist/cjs/code-render-9b3efb53.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 +3 -2
  9. package/dist/cjs/gx-ide-ai-message.cjs.entry.js.map +1 -1
  10. package/dist/cjs/gx-ide-chat-container.cjs.entry.js +62 -0
  11. package/dist/cjs/gx-ide-chat-container.cjs.entry.js.map +1 -0
  12. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +4 -3
  13. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
  14. package/dist/cjs/gx-ide-current-user-info.cjs.entry.js +3 -2
  15. package/dist/cjs/gx-ide-current-user-info.cjs.entry.js.map +1 -1
  16. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +3 -2
  17. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js.map +1 -1
  18. package/dist/cjs/gx-ide-data-selector.cjs.entry.js +3 -2
  19. package/dist/cjs/gx-ide-data-selector.cjs.entry.js.map +1 -1
  20. package/dist/cjs/gx-ide-data-type-selector.cjs.entry.js +3 -2
  21. package/dist/cjs/gx-ide-data-type-selector.cjs.entry.js.map +1 -1
  22. package/dist/cjs/gx-ide-design-import.cjs.entry.js +8 -7
  23. package/dist/cjs/gx-ide-design-import.cjs.entry.js.map +1 -1
  24. package/dist/cjs/gx-ide-entity-selector.cjs.entry.js +4 -3
  25. package/dist/cjs/gx-ide-entity-selector.cjs.entry.js.map +1 -1
  26. package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js +7 -6
  27. package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js.map +1 -1
  28. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +6 -5
  29. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js.map +1 -1
  30. package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js +4 -3
  31. package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js.map +1 -1
  32. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js +4 -3
  33. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js.map +1 -1
  34. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +3 -2
  35. package/dist/cjs/gx-ide-new-kb.cjs.entry.js.map +1 -1
  36. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +4 -3
  37. package/dist/cjs/gx-ide-object-selector.cjs.entry.js.map +1 -1
  38. package/dist/cjs/gx-ide-sc-chat-container.cjs.entry.js +286 -0
  39. package/dist/cjs/gx-ide-sc-chat-container.cjs.entry.js.map +1 -0
  40. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +3 -2
  41. package/dist/cjs/gx-ide-share-kb.cjs.entry.js.map +1 -1
  42. package/dist/cjs/gx-ide-start-page.cjs.entry.js +6 -5
  43. package/dist/cjs/gx-ide-start-page.cjs.entry.js.map +1 -1
  44. package/dist/cjs/gx-ide-welcome-page.cjs.entry.js +3 -2
  45. package/dist/cjs/gx-ide-welcome-page.cjs.entry.js.map +1 -1
  46. package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js +3 -2
  47. package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js.map +1 -1
  48. package/dist/cjs/index.cjs.js +9 -0
  49. package/dist/cjs/index.cjs.js.map +1 -1
  50. package/dist/cjs/loader.cjs.js +1 -1
  51. package/dist/collection/collection-manifest.json +3 -1
  52. package/dist/collection/components/_helpers/chat-container/chat-container.css +178 -0
  53. package/dist/collection/components/_helpers/chat-container/chat-container.js +137 -0
  54. package/dist/collection/components/_helpers/chat-container/chat-container.js.map +1 -0
  55. package/dist/collection/components/_helpers/chat-container/code-render.js +42 -0
  56. package/dist/collection/components/_helpers/chat-container/code-render.js.map +1 -0
  57. package/dist/collection/index.js +1 -0
  58. package/dist/collection/index.js.map +1 -1
  59. package/dist/collection/showcase/chat-container/callbacks.js +247 -0
  60. package/dist/collection/showcase/chat-container/callbacks.js.map +1 -0
  61. package/dist/collection/showcase/chat-container/chat-showcase.css +4 -0
  62. package/dist/collection/showcase/chat-container/chat.showcase.js +57 -0
  63. package/dist/collection/showcase/chat-container/chat.showcase.js.map +1 -0
  64. package/dist/collection/testing/locale.e2e.js +4 -0
  65. package/dist/collection/testing/locale.e2e.js.map +1 -1
  66. package/dist/components/MERCURY_ASSETS.js +0 -4
  67. package/dist/components/MERCURY_ASSETS.js.map +1 -1
  68. package/dist/components/ai-message.js +2 -1
  69. package/dist/components/ai-message.js.map +1 -1
  70. package/dist/components/assets-manager.js +5 -0
  71. package/dist/components/assets-manager.js.map +1 -0
  72. package/dist/components/chat-container.js +78 -0
  73. package/dist/components/chat-container.js.map +1 -0
  74. package/dist/components/code-render.js +47 -0
  75. package/dist/components/code-render.js.map +1 -0
  76. package/dist/components/entity-selector.js +2 -1
  77. package/dist/components/entity-selector.js.map +1 -1
  78. package/dist/components/gx-ide-chat-container.d.ts +11 -0
  79. package/dist/components/gx-ide-chat-container.js +8 -0
  80. package/dist/components/gx-ide-chat-container.js.map +1 -0
  81. package/dist/components/gx-ide-create-kb-from-server.js +2 -1
  82. package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
  83. package/dist/components/gx-ide-current-user-info.js +2 -1
  84. package/dist/components/gx-ide-current-user-info.js.map +1 -1
  85. package/dist/components/gx-ide-dashboard-home.js +2 -1
  86. package/dist/components/gx-ide-dashboard-home.js.map +1 -1
  87. package/dist/components/gx-ide-data-selector.js +2 -1
  88. package/dist/components/gx-ide-data-selector.js.map +1 -1
  89. package/dist/components/gx-ide-data-type-selector.js +2 -1
  90. package/dist/components/gx-ide-data-type-selector.js.map +1 -1
  91. package/dist/components/gx-ide-design-import.js +2 -1
  92. package/dist/components/gx-ide-design-import.js.map +1 -1
  93. package/dist/components/gx-ide-kb-manager-export.js +2 -1
  94. package/dist/components/gx-ide-kb-manager-export.js.map +1 -1
  95. package/dist/components/gx-ide-kb-manager-import.js +2 -1
  96. package/dist/components/gx-ide-kb-manager-import.js.map +1 -1
  97. package/dist/components/gx-ide-manage-module-references-v2.js +2 -1
  98. package/dist/components/gx-ide-manage-module-references-v2.js.map +1 -1
  99. package/dist/components/gx-ide-manage-module-references.js +2 -1
  100. package/dist/components/gx-ide-manage-module-references.js.map +1 -1
  101. package/dist/components/gx-ide-new-kb.js +2 -1
  102. package/dist/components/gx-ide-new-kb.js.map +1 -1
  103. package/dist/components/gx-ide-object-selector.js +2 -1
  104. package/dist/components/gx-ide-object-selector.js.map +1 -1
  105. package/dist/components/gx-ide-sc-chat-container.d.ts +11 -0
  106. package/dist/components/gx-ide-sc-chat-container.js +308 -0
  107. package/dist/components/gx-ide-sc-chat-container.js.map +1 -0
  108. package/dist/components/gx-ide-share-kb.js +2 -1
  109. package/dist/components/gx-ide-share-kb.js.map +1 -1
  110. package/dist/components/gx-ide-start-page.js +2 -1
  111. package/dist/components/gx-ide-start-page.js.map +1 -1
  112. package/dist/components/gx-ide-welcome-page.js +2 -1
  113. package/dist/components/gx-ide-welcome-page.js.map +1 -1
  114. package/dist/components/gx-ide-ww-attributes.js +2 -1
  115. package/dist/components/gx-ide-ww-attributes.js.map +1 -1
  116. package/dist/components/index.js +2 -0
  117. package/dist/components/index.js.map +1 -1
  118. package/dist/{cjs/MERCURY_ASSETS-fbc83c8c.js → esm/MERCURY_ASSETS-9e4e8ebc.js} +1 -7
  119. package/dist/esm/MERCURY_ASSETS-9e4e8ebc.js.map +1 -0
  120. package/dist/esm/assets-manager-0d129105.js +5 -0
  121. package/dist/esm/assets-manager-0d129105.js.map +1 -0
  122. package/dist/esm/code-render-79798e42.js +47 -0
  123. package/dist/esm/code-render-79798e42.js.map +1 -0
  124. package/dist/esm/genexus-ide-ui.js +1 -1
  125. package/dist/esm/gx-ide-ai-message.entry.js +2 -1
  126. package/dist/esm/gx-ide-ai-message.entry.js.map +1 -1
  127. package/dist/esm/gx-ide-chat-container.entry.js +58 -0
  128. package/dist/esm/gx-ide-chat-container.entry.js.map +1 -0
  129. package/dist/esm/gx-ide-create-kb-from-server.entry.js +2 -1
  130. package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
  131. package/dist/esm/gx-ide-current-user-info.entry.js +2 -1
  132. package/dist/esm/gx-ide-current-user-info.entry.js.map +1 -1
  133. package/dist/esm/gx-ide-dashboard-home.entry.js +2 -1
  134. package/dist/esm/gx-ide-dashboard-home.entry.js.map +1 -1
  135. package/dist/esm/gx-ide-data-selector.entry.js +2 -1
  136. package/dist/esm/gx-ide-data-selector.entry.js.map +1 -1
  137. package/dist/esm/gx-ide-data-type-selector.entry.js +2 -1
  138. package/dist/esm/gx-ide-data-type-selector.entry.js.map +1 -1
  139. package/dist/esm/gx-ide-design-import.entry.js +2 -1
  140. package/dist/esm/gx-ide-design-import.entry.js.map +1 -1
  141. package/dist/esm/gx-ide-entity-selector.entry.js +2 -1
  142. package/dist/esm/gx-ide-entity-selector.entry.js.map +1 -1
  143. package/dist/esm/gx-ide-kb-manager-export.entry.js +2 -1
  144. package/dist/esm/gx-ide-kb-manager-export.entry.js.map +1 -1
  145. package/dist/esm/gx-ide-kb-manager-import.entry.js +2 -1
  146. package/dist/esm/gx-ide-kb-manager-import.entry.js.map +1 -1
  147. package/dist/esm/gx-ide-manage-module-references-v2.entry.js +2 -1
  148. package/dist/esm/gx-ide-manage-module-references-v2.entry.js.map +1 -1
  149. package/dist/esm/gx-ide-manage-module-references.entry.js +2 -1
  150. package/dist/esm/gx-ide-manage-module-references.entry.js.map +1 -1
  151. package/dist/esm/gx-ide-new-kb.entry.js +2 -1
  152. package/dist/esm/gx-ide-new-kb.entry.js.map +1 -1
  153. package/dist/esm/gx-ide-object-selector.entry.js +2 -1
  154. package/dist/esm/gx-ide-object-selector.entry.js.map +1 -1
  155. package/dist/esm/gx-ide-sc-chat-container.entry.js +282 -0
  156. package/dist/esm/gx-ide-sc-chat-container.entry.js.map +1 -0
  157. package/dist/esm/gx-ide-share-kb.entry.js +2 -1
  158. package/dist/esm/gx-ide-share-kb.entry.js.map +1 -1
  159. package/dist/esm/gx-ide-start-page.entry.js +2 -1
  160. package/dist/esm/gx-ide-start-page.entry.js.map +1 -1
  161. package/dist/esm/gx-ide-welcome-page.entry.js +2 -1
  162. package/dist/esm/gx-ide-welcome-page.entry.js.map +1 -1
  163. package/dist/esm/gx-ide-ww-attributes.entry.js +2 -1
  164. package/dist/esm/gx-ide-ww-attributes.entry.js.map +1 -1
  165. package/dist/esm/index.js +4 -0
  166. package/dist/esm/index.js.map +1 -1
  167. package/dist/esm/loader.js +1 -1
  168. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  169. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  170. package/dist/genexus-ide-ui/index.esm.js +6 -0
  171. package/dist/genexus-ide-ui/index.esm.js.map +1 -1
  172. package/dist/genexus-ide-ui/{p-aa324232.entry.js → p-1a629aa9.entry.js} +4 -2
  173. package/dist/genexus-ide-ui/{p-aa324232.entry.js.map → p-1a629aa9.entry.js.map} +1 -1
  174. package/dist/genexus-ide-ui/{p-18317dd7.entry.js → p-1e29cd30.entry.js} +4 -2
  175. package/dist/genexus-ide-ui/{p-18317dd7.entry.js.map → p-1e29cd30.entry.js.map} +1 -1
  176. package/dist/genexus-ide-ui/{p-af05e095.entry.js → p-1ea6c3fe.entry.js} +13 -11
  177. package/dist/genexus-ide-ui/{p-af05e095.entry.js.map → p-1ea6c3fe.entry.js.map} +1 -1
  178. package/dist/genexus-ide-ui/{p-a1c5775d.entry.js → p-2145674e.entry.js} +4 -2
  179. package/dist/genexus-ide-ui/{p-a1c5775d.entry.js.map → p-2145674e.entry.js.map} +1 -1
  180. package/dist/genexus-ide-ui/{p-ec6129c7.entry.js → p-2cefd33a.entry.js} +4 -2
  181. package/dist/genexus-ide-ui/{p-ec6129c7.entry.js.map → p-2cefd33a.entry.js.map} +1 -1
  182. package/dist/genexus-ide-ui/{p-f252dd07.entry.js → p-36fecdcb.entry.js} +10 -8
  183. package/dist/genexus-ide-ui/{p-f252dd07.entry.js.map → p-36fecdcb.entry.js.map} +1 -1
  184. package/dist/genexus-ide-ui/{p-f827b9b8.entry.js → p-3ca45936.entry.js} +4 -2
  185. package/dist/genexus-ide-ui/{p-f827b9b8.entry.js.map → p-3ca45936.entry.js.map} +1 -1
  186. package/dist/genexus-ide-ui/{p-a8739942.entry.js → p-440742f3.entry.js} +4 -2
  187. package/dist/genexus-ide-ui/{p-a8739942.entry.js.map → p-440742f3.entry.js.map} +1 -1
  188. package/dist/genexus-ide-ui/{p-a40648dc.entry.js → p-442e30e3.entry.js} +4 -2
  189. package/dist/genexus-ide-ui/{p-a40648dc.entry.js.map → p-442e30e3.entry.js.map} +1 -1
  190. package/dist/genexus-ide-ui/{p-2dcfa6ef.entry.js → p-47d4ec9a.entry.js} +33 -31
  191. package/dist/genexus-ide-ui/{p-2dcfa6ef.entry.js.map → p-47d4ec9a.entry.js.map} +1 -1
  192. package/dist/genexus-ide-ui/p-6e4208d8.js +9 -0
  193. package/dist/genexus-ide-ui/p-6e4208d8.js.map +1 -0
  194. package/dist/genexus-ide-ui/{p-64f2a9f4.entry.js → p-7be438dc.entry.js} +10 -8
  195. package/dist/genexus-ide-ui/{p-64f2a9f4.entry.js.map → p-7be438dc.entry.js.map} +1 -1
  196. package/dist/genexus-ide-ui/p-8558e873.entry.js +224 -0
  197. package/dist/genexus-ide-ui/p-8558e873.entry.js.map +1 -0
  198. package/dist/genexus-ide-ui/{p-8cebb078.entry.js → p-8942f4b6.entry.js} +4 -2
  199. package/dist/genexus-ide-ui/{p-8cebb078.entry.js.map → p-8942f4b6.entry.js.map} +1 -1
  200. package/dist/genexus-ide-ui/{p-9e34f166.entry.js → p-9cfd7800.entry.js} +4 -2
  201. package/dist/genexus-ide-ui/{p-9e34f166.entry.js.map → p-9cfd7800.entry.js.map} +1 -1
  202. package/dist/genexus-ide-ui/{p-1986d34d.js → p-ad5caf61.js} +1 -10
  203. package/dist/genexus-ide-ui/p-ad5caf61.js.map +1 -0
  204. package/dist/genexus-ide-ui/{p-c1162623.entry.js → p-b1eb312d.entry.js} +15 -13
  205. package/dist/genexus-ide-ui/{p-c1162623.entry.js.map → p-b1eb312d.entry.js.map} +1 -1
  206. package/dist/genexus-ide-ui/p-c1791757.entry.js +87 -0
  207. package/dist/genexus-ide-ui/p-c1791757.entry.js.map +1 -0
  208. package/dist/genexus-ide-ui/{p-1feae6ef.entry.js → p-c4c48a1e.entry.js} +4 -2
  209. package/dist/genexus-ide-ui/{p-1feae6ef.entry.js.map → p-c4c48a1e.entry.js.map} +1 -1
  210. package/dist/genexus-ide-ui/{p-e4bbec21.entry.js → p-cfef5956.entry.js} +4 -2
  211. package/dist/genexus-ide-ui/{p-e4bbec21.entry.js.map → p-cfef5956.entry.js.map} +1 -1
  212. package/dist/genexus-ide-ui/{p-92c51f3e.entry.js → p-e14affde.entry.js} +4 -2
  213. package/dist/genexus-ide-ui/{p-92c51f3e.entry.js.map → p-e14affde.entry.js.map} +1 -1
  214. package/dist/genexus-ide-ui/p-f3f1e1f6.js +68 -0
  215. package/dist/genexus-ide-ui/p-f3f1e1f6.js.map +1 -0
  216. package/dist/genexus-ide-ui/{p-0c60c76f.entry.js → p-f7d2a39a.entry.js} +11 -9
  217. package/dist/genexus-ide-ui/{p-0c60c76f.entry.js.map → p-f7d2a39a.entry.js.map} +1 -1
  218. package/dist/types/components/_helpers/chat-container/chat-container.d.ts +23 -0
  219. package/dist/types/components/_helpers/chat-container/code-render.d.ts +4 -0
  220. package/dist/types/components.d.ts +54 -0
  221. package/dist/types/index.d.ts +1 -0
  222. package/dist/types/showcase/chat-container/callbacks.d.ts +6 -0
  223. package/dist/types/showcase/chat-container/chat.showcase.d.ts +6 -0
  224. package/package.json +1 -1
  225. package/dist/cjs/MERCURY_ASSETS-fbc83c8c.js.map +0 -1
  226. package/dist/esm/MERCURY_ASSETS-91a1db9c.js.map +0 -1
  227. package/dist/genexus-ide-ui/p-1986d34d.js.map +0 -1
@@ -0,0 +1,5 @@
1
+ const g="/";const MERCURY_ALIAS="mer",getIconPath=(e,t=MERCURY_ALIAS)=>{const r=e.colorType?`${g}${e.colorType}`:"";return `${t}${g}${e.category}${g}${e.name}${r}`};
2
+
3
+ export { getIconPath as g };
4
+
5
+ //# sourceMappingURL=assets-manager-0d129105.js.map
@@ -0,0 +1 @@
1
+ {"file":"assets-manager-0d129105.js","mappings":"AAAkB,MAAW,CAAC,CAAC,GAAG,CAAmB,MAAC,aAAa,CAAC,KAAK,CAAiN,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,OAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;;;;","names":[],"sources":["node_modules/@genexus/mercury/dist/assets-manager.js"],"sourcesContent":["\"use strict\";const a={},d={},g=\"/\",u=\":\";export const MERCURY_ALIAS=\"mer\",registerAssets=(e,t,r)=>{a[e]||d[t]||(a[e]=r,d[t]=e)},getAsset=(e,t)=>{const r=d[e]??e,n=a[r];if(!n)return;const o=n.icons[t.category];if(!o)return;const c=o[t.name];if(c)return t.colorType?c[t.colorType]:c},getIconPath=(e,t=MERCURY_ALIAS)=>{const r=e.colorType?`${g}${e.colorType}`:\"\";return`${t}${g}${e.category}${g}${e.name}${r}`},getIconPathExpanded=(e,t,r=MERCURY_ALIAS)=>`${getIconPath(e,r)}${u}${getIconPath(t,r)}`;const l=(e,t,r)=>{const n=t===MERCURY_ALIAS?\"\":`-${t}`;return r?`var(--icon${n}__${e}--${r})`:`var(--icon${n}__${e})`},f=e=>{const t=e.split(g),r=t[0],n=d[r]??r;if(!a[n]){const i=t[0],S=t[1],p=t[2];return{vendor:MERCURY_ALIAS,category:i,name:S,colorType:p}}const c=t[1],s=t[2],m=t[3];return{vendor:r,category:c,name:s,colorType:m}};export const getImagePathCallback=e=>{const{vendor:t,category:r,name:n,colorType:o}=f(e),c=getAsset(t,o?{category:r,name:n,colorType:o}:{category:r,name:n});if(!c)return;const s={base:l(c.enabled.name,t)};return c.hover&&(s.hover=l(c.hover.name,t)),c.active&&(s.active=l(c.active.name,t)),c.disabled&&(s.disabled=l(c.disabled.name,t)),s},getActionMenuImagePathCallback=(e,t)=>{if(!e.startImgSrc&&t===\"start\"||!e.endImgSrc&&t===\"end\")return;const r=t===\"start\"?e.startImgSrc:e.endImgSrc;return getImagePathCallback(r)},getActionListImagePathCallback=e=>e.imgSrc?getImagePathCallback(e.imgSrc):void 0,getNavigationListImagePathCallback=e=>e.startImgSrc?getImagePathCallback(e.startImgSrc):void 0,getTreeViewImagePathCallback=(e,t)=>{if(!e.startImgSrc&&t===\"start\"||!e.endImgSrc&&t===\"end\")return;const n=(t===\"start\"?e.startImgSrc:e.endImgSrc).split(u),o=getImagePathCallback(n[0]);if(o)return n[1]?{default:o,expanded:getImagePathCallback(n[1])}:{default:o}},getComboBoxImagePathCallback=(e,t)=>{if(!e.startImgSrc&&t===\"start\"||!e.endImgSrc&&t===\"end\")return;const r=t===\"start\"?e.startImgSrc:e.endImgSrc;return getImagePathCallback(r)},getImagePathCallbackDefinitions={\"ch-accordion-render\":getImagePathCallback,\"ch-action-menu-render\":getActionMenuImagePathCallback,\"ch-action-list-render\":getActionListImagePathCallback,\"ch-combo-box-render\":getComboBoxImagePathCallback,\"ch-navigation-list-render\":getNavigationListImagePathCallback,\"ch-checkbox\":getImagePathCallback,\"ch-edit\":getImagePathCallback,\"ch-image\":getImagePathCallback,\"ch-tree-view-render\":getTreeViewImagePathCallback};\n"],"version":3}
@@ -0,0 +1,47 @@
1
+ import { h } from './index-93411ea2.js';
2
+ import './MERCURY_ASSETS-9e4e8ebc.js';
3
+
4
+ const MESSAGE_COPIED_PART_SELECTOR = "message__copied-feedback";
5
+ const MESSAGE_COPIED_VISIBLE_PART_SELECTOR = "message__copied-feedback-visible";
6
+ const copy = (text) => (event) => {
7
+ event.stopPropagation();
8
+ // 1. Copy message
9
+ navigator.clipboard.writeText(text);
10
+ // 2. Display "copied" message (expects to be the next sibling!)
11
+ const copiedFeedbackRef = event.target
12
+ .nextSibling;
13
+ const copiedFeedbackPart = copiedFeedbackRef.getAttribute("part");
14
+ if (copiedFeedbackPart === MESSAGE_COPIED_PART_SELECTOR) {
15
+ copiedFeedbackRef.setAttribute("part", `${MESSAGE_COPIED_PART_SELECTOR} ${MESSAGE_COPIED_VISIBLE_PART_SELECTOR}`);
16
+ setTimeout(() => {
17
+ copiedFeedbackRef.setAttribute("part", `${MESSAGE_COPIED_PART_SELECTOR}`);
18
+ }, 1000);
19
+ }
20
+ };
21
+ const copyButton = (textToCopy, accessibleName, additionalPart) => {
22
+ return (h("button", { "aria-label": accessibleName, title: accessibleName, class: "button-copy-code", type: "button", onClick: copy(textToCopy), part: `message__copy-button ${additionalPart}` }));
23
+ };
24
+ const mercuryCodeRender = (copyButtonAccessibleName) => (options) => (h("div", { class: "code-block-container" },
25
+ h("div", { class: "code-block-header" }, copyButton(options.plainText, copyButtonAccessibleName, "code-render")),
26
+ h("ch-code", { language: options.language, lastNestedChildClass: options.lastNestedChildClass, value: options.plainText })));
27
+ const mercuryChatMessageRender = (theme) => (messageModel) => messageModel.role === "assistant" && messageModel.status === "waiting"
28
+ ? [
29
+ h("span", { part: "message__processing" }, "Processing request"),
30
+ h("div", { class: "processing-animation", part: "processing-animation" })
31
+ ]
32
+ : [
33
+ // "copy button" before "role" and "time" to hide both on button:focus
34
+ copyButton(messageModel.content, "Copy code", "common-message"),
35
+ h("p", { part: MESSAGE_COPIED_PART_SELECTOR }, "message copied to clipboard"),
36
+ h("span", { part: `message__role ${messageModel.role}` }, messageModel.role === "user" ? "You" : "GeneXus Code Fixer"),
37
+ h("time", { dateTime: messageModel.metadata, part: "message__time" }, messageModel.metadata),
38
+ messageModel.role === "user" ? (h("span", { part: "message__content user" }, messageModel.content)) : (h("ch-markdown-viewer", { part: messageModel.role === "assistant" &&
39
+ (messageModel.status === "complete" || !messageModel.status) &&
40
+ !messageModel.parts
41
+ ? `message__content no-error`
42
+ : "message__content", theme: theme, showIndicator: false, renderCode: mercuryCodeRender("Copy code"), value: messageModel.content }))
43
+ ];
44
+
45
+ export { mercuryCodeRender as a, mercuryChatMessageRender as m };
46
+
47
+ //# sourceMappingURL=code-render-79798e42.js.map
@@ -0,0 +1 @@
1
+ {"file":"code-render-79798e42.js","mappings":";;;AASA,MAAM,4BAA4B,GAAG,0BAA0B,CAAC;AAChE,MAAM,oCAAoC,GAAG,kCAAkC,CAAC;AAEhF,MAAM,IAAI,GAAG,CAAC,IAAY,KAAK,CAAC,KAAY;IAC1C,KAAK,CAAC,eAAe,EAAE,CAAC;;IAGxB,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;;IAGpC,MAAM,iBAAiB,GAAI,KAAK,CAAC,MAAsB;SACpD,WAA0B,CAAC;IAC9B,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAClE,IAAI,kBAAkB,KAAK,4BAA4B,EAAE;QACvD,iBAAiB,CAAC,YAAY,CAC5B,MAAM,EACN,GAAG,4BAA4B,IAAI,oCAAoC,EAAE,CAC1E,CAAC;QAEF,UAAU,CAAC;YACT,iBAAiB,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,4BAA4B,EAAE,CAAC,CAAC;SAC3E,EAAE,IAAI,CAAC,CAAC;KACV;AACH,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CACjB,UAAkB,EAClB,cAAsB,EACtB,cAAsB;IAEtB,QACE,4BACc,cAAc,EAC1B,KAAK,EAAE,cAAc,EACrB,KAAK,EAAC,kBAAkB,EACxB,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,EACzB,IAAI,EAAE,wBAAwB,cAAc,EAAE,GACtC,EACV;AACJ,CAAC,CAAC;MAEW,iBAAiB,GAC5B,CAAC,wBAAgC,KACjC,CAAC,OAAwC,MAErC,WAAK,KAAK,EAAC,sBAAsB;IAC/B,WAAK,KAAK,EAAC,mBAAmB,IAC3B,UAAU,CACT,OAAO,CAAC,SAAS,EACjB,wBAAwB,EACxB,aAAa,CACd,CACG;IACN,eACE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAC1B,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,EAClD,KAAK,EAAE,OAAO,CAAC,SAAS,GACf,CACP,EACN;MAEO,wBAAwB,GACnC,CAAC,KAAa,KACd,CAAC,YAA+D,KAC9D,YAAY,CAAC,IAAI,KAAK,WAAW,IAAI,YAAY,CAAC,MAAM,KAAK,SAAS;MAClE;QACE,YAAM,IAAI,EAAC,qBAAqB,yBAA0B;QAE1D,WAAK,KAAK,EAAC,sBAAsB,EAAC,IAAI,EAAC,sBAAsB,GAAO;KACrE;MACD;;QAEE,UAAU,CACR,YAAY,CAAC,OAAiB,EAC9B,WAAW,EACX,gBAAgB,CACjB;QACD,SAAG,IAAI,EAAE,4BAA4B,kCAEjC;QACJ,YAAM,IAAI,EAAE,iBAAiB,YAAY,CAAC,IAAI,EAAE,IAC7C,YAAY,CAAC,IAAI,KAAK,MAAM,GAAG,KAAK,GAAG,oBAAoB,CACvD;QACP,YAAM,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE,IAAI,EAAC,eAAe,IACxD,YAAY,CAAC,QAAQ,CACjB;QAEP,YAAY,CAAC,IAAI,KAAK,MAAM,IAC1B,YAAM,IAAI,EAAC,uBAAuB,IAAE,YAAY,CAAC,OAAO,CAAQ,KAEhE,0BACE,IAAI,EACF,YAAY,CAAC,IAAI,KAAK,WAAW;iBAChC,YAAY,CAAC,MAAM,KAAK,UAAU,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;gBAC5D,CAAC,YAAY,CAAC,KAAK;kBACf,2BAA2B;kBAC3B,kBAAkB,EAExB,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,KAAK,EACpB,UAAU,EAAE,iBAAiB,CAAC,WAAW,CAAC,EAC1C,KAAK,EAAE,YAAY,CAAC,OAAiB,GACjB,CACvB;;;;;","names":[],"sources":["src/components/_helpers/chat-container/code-render.tsx"],"sourcesContent":["import { h } from \"@stencil/core\";\nimport {\n MarkdownViewerCodeRender,\n ChatMessageByRole\n} from \"@genexus/chameleon-controls-library\";\nimport { MarkdownViewerCodeRenderOptions } from \"@genexus/chameleon-controls-library/dist/types/components/markdown-viewer/parsers/types\";\nimport { getIconPath } from \"@genexus/mercury\";\ngetIconPath;\n\nconst MESSAGE_COPIED_PART_SELECTOR = \"message__copied-feedback\";\nconst MESSAGE_COPIED_VISIBLE_PART_SELECTOR = \"message__copied-feedback-visible\";\n\nconst copy = (text: string) => (event: Event) => {\n event.stopPropagation();\n\n // 1. Copy message\n navigator.clipboard.writeText(text);\n\n // 2. Display \"copied\" message (expects to be the next sibling!)\n const copiedFeedbackRef = (event.target as HTMLElement)\n .nextSibling as HTMLElement;\n const copiedFeedbackPart = copiedFeedbackRef.getAttribute(\"part\");\n if (copiedFeedbackPart === MESSAGE_COPIED_PART_SELECTOR) {\n copiedFeedbackRef.setAttribute(\n \"part\",\n `${MESSAGE_COPIED_PART_SELECTOR} ${MESSAGE_COPIED_VISIBLE_PART_SELECTOR}`\n );\n\n setTimeout(() => {\n copiedFeedbackRef.setAttribute(\"part\", `${MESSAGE_COPIED_PART_SELECTOR}`);\n }, 1000);\n }\n};\n\nconst copyButton = (\n textToCopy: string,\n accessibleName: string,\n additionalPart: string\n) => {\n return (\n <button\n aria-label={accessibleName}\n title={accessibleName}\n class=\"button-copy-code\"\n type=\"button\"\n onClick={copy(textToCopy)}\n part={`message__copy-button ${additionalPart}`}\n ></button>\n );\n};\n\nexport const mercuryCodeRender =\n (copyButtonAccessibleName: string) =>\n (options: MarkdownViewerCodeRenderOptions): MarkdownViewerCodeRender =>\n (\n <div class=\"code-block-container\">\n <div class=\"code-block-header\">\n {copyButton(\n options.plainText,\n copyButtonAccessibleName,\n \"code-render\"\n )}\n </div>\n <ch-code\n language={options.language}\n lastNestedChildClass={options.lastNestedChildClass}\n value={options.plainText}\n ></ch-code>\n </div>\n );\n\nexport const mercuryChatMessageRender =\n (theme: string) =>\n (messageModel: ChatMessageByRole<\"assistant\" | \"error\" | \"user\">) =>\n messageModel.role === \"assistant\" && messageModel.status === \"waiting\"\n ? [\n <span part=\"message__processing\">Processing request</span>,\n\n <div class=\"processing-animation\" part=\"processing-animation\"></div>\n ]\n : [\n // \"copy button\" before \"role\" and \"time\" to hide both on button:focus\n copyButton(\n messageModel.content as string,\n \"Copy code\",\n \"common-message\"\n ),\n <p part={MESSAGE_COPIED_PART_SELECTOR}>\n message copied to clipboard\n </p>,\n <span part={`message__role ${messageModel.role}`}>\n {messageModel.role === \"user\" ? \"You\" : \"GeneXus Code Fixer\"}\n </span>,\n <time dateTime={messageModel.metadata} part=\"message__time\">\n {messageModel.metadata}\n </time>,\n\n messageModel.role === \"user\" ? (\n <span part=\"message__content user\">{messageModel.content}</span>\n ) : (\n <ch-markdown-viewer\n part={\n messageModel.role === \"assistant\" &&\n (messageModel.status === \"complete\" || !messageModel.status) &&\n !messageModel.parts\n ? `message__content no-error`\n : \"message__content\"\n }\n theme={theme}\n showIndicator={false}\n renderCode={mercuryCodeRender(\"Copy code\")}\n value={messageModel.content as string}\n ></ch-markdown-viewer>\n )\n ];\n"],"version":3}
@@ -14,7 +14,7 @@ const patchBrowser = () => {
14
14
  };
15
15
 
16
16
  patchBrowser().then(options => {
17
- return bootstrapLazy(JSON.parse("[[\"gx-ide-bpm-export-xpdl\",[[1,\"gx-ide-bpm-export-xpdl\",{\"displayTitle\":[4,\"display-title\"],\"exportCallback\":[16],\"cancelCallback\":[16],\"addCallback\":[16],\"referencesCallback\":[16],\"emptyInput\":[32],\"emptyObjects\":[32],\"notExporting\":[32]}]]],[\"gx-ide-bpm-import-files\",[[1,\"gx-ide-bpm-import-files\",{\"displayTitle\":[4,\"display-title\"],\"allowedExtensions\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"files\":[32],\"selectedFiles\":[32]}]]],[\"gx-ide-kb-manager-import\",[[1,\"gx-ide-kb-manager-import\",{\"cancelCallback\":[16],\"importCallback\":[16],\"loadCallback\":[16],\"objectContextMenuCallback\":[16],\"optionsCallback\":[16],\"selectedFile\":[1040],\"statusMinimal\":[4,\"status-minimal\"],\"checkedObjectsIds\":[32],\"selectAllCheckboxValue\":[32],\"selectAllCheckboxIndeterminate\":[32],\"importStatusMessage\":[32],\"importTreeState\":[32],\"importedTreeFilterRegExp\":[32],\"importingIsInProcess\":[32],\"importTreeFilterList\":[32],\"noImport\":[32],\"noObjects\":[32],\"objectsTreeModel\":[32],\"showHiddenImportsMessage\":[32],\"someStatusVisible\":[32],\"statusInfo\":[32],\"addResultItem\":[64]},null,{\"importTreeState\":[\"importTreeStateChanged\",\"watchImportTreeStateHandler\"],\"objectsTreeModel\":[\"watchObjectsTreeModelHandler\"],\"selectedFile\":[\"selectedFileChanged\"]}]]],[\"gx-ide-team-dev-select-recent-comment\",[[1,\"gx-ide-team-dev-select-recent-comment\",{\"displayTitle\":[4,\"display-title\"],\"comments\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-team-dev-update\",[[1,\"gx-ide-team-dev-update\",{\"displayTitle\":[4,\"display-title\"],\"confirmCallback\":[16],\"gridContextMenuCallback\":[16],\"loadCallback\":[16],\"objectsScopeCallback\":[16],\"openServerCallback\":[16],\"pendingItemsCheckedCallback\":[16],\"revisionScopeCallback\":[16],\"objectsContextMenuCallback\":[16],\"selectCallback\":[16],\"types\":[16],\"updateCallback\":[16],\"updateFrom\":[16],\"isLoading\":[32],\"objectScopeText\":[32],\"openTab\":[32],\"revisionScopeText\":[32],\"showFilter\":[32],\"updateData\":[32],\"updateResultData\":[32],\"reload\":[64]}]]],[\"gx-ide-data-selector\",[[17,\"gx-ide-data-selector\",{\"cancelCallback\":[16],\"confirmCallback\":[16],\"defaultModule\":[16],\"displayTitle\":[4,\"display-title\"],\"editCallback\":[16],\"loadItemsCallback\":[16],\"loader\":[4],\"newVariableCallback\":[16],\"selectObjectCallback\":[16],\"selectionType\":[1,\"selection-type\"],\"loading\":[32],\"objects\":[32],\"selectedObjectsIds\":[32],\"suspendShortcuts\":[64],\"validate\":[64]}]]],[\"gx-ide-manage-module-references\",[[1,\"gx-ide-manage-module-references\",{\"displayTitle\":[4,\"display-title\"],\"servers\":[16],\"serverSelectedCallback\":[16],\"executeActionCallback\":[16],\"addServerCallback\":[16],\"serverContextMenuCallback\":[16],\"showServerCommands\":[4,\"show-server-commands\"],\"modulesAll\":[32],\"filteredModules\":[32],\"selectedModule\":[32],\"selectedServerId\":[32],\"selectedModuleAction\":[32],\"modulesSelectedVersion\":[32],\"actionCompleted\":[32],\"closeProgressBar\":[32],\"progressValue\":[32],\"progressState\":[32],\"loadingServer\":[32],\"reRenderCounter\":[32],\"validate\":[64]},null,{\"modulesAll\":[\"modulesAllWatcher\",\"onPropValueChange\"],\"loadingServer\":[\"loadingServerHandler\"]}]]],[\"gx-ide-manage-module-references-v2\",[[1,\"gx-ide-manage-module-references-v2\",{\"displayTitle\":[4,\"display-title\"],\"servers\":[16],\"serverSelectedCallback\":[16],\"executeActionCallback\":[16],\"serverContextMenuCallback\":[16],\"showServerCommands\":[4,\"show-server-commands\"],\"searchModulesFilterValue\":[32],\"selectedButtonFilter\":[32],\"serverModules\":[32],\"serverModulesExtended\":[32],\"filteredServerModules\":[32],\"modulesMap\":[32],\"selectedModule\":[32],\"selectedServerId\":[32],\"selectedModuleAction\":[32],\"modulesSelectedVersionMap\":[32],\"actionCompleted\":[32],\"closeProgressBar\":[32],\"progressValue\":[32],\"progressState\":[32],\"loadingServer\":[32]},null,{\"loadingServer\":[\"loadingServerHandler\"]}]]],[\"gx-ide-navigation-report\",[[1,\"gx-ide-navigation-report\",{\"headerData\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"closeCallback\":[16],\"itemSelectedCallback\":[16],\"reportTreeItems\":[32],\"navigationItemsStatusRegExpString\":[32],\"navigationItemsCaptionRegExpString\":[32],\"navigationItemsRegExp\":[32],\"confirmed\":[32],\"headerState\":[32],\"statusInfo\":[32],\"someStatusVisible\":[32],\"addItem\":[64],\"clearItems\":[64]},null,{\"navigationItemsStatusRegExpString\":[\"navigationItemsStatusRegExpStringChanged\"],\"navigationItemsCaptionRegExpString\":[\"navigationItemsCaptionRegExpStringChanged\"]}]]],[\"gx-ide-object-selector\",[[17,\"gx-ide-object-selector\",{\"cancelCallback\":[16],\"categories\":[16],\"defaultCategory\":[1,\"default-category\"],\"defaultModule\":[16],\"defaultType\":[1,\"default-type\"],\"loader\":[4],\"loadCallback\":[16],\"multiSelection\":[4,\"multi-selection\"],\"newObjectCallback\":[16],\"openSelectionCallback\":[16],\"patternValue\":[1,\"pattern-value\"],\"selectModuleCallback\":[16],\"types\":[16],\"filterModified\":[32],\"loading\":[32],\"modifiedAfterValue\":[32],\"objects\":[32],\"selectedObjectsIdsArray\":[32],\"suspendShortcuts\":[64],\"validate\":[64]}]]],[\"gx-ide-ww-attributes\",[[1,\"gx-ide-ww-attributes\",{\"contextMenuCallback\":[16],\"deleteSelectionCallback\":[16],\"loadCallback\":[16],\"objectActionCallback\":[16],\"objects\":[16],\"openSelectionCallback\":[16],\"selectionChangeCallback\":[16],\"types\":[16],\"attributes\":[32],\"selectedAttributesIds\":[32],\"filterMore\":[32],\"name\":[32],\"loading\":[32],\"object\":[32],\"type\":[32],\"reload\":[64],\"validate\":[64]},[[1,\"keydown\",\"keyDownHandler\"]]]]],[\"gx-ide-ww-images\",[[1,\"gx-ide-ww-images\",{\"displayTitle\":[4,\"display-title\"],\"secondaryFilter\":[4,\"secondary-filter\"],\"categories\":[16],\"densities\":[16],\"defaultCategory\":[1,\"default-category\"],\"defaultModule\":[16],\"defaultType\":[1,\"default-type\"],\"filterModules\":[16],\"languages\":[16],\"layers\":[16],\"contextMenuCallback\":[16],\"deleteSelectionCallback\":[16],\"loadCallback\":[16],\"loadImageItemsCallback\":[16],\"newObjectCallback\":[16],\"openSelectionCallback\":[16],\"selectModuleCallback\":[16],\"selectionObjectChangedCallback\":[16],\"shadow\":[4],\"styles\":[16],\"types\":[16],\"filtersHidden\":[32],\"filterAfterType\":[32],\"filterModified\":[32],\"images\":[32],\"filteredImages\":[32],\"imagesSelectedItems\":[32],\"selectedObjectsIds\":[32],\"filterImagesInputValue\":[32],\"validate\":[64],\"reload\":[64]},[[1,\"keydown\",\"keyDownHandler\"]],{\"filtersHidden\":[\"filtersHiddenHandler\"]}]]],[\"gx-ide-bpm-app-declaration\",[[1,\"gx-ide-bpm-app-declaration\",{\"displayTitle\":[4,\"display-title\"],\"application\":[1040],\"suggestApplicationsCallback\":[16],\"selectApplicationCallback\":[16],\"selectMappingCallback\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"getDataMappingCallback\":[16],\"suggestedApplications\":[32]},null,{\"application\":[\"watchApplicationHandler\"]}]]],[\"gx-ide-bpm-assign-roles\",[[1,\"gx-ide-bpm-assign-roles\",{\"displayTitle\":[4,\"display-title\"],\"roles\":[16],\"assignedRoles\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"unassignedRolesState\":[32],\"assignedRolesState\":[32],\"filterUnassignedInput\":[32],\"filterAssignedInput\":[32],\"unassignedSelected\":[32],\"assignedSelected\":[32]}]]],[\"gx-ide-bpm-import-gxpm\",[[1,\"gx-ide-bpm-import-gxpm\",{\"displayTitle\":[4,\"display-title\"],\"confirmCallback\":[16],\"cancelCallback\":[16],\"selectedFile\":[32],\"pathValue\":[32]}]]],[\"gx-ide-bpm-timer-duration\",[[1,\"gx-ide-bpm-timer-duration\",{\"displayTitle\":[4,\"display-title\"],\"duration\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-design-import\",[[1,\"gx-ide-design-import\",{\"reactiveSettings\":[16],\"extensions\":[16],\"defaultModule\":[16],\"path\":[1025],\"accessToken\":[1025,\"access-token\"],\"importAsWebPanels\":[4,\"import-as-web-panels\"],\"selectModuleCallback\":[16],\"cancelCallback\":[16],\"confirmCallback\":[16],\"loadCallback\":[16],\"loadDesignSystemCallback\":[16],\"loadFontCallback\":[16],\"loadImageCallback\":[16],\"loadPanelDataCallback\":[16],\"requiresAccessTokenCallback\":[16],\"styles\":[16],\"textEditorFactoryCallback\":[16],\"reRenderCounter\":[32],\"stylesAsComboBoxModel\":[32],\"styleValue\":[32],\"accessTokenHasError\":[32],\"pathIsValid\":[32],\"tabsModel\":[32],\"activeTabs\":[32],\"renderedTabs\":[32],\"designData\":[32],\"detailTreeModel\":[32],\"isLoading\":[32],\"isLoaded\":[32],\"messages\":[32],\"selectedFile\":[32],\"selectedDesignType\":[32],\"selectedDesignItem\":[32],\"requiresAccessToken\":[32],\"designDataTreeDataModel\":[32],\"updateTabsActiveTab\":[32],\"fitImages\":[32],\"lastLoadCallbackSettingValues\":[32]},null,{\"pathIsValid\":[\"pathIsValidChanged\"],\"designData\":[\"designDataChanged\"],\"path\":[\"pathChanged\"],\"accessToken\":[\"accessTokenChanged\"],\"styles\":[\"stylesChanged\"],\"messages\":[\"watchMessagesHandler\"]}]]],[\"gx-ide-edit-module-server\",[[1,\"gx-ide-edit-module-server\",{\"types\":[16],\"name\":[1],\"source\":[1],\"type\":[1],\"confirmCallback\":[16],\"selectSourceCallback\":[16],\"cancelCallback\":[16],\"selectedType\":[32]}]]],[\"gx-ide-gam-installation-settings\",[[1,\"gx-ide-gam-installation-settings\",{\"displayTitle\":[4,\"display-title\"],\"configurationType\":[1,\"configuration-type\"],\"repairCallback\":[16],\"saveCallback\":[16],\"cancelCallback\":[16],\"defaultConfiguration\":[16],\"canSelectPanels\":[4,\"can-select-panels\"]}]]],[\"gx-ide-kb-manager-export\",[[1,\"gx-ide-kb-manager-export\",{\"addKBPropertiesCallback\":[16],\"addObjectsCallback\":[16],\"addReferencesCallback\":[16],\"cancelCallback\":[16],\"exportCallback\":[16],\"exportFileDirectoryCallback\":[16],\"fileName\":[1,\"file-name\"],\"kbPropertiesTypes\":[16],\"loader\":[4],\"objectTypes\":[16],\"optionsCallback\":[16],\"addKbPropertiesIsChecked\":[32],\"atLeastOnePropertyItemIsChecked\":[32],\"atLeastOneObjectItemIsChecked\":[32],\"checkedObjectsIds\":[32],\"checkedPropertiesIds\":[32],\"exportAllIsChecked\":[32],\"exportingIsInProcess\":[32],\"hasObjects\":[32],\"objectsTreeViewModel\":[32]},null,{\"objectsTreeViewModel\":[\"objectsTreeViewModelChanged\"],\"objectTypes\":[\"objectTypesChanged\"]}]]],[\"gx-ide-references\",[[1,\"gx-ide-references\",{\"displayTitle\":[4,\"display-title\"],\"selectedObject\":[1040],\"selectorSourceCallback\":[16],\"loadReferencesCallback\":[16],\"openObjectCallback\":[16],\"openSelectorDialogCallback\":[16],\"selectReferenceCallback\":[16],\"referencedByTreeData\":[32],\"referencesToTreeData\":[32],\"barHidden\":[32],\"objectsSuggestions\":[32]},null,{\"selectedObject\":[\"selectedObjectHandler\"]}]]],[\"gx-ide-start-page\",[[1,\"gx-ide-start-page\",{\"createKBCallback\":[16],\"openKbCallback\":[16],\"secondarySection\":[16],\"kbs\":[16],\"kbsFilterThreshold\":[2,\"kbs-filter-threshold\"],\"kbFilterValue\":[32],\"filteredKbs\":[32],\"loading\":[32]},null,{\"kbFilterValue\":[\"kbFilterValueChanged\"],\"kbs\":[\"kbsChanged\"]}]]],[\"gx-ide-team-dev-commit\",[[1,\"gx-ide-team-dev-commit\",{\"displayTitle\":[4,\"display-title\"],\"changeSet\":[16],\"types\":[16],\"folders\":[16],\"categories\":[16],\"getRecentCommentCallback\":[16],\"loadCallback\":[16],\"commitCallback\":[16],\"selectCallback\":[16],\"pendingItemsCheckedCallback\":[16],\"objectsContextMenuCallback\":[16],\"filtersHidden\":[32],\"comment\":[32],\"pendingCommits\":[32],\"ignoredObjects\":[32],\"commitButtonEnabled\":[32],\"filterHasConditions\":[32],\"reload\":[64]}]]],[\"gx-ide-team-dev-update-partial-selection\",[[1,\"gx-ide-team-dev-update-partial-selection\",{\"displayTitle\":[4,\"display-title\"],\"addCallback\":[16],\"cancelCallback\":[16],\"confirmCallback\":[16],\"selection\":[1040],\"selectedObjectsIds\":[32],\"validate\":[64]}]]],[\"gx-ide-team-dev-update-to-revision\",[[1,\"gx-ide-team-dev-update-to-revision\",{\"displayTitle\":[4,\"display-title\"],\"cancelCallback\":[16],\"confirmCallback\":[16],\"currentRevision\":[1,\"current-revision\"],\"validate\":[64]}]]],[\"gx-ide-template\",[[1,\"gx-ide-template\",{\"displayTitle\":[4,\"display-title\"]}]]],[\"gx-ide-wf-settings\",[[1,\"gx-ide-wf-settings\",{\"displayTitle\":[4,\"display-title\"],\"configurationType\":[1,\"configuration-type\"],\"defaultConfiguration\":[16],\"saveCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-ai-assistant\",[[1,\"gx-ide-ai-assistant\",{\"messages\":[1040],\"promptMaxHeight\":[1,\"prompt-max-height\"],\"assistantStatus\":[1025,\"assistant-status\"],\"focusShortcuts\":[16],\"userMessageCallback\":[16],\"clearCallback\":[16],\"promptValue\":[1,\"prompt-value\"],\"filter\":[4],\"userHasTyped\":[32],\"aIInProgress\":[32],\"showFilter\":[32],\"promptHasFocus\":[32],\"filterValue\":[32],\"clear\":[64],\"addMessage\":[64]},[[2,\"focus\",\"handleFocus\"]],{\"aIInProgress\":[\"watchAIInProgressHandler\"],\"messages\":[\"watchMessagesHandler\"]}]]],[\"gx-ide-dashboard-home\",[[1,\"gx-ide-dashboard-home\",{\"kb\":[16],\"enableEditKBName\":[4,\"enable-edit-k-b-name\"],\"environment\":[16],\"enableEditEnvironmentName\":[4,\"enable-edit-environment-name\"],\"projectDescription\":[1,\"project-description\"],\"enableEditDescription\":[4,\"enable-edit-description\"],\"recentObjects\":[16],\"renameKBCallback\":[16],\"renameEnvironmentCallback\":[16],\"editDescriptionCallback\":[16],\"openObjectCallback\":[16],\"editingEnvName\":[32],\"editingProjectDescription\":[32]},null,{\"recentObjects\":[\"recentObjectsHandler\"]}]]],[\"gx-ide-data-type-selector\",[[1,\"gx-ide-data-type-selector\",{\"categories\":[16],\"dataTypeSelectedCallback\":[16],\"recentlyUsed\":[16],\"categoriesListBoxModel\":[32],\"selectedCategory\":[32],\"statusInfo\":[32],\"recentlyUsedActionListModel\":[32],\"loading\":[32]},null,{\"categories\":[\"categoriesChanged\"],\"recentlyUsed\":[\"recentlyUsedChanged\"]}]]],[\"gx-ide-new-object\",[[17,\"gx-ide-new-object\",{\"defaultTypeId\":[1,\"default-type-id\"],\"defaultParent\":[16],\"displayTitle\":[4,\"display-title\"],\"cancelCallback\":[16],\"createCallback\":[16],\"shadow\":[4],\"typeCategories\":[1040],\"parent\":[16],\"selectModuleCallback\":[16],\"validateNameCallback\":[16],\"description\":[32],\"name\":[32],\"nameValidationErrorMessage\":[32],\"selectedCategory\":[32],\"selectedType\":[32],\"typeCategoriesActionListModel\":[32],\"typesActionListModel\":[32],\"selectedTypeMap\":[32],\"suspendShortcuts\":[64]},null,{\"typeCategories\":[\"typeCategoriesChanged\"]}]]],[\"gx-ide-select-user-team\",[[1,\"gx-ide-select-user-team\",{\"cancelCallback\":[16],\"continueCallback\":[16],\"teams\":[16],\"slideIsVisible\":[32],\"teamsModelReady\":[32]},null,{\"teams\":[\"teamsChanged\"]}]]],[\"gx-ide-sign-in-team\",[[1,\"gx-ide-sign-in-team\",{\"authStep\":[1,\"auth-step\"],\"continueCallback\":[16],\"signInCallback\":[16],\"termsConfirmationRequired\":[4,\"terms-confirmation-required\"],\"teams\":[16],\"termsCallback\":[16],\"privacyCallback\":[16],\"authStepInternal\":[32],\"slideIsVisible\":[32],\"termsAndConditionsAccepted\":[32]},null,{\"authStep\":[\"authStepChanged\"],\"teams\":[\"teamsChanged\"]}]]],[\"gx-ide-card\",[[1,\"gx-ide-card\",{\"cardTitle\":[1,\"card-title\"],\"cardSubTitle\":[1,\"card-sub-title\"],\"icon\":[1]}]]],[\"gx-ide-connect-gx-server\",[[1,\"gx-ide-connect-gx-server\",{\"authenticationTypes\":[16],\"cancelCallback\":[16],\"connectCallback\":[16],\"defaultConnectionData\":[16],\"enableCustomServer\":[4,\"enable-custom-server\"],\"serverUrls\":[16],\"authenticationTypesComboBoxModel\":[32],\"gxServerConnectionData\":[32],\"serverUrlsComboBoxModel\":[32],\"validatableControls\":[32]},null,{\"authenticationTypes\":[\"authenticationTypesChanged\"],\"serverUrls\":[\"serverUrlsChanged\"]}]]],[\"gx-ide-create-kb-from-server\",[[1,\"gx-ide-create-kb-from-server\",{\"connectionData\":[16],\"cancelCallback\":[16],\"changeConnectionCallback\":[16],\"createKBCallback\":[16],\"getGXserverKBsCallback\":[16],\"selectKBVersionsCallback\":[16],\"enableSelectVersionsButton\":[32],\"localKbNameInputValue\":[32],\"filterValue\":[32],\"kbsFilteredActionListModel\":[32],\"validatableControls\":[32],\"versionSelectedType\":[32],\"versionsValueInput\":[32]}]]],[\"gx-ide-current-user-info\",[[1,\"gx-ide-current-user-info\",{\"userInfo\":[16],\"myAccountCallback\":[16],\"changeTeamCallback\":[16],\"changeLanguageCallback\":[16],\"changeModeCallback\":[16],\"menuAlign\":[16],\"signOutCallback\":[16],\"termsCallback\":[16],\"privacyCallback\":[16],\"showMenu\":[32]}]]],[\"gx-ide-directory-selector\",[[1,\"gx-ide-directory-selector\",{\"accessibilityLabels\":[16],\"label\":[1],\"labelPosition\":[513,\"label-position\"],\"centerLabel\":[1028,\"center-label\"],\"labelWidth\":[1,\"label-width\"],\"selectDirectoryCallback\":[16],\"value\":[1025],\"icon\":[32]}]]],[\"gx-ide-new-environment\",[[1,\"gx-ide-new-environment\",{\"cancelCallback\":[16],\"createCallback\":[16],\"dataStores\":[1040],\"environmentName\":[1025,\"environment-name\"],\"getDataSourcesCallback\":[16],\"getEnvironmentNameCallback\":[16],\"getFrontEndsCallback\":[16],\"isAdvanced\":[4,\"is-advanced\"],\"languages\":[16],\"runtimes\":[16],\"setAsTarget\":[4,\"set-as-target\"],\"advancedTabIsVisible\":[32],\"frontEnds\":[32],\"validatableControls\":[32],\"dataStoresComboBoxModel\":[32],\"languageComboBoxModel\":[32],\"runtimesRadioGroupModel\":[32],\"suspendShortcuts\":[64]},null,{\"dataStores\":[\"dataStoresChanged\"],\"languages\":[\"languagesChanged\"],\"runtimes\":[\"runtimesChanged\"]}]]],[\"gx-ide-new-kb\",[[1,\"gx-ide-new-kb\",{\"authenticationTypes\":[16],\"cancelCallback\":[16],\"collations\":[16],\"createCallback\":[16],\"createDataFilesInKBFolder\":[4,\"create-data-files-in-k-b-folder\"],\"databaseName\":[1,\"database-name\"],\"defaultDataSources\":[1040],\"getDataSourcesCallback\":[16],\"getFrontEndsCallback\":[16],\"isAdvanced\":[4,\"is-advanced\"],\"kbLocation\":[1025,\"kb-location\"],\"kbName\":[1,\"kb-name\"],\"password\":[1],\"prototypingEnvironments\":[16],\"prototypingTargets\":[16],\"savePassword\":[4,\"save-password\"],\"selectLocationCallback\":[16],\"serverNames\":[16],\"userInterfaceLanguages\":[16],\"userName\":[1,\"user-name\"],\"advancedTabIsVisible\":[32],\"frontEnds\":[32],\"validatableControls\":[32],\"createDataInKbDisabled\":[32],\"userNameVisible\":[32],\"passwordVisible\":[32],\"savePasswordVisible\":[32],\"authenticationTypesComboBoxModel\":[32],\"authenticationTypesInitialValue\":[32],\"collationsComboBoxModel\":[32],\"collationsInitialValue\":[32],\"defaultDataSourcesComboBoxModel\":[32],\"defaultDataSourcesInitialValue\":[32],\"prototypingTargetsComboBoxModel\":[32],\"prototypingTargetsInitialValue\":[32],\"prototypingEnvironmentsComboBoxModel\":[32],\"prototypingEnvironmentsInitialValue\":[32],\"serverNamesComboBoxModel\":[32],\"serverNamesInitialValue\":[32],\"userInterfaceLanguagesComboBoxModel\":[32],\"userInterfaceLanguagesInitialValue\":[32],\"suspendShortcuts\":[64]},null,{\"authenticationTypes\":[\"watchAuthenticationTypes\"],\"collations\":[\"watchCollations\"],\"defaultDataSources\":[\"watchDefaultDataSources\"],\"prototypingEnvironments\":[\"watchPrototypingEnvironments\"],\"prototypingTargets\":[\"watchPrototypingTargets\"],\"serverNames\":[\"watchServerNames\"],\"userInterfaceLanguages\":[\"watchUserInterfaceLanguages\"]}]]],[\"gx-ide-share-kb\",[[1,\"gx-ide-share-kb\",{\"connectionData\":[16],\"cancelCallback\":[16],\"changeConnectionCallback\":[16],\"kbName\":[1025,\"kb-name\"],\"shareKBCallback\":[16],\"selectKBVersionsCallback\":[16],\"enableSelectVersionsButton\":[32],\"validatableControls\":[32],\"versionSelectedType\":[32],\"versionsValueInput\":[32]}]]],[\"gx-ide-sign-in\",[[1,\"gx-ide-sign-in\",{\"termsCallback\":[16],\"signInCallback\":[16]}]]],[\"gx-ide-splash\",[[1,\"gx-ide-splash\",{\"version\":[1],\"removeSplash\":[4,\"remove-splash\"],\"splashVisible\":[32]},null,{\"removeSplash\":[\"removeSplashChanged\"]}]]],[\"gx-ide-switch-panel\",[[1,\"gx-ide-switch-panel\"]]],[\"gx-ide-switcher\",[[1,\"gx-ide-switcher\"]]],[\"gx-ide-test\",[[1,\"gx-ide-test\",{\"name\":[1],\"filterOn\":[32]}]]],[\"gx-ide-top-bar\",[[1,\"gx-ide-top-bar\",{\"topBarTitle\":[1,\"top-bar-title\"]}]]],[\"gx-ide-welcome-page\",[[1,\"gx-ide-welcome-page\",{\"transitionType\":[1,\"transition-type\"],\"wordsPerMinute\":[2,\"words-per-minute\"],\"closeCallback\":[16],\"slides\":[16],\"activeSlideIndex\":[32],\"displaySlider\":[32],\"copyrightsVisible\":[32],\"lastSlideReached\":[32],\"sliderVisible\":[32],\"slideTransitioning\":[32],\"userHasChangedSlide\":[32]}]]],[\"gx-ide-container_2\",[[1,\"gx-ide-container\",{\"inactiveTitle\":[4,\"inactive-title\"],\"containerTitle\":[1,\"container-title\"],\"titleType\":[1,\"title-type\"],\"displayBorder\":[4,\"display-border\"],\"displayBorderTop\":[4,\"display-border-top\"],\"displayBorderEnd\":[4,\"display-border-end\"],\"displayBorderBottom\":[4,\"display-border-bottom\"],\"displayBorderStart\":[4,\"display-border-start\"],\"sectionsPadding\":[1,\"sections-padding\"],\"titleAlignment\":[1,\"title-alignment\"],\"noHeadingBorder\":[4,\"no-heading-border\"],\"noHeadingGap\":[4,\"no-heading-gap\"],\"noHeadingPadding\":[4,\"no-heading-padding\"],\"noHeadingPaddingBlockEnd\":[4,\"no-heading-padding-block-end\"],\"headingPaddingTop\":[4,\"heading-padding-top\"],\"headingJustify\":[1,\"heading-justify\"],\"titleHeightAsInput\":[4,\"title-height-as-input\"],\"flexRow\":[4,\"flex-row\"],\"flexContent\":[4,\"flex-content\"],\"noContentBorderTop\":[4,\"no-content-border-top\"],\"noContentPadding\":[4,\"no-content-padding\"],\"noContentGap\":[4,\"no-content-gap\"],\"alignItems\":[1,\"align-items\"],\"justifyContent\":[1,\"justify-content\"],\"contentBorderEnd\":[4,\"content-border-end\"],\"slimmerAboveFooter\":[4,\"slimmer-above-footer\"],\"noAboveFooterPadding\":[4,\"no-above-footer-padding\"],\"noBorderAboveFooter\":[4,\"no-border-above-footer\"],\"slimmerFooter\":[4,\"slimmer-footer\"],\"noFooterPadding\":[4,\"no-footer-padding\"],\"footerJustify\":[1,\"footer-justify\"],\"noBorderFooter\":[4,\"no-border-footer\"],\"hasHeaderSlot\":[32],\"hasSlottedContent\":[32],\"hasFooterSlot\":[32],\"hasAboveFooterSlot\":[32],\"hasOnlyHeading\":[32],\"hasOnlyContent\":[32],\"hasOnlyFooter\":[32]}],[1,\"gx-ide-title\",{\"titleCaption\":[1,\"title-caption\"],\"type\":[1],\"alignment\":[1],\"padding\":[516],\"noPaddingBottom\":[516,\"no-padding-bottom\"],\"border\":[516]}]]],[\"gx-ide-bpm-objects-selector\",[[1,\"gx-ide-bpm-objects-selector\",{\"displayTitle\":[4,\"display-title\"],\"selection\":[1040],\"addCallback\":[16],\"referencesCallback\":[16],\"objects\":[32],\"selectedObjects\":[32]}]]],[\"gx-ide-ai-message\",[[0,\"gx-ide-ai-message\",{\"aiAssistantHostRef\":[16],\"message\":[1],\"messageType\":[1,\"message-type\"],\"filterValue\":[1,\"filter-value\"],\"hidden\":[4],\"translations\":[16],\"visible\":[32],\"showCopiedMessage\":[32]}]]],[\"gx-ide-status-buttons\",[[1,\"gx-ide-status-buttons\",{\"active\":[4],\"errors\":[2],\"hideError\":[4,\"hide-error\"],\"warnings\":[2],\"hideWarning\":[4,\"hide-warning\"],\"successes\":[2],\"hideSuccess\":[4,\"hide-success\"],\"messages\":[2],\"hideMessage\":[4,\"hide-message\"],\"minimal\":[4],\"compact\":[516],\"noInnerBorders\":[516,\"no-inner-borders\"],\"iconsSize\":[32]}]]],[\"gx-ide-entity-selector\",[[1,\"gx-ide-entity-selector\",{\"defaultValue\":[16],\"disabled\":[516],\"labelCaption\":[1,\"label-caption\"],\"labelPosition\":[513,\"label-position\"],\"name\":[513],\"selectEntityCallback\":[16],\"value\":[1040],\"buttonHasFocus\":[32],\"iconSrc\":[32]},null,{\"value\":[\"valueChangedHandler\"]}]]],[\"gx-ide-loader\",[[1,\"gx-ide-loader\",{\"abortTime\":[2,\"abort-time\"],\"cancelCallback\":[16],\"cancelLabel\":[1,\"cancel-label\"],\"description\":[1],\"displayBorder\":[516,\"display-border\"],\"loaderTitle\":[1,\"loader-title\"],\"show\":[1028],\"showWrapper\":[32]}]]],[\"gx-ide-empty-state\",[[1,\"gx-ide-empty-state\",{\"isAnimated\":[4,\"is-animated\"],\"stateDescription\":[1,\"state-description\"],\"stateIconSrc\":[1,\"state-icon-src\"],\"stateTitle\":[1,\"state-title\"]}]]],[\"gx-ide-list-selector_2\",[[1,\"gx-ide-list-selector\",{\"ordered\":[4],\"readonly\":[4],\"type\":[1],\"required\":[4],\"ellipsis\":[4],\"value\":[1025],\"listName\":[1,\"list-name\"],\"noItemsBorder\":[4,\"no-items-border\"],\"noListBorder\":[516,\"no-list-border\"]},[[2,\"itemSelectionChanged\",\"itemSelectionChangedHandler\"]]],[4,\"gx-ide-list-selector-item\",{\"itemId\":[513,\"item-id\"],\"itemValue\":[1,\"item-value\"],\"itemChecked\":[1028,\"item-checked\"],\"readonly\":[1540],\"ellipsis\":[1540],\"icon\":[1],\"noBorder\":[1540,\"no-border\"],\"universalSlotEnd\":[516,\"universal-slot-end\"]}]]]]"), options);
17
+ return bootstrapLazy(JSON.parse("[[\"gx-ide-bpm-export-xpdl\",[[1,\"gx-ide-bpm-export-xpdl\",{\"displayTitle\":[4,\"display-title\"],\"exportCallback\":[16],\"cancelCallback\":[16],\"addCallback\":[16],\"referencesCallback\":[16],\"emptyInput\":[32],\"emptyObjects\":[32],\"notExporting\":[32]}]]],[\"gx-ide-bpm-import-files\",[[1,\"gx-ide-bpm-import-files\",{\"displayTitle\":[4,\"display-title\"],\"allowedExtensions\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"files\":[32],\"selectedFiles\":[32]}]]],[\"gx-ide-kb-manager-import\",[[1,\"gx-ide-kb-manager-import\",{\"cancelCallback\":[16],\"importCallback\":[16],\"loadCallback\":[16],\"objectContextMenuCallback\":[16],\"optionsCallback\":[16],\"selectedFile\":[1040],\"statusMinimal\":[4,\"status-minimal\"],\"checkedObjectsIds\":[32],\"selectAllCheckboxValue\":[32],\"selectAllCheckboxIndeterminate\":[32],\"importStatusMessage\":[32],\"importTreeState\":[32],\"importedTreeFilterRegExp\":[32],\"importingIsInProcess\":[32],\"importTreeFilterList\":[32],\"noImport\":[32],\"noObjects\":[32],\"objectsTreeModel\":[32],\"showHiddenImportsMessage\":[32],\"someStatusVisible\":[32],\"statusInfo\":[32],\"addResultItem\":[64]},null,{\"importTreeState\":[\"importTreeStateChanged\",\"watchImportTreeStateHandler\"],\"objectsTreeModel\":[\"watchObjectsTreeModelHandler\"],\"selectedFile\":[\"selectedFileChanged\"]}]]],[\"gx-ide-team-dev-select-recent-comment\",[[1,\"gx-ide-team-dev-select-recent-comment\",{\"displayTitle\":[4,\"display-title\"],\"comments\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-team-dev-update\",[[1,\"gx-ide-team-dev-update\",{\"displayTitle\":[4,\"display-title\"],\"confirmCallback\":[16],\"gridContextMenuCallback\":[16],\"loadCallback\":[16],\"objectsScopeCallback\":[16],\"openServerCallback\":[16],\"pendingItemsCheckedCallback\":[16],\"revisionScopeCallback\":[16],\"objectsContextMenuCallback\":[16],\"selectCallback\":[16],\"types\":[16],\"updateCallback\":[16],\"updateFrom\":[16],\"isLoading\":[32],\"objectScopeText\":[32],\"openTab\":[32],\"revisionScopeText\":[32],\"showFilter\":[32],\"updateData\":[32],\"updateResultData\":[32],\"reload\":[64]}]]],[\"gx-ide-data-selector\",[[17,\"gx-ide-data-selector\",{\"cancelCallback\":[16],\"confirmCallback\":[16],\"defaultModule\":[16],\"displayTitle\":[4,\"display-title\"],\"editCallback\":[16],\"loadItemsCallback\":[16],\"loader\":[4],\"newVariableCallback\":[16],\"selectObjectCallback\":[16],\"selectionType\":[1,\"selection-type\"],\"loading\":[32],\"objects\":[32],\"selectedObjectsIds\":[32],\"suspendShortcuts\":[64],\"validate\":[64]}]]],[\"gx-ide-manage-module-references\",[[1,\"gx-ide-manage-module-references\",{\"displayTitle\":[4,\"display-title\"],\"servers\":[16],\"serverSelectedCallback\":[16],\"executeActionCallback\":[16],\"addServerCallback\":[16],\"serverContextMenuCallback\":[16],\"showServerCommands\":[4,\"show-server-commands\"],\"modulesAll\":[32],\"filteredModules\":[32],\"selectedModule\":[32],\"selectedServerId\":[32],\"selectedModuleAction\":[32],\"modulesSelectedVersion\":[32],\"actionCompleted\":[32],\"closeProgressBar\":[32],\"progressValue\":[32],\"progressState\":[32],\"loadingServer\":[32],\"reRenderCounter\":[32],\"validate\":[64]},null,{\"modulesAll\":[\"modulesAllWatcher\",\"onPropValueChange\"],\"loadingServer\":[\"loadingServerHandler\"]}]]],[\"gx-ide-manage-module-references-v2\",[[1,\"gx-ide-manage-module-references-v2\",{\"displayTitle\":[4,\"display-title\"],\"servers\":[16],\"serverSelectedCallback\":[16],\"executeActionCallback\":[16],\"serverContextMenuCallback\":[16],\"showServerCommands\":[4,\"show-server-commands\"],\"searchModulesFilterValue\":[32],\"selectedButtonFilter\":[32],\"serverModules\":[32],\"serverModulesExtended\":[32],\"filteredServerModules\":[32],\"modulesMap\":[32],\"selectedModule\":[32],\"selectedServerId\":[32],\"selectedModuleAction\":[32],\"modulesSelectedVersionMap\":[32],\"actionCompleted\":[32],\"closeProgressBar\":[32],\"progressValue\":[32],\"progressState\":[32],\"loadingServer\":[32]},null,{\"loadingServer\":[\"loadingServerHandler\"]}]]],[\"gx-ide-navigation-report\",[[1,\"gx-ide-navigation-report\",{\"headerData\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"closeCallback\":[16],\"itemSelectedCallback\":[16],\"reportTreeItems\":[32],\"navigationItemsStatusRegExpString\":[32],\"navigationItemsCaptionRegExpString\":[32],\"navigationItemsRegExp\":[32],\"confirmed\":[32],\"headerState\":[32],\"statusInfo\":[32],\"someStatusVisible\":[32],\"addItem\":[64],\"clearItems\":[64]},null,{\"navigationItemsStatusRegExpString\":[\"navigationItemsStatusRegExpStringChanged\"],\"navigationItemsCaptionRegExpString\":[\"navigationItemsCaptionRegExpStringChanged\"]}]]],[\"gx-ide-object-selector\",[[17,\"gx-ide-object-selector\",{\"cancelCallback\":[16],\"categories\":[16],\"defaultCategory\":[1,\"default-category\"],\"defaultModule\":[16],\"defaultType\":[1,\"default-type\"],\"loader\":[4],\"loadCallback\":[16],\"multiSelection\":[4,\"multi-selection\"],\"newObjectCallback\":[16],\"openSelectionCallback\":[16],\"patternValue\":[1,\"pattern-value\"],\"selectModuleCallback\":[16],\"types\":[16],\"filterModified\":[32],\"loading\":[32],\"modifiedAfterValue\":[32],\"objects\":[32],\"selectedObjectsIdsArray\":[32],\"suspendShortcuts\":[64],\"validate\":[64]}]]],[\"gx-ide-ww-attributes\",[[1,\"gx-ide-ww-attributes\",{\"contextMenuCallback\":[16],\"deleteSelectionCallback\":[16],\"loadCallback\":[16],\"objectActionCallback\":[16],\"objects\":[16],\"openSelectionCallback\":[16],\"selectionChangeCallback\":[16],\"types\":[16],\"attributes\":[32],\"selectedAttributesIds\":[32],\"filterMore\":[32],\"name\":[32],\"loading\":[32],\"object\":[32],\"type\":[32],\"reload\":[64],\"validate\":[64]},[[1,\"keydown\",\"keyDownHandler\"]]]]],[\"gx-ide-ww-images\",[[1,\"gx-ide-ww-images\",{\"displayTitle\":[4,\"display-title\"],\"secondaryFilter\":[4,\"secondary-filter\"],\"categories\":[16],\"densities\":[16],\"defaultCategory\":[1,\"default-category\"],\"defaultModule\":[16],\"defaultType\":[1,\"default-type\"],\"filterModules\":[16],\"languages\":[16],\"layers\":[16],\"contextMenuCallback\":[16],\"deleteSelectionCallback\":[16],\"loadCallback\":[16],\"loadImageItemsCallback\":[16],\"newObjectCallback\":[16],\"openSelectionCallback\":[16],\"selectModuleCallback\":[16],\"selectionObjectChangedCallback\":[16],\"shadow\":[4],\"styles\":[16],\"types\":[16],\"filtersHidden\":[32],\"filterAfterType\":[32],\"filterModified\":[32],\"images\":[32],\"filteredImages\":[32],\"imagesSelectedItems\":[32],\"selectedObjectsIds\":[32],\"filterImagesInputValue\":[32],\"validate\":[64],\"reload\":[64]},[[1,\"keydown\",\"keyDownHandler\"]],{\"filtersHidden\":[\"filtersHiddenHandler\"]}]]],[\"gx-ide-bpm-app-declaration\",[[1,\"gx-ide-bpm-app-declaration\",{\"displayTitle\":[4,\"display-title\"],\"application\":[1040],\"suggestApplicationsCallback\":[16],\"selectApplicationCallback\":[16],\"selectMappingCallback\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"getDataMappingCallback\":[16],\"suggestedApplications\":[32]},null,{\"application\":[\"watchApplicationHandler\"]}]]],[\"gx-ide-bpm-assign-roles\",[[1,\"gx-ide-bpm-assign-roles\",{\"displayTitle\":[4,\"display-title\"],\"roles\":[16],\"assignedRoles\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16],\"unassignedRolesState\":[32],\"assignedRolesState\":[32],\"filterUnassignedInput\":[32],\"filterAssignedInput\":[32],\"unassignedSelected\":[32],\"assignedSelected\":[32]}]]],[\"gx-ide-bpm-import-gxpm\",[[1,\"gx-ide-bpm-import-gxpm\",{\"displayTitle\":[4,\"display-title\"],\"confirmCallback\":[16],\"cancelCallback\":[16],\"selectedFile\":[32],\"pathValue\":[32]}]]],[\"gx-ide-bpm-timer-duration\",[[1,\"gx-ide-bpm-timer-duration\",{\"displayTitle\":[4,\"display-title\"],\"duration\":[16],\"confirmCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-design-import\",[[1,\"gx-ide-design-import\",{\"reactiveSettings\":[16],\"extensions\":[16],\"defaultModule\":[16],\"path\":[1025],\"accessToken\":[1025,\"access-token\"],\"importAsWebPanels\":[4,\"import-as-web-panels\"],\"selectModuleCallback\":[16],\"cancelCallback\":[16],\"confirmCallback\":[16],\"loadCallback\":[16],\"loadDesignSystemCallback\":[16],\"loadFontCallback\":[16],\"loadImageCallback\":[16],\"loadPanelDataCallback\":[16],\"requiresAccessTokenCallback\":[16],\"styles\":[16],\"textEditorFactoryCallback\":[16],\"reRenderCounter\":[32],\"stylesAsComboBoxModel\":[32],\"styleValue\":[32],\"accessTokenHasError\":[32],\"pathIsValid\":[32],\"tabsModel\":[32],\"activeTabs\":[32],\"renderedTabs\":[32],\"designData\":[32],\"detailTreeModel\":[32],\"isLoading\":[32],\"isLoaded\":[32],\"messages\":[32],\"selectedFile\":[32],\"selectedDesignType\":[32],\"selectedDesignItem\":[32],\"requiresAccessToken\":[32],\"designDataTreeDataModel\":[32],\"updateTabsActiveTab\":[32],\"fitImages\":[32],\"lastLoadCallbackSettingValues\":[32]},null,{\"pathIsValid\":[\"pathIsValidChanged\"],\"designData\":[\"designDataChanged\"],\"path\":[\"pathChanged\"],\"accessToken\":[\"accessTokenChanged\"],\"styles\":[\"stylesChanged\"],\"messages\":[\"watchMessagesHandler\"]}]]],[\"gx-ide-edit-module-server\",[[1,\"gx-ide-edit-module-server\",{\"types\":[16],\"name\":[1],\"source\":[1],\"type\":[1],\"confirmCallback\":[16],\"selectSourceCallback\":[16],\"cancelCallback\":[16],\"selectedType\":[32]}]]],[\"gx-ide-gam-installation-settings\",[[1,\"gx-ide-gam-installation-settings\",{\"displayTitle\":[4,\"display-title\"],\"configurationType\":[1,\"configuration-type\"],\"repairCallback\":[16],\"saveCallback\":[16],\"cancelCallback\":[16],\"defaultConfiguration\":[16],\"canSelectPanels\":[4,\"can-select-panels\"]}]]],[\"gx-ide-kb-manager-export\",[[1,\"gx-ide-kb-manager-export\",{\"addKBPropertiesCallback\":[16],\"addObjectsCallback\":[16],\"addReferencesCallback\":[16],\"cancelCallback\":[16],\"exportCallback\":[16],\"exportFileDirectoryCallback\":[16],\"fileName\":[1,\"file-name\"],\"kbPropertiesTypes\":[16],\"loader\":[4],\"objectTypes\":[16],\"optionsCallback\":[16],\"addKbPropertiesIsChecked\":[32],\"atLeastOnePropertyItemIsChecked\":[32],\"atLeastOneObjectItemIsChecked\":[32],\"checkedObjectsIds\":[32],\"checkedPropertiesIds\":[32],\"exportAllIsChecked\":[32],\"exportingIsInProcess\":[32],\"hasObjects\":[32],\"objectsTreeViewModel\":[32]},null,{\"objectsTreeViewModel\":[\"objectsTreeViewModelChanged\"],\"objectTypes\":[\"objectTypesChanged\"]}]]],[\"gx-ide-references\",[[1,\"gx-ide-references\",{\"displayTitle\":[4,\"display-title\"],\"selectedObject\":[1040],\"selectorSourceCallback\":[16],\"loadReferencesCallback\":[16],\"openObjectCallback\":[16],\"openSelectorDialogCallback\":[16],\"selectReferenceCallback\":[16],\"referencedByTreeData\":[32],\"referencesToTreeData\":[32],\"barHidden\":[32],\"objectsSuggestions\":[32]},null,{\"selectedObject\":[\"selectedObjectHandler\"]}]]],[\"gx-ide-empty-state\",[[1,\"gx-ide-empty-state\",{\"isAnimated\":[4,\"is-animated\"],\"stateDescription\":[1,\"state-description\"],\"stateIconSrc\":[1,\"state-icon-src\"],\"stateTitle\":[1,\"state-title\"]}]]],[\"gx-ide-start-page\",[[1,\"gx-ide-start-page\",{\"createKBCallback\":[16],\"openKbCallback\":[16],\"secondarySection\":[16],\"kbs\":[16],\"kbsFilterThreshold\":[2,\"kbs-filter-threshold\"],\"kbFilterValue\":[32],\"filteredKbs\":[32],\"loading\":[32]},null,{\"kbFilterValue\":[\"kbFilterValueChanged\"],\"kbs\":[\"kbsChanged\"]}]]],[\"gx-ide-team-dev-commit\",[[1,\"gx-ide-team-dev-commit\",{\"displayTitle\":[4,\"display-title\"],\"changeSet\":[16],\"types\":[16],\"folders\":[16],\"categories\":[16],\"getRecentCommentCallback\":[16],\"loadCallback\":[16],\"commitCallback\":[16],\"selectCallback\":[16],\"pendingItemsCheckedCallback\":[16],\"objectsContextMenuCallback\":[16],\"filtersHidden\":[32],\"comment\":[32],\"pendingCommits\":[32],\"ignoredObjects\":[32],\"commitButtonEnabled\":[32],\"filterHasConditions\":[32],\"reload\":[64]}]]],[\"gx-ide-team-dev-update-partial-selection\",[[1,\"gx-ide-team-dev-update-partial-selection\",{\"displayTitle\":[4,\"display-title\"],\"addCallback\":[16],\"cancelCallback\":[16],\"confirmCallback\":[16],\"selection\":[1040],\"selectedObjectsIds\":[32],\"validate\":[64]}]]],[\"gx-ide-team-dev-update-to-revision\",[[1,\"gx-ide-team-dev-update-to-revision\",{\"displayTitle\":[4,\"display-title\"],\"cancelCallback\":[16],\"confirmCallback\":[16],\"currentRevision\":[1,\"current-revision\"],\"validate\":[64]}]]],[\"gx-ide-template\",[[1,\"gx-ide-template\",{\"displayTitle\":[4,\"display-title\"]}]]],[\"gx-ide-wf-settings\",[[1,\"gx-ide-wf-settings\",{\"displayTitle\":[4,\"display-title\"],\"configurationType\":[1,\"configuration-type\"],\"defaultConfiguration\":[16],\"saveCallback\":[16],\"cancelCallback\":[16]}]]],[\"gx-ide-ai-assistant\",[[1,\"gx-ide-ai-assistant\",{\"messages\":[1040],\"promptMaxHeight\":[1,\"prompt-max-height\"],\"assistantStatus\":[1025,\"assistant-status\"],\"focusShortcuts\":[16],\"userMessageCallback\":[16],\"clearCallback\":[16],\"promptValue\":[1,\"prompt-value\"],\"filter\":[4],\"userHasTyped\":[32],\"aIInProgress\":[32],\"showFilter\":[32],\"promptHasFocus\":[32],\"filterValue\":[32],\"clear\":[64],\"addMessage\":[64]},[[2,\"focus\",\"handleFocus\"]],{\"aIInProgress\":[\"watchAIInProgressHandler\"],\"messages\":[\"watchMessagesHandler\"]}]]],[\"gx-ide-dashboard-home\",[[1,\"gx-ide-dashboard-home\",{\"kb\":[16],\"enableEditKBName\":[4,\"enable-edit-k-b-name\"],\"environment\":[16],\"enableEditEnvironmentName\":[4,\"enable-edit-environment-name\"],\"projectDescription\":[1,\"project-description\"],\"enableEditDescription\":[4,\"enable-edit-description\"],\"recentObjects\":[16],\"renameKBCallback\":[16],\"renameEnvironmentCallback\":[16],\"editDescriptionCallback\":[16],\"openObjectCallback\":[16],\"editingEnvName\":[32],\"editingProjectDescription\":[32]},null,{\"recentObjects\":[\"recentObjectsHandler\"]}]]],[\"gx-ide-data-type-selector\",[[1,\"gx-ide-data-type-selector\",{\"categories\":[16],\"dataTypeSelectedCallback\":[16],\"recentlyUsed\":[16],\"categoriesListBoxModel\":[32],\"selectedCategory\":[32],\"statusInfo\":[32],\"recentlyUsedActionListModel\":[32],\"loading\":[32]},null,{\"categories\":[\"categoriesChanged\"],\"recentlyUsed\":[\"recentlyUsedChanged\"]}]]],[\"gx-ide-new-object\",[[17,\"gx-ide-new-object\",{\"defaultTypeId\":[1,\"default-type-id\"],\"defaultParent\":[16],\"displayTitle\":[4,\"display-title\"],\"cancelCallback\":[16],\"createCallback\":[16],\"shadow\":[4],\"typeCategories\":[1040],\"parent\":[16],\"selectModuleCallback\":[16],\"validateNameCallback\":[16],\"description\":[32],\"name\":[32],\"nameValidationErrorMessage\":[32],\"selectedCategory\":[32],\"selectedType\":[32],\"typeCategoriesActionListModel\":[32],\"typesActionListModel\":[32],\"selectedTypeMap\":[32],\"suspendShortcuts\":[64]},null,{\"typeCategories\":[\"typeCategoriesChanged\"]}]]],[\"gx-ide-sc-chat-container\",[[1,\"gx-ide-sc-chat-container\",{\"showAdditionalContent\":[32],\"conversationCopied\":[32]}]]],[\"gx-ide-select-user-team\",[[1,\"gx-ide-select-user-team\",{\"cancelCallback\":[16],\"continueCallback\":[16],\"teams\":[16],\"slideIsVisible\":[32],\"teamsModelReady\":[32]},null,{\"teams\":[\"teamsChanged\"]}]]],[\"gx-ide-sign-in-team\",[[1,\"gx-ide-sign-in-team\",{\"authStep\":[1,\"auth-step\"],\"continueCallback\":[16],\"signInCallback\":[16],\"termsConfirmationRequired\":[4,\"terms-confirmation-required\"],\"teams\":[16],\"termsCallback\":[16],\"privacyCallback\":[16],\"authStepInternal\":[32],\"slideIsVisible\":[32],\"termsAndConditionsAccepted\":[32]},null,{\"authStep\":[\"authStepChanged\"],\"teams\":[\"teamsChanged\"]}]]],[\"gx-ide-card\",[[1,\"gx-ide-card\",{\"cardTitle\":[1,\"card-title\"],\"cardSubTitle\":[1,\"card-sub-title\"],\"icon\":[1]}]]],[\"gx-ide-connect-gx-server\",[[1,\"gx-ide-connect-gx-server\",{\"authenticationTypes\":[16],\"cancelCallback\":[16],\"connectCallback\":[16],\"defaultConnectionData\":[16],\"enableCustomServer\":[4,\"enable-custom-server\"],\"serverUrls\":[16],\"authenticationTypesComboBoxModel\":[32],\"gxServerConnectionData\":[32],\"serverUrlsComboBoxModel\":[32],\"validatableControls\":[32]},null,{\"authenticationTypes\":[\"authenticationTypesChanged\"],\"serverUrls\":[\"serverUrlsChanged\"]}]]],[\"gx-ide-create-kb-from-server\",[[1,\"gx-ide-create-kb-from-server\",{\"connectionData\":[16],\"cancelCallback\":[16],\"changeConnectionCallback\":[16],\"createKBCallback\":[16],\"getGXserverKBsCallback\":[16],\"selectKBVersionsCallback\":[16],\"enableSelectVersionsButton\":[32],\"localKbNameInputValue\":[32],\"filterValue\":[32],\"kbsFilteredActionListModel\":[32],\"validatableControls\":[32],\"versionSelectedType\":[32],\"versionsValueInput\":[32]}]]],[\"gx-ide-current-user-info\",[[1,\"gx-ide-current-user-info\",{\"userInfo\":[16],\"myAccountCallback\":[16],\"changeTeamCallback\":[16],\"changeLanguageCallback\":[16],\"changeModeCallback\":[16],\"menuAlign\":[16],\"signOutCallback\":[16],\"termsCallback\":[16],\"privacyCallback\":[16],\"showMenu\":[32]}]]],[\"gx-ide-directory-selector\",[[1,\"gx-ide-directory-selector\",{\"accessibilityLabels\":[16],\"label\":[1],\"labelPosition\":[513,\"label-position\"],\"centerLabel\":[1028,\"center-label\"],\"labelWidth\":[1,\"label-width\"],\"selectDirectoryCallback\":[16],\"value\":[1025],\"icon\":[32]}]]],[\"gx-ide-new-environment\",[[1,\"gx-ide-new-environment\",{\"cancelCallback\":[16],\"createCallback\":[16],\"dataStores\":[1040],\"environmentName\":[1025,\"environment-name\"],\"getDataSourcesCallback\":[16],\"getEnvironmentNameCallback\":[16],\"getFrontEndsCallback\":[16],\"isAdvanced\":[4,\"is-advanced\"],\"languages\":[16],\"runtimes\":[16],\"setAsTarget\":[4,\"set-as-target\"],\"advancedTabIsVisible\":[32],\"frontEnds\":[32],\"validatableControls\":[32],\"dataStoresComboBoxModel\":[32],\"languageComboBoxModel\":[32],\"runtimesRadioGroupModel\":[32],\"suspendShortcuts\":[64]},null,{\"dataStores\":[\"dataStoresChanged\"],\"languages\":[\"languagesChanged\"],\"runtimes\":[\"runtimesChanged\"]}]]],[\"gx-ide-new-kb\",[[1,\"gx-ide-new-kb\",{\"authenticationTypes\":[16],\"cancelCallback\":[16],\"collations\":[16],\"createCallback\":[16],\"createDataFilesInKBFolder\":[4,\"create-data-files-in-k-b-folder\"],\"databaseName\":[1,\"database-name\"],\"defaultDataSources\":[1040],\"getDataSourcesCallback\":[16],\"getFrontEndsCallback\":[16],\"isAdvanced\":[4,\"is-advanced\"],\"kbLocation\":[1025,\"kb-location\"],\"kbName\":[1,\"kb-name\"],\"password\":[1],\"prototypingEnvironments\":[16],\"prototypingTargets\":[16],\"savePassword\":[4,\"save-password\"],\"selectLocationCallback\":[16],\"serverNames\":[16],\"userInterfaceLanguages\":[16],\"userName\":[1,\"user-name\"],\"advancedTabIsVisible\":[32],\"frontEnds\":[32],\"validatableControls\":[32],\"createDataInKbDisabled\":[32],\"userNameVisible\":[32],\"passwordVisible\":[32],\"savePasswordVisible\":[32],\"authenticationTypesComboBoxModel\":[32],\"authenticationTypesInitialValue\":[32],\"collationsComboBoxModel\":[32],\"collationsInitialValue\":[32],\"defaultDataSourcesComboBoxModel\":[32],\"defaultDataSourcesInitialValue\":[32],\"prototypingTargetsComboBoxModel\":[32],\"prototypingTargetsInitialValue\":[32],\"prototypingEnvironmentsComboBoxModel\":[32],\"prototypingEnvironmentsInitialValue\":[32],\"serverNamesComboBoxModel\":[32],\"serverNamesInitialValue\":[32],\"userInterfaceLanguagesComboBoxModel\":[32],\"userInterfaceLanguagesInitialValue\":[32],\"suspendShortcuts\":[64]},null,{\"authenticationTypes\":[\"watchAuthenticationTypes\"],\"collations\":[\"watchCollations\"],\"defaultDataSources\":[\"watchDefaultDataSources\"],\"prototypingEnvironments\":[\"watchPrototypingEnvironments\"],\"prototypingTargets\":[\"watchPrototypingTargets\"],\"serverNames\":[\"watchServerNames\"],\"userInterfaceLanguages\":[\"watchUserInterfaceLanguages\"]}]]],[\"gx-ide-share-kb\",[[1,\"gx-ide-share-kb\",{\"connectionData\":[16],\"cancelCallback\":[16],\"changeConnectionCallback\":[16],\"kbName\":[1025,\"kb-name\"],\"shareKBCallback\":[16],\"selectKBVersionsCallback\":[16],\"enableSelectVersionsButton\":[32],\"validatableControls\":[32],\"versionSelectedType\":[32],\"versionsValueInput\":[32]}]]],[\"gx-ide-sign-in\",[[1,\"gx-ide-sign-in\",{\"termsCallback\":[16],\"signInCallback\":[16]}]]],[\"gx-ide-splash\",[[1,\"gx-ide-splash\",{\"version\":[1],\"removeSplash\":[4,\"remove-splash\"],\"splashVisible\":[32]},null,{\"removeSplash\":[\"removeSplashChanged\"]}]]],[\"gx-ide-switch-panel\",[[1,\"gx-ide-switch-panel\"]]],[\"gx-ide-switcher\",[[1,\"gx-ide-switcher\"]]],[\"gx-ide-test\",[[1,\"gx-ide-test\",{\"name\":[1],\"filterOn\":[32]}]]],[\"gx-ide-top-bar\",[[1,\"gx-ide-top-bar\",{\"topBarTitle\":[1,\"top-bar-title\"]}]]],[\"gx-ide-welcome-page\",[[1,\"gx-ide-welcome-page\",{\"transitionType\":[1,\"transition-type\"],\"wordsPerMinute\":[2,\"words-per-minute\"],\"closeCallback\":[16],\"slides\":[16],\"activeSlideIndex\":[32],\"displaySlider\":[32],\"copyrightsVisible\":[32],\"lastSlideReached\":[32],\"sliderVisible\":[32],\"slideTransitioning\":[32],\"userHasChangedSlide\":[32]}]]],[\"gx-ide-container_2\",[[1,\"gx-ide-container\",{\"inactiveTitle\":[4,\"inactive-title\"],\"containerTitle\":[1,\"container-title\"],\"titleType\":[1,\"title-type\"],\"displayBorder\":[4,\"display-border\"],\"displayBorderTop\":[4,\"display-border-top\"],\"displayBorderEnd\":[4,\"display-border-end\"],\"displayBorderBottom\":[4,\"display-border-bottom\"],\"displayBorderStart\":[4,\"display-border-start\"],\"sectionsPadding\":[1,\"sections-padding\"],\"titleAlignment\":[1,\"title-alignment\"],\"noHeadingBorder\":[4,\"no-heading-border\"],\"noHeadingGap\":[4,\"no-heading-gap\"],\"noHeadingPadding\":[4,\"no-heading-padding\"],\"noHeadingPaddingBlockEnd\":[4,\"no-heading-padding-block-end\"],\"headingPaddingTop\":[4,\"heading-padding-top\"],\"headingJustify\":[1,\"heading-justify\"],\"titleHeightAsInput\":[4,\"title-height-as-input\"],\"flexRow\":[4,\"flex-row\"],\"flexContent\":[4,\"flex-content\"],\"noContentBorderTop\":[4,\"no-content-border-top\"],\"noContentPadding\":[4,\"no-content-padding\"],\"noContentGap\":[4,\"no-content-gap\"],\"alignItems\":[1,\"align-items\"],\"justifyContent\":[1,\"justify-content\"],\"contentBorderEnd\":[4,\"content-border-end\"],\"slimmerAboveFooter\":[4,\"slimmer-above-footer\"],\"noAboveFooterPadding\":[4,\"no-above-footer-padding\"],\"noBorderAboveFooter\":[4,\"no-border-above-footer\"],\"slimmerFooter\":[4,\"slimmer-footer\"],\"noFooterPadding\":[4,\"no-footer-padding\"],\"footerJustify\":[1,\"footer-justify\"],\"noBorderFooter\":[4,\"no-border-footer\"],\"hasHeaderSlot\":[32],\"hasSlottedContent\":[32],\"hasFooterSlot\":[32],\"hasAboveFooterSlot\":[32],\"hasOnlyHeading\":[32],\"hasOnlyContent\":[32],\"hasOnlyFooter\":[32]}],[1,\"gx-ide-title\",{\"titleCaption\":[1,\"title-caption\"],\"type\":[1],\"alignment\":[1],\"padding\":[516],\"noPaddingBottom\":[516,\"no-padding-bottom\"],\"border\":[516]}]]],[\"gx-ide-bpm-objects-selector\",[[1,\"gx-ide-bpm-objects-selector\",{\"displayTitle\":[4,\"display-title\"],\"selection\":[1040],\"addCallback\":[16],\"referencesCallback\":[16],\"objects\":[32],\"selectedObjects\":[32]}]]],[\"gx-ide-ai-message\",[[0,\"gx-ide-ai-message\",{\"aiAssistantHostRef\":[16],\"message\":[1],\"messageType\":[1,\"message-type\"],\"filterValue\":[1,\"filter-value\"],\"hidden\":[4],\"translations\":[16],\"visible\":[32],\"showCopiedMessage\":[32]}]]],[\"gx-ide-chat-container\",[[4,\"gx-ide-chat-container\",{\"chatTitle\":[1,\"chat-title\"],\"copyConversationCallback\":[16],\"deleteConversationCallback\":[16],\"displayConversationCopiedMessage\":[32],\"showCopyConversationMessage\":[64]}]]],[\"gx-ide-status-buttons\",[[1,\"gx-ide-status-buttons\",{\"active\":[4],\"errors\":[2],\"hideError\":[4,\"hide-error\"],\"warnings\":[2],\"hideWarning\":[4,\"hide-warning\"],\"successes\":[2],\"hideSuccess\":[4,\"hide-success\"],\"messages\":[2],\"hideMessage\":[4,\"hide-message\"],\"minimal\":[4],\"compact\":[516],\"noInnerBorders\":[516,\"no-inner-borders\"],\"iconsSize\":[32]}]]],[\"gx-ide-entity-selector\",[[1,\"gx-ide-entity-selector\",{\"defaultValue\":[16],\"disabled\":[516],\"labelCaption\":[1,\"label-caption\"],\"labelPosition\":[513,\"label-position\"],\"name\":[513],\"selectEntityCallback\":[16],\"value\":[1040],\"buttonHasFocus\":[32],\"iconSrc\":[32]},null,{\"value\":[\"valueChangedHandler\"]}]]],[\"gx-ide-loader\",[[1,\"gx-ide-loader\",{\"abortTime\":[2,\"abort-time\"],\"cancelCallback\":[16],\"cancelLabel\":[1,\"cancel-label\"],\"description\":[1],\"displayBorder\":[516,\"display-border\"],\"loaderTitle\":[1,\"loader-title\"],\"show\":[1028],\"showWrapper\":[32]}]]],[\"gx-ide-list-selector_2\",[[1,\"gx-ide-list-selector\",{\"ordered\":[4],\"readonly\":[4],\"type\":[1],\"required\":[4],\"ellipsis\":[4],\"value\":[1025],\"listName\":[1,\"list-name\"],\"noItemsBorder\":[4,\"no-items-border\"],\"noListBorder\":[516,\"no-list-border\"]},[[2,\"itemSelectionChanged\",\"itemSelectionChangedHandler\"]]],[4,\"gx-ide-list-selector-item\",{\"itemId\":[513,\"item-id\"],\"itemValue\":[1,\"item-value\"],\"itemChecked\":[1028,\"item-checked\"],\"readonly\":[1540],\"ellipsis\":[1540],\"icon\":[1],\"noBorder\":[1540,\"no-border\"],\"universalSlotEnd\":[516,\"universal-slot-end\"]}]]]]"), options);
18
18
  });
19
19
 
20
20
  //# sourceMappingURL=genexus-ide-ui.js.map
@@ -1,5 +1,6 @@
1
1
  import { r as registerInstance, h, g as getElement } from './index-93411ea2.js';
2
- import { g as getIconPath } from './MERCURY_ASSETS-91a1db9c.js';
2
+ import { g as getIconPath } from './assets-manager-0d129105.js';
3
+ import './MERCURY_ASSETS-9e4e8ebc.js';
3
4
  import { L as Locale } from './locale-e5107fad.js';
4
5
  import { h as hiChar } from './helpers-39459872.js';
5
6
 
@@ -1 +1 @@
1
- {"file":"gx-ide-ai-message.entry.js","mappings":"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","names":[],"sources":["src/components/ai-assistant/ai-message.scss?tag=gx-ide-ai-message","src/components/ai-assistant/ai-message.tsx"],"sourcesContent":["@import \"../../global/gx-ide-mixins.scss\";\n\n:host {\n font-family: var(--mer-font-family--primary);\n}\n/*--- Messages ---*/\n.message {\n color: var(--mer-color__neutral-gray--100);\n display: grid;\n grid-template-rows: 0fr;\n transition: grid-template-rows 100ms;\n transition: grid-template-rows 100ms, -ms-grid-rows 100ms;\n &__outer-wrapper {\n overflow: hidden;\n }\n &__inner-wrapper {\n padding: var(--mer-spacing--sm) var(--mer-spacing--sm);\n border-radius: var(--mer-border__radius--sm);\n border-inline-start: var(--mer-border__width--md) solid transparent;\n background-color: var(--mer-color__neutral-gray--1200);\n margin-block-start: var(--mer-spacing--xs);\n position: relative;\n }\n &__header {\n display: flex;\n gap: var(--mer-spacing--xs);\n justify-content: space-between;\n\n .icon-md {\n opacity: 0;\n }\n\n &--in-progress {\n display: contents;\n }\n }\n &__role {\n &:before {\n content: \"\";\n display: grid;\n place-self: center flex-end;\n inline-size: 4px;\n block-size: 4px;\n border-radius: 50%;\n background-color: currentcolor;\n }\n\n font-weight: var(--mer-font__weight--semi-bold);\n margin-block-end: var(--mer-spacing--xs);\n display: inline-grid;\n grid-template-columns: max-content 1fr;\n gap: 8px;\n\n &-description {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n display: inline-block;\n padding-block-start: 2px;\n }\n &--user {\n color: var(--mer-color__primary--300);\n }\n &--assistant {\n }\n &--hidden {\n display: none;\n }\n }\n &__caption {\n font-size: var(--mer-font__size--xs);\n line-height: var(--mer-line-height--regular);\n }\n &--visible {\n grid-template-rows: 1fr;\n }\n &--copying {\n pointer-events: none;\n span:not(.copied),\n .message__caption {\n color: transparent;\n -webkit-user-select: none; /* Safari */\n -ms-user-select: none; /* IE 10 and IE 11 */\n user-select: none; /* Standard syntax */\n }\n }\n /*--- Types of messages ---*/\n &--user {\n .message__inner-wrapper {\n background-color: rgba(91, 167, 255, 0.08);\n border-color: var(--mer-border-color__primary);\n }\n }\n &--assistant-action {\n .message__inner-wrapper {\n background-color: rgba(63, 168, 155, 0.05);\n border-color: var(--mer-border-color__success);\n }\n }\n &--assistant-chat {\n .message__inner-wrapper {\n background-color: var(--mer-surface__elevation--01);\n }\n }\n &--assistant-in-progress {\n color: var(--mer-color__neutral-gray--500);\n .message__inner-wrapper {\n font-style: italic;\n display: grid;\n grid-template-columns: 1fr auto;\n gap: var(--mer-spacing--xs);\n\n .message__caption {\n flex: 1;\n }\n .animation-wrapper {\n flex: none;\n }\n }\n }\n &--assistant-error {\n .message__inner-wrapper {\n background-color: rgba(251, 124, 132, 0.05);\n border-color: var(--mer-border-color__error);\n }\n }\n &--copyable {\n &:hover {\n filter: brightness(1.2);\n .icon-md {\n opacity: 1;\n }\n }\n }\n &:last-child {\n margin-block-end: 0;\n }\n}\n:host(:first-child) {\n .message {\n &__inner-wrapper {\n margin-block-end: 0;\n }\n }\n}\n\n/*--- Dot Pulse Sweet Animation ---*/\n.animation-wrapper {\n width: 45px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n$color: var(--mer-color__neutral-gray--400);\n.dot-pulse {\n position: relative;\n left: -9999px;\n width: 5px;\n height: 5px;\n border-radius: 2.5px;\n background-color: $color;\n color: $color;\n box-shadow: 9999px 0 0 -5px;\n animation: dot-pulse 1.5s infinite linear;\n animation-delay: 0.25s;\n &::before,\n &::after {\n content: \"\";\n display: inline-block;\n position: absolute;\n top: 0;\n width: 5px;\n height: 5px;\n border-radius: 2.5px;\n background-color: $color;\n color: $color;\n }\n &::before {\n box-shadow: 9984px 0 0 -5px;\n animation: dot-pulse-before 1.5s infinite linear;\n animation-delay: 0s;\n }\n &::after {\n box-shadow: 10014px 0 0 -5px;\n animation: dot-pulse-after 1.5s infinite linear;\n animation-delay: 0.5s;\n }\n}\n@keyframes dot-pulse-before {\n 0% {\n box-shadow: 9984px 0 0 -5px;\n }\n 30% {\n box-shadow: 9984px 0 0 2px;\n }\n 60%,\n 100% {\n box-shadow: 9984px 0 0 -5px;\n }\n}\n@keyframes dot-pulse {\n 0% {\n box-shadow: 9999px 0 0 -5px;\n }\n 30% {\n box-shadow: 9999px 0 0 2px;\n }\n 60%,\n 100% {\n box-shadow: 9999px 0 0 -5px;\n }\n}\n@keyframes dot-pulse-after {\n 0% {\n box-shadow: 10014px 0 0 -5px;\n }\n 30% {\n box-shadow: 10014px 0 0 2px;\n }\n 60%,\n 100% {\n box-shadow: 10014px 0 0 -5px;\n }\n}\n\n/*--- Copy Message ---*/\n.copied {\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--mer-color__neutral-gray--300);\n display: flex;\n gap: var(--mer-spacing--xs);\n opacity: 0;\n animation: fadeIn var(--mer-timing--regular) ease-out forwards;\n}\n\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n}\n\n@include hiChar;\n","import { Component, h, Prop, Element, State } from \"@stencil/core\";\n\nimport { getIconPath } from \"@genexus/mercury\";\n\nimport { Locale } from \"../../common/locale\";\nimport { MessageType } from \"./ai-assistant\";\nimport { hiChar } from \"../../common/helpers\";\n\nconst COPY_ICON = getIconPath({\n category: \"bpm\",\n name: \"tasks\",\n colorType: \"neutral\"\n});\n\n@Component({\n tag: \"gx-ide-ai-message\",\n styleUrl: \"ai-message.scss\",\n shadow: false,\n assetsDirs: [\"gx-ide-assets/ai-message\"]\n})\nexport class GxIdeAiMessage {\n /* The message allows to be copied*/\n private _componentLocale: any;\n private copyable = false;\n\n @Element() el: HTMLGxIdeAiMessageElement;\n\n /**\n * This wil display the message if true\n */\n @State() visible = false;\n\n /**\n * This wil show the user a text, indicating that the message has been copied\n */\n @State() showCopiedMessage = false;\n\n /**\n * A reference to the gx-ide-ai-assistant host element\n */\n @Prop() readonly aiAssistantHostRef: HTMLGxIdeAiAssistantElement;\n\n /**\n * The actual message\n */\n @Prop() readonly message: string;\n\n /**\n * The message type\n */\n @Prop() readonly messageType: MessageType;\n\n /**\n * The filter value\n */\n @Prop() readonly filterValue: string;\n\n /**\n * It hides the message (used for the filter)\n */\n @Prop() readonly hidden: boolean;\n\n /**\n * An object with the needed string translations.\n */\n @Prop() readonly translations: Translations;\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\n this.evaluateMessageIsCopyable();\n }\n\n componentDidRender() {\n setTimeout(() => {\n /* Without the timeout it appears instantly (no apparent transition)*/\n this.visible = true;\n const messagesList = this.el.parentElement;\n messagesList.scrollTo(0, 0);\n }, 0);\n }\n\n private copyMessage = () => {\n navigator.clipboard.writeText(this.message);\n this.showCopiedMessage = true;\n setTimeout(() => {\n this.showCopiedMessage = false;\n }, 1500);\n };\n\n #buttonMouseDownHandler = (e: MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n };\n\n private evaluateMessageIsCopyable = () => {\n this.copyable = this.messageType !== \"assistant-in-progress\";\n };\n\n private evaluateCopyIcon = () => {\n return this.copyable ? (\n <button\n class=\"button-tertiary button-icon-only\"\n aria-label=\"copy\"\n onClick={this.copyMessage}\n onMouseDown={this.#buttonMouseDownHandler}\n >\n <ch-image class=\"icon-md\" src={COPY_ICON}></ch-image>\n </button>\n ) : null;\n };\n\n render() {\n return (\n <li\n class={{\n \"message\": true,\n \"message--visible\": this.visible && !this.hidden,\n [`message--${[this.messageType]}`]: true,\n \"message--assistant\": this.messageType !== \"user\",\n \"message--copyable\": this.copyable,\n \"message--copying\": this.showCopiedMessage\n }}\n >\n <div class=\"message__outer-wrapper\">\n <div\n class={{\n \"message__inner-wrapper\": true\n }}\n >\n {this.messageType === \"user\" ? (\n <div class=\"message__header\">\n <span class=\"message__role message__role--user\">\n <span class=\"message__role-description\">\n {this._componentLocale.you}\n </span>\n </span>\n {this.evaluateCopyIcon()}\n </div>\n ) : (\n <div\n class={{\n \"message__header\": true,\n \"message__header--in-progress\":\n this.messageType === \"assistant-in-progress\"\n }}\n >\n <span\n class={{\n \"message__role\":\n this.messageType !== \"assistant-in-progress\",\n \"message__role--hidden\":\n this.messageType === \"assistant-in-progress\",\n \"message__role--assistant\": true\n }}\n >\n <span class=\"message__role-description\">\n {this._componentLocale.assistant}\n </span>\n </span>\n {this.evaluateCopyIcon()}\n </div>\n )}\n <div\n class={{\n \"message__caption\": true,\n \"message__caption--in-progress\":\n this.messageType === \"assistant-in-progress\"\n }}\n >\n {this.showCopiedMessage ? (\n <span class=\"copied\">\n <ch-image class=\"icon-md\" src={COPY_ICON}></ch-image>\n {this.translations[\"copied\"]}\n </span>\n ) : null}\n {hiChar(this.message, this.filterValue)}\n </div>\n {this.messageType === \"assistant-in-progress\" ? (\n <div class=\"animation-wrapper\">\n <div class=\"dot-pulse\"></div>\n </div>\n ) : null}\n </div>\n </div>\n </li>\n );\n }\n}\n\nexport type Translations = {\n [key: string]: string;\n};\n"],"version":3}
1
+ {"file":"gx-ide-ai-message.entry.js","mappings":"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","names":[],"sources":["src/components/ai-assistant/ai-message.scss?tag=gx-ide-ai-message","src/components/ai-assistant/ai-message.tsx"],"sourcesContent":["@import \"../../global/gx-ide-mixins.scss\";\n\n:host {\n font-family: var(--mer-font-family--primary);\n}\n/*--- Messages ---*/\n.message {\n color: var(--mer-color__neutral-gray--100);\n display: grid;\n grid-template-rows: 0fr;\n transition: grid-template-rows 100ms;\n transition: grid-template-rows 100ms, -ms-grid-rows 100ms;\n &__outer-wrapper {\n overflow: hidden;\n }\n &__inner-wrapper {\n padding: var(--mer-spacing--sm) var(--mer-spacing--sm);\n border-radius: var(--mer-border__radius--sm);\n border-inline-start: var(--mer-border__width--md) solid transparent;\n background-color: var(--mer-color__neutral-gray--1200);\n margin-block-start: var(--mer-spacing--xs);\n position: relative;\n }\n &__header {\n display: flex;\n gap: var(--mer-spacing--xs);\n justify-content: space-between;\n\n .icon-md {\n opacity: 0;\n }\n\n &--in-progress {\n display: contents;\n }\n }\n &__role {\n &:before {\n content: \"\";\n display: grid;\n place-self: center flex-end;\n inline-size: 4px;\n block-size: 4px;\n border-radius: 50%;\n background-color: currentcolor;\n }\n\n font-weight: var(--mer-font__weight--semi-bold);\n margin-block-end: var(--mer-spacing--xs);\n display: inline-grid;\n grid-template-columns: max-content 1fr;\n gap: 8px;\n\n &-description {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n display: inline-block;\n padding-block-start: 2px;\n }\n &--user {\n color: var(--mer-color__primary--300);\n }\n &--assistant {\n }\n &--hidden {\n display: none;\n }\n }\n &__caption {\n font-size: var(--mer-font__size--xs);\n line-height: var(--mer-line-height--regular);\n }\n &--visible {\n grid-template-rows: 1fr;\n }\n &--copying {\n pointer-events: none;\n span:not(.copied),\n .message__caption {\n color: transparent;\n -webkit-user-select: none; /* Safari */\n -ms-user-select: none; /* IE 10 and IE 11 */\n user-select: none; /* Standard syntax */\n }\n }\n /*--- Types of messages ---*/\n &--user {\n .message__inner-wrapper {\n background-color: rgba(91, 167, 255, 0.08);\n border-color: var(--mer-border-color__primary);\n }\n }\n &--assistant-action {\n .message__inner-wrapper {\n background-color: rgba(63, 168, 155, 0.05);\n border-color: var(--mer-border-color__success);\n }\n }\n &--assistant-chat {\n .message__inner-wrapper {\n background-color: var(--mer-surface__elevation--01);\n }\n }\n &--assistant-in-progress {\n color: var(--mer-color__neutral-gray--500);\n .message__inner-wrapper {\n font-style: italic;\n display: grid;\n grid-template-columns: 1fr auto;\n gap: var(--mer-spacing--xs);\n\n .message__caption {\n flex: 1;\n }\n .animation-wrapper {\n flex: none;\n }\n }\n }\n &--assistant-error {\n .message__inner-wrapper {\n background-color: rgba(251, 124, 132, 0.05);\n border-color: var(--mer-border-color__error);\n }\n }\n &--copyable {\n &:hover {\n filter: brightness(1.2);\n .icon-md {\n opacity: 1;\n }\n }\n }\n &:last-child {\n margin-block-end: 0;\n }\n}\n:host(:first-child) {\n .message {\n &__inner-wrapper {\n margin-block-end: 0;\n }\n }\n}\n\n/*--- Dot Pulse Sweet Animation ---*/\n.animation-wrapper {\n width: 45px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n$color: var(--mer-color__neutral-gray--400);\n.dot-pulse {\n position: relative;\n left: -9999px;\n width: 5px;\n height: 5px;\n border-radius: 2.5px;\n background-color: $color;\n color: $color;\n box-shadow: 9999px 0 0 -5px;\n animation: dot-pulse 1.5s infinite linear;\n animation-delay: 0.25s;\n &::before,\n &::after {\n content: \"\";\n display: inline-block;\n position: absolute;\n top: 0;\n width: 5px;\n height: 5px;\n border-radius: 2.5px;\n background-color: $color;\n color: $color;\n }\n &::before {\n box-shadow: 9984px 0 0 -5px;\n animation: dot-pulse-before 1.5s infinite linear;\n animation-delay: 0s;\n }\n &::after {\n box-shadow: 10014px 0 0 -5px;\n animation: dot-pulse-after 1.5s infinite linear;\n animation-delay: 0.5s;\n }\n}\n@keyframes dot-pulse-before {\n 0% {\n box-shadow: 9984px 0 0 -5px;\n }\n 30% {\n box-shadow: 9984px 0 0 2px;\n }\n 60%,\n 100% {\n box-shadow: 9984px 0 0 -5px;\n }\n}\n@keyframes dot-pulse {\n 0% {\n box-shadow: 9999px 0 0 -5px;\n }\n 30% {\n box-shadow: 9999px 0 0 2px;\n }\n 60%,\n 100% {\n box-shadow: 9999px 0 0 -5px;\n }\n}\n@keyframes dot-pulse-after {\n 0% {\n box-shadow: 10014px 0 0 -5px;\n }\n 30% {\n box-shadow: 10014px 0 0 2px;\n }\n 60%,\n 100% {\n box-shadow: 10014px 0 0 -5px;\n }\n}\n\n/*--- Copy Message ---*/\n.copied {\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--mer-color__neutral-gray--300);\n display: flex;\n gap: var(--mer-spacing--xs);\n opacity: 0;\n animation: fadeIn var(--mer-timing--regular) ease-out forwards;\n}\n\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n}\n\n@include hiChar;\n","import { Component, h, Prop, Element, State } from \"@stencil/core\";\n\nimport { getIconPath } from \"@genexus/mercury\";\n\nimport { Locale } from \"../../common/locale\";\nimport { MessageType } from \"./ai-assistant\";\nimport { hiChar } from \"../../common/helpers\";\n\nconst COPY_ICON = getIconPath({\n category: \"bpm\",\n name: \"tasks\",\n colorType: \"neutral\"\n});\n\n@Component({\n tag: \"gx-ide-ai-message\",\n styleUrl: \"ai-message.scss\",\n shadow: false,\n assetsDirs: [\"gx-ide-assets/ai-message\"]\n})\nexport class GxIdeAiMessage {\n /* The message allows to be copied*/\n private _componentLocale: any;\n private copyable = false;\n\n @Element() el: HTMLGxIdeAiMessageElement;\n\n /**\n * This wil display the message if true\n */\n @State() visible = false;\n\n /**\n * This wil show the user a text, indicating that the message has been copied\n */\n @State() showCopiedMessage = false;\n\n /**\n * A reference to the gx-ide-ai-assistant host element\n */\n @Prop() readonly aiAssistantHostRef: HTMLGxIdeAiAssistantElement;\n\n /**\n * The actual message\n */\n @Prop() readonly message: string;\n\n /**\n * The message type\n */\n @Prop() readonly messageType: MessageType;\n\n /**\n * The filter value\n */\n @Prop() readonly filterValue: string;\n\n /**\n * It hides the message (used for the filter)\n */\n @Prop() readonly hidden: boolean;\n\n /**\n * An object with the needed string translations.\n */\n @Prop() readonly translations: Translations;\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\n this.evaluateMessageIsCopyable();\n }\n\n componentDidRender() {\n setTimeout(() => {\n /* Without the timeout it appears instantly (no apparent transition)*/\n this.visible = true;\n const messagesList = this.el.parentElement;\n messagesList.scrollTo(0, 0);\n }, 0);\n }\n\n private copyMessage = () => {\n navigator.clipboard.writeText(this.message);\n this.showCopiedMessage = true;\n setTimeout(() => {\n this.showCopiedMessage = false;\n }, 1500);\n };\n\n #buttonMouseDownHandler = (e: MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n };\n\n private evaluateMessageIsCopyable = () => {\n this.copyable = this.messageType !== \"assistant-in-progress\";\n };\n\n private evaluateCopyIcon = () => {\n return this.copyable ? (\n <button\n class=\"button-tertiary button-icon-only\"\n aria-label=\"copy\"\n onClick={this.copyMessage}\n onMouseDown={this.#buttonMouseDownHandler}\n >\n <ch-image class=\"icon-md\" src={COPY_ICON}></ch-image>\n </button>\n ) : null;\n };\n\n render() {\n return (\n <li\n class={{\n \"message\": true,\n \"message--visible\": this.visible && !this.hidden,\n [`message--${[this.messageType]}`]: true,\n \"message--assistant\": this.messageType !== \"user\",\n \"message--copyable\": this.copyable,\n \"message--copying\": this.showCopiedMessage\n }}\n >\n <div class=\"message__outer-wrapper\">\n <div\n class={{\n \"message__inner-wrapper\": true\n }}\n >\n {this.messageType === \"user\" ? (\n <div class=\"message__header\">\n <span class=\"message__role message__role--user\">\n <span class=\"message__role-description\">\n {this._componentLocale.you}\n </span>\n </span>\n {this.evaluateCopyIcon()}\n </div>\n ) : (\n <div\n class={{\n \"message__header\": true,\n \"message__header--in-progress\":\n this.messageType === \"assistant-in-progress\"\n }}\n >\n <span\n class={{\n \"message__role\":\n this.messageType !== \"assistant-in-progress\",\n \"message__role--hidden\":\n this.messageType === \"assistant-in-progress\",\n \"message__role--assistant\": true\n }}\n >\n <span class=\"message__role-description\">\n {this._componentLocale.assistant}\n </span>\n </span>\n {this.evaluateCopyIcon()}\n </div>\n )}\n <div\n class={{\n \"message__caption\": true,\n \"message__caption--in-progress\":\n this.messageType === \"assistant-in-progress\"\n }}\n >\n {this.showCopiedMessage ? (\n <span class=\"copied\">\n <ch-image class=\"icon-md\" src={COPY_ICON}></ch-image>\n {this.translations[\"copied\"]}\n </span>\n ) : null}\n {hiChar(this.message, this.filterValue)}\n </div>\n {this.messageType === \"assistant-in-progress\" ? (\n <div class=\"animation-wrapper\">\n <div class=\"dot-pulse\"></div>\n </div>\n ) : null}\n </div>\n </div>\n </li>\n );\n }\n}\n\nexport type Translations = {\n [key: string]: string;\n};\n"],"version":3}
@@ -0,0 +1,58 @@
1
+ import { r as registerInstance, h, H as Host } from './index-93411ea2.js';
2
+ import { g as getIconPath } from './assets-manager-0d129105.js';
3
+ import './MERCURY_ASSETS-9e4e8ebc.js';
4
+
5
+ const chatContainerCss = ".chat-container{display:grid;block-size:100%;overflow:auto;grid-template-rows:max-content 1fr max-content;gap:var(--mer-spacing--xs);padding:var(--mer-spacing--xs);position:relative;--chat-common-border-radius:var(--mer-spacing--2xs)}.section{display:contents}.chat-container__header{padding:var(--mer-spacing--2xs) var(--mer-spacing--2xs) var(--mer-spacing--2xs) var(--mer-spacing--sm);display:flex;align-items:center;gap:var(--mer-spacing--sm);justify-content:space-between}.chat-container__ch-chat{overflow:auto;position:relative;display:grid}.chat-container__header,.chat-container__footer{padding:var(--mer-spacing--2xs) var(--mer-spacing--2xs) var(--mer-spacing--2xs) var(--mer-spacing--sm);border-radius:var(--chat-common-border-radius)}.chat-container__conversation-copied{position:absolute;z-index:1;inline-size:100%;block-size:100%;background:rgba(22, 22, 23, 0.75);backdrop-filter:saturate(180%) blur(20px);display:grid;align-items:center;justify-content:center;text-align:center;padding:32px;--mer-icon__box--md:18px;pointer-events:none;overflow:hidden;animation:fadeIn 100ms ease-in-out forwards;opacity:0}.chat-container__conversation-copied-wrapper{display:flex;align-items:center;gap:var(--mer-spacing--sm)}.chat-container__conversation-copied-wrapper{animation:liftUp var(--mer-timing--fast) ease-in-out forwards;inset-block-start:4px;opacity:0;animation-delay:var(--mer-timing--fast);position:relative}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes liftUp{from{opacity:0;inset-block-start:4px}to{opacity:1;inset-block-start:0}}.chat::part(message){position:relative;--copy-button-opacity:0;--copied-to-clipboard-opacity:0;--date-opacity:1}.chat::part(message__time),.chat::part(message__copy-button){transition:opacity var(--mer-timing--super-fast) ease-in-out}.chat::part(message__time){opacity:var(--date-opacity)}.chat::part(message):hover{position:relative;--copy-button-opacity:1;--date-opacity:0}.chat::part(message__copy-button){position:absolute;z-index:1;inset-inline-end:0;padding:var(--mer-spacing--sm);transition:opacity var(--mer-timing--fast) ease-in-out;opacity:var(--copy-button-opacity)}.chat::part(message__copy-button)::after{content:\"\";inline-size:var(--mer-icon__box--md);block-size:var(--mer-icon__box--md);background:no-repeat center/var(--mer-icon__size--md) var(--icon-path);--icon-path:var(--icon__system_copy_primary--enabled)}.chat::part(message__copy-button):hover::after{--icon-path:var(--icon__system_copy_primary--hover)}.chat::part(message__copy-button):active::after{--icon-path:var(--icon__system_copy_primary--active)}.chat::part(message__copied-feedback){transition:opacity 150ms ease-in-out;position:absolute;inline-size:100%;block-size:100%;display:flex;align-items:center;justify-content:center;z-index:2;background:rgba(22, 22, 23, 0.8);backdrop-filter:saturate(180%) blur(20px);opacity:var(--copied-to-clipboard-opacity);pointer-events:none}.chat::part(message__copied-feedback-visible){--copied-to-clipboard-opacity:1;pointer-events:visible}.chat::part(send-container){gap:var(--mer-spacing--xs)}.chat::part(send-input){--control__padding-block:7px !important}.chat::part(send-button){border-width:var(--control__border-width);border-style:var(--control__border-style);border-color:var(--control__border-color);border-radius:var(--control__border-radius);inline-size:32px;block-size:32px;background:no-repeat center/var(--mer-icon__box--md) var(--icon-path);--icon-path:var(--icon__system_send_primary--enabled)}.chat::part(send-button):hover{--icon-path:var(--icon__system_send_primary--hover);--control__border-color:var(--mer-text__primary--hover)}.chat::part(send-button):active{--icon-path:var(--icon__system_send_primary--active);--control__border-color:var(--mer-border-color__primary--active)}";
6
+
7
+ const CSS_BUNDLES = [
8
+ "resets/box-sizing",
9
+ "utils/typography",
10
+ "chameleon/scrollbar",
11
+ "components/button",
12
+ "components/icon",
13
+ "utils/elevation"
14
+ ];
15
+ const COPY_ICON = getIconPath({
16
+ category: "system",
17
+ name: "copy",
18
+ colorType: "neutral"
19
+ });
20
+ const DELETE_ICON = getIconPath({
21
+ category: "system",
22
+ name: "delete-outlined",
23
+ colorType: "error"
24
+ });
25
+ const CONVERSATION_ICON = getIconPath({
26
+ category: "objects",
27
+ name: "conversational-flows"
28
+ });
29
+ const GxIdeChatContainer = class {
30
+ constructor(hostRef) {
31
+ registerInstance(this, hostRef);
32
+ this.chatTitle = undefined;
33
+ this.copyConversationCallback = undefined;
34
+ this.deleteConversationCallback = undefined;
35
+ this.displayConversationCopiedMessage = false;
36
+ }
37
+ /**
38
+ * It will display a feedback message that the conversation has been copied
39
+ */
40
+ async showCopyConversationMessage() {
41
+ this.displayConversationCopiedMessage = true;
42
+ setTimeout(() => {
43
+ this.displayConversationCopiedMessage = false;
44
+ }, 2000);
45
+ }
46
+ render() {
47
+ const renderHeader = this.chatTitle ||
48
+ this.copyConversationCallback ||
49
+ this.deleteConversationCallback;
50
+ const renderButtonsGroup = this.copyConversationCallback || this.deleteConversationCallback;
51
+ return (h(Host, { class: "chat-container" }, h("ch-theme", { model: CSS_BUNDLES }), h("section", { class: "section" }, renderHeader && (h("header", { class: "chat-container__header elevation-1 body-italic-m" }, this.chatTitle && this.chatTitle, renderButtonsGroup && (h("div", { class: "buttons-spacer" }, this.deleteConversationCallback && (h("button", { class: "button-secondary button-icon-only", onClick: this.deleteConversationCallback }, h("ch-image", { class: "icon-md", src: DELETE_ICON }))), this.copyConversationCallback && (h("button", { class: "button-secondary button-icon-only", onClick: this.copyConversationCallback }, h("ch-image", { class: "icon-md", src: COPY_ICON }))))))), h("section", { class: "chat-container__ch-chat" }, h("slot", null), this.displayConversationCopiedMessage && (h("div", { class: "chat-container__conversation-copied" }, h("div", { class: "chat-container__conversation-copied-wrapper" }, h("ch-image", { class: "icon-md", src: CONVERSATION_ICON }), h("p", { class: "body-regular-l" }, "conversation copied"))))))));
52
+ }
53
+ };
54
+ GxIdeChatContainer.style = chatContainerCss;
55
+
56
+ export { GxIdeChatContainer as gx_ide_chat_container };
57
+
58
+ //# sourceMappingURL=gx-ide-chat-container.entry.js.map
@@ -0,0 +1 @@
1
+ {"file":"gx-ide-chat-container.entry.js","mappings":";;;;AAAA,MAAM,gBAAgB,GAAG,isHAAisH;;ACG1tH,MAAM,WAAW,GAAmB;IAClC,mBAAmB;IACnB,kBAAkB;IAClB,qBAAqB;IACrB,mBAAmB;IACnB,iBAAiB;IACjB,iBAAiB;CAClB,CAAC;AAEF,MAAM,SAAS,GAAG,WAAW,CAAC;IAC5B,QAAQ,EAAE,QAAQ;IAClB,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,SAAS;CACrB,CAAC,CAAC;AACH,MAAM,WAAW,GAAG,WAAW,CAAC;IAC9B,QAAQ,EAAE,QAAQ;IAClB,IAAI,EAAE,iBAAiB;IACvB,SAAS,EAAE,OAAO;CACnB,CAAC,CAAC;AACH,MAAM,iBAAiB,GAAG,WAAW,CAAC;IACpC,QAAQ,EAAE,SAAS;IACnB,IAAI,EAAE,sBAAsB;CAC7B,CAAC,CAAC;MAOU,kBAAkB;;;;;;gDAmBwB,KAAK;;;;;IAM1D,MAAM,2BAA2B;QAC/B,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC;QAC7C,UAAU,CAAC;YACT,IAAI,CAAC,gCAAgC,GAAG,KAAK,CAAC;SAC/C,EAAE,IAAI,CAAC,CAAC;KACV;IAED,MAAM;QACJ,MAAM,YAAY,GAChB,IAAI,CAAC,SAAS;YACd,IAAI,CAAC,wBAAwB;YAC7B,IAAI,CAAC,0BAA0B,CAAC;QAElC,MAAM,kBAAkB,GACtB,IAAI,CAAC,wBAAwB,IAAI,IAAI,CAAC,0BAA0B,CAAC;QACnE,QACE,EAAC,IAAI,IAAC,KAAK,EAAC,gBAAgB,IAC1B,gBAAU,KAAK,EAAE,WAAW,GAAa,EACzC,eAAS,KAAK,EAAC,SAAS,IACrB,YAAY,KACX,cAAQ,KAAK,EAAC,kDAAkD,IAC7D,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,EAEhC,kBAAkB,KACjB,WAAK,KAAK,EAAC,gBAAgB,IACxB,IAAI,CAAC,0BAA0B,KAC9B,cACE,KAAK,EAAC,mCAAmC,EACzC,OAAO,EAAE,IAAI,CAAC,0BAA0B,IAExC,gBAAU,KAAK,EAAC,SAAS,EAAC,GAAG,EAAE,WAAW,GAAa,CAChD,CACV,EAEA,IAAI,CAAC,wBAAwB,KAC5B,cACE,KAAK,EAAC,mCAAmC,EACzC,OAAO,EAAE,IAAI,CAAC,wBAAwB,IAEtC,gBAAU,KAAK,EAAC,SAAS,EAAC,GAAG,EAAE,SAAS,GAAa,CAC9C,CACV,CACG,CACP,CACM,CACV,EACD,eAAS,KAAK,EAAC,yBAAyB,IACtC,eAAa,EACZ,IAAI,CAAC,gCAAgC,KACpC,WAAK,KAAK,EAAC,qCAAqC,IAC9C,WAAK,KAAK,EAAC,6CAA6C,IACtD,gBAAU,KAAK,EAAC,SAAS,EAAC,GAAG,EAAE,iBAAiB,GAAa,EAC7D,SAAG,KAAK,EAAC,gBAAgB,0BAAwB,CAC7C,CACF,CACP,CACO,CAEF,CACL,EACP;KACH;;;;;;","names":[],"sources":["src/components/_helpers/chat-container/chat-container.scss?tag=gx-ide-chat-container","src/components/_helpers/chat-container/chat-container.tsx"],"sourcesContent":[".chat-container {\n display: grid;\n block-size: 100%;\n overflow: auto;\n grid-template-rows: max-content 1fr max-content;\n gap: var(--mer-spacing--xs);\n padding: var(--mer-spacing--xs);\n position: relative;\n --chat-common-border-radius: var(--mer-spacing--2xs);\n}\n.section {\n display: contents;\n}\n\n// header\n.chat-container__header {\n padding: var(--mer-spacing--2xs) var(--mer-spacing--2xs)\n var(--mer-spacing--2xs) var(--mer-spacing--sm);\n display: flex;\n align-items: center;\n gap: var(--mer-spacing--sm);\n justify-content: space-between;\n}\n\n// ch-chat container\n.chat-container__ch-chat {\n overflow: auto;\n position: relative;\n display: grid;\n}\n\n// footer\n\n// header & footer (common styles)\n.chat-container__header,\n.chat-container__footer {\n padding: var(--mer-spacing--2xs) var(--mer-spacing--2xs)\n var(--mer-spacing--2xs) var(--mer-spacing--sm);\n border-radius: var(--chat-common-border-radius);\n}\n\n.chat-container__conversation-copied {\n position: absolute;\n z-index: 1;\n inline-size: 100%;\n block-size: 100%;\n background: rgba(22, 22, 23, 0.75);\n backdrop-filter: saturate(180%) blur(20px);\n display: grid;\n align-items: center;\n justify-content: center;\n text-align: center;\n padding: 32px;\n --mer-icon__box--md: 18px;\n pointer-events: none;\n overflow: hidden;\n animation: fadeIn 100ms ease-in-out forwards;\n opacity: 0;\n}\n.chat-container__conversation-copied-wrapper {\n display: flex;\n align-items: center;\n gap: var(--mer-spacing--sm);\n}\n.chat-container__conversation-copied-wrapper {\n animation: liftUp var(--mer-timing--fast) ease-in-out forwards;\n inset-block-start: 4px;\n opacity: 0;\n animation-delay: var(--mer-timing--fast);\n position: relative;\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes liftUp {\n from {\n opacity: 0;\n inset-block-start: 4px;\n }\n to {\n opacity: 1;\n inset-block-start: 0;\n }\n}\n\n// - - - - - - - - - - - - - - - - - - - - - - - - - -\n// ch-chat overrides TODO: move this styles to Mercury\n// - - - - - - - - - - - - - - - - - - - - - - - - - -\n\n.chat::part(message) {\n position: relative;\n --copy-button-opacity: 0;\n --copied-to-clipboard-opacity: 0;\n --date-opacity: 1;\n}\n.chat::part(message__time),\n.chat::part(message__copy-button) {\n transition: opacity var(--mer-timing--super-fast) ease-in-out;\n}\n.chat::part(message__time) {\n opacity: var(--date-opacity);\n}\n.chat::part(message):hover {\n position: relative;\n --copy-button-opacity: 1;\n --date-opacity: 0;\n}\n.chat::part(message__copy-button) {\n position: absolute;\n z-index: 1;\n inset-inline-end: 0;\n padding: var(--mer-spacing--sm); // same as part::(message)\n transition: opacity var(--mer-timing--fast) ease-in-out;\n opacity: var(--copy-button-opacity);\n\n &::after {\n content: \"\";\n inline-size: var(--mer-icon__box--md);\n block-size: var(--mer-icon__box--md);\n background: no-repeat center / var(--mer-icon__size--md) var(--icon-path);\n --icon-path: var(--icon__system_copy_primary--enabled);\n }\n &:hover::after {\n --icon-path: var(--icon__system_copy_primary--hover);\n }\n &:active::after {\n --icon-path: var(--icon__system_copy_primary--active);\n }\n}\n\n// // copy button effect\n.chat::part(message__copied-feedback) {\n transition: opacity 150ms ease-in-out;\n position: absolute;\n inline-size: 100%;\n block-size: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 2;\n background: rgba(22, 22, 23, 0.8);\n backdrop-filter: saturate(180%) blur(20px);\n opacity: var(--copied-to-clipboard-opacity);\n pointer-events: none;\n}\n\n.chat::part(message__copied-feedback-visible) {\n --copied-to-clipboard-opacity: 1;\n pointer-events: visible;\n}\n\n// send button\n\n.chat::part(send-container) {\n gap: var(--mer-spacing--xs);\n}\n.chat::part(send-input) {\n --control__padding-block: 7px !important;\n}\n\n.chat::part(send-button) {\n border-width: var(--control__border-width);\n border-style: var(--control__border-style);\n border-color: var(--control__border-color);\n border-radius: var(--control__border-radius);\n inline-size: 32px;\n block-size: 32px;\n background: no-repeat center / var(--mer-icon__box--md) var(--icon-path);\n --icon-path: var(--icon__system_send_primary--enabled);\n}\n.chat::part(send-button):hover {\n --icon-path: var(--icon__system_send_primary--hover);\n --control__border-color: var(--mer-text__primary--hover);\n}\n.chat::part(send-button):active {\n --icon-path: var(--icon__system_send_primary--active);\n --control__border-color: var(--mer-border-color__primary--active);\n}\n","import { Component, Host, h, Prop, Method, State } from \"@stencil/core\";\nimport { MercuryBundles, getIconPath } from \"@genexus/mercury\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/typography\",\n \"chameleon/scrollbar\",\n \"components/button\",\n \"components/icon\",\n \"utils/elevation\"\n];\n\nconst COPY_ICON = getIconPath({\n category: \"system\",\n name: \"copy\",\n colorType: \"neutral\"\n});\nconst DELETE_ICON = getIconPath({\n category: \"system\",\n name: \"delete-outlined\",\n colorType: \"error\"\n});\nconst CONVERSATION_ICON = getIconPath({\n category: \"objects\",\n name: \"conversational-flows\"\n});\n\n@Component({\n tag: \"gx-ide-chat-container\",\n styleUrl: \"chat-container.scss\",\n shadow: false\n})\nexport class GxIdeChatContainer {\n /**\n * The chat title\n */\n @Prop() readonly chatTitle?: string;\n\n /**\n * If true a button for copying the conversation will be render on the header\n */\n @Prop() readonly copyConversationCallback: () => void;\n\n /**\n * If true a button for deleting the conversation will be render on the header\n */\n @Prop() readonly deleteConversationCallback: () => void;\n\n /**\n * Coneration Copied\n */\n @State() displayConversationCopiedMessage: boolean = false;\n\n /**\n * It will display a feedback message that the conversation has been copied\n */\n @Method()\n async showCopyConversationMessage() {\n this.displayConversationCopiedMessage = true;\n setTimeout(() => {\n this.displayConversationCopiedMessage = false;\n }, 2000);\n }\n\n render() {\n const renderHeader =\n this.chatTitle ||\n this.copyConversationCallback ||\n this.deleteConversationCallback;\n\n const renderButtonsGroup =\n this.copyConversationCallback || this.deleteConversationCallback;\n return (\n <Host class=\"chat-container\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <section class=\"section\">\n {renderHeader && (\n <header class=\"chat-container__header elevation-1 body-italic-m\">\n {this.chatTitle && this.chatTitle}\n\n {renderButtonsGroup && (\n <div class=\"buttons-spacer\">\n {this.deleteConversationCallback && (\n <button\n class=\"button-secondary button-icon-only\"\n onClick={this.deleteConversationCallback}\n >\n <ch-image class=\"icon-md\" src={DELETE_ICON}></ch-image>\n </button>\n )}\n\n {this.copyConversationCallback && (\n <button\n class=\"button-secondary button-icon-only\"\n onClick={this.copyConversationCallback}\n >\n <ch-image class=\"icon-md\" src={COPY_ICON}></ch-image>\n </button>\n )}\n </div>\n )}\n </header>\n )}\n <section class=\"chat-container__ch-chat\">\n <slot></slot>\n {this.displayConversationCopiedMessage && (\n <div class=\"chat-container__conversation-copied\">\n <div class=\"chat-container__conversation-copied-wrapper\">\n <ch-image class=\"icon-md\" src={CONVERSATION_ICON}></ch-image>\n <p class=\"body-regular-l\">conversation copied</p>\n </div>\n </div>\n )}\n </section>\n {/* <footer class=\"chat-container__footer elevation-1\">footer</footer> */}\n </section>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,5 +1,6 @@
1
1
  import { r as registerInstance, a as getAssetPath, h, H as Host, g as getElement } from './index-93411ea2.js';
2
- import { g as getIconPath } from './MERCURY_ASSETS-91a1db9c.js';
2
+ import { g as getIconPath } from './assets-manager-0d129105.js';
3
+ import './MERCURY_ASSETS-9e4e8ebc.js';
3
4
  import { c as config } from './config-1ef9d75a.js';
4
5
  import { v as validateControls } from './form-validation-cd0215c6.js';
5
6
  import { L as Locale } from './locale-e5107fad.js';
@@ -1 +1 @@
1
- {"file":"gx-ide-create-kb-from-server.entry.js","mappings":"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","names":[],"sources":["src/components/team-dev/create-kb-from-server/helpers.ts","src/components/team-dev/create-kb-from-server/create-kb-from-server.scss?tag=gx-ide-create-kb-from-server&encapsulation=shadow","src/components/team-dev/create-kb-from-server/create-kb-from-server.tsx"],"sourcesContent":["import { ActionListItemModel } from \"@genexus/chameleon-controls-library\";\nimport { KBData } from \"./create-kb-from-server\";\n\nexport const mapKbsModelToActionListModel = (\n kbsData: KBData[]\n): ActionListItemModel[] => {\n const listBoxItems: ActionListItemModel[] = [];\n kbsData.forEach(kb => {\n listBoxItems.push({\n id: kb.id,\n type: \"actionable\",\n caption: kb.name\n });\n });\n return listBoxItems;\n};\n",":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.section {\n display: contents;\n}\n\n// - - - - - - - - - - -\n// Header\n// - - - - - - - - - - -\n\nheader {\n display: grid;\n grid-template-rows: max-content;\n grid-template-columns: 1fr 1fr max-content;\n}\n\n.button-change {\n align-self: center;\n justify-self: end;\n}\n\n// - - - - - - - - - - -\n// Main\n// - - - - - - - - - - -\n\n.main {\n display: grid;\n grid-template-columns: 1fr;\n grid-template-rows: max-content 1fr max-content max-content;\n}\n\n.search-kbs {\n inline-size: 50%;\n}\n\n.versions-container {\n grid-auto-rows: max-content;\n\n &__input {\n display: grid;\n grid-template-columns: 1fr max-content;\n gap: var(--mer-spacing--xs);\n }\n}\n","// Stencil\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n State,\n getAssetPath\n} from \"@stencil/core\";\n\n// Other Libraries\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport { config } from \"../../../common/config\";\nimport { GXServerConnectionData } from \"../connect-gx-server/connect-gx-server\";\nimport { FormSubmitResult } from \"../../../common/types\";\nimport {\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { Locale } from \"../../../common/locale\";\nimport { mapKbsModelToActionListModel } from \"./helpers\";\nimport {\n ActionListItemActionable,\n ActionListItemModel,\n ActionListItemModelExtended,\n ChActionListRenderCustomEvent,\n ChEditCustomEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"components/list-box\",\n \"components/tooltip\",\n \"chameleon/scrollbar\"\n];\n\n@Component({\n tag: \"gx-ide-create-kb-from-server\",\n styleUrl: \"create-kb-from-server.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/create-kb-from-server\"]\n})\nexport class GxIdeCreateKbFromServer {\n #chSearchIcon = getIconPath({\n category: \"system\",\n name: \"search\",\n colorType: \"on-surface\"\n });\n\n #showMoreIcon = getIconPath({\n category: \"gemini-tools\",\n name: \"show-more-horizontal\",\n colorType: \"on-elevation\"\n });\n\n #versionsSelect: RadioGroupItemModel[] = [\n { value: \"Trunk\", caption: \"Trunk Version\" },\n { value: \"All\", caption: \"All Versions\" }\n // { value: \"Select\", caption: \"Select Version\" } TODO: display once \"gx-ide-select-kb-versions\" is ready.\n ];\n\n [key: string]: any;\n\n #_componentLocale: any;\n #kbsActionListModel: ActionListItemModel[] = [];\n #kbVersionsIds: string[] = [];\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/create-kb-from-server/shortcuts.json`\n );\n #selectedKbId: string;\n #kbNameAlreadyEditedByUser: boolean = false;\n\n #searchKbsEl!: HTMLChEditElement;\n #versionSelectedTypeEl: HTMLChRadioGroupRenderElement;\n\n @Element() el: HTMLGxIdeCreateKbFromServerElement;\n\n #localKBNameEl!: HTMLChEditElement;\n\n /**\n * State to enable/disable the select versions button\n */\n @State() enableSelectVersionsButton: boolean = false;\n\n /**\n * The current kbn name value.\n */\n @State() localKbNameInputValue: string = \"\";\n\n /**\n * State to store the filter input value to filter the list-box\n */\n @State() filterValue: string = \"\";\n\n /**\n * KBs filtered\n */\n @State() kbsFilteredActionListModel: ActionListItemModel[] = [];\n\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * The version selected type\n */\n @State() versionSelectedType: VersionOption;\n\n /**\n * String value to show the number of versions selected (\"N versions selected\")\n */\n @State() versionsValueInput: string = \"\";\n\n /**\n * Set of data required when executing any of the callbacks that require a connection to the server.\n */\n @Prop() readonly connectionData: GXServerConnectionData;\n\n /**\n * Callback that is invoked when the dialog is closed\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * The host reopens the gx-ide-connect-server login modal with the previous data, and closes the current modal\n */\n @Prop() readonly changeConnectionCallback: (\n data: GXServerConnectionData\n ) => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Create KB' button is pressed. Receives the user's parameter selection to create the remote KB locally and ends the dialog.\n */\n @Prop() readonly createKBCallback!: (\n kbInfo: KnowledgeBaseInfo\n ) => Promise<FormSubmitResult>;\n\n /**\n * Callback that must be invoked when invoking the dialog\n */\n @Prop() readonly getGXserverKBsCallback!: (\n data: GXServerConnectionData\n ) => Promise<KBData[]>;\n\n /**\n * Callback invoked by pressing the ellipsis in the version selector. Receives the KB selected by the user, and displays the version selector dialog. Returns a list of versions chosen by the user.\n */\n @Prop() readonly selectKBVersionsCallback: (\n selectedKB: string\n ) => Promise<KBVersion[]>;\n\n componentDidLoad() {\n (this.#searchKbsEl as HTMLElement).focus();\n\n this.versionSelectedType = this.#versionSelectedTypeEl\n .value as VersionOption;\n\n this.#initializeValidatableControls();\n }\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n await this.#init();\n }\n\n #cancelHandler = (): void => {\n this.cancelCallback();\n };\n\n #changeConnectionHandler = async (): Promise<void> => {\n this.changeConnectionCallback({\n authenticationType: this.connectionData.authenticationType,\n serverUrl: this.connectionData.serverUrl,\n userName: this.connectionData.userName,\n userPassword: this.connectionData.userPassword\n });\n };\n\n #createHandler = async (): Promise<void> => {\n if (this.versionSelectedType !== \"Select\") {\n this.#kbVersionsIds = [];\n }\n this.createKBCallback({\n selectedKB: this.#selectedKbId,\n versionSelected: this.versionSelectedType,\n localKBName: this.localKbNameInputValue,\n versionList: this.#kbVersionsIds\n }).then((formSubmitResult: FormSubmitResult) => {\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n });\n };\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #filterValueChangedHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.filterValue = (event.detail as string).toLowerCase();\n this.kbsFilteredActionListModel = this.#kbsActionListModel.filter(\n (item: ActionListItemActionable) =>\n item.caption.toLowerCase().includes(this.filterValue)\n );\n };\n\n #init = async () => {\n await this.getGXserverKBsCallback({\n authenticationType: this.connectionData.authenticationType,\n serverUrl: this.connectionData.serverUrl,\n userName: this.connectionData.userName,\n userPassword: this.connectionData.userPassword\n }).then(result => {\n this.#kbsActionListModel = mapKbsModelToActionListModel(result);\n this.kbsFilteredActionListModel = this.#kbsActionListModel;\n this.filterValue = \"\";\n });\n };\n\n #initializeValidatableControls = () => {\n // populate validatableControls with the controls that could have errors.\n const validatableControls: HTMLElement[] = [this.#localKBNameEl];\n validatableControls.forEach(validatableControl => {\n if (validatableControl.id) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #inputLocalKbNameHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.localKbNameInputValue = event.detail as string;\n this.#kbNameAlreadyEditedByUser = true;\n };\n\n #selectedVersionHandler = async () => {\n if (this.selectKBVersionsCallback) {\n await this.selectKBVersionsCallback(this.#selectedKbId).then(result => {\n if (result?.length) {\n this.versionsValueInput = result.length\n .toString()\n .concat(this.#_componentLocale.kb.versionSelectedFieldValue);\n this.#kbVersionsIds = result.map(kbVersion =>\n kbVersion.id.toString()\n );\n }\n });\n }\n };\n\n #selectKbChangeHandler = (\n event: ChActionListRenderCustomEvent<ActionListItemModelExtended[]>\n ): void => {\n const item = event.detail[0]?.item as ActionListItemActionable;\n if (item === undefined) {\n this.enableSelectVersionsButton = false;\n this.#selectedKbId = undefined;\n return;\n }\n this.enableSelectVersionsButton = true;\n this.#selectedKbId = item.id;\n if (this.#kbNameAlreadyEditedByUser) {\n return;\n }\n this.localKbNameInputValue = item.caption;\n };\n\n #versionsChangedHandler = (event: CustomEvent<string>) => {\n this.versionSelectedType = event.detail as VersionOption;\n };\n\n #renderFooter = () => {\n return (\n <footer class=\"footer control-footer-with-border spacing-body-inline spacing-body-block-end\">\n <div class=\"buttons-spacer\">\n <button\n // cancel button\n class=\"button-secondary\"\n onClick={this.#cancelHandler}\n part=\"button button-cancel\"\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n\n <button\n // create kb button\n class=\"button-primary\"\n onClick={this.enableSelectVersionsButton && this.#createHandler}\n disabled={!this.enableSelectVersionsButton}\n part=\"button button-create-kb\"\n >\n {this.#_componentLocale.footer.createKb}\n </button>\n </div>\n </footer>\n );\n };\n\n render(): void {\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\n <section class=\"section\">\n <header class=\"header control-header-with-border space-body spacing-body-inline spacing-body-block-start\">\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.#_componentLocale.header.serverUrl}\n </label>\n <p>{this.connectionData.serverUrl}</p>\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\">{this.#_componentLocale.header.user}</label>\n <p>{this.connectionData.userName}</p>\n </div>\n\n <button\n class=\"button-tertiary button-change\"\n onClick={this.#changeConnectionHandler}\n >\n {this.#_componentLocale.header.change}\n </button>\n </header>\n\n <section class=\"main field-group spacing-body\">\n <ch-edit\n class=\"input search-kbs\"\n id=\"local-kb-name\"\n startImgSrc={this.#chSearchIcon}\n onInput={this.#filterValueChangedHandler}\n placeholder={this.#_componentLocale.kb.searchKbsPlaceholder}\n ref={el => (this.#searchKbsEl = el as HTMLChEditElement)}\n ></ch-edit>\n\n <ch-action-list-render\n selection=\"single\"\n class=\"list-box\"\n onSelectedItemsChange={this.#selectKbChangeHandler}\n model={this.kbsFilteredActionListModel}\n ></ch-action-list-render>\n\n <div class=\"versions-container field-group\">\n <ch-radio-group-render\n class=\"radio-group\"\n model={this.#versionsSelect}\n onChange={this.#versionsChangedHandler}\n value={this.#versionsSelect[0].value}\n ref={el =>\n (this.#versionSelectedTypeEl =\n el as HTMLChRadioGroupRenderElement)\n }\n ></ch-radio-group-render>\n\n {this.versionSelectedType === \"Select\" && (\n <div class=\"versions-container__item field-group\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"control-id-1\">\n {this.#_componentLocale.kb.versionsLabel}\n </label>\n <div class=\"versions-container__input\">\n <ch-edit\n class=\"input\"\n readonly\n placeholder={\n this.enableSelectVersionsButton\n ? this.#_componentLocale.kb.versionsPlaceholder\n : this.#_componentLocale.kb\n .versionsPlaceholderDisabled\n }\n value={this.versionsValueInput}\n ></ch-edit>\n <button\n class=\"button-tertiary button-icon-only\"\n onClick={this.#selectedVersionHandler}\n disabled={!this.enableSelectVersionsButton}\n >\n <ch-image\n src={this.#showMoreIcon}\n class=\"icon-sm\"\n ></ch-image>\n </button>\n </div>\n </div>\n </div>\n )}\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"localKbName\">\n {this.#_componentLocale.kb.localKbNameLabel}\n </label>\n <ch-edit\n // local kb name\n class=\"input\"\n id=\"local-kb-name\"\n value={this.localKbNameInputValue}\n onInput={this.#inputLocalKbNameHandler}\n placeholder={this.#_componentLocale.kb.localKbNamePlaceholder}\n ref={(el: HTMLChEditElement) =>\n (this.#localKBNameEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#localKBNameEl)}\n </div>\n </section>\n\n {this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type KBData = {\n id: string;\n name: string;\n};\n\nexport type KBVersion = {\n id: number;\n name: string;\n type: VersionType;\n};\n\nexport type ConnectionResultData = {\n formResult: FormSubmitResult;\n kbs: KBData[];\n};\n\nexport type KnowledgeBaseInfo = {\n selectedKB: string;\n versionSelected: VersionOption;\n localKBName: string;\n versionList: string[];\n};\n\nexport type VersionOption = \"Trunk\" | \"All\" | \"Select\";\n\nexport type VersionType = \"Branch\" | \"Frozen\";\n"],"version":3}
1
+ {"file":"gx-ide-create-kb-from-server.entry.js","mappings":"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","names":[],"sources":["src/components/team-dev/create-kb-from-server/helpers.ts","src/components/team-dev/create-kb-from-server/create-kb-from-server.scss?tag=gx-ide-create-kb-from-server&encapsulation=shadow","src/components/team-dev/create-kb-from-server/create-kb-from-server.tsx"],"sourcesContent":["import { ActionListItemModel } from \"@genexus/chameleon-controls-library\";\nimport { KBData } from \"./create-kb-from-server\";\n\nexport const mapKbsModelToActionListModel = (\n kbsData: KBData[]\n): ActionListItemModel[] => {\n const listBoxItems: ActionListItemModel[] = [];\n kbsData.forEach(kb => {\n listBoxItems.push({\n id: kb.id,\n type: \"actionable\",\n caption: kb.name\n });\n });\n return listBoxItems;\n};\n",":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.section {\n display: contents;\n}\n\n// - - - - - - - - - - -\n// Header\n// - - - - - - - - - - -\n\nheader {\n display: grid;\n grid-template-rows: max-content;\n grid-template-columns: 1fr 1fr max-content;\n}\n\n.button-change {\n align-self: center;\n justify-self: end;\n}\n\n// - - - - - - - - - - -\n// Main\n// - - - - - - - - - - -\n\n.main {\n display: grid;\n grid-template-columns: 1fr;\n grid-template-rows: max-content 1fr max-content max-content;\n}\n\n.search-kbs {\n inline-size: 50%;\n}\n\n.versions-container {\n grid-auto-rows: max-content;\n\n &__input {\n display: grid;\n grid-template-columns: 1fr max-content;\n gap: var(--mer-spacing--xs);\n }\n}\n","// Stencil\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n State,\n getAssetPath\n} from \"@stencil/core\";\n\n// Other Libraries\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport { config } from \"../../../common/config\";\nimport { GXServerConnectionData } from \"../connect-gx-server/connect-gx-server\";\nimport { FormSubmitResult } from \"../../../common/types\";\nimport {\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { Locale } from \"../../../common/locale\";\nimport { mapKbsModelToActionListModel } from \"./helpers\";\nimport {\n ActionListItemActionable,\n ActionListItemModel,\n ActionListItemModelExtended,\n ChActionListRenderCustomEvent,\n ChEditCustomEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"components/list-box\",\n \"components/tooltip\",\n \"chameleon/scrollbar\"\n];\n\n@Component({\n tag: \"gx-ide-create-kb-from-server\",\n styleUrl: \"create-kb-from-server.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/create-kb-from-server\"]\n})\nexport class GxIdeCreateKbFromServer {\n #chSearchIcon = getIconPath({\n category: \"system\",\n name: \"search\",\n colorType: \"on-surface\"\n });\n\n #showMoreIcon = getIconPath({\n category: \"gemini-tools\",\n name: \"show-more-horizontal\",\n colorType: \"on-elevation\"\n });\n\n #versionsSelect: RadioGroupItemModel[] = [\n { value: \"Trunk\", caption: \"Trunk Version\" },\n { value: \"All\", caption: \"All Versions\" }\n // { value: \"Select\", caption: \"Select Version\" } TODO: display once \"gx-ide-select-kb-versions\" is ready.\n ];\n\n [key: string]: any;\n\n #_componentLocale: any;\n #kbsActionListModel: ActionListItemModel[] = [];\n #kbVersionsIds: string[] = [];\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/create-kb-from-server/shortcuts.json`\n );\n #selectedKbId: string;\n #kbNameAlreadyEditedByUser: boolean = false;\n\n #searchKbsEl!: HTMLChEditElement;\n #versionSelectedTypeEl: HTMLChRadioGroupRenderElement;\n\n @Element() el: HTMLGxIdeCreateKbFromServerElement;\n\n #localKBNameEl!: HTMLChEditElement;\n\n /**\n * State to enable/disable the select versions button\n */\n @State() enableSelectVersionsButton: boolean = false;\n\n /**\n * The current kbn name value.\n */\n @State() localKbNameInputValue: string = \"\";\n\n /**\n * State to store the filter input value to filter the list-box\n */\n @State() filterValue: string = \"\";\n\n /**\n * KBs filtered\n */\n @State() kbsFilteredActionListModel: ActionListItemModel[] = [];\n\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * The version selected type\n */\n @State() versionSelectedType: VersionOption;\n\n /**\n * String value to show the number of versions selected (\"N versions selected\")\n */\n @State() versionsValueInput: string = \"\";\n\n /**\n * Set of data required when executing any of the callbacks that require a connection to the server.\n */\n @Prop() readonly connectionData: GXServerConnectionData;\n\n /**\n * Callback that is invoked when the dialog is closed\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * The host reopens the gx-ide-connect-server login modal with the previous data, and closes the current modal\n */\n @Prop() readonly changeConnectionCallback: (\n data: GXServerConnectionData\n ) => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Create KB' button is pressed. Receives the user's parameter selection to create the remote KB locally and ends the dialog.\n */\n @Prop() readonly createKBCallback!: (\n kbInfo: KnowledgeBaseInfo\n ) => Promise<FormSubmitResult>;\n\n /**\n * Callback that must be invoked when invoking the dialog\n */\n @Prop() readonly getGXserverKBsCallback!: (\n data: GXServerConnectionData\n ) => Promise<KBData[]>;\n\n /**\n * Callback invoked by pressing the ellipsis in the version selector. Receives the KB selected by the user, and displays the version selector dialog. Returns a list of versions chosen by the user.\n */\n @Prop() readonly selectKBVersionsCallback: (\n selectedKB: string\n ) => Promise<KBVersion[]>;\n\n componentDidLoad() {\n (this.#searchKbsEl as HTMLElement).focus();\n\n this.versionSelectedType = this.#versionSelectedTypeEl\n .value as VersionOption;\n\n this.#initializeValidatableControls();\n }\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n await this.#init();\n }\n\n #cancelHandler = (): void => {\n this.cancelCallback();\n };\n\n #changeConnectionHandler = async (): Promise<void> => {\n this.changeConnectionCallback({\n authenticationType: this.connectionData.authenticationType,\n serverUrl: this.connectionData.serverUrl,\n userName: this.connectionData.userName,\n userPassword: this.connectionData.userPassword\n });\n };\n\n #createHandler = async (): Promise<void> => {\n if (this.versionSelectedType !== \"Select\") {\n this.#kbVersionsIds = [];\n }\n this.createKBCallback({\n selectedKB: this.#selectedKbId,\n versionSelected: this.versionSelectedType,\n localKBName: this.localKbNameInputValue,\n versionList: this.#kbVersionsIds\n }).then((formSubmitResult: FormSubmitResult) => {\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n });\n };\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #filterValueChangedHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.filterValue = (event.detail as string).toLowerCase();\n this.kbsFilteredActionListModel = this.#kbsActionListModel.filter(\n (item: ActionListItemActionable) =>\n item.caption.toLowerCase().includes(this.filterValue)\n );\n };\n\n #init = async () => {\n await this.getGXserverKBsCallback({\n authenticationType: this.connectionData.authenticationType,\n serverUrl: this.connectionData.serverUrl,\n userName: this.connectionData.userName,\n userPassword: this.connectionData.userPassword\n }).then(result => {\n this.#kbsActionListModel = mapKbsModelToActionListModel(result);\n this.kbsFilteredActionListModel = this.#kbsActionListModel;\n this.filterValue = \"\";\n });\n };\n\n #initializeValidatableControls = () => {\n // populate validatableControls with the controls that could have errors.\n const validatableControls: HTMLElement[] = [this.#localKBNameEl];\n validatableControls.forEach(validatableControl => {\n if (validatableControl.id) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #inputLocalKbNameHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.localKbNameInputValue = event.detail as string;\n this.#kbNameAlreadyEditedByUser = true;\n };\n\n #selectedVersionHandler = async () => {\n if (this.selectKBVersionsCallback) {\n await this.selectKBVersionsCallback(this.#selectedKbId).then(result => {\n if (result?.length) {\n this.versionsValueInput = result.length\n .toString()\n .concat(this.#_componentLocale.kb.versionSelectedFieldValue);\n this.#kbVersionsIds = result.map(kbVersion =>\n kbVersion.id.toString()\n );\n }\n });\n }\n };\n\n #selectKbChangeHandler = (\n event: ChActionListRenderCustomEvent<ActionListItemModelExtended[]>\n ): void => {\n const item = event.detail[0]?.item as ActionListItemActionable;\n if (item === undefined) {\n this.enableSelectVersionsButton = false;\n this.#selectedKbId = undefined;\n return;\n }\n this.enableSelectVersionsButton = true;\n this.#selectedKbId = item.id;\n if (this.#kbNameAlreadyEditedByUser) {\n return;\n }\n this.localKbNameInputValue = item.caption;\n };\n\n #versionsChangedHandler = (event: CustomEvent<string>) => {\n this.versionSelectedType = event.detail as VersionOption;\n };\n\n #renderFooter = () => {\n return (\n <footer class=\"footer control-footer-with-border spacing-body-inline spacing-body-block-end\">\n <div class=\"buttons-spacer\">\n <button\n // cancel button\n class=\"button-secondary\"\n onClick={this.#cancelHandler}\n part=\"button button-cancel\"\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n\n <button\n // create kb button\n class=\"button-primary\"\n onClick={this.enableSelectVersionsButton && this.#createHandler}\n disabled={!this.enableSelectVersionsButton}\n part=\"button button-create-kb\"\n >\n {this.#_componentLocale.footer.createKb}\n </button>\n </div>\n </footer>\n );\n };\n\n render(): void {\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\n <section class=\"section\">\n <header class=\"header control-header-with-border space-body spacing-body-inline spacing-body-block-start\">\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.#_componentLocale.header.serverUrl}\n </label>\n <p>{this.connectionData.serverUrl}</p>\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\">{this.#_componentLocale.header.user}</label>\n <p>{this.connectionData.userName}</p>\n </div>\n\n <button\n class=\"button-tertiary button-change\"\n onClick={this.#changeConnectionHandler}\n >\n {this.#_componentLocale.header.change}\n </button>\n </header>\n\n <section class=\"main field-group spacing-body\">\n <ch-edit\n class=\"input search-kbs\"\n id=\"local-kb-name\"\n startImgSrc={this.#chSearchIcon}\n onInput={this.#filterValueChangedHandler}\n placeholder={this.#_componentLocale.kb.searchKbsPlaceholder}\n ref={el => (this.#searchKbsEl = el as HTMLChEditElement)}\n ></ch-edit>\n\n <ch-action-list-render\n selection=\"single\"\n class=\"list-box\"\n onSelectedItemsChange={this.#selectKbChangeHandler}\n model={this.kbsFilteredActionListModel}\n ></ch-action-list-render>\n\n <div class=\"versions-container field-group\">\n <ch-radio-group-render\n class=\"radio-group\"\n model={this.#versionsSelect}\n onChange={this.#versionsChangedHandler}\n value={this.#versionsSelect[0].value}\n ref={el =>\n (this.#versionSelectedTypeEl =\n el as HTMLChRadioGroupRenderElement)\n }\n ></ch-radio-group-render>\n\n {this.versionSelectedType === \"Select\" && (\n <div class=\"versions-container__item field-group\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"control-id-1\">\n {this.#_componentLocale.kb.versionsLabel}\n </label>\n <div class=\"versions-container__input\">\n <ch-edit\n class=\"input\"\n readonly\n placeholder={\n this.enableSelectVersionsButton\n ? this.#_componentLocale.kb.versionsPlaceholder\n : this.#_componentLocale.kb\n .versionsPlaceholderDisabled\n }\n value={this.versionsValueInput}\n ></ch-edit>\n <button\n class=\"button-tertiary button-icon-only\"\n onClick={this.#selectedVersionHandler}\n disabled={!this.enableSelectVersionsButton}\n >\n <ch-image\n src={this.#showMoreIcon}\n class=\"icon-sm\"\n ></ch-image>\n </button>\n </div>\n </div>\n </div>\n )}\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"localKbName\">\n {this.#_componentLocale.kb.localKbNameLabel}\n </label>\n <ch-edit\n // local kb name\n class=\"input\"\n id=\"local-kb-name\"\n value={this.localKbNameInputValue}\n onInput={this.#inputLocalKbNameHandler}\n placeholder={this.#_componentLocale.kb.localKbNamePlaceholder}\n ref={(el: HTMLChEditElement) =>\n (this.#localKBNameEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#localKBNameEl)}\n </div>\n </section>\n\n {this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type KBData = {\n id: string;\n name: string;\n};\n\nexport type KBVersion = {\n id: number;\n name: string;\n type: VersionType;\n};\n\nexport type ConnectionResultData = {\n formResult: FormSubmitResult;\n kbs: KBData[];\n};\n\nexport type KnowledgeBaseInfo = {\n selectedKB: string;\n versionSelected: VersionOption;\n localKBName: string;\n versionList: string[];\n};\n\nexport type VersionOption = \"Trunk\" | \"All\" | \"Select\";\n\nexport type VersionType = \"Branch\" | \"Frozen\";\n"],"version":3}
@@ -1,5 +1,6 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement } from './index-93411ea2.js';
2
- import { g as getIconPath } from './MERCURY_ASSETS-91a1db9c.js';
2
+ import { g as getIconPath } from './assets-manager-0d129105.js';
3
+ import './MERCURY_ASSETS-9e4e8ebc.js';
3
4
  import { L as Locale } from './locale-e5107fad.js';
4
5
 
5
6
  /**