@genexus/genexus-ide-ui 1.1.58 → 1.1.59

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 (338) hide show
  1. package/dist/cjs/{config-df6ba4e9.js → config-3bb95f39.js} +3 -2
  2. package/dist/cjs/config-3bb95f39.js.map +1 -0
  3. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  4. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +2 -2
  5. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js.map +1 -1
  6. package/dist/cjs/gx-ide-bpm-assign-roles.cjs.entry.js +2 -2
  7. package/dist/cjs/gx-ide-bpm-assign-roles.cjs.entry.js.map +1 -1
  8. package/dist/cjs/gx-ide-bpm-export-xpdl.cjs.entry.js +2 -2
  9. package/dist/cjs/gx-ide-bpm-export-xpdl.cjs.entry.js.map +1 -1
  10. package/dist/cjs/gx-ide-bpm-import-files.cjs.entry.js +2 -2
  11. package/dist/cjs/gx-ide-bpm-import-files.cjs.entry.js.map +1 -1
  12. package/dist/cjs/gx-ide-bpm-import-gxpm.cjs.entry.js +2 -2
  13. package/dist/cjs/gx-ide-bpm-import-gxpm.cjs.entry.js.map +1 -1
  14. package/dist/cjs/gx-ide-bpm-objects-selector.cjs.entry.js +2 -2
  15. package/dist/cjs/gx-ide-bpm-objects-selector.cjs.entry.js.map +1 -1
  16. package/dist/cjs/gx-ide-bpm-timer-duration.cjs.entry.js +2 -2
  17. package/dist/cjs/gx-ide-bpm-timer-duration.cjs.entry.js.map +1 -1
  18. package/dist/cjs/gx-ide-card.cjs.entry.js +1 -1
  19. package/dist/cjs/gx-ide-card.cjs.entry.js.map +1 -1
  20. package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js +1 -1
  21. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +1 -1
  22. package/dist/cjs/gx-ide-curl-inspector.cjs.entry.js +1 -1
  23. package/dist/cjs/gx-ide-data-selector.cjs.entry.js +1 -1
  24. package/dist/cjs/gx-ide-deployment-tool.cjs.entry.js +1 -1
  25. package/dist/cjs/gx-ide-deployment-tool.cjs.entry.js.map +1 -1
  26. package/dist/cjs/gx-ide-design-import.cjs.entry.js +1 -1
  27. package/dist/cjs/gx-ide-edit-module-server.cjs.entry.js +1 -1
  28. package/dist/cjs/gx-ide-edit-module-server.cjs.entry.js.map +1 -1
  29. package/dist/cjs/gx-ide-empty-state.cjs.entry.js +1 -1
  30. package/dist/cjs/gx-ide-empty-state.cjs.entry.js.map +1 -1
  31. package/dist/cjs/gx-ide-file-uploader.cjs.entry.js +1 -1
  32. package/dist/cjs/gx-ide-file-uploader.cjs.entry.js.map +1 -1
  33. package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js +1 -1
  34. package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js.map +1 -1
  35. package/dist/cjs/gx-ide-json-import.cjs.entry.js +1 -1
  36. package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js +1 -1
  37. package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js.map +1 -1
  38. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js +1 -1
  39. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js.map +1 -1
  40. package/dist/cjs/gx-ide-name-picker.cjs.entry.js +1 -1
  41. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +1 -1
  42. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +1 -1
  43. package/dist/cjs/gx-ide-new-object.cjs.entry.js +1 -1
  44. package/dist/cjs/gx-ide-new-version.cjs.entry.js +1 -1
  45. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +1 -1
  46. package/dist/cjs/gx-ide-plugin-explorer.cjs.entry.js +1 -1
  47. package/dist/cjs/gx-ide-references.cjs.entry.js +1 -1
  48. package/dist/cjs/gx-ide-references.cjs.entry.js.map +1 -1
  49. package/dist/cjs/gx-ide-server-selector.cjs.entry.js +160 -75
  50. package/dist/cjs/gx-ide-server-selector.cjs.entry.js.map +1 -1
  51. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +1 -1
  52. package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js +3 -3
  53. package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js.map +1 -1
  54. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +3 -3
  55. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
  56. package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js +2 -2
  57. package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js.map +1 -1
  58. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +2 -2
  59. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js.map +1 -1
  60. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +1 -1
  61. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +3 -3
  62. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js.map +1 -1
  63. package/dist/cjs/gx-ide-test.cjs.entry.js +14 -65
  64. package/dist/cjs/gx-ide-test.cjs.entry.js.map +1 -1
  65. package/dist/cjs/gx-ide-wf-settings.cjs.entry.js +2 -2
  66. package/dist/cjs/gx-ide-wf-settings.cjs.entry.js.map +1 -1
  67. package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js +1 -1
  68. package/dist/cjs/gx-ide-ww-files.cjs.entry.js +1 -1
  69. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +2 -2
  70. package/dist/cjs/gx-ide-ww-images.cjs.entry.js.map +1 -1
  71. package/dist/cjs/loader.cjs.js +1 -1
  72. package/dist/cjs/{tabular-grid-render-7cf3815d.js → tabular-grid-render-ce935a84.js} +2 -2
  73. package/dist/cjs/{tabular-grid-render-7cf3815d.js.map → tabular-grid-render-ce935a84.js.map} +1 -1
  74. package/dist/collection/common/config.js +2 -1
  75. package/dist/collection/common/config.js.map +1 -1
  76. package/dist/collection/components/_helpers/card/card.css +24 -0
  77. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.css +24 -0
  78. package/dist/collection/components/_helpers/list-selector/list-selector.css +24 -0
  79. package/dist/collection/components/_test/test.css +610 -0
  80. package/dist/collection/components/_test/test.js +10 -64
  81. package/dist/collection/components/_test/test.js.map +1 -1
  82. package/dist/collection/components/bpm/application-declaration/bpm-app-declaration.css +24 -0
  83. package/dist/collection/components/bpm/assign-roles/bpm-assign-roles.css +24 -0
  84. package/dist/collection/components/bpm/export-xpdl/bpm-export-xpdl.css +24 -0
  85. package/dist/collection/components/bpm/import-files/bpm-import-files.css +24 -0
  86. package/dist/collection/components/bpm/import-gxpm/bpm-import-gxpm.css +24 -0
  87. package/dist/collection/components/bpm/objects-selector/bpm-objects-selector.css +24 -0
  88. package/dist/collection/components/bpm/timer-duration/bpm-timer-duration.css +24 -0
  89. package/dist/collection/components/deployment-tool/deployment-tool.css +24 -0
  90. package/dist/collection/components/file-uploader/file-uploader.css +24 -0
  91. package/dist/collection/components/gam-installation-settings/gam-installation-settings.css +24 -0
  92. package/dist/collection/components/modules/edit-module-server/edit-module-server.css +24 -0
  93. package/dist/collection/components/modules/manage-module-references/manage-module-references.css +24 -0
  94. package/dist/collection/components/references/references.css +24 -0
  95. package/dist/collection/components/team-dev/bring-changes/bring-changes.css +13 -13
  96. package/dist/collection/components/team-dev/history/history.css +13 -0
  97. package/dist/collection/components/team-dev/select-recent-comment/select-recent-comment.css +24 -0
  98. package/dist/collection/components/team-dev/server-selector/gx-ide-assets/server-selector/langs/server-selector.lang.en.json +7 -0
  99. package/dist/collection/components/team-dev/server-selector/gx-ide-assets/server-selector/langs/server-selector.lang.ja.json +7 -0
  100. package/dist/collection/components/team-dev/server-selector/gx-ide-assets/server-selector/langs/server-selector.lang.zh.json +7 -0
  101. package/dist/collection/components/team-dev/server-selector/server-selector.css +82 -18
  102. package/dist/collection/components/team-dev/server-selector/server-selector.js +229 -86
  103. package/dist/collection/components/team-dev/server-selector/server-selector.js.map +1 -1
  104. package/dist/collection/components/team-dev/update/update.css +13 -0
  105. package/dist/collection/components/team-dev/version-control/commit/commit.css +13 -0
  106. package/dist/collection/components/wf-settings/wf-settings.css +24 -0
  107. package/dist/collection/components/ww-images/ww-images.css +24 -0
  108. package/dist/components/bpm-objects-selector.js +1 -1
  109. package/dist/components/bpm-objects-selector.js.map +1 -1
  110. package/dist/components/config.js +2 -1
  111. package/dist/components/config.js.map +1 -1
  112. package/dist/components/gx-ide-bpm-app-declaration.js +1 -1
  113. package/dist/components/gx-ide-bpm-app-declaration.js.map +1 -1
  114. package/dist/components/gx-ide-bpm-assign-roles.js +1 -1
  115. package/dist/components/gx-ide-bpm-assign-roles.js.map +1 -1
  116. package/dist/components/gx-ide-bpm-export-xpdl.js +1 -1
  117. package/dist/components/gx-ide-bpm-export-xpdl.js.map +1 -1
  118. package/dist/components/gx-ide-bpm-import-files.js +1 -1
  119. package/dist/components/gx-ide-bpm-import-files.js.map +1 -1
  120. package/dist/components/gx-ide-bpm-import-gxpm.js +1 -1
  121. package/dist/components/gx-ide-bpm-import-gxpm.js.map +1 -1
  122. package/dist/components/gx-ide-bpm-timer-duration.js +1 -1
  123. package/dist/components/gx-ide-bpm-timer-duration.js.map +1 -1
  124. package/dist/components/gx-ide-card.js +1 -1
  125. package/dist/components/gx-ide-card.js.map +1 -1
  126. package/dist/components/gx-ide-deployment-tool.js +1 -1
  127. package/dist/components/gx-ide-deployment-tool.js.map +1 -1
  128. package/dist/components/gx-ide-edit-module-server.js +1 -1
  129. package/dist/components/gx-ide-edit-module-server.js.map +1 -1
  130. package/dist/components/gx-ide-empty-state2.js +1 -1
  131. package/dist/components/gx-ide-empty-state2.js.map +1 -1
  132. package/dist/components/gx-ide-file-uploader.js +1 -1
  133. package/dist/components/gx-ide-file-uploader.js.map +1 -1
  134. package/dist/components/gx-ide-gam-installation-settings.js +1 -1
  135. package/dist/components/gx-ide-gam-installation-settings.js.map +1 -1
  136. package/dist/components/gx-ide-manage-module-references.js +1 -1
  137. package/dist/components/gx-ide-manage-module-references.js.map +1 -1
  138. package/dist/components/gx-ide-references.js +1 -1
  139. package/dist/components/gx-ide-references.js.map +1 -1
  140. package/dist/components/gx-ide-server-selector.js +167 -78
  141. package/dist/components/gx-ide-server-selector.js.map +1 -1
  142. package/dist/components/gx-ide-team-dev-bring-changes.js +1 -1
  143. package/dist/components/gx-ide-team-dev-bring-changes.js.map +1 -1
  144. package/dist/components/gx-ide-team-dev-commit.js +1 -1
  145. package/dist/components/gx-ide-team-dev-commit.js.map +1 -1
  146. package/dist/components/gx-ide-team-dev-history.js +1 -1
  147. package/dist/components/gx-ide-team-dev-history.js.map +1 -1
  148. package/dist/components/gx-ide-team-dev-select-recent-comment.js +1 -1
  149. package/dist/components/gx-ide-team-dev-select-recent-comment.js.map +1 -1
  150. package/dist/components/gx-ide-team-dev-update.js +1 -1
  151. package/dist/components/gx-ide-team-dev-update.js.map +1 -1
  152. package/dist/components/gx-ide-test.js +13 -65
  153. package/dist/components/gx-ide-test.js.map +1 -1
  154. package/dist/components/gx-ide-wf-settings.js +1 -1
  155. package/dist/components/gx-ide-wf-settings.js.map +1 -1
  156. package/dist/components/gx-ide-ww-images.js +1 -1
  157. package/dist/components/gx-ide-ww-images.js.map +1 -1
  158. package/dist/components/list-selector.js +1 -1
  159. package/dist/components/list-selector.js.map +1 -1
  160. package/dist/esm/{config-9eaeb14b.js → config-5a775b7a.js} +3 -2
  161. package/dist/esm/config-5a775b7a.js.map +1 -0
  162. package/dist/esm/genexus-ide-ui.js +1 -1
  163. package/dist/esm/gx-ide-bpm-app-declaration.entry.js +2 -2
  164. package/dist/esm/gx-ide-bpm-app-declaration.entry.js.map +1 -1
  165. package/dist/esm/gx-ide-bpm-assign-roles.entry.js +2 -2
  166. package/dist/esm/gx-ide-bpm-assign-roles.entry.js.map +1 -1
  167. package/dist/esm/gx-ide-bpm-export-xpdl.entry.js +2 -2
  168. package/dist/esm/gx-ide-bpm-export-xpdl.entry.js.map +1 -1
  169. package/dist/esm/gx-ide-bpm-import-files.entry.js +2 -2
  170. package/dist/esm/gx-ide-bpm-import-files.entry.js.map +1 -1
  171. package/dist/esm/gx-ide-bpm-import-gxpm.entry.js +2 -2
  172. package/dist/esm/gx-ide-bpm-import-gxpm.entry.js.map +1 -1
  173. package/dist/esm/gx-ide-bpm-objects-selector.entry.js +2 -2
  174. package/dist/esm/gx-ide-bpm-objects-selector.entry.js.map +1 -1
  175. package/dist/esm/gx-ide-bpm-timer-duration.entry.js +2 -2
  176. package/dist/esm/gx-ide-bpm-timer-duration.entry.js.map +1 -1
  177. package/dist/esm/gx-ide-card.entry.js +1 -1
  178. package/dist/esm/gx-ide-card.entry.js.map +1 -1
  179. package/dist/esm/gx-ide-connect-gx-server.entry.js +1 -1
  180. package/dist/esm/gx-ide-create-kb-from-server.entry.js +1 -1
  181. package/dist/esm/gx-ide-curl-inspector.entry.js +1 -1
  182. package/dist/esm/gx-ide-data-selector.entry.js +1 -1
  183. package/dist/esm/gx-ide-deployment-tool.entry.js +1 -1
  184. package/dist/esm/gx-ide-deployment-tool.entry.js.map +1 -1
  185. package/dist/esm/gx-ide-design-import.entry.js +1 -1
  186. package/dist/esm/gx-ide-edit-module-server.entry.js +1 -1
  187. package/dist/esm/gx-ide-edit-module-server.entry.js.map +1 -1
  188. package/dist/esm/gx-ide-empty-state.entry.js +1 -1
  189. package/dist/esm/gx-ide-empty-state.entry.js.map +1 -1
  190. package/dist/esm/gx-ide-file-uploader.entry.js +1 -1
  191. package/dist/esm/gx-ide-file-uploader.entry.js.map +1 -1
  192. package/dist/esm/gx-ide-gam-installation-settings.entry.js +1 -1
  193. package/dist/esm/gx-ide-gam-installation-settings.entry.js.map +1 -1
  194. package/dist/esm/gx-ide-json-import.entry.js +1 -1
  195. package/dist/esm/gx-ide-list-selector_2.entry.js +1 -1
  196. package/dist/esm/gx-ide-list-selector_2.entry.js.map +1 -1
  197. package/dist/esm/gx-ide-manage-module-references.entry.js +1 -1
  198. package/dist/esm/gx-ide-manage-module-references.entry.js.map +1 -1
  199. package/dist/esm/gx-ide-name-picker.entry.js +1 -1
  200. package/dist/esm/gx-ide-new-environment.entry.js +1 -1
  201. package/dist/esm/gx-ide-new-kb.entry.js +1 -1
  202. package/dist/esm/gx-ide-new-object.entry.js +1 -1
  203. package/dist/esm/gx-ide-new-version.entry.js +1 -1
  204. package/dist/esm/gx-ide-object-selector.entry.js +1 -1
  205. package/dist/esm/gx-ide-plugin-explorer.entry.js +1 -1
  206. package/dist/esm/gx-ide-references.entry.js +1 -1
  207. package/dist/esm/gx-ide-references.entry.js.map +1 -1
  208. package/dist/esm/gx-ide-server-selector.entry.js +160 -75
  209. package/dist/esm/gx-ide-server-selector.entry.js.map +1 -1
  210. package/dist/esm/gx-ide-share-kb.entry.js +1 -1
  211. package/dist/esm/gx-ide-team-dev-bring-changes.entry.js +3 -3
  212. package/dist/esm/gx-ide-team-dev-bring-changes.entry.js.map +1 -1
  213. package/dist/esm/gx-ide-team-dev-commit.entry.js +3 -3
  214. package/dist/esm/gx-ide-team-dev-commit.entry.js.map +1 -1
  215. package/dist/esm/gx-ide-team-dev-history.entry.js +2 -2
  216. package/dist/esm/gx-ide-team-dev-history.entry.js.map +1 -1
  217. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +2 -2
  218. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js.map +1 -1
  219. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +1 -1
  220. package/dist/esm/gx-ide-team-dev-update.entry.js +3 -3
  221. package/dist/esm/gx-ide-team-dev-update.entry.js.map +1 -1
  222. package/dist/esm/gx-ide-test.entry.js +14 -65
  223. package/dist/esm/gx-ide-test.entry.js.map +1 -1
  224. package/dist/esm/gx-ide-wf-settings.entry.js +2 -2
  225. package/dist/esm/gx-ide-wf-settings.entry.js.map +1 -1
  226. package/dist/esm/gx-ide-ww-attributes.entry.js +1 -1
  227. package/dist/esm/gx-ide-ww-files.entry.js +1 -1
  228. package/dist/esm/gx-ide-ww-images.entry.js +2 -2
  229. package/dist/esm/gx-ide-ww-images.entry.js.map +1 -1
  230. package/dist/esm/loader.js +1 -1
  231. package/dist/esm/{tabular-grid-render-11f0a55c.js → tabular-grid-render-137bd3dd.js} +2 -2
  232. package/dist/esm/{tabular-grid-render-11f0a55c.js.map → tabular-grid-render-137bd3dd.js.map} +1 -1
  233. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  234. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  235. package/dist/genexus-ide-ui/gx-ide-assets/server-selector/langs/server-selector.lang.en.json +7 -0
  236. package/dist/genexus-ide-ui/gx-ide-assets/server-selector/langs/server-selector.lang.ja.json +7 -0
  237. package/dist/genexus-ide-ui/gx-ide-assets/server-selector/langs/server-selector.lang.zh.json +7 -0
  238. package/dist/genexus-ide-ui/{p-bd280758.entry.js → p-086de552.entry.js} +2 -2
  239. package/dist/genexus-ide-ui/{p-61ce9a9f.entry.js → p-0910af1b.entry.js} +71 -71
  240. package/dist/genexus-ide-ui/{p-d0584c71.entry.js → p-1107bf84.entry.js} +2 -2
  241. package/dist/genexus-ide-ui/{p-3673759a.entry.js → p-13ca0217.entry.js} +2 -2
  242. package/dist/genexus-ide-ui/p-156fa688.entry.js +59 -0
  243. package/dist/genexus-ide-ui/p-156fa688.entry.js.map +1 -0
  244. package/dist/genexus-ide-ui/{p-3013895f.entry.js → p-1671c731.entry.js} +6 -6
  245. package/dist/genexus-ide-ui/{p-6a1431f7.entry.js → p-2c0f10bf.entry.js} +2 -2
  246. package/dist/genexus-ide-ui/{p-cc5feb47.entry.js → p-2d70b76d.entry.js} +3 -3
  247. package/dist/genexus-ide-ui/{p-fb66e72a.entry.js → p-2d989eb1.entry.js} +2 -2
  248. package/dist/genexus-ide-ui/{p-ce9ca2dd.entry.js → p-300fcfa1.entry.js} +2 -2
  249. package/dist/genexus-ide-ui/{p-41e1c129.entry.js → p-349f1622.entry.js} +2 -2
  250. package/dist/genexus-ide-ui/{p-ea79f745.entry.js → p-408eac22.entry.js} +24 -24
  251. package/dist/genexus-ide-ui/{p-22814dfd.entry.js → p-4c9cddc5.entry.js} +3 -3
  252. package/dist/genexus-ide-ui/{p-f8967408.entry.js → p-5308144e.entry.js} +11 -11
  253. package/dist/genexus-ide-ui/{p-0bb54667.entry.js → p-57c318ba.entry.js} +9 -9
  254. package/dist/genexus-ide-ui/{p-d0c43abd.entry.js → p-5b8ef529.entry.js} +3 -3
  255. package/dist/genexus-ide-ui/{p-c2ac7757.entry.js → p-6d3a4648.entry.js} +2 -2
  256. package/dist/genexus-ide-ui/{p-86b9dc50.entry.js → p-6eb0d883.entry.js} +2 -2
  257. package/dist/genexus-ide-ui/{p-6e8c3be5.entry.js → p-74c46daf.entry.js} +33 -33
  258. package/dist/genexus-ide-ui/{p-2fabcb06.entry.js → p-7d779463.entry.js} +12 -12
  259. package/dist/genexus-ide-ui/{p-6749f088.entry.js → p-85cf50c5.entry.js} +3 -3
  260. package/dist/genexus-ide-ui/p-91497934.entry.js +542 -0
  261. package/dist/genexus-ide-ui/p-91497934.entry.js.map +1 -0
  262. package/dist/genexus-ide-ui/{p-7f689bcf.entry.js → p-93e79d19.entry.js} +2 -2
  263. package/dist/genexus-ide-ui/{p-46c9eb6a.entry.js → p-94cb4746.entry.js} +3 -3
  264. package/dist/genexus-ide-ui/{p-52ee29d3.entry.js → p-95f8ff9f.entry.js} +4 -4
  265. package/dist/genexus-ide-ui/p-95f8ff9f.entry.js.map +1 -0
  266. package/dist/genexus-ide-ui/{p-3f6709b6.entry.js → p-9adbe860.entry.js} +2 -2
  267. package/dist/genexus-ide-ui/{p-95736f92.entry.js → p-9ffa7afd.entry.js} +2 -2
  268. package/dist/genexus-ide-ui/{p-e00a8dfd.entry.js → p-a105f903.entry.js} +2 -2
  269. package/dist/genexus-ide-ui/{p-66c5217f.js → p-a4b820e5.js} +37 -37
  270. package/dist/genexus-ide-ui/{p-327f1020.entry.js → p-ad5f63da.entry.js} +2 -2
  271. package/dist/genexus-ide-ui/{p-369e9936.entry.js → p-b0d1b217.entry.js} +85 -85
  272. package/dist/genexus-ide-ui/{p-f89807b5.entry.js → p-b1bf5be8.entry.js} +2 -2
  273. package/dist/genexus-ide-ui/{p-11f37427.entry.js → p-b7ae21bd.entry.js} +2 -2
  274. package/dist/genexus-ide-ui/{p-9a03ac9f.js → p-c5196b3b.js} +3 -2
  275. package/dist/genexus-ide-ui/p-c5196b3b.js.map +1 -0
  276. package/dist/genexus-ide-ui/{p-c71e91f2.entry.js → p-d243ee33.entry.js} +2 -2
  277. package/dist/genexus-ide-ui/{p-c1196cb0.entry.js → p-d41d52f6.entry.js} +2 -2
  278. package/dist/genexus-ide-ui/{p-3942c139.entry.js → p-d71cf7d9.entry.js} +21 -21
  279. package/dist/genexus-ide-ui/{p-146f22d0.entry.js → p-d7c133da.entry.js} +2 -2
  280. package/dist/genexus-ide-ui/{p-0da40329.entry.js → p-e8e7f960.entry.js} +4 -4
  281. package/dist/genexus-ide-ui/{p-dcb0849a.entry.js → p-ecba7aa4.entry.js} +3 -3
  282. package/dist/genexus-ide-ui/{p-3265f4c1.entry.js → p-f03930f9.entry.js} +2 -2
  283. package/dist/genexus-ide-ui/{p-87c7e303.entry.js → p-f5734cc7.entry.js} +2 -2
  284. package/dist/genexus-ide-ui/{p-78b1aa91.entry.js → p-f9bde776.entry.js} +3 -3
  285. package/dist/genexus-ide-ui/{p-2a74c476.entry.js → p-fff8902d.entry.js} +192 -192
  286. package/dist/types/common/config.d.ts +1 -0
  287. package/dist/types/components/_test/test.d.ts +0 -1
  288. package/dist/types/components/team-dev/server-selector/server-selector.d.ts +19 -10
  289. package/dist/types/components.d.ts +32 -8
  290. package/package.json +1 -1
  291. package/dist/cjs/config-df6ba4e9.js.map +0 -1
  292. package/dist/esm/config-9eaeb14b.js.map +0 -1
  293. package/dist/genexus-ide-ui/p-0d2fb794.entry.js +0 -446
  294. package/dist/genexus-ide-ui/p-0d2fb794.entry.js.map +0 -1
  295. package/dist/genexus-ide-ui/p-3b808c6f.entry.js +0 -100
  296. package/dist/genexus-ide-ui/p-3b808c6f.entry.js.map +0 -1
  297. package/dist/genexus-ide-ui/p-52ee29d3.entry.js.map +0 -1
  298. package/dist/genexus-ide-ui/p-9a03ac9f.js.map +0 -1
  299. /package/dist/genexus-ide-ui/{p-bd280758.entry.js.map → p-086de552.entry.js.map} +0 -0
  300. /package/dist/genexus-ide-ui/{p-61ce9a9f.entry.js.map → p-0910af1b.entry.js.map} +0 -0
  301. /package/dist/genexus-ide-ui/{p-d0584c71.entry.js.map → p-1107bf84.entry.js.map} +0 -0
  302. /package/dist/genexus-ide-ui/{p-3673759a.entry.js.map → p-13ca0217.entry.js.map} +0 -0
  303. /package/dist/genexus-ide-ui/{p-3013895f.entry.js.map → p-1671c731.entry.js.map} +0 -0
  304. /package/dist/genexus-ide-ui/{p-6a1431f7.entry.js.map → p-2c0f10bf.entry.js.map} +0 -0
  305. /package/dist/genexus-ide-ui/{p-cc5feb47.entry.js.map → p-2d70b76d.entry.js.map} +0 -0
  306. /package/dist/genexus-ide-ui/{p-fb66e72a.entry.js.map → p-2d989eb1.entry.js.map} +0 -0
  307. /package/dist/genexus-ide-ui/{p-ce9ca2dd.entry.js.map → p-300fcfa1.entry.js.map} +0 -0
  308. /package/dist/genexus-ide-ui/{p-41e1c129.entry.js.map → p-349f1622.entry.js.map} +0 -0
  309. /package/dist/genexus-ide-ui/{p-ea79f745.entry.js.map → p-408eac22.entry.js.map} +0 -0
  310. /package/dist/genexus-ide-ui/{p-22814dfd.entry.js.map → p-4c9cddc5.entry.js.map} +0 -0
  311. /package/dist/genexus-ide-ui/{p-f8967408.entry.js.map → p-5308144e.entry.js.map} +0 -0
  312. /package/dist/genexus-ide-ui/{p-0bb54667.entry.js.map → p-57c318ba.entry.js.map} +0 -0
  313. /package/dist/genexus-ide-ui/{p-d0c43abd.entry.js.map → p-5b8ef529.entry.js.map} +0 -0
  314. /package/dist/genexus-ide-ui/{p-c2ac7757.entry.js.map → p-6d3a4648.entry.js.map} +0 -0
  315. /package/dist/genexus-ide-ui/{p-86b9dc50.entry.js.map → p-6eb0d883.entry.js.map} +0 -0
  316. /package/dist/genexus-ide-ui/{p-6e8c3be5.entry.js.map → p-74c46daf.entry.js.map} +0 -0
  317. /package/dist/genexus-ide-ui/{p-2fabcb06.entry.js.map → p-7d779463.entry.js.map} +0 -0
  318. /package/dist/genexus-ide-ui/{p-6749f088.entry.js.map → p-85cf50c5.entry.js.map} +0 -0
  319. /package/dist/genexus-ide-ui/{p-7f689bcf.entry.js.map → p-93e79d19.entry.js.map} +0 -0
  320. /package/dist/genexus-ide-ui/{p-46c9eb6a.entry.js.map → p-94cb4746.entry.js.map} +0 -0
  321. /package/dist/genexus-ide-ui/{p-3f6709b6.entry.js.map → p-9adbe860.entry.js.map} +0 -0
  322. /package/dist/genexus-ide-ui/{p-95736f92.entry.js.map → p-9ffa7afd.entry.js.map} +0 -0
  323. /package/dist/genexus-ide-ui/{p-e00a8dfd.entry.js.map → p-a105f903.entry.js.map} +0 -0
  324. /package/dist/genexus-ide-ui/{p-66c5217f.js.map → p-a4b820e5.js.map} +0 -0
  325. /package/dist/genexus-ide-ui/{p-327f1020.entry.js.map → p-ad5f63da.entry.js.map} +0 -0
  326. /package/dist/genexus-ide-ui/{p-369e9936.entry.js.map → p-b0d1b217.entry.js.map} +0 -0
  327. /package/dist/genexus-ide-ui/{p-f89807b5.entry.js.map → p-b1bf5be8.entry.js.map} +0 -0
  328. /package/dist/genexus-ide-ui/{p-11f37427.entry.js.map → p-b7ae21bd.entry.js.map} +0 -0
  329. /package/dist/genexus-ide-ui/{p-c71e91f2.entry.js.map → p-d243ee33.entry.js.map} +0 -0
  330. /package/dist/genexus-ide-ui/{p-c1196cb0.entry.js.map → p-d41d52f6.entry.js.map} +0 -0
  331. /package/dist/genexus-ide-ui/{p-3942c139.entry.js.map → p-d71cf7d9.entry.js.map} +0 -0
  332. /package/dist/genexus-ide-ui/{p-146f22d0.entry.js.map → p-d7c133da.entry.js.map} +0 -0
  333. /package/dist/genexus-ide-ui/{p-0da40329.entry.js.map → p-e8e7f960.entry.js.map} +0 -0
  334. /package/dist/genexus-ide-ui/{p-dcb0849a.entry.js.map → p-ecba7aa4.entry.js.map} +0 -0
  335. /package/dist/genexus-ide-ui/{p-3265f4c1.entry.js.map → p-f03930f9.entry.js.map} +0 -0
  336. /package/dist/genexus-ide-ui/{p-87c7e303.entry.js.map → p-f5734cc7.entry.js.map} +0 -0
  337. /package/dist/genexus-ide-ui/{p-78b1aa91.entry.js.map → p-f9bde776.entry.js.map} +0 -0
  338. /package/dist/genexus-ide-ui/{p-2a74c476.entry.js.map → p-fff8902d.entry.js.map} +0 -0
