@genexus/genexus-ide-ui 1.1.5 → 1.1.6
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/{code-render-0e9837c4.js → code-render-55d37767.js} +3 -3
- package/dist/cjs/code-render-55d37767.js.map +1 -0
- package/dist/cjs/{form-validation-ffe2b957.js → form-validation-178cf461.js} +3 -7
- package/dist/cjs/form-validation-178cf461.js.map +1 -0
- package/dist/cjs/gx-ide-about.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js +15 -9
- package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-ai-message.cjs.entry.js +2 -2
- package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +4 -3
- package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-bpm-assign-roles.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-bpm-export-xpdl.cjs.entry.js +5 -3
- package/dist/cjs/gx-ide-bpm-export-xpdl.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-bpm-import-files.cjs.entry.js +3 -2
- package/dist/cjs/gx-ide-bpm-import-files.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-bpm-import-gxpm.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-bpm-objects-selector.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-bpm-sync-gam-roles.cjs.entry.js +3 -2
- package/dist/cjs/gx-ide-bpm-sync-gam-roles.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-bpm-task-documents.cjs.entry.js +11 -9
- package/dist/cjs/gx-ide-bpm-task-documents.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-bpm-timer-duration.cjs.entry.js +3 -2
- package/dist/cjs/gx-ide-bpm-timer-duration.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-card.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-chat-container_2.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js +23 -18
- package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-container_2.cjs.entry.js +2 -1
- package/dist/cjs/gx-ide-container_2.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +10 -6
- package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-current-user-info.cjs.entry.js +4 -3
- package/dist/cjs/gx-ide-current-user-info.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +5 -4
- package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-data-selector.cjs.entry.js +4 -3
- package/dist/cjs/gx-ide-data-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-data-type-selector.cjs.entry.js +5 -4
- package/dist/cjs/gx-ide-data-type-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-deployment-tool.cjs.entry.js +20 -16
- package/dist/cjs/gx-ide-deployment-tool.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-design-import.cjs.entry.js +28 -20
- package/dist/cjs/gx-ide-design-import.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-directory-selector.cjs.entry.js +2 -1
- package/dist/cjs/gx-ide-directory-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-entity-selector.cjs.entry.js +5 -3
- package/dist/cjs/gx-ide-entity-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-file-uploader.cjs.entry.js +45 -60
- package/dist/cjs/gx-ide-file-uploader.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js +3 -2
- package/dist/cjs/gx-ide-gam-installation-settings.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-import.cjs.entry.js +8 -5
- 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 +1 -1
- package/dist/cjs/gx-ide-list-selector_2.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js +5 -14
- package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js +3 -3
- package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-navigation-report.cjs.entry.js +7 -4
- package/dist/cjs/gx-ide-navigation-report.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-new-environment.cjs.entry.js +18 -13
- package/dist/cjs/gx-ide-new-environment.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-new-kb.cjs.entry.js +35 -31
- package/dist/cjs/gx-ide-new-kb.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-new-object.cjs.entry.js +9 -6
- package/dist/cjs/gx-ide-new-object.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-new-version.cjs.entry.js +3 -3
- package/dist/cjs/gx-ide-new-version.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-object-selector.cjs.entry.js +7 -6
- package/dist/cjs/gx-ide-object-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-open-api-import.cjs.entry.js +9 -5
- package/dist/cjs/gx-ide-open-api-import.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-references.cjs.entry.js +23 -18
- package/dist/cjs/gx-ide-references.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-sc-chat-container.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js +13 -7
- package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-select-user-team.cjs.entry.js +4 -3
- package/dist/cjs/gx-ide-select-user-team.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-share-kb.cjs.entry.js +7 -4
- package/dist/cjs/gx-ide-share-kb.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-sign-in-team.cjs.entry.js +3 -2
- package/dist/cjs/gx-ide-sign-in-team.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-sign-in.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-splash.cjs.entry.js +4 -3
- package/dist/cjs/gx-ide-splash.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-start-page.cjs.entry.js +7 -4
- 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-team-dev-commit.cjs.entry.js +2 -2
- package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +2 -2
- 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.cjs.entry.js +4 -3
- 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-welcome-page.cjs.entry.js +8 -6
- package/dist/cjs/gx-ide-welcome-page.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-wf-settings.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js +14 -8
- package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-ww-files.cjs.entry.js +21 -18
- package/dist/cjs/gx-ide-ww-files.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-ww-images.cjs.entry.js +7 -18
- package/dist/cjs/gx-ide-ww-images.cjs.entry.js.map +1 -1
- package/dist/cjs/{helpers-e5a13fa5.js → helpers-30f109a4.js} +6 -6
- package/dist/cjs/helpers-30f109a4.js.map +1 -0
- package/dist/cjs/index.cjs.js +7 -1
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/{locale-36b93b1b.js → locale-ff30a5f3.js} +4 -4
- package/dist/cjs/locale-ff30a5f3.js.map +1 -0
- package/dist/collection/common/common.js +7 -4
- package/dist/collection/common/common.js.map +1 -1
- package/dist/collection/common/form-validation.js +4 -7
- package/dist/collection/common/form-validation.js.map +1 -1
- package/dist/collection/common/helpers.js +10 -9
- package/dist/collection/common/helpers.js.map +1 -1
- package/dist/collection/common/images/ai-avatar.svg +11 -0
- package/dist/collection/common/locale.js +3 -3
- package/dist/collection/common/locale.js.map +1 -1
- package/dist/collection/common/render-suggest.js +1 -1
- package/dist/collection/common/render-suggest.js.map +1 -1
- package/dist/collection/components/_helpers/container/container.js +2 -1
- package/dist/collection/components/_helpers/container/container.js.map +1 -1
- package/dist/collection/components/_helpers/directory-selector/directory-selector.js +2 -1
- package/dist/collection/components/_helpers/directory-selector/directory-selector.js.map +1 -1
- package/dist/collection/components/_helpers/entity-selector/entity-selector.js +4 -2
- package/dist/collection/components/_helpers/entity-selector/entity-selector.js.map +1 -1
- 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/ai-assistant/ai-assistant.js +14 -8
- package/dist/collection/components/ai-assistant/ai-assistant.js.map +1 -1
- package/dist/collection/components/bpm/application-declaration/bpm-app-declaration.js +3 -2
- package/dist/collection/components/bpm/application-declaration/bpm-app-declaration.js.map +1 -1
- package/dist/collection/components/bpm/export-xpdl/bpm-export-xpdl.js +4 -2
- package/dist/collection/components/bpm/export-xpdl/bpm-export-xpdl.js.map +1 -1
- package/dist/collection/components/bpm/import-files/bpm-import-files.js +2 -1
- package/dist/collection/components/bpm/import-files/bpm-import-files.js.map +1 -1
- package/dist/collection/components/bpm/sync-gam-roles/bpm-sync-gam-roles.js +2 -1
- package/dist/collection/components/bpm/sync-gam-roles/bpm-sync-gam-roles.js.map +1 -1
- package/dist/collection/components/bpm/task-documents/helpers.js +1 -1
- package/dist/collection/components/bpm/task-documents/helpers.js.map +1 -1
- package/dist/collection/components/bpm/task-documents/task-documents.js +9 -7
- package/dist/collection/components/bpm/task-documents/task-documents.js.map +1 -1
- package/dist/collection/components/bpm/timer-duration/bpm-timer-duration.js +2 -1
- package/dist/collection/components/bpm/timer-duration/bpm-timer-duration.js.map +1 -1
- package/dist/collection/components/chat/code-render.js +2 -2
- package/dist/collection/components/chat/code-render.js.map +1 -1
- package/dist/collection/components/current-user-info/current-user-info.js +3 -2
- package/dist/collection/components/current-user-info/current-user-info.js.map +1 -1
- package/dist/collection/components/dashboard-home/dashboard-home.js +3 -2
- package/dist/collection/components/dashboard-home/dashboard-home.js.map +1 -1
- package/dist/collection/components/data-selector/data-selector.js +3 -2
- package/dist/collection/components/data-selector/data-selector.js.map +1 -1
- package/dist/collection/components/data-type-selector/data-type-selector.js +4 -3
- package/dist/collection/components/data-type-selector/data-type-selector.js.map +1 -1
- package/dist/collection/components/deployment-tool/deployment-tool.js +18 -11
- package/dist/collection/components/deployment-tool/deployment-tool.js.map +1 -1
- package/dist/collection/components/deployment-tool/helpers.js +1 -4
- package/dist/collection/components/deployment-tool/helpers.js.map +1 -1
- package/dist/collection/components/design-import/design-import.js +26 -18
- package/dist/collection/components/design-import/design-import.js.map +1 -1
- package/dist/collection/components/design-import/helpers.js +1 -1
- package/dist/collection/components/design-import/helpers.js.map +1 -1
- package/dist/collection/components/file-uploader/file-uploader.js +44 -59
- package/dist/collection/components/file-uploader/file-uploader.js.map +1 -1
- package/dist/collection/components/gam-installation-settings/gam-installation-settings.js +2 -1
- package/dist/collection/components/gam-installation-settings/gam-installation-settings.js.map +1 -1
- package/dist/collection/components/kb-manager-import/kb-manager-import.js +7 -4
- package/dist/collection/components/kb-manager-import/kb-manager-import.js.map +1 -1
- package/dist/collection/components/modules/edit-module-server/edit-module-server.js +2 -1
- package/dist/collection/components/modules/edit-module-server/edit-module-server.js.map +1 -1
- package/dist/collection/components/modules/manage-module-references/manage-module-references.js +2 -2
- package/dist/collection/components/modules/manage-module-references/manage-module-references.js.map +1 -1
- package/dist/collection/components/modules/manage-module-references-v2/manage-module-references-v2.js +4 -13
- package/dist/collection/components/modules/manage-module-references-v2/manage-module-references-v2.js.map +1 -1
- package/dist/collection/components/navigation-report/navigation-report.js +6 -3
- package/dist/collection/components/navigation-report/navigation-report.js.map +1 -1
- package/dist/collection/components/new-environment/new-environment.js +15 -10
- package/dist/collection/components/new-environment/new-environment.js.map +1 -1
- package/dist/collection/components/new-kb/new-kb.js +32 -28
- package/dist/collection/components/new-kb/new-kb.js.map +1 -1
- package/dist/collection/components/new-object/new-object.js +8 -5
- package/dist/collection/components/new-object/new-object.js.map +1 -1
- package/dist/collection/components/new-version/new-version.js +2 -2
- package/dist/collection/components/new-version/new-version.js.map +1 -1
- package/dist/collection/components/object-selector/object-selector.js +5 -4
- package/dist/collection/components/object-selector/object-selector.js.map +1 -1
- package/dist/collection/components/open-api-import/open-api-import.js +8 -4
- package/dist/collection/components/open-api-import/open-api-import.js.map +1 -1
- package/dist/collection/components/references/helpers.js +13 -9
- package/dist/collection/components/references/helpers.js.map +1 -1
- package/dist/collection/components/references/references.js +11 -9
- package/dist/collection/components/references/references.js.map +1 -1
- package/dist/collection/components/select-kb-items/helpers.js +10 -5
- package/dist/collection/components/select-kb-items/helpers.js.map +1 -1
- package/dist/collection/components/select-kb-items/select-kb-items.js +2 -1
- package/dist/collection/components/select-kb-items/select-kb-items.js.map +1 -1
- package/dist/collection/components/select-user-team/helpers.js +1 -1
- package/dist/collection/components/select-user-team/helpers.js.map +1 -1
- package/dist/collection/components/select-user-team/select-user-team.js +2 -1
- package/dist/collection/components/select-user-team/select-user-team.js.map +1 -1
- package/dist/collection/components/sign-in-team/sign-in-team.js +2 -1
- package/dist/collection/components/sign-in-team/sign-in-team.js.map +1 -1
- package/dist/collection/components/splash/splash.js +3 -2
- package/dist/collection/components/splash/splash.js.map +1 -1
- package/dist/collection/components/start-page/start-page.js +6 -3
- package/dist/collection/components/start-page/start-page.js.map +1 -1
- package/dist/collection/components/team-dev/connect-gx-server/connect-gx-server.js +21 -16
- package/dist/collection/components/team-dev/connect-gx-server/connect-gx-server.js.map +1 -1
- package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js +8 -4
- package/dist/collection/components/team-dev/create-kb-from-server/create-kb-from-server.js.map +1 -1
- package/dist/collection/components/team-dev/share-kb/share-kb.js +5 -2
- package/dist/collection/components/team-dev/share-kb/share-kb.js.map +1 -1
- package/dist/collection/components/team-dev/update/update.js +2 -1
- package/dist/collection/components/team-dev/update/update.js.map +1 -1
- package/dist/collection/components/team-dev/update-partial-selection/update-partial-selection.js +1 -1
- package/dist/collection/components/team-dev/update-partial-selection/update-partial-selection.js.map +1 -1
- package/dist/collection/components/welcome-page/welcome-page.js +7 -5
- package/dist/collection/components/welcome-page/welcome-page.js.map +1 -1
- package/dist/collection/components/ww-attributes/helpers.js +2 -1
- package/dist/collection/components/ww-attributes/helpers.js.map +1 -1
- package/dist/collection/components/ww-attributes/ww-attributes.js +11 -6
- package/dist/collection/components/ww-attributes/ww-attributes.js.map +1 -1
- package/dist/collection/components/ww-files/helpers.js +2 -1
- package/dist/collection/components/ww-files/helpers.js.map +1 -1
- package/dist/collection/components/ww-files/ww-files.js +18 -16
- package/dist/collection/components/ww-files/ww-files.js.map +1 -1
- package/dist/collection/components/ww-images/ww-images.js +5 -16
- package/dist/collection/components/ww-images/ww-images.js.map +1 -1
- package/dist/collection/index.js +4 -0
- package/dist/collection/index.js.map +1 -1
- package/dist/collection/testing/locale.e2e.js +3 -3
- package/dist/collection/testing/locale.e2e.js.map +1 -1
- package/dist/components/code-render.js +2 -2
- package/dist/components/code-render.js.map +1 -1
- package/dist/components/container.js +2 -1
- package/dist/components/container.js.map +1 -1
- package/dist/components/entity-selector.js +4 -2
- package/dist/components/entity-selector.js.map +1 -1
- package/dist/components/form-validation.js +2 -6
- package/dist/components/form-validation.js.map +1 -1
- package/dist/components/gx-ide-ai-assistant.js +14 -8
- package/dist/components/gx-ide-ai-assistant.js.map +1 -1
- package/dist/components/gx-ide-bpm-app-declaration.js +3 -2
- package/dist/components/gx-ide-bpm-app-declaration.js.map +1 -1
- package/dist/components/gx-ide-bpm-export-xpdl.js +4 -2
- package/dist/components/gx-ide-bpm-export-xpdl.js.map +1 -1
- package/dist/components/gx-ide-bpm-import-files.js +2 -1
- package/dist/components/gx-ide-bpm-import-files.js.map +1 -1
- package/dist/components/gx-ide-bpm-sync-gam-roles.js +2 -1
- package/dist/components/gx-ide-bpm-sync-gam-roles.js.map +1 -1
- package/dist/components/gx-ide-bpm-task-documents.js +10 -8
- package/dist/components/gx-ide-bpm-task-documents.js.map +1 -1
- package/dist/components/gx-ide-bpm-timer-duration.js +2 -1
- package/dist/components/gx-ide-bpm-timer-duration.js.map +1 -1
- package/dist/components/gx-ide-connect-gx-server.js +21 -16
- package/dist/components/gx-ide-connect-gx-server.js.map +1 -1
- package/dist/components/gx-ide-create-kb-from-server.js +8 -4
- package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
- package/dist/components/gx-ide-current-user-info.js +3 -2
- package/dist/components/gx-ide-current-user-info.js.map +1 -1
- package/dist/components/gx-ide-dashboard-home.js +3 -2
- package/dist/components/gx-ide-dashboard-home.js.map +1 -1
- package/dist/components/gx-ide-data-selector.js +3 -2
- package/dist/components/gx-ide-data-selector.js.map +1 -1
- package/dist/components/gx-ide-data-type-selector.js +4 -3
- package/dist/components/gx-ide-data-type-selector.js.map +1 -1
- package/dist/components/gx-ide-deployment-tool.js +19 -15
- package/dist/components/gx-ide-deployment-tool.js.map +1 -1
- package/dist/components/gx-ide-design-import.js +27 -19
- package/dist/components/gx-ide-design-import.js.map +1 -1
- package/dist/components/gx-ide-directory-selector.js +2 -1
- package/dist/components/gx-ide-directory-selector.js.map +1 -1
- package/dist/components/gx-ide-edit-module-server.js +2 -1
- package/dist/components/gx-ide-edit-module-server.js.map +1 -1
- package/dist/components/gx-ide-file-uploader.js +44 -59
- package/dist/components/gx-ide-file-uploader.js.map +1 -1
- package/dist/components/gx-ide-gam-installation-settings.js +2 -1
- package/dist/components/gx-ide-gam-installation-settings.js.map +1 -1
- package/dist/components/gx-ide-kb-manager-import.js +7 -4
- package/dist/components/gx-ide-kb-manager-import.js.map +1 -1
- package/dist/components/gx-ide-manage-module-references-v2.js +4 -13
- package/dist/components/gx-ide-manage-module-references-v2.js.map +1 -1
- package/dist/components/gx-ide-manage-module-references.js +2 -2
- package/dist/components/gx-ide-manage-module-references.js.map +1 -1
- package/dist/components/gx-ide-navigation-report.js +6 -3
- package/dist/components/gx-ide-navigation-report.js.map +1 -1
- package/dist/components/gx-ide-new-environment.js +15 -10
- package/dist/components/gx-ide-new-environment.js.map +1 -1
- package/dist/components/gx-ide-new-kb.js +32 -28
- package/dist/components/gx-ide-new-kb.js.map +1 -1
- package/dist/components/gx-ide-new-object.js +8 -5
- package/dist/components/gx-ide-new-object.js.map +1 -1
- package/dist/components/gx-ide-new-version.js +2 -2
- package/dist/components/gx-ide-new-version.js.map +1 -1
- package/dist/components/gx-ide-object-selector.js +5 -4
- package/dist/components/gx-ide-object-selector.js.map +1 -1
- package/dist/components/gx-ide-open-api-import.js +8 -4
- package/dist/components/gx-ide-open-api-import.js.map +1 -1
- package/dist/components/gx-ide-references.js +22 -17
- package/dist/components/gx-ide-references.js.map +1 -1
- package/dist/components/gx-ide-select-kb-items.js +12 -6
- package/dist/components/gx-ide-select-kb-items.js.map +1 -1
- package/dist/components/gx-ide-select-user-team.js +3 -2
- package/dist/components/gx-ide-select-user-team.js.map +1 -1
- package/dist/components/gx-ide-share-kb.js +5 -2
- package/dist/components/gx-ide-share-kb.js.map +1 -1
- package/dist/components/gx-ide-sign-in-team.js +2 -1
- package/dist/components/gx-ide-sign-in-team.js.map +1 -1
- package/dist/components/gx-ide-splash.js +3 -2
- package/dist/components/gx-ide-splash.js.map +1 -1
- package/dist/components/gx-ide-start-page.js +6 -3
- package/dist/components/gx-ide-start-page.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.js +2 -1
- package/dist/components/gx-ide-team-dev-update.js.map +1 -1
- package/dist/components/gx-ide-welcome-page.js +7 -5
- package/dist/components/gx-ide-welcome-page.js.map +1 -1
- package/dist/components/gx-ide-ww-attributes.js +13 -7
- package/dist/components/gx-ide-ww-attributes.js.map +1 -1
- package/dist/components/gx-ide-ww-files.js +20 -17
- package/dist/components/gx-ide-ww-files.js.map +1 -1
- package/dist/components/gx-ide-ww-images.js +5 -16
- package/dist/components/gx-ide-ww-images.js.map +1 -1
- package/dist/components/helpers.js +5 -5
- package/dist/components/helpers.js.map +1 -1
- package/dist/components/index.js +6 -0
- package/dist/components/index.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/locale.js +3 -3
- package/dist/components/locale.js.map +1 -1
- package/dist/esm/{code-render-f3afd300.js → code-render-53b3b0bd.js} +3 -3
- package/dist/esm/code-render-53b3b0bd.js.map +1 -0
- package/dist/esm/{form-validation-71dca8c6.js → form-validation-cd0215c6.js} +3 -7
- package/dist/{genexus-ide-ui/p-549b8f0c.js.map → esm/form-validation-cd0215c6.js.map} +1 -1
- package/dist/esm/gx-ide-about.entry.js +1 -1
- package/dist/esm/gx-ide-ai-assistant.entry.js +15 -9
- package/dist/esm/gx-ide-ai-assistant.entry.js.map +1 -1
- package/dist/esm/gx-ide-ai-message.entry.js +2 -2
- package/dist/esm/gx-ide-bpm-app-declaration.entry.js +4 -3
- package/dist/esm/gx-ide-bpm-app-declaration.entry.js.map +1 -1
- package/dist/esm/gx-ide-bpm-assign-roles.entry.js +1 -1
- package/dist/esm/gx-ide-bpm-export-xpdl.entry.js +5 -3
- package/dist/esm/gx-ide-bpm-export-xpdl.entry.js.map +1 -1
- package/dist/esm/gx-ide-bpm-import-files.entry.js +3 -2
- package/dist/esm/gx-ide-bpm-import-files.entry.js.map +1 -1
- package/dist/esm/gx-ide-bpm-import-gxpm.entry.js +1 -1
- package/dist/esm/gx-ide-bpm-objects-selector.entry.js +1 -1
- package/dist/esm/gx-ide-bpm-sync-gam-roles.entry.js +3 -2
- package/dist/esm/gx-ide-bpm-sync-gam-roles.entry.js.map +1 -1
- package/dist/esm/gx-ide-bpm-task-documents.entry.js +11 -9
- package/dist/esm/gx-ide-bpm-task-documents.entry.js.map +1 -1
- package/dist/esm/gx-ide-bpm-timer-duration.entry.js +3 -2
- package/dist/esm/gx-ide-bpm-timer-duration.entry.js.map +1 -1
- package/dist/esm/gx-ide-card.entry.js +1 -1
- package/dist/esm/gx-ide-chat-container_2.entry.js +1 -1
- package/dist/esm/gx-ide-connect-gx-server.entry.js +23 -18
- package/dist/esm/gx-ide-connect-gx-server.entry.js.map +1 -1
- package/dist/esm/gx-ide-container_2.entry.js +2 -1
- package/dist/esm/gx-ide-container_2.entry.js.map +1 -1
- package/dist/esm/gx-ide-create-kb-from-server.entry.js +10 -6
- package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
- package/dist/esm/gx-ide-current-user-info.entry.js +4 -3
- package/dist/esm/gx-ide-current-user-info.entry.js.map +1 -1
- package/dist/esm/gx-ide-dashboard-home.entry.js +5 -4
- package/dist/esm/gx-ide-dashboard-home.entry.js.map +1 -1
- package/dist/esm/gx-ide-data-selector.entry.js +4 -3
- package/dist/esm/gx-ide-data-selector.entry.js.map +1 -1
- package/dist/esm/gx-ide-data-type-selector.entry.js +5 -4
- package/dist/esm/gx-ide-data-type-selector.entry.js.map +1 -1
- package/dist/esm/gx-ide-deployment-tool.entry.js +20 -16
- package/dist/esm/gx-ide-deployment-tool.entry.js.map +1 -1
- package/dist/esm/gx-ide-design-import.entry.js +28 -20
- package/dist/esm/gx-ide-design-import.entry.js.map +1 -1
- package/dist/esm/gx-ide-directory-selector.entry.js +2 -1
- package/dist/esm/gx-ide-directory-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-entity-selector.entry.js +5 -3
- package/dist/esm/gx-ide-entity-selector.entry.js.map +1 -1
- package/dist/esm/gx-ide-file-uploader.entry.js +45 -60
- package/dist/esm/gx-ide-file-uploader.entry.js.map +1 -1
- package/dist/esm/gx-ide-gam-installation-settings.entry.js +3 -2
- package/dist/esm/gx-ide-gam-installation-settings.entry.js.map +1 -1
- package/dist/esm/gx-ide-kb-manager-export.entry.js +1 -1
- package/dist/esm/gx-ide-kb-manager-import.entry.js +8 -5
- package/dist/esm/gx-ide-kb-manager-import.entry.js.map +1 -1
- package/dist/esm/gx-ide-list-selector_2.entry.js +1 -1
- package/dist/esm/gx-ide-list-selector_2.entry.js.map +1 -1
- package/dist/esm/gx-ide-manage-module-references-v2.entry.js +5 -14
- package/dist/esm/gx-ide-manage-module-references-v2.entry.js.map +1 -1
- package/dist/esm/gx-ide-manage-module-references.entry.js +3 -3
- package/dist/esm/gx-ide-manage-module-references.entry.js.map +1 -1
- package/dist/esm/gx-ide-navigation-report.entry.js +7 -4
- package/dist/esm/gx-ide-navigation-report.entry.js.map +1 -1
- package/dist/esm/gx-ide-new-environment.entry.js +18 -13
- package/dist/esm/gx-ide-new-environment.entry.js.map +1 -1
- package/dist/esm/gx-ide-new-kb.entry.js +35 -31
- package/dist/esm/gx-ide-new-kb.entry.js.map +1 -1
- package/dist/esm/gx-ide-new-object.entry.js +9 -6
- package/dist/esm/gx-ide-new-object.entry.js.map +1 -1
- package/dist/esm/gx-ide-new-version.entry.js +3 -3
- package/dist/esm/gx-ide-new-version.entry.js.map +1 -1
- package/dist/esm/gx-ide-object-selector.entry.js +7 -6
- package/dist/esm/gx-ide-object-selector.entry.js.map +1 -1
- package/dist/esm/gx-ide-open-api-import.entry.js +9 -5
- package/dist/esm/gx-ide-open-api-import.entry.js.map +1 -1
- package/dist/esm/gx-ide-references.entry.js +23 -18
- package/dist/esm/gx-ide-references.entry.js.map +1 -1
- package/dist/esm/gx-ide-sc-chat-container.entry.js +1 -1
- package/dist/esm/gx-ide-select-kb-items.entry.js +13 -7
- package/dist/esm/gx-ide-select-kb-items.entry.js.map +1 -1
- package/dist/esm/gx-ide-select-user-team.entry.js +4 -3
- package/dist/esm/gx-ide-select-user-team.entry.js.map +1 -1
- package/dist/esm/gx-ide-share-kb.entry.js +7 -4
- package/dist/esm/gx-ide-share-kb.entry.js.map +1 -1
- package/dist/esm/gx-ide-sign-in-team.entry.js +3 -2
- package/dist/esm/gx-ide-sign-in-team.entry.js.map +1 -1
- package/dist/esm/gx-ide-sign-in.entry.js +1 -1
- package/dist/esm/gx-ide-splash.entry.js +4 -3
- package/dist/esm/gx-ide-splash.entry.js.map +1 -1
- package/dist/esm/gx-ide-start-page.entry.js +7 -4
- 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-team-dev-commit.entry.js +2 -2
- package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +1 -1
- package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +2 -2
- 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.entry.js +4 -3
- 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-welcome-page.entry.js +8 -6
- package/dist/esm/gx-ide-welcome-page.entry.js.map +1 -1
- package/dist/esm/gx-ide-wf-settings.entry.js +1 -1
- package/dist/esm/gx-ide-ww-attributes.entry.js +14 -8
- package/dist/esm/gx-ide-ww-attributes.entry.js.map +1 -1
- package/dist/esm/gx-ide-ww-files.entry.js +21 -18
- package/dist/esm/gx-ide-ww-files.entry.js.map +1 -1
- package/dist/esm/gx-ide-ww-images.entry.js +7 -18
- package/dist/esm/gx-ide-ww-images.entry.js.map +1 -1
- package/dist/esm/{helpers-5f1c9a32.js → helpers-10479d69.js} +6 -6
- package/dist/esm/helpers-10479d69.js.map +1 -0
- package/dist/esm/index.js +7 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/{locale-643afe17.js → locale-e5107fad.js} +4 -4
- package/dist/esm/locale-e5107fad.js.map +1 -0
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
- package/dist/genexus-ide-ui/index.esm.js +7 -1
- package/dist/genexus-ide-ui/index.esm.js.map +1 -1
- package/dist/genexus-ide-ui/{p-11dccb8f.entry.js → p-01d96378.entry.js} +16 -17
- package/dist/genexus-ide-ui/p-01d96378.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-75e1aa31.entry.js → p-036d005d.entry.js} +5 -4
- package/dist/genexus-ide-ui/p-036d005d.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-f5a48b33.entry.js → p-04205aa4.entry.js} +6 -5
- package/dist/genexus-ide-ui/p-04205aa4.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-f6ceb01a.entry.js → p-04c6bd23.entry.js} +29 -28
- package/dist/genexus-ide-ui/p-04c6bd23.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-f52bcdac.entry.js → p-0550fd5f.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-e1d75f00.entry.js → p-05b04291.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-e1d75f00.entry.js.map → p-05b04291.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-bfd9066c.entry.js → p-0bdf34f2.entry.js} +4 -6
- package/dist/genexus-ide-ui/p-0bdf34f2.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-2be58a7a.entry.js → p-14165308.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-7cedb0f0.entry.js → p-1bc2613e.entry.js} +69 -66
- package/dist/genexus-ide-ui/p-1bc2613e.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-c5cca204.entry.js → p-1c7ea1cb.entry.js} +11 -10
- package/dist/genexus-ide-ui/p-1c7ea1cb.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-daa29451.entry.js → p-1dd7be84.entry.js} +17 -14
- package/dist/genexus-ide-ui/p-1dd7be84.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-549b8f0c.js → p-289c3290.js} +15 -16
- package/dist/genexus-ide-ui/p-289c3290.js.map +1 -0
- package/dist/genexus-ide-ui/{p-032b4a81.entry.js → p-29c69938.entry.js} +22 -19
- package/dist/genexus-ide-ui/p-29c69938.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-db4f756a.entry.js → p-3085add2.entry.js} +188 -176
- package/dist/genexus-ide-ui/p-3085add2.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-857866f8.js → p-311eedf3.js} +9 -8
- package/dist/genexus-ide-ui/p-311eedf3.js.map +1 -0
- package/dist/genexus-ide-ui/{p-2e90a13a.entry.js → p-31beae9e.entry.js} +3 -2
- package/dist/genexus-ide-ui/p-31beae9e.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-9a39e49c.entry.js → p-35f9ebbc.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-db4750ff.entry.js → p-385c9544.entry.js} +147 -138
- package/dist/genexus-ide-ui/p-385c9544.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-8f1f4126.entry.js → p-3da8db15.entry.js} +9 -9
- package/dist/genexus-ide-ui/p-3da8db15.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-b1833747.entry.js → p-4538dea5.entry.js} +31 -26
- package/dist/genexus-ide-ui/p-4538dea5.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-6dc05a27.entry.js → p-45996535.entry.js} +4 -3
- package/dist/genexus-ide-ui/p-45996535.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-a6029d9a.entry.js → p-48062d23.entry.js} +128 -116
- package/dist/genexus-ide-ui/p-48062d23.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-4d929210.entry.js → p-4b38fffc.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-d1cc4724.entry.js → p-4d0ba4f6.entry.js} +8 -15
- package/dist/genexus-ide-ui/p-4d0ba4f6.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-66d9269a.entry.js → p-4e943649.entry.js} +19 -16
- package/dist/genexus-ide-ui/p-4e943649.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-ec01c70c.entry.js → p-67e0b419.entry.js} +7 -6
- package/dist/genexus-ide-ui/p-67e0b419.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-45d2fa91.entry.js → p-68969051.entry.js} +12 -11
- package/dist/genexus-ide-ui/p-68969051.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-9b238bf7.entry.js → p-690942cb.entry.js} +178 -173
- package/dist/genexus-ide-ui/p-690942cb.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-b211bca8.entry.js → p-6b957e82.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-be794132.entry.js → p-6f898249.entry.js} +233 -228
- package/dist/genexus-ide-ui/p-6f898249.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-29575656.entry.js → p-704499e5.entry.js} +116 -107
- package/dist/genexus-ide-ui/p-704499e5.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-ac0438d6.entry.js → p-767e0f6d.entry.js} +12 -11
- package/dist/genexus-ide-ui/p-767e0f6d.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-6168d48c.entry.js → p-7abe2214.entry.js} +167 -160
- package/dist/genexus-ide-ui/p-7abe2214.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-50eaa96d.entry.js → p-7d8812b0.entry.js} +99 -89
- package/dist/genexus-ide-ui/p-7d8812b0.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-9c690c36.entry.js → p-88c81f18.entry.js} +13 -12
- package/dist/genexus-ide-ui/p-88c81f18.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-5e05f830.entry.js → p-8cb937b7.entry.js} +35 -31
- package/dist/genexus-ide-ui/p-8cb937b7.entry.js.map +1 -0
- package/dist/genexus-ide-ui/p-9ddea83b.js +146 -0
- package/dist/genexus-ide-ui/p-9ddea83b.js.map +1 -0
- package/dist/genexus-ide-ui/{p-2dbf722d.entry.js → p-9fa1200f.entry.js} +75 -69
- package/dist/genexus-ide-ui/p-9fa1200f.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-0e53f1ef.entry.js → p-a1415a9c.entry.js} +161 -159
- package/dist/genexus-ide-ui/p-a1415a9c.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-c30b2104.entry.js → p-a47d71eb.entry.js} +11 -9
- package/dist/genexus-ide-ui/p-a47d71eb.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-f315c6e0.entry.js → p-aab809c4.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-f5879a41.entry.js → p-b1851e6b.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-f5879a41.entry.js.map → p-b1851e6b.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-95f831a8.entry.js → p-b2928645.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-39c527ff.entry.js → p-b58fb87b.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-a86a8692.entry.js → p-c38ce0bf.entry.js} +36 -32
- package/dist/genexus-ide-ui/p-c38ce0bf.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-3edbf07d.js → p-c5178973.js} +3 -3
- package/dist/genexus-ide-ui/{p-3edbf07d.js.map → p-c5178973.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-0d83a34d.entry.js → p-c7badbf1.entry.js} +66 -62
- package/dist/genexus-ide-ui/p-c7badbf1.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-970d16ca.entry.js → p-c91af626.entry.js} +15 -15
- package/dist/genexus-ide-ui/{p-970d16ca.entry.js.map → p-c91af626.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-8b046b4b.entry.js → p-d095a37c.entry.js} +10 -9
- package/dist/genexus-ide-ui/p-d095a37c.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-e37e95e7.entry.js → p-d2107cb2.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-353810b8.entry.js → p-d3767a7d.entry.js} +104 -99
- package/dist/genexus-ide-ui/p-d3767a7d.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-02fc47cd.entry.js → p-d8379699.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-cdf8b082.entry.js → p-da473001.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-501c7b1f.entry.js → p-de7f0c1f.entry.js} +22 -19
- package/dist/genexus-ide-ui/p-de7f0c1f.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-5da3e999.entry.js → p-ded7444c.entry.js} +17 -16
- package/dist/genexus-ide-ui/p-ded7444c.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-9a9ee1ee.entry.js → p-e24902a0.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-5a42428d.entry.js → p-e28e6bc4.entry.js} +15 -14
- package/dist/genexus-ide-ui/p-e28e6bc4.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-7782e1b8.entry.js → p-e502c2fd.entry.js} +61 -56
- package/dist/genexus-ide-ui/p-e502c2fd.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-f2bd9044.entry.js → p-e7fb3ee3.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-e5571f49.entry.js → p-eb9e760d.entry.js} +18 -18
- package/dist/genexus-ide-ui/p-eb9e760d.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-eb51429c.entry.js → p-ec0809a7.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-460db3ff.entry.js → p-ecba870e.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-e26e05c7.entry.js → p-f49bb305.entry.js} +18 -12
- package/dist/genexus-ide-ui/p-f49bb305.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-8636a0bd.entry.js → p-f722955f.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-a8cc41e4.entry.js → p-f7421997.entry.js} +61 -58
- package/dist/genexus-ide-ui/p-f7421997.entry.js.map +1 -0
- package/dist/types/index.d.ts +4 -0
- package/package.json +3 -3
- package/dist/cjs/code-render-0e9837c4.js.map +0 -1
- package/dist/cjs/form-validation-ffe2b957.js.map +0 -1
- package/dist/cjs/helpers-e5a13fa5.js.map +0 -1
- package/dist/cjs/locale-36b93b1b.js.map +0 -1
- package/dist/esm/code-render-f3afd300.js.map +0 -1
- package/dist/esm/form-validation-71dca8c6.js.map +0 -1
- package/dist/esm/helpers-5f1c9a32.js.map +0 -1
- package/dist/esm/locale-643afe17.js.map +0 -1
- package/dist/genexus-ide-ui/p-032b4a81.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-0d83a34d.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-0e53f1ef.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-11dccb8f.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-29575656.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-2dbf722d.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-2e90a13a.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-353810b8.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-45d2fa91.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-501c7b1f.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-50eaa96d.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-51601b85.js +0 -145
- package/dist/genexus-ide-ui/p-51601b85.js.map +0 -1
- package/dist/genexus-ide-ui/p-5a42428d.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-5da3e999.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-5e05f830.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-6168d48c.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-66d9269a.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-6dc05a27.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-75e1aa31.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-7782e1b8.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-7cedb0f0.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-857866f8.js.map +0 -1
- package/dist/genexus-ide-ui/p-8b046b4b.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-8f1f4126.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-9b238bf7.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-9c690c36.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-a6029d9a.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-a86a8692.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-a8cc41e4.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-ac0438d6.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-b1833747.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-be794132.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-bfd9066c.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-c30b2104.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-c5cca204.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-d1cc4724.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-daa29451.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-db4750ff.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-db4f756a.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-e26e05c7.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-e5571f49.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-ec01c70c.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-f5a48b33.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-f6ceb01a.entry.js.map +0 -1
- /package/dist/genexus-ide-ui/{p-f52bcdac.entry.js.map → p-0550fd5f.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-2be58a7a.entry.js.map → p-14165308.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-9a39e49c.entry.js.map → p-35f9ebbc.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-4d929210.entry.js.map → p-4b38fffc.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-b211bca8.entry.js.map → p-6b957e82.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-f315c6e0.entry.js.map → p-aab809c4.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-95f831a8.entry.js.map → p-b2928645.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-39c527ff.entry.js.map → p-b58fb87b.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-e37e95e7.entry.js.map → p-d2107cb2.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-02fc47cd.entry.js.map → p-d8379699.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-cdf8b082.entry.js.map → p-da473001.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-9a9ee1ee.entry.js.map → p-e24902a0.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-f2bd9044.entry.js.map → p-e7fb3ee3.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-eb51429c.entry.js.map → p-ec0809a7.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-460db3ff.entry.js.map → p-ecba870e.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-8636a0bd.entry.js.map → p-f722955f.entry.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["mapTypeCategoryDataToActionListModel","categories","map","category","id","type","additionalInformation","center","imgSrc","icon","undefined","caption","name","part","mapTypeDataToActionListModel","types","selectedCategoryId","selectedTypeId","imageSrc","selected","sortActionListDefault","subModel","newObjectCss","CSS_BUNDLES","GxIdeNewObject","_GxIdeNewObject_componentLocale","set","this","_GxIdeNewObject_shortcutsSrc","getAssetPath","_GxIdeNewObject_categoriesActionListEl","_GxIdeNewObject_chShortcutsEl","_GxIdeNewObject_descriptionEl","_GxIdeNewObject_descriptionModifiedByUser","_GxIdeNewObject_moduleFolderEl","_GxIdeNewObject_nameEl","_GxIdeNewObject_nameModifiedByUser","_GxIdeNewObject_cancelCallbackHandler","async","cancelCallback","_GxIdeNewObject_categoryOnSelectionChangedHandler","selectionEvent","selection","detail","length","selectedCategory","typeCategories","find","item","selectedType","selectedTypeMap","get","_GxIdeNewObject_createCallbackHandler","nameValidation","validateNameCallback","__classPrivateFieldGet","value","_GxIdeNewObject_validateNameHandler","call","data","typeId","_a","description","moduleId","_c","_b","result","createCallback","_GxIdeNewObject_descriptionValueHandler","suggestDescriptionCallback","_GxIdeNewObject_getNameSuggestion","suggestNameCallback","suggestedName","replace","_GxIdeNewObject_getDescriptionSuggestion","suggestedDescription","_GxIdeNewObject_updateSuggestions","_GxIdeNewObject_init","defaultTypeFound","_GxIdeNewObject_setDefaultType","defaultTypeId","_GxIdeNewObject_onBlurNameHandler","_GxIdeNewObject_onInputDescriptionHandler","e","__classPrivateFieldSet","_GxIdeNewObject_onInputNameHandler","_GxIdeNewObject_onNameValueChangedHandler","_GxIdeNewObject_renderModuleFolder","hasModule","hasFolder","labelDescription","moduleFolder","moduleOnly","folderOnly","h","class","htmlFor","labelPosition","parent","defaultValue","defaultParent","selectEntityCallback","selectModuleCallback","ref","el","found","outerLoop","i","j","loopTypeId","_GxIdeNewObject_setSelectedCategoryOnActionList","updateItemProperties","_GxIdeNewObject_typeChangedHandler","nameValidationErrorMessage","Map","typeCategoriesChanged","newValue","typeCategoriesActionListModel","connectedCallback","componentWillLoad","Locale","getComponentStrings","_GxIdeNewObject_instances","_GxIdeNewObject_initializeSelectedTypeMap","componentDidLoad","suspendShortcuts","suspend","render","Host","model","src","categorySelectionTitle","sortItemsCallback","onSelectedItemsChange","typeSelectionTitleSuffix","typeSelectionTitle","objectName","autoFocus","input","placeholder","onChange","onInput","onBlur","actionElement","blockAlign","config","tooltipSettings","inlineAlign","delay","objectDescription","onClick","footer","btnCancel","disabled","btnCreate","forEach"],"sources":["src/components/new-object/helpers.tsx","src/common/chameleon-helpers.ts","src/components/new-object/new-object.scss?tag=gx-ide-new-object&encapsulation=shadow","src/components/new-object/new-object.tsx"],"sourcesContent":["import { ActionListModel } from \"@genexus/chameleon-controls-library\";\nimport { TypeCategoryData } from \"../..\";\nimport { TypeData } from \"./new-object\";\n\nexport type ChCheckboxArray = HTMLChCheckboxElement[] | null;\n\nexport const mapTypeCategoryDataToActionListModel = (\n categories: TypeCategoryData[]\n): ActionListModel => {\n return categories.map(category => {\n return {\n id: category.id,\n type: \"actionable\",\n additionalInformation: {\n \"stretch-start\": {\n center: [{ imgSrc: category.icon || undefined }]\n }\n },\n caption: category.name,\n part: `category-${category.id}`\n };\n });\n};\n\nexport const mapTypeDataToActionListModel = (\n types: TypeData[],\n selectedCategoryId: string,\n selectedTypeId?: string\n): ActionListModel => {\n return types.map(type => {\n return {\n id: `${type.id}`,\n type: \"actionable\",\n imageSrc: \"objects/design\",\n selected: selectedTypeId === type.id,\n additionalInformation: {\n \"stretch-start\": {\n center: [{ imgSrc: type.icon }]\n }\n },\n caption: type.name,\n part: `type-${selectedCategoryId}-${type.id}`\n };\n });\n};\n","import { ActionListModel } from \"@genexus/chameleon-controls-library/dist/types/components/action-list/types\";\n\n/**\n * Order the items in the same order as they come.\n */\nexport const sortActionListDefault = (subModel: ActionListModel) => {\n return subModel;\n};\n",":host {\n display: grid;\n block-size: 100%;\n}\n\n.main {\n display: grid;\n grid-template-rows: 1fr max-content max-content;\n}\n.categories-types-layout {\n grid-template-columns: 1fr 1fr;\n}\n.api-description-layout {\n padding-block: calc(\n var(--content-block-spacing) * 2\n ); // WA until we define a class for internal spacing.\n display: grid;\n grid-template:\n \"api-description-title api-description-title\"\n \"api-name-label api-name-control\"\n \"api-description-label api-description-control\"\n \"api-module-label api-module-control\";\n grid-template-columns: max-content 1fr;\n}\n.api-description-title {\n grid-area: api-description-title;\n}\n.api-name-label {\n grid-area: api-name-label;\n}\n.api-name-control {\n grid-area: api-name-control;\n}\n.api-description-label {\n grid-area: api-description-label;\n}\n.api-description-control {\n grid-area: api-description-control;\n}\n.api-module-label {\n grid-area: api-module-label;\n}\n.api-module-control {\n grid-area: api-module-control;\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 { MercuryBundles } from \"@genexus/mercury\";\nimport { config } from \"../../common/config\";\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../common/locale\";\nimport { EntityData } from \"../../common/types\";\nimport {\n ActionListItemModelExtended,\n ActionListModel\n} from \"@genexus/chameleon-controls-library\";\nimport {\n mapTypeCategoryDataToActionListModel,\n mapTypeDataToActionListModel\n} from \"./helpers\";\n\nimport { sortActionListDefault } from \"../../common/chameleon-helpers\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/edit\",\n \"components/icon\",\n \"components/tooltip\",\n \"components/list-box\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/spacing\",\n \"utils/typography\"\n];\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 /**\n * The component hard-coded strings translations.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #componentLocale: any;\n #shortcutsSrc = getAssetPath(`./gx-ide-assets/new-object/shortcuts.json`);\n\n @Element() el: HTMLGxIdeNewObjectElement;\n\n /* References needed to collect data on \"Create\" button submit */\n #categoriesActionListEl: HTMLChActionListRenderElement;\n #chShortcutsEl: HTMLChShortcutsElement;\n #descriptionEl!: HTMLChEditElement;\n #descriptionModifiedByUser = false;\n #moduleFolderEl!: HTMLGxIdeEntitySelectorElement;\n #nameEl!: HTMLChEditElement;\n #nameModifiedByUser = false;\n\n /**\n * Description of the new object\n */\n @State() description: string = undefined;\n\n /**\n * Name of the new object\n */\n @State() name: string = undefined;\n @State() nameValidationErrorMessage: string;\n @State() selectedCategory: TypeCategoryData | null;\n @State() selectedType: TypeData | null;\n // representations of TypeCategoryData[] as ComboBoxModel.\n @State() typeCategoriesActionListModel: ActionListModel = [];\n @State() typesActionListModel: ActionListModel = [];\n\n @State() selectedTypeMap: Map<string, string> = new Map();\n\n /**\n * Allows you to define the type selected by default when instantiating the dialog.\n * Represented by the type identifier.\n */\n @Prop() readonly defaultTypeId: string;\n\n /**\n * Default value for the Module/Folder field.\n */\n @Prop() readonly defaultParent: EntityData;\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Callback invoked when user wants to cancel object creation\n */\n @Prop() readonly cancelCallback: CancelCallback;\n\n /**\n * Callback invoked when user wants to confirm object creation\n */\n @Prop() readonly createCallback: CreateCallback;\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({ mutable: true }) typeCategories!: TypeCategoryData[];\n @Watch(\"typeCategories\")\n typeCategoriesChanged(newValue: TypeCategoryData[]) {\n if (newValue?.length) {\n this.typeCategoriesActionListModel = mapTypeCategoryDataToActionListModel(\n this.typeCategories\n );\n }\n }\n\n /**\n * Current value for Module/Folder\n */\n @Prop() readonly parent: EntityData;\n\n /**\n * Callback invoked when the action is executed on the Module/Folder filter\n * (button '...'). It returns the information of the selected object (id and\n * 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 an error message or\n * 'undefined' if the name is not valid.\n */\n @Prop() readonly validateNameCallback: ValidateNameCallback;\n\n /**\n * Callback to suggest a name when creating an object from another object.\n * Returns the suggested name or undefined if not applicable.\n */\n @Prop() readonly suggestNameCallback?: SuggestNameCallback;\n\n /**\n * Callback to suggest a description when creating an object from another object.\n * Returns the suggested description or undefined if not applicable.\n */\n @Prop() readonly suggestDescriptionCallback?: SuggestDescriptionCallback;\n\n /**\n * This event emits the 'cancel' event\n */\n @Event() cancel: EventEmitter<boolean>;\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 triggered after a validation of the object name is made.\n * Returns 'undefined' if it's valid, otherwise an error message.\n */\n @Event() validateName: EventEmitter<string | undefined>;\n\n connectedCallback() {\n // this.#validateInitialName();\n }\n\n async componentWillLoad() {\n await this.#init();\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.typeCategoriesChanged(this.typeCategories);\n this.#initializeSelectedTypeMap();\n }\n\n componentDidLoad() {\n this.#setSelectedCategoryOnActionList();\n }\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#chShortcutsEl.suspend = true;\n } else {\n this.#chShortcutsEl.suspend = false;\n }\n }\n\n // - - - - - - - - - - -\n\n #cancelCallbackHandler = async (): Promise<void> => {\n await this.cancelCallback();\n };\n\n #categoryOnSelectionChangedHandler = (\n selectionEvent: CustomEvent<ActionListItemModelExtended[]>\n ): void => {\n const selection = selectionEvent.detail;\n if (selection.length > 0) {\n const selectedCategory = this.typeCategories.find(\n category => category.id === selection[0].item.id\n );\n if (selectedCategory) {\n this.selectedCategory = selectedCategory;\n if (selectedCategory.types.length > 0) {\n this.selectedType = selectedCategory.types.find(\n type => type.id === this.selectedTypeMap.get(selectedCategory.id)\n );\n }\n }\n }\n };\n\n #createCallbackHandler = async (): Promise<void> => {\n // validate name first\n const nameValidation: string | undefined = await this.validateNameCallback(\n this.#nameEl.value\n );\n if (!!nameValidation) {\n // name is invalid\n this.#validateNameHandler(nameValidation);\n return;\n }\n\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 #descriptionValueHandler = () => {\n if (this.#nameModifiedByUser || this.#descriptionModifiedByUser) {\n return this.#descriptionEl.value;\n } else {\n // First try to get suggested description if callback exists\n if (this.suggestDescriptionCallback) {\n return this.description ?? this.selectedType.name;\n }\n return this.selectedType.name;\n }\n };\n\n /**\n * Gets the suggested name based on the context\n * @param selectedType The currently selected type\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #getNameSuggestion = async (selectedType: TypeData) => {\n if (this.suggestNameCallback) {\n const suggestedName = await this.suggestNameCallback();\n if (suggestedName) {\n return suggestedName.replace(/\\s/g, \"\");\n }\n }\n return selectedType.name.replace(/\\s/g, \"\");\n };\n\n /**\n * Gets the suggested description based on the context\n * @param selectedType The currently selected type\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #getDescriptionSuggestion = async (selectedType: TypeData) => {\n if (this.suggestDescriptionCallback) {\n const suggestedDescription = await this.suggestDescriptionCallback();\n if (suggestedDescription) {\n return suggestedDescription;\n }\n }\n return selectedType.name;\n };\n\n /**\n * Updates both name and description suggestions\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #updateSuggestions = async () => {\n if (!this.selectedType) {\n return;\n }\n\n if (!this.#nameModifiedByUser) {\n this.name = await this.#getNameSuggestion(this.selectedType);\n }\n\n if (!this.#descriptionModifiedByUser) {\n this.description = await this.#getDescriptionSuggestion(\n this.selectedType\n );\n }\n };\n\n /**\n * This method defines the initial selected category and type, and it then\n * initializes the name and description values.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #init = async () => {\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\n await this.#updateSuggestions();\n };\n\n /**\n * Initializes the selectedTypeMap with the defaultTypeId if it exists, otherwise\n * it initializes the selectedTypeMap with the first type of each category.\n */\n // eslint-disable-next-line @stencil-community/own-methods-must-be-private\n #initializeSelectedTypeMap() {\n this.typeCategories.forEach(category => {\n if (this.defaultTypeId && category.id === this.selectedCategory.id) {\n this.selectedTypeMap.set(category.id, this.selectedType.id);\n } else {\n this.selectedTypeMap.set(category.id, category.types[0].id);\n }\n });\n }\n\n #onBlurNameHandler = async () => {\n if (this.#nameEl.value) {\n const result: string | undefined = await this.validateNameCallback(\n this.#nameEl.value\n );\n this.#validateNameHandler(result);\n }\n };\n\n #onInputDescriptionHandler = (e: CustomEvent<string>) => {\n this.description = e.detail;\n this.#descriptionModifiedByUser = true;\n };\n\n #onInputNameHandler = async (e: CustomEvent<any> | InputEvent) => {\n const name = e.detail;\n if (!this.#descriptionModifiedByUser) {\n // Description should be equal to name, unless the description was already\n // modified by the user.\n this.#descriptionEl.value = name;\n }\n this.#nameModifiedByUser = true;\n };\n\n #onNameValueChangedHandler = async (e: CustomEvent<string>) => {\n const name = e.detail;\n if (name) {\n const result: string | undefined = await this.validateNameCallback(name);\n this.#validateNameHandler(result);\n }\n };\n\n #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 <label\n // Module/folder\n class=\"label api-module-label\"\n htmlFor=\"module\"\n >\n {labelDescription}\n </label>,\n <gx-ide-entity-selector\n id=\"module\"\n class=\"api-module-control\"\n part=\"module\"\n labelPosition=\"none\"\n value={this.parent}\n defaultValue={this.defaultParent}\n selectEntityCallback={this.selectModuleCallback}\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.#moduleFolderEl = el as HTMLGxIdeEntitySelectorElement)\n }\n ></gx-ide-entity-selector>\n ];\n }\n return null;\n };\n\n #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 #setSelectedCategoryOnActionList = () => {\n if (this.selectedCategory) {\n // update model by setting the selected category\n this.#categoriesActionListEl.updateItemProperties(\n this.selectedCategory.id,\n {\n selected: true,\n type: \"actionable\"\n }\n );\n }\n };\n\n #typeChangedHandler = async (\n selectionEvent: CustomEvent<ActionListItemModelExtended[]>\n ) => {\n const selection = selectionEvent.detail;\n if (selection.length > 0) {\n this.selectedType = this.selectedCategory.types.find(\n type => type.id === selection[0].item.id\n );\n this.selectedTypeMap.set(this.selectedCategory.id, this.selectedType.id);\n\n await this.#updateSuggestions();\n }\n };\n\n /**\n * If the parameter is undefined, it means the name is valid. Otherwise, if it\n * receives a string, it indicates that the name is not valid. The string is the\n * error message to display.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #validateNameHandler = (result: string | undefined): void => {\n this.nameValidationErrorMessage = result;\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n\n <section class=\"main\">\n <section class=\"field-group categories-types-layout spacing-body-inline spacing-body-block-start\">\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.#componentLocale.categorySelectionTitle}\n </label>\n <ch-action-list-render\n // #select a category\n // TODO: The \"scrollable\" class is a WA since the action-list currently does not support scrollbar customization\n class=\"list-box\"\n selection=\"single\"\n model={this.typeCategoriesActionListModel}\n sortItemsCallback={sortActionListDefault}\n onSelectedItemsChange={this.#categoryOnSelectionChangedHandler}\n ref={(el: HTMLChActionListRenderElement) =>\n (this.#categoriesActionListEl =\n el as HTMLChActionListRenderElement)\n }\n ></ch-action-list-render>\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.selectedCategory.name\n ? `${this.selectedCategory.name} ${\n this.#componentLocale.typeSelectionTitleSuffix\n }`\n : this.#componentLocale.typeSelectionTitle}\n </label>\n <ch-action-list-render\n // #data management types\n // TODO: The \"scrollable\" class is a WA since the action-list currently does not support scrollbar customization\n class=\"list-box\"\n selection=\"single\"\n sortItemsCallback={sortActionListDefault}\n model={mapTypeDataToActionListModel(\n this.selectedCategory.types,\n this.selectedCategory.id,\n this.selectedType.id\n )}\n onSelectedItemsChange={this.#typeChangedHandler}\n ></ch-action-list-render>\n </div>\n </section>\n\n <section class=\"api-description-layout field-group spacing-body-inline\">\n <h2\n // API Description\n class=\"text-align-center api-description-title subtitle-regular-xs\t\"\n >\n {this.selectedType?.description}\n </h2>\n\n <label\n // Name\n class=\"label api-name-label\"\n htmlFor=\"name\"\n >\n {this.#componentLocale.objectName}\n </label>\n <div>\n <ch-edit\n autoFocus\n class={{\n \"input\": true,\n \"api-name-control\": true,\n \"input-error\": !!this.nameValidationErrorMessage\n }}\n placeholder=\"Name\"\n value={this.name}\n ref={(el: HTMLChEditElement) =>\n (this.#nameEl = el as HTMLChEditElement)\n }\n onChange={this.#onNameValueChangedHandler}\n onInput={this.#onInputNameHandler as any}\n onBlur={this.#onBlurNameHandler}\n part=\"name\"\n ></ch-edit>\n {this.nameValidationErrorMessage && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={this.#nameEl as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.nameValidationErrorMessage}\n </ch-tooltip>\n )}\n </div>\n\n <label\n // Description\n class=\"label api-description-label\"\n htmlFor=\"description\"\n >\n {this.#componentLocale.objectDescription}\n </label>\n <ch-edit\n autoFocus\n class=\"input api-description-control\"\n placeholder=\"Description\"\n value={this.#descriptionValueHandler()}\n // TODO: toolTip={config.tooltip}\n ref={(el: HTMLChEditElement) =>\n (this.#descriptionEl = el as HTMLChEditElement)\n }\n onInput={this.#onInputDescriptionHandler as any}\n part=\"description\"\n ></ch-edit>\n\n {this.#renderModuleFolder()}\n </section>\n <footer class=\"footer control-footer-with-border spacing-body-inline spacing-body-block-end \">\n <div class=\"buttons-spacer\">\n <button\n // cancel\n class=\"button-secondary\"\n onClick={this.#cancelCallbackHandler}\n part=\"button button-cancel\"\n >\n {this.#componentLocale.footer.btnCancel}\n </button>\n\n <button\n // create\n class=\"button-primary\"\n onClick={this.#createCallbackHandler}\n disabled={!!this.nameValidationErrorMessage}\n part=\"button button-create\"\n >\n {this.#componentLocale.footer.btnCreate}\n </button>\n </div>\n </footer>\n </section>\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\nexport type SuggestNameCallback = () => Promise<string | undefined>;\nexport type SuggestDescriptionCallback = () => Promise<string | undefined>;\n"],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { r as e, h as t, H as n, a as i } from "./p-25a9f1d7.js";
|
|
|
2
2
|
|
|
3
3
|
import { g as o } from "./p-ede7bd20.js";
|
|
4
4
|
|
|
5
|
-
import { L as r } from "./p-
|
|
5
|
+
import { L as r } from "./p-311eedf3.js";
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* Returns initials from the first two words of a name. Returns "X" for invalid input.
|
|
@@ -81,9 +81,9 @@ const h = "my-account";
|
|
|
81
81
|
|
|
82
82
|
const _ = "change-team";
|
|
83
83
|
|
|
84
|
-
const
|
|
84
|
+
const v = "sign-out";
|
|
85
85
|
|
|
86
|
-
const
|
|
86
|
+
const w = "language";
|
|
87
87
|
|
|
88
88
|
const y = class {
|
|
89
89
|
constructor(t) {
|
|
@@ -103,9 +103,9 @@ const y = class {
|
|
|
103
103
|
const t = e.detail.id;
|
|
104
104
|
if (t === h) ; else if (t === _) {
|
|
105
105
|
this.changeTeamCallback();
|
|
106
|
-
} else if (t === w) {
|
|
107
|
-
this.signOutCallback();
|
|
108
106
|
} else if (t === v) {
|
|
107
|
+
this.signOutCallback();
|
|
108
|
+
} else if (t === w) {
|
|
109
109
|
this.changeLanguageCallback();
|
|
110
110
|
}
|
|
111
111
|
}));
|
|
@@ -133,7 +133,7 @@ const y = class {
|
|
|
133
133
|
id: _,
|
|
134
134
|
caption: l(this, c, "f").changeTeamLabel
|
|
135
135
|
}, {
|
|
136
|
-
id:
|
|
136
|
+
id: v,
|
|
137
137
|
caption: l(this, c, "f").signOutLabel
|
|
138
138
|
}, {
|
|
139
139
|
type: "separator"
|
|
@@ -143,7 +143,8 @@ const y = class {
|
|
|
143
143
|
} ], "f");
|
|
144
144
|
}
|
|
145
145
|
render() {
|
|
146
|
-
|
|
146
|
+
var e, i;
|
|
147
|
+
const o = limitFullName((e = this.userInfo) === null || e === void 0 ? void 0 : e.name);
|
|
147
148
|
return t(n, {
|
|
148
149
|
class: "widget"
|
|
149
150
|
}, t("ch-theme", {
|
|
@@ -156,9 +157,9 @@ const y = class {
|
|
|
156
157
|
onButtonClick: l(this, m, "f")
|
|
157
158
|
}, t("div", {
|
|
158
159
|
class: "user-login__details"
|
|
159
|
-
},
|
|
160
|
+
}, o ? t("span", {
|
|
160
161
|
class: "user-login__name"
|
|
161
|
-
},
|
|
162
|
+
}, o) : null, ((i = this.userInfo) === null || i === void 0 ? void 0 : i.team) ? t("span", {
|
|
162
163
|
class: "user-login__organization"
|
|
163
164
|
}, this.userInfo.team) : null), t("div", {
|
|
164
165
|
class: "user-login__avatar"
|
|
@@ -190,4 +191,4 @@ c = new WeakMap, d = new WeakMap, u = new WeakMap, f = new WeakMap, m = new Weak
|
|
|
190
191
|
y.style = s;
|
|
191
192
|
|
|
192
193
|
export { y as gx_ide_current_user_info };
|
|
193
|
-
//# sourceMappingURL=p-
|
|
194
|
+
//# sourceMappingURL=p-1c7ea1cb.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["getInitialsFromName","name","trim","nameData","split","filter","Boolean","length","toUpperCase","limitFullName","fullName","fullNameData","currentUserInfoCss","CSS_BUNDLES","CHEVRON_DOWN_ICON","getIconPath","category","colorType","MY_ACCOUNT_ID","CHANGE_TEAM_ID","SIGN_OUT_ID","LANGUAGE_ID","GxIdeNewEnvironment","_GxIdeNewEnvironment_componentLocale","set","this","_GxIdeNewEnvironment_initials","_GxIdeNewEnvironment_menuDropdownModel","_GxIdeNewEnvironment_userLoginButton","_GxIdeNewEnvironment_dropDownitemClickHandler","event","id","detail","changeTeamCallback","signOutCallback","changeLanguageCallback","componentWillLoad","__classPrivateFieldSet","Locale","getComponentStrings","el","userInfo","caption","__classPrivateFieldGet","changeTeamLabel","signOutLabel","type","render","userName","_a","h","Host","class","model","inlineAlign","blockAlign","onButtonClick","_b","team","src","containerRef","slot","onClick","termsCallback","termsAndConditionsCaption","privacyCallback","privacyPolicyCaption"],"sources":["src/components/current-user-info/helpers.tsx","src/components/current-user-info/current-user-info.scss?tag=gx-ide-current-user-info&encapsulation=shadow","src/components/current-user-info/current-user-info.tsx"],"sourcesContent":["/**\n * Returns initials from the first two words of a name. Returns \"X\" for invalid input.\n *\n * @param name - The full name string.\n * @returns Initials of the first two words, or \"X\" if invalid.\n *\n * Example:\n * getInitialsFromName(\"John Doe\") -> \"JD\"\n * getInitialsFromName(\"Jane\") -> \"J\"\n * getInitialsFromName(\"\") -> \"X\"\n */\nexport const getInitialsFromName = (name: string): string | null => {\n if (typeof name !== \"string\" || name.trim() === \"\") {\n return \"X\";\n }\n\n const nameData = name.split(\" \").filter(Boolean); // Remove any empty strings from splitting\n if (nameData.length === 1) {\n return nameData[0][0].toUpperCase();\n } else {\n return `${nameData[0][0].toUpperCase()}${nameData[1][0].toUpperCase()}`;\n }\n};\n\n/**\n * Limits the full name to the first two words. Returns null for invalid input.\n *\n * @param fullName - The full name string to be limited.\n * @returns The first two words of the full name, or null if invalid.\n *\n * Example:\n * limitFullName(\"John Doe Smith\") -> \"John Doe\"\n * limitFullName(\"Jane\") -> \"Jane\"\n * limitFullName(\"\") -> null\n */\nexport const limitFullName = (fullName: string): string | null => {\n if (typeof fullName !== \"string\" || fullName.trim() === \"\") {\n return null;\n }\n\n const fullNameData = fullName.split(\" \").filter(Boolean); // Remove any empty strings from splitting\n if (fullNameData.length === 1) {\n return fullNameData[0];\n } else {\n return `${fullNameData[0]} ${fullNameData[1]}`;\n }\n};\n","@import \"../../global/gx-ide-mixins.scss\";\n\n:host {\n display: inline-grid;\n justify-items: end;\n block-size: 100%;\n}\n\n.dropdown::part(expandable-button) {\n display: grid;\n grid-template-columns: max-content max-content max-content;\n align-items: center;\n gap: var(--mer-spacing--sm);\n block-size: auto;\n cursor: pointer;\n}\n.user-login {\n &__details {\n display: grid;\n grid-template-rows: max-content max-content;\n gap: var(--mer-spacing--3xs);\n justify-items: end;\n }\n &__name {\n font-weight: var(--mer-font__weight--medium);\n font-size: var(--mer-font__size--3xs);\n color: var(--mer-text__on-elevation);\n }\n &__organization {\n font-weight: var(--mer-font__weight--light);\n font-size: var(--mer-font__size--4xs);\n color: var(--mer-text__neutral);\n }\n &__name,\n &__organization {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n max-inline-size: 120px;\n display: inline-block;\n }\n &__avatar {\n font-size: 9px;\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n justify-content: center;\n block-size: var(--mer-spacing--lg);\n inline-size: var(--mer-spacing--lg);\n color: var(--mer-text__on-elevation);\n border-radius: 50%;\n background-color: var(--mer-color__tinted-primary--10);\n border: var(--mer-border__width--sm) solid var(--mer-color__primary--200);\n }\n\n &__footer {\n display: flex;\n flex-direction: column;\n gap: var(--mer-spacing--xs);\n @include button-reset();\n\n .agreement-link {\n text-decoration: underline;\n cursor: pointer; /* Ensure it still looks clickable */\n }\n }\n}\n","/* STENCIL IMPORTS */\nimport { Component, Element, Host, Prop, State, h } from \"@stencil/core\";\n\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\nimport { Locale } from \"../../common/locale\";\nimport { getInitialsFromName, limitFullName } from \"./helpers\";\nimport {\n ActionMenuItemActionableModel,\n ActionMenuModel,\n ChActionMenuRenderCustomEvent,\n ChPopoverAlign\n} from \"@genexus/chameleon-controls-library\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n // TODO: review if \"utils/form--full\" is required.\n \"resets/box-sizing\",\n \"components/tooltip\",\n \"components/switch\",\n \"components/icon\",\n \"components/dropdown\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"chameleon/scrollbar\"\n];\n\nconst CHEVRON_DOWN_ICON = getIconPath({\n category: \"navigation\",\n name: \"chevron-down\",\n colorType: \"neutral\"\n});\n\nconst MY_ACCOUNT_ID = \"my-account\";\nconst CHANGE_TEAM_ID = \"change-team\";\nconst SIGN_OUT_ID = \"sign-out\";\nconst LANGUAGE_ID = \"language\";\n\n@Component({\n tag: \"gx-ide-current-user-info\",\n styleUrl: \"current-user-info.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/current-user-info\"]\n})\nexport class GxIdeNewEnvironment {\n #componentLocale: any;\n #initials: string = \"\";\n // #mode: Mode;\n #menuDropdownModel: ActionMenuModel;\n\n @Element() el: HTMLGxIdeCurrentUserInfoElement;\n #userLoginButton: HTMLButtonElement;\n\n @State() showMenu: boolean = false;\n\n /**\n * User data\n */\n @Prop() readonly userInfo: UserInfo;\n\n /**\n * Callback executed when the user click \"My Account\" link\n */\n @Prop() readonly myAccountCallback!: () => Promise<void>;\n\n /**\n * Callback executed when the user click \"change team\" link\n */\n @Prop() readonly changeTeamCallback!: () => Promise<void>;\n\n /**\n * Callback executed when the user click \"Language\" link\n */\n @Prop() readonly changeLanguageCallback!: () => Promise<void>;\n\n /**\n * Callback executed when the user switch the \"Mode\" status\n */\n @Prop() readonly changeModeCallback!: (mode: Mode) => Promise<void>;\n\n /**\n * Defines the menu block and inline alignment\n */\n @Prop() readonly menuAlign: MenuAlign;\n\n /**\n * Callback executed when the user click \"Sign Out\" link\n */\n @Prop() readonly signOutCallback!: () => Promise<void>;\n\n /**\n * Callback executed when the user clicks on the \"term and conditions\" link\n */\n @Prop() readonly termsCallback: () => Promise<void>;\n\n /**\n * Callback executed when the user clicks on the \"privacy policy\" link\n */\n @Prop() readonly privacyCallback: () => Promise<void>;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.#initials = getInitialsFromName(this.userInfo.name);\n this.#menuDropdownModel = [\n // {\n // id: MY_ACCOUNT_ID,\n // caption: this.#componentLocale.myAccountLabel,\n // showSeparator: false\n // },\n {\n id: CHANGE_TEAM_ID,\n caption: this.#componentLocale.changeTeamLabel\n },\n {\n id: SIGN_OUT_ID,\n caption: this.#componentLocale.signOutLabel\n },\n {\n type: \"separator\"\n },\n {\n type: \"slot\",\n id: \"agreement\"\n }\n ];\n }\n\n // #handleModeSwitch = () => {\n // this.#mode = this.#mode === \"dark\" ? \"light\" : \"dark\";\n // if (this.changeModeCallback) {\n // this.changeModeCallback(this.#mode);\n // }\n // };\n\n #dropDownitemClickHandler = (\n event: ChActionMenuRenderCustomEvent<ActionMenuItemActionableModel>\n ): void => {\n const id = event.detail.id;\n if (id === MY_ACCOUNT_ID) {\n // this.myAccountCallback();\n } else if (id === CHANGE_TEAM_ID) {\n this.changeTeamCallback();\n } else if (id === SIGN_OUT_ID) {\n this.signOutCallback();\n } else if (id === LANGUAGE_ID) {\n this.changeLanguageCallback();\n }\n };\n\n render() {\n const userName = limitFullName(this.userInfo?.name);\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-action-menu-render\n class=\"dropdown user-login__button\"\n model={this.#menuDropdownModel}\n inlineAlign=\"inside-end\"\n blockAlign=\"outside-end\"\n onButtonClick={this.#dropDownitemClickHandler}\n >\n <div class=\"user-login__details\">\n {userName ? <span class=\"user-login__name\">{userName}</span> : null}\n {this.userInfo?.team ? (\n <span class=\"user-login__organization\">{this.userInfo.team}</span>\n ) : null}\n </div>\n <div class=\"user-login__avatar\">{this.#initials}</div>\n <ch-image\n src={CHEVRON_DOWN_ICON}\n class=\"icon-md\"\n containerRef={this.#userLoginButton}\n ></ch-image>\n <div class=\"user-login__footer footer-slot\" slot=\"agreement\">\n <button\n class=\"body-regular-s agreement-link\"\n onClick={this.termsCallback}\n >\n {this.#componentLocale.termsAndConditionsCaption}\n </button>\n <button\n class=\"body-regular-s\tagreement-link\"\n onClick={this.privacyCallback}\n >\n {this.#componentLocale.privacyPolicyCaption}\n </button>\n </div>\n </ch-action-menu-render>\n </Host>\n );\n }\n}\n\nexport type MenuAlign = {\n blockAlign: ChPopoverAlign;\n inlineAlign: ChPopoverAlign;\n};\n\nexport type UserInfo = {\n name: string;\n team: string;\n};\n\nexport type Mode = \"dark\" | \"light\";\n"],"mappings":"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"}
|
|
@@ -5,19 +5,22 @@ const i = ":root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--ds-bas
|
|
|
5
5
|
const a = class {
|
|
6
6
|
constructor(o) {
|
|
7
7
|
t(this, o);
|
|
8
|
-
this.headingClasses = () =>
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
8
|
+
this.headingClasses = () => {
|
|
9
|
+
var t;
|
|
10
|
+
return {
|
|
11
|
+
heading: true,
|
|
12
|
+
"heading--inactive": this.inactiveTitle,
|
|
13
|
+
"heading--slimmer": this.titleType === "secondary",
|
|
14
|
+
"heading--no-border": this.noHeadingBorder || this.hasOnlyHeading,
|
|
15
|
+
[`heading--justify-${this.headingJustify}`]: true,
|
|
16
|
+
"heading--no-padding": this.noHeadingPadding,
|
|
17
|
+
"heading--no-padding-block-end": this.noHeadingPaddingBlockEnd,
|
|
18
|
+
"heading--no-gap": this.noHeadingGap,
|
|
19
|
+
"heading--padding-top": this.headingPaddingTop && ((t = this.containerTitle) === null || t === void 0 ? void 0 : t.length) > 0,
|
|
20
|
+
"heading--form-text-height": this.titleHeightAsInput,
|
|
21
|
+
"heading--flex-row": this.flexRow
|
|
22
|
+
};
|
|
23
|
+
};
|
|
21
24
|
this.contentClasses = () => ({
|
|
22
25
|
content: true,
|
|
23
26
|
"content--flex": this.flexContent,
|
|
@@ -215,4 +218,4 @@ const s = class {
|
|
|
215
218
|
s.style = n;
|
|
216
219
|
|
|
217
220
|
export { a as gx_ide_container, s as gx_ide_title };
|
|
218
|
-
//# sourceMappingURL=p-
|
|
221
|
+
//# sourceMappingURL=p-1dd7be84.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["containerCss","GxIdeContainer","this","headingClasses","heading","inactiveTitle","titleType","noHeadingBorder","hasOnlyHeading","headingJustify","noHeadingPadding","noHeadingPaddingBlockEnd","noHeadingGap","headingPaddingTop","_a","containerTitle","length","titleHeightAsInput","flexRow","contentClasses","content","flexContent","noContentPadding","noContentGap","noContentBorderTop","contentBorderEnd","alignItems","undefined","justifyContent","aboveFooter","hasAboveFooterSlot","h","class","noBorderAboveFooter","noAboveFooterPadding","slimmerFooter","name","footer","hasFooterSlot","hasOnlyFooter","hasSlottedContent","noBorderFooter","footerJustify","noFooterPadding","componentWillLoad","evaluateSlots","headerSlot","el","querySelectorAll","hasHeaderSlot","slottedContent","footerAboveSlot","footerStartSlot","footerEndSlot","evaluateSections","hasOnlyContent","render","result","type","alignment","titleAlignment","part","Host","container","sectionsPadding","displayBorder","displayBorderTop","displayBorderEnd","displayBorderBottom","displayBorderStart","titleCss","GxIdeTitle","geminiType"],"sources":["src/components/_helpers/container/container.scss?tag=gx-ide-container&encapsulation=shadow","src/components/_helpers/container/container.tsx","src/components/_helpers/title/title.scss?tag=gx-ide-title&encapsulation=shadow","src/components/_helpers/title/title.tsx"],"sourcesContent":["@import \"../../../../node_modules/@genexus/gemini/dist/gemini/globals/mixins.scss\";\n\n/*******************************\nHOST / GENERAL\n********************************/\n:host {\n --gx-ide-container-elements-spacing: var(--mer-spacing--xs);\n display: block;\n height: 100%;\n box-sizing: border-box;\n}\n.container {\n display: grid;\n height: 100%;\n grid-template-rows: auto 1fr auto;\n box-sizing: border-box;\n}\n.heading,\n.content,\n.footer,\n.footer-above {\n padding: var(--gx-ide-container__padding);\n}\n/*PADDING*/\n.container--padding-s {\n --gx-ide-container__padding: var(--mer-spacing--xs);\n}\n.container--padding-m {\n --gx-ide-container__padding: var(--mer-spacing--sm);\n}\n.container--padding-l {\n --gx-ide-container__padding: var(--mer-spacing--md);\n}\n/*BORDERS*/\n.container--display-border {\n border: 1px solid var(--gx-ide-container-border-color);\n}\n.container--display-border-top {\n border-top: 1px solid var(--gx-ide-container-border-color);\n}\n.container--display-border-end {\n border-inline-end: 1px solid var(--gx-ide-container-border-color);\n}\n.container--display-border-bottom {\n border-bottom: 1px solid var(--gx-ide-container-border-color);\n}\n.container--display-border-start {\n border-inline-start: 1px solid var(--gx-ide-container-border-color);\n}\n.container--overflow-hidden-y {\n overflow-y: hidden;\n}\n/*******************************\nHEADING\n********************************/\n.heading {\n // @include gxg-flex-justify();\n display: flex;\n flex-direction: column;\n gap: var(--gx-ide-container__padding);\n width: 100%;\n box-sizing: border-box;\n border-bottom: 1px solid var(--gx-ide-container-border-color);\n &--no-border {\n border-bottom: 0;\n }\n &--no-padding {\n padding: 0;\n }\n &--no-padding-block-end {\n padding-block-end: 0;\n }\n &--no-gap {\n gap: 0;\n }\n &--inactive {\n color: var(--gxg-color--disabled);\n }\n &--padding-top {\n padding: var(--gx-ide-container__padding) 0 0 0;\n }\n &--slimmer {\n padding-top: var(--mer-spacing--xs);\n padding-bottom: var(--mer-spacing--xs);\n }\n &--form-text-height {\n .heading__title {\n min-height: var(--gxg-form-text-height);\n justify-content: center;\n }\n }\n &--flex-row {\n flex-direction: row;\n align-items: center;\n justify-content: center;\n }\n}\n/*******************************\nCONTENT\n********************************/\n.content {\n overflow-x: auto;\n display: flex;\n flex-direction: column;\n gap: var(--gx-ide-form-items-gap);\n box-sizing: border-box;\n @include gxg-scrollbar();\n\n &--no-padding {\n padding: 0;\n }\n &--no-border-top {\n border-top: none;\n }\n &--flex {\n display: flex;\n }\n &--no-gap {\n gap: 0;\n }\n &--align-items-start {\n align-items: start;\n }\n &--align-items-center {\n align-items: center;\n }\n &--align-items-end {\n align-items: end;\n }\n &--justify-content-start {\n justify-content: start;\n }\n &--justify-content-center {\n justify-content: center;\n }\n &--justify-content-end {\n justify-content: end;\n }\n &--border-end {\n border-inline-end: 1px solid var(--gx-ide-container-border-color);\n }\n}\n/*only content*/\n.container--only-content {\n grid-template-rows: 1fr;\n}\n/*no header, but has footer*/\n.container--no-header:not(.container--only-content) {\n grid-template-rows: 1fr auto;\n}\n/*no footer, but has header*/\n.container--no-footer:not(.container--only-content) {\n grid-template-rows: auto 1fr;\n}\n/*******************************\nFOOTER\n********************************/\n/*ABOVE*/\n.footer-above {\n border-top: 1px solid var(--gx-ide-container-border-color);\n &--no-border-top {\n border-top: 0;\n }\n &--slimmer {\n padding-top: var(--mer-spacing--xs);\n padding-bottom: var(--mer-spacing--xs);\n }\n &--no-padding {\n padding: 0;\n }\n}\n/*START and END*/\n.footer {\n display: flex;\n gap: var(--gx-ide-container-elements-spacing);\n flex-wrap: wrap;\n justify-content: space-between;\n align-items: center;\n border-top: 1px solid var(--gx-ide-container-border-color);\n &__start,\n &__end {\n display: flex;\n gap: var(--gx-ide-container-elements-spacing);\n }\n &--no-border {\n border-top: 0;\n }\n &--no-padding {\n padding: 0;\n }\n &--slimmer {\n padding-top: var(--mer-spacing--xs);\n padding-bottom: var(--mer-spacing--xs);\n }\n}\n","import { Component, Host, h, Prop, Element, State } from \"@stencil/core\";\nimport { TitleAlignment } from \"@genexus/gemini/dist/types/common/types\";\nimport { TitleType } from \"../title/title\";\n@Component({\n tag: \"gx-ide-container\",\n styleUrl: \"container.scss\",\n shadow: true\n})\nexport class GxIdeContainer {\n // 1.OWN PROPERTIES //\n\n /* GENERAL */\n\n /**\n * By setting the title to inactive, the color will be gray instead of black.\n */\n @Prop() readonly inactiveTitle: boolean = false;\n\n /**\n * The title of the container\n */\n @Prop() readonly containerTitle: string;\n\n /**\n * The title of the container\n */\n @Prop() readonly titleType: TitleType = \"primary\";\n\n /**\n * Displays a border all around the container\n */\n @Prop() readonly displayBorder: boolean = false;\n\n /**\n * Displays a border on the top\n */\n @Prop() readonly displayBorderTop: boolean = false;\n\n /**\n * Displays a border at the end\n */\n @Prop() readonly displayBorderEnd: boolean = false;\n\n /**\n * Displays a border at on the bottom\n */\n @Prop() readonly displayBorderBottom: boolean = false;\n\n /**\n * Displays a border at the start\n */\n @Prop() readonly displayBorderStart: boolean = false;\n\n /**\n * The container general padding (applies to .heading, .content, and .footer)\n */\n @Prop() readonly sectionsPadding: SectionsPadding = \"m\";\n\n /* HEADING*/\n\n /**\n * Title alignment\n */\n @Prop() readonly titleAlignment: TitleAlignment = \"center\";\n\n /**\n * Removes the border bottom from the heading\n */\n @Prop() readonly noHeadingBorder: boolean = false;\n\n /**\n * Removes the heading gap\n */\n @Prop() readonly noHeadingGap: boolean = false;\n\n /**\n * Removes the padding from the heading\n */\n @Prop() readonly noHeadingPadding: boolean = false;\n\n /**\n * Removes the padding block end from the heading\n */\n @Prop() readonly noHeadingPaddingBlockEnd: boolean = false;\n\n /**\n * Adds padding to the top of the heading\n */\n @Prop() readonly headingPaddingTop: boolean = false;\n\n /**\n * The heading justification\n */\n @Prop() readonly headingJustify: HeadingJustify = \"center\";\n\n /**\n * It forces the .heading__title min-height to be as tall as the gxg-form-text height. This is useful when you are displaying two gx-ide-container's on the same row, both of them display a title, and one of them displays a gxg-form-text in the header (usually used to filter content). Without this property set to true, the .heading without a gxg-from-text would be shorter. At the time of writing, this is used on ww-images.\n */\n @Prop() readonly titleHeightAsInput: boolean = false;\n\n /**\n * Makes the header (.heading) display flex:row, instad of the default flex:column.\n */\n @Prop() readonly flexRow: boolean = false;\n\n /* CONTENT */\n\n /**\n * Makes the content a flex container\n */\n @Prop() readonly flexContent: boolean = false;\n\n /**\n * Removes the border-top from the content\n */\n @Prop() readonly noContentBorderTop: boolean = false;\n\n /**\n * Removes the padding from the content\n */\n @Prop() readonly noContentPadding: boolean = false;\n\n /**\n * Removes the gap from the content\n */\n @Prop() readonly noContentGap: boolean = false;\n\n /**\n * Align items\n */\n @Prop() readonly alignItems: AlignItems = undefined;\n\n /**\n * Justify content\n */\n @Prop() readonly justifyContent: JustifyContent = undefined;\n\n /**\n * Display border end on the content\n */\n @Prop() readonly contentBorderEnd: boolean = false;\n\n /* FOOTER ABOVE */\n\n /**\n * Makes the above footer vertical padding slimmer\n */\n @Prop() readonly slimmerAboveFooter: boolean = false;\n\n /**\n * Removes the above padding from the footer\n */\n @Prop() readonly noAboveFooterPadding: boolean = false;\n\n /**\n * Removes the above border top\n */\n @Prop() readonly noBorderAboveFooter: boolean = false;\n\n /* FOOTER > START and FOOTER > END*/\n\n /**\n * Makes the footer vertical padding slimmer\n */\n @Prop() readonly slimmerFooter: boolean = false;\n\n /**\n * Removes the padding from the footer\n */\n @Prop() readonly noFooterPadding: boolean = false;\n\n /**\n * The footer justification\n */\n @Prop() readonly footerJustify: FooterJustify = \"end\";\n\n /**\n * Removes the border top from the footer\n */\n @Prop() readonly noBorderFooter: boolean = false;\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeContainerElement;\n\n // 3.STATE() VARIABLES //\n\n /**\n * A boolean variable indicating if the component has or not any content for the 'header' slot\n */\n @State() hasHeaderSlot = false;\n\n /**\n * A boolean variable indicating if the component has or not any content slotted content (regular slotted content, without 'slot' attribute)\n */\n @State() hasSlottedContent = false;\n\n /**\n * A boolean variable indicating if the component has or not any content for the 'footer' slot\n */\n @State() hasFooterSlot = false;\n\n /**\n * A boolean variable indicating if the component has or not any content for the 'footer' slot\n */\n @State() hasAboveFooterSlot = false;\n\n /**\n * A boolean variable indicating that the container only has the heading section\n */\n @State() hasOnlyHeading = false;\n\n /**\n * A boolean variable indicating that the container only has the content section\n */\n @State() hasOnlyContent = false;\n\n /**\n * A boolean variable indicating that the container only has the footer section\n */\n @State() hasOnlyFooter = false;\n\n // 4.PUBLIC PROPERTY API //\n\n // 5.EVENTS (EMIT) //\n\n // 6.COMPONENT LIFECYCLE EVENTS //\n\n componentWillLoad() {\n this.evaluateSlots();\n }\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n // 9.LOCAL METHODS //\n\n private evaluateSlots() {\n // header\n const headerSlot = this.el.querySelectorAll(':scope > [slot=\"header\"]');\n if (headerSlot.length) {\n this.hasHeaderSlot = true;\n }\n // content\n const slottedContent = this.el.querySelectorAll(\":scope > :not([slot])\");\n if (slottedContent.length) {\n this.hasSlottedContent = true;\n }\n // footer\n const footerAboveSlot = this.el.querySelectorAll(\n ':scope > [slot=\"footer-above\"]'\n );\n const footerStartSlot = this.el.querySelectorAll(\n ':scope > [slot=\"footer-start\"]'\n );\n const footerEndSlot = this.el.querySelectorAll(\n ':scope > [slot=\"footer-end\"]'\n );\n if (footerStartSlot.length || footerEndSlot.length) {\n this.hasFooterSlot = true;\n }\n if (footerAboveSlot.length) {\n this.hasAboveFooterSlot = true;\n }\n }\n\n private evaluateSections() {\n // has only heading\n if (\n !this.hasSlottedContent &&\n !this.hasFooterSlot &&\n !this.hasAboveFooterSlot\n ) {\n this.hasOnlyHeading = true;\n }\n // has only content\n if (\n this.hasSlottedContent &&\n !this.containerTitle &&\n !this.hasHeaderSlot &&\n !this.hasAboveFooterSlot &&\n !this.hasFooterSlot\n ) {\n this.hasOnlyContent = true;\n }\n // has only footer\n if (\n !this.hasSlottedContent &&\n !this.containerTitle &&\n !this.hasAboveFooterSlot\n ) {\n this.hasOnlyFooter = true;\n }\n }\n\n private headingClasses = (): string | { [className: string]: boolean } => {\n return {\n \"heading\": true,\n \"heading--inactive\": this.inactiveTitle,\n \"heading--slimmer\": this.titleType === \"secondary\",\n \"heading--no-border\": this.noHeadingBorder || this.hasOnlyHeading,\n [`heading--justify-${this.headingJustify}`]: true,\n \"heading--no-padding\": this.noHeadingPadding,\n \"heading--no-padding-block-end\": this.noHeadingPaddingBlockEnd,\n \"heading--no-gap\": this.noHeadingGap,\n \"heading--padding-top\":\n this.headingPaddingTop && this.containerTitle?.length > 0,\n \"heading--form-text-height\": this.titleHeightAsInput,\n \"heading--flex-row\": this.flexRow\n };\n };\n\n private contentClasses = (): string | { [className: string]: boolean } => {\n return {\n \"content\": true,\n \"content--flex\": this.flexContent,\n \"content--no-padding\": this.noContentPadding,\n \"content--no-gap\": this.noContentGap,\n \"content--no-border-top\": this.noContentBorderTop,\n \"content--border-end\": this.contentBorderEnd,\n [`content--align-items-${this.alignItems}`]:\n this.alignItems !== undefined,\n [`content--justify-content-${this.justifyContent}`]:\n this.justifyContent !== undefined\n };\n };\n\n private aboveFooter = (): any | null => {\n return this.hasAboveFooterSlot ? (\n <footer\n class={{\n \"footer-above\": true,\n \"footer-above--no-border-top\": this.noBorderAboveFooter,\n \"footer-above--no-padding\": this.noAboveFooterPadding,\n \"footer-above--slimmer\": this.slimmerFooter\n }}\n >\n <slot name=\"footer-above\"></slot>\n </footer>\n ) : null;\n };\n\n private footer = (): any | null => {\n return this.hasFooterSlot ? (\n <footer\n class={{\n \"footer\": true,\n \"footer--no-border\":\n this.hasOnlyFooter ||\n !this.hasSlottedContent ||\n this.noBorderFooter,\n [`footer--justify-${this.footerJustify}`]: true,\n [`footer--justify-${this.footerJustify}`]: true,\n \"footer--no-padding\": this.noFooterPadding,\n \"footer--slimmer\": this.slimmerFooter\n }}\n >\n <div class=\"footer__start\">\n <slot name=\"footer-start\"></slot>\n </div>\n <div class=\"footer__end\">\n <slot name=\"footer-end\"></slot>\n </div>\n </footer>\n ) : null;\n };\n\n // 10.RENDER() FUNCTION //\n\n render() {\n this.evaluateSections();\n const result = [\n this.containerTitle || this.hasHeaderSlot ? (\n <header class={this.headingClasses()}>\n {this.containerTitle ? (\n <gx-ide-title\n class=\"heading__title\"\n type={this.titleType}\n alignment={this.titleAlignment as any}\n >\n {this.containerTitle}\n </gx-ide-title>\n ) : null}\n {this.hasHeaderSlot ? (\n <div class=\"heading__inner-wrapper\">\n <slot name=\"header\"></slot>\n </div>\n ) : null}\n </header>\n ) : null,\n this.hasSlottedContent ? (\n <div class={this.contentClasses()} part=\"content\">\n <slot></slot>\n </div>\n ) : null,\n this.aboveFooter(),\n this.footer()\n ];\n\n return (\n <Host>\n <div\n class={{\n \"container\": true,\n [`container--padding-${this.sectionsPadding}`]: true,\n \"container--display-border\": this.displayBorder,\n \"container--display-border-top\": this.displayBorderTop,\n \"container--display-border-end\": this.displayBorderEnd,\n \"container--display-border-bottom\": this.displayBorderBottom,\n \"container--display-border-start\": this.displayBorderStart,\n \"container--only-content\": this.hasOnlyContent,\n \"container--no-header\": !this.hasHeaderSlot && !this.containerTitle,\n \"container--no-footer\":\n !this.hasFooterSlot && !this.hasAboveFooterSlot\n }}\n >\n {result}\n </div>\n </Host>\n );\n }\n}\n\nexport type HeadingJustify = \"start\" | \"center\" | \"end\";\nexport type FooterJustify = \"start\" | \"center\" | \"end\";\nexport type SectionsPadding = \"s\" | \"m\" | \"l\";\nexport type AlignItems = \"start\" | \"center\" | \"end\";\nexport type JustifyContent = \"start\" | \"center\" | \"end\";\n",":host {\n --gx-ide-title-padding: var(--gx-ide-container--padding, --mer-spacing--sm);\n display: flex;\n flex-direction: column;\n color: var(--gx-ide-component-text-color);\n font-family: var(--mer-font-family--primary);\n line-height: 1.6em;\n background-color: transparent;\n padding: 0;\n}\n/*alignment*/\n:host(.alignment--start) {\n align-items: start;\n}\n:host(.alignment--center) {\n align-items: center;\n}\n/*padding*/\n:host(.alignment--start) {\n text-align: start;\n}\n:host([padding]) {\n padding: var(--gx-ide-title-padding);\n}\n:host([no-padding-bottom]) {\n padding-bottom: 0;\n}\n/*border*/\n:host([border]) {\n border-bottom: 1px solid var(--gx-ide-container-border-color);\n}\n/*type*/\n:host(.title-type--primary) {\n}\n:host(.title-type--secondary) {\n //a little subtle\n color: var(--gray-06);\n}\n","import { Component, Host, h, Prop } from \"@stencil/core\";\nimport { TitleType as GeminiTitleType } from \"@genexus/gemini/dist/types/components/title/title\";\n\n@Component({\n tag: \"gx-ide-title\",\n styleUrl: \"title.scss\",\n shadow: true\n})\nexport class GxIdeTitle {\n /**\n * Description: This helper component has been created for using as a title for the dialogs sections.\n */\n\n private geminiType: GeminiTitleType;\n\n /**\n * The title caption (the title)\n */\n @Prop() readonly titleCaption: string;\n\n /**\n * The title caption (the title)\n */\n @Prop() readonly type: TitleType = \"primary\";\n\n /**\n * The title alignment\n */\n @Prop() readonly alignment: TitleAlignment = \"start\";\n\n /**\n * Disables the padding\n */\n @Prop({ reflect: true }) readonly padding: boolean = false;\n\n /**\n * Disables the padding on the bottom\n */\n @Prop({ reflect: true }) readonly noPaddingBottom: boolean = false;\n\n /**\n * Displays a border on the bottom\n */\n @Prop({ reflect: true }) readonly border: boolean = false;\n\n componentWillLoad() {\n if (this.type === \"primary\") {\n this.geminiType = \"title-04\";\n } else if (this.type === \"secondary\") {\n this.geminiType = \"title-05\";\n }\n }\n\n render() {\n return (\n <Host\n class={{\n [`alignment--${this.alignment}`]: true,\n [`title-type--${this.type}`]: true\n }}\n >\n <gxg-title type={this.geminiType} alignment={this.alignment}>\n <slot></slot>\n </gxg-title>\n </Host>\n );\n }\n}\n\nexport type TitleType = \"primary\" | \"secondary\";\n\nexport type TitleAlignment = \"start\" | \"center\";\n"],"mappings":"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"}
|
|
@@ -6,35 +6,34 @@ const o = {
|
|
|
6
6
|
"ch-edit": "input-error"
|
|
7
7
|
};
|
|
8
8
|
|
|
9
|
-
const toggleErrorClass = (c,
|
|
10
|
-
const
|
|
11
|
-
const
|
|
9
|
+
const toggleErrorClass = (c, e) => {
|
|
10
|
+
const r = e.tagName.toLowerCase();
|
|
11
|
+
const t = o[r];
|
|
12
12
|
if (c) {
|
|
13
|
-
|
|
13
|
+
e.classList.add(t);
|
|
14
14
|
} else {
|
|
15
|
-
|
|
15
|
+
e.classList.remove(t);
|
|
16
16
|
}
|
|
17
17
|
};
|
|
18
18
|
|
|
19
19
|
const validateControls = (o, c) => {
|
|
20
|
-
const
|
|
20
|
+
const e = new Map(c);
|
|
21
21
|
o.fieldErrors.forEach((o => {
|
|
22
22
|
const c = o.key;
|
|
23
|
-
const
|
|
24
|
-
const
|
|
25
|
-
if (
|
|
23
|
+
const r = o.hasError;
|
|
24
|
+
const t = e.get(c);
|
|
25
|
+
if (t === null || t === void 0 ? void 0 : t.reference) {
|
|
26
26
|
// toggle class to add or remove error style
|
|
27
|
-
toggleErrorClass(
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
hasError: e,
|
|
27
|
+
toggleErrorClass(r, t.reference);
|
|
28
|
+
e.set(c, Object.assign(Object.assign({}, t), {
|
|
29
|
+
hasError: r,
|
|
31
30
|
message: o.message
|
|
32
|
-
});
|
|
31
|
+
}));
|
|
33
32
|
}
|
|
34
33
|
}));
|
|
35
34
|
// return validatableControls updated.
|
|
36
|
-
return
|
|
35
|
+
return e;
|
|
37
36
|
};
|
|
38
37
|
|
|
39
38
|
export { validateControls as v };
|
|
40
|
-
//# sourceMappingURL=p-
|
|
39
|
+
//# sourceMappingURL=p-289c3290.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["formElementsErrorClassesDictionary","toggleErrorClass","hasError","element","elementTagName","tagName","toLowerCase","errorClass","classList","add","remove","validateControls","formSubmitResult","validatableControls","validatableControlsUpdated","Map","fieldErrors","forEach","fieldResult","fieldKey","key","fieldHasError","controlMapRecord","get","reference","set","Object","assign","message"],"sources":["src/common/form-validation.ts"],"sourcesContent":["import { FormSubmitResult, ConnectionResultData } from \"../common/types\";\nimport { FormComponent } from \"@genexus/gemini/dist/types/common/interfaces\";\n\n// formSubmitValidation will be deprecated. use \"validateControls\" instead.\nexport const formSubmitValidation = (\n result: FormSubmitResult | ConnectionResultData,\n ref: any\n) => {\n result.fieldErrors?.forEach(element => {\n const key = element.key;\n const message = element.message;\n const hasError = element.hasError;\n\n const reference: FormComponent = ref[`${key}El`];\n if (reference && hasError && message.trim()) {\n reference.validationStatus = \"error\";\n reference.validationMessage = message;\n } else if (reference && !hasError) {\n reference.validationStatus = \"indeterminate\";\n reference.validationMessage = null;\n }\n });\n};\n\n// TODO: Improve the way we mark components with error. We must not use error classes.\nconst formElementsErrorClassesDictionary = {\n \"ch-checkbox\": \"checkbox-error\",\n \"ch-combo-box-render\": \"combo-box-error\",\n \"ch-edit\": \"input-error\"\n} as const;\n\nconst toggleErrorClass = (hasError: boolean, element: HTMLElement) => {\n const elementTagName = element.tagName.toLowerCase();\n const errorClass =\n formElementsErrorClassesDictionary[\n elementTagName as keyof typeof formElementsErrorClassesDictionary\n ];\n if (hasError) {\n element.classList.add(errorClass);\n } else {\n element.classList.remove(errorClass);\n }\n};\n\nexport const validateControls = (\n formSubmitResult: FormSubmitResult,\n validatableControls: Map<string, ControlValidation>\n): Map<string, ControlValidation> => {\n const validatableControlsUpdated = new Map(validatableControls);\n formSubmitResult.fieldErrors.forEach(fieldResult => {\n const fieldKey = fieldResult.key;\n const fieldHasError = fieldResult.hasError;\n const controlMapRecord = validatableControlsUpdated.get(fieldKey);\n if (controlMapRecord?.reference) {\n // toggle class to add or remove error style\n toggleErrorClass(fieldHasError, controlMapRecord.reference);\n validatableControlsUpdated.set(fieldKey, {\n ...controlMapRecord,\n hasError: fieldHasError,\n message: fieldResult.message\n });\n }\n });\n // return validatableControls updated.\n return validatableControlsUpdated;\n};\n\nexport type ControlValidation = {\n reference: HTMLElement;\n hasError: boolean;\n message: string;\n};\n"],"mappings":";;AAyBA,MAAMA,IAAqC;EACzC,eAAe;EACf,uBAAuB;EACvB,WAAW;;;AAGb,MAAMC,mBAAmB,CAACC,GAAmBC;EAC3C,MAAMC,IAAiBD,EAAQE,QAAQC;EACvC,MAAMC,IACJP,EACEI;EAEJ,IAAIF,GAAU;IACZC,EAAQK,UAAUC,IAAIF;SACjB;IACLJ,EAAQK,UAAUE,OAAOH;;;;MAIhBI,mBAAmB,CAC9BC,GACAC;EAEA,MAAMC,IAA6B,IAAIC,IAAIF;EAC3CD,EAAiBI,YAAYC,SAAQC;IACnC,MAAMC,IAAWD,EAAYE;IAC7B,MAAMC,IAAgBH,EAAYhB;IAClC,MAAMoB,IAAmBR,EAA2BS,IAAIJ;IACxD,IAAIG,MAAgB,QAAhBA,WAAgB,aAAhBA,EAAkBE,WAAW;;MAE/BvB,iBAAiBoB,GAAeC,EAAiBE;MACjDV,EAA2BW,IAAIN,GAAQO,OAAAC,OAAAD,OAAAC,OAAA,IAClCL,IAAgB;QACnBpB,UAAUmB;QACVO,SAASV,EAAYU;;;;;IAK3B,OAAOd;AAA0B"}
|
|
@@ -4,9 +4,9 @@ import { g as o } from "./p-ede7bd20.js";
|
|
|
4
4
|
|
|
5
5
|
import { c as r } from "./p-13738332.js";
|
|
6
6
|
|
|
7
|
-
import { v as l } from "./p-
|
|
7
|
+
import { v as l } from "./p-289c3290.js";
|
|
8
8
|
|
|
9
|
-
import { L as c } from "./p-
|
|
9
|
+
import { L as c } from "./p-311eedf3.js";
|
|
10
10
|
|
|
11
11
|
const h = ":host{display:grid;block-size:100%;grid-template-rows:max-content 1fr max-content}.section{display:contents}header{display:grid;grid-template-rows:max-content;grid-template-columns:1fr 1fr max-content}.button-change{align-self:center;justify-self:end}.main{display:grid;grid-template-columns:1fr;grid-template-rows:max-content 1fr max-content max-content}.search-kbs{inline-size:50%}.versions-container{grid-auto-rows:max-content}.versions-container__input{display:grid;grid-template-columns:1fr max-content;gap:var(--mer-spacing--xs)}";
|
|
12
12
|
|
|
@@ -23,7 +23,7 @@ var f = undefined && undefined.__classPrivateFieldSet || function(t, e, s, i, n)
|
|
|
23
23
|
return i === "a" ? n.call(t, s) : n ? n.value = s : e.set(t, s), s;
|
|
24
24
|
};
|
|
25
25
|
|
|
26
|
-
var p, u, m, b, g,
|
|
26
|
+
var p, u, m, b, g, v, w, y, k, x, M, W, T, j, _;
|
|
27
27
|
|
|
28
28
|
const E = [ "resets/box-sizing", "utils/form--full", "utils/layout", "utils/typography", "utils/spacing", "components/list-box", "components/tooltip", "chameleon/scrollbar" ];
|
|
29
29
|
|
|
@@ -49,8 +49,8 @@ const C = class {
|
|
|
49
49
|
b.set(this, false);
|
|
50
50
|
g.set(this, s(`./gx-ide-assets/create-kb-from-server/shortcuts.json`));
|
|
51
51
|
// #selectedKbId: string;
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
v.set(this, void 0);
|
|
53
|
+
w.set(this, void 0);
|
|
54
54
|
y.set(this, (() => {
|
|
55
55
|
this.cancelCallback();
|
|
56
56
|
}));
|
|
@@ -76,16 +76,19 @@ const C = class {
|
|
|
76
76
|
}));
|
|
77
77
|
// TODO: evaluate if this should be a global helper function.
|
|
78
78
|
// It is used on other dialogs as well.
|
|
79
|
-
M.set(this, (t =>
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
79
|
+
M.set(this, (t => {
|
|
80
|
+
var e, s, n;
|
|
81
|
+
return ((s = (e = this.validatableControls) === null || e === void 0 ? void 0 : e.get(t === null || t === void 0 ? void 0 : t.id)) === null || s === void 0 ? void 0 : s.hasError) && ((n = this.validatableControls.get(t.id)) === null || n === void 0 ? void 0 : n.message) && i("ch-tooltip", {
|
|
82
|
+
class: "tooltip",
|
|
83
|
+
actionElement: t,
|
|
84
|
+
blockAlign: r.tooltipSettings.blockAlign,
|
|
85
|
+
inlineAlign: r.tooltipSettings.inlineAlign,
|
|
86
|
+
delay: r.tooltipSettings.delay
|
|
87
|
+
}, this.validatableControls.get(t.id).message);
|
|
88
|
+
}));
|
|
86
89
|
W.set(this, (() => {
|
|
87
90
|
// populate validatableControls with the controls that could have errors.
|
|
88
|
-
const t = [ d(this,
|
|
91
|
+
const t = [ d(this, w, "f") ];
|
|
89
92
|
t.forEach((t => {
|
|
90
93
|
if (t.id) {
|
|
91
94
|
this.validatableControls.set(t.id, {
|
|
@@ -147,7 +150,7 @@ const C = class {
|
|
|
147
150
|
this.selectKBVersionsCallback = undefined;
|
|
148
151
|
}
|
|
149
152
|
componentDidLoad() {
|
|
150
|
-
this.versionSelectedType = d(this,
|
|
153
|
+
this.versionSelectedType = d(this, v, "f").value;
|
|
151
154
|
d(this, W, "f").call(this);
|
|
152
155
|
}
|
|
153
156
|
componentDidRender() {
|
|
@@ -196,15 +199,15 @@ const C = class {
|
|
|
196
199
|
value: this.kbName,
|
|
197
200
|
onInput: d(this, T, "f"),
|
|
198
201
|
placeholder: d(this, m, "f").kb.localKbNamePlaceholder,
|
|
199
|
-
ref: t => f(this,
|
|
200
|
-
}), d(this, M, "f").call(this, d(this,
|
|
202
|
+
ref: t => f(this, w, t, "f")
|
|
203
|
+
}), d(this, M, "f").call(this, d(this, w, "f"))), i("div", {
|
|
201
204
|
class: "versions-container field-group"
|
|
202
205
|
}, i("ch-radio-group-render", {
|
|
203
206
|
class: "radio-group",
|
|
204
207
|
model: d(this, u, "f"),
|
|
205
208
|
onChange: d(this, j, "f"),
|
|
206
209
|
value: d(this, u, "f")[0].value,
|
|
207
|
-
ref: t => f(this,
|
|
210
|
+
ref: t => f(this, v, t, "f")
|
|
208
211
|
}), this.versionSelectedType === "Select" && i("div", {
|
|
209
212
|
class: "versions-container__item field-group"
|
|
210
213
|
}, i("div", {
|
|
@@ -237,10 +240,10 @@ const C = class {
|
|
|
237
240
|
};
|
|
238
241
|
|
|
239
242
|
p = new WeakMap, u = new WeakMap, m = new WeakMap, b = new WeakMap, g = new WeakMap,
|
|
240
|
-
|
|
243
|
+
v = new WeakMap, w = new WeakMap, y = new WeakMap, k = new WeakMap, x = new WeakMap,
|
|
241
244
|
M = new WeakMap, W = new WeakMap, T = new WeakMap, j = new WeakMap, _ = new WeakMap;
|
|
242
245
|
|
|
243
246
|
C.style = h;
|
|
244
247
|
|
|
245
248
|
export { C as gx_ide_share_kb };
|
|
246
|
-
//# sourceMappingURL=p-
|
|
249
|
+
//# sourceMappingURL=p-29c69938.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["shareKbCss","CSS_BUNDLES","GxIdeShareKb","_GxIdeShareKb_showMoreIcon","set","this","getIconPath","category","name","colorType","_GxIdeShareKb_versionsSelect","value","caption","_GxIdeShareKb__componentLocale","_GxIdeShareKb_renderedFirstTime","_GxIdeShareKb_shortcutsSrc","getAssetPath","_GxIdeShareKb_versionSelectedTypeEl","_GxIdeShareKb_KBNameEl","_GxIdeShareKb_cancelHandler","cancelCallback","_GxIdeShareKb_changeConnectionHandler","async","changeConnectionCallback","authenticationType","connectionData","serverUrl","userName","userPassword","_GxIdeShareKb_shareKBHandler","shareKBCallback","kbName","then","formSubmitResult","validatableControls","validateControls","_GxIdeShareKb_evaluateTooltipRender","controlReference","_b","_a","get","id","hasError","_c","message","h","class","actionElement","blockAlign","config","tooltipSettings","inlineAlign","delay","_GxIdeShareKb_initializeValidatableControls","__classPrivateFieldGet","forEach","validatableControl","reference","undefined","_GxIdeShareKb_kbNameInputHandler","event","detail","_GxIdeShareKb_versionsChangedHandler","versionSelectedType","_GxIdeShareKb_renderFooter","disableShareKbButton","length","onClick","part","footer","cancel","disabled","shareKB","Map","componentDidLoad","call","componentDidRender","componentDidRenderFirstTime","emit","componentName","__classPrivateFieldSet","componentWillLoad","Locale","getComponentStrings","el","render","Host","model","src","ref","chShortcutsEl","header","user","change","htmlFor","kb","aliasLabel","onInput","placeholder","localKbNamePlaceholder","onChange","versionsLabel","readonly","enableSelectVersionsButton","versionsPlaceholder","versionsPlaceholderDisabled","versionsValueInput"],"sources":["src/components/team-dev/share-kb/share-kb.scss?tag=gx-ide-share-kb&encapsulation=shadow","src/components/team-dev/share-kb/share-kb.tsx"],"sourcesContent":[":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.section {\n display: contents;\n}\n\n// - - - - - - - - - - -\n// Header\n// - - - - - - - - - - -\n\nheader {\n display: grid;\n grid-template-rows: max-content;\n grid-template-columns: 1fr 1fr max-content;\n}\n\n.button-change {\n align-self: center;\n justify-self: end;\n}\n\n// - - - - - - - - - - -\n// Main\n// - - - - - - - - - - -\n\n.main {\n display: grid;\n grid-template-columns: 1fr;\n grid-template-rows: max-content 1fr max-content max-content;\n}\n\n.search-kbs {\n inline-size: 50%;\n}\n\n.versions-container {\n grid-auto-rows: max-content;\n\n &__input {\n display: grid;\n grid-template-columns: 1fr max-content;\n gap: var(--mer-spacing--xs);\n }\n}\n","// Stencil\nimport {\n Component,\n Host,\n h,\n Prop,\n Event,\n EventEmitter,\n Element,\n State,\n getAssetPath\n} from \"@stencil/core\";\n\n// Other Libraries\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport { config } from \"../../../common/config\";\nimport { GXServerConnectionData } from \"../connect-gx-server/connect-gx-server\";\nimport { FormSubmitResult } from \"../../../common/types\";\nimport {\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { Locale } from \"../../../common/locale\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\nimport { ChEditCustomEvent } from \"@genexus/chameleon-controls-library\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"components/list-box\",\n \"components/tooltip\",\n \"chameleon/scrollbar\"\n];\n\n@Component({\n tag: \"gx-ide-share-kb\",\n styleUrl: \"share-kb.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/share-kb\"]\n})\nexport class GxIdeShareKb {\n #showMoreIcon = getIconPath({\n category: \"gemini-tools\",\n name: \"show-more-horizontal\",\n colorType: \"on-elevation\"\n });\n\n #versionsSelect: RadioGroupItemModel[] = [\n { value: \"Trunk\", caption: \"Trunk Version\" },\n { value: \"All\", caption: \"All Versions\" }\n // { value: \"Select\", caption: \"Select Version\" } TODO: display once \"gx-ide-select-kb-versions\" is ready.\n ];\n\n [key: string]: any;\n\n #_componentLocale: any;\n // uncomment #kbVersionsIds when versions selector is available\n // #kbVersionsIds: string[] = [];\n #renderedFirstTime = false;\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/create-kb-from-server/shortcuts.json`\n );\n // #selectedKbId: string;\n\n #versionSelectedTypeEl: HTMLChRadioGroupRenderElement;\n\n @Element() el: HTMLGxIdeShareKbElement;\n\n #KBNameEl!: HTMLChEditElement;\n\n /**\n * State to enable/disable the select versions button\n */\n @State() enableSelectVersionsButton: boolean = false;\n\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * The version selected type\n */\n @State() versionSelectedType: VersionOption;\n\n /**\n * String value to show the number of versions selected (\"N versions selected\")\n */\n @State() versionsValueInput: string = \"\";\n\n /**\n * Set of data required when executing any of the callbacks that require a connection to the server.\n */\n @Prop() readonly connectionData: GXServerConnectionData;\n\n /**\n * Callback that is invoked when the dialog is closed\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * The host reopens the gx-ide-connect-server login modal with the previous data, and closes the current modal\n */\n @Prop() readonly changeConnectionCallback: (\n data: GXServerConnectionData\n ) => Promise<void>;\n\n /**\n * The name of the KB.\n */\n @Prop({ mutable: true }) kbName: string;\n\n /**\n * Callback that must be invoked when the Share button is pressed.\n */\n @Prop() readonly shareKBCallback: (\n data: ShareKBData\n ) => Promise<FormSubmitResult>;\n\n /**\n * Callback invoked by pressing the ellipsis in the version selector. Receives the KB selected by the user, and displays the version selector dialog. Returns a list of versions chosen by the user.\n */\n @Prop() readonly selectKBVersionsCallback: (\n selectedKB: string\n ) => Promise<KBVersion[]>;\n\n /**\n * Emitted once just after the component is fully loaded and the first render() occurs\n */\n @Event() componentDidRenderFirstTime: EventEmitter<boolean>;\n\n componentDidLoad() {\n this.versionSelectedType = this.#versionSelectedTypeEl\n .value as VersionOption;\n\n this.#initializeValidatableControls();\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 async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n #cancelHandler = (): void => {\n this.cancelCallback();\n };\n\n #changeConnectionHandler = async (): Promise<void> => {\n this.changeConnectionCallback({\n authenticationType: this.connectionData.authenticationType,\n serverUrl: this.connectionData.serverUrl,\n userName: this.connectionData.userName,\n userPassword: this.connectionData.userPassword\n });\n };\n\n #shareKBHandler = async (): Promise<void> => {\n // uncomment the following lines when versions selector is available\n // if (this.versionSelectedType !== \"Select\") {\n // this.#kbVersionsIds = [];\n // }\n this.shareKBCallback({\n name: this.kbName,\n serverUrl: this.connectionData.serverUrl\n }).then((formSubmitResult: FormSubmitResult) => {\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n });\n };\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #initializeValidatableControls = () => {\n // populate validatableControls with the controls that could have errors.\n const validatableControls: HTMLElement[] = [this.#KBNameEl];\n validatableControls.forEach(validatableControl => {\n if (validatableControl.id) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #kbNameInputHandler = (event: ChEditCustomEvent<string> | InputEvent) => {\n this.kbName = event.detail as string;\n };\n\n // #selectedVersionHandler = async () => {\n // if (this.selectKBVersionsCallback) {\n // await this.selectKBVersionsCallback(this.#selectedKbId).then(result => {\n // if (result?.length) {\n // this.versionsValueInput = result.length\n // .toString()\n // .concat(this.#_componentLocale.kb.versionSelectedFieldValue);\n // this.#kbVersionsIds = result.map(kbVersion =>\n // kbVersion.id.toString()\n // );\n // }\n // });\n // }\n // };\n\n #versionsChangedHandler = (event: CustomEvent<string>) => {\n this.versionSelectedType = event.detail as VersionOption;\n };\n\n #renderFooter = () => {\n const disableShareKbButton = !this.kbName.length;\n return (\n <footer class=\"footer control-footer-with-border spacing-body-inline spacing-body-block-end\">\n <div class=\"buttons-spacer\">\n <button\n // cancel button\n class=\"button-secondary\"\n onClick={this.#cancelHandler}\n part=\"button button-cancel\"\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n\n <button\n // share kb button\n class=\"button-primary\"\n onClick={!disableShareKbButton && this.#shareKBHandler}\n disabled={disableShareKbButton}\n part=\"button button-create-kb\"\n >\n {this.#_componentLocale.footer.shareKB}\n </button>\n </div>\n </footer>\n );\n };\n\n render(): void {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n\n <section class=\"section\">\n <header class=\"header control-header-with-border space-body spacing-body-inline spacing-body-block-start\">\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.#_componentLocale.header.serverUrl}\n </label>\n <p>{this.connectionData.serverUrl}</p>\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\">{this.#_componentLocale.header.user}</label>\n <p>{this.connectionData.userName}</p>\n </div>\n\n <button\n class=\"button-tertiary button-change\"\n onClick={this.#changeConnectionHandler}\n >\n {this.#_componentLocale.header.change}\n </button>\n </header>\n\n <section class=\"main field-group spacing-body\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"alias\">\n {this.#_componentLocale.kb.aliasLabel}\n </label>\n <ch-edit\n // alias\n class=\"input\"\n id=\"kb-name\"\n value={this.kbName}\n onInput={this.#kbNameInputHandler}\n placeholder={this.#_componentLocale.kb.localKbNamePlaceholder}\n ref={(el: HTMLChEditElement) =>\n (this.#KBNameEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n {this.#evaluateTooltipRender(this.#KBNameEl)}\n </div>\n\n <div class=\"versions-container field-group\">\n <ch-radio-group-render\n class=\"radio-group\"\n model={this.#versionsSelect}\n onChange={this.#versionsChangedHandler}\n value={this.#versionsSelect[0].value}\n ref={el =>\n (this.#versionSelectedTypeEl =\n el as HTMLChRadioGroupRenderElement)\n }\n ></ch-radio-group-render>\n\n {this.versionSelectedType === \"Select\" && (\n <div class=\"versions-container__item field-group\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"control-id-1\">\n {this.#_componentLocale.kb.versionsLabel}\n </label>\n <div class=\"versions-container__input\">\n <ch-edit\n class=\"input\"\n readonly\n placeholder={\n this.enableSelectVersionsButton\n ? this.#_componentLocale.kb.versionsPlaceholder\n : this.#_componentLocale.kb\n .versionsPlaceholderDisabled\n }\n value={this.versionsValueInput}\n ></ch-edit>\n <button\n class=\"button-tertiary button-icon-only\"\n // onClick={this.#selectedVersionHandler}\n disabled={!this.enableSelectVersionsButton}\n >\n <ch-image\n src={this.#showMoreIcon}\n class=\"icon-sm\"\n ></ch-image>\n </button>\n </div>\n </div>\n </div>\n )}\n </div>\n </section>\n\n {this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type KBData = {\n id: string;\n name: string;\n};\n\nexport type KBVersion = {\n id: number;\n name: string;\n type: VersionType;\n};\n\nexport type ConnectionResultData = {\n formResult: FormSubmitResult;\n kbs: KBData[];\n};\n\nexport type ShareKBData = {\n name: string;\n serverUrl: string;\n};\n\nexport type VersionOption = \"Trunk\" | \"All\" | \"Select\";\n\nexport type VersionType = \"Branch\" | \"Frozen\";\n"],"mappings":";;;;;;;;;;AAAA,MAAMA,IAAa;;;;;;;;;;;;;;;;;AC4BnB,MAAMC,IAA8B,EAClC,qBACA,oBACA,gBACA,oBACA,iBACA,uBACA,sBACA;;MASWC,IAAY;;;;IACvBC,EAAAC,IAAAC,MAAgBC,EAAY;MAC1BC,UAAU;MACVC,MAAM;MACNC,WAAW;;IAGbC,EAAAN,IAAAC,MAAyC,EACvC;MAAEM,OAAO;MAASC,SAAS;OAC3B;MAAED,OAAO;MAAOC,SAAS;;IAM3BC,EAAAT,IAAAC,WAAA;;;QAGAS,EAAAV,IAAAC,MAAqB;IACrBU,EAAAX,IAAAC,MAAgBW,EACd;;QAIFC,EAAAb,IAAAC,WAAA;IAIAa,EAAAd,IAAAC,WAAA;IAgFAc,EAAAf,IAAAC,OAAiB;MACfA,KAAKe;AAAgB;IAGvBC,EAAAjB,IAAAC,OAA2BiB;MACzBjB,KAAKkB,yBAAyB;QAC5BC,oBAAoBnB,KAAKoB,eAAeD;QACxCE,WAAWrB,KAAKoB,eAAeC;QAC/BC,UAAUtB,KAAKoB,eAAeE;QAC9BC,cAAcvB,KAAKoB,eAAeG;;AAClC;IAGJC,EAAAzB,IAAAC,OAAkBiB;;;;;MAKhBjB,KAAKyB,gBAAgB;QACnBtB,MAAMH,KAAK0B;QACXL,WAAWrB,KAAKoB,eAAeC;SAC9BM,MAAMC;QACP5B,KAAK6B,sBAAsBC,EACzBF,GACA5B,KAAK6B;AACN;AACD;;;QAKJE,EAAAhC,IAAAC,OACEgC;;MAEA,SAAAC,KAAAC,IAAAlC,KAAK6B,yBAAmB,QAAAK,WAAA,aAAAA,EAAEC,IAAIH,MAAgB,QAAhBA,WAAgB,aAAhBA,EAAkBI,SAAG,QAAAH,WAAA,aAAAA,EAAEI,eACrDC,IAAAtC,KAAK6B,oBAAoBM,IAAIH,EAAiBI,SAAG,QAAAE,WAAA,aAAAA,EAAEC,YACjDC,EAAA;QACEC,OAAM;QACNC,eAAeV;QACfW,YAAYC,EAAOC,gBAAgBF;QACnCG,aAAaF,EAAOC,gBAAgBC;QACpCC,OAAOH,EAAOC,gBAAgBE;SAE7B/C,KAAK6B,oBAAoBM,IAAIH,EAAiBI,IAAIG;AAEtD;IAEHS,EAAAjD,IAAAC,OAAiC;;MAE/B,MAAM6B,IAAqC,EAACoB,EAAAjD,MAAIa,GAAA;MAChDgB,EAAoBqB,SAAQC;QAC1B,IAAIA,EAAmBf,IAAI;UACzBpC,KAAK6B,oBAAoB9B,IAAIoD,EAAmBf,IAAI;YAClDgB,WAAWD;YACXd,UAAU;YACVE,SAASc;;;;AAGb;IAGJC,EAAAvD,IAAAC,OAAuBuD;MACrBvD,KAAK0B,SAAS6B,EAAMC;AAAgB;;;;;;;;;;;;;;;QAkBtCC,EAAA1D,IAAAC,OAA2BuD;MACzBvD,KAAK0D,sBAAsBH,EAAMC;AAAuB;IAG1DG,EAAA5D,IAAAC,OAAgB;MACd,MAAM4D,KAAwB5D,KAAK0B,OAAOmC;MAC1C,OACErB,EAAA;QAAQC,OAAM;SACZD,EAAA;QAAKC,OAAM;SACTD,EAAA;;QAEEC,OAAM;QACNqB,SAASb,EAAAjD,MAAIc,GAAA;QACbiD,MAAK;SAEJd,EAAAjD,MAAIQ,GAAA,KAAmBwD,OAAOC,SAGjCzB,EAAA;;QAEEC,OAAM;QACNqB,UAAUF,KAAwBX,EAAAjD,MAAIwB,GAAA;QACtC0C,UAAUN;QACVG,MAAK;SAEJd,EAAAjD,MAAIQ,GAAA,KAAmBwD,OAAOG;AAG5B;sCAvLkC;+BAEhB,IAAIC;;8BAUG;;;;;;;;EA2CtC,gBAAAC;IACErE,KAAK0D,sBAAsBT,EAAAjD,MAAIY,GAAA,KAC5BN;IAEH2C,EAAAjD,MAAIgD,GAAA,KAA+BsB,KAAnCtE;;EAGF,kBAAAuE;IACE,KAAKtB,EAAAjD,MAAIS,GAAA,MAAqB;MAC5BT,KAAKwE,4BAA4BC,KAC/BxB,EAAAjD,MAAIQ,GAAA,KAAmBkE;MAEzBC,EAAA3E,MAAIS,GAAsB,MAAI;;;EAIlC,uBAAMmE;IACJD,EAAA3E,MAAIQ,SAA2BqE,EAAOC,oBAAoB9E,KAAK+E,KAAG;;EAmHpE,MAAAC;IACE,OACExC,EAACyC,GAAI;MAACxC,OAAM;OACVD,EAAA;MAAU0C,OAAOtF;QACjB4C,EAAA;MACE2C,KAAKlC,EAAAjD,MAAIU,GAAA;MACT0E,KAAML,KACH/E,KAAKqF,gBAAgBN;QAI1BvC,EAAA;MAASC,OAAM;OACbD,EAAA;MAAQC,OAAM;OACZD,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAOC,OAAM;OACVQ,EAAAjD,MAAIQ,GAAA,KAAmB8E,OAAOjE,YAEjCmB,EAAA,WAAIxC,KAAKoB,eAAeC,aAG1BmB,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAOC,OAAM;OAASQ,EAAAjD,MAAIQ,GAAA,KAAmB8E,OAAOC,OACpD/C,EAAA,WAAIxC,KAAKoB,eAAeE,YAG1BkB,EAAA;MACEC,OAAM;MACNqB,SAASb,EAAAjD,MAAIgB,GAAA;OAEZiC,EAAAjD,MAAIQ,GAAA,KAAmB8E,OAAOE,UAInChD,EAAA;MAASC,OAAM;OACbD,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAOC,OAAM;MAAQgD,SAAQ;OAC1BxC,EAAAjD,MAAIQ,GAAA,KAAmBkF,GAAGC,aAE7BnD,EAAA;;MAEEC,OAAM;MACNL,IAAG;MACH9B,OAAON,KAAK0B;MACZkE,SAAS3C,EAAAjD,MAAIsD,GAAA;MACbuC,aAAa5C,EAAAjD,MAAIQ,GAAA,KAAmBkF,GAAGI;MACvCV,KAAML,KACHJ,EAAA3E,MAAIa,GAAakE,GAAuB;QAG5C9B,EAAAjD,MAAI+B,GAAA,KAAuBuC,KAA3BtE,MAA4BiD,EAAAjD,MAAIa,GAAA,QAGnC2B,EAAA;MAAKC,OAAM;OACTD,EAAA;MACEC,OAAM;MACNyC,OAAOjC,EAAAjD,MAAIK,GAAA;MACX0F,UAAU9C,EAAAjD,MAAIyD,GAAA;MACdnD,OAAO2C,EAAAjD,MAAIK,GAAA,KAAiB,GAAGC;MAC/B8E,KAAKL,KACFJ,EAAA3E,MAAIY,GACHmE,GAAmC;QAIxC/E,KAAK0D,wBAAwB,YAC5BlB,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAKC,OAAM;OACTD,EAAA;MAAOC,OAAM;MAAQgD,SAAQ;OAC1BxC,EAAAjD,MAAIQ,GAAA,KAAmBkF,GAAGM,gBAE7BxD,EAAA;MAAKC,OAAM;OACTD,EAAA;MACEC,OAAM;MACNwD,UAAQ;MACRJ,aACE7F,KAAKkG,6BACDjD,EAAAjD,MAAIQ,GAAA,KAAmBkF,GAAGS,sBAC1BlD,EAAAjD,MAAIQ,GAAA,KAAmBkF,GACpBU;MAET9F,OAAON,KAAKqG;QAEd7D,EAAA;MACEC,OAAM;;MAENyB,WAAWlE,KAAKkG;OAEhB1D,EAAA;MACE2C,KAAKlC,EAAAjD,MAAIF,GAAA;MACT2C,OAAM;cAUrBQ,EAAAjD,MAAI2D,GAAA,KAAcW,KAAlBtE"}
|