@genexus/genexus-ide-ui 1.0.7 → 1.0.9
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-7499aff7.js → config-cefda28a.js} +2 -2
- package/dist/cjs/{config-7499aff7.js.map → config-cefda28a.js.map} +1 -1
- 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 +1 -1
- package/dist/cjs/gx-ide-data-selector.cjs.entry.js +155 -133
- package/dist/cjs/gx-ide-data-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-design-import.cjs.entry.js +1 -1
- package/dist/cjs/{gx-ide-empty-state.cjs.entry.js → gx-ide-empty-state_2.cjs.entry.js} +56 -3
- package/dist/cjs/gx-ide-empty-state_2.cjs.entry.js.map +1 -0
- package/dist/cjs/gx-ide-entity-selector.cjs.entry.js +4 -1
- package/dist/cjs/gx-ide-entity-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-gam-installation-settings.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js +1 -2
- package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-new-environment.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-new-kb.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-new-object.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-object-selector.cjs.entry.js +2 -2
- package/dist/cjs/gx-ide-object-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-recent-news.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-references.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-share-kb.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-start-page.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-template.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-wf-settings.cjs.entry.js +1 -1
- package/dist/cjs/gx-ide-ww-images.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/common/config.js +1 -1
- package/dist/collection/common/config.js.map +1 -1
- package/dist/collection/components/_helpers/entity-selector/entity-selector.js +23 -3
- package/dist/collection/components/_helpers/entity-selector/entity-selector.js.map +1 -1
- package/dist/collection/components/_helpers/entity-selector/gx-ide-assets/entity-selector/langs/entity-selector.lang.en.json +1 -0
- package/dist/collection/components/data-selector/data-selector.css +19 -624
- package/dist/collection/components/data-selector/data-selector.js +251 -244
- package/dist/collection/components/data-selector/data-selector.js.map +1 -1
- package/dist/collection/components/data-selector/gx-ide-assets/data-selector/langs/data-selector.lang.en.json +4 -1
- package/dist/collection/components/data-selector/gx-ide-assets/data-selector/langs/data-selector.lang.ja.json +5 -2
- package/dist/collection/components/data-selector/gx-ide-assets/data-selector/shortcuts.json +2 -2
- package/dist/collection/components/kb-manager-export/kb-manager-export.js +1 -2
- package/dist/collection/components/kb-manager-export/kb-manager-export.js.map +1 -1
- package/dist/collection/components/object-selector/object-selector.js +1 -1
- package/dist/collection/components/object-selector/object-selector.js.map +1 -1
- package/dist/components/config.js +1 -1
- package/dist/components/config.js.map +1 -1
- package/dist/components/entity-selector.js +5 -1
- package/dist/components/entity-selector.js.map +1 -1
- package/dist/components/gx-ide-data-selector.js +167 -146
- package/dist/components/gx-ide-data-selector.js.map +1 -1
- package/dist/components/gx-ide-kb-manager-export.js +1 -2
- package/dist/components/gx-ide-kb-manager-export.js.map +1 -1
- package/dist/components/gx-ide-object-selector.js +1 -1
- package/dist/components/gx-ide-object-selector.js.map +1 -1
- package/dist/esm/{config-6cfbb06f.js → config-084ee328.js} +2 -2
- package/dist/esm/{config-6cfbb06f.js.map → config-084ee328.js.map} +1 -1
- 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 +1 -1
- package/dist/esm/gx-ide-data-selector.entry.js +156 -134
- package/dist/esm/gx-ide-data-selector.entry.js.map +1 -1
- package/dist/esm/gx-ide-design-import.entry.js +1 -1
- package/dist/esm/{gx-ide-empty-state.entry.js → gx-ide-empty-state_2.entry.js} +57 -5
- package/dist/esm/gx-ide-empty-state_2.entry.js.map +1 -0
- package/dist/esm/gx-ide-entity-selector.entry.js +4 -1
- package/dist/esm/gx-ide-entity-selector.entry.js.map +1 -1
- package/dist/esm/gx-ide-gam-installation-settings.entry.js +1 -1
- package/dist/esm/gx-ide-kb-manager-export.entry.js +1 -2
- package/dist/esm/gx-ide-kb-manager-export.entry.js.map +1 -1
- package/dist/esm/gx-ide-kb-manager-import.entry.js +1 -1
- package/dist/esm/gx-ide-new-environment.entry.js +1 -1
- package/dist/esm/gx-ide-new-kb.entry.js +1 -1
- package/dist/esm/gx-ide-new-object.entry.js +1 -1
- package/dist/esm/gx-ide-object-selector.entry.js +2 -2
- package/dist/esm/gx-ide-object-selector.entry.js.map +1 -1
- package/dist/esm/gx-ide-recent-news.entry.js +1 -1
- package/dist/esm/gx-ide-references.entry.js +1 -1
- package/dist/esm/gx-ide-share-kb.entry.js +1 -1
- package/dist/esm/gx-ide-start-page.entry.js +1 -1
- package/dist/esm/gx-ide-team-dev-commit.entry.js +1 -1
- package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +1 -1
- package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +1 -1
- package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +1 -1
- package/dist/esm/gx-ide-team-dev-update.entry.js +1 -1
- package/dist/esm/gx-ide-template.entry.js +1 -1
- package/dist/esm/gx-ide-wf-settings.entry.js +1 -1
- package/dist/esm/gx-ide-ww-images.entry.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/data-selector/langs/data-selector.lang.en.json +4 -1
- package/dist/genexus-ide-ui/gx-ide-assets/data-selector/langs/data-selector.lang.ja.json +5 -2
- package/dist/genexus-ide-ui/gx-ide-assets/data-selector/shortcuts.json +2 -2
- package/dist/genexus-ide-ui/gx-ide-assets/entity-selector/langs/entity-selector.lang.en.json +1 -0
- package/dist/genexus-ide-ui/{p-3824978b.entry.js → p-05eb7c04.entry.js} +3 -3
- package/dist/genexus-ide-ui/{p-3824978b.entry.js.map → p-05eb7c04.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-27fcaad7.entry.js → p-1a1042c2.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-a3daa189.entry.js → p-1f8445eb.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-885302c2.entry.js → p-241f3d69.entry.js} +87 -18
- package/dist/genexus-ide-ui/p-241f3d69.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-04421676.entry.js → p-2b200d34.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-0ac125fc.entry.js → p-41e5e8e0.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-980f96c5.entry.js → p-4ade9a67.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-8cf892b5.js → p-55a30661.js} +2 -2
- package/dist/genexus-ide-ui/{p-8cf892b5.js.map → p-55a30661.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-0be068bf.entry.js → p-5620c188.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-a587e7ca.entry.js → p-58e33dda.entry.js} +36 -31
- package/dist/genexus-ide-ui/p-58e33dda.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-33c1ddd9.entry.js → p-593981a8.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-38f61bea.entry.js → p-5d8817cb.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-2fd83e6c.entry.js → p-62be51c2.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-6da8bf60.entry.js → p-794ac8e6.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-3e48e2f6.entry.js → p-88ab3f67.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-7b8e41dd.entry.js → p-8beec8d4.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-64101478.entry.js → p-8f294d2e.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-d541640a.entry.js → p-9d02318b.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-19789aa2.entry.js → p-9d640444.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-68810397.entry.js → p-a4370f5d.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-69e879be.entry.js → p-aa38604e.entry.js} +2 -2
- package/dist/genexus-ide-ui/p-aa38604e.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-d178da38.entry.js → p-aea82479.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-a04d556d.entry.js → p-afb531b3.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-d9f7d2c3.entry.js → p-b5bb18d9.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-8ff5da93.entry.js → p-b7dfdf6d.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-cd7100fa.entry.js → p-c0ee7647.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-0bb18689.entry.js → p-d5c2b4cc.entry.js} +2 -2
- package/dist/genexus-ide-ui/p-dcbf5cd9.entry.js +332 -0
- package/dist/genexus-ide-ui/p-dcbf5cd9.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-69edc29c.entry.js → p-e0072adb.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-638befbe.entry.js → p-e557aa5e.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-c64a4398.entry.js → p-eb6ef221.entry.js} +2 -2
- package/dist/genexus-ide-ui/{p-f5c02654.entry.js → p-f512bbca.entry.js} +2 -2
- package/dist/types/components/_helpers/entity-selector/entity-selector.d.ts +6 -2
- package/dist/types/components/data-selector/data-selector.d.ts +26 -51
- package/dist/types/components.d.ts +21 -29
- package/package.json +1 -1
- package/dist/cjs/gx-ide-empty-state.cjs.entry.js.map +0 -1
- package/dist/cjs/gx-ide-loader.cjs.entry.js +0 -61
- package/dist/cjs/gx-ide-loader.cjs.entry.js.map +0 -1
- package/dist/esm/gx-ide-empty-state.entry.js.map +0 -1
- package/dist/esm/gx-ide-loader.entry.js +0 -57
- package/dist/esm/gx-ide-loader.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-69e879be.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-885302c2.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-a587e7ca.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-a6b76120.entry.js +0 -73
- package/dist/genexus-ide-ui/p-a6b76120.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-e4db9c34.entry.js +0 -309
- package/dist/genexus-ide-ui/p-e4db9c34.entry.js.map +0 -1
- /package/dist/genexus-ide-ui/{p-27fcaad7.entry.js.map → p-1a1042c2.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-a3daa189.entry.js.map → p-1f8445eb.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-04421676.entry.js.map → p-2b200d34.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-0ac125fc.entry.js.map → p-41e5e8e0.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-980f96c5.entry.js.map → p-4ade9a67.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-0be068bf.entry.js.map → p-5620c188.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-33c1ddd9.entry.js.map → p-593981a8.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-38f61bea.entry.js.map → p-5d8817cb.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-2fd83e6c.entry.js.map → p-62be51c2.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-6da8bf60.entry.js.map → p-794ac8e6.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-3e48e2f6.entry.js.map → p-88ab3f67.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-7b8e41dd.entry.js.map → p-8beec8d4.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-64101478.entry.js.map → p-8f294d2e.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-d541640a.entry.js.map → p-9d02318b.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-19789aa2.entry.js.map → p-9d640444.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-68810397.entry.js.map → p-a4370f5d.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-d178da38.entry.js.map → p-aea82479.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-a04d556d.entry.js.map → p-afb531b3.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-d9f7d2c3.entry.js.map → p-b5bb18d9.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-8ff5da93.entry.js.map → p-b7dfdf6d.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-cd7100fa.entry.js.map → p-c0ee7647.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-0bb18689.entry.js.map → p-d5c2b4cc.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-69edc29c.entry.js.map → p-e0072adb.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-638befbe.entry.js.map → p-e557aa5e.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-c64a4398.entry.js.map → p-eb6ef221.entry.js.map} +0 -0
- /package/dist/genexus-ide-ui/{p-f5c02654.entry.js.map → p-f512bbca.entry.js.map} +0 -0
|
@@ -46,7 +46,9 @@ const GxIdeEntitySelector = /*@__PURE__*/ proxyCustomElement(class GxIdeEntitySe
|
|
|
46
46
|
this.valueChanged = createEvent(this, "valueChanged", 7);
|
|
47
47
|
_GxIdeEntitySelector_componentLocale.set(this, void 0);
|
|
48
48
|
_GxIdeEntitySelector_btnClearClickHandler.set(this, () => {
|
|
49
|
+
var _a;
|
|
49
50
|
this.value = this.defaultValue;
|
|
51
|
+
this.iconSrc = (_a = this.defaultValue) === null || _a === void 0 ? void 0 : _a.iconSrc;
|
|
50
52
|
});
|
|
51
53
|
_GxIdeEntitySelector_btnSelectClickHandler.set(this, () => {
|
|
52
54
|
this.selectEntityCallback().then(result => {
|
|
@@ -64,7 +66,7 @@ const GxIdeEntitySelector = /*@__PURE__*/ proxyCustomElement(class GxIdeEntitySe
|
|
|
64
66
|
_GxIdeEntitySelector_renderControl.set(this, () => {
|
|
65
67
|
var _a, _b;
|
|
66
68
|
return (h("div", { part: "wrapper", class: "wrapper" }, h("ch-edit", { accessibleName: this.labelPosition === "none" &&
|
|
67
|
-
__classPrivateFieldGet(this, _GxIdeEntitySelector_componentLocale, "f").entitySelectorInputAccessibleName, class: "form-input", name: "
|
|
69
|
+
__classPrivateFieldGet(this, _GxIdeEntitySelector_componentLocale, "f").entitySelectorInputAccessibleName, class: "form-input", name: this.name || __classPrivateFieldGet(this, _GxIdeEntitySelector_componentLocale, "f").entitySelectorNameAttribute, startImgSrc: this.iconSrc, value: ((_a = this.value) === null || _a === void 0 ? void 0 : _a.name) || ((_b = this.defaultValue) === null || _b === void 0 ? void 0 : _b.name), id: "entity-input" }), h("button", { part: "button-clear", class: "icon-button", "aria-label": __classPrivateFieldGet(this, _GxIdeEntitySelector_componentLocale, "f").clearButtonLabel, title: __classPrivateFieldGet(this, _GxIdeEntitySelector_componentLocale, "f").clearButtonLabel, type: "button", onClick: __classPrivateFieldGet(this, _GxIdeEntitySelector_btnClearClickHandler, "f"), onFocus: this.buttonHasFocus ? __classPrivateFieldGet(this, _GxIdeEntitySelector_buttonFocusHandler, "f") : undefined, onBlur: !this.buttonHasFocus ? __classPrivateFieldGet(this, _GxIdeEntitySelector_buttonFocusHandler, "f") : undefined }, h("ch-image", { class: "icon-md", src: CLEAR_ICON })), h("button", { class: "icon-button", "aria-label": __classPrivateFieldGet(this, _GxIdeEntitySelector_componentLocale, "f").selectButtonLabel, title: __classPrivateFieldGet(this, _GxIdeEntitySelector_componentLocale, "f").selectButtonLabel, type: "button", disabled: !this.selectEntityCallback, onClick: __classPrivateFieldGet(this, _GxIdeEntitySelector_btnSelectClickHandler, "f"), onBlur: !this.buttonHasFocus ? __classPrivateFieldGet(this, _GxIdeEntitySelector_buttonFocusHandler, "f") : undefined, onFocus: this.buttonHasFocus ? __classPrivateFieldGet(this, _GxIdeEntitySelector_buttonFocusHandler, "f") : undefined }, h("ch-image", { class: "icon-md", src: SELECT_DEFAULT_ICON }))));
|
|
68
70
|
});
|
|
69
71
|
_GxIdeEntitySelector_updateIconSrc.set(this, () => {
|
|
70
72
|
if (this.value && this.value.iconSrc) {
|
|
@@ -76,6 +78,7 @@ const GxIdeEntitySelector = /*@__PURE__*/ proxyCustomElement(class GxIdeEntitySe
|
|
|
76
78
|
this.defaultValue = undefined;
|
|
77
79
|
this.labelCaption = undefined;
|
|
78
80
|
this.labelPosition = "block-start";
|
|
81
|
+
this.name = undefined;
|
|
79
82
|
this.selectEntityCallback = undefined;
|
|
80
83
|
this.value = undefined;
|
|
81
84
|
}
|
|
@@ -110,6 +113,7 @@ const GxIdeEntitySelector = /*@__PURE__*/ proxyCustomElement(class GxIdeEntitySe
|
|
|
110
113
|
"defaultValue": [16],
|
|
111
114
|
"labelCaption": [1, "label-caption"],
|
|
112
115
|
"labelPosition": [513, "label-position"],
|
|
116
|
+
"name": [513],
|
|
113
117
|
"selectEntityCallback": [16],
|
|
114
118
|
"value": [1040],
|
|
115
119
|
"buttonHasFocus": [32],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"entity-selector.js","mappings":"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","names":[],"sources":["src/components/_helpers/entity-selector/entity-selector.scss?tag=gx-ide-entity-selector&encapsulation=shadow","src/components/_helpers/entity-selector/entity-selector.tsx"],"sourcesContent":["/*wrapper*/\n.wrapper {\n display: grid;\n grid-template-columns: 1fr max-content max-content;\n gap: var(--mer-spacing--xs);\n border-radius: var(--control__border-radius);\n border: var(--control__border-width) var(--control__border-style)\n var(--control__border-color);\n padding: var(--control__padding-block) var(--control__padding-inline);\n\n &:hover {\n --control__border-color: var(--control__border-color--hover);\n }\n &:focus {\n }\n}\n/*form-input*/\n.form-input {\n --control__padding-block: 0;\n --control__padding-inline: 0;\n // Remove control border. We want to simulate a form-input that includes two buttons at the end.\n --control__border-width: 0;\n --focus__outline-width: 0;\n}\n:host(:focus-within) {\n .wrapper {\n --control__border-color: var(--focus__outline-color);\n }\n}\n:host(.entity-selector--button-has-focus) {\n .wrapper {\n outline: none;\n }\n}\n/*custom button icon*/\n","import {\n Component,\n Host,\n h,\n Prop,\n Element,\n State,\n Event,\n EventEmitter,\n Watch\n} from \"@stencil/core\";\n\nimport { MercuryBundles, getIconPath } from \"@genexus/mercury\";\n\nimport { Locale } from \"../../../common/locale\";\nimport { LabelPosition } from \"../../../common/types\";\nimport { EntityData } from \"../../../common/types\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/edit\",\n \"components/button\",\n \"components/icon\",\n \"utils/form\"\n];\nconst SELECT_DEFAULT_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"show-more-horizontal\",\n colorType: \"primary\"\n});\nconst CLEAR_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"reset\",\n colorType: \"primary\"\n});\n\n@Component({\n tag: \"gx-ide-entity-selector\",\n styleUrl: \"entity-selector.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/entity-selector\"]\n})\nexport class GxIdeEntitySelector {\n #componentLocale: any;\n\n @Element() el: HTMLGxIdeEntitySelectorElement;\n\n /**\n * Adds/removes a CSS class on the host. It removes focus-within styles when\n * focus is on a button.\n */\n @State() buttonHasFocus = false;\n\n @State() iconSrc: string = null;\n\n /**\n * Default value for the component. Used when the 'X' button is pressed.\n */\n @Prop() readonly defaultValue?: EntityData | null | undefined;\n\n /**\n * The label caption. Only visible if \"labelPosition\" is not \"none\".\n * I no \"labelCaption\" is provided, a generic caption \"Select Entity\" will be provided\n */\n @Prop() readonly labelCaption: string;\n\n /**\n * The label position\n */\n @Prop({ reflect: true }) readonly labelPosition: LabelPosition =\n \"block-start\";\n\n /**\n * Callback invoked when the action button is pressed. Returns the new value.\n */\n @Prop() readonly selectEntityCallback!: () => Promise<EntityData>;\n\n /**\n * Value currently assigned.\n */\n @Prop({ mutable: true }) value: EntityData | null | undefined;\n @Watch(\"value\")\n valueChangedHandler() {\n this.valueChanged.emit(this.value);\n this.#updateIconSrc();\n }\n\n /**\n * Emits the input value every time it changes\n */\n @Event() valueChanged: EventEmitter<EntityData>;\n\n // 6.Component Lifecycle Events\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n connectedCallback() {\n this.#updateIconSrc();\n }\n\n #btnClearClickHandler = () => {\n this.value = this.defaultValue;\n };\n\n #btnSelectClickHandler = () => {\n this.selectEntityCallback().then(result => {\n this.value = result;\n });\n };\n\n #buttonFocusHandler = (e: FocusEvent) => {\n if (e.type === \"focus\") {\n this.buttonHasFocus = true;\n } else if (e.type === \"blur\") {\n this.buttonHasFocus = false;\n }\n };\n\n #renderControl = (): HTMLDivElement => {\n return (\n <div part=\"wrapper\" class=\"wrapper\">\n <ch-edit\n accessibleName={\n this.labelPosition === \"none\" &&\n this.#componentLocale.entitySelectorInputAccessibleName\n }\n class=\"form-input\"\n name=\"entitySelector\"\n startImgSrc={this.iconSrc}\n value={this.value?.name || this.defaultValue?.name}\n id=\"entity-input\"\n ></ch-edit>\n\n <button\n part=\"button-clear\"\n class=\"icon-button\"\n aria-label={this.#componentLocale.clearButtonLabel}\n title={this.#componentLocale.clearButtonLabel}\n onClick={this.#btnClearClickHandler}\n onFocus={this.buttonHasFocus ? this.#buttonFocusHandler : undefined}\n onBlur={!this.buttonHasFocus ? this.#buttonFocusHandler : undefined}\n >\n <ch-image class=\"icon-md\" src={CLEAR_ICON}></ch-image>\n </button>\n\n <button\n class=\"icon-button\"\n aria-label={this.#componentLocale.selectButtonLabel}\n title={this.#componentLocale.selectButtonLabel}\n disabled={!this.selectEntityCallback}\n onClick={this.#btnSelectClickHandler}\n onBlur={!this.buttonHasFocus ? this.#buttonFocusHandler : undefined}\n onFocus={this.buttonHasFocus ? this.#buttonFocusHandler : undefined}\n >\n <ch-image class=\"icon-md\" src={SELECT_DEFAULT_ICON}></ch-image>\n </button>\n </div>\n );\n };\n\n #updateIconSrc = () => {\n if (this.value && this.value.iconSrc) {\n this.iconSrc = this.value.iconSrc;\n }\n };\n\n render() {\n return (\n <Host\n class={{\n \"entity-selector--button-has-focus\": this.buttonHasFocus\n }}\n >\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n {this.labelPosition !== \"none\" ? (\n <div\n class={{\n \"field\": true,\n \"field-block\": this.labelPosition === \"block-start\",\n \"field-inline\": this.labelPosition === \"inline-start\"\n }}\n >\n <label class=\"label\" htmlFor=\"entity-input\">\n {this.labelCaption ||\n this.#componentLocale.entitySelectorInputAccessibleName}\n </label>\n {this.#renderControl()}\n </div>\n ) : (\n this.#renderControl()\n )}\n </Host>\n );\n }\n}\n\nexport type EntitySelectorLabels = {\n buttonClearLabel: string;\n buttonSelectLabel: string;\n};\n"],"version":3}
|
|
1
|
+
{"file":"entity-selector.js","mappings":"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","names":[],"sources":["src/components/_helpers/entity-selector/entity-selector.scss?tag=gx-ide-entity-selector&encapsulation=shadow","src/components/_helpers/entity-selector/entity-selector.tsx"],"sourcesContent":["/*wrapper*/\n.wrapper {\n display: grid;\n grid-template-columns: 1fr max-content max-content;\n gap: var(--mer-spacing--xs);\n border-radius: var(--control__border-radius);\n border: var(--control__border-width) var(--control__border-style)\n var(--control__border-color);\n padding: var(--control__padding-block) var(--control__padding-inline);\n\n &:hover {\n --control__border-color: var(--control__border-color--hover);\n }\n &:focus {\n }\n}\n/*form-input*/\n.form-input {\n --control__padding-block: 0;\n --control__padding-inline: 0;\n // Remove control border. We want to simulate a form-input that includes two buttons at the end.\n --control__border-width: 0;\n --focus__outline-width: 0;\n}\n:host(:focus-within) {\n .wrapper {\n --control__border-color: var(--focus__outline-color);\n }\n}\n:host(.entity-selector--button-has-focus) {\n .wrapper {\n outline: none;\n }\n}\n/*custom button icon*/\n","import {\n Component,\n Host,\n h,\n Prop,\n Element,\n State,\n Event,\n EventEmitter,\n Watch\n} from \"@stencil/core\";\n\nimport { MercuryBundles, getIconPath } from \"@genexus/mercury\";\n\nimport { Locale } from \"../../../common/locale\";\nimport { LabelPosition } from \"../../../common/types\";\nimport { EntityData } from \"../../../common/types\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"components/edit\",\n \"components/button\",\n \"components/icon\",\n \"utils/form\"\n];\nconst SELECT_DEFAULT_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"show-more-horizontal\",\n colorType: \"primary\"\n});\nconst CLEAR_ICON = getIconPath({\n category: \"gemini-tools\",\n name: \"reset\",\n colorType: \"primary\"\n});\n\n@Component({\n tag: \"gx-ide-entity-selector\",\n styleUrl: \"entity-selector.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/entity-selector\"]\n})\nexport class GxIdeEntitySelector {\n #componentLocale: any;\n\n @Element() el: HTMLGxIdeEntitySelectorElement;\n\n /**\n * Adds/removes a CSS class on the host. It removes focus-within styles when\n * focus is on a button.\n */\n @State() buttonHasFocus = false;\n\n @State() iconSrc: string = null;\n\n /**\n * Default value for the component. Used when the 'X' button is pressed.\n */\n @Prop() readonly defaultValue?: EntityData | null | undefined;\n\n /**\n * The label caption. Only visible if \"labelPosition\" is not \"none\".\n * I no \"labelCaption\" is provided, a generic caption \"Select Entity\" will be provided\n */\n @Prop() readonly labelCaption?: string;\n\n /**\n * The label position\n */\n @Prop({ reflect: true }) readonly labelPosition?: LabelPosition =\n \"block-start\";\n\n /**\n * This property specifies the `name` of the control when used in a form.\n */\n @Prop({ reflect: true }) readonly name?: string;\n\n /**\n * Callback invoked when the action button is pressed. Returns the new value.\n */\n @Prop() readonly selectEntityCallback!: () => Promise<EntityData>;\n\n /**\n * Value currently assigned.\n */\n @Prop({ mutable: true }) value: EntityData | null | undefined;\n @Watch(\"value\")\n valueChangedHandler() {\n this.valueChanged.emit(this.value);\n this.#updateIconSrc();\n }\n\n /**\n * Emits the input value every time it changes\n */\n @Event() valueChanged: EventEmitter<EntityData>;\n\n // 6.Component Lifecycle Events\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n }\n\n connectedCallback() {\n this.#updateIconSrc();\n }\n\n #btnClearClickHandler = () => {\n this.value = this.defaultValue;\n this.iconSrc = this.defaultValue?.iconSrc;\n };\n\n #btnSelectClickHandler = () => {\n this.selectEntityCallback().then(result => {\n this.value = result;\n });\n };\n\n #buttonFocusHandler = (e: FocusEvent) => {\n if (e.type === \"focus\") {\n this.buttonHasFocus = true;\n } else if (e.type === \"blur\") {\n this.buttonHasFocus = false;\n }\n };\n\n #renderControl = (): HTMLDivElement => {\n return (\n <div part=\"wrapper\" class=\"wrapper\">\n <ch-edit\n accessibleName={\n this.labelPosition === \"none\" &&\n this.#componentLocale.entitySelectorInputAccessibleName\n }\n class=\"form-input\"\n name={this.name || this.#componentLocale.entitySelectorNameAttribute}\n startImgSrc={this.iconSrc}\n value={this.value?.name || this.defaultValue?.name}\n id=\"entity-input\"\n ></ch-edit>\n\n <button\n part=\"button-clear\"\n class=\"icon-button\"\n aria-label={this.#componentLocale.clearButtonLabel}\n title={this.#componentLocale.clearButtonLabel}\n type=\"button\"\n onClick={this.#btnClearClickHandler}\n onFocus={this.buttonHasFocus ? this.#buttonFocusHandler : undefined}\n onBlur={!this.buttonHasFocus ? this.#buttonFocusHandler : undefined}\n >\n <ch-image class=\"icon-md\" src={CLEAR_ICON}></ch-image>\n </button>\n\n <button\n class=\"icon-button\"\n aria-label={this.#componentLocale.selectButtonLabel}\n title={this.#componentLocale.selectButtonLabel}\n type=\"button\"\n disabled={!this.selectEntityCallback}\n onClick={this.#btnSelectClickHandler}\n onBlur={!this.buttonHasFocus ? this.#buttonFocusHandler : undefined}\n onFocus={this.buttonHasFocus ? this.#buttonFocusHandler : undefined}\n >\n <ch-image class=\"icon-md\" src={SELECT_DEFAULT_ICON}></ch-image>\n </button>\n </div>\n );\n };\n\n #updateIconSrc = () => {\n if (this.value && this.value.iconSrc) {\n this.iconSrc = this.value.iconSrc;\n }\n };\n\n render() {\n return (\n <Host\n class={{\n \"entity-selector--button-has-focus\": this.buttonHasFocus\n }}\n >\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n {this.labelPosition !== \"none\" ? (\n <div\n class={{\n \"field\": true,\n \"field-block\": this.labelPosition === \"block-start\",\n \"field-inline\": this.labelPosition === \"inline-start\"\n }}\n >\n <label class=\"label\" htmlFor=\"entity-input\">\n {this.labelCaption ||\n this.#componentLocale.entitySelectorInputAccessibleName}\n </label>\n {this.#renderControl()}\n </div>\n ) : (\n this.#renderControl()\n )}\n </Host>\n );\n }\n}\n\nexport type EntitySelectorLabels = {\n buttonClearLabel: string;\n buttonSelectLabel: string;\n};\n"],"version":3}
|
|
@@ -1,181 +1,190 @@
|
|
|
1
|
-
import { proxyCustomElement, HTMLElement,
|
|
1
|
+
import { proxyCustomElement, HTMLElement, getAssetPath, h, Host } from '@stencil/core/internal/client';
|
|
2
2
|
import { L as Locale } from './locale.js';
|
|
3
3
|
import { c as config } from './config.js';
|
|
4
|
-
import {
|
|
4
|
+
import { g as getIconPath } from './assets-manager.js';
|
|
5
|
+
import { d as defineCustomElement$4 } from './gx-ide-empty-state2.js';
|
|
5
6
|
import { d as defineCustomElement$3 } from './entity-selector.js';
|
|
6
|
-
import { d as defineCustomElement$2 } from './
|
|
7
|
+
import { d as defineCustomElement$2 } from './ide-loader.js';
|
|
7
8
|
|
|
8
|
-
const dataSelectorCss = ":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}.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;border:1px solid var(--gxg-border-color--regular);background-color:var(--color-background)}.filter-grid{display:grid;padding:var(--spacing-comp-03);row-gap:var(--gx-ide-grid-row-gap);column-gap:var(--gx-ide-grid-column-gap);border-block-start:1px solid var(--gx-ide-container-border-color);border-block-end:1px solid var(--gx-ide-container-border-color);grid-template-areas:\"pattern-label pattern-input pattern-input pattern-input\" \"object-label object-input object-input object-input\"}.filter-grid .pattern-label{grid-area:pattern-label}.filter-grid .pattern-input{grid-area:pattern-input}.filter-grid .object-label{grid-area:object-label}.filter-grid .object-input{grid-area:object-input}.filter-grid--no-title{border-top:0}.grid-container{height:100%}ch-grid-cell{--spacing-comp-02:var(--spacing-comp-03)}.objects-count{display:flex;justify-content:space-around}.objects-count>*{flex:1;padding:var(--spacing-comp-01)}.objects-count>:not(:last-child){border-inline-end:1px solid var(--gx-ide-container-border-color)}gx-ide-container.loading::part(content){display:grid}";
|
|
9
|
+
const dataSelectorCss = ":host{display:grid;grid-template-rows:max-content 1fr max-content;overflow:auto}.section{display:contents}.header__field-group{display:grid;grid-template-columns:1fr 1fr}.tabular-grid{contain:size}.data 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}ch-tabular-grid.empty-result::part(main){overflow:hidden}ch-tabular-grid-rowset-empty{position:relative}";
|
|
9
10
|
|
|
11
|
+
var __classPrivateFieldGet = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
12
|
+
if (kind === "a" && !f)
|
|
13
|
+
throw new TypeError("Private accessor was defined without a getter");
|
|
14
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
|
|
15
|
+
throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
16
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
17
|
+
};
|
|
18
|
+
var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
19
|
+
if (kind === "m")
|
|
20
|
+
throw new TypeError("Private method is not writable");
|
|
21
|
+
if (kind === "a" && !f)
|
|
22
|
+
throw new TypeError("Private accessor was defined without a setter");
|
|
23
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
|
|
24
|
+
throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
25
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
26
|
+
};
|
|
27
|
+
var _GxIdeDataSelector_firstGridObjectId, _GxIdeDataSelector_loadItemsCallbackJustCalled, _GxIdeDataSelector_componentLocale, _GxIdeDataSelector_animateEmptyState, _GxIdeDataSelector_shortcutsSrc, _GxIdeDataSelector_filterPatternEl, _GxIdeDataSelector_filterObjectEl, _GxIdeDataSelector_chShortcutsEl, _GxIdeDataSelector_chTabularGridObjectsEl, _GxIdeDataSelector_evaluateFirstRowSelection, _GxIdeDataSelector_chGridKeyDownHandler, _GxIdeDataSelector_confirmCallbackHandler, _GxIdeDataSelector_editCallbackHandler, _GxIdeDataSelector_hostKeyPressHandler, _GxIdeDataSelector_objectsSelectionChangedHandler, _GxIdeDataSelector_newVariableCallbackHandler, _GxIdeDataSelector_refreshUIWithNewConfiguration, _GxIdeDataSelector_renderFilter, _GxIdeDataSelector_renderObjects, _GxIdeDataSelector_sortObjectsByName;
|
|
10
28
|
// Best performance bundle
|
|
11
29
|
const CSS_BUNDLES = [
|
|
12
30
|
"resets/box-sizing",
|
|
13
|
-
"utils/form",
|
|
14
|
-
"utils/layout",
|
|
15
|
-
"utils/typography",
|
|
16
31
|
"components/button",
|
|
17
|
-
"components/checkbox",
|
|
18
32
|
"components/edit",
|
|
19
|
-
"components/tabular-grid"
|
|
33
|
+
"components/tabular-grid",
|
|
34
|
+
"components/icon",
|
|
35
|
+
"utils/form",
|
|
36
|
+
"utils/layout",
|
|
37
|
+
"chameleon/scrollbar"
|
|
20
38
|
];
|
|
39
|
+
const FILTER_ICON = getIconPath({
|
|
40
|
+
category: "window-tools",
|
|
41
|
+
name: "filter",
|
|
42
|
+
colorType: "on-elevation"
|
|
43
|
+
});
|
|
21
44
|
const GxIdeDataSelector$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeDataSelector extends HTMLElement {
|
|
22
45
|
constructor() {
|
|
23
46
|
super();
|
|
24
47
|
this.__registerHost();
|
|
25
48
|
this.__attachShadow();
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
this
|
|
29
|
-
this
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
this
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
if (this
|
|
41
|
-
|
|
42
|
-
this.loading = true;
|
|
43
|
-
this.loaderEl.show = true;
|
|
44
|
-
}
|
|
45
|
-
this.loadItemsCallback(filters).then((items) => {
|
|
46
|
-
if (items) {
|
|
47
|
-
this.objects = items;
|
|
48
|
-
}
|
|
49
|
-
this.selectedObjectsIds = [];
|
|
50
|
-
this.deselectAll();
|
|
51
|
-
if (this.loader) {
|
|
52
|
-
this.loading = false;
|
|
53
|
-
this.loaderEl.show = false;
|
|
54
|
-
}
|
|
55
|
-
});
|
|
49
|
+
_GxIdeDataSelector_firstGridObjectId.set(this, void 0); // used to select the first item after "loadItemsCallback"
|
|
50
|
+
_GxIdeDataSelector_loadItemsCallbackJustCalled.set(this, false); // used to select the first item after "loadItemsCallback"
|
|
51
|
+
_GxIdeDataSelector_componentLocale.set(this, void 0);
|
|
52
|
+
_GxIdeDataSelector_animateEmptyState.set(this, false);
|
|
53
|
+
_GxIdeDataSelector_shortcutsSrc.set(this, getAssetPath(`./gx-ide-assets/data-selector/shortcuts.json`));
|
|
54
|
+
/* References needed to collect data */
|
|
55
|
+
_GxIdeDataSelector_filterPatternEl.set(this, void 0);
|
|
56
|
+
_GxIdeDataSelector_filterObjectEl.set(this, void 0);
|
|
57
|
+
_GxIdeDataSelector_chShortcutsEl.set(this, void 0);
|
|
58
|
+
_GxIdeDataSelector_chTabularGridObjectsEl.set(this, void 0);
|
|
59
|
+
/**
|
|
60
|
+
* After items have been loaded and rendered, the first row should be selected.
|
|
61
|
+
*/
|
|
62
|
+
_GxIdeDataSelector_evaluateFirstRowSelection.set(this, () => {
|
|
63
|
+
if (__classPrivateFieldGet(this, _GxIdeDataSelector_loadItemsCallbackJustCalled, "f")) {
|
|
64
|
+
__classPrivateFieldGet(this, _GxIdeDataSelector_chTabularGridObjectsEl, "f").selectRow(__classPrivateFieldGet(this, _GxIdeDataSelector_firstGridObjectId, "f"));
|
|
56
65
|
}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
if (
|
|
61
|
-
|
|
62
|
-
if (result) {
|
|
63
|
-
this.getObjects();
|
|
64
|
-
}
|
|
66
|
+
__classPrivateFieldSet(this, _GxIdeDataSelector_loadItemsCallbackJustCalled, false, "f");
|
|
67
|
+
});
|
|
68
|
+
_GxIdeDataSelector_chGridKeyDownHandler.set(this, (e) => {
|
|
69
|
+
if (e.key === "Enter") {
|
|
70
|
+
__classPrivateFieldGet(this, _GxIdeDataSelector_confirmCallbackHandler, "f").call(this, e);
|
|
65
71
|
}
|
|
66
|
-
};
|
|
67
|
-
this
|
|
72
|
+
});
|
|
73
|
+
_GxIdeDataSelector_confirmCallbackHandler.set(this, (e) => {
|
|
68
74
|
e.stopPropagation();
|
|
69
75
|
this.confirmCallback(this.selectedObjectsIds);
|
|
70
|
-
};
|
|
71
|
-
this
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
this.newVariableCallbackHandler = async () => {
|
|
78
|
-
if (this.newVariableCallback) {
|
|
79
|
-
const response = await this.newVariableCallback();
|
|
80
|
-
if (response) {
|
|
81
|
-
this.getObjects();
|
|
76
|
+
});
|
|
77
|
+
_GxIdeDataSelector_editCallbackHandler.set(this, async (e) => {
|
|
78
|
+
e.stopPropagation();
|
|
79
|
+
if (this.selectedObjectsIds[0]) {
|
|
80
|
+
const result = await this.editCallback(this.selectedObjectsIds[0]);
|
|
81
|
+
if (result) {
|
|
82
|
+
__classPrivateFieldGet(this, _GxIdeDataSelector_refreshUIWithNewConfiguration, "f").call(this);
|
|
82
83
|
}
|
|
83
84
|
}
|
|
84
|
-
};
|
|
85
|
-
this
|
|
86
|
-
|
|
87
|
-
this.filterPatternEl.addEventListener("valueChanged", () => {
|
|
88
|
-
this.getObjects();
|
|
89
|
-
});
|
|
90
|
-
/* object*/
|
|
91
|
-
this.filterObjectEl.addEventListener("valueChanged", () => {
|
|
92
|
-
this.getObjects();
|
|
93
|
-
});
|
|
94
|
-
// for grid selection
|
|
95
|
-
this.chGridEl.addEventListener("selectionChanged", (ev) => {
|
|
96
|
-
this.selectedObjectsIds = ev.detail.rowsId;
|
|
97
|
-
});
|
|
98
|
-
};
|
|
99
|
-
this.chGridKeyDownHandler = (e) => {
|
|
100
|
-
if (e.key === "Enter") {
|
|
101
|
-
this.confirmCallbackHandler(e);
|
|
102
|
-
}
|
|
103
|
-
};
|
|
104
|
-
this.hostKeyPressHandler = (e) => {
|
|
85
|
+
});
|
|
86
|
+
_GxIdeDataSelector_hostKeyPressHandler.set(this, (e) => {
|
|
87
|
+
// TODO : revise why this is necessary
|
|
105
88
|
// just prevent keypress propagation
|
|
106
89
|
if (e.key === "Enter") {
|
|
107
90
|
e.stopPropagation();
|
|
108
91
|
}
|
|
109
|
-
};
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
92
|
+
});
|
|
93
|
+
_GxIdeDataSelector_objectsSelectionChangedHandler.set(this, (event) => {
|
|
94
|
+
this.selectedObjectsIds = event.detail.rowsId;
|
|
95
|
+
});
|
|
96
|
+
_GxIdeDataSelector_newVariableCallbackHandler.set(this, async () => {
|
|
97
|
+
const response = await this.newVariableCallback();
|
|
98
|
+
if (response) {
|
|
99
|
+
__classPrivateFieldGet(this, _GxIdeDataSelector_refreshUIWithNewConfiguration, "f").call(this);
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
_GxIdeDataSelector_refreshUIWithNewConfiguration.set(this, () => {
|
|
103
|
+
var _a, _b, _c;
|
|
104
|
+
this.objects = [];
|
|
105
|
+
const filters = {
|
|
106
|
+
pattern: (_a = __classPrivateFieldGet(this, _GxIdeDataSelector_filterPatternEl, "f")) === null || _a === void 0 ? void 0 : _a.value,
|
|
107
|
+
object: (_c = (_b = __classPrivateFieldGet(this, _GxIdeDataSelector_filterObjectEl, "f")) === null || _b === void 0 ? void 0 : _b.value) === null || _c === void 0 ? void 0 : _c.id
|
|
108
|
+
};
|
|
109
|
+
this.loading = true;
|
|
110
|
+
this.loadItemsCallback(filters).then((items) => {
|
|
111
|
+
if (items.length) {
|
|
112
|
+
this.objects = __classPrivateFieldGet(this, _GxIdeDataSelector_sortObjectsByName, "f").call(this, items);
|
|
113
|
+
__classPrivateFieldSet(this, _GxIdeDataSelector_firstGridObjectId, this.objects[0].id, "f");
|
|
114
|
+
__classPrivateFieldSet(this, _GxIdeDataSelector_loadItemsCallbackJustCalled, true, "f");
|
|
126
115
|
}
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
116
|
+
this.selectedObjectsIds = [];
|
|
117
|
+
this.loading = false;
|
|
118
|
+
});
|
|
119
|
+
});
|
|
120
|
+
_GxIdeDataSelector_renderFilter.set(this, () => {
|
|
121
|
+
return [
|
|
122
|
+
h("div", { class: "header__field-group field-group" }, h("div", { class: "field field-block pattern-field" }, h("label", { class: "label", htmlFor: "filter-pattern" }, __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").filter.pattern), h("ch-edit", { autoFocus: true, id: "filter-pattern", name: "filter-pattern", class: "form-input pattern-input", part: "filter-pattern", debounce: config.inputDebounce, onInput: __classPrivateFieldGet(this, _GxIdeDataSelector_refreshUIWithNewConfiguration, "f"), ref: (el) => (__classPrivateFieldSet(this, _GxIdeDataSelector_filterPatternEl, el, "f")) })), h("gx-ide-entity-selector", { id: "object-selector", value: this.defaultModule, defaultValue: this.defaultModule, selectEntityCallback: this.selectObjectCallback, ref: (el) => (__classPrivateFieldSet(this, _GxIdeDataSelector_filterObjectEl, el, "f")), class: "entity", onValueChanged: __classPrivateFieldGet(this, _GxIdeDataSelector_refreshUIWithNewConfiguration, "f") }))
|
|
123
|
+
];
|
|
124
|
+
});
|
|
125
|
+
_GxIdeDataSelector_renderObjects.set(this, () => {
|
|
126
|
+
const gridIsEmpty = !this.objects.length;
|
|
127
|
+
const displayLoader = this.loader && this.loading;
|
|
128
|
+
if (!gridIsEmpty || displayLoader) {
|
|
129
|
+
__classPrivateFieldSet(this, _GxIdeDataSelector_animateEmptyState, true, "f"); // improve performance if is first render
|
|
130
|
+
}
|
|
131
|
+
return (h("ch-tabular-grid", { class: {
|
|
132
|
+
"tabular-grid": true,
|
|
133
|
+
"empty-result": this.objects.length === 0,
|
|
134
|
+
"data": true
|
|
135
|
+
}, rowSelectionMode: this.selectionType, onKeyDown: __classPrivateFieldGet(this, _GxIdeDataSelector_chGridKeyDownHandler, "f"), part: "ch-grid-objects", onSelectionChanged: this.objects.length ? __classPrivateFieldGet(this, _GxIdeDataSelector_objectsSelectionChangedHandler, "f") : undefined, ref: (el) => (__classPrivateFieldSet(this, _GxIdeDataSelector_chTabularGridObjectsEl, el, "f")) }, h("ch-tabular-grid-columnset", { class: "tabular-grid-column-set" }, h("ch-tabular-grid-column", { "column-name-position": "text", settingable: false, size: config.tabularGrid.colSize.maxContent, class: "tabular-grid-column" }), h("ch-tabular-grid-column", { "column-name": __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").tableHead.name, "column-name-position": "text", settingable: false, size: config.tabularGrid.colSize.common, class: "tabular-grid-column" }), h("ch-tabular-grid-column", { "column-name": __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").tableHead.dataType, "column-name-position": "text", settingable: false, size: config.tabularGrid.colSize.common, class: "tabular-grid-column" }), h("ch-tabular-grid-column", { "column-name": __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").tableHead.description, "column-name-position": "text", settingable: false, size: config.tabularGrid.colSize.common, class: "tabular-grid-column" })), !gridIsEmpty ? (h("ch-tabular-grid-rowset", { class: "tabular-grid-rowset" }, this.objects.map((obj) => (h("ch-tabular-grid-row", { rowid: obj.id, onDblClick: __classPrivateFieldGet(this, _GxIdeDataSelector_confirmCallbackHandler, "f"), class: "tabular-grid-row" }, h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, h("ch-image", { src: obj.type === "attribute"
|
|
130
136
|
? "objects/attribute"
|
|
131
|
-
: "objects-parts/variables", class: "icon-md" })), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.name), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.dataType), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.description)))))) : (h("ch-tabular-grid-rowset", { class: "tabular-grid-rowset" }, h("ch-tabular-grid-rowset-empty", {
|
|
132
|
-
};
|
|
137
|
+
: "objects-parts/variables", class: "icon-md" })), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.name), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.dataType), h("ch-tabular-grid-cell", { class: "tabular-grid-cell" }, obj.description)))))) : (h("ch-tabular-grid-rowset", { class: "tabular-grid-rowset" }, h("ch-tabular-grid-rowset-empty", null, displayLoader ? (h("gx-ide-loader", { loaderTitle: __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").loader.title, show: true })) : (h("gx-ide-empty-state", { isAnimated: __classPrivateFieldGet(this, _GxIdeDataSelector_animateEmptyState, "f"), stateIconSrc: FILTER_ICON, stateTitle: __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").emptyState.title })))))));
|
|
138
|
+
});
|
|
139
|
+
_GxIdeDataSelector_sortObjectsByName.set(this, (objects) =>
|
|
140
|
+
// TODO (make this a common helper function
|
|
141
|
+
// and use it in other dialog grids that
|
|
142
|
+
// require filter by name).
|
|
143
|
+
objects.sort((a, b) => {
|
|
144
|
+
const nameA = a.name.toLowerCase(), nameB = b.name.toLowerCase();
|
|
145
|
+
if (nameA < nameB) {
|
|
146
|
+
return -1;
|
|
147
|
+
}
|
|
148
|
+
if (nameA > nameB) {
|
|
149
|
+
return 1;
|
|
150
|
+
}
|
|
151
|
+
return 0;
|
|
152
|
+
}));
|
|
153
|
+
this.loading = true;
|
|
133
154
|
this.objects = [];
|
|
134
155
|
this.selectedObjectsIds = [];
|
|
135
|
-
this.
|
|
156
|
+
this.cancelCallback = undefined;
|
|
157
|
+
this.confirmCallback = undefined;
|
|
158
|
+
this.defaultModule = undefined;
|
|
136
159
|
this.displayTitle = false;
|
|
137
|
-
this.loader = false;
|
|
138
|
-
this.selectionType = "multiple";
|
|
139
|
-
this.selectObjectCallback = undefined;
|
|
140
160
|
this.editCallback = undefined;
|
|
141
|
-
this.cancelCallback = undefined;
|
|
142
161
|
this.loadItemsCallback = undefined;
|
|
162
|
+
this.loader = false;
|
|
143
163
|
this.newVariableCallback = undefined;
|
|
144
|
-
this.
|
|
145
|
-
|
|
146
|
-
evaluateLoading(loading) {
|
|
147
|
-
this.loaderEl.show = loading;
|
|
164
|
+
this.selectObjectCallback = undefined;
|
|
165
|
+
this.selectionType = "multiple";
|
|
148
166
|
}
|
|
149
|
-
// 6.COMPONENT LIFECYCLE EVENTS //
|
|
150
167
|
async componentWillLoad() {
|
|
151
|
-
this
|
|
152
|
-
|
|
168
|
+
__classPrivateFieldSet(this, _GxIdeDataSelector_componentLocale, await Locale.getComponentStrings(this.el), "f");
|
|
169
|
+
}
|
|
170
|
+
connectedCallback() {
|
|
171
|
+
__classPrivateFieldGet(this, _GxIdeDataSelector_refreshUIWithNewConfiguration, "f").call(this);
|
|
153
172
|
}
|
|
154
173
|
componentDidLoad() {
|
|
155
|
-
this.
|
|
156
|
-
this.loaderEl.container = this.chGridEl;
|
|
157
|
-
this.getObjects();
|
|
158
|
-
this.filterPatternEl.focus();
|
|
159
|
-
this.evaluateLoading(this.loading);
|
|
174
|
+
__classPrivateFieldGet(this, _GxIdeDataSelector_filterPatternEl, "f").focus();
|
|
160
175
|
}
|
|
161
176
|
componentDidRender() {
|
|
162
|
-
|
|
163
|
-
this.componentDidRenderFirstTime.emit(this._componentLocale.componentName);
|
|
164
|
-
this.renderedFirstTime = true;
|
|
165
|
-
}
|
|
166
|
-
this.loaderEl.container = this.chGridRowsetEmptyEl;
|
|
177
|
+
__classPrivateFieldGet(this, _GxIdeDataSelector_evaluateFirstRowSelection, "f").call(this);
|
|
167
178
|
}
|
|
168
|
-
// 7.LISTENERS //
|
|
169
|
-
// 8.PUBLIC METHODS API //
|
|
170
179
|
/**
|
|
171
180
|
* Suspends or reactivates the shortcuts
|
|
172
181
|
*/
|
|
173
182
|
async suspendShortcuts(suspendShortcuts) {
|
|
174
183
|
if (suspendShortcuts) {
|
|
175
|
-
this.
|
|
184
|
+
__classPrivateFieldGet(this, _GxIdeDataSelector_chShortcutsEl, "f").suspend = true;
|
|
176
185
|
}
|
|
177
186
|
else {
|
|
178
|
-
this.
|
|
187
|
+
__classPrivateFieldGet(this, _GxIdeDataSelector_chShortcutsEl, "f").suspend = false;
|
|
179
188
|
}
|
|
180
189
|
}
|
|
181
190
|
/**
|
|
@@ -185,47 +194,59 @@ const GxIdeDataSelector$1 = /*@__PURE__*/ proxyCustomElement(class GxIdeDataSele
|
|
|
185
194
|
const isValid = true;
|
|
186
195
|
return isValid;
|
|
187
196
|
}
|
|
188
|
-
// 10.RENDER() FUNCTION //
|
|
189
197
|
render() {
|
|
190
|
-
|
|
198
|
+
const newVariableButtonEnabled = !this.loading;
|
|
199
|
+
const editButtonEnabled = !this.loading && this.selectedObjectsIds.length;
|
|
200
|
+
const cancelButtonEnabled = this.loading;
|
|
201
|
+
const okButtonEnabled = !this.loading;
|
|
202
|
+
return (h(Host, { onKeyPress: __classPrivateFieldGet(this, _GxIdeDataSelector_hostKeyPressHandler, "f"), class: "widget" }, h("ch-theme", { model: CSS_BUNDLES }), h("ch-shortcuts", { src: __classPrivateFieldGet(this, _GxIdeDataSelector_shortcutsSrc, "f"), ref: (el) => (__classPrivateFieldSet(this, _GxIdeDataSelector_chShortcutsEl, el, "f")) }), h("section", { class: "section" }, h("header", { class: "header control-header-with-border spacing-body-block-start spacing-body-inline" }, __classPrivateFieldGet(this, _GxIdeDataSelector_renderFilter, "f").call(this)), __classPrivateFieldGet(this, _GxIdeDataSelector_renderObjects, "f").call(this), h("footer", { class: "footer control-footer-with-border control-footer-space-between spacing-body-inline spacing-body-block-end" }, h("div", { class: "buttons-spacer" }, h("button", {
|
|
203
|
+
// New Variable Button
|
|
204
|
+
class: "button-secondary", disabled: !newVariableButtonEnabled, part: "button button-new", type: "button", onClick: __classPrivateFieldGet(this, _GxIdeDataSelector_newVariableCallbackHandler, "f")
|
|
205
|
+
}, __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").footer.btnNew), h("button", {
|
|
206
|
+
// Edit Button
|
|
207
|
+
class: "button-secondary", disabled: !editButtonEnabled, part: "button button-edit", type: "button", onClick: editButtonEnabled && __classPrivateFieldGet(this, _GxIdeDataSelector_editCallbackHandler, "f")
|
|
208
|
+
}, __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").footer.btnEdit)), h("div", { class: "buttons-spacer" }, h("button", {
|
|
209
|
+
// Cancel Button
|
|
210
|
+
class: "button-secondary", part: "button button-cancel", disabled: !cancelButtonEnabled, type: "button", onClick: cancelButtonEnabled && this.cancelCallback
|
|
211
|
+
}, __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").footer.btnCancel), h("button", {
|
|
212
|
+
// Confirm Button
|
|
213
|
+
class: "button-primary", part: "button button-ok", disabled: !okButtonEnabled, type: "button", onClick: okButtonEnabled && __classPrivateFieldGet(this, _GxIdeDataSelector_confirmCallbackHandler, "f")
|
|
214
|
+
}, __classPrivateFieldGet(this, _GxIdeDataSelector_componentLocale, "f").footer.btnConfirm))))));
|
|
191
215
|
}
|
|
192
216
|
static get delegatesFocus() { return true; }
|
|
193
217
|
static get assetsDirs() { return ["gx-ide-assets/data-selector"]; }
|
|
194
218
|
get el() { return this; }
|
|
195
|
-
static get watchers() { return {
|
|
196
|
-
"loading": ["evaluateLoading"]
|
|
197
|
-
}; }
|
|
198
219
|
static get style() { return dataSelectorCss; }
|
|
199
220
|
}, [17, "gx-ide-data-selector", {
|
|
221
|
+
"cancelCallback": [16],
|
|
222
|
+
"confirmCallback": [16],
|
|
223
|
+
"defaultModule": [16],
|
|
200
224
|
"displayTitle": [4, "display-title"],
|
|
201
|
-
"loader": [4],
|
|
202
|
-
"selectionType": [1, "selection-type"],
|
|
203
|
-
"selectObjectCallback": [16],
|
|
204
225
|
"editCallback": [16],
|
|
205
|
-
"cancelCallback": [16],
|
|
206
226
|
"loadItemsCallback": [16],
|
|
227
|
+
"loader": [4],
|
|
207
228
|
"newVariableCallback": [16],
|
|
208
|
-
"
|
|
229
|
+
"selectObjectCallback": [16],
|
|
230
|
+
"selectionType": [1, "selection-type"],
|
|
231
|
+
"loading": [32],
|
|
209
232
|
"objects": [32],
|
|
210
233
|
"selectedObjectsIds": [32],
|
|
211
|
-
"loading": [32],
|
|
212
234
|
"suspendShortcuts": [64],
|
|
213
235
|
"validate": [64]
|
|
214
|
-
}, undefined, {
|
|
215
|
-
"loading": ["evaluateLoading"]
|
|
216
236
|
}]);
|
|
237
|
+
_GxIdeDataSelector_firstGridObjectId = new WeakMap(), _GxIdeDataSelector_loadItemsCallbackJustCalled = new WeakMap(), _GxIdeDataSelector_componentLocale = new WeakMap(), _GxIdeDataSelector_animateEmptyState = new WeakMap(), _GxIdeDataSelector_shortcutsSrc = new WeakMap(), _GxIdeDataSelector_filterPatternEl = new WeakMap(), _GxIdeDataSelector_filterObjectEl = new WeakMap(), _GxIdeDataSelector_chShortcutsEl = new WeakMap(), _GxIdeDataSelector_chTabularGridObjectsEl = new WeakMap(), _GxIdeDataSelector_evaluateFirstRowSelection = new WeakMap(), _GxIdeDataSelector_chGridKeyDownHandler = new WeakMap(), _GxIdeDataSelector_confirmCallbackHandler = new WeakMap(), _GxIdeDataSelector_editCallbackHandler = new WeakMap(), _GxIdeDataSelector_hostKeyPressHandler = new WeakMap(), _GxIdeDataSelector_objectsSelectionChangedHandler = new WeakMap(), _GxIdeDataSelector_newVariableCallbackHandler = new WeakMap(), _GxIdeDataSelector_refreshUIWithNewConfiguration = new WeakMap(), _GxIdeDataSelector_renderFilter = new WeakMap(), _GxIdeDataSelector_renderObjects = new WeakMap(), _GxIdeDataSelector_sortObjectsByName = new WeakMap();
|
|
217
238
|
function defineCustomElement$1() {
|
|
218
239
|
if (typeof customElements === "undefined") {
|
|
219
240
|
return;
|
|
220
241
|
}
|
|
221
|
-
const components = ["gx-ide-data-selector", "gx-ide-
|
|
242
|
+
const components = ["gx-ide-data-selector", "gx-ide-empty-state", "gx-ide-entity-selector", "gx-ide-loader"];
|
|
222
243
|
components.forEach(tagName => { switch (tagName) {
|
|
223
244
|
case "gx-ide-data-selector":
|
|
224
245
|
if (!customElements.get(tagName)) {
|
|
225
246
|
customElements.define(tagName, GxIdeDataSelector$1);
|
|
226
247
|
}
|
|
227
248
|
break;
|
|
228
|
-
case "gx-ide-
|
|
249
|
+
case "gx-ide-empty-state":
|
|
229
250
|
if (!customElements.get(tagName)) {
|
|
230
251
|
defineCustomElement$4();
|
|
231
252
|
}
|
|
@@ -235,7 +256,7 @@ function defineCustomElement$1() {
|
|
|
235
256
|
defineCustomElement$3();
|
|
236
257
|
}
|
|
237
258
|
break;
|
|
238
|
-
case "gx-ide-
|
|
259
|
+
case "gx-ide-loader":
|
|
239
260
|
if (!customElements.get(tagName)) {
|
|
240
261
|
defineCustomElement$2();
|
|
241
262
|
}
|