@@ -0,0 +1,542 @@
1
+ import { r as e, h as t, H as i, a as s } from "./p-9b9ccd0c.js";
2
+
3
+ import { g as r } from "./p-d42e842b.js";
4
+
5
+ import "./p-d4ecd3bb.js";
6
+
7
+ import "lit";
8
+
9
+ import "lit/directives/when.js";
10
+
11
+ import "lit/directives/if-defined.js";
12
+
13
+ import { c as a } from "./p-c5196b3b.js";
14
+
15
+ import { v as l, c as o } from "./p-b32b6b1f.js";
16
+
17
+ import { L as n } from "./p-311eedf3.js";
18
+
19
+ import { s as c } from "./p-02fb496a.js";
20
+
21
+ const d = ".custom-icon-text-wrapper{display:flex;align-items:center;gap:10px}.warning-error-description{display:flex;align-items:center;gap:8px;padding:8px;max-inline-size:800px;line-height:1.5}.warning-error-icon{flex-shrink:0}:host{display:grid;block-size:100%;grid-template-rows:max-content max-content 1fr max-content;row-gap:var(--mer-spacing--md);overflow:auto}:host(.new-connection){grid-template-rows:max-content 1fr}:host(.recently-used-empty){grid-template-rows:max-content 1fr}.section{display:contents}.tabular-grid{border-radius:var(--mer-border__radius--sm);overflow:hidden;overflow:auto;border-inline:1px solid var(--grid-cell__border-color)}.tabular-grid-rowset-empty{border-block-end:1px solid var(--grid-cell__border-color);overflow:hidden}.tabular-grid ch-tabular-grid-cell:is(:nth-child(2),:nth-child(3),:nth-child(4)){padding-block:var(--grid-cell__padding-block);padding-inline:var(--grid-cell__padding-inline);align-items:start;justify-content:start;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-inline-size:0}.text-neutral-gray-400,.tabular-grid-cell.text-neutral-gray-400{color:var(--mer-color__neutral-gray--400)}.search-server{inline-size:50%}.tabular-grid{overflow:auto;border-block:1px solid var(--grid-cell__border-color)}.tabular-grid-all-servers .tabular-grid-column:first-child::part(bar){--grid-common__gap:0}.field-block-all-servers{overflow:auto}.tabular-grid-wrapper{position:relative;overflow:auto}.border-patch{--tabular-grid-border-radius:4px;position:absolute;top:0;inline-size:calc(100% - var(--tabular-grid-border-radius) * 2);inset-inline-start:var(--tabular-grid-border-radius);block-size:2px;background-color:var(--items-container__bg-color);z-index:9999;border-block-start:1px solid var(--mer-border-color__on-surface)}.tooltip{position:absolute}.recently-used-card{border:1px solid var(--grid-cell__border-color);border-radius:var(--mer-border__radius--sm);cursor:pointer}.recently-used-card:hover{background-color:var(--mer-color__tinted-primary--5)}.recently-used-card:focus-visible{outline:var(--focus__outline-width) var(--focus__outline-style) var(--focus__outline-color);outline-offset:var(--focus__outline-offset)}.recently-used-card--selected{background-color:var(--mer-color__tinted-primary--10);border-color:var(--mer-color__tinted-primary--30)}.recently-used-card-content{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:8px;gap:2px;overflow:hidden}.recently-used-card-content .text-decoration-line-underline{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;text-decoration:underline}.delete-server-icon{margin-inline:calc((30.39px - var(--ch-image-size)) / 2)}.tabular-grid ch-tabular-grid-cell:is(:nth-child(5)){--control__border-width:0;--control__border-color:transparent;--control__border-radius:0;padding-block:0;padding-inline:0;padding-block:0;padding-inline:0;--control__padding-inline:var(--grid-cell__padding-inline);display:grid;align-items:stretch;justify-content:stretch;min-inline-size:0}.tabular-grid ch-tabular-grid-cell:is(:nth-child(5)):hover{outline:var(--focus__outline-width) var(--focus__outline-style) var(--control__border-color--hover);outline-offset:var(--focus__outline-offset)}";
22
+
23
+ var h = undefined && undefined.__classPrivateFieldGet || function(e, t, i, s) {
24
+ if (i === "a" && !s) throw new TypeError("Private accessor was defined without a getter");
25
+ if (typeof t === "function" ? e !== t || !s : !t.has(e)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
26
+ return i === "m" ? s : i === "a" ? s.call(e) : s ? s.value : t.get(e);
27
+ };
28
+
29
+ var u = undefined && undefined.__classPrivateFieldSet || function(e, t, i, s, r) {
30
+ if (s === "m") throw new TypeError("Private method is not writable");
31
+ if (s === "a" && !r) throw new TypeError("Private accessor was defined without a setter");
32
+ if (typeof t === "function" ? e !== t || !r : !t.has(e)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
33
+ return s === "a" ? r.call(e, i) : r ? r.value = i : t.set(e, i), i;
34
+ };
35
+
36
+ var f, p, b, m, g, v, w, y, _, k, x, M, W, z, C, N, j, I, T, E, S, $, A, D, H, F, L, U, P, R, V, O;
37
+
38
+ const q = [ "resets/box-sizing", "utils/form--full", "utils/layout", "utils/typography", "utils/spacing", "components/tooltip", "chameleon/scrollbar", "components/tabular-grid" ];
39
+
40
+ const B = r({
41
+ category: "system",
42
+ name: "information",
43
+ colorType: "on-surface"
44
+ });
45
+
46
+ const G = r({
47
+ category: "system",
48
+ name: "lock",
49
+ colorType: "on-surface"
50
+ });
51
+
52
+ const J = r({
53
+ category: "system",
54
+ name: "language",
55
+ colorType: "on-surface"
56
+ });
57
+
58
+ const K = r({
59
+ category: "system",
60
+ name: "delete-outlined",
61
+ colorType: "neutral"
62
+ });
63
+
64
+ const Q = r({
65
+ category: "system",
66
+ name: "error",
67
+ colorType: "error"
68
+ });
69
+
70
+ const X = r({
71
+ category: "system",
72
+ name: "search",
73
+ colorType: "on-surface"
74
+ });
75
+
76
+ const Y = "server-name-";
77
+
78
+ const Z = class {
79
+ constructor(i) {
80
+ e(this, i);
81
+ f.set(this, void 0);
82
+ p.set(this, void 0);
83
+ b.set(this, void 0);
84
+ m.set(this, void 0);
85
+ g.set(this, void 0);
86
+ v.set(this, new Map);
87
+ w.set(this, []);
88
+ y.set(this, (() => {
89
+ this.cancelCallback();
90
+ }));
91
+ _.set(this, (async () => {
92
+ let e;
93
+ if (this.selectedConnectionType === "select") {
94
+ e = await this.selectServerCallback({
95
+ uri: this.selectedServerUri,
96
+ name: this.selectedServerName
97
+ }, this.selectedConnectionType);
98
+ } else {
99
+ e = await this.selectServerCallback({
100
+ uri: this.serverUrlInputValue,
101
+ name: this.serverNameInputValue
102
+ }, this.selectedConnectionType);
103
+ this.validatableControls = l(e, this.validatableControls);
104
+ }
105
+ }));
106
+ // TODO: evaluate if this should be a global helper function.
107
+ // It is used on other dialogs as well.
108
+ k.set(this, (e => {
109
+ var i, s, r;
110
+ return ((s = (i = this.validatableControls) === null || i === void 0 ? void 0 : i.get(e === null || e === void 0 ? void 0 : e.id)) === null || s === void 0 ? void 0 : s.hasError) && ((r = this.validatableControls.get(e.id)) === null || r === void 0 ? void 0 : r.message) && t("ch-tooltip", {
111
+ class: "tooltip",
112
+ actionElement: e,
113
+ blockAlign: a.tooltipSettings.blockAlign,
114
+ inlineAlign: a.tooltipSettings.inlineAlign,
115
+ delay: a.tooltipSettings.delay
116
+ }, this.validatableControls.get(e.id).message);
117
+ }));
118
+ x.set(this, (e => {
119
+ e.forEach((e => {
120
+ if (e.id && !this.validatableControls.has(e.id)) {
121
+ this.validatableControls.set(e.id, {
122
+ reference: e,
123
+ hasError: false,
124
+ message: undefined
125
+ });
126
+ }
127
+ }));
128
+ }));
129
+ M.set(this, (e => {
130
+ this.filterValue = e.detail.toLowerCase();
131
+ this.filteredServersData = this.serversData.filter((e => e.serverName.toLowerCase().includes(this.filterValue)));
132
+ }));
133
+ W.set(this, ((e, t) => {
134
+ this.enableConfirmButton = false;
135
+ this[t] = e.detail;
136
+ const i = t === "serverUrlInputValue" ? "server-url" : "server-name";
137
+ o(this.validatableControls, i);
138
+ h(this, I, "f").call(this);
139
+ }));
140
+ z.set(this, (async e => {
141
+ var t;
142
+ this.selectedRecentlyUsedId = e.id;
143
+ await ((t = h(this, p, "f")) === null || t === void 0 ? void 0 : t.selectRow(e.id));
144
+ await h(this, S, "f").call(this, e.id);
145
+ }));
146
+ C.set(this, (async e => {
147
+ if (e.accessLevel === "private") {
148
+ const t = await this.deleteServerCallback(e);
149
+ if (t) {
150
+ this.selectedServerName = "None";
151
+ this.enableConfirmButton = false;
152
+ }
153
+ }
154
+ }));
155
+ N.set(this, (async e => {
156
+ u(this, g, e.detail, "f");
157
+ }));
158
+ j.set(this, (async e => {
159
+ let t = {
160
+ fieldErrors: [],
161
+ success: false
162
+ };
163
+ if (e.serverName !== h(this, g, "f") && e.accessLevel === "private") {
164
+ t = await this.updateServerCallback(Object.assign(Object.assign({}, e), {
165
+ serverName: h(this, g, "f")
166
+ }));
167
+ }
168
+ this.validatableControls = l(t, this.validatableControls);
169
+ if (t.success || e.serverName === h(this, g, "f")) {
170
+ this.selectedServerName = h(this, g, "f");
171
+ o(this.validatableControls, `${Y}${e.id}`);
172
+ }
173
+ }));
174
+ I.set(this, (() => {
175
+ if (this.serverUrlInputValue && this.serverUrlInputValue.length > 0 && this.serverNameInputValue && this.serverNameInputValue.length > 0) {
176
+ this.enableConfirmButton = true;
177
+ } else {
178
+ this.enableConfirmButton = false;
179
+ }
180
+ }));
181
+ T.set(this, (e => {
182
+ h(this, S, "f").call(this, e.id);
183
+ h(this, _, "f").call(this);
184
+ }));
185
+ E.set(this, (e => h(this, S, "f").call(this, e.detail.rowId)));
186
+ S.set(this, (async e => {
187
+ if (e === undefined) {
188
+ this.enableConfirmButton = false;
189
+ this.selectedServerUri = undefined;
190
+ this.selectedServerName = undefined;
191
+ return;
192
+ }
193
+ const t = this.serversData.find((t => t.id === e));
194
+ this.enableConfirmButton = true;
195
+ this.selectedServerName = t === null || t === void 0 ? void 0 : t.serverName;
196
+ this.selectedServerUri = t === null || t === void 0 ? void 0 : t.serverUrl;
197
+ this.userName = (t === null || t === void 0 ? void 0 : t.gxServerUsername) || "";
198
+ this.selectedRecentlyUsedId = t === null || t === void 0 ? void 0 : t.id;
199
+ }));
200
+ $.set(this, (e => {
201
+ this.selectedConnectionType = e.detail;
202
+ if (this.selectedConnectionType === "new") {
203
+ this.enableConfirmButton = false;
204
+ this.serverUrlInputValue = "";
205
+ }
206
+ this.selectedServerName = "None";
207
+ }));
208
+ A.set(this, (e => {
209
+ this.filteredServersData = [ ...c(e, this.filteredServersData, "string", undefined) ];
210
+ }));
211
+ D.set(this, ((e = false) => t("ch-tabular-grid-columnset", {
212
+ class: "tabular-grid-column-set"
213
+ }, t("ch-tabular-grid-column", {
214
+ columnId: "icon",
215
+ class: "tabular-grid-column tabular-grid-column-icon",
216
+ columnName: "Icon",
217
+ settingable: false,
218
+ columnNameHidden: true,
219
+ size: a.tabularGrid.colSize.maxContent,
220
+ resizable: false,
221
+ sortable: false
222
+ }), t("ch-tabular-grid-column", {
223
+ columnId: "serverName",
224
+ class: "tabular-grid-column",
225
+ columnName: "Server Name",
226
+ settingable: false,
227
+ columnNameHidden: e,
228
+ size: a.tabularGrid.colSize.serverName,
229
+ resizable: false,
230
+ sortable: !e,
231
+ onColumnSortChanged: h(this, A, "f")
232
+ }), t("ch-tabular-grid-column", {
233
+ columnId: "serverUrl",
234
+ class: "tabular-grid-column",
235
+ columnName: "Server Url",
236
+ settingable: false,
237
+ columnNameHidden: e,
238
+ size: a.tabularGrid.colSize.auto,
239
+ resizable: false,
240
+ sortable: !e,
241
+ onColumnSortChanged: h(this, A, "f")
242
+ }), t("ch-tabular-grid-column", {
243
+ columnId: "userName",
244
+ class: "tabular-grid-column",
245
+ columnName: "Connected",
246
+ settingable: false,
247
+ columnNameHidden: e,
248
+ size: a.tabularGrid.colSize.userName,
249
+ resizable: false,
250
+ sortable: !e,
251
+ onColumnSortChanged: h(this, A, "f")
252
+ }), t("ch-tabular-grid-column", {
253
+ columnId: "action",
254
+ class: "tabular-grid-column tabular-grid-column-icon",
255
+ columnName: "Action",
256
+ settingable: false,
257
+ columnNameHidden: true,
258
+ size: a.tabularGrid.colSize.maxContent,
259
+ resizable: false,
260
+ sortable: false
261
+ }))));
262
+ H.set(this, (e => e !== "" ? t("ch-tooltip", {
263
+ class: "tooltip",
264
+ actionElement: null,
265
+ blockAlign: "outside-end",
266
+ inlineAlign: a.tooltipSettings.inlineAlign,
267
+ delay: a.tooltipSettings.delayLong
268
+ }, e) : null));
269
+ F.set(this, (e => t("ch-tabular-grid-rowset", {
270
+ class: "tabular-grid-rowset"
271
+ }, t("ch-tabular-grid-rowset-empty", {
272
+ class: "tabular-grid-rowset-empty"
273
+ }, t("p", {
274
+ class: "warning-error-description"
275
+ }, t("ch-image", {
276
+ class: "icon-md warning-error-icon",
277
+ src: Q
278
+ }), e)))));
279
+ L.set(this, (e => [ t("ch-tabular-grid-cell", {
280
+ class: "tabular-grid-cell"
281
+ }, h(this, P, "f").call(this, e.accessLevel)), t("ch-tabular-grid-cell", {
282
+ class: "tabular-grid-cell"
283
+ }, e.accessLevel === "private" ? t("ch-edit", {
284
+ id: `${Y}${e.id}`,
285
+ value: e.serverName,
286
+ onInput: h(this, N, "f"),
287
+ onChange: () => h(this, j, "f").call(this, e),
288
+ maxLength: 18,
289
+ ref: t => {
290
+ const i = `${Y}${e.id}`;
291
+ if (t) {
292
+ h(this, v, "f").set(i, t);
293
+ } else {
294
+ h(this, v, "f").delete(i);
295
+ }
296
+ }
297
+ }) : e.serverName), t("ch-tabular-grid-cell", {
298
+ class: "tabular-grid-cell"
299
+ }, e.serverUrl, h(this, H, "f").call(this, e.serverUrl)), t("ch-tabular-grid-cell", {
300
+ class: "tabular-grid-cell"
301
+ }, e.gxServerUsername), t("ch-tabular-grid-cell", {
302
+ class: "tabular-grid-cell",
303
+ onClick: () => h(this, C, "f").call(this, e)
304
+ }, t("button", {
305
+ class: "button-tertiary button-icon-only",
306
+ "aria-label": h(this, f, "f").actions.deleteServer,
307
+ disabled: e.accessLevel === "public"
308
+ }, t("ch-image", {
309
+ disabled: e.accessLevel === "public",
310
+ class: "icon-md delete-server-icon",
311
+ src: K
312
+ }))) ]));
313
+ U.set(this, (() => t("div", {
314
+ class: "tabular-grid-wrapper"
315
+ }, t("div", {
316
+ class: "border-patch"
317
+ }), t("ch-tabular-grid", {
318
+ class: "tabular-grid tabular-grid-all-servers",
319
+ rowSelectionMode: "single",
320
+ ref: e => u(this, p, e, "f"),
321
+ allowColumnReorder: false,
322
+ onRowClicked: h(this, E, "f"),
323
+ id: "all-servers"
324
+ }, h(this, D, "f").call(this), this.filteredServersData.length > 0 ? t("ch-tabular-grid-rowset", {
325
+ class: "tabular-grid-rowset"
326
+ }, this.filteredServersData.map((e => {
327
+ var i, s;
328
+ const r = `${Y}${e.id}`;
329
+ const a = ((i = this.validatableControls.get(r)) === null || i === void 0 ? void 0 : i.hasError) === true;
330
+ const l = (s = this.validatableControls.get(r)) === null || s === void 0 ? void 0 : s.message;
331
+ return t("ch-tabular-grid-row", {
332
+ rowid: e.id,
333
+ class: "tabular-grid-row"
334
+ }, h(this, L, "f").call(this, e), a && h(this, F, "f").call(this, l));
335
+ }))) : t("ch-tabular-grid-rowset", {
336
+ class: "tabular-grid-rowset"
337
+ }, t("ch-tabular-grid-rowset-empty", {
338
+ class: "tabular-grid-rowset-empty"
339
+ }, t("gx-ide-empty-state", {
340
+ stateIconSrc: B,
341
+ stateTitle: h(this, f, "f").emptyConnectedServers,
342
+ isAnimated: true
343
+ })))))));
344
+ P.set(this, (e => {
345
+ const i = e === "private" ? G : J;
346
+ return t("ch-image", {
347
+ class: "icon-md",
348
+ src: i
349
+ });
350
+ }));
351
+ R.set(this, (() => {
352
+ const e = this.selectedConnectionType === "select";
353
+ return t("footer", {
354
+ class: {
355
+ "control-footer-with-border": true,
356
+ "control-footer-space-between": this.selectedConnectionType === "select",
357
+ "space-between": e,
358
+ "spacing-body-inline": true,
359
+ "spacing-body-block": true
360
+ }
361
+ }, e && t("p", {
362
+ class: "body-italic-m"
363
+ }, "Selected: ", this.selectedServerName), t("div", {
364
+ class: "buttons-spacer"
365
+ }, t("button", {
366
+ // cancel button
367
+ class: "button-secondary",
368
+ onClick: h(this, y, "f")
369
+ }, h(this, f, "f").footer.cancel), t("button", {
370
+ // confirm button
371
+ class: "button-primary",
372
+ onClick: this.enableConfirmButton && h(this, _, "f"),
373
+ disabled: !this.enableConfirmButton
374
+ }, h(this, f, "f").footer.confirm)));
375
+ }));
376
+ V.set(this, (() => {
377
+ const e = this.selectedConnectionType === "select" && this.recentlyUsedServersData.length > 0;
378
+ return e && t("div", {
379
+ class: "field field-block spacing-body-inline"
380
+ }, t("label", {
381
+ class: "label",
382
+ htmlFor: "recently-used-servers"
383
+ }, h(this, f, "f").recentlyUsed.title), t("div", {
384
+ class: {
385
+ layout: true,
386
+ "layout--cols-3": this.recentlyUsedServersData.length >= 3,
387
+ "layout--cols-2": this.recentlyUsedServersData.length <= 2
388
+ }
389
+ }, this.recentlyUsedServersData.map((e => t("button", {
390
+ class: {
391
+ layout__panel: true,
392
+ "recently-used-card": true,
393
+ "recently-used-card--selected": this.selectedRecentlyUsedId === e.id
394
+ },
395
+ onClick: () => h(this, z, "f").call(this, e),
396
+ onDblClick: () => h(this, T, "f").call(this, e)
397
+ }, t("div", {
398
+ class: "recently-used-card-content"
399
+ }, t("p", {
400
+ class: "body-regular-s text-neutral-gray-400"
401
+ }, e.serverName), t("p", {
402
+ class: "body-regular-s text-neutral-gray-400 text-decoration-line-underline"
403
+ }, e.serverUrl)), h(this, H, "f").call(this, e.serverUrl))))));
404
+ }));
405
+ O.set(this, (() => t("div", {
406
+ class: "field field-block field-block-all-servers spacing-body-inline"
407
+ }, t("label", {
408
+ class: "label",
409
+ htmlFor: "all-servers"
410
+ }, h(this, f, "f").allServers.title), h(this, U, "f").call(this))));
411
+ this.enableConfirmButton = false;
412
+ this.serverUrlInputValue = "";
413
+ this.serverNameInputValue = "";
414
+ this.selectedServerUri = undefined;
415
+ this.selectedServerName = "None";
416
+ this.userName = undefined;
417
+ this.filterValue = "";
418
+ this.filteredServersData = [];
419
+ this.validatableControls = new Map;
420
+ this.selectedConnectionType = "select";
421
+ this.selectedRecentlyUsedId = undefined;
422
+ this.serversData = [];
423
+ this.recentlyUsedServersData = [];
424
+ this.cancelCallback = undefined;
425
+ this.selectServerCallback = undefined;
426
+ this.deleteServerCallback = undefined;
427
+ this.updateServerCallback = undefined;
428
+ }
429
+ serversDataChanged(e) {
430
+ this.filteredServersData = e;
431
+ }
432
+ async componentWillLoad() {
433
+ var e, t;
434
+ u(this, f, await n.getComponentStrings(this.el), "f");
435
+ u(this, w, [ {
436
+ value: "select",
437
+ caption: h(this, f, "f").captions.selectServer
438
+ }, {
439
+ value: "new",
440
+ caption: h(this, f, "f").captions.addServer
441
+ } ], "f");
442
+ this.selectedServerUri = (e = this.serversData[0]) === null || e === void 0 ? void 0 : e.serverUrl;
443
+ this.userName = (t = this.serversData[0]) === null || t === void 0 ? void 0 : t.gxServerUsername;
444
+ this.filteredServersData = this.serversData;
445
+ }
446
+ componentDidRender() {
447
+ if (this.selectedConnectionType === "new" && h(this, b, "f") && h(this, m, "f")) {
448
+ h(this, x, "f").call(this, [ h(this, b, "f"), h(this, m, "f") ]);
449
+ h(this, v, "f").clear();
450
+ }
451
+ if (this.selectedConnectionType === "select" && h(this, v, "f").size > 0) {
452
+ h(this, x, "f").call(this, [ ...h(this, v, "f").values() ]);
453
+ }
454
+ }
455
+ render() {
456
+ return t(i, {
457
+ class: {
458
+ "widget elevation-1": true,
459
+ "new-connection": this.selectedConnectionType === "new",
460
+ "recently-used-empty": this.recentlyUsedServersData.length === 0
461
+ }
462
+ }, t("ch-theme", {
463
+ model: q
464
+ }), t("main", {
465
+ class: "section"
466
+ }, t("header", {
467
+ class: "header spacing-body-block-start spacing-body-inline"
468
+ }, t("div", {
469
+ class: "field-group"
470
+ }, t("label", {
471
+ class: "body-regular-m text-neutral-gray-400"
472
+ }, h(this, f, "f").header.title), t("ch-radio-group-render", {
473
+ class: "radio-group",
474
+ model: h(this, w, "f"),
475
+ onChange: h(this, $, "f"),
476
+ value: h(this, w, "f")[0].value
477
+ }), this.selectedConnectionType === "select" && t("ch-edit", {
478
+ class: "input search-server",
479
+ id: "server-name-search",
480
+ startImgSrc: X,
481
+ onInput: h(this, M, "f"),
482
+ placeholder: h(this, f, "f").placeholders.searchServers,
483
+ accessibleName: "search server",
484
+ type: "search"
485
+ }))), this.selectedConnectionType === "select" && [ h(this, V, "f").call(this), h(this, O, "f").call(this) ], this.selectedConnectionType === "new" && t("section", {
486
+ class: "spacing-body-inline"
487
+ }, t("div", {
488
+ class: "layout layout--cols-2"
489
+ }, t("div", {
490
+ class: "field field-block layout__panel"
491
+ }, t("label", {
492
+ class: "label",
493
+ htmlFor: "server-url"
494
+ }, h(this, f, "f").labels.serverUrl), t("ch-edit", {
495
+ // server url
496
+ class: "input",
497
+ id: "server-url",
498
+ value: this.serverUrlInputValue,
499
+ onInput: e => h(this, W, "f").call(this, e, "serverUrlInputValue"),
500
+ placeholder: h(this, f, "f").placeholders.serverUrl,
501
+ ref: e => u(this, b, e, "f")
502
+ }), h(this, k, "f").call(this, h(this, b, "f"))), t("div", {
503
+ class: "field field-block layout__panel"
504
+ }, t("label", {
505
+ class: "label",
506
+ htmlFor: "server-name"
507
+ }, h(this, f, "f").labels.serverName), t("ch-edit", {
508
+ // server friendly name
509
+ class: "input",
510
+ id: "server-name",
511
+ value: this.serverNameInputValue,
512
+ onInput: e => h(this, W, "f").call(this, e, "serverNameInputValue"),
513
+ placeholder: h(this, f, "f").placeholders.serverName,
514
+ maxLength: 18,
515
+ ref: e => u(this, m, e, "f")
516
+ }), h(this, k, "f").call(this, h(this, m, "f"))))), h(this, R, "f").call(this)));
517
+ }
518
+ static get assetsDirs() {
519
+ return [ "gx-ide-assets/server-selector" ];
520
+ }
521
+ get el() {
522
+ return s(this);
523
+ }
524
+ static get watchers() {
525
+ return {
526
+ serversData: [ "serversDataChanged" ]
527
+ };
528
+ }
529
+ };
530
+
531
+ f = new WeakMap, p = new WeakMap, b = new WeakMap, m = new WeakMap, g = new WeakMap,
532
+ v = new WeakMap, w = new WeakMap, y = new WeakMap, _ = new WeakMap, k = new WeakMap,
533
+ x = new WeakMap, M = new WeakMap, W = new WeakMap, z = new WeakMap, C = new WeakMap,
534
+ N = new WeakMap, j = new WeakMap, I = new WeakMap, T = new WeakMap, E = new WeakMap,
535
+ S = new WeakMap, $ = new WeakMap, A = new WeakMap, D = new WeakMap, H = new WeakMap,
536
+ F = new WeakMap, L = new WeakMap, U = new WeakMap, P = new WeakMap, R = new WeakMap,
537
+ V = new WeakMap, O = new WeakMap;
538
+
539
+ Z.style = d;
540
+
541
+ export { Z as gx_ide_server_selector };
542
+ //# sourceMappingURL=p-91497934.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["serverSelectorCss","CSS_BUNDLES","INFO_ICON","getIconPath","category","name","colorType","LOCK_ICON","LANGUAGE_ICON","DELETE_ICON","ERROR_ICON","SEARCH_ICON","SERVER_NAME_PREFIX","GxIdeServerSelector","_GxIdeServerSelector__componentLocale","set","this","_GxIdeServerSelector_chGridAllServersEl","_GxIdeServerSelector_serverUrlEL","_GxIdeServerSelector_serverFriendlyNameEL","_GxIdeServerSelector_updatedServerName","_GxIdeServerSelector_serverNameEditElsMap","Map","_GxIdeServerSelector_versionsSelect","_GxIdeServerSelector_cancelHandler","cancelCallback","_GxIdeServerSelector_confirmHandler","async","formSubmitResult","selectedConnectionType","selectServerCallback","uri","selectedServerUri","selectedServerName","serverUrlInputValue","serverNameInputValue","validatableControls","validateControls","_GxIdeServerSelector_evaluateTooltipRender","controlReference","_b","_a","get","id","hasError","_c","message","h","class","actionElement","blockAlign","config","tooltipSettings","inlineAlign","delay","_GxIdeServerSelector_initializeValidatableControls","forEach","validatableControl","has","reference","undefined","_GxIdeServerSelector_filterValueChangedHandler","event","filterValue","detail","toLowerCase","filteredServersData","serversData","filter","item","serverName","includes","_GxIdeServerSelector_inputHandler","field","enableConfirmButton","controlId","clearControlError","__classPrivateFieldGet","_GxIdeServerSelector_enableConfirmButton","call","_GxIdeServerSelector_handleRecentlyUsedCardClick","server","selectedRecentlyUsedId","selectRow","_GxIdeServerSelector_handleServerSelection","_GxIdeServerSelector_handleDeleteServer","serverData","accessLevel","result","deleteServerCallback","_GxIdeServerSelector_onServerNameInput","__classPrivateFieldSet","_GxIdeServerSelector_onServerNameChange","fieldErrors","success","updateServerCallback","Object","assign","length","_GxIdeServerSelector_onRecentlyUsedDoubleClickHandler","_GxIdeServerSelector_onServersRowClickHandler","rowId","selectedRowId","selectedServer","find","serverUrl","userName","gxServerUsername","_GxIdeServerSelector_connectionTypeChangedHandler","_GxIdeServerSelector_sortTabularGridColumnCallback","e","sortTabularGridColumn","_GxIdeServerSelector_renderTabularGridColumnSet","hideColumnName","columnId","columnName","settingable","columnNameHidden","size","tabularGrid","colSize","maxContent","resizable","sortable","onColumnSortChanged","auto","_GxIdeServerSelector_renderTooltip","text","delayLong","_GxIdeServerSelector_renderServerNameErrorMessage","errorMsg","src","_GxIdeServerSelector_renderTabularGridCommonCells","_GxIdeServerSelector_renderIcon","value","onInput","onChange","maxLength","ref","el","key","delete","onClick","actions","deleteServer","disabled","_GxIdeServerSelector_renderAllServersGrid","rowSelectionMode","allowColumnReorder","onRowClicked","map","serverNameEditKey","rowid","stateIconSrc","stateTitle","emptyConnectedServers","isAnimated","icon","_GxIdeServerSelector_renderFooter","isSelectionMode","footer","cancel","confirm","_GxIdeServerSelector_renderRecentlyUsed","renderRecentlyUsed","recentlyUsedServersData","htmlFor","recentlyUsed","title","layout","layout__panel","onDblClick","_GxIdeServerSelector_renderAllServers","allServers","serversDataChanged","newValue","componentWillLoad","Locale","getComponentStrings","caption","captions","selectServer","addServer","componentDidRender","clear","values","render","Host","model","header","startImgSrc","placeholder","placeholders","searchServers","accessibleName","type","labels"],"sources":["src/components/team-dev/server-selector/server-selector.scss?tag=gx-ide-server-selector&encapsulation=shadow","src/components/team-dev/server-selector/server-selector.tsx"],"sourcesContent":["@import \"../../../../node_modules/@genexus/mercury/dist/assets/scss/helpers.scss\";\n@import \"../common/styles.scss\";\n\n:host {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content max-content 1fr max-content;\n row-gap: var(--mer-spacing--md);\n overflow: auto;\n}\n\n:host(.new-connection) {\n grid-template-rows: max-content 1fr;\n}\n\n:host(.recently-used-empty) {\n grid-template-rows: max-content 1fr;\n}\n\n.section {\n display: contents;\n}\n\n// General\n\n.tabular-grid {\n border-radius: var(--mer-border__radius--sm);\n overflow: hidden;\n overflow: auto;\n border-inline: 1px solid var(--grid-cell__border-color);\n}\n\n.tabular-grid-rowset-empty {\n border-block-end: 1px solid var(--grid-cell__border-color);\n overflow: hidden;\n}\n\n@include tabular-grid-cell-layout(\n $tabular-grid-selector: \".tabular-grid\",\n $tabular-grid-cell-apply-ellipsis: true,\n $tabular-grid-affected-columns-nth-list: (\n 2,\n 3,\n 4\n )\n);\n\n.text-neutral-gray-400,\n.tabular-grid-cell.text-neutral-gray-400 {\n // WA: colors for text should be defined in Mercury\n color: var(--mer-color__neutral-gray--400);\n}\n// Header\n\n.search-server {\n inline-size: 50%;\n}\n\n// All Servers\n\n.tabular-grid {\n overflow: auto;\n border-block: 1px solid var(--grid-cell__border-color);\n}\n\n.tabular-grid-all-servers .tabular-grid-column:first-child::part(bar) {\n --grid-common__gap: 0;\n}\n\n.field-block-all-servers {\n overflow: auto;\n}\n\n// WA: .tabular-grid-wrapper and .border-patch is a WA. See details on Asana task:\n// https://app.asana.com/1/10206720691358/project/1207081021030105/task/1211391456974726?focus=true\n.tabular-grid-wrapper {\n position: relative;\n overflow: auto;\n}\n.border-patch {\n --tabular-grid-border-radius: 4px;\n position: absolute;\n top: 0;\n inline-size: calc(100% - var(--tabular-grid-border-radius) * 2);\n inset-inline-start: var(--tabular-grid-border-radius);\n block-size: 2px;\n background-color: var(--items-container__bg-color);\n z-index: 9999;\n border-block-start: 1px solid var(--mer-border-color__on-surface);\n}\n\n.tooltip {\n position: absolute;\n}\n\n.recently-used-card {\n border: 1px solid var(--grid-cell__border-color);\n border-radius: var(--mer-border__radius--sm);\n cursor: pointer;\n\n &:hover {\n background-color: var(--mer-color__tinted-primary--5);\n }\n\n &:focus-visible {\n @include focus-outline();\n }\n\n &--selected {\n background-color: var(--mer-color__tinted-primary--10);\n border-color: var(--mer-color__tinted-primary--30);\n }\n}\n\n.recently-used-card-content {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n padding: 8px;\n gap: 2px;\n overflow: hidden;\n\n .text-decoration-line-underline {\n @include cell-ellipsis();\n max-width: 100%;\n text-decoration: underline;\n }\n}\n\n// All Severs tabular-grid\n\n.delete-server-icon {\n // WA: Getr and apply the marign inline value on the ch-image,\n // so that the button looks squared. This happens because the\n // button is \"tertiary\", which happens to have no padding-inline.\n // TODO: Investigate a solution that works without a WA.\n $cellBlockSize: 30.39px;\n margin-inline: calc((#{$cellBlockSize} - var(--ch-image-size)) / 2);\n}\n\n@include tabular-grid-cell-layout(\n $tabular-grid-selector: \".tabular-grid\",\n $tabular-grid-cell-node-type: \"element\",\n $tabular-grid-affected-columns-nth-list: (\n 5\n )\n);\n","// 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 TabularGridColumnSortChangedEvent,\n TabularGridRowClickedEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\nimport { JSX, Watch } from \"@stencil/core/internal\";\nimport { config } from \"../../../common/config\";\nimport {\n clearControlError,\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../common/types\";\n\nimport sortTabularGridColumn from \"../../../common/chameleon/tabular-grid-column-sort\";\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\nconst DELETE_ICON = getIconPath({\n category: \"system\",\n name: \"delete-outlined\",\n colorType: \"neutral\"\n});\n\nconst ERROR_ICON = getIconPath({\n category: \"system\",\n name: \"error\",\n colorType: \"error\"\n});\n\nconst SEARCH_ICON = getIconPath({\n category: \"system\",\n name: \"search\",\n colorType: \"on-surface\"\n});\n\nconst SERVER_NAME_PREFIX = \"server-name-\";\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 #_componentLocale: any;\n\n #chGridAllServersEl: HTMLChTabularGridElement;\n #serverUrlEL: HTMLChEditElement;\n #serverFriendlyNameEL: HTMLChEditElement;\n #updatedServerName: string | undefined;\n #serverNameEditElsMap: Map<string, HTMLChEditElement> = new Map();\n #versionsSelect: RadioGroupItemModel[] = [];\n\n @Element() el: HTMLGxIdeServerSelectorElement;\n\n /**\n * State to enable/disable confirm button.\n */\n @State() enableConfirmButton: boolean = false;\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() filteredServersData: ServerData[] = [];\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 selected recently used server ID\n */\n @State() selectedRecentlyUsedId: string;\n\n /**\n * The list of all GX servers.\n */\n @Prop({ mutable: true }) serversData: ServerData[] = [];\n @Watch(\"serversData\")\n serversDataChanged(newValue: ServerData[]) {\n this.filteredServersData = newValue;\n }\n /**\n * The list of recently used servers.\n */\n @Prop() readonly recentlyUsedServersData: ServerData[] = [];\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 connectionOption: ConnectionOption\n ) => Promise<FormSubmitResult>;\n\n /**\n * Invoked to delete a server\n */\n @Prop() readonly deleteServerCallback!: (\n serverData: ServerData\n ) => Promise<boolean>;\n\n /**\n * Invoked to update a server\n */\n @Prop() readonly updateServerCallback!: (\n serverData: ServerData\n ) => Promise<FormSubmitResult>;\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n\n this.#versionsSelect = [\n {\n value: \"select\",\n caption: this.#_componentLocale.captions.selectServer\n },\n {\n value: \"new\",\n caption: this.#_componentLocale.captions.addServer\n }\n ];\n\n this.selectedServerUri = this.serversData[0]?.serverUrl;\n this.userName = this.serversData[0]?.gxServerUsername;\n\n this.filteredServersData = this.serversData;\n }\n\n componentDidRender() {\n if (\n this.selectedConnectionType === \"new\" &&\n this.#serverUrlEL &&\n this.#serverFriendlyNameEL\n ) {\n this.#initializeValidatableControls([\n this.#serverUrlEL,\n this.#serverFriendlyNameEL\n ]);\n this.#serverNameEditElsMap.clear();\n }\n\n if (\n this.selectedConnectionType === \"select\" &&\n this.#serverNameEditElsMap.size > 0\n ) {\n this.#initializeValidatableControls([\n ...this.#serverNameEditElsMap.values()\n ]);\n }\n }\n\n #cancelHandler = (): void => {\n this.cancelCallback();\n };\n\n #confirmHandler = async (): Promise<void> => {\n let formSubmitResult: FormSubmitResult;\n if (this.selectedConnectionType === \"select\") {\n formSubmitResult = await this.selectServerCallback(\n {\n uri: this.selectedServerUri,\n name: this.selectedServerName\n },\n this.selectedConnectionType\n );\n } else {\n formSubmitResult = await this.selectServerCallback(\n {\n uri: this.serverUrlInputValue,\n name: this.serverNameInputValue\n },\n this.selectedConnectionType\n );\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n }\n };\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #initializeValidatableControls = (validatableControls: HTMLElement[]) => {\n validatableControls.forEach(validatableControl => {\n if (\n validatableControl.id &&\n !this.validatableControls.has(validatableControl.id)\n ) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #filterValueChangedHandler = (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.filterValue = (event.detail as string).toLowerCase();\n this.filteredServersData = this.serversData.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\n const controlId =\n field === \"serverUrlInputValue\" ? \"server-url\" : \"server-name\";\n clearControlError(this.validatableControls, controlId);\n this.#enableConfirmButton();\n };\n\n #handleRecentlyUsedCardClick = async (server: ServerData) => {\n this.selectedRecentlyUsedId = server.id;\n await this.#chGridAllServersEl?.selectRow(server.id);\n await this.#handleServerSelection(server.id);\n };\n\n #handleDeleteServer = async (serverData: ServerData) => {\n if (serverData.accessLevel === \"private\") {\n const result = await this.deleteServerCallback(serverData);\n if (result) {\n this.selectedServerName = \"None\";\n this.enableConfirmButton = false;\n }\n }\n };\n\n #onServerNameInput = async (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.#updatedServerName = event.detail as string;\n };\n\n #onServerNameChange = async (serverData: ServerData) => {\n let result: FormSubmitResult = {\n fieldErrors: [],\n success: false\n };\n if (\n serverData.serverName !== this.#updatedServerName &&\n serverData.accessLevel === \"private\"\n ) {\n result = await this.updateServerCallback({\n ...serverData,\n serverName: this.#updatedServerName\n });\n }\n\n this.validatableControls = validateControls(\n result,\n this.validatableControls\n );\n\n if (result.success || serverData.serverName === this.#updatedServerName) {\n this.selectedServerName = this.#updatedServerName;\n clearControlError(\n this.validatableControls,\n `${SERVER_NAME_PREFIX}${serverData.id}`\n );\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 #onRecentlyUsedDoubleClickHandler = (serverData: ServerData) => {\n this.#handleServerSelection(serverData.id);\n this.#confirmHandler();\n };\n\n #onServersRowClickHandler = (\n event: CustomEvent<TabularGridRowClickedEvent>\n ) => this.#handleServerSelection(event.detail.rowId);\n\n #handleServerSelection = async (selectedRowId: string): Promise<void> => {\n if (selectedRowId === undefined) {\n this.enableConfirmButton = false;\n this.selectedServerUri = undefined;\n this.selectedServerName = undefined;\n return;\n }\n\n const selectedServer = this.serversData.find(\n server => server.id === selectedRowId\n );\n this.enableConfirmButton = true;\n this.selectedServerName = selectedServer?.serverName;\n this.selectedServerUri = selectedServer?.serverUrl;\n this.userName = selectedServer?.gxServerUsername || \"\";\n this.selectedRecentlyUsedId = selectedServer?.id;\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 #sortTabularGridColumnCallback = (\n e: CustomEvent<TabularGridColumnSortChangedEvent>\n ) => {\n this.filteredServersData = [\n ...sortTabularGridColumn(e, this.filteredServersData, \"string\", undefined)\n ];\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 tabular-grid-column-icon\"\n columnName=\"Icon\"\n settingable={false}\n columnNameHidden={true}\n size={config.tabularGrid.colSize.maxContent}\n resizable={false}\n sortable={false}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"serverName\"\n class=\"tabular-grid-column\"\n columnName=\"Server Name\"\n settingable={false}\n columnNameHidden={hideColumnName}\n size={config.tabularGrid.colSize.serverName}\n resizable={false}\n sortable={!hideColumnName}\n onColumnSortChanged={this.#sortTabularGridColumnCallback}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"serverUrl\"\n class=\"tabular-grid-column\"\n columnName=\"Server Url\"\n settingable={false}\n columnNameHidden={hideColumnName}\n size={config.tabularGrid.colSize.auto}\n resizable={false}\n sortable={!hideColumnName}\n onColumnSortChanged={this.#sortTabularGridColumnCallback}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"userName\"\n class=\"tabular-grid-column\"\n columnName=\"Connected\"\n settingable={false}\n columnNameHidden={hideColumnName}\n size={config.tabularGrid.colSize.userName}\n resizable={false}\n sortable={!hideColumnName}\n onColumnSortChanged={this.#sortTabularGridColumnCallback}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"action\"\n class=\"tabular-grid-column tabular-grid-column-icon\"\n columnName=\"Action\"\n settingable={false}\n columnNameHidden={true}\n size={config.tabularGrid.colSize.maxContent}\n resizable={false}\n sortable={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.delayLong}\n >\n {text}\n </ch-tooltip>\n ) : null;\n };\n\n #renderServerNameErrorMessage = (errorMsg: string) => {\n return (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty class=\"tabular-grid-rowset-empty\">\n <p class=\"warning-error-description\">\n <ch-image\n class=\"icon-md warning-error-icon\"\n src={ERROR_ICON}\n ></ch-image>\n {errorMsg}\n </p>\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n );\n };\n\n #renderTabularGridCommonCells = (serverData: ServerData) => {\n return [\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {this.#renderIcon(serverData.accessLevel)}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {serverData.accessLevel === \"private\" ? (\n <ch-edit\n id={`${SERVER_NAME_PREFIX}${serverData.id}`}\n value={serverData.serverName}\n onInput={this.#onServerNameInput}\n onChange={() => this.#onServerNameChange(serverData)}\n maxLength={18}\n ref={el => {\n const key = `${SERVER_NAME_PREFIX}${serverData.id}`;\n if (el) {\n this.#serverNameEditElsMap.set(key, el as HTMLChEditElement);\n } else {\n this.#serverNameEditElsMap.delete(key);\n }\n }}\n ></ch-edit>\n ) : (\n serverData.serverName\n )}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {serverData.serverUrl}\n {this.#renderTooltip(serverData.serverUrl)}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {serverData.gxServerUsername}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell\n class=\"tabular-grid-cell\"\n onClick={() => this.#handleDeleteServer(serverData)}\n >\n <button\n class=\"button-tertiary button-icon-only\"\n aria-label={this.#_componentLocale.actions.deleteServer}\n disabled={serverData.accessLevel === \"public\"}\n >\n <ch-image\n disabled={serverData.accessLevel === \"public\"}\n class=\"icon-md delete-server-icon\"\n src={DELETE_ICON}\n ></ch-image>\n </button>\n </ch-tabular-grid-cell>\n ];\n };\n\n #renderAllServersGrid = (): Element => {\n return (\n <div class=\"tabular-grid-wrapper\">\n <div class=\"border-patch\"></div>\n <ch-tabular-grid\n class={\"tabular-grid tabular-grid-all-servers\"}\n rowSelectionMode=\"single\"\n ref={(el: HTMLChTabularGridElement) =>\n (this.#chGridAllServersEl = el)\n }\n allowColumnReorder={false}\n onRowClicked={this.#onServersRowClickHandler}\n id=\"all-servers\"\n >\n {this.#renderTabularGridColumnSet()}\n {this.filteredServersData.length > 0 ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.filteredServersData.map((serverData: ServerData) => {\n const serverNameEditKey = `${SERVER_NAME_PREFIX}${serverData.id}`;\n const hasError =\n this.validatableControls.get(serverNameEditKey)?.hasError ===\n true;\n const errorMsg =\n this.validatableControls.get(serverNameEditKey)?.message;\n\n return (\n <ch-tabular-grid-row\n rowid={serverData.id}\n class=\"tabular-grid-row\"\n >\n {this.#renderTabularGridCommonCells(serverData)}\n {hasError && this.#renderServerNameErrorMessage(errorMsg)}\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 </div>\n );\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 #renderRecentlyUsed = () => {\n const renderRecentlyUsed =\n this.selectedConnectionType === \"select\" &&\n this.recentlyUsedServersData.length > 0;\n\n return (\n renderRecentlyUsed && (\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 <div\n class={{\n \"layout\": true,\n \"layout--cols-3\": this.recentlyUsedServersData.length >= 3,\n \"layout--cols-2\": this.recentlyUsedServersData.length <= 2\n }}\n >\n {this.recentlyUsedServersData.map((server: ServerData) => (\n <button\n class={{\n \"layout__panel\": true,\n \"recently-used-card\": true,\n \"recently-used-card--selected\":\n this.selectedRecentlyUsedId === server.id\n }}\n onClick={() => this.#handleRecentlyUsedCardClick(server)}\n onDblClick={() =>\n this.#onRecentlyUsedDoubleClickHandler(server)\n }\n >\n <div class=\"recently-used-card-content\">\n <p class=\"body-regular-s text-neutral-gray-400\">\n {server.serverName}\n </p>\n <p class=\"body-regular-s text-neutral-gray-400 text-decoration-line-underline\">\n {server.serverUrl}\n </p>\n </div>\n {this.#renderTooltip(server.serverUrl)}\n </button>\n ))}\n </div>\n </div>\n )\n );\n };\n\n #renderAllServers = () => {\n return (\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.#renderAllServersGrid()}\n </div>\n );\n };\n\n render(): void {\n return (\n <Host\n class={{\n \"widget elevation-1\": true,\n \"new-connection\": this.selectedConnectionType === \"new\",\n \"recently-used-empty\": this.recentlyUsedServersData.length === 0\n }}\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={SEARCH_ICON}\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\n {this.selectedConnectionType === \"select\" && [\n this.#renderRecentlyUsed(),\n this.#renderAllServers()\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\"\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 {this.#evaluateTooltipRender(this.#serverUrlEL)}\n </div>\n\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 maxLength={18}\n ref={el =>\n (this.#serverFriendlyNameEL = el as HTMLChEditElement)\n }\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#serverFriendlyNameEL)}\n </div>\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 ServerAccessLevel = \"public\" | \"private\";\n\nexport type AuthenticationSessionOrigin = {\n uri: string;\n name: string;\n};\n\nexport type ServerData = {\n id: string;\n serverUrl: string;\n accessLevel: ServerAccessLevel;\n masterSessionUsername: string;\n serverName?: string;\n sessionId?: string;\n gxServerUsername: string;\n isConnected: boolean;\n};\n\nexport type NewServerConnectionData = {\n serverUrl: string;\n serverName: string;\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,MAAMA,IAAoB;;;;;;;;;;;;;;;;;ACyB1B,MAAMC,IAA8B,EAClC,qBACA,oBACA,gBACA,oBACA,iBACA,sBACA,uBACA;;AAGF,MAAMC,IAAYC,EAAY;EAC5BC,UAAU;EACVC,MAAM;EACNC,WAAW;;;AAGb,MAAMC,IAAYJ,EAAY;EAC5BC,UAAU;EACVC,MAAM;EACNC,WAAW;;;AAGb,MAAME,IAAgBL,EAAY;EAChCC,UAAU;EACVC,MAAM;EACNC,WAAW;;;AAGb,MAAMG,IAAcN,EAAY;EAC9BC,UAAU;EACVC,MAAM;EACNC,WAAW;;;AAGb,MAAMI,IAAaP,EAAY;EAC7BC,UAAU;EACVC,MAAM;EACNC,WAAW;;;AAGb,MAAMK,IAAcR,EAAY;EAC9BC,UAAU;EACVC,MAAM;EACNC,WAAW;;;AAGb,MAAMM,IAAqB;;MAQdC,IAAmB;;;IAC9BC,EAAAC,IAAAC,WAAA;IAEAC,EAAAF,IAAAC,WAAA;IACAE,EAAAH,IAAAC,WAAA;IACAG,EAAAJ,IAAAC,WAAA;IACAI,EAAAL,IAAAC,WAAA;IACAK,EAAAN,IAAAC,MAAwD,IAAIM;IAC5DC,EAAAR,IAAAC,MAAyC;IA2IzCQ,EAAAT,IAAAC,OAAiB;MACfA,KAAKS;AAAgB;IAGvBC,EAAAX,IAAAC,OAAkBW;MAChB,IAAIC;MACJ,IAAIZ,KAAKa,2BAA2B,UAAU;QAC5CD,UAAyBZ,KAAKc,qBAC5B;UACEC,KAAKf,KAAKgB;UACV3B,MAAMW,KAAKiB;WAEbjB,KAAKa;aAEF;QACLD,UAAyBZ,KAAKc,qBAC5B;UACEC,KAAKf,KAAKkB;UACV7B,MAAMW,KAAKmB;WAEbnB,KAAKa;QAEPb,KAAKoB,sBAAsBC,EACzBT,GACAZ,KAAKoB;;;;;QAOXE,EAAAvB,IAAAC,OACEuB;;MAEA,SAAAC,KAAAC,IAAAzB,KAAKoB,yBAAmB,QAAAK,WAAA,aAAAA,EAAEC,IAAIH,MAAgB,QAAhBA,WAAgB,aAAhBA,EAAkBI,SAAG,QAAAH,WAAA,aAAAA,EAAEI,eACrDC,IAAA7B,KAAKoB,oBAAoBM,IAAIH,EAAiBI,SAAG,QAAAE,WAAA,aAAAA,EAAEC,YACjDC,EAAA;QACEC,OAAM;QACNC,eAAeV;QACfW,YAAYC,EAAOC,gBAAgBF;QACnCG,aAAaF,EAAOC,gBAAgBC;QACpCC,OAAOH,EAAOC,gBAAgBE;SAE7BtC,KAAKoB,oBAAoBM,IAAIH,EAAiBI,IAAIG;AAEtD;IAEHS,EAAAxC,IAAAC,OAAkCoB;MAChCA,EAAoBoB,SAAQC;QAC1B,IACEA,EAAmBd,OAClB3B,KAAKoB,oBAAoBsB,IAAID,EAAmBd,KACjD;UACA3B,KAAKoB,oBAAoBrB,IAAI0C,EAAmBd,IAAI;YAClDgB,WAAWF;YACXb,UAAU;YACVE,SAASc;;;;AAGb;IAGJC,EAAA9C,IAAAC,OACE8C;MAEA9C,KAAK+C,cAAeD,EAAME,OAAkBC;MAC5CjD,KAAKkD,sBAAsBlD,KAAKmD,YAAYC,QAAOC,KACjDA,EAAKC,WAAWL,cAAcM,SAASvD,KAAK+C;AAC7C;IAGHS,EAAAzD,IAAAC,OAAgB,CACd8C,GACAW;MAEAzD,KAAK0D,sBAAsB;MAC3B1D,KAAKyD,KAASX,EAAME;MAEpB,MAAMW,IACJF,MAAU,wBAAwB,eAAe;MACnDG,EAAkB5D,KAAKoB,qBAAqBuC;MAC5CE,EAAA7D,MAAI8D,GAAA,KAAqBC,KAAzB/D;AAA2B;IAG7BgE,EAAAjE,IAAAC,OAA+BW,MAAOsD;;MACpCjE,KAAKkE,yBAAyBD,EAAOtC;cAC/BF,IAAAoC,EAAA7D,MAAIC,GAAA,UAAoB,QAAAwB,WAAA,aAAAA,EAAE0C,UAAUF,EAAOtC;YAC3CkC,EAAA7D,MAAIoE,GAAA,KAAuBL,KAA3B/D,MAA4BiE,EAAOtC;AAAG;IAG9C0C,EAAAtE,IAAAC,OAAsBW,MAAO2D;MAC3B,IAAIA,EAAWC,gBAAgB,WAAW;QACxC,MAAMC,UAAexE,KAAKyE,qBAAqBH;QAC/C,IAAIE,GAAQ;UACVxE,KAAKiB,qBAAqB;UAC1BjB,KAAK0D,sBAAsB;;;;IAKjCgB,EAAA3E,IAAAC,OAAqBW,MACnBmC;MAEA6B,EAAA3E,MAAII,GAAsB0C,EAAME,QAAgB;AAAA;IAGlD4B,EAAA7E,IAAAC,OAAsBW,MAAO2D;MAC3B,IAAIE,IAA2B;QAC7BK,aAAa;QACbC,SAAS;;MAEX,IACER,EAAWhB,eAAeO,EAAA7D,MAAII,GAAA,QAC9BkE,EAAWC,gBAAgB,WAC3B;QACAC,UAAexE,KAAK+E,qBAAoBC,OAAAC,OAAAD,OAAAC,OAAA,IACnCX,IAAU;UACbhB,YAAYO,EAAA7D,MAAII,GAAA;;;MAIpBJ,KAAKoB,sBAAsBC,EACzBmD,GACAxE,KAAKoB;MAGP,IAAIoD,EAAOM,WAAWR,EAAWhB,eAAeO,EAAA7D,MAAII,GAAA,MAAqB;QACvEJ,KAAKiB,qBAAqB4C,EAAA7D,MAAII,GAAA;QAC9BwD,EACE5D,KAAKoB,qBACL,GAAGxB,IAAqB0E,EAAW3C;;;IAKzCmC,EAAA/D,IAAAC,OAAuB;MACrB,IACEA,KAAKkB,uBACLlB,KAAKkB,oBAAoBgE,SAAS,KAClClF,KAAKmB,wBACLnB,KAAKmB,qBAAqB+D,SAAS,GACnC;QACAlF,KAAK0D,sBAAsB;aACtB;QACL1D,KAAK0D,sBAAsB;;;IAI/ByB,EAAApF,IAAAC,OAAqCsE;MACnCT,EAAA7D,MAAIoE,GAAA,KAAuBL,KAA3B/D,MAA4BsE,EAAW3C;MACvCkC,EAAA7D,MAAIU,GAAA,KAAgBqD,KAApB/D;AAAsB;IAGxBoF,EAAArF,IAAAC,OACE8C,KACGe,EAAA7D,MAAIoE,GAAA,KAAuBL,KAA3B/D,MAA4B8C,EAAME,OAAOqC;IAE9CjB,EAAArE,IAAAC,OAAyBW,MAAO2E;MAC9B,IAAIA,MAAkB1C,WAAW;QAC/B5C,KAAK0D,sBAAsB;QAC3B1D,KAAKgB,oBAAoB4B;QACzB5C,KAAKiB,qBAAqB2B;QAC1B;;MAGF,MAAM2C,IAAiBvF,KAAKmD,YAAYqC,MACtCvB,KAAUA,EAAOtC,OAAO2D;MAE1BtF,KAAK0D,sBAAsB;MAC3B1D,KAAKiB,qBAAqBsE,MAAc,QAAdA,WAAc,aAAdA,EAAgBjC;MAC1CtD,KAAKgB,oBAAoBuE,MAAc,QAAdA,WAAc,aAAdA,EAAgBE;MACzCzF,KAAK0F,YAAWH,MAAc,QAAdA,WAAc,aAAdA,EAAgBI,qBAAoB;MACpD3F,KAAKkE,yBAAyBqB,MAAc,QAAdA,WAAc,aAAdA,EAAgB5D;AAAE;IAGlDiE,EAAA7F,IAAAC,OAAiC8C;MAC/B9C,KAAKa,yBAAyBiC,EAAME;MACpC,IAAIhD,KAAKa,2BAA2B,OAAO;QACzCb,KAAK0D,sBAAsB;QAC3B1D,KAAKkB,sBAAsB;;MAE7BlB,KAAKiB,qBAAqB;AAAM;IAGlC4E,EAAA9F,IAAAC,OACE8F;MAEA9F,KAAKkD,sBAAsB,KACtB6C,EAAsBD,GAAG9F,KAAKkD,qBAAqB,UAAUN;AACjE;IAGHoD,EAAAjG,IAAAC,OAA8B,CAC5BiG,IAA0B,UAGxBlE,EAAA;MAA2BC,OAAM;OAC/BD,EAAA;MACEmE,UAAS;MACTlE,OAAM;MACNmE,YAAW;MACXC,aAAa;MACbC,kBAAkB;MAClBC,MAAMnE,EAAOoE,YAAYC,QAAQC;MACjCC,WAAW;MACXC,UAAU;QAEZ5E,EAAA;MACEmE,UAAS;MACTlE,OAAM;MACNmE,YAAW;MACXC,aAAa;MACbC,kBAAkBJ;MAClBK,MAAMnE,EAAOoE,YAAYC,QAAQlD;MACjCoD,WAAW;MACXC,WAAWV;MACXW,qBAAqB/C,EAAA7D,MAAI6F,GAAA;QAE3B9D,EAAA;MACEmE,UAAS;MACTlE,OAAM;MACNmE,YAAW;MACXC,aAAa;MACbC,kBAAkBJ;MAClBK,MAAMnE,EAAOoE,YAAYC,QAAQK;MACjCH,WAAW;MACXC,WAAWV;MACXW,qBAAqB/C,EAAA7D,MAAI6F,GAAA;QAE3B9D,EAAA;MACEmE,UAAS;MACTlE,OAAM;MACNmE,YAAW;MACXC,aAAa;MACbC,kBAAkBJ;MAClBK,MAAMnE,EAAOoE,YAAYC,QAAQd;MACjCgB,WAAW;MACXC,WAAWV;MACXW,qBAAqB/C,EAAA7D,MAAI6F,GAAA;QAE3B9D,EAAA;MACEmE,UAAS;MACTlE,OAAM;MACNmE,YAAW;MACXC,aAAa;MACbC,kBAAkB;MAClBC,MAAMnE,EAAOoE,YAAYC,QAAQC;MACjCC,WAAW;MACXC,UAAU;;IAMlBG,EAAA/G,IAAAC,OAAkB+G,KACTA,MAAS,KACdhF,EAAA;MACEC,OAAM;MACNC,eAAe;MACfC,YAAW;MACXG,aAAaF,EAAOC,gBAAgBC;MACpCC,OAAOH,EAAOC,gBAAgB4E;OAE7BD,KAED;IAGNE,EAAAlH,IAAAC,OAAiCkH,KAE7BnF,EAAA;MAAwBC,OAAM;OAC5BD,EAAA;MAA8BC,OAAM;OAClCD,EAAA;MAAGC,OAAM;OACPD,EAAA;MACEC,OAAM;MACNmF,KAAKzH;QAENwH;IAOXE,EAAArH,IAAAC,OAAiCsE,KACxB,EACLvC,EAAA;MAAsBC,OAAM;OACzB6B,EAAA7D,MAAIqH,GAAA,KAAYtD,KAAhB/D,MAAiBsE,EAAWC,eAE/BxC,EAAA;MAAsBC,OAAM;OACzBsC,EAAWC,gBAAgB,YAC1BxC,EAAA;MACEJ,IAAI,GAAG/B,IAAqB0E,EAAW3C;MACvC2F,OAAOhD,EAAWhB;MAClBiE,SAAS1D,EAAA7D,MAAI0E,GAAA;MACb8C,UAAU,MAAM3D,EAAA7D,MAAI4E,GAAA,KAAoBb,KAAxB/D,MAAyBsE;MACzCmD,WAAW;MACXC,KAAKC;QACH,MAAMC,IAAM,GAAGhI,IAAqB0E,EAAW3C;QAC/C,IAAIgG,GAAI;UACN9D,EAAA7D,MAAIK,GAAA,KAAuBN,IAAI6H,GAAKD;eAC/B;UACL9D,EAAA7D,MAAIK,GAAA,KAAuBwH,OAAOD;;;SAKxCtD,EAAqB,aAGzBvC,EAAA;MAAsBC,OAAM;OACzBsC,EAAWmB,WACX5B,EAAA7D,MAAI8G,GAAA,KAAe/C,KAAnB/D,MAAoBsE,EAAWmB,aAElC1D,EAAA;MAAsBC,OAAM;OACzBsC,EAAWqB,mBAEd5D,EAAA;MACEC,OAAM;MACN8F,SAAS,MAAMjE,EAAA7D,MAAIqE,GAAA,KAAoBN,KAAxB/D,MAAyBsE;OAExCvC,EAAA;MACEC,OAAM;MAAkC,cAC5B6B,EAAA7D,MAAIF,GAAA,KAAmBiI,QAAQC;MAC3CC,UAAU3D,EAAWC,gBAAgB;OAErCxC,EAAA;MACEkG,UAAU3D,EAAWC,gBAAgB;MACrCvC,OAAM;MACNmF,KAAK1H;;IAOfyI,EAAAnI,IAAAC,OAAwB,MAEpB+B,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAKC,OAAM;QACXD,EAAA;MACEC,OAAO;MACPmG,kBAAiB;MACjBT,KAAMC,KACHhD,EAAA3E,MAAIC,GAAuB0H,GAAE;MAEhCS,oBAAoB;MACpBC,cAAcxE,EAAA7D,MAAIoF,GAAA;MAClBzD,IAAG;OAEFkC,EAAA7D,MAAIgG,GAAA,KAA4BjC,KAAhC/D,OACAA,KAAKkD,oBAAoBgC,SAAS,IACjCnD,EAAA;MAAwBC,OAAM;OAC3BhC,KAAKkD,oBAAoBoF,KAAKhE;;MAC7B,MAAMiE,IAAoB,GAAG3I,IAAqB0E,EAAW3C;MAC7D,MAAMC,MACJH,IAAAzB,KAAKoB,oBAAoBM,IAAI6G,QAAkB,QAAA9G,WAAA,aAAAA,EAAEG,cACjD;MACF,MAAMsF,KACJ1F,IAAAxB,KAAKoB,oBAAoBM,IAAI6G,QAAkB,QAAA/G,WAAA,aAAAA,EAAEM;MAEnD,OACEC,EAAA;QACEyG,OAAOlE,EAAW3C;QAClBK,OAAM;SAEL6B,EAAA7D,MAAIoH,GAAA,KAA8BrD,KAAlC/D,MAAmCsE,IACnC1C,KAAYiC,EAAA7D,MAAIiH,GAAA,KAA8BlD,KAAlC/D,MAAmCkH;AAC5B,WAK5BnF,EAAA;MAAwBC,OAAM;OAC5BD,EAAA;MAA8BC,OAAM;OAClCD,EAAA;MACE0G,cAAcvJ;MACdwJ,YAAY7E,EAAA7D,MAAIF,GAAA,KAAmB6I;MACnCC,YAAY;;IAU5BvB,EAAAtH,IAAAC,OAAeuE;MACb,MAAMsE,IAAOtE,MAAgB,YAAYhF,IAAYC;MACrD,OAAOuC,EAAA;QAAUC,OAAM;QAAUmF,KAAK0B;;AAAiB;IAGzDC,EAAA/I,IAAAC,OAAgB;MACd,MAAM+I,IAAkB/I,KAAKa,2BAA2B;MACxD,OACEkB,EAAA;QACEC,OAAO;UACL,8BAA8B;UAC9B,gCACEhC,KAAKa,2BAA2B;UAClC,iBAAiBkI;UACjB,uBAAuB;UACvB,sBAAsB;;SAGvBA,KACChH,EAAA;QAAGC,OAAM;SAAe,cAAYhC,KAAKiB,qBAE3Cc,EAAA;QAAKC,OAAM;SACTD,EAAA;;QAEEC,OAAM;QACN8F,SAASjE,EAAA7D,MAAIQ,GAAA;SAEZqD,EAAA7D,MAAIF,GAAA,KAAmBkJ,OAAOC,SAGjClH,EAAA;;QAEEC,OAAM;QACN8F,SAAS9H,KAAK0D,uBAAuBG,EAAA7D,MAAIU,GAAA;QACzCuH,WAAWjI,KAAK0D;SAEfG,EAAA7D,MAAIF,GAAA,KAAmBkJ,OAAOE;AAG5B;IAIbC,EAAApJ,IAAAC,OAAsB;MACpB,MAAMoJ,IACJpJ,KAAKa,2BAA2B,YAChCb,KAAKqJ,wBAAwBnE,SAAS;MAExC,OACEkE,KACErH,EAAA;QAAKC,OAAM;SACTD,EAAA;QAAOC,OAAM;QAAQsH,SAAQ;SAC1BzF,EAAA7D,MAAIF,GAAA,KAAmByJ,aAAaC,QAEvCzH,EAAA;QACEC,OAAO;UACLyH,QAAU;UACV,kBAAkBzJ,KAAKqJ,wBAAwBnE,UAAU;UACzD,kBAAkBlF,KAAKqJ,wBAAwBnE,UAAU;;SAG1DlF,KAAKqJ,wBAAwBf,KAAKrE,KACjClC,EAAA;QACEC,OAAO;UACL0H,eAAiB;UACjB,sBAAsB;UACtB,gCACE1J,KAAKkE,2BAA2BD,EAAOtC;;QAE3CmG,SAAS,MAAMjE,EAAA7D,MAAIgE,GAAA,KAA6BD,KAAjC/D,MAAkCiE;QACjD0F,YAAY,MACV9F,EAAA7D,MAAImF,GAAA,KAAkCpB,KAAtC/D,MAAuCiE;SAGzClC,EAAA;QAAKC,OAAM;SACTD,EAAA;QAAGC,OAAM;SACNiC,EAAOX,aAEVvB,EAAA;QAAGC,OAAM;SACNiC,EAAOwB,aAGX5B,EAAA7D,MAAI8G,GAAA,KAAe/C,KAAnB/D,MAAoBiE,EAAOwB;AAKrC;IAILmE,EAAA7J,IAAAC,OAAoB,MAEhB+B,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAOC,OAAM;MAAQsH,SAAQ;OAC1BzF,EAAA7D,MAAIF,GAAA,KAAmB+J,WAAWL,QAEpC3F,EAAA7D,MAAIkI,GAAA,KAAsBnE,KAA1B/D;+BAzmBiC;+BAKD;gCAKC;;8BAUU;;uBAUnB;+BAKc;+BAEd,IAAIM;kCAKiB;;uBAUC;mCAQI;;;;;;EANzD,kBAAAwJ,CAAmBC;IACjB/J,KAAKkD,sBAAsB6G;;EAkC7B,uBAAMC;;IACJrF,EAAA3E,MAAIF,SAA2BmK,EAAOC,oBAAoBlK,KAAK2H,KAAG;IAElEhD,EAAA3E,MAAIO,GAAmB,EACrB;MACE+G,OAAO;MACP6C,SAAStG,EAAA7D,MAAIF,GAAA,KAAmBsK,SAASC;OAE3C;MACE/C,OAAO;MACP6C,SAAStG,EAAA7D,MAAIF,GAAA,KAAmBsK,SAASE;SAE5C;IAEDtK,KAAKgB,qBAAoBS,IAAAzB,KAAKmD,YAAY,QAAE,QAAA1B,WAAA,aAAAA,EAAEgE;IAC9CzF,KAAK0F,YAAWlE,IAAAxB,KAAKmD,YAAY,QAAE,QAAA3B,WAAA,aAAAA,EAAEmE;IAErC3F,KAAKkD,sBAAsBlD,KAAKmD;;EAGlC,kBAAAoH;IACE,IACEvK,KAAKa,2BAA2B,SAChCgD,EAAA7D,MAAIE,GAAA,QACJ2D,EAAA7D,MAAIG,GAAA,MACJ;MACA0D,EAAA7D,MAAIuC,GAAA,KAA+BwB,KAAnC/D,MAAoC,EAClC6D,EAAA7D,MAAIE,GAAA,MACJ2D,EAAA7D,MAAIG,GAAA;MAEN0D,EAAA7D,MAAIK,GAAA,KAAuBmK;;IAG7B,IACExK,KAAKa,2BAA2B,YAChCgD,EAAA7D,MAAIK,GAAA,KAAuBiG,OAAO,GAClC;MACAzC,EAAA7D,MAAIuC,GAAA,KAA+BwB,KAAnC/D,MAAoC,KAC/B6D,EAAA7D,MAAIK,GAAA,KAAuBoK;;;EA+epC,MAAAC;IACE,OACE3I,EAAC4I,GAAI;MACH3I,OAAO;QACL,sBAAsB;QACtB,kBAAkBhC,KAAKa,2BAA2B;QAClD,uBAAuBb,KAAKqJ,wBAAwBnE,WAAW;;OAGjEnD,EAAA;MAAU6I,OAAO3L;QACjB8C,EAAA;MAAMC,OAAM;OACVD,EAAA;MAAQC,OAAM;OACZD,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAOC,OAAM;OACV6B,EAAA7D,MAAIF,GAAA,KAAmB+K,OAAOrB,QAEjCzH,EAAA;MACEC,OAAM;MACN4I,OAAO/G,EAAA7D,MAAIO,GAAA;MACXiH,UAAU3D,EAAA7D,MAAI4F,GAAA;MACd0B,OAAOzD,EAAA7D,MAAIO,GAAA,KAAiB,GAAG+G;QAGhCtH,KAAKa,2BAA2B,YAC/BkB,EAAA;MACEC,OAAM;MACNL,IAAG;MACHmJ,aAAanL;MACb4H,SAAS1D,EAAA7D,MAAI6C,GAAA;MACbkI,aACElH,EAAA7D,MAAIF,GAAA,KAAmBkL,aAAaC;MAEtCC,gBAAe;MACfC,MAAK;UAMZnL,KAAKa,2BAA2B,YAAY,EAC3CgD,EAAA7D,MAAImJ,GAAA,KAAoBpF,KAAxB/D,OACA6D,EAAA7D,MAAI4J,GAAA,KAAkB7F,KAAtB/D,SAGDA,KAAKa,2BAA2B,SAC/BkB,EAAA;MAASC,OAAM;OACbD,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAOC,OAAM;MAAQsH,SAAQ;OAC1BzF,EAAA7D,MAAIF,GAAA,KAAmBsL,OAAO3F,YAEjC1D,EAAA;;MAEEC,OAAM;MACNL,IAAG;MACH2F,OAAOtH,KAAKkB;MACZqG,SAASzE,KACPe,EAAA7D,MAAIwD,GAAA,KAAcO,KAAlB/D,MAAmB8C,GAAO;MAE5BiI,aAAalH,EAAA7D,MAAIF,GAAA,KAAmBkL,aAAavF;MACjDiC,KAAKC,KAAOhD,EAAA3E,MAAIE,GAAgByH,GAAuB;QAExD9D,EAAA7D,MAAIsB,GAAA,KAAuByC,KAA3B/D,MAA4B6D,EAAA7D,MAAIE,GAAA,QAGnC6B,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAOC,OAAM;MAAQsH,SAAQ;OAC1BzF,EAAA7D,MAAIF,GAAA,KAAmBsL,OAAO9H,aAEjCvB,EAAA;;MAEEC,OAAM;MACNL,IAAG;MACH2F,OAAOtH,KAAKmB;MACZoG,SAASzE,KACPe,EAAA7D,MAAIwD,GAAA,KAAcO,KAAlB/D,MAAmB8C,GAAO;MAE5BiI,aAAalH,EAAA7D,MAAIF,GAAA,KAAmBkL,aAAa1H;MACjDmE,WAAW;MACXC,KAAKC,KACFhD,EAAA3E,MAAIG,GAAyBwH,GAAuB;QAGxD9D,EAAA7D,MAAIsB,GAAA,KAAuByC,KAA3B/D,MAA4B6D,EAAA7D,MAAIG,GAAA,UAMxC0D,EAAA7D,MAAI8I,GAAA,KAAc/E,KAAlB/D"}