@genexus/genexus-ide-ui 1.0.9 → 1.0.11

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 (248) hide show
  1. package/dist/cjs/{common-d21da2fc.js → common-10d3b190.js} +15 -19
  2. package/dist/cjs/common-10d3b190.js.map +1 -0
  3. package/dist/cjs/{config-cefda28a.js → config-b21feeee.js} +6 -1
  4. package/dist/cjs/config-b21feeee.js.map +1 -0
  5. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  6. package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +1 -1
  7. package/dist/cjs/gx-ide-bpm-assign-roles.cjs.entry.js +1 -1
  8. package/dist/cjs/gx-ide-bpm-export-xpdl.cjs.entry.js +1 -1
  9. package/dist/cjs/gx-ide-bpm-import-files.cjs.entry.js +1 -1
  10. package/dist/cjs/gx-ide-bpm-import-gxpm.cjs.entry.js +1 -1
  11. package/dist/cjs/gx-ide-bpm-objects-selector.cjs.entry.js +1 -1
  12. package/dist/cjs/gx-ide-bpm-timer-duration.cjs.entry.js +1 -1
  13. package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js +1 -1
  14. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +1 -1
  15. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +1 -1
  16. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js.map +1 -1
  17. package/dist/cjs/gx-ide-data-selector.cjs.entry.js +1 -1
  18. package/dist/cjs/gx-ide-design-import.cjs.entry.js +2 -2
  19. package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js +1 -1
  20. package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +1 -1
  21. package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js +1 -1
  22. package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js +1 -1
  23. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +2 -2
  24. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +523 -182
  25. package/dist/cjs/gx-ide-new-kb.cjs.entry.js.map +1 -1
  26. package/dist/cjs/gx-ide-new-object.cjs.entry.js +1 -1
  27. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +3 -3
  28. package/dist/cjs/gx-ide-object-selector.cjs.entry.js.map +1 -1
  29. package/dist/cjs/gx-ide-recent-news.cjs.entry.js +1 -1
  30. package/dist/cjs/gx-ide-references.cjs.entry.js +1 -1
  31. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +2 -2
  32. package/dist/cjs/gx-ide-start-page.cjs.entry.js +2 -2
  33. package/dist/cjs/gx-ide-start-page.cjs.entry.js.map +1 -1
  34. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +1 -1
  35. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +1 -1
  36. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +1 -1
  37. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +1 -1
  38. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +1 -1
  39. package/dist/cjs/gx-ide-template.cjs.entry.js +1 -1
  40. package/dist/cjs/gx-ide-test.cjs.entry.js +53 -102
  41. package/dist/cjs/gx-ide-test.cjs.entry.js.map +1 -1
  42. package/dist/cjs/gx-ide-wf-settings.cjs.entry.js +1 -1
  43. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +2 -2
  44. package/dist/cjs/loader.cjs.js +1 -1
  45. package/dist/collection/common/common.js +25 -1
  46. package/dist/collection/common/common.js.map +1 -1
  47. package/dist/collection/common/config.js +5 -0
  48. package/dist/collection/common/config.js.map +1 -1
  49. package/dist/collection/common/form-validation.js +50 -0
  50. package/dist/collection/common/form-validation.js.map +1 -0
  51. package/dist/collection/components/_helpers/card/card.css +3 -0
  52. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.css +3 -0
  53. package/dist/collection/components/_helpers/list-selector/list-selector.css +3 -0
  54. package/dist/collection/components/_starting-template/template.css +3 -0
  55. package/dist/collection/components/_test/test.js +53 -102
  56. package/dist/collection/components/_test/test.js.map +1 -1
  57. package/dist/collection/components/ai-assistant/ai-assistant.css +3 -0
  58. package/dist/collection/components/bpm/application-declaration/bpm-app-declaration.css +3 -0
  59. package/dist/collection/components/bpm/assign-roles/bpm-assign-roles.css +3 -0
  60. package/dist/collection/components/bpm/export-xpdl/bpm-export-xpdl.css +3 -0
  61. package/dist/collection/components/bpm/import-files/bpm-import-files.css +3 -0
  62. package/dist/collection/components/bpm/import-gxpm/bpm-import-gxpm.css +3 -0
  63. package/dist/collection/components/bpm/objects-selector/bpm-objects-selector.css +3 -0
  64. package/dist/collection/components/bpm/timer-duration/bpm-timer-duration.css +3 -0
  65. package/dist/collection/components/connect-gx-server/connect-gx-server.css +3 -0
  66. package/dist/collection/components/create-kb-from-server/create-kb-from-server.css +3 -0
  67. package/dist/collection/components/dashboard-home/dashboard-home.css +3 -0
  68. package/dist/collection/components/design-import/design-import.css +3 -0
  69. package/dist/collection/components/gam-installation-settings/gam-installation-settings.css +3 -0
  70. package/dist/collection/components/kb-manager-import/kb-manager-import.css +3 -0
  71. package/dist/collection/components/modules/edit-module-server/edit-module-server.css +3 -0
  72. package/dist/collection/components/modules/manage-module-references/manage-module-references.css +3 -0
  73. package/dist/collection/components/modules/manage-module-references-v2/manage-module-references.css +3 -0
  74. package/dist/collection/components/new-environment/new-environment.css +3 -0
  75. package/dist/collection/components/new-kb/gx-ide-assets/new-kb/langs/new-kb.lang.en.json +2 -1
  76. package/dist/collection/components/new-kb/gx-ide-assets/new-kb/langs/new-kb.lang.ja.json +2 -1
  77. package/dist/collection/components/new-kb/helpers.js +9 -0
  78. package/dist/collection/components/new-kb/helpers.js.map +1 -0
  79. package/dist/collection/components/new-kb/new-kb.css +39 -664
  80. package/dist/collection/components/new-kb/new-kb.js +679 -382
  81. package/dist/collection/components/new-kb/new-kb.js.map +1 -1
  82. package/dist/collection/components/new-object/new-object.css +3 -0
  83. package/dist/collection/components/object-selector/object-selector.css +4 -0
  84. package/dist/collection/components/object-selector/object-selector.js +1 -1
  85. package/dist/collection/components/object-selector/object-selector.js.map +1 -1
  86. package/dist/collection/components/references/references.css +3 -0
  87. package/dist/collection/components/share-kb/share-kb.css +3 -0
  88. package/dist/collection/components/start-page/recent-news.css +3 -0
  89. package/dist/collection/components/start-page/start-page.css +3 -0
  90. package/dist/collection/components/team-dev/commit/commit.css +3 -0
  91. package/dist/collection/components/team-dev/select-recent-comment/select-recent-comment.css +3 -0
  92. package/dist/collection/components/team-dev/update/update.css +3 -0
  93. package/dist/collection/components/team-dev/update-partial-selection/update-partial-selection.css +3 -0
  94. package/dist/collection/components/team-dev/update-to-revision/update-to-revision.css +3 -0
  95. package/dist/collection/components/wf-settings/wf-settings.css +3 -0
  96. package/dist/collection/components/ww-images/ww-images.css +3 -0
  97. package/dist/components/common.js +14 -18
  98. package/dist/components/common.js.map +1 -1
  99. package/dist/components/config.js +5 -0
  100. package/dist/components/config.js.map +1 -1
  101. package/dist/components/gx-ide-dashboard-home.js +1 -1
  102. package/dist/components/gx-ide-dashboard-home.js.map +1 -1
  103. package/dist/components/gx-ide-new-kb.js +561 -209
  104. package/dist/components/gx-ide-new-kb.js.map +1 -1
  105. package/dist/components/gx-ide-object-selector.js +2 -2
  106. package/dist/components/gx-ide-object-selector.js.map +1 -1
  107. package/dist/components/gx-ide-start-page.js +1 -1
  108. package/dist/components/gx-ide-start-page.js.map +1 -1
  109. package/dist/components/gx-ide-test.js +53 -102
  110. package/dist/components/gx-ide-test.js.map +1 -1
  111. package/dist/esm/{common-31ac2b05.js → common-339b4376.js} +15 -19
  112. package/dist/esm/common-339b4376.js.map +1 -0
  113. package/dist/esm/{config-084ee328.js → config-ed1f26d7.js} +6 -1
  114. package/dist/esm/config-ed1f26d7.js.map +1 -0
  115. package/dist/esm/genexus-ide-ui.js +1 -1
  116. package/dist/esm/gx-ide-bpm-app-declaration.entry.js +1 -1
  117. package/dist/esm/gx-ide-bpm-assign-roles.entry.js +1 -1
  118. package/dist/esm/gx-ide-bpm-export-xpdl.entry.js +1 -1
  119. package/dist/esm/gx-ide-bpm-import-files.entry.js +1 -1
  120. package/dist/esm/gx-ide-bpm-import-gxpm.entry.js +1 -1
  121. package/dist/esm/gx-ide-bpm-objects-selector.entry.js +1 -1
  122. package/dist/esm/gx-ide-bpm-timer-duration.entry.js +1 -1
  123. package/dist/esm/gx-ide-connect-gx-server.entry.js +1 -1
  124. package/dist/esm/gx-ide-create-kb-from-server.entry.js +1 -1
  125. package/dist/esm/gx-ide-dashboard-home.entry.js +1 -1
  126. package/dist/esm/gx-ide-dashboard-home.entry.js.map +1 -1
  127. package/dist/esm/gx-ide-data-selector.entry.js +1 -1
  128. package/dist/esm/gx-ide-design-import.entry.js +2 -2
  129. package/dist/esm/gx-ide-gam-installation-settings.entry.js +1 -1
  130. package/dist/esm/gx-ide-kb-manager-import.entry.js +1 -1
  131. package/dist/esm/gx-ide-manage-module-references-v2.entry.js +1 -1
  132. package/dist/esm/gx-ide-manage-module-references.entry.js +1 -1
  133. package/dist/esm/gx-ide-new-environment.entry.js +2 -2
  134. package/dist/esm/gx-ide-new-kb.entry.js +524 -183
  135. package/dist/esm/gx-ide-new-kb.entry.js.map +1 -1
  136. package/dist/esm/gx-ide-new-object.entry.js +1 -1
  137. package/dist/esm/gx-ide-object-selector.entry.js +3 -3
  138. package/dist/esm/gx-ide-object-selector.entry.js.map +1 -1
  139. package/dist/esm/gx-ide-recent-news.entry.js +1 -1
  140. package/dist/esm/gx-ide-references.entry.js +1 -1
  141. package/dist/esm/gx-ide-share-kb.entry.js +2 -2
  142. package/dist/esm/gx-ide-start-page.entry.js +2 -2
  143. package/dist/esm/gx-ide-start-page.entry.js.map +1 -1
  144. package/dist/esm/gx-ide-team-dev-commit.entry.js +1 -1
  145. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +1 -1
  146. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +1 -1
  147. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +1 -1
  148. package/dist/esm/gx-ide-team-dev-update.entry.js +1 -1
  149. package/dist/esm/gx-ide-template.entry.js +1 -1
  150. package/dist/esm/gx-ide-test.entry.js +53 -102
  151. package/dist/esm/gx-ide-test.entry.js.map +1 -1
  152. package/dist/esm/gx-ide-wf-settings.entry.js +1 -1
  153. package/dist/esm/gx-ide-ww-images.entry.js +2 -2
  154. package/dist/esm/loader.js +1 -1
  155. package/dist/genexus-ide-ui/genexus-ide-ui.css +2 -2
  156. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +4 -4
  157. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  158. package/dist/genexus-ide-ui/gx-ide-assets/new-kb/langs/new-kb.lang.en.json +2 -1
  159. package/dist/genexus-ide-ui/gx-ide-assets/new-kb/langs/new-kb.lang.ja.json +2 -1
  160. package/dist/genexus-ide-ui/{p-032bdefc.entry.js → p-0fced96c.entry.js} +2 -2
  161. package/dist/genexus-ide-ui/{p-794ac8e6.entry.js → p-15711eed.entry.js} +2 -2
  162. package/dist/genexus-ide-ui/{p-8f294d2e.entry.js → p-176e8d55.entry.js} +2 -2
  163. package/dist/genexus-ide-ui/{p-4ade9a67.entry.js → p-1ad7189f.entry.js} +2 -2
  164. package/dist/genexus-ide-ui/{p-b5bb18d9.entry.js → p-1d56cc71.entry.js} +2 -2
  165. package/dist/genexus-ide-ui/{p-dcbf5cd9.entry.js → p-2ac9e22b.entry.js} +2 -2
  166. package/dist/genexus-ide-ui/{p-af836892.js → p-3ef5a5a6.js} +33 -37
  167. package/dist/genexus-ide-ui/p-3ef5a5a6.js.map +1 -0
  168. package/dist/genexus-ide-ui/{p-929dd336.entry.js → p-55304f04.entry.js} +2 -2
  169. package/dist/genexus-ide-ui/{p-e557aa5e.entry.js → p-5c5abefc.entry.js} +2 -2
  170. package/dist/genexus-ide-ui/{p-05eb7c04.entry.js → p-6d0037f1.entry.js} +20 -20
  171. package/dist/genexus-ide-ui/p-6d0037f1.entry.js.map +1 -0
  172. package/dist/genexus-ide-ui/{p-d5c2b4cc.entry.js → p-6fa9ea04.entry.js} +2 -2
  173. package/dist/genexus-ide-ui/{p-a4370f5d.entry.js → p-70588f0b.entry.js} +2 -2
  174. package/dist/genexus-ide-ui/{p-55a30661.js → p-78b90603.js} +6 -1
  175. package/dist/genexus-ide-ui/p-78b90603.js.map +1 -0
  176. package/dist/genexus-ide-ui/{p-5d8817cb.entry.js → p-88fff4f3.entry.js} +2 -2
  177. package/dist/genexus-ide-ui/{p-e0072adb.entry.js → p-9a9fdfc0.entry.js} +2 -2
  178. package/dist/genexus-ide-ui/p-a29cfcdb.entry.js +100 -0
  179. package/dist/genexus-ide-ui/p-a29cfcdb.entry.js.map +1 -0
  180. package/dist/genexus-ide-ui/{p-5620c188.entry.js → p-a29d27ed.entry.js} +2 -2
  181. package/dist/genexus-ide-ui/{p-2b200d34.entry.js → p-a2dad270.entry.js} +3 -3
  182. package/dist/genexus-ide-ui/{p-41e5e8e0.entry.js → p-a787b331.entry.js} +2 -2
  183. package/dist/genexus-ide-ui/{p-8beec8d4.entry.js → p-a7be549c.entry.js} +2 -2
  184. package/dist/genexus-ide-ui/p-ab29274c.entry.js +764 -0
  185. package/dist/genexus-ide-ui/p-ab29274c.entry.js.map +1 -0
  186. package/dist/genexus-ide-ui/{p-62be51c2.entry.js → p-b967c6e3.entry.js} +2 -2
  187. package/dist/genexus-ide-ui/{p-1a1042c2.entry.js → p-c10d7879.entry.js} +2 -2
  188. package/dist/genexus-ide-ui/{p-9d02318b.entry.js → p-c484250c.entry.js} +2 -2
  189. package/dist/genexus-ide-ui/{p-593981a8.entry.js → p-ca842e11.entry.js} +3 -3
  190. package/dist/genexus-ide-ui/{p-afb531b3.entry.js → p-d1a76638.entry.js} +2 -2
  191. package/dist/genexus-ide-ui/{p-f69df17d.entry.js → p-d703bff2.entry.js} +2 -2
  192. package/dist/genexus-ide-ui/{p-f512bbca.entry.js → p-dbf8b06e.entry.js} +2 -2
  193. package/dist/genexus-ide-ui/{p-b7dfdf6d.entry.js → p-de18e865.entry.js} +3 -3
  194. package/dist/genexus-ide-ui/{p-88ab3f67.entry.js → p-e0da6770.entry.js} +2 -2
  195. package/dist/genexus-ide-ui/{p-c0ee7647.entry.js → p-e146e456.entry.js} +3 -3
  196. package/dist/genexus-ide-ui/{p-54ee665f.entry.js → p-e4cbd23c.entry.js} +2 -2
  197. package/dist/genexus-ide-ui/{p-eb6ef221.entry.js → p-e629ab16.entry.js} +2 -2
  198. package/dist/genexus-ide-ui/{p-1f8445eb.entry.js → p-edffe8d7.entry.js} +3 -3
  199. package/dist/genexus-ide-ui/{p-aea82479.entry.js → p-faa6fc25.entry.js} +2 -2
  200. package/dist/types/common/common.d.ts +6 -1
  201. package/dist/types/common/config.d.ts +6 -0
  202. package/dist/types/common/form-validation.d.ts +8 -0
  203. package/dist/types/components/_test/test.d.ts +1 -1
  204. package/dist/types/components/new-kb/helpers.d.ts +5 -0
  205. package/dist/types/components/new-kb/new-kb.d.ts +68 -102
  206. package/dist/types/components.d.ts +0 -27
  207. package/package.json +3 -3
  208. package/dist/cjs/common-d21da2fc.js.map +0 -1
  209. package/dist/cjs/config-cefda28a.js.map +0 -1
  210. package/dist/esm/common-31ac2b05.js.map +0 -1
  211. package/dist/esm/config-084ee328.js.map +0 -1
  212. package/dist/genexus-ide-ui/p-05eb7c04.entry.js.map +0 -1
  213. package/dist/genexus-ide-ui/p-55a30661.js.map +0 -1
  214. package/dist/genexus-ide-ui/p-69a83248.entry.js +0 -186
  215. package/dist/genexus-ide-ui/p-69a83248.entry.js.map +0 -1
  216. package/dist/genexus-ide-ui/p-9d640444.entry.js +0 -472
  217. package/dist/genexus-ide-ui/p-9d640444.entry.js.map +0 -1
  218. package/dist/genexus-ide-ui/p-af836892.js.map +0 -1
  219. /package/dist/genexus-ide-ui/{p-032bdefc.entry.js.map → p-0fced96c.entry.js.map} +0 -0
  220. /package/dist/genexus-ide-ui/{p-794ac8e6.entry.js.map → p-15711eed.entry.js.map} +0 -0
  221. /package/dist/genexus-ide-ui/{p-8f294d2e.entry.js.map → p-176e8d55.entry.js.map} +0 -0
  222. /package/dist/genexus-ide-ui/{p-4ade9a67.entry.js.map → p-1ad7189f.entry.js.map} +0 -0
  223. /package/dist/genexus-ide-ui/{p-b5bb18d9.entry.js.map → p-1d56cc71.entry.js.map} +0 -0
  224. /package/dist/genexus-ide-ui/{p-dcbf5cd9.entry.js.map → p-2ac9e22b.entry.js.map} +0 -0
  225. /package/dist/genexus-ide-ui/{p-929dd336.entry.js.map → p-55304f04.entry.js.map} +0 -0
  226. /package/dist/genexus-ide-ui/{p-e557aa5e.entry.js.map → p-5c5abefc.entry.js.map} +0 -0
  227. /package/dist/genexus-ide-ui/{p-d5c2b4cc.entry.js.map → p-6fa9ea04.entry.js.map} +0 -0
  228. /package/dist/genexus-ide-ui/{p-a4370f5d.entry.js.map → p-70588f0b.entry.js.map} +0 -0
  229. /package/dist/genexus-ide-ui/{p-5d8817cb.entry.js.map → p-88fff4f3.entry.js.map} +0 -0
  230. /package/dist/genexus-ide-ui/{p-e0072adb.entry.js.map → p-9a9fdfc0.entry.js.map} +0 -0
  231. /package/dist/genexus-ide-ui/{p-5620c188.entry.js.map → p-a29d27ed.entry.js.map} +0 -0
  232. /package/dist/genexus-ide-ui/{p-2b200d34.entry.js.map → p-a2dad270.entry.js.map} +0 -0
  233. /package/dist/genexus-ide-ui/{p-41e5e8e0.entry.js.map → p-a787b331.entry.js.map} +0 -0
  234. /package/dist/genexus-ide-ui/{p-8beec8d4.entry.js.map → p-a7be549c.entry.js.map} +0 -0
  235. /package/dist/genexus-ide-ui/{p-62be51c2.entry.js.map → p-b967c6e3.entry.js.map} +0 -0
  236. /package/dist/genexus-ide-ui/{p-1a1042c2.entry.js.map → p-c10d7879.entry.js.map} +0 -0
  237. /package/dist/genexus-ide-ui/{p-9d02318b.entry.js.map → p-c484250c.entry.js.map} +0 -0
  238. /package/dist/genexus-ide-ui/{p-593981a8.entry.js.map → p-ca842e11.entry.js.map} +0 -0
  239. /package/dist/genexus-ide-ui/{p-afb531b3.entry.js.map → p-d1a76638.entry.js.map} +0 -0
  240. /package/dist/genexus-ide-ui/{p-f69df17d.entry.js.map → p-d703bff2.entry.js.map} +0 -0
  241. /package/dist/genexus-ide-ui/{p-f512bbca.entry.js.map → p-dbf8b06e.entry.js.map} +0 -0
  242. /package/dist/genexus-ide-ui/{p-b7dfdf6d.entry.js.map → p-de18e865.entry.js.map} +0 -0
  243. /package/dist/genexus-ide-ui/{p-88ab3f67.entry.js.map → p-e0da6770.entry.js.map} +0 -0
  244. /package/dist/genexus-ide-ui/{p-c0ee7647.entry.js.map → p-e146e456.entry.js.map} +0 -0
  245. /package/dist/genexus-ide-ui/{p-54ee665f.entry.js.map → p-e4cbd23c.entry.js.map} +0 -0
  246. /package/dist/genexus-ide-ui/{p-eb6ef221.entry.js.map → p-e629ab16.entry.js.map} +0 -0
  247. /package/dist/genexus-ide-ui/{p-1f8445eb.entry.js.map → p-edffe8d7.entry.js.map} +0 -0
  248. /package/dist/genexus-ide-ui/{p-aea82479.entry.js.map → p-faa6fc25.entry.js.map} +0 -0
