@genexus/genexus-ide-ui 1.0.64 → 1.0.66
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{common-f7361979.js → common-72f91a78.js} +16 -1
- package/dist/cjs/common-72f91a78.js.map +1 -0
- package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
- package/dist/cjs/gx-ide-about.cjs.entry.js +60 -0
- package/dist/cjs/gx-ide-about.cjs.entry.js.map +1 -0
- package/dist/cjs/gx-ide-manage-module-references-v2.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-new-environment.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-new-kb.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-new-object.cjs.entry.js +8 -4
- package/dist/cjs/gx-ide-new-object.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js +6 -3
- package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-splash.cjs.entry.js +53 -28
- package/dist/cjs/gx-ide-splash.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-ww-images.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +2 -1
- package/dist/collection/common/common.js +8 -0
- package/dist/collection/common/common.js.map +1 -1
- package/dist/collection/components/_branding/about/about.css +64 -0
- package/dist/collection/components/_branding/about/about.js +178 -0
- package/dist/collection/components/_branding/about/about.js.map +1 -0
- package/dist/collection/components/_branding/about/gx-ide-assets/about/images/next-arrow.svg +3 -0
- package/dist/collection/components/_branding/about/gx-ide-assets/about/images/next-logo.svg +4 -0
- package/dist/collection/components/_branding/about/gx-ide-assets/about/images/next-square.svg +3 -0
- package/dist/collection/components/_branding/about/gx-ide-assets/about/langs/about.lang.en.json +11 -0
- package/dist/collection/components/_branding/about/gx-ide-assets/about/langs/about.lang.ja.json +11 -0
- package/dist/collection/components/_branding/about/gx-ide-assets/about/langs/about.lang.zh.json +11 -0
- package/dist/collection/components/new-object/new-object.js +8 -4
- package/dist/collection/components/new-object/new-object.js.map +1 -1
- package/dist/collection/components/select-kb-items/helpers.js +6 -3
- package/dist/collection/components/select-kb-items/helpers.js.map +1 -1
- package/dist/collection/components/select-kb-items/select-kb-items.js.map +1 -1
- package/dist/collection/components/splash/gx-ide-assets/splash/images/copyrights-illustration.svg +118 -0
- package/dist/collection/components/splash/gx-ide-assets/splash/langs/splash.lang.en.json +12 -11
- package/dist/collection/components/splash/gx-ide-assets/splash/langs/splash.lang.ja.json +12 -11
- package/dist/collection/components/splash/gx-ide-assets/splash/langs/splash.lang.zh.json +12 -11
- package/dist/collection/components/splash/splash.css +147 -36
- package/dist/collection/components/splash/splash.js +149 -43
- package/dist/collection/components/splash/splash.js.map +1 -1
- package/dist/collection/testing/locale.e2e.js +1 -0
- package/dist/collection/testing/locale.e2e.js.map +1 -1
- package/dist/components/common.js +15 -1
- package/dist/components/common.js.map +1 -1
- package/dist/components/gx-ide-about.d.ts +11 -0
- package/dist/components/gx-ide-about.js +81 -0
- package/dist/components/gx-ide-about.js.map +1 -0
- package/dist/components/gx-ide-new-object.js +8 -4
- package/dist/components/gx-ide-new-object.js.map +1 -1
- package/dist/components/gx-ide-select-kb-items.js +6 -3
- package/dist/components/gx-ide-select-kb-items.js.map +1 -1
- package/dist/components/gx-ide-splash.js +61 -33
- package/dist/components/gx-ide-splash.js.map +1 -1
- package/dist/esm/{code-render-36275eb4.js → code-render-f3d41da4.js} +2 -2
- package/dist/esm/{code-render-36275eb4.js.map → code-render-f3d41da4.js.map} +1 -1
- package/dist/esm/{common-2a1e4e67.js → common-ccb4504a.js} +17 -3
- package/dist/esm/common-ccb4504a.js.map +1 -0
- package/dist/esm/genexus-ide-ui.js +3 -3
- package/dist/esm/gx-ide-about.entry.js +56 -0
- package/dist/esm/gx-ide-about.entry.js.map +1 -0
- package/dist/esm/gx-ide-ai-assistant.entry.js +1 -1
- package/dist/esm/gx-ide-ai-message.entry.js +2 -2
- package/dist/esm/gx-ide-bpm-app-declaration.entry.js +2 -2
- 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 +2 -2
- package/dist/esm/gx-ide-bpm-import-gxpm.entry.js +1 -1
- package/dist/esm/gx-ide-bpm-objects-selector.entry.js +2 -2
- 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-chat-container.entry.js +1 -1
- package/dist/esm/gx-ide-connect-gx-server.entry.js +1 -1
- package/dist/esm/gx-ide-container_2.entry.js +1 -1
- package/dist/esm/gx-ide-create-kb-from-server.entry.js +1 -1
- package/dist/esm/gx-ide-current-user-info.entry.js +1 -1
- package/dist/esm/gx-ide-dashboard-home.entry.js +2 -2
- package/dist/esm/gx-ide-data-selector.entry.js +1 -1
- package/dist/esm/gx-ide-data-type-selector.entry.js +1 -1
- package/dist/esm/gx-ide-design-import.entry.js +1 -1
- package/dist/esm/gx-ide-directory-selector.entry.js +1 -1
- package/dist/esm/gx-ide-edit-module-server.entry.js +1 -1
- package/dist/esm/gx-ide-empty-state.entry.js +1 -1
- package/dist/esm/gx-ide-entity-selector.entry.js +1 -1
- package/dist/esm/gx-ide-gam-installation-settings.entry.js +1 -1
- package/dist/esm/gx-ide-kb-manager-export.entry.js +1 -1
- package/dist/esm/gx-ide-kb-manager-import.entry.js +1 -1
- package/dist/esm/gx-ide-list-selector_2.entry.js +1 -1
- package/dist/esm/gx-ide-loader.entry.js +1 -1
- 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 +3 -3
- package/dist/esm/gx-ide-new-kb.entry.js +3 -3
- package/dist/esm/gx-ide-new-object.entry.js +9 -5
- package/dist/esm/gx-ide-new-object.entry.js.map +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-sc-chat-container.entry.js +2 -2
- package/dist/esm/gx-ide-select-kb-items.entry.js +7 -4
- package/dist/esm/gx-ide-select-kb-items.entry.js.map +1 -1
- package/dist/esm/gx-ide-select-user-team.entry.js +1 -1
- package/dist/esm/gx-ide-share-kb.entry.js +1 -1
- package/dist/esm/gx-ide-sign-in-team.entry.js +1 -1
- package/dist/esm/gx-ide-sign-in.entry.js +1 -1
- package/dist/esm/gx-ide-splash.entry.js +54 -29
- package/dist/esm/gx-ide-splash.entry.js.map +1 -1
- package/dist/esm/gx-ide-start-page.entry.js +1 -1
- package/dist/esm/gx-ide-status-buttons.entry.js +1 -1
- package/dist/esm/gx-ide-switch-panel.entry.js +1 -1
- package/dist/esm/gx-ide-switcher.entry.js +1 -1
- package/dist/esm/gx-ide-team-dev-commit.entry.js +3 -3
- package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +2 -2
- 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 +3 -3
- package/dist/esm/gx-ide-template.entry.js +1 -1
- package/dist/esm/gx-ide-test.entry.js +1 -1
- package/dist/esm/gx-ide-top-bar.entry.js +1 -1
- package/dist/esm/gx-ide-welcome-page.entry.js +1 -1
- package/dist/esm/gx-ide-wf-settings.entry.js +1 -1
- package/dist/esm/gx-ide-ww-attributes.entry.js +1 -1
- package/dist/esm/gx-ide-ww-images.entry.js +3 -3
- package/dist/esm/{helpers-ec4585e5.js → helpers-10479d69.js} +2 -2
- package/dist/esm/{helpers-ec4585e5.js.map → helpers-10479d69.js.map} +1 -1
- package/dist/esm/{index-6a0d98df.js → index-10af18cf.js} +2 -2
- package/dist/esm/{index-6a0d98df.js.map → index-10af18cf.js.map} +1 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{render-combo-items-70aa3ecf.js → render-combo-items-e9c8df5e.js} +2 -2
- package/dist/esm/{render-combo-items-70aa3ecf.js.map → render-combo-items-e9c8df5e.js.map} +1 -1
- package/dist/esm/{render-list-item-2ad96b71.js → render-list-item-f5836c31.js} +2 -2
- package/dist/esm/{render-list-item-2ad96b71.js.map → render-list-item-f5836c31.js.map} +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +3 -3
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/about/images/next-arrow.svg +3 -0
- package/dist/genexus-ide-ui/gx-ide-assets/about/images/next-logo.svg +4 -0
- package/dist/genexus-ide-ui/gx-ide-assets/about/images/next-square.svg +3 -0
- package/dist/genexus-ide-ui/gx-ide-assets/about/langs/about.lang.en.json +11 -0
- package/dist/genexus-ide-ui/gx-ide-assets/about/langs/about.lang.ja.json +11 -0
- package/dist/genexus-ide-ui/gx-ide-assets/about/langs/about.lang.zh.json +11 -0
- package/dist/genexus-ide-ui/gx-ide-assets/splash/images/copyrights-illustration.svg +118 -0
- package/dist/genexus-ide-ui/gx-ide-assets/splash/langs/splash.lang.en.json +12 -11
- package/dist/genexus-ide-ui/gx-ide-assets/splash/langs/splash.lang.ja.json +12 -11
- package/dist/genexus-ide-ui/gx-ide-assets/splash/langs/splash.lang.zh.json +12 -11
- package/dist/genexus-ide-ui/index.esm.js +2 -2
- package/dist/genexus-ide-ui/{p-97114eef.entry.js → p-0078926e.entry.js} +3 -3
- package/dist/genexus-ide-ui/p-0550fd5f.entry.js +96 -0
- package/dist/genexus-ide-ui/p-0550fd5f.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-1364f700.entry.js → p-0e48ff82.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-1cfcec9e.entry.js → p-10fe69d7.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-de589873.entry.js → p-10ff4729.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-5dc54e85.entry.js → p-1b21927c.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-6830b540.entry.js → p-1bc2613e.entry.js} +10 -6
- package/dist/genexus-ide-ui/p-1bc2613e.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-502f2b47.entry.js → p-1cc0ca07.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-3e15089e.entry.js → p-1dd7be84.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-2cf37639.js → p-25a9f1d7.js} +2 -2
- package/dist/genexus-ide-ui/{p-b3e352c8.entry.js → p-26815be2.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-d8c7e0b5.entry.js → p-290bb089.entry.js} +31 -31
- package/dist/genexus-ide-ui/p-2c2eb4c5.entry.js +160 -0
- package/dist/genexus-ide-ui/p-2c2eb4c5.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-9ffe118a.entry.js → p-304d5629.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-df8bf481.entry.js → p-31beae9e.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-e07c97d5.entry.js → p-33d12207.entry.js} +4 -4
- package/dist/genexus-ide-ui/{p-6637e817.entry.js → p-351d9a30.entry.js} +6 -6
- package/dist/genexus-ide-ui/{p-fbab024e.entry.js → p-38aee3da.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-3d2bdcb9.entry.js → p-3c70b7a7.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-24af7f98.entry.js → p-3f5112f4.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-afc73c6f.entry.js → p-42910d15.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-1a53cc60.entry.js → p-46ffec64.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-f654f86d.entry.js → p-4cc35270.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-df4249e1.entry.js → p-4dd463ed.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-ebe6d71f.entry.js → p-5825c3c1.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-03265b1b.entry.js → p-5e8326dd.entry.js} +4 -4
- package/dist/genexus-ide-ui/{p-eaab7765.entry.js → p-628d0a3f.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-0d9a25ad.entry.js → p-6331b2f2.entry.js} +27 -24
- package/dist/genexus-ide-ui/p-6331b2f2.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-8900c81a.entry.js → p-68969051.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-d6c2e256.js → p-6ade96a2.js} +2 -2
- package/dist/genexus-ide-ui/{p-8ff555f4.entry.js → p-6d8d4428.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-85eb72eb.entry.js → p-6ec79fd8.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-6374dabb.entry.js → p-739058a1.entry.js} +4 -4
- package/dist/genexus-ide-ui/{p-b2af0c95.entry.js → p-81b673db.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-1c36217e.entry.js → p-82e107c8.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-3468662b.entry.js → p-842a081e.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-2de01408.js → p-8c0b4d9f.js} +2 -2
- package/dist/genexus-ide-ui/{p-e9f77ad0.entry.js → p-94904819.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-dcb1516d.entry.js → p-94b4993e.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-4cd56d14.entry.js → p-950953d1.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-70024ecb.entry.js → p-9678ac9d.entry.js} +20 -20
- package/dist/genexus-ide-ui/{p-49f9f6bf.entry.js → p-98b30c5d.entry.js} +8 -8
- package/dist/genexus-ide-ui/p-9a609b51.js +143 -0
- package/dist/genexus-ide-ui/p-9a609b51.js.map +1 -0
- package/dist/genexus-ide-ui/{p-5b1576cc.js → p-9ddea83b.js} +9 -9
- package/dist/genexus-ide-ui/{p-c21300fb.entry.js → p-a0529222.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-a6dd3f03.entry.js → p-b3d615da.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-22908448.entry.js → p-ba7d1472.entry.js} +8 -8
- package/dist/genexus-ide-ui/{p-f2f9e36e.entry.js → p-bb44d9f9.entry.js} +2 -2
- package/dist/genexus-ide-ui/p-c58e0a92.entry.js +17 -0
- package/dist/genexus-ide-ui/{p-acaed500.entry.js → p-c624a8da.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-9a604798.entry.js → p-c6aeddf9.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-aa821b66.entry.js → p-caed0369.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-34b5a494.entry.js → p-cbe2dd13.entry.js} +5 -5
- package/dist/genexus-ide-ui/{p-71f3b66e.entry.js → p-d095a37c.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-4fcde4d0.entry.js → p-d5d40477.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-1105c966.entry.js → p-d83fc68d.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-d7169c07.entry.js → p-dbcb6152.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-57986b2e.entry.js → p-dd515807.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-5a734013.entry.js → p-dd9136a4.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-b238a545.entry.js → p-de7f0c1f.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-822090ba.entry.js → p-e502c2fd.entry.js} +8 -8
- package/dist/genexus-ide-ui/{p-52af77c2.entry.js → p-e7fb3ee3.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-6e667dde.entry.js → p-eaa68fb2.entry.js} +4 -4
- package/dist/genexus-ide-ui/{p-f3aa0e41.js → p-f549f6e1.js} +2 -2
- package/dist/genexus-ide-ui/{p-c74d18fe.entry.js → p-fb314685.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-26aff07c.entry.js → p-fcee5a81.entry.js} +3 -3
- package/dist/types/common/common.d.ts +1 -0
- package/dist/types/components/_branding/about/about.d.ts +33 -0
- package/dist/types/components/select-kb-items/select-kb-items.d.ts +2 -1
- package/dist/types/components/splash/splash.d.ts +32 -8
- package/dist/types/components.d.ts +113 -8
- package/package.json +1 -1
- package/dist/cjs/common-f7361979.js.map +0 -1
- package/dist/esm/common-2a1e4e67.js.map +0 -1
- package/dist/genexus-ide-ui/p-0d9a25ad.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-6830b540.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-bb1394ca.entry.js +0 -113
- package/dist/genexus-ide-ui/p-bb1394ca.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-f194af32.js +0 -97
- package/dist/genexus-ide-ui/p-f194af32.js.map +0 -1
- package/dist/genexus-ide-ui/p-f963b96e.entry.js +0 -17
- /package/dist/collection/components/{splash/gx-ide-assets/splash → _branding/about/gx-ide-assets/about}/images/copyrights-illustration.png +0 -0
- /package/dist/genexus-ide-ui/gx-ide-assets/{splash → about}/images/copyrights-illustration.png +0 -0
- /package/dist/genexus-ide-ui/{p-97114eef.entry.js.map → p-0078926e.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-1364f700.entry.js.map → p-0e48ff82.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-1cfcec9e.entry.js.map → p-10fe69d7.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-de589873.entry.js.map → p-10ff4729.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-5dc54e85.entry.js.map → p-1b21927c.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-502f2b47.entry.js.map → p-1cc0ca07.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-3e15089e.entry.js.map → p-1dd7be84.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-2cf37639.js.map → p-25a9f1d7.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-b3e352c8.entry.js.map → p-26815be2.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-d8c7e0b5.entry.js.map → p-290bb089.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-9ffe118a.entry.js.map → p-304d5629.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-df8bf481.entry.js.map → p-31beae9e.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-e07c97d5.entry.js.map → p-33d12207.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-6637e817.entry.js.map → p-351d9a30.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-fbab024e.entry.js.map → p-38aee3da.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-3d2bdcb9.entry.js.map → p-3c70b7a7.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-24af7f98.entry.js.map → p-3f5112f4.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-afc73c6f.entry.js.map → p-42910d15.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-1a53cc60.entry.js.map → p-46ffec64.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-f654f86d.entry.js.map → p-4cc35270.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-df4249e1.entry.js.map → p-4dd463ed.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-ebe6d71f.entry.js.map → p-5825c3c1.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-03265b1b.entry.js.map → p-5e8326dd.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-eaab7765.entry.js.map → p-628d0a3f.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-8900c81a.entry.js.map → p-68969051.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-d6c2e256.js.map → p-6ade96a2.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-8ff555f4.entry.js.map → p-6d8d4428.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-85eb72eb.entry.js.map → p-6ec79fd8.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-6374dabb.entry.js.map → p-739058a1.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-b2af0c95.entry.js.map → p-81b673db.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-1c36217e.entry.js.map → p-82e107c8.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-3468662b.entry.js.map → p-842a081e.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-2de01408.js.map → p-8c0b4d9f.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-e9f77ad0.entry.js.map → p-94904819.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-dcb1516d.entry.js.map → p-94b4993e.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-4cd56d14.entry.js.map → p-950953d1.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-70024ecb.entry.js.map → p-9678ac9d.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-49f9f6bf.entry.js.map → p-98b30c5d.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-5b1576cc.js.map → p-9ddea83b.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-c21300fb.entry.js.map → p-a0529222.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-a6dd3f03.entry.js.map → p-b3d615da.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-22908448.entry.js.map → p-ba7d1472.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-f2f9e36e.entry.js.map → p-bb44d9f9.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-f963b96e.entry.js.map → p-c58e0a92.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-acaed500.entry.js.map → p-c624a8da.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-9a604798.entry.js.map → p-c6aeddf9.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-aa821b66.entry.js.map → p-caed0369.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-34b5a494.entry.js.map → p-cbe2dd13.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-71f3b66e.entry.js.map → p-d095a37c.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-4fcde4d0.entry.js.map → p-d5d40477.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-1105c966.entry.js.map → p-d83fc68d.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-d7169c07.entry.js.map → p-dbcb6152.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-57986b2e.entry.js.map → p-dd515807.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-5a734013.entry.js.map → p-dd9136a4.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-b238a545.entry.js.map → p-de7f0c1f.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-822090ba.entry.js.map → p-e502c2fd.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-52af77c2.entry.js.map → p-e7fb3ee3.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-6e667dde.entry.js.map → p-eaa68fb2.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-f3aa0e41.js.map → p-f549f6e1.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-c74d18fe.entry.js.map → p-fb314685.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-26aff07c.entry.js.map → p-fcee5a81.entry.js.map} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, h, H as Host,
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-10af18cf.js';
|
|
2
2
|
import { g as getIconPath } from './assets-manager-0d129105.js';
|
|
3
3
|
import './MERCURY_ASSETS-2455138c.js';
|
|
4
|
-
import { r as renderModuleDataProperties } from './common-
|
|
4
|
+
import { r as renderModuleDataProperties } from './common-ccb4504a.js';
|
|
5
5
|
import { L as Locale } from './locale-e5107fad.js';
|
|
6
6
|
|
|
7
7
|
const manageModuleReferencesCss = ":root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-01--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-02{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-02--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--color-on-primary)}.gxg-title-03{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-03--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-04{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-04--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-05{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-05--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable)}.gxg-text--negative{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text--gray{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--dimmed)}.gxg-quote{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);font-style:italic}.gxg-quote--negative{color:var(--ds-base-font-color--negative)}.gxg-link{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--ds-base-font-color--link-hover)}.gxg-link:active{color:var(--ds-base-font-color--link-active)}.gxg-link-gray{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed)}.gxg-link-gray:hover{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed);filter:brightness(1.4)}.gxg-alert-error{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--error);display:inline-block}.gxg-alert-warning{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--warning);display:inline-block}.gxg-alert-success{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--success);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--ds-base-font-family-primary);font-weight:var(--gxg-label-font-weight);font-size:var(--gxg-label-font-size);color:var(--gxg-label-color);text-align:center;line-height:1.455em;display:flex;align-items:center}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-scrollbar{}.gxg-scrollbar::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gxg-scrollbar::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gxg-scrollbar::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}:host{display:grid;block-size:100%}.card-regular{background-color:var(--mer-surface__elevation--01);border:var(--mer-border__width--sm) solid var(--mer-border-color__on-elevation--01);border-radius:var(--mer-border__radius--md);padding:var(--mer-spacing--md) var(--mer-spacing--md);display:grid}.card-small{background-color:var(--mer-surface__elevation--02);border-radius:var(--mer-border__radius--sm);padding:var(--mer-spacing--sm) var(--mer-spacing--sm)}.card-small--actionable:hover{background-color:var(--mer-color__neutral-gray--600)}.card-small--actionable:active{background-color:var(--mer-color__neutral-gray--650)}.card-small:focus-visible{outline:var(--focus__outline-width) var(--focus__outline-style) var(--focus__outline-color);outline-offset:var(--focus__outline-offset)}.empty-state{block-size:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--mer-spacing--sm);text-align:center}.empty-state__title,.empty-state__button,.empty-state__link{max-inline-size:300px}.opacity-0{opacity:0}.opacity-1{opacity:1}.display-contents{display:contents}.gxi-hidden{display:none !important}.gxi-full-height{height:100%}.gxi-overflow-auto{overflow:auto}.gxi-display-flex{display:flex}.align-start{display:flex;align-items:start}.align-center{display:flex;align-items:center}.align-end{display:flex;align-items:end}.overflow-auto{overflow:auto}.justify-start{display:flex;justify-content:start}.justify-center{display:flex;justify-content:center}.justify-end{display:flex;justify-content:end}.grid{display:grid;grid-row-gap:var(--gx-ide-grid-row-gap);grid-column-gap:var(--gx-ide-grid-column-gap);grid-template-rows:auto}ch-grid-cell{display:flex}ch-grid{overflow:auto;height:100%}ch-grid-column{z-index:99;border-bottom:1px solid var(--mer-color__neutral-gray--800)}ch-grid-column:first-child{padding-inline-start:var(--gx-ide-container__padding) !important}ch-grid-column:last-child{padding-inline-end:var(--gx-ide-container__padding) !important}ch-grid-cell{--mer-spacing--xs:var(--gx-ide-container__padding)}.layout{display:grid;gap:var(--mer-spacing--lg);box-sizing:border-box}.layout--two-cols{grid-template-columns:1fr 1fr}.layout--space-above{padding-block-start:var(--mer-spacing--lg)}gxg-tabs{box-shadow:none}:host(.gx-ide-component){height:100% !important;display:flex !important;flex-direction:column !important}:host(:focus-within) gx-ide-top-bar::part(wrapper){background-color:var(--color-secondary-enabled)}.gx-ide-main-wrapper{color:var(--gx-ide-component-text-color);font-weight:var(--mer-font__weight--regular);font-size:var(--mer-font__size--xs);font-family:var(--mer-font-family--primary);height:100%;background-color:var(--gx-ide-component-background-color);display:flex;flex-direction:column;flex-grow:1;box-sizing:border-box}.gx-ide-main{flex-grow:1;overflow-y:auto;}.gx-ide-main::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-main::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-main::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-main::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-main::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.gx-ide-overflow{overflow-y:auto;}.gx-ide-overflow::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-overflow::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-overflow::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.tree-view-primary{font-size:var(--mer-font__size--2xs)}p{margin:0;font-size:var(--mer-font__size--xxs)}.buttons-container{display:flex;gap:var(--mer-spacing--xs)}p,ul{font-size:var(--font-size-lg);margin:0}p{line-height:1.6em}.header{align-items:center;grid-template-columns:1fr auto;grid-template-rows:1fr}.main{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr;height:100%;overflow:auto}ch-grid-columnset{display:none}ch-grid-row[selected] gxg-icon[data-action=install]{filter:brightness(2)}.grid-cell-module__info{display:flex;flex-direction:column;align-items:flex-start;gap:var(--mer-spacing--3xs)}.grid-cell-module__name{font-weight:var(--mer-font__weight--bold);display:flex;align-items:center;gap:var(--mer-spacing--sm)}.grid-cell-module__name,.grid-cell-module__description{line-height:1.55em}.grid-cell-module__description{padding-inline-start:36px}.grid-container{height:100%;overflow:auto}.grid-container gx-ide-empty-state{height:100%}.servers-container{display:none;height:100%}.servers-container__header{display:flex;align-items:center;justify-content:space-between;padding:var(--gxg-list-box-main__padding) var(--gxg-list-box-main__padding) 0 var(--gxg-list-box-main__padding)}.servers-container__header gxg-button{width:100%}.modules__header{padding:var(--gxg-list-box-main__padding);display:flex;flex-direction:column;gap:var(--mer-spacing--xs)}.modules__combo-container{display:flex;flex-direction:column;gap:var(--mer-spacing--xs)}.modules__server-commands{display:flex;gap:var(--mer-spacing--xs)}.modules__combo{display:flex;flex-direction:row;gap:var(--mer-spacing--xs)}.modules__combo gxg-combo-box{flex:1}.modules__container{border-inline-end:var(--mer-border__width--sm) solid var(--gx-ide-container-border-color);display:grid;grid-template-rows:auto 1fr;height:100%;overflow:auto}.modules__main{display:grid;grid-template-rows:auto 1fr;height:100%;overflow:auto}.modules__main-header{display:flex;padding:var(--mer-spacing--xs);flex-direction:column;gap:var(--mer-spacing--xs)}.module-info{display:grid;grid-template-rows:auto 1fr;height:100%;overflow:auto}.module-info__title{display:flex;align-items:center;gap:var(--mer-spacing--xs)}.module-info__name{display:flex;align-items:center;gap:var(--mer-spacing--sm);--ds-icon-size-box--regular:24px;--ds-icon-size--regular:24px;font-weight:var(--mer-font__weight--bold)}.module-info__header{padding:var(--gx-ide-container__padding);display:flex;flex-direction:column;gap:var(--mer-spacing--xs);border-block-end:var(--mer-border__width--sm) solid var(--gx-ide-container-border-color)}.module-info__action-container{display:flex;flex-direction:row;align-items:center;gap:var(--mer-spacing--xs)}.module-info__action-container:before{content:\"\";width:var(--mer-spacing--xs);height:var(--mer-spacing--xs);border-radius:50%;display:block;background-color:var(--mer-icon__primary--disabled)}.module-info__action-container--installed:before{background-color:var(--mer-icon__primary)}.module-info__action-container--uninstallable:before{background-color:var(--mer-icon__warning)}.module-info__warning-message{margin-block-start:var(--mer-spacing--2xs);background-color:var(--mer-color__tinted-yellow--5);color:var(--mer-text__on-elevation);border:var(--mer-border__width--sm) solid var(--mer-border-color__warning);border-radius:var(--mer-border__radius--sm);padding:var(--mer-spacing--xs) var(--mer-spacing--md)}.module-info__divider{width:calc(100% - var(--gx-ide-container__padding) * 4);padding:0 var(--gx-ide-container__padding);margin:0 auto;border:0;border-block-end:var(--mer-border__width--sm) solid var(--gx-ide-container-border-color)}.module-info__properties{display:flex;flex-direction:column;padding:var(--gx-ide-container__padding);gap:var(--mer-spacing--xs);overflow:auto}.md-property{display:grid;gap:var(--mer-spacing--xs)}.md-property--inline{grid-template-columns:auto 1fr}.md-property__key{font-weight:var(--font-weight-bold);max-width:150px}.md-property__value{font-size:var(--mer-font__size--2xs)}.md-property__key>*,.md-property__value>*{display:inline-block}.md-property__list{display:flex;flex-direction:column;gap:var(--mer-spacing--xs)}.md-property__list>ul{margin:0;padding:0;list-style-type:none;display:flex;flex-direction:column;gap:var(--mer-spacing--2xs);margin-inline-start:var(--mer-spacing--xs)}.md-property__list>ul li{position:relative;padding-inline-start:12px;line-height:var(--ds-base-font-line-height--comfortable)}.md-property__list>ul li::before{content:\"\";position:absolute;left:0;top:7px;display:inline-block;width:var(--mer-spacing--2xs);height:var(--mer-spacing--2xs);background-color:var(--mer-text__on-surface)}.md-property,.md-property__list{border-block-end:var(--mer-border__width--sm) solid var(--gx-ide-container-border-color);padding-block-end:var(--mer-spacing--xs)}.md-property:last-child,.md-property__list:last-child{border-block-end:0;padding-block-end:0}gxg-ide-loader{border-radius:var(--mer-border__radius--md)}.button-wrapper{display:grid;align-items:center;justify-content:center}";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, h, H as Host,
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-10af18cf.js';
|
|
2
2
|
import { g as getIconPath } from './assets-manager-0d129105.js';
|
|
3
3
|
import './MERCURY_ASSETS-2455138c.js';
|
|
4
|
-
import { r as renderModuleDataProperties } from './common-
|
|
4
|
+
import { r as renderModuleDataProperties } from './common-ccb4504a.js';
|
|
5
5
|
import { L as Locale } from './locale-e5107fad.js';
|
|
6
6
|
|
|
7
7
|
const manageModuleReferencesCss = ":root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-01--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-02{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-02--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--color-on-primary)}.gxg-title-03{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-03--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-04{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-04--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-05{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-05--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable)}.gxg-text--negative{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text--gray{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--dimmed)}.gxg-quote{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);font-style:italic}.gxg-quote--negative{color:var(--ds-base-font-color--negative)}.gxg-link{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--ds-base-font-color--link-hover)}.gxg-link:active{color:var(--ds-base-font-color--link-active)}.gxg-link-gray{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed)}.gxg-link-gray:hover{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed);filter:brightness(1.4)}.gxg-alert-error{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--error);display:inline-block}.gxg-alert-warning{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--warning);display:inline-block}.gxg-alert-success{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--success);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--ds-base-font-family-primary);font-weight:var(--gxg-label-font-weight);font-size:var(--gxg-label-font-size);color:var(--gxg-label-color);text-align:center;line-height:1.455em;display:flex;align-items:center}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-scrollbar{}.gxg-scrollbar::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gxg-scrollbar::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gxg-scrollbar::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}:host{display:grid;block-size:100%}.card-regular{background-color:var(--mer-surface__elevation--01);border:var(--mer-border__width--sm) solid var(--mer-border-color__on-elevation--01);border-radius:var(--mer-border__radius--md);padding:var(--mer-spacing--md) var(--mer-spacing--md);display:grid}.card-small{background-color:var(--mer-surface__elevation--02);border-radius:var(--mer-border__radius--sm);padding:var(--mer-spacing--sm) var(--mer-spacing--sm)}.card-small--actionable:hover{background-color:var(--mer-color__neutral-gray--600)}.card-small--actionable:active{background-color:var(--mer-color__neutral-gray--650)}.card-small:focus-visible{outline:var(--focus__outline-width) var(--focus__outline-style) var(--focus__outline-color);outline-offset:var(--focus__outline-offset)}.empty-state{block-size:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--mer-spacing--sm);text-align:center}.empty-state__title,.empty-state__button,.empty-state__link{max-inline-size:300px}.opacity-0{opacity:0}.opacity-1{opacity:1}.display-contents{display:contents}.gxi-hidden{display:none !important}.gxi-full-height{height:100%}.gxi-overflow-auto{overflow:auto}.gxi-display-flex{display:flex}.align-start{display:flex;align-items:start}.align-center{display:flex;align-items:center}.align-end{display:flex;align-items:end}.overflow-auto{overflow:auto}.justify-start{display:flex;justify-content:start}.justify-center{display:flex;justify-content:center}.justify-end{display:flex;justify-content:end}.grid{display:grid;grid-row-gap:var(--gx-ide-grid-row-gap);grid-column-gap:var(--gx-ide-grid-column-gap);grid-template-rows:auto}ch-grid-cell{display:flex}ch-grid{overflow:auto;height:100%}ch-grid-column{z-index:99;border-bottom:1px solid var(--mer-color__neutral-gray--800)}ch-grid-column:first-child{padding-inline-start:var(--gx-ide-container__padding) !important}ch-grid-column:last-child{padding-inline-end:var(--gx-ide-container__padding) !important}ch-grid-cell{--mer-spacing--xs:var(--gx-ide-container__padding)}.layout{display:grid;gap:var(--mer-spacing--lg);box-sizing:border-box}.layout--two-cols{grid-template-columns:1fr 1fr}.layout--space-above{padding-block-start:var(--mer-spacing--lg)}gxg-tabs{box-shadow:none}:host(.gx-ide-component){height:100% !important;display:flex !important;flex-direction:column !important}:host(:focus-within) gx-ide-top-bar::part(wrapper){background-color:var(--color-secondary-enabled)}.gx-ide-main-wrapper{color:var(--gx-ide-component-text-color);font-weight:var(--mer-font__weight--regular);font-size:var(--mer-font__size--xs);font-family:var(--mer-font-family--primary);height:100%;background-color:var(--gx-ide-component-background-color);display:flex;flex-direction:column;flex-grow:1;box-sizing:border-box}.gx-ide-main{flex-grow:1;overflow-y:auto;}.gx-ide-main::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-main::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-main::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-main::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-main::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.gx-ide-overflow{overflow-y:auto;}.gx-ide-overflow::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-overflow::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-overflow::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.tree-view-primary{font-size:var(--mer-font__size--2xs)}p{margin:0;font-size:var(--mer-font__size--xxs)}.buttons-container{display:flex;gap:var(--mer-spacing--xs)}p,ul{font-size:var(--font-size-lg);margin:0}p{line-height:1.6em}.header{align-items:center;grid-template-columns:1fr auto;grid-template-rows:1fr}.main{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr;height:100%;overflow:auto}ch-grid-columnset{display:none}ch-grid-row[selected] gxg-icon[data-action=install]{filter:brightness(2)}.grid-cell-module__info{display:flex;flex-direction:column;align-items:flex-start;gap:var(--mer-spacing--3xs)}.grid-cell-module__name{font-weight:var(--mer-font__weight--bold)}.grid-cell-module__name,.grid-cell-module__description{line-height:1.55em}.grid-container{height:100%;overflow:auto}.grid-container gx-ide-empty-state{height:100%}.servers-container{display:none;height:100%}.servers-container__header{display:flex;align-items:center;justify-content:space-between;padding:var(--gxg-list-box-main__padding) var(--gxg-list-box-main__padding) 0 var(--gxg-list-box-main__padding)}.servers-container__header gxg-button{width:100%}.modules__header{padding:var(--gxg-list-box-main__padding);display:flex;flex-direction:column;gap:var(--mer-spacing--xs)}.modules__combo-container{display:flex;flex-direction:column;gap:var(--mer-spacing--xs)}.modules__server-commands{display:flex;gap:var(--mer-spacing--xs)}.modules__combo{display:flex;flex-direction:row;gap:var(--mer-spacing--xs)}.modules__combo gxg-combo-box{flex:1}.modules__container{border-inline-end:var(--mer-border__width--sm) solid var(--gx-ide-container-border-color);display:grid;grid-template-rows:auto 1fr;height:100%;overflow:auto}.modules__main{display:grid;grid-template-rows:auto 1fr;height:100%;overflow:auto}.modules__main-header{display:flex;padding:var(--mer-spacing--xs);flex-direction:column;gap:var(--mer-spacing--xs)}.module-info{display:grid;grid-template-rows:auto 1fr;height:100%;overflow:auto}.module-info__title{display:flex;align-items:center;gap:var(--mer-spacing--xs)}.module-info__name{display:flex;align-items:center;gap:var(--mer-spacing--sm);--ds-icon-size-box--regular:24px;--ds-icon-size--regular:24px;font-weight:var(--mer-font__weight--bold)}.module-info__header{padding:var(--gx-ide-container__padding);display:flex;flex-direction:column;gap:var(--mer-spacing--xs);border-block-end:var(--mer-border__width--sm) solid var(--gx-ide-container-border-color)}.module-info__action-container{display:flex;flex-direction:row;align-items:center;gap:var(--mer-spacing--xs)}.module-info__action-container:before{content:\"\";width:var(--mer-spacing--xs);height:var(--mer-spacing--xs);border-radius:50%;display:block;background-color:var(--mer-icon__primary--disabled)}.module-info__action-container--installed:before{background-color:var(--mer-icon__primary)}.module-info__action-container--uninstallable:before{background-color:var(--mer-icon__warning)}.module-info__warning-message{margin-block-start:var(--mer-spacing--2xs);background-color:var(--mer-color__tinted-yellow--5);color:var(--mer-text__on-elevation);border:var(--mer-border__width--sm) solid var(--mer-border-color__warning);border-radius:var(--mer-border__radius--sm);padding:var(--mer-spacing--xs) var(--mer-spacing--md)}.module-info__divider{width:calc(100% - var(--gx-ide-container__padding) * 4);padding:0 var(--gx-ide-container__padding);margin:0 auto;border:0;border-block-end:var(--mer-border__width--sm) solid var(--gx-ide-container-border-color)}.module-info__properties{display:flex;flex-direction:column;padding:var(--gx-ide-container__padding);gap:var(--mer-spacing--xs);overflow:auto}.md-property{display:grid;gap:var(--mer-spacing--xs)}.md-property--inline{grid-template-columns:auto 1fr}.md-property__key{font-weight:var(--font-weight-bold);max-width:150px}.md-property__value{font-size:var(--mer-font__size--2xs)}.md-property__key>*,.md-property__value>*{display:inline-block}.md-property__list{display:flex;flex-direction:column;gap:var(--mer-spacing--xs)}.md-property__list>ul{margin:0;padding:0;list-style-type:none;display:flex;flex-direction:column;gap:var(--mer-spacing--2xs);margin-inline-start:var(--mer-spacing--xs)}.md-property__list>ul li{position:relative;padding-inline-start:12px;line-height:var(--ds-base-font-line-height--comfortable)}.md-property__list>ul li::before{content:\"\";position:absolute;left:0;top:7px;display:inline-block;width:var(--mer-spacing--2xs);height:var(--mer-spacing--2xs);background-color:var(--mer-text__on-surface)}.md-property,.md-property__list{border-block-end:var(--mer-border__width--sm) solid var(--gx-ide-container-border-color);padding-block-end:var(--mer-spacing--xs)}.md-property:last-child,.md-property__list:last-child{border-block-end:0;padding-block-end:0}gxg-ide-loader{border-radius:var(--mer-border__radius--md)}.button-wrapper{display:grid;align-items:center;justify-content:center}";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, h, H as Host,
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-10af18cf.js';
|
|
2
2
|
import { L as Locale } from './locale-e5107fad.js';
|
|
3
3
|
|
|
4
4
|
const STATUS_REGEXP_KEY = "status";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { r as registerInstance,
|
|
1
|
+
import { r as registerInstance, g as getAssetPath, h, H as Host, a as getElement } from './index-10af18cf.js';
|
|
2
2
|
import { c as config } from './config-1ef9d75a.js';
|
|
3
3
|
import { L as Locale } from './locale-e5107fad.js';
|
|
4
|
-
import { r as renderChCheckboxItems, m as mapOptionsToComboBoxItemModel } from './helpers-
|
|
5
|
-
import { g as getSelectedItem } from './common-
|
|
4
|
+
import { r as renderChCheckboxItems, m as mapOptionsToComboBoxItemModel } from './helpers-10479d69.js';
|
|
5
|
+
import { g as getSelectedItem } from './common-ccb4504a.js';
|
|
6
6
|
import { v as validateControls } from './form-validation-cd0215c6.js';
|
|
7
7
|
import { r as removeIndex } from './array-c52006e6.js';
|
|
8
8
|
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { r as registerInstance,
|
|
1
|
+
import { r as registerInstance, g as getAssetPath, h, H as Host, a as getElement } from './index-10af18cf.js';
|
|
2
2
|
import { g as getIconPath } from './assets-manager-0d129105.js';
|
|
3
3
|
import './MERCURY_ASSETS-2455138c.js';
|
|
4
4
|
import { c as config } from './config-1ef9d75a.js';
|
|
5
5
|
import { L as Locale } from './locale-e5107fad.js';
|
|
6
|
-
import { g as getSelectedItem } from './common-
|
|
7
|
-
import { r as renderChCheckboxItems, m as mapOptionsToComboBoxItemModel } from './helpers-
|
|
6
|
+
import { g as getSelectedItem } from './common-ccb4504a.js';
|
|
7
|
+
import { r as renderChCheckboxItems, m as mapOptionsToComboBoxItemModel } from './helpers-10479d69.js';
|
|
8
8
|
import { v as validateControls } from './form-validation-cd0215c6.js';
|
|
9
9
|
import { r as removeIndex } from './array-c52006e6.js';
|
|
10
10
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent,
|
|
1
|
+
import { r as registerInstance, c as createEvent, g as getAssetPath, h, H as Host, a as getElement } from './index-10af18cf.js';
|
|
2
2
|
import { c as config } from './config-1ef9d75a.js';
|
|
3
3
|
import { L as Locale } from './locale-e5107fad.js';
|
|
4
4
|
|
|
@@ -200,8 +200,10 @@ const GxIdeNewObject = class {
|
|
|
200
200
|
await __classPrivateFieldGet(this, _GxIdeNewObject_updateSuggestions, "f").call(this);
|
|
201
201
|
});
|
|
202
202
|
_GxIdeNewObject_onBlurNameHandler.set(this, async () => {
|
|
203
|
-
|
|
204
|
-
|
|
203
|
+
if (__classPrivateFieldGet(this, _GxIdeNewObject_nameEl, "f").value) {
|
|
204
|
+
const result = await this.validateNameCallback(__classPrivateFieldGet(this, _GxIdeNewObject_nameEl, "f").value);
|
|
205
|
+
__classPrivateFieldGet(this, _GxIdeNewObject_validateNameHandler, "f").call(this, result);
|
|
206
|
+
}
|
|
205
207
|
});
|
|
206
208
|
_GxIdeNewObject_onInputDescriptionHandler.set(this, (e) => {
|
|
207
209
|
this.description = e.detail;
|
|
@@ -218,8 +220,10 @@ const GxIdeNewObject = class {
|
|
|
218
220
|
});
|
|
219
221
|
_GxIdeNewObject_onNameValueChangedHandler.set(this, async (e) => {
|
|
220
222
|
const name = e.detail;
|
|
221
|
-
|
|
222
|
-
|
|
223
|
+
if (name) {
|
|
224
|
+
const result = await this.validateNameCallback(name);
|
|
225
|
+
__classPrivateFieldGet(this, _GxIdeNewObject_validateNameHandler, "f").call(this, result);
|
|
226
|
+
}
|
|
223
227
|
});
|
|
224
228
|
_GxIdeNewObject_renderModuleFolder.set(this, () => {
|
|
225
229
|
if (this.selectedType.hasModule || this.selectedType.hasFolder) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"gx-ide-new-object.entry.js","mappings":"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","names":[],"sources":["src/components/new-object/helpers.tsx","src/common/chameleon-helpers.ts","src/components/new-object/new-object.scss?tag=gx-ide-new-object&encapsulation=shadow","src/components/new-object/new-object.tsx"],"sourcesContent":["import { ActionListModel } from \"@genexus/chameleon-controls-library\";\nimport { TypeCategoryData } from \"../..\";\nimport { TypeData } from \"./new-object\";\n\nexport type ChCheckboxArray = HTMLChCheckboxElement[] | null;\n\nexport const mapTypeCategoryDataToActionListModel = (\n categories: TypeCategoryData[]\n): ActionListModel => {\n return categories.map(category => {\n return {\n id: category.id,\n type: \"actionable\",\n additionalInformation: {\n \"stretch-start\": {\n center: [{ imgSrc: category.icon || undefined }]\n }\n },\n caption: category.name,\n part: `category-${category.id}`\n };\n });\n};\n\nexport const mapTypeDataToActionListModel = (\n types: TypeData[],\n selectedCategoryId: string,\n selectedTypeId?: string\n): ActionListModel => {\n return types.map(type => {\n return {\n id: `${type.id}`,\n type: \"actionable\",\n imageSrc: \"objects/design\",\n selected: selectedTypeId === type.id,\n additionalInformation: {\n \"stretch-start\": {\n center: [{ imgSrc: type.icon }]\n }\n },\n caption: type.name,\n part: `type-${selectedCategoryId}-${type.id}`\n };\n });\n};\n","import { ActionListModel } from \"@genexus/chameleon-controls-library/dist/types/components/action-list/types\";\n\n/**\n * Order the items in the same order as they come.\n */\nexport const sortActionListDefault = (subModel: ActionListModel) => {\n return subModel;\n};\n",":host {\n display: grid;\n block-size: 100%;\n}\n\n.main {\n display: grid;\n grid-template-rows: 1fr max-content max-content;\n}\n.categories-types-layout {\n grid-template-columns: 1fr 1fr;\n}\n.api-description-layout {\n padding-block: calc(\n var(--content-block-spacing) * 2\n ); // WA until we define a class for internal spacing.\n display: grid;\n grid-template:\n \"api-description-title api-description-title\"\n \"api-name-label api-name-control\"\n \"api-description-label api-description-control\"\n \"api-module-label api-module-control\";\n grid-template-columns: max-content 1fr;\n}\n.api-description-title {\n grid-area: api-description-title;\n}\n.api-name-label {\n grid-area: api-name-label;\n}\n.api-name-control {\n grid-area: api-name-control;\n}\n.api-description-label {\n grid-area: api-description-label;\n}\n.api-description-control {\n grid-area: api-description-control;\n}\n.api-module-label {\n grid-area: api-module-label;\n}\n.api-module-control {\n grid-area: api-module-control;\n}\n","/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Event,\n EventEmitter,\n Element,\n State,\n Watch,\n getAssetPath,\n Method\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { config } from \"../../common/config\";\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../common/locale\";\nimport { EntityData } from \"../../common/types\";\nimport {\n ActionListItemModelExtended,\n ActionListModel\n} from \"@genexus/chameleon-controls-library\";\nimport {\n mapTypeCategoryDataToActionListModel,\n mapTypeDataToActionListModel\n} from \"./helpers\";\n\nimport { sortActionListDefault } from \"../../common/chameleon-helpers\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/edit\",\n \"components/icon\",\n \"components/tooltip\",\n \"components/list-box\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/spacing\",\n \"utils/typography\"\n];\n\n@Component({\n tag: \"gx-ide-new-object\",\n styleUrl: \"new-object.scss\",\n shadow: { delegatesFocus: true },\n assetsDirs: [\"gx-ide-assets/new-object\"]\n})\nexport class GxIdeNewObject {\n /**\n * The component hard-coded strings translations.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #componentLocale: any;\n #shortcutsSrc = getAssetPath(`./gx-ide-assets/new-object/shortcuts.json`);\n\n @Element() el: HTMLGxIdeNewObjectElement;\n\n /* References needed to collect data on \"Create\" button submit */\n #categoriesActionListEl: HTMLChActionListRenderElement;\n #chShortcutsEl: HTMLChShortcutsElement;\n #descriptionEl!: HTMLChEditElement;\n #descriptionModifiedByUser = false;\n #moduleFolderEl!: HTMLGxIdeEntitySelectorElement;\n #nameEl!: HTMLChEditElement;\n #nameModifiedByUser = false;\n\n /**\n * Description of the new object\n */\n @State() description: string = undefined;\n\n /**\n * Name of the new object\n */\n @State() name: string = undefined;\n @State() nameValidationErrorMessage: string;\n @State() selectedCategory: TypeCategoryData | null;\n @State() selectedType: TypeData | null;\n // representations of TypeCategoryData[] as ComboBoxModel.\n @State() typeCategoriesActionListModel: ActionListModel = [];\n @State() typesActionListModel: ActionListModel = [];\n\n @State() selectedTypeMap: Map<string, string> = new Map();\n\n /**\n * Allows you to define the type selected by default when instantiating the dialog.\n * Represented by the type identifier.\n */\n @Prop() readonly defaultTypeId: string;\n\n /**\n * Default value for the Module/Folder field.\n */\n @Prop() readonly defaultParent: EntityData;\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Callback invoked when user wants to cancel object creation\n */\n @Prop() readonly cancelCallback: CancelCallback;\n\n /**\n * Callback invoked when user wants to confirm object creation\n */\n @Prop() readonly createCallback: CreateCallback;\n\n /**\n * Applies a shadow all around\n */\n @Prop() readonly shadow = false;\n\n /**\n * Array containing category list and its corresponding types\n */\n @Prop({ mutable: true }) typeCategories!: TypeCategoryData[];\n @Watch(\"typeCategories\")\n typeCategoriesChanged(newValue: TypeCategoryData[]) {\n if (newValue?.length) {\n this.typeCategoriesActionListModel = mapTypeCategoryDataToActionListModel(\n this.typeCategories\n );\n }\n }\n\n /**\n * Current value for Module/Folder\n */\n @Prop() readonly parent: EntityData;\n\n /**\n * Callback invoked when the action is executed on the Module/Folder filter\n * (button '...'). It returns the information of the selected object (id and\n * name) or 'undefined' if it was canceled.\n */\n @Prop() readonly selectModuleCallback: SelectModuleCallback;\n\n /**\n * Callback invoked when you must validate a name. Returns an error message or\n * 'undefined' if the name is not valid.\n */\n @Prop() readonly validateNameCallback: ValidateNameCallback;\n\n /**\n * Callback to suggest a name when creating an object from another object.\n * Returns the suggested name or undefined if not applicable.\n */\n @Prop() readonly suggestNameCallback?: SuggestNameCallback;\n\n /**\n * Callback to suggest a description when creating an object from another object.\n * Returns the suggested description or undefined if not applicable.\n */\n @Prop() readonly suggestDescriptionCallback?: SuggestDescriptionCallback;\n\n /**\n * This event emits the 'cancel' event\n */\n @Event() cancel: EventEmitter<boolean>;\n\n /**\n * This event emm=its the data needed to create a new object\n */\n @Event() create: EventEmitter<NewObjectData>;\n\n /**\n * This event is triggered after a validation of the object name is made.\n * Returns 'undefined' if it's valid, otherwise an error message.\n */\n @Event() validateName: EventEmitter<string | undefined>;\n\n connectedCallback() {\n // this.#validateInitialName();\n }\n\n async componentWillLoad() {\n await this.#init();\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.typeCategoriesChanged(this.typeCategories);\n this.#initializeSelectedTypeMap();\n }\n\n componentDidLoad() {\n this.#setSelectedCategoryOnActionList();\n }\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#chShortcutsEl.suspend = true;\n } else {\n this.#chShortcutsEl.suspend = false;\n }\n }\n\n // - - - - - - - - - - -\n\n #cancelCallbackHandler = async (): Promise<void> => {\n await this.cancelCallback();\n };\n\n #categoryOnSelectionChangedHandler = (\n selectionEvent: CustomEvent<ActionListItemModelExtended[]>\n ): void => {\n const selection = selectionEvent.detail;\n if (selection.length > 0) {\n const selectedCategory = this.typeCategories.find(\n category => category.id === selection[0].item.id\n );\n if (selectedCategory) {\n this.selectedCategory = selectedCategory;\n if (selectedCategory.types.length > 0) {\n this.selectedType = selectedCategory.types.find(\n type => type.id === this.selectedTypeMap.get(selectedCategory.id)\n );\n }\n }\n }\n };\n\n #createCallbackHandler = async (): Promise<void> => {\n // validate name first\n const nameValidation: string | undefined = await this.validateNameCallback(\n this.#nameEl.value\n );\n if (!!nameValidation) {\n // name is invalid\n this.#validateNameHandler(nameValidation);\n return;\n }\n\n const data: NewObjectData = {\n typeId: this.selectedType?.id,\n name: this.#nameEl.value,\n description: !this.#descriptionModifiedByUser\n ? undefined\n : this.#descriptionEl.value,\n moduleId: this.#moduleFolderEl?.value?.id\n };\n const result = await this.createCallback(data);\n this.#validateNameHandler(result);\n };\n\n #descriptionValueHandler = () => {\n if (this.#nameModifiedByUser || this.#descriptionModifiedByUser) {\n return this.#descriptionEl.value;\n } else {\n // First try to get suggested description if callback exists\n if (this.suggestDescriptionCallback) {\n return this.description ?? this.selectedType.name;\n }\n return this.selectedType.name;\n }\n };\n\n /**\n * Gets the suggested name based on the context\n * @param selectedType The currently selected type\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #getNameSuggestion = async (selectedType: TypeData) => {\n if (this.suggestNameCallback) {\n const suggestedName = await this.suggestNameCallback();\n if (suggestedName) {\n return suggestedName.replace(/\\s/g, \"\");\n }\n }\n return selectedType.name.replace(/\\s/g, \"\");\n };\n\n /**\n * Gets the suggested description based on the context\n * @param selectedType The currently selected type\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #getDescriptionSuggestion = async (selectedType: TypeData) => {\n if (this.suggestDescriptionCallback) {\n const suggestedDescription = await this.suggestDescriptionCallback();\n if (suggestedDescription) {\n return suggestedDescription;\n }\n }\n return selectedType.name;\n };\n\n /**\n * Updates both name and description suggestions\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #updateSuggestions = async () => {\n if (!this.selectedType) {\n return;\n }\n\n if (!this.#nameModifiedByUser) {\n this.name = await this.#getNameSuggestion(this.selectedType);\n }\n\n if (!this.#descriptionModifiedByUser) {\n this.description = await this.#getDescriptionSuggestion(\n this.selectedType\n );\n }\n };\n\n /**\n * This method defines the initial selected category and type, and it then\n * initializes the name and description values.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #init = async () => {\n const defaultTypeFound = this.#setDefaultType(this.defaultTypeId);\n if (!defaultTypeFound) {\n this.selectedCategory = this.typeCategories[0];\n this.selectedType = this.selectedCategory.types[0];\n }\n\n await this.#updateSuggestions();\n };\n\n /**\n * Initializes the selectedTypeMap with the defaultTypeId if it exists, otherwise\n * it initializes the selectedTypeMap with the first type of each category.\n */\n // eslint-disable-next-line @stencil-community/own-methods-must-be-private\n #initializeSelectedTypeMap() {\n this.typeCategories.forEach(category => {\n if (this.defaultTypeId && category.id === this.selectedCategory.id) {\n this.selectedTypeMap.set(category.id, this.selectedType.id);\n } else {\n this.selectedTypeMap.set(category.id, category.types[0].id);\n }\n });\n }\n\n #onBlurNameHandler = async () => {\n const result: string | undefined = await this.validateNameCallback(\n this.#nameEl.value\n );\n this.#validateNameHandler(result);\n };\n\n #onInputDescriptionHandler = (e: CustomEvent<string>) => {\n this.description = e.detail;\n this.#descriptionModifiedByUser = true;\n };\n\n #onInputNameHandler = async (e: CustomEvent<any> | InputEvent) => {\n const name = e.detail;\n if (!this.#descriptionModifiedByUser) {\n // Description should be equal to name, unless the description was already\n // modified by the user.\n this.#descriptionEl.value = name;\n }\n this.#nameModifiedByUser = true;\n };\n\n #onNameValueChangedHandler = async (e: CustomEvent<string>) => {\n const name = e.detail;\n const result: string | undefined = await this.validateNameCallback(name);\n this.#validateNameHandler(result);\n };\n\n #renderModuleFolder = () => {\n if (this.selectedType.hasModule || this.selectedType.hasFolder) {\n let labelDescription = this.#componentLocale.moduleFolder;\n if (!this.selectedType.hasFolder) {\n labelDescription = this.#componentLocale.moduleOnly;\n } else if (!this.selectedType.hasModule) {\n labelDescription = this.#componentLocale.folderOnly;\n }\n return [\n <label\n // Module/folder\n class=\"label api-module-label\"\n htmlFor=\"module\"\n >\n {labelDescription}\n </label>,\n <gx-ide-entity-selector\n id=\"module\"\n class=\"api-module-control\"\n part=\"module\"\n labelPosition=\"none\"\n value={this.parent}\n defaultValue={this.defaultParent}\n selectEntityCallback={this.selectModuleCallback}\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.#moduleFolderEl = el as HTMLGxIdeEntitySelectorElement)\n }\n ></gx-ide-entity-selector>\n ];\n }\n return null;\n };\n\n #setDefaultType = (typeId: string | undefined): boolean => {\n if (!typeId) {\n return false;\n }\n let found = false;\n outerLoop: for (let i = 0; i < this.typeCategories.length; i++) {\n for (let j = 0; j < this.typeCategories[i].types.length; j++) {\n const loopTypeId = this.typeCategories[i].types[j].id;\n if (loopTypeId === typeId) {\n this.selectedCategory = this.typeCategories[i];\n this.selectedType = this.typeCategories[i].types[j];\n found = true;\n break outerLoop;\n }\n }\n }\n return found;\n };\n\n #setSelectedCategoryOnActionList = () => {\n if (this.selectedCategory) {\n // update model by setting the selected category\n this.#categoriesActionListEl.updateItemProperties(\n this.selectedCategory.id,\n {\n selected: true,\n type: \"actionable\"\n }\n );\n }\n };\n\n #typeChangedHandler = async (\n selectionEvent: CustomEvent<ActionListItemModelExtended[]>\n ) => {\n const selection = selectionEvent.detail;\n if (selection.length > 0) {\n this.selectedType = this.selectedCategory.types.find(\n type => type.id === selection[0].item.id\n );\n this.selectedTypeMap.set(this.selectedCategory.id, this.selectedType.id);\n\n await this.#updateSuggestions();\n }\n };\n\n /**\n * If the parameter is undefined, it means the name is valid. Otherwise, if it\n * receives a string, it indicates that the name is not valid. The string is the\n * error message to display.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #validateNameHandler = (result: string | undefined): void => {\n this.nameValidationErrorMessage = result;\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n\n <section class=\"main\">\n <section class=\"field-group categories-types-layout spacing-body-inline spacing-body-block-start\">\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.#componentLocale.categorySelectionTitle}\n </label>\n <ch-action-list-render\n // #select a category\n // TODO: The \"scrollable\" class is a WA since the action-list currently does not support scrollbar customization\n class=\"list-box\"\n selection=\"single\"\n model={this.typeCategoriesActionListModel}\n sortItemsCallback={sortActionListDefault}\n onSelectedItemsChange={this.#categoryOnSelectionChangedHandler}\n ref={(el: HTMLChActionListRenderElement) =>\n (this.#categoriesActionListEl =\n el as HTMLChActionListRenderElement)\n }\n ></ch-action-list-render>\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.selectedCategory.name\n ? `${this.selectedCategory.name} ${\n this.#componentLocale.typeSelectionTitleSuffix\n }`\n : this.#componentLocale.typeSelectionTitle}\n </label>\n <ch-action-list-render\n // #data management types\n // TODO: The \"scrollable\" class is a WA since the action-list currently does not support scrollbar customization\n class=\"list-box\"\n selection=\"single\"\n sortItemsCallback={sortActionListDefault}\n model={mapTypeDataToActionListModel(\n this.selectedCategory.types,\n this.selectedCategory.id,\n this.selectedType.id\n )}\n onSelectedItemsChange={this.#typeChangedHandler}\n ></ch-action-list-render>\n </div>\n </section>\n\n <section class=\"api-description-layout field-group spacing-body-inline\">\n <h2\n // API Description\n class=\"text-align-center api-description-title subtitle-regular-xs\t\"\n >\n {this.selectedType?.description}\n </h2>\n\n <label\n // Name\n class=\"label api-name-label\"\n htmlFor=\"name\"\n >\n {this.#componentLocale.objectName}\n </label>\n <div>\n <ch-edit\n autoFocus\n class={{\n \"input\": true,\n \"api-name-control\": true,\n \"input-error\": !!this.nameValidationErrorMessage\n }}\n placeholder=\"Name\"\n value={this.name}\n ref={(el: HTMLChEditElement) =>\n (this.#nameEl = el as HTMLChEditElement)\n }\n onChange={this.#onNameValueChangedHandler}\n onInput={this.#onInputNameHandler as any}\n onBlur={this.#onBlurNameHandler}\n part=\"name\"\n ></ch-edit>\n {this.nameValidationErrorMessage && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={this.#nameEl as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.nameValidationErrorMessage}\n </ch-tooltip>\n )}\n </div>\n\n <label\n // Description\n class=\"label api-description-label\"\n htmlFor=\"description\"\n >\n {this.#componentLocale.objectDescription}\n </label>\n <ch-edit\n autoFocus\n class=\"input api-description-control\"\n placeholder=\"Description\"\n value={this.#descriptionValueHandler()}\n // TODO: toolTip={config.tooltip}\n ref={(el: HTMLChEditElement) =>\n (this.#descriptionEl = el as HTMLChEditElement)\n }\n onInput={this.#onInputDescriptionHandler as any}\n part=\"description\"\n ></ch-edit>\n\n {this.#renderModuleFolder()}\n </section>\n <footer class=\"footer control-footer-with-border spacing-body-inline spacing-body-block-end \">\n <div class=\"buttons-spacer\">\n <button\n // cancel\n class=\"button-secondary\"\n onClick={this.#cancelCallbackHandler}\n part=\"button button-cancel\"\n >\n {this.#componentLocale.footer.btnCancel}\n </button>\n\n <button\n // create\n class=\"button-primary\"\n onClick={this.#createCallbackHandler}\n disabled={!!this.nameValidationErrorMessage}\n part=\"button button-create\"\n >\n {this.#componentLocale.footer.btnCreate}\n </button>\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n\nexport interface NewObjectData {\n typeId: string;\n name: string;\n description: string | undefined;\n moduleId: string;\n}\n\nexport type ValidateNameCallback = (\n name: string\n) => Promise<string | undefined>;\n\nexport type SelectModuleCallback = () => Promise<EntityData | undefined>;\n\nexport type CreateCallback = (\n data: NewObjectData\n) => Promise<string | undefined>;\n\nexport type CancelCallback = () => Promise<void>;\n\nexport type TypeCategoryData = {\n id: string;\n name: string;\n icon: string;\n types: TypeData[];\n};\n\nexport type TypeData = {\n id: string;\n name: string;\n icon: string;\n hasModule: boolean;\n hasFolder: boolean;\n description: string;\n};\n\nexport type SuggestNameCallback = () => Promise<string | undefined>;\nexport type SuggestDescriptionCallback = () => Promise<string | undefined>;\n"],"version":3}
|
|
1
|
+
{"file":"gx-ide-new-object.entry.js","mappings":"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","names":[],"sources":["src/components/new-object/helpers.tsx","src/common/chameleon-helpers.ts","src/components/new-object/new-object.scss?tag=gx-ide-new-object&encapsulation=shadow","src/components/new-object/new-object.tsx"],"sourcesContent":["import { ActionListModel } from \"@genexus/chameleon-controls-library\";\nimport { TypeCategoryData } from \"../..\";\nimport { TypeData } from \"./new-object\";\n\nexport type ChCheckboxArray = HTMLChCheckboxElement[] | null;\n\nexport const mapTypeCategoryDataToActionListModel = (\n categories: TypeCategoryData[]\n): ActionListModel => {\n return categories.map(category => {\n return {\n id: category.id,\n type: \"actionable\",\n additionalInformation: {\n \"stretch-start\": {\n center: [{ imgSrc: category.icon || undefined }]\n }\n },\n caption: category.name,\n part: `category-${category.id}`\n };\n });\n};\n\nexport const mapTypeDataToActionListModel = (\n types: TypeData[],\n selectedCategoryId: string,\n selectedTypeId?: string\n): ActionListModel => {\n return types.map(type => {\n return {\n id: `${type.id}`,\n type: \"actionable\",\n imageSrc: \"objects/design\",\n selected: selectedTypeId === type.id,\n additionalInformation: {\n \"stretch-start\": {\n center: [{ imgSrc: type.icon }]\n }\n },\n caption: type.name,\n part: `type-${selectedCategoryId}-${type.id}`\n };\n });\n};\n","import { ActionListModel } from \"@genexus/chameleon-controls-library/dist/types/components/action-list/types\";\n\n/**\n * Order the items in the same order as they come.\n */\nexport const sortActionListDefault = (subModel: ActionListModel) => {\n return subModel;\n};\n",":host {\n display: grid;\n block-size: 100%;\n}\n\n.main {\n display: grid;\n grid-template-rows: 1fr max-content max-content;\n}\n.categories-types-layout {\n grid-template-columns: 1fr 1fr;\n}\n.api-description-layout {\n padding-block: calc(\n var(--content-block-spacing) * 2\n ); // WA until we define a class for internal spacing.\n display: grid;\n grid-template:\n \"api-description-title api-description-title\"\n \"api-name-label api-name-control\"\n \"api-description-label api-description-control\"\n \"api-module-label api-module-control\";\n grid-template-columns: max-content 1fr;\n}\n.api-description-title {\n grid-area: api-description-title;\n}\n.api-name-label {\n grid-area: api-name-label;\n}\n.api-name-control {\n grid-area: api-name-control;\n}\n.api-description-label {\n grid-area: api-description-label;\n}\n.api-description-control {\n grid-area: api-description-control;\n}\n.api-module-label {\n grid-area: api-module-label;\n}\n.api-module-control {\n grid-area: api-module-control;\n}\n","/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Event,\n EventEmitter,\n Element,\n State,\n Watch,\n getAssetPath,\n Method\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { config } from \"../../common/config\";\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../common/locale\";\nimport { EntityData } from \"../../common/types\";\nimport {\n ActionListItemModelExtended,\n ActionListModel\n} from \"@genexus/chameleon-controls-library\";\nimport {\n mapTypeCategoryDataToActionListModel,\n mapTypeDataToActionListModel\n} from \"./helpers\";\n\nimport { sortActionListDefault } from \"../../common/chameleon-helpers\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/edit\",\n \"components/icon\",\n \"components/tooltip\",\n \"components/list-box\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/spacing\",\n \"utils/typography\"\n];\n\n@Component({\n tag: \"gx-ide-new-object\",\n styleUrl: \"new-object.scss\",\n shadow: { delegatesFocus: true },\n assetsDirs: [\"gx-ide-assets/new-object\"]\n})\nexport class GxIdeNewObject {\n /**\n * The component hard-coded strings translations.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #componentLocale: any;\n #shortcutsSrc = getAssetPath(`./gx-ide-assets/new-object/shortcuts.json`);\n\n @Element() el: HTMLGxIdeNewObjectElement;\n\n /* References needed to collect data on \"Create\" button submit */\n #categoriesActionListEl: HTMLChActionListRenderElement;\n #chShortcutsEl: HTMLChShortcutsElement;\n #descriptionEl!: HTMLChEditElement;\n #descriptionModifiedByUser = false;\n #moduleFolderEl!: HTMLGxIdeEntitySelectorElement;\n #nameEl!: HTMLChEditElement;\n #nameModifiedByUser = false;\n\n /**\n * Description of the new object\n */\n @State() description: string = undefined;\n\n /**\n * Name of the new object\n */\n @State() name: string = undefined;\n @State() nameValidationErrorMessage: string;\n @State() selectedCategory: TypeCategoryData | null;\n @State() selectedType: TypeData | null;\n // representations of TypeCategoryData[] as ComboBoxModel.\n @State() typeCategoriesActionListModel: ActionListModel = [];\n @State() typesActionListModel: ActionListModel = [];\n\n @State() selectedTypeMap: Map<string, string> = new Map();\n\n /**\n * Allows you to define the type selected by default when instantiating the dialog.\n * Represented by the type identifier.\n */\n @Prop() readonly defaultTypeId: string;\n\n /**\n * Default value for the Module/Folder field.\n */\n @Prop() readonly defaultParent: EntityData;\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * Callback invoked when user wants to cancel object creation\n */\n @Prop() readonly cancelCallback: CancelCallback;\n\n /**\n * Callback invoked when user wants to confirm object creation\n */\n @Prop() readonly createCallback: CreateCallback;\n\n /**\n * Applies a shadow all around\n */\n @Prop() readonly shadow = false;\n\n /**\n * Array containing category list and its corresponding types\n */\n @Prop({ mutable: true }) typeCategories!: TypeCategoryData[];\n @Watch(\"typeCategories\")\n typeCategoriesChanged(newValue: TypeCategoryData[]) {\n if (newValue?.length) {\n this.typeCategoriesActionListModel = mapTypeCategoryDataToActionListModel(\n this.typeCategories\n );\n }\n }\n\n /**\n * Current value for Module/Folder\n */\n @Prop() readonly parent: EntityData;\n\n /**\n * Callback invoked when the action is executed on the Module/Folder filter\n * (button '...'). It returns the information of the selected object (id and\n * name) or 'undefined' if it was canceled.\n */\n @Prop() readonly selectModuleCallback: SelectModuleCallback;\n\n /**\n * Callback invoked when you must validate a name. Returns an error message or\n * 'undefined' if the name is not valid.\n */\n @Prop() readonly validateNameCallback: ValidateNameCallback;\n\n /**\n * Callback to suggest a name when creating an object from another object.\n * Returns the suggested name or undefined if not applicable.\n */\n @Prop() readonly suggestNameCallback?: SuggestNameCallback;\n\n /**\n * Callback to suggest a description when creating an object from another object.\n * Returns the suggested description or undefined if not applicable.\n */\n @Prop() readonly suggestDescriptionCallback?: SuggestDescriptionCallback;\n\n /**\n * This event emits the 'cancel' event\n */\n @Event() cancel: EventEmitter<boolean>;\n\n /**\n * This event emm=its the data needed to create a new object\n */\n @Event() create: EventEmitter<NewObjectData>;\n\n /**\n * This event is triggered after a validation of the object name is made.\n * Returns 'undefined' if it's valid, otherwise an error message.\n */\n @Event() validateName: EventEmitter<string | undefined>;\n\n connectedCallback() {\n // this.#validateInitialName();\n }\n\n async componentWillLoad() {\n await this.#init();\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.typeCategoriesChanged(this.typeCategories);\n this.#initializeSelectedTypeMap();\n }\n\n componentDidLoad() {\n this.#setSelectedCategoryOnActionList();\n }\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#chShortcutsEl.suspend = true;\n } else {\n this.#chShortcutsEl.suspend = false;\n }\n }\n\n // - - - - - - - - - - -\n\n #cancelCallbackHandler = async (): Promise<void> => {\n await this.cancelCallback();\n };\n\n #categoryOnSelectionChangedHandler = (\n selectionEvent: CustomEvent<ActionListItemModelExtended[]>\n ): void => {\n const selection = selectionEvent.detail;\n if (selection.length > 0) {\n const selectedCategory = this.typeCategories.find(\n category => category.id === selection[0].item.id\n );\n if (selectedCategory) {\n this.selectedCategory = selectedCategory;\n if (selectedCategory.types.length > 0) {\n this.selectedType = selectedCategory.types.find(\n type => type.id === this.selectedTypeMap.get(selectedCategory.id)\n );\n }\n }\n }\n };\n\n #createCallbackHandler = async (): Promise<void> => {\n // validate name first\n const nameValidation: string | undefined = await this.validateNameCallback(\n this.#nameEl.value\n );\n if (!!nameValidation) {\n // name is invalid\n this.#validateNameHandler(nameValidation);\n return;\n }\n\n const data: NewObjectData = {\n typeId: this.selectedType?.id,\n name: this.#nameEl.value,\n description: !this.#descriptionModifiedByUser\n ? undefined\n : this.#descriptionEl.value,\n moduleId: this.#moduleFolderEl?.value?.id\n };\n const result = await this.createCallback(data);\n this.#validateNameHandler(result);\n };\n\n #descriptionValueHandler = () => {\n if (this.#nameModifiedByUser || this.#descriptionModifiedByUser) {\n return this.#descriptionEl.value;\n } else {\n // First try to get suggested description if callback exists\n if (this.suggestDescriptionCallback) {\n return this.description ?? this.selectedType.name;\n }\n return this.selectedType.name;\n }\n };\n\n /**\n * Gets the suggested name based on the context\n * @param selectedType The currently selected type\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #getNameSuggestion = async (selectedType: TypeData) => {\n if (this.suggestNameCallback) {\n const suggestedName = await this.suggestNameCallback();\n if (suggestedName) {\n return suggestedName.replace(/\\s/g, \"\");\n }\n }\n return selectedType.name.replace(/\\s/g, \"\");\n };\n\n /**\n * Gets the suggested description based on the context\n * @param selectedType The currently selected type\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #getDescriptionSuggestion = async (selectedType: TypeData) => {\n if (this.suggestDescriptionCallback) {\n const suggestedDescription = await this.suggestDescriptionCallback();\n if (suggestedDescription) {\n return suggestedDescription;\n }\n }\n return selectedType.name;\n };\n\n /**\n * Updates both name and description suggestions\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #updateSuggestions = async () => {\n if (!this.selectedType) {\n return;\n }\n\n if (!this.#nameModifiedByUser) {\n this.name = await this.#getNameSuggestion(this.selectedType);\n }\n\n if (!this.#descriptionModifiedByUser) {\n this.description = await this.#getDescriptionSuggestion(\n this.selectedType\n );\n }\n };\n\n /**\n * This method defines the initial selected category and type, and it then\n * initializes the name and description values.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #init = async () => {\n const defaultTypeFound = this.#setDefaultType(this.defaultTypeId);\n if (!defaultTypeFound) {\n this.selectedCategory = this.typeCategories[0];\n this.selectedType = this.selectedCategory.types[0];\n }\n\n await this.#updateSuggestions();\n };\n\n /**\n * Initializes the selectedTypeMap with the defaultTypeId if it exists, otherwise\n * it initializes the selectedTypeMap with the first type of each category.\n */\n // eslint-disable-next-line @stencil-community/own-methods-must-be-private\n #initializeSelectedTypeMap() {\n this.typeCategories.forEach(category => {\n if (this.defaultTypeId && category.id === this.selectedCategory.id) {\n this.selectedTypeMap.set(category.id, this.selectedType.id);\n } else {\n this.selectedTypeMap.set(category.id, category.types[0].id);\n }\n });\n }\n\n #onBlurNameHandler = async () => {\n if (this.#nameEl.value) {\n const result: string | undefined = await this.validateNameCallback(\n this.#nameEl.value\n );\n this.#validateNameHandler(result);\n }\n };\n\n #onInputDescriptionHandler = (e: CustomEvent<string>) => {\n this.description = e.detail;\n this.#descriptionModifiedByUser = true;\n };\n\n #onInputNameHandler = async (e: CustomEvent<any> | InputEvent) => {\n const name = e.detail;\n if (!this.#descriptionModifiedByUser) {\n // Description should be equal to name, unless the description was already\n // modified by the user.\n this.#descriptionEl.value = name;\n }\n this.#nameModifiedByUser = true;\n };\n\n #onNameValueChangedHandler = async (e: CustomEvent<string>) => {\n const name = e.detail;\n if (name) {\n const result: string | undefined = await this.validateNameCallback(name);\n this.#validateNameHandler(result);\n }\n };\n\n #renderModuleFolder = () => {\n if (this.selectedType.hasModule || this.selectedType.hasFolder) {\n let labelDescription = this.#componentLocale.moduleFolder;\n if (!this.selectedType.hasFolder) {\n labelDescription = this.#componentLocale.moduleOnly;\n } else if (!this.selectedType.hasModule) {\n labelDescription = this.#componentLocale.folderOnly;\n }\n return [\n <label\n // Module/folder\n class=\"label api-module-label\"\n htmlFor=\"module\"\n >\n {labelDescription}\n </label>,\n <gx-ide-entity-selector\n id=\"module\"\n class=\"api-module-control\"\n part=\"module\"\n labelPosition=\"none\"\n value={this.parent}\n defaultValue={this.defaultParent}\n selectEntityCallback={this.selectModuleCallback}\n ref={(el: HTMLGxIdeEntitySelectorElement) =>\n (this.#moduleFolderEl = el as HTMLGxIdeEntitySelectorElement)\n }\n ></gx-ide-entity-selector>\n ];\n }\n return null;\n };\n\n #setDefaultType = (typeId: string | undefined): boolean => {\n if (!typeId) {\n return false;\n }\n let found = false;\n outerLoop: for (let i = 0; i < this.typeCategories.length; i++) {\n for (let j = 0; j < this.typeCategories[i].types.length; j++) {\n const loopTypeId = this.typeCategories[i].types[j].id;\n if (loopTypeId === typeId) {\n this.selectedCategory = this.typeCategories[i];\n this.selectedType = this.typeCategories[i].types[j];\n found = true;\n break outerLoop;\n }\n }\n }\n return found;\n };\n\n #setSelectedCategoryOnActionList = () => {\n if (this.selectedCategory) {\n // update model by setting the selected category\n this.#categoriesActionListEl.updateItemProperties(\n this.selectedCategory.id,\n {\n selected: true,\n type: \"actionable\"\n }\n );\n }\n };\n\n #typeChangedHandler = async (\n selectionEvent: CustomEvent<ActionListItemModelExtended[]>\n ) => {\n const selection = selectionEvent.detail;\n if (selection.length > 0) {\n this.selectedType = this.selectedCategory.types.find(\n type => type.id === selection[0].item.id\n );\n this.selectedTypeMap.set(this.selectedCategory.id, this.selectedType.id);\n\n await this.#updateSuggestions();\n }\n };\n\n /**\n * If the parameter is undefined, it means the name is valid. Otherwise, if it\n * receives a string, it indicates that the name is not valid. The string is the\n * error message to display.\n */\n // eslint-disable-next-line @stencil-community/own-props-must-be-private\n #validateNameHandler = (result: string | undefined): void => {\n this.nameValidationErrorMessage = result;\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n\n <section class=\"main\">\n <section class=\"field-group categories-types-layout spacing-body-inline spacing-body-block-start\">\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.#componentLocale.categorySelectionTitle}\n </label>\n <ch-action-list-render\n // #select a category\n // TODO: The \"scrollable\" class is a WA since the action-list currently does not support scrollbar customization\n class=\"list-box\"\n selection=\"single\"\n model={this.typeCategoriesActionListModel}\n sortItemsCallback={sortActionListDefault}\n onSelectedItemsChange={this.#categoryOnSelectionChangedHandler}\n ref={(el: HTMLChActionListRenderElement) =>\n (this.#categoriesActionListEl =\n el as HTMLChActionListRenderElement)\n }\n ></ch-action-list-render>\n </div>\n\n <div class=\"field field-block\">\n <label class=\"label\">\n {this.selectedCategory.name\n ? `${this.selectedCategory.name} ${\n this.#componentLocale.typeSelectionTitleSuffix\n }`\n : this.#componentLocale.typeSelectionTitle}\n </label>\n <ch-action-list-render\n // #data management types\n // TODO: The \"scrollable\" class is a WA since the action-list currently does not support scrollbar customization\n class=\"list-box\"\n selection=\"single\"\n sortItemsCallback={sortActionListDefault}\n model={mapTypeDataToActionListModel(\n this.selectedCategory.types,\n this.selectedCategory.id,\n this.selectedType.id\n )}\n onSelectedItemsChange={this.#typeChangedHandler}\n ></ch-action-list-render>\n </div>\n </section>\n\n <section class=\"api-description-layout field-group spacing-body-inline\">\n <h2\n // API Description\n class=\"text-align-center api-description-title subtitle-regular-xs\t\"\n >\n {this.selectedType?.description}\n </h2>\n\n <label\n // Name\n class=\"label api-name-label\"\n htmlFor=\"name\"\n >\n {this.#componentLocale.objectName}\n </label>\n <div>\n <ch-edit\n autoFocus\n class={{\n \"input\": true,\n \"api-name-control\": true,\n \"input-error\": !!this.nameValidationErrorMessage\n }}\n placeholder=\"Name\"\n value={this.name}\n ref={(el: HTMLChEditElement) =>\n (this.#nameEl = el as HTMLChEditElement)\n }\n onChange={this.#onNameValueChangedHandler}\n onInput={this.#onInputNameHandler as any}\n onBlur={this.#onBlurNameHandler}\n part=\"name\"\n ></ch-edit>\n {this.nameValidationErrorMessage && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={this.#nameEl as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.nameValidationErrorMessage}\n </ch-tooltip>\n )}\n </div>\n\n <label\n // Description\n class=\"label api-description-label\"\n htmlFor=\"description\"\n >\n {this.#componentLocale.objectDescription}\n </label>\n <ch-edit\n autoFocus\n class=\"input api-description-control\"\n placeholder=\"Description\"\n value={this.#descriptionValueHandler()}\n // TODO: toolTip={config.tooltip}\n ref={(el: HTMLChEditElement) =>\n (this.#descriptionEl = el as HTMLChEditElement)\n }\n onInput={this.#onInputDescriptionHandler as any}\n part=\"description\"\n ></ch-edit>\n\n {this.#renderModuleFolder()}\n </section>\n <footer class=\"footer control-footer-with-border spacing-body-inline spacing-body-block-end \">\n <div class=\"buttons-spacer\">\n <button\n // cancel\n class=\"button-secondary\"\n onClick={this.#cancelCallbackHandler}\n part=\"button button-cancel\"\n >\n {this.#componentLocale.footer.btnCancel}\n </button>\n\n <button\n // create\n class=\"button-primary\"\n onClick={this.#createCallbackHandler}\n disabled={!!this.nameValidationErrorMessage}\n part=\"button button-create\"\n >\n {this.#componentLocale.footer.btnCreate}\n </button>\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n\nexport interface NewObjectData {\n typeId: string;\n name: string;\n description: string | undefined;\n moduleId: string;\n}\n\nexport type ValidateNameCallback = (\n name: string\n) => Promise<string | undefined>;\n\nexport type SelectModuleCallback = () => Promise<EntityData | undefined>;\n\nexport type CreateCallback = (\n data: NewObjectData\n) => Promise<string | undefined>;\n\nexport type CancelCallback = () => Promise<void>;\n\nexport type TypeCategoryData = {\n id: string;\n name: string;\n icon: string;\n types: TypeData[];\n};\n\nexport type TypeData = {\n id: string;\n name: string;\n icon: string;\n hasModule: boolean;\n hasFolder: boolean;\n description: string;\n};\n\nexport type SuggestNameCallback = () => Promise<string | undefined>;\nexport type SuggestDescriptionCallback = () => Promise<string | undefined>;\n"],"version":3}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { r as registerInstance,
|
|
1
|
+
import { r as registerInstance, g as getAssetPath, h, H as Host, a as getElement } from './index-10af18cf.js';
|
|
2
2
|
import { g as getIconPath } from './assets-manager-0d129105.js';
|
|
3
3
|
import './MERCURY_ASSETS-2455138c.js';
|
|
4
4
|
import { L as Locale } from './locale-e5107fad.js';
|
|
5
5
|
import { c as config } from './config-1ef9d75a.js';
|
|
6
|
-
import { f as formatDate } from './helpers-
|
|
6
|
+
import { f as formatDate } from './helpers-10479d69.js';
|
|
7
7
|
import { F as FILTER_AFTER } from './constants-f9193da7.js';
|
|
8
8
|
|
|
9
9
|
// - - - - - - - - - - - -
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as registerInstance,
|
|
1
|
+
import { r as registerInstance, g as getAssetPath, h, H as Host, a as getElement } from './index-10af18cf.js';
|
|
2
2
|
import { g as getIconPath } from './assets-manager-0d129105.js';
|
|
3
3
|
import './MERCURY_ASSETS-2455138c.js';
|
|
4
4
|
import { L as Locale } from './locale-e5107fad.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { r as registerInstance, h, H as Host } from './index-
|
|
2
|
-
import { m as mercuryChatMessageRender } from './code-render-
|
|
1
|
+
import { r as registerInstance, h, H as Host } from './index-10af18cf.js';
|
|
2
|
+
import { m as mercuryChatMessageRender } from './code-render-f3d41da4.js';
|
|
3
3
|
import './MERCURY_ASSETS-2455138c.js';
|
|
4
4
|
|
|
5
5
|
const PROCESSING_PLACEHOLDER = "{{ASSISTANT_NAME}}";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as registerInstance,
|
|
1
|
+
import { r as registerInstance, g as getAssetPath, h, H as Host, a as getElement } from './index-10af18cf.js';
|
|
2
2
|
import { g as getIconPath } from './assets-manager-0d129105.js';
|
|
3
3
|
import './MERCURY_ASSETS-2455138c.js';
|
|
4
4
|
import { L as Locale } from './locale-e5107fad.js';
|
|
@@ -21,7 +21,8 @@ const convertItemsNodeListToFlattenedTreeViewModel = (itemsList, checkboxType) =
|
|
|
21
21
|
checked: item.checked,
|
|
22
22
|
checkbox: checkbox,
|
|
23
23
|
expanded: item.expanded,
|
|
24
|
-
startImgSrc: item.
|
|
24
|
+
startImgSrc: item.iconStart,
|
|
25
|
+
endImgSrc: item.iconEnd,
|
|
25
26
|
items: null,
|
|
26
27
|
leaf: leaf,
|
|
27
28
|
selected: item.selected
|
|
@@ -39,7 +40,8 @@ const convertItemsListToTreeViewModel = (itemsList, checkboxType) => {
|
|
|
39
40
|
var _a;
|
|
40
41
|
const leaf = !((_a = item.nodes) === null || _a === void 0 ? void 0 : _a.length);
|
|
41
42
|
const expanded = item.expanded;
|
|
42
|
-
const
|
|
43
|
+
const iconStart = item.iconStart;
|
|
44
|
+
const iconEnd = item.iconEnd;
|
|
43
45
|
const order = parseInt(item.id);
|
|
44
46
|
const checkbox = checkboxType === "all" ||
|
|
45
47
|
(checkboxType === "custom" && item.checkbox) ||
|
|
@@ -56,7 +58,8 @@ const convertItemsListToTreeViewModel = (itemsList, checkboxType) => {
|
|
|
56
58
|
order: order,
|
|
57
59
|
selected: item.selected,
|
|
58
60
|
expanded: expanded,
|
|
59
|
-
startImgSrc:
|
|
61
|
+
startImgSrc: iconStart,
|
|
62
|
+
endImgSrc: iconEnd,
|
|
60
63
|
items: !leaf
|
|
61
64
|
? convertItemsListToTreeViewModel(item.nodes, checkboxType)
|
|
62
65
|
: null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"gx-ide-select-kb-items.entry.js","mappings":"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","names":[],"sources":["src/components/select-kb-items/helpers.tsx","src/components/select-kb-items/select-kb-items.scss?tag=gx-ide-select-kb-items&encapsulation=shadow","src/components/select-kb-items/select-kb-items.tsx"],"sourcesContent":["import { ItemNode, CheckboxType } from \"./select-kb-items\";\nimport { TreeViewItemModel } from \"@genexus/chameleon-controls-library\";\n\nexport const convertItemsNodeListToFlattenedTreeViewModel = (\n itemsList: ItemNode[],\n checkboxType: CheckboxType\n): TreeViewItemModel[] => {\n const itemsListFlattenedTreeViewModel: TreeViewItemModel[] = [];\n\n const processNode = (item: ItemNode) => {\n const leaf = !item.nodes?.length;\n const checkbox =\n checkboxType === \"all\" ||\n (checkboxType === \"custom\" && item.checkbox) ||\n (checkboxType === \"leaf\" && leaf);\n const metaData = JSON.stringify({\n versionType: item.type\n });\n itemsListFlattenedTreeViewModel.push({\n id: item.id.toString(),\n metadata: metaData,\n caption: item.name,\n checked: item.checked,\n checkbox: checkbox,\n expanded: item.expanded,\n startImgSrc: item.icon,\n items: null,\n leaf: leaf,\n selected: item.selected\n });\n\n if (item.nodes) {\n item.nodes.forEach(childNode => processNode(childNode));\n }\n };\n\n itemsList.forEach(item => processNode(item));\n return itemsListFlattenedTreeViewModel;\n};\n\nexport const convertItemsListToTreeViewModel = (\n itemsList: ItemNode[],\n checkboxType: CheckboxType\n): TreeViewItemModel[] => {\n const itemsListTreeViewModel: TreeViewItemModel[] = [];\n itemsList.forEach(item => {\n const leaf = !item.nodes?.length;\n const expanded = item.expanded;\n const icon = item.icon;\n const order = parseInt(item.id);\n const checkbox =\n checkboxType === \"all\" ||\n (checkboxType === \"custom\" && item.checkbox) ||\n (checkboxType === \"leaf\" && leaf);\n const metaData = JSON.stringify({\n versionType: item.type\n });\n itemsListTreeViewModel.push({\n id: item.id.toString(),\n metadata: metaData,\n caption: item.name,\n checkbox: checkbox,\n checked: item.checked,\n order: order,\n selected: item.selected,\n expanded: expanded,\n startImgSrc: icon,\n items: !leaf\n ? convertItemsListToTreeViewModel(item.nodes, checkboxType)\n : null,\n leaf: leaf\n });\n });\n\n return itemsListTreeViewModel;\n};\n\nconst findItemNode = (id: string, item: ItemNode): ItemNode | null => {\n if (item.id === id) {\n return item;\n }\n\n if (item.nodes) {\n for (const itemNode of item.nodes) {\n const result = findItemNode(id, itemNode);\n if (result) {\n return result;\n }\n }\n }\n return null;\n};\n\nfunction findItemInArray(itemsNodes: ItemNode[], id: string): ItemNode | null {\n for (const item of itemsNodes) {\n const result = findItemNode(id, item);\n if (result) {\n return result;\n }\n }\n return null;\n}\nconst setAllLeafsCheckedFalse = (itemsList: ItemNode[]): ItemNode[] => {\n const uncheck = (itemNode: ItemNode) => {\n itemNode.checked = false;\n if (itemNode.nodes?.length) {\n itemNode.nodes.forEach(childNode => uncheck(childNode));\n }\n };\n\n itemsList.forEach(item => uncheck(item));\n return itemsList;\n};\n\nexport const unselectAllNodes = (itemsList: ItemNode[]) => {\n const unselect = (itemNode: ItemNode) => {\n itemNode.selected = false;\n if (itemNode.nodes?.length) {\n itemNode.nodes.forEach(childNode => unselect(childNode));\n }\n };\n\n itemsList.forEach(item => unselect(item));\n};\n\nexport const checkItems = (\n itemsList: ItemNode[],\n idsChecked: string[]\n): ItemNode[] => {\n setAllLeafsCheckedFalse(itemsList);\n idsChecked.forEach(id => {\n const itemFind = findItemInArray(itemsList, id);\n if (itemFind) {\n itemFind.checked = true;\n }\n });\n\n return itemsList;\n};\n\nexport const expandItems = (\n itemsList: ItemNode[],\n idsChecked: string[]\n): ItemNode[] => {\n idsChecked.forEach(id => {\n const itemFind = findItemInArray(itemsList, id);\n if (itemFind) {\n itemFind.expanded = true;\n }\n });\n\n return itemsList;\n};\n\nexport const selectItems = (\n itemsList: ItemNode[],\n idsSelected: string[]\n): ItemNode[] => {\n idsSelected.forEach(id => {\n const itemFind = findItemInArray(itemsList, id);\n if (itemFind) {\n itemFind.selected = true;\n }\n });\n return itemsList;\n};\n\nfunction searchInNode(item: ItemNode, id: string): string[] | null {\n // If the current node is the searched node, we return an empty list (it has no parents in this branch)\n if (item.id === id) {\n return [];\n }\n\n // We traverse each child looking for the target node\n if (item.nodes?.length) {\n for (const node of item.nodes) {\n const parents = searchInNode(node, id);\n if (parents !== null) {\n // If we find it, we include the current node at the beginning of the path and return\n return [item.id, ...parents];\n }\n }\n }\n return null;\n}\n\nexport const searchParentsItems = (\n items: ItemNode[],\n ids: string[]\n): string[] | null => {\n const parents: string[] = [];\n for (const id of ids) {\n for (const rootItem of items) {\n const results = searchInNode(rootItem, id);\n if (results !== null) {\n results.forEach(result => {\n parents.push(result);\n });\n }\n }\n }\n return parents;\n};\n",":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.section {\n display: contents;\n}\n\n// header\n.view-mode__toggle-checkboxes {\n grid-template-columns: max-content max-content;\n}\n.field__items-view-type {\n align-items: center;\n .label {\n margin-block-start: 0 !important; // WA to center label with radio-group\n }\n}\n.field__toggle-checkboxes {\n .label {\n margin-block-start: 0 !important; // WA to center label with radio-group\n }\n}\n\n.trees {\n position: relative;\n}\n","import {\n Component,\n Element,\n getAssetPath,\n Host,\n h,\n Prop,\n State,\n Watch,\n Method\n} from \"@stencil/core\";\n\nimport {\n ChCheckboxCustomEvent,\n TreeViewItemModel,\n TreeViewItemModelExtended\n} from \"@genexus/chameleon-controls-library\";\n\nimport {\n checkItems,\n convertItemsListToTreeViewModel,\n convertItemsNodeListToFlattenedTreeViewModel,\n expandItems,\n searchParentsItems,\n selectItems,\n unselectAllNodes\n} from \"./helpers\";\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\nimport { Locale } from \"../../common/locale\";\nimport { ContextMenuInfo } from \"../../common/types\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"chameleon/scrollbar\",\n \"components/tooltip\",\n \"components/tree-view\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/spacing\",\n \"utils/typography\"\n];\n\nconst SYSTEM_SEARCH_ICON = getIconPath({\n category: \"system\",\n name: \"search\",\n colorType: \"on-surface\"\n});\n\nconst VIEW_AS_TREE_ID: NodesVersionsViewType = \"tree\";\nconst VIEW_AS_LIST_ID: NodesVersionsViewType = \"list\";\n\nconst TOGGLE_CHECKBOXES_CHECKED_VALUE = \"on\";\n\n@Component({\n tag: \"gx-ide-select-kb-items\",\n styleUrl: \"select-kb-items.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/select-kb-items\"]\n})\nexport class GxIdeSelectKbItems {\n #_componentLocale: any;\n #checkedNodesIds: string[] = [];\n #chShortcutsEl: HTMLChShortcutsElement;\n #selectedNodesIds: string[] = [];\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/select-kb-items/shortcuts.json`\n );\n #updatedModelList: ItemNode[] = [];\n\n #viewItemsAsModel: RadioGroupItemModel[];\n\n @Element() el: HTMLGxIdeSelectKbItemsElement;\n #treeViewRenderEl: HTMLChTreeViewRenderElement;\n\n /**\n * Represents the nodes list model\n */\n @State() nodeListFlattenedTreeModel: TreeViewItemModel[] = [];\n\n /**\n * To show a loader when the component is loading\n */\n @State() loading: boolean = true;\n\n /**\n * View type for the nodes.\n */\n @State() nodesVersionsViewType: NodesVersionsViewType = \"tree\";\n\n /**\n * Represents the nodes tree model\n */\n @State() nodeVersionsListTreeModel: TreeViewItemModel[] = [];\n\n /**\n * \"Search Pattern\" input value, used to filter the nodes tree/list.\n */\n @State() searchPatternValue: string = null;\n\n /**\n * It maps to the ch-tree-view-render \"toggleCheckboxes\" property.\n */\n @State() toggleCheckboxes: boolean = true;\n\n /**\n * Callback emitted when the 'cancel' button is pressed\n */\n @Prop() readonly cancelCallback?: () => Promise<void>;\n /**\n * Defines which nodes of the component have checkboxes.\n */\n @Prop() readonly checkboxType: CheckboxType;\n\n /**\n * Callback emitted when the items checked items change\n */\n @Prop() readonly checkedChanged?: (checkedItems: string[]) => Promise<void>;\n\n /**\n * Callback emitted when the 'select' button is pressed\n */\n @Prop() readonly confirmCallback?: (checkedItems: string[]) => Promise<void>;\n\n /**\n * Set of additional actions (callbacks) to those already provided by default by the selector (cancelCallback and selectCallback)\n */\n @Prop() readonly dialogActions: DialogAction[] = [];\n\n /**\n * Callback emitted when the user right click on an item\n */\n @Prop() readonly itemContextMenuCallback: (\n info: ContextMenuInfo\n ) => Promise<void>;\n\n /**\n * Represents the itemLis list model\n */\n @Prop() readonly itemsList: ItemNode[] = [];\n\n @Watch(\"itemsList\")\n watchNodeListHandler(newItemsList: ItemNode[]) {\n if (newItemsList.length > 0) {\n this.loading = false;\n }\n this.#updateViews(newItemsList);\n }\n\n /**\n * This define if the selection is unique or not\n */\n @Prop() readonly multiSelection?: boolean = false;\n\n /**\n * Callback emitted when the items selection change\n */\n @Prop() readonly selectionChanged?: (selectedItem: string[]) => Promise<void>;\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n this.#viewItemsAsModel = [\n { value: VIEW_AS_TREE_ID, caption: this.#_componentLocale.main.tree },\n { value: VIEW_AS_LIST_ID, caption: \"List\" }\n ];\n this.watchNodeListHandler(this.itemsList);\n }\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#chShortcutsEl.suspend = true;\n } else {\n this.#chShortcutsEl.suspend = false;\n }\n }\n\n /**\n * Allow to update the selected items\n */\n @Method()\n async updateSelection(selectedItemsIds: string[]) {\n // first clear selected\n this.#treeViewRenderEl.updateItemsProperties(this.#selectedNodesIds, {\n selected: false\n });\n // then select\n this.#treeViewRenderEl.updateItemsProperties(selectedItemsIds, {\n selected: true\n });\n }\n\n #cancelHandler = () => {\n if (this.cancelCallback) {\n this.cancelCallback();\n }\n };\n\n #checkedItemsChangeHandler = async (\n e: CustomEvent<Map<string, TreeViewItemModelExtended>>\n ) => {\n const checkedNodesIds: string[] = [];\n e.detail.forEach(node => {\n node.item.checked && checkedNodesIds.push(node.item.id);\n });\n this.#checkedNodesIds = checkedNodesIds;\n this.#updatedModelList = checkItems(this.itemsList, this.#checkedNodesIds);\n\n if (this.checkedChanged) {\n this.checkedChanged(this.#checkedNodesIds);\n }\n };\n\n #confirmHandler = () => {\n if (this.confirmCallback) {\n this.confirmCallback(this.#checkedNodesIds);\n }\n };\n\n #contextMenuHandler = async (\n e: CustomEvent<{\n id: string;\n itemRef: HTMLChTreeViewItemElement;\n metadata: string;\n contextmenuEvent: PointerEvent;\n }>\n ) => {\n if (this.itemContextMenuCallback) {\n let info: ContextMenuInfo;\n const isSelected = this.#selectedNodesIds.find(id => id === e.detail.id);\n if (!this.#selectedNodesIds.length || !isSelected) {\n await this.#treeViewRenderEl.updateItemsProperties(\n this.#selectedNodesIds,\n { selected: false }\n );\n await this.#treeViewRenderEl.updateItemsProperties([e.detail.id], {\n selected: true\n });\n info = {\n clientX: e.detail.contextmenuEvent.clientX,\n clientY: e.detail.contextmenuEvent.clientY,\n selection: [e.detail.id]\n };\n } else {\n info = {\n clientX: e.detail.contextmenuEvent.clientX,\n clientY: e.detail.contextmenuEvent.clientY,\n selection: this.#selectedNodesIds\n };\n }\n this.itemContextMenuCallback(info);\n }\n };\n\n #executeDialogAction = (\n callback: (checkedNodesIds: string[], selectedNodesIds: string[]) => void\n ) => {\n return () => {\n callback(this.#checkedNodesIds, this.#selectedNodesIds);\n };\n };\n\n #patternSearchValueChangedHandler = (\n event: CustomEvent<string> | InputEvent\n ) => {\n this.searchPatternValue = event.detail.toString();\n };\n\n #renderActionButtons = (): HTMLElement[] => {\n return (\n <div>\n {this.dialogActions.map(action => {\n return (\n <button\n class={\"button-tertiary\"}\n part={`button button-${action.name}`}\n onClick={this.#executeDialogAction(action.callback)}\n disabled={this.loading}\n >\n {action.name}\n </button>\n );\n })}\n </div>\n );\n };\n\n #renderFooter = (): HTMLElement => {\n return (\n <footer class=\"footer control-footer-with-border spacing-body-inline spacing-body-block-end control-footer-space-between\">\n {this.#renderActionButtons()}\n <div class=\"buttons-spacer \">\n {this.cancelCallback && (\n <button\n class={\"button-secondary\"}\n part={\"cancel-button\"}\n onClick={this.#cancelHandler}\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n )}\n {this.confirmCallback && (\n <button\n class={\"button-primary\"}\n part={\"confirm-button\"}\n onClick={this.#confirmHandler}\n disabled={this.loading}\n >\n {this.#_componentLocale.footer.select}\n </button>\n )}\n </div>\n </footer>\n );\n };\n\n #selectedItemsChangeHandler = (\n e: CustomEvent<TreeViewItemModelExtended[]>\n ) => {\n const selectedNodesIds: string[] = [];\n unselectAllNodes(this.itemsList);\n e.detail.forEach(node => {\n selectedNodesIds.push(node.item.id);\n });\n this.#selectedNodesIds = selectedNodesIds;\n if (this.selectionChanged) {\n this.selectionChanged(this.#selectedNodesIds);\n }\n\n this.#updatedModelList = selectItems(this.itemsList, selectedNodesIds);\n };\n\n #toggleAndSelectNodesInModelItems = async (selectedItemsIds: string[]) => {\n const nodesToToggle = searchParentsItems(this.itemsList, selectedItemsIds);\n const newItemsSelected = selectItems(this.itemsList, selectedItemsIds);\n const newItemsExpanded = expandItems(newItemsSelected, nodesToToggle);\n this.#updateViews(newItemsExpanded);\n };\n\n #toggleCheckedNodesInModelItems = async (selectedItemsIds: string[]) => {\n const nodesToToggle = searchParentsItems(this.itemsList, selectedItemsIds);\n const newItemsExpanded = expandItems(this.itemsList, nodesToToggle);\n this.#updateViews(newItemsExpanded);\n };\n\n #updateViews = (newItemsList: ItemNode[]) => {\n this.nodeVersionsListTreeModel = convertItemsListToTreeViewModel(\n newItemsList,\n this.checkboxType\n );\n\n this.nodeListFlattenedTreeModel =\n convertItemsNodeListToFlattenedTreeViewModel(\n newItemsList,\n this.checkboxType\n );\n };\n\n #viewItemsAsChangedHandler = async (event: CustomEvent<string>) => {\n const selectedViewType = event.detail as NodesVersionsViewType;\n this.nodesVersionsViewType = selectedViewType;\n if (this.nodesVersionsViewType === \"tree\") {\n await this.#toggleAndSelectNodesInModelItems(this.#selectedNodesIds);\n await this.#toggleCheckedNodesInModelItems(this.#checkedNodesIds);\n }\n this.#updateViews(this.#updatedModelList);\n };\n\n #toggleCheckboxesChangedHandler = (\n event: ChCheckboxCustomEvent<string> | InputEvent\n ) => {\n this.toggleCheckboxes = event.detail === TOGGLE_CHECKBOXES_CHECKED_VALUE;\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n <section class=\"section\">\n <header class=\"control-header field-group spacing-body-block-start spacing-body-inline\">\n <div class=\"field-group view-mode__toggle-checkboxes\">\n <div class=\"field field-inline field__items-view-type\">\n <label class=\"label\" htmlFor=\"view-mode\">\n Select view mode:\n </label>\n <ch-radio-group-render\n class=\"radio-group\"\n id=\"view-mode\"\n model={this.#viewItemsAsModel}\n onChange={this.#viewItemsAsChangedHandler}\n value={this.#viewItemsAsModel[0].value}\n ></ch-radio-group-render>\n </div>\n\n {this.checkboxType !== \"none\" && (\n <div class=\"field field-inline field__toggle-checkboxes\">\n <label class=\"label\" htmlFor=\"toggle-checkboxes\">\n Toggle Checkboxes\n </label>\n <ch-checkbox\n class=\"checkbox\"\n id=\"toggle-checkboxes\"\n checkedValue={TOGGLE_CHECKBOXES_CHECKED_VALUE}\n value={TOGGLE_CHECKBOXES_CHECKED_VALUE}\n onInput={this.#toggleCheckboxesChangedHandler}\n ></ch-checkbox>\n </div>\n )}\n </div>\n\n <ch-edit\n class=\"input pattern-filter\"\n placeholder={\n this.#_componentLocale.header.searchPatternPlaceholder\n }\n startImgSrc={SYSTEM_SEARCH_ICON}\n onInput={this.#patternSearchValueChangedHandler}\n ></ch-edit>\n </header>\n\n <div class=\"spacing-body-inline-start trees\">\n {this.loading ? (\n <gx-ide-loader\n loaderTitle={this.#_componentLocale.loader.title}\n show\n ></gx-ide-loader>\n ) : (\n <ch-tree-view-render\n class=\"tree-view\"\n model={\n this.nodesVersionsViewType === \"tree\"\n ? this.nodeVersionsListTreeModel\n : this.nodeListFlattenedTreeModel\n }\n show-lines={\n this.nodesVersionsViewType === \"tree\" ? \"all\" : \"none\"\n }\n expandableButton={\n this.nodesVersionsViewType === \"tree\" ? \"decorative\" : \"no\"\n }\n onItemContextmenu={this.#contextMenuHandler}\n onCheckedItemsChange={this.#checkedItemsChangeHandler}\n onSelectedItemsChange={this.#selectedItemsChangeHandler}\n multiSelection={this.multiSelection}\n filter={this.searchPatternValue}\n filterType=\"caption\"\n toggleCheckboxes={this.toggleCheckboxes}\n ref={(el: HTMLChTreeViewRenderElement) => {\n this.#treeViewRenderEl = el as HTMLChTreeViewRenderElement;\n }}\n ></ch-tree-view-render>\n )}\n </div>\n {(this.dialogActions.length > 0 ||\n this.cancelCallback ||\n this.confirmCallback) &&\n this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type CheckboxType = \"none\" | \"all\" | \"leaf\" | \"custom\";\n\nexport type DialogAction = {\n name: string;\n callback: DialogActionCallback;\n};\n\nexport type DialogActionCallback = (...args: any[]) => void;\n\nexport type ItemCommon = {\n icon: string;\n expanded: boolean;\n};\n\nexport type ItemNode = {\n checkbox?: boolean;\n checked?: boolean;\n expanded?: boolean;\n icon?: string;\n id: string;\n name: string;\n nodes?: ItemNode[];\n selected?: boolean;\n type: ItemType;\n};\n\nexport type ItemType = {\n id: string;\n name: string;\n};\n\ntype NodesVersionsViewType = \"tree\" | \"list\";\n"],"version":3}
|
|
1
|
+
{"file":"gx-ide-select-kb-items.entry.js","mappings":"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","names":[],"sources":["src/components/select-kb-items/helpers.tsx","src/components/select-kb-items/select-kb-items.scss?tag=gx-ide-select-kb-items&encapsulation=shadow","src/components/select-kb-items/select-kb-items.tsx"],"sourcesContent":["import { ItemNode, CheckboxType } from \"./select-kb-items\";\nimport { TreeViewItemModel } from \"@genexus/chameleon-controls-library\";\n\nexport const convertItemsNodeListToFlattenedTreeViewModel = (\n itemsList: ItemNode[],\n checkboxType: CheckboxType\n): TreeViewItemModel[] => {\n const itemsListFlattenedTreeViewModel: TreeViewItemModel[] = [];\n\n const processNode = (item: ItemNode) => {\n const leaf = !item.nodes?.length;\n const checkbox =\n checkboxType === \"all\" ||\n (checkboxType === \"custom\" && item.checkbox) ||\n (checkboxType === \"leaf\" && leaf);\n const metaData = JSON.stringify({\n versionType: item.type\n });\n itemsListFlattenedTreeViewModel.push({\n id: item.id.toString(),\n metadata: metaData,\n caption: item.name,\n checked: item.checked,\n checkbox: checkbox,\n expanded: item.expanded,\n startImgSrc: item.iconStart,\n endImgSrc: item.iconEnd,\n items: null,\n leaf: leaf,\n selected: item.selected\n });\n\n if (item.nodes) {\n item.nodes.forEach(childNode => processNode(childNode));\n }\n };\n\n itemsList.forEach(item => processNode(item));\n return itemsListFlattenedTreeViewModel;\n};\n\nexport const convertItemsListToTreeViewModel = (\n itemsList: ItemNode[],\n checkboxType: CheckboxType\n): TreeViewItemModel[] => {\n const itemsListTreeViewModel: TreeViewItemModel[] = [];\n itemsList.forEach(item => {\n const leaf = !item.nodes?.length;\n const expanded = item.expanded;\n const iconStart = item.iconStart;\n const iconEnd = item.iconEnd;\n const order = parseInt(item.id);\n const checkbox =\n checkboxType === \"all\" ||\n (checkboxType === \"custom\" && item.checkbox) ||\n (checkboxType === \"leaf\" && leaf);\n const metaData = JSON.stringify({\n versionType: item.type\n });\n itemsListTreeViewModel.push({\n id: item.id.toString(),\n metadata: metaData,\n caption: item.name,\n checkbox: checkbox,\n checked: item.checked,\n order: order,\n selected: item.selected,\n expanded: expanded,\n startImgSrc: iconStart,\n endImgSrc: iconEnd,\n items: !leaf\n ? convertItemsListToTreeViewModel(item.nodes, checkboxType)\n : null,\n leaf: leaf\n });\n });\n\n return itemsListTreeViewModel;\n};\n\nconst findItemNode = (id: string, item: ItemNode): ItemNode | null => {\n if (item.id === id) {\n return item;\n }\n\n if (item.nodes) {\n for (const itemNode of item.nodes) {\n const result = findItemNode(id, itemNode);\n if (result) {\n return result;\n }\n }\n }\n return null;\n};\n\nfunction findItemInArray(itemsNodes: ItemNode[], id: string): ItemNode | null {\n for (const item of itemsNodes) {\n const result = findItemNode(id, item);\n if (result) {\n return result;\n }\n }\n return null;\n}\nconst setAllLeafsCheckedFalse = (itemsList: ItemNode[]): ItemNode[] => {\n const uncheck = (itemNode: ItemNode) => {\n itemNode.checked = false;\n if (itemNode.nodes?.length) {\n itemNode.nodes.forEach(childNode => uncheck(childNode));\n }\n };\n\n itemsList.forEach(item => uncheck(item));\n return itemsList;\n};\n\nexport const unselectAllNodes = (itemsList: ItemNode[]) => {\n const unselect = (itemNode: ItemNode) => {\n itemNode.selected = false;\n if (itemNode.nodes?.length) {\n itemNode.nodes.forEach(childNode => unselect(childNode));\n }\n };\n\n itemsList.forEach(item => unselect(item));\n};\n\nexport const checkItems = (\n itemsList: ItemNode[],\n idsChecked: string[]\n): ItemNode[] => {\n setAllLeafsCheckedFalse(itemsList);\n idsChecked.forEach(id => {\n const itemFind = findItemInArray(itemsList, id);\n if (itemFind) {\n itemFind.checked = true;\n }\n });\n\n return itemsList;\n};\n\nexport const expandItems = (\n itemsList: ItemNode[],\n idsChecked: string[]\n): ItemNode[] => {\n idsChecked.forEach(id => {\n const itemFind = findItemInArray(itemsList, id);\n if (itemFind) {\n itemFind.expanded = true;\n }\n });\n\n return itemsList;\n};\n\nexport const selectItems = (\n itemsList: ItemNode[],\n idsSelected: string[]\n): ItemNode[] => {\n idsSelected.forEach(id => {\n const itemFind = findItemInArray(itemsList, id);\n if (itemFind) {\n itemFind.selected = true;\n }\n });\n return itemsList;\n};\n\nfunction searchInNode(item: ItemNode, id: string): string[] | null {\n // If the current node is the searched node, we return an empty list (it has no parents in this branch)\n if (item.id === id) {\n return [];\n }\n\n // We traverse each child looking for the target node\n if (item.nodes?.length) {\n for (const node of item.nodes) {\n const parents = searchInNode(node, id);\n if (parents !== null) {\n // If we find it, we include the current node at the beginning of the path and return\n return [item.id, ...parents];\n }\n }\n }\n return null;\n}\n\nexport const searchParentsItems = (\n items: ItemNode[],\n ids: string[]\n): string[] | null => {\n const parents: string[] = [];\n for (const id of ids) {\n for (const rootItem of items) {\n const results = searchInNode(rootItem, id);\n if (results !== null) {\n results.forEach(result => {\n parents.push(result);\n });\n }\n }\n }\n return parents;\n};\n",":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: max-content 1fr max-content;\n}\n\n.section {\n display: contents;\n}\n\n// header\n.view-mode__toggle-checkboxes {\n grid-template-columns: max-content max-content;\n}\n.field__items-view-type {\n align-items: center;\n .label {\n margin-block-start: 0 !important; // WA to center label with radio-group\n }\n}\n.field__toggle-checkboxes {\n .label {\n margin-block-start: 0 !important; // WA to center label with radio-group\n }\n}\n\n.trees {\n position: relative;\n}\n","import {\n Component,\n Element,\n getAssetPath,\n Host,\n h,\n Prop,\n State,\n Watch,\n Method\n} from \"@stencil/core\";\n\nimport {\n ChCheckboxCustomEvent,\n TreeViewItemModel,\n TreeViewItemModelExtended\n} from \"@genexus/chameleon-controls-library\";\n\nimport {\n checkItems,\n convertItemsListToTreeViewModel,\n convertItemsNodeListToFlattenedTreeViewModel,\n expandItems,\n searchParentsItems,\n selectItems,\n unselectAllNodes\n} from \"./helpers\";\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\nimport { Locale } from \"../../common/locale\";\nimport { ContextMenuInfo } from \"../../common/types\";\nimport { RadioGroupItemModel } from \"@genexus/chameleon-controls-library/dist/types/components/radio-group/types\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"chameleon/scrollbar\",\n \"components/tooltip\",\n \"components/tree-view\",\n \"utils/form--full\",\n \"utils/layout\",\n \"utils/spacing\",\n \"utils/typography\"\n];\n\nconst SYSTEM_SEARCH_ICON = getIconPath({\n category: \"system\",\n name: \"search\",\n colorType: \"on-surface\"\n});\n\nconst VIEW_AS_TREE_ID: NodesVersionsViewType = \"tree\";\nconst VIEW_AS_LIST_ID: NodesVersionsViewType = \"list\";\n\nconst TOGGLE_CHECKBOXES_CHECKED_VALUE = \"on\";\n\n@Component({\n tag: \"gx-ide-select-kb-items\",\n styleUrl: \"select-kb-items.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/select-kb-items\"]\n})\nexport class GxIdeSelectKbItems {\n #_componentLocale: any;\n\n #checkedNodesIds: string[] = [];\n #chShortcutsEl: HTMLChShortcutsElement;\n #selectedNodesIds: string[] = [];\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/select-kb-items/shortcuts.json`\n );\n #updatedModelList: ItemNode[] = [];\n\n #viewItemsAsModel: RadioGroupItemModel[];\n\n @Element() el: HTMLGxIdeSelectKbItemsElement;\n #treeViewRenderEl: HTMLChTreeViewRenderElement;\n\n /**\n * Represents the nodes list model\n */\n @State() nodeListFlattenedTreeModel: TreeViewItemModel[] = [];\n\n /**\n * To show a loader when the component is loading\n */\n @State() loading: boolean = true;\n\n /**\n * View type for the nodes.\n */\n @State() nodesVersionsViewType: NodesVersionsViewType = \"tree\";\n\n /**\n * Represents the nodes tree model\n */\n @State() nodeVersionsListTreeModel: TreeViewItemModel[] = [];\n\n /**\n * \"Search Pattern\" input value, used to filter the nodes tree/list.\n */\n @State() searchPatternValue: string = null;\n\n /**\n * It maps to the ch-tree-view-render \"toggleCheckboxes\" property.\n */\n @State() toggleCheckboxes: boolean = true;\n\n /**\n * Callback emitted when the 'cancel' button is pressed\n */\n @Prop() readonly cancelCallback?: () => Promise<void>;\n /**\n * Defines which nodes of the component have checkboxes.\n */\n @Prop() readonly checkboxType: CheckboxType;\n\n /**\n * Callback emitted when the items checked items change\n */\n @Prop() readonly checkedChanged?: (checkedItems: string[]) => Promise<void>;\n\n /**\n * Callback emitted when the 'select' button is pressed\n */\n @Prop() readonly confirmCallback?: (checkedItems: string[]) => Promise<void>;\n\n /**\n * Set of additional actions (callbacks) to those already provided by default by the selector (cancelCallback and selectCallback)\n */\n @Prop() readonly dialogActions: DialogAction[] = [];\n\n /**\n * Callback emitted when the user right click on an item\n */\n @Prop() readonly itemContextMenuCallback: (\n info: ContextMenuInfo\n ) => Promise<void>;\n\n /**\n * Represents the itemLis list model\n */\n @Prop() readonly itemsList: ItemNode[] = [];\n\n @Watch(\"itemsList\")\n watchNodeListHandler(newItemsList: ItemNode[]) {\n if (newItemsList.length > 0) {\n this.loading = false;\n }\n this.#updateViews(newItemsList);\n }\n\n /**\n * This define if the selection is unique or not\n */\n @Prop() readonly multiSelection?: boolean = false;\n\n /**\n * Callback emitted when the items selection change\n */\n @Prop() readonly selectionChanged?: (selectedItem: string[]) => Promise<void>;\n\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n this.#viewItemsAsModel = [\n { value: VIEW_AS_TREE_ID, caption: this.#_componentLocale.main.tree },\n { value: VIEW_AS_LIST_ID, caption: \"List\" }\n ];\n this.watchNodeListHandler(this.itemsList);\n }\n\n /**\n * Suspends or reactivates the shortcuts\n */\n @Method()\n async suspendShortcuts(suspendShortcuts: boolean) {\n if (suspendShortcuts) {\n this.#chShortcutsEl.suspend = true;\n } else {\n this.#chShortcutsEl.suspend = false;\n }\n }\n\n /**\n * Allow to update the selected items\n */\n @Method()\n async updateSelection(selectedItemsIds: string[]) {\n // first clear selected\n this.#treeViewRenderEl.updateItemsProperties(this.#selectedNodesIds, {\n selected: false\n });\n // then select\n this.#treeViewRenderEl.updateItemsProperties(selectedItemsIds, {\n selected: true\n });\n }\n\n #cancelHandler = () => {\n if (this.cancelCallback) {\n this.cancelCallback();\n }\n };\n\n #checkedItemsChangeHandler = async (\n e: CustomEvent<Map<string, TreeViewItemModelExtended>>\n ) => {\n const checkedNodesIds: string[] = [];\n e.detail.forEach(node => {\n node.item.checked && checkedNodesIds.push(node.item.id);\n });\n this.#checkedNodesIds = checkedNodesIds;\n this.#updatedModelList = checkItems(this.itemsList, this.#checkedNodesIds);\n\n if (this.checkedChanged) {\n this.checkedChanged(this.#checkedNodesIds);\n }\n };\n\n #confirmHandler = () => {\n if (this.confirmCallback) {\n this.confirmCallback(this.#checkedNodesIds);\n }\n };\n\n #contextMenuHandler = async (\n e: CustomEvent<{\n id: string;\n itemRef: HTMLChTreeViewItemElement;\n metadata: string;\n contextmenuEvent: PointerEvent;\n }>\n ) => {\n if (this.itemContextMenuCallback) {\n let info: ContextMenuInfo;\n const isSelected = this.#selectedNodesIds.find(id => id === e.detail.id);\n if (!this.#selectedNodesIds.length || !isSelected) {\n await this.#treeViewRenderEl.updateItemsProperties(\n this.#selectedNodesIds,\n { selected: false }\n );\n await this.#treeViewRenderEl.updateItemsProperties([e.detail.id], {\n selected: true\n });\n info = {\n clientX: e.detail.contextmenuEvent.clientX,\n clientY: e.detail.contextmenuEvent.clientY,\n selection: [e.detail.id]\n };\n } else {\n info = {\n clientX: e.detail.contextmenuEvent.clientX,\n clientY: e.detail.contextmenuEvent.clientY,\n selection: this.#selectedNodesIds\n };\n }\n this.itemContextMenuCallback(info);\n }\n };\n\n #executeDialogAction = (\n callback: (checkedNodesIds: string[], selectedNodesIds: string[]) => void\n ) => {\n return () => {\n callback(this.#checkedNodesIds, this.#selectedNodesIds);\n };\n };\n\n #patternSearchValueChangedHandler = (\n event: CustomEvent<string> | InputEvent\n ) => {\n this.searchPatternValue = event.detail.toString();\n };\n\n #renderActionButtons = (): HTMLElement[] => {\n return (\n <div>\n {this.dialogActions.map(action => {\n return (\n <button\n class={\"button-tertiary\"}\n part={`button button-${action.name}`}\n onClick={this.#executeDialogAction(action.callback)}\n disabled={this.loading}\n >\n {action.name}\n </button>\n );\n })}\n </div>\n );\n };\n\n #renderFooter = (): HTMLElement => {\n return (\n <footer class=\"footer control-footer-with-border spacing-body-inline spacing-body-block-end control-footer-space-between\">\n {this.#renderActionButtons()}\n <div class=\"buttons-spacer \">\n {this.cancelCallback && (\n <button\n class={\"button-secondary\"}\n part={\"cancel-button\"}\n onClick={this.#cancelHandler}\n >\n {this.#_componentLocale.footer.cancel}\n </button>\n )}\n {this.confirmCallback && (\n <button\n class={\"button-primary\"}\n part={\"confirm-button\"}\n onClick={this.#confirmHandler}\n disabled={this.loading}\n >\n {this.#_componentLocale.footer.select}\n </button>\n )}\n </div>\n </footer>\n );\n };\n\n #selectedItemsChangeHandler = (\n e: CustomEvent<TreeViewItemModelExtended[]>\n ) => {\n const selectedNodesIds: string[] = [];\n unselectAllNodes(this.itemsList);\n e.detail.forEach(node => {\n selectedNodesIds.push(node.item.id);\n });\n this.#selectedNodesIds = selectedNodesIds;\n if (this.selectionChanged) {\n this.selectionChanged(this.#selectedNodesIds);\n }\n\n this.#updatedModelList = selectItems(this.itemsList, selectedNodesIds);\n };\n\n #toggleAndSelectNodesInModelItems = async (selectedItemsIds: string[]) => {\n const nodesToToggle = searchParentsItems(this.itemsList, selectedItemsIds);\n const newItemsSelected = selectItems(this.itemsList, selectedItemsIds);\n const newItemsExpanded = expandItems(newItemsSelected, nodesToToggle);\n this.#updateViews(newItemsExpanded);\n };\n\n #toggleCheckedNodesInModelItems = async (selectedItemsIds: string[]) => {\n const nodesToToggle = searchParentsItems(this.itemsList, selectedItemsIds);\n const newItemsExpanded = expandItems(this.itemsList, nodesToToggle);\n this.#updateViews(newItemsExpanded);\n };\n\n #updateViews = (newItemsList: ItemNode[]) => {\n this.nodeVersionsListTreeModel = convertItemsListToTreeViewModel(\n newItemsList,\n this.checkboxType\n );\n\n this.nodeListFlattenedTreeModel =\n convertItemsNodeListToFlattenedTreeViewModel(\n newItemsList,\n this.checkboxType\n );\n };\n\n #viewItemsAsChangedHandler = async (event: CustomEvent<string>) => {\n const selectedViewType = event.detail as NodesVersionsViewType;\n this.nodesVersionsViewType = selectedViewType;\n if (this.nodesVersionsViewType === \"tree\") {\n await this.#toggleAndSelectNodesInModelItems(this.#selectedNodesIds);\n await this.#toggleCheckedNodesInModelItems(this.#checkedNodesIds);\n }\n this.#updateViews(this.#updatedModelList);\n };\n\n #toggleCheckboxesChangedHandler = (\n event: ChCheckboxCustomEvent<string> | InputEvent\n ) => {\n this.toggleCheckboxes = event.detail === TOGGLE_CHECKBOXES_CHECKED_VALUE;\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts\n src={this.#shortcutsSrc}\n ref={(el: HTMLChShortcutsElement) =>\n (this.#chShortcutsEl = el as HTMLChShortcutsElement)\n }\n ></ch-shortcuts>\n <section class=\"section\">\n <header class=\"control-header field-group spacing-body-block-start spacing-body-inline\">\n <div class=\"field-group view-mode__toggle-checkboxes\">\n <div class=\"field field-inline field__items-view-type\">\n <label class=\"label\" htmlFor=\"view-mode\">\n Select view mode:\n </label>\n <ch-radio-group-render\n class=\"radio-group\"\n id=\"view-mode\"\n model={this.#viewItemsAsModel}\n onChange={this.#viewItemsAsChangedHandler}\n value={this.#viewItemsAsModel[0].value}\n ></ch-radio-group-render>\n </div>\n\n {this.checkboxType !== \"none\" && (\n <div class=\"field field-inline field__toggle-checkboxes\">\n <label class=\"label\" htmlFor=\"toggle-checkboxes\">\n Toggle Checkboxes\n </label>\n <ch-checkbox\n class=\"checkbox\"\n id=\"toggle-checkboxes\"\n checkedValue={TOGGLE_CHECKBOXES_CHECKED_VALUE}\n value={TOGGLE_CHECKBOXES_CHECKED_VALUE}\n onInput={this.#toggleCheckboxesChangedHandler}\n ></ch-checkbox>\n </div>\n )}\n </div>\n\n <ch-edit\n class=\"input pattern-filter\"\n placeholder={\n this.#_componentLocale.header.searchPatternPlaceholder\n }\n startImgSrc={SYSTEM_SEARCH_ICON}\n onInput={this.#patternSearchValueChangedHandler}\n ></ch-edit>\n </header>\n\n <div class=\"spacing-body-inline-start trees\">\n {this.loading ? (\n <gx-ide-loader\n loaderTitle={this.#_componentLocale.loader.title}\n show\n ></gx-ide-loader>\n ) : (\n <ch-tree-view-render\n class=\"tree-view\"\n model={\n this.nodesVersionsViewType === \"tree\"\n ? this.nodeVersionsListTreeModel\n : this.nodeListFlattenedTreeModel\n }\n show-lines={\n this.nodesVersionsViewType === \"tree\" ? \"all\" : \"none\"\n }\n expandableButton={\n this.nodesVersionsViewType === \"tree\" ? \"decorative\" : \"no\"\n }\n onItemContextmenu={this.#contextMenuHandler}\n onCheckedItemsChange={this.#checkedItemsChangeHandler}\n onSelectedItemsChange={this.#selectedItemsChangeHandler}\n multiSelection={this.multiSelection}\n filter={this.searchPatternValue}\n filterType=\"caption\"\n toggleCheckboxes={this.toggleCheckboxes}\n ref={(el: HTMLChTreeViewRenderElement) => {\n this.#treeViewRenderEl = el as HTMLChTreeViewRenderElement;\n }}\n ></ch-tree-view-render>\n )}\n </div>\n {(this.dialogActions.length > 0 ||\n this.cancelCallback ||\n this.confirmCallback) &&\n this.#renderFooter()}\n </section>\n </Host>\n );\n }\n}\n\nexport type CheckboxType = \"none\" | \"all\" | \"leaf\" | \"custom\";\n\nexport type DialogAction = {\n name: string;\n callback: DialogActionCallback;\n};\n\nexport type DialogActionCallback = (...args: any[]) => void;\n\nexport type ItemCommon = {\n icon: string;\n expanded: boolean;\n};\n\nexport type ItemNode = {\n checkbox?: boolean;\n checked?: boolean;\n expanded?: boolean;\n iconStart?: string;\n iconEnd?: string;\n id: string;\n name: string;\n nodes?: ItemNode[];\n selected?: boolean;\n type: ItemType;\n};\n\nexport type ItemType = {\n id: string;\n name: string;\n};\n\ntype NodesVersionsViewType = \"tree\" | \"list\";\n"],"version":3}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { g as getAssetPath, r as registerInstance, h, H as Host, a as getElement } from './index-10af18cf.js';
|
|
2
2
|
import { L as Locale } from './locale-e5107fad.js';
|
|
3
3
|
|
|
4
4
|
const mapTeamsToComboBoxItemModel = (teams) => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent,
|
|
1
|
+
import { r as registerInstance, c as createEvent, g as getAssetPath, h, H as Host, a as getElement } from './index-10af18cf.js';
|
|
2
2
|
import { g as getIconPath } from './assets-manager-0d129105.js';
|
|
3
3
|
import './MERCURY_ASSETS-2455138c.js';
|
|
4
4
|
import { c as config } from './config-1ef9d75a.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { g as getAssetPath, r as registerInstance, h, H as Host, a as getElement } from './index-10af18cf.js';
|
|
2
2
|
import { L as Locale } from './locale-e5107fad.js';
|
|
3
3
|
|
|
4
4
|
const mapTeamsToComboBoxItemModel = (teams) => {
|