@genexus/genexus-ide-ui 0.0.112 → 0.0.113
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.
- package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
- package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-card.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-card.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-data-selector.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-data-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-edit-module-server.cjs.entry.js +3 -2
- package/dist/cjs/gx-ide-edit-module-server.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js +17 -28
- package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-import-from-design.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-import-from-design.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js +2 -2
- package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js +6 -4
- package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-new-environment.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-new-environment.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-new-kb.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-new-kb.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-new-object.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-new-object.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-object-selector.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-object-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-recent-news.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-recent-news.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-references.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-references.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-share-kb.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-share-kb.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-start-page.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-start-page.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-status-buttons.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-status-buttons.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-template.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-template.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-ww-images.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-ww-images.cjs.entry.js.map +1 -1
- package/dist/cjs/gxg-buttons-container_2.cjs.entry.js +11 -20
- package/dist/cjs/gxg-buttons-container_2.cjs.entry.js.map +1 -1
- package/dist/cjs/gxg-ide-loader.cjs.entry.js +1 -1
- package/dist/cjs/gxg-ide-loader.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/_helpers/card/card.css +4 -0
- package/dist/collection/components/_helpers/list-selector/list-selector-item/list-selector-item.js +1 -1
- package/dist/collection/components/_helpers/list-selector/list-selector-item/list-selector-item.js.map +1 -1
- package/dist/collection/components/_helpers/list-selector/list-selector.css +4 -0
- package/dist/collection/components/_helpers/status-buttons/gx-ide-status-buttons.css +0 -1
- package/dist/collection/components/_starting-template/template.css +4 -0
- package/dist/collection/components/ai-assistant/ai-assistant.css +4 -0
- package/dist/collection/components/bpm-application-declaration/bpm-app-declaration.css +4 -0
- package/dist/collection/components/create-kb-from-server/create-kb-from-server.css +4 -0
- package/dist/collection/components/dashboard-home/dashboard-home.css +4 -0
- package/dist/collection/components/data-selector/data-selector.css +4 -0
- package/dist/collection/components/gam-installation-settings/gam-installation-settings.css +36 -3
- package/dist/collection/components/gam-installation-settings/gam-installation-settings.js +16 -27
- package/dist/collection/components/gam-installation-settings/gam-installation-settings.js.map +1 -1
- package/dist/collection/components/gam-installation-settings/gx-ide-assets/gam-installation-settings/langs/gam-installation-settings.lang.en.json +7 -1
- package/dist/collection/components/import-from-design/import-from-design.css +4 -0
- package/dist/collection/components/kb-manager-export/kb-manager-export.css +4 -0
- package/dist/collection/components/kb-manager-import/kb-manager-import.css +4 -0
- package/dist/collection/components/modules/edit-module-server/edit-module-server.css +4 -0
- package/dist/collection/components/modules/edit-module-server/edit-module-server.js +19 -1
- package/dist/collection/components/modules/edit-module-server/edit-module-server.js.map +1 -1
- package/dist/collection/components/modules/manage-module-references/gx-ide-assets/manage-module-references/langs/manage-module-references.lang.en.json +1 -1
- package/dist/collection/components/modules/manage-module-references/manage-module-references.css +8 -0
- package/dist/collection/components/modules/manage-module-references/manage-module-references.js +5 -3
- package/dist/collection/components/modules/manage-module-references/manage-module-references.js.map +1 -1
- package/dist/collection/components/new-environment/new-environment.css +4 -0
- package/dist/collection/components/new-kb/new-kb.css +4 -0
- package/dist/collection/components/new-object/new-object.css +4 -0
- package/dist/collection/components/object-selector/object-selector.css +4 -0
- package/dist/collection/components/references/references.css +4 -0
- package/dist/collection/components/share-kb/share-kb.css +4 -0
- package/dist/collection/components/start-page/recent-news.css +4 -0
- package/dist/collection/components/start-page/start-page.css +4 -0
- package/dist/collection/components/team-dev/commit/commit.css +4 -0
- package/dist/collection/components/team-dev/select-recent-comment/select-recent-comment.css +4 -0
- package/dist/collection/components/team-dev/update/update.css +4 -0
- package/dist/collection/components/team-dev/update-partial-selection/update-partial-selection.css +4 -0
- package/dist/collection/components/team-dev/update-to-revision/update-to-revision.css +4 -0
- package/dist/collection/components/ww-images/ww-images.css +4 -0
- package/dist/components/gx-ide-ai-assistant.js +1 -1
- package/dist/components/gx-ide-ai-assistant.js.map +1 -1
- package/dist/components/gx-ide-bpm-app-declaration.js +1 -1
- package/dist/components/gx-ide-bpm-app-declaration.js.map +1 -1
- package/dist/components/gx-ide-card.js +1 -1
- package/dist/components/gx-ide-card.js.map +1 -1
- package/dist/components/gx-ide-create-kb-from-server.js +1 -1
- package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
- package/dist/components/gx-ide-dashboard-home.js +1 -1
- package/dist/components/gx-ide-dashboard-home.js.map +1 -1
- package/dist/components/gx-ide-data-selector.js +1 -1
- package/dist/components/gx-ide-data-selector.js.map +1 -1
- package/dist/components/gx-ide-edit-module-server.js +4 -2
- package/dist/components/gx-ide-edit-module-server.js.map +1 -1
- package/dist/components/gx-ide-gam-installation-settings.js +17 -28
- package/dist/components/gx-ide-gam-installation-settings.js.map +1 -1
- package/dist/components/gx-ide-import-from-design.js +1 -1
- package/dist/components/gx-ide-import-from-design.js.map +1 -1
- package/dist/components/gx-ide-kb-manager-export.js +1 -1
- package/dist/components/gx-ide-kb-manager-export.js.map +1 -1
- package/dist/components/gx-ide-kb-manager-import.js +1 -1
- package/dist/components/gx-ide-kb-manager-import.js.map +1 -1
- package/dist/components/gx-ide-manage-module-references.js +6 -4
- package/dist/components/gx-ide-manage-module-references.js.map +1 -1
- package/dist/components/gx-ide-new-environment.js +1 -1
- package/dist/components/gx-ide-new-environment.js.map +1 -1
- package/dist/components/gx-ide-new-kb.js +1 -1
- package/dist/components/gx-ide-new-kb.js.map +1 -1
- package/dist/components/gx-ide-new-object.js +1 -1
- package/dist/components/gx-ide-new-object.js.map +1 -1
- package/dist/components/gx-ide-object-selector.js +1 -1
- package/dist/components/gx-ide-object-selector.js.map +1 -1
- package/dist/components/gx-ide-references.js +1 -1
- package/dist/components/gx-ide-references.js.map +1 -1
- package/dist/components/gx-ide-share-kb.js +1 -1
- package/dist/components/gx-ide-share-kb.js.map +1 -1
- package/dist/components/gx-ide-start-page.js +1 -1
- package/dist/components/gx-ide-start-page.js.map +1 -1
- package/dist/components/gx-ide-status-buttons2.js +1 -1
- package/dist/components/gx-ide-status-buttons2.js.map +1 -1
- package/dist/components/gx-ide-team-dev-commit.js +1 -1
- package/dist/components/gx-ide-team-dev-commit.js.map +1 -1
- package/dist/components/gx-ide-team-dev-select-recent-comment.js +1 -1
- package/dist/components/gx-ide-team-dev-select-recent-comment.js.map +1 -1
- package/dist/components/gx-ide-team-dev-update-partial-selection.js +1 -1
- package/dist/components/gx-ide-team-dev-update-partial-selection.js.map +1 -1
- package/dist/components/gx-ide-team-dev-update-to-revision.js +1 -1
- package/dist/components/gx-ide-team-dev-update-to-revision.js.map +1 -1
- package/dist/components/gx-ide-team-dev-update.js +1 -1
- package/dist/components/gx-ide-team-dev-update.js.map +1 -1
- package/dist/components/gx-ide-template.js +1 -1
- package/dist/components/gx-ide-template.js.map +1 -1
- package/dist/components/gx-ide-ww-images.js +1 -1
- package/dist/components/gx-ide-ww-images.js.map +1 -1
- package/dist/components/gxg-top-state-bar2.js +12 -23
- package/dist/components/gxg-top-state-bar2.js.map +1 -1
- package/dist/components/ide-loader.js +1 -1
- package/dist/components/ide-loader.js.map +1 -1
- package/dist/components/list-selector-item.js +1 -1
- package/dist/components/list-selector-item.js.map +1 -1
- package/dist/components/list-selector.js +1 -1
- package/dist/components/list-selector.js.map +1 -1
- package/dist/components/recent-news.js +1 -1
- package/dist/components/recent-news.js.map +1 -1
- package/dist/esm/genexus-ide-ui.js +1 -1
- package/dist/esm/gx-ide-ai-assistant.entry.js +1 -1
- package/dist/esm/gx-ide-ai-assistant.entry.js.map +1 -1
- package/dist/esm/gx-ide-bpm-app-declaration.entry.js +1 -1
- package/dist/esm/gx-ide-bpm-app-declaration.entry.js.map +1 -1
- package/dist/esm/gx-ide-card.entry.js +1 -1
- package/dist/esm/gx-ide-card.entry.js.map +1 -1
- package/dist/esm/gx-ide-create-kb-from-server.entry.js +1 -1
- package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
- package/dist/esm/gx-ide-dashboard-home.entry.js +1 -1
- package/dist/esm/gx-ide-dashboard-home.entry.js.map +1 -1
- package/dist/esm/gx-ide-data-selector.entry.js +1 -1
- package/dist/esm/gx-ide-data-selector.entry.js.map +1 -1
- package/dist/esm/gx-ide-edit-module-server.entry.js +3 -2
- package/dist/esm/gx-ide-edit-module-server.entry.js.map +1 -1
- package/dist/esm/gx-ide-gam-installation-settings.entry.js +17 -28
- package/dist/esm/gx-ide-gam-installation-settings.entry.js.map +1 -1
- package/dist/esm/gx-ide-import-from-design.entry.js +1 -1
- package/dist/esm/gx-ide-import-from-design.entry.js.map +1 -1
- package/dist/esm/gx-ide-kb-manager-export.entry.js +1 -1
- package/dist/esm/gx-ide-kb-manager-export.entry.js.map +1 -1
- package/dist/esm/gx-ide-kb-manager-import.entry.js +1 -1
- package/dist/esm/gx-ide-kb-manager-import.entry.js.map +1 -1
- package/dist/esm/gx-ide-list-selector_2.entry.js +2 -2
- package/dist/esm/gx-ide-list-selector_2.entry.js.map +1 -1
- package/dist/esm/gx-ide-manage-module-references.entry.js +6 -4
- package/dist/esm/gx-ide-manage-module-references.entry.js.map +1 -1
- package/dist/esm/gx-ide-new-environment.entry.js +1 -1
- package/dist/esm/gx-ide-new-environment.entry.js.map +1 -1
- package/dist/esm/gx-ide-new-kb.entry.js +1 -1
- package/dist/esm/gx-ide-new-kb.entry.js.map +1 -1
- package/dist/esm/gx-ide-new-object.entry.js +1 -1
- package/dist/esm/gx-ide-new-object.entry.js.map +1 -1
- package/dist/esm/gx-ide-object-selector.entry.js +1 -1
- package/dist/esm/gx-ide-object-selector.entry.js.map +1 -1
- package/dist/esm/gx-ide-recent-news.entry.js +1 -1
- package/dist/esm/gx-ide-recent-news.entry.js.map +1 -1
- package/dist/esm/gx-ide-references.entry.js +1 -1
- package/dist/esm/gx-ide-references.entry.js.map +1 -1
- package/dist/esm/gx-ide-share-kb.entry.js +1 -1
- package/dist/esm/gx-ide-share-kb.entry.js.map +1 -1
- package/dist/esm/gx-ide-start-page.entry.js +1 -1
- package/dist/esm/gx-ide-start-page.entry.js.map +1 -1
- package/dist/esm/gx-ide-status-buttons.entry.js +1 -1
- package/dist/esm/gx-ide-status-buttons.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-commit.entry.js +1 -1
- package/dist/esm/gx-ide-team-dev-commit.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +1 -1
- package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +1 -1
- package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +1 -1
- package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-update.entry.js +1 -1
- package/dist/esm/gx-ide-team-dev-update.entry.js.map +1 -1
- package/dist/esm/gx-ide-template.entry.js +1 -1
- package/dist/esm/gx-ide-template.entry.js.map +1 -1
- package/dist/esm/gx-ide-ww-images.entry.js +1 -1
- package/dist/esm/gx-ide-ww-images.entry.js.map +1 -1
- package/dist/esm/gxg-buttons-container_2.entry.js +11 -20
- package/dist/esm/gxg-buttons-container_2.entry.js.map +1 -1
- package/dist/esm/gxg-ide-loader.entry.js +1 -1
- package/dist/esm/gxg-ide-loader.entry.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/gam-installation-settings/langs/gam-installation-settings.lang.en.json +7 -1
- package/dist/genexus-ide-ui/gx-ide-assets/manage-module-references/langs/manage-module-references.lang.en.json +1 -1
- package/dist/genexus-ide-ui/{p-a3dea97e.entry.js → p-096cf817.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-f91c432e.entry.js → p-0d1cf3ee.entry.js} +7 -4
- package/dist/genexus-ide-ui/p-0d1cf3ee.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-033b498a.entry.js → p-0fd26289.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-6fdb5c12.entry.js → p-11d2e597.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-51e86542.entry.js → p-259c12b9.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-c9cceb40.entry.js → p-2e571548.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-decf86d4.entry.js → p-3111e5e9.entry.js} +2 -2
- package/dist/genexus-ide-ui/p-3111e5e9.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-bc04fcaa.entry.js → p-3ae0ce60.entry.js} +2 -2
- package/dist/genexus-ide-ui/p-3ae0ce60.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-85d71611.entry.js → p-5dd1b9ab.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-b2099890.entry.js → p-6719090c.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-bfa24a92.entry.js → p-6cb14be6.entry.js} +11 -11
- package/dist/genexus-ide-ui/{p-e3e704fb.entry.js → p-7ed89885.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-d26c67f3.entry.js → p-824b50eb.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-3d7a2553.entry.js → p-84c20e24.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-713ad05d.entry.js → p-8902fcf3.entry.js} +7 -5
- package/dist/genexus-ide-ui/p-8902fcf3.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-40c6edbf.entry.js → p-8a27e8df.entry.js} +8 -8
- package/dist/genexus-ide-ui/{p-b4e526d6.entry.js → p-8eb7131d.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-84934392.entry.js → p-8fb3e5b3.entry.js} +54 -48
- package/dist/genexus-ide-ui/p-8fb3e5b3.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-5fe20f47.entry.js → p-9cc3600f.entry.js} +17 -28
- package/dist/genexus-ide-ui/p-9cc3600f.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-d3cc2f33.entry.js → p-a7e13b00.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-0df39b62.entry.js → p-a80f163a.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-292fb84f.entry.js → p-b13cafbf.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-87db4bb0.entry.js → p-b4294776.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-26527723.entry.js → p-b7ad27fe.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-27d0fcde.entry.js → p-bd9cbfaf.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-27d0fcde.entry.js.map → p-bd9cbfaf.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-a14ff83c.entry.js → p-ca3f470e.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-d5903356.entry.js → p-d3610b68.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-a7f6d8d4.entry.js → p-da209fe0.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-aa1e320b.entry.js → p-f067657f.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-df72101e.entry.js → p-f08a5cbf.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-c47ea5ff.entry.js → p-f35bc31e.entry.js} +2 -2
- package/dist/types/components/modules/edit-module-server/edit-module-server.d.ts +4 -0
- package/dist/types/components.d.ts +8 -0
- package/package.json +3 -3
- package/dist/genexus-ide-ui/p-5fe20f47.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-713ad05d.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-84934392.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-bc04fcaa.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-decf86d4.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-f91c432e.entry.js.map +0 -1
- /package/dist/genexus-ide-ui/{p-a3dea97e.entry.js.map → p-096cf817.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-033b498a.entry.js.map → p-0fd26289.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-6fdb5c12.entry.js.map → p-11d2e597.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-51e86542.entry.js.map → p-259c12b9.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-c9cceb40.entry.js.map → p-2e571548.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-85d71611.entry.js.map → p-5dd1b9ab.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-b2099890.entry.js.map → p-6719090c.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-bfa24a92.entry.js.map → p-6cb14be6.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-e3e704fb.entry.js.map → p-7ed89885.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-d26c67f3.entry.js.map → p-824b50eb.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-3d7a2553.entry.js.map → p-84c20e24.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-40c6edbf.entry.js.map → p-8a27e8df.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-b4e526d6.entry.js.map → p-8eb7131d.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-d3cc2f33.entry.js.map → p-a7e13b00.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-0df39b62.entry.js.map → p-a80f163a.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-292fb84f.entry.js.map → p-b13cafbf.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-87db4bb0.entry.js.map → p-b4294776.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-26527723.entry.js.map → p-b7ad27fe.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-a14ff83c.entry.js.map → p-ca3f470e.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-d5903356.entry.js.map → p-d3610b68.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-a7f6d8d4.entry.js.map → p-da209fe0.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-aa1e320b.entry.js.map → p-f067657f.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-df72101e.entry.js.map → p-f08a5cbf.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-c47ea5ff.entry.js.map → p-f35bc31e.entry.js.map} +0 -0
|
@@ -4,7 +4,7 @@ import { c as config } from './config-a492e15e.js';
|
|
|
4
4
|
import { g as getSelectedGxOption, r as renderFormItems } from './common-aaad5759.js';
|
|
5
5
|
import { f as formSubmitValidation } from './form-validation-39376dc8.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)}.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-container{display:flex;height:100%;width:100%;box-sizing:border-box}: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
|
+
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)}.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-container{display:flex;height:100%;width:100%;box-sizing:border-box}p{margin:0}: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\"}";
|
|
8
8
|
|
|
9
9
|
const GxIdeNewKb = class {
|
|
10
10
|
constructor(hostRef) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"gx-ide-new-kb.entry.js","mappings":"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","names":[],"sources":["src/components/new-kb/new-kb.scss?tag=gx-ide-new-kb&encapsulation=shadow","src/components/new-kb/new-kb.tsx"],"sourcesContent":["@import \"../../global/gx-ide-common.scss\";\n@import \"../../global/gx-ide-mixins.scss\";\n\n:host {\n display: block;\n border: 1px solid var(--gxg-border-color--regular);\n background-color: var(--mer-color__surface);\n}\n:host(.gxi-new-kb--shadow) {\n}\n/*HEADER*/\n.header {\n grid-template-columns: auto 1fr;\n grid-template-areas: \"kb-name-label kb-input\";\n &--is-advanced {\n grid-template-columns: auto 1fr min-content;\n grid-template-areas:\n \"kb-name-label kb-input .\"\n \"location-label location-input location-icon\";\n }\n .kb-input {\n grid-area: kb-input;\n }\n .kb-name-label {\n grid-area: kb-label;\n }\n .location-label {\n grid-area: location-label;\n }\n .location-input {\n grid-area: location-input;\n }\n .location-icon {\n grid-area: location-icon;\n }\n}\n/*GXG-TABS*/\n.gxg-tabs {\n margin-top: 0;\n box-shadow: none;\n}\n/*Basic*/\n.basic-row-first {\n container-name: basic-row-first;\n // container-type: inline-size; /*Esto queda comentado hasta que no se resuelva el problema del popover con Safari.*/\n &__container {\n display: grid;\n gap: var(--gx-ide-grid-column-gap);\n padding: var(--gx-ide-container__padding);\n border-bottom: 1px solid var(--gx-ide-container-border-color);\n grid-template-columns: repeat(2, 1fr);\n }\n /*Esto queda comentado hasta que no se resuelva el problema del popover con Safari.*/\n // @include containerQuerySm() {\n // .basic-row-first__container {\n // grid-template-columns: 1fr;\n // }\n // }\n}\n\n.basic-row-second {\n grid-template-columns: repeat(2, 1fr);\n grid-column-gap: 0;\n grid-row-gap: 0;\n flex-grow: 1;\n}\n/*Advanced*/\n.knowledge-base-storage {\n display: grid;\n grid-template-areas: \"knowledge-base-storage__col-left knowledge-base-storage__col-right\";\n grid-template-columns: repeat(2, 1fr);\n flex-grow: 1;\n gap: 0;\n > *:first-child {\n border-right: 1px solid var(--gx-ide-container-border-color);\n }\n &__col-left {\n display: grid;\n gap: var(--gx-ide-grid-row-gap);\n padding: var(--gx-ide-container__padding);\n grid-area: knowledge-base-storage__col-left;\n grid-template-columns: 1fr auto;\n grid-template-rows: repeat(4, min-content);\n grid-template-areas:\n \"server-name-combo-box server-name-button\"\n \"database-name .\"\n \"collation-combo-box collation-button\"\n \"create-data-in-kb .\";\n\n .server-name-combo-box {\n grid-area: server-name-combo-box;\n }\n .server-name-button {\n grid-area: server-name-button;\n align-self: end;\n }\n .database-name {\n grid-area: database-name;\n }\n .collation-combo-box {\n grid-area: collation-combo-box;\n }\n .collation-button {\n grid-area: collation-button;\n align-self: end;\n }\n .create-data-in-kb {\n grid-area: create-data-in-kb;\n }\n }\n &__col-right {\n display: grid;\n padding: var(--gx-ide-container__padding);\n gap: var(--gx-ide-grid-row-gap);\n grid-area: knowledge-base-storage__col-right;\n grid-template-columns: 1fr;\n grid-template-rows: repeat(4, min-content);\n grid-template-areas:\n \"authentication-type\"\n \"user-name\"\n \"password\"\n \"save-password\";\n .authentication-type {\n grid-area: authentication-type;\n }\n .user-name {\n grid-area: user-name;\n }\n .password {\n grid-area: password;\n }\n .save-password {\n grid-area: save-password;\n }\n &--windows-authentication {\n grid-template-areas: \"authentication-type\";\n }\n }\n}\n","/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Event,\n EventEmitter,\n Element,\n State,\n getAssetPath,\n Method\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\nimport { ComboBoxItemValue } from \"@genexus/gemini/dist/types/components/combo-box-item/combo-box-item\";\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../common/locale\";\nimport { config } from \"../../common/config\";\nimport { GxOption } from \"../../common/types\";\nimport { renderFormItems, getSelectedGxOption } from \"../../common/common\";\nimport { FormSubmitResult } from \"../../common/types\";\nimport { formSubmitValidation } from \"../../common/form-validation\";\n\n@Component({\n tag: \"gx-ide-new-kb\",\n styleUrl: \"new-kb.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/new-kb\"]\n})\nexport class GxIdeNewKb {\n [key: string]: any;\n\n /*\nINDEX:\n1.OWN PROPERTIES \n2.REFERENCE TO ELEMENTS\n3.STATE() VARIABLES\n4.PUBLIC PROPERTY API | WATCH'S\n5.EVENTS (EMIT)\n6.COMPONENT LIFECYCLE METHODS\n7.LISTENERS\n8.PUBLIC METHODS API\n9.LOCAL METHODS\n10.RENDER() FUNCTION\n*/\n\n // 1.OWN PROPERTIES | WATCH'S //\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private renderedFirstTime = false;\n private selectedFrontEndsIds: string[] = [];\n private shortcutsSrc = getAssetPath(`./gx-ide-assets/new-kb/shortcuts.json`);\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeNewKbElement;\n\n /* References needed to collect data con \"Create\" button submit*/\n private authenticationTypeEl!: HTMLGxgComboBoxElement;\n private collationEl!: HTMLGxgComboBoxElement;\n private createDataFilesInKBFolderEl!: HTMLGxgFormCheckboxElement;\n private databaseNameEl!: HTMLGxgFormTextElement;\n private dataSourceEl!: HTMLGxgComboBoxElement;\n private frontEndsEl!: HTMLGxgFormCheckboxGroupElement;\n private kbNameEl!: HTMLGxgFormTextElement;\n private locationEl!: HTMLGxgFormTextElement;\n private passwordEl!: HTMLGxgFormTextElement;\n private prototypingEnvironmentEl!: HTMLGxgComboBoxElement;\n private prototypingTargetEl!: HTMLGxgComboBoxElement;\n private savePasswordEl!: HTMLGxgFormCheckboxElement;\n private serverNameEl!: HTMLGxgComboBoxElement;\n private userInterfaceLanguageEl!: HTMLGxgComboBoxElement;\n private userNameEl!: HTMLGxgFormTextElement;\n\n private gxgShortcutsEl: HTMLGxgShortcutsElement;\n\n // 3.STATE() VARIABLES //\n\n @State() createDataInKbDisabled = false;\n @State() userNameVisible = true;\n @State() passwordVisible = true;\n @State() savePasswordVisible = true;\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /* ----- BASIC DATA ----- */\n\n /**\n * It allows defining the DBMS that will be used in the solution\n */\n @Prop({ mutable: true }) defaultDataSources!: GxOption[];\n\n /**\n * It allows selecting multiple generators for the front end\n */\n @Prop({ mutable: true }) frontEnds!: GxOption[];\n\n /**\n * Specify whether it is feasible to display information related to local configuration parameters\n */\n @Prop() readonly isAdvanced = false;\n\n /**\n * Default suggested path to a directory where the information related to the KB will be stored/generated\n */\n @Prop({ mutable: true }) kbLocation: string;\n\n /**\n * This is a function provided by the developer that returns a string, with the location path\n */\n @Prop() readonly selectLocationCallback!: SelectLocationCallback;\n\n /**\n * The knowledge base default suggested name\n */\n @Prop() readonly kbName: string;\n\n /**\n * It allows selecting the default environment that the KB will have (additional environments can be created later)\n */\n @Prop() readonly prototypingEnvironments!: GxOption[];\n\n /**\n * Path to a directory where the information related to the KB will be stored/generated\n */\n @Prop() readonly prototypingTargets!: GxOption[];\n\n /**\n * Specify the language in which the application screens will be developed (default language)\n */\n @Prop() readonly userInterfaceLanguages!: GxOption[];\n\n /* ----- ADVANCED DATA ----- */\n\n /**\n * Defines the type of authentication for the connection to the previously defined database\n */\n @Prop() readonly authenticationTypes!: GxOption[];\n\n /**\n * DB Collations\n */\n @Prop() readonly collations!: GxOption[];\n\n /**\n * Disabled if the first item of the 'Server Name' combo is selected\n */\n @Prop() readonly createDataFilesInKBFolder: boolean = false;\n\n /**\n * Name of the database where we are going to persist the information of our KB\n */\n @Prop() readonly databaseName: string;\n\n /**\n * Password for the database connection. Visible if the Authentication Type is different from Windows Authentication (first item of the combo)\n */\n @Prop() readonly password: string;\n\n /**\n * Visible if something other than Windows Authentication is selected\n */\n @Prop() readonly savePassword: boolean = false;\n\n /**\n * Name of the DB server where we want to persist the information of our KB\n */\n @Prop() readonly serverNames!: GxOption[];\n\n /**\n * Username for the database connection. Visible if the Authentication Type is different from Windows Authentication (first item of the combo)\n */\n @Prop() readonly userName: string;\n\n /**\n * Username for the database connection. Visible if the Authentication Type is different from Windows Authentication (first item of the combo)\n */\n @Prop() readonly test: string;\n\n /**\n * Callback that will be invoked when the user confirms KB creation (‘Create’ button)\n */\n @Prop() readonly createCallback: CreateCallback;\n\n /**\n * Callback invoked when the user wants to cancel KB creation (‘Cancel’ button)\n */\n @Prop() readonly cancelCallback: CancelCallback;\n\n /**\n * Callback invoked when the user wants to cancel KB creation (‘Cancel’ button)\n */\n @Prop() readonly getDataSourcesCallback: GetDataSourcesCallback;\n\n /**\n * Callback invoked when the user changes the prototyping environment, allowing for the modification of the list of front ends\n */\n @Prop() readonly getFrontEndsCallback: GetFrontEndsCallback;\n\n // 5.EVENTS (EMIT) //\n\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs\n */\n @Event() componentDidRenderFirstTime: EventEmitter<boolean>;\n\n // 6.COMPONENT LIFECYCLE METHODS //\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\n this.evaluateCreateDataInKbDisabled(null);\n this.evaluateAuthenticationType(null);\n this.previousFrontEndsState = this.frontEnds;\n }\n\n componentDidLoad() {\n this.initialSetup();\n this.kbNameEl.focus();\n }\n\n componentDidRender() {\n if (!this.renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this._componentLocale.componentName\n );\n this.renderedFirstTime = true;\n }\n }\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.gxgShortcutsEl.suspend = true;\n } else {\n this.gxgShortcutsEl.suspend = false;\n }\n }\n\n // 9.LOCAL METHODS //\n\n // 9.LOCAL METHODS -> Helpers //\n\n private initialSetup = () => {\n this.updateSelectedFrontEndsIds();\n };\n\n // 9.LOCAL METHODS -> Not Helpers //\n\n private updateSelectedFrontEndsIds = () => {\n this.selectedFrontEndsIds = [];\n this.frontEndsEl.getValues().then(frontEndsCheckboxesInfo => {\n frontEndsCheckboxesInfo.forEach(frontEnd => {\n if (frontEnd.value) {\n this.selectedFrontEndsIds.push(frontEnd.id);\n }\n });\n });\n };\n\n /**\n * @description If Server Name first option is selected, \"Create Data in Knowledge Base Folder\" should be disabled\n */\n private evaluateCreateDataInKbDisabled = (\n e: CustomEvent<ComboBoxItemValue> | null\n ) => {\n if (e) {\n if (this.serverNames[0]?.id === e.detail) {\n this.createDataInKbDisabled = true;\n } else {\n this.createDataInKbDisabled = false;\n }\n } else if (this.serverNames[0]?.selected) {\n this.createDataInKbDisabled = true;\n }\n };\n\n /**\n * @description if \"Authentication Type\" is \"Windows Authentication\" then User Name, Password, and Save Password should not be visible.\n */\n private evaluateAuthenticationType = (\n e: CustomEvent<ComboBoxItemValue> | null\n ) => {\n let selectedOption;\n if (this.authenticationTypes?.length) {\n selectedOption =\n this.authenticationTypes?.find(item => item.selected) ||\n this.authenticationTypes[0];\n }\n const conditionA = e?.detail === \"windows-authentication\";\n const conditionB =\n selectedOption && selectedOption.id === \"windows-authentication\";\n\n if (conditionA || (conditionB && e === null)) {\n this.userNameVisible = false;\n this.passwordVisible = false;\n this.savePasswordVisible = false;\n } else {\n this.userNameVisible = true;\n this.passwordVisible = true;\n this.savePasswordVisible = true;\n }\n };\n\n /**\n * @description It allows defining the DBMS that will be used in the solution\n */\n private selectLocationHandler = (): void => {\n this.selectLocationCallback().then(kbLocation => {\n if (kbLocation) {\n this.kbLocation = kbLocation;\n } else {\n // to be defined\n }\n });\n };\n\n /**\n * @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)\n */\n private updateFrontEnds = () => {\n if (this.getFrontEndsCallback) {\n const selectedPrototypingEnvironmentId =\n this.prototypingEnvironmentEl.value;\n const updatedFrontEndsPromise: Promise<GxOption[]> =\n this.getFrontEndsCallback(selectedPrototypingEnvironmentId);\n updatedFrontEndsPromise\n .then(newFrontEndsOptions => {\n const updatedFrontEnds: GxOption[] = [];\n newFrontEndsOptions.forEach(newFrontEnd => {\n const foundActualFrontEnd = this.frontEnds.find(actualFrontEnd => {\n return newFrontEnd.id === actualFrontEnd.id;\n });\n if (foundActualFrontEnd) {\n // update newFrontEnd checked status with actual frontEnd checked status\n newFrontEnd.checked = foundActualFrontEnd.checked;\n }\n updatedFrontEnds.push(newFrontEnd);\n });\n this.frontEnds = updatedFrontEnds;\n })\n .catch(() => {\n // to do\n });\n }\n };\n\n private getDataSources = (): void => {\n if (this.getDataSourcesCallback) {\n const selectedPrototypingEnvironmentId =\n this.prototypingEnvironmentEl.value;\n const selectedPrototypingTargetId = this.prototypingTargetEl.value;\n const updatedDefaultDataSourcesPromise: Promise<GxOption[]> =\n this.getDataSourcesCallback(\n selectedPrototypingEnvironmentId,\n selectedPrototypingTargetId\n );\n updatedDefaultDataSourcesPromise\n .then(result => {\n if (result.length > 0) {\n this.defaultDataSources = result;\n // set first option as selected\n this.dataSourceEl.value = this.defaultDataSources[0].id;\n }\n })\n .catch(() => {\n // to do\n });\n }\n };\n\n private prototypingEnvironmentValueChangedHandler = (): void => {\n this.getDataSources();\n this.updateFrontEnds();\n };\n\n private prototypingTargetValueChangedHandler = (): void => {\n this.getDataSources();\n };\n\n private createKbHandler = (): void => {\n if (this.createCallback) {\n const createCallbackPromise = this.createCallback({\n kbName: this.kbNameEl?.value,\n kbLocation: this.locationEl?.value,\n prototypingTarget: this.prototypingTargetEl?.value,\n userInterfaceLanguage: this.userInterfaceLanguageEl?.value,\n prototypingEnvironment: this.prototypingEnvironmentEl?.value,\n dataSource: this.dataSourceEl?.value,\n frontEnds: this.selectedFrontEndsIds,\n serverName: this.serverNameEl?.value,\n databaseName: this.databaseNameEl?.value,\n collation: this.collationEl?.value,\n createDataFilesInKBFolder: this.createDataFilesInKBFolderEl?.checked,\n authenticationType: this.authenticationTypeEl?.value,\n userName: this.userNameEl?.value,\n password: this.passwordEl?.value,\n savePassword: this.savePasswordEl?.checked\n });\n\n createCallbackPromise.then((formSubmitResult: FormSubmitResult) => {\n formSubmitValidation(formSubmitResult, this);\n });\n }\n };\n\n private cancelKbHandler = (): void => {\n if (this.cancelCallback) {\n this.cancelCallback();\n }\n };\n\n // 10.RENDER() FUNCTION //\n\n private renderTabBasic = (): Element => {\n return (\n <gxg-tab\n tab=\"basic\"\n no-padding\n flexContainer\n isSelected={!this.isAdvanced}\n >\n <div class=\"basic-row-first\">\n {/* #prototyping target*/}\n <div class=\"basic-row-first__container\">\n <gxg-combo-box\n disableFilter\n toolTip={config.tooltip}\n label={this._componentLocale.tabBasic.prototypingTarget.label}\n value={getSelectedGxOption(this.prototypingTargets)}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.prototypingTargetEl = el as HTMLGxgComboBoxElement)\n }\n disabled={this.prototypingTargets.length === 0}\n placeholder={\n this.prototypingTargets.length === 0\n ? this._componentLocale.tabBasic.prototypingTarget\n .disabledPlaceholder\n : \"\"\n }\n onValueChanged={this.prototypingTargetValueChangedHandler}\n class=\"prototyping-target\"\n part=\"prototyping-target\"\n >\n {renderFormItems(\n \"gxg-combo-box-item\",\n this.prototypingTargets,\n \"prototyping-target\"\n )}\n </gxg-combo-box>\n\n {/* #user interface language */}\n <gxg-combo-box\n disableFilter\n toolTip={config.tooltip}\n label={this._componentLocale.tabBasic.userInterfaceLanguage.label}\n value={getSelectedGxOption(this.userInterfaceLanguages)}\n placeholder={\n this.userInterfaceLanguages.length === 0\n ? this._componentLocale.tabBasic.userInterfaceLanguage\n .disabledPlaceholder\n : \"\"\n }\n disabled={this.userInterfaceLanguages.length === 0}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.userInterfaceLanguageEl = el as HTMLGxgComboBoxElement)\n }\n class=\"user-interface-language\"\n part=\"user-interface-language\"\n >\n {renderFormItems(\n \"gxg-combo-box-item\",\n this.userInterfaceLanguages,\n \"user-interface-language\"\n )}\n </gxg-combo-box>\n </div>\n </div>\n\n <div class=\"grid basic-row-second\">\n <gx-ide-container\n containerTitle={this._componentLocale.tabBasic.backEnd.backEndLabel}\n contentBorderEnd\n titleType=\"secondary\"\n >\n {/* #back end */}\n {/* #prototyping environments */}\n <gxg-combo-box\n disableFilter\n toolTip={config.tooltip}\n label={\n this._componentLocale.tabBasic.backEnd.prototypingEnvironment\n .label\n }\n value={getSelectedGxOption(this.prototypingEnvironments)}\n placeholder={\n this.prototypingEnvironments.length === 0\n ? this._componentLocale.tabBasic.backEnd\n .prototypingEnvironment.disabledPlaceholder\n : \"\"\n }\n disabled={this.prototypingEnvironments.length === 0}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.prototypingEnvironmentEl = el as HTMLGxgComboBoxElement)\n }\n onValueChanged={this.prototypingEnvironmentValueChangedHandler}\n class=\"prototyping-environment\"\n part=\"prototyping-environment\"\n >\n {renderFormItems(\n \"gxg-combo-box-item\",\n this.prototypingEnvironments,\n \"prototyping-environment\"\n )}\n </gxg-combo-box>\n\n {/* #data source */}\n <gxg-combo-box\n label={this._componentLocale.tabBasic.backEnd.dataSource.label}\n toolTip={config.tooltip}\n disableFilter\n value={getSelectedGxOption(this.defaultDataSources)}\n placeholder={\n this.defaultDataSources.length === 0\n ? this._componentLocale.tabBasic.backEnd.dataSource\n .disabledPlaceholder\n : \"\"\n }\n disabled={this.defaultDataSources.length === 0}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.dataSourceEl = el as HTMLGxgComboBoxElement)\n }\n class=\"data-source\"\n part=\"data-source\"\n >\n {renderFormItems(\n \"gxg-combo-box-item\",\n this.defaultDataSources,\n \"data-source\"\n )}\n </gxg-combo-box>\n </gx-ide-container>\n\n {/* #front end */}\n <gx-ide-container\n containerTitle={\n this._componentLocale.tabBasic.frontEnd.frontEndLabel\n }\n titleType=\"secondary\"\n >\n <gxg-form-checkbox-group\n checkboxesLabelSize=\"large\"\n ref={el =>\n (this.frontEndsEl = el as HTMLGxgFormCheckboxGroupElement)\n }\n onGroupValuesChanged={this.updateSelectedFrontEndsIds}\n >\n {renderFormItems(\n \"gxg-form-checkbox\",\n this.frontEnds,\n \"front-end\"\n )}\n </gxg-form-checkbox-group>\n </gx-ide-container>\n </div>\n </gxg-tab>\n );\n };\n\n private renderTabAdvanced = (): Element => {\n return (\n <gxg-tab tab=\"advanced\" no-padding flexContainer>\n <gx-ide-container\n noContentPadding\n containerTitle={this._componentLocale.tabAdvanced.tabTitle}\n titleType=\"secondary\"\n >\n <div class=\"knowledge-base-storage\">\n <div class=\"knowledge-base-storage__col-left\">\n {/* #server name */}\n <gxg-combo-box\n label={this._componentLocale.tabAdvanced.serverName.label}\n disableFilter\n toolTip={config.tooltip}\n value={getSelectedGxOption(this.serverNames)}\n placeholder={\n this.serverNames.length === 0\n ? this._componentLocale.tabAdvanced.serverName\n .disabledPlaceholder\n : \"\"\n }\n disabled={this.serverNames.length === 0}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.serverNameEl = el as HTMLGxgComboBoxElement)\n }\n class=\"server-name-combo-box\"\n part=\"server-name\"\n onValueChanged={this.evaluateCreateDataInKbDisabled}\n >\n {renderFormItems(\n \"gxg-combo-box-item\",\n this.serverNames,\n \"server-name\"\n )}\n </gxg-combo-box>\n\n {/* #search icon button */}\n <gxg-button\n type=\"secondary-icon-only\"\n icon=\"gemini-tools/search\"\n class=\"server-name-button\"\n part=\"search-server-name\"\n ></gxg-button>\n\n {/* #database name */}\n <gxg-form-text\n labelPosition=\"above\"\n label={this._componentLocale.tabAdvanced.databaseName.label}\n placeholder=\"MyDatabase\"\n ref={(el: HTMLGxgFormTextElement) =>\n (this.databaseNameEl = el as HTMLGxgFormTextElement)\n }\n toolTip={config.tooltip}\n value={this.databaseName}\n class=\"database-name\"\n part=\"database-name\"\n ></gxg-form-text>\n\n {/* #collation */}\n <gxg-combo-box\n label={this._componentLocale.tabAdvanced.collation.label}\n disableFilter\n toolTip={config.tooltip}\n value={getSelectedGxOption(this.collations)}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.collationEl = el as HTMLGxgComboBoxElement)\n }\n placeholder={\n this.collations.length === 0\n ? this._componentLocale.tabAdvanced.collation\n .disabledPlaceholder\n : \"\"\n }\n disabled={this.serverNames.length === 0}\n class=\"collation-combo-box\"\n part=\"collation\"\n >\n {renderFormItems(\n \"gxg-combo-box-item\",\n this.collations,\n \"collation\"\n )}\n </gxg-combo-box>\n <gxg-button\n type=\"secondary-icon-only\"\n icon=\"gemini-tools/reset\"\n class=\"collation-button\"\n part=\"reset-collation\"\n ></gxg-button>\n\n {/* #create data in knowledge base folder */}\n <gxg-form-checkbox\n label={\n this._componentLocale.tabAdvanced.createDataFilesInKbFolder\n }\n ref={(el: HTMLGxgFormCheckboxElement) =>\n (this.createDataFilesInKBFolderEl =\n el as HTMLGxgFormCheckboxElement)\n }\n alignTop\n checked={this.createDataFilesInKBFolder}\n disabled={this.createDataInKbDisabled}\n class=\"create-data-in-kb\"\n part=\"create-data-in-kb\"\n ></gxg-form-checkbox>\n </div>\n\n <div\n class={{\n \"knowledge-base-storage__col-right\": true,\n \"knowledge-base-storage__col-right--windows-authentication\":\n !this.userNameVisible\n }}\n >\n {/* #authentication type */}\n <gxg-combo-box\n label={\n this._componentLocale.tabAdvanced.authenticationType.label\n }\n disableFilter\n toolTip={config.tooltip}\n value={getSelectedGxOption(this.authenticationTypes)}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.authenticationTypeEl = el as HTMLGxgComboBoxElement)\n }\n placeholder={\n this.authenticationTypes.length === 0\n ? this._componentLocale.tabAdvanced.authenticationType\n .disabledPlaceholder\n : \"\"\n }\n disabled={this.authenticationTypes.length === 0}\n class=\"authentication-type\"\n part=\"authentication-type\"\n onValueChanged={this.evaluateAuthenticationType}\n >\n {renderFormItems(\n \"gxg-combo-box-item\",\n this.authenticationTypes,\n \"authentication-type\"\n )}\n </gxg-combo-box>\n\n {/* #user name */}\n {this.userNameVisible ? (\n <gxg-form-text\n labelPosition=\"above\"\n toolTip={config.tooltip}\n label={this._componentLocale.tabAdvanced.userName.label}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.userNameEl = el as HTMLGxgFormTextElement)\n }\n value={this.userName}\n class=\"user-name\"\n part=\"user-name\"\n ></gxg-form-text>\n ) : null}\n\n {/* #password */}\n {this.passwordVisible ? (\n <gxg-form-text\n labelPosition=\"above\"\n label={this._componentLocale.tabAdvanced.password.label}\n password\n toolTip={config.tooltip}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.passwordEl = el as HTMLGxgFormTextElement)\n }\n value={this.password}\n class=\"password\"\n part=\"password\"\n ></gxg-form-text>\n ) : null}\n\n {/* #save password */}\n {this.savePasswordVisible ? (\n <gxg-form-checkbox\n label={this._componentLocale.tabAdvanced.savePassword}\n ref={(el: HTMLGxgFormCheckboxElement) =>\n (this.savePasswordEl = el as HTMLGxgFormCheckboxElement)\n }\n checked={this.savePassword}\n class=\"save-password\"\n part=\"save-password\"\n ></gxg-form-checkbox>\n ) : null}\n </div>\n </div>\n </gx-ide-container>\n </gxg-tab>\n );\n };\n\n /** *****************************\n * 11.RENDER() FUNCTION\n ********************************/\n\n render(): void {\n return (\n <Host class=\"gx-ide-component\">\n <div class=\"gx-ide-main-wrapper\">\n <gx-ide-container\n noContentPadding\n slimmerFooter={config.gxIdeContainer.slimmerFooter}\n containerTitle={\n this.displayTitle ? this._componentLocale.componentName : null\n }\n >\n <header\n class={{\n \"header\": true,\n \"grid\": true,\n \"header--is-advanced\": this.isAdvanced\n }}\n slot=\"header\"\n >\n {/* #kb name */}\n <gxg-label labelPosition=\"start\" class=\"kb-label\" noMargin>\n {this._componentLocale.header.kbName}\n </gxg-label>\n <gxg-form-text\n labelPosition=\"start\"\n placeholder=\"SalesInventory\"\n max-width=\"100%\"\n value={this.kbName}\n toolTip={config.tooltip}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.kbNameEl = el as HTMLGxgFormTextElement)\n }\n part=\"kb-name\"\n class=\"kb-input\"\n ></gxg-form-text>\n\n {/* #location */}\n {this.isAdvanced\n ? [\n <gxg-label labelPosition=\"start\" class=\"location-label\">\n {this._componentLocale.header.kbLocation}\n </gxg-label>,\n <gxg-form-text\n labelPosition=\"start\"\n placeholder=\"C:\\Models\"\n maxWidth=\"100%\"\n value={this.kbLocation}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.locationEl = el as HTMLGxgFormTextElement)\n }\n disabled={!this.isAdvanced}\n part=\"kb-location\"\n class=\"location-input\"\n ></gxg-form-text>,\n <gxg-button\n type=\"secondary-icon-only\"\n icon=\"gemini-tools/folder\"\n onClick={this.selectLocationHandler}\n part=\"button-select-location\"\n class=\"location-icon\"\n ></gxg-button>\n ]\n : null}\n </header>\n\n {/* main */}\n <main class=\"gxi-full-height\">\n <gxg-tabs class=\"gxg-tabs\" noBorder>\n {this.isAdvanced ? (\n <gxg-tab-bar\n slot=\"tab-bar-container\"\n part=\"tab-bar\"\n displayBorder\n >\n <gxg-tab-button\n slot=\"tab-bar\"\n tabLabel={this._componentLocale.tabBasic.tabLabel}\n tab=\"basic\"\n is-selected\n hidden={!this.isAdvanced}\n part=\"tab-button-basic\"\n ></gxg-tab-button>\n <gxg-tab-button\n slot=\"tab-bar\"\n tabLabel={this._componentLocale.tabAdvanced.tabLabel}\n tab=\"advanced\"\n hidden={!this.isAdvanced}\n part=\"tab-button-advanced\"\n ></gxg-tab-button>\n </gxg-tab-bar>\n ) : null}\n\n {this.renderTabBasic()}\n {this.isAdvanced && this.renderTabAdvanced()}\n </gxg-tabs>\n </main>\n\n {/* footer */}\n {/* #cancel */}\n <gxg-button\n id=\"button-cancel\"\n type=\"outlined\"\n onClick={this.cancelKbHandler}\n part=\"button-cancel\"\n slot=\"footer-end\"\n >\n {this._componentLocale.footer.btnCancel}\n </gxg-button>\n {/* #create */}\n <gxg-button\n id=\"button-create\"\n type=\"primary-text-only\"\n onClick={this.createKbHandler}\n part=\"button-create\"\n slot=\"footer-end\"\n >\n {this._componentLocale.footer.btnCreate}\n </gxg-button>\n </gx-ide-container>\n </div>\n <gxg-shortcuts\n src={this.shortcutsSrc}\n ref={(el: HTMLGxgShortcutsElement) =>\n (this.gxgShortcutsEl = el as HTMLGxgShortcutsElement)\n }\n ></gxg-shortcuts>\n </Host>\n );\n }\n}\nexport interface NewKBData {\n authenticationType: string;\n collation: string;\n createDataFilesInKBFolder: boolean;\n databaseName: string;\n dataSource: string;\n frontEnds: string[];\n kbLocation: string;\n kbName: string;\n password: string;\n prototypingEnvironment: string;\n prototypingTarget: string;\n savePassword: boolean;\n serverName: string;\n userInterfaceLanguage: string;\n userName: string;\n}\n\nexport type CreateCallback = (data: NewKBData) => Promise<FormSubmitResult>;\n\nexport type CancelCallback = () => Promise<void>;\n\nexport type GetDataSourcesCallback = (\n selectedPrototypingEnvironmentId: string,\n selectedPrototypingTargetId: string\n) => Promise<GxOption[]>;\n\nexport type GetFrontEndsCallback = (\n selectedPrototypingEnvironmentId: string\n) => Promise<GxOption[]>;\n\nexport type SelectLocationCallback = () => Promise<string>;\n"],"version":3}
|
|
1
|
+
{"file":"gx-ide-new-kb.entry.js","mappings":"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","names":[],"sources":["src/components/new-kb/new-kb.scss?tag=gx-ide-new-kb&encapsulation=shadow","src/components/new-kb/new-kb.tsx"],"sourcesContent":["@import \"../../global/gx-ide-common.scss\";\n@import \"../../global/gx-ide-mixins.scss\";\n\n:host {\n display: block;\n border: 1px solid var(--gxg-border-color--regular);\n background-color: var(--mer-color__surface);\n}\n:host(.gxi-new-kb--shadow) {\n}\n/*HEADER*/\n.header {\n grid-template-columns: auto 1fr;\n grid-template-areas: \"kb-name-label kb-input\";\n &--is-advanced {\n grid-template-columns: auto 1fr min-content;\n grid-template-areas:\n \"kb-name-label kb-input .\"\n \"location-label location-input location-icon\";\n }\n .kb-input {\n grid-area: kb-input;\n }\n .kb-name-label {\n grid-area: kb-label;\n }\n .location-label {\n grid-area: location-label;\n }\n .location-input {\n grid-area: location-input;\n }\n .location-icon {\n grid-area: location-icon;\n }\n}\n/*GXG-TABS*/\n.gxg-tabs {\n margin-top: 0;\n box-shadow: none;\n}\n/*Basic*/\n.basic-row-first {\n container-name: basic-row-first;\n // container-type: inline-size; /*Esto queda comentado hasta que no se resuelva el problema del popover con Safari.*/\n &__container {\n display: grid;\n gap: var(--gx-ide-grid-column-gap);\n padding: var(--gx-ide-container__padding);\n border-bottom: 1px solid var(--gx-ide-container-border-color);\n grid-template-columns: repeat(2, 1fr);\n }\n /*Esto queda comentado hasta que no se resuelva el problema del popover con Safari.*/\n // @include containerQuerySm() {\n // .basic-row-first__container {\n // grid-template-columns: 1fr;\n // }\n // }\n}\n\n.basic-row-second {\n grid-template-columns: repeat(2, 1fr);\n grid-column-gap: 0;\n grid-row-gap: 0;\n flex-grow: 1;\n}\n/*Advanced*/\n.knowledge-base-storage {\n display: grid;\n grid-template-areas: \"knowledge-base-storage__col-left knowledge-base-storage__col-right\";\n grid-template-columns: repeat(2, 1fr);\n flex-grow: 1;\n gap: 0;\n > *:first-child {\n border-right: 1px solid var(--gx-ide-container-border-color);\n }\n &__col-left {\n display: grid;\n gap: var(--gx-ide-grid-row-gap);\n padding: var(--gx-ide-container__padding);\n grid-area: knowledge-base-storage__col-left;\n grid-template-columns: 1fr auto;\n grid-template-rows: repeat(4, min-content);\n grid-template-areas:\n \"server-name-combo-box server-name-button\"\n \"database-name .\"\n \"collation-combo-box collation-button\"\n \"create-data-in-kb .\";\n\n .server-name-combo-box {\n grid-area: server-name-combo-box;\n }\n .server-name-button {\n grid-area: server-name-button;\n align-self: end;\n }\n .database-name {\n grid-area: database-name;\n }\n .collation-combo-box {\n grid-area: collation-combo-box;\n }\n .collation-button {\n grid-area: collation-button;\n align-self: end;\n }\n .create-data-in-kb {\n grid-area: create-data-in-kb;\n }\n }\n &__col-right {\n display: grid;\n padding: var(--gx-ide-container__padding);\n gap: var(--gx-ide-grid-row-gap);\n grid-area: knowledge-base-storage__col-right;\n grid-template-columns: 1fr;\n grid-template-rows: repeat(4, min-content);\n grid-template-areas:\n \"authentication-type\"\n \"user-name\"\n \"password\"\n \"save-password\";\n .authentication-type {\n grid-area: authentication-type;\n }\n .user-name {\n grid-area: user-name;\n }\n .password {\n grid-area: password;\n }\n .save-password {\n grid-area: save-password;\n }\n &--windows-authentication {\n grid-template-areas: \"authentication-type\";\n }\n }\n}\n","/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Event,\n EventEmitter,\n Element,\n State,\n getAssetPath,\n Method\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\nimport { ComboBoxItemValue } from \"@genexus/gemini/dist/types/components/combo-box-item/combo-box-item\";\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../common/locale\";\nimport { config } from \"../../common/config\";\nimport { GxOption } from \"../../common/types\";\nimport { renderFormItems, getSelectedGxOption } from \"../../common/common\";\nimport { FormSubmitResult } from \"../../common/types\";\nimport { formSubmitValidation } from \"../../common/form-validation\";\n\n@Component({\n tag: \"gx-ide-new-kb\",\n styleUrl: \"new-kb.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/new-kb\"]\n})\nexport class GxIdeNewKb {\n [key: string]: any;\n\n /*\nINDEX:\n1.OWN PROPERTIES \n2.REFERENCE TO ELEMENTS\n3.STATE() VARIABLES\n4.PUBLIC PROPERTY API | WATCH'S\n5.EVENTS (EMIT)\n6.COMPONENT LIFECYCLE METHODS\n7.LISTENERS\n8.PUBLIC METHODS API\n9.LOCAL METHODS\n10.RENDER() FUNCTION\n*/\n\n // 1.OWN PROPERTIES | WATCH'S //\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private renderedFirstTime = false;\n private selectedFrontEndsIds: string[] = [];\n private shortcutsSrc = getAssetPath(`./gx-ide-assets/new-kb/shortcuts.json`);\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeNewKbElement;\n\n /* References needed to collect data con \"Create\" button submit*/\n private authenticationTypeEl!: HTMLGxgComboBoxElement;\n private collationEl!: HTMLGxgComboBoxElement;\n private createDataFilesInKBFolderEl!: HTMLGxgFormCheckboxElement;\n private databaseNameEl!: HTMLGxgFormTextElement;\n private dataSourceEl!: HTMLGxgComboBoxElement;\n private frontEndsEl!: HTMLGxgFormCheckboxGroupElement;\n private kbNameEl!: HTMLGxgFormTextElement;\n private locationEl!: HTMLGxgFormTextElement;\n private passwordEl!: HTMLGxgFormTextElement;\n private prototypingEnvironmentEl!: HTMLGxgComboBoxElement;\n private prototypingTargetEl!: HTMLGxgComboBoxElement;\n private savePasswordEl!: HTMLGxgFormCheckboxElement;\n private serverNameEl!: HTMLGxgComboBoxElement;\n private userInterfaceLanguageEl!: HTMLGxgComboBoxElement;\n private userNameEl!: HTMLGxgFormTextElement;\n\n private gxgShortcutsEl: HTMLGxgShortcutsElement;\n\n // 3.STATE() VARIABLES //\n\n @State() createDataInKbDisabled = false;\n @State() userNameVisible = true;\n @State() passwordVisible = true;\n @State() savePasswordVisible = true;\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /* ----- BASIC DATA ----- */\n\n /**\n * It allows defining the DBMS that will be used in the solution\n */\n @Prop({ mutable: true }) defaultDataSources!: GxOption[];\n\n /**\n * It allows selecting multiple generators for the front end\n */\n @Prop({ mutable: true }) frontEnds!: GxOption[];\n\n /**\n * Specify whether it is feasible to display information related to local configuration parameters\n */\n @Prop() readonly isAdvanced = false;\n\n /**\n * Default suggested path to a directory where the information related to the KB will be stored/generated\n */\n @Prop({ mutable: true }) kbLocation: string;\n\n /**\n * This is a function provided by the developer that returns a string, with the location path\n */\n @Prop() readonly selectLocationCallback!: SelectLocationCallback;\n\n /**\n * The knowledge base default suggested name\n */\n @Prop() readonly kbName: string;\n\n /**\n * It allows selecting the default environment that the KB will have (additional environments can be created later)\n */\n @Prop() readonly prototypingEnvironments!: GxOption[];\n\n /**\n * Path to a directory where the information related to the KB will be stored/generated\n */\n @Prop() readonly prototypingTargets!: GxOption[];\n\n /**\n * Specify the language in which the application screens will be developed (default language)\n */\n @Prop() readonly userInterfaceLanguages!: GxOption[];\n\n /* ----- ADVANCED DATA ----- */\n\n /**\n * Defines the type of authentication for the connection to the previously defined database\n */\n @Prop() readonly authenticationTypes!: GxOption[];\n\n /**\n * DB Collations\n */\n @Prop() readonly collations!: GxOption[];\n\n /**\n * Disabled if the first item of the 'Server Name' combo is selected\n */\n @Prop() readonly createDataFilesInKBFolder: boolean = false;\n\n /**\n * Name of the database where we are going to persist the information of our KB\n */\n @Prop() readonly databaseName: string;\n\n /**\n * Password for the database connection. Visible if the Authentication Type is different from Windows Authentication (first item of the combo)\n */\n @Prop() readonly password: string;\n\n /**\n * Visible if something other than Windows Authentication is selected\n */\n @Prop() readonly savePassword: boolean = false;\n\n /**\n * Name of the DB server where we want to persist the information of our KB\n */\n @Prop() readonly serverNames!: GxOption[];\n\n /**\n * Username for the database connection. Visible if the Authentication Type is different from Windows Authentication (first item of the combo)\n */\n @Prop() readonly userName: string;\n\n /**\n * Username for the database connection. Visible if the Authentication Type is different from Windows Authentication (first item of the combo)\n */\n @Prop() readonly test: string;\n\n /**\n * Callback that will be invoked when the user confirms KB creation (‘Create’ button)\n */\n @Prop() readonly createCallback: CreateCallback;\n\n /**\n * Callback invoked when the user wants to cancel KB creation (‘Cancel’ button)\n */\n @Prop() readonly cancelCallback: CancelCallback;\n\n /**\n * Callback invoked when the user wants to cancel KB creation (‘Cancel’ button)\n */\n @Prop() readonly getDataSourcesCallback: GetDataSourcesCallback;\n\n /**\n * Callback invoked when the user changes the prototyping environment, allowing for the modification of the list of front ends\n */\n @Prop() readonly getFrontEndsCallback: GetFrontEndsCallback;\n\n // 5.EVENTS (EMIT) //\n\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs\n */\n @Event() componentDidRenderFirstTime: EventEmitter<boolean>;\n\n // 6.COMPONENT LIFECYCLE METHODS //\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\n this.evaluateCreateDataInKbDisabled(null);\n this.evaluateAuthenticationType(null);\n this.previousFrontEndsState = this.frontEnds;\n }\n\n componentDidLoad() {\n this.initialSetup();\n this.kbNameEl.focus();\n }\n\n componentDidRender() {\n if (!this.renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this._componentLocale.componentName\n );\n this.renderedFirstTime = true;\n }\n }\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.gxgShortcutsEl.suspend = true;\n } else {\n this.gxgShortcutsEl.suspend = false;\n }\n }\n\n // 9.LOCAL METHODS //\n\n // 9.LOCAL METHODS -> Helpers //\n\n private initialSetup = () => {\n this.updateSelectedFrontEndsIds();\n };\n\n // 9.LOCAL METHODS -> Not Helpers //\n\n private updateSelectedFrontEndsIds = () => {\n this.selectedFrontEndsIds = [];\n this.frontEndsEl.getValues().then(frontEndsCheckboxesInfo => {\n frontEndsCheckboxesInfo.forEach(frontEnd => {\n if (frontEnd.value) {\n this.selectedFrontEndsIds.push(frontEnd.id);\n }\n });\n });\n };\n\n /**\n * @description If Server Name first option is selected, \"Create Data in Knowledge Base Folder\" should be disabled\n */\n private evaluateCreateDataInKbDisabled = (\n e: CustomEvent<ComboBoxItemValue> | null\n ) => {\n if (e) {\n if (this.serverNames[0]?.id === e.detail) {\n this.createDataInKbDisabled = true;\n } else {\n this.createDataInKbDisabled = false;\n }\n } else if (this.serverNames[0]?.selected) {\n this.createDataInKbDisabled = true;\n }\n };\n\n /**\n * @description if \"Authentication Type\" is \"Windows Authentication\" then User Name, Password, and Save Password should not be visible.\n */\n private evaluateAuthenticationType = (\n e: CustomEvent<ComboBoxItemValue> | null\n ) => {\n let selectedOption;\n if (this.authenticationTypes?.length) {\n selectedOption =\n this.authenticationTypes?.find(item => item.selected) ||\n this.authenticationTypes[0];\n }\n const conditionA = e?.detail === \"windows-authentication\";\n const conditionB =\n selectedOption && selectedOption.id === \"windows-authentication\";\n\n if (conditionA || (conditionB && e === null)) {\n this.userNameVisible = false;\n this.passwordVisible = false;\n this.savePasswordVisible = false;\n } else {\n this.userNameVisible = true;\n this.passwordVisible = true;\n this.savePasswordVisible = true;\n }\n };\n\n /**\n * @description It allows defining the DBMS that will be used in the solution\n */\n private selectLocationHandler = (): void => {\n this.selectLocationCallback().then(kbLocation => {\n if (kbLocation) {\n this.kbLocation = kbLocation;\n } else {\n // to be defined\n }\n });\n };\n\n /**\n * @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)\n */\n private updateFrontEnds = () => {\n if (this.getFrontEndsCallback) {\n const selectedPrototypingEnvironmentId =\n this.prototypingEnvironmentEl.value;\n const updatedFrontEndsPromise: Promise<GxOption[]> =\n this.getFrontEndsCallback(selectedPrototypingEnvironmentId);\n updatedFrontEndsPromise\n .then(newFrontEndsOptions => {\n const updatedFrontEnds: GxOption[] = [];\n newFrontEndsOptions.forEach(newFrontEnd => {\n const foundActualFrontEnd = this.frontEnds.find(actualFrontEnd => {\n return newFrontEnd.id === actualFrontEnd.id;\n });\n if (foundActualFrontEnd) {\n // update newFrontEnd checked status with actual frontEnd checked status\n newFrontEnd.checked = foundActualFrontEnd.checked;\n }\n updatedFrontEnds.push(newFrontEnd);\n });\n this.frontEnds = updatedFrontEnds;\n })\n .catch(() => {\n // to do\n });\n }\n };\n\n private getDataSources = (): void => {\n if (this.getDataSourcesCallback) {\n const selectedPrototypingEnvironmentId =\n this.prototypingEnvironmentEl.value;\n const selectedPrototypingTargetId = this.prototypingTargetEl.value;\n const updatedDefaultDataSourcesPromise: Promise<GxOption[]> =\n this.getDataSourcesCallback(\n selectedPrototypingEnvironmentId,\n selectedPrototypingTargetId\n );\n updatedDefaultDataSourcesPromise\n .then(result => {\n if (result.length > 0) {\n this.defaultDataSources = result;\n // set first option as selected\n this.dataSourceEl.value = this.defaultDataSources[0].id;\n }\n })\n .catch(() => {\n // to do\n });\n }\n };\n\n private prototypingEnvironmentValueChangedHandler = (): void => {\n this.getDataSources();\n this.updateFrontEnds();\n };\n\n private prototypingTargetValueChangedHandler = (): void => {\n this.getDataSources();\n };\n\n private createKbHandler = (): void => {\n if (this.createCallback) {\n const createCallbackPromise = this.createCallback({\n kbName: this.kbNameEl?.value,\n kbLocation: this.locationEl?.value,\n prototypingTarget: this.prototypingTargetEl?.value,\n userInterfaceLanguage: this.userInterfaceLanguageEl?.value,\n prototypingEnvironment: this.prototypingEnvironmentEl?.value,\n dataSource: this.dataSourceEl?.value,\n frontEnds: this.selectedFrontEndsIds,\n serverName: this.serverNameEl?.value,\n databaseName: this.databaseNameEl?.value,\n collation: this.collationEl?.value,\n createDataFilesInKBFolder: this.createDataFilesInKBFolderEl?.checked,\n authenticationType: this.authenticationTypeEl?.value,\n userName: this.userNameEl?.value,\n password: this.passwordEl?.value,\n savePassword: this.savePasswordEl?.checked\n });\n\n createCallbackPromise.then((formSubmitResult: FormSubmitResult) => {\n formSubmitValidation(formSubmitResult, this);\n });\n }\n };\n\n private cancelKbHandler = (): void => {\n if (this.cancelCallback) {\n this.cancelCallback();\n }\n };\n\n // 10.RENDER() FUNCTION //\n\n private renderTabBasic = (): Element => {\n return (\n <gxg-tab\n tab=\"basic\"\n no-padding\n flexContainer\n isSelected={!this.isAdvanced}\n >\n <div class=\"basic-row-first\">\n {/* #prototyping target*/}\n <div class=\"basic-row-first__container\">\n <gxg-combo-box\n disableFilter\n toolTip={config.tooltip}\n label={this._componentLocale.tabBasic.prototypingTarget.label}\n value={getSelectedGxOption(this.prototypingTargets)}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.prototypingTargetEl = el as HTMLGxgComboBoxElement)\n }\n disabled={this.prototypingTargets.length === 0}\n placeholder={\n this.prototypingTargets.length === 0\n ? this._componentLocale.tabBasic.prototypingTarget\n .disabledPlaceholder\n : \"\"\n }\n onValueChanged={this.prototypingTargetValueChangedHandler}\n class=\"prototyping-target\"\n part=\"prototyping-target\"\n >\n {renderFormItems(\n \"gxg-combo-box-item\",\n this.prototypingTargets,\n \"prototyping-target\"\n )}\n </gxg-combo-box>\n\n {/* #user interface language */}\n <gxg-combo-box\n disableFilter\n toolTip={config.tooltip}\n label={this._componentLocale.tabBasic.userInterfaceLanguage.label}\n value={getSelectedGxOption(this.userInterfaceLanguages)}\n placeholder={\n this.userInterfaceLanguages.length === 0\n ? this._componentLocale.tabBasic.userInterfaceLanguage\n .disabledPlaceholder\n : \"\"\n }\n disabled={this.userInterfaceLanguages.length === 0}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.userInterfaceLanguageEl = el as HTMLGxgComboBoxElement)\n }\n class=\"user-interface-language\"\n part=\"user-interface-language\"\n >\n {renderFormItems(\n \"gxg-combo-box-item\",\n this.userInterfaceLanguages,\n \"user-interface-language\"\n )}\n </gxg-combo-box>\n </div>\n </div>\n\n <div class=\"grid basic-row-second\">\n <gx-ide-container\n containerTitle={this._componentLocale.tabBasic.backEnd.backEndLabel}\n contentBorderEnd\n titleType=\"secondary\"\n >\n {/* #back end */}\n {/* #prototyping environments */}\n <gxg-combo-box\n disableFilter\n toolTip={config.tooltip}\n label={\n this._componentLocale.tabBasic.backEnd.prototypingEnvironment\n .label\n }\n value={getSelectedGxOption(this.prototypingEnvironments)}\n placeholder={\n this.prototypingEnvironments.length === 0\n ? this._componentLocale.tabBasic.backEnd\n .prototypingEnvironment.disabledPlaceholder\n : \"\"\n }\n disabled={this.prototypingEnvironments.length === 0}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.prototypingEnvironmentEl = el as HTMLGxgComboBoxElement)\n }\n onValueChanged={this.prototypingEnvironmentValueChangedHandler}\n class=\"prototyping-environment\"\n part=\"prototyping-environment\"\n >\n {renderFormItems(\n \"gxg-combo-box-item\",\n this.prototypingEnvironments,\n \"prototyping-environment\"\n )}\n </gxg-combo-box>\n\n {/* #data source */}\n <gxg-combo-box\n label={this._componentLocale.tabBasic.backEnd.dataSource.label}\n toolTip={config.tooltip}\n disableFilter\n value={getSelectedGxOption(this.defaultDataSources)}\n placeholder={\n this.defaultDataSources.length === 0\n ? this._componentLocale.tabBasic.backEnd.dataSource\n .disabledPlaceholder\n : \"\"\n }\n disabled={this.defaultDataSources.length === 0}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.dataSourceEl = el as HTMLGxgComboBoxElement)\n }\n class=\"data-source\"\n part=\"data-source\"\n >\n {renderFormItems(\n \"gxg-combo-box-item\",\n this.defaultDataSources,\n \"data-source\"\n )}\n </gxg-combo-box>\n </gx-ide-container>\n\n {/* #front end */}\n <gx-ide-container\n containerTitle={\n this._componentLocale.tabBasic.frontEnd.frontEndLabel\n }\n titleType=\"secondary\"\n >\n <gxg-form-checkbox-group\n checkboxesLabelSize=\"large\"\n ref={el =>\n (this.frontEndsEl = el as HTMLGxgFormCheckboxGroupElement)\n }\n onGroupValuesChanged={this.updateSelectedFrontEndsIds}\n >\n {renderFormItems(\n \"gxg-form-checkbox\",\n this.frontEnds,\n \"front-end\"\n )}\n </gxg-form-checkbox-group>\n </gx-ide-container>\n </div>\n </gxg-tab>\n );\n };\n\n private renderTabAdvanced = (): Element => {\n return (\n <gxg-tab tab=\"advanced\" no-padding flexContainer>\n <gx-ide-container\n noContentPadding\n containerTitle={this._componentLocale.tabAdvanced.tabTitle}\n titleType=\"secondary\"\n >\n <div class=\"knowledge-base-storage\">\n <div class=\"knowledge-base-storage__col-left\">\n {/* #server name */}\n <gxg-combo-box\n label={this._componentLocale.tabAdvanced.serverName.label}\n disableFilter\n toolTip={config.tooltip}\n value={getSelectedGxOption(this.serverNames)}\n placeholder={\n this.serverNames.length === 0\n ? this._componentLocale.tabAdvanced.serverName\n .disabledPlaceholder\n : \"\"\n }\n disabled={this.serverNames.length === 0}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.serverNameEl = el as HTMLGxgComboBoxElement)\n }\n class=\"server-name-combo-box\"\n part=\"server-name\"\n onValueChanged={this.evaluateCreateDataInKbDisabled}\n >\n {renderFormItems(\n \"gxg-combo-box-item\",\n this.serverNames,\n \"server-name\"\n )}\n </gxg-combo-box>\n\n {/* #search icon button */}\n <gxg-button\n type=\"secondary-icon-only\"\n icon=\"gemini-tools/search\"\n class=\"server-name-button\"\n part=\"search-server-name\"\n ></gxg-button>\n\n {/* #database name */}\n <gxg-form-text\n labelPosition=\"above\"\n label={this._componentLocale.tabAdvanced.databaseName.label}\n placeholder=\"MyDatabase\"\n ref={(el: HTMLGxgFormTextElement) =>\n (this.databaseNameEl = el as HTMLGxgFormTextElement)\n }\n toolTip={config.tooltip}\n value={this.databaseName}\n class=\"database-name\"\n part=\"database-name\"\n ></gxg-form-text>\n\n {/* #collation */}\n <gxg-combo-box\n label={this._componentLocale.tabAdvanced.collation.label}\n disableFilter\n toolTip={config.tooltip}\n value={getSelectedGxOption(this.collations)}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.collationEl = el as HTMLGxgComboBoxElement)\n }\n placeholder={\n this.collations.length === 0\n ? this._componentLocale.tabAdvanced.collation\n .disabledPlaceholder\n : \"\"\n }\n disabled={this.serverNames.length === 0}\n class=\"collation-combo-box\"\n part=\"collation\"\n >\n {renderFormItems(\n \"gxg-combo-box-item\",\n this.collations,\n \"collation\"\n )}\n </gxg-combo-box>\n <gxg-button\n type=\"secondary-icon-only\"\n icon=\"gemini-tools/reset\"\n class=\"collation-button\"\n part=\"reset-collation\"\n ></gxg-button>\n\n {/* #create data in knowledge base folder */}\n <gxg-form-checkbox\n label={\n this._componentLocale.tabAdvanced.createDataFilesInKbFolder\n }\n ref={(el: HTMLGxgFormCheckboxElement) =>\n (this.createDataFilesInKBFolderEl =\n el as HTMLGxgFormCheckboxElement)\n }\n alignTop\n checked={this.createDataFilesInKBFolder}\n disabled={this.createDataInKbDisabled}\n class=\"create-data-in-kb\"\n part=\"create-data-in-kb\"\n ></gxg-form-checkbox>\n </div>\n\n <div\n class={{\n \"knowledge-base-storage__col-right\": true,\n \"knowledge-base-storage__col-right--windows-authentication\":\n !this.userNameVisible\n }}\n >\n {/* #authentication type */}\n <gxg-combo-box\n label={\n this._componentLocale.tabAdvanced.authenticationType.label\n }\n disableFilter\n toolTip={config.tooltip}\n value={getSelectedGxOption(this.authenticationTypes)}\n ref={(el: HTMLGxgComboBoxElement) =>\n (this.authenticationTypeEl = el as HTMLGxgComboBoxElement)\n }\n placeholder={\n this.authenticationTypes.length === 0\n ? this._componentLocale.tabAdvanced.authenticationType\n .disabledPlaceholder\n : \"\"\n }\n disabled={this.authenticationTypes.length === 0}\n class=\"authentication-type\"\n part=\"authentication-type\"\n onValueChanged={this.evaluateAuthenticationType}\n >\n {renderFormItems(\n \"gxg-combo-box-item\",\n this.authenticationTypes,\n \"authentication-type\"\n )}\n </gxg-combo-box>\n\n {/* #user name */}\n {this.userNameVisible ? (\n <gxg-form-text\n labelPosition=\"above\"\n toolTip={config.tooltip}\n label={this._componentLocale.tabAdvanced.userName.label}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.userNameEl = el as HTMLGxgFormTextElement)\n }\n value={this.userName}\n class=\"user-name\"\n part=\"user-name\"\n ></gxg-form-text>\n ) : null}\n\n {/* #password */}\n {this.passwordVisible ? (\n <gxg-form-text\n labelPosition=\"above\"\n label={this._componentLocale.tabAdvanced.password.label}\n password\n toolTip={config.tooltip}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.passwordEl = el as HTMLGxgFormTextElement)\n }\n value={this.password}\n class=\"password\"\n part=\"password\"\n ></gxg-form-text>\n ) : null}\n\n {/* #save password */}\n {this.savePasswordVisible ? (\n <gxg-form-checkbox\n label={this._componentLocale.tabAdvanced.savePassword}\n ref={(el: HTMLGxgFormCheckboxElement) =>\n (this.savePasswordEl = el as HTMLGxgFormCheckboxElement)\n }\n checked={this.savePassword}\n class=\"save-password\"\n part=\"save-password\"\n ></gxg-form-checkbox>\n ) : null}\n </div>\n </div>\n </gx-ide-container>\n </gxg-tab>\n );\n };\n\n /** *****************************\n * 11.RENDER() FUNCTION\n ********************************/\n\n render(): void {\n return (\n <Host class=\"gx-ide-component\">\n <div class=\"gx-ide-main-wrapper\">\n <gx-ide-container\n noContentPadding\n slimmerFooter={config.gxIdeContainer.slimmerFooter}\n containerTitle={\n this.displayTitle ? this._componentLocale.componentName : null\n }\n >\n <header\n class={{\n \"header\": true,\n \"grid\": true,\n \"header--is-advanced\": this.isAdvanced\n }}\n slot=\"header\"\n >\n {/* #kb name */}\n <gxg-label labelPosition=\"start\" class=\"kb-label\" noMargin>\n {this._componentLocale.header.kbName}\n </gxg-label>\n <gxg-form-text\n labelPosition=\"start\"\n placeholder=\"SalesInventory\"\n max-width=\"100%\"\n value={this.kbName}\n toolTip={config.tooltip}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.kbNameEl = el as HTMLGxgFormTextElement)\n }\n part=\"kb-name\"\n class=\"kb-input\"\n ></gxg-form-text>\n\n {/* #location */}\n {this.isAdvanced\n ? [\n <gxg-label labelPosition=\"start\" class=\"location-label\">\n {this._componentLocale.header.kbLocation}\n </gxg-label>,\n <gxg-form-text\n labelPosition=\"start\"\n placeholder=\"C:\\Models\"\n maxWidth=\"100%\"\n value={this.kbLocation}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.locationEl = el as HTMLGxgFormTextElement)\n }\n disabled={!this.isAdvanced}\n part=\"kb-location\"\n class=\"location-input\"\n ></gxg-form-text>,\n <gxg-button\n type=\"secondary-icon-only\"\n icon=\"gemini-tools/folder\"\n onClick={this.selectLocationHandler}\n part=\"button-select-location\"\n class=\"location-icon\"\n ></gxg-button>\n ]\n : null}\n </header>\n\n {/* main */}\n <main class=\"gxi-full-height\">\n <gxg-tabs class=\"gxg-tabs\" noBorder>\n {this.isAdvanced ? (\n <gxg-tab-bar\n slot=\"tab-bar-container\"\n part=\"tab-bar\"\n displayBorder\n >\n <gxg-tab-button\n slot=\"tab-bar\"\n tabLabel={this._componentLocale.tabBasic.tabLabel}\n tab=\"basic\"\n is-selected\n hidden={!this.isAdvanced}\n part=\"tab-button-basic\"\n ></gxg-tab-button>\n <gxg-tab-button\n slot=\"tab-bar\"\n tabLabel={this._componentLocale.tabAdvanced.tabLabel}\n tab=\"advanced\"\n hidden={!this.isAdvanced}\n part=\"tab-button-advanced\"\n ></gxg-tab-button>\n </gxg-tab-bar>\n ) : null}\n\n {this.renderTabBasic()}\n {this.isAdvanced && this.renderTabAdvanced()}\n </gxg-tabs>\n </main>\n\n {/* footer */}\n {/* #cancel */}\n <gxg-button\n id=\"button-cancel\"\n type=\"outlined\"\n onClick={this.cancelKbHandler}\n part=\"button-cancel\"\n slot=\"footer-end\"\n >\n {this._componentLocale.footer.btnCancel}\n </gxg-button>\n {/* #create */}\n <gxg-button\n id=\"button-create\"\n type=\"primary-text-only\"\n onClick={this.createKbHandler}\n part=\"button-create\"\n slot=\"footer-end\"\n >\n {this._componentLocale.footer.btnCreate}\n </gxg-button>\n </gx-ide-container>\n </div>\n <gxg-shortcuts\n src={this.shortcutsSrc}\n ref={(el: HTMLGxgShortcutsElement) =>\n (this.gxgShortcutsEl = el as HTMLGxgShortcutsElement)\n }\n ></gxg-shortcuts>\n </Host>\n );\n }\n}\nexport interface NewKBData {\n authenticationType: string;\n collation: string;\n createDataFilesInKBFolder: boolean;\n databaseName: string;\n dataSource: string;\n frontEnds: string[];\n kbLocation: string;\n kbName: string;\n password: string;\n prototypingEnvironment: string;\n prototypingTarget: string;\n savePassword: boolean;\n serverName: string;\n userInterfaceLanguage: string;\n userName: string;\n}\n\nexport type CreateCallback = (data: NewKBData) => Promise<FormSubmitResult>;\n\nexport type CancelCallback = () => Promise<void>;\n\nexport type GetDataSourcesCallback = (\n selectedPrototypingEnvironmentId: string,\n selectedPrototypingTargetId: string\n) => Promise<GxOption[]>;\n\nexport type GetFrontEndsCallback = (\n selectedPrototypingEnvironmentId: string\n) => Promise<GxOption[]>;\n\nexport type SelectLocationCallback = () => Promise<string>;\n"],"version":3}
|
|
@@ -2,7 +2,7 @@ import { r as registerInstance, c as createEvent, a as getAssetPath, h, H as Hos
|
|
|
2
2
|
import { L as Locale } from './locale-3c32f251.js';
|
|
3
3
|
import { c as config } from './config-a492e15e.js';
|
|
4
4
|
|
|
5
|
-
const newObjectCss = ":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)}.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-container{display:flex;height:100%;width:100%;box-sizing:border-box}:host{display:block;border:1px solid var(--gxg-border-color--regular);background-color:var(--mer-color__surface)}.main{display:grid;grid-template-rows:1fr auto;overflow:auto;height:100%}.categories-types-container{display:flex;flex-direction:row;flex-shrink:1;overflow:hidden;border-bottom:1px solid var(--gx-ide-container-border-color)}.categories-types-container .categories{flex:1}.categories-types-container .types{flex:2}.api-description{display:flex;flex-direction:column;flex-shrink:0;gap:var(--gx-ide-grid-row-gap);padding:var(--gx-ide-grid-row-gap)}.form{display:grid;grid-template-columns:minmax(95px, auto) 1fr;grid-template-areas:\"name-label name-input\" \"description-label description-input\" \"module-label module-input\";gap:var(--gx-ide-grid-row-gap);column-gap:0}.form .name-label{grid-area:\"name-label\"}.form .name-input{grid-area:\"name-input\"}.form .description-label{grid-area:\"description-label\"}.form .description-input{grid-area:\"description-input\"}.form .module-label{grid-area:\"module-label\"}.form .module-input{grid-area:\"module-input\"}";
|
|
5
|
+
const newObjectCss = ":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)}.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-container{display:flex;height:100%;width:100%;box-sizing:border-box}p{margin:0}:host{display:block;border:1px solid var(--gxg-border-color--regular);background-color:var(--mer-color__surface)}.main{display:grid;grid-template-rows:1fr auto;overflow:auto;height:100%}.categories-types-container{display:flex;flex-direction:row;flex-shrink:1;overflow:hidden;border-bottom:1px solid var(--gx-ide-container-border-color)}.categories-types-container .categories{flex:1}.categories-types-container .types{flex:2}.api-description{display:flex;flex-direction:column;flex-shrink:0;gap:var(--gx-ide-grid-row-gap);padding:var(--gx-ide-grid-row-gap)}.form{display:grid;grid-template-columns:minmax(95px, auto) 1fr;grid-template-areas:\"name-label name-input\" \"description-label description-input\" \"module-label module-input\";gap:var(--gx-ide-grid-row-gap);column-gap:0}.form .name-label{grid-area:\"name-label\"}.form .name-input{grid-area:\"name-input\"}.form .description-label{grid-area:\"description-label\"}.form .description-input{grid-area:\"description-input\"}.form .module-label{grid-area:\"module-label\"}.form .module-input{grid-area:\"module-input\"}";
|
|
6
6
|
|
|
7
7
|
const GxIdeNewObject = class {
|
|
8
8
|
constructor(hostRef) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"gx-ide-new-object.entry.js","mappings":"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","names":[],"sources":["src/components/new-object/new-object.scss?tag=gx-ide-new-object&encapsulation=shadow","src/components/new-object/new-object.tsx"],"sourcesContent":["@import \"../../global/gx-ide-common.scss\";\n@import \"../../global/gx-ide-mixins.scss\";\n\n:host {\n display: block;\n border: 1px solid var(--gxg-border-color--regular);\n background-color: var(--mer-color__surface);\n}\n/*main*/\n.main {\n display: grid;\n grid-template-rows: 1fr auto;\n overflow: auto;\n height: 100%;\n}\n.categories-types-container {\n display: flex;\n flex-direction: row;\n flex-shrink: 1;\n overflow: hidden;\n border-bottom: 1px solid var(--gx-ide-container-border-color);\n .categories {\n flex: 1;\n }\n .types {\n flex: 2;\n }\n}\n.api-description {\n display: flex;\n flex-direction: column;\n flex-shrink: 0;\n gap: var(--gx-ide-grid-row-gap);\n padding: var(--gx-ide-grid-row-gap);\n}\n.form {\n display: grid;\n grid-template-columns: minmax(95px, auto) 1fr;\n grid-template-areas:\n \"name-label name-input\"\n \"description-label description-input\"\n \"module-label module-input\";\n gap: var(--gx-ide-grid-row-gap);\n column-gap: 0;\n\n .name-label {\n grid-area: \"name-label\";\n }\n .name-input {\n grid-area: \"name-input\";\n }\n .description-label {\n grid-area: \"description-label\";\n }\n .description-input {\n grid-area: \"description-input\";\n }\n .module-label {\n grid-area: \"module-label\";\n }\n .module-input {\n grid-area: \"module-input\";\n }\n}\n","/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Event,\n EventEmitter,\n Element,\n State,\n Watch,\n getAssetPath,\n Method\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\nimport { SelectionChangedEvent } from \"@genexus/gemini/dist/types/components/list-box/list-box\";\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../common/locale\";\nimport { config } from \"../../common/config\";\nimport { EntityData } from \"../../common/types\";\n\n@Component({\n tag: \"gx-ide-new-object\",\n styleUrl: \"new-object.scss\",\n shadow: { delegatesFocus: true },\n assetsDirs: [\"gx-ide-assets/new-object\"]\n})\nexport class GxIdeNewObject {\n /*\nINDEX:\n1.OWN PROPERTIES\n2.REFERENCE TO ELEMENTS\n3.STATE() VARIABLES\n4.PUBLIC PROPERTY API | WATCH'S\n5.EVENTS (EMIT)\n6.COMPONENT LIFECYCLE EVENTS\n7.LISTENERS\n8.PUBLIC METHODS API\n9.LOCAL METHODS\n10.RENDER() FUNCTION\n*/\n\n // 1.OWN PROPERTIES //\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private renderedFirstTime = false;\n private shortcutsSrc = getAssetPath(\n `./gx-ide-assets/new-object/shortcuts.json`\n );\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeNewObjectElement;\n\n /* References needed to collect data con \"Create\" button submit*/\n private nameEl!: HTMLGxgFormTextElement;\n private descriptionEl!: HTMLGxgFormTextElement;\n private moduleFolderEl!: HTMLGxIdeEntitySelectorElement;\n private descriptionModifiedByUser = false;\n private nameModifiedByUser = false;\n private gxgShortcutsEl: HTMLGxgShortcutsElement;\n private categoryListBox!: HTMLGxgListBoxElement;\n private typeListBox!: HTMLGxgListBoxElement;\n\n // 3.STATE() VARIABLES //\n\n @State() selectedCategory: TypeCategoryData | null;\n @State() selectedType: TypeData | null;\n @Watch(\"selectedType\")\n watchSelectedTypeHandler() {\n this.descriptionModifiedByUser = false;\n }\n @State() nameIsValid = false;\n // Name of the new object\n @State() name: string = undefined;\n // Description of the new object\n @State() description: string = undefined;\n\n // 4.PUBLIC PROPERTY API //\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Applies a shadow all around\n */\n @Prop() readonly shadow = false;\n\n /**\n * Array containing category list and its corresponding types\n */\n @Prop() readonly typeCategories!: TypeCategoryData[];\n\n /**\n * Current value for Module/Folder\n */\n @Prop() readonly parent: EntityData;\n\n /**\n * Default value for the Module/Folder field.\n */\n @Prop() readonly defaultParent: EntityData;\n\n /**\n * Allows you to define the type selected by default when instantiating the dialog. Represented by the type identifier\n */\n @Prop() readonly defaultTypeId: string;\n\n /**\n * Callback invoked when the action is executed on the Module/Folder filter (button '...'). It returns the information of the selected object (id and name) or 'undefined' if it was canceled.\n */\n @Prop() readonly selectModuleCallback: SelectModuleCallback;\n\n /**\n * Callback invoked when you must validate a name. Returns error message or 'undefined' if name is not valid.\n */\n @Prop() readonly validateNameCallback: ValidateNameCallback;\n\n /**\n * Callback invoked when user wants to cancel object creation\n */\n @Prop() readonly createCallback: CreateCallback;\n\n /**\n * Callback invoked when user wants to confirm object creation\n */\n @Prop() readonly cancelCallback: CancelCallback;\n\n // 5.EVENTS (EMIT) //\n\n /**\n * This event emm=its the data needed to create a new object\n */\n @Event() create: EventEmitter<NewObjectData>;\n\n /**\n * This event is trigger after a validation of the object name is made. Returns undefined if its valid, otherwise an error message\n */\n @Event() validateName: EventEmitter<string | undefined>;\n\n /**\n * This event emits the 'cancel' event\n */\n @Event() cancel: EventEmitter<boolean>;\n\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs.\n */\n @Event() componentDidLoadEvent: EventEmitter<boolean>;\n\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs\n */\n @Event() componentDidRenderFirstTime: EventEmitter<boolean>;\n\n // 6.COMPONENT LIFECYCLE EVENTS //\n\n async componentWillLoad() {\n this.init();\n this._componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n componentDidLoad() {\n this.nameEl.focus();\n this.setFirstFocusableElement();\n this.validateInitialName();\n this.componentDidLoadEvent.emit(true);\n }\n\n componentDidRender() {\n if (!this.renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this._componentLocale.componentName\n );\n this.renderedFirstTime = true;\n this.scrollIntoViewListBoxes();\n }\n }\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.gxgShortcutsEl.suspend = true;\n } else {\n this.gxgShortcutsEl.suspend = false;\n }\n }\n\n // 9.LOCAL METHODS //\n\n /**\n * Scroll into view on both list-boxes. Only makes sense if defaultTypeId is not undefined, since otherwise in both list-boxes the initial selected item should be the first one, in which case is not needed to do scrollIntoView. Only call this method after the first render on new-object.\n */\n private scrollIntoViewListBoxes = () => {\n if (this.defaultTypeId) {\n this.categoryListBox.scrollToSelected();\n this.typeListBox.scrollToSelected();\n }\n };\n\n private setFirstFocusableElement = () => {\n this.el.addEventListener(\"focus\", () => {\n this.nameEl.focus();\n });\n };\n\n private validateInitialName = async () => {\n const result: string | undefined = await this.validateNameCallback(\n this.name\n );\n this.validateNameHandler(result);\n };\n\n private renderModuleFolder = () => {\n if (this.selectedType.hasModule || this.selectedType.hasFolder) {\n let labelDescription = this._componentLocale.moduleFolder;\n if (!this.selectedType.hasFolder) {\n labelDescription = this._componentLocale.moduleOnly;\n } else if (!this.selectedType.hasModule) {\n labelDescription = this._componentLocale.folderOnly;\n }\n return [\n <gxg-label labelPosition=\"start\">{labelDescription}</gxg-label>,\n <gx-ide-entity-selector\n value={this.parent}\n defaultValue={this.defaultParent}\n selectEntityCallback={this.selectModuleCallback}\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.moduleFolderEl = el as HTMLGxIdeEntitySelectorElement)\n }\n id=\"module\"\n part=\"module\"\n ></gx-ide-entity-selector>\n ];\n }\n return null;\n };\n\n /**\n * This method defines the initial selected category and type, and it thens initializes tha name value.\n */\n private init = () => {\n const defaultTypeFound = this.setDefaultType(this.defaultTypeId);\n if (!defaultTypeFound) {\n this.selectedCategory = this.typeCategories[0];\n this.selectedType = this.selectedCategory.types[0];\n }\n if (this.selectedType && this.selectedType.name.length > 0) {\n this.name = this.getNameSuggestion(this.selectedType);\n this.description = this.selectedType.name;\n }\n };\n\n private setDefaultType = (typeId: string | undefined): boolean => {\n if (!typeId) {\n return false;\n }\n let found = false;\n outerLoop: for (let i = 0; i < this.typeCategories.length; i++) {\n for (let j = 0; j < this.typeCategories[i].types.length; j++) {\n const loopTypeId = this.typeCategories[i].types[j].id;\n if (loopTypeId === typeId) {\n this.selectedCategory = this.typeCategories[i];\n this.selectedType = this.typeCategories[i].types[j];\n found = true;\n break outerLoop;\n }\n }\n }\n return found;\n };\n\n private getNameSuggestion = (selectedType: TypeData) => {\n // Type name can include whitespaces, we need to replace all whitespaces to avoid invalid suggestions:\n return selectedType.name.replace(/\\s/g, \"\");\n };\n\n private nameValueHandler = (): string => {\n if (this.nameModifiedByUser) {\n return this.nameEl.value;\n } else {\n return this.getNameSuggestion(this.selectedType);\n }\n };\n\n private descriptionValueHandler = () => {\n if (this.nameModifiedByUser) {\n return this.descriptionEl.value;\n } else {\n return this.selectedType.name;\n }\n };\n\n private onInputNameHandler = (e: CustomEvent<string>) => {\n const name = e.detail;\n if (!this.descriptionModifiedByUser) {\n // description should be equal to name, unless the description was already modified by the user.\n this.descriptionEl.value = name;\n }\n this.nameModifiedByUser = true;\n };\n\n private onBlurNameHandler = async () => {\n const result: string | undefined = await this.validateNameCallback(\n this.nameEl.value\n );\n this.validateNameHandler(result);\n };\n\n private onNameValueChangedHandler = async (e: CustomEvent<string>) => {\n const name = e.detail;\n const result: string | undefined = await this.validateNameCallback(name);\n this.validateNameHandler(result);\n };\n\n private onInputDescriptionHandler = (e: CustomEvent<string>) => {\n this.description = e.detail;\n this.descriptionModifiedByUser = true;\n };\n\n /**\n * If the parameter is undefined, is because the name is valid. Otherwise, if it receives a string, is because the name is not valid. The string is the error message to display.\n */\n private validateNameHandler = (result: string | undefined): void => {\n if (result !== undefined) {\n // the name is not valid. display message\n this.nameEl.validationMessage = result;\n this.nameEl.validationStatus = \"error\";\n this.nameIsValid = false;\n } else {\n // valid name\n this.nameEl.validationMessage = null;\n this.nameEl.validationStatus = \"indeterminate\";\n this.nameIsValid = true;\n }\n };\n\n private createCallbackHandler = async (): Promise<void> => {\n const data: NewObjectData = {\n typeId: this.selectedType?.id,\n name: this.nameEl.value,\n description: !this.descriptionModifiedByUser\n ? undefined\n : this.descriptionEl.value,\n moduleId: this.moduleFolderEl?.value?.id\n };\n const result = await this.createCallback(data);\n this.validateNameHandler(result);\n };\n\n private cancelCallbackHandler = async (): Promise<void> => {\n await this.cancelCallback();\n };\n\n private categoryOnSelectionChangedHandler = (\n selectionEvent: CustomEvent<SelectionChangedEvent>\n ): void => {\n const selection = selectionEvent.detail.items;\n if (selection.length > 0) {\n const selectedCategory = this.typeCategories[selection[0].index];\n if (selectedCategory) {\n this.selectedCategory = selectedCategory;\n if (selectedCategory.types.length > 0) {\n this.selectedType = selectedCategory.types[0];\n }\n }\n }\n };\n\n private typeOnSelectionChangedHandler = (\n selectionEvent: CustomEvent<SelectionChangedEvent>\n ) => {\n const selection = selectionEvent.detail.items;\n if (selection.length > 0) {\n const selected = selection[0];\n this.selectedType = this.selectedCategory.types[selected.index];\n }\n };\n\n // 10.LOCAL METHODS (RENDER) //\n\n // 11.RENDER() FUNCTION //\n\n render() {\n return (\n <Host class=\"gx-ide-component\">\n <div class=\"gx-ide-main-wrapper\">\n <gx-ide-container\n noContentPadding\n noContentGap\n slimmerFooter={config.gxIdeContainer.slimmerFooter}\n containerTitle={\n this.displayTitle ? this._componentLocale.componentName : null\n }\n noHeadingBorder\n >\n <main class=\"main\">\n <div class=\"categories-types-container\">\n <div class=\"categories\">\n {/* select a category listbox*/}\n {this.typeCategories.length > 0 ? (\n <gxg-list-box\n class=\"category\"\n single-selection\n noBorder\n borderEnd\n the-title={this._componentLocale.categorySelectionTitle}\n onSelectionChanged={\n this.categoryOnSelectionChangedHandler\n }\n ref={el =>\n (this.categoryListBox = el as HTMLGxgListBoxElement)\n }\n >\n {this.typeCategories.map(category => (\n <gxg-list-box-item\n key={category.id}\n value={category.id}\n icon={category.icon}\n part={`category-${category.id}`}\n selected={this.selectedCategory.id === category.id}\n >\n {category.name}\n </gxg-list-box-item>\n ))}\n </gxg-list-box>\n ) : null}\n </div>\n <div class=\"types\">\n {/* types listbox*/}\n {this.selectedCategory.types.length > 0 ? (\n <gxg-list-box\n class=\"types\"\n single-selection\n noBorder\n theTitle={\n this.selectedCategory.name\n ? `${this.selectedCategory.name} ${this._componentLocale.typeSelectionTitleSuffix}`\n : this._componentLocale.typeSelectionTitle\n }\n key={this.selectedCategory.id}\n onSelectionChanged={this.typeOnSelectionChangedHandler}\n ref={el =>\n (this.typeListBox = el as HTMLGxgListBoxElement)\n }\n >\n {this.selectedCategory.types.map(type => (\n <gxg-list-box-item\n key={`${this.selectedCategory.id}-${type.id}`}\n icon={type.icon}\n part={`type-${this.selectedCategory.id}-${type.id}`}\n selected={this.selectedType.id === type.id}\n >\n {type.name}\n </gxg-list-box-item>\n ))}\n </gxg-list-box>\n ) : (\n <p>No Categories to display</p>\n )}\n </div>\n </div>\n <div class=\"api-description\">\n {/* api description title*/}\n <gxg-title type=\"title-05\">\n {this.selectedType?.description}\n </gxg-title>\n <div class=\"form\">\n {/* selected type name */}\n <gxg-label labelPosition=\"start\">\n {this._componentLocale.objectName}\n </gxg-label>\n <gxg-form-text\n label-position=\"start\"\n placeholder=\"Name\"\n max-width=\"100%\"\n value={this.nameValueHandler()}\n toolTip={config.tooltip}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.nameEl = el as HTMLGxgFormTextElement)\n }\n onInput={this.onInputNameHandler as any}\n onBlur={this.onBlurNameHandler}\n onValueChanged={this.onNameValueChangedHandler}\n debounce\n part=\"name\"\n display-validation-styles\n display-validation-message\n ></gxg-form-text>\n\n {/* description */}\n <gxg-label labelPosition=\"start\">\n {this._componentLocale.objectDescription}\n </gxg-label>\n <gxg-form-text\n label-position=\"start\"\n placeholder=\"Description\"\n max-width=\"100%\"\n value={this.descriptionValueHandler()}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.descriptionEl = el as HTMLGxgFormTextElement)\n }\n onInput={this.onInputDescriptionHandler as any}\n part=\"description\"\n display-validation-styles\n display-validation-message\n ></gxg-form-text>\n\n {this.renderModuleFolder()}\n </div>\n </div>\n </main>\n\n {/* Footer*/}\n {/* cancel button*/}\n <gxg-button\n id=\"button-cancel\"\n slot=\"footer-end\"\n type=\"outlined\"\n onClick={this.cancelCallbackHandler}\n part=\"gxg-button gxg-button--cancel\"\n >\n {this._componentLocale.footer.btnCancel}\n </gxg-button>\n {/* create button*/}\n <gxg-button\n id=\"button-create\"\n slot=\"footer-end\"\n type=\"primary-text-only\"\n onClick={this.createCallbackHandler}\n disabled={!this.nameIsValid}\n part=\"gxg-button gxg-button--create\"\n >\n {this._componentLocale.footer.btnCreate}\n </gxg-button>\n </gx-ide-container>\n </div>\n <gxg-shortcuts\n src={this.shortcutsSrc}\n ref={(el: HTMLGxgShortcutsElement) =>\n (this.gxgShortcutsEl = el as HTMLGxgShortcutsElement)\n }\n ></gxg-shortcuts>\n </Host>\n );\n }\n}\n\nexport interface NewObjectData {\n typeId: string;\n name: string;\n description: string | undefined;\n moduleId: string;\n}\n\nexport type ValidateNameCallback = (\n name: string\n) => Promise<string | undefined>;\n\nexport type SelectModuleCallback = () => Promise<EntityData | undefined>;\n\nexport type CreateCallback = (\n data: NewObjectData\n) => Promise<string | undefined>;\n\nexport type CancelCallback = () => Promise<void>;\n\nexport type TypeCategoryData = {\n id: string;\n name: string;\n icon: string;\n types: TypeData[];\n};\n\nexport type TypeData = {\n id: string;\n name: string;\n icon: string;\n hasModule: boolean;\n hasFolder: boolean;\n description: string;\n};\n"],"version":3}
|
|
1
|
+
{"file":"gx-ide-new-object.entry.js","mappings":"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","names":[],"sources":["src/components/new-object/new-object.scss?tag=gx-ide-new-object&encapsulation=shadow","src/components/new-object/new-object.tsx"],"sourcesContent":["@import \"../../global/gx-ide-common.scss\";\n@import \"../../global/gx-ide-mixins.scss\";\n\n:host {\n display: block;\n border: 1px solid var(--gxg-border-color--regular);\n background-color: var(--mer-color__surface);\n}\n/*main*/\n.main {\n display: grid;\n grid-template-rows: 1fr auto;\n overflow: auto;\n height: 100%;\n}\n.categories-types-container {\n display: flex;\n flex-direction: row;\n flex-shrink: 1;\n overflow: hidden;\n border-bottom: 1px solid var(--gx-ide-container-border-color);\n .categories {\n flex: 1;\n }\n .types {\n flex: 2;\n }\n}\n.api-description {\n display: flex;\n flex-direction: column;\n flex-shrink: 0;\n gap: var(--gx-ide-grid-row-gap);\n padding: var(--gx-ide-grid-row-gap);\n}\n.form {\n display: grid;\n grid-template-columns: minmax(95px, auto) 1fr;\n grid-template-areas:\n \"name-label name-input\"\n \"description-label description-input\"\n \"module-label module-input\";\n gap: var(--gx-ide-grid-row-gap);\n column-gap: 0;\n\n .name-label {\n grid-area: \"name-label\";\n }\n .name-input {\n grid-area: \"name-input\";\n }\n .description-label {\n grid-area: \"description-label\";\n }\n .description-input {\n grid-area: \"description-input\";\n }\n .module-label {\n grid-area: \"module-label\";\n }\n .module-input {\n grid-area: \"module-input\";\n }\n}\n","/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Event,\n EventEmitter,\n Element,\n State,\n Watch,\n getAssetPath,\n Method\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\nimport { SelectionChangedEvent } from \"@genexus/gemini/dist/types/components/list-box/list-box\";\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../common/locale\";\nimport { config } from \"../../common/config\";\nimport { EntityData } from \"../../common/types\";\n\n@Component({\n tag: \"gx-ide-new-object\",\n styleUrl: \"new-object.scss\",\n shadow: { delegatesFocus: true },\n assetsDirs: [\"gx-ide-assets/new-object\"]\n})\nexport class GxIdeNewObject {\n /*\nINDEX:\n1.OWN PROPERTIES\n2.REFERENCE TO ELEMENTS\n3.STATE() VARIABLES\n4.PUBLIC PROPERTY API | WATCH'S\n5.EVENTS (EMIT)\n6.COMPONENT LIFECYCLE EVENTS\n7.LISTENERS\n8.PUBLIC METHODS API\n9.LOCAL METHODS\n10.RENDER() FUNCTION\n*/\n\n // 1.OWN PROPERTIES //\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private renderedFirstTime = false;\n private shortcutsSrc = getAssetPath(\n `./gx-ide-assets/new-object/shortcuts.json`\n );\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeNewObjectElement;\n\n /* References needed to collect data con \"Create\" button submit*/\n private nameEl!: HTMLGxgFormTextElement;\n private descriptionEl!: HTMLGxgFormTextElement;\n private moduleFolderEl!: HTMLGxIdeEntitySelectorElement;\n private descriptionModifiedByUser = false;\n private nameModifiedByUser = false;\n private gxgShortcutsEl: HTMLGxgShortcutsElement;\n private categoryListBox!: HTMLGxgListBoxElement;\n private typeListBox!: HTMLGxgListBoxElement;\n\n // 3.STATE() VARIABLES //\n\n @State() selectedCategory: TypeCategoryData | null;\n @State() selectedType: TypeData | null;\n @Watch(\"selectedType\")\n watchSelectedTypeHandler() {\n this.descriptionModifiedByUser = false;\n }\n @State() nameIsValid = false;\n // Name of the new object\n @State() name: string = undefined;\n // Description of the new object\n @State() description: string = undefined;\n\n // 4.PUBLIC PROPERTY API //\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Applies a shadow all around\n */\n @Prop() readonly shadow = false;\n\n /**\n * Array containing category list and its corresponding types\n */\n @Prop() readonly typeCategories!: TypeCategoryData[];\n\n /**\n * Current value for Module/Folder\n */\n @Prop() readonly parent: EntityData;\n\n /**\n * Default value for the Module/Folder field.\n */\n @Prop() readonly defaultParent: EntityData;\n\n /**\n * Allows you to define the type selected by default when instantiating the dialog. Represented by the type identifier\n */\n @Prop() readonly defaultTypeId: string;\n\n /**\n * Callback invoked when the action is executed on the Module/Folder filter (button '...'). It returns the information of the selected object (id and name) or 'undefined' if it was canceled.\n */\n @Prop() readonly selectModuleCallback: SelectModuleCallback;\n\n /**\n * Callback invoked when you must validate a name. Returns error message or 'undefined' if name is not valid.\n */\n @Prop() readonly validateNameCallback: ValidateNameCallback;\n\n /**\n * Callback invoked when user wants to cancel object creation\n */\n @Prop() readonly createCallback: CreateCallback;\n\n /**\n * Callback invoked when user wants to confirm object creation\n */\n @Prop() readonly cancelCallback: CancelCallback;\n\n // 5.EVENTS (EMIT) //\n\n /**\n * This event emm=its the data needed to create a new object\n */\n @Event() create: EventEmitter<NewObjectData>;\n\n /**\n * This event is trigger after a validation of the object name is made. Returns undefined if its valid, otherwise an error message\n */\n @Event() validateName: EventEmitter<string | undefined>;\n\n /**\n * This event emits the 'cancel' event\n */\n @Event() cancel: EventEmitter<boolean>;\n\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs.\n */\n @Event() componentDidLoadEvent: EventEmitter<boolean>;\n\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs\n */\n @Event() componentDidRenderFirstTime: EventEmitter<boolean>;\n\n // 6.COMPONENT LIFECYCLE EVENTS //\n\n async componentWillLoad() {\n this.init();\n this._componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n componentDidLoad() {\n this.nameEl.focus();\n this.setFirstFocusableElement();\n this.validateInitialName();\n this.componentDidLoadEvent.emit(true);\n }\n\n componentDidRender() {\n if (!this.renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this._componentLocale.componentName\n );\n this.renderedFirstTime = true;\n this.scrollIntoViewListBoxes();\n }\n }\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.gxgShortcutsEl.suspend = true;\n } else {\n this.gxgShortcutsEl.suspend = false;\n }\n }\n\n // 9.LOCAL METHODS //\n\n /**\n * Scroll into view on both list-boxes. Only makes sense if defaultTypeId is not undefined, since otherwise in both list-boxes the initial selected item should be the first one, in which case is not needed to do scrollIntoView. Only call this method after the first render on new-object.\n */\n private scrollIntoViewListBoxes = () => {\n if (this.defaultTypeId) {\n this.categoryListBox.scrollToSelected();\n this.typeListBox.scrollToSelected();\n }\n };\n\n private setFirstFocusableElement = () => {\n this.el.addEventListener(\"focus\", () => {\n this.nameEl.focus();\n });\n };\n\n private validateInitialName = async () => {\n const result: string | undefined = await this.validateNameCallback(\n this.name\n );\n this.validateNameHandler(result);\n };\n\n private renderModuleFolder = () => {\n if (this.selectedType.hasModule || this.selectedType.hasFolder) {\n let labelDescription = this._componentLocale.moduleFolder;\n if (!this.selectedType.hasFolder) {\n labelDescription = this._componentLocale.moduleOnly;\n } else if (!this.selectedType.hasModule) {\n labelDescription = this._componentLocale.folderOnly;\n }\n return [\n <gxg-label labelPosition=\"start\">{labelDescription}</gxg-label>,\n <gx-ide-entity-selector\n value={this.parent}\n defaultValue={this.defaultParent}\n selectEntityCallback={this.selectModuleCallback}\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.moduleFolderEl = el as HTMLGxIdeEntitySelectorElement)\n }\n id=\"module\"\n part=\"module\"\n ></gx-ide-entity-selector>\n ];\n }\n return null;\n };\n\n /**\n * This method defines the initial selected category and type, and it thens initializes tha name value.\n */\n private init = () => {\n const defaultTypeFound = this.setDefaultType(this.defaultTypeId);\n if (!defaultTypeFound) {\n this.selectedCategory = this.typeCategories[0];\n this.selectedType = this.selectedCategory.types[0];\n }\n if (this.selectedType && this.selectedType.name.length > 0) {\n this.name = this.getNameSuggestion(this.selectedType);\n this.description = this.selectedType.name;\n }\n };\n\n private setDefaultType = (typeId: string | undefined): boolean => {\n if (!typeId) {\n return false;\n }\n let found = false;\n outerLoop: for (let i = 0; i < this.typeCategories.length; i++) {\n for (let j = 0; j < this.typeCategories[i].types.length; j++) {\n const loopTypeId = this.typeCategories[i].types[j].id;\n if (loopTypeId === typeId) {\n this.selectedCategory = this.typeCategories[i];\n this.selectedType = this.typeCategories[i].types[j];\n found = true;\n break outerLoop;\n }\n }\n }\n return found;\n };\n\n private getNameSuggestion = (selectedType: TypeData) => {\n // Type name can include whitespaces, we need to replace all whitespaces to avoid invalid suggestions:\n return selectedType.name.replace(/\\s/g, \"\");\n };\n\n private nameValueHandler = (): string => {\n if (this.nameModifiedByUser) {\n return this.nameEl.value;\n } else {\n return this.getNameSuggestion(this.selectedType);\n }\n };\n\n private descriptionValueHandler = () => {\n if (this.nameModifiedByUser) {\n return this.descriptionEl.value;\n } else {\n return this.selectedType.name;\n }\n };\n\n private onInputNameHandler = (e: CustomEvent<string>) => {\n const name = e.detail;\n if (!this.descriptionModifiedByUser) {\n // description should be equal to name, unless the description was already modified by the user.\n this.descriptionEl.value = name;\n }\n this.nameModifiedByUser = true;\n };\n\n private onBlurNameHandler = async () => {\n const result: string | undefined = await this.validateNameCallback(\n this.nameEl.value\n );\n this.validateNameHandler(result);\n };\n\n private onNameValueChangedHandler = async (e: CustomEvent<string>) => {\n const name = e.detail;\n const result: string | undefined = await this.validateNameCallback(name);\n this.validateNameHandler(result);\n };\n\n private onInputDescriptionHandler = (e: CustomEvent<string>) => {\n this.description = e.detail;\n this.descriptionModifiedByUser = true;\n };\n\n /**\n * If the parameter is undefined, is because the name is valid. Otherwise, if it receives a string, is because the name is not valid. The string is the error message to display.\n */\n private validateNameHandler = (result: string | undefined): void => {\n if (result !== undefined) {\n // the name is not valid. display message\n this.nameEl.validationMessage = result;\n this.nameEl.validationStatus = \"error\";\n this.nameIsValid = false;\n } else {\n // valid name\n this.nameEl.validationMessage = null;\n this.nameEl.validationStatus = \"indeterminate\";\n this.nameIsValid = true;\n }\n };\n\n private createCallbackHandler = async (): Promise<void> => {\n const data: NewObjectData = {\n typeId: this.selectedType?.id,\n name: this.nameEl.value,\n description: !this.descriptionModifiedByUser\n ? undefined\n : this.descriptionEl.value,\n moduleId: this.moduleFolderEl?.value?.id\n };\n const result = await this.createCallback(data);\n this.validateNameHandler(result);\n };\n\n private cancelCallbackHandler = async (): Promise<void> => {\n await this.cancelCallback();\n };\n\n private categoryOnSelectionChangedHandler = (\n selectionEvent: CustomEvent<SelectionChangedEvent>\n ): void => {\n const selection = selectionEvent.detail.items;\n if (selection.length > 0) {\n const selectedCategory = this.typeCategories[selection[0].index];\n if (selectedCategory) {\n this.selectedCategory = selectedCategory;\n if (selectedCategory.types.length > 0) {\n this.selectedType = selectedCategory.types[0];\n }\n }\n }\n };\n\n private typeOnSelectionChangedHandler = (\n selectionEvent: CustomEvent<SelectionChangedEvent>\n ) => {\n const selection = selectionEvent.detail.items;\n if (selection.length > 0) {\n const selected = selection[0];\n this.selectedType = this.selectedCategory.types[selected.index];\n }\n };\n\n // 10.LOCAL METHODS (RENDER) //\n\n // 11.RENDER() FUNCTION //\n\n render() {\n return (\n <Host class=\"gx-ide-component\">\n <div class=\"gx-ide-main-wrapper\">\n <gx-ide-container\n noContentPadding\n noContentGap\n slimmerFooter={config.gxIdeContainer.slimmerFooter}\n containerTitle={\n this.displayTitle ? this._componentLocale.componentName : null\n }\n noHeadingBorder\n >\n <main class=\"main\">\n <div class=\"categories-types-container\">\n <div class=\"categories\">\n {/* select a category listbox*/}\n {this.typeCategories.length > 0 ? (\n <gxg-list-box\n class=\"category\"\n single-selection\n noBorder\n borderEnd\n the-title={this._componentLocale.categorySelectionTitle}\n onSelectionChanged={\n this.categoryOnSelectionChangedHandler\n }\n ref={el =>\n (this.categoryListBox = el as HTMLGxgListBoxElement)\n }\n >\n {this.typeCategories.map(category => (\n <gxg-list-box-item\n key={category.id}\n value={category.id}\n icon={category.icon}\n part={`category-${category.id}`}\n selected={this.selectedCategory.id === category.id}\n >\n {category.name}\n </gxg-list-box-item>\n ))}\n </gxg-list-box>\n ) : null}\n </div>\n <div class=\"types\">\n {/* types listbox*/}\n {this.selectedCategory.types.length > 0 ? (\n <gxg-list-box\n class=\"types\"\n single-selection\n noBorder\n theTitle={\n this.selectedCategory.name\n ? `${this.selectedCategory.name} ${this._componentLocale.typeSelectionTitleSuffix}`\n : this._componentLocale.typeSelectionTitle\n }\n key={this.selectedCategory.id}\n onSelectionChanged={this.typeOnSelectionChangedHandler}\n ref={el =>\n (this.typeListBox = el as HTMLGxgListBoxElement)\n }\n >\n {this.selectedCategory.types.map(type => (\n <gxg-list-box-item\n key={`${this.selectedCategory.id}-${type.id}`}\n icon={type.icon}\n part={`type-${this.selectedCategory.id}-${type.id}`}\n selected={this.selectedType.id === type.id}\n >\n {type.name}\n </gxg-list-box-item>\n ))}\n </gxg-list-box>\n ) : (\n <p>No Categories to display</p>\n )}\n </div>\n </div>\n <div class=\"api-description\">\n {/* api description title*/}\n <gxg-title type=\"title-05\">\n {this.selectedType?.description}\n </gxg-title>\n <div class=\"form\">\n {/* selected type name */}\n <gxg-label labelPosition=\"start\">\n {this._componentLocale.objectName}\n </gxg-label>\n <gxg-form-text\n label-position=\"start\"\n placeholder=\"Name\"\n max-width=\"100%\"\n value={this.nameValueHandler()}\n toolTip={config.tooltip}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.nameEl = el as HTMLGxgFormTextElement)\n }\n onInput={this.onInputNameHandler as any}\n onBlur={this.onBlurNameHandler}\n onValueChanged={this.onNameValueChangedHandler}\n debounce\n part=\"name\"\n display-validation-styles\n display-validation-message\n ></gxg-form-text>\n\n {/* description */}\n <gxg-label labelPosition=\"start\">\n {this._componentLocale.objectDescription}\n </gxg-label>\n <gxg-form-text\n label-position=\"start\"\n placeholder=\"Description\"\n max-width=\"100%\"\n value={this.descriptionValueHandler()}\n ref={(el: HTMLGxgFormTextElement) =>\n (this.descriptionEl = el as HTMLGxgFormTextElement)\n }\n onInput={this.onInputDescriptionHandler as any}\n part=\"description\"\n display-validation-styles\n display-validation-message\n ></gxg-form-text>\n\n {this.renderModuleFolder()}\n </div>\n </div>\n </main>\n\n {/* Footer*/}\n {/* cancel button*/}\n <gxg-button\n id=\"button-cancel\"\n slot=\"footer-end\"\n type=\"outlined\"\n onClick={this.cancelCallbackHandler}\n part=\"gxg-button gxg-button--cancel\"\n >\n {this._componentLocale.footer.btnCancel}\n </gxg-button>\n {/* create button*/}\n <gxg-button\n id=\"button-create\"\n slot=\"footer-end\"\n type=\"primary-text-only\"\n onClick={this.createCallbackHandler}\n disabled={!this.nameIsValid}\n part=\"gxg-button gxg-button--create\"\n >\n {this._componentLocale.footer.btnCreate}\n </gxg-button>\n </gx-ide-container>\n </div>\n <gxg-shortcuts\n src={this.shortcutsSrc}\n ref={(el: HTMLGxgShortcutsElement) =>\n (this.gxgShortcutsEl = el as HTMLGxgShortcutsElement)\n }\n ></gxg-shortcuts>\n </Host>\n );\n }\n}\n\nexport interface NewObjectData {\n typeId: string;\n name: string;\n description: string | undefined;\n moduleId: string;\n}\n\nexport type ValidateNameCallback = (\n name: string\n) => Promise<string | undefined>;\n\nexport type SelectModuleCallback = () => Promise<EntityData | undefined>;\n\nexport type CreateCallback = (\n data: NewObjectData\n) => Promise<string | undefined>;\n\nexport type CancelCallback = () => Promise<void>;\n\nexport type TypeCategoryData = {\n id: string;\n name: string;\n icon: string;\n types: TypeData[];\n};\n\nexport type TypeData = {\n id: string;\n name: string;\n icon: string;\n hasModule: boolean;\n hasFolder: boolean;\n description: string;\n};\n"],"version":3}
|