@@ -1,65 +1,290 @@
1
- import { r as registerInstance, c as createEvent, a as getAssetPath, h, H as Host, g as getElement } from './index-27c691bc.js';
1
+ import { h, r as registerInstance, a as getAssetPath, H as Host, g as getElement } from './index-27c691bc.js';
2
+ import { c as config } from './config-ed1f26d7.js';
2
3
  import { L as Locale } from './locale-3c32f251.js';
3
- import { c as config } from './config-084ee328.js';
4
- import { g as getSelectedGxOption, r as renderFormItems } from './common-31ac2b05.js';
5
- import { f as formSubmitValidation } from './helpers-05c62775.js';
4
+ import { g as getSelectedItem } from './common-339b4376.js';
5
+ import { g as getIconPath } from './assets-manager-120996e9.js';
6
6
 
7
- const newKbCss = ":root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-01--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-02{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-02--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--color-on-primary)}.gxg-title-03{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-03--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-04{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-04--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-05{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-05--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable)}.gxg-text--negative{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text--gray{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--dimmed)}.gxg-quote{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);font-style:italic}.gxg-quote--negative{color:var(--ds-base-font-color--negative)}.gxg-link{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--ds-base-font-color--link-hover)}.gxg-link:active{color:var(--ds-base-font-color--link-active)}.gxg-link-gray{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed)}.gxg-link-gray:hover{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed);filter:brightness(1.4)}.gxg-alert-error{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--error);display:inline-block}.gxg-alert-warning{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--warning);display:inline-block}.gxg-alert-success{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--success);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--ds-base-font-family-primary);font-weight:var(--gxg-label-font-weight);font-size:var(--gxg-label-font-size);color:var(--gxg-label-color);text-align:center;line-height:1.455em;display:flex;align-items:center}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-scrollbar{}.gxg-scrollbar::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gxg-scrollbar::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gxg-scrollbar::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}:host{display:grid;block-size:100%}.card-regular{background-color:var(--mer-surface__elevation--01);border:var(--mer-border__width--sm) solid var(--mer-border-color__on-elevation--01);border-radius:var(--mer-border__radius--md);padding:var(--mer-spacing--md) var(--mer-spacing--md);display:grid}.card-small{background-color:var(--mer-surface__elevation--02);border-radius:var(--mer-border__radius--sm);padding:var(--mer-spacing--sm) var(--mer-spacing--sm)}.card-small--actionable:hover{background-color:var(--mer-color__neutral-gray--600)}.card-small--actionable:active{background-color:var(--mer-color__neutral-gray--650)}.card-small:focus-visible{outline:var(--focus__outline-width) var(--focus__outline-style) var(--focus__outline-color);outline-offset:var(--focus__outline-offset)}.empty-state{block-size:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--mer-spacing--sm);text-align:center}.empty-state__title,.empty-state__button,.empty-state__link{max-inline-size:300px}.opacity-0{opacity:0}.opacity-1{opacity:1}.display-contents{display:contents}.gxi-hidden{display:none !important}.gxi-full-height{height:100%}.gxi-overflow-auto{overflow:auto}.gxi-display-flex{display:flex}.align-start{display:flex;align-items:start}.align-center{display:flex;align-items:center}.align-end{display:flex;align-items:end}.overflow-auto{overflow:auto}.justify-start{display:flex;justify-content:start}.justify-center{display:flex;justify-content:center}.justify-end{display:flex;justify-content:end}.grid{display:grid;grid-row-gap:var(--gx-ide-grid-row-gap);grid-column-gap:var(--gx-ide-grid-column-gap);grid-template-rows:auto}ch-grid-cell{display:flex}ch-grid{overflow:auto;height:100%}ch-grid-column{z-index:99;border-bottom:1px solid var(--mer-color__neutral-gray--800)}ch-grid-column:first-child{padding-inline-start:var(--gx-ide-container__padding) !important}ch-grid-column:last-child{padding-inline-end:var(--gx-ide-container__padding) !important}ch-grid-cell{--mer-spacing--xs:var(--gx-ide-container__padding)}.layout{display:grid;gap:var(--mer-spacing--lg);box-sizing:border-box}.layout--two-cols{grid-template-columns:1fr 1fr}.layout--space-above{padding-block-start:var(--mer-spacing--lg)}gxg-tabs{box-shadow:none}:host(.gx-ide-component){height:100% !important;display:flex !important;flex-direction:column !important}:host(:focus-within) gx-ide-top-bar::part(wrapper){background-color:var(--color-secondary-enabled)}.gx-ide-main-wrapper{color:var(--gx-ide-component-text-color);font-weight:var(--mer-font__weight--regular);font-size:var(--mer-font__size--xs);font-family:var(--mer-font-family--primary);height:100%;background-color:var(--gx-ide-component-background-color);display:flex;flex-direction:column;flex-grow:1;box-sizing:border-box}.gx-ide-main{flex-grow:1;overflow-y:auto;}.gx-ide-main::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-main::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-main::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-main::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-main::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.gx-ide-overflow{overflow-y:auto;}.gx-ide-overflow::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-overflow::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-overflow::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.tree-view-primary{font-size:var(--mer-font__size--2xs)}p{margin:0;font-size:var(--mer-font__size--xxs)}.buttons-container{display:flex;gap:var(--mer-spacing--xs)}:host{display:block;border:1px solid var(--gxg-border-color--regular);background-color:var(--mer-color__surface)}.header{grid-template-columns:auto 1fr;grid-template-areas:\"kb-name-label kb-input\"}.header--is-advanced{grid-template-columns:auto 1fr min-content;grid-template-areas:\"kb-name-label kb-input .\" \"location-label location-input location-icon\"}.header .kb-input{grid-area:kb-input}.header .kb-name-label{grid-area:kb-label}.header .location-label{grid-area:location-label}.header .location-input{grid-area:location-input}.header .location-icon{grid-area:location-icon}.gxg-tabs{margin-top:0;box-shadow:none}.basic-row-first{container-name:basic-row-first;}.basic-row-first__container{display:grid;gap:var(--gx-ide-grid-column-gap);padding:var(--gx-ide-container__padding);border-bottom:1px solid var(--gx-ide-container-border-color);grid-template-columns:repeat(2, 1fr)}.basic-row-second{grid-template-columns:repeat(2, 1fr);grid-column-gap:0;grid-row-gap:0;flex-grow:1}.knowledge-base-storage{display:grid;grid-template-areas:\"knowledge-base-storage__col-left knowledge-base-storage__col-right\";grid-template-columns:repeat(2, 1fr);flex-grow:1;gap:0}.knowledge-base-storage>*:first-child{border-right:1px solid var(--gx-ide-container-border-color)}.knowledge-base-storage__col-left{display:grid;gap:var(--gx-ide-grid-row-gap);padding:var(--gx-ide-container__padding);grid-area:knowledge-base-storage__col-left;grid-template-columns:1fr auto;grid-template-rows:repeat(4, min-content);grid-template-areas:\"server-name-combo-box server-name-button\" \"database-name .\" \"collation-combo-box collation-button\" \"create-data-in-kb .\"}.knowledge-base-storage__col-left .server-name-combo-box{grid-area:server-name-combo-box}.knowledge-base-storage__col-left .server-name-button{grid-area:server-name-button;align-self:end}.knowledge-base-storage__col-left .database-name{grid-area:database-name}.knowledge-base-storage__col-left .collation-combo-box{grid-area:collation-combo-box}.knowledge-base-storage__col-left .collation-button{grid-area:collation-button;align-self:end}.knowledge-base-storage__col-left .create-data-in-kb{grid-area:create-data-in-kb}.knowledge-base-storage__col-right{display:grid;padding:var(--gx-ide-container__padding);gap:var(--gx-ide-grid-row-gap);grid-area:knowledge-base-storage__col-right;grid-template-columns:1fr;grid-template-rows:repeat(4, min-content);grid-template-areas:\"authentication-type\" \"user-name\" \"password\" \"save-password\"}.knowledge-base-storage__col-right .authentication-type{grid-area:authentication-type}.knowledge-base-storage__col-right .user-name{grid-area:user-name}.knowledge-base-storage__col-right .password{grid-area:password}.knowledge-base-storage__col-right .save-password{grid-area:save-password}.knowledge-base-storage__col-right--windows-authentication{grid-template-areas:\"authentication-type\"}";
7
+ // formSubmitValidation will be deprecated. use "validateControls" instead.
8
+ // TODO: Improve the way we mark components with error. We must not use error classes.
9
+ const formElementsErrorClassesDictionary = {
10
+ "ch-checkbox": "checkbox-error",
11
+ "ch-combo-box-render": "combo-box-error",
12
+ "ch-edit": "form-input-error"
13
+ };
14
+ const toggleErrorClass = (hasError, element) => {
15
+ const elementTagName = element.tagName.toLowerCase();
16
+ const errorClass = formElementsErrorClassesDictionary[elementTagName];
17
+ if (hasError) {
18
+ element.classList.add(errorClass);
19
+ }
20
+ else {
21
+ element.classList.remove(errorClass);
22
+ }
23
+ };
24
+ const validateControls = (formSubmitResult, validatableControls) => {
25
+ const validatableControlsUpdated = new Map(validatableControls);
26
+ formSubmitResult.fieldErrors.forEach(fieldResult => {
27
+ const fieldKey = fieldResult.key;
28
+ const fieldHasError = fieldResult.hasError;
29
+ const controlMapRecord = validatableControlsUpdated.get(fieldKey);
30
+ if (controlMapRecord === null || controlMapRecord === void 0 ? void 0 : controlMapRecord.reference) {
31
+ // toggle class to add or remove error style
32
+ toggleErrorClass(fieldHasError, controlMapRecord.reference);
33
+ validatableControlsUpdated.set(fieldKey, Object.assign(Object.assign({}, controlMapRecord), { hasError: fieldHasError, message: fieldResult.message }));
34
+ }
35
+ });
36
+ // return validatableControls updated.
37
+ return validatableControlsUpdated;
38
+ };
39
+
40
+ const renderChCheckboxItems = (options, group = "undefined-group", callback) => (options === null || options === void 0 ? void 0 : options.length) > 0 &&
41
+ options.map(option => (h("ch-checkbox", { name: option.name, class: "checkbox", part: `${group}-${option.id}`, checkedValue: option.value || option.id, caption: option.label, disabled: option.disabled, value: option.value, onInput: callback !== null && callback !== void 0 ? callback : null, startImgSrc: option.iconName })));
42
+ const mapOptionsToComboBoxItemModel = (options) => options.map(option => ({
43
+ value: option.id,
44
+ caption: option.label
45
+ // startImgSrc: option.iconName
46
+ }));
8
47
 
