@genexus/genexus-ide-ui 1.1.28 → 1.1.30

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 (414) hide show
  1. package/dist/cjs/{common-8e7923c5.js → common-b913e04c.js} +2 -2
  2. package/dist/cjs/{common-8e7923c5.js.map → common-b913e04c.js.map} +1 -1
  3. package/dist/cjs/{config-6a768514.js → config-140f58fe.js} +4 -2
  4. package/dist/cjs/config-140f58fe.js.map +1 -0
  5. package/dist/cjs/genexus-ide-ui.cjs.js +2 -2
  6. package/dist/cjs/gx-ide-about.cjs.entry.js +1 -1
  7. package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js +1 -1
  8. package/dist/cjs/gx-ide-ai-message.cjs.entry.js +2 -2
  9. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +2 -2
  10. package/dist/cjs/gx-ide-bpm-assign-roles.cjs.entry.js +2 -2
  11. package/dist/cjs/gx-ide-bpm-export-xpdl.cjs.entry.js +2 -2
  12. package/dist/cjs/gx-ide-bpm-import-files.cjs.entry.js +3 -3
  13. package/dist/cjs/gx-ide-bpm-import-gxpm.cjs.entry.js +2 -2
  14. package/dist/cjs/gx-ide-bpm-objects-selector.cjs.entry.js +3 -3
  15. package/dist/cjs/gx-ide-bpm-sync-gam-roles.cjs.entry.js +1 -1
  16. package/dist/cjs/gx-ide-bpm-task-documents.cjs.entry.js +1 -1
  17. package/dist/cjs/gx-ide-bpm-timer-duration.cjs.entry.js +2 -2
  18. package/dist/cjs/gx-ide-card.cjs.entry.js +1 -1
  19. package/dist/cjs/gx-ide-chat-container_2.cjs.entry.js +1 -1
  20. package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js +18 -51
  21. package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js.map +1 -1
  22. package/dist/cjs/gx-ide-container_2.cjs.entry.js +1 -1
  23. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +29 -15
  24. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
  25. package/dist/cjs/gx-ide-curl-inspector.cjs.entry.js +2 -2
  26. package/dist/cjs/gx-ide-current-user-info.cjs.entry.js +1 -1
  27. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +2 -2
  28. package/dist/cjs/gx-ide-data-selector.cjs.entry.js +2 -2
  29. package/dist/cjs/gx-ide-data-type-selector.cjs.entry.js +1 -1
  30. package/dist/cjs/gx-ide-deployment-tool.cjs.entry.js +1 -1
  31. package/dist/cjs/gx-ide-design-import.cjs.entry.js +2 -2
  32. package/dist/cjs/gx-ide-directory-selector.cjs.entry.js +1 -1
  33. package/dist/cjs/gx-ide-edit-module-server.cjs.entry.js +1 -1
  34. package/dist/cjs/gx-ide-empty-state.cjs.entry.js +1 -1
  35. package/dist/cjs/gx-ide-entity-selector.cjs.entry.js +1 -1
  36. package/dist/cjs/gx-ide-file-item.cjs.entry.js +1 -1
  37. package/dist/cjs/gx-ide-file-uploader.cjs.entry.js +1 -1
  38. package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js +1 -1
  39. package/dist/cjs/gx-ide-json-import.cjs.entry.js +2 -2
  40. package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js +1 -1
  41. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +1 -1
  42. package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js +1 -1
  43. package/dist/cjs/gx-ide-loader.cjs.entry.js +1 -1
  44. package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js +2 -2
  45. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js +2 -2
  46. package/dist/cjs/gx-ide-navigation-report.cjs.entry.js +1 -1
  47. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +4 -4
  48. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +4 -4
  49. package/dist/cjs/gx-ide-new-object.cjs.entry.js +2 -2
  50. package/dist/cjs/gx-ide-new-version.cjs.entry.js +2 -2
  51. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +3 -3
  52. package/dist/cjs/gx-ide-open-api-import.cjs.entry.js +1 -1
  53. package/dist/cjs/gx-ide-plugin-details.cjs.entry.js +1 -1
  54. package/dist/cjs/gx-ide-plugin-explorer.cjs.entry.js +2 -2
  55. package/dist/cjs/gx-ide-references.cjs.entry.js +1 -1
  56. package/dist/cjs/gx-ide-sc-chat-container.cjs.entry.js +1 -1
  57. package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js +14 -1
  58. package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js.map +1 -1
  59. package/dist/cjs/gx-ide-select-user-team.cjs.entry.js +1 -1
  60. package/dist/cjs/gx-ide-server-selector.cjs.entry.js +253 -0
  61. package/dist/cjs/gx-ide-server-selector.cjs.entry.js.map +1 -0
  62. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +2 -2
  63. package/dist/cjs/gx-ide-sign-in-team.cjs.entry.js +1 -1
  64. package/dist/cjs/gx-ide-sign-in.cjs.entry.js +1 -1
  65. package/dist/cjs/gx-ide-splash.cjs.entry.js +2 -2
  66. package/dist/cjs/gx-ide-start-page.cjs.entry.js +1 -1
  67. package/dist/cjs/gx-ide-status-buttons.cjs.entry.js +1 -1
  68. package/dist/cjs/gx-ide-switch-panel.cjs.entry.js +1 -1
  69. package/dist/cjs/gx-ide-switcher.cjs.entry.js +1 -1
  70. package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js +2 -2
  71. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +5 -5
  72. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
  73. package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js +4 -4
  74. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +3 -3
  75. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +2 -2
  76. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +2 -2
  77. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +3 -3
  78. package/dist/cjs/gx-ide-template.cjs.entry.js +2 -2
  79. package/dist/cjs/gx-ide-test.cjs.entry.js +1 -1
  80. package/dist/cjs/gx-ide-top-bar.cjs.entry.js +1 -1
  81. package/dist/cjs/gx-ide-welcome-page.cjs.entry.js +1 -1
  82. package/dist/cjs/gx-ide-wf-settings.cjs.entry.js +2 -2
  83. package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js +2 -2
  84. package/dist/cjs/gx-ide-ww-files.cjs.entry.js +3 -3
  85. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +4 -4
  86. package/dist/cjs/{helpers-8e625231.js → helpers-21c9cd02.js} +2 -2
  87. package/dist/cjs/{helpers-8e625231.js.map → helpers-21c9cd02.js.map} +1 -1
  88. package/dist/cjs/{index-408303ce.js → index-2f1471c9.js} +61 -2
  89. package/dist/cjs/index-2f1471c9.js.map +1 -0
  90. package/dist/cjs/loader.cjs.js +2 -2
  91. package/dist/cjs/{render-list-item-5c33517f.js → render-list-item-f956ec79.js} +2 -2
  92. package/dist/cjs/{render-list-item-5c33517f.js.map → render-list-item-f956ec79.js.map} +1 -1
  93. package/dist/cjs/{utilities-d0de7967.js → utilities-11683cc0.js} +2 -2
  94. package/dist/cjs/{utilities-d0de7967.js.map → utilities-11683cc0.js.map} +1 -1
  95. package/dist/collection/collection-manifest.json +1 -0
  96. package/dist/collection/common/config.js +3 -1
  97. package/dist/collection/common/config.js.map +1 -1
  98. package/dist/collection/components/select-kb-items/select-kb-items.js +34 -0
  99. package/dist/collection/components/select-kb-items/select-kb-items.js.map +1 -1
  100. package/dist/collection/components/team-dev/commit/commit.css +4 -0
  101. package/dist/collection/components/team-dev/connect-gx-server/connect-gx-server.css +4 -0
  102. package/dist/collection/components/team-dev/connect-gx-server/connect-gx-server.js +23 -66
  103. package/dist/collection/components/team-dev/connect-gx-server/connect-gx-server.js.map +1 -1
  104. package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.css +1 -0
  105. package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js +29 -14
  106. package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js.map +1 -1
  107. package/dist/collection/components/team-dev/create-kb-from-server/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.en.json +6 -1
  108. package/dist/collection/components/team-dev/create-kb-from-server/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.ja.json +6 -1
  109. package/dist/collection/components/team-dev/create-kb-from-server/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.zh.json +6 -1
  110. package/dist/collection/components/team-dev/server-selector/gx-ide-assets/server-selector/langs/server-selector.lang.en.json +32 -0
  111. package/dist/collection/components/team-dev/server-selector/gx-ide-assets/server-selector/langs/server-selector.lang.ja.json +32 -0
  112. package/dist/collection/components/team-dev/server-selector/gx-ide-assets/server-selector/langs/server-selector.lang.zh.json +32 -0
  113. package/dist/collection/components/team-dev/server-selector/server-selector.css +90 -0
  114. package/dist/collection/components/team-dev/server-selector/server-selector.js +364 -0
  115. package/dist/collection/components/team-dev/server-selector/server-selector.js.map +1 -0
  116. package/dist/collection/components/team-dev/share-kb/share-kb.js +1 -1
  117. package/dist/collection/testing/locale.e2e.js +1 -0
  118. package/dist/collection/testing/locale.e2e.js.map +1 -1
  119. package/dist/components/config.js +3 -1
  120. package/dist/components/config.js.map +1 -1
  121. package/dist/components/gx-ide-connect-gx-server.js +17 -53
  122. package/dist/components/gx-ide-connect-gx-server.js.map +1 -1
  123. package/dist/components/gx-ide-create-kb-from-server.js +42 -15
  124. package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
  125. package/dist/components/gx-ide-server-selector.d.ts +11 -0
  126. package/dist/components/gx-ide-server-selector.js +290 -0
  127. package/dist/components/gx-ide-server-selector.js.map +1 -0
  128. package/dist/components/gx-ide-team-dev-commit.js +1 -1
  129. package/dist/components/gx-ide-team-dev-commit.js.map +1 -1
  130. package/dist/components/select-kb-items.js +15 -1
  131. package/dist/components/select-kb-items.js.map +1 -1
  132. package/dist/esm/{common-c8407100.js → common-0697b339.js} +2 -2
  133. package/dist/esm/{common-c8407100.js.map → common-0697b339.js.map} +1 -1
  134. package/dist/esm/{config-1ef9d75a.js → config-73a57a22.js} +4 -2
  135. package/dist/esm/config-73a57a22.js.map +1 -0
  136. package/dist/esm/genexus-ide-ui.js +3 -3
  137. package/dist/esm/gx-ide-about.entry.js +1 -1
  138. package/dist/esm/gx-ide-ai-assistant.entry.js +1 -1
  139. package/dist/esm/gx-ide-ai-message.entry.js +2 -2
  140. package/dist/esm/gx-ide-bpm-app-declaration.entry.js +2 -2
  141. package/dist/esm/gx-ide-bpm-assign-roles.entry.js +2 -2
  142. package/dist/esm/gx-ide-bpm-export-xpdl.entry.js +2 -2
  143. package/dist/esm/gx-ide-bpm-import-files.entry.js +3 -3
  144. package/dist/esm/gx-ide-bpm-import-gxpm.entry.js +2 -2
  145. package/dist/esm/gx-ide-bpm-objects-selector.entry.js +3 -3
  146. package/dist/esm/gx-ide-bpm-sync-gam-roles.entry.js +1 -1
  147. package/dist/esm/gx-ide-bpm-task-documents.entry.js +1 -1
  148. package/dist/esm/gx-ide-bpm-timer-duration.entry.js +2 -2
  149. package/dist/esm/gx-ide-card.entry.js +1 -1
  150. package/dist/esm/gx-ide-chat-container_2.entry.js +1 -1
  151. package/dist/esm/gx-ide-connect-gx-server.entry.js +18 -51
  152. package/dist/esm/gx-ide-connect-gx-server.entry.js.map +1 -1
  153. package/dist/esm/gx-ide-container_2.entry.js +1 -1
  154. package/dist/esm/gx-ide-create-kb-from-server.entry.js +29 -15
  155. package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
  156. package/dist/esm/gx-ide-curl-inspector.entry.js +2 -2
  157. package/dist/esm/gx-ide-current-user-info.entry.js +1 -1
  158. package/dist/esm/gx-ide-dashboard-home.entry.js +2 -2
  159. package/dist/esm/gx-ide-data-selector.entry.js +2 -2
  160. package/dist/esm/gx-ide-data-type-selector.entry.js +1 -1
  161. package/dist/esm/gx-ide-deployment-tool.entry.js +1 -1
  162. package/dist/esm/gx-ide-design-import.entry.js +2 -2
  163. package/dist/esm/gx-ide-directory-selector.entry.js +1 -1
  164. package/dist/esm/gx-ide-edit-module-server.entry.js +1 -1
  165. package/dist/esm/gx-ide-empty-state.entry.js +1 -1
  166. package/dist/esm/gx-ide-entity-selector.entry.js +1 -1
  167. package/dist/esm/gx-ide-file-item.entry.js +1 -1
  168. package/dist/esm/gx-ide-file-uploader.entry.js +1 -1
  169. package/dist/esm/gx-ide-gam-installation-settings.entry.js +1 -1
  170. package/dist/esm/gx-ide-json-import.entry.js +2 -2
  171. package/dist/esm/gx-ide-kb-manager-export.entry.js +1 -1
  172. package/dist/esm/gx-ide-kb-manager-import.entry.js +1 -1
  173. package/dist/esm/gx-ide-list-selector_2.entry.js +1 -1
  174. package/dist/esm/gx-ide-loader.entry.js +1 -1
  175. package/dist/esm/gx-ide-manage-module-references-v2.entry.js +2 -2
  176. package/dist/esm/gx-ide-manage-module-references.entry.js +2 -2
  177. package/dist/esm/gx-ide-navigation-report.entry.js +1 -1
  178. package/dist/esm/gx-ide-new-environment.entry.js +4 -4
  179. package/dist/esm/gx-ide-new-kb.entry.js +4 -4
  180. package/dist/esm/gx-ide-new-object.entry.js +2 -2
  181. package/dist/esm/gx-ide-new-version.entry.js +2 -2
  182. package/dist/esm/gx-ide-object-selector.entry.js +3 -3
  183. package/dist/esm/gx-ide-open-api-import.entry.js +1 -1
  184. package/dist/esm/gx-ide-plugin-details.entry.js +1 -1
  185. package/dist/esm/gx-ide-plugin-explorer.entry.js +2 -2
  186. package/dist/esm/gx-ide-references.entry.js +1 -1
  187. package/dist/esm/gx-ide-sc-chat-container.entry.js +1 -1
  188. package/dist/esm/gx-ide-select-kb-items.entry.js +14 -1
  189. package/dist/esm/gx-ide-select-kb-items.entry.js.map +1 -1
  190. package/dist/esm/gx-ide-select-user-team.entry.js +1 -1
  191. package/dist/esm/gx-ide-server-selector.entry.js +249 -0
  192. package/dist/esm/gx-ide-server-selector.entry.js.map +1 -0
  193. package/dist/esm/gx-ide-share-kb.entry.js +2 -2
  194. package/dist/esm/gx-ide-sign-in-team.entry.js +1 -1
  195. package/dist/esm/gx-ide-sign-in.entry.js +1 -1
  196. package/dist/esm/gx-ide-splash.entry.js +2 -2
  197. package/dist/esm/gx-ide-start-page.entry.js +1 -1
  198. package/dist/esm/gx-ide-status-buttons.entry.js +1 -1
  199. package/dist/esm/gx-ide-switch-panel.entry.js +1 -1
  200. package/dist/esm/gx-ide-switcher.entry.js +1 -1
  201. package/dist/esm/gx-ide-team-dev-bring-changes.entry.js +2 -2
  202. package/dist/esm/gx-ide-team-dev-commit.entry.js +5 -5
  203. package/dist/esm/gx-ide-team-dev-commit.entry.js.map +1 -1
  204. package/dist/esm/gx-ide-team-dev-history.entry.js +4 -4
  205. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +3 -3
  206. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +2 -2
  207. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +2 -2
  208. package/dist/esm/gx-ide-team-dev-update.entry.js +3 -3
  209. package/dist/esm/gx-ide-template.entry.js +2 -2
  210. package/dist/esm/gx-ide-test.entry.js +1 -1
  211. package/dist/esm/gx-ide-top-bar.entry.js +1 -1
  212. package/dist/esm/gx-ide-welcome-page.entry.js +1 -1
  213. package/dist/esm/gx-ide-wf-settings.entry.js +2 -2
  214. package/dist/esm/gx-ide-ww-attributes.entry.js +2 -2
  215. package/dist/esm/gx-ide-ww-files.entry.js +3 -3
  216. package/dist/esm/gx-ide-ww-images.entry.js +4 -4
  217. package/dist/esm/{helpers-37946d65.js → helpers-7960f084.js} +2 -2
  218. package/dist/esm/{helpers-37946d65.js.map → helpers-7960f084.js.map} +1 -1
  219. package/dist/esm/{index-25ff5600.js → index-eace714c.js} +61 -3
  220. package/dist/esm/index-eace714c.js.map +1 -0
  221. package/dist/esm/loader.js +3 -3
  222. package/dist/esm/{render-list-item-b79501ca.js → render-list-item-9d604b22.js} +2 -2
  223. package/dist/esm/{render-list-item-b79501ca.js.map → render-list-item-9d604b22.js.map} +1 -1
  224. package/dist/esm/{utilities-76a18030.js → utilities-482e01e6.js} +2 -2
  225. package/dist/esm/{utilities-76a18030.js.map → utilities-482e01e6.js.map} +1 -1
  226. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +3 -3
  227. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  228. package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.en.json +6 -1
  229. package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.ja.json +6 -1
  230. package/dist/genexus-ide-ui/gx-ide-assets/create-kb-from-server/langs/create-kb-from-server.lang.zh.json +6 -1
  231. package/dist/genexus-ide-ui/gx-ide-assets/server-selector/langs/server-selector.lang.en.json +32 -0
  232. package/dist/genexus-ide-ui/gx-ide-assets/server-selector/langs/server-selector.lang.ja.json +32 -0
  233. package/dist/genexus-ide-ui/gx-ide-assets/server-selector/langs/server-selector.lang.zh.json +32 -0
  234. package/dist/genexus-ide-ui/{p-ba9b9aa5.entry.js → p-00e51225.entry.js} +3 -3
  235. package/dist/genexus-ide-ui/{p-34af745b.entry.js → p-0391a478.entry.js} +3 -3
  236. package/dist/genexus-ide-ui/p-0c81d013.entry.js +17 -0
  237. package/dist/genexus-ide-ui/{p-1622e339.entry.js → p-13630aa2.entry.js} +2 -2
  238. package/dist/genexus-ide-ui/{p-29db37fd.entry.js → p-137130ad.entry.js} +2 -2
  239. package/dist/genexus-ide-ui/{p-04597fd0.entry.js → p-1477d49a.entry.js} +2 -2
  240. package/dist/genexus-ide-ui/{p-8657d13c.entry.js → p-17b54532.entry.js} +2 -2
  241. package/dist/genexus-ide-ui/{p-ddbd4891.entry.js → p-198a7cce.entry.js} +26 -14
  242. package/dist/genexus-ide-ui/p-198a7cce.entry.js.map +1 -0
  243. package/dist/genexus-ide-ui/{p-a92f1884.entry.js → p-20032d70.entry.js} +2 -2
  244. package/dist/genexus-ide-ui/{p-e27f0e14.entry.js → p-212ca306.entry.js} +4 -4
  245. package/dist/genexus-ide-ui/p-26bc0884.entry.js +17 -0
  246. package/dist/genexus-ide-ui/{p-7f756647.entry.js → p-2c6ab8f4.entry.js} +3 -3
  247. package/dist/genexus-ide-ui/{p-6c5cc7e2.js → p-2ee77587.js} +2 -2
  248. package/dist/genexus-ide-ui/{p-149e771e.entry.js → p-2fe7ffc8.entry.js} +2 -2
  249. package/dist/genexus-ide-ui/{p-52d48fba.entry.js → p-3817c664.entry.js} +4 -4
  250. package/dist/genexus-ide-ui/{p-e267e84e.entry.js → p-38f135a5.entry.js} +3 -3
  251. package/dist/genexus-ide-ui/{p-832ec678.entry.js → p-3917d6c4.entry.js} +2 -2
  252. package/dist/genexus-ide-ui/{p-9e15d58d.entry.js → p-3d7ed559.entry.js} +4 -4
  253. package/dist/genexus-ide-ui/{p-13738332.js → p-44e5e972.js} +4 -2
  254. package/dist/genexus-ide-ui/p-44e5e972.js.map +1 -0
  255. package/dist/genexus-ide-ui/{p-2e559ead.entry.js → p-46874948.entry.js} +2 -2
  256. package/dist/genexus-ide-ui/{p-888d029f.entry.js → p-47f78f65.entry.js} +3 -3
  257. package/dist/genexus-ide-ui/{p-e0eda984.entry.js → p-4c37ff28.entry.js} +3 -3
  258. package/dist/genexus-ide-ui/{p-7a8aeb4e.entry.js → p-4cc2b3e6.entry.js} +2 -2
  259. package/dist/genexus-ide-ui/{p-df148798.entry.js → p-4dd3af73.entry.js} +3 -3
  260. package/dist/genexus-ide-ui/{p-1bb1c9cc.entry.js → p-4faee913.entry.js} +2 -2
  261. package/dist/genexus-ide-ui/{p-541c43a2.entry.js → p-50fad6eb.entry.js} +3 -3
  262. package/dist/genexus-ide-ui/{p-74882b8f.entry.js → p-54946b5e.entry.js} +4 -4
  263. package/dist/genexus-ide-ui/{p-6c0cc0fc.entry.js → p-5624d287.entry.js} +3 -3
  264. package/dist/genexus-ide-ui/{p-c3400671.entry.js → p-56308ae7.entry.js} +3 -3
  265. package/dist/genexus-ide-ui/{p-a5de63cc.entry.js → p-56c0c556.entry.js} +2 -2
  266. package/dist/genexus-ide-ui/{p-eea24d19.entry.js → p-57b8dd3d.entry.js} +3 -3
  267. package/dist/genexus-ide-ui/{p-45267d6e.entry.js → p-60302626.entry.js} +2 -2
  268. package/dist/genexus-ide-ui/{p-36e62da4.entry.js → p-61343e93.entry.js} +2 -2
  269. package/dist/genexus-ide-ui/{p-1191a6f0.entry.js → p-614467b4.entry.js} +2 -2
  270. package/dist/genexus-ide-ui/{p-5770d8b7.entry.js → p-64dbc4c0.entry.js} +2 -2
  271. package/dist/genexus-ide-ui/{p-e94c0ad6.entry.js → p-65555f37.entry.js} +2 -2
  272. package/dist/genexus-ide-ui/{p-e40929cd.entry.js → p-68ff4ac9.entry.js} +4 -4
  273. package/dist/genexus-ide-ui/{p-7ba4e229.entry.js → p-6945a7ad.entry.js} +3 -3
  274. package/dist/genexus-ide-ui/{p-f15c84ab.entry.js → p-69da0cd9.entry.js} +3 -3
  275. package/dist/genexus-ide-ui/{p-3090813a.entry.js → p-6e01f5a5.entry.js} +2 -2
  276. package/dist/genexus-ide-ui/{p-44eacccd.entry.js → p-70526bf3.entry.js} +3 -3
  277. package/dist/genexus-ide-ui/{p-06fbe725.entry.js → p-73b1bfba.entry.js} +2 -2
  278. package/dist/genexus-ide-ui/{p-5cb98d5b.js → p-790a3088.js} +7 -7
  279. package/dist/genexus-ide-ui/{p-7de1daee.entry.js → p-7fe4387b.entry.js} +3 -3
  280. package/dist/genexus-ide-ui/{p-0e2da68a.entry.js → p-80e49324.entry.js} +2 -2
  281. package/dist/genexus-ide-ui/{p-847cd613.entry.js → p-833ae3bf.entry.js} +3 -3
  282. package/dist/genexus-ide-ui/{p-61c8d171.entry.js → p-891faf90.entry.js} +2 -2
  283. package/dist/genexus-ide-ui/{p-fb62d808.entry.js → p-898712c4.entry.js} +2 -2
  284. package/dist/genexus-ide-ui/{p-cd8831e4.entry.js → p-8c125495.entry.js} +3 -3
  285. package/dist/genexus-ide-ui/{p-7c2a9252.js → p-8c15538c.js} +2 -2
  286. package/dist/genexus-ide-ui/{p-de83b5d7.entry.js → p-8c1ee4d9.entry.js} +3 -3
  287. package/dist/genexus-ide-ui/{p-0090f914.js → p-8c2e9df4.js} +2 -2
  288. package/dist/genexus-ide-ui/{p-78d65da3.entry.js → p-8d570fd2.entry.js} +8 -8
  289. package/dist/genexus-ide-ui/{p-4cafeee4.entry.js → p-90fd4f83.entry.js} +2 -2
  290. package/dist/genexus-ide-ui/p-923744e7.entry.js +415 -0
  291. package/dist/genexus-ide-ui/p-923744e7.entry.js.map +1 -0
  292. package/dist/genexus-ide-ui/{p-987081c1.entry.js → p-952d84f8.entry.js} +6 -6
  293. package/dist/genexus-ide-ui/p-952d84f8.entry.js.map +1 -0
  294. package/dist/genexus-ide-ui/{p-4406e156.js → p-97107ecc.js} +147 -87
  295. package/dist/genexus-ide-ui/p-97107ecc.js.map +1 -0
  296. package/dist/genexus-ide-ui/{p-693be6bb.entry.js → p-9ac4aaa0.entry.js} +2 -2
  297. package/dist/genexus-ide-ui/{p-afd84bc7.entry.js → p-9b1550be.entry.js} +119 -96
  298. package/dist/genexus-ide-ui/p-9b1550be.entry.js.map +1 -0
  299. package/dist/genexus-ide-ui/{p-9d5dc6a7.entry.js → p-9d1316d4.entry.js} +3 -3
  300. package/dist/genexus-ide-ui/{p-eb3caba5.entry.js → p-a5b30dc7.entry.js} +5 -5
  301. package/dist/genexus-ide-ui/{p-9e8a71db.entry.js → p-ac026635.entry.js} +2 -2
  302. package/dist/genexus-ide-ui/{p-b3aa0ecb.entry.js → p-aebf9728.entry.js} +2 -2
  303. package/dist/genexus-ide-ui/{p-f5157be1.entry.js → p-b2854730.entry.js} +4 -4
  304. package/dist/genexus-ide-ui/{p-a7194c97.entry.js → p-b7aafbf6.entry.js} +2 -2
  305. package/dist/genexus-ide-ui/{p-2e8b3151.entry.js → p-b80bd861.entry.js} +2 -2
  306. package/dist/genexus-ide-ui/{p-7884efd9.entry.js → p-bb0cdfe6.entry.js} +3 -3
  307. package/dist/genexus-ide-ui/{p-3d143a80.entry.js → p-c1ad1cc6.entry.js} +3 -3
  308. package/dist/genexus-ide-ui/{p-8b4fac7e.entry.js → p-c3e410cc.entry.js} +2 -2
  309. package/dist/genexus-ide-ui/{p-7965af56.entry.js → p-d0c2dde3.entry.js} +2 -2
  310. package/dist/genexus-ide-ui/{p-2e0ace7b.entry.js → p-dc1a9bd5.entry.js} +68 -99
  311. package/dist/genexus-ide-ui/p-dc1a9bd5.entry.js.map +1 -0
  312. package/dist/genexus-ide-ui/{p-9b2a1619.entry.js → p-ddb3be63.entry.js} +2 -2
  313. package/dist/genexus-ide-ui/{p-32262d7f.entry.js → p-e06cfa27.entry.js} +5 -5
  314. package/dist/genexus-ide-ui/{p-811ff88b.entry.js → p-e100a114.entry.js} +2 -2
  315. package/dist/genexus-ide-ui/{p-277999c2.entry.js → p-e1d947d7.entry.js} +3 -3
  316. package/dist/genexus-ide-ui/{p-aae7f543.entry.js → p-e2b0ee82.entry.js} +2 -2
  317. package/dist/genexus-ide-ui/{p-a4c35113.entry.js → p-e8b51673.entry.js} +2 -2
  318. package/dist/genexus-ide-ui/{p-070628a8.entry.js → p-ec9e0915.entry.js} +5 -5
  319. package/dist/genexus-ide-ui/{p-fdd75b9c.entry.js → p-eedb407c.entry.js} +3 -3
  320. package/dist/genexus-ide-ui/{p-2698d51a.entry.js → p-f281608a.entry.js} +2 -2
  321. package/dist/genexus-ide-ui/{p-312ea200.entry.js → p-f94cb936.entry.js} +3 -3
  322. package/dist/types/common/config.d.ts +2 -0
  323. package/dist/types/components/select-kb-items/select-kb-items.d.ts +4 -0
  324. package/dist/types/components/team-dev/connect-gx-server/connect-gx-server.d.ts +6 -9
  325. package/dist/types/components/team-dev/create-kb-from-server/create-kb-from-server.d.ts +5 -1
  326. package/dist/types/components/team-dev/server-selector/server-selector.d.ts +93 -0
  327. package/dist/types/components.d.ts +61 -12
  328. package/package.json +1 -1
  329. package/dist/cjs/config-6a768514.js.map +0 -1
  330. package/dist/cjs/index-408303ce.js.map +0 -1
  331. package/dist/esm/config-1ef9d75a.js.map +0 -1
  332. package/dist/esm/index-25ff5600.js.map +0 -1
  333. package/dist/genexus-ide-ui/p-13738332.js.map +0 -1
  334. package/dist/genexus-ide-ui/p-2e0ace7b.entry.js.map +0 -1
  335. package/dist/genexus-ide-ui/p-4406e156.js.map +0 -1
  336. package/dist/genexus-ide-ui/p-987081c1.entry.js.map +0 -1
  337. package/dist/genexus-ide-ui/p-a29936cd.entry.js +0 -17
  338. package/dist/genexus-ide-ui/p-afd84bc7.entry.js.map +0 -1
  339. package/dist/genexus-ide-ui/p-ddbd4891.entry.js.map +0 -1
  340. package/dist/genexus-ide-ui/p-eaa0d5ce.entry.js +0 -17
  341. /package/dist/genexus-ide-ui/{p-ba9b9aa5.entry.js.map → p-00e51225.entry.js.map} +0 -0
  342. /package/dist/genexus-ide-ui/{p-34af745b.entry.js.map → p-0391a478.entry.js.map} +0 -0
  343. /package/dist/genexus-ide-ui/{p-a29936cd.entry.js.map → p-0c81d013.entry.js.map} +0 -0
  344. /package/dist/genexus-ide-ui/{p-1622e339.entry.js.map → p-13630aa2.entry.js.map} +0 -0
  345. /package/dist/genexus-ide-ui/{p-29db37fd.entry.js.map → p-137130ad.entry.js.map} +0 -0
  346. /package/dist/genexus-ide-ui/{p-04597fd0.entry.js.map → p-1477d49a.entry.js.map} +0 -0
  347. /package/dist/genexus-ide-ui/{p-8657d13c.entry.js.map → p-17b54532.entry.js.map} +0 -0
  348. /package/dist/genexus-ide-ui/{p-a92f1884.entry.js.map → p-20032d70.entry.js.map} +0 -0
  349. /package/dist/genexus-ide-ui/{p-e27f0e14.entry.js.map → p-212ca306.entry.js.map} +0 -0
  350. /package/dist/genexus-ide-ui/{p-eaa0d5ce.entry.js.map → p-26bc0884.entry.js.map} +0 -0
  351. /package/dist/genexus-ide-ui/{p-7f756647.entry.js.map → p-2c6ab8f4.entry.js.map} +0 -0
  352. /package/dist/genexus-ide-ui/{p-6c5cc7e2.js.map → p-2ee77587.js.map} +0 -0
  353. /package/dist/genexus-ide-ui/{p-149e771e.entry.js.map → p-2fe7ffc8.entry.js.map} +0 -0
  354. /package/dist/genexus-ide-ui/{p-52d48fba.entry.js.map → p-3817c664.entry.js.map} +0 -0
  355. /package/dist/genexus-ide-ui/{p-e267e84e.entry.js.map → p-38f135a5.entry.js.map} +0 -0
  356. /package/dist/genexus-ide-ui/{p-832ec678.entry.js.map → p-3917d6c4.entry.js.map} +0 -0
  357. /package/dist/genexus-ide-ui/{p-9e15d58d.entry.js.map → p-3d7ed559.entry.js.map} +0 -0
  358. /package/dist/genexus-ide-ui/{p-2e559ead.entry.js.map → p-46874948.entry.js.map} +0 -0
  359. /package/dist/genexus-ide-ui/{p-888d029f.entry.js.map → p-47f78f65.entry.js.map} +0 -0
  360. /package/dist/genexus-ide-ui/{p-e0eda984.entry.js.map → p-4c37ff28.entry.js.map} +0 -0
  361. /package/dist/genexus-ide-ui/{p-7a8aeb4e.entry.js.map → p-4cc2b3e6.entry.js.map} +0 -0
  362. /package/dist/genexus-ide-ui/{p-df148798.entry.js.map → p-4dd3af73.entry.js.map} +0 -0
  363. /package/dist/genexus-ide-ui/{p-1bb1c9cc.entry.js.map → p-4faee913.entry.js.map} +0 -0
  364. /package/dist/genexus-ide-ui/{p-541c43a2.entry.js.map → p-50fad6eb.entry.js.map} +0 -0
  365. /package/dist/genexus-ide-ui/{p-74882b8f.entry.js.map → p-54946b5e.entry.js.map} +0 -0
  366. /package/dist/genexus-ide-ui/{p-6c0cc0fc.entry.js.map → p-5624d287.entry.js.map} +0 -0
  367. /package/dist/genexus-ide-ui/{p-c3400671.entry.js.map → p-56308ae7.entry.js.map} +0 -0
  368. /package/dist/genexus-ide-ui/{p-a5de63cc.entry.js.map → p-56c0c556.entry.js.map} +0 -0
  369. /package/dist/genexus-ide-ui/{p-eea24d19.entry.js.map → p-57b8dd3d.entry.js.map} +0 -0
  370. /package/dist/genexus-ide-ui/{p-45267d6e.entry.js.map → p-60302626.entry.js.map} +0 -0
  371. /package/dist/genexus-ide-ui/{p-36e62da4.entry.js.map → p-61343e93.entry.js.map} +0 -0
  372. /package/dist/genexus-ide-ui/{p-1191a6f0.entry.js.map → p-614467b4.entry.js.map} +0 -0
  373. /package/dist/genexus-ide-ui/{p-5770d8b7.entry.js.map → p-64dbc4c0.entry.js.map} +0 -0
  374. /package/dist/genexus-ide-ui/{p-e94c0ad6.entry.js.map → p-65555f37.entry.js.map} +0 -0
  375. /package/dist/genexus-ide-ui/{p-e40929cd.entry.js.map → p-68ff4ac9.entry.js.map} +0 -0
  376. /package/dist/genexus-ide-ui/{p-7ba4e229.entry.js.map → p-6945a7ad.entry.js.map} +0 -0
  377. /package/dist/genexus-ide-ui/{p-f15c84ab.entry.js.map → p-69da0cd9.entry.js.map} +0 -0
  378. /package/dist/genexus-ide-ui/{p-3090813a.entry.js.map → p-6e01f5a5.entry.js.map} +0 -0
  379. /package/dist/genexus-ide-ui/{p-44eacccd.entry.js.map → p-70526bf3.entry.js.map} +0 -0
  380. /package/dist/genexus-ide-ui/{p-06fbe725.entry.js.map → p-73b1bfba.entry.js.map} +0 -0
  381. /package/dist/genexus-ide-ui/{p-5cb98d5b.js.map → p-790a3088.js.map} +0 -0
  382. /package/dist/genexus-ide-ui/{p-7de1daee.entry.js.map → p-7fe4387b.entry.js.map} +0 -0
  383. /package/dist/genexus-ide-ui/{p-0e2da68a.entry.js.map → p-80e49324.entry.js.map} +0 -0
  384. /package/dist/genexus-ide-ui/{p-847cd613.entry.js.map → p-833ae3bf.entry.js.map} +0 -0
  385. /package/dist/genexus-ide-ui/{p-61c8d171.entry.js.map → p-891faf90.entry.js.map} +0 -0
  386. /package/dist/genexus-ide-ui/{p-fb62d808.entry.js.map → p-898712c4.entry.js.map} +0 -0
  387. /package/dist/genexus-ide-ui/{p-cd8831e4.entry.js.map → p-8c125495.entry.js.map} +0 -0
  388. /package/dist/genexus-ide-ui/{p-7c2a9252.js.map → p-8c15538c.js.map} +0 -0
  389. /package/dist/genexus-ide-ui/{p-de83b5d7.entry.js.map → p-8c1ee4d9.entry.js.map} +0 -0
  390. /package/dist/genexus-ide-ui/{p-0090f914.js.map → p-8c2e9df4.js.map} +0 -0
  391. /package/dist/genexus-ide-ui/{p-78d65da3.entry.js.map → p-8d570fd2.entry.js.map} +0 -0
  392. /package/dist/genexus-ide-ui/{p-4cafeee4.entry.js.map → p-90fd4f83.entry.js.map} +0 -0
  393. /package/dist/genexus-ide-ui/{p-693be6bb.entry.js.map → p-9ac4aaa0.entry.js.map} +0 -0
  394. /package/dist/genexus-ide-ui/{p-9d5dc6a7.entry.js.map → p-9d1316d4.entry.js.map} +0 -0
  395. /package/dist/genexus-ide-ui/{p-eb3caba5.entry.js.map → p-a5b30dc7.entry.js.map} +0 -0
  396. /package/dist/genexus-ide-ui/{p-9e8a71db.entry.js.map → p-ac026635.entry.js.map} +0 -0
  397. /package/dist/genexus-ide-ui/{p-b3aa0ecb.entry.js.map → p-aebf9728.entry.js.map} +0 -0
  398. /package/dist/genexus-ide-ui/{p-f5157be1.entry.js.map → p-b2854730.entry.js.map} +0 -0
  399. /package/dist/genexus-ide-ui/{p-a7194c97.entry.js.map → p-b7aafbf6.entry.js.map} +0 -0
  400. /package/dist/genexus-ide-ui/{p-2e8b3151.entry.js.map → p-b80bd861.entry.js.map} +0 -0
  401. /package/dist/genexus-ide-ui/{p-7884efd9.entry.js.map → p-bb0cdfe6.entry.js.map} +0 -0
  402. /package/dist/genexus-ide-ui/{p-3d143a80.entry.js.map → p-c1ad1cc6.entry.js.map} +0 -0
  403. /package/dist/genexus-ide-ui/{p-8b4fac7e.entry.js.map → p-c3e410cc.entry.js.map} +0 -0
  404. /package/dist/genexus-ide-ui/{p-7965af56.entry.js.map → p-d0c2dde3.entry.js.map} +0 -0
  405. /package/dist/genexus-ide-ui/{p-9b2a1619.entry.js.map → p-ddb3be63.entry.js.map} +0 -0
  406. /package/dist/genexus-ide-ui/{p-32262d7f.entry.js.map → p-e06cfa27.entry.js.map} +0 -0
  407. /package/dist/genexus-ide-ui/{p-811ff88b.entry.js.map → p-e100a114.entry.js.map} +0 -0
  408. /package/dist/genexus-ide-ui/{p-277999c2.entry.js.map → p-e1d947d7.entry.js.map} +0 -0
  409. /package/dist/genexus-ide-ui/{p-aae7f543.entry.js.map → p-e2b0ee82.entry.js.map} +0 -0
  410. /package/dist/genexus-ide-ui/{p-a4c35113.entry.js.map → p-e8b51673.entry.js.map} +0 -0
  411. /package/dist/genexus-ide-ui/{p-070628a8.entry.js.map → p-ec9e0915.entry.js.map} +0 -0
  412. /package/dist/genexus-ide-ui/{p-fdd75b9c.entry.js.map → p-eedb407c.entry.js.map} +0 -0
  413. /package/dist/genexus-ide-ui/{p-2698d51a.entry.js.map → p-f281608a.entry.js.map} +0 -0
  414. /package/dist/genexus-ide-ui/{p-312ea200.entry.js.map → p-f94cb936.entry.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-selector.js","sourceRoot":"","sources":["../../../../src/components/team-dev/server-selector/server-selector.tsx"],"names":[],"mappings":"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","sourcesContent":["// Stencil\nimport { Component, Element, h, Host, Prop, State } from \"@stencil/core\";\n\n// Other Libraries\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport {\n ChEditCustomEvent,\n TabularGridRowClickedEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\nimport { JSX } from \"@stencil/core/internal\";\nimport { config } from \"../../../common/config\";\nimport {\n ControlValidation\n // validateControls\n} from \"../../../common/form-validation\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../common/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/tooltip\",\n \"chameleon/scrollbar\",\n \"components/tabular-grid\"\n];\n\nconst INFO_ICON = getIconPath({\n category: \"system\",\n name: \"information\",\n colorType: \"on-surface\"\n});\n\nconst LOCK_ICON = getIconPath({\n category: \"system\",\n name: \"lock\",\n colorType: \"on-surface\"\n});\n\nconst LANGUAGE_ICON = getIconPath({\n category: \"system\",\n name: \"language\",\n colorType: \"on-surface\"\n});\n\n@Component({\n tag: \"gx-ide-server-selector\",\n styleUrl: \"server-selector.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/server-selector\"]\n})\nexport class GxIdeServerSelector {\n #chSearchIcon = getIconPath({\n category: \"system\",\n name: \"search\",\n colorType: \"on-surface\"\n });\n\n #versionsSelect: RadioGroupItemModel[] = [\n { value: \"select\", caption: \"Select a server from the list below\" },\n { value: \"new\", caption: \"Enter a server URL manually\" }\n ];\n\n [key: string]: any;\n\n #_componentLocale: any;\n\n #chGridRecentlyUsedServersEl: HTMLChTabularGridElement;\n #chGridConnectedServersEl: HTMLChTabularGridElement;\n #previousSelectedRowId: string | undefined;\n #selectedRowId: string | undefined;\n #serverUrlEL: HTMLChEditElement;\n\n @Element() el: HTMLGxIdeServerSelectorElement;\n\n /**\n * State to enable/disable confirm button.\n */\n @State() enableConfirmButton: boolean = false;\n\n /**\n * State to track if this is the first selection made by the user.\n */\n @State() isFirstSelection: boolean = true;\n\n /**\n * State to track if the server URL is valid.\n */\n @State() isValidUrl: boolean = true;\n\n /**\n * The current server URL input value.\n */\n @State() serverUrlInputValue: string = \"\";\n\n /**\n * The current server URL input value.\n */\n @State() serverNameInputValue: string = \"\";\n\n /**\n * The selected server URI.\n */\n @State() selectedServerUri: string | undefined;\n\n /**\n * The selected server name.\n */\n @State() selectedServerName: string | undefined = \"None\";\n\n /**\n * The user name of the selected server.\n */\n @State() userName: string;\n\n /**\n * State to store the filter input value to filter the list-box\n */\n @State() filterValue: string = \"\";\n\n /**\n * Servers filtered\n */\n @State() filteredConnectedServersData: ConnectedGXServerData[] = [];\n\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * The selected connection type\n */\n @State() selectedConnectionType: ConnectionOption = \"select\";\n\n /**\n * The list of connected GX servers.\n */\n @Prop({ mutable: true }) connectedServersData: ConnectedGXServerData[] = [];\n\n /**\n * The list of recently used servers.\n */\n @Prop() readonly recentlyUsedServersData: ConnectedGXServerData[] = [];\n\n /**\n * Callback that is invoked when the dialog is closed\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Confirm' button is pressed and the Select Server option is checked.\n */\n @Prop() readonly selectServerCallback!: (\n authenticationSessionOrigin: AuthenticationSessionOrigin\n ) => Promise<void>;\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n this.selectedServerUri = this.connectedServersData[0]?.serverUrl;\n this.userName = this.connectedServersData[0]?.gxServerUsername;\n\n this.filteredConnectedServersData = this.connectedServersData;\n }\n\n #cancelHandler = (): void => {\n this.cancelCallback();\n };\n\n #confirmHandler = async (): Promise<void | ServerType> => {\n if (this.selectedConnectionType === \"select\") {\n await this.selectServerCallback({\n uri: this.selectedServerUri,\n name: this.selectedServerName\n });\n } else if (this.selectedConnectionType === \"new\") {\n this.isValidUrl = this.#validateUrl(this.serverUrlInputValue);\n if (this.isValidUrl) {\n await this.selectServerCallback({\n uri: this.serverUrlInputValue,\n name: this.serverNameInputValue\n });\n }\n }\n };\n\n #filterValueChangedHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.filterValue = (event.detail as string).toLowerCase();\n this.filteredConnectedServersData = this.connectedServersData.filter(item =>\n item.serverName.toLowerCase().includes(this.filterValue)\n );\n };\n\n #inputHandler = (\n event: ChEditCustomEvent<string> | InputEvent,\n field: \"serverUrlInputValue\" | \"serverNameInputValue\"\n ) => {\n this.enableConfirmButton = false;\n this[field] = event.detail as string;\n this.#enableConfirmButton();\n };\n\n #validateUrl = (url: string): boolean => {\n try {\n const serverUrl = new URL(url);\n return serverUrl.protocol === \"http:\" || serverUrl.protocol === \"https:\";\n } catch (ex) {\n return false;\n }\n };\n\n #enableConfirmButton = () => {\n if (\n this.serverUrlInputValue &&\n this.serverUrlInputValue.length > 0 &&\n this.serverNameInputValue &&\n this.serverNameInputValue.length > 0\n ) {\n this.enableConfirmButton = true;\n } else {\n this.enableConfirmButton = false;\n }\n };\n\n #selectConnectedServersHandler = (\n event: CustomEvent<TabularGridRowClickedEvent>\n ) =>\n this.#handleServerSelection(\n event,\n this.connectedServersData,\n this.#chGridRecentlyUsedServersEl\n );\n\n #selectRecentlyUsedServersHandler = (\n event: CustomEvent<TabularGridRowClickedEvent>\n ) =>\n this.#handleServerSelection(\n event,\n this.recentlyUsedServersData,\n this.#chGridConnectedServersEl\n );\n\n #handleServerSelection = async (\n event: CustomEvent<TabularGridRowClickedEvent>,\n serversData: ConnectedGXServerData[],\n otherGridEl: HTMLChTabularGridElement\n ): Promise<void> => {\n if (!this.isFirstSelection) {\n this.#previousSelectedRowId = this.#selectedRowId;\n }\n this.#selectedRowId = event.detail.rowId;\n if (this.#selectedRowId === undefined) {\n this.enableConfirmButton = false;\n this.selectedServerUri = undefined;\n this.selectedServerName = undefined;\n return;\n } else {\n const selectedServer = serversData.find(\n server => server.id === this.#selectedRowId\n );\n this.enableConfirmButton = true;\n this.selectedServerName = selectedServer?.serverName;\n this.selectedServerUri = selectedServer?.serverUrl;\n this.userName = selectedServer?.gxServerUsername || \"\";\n this.isFirstSelection = false;\n await otherGridEl?.selectRow(this.#previousSelectedRowId, false);\n }\n };\n\n #connectionTypeChangedHandler = (event: CustomEvent<string>) => {\n this.selectedConnectionType = event.detail as ConnectionOption;\n if (this.selectedConnectionType === \"new\") {\n this.enableConfirmButton = false;\n this.serverUrlInputValue = \"\";\n }\n this.selectedServerName = \"None\";\n };\n\n #renderTabularGridColumnSet = (\n hideColumnName: boolean = false\n ): HTMLChTabularGridColumnsetElement => {\n return (\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n columnId=\"icon\"\n class=\"tabular-grid-column\"\n columnName=\"Icon\"\n settingable={false}\n columnNameHidden={true}\n size={config.tabularGrid.colSize.maxContent}\n resizable={false}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"serverName\"\n class=\"tabular-grid-column\"\n sortable\n columnName=\"Server Name\"\n settingable={false}\n columnNameHidden={hideColumnName}\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.serverName}\n resizable={false}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"serverUrl\"\n class=\"tabular-grid-column\"\n sortable\n columnName=\"Server Url\"\n settingable={false}\n columnNameHidden={hideColumnName}\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.auto}\n resizable={false}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"userName\"\n class=\"tabular-grid-column\"\n sortable\n columnName=\"Username\"\n settingable={false}\n columnNameHidden={hideColumnName}\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.userName}\n resizable={false}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"status\"\n class=\"tabular-grid-column\"\n sortable\n columnName=\"Status\"\n settingable={false}\n columnNameHidden={hideColumnName}\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n resizable={false}\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n );\n };\n\n #renderTooltip = (text: string): JSX.Element | null => {\n return text !== \"\" ? (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={null}\n blockAlign=\"outside-end\"\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {text}\n </ch-tooltip>\n ) : null;\n };\n\n #renderTabularGridCommonCells = (server: ConnectedGXServerData) => {\n return [\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {this.#renderIcon(server.accessLevel)}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell tabular-grid-cell-server-name\">\n {server.serverName}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell tabular-grid-cell-server-url\">\n {server.serverUrl}\n {this.#renderTooltip(server.serverUrl)}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {server.gxServerUsername}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell text-neutral-gray-400 body-italic-s\">\n {server.isConnected && \"Connected\"}\n </ch-tabular-grid-cell>\n ];\n };\n\n #renderRecentlyUsedServersGrid = (hideColumnName: boolean): Element => {\n return (\n <ch-tabular-grid\n class={\"tabular-grid-recently-used tabular-grid\"}\n rowSelectionMode=\"single\"\n ref={(el: HTMLChTabularGridElement) =>\n (this.#chGridRecentlyUsedServersEl = el)\n }\n allowColumnReorder={false}\n onRowClicked={this.#selectRecentlyUsedServersHandler}\n id=\"recently-used-servers\"\n >\n {this.#renderTabularGridColumnSet(hideColumnName)}\n {this.recentlyUsedServersData.length > 0 ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.recentlyUsedServersData.map(\n (server: ConnectedGXServerData) => (\n <ch-tabular-grid-row rowid={server.id} class=\"tabular-grid-row\">\n {this.#renderTabularGridCommonCells(server)}\n </ch-tabular-grid-row>\n )\n )}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty>\n <gx-ide-empty-state\n stateIconSrc={INFO_ICON}\n stateTitle={this.#_componentLocale.emptyConnectedServers}\n isAnimated={true}\n ></gx-ide-empty-state>\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n </ch-tabular-grid>\n );\n };\n\n #renderConnectedServersGrid = (): Element => {\n return (\n <ch-tabular-grid\n class={\"tabular-grid tabular-grid-all-servers\"}\n rowSelectionMode=\"single\"\n ref={(el: HTMLChTabularGridElement) =>\n (this.#chGridConnectedServersEl = el)\n }\n allowColumnReorder={false}\n onRowClicked={this.#selectConnectedServersHandler}\n id=\"all-servers\"\n >\n {this.#renderTabularGridColumnSet()}\n {this.filteredConnectedServersData.length > 0 ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.filteredConnectedServersData.map(\n (server: ConnectedGXServerData) => (\n <ch-tabular-grid-row rowid={server.id} class=\"tabular-grid-row\">\n {this.#renderTabularGridCommonCells(server)}\n </ch-tabular-grid-row>\n )\n )}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty class=\"tabular-grid-rowset-empty\">\n <gx-ide-empty-state\n stateIconSrc={INFO_ICON}\n stateTitle={this.#_componentLocale.emptyConnectedServers}\n isAnimated={true}\n ></gx-ide-empty-state>\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n </ch-tabular-grid>\n );\n };\n\n #handleColumnSortChanged = (e: CustomEvent) => {\n const { columnId, sortDirection } = e.detail;\n\n const aux = this.connectedServersData;\n aux.sort((a: any, b: any) => {\n if (a[columnId] < b[columnId]) {\n return sortDirection === \"asc\" ? -1 : 1;\n }\n if (a[columnId] > b[columnId]) {\n return sortDirection === \"asc\" ? 1 : -1;\n }\n return 0;\n });\n\n this.connectedServersData = [...aux];\n };\n\n #renderIcon = (accessLevel: string): JSX.Element => {\n const icon = accessLevel === \"private\" ? LOCK_ICON : LANGUAGE_ICON;\n return <ch-image class=\"icon-md\" src={icon}></ch-image>;\n };\n\n #renderFooter = () => {\n const isSelectionMode = this.selectedConnectionType === \"select\";\n return (\n <footer\n class={{\n \"control-footer-with-border\": true,\n \"control-footer-space-between\":\n this.selectedConnectionType === \"select\",\n \"space-between\": isSelectionMode,\n \"spacing-body-inline\": true,\n \"spacing-body-block\": true\n }}\n >\n {isSelectionMode && (\n <p class=\"body-italic-m\">Selected: {this.selectedServerName}</p>\n )}\n <div class=\"buttons-spacer\">\n <button\n // cancel button\n class=\"button-secondary\"\n onClick={this.#cancelHandler}\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n\n <button\n // confirm button\n class=\"button-primary\"\n onClick={this.enableConfirmButton && this.#confirmHandler}\n disabled={!this.enableConfirmButton}\n >\n {this.#_componentLocale.footer.confirm}\n </button>\n </div>\n </footer>\n );\n };\n\n render(): void {\n const connectionTypeClass =\n this.selectedConnectionType === \"new\" && \"new-connection\";\n const recentlyUsedEmptyClass =\n this.recentlyUsedServersData.length === 0 && \"recently-used-empty\";\n return (\n <Host\n class={`widget elevation-1 ${connectionTypeClass} ${recentlyUsedEmptyClass}`}\n >\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <main class=\"section\">\n <header class=\"header spacing-body-block-start spacing-body-inline\">\n <div class=\"field-group\">\n <label class=\"body-regular-m text-neutral-gray-400\">\n {this.#_componentLocale.header.title}\n </label>\n <ch-radio-group-render\n class=\"radio-group\"\n model={this.#versionsSelect}\n onChange={this.#connectionTypeChangedHandler}\n value={this.#versionsSelect[0].value}\n ></ch-radio-group-render>\n\n {this.selectedConnectionType === \"select\" && (\n <ch-edit\n class=\"input search-server\"\n id=\"server-name-search\"\n startImgSrc={this.#chSearchIcon}\n onInput={this.#filterValueChangedHandler}\n placeholder={\n this.#_componentLocale.placeholders.searchServers\n }\n accessibleName=\"search server\"\n type=\"search\"\n ></ch-edit>\n )}\n </div>\n </header>\n {this.selectedConnectionType === \"select\" && [\n this.recentlyUsedServersData.length > 0 && (\n <div class=\"field field-block spacing-body-inline\">\n <label class=\"label\" htmlFor=\"recently-used-servers\">\n {this.#_componentLocale.recentlyUsed.title}\n </label>\n {this.#renderRecentlyUsedServersGrid(true)}\n </div>\n ),\n <div class=\"field field-block field-block-all-servers spacing-body-inline\">\n <label class=\"label\" htmlFor=\"all-servers\">\n {this.#_componentLocale.allServers.title}\n </label>\n {this.#renderConnectedServersGrid()}\n </div>\n ]}\n\n {this.selectedConnectionType === \"new\" && (\n <section class=\"spacing-body-inline\">\n <div class=\"layout layout--cols-2\">\n <div class=\"field field-block layout__panel\">\n <label class=\"label\" htmlFor=\"server-url\">\n {this.#_componentLocale.labels.serverUrl}\n </label>\n <ch-edit\n // server url\n class={{ \"input\": true, \"input-error\": !this.isValidUrl }}\n id=\"server-url\"\n value={this.serverUrlInputValue}\n onInput={event =>\n this.#inputHandler(event, \"serverUrlInputValue\")\n }\n placeholder={this.#_componentLocale.placeholders.serverUrl}\n ref={el => (this.#serverUrlEL = el as HTMLChEditElement)}\n ></ch-edit>\n </div>\n <div class=\"field field-block layout__panel\">\n <label class=\"label\" htmlFor=\"server-name\">\n {this.#_componentLocale.labels.serverName}\n </label>\n <ch-edit\n // server friendly name\n class=\"input\"\n id=\"server-name\"\n value={this.serverNameInputValue}\n onInput={event =>\n this.#inputHandler(event, \"serverNameInputValue\")\n }\n placeholder={this.#_componentLocale.placeholders.serverName}\n ></ch-edit>\n </div>\n {!this.isValidUrl && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={\n this.#serverUrlEL as unknown as HTMLButtonElement\n }\n blockAlign=\"outside-end\"\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.#_componentLocale.errors.serverUrlInvalid}\n </ch-tooltip>\n )}\n </div>\n </section>\n )}\n\n {this.#renderFooter()}\n </main>\n </Host>\n );\n }\n}\n\nexport type ConnectionResultData = {\n formResult: FormSubmitResult;\n};\n\nexport type ConnectionOption = \"select\" | \"new\";\n\nexport type ServerType = \"legacy\" | \"next\";\n\nexport type ServerAccessLevel = \"public\" | \"private\";\n\nexport type AuthenticationSessionOrigin = {\n uri: string;\n name: string;\n};\n\nexport type ConnectedGXServerData = {\n id: string;\n serverUrl: string;\n accessLevel: ServerAccessLevel;\n masterSessionUsername: string;\n serverName?: string;\n gxServerUsername: string;\n isConnected: boolean;\n};\n\nexport type NewServerConnectionData = {\n serverUrl: string;\n serverName: string;\n};\n"]}
@@ -197,7 +197,7 @@ export class GxIdeShareKb {
197
197
  "mutable": false,
198
198
  "complexType": {
199
199
  "original": "GXServerConnectionData",
200
- "resolved": "{ authenticationType: AuthenticationType; serverUrl: string; userName: string; userPassword: string; }",
200
+ "resolved": "{ authenticationType: AuthenticationType; serverUrl: string; userName: string; userPassword: string; serverName?: string; }",
201
201
  "references": {
202
202
  "GXServerConnectionData": {
203
203
  "location": "import",
@@ -131,6 +131,7 @@ const allGeneXusIdeUIComponents = {
131
131
  "gx-ide-plugin-explorer": 0,
132
132
  "gx-ide-plugin-details": 0,
133
133
  "gx-ide-references": 0,
134
+ "gx-ide-server-selector": 0,
134
135
  "gx-ide-select-kb-items": 0,
135
136
  "gx-ide-select-user-team": 0,
136
137
  "gx-ide-sign-in": 0,
@@ -1 +1 @@
1
- {"version":3,"file":"locale.e2e.js","sourceRoot":"","sources":["../../src/testing/locale.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { E2EPage, newE2EPage } from \"@stencil/core/testing\";\nimport { GeneXusIdeUIControlsTagName } from \"../common/types\";\nimport { haveSameStructure } from \"./same-structure.e2e\";\n\nconst COMPONENT_PREFIX = \"gx-ide-\";\nconst languages: { name: string; attr: string }[] = [\n { name: \"chinese\", attr: \"zh\" },\n { name: \"english\", attr: \"en\" },\n { name: \"japanese\", attr: \"ja\" }\n];\n\nconst testLocale = (componentNameWithPrefix: GeneXusIdeUIControlsTagName) => {\n describe(`[locale][${componentNameWithPrefix}]`, () => {\n let page: E2EPage;\n const componentName = componentNameWithPrefix.replace(COMPONENT_PREFIX, \"\");\n\n // This implementation is a WA since we can't evaluate JS classes in the page.\n // TODO: Implement the locale utility as a function, which can be evaluated\n // in the page\n const getTranslations = () =>\n page.evaluate(component => {\n const ASSETS_FOLDER = \"gx-ide-assets/\";\n const DEFAULT_LANGUAGE = \"en\";\n const LANGS_FOLDER = \"langs/\";\n const LANG_PREFIX = \".lang.\";\n const LANG_EXTENSION = \".json\";\n const lang =\n document\n .getElementsByTagName(\"html\")[0]\n .getAttribute(\"lang\")\n ?.valueOf() ?? DEFAULT_LANGUAGE;\n const folder = `${component}/`;\n\n const path =\n `/build/${ASSETS_FOLDER}${folder}${LANGS_FOLDER}${component}${LANG_PREFIX}${lang}${LANG_EXTENSION}` as const;\n\n return new Promise(resolve => {\n fetch(path)\n .then(async langFile => {\n if (langFile.ok) {\n const fileObject = await langFile.json();\n resolve(fileObject);\n } else {\n resolve(undefined);\n }\n })\n .catch(() => resolve(undefined));\n });\n }, componentName);\n\n beforeEach(async () => {\n page = await newE2EPage({\n failOnConsoleError: true,\n html: \"\" // Necessary\n });\n });\n\n it(\"should work without specifying the language (lang attr) in the browser\", async () => {\n const languageFile: any | undefined = await getTranslations();\n expect(languageFile).toBeTruthy();\n });\n\n it(\"should default to english language when there is no language (lang attr) in the browser\", async () => {\n const languageFile: any | undefined = await getTranslations();\n expect(languageFile).toBeTruthy();\n\n await page.evaluate(() =>\n document.documentElement.setAttribute(\"lang\", \"en\")\n );\n\n const languageEnglishFile: any | undefined = await getTranslations();\n expect(languageEnglishFile).toBeTruthy();\n expect(languageFile).toEqual(languageEnglishFile);\n });\n\n languages.forEach(language => {\n it(`should work with ${language.name} language`, async () => {\n await page.evaluate(\n (attr: string) => document.documentElement.setAttribute(\"lang\", attr),\n language.attr\n );\n const languageFile: any | undefined = await getTranslations();\n expect(languageFile).toBeTruthy();\n });\n });\n\n for (let index = 0; index < languages.length - 1; index++) {\n const language1 = languages[index];\n const language2 = languages[index + 1];\n\n // TODO: Complete all translations. At this moment, Japanese and Chinese\n // translations have missing literals\n it(`should translate the same literals (${language1.name} and ${language2.name})`, async () => {\n await page.evaluate(\n (attr: string) => document.documentElement.setAttribute(\"lang\", attr),\n language1.attr\n );\n const language1File: any | undefined = await getTranslations();\n\n await page.evaluate(\n (attr: string) => document.documentElement.setAttribute(\"lang\", attr),\n language2.attr\n );\n const language2File: any | undefined = await getTranslations();\n\n expect(language1File).toBeTruthy();\n expect(language2File).toBeTruthy();\n expect(haveSameStructure(language1File, language2File)).toBe(true);\n });\n }\n });\n};\n\n// TypeScript does not have a built-in type to exhaust a list with union types\nconst allGeneXusIdeUIComponents: { [key in GeneXusIdeUIControlsTagName]: 0 } = {\n \"gx-ide-about\": 0,\n \"gx-ide-ai-assistant\": 0,\n \"gx-ide-ai-message\": 0,\n \"gx-ide-bpm-app-declaration\": 0,\n \"gx-ide-bpm-assign-roles\": 0,\n \"gx-ide-bpm-import-files\": 0,\n \"gx-ide-bpm-import-gxpm\": 0,\n \"gx-ide-bpm-objects-selector\": 0,\n \"gx-ide-bpm-sync-gam-roles\": 0,\n \"gx-ide-bpm-task-documents\": 0,\n \"gx-ide-bpm-timer-duration\": 0,\n \"gx-ide-card\": 0,\n \"gx-ide-chat-container\": 0,\n \"gx-ide-chat-welcome\": 0,\n \"gx-ide-sc-chat-container\": 0,\n \"gx-ide-connect-gx-server\": 0,\n \"gx-ide-container\": 0,\n \"gx-ide-create-kb-from-server\": 0,\n \"gx-ide-current-user-info\": 0,\n \"gx-ide-dashboard-home\": 0,\n \"gx-ide-data-selector\": 0,\n \"gx-ide-data-type-selector\": 0,\n \"gx-ide-deployment-tool\": 0,\n \"gx-ide-design-import\": 0,\n \"gx-ide-directory-selector\": 0,\n \"gx-ide-edit-module-server\": 0,\n \"gx-ide-empty-state\": 0,\n \"gx-ide-entity-selector\": 0,\n \"gx-ide-file-item\": 0,\n \"gx-ide-file-uploader\": 0,\n \"gx-ide-gam-installation-settings\": 0,\n \"gx-ide-json-import\": 0,\n \"gx-ide-kb-manager-export\": 0,\n \"gx-ide-kb-manager-import\": 0,\n \"gx-ide-list-selector\": 0,\n \"gx-ide-list-selector-item\": 0,\n \"gx-ide-loader\": 0,\n \"gx-ide-manage-module-references\": 0,\n \"gx-ide-manage-module-references-v2\": 0,\n \"gx-ide-new-environment\": 0,\n \"gx-ide-new-kb\": 0,\n \"gx-ide-new-object\": 0,\n \"gx-ide-new-version\": 0,\n \"gx-ide-object-selector\": 0,\n \"gx-ide-open-api-import\": 0,\n \"gx-ide-plugin-explorer\": 0,\n \"gx-ide-plugin-details\": 0,\n \"gx-ide-references\": 0,\n \"gx-ide-select-kb-items\": 0,\n \"gx-ide-select-user-team\": 0,\n \"gx-ide-sign-in\": 0,\n \"gx-ide-sign-in-team\": 0,\n \"gx-ide-share-kb\": 0,\n \"gx-ide-start-page\": 0,\n \"gx-ide-status-buttons\": 0,\n \"gx-ide-switch-panel\": 0,\n \"gx-ide-switcher\": 0,\n \"gx-ide-team-dev-bring-changes\": 0,\n \"gx-ide-team-dev-commit\": 0,\n \"gx-ide-team-dev-history\": 0,\n \"gx-ide-team-dev-select-recent-comment\": 0,\n \"gx-ide-team-dev-update\": 0,\n \"gx-ide-team-dev-update-partial-selection\": 0,\n \"gx-ide-team-dev-update-to-revision\": 0,\n \"gx-ide-template\": 0,\n \"gx-ide-test\": 0,\n \"gx-ide-title\": 0,\n \"gx-ide-top-bar\": 0,\n \"gx-ide-wf-settings\": 0,\n \"gx-ide-ww-images\": 0,\n \"gx-ide-ww-attributes\": 0,\n \"gx-ide-ww-files\": 0,\n \"gx-ide-navigation-report\": 0,\n \"gx-ide-splash\": 0,\n \"gx-ide-welcome-page\": 0,\n \"gx-ide-bpm-export-xpdl\": 0,\n \"gx-ide-curl-inspector\": 0\n};\n\nconst componentsWithoutTranslations = new Set<GeneXusIdeUIControlsTagName>([\n \"gx-ide-ai-message\",\n \"gx-ide-chat-container\",\n \"gx-ide-container\",\n \"gx-ide-sc-chat-container\",\n \"gx-ide-directory-selector\",\n \"gx-ide-empty-state\",\n \"gx-ide-list-selector\",\n \"gx-ide-list-selector-item\",\n \"gx-ide-loader\",\n \"gx-ide-switch-panel\",\n \"gx-ide-switcher\",\n \"gx-ide-test\",\n \"gx-ide-title\",\n \"gx-ide-top-bar\",\n \"gx-ide-file-item\"\n]);\n\nconst componentsWithTranslations = Object.keys(\n allGeneXusIdeUIComponents\n).filter(\n component =>\n !componentsWithoutTranslations.has(component as GeneXusIdeUIControlsTagName)\n);\n\ncomponentsWithTranslations.forEach(testLocale);\n"]}
1
+ {"version":3,"file":"locale.e2e.js","sourceRoot":"","sources":["../../src/testing/locale.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { E2EPage, newE2EPage } from \"@stencil/core/testing\";\nimport { GeneXusIdeUIControlsTagName } from \"../common/types\";\nimport { haveSameStructure } from \"./same-structure.e2e\";\n\nconst COMPONENT_PREFIX = \"gx-ide-\";\nconst languages: { name: string; attr: string }[] = [\n { name: \"chinese\", attr: \"zh\" },\n { name: \"english\", attr: \"en\" },\n { name: \"japanese\", attr: \"ja\" }\n];\n\nconst testLocale = (componentNameWithPrefix: GeneXusIdeUIControlsTagName) => {\n describe(`[locale][${componentNameWithPrefix}]`, () => {\n let page: E2EPage;\n const componentName = componentNameWithPrefix.replace(COMPONENT_PREFIX, \"\");\n\n // This implementation is a WA since we can't evaluate JS classes in the page.\n // TODO: Implement the locale utility as a function, which can be evaluated\n // in the page\n const getTranslations = () =>\n page.evaluate(component => {\n const ASSETS_FOLDER = \"gx-ide-assets/\";\n const DEFAULT_LANGUAGE = \"en\";\n const LANGS_FOLDER = \"langs/\";\n const LANG_PREFIX = \".lang.\";\n const LANG_EXTENSION = \".json\";\n const lang =\n document\n .getElementsByTagName(\"html\")[0]\n .getAttribute(\"lang\")\n ?.valueOf() ?? DEFAULT_LANGUAGE;\n const folder = `${component}/`;\n\n const path =\n `/build/${ASSETS_FOLDER}${folder}${LANGS_FOLDER}${component}${LANG_PREFIX}${lang}${LANG_EXTENSION}` as const;\n\n return new Promise(resolve => {\n fetch(path)\n .then(async langFile => {\n if (langFile.ok) {\n const fileObject = await langFile.json();\n resolve(fileObject);\n } else {\n resolve(undefined);\n }\n })\n .catch(() => resolve(undefined));\n });\n }, componentName);\n\n beforeEach(async () => {\n page = await newE2EPage({\n failOnConsoleError: true,\n html: \"\" // Necessary\n });\n });\n\n it(\"should work without specifying the language (lang attr) in the browser\", async () => {\n const languageFile: any | undefined = await getTranslations();\n expect(languageFile).toBeTruthy();\n });\n\n it(\"should default to english language when there is no language (lang attr) in the browser\", async () => {\n const languageFile: any | undefined = await getTranslations();\n expect(languageFile).toBeTruthy();\n\n await page.evaluate(() =>\n document.documentElement.setAttribute(\"lang\", \"en\")\n );\n\n const languageEnglishFile: any | undefined = await getTranslations();\n expect(languageEnglishFile).toBeTruthy();\n expect(languageFile).toEqual(languageEnglishFile);\n });\n\n languages.forEach(language => {\n it(`should work with ${language.name} language`, async () => {\n await page.evaluate(\n (attr: string) => document.documentElement.setAttribute(\"lang\", attr),\n language.attr\n );\n const languageFile: any | undefined = await getTranslations();\n expect(languageFile).toBeTruthy();\n });\n });\n\n for (let index = 0; index < languages.length - 1; index++) {\n const language1 = languages[index];\n const language2 = languages[index + 1];\n\n // TODO: Complete all translations. At this moment, Japanese and Chinese\n // translations have missing literals\n it(`should translate the same literals (${language1.name} and ${language2.name})`, async () => {\n await page.evaluate(\n (attr: string) => document.documentElement.setAttribute(\"lang\", attr),\n language1.attr\n );\n const language1File: any | undefined = await getTranslations();\n\n await page.evaluate(\n (attr: string) => document.documentElement.setAttribute(\"lang\", attr),\n language2.attr\n );\n const language2File: any | undefined = await getTranslations();\n\n expect(language1File).toBeTruthy();\n expect(language2File).toBeTruthy();\n expect(haveSameStructure(language1File, language2File)).toBe(true);\n });\n }\n });\n};\n\n// TypeScript does not have a built-in type to exhaust a list with union types\nconst allGeneXusIdeUIComponents: { [key in GeneXusIdeUIControlsTagName]: 0 } = {\n \"gx-ide-about\": 0,\n \"gx-ide-ai-assistant\": 0,\n \"gx-ide-ai-message\": 0,\n \"gx-ide-bpm-app-declaration\": 0,\n \"gx-ide-bpm-assign-roles\": 0,\n \"gx-ide-bpm-import-files\": 0,\n \"gx-ide-bpm-import-gxpm\": 0,\n \"gx-ide-bpm-objects-selector\": 0,\n \"gx-ide-bpm-sync-gam-roles\": 0,\n \"gx-ide-bpm-task-documents\": 0,\n \"gx-ide-bpm-timer-duration\": 0,\n \"gx-ide-card\": 0,\n \"gx-ide-chat-container\": 0,\n \"gx-ide-chat-welcome\": 0,\n \"gx-ide-sc-chat-container\": 0,\n \"gx-ide-connect-gx-server\": 0,\n \"gx-ide-container\": 0,\n \"gx-ide-create-kb-from-server\": 0,\n \"gx-ide-current-user-info\": 0,\n \"gx-ide-dashboard-home\": 0,\n \"gx-ide-data-selector\": 0,\n \"gx-ide-data-type-selector\": 0,\n \"gx-ide-deployment-tool\": 0,\n \"gx-ide-design-import\": 0,\n \"gx-ide-directory-selector\": 0,\n \"gx-ide-edit-module-server\": 0,\n \"gx-ide-empty-state\": 0,\n \"gx-ide-entity-selector\": 0,\n \"gx-ide-file-item\": 0,\n \"gx-ide-file-uploader\": 0,\n \"gx-ide-gam-installation-settings\": 0,\n \"gx-ide-json-import\": 0,\n \"gx-ide-kb-manager-export\": 0,\n \"gx-ide-kb-manager-import\": 0,\n \"gx-ide-list-selector\": 0,\n \"gx-ide-list-selector-item\": 0,\n \"gx-ide-loader\": 0,\n \"gx-ide-manage-module-references\": 0,\n \"gx-ide-manage-module-references-v2\": 0,\n \"gx-ide-new-environment\": 0,\n \"gx-ide-new-kb\": 0,\n \"gx-ide-new-object\": 0,\n \"gx-ide-new-version\": 0,\n \"gx-ide-object-selector\": 0,\n \"gx-ide-open-api-import\": 0,\n \"gx-ide-plugin-explorer\": 0,\n \"gx-ide-plugin-details\": 0,\n \"gx-ide-references\": 0,\n \"gx-ide-server-selector\": 0,\n \"gx-ide-select-kb-items\": 0,\n \"gx-ide-select-user-team\": 0,\n \"gx-ide-sign-in\": 0,\n \"gx-ide-sign-in-team\": 0,\n \"gx-ide-share-kb\": 0,\n \"gx-ide-start-page\": 0,\n \"gx-ide-status-buttons\": 0,\n \"gx-ide-switch-panel\": 0,\n \"gx-ide-switcher\": 0,\n \"gx-ide-team-dev-bring-changes\": 0,\n \"gx-ide-team-dev-commit\": 0,\n \"gx-ide-team-dev-history\": 0,\n \"gx-ide-team-dev-select-recent-comment\": 0,\n \"gx-ide-team-dev-update\": 0,\n \"gx-ide-team-dev-update-partial-selection\": 0,\n \"gx-ide-team-dev-update-to-revision\": 0,\n \"gx-ide-template\": 0,\n \"gx-ide-test\": 0,\n \"gx-ide-title\": 0,\n \"gx-ide-top-bar\": 0,\n \"gx-ide-wf-settings\": 0,\n \"gx-ide-ww-images\": 0,\n \"gx-ide-ww-attributes\": 0,\n \"gx-ide-ww-files\": 0,\n \"gx-ide-navigation-report\": 0,\n \"gx-ide-splash\": 0,\n \"gx-ide-welcome-page\": 0,\n \"gx-ide-bpm-export-xpdl\": 0,\n \"gx-ide-curl-inspector\": 0\n};\n\nconst componentsWithoutTranslations = new Set<GeneXusIdeUIControlsTagName>([\n \"gx-ide-ai-message\",\n \"gx-ide-chat-container\",\n \"gx-ide-container\",\n \"gx-ide-sc-chat-container\",\n \"gx-ide-directory-selector\",\n \"gx-ide-empty-state\",\n \"gx-ide-list-selector\",\n \"gx-ide-list-selector-item\",\n \"gx-ide-loader\",\n \"gx-ide-switch-panel\",\n \"gx-ide-switcher\",\n \"gx-ide-test\",\n \"gx-ide-title\",\n \"gx-ide-top-bar\",\n \"gx-ide-file-item\"\n]);\n\nconst componentsWithTranslations = Object.keys(\n allGeneXusIdeUIComponents\n).filter(\n component =>\n !componentsWithoutTranslations.has(component as GeneXusIdeUIControlsTagName)\n);\n\ncomponentsWithTranslations.forEach(testLocale);\n"]}
@@ -21,7 +21,9 @@ const config = {
21
21
  auto: "auto",
22
22
  common: "minmax(100px, 1fr)",
23
23
  commonDouble: "minmax(150px, 2fr)",
24
- description: "250px"
24
+ description: "250px",
25
+ serverName: "150px",
26
+ userName: "150px"
25
27
  }
26
28
  },
27
29
  loader: {
@@ -1 +1 @@
1
- {"file":"config.js","mappings":"AAEA;MACa,MAAM,GAAG;;IAEpB,OAAO,EAAE,IAAI;IACb,UAAU,EAAE;QACV,MAAM,EAAE;YACN,IAAI,EAAE,cAAc;YACpB,SAAS,EAAE,QAAQ;YACnB,OAAO,EAAE,GAAG;YACZ,QAAQ,EAAE,OAAO;YACjB,SAAS,EAAE,OAAO;SACnB;KACF;IACD,cAAc,EAAE;QACd,aAAa,EAAE,IAAI;KACpB;IACD,WAAW,EAAE;QACX,OAAO,EAAE;YACP,UAAU,EAAE,aAAa;YACzB,UAAU,EAAE,aAAa;YACzB,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,oBAAoB;YAC5B,YAAY,EAAE,oBAAoB;YAClC,WAAW,EAAE,OAAO;SACrB;KACF;IACD,MAAM,EAAE;;QAEN,OAAO,EAAE,IAAI;KACd;IACD,eAAe,EAAE;QACf,UAAU,EAAE,eAAiC;QAC7C,WAAW,EAAE,cAAgC;QAC7C,KAAK,EAAE,GAAG;KACX;;IAED,aAAa,EAAE,GAAG;IAClB,eAAe,EAAE;QACf,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,gBAAgB;KAC5B;IACD,cAAc,EAAE;QACd,WAAW,EAAE,WAAW;QACxB,UAAU,EAAE,aAAa;KAC1B;;;;;","names":[],"sources":["src/common/config.ts"],"sourcesContent":["import { ChPopoverAlign } from \"@genexus/chameleon-controls-library\";\n\n/* The purpose of config is to provide a simple way to change options/settings that are generally applied on all the components*/\nexport const config = {\n // tooltip is a property that exists on some gemini controls. When set to true, it will display the error/warning/success message (if any) by using a tooltip, instead of displaying the message under the control. The tooltip prevents changes on the component total height, which is desired.\n tooltip: true,\n gxgMessage: {\n common: {\n type: \"text-regular\",\n textAlign: \"center\",\n padding: \"m\",\n maxWidth: \"250px\",\n minHeight: \"300px\"\n }\n },\n gxIdeContainer: {\n slimmerFooter: true\n },\n tabularGrid: {\n colSize: {\n minContent: \"min-content\",\n maxContent: \"max-content\",\n auto: \"auto\",\n common: \"minmax(100px, 1fr)\",\n commonDouble: \"minmax(150px, 2fr)\",\n description: \"250px\"\n }\n },\n loader: {\n /* The amount of milliseconds the loader will display, before abort because of timeout*/\n timeout: 4000\n },\n tooltipSettings: {\n blockAlign: \"outside-start\" as ChPopoverAlign,\n inlineAlign: \"inside-start\" as ChPopoverAlign,\n delay: 200\n },\n /* The amount of milliseconds for any control that supports debounce */\n inputDebounce: 500,\n headingsClasses: {\n cardRegular: \"subtitle-regular-s\",\n cardSmall: \"body-regular-m\"\n },\n utilityClasses: {\n opacityZero: \"opacity-0\",\n exactMatch: \"exact-match\"\n }\n};\n\n/* - - - - - - - - - - - - - - - - \nch-tree-view-render\n- - - - - - - - - - - - - - - - */\nexport const getImagePathTreeViewCallback = (imageSrc: string) =>\n `./assets/icons/${imageSrc}.svg#enabled`;\n"],"version":3}
1
+ {"file":"config.js","mappings":"AAEA;MACa,MAAM,GAAG;;IAEpB,OAAO,EAAE,IAAI;IACb,UAAU,EAAE;QACV,MAAM,EAAE;YACN,IAAI,EAAE,cAAc;YACpB,SAAS,EAAE,QAAQ;YACnB,OAAO,EAAE,GAAG;YACZ,QAAQ,EAAE,OAAO;YACjB,SAAS,EAAE,OAAO;SACnB;KACF;IACD,cAAc,EAAE;QACd,aAAa,EAAE,IAAI;KACpB;IACD,WAAW,EAAE;QACX,OAAO,EAAE;YACP,UAAU,EAAE,aAAa;YACzB,UAAU,EAAE,aAAa;YACzB,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,oBAAoB;YAC5B,YAAY,EAAE,oBAAoB;YAClC,WAAW,EAAE,OAAO;YACpB,UAAU,EAAE,OAAO;YACnB,QAAQ,EAAE,OAAO;SAClB;KACF;IACD,MAAM,EAAE;;QAEN,OAAO,EAAE,IAAI;KACd;IACD,eAAe,EAAE;QACf,UAAU,EAAE,eAAiC;QAC7C,WAAW,EAAE,cAAgC;QAC7C,KAAK,EAAE,GAAG;KACX;;IAED,aAAa,EAAE,GAAG;IAClB,eAAe,EAAE;QACf,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,gBAAgB;KAC5B;IACD,cAAc,EAAE;QACd,WAAW,EAAE,WAAW;QACxB,UAAU,EAAE,aAAa;KAC1B;;;;;","names":[],"sources":["src/common/config.ts"],"sourcesContent":["import { ChPopoverAlign } from \"@genexus/chameleon-controls-library\";\n\n/* The purpose of config is to provide a simple way to change options/settings that are generally applied on all the components*/\nexport const config = {\n // tooltip is a property that exists on some gemini controls. When set to true, it will display the error/warning/success message (if any) by using a tooltip, instead of displaying the message under the control. The tooltip prevents changes on the component total height, which is desired.\n tooltip: true,\n gxgMessage: {\n common: {\n type: \"text-regular\",\n textAlign: \"center\",\n padding: \"m\",\n maxWidth: \"250px\",\n minHeight: \"300px\"\n }\n },\n gxIdeContainer: {\n slimmerFooter: true\n },\n tabularGrid: {\n colSize: {\n minContent: \"min-content\",\n maxContent: \"max-content\",\n auto: \"auto\",\n common: \"minmax(100px, 1fr)\",\n commonDouble: \"minmax(150px, 2fr)\",\n description: \"250px\",\n serverName: \"150px\",\n userName: \"150px\"\n }\n },\n loader: {\n /* The amount of milliseconds the loader will display, before abort because of timeout*/\n timeout: 4000\n },\n tooltipSettings: {\n blockAlign: \"outside-start\" as ChPopoverAlign,\n inlineAlign: \"inside-start\" as ChPopoverAlign,\n delay: 200\n },\n /* The amount of milliseconds for any control that supports debounce */\n inputDebounce: 500,\n headingsClasses: {\n cardRegular: \"subtitle-regular-s\",\n cardSmall: \"body-regular-m\"\n },\n utilityClasses: {\n opacityZero: \"opacity-0\",\n exactMatch: \"exact-match\"\n }\n};\n\n/* - - - - - - - - - - - - - - - - \nch-tree-view-render\n- - - - - - - - - - - - - - - - */\nexport const getImagePathTreeViewCallback = (imageSrc: string) =>\n `./assets/icons/${imageSrc}.svg#enabled`;\n"],"version":3}
@@ -1,7 +1,7 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
2
  import { c as config } from './config.js';
3
- import { L as Locale } from './locale.js';
4
3
  import { v as validateControls } from './form-validation.js';
4
+ import { L as Locale } from './locale.js';
5
5
 
6
6
  const mapAuthenticationTypeToComboBoxModel = (authenticationTypes) => {
7
7
  return authenticationTypes.map(authenticationType => {
@@ -11,16 +11,8 @@ const mapAuthenticationTypeToComboBoxModel = (authenticationTypes) => {
11
11
  };
12
12
  });
13
13
  };
14
- const mapServerUrlsToComboBoxModel = (serverUrls) => {
15
- return serverUrls.map(serverUrl => {
16
- return {
17
- value: serverUrl,
18
- caption: serverUrl
19
- };
20
- });
21
- };
22
14
 
23
- const connectGxServerCss = ":host{display:grid;block-size:100%;overflow:auto;grid-template-rows:1fr max-content}.main{display:grid;grid-template-areas:\"server-url server-url\" \"authentication-type .\" \"user-name user-password\";grid-auto-rows:max-content;grid-template-columns:1fr 1fr}.section{display:contents}.authentication-type{grid-area:authentication-type}.server-url{grid-area:server-url}.user-name{grid-area:user-name}.user-password{grid-area:user-password}";
15
+ const connectGxServerCss = ":host{display:grid;block-size:100%;overflow:auto;grid-template-rows:1fr max-content}.main{display:grid;grid-template-areas:\"server-url server-url\" \"authentication-type .\" \"user-name user-password\";grid-auto-rows:max-content;grid-template-columns:1fr 1fr}.section{display:contents}.authentication-type{grid-area:authentication-type}.server-url{grid-area:server-url}.user-name{grid-area:user-name}.user-password{grid-area:user-password}.tooltip{position:absolute}";
24
16
 
25
17
  var __classPrivateFieldGet = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
26
18
  if (kind === "a" && !f)
@@ -38,10 +30,9 @@ var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) ||
38
30
  throw new TypeError("Cannot write private member to an object whose class did not declare it");
39
31
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
40
32
  };
41
- var _HTMLGxIdeConnectGxServer_componentLocale, _HTMLGxIdeConnectGxServer_usernameRef, _HTMLGxIdeConnectGxServer_passwordRef, _HTMLGxIdeConnectGxServer_serverUrlRef, _HTMLGxIdeConnectGxServer_cancelClickHandler, _HTMLGxIdeConnectGxServer_connectClickHandler, _HTMLGxIdeConnectGxServer_evaluateTooltipRender, _HTMLGxIdeConnectGxServer_init, _HTMLGxIdeConnectGxServer_initializeValidatableControls, _HTMLGxIdeConnectGxServer_serverUrlInputEventHandler, _HTMLGxIdeConnectGxServer_authenticationInputEventHandler, _HTMLGxIdeConnectGxServer_usernameInputEventHandler, _HTMLGxIdeConnectGxServer_passwordInputEventHandler;
33
+ var _HTMLGxIdeConnectGxServer_componentLocale, _HTMLGxIdeConnectGxServer_usernameRef, _HTMLGxIdeConnectGxServer_passwordRef, _HTMLGxIdeConnectGxServer_serverUrlRef, _HTMLGxIdeConnectGxServer_cancelClickHandler, _HTMLGxIdeConnectGxServer_connectClickHandler, _HTMLGxIdeConnectGxServer_evaluateTooltipRender, _HTMLGxIdeConnectGxServer_init, _HTMLGxIdeConnectGxServer_initializeValidatableControls, _HTMLGxIdeConnectGxServer_authenticationInputEventHandler, _HTMLGxIdeConnectGxServer_usernameInputEventHandler, _HTMLGxIdeConnectGxServer_passwordInputEventHandler;
42
34
  const CSS_BUNDLES = [
43
35
  "resets/box-sizing",
44
- "components/tab",
45
36
  "components/tooltip",
46
37
  "utils/form--full",
47
38
  "utils/layout",
@@ -78,23 +69,20 @@ const HTMLGxIdeConnectGxServer = /*@__PURE__*/ proxyCustomElement(class HTMLGxId
78
69
  ((_c = this.validatableControls.get(controlReference.id)) === null || _c === void 0 ? void 0 : _c.message) && (h("ch-tooltip", { class: "tooltip", actionElement: controlReference, blockAlign: config.tooltipSettings.blockAlign, inlineAlign: config.tooltipSettings.inlineAlign, delay: config.tooltipSettings.delay }, this.validatableControls.get(controlReference.id).message));
79
70
  });
80
71
  _HTMLGxIdeConnectGxServer_init.set(this, () => {
81
- var _a, _b, _c, _d, _e, _f;
72
+ var _a, _b, _c, _d;
82
73
  this.authenticationTypesChanged(this.authenticationTypes);
83
- this.serverUrlsChanged(this.serverUrls);
84
74
  // set initial values:
85
75
  // server url
86
- this.gxServerConnectionData.serverUrl = "";
76
+ this.gxServerConnectionData.serverUrl =
77
+ (_a = this.defaultConnectionData) === null || _a === void 0 ? void 0 : _a.serverUrl;
78
+ //server name
79
+ this.gxServerConnectionData.serverName =
80
+ (_b = this.defaultConnectionData) === null || _b === void 0 ? void 0 : _b.serverName;
87
81
  // authentication type
88
82
  this.gxServerConnectionData.authenticationType = {
89
- id: ((_a = this.defaultConnectionData) === null || _a === void 0 ? void 0 : _a.authenticationType.id) ||
90
- ((_b = this.authenticationTypesComboBoxModel[0]) === null || _b === void 0 ? void 0 : _b.value),
91
- name: ((_c = this.defaultConnectionData) === null || _c === void 0 ? void 0 : _c.authenticationType.name) ||
92
- ((_d = this.authenticationTypesComboBoxModel[0]) === null || _d === void 0 ? void 0 : _d.caption)
83
+ id: (_c = this.authenticationTypesComboBoxModel[0]) === null || _c === void 0 ? void 0 : _c.value,
84
+ name: (_d = this.authenticationTypesComboBoxModel[0]) === null || _d === void 0 ? void 0 : _d.caption
93
85
  };
94
- // user name
95
- this.gxServerConnectionData.userName = (_e = this.defaultConnectionData) === null || _e === void 0 ? void 0 : _e.userName;
96
- this.gxServerConnectionData.userPassword =
97
- (_f = this.defaultConnectionData) === null || _f === void 0 ? void 0 : _f.userPassword;
98
86
  });
99
87
  _HTMLGxIdeConnectGxServer_initializeValidatableControls.set(this, () => {
100
88
  // populate #controlsValidation with the controls that could have errors.
@@ -113,10 +101,6 @@ const HTMLGxIdeConnectGxServer = /*@__PURE__*/ proxyCustomElement(class HTMLGxId
113
101
  }
114
102
  });
115
103
  });
116
- // handlers that update this.gxServerConnectionData:
117
- _HTMLGxIdeConnectGxServer_serverUrlInputEventHandler.set(this, (event) => {
118
- this.gxServerConnectionData.serverUrl = event.detail;
119
- });
120
104
  _HTMLGxIdeConnectGxServer_authenticationInputEventHandler.set(this, (event) => {
121
105
  const authenticationTypeId = event.detail;
122
106
  const authenticationTypeIndex = this.authenticationTypes.findIndex(authType => {
@@ -142,16 +126,15 @@ const HTMLGxIdeConnectGxServer = /*@__PURE__*/ proxyCustomElement(class HTMLGxId
142
126
  },
143
127
  serverUrl: null,
144
128
  userName: null,
145
- userPassword: null
129
+ userPassword: null,
130
+ serverName: null
146
131
  };
147
- this.serverUrlsComboBoxModel = undefined;
148
132
  this.validatableControls = new Map();
149
133
  this.authenticationTypes = undefined;
150
134
  this.cancelCallback = undefined;
151
135
  this.connectCallback = undefined;
152
136
  this.defaultConnectionData = undefined;
153
137
  this.enableCustomServer = false;
154
- this.serverUrls = undefined;
155
138
  }
156
139
  authenticationTypesChanged(newAuthenticationTypes) {
157
140
  if (newAuthenticationTypes === null || newAuthenticationTypes === void 0 ? void 0 : newAuthenticationTypes.length) {
@@ -159,12 +142,6 @@ const HTMLGxIdeConnectGxServer = /*@__PURE__*/ proxyCustomElement(class HTMLGxId
159
142
  mapAuthenticationTypeToComboBoxModel(newAuthenticationTypes);
160
143
  }
161
144
  }
162
- serverUrlsChanged(newServerUrls) {
163
- if (newServerUrls === null || newServerUrls === void 0 ? void 0 : newServerUrls.length) {
164
- this.serverUrlsComboBoxModel =
165
- mapServerUrlsToComboBoxModel(newServerUrls);
166
- }
167
- }
168
145
  async componentWillLoad() {
169
146
  __classPrivateFieldSet(this, _HTMLGxIdeConnectGxServer_componentLocale, await Locale.getComponentStrings(this.el), "f");
170
147
  __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_init, "f").call(this);
@@ -177,16 +154,7 @@ const HTMLGxIdeConnectGxServer = /*@__PURE__*/ proxyCustomElement(class HTMLGxId
177
154
  return (h(Host, { class: "widget" }, h("ch-theme", { model: CSS_BUNDLES }), h("section", { class: "section" }, h("div", { class: "main field-group spacing-body" }, h("div", {
178
155
  // server urls
179
156
  class: "field field-block server-url"
180
- }, h("label", { class: "label", htmlFor: "server-url" }, __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_componentLocale, "f").main.serverURLLabel), h("ch-combo-box-render", { id: "server-url", class: "combo-box", accessibleName: "Server Url", model: this.serverUrlsComboBoxModel, placeholder: "Select a server URL", value: (_a = this.gxServerConnectionData) === null || _a === void 0 ? void 0 : _a.serverUrl, onChange: __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_serverUrlInputEventHandler, "f"), suggest: this.enableCustomServer, suggestOptions: {
181
- alreadyProcessed: false,
182
- autoExpand: false,
183
- hideMatchesAndShowNonMatches: false,
184
- highlightMatchedItems: false,
185
- matchCase: false,
186
- regularExpression: false,
187
- renderActiveItemIconOnExpand: true,
188
- strict: false
189
- }, ref: (el) => (__classPrivateFieldSet(this, _HTMLGxIdeConnectGxServer_serverUrlRef, el, "f")) }), __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_serverUrlRef, "f"))), h("div", {
157
+ }, h("label", { class: "label", htmlFor: "server-url" }, __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_componentLocale, "f").main.serverURLLabel), h("ch-edit", { type: "url", id: "server-url", class: "input", value: (_a = this.gxServerConnectionData) === null || _a === void 0 ? void 0 : _a.serverUrl, readonly: true, ref: (el) => (__classPrivateFieldSet(this, _HTMLGxIdeConnectGxServer_serverUrlRef, el, "f")) })), h("div", {
190
158
  // authentication types
191
159
  class: "field field-block authentication-type"
192
160
  }, h("label", { class: "label", htmlFor: "authentication-type" }, __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_componentLocale, "f").main.authenticationTypeLabel), h("ch-combo-box-render", { id: "authentication-type", class: "combo-box", accessibleName: "Authentication Types", model: this.authenticationTypesComboBoxModel, placeholder: "Select an authentication type", value: (_b = this.gxServerConnectionData) === null || _b === void 0 ? void 0 : _b.authenticationType.id, onInput: __classPrivateFieldGet(this, _HTMLGxIdeConnectGxServer_authenticationInputEventHandler, "f") })), h("div", {
@@ -206,8 +174,7 @@ const HTMLGxIdeConnectGxServer = /*@__PURE__*/ proxyCustomElement(class HTMLGxId
206
174
  static get assetsDirs() { return ["gx-ide-assets/connect-gx-server"]; }
207
175
  get el() { return this; }
208
176
  static get watchers() { return {
209
- "authenticationTypes": ["authenticationTypesChanged"],
210
- "serverUrls": ["serverUrlsChanged"]
177
+ "authenticationTypes": ["authenticationTypesChanged"]
211
178
  }; }
212
179
  static get style() { return connectGxServerCss; }
213
180
  }, [1, "gx-ide-connect-gx-server", {
@@ -216,16 +183,13 @@ const HTMLGxIdeConnectGxServer = /*@__PURE__*/ proxyCustomElement(class HTMLGxId
216
183
  "connectCallback": [16],
217
184
  "defaultConnectionData": [16],
218
185
  "enableCustomServer": [4, "enable-custom-server"],
219
- "serverUrls": [16],
220
186
  "authenticationTypesComboBoxModel": [32],
221
187
  "gxServerConnectionData": [32],
222
- "serverUrlsComboBoxModel": [32],
223
188
  "validatableControls": [32]
224
189
  }, undefined, {
225
- "authenticationTypes": ["authenticationTypesChanged"],
226
- "serverUrls": ["serverUrlsChanged"]
190
+ "authenticationTypes": ["authenticationTypesChanged"]
227
191
  }]);
228
- _HTMLGxIdeConnectGxServer_componentLocale = new WeakMap(), _HTMLGxIdeConnectGxServer_usernameRef = new WeakMap(), _HTMLGxIdeConnectGxServer_passwordRef = new WeakMap(), _HTMLGxIdeConnectGxServer_serverUrlRef = new WeakMap(), _HTMLGxIdeConnectGxServer_cancelClickHandler = new WeakMap(), _HTMLGxIdeConnectGxServer_connectClickHandler = new WeakMap(), _HTMLGxIdeConnectGxServer_evaluateTooltipRender = new WeakMap(), _HTMLGxIdeConnectGxServer_init = new WeakMap(), _HTMLGxIdeConnectGxServer_initializeValidatableControls = new WeakMap(), _HTMLGxIdeConnectGxServer_serverUrlInputEventHandler = new WeakMap(), _HTMLGxIdeConnectGxServer_authenticationInputEventHandler = new WeakMap(), _HTMLGxIdeConnectGxServer_usernameInputEventHandler = new WeakMap(), _HTMLGxIdeConnectGxServer_passwordInputEventHandler = new WeakMap();
192
+ _HTMLGxIdeConnectGxServer_componentLocale = new WeakMap(), _HTMLGxIdeConnectGxServer_usernameRef = new WeakMap(), _HTMLGxIdeConnectGxServer_passwordRef = new WeakMap(), _HTMLGxIdeConnectGxServer_serverUrlRef = new WeakMap(), _HTMLGxIdeConnectGxServer_cancelClickHandler = new WeakMap(), _HTMLGxIdeConnectGxServer_connectClickHandler = new WeakMap(), _HTMLGxIdeConnectGxServer_evaluateTooltipRender = new WeakMap(), _HTMLGxIdeConnectGxServer_init = new WeakMap(), _HTMLGxIdeConnectGxServer_initializeValidatableControls = new WeakMap(), _HTMLGxIdeConnectGxServer_authenticationInputEventHandler = new WeakMap(), _HTMLGxIdeConnectGxServer_usernameInputEventHandler = new WeakMap(), _HTMLGxIdeConnectGxServer_passwordInputEventHandler = new WeakMap();
229
193
  function defineCustomElement$1() {
230
194
  if (typeof customElements === "undefined") {
231
195
  return;
@@ -1 +1 @@
1
- {"file":"gx-ide-connect-gx-server.js","mappings":"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","names":[],"sources":["src/components/team-dev/connect-gx-server/helpers.ts","src/components/team-dev/connect-gx-server/connect-gx-server.scss?tag=gx-ide-connect-gx-server&encapsulation=shadow","src/components/team-dev/connect-gx-server/connect-gx-server.tsx"],"sourcesContent":["import { AuthenticationType } from \"./connect-gx-server\";\nimport { ComboBoxModel } from \"@genexus/chameleon-controls-library\";\n\nexport const mapAuthenticationTypeToComboBoxModel = (\n authenticationTypes: AuthenticationType[]\n): ComboBoxModel => {\n return authenticationTypes.map(authenticationType => {\n return {\n value: authenticationType.id,\n caption: authenticationType.name\n };\n });\n};\n\nexport const mapServerUrlsToComboBoxModel = (\n serverUrls: string[]\n): ComboBoxModel => {\n return serverUrls.map(serverUrl => {\n return {\n value: serverUrl,\n caption: serverUrl\n };\n });\n};\n",":host {\n display: grid;\n block-size: 100%;\n overflow: auto;\n grid-template-rows: 1fr max-content;\n}\n\n.main {\n display: grid;\n grid-template-areas:\n \"server-url server-url\"\n \"authentication-type .\"\n \"user-name user-password\";\n grid-auto-rows: max-content;\n grid-template-columns: 1fr 1fr;\n}\n\n.section {\n display: contents;\n}\n\n.authentication-type {\n grid-area: authentication-type;\n}\n.server-url {\n grid-area: server-url;\n}\n.user-name {\n grid-area: user-name;\n}\n.user-password {\n grid-area: user-password;\n}\n","// Stencil\nimport { Component, Host, h, Prop, Element, State, Watch } from \"@stencil/core\";\n\n// Other Libraries\nimport { ComboBoxModel } from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport { config } from \"../../../common/config\";\nimport {\n mapAuthenticationTypeToComboBoxModel,\n mapServerUrlsToComboBoxModel\n} from \"./helpers\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../common/types\";\nimport {\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/tab\",\n \"components/tooltip\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"chameleon/scrollbar\"\n];\n\n@Component({\n tag: \"gx-ide-connect-gx-server\",\n styleUrl: \"connect-gx-server.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/connect-gx-server\"]\n})\nexport class HTMLGxIdeConnectGxServer {\n /**\n * The component hard-coded strings translations.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #componentLocale: any;\n\n @Element() el: HTMLGxIdeConnectGxServerElement;\n #usernameRef!: HTMLChEditElement;\n #passwordRef!: HTMLChEditElement;\n #serverUrlRef!: HTMLChComboBoxRenderElement;\n\n @State() authenticationTypesComboBoxModel: ComboBoxModel;\n @State() gxServerConnectionData: GXServerConnectionData = {\n authenticationType: {\n id: null,\n name: null\n },\n serverUrl: null,\n userName: null,\n userPassword: null\n };\n @State() serverUrlsComboBoxModel: ComboBoxModel;\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * List of authentication types.\n */\n @Prop() readonly authenticationTypes!: AuthenticationType[];\n @Watch(\"authenticationTypes\")\n authenticationTypesChanged(newAuthenticationTypes: AuthenticationType[]) {\n if (newAuthenticationTypes?.length) {\n this.authenticationTypesComboBoxModel =\n mapAuthenticationTypeToComboBoxModel(newAuthenticationTypes);\n }\n }\n\n /**\n * Callback that must be invoked when the 'Cancel' button is pressed.\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Connect' button is pressed.\n */\n @Prop() readonly connectCallback!: (\n data: GXServerConnectionData\n ) => Promise<FormSubmitResult>;\n\n /**\n * Initial user values ​​for the case in which the user returns to the login modal after successful authentication.\n */\n @Prop() readonly defaultConnectionData?: GXServerConnectionData;\n\n /**\n * true if the user should be allowed to manually enter a server URL.\n */\n @Prop() readonly enableCustomServer: boolean = false;\n\n /**\n * Array of cataloged server URLs to be displayed in the combo.\n */\n @Prop() readonly serverUrls: string[];\n @Watch(\"serverUrls\")\n serverUrlsChanged(newServerUrls: string[]) {\n if (newServerUrls?.length) {\n this.serverUrlsComboBoxModel =\n mapServerUrlsToComboBoxModel(newServerUrls);\n }\n }\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n\n this.#init();\n }\n\n async componentDidLoad() {\n this.#initializeValidatableControls();\n }\n\n #cancelClickHandler = () => {\n this.cancelCallback();\n };\n\n #connectClickHandler = async () => {\n this.connectCallback(this.gxServerConnectionData).then(\n (formSubmitResult: FormSubmitResult) => {\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\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 #init = () => {\n this.authenticationTypesChanged(this.authenticationTypes);\n this.serverUrlsChanged(this.serverUrls);\n // set initial values:\n // server url\n this.gxServerConnectionData.serverUrl = \"\";\n // authentication type\n this.gxServerConnectionData.authenticationType = {\n id:\n (this.defaultConnectionData?.authenticationType.id as string) ||\n this.authenticationTypesComboBoxModel[0]?.value,\n name:\n (this.defaultConnectionData?.authenticationType.name as string) ||\n this.authenticationTypesComboBoxModel[0]?.caption\n };\n\n // user name\n this.gxServerConnectionData.userName = this.defaultConnectionData?.userName;\n this.gxServerConnectionData.userPassword =\n this.defaultConnectionData?.userPassword;\n };\n\n #initializeValidatableControls = () => {\n // populate #controlsValidation with the controls that could have errors.\n const validatableControls: HTMLElement[] = [\n this.#usernameRef,\n this.#passwordRef,\n this.#serverUrlRef\n ];\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 // handlers that update this.gxServerConnectionData:\n #serverUrlInputEventHandler = (event: CustomEvent<string> | InputEvent) => {\n this.gxServerConnectionData.serverUrl = event.detail as string;\n };\n #authenticationInputEventHandler = (\n event: CustomEvent<string> | InputEvent\n ) => {\n const authenticationTypeId = event.detail as string;\n const authenticationTypeIndex = this.authenticationTypes.findIndex(\n authType => {\n return authType.id === authenticationTypeId;\n }\n );\n const authenticationTypeName =\n this.authenticationTypes[authenticationTypeIndex].name;\n\n this.gxServerConnectionData.authenticationType = {\n id: authenticationTypeId,\n name: authenticationTypeName\n };\n };\n #usernameInputEventHandler = (event: CustomEvent<string> | InputEvent) => {\n this.gxServerConnectionData.userName = event.detail as string;\n };\n #passwordInputEventHandler = (event: CustomEvent<string> | InputEvent) => {\n this.gxServerConnectionData.userPassword = event.detail as string;\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n\n <section class=\"section\">\n <div class=\"main field-group spacing-body\">\n <div\n // server urls\n class=\"field field-block server-url\"\n >\n <label class=\"label\" htmlFor=\"server-url\">\n {this.#componentLocale.main.serverURLLabel}\n </label>\n <ch-combo-box-render\n id=\"server-url\"\n class=\"combo-box\"\n accessibleName=\"Server Url\"\n model={this.serverUrlsComboBoxModel}\n placeholder=\"Select a server URL\"\n value={this.gxServerConnectionData?.serverUrl}\n onChange={this.#serverUrlInputEventHandler}\n suggest={this.enableCustomServer}\n suggestOptions={{\n alreadyProcessed: false,\n autoExpand: false,\n hideMatchesAndShowNonMatches: false,\n highlightMatchedItems: false,\n matchCase: false,\n regularExpression: false,\n renderActiveItemIconOnExpand: true,\n strict: false\n }}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#serverUrlRef = el as HTMLChComboBoxRenderElement)\n }\n ></ch-combo-box-render>\n {this.#evaluateTooltipRender(this.#serverUrlRef)}\n </div>\n\n <div\n // authentication types\n class=\"field field-block authentication-type\"\n >\n <label class=\"label\" htmlFor=\"authentication-type\">\n {this.#componentLocale.main.authenticationTypeLabel}\n </label>\n <ch-combo-box-render\n id=\"authentication-type\"\n class=\"combo-box\"\n accessibleName=\"Authentication Types\"\n model={this.authenticationTypesComboBoxModel}\n placeholder=\"Select an authentication type\"\n value={this.gxServerConnectionData?.authenticationType.id}\n onInput={this.#authenticationInputEventHandler}\n ></ch-combo-box-render>\n </div>\n\n <div\n // username\n class=\"field field-block user-name\"\n >\n <label class=\"label\" htmlFor=\"username\">\n {this.#componentLocale.main.usernameLabel}\n </label>\n <ch-edit\n type=\"text\"\n id=\"username\"\n class=\"input\"\n value={this.gxServerConnectionData?.userName}\n onInput={this.#usernameInputEventHandler}\n ref={(el: HTMLChEditElement) =>\n (this.#usernameRef = el as HTMLChEditElement)\n }\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#usernameRef)}\n </div>\n\n <div\n // user password\n class=\"field field-block user-password\"\n >\n <label class=\"label\" htmlFor=\"password\">\n {this.#componentLocale.main.passwordLabel}\n </label>\n <ch-edit\n type=\"password\"\n id=\"password\"\n class=\"input\"\n value={this.gxServerConnectionData?.userPassword}\n onInput={this.#passwordInputEventHandler}\n ref={(el: HTMLChEditElement) =>\n (this.#passwordRef = el as HTMLChEditElement)\n }\n showPasswordButton={true}\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#passwordRef)}\n </div>\n </div>\n\n <footer class=\"control-footer-with-border spacing-body\">\n <div class=\"buttons-spacer\">\n <button\n // cancel button\n class=\"button-secondary\"\n onClick={this.#cancelClickHandler}\n >\n {this.#componentLocale.footer.cancelButtonCaption}\n </button>\n\n <button\n // connect button\n class=\"button-primary\"\n onClick={this.#connectClickHandler}\n >\n {this.#componentLocale.footer.connectButtonCaption}\n </button>\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n\nexport type GXServerConnectionData = {\n authenticationType: AuthenticationType;\n serverUrl: string;\n userName: string;\n userPassword: string;\n};\n\nexport type AuthenticationType = {\n id: string;\n name: string;\n};\n"],"version":3}
1
+ {"file":"gx-ide-connect-gx-server.js","mappings":"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","names":[],"sources":["src/components/team-dev/connect-gx-server/helpers.ts","src/components/team-dev/connect-gx-server/connect-gx-server.scss?tag=gx-ide-connect-gx-server&encapsulation=shadow","src/components/team-dev/connect-gx-server/connect-gx-server.tsx"],"sourcesContent":["import { AuthenticationType } from \"./connect-gx-server\";\nimport { ComboBoxModel } from \"@genexus/chameleon-controls-library\";\n\nexport const mapAuthenticationTypeToComboBoxModel = (\n authenticationTypes: AuthenticationType[]\n): ComboBoxModel => {\n return authenticationTypes.map(authenticationType => {\n return {\n value: authenticationType.id,\n caption: authenticationType.name\n };\n });\n};\n\nexport const mapServerUrlsToComboBoxModel = (\n serverUrls: string[]\n): ComboBoxModel => {\n return serverUrls.map(serverUrl => {\n return {\n value: serverUrl,\n caption: serverUrl\n };\n });\n};\n",":host {\n display: grid;\n block-size: 100%;\n overflow: auto;\n grid-template-rows: 1fr max-content;\n}\n\n.main {\n display: grid;\n grid-template-areas:\n \"server-url server-url\"\n \"authentication-type .\"\n \"user-name user-password\";\n grid-auto-rows: max-content;\n grid-template-columns: 1fr 1fr;\n}\n\n.section {\n display: contents;\n}\n\n.authentication-type {\n grid-area: authentication-type;\n}\n.server-url {\n grid-area: server-url;\n}\n.user-name {\n grid-area: user-name;\n}\n.user-password {\n grid-area: user-password;\n}\n\n.tooltip {\n position: absolute;\n}\n","// Stencil\nimport { Component, Element, h, Host, Prop, State, Watch } from \"@stencil/core\";\n\n// Other Libraries\nimport { ComboBoxModel } from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport { config } from \"../../../common/config\";\nimport {\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../common/types\";\nimport { mapAuthenticationTypeToComboBoxModel } from \"./helpers\";\nimport { NewServerConnectionData } from \"../server-selector/server-selector\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/tooltip\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"chameleon/scrollbar\"\n];\n\n@Component({\n tag: \"gx-ide-connect-gx-server\",\n styleUrl: \"connect-gx-server.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/connect-gx-server\"]\n})\nexport class HTMLGxIdeConnectGxServer {\n /**\n * The component hard-coded strings translations.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #componentLocale: any;\n\n @Element() el: HTMLGxIdeConnectGxServerElement;\n #usernameRef!: HTMLChEditElement;\n #passwordRef!: HTMLChEditElement;\n #serverUrlRef!: HTMLChEditElement;\n\n @State() authenticationTypesComboBoxModel: ComboBoxModel;\n @State() gxServerConnectionData: GXServerConnectionData = {\n authenticationType: {\n id: null,\n name: null\n },\n serverUrl: null,\n userName: null,\n userPassword: null,\n serverName: null\n };\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * List of authentication types.\n */\n @Prop() readonly authenticationTypes!: AuthenticationType[];\n @Watch(\"authenticationTypes\")\n authenticationTypesChanged(newAuthenticationTypes: AuthenticationType[]) {\n if (newAuthenticationTypes?.length) {\n this.authenticationTypesComboBoxModel =\n mapAuthenticationTypeToComboBoxModel(newAuthenticationTypes);\n }\n }\n\n /**\n * Callback that must be invoked when the 'Cancel' button is pressed.\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Connect' button is pressed.\n */\n @Prop() readonly connectCallback!: (\n data: GXServerConnectionData\n ) => Promise<FormSubmitResult>;\n\n /**\n * Initial user values for the case in which the user returns to the\n * login modal after successful authentication.\n */\n @Prop() readonly defaultConnectionData?: NewServerConnectionData;\n\n /**\n * true if the user should be allowed to manually enter a server URL.\n */\n @Prop() readonly enableCustomServer: boolean = false;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n\n this.#init();\n }\n\n async componentDidLoad() {\n this.#initializeValidatableControls();\n }\n\n #cancelClickHandler = () => {\n this.cancelCallback();\n };\n\n #connectClickHandler = async () => {\n this.connectCallback(this.gxServerConnectionData).then(\n (formSubmitResult: FormSubmitResult) => {\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\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 #init = () => {\n this.authenticationTypesChanged(this.authenticationTypes);\n // set initial values:\n // server url\n this.gxServerConnectionData.serverUrl =\n this.defaultConnectionData?.serverUrl;\n //server name\n this.gxServerConnectionData.serverName =\n this.defaultConnectionData?.serverName;\n // authentication type\n this.gxServerConnectionData.authenticationType = {\n id: this.authenticationTypesComboBoxModel[0]?.value,\n name: this.authenticationTypesComboBoxModel[0]?.caption\n };\n };\n\n #initializeValidatableControls = () => {\n // populate #controlsValidation with the controls that could have errors.\n const validatableControls: HTMLElement[] = [\n this.#usernameRef,\n this.#passwordRef,\n this.#serverUrlRef\n ];\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 #authenticationInputEventHandler = (\n event: CustomEvent<string> | InputEvent\n ) => {\n const authenticationTypeId = event.detail as string;\n const authenticationTypeIndex = this.authenticationTypes.findIndex(\n authType => {\n return authType.id === authenticationTypeId;\n }\n );\n const authenticationTypeName =\n this.authenticationTypes[authenticationTypeIndex].name;\n\n this.gxServerConnectionData.authenticationType = {\n id: authenticationTypeId,\n name: authenticationTypeName\n };\n };\n #usernameInputEventHandler = (event: CustomEvent<string> | InputEvent) => {\n this.gxServerConnectionData.userName = event.detail as string;\n };\n #passwordInputEventHandler = (event: CustomEvent<string> | InputEvent) => {\n this.gxServerConnectionData.userPassword = event.detail as string;\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n\n <section class=\"section\">\n <div class=\"main field-group spacing-body\">\n <div\n // server urls\n class=\"field field-block server-url\"\n >\n <label class=\"label\" htmlFor=\"server-url\">\n {this.#componentLocale.main.serverURLLabel}\n </label>\n <ch-edit\n type=\"url\"\n id=\"server-url\"\n class=\"input\"\n value={this.gxServerConnectionData?.serverUrl}\n readonly={true}\n ref={(el: HTMLChEditElement) =>\n (this.#serverUrlRef = el as HTMLChEditElement)\n }\n ></ch-edit>\n </div>\n\n <div\n // authentication types\n class=\"field field-block authentication-type\"\n >\n <label class=\"label\" htmlFor=\"authentication-type\">\n {this.#componentLocale.main.authenticationTypeLabel}\n </label>\n <ch-combo-box-render\n id=\"authentication-type\"\n class=\"combo-box\"\n accessibleName=\"Authentication Types\"\n model={this.authenticationTypesComboBoxModel}\n placeholder=\"Select an authentication type\"\n value={this.gxServerConnectionData?.authenticationType.id}\n onInput={this.#authenticationInputEventHandler}\n ></ch-combo-box-render>\n </div>\n\n <div\n // username\n class=\"field field-block user-name\"\n >\n <label class=\"label\" htmlFor=\"username\">\n {this.#componentLocale.main.usernameLabel}\n </label>\n <ch-edit\n type=\"text\"\n id=\"username\"\n class=\"input\"\n value={this.gxServerConnectionData?.userName}\n onInput={this.#usernameInputEventHandler}\n ref={(el: HTMLChEditElement) =>\n (this.#usernameRef = el as HTMLChEditElement)\n }\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#usernameRef)}\n </div>\n\n <div\n // user password\n class=\"field field-block user-password\"\n >\n <label class=\"label\" htmlFor=\"password\">\n {this.#componentLocale.main.passwordLabel}\n </label>\n <ch-edit\n type=\"password\"\n id=\"password\"\n class=\"input\"\n value={this.gxServerConnectionData?.userPassword}\n onInput={this.#passwordInputEventHandler}\n ref={(el: HTMLChEditElement) =>\n (this.#passwordRef = el as HTMLChEditElement)\n }\n showPasswordButton={true}\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#passwordRef)}\n </div>\n </div>\n\n <footer class=\"control-footer-with-border spacing-body\">\n <div class=\"buttons-spacer\">\n <button\n // cancel button\n class=\"button-secondary\"\n onClick={this.#cancelClickHandler}\n >\n {this.#componentLocale.footer.cancelButtonCaption}\n </button>\n\n <button\n // connect button\n class=\"button-primary\"\n onClick={this.#connectClickHandler}\n >\n {this.#componentLocale.footer.connectButtonCaption}\n </button>\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n\nexport type GXServerConnectionData = {\n authenticationType: AuthenticationType;\n serverUrl: string;\n userName: string;\n userPassword: string;\n serverName?: string;\n};\n\nexport type AuthenticationType = {\n id: string;\n name: string;\n};\n"],"version":3}