@genexus/genexus-ide-ui 0.0.99 → 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.
Files changed (183) hide show
  1. package/dist/cjs/ch-icon_5.cjs.entry.js +3 -2
  2. package/dist/cjs/ch-icon_5.cjs.entry.js.map +1 -1
  3. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  4. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +2 -2
  5. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js.map +1 -1
  6. package/dist/cjs/{gx-ide-recent-news.cjs.entry.js → gx-ide-empty-state_2.cjs.entry.js} +64 -2
  7. package/dist/cjs/gx-ide-empty-state_2.cjs.entry.js.map +1 -0
  8. package/dist/cjs/gx-ide-import-from-design.cjs.entry.js +2 -9
  9. package/dist/cjs/gx-ide-import-from-design.cjs.entry.js.map +1 -1
  10. package/dist/cjs/gx-ide-start-page.cjs.entry.js +9 -5
  11. package/dist/cjs/gx-ide-start-page.cjs.entry.js.map +1 -1
  12. package/dist/cjs/gx-ide-status-buttons_2.cjs.entry.js +41 -27
  13. package/dist/cjs/gx-ide-status-buttons_2.cjs.entry.js.map +1 -1
  14. package/dist/cjs/gxg-card_2.cjs.entry.js +10 -5
  15. package/dist/cjs/gxg-card_2.cjs.entry.js.map +1 -1
  16. package/dist/cjs/gxg-combo-box_2.cjs.entry.js +62 -24
  17. package/dist/cjs/gxg-combo-box_2.cjs.entry.js.map +1 -1
  18. package/dist/cjs/gxg-list-box_2.cjs.entry.js +28 -3
  19. package/dist/cjs/gxg-list-box_2.cjs.entry.js.map +1 -1
  20. package/dist/cjs/gxg-menu-item.cjs.entry.js +1 -1
  21. package/dist/cjs/gxg-menu-item.cjs.entry.js.map +1 -1
  22. package/dist/cjs/gxg-pill.cjs.entry.js +5 -5
  23. package/dist/cjs/gxg-pill.cjs.entry.js.map +1 -1
  24. package/dist/cjs/gxg-pills.cjs.entry.js +1 -1
  25. package/dist/cjs/gxg-pills.cjs.entry.js.map +1 -1
  26. package/dist/cjs/gxg-tab_4.cjs.entry.js +97 -17
  27. package/dist/cjs/gxg-tab_4.cjs.entry.js.map +1 -1
  28. package/dist/cjs/gxg-window-v2.cjs.entry.js +28 -0
  29. package/dist/cjs/gxg-window-v2.cjs.entry.js.map +1 -0
  30. package/dist/cjs/loader.cjs.js +1 -1
  31. package/dist/collection/collection-manifest.json +3 -1
  32. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.css +40 -0
  33. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.js +180 -0
  34. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.js.map +1 -0
  35. package/dist/collection/components/_helpers/list-selector/list-selector-item/list-selector-item.js +1 -1
  36. package/dist/collection/components/_helpers/list-selector/list-selector.js +1 -1
  37. package/dist/collection/components/dashboard-home/dashboard-home.css +5 -0
  38. package/dist/collection/components/dashboard-home/dashboard-home.js +1 -1
  39. package/dist/collection/components/dashboard-home/dashboard-home.js.map +1 -1
  40. package/dist/collection/components/import-from-design/import-from-design.js +3 -12
  41. package/dist/collection/components/import-from-design/import-from-design.js.map +1 -1
  42. package/dist/collection/components/start-page/recent-news.css +1 -1
  43. package/dist/collection/components/start-page/start-page.css +4 -0
  44. package/dist/collection/components/start-page/start-page.js +8 -4
  45. package/dist/collection/components/start-page/start-page.js.map +1 -1
  46. package/dist/components/card.js +11 -5
  47. package/dist/components/card.js.map +1 -1
  48. package/dist/components/combo-box.js +62 -24
  49. package/dist/components/combo-box.js.map +1 -1
  50. package/dist/components/gx-ide-dashboard-home.js +2 -2
  51. package/dist/components/gx-ide-dashboard-home.js.map +1 -1
  52. package/dist/components/gx-ide-empty-state.d.ts +11 -0
  53. package/dist/components/gx-ide-empty-state.js +8 -0
  54. package/dist/components/gx-ide-empty-state.js.map +1 -0
  55. package/dist/components/gx-ide-empty-state2.js +126 -0
  56. package/dist/components/gx-ide-empty-state2.js.map +1 -0
  57. package/dist/components/gx-ide-import-from-design.js +3 -11
  58. package/dist/components/gx-ide-import-from-design.js.map +1 -1
  59. package/dist/components/gx-ide-start-page.js +21 -11
  60. package/dist/components/gx-ide-start-page.js.map +1 -1
  61. package/dist/components/gxg-menu-item.js +1 -1
  62. package/dist/components/gxg-menu-item.js.map +1 -1
  63. package/dist/components/gxg-pills.js +1 -1
  64. package/dist/components/gxg-pills.js.map +1 -1
  65. package/dist/components/gxg-top-state-bar2.js +46 -30
  66. package/dist/components/gxg-top-state-bar2.js.map +1 -1
  67. package/dist/components/gxg-window-v2.js +44 -0
  68. package/dist/components/gxg-window-v2.js.map +1 -0
  69. package/dist/components/icon2.js +3 -2
  70. package/dist/components/icon2.js.map +1 -1
  71. package/dist/components/list-box.js +27 -1
  72. package/dist/components/list-box.js.map +1 -1
  73. package/dist/components/pill.js +5 -5
  74. package/dist/components/pill.js.map +1 -1
  75. package/dist/components/recent-news.js +1 -1
  76. package/dist/components/recent-news.js.map +1 -1
  77. package/dist/components/tab-bar.js +17 -9
  78. package/dist/components/tab-bar.js.map +1 -1
  79. package/dist/components/tab-button.js +11 -4
  80. package/dist/components/tab-button.js.map +1 -1
  81. package/dist/components/tab.js +6 -3
  82. package/dist/components/tab.js.map +1 -1
  83. package/dist/components/tabs.js +73 -4
  84. package/dist/components/tabs.js.map +1 -1
  85. package/dist/esm/ch-icon_5.entry.js +3 -2
  86. package/dist/esm/ch-icon_5.entry.js.map +1 -1
  87. package/dist/esm/genexus-ide-ui.js +1 -1
  88. package/dist/esm/gx-ide-dashboard-home.entry.js +2 -2
  89. package/dist/esm/gx-ide-dashboard-home.entry.js.map +1 -1
  90. package/dist/esm/{gx-ide-recent-news.entry.js → gx-ide-empty-state_2.entry.js} +64 -3
  91. package/dist/esm/gx-ide-empty-state_2.entry.js.map +1 -0
  92. package/dist/esm/gx-ide-import-from-design.entry.js +2 -9
  93. package/dist/esm/gx-ide-import-from-design.entry.js.map +1 -1
  94. package/dist/esm/gx-ide-start-page.entry.js +9 -5
  95. package/dist/esm/gx-ide-start-page.entry.js.map +1 -1
  96. package/dist/esm/gx-ide-status-buttons_2.entry.js +41 -27
  97. package/dist/esm/gx-ide-status-buttons_2.entry.js.map +1 -1
  98. package/dist/esm/gxg-card_2.entry.js +10 -5
  99. package/dist/esm/gxg-card_2.entry.js.map +1 -1
  100. package/dist/esm/gxg-combo-box_2.entry.js +62 -24
  101. package/dist/esm/gxg-combo-box_2.entry.js.map +1 -1
  102. package/dist/esm/gxg-list-box_2.entry.js +27 -2
  103. package/dist/esm/gxg-list-box_2.entry.js.map +1 -1
  104. package/dist/esm/gxg-menu-item.entry.js +1 -1
  105. package/dist/esm/gxg-menu-item.entry.js.map +1 -1
  106. package/dist/esm/gxg-pill.entry.js +5 -5
  107. package/dist/esm/gxg-pill.entry.js.map +1 -1
  108. package/dist/esm/gxg-pills.entry.js +1 -1
  109. package/dist/esm/gxg-pills.entry.js.map +1 -1
  110. package/dist/esm/gxg-tab_4.entry.js +97 -17
  111. package/dist/esm/gxg-tab_4.entry.js.map +1 -1
  112. package/dist/esm/gxg-window-v2.entry.js +24 -0
  113. package/dist/esm/gxg-window-v2.entry.js.map +1 -0
  114. package/dist/esm/loader.js +1 -1
  115. package/dist/genexus-ide-ui/genexus-ide-ui.css +74 -7
  116. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  117. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  118. package/dist/genexus-ide-ui/icon-assets/mercury/tests/balanza-path.svg +3 -0
  119. package/dist/genexus-ide-ui/icon-assets/mercury/tests/balanza-stroke.svg +9 -0
  120. package/dist/genexus-ide-ui/icon-assets/mercury/tests/folder-2.svg +3 -0
  121. package/dist/genexus-ide-ui/{p-b8fc93f4.entry.js → p-2c8afaa6.entry.js} +147 -112
  122. package/dist/genexus-ide-ui/p-2c8afaa6.entry.js.map +1 -0
  123. package/dist/genexus-ide-ui/{p-5ca84a03.entry.js → p-4e155cd5.entry.js} +27 -4
  124. package/dist/genexus-ide-ui/p-4e155cd5.entry.js.map +1 -0
  125. package/dist/genexus-ide-ui/p-4fc6d6a7.entry.js +24 -0
  126. package/dist/genexus-ide-ui/p-4fc6d6a7.entry.js.map +1 -0
  127. package/dist/genexus-ide-ui/p-54e4b362.entry.js +270 -0
  128. package/dist/genexus-ide-ui/p-54e4b362.entry.js.map +1 -0
  129. package/dist/genexus-ide-ui/{p-73aa4e69.entry.js → p-71f8aba2.entry.js} +13 -13
  130. package/dist/genexus-ide-ui/{p-73aa4e69.entry.js.map → p-71f8aba2.entry.js.map} +1 -1
  131. package/dist/genexus-ide-ui/{p-545291ad.entry.js → p-7dc3a137.entry.js} +4 -3
  132. package/dist/genexus-ide-ui/{p-545291ad.entry.js.map → p-7dc3a137.entry.js.map} +1 -1
  133. package/dist/genexus-ide-ui/{p-f186adfd.entry.js → p-85639fa5.entry.js} +100 -22
  134. package/dist/genexus-ide-ui/p-85639fa5.entry.js.map +1 -0
  135. package/dist/genexus-ide-ui/{p-30365c44.entry.js → p-a3e07b86.entry.js} +6 -7
  136. package/dist/genexus-ide-ui/p-a3e07b86.entry.js.map +1 -0
  137. package/dist/genexus-ide-ui/{p-9c6c5a61.entry.js → p-a592930e.entry.js} +37 -32
  138. package/dist/genexus-ide-ui/p-a592930e.entry.js.map +1 -0
  139. package/dist/genexus-ide-ui/p-b0e539fe.entry.js +41 -0
  140. package/dist/genexus-ide-ui/p-b0e539fe.entry.js.map +1 -0
  141. package/dist/genexus-ide-ui/{p-a439149b.entry.js → p-bff2603a.entry.js} +8 -3
  142. package/dist/genexus-ide-ui/p-bff2603a.entry.js.map +1 -0
  143. package/dist/genexus-ide-ui/{p-050bc199.entry.js → p-e0924e3f.entry.js} +96 -6
  144. package/dist/genexus-ide-ui/p-e0924e3f.entry.js.map +1 -0
  145. package/dist/genexus-ide-ui/{p-58cad79d.entry.js → p-e240361a.entry.js} +58 -68
  146. package/dist/genexus-ide-ui/p-e240361a.entry.js.map +1 -0
  147. package/dist/genexus-ide-ui/{p-e585f550.entry.js → p-e3925761.entry.js} +4 -5
  148. package/dist/genexus-ide-ui/{p-e585f550.entry.js.map → p-e3925761.entry.js.map} +1 -1
  149. package/dist/node_modules/@genexus/gemini/dist/collection/components/card/card.css +13 -1
  150. package/dist/node_modules/@genexus/gemini/dist/collection/components/pills/pill.css +16 -51
  151. package/dist/node_modules/@genexus/gemini/dist/collection/components/pills/pills.css +1 -8
  152. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab/tab.css +7 -0
  153. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab-bar/tab-bar.css +18 -0
  154. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab-button/tab-button.css +17 -0
  155. package/dist/node_modules/@genexus/gemini/dist/collection/components/tabs/tabs.css +64 -13
  156. package/dist/node_modules/@genexus/gemini/dist/collection/components/top-state-bar/gxg-top-state-bar.css +120 -43
  157. package/dist/node_modules/@genexus/gemini/dist/collection/components/window-v2/window.css +3 -0
  158. package/dist/types/components/_helpers/empty-state/gx-ide-empty-state.d.ts +34 -0
  159. package/dist/types/components/import-from-design/import-from-design.d.ts +1 -3
  160. package/dist/types/components.d.ts +61 -0
  161. package/package.json +3 -3
  162. package/dist/cjs/gx-ide-recent-news.cjs.entry.js.map +0 -1
  163. package/dist/cjs/reposition-scroll-86d8fac5.js +0 -33
  164. package/dist/cjs/reposition-scroll-86d8fac5.js.map +0 -1
  165. package/dist/components/reposition-scroll.js +0 -31
  166. package/dist/components/reposition-scroll.js.map +0 -1
  167. package/dist/esm/gx-ide-recent-news.entry.js.map +0 -1
  168. package/dist/esm/reposition-scroll-cfff7017.js +0 -31
  169. package/dist/esm/reposition-scroll-cfff7017.js.map +0 -1
  170. package/dist/genexus-ide-ui/p-050bc199.entry.js.map +0 -1
  171. package/dist/genexus-ide-ui/p-30365c44.entry.js.map +0 -1
  172. package/dist/genexus-ide-ui/p-3e87257c.entry.js +0 -41
  173. package/dist/genexus-ide-ui/p-3e87257c.entry.js.map +0 -1
  174. package/dist/genexus-ide-ui/p-58cad79d.entry.js.map +0 -1
  175. package/dist/genexus-ide-ui/p-5ca84a03.entry.js.map +0 -1
  176. package/dist/genexus-ide-ui/p-9c6c5a61.entry.js.map +0 -1
  177. package/dist/genexus-ide-ui/p-a439149b.entry.js.map +0 -1
  178. package/dist/genexus-ide-ui/p-b8fc93f4.entry.js.map +0 -1
  179. package/dist/genexus-ide-ui/p-efa273d7.js +0 -27
  180. package/dist/genexus-ide-ui/p-efa273d7.js.map +0 -1
  181. package/dist/genexus-ide-ui/p-f186adfd.entry.js.map +0 -1
  182. package/dist/genexus-ide-ui/p-f5034221.entry.js +0 -258
  183. 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"]}