48
+ const newKbCss = ":host{display:grid;block-size:100%;overflow:auto;grid-template-rows:max-content 1fr max-content}.section{display:contents}.header-one-col{grid-template-columns:1fr}.header-two-cols{grid-template-columns:1fr 1fr}.location-wrapper{display:flex;gap:var(--mer-spacing--2xs)}.location{flex-grow:1;grid-area:location}.tab::part(page){scrollbar-width:thin}.basic{grid-template:\"prototyping-target user-interface-language\" max-content \"back-end front-end\" max-content;grid-template-columns:1fr 1fr}.prototyping-target{grid-area:prototyping-target}.user-interface-language{grid-area:user-interface-language}.back-end{grid-area:back-end;grid-auto-rows:max-content}.front-end{grid-area:front-end}.tab-advanced-title{grid-area:tab-advanced-title}.layout-tab-advanced-left-col{grid-area:layout-tab-advanced-left-col}.layout-tab-advanced-right-col{grid-area:layout-tab-advanced-right-col}.basic,.advanced{padding-block:var(--content-block-spacing)}.tab-advanced__field-group{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:auto}.text-align-center{text-align:center}";
49
+
50
+ var __classPrivateFieldGet = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
51
+ if (kind === "a" && !f)
52
+ throw new TypeError("Private accessor was defined without a getter");
53
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
54
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
55
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
56
+ };
57
+ var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
58
+ if (kind === "m")
59
+ throw new TypeError("Private method is not writable");
60
+ if (kind === "a" && !f)
61
+ throw new TypeError("Private accessor was defined without a setter");
62
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
63
+ throw new TypeError("Cannot write private member to an object whose class did not declare it");
64
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
65
+ };
66
+ var _GxIdeNewKb_instances, _GxIdeNewKb_advancedTabHasBeenRendered, _GxIdeNewKb_componentLocale, _GxIdeNewKb_selectedFrontEndsIds, _GxIdeNewKb_shortcutsSrc, _GxIdeNewKb_kbSectionsModel, _GxIdeNewKb_authenticationTypeEl, _GxIdeNewKb_collationEl, _GxIdeNewKb_createDataFilesInKBFolderEl, _GxIdeNewKb_databaseNameEl, _GxIdeNewKb_dataSourceEl, _GxIdeNewKb_frontEndsEl, _GxIdeNewKb_kbNameEl, _GxIdeNewKb_locationEl, _GxIdeNewKb_passwordEl, _GxIdeNewKb_prototypingEnvironmentEl, _GxIdeNewKb_prototypingTargetEl, _GxIdeNewKb_savePasswordEl, _GxIdeNewKb_serverNameEl, _GxIdeNewKb_userInterfaceLanguageEl, _GxIdeNewKb_userNameEl, _GxIdeNewKb_chShortcutsEl, _GxIdeNewKb_getCheckboxValues, _GxIdeNewKb_handleCheckboxStatusChange, _GxIdeNewKb_handlerAuthenticationTypeInput, _GxIdeNewKb_handlerServerNameInput, _GxIdeNewKb_prototypingEnvironmentValueChangedHandler, _GxIdeNewKb_prototypingTargetValueChangedHandler, _GxIdeNewKb_renderAdvanced, _GxIdeNewKb_renderBasic, _GxIdeNewKb_cancelKbHandler, _GxIdeNewKb_createKbHandler, _GxIdeNewKb_evaluateCreateDataCheckboxEnabled, _GxIdeNewKb_evaluateTooltipRender, _GxIdeNewKb_evaluateUserInputsDisplay, _GxIdeNewKb_getDataSources, _GxIdeNewKb_initialSetup, _GxIdeNewKb_initialSetupAdvancedTab, _GxIdeNewKb_initializeValidatableControlsBasicTab, _GxIdeNewKb_initializeValidatableControlsAdvancedTab, _GxIdeNewKb_selectLocationHandler, _GxIdeNewKb_tabSelectionChangedHandler, _GxIdeNewKb_updateFrontEnds, _GxIdeNewKb_updateSelectedFrontEndsIds;
67
+ const CSS_BUNDLES = [
68
+ "resets/box-sizing",
69
+ "components/tab",
70
+ "components/tooltip",
71
+ "utils/form--full",
72
+ "utils/layout",
73
+ "utils/typography",
74
+ "chameleon/scrollbar"
75
+ ];
76
+ const WINDOWS_AUTHENTICATION_VALUE = "windows-authentication";
77
+ const MAIN_SECTION_CLASSES = "main";
78
+ const BASIC_SECTION_PARENT_CLASSES = "basic field-group spacing-body-inline";
79
+ const SYSTEM_ICON = getIconPath({
80
+ category: "system",
81
+ name: "folder",
82
+ colorType: "primary"
83
+ });
84
+ const BASIC_TAB_SELECTOR = "basic";
85
+ const ADVANCED_TAB_SELECTOR = "advanced";
9
86
  const GxIdeNewKb = class {
10
87
  constructor(hostRef) {
11
88
  registerInstance(this, hostRef);
12
- this.componentDidRenderFirstTime = createEvent(this, "componentDidRenderFirstTime", 7);
13
- this.renderedFirstTime = false;
14
- this.selectedFrontEndsIds = [];
15
- this.shortcutsSrc = getAssetPath(`./gx-ide-assets/new-kb/shortcuts.json`);
16
- // 9.LOCAL METHODS //
17
- // 9.LOCAL METHODS -> Helpers //
18
- this.initialSetup = () => {
19
- this.updateSelectedFrontEndsIds();
20
- };
21
- // 9.LOCAL METHODS -> Not Helpers //
22
- this.updateSelectedFrontEndsIds = () => {
23
- this.selectedFrontEndsIds = [];
24
- this.frontEndsEl.getValues().then(frontEndsCheckboxesInfo => {
25
- frontEndsCheckboxesInfo.forEach(frontEnd => {
26
- if (frontEnd.value) {
27
- this.selectedFrontEndsIds.push(frontEnd.id);
28
- }
29
- });
30
- });
31
- };
89
+ _GxIdeNewKb_instances.add(this);
90
+ _GxIdeNewKb_advancedTabHasBeenRendered.set(this, false);
32
91
  /**
33
- * @description If Server Name first option is selected, "Create Data in Knowledge Base Folder" should be disabled
92
+ * The component hard-coded strings translations.
34
93
  */
35
- this.evaluateCreateDataInKbDisabled = (e) => {
36
- var _a, _b;
37
- if (e) {
38
- if (((_a = this.serverNames[0]) === null || _a === void 0 ? void 0 : _a.id) === e.detail) {
39
- this.createDataInKbDisabled = true;
40
- }
41
- else {
42
- this.createDataInKbDisabled = false;
43
- }
94
+ // eslint-disable-next-line @stencil-community/own-props-must-be-private
95
+ _GxIdeNewKb_componentLocale.set(this, void 0);
96
+ _GxIdeNewKb_selectedFrontEndsIds.set(this, []);
97
+ _GxIdeNewKb_shortcutsSrc.set(this, getAssetPath(`./gx-ide-assets/new-kb/shortcuts.json`));
98
+ _GxIdeNewKb_kbSectionsModel.set(this, []);
99
+ /* References needed to collect data con "Create" button submit*/
100
+ _GxIdeNewKb_authenticationTypeEl.set(this, void 0);
101
+ _GxIdeNewKb_collationEl.set(this, void 0);
102
+ _GxIdeNewKb_createDataFilesInKBFolderEl.set(this, void 0);
103
+ _GxIdeNewKb_databaseNameEl.set(this, void 0);
104
+ _GxIdeNewKb_dataSourceEl.set(this, void 0);
105
+ _GxIdeNewKb_frontEndsEl.set(this, void 0);
106
+ _GxIdeNewKb_kbNameEl.set(this, void 0);
107
+ _GxIdeNewKb_locationEl.set(this, void 0);
108
+ _GxIdeNewKb_passwordEl.set(this, void 0);
109
+ _GxIdeNewKb_prototypingEnvironmentEl.set(this, void 0);
110
+ _GxIdeNewKb_prototypingTargetEl.set(this, void 0);
111
+ _GxIdeNewKb_savePasswordEl.set(this, void 0);
112
+ _GxIdeNewKb_serverNameEl.set(this, void 0);
113
+ _GxIdeNewKb_userInterfaceLanguageEl.set(this, void 0);
114
+ _GxIdeNewKb_userNameEl.set(this, void 0);
115
+ _GxIdeNewKb_chShortcutsEl.set(this, void 0);
116
+ _GxIdeNewKb_handleCheckboxStatusChange.set(this, () => {
117
+ __classPrivateFieldGet(this, _GxIdeNewKb_updateSelectedFrontEndsIds, "f").call(this);
118
+ });
119
+ _GxIdeNewKb_handlerAuthenticationTypeInput.set(this, (e) => {
120
+ const authenticationTypeValue = e === null || e === void 0 ? void 0 : e.detail;
121
+ __classPrivateFieldGet(this, _GxIdeNewKb_evaluateUserInputsDisplay, "f").call(this, authenticationTypeValue);
122
+ });
123
+ _GxIdeNewKb_handlerServerNameInput.set(this, (e) => {
124
+ __classPrivateFieldGet(this, _GxIdeNewKb_evaluateCreateDataCheckboxEnabled, "f").call(this, e.detail);
125
+ });
126
+ _GxIdeNewKb_prototypingEnvironmentValueChangedHandler.set(this, () => {
127
+ __classPrivateFieldGet(this, _GxIdeNewKb_getDataSources, "f").call(this);
128
+ __classPrivateFieldGet(this, _GxIdeNewKb_updateFrontEnds, "f").call(this);
129
+ });
130
+ _GxIdeNewKb_prototypingTargetValueChangedHandler.set(this, () => {
131
+ __classPrivateFieldGet(this, _GxIdeNewKb_getDataSources, "f").call(this);
132
+ });
133
+ _GxIdeNewKb_renderAdvanced.set(this, () => {
134
+ return [
135
+ h("h2", {
136
+ // #knowledge base storage
137
+ class: "control-header heading-5 text-align-center"
138
+ }, __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabAdvanced.tabTitle),
139
+ h("div", { class: "field-group tab-advanced__field-group" }, h("div", {
140
+ // #server name
141
+ class: "field field-block server-name-field"
142
+ }, h("label", { class: "label", htmlFor: "serverName" }, __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabAdvanced.serverName.label), h("ch-combo-box-render", { class: "combo-box", disabled: this.serverNames.length === 0, placeholder: this.serverNames.length === 0
143
+ ? __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabAdvanced.serverName
144
+ .disabledPlaceholder
145
+ : "", value: this.serverNamesInitialValue, ref: (el) => (__classPrivateFieldSet(this, _GxIdeNewKb_serverNameEl, el, "f")), model: this.serverNamesComboBoxModel, onInput: this.serverNames.length > 0
146
+ ? __classPrivateFieldGet(this, _GxIdeNewKb_handlerServerNameInput, "f")
147
+ : undefined, id: "serverName", part: "server-name" }), __classPrivateFieldGet(this, _GxIdeNewKb_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _GxIdeNewKb_serverNameEl, "f"))), h("div", {
148
+ // #authentication type
149
+ class: "field field-block authentication-type-field"
150
+ }, h("label", { class: "label", htmlFor: "authenticationType" }, __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabAdvanced.authenticationType.label), h("ch-combo-box-render", { class: "combo-box", disabled: this.authenticationTypes.length === 0, placeholder: this.authenticationTypes.length === 0
151
+ ? __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabAdvanced.authenticationType
152
+ .disabledPlaceholder
153
+ : "", value: this.authenticationTypesInitialValue, ref: (el) => (__classPrivateFieldSet(this, _GxIdeNewKb_authenticationTypeEl, el, "f")), model: this.authenticationTypesComboBoxModel, id: "authenticationType", part: "authentication-type", onInput: this.authenticationTypes.length > 0
154
+ ? __classPrivateFieldGet(this, _GxIdeNewKb_handlerAuthenticationTypeInput, "f")
155
+ : undefined }), __classPrivateFieldGet(this, _GxIdeNewKb_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _GxIdeNewKb_authenticationTypeEl, "f"))), h("div", {
156
+ // #database
157
+ class: "field field-block database-field"
158
+ }, h("label", { class: "label", htmlFor: "databaseName" }, __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabAdvanced.databaseName.label), h("ch-edit", {
159
+ // TODO add placeholder
160
+ class: "form-input", value: this.databaseName, id: "databaseName", part: "database-name", ref: (el) => (__classPrivateFieldSet(this, _GxIdeNewKb_databaseNameEl, el, "f"))
161
+ }), __classPrivateFieldGet(this, _GxIdeNewKb_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _GxIdeNewKb_databaseNameEl, "f"))), this.userNameVisible ? (h("div", {
162
+ // #username
163
+ class: "field field-block username-field"
164
+ }, h("label", { class: "label", htmlFor: "userName" }, __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabAdvanced.userName.label), h("ch-edit", {
165
+ // TODO add placeholder
166
+ class: "form-input", value: this.userName, id: "userName", part: "user-name", ref: (el) => (__classPrivateFieldSet(this, _GxIdeNewKb_userNameEl, el, "f"))
167
+ }), __classPrivateFieldGet(this, _GxIdeNewKb_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _GxIdeNewKb_userNameEl, "f")))) : null, h("div", {
168
+ // #collation
169
+ class: "field field-block collation-field"
170
+ }, h("label", { class: "label", htmlFor: "collation" }, __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabAdvanced.collation.label), h("ch-combo-box-render", { class: "combo-box", disabled: this.serverNames.length === 0, placeholder: this.collations.length === 0
171
+ ? __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabAdvanced.collation
172
+ .disabledPlaceholder
173
+ : "", value: this.collationsInitialValue, ref: (el) => (__classPrivateFieldSet(this, _GxIdeNewKb_collationEl, el, "f")), model: this.collationsComboBoxModel, id: "collation", part: "collation" }), __classPrivateFieldGet(this, _GxIdeNewKb_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _GxIdeNewKb_collationEl, "f"))), this.passwordVisible ? (h("div", {
174
+ // #password
175
+ class: "field field-block password-field"
176
+ }, h("label", { class: "label", htmlFor: "password" }, __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabAdvanced.password.label), h("ch-edit", {
177
+ // TODO add placeholder
178
+ class: "form-input", type: "password", value: this.password, id: "password", part: "password", ref: (el) => (__classPrivateFieldSet(this, _GxIdeNewKb_passwordEl, el, "f"))
179
+ }), __classPrivateFieldGet(this, _GxIdeNewKb_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _GxIdeNewKb_passwordEl, "f")))) : null, h("ch-checkbox", {
180
+ // #create data in knowledge base folder
181
+ class: "checkbox create-data-in-kb-checkbox", checkedValue: "createDataFilesInKBFolder", caption: __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabAdvanced.createDataFilesInKbFolder, disabled: this.createDataInKbDisabled, part: "create-data-in-kb", id: "createDataFilesInKBFolder", ref: (el) => (__classPrivateFieldSet(this, _GxIdeNewKb_createDataFilesInKBFolderEl, el, "f"))
182
+ }), this.savePasswordVisible ? (h("ch-checkbox", {
183
+ // #save password
184
+ class: "checkbox save-password-checkbox", checkedValue: "password", caption: __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabAdvanced.savePassword, part: "save-password", id: "savePassword", ref: (el) => (__classPrivateFieldSet(this, _GxIdeNewKb_savePasswordEl, el, "f"))
185
+ })) : null)
186
+ ];
187
+ });
188
+ _GxIdeNewKb_renderBasic.set(this, () => {
189
+ return [
190
+ h("div", {
191
+ // #prototyping target
192
+ class: "field field-block prototyping-target"
193
+ }, h("label", { class: "label", htmlFor: "prototypingTarget" }, __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabBasic.prototypingTarget.label), h("ch-combo-box-render", { id: "prototypingTarget", class: "combo-box", part: "prototyping-target", disabled: this.prototypingTargets.length === 0, placeholder: this.prototypingTargets.length === 0
194
+ ? __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabBasic.prototypingTarget
195
+ .disabledPlaceholder
196
+ : "", value: this.prototypingTargetsInitialValue, model: this.prototypingTargetsComboBoxModel, onInput: this.prototypingTargets.length > 0
197
+ ? __classPrivateFieldGet(this, _GxIdeNewKb_prototypingTargetValueChangedHandler, "f")
198
+ : undefined, ref: (el) => (__classPrivateFieldSet(this, _GxIdeNewKb_prototypingTargetEl, el, "f")) }), __classPrivateFieldGet(this, _GxIdeNewKb_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _GxIdeNewKb_prototypingTargetEl, "f"))),
199
+ h("div", {
200
+ // #user interface
201
+ class: "field field-block user-interface-language"
202
+ }, h("label", { class: "label", htmlFor: "userInterfaceLanguage" }, __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabBasic.userInterfaceLanguage.label), h("ch-combo-box-render", { class: "combo-box", disabled: this.userInterfaceLanguages.length === 0, placeholder: this.userInterfaceLanguages.length === 0
203
+ ? __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabBasic.userInterfaceLanguage
204
+ .disabledPlaceholder
205
+ : "", value: this.userInterfaceLanguagesInitialValue, ref: (el) => (__classPrivateFieldSet(this, _GxIdeNewKb_userInterfaceLanguageEl, el, "f")), model: this.userInterfaceLanguagesComboBoxModel, id: "userInterfaceLanguage", part: "user-interface-language" }), __classPrivateFieldGet(this, _GxIdeNewKb_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _GxIdeNewKb_userInterfaceLanguageEl, "f"))),
206
+ h("div", null, h("h2", {
207
+ // back end
208
+ class: "control-header heading-5 text-align-center"
209
+ }, __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabBasic.backEnd.backEndLabel), h("div", { class: "field-group back-end" }, h("div", {
210
+ // #prototyping environment
211
+ class: "field field-block"
212
+ }, h("label", { class: "label", htmlFor: "prototypingEnvironment" }, __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabBasic.backEnd.prototypingEnvironment
213
+ .label), h("ch-combo-box-render", { class: "combo-box", disabled: this.prototypingEnvironments.length === 0, placeholder: this.prototypingEnvironments.length === 0
214
+ ? __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabBasic.backEnd
215
+ .prototypingEnvironment.disabledPlaceholder
216
+ : "", value: this.prototypingEnvironmentsInitialValue, ref: (el) => (__classPrivateFieldSet(this, _GxIdeNewKb_prototypingEnvironmentEl, el, "f")), model: this.prototypingEnvironmentsComboBoxModel, onInput: this.prototypingEnvironments.length > 0
217
+ ? __classPrivateFieldGet(this, _GxIdeNewKb_prototypingEnvironmentValueChangedHandler, "f")
218
+ : undefined, part: "prototyping-environment", id: "prototypingEnvironment" }), __classPrivateFieldGet(this, _GxIdeNewKb_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _GxIdeNewKb_prototypingEnvironmentEl, "f"))), h("div", {
219
+ // #data source
220
+ class: "field field-block"
221
+ }, h("label", { class: "label", htmlFor: "dataSource" }, __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabBasic.backEnd.dataSource.label), h("ch-combo-box-render", { class: "combo-box", disabled: this.defaultDataSources.length === 0, placeholder: this.defaultDataSources.length === 0
222
+ ? __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabBasic.backEnd.dataSource
223
+ .disabledPlaceholder
224
+ : "", value: this.defaultDataSourcesInitialValue, ref: (el) => (__classPrivateFieldSet(this, _GxIdeNewKb_dataSourceEl, el, "f")), model: this.defaultDataSourcesComboBoxModel, part: "data-source", id: "dataSource" }), __classPrivateFieldGet(this, _GxIdeNewKb_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _GxIdeNewKb_dataSourceEl, "f"))))),
225
+ h("div", null, h("h2", {
226
+ // front end
227
+ class: "control-header heading-5 text-align-center"
228
+ }, __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabBasic.frontEnd.frontEndLabel), h("div", { class: "field-group front-end", ref: (el) => (__classPrivateFieldSet(this, _GxIdeNewKb_frontEndsEl, el, "f")) }, renderChCheckboxItems(this.frontEnds, "front-end", __classPrivateFieldGet(this, _GxIdeNewKb_handleCheckboxStatusChange, "f"))))
229
+ ];
230
+ });
231
+ // - - - - - - - - - -
232
+ _GxIdeNewKb_cancelKbHandler.set(this, () => {
233
+ if (this.cancelCallback) {
234
+ this.cancelCallback();
235
+ }
236
+ });
237
+ _GxIdeNewKb_createKbHandler.set(this, () => {
238
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
239
+ if (this.createCallback) {
240
+ const createCallbackPromise = this.createCallback({
241
+ authenticationType: (_a = __classPrivateFieldGet(this, _GxIdeNewKb_authenticationTypeEl, "f")) === null || _a === void 0 ? void 0 : _a.value,
242
+ collation: (_b = __classPrivateFieldGet(this, _GxIdeNewKb_collationEl, "f")) === null || _b === void 0 ? void 0 : _b.value,
243
+ createDataFilesInKBFolder: !!((_c = __classPrivateFieldGet(this, _GxIdeNewKb_createDataFilesInKBFolderEl, "f")) === null || _c === void 0 ? void 0 : _c.value),
244
+ dataSource: (_d = __classPrivateFieldGet(this, _GxIdeNewKb_dataSourceEl, "f")) === null || _d === void 0 ? void 0 : _d.value,
245
+ databaseName: (_e = __classPrivateFieldGet(this, _GxIdeNewKb_databaseNameEl, "f")) === null || _e === void 0 ? void 0 : _e.value,
246
+ frontEnds: __classPrivateFieldGet(this, _GxIdeNewKb_selectedFrontEndsIds, "f"),
247
+ kbLocation: (_f = __classPrivateFieldGet(this, _GxIdeNewKb_locationEl, "f")) === null || _f === void 0 ? void 0 : _f.value,
248
+ kbName: (_g = __classPrivateFieldGet(this, _GxIdeNewKb_kbNameEl, "f")) === null || _g === void 0 ? void 0 : _g.value,
249
+ password: (_h = __classPrivateFieldGet(this, _GxIdeNewKb_passwordEl, "f")) === null || _h === void 0 ? void 0 : _h.value,
250
+ prototypingEnvironment: (_j = __classPrivateFieldGet(this, _GxIdeNewKb_prototypingEnvironmentEl, "f")) === null || _j === void 0 ? void 0 : _j.value,
251
+ prototypingTarget: (_k = __classPrivateFieldGet(this, _GxIdeNewKb_prototypingTargetEl, "f")) === null || _k === void 0 ? void 0 : _k.value,
252
+ savePassword: !!((_l = __classPrivateFieldGet(this, _GxIdeNewKb_savePasswordEl, "f")) === null || _l === void 0 ? void 0 : _l.value),
253
+ serverName: (_m = __classPrivateFieldGet(this, _GxIdeNewKb_serverNameEl, "f")) === null || _m === void 0 ? void 0 : _m.value,
254
+ userInterfaceLanguage: (_o = __classPrivateFieldGet(this, _GxIdeNewKb_userInterfaceLanguageEl, "f")) === null || _o === void 0 ? void 0 : _o.value,
255
+ userName: (_p = __classPrivateFieldGet(this, _GxIdeNewKb_userNameEl, "f")) === null || _p === void 0 ? void 0 : _p.value
256
+ });
257
+ createCallbackPromise.then((formSubmitResult) => {
258
+ this.validatableControls = validateControls(formSubmitResult, this.validatableControls);
259
+ });
44
260
  }
45
- else if ((_b = this.serverNames[0]) === null || _b === void 0 ? void 0 : _b.selected) {
261
+ });
262
+ /**
263
+ * Disable "Create Data in Knowledge Base Folder" if the first Server Name
264
+ * option is selected.
265
+ * */
266
+ // eslint-disable-next-line @stencil-community/own-props-must-be-private
267
+ _GxIdeNewKb_evaluateCreateDataCheckboxEnabled.set(this, (serverNameValue) => {
268
+ var _a;
269
+ if (((_a = this.serverNames[0]) === null || _a === void 0 ? void 0 : _a.id) === serverNameValue) {
46
270
  this.createDataInKbDisabled = true;
47
271
  }
48
- };
272
+ else {
273
+ this.createDataInKbDisabled = false;
274
+ }
275
+ });
276
+ _GxIdeNewKb_evaluateTooltipRender.set(this, (controlReference) => {
277
+ var _a, _b, _c;
278
+ return ((_b = (_a = this.validatableControls) === null || _a === void 0 ? void 0 : _a.get(controlReference === null || controlReference === void 0 ? void 0 : controlReference.id)) === null || _b === void 0 ? void 0 : _b.hasError) &&
279
+ ((_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));
280
+ });
49
281
  /**
50
- * @description if "Authentication Type" is "Windows Authentication" then User Name, Password, and Save Password should not be visible.
282
+ * If "Authentication Type" is "Windows Authentication", hide User Name,
283
+ * Password, and Save Password fields.
51
284
  */
