@genexus/genexus-ide-ui 1.0.28 → 1.0.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +38 -6
- package/dist/cjs/MERCURY_ASSETS-56ba4d5e.js +9 -0
- package/dist/cjs/MERCURY_ASSETS-56ba4d5e.js.map +1 -0
- package/dist/cjs/gx-ide-ai-assistant.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-ai-message.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +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 +1 -1
- package/dist/cjs/gx-ide-bpm-import-files.cjs.entry.js +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-timer-duration.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-card.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +4 -4
- package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +3 -3
- package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-data-selector.cjs.entry.js +3 -3
- package/dist/cjs/gx-ide-data-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-design-import.cjs.entry.js +23 -9
- package/dist/cjs/gx-ide-design-import.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-edit-module-server.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-entity-selector.cjs.entry.js +4 -4
- package/dist/cjs/gx-ide-entity-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js +7 -7
- package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +6 -6
- package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js +4 -4
- 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 +4 -4
- package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-navigation-report.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-new-environment.cjs.entry.js +2 -2
- package/dist/cjs/gx-ide-new-environment.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-new-kb.cjs.entry.js +10 -10
- package/dist/cjs/gx-ide-new-kb.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-new-object.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-object-selector.cjs.entry.js +4 -4
- package/dist/cjs/gx-ide-object-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-references.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-share-kb.cjs.entry.js +3 -3
- package/dist/cjs/gx-ide-share-kb.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-splash.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-start-page.cjs.entry.js +6 -6
- 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 +1 -1
- 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 +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 +1 -1
- package/dist/cjs/gx-ide-template.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-welcome-page.cjs.entry.js +3 -3
- 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-images.cjs.entry.js +1 -1
- package/dist/cjs/locale-ff30a5f3.js +53 -0
- package/dist/cjs/locale-ff30a5f3.js.map +1 -0
- package/dist/collection/common/locale.js +16 -36
- package/dist/collection/common/locale.js.map +1 -1
- package/dist/collection/common/types.js.map +1 -1
- package/dist/collection/components/_helpers/card/gx-ide-assets/card/langs/card.lang.zh.json +8 -1
- package/dist/collection/components/_helpers/entity-selector/gx-ide-assets/entity-selector/langs/entity-selector.lang.ja.json +7 -0
- package/dist/collection/components/_helpers/entity-selector/gx-ide-assets/entity-selector/langs/entity-selector.lang.zh.json +7 -0
- package/dist/collection/components/_helpers/status-buttons/gx-ide-assets/status-buttons/langs/status-buttons.lang.zh.json +4 -4
- package/dist/collection/components/_starting-template/gx-ide-assets/template/langs/template.lang.zh.json +8 -1
- package/dist/collection/components/ai-assistant/gx-ide-assets/ai-assistant/langs/ai-assistant.lang.en.json +0 -1
- package/dist/collection/components/ai-assistant/gx-ide-assets/ai-assistant/langs/ai-assistant.lang.ja.json +0 -1
- package/dist/collection/components/ai-assistant/gx-ide-assets/ai-assistant/langs/ai-assistant.lang.zh.json +7 -1
- package/dist/collection/components/ai-assistant/gx-ide-assets/ai-message/langs/ai-message.lang.ja.json +2 -1
- package/dist/collection/components/ai-assistant/gx-ide-assets/ai-message/langs/ai-message.lang.zh.json +2 -1
- package/dist/collection/components/bpm/application-declaration/gx-ide-assets/bpm-app-declaration/langs/bpm-app-declaration.lang.zh.json +13 -1
- package/dist/collection/components/bpm/assign-roles/gx-ide-assets/bpm-assign-roles/langs/bpm-assign-roles.lang.zh.json +22 -1
- package/dist/collection/components/bpm/export-xpdl/gx-ide-assets/bpm-export-xpdl/langs/bpm-export-xpdl.lang.zh.json +17 -1
- package/dist/collection/components/bpm/import-files/gx-ide-assets/bpm-import-files/langs/bpm-import-files.lang.zh.json +16 -1
- package/dist/collection/components/bpm/import-gxpm/gx-ide-assets/bpm-import-gxpm/langs/bpm-import-gxpm.lang.zh.json +15 -1
- package/dist/collection/components/bpm/objects-selector/gx-ide-assets/bpm-objects-selector/langs/bpm-objects-selector.lang.zh.json +15 -1
- package/dist/collection/components/bpm/timer-duration/gx-ide-assets/bpm-timer-duration/langs/bpm-timer-duration.lang.zh.json +17 -1
- package/dist/collection/components/dashboard-home/gx-ide-assets/dashboard-home/langs/dashboard-home.lang.zh.json +41 -1
- package/dist/collection/components/data-selector/gx-ide-assets/data-selector/langs/data-selector.lang.zh.json +24 -1
- package/dist/collection/components/design-import/design-import.js +18 -4
- package/dist/collection/components/design-import/design-import.js.map +1 -1
- package/dist/collection/components/design-import/gx-ide-assets/design-import/langs/design-import.lang.ja.json +4 -1
- package/dist/collection/components/design-import/gx-ide-assets/design-import/langs/design-import.lang.zh.json +40 -1
- package/dist/collection/components/gam-installation-settings/gx-ide-assets/gam-installation-settings/langs/gam-installation-settings.lang.zh.json +41 -1
- package/dist/collection/components/kb-manager-export/gx-ide-assets/kb-manager-export/langs/kb-manager-export.lang.zh.json +25 -1
- package/dist/collection/components/kb-manager-import/gx-ide-assets/kb-manager-import/langs/kb-manager-import.lang.zh.json +31 -1
- package/dist/collection/components/kb-manager-import/kb-manager-import.js +1 -1
- package/dist/collection/components/modules/edit-module-server/gx-ide-assets/edit-module-server/langs/edit-module-server.lang.zh.json +9 -1
- package/dist/collection/components/modules/manage-module-references/gx-ide-assets/manage-module-references/langs/manage-module-references.lang.zh.json +37 -1
- package/dist/collection/components/modules/manage-module-references-v2/gx-ide-assets/manage-module-references-v2/langs/manage-module-references-v2.lang.zh.json +37 -1
- package/dist/collection/components/navigation-report/gx-ide-assets/navigation-report/langs/navigation-report.lang.ja.json +4 -1
- package/dist/collection/components/navigation-report/gx-ide-assets/navigation-report/langs/navigation-report.lang.zh.json +4 -1
- package/dist/collection/components/new-environment/gx-ide-assets/new-environment/langs/new-environment.lang.en.json +0 -1
- package/dist/collection/components/new-environment/gx-ide-assets/new-environment/langs/new-environment.lang.zh.json +26 -1
- package/dist/collection/components/new-environment/new-environment.js +1 -1
- package/dist/collection/components/new-environment/new-environment.js.map +1 -1
- package/dist/collection/components/new-kb/gx-ide-assets/new-kb/langs/new-kb.lang.ja.json +2 -2
- package/dist/collection/components/new-kb/gx-ide-assets/new-kb/langs/new-kb.lang.zh.json +75 -1
- package/dist/collection/components/new-kb/new-kb.js +26 -20
- package/dist/collection/components/new-kb/new-kb.js.map +1 -1
- package/dist/collection/components/new-kb/tests/new-kb.e2e.js +153 -0
- package/dist/collection/components/new-kb/tests/new-kb.e2e.js.map +1 -0
- package/dist/collection/components/new-object/gx-ide-assets/new-object/langs/new-object.lang.ja.json +3 -1
- package/dist/collection/components/new-object/gx-ide-assets/new-object/langs/new-object.lang.zh.json +13 -7
- package/dist/collection/components/object-selector/gx-ide-assets/object-selector/langs/object-selector.lang.ja.json +0 -1
- package/dist/collection/components/object-selector/gx-ide-assets/object-selector/langs/object-selector.lang.zh.json +48 -1
- package/dist/collection/components/references/gx-ide-assets/references/langs/references.lang.zh.json +13 -1
- package/dist/collection/components/splash/gx-ide-assets/splash/langs/splash.lang.ja.json +1 -0
- package/dist/collection/components/splash/gx-ide-assets/splash/langs/splash.lang.zh.json +1 -0
- package/dist/collection/components/team-dev/commit/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.zh.json +20 -1
- package/dist/collection/components/team-dev/connect-gx-server/gx-ide-assets/connect-gx-server/langs/connect-gx-server.lang.ja.json +11 -1
- package/dist/collection/components/team-dev/connect-gx-server/gx-ide-assets/connect-gx-server/langs/connect-gx-server.lang.zh.json +11 -1
- package/dist/collection/components/team-dev/select-recent-comment/gx-ide-assets/team-dev-select-recent-comment/langs/team-dev-select-recent-comment.lang.zh.json +3 -1
- package/dist/collection/components/team-dev/update/gx-ide-assets/team-dev-update/langs/team-dev-update.lang.zh.json +43 -1
- package/dist/collection/components/team-dev/update/update.js +1 -1
- package/dist/collection/components/team-dev/update-partial-selection/gx-ide-assets/team-dev-update-partial-selection/langs/team-dev-update-partial-selection.lang.zh.json +15 -1
- package/dist/collection/components/team-dev/update-to-revision/gx-ide-assets/team-dev-update-to-revision/langs/team-dev-update-to-revision.lang.zh.json +9 -1
- package/dist/collection/components/wf-settings/gx-ide-assets/wf-settings/langs/wf-settings.lang.zh.json +23 -1
- package/dist/collection/components/ww-images/gx-ide-assets/ww-images/langs/ww-images.lang.zh.json +47 -1
- package/dist/collection/testing/locale.e2e.js +155 -0
- package/dist/collection/testing/locale.e2e.js.map +1 -0
- package/dist/collection/testing/same-structure.e2e.js +29 -0
- package/dist/collection/testing/same-structure.e2e.js.map +1 -0
- package/dist/components/MERCURY_ASSETS.js +7 -0
- package/dist/components/MERCURY_ASSETS.js.map +1 -0
- package/dist/components/entity-selector.js +1 -1
- package/dist/components/gx-ide-create-kb-from-server.js +1 -1
- package/dist/components/gx-ide-dashboard-home.js +1 -1
- package/dist/components/gx-ide-data-selector.js +1 -1
- package/dist/components/gx-ide-design-import.js +19 -5
- package/dist/components/gx-ide-design-import.js.map +1 -1
- package/dist/components/gx-ide-kb-manager-export.js +1 -1
- package/dist/components/gx-ide-kb-manager-import.js +1 -1
- package/dist/components/gx-ide-manage-module-references-v2.js +1 -1
- package/dist/components/gx-ide-manage-module-references.js +1 -1
- package/dist/components/gx-ide-new-environment.js +1 -1
- package/dist/components/gx-ide-new-environment.js.map +1 -1
- package/dist/components/gx-ide-new-kb.js +8 -8
- package/dist/components/gx-ide-new-kb.js.map +1 -1
- package/dist/components/gx-ide-object-selector.js +1 -1
- package/dist/components/gx-ide-share-kb.js +1 -1
- package/dist/components/gx-ide-start-page.js +1 -1
- package/dist/components/gx-ide-welcome-page.js +1 -1
- package/dist/components/locale.js +17 -36
- package/dist/components/locale.js.map +1 -1
- package/dist/esm/MERCURY_ASSETS-827056e0.js +7 -0
- package/dist/esm/MERCURY_ASSETS-827056e0.js.map +1 -0
- package/dist/esm/gx-ide-ai-assistant.entry.js +1 -1
- package/dist/esm/gx-ide-ai-message.entry.js +1 -1
- package/dist/esm/gx-ide-bpm-app-declaration.entry.js +1 -1
- package/dist/esm/gx-ide-bpm-assign-roles.entry.js +1 -1
- package/dist/esm/gx-ide-bpm-export-xpdl.entry.js +1 -1
- package/dist/esm/gx-ide-bpm-import-files.entry.js +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-timer-duration.entry.js +1 -1
- package/dist/esm/gx-ide-card.entry.js +1 -1
- package/dist/esm/gx-ide-connect-gx-server.entry.js +1 -1
- package/dist/esm/gx-ide-create-kb-from-server.entry.js +2 -2
- package/dist/esm/gx-ide-dashboard-home.entry.js +2 -2
- package/dist/esm/gx-ide-data-selector.entry.js +2 -2
- package/dist/esm/gx-ide-design-import.entry.js +20 -6
- package/dist/esm/gx-ide-design-import.entry.js.map +1 -1
- package/dist/esm/gx-ide-edit-module-server.entry.js +1 -1
- package/dist/esm/gx-ide-entity-selector.entry.js +2 -2
- package/dist/esm/gx-ide-gam-installation-settings.entry.js +1 -1
- package/dist/esm/gx-ide-kb-manager-export.entry.js +2 -2
- package/dist/esm/gx-ide-kb-manager-import.entry.js +2 -2
- package/dist/esm/gx-ide-manage-module-references-v2.entry.js +2 -2
- package/dist/esm/gx-ide-manage-module-references.entry.js +2 -2
- package/dist/esm/gx-ide-navigation-report.entry.js +1 -1
- package/dist/esm/gx-ide-new-environment.entry.js +2 -2
- package/dist/esm/gx-ide-new-environment.entry.js.map +1 -1
- package/dist/esm/gx-ide-new-kb.entry.js +9 -9
- package/dist/esm/gx-ide-new-kb.entry.js.map +1 -1
- package/dist/esm/gx-ide-new-object.entry.js +1 -1
- package/dist/esm/gx-ide-object-selector.entry.js +2 -2
- package/dist/esm/gx-ide-references.entry.js +1 -1
- package/dist/esm/gx-ide-share-kb.entry.js +2 -2
- package/dist/esm/gx-ide-splash.entry.js +1 -1
- package/dist/esm/gx-ide-start-page.entry.js +2 -2
- package/dist/esm/gx-ide-status-buttons.entry.js +1 -1
- package/dist/esm/gx-ide-team-dev-commit.entry.js +1 -1
- 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 +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 +1 -1
- package/dist/esm/gx-ide-template.entry.js +1 -1
- package/dist/esm/gx-ide-welcome-page.entry.js +2 -2
- package/dist/esm/gx-ide-wf-settings.entry.js +1 -1
- package/dist/esm/gx-ide-ww-images.entry.js +1 -1
- package/dist/esm/locale-e5107fad.js +51 -0
- 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/gx-ide-assets/ai-assistant/langs/ai-assistant.lang.en.json +0 -1
- package/dist/genexus-ide-ui/gx-ide-assets/ai-assistant/langs/ai-assistant.lang.ja.json +0 -1
- package/dist/genexus-ide-ui/gx-ide-assets/ai-assistant/langs/ai-assistant.lang.zh.json +7 -1
- package/dist/genexus-ide-ui/gx-ide-assets/ai-message/langs/ai-message.lang.ja.json +2 -1
- package/dist/genexus-ide-ui/gx-ide-assets/ai-message/langs/ai-message.lang.zh.json +2 -1
- package/dist/genexus-ide-ui/gx-ide-assets/bpm-app-declaration/langs/bpm-app-declaration.lang.zh.json +13 -1
- package/dist/genexus-ide-ui/gx-ide-assets/bpm-assign-roles/langs/bpm-assign-roles.lang.zh.json +22 -1
- package/dist/genexus-ide-ui/gx-ide-assets/bpm-export-xpdl/langs/bpm-export-xpdl.lang.zh.json +17 -1
- package/dist/genexus-ide-ui/gx-ide-assets/bpm-import-files/langs/bpm-import-files.lang.zh.json +16 -1
- package/dist/genexus-ide-ui/gx-ide-assets/bpm-import-gxpm/langs/bpm-import-gxpm.lang.zh.json +15 -1
- package/dist/genexus-ide-ui/gx-ide-assets/bpm-objects-selector/langs/bpm-objects-selector.lang.zh.json +15 -1
- package/dist/genexus-ide-ui/gx-ide-assets/bpm-timer-duration/langs/bpm-timer-duration.lang.zh.json +17 -1
- package/dist/genexus-ide-ui/gx-ide-assets/card/langs/card.lang.zh.json +8 -1
- package/dist/genexus-ide-ui/gx-ide-assets/connect-gx-server/langs/connect-gx-server.lang.ja.json +11 -1
- package/dist/genexus-ide-ui/gx-ide-assets/connect-gx-server/langs/connect-gx-server.lang.zh.json +11 -1
- package/dist/genexus-ide-ui/gx-ide-assets/dashboard-home/langs/dashboard-home.lang.zh.json +41 -1
- package/dist/genexus-ide-ui/gx-ide-assets/data-selector/langs/data-selector.lang.zh.json +24 -1
- package/dist/genexus-ide-ui/gx-ide-assets/design-import/langs/design-import.lang.ja.json +4 -1
- package/dist/genexus-ide-ui/gx-ide-assets/design-import/langs/design-import.lang.zh.json +40 -1
- package/dist/genexus-ide-ui/gx-ide-assets/edit-module-server/langs/edit-module-server.lang.zh.json +9 -1
- package/dist/genexus-ide-ui/gx-ide-assets/entity-selector/langs/entity-selector.lang.ja.json +7 -0
- package/dist/genexus-ide-ui/gx-ide-assets/entity-selector/langs/entity-selector.lang.zh.json +7 -0
- package/dist/genexus-ide-ui/gx-ide-assets/gam-installation-settings/langs/gam-installation-settings.lang.zh.json +41 -1
- package/dist/genexus-ide-ui/gx-ide-assets/kb-manager-export/langs/kb-manager-export.lang.zh.json +25 -1
- package/dist/genexus-ide-ui/gx-ide-assets/kb-manager-import/langs/kb-manager-import.lang.zh.json +31 -1
- package/dist/genexus-ide-ui/gx-ide-assets/manage-module-references/langs/manage-module-references.lang.zh.json +37 -1
- package/dist/genexus-ide-ui/gx-ide-assets/manage-module-references-v2/langs/manage-module-references-v2.lang.zh.json +37 -1
- package/dist/genexus-ide-ui/gx-ide-assets/navigation-report/langs/navigation-report.lang.ja.json +4 -1
- package/dist/genexus-ide-ui/gx-ide-assets/navigation-report/langs/navigation-report.lang.zh.json +4 -1
- package/dist/genexus-ide-ui/gx-ide-assets/new-environment/langs/new-environment.lang.en.json +0 -1
- package/dist/genexus-ide-ui/gx-ide-assets/new-environment/langs/new-environment.lang.zh.json +26 -1
- package/dist/genexus-ide-ui/gx-ide-assets/new-kb/langs/new-kb.lang.ja.json +2 -2
- package/dist/genexus-ide-ui/gx-ide-assets/new-kb/langs/new-kb.lang.zh.json +75 -1
- package/dist/genexus-ide-ui/gx-ide-assets/new-object/langs/new-object.lang.ja.json +3 -1
- package/dist/genexus-ide-ui/gx-ide-assets/new-object/langs/new-object.lang.zh.json +13 -7
- package/dist/genexus-ide-ui/gx-ide-assets/object-selector/langs/object-selector.lang.ja.json +0 -1
- package/dist/genexus-ide-ui/gx-ide-assets/object-selector/langs/object-selector.lang.zh.json +48 -1
- package/dist/genexus-ide-ui/gx-ide-assets/references/langs/references.lang.zh.json +13 -1
- package/dist/genexus-ide-ui/gx-ide-assets/splash/langs/splash.lang.ja.json +1 -0
- package/dist/genexus-ide-ui/gx-ide-assets/splash/langs/splash.lang.zh.json +1 -0
- package/dist/genexus-ide-ui/gx-ide-assets/status-buttons/langs/status-buttons.lang.zh.json +4 -4
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.zh.json +20 -1
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-select-recent-comment/langs/team-dev-select-recent-comment.lang.zh.json +3 -1
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-update/langs/team-dev-update.lang.zh.json +43 -1
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-update-partial-selection/langs/team-dev-update-partial-selection.lang.zh.json +15 -1
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-update-to-revision/langs/team-dev-update-to-revision.lang.zh.json +9 -1
- package/dist/genexus-ide-ui/gx-ide-assets/template/langs/template.lang.zh.json +8 -1
- package/dist/genexus-ide-ui/gx-ide-assets/wf-settings/langs/wf-settings.lang.zh.json +23 -1
- package/dist/genexus-ide-ui/gx-ide-assets/ww-images/langs/ww-images.lang.zh.json +47 -1
- package/dist/genexus-ide-ui/{p-917ce3e0.entry.js → p-040bd0c5.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-9443457d.entry.js → p-092609aa.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-0a972eba.entry.js → p-0a690a6b.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-a502bb27.entry.js → p-10da0eee.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-d5640c94.entry.js → p-2b658e35.entry.js} +15 -15
- package/dist/genexus-ide-ui/p-311eedf3.js +54 -0
- package/dist/genexus-ide-ui/p-311eedf3.js.map +1 -0
- package/dist/genexus-ide-ui/{p-35ef493e.entry.js → p-31511545.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-67b85b1e.entry.js → p-324af897.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-ebf039c0.entry.js → p-33a1c48f.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-419f2d72.entry.js → p-3637528d.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-2505fcf6.entry.js → p-390498e4.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-57179086.entry.js → p-3c3b276e.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-dfab6c94.entry.js → p-5dfd773c.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-8a9c91ee.entry.js → p-64e09524.entry.js} +15 -15
- package/dist/genexus-ide-ui/p-64e09524.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-bc631b8c.entry.js → p-67b7c308.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-ce0ee69b.entry.js → p-6f3f4f54.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-a8504de9.entry.js → p-70a8edd9.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-7c0ad31a.entry.js → p-7754ae2e.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-05b4f908.entry.js → p-793248c8.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-a9fa775a.entry.js → p-7cdfbdba.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-0b0ce806.js → p-7d4c5a43.js} +5462 -5467
- package/dist/genexus-ide-ui/p-7d4c5a43.js.map +1 -0
- package/dist/genexus-ide-ui/{p-d1e2298a.entry.js → p-848b26be.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-4ca0f260.entry.js → p-8bb81d6f.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-92ce3790.entry.js → p-a0724750.entry.js} +12 -12
- package/dist/genexus-ide-ui/{p-0a831ef6.entry.js → p-a7027cf7.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-bc6bace4.entry.js → p-ad521974.entry.js} +21 -21
- package/dist/genexus-ide-ui/p-ad521974.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-3504f246.entry.js → p-b42dfccc.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-9860323f.entry.js → p-ba307cf6.entry.js} +64 -64
- package/dist/genexus-ide-ui/p-ba307cf6.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-5a0f8455.entry.js → p-bb9df26f.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-d4a0054d.entry.js → p-be0c10de.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-8cc0163b.entry.js → p-c2274796.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-42cd5e14.entry.js → p-cc0fbef2.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-7c07dcb9.entry.js → p-ccbd4dab.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-aa312e3c.entry.js → p-d18718c7.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-449ffb10.entry.js → p-d5aa2525.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-3faefc49.entry.js → p-de797eeb.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-59861b76.entry.js → p-e5712f63.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-63e03eac.entry.js → p-e5fb0c12.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-b72200db.entry.js → p-e774109a.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-925133b6.entry.js → p-ecd748ba.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-5949c9fc.entry.js → p-fa69428e.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-6ed93102.entry.js → p-faea4a40.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-05802b21.entry.js → p-fc61a10f.entry.js} +2 -2
- package/dist/types/common/locale.d.ts +0 -6
- package/dist/types/common/types.d.ts +16 -0
- package/dist/types/components/new-kb/new-kb.d.ts +1 -1
- package/dist/types/components.d.ts +7 -7
- package/package.json +9 -8
- package/dist/cjs/assets-manager-a318866f.js +0 -14743
- package/dist/cjs/assets-manager-a318866f.js.map +0 -1
- package/dist/cjs/locale-bf43b87c.js +0 -74
- package/dist/cjs/locale-bf43b87c.js.map +0 -1
- package/dist/collection/utils/utils.js +0 -4
- package/dist/collection/utils/utils.js.map +0 -1
- package/dist/collection/utils/utils.spec.js +0 -16
- package/dist/collection/utils/utils.spec.js.map +0 -1
- package/dist/components/assets-manager.js +0 -14741
- package/dist/components/assets-manager.js.map +0 -1
- package/dist/esm/assets-manager-5ac25bb6.js +0 -14741
- package/dist/esm/assets-manager-5ac25bb6.js.map +0 -1
- package/dist/esm/locale-3c32f251.js +0 -72
- package/dist/esm/locale-3c32f251.js.map +0 -1
- package/dist/genexus-ide-ui/p-0b0ce806.js.map +0 -1
- package/dist/genexus-ide-ui/p-74d59062.js +0 -63
- package/dist/genexus-ide-ui/p-74d59062.js.map +0 -1
- package/dist/genexus-ide-ui/p-8a9c91ee.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-9860323f.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-bc6bace4.entry.js.map +0 -1
- package/dist/types/utils/utils.d.ts +0 -1
- /package/dist/genexus-ide-ui/{p-917ce3e0.entry.js.map → p-040bd0c5.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-9443457d.entry.js.map → p-092609aa.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-0a972eba.entry.js.map → p-0a690a6b.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-a502bb27.entry.js.map → p-10da0eee.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-d5640c94.entry.js.map → p-2b658e35.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-35ef493e.entry.js.map → p-31511545.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-67b85b1e.entry.js.map → p-324af897.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-ebf039c0.entry.js.map → p-33a1c48f.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-419f2d72.entry.js.map → p-3637528d.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-2505fcf6.entry.js.map → p-390498e4.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-57179086.entry.js.map → p-3c3b276e.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-dfab6c94.entry.js.map → p-5dfd773c.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-bc631b8c.entry.js.map → p-67b7c308.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-ce0ee69b.entry.js.map → p-6f3f4f54.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-a8504de9.entry.js.map → p-70a8edd9.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-7c0ad31a.entry.js.map → p-7754ae2e.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-05b4f908.entry.js.map → p-793248c8.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-a9fa775a.entry.js.map → p-7cdfbdba.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-d1e2298a.entry.js.map → p-848b26be.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-4ca0f260.entry.js.map → p-8bb81d6f.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-92ce3790.entry.js.map → p-a0724750.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-0a831ef6.entry.js.map → p-a7027cf7.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-3504f246.entry.js.map → p-b42dfccc.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-5a0f8455.entry.js.map → p-bb9df26f.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-d4a0054d.entry.js.map → p-be0c10de.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-8cc0163b.entry.js.map → p-c2274796.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-42cd5e14.entry.js.map → p-cc0fbef2.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-7c07dcb9.entry.js.map → p-ccbd4dab.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-aa312e3c.entry.js.map → p-d18718c7.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-449ffb10.entry.js.map → p-d5aa2525.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-3faefc49.entry.js.map → p-de797eeb.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-59861b76.entry.js.map → p-e5712f63.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-63e03eac.entry.js.map → p-e5fb0c12.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-b72200db.entry.js.map → p-e774109a.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-925133b6.entry.js.map → p-ecd748ba.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-5949c9fc.entry.js.map → p-fa69428e.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-6ed93102.entry.js.map → p-faea4a40.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-05802b21.entry.js.map → p-fc61a10f.entry.js.map} +0 -0
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { r as t, h as e, H as s, g as i } from "./p-49712340.js";
|
|
2
2
|
|
|
3
|
-
import { g as a } from "./p-
|
|
3
|
+
import { g as a } from "./p-7d4c5a43.js";
|
|
4
4
|
|
|
5
5
|
import { c as o } from "./p-78b90603.js";
|
|
6
6
|
|
|
7
|
-
import { L as n } from "./p-
|
|
7
|
+
import { L as n } from "./p-311eedf3.js";
|
|
8
8
|
|
|
9
9
|
const mapStylesToComboBoxItemModel = t => t === null || t === void 0 ? void 0 : t.map((t => ({
|
|
10
10
|
value: t.id,
|
|
@@ -94,7 +94,7 @@ var p = undefined && undefined.__classPrivateFieldSet || function(t, e, s, i, a)
|
|
|
94
94
|
return i === "a" ? a.call(t, s) : a ? a.value = s : e.set(t, s), s;
|
|
95
95
|
};
|
|
96
96
|
|
|
97
|
-
var
|
|
97
|
+
var f, u, m, b, g, k, w, v, y, x, M, W, I, _, C, $, j, S, D, T, z, P, q, A, E, V, F, L, G, H, O, B, N, Y, J, K, Q, R, U, X, Z, tt, et, st, it, at, ot, nt, lt, rt;
|
|
98
98
|
|
|
99
99
|
const ht = "panels";
|
|
100
100
|
|
|
@@ -104,9 +104,9 @@ const dt = "images";
|
|
|
104
104
|
|
|
105
105
|
const pt = "design_system";
|
|
106
106
|
|
|
107
|
-
const
|
|
107
|
+
const ft = "fonts";
|
|
108
108
|
|
|
109
|
-
const
|
|
109
|
+
const ut = "@@@";
|
|
110
110
|
|
|
111
111
|
// ch-checkbox
|
|
112
112
|
const mt = "on";
|
|
@@ -133,12 +133,12 @@ const wt = [ "resets/box-sizing", "utils/form", "utils/layout", "utils/typograph
|
|
|
133
133
|
const vt = class {
|
|
134
134
|
constructor(s) {
|
|
135
135
|
t(this, s);
|
|
136
|
-
|
|
136
|
+
f.add(this);
|
|
137
137
|
/**
|
|
138
138
|
* The component hard-coded strings translations.
|
|
139
139
|
*/
|
|
140
140
|
// eslint-disable-next-line @stencil-community/own-props-must-be-private
|
|
141
|
-
|
|
141
|
+
u.set(this, void 0);
|
|
142
142
|
/**
|
|
143
143
|
* An array that keeps track of the tree items id's (design system data type
|
|
144
144
|
* + item id) along with the content, that will be used to save and retrieve
|
|
@@ -187,7 +187,7 @@ const vt = class {
|
|
|
187
187
|
if (t.detail.length) {
|
|
188
188
|
const s = (e = t.detail[0]) === null || e === void 0 ? void 0 : e.item;
|
|
189
189
|
const i = s.id;
|
|
190
|
-
const a = i.split(
|
|
190
|
+
const a = i.split(ut);
|
|
191
191
|
const o = a[0];
|
|
192
192
|
const n = a[1];
|
|
193
193
|
const l = o && o !== "parent";
|
|
@@ -206,8 +206,8 @@ const vt = class {
|
|
|
206
206
|
// Item has been queried already. The item content exists already.
|
|
207
207
|
this.selectedDesignType = t.designType;
|
|
208
208
|
this.selectedDesignItem = t.designDataDetail;
|
|
209
|
-
d(this,
|
|
210
|
-
d(this,
|
|
209
|
+
d(this, f, "m", H).call(this, t.designType);
|
|
210
|
+
d(this, f, "m", et).call(this, t.designType);
|
|
211
211
|
}
|
|
212
212
|
this.renderedTabs.clear();
|
|
213
213
|
this.renderedTabs.add(this.activeTabs.get(this.selectedDesignType));
|
|
@@ -218,7 +218,7 @@ const vt = class {
|
|
|
218
218
|
var e;
|
|
219
219
|
return (e = d(this, m, "f")) === null || e === void 0 ? void 0 : e.get(t);
|
|
220
220
|
}));
|
|
221
|
-
|
|
221
|
+
P.set(this, (t => {
|
|
222
222
|
const e = /^(\/|\.\/|(\w:))[^:*?"<>|]*\.(sketch|gxsketch)$/i;
|
|
223
223
|
// Match valid file paths
|
|
224
224
|
const s = /^https?:\/\/(www\.)?figma\.com/;
|
|
@@ -228,18 +228,18 @@ const vt = class {
|
|
|
228
228
|
const a = e.test(t) || s.test(t) || i.test(t);
|
|
229
229
|
return a;
|
|
230
230
|
}));
|
|
231
|
-
|
|
231
|
+
q.set(this, (t => {
|
|
232
232
|
const e = Array.from(t.detail.values());
|
|
233
233
|
let s = null;
|
|
234
234
|
const i = {};
|
|
235
235
|
for (const t of e) {
|
|
236
|
-
if (t.item.id.startsWith(`parent${
|
|
237
|
-
s = t.item.id.split(
|
|
236
|
+
if (t.item.id.startsWith(`parent${ut}`)) {
|
|
237
|
+
s = t.item.id.split(ut)[1];
|
|
238
238
|
i[s] = [];
|
|
239
239
|
} else if (t.item.checked && s) {
|
|
240
|
-
const e = t.item.id.split(
|
|
240
|
+
const e = t.item.id.split(ut)[1];
|
|
241
241
|
if (e === s) {
|
|
242
|
-
const e = t.item.id.split(
|
|
242
|
+
const e = t.item.id.split(ut)[0];
|
|
243
243
|
i[s].push(e);
|
|
244
244
|
}
|
|
245
245
|
}
|
|
@@ -314,7 +314,7 @@ const vt = class {
|
|
|
314
314
|
s = this.loadDesignSystemCallback;
|
|
315
315
|
break;
|
|
316
316
|
|
|
317
|
-
case
|
|
317
|
+
case ft:
|
|
318
318
|
s = this.loadFontCallback;
|
|
319
319
|
break;
|
|
320
320
|
|
|
@@ -327,8 +327,8 @@ const vt = class {
|
|
|
327
327
|
await s(t).then((t => {
|
|
328
328
|
this.selectedDesignType = e;
|
|
329
329
|
this.selectedDesignItem = t;
|
|
330
|
-
d(this,
|
|
331
|
-
d(this,
|
|
330
|
+
d(this, f, "m", H).call(this, e);
|
|
331
|
+
d(this, f, "m", et).call(this, e);
|
|
332
332
|
i = t;
|
|
333
333
|
}));
|
|
334
334
|
return i;
|
|
@@ -402,11 +402,11 @@ const vt = class {
|
|
|
402
402
|
const l = !this.pathIsValid && this.path.length > 0;
|
|
403
403
|
let r;
|
|
404
404
|
if (this.pathIsValid && this.path === this.lastLoadCallbackSettingValues.path) {
|
|
405
|
-
r = d(this,
|
|
405
|
+
r = d(this, u, "f").header.btnReload;
|
|
406
406
|
} else if (this.pathIsValid) {
|
|
407
|
-
r = d(this,
|
|
407
|
+
r = d(this, u, "f").header.btnLoad;
|
|
408
408
|
} else {
|
|
409
|
-
r = d(this,
|
|
409
|
+
r = d(this, u, "f").header.selectFileButton;
|
|
410
410
|
}
|
|
411
411
|
return e("header", {
|
|
412
412
|
class: {
|
|
@@ -421,7 +421,7 @@ const vt = class {
|
|
|
421
421
|
}, e("label", {
|
|
422
422
|
// path/url label
|
|
423
423
|
class: "label path-url-label"
|
|
424
|
-
}, d(this,
|
|
424
|
+
}, d(this, u, "f").header.path), e("div", {
|
|
425
425
|
class: "path-url-wrapper buttons-spacer"
|
|
426
426
|
}, e("ch-edit", {
|
|
427
427
|
// path/url/file input
|
|
@@ -438,7 +438,7 @@ const vt = class {
|
|
|
438
438
|
onInput: d(this, X, "f"),
|
|
439
439
|
onBlur: this.reactiveSettings.path && d(this, S, "f"),
|
|
440
440
|
disabled: this.isLoading,
|
|
441
|
-
placeholder: `${d(this,
|
|
441
|
+
placeholder: `${d(this, u, "f").header.pathPlaceholder}`,
|
|
442
442
|
startImgSrc: kt,
|
|
443
443
|
ref: t => p(this, C, t, "f")
|
|
444
444
|
}), l && e("ch-tooltip", {
|
|
@@ -447,7 +447,7 @@ const vt = class {
|
|
|
447
447
|
blockAlign: o.tooltipSettings.blockAlign,
|
|
448
448
|
inlineAlign: o.tooltipSettings.inlineAlign,
|
|
449
449
|
delay: o.tooltipSettings.delay
|
|
450
|
-
}, d(this,
|
|
450
|
+
}, d(this, u, "f").header.pathErrorMessage, " ", d(this, g, "f")), e("input", {
|
|
451
451
|
hidden: true,
|
|
452
452
|
type: "file",
|
|
453
453
|
accept: d(this, g, "f"),
|
|
@@ -456,8 +456,8 @@ const vt = class {
|
|
|
456
456
|
}), e("div", {
|
|
457
457
|
class: "buttons-spacer"
|
|
458
458
|
}, e("button", {
|
|
459
|
-
"aria-label": d(this,
|
|
460
|
-
title: d(this,
|
|
459
|
+
"aria-label": d(this, u, "f").header.removeFileSelection,
|
|
460
|
+
title: d(this, u, "f").header.removeFileSelection,
|
|
461
461
|
id: "reset-all-button",
|
|
462
462
|
class: "button-tertiary button-icon-only",
|
|
463
463
|
part: "reset-all-button",
|
|
@@ -482,7 +482,7 @@ const vt = class {
|
|
|
482
482
|
}, r))), this.requiresAccessToken && [ e("label", {
|
|
483
483
|
// access token label
|
|
484
484
|
class: "label access-token-label"
|
|
485
|
-
}, d(this,
|
|
485
|
+
}, d(this, u, "f").header.accessToken), e("div", null, e("ch-edit", {
|
|
486
486
|
class: {
|
|
487
487
|
input: true,
|
|
488
488
|
"access-token": true,
|
|
@@ -490,7 +490,7 @@ const vt = class {
|
|
|
490
490
|
},
|
|
491
491
|
ref: t => p(this, k, t, "f"),
|
|
492
492
|
value: this.accessToken,
|
|
493
|
-
placeholder: d(this,
|
|
493
|
+
placeholder: d(this, u, "f").header.accessTokenPlaceholder,
|
|
494
494
|
onFocus: d(this, R, "f"),
|
|
495
495
|
onBlur: d(this, U, "f"),
|
|
496
496
|
part: "access-token",
|
|
@@ -502,10 +502,10 @@ const vt = class {
|
|
|
502
502
|
blockAlign: o.tooltipSettings.blockAlign,
|
|
503
503
|
inlineAlign: o.tooltipSettings.inlineAlign,
|
|
504
504
|
delay: o.tooltipSettings.delay
|
|
505
|
-
}, d(this,
|
|
505
|
+
}, d(this, u, "f").header.accessTokenErrorMessage)) ], e("label", {
|
|
506
506
|
// style label
|
|
507
507
|
class: "label style-label"
|
|
508
|
-
}, d(this,
|
|
508
|
+
}, d(this, u, "f").header.style), e("ch-combo-box-render", {
|
|
509
509
|
// style combo box
|
|
510
510
|
suggest: true,
|
|
511
511
|
suggestOptions: {
|
|
@@ -520,7 +520,7 @@ const vt = class {
|
|
|
520
520
|
}), e("label", {
|
|
521
521
|
// module label
|
|
522
522
|
class: "label module-label"
|
|
523
|
-
}, d(this,
|
|
523
|
+
}, d(this, u, "f").header.module), e("gx-ide-entity-selector", {
|
|
524
524
|
// module entity selector
|
|
525
525
|
labelPosition: "none",
|
|
526
526
|
value: this.defaultModule,
|
|
@@ -534,7 +534,7 @@ const vt = class {
|
|
|
534
534
|
// import as web panels
|
|
535
535
|
class: "checkboxes-options field-group"
|
|
536
536
|
}, e("ch-checkbox", {
|
|
537
|
-
caption: d(this,
|
|
537
|
+
caption: d(this, u, "f").header.importAs,
|
|
538
538
|
checkedValue: mt,
|
|
539
539
|
class: "checkbox import-as-web-panels",
|
|
540
540
|
ref: t => p(this, w, t, "f"),
|
|
@@ -549,7 +549,7 @@ const vt = class {
|
|
|
549
549
|
}
|
|
550
550
|
}, e("ch-checkbox", {
|
|
551
551
|
// fit images
|
|
552
|
-
caption: d(this,
|
|
552
|
+
caption: d(this, u, "f").header.fitImages,
|
|
553
553
|
checkedValue: mt,
|
|
554
554
|
class: "checkbox",
|
|
555
555
|
part: "fit-images-checkbox",
|
|
@@ -585,13 +585,13 @@ const vt = class {
|
|
|
585
585
|
class: "empty-state scrollable",
|
|
586
586
|
stateIconSrc: gt,
|
|
587
587
|
isAnimated: d(this, b, "f"),
|
|
588
|
-
stateTitle: d(this,
|
|
588
|
+
stateTitle: d(this, u, "f").messages.noDesignSelected,
|
|
589
589
|
key: "no-objects-empty-state"
|
|
590
590
|
}, e("button", {
|
|
591
591
|
// begin by selecting a file
|
|
592
592
|
class: "button-tertiary empty-state-button",
|
|
593
593
|
onClick: d(this, A, "f")
|
|
594
|
-
}, d(this,
|
|
594
|
+
}, d(this, u, "f").messages.selectDesign));
|
|
595
595
|
}
|
|
596
596
|
}));
|
|
597
597
|
it.set(this, (() => e("ch-tree-view-render", {
|
|
@@ -605,7 +605,7 @@ const vt = class {
|
|
|
605
605
|
toggleCheckboxes: true,
|
|
606
606
|
checkbox: true,
|
|
607
607
|
checked: true,
|
|
608
|
-
onCheckedItemsChange: d(this,
|
|
608
|
+
onCheckedItemsChange: d(this, q, "f"),
|
|
609
609
|
onSelectedItemsChange: d(this, T, "f")
|
|
610
610
|
})));
|
|
611
611
|
at.set(this, (() => {
|
|
@@ -623,7 +623,7 @@ const vt = class {
|
|
|
623
623
|
onClick: d(this, B, "f"),
|
|
624
624
|
part: "button button--cancel",
|
|
625
625
|
slot: "footer-end"
|
|
626
|
-
}, d(this,
|
|
626
|
+
}, d(this, u, "f").footer.btnCancel), e("button", {
|
|
627
627
|
// button ok
|
|
628
628
|
id: "button-ok",
|
|
629
629
|
class: "button-primary button-ok",
|
|
@@ -632,7 +632,7 @@ const vt = class {
|
|
|
632
632
|
part: "button button--ok",
|
|
633
633
|
disabled: s,
|
|
634
634
|
slot: "footer-end"
|
|
635
|
-
}, d(this,
|
|
635
|
+
}, d(this, u, "f").footer.btnOk)));
|
|
636
636
|
}));
|
|
637
637
|
ot.set(this, (() => {
|
|
638
638
|
var t, s;
|
|
@@ -682,7 +682,7 @@ const vt = class {
|
|
|
682
682
|
scrollable: true,
|
|
683
683
|
"fit-images": this.fitImages
|
|
684
684
|
},
|
|
685
|
-
|
|
685
|
+
tabListPosition: "block-start",
|
|
686
686
|
model: this.tabsModel,
|
|
687
687
|
selectedId: this.activeTabs.get(this.selectedDesignType),
|
|
688
688
|
overflow: "auto",
|
|
@@ -710,7 +710,7 @@ const vt = class {
|
|
|
710
710
|
style: {
|
|
711
711
|
display: this.renderedTabs.has(l.composition.id) ? "" : "none"
|
|
712
712
|
}
|
|
713
|
-
}, this.selectedDesignType === dt || this.selectedDesignType ===
|
|
713
|
+
}, this.selectedDesignType === dt || this.selectedDesignType === ft ? d(this, nt, "f").call(this) : d(this, ot, "f").call(this)), e("div", {
|
|
714
714
|
slot: l.layout.slot,
|
|
715
715
|
class: "spacing-body",
|
|
716
716
|
style: {
|
|
@@ -789,15 +789,15 @@ const vt = class {
|
|
|
789
789
|
const t = d(this, Y, "f").call(this, this.designData.panels);
|
|
790
790
|
this.designDataTreeDataModel = [ {
|
|
791
791
|
order: 0,
|
|
792
|
-
id: `parent${
|
|
792
|
+
id: `parent${ut}${ht}`,
|
|
793
793
|
leaf: false,
|
|
794
|
-
caption: d(this,
|
|
794
|
+
caption: d(this, u, "f").tree.panels,
|
|
795
795
|
startImgSrc: "objects/panel-for-sd",
|
|
796
796
|
checkbox: true,
|
|
797
797
|
checked: true,
|
|
798
798
|
expanded: true,
|
|
799
799
|
items: this.designData.panels.map(((e, s) => ({
|
|
800
|
-
id: `${e.id}${
|
|
800
|
+
id: `${e.id}${ut}${ht}`,
|
|
801
801
|
class: "object tree-view-item",
|
|
802
802
|
leaf: true,
|
|
803
803
|
caption: e.name,
|
|
@@ -808,15 +808,15 @@ const vt = class {
|
|
|
808
808
|
})))
|
|
809
809
|
}, {
|
|
810
810
|
order: 1,
|
|
811
|
-
id: `parent${
|
|
811
|
+
id: `parent${ut}${ct}`,
|
|
812
812
|
leaf: false,
|
|
813
|
-
caption: d(this,
|
|
813
|
+
caption: d(this, u, "f").tree.stencils,
|
|
814
814
|
startImgSrc: "objects/stencil",
|
|
815
815
|
checkbox: true,
|
|
816
816
|
checked: true,
|
|
817
817
|
expanded: true,
|
|
818
818
|
items: this.designData.stencils.map((t => ({
|
|
819
|
-
id: `${t.id}${
|
|
819
|
+
id: `${t.id}${ut}${ct}`,
|
|
820
820
|
class: "object tree-view-item",
|
|
821
821
|
leaf: true,
|
|
822
822
|
caption: t.name,
|
|
@@ -826,16 +826,16 @@ const vt = class {
|
|
|
826
826
|
})))
|
|
827
827
|
}, {
|
|
828
828
|
order: 2,
|
|
829
|
-
id: `parent${
|
|
829
|
+
id: `parent${ut}${dt}`,
|
|
830
830
|
parts: "category tree-view-item",
|
|
831
831
|
leaf: false,
|
|
832
|
-
caption: d(this,
|
|
832
|
+
caption: d(this, u, "f").tree.images,
|
|
833
833
|
startImgSrc: "objects/image",
|
|
834
834
|
checkbox: true,
|
|
835
835
|
checked: true,
|
|
836
836
|
expanded: true,
|
|
837
837
|
items: this.designData.images.map((t => ({
|
|
838
|
-
id: `${t.id}${
|
|
838
|
+
id: `${t.id}${ut}${dt}`,
|
|
839
839
|
class: "object tree-view-item",
|
|
840
840
|
leaf: true,
|
|
841
841
|
caption: t.name,
|
|
@@ -845,15 +845,15 @@ const vt = class {
|
|
|
845
845
|
})))
|
|
846
846
|
}, {
|
|
847
847
|
order: 3,
|
|
848
|
-
id: `parent${
|
|
848
|
+
id: `parent${ut}${ft}`,
|
|
849
849
|
leaf: false,
|
|
850
|
-
caption: d(this,
|
|
850
|
+
caption: d(this, u, "f").tree.fonts,
|
|
851
851
|
startImgSrc: "controls/font",
|
|
852
852
|
checkbox: true,
|
|
853
853
|
checked: true,
|
|
854
854
|
expanded: true,
|
|
855
855
|
items: this.designData.fonts.map((t => ({
|
|
856
|
-
id: `${t.id}${
|
|
856
|
+
id: `${t.id}${ut}${ft}`,
|
|
857
857
|
class: "object tree-view-item",
|
|
858
858
|
leaf: true,
|
|
859
859
|
caption: t.name,
|
|
@@ -863,9 +863,9 @@ const vt = class {
|
|
|
863
863
|
})))
|
|
864
864
|
}, {
|
|
865
865
|
order: 4,
|
|
866
|
-
id: `${this.designData.designSystem.length > 0 ? this.designData.designSystem[0].id : "parent"}${
|
|
866
|
+
id: `${this.designData.designSystem.length > 0 ? this.designData.designSystem[0].id : "parent"}${ut}${pt}`,
|
|
867
867
|
leaf: true,
|
|
868
|
-
caption: d(this,
|
|
868
|
+
caption: d(this, u, "f").tree.designSystem,
|
|
869
869
|
startImgSrc: "objects/dso",
|
|
870
870
|
checkbox: true,
|
|
871
871
|
checked: true
|
|
@@ -875,7 +875,7 @@ const vt = class {
|
|
|
875
875
|
pathChanged(t) {
|
|
876
876
|
var e;
|
|
877
877
|
const s = ((e = this.selectedFile) === null || e === void 0 ? void 0 : e.size) > 0;
|
|
878
|
-
const i = d(this,
|
|
878
|
+
const i = d(this, P, "f").call(this, t) || s;
|
|
879
879
|
this.pathIsValid = i;
|
|
880
880
|
}
|
|
881
881
|
accessTokenChanged(t) {
|
|
@@ -891,7 +891,7 @@ const vt = class {
|
|
|
891
891
|
}
|
|
892
892
|
async componentWillLoad() {
|
|
893
893
|
var t, e;
|
|
894
|
-
p(this,
|
|
894
|
+
p(this, u, await n.getComponentStrings(this.el), "f");
|
|
895
895
|
p(this, g, this.extensions.map((t => `.${t}`)).join(", "), "f");
|
|
896
896
|
this.stylesChanged(this.styles);
|
|
897
897
|
d(this, $, "f").call(this);
|
|
@@ -932,16 +932,16 @@ const vt = class {
|
|
|
932
932
|
}
|
|
933
933
|
};
|
|
934
934
|
|
|
935
|
-
|
|
935
|
+
u = new WeakMap, m = new WeakMap, b = new WeakMap, g = new WeakMap, k = new WeakMap,
|
|
936
936
|
w = new WeakMap, v = new WeakMap, y = new WeakMap, x = new WeakMap, M = new WeakMap,
|
|
937
937
|
W = new WeakMap, I = new WeakMap, _ = new WeakMap, C = new WeakMap, $ = new WeakMap,
|
|
938
|
-
j = new WeakMap, S = new WeakMap, T = new WeakMap, z = new WeakMap,
|
|
939
|
-
|
|
938
|
+
j = new WeakMap, S = new WeakMap, T = new WeakMap, z = new WeakMap, P = new WeakMap,
|
|
939
|
+
q = new WeakMap, A = new WeakMap, E = new WeakMap, V = new WeakMap, F = new WeakMap,
|
|
940
940
|
L = new WeakMap, G = new WeakMap, O = new WeakMap, B = new WeakMap, N = new WeakMap,
|
|
941
941
|
Y = new WeakMap, J = new WeakMap, K = new WeakMap, Q = new WeakMap, R = new WeakMap,
|
|
942
942
|
U = new WeakMap, X = new WeakMap, Z = new WeakMap, tt = new WeakMap, st = new WeakMap,
|
|
943
943
|
it = new WeakMap, at = new WeakMap, ot = new WeakMap, nt = new WeakMap, lt = new WeakMap,
|
|
944
|
-
rt = new WeakMap,
|
|
944
|
+
rt = new WeakMap, f = new WeakSet, D = function _GxIdeImportFromDesign_loadTreeItemCompositionModel(t) {
|
|
945
945
|
const e = [];
|
|
946
946
|
for (const s of t) {
|
|
947
947
|
let t = {
|
|
@@ -954,7 +954,7 @@ rt = new WeakMap, u = new WeakSet, D = function _GxIdeImportFromDesign_loadTreeI
|
|
|
954
954
|
};
|
|
955
955
|
if (s.controls) {
|
|
956
956
|
t = Object.assign(Object.assign({}, t), {
|
|
957
|
-
items: d(this,
|
|
957
|
+
items: d(this, f, "m", _GxIdeImportFromDesign_loadTreeItemCompositionModel).call(this, s.controls)
|
|
958
958
|
});
|
|
959
959
|
}
|
|
960
960
|
e.push(t);
|
|
@@ -977,7 +977,7 @@ rt = new WeakMap, u = new WeakSet, D = function _GxIdeImportFromDesign_loadTreeI
|
|
|
977
977
|
switch (t) {
|
|
978
978
|
case ht:
|
|
979
979
|
case ct:
|
|
980
|
-
this.detailTreeModel = d(this,
|
|
980
|
+
this.detailTreeModel = d(this, f, "m", D).call(this, this.selectedDesignItem.composition.controls);
|
|
981
981
|
break;
|
|
982
982
|
}
|
|
983
983
|
};
|
|
@@ -985,4 +985,4 @@ rt = new WeakMap, u = new WeakSet, D = function _GxIdeImportFromDesign_loadTreeI
|
|
|
985
985
|
vt.style = c;
|
|
986
986
|
|
|
987
987
|
export { vt as gx_ide_design_import };
|
|
988
|
-
//# sourceMappingURL=p-
|
|
988
|
+
//# sourceMappingURL=p-ba307cf6.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["mapStylesToComboBoxItemModel","styles","map","style","value","id","caption","label","name","TAB_DATA","layout","slot","code","tokens","composition","TAB_MODEL","panels","stencils","images","fonts","designSystem","DESIGN_TYPE_TO_TAB_MODEL_MAP","Map","designImportCss","DESIGN_DATA_TYPE_PANELS","DESIGN_DATA_TYPE_STENCILS","DESIGN_DATA_TYPE_IMAGES","DESIGN_DATA_TYPE_DESIGN_SYSTEM","DESIGN_DATA_TYPE_FONTS","ITEM_COMPOSE_ID_SEPARATOR","CHECKED_VALUE","MENU_DELETE","getIconPath","category","colorType","DESIGN","FILE_UPLOAD","CSS_BUNDLES","GxIdeImportFromDesign","_GxIdeImportFromDesign_componentLocale","set","this","_GxIdeImportFromDesign_loadedItems","_GxIdeImportFromDesign_emptyStateAnimated","_GxIdeImportFromDesign_formattedExtensions","_GxIdeImportFromDesign_accessTokenEl","_GxIdeImportFromDesign_importAsWebPanelsEl","_GxIdeImportFromDesign_moduleEl","_GxIdeImportFromDesign_messagesList","_GxIdeImportFromDesign_panelsSelected","_GxIdeImportFromDesign_stencilsSelected","_GxIdeImportFromDesign_imagesSelected","_GxIdeImportFromDesign_fontsSelected","_GxIdeImportFromDesign_fileInputHiddenEl","_GxIdeImportFromDesign_pathEl","_GxIdeImportFromDesign_initializeActiveTabs","activeTabs","_GxIdeImportFromDesign_evaluateAccessTokenRender","async","requiresAccessToken","requiresAccessTokenCallback","path","accessToken","length","accessTokenHasError","_GxIdeImportFromDesign_pathURLBlurHandler","loadDataCondition1","isLoaded","reactiveSettings","pathIsValid","lastLoadCallbackSettingValues","loadDataCondition2","__classPrivateFieldGet","_GxIdeImportFromDesign_loadData","call","_GxIdeImportFromDesign_objectsTreeSelectedItemsChangedHandler","event","detail","item","_a","itemComposedId","idList","split","itemId","itemDesignType","isChildNode","isDesignSystem","tabsModel","get","selectedDesignType","loadedItem","_GxIdeImportFromDesign_getLoadedItem","designDataDetail","_GxIdeImportFromDesign_getDesignDataDetail","designType","selectedDesignItem","_GxIdeImportFromDesign_instances","_GxIdeImportFromDesign_getCodeFactory","_GxIdeImportFromDesign_renderDetailDataTree","renderedTabs","clear","add","_GxIdeImportFromDesign_validatePath","validPathRegex","figmaURLRegex","urlWithExtensionRegex","test","_GxIdeImportFromDesign_objectsTreeCheckedItemsChangedHandler","items","Array","from","values","currentParentId","result","startsWith","checked","parentId","push","__classPrivateFieldSet","_GxIdeImportFromDesign_selectFileHandler","click","_GxIdeImportFromDesign_styleComboBoxInputHandler","styleValue","target","_GxIdeImportFromDesign_moduleInputHandler","module","defaultModule","isLoading","source","selectedFile","token","undefined","importAsWebPanels","designData","loadCallback","_GxIdeImportFromDesign_messageCallback","messages","success","firstDesignSystemName","_b","moduleId","message","loadFn","loadImageCallback","loadDesignSystemCallback","loadFontCallback","loadPanelDataCallback","returnedData","then","data","_GxIdeImportFromDesign_confirm","confirmCallback","styleName","_GxIdeImportFromDesign_cancel","cancelCallback","_GxIdeImportFromDesign_fitImagesHandler","fitImages","_GxIdeImportFromDesign_getPanelsSelectedItem","reduce","minIndex","index","_GxIdeImportFromDesign_importAsWebPanelsChangedHandler","loadData","_GxIdeImportFromDesign_removeFileSelection","_GxIdeImportFromDesign_selectFileInputChangedHandler","files","_GxIdeImportFromDesign_accessFocusHandler","element","type","_GxIdeImportFromDesign_accessBlurHandler","accessTokenChanged","_GxIdeImportFromDesign_pathUrlInputHandler","_GxIdeImportFromDesign_renderHeader","primaryButtonDisabled","clearFileButtonDisabled","stylesComboDisabled","moduleDisabled","pathWithErrorStyles","displayPathErrorTooltip","primaryButtonCaption","header","btnReload","btnLoad","selectFileButton","h","class","input","debounce","config","inputDebounce","part","onInput","onBlur","disabled","placeholder","pathPlaceholder","startImgSrc","ref","el","actionElement","blockAlign","tooltipSettings","inlineAlign","delay","pathErrorMessage","hidden","accept","onChange","removeFileSelection","title","onClick","src","accessTokenPlaceholder","onFocus","accessTokenErrorMessage","suggest","suggestOptions","alreadyProcessed","model","stylesAsComboBoxModel","labelPosition","defaultValue","selectEntityCallback","selectModuleCallback","onValueChanged","importAs","checkedValue","designDataTreeDataModel","_GxIdeImportFromDesign_renderMessages","text","_GxIdeImportFromDesign_renderMain","_GxIdeImportFromDesign_renderDesignTree","_GxIdeImportFromDesign_renderDesignTabsCh","stateIconSrc","isAnimated","stateTitle","noDesignSelected","key","selectDesign","showLines","dragDisabled","dropDisabled","toggleCheckboxes","checkbox","onCheckedItemsChange","onSelectedItemsChange","_GxIdeImportFromDesign_renderFooter","buttonOkDisabled","footer","btnCancel","btnOk","_GxIdeImportFromDesign_renderPanelTab","renderControlsTree","detailTreeModel","preview","alt","_GxIdeImportFromDesign_renderImageTab","height","_GxIdeImportFromDesign_tabSelectionChangedHandler","newSelectedId","reRenderCounter","tab","scrollable","tabListPosition","selectedId","overflow","contain","onSelectedItemChange","display","has","Set","pathIsValidChanged","designDataChanged","newDesignData","panelsSelectedItem","order","leaf","tree","expanded","i","selected","parts","pathChanged","newPath","fileIsLoaded","size","validatePathResult","newAccessToken","trim","stylesChanged","newStyles","componentWillLoad","Locale","getComponentStrings","extensions","ext","join","watchMessagesHandler","newValue","oldValue","scrollTop","scrollHeight","render","Host","controls","modelList","control","Object","assign","_GxIdeImportFromDesign_loadTreeItemCompositionModel","textEditorFactoryCallback"],"sources":["src/components/design-import/helpers.ts","src/components/design-import/models.ts","src/components/design-import/design-import.scss?tag=gx-ide-design-import&encapsulation=shadow","src/components/design-import/design-import.tsx"],"sourcesContent":["import { ComboBoxModel } from \"@genexus/chameleon-controls-library\";\nimport { GxOption } from \"../../common/types\";\n\nexport const mapStylesToComboBoxItemModel = (\n styles: GxOption[]\n): ComboBoxModel =>\n styles?.map(style => ({\n value: style.id,\n caption: style.label || style.name\n }));\n","import { TabModel } from \"@genexus/chameleon-controls-library\";\nimport { DesignType } from \"./design-import\";\n\nexport const TAB_DATA: { [key in TAB_SELECTOR]: TabData } = {\n layout: { id: \"layout\", caption: \"Layout\", slot: \"layout\" },\n code: { id: \"code\", caption: \"Code\", slot: \"code\" },\n tokens: { id: \"tokens\", caption: \"Tokens\", slot: \"tokens\" },\n styles: { id: \"styles\", caption: \"Styles\", slot: \"styles\" },\n composition: {\n id: \"composition\",\n caption: \"Composition\",\n slot: \"composition\"\n }\n};\n\nexport const TAB_MODEL: TabDataModel = {\n panels: [\n {\n id: TAB_DATA.composition.id,\n name: TAB_DATA.composition.caption\n },\n {\n id: TAB_DATA.layout.id,\n name: TAB_DATA.layout.caption\n },\n {\n id: TAB_DATA.code.id,\n name: TAB_DATA.code.caption\n }\n ],\n stencils: [\n {\n id: TAB_DATA.composition.id,\n name: TAB_DATA.composition.caption\n },\n {\n id: TAB_DATA.layout.id,\n name: TAB_DATA.layout.caption\n },\n {\n id: TAB_DATA.code.id,\n name: TAB_DATA.code.caption\n }\n ],\n images: [\n {\n id: TAB_DATA.composition.id,\n name: TAB_DATA.composition.caption\n }\n ],\n fonts: [\n {\n id: TAB_DATA.composition.id,\n name: TAB_DATA.composition.caption\n }\n ],\n designSystem: [\n {\n id: TAB_DATA.tokens.id,\n name: TAB_DATA.tokens.caption\n },\n {\n id: TAB_DATA.styles.id,\n name: TAB_DATA.styles.caption\n }\n ]\n};\n\nexport type TabDataModel = {\n panels: TabModel;\n stencils: TabModel;\n images: TabModel;\n fonts: TabModel;\n designSystem: TabModel;\n};\n\ntype TabData = {\n id: TAB_SELECTOR;\n caption: string;\n slot: TAB_SELECTOR;\n};\n\nexport type TAB_SELECTOR =\n | \"layout\"\n | \"code\"\n | \"tokens\"\n | \"styles\"\n | \"composition\";\n\nexport const DESIGN_TYPE_TO_TAB_MODEL_MAP = new Map<DesignType, TabModel>([\n [\"panels\", TAB_MODEL.panels],\n [\"stencils\", TAB_MODEL.stencils],\n [\"images\", TAB_MODEL.images],\n [\"design_system\", TAB_MODEL.designSystem],\n [\"fonts\", TAB_MODEL.fonts]\n]);\n","@import \"../../global/gx-ide-mixins.scss\";\n@import \"../../../node_modules/@genexus/mercury/dist/mercury.scss\";\n\n:host {\n display: grid;\n block-size: 100%;\n overflow: auto;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.section {\n display: contents;\n}\n\n// - - - - - - - - - - - - -\n// Header\n// - - - - - - - - - - - - -\n\n.header {\n display: grid;\n grid-auto-rows: max-content;\n // 88px is the inline-size of the largest label (Access Token) that is not always visible.\n // Setting 88px as the minimum inline size prevents an undesired difference when Access Token\n // is visible. This fix has been made for english only. The value should work with .ja and .zh also.\n grid-template-columns: minmax(88px, max-content) 1fr !important;\n\n &--show-access-token {\n grid-template-areas:\n \"path-url-label path-url-wrapper\"\n \"access-token-label access-token\"\n \"style-label style\"\n \"module-label module\"\n \"checkboxes-options checkboxes-options\";\n }\n &--hide-access-token {\n grid-template-areas:\n \"path-url-label path-url-wrapper\"\n \"style-label style\"\n \"module-label module\"\n \"checkboxes-options checkboxes-options\";\n }\n}\n// path url\n.path-url-wrapper {\n grid-template-columns: 1fr max-content;\n}\n.path-url-label {\n grid-area: path-url-label;\n}\n.path-url-control {\n flex-grow: 1;\n}\n.select-load-button {\n min-inline-size: 80px;\n}\n// access token\n.access-token-label {\n grid-area: access-token-label;\n}\n.access-token {\n grid-area: access-token;\n}\n// style\n.style-label {\n grid-area: style-label;\n}\n.style {\n grid-area: style;\n}\n// module\n.module-label {\n grid-area: module-label;\n}\n.module {\n grid-area: module;\n}\n// checkboxes options\n.checkboxes-options {\n grid-area: checkboxes-options;\n grid-template-columns: max-content max-content;\n justify-content: space-between;\n}\n\n// - - - - - - - - - - - - -\n// Main\n// - - - - - - - - - - - - -\n\n.main {\n display: grid;\n grid-template-columns: 250px 1fr;\n block-size: 100%;\n overflow: auto;\n\n &--loading {\n grid-template-columns: 1fr;\n }\n}\n\n.panel-tab {\n block-size: 100%;\n display: grid;\n grid-template-columns: 1fr 300px;\n\n .panel-item {\n overflow: auto;\n }\n}\n\n.tree-view {\n padding-block: var(--mer-spacing--2xs);\n}\n\n.tree-view-panel-item {\n border-inline-start: var(--section-common-border);\n}\n\n.checker-board {\n --white-square-color: #fff1;\n --black-square-color: #0000;\n background:\n linear-gradient( 45deg, var(--white-square-color) 25%, var(--black-square-color) 25%),\n linear-gradient(-45deg, var(--white-square-color) 25%, var(--black-square-color) 25%),\n linear-gradient( 45deg, var(--black-square-color) 75%, var(--white-square-color) 75%),\n linear-gradient(-45deg, var(--black-square-color) 75%, var(--white-square-color) 75%);\n background-size: 20px 20px;\n background-position: 0 0, 0 10px, 10px -10px, -10px 0px;\n}\n\n/*--- Tabs ---*/\n.tab {\n border-width: 0 !important; // WA/TODO this should be a class on mercury\n}\n.tab.fit-images .composition-tab-slot {\n font-size: 0; // WA to prevent scroll\n}\n.tab.fit-images img {\n object-fit: scale-down;\n object-position: left top;\n max-height: 100%;\n}\n.tab--hidden {\n display: none;\n}\n\n// - - - - - - - - - - - - -\n// Footer\n// - - - - - - - - - - - - -\n\n.button-cancel,\n.button-ok {\n min-inline-size: var(--mer-spacing--4xl);\n}\n\n// - - - - - - - - - - - - -\n// Other\n// - - - - - - - - - - - - -\n\n.messages-slot-container {\n block-size: 100%;\n}\n\n.composition-tab-slot {\n block-size: 100%;\n overflow: auto;\n}\n\n.empty-state {\n overflow: auto;\n}\n.empty-state-button {\n // WA (It looks more pleasing with a little bit less of gap)\n transform: translateY(-12px);\n}\n\n// Messages Styles\n.messages-container {\n}\n.message {\n animation: fadeIn var(--mer-timing--fast) ease-in-out forwards;\n\n &--info {\n color: var(--mer-text__on-surface);\n }\n &--warning {\n color: var(--mer-text__warning);\n }\n &--error {\n color: var(--mer-text__error);\n }\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n\n// WA\n\n.combo-box.ch-disabled {\n --control__bg-color: var(--control__background-color--disabled);\n --control__border-color: var(--control__border-color--disabled);\n --control__color: var(--control__color--disabled);\n --ch-placeholder-color: var(--control-placeholder__color--disabled);\n}\n","// Stencil\nimport { Component, Host, h, Prop, Element, State, Watch } from \"@stencil/core\";\n\n// Other Libraries\nimport {\n ChCheckboxCustomEvent,\n ChEditCustomEvent,\n ComboBoxModel,\n TabModel,\n TreeViewItemModel\n} from \"@genexus/chameleon-controls-library\";\nimport { TreeViewItemModelExtended } from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles, getIconPath } from \"@genexus/mercury\";\n\n// Custom Imports\nimport { config } from \"../../common/config\";\nimport { mapStylesToComboBoxItemModel } from \"./helpers\";\nimport { Locale } from \"../../common/locale\";\nimport { EntityData, GxOption } from \"../../common/types\";\nimport { TAB_DATA, DESIGN_TYPE_TO_TAB_MODEL_MAP, TAB_MODEL } from \"./models\";\n\nconst DESIGN_DATA_TYPE_PANELS = \"panels\";\nconst DESIGN_DATA_TYPE_STENCILS = \"stencils\";\nconst DESIGN_DATA_TYPE_IMAGES = \"images\";\nconst DESIGN_DATA_TYPE_DESIGN_SYSTEM = \"design_system\";\nconst DESIGN_DATA_TYPE_FONTS = \"fonts\";\n\nconst ITEM_COMPOSE_ID_SEPARATOR = \"@@@\";\n\n// ch-checkbox\nconst CHECKED_VALUE = \"on\";\n\n// Icons\nconst MENU_DELETE = getIconPath({\n category: \"menus\",\n name: \"delete\",\n colorType: \"primary\"\n});\nconst DESIGN = getIconPath({\n category: \"objects\",\n name: \"design\"\n});\nconst FILE_UPLOAD = getIconPath({\n category: \"controls\",\n name: \"file-upload\"\n});\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\",\n \"components/button\",\n \"components/checkbox\",\n \"components/edit\",\n \"components/tree-view\",\n \"components/combo-box\",\n \"components/tab\",\n \"components/tooltip\",\n \"chameleon/scrollbar\"\n];\n\n@Component({\n tag: \"gx-ide-design-import\",\n styleUrl: \"design-import.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/design-import\"]\n})\nexport class GxIdeImportFromDesign {\n /**\n * The component hard-coded strings translations.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #componentLocale: any;\n\n /**\n * An array that keeps track of the tree items id's (design system data type\n * + item id) along with the content, that will be used to save and retrieve\n * items information, in order to avoid using a callback to get items\n * information that was already get. loadedItemsArray will be reset every time\n * a new design is loaded.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #loadedItems: Map<string, ItemLoadedInfo> = new Map();\n\n #emptyStateAnimated: boolean = false;\n #formattedExtensions: string;\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeDesignImportElement;\n\n /* References needed to collect data */\n #accessTokenEl!: HTMLChEditElement;\n #importAsWebPanelsEl!: HTMLChCheckboxElement;\n #moduleEl!: HTMLGxIdeEntitySelectorElement;\n #messagesList: HTMLElement;\n #panelsSelected: string[] = [];\n #stencilsSelected: string[] = [];\n #imagesSelected: string[] = [];\n #fontsSelected: string[] = [];\n #fileInputHiddenEl: HTMLInputElement;\n #pathEl: HTMLChEditElement;\n\n // Use to force a re-render\n @State() reRenderCounter: number = 0;\n\n // Maps to Chameleon Models:\n @State() stylesAsComboBoxModel: ComboBoxModel;\n\n // The current style value\n @State() styleValue: string = \"\";\n\n @State() accessTokenHasError: boolean = false;\n\n @State() pathIsValid: boolean;\n @Watch(\"pathIsValid\")\n pathIsValidChanged(pathIsValid: boolean) {\n if (pathIsValid) {\n this.#evaluateAccessTokenRender();\n } else {\n // hide access token input if path is not valid\n this.requiresAccessToken = false;\n }\n }\n\n @State() tabsModel: TabModel = [];\n\n @State() activeTabs: Map<DesignType, string> = new Map();\n\n @State() renderedTabs: Set<string> = new Set();\n\n /**\n * The design data loaded from file\n */\n @State() designData: DesignData = null;\n @Watch(\"designData\")\n designDataChanged(newDesignData: DesignData) {\n if (newDesignData) {\n const panelsSelectedItem = this.#getPanelsSelectedItem(\n this.designData.panels\n );\n this.designDataTreeDataModel = [\n {\n order: 0,\n id: `parent${ITEM_COMPOSE_ID_SEPARATOR}${DESIGN_DATA_TYPE_PANELS}`,\n leaf: false,\n caption: this.#componentLocale.tree.panels,\n startImgSrc: \"objects/panel-for-sd\",\n checkbox: true,\n checked: true,\n expanded: true,\n items: this.designData.panels.map((item, i) => ({\n id: `${item.id}${ITEM_COMPOSE_ID_SEPARATOR}${DESIGN_DATA_TYPE_PANELS}`,\n class: \"object tree-view-item\",\n leaf: true,\n caption: item.name,\n startImgSrc: \"objects/panel-for-sd\",\n checkbox: true,\n checked: true,\n selected: i === panelsSelectedItem\n }))\n },\n {\n order: 1,\n id: `parent${ITEM_COMPOSE_ID_SEPARATOR}${DESIGN_DATA_TYPE_STENCILS}`,\n leaf: false,\n caption: this.#componentLocale.tree.stencils,\n startImgSrc: \"objects/stencil\",\n checkbox: true,\n checked: true,\n expanded: true,\n items: this.designData.stencils.map(item => ({\n id: `${item.id}${ITEM_COMPOSE_ID_SEPARATOR}${DESIGN_DATA_TYPE_STENCILS}`,\n class: \"object tree-view-item\",\n leaf: true,\n caption: item.name,\n startImgSrc: \"objects/stencil\",\n checkbox: true,\n checked: true\n }))\n },\n {\n order: 2,\n id: `parent${ITEM_COMPOSE_ID_SEPARATOR}${DESIGN_DATA_TYPE_IMAGES}`,\n parts: \"category tree-view-item\",\n leaf: false,\n caption: this.#componentLocale.tree.images,\n startImgSrc: \"objects/image\",\n checkbox: true,\n checked: true,\n expanded: true,\n items: this.designData.images.map(item => ({\n id: `${item.id}${ITEM_COMPOSE_ID_SEPARATOR}${DESIGN_DATA_TYPE_IMAGES}`,\n class: \"object tree-view-item\",\n leaf: true,\n caption: item.name,\n startImgSrc: \"objects/image\",\n checkbox: true,\n checked: true\n }))\n },\n {\n order: 3,\n id: `parent${ITEM_COMPOSE_ID_SEPARATOR}${DESIGN_DATA_TYPE_FONTS}`,\n leaf: false,\n caption: this.#componentLocale.tree.fonts,\n startImgSrc: \"controls/font\",\n checkbox: true,\n checked: true,\n expanded: true,\n items: this.designData.fonts.map(item => ({\n id: `${item.id}${ITEM_COMPOSE_ID_SEPARATOR}${DESIGN_DATA_TYPE_FONTS}`,\n class: \"object tree-view-item\",\n leaf: true,\n caption: item.name,\n startImgSrc: \"controls/font\",\n checkbox: true,\n checked: true\n }))\n },\n {\n order: 4,\n id: `${\n this.designData.designSystem.length > 0\n ? this.designData.designSystem[0].id\n : \"parent\"\n }${ITEM_COMPOSE_ID_SEPARATOR}${DESIGN_DATA_TYPE_DESIGN_SYSTEM}`,\n leaf: true,\n caption: this.#componentLocale.tree.designSystem,\n startImgSrc: \"objects/dso\",\n checkbox: true,\n checked: true\n }\n ];\n }\n }\n\n /**\n * The model data loaded into the detail tree\n */\n @State() detailTreeModel: TreeViewItemModel[] = [];\n\n /**\n * If the design data is loading or not, for disabled actions\n */\n @State() isLoading = false;\n\n /**\n * If the design data is loaded or not, for conditioning input file\n */\n @State() isLoaded = false;\n\n /**\n * The messages receive when the file is loading\n */\n @State() messages: MessageData[] = [];\n\n /**\n * The file selected for load the design data\n */\n @State() selectedFile: File;\n\n /**\n * The type of the design data selected for show it visual tabs\n */\n @State() selectedDesignType: DesignType;\n\n /**\n * The item of the design data selected for show its contents on visual tabs\n */\n @State() selectedDesignItem: any;\n\n /**\n * Whether to show or not the access token input field\n */\n @State() requiresAccessToken: boolean;\n\n /**\n * the design data tree view data model\n */\n @State() designDataTreeDataModel: TreeViewItemModel[] = [];\n\n /**\n * Used to trigger a re-render after an item has been selected on\n * renderDesignTree, in order to set the first tab as the active tab\n * (setFirstActiveTab()), since calling this method inside\n * objectsTreeSelectedItemsChangedHandler does not always work without a\n * setTimeOut.\n */\n @State() updateTabsActiveTab: boolean = false;\n\n /**\n * If true, images will be fitted in the container\n */\n @State() fitImages = false;\n\n /**\n * Represents a collection of settings where each key is a specific option. Its\n * boolean value determines whether changes to that option are listened to and\n * trigger the loadCallback callback.\n */\n @Prop() readonly reactiveSettings: ReactiveSettings = {\n path: true,\n style: false,\n module: false,\n importAsWebPanels: true\n };\n\n /**\n * Used to keep track of the settings values since the last loadCallback.\n * Used to know if loadCallback is required to be called again, when any\n * of these values are changed.\n */\n @State() lastLoadCallbackSettingValues: ReactiveSettingsValues = {\n path: undefined,\n style: undefined,\n moduleId: undefined,\n importAsWebPanels: undefined\n };\n\n /**\n * The valid extensions for the files that will be loaded in Path/URL\n * (ie.: \".fig, .sketch\")\n */\n @Prop() readonly extensions!: string[];\n\n /**\n * Default value for the 'Module' field.\n */\n @Prop() readonly defaultModule: EntityData;\n\n /**\n * The path/URL for load the design data\n */\n @Prop({ mutable: true }) path: string = \"\";\n @Watch(\"path\")\n pathChanged(newPath: string) {\n const fileIsLoaded = this.selectedFile?.size > 0;\n const validatePathResult = this.#validatePath(newPath) || fileIsLoaded;\n this.pathIsValid = validatePathResult;\n }\n\n /**\n * The access token for the given path, which is not always required\n */\n @Prop({ mutable: true }) accessToken: string = \"\";\n @Watch(\"accessToken\")\n accessTokenChanged(newAccessToken: string) {\n if (!newAccessToken.trim().length) {\n this.accessTokenHasError = true;\n return;\n }\n this.accessTokenHasError = false;\n this.accessToken = newAccessToken;\n }\n\n /**\n * The value for \"Import as Web Panels\" checkbox.\n */\n @Prop() readonly importAsWebPanels: boolean = false;\n\n /**\n * Callback invoked when the action is executed in the Module/Folder filter.\n * It returns the information of the selected object (id and name) or\n * 'undefined' if it was canceled.\n */\n @Prop() readonly selectModuleCallback: SelectModuleCallback;\n\n /**\n * This is a function provided by the developer that cancel the load operation.\n */\n @Prop() readonly cancelCallback!: CancelCallback;\n\n /**\n * This is a function provided by the developer that initiates the process\n * of importing a design.\n */\n @Prop() readonly confirmCallback!: ConfirmCallback;\n\n /**\n * This is a function provided by the developer that returns the list of\n * data types loaded from a file or URL.\n */\n @Prop() readonly loadCallback!: LoadCallback;\n\n /**\n * This is a function provided by the developer that returns the information\n * of a Design System type of data.\n */\n // eslint-disable-next-line prettier/prettier\n @Prop() readonly loadDesignSystemCallback!: LoadDesignSystemCallback;\n\n /**\n * This is a function provided by the developer that returns the information\n * of a Font type of data.\n */\n @Prop() readonly loadFontCallback!: LoadFontCallback;\n\n /**\n * This is a function provided by the developer that returns the information\n * of an Image System type of data.\n */\n @Prop() readonly loadImageCallback!: LoadImageCallback;\n\n /**\n * This is a function provided by the developer that returns the information\n * of a Panel type of data.\n */\n @Prop() readonly loadPanelDataCallback!: LoadPanelDataCallback;\n\n /**\n * Callback invoked to determine if accessing a design requires an authentication token.\n */\n @Prop() readonly requiresAccessTokenCallback!: RequiresAccessTokenCallback;\n\n /**\n * The styles render in the option style selector\n */\n @Prop() readonly styles!: GxOption[];\n @Watch(\"styles\")\n stylesChanged(newStyles: GxOption[]) {\n this.stylesAsComboBoxModel = mapStylesToComboBoxItemModel(newStyles);\n }\n\n /**\n * This is a function provided by the developer for create an instance of a text editor.\n */\n // eslint-disable-next-line prettier/prettier\n @Prop() readonly textEditorFactoryCallback!: TextEditorFactoryCallback;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.#formattedExtensions = this.extensions\n .map(ext => `.${ext}`)\n .join(\", \");\n this.stylesChanged(this.styles);\n this.#initializeActiveTabs();\n this.pathChanged(this.path);\n this.styleValue =\n this.stylesAsComboBoxModel?.length > 0\n ? this.stylesAsComboBoxModel[0]?.value\n : \"\";\n }\n\n @Watch(\"messages\")\n watchMessagesHandler(newValue: boolean, oldValue: boolean) {\n if (newValue !== oldValue) {\n if (this.#messagesList) {\n this.#messagesList.scrollTop = this.#messagesList.scrollHeight;\n }\n }\n }\n\n // 9.LOCAL METHODS //\n\n #initializeActiveTabs = () => {\n this.activeTabs.set(\"panels\", TAB_MODEL.panels[0].id);\n this.activeTabs.set(\"stencils\", TAB_MODEL.stencils[0].id);\n this.activeTabs.set(\"images\", TAB_MODEL.images[0].id);\n this.activeTabs.set(\"fonts\", TAB_MODEL.fonts[0].id);\n this.activeTabs.set(\"design_system\", TAB_MODEL.designSystem[0].id);\n };\n\n #evaluateAccessTokenRender = async () => {\n this.requiresAccessToken = await this.requiresAccessTokenCallback(\n this.path\n );\n // evaluate access token error\n if (this.accessToken.length) {\n this.accessTokenHasError = false;\n }\n };\n\n #pathURLBlurHandler = async () => {\n const loadDataCondition1 =\n this.isLoaded &&\n this.reactiveSettings.path &&\n this.pathIsValid &&\n this.path !== this.lastLoadCallbackSettingValues.path;\n const loadDataCondition2 =\n !this.requiresAccessToken ||\n (this.requiresAccessToken && this.accessToken.length > 0);\n if (loadDataCondition1 && loadDataCondition2) {\n this.#loadData();\n }\n };\n\n #loadTreeItemCompositionModel(\n controls: DesignPanelControlData[]\n ): TreeViewItemModel[] {\n const modelList: TreeViewItemModel[] = [];\n for (const control of controls) {\n let model: TreeViewItemModel = {\n id: control.name,\n caption: control.name,\n startImgSrc: control.type,\n checkbox: false,\n expanded: true,\n leaf: control.leaf\n };\n if (control.controls) {\n model = {\n ...model,\n items: this.#loadTreeItemCompositionModel(control.controls)\n };\n }\n modelList.push(model);\n }\n return modelList;\n }\n\n #objectsTreeSelectedItemsChangedHandler = async (\n event: CustomEvent<TreeViewItemModelExtended[]>\n ) => {\n if (event.detail.length) {\n const item = event.detail[0]?.item;\n const itemComposedId = item.id;\n const idList = itemComposedId.split(ITEM_COMPOSE_ID_SEPARATOR);\n const itemId = idList[0];\n const itemDesignType: DesignType = idList[1] as DesignType;\n const isChildNode = itemId && itemId !== \"parent\";\n const isDesignSystem = itemDesignType === \"design_system\";\n if (isChildNode || isDesignSystem) {\n this.tabsModel = DESIGN_TYPE_TO_TAB_MODEL_MAP.get(itemDesignType);\n this.selectedDesignType = itemDesignType;\n const loadedItem = this.#getLoadedItem(itemComposedId);\n if (!loadedItem) {\n const designDataDetail: DesignItemDataDetail =\n await this.#getDesignDataDetail(itemId, this.selectedDesignType);\n this.#loadedItems.set(itemComposedId, {\n designType: this.selectedDesignType,\n designDataDetail: designDataDetail\n });\n } else {\n // Item has been queried already. The item content exists already.\n this.selectedDesignType = loadedItem.designType;\n this.selectedDesignItem = loadedItem.designDataDetail;\n this.#getCodeFactory(loadedItem.designType);\n this.#renderDetailDataTree(loadedItem.designType);\n }\n this.renderedTabs.clear();\n this.renderedTabs.add(this.activeTabs.get(this.selectedDesignType));\n }\n }\n };\n\n #getLoadedItem = (id: string): ItemLoadedInfo | undefined => {\n return this.#loadedItems?.get(id);\n };\n\n #validatePath = (path: string): boolean => {\n const validPathRegex = /^(\\/|\\.\\/|(\\w:))[^:*?\"<>|]*\\.(sketch|gxsketch)$/i; // Match valid file paths\n const figmaURLRegex = /^https?:\\/\\/(www\\.)?figma\\.com/; // Match URLs containing \"www.figma.com\"\n const urlWithExtensionRegex =\n /^https?:\\/\\/[^\\s/$.?#].[^\\s]*\\.(sketch|gxsketch)$/i; // Match URLs ending with .sketch or .gxsketch\n const pathIsValid =\n validPathRegex.test(path) ||\n figmaURLRegex.test(path) ||\n urlWithExtensionRegex.test(path);\n return pathIsValid;\n };\n\n #objectsTreeCheckedItemsChangedHandler = (\n event: CustomEvent<Map<string, TreeViewItemModelExtended>>\n ) => {\n const items = Array.from(event.detail.values());\n let currentParentId = null;\n const result: { [key: string]: string[] } = {};\n\n for (const item of items) {\n if (item.item.id.startsWith(`parent${ITEM_COMPOSE_ID_SEPARATOR}`)) {\n currentParentId = item.item.id.split(ITEM_COMPOSE_ID_SEPARATOR)[1];\n result[currentParentId] = [];\n } else if (item.item.checked && currentParentId) {\n const parentId = item.item.id.split(ITEM_COMPOSE_ID_SEPARATOR)[1];\n if (parentId === currentParentId) {\n const id = item.item.id.split(ITEM_COMPOSE_ID_SEPARATOR)[0];\n result[currentParentId].push(id);\n }\n }\n }\n // const { designSystem, fonts, images, panels, stencils } = result;\n const { fonts, panels, stencils, images } = result;\n\n // this.designSystemSelected = designSystem;\n this.#panelsSelected = panels;\n this.#stencilsSelected = stencils;\n this.#imagesSelected = images;\n this.#fontsSelected = fonts;\n };\n\n #selectFileHandler = (): void => {\n this.#fileInputHiddenEl.click();\n };\n\n #styleComboBoxInputHandler = (event: CustomEvent<string> | InputEvent) => {\n this.styleValue = (event.target as HTMLChComboBoxRenderElement).value;\n if (\n this.reactiveSettings.style &&\n this.styleValue !== this.lastLoadCallbackSettingValues.style\n ) {\n this.#loadData();\n }\n };\n\n #moduleInputHandler = (event: CustomEvent<EntityData>) => {\n if (\n this.reactiveSettings.module &&\n this.defaultModule.id !== event.detail.id &&\n this.pathIsValid\n ) {\n this.#loadData();\n }\n };\n\n #loadData = async (): Promise<void> => {\n this.isLoading = true;\n const source = this.selectedFile ? this.selectedFile : this.path;\n const token = this.#accessTokenEl ? this.#accessTokenEl.value : undefined;\n const style = this.styleValue;\n const importAsWebPanels = this.#importAsWebPanelsEl.value === CHECKED_VALUE;\n const designData: DesignData = await this.loadCallback(\n source,\n style,\n importAsWebPanels,\n token,\n this.#messageCallback\n );\n\n // clear\n this.#panelsSelected = [];\n this.#stencilsSelected = [];\n this.#fontsSelected = [];\n this.selectedDesignType = undefined;\n this.selectedDesignItem = undefined;\n this.messages = [];\n\n this.designData = designData;\n this.isLoaded = designData?.success ?? false;\n this.isLoading = false;\n\n const firstDesignSystemName = designData.designSystem[0]?.name;\n if (firstDesignSystemName && !this.styleValue)\n this.styleValue = firstDesignSystemName;\n\n // update the settings that were used for the last load\n if (this.reactiveSettings.path && this.pathIsValid) {\n this.lastLoadCallbackSettingValues.path = this.path;\n }\n if (this.reactiveSettings.style) {\n this.lastLoadCallbackSettingValues.style = style;\n }\n if (this.reactiveSettings.module) {\n this.lastLoadCallbackSettingValues.moduleId = this.#moduleEl.value.id;\n }\n if (this.reactiveSettings.importAsWebPanels) {\n this.lastLoadCallbackSettingValues.importAsWebPanels = importAsWebPanels;\n }\n };\n\n #messageCallback: LoadMessageCallback = message => {\n this.messages = [...this.messages, message];\n };\n\n #getDesignDataDetail = async (\n id: string,\n designType: DesignType\n ): Promise<DesignItemDataDetail> => {\n let loadFn:\n | LoadPanelDataCallback\n | LoadImageCallback\n | LoadFontCallback\n | LoadDesignSystemCallback;\n\n switch (designType) {\n case DESIGN_DATA_TYPE_IMAGES:\n loadFn = this.loadImageCallback;\n break;\n case DESIGN_DATA_TYPE_DESIGN_SYSTEM:\n loadFn = this.loadDesignSystemCallback;\n break;\n case DESIGN_DATA_TYPE_FONTS:\n loadFn = this.loadFontCallback;\n break;\n case DESIGN_DATA_TYPE_PANELS:\n case DESIGN_DATA_TYPE_STENCILS:\n loadFn = this.loadPanelDataCallback;\n break;\n }\n\n let returnedData: DesignItemDataDetail;\n await loadFn(id).then((data: DesignItemDataDetail) => {\n this.selectedDesignType = designType;\n this.selectedDesignItem = data;\n this.#getCodeFactory(designType);\n this.#renderDetailDataTree(designType);\n returnedData = data;\n });\n\n return returnedData;\n };\n\n #getCodeFactory(designType: string) {\n switch (designType) {\n case DESIGN_DATA_TYPE_PANELS:\n case DESIGN_DATA_TYPE_STENCILS:\n this.textEditorFactoryCallback(\n \"code\",\n TAB_DATA.code.slot,\n this.selectedDesignItem.code\n );\n this.textEditorFactoryCallback(\n \"html\",\n TAB_DATA.layout.slot,\n this.selectedDesignItem.layout\n );\n break;\n case DESIGN_DATA_TYPE_DESIGN_SYSTEM:\n this.textEditorFactoryCallback(\n \"tokens\",\n TAB_DATA.tokens.slot,\n this.selectedDesignItem.tokens\n );\n this.textEditorFactoryCallback(\n \"styles\",\n TAB_DATA.styles.slot,\n this.selectedDesignItem.styles\n );\n break;\n }\n }\n\n #confirm = (): void => {\n this.confirmCallback({\n panels: this.#panelsSelected,\n stencils: this.#stencilsSelected,\n fonts: this.#fontsSelected,\n images: this.#imagesSelected,\n moduleId: this.#moduleEl?.value?.id,\n styleName: this.styleValue,\n importAsWebPanels: this.#importAsWebPanelsEl.value === CHECKED_VALUE\n });\n };\n\n #cancel = (): void => {\n this.cancelCallback();\n this.isLoading = false;\n };\n\n #fitImagesHandler = (event: ChCheckboxCustomEvent<any> | InputEvent) => {\n this.fitImages = event.detail === CHECKED_VALUE;\n };\n\n #getPanelsSelectedItem = (panels: DesignItemData[]): number => {\n return panels.reduce((minIndex, item, index, panels) => {\n return panels[minIndex].name <= item.name ? minIndex : index;\n }, 0);\n };\n\n #importAsWebPanelsChangedHandler = () => {\n const loadData =\n this.reactiveSettings.importAsWebPanels && this.pathIsValid;\n if (loadData) {\n this.#loadData();\n }\n };\n\n #removeFileSelection = () => {\n this.selectedFile = null;\n this.path = \"\";\n this.accessToken = \"\";\n this.selectedFile = null;\n this.#fileInputHiddenEl.value = null;\n };\n\n #selectFileInputChangedHandler = (event: InputEvent) => {\n const target = event.target as HTMLInputElement;\n if (target.files?.length > 0) {\n this.selectedFile = target.files[0];\n this.path = this.selectedFile.name;\n // we know the path is valid because the extensions are restricted by \"extensions\" Prop.\n }\n };\n\n #accessFocusHandler = (event: ChEditCustomEvent<string> | FocusEvent) => {\n const element = event.target as HTMLChEditElement;\n element.type = \"text\"; // display token on focus\n };\n\n #accessBlurHandler = (event: ChEditCustomEvent<string> | FocusEvent) => {\n const element = event.target as HTMLChEditElement;\n element.type = \"password\"; // hide token on blur\n\n this.accessTokenChanged(element.value);\n };\n\n #pathUrlInputHandler = async (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n this.path = event.detail as string;\n this.#evaluateAccessTokenRender();\n this.selectedFile = null;\n if (!this.path.length) this.designData = null;\n };\n\n // 9.LOCAL METHODS -> RENDERS //\n\n #renderHeader = (): Element => {\n const primaryButtonDisabled =\n this.isLoading ||\n (this.pathIsValid &&\n this.requiresAccessToken &&\n this.accessToken.length === 0);\n const clearFileButtonDisabled = this.isLoading || this.path.length === 0;\n const stylesComboDisabled = this.isLoading;\n const moduleDisabled = this.isLoading;\n const pathWithErrorStyles = !this.pathIsValid && this.path.length > 0;\n const displayPathErrorTooltip = !this.pathIsValid && this.path.length > 0;\n let primaryButtonCaption;\n if (\n this.pathIsValid &&\n this.path === this.lastLoadCallbackSettingValues.path\n ) {\n primaryButtonCaption = this.#componentLocale.header.btnReload;\n } else if (this.pathIsValid) {\n primaryButtonCaption = this.#componentLocale.header.btnLoad;\n } else {\n primaryButtonCaption = this.#componentLocale.header.selectFileButton;\n }\n\n return (\n <header\n class={{\n \"header\": true,\n \"control-header-with-border\": true,\n \"spacing-body-inline\": true,\n \"spacing-body-block-start\": true,\n \"header--show-access-token\": this.requiresAccessToken,\n \"header--hide-access-token\": !this.requiresAccessToken,\n \"field-group-cols-2\": true\n }}\n >\n <label\n // path/url label\n class=\"label path-url-label\"\n >\n {this.#componentLocale.header.path}\n </label>\n <div class=\"path-url-wrapper buttons-spacer\">\n <ch-edit\n // path/url/file input\n id=\"path-url\"\n class={{\n \"input\": true,\n \"input-error\": pathWithErrorStyles,\n \"path-url-control\": true\n }}\n debounce={config.inputDebounce}\n part=\"option-path\"\n type=\"text\"\n value={this.path}\n onInput={this.#pathUrlInputHandler}\n onBlur={this.reactiveSettings.path && this.#pathURLBlurHandler}\n disabled={this.isLoading}\n placeholder={`${this.#componentLocale.header.pathPlaceholder}`}\n startImgSrc={FILE_UPLOAD}\n ref={(el: HTMLChEditElement) =>\n (this.#pathEl = el as HTMLChEditElement)\n }\n ></ch-edit>\n {displayPathErrorTooltip && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={this.#pathEl as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.#componentLocale.header.pathErrorMessage}{\" \"}\n {this.#formattedExtensions}\n </ch-tooltip>\n )}\n\n <input\n hidden\n type=\"file\"\n accept={this.#formattedExtensions}\n onChange={this.#selectFileInputChangedHandler}\n ref={(el: HTMLInputElement) =>\n (this.#fileInputHiddenEl = el as HTMLInputElement)\n }\n />\n\n <div class=\"buttons-spacer\">\n <button\n // remove file selection\n aria-label={this.#componentLocale.header.removeFileSelection}\n title={this.#componentLocale.header.removeFileSelection}\n id=\"reset-all-button\"\n class=\"button-tertiary button-icon-only\"\n part=\"reset-all-button\"\n disabled={clearFileButtonDisabled}\n onClick={!clearFileButtonDisabled && this.#removeFileSelection}\n >\n <ch-image\n class=\"icon-md\"\n src={MENU_DELETE}\n disabled={clearFileButtonDisabled}\n ></ch-image>\n </button>\n <button\n // load file button\n id=\"button-load\"\n type=\"primary-text-only\"\n onClick={\n this.pathIsValid ? this.#loadData : this.#selectFileHandler\n }\n part=\"button button--load\"\n disabled={primaryButtonDisabled}\n class={{\n \"button-primary\": this.pathIsValid,\n \"button-secondary\": !this.pathIsValid,\n \"select-load-button\": true\n }}\n >\n {primaryButtonCaption}\n </button>\n </div>\n </div>\n\n {this.requiresAccessToken && [\n <label\n // access token label\n class=\"label access-token-label\"\n >\n {this.#componentLocale.header.accessToken}\n </label>,\n <div>\n <ch-edit\n class={{\n \"input\": true,\n \"access-token\": true,\n \"input-error\": this.accessTokenHasError\n }}\n ref={(el: HTMLChEditElement) =>\n (this.#accessTokenEl = el as HTMLChEditElement)\n }\n value={this.accessToken}\n placeholder={this.#componentLocale.header.accessTokenPlaceholder}\n onFocus={this.#accessFocusHandler}\n onBlur={this.#accessBlurHandler}\n part=\"access-token\"\n disabled={this.isLoading}\n type=\"password\"\n ></ch-edit>\n {this.accessTokenHasError && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={\n this.#accessTokenEl as unknown as HTMLButtonElement\n }\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.#componentLocale.header.accessTokenErrorMessage}\n </ch-tooltip>\n )}\n </div>\n ]}\n <label\n // style label\n class=\"label style-label\"\n >\n {this.#componentLocale.header.style}\n </label>\n <ch-combo-box-render\n // style combo box\n suggest={true}\n suggestOptions={{\n alreadyProcessed: true\n }}\n disabled={stylesComboDisabled}\n model={this.stylesAsComboBoxModel}\n value={this.styleValue}\n onInput={this.#styleComboBoxInputHandler}\n part=\"option-style\"\n class=\"combo-box style\"\n ></ch-combo-box-render>\n\n <label\n // module label\n class=\"label module-label\"\n >\n {this.#componentLocale.header.module}\n </label>\n <gx-ide-entity-selector\n // module entity selector\n labelPosition=\"none\"\n value={this.defaultModule}\n defaultValue={this.defaultModule}\n selectEntityCallback={this.selectModuleCallback}\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.#moduleEl = el as HTMLGxIdeEntitySelectorElement)\n }\n onValueChanged={\n this.reactiveSettings.module && this.#moduleInputHandler\n }\n disabled={moduleDisabled}\n class=\"module\"\n ></gx-ide-entity-selector>\n\n <div\n // import as web panels\n class=\"checkboxes-options field-group\"\n >\n <ch-checkbox\n caption={this.#componentLocale.header.importAs}\n checkedValue={CHECKED_VALUE}\n class=\"checkbox import-as-web-panels\"\n ref={(el: HTMLChCheckboxElement) =>\n (this.#importAsWebPanelsEl = el as HTMLChCheckboxElement)\n }\n value={this.importAsWebPanels ? CHECKED_VALUE : undefined}\n part=\"option-import-as-web-panels\"\n disabled={this.isLoading}\n onInput={this.#importAsWebPanelsChangedHandler}\n ></ch-checkbox>\n\n <div\n class={{\n \"field-group-inline\": true,\n \"checkboxes-options__col-right\": true\n }}\n >\n <ch-checkbox\n // fit images\n caption={this.#componentLocale.header.fitImages}\n checkedValue={CHECKED_VALUE}\n class=\"checkbox\"\n part=\"fit-images-checkbox\"\n disabled={this.isLoading || !this.designDataTreeDataModel.length}\n onInput={this.#fitImagesHandler}\n ></ch-checkbox>\n </div>\n </div>\n </header>\n );\n };\n\n #renderMessages = (): HTMLParagraphElement[] => {\n return (\n this.messages.length > 0 &&\n this.messages.map(message => (\n <p\n class={{\n \"text-body-regular-m\": true,\n \"message\": true,\n [`message--${message.type}`]: true\n }}\n >\n {message.type}: {message.text}\n </p>\n ))\n );\n };\n\n #renderDetailDataTree(designType: string) {\n switch (designType) {\n case DESIGN_DATA_TYPE_PANELS:\n case DESIGN_DATA_TYPE_STENCILS:\n this.detailTreeModel = this.#loadTreeItemCompositionModel(\n this.selectedDesignItem.composition.controls\n );\n break;\n }\n }\n\n #renderMain = () => {\n if (this.isLoading || this.designData?.success === false) {\n return (\n <div\n class=\"main main--loading scrollable\"\n ref={(el: HTMLElement) => (this.#messagesList = el as HTMLElement)}\n >\n {this.#renderMessages()}\n <div class=\"text-body-regular-m spacing-body\">\n <slot name=\"messages\"></slot>\n </div>\n </div>\n );\n } else if (this.designData?.success) {\n return (\n /* #main*/\n <div class=\"main\">\n {[this.#renderDesignTree(), this.#renderDesignTabsCh()]}\n </div>\n );\n } else {\n return (\n <gx-ide-empty-state\n class=\"empty-state scrollable\"\n stateIconSrc={DESIGN}\n isAnimated={this.#emptyStateAnimated}\n stateTitle={this.#componentLocale.messages.noDesignSelected}\n key=\"no-objects-empty-state\"\n >\n <button\n // begin by selecting a file\n class=\"button-tertiary empty-state-button\"\n onClick={this.#selectFileHandler}\n >\n {this.#componentLocale.messages.selectDesign}\n </button>\n </gx-ide-empty-state>\n );\n }\n };\n\n #renderDesignTree = (): HTMLChTreeViewElement => {\n return (\n <ch-tree-view-render\n part=\"data-tree\"\n class=\"tree-view\"\n id=\"data-tree\"\n showLines=\"last\"\n model={this.designDataTreeDataModel}\n dragDisabled={true}\n dropDisabled={true}\n toggleCheckboxes={true}\n checkbox={true}\n checked={true}\n onCheckedItemsChange={this.#objectsTreeCheckedItemsChangedHandler}\n onSelectedItemsChange={this.#objectsTreeSelectedItemsChangedHandler}\n ></ch-tree-view-render>\n );\n };\n\n #renderFooter = () => {\n const buttonOkDisabled =\n this.designData?.success !== true || this.isLoading;\n return (\n <footer class=\"control-footer-with-border spacing-body-block-end spacing-body-inline\">\n <div class=\"buttons-spacer\">\n <button\n // button cancel\n id=\"button-cancel\"\n class=\"button-secondary button-cancel\"\n type=\"outlined\"\n onClick={this.#cancel}\n part=\"button button--cancel\"\n slot=\"footer-end\"\n >\n {this.#componentLocale.footer.btnCancel}\n </button>\n <button\n // button ok\n id=\"button-ok\"\n class=\"button-primary button-ok\"\n type=\"primary-text-only\"\n onClick={!buttonOkDisabled && this.#confirm}\n part=\"button button--ok\"\n disabled={buttonOkDisabled}\n slot=\"footer-end\"\n >\n {this.#componentLocale.footer.btnOk}\n </button>\n </div>\n </footer>\n );\n };\n\n #renderPanelTab = (): Element => {\n const renderControlsTree =\n (this.selectedDesignType === DESIGN_DATA_TYPE_PANELS ||\n this.selectedDesignType === DESIGN_DATA_TYPE_STENCILS) &&\n this.detailTreeModel.length > 0;\n\n return (\n <div\n class={{\n \"panel-tab\": true,\n \"panel-tab--controls-tree\": renderControlsTree\n }}\n part=\"data-panel-composition-container\"\n >\n {this.selectedDesignItem?.composition?.preview ? (\n <div\n part=\"data-panel-composition-preview\"\n class=\"panel-item scrollable\"\n >\n <img\n src={this.selectedDesignItem.composition.preview}\n alt=\"Preview\"\n />\n </div>\n ) : null}\n\n {renderControlsTree ? (\n <ch-tree-view-render\n part=\"data-panel-composition-tree\"\n class=\"tree-view tree-view-panel-item scrollable\"\n showLines=\"last\"\n model={this.detailTreeModel}\n dragDisabled={true}\n dropDisabled={true}\n ></ch-tree-view-render>\n ) : null}\n </div>\n );\n };\n\n #renderImageTab = () => {\n return (\n <div\n part=\"data-panel-composition-preview\"\n class=\"data-preview\"\n style={{ height: \"100%\" }}\n >\n <img\n src={this.selectedDesignItem ? this.selectedDesignItem : undefined}\n alt=\"Preview\"\n class={\n this.selectedDesignType === DESIGN_DATA_TYPE_IMAGES\n ? \"checker-board\"\n : undefined\n }\n />\n </div>\n );\n };\n\n #tabSelectionChangedHandler = (\n event: CustomEvent<{\n lastSelectedIndex: number;\n newSelectedId: string;\n newSelectedIndex: number;\n }>\n ): void => {\n this.renderedTabs.clear();\n this.renderedTabs.add(event.detail.newSelectedId);\n this.reRenderCounter++;\n this.activeTabs.set(this.selectedDesignType, event.detail.newSelectedId);\n };\n\n #renderDesignTabsCh = (): HTMLChTabRenderElement => {\n return (\n <ch-tab-render\n // main section\n class={{\n \"tab\": true,\n \"scrollable\": true,\n \"fit-images\": this.fitImages\n }}\n tabListPosition=\"block-start\"\n model={this.tabsModel}\n selectedId={this.activeTabs.get(this.selectedDesignType)}\n overflow=\"auto\"\n contain=\"size\"\n onSelectedItemChange={this.#tabSelectionChangedHandler}\n >\n <div\n slot={TAB_DATA.tokens.slot}\n class=\"spacing-body\"\n style={{\n display: this.renderedTabs.has(TAB_DATA.tokens.id) ? \"\" : \"none\"\n }}\n >\n <slot name={TAB_DATA.tokens.slot}></slot>\n </div>\n\n <div\n slot={TAB_DATA.styles.slot}\n class=\"spacing-body\"\n style={{\n display: this.renderedTabs.has(TAB_DATA.styles.id) ? \"\" : \"none\"\n }}\n >\n <slot name={TAB_DATA.styles.slot}></slot>\n </div>\n\n <div\n class=\"composition-tab-slot scrollable\"\n slot={TAB_DATA.composition.slot}\n style={{\n display: this.renderedTabs.has(TAB_DATA.composition.id)\n ? \"\"\n : \"none\"\n }}\n >\n {this.selectedDesignType === DESIGN_DATA_TYPE_IMAGES ||\n this.selectedDesignType === DESIGN_DATA_TYPE_FONTS\n ? this.#renderImageTab()\n : this.#renderPanelTab()}\n </div>\n\n <div\n slot={TAB_DATA.layout.slot}\n class=\"spacing-body\"\n style={{\n display: this.renderedTabs.has(TAB_DATA.layout.id) ? \"\" : \"none\"\n }}\n >\n <slot name={TAB_DATA.layout.slot}></slot>\n </div>\n\n <div\n slot={TAB_DATA.code.slot}\n class=\"spacing-body\"\n style={{\n display: this.renderedTabs.has(TAB_DATA.code.id) ? \"\" : \"none\"\n }}\n >\n <slot name={TAB_DATA.code.slot}></slot>\n </div>\n </ch-tab-render>\n );\n };\n\n render(): void {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <section class=\"section\">\n {this.#renderHeader()}\n {this.#renderMain()}\n {this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type LoadMessageCallback = (message: MessageData) => void;\nexport type LoadCallback = (\n source: string | File,\n designSystem: string,\n importAsWebPanels: boolean,\n token: string | undefined,\n onMessage: LoadMessageCallback\n) => Promise<DesignData | undefined>;\nexport type LoadPanelDataCallback = (id: string) => Promise<DesignPanelData>;\nexport type LoadImageCallback = (id: string) => Promise<string>;\nexport type LoadFontCallback = (id: string) => Promise<string>;\nexport type LoadDesignSystemCallback = (\n id: string\n) => Promise<DesignSystemData>;\nexport type TextEditorFactoryCallback = (\n type: TextEditorType,\n parent: string,\n text: string\n) => Promise<void>;\nexport type SelectModuleCallback = () => Promise<EntityData | undefined>;\n\nexport type RequiresAccessTokenCallback = (source: string) => Promise<boolean>;\nexport type ConfirmCallback = (data: DesignImportData) => Promise<boolean>;\nexport type CancelCallback = () => Promise<void>;\n\nexport interface MessageData {\n type: \"error\" | \"warning\" | \"info\";\n text: string;\n}\n\nexport interface DesignData {\n panels: DesignItemData[];\n stencils: DesignItemData[];\n images: DesignItemData[];\n designSystem: DesignItemData[];\n fonts: DesignItemData[];\n success: boolean;\n}\n\nexport interface DesignItemData {\n id: string;\n name: string;\n}\n\nexport interface DesignPanelData {\n composition: DesignPanelCompositionData;\n code?: string;\n layout?: string;\n}\n\nexport interface DesignPanelCompositionData {\n preview?: string;\n controls: DesignPanelControlData[];\n}\n\nexport interface DesignPanelControlData {\n name: string;\n type: string;\n leaf?: boolean;\n controls: DesignPanelControlData[];\n}\n\nexport interface DesignSystemData {\n tokens: string;\n styles: string;\n}\n\ntype DesignItemDataDetail = DesignPanelData | DesignSystemData | string;\n\nexport interface DesignImportData {\n panels: string[];\n stencils: string[];\n fonts: string[];\n moduleId: string;\n images: string[];\n styleName: string;\n importAsWebPanels: boolean;\n}\n\nexport type DesignType =\n | typeof DESIGN_DATA_TYPE_PANELS\n | typeof DESIGN_DATA_TYPE_STENCILS\n | typeof DESIGN_DATA_TYPE_IMAGES\n | typeof DESIGN_DATA_TYPE_DESIGN_SYSTEM\n | typeof DESIGN_DATA_TYPE_FONTS;\n\nexport type DesignObjectType = {\n [Key in DesignType]: string;\n};\n\nexport type ItemLoadedInfo = {\n designType: DesignType;\n designDataDetail: DesignItemDataDetail;\n};\n\nexport type TextEditorType = \"code\" | \"html\" | \"styles\" | \"tokens\";\n\nexport type ReactiveSettings = {\n path: boolean;\n style: boolean;\n module: boolean;\n importAsWebPanels: boolean;\n};\n\ntype ReactiveSettingsValues = {\n path: string;\n style: string;\n moduleId: string;\n importAsWebPanels: boolean;\n};\n"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as e, c as t, h as r, H as o, g as a } from "./p-49712340.js";
|
|
2
2
|
|
|
3
|
-
import { L as i } from "./p-
|
|
3
|
+
import { L as i } from "./p-311eedf3.js";
|
|
4
4
|
|
|
5
5
|
import { c as s } from "./p-78b90603.js";
|
|
6
6
|
|
|
@@ -229,4 +229,4 @@ const n = class {
|
|
|
229
229
|
n.style = l;
|
|
230
230
|
|
|
231
231
|
export { n as gx_ide_bpm_assign_roles };
|
|
232
|
-
//# sourceMappingURL=p-
|
|
232
|
+
//# sourceMappingURL=p-bb9df26f.entry.js.map
|