@@ -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", class: "version-pill", type: "static", icon: "objects/procedure" }, this._componentLocale.version, ": ", this.kb.currentVersion), h("gxg-text", { class: "display-inline", type: "text-regular", padding: "s", italic: true }, 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 }), 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: {
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"]}
@@ -276,11 +276,10 @@ export class GxIdeImportFromDesign {
276
276
  return (h("div", { part: "data-panel-composition-preview", class: "data-preview" }, h("img", { src: this.selectedDesignItem ? this.selectedDesignItem : undefined, alt: "Preview" })));
277
277
  };
278
278
  this.renderDesignTabs = () => {
279
- this.counter++;
280
279
  return (h("gxg-tabs", { class: {
281
280
  "design-tabs": true,
282
281
  "design-tabs--fit-images": this.fitImages
283
- }, part: "data-tabs", "no-border": true, noPadding: true, buttonsBorderAbove: true, ref: (el) => (this.tabsEl = el) }, h("gxg-tab-bar", { slot: "tab-bar-container" }, h("gxg-tab-button", { hidden: !this.selectedDesignType ||
282
+ }, part: "data-tabs", "no-border": true, noPadding: true, buttonsBorderAbove: true }, h("gxg-tab-bar", { slot: "tab-bar-container" }, h("gxg-tab-button", { hidden: !this.selectedDesignType ||
284
283
  this.selectedDesignType !== DESIGN_DATA_TYPE_DESIGN_SYSTEM, slot: "tab-bar", "tab-label": this._componentLocale.tabs.tokens, tab: "tokens", key: "tokens", "is-selected": true }), h("gxg-tab-button", { hidden: !this.selectedDesignType ||
285
284
  this.selectedDesignType !== DESIGN_DATA_TYPE_DESIGN_SYSTEM, slot: "tab-bar", "tab-label": this._componentLocale.tabs.styles, tab: "styles", key: "styles" }), h("gxg-tab-button", { hidden: !this.selectedDesignType ||
286
285
  this.selectedDesignType === DESIGN_DATA_TYPE_DESIGN_SYSTEM, slot: "tab-bar", "tab-label": this._componentLocale.tabs.composition, tab: "composition", key: "composition", "is-selected": true }), h("gxg-tab-button", { hidden: !this.selectedDesignType ||
@@ -300,7 +299,7 @@ export class GxIdeImportFromDesign {
300
299
  this.selectedDesignItem = undefined;
301
300
  this.showAccessToken = undefined;
302
301
  this.designDataTreeDataModel = [];
303
- this.counter = 0;
302
+ this.updateTabsActiveTab = false;
304
303
  this.fitImages = false;
305
304
  this.shrinkTree = false;
306
305
  this.shrunkenTree = false;
@@ -422,11 +421,6 @@ export class GxIdeImportFromDesign {
422
421
  ];
423
422
  }
424
423
  }
425
- watchCounterHandler() {
426
- if (this.tabsEl) {
427
- this.tabsEl.setFirstActiveTab();
428
- }
429
- }
430
424
  watchShrinkTreeHandler(shrink) {
431
425
  if (shrink) {
432
426
  this.attachTreeMouseListeners();
@@ -840,7 +834,7 @@ export class GxIdeImportFromDesign {
840
834
  "selectedDesignItem": {},
841
835
  "showAccessToken": {},
842
836
  "designDataTreeDataModel": {},
843
- "counter": {},
837
+ "updateTabsActiveTab": {},
844
838
  "fitImages": {},
845
839
  "shrinkTree": {},
846
840
  "shrunkenTree": {},
@@ -891,9 +885,6 @@ export class GxIdeImportFromDesign {
891
885
  return [{
892
886
  "propName": "designData",
893
887
  "methodName": "watchDesignDataHandler"
894
- }, {
895
- "propName": "counter",
896
- "methodName": "watchCounterHandler"
897
888
  }, {
898
889
  "propName": "shrinkTree",
899
890
  "methodName": "watchShrinkTreeHandler"