52
- this.evaluateAuthenticationType = (e) => {
53
- var _a, _b;
54
- let selectedOption;
55
- if ((_a = this.authenticationTypes) === null || _a === void 0 ? void 0 : _a.length) {
56
- selectedOption =
57
- ((_b = this.authenticationTypes) === null || _b === void 0 ? void 0 : _b.find(item => item.selected)) ||
58
- this.authenticationTypes[0];
59
- }
60
- const conditionA = (e === null || e === void 0 ? void 0 : e.detail) === "windows-authentication";
61
- const conditionB = selectedOption && selectedOption.id === "windows-authentication";
62
- if (conditionA || (conditionB && e === null)) {
285
+ // eslint-disable-next-line @stencil-community/own-props-must-be-private
286
+ _GxIdeNewKb_evaluateUserInputsDisplay.set(this, (authenticationTypeValue) => {
287
+ if (authenticationTypeValue === WINDOWS_AUTHENTICATION_VALUE) {
63
288
  this.userNameVisible = false;
64
289
  this.passwordVisible = false;
65
290
  this.savePasswordVisible = false;
@@ -69,23 +294,112 @@ const GxIdeNewKb = class {
69
294
  this.passwordVisible = true;
70
295
  this.savePasswordVisible = true;
71
296
  }
72
- };
297
+ });
298
+ _GxIdeNewKb_getDataSources.set(this, () => {
299
+ if (this.getDataSourcesCallback) {
300
+ const selectedPrototypingEnvironmentId = __classPrivateFieldGet(this, _GxIdeNewKb_prototypingEnvironmentEl, "f").value;
301
+ const selectedPrototypingTargetId = __classPrivateFieldGet(this, _GxIdeNewKb_prototypingTargetEl, "f").value;
302
+ const updatedDefaultDataSourcesPromise = this.getDataSourcesCallback(selectedPrototypingEnvironmentId, selectedPrototypingTargetId);
303
+ updatedDefaultDataSourcesPromise
304
+ .then(result => {
305
+ if (result.length > 0) {
306
+ this.defaultDataSources = result;
307
+ // set first option as selected
308
+ __classPrivateFieldGet(this, _GxIdeNewKb_dataSourceEl, "f").value = this.defaultDataSources[0].id;
309
+ }
310
+ })
311
+ .catch(() => {
312
+ // to do
313
+ });
314
+ }
315
+ });
316
+ _GxIdeNewKb_initialSetup.set(this, () => {
317
+ __classPrivateFieldGet(this, _GxIdeNewKb_updateSelectedFrontEndsIds, "f").call(this);
318
+ // map all "Basic Tab" GxOption[]'s to ComboBoxModel's
319
+ this.watchDefaultDataSources(this.defaultDataSources);
320
+ this.watchPrototypingEnvironments(this.prototypingEnvironments);
321
+ this.watchPrototypingTargets(this.prototypingTargets);
322
+ this.watchServerNames(this.serverNames);
323
+ this.watchUserInterfaceLanguages(this.userInterfaceLanguages);
324
+ });
325
+ _GxIdeNewKb_initialSetupAdvancedTab.set(this, () => {
326
+ const selectedServerNameValue = __classPrivateFieldGet(this, _GxIdeNewKb_serverNameEl, "f").value;
327
+ __classPrivateFieldGet(this, _GxIdeNewKb_evaluateCreateDataCheckboxEnabled, "f").call(this, selectedServerNameValue);
328
+ const selectedAuthenticationType = __classPrivateFieldGet(this, _GxIdeNewKb_authenticationTypeEl, "f").value;
329
+ __classPrivateFieldGet(this, _GxIdeNewKb_evaluateUserInputsDisplay, "f").call(this, selectedAuthenticationType);
330
+ // map all "Advanced Tab" GxOption[]'s to ComboBoxModel's
331
+ this.watchAuthenticationTypes(this.authenticationTypes);
332
+ this.watchCollations(this.collations);
333
+ });
334
+ _GxIdeNewKb_initializeValidatableControlsBasicTab.set(this, () => {
335
+ // populate #controlsValidation with the controls that could have errors.
336
+ const validatableControls = [
337
+ __classPrivateFieldGet(this, _GxIdeNewKb_dataSourceEl, "f"),
338
+ __classPrivateFieldGet(this, _GxIdeNewKb_kbNameEl, "f"),
339
+ __classPrivateFieldGet(this, _GxIdeNewKb_prototypingEnvironmentEl, "f"),
340
+ __classPrivateFieldGet(this, _GxIdeNewKb_prototypingTargetEl, "f"),
341
+ __classPrivateFieldGet(this, _GxIdeNewKb_userInterfaceLanguageEl, "f")
342
+ ];
343
+ validatableControls.forEach(validatableControl => {
344
+ if (validatableControl.id) {
345
+ this.validatableControls.set(validatableControl.id, {
346
+ reference: validatableControl,
347
+ hasError: false,
348
+ message: undefined
349
+ });
350
+ }
351
+ });
352
+ });
353
+ _GxIdeNewKb_initializeValidatableControlsAdvancedTab.set(this, () => {
354
+ // populate #controlsValidation with the controls that could have errors.
355
+ const validatableControls = [
356
+ __classPrivateFieldGet(this, _GxIdeNewKb_locationEl, "f"),
357
+ __classPrivateFieldGet(this, _GxIdeNewKb_authenticationTypeEl, "f"),
358
+ __classPrivateFieldGet(this, _GxIdeNewKb_createDataFilesInKBFolderEl, "f"),
359
+ __classPrivateFieldGet(this, _GxIdeNewKb_serverNameEl, "f"),
360
+ __classPrivateFieldGet(this, _GxIdeNewKb_authenticationTypeEl, "f"),
361
+ __classPrivateFieldGet(this, _GxIdeNewKb_databaseNameEl, "f"),
362
+ __classPrivateFieldGet(this, _GxIdeNewKb_userNameEl, "f"),
363
+ __classPrivateFieldGet(this, _GxIdeNewKb_collationEl, "f"),
364
+ __classPrivateFieldGet(this, _GxIdeNewKb_passwordEl, "f"),
365
+ __classPrivateFieldGet(this, _GxIdeNewKb_savePasswordEl, "f")
366
+ ];
367
+ validatableControls.forEach(validatableControl => {
368
+ if (validatableControl.id) {
369
+ this.validatableControls.set(validatableControl.id, {
370
+ reference: validatableControl,
371
+ hasError: false,
372
+ message: undefined
373
+ });
374
+ }
375
+ });
376
+ });
73
377
  /**
74
378
  * @description It allows defining the DBMS that will be used in the solution
75
379
  */
76
- this.selectLocationHandler = () => {
380
+ // eslint-disable-next-line @stencil-community/own-props-must-be-private
381
+ _GxIdeNewKb_selectLocationHandler.set(this, () => {
77
382
  this.selectLocationCallback().then(kbLocation => {
78
383
  if (kbLocation) {
79
384
  this.kbLocation = kbLocation;
80
385
  }
81
386
  });
82
- };
387
+ });
388
+ _GxIdeNewKb_tabSelectionChangedHandler.set(this, (event) => {
389
+ if (event.detail.newSelectedId === ADVANCED_TAB_SELECTOR) {
390
+ this.advancedTabIsVisible = true;
391
+ // Some logic for advanced tab is done on componentDidRender lifecycle,
392
+ // since the reference to the elements is needed.
393
+ }
394
+ });
83
395
  /**
84
- * @description it evaluates what front end options need to be updated on 'getFrontEndsCallback', by comparing the new state (getFrontEndsCallback promise result) and the previous state (previousFrontEndsState)
396
+ * Evaluates which front-end options need updates on 'getFrontEndsCallback'
397
+ * by comparing the new state (getFrontEndsCallback result) and previous state.
85
398
  */
86
- this.updateFrontEnds = () => {
399
+ // eslint-disable-next-line @stencil-community/own-props-must-be-private
400
+ _GxIdeNewKb_updateFrontEnds.set(this, () => {
87
401
  if (this.getFrontEndsCallback) {
88
- const selectedPrototypingEnvironmentId = this.prototypingEnvironmentEl.value;
402
+ const selectedPrototypingEnvironmentId = __classPrivateFieldGet(this, _GxIdeNewKb_prototypingEnvironmentEl, "f").value;
89
403
  const updatedFrontEndsPromise = this.getFrontEndsCallback(selectedPrototypingEnvironmentId);
90
404
  updatedFrontEndsPromise
91
405
  .then(newFrontEndsOptions => {
@@ -106,171 +420,198 @@ const GxIdeNewKb = class {
106
420
  // to do
107
421
  });
108
422
  }
109
- };
110
- this.getDataSources = () => {
111
- if (this.getDataSourcesCallback) {
112
- const selectedPrototypingEnvironmentId = this.prototypingEnvironmentEl.value;
113
- const selectedPrototypingTargetId = this.prototypingTargetEl.value;
114
- const updatedDefaultDataSourcesPromise = this.getDataSourcesCallback(selectedPrototypingEnvironmentId, selectedPrototypingTargetId);
115
- updatedDefaultDataSourcesPromise
116
- .then(result => {
117
- if (result.length > 0) {
118
- this.defaultDataSources = result;
119
- // set first option as selected
120
- this.dataSourceEl.value = this.defaultDataSources[0].id;
121
- }
122
- })
123
- .catch(() => {
124
- // to do
125
- });
126
- }
127
- };
128
- this.prototypingEnvironmentValueChangedHandler = () => {
129
- this.getDataSources();
130
- this.updateFrontEnds();
131
- };
132
- this.prototypingTargetValueChangedHandler = () => {
133
- this.getDataSources();
134
- };
135
- this.createKbHandler = () => {
136
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
137
- if (this.createCallback) {
138
- const createCallbackPromise = this.createCallback({
139
- kbName: (_a = this.kbNameEl) === null || _a === void 0 ? void 0 : _a.value,
140
- kbLocation: (_b = this.locationEl) === null || _b === void 0 ? void 0 : _b.value,
141
- prototypingTarget: (_c = this.prototypingTargetEl) === null || _c === void 0 ? void 0 : _c.value,
142
- userInterfaceLanguage: (_d = this.userInterfaceLanguageEl) === null || _d === void 0 ? void 0 : _d.value,
143
- prototypingEnvironment: (_e = this.prototypingEnvironmentEl) === null || _e === void 0 ? void 0 : _e.value,
144
- dataSource: (_f = this.dataSourceEl) === null || _f === void 0 ? void 0 : _f.value,
145
- frontEnds: this.selectedFrontEndsIds,
146
- serverName: (_g = this.serverNameEl) === null || _g === void 0 ? void 0 : _g.value,
147
- databaseName: (_h = this.databaseNameEl) === null || _h === void 0 ? void 0 : _h.value,
148
- collation: (_j = this.collationEl) === null || _j === void 0 ? void 0 : _j.value,
149
- createDataFilesInKBFolder: (_k = this.createDataFilesInKBFolderEl) === null || _k === void 0 ? void 0 : _k.checked,
150
- authenticationType: (_l = this.authenticationTypeEl) === null || _l === void 0 ? void 0 : _l.value,
151
- userName: (_m = this.userNameEl) === null || _m === void 0 ? void 0 : _m.value,
152
- password: (_o = this.passwordEl) === null || _o === void 0 ? void 0 : _o.value,
153
- savePassword: (_p = this.savePasswordEl) === null || _p === void 0 ? void 0 : _p.checked
154
- });
155
- createCallbackPromise.then((formSubmitResult) => {
156
- formSubmitValidation(formSubmitResult, this);
157
- });
158
- }
159
- };
160
- this.cancelKbHandler = () => {
161
- if (this.cancelCallback) {
162
- this.cancelCallback();
163
- }
164
- };
165
- // 10.RENDER() FUNCTION //
166
- this.renderTabBasic = () => {
167
- return (h("gxg-tab", { tab: "basic", "no-padding": true, flexContainer: true, isSelected: !this.isAdvanced }, h("div", { class: "basic-row-first" }, h("div", { class: "basic-row-first__container" }, h("gxg-combo-box", { disableFilter: true, toolTip: config.tooltip, label: this._componentLocale.tabBasic.prototypingTarget.label, value: getSelectedGxOption(this.prototypingTargets), ref: (el) => (this.prototypingTargetEl = el), disabled: this.prototypingTargets.length === 0, placeholder: this.prototypingTargets.length === 0
168
- ? this._componentLocale.tabBasic.prototypingTarget
169
- .disabledPlaceholder
170
- : "", onValueChanged: this.prototypingTargetValueChangedHandler, class: "prototyping-target", part: "prototyping-target" }, renderFormItems("gxg-combo-box-item", this.prototypingTargets, "prototyping-target")), h("gxg-combo-box", { disableFilter: true, toolTip: config.tooltip, label: this._componentLocale.tabBasic.userInterfaceLanguage.label, value: getSelectedGxOption(this.userInterfaceLanguages), placeholder: this.userInterfaceLanguages.length === 0
171
- ? this._componentLocale.tabBasic.userInterfaceLanguage
172
- .disabledPlaceholder
173
- : "", disabled: this.userInterfaceLanguages.length === 0, ref: (el) => (this.userInterfaceLanguageEl = el), class: "user-interface-language", part: "user-interface-language" }, renderFormItems("gxg-combo-box-item", this.userInterfaceLanguages, "user-interface-language")))), h("div", { class: "grid basic-row-second" }, h("gx-ide-container", { containerTitle: this._componentLocale.tabBasic.backEnd.backEndLabel, contentBorderEnd: true, titleType: "secondary" }, h("gxg-combo-box", { disableFilter: true, toolTip: config.tooltip, label: this._componentLocale.tabBasic.backEnd.prototypingEnvironment
174
- .label, value: getSelectedGxOption(this.prototypingEnvironments), placeholder: this.prototypingEnvironments.length === 0
175
- ? this._componentLocale.tabBasic.backEnd
176
- .prototypingEnvironment.disabledPlaceholder
177
- : "", disabled: this.prototypingEnvironments.length === 0, ref: (el) => (this.prototypingEnvironmentEl = el), onValueChanged: this.prototypingEnvironmentValueChangedHandler, class: "prototyping-environment", part: "prototyping-environment" }, renderFormItems("gxg-combo-box-item", this.prototypingEnvironments, "prototyping-environment")), h("gxg-combo-box", { label: this._componentLocale.tabBasic.backEnd.dataSource.label, toolTip: config.tooltip, disableFilter: true, value: getSelectedGxOption(this.defaultDataSources), placeholder: this.defaultDataSources.length === 0
178
- ? this._componentLocale.tabBasic.backEnd.dataSource
179
- .disabledPlaceholder
180
- : "", disabled: this.defaultDataSources.length === 0, ref: (el) => (this.dataSourceEl = el), class: "data-source", part: "data-source" }, renderFormItems("gxg-combo-box-item", this.defaultDataSources, "data-source"))), h("gx-ide-container", { containerTitle: this._componentLocale.tabBasic.frontEnd.frontEndLabel, titleType: "secondary" }, h("gxg-form-checkbox-group", { checkboxesLabelSize: "large", ref: el => (this.frontEndsEl = el), onGroupValuesChanged: this.updateSelectedFrontEndsIds }, renderFormItems("gxg-form-checkbox", this.frontEnds, "front-end"))))));
181
- };
182
- this.renderTabAdvanced = () => {
183
- return (h("gxg-tab", { tab: "advanced", "no-padding": true, flexContainer: true }, h("gx-ide-container", { noContentPadding: true, containerTitle: this._componentLocale.tabAdvanced.tabTitle, titleType: "secondary" }, h("div", { class: "knowledge-base-storage" }, h("div", { class: "knowledge-base-storage__col-left" }, h("gxg-combo-box", { label: this._componentLocale.tabAdvanced.serverName.label, disableFilter: true, toolTip: config.tooltip, value: getSelectedGxOption(this.serverNames), placeholder: this.serverNames.length === 0
184
- ? this._componentLocale.tabAdvanced.serverName
185
- .disabledPlaceholder
186
- : "", disabled: this.serverNames.length === 0, ref: (el) => (this.serverNameEl = el), class: "server-name-combo-box", part: "server-name", onValueChanged: this.evaluateCreateDataInKbDisabled }, renderFormItems("gxg-combo-box-item", this.serverNames, "server-name")), h("gxg-button", { type: "secondary-icon-only", icon: "gemini-tools/search", class: "server-name-button", part: "search-server-name" }), h("gxg-form-text", { labelPosition: "above", label: this._componentLocale.tabAdvanced.databaseName.label, placeholder: "MyDatabase", ref: (el) => (this.databaseNameEl = el), toolTip: config.tooltip, value: this.databaseName, class: "database-name", part: "database-name" }), h("gxg-combo-box", { label: this._componentLocale.tabAdvanced.collation.label, disableFilter: true, toolTip: config.tooltip, value: getSelectedGxOption(this.collations), ref: (el) => (this.collationEl = el), placeholder: this.collations.length === 0
187
- ? this._componentLocale.tabAdvanced.collation
188
- .disabledPlaceholder
189
- : "", disabled: this.serverNames.length === 0, class: "collation-combo-box", part: "collation" }, renderFormItems("gxg-combo-box-item", this.collations, "collation")), h("gxg-button", { type: "secondary-icon-only", icon: "gemini-tools/reset", class: "collation-button", part: "reset-collation" }), h("gxg-form-checkbox", { label: this._componentLocale.tabAdvanced.createDataFilesInKbFolder, ref: (el) => (this.createDataFilesInKBFolderEl =
190
- el), alignTop: true, checked: this.createDataFilesInKBFolder, disabled: this.createDataInKbDisabled, class: "create-data-in-kb", part: "create-data-in-kb" })), h("div", { class: {
191
- "knowledge-base-storage__col-right": true,
192
- "knowledge-base-storage__col-right--windows-authentication": !this.userNameVisible
193
- } }, h("gxg-combo-box", { label: this._componentLocale.tabAdvanced.authenticationType.label, disableFilter: true, toolTip: config.tooltip, value: getSelectedGxOption(this.authenticationTypes), ref: (el) => (this.authenticationTypeEl = el), placeholder: this.authenticationTypes.length === 0
194
- ? this._componentLocale.tabAdvanced.authenticationType
195
- .disabledPlaceholder
196
- : "", disabled: this.authenticationTypes.length === 0, class: "authentication-type", part: "authentication-type", onValueChanged: this.evaluateAuthenticationType }, renderFormItems("gxg-combo-box-item", this.authenticationTypes, "authentication-type")), this.userNameVisible ? (h("gxg-form-text", { labelPosition: "above", toolTip: config.tooltip, label: this._componentLocale.tabAdvanced.userName.label, ref: (el) => (this.userNameEl = el), value: this.userName, class: "user-name", part: "user-name" })) : null, this.passwordVisible ? (h("gxg-form-text", { labelPosition: "above", label: this._componentLocale.tabAdvanced.password.label, password: true, toolTip: config.tooltip, ref: (el) => (this.passwordEl = el), value: this.password, class: "password", part: "password" })) : null, this.savePasswordVisible ? (h("gxg-form-checkbox", { label: this._componentLocale.tabAdvanced.savePassword, ref: (el) => (this.savePasswordEl = el), checked: this.savePassword, class: "save-password", part: "save-password" })) : null)))));
197
- };
423
+ });
424
+ _GxIdeNewKb_updateSelectedFrontEndsIds.set(this, () => {
425
+ __classPrivateFieldSet(this, _GxIdeNewKb_selectedFrontEndsIds, __classPrivateFieldGet(this, _GxIdeNewKb_instances, "m", _GxIdeNewKb_getCheckboxValues).call(this), "f");
426
+ });
427
+ this.advancedTabIsVisible = false;
428
+ this.validatableControls = new Map();
198
429
  this.createDataInKbDisabled = false;
199
430
  this.userNameVisible = true;
200
431
  this.passwordVisible = true;
201
432
  this.savePasswordVisible = true;
202
- this.displayTitle = false;
433
+ this.authenticationTypesComboBoxModel = [];
434
+ this.authenticationTypesInitialValue = undefined;
435
+ this.collationsComboBoxModel = [];
436
+ this.collationsInitialValue = undefined;
437
+ this.defaultDataSourcesComboBoxModel = [];
438
+ this.defaultDataSourcesInitialValue = undefined;
439
+ this.prototypingTargetsComboBoxModel = [];
440
+ this.prototypingTargetsInitialValue = undefined;
441
+ this.prototypingEnvironmentsComboBoxModel = [];
442
+ this.prototypingEnvironmentsInitialValue = undefined;
443
+ this.serverNamesComboBoxModel = [];
444
+ this.serverNamesInitialValue = undefined;
445
+ this.userInterfaceLanguagesComboBoxModel = [];
446
+ this.userInterfaceLanguagesInitialValue = undefined;
447
+ this.authenticationTypes = undefined;
448
+ this.cancelCallback = undefined;
449
+ this.collations = undefined;
450
+ this.createCallback = undefined;
451
+ this.createDataFilesInKBFolder = false;
452
+ this.databaseName = undefined;
203
453
  this.defaultDataSources = undefined;
454
+ this.displayTitle = false;
204
455
  this.frontEnds = undefined;
456
+ this.getDataSourcesCallback = undefined;
457
+ this.getFrontEndsCallback = undefined;
205
458
  this.isAdvanced = false;
206
459
  this.kbLocation = undefined;
207
- this.selectLocationCallback = undefined;
208
460
  this.kbName = undefined;
461
+ this.password = undefined;
209
462
  this.prototypingEnvironments = undefined;
210
463
  this.prototypingTargets = undefined;
211
- this.userInterfaceLanguages = undefined;
212
- this.authenticationTypes = undefined;
213
- this.collations = undefined;
214
- this.createDataFilesInKBFolder = false;
215
- this.databaseName = undefined;
216
- this.password = undefined;
217
464
  this.savePassword = false;
465
+ this.selectLocationCallback = undefined;
218
466
  this.serverNames = undefined;
467
+ this.userInterfaceLanguages = undefined;
219
468
  this.userName = undefined;
220
- this.test = undefined;
221
- this.createCallback = undefined;
222
- this.cancelCallback = undefined;
223
- this.getDataSourcesCallback = undefined;
224
- this.getFrontEndsCallback = undefined;
225
469
  }
226
- // 6.COMPONENT LIFECYCLE METHODS //
470
+ watchAuthenticationTypes(newValue) {
471
+ if (newValue === null || newValue === void 0 ? void 0 : newValue.length) {
472
+ this.authenticationTypesComboBoxModel =
473
+ mapOptionsToComboBoxItemModel(newValue);
474
+ this.authenticationTypesInitialValue = getSelectedItem(newValue);
475
+ }
476
+ }
477
+ watchCollations(newValue) {
478
+ if (newValue === null || newValue === void 0 ? void 0 : newValue.length) {
479
+ this.collationsComboBoxModel = mapOptionsToComboBoxItemModel(newValue);
480
+ this.collationsInitialValue = getSelectedItem(newValue);
481
+ }
482
+ }
483
+ watchDefaultDataSources(newValue) {
484
+ if (newValue === null || newValue === void 0 ? void 0 : newValue.length) {
485
+ this.defaultDataSourcesComboBoxModel =
486
+ mapOptionsToComboBoxItemModel(newValue);
487
+ this.defaultDataSourcesInitialValue = getSelectedItem(newValue);
488
+ }
489
+ }
490
+ watchPrototypingEnvironments(newValue) {
491
+ if (newValue === null || newValue === void 0 ? void 0 : newValue.length) {
492
+ this.prototypingEnvironmentsComboBoxModel =
493
+ mapOptionsToComboBoxItemModel(newValue);
494
+ this.prototypingEnvironmentsInitialValue = getSelectedItem(newValue);
495
+ }
496
+ }
497
+ watchPrototypingTargets(newValue) {
498
+ if (newValue === null || newValue === void 0 ? void 0 : newValue.length) {
499
+ this.prototypingTargetsComboBoxModel =
500
+ mapOptionsToComboBoxItemModel(newValue);
501
+ this.prototypingTargetsInitialValue = getSelectedItem(newValue);
502
+ }
503
+ }
504
+ watchServerNames(newValue) {
505
+ if (newValue === null || newValue === void 0 ? void 0 : newValue.length) {
506
+ this.serverNamesComboBoxModel = mapOptionsToComboBoxItemModel(newValue);
507
+ this.serverNamesInitialValue = getSelectedItem(newValue);
508
+ }
509
+ }
510
+ watchUserInterfaceLanguages(newValue) {
511
+ if (newValue === null || newValue === void 0 ? void 0 : newValue.length) {
512
+ this.userInterfaceLanguagesComboBoxModel =
513
+ mapOptionsToComboBoxItemModel(newValue);
514
+ this.userInterfaceLanguagesInitialValue = getSelectedItem(newValue);
515
+ }
516
+ }
227
517
  async componentWillLoad() {
228
- this._componentLocale = await Locale.getComponentStrings(this.el);
229
- this.evaluateCreateDataInKbDisabled(null);
230
- this.evaluateAuthenticationType(null);
518
+ __classPrivateFieldSet(this, _GxIdeNewKb_componentLocale, await Locale.getComponentStrings(this.el), "f");
231
519
  this.previousFrontEndsState = this.frontEnds;
520
+ __classPrivateFieldSet(this, _GxIdeNewKb_kbSectionsModel, [
521
+ {
522
+ id: BASIC_TAB_SELECTOR,
523
+ name: __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabBasic.tabLabel
524
+ },
525
+ {
526
+ id: ADVANCED_TAB_SELECTOR,
527
+ name: __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").tabAdvanced.tabLabel
528
+ }
529
+ ], "f");
232
530
  }
233
531
  componentDidLoad() {
234
- this.initialSetup();
235
- this.kbNameEl.focus();
532
+ __classPrivateFieldGet(this, _GxIdeNewKb_initialSetup, "f").call(this);
533
+ __classPrivateFieldGet(this, _GxIdeNewKb_initializeValidatableControlsBasicTab, "f").call(this);
236
534
  }
237
535
  componentDidRender() {
238
- if (!this.renderedFirstTime) {
239
- this.componentDidRenderFirstTime.emit(this._componentLocale.componentName);
240
- this.renderedFirstTime = true;
536
+ if (this.advancedTabIsVisible && !__classPrivateFieldGet(this, _GxIdeNewKb_advancedTabHasBeenRendered, "f")) {
537
+ // just call this once.
538
+ __classPrivateFieldGet(this, _GxIdeNewKb_initialSetupAdvancedTab, "f").call(this);
539
+ __classPrivateFieldGet(this, _GxIdeNewKb_initializeValidatableControlsAdvancedTab, "f").call(this);
540
+ __classPrivateFieldSet(this, _GxIdeNewKb_advancedTabHasBeenRendered, true, "f");
241
541
  }
242
542
  }
243
- // 7.LISTENERS //
244
- // 8.PUBLIC METHODS API //
245
543
  /**
246
544
  * Suspends or reactivates the shortcuts
247
545
  */
248
546
  async suspendShortcuts(suspendShortcuts) {
249
547
  if (suspendShortcuts) {
250
- this.gxgShortcutsEl.suspend = true;
548
+ __classPrivateFieldGet(this, _GxIdeNewKb_chShortcutsEl, "f").suspend = true;
251
549
  }
252
550
  else {
253
- this.gxgShortcutsEl.suspend = false;
551
+ __classPrivateFieldGet(this, _GxIdeNewKb_chShortcutsEl, "f").suspend = false;
254
552
  }
255
553
  }
256
- /** *****************************
257
- * 11.RENDER() FUNCTION
258
- ********************************/
259
554
  render() {
260
- return (h(Host, { class: "gx-ide-component" }, h("div", { class: "gx-ide-main-wrapper" }, h("gx-ide-container", { noContentPadding: true, slimmerFooter: config.gxIdeContainer.slimmerFooter, containerTitle: this.displayTitle ? this._componentLocale.componentName : null }, h("header", { class: {
555
+ return (h(Host, { class: "widget" }, h("ch-theme", { model: CSS_BUNDLES }), h("ch-shortcuts", { src: __classPrivateFieldGet(this, _GxIdeNewKb_shortcutsSrc, "f"), ref: (el) => (__classPrivateFieldSet(this, _GxIdeNewKb_chShortcutsEl, el, "f")) }), h("section", { class: "section" }, h("header", { class: {
556
+ "field-group": true,
557
+ "control-header-with-border": !this.isAdvanced,
558
+ "control-header": this.isAdvanced,
261
559
  "header": true,
262
- "grid": true,
263
- "header--is-advanced": this.isAdvanced
264
- }, slot: "header" }, h("gxg-label", { labelPosition: "start", class: "kb-label", noMargin: true }, this._componentLocale.header.kbName), h("gxg-form-text", { labelPosition: "start", placeholder: "SalesInventory", "max-width": "100%", value: this.kbName, toolTip: config.tooltip, ref: (el) => (this.kbNameEl = el), part: "kb-name", class: "kb-input" }), this.isAdvanced
265
- ? [
266
- h("gxg-label", { labelPosition: "start", class: "location-label" }, this._componentLocale.header.kbLocation),
267
- h("gxg-form-text", { labelPosition: "start", placeholder: "C:\\Models", maxWidth: "100%", value: this.kbLocation, ref: (el) => (this.locationEl = el), disabled: !this.isAdvanced, part: "kb-location", class: "location-input" }),
268
- h("gxg-button", { type: "secondary-icon-only", icon: "gemini-tools/folder", onClick: this.selectLocationHandler, part: "button-select-location", class: "location-icon" })
269
- ]
270
- : null), h("main", { class: "gxi-full-height" }, h("gxg-tabs", { class: "gxg-tabs", noBorder: true }, this.isAdvanced ? (h("gxg-tab-bar", { slot: "tab-bar-container", part: "tab-bar", displayBorder: true }, h("gxg-tab-button", { slot: "tab-bar", tabLabel: this._componentLocale.tabBasic.tabLabel, tab: "basic", "is-selected": true, hidden: !this.isAdvanced, part: "tab-button-basic" }), h("gxg-tab-button", { slot: "tab-bar", tabLabel: this._componentLocale.tabAdvanced.tabLabel, tab: "advanced", hidden: !this.isAdvanced, part: "tab-button-advanced" }))) : null, this.renderTabBasic(), this.isAdvanced && this.renderTabAdvanced())), h("gxg-button", { id: "button-cancel", type: "outlined", onClick: this.cancelKbHandler, part: "button-cancel", slot: "footer-end" }, this._componentLocale.footer.btnCancel), h("gxg-button", { id: "button-create", type: "primary-text-only", onClick: this.createKbHandler, part: "button-create", slot: "footer-end" }, this._componentLocale.footer.btnCreate))), h("gxg-shortcuts", { src: this.shortcutsSrc, ref: (el) => (this.gxgShortcutsEl = el) })));
560
+ "header-two-cols": this.isAdvanced,
561
+ "header-one-col": !this.isAdvanced,
562
+ "spacing-body-block-start": true,
563
+ "spacing-body-inline": true
564
+ } }, h("div", {
565
+ // #kb name
566
+ class: "field field-inline kb-name"
567
+ }, h("label", { class: "label kb-label", htmlFor: "kbName" }, __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").header.kbName), h("ch-edit", {
568
+ // TODO add placeholder
569
+ autoFocus: true, class: "form-input kb-input", placeholder: "SalesInventory", value: this.kbName, ref: (el) => (__classPrivateFieldSet(this, _GxIdeNewKb_kbNameEl, el, "f")), id: "kbName", part: "kb-name"
570
+ }), __classPrivateFieldGet(this, _GxIdeNewKb_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _GxIdeNewKb_kbNameEl, "f"))), this.isAdvanced && (h("div", { class: "location-wrapper" }, h("div", {
571
+ // #location
572
+ class: "field field-inline location"
573
+ }, h("label", { class: "label location-label", htmlFor: "kbLocation" }, __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").header.kbLocation), h("ch-edit", {
574
+ // TODO add placeholder
575
+ class: "form-input location-input", value: this.kbLocation, ref: (el) => (__classPrivateFieldSet(this, _GxIdeNewKb_locationEl, el, "f")), id: "kbLocation", part: "kb-location"
576
+ }), __classPrivateFieldGet(this, _GxIdeNewKb_evaluateTooltipRender, "f").call(this, __classPrivateFieldGet(this, _GxIdeNewKb_locationEl, "f"))), h("button", { class: "button-tertiary button-icon-only location-icon", "aria-label": __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").header.selectLocationButton, title: __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").header.selectLocationButton, part: "button-select-location", onClick: __classPrivateFieldGet(this, _GxIdeNewKb_selectLocationHandler, "f") }, h("ch-image", { class: "icon-md", src: SYSTEM_ICON }))))), this.isAdvanced ? (h("ch-tab-render", {
577
+ // #tab
578
+ class: {
579
+ scrollable: true,
580
+ tab: true,
581
+ [MAIN_SECTION_CLASSES]: true
582
+ }, direction: "block", model: __classPrivateFieldGet(this, _GxIdeNewKb_kbSectionsModel, "f"), selectedId: BASIC_TAB_SELECTOR, overflow: "auto scroll", contain: "size", onSelectedItemChange: !this.advancedTabIsVisible && __classPrivateFieldGet(this, _GxIdeNewKb_tabSelectionChangedHandler, "f")
583
+ }, h("div", { slot: BASIC_TAB_SELECTOR, class: BASIC_SECTION_PARENT_CLASSES, part: "tab-button-basic" }, __classPrivateFieldGet(this, _GxIdeNewKb_renderBasic, "f").call(this)), this.advancedTabIsVisible && (h("div", { slot: ADVANCED_TAB_SELECTOR, class: "advanced spacing-body-inline", part: "tab-button-advanced" }, __classPrivateFieldGet(this, _GxIdeNewKb_renderAdvanced, "f").call(this))))) : (h("div", { class: MAIN_SECTION_CLASSES }, h("div", { class: BASIC_SECTION_PARENT_CLASSES }, __classPrivateFieldGet(this, _GxIdeNewKb_renderBasic, "f").call(this)))), h("footer", { class: {
584
+ "control-footer": this.isAdvanced,
585
+ "control-footer-with-border": !this.isAdvanced,
586
+ "spacing-body-block-end": true,
587
+ "spacing-body-inline": true
588
+ } }, h("div", { class: "buttons-spacer" }, h("button", {
589
+ // #cancel
590
+ class: "button-secondary", id: "button-cancel", onClick: __classPrivateFieldGet(this, _GxIdeNewKb_cancelKbHandler, "f"), part: "button-cancel"
591
+ }, __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").footer.btnCancel), h("button", {
592
+ // #create
593
+ class: "button-primary", id: "button-create", onClick: __classPrivateFieldGet(this, _GxIdeNewKb_createKbHandler, "f"), part: "button-create"
594
+ }, __classPrivateFieldGet(this, _GxIdeNewKb_componentLocale, "f").footer.btnCreate))))));
271
595
  }
272
596
  static get assetsDirs() { return ["gx-ide-assets/new-kb"]; }
273
597
  get el() { return getElement(this); }
598
+ static get watchers() { return {
599
+ "authenticationTypes": ["watchAuthenticationTypes"],
600
+ "collations": ["watchCollations"],
601
+ "defaultDataSources": ["watchDefaultDataSources"],
602
+ "prototypingEnvironments": ["watchPrototypingEnvironments"],
603
+ "prototypingTargets": ["watchPrototypingTargets"],
604
+ "serverNames": ["watchServerNames"],
605
+ "userInterfaceLanguages": ["watchUserInterfaceLanguages"]
606
+ }; }
607
+ };
608
+ _GxIdeNewKb_advancedTabHasBeenRendered = new WeakMap(), _GxIdeNewKb_componentLocale = new WeakMap(), _GxIdeNewKb_selectedFrontEndsIds = new WeakMap(), _GxIdeNewKb_shortcutsSrc = new WeakMap(), _GxIdeNewKb_kbSectionsModel = new WeakMap(), _GxIdeNewKb_authenticationTypeEl = new WeakMap(), _GxIdeNewKb_collationEl = new WeakMap(), _GxIdeNewKb_createDataFilesInKBFolderEl = new WeakMap(), _GxIdeNewKb_databaseNameEl = new WeakMap(), _GxIdeNewKb_dataSourceEl = new WeakMap(), _GxIdeNewKb_frontEndsEl = new WeakMap(), _GxIdeNewKb_kbNameEl = new WeakMap(), _GxIdeNewKb_locationEl = new WeakMap(), _GxIdeNewKb_passwordEl = new WeakMap(), _GxIdeNewKb_prototypingEnvironmentEl = new WeakMap(), _GxIdeNewKb_prototypingTargetEl = new WeakMap(), _GxIdeNewKb_savePasswordEl = new WeakMap(), _GxIdeNewKb_serverNameEl = new WeakMap(), _GxIdeNewKb_userInterfaceLanguageEl = new WeakMap(), _GxIdeNewKb_userNameEl = new WeakMap(), _GxIdeNewKb_chShortcutsEl = new WeakMap(), _GxIdeNewKb_handleCheckboxStatusChange = new WeakMap(), _GxIdeNewKb_handlerAuthenticationTypeInput = new WeakMap(), _GxIdeNewKb_handlerServerNameInput = new WeakMap(), _GxIdeNewKb_prototypingEnvironmentValueChangedHandler = new WeakMap(), _GxIdeNewKb_prototypingTargetValueChangedHandler = new WeakMap(), _GxIdeNewKb_renderAdvanced = new WeakMap(), _GxIdeNewKb_renderBasic = new WeakMap(), _GxIdeNewKb_cancelKbHandler = new WeakMap(), _GxIdeNewKb_createKbHandler = new WeakMap(), _GxIdeNewKb_evaluateCreateDataCheckboxEnabled = new WeakMap(), _GxIdeNewKb_evaluateTooltipRender = new WeakMap(), _GxIdeNewKb_evaluateUserInputsDisplay = new WeakMap(), _GxIdeNewKb_getDataSources = new WeakMap(), _GxIdeNewKb_initialSetup = new WeakMap(), _GxIdeNewKb_initialSetupAdvancedTab = new WeakMap(), _GxIdeNewKb_initializeValidatableControlsBasicTab = new WeakMap(), _GxIdeNewKb_initializeValidatableControlsAdvancedTab = new WeakMap(), _GxIdeNewKb_selectLocationHandler = new WeakMap(), _GxIdeNewKb_tabSelectionChangedHandler = new WeakMap(), _GxIdeNewKb_updateFrontEnds = new WeakMap(), _GxIdeNewKb_updateSelectedFrontEndsIds = new WeakMap(), _GxIdeNewKb_instances = new WeakSet(), _GxIdeNewKb_getCheckboxValues = function _GxIdeNewKb_getCheckboxValues() {
609
+ // TODO (We shouldn't be using querySelector)
610
+ const checkboxes = __classPrivateFieldGet(this, _GxIdeNewKb_frontEndsEl, "f").querySelectorAll("ch-checkbox");
611
+ const values = Array.from(checkboxes)
612
+ .map((checkbox) => checkbox.value)
613
+ .filter(Boolean);
614
+ return values;
274
615
  };
275
616
  GxIdeNewKb.style = newKbCss;
276
617