@genexus/genexus-ide-ui 1.1.33 → 1.1.35
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/{config-140f58fe.js → config-df6ba4e9.js} +2 -2
- package/dist/cjs/config-df6ba4e9.js.map +1 -0
- package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
- package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-bpm-assign-roles.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-bpm-export-xpdl.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-bpm-import-files.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-bpm-import-gxpm.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-bpm-objects-selector.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-bpm-timer-duration.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js +2 -2
- package/dist/cjs/gx-ide-connect-gx-server.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-curl-inspector.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-data-selector.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-design-import.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-json-import.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-new-environment.cjs.entry.js +12 -3
- package/dist/cjs/gx-ide-new-environment.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-new-kb.cjs.entry.js +31 -11
- package/dist/cjs/gx-ide-new-kb.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-new-object.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-new-version.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-object-selector.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-plugin-explorer.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-server-selector.cjs.entry.js +5 -3
- package/dist/cjs/gx-ide-server-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-share-kb.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js +18 -29
- package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +6 -15
- package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +92 -53
- package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +111 -36
- package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +497 -234
- package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-wf-settings.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-ww-files.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-ww-images.cjs.entry.js +1 -1
- package/dist/cjs/helpers-456ecc75.js +16 -0
- package/dist/cjs/helpers-456ecc75.js.map +1 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/common/config.js +1 -1
- package/dist/collection/common/config.js.map +1 -1
- package/dist/collection/components/data-type-selector/gx-ide-assets/data-type-selector/langs/data-type-selector.lang.en.json +1 -1
- package/dist/collection/components/new-environment/new-environment.js +33 -3
- package/dist/collection/components/new-environment/new-environment.js.map +1 -1
- package/dist/collection/components/new-kb/new-kb.js +55 -14
- package/dist/collection/components/new-kb/new-kb.js.map +1 -1
- package/dist/collection/components/new-kb/tests/new-kb.e2e.js +10 -1
- package/dist/collection/components/new-kb/tests/new-kb.e2e.js.map +1 -1
- package/dist/collection/components/plugin-explorer/gx-ide-assets/plugin-explorer/langs/plugin-explorer.lang.en.json +1 -1
- package/dist/collection/components/plugin-explorer/gx-ide-assets/plugin-explorer/langs/plugin-explorer.lang.zh.json +1 -1
- package/dist/collection/components/start-page/gx-ide-assets/start-page/langs/start-page.lang.en.json +1 -1
- package/dist/collection/components/start-page/gx-ide-assets/start-page/langs/start-page.lang.zh.json +1 -1
- package/dist/collection/components/team-dev/bring-changes/bring-changes.css +3 -3
- package/dist/collection/components/team-dev/bring-changes/bring-changes.js +43 -49
- package/dist/collection/components/team-dev/bring-changes/bring-changes.js.map +1 -1
- package/dist/collection/components/team-dev/bring-changes/gx-ide-assets/team-dev-bring-changes/langs/team-dev-bring-changes.lang.en.json +1 -1
- package/dist/collection/components/team-dev/bring-changes/gx-ide-assets/team-dev-bring-changes/langs/team-dev-bring-changes.lang.zh.json +1 -1
- package/dist/collection/components/team-dev/commit/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.en.json +2 -2
- package/dist/collection/components/team-dev/commit/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.ja.json +1 -1
- package/dist/collection/components/team-dev/commit/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.zh.json +2 -2
- package/dist/collection/components/team-dev/connect-gx-server/connect-gx-server.js +1 -1
- package/dist/collection/components/team-dev/connect-gx-server/connect-gx-server.js.map +1 -1
- package/dist/collection/components/team-dev/connect-gx-server/gx-ide-assets/connect-gx-server/langs/connect-gx-server.lang.en.json +1 -1
- package/dist/collection/components/team-dev/connect-gx-server/gx-ide-assets/connect-gx-server/langs/connect-gx-server.lang.ja.json +1 -1
- package/dist/collection/components/team-dev/connect-gx-server/gx-ide-assets/connect-gx-server/langs/connect-gx-server.lang.zh.json +1 -1
- package/dist/collection/components/team-dev/server-selector/server-selector.js +4 -2
- package/dist/collection/components/team-dev/server-selector/server-selector.js.map +1 -1
- package/dist/collection/components/team-dev/update/gx-ide-assets/team-dev-update/langs/team-dev-update.lang.en.json +49 -28
- package/dist/collection/components/team-dev/update/gx-ide-assets/team-dev-update/langs/team-dev-update.lang.ja.json +58 -37
- package/dist/collection/components/team-dev/update/gx-ide-assets/team-dev-update/langs/team-dev-update.lang.zh.json +49 -28
- package/dist/collection/components/team-dev/update/types.js +2 -0
- package/dist/collection/components/team-dev/update/types.js.map +1 -0
- package/dist/collection/components/team-dev/update/update.css +268 -606
- package/dist/collection/components/team-dev/update/update.js +566 -411
- package/dist/collection/components/team-dev/update/update.js.map +1 -1
- package/dist/collection/components/team-dev/update/utilities/actions-combo-box-model.js +2 -0
- package/dist/collection/components/team-dev/update/utilities/actions-combo-box-model.js.map +1 -0
- package/dist/collection/components/team-dev/update-partial-selection/gx-ide-assets/team-dev-update-partial-selection/langs/team-dev-update-partial-selection.lang.zh.json +11 -11
- package/dist/collection/components/team-dev/update-partial-selection/update-partial-selection.css +16 -590
- package/dist/collection/components/team-dev/update-partial-selection/update-partial-selection.js +100 -78
- package/dist/collection/components/team-dev/update-partial-selection/update-partial-selection.js.map +1 -1
- package/dist/collection/components/team-dev/update-to-revision/gx-ide-assets/team-dev-update-to-revision/langs/team-dev-update-to-revision.lang.zh.json +5 -5
- package/dist/collection/components/team-dev/update-to-revision/gx-ide-assets/team-dev-update-to-revision/shortcuts.json +3 -3
- package/dist/collection/components/team-dev/update-to-revision/helpers.js +6 -0
- package/dist/collection/components/team-dev/update-to-revision/helpers.js.map +1 -0
- package/dist/collection/components/team-dev/update-to-revision/update-to-revision.css +11 -596
- package/dist/collection/components/team-dev/update-to-revision/update-to-revision.js +133 -56
- package/dist/collection/components/team-dev/update-to-revision/update-to-revision.js.map +1 -1
- package/dist/components/config.js +1 -1
- package/dist/components/config.js.map +1 -1
- package/dist/components/gx-ide-connect-gx-server.js +1 -1
- package/dist/components/gx-ide-connect-gx-server.js.map +1 -1
- package/dist/components/gx-ide-new-environment.js +13 -3
- package/dist/components/gx-ide-new-environment.js.map +1 -1
- package/dist/components/gx-ide-new-kb.js +34 -13
- package/dist/components/gx-ide-new-kb.js.map +1 -1
- package/dist/components/gx-ide-server-selector.js +4 -2
- package/dist/components/gx-ide-server-selector.js.map +1 -1
- package/dist/components/gx-ide-team-dev-bring-changes.js +20 -32
- package/dist/components/gx-ide-team-dev-bring-changes.js.map +1 -1
- package/dist/components/gx-ide-team-dev-commit.js +1 -10
- package/dist/components/gx-ide-team-dev-commit.js.map +1 -1
- package/dist/components/gx-ide-team-dev-update-partial-selection.js +93 -67
- package/dist/components/gx-ide-team-dev-update-partial-selection.js.map +1 -1
- package/dist/components/gx-ide-team-dev-update-to-revision.js +115 -51
- package/dist/components/gx-ide-team-dev-update-to-revision.js.map +1 -1
- package/dist/components/gx-ide-team-dev-update.js +528 -267
- package/dist/components/gx-ide-team-dev-update.js.map +1 -1
- package/dist/components/helpers2.js +13 -0
- package/dist/components/helpers2.js.map +1 -0
- package/dist/esm/{config-73a57a22.js → config-9eaeb14b.js} +2 -2
- package/dist/esm/config-9eaeb14b.js.map +1 -0
- package/dist/esm/genexus-ide-ui.js +1 -1
- package/dist/esm/gx-ide-bpm-app-declaration.entry.js +1 -1
- package/dist/esm/gx-ide-bpm-assign-roles.entry.js +1 -1
- package/dist/esm/gx-ide-bpm-export-xpdl.entry.js +1 -1
- package/dist/esm/gx-ide-bpm-import-files.entry.js +1 -1
- package/dist/esm/gx-ide-bpm-import-gxpm.entry.js +1 -1
- package/dist/esm/gx-ide-bpm-objects-selector.entry.js +1 -1
- package/dist/esm/gx-ide-bpm-timer-duration.entry.js +1 -1
- package/dist/esm/gx-ide-connect-gx-server.entry.js +2 -2
- package/dist/esm/gx-ide-connect-gx-server.entry.js.map +1 -1
- package/dist/esm/gx-ide-create-kb-from-server.entry.js +1 -1
- package/dist/esm/gx-ide-curl-inspector.entry.js +1 -1
- package/dist/esm/gx-ide-data-selector.entry.js +1 -1
- package/dist/esm/gx-ide-design-import.entry.js +1 -1
- package/dist/esm/gx-ide-json-import.entry.js +1 -1
- package/dist/esm/gx-ide-new-environment.entry.js +12 -3
- package/dist/esm/gx-ide-new-environment.entry.js.map +1 -1
- package/dist/esm/gx-ide-new-kb.entry.js +32 -12
- package/dist/esm/gx-ide-new-kb.entry.js.map +1 -1
- package/dist/esm/gx-ide-new-object.entry.js +1 -1
- package/dist/esm/gx-ide-new-version.entry.js +1 -1
- package/dist/esm/gx-ide-object-selector.entry.js +1 -1
- package/dist/esm/gx-ide-plugin-explorer.entry.js +1 -1
- package/dist/esm/gx-ide-server-selector.entry.js +5 -3
- package/dist/esm/gx-ide-server-selector.entry.js.map +1 -1
- package/dist/esm/gx-ide-share-kb.entry.js +1 -1
- package/dist/esm/gx-ide-team-dev-bring-changes.entry.js +18 -29
- package/dist/esm/gx-ide-team-dev-bring-changes.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-commit.entry.js +2 -11
- package/dist/esm/gx-ide-team-dev-commit.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-history.entry.js +1 -1
- package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +1 -1
- package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +92 -53
- package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +111 -36
- package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-update.entry.js +498 -235
- package/dist/esm/gx-ide-team-dev-update.entry.js.map +1 -1
- package/dist/esm/gx-ide-wf-settings.entry.js +1 -1
- package/dist/esm/gx-ide-ww-attributes.entry.js +1 -1
- package/dist/esm/gx-ide-ww-files.entry.js +1 -1
- package/dist/esm/gx-ide-ww-images.entry.js +1 -1
- package/dist/esm/helpers-e1db579e.js +13 -0
- package/dist/esm/helpers-e1db579e.js.map +1 -0
- package/dist/esm/loader.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/connect-gx-server/langs/connect-gx-server.lang.en.json +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/connect-gx-server/langs/connect-gx-server.lang.ja.json +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/connect-gx-server/langs/connect-gx-server.lang.zh.json +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/data-type-selector/langs/data-type-selector.lang.en.json +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/plugin-explorer/langs/plugin-explorer.lang.en.json +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/plugin-explorer/langs/plugin-explorer.lang.zh.json +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/start-page/langs/start-page.lang.en.json +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/start-page/langs/start-page.lang.zh.json +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-bring-changes/langs/team-dev-bring-changes.lang.en.json +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-bring-changes/langs/team-dev-bring-changes.lang.zh.json +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.en.json +2 -2
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.ja.json +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.zh.json +2 -2
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-update/langs/team-dev-update.lang.en.json +49 -28
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-update/langs/team-dev-update.lang.ja.json +58 -37
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-update/langs/team-dev-update.lang.zh.json +49 -28
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-update-partial-selection/langs/team-dev-update-partial-selection.lang.zh.json +11 -11
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-update-to-revision/langs/team-dev-update-to-revision.lang.zh.json +5 -5
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-update-to-revision/shortcuts.json +3 -3
- package/dist/genexus-ide-ui/p-08d90282.entry.js +178 -0
- package/dist/genexus-ide-ui/p-08d90282.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-dc1a9bd5.entry.js → p-09a634fc.entry.js} +3 -3
- package/dist/genexus-ide-ui/p-09a634fc.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-8c125495.entry.js → p-0ae0616f.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-00e51225.entry.js → p-1056dfe7.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-8d570fd2.entry.js → p-12b563fe.entry.js} +61 -51
- package/dist/genexus-ide-ui/p-12b563fe.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-a5b30dc7.entry.js → p-13f4b647.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-54946b5e.entry.js → p-159164d6.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-6945a7ad.entry.js → p-16a88fc3.entry.js} +6 -6
- package/dist/genexus-ide-ui/{p-2c6ab8f4.entry.js → p-1d044bf5.entry.js} +2 -2
- package/dist/genexus-ide-ui/p-1f7ef8ba.entry.js +603 -0
- package/dist/genexus-ide-ui/p-1f7ef8ba.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-e1d947d7.entry.js → p-2ce60f4c.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-38f135a5.entry.js → p-3b955964.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-ec9e0915.entry.js → p-3dc5d62e.entry.js} +229 -210
- package/dist/genexus-ide-ui/p-3dc5d62e.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-56308ae7.entry.js → p-443fc479.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-952d84f8.entry.js → p-49f765ef.entry.js} +163 -172
- package/dist/genexus-ide-ui/p-49f765ef.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-68ff4ac9.entry.js → p-4ef96726.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-e06cfa27.entry.js → p-59908901.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-57b8dd3d.entry.js → p-5a328be1.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-3817c664.entry.js → p-646ddf49.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-3d7ed559.entry.js → p-730f0cd3.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-4c37ff28.entry.js → p-7836028c.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-f94cb936.entry.js → p-7adb9d1f.entry.js} +2 -2
- package/dist/genexus-ide-ui/p-7f091892.entry.js +222 -0
- package/dist/genexus-ide-ui/p-7f091892.entry.js.map +1 -0
- package/dist/genexus-ide-ui/p-821431b4.js +13 -0
- package/dist/genexus-ide-ui/p-821431b4.js.map +1 -0
- package/dist/genexus-ide-ui/{p-44e5e972.js → p-9a03ac9f.js} +2 -2
- package/dist/genexus-ide-ui/{p-44e5e972.js.map → p-9a03ac9f.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-9b1550be.entry.js → p-9ad85231.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-bb0cdfe6.entry.js → p-b5d8589f.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-7fe4387b.entry.js → p-be84e15b.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-923744e7.entry.js → p-bee71b20.entry.js} +25 -23
- package/dist/genexus-ide-ui/p-bee71b20.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-4dd3af73.entry.js → p-d01bbc7a.entry.js} +2 -2
- package/dist/genexus-ide-ui/p-d1374a00.entry.js +728 -0
- package/dist/genexus-ide-ui/p-d1374a00.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-833ae3bf.entry.js → p-da7df3dc.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-9d1316d4.entry.js → p-e7738191.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-212ca306.entry.js → p-f242ae04.entry.js} +2 -2
- package/dist/types/components/new-environment/new-environment.d.ts +6 -1
- package/dist/types/components/new-kb/new-kb.d.ts +7 -2
- package/dist/types/components/team-dev/bring-changes/bring-changes.d.ts +6 -9
- package/dist/types/components/team-dev/update/types.d.ts +1 -0
- package/dist/types/components/team-dev/update/update.d.ts +98 -110
- package/dist/types/components/team-dev/update/utilities/actions-combo-box-model.d.ts +0 -0
- package/dist/types/components/team-dev/update-partial-selection/update-partial-selection.d.ts +8 -25
- package/dist/types/components/team-dev/update-to-revision/helpers.d.ts +1 -0
- package/dist/types/components/team-dev/update-to-revision/update-to-revision.d.ts +8 -25
- package/dist/types/components.d.ts +96 -156
- package/package.json +1 -1
- package/dist/cjs/config-140f58fe.js.map +0 -1
- package/dist/esm/config-73a57a22.js.map +0 -1
- package/dist/genexus-ide-ui/p-0391a478.entry.js +0 -119
- package/dist/genexus-ide-ui/p-0391a478.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-69da0cd9.entry.js +0 -201
- package/dist/genexus-ide-ui/p-69da0cd9.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-8c1ee4d9.entry.js +0 -643
- package/dist/genexus-ide-ui/p-8c1ee4d9.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-8d570fd2.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-923744e7.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-952d84f8.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-b2854730.entry.js +0 -641
- package/dist/genexus-ide-ui/p-b2854730.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-dc1a9bd5.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-ec9e0915.entry.js.map +0 -1
- /package/dist/genexus-ide-ui/{p-8c125495.entry.js.map → p-0ae0616f.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-00e51225.entry.js.map → p-1056dfe7.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-a5b30dc7.entry.js.map → p-13f4b647.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-54946b5e.entry.js.map → p-159164d6.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-6945a7ad.entry.js.map → p-16a88fc3.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-2c6ab8f4.entry.js.map → p-1d044bf5.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-e1d947d7.entry.js.map → p-2ce60f4c.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-38f135a5.entry.js.map → p-3b955964.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-56308ae7.entry.js.map → p-443fc479.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-68ff4ac9.entry.js.map → p-4ef96726.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-e06cfa27.entry.js.map → p-59908901.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-57b8dd3d.entry.js.map → p-5a328be1.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-3817c664.entry.js.map → p-646ddf49.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-3d7ed559.entry.js.map → p-730f0cd3.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-4c37ff28.entry.js.map → p-7836028c.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-f94cb936.entry.js.map → p-7adb9d1f.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-9b1550be.entry.js.map → p-9ad85231.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-bb0cdfe6.entry.js.map → p-b5d8589f.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-7fe4387b.entry.js.map → p-be84e15b.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-4dd3af73.entry.js.map → p-d01bbc7a.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-833ae3bf.entry.js.map → p-da7df3dc.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-9d1316d4.entry.js.map → p-e7738191.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-212ca306.entry.js.map → p-f242ae04.entry.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"gx-ide-team-dev-commit.entry.js","mappings":"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","names":[],"sources":["src/components/team-dev/commit/helpers.ts","src/components/team-dev/commit/commit.scss?tag=gx-ide-team-dev-commit&encapsulation=shadow","src/components/team-dev/commit/commit.tsx"],"sourcesContent":["import { ComboBoxModel } from \"@genexus/chameleon-controls-library\";\nimport { ObjectType, GxOption } from \"../../../common/types\";\n\nexport const mapObjectTypeToComboBoxItemModel = (\n objectTypeModel: ObjectType[]\n): ComboBoxModel =>\n objectTypeModel.map(objectType => ({\n value: objectType.id,\n caption: objectType.name,\n startImgSrc: objectType.icon\n }));\n\nexport const mapGxOptionsToComboBoxItemModel = (\n categoryModel: GxOption[]\n): ComboBoxModel =>\n categoryModel.map(category => ({\n value: category.id,\n caption: category.label || category.name || \"\"\n }));\n","@import \"../common/styles.scss\";\n\n:host {\n display: grid;\n block-size: 100%;\n overflow: auto;\n grid-template-rows: max-content 1fr max-content;\n}\n\nsection {\n display: contents;\n}\n\n// header\n.header {\n &__first-row {\n grid-template-columns: 1fr max-content;\n }\n}\n.field-comment {\n flex: 1;\n}\n\n// filter\n.filters-container {\n display: grid;\n grid-template-rows: 0fr;\n transition: grid-template-rows var(--mer-timing--fast);\n}\n.filters-container-visible {\n grid-template-rows: 1fr;\n}\n.filters-container > div {\n overflow: hidden;\n}\n.filter {\n grid-template-areas:\n \"field-pattern field-folder field-type\"\n \"field-changeset field-changeset field-category\";\n padding-block-start: var(--mer-spacing--sm);\n}\n.field-pattern {\n grid-area: field-pattern;\n}\n.field-folder {\n grid-area: field-folder;\n}\n.field-type {\n grid-area: field-type;\n}\n.field-changeset {\n grid-area: field-changeset;\n}\n.field-category {\n grid-area: field-category;\n}\n\n.ch-tab-slot {\n inline-size: 100%;\n overflow: auto;\n}\n\n// tab\n.tab {\n // WA / TODO: Mercury should provide an additional class to remove tab border\n border: none !important;\n}\n\n// tabular grid\n.tabular-grid {\n block-size: 100%;\n position: relative;\n overflow: auto;\n}\n.tabular-grid-cell.tabular-grid-cell-description {\n max-inline-size: 600px;\n}\n\ngx-ide-loader {\n position: absolute;\n inline-size: 100%;\n block-size: 100%;\n}\n\nch-tabular-grid-rowset-empty {\n position: relative; // makes this the bounder element for the loader\n}\n\nch-tabular-grid.tabular-grid--empty::part(main) {\n // WA to avoid scrollbar flickering when displaying the empty-state message\n overflow: hidden;\n}\n\n.tooltip {\n position: absolute;\n}\n","// Stencil\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n Method,\n State,\n Watch\n} from \"@stencil/core\";\n\n// Other Libraries\nimport {\n ChEditCustomEvent,\n ComboBoxModel,\n TabModel,\n TabularGridMarkingChangedEvent,\n TabularGridRowContextMenuEvent,\n TabularGridSelectionChangedEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\nimport {\n renderObjectStateWithIcon,\n renderObjectTypeWithIcon\n} from \"../common/utilities\";\nimport { ObjectState } from \"../common/types\";\n\n// Custom Imports\nimport { Locale } from \"../../../common/locale\";\nimport { config } from \"../../../common/config\";\nimport {\n GxOption,\n ContextMenuInfo,\n ObjectType,\n ItemsCheckedState,\n ItemsCheckedResult\n} from \"../../../common/types\";\n\nimport { formatDate } from \"../../../common/helpers\";\nimport {\n mapGxOptionsToComboBoxItemModel,\n mapObjectTypeToComboBoxItemModel\n} from \"./helpers\";\n\nconst FILTER_ICON = getIconPath({\n category: \"window-tools\",\n name: \"filter\",\n colorType: \"primary\"\n});\n\nconst FILTER_ICON_EMPTY = getIconPath({\n category: \"window-tools\",\n name: \"filter\",\n colorType: \"on-surface\"\n});\n\nconst FILTER_WITH_CONDITIONS_ICON = getIconPath({\n category: \"window-tools\",\n name: \"filter-conditions\",\n colorType: \"primary\"\n});\n\nconst RESET_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"reset\",\n colorType: \"primary\"\n});\n\nconst ALL_OPTION = \"All\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/checkbox\",\n \"components/combo-box\",\n \"components/edit\",\n \"components/tab\",\n \"components/icon\",\n \"components/tabular-grid\",\n \"components/tooltip\",\n \"chameleon/scrollbar\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\"\n];\n@Component({\n tag: \"gx-ide-team-dev-commit\",\n styleUrl: \"commit.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-commit\"]\n})\nexport class GxIdeTeamDevCommit {\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 #loadDataCalledFirstTime = false; // pending commits grid checkboxes, should be checked, after loadData has loaded commits for the first time.\n #renderedFirstTime = false;\n #commitsTabModel: TabModel = [\n { id: \"pending-commits\", name: \"Pending Commits\" },\n { id: \"ignored-objects\", name: \"Ignored Objects\" }\n ];\n\n @Element() el: HTMLGxIdeTeamDevCommitElement;\n\n // filters\n #categoriesEl!: HTMLChComboBoxRenderElement;\n #changeSetEl!: HTMLChComboBoxRenderElement;\n #commitCommentEl!: HTMLChEditElement;\n #foldersEl!: HTMLChComboBoxRenderElement;\n #patternEl!: HTMLChEditElement;\n #typesEl!: HTMLChComboBoxRenderElement;\n // other\n #chGridIgnoredObjectsEl!: HTMLChTabularGridElement;\n #chGridPendingCommitsEl!: HTMLChTabularGridElement;\n\n @State() comment = \"\";\n @State() filterHasConditions = false;\n @State() ignoredObjects: ModifiedObjectData[] = [];\n @State() pendingCommits: ModifiedObjectData[] = [];\n @State() commentInputHasError: boolean = false;\n @State() commitingObjects: boolean = false;\n @State() filtersHidden = true;\n // Combo box models\n @State() folderOptionsModel: ComboBoxModel;\n @State() typeOptionsModel: ComboBoxModel;\n @State() changeSetOptionsModel: ComboBoxModel;\n @State() categoryOptionsModel: ComboBoxModel;\n\n /**\n * To show a loader when the component is loading\n */\n @State() loading: boolean = true;\n\n /**\n * Possible values for Categories filter\n */\n @Prop() readonly categories: GxOption[];\n @Watch(\"categories\")\n categoriesChangedHandler(newCategoriesOptions: GxOption[]) {\n mapGxOptionsToComboBoxItemModel(newCategoriesOptions);\n }\n\n /**\n * Possible values for ChangeSet filter\n */\n @Prop() readonly changeSet: GxOption[];\n @Watch(\"changeSet\")\n changeSetChangedHandler(newChangeSetOptions: GxOption[]) {\n this.changeSetOptionsModel =\n mapGxOptionsToComboBoxItemModel(newChangeSetOptions);\n }\n\n /**\n * Callback invoked when user starts the commit process\n */\n @Prop() readonly commitCallback: CommitCallback;\n\n /**\n * Possible values for Folders filter\n */\n @Prop() readonly folders: GxOption[];\n @Watch(\"folders\")\n foldersChangedHandler(newFolderOptions: GxOption[]) {\n this.folderOptionsModel = mapGxOptionsToComboBoxItemModel(newFolderOptions);\n }\n\n /**\n * Callback invoked when user press Recent Comments button.\n */\n @Prop() readonly getRecentCommentCallback: GetRecentComment;\n\n /**\n * Callback invoked when user wants to reload the grid\n */\n @Prop() readonly loadCallback: LoadCallback;\n\n /**\n * Callback invoked when the user activates the context menu in any grid\n */\n @Prop() readonly objectsContextMenuCallback: ObjectsContextMenuCallback;\n\n /**\n * Callback invoked when user check/uncheck any item from the 'Pending to Commit' grid\n */\n @Prop() readonly pendingItemsCheckedCallback!: PendingItemsCheckedCallback;\n\n /**\n * Callback invoked when the user selects rows from the grid\n */\n @Prop() readonly selectCallback: CommitSelectCallback;\n\n /**\n * Possible values for Type filter\n */\n @Prop() readonly types: ObjectType[];\n @Watch(\"types\")\n typesChangedHandler(newTypesOptions: ObjectType[]) {\n this.typeOptionsModel = mapObjectTypeToComboBoxItemModel(newTypesOptions);\n }\n\n /**\n * Emitted once after the component fully loads and the first render occurs\n */\n @Event() componentDidLoadEvent: EventEmitter<boolean>;\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs\n */\n @Event() componentDidRenderFirstTime: EventEmitter<boolean>;\n\n async componentDidLoad() {\n await this.#loadData();\n this.#loadDataCalledFirstTime = true;\n this.componentDidLoadEvent.emit(true);\n this.#commitCommentEl.focus();\n }\n\n async componentDidRender() {\n if (!this.#renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this.#componentLocale.componentName\n );\n this.#renderedFirstTime = true;\n }\n\n if (this.#loadDataCalledFirstTime) {\n // call this method only once\n await this.#markAllPendingCommitsRows();\n // attach \"rowMarkingChanged\" after rows have been checked for the first time.\n this.#chGridPendingCommitsEl.addEventListener(\n \"rowMarkingChanged\",\n this.#pendingCommitsRowMarkingChangedHandler\n );\n this.#loadDataCalledFirstTime = false;\n }\n }\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.#initializeComboBoxModels();\n }\n\n #initializeComboBoxModels = () => {\n this.foldersChangedHandler(this.folders);\n this.typesChangedHandler(this.types);\n this.changeSetChangedHandler(this.changeSet);\n this.categoriesChangedHandler(this.categories);\n };\n\n /**\n * Method used by the Host to force a data refresh in the grids\n */\n @Method()\n async reload(): Promise<void> {\n this.#loadData();\n }\n\n #commitCallbackHandler = async () => {\n const comment = this.#commitCommentEl.value;\n if (!comment.length) {\n // A comment is required to commit.\n this.commentInputHasError = true;\n return;\n }\n\n this.commitingObjects = true;\n this.commentInputHasError = false;\n const pendingCommitsCheckedIds =\n await this.#chGridPendingCommitsEl.getMarkedRows();\n\n await this.commitCallback(pendingCommitsCheckedIds, comment);\n this.commitingObjects = false;\n };\n\n #evaluateFilterConditions = () => {\n // TODO: This should update\n if (\n this.#patternEl.value !== \"\" ||\n this.#changeSetEl.value !== ALL_OPTION ||\n this.#typesEl.value !== ALL_OPTION ||\n this.#foldersEl.value !== ALL_OPTION ||\n this.#categoriesEl.value !== ALL_OPTION\n ) {\n this.filterHasConditions = true;\n } else {\n this.filterHasConditions = false;\n }\n };\n\n #getRecentCommentHandler = async () => {\n if (this.getRecentCommentCallback) {\n const response = await this.getRecentCommentCallback();\n if (response) {\n this.#commitCommentEl.value = response;\n }\n }\n };\n\n #gridOnSelectionChangedCallbackHandler =\n (grid: CommitSourceType) =>\n async (ev: CustomEvent<TabularGridSelectionChangedEvent>) => {\n if (this.selectCallback) {\n await this.selectCallback(grid, ev.detail.rowsId);\n }\n };\n\n #handleColumnSortChanged = (e: CustomEvent) => {\n const { columnId, sortDirection } = e.detail;\n\n const aux = this.pendingCommits;\n aux.sort((a: any, b: any) => {\n if (a[columnId] < b[columnId]) {\n return sortDirection === \"asc\" ? -1 : 1;\n }\n if (a[columnId] > b[columnId]) {\n return sortDirection === \"asc\" ? 1 : -1;\n }\n return 0;\n });\n\n this.pendingCommits = [...aux];\n };\n\n #loadData = async () => {\n this.loading = true;\n const filtersData: FiltersData = {\n pattern: this.#patternEl.value,\n changeSet: this.#changeSetEl.value,\n folder: this.#foldersEl.value,\n category: this.#categoriesEl.value,\n type: this.#typesEl.value\n };\n\n this.#evaluateFilterConditions();\n\n await this.loadCallback(filtersData).then(async ({ pending, ignored }) => {\n this.pendingCommits = [...pending];\n this.ignoredObjects = [...ignored];\n });\n this.loading = false;\n this.#updateTabModel();\n };\n\n #markAllPendingCommitsRows = async () => {\n await this.#chGridPendingCommitsEl.markAllRows();\n };\n\n #objectsOnContextMenuCallbackHandler =\n (grid: CommitSourceType) =>\n async (ev: CustomEvent<TabularGridRowContextMenuEvent>) => {\n ev.preventDefault();\n ev.stopPropagation();\n let selection: string[] = [];\n if (grid === \"commit\") {\n selection = ev.detail.selectedRowsId;\n } else if (grid === \"ignored\") {\n selection = await this.#chGridIgnoredObjectsEl.getSelectedRows();\n }\n if (this.objectsContextMenuCallback) {\n await this.objectsContextMenuCallback(grid, {\n selection: selection,\n clientX: ev.detail.clientX,\n clientY: ev.detail.clientY\n });\n }\n };\n\n #pendingCommitsRowMarkingChangedHandler = async (\n e: CustomEvent<TabularGridMarkingChangedEvent>\n ): Promise<void> => {\n // remove \"rowMarkingChanged\" until checkboxes have been added/removed on #togglePendingCommitsCheckboxes, to prevent loops.\n this.#chGridPendingCommitsEl.removeEventListener(\n \"rowMarkingChanged\",\n this.#pendingCommitsRowMarkingChangedHandler\n );\n if (this.#chGridPendingCommitsEl) {\n const addedRowsIds = e.detail.addedRowsId;\n const removedRowsId = e.detail.removedRowsId;\n\n const pendingItemCheckedResult = await this.pendingItemsCheckedCallback({\n itemsChecked: addedRowsIds,\n itemsUnchecked: removedRowsId\n });\n\n if (pendingItemCheckedResult === undefined) {\n // undo check/uncheck\n await this.#revertPendingCommitsCheckboxes(addedRowsIds, removedRowsId);\n } else {\n await this.#togglePendingCommitsCheckboxes(pendingItemCheckedResult);\n }\n this.#chGridPendingCommitsEl.addEventListener(\n \"rowMarkingChanged\",\n this.#pendingCommitsRowMarkingChangedHandler\n );\n }\n };\n\n #renderTabularGridColumnSet = (\n withCheckboxes: boolean = false\n ): HTMLChTabularGridColumnsetElement => {\n return (\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n {withCheckboxes && (\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnType=\"rich\"\n richRowSelector\n richRowSelectorMode=\"mark\"\n settingable={false}\n sortable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n )}\n <ch-tabular-grid-column\n columnId=\"name\"\n class=\"tabular-grid-column\"\n sortable\n columnName=\"Name\"\n settingable={false}\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"type\"\n class=\"tabular-grid-column\"\n sortable\n columnName=\"Type\"\n settingable={false}\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"description\"\n class=\"tabular-grid-column\"\n columnName=\"Description\"\n settingable={false}\n sortable\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"modifiedOn\"\n class=\"tabular-grid-column\"\n sortable\n columnName=\"Modified On\"\n settingable={false}\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"module\"\n class=\"tabular-grid-column\"\n columnName=\"Module\"\n settingable={false}\n sortable\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"localState\"\n class=\"tabular-grid-column\"\n columnName=\"Local State\"\n settingable={false}\n sortable\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"lastSynchronized\"\n class=\"tabular-grid-column\"\n columnName=\"Last Synchronized\"\n settingable={false}\n sortable\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.auto}\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n );\n };\n\n #renderTabularGridCommonCells = (object: ModifiedObjectData) => {\n return [\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {object.name}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {renderObjectTypeWithIcon(object.type)}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell tabular-grid-cell-description\">\n {object.description}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {`${formatDate(object.modifiedOn)}`}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {object.module}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {renderObjectStateWithIcon(object.localState)}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {`${formatDate(object.lastSynchronized)}`}\n </ch-tabular-grid-cell>\n ];\n };\n\n #renderIgnoredObjectsGrid = (): Element => {\n const tabularGridEmpty =\n this.ignoredObjects?.length === 0 || !this.ignoredObjects;\n return (\n <ch-tabular-grid\n // ignored objects grid render\n class={{\n \"tabular-grid\": true,\n \"tabular-grid--empty\": tabularGridEmpty\n }}\n rowSelectionMode=\"multiple\"\n ref={(el: HTMLChTabularGridElement) =>\n (this.#chGridIgnoredObjectsEl = el)\n }\n allowColumnReorder={false}\n part=\"ch-grid-pending-commits\"\n onRowContextMenu={this.#objectsOnContextMenuCallbackHandler(\"ignored\")}\n onSelectionChanged={this.#gridOnSelectionChangedCallbackHandler(\n \"ignored\"\n )}\n >\n {this.commitingObjects && (\n <gx-ide-loader\n loaderTitle={this.#componentLocale.loader.title}\n description={this.#componentLocale.loader.description}\n show\n ></gx-ide-loader>\n )}\n\n {this.#renderTabularGridColumnSet()}\n {this.ignoredObjects.length > 0 ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.ignoredObjects.map((obj: ModifiedObjectData) => (\n <ch-tabular-grid-row\n rowid={obj.id}\n selected\n class=\"tabular-grid-row\"\n >\n {this.#renderTabularGridCommonCells(obj)}\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty>\n <gx-ide-empty-state\n stateIconSrc={FILTER_ICON_EMPTY}\n stateTitle={this.#componentLocale.emptyIgnoredObjects}\n isAnimated={true}\n ></gx-ide-empty-state>\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n </ch-tabular-grid>\n );\n };\n\n #renderPendingCommitsGrid = (): Element => {\n const withCheckboxes = true;\n const tabularGridEmpty =\n this.pendingCommits?.length === 0 || !this.pendingCommits;\n\n if (this.loading) {\n return (\n <div class=\"tabular-grid\">\n <gx-ide-loader\n loaderTitle={this.#componentLocale.objectsLoader.title}\n description={this.#componentLocale.objectsLoader.description}\n show\n ></gx-ide-loader>\n </div>\n );\n }\n return (\n <ch-tabular-grid\n // pending commits grid render\n class={{\n \"tabular-grid\": true,\n \"tabular-grid--empty\": tabularGridEmpty\n }}\n rowSelectionMode=\"multiple\"\n ref={(el: HTMLChTabularGridElement) =>\n (this.#chGridPendingCommitsEl = el)\n }\n allowColumnReorder={false}\n part=\"ch-grid-pending-commits\"\n onRowContextMenu={this.#objectsOnContextMenuCallbackHandler(\"commit\")}\n onSelectionChanged={this.#gridOnSelectionChangedCallbackHandler(\n \"commit\"\n )}\n >\n {this.commitingObjects && (\n <gx-ide-loader\n loaderTitle={this.#componentLocale.loader.title}\n description={this.#componentLocale.loader.description}\n show\n ></gx-ide-loader>\n )}\n\n {this.#renderTabularGridColumnSet(withCheckboxes)}\n\n {this.pendingCommits.length > 0 ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.pendingCommits.map((obj: ModifiedObjectData) => (\n <ch-tabular-grid-row rowid={obj.id} class=\"tabular-grid-row\">\n <ch-tabular-grid-cell\n cell-type=\"rich\"\n row-selector\n class=\"tabular-grid-cell\"\n ></ch-tabular-grid-cell>\n {this.#renderTabularGridCommonCells(obj)}\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty>\n <gx-ide-empty-state\n stateIconSrc={FILTER_ICON_EMPTY}\n stateTitle={this.#componentLocale.emptyPendingCommitsObjects}\n isAnimated={true}\n ></gx-ide-empty-state>\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n </ch-tabular-grid>\n );\n };\n\n #revertPendingCommitsCheckboxes = async (\n addedRowsIds: string[],\n removedRowsId: string[]\n ) => {\n if (this.#chGridPendingCommitsEl) {\n for (const rowId of addedRowsIds) {\n await this.#chGridPendingCommitsEl.markRow(rowId, false);\n }\n for (const rowId of removedRowsId) {\n await this.#chGridPendingCommitsEl.markRow(rowId, true);\n }\n }\n };\n\n #togglePendingCommitsCheckboxes = async (\n itemsToToggle: ItemsCheckedResult\n ) => {\n if (this.#chGridPendingCommitsEl) {\n const itemsToCheck: string[] = itemsToToggle.itemsToCheck;\n const itemsToUncheck: string[] = itemsToToggle.itemsToUncheck;\n // check\n for (const rowId of itemsToCheck) {\n await this.#chGridPendingCommitsEl.markRow(rowId, true);\n }\n // uncheck\n for (const rowId of itemsToUncheck) {\n await this.#chGridPendingCommitsEl.markRow(rowId, false);\n }\n }\n };\n\n #updateTabModel = () => {\n this.#commitsTabModel = [\n {\n id: \"pending-commits\",\n name: `${this.#componentLocale.tabs.pendingCommits} (${\n this.pendingCommits.length\n })`\n },\n {\n id: \"ignored-objects\",\n name: `${this.#componentLocale.tabs.ignoredObjects} (${\n this.ignoredObjects.length\n })`\n }\n ];\n };\n\n #commentInputHandler = async (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n const comment = event.detail as string;\n if (comment.length && this.commentInputHasError) {\n // remove error style and tooltip\n this.commentInputHasError = false;\n }\n };\n\n #toggleFiltersHandler = () => {\n this.filtersHidden = !this.filtersHidden;\n };\n\n #onTabActivated = (evt: CustomEvent) => {\n evt.stopImmediatePropagation();\n };\n\n render() {\n const filterIcon = this.filterHasConditions\n ? FILTER_WITH_CONDITIONS_ICON\n : FILTER_ICON;\n\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <section class=\"section\">\n <header class=\"header spacing-body\">\n <div class=\"header__first-row field-group\">\n <div class=\"buttons-spacer\">\n <div\n // pattern\n class=\"field field-inline field-comment\"\n >\n <label class=\"label\" htmlFor=\"pattern-form-text\">\n {this.#componentLocale.header.commentLabel}\n </label>\n <ch-edit\n // commit comment\n id=\"comment\"\n class={{\n \"input\": true,\n \"commit-input\": true,\n \"scrollable\": true,\n \"input-error\": this.commentInputHasError\n }}\n placeholder={\n this.#componentLocale.header.commentPlaceholder\n }\n onInput={this.#commentInputHandler}\n value={this.comment}\n ref={(el: HTMLChEditElement) =>\n (this.#commitCommentEl = el as HTMLChEditElement)\n }\n part=\"comment\"\n ></ch-edit>\n </div>\n <button\n id=\"filter-toggle-button\"\n class=\"button-teritary button-icon-only\"\n aria-label={this.#componentLocale.header.filterAriaLabel}\n aria-expanded={this.filtersHidden ? \"false\" : \"true\"}\n aria-controls=\"filters-container\"\n onClick={this.#toggleFiltersHandler}\n title={this.#componentLocale.header.filterAriaLabel}\n >\n <ch-image class=\"icon-md\" src={filterIcon}></ch-image>\n </button>\n\n <button\n class=\"button-teritary button-icon-only\"\n aria-label={this.#componentLocale.header.reloadAriaLabel}\n title={this.#componentLocale.header.reloadAriaLabel}\n onClick={this.#loadData}\n part={this.#componentLocale.header.reloadAriaLabel}\n >\n <ch-image class=\"icon-md\" src={RESET_ICON}></ch-image>\n </button>\n </div>\n {this.commentInputHasError && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={\n this.#commitCommentEl as unknown as HTMLButtonElement\n }\n blockAlign=\"outside-end\"\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.#componentLocale.header.commentEmptyError}\n </ch-tooltip>\n )}\n\n <div class=\"buttons-spacer\">\n <button\n type=\"button\"\n class=\"button-secondary recent-comments-btn\"\n part=\"button button-location\"\n onClick={this.#getRecentCommentHandler}\n aria-label={this.#componentLocale.header.recentCommentsButton}\n disabled={this.commitingObjects}\n >\n {this.#componentLocale.header.recentCommentsButton}\n </button>\n </div>\n </div>\n\n <div\n id=\"filters-container\"\n aria-labelledby=\"filter-toggle-button\"\n class={{\n \"filters-container-visible\": !this.filtersHidden,\n \"filters-container\": true\n }}\n inert={this.filtersHidden}\n hidden={this.filtersHidden}\n >\n <div>\n <div slot=\"filter\" class=\"filter field-group\">\n <div\n // pattern\n class=\"field field-block field-pattern\"\n >\n <label class=\"label\" htmlFor=\"pattern-form-text\">\n {this.#componentLocale.filtersMenu.patternLabel}\n </label>\n <ch-edit\n id=\"pattern-form-text\"\n class=\"input\"\n value=\"\"\n ref={(el: HTMLChEditElement) =>\n (this.#patternEl = el as HTMLChEditElement)\n }\n debounce={config.inputDebounce}\n onInput={this.#loadData}\n part=\"pattern-form-text\"\n ></ch-edit>\n </div>\n\n <div\n // folder\n class=\"field field-block field-folder\"\n >\n <label class=\"label\" htmlFor=\"folder-combo\">\n {this.#componentLocale.filtersMenu.folderLabel}\n </label>\n <ch-combo-box-render\n id=\"folder-combo\"\n class=\"combo-box\"\n value={this.folders[0].id}\n model={this.folderOptionsModel}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#foldersEl = el as HTMLChComboBoxRenderElement)\n }\n onInput={this.#loadData}\n part=\"folder-combo\"\n ></ch-combo-box-render>\n </div>\n\n <div\n // type\n class=\"field field-block field-type\"\n >\n <label class=\"label\" htmlFor=\"type-combo\">\n {this.#componentLocale.filtersMenu.typeLabel}\n </label>\n <ch-combo-box-render\n id=\"type-combo\"\n class=\"combo-box\"\n value={this.types[0].id}\n model={this.typeOptionsModel}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#typesEl = el as HTMLChComboBoxRenderElement)\n }\n onInput={this.#loadData}\n part=\"type-combo\"\n ></ch-combo-box-render>\n </div>\n\n <div\n // changeset\n class=\"field field-block field-changeset\"\n >\n <label class=\"label\" htmlFor=\"changeset-combo\">\n {this.#componentLocale.filtersMenu.changesetLabel}\n </label>\n <ch-combo-box-render\n id=\"changeset-combo\"\n class=\"combo-box\"\n value={this.changeSet[0].id}\n model={this.changeSetOptionsModel}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#changeSetEl = el as HTMLChComboBoxRenderElement)\n }\n onInput={this.#loadData}\n part=\"changeset-combo\"\n ></ch-combo-box-render>\n </div>\n\n <div\n // category\n class=\"field field-block field-category\"\n >\n <label class=\"label\" htmlFor=\"category-combo\">\n {this.#componentLocale.filtersMenu.categoryLabel}\n </label>\n <ch-combo-box-render\n id=\"category-combo\"\n class=\"combo-box\"\n value={this.categories[0].id}\n model={this.categoryOptionsModel}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#categoriesEl = el as HTMLChComboBoxRenderElement)\n }\n onInput={this.#loadData}\n part=\"category-combo\"\n ></ch-combo-box-render>\n </div>\n </div>\n </div>\n </div>\n </header>\n\n <ch-tab-render\n class=\"tab scrollable\"\n tabListPosition=\"block-start\"\n model={this.#commitsTabModel}\n selectedId=\"pending-commits\"\n showTabListEnd\n overflow=\"auto auto\"\n contain=\"size\"\n onSelectedItemChange={this.#onTabActivated}\n >\n <div\n class=\"ch-tab-slot\"\n slot=\"pending-commits\"\n part=\"pending-commits\"\n >\n {this.#renderPendingCommitsGrid()}\n </div>\n <div\n class=\"ch-tab-slot\"\n slot=\"ignored-objects\"\n part=\"ignored-objects\"\n >\n {this.#renderIgnoredObjectsGrid()}\n </div>\n </ch-tab-render>\n\n <footer class=\"control-footer control-footer-with-border spacing-body-inline spacing-body-block-end\">\n <button\n class=\"button-primary\"\n onClick={this.#commitCallbackHandler}\n part=\"commit-button\"\n disabled={this.commitingObjects}\n >\n {this.#componentLocale.footer.commitButton}\n </button>\n </footer>\n </section>\n </Host>\n );\n }\n}\nexport type CommitCallback = (\n selection: string[],\n commitCommentEl: string\n) => Promise<boolean>;\n\nexport type CommitData = {\n pending: ModifiedObjectData[];\n ignored: ModifiedObjectData[];\n};\n\nexport type CommitSelectCallback = (\n grid: CommitSourceType,\n selectionIds: string[]\n) => Promise<void>;\n\nexport type CommitSourceType = \"commit\" | \"ignored\";\n\nexport type FiltersData = {\n pattern: string;\n changeSet: string;\n type: string;\n folder: string;\n category: string;\n};\n\nexport type GetRecentComment = () => Promise<string | undefined>;\n\nexport type ItemCheckedCallback = (\n checkedItemIds: string[]\n) => Promise<ItemsCheckedResult | undefined>;\n\nexport type LoadCallback = (filters: FiltersData) => Promise<CommitData>;\n\nexport type ModifiedObjectData = {\n id: string;\n name: string;\n iconType: string;\n state: ObjectState;\n type: ObjectType;\n description: string;\n modifiedOn: Date;\n module: string;\n localState: ObjectState;\n lastSynchronized: Date;\n user: string;\n};\n\nexport type ObjectsContextMenuCallback = (\n grid: CommitSourceType,\n contextMenuInfo: ContextMenuInfo\n) => Promise<void>;\n\nexport type PendingItemsCheckedCallback = (\n pendingItemsCheckedState: ItemsCheckedState\n) => Promise<ItemsCheckedResult | undefined>;\n"],"version":3}
|
|
1
|
+
{"file":"gx-ide-team-dev-commit.entry.js","mappings":"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","names":[],"sources":["src/components/team-dev/commit/commit.scss?tag=gx-ide-team-dev-commit&encapsulation=shadow","src/components/team-dev/commit/commit.tsx"],"sourcesContent":["@import \"../common/styles.scss\";\n\n:host {\n display: grid;\n block-size: 100%;\n overflow: auto;\n grid-template-rows: max-content 1fr max-content;\n}\n\nsection {\n display: contents;\n}\n\n// header\n.header {\n &__first-row {\n grid-template-columns: 1fr max-content;\n }\n}\n.field-comment {\n flex: 1;\n}\n\n// filter\n.filters-container {\n display: grid;\n grid-template-rows: 0fr;\n transition: grid-template-rows var(--mer-timing--fast);\n}\n.filters-container-visible {\n grid-template-rows: 1fr;\n}\n.filters-container > div {\n overflow: hidden;\n}\n.filter {\n grid-template-areas:\n \"field-pattern field-folder field-type\"\n \"field-changeset field-changeset field-category\";\n padding-block-start: var(--mer-spacing--sm);\n}\n.field-pattern {\n grid-area: field-pattern;\n}\n.field-folder {\n grid-area: field-folder;\n}\n.field-type {\n grid-area: field-type;\n}\n.field-changeset {\n grid-area: field-changeset;\n}\n.field-category {\n grid-area: field-category;\n}\n\n.ch-tab-slot {\n inline-size: 100%;\n overflow: auto;\n}\n\n// tab\n.tab {\n // WA / TODO: Mercury should provide an additional class to remove tab border\n border: none !important;\n}\n\n// tabular grid\n.tabular-grid {\n block-size: 100%;\n position: relative;\n overflow: auto;\n}\n.tabular-grid-cell.tabular-grid-cell-description {\n max-inline-size: 600px;\n}\n\ngx-ide-loader {\n position: absolute;\n inline-size: 100%;\n block-size: 100%;\n}\n\nch-tabular-grid-rowset-empty {\n position: relative; // makes this the bounder element for the loader\n}\n\nch-tabular-grid.tabular-grid--empty::part(main) {\n // WA to avoid scrollbar flickering when displaying the empty-state message\n overflow: hidden;\n}\n\n.tooltip {\n position: absolute;\n}\n","// Stencil\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n Method,\n State,\n Watch\n} from \"@stencil/core\";\n\n// Other Libraries\nimport {\n ChEditCustomEvent,\n ComboBoxModel,\n TabModel,\n TabularGridMarkingChangedEvent,\n TabularGridRowContextMenuEvent,\n TabularGridSelectionChangedEvent\n} from \"@genexus/chameleon-controls-library\";\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\nimport {\n renderObjectStateWithIcon,\n renderObjectTypeWithIcon\n} from \"../common/utilities\";\nimport { ObjectState } from \"../common/types\";\n\n// Custom Imports\nimport { Locale } from \"../../../common/locale\";\nimport { config } from \"../../../common/config\";\nimport {\n GxOption,\n ContextMenuInfo,\n ObjectType,\n ItemsCheckedState,\n ItemsCheckedResult\n} from \"../../../common/types\";\n\nimport { formatDate } from \"../../../common/helpers\";\nimport {\n mapGxOptionsToComboBoxItemModel,\n mapObjectTypeToComboBoxItemModel\n} from \"./helpers\";\n\nconst FILTER_ICON = getIconPath({\n category: \"window-tools\",\n name: \"filter\",\n colorType: \"primary\"\n});\n\nconst FILTER_ICON_EMPTY = getIconPath({\n category: \"window-tools\",\n name: \"filter\",\n colorType: \"on-surface\"\n});\n\nconst FILTER_WITH_CONDITIONS_ICON = getIconPath({\n category: \"window-tools\",\n name: \"filter-conditions\",\n colorType: \"primary\"\n});\n\nconst RESET_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"reset\",\n colorType: \"primary\"\n});\n\nconst ALL_OPTION = \"All\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/checkbox\",\n \"components/combo-box\",\n \"components/edit\",\n \"components/tab\",\n \"components/icon\",\n \"components/tabular-grid\",\n \"components/tooltip\",\n \"chameleon/scrollbar\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/typography\",\n \"utils/spacing\"\n];\n@Component({\n tag: \"gx-ide-team-dev-commit\",\n styleUrl: \"commit.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-commit\"]\n})\nexport class GxIdeTeamDevCommit {\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 #loadDataCalledFirstTime = false; // pending commits grid checkboxes, should be checked, after loadData has loaded commits for the first time.\n #renderedFirstTime = false;\n #commitsTabModel: TabModel = [\n { id: \"pending-commits\", name: \"Pending Commits\" },\n { id: \"ignored-objects\", name: \"Ignored Objects\" }\n ];\n\n @Element() el: HTMLGxIdeTeamDevCommitElement;\n\n // filters\n #categoriesEl!: HTMLChComboBoxRenderElement;\n #changeSetEl!: HTMLChComboBoxRenderElement;\n #commitCommentEl!: HTMLChEditElement;\n #foldersEl!: HTMLChComboBoxRenderElement;\n #patternEl!: HTMLChEditElement;\n #typesEl!: HTMLChComboBoxRenderElement;\n // other\n #chGridIgnoredObjectsEl!: HTMLChTabularGridElement;\n #chGridPendingCommitsEl!: HTMLChTabularGridElement;\n\n @State() comment = \"\";\n @State() filterHasConditions = false;\n @State() ignoredObjects: ModifiedObjectData[] = [];\n @State() pendingCommits: ModifiedObjectData[] = [];\n @State() commentInputHasError: boolean = false;\n @State() commitingObjects: boolean = false;\n @State() filtersHidden = true;\n // Combo box models\n @State() folderOptionsModel: ComboBoxModel;\n @State() typeOptionsModel: ComboBoxModel;\n @State() changeSetOptionsModel: ComboBoxModel;\n @State() categoryOptionsModel: ComboBoxModel;\n\n /**\n * To show a loader when the component is loading\n */\n @State() loading: boolean = true;\n\n /**\n * Possible values for Categories filter\n */\n @Prop() readonly categories: GxOption[];\n @Watch(\"categories\")\n categoriesChangedHandler(newCategoriesOptions: GxOption[]) {\n mapGxOptionsToComboBoxItemModel(newCategoriesOptions);\n }\n\n /**\n * Possible values for ChangeSet filter\n */\n @Prop() readonly changeSet: GxOption[];\n @Watch(\"changeSet\")\n changeSetChangedHandler(newChangeSetOptions: GxOption[]) {\n this.changeSetOptionsModel =\n mapGxOptionsToComboBoxItemModel(newChangeSetOptions);\n }\n\n /**\n * Callback invoked when user starts the commit process\n */\n @Prop() readonly commitCallback: CommitCallback;\n\n /**\n * Possible values for Folders filter\n */\n @Prop() readonly folders: GxOption[];\n @Watch(\"folders\")\n foldersChangedHandler(newFolderOptions: GxOption[]) {\n this.folderOptionsModel = mapGxOptionsToComboBoxItemModel(newFolderOptions);\n }\n\n /**\n * Callback invoked when user press Recent Comments button.\n */\n @Prop() readonly getRecentCommentCallback: GetRecentComment;\n\n /**\n * Callback invoked when user wants to reload the grid\n */\n @Prop() readonly loadCallback: LoadCallback;\n\n /**\n * Callback invoked when the user activates the context menu in any grid\n */\n @Prop() readonly objectsContextMenuCallback: ObjectsContextMenuCallback;\n\n /**\n * Callback invoked when user check/uncheck any item from the 'Pending to Commit' grid\n */\n @Prop() readonly pendingItemsCheckedCallback!: PendingItemsCheckedCallback;\n\n /**\n * Callback invoked when the user selects rows from the grid\n */\n @Prop() readonly selectCallback: CommitSelectCallback;\n\n /**\n * Possible values for Type filter\n */\n @Prop() readonly types: ObjectType[];\n @Watch(\"types\")\n typesChangedHandler(newTypesOptions: ObjectType[]) {\n this.typeOptionsModel = mapObjectTypeToComboBoxItemModel(newTypesOptions);\n }\n\n /**\n * Emitted once after the component fully loads and the first render occurs\n */\n @Event() componentDidLoadEvent: EventEmitter<boolean>;\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs\n */\n @Event() componentDidRenderFirstTime: EventEmitter<boolean>;\n\n async componentDidLoad() {\n await this.#loadData();\n this.#loadDataCalledFirstTime = true;\n this.componentDidLoadEvent.emit(true);\n this.#commitCommentEl.focus();\n }\n\n async componentDidRender() {\n if (!this.#renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this.#componentLocale.componentName\n );\n this.#renderedFirstTime = true;\n }\n\n if (this.#loadDataCalledFirstTime) {\n // call this method only once\n await this.#markAllPendingCommitsRows();\n // attach \"rowMarkingChanged\" after rows have been checked for the first time.\n this.#chGridPendingCommitsEl.addEventListener(\n \"rowMarkingChanged\",\n this.#pendingCommitsRowMarkingChangedHandler\n );\n this.#loadDataCalledFirstTime = false;\n }\n }\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.#initializeComboBoxModels();\n }\n\n #initializeComboBoxModels = () => {\n this.foldersChangedHandler(this.folders);\n this.typesChangedHandler(this.types);\n this.changeSetChangedHandler(this.changeSet);\n this.categoriesChangedHandler(this.categories);\n };\n\n /**\n * Method used by the Host to force a data refresh in the grids\n */\n @Method()\n async reload(): Promise<void> {\n this.#loadData();\n }\n\n #commitCallbackHandler = async () => {\n const comment = this.#commitCommentEl.value;\n if (!comment.length) {\n // A comment is required to commit.\n this.commentInputHasError = true;\n return;\n }\n\n this.commitingObjects = true;\n this.commentInputHasError = false;\n const pendingCommitsCheckedIds =\n await this.#chGridPendingCommitsEl.getMarkedRows();\n\n await this.commitCallback(pendingCommitsCheckedIds, comment);\n this.commitingObjects = false;\n };\n\n #evaluateFilterConditions = () => {\n // TODO: This should update\n if (\n this.#patternEl.value !== \"\" ||\n this.#changeSetEl.value !== ALL_OPTION ||\n this.#typesEl.value !== ALL_OPTION ||\n this.#foldersEl.value !== ALL_OPTION ||\n this.#categoriesEl.value !== ALL_OPTION\n ) {\n this.filterHasConditions = true;\n } else {\n this.filterHasConditions = false;\n }\n };\n\n #getRecentCommentHandler = async () => {\n if (this.getRecentCommentCallback) {\n const response = await this.getRecentCommentCallback();\n if (response) {\n this.#commitCommentEl.value = response;\n }\n }\n };\n\n #gridOnSelectionChangedCallbackHandler =\n (grid: CommitSourceType) =>\n async (ev: CustomEvent<TabularGridSelectionChangedEvent>) => {\n if (this.selectCallback) {\n await this.selectCallback(grid, ev.detail.rowsId);\n }\n };\n\n #handleColumnSortChanged = (e: CustomEvent) => {\n const { columnId, sortDirection } = e.detail;\n\n const aux = this.pendingCommits;\n aux.sort((a: any, b: any) => {\n if (a[columnId] < b[columnId]) {\n return sortDirection === \"asc\" ? -1 : 1;\n }\n if (a[columnId] > b[columnId]) {\n return sortDirection === \"asc\" ? 1 : -1;\n }\n return 0;\n });\n\n this.pendingCommits = [...aux];\n };\n\n #loadData = async () => {\n this.loading = true;\n const filtersData: FiltersData = {\n pattern: this.#patternEl.value,\n changeSet: this.#changeSetEl.value,\n folder: this.#foldersEl.value,\n category: this.#categoriesEl.value,\n type: this.#typesEl.value\n };\n\n this.#evaluateFilterConditions();\n\n await this.loadCallback(filtersData).then(async ({ pending, ignored }) => {\n this.pendingCommits = [...pending];\n this.ignoredObjects = [...ignored];\n });\n this.loading = false;\n this.#updateTabModel();\n };\n\n #markAllPendingCommitsRows = async () => {\n await this.#chGridPendingCommitsEl.markAllRows();\n };\n\n #objectsOnContextMenuCallbackHandler =\n (grid: CommitSourceType) =>\n async (ev: CustomEvent<TabularGridRowContextMenuEvent>) => {\n ev.preventDefault();\n ev.stopPropagation();\n let selection: string[] = [];\n if (grid === \"commit\") {\n selection = ev.detail.selectedRowsId;\n } else if (grid === \"ignored\") {\n selection = await this.#chGridIgnoredObjectsEl.getSelectedRows();\n }\n if (this.objectsContextMenuCallback) {\n await this.objectsContextMenuCallback(grid, {\n selection: selection,\n clientX: ev.detail.clientX,\n clientY: ev.detail.clientY\n });\n }\n };\n\n #pendingCommitsRowMarkingChangedHandler = async (\n e: CustomEvent<TabularGridMarkingChangedEvent>\n ): Promise<void> => {\n // remove \"rowMarkingChanged\" until checkboxes have been added/removed on #togglePendingCommitsCheckboxes, to prevent loops.\n this.#chGridPendingCommitsEl.removeEventListener(\n \"rowMarkingChanged\",\n this.#pendingCommitsRowMarkingChangedHandler\n );\n if (this.#chGridPendingCommitsEl) {\n const addedRowsIds = e.detail.addedRowsId;\n const removedRowsId = e.detail.removedRowsId;\n\n const pendingItemCheckedResult = await this.pendingItemsCheckedCallback({\n itemsChecked: addedRowsIds,\n itemsUnchecked: removedRowsId\n });\n\n if (pendingItemCheckedResult === undefined) {\n // undo check/uncheck\n await this.#revertPendingCommitsCheckboxes(addedRowsIds, removedRowsId);\n } else {\n await this.#togglePendingCommitsCheckboxes(pendingItemCheckedResult);\n }\n this.#chGridPendingCommitsEl.addEventListener(\n \"rowMarkingChanged\",\n this.#pendingCommitsRowMarkingChangedHandler\n );\n }\n };\n\n #renderTabularGridColumnSet = (\n withCheckboxes: boolean = false\n ): HTMLChTabularGridColumnsetElement => {\n return (\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n {withCheckboxes && (\n <ch-tabular-grid-column\n class=\"tabular-grid-column\"\n columnType=\"rich\"\n richRowSelector\n richRowSelectorMode=\"mark\"\n settingable={false}\n sortable={false}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n )}\n <ch-tabular-grid-column\n columnId=\"name\"\n class=\"tabular-grid-column\"\n sortable\n columnName=\"Name\"\n settingable={false}\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"type\"\n class=\"tabular-grid-column\"\n sortable\n columnName=\"Type\"\n settingable={false}\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"description\"\n class=\"tabular-grid-column\"\n columnName=\"Description\"\n settingable={false}\n sortable\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"modifiedOn\"\n class=\"tabular-grid-column\"\n sortable\n columnName=\"Modified On\"\n settingable={false}\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"module\"\n class=\"tabular-grid-column\"\n columnName=\"Module\"\n settingable={false}\n sortable\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"localState\"\n class=\"tabular-grid-column\"\n columnName=\"Local State\"\n settingable={false}\n sortable\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.maxContent}\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnId=\"lastSynchronized\"\n class=\"tabular-grid-column\"\n columnName=\"Last Synchronized\"\n settingable={false}\n sortable\n onColumnSortChanged={this.#handleColumnSortChanged}\n size={config.tabularGrid.colSize.auto}\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n );\n };\n\n #renderTabularGridCommonCells = (object: ModifiedObjectData) => {\n return [\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {object.name}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {renderObjectTypeWithIcon(object.type)}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell tabular-grid-cell-description\">\n {object.description}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {`${formatDate(object.modifiedOn)}`}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {object.module}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {renderObjectStateWithIcon(object.localState)}\n </ch-tabular-grid-cell>,\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {`${formatDate(object.lastSynchronized)}`}\n </ch-tabular-grid-cell>\n ];\n };\n\n #renderIgnoredObjectsGrid = (): Element => {\n const tabularGridEmpty =\n this.ignoredObjects?.length === 0 || !this.ignoredObjects;\n return (\n <ch-tabular-grid\n // ignored objects grid render\n class={{\n \"tabular-grid\": true,\n \"tabular-grid--empty\": tabularGridEmpty\n }}\n rowSelectionMode=\"multiple\"\n ref={(el: HTMLChTabularGridElement) =>\n (this.#chGridIgnoredObjectsEl = el)\n }\n allowColumnReorder={false}\n part=\"ch-grid-pending-commits\"\n onRowContextMenu={this.#objectsOnContextMenuCallbackHandler(\"ignored\")}\n onSelectionChanged={this.#gridOnSelectionChangedCallbackHandler(\n \"ignored\"\n )}\n >\n {this.commitingObjects && (\n <gx-ide-loader\n loaderTitle={this.#componentLocale.loader.title}\n description={this.#componentLocale.loader.description}\n show\n ></gx-ide-loader>\n )}\n\n {this.#renderTabularGridColumnSet()}\n {this.ignoredObjects.length > 0 ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.ignoredObjects.map((obj: ModifiedObjectData) => (\n <ch-tabular-grid-row\n rowid={obj.id}\n selected\n class=\"tabular-grid-row\"\n >\n {this.#renderTabularGridCommonCells(obj)}\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty>\n <gx-ide-empty-state\n stateIconSrc={FILTER_ICON_EMPTY}\n stateTitle={this.#componentLocale.emptyIgnoredObjects}\n isAnimated={true}\n ></gx-ide-empty-state>\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n </ch-tabular-grid>\n );\n };\n\n #renderPendingCommitsGrid = (): Element => {\n const withCheckboxes = true;\n const tabularGridEmpty =\n this.pendingCommits?.length === 0 || !this.pendingCommits;\n\n if (this.loading) {\n return (\n <div class=\"tabular-grid\">\n <gx-ide-loader\n loaderTitle={this.#componentLocale.objectsLoader.title}\n description={this.#componentLocale.objectsLoader.description}\n show\n ></gx-ide-loader>\n </div>\n );\n }\n return (\n <ch-tabular-grid\n // pending commits grid render\n class={{\n \"tabular-grid\": true,\n \"tabular-grid--empty\": tabularGridEmpty\n }}\n rowSelectionMode=\"multiple\"\n ref={(el: HTMLChTabularGridElement) =>\n (this.#chGridPendingCommitsEl = el)\n }\n allowColumnReorder={false}\n part=\"ch-grid-pending-commits\"\n onRowContextMenu={this.#objectsOnContextMenuCallbackHandler(\"commit\")}\n onSelectionChanged={this.#gridOnSelectionChangedCallbackHandler(\n \"commit\"\n )}\n >\n {this.commitingObjects && (\n <gx-ide-loader\n loaderTitle={this.#componentLocale.loader.title}\n description={this.#componentLocale.loader.description}\n show\n ></gx-ide-loader>\n )}\n\n {this.#renderTabularGridColumnSet(withCheckboxes)}\n\n {this.pendingCommits.length > 0 ? (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n {this.pendingCommits.map((obj: ModifiedObjectData) => (\n <ch-tabular-grid-row rowid={obj.id} class=\"tabular-grid-row\">\n <ch-tabular-grid-cell\n cell-type=\"rich\"\n row-selector\n class=\"tabular-grid-cell\"\n ></ch-tabular-grid-cell>\n {this.#renderTabularGridCommonCells(obj)}\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid-rowset>\n ) : (\n <ch-tabular-grid-rowset class=\"tabular-grid-rowset\">\n <ch-tabular-grid-rowset-empty>\n <gx-ide-empty-state\n stateIconSrc={FILTER_ICON_EMPTY}\n stateTitle={this.#componentLocale.emptyPendingCommitsObjects}\n isAnimated={true}\n ></gx-ide-empty-state>\n </ch-tabular-grid-rowset-empty>\n </ch-tabular-grid-rowset>\n )}\n </ch-tabular-grid>\n );\n };\n\n #revertPendingCommitsCheckboxes = async (\n addedRowsIds: string[],\n removedRowsId: string[]\n ) => {\n if (this.#chGridPendingCommitsEl) {\n for (const rowId of addedRowsIds) {\n await this.#chGridPendingCommitsEl.markRow(rowId, false);\n }\n for (const rowId of removedRowsId) {\n await this.#chGridPendingCommitsEl.markRow(rowId, true);\n }\n }\n };\n\n #togglePendingCommitsCheckboxes = async (\n itemsToToggle: ItemsCheckedResult\n ) => {\n if (this.#chGridPendingCommitsEl) {\n const itemsToCheck: string[] = itemsToToggle.itemsToCheck;\n const itemsToUncheck: string[] = itemsToToggle.itemsToUncheck;\n // check\n for (const rowId of itemsToCheck) {\n await this.#chGridPendingCommitsEl.markRow(rowId, true);\n }\n // uncheck\n for (const rowId of itemsToUncheck) {\n await this.#chGridPendingCommitsEl.markRow(rowId, false);\n }\n }\n };\n\n #updateTabModel = () => {\n this.#commitsTabModel = [\n {\n id: \"pending-commits\",\n name: `${this.#componentLocale.tabs.pendingCommits} (${\n this.pendingCommits.length\n })`\n },\n {\n id: \"ignored-objects\",\n name: `${this.#componentLocale.tabs.ignoredObjects} (${\n this.ignoredObjects.length\n })`\n }\n ];\n };\n\n #commentInputHandler = async (\n event: ChEditCustomEvent<string> | InputEvent\n ) => {\n const comment = event.detail as string;\n if (comment.length && this.commentInputHasError) {\n // remove error style and tooltip\n this.commentInputHasError = false;\n }\n };\n\n #toggleFiltersHandler = () => {\n this.filtersHidden = !this.filtersHidden;\n };\n\n #onTabActivated = (evt: CustomEvent) => {\n evt.stopImmediatePropagation();\n };\n\n render() {\n const filterIcon = this.filterHasConditions\n ? FILTER_WITH_CONDITIONS_ICON\n : FILTER_ICON;\n\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <section class=\"section\">\n <header class=\"header spacing-body\">\n <div class=\"header__first-row field-group\">\n <div class=\"buttons-spacer\">\n <div\n // pattern\n class=\"field field-inline field-comment\"\n >\n <label class=\"label\" htmlFor=\"pattern-form-text\">\n {this.#componentLocale.header.commentLabel}\n </label>\n <ch-edit\n // commit comment\n id=\"comment\"\n class={{\n \"input\": true,\n \"commit-input\": true,\n \"scrollable\": true,\n \"input-error\": this.commentInputHasError\n }}\n placeholder={\n this.#componentLocale.header.commentPlaceholder\n }\n onInput={this.#commentInputHandler}\n value={this.comment}\n ref={(el: HTMLChEditElement) =>\n (this.#commitCommentEl = el as HTMLChEditElement)\n }\n part=\"comment\"\n ></ch-edit>\n </div>\n <button\n id=\"filter-toggle-button\"\n class=\"button-teritary button-icon-only\"\n aria-label={this.#componentLocale.header.filterAriaLabel}\n aria-expanded={this.filtersHidden ? \"false\" : \"true\"}\n aria-controls=\"filters-container\"\n onClick={this.#toggleFiltersHandler}\n title={this.#componentLocale.header.filterAriaLabel}\n >\n <ch-image class=\"icon-md\" src={filterIcon}></ch-image>\n </button>\n\n <button\n class=\"button-teritary button-icon-only\"\n aria-label={this.#componentLocale.header.reloadAriaLabel}\n title={this.#componentLocale.header.reloadAriaLabel}\n onClick={this.#loadData}\n part={this.#componentLocale.header.reloadAriaLabel}\n >\n <ch-image class=\"icon-md\" src={RESET_ICON}></ch-image>\n </button>\n </div>\n {this.commentInputHasError && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={\n this.#commitCommentEl as unknown as HTMLButtonElement\n }\n blockAlign=\"outside-end\"\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.#componentLocale.header.commentEmptyError}\n </ch-tooltip>\n )}\n\n <div class=\"buttons-spacer\">\n <button\n type=\"button\"\n class=\"button-secondary recent-comments-btn\"\n part=\"button button-location\"\n onClick={this.#getRecentCommentHandler}\n aria-label={this.#componentLocale.header.recentCommentsButton}\n disabled={this.commitingObjects}\n >\n {this.#componentLocale.header.recentCommentsButton}\n </button>\n </div>\n </div>\n\n <div\n id=\"filters-container\"\n aria-labelledby=\"filter-toggle-button\"\n class={{\n \"filters-container-visible\": !this.filtersHidden,\n \"filters-container\": true\n }}\n inert={this.filtersHidden}\n hidden={this.filtersHidden}\n >\n <div>\n <div slot=\"filter\" class=\"filter field-group\">\n <div\n // pattern\n class=\"field field-block field-pattern\"\n >\n <label class=\"label\" htmlFor=\"pattern-form-text\">\n {this.#componentLocale.filtersMenu.patternLabel}\n </label>\n <ch-edit\n id=\"pattern-form-text\"\n class=\"input\"\n value=\"\"\n ref={(el: HTMLChEditElement) =>\n (this.#patternEl = el as HTMLChEditElement)\n }\n debounce={config.inputDebounce}\n onInput={this.#loadData}\n part=\"pattern-form-text\"\n ></ch-edit>\n </div>\n\n <div\n // folder\n class=\"field field-block field-folder\"\n >\n <label class=\"label\" htmlFor=\"folder-combo\">\n {this.#componentLocale.filtersMenu.folderLabel}\n </label>\n <ch-combo-box-render\n id=\"folder-combo\"\n class=\"combo-box\"\n value={this.folders[0].id}\n model={this.folderOptionsModel}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#foldersEl = el as HTMLChComboBoxRenderElement)\n }\n onInput={this.#loadData}\n part=\"folder-combo\"\n ></ch-combo-box-render>\n </div>\n\n <div\n // type\n class=\"field field-block field-type\"\n >\n <label class=\"label\" htmlFor=\"type-combo\">\n {this.#componentLocale.filtersMenu.typeLabel}\n </label>\n <ch-combo-box-render\n id=\"type-combo\"\n class=\"combo-box\"\n value={this.types[0].id}\n model={this.typeOptionsModel}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#typesEl = el as HTMLChComboBoxRenderElement)\n }\n onInput={this.#loadData}\n part=\"type-combo\"\n ></ch-combo-box-render>\n </div>\n\n <div\n // changeset\n class=\"field field-block field-changeset\"\n >\n <label class=\"label\" htmlFor=\"changeset-combo\">\n {this.#componentLocale.filtersMenu.changesetLabel}\n </label>\n <ch-combo-box-render\n id=\"changeset-combo\"\n class=\"combo-box\"\n value={this.changeSet[0].id}\n model={this.changeSetOptionsModel}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#changeSetEl = el as HTMLChComboBoxRenderElement)\n }\n onInput={this.#loadData}\n part=\"changeset-combo\"\n ></ch-combo-box-render>\n </div>\n\n <div\n // category\n class=\"field field-block field-category\"\n >\n <label class=\"label\" htmlFor=\"category-combo\">\n {this.#componentLocale.filtersMenu.categoryLabel}\n </label>\n <ch-combo-box-render\n id=\"category-combo\"\n class=\"combo-box\"\n value={this.categories[0].id}\n model={this.categoryOptionsModel}\n ref={(el: HTMLChComboBoxRenderElement) =>\n (this.#categoriesEl = el as HTMLChComboBoxRenderElement)\n }\n onInput={this.#loadData}\n part=\"category-combo\"\n ></ch-combo-box-render>\n </div>\n </div>\n </div>\n </div>\n </header>\n\n <ch-tab-render\n class=\"tab scrollable\"\n tabListPosition=\"block-start\"\n model={this.#commitsTabModel}\n selectedId=\"pending-commits\"\n showTabListEnd\n overflow=\"auto auto\"\n contain=\"size\"\n onSelectedItemChange={this.#onTabActivated}\n >\n <div\n class=\"ch-tab-slot\"\n slot=\"pending-commits\"\n part=\"pending-commits\"\n >\n {this.#renderPendingCommitsGrid()}\n </div>\n <div\n class=\"ch-tab-slot\"\n slot=\"ignored-objects\"\n part=\"ignored-objects\"\n >\n {this.#renderIgnoredObjectsGrid()}\n </div>\n </ch-tab-render>\n\n <footer class=\"control-footer control-footer-with-border spacing-body-inline spacing-body-block-end\">\n <button\n class=\"button-primary\"\n onClick={this.#commitCallbackHandler}\n part=\"commit-button\"\n disabled={this.commitingObjects}\n >\n {this.#componentLocale.footer.commitButton}\n </button>\n </footer>\n </section>\n </Host>\n );\n }\n}\nexport type CommitCallback = (\n selection: string[],\n commitCommentEl: string\n) => Promise<boolean>;\n\nexport type CommitData = {\n pending: ModifiedObjectData[];\n ignored: ModifiedObjectData[];\n};\n\nexport type CommitSelectCallback = (\n grid: CommitSourceType,\n selectionIds: string[]\n) => Promise<void>;\n\nexport type CommitSourceType = \"commit\" | \"ignored\";\n\nexport type FiltersData = {\n pattern: string;\n changeSet: string;\n type: string;\n folder: string;\n category: string;\n};\n\nexport type GetRecentComment = () => Promise<string | undefined>;\n\nexport type ItemCheckedCallback = (\n checkedItemIds: string[]\n) => Promise<ItemsCheckedResult | undefined>;\n\nexport type LoadCallback = (filters: FiltersData) => Promise<CommitData>;\n\nexport type ModifiedObjectData = {\n id: string;\n name: string;\n iconType: string;\n state: ObjectState;\n type: ObjectType;\n description: string;\n modifiedOn: Date;\n module: string;\n localState: ObjectState;\n lastSynchronized: Date;\n user: string;\n};\n\nexport type ObjectsContextMenuCallback = (\n grid: CommitSourceType,\n contextMenuInfo: ContextMenuInfo\n) => Promise<void>;\n\nexport type PendingItemsCheckedCallback = (\n pendingItemsCheckedState: ItemsCheckedState\n) => Promise<ItemsCheckedResult | undefined>;\n"],"version":3}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as registerInstance, h, H as Host, a as getElement } from './index-eace714c.js';
|
|
2
2
|
import { g as getIconPath } from './MERCURY_ASSETS-ccf43ae3.js';
|
|
3
|
-
import { c as config } from './config-
|
|
3
|
+
import { c as config } from './config-9eaeb14b.js';
|
|
4
4
|
import { f as formatDate } from './helpers-7960f084.js';
|
|
5
5
|
import { L as Locale } from './locale-e5107fad.js';
|
|
6
6
|
import { r as renderObjectTypeWithIcon, a as renderObjectStateWithIcon } from './utilities-482e01e6.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-eace714c.js';
|
|
2
2
|
import { L as Locale } from './locale-e5107fad.js';
|
|
3
|
-
import { c as config } from './config-
|
|
3
|
+
import { c as config } from './config-9eaeb14b.js';
|
|
4
4
|
import { r as renderListItems } from './render-list-item-9d604b22.js';
|
|
5
5
|
|
|
6
6
|
const commentsToListItemsData = (comments) => {
|
|
@@ -1,43 +1,57 @@
|
|
|
1
1
|
import { r as registerInstance, c as createEvent, g as getAssetPath, h, H as Host, a as getElement } from './index-eace714c.js';
|
|
2
|
+
import { g as getIconPath } from './MERCURY_ASSETS-ccf43ae3.js';
|
|
3
|
+
import { c as config } from './config-9eaeb14b.js';
|
|
2
4
|
import { L as Locale } from './locale-e5107fad.js';
|
|
3
|
-
import {
|
|
5
|
+
import { f as formatDate } from './helpers-7960f084.js';
|
|
4
6
|
|
|
5
|
-
const updatePartialSelectionCss = ":root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-01--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-01-font-weight);font-size:var(--ds-title-01-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-02{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-02--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-02-font-weight);font-size:var(--ds-title-02-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--color-on-primary)}.gxg-title-03{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-03--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-03-font-weight);font-size:var(--ds-title-03-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;text-transform:uppercase;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-04{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-04--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-04-font-weight);font-size:var(--ds-title-04-font-size);letter-spacing:var(--ds-base-font-letter-spacing--comfortable);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-title-05{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable)}.gxg-title-05--negative{font-family:var(--ds-base-font-family-primary);font-weight:var(--ds-title-05-font-weight);font-size:var(--ds-title-05-font-size);letter-spacing:var(--ds-base-font-letter-spacing--regular);color:var(--ds-base-font-color);text-align:start;line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable)}.gxg-text--negative{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--negative)}.gxg-text--gray{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--dimmed)}.gxg-quote{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);font-style:italic}.gxg-quote--negative{color:var(--ds-base-font-color--negative)}.gxg-link{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--ds-base-font-color--link-hover)}.gxg-link:active{color:var(--ds-base-font-color--link-active)}.gxg-link-gray{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed)}.gxg-link-gray:hover{line-height:unset;font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--link);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--ds-base-font-color--dimmed);filter:brightness(1.4)}.gxg-alert-error{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--error);display:inline-block}.gxg-alert-warning{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--warning);display:inline-block}.gxg-alert-success{font-family:var(--ds-base-font-family-primary);font-size:var(--ds-base-font-size);color:var(--ds-base-font-size-color);font-weight:var(--ds-base-font-size-weight);line-height:var(--ds-base-font-line-height--comfortable);color:var(--ds-base-font-color--success);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--ds-base-font-family-primary);font-weight:var(--gxg-label-font-weight);font-size:var(--gxg-label-font-size);color:var(--gxg-label-color);text-align:center;line-height:1.455em;display:flex;align-items:center}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-scrollbar{}.gxg-scrollbar::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gxg-scrollbar::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gxg-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gxg-scrollbar::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}:host{display:grid;block-size:100%}.card-regular{background-color:var(--mer-surface__elevation--01);border:var(--mer-border__width--sm) solid var(--mer-border-color__on-elevation--01);border-radius:var(--mer-border__radius--md);padding:var(--mer-spacing--md) var(--mer-spacing--md);display:grid}.card-small{background-color:var(--mer-surface__elevation--02);border-radius:var(--mer-border__radius--sm);padding:var(--mer-spacing--sm) var(--mer-spacing--sm)}.card-small--actionable:hover{background-color:var(--mer-color__neutral-gray--600)}.card-small--actionable:active{background-color:var(--mer-color__neutral-gray--650)}.card-small:focus-visible{outline:var(--focus__outline-width) var(--focus__outline-style) var(--focus__outline-color);outline-offset:var(--focus__outline-offset)}.empty-state{block-size:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--mer-spacing--sm);text-align:center}.empty-state__title,.empty-state__button,.empty-state__link{max-inline-size:300px}.opacity-0{opacity:0}.opacity-1{opacity:1}.display-contents{display:contents}.pill-tag{padding:1px 4px;border-radius:2px;min-inline-size:40px;text-align:center;margin-inline-end:10px;font-size:11px}.gxi-hidden{display:none !important}.gxi-full-height{height:100%}.gxi-overflow-auto{overflow:auto}.gxi-display-flex{display:flex}.align-start{display:flex;align-items:start}.align-center{display:flex;align-items:center}.align-end{display:flex;align-items:end}.overflow-auto{overflow:auto}.justify-start{display:flex;justify-content:start}.justify-center{display:flex;justify-content:center}.justify-end{display:flex;justify-content:end}.grid{display:grid;grid-row-gap:var(--gx-ide-grid-row-gap);grid-column-gap:var(--gx-ide-grid-column-gap);grid-template-rows:auto}ch-grid-cell{display:flex}ch-grid{overflow:auto;height:100%}ch-grid-column{z-index:99;border-bottom:1px solid var(--mer-color__neutral-gray--800)}ch-grid-column:first-child{padding-inline-start:var(--gx-ide-container__padding) !important}ch-grid-column:last-child{padding-inline-end:var(--gx-ide-container__padding) !important}ch-grid-cell{--mer-spacing--xs:var(--gx-ide-container__padding)}.layout{display:grid;gap:var(--mer-spacing--lg);box-sizing:border-box}.layout--two-cols{grid-template-columns:1fr 1fr}.layout--space-above{padding-block-start:var(--mer-spacing--lg)}gxg-tabs{box-shadow:none}:host(.gx-ide-component){height:100% !important;display:flex !important;flex-direction:column !important}:host(:focus-within) gx-ide-top-bar::part(wrapper){background-color:var(--color-secondary-enabled)}.gx-ide-main-wrapper{color:var(--gx-ide-component-text-color);font-weight:var(--mer-font__weight--regular);font-size:var(--mer-font__size--xs);font-family:var(--mer-font-family--primary);height:100%;background-color:var(--gx-ide-component-background-color);display:flex;flex-direction:column;flex-grow:1;box-sizing:border-box}.gx-ide-main{flex-grow:1;overflow-y:auto;}.gx-ide-main::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-main::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-main::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-main::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-main::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.gx-ide-overflow{overflow-y:auto;}.gx-ide-overflow::-webkit-scrollbar{width:var(--gxg-scrollbar-width);height:var(--gxg-scrollbar-width)}.gx-ide-overflow::-webkit-scrollbar-track{background-color:var(--gxg-scrollbar-track-background);border-radius:var(--gxg-scrollbar-track-border-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb{background-color:var(--gxg-scrollbar-track-thumb-background);border-radius:var(--gxg-scrollbar-track-thumb-radius)}.gx-ide-overflow::-webkit-scrollbar-thumb:hover{background-color:var(--gxg-scrollbar-track-thumb-hover-background)}.gx-ide-overflow::-webkit-scrollbar-corner{background:rgba(0, 0, 0, 0)}.tree-view-primary{font-size:var(--mer-font__size--2xs)}p{margin:0;font-size:var(--mer-font__size--xxs)}.buttons-container{display:flex;gap:var(--mer-spacing--xs)}:host{display:block}.top-actions{display:flex;gap:var(--gx-ide-grid-column-gap);padding:var(--mer-spacing--xs) var(--gx-ide-container__padding);flex-direction:row-reverse;border-bottom:1px solid var(--gx-ide-container-border-color)}.tabular-grid{block-size:100%}";
|
|
7
|
+
const updatePartialSelectionCss = ":host{display:grid;block-size:100%;overflow:auto;grid-template-rows:max-content 1fr max-content;overflow:auto}.section{display:contents}.header{justify-content:end}.tabular-grid-main{overflow:auto;block-size:100%}.tabular-grid-main ch-tabular-grid-cell:is(:nth-child(2),:nth-child(3),:nth-child(4)){padding-block:var(--grid-cell__padding-block);padding-inline:var(--grid-cell__padding-inline);align-items:start;justify-content:start;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-inline-size:0}";
|
|
6
8
|
|
|
9
|
+
var __classPrivateFieldGet = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
10
|
+
if (kind === "a" && !f)
|
|
11
|
+
throw new TypeError("Private accessor was defined without a getter");
|
|
12
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
|
|
13
|
+
throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
14
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
15
|
+
};
|
|
16
|
+
var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
17
|
+
if (kind === "m")
|
|
18
|
+
throw new TypeError("Private method is not writable");
|
|
19
|
+
if (kind === "a" && !f)
|
|
20
|
+
throw new TypeError("Private accessor was defined without a setter");
|
|
21
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
|
|
22
|
+
throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
23
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
24
|
+
};
|
|
25
|
+
var _GxIdeTeamDevUpdatePartialSelection__componentLocale, _GxIdeTeamDevUpdatePartialSelection_renderedFirstTime, _GxIdeTeamDevUpdatePartialSelection_shortcutsSrc, _GxIdeTeamDevUpdatePartialSelection_chGridEl, _GxIdeTeamDevUpdatePartialSelection_cancelHandler, _GxIdeTeamDevUpdatePartialSelection_confirmHandler, _GxIdeTeamDevUpdatePartialSelection_getObjectsHandler, _GxIdeTeamDevUpdatePartialSelection_listenChanges, _GxIdeTeamDevUpdatePartialSelection_removeAllHandler, _GxIdeTeamDevUpdatePartialSelection_removeSelectedObjectsHandler, _GxIdeTeamDevUpdatePartialSelection_renderObjects;
|
|
7
26
|
const CSS_BUNDLES = [
|
|
8
27
|
"resets/box-sizing",
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
"
|
|
28
|
+
"components/button",
|
|
29
|
+
"components/edit",
|
|
30
|
+
"components/radio-group",
|
|
31
|
+
"components/tabular-grid",
|
|
32
|
+
"utils/form",
|
|
33
|
+
"utils/layout",
|
|
34
|
+
"utils/spacing",
|
|
35
|
+
"utils/typography"
|
|
16
36
|
];
|
|
37
|
+
const GEMINI_TOOLS_ADD_ICON = getIconPath({
|
|
38
|
+
category: "gemini-tools",
|
|
39
|
+
name: "add-circle",
|
|
40
|
+
colorType: "primary"
|
|
41
|
+
});
|
|
17
42
|
const GxIdeTeamDevUpdatePartialSelection = class {
|
|
18
43
|
constructor(hostRef) {
|
|
19
44
|
registerInstance(this, hostRef);
|
|
20
45
|
this.componentDidLoadEvent = createEvent(this, "componentDidLoadEvent", 7);
|
|
21
46
|
this.componentDidRenderFirstTime = createEvent(this, "componentDidRenderFirstTime", 7);
|
|
22
|
-
this
|
|
23
|
-
this
|
|
24
|
-
|
|
25
|
-
this
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
if ((items === null || items === void 0 ? void 0 : items.length) > 0) {
|
|
31
|
-
this.selection = [...this.selection, ...items];
|
|
32
|
-
this.selectedObjectsIds = [];
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
};
|
|
36
|
-
this.removeSelectedObjectsHandler = () => {
|
|
37
|
-
this.selection = this.selection.filter(item => !this.selectedObjectsIds.includes(item.id));
|
|
38
|
-
this.selectedObjectsIds = [];
|
|
39
|
-
};
|
|
40
|
-
this.confirmHandler = () => {
|
|
47
|
+
_GxIdeTeamDevUpdatePartialSelection__componentLocale.set(this, void 0);
|
|
48
|
+
_GxIdeTeamDevUpdatePartialSelection_renderedFirstTime.set(this, false);
|
|
49
|
+
_GxIdeTeamDevUpdatePartialSelection_shortcutsSrc.set(this, getAssetPath(`./gx-ide-assets/team-dev-update-partial-selection/shortcuts.json`));
|
|
50
|
+
_GxIdeTeamDevUpdatePartialSelection_chGridEl.set(this, void 0);
|
|
51
|
+
_GxIdeTeamDevUpdatePartialSelection_cancelHandler.set(this, () => {
|
|
52
|
+
this.cancelCallback();
|
|
53
|
+
});
|
|
54
|
+
_GxIdeTeamDevUpdatePartialSelection_confirmHandler.set(this, () => {
|
|
41
55
|
if (this.confirmCallback) {
|
|
42
56
|
const allRowsIds = [];
|
|
43
57
|
this.selection.forEach(row => {
|
|
@@ -45,42 +59,50 @@ const GxIdeTeamDevUpdatePartialSelection = class {
|
|
|
45
59
|
});
|
|
46
60
|
this.confirmCallback(allRowsIds);
|
|
47
61
|
}
|
|
48
|
-
};
|
|
49
|
-
this
|
|
50
|
-
this.
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
62
|
+
});
|
|
63
|
+
_GxIdeTeamDevUpdatePartialSelection_getObjectsHandler.set(this, () => {
|
|
64
|
+
this.addCallback().then((items) => {
|
|
65
|
+
if ((items === null || items === void 0 ? void 0 : items.length) > 0) {
|
|
66
|
+
this.selection = [...this.selection, ...items];
|
|
67
|
+
this.selectedObjectsIds = [];
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
_GxIdeTeamDevUpdatePartialSelection_listenChanges.set(this, () => {
|
|
72
|
+
__classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection_chGridEl, "f").addEventListener("selectionChanged", (ev) => {
|
|
58
73
|
this.selectedObjectsIds = ev.detail.rowsId;
|
|
59
74
|
});
|
|
60
|
-
};
|
|
75
|
+
});
|
|
76
|
+
_GxIdeTeamDevUpdatePartialSelection_removeAllHandler.set(this, () => {
|
|
77
|
+
this.selection = [];
|
|
78
|
+
});
|
|
79
|
+
_GxIdeTeamDevUpdatePartialSelection_removeSelectedObjectsHandler.set(this, () => {
|
|
80
|
+
const selection = this.selection.filter(item => !this.selectedObjectsIds.includes(item.id));
|
|
81
|
+
this.selection = selection;
|
|
82
|
+
this.selectedObjectsIds = [];
|
|
83
|
+
});
|
|
84
|
+
_GxIdeTeamDevUpdatePartialSelection_renderObjects.set(this, () => {
|
|
85
|
+
return (h("ch-tabular-grid", { allowColumnReorder: false, columnResizeMode: "single", class: "tabular-grid tabular-grid-main", "row-selection-mode": "multiple", keyboardNavigationMode: "focus", ref: (el) => (__classPrivateFieldSet(this, _GxIdeTeamDevUpdatePartialSelection_chGridEl, el, "f")), part: "ch-grid-objects" }, h("ch-tabular-grid-columnset", { class: "tabular-grid-column-set" }, h("ch-tabular-grid-column", { columnName: "", settingable: false, sortable: false, size: config.tabularGrid.colSize.minContent, class: "tabular-grid-column" }), h("ch-tabular-grid-column", { columnName: __classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection__componentLocale, "f").tableHead.name, settingable: false, size: "1fr", class: "tabular-grid-column" }), h("ch-tabular-grid-column", { columnName: __classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection__componentLocale, "f").tableHead.type, settingable: false, size: "minmax(120px,auto)", class: "tabular-grid-column" }), h("ch-tabular-grid-column", { columnName: __classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection__componentLocale, "f").tableHead.description, settingable: false, size: "minmax(120px,auto)", class: "tabular-grid-column" }), h("ch-tabular-grid-column", { columnName: __classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection__componentLocale, "f").tableHead.modifiedOn, settingable: false, size: config.tabularGrid.colSize.maxContent, class: "tabular-grid-column" })), this.selection.map((obj) => (h("ch-tabular-grid-row", { rowid: obj.id, key: obj.id, class: "tabular-grid-row" }, h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, h("ch-image", { src: obj.typeIcon, class: "icon-md" })), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.name), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.type), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.description), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, `${formatDate(obj.modifiedOn)}`))))));
|
|
86
|
+
});
|
|
61
87
|
this.selectedObjectsIds = [];
|
|
62
|
-
this.displayTitle = false;
|
|
63
88
|
this.addCallback = undefined;
|
|
64
89
|
this.cancelCallback = undefined;
|
|
65
90
|
this.confirmCallback = undefined;
|
|
66
91
|
this.selection = [];
|
|
67
92
|
}
|
|
68
|
-
// 6.COMPONENT LIFECYCLE EVENTS //
|
|
69
|
-
async componentWillLoad() {
|
|
70
|
-
this._componentLocale = await Locale.getComponentStrings(this.el);
|
|
71
|
-
this.componentDidLoadEvent.emit(true);
|
|
72
|
-
}
|
|
73
93
|
componentDidLoad() {
|
|
74
|
-
this.
|
|
94
|
+
__classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection_listenChanges, "f").call(this);
|
|
75
95
|
}
|
|
76
96
|
componentDidRender() {
|
|
77
|
-
if (!this
|
|
78
|
-
this.componentDidRenderFirstTime.emit(this.
|
|
79
|
-
this
|
|
97
|
+
if (!__classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection_renderedFirstTime, "f")) {
|
|
98
|
+
this.componentDidRenderFirstTime.emit(__classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection__componentLocale, "f").componentName);
|
|
99
|
+
__classPrivateFieldSet(this, _GxIdeTeamDevUpdatePartialSelection_renderedFirstTime, true, "f");
|
|
80
100
|
}
|
|
81
101
|
}
|
|
82
|
-
|
|
83
|
-
|
|
102
|
+
async componentWillLoad() {
|
|
103
|
+
__classPrivateFieldSet(this, _GxIdeTeamDevUpdatePartialSelection__componentLocale, await Locale.getComponentStrings(this.el), "f");
|
|
104
|
+
this.componentDidLoadEvent.emit(true);
|
|
105
|
+
}
|
|
84
106
|
/**
|
|
85
107
|
* Validate necessary data input
|
|
86
108
|
*/
|
|
@@ -88,13 +110,30 @@ const GxIdeTeamDevUpdatePartialSelection = class {
|
|
|
88
110
|
const isValid = true;
|
|
89
111
|
return isValid;
|
|
90
112
|
}
|
|
91
|
-
// 10.RENDER() FUNCTION //
|
|
92
113
|
render() {
|
|
93
|
-
|
|
114
|
+
const buttonRemoveSelectedDisabled = !(this.selectedObjectsIds.length > 0);
|
|
115
|
+
return (h(Host, { class: "widget" }, h("ch-theme", { model: CSS_BUNDLES }), h("ch-shortcuts", { src: __classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection_shortcutsSrc, "f") }), h("section", { class: "section" }, h("header", { class: "header field-group control-header header header-two-cols spacing-body-block-start spacing-body-inline" }, h("div", { class: "buttons-spacer" }, h("button", {
|
|
116
|
+
// remove selected button
|
|
117
|
+
class: "button-secondary", onClick: !buttonRemoveSelectedDisabled &&
|
|
118
|
+
__classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection_removeSelectedObjectsHandler, "f"), part: "remove", disabled: buttonRemoveSelectedDisabled
|
|
119
|
+
}, __classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection__componentLocale, "f").btnRemoveSelectedObjects), h("button", {
|
|
120
|
+
// add button
|
|
121
|
+
class: "button-secondary button-icon-and-text", onClick: __classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection_getObjectsHandler, "f"), part: "add"
|
|
122
|
+
}, h("ch-image", { class: "icon-sm", src: GEMINI_TOOLS_ADD_ICON }), __classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection__componentLocale, "f").btnAddObject))), __classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection_renderObjects, "f").call(this), h("footer", { class: "control-footer control-footer-space-between spacing-body-block-end spacing-body-inline" }, h("button", {
|
|
123
|
+
// remove all button
|
|
124
|
+
class: "button-tertiary", onClick: __classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection_removeAllHandler, "f"), disabled: !(this.selection.length > 0), part: "clear"
|
|
125
|
+
}, __classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection__componentLocale, "f").footer.btnRemoveAll), h("div", { class: "buttons-spacer" }, h("button", {
|
|
126
|
+
// cancel button
|
|
127
|
+
class: "button-secondary", onClick: __classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection_cancelHandler, "f"), part: "cancel"
|
|
128
|
+
}, __classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection__componentLocale, "f").footer.btnCancel), h("button", {
|
|
129
|
+
// confirm button
|
|
130
|
+
class: "button-primary", onClick: __classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection_confirmHandler, "f"), part: "confirm"
|
|
131
|
+
}, __classPrivateFieldGet(this, _GxIdeTeamDevUpdatePartialSelection__componentLocale, "f").footer.btnConfirm))))));
|
|
94
132
|
}
|
|
95
133
|
static get assetsDirs() { return ["gx-ide-assets/team-dev-update-partial-selection"]; }
|
|
96
134
|
get el() { return getElement(this); }
|
|
97
135
|
};
|
|
136
|
+
_GxIdeTeamDevUpdatePartialSelection__componentLocale = new WeakMap(), _GxIdeTeamDevUpdatePartialSelection_renderedFirstTime = new WeakMap(), _GxIdeTeamDevUpdatePartialSelection_shortcutsSrc = new WeakMap(), _GxIdeTeamDevUpdatePartialSelection_chGridEl = new WeakMap(), _GxIdeTeamDevUpdatePartialSelection_cancelHandler = new WeakMap(), _GxIdeTeamDevUpdatePartialSelection_confirmHandler = new WeakMap(), _GxIdeTeamDevUpdatePartialSelection_getObjectsHandler = new WeakMap(), _GxIdeTeamDevUpdatePartialSelection_listenChanges = new WeakMap(), _GxIdeTeamDevUpdatePartialSelection_removeAllHandler = new WeakMap(), _GxIdeTeamDevUpdatePartialSelection_removeSelectedObjectsHandler = new WeakMap(), _GxIdeTeamDevUpdatePartialSelection_renderObjects = new WeakMap();
|
|
98
137
|
GxIdeTeamDevUpdatePartialSelection.style = updatePartialSelectionCss;
|
|
99
138
|
|
|
100
139
|
export { GxIdeTeamDevUpdatePartialSelection as gx_ide_team_dev_update_partial_selection };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"gx-ide-team-dev-update-partial-selection.entry.js","mappings":"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","names":[],"sources":["src/components/team-dev/update-partial-selection/update-partial-selection.scss?tag=gx-ide-team-dev-update-partial-selection&encapsulation=shadow","src/components/team-dev/update-partial-selection/update-partial-selection.tsx"],"sourcesContent":["@import \"../../../global/gx-ide-common.scss\";\n@import \"../../../global/gx-ide-mixins.scss\";\n\n:host {\n display: block;\n}\n.top-actions {\n display: flex;\n gap: var(--gx-ide-grid-column-gap);\n padding: var(--mer-spacing--xs) var(--gx-ide-container__padding);\n flex-direction: row-reverse;\n border-bottom: 1px solid var(--gx-ide-container-border-color);\n}\n\n.tabular-grid {\n block-size: 100%;\n}\n","/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n State,\n Method,\n getAssetPath\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\nimport { MercuryBundles } from \"@genexus/mercury\";\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../../common/locale\";\nimport { config } from \"../../../common/config\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n // \"utils/form\",\n // \"utils/layout\",\n // \"utils/typography\",\n // \"components/button\",\n // \"components/checkbox\",\n // \"components/edit\",\n \"components/tabular-grid\"\n];\n@Component({\n tag: \"gx-ide-team-dev-update-partial-selection\",\n styleUrl: \"update-partial-selection.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-update-partial-selection\"]\n})\nexport class GxIdeTeamDevUpdatePartialSelection {\n // 1.OWN PROPERTIES //\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private renderedFirstTime = false;\n private shortcutsSrc = getAssetPath(\n `./gx-ide-assets/team-dev-update-partial-selection/shortcuts.json`\n );\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeTeamDevUpdatePartialSelectionElement;\n\n /* References needed to collect data */\n private chGridEl!: HTMLElement;\n\n // 3.STATE() VARIABLES //\n\n /**\n * The selected objects in the table of objects\n */\n @State() selectedObjectsIds: string[] = [];\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n /**\n * If true it displays the component title on the header\n */\n @Prop() readonly displayTitle = false;\n\n /**\n * This is a function provided by the developer that return a list of new objects to populate the table of objects.\n */\n @Prop() readonly addCallback!: AddCallback;\n\n /**\n * This is a function provided by the developer for execute when cancel button is pressed.\n */\n @Prop() readonly cancelCallback!: CancelCallback;\n\n /**\n * This is a function provided by the developer and is invoked when the action confirm is executed passing the selected objects of the grid\n */\n @Prop() readonly confirmCallback!: ConfirmCallback;\n\n /**\n * The categories render in the filter category selector\n */\n @Prop({ mutable: true }) selection: ObjectData[] = [];\n\n // 5.EVENTS (EMIT) //\n\n /**\n * This event is emitted once just after the component is fully loaded and the first render() occurs.\n */\n @Event() componentDidLoadEvent: EventEmitter<boolean>;\n\n /**\n * @description Gets fired when the component has rendered for the first time.\n */\n @Event() componentDidRenderFirstTime: EventEmitter<string>;\n\n // 6.COMPONENT LIFECYCLE EVENTS //\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\n this.componentDidLoadEvent.emit(true);\n }\n\n componentDidLoad() {\n this.listenChanges();\n }\n\n componentDidRender() {\n if (!this.renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this._componentLocale.componentName\n );\n this.renderedFirstTime = true;\n }\n }\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n /**\n * Validate necessary data input\n */\n @Method()\n async validate(): Promise<boolean> {\n const isValid = true;\n return isValid;\n }\n\n // 9.LOCAL METHODS //\n\n private renderObjects = (): Element => {\n return (\n <ch-tabular-grid\n class=\"tabular-grid\"\n row-selection-mode=\"multiple\"\n ref={(el: HTMLElement) => (this.chGridEl = el)}\n part=\"ch-grid-objects\"\n >\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n columnName=\"\"\n settingable={false}\n sortable={false}\n size={config.tabularGrid.colSize.minContent}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnName={this._componentLocale.tableHead.name}\n settingable={false}\n size={config.tabularGrid.colSize.auto}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnName={this._componentLocale.tableHead.type}\n settingable={false}\n size={config.tabularGrid.colSize.auto}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnName={this._componentLocale.tableHead.description}\n settingable={false}\n size={config.tabularGrid.colSize.auto}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnName={this._componentLocale.tableHead.modifiedOn}\n settingable={false}\n size={config.tabularGrid.colSize.auto}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n {this.selection.map((obj: ObjectData) => (\n <ch-tabular-grid-row\n rowid={obj.id}\n key={obj.id}\n class=\"tabular-grid-row\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-image src={obj.typeIcon} class=\"icon-md\"></ch-image>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.name}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.type}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.description}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {`${obj.modifiedOn.toISOString().slice(0, 10)}`}\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid>\n );\n };\n\n private getObjectsHandler = (): void => {\n this.addCallback().then((items: ObjectData[]) => {\n if (items?.length > 0) {\n this.selection = [...this.selection, ...items];\n this.selectedObjectsIds = [];\n }\n });\n };\n\n private removeSelectedObjectsHandler = (): void => {\n this.selection = this.selection.filter(\n item => !this.selectedObjectsIds.includes(item.id)\n );\n this.selectedObjectsIds = [];\n };\n\n private confirmHandler = (): void => {\n if (this.confirmCallback) {\n const allRowsIds: string[] = [];\n this.selection.forEach(row => {\n allRowsIds.push(row.id);\n });\n this.confirmCallback(allRowsIds);\n }\n };\n\n private cancelHandler = (): void => {\n this.cancelCallback();\n };\n\n private removeAllHandler = (): void => {\n this.selection = [];\n };\n\n private listenChanges = (): void => {\n // for grid selection\n this.chGridEl.addEventListener(\"selectionChanged\", (ev: any): void => {\n this.selectedObjectsIds = ev.detail.rowsId;\n });\n };\n\n // 10.RENDER() FUNCTION //\n\n render(): void {\n return (\n <Host class=\"gx-ide-component\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <div class=\"gx-ide-main-wrapper\">\n <gx-ide-container\n noContentPadding\n noContentGap\n containerTitle={\n this.displayTitle ? this._componentLocale.componentName : null\n }\n slimmerFooter={config.gxIdeContainer.slimmerFooter}\n >\n <div class=\"top-actions\">\n {/* add button*/}\n <gxg-button\n id=\"button-add\"\n type=\"outlined\"\n icon=\"gemini-tools/add\"\n onClick={this.getObjectsHandler}\n part=\"add\"\n >\n {this._componentLocale.btnAddObject}\n </gxg-button>\n\n {/* remove button*/}\n <gxg-button\n id=\"button-remove\"\n type=\"secondary-text-only\"\n onClick={this.removeSelectedObjectsHandler}\n part=\"remove\"\n disabled={!(this.selectedObjectsIds.length > 0)}\n >\n {this._componentLocale.btnRemoveSelectedObjects}\n </gxg-button>\n </div>\n\n {this.renderObjects()}\n\n {/* remove all button*/}\n <gxg-button\n id=\"button-clear\"\n onClick={this.removeAllHandler}\n disabled={!(this.selection.length > 0)}\n part=\"clear\"\n slot=\"footer-start\"\n type=\"secondary-text-only\"\n >\n {this._componentLocale.footer.btnRemoveAll}\n </gxg-button>\n\n {/* cancel button*/}\n <gxg-button\n id=\"button-cancel\"\n type=\"outlined\"\n onClick={this.cancelHandler}\n part=\"cancel\"\n slot=\"footer-end\"\n >\n {this._componentLocale.footer.btnCancel}\n </gxg-button>\n\n {/* confirm button*/}\n <gxg-button\n id=\"button-ok\"\n type=\"primary-text-only\"\n onClick={this.confirmHandler}\n part=\"confirm\"\n slot=\"footer-end\"\n >\n {this._componentLocale.footer.btnConfirm}\n </gxg-button>\n </gx-ide-container>\n </div>\n <gxg-shortcuts src={this.shortcutsSrc}></gxg-shortcuts>\n </Host>\n );\n }\n}\n\nexport type AddCallback = () => Promise<ObjectData[]>;\nexport type CancelCallback = () => Promise<void>;\nexport type ConfirmCallback = (ids: string[]) => Promise<void>;\n\nexport interface ObjectData {\n id: string;\n typeIcon: string;\n name: string;\n type: string;\n description: string;\n modifiedOn: Date;\n}\n"],"version":3}
|
|
1
|
+
{"file":"gx-ide-team-dev-update-partial-selection.entry.js","mappings":"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","names":[],"sources":["src/components/team-dev/update-partial-selection/update-partial-selection.scss?tag=gx-ide-team-dev-update-partial-selection&encapsulation=shadow","src/components/team-dev/update-partial-selection/update-partial-selection.tsx"],"sourcesContent":["@import \"../../../../node_modules/@genexus/mercury/dist/assets/scss/helpers.scss\";\n\n:host {\n display: grid;\n block-size: 100%;\n overflow: auto;\n grid-template-rows: max-content 1fr max-content;\n overflow: auto;\n}\n\n.section {\n display: contents;\n}\n\n.header {\n justify-content: end;\n}\n\n.tabular-grid-main {\n overflow: auto;\n block-size: 100%;\n}\n\n@include tabular-grid-cell-layout(\n $tabular-grid-selector: \".tabular-grid-main\",\n $tabular-grid-cell-node-type: \"text\",\n $tabular-grid-cell-apply-ellipsis: true,\n $tabular-grid-affected-columns-nth-list: (\n 2,\n 3,\n 4\n )\n);\n","// Stencil\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Method,\n Prop,\n State,\n getAssetPath,\n h\n} from \"@stencil/core\";\n\n// Other Libraries\nimport { getIconPath, MercuryBundles } from \"@genexus/mercury\";\n\n// Custom Imports\nimport { config } from \"../../../common/config\";\nimport { Locale } from \"../../../common/locale\";\nimport { formatDate } from \"../../../common/helpers\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/button\",\n \"components/edit\",\n \"components/radio-group\",\n \"components/tabular-grid\",\n \"utils/form\",\n \"utils/layout\",\n \"utils/spacing\",\n \"utils/typography\"\n];\n\nconst GEMINI_TOOLS_ADD_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"add-circle\",\n colorType: \"primary\"\n});\n@Component({\n tag: \"gx-ide-team-dev-update-partial-selection\",\n styleUrl: \"update-partial-selection.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-update-partial-selection\"]\n})\nexport class GxIdeTeamDevUpdatePartialSelection {\n #_componentLocale: any;\n #renderedFirstTime = false;\n #shortcutsSrc = getAssetPath(\n `./gx-ide-assets/team-dev-update-partial-selection/shortcuts.json`\n );\n\n @Element() el: HTMLGxIdeTeamDevUpdatePartialSelectionElement;\n\n #chGridEl!: HTMLChTabularGridElement;\n\n /**\n * Selected objects in objects table\n */\n @State() selectedObjectsIds: string[] = [];\n\n /**\n * Callback invoked to return a list of new objects to populate objects table.\n */\n @Prop() readonly addCallback!: AddCallback;\n\n /**\n * Callback invoked when the user wishes to cancel the selection of objects.\n */\n @Prop() readonly cancelCallback!: CancelCallback;\n\n /**\n *Callback invoked when confirm action is executed passing the selected objects ids.\n */\n @Prop() readonly confirmCallback!: ConfirmCallback;\n\n /**\n * Current objects selection in the grid\n */\n @Prop({ mutable: true }) selection: ObjectData[] = [];\n\n /**\n * Emitted once just after the component is fully loaded and the first render() occurs.\n */\n @Event() componentDidLoadEvent: EventEmitter<boolean>;\n\n /**\n * @description Gets fired when the component has rendered for the first time.\n */\n @Event() componentDidRenderFirstTime: EventEmitter<string>;\n\n componentDidLoad() {\n this.#listenChanges();\n }\n\n componentDidRender() {\n if (!this.#renderedFirstTime) {\n this.componentDidRenderFirstTime.emit(\n this.#_componentLocale.componentName\n );\n this.#renderedFirstTime = true;\n }\n }\n async componentWillLoad() {\n this.#_componentLocale = await Locale.getComponentStrings(this.el);\n this.componentDidLoadEvent.emit(true);\n }\n\n /**\n * Validate necessary data input\n */\n @Method()\n async validate(): Promise<boolean> {\n const isValid = true;\n return isValid;\n }\n\n #cancelHandler = (): void => {\n this.cancelCallback();\n };\n\n #confirmHandler = (): void => {\n if (this.confirmCallback) {\n const allRowsIds: string[] = [];\n this.selection.forEach(row => {\n allRowsIds.push(row.id);\n });\n\n this.confirmCallback(allRowsIds);\n }\n };\n\n #getObjectsHandler = (): void => {\n this.addCallback().then((items: ObjectData[]) => {\n if (items?.length > 0) {\n this.selection = [...this.selection, ...items];\n this.selectedObjectsIds = [];\n }\n });\n };\n\n #listenChanges = (): void => {\n this.#chGridEl.addEventListener(\"selectionChanged\", (ev: any): void => {\n this.selectedObjectsIds = ev.detail.rowsId;\n });\n };\n\n #removeAllHandler = (): void => {\n this.selection = [];\n };\n\n #removeSelectedObjectsHandler = (): void => {\n const selection = this.selection.filter(\n item => !this.selectedObjectsIds.includes(item.id)\n );\n this.selection = selection;\n this.selectedObjectsIds = [];\n };\n\n #renderObjects = (): Element => {\n return (\n <ch-tabular-grid\n allowColumnReorder={false}\n columnResizeMode=\"single\"\n class=\"tabular-grid tabular-grid-main\"\n row-selection-mode=\"multiple\"\n keyboardNavigationMode=\"focus\"\n ref={(el: HTMLChTabularGridElement) => (this.#chGridEl = el)}\n part=\"ch-grid-objects\"\n >\n <ch-tabular-grid-columnset class=\"tabular-grid-column-set\">\n <ch-tabular-grid-column\n columnName=\"\"\n settingable={false}\n sortable={false}\n size={config.tabularGrid.colSize.minContent}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnName={this.#_componentLocale.tableHead.name}\n settingable={false}\n size=\"1fr\"\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnName={this.#_componentLocale.tableHead.type}\n settingable={false}\n size=\"minmax(120px,auto)\"\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnName={this.#_componentLocale.tableHead.description}\n settingable={false}\n size=\"minmax(120px,auto)\"\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n <ch-tabular-grid-column\n columnName={this.#_componentLocale.tableHead.modifiedOn}\n settingable={false}\n size={config.tabularGrid.colSize.maxContent}\n class=\"tabular-grid-column\"\n ></ch-tabular-grid-column>\n </ch-tabular-grid-columnset>\n {this.selection.map((obj: ObjectData) => (\n <ch-tabular-grid-row\n rowid={obj.id}\n key={obj.id}\n class=\"tabular-grid-row\"\n >\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n <ch-image src={obj.typeIcon} class=\"icon-md\"></ch-image>\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.name}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.type}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {obj.description}\n </ch-tabular-grid-cell>\n <ch-tabular-grid-cell class=\"tabular-grid-cell\">\n {`${formatDate(obj.modifiedOn)}`}\n </ch-tabular-grid-cell>\n </ch-tabular-grid-row>\n ))}\n </ch-tabular-grid>\n );\n };\n\n render(): void {\n const buttonRemoveSelectedDisabled = !(this.selectedObjectsIds.length > 0);\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <ch-shortcuts src={this.#shortcutsSrc}></ch-shortcuts>\n <section class=\"section\">\n <header class=\"header field-group control-header header header-two-cols spacing-body-block-start spacing-body-inline\">\n <div class=\"buttons-spacer\">\n <button\n // remove selected button\n class=\"button-secondary\"\n onClick={\n !buttonRemoveSelectedDisabled &&\n this.#removeSelectedObjectsHandler\n }\n part=\"remove\"\n disabled={buttonRemoveSelectedDisabled}\n >\n {this.#_componentLocale.btnRemoveSelectedObjects}\n </button>\n\n <button\n // add button\n class=\"button-secondary button-icon-and-text\"\n onClick={this.#getObjectsHandler}\n part=\"add\"\n >\n <ch-image\n class=\"icon-sm\"\n src={GEMINI_TOOLS_ADD_ICON}\n ></ch-image>\n {this.#_componentLocale.btnAddObject}\n </button>\n </div>\n </header>\n {this.#renderObjects()}\n <footer class=\"control-footer control-footer-space-between spacing-body-block-end spacing-body-inline\">\n <button\n // remove all button\n class=\"button-tertiary\"\n onClick={this.#removeAllHandler}\n disabled={!(this.selection.length > 0)}\n part=\"clear\"\n >\n {this.#_componentLocale.footer.btnRemoveAll}\n </button>\n\n <div class=\"buttons-spacer\">\n <button\n // cancel button\n class=\"button-secondary\"\n onClick={this.#cancelHandler}\n part=\"cancel\"\n >\n {this.#_componentLocale.footer.btnCancel}\n </button>\n\n <button\n // confirm button\n class=\"button-primary\"\n onClick={this.#confirmHandler}\n part=\"confirm\"\n >\n {this.#_componentLocale.footer.btnConfirm}\n </button>\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n\nexport type AddCallback = () => Promise<ObjectData[]>;\nexport type CancelCallback = () => Promise<void>;\nexport type ConfirmCallback = (ids: string[]) => Promise<void>;\n\nexport interface ObjectData {\n id: string;\n typeIcon: string;\n name: string;\n type: string;\n description: string;\n modifiedOn: Date;\n}\n"],"version":3}
|