@genexus/genexus-ide-ui 0.0.98 → 0.0.100
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/ch-icon_5.cjs.entry.js +3 -2
- package/dist/cjs/ch-icon_5.cjs.entry.js.map +1 -1
- package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
- package/dist/cjs/{gx-ide-container_2.cjs.entry.js → gx-ide-container_3.cjs.entry.js} +53 -127
- package/dist/cjs/gx-ide-container_3.cjs.entry.js.map +1 -0
- package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +2 -2
- package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-data-selector.cjs.entry.js +175 -0
- package/dist/cjs/gx-ide-data-selector.cjs.entry.js.map +1 -0
- package/dist/cjs/{gx-ide-recent-news.cjs.entry.js → gx-ide-empty-state_2.cjs.entry.js} +64 -2
- package/dist/cjs/gx-ide-empty-state_2.cjs.entry.js.map +1 -0
- package/dist/cjs/gx-ide-import-from-design.cjs.entry.js +2 -9
- package/dist/cjs/gx-ide-import-from-design.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-start-page.cjs.entry.js +9 -5
- package/dist/cjs/gx-ide-start-page.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-status-buttons_2.cjs.entry.js +41 -27
- package/dist/cjs/gx-ide-status-buttons_2.cjs.entry.js.map +1 -1
- package/dist/cjs/gxg-card_2.cjs.entry.js +10 -5
- package/dist/cjs/gxg-card_2.cjs.entry.js.map +1 -1
- package/dist/cjs/gxg-combo-box_2.cjs.entry.js +62 -24
- package/dist/cjs/gxg-combo-box_2.cjs.entry.js.map +1 -1
- package/dist/cjs/gxg-form-checkbox.cjs.entry.js +151 -0
- package/dist/cjs/gxg-form-checkbox.cjs.entry.js.map +1 -0
- package/dist/cjs/gxg-list-box_2.cjs.entry.js +28 -3
- package/dist/cjs/gxg-list-box_2.cjs.entry.js.map +1 -1
- package/dist/cjs/gxg-menu-item.cjs.entry.js +1 -1
- package/dist/cjs/gxg-menu-item.cjs.entry.js.map +1 -1
- package/dist/cjs/gxg-pill.cjs.entry.js +5 -5
- package/dist/cjs/gxg-pill.cjs.entry.js.map +1 -1
- package/dist/cjs/gxg-pills.cjs.entry.js +1 -1
- package/dist/cjs/gxg-pills.cjs.entry.js.map +1 -1
- package/dist/cjs/gxg-tab_4.cjs.entry.js +97 -17
- package/dist/cjs/gxg-tab_4.cjs.entry.js.map +1 -1
- package/dist/cjs/gxg-window-v2.cjs.entry.js +28 -0
- package/dist/cjs/gxg-window-v2.cjs.entry.js.map +1 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +4 -1
- package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.css +40 -0
- package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.js +180 -0
- package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.js.map +1 -0
- package/dist/collection/components/_helpers/list-selector/list-selector-item/list-selector-item.js +1 -1
- package/dist/collection/components/_helpers/list-selector/list-selector.js +1 -1
- package/dist/collection/components/dashboard-home/dashboard-home.css +5 -0
- package/dist/collection/components/dashboard-home/dashboard-home.js +1 -1
- package/dist/collection/components/dashboard-home/dashboard-home.js.map +1 -1
- package/dist/collection/components/data-selector/data-selector.css +261 -0
- package/dist/collection/components/data-selector/data-selector.js +441 -0
- package/dist/collection/components/data-selector/data-selector.js.map +1 -0
- package/dist/collection/components/data-selector/gx-ide-assets/data-selector/langs/data-selector.lang.en.json +23 -0
- package/dist/collection/components/data-selector/gx-ide-assets/data-selector/langs/data-selector.lang.ja.json +3 -0
- package/dist/collection/components/data-selector/gx-ide-assets/data-selector/langs/data-selector.lang.zh.json +3 -0
- package/dist/collection/components/data-selector/gx-ide-assets/data-selector/shortcuts.json +15 -0
- package/dist/collection/components/import-from-design/import-from-design.js +3 -12
- package/dist/collection/components/import-from-design/import-from-design.js.map +1 -1
- package/dist/collection/components/start-page/recent-news.css +1 -1
- package/dist/collection/components/start-page/start-page.css +4 -0
- package/dist/collection/components/start-page/start-page.js +8 -4
- package/dist/collection/components/start-page/start-page.js.map +1 -1
- package/dist/components/card.js +11 -5
- package/dist/components/card.js.map +1 -1
- package/dist/components/combo-box.js +62 -24
- package/dist/components/combo-box.js.map +1 -1
- package/dist/components/gx-ide-dashboard-home.js +2 -2
- package/dist/components/gx-ide-dashboard-home.js.map +1 -1
- package/dist/components/gx-ide-data-selector.d.ts +11 -0
- package/dist/components/gx-ide-data-selector.js +347 -0
- package/dist/components/gx-ide-data-selector.js.map +1 -0
- package/dist/components/gx-ide-empty-state.d.ts +11 -0
- package/dist/components/gx-ide-empty-state.js +8 -0
- package/dist/components/gx-ide-empty-state.js.map +1 -0
- package/dist/components/gx-ide-empty-state2.js +126 -0
- package/dist/components/gx-ide-empty-state2.js.map +1 -0
- package/dist/components/gx-ide-import-from-design.js +3 -11
- package/dist/components/gx-ide-import-from-design.js.map +1 -1
- package/dist/components/gx-ide-start-page.js +21 -11
- package/dist/components/gx-ide-start-page.js.map +1 -1
- package/dist/components/gxg-menu-item.js +1 -1
- package/dist/components/gxg-menu-item.js.map +1 -1
- package/dist/components/gxg-pills.js +1 -1
- package/dist/components/gxg-pills.js.map +1 -1
- package/dist/components/gxg-top-state-bar2.js +46 -30
- package/dist/components/gxg-top-state-bar2.js.map +1 -1
- package/dist/components/gxg-window-v2.js +44 -0
- package/dist/components/gxg-window-v2.js.map +1 -0
- package/dist/components/icon2.js +3 -2
- package/dist/components/icon2.js.map +1 -1
- package/dist/components/list-box.js +27 -1
- package/dist/components/list-box.js.map +1 -1
- package/dist/components/pill.js +5 -5
- package/dist/components/pill.js.map +1 -1
- package/dist/components/recent-news.js +1 -1
- package/dist/components/recent-news.js.map +1 -1
- package/dist/components/tab-bar.js +17 -9
- package/dist/components/tab-bar.js.map +1 -1
- package/dist/components/tab-button.js +11 -4
- package/dist/components/tab-button.js.map +1 -1
- package/dist/components/tab.js +6 -3
- package/dist/components/tab.js.map +1 -1
- package/dist/components/tabs.js +73 -4
- package/dist/components/tabs.js.map +1 -1
- package/dist/esm/ch-icon_5.entry.js +3 -2
- package/dist/esm/ch-icon_5.entry.js.map +1 -1
- package/dist/esm/genexus-ide-ui.js +1 -1
- package/dist/esm/{gx-ide-container_2.entry.js → gx-ide-container_3.entry.js} +53 -128
- package/dist/esm/gx-ide-container_3.entry.js.map +1 -0
- package/dist/esm/gx-ide-dashboard-home.entry.js +2 -2
- package/dist/esm/gx-ide-dashboard-home.entry.js.map +1 -1
- package/dist/esm/gx-ide-data-selector.entry.js +171 -0
- package/dist/esm/gx-ide-data-selector.entry.js.map +1 -0
- package/dist/esm/{gx-ide-recent-news.entry.js → gx-ide-empty-state_2.entry.js} +64 -3
- package/dist/esm/gx-ide-empty-state_2.entry.js.map +1 -0
- package/dist/esm/gx-ide-import-from-design.entry.js +2 -9
- package/dist/esm/gx-ide-import-from-design.entry.js.map +1 -1
- package/dist/esm/gx-ide-start-page.entry.js +9 -5
- package/dist/esm/gx-ide-start-page.entry.js.map +1 -1
- package/dist/esm/gx-ide-status-buttons_2.entry.js +41 -27
- package/dist/esm/gx-ide-status-buttons_2.entry.js.map +1 -1
- package/dist/esm/gxg-card_2.entry.js +10 -5
- package/dist/esm/gxg-card_2.entry.js.map +1 -1
- package/dist/esm/gxg-combo-box_2.entry.js +62 -24
- package/dist/esm/gxg-combo-box_2.entry.js.map +1 -1
- package/dist/esm/gxg-form-checkbox.entry.js +147 -0
- package/dist/esm/gxg-form-checkbox.entry.js.map +1 -0
- package/dist/esm/gxg-list-box_2.entry.js +27 -2
- package/dist/esm/gxg-list-box_2.entry.js.map +1 -1
- package/dist/esm/gxg-menu-item.entry.js +1 -1
- package/dist/esm/gxg-menu-item.entry.js.map +1 -1
- package/dist/esm/gxg-pill.entry.js +5 -5
- package/dist/esm/gxg-pill.entry.js.map +1 -1
- package/dist/esm/gxg-pills.entry.js +1 -1
- package/dist/esm/gxg-pills.entry.js.map +1 -1
- package/dist/esm/gxg-tab_4.entry.js +97 -17
- package/dist/esm/gxg-tab_4.entry.js.map +1 -1
- package/dist/esm/gxg-window-v2.entry.js +24 -0
- package/dist/esm/gxg-window-v2.entry.js.map +1 -0
- package/dist/esm/loader.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.css +74 -7
- 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 +23 -0
- package/dist/genexus-ide-ui/gx-ide-assets/data-selector/langs/data-selector.lang.ja.json +3 -0
- package/dist/genexus-ide-ui/gx-ide-assets/data-selector/langs/data-selector.lang.zh.json +3 -0
- package/dist/genexus-ide-ui/gx-ide-assets/data-selector/shortcuts.json +15 -0
- package/dist/genexus-ide-ui/icon-assets/mercury/tests/balanza-path.svg +3 -0
- package/dist/genexus-ide-ui/icon-assets/mercury/tests/balanza-stroke.svg +9 -0
- package/dist/genexus-ide-ui/icon-assets/mercury/tests/folder-2.svg +3 -0
- package/dist/genexus-ide-ui/{p-b8fc93f4.entry.js → p-2c8afaa6.entry.js} +147 -112
- package/dist/genexus-ide-ui/p-2c8afaa6.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-9b96b515.entry.js → p-40f21d2d.entry.js} +116 -192
- package/dist/genexus-ide-ui/p-40f21d2d.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-5ca84a03.entry.js → p-4e155cd5.entry.js} +27 -4
- package/dist/genexus-ide-ui/p-4e155cd5.entry.js.map +1 -0
- package/dist/genexus-ide-ui/p-4fc6d6a7.entry.js +24 -0
- package/dist/genexus-ide-ui/p-4fc6d6a7.entry.js.map +1 -0
- package/dist/genexus-ide-ui/p-54e4b362.entry.js +270 -0
- package/dist/genexus-ide-ui/p-54e4b362.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-73aa4e69.entry.js → p-71f8aba2.entry.js} +13 -13
- package/dist/genexus-ide-ui/{p-73aa4e69.entry.js.map → p-71f8aba2.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/p-75f0ba9d.entry.js +273 -0
- package/dist/genexus-ide-ui/p-75f0ba9d.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-545291ad.entry.js → p-7dc3a137.entry.js} +4 -3
- package/dist/genexus-ide-ui/{p-545291ad.entry.js.map → p-7dc3a137.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-f186adfd.entry.js → p-85639fa5.entry.js} +100 -22
- package/dist/genexus-ide-ui/p-85639fa5.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-30365c44.entry.js → p-a3e07b86.entry.js} +6 -7
- package/dist/genexus-ide-ui/p-a3e07b86.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-9c6c5a61.entry.js → p-a592930e.entry.js} +37 -32
- package/dist/genexus-ide-ui/p-a592930e.entry.js.map +1 -0
- package/dist/genexus-ide-ui/p-b0e539fe.entry.js +41 -0
- package/dist/genexus-ide-ui/p-b0e539fe.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-a439149b.entry.js → p-bff2603a.entry.js} +8 -3
- package/dist/genexus-ide-ui/p-bff2603a.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-050bc199.entry.js → p-e0924e3f.entry.js} +96 -6
- package/dist/genexus-ide-ui/p-e0924e3f.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-58cad79d.entry.js → p-e240361a.entry.js} +58 -68
- package/dist/genexus-ide-ui/p-e240361a.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-e585f550.entry.js → p-e3925761.entry.js} +4 -5
- package/dist/genexus-ide-ui/{p-e585f550.entry.js.map → p-e3925761.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-219d7b29.entry.js → p-eeb35622.entry.js} +165 -89
- package/dist/genexus-ide-ui/p-eeb35622.entry.js.map +1 -0
- package/dist/node_modules/@genexus/gemini/dist/collection/components/card/card.css +13 -1
- package/dist/node_modules/@genexus/gemini/dist/collection/components/pills/pill.css +16 -51
- package/dist/node_modules/@genexus/gemini/dist/collection/components/pills/pills.css +1 -8
- package/dist/node_modules/@genexus/gemini/dist/collection/components/tab/tab.css +7 -0
- package/dist/node_modules/@genexus/gemini/dist/collection/components/tab-bar/tab-bar.css +18 -0
- package/dist/node_modules/@genexus/gemini/dist/collection/components/tab-button/tab-button.css +17 -0
- package/dist/node_modules/@genexus/gemini/dist/collection/components/tabs/tabs.css +64 -13
- package/dist/node_modules/@genexus/gemini/dist/collection/components/top-state-bar/gxg-top-state-bar.css +120 -43
- package/dist/node_modules/@genexus/gemini/dist/collection/components/window-v2/window.css +3 -0
- package/dist/types/components/_helpers/empty-state/gx-ide-empty-state.d.ts +34 -0
- package/dist/types/components/data-selector/data-selector.d.ts +109 -0
- package/dist/types/components/import-from-design/import-from-design.d.ts +1 -3
- package/dist/types/components.d.ts +220 -40
- package/package.json +3 -3
- package/dist/cjs/gx-ide-container_2.cjs.entry.js.map +0 -1
- package/dist/cjs/gx-ide-recent-news.cjs.entry.js.map +0 -1
- package/dist/cjs/gx-ide-title_2.cjs.entry.js +0 -77
- package/dist/cjs/gx-ide-title_2.cjs.entry.js.map +0 -1
- package/dist/cjs/reposition-scroll-86d8fac5.js +0 -33
- package/dist/cjs/reposition-scroll-86d8fac5.js.map +0 -1
- package/dist/components/reposition-scroll.js +0 -31
- package/dist/components/reposition-scroll.js.map +0 -1
- package/dist/esm/gx-ide-container_2.entry.js.map +0 -1
- package/dist/esm/gx-ide-recent-news.entry.js.map +0 -1
- package/dist/esm/gx-ide-title_2.entry.js +0 -72
- package/dist/esm/gx-ide-title_2.entry.js.map +0 -1
- package/dist/esm/reposition-scroll-cfff7017.js +0 -31
- package/dist/esm/reposition-scroll-cfff7017.js.map +0 -1
- package/dist/genexus-ide-ui/p-050bc199.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-219d7b29.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-30365c44.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-3e87257c.entry.js +0 -41
- package/dist/genexus-ide-ui/p-3e87257c.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-58cad79d.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-5ca84a03.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-9b96b515.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-9c6c5a61.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-a439149b.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-b8fc93f4.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-efa273d7.js +0 -27
- package/dist/genexus-ide-ui/p-efa273d7.js.map +0 -1
- package/dist/genexus-ide-ui/p-f186adfd.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-f5034221.entry.js +0 -258
- package/dist/genexus-ide-ui/p-f5034221.entry.js.map +0 -1
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
import { Host, h } from "@stencil/core";
|
|
2
|
+
export class GxIdeEmptyState {
|
|
3
|
+
constructor() {
|
|
4
|
+
/*
|
|
5
|
+
INDEX:
|
|
6
|
+
1.OWN PROPERTIES
|
|
7
|
+
2.REFERENCE TO ELEMENTS
|
|
8
|
+
3.STATE() VARIABLES
|
|
9
|
+
4.PUBLIC PROPERTY API | WATCH'S
|
|
10
|
+
5.EVENTS (EMIT)
|
|
11
|
+
6.COMPONENT LIFECYCLE METHODS
|
|
12
|
+
7.LISTENERS
|
|
13
|
+
8.PUBLIC METHODS API
|
|
14
|
+
9.LOCAL METHODS
|
|
15
|
+
10.RENDER() FUNCTION
|
|
16
|
+
*/
|
|
17
|
+
// 1.OWN PROPERTIES //
|
|
18
|
+
this.transitionSpeed = 200;
|
|
19
|
+
this.stateIcon = undefined;
|
|
20
|
+
this.stateTitle = undefined;
|
|
21
|
+
this.stateDescription = undefined;
|
|
22
|
+
this.primaryButtonLabel = undefined;
|
|
23
|
+
this.secondaryButtonLabel = undefined;
|
|
24
|
+
this.display = false;
|
|
25
|
+
}
|
|
26
|
+
watchDisplayHandler(display) {
|
|
27
|
+
if (display) {
|
|
28
|
+
this.primaryButtonEl.disabled = false;
|
|
29
|
+
this.secondaryButtonEl.disabled = false;
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
setTimeout(() => {
|
|
33
|
+
this.primaryButtonEl.disabled = true;
|
|
34
|
+
this.secondaryButtonEl.disabled = true;
|
|
35
|
+
}, this.transitionSpeed);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
// 5.EVENTS (EMIT) //
|
|
39
|
+
// 6.COMPONENT LIFECYCLE METHODS //
|
|
40
|
+
componentWillLoad() {
|
|
41
|
+
this.el.style.setProperty("--state-transition-speed", `${this.transitionSpeed}ms`);
|
|
42
|
+
}
|
|
43
|
+
componentDidLoad() {
|
|
44
|
+
this.display = true;
|
|
45
|
+
}
|
|
46
|
+
// 7.LISTENERS //
|
|
47
|
+
// 8.PUBLIC METHODS API //
|
|
48
|
+
// 9.LOCAL METHODS //
|
|
49
|
+
// 10.RENDER() FUNCTION //
|
|
50
|
+
render() {
|
|
51
|
+
return (h(Host, null, h("div", { class: { "container": true, "container--visible": this.display } }, this.stateIcon ? (h("span", { class: "icon-wrapper" }, h("gxg-icon", { class: "icon", type: this.stateIcon, color: "mercury-primary" }, this.stateTitle))) : null, h("main", { class: "container__main" }, this.stateTitle ? (h("gx-ide-title", { alignment: "center" }, this.stateTitle)) : null, this.stateDescription ? (h("gxg-text", { textAlign: "center" }, this.stateDescription)) : null), h("div", { class: "container__buttons" }, this.primaryButtonLabel ? (h("gxg-button", { type: "primary-text-only", ref: el => (this.primaryButtonEl = el) }, this.primaryButtonLabel)) : null, this.secondaryButtonLabel ? (h("gxg-button", { type: "secondary-text-only", ref: el => (this.secondaryButtonEl = el) }, this.secondaryButtonLabel)) : null))));
|
|
52
|
+
}
|
|
53
|
+
static get is() { return "gx-ide-empty-state"; }
|
|
54
|
+
static get encapsulation() { return "shadow"; }
|
|
55
|
+
static get originalStyleUrls() {
|
|
56
|
+
return {
|
|
57
|
+
"$": ["gx-ide-empty-state.scss"]
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
static get styleUrls() {
|
|
61
|
+
return {
|
|
62
|
+
"$": ["gx-ide-empty-state.css"]
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
static get properties() {
|
|
66
|
+
return {
|
|
67
|
+
"stateIcon": {
|
|
68
|
+
"type": "string",
|
|
69
|
+
"mutable": false,
|
|
70
|
+
"complexType": {
|
|
71
|
+
"original": "string",
|
|
72
|
+
"resolved": "string",
|
|
73
|
+
"references": {}
|
|
74
|
+
},
|
|
75
|
+
"required": false,
|
|
76
|
+
"optional": true,
|
|
77
|
+
"docs": {
|
|
78
|
+
"tags": [],
|
|
79
|
+
"text": "The state icon"
|
|
80
|
+
},
|
|
81
|
+
"attribute": "state-icon",
|
|
82
|
+
"reflect": false
|
|
83
|
+
},
|
|
84
|
+
"stateTitle": {
|
|
85
|
+
"type": "string",
|
|
86
|
+
"mutable": false,
|
|
87
|
+
"complexType": {
|
|
88
|
+
"original": "string",
|
|
89
|
+
"resolved": "string",
|
|
90
|
+
"references": {}
|
|
91
|
+
},
|
|
92
|
+
"required": true,
|
|
93
|
+
"optional": false,
|
|
94
|
+
"docs": {
|
|
95
|
+
"tags": [],
|
|
96
|
+
"text": "The state title"
|
|
97
|
+
},
|
|
98
|
+
"attribute": "state-title",
|
|
99
|
+
"reflect": false
|
|
100
|
+
},
|
|
101
|
+
"stateDescription": {
|
|
102
|
+
"type": "string",
|
|
103
|
+
"mutable": false,
|
|
104
|
+
"complexType": {
|
|
105
|
+
"original": "string",
|
|
106
|
+
"resolved": "string",
|
|
107
|
+
"references": {}
|
|
108
|
+
},
|
|
109
|
+
"required": false,
|
|
110
|
+
"optional": true,
|
|
111
|
+
"docs": {
|
|
112
|
+
"tags": [],
|
|
113
|
+
"text": "The state description"
|
|
114
|
+
},
|
|
115
|
+
"attribute": "state-description",
|
|
116
|
+
"reflect": false
|
|
117
|
+
},
|
|
118
|
+
"primaryButtonLabel": {
|
|
119
|
+
"type": "string",
|
|
120
|
+
"mutable": false,
|
|
121
|
+
"complexType": {
|
|
122
|
+
"original": "string",
|
|
123
|
+
"resolved": "string",
|
|
124
|
+
"references": {}
|
|
125
|
+
},
|
|
126
|
+
"required": false,
|
|
127
|
+
"optional": true,
|
|
128
|
+
"docs": {
|
|
129
|
+
"tags": [],
|
|
130
|
+
"text": "The button primary label"
|
|
131
|
+
},
|
|
132
|
+
"attribute": "primary-button-label",
|
|
133
|
+
"reflect": false
|
|
134
|
+
},
|
|
135
|
+
"secondaryButtonLabel": {
|
|
136
|
+
"type": "string",
|
|
137
|
+
"mutable": false,
|
|
138
|
+
"complexType": {
|
|
139
|
+
"original": "string",
|
|
140
|
+
"resolved": "string",
|
|
141
|
+
"references": {}
|
|
142
|
+
},
|
|
143
|
+
"required": false,
|
|
144
|
+
"optional": true,
|
|
145
|
+
"docs": {
|
|
146
|
+
"tags": [],
|
|
147
|
+
"text": "The button secondary label"
|
|
148
|
+
},
|
|
149
|
+
"attribute": "secondary-button-label",
|
|
150
|
+
"reflect": false
|
|
151
|
+
},
|
|
152
|
+
"display": {
|
|
153
|
+
"type": "boolean",
|
|
154
|
+
"mutable": true,
|
|
155
|
+
"complexType": {
|
|
156
|
+
"original": "boolean",
|
|
157
|
+
"resolved": "boolean",
|
|
158
|
+
"references": {}
|
|
159
|
+
},
|
|
160
|
+
"required": false,
|
|
161
|
+
"optional": false,
|
|
162
|
+
"docs": {
|
|
163
|
+
"tags": [],
|
|
164
|
+
"text": "If true, it will display the content"
|
|
165
|
+
},
|
|
166
|
+
"attribute": "display",
|
|
167
|
+
"reflect": false,
|
|
168
|
+
"defaultValue": "false"
|
|
169
|
+
}
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
static get elementRef() { return "el"; }
|
|
173
|
+
static get watchers() {
|
|
174
|
+
return [{
|
|
175
|
+
"propName": "display",
|
|
176
|
+
"methodName": "watchDisplayHandler"
|
|
177
|
+
}];
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
//# sourceMappingURL=gx-ide-empty-state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gx-ide-empty-state.js","sourceRoot":"","sources":["../../../../src/components/_helpers/empty-state/gx-ide-empty-state.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAOzE,MAAM,OAAO,eAAe;;QAC1B;;;;;;;;;;;;QAYA;QAEA,sBAAsB;QAEd,oBAAe,GAAW,GAAG,CAAC;;;;;;uBAwCM,KAAK;;IAEjD,mBAAmB,CAAC,OAAgB;QAClC,IAAI,OAAO,EAAE;YACX,IAAI,CAAC,eAAe,CAAC,QAAQ,GAAG,KAAK,CAAC;YACtC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,GAAG,KAAK,CAAC;SACzC;aAAM;YACL,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,eAAe,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACrC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,GAAG,IAAI,CAAC;YACzC,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;SAC1B;IACH,CAAC;IAED,qBAAqB;IAErB,mCAAmC;IAEnC,iBAAiB;QACf,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CACvB,0BAA0B,EAC1B,GAAG,IAAI,CAAC,eAAe,IAAI,CAC5B,CAAC;IACJ,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IAED,iBAAiB;IAEjB,0BAA0B;IAE1B,qBAAqB;IAErB,0BAA0B;IAE1B,MAAM;QACJ,OAAO,CACL,EAAC,IAAI;YACH,WAAK,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,CAAC,OAAO,EAAE;gBAClE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAChB,YAAM,KAAK,EAAC,cAAc;oBACxB,gBACE,KAAK,EAAC,MAAM,EACZ,IAAI,EAAE,IAAI,CAAC,SAAS,EACpB,KAAK,EAAC,iBAAiB,IAEtB,IAAI,CAAC,UAAU,CACP,CACN,CACR,CAAC,CAAC,CAAC,IAAI;gBACR,YAAM,KAAK,EAAC,iBAAiB;oBAC1B,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CACjB,oBAAc,SAAS,EAAC,QAAQ,IAAE,IAAI,CAAC,UAAU,CAAgB,CAClE,CAAC,CAAC,CAAC,IAAI;oBACP,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CACvB,gBAAU,SAAS,EAAC,QAAQ,IAAE,IAAI,CAAC,gBAAgB,CAAY,CAChE,CAAC,CAAC,CAAC,IAAI,CACH;gBACP,WAAK,KAAK,EAAC,oBAAoB;oBAC5B,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CACzB,kBACE,IAAI,EAAC,mBAAmB,EACxB,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,GAAG,EAA0B,CAAC,IAE7D,IAAI,CAAC,kBAAkB,CACb,CACd,CAAC,CAAC,CAAC,IAAI;oBACP,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAC3B,kBACE,IAAI,EAAC,qBAAqB,EAC1B,GAAG,EAAE,EAAE,CAAC,EAAE,CACR,CAAC,IAAI,CAAC,iBAAiB,GAAG,EAA0B,CAAC,IAGtD,IAAI,CAAC,oBAAoB,CACf,CACd,CAAC,CAAC,CAAC,IAAI,CACJ,CACF,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Host, h, Prop, Watch, Element } from \"@stencil/core\";\n\n@Component({\n tag: \"gx-ide-empty-state\",\n styleUrl: \"gx-ide-empty-state.scss\",\n shadow: true\n})\nexport class GxIdeEmptyState {\n /*\nINDEX:\n1.OWN PROPERTIES \n2.REFERENCE TO ELEMENTS\n3.STATE() VARIABLES\n4.PUBLIC PROPERTY API | WATCH'S\n5.EVENTS (EMIT)\n6.COMPONENT LIFECYCLE METHODS\n7.LISTENERS\n8.PUBLIC METHODS API\n9.LOCAL METHODS\n10.RENDER() FUNCTION\n*/\n\n // 1.OWN PROPERTIES //\n\n private transitionSpeed: number = 200;\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeEmptyStateElement;\n private primaryButtonEl!: HTMLGxgButtonElement;\n private secondaryButtonEl!: HTMLGxgButtonElement;\n\n // 3.STATE() VARIABLES //\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n /**\n * The state icon\n */\n @Prop() readonly stateIcon?: string;\n\n /**\n * The state title\n */\n @Prop() readonly stateTitle!: string;\n\n /**\n * The state description\n */\n @Prop() readonly stateDescription?: string;\n\n /**\n * The button primary label\n */\n @Prop() readonly primaryButtonLabel?: string;\n\n /**\n * The button secondary label\n */\n @Prop() readonly secondaryButtonLabel?: string;\n\n /**\n * If true, it will display the content\n */\n @Prop({ mutable: true }) display: boolean = false;\n @Watch(\"display\")\n watchDisplayHandler(display: boolean) {\n if (display) {\n this.primaryButtonEl.disabled = false;\n this.secondaryButtonEl.disabled = false;\n } else {\n setTimeout(() => {\n this.primaryButtonEl.disabled = true;\n this.secondaryButtonEl.disabled = true;\n }, this.transitionSpeed);\n }\n }\n\n // 5.EVENTS (EMIT) //\n\n // 6.COMPONENT LIFECYCLE METHODS //\n\n componentWillLoad() {\n this.el.style.setProperty(\n \"--state-transition-speed\",\n `${this.transitionSpeed}ms`\n );\n }\n\n componentDidLoad() {\n this.display = true;\n }\n\n // 7.LISTENERS //\n\n // 8.PUBLIC METHODS API //\n\n // 9.LOCAL METHODS //\n\n // 10.RENDER() FUNCTION //\n\n render() {\n return (\n <Host>\n <div class={{ \"container\": true, \"container--visible\": this.display }}>\n {this.stateIcon ? (\n <span class=\"icon-wrapper\">\n <gxg-icon\n class=\"icon\"\n type={this.stateIcon}\n color=\"mercury-primary\"\n >\n {this.stateTitle}\n </gxg-icon>\n </span>\n ) : null}\n <main class=\"container__main\">\n {this.stateTitle ? (\n <gx-ide-title alignment=\"center\">{this.stateTitle}</gx-ide-title>\n ) : null}\n {this.stateDescription ? (\n <gxg-text textAlign=\"center\">{this.stateDescription}</gxg-text>\n ) : null}\n </main>\n <div class=\"container__buttons\">\n {this.primaryButtonLabel ? (\n <gxg-button\n type=\"primary-text-only\"\n ref={el => (this.primaryButtonEl = el as HTMLGxgButtonElement)}\n >\n {this.primaryButtonLabel}\n </gxg-button>\n ) : null}\n {this.secondaryButtonLabel ? (\n <gxg-button\n type=\"secondary-text-only\"\n ref={el =>\n (this.secondaryButtonEl = el as HTMLGxgButtonElement)\n }\n >\n {this.secondaryButtonLabel}\n </gxg-button>\n ) : null}\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
|
package/dist/collection/components/_helpers/list-selector/list-selector-item/list-selector-item.js
CHANGED
|
@@ -249,7 +249,7 @@ export class GxIdeListSelectorItem {
|
|
|
249
249
|
"mutable": true,
|
|
250
250
|
"complexType": {
|
|
251
251
|
"original": "Color",
|
|
252
|
-
"resolved": "\"alwaysblack\" | \"auto\" | \"disabled\" | \"error\" | \"indeterminate\" | \"mercury\" | \"mercury-on-primary\" | \"mercury-primary\" | \"mercury-text-on-message\" | \"negative\" | \"onbackground\" | \"ondisabled\" | \"primary-active\" | \"primary-enabled\" | \"primary-hover\" | \"success\" | \"warning\"",
|
|
252
|
+
"resolved": "\"alwaysblack\" | \"auto\" | \"disabled\" | \"error\" | \"indeterminate\" | \"mercury\" | \"mercury-neutral\" | \"mercury-on-primary\" | \"mercury-primary\" | \"mercury-text-on-message\" | \"negative\" | \"onbackground\" | \"ondisabled\" | \"primary-active\" | \"primary-enabled\" | \"primary-hover\" | \"success\" | \"warning\"",
|
|
253
253
|
"references": {
|
|
254
254
|
"Color": {
|
|
255
255
|
"location": "import",
|
|
@@ -244,7 +244,7 @@ export class GxIdeListSelector {
|
|
|
244
244
|
"mutable": false,
|
|
245
245
|
"complexType": {
|
|
246
246
|
"original": "Color",
|
|
247
|
-
"resolved": "\"alwaysblack\" | \"auto\" | \"disabled\" | \"error\" | \"indeterminate\" | \"mercury\" | \"mercury-on-primary\" | \"mercury-primary\" | \"mercury-text-on-message\" | \"negative\" | \"onbackground\" | \"ondisabled\" | \"primary-active\" | \"primary-enabled\" | \"primary-hover\" | \"success\" | \"warning\"",
|
|
247
|
+
"resolved": "\"alwaysblack\" | \"auto\" | \"disabled\" | \"error\" | \"indeterminate\" | \"mercury\" | \"mercury-neutral\" | \"mercury-on-primary\" | \"mercury-primary\" | \"mercury-text-on-message\" | \"negative\" | \"onbackground\" | \"ondisabled\" | \"primary-active\" | \"primary-enabled\" | \"primary-hover\" | \"success\" | \"warning\"",
|
|
248
248
|
"references": {
|
|
249
249
|
"Color": {
|
|
250
250
|
"location": "import",
|
|
@@ -230,6 +230,9 @@ Found on /common/helpers.tsx hiChar function is used to add a span/class to ever
|
|
|
230
230
|
text-overflow: ellipsis;
|
|
231
231
|
}
|
|
232
232
|
.kb .kb-detail {
|
|
233
|
+
display: flex;
|
|
234
|
+
flex-direction: column;
|
|
235
|
+
align-items: start;
|
|
233
236
|
flex-wrap: wrap;
|
|
234
237
|
margin-block-start: var(--mer-spacing--md);
|
|
235
238
|
gap: var(--mer-spacing--md);
|
|
@@ -239,6 +242,8 @@ Found on /common/helpers.tsx hiChar function is used to add a span/class to ever
|
|
|
239
242
|
-webkit-line-clamp: 1;
|
|
240
243
|
-webkit-box-orient: vertical;
|
|
241
244
|
overflow: hidden;
|
|
245
|
+
font-style: italic;
|
|
246
|
+
opacity: 0.5;
|
|
242
247
|
}
|
|
243
248
|
|
|
244
249
|
.environment {
|
|
@@ -93,7 +93,7 @@ export class GxIdeDashboardHome {
|
|
|
93
93
|
}
|
|
94
94
|
// 11.RENDER() MAIN FUNCTION //
|
|
95
95
|
render() {
|
|
96
|
-
return (h(Host, null, h("div", { class: "gx-ide-main-wrapper" }, h("div", { class: "grid grid--basic" }, h("div", { class: "kb gxi-overflow-auto" }, h("gxg-title-editable", { value: this.kb.name, "disable-edition": this.editingKbName, "click-to-edit": true, fluid: true, ref: el => (this.kbNameEl = el), onValueChanged: this.handleKbNameChange, focusType: "text", debounce: true }), h("div", { class: "align-center kb-detail" }, h("gxg-pill", { id: "pill",
|
|
96
|
+
return (h(Host, null, h("div", { class: "gx-ide-main-wrapper" }, h("div", { class: "grid grid--basic" }, h("div", { class: "kb gxi-overflow-auto" }, h("gxg-title-editable", { value: this.kb.name, "disable-edition": this.editingKbName, "click-to-edit": true, fluid: true, ref: el => (this.kbNameEl = el), onValueChanged: this.handleKbNameChange, focusType: "text", debounce: true }), h("div", { class: "align-center kb-detail" }, h("gxg-pill", { id: "pill", type: "static", icon: "objects/procedure" }, this._componentLocale.version, ": ", this.kb.currentVersion), h("gxg-text", { class: "display-inline", type: "text-gray", padding: "s" }, this._componentLocale.created, ":", " ", formatDate(this.kb.created, "date-time-short"), " -", " ", this._componentLocale.lastBuild, ":", " ", formatDate(this.kb.lastBuild, "date-time-short")))), h("div", { class: "environment" }, h("gxg-title-editable", { value: this.environment.name, "disable-edition": this.editingEnvName, "click-to-edit": true, "title-type": "h3", ref: el => (this.envNameEl = el), onValueChanged: this.handleEnvNameChange, focusType: "text", debounce: true, disableEdition: true }), h("div", { class: "grid grid--environments" }, h("gxg-card", { background: "gray-01", cardType: "mini", padding: "s", cardTitle: this.renderFrontEndTitle() }, h("div", { class: "front-end" }, this.environment.frontEnd.map((obj) => (h("div", { class: "align-center" }, h("gxg-icon", { type: obj.icon, color: "onbackground", style: {
|
|
97
97
|
"--mer-text__on-surface": "var(--gray-05);"
|
|
98
98
|
} }), obj.name))))), h("gxg-card", { background: "gray-01", cardType: "mini", padding: "s", cardTitle: this._componentLocale.environment.backEnd }, h("div", { class: "align-center" }, h("gxg-icon", { type: this.environment.backEnd.icon, color: "onbackground", style: {
|
|
99
99
|
"--mer-text__on-surface": "var(--gray-05);"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dashboard-home.js","sourceRoot":"","sources":["../../../src/components/dashboard-home/dashboard-home.tsx"],"names":[],"mappings":"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","sourcesContent":["/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n State,\n Element,\n Event,\n EventEmitter\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../common/locale\";\nimport { formatDate } from \"../../common/helpers\";\n\nconst mapStatusToIcons: {\n [key in RecentObjectStatus]: StatusIcons;\n} = {\n new: \"gx-server/new\",\n modified: \"patterns-default-associated/modified\",\n conflicted: \"patterns-default-associated/synchronized\",\n unmodified: \"gx-server/delete\"\n};\n\n@Component({\n tag: \"gx-ide-dashboard-home\",\n styleUrl: \"dashboard-home.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/dashboard-home\"]\n})\nexport class GxIdeDashboardHome {\n /*\n INDEX:\n 1.OWN PROPERTIES \n 2.REFERENCE TO ELEMENTS\n 3.STATE() VARIABLES\n 4.PUBLIC PROPERTY API | WATCH'S\n 5.EVENTS (EMIT)\n 6.COMPONENT LIFECYCLE METHODS\n 7.LISTENERS\n 8.PUBLIC METHODS API\n 9.LOCAL METHODS\n 10.RENDER() FUNCTIONS\n 11.RENDER() MAIN FUNCTION\n */\n\n // 1.OWN PROPERTIES //\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private renderedFirstTime = false;\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeDashboardHomeElement;\n\n private kbNameEl!: HTMLGxgTitleEditableElement;\n private envNameEl!: HTMLGxgTitleEditableElement;\n /* private projectDescriptionEl!: HTMLGxgFormTextareaElement;*/\n\n // 3.STATE() VARIABLES //\n\n /**\n * The editing state for the title.\n */\n @State() editingKbName = false;\n\n /**\n * The editing state for the environment name.\n */\n @State() editingEnvName = false;\n\n /**\n * The editing state for the project details.\n */\n @State() editingProjectDescription = false;\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n /**\n * The KB basic properties.\n */\n @Prop() readonly kb: KBData;\n\n /**\n * Information of the current environment.\n */\n @Prop() readonly environment: EnvironmentData;\n\n /**\n * Project Detail description.\n */\n @Prop() readonly projectDescription: string;\n\n /**\n * Recently edited objects.\n */\n @Prop() readonly recentObjects: recentObjectData[];\n\n /**\n * Callback invoked when user tries to rename the KB.\n * Receives the new name as a parameter\n * and returns a promise with the result of the operation.\n */\n @Prop() readonly renameKBCallback: (name: string) => Promise<EditResult>;\n\n /**\n * Callback invoked when user tries to rename the KB environment.\n * Receives the new name as a parameter\n * and returns a promise with the result of the operation.\n */\n @Prop() readonly renameEnvironmentCallback: (\n name: string\n ) => Promise<EditResult>;\n\n /**\n * Callback invoked when user tries to edit the Project Description.\n * The edition is resolved by the host.\n */\n @Prop() readonly editDescriptionCallback: () => Promise<void>;\n\n /**\n * Callback invoked when user tries to open one of the listed Recent Objects\n * Receives the internal ID of the object\n */\n @Prop() readonly openObjectCallback: (id: number) => Promise<void>;\n\n // 5.EVENTS (EMIT) //\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 METHODS //\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\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 // 9.LOCAL METHODS //\n\n // Kb Name\n\n private handleKbNameChange = async () => {\n if (this.renameKBCallback) {\n const response = this.renameKBCallback(this.kbNameEl.value);\n response.then((result: EditResult) => {\n if (result.success) {\n this.kb.name = this.kbNameEl.value;\n }\n this.editValidation(result, this.kbNameEl);\n });\n }\n };\n\n // Environment Name\n\n private handleEnvNameChange = async () => {\n if (this.renameEnvironmentCallback) {\n const response = this.renameEnvironmentCallback(this.envNameEl.value);\n response.then((result: EditResult) => {\n if (result.success) {\n this.environment.name = this.envNameEl.value;\n }\n this.editValidation(result, this.envNameEl);\n });\n }\n };\n\n // Project Description\n private toggleEditDescription = async () => {\n this.editingProjectDescription = !this.editingProjectDescription;\n };\n\n private handleDescriptionChange = async () => {\n if (this.editDescriptionCallback) {\n await this.editDescriptionCallback();\n }\n };\n\n // Recent Objects\n\n private openObject = (id: number) => {\n this.openObjectCallback(id);\n };\n\n // Validation\n\n private editValidation = (result: EditResult, el: any) => {\n if (!result.success) {\n el.validationStatus = \"error\";\n el.validationMessage = result.errorMessage;\n }\n };\n\n // 10.RENDER() FUNCTIONS //\n\n private renderProjectContent = (): Element => {\n return this.editingProjectDescription ? (\n <div>\n <gxg-form-textarea\n rows={12}\n value={this.projectDescription}\n /* ref={(el: HTMLGxgFormTextareaElement) =>\n (this.projectDescriptionEl = el as HTMLGxgFormTextareaElement)\n }*/\n ></gxg-form-textarea>\n <div class=\"project-buttons align-center\">\n <gxg-text type=\"text-link\" onClick={this.handleDescriptionChange}>\n {this._componentLocale.save}\n </gxg-text>\n <gxg-text type=\"text-link\" onClick={this.toggleEditDescription}>\n {this._componentLocale.discard}\n </gxg-text>\n </div>\n </div>\n ) : (\n <div>\n <div innerHTML={this.projectDescription}></div>\n <gxg-text\n icon=\"gemini-tools/edit\"\n type=\"text-link\"\n onClick={this.toggleEditDescription}\n >\n {this._componentLocale.edit}\n </gxg-text>\n </div>\n );\n };\n\n private renderFrontEndTitle() {\n return this.environment.frontEnd.length <= 1\n ? this._componentLocale.environment.frontEndLang\n : this._componentLocale.environment.frontEndLangs;\n }\n\n // 11.RENDER() MAIN FUNCTION //\n\n render() {\n return (\n <Host>\n <div class=\"gx-ide-main-wrapper\">\n <div class=\"grid grid--basic\">\n <div class=\"kb gxi-overflow-auto\">\n <gxg-title-editable\n value={this.kb.name}\n disable-edition={this.editingKbName}\n click-to-edit={true}\n fluid\n ref={el => (this.kbNameEl = el as HTMLGxgTitleEditableElement)}\n onValueChanged={this.handleKbNameChange}\n focusType=\"text\"\n debounce\n ></gxg-title-editable>\n <div class=\"align-center kb-detail\">\n <gxg-pill\n id=\"pill\"\n class=\"version-pill\"\n type=\"static\"\n icon=\"objects/procedure\"\n >\n {this._componentLocale.version}: {this.kb.currentVersion}\n </gxg-pill>\n <gxg-text\n class=\"display-inline\"\n type=\"text-regular\"\n padding=\"s\"\n italic\n >\n {this._componentLocale.created}:{\" \"}\n {formatDate(this.kb.created, \"date-time-short\")} -{\" \"}\n {this._componentLocale.lastBuild}:{\" \"}\n {formatDate(this.kb.lastBuild, \"date-time-short\")}\n </gxg-text>\n </div>\n </div>\n\n <div class=\"environment\">\n <gxg-title-editable\n value={this.environment.name}\n disable-edition={this.editingEnvName}\n click-to-edit={true}\n title-type=\"h3\"\n ref={el => (this.envNameEl = el as HTMLGxgTitleEditableElement)}\n onValueChanged={this.handleEnvNameChange}\n focusType=\"text\"\n debounce\n ></gxg-title-editable>\n <div class=\"grid grid--environments\">\n <gxg-card\n background=\"gray-01\"\n cardType=\"mini\"\n padding=\"s\"\n cardTitle={this.renderFrontEndTitle()}\n >\n <div class=\"front-end\">\n {this.environment.frontEnd.map(\n (obj: EnvironmentItemData) => (\n <div class=\"align-center\">\n <gxg-icon\n type={obj.icon}\n color=\"onbackground\"\n style={{\n \"--mer-text__on-surface\": \"var(--gray-05);\"\n }}\n ></gxg-icon>\n {obj.name}\n </div>\n )\n )}\n </div>\n </gxg-card>\n\n <gxg-card\n background=\"gray-01\"\n cardType=\"mini\"\n padding=\"s\"\n cardTitle={this._componentLocale.environment.backEnd}\n >\n <div class=\"align-center\">\n <gxg-icon\n type={this.environment.backEnd.icon}\n color=\"onbackground\"\n style={{\n \"--mer-text__on-surface\": \"var(--gray-05);\"\n }}\n ></gxg-icon>\n {this.environment.backEnd.name}\n </div>\n </gxg-card>\n\n <gxg-card\n background=\"gray-01\"\n cardType=\"mini\"\n padding=\"s\"\n cardTitle={this._componentLocale.environment.dataStore}\n >\n <div class=\"align-center\">\n <gxg-icon\n type={this.environment.dataStore.icon}\n color=\"onbackground\"\n style={{\n \"--mer-text__on-surface\": \"var(--gray-05);\"\n }}\n ></gxg-icon>\n {this.environment.dataStore.name}\n </div>\n </gxg-card>\n </div>\n </div>\n\n <gxg-card\n editableTitle={false}\n cardTitle={this._componentLocale.project.title}\n class=\"project\"\n >\n {/* <gxg-tabs height=\"auto\" minWidth=\"100%\">\n <gxg-tab-bar slot=\"tab-bar-container\" displayBorder>\n <gxg-tab-button\n slot=\"tab-bar\"\n tab-label={this._componentLocale.project.tabs.description}\n tab=\"description\"\n is-selected\n ></gxg-tab-button>\n <gxg-tab-button\n slot=\"tab-bar\"\n tab-label={this._componentLocale.project.tabs.lookFeel}\n tab=\"lookFeel\"\n ></gxg-tab-button>\n <gxg-tab-button\n slot=\"tab-bar\"\n tab-label={this._componentLocale.project.tabs.architecture}\n tab=\"architecture\"\n ></gxg-tab-button>\n </gxg-tab-bar>\n <gxg-tab noPadding tab=\"description\" flexContainer>\n {this.renderProjectContent()}\n </gxg-tab>\n <gxg-tab noPadding tab=\"lookFeel\" flexContainer></gxg-tab>\n <gxg-tab noPadding tab=\"architecture\" flexContainer></gxg-tab>\n </gxg-tabs> */}\n {this.renderProjectContent()}\n </gxg-card>\n\n <gxg-card\n editableTitle={false}\n cardTitle={this._componentLocale.recent.title}\n class=\"recent-objects\"\n cardType=\"section\"\n no-padding-top\n >\n {this.recentObjects.map((obj: recentObjectData, index) => (\n <gxg-card\n background=\"gray-01\"\n padding=\"m\"\n cardType=\"article\"\n class=\"recent-objects-card\"\n actionable\n onClick={() => this.openObject(index)}\n >\n <div class=\"grid grid--recent-objects\">\n <gxg-icon type={obj.typeIcon} color=\"auto\"></gxg-icon>\n <gxg-text type=\"text-regular\" class=\"obj-name\">\n {obj.name}\n </gxg-text>\n <gxg-text italic class=\"justify-end\">\n {this._componentLocale.recent.modified}:{\" \"}\n {`${formatDate(obj.modificationDate, \"date\")}`}\n </gxg-text>\n <div class=\" justify-end\">\n <gxg-icon\n type={mapStatusToIcons[obj.status]}\n color=\"auto\"\n ></gxg-icon>\n </div>\n </div>\n </gxg-card>\n ))}\n </gxg-card>\n </div>\n </div>\n </Host>\n );\n }\n}\n\nexport type KBData = {\n name: string;\n currentVersion: string;\n created: Date;\n lastBuild?: Date;\n};\n\nexport type EnvironmentData = {\n name: string;\n frontEnd: EnvironmentItemData[];\n backEnd: EnvironmentItemData;\n dataStore: EnvironmentItemData;\n};\n\nexport type EnvironmentItemData = {\n icon: string;\n name: string;\n};\n\nexport type recentObjectData = {\n id: string;\n typeIcon: string;\n name: string;\n modificationDate: Date;\n status: RecentObjectStatus;\n};\n\nexport type RecentObjectStatus =\n | \"new\"\n | \"modified\"\n | \"conflicted\"\n | \"unmodified\";\n\nexport type StatusIcons =\n // toDo: Add proper icons!!\n | \"gx-server/new\"\n | \"patterns-default-associated/modified\"\n | \"patterns-default-associated/synchronized\"\n | \"gx-server/delete\";\n\nexport type EditResult = {\n success: boolean;\n errorMessage: string;\n};\n"]}
|
|
1
|
+
{"version":3,"file":"dashboard-home.js","sourceRoot":"","sources":["../../../src/components/dashboard-home/dashboard-home.tsx"],"names":[],"mappings":"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","sourcesContent":["/* STENCIL IMPORTS */\nimport {\n Component,\n Host,\n h,\n Prop,\n State,\n Element,\n Event,\n EventEmitter\n} from \"@stencil/core\";\n/* OTHER LIBRARIES IMPORTS */\n/* CUSTOM IMPORTS */\nimport { Locale } from \"../../common/locale\";\nimport { formatDate } from \"../../common/helpers\";\n\nconst mapStatusToIcons: {\n [key in RecentObjectStatus]: StatusIcons;\n} = {\n new: \"gx-server/new\",\n modified: \"patterns-default-associated/modified\",\n conflicted: \"patterns-default-associated/synchronized\",\n unmodified: \"gx-server/delete\"\n};\n\n@Component({\n tag: \"gx-ide-dashboard-home\",\n styleUrl: \"dashboard-home.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/dashboard-home\"]\n})\nexport class GxIdeDashboardHome {\n /*\n INDEX:\n 1.OWN PROPERTIES \n 2.REFERENCE TO ELEMENTS\n 3.STATE() VARIABLES\n 4.PUBLIC PROPERTY API | WATCH'S\n 5.EVENTS (EMIT)\n 6.COMPONENT LIFECYCLE METHODS\n 7.LISTENERS\n 8.PUBLIC METHODS API\n 9.LOCAL METHODS\n 10.RENDER() FUNCTIONS\n 11.RENDER() MAIN FUNCTION\n */\n\n // 1.OWN PROPERTIES //\n\n /**\n * The component hard-coded strings translations.\n */\n private _componentLocale: any;\n private renderedFirstTime = false;\n\n // 2. REFERENCE TO ELEMENTS //\n\n @Element() el: HTMLGxIdeDashboardHomeElement;\n\n private kbNameEl!: HTMLGxgTitleEditableElement;\n private envNameEl!: HTMLGxgTitleEditableElement;\n /* private projectDescriptionEl!: HTMLGxgFormTextareaElement;*/\n\n // 3.STATE() VARIABLES //\n\n /**\n * The editing state for the title.\n */\n @State() editingKbName = false;\n\n /**\n * The editing state for the environment name.\n */\n @State() editingEnvName = false;\n\n /**\n * The editing state for the project details.\n */\n @State() editingProjectDescription = false;\n\n // 4.PUBLIC PROPERTY API | WATCH'S //\n\n /**\n * The KB basic properties.\n */\n @Prop() readonly kb: KBData;\n\n /**\n * Information of the current environment.\n */\n @Prop() readonly environment: EnvironmentData;\n\n /**\n * Project Detail description.\n */\n @Prop() readonly projectDescription: string;\n\n /**\n * Recently edited objects.\n */\n @Prop() readonly recentObjects: recentObjectData[];\n\n /**\n * Callback invoked when user tries to rename the KB.\n * Receives the new name as a parameter\n * and returns a promise with the result of the operation.\n */\n @Prop() readonly renameKBCallback: (name: string) => Promise<EditResult>;\n\n /**\n * Callback invoked when user tries to rename the KB environment.\n * Receives the new name as a parameter\n * and returns a promise with the result of the operation.\n */\n @Prop() readonly renameEnvironmentCallback: (\n name: string\n ) => Promise<EditResult>;\n\n /**\n * Callback invoked when user tries to edit the Project Description.\n * The edition is resolved by the host.\n */\n @Prop() readonly editDescriptionCallback: () => Promise<void>;\n\n /**\n * Callback invoked when user tries to open one of the listed Recent Objects\n * Receives the internal ID of the object\n */\n @Prop() readonly openObjectCallback: (id: number) => Promise<void>;\n\n // 5.EVENTS (EMIT) //\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 METHODS //\n\n async componentWillLoad() {\n this._componentLocale = await Locale.getComponentStrings(this.el);\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 // 9.LOCAL METHODS //\n\n // Kb Name\n\n private handleKbNameChange = async () => {\n if (this.renameKBCallback) {\n const response = this.renameKBCallback(this.kbNameEl.value);\n response.then((result: EditResult) => {\n if (result.success) {\n this.kb.name = this.kbNameEl.value;\n }\n this.editValidation(result, this.kbNameEl);\n });\n }\n };\n\n // Environment Name\n private handleEnvNameChange = async () => {\n if (this.renameEnvironmentCallback) {\n const response = this.renameEnvironmentCallback(this.envNameEl.value);\n response.then((result: EditResult) => {\n if (result.success) {\n this.environment.name = this.envNameEl.value;\n }\n this.editValidation(result, this.envNameEl);\n });\n }\n };\n\n // Project Description\n private toggleEditDescription = async () => {\n this.editingProjectDescription = !this.editingProjectDescription;\n };\n\n private handleDescriptionChange = async () => {\n if (this.editDescriptionCallback) {\n await this.editDescriptionCallback();\n }\n };\n\n // Recent Objects\n\n private openObject = (id: number) => {\n this.openObjectCallback(id);\n };\n\n // Validation\n\n private editValidation = (result: EditResult, el: any) => {\n if (!result.success) {\n el.validationStatus = \"error\";\n el.validationMessage = result.errorMessage;\n }\n };\n\n // 10.RENDER() FUNCTIONS //\n\n private renderProjectContent = (): Element => {\n return this.editingProjectDescription ? (\n <div>\n <gxg-form-textarea\n rows={12}\n value={this.projectDescription}\n /* ref={(el: HTMLGxgFormTextareaElement) =>\n (this.projectDescriptionEl = el as HTMLGxgFormTextareaElement)\n }*/\n ></gxg-form-textarea>\n <div class=\"project-buttons align-center\">\n <gxg-text type=\"text-link\" onClick={this.handleDescriptionChange}>\n {this._componentLocale.save}\n </gxg-text>\n <gxg-text type=\"text-link\" onClick={this.toggleEditDescription}>\n {this._componentLocale.discard}\n </gxg-text>\n </div>\n </div>\n ) : (\n <div>\n <div innerHTML={this.projectDescription}></div>\n <gxg-text\n icon=\"gemini-tools/edit\"\n type=\"text-link\"\n onClick={this.toggleEditDescription}\n >\n {this._componentLocale.edit}\n </gxg-text>\n </div>\n );\n };\n\n private renderFrontEndTitle() {\n return this.environment.frontEnd.length <= 1\n ? this._componentLocale.environment.frontEndLang\n : this._componentLocale.environment.frontEndLangs;\n }\n\n // 11.RENDER() MAIN FUNCTION //\n\n render() {\n return (\n <Host>\n <div class=\"gx-ide-main-wrapper\">\n <div class=\"grid grid--basic\">\n <div class=\"kb gxi-overflow-auto\">\n <gxg-title-editable\n value={this.kb.name}\n disable-edition={this.editingKbName}\n click-to-edit={true}\n fluid\n ref={el => (this.kbNameEl = el as HTMLGxgTitleEditableElement)}\n onValueChanged={this.handleKbNameChange}\n focusType=\"text\"\n debounce\n ></gxg-title-editable>\n <div class=\"align-center kb-detail\">\n <gxg-pill id=\"pill\" type=\"static\" icon=\"objects/procedure\">\n {this._componentLocale.version}: {this.kb.currentVersion}\n </gxg-pill>\n <gxg-text class=\"display-inline\" type=\"text-gray\" padding=\"s\">\n {this._componentLocale.created}:{\" \"}\n {formatDate(this.kb.created, \"date-time-short\")} -{\" \"}\n {this._componentLocale.lastBuild}:{\" \"}\n {formatDate(this.kb.lastBuild, \"date-time-short\")}\n </gxg-text>\n </div>\n </div>\n\n <div class=\"environment\">\n <gxg-title-editable\n value={this.environment.name}\n disable-edition={this.editingEnvName}\n click-to-edit={true}\n title-type=\"h3\"\n ref={el => (this.envNameEl = el as HTMLGxgTitleEditableElement)}\n onValueChanged={this.handleEnvNameChange}\n focusType=\"text\"\n debounce\n disableEdition\n ></gxg-title-editable>\n <div class=\"grid grid--environments\">\n <gxg-card\n background=\"gray-01\"\n cardType=\"mini\"\n padding=\"s\"\n cardTitle={this.renderFrontEndTitle()}\n >\n <div class=\"front-end\">\n {this.environment.frontEnd.map(\n (obj: EnvironmentItemData) => (\n <div class=\"align-center\">\n <gxg-icon\n type={obj.icon}\n color=\"onbackground\"\n style={{\n \"--mer-text__on-surface\": \"var(--gray-05);\"\n }}\n ></gxg-icon>\n {obj.name}\n </div>\n )\n )}\n </div>\n </gxg-card>\n\n <gxg-card\n background=\"gray-01\"\n cardType=\"mini\"\n padding=\"s\"\n cardTitle={this._componentLocale.environment.backEnd}\n >\n <div class=\"align-center\">\n <gxg-icon\n type={this.environment.backEnd.icon}\n color=\"onbackground\"\n style={{\n \"--mer-text__on-surface\": \"var(--gray-05);\"\n }}\n ></gxg-icon>\n {this.environment.backEnd.name}\n </div>\n </gxg-card>\n\n <gxg-card\n background=\"gray-01\"\n cardType=\"mini\"\n padding=\"s\"\n cardTitle={this._componentLocale.environment.dataStore}\n >\n <div class=\"align-center\">\n <gxg-icon\n type={this.environment.dataStore.icon}\n color=\"onbackground\"\n style={{\n \"--mer-text__on-surface\": \"var(--gray-05);\"\n }}\n ></gxg-icon>\n {this.environment.dataStore.name}\n </div>\n </gxg-card>\n </div>\n </div>\n\n <gxg-card\n editableTitle={false}\n cardTitle={this._componentLocale.project.title}\n class=\"project\"\n >\n {/* <gxg-tabs height=\"auto\" minWidth=\"100%\">\n <gxg-tab-bar slot=\"tab-bar-container\" displayBorder>\n <gxg-tab-button\n slot=\"tab-bar\"\n tab-label={this._componentLocale.project.tabs.description}\n tab=\"description\"\n is-selected\n ></gxg-tab-button>\n <gxg-tab-button\n slot=\"tab-bar\"\n tab-label={this._componentLocale.project.tabs.lookFeel}\n tab=\"lookFeel\"\n ></gxg-tab-button>\n <gxg-tab-button\n slot=\"tab-bar\"\n tab-label={this._componentLocale.project.tabs.architecture}\n tab=\"architecture\"\n ></gxg-tab-button>\n </gxg-tab-bar>\n <gxg-tab noPadding tab=\"description\" flexContainer>\n {this.renderProjectContent()}\n </gxg-tab>\n <gxg-tab noPadding tab=\"lookFeel\" flexContainer></gxg-tab>\n <gxg-tab noPadding tab=\"architecture\" flexContainer></gxg-tab>\n </gxg-tabs> */}\n {this.renderProjectContent()}\n </gxg-card>\n\n <gxg-card\n editableTitle={false}\n cardTitle={this._componentLocale.recent.title}\n class=\"recent-objects\"\n cardType=\"section\"\n no-padding-top\n >\n {this.recentObjects.map((obj: recentObjectData, index) => (\n <gxg-card\n background=\"gray-01\"\n padding=\"m\"\n cardType=\"article\"\n class=\"recent-objects-card\"\n actionable\n onClick={() => this.openObject(index)}\n >\n <div class=\"grid grid--recent-objects\">\n <gxg-icon type={obj.typeIcon} color=\"auto\"></gxg-icon>\n <gxg-text type=\"text-regular\" class=\"obj-name\">\n {obj.name}\n </gxg-text>\n <gxg-text italic class=\"justify-end\">\n {this._componentLocale.recent.modified}:{\" \"}\n {`${formatDate(obj.modificationDate, \"date\")}`}\n </gxg-text>\n <div class=\" justify-end\">\n <gxg-icon\n type={mapStatusToIcons[obj.status]}\n color=\"auto\"\n ></gxg-icon>\n </div>\n </div>\n </gxg-card>\n ))}\n </gxg-card>\n </div>\n </div>\n </Host>\n );\n }\n}\n\nexport type KBData = {\n name: string;\n currentVersion: string;\n created: Date;\n lastBuild?: Date;\n};\n\nexport type EnvironmentData = {\n name: string;\n frontEnd: EnvironmentItemData[];\n backEnd: EnvironmentItemData;\n dataStore: EnvironmentItemData;\n};\n\nexport type EnvironmentItemData = {\n icon: string;\n name: string;\n};\n\nexport type recentObjectData = {\n id: string;\n typeIcon: string;\n name: string;\n modificationDate: Date;\n status: RecentObjectStatus;\n};\n\nexport type RecentObjectStatus =\n | \"new\"\n | \"modified\"\n | \"conflicted\"\n | \"unmodified\";\n\nexport type StatusIcons =\n // toDo: Add proper icons!!\n | \"gx-server/new\"\n | \"patterns-default-associated/modified\"\n | \"patterns-default-associated/synchronized\"\n | \"gx-server/delete\";\n\nexport type EditResult = {\n success: boolean;\n errorMessage: string;\n};\n"]}
|
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
/*Gemini*/
|
|
2
|
+
/*Gx Ide*/
|
|
3
|
+
/*@container queries*/
|
|
4
|
+
/* hiChar styles
|
|
5
|
+
Found on /common/helpers.tsx hiChar function is used to add a span/class to every character that matches a search value. It is used to help the user see why the filter results are filtered. The span/class on the characters are useless without proper styling.
|
|
6
|
+
*/
|
|
7
|
+
/* Helper Classes */
|
|
8
|
+
.gxi-hidden {
|
|
9
|
+
display: none !important;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.gxi-full-height {
|
|
13
|
+
height: 100%;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.gxi-overflow-auto {
|
|
17
|
+
overflow: auto;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.gxi-display-flex {
|
|
21
|
+
display: flex;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.align-start {
|
|
25
|
+
display: flex;
|
|
26
|
+
align-items: start;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.align-center {
|
|
30
|
+
display: flex;
|
|
31
|
+
align-items: center;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.align-end {
|
|
35
|
+
display: flex;
|
|
36
|
+
align-items: end;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.overflow-auto {
|
|
40
|
+
overflow: auto;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.justify-start {
|
|
44
|
+
display: flex;
|
|
45
|
+
justify-content: start;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.justify-center {
|
|
49
|
+
display: flex;
|
|
50
|
+
justify-content: center;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.justify-end {
|
|
54
|
+
display: flex;
|
|
55
|
+
justify-content: end;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/* Grids */
|
|
59
|
+
.grid {
|
|
60
|
+
display: grid;
|
|
61
|
+
grid-row-gap: var(--gx-ide-grid-row-gap);
|
|
62
|
+
grid-column-gap: var(--gx-ide-grid-column-gap);
|
|
63
|
+
grid-template-rows: auto;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
ch-grid-cell {
|
|
67
|
+
display: flex;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
ch-grid {
|
|
71
|
+
overflow: auto;
|
|
72
|
+
height: 100%;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
ch-grid-column {
|
|
76
|
+
/*to be removed when this works inside a component with shadow: true*/
|
|
77
|
+
z-index: 99;
|
|
78
|
+
border-bottom: 1px solid var(--mer-color__neutral-gray--800);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
ch-grid-column:first-child {
|
|
82
|
+
padding-inline-start: var(--gx-ide-container__padding) !important;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
ch-grid-column:last-child {
|
|
86
|
+
padding-inline-end: var(--gx-ide-container__padding) !important;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
ch-grid-cell {
|
|
90
|
+
--mer-spacing--xs: var(--gx-ide-container__padding);
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/*--- Layout ---*/
|
|
94
|
+
.layout {
|
|
95
|
+
display: grid;
|
|
96
|
+
gap: var(--mer-spacing--lg);
|
|
97
|
+
box-sizing: border-box;
|
|
98
|
+
}
|
|
99
|
+
.layout--two-cols {
|
|
100
|
+
grid-template-columns: 1fr 1fr;
|
|
101
|
+
}
|
|
102
|
+
.layout--space-above {
|
|
103
|
+
padding-block-start: var(--mer-spacing--lg);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/*Gxg Tabs*/
|
|
107
|
+
gxg-tabs {
|
|
108
|
+
box-shadow: none;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
/*All components Host should have this class set. !important is set on every rule, since this styles could be overridden by the host user, since they are applied on the host component*/
|
|
112
|
+
:host(.gx-ide-component) {
|
|
113
|
+
height: 100% !important;
|
|
114
|
+
display: flex !important;
|
|
115
|
+
flex-direction: column !important;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
/*stylize the top bar*/
|
|
119
|
+
:host(:focus-within) gx-ide-top-bar::part(wrapper) {
|
|
120
|
+
background-color: var(--color-secondary-enabled);
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
/* Main wrapper (should be the first element inside the host. Everything should be inside .gx-ide-main-wrapper) */
|
|
124
|
+
.gx-ide-main-wrapper {
|
|
125
|
+
color: var(--gx-ide-component-text-color);
|
|
126
|
+
font-weight: var(--mer-font__weight--regular);
|
|
127
|
+
font-size: var(--mer-font__size--xs);
|
|
128
|
+
font-family: var(--mer-font-family--primary);
|
|
129
|
+
height: 100%;
|
|
130
|
+
background-color: var(--gx-ide-component-background-color);
|
|
131
|
+
display: flex;
|
|
132
|
+
flex-direction: column;
|
|
133
|
+
flex-grow: 1;
|
|
134
|
+
box-sizing: border-box;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
/*This is the main element. This is the one that take the remaining vertical space*/
|
|
138
|
+
.gx-ide-main {
|
|
139
|
+
flex-grow: 1;
|
|
140
|
+
overflow-y: auto;
|
|
141
|
+
/* Track */
|
|
142
|
+
/* Handle */
|
|
143
|
+
/* Handle on hover */
|
|
144
|
+
}
|
|
145
|
+
.gx-ide-main::-webkit-scrollbar {
|
|
146
|
+
width: 6px;
|
|
147
|
+
height: 6px;
|
|
148
|
+
}
|
|
149
|
+
.gx-ide-main::-webkit-scrollbar-track {
|
|
150
|
+
background-color: var(--gray-02);
|
|
151
|
+
border-radius: 10px;
|
|
152
|
+
}
|
|
153
|
+
.gx-ide-main::-webkit-scrollbar-thumb {
|
|
154
|
+
background: var(--gray-05);
|
|
155
|
+
border-radius: 10px;
|
|
156
|
+
}
|
|
157
|
+
.gx-ide-main::-webkit-scrollbar-thumb:hover {
|
|
158
|
+
background: var(--gray-04);
|
|
159
|
+
cursor: pointer;
|
|
160
|
+
}
|
|
161
|
+
.gx-ide-main .gxg-scroll {
|
|
162
|
+
display: block;
|
|
163
|
+
overflow-y: auto;
|
|
164
|
+
padding-inline-end: 2px;
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
.gx-ide-overflow {
|
|
168
|
+
overflow-y: auto;
|
|
169
|
+
/* Track */
|
|
170
|
+
/* Handle */
|
|
171
|
+
/* Handle on hover */
|
|
172
|
+
}
|
|
173
|
+
.gx-ide-overflow::-webkit-scrollbar {
|
|
174
|
+
width: 6px;
|
|
175
|
+
height: 6px;
|
|
176
|
+
}
|
|
177
|
+
.gx-ide-overflow::-webkit-scrollbar-track {
|
|
178
|
+
background-color: var(--gray-02);
|
|
179
|
+
border-radius: 10px;
|
|
180
|
+
}
|
|
181
|
+
.gx-ide-overflow::-webkit-scrollbar-thumb {
|
|
182
|
+
background: var(--gray-05);
|
|
183
|
+
border-radius: 10px;
|
|
184
|
+
}
|
|
185
|
+
.gx-ide-overflow::-webkit-scrollbar-thumb:hover {
|
|
186
|
+
background: var(--gray-04);
|
|
187
|
+
cursor: pointer;
|
|
188
|
+
}
|
|
189
|
+
.gx-ide-overflow .gxg-scroll {
|
|
190
|
+
display: block;
|
|
191
|
+
overflow-y: auto;
|
|
192
|
+
padding-inline-end: 2px;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
/*gxg-tree-view*/
|
|
196
|
+
.tree-container {
|
|
197
|
+
display: flex;
|
|
198
|
+
height: 100%;
|
|
199
|
+
width: 100%;
|
|
200
|
+
box-sizing: border-box;
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
/*Gemini*/
|
|
204
|
+
/*Gx Ide*/
|
|
205
|
+
/*@container queries*/
|
|
206
|
+
/* hiChar styles
|
|
207
|
+
Found on /common/helpers.tsx hiChar function is used to add a span/class to every character that matches a search value. It is used to help the user see why the filter results are filtered. The span/class on the characters are useless without proper styling.
|
|
208
|
+
*/
|
|
209
|
+
:host {
|
|
210
|
+
display: block;
|
|
211
|
+
border: 1px solid var(--gxg-border-color--regular);
|
|
212
|
+
background-color: var(--color-background);
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
/* Filters */
|
|
216
|
+
.filter-grid {
|
|
217
|
+
display: grid;
|
|
218
|
+
padding: var(--spacing-comp-03);
|
|
219
|
+
row-gap: var(--gx-ide-grid-row-gap);
|
|
220
|
+
column-gap: var(--gx-ide-grid-column-gap);
|
|
221
|
+
border-block-start: 1px solid var(--gx-ide-container-border-color);
|
|
222
|
+
border-block-end: 1px solid var(--gx-ide-container-border-color);
|
|
223
|
+
grid-template-areas: "pattern-label pattern-input pattern-input pattern-input" "object-label object-input object-input object-input";
|
|
224
|
+
}
|
|
225
|
+
.filter-grid .pattern-label {
|
|
226
|
+
grid-area: pattern-label;
|
|
227
|
+
}
|
|
228
|
+
.filter-grid .pattern-input {
|
|
229
|
+
grid-area: pattern-input;
|
|
230
|
+
}
|
|
231
|
+
.filter-grid .object-label {
|
|
232
|
+
grid-area: object-label;
|
|
233
|
+
}
|
|
234
|
+
.filter-grid .object-input {
|
|
235
|
+
grid-area: object-input;
|
|
236
|
+
}
|
|
237
|
+
.filter-grid--no-title {
|
|
238
|
+
border-top: 0;
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
/*gxg-grid*/
|
|
242
|
+
.grid-container {
|
|
243
|
+
height: 100%;
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
ch-grid-cell {
|
|
247
|
+
--spacing-comp-02: var(--spacing-comp-03);
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
/* Objects Table */
|
|
251
|
+
.objects-count {
|
|
252
|
+
display: flex;
|
|
253
|
+
justify-content: space-around;
|
|
254
|
+
}
|
|
255
|
+
.objects-count > * {
|
|
256
|
+
flex: 1;
|
|
257
|
+
padding: var(--spacing-comp-01);
|
|
258
|
+
}
|
|
259
|
+
.objects-count > :not(:last-child) {
|
|
260
|
+
border-inline-end: 1px solid var(--gx-ide-container-border-color);
|
|
261
|
+
}
|