@genexus/genexus-ide-ui 0.0.43 → 0.0.45

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 (165) hide show
  1. package/dist/cjs/ch-grid_8.cjs.entry.js +2 -1
  2. package/dist/cjs/ch-icon_2.cjs.entry.js +177 -0
  3. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  4. package/dist/cjs/grid-be8c3413.js +11 -0
  5. package/dist/cjs/{gxg-tab_4.cjs.entry.js → gx-ide-container_5.cjs.entry.js} +136 -2
  6. package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +1 -1
  7. package/dist/cjs/gx-ide-new-environment.cjs.entry.js +4 -5
  8. package/dist/cjs/gx-ide-new-kb.cjs.entry.js +70 -8
  9. package/dist/cjs/gx-ide-new-object.cjs.entry.js +3 -3
  10. package/dist/cjs/gx-ide-object-selector.cjs.entry.js +9 -12
  11. package/dist/cjs/gx-ide-references.cjs.entry.js +4 -4
  12. package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +8 -5
  13. package/dist/cjs/gx-ide-team-dev-select-recent-comment.cjs.entry.js +1 -1
  14. package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +1 -1
  15. package/dist/cjs/gx-ide-team-dev-update-to-revision.cjs.entry.js +1 -1
  16. package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +11 -9
  17. package/dist/cjs/gx-ide-template.cjs.entry.js +1 -1
  18. package/dist/cjs/gx-ide-ww-images.cjs.entry.js +3 -3
  19. package/dist/cjs/{gxg-button_2.cjs.entry.js → gxg-button.cjs.entry.js} +0 -61
  20. package/dist/cjs/gxg-menu-item.cjs.entry.js +11 -59
  21. package/dist/cjs/gxg-menu-slim-item.cjs.entry.js +78 -0
  22. package/dist/cjs/gxg-menu-slim-list.cjs.entry.js +28 -0
  23. package/dist/cjs/gxg-menu-slim.cjs.entry.js +251 -0
  24. package/dist/cjs/gxg-menu.cjs.entry.js +12 -228
  25. package/dist/cjs/loader.cjs.js +1 -1
  26. package/dist/collection/collection-manifest.json +3 -1
  27. package/dist/collection/components/_template/template.css +24 -0
  28. package/dist/collection/components/container/container.css +7 -11
  29. package/dist/collection/components/container/container.js +45 -40
  30. package/dist/collection/components/create-kb-from-server/create-kb-from-server.css +24 -0
  31. package/dist/collection/components/new-environment/new-environment.css +25 -0
  32. package/dist/collection/components/new-environment/new-environment.js +3 -22
  33. package/dist/collection/components/new-kb/new-kb.css +24 -0
  34. package/dist/collection/components/new-kb/new-kb.js +110 -10
  35. package/dist/collection/components/new-object/new-object.css +24 -0
  36. package/dist/collection/components/new-object/new-object.js +2 -2
  37. package/dist/collection/components/object-selector/object-selector.css +24 -0
  38. package/dist/collection/components/object-selector/object-selector.js +21 -3
  39. package/dist/collection/components/references/references.css +24 -0
  40. package/dist/collection/components/references/references.js +3 -3
  41. package/dist/collection/components/team-dev-commit/team-dev-commit.css +33 -10
  42. package/dist/collection/components/team-dev-commit/team-dev-commit.js +21 -4
  43. package/dist/collection/components/team-dev-select-recent-comment/team-dev-select-recent-comment.css +24 -0
  44. package/dist/collection/components/team-dev-update/team-dev-update.css +24 -0
  45. package/dist/collection/components/team-dev-update/team-dev-update.js +24 -8
  46. package/dist/collection/components/team-dev-update-partial-selection/team-dev-update-partial-selection.css +24 -0
  47. package/dist/collection/components/team-dev-update-to-revision/team-dev-update-to-revision.css +24 -0
  48. package/dist/collection/components/ww-images/ww-images.css +24 -0
  49. package/dist/collection/components/ww-images/ww-images.js +2 -2
  50. package/dist/collection/pages/assets/common.js +21 -21
  51. package/dist/components/container.js +12 -24
  52. package/dist/components/grid.js +9 -0
  53. package/dist/components/gx-ide-create-kb-from-server.js +1 -1
  54. package/dist/components/gx-ide-new-environment.js +8 -16
  55. package/dist/components/gx-ide-new-kb.js +74 -10
  56. package/dist/components/gx-ide-new-object.js +3 -3
  57. package/dist/components/gx-ide-object-selector.js +9 -12
  58. package/dist/components/gx-ide-references.js +4 -4
  59. package/dist/components/gx-ide-team-dev-commit.js +17 -14
  60. package/dist/components/gx-ide-team-dev-select-recent-comment.js +1 -1
  61. package/dist/components/gx-ide-team-dev-update-partial-selection.js +1 -1
  62. package/dist/components/gx-ide-team-dev-update-to-revision.js +1 -1
  63. package/dist/components/gx-ide-team-dev-update.js +20 -18
  64. package/dist/components/gx-ide-template.js +1 -1
  65. package/dist/components/gx-ide-top-bar.js +72 -1
  66. package/dist/components/gx-ide-ww-images.js +3 -3
  67. package/dist/components/gxg-grid2.js +4 -2
  68. package/dist/components/gxg-menu-item.js +14 -65
  69. package/dist/components/gxg-menu-slim-item.js +111 -0
  70. package/dist/components/gxg-menu-slim-list.js +50 -0
  71. package/dist/components/gxg-menu-slim.js +271 -0
  72. package/dist/components/gxg-menu.js +14 -233
  73. package/dist/components/index.js +3 -1
  74. package/dist/components/tab-bar.js +7 -1
  75. package/dist/components/tab.js +13 -1
  76. package/dist/components/tabs.js +2 -0
  77. package/dist/esm/ch-grid_8.entry.js +2 -1
  78. package/dist/esm/ch-icon_2.entry.js +172 -0
  79. package/dist/esm/genexus-ide-ui.js +1 -1
  80. package/dist/esm/grid-1354bf8f.js +9 -0
  81. package/dist/esm/{gxg-tab_4.entry.js → gx-ide-container_5.entry.js} +136 -3
  82. package/dist/esm/gx-ide-create-kb-from-server.entry.js +1 -1
  83. package/dist/esm/gx-ide-new-environment.entry.js +4 -5
  84. package/dist/esm/gx-ide-new-kb.entry.js +70 -8
  85. package/dist/esm/gx-ide-new-object.entry.js +3 -3
  86. package/dist/esm/gx-ide-object-selector.entry.js +9 -12
  87. package/dist/esm/gx-ide-references.entry.js +4 -4
  88. package/dist/esm/gx-ide-team-dev-commit.entry.js +8 -5
  89. package/dist/esm/gx-ide-team-dev-select-recent-comment.entry.js +1 -1
  90. package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +1 -1
  91. package/dist/esm/gx-ide-team-dev-update-to-revision.entry.js +1 -1
  92. package/dist/esm/gx-ide-team-dev-update.entry.js +11 -9
  93. package/dist/esm/gx-ide-template.entry.js +1 -1
  94. package/dist/esm/gx-ide-ww-images.entry.js +3 -3
  95. package/dist/esm/{gxg-button_2.entry.js → gxg-button.entry.js} +2 -62
  96. package/dist/esm/gxg-menu-item.entry.js +12 -60
  97. package/dist/esm/gxg-menu-slim-item.entry.js +74 -0
  98. package/dist/esm/gxg-menu-slim-list.entry.js +24 -0
  99. package/dist/esm/gxg-menu-slim.entry.js +247 -0
  100. package/dist/esm/gxg-menu.entry.js +12 -228
  101. package/dist/esm/loader.js +1 -1
  102. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  103. package/dist/genexus-ide-ui/p-04f69ecc.entry.js +1 -0
  104. package/dist/genexus-ide-ui/p-098a1397.entry.js +1 -0
  105. package/dist/genexus-ide-ui/p-0f85cf00.entry.js +1 -0
  106. package/dist/genexus-ide-ui/{p-38fa6211.entry.js → p-19d9c08c.entry.js} +1 -1
  107. package/dist/genexus-ide-ui/p-1bcabe1c.entry.js +1 -0
  108. package/dist/genexus-ide-ui/{p-fcdcb919.entry.js → p-1ccf523f.entry.js} +1 -1
  109. package/dist/genexus-ide-ui/p-2bd01c9e.entry.js +1 -0
  110. package/dist/genexus-ide-ui/p-42901fd7.entry.js +1 -0
  111. package/dist/genexus-ide-ui/p-597a1d43.entry.js +1 -0
  112. package/dist/genexus-ide-ui/p-6afc6187.entry.js +1 -0
  113. package/dist/genexus-ide-ui/p-73f61127.entry.js +1 -0
  114. package/dist/genexus-ide-ui/p-9014609e.entry.js +1 -0
  115. package/dist/genexus-ide-ui/{p-508cf8b0.entry.js → p-917c5696.entry.js} +1 -1
  116. package/dist/genexus-ide-ui/p-a708db45.entry.js +1 -0
  117. package/dist/genexus-ide-ui/p-b456483d.entry.js +1 -0
  118. package/dist/genexus-ide-ui/p-b74dd891.entry.js +1 -0
  119. package/dist/genexus-ide-ui/p-c38c6957.entry.js +1 -0
  120. package/dist/genexus-ide-ui/p-c61bf417.entry.js +1 -0
  121. package/dist/genexus-ide-ui/p-c6a7b93c.js +1 -0
  122. package/dist/genexus-ide-ui/p-e1cd9135.entry.js +1 -0
  123. package/dist/genexus-ide-ui/{p-22e142e8.entry.js → p-e4eb3828.entry.js} +1 -1
  124. package/dist/genexus-ide-ui/p-e5a3e3b9.entry.js +1 -0
  125. package/dist/genexus-ide-ui/{p-6073c264.entry.js → p-f1116ac5.entry.js} +1 -1
  126. package/dist/node_modules/@genexus/gemini/dist/collection/components/grid/gxg-grid.css +1 -5
  127. package/dist/node_modules/@genexus/gemini/dist/collection/components/menu/menu/menu.css +724 -0
  128. package/dist/node_modules/@genexus/gemini/dist/collection/components/menu/menu-item/menu-item.css +711 -0
  129. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab/tab.css +8 -0
  130. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab-bar/tab-bar.css +3 -0
  131. package/dist/types/components/container/container.d.ts +8 -5
  132. package/dist/types/components/new-environment/new-environment.d.ts +0 -4
  133. package/dist/types/components/new-kb/new-kb.d.ts +20 -2
  134. package/dist/types/components/object-selector/object-selector.d.ts +10 -6
  135. package/dist/types/components/team-dev-commit/team-dev-commit.d.ts +4 -0
  136. package/dist/types/components/team-dev-update/team-dev-update.d.ts +4 -0
  137. package/dist/types/components.d.ts +49 -21
  138. package/package.json +3 -3
  139. package/dist/cjs/ch-icon.cjs.entry.js +0 -116
  140. package/dist/cjs/gx-ide-container.cjs.entry.js +0 -137
  141. package/dist/cjs/gxg-menu-list.cjs.entry.js +0 -28
  142. package/dist/components/gxg-menu-list.js +0 -50
  143. package/dist/components/top-bar.js +0 -74
  144. package/dist/esm/ch-icon.entry.js +0 -112
  145. package/dist/esm/gx-ide-container.entry.js +0 -133
  146. package/dist/esm/gxg-menu-list.entry.js +0 -24
  147. package/dist/genexus-ide-ui/p-07e89cdd.entry.js +0 -1
  148. package/dist/genexus-ide-ui/p-1770fa36.entry.js +0 -1
  149. package/dist/genexus-ide-ui/p-179713ef.entry.js +0 -1
  150. package/dist/genexus-ide-ui/p-181ee8a8.entry.js +0 -1
  151. package/dist/genexus-ide-ui/p-35fc1102.entry.js +0 -1
  152. package/dist/genexus-ide-ui/p-4d39c34a.entry.js +0 -1
  153. package/dist/genexus-ide-ui/p-55d98662.entry.js +0 -1
  154. package/dist/genexus-ide-ui/p-5ad757f4.entry.js +0 -1
  155. package/dist/genexus-ide-ui/p-7a83018d.entry.js +0 -1
  156. package/dist/genexus-ide-ui/p-7a90def4.entry.js +0 -1
  157. package/dist/genexus-ide-ui/p-7c38776f.entry.js +0 -1
  158. package/dist/genexus-ide-ui/p-82228c39.entry.js +0 -1
  159. package/dist/genexus-ide-ui/p-8afbdbc9.entry.js +0 -1
  160. package/dist/genexus-ide-ui/p-a89c699c.entry.js +0 -1
  161. package/dist/genexus-ide-ui/p-cab184a7.entry.js +0 -1
  162. package/dist/genexus-ide-ui/p-d376dada.entry.js +0 -1
  163. /package/dist/node_modules/@genexus/gemini/dist/collection/components/{menu-item/menu-item.css → menu-slim/item/item.css} +0 -0
  164. /package/dist/node_modules/@genexus/gemini/dist/collection/components/{menu-list/menu-list.css → menu-slim/list/list.css} +0 -0
  165. /package/dist/node_modules/@genexus/gemini/dist/collection/components/{menu → menu-slim/menu}/menu.css +0 -0
@@ -9,6 +9,14 @@
9
9
  height: 100%;
10
10
  }
11
11
 
12
+ .gxi-overflow-auto {
13
+ overflow: auto;
14
+ }
15
+
16
+ .gxi-display-flex {
17
+ display: flex;
18
+ }
19
+
12
20
  .align-start {
13
21
  display: flex;
14
22
  align-items: start;
@@ -36,6 +44,22 @@ ch-grid-cell {
36
44
  display: flex;
37
45
  }
38
46
 
47
+ ch-grid {
48
+ overflow: auto;
49
+ height: 100%;
50
+ }
51
+
52
+ ch-grid-column {
53
+ /*to be removed when this works inside a component with shadow: true*/
54
+ z-index: 999;
55
+ border-bottom: 1px solid var(--gray-01);
56
+ }
57
+
58
+ /*Gxg Tabs*/
59
+ gxg-tabs {
60
+ box-shadow: none;
61
+ }
62
+
39
63
  /*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*/
40
64
  :host(.gx-ide-component) {
41
65
  box-shadow: var(--box-shadow-01) !important;
@@ -358,14 +358,6 @@ HOST / GENERAL
358
358
  flex-grow: 1;
359
359
  }
360
360
 
361
- /*reset fieldset*/
362
- fieldset {
363
- padding: 0;
364
- margin-inline-start: 0;
365
- margin-inline-end: 0;
366
- border: none;
367
- }
368
-
369
361
  .heading,
370
362
  .content,
371
363
  .footer {
@@ -428,9 +420,7 @@ HEADING
428
420
  CONTENT
429
421
  ********************************/
430
422
  .content {
431
- display: flex;
432
- flex-direction: column;
433
- gap: var(--gxg-container-elements-spacing);
423
+ display: block;
434
424
  overflow-x: auto;
435
425
  /* Track */
436
426
  /* Handle */
@@ -455,6 +445,12 @@ CONTENT
455
445
  .content--no-padding {
456
446
  padding: 0;
457
447
  }
448
+ .content--no-border-top {
449
+ border-top: none;
450
+ }
451
+ .content--flex {
452
+ display: flex;
453
+ }
458
454
  .content--no-gap {
459
455
  gap: 0;
460
456
  }
@@ -12,8 +12,10 @@ export class GxIdeContainer {
12
12
  this.contentClasses = () => {
13
13
  return {
14
14
  "content": true,
15
+ "content--flex": this.flexContent,
15
16
  "content--no-padding": this.noContentPadding,
16
17
  "content--no-gap": this.noContentGap,
18
+ "content--no-border-top": this.noContentBorderTop,
17
19
  [`content--align-items-${this.alignItems}`]: this.alignItems !== undefined,
18
20
  [`content--justify-content-${this.justifyContent}`]: this.justifyContent !== undefined
19
21
  };
@@ -27,7 +29,6 @@ export class GxIdeContainer {
27
29
  ["footer--no-padding"]: this.noFooterPadding
28
30
  } }, h("div", { class: "footer__start" }, h("slot", { name: "footer-start" })), h("div", { class: "footer__end" }, h("slot", { name: "footer-end" })))) : null;
29
31
  };
30
- this.fieldset = false;
31
32
  this.containerTitle = undefined;
32
33
  this.displayBorder = false;
33
34
  this.displayBorderTop = false;
@@ -40,6 +41,8 @@ export class GxIdeContainer {
40
41
  this.noHeadingBorder = false;
41
42
  this.noHeadingPadding = false;
42
43
  this.headingJustify = "center";
44
+ this.flexContent = false;
45
+ this.noContentBorderTop = false;
43
46
  this.noContentPadding = false;
44
47
  this.noContentGap = false;
45
48
  this.alignItems = undefined;
@@ -58,7 +61,6 @@ export class GxIdeContainer {
58
61
  // 6.COMPONENT LIFECYCLE EVENTS //
59
62
  componentWillLoad() {
60
63
  this.evaluateSlots();
61
- this.evaluateFullHeight();
62
64
  }
63
65
  // 7.LISTENERS //
64
66
  // 8.PUBLIC METHODS API //
@@ -81,12 +83,6 @@ export class GxIdeContainer {
81
83
  this.hasFooterSlot = true;
82
84
  }
83
85
  }
84
- evaluateFullHeight() {
85
- if (this.fullHeight && this.fieldset) {
86
- /* If full-height, fieldset has to be false*/
87
- this.fieldset = false;
88
- }
89
- }
90
86
  evaluateSections() {
91
87
  if (!this.hasSlottedContent && !this.hasFooterSlot) {
92
88
  this.hasOnlyHeading = true;
@@ -98,20 +94,11 @@ export class GxIdeContainer {
98
94
  // 10.RENDER() FUNCTION //
99
95
  render() {
100
96
  this.evaluateSections();
101
- let result;
102
- if (this.fieldset) {
103
- result = [
104
- h("fieldset", null, this.containerTitle || this.hasHeaderSlot ? (h("legend", { class: this.headingClasses() }, this.containerTitle ? (h("gxg-title", { type: "title-04", alignment: this.titleAlignment }, this.containerTitle)) : null, this.hasHeaderSlot ? (h("div", { class: "heading__inner-wrapper" }, h("slot", { name: "header" }))) : null)) : null, this.hasSlottedContent ? (h("div", { class: this.contentClasses() }, h("slot", null))) : null),
105
- this.footer()
106
- ];
107
- }
108
- else {
109
- result = [
110
- this.containerTitle || this.hasHeaderSlot ? (h("header", { class: this.headingClasses() }, this.containerTitle ? (h("gxg-title", { type: "title-04", alignment: this.titleAlignment }, this.containerTitle)) : null, this.hasHeaderSlot ? (h("div", { class: "heading__inner-wrapper" }, h("slot", { name: "header" }))) : null)) : null,
111
- this.hasSlottedContent ? (h("div", { class: this.contentClasses() }, h("slot", null))) : null,
112
- this.footer()
113
- ];
114
- }
97
+ const result = [
98
+ this.containerTitle || this.hasHeaderSlot ? (h("header", { class: this.headingClasses() }, this.containerTitle ? (h("gxg-title", { type: "title-04", alignment: this.titleAlignment }, this.containerTitle)) : null, this.hasHeaderSlot ? (h("div", { class: "heading__inner-wrapper" }, h("slot", { name: "header" }))) : null)) : null,
99
+ this.hasSlottedContent ? (h("div", { class: this.contentClasses(), part: "content" }, h("slot", null))) : null,
100
+ this.footer()
101
+ ];
115
102
  return (h(Host, null, h("div", { class: {
116
103
  "container": true,
117
104
  [`container--padding-${this.sectionsPadding}`]: true,
@@ -136,24 +123,6 @@ export class GxIdeContainer {
136
123
  }
137
124
  static get properties() {
138
125
  return {
139
- "fieldset": {
140
- "type": "boolean",
141
- "mutable": true,
142
- "complexType": {
143
- "original": "boolean",
144
- "resolved": "boolean",
145
- "references": {}
146
- },
147
- "required": false,
148
- "optional": false,
149
- "docs": {
150
- "tags": [],
151
- "text": "Makes this component content act as a fieldset"
152
- },
153
- "attribute": "fieldset",
154
- "reflect": false,
155
- "defaultValue": "false"
156
- },
157
126
  "containerTitle": {
158
127
  "type": "string",
159
128
  "mutable": false,
@@ -382,6 +351,42 @@ export class GxIdeContainer {
382
351
  "reflect": false,
383
352
  "defaultValue": "\"center\""
384
353
  },
354
+ "flexContent": {
355
+ "type": "boolean",
356
+ "mutable": false,
357
+ "complexType": {
358
+ "original": "boolean",
359
+ "resolved": "boolean",
360
+ "references": {}
361
+ },
362
+ "required": false,
363
+ "optional": false,
364
+ "docs": {
365
+ "tags": [],
366
+ "text": "Makes the content a flex container"
367
+ },
368
+ "attribute": "flex-content",
369
+ "reflect": false,
370
+ "defaultValue": "false"
371
+ },
372
+ "noContentBorderTop": {
373
+ "type": "boolean",
374
+ "mutable": false,
375
+ "complexType": {
376
+ "original": "boolean",
377
+ "resolved": "boolean",
378
+ "references": {}
379
+ },
380
+ "required": false,
381
+ "optional": false,
382
+ "docs": {
383
+ "tags": [],
384
+ "text": "Removes the border-top from the content"
385
+ },
386
+ "attribute": "no-content-border-top",
387
+ "reflect": false,
388
+ "defaultValue": "false"
389
+ },
385
390
  "noContentPadding": {
386
391
  "type": "boolean",
387
392
  "mutable": false,
@@ -9,6 +9,14 @@
9
9
  height: 100%;
10
10
  }
11
11
 
12
+ .gxi-overflow-auto {
13
+ overflow: auto;
14
+ }
15
+
16
+ .gxi-display-flex {
17
+ display: flex;
18
+ }
19
+
12
20
  .align-start {
13
21
  display: flex;
14
22
  align-items: start;
@@ -36,6 +44,22 @@ ch-grid-cell {
36
44
  display: flex;
37
45
  }
38
46
 
47
+ ch-grid {
48
+ overflow: auto;
49
+ height: 100%;
50
+ }
51
+
52
+ ch-grid-column {
53
+ /*to be removed when this works inside a component with shadow: true*/
54
+ z-index: 999;
55
+ border-bottom: 1px solid var(--gray-01);
56
+ }
57
+
58
+ /*Gxg Tabs*/
59
+ gxg-tabs {
60
+ box-shadow: none;
61
+ }
62
+
39
63
  /*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*/
40
64
  :host(.gx-ide-component) {
41
65
  box-shadow: var(--box-shadow-01) !important;
@@ -9,6 +9,14 @@
9
9
  height: 100%;
10
10
  }
11
11
 
12
+ .gxi-overflow-auto {
13
+ overflow: auto;
14
+ }
15
+
16
+ .gxi-display-flex {
17
+ display: flex;
18
+ }
19
+
12
20
  .align-start {
13
21
  display: flex;
14
22
  align-items: start;
@@ -36,6 +44,22 @@ ch-grid-cell {
36
44
  display: flex;
37
45
  }
38
46
 
47
+ ch-grid {
48
+ overflow: auto;
49
+ height: 100%;
50
+ }
51
+
52
+ ch-grid-column {
53
+ /*to be removed when this works inside a component with shadow: true*/
54
+ z-index: 999;
55
+ border-bottom: 1px solid var(--gray-01);
56
+ }
57
+
58
+ /*Gxg Tabs*/
59
+ gxg-tabs {
60
+ box-shadow: none;
61
+ }
62
+
39
63
  /*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*/
40
64
  :host(.gx-ide-component) {
41
65
  box-shadow: var(--box-shadow-01) !important;
@@ -157,6 +181,7 @@ ch-grid-cell {
157
181
  flex-grow: 1;
158
182
  grid-template-columns: 1fr 1fr;
159
183
  gap: 0;
184
+ height: 100%;
160
185
  }
161
186
  .grid--basic > *:first-child {
162
187
  border-right: 1px solid var(--gx-ide-container-border-color);
@@ -77,12 +77,11 @@ export class GxIdeNewEnvironment {
77
77
  this.changedCallback(newEnvData);
78
78
  };
79
79
  this.renderTabBasic = () => {
80
- return (h("gxg-tab", { tab: "basic", "no-padding": true }, h("gx-ide-container", { containerTitle: this._componentLocale.runtime, fieldset: true, displayBorderTop: true, displayBorderBottom: true }, h("gxg-form-radio-group", { ref: (el) => (this.runtimeGroup = el), row: true, onChange: this.runtimeEnvironmentChangedHandler, slot: "header" }, renderFormItems("gxg-form-radio", this.runtimes, "runtime-environment"))), h("div", { class: "grid grid--no-gap grid--basic" }, h("gx-ide-container", { fieldset: true, noHeadingBorder: true, "container-title": this._componentLocale.tabBasic.backEnd.backEndLabel }, h("gxg-combo-box", { "disable-filter": true, label: this._componentLocale.tabBasic.backEnd.language, value: this.languages[0]["id"], ref: (el) => (this.languageEl = el), onValueChanged: this.languageValueChangedHandler, part: "language" }, renderFormItems("gxg-combo-box-item", this.languages)), h("gxg-combo-box", { "disable-filter": true, label: this._componentLocale.tabBasic.backEnd.dataStores, value: this.dataStores[0]["id"], ref: (el) => (this.dataStoreEl = el), onValueChanged: this.dataStoreValueChangedHandler, part: "data-store" }, renderFormItems("gxg-combo-box-item", this.dataStores))), h("gx-ide-container", { fieldset: true, noHeadingBorder: true, "container-title": this._componentLocale.tabBasic.frontEnd.frontEndLabel }, h("gxg-form-checkbox-group", { ref: (el) => (this.frontEndsEl = el) }, renderFormItems("gxg-form-checkbox", this.frontEnds))))));
80
+ return (h("gxg-tab", { tab: "basic", "no-padding": true, flexContainer: true }, h("gx-ide-container", { containerTitle: this._componentLocale.runtime, displayBorderBottom: true }, h("gxg-form-radio-group", { ref: (el) => (this.runtimeGroup = el), row: true, onChange: this.runtimeEnvironmentChangedHandler, slot: "header" }, renderFormItems("gxg-form-radio", this.runtimes, "runtime-environment"))), h("div", { class: "grid grid--no-gap grid--basic" }, h("gx-ide-container", { noHeadingBorder: true, "container-title": this._componentLocale.tabBasic.backEnd.backEndLabel }, h("gxg-combo-box", { "disable-filter": true, label: this._componentLocale.tabBasic.backEnd.language, value: this.languages[0]["id"], ref: (el) => (this.languageEl = el), onValueChanged: this.languageValueChangedHandler, part: "language" }, renderFormItems("gxg-combo-box-item", this.languages)), h("gxg-combo-box", { "disable-filter": true, label: this._componentLocale.tabBasic.backEnd.dataStores, value: this.dataStores[0]["id"], ref: (el) => (this.dataStoreEl = el), onValueChanged: this.dataStoreValueChangedHandler, part: "data-store" }, renderFormItems("gxg-combo-box-item", this.dataStores))), h("gx-ide-container", { noHeadingBorder: true, "container-title": this._componentLocale.tabBasic.frontEnd.frontEndLabel }, h("gxg-form-checkbox-group", { ref: (el) => (this.frontEndsEl = el) }, renderFormItems("gxg-form-checkbox", this.frontEnds))))));
81
81
  };
82
82
  this.renderTabAdvanced = () => {
83
- return (h("gxg-tab", { tab: "advanced", "no-padding": true }, h("gx-ide-container", { displayBorderTop: true }, h("slot", { name: "property-grid" }))));
83
+ return (h("gxg-tab", { tab: "advanced", "no-padding": true }, h("gx-ide-container", null, h("slot", { name: "property-grid" }))));
84
84
  };
85
- this.hideTopBar = false;
86
85
  this.dataStores = undefined;
87
86
  this.frontEnd = undefined;
88
87
  this.frontEnds = undefined;
@@ -104,7 +103,7 @@ export class GxIdeNewEnvironment {
104
103
  }
105
104
  // 10.RENDER() FUNCTION //
106
105
  render() {
107
- return (h(Host, { class: "gx-ide-component" }, !this.hideTopBar ? (h("gx-ide-top-bar", { topBarTitle: this._componentLocale.componentName })) : null, h("div", { class: "gx-ide-main-wrapper gx-ide-overflow" }, h("gx-ide-container", null, h("header", { class: "header grid" }, h("gxg-label", { labelPosition: "start" }, this._componentLocale.name), h("gxg-form-text", { "label-position": "start", placeholder: "NewEnvironment", "max-width": "100%", value: this.environmentName, ref: (el) => (this.nameEl = el), part: "environment-name" }))), h("main", { class: "gxi-full-height" }, h("gxg-tabs", { height: "100%", position: "top", class: "gxg-tabs" }, h("gxg-tab-bar", { slot: "tab-bar-container" }, h("gxg-tab-button", { slot: "tab-bar", "tab-label": this._componentLocale.tabBasic.tabLabel, tab: "basic", "is-selected": true }), h("gxg-tab-button", { slot: "tab-bar", "tab-label": this._componentLocale.tabAdvanced.tabLabel, tab: "advanced", disabled: this.disableAdvanced })), this.renderTabBasic(), this.renderTabAdvanced())), h("gx-ide-container", { displayBorderTop: true }, h("gxg-form-checkbox", { label: this._componentLocale.setCurrentEnvironment, id: "show-current-environment", checked: this.setAsTarget, slot: "footer-start" }), h("gxg-button", { id: "button-create", slot: "footer-end", type: "primary-text-only", onClick: this.setEnvironmentHandler, part: "gxg-button gxg-button--create" }, this._componentLocale.footer.btnSetNewEnvironment), h("gxg-button", { id: "button-cancel", slot: "footer-end", type: "outlined", onClick: this.cancelButtonClickedHandler, part: "gxg-button gxg-button--cancel" }, this._componentLocale.footer.btnCancel)))));
106
+ return (h(Host, { class: "gx-ide-component" }, h("div", { class: "gx-ide-main-wrapper" }, h("gx-ide-container", null, h("header", { class: "header grid" }, h("gxg-label", { labelPosition: "start" }, this._componentLocale.name), h("gxg-form-text", { "label-position": "start", placeholder: "NewEnvironment", "max-width": "100%", value: this.environmentName, ref: (el) => (this.nameEl = el), part: "environment-name" }))), h("main", { class: "gxi-full-height gx-ide-overflow" }, h("gxg-tabs", { class: "gxg-tabs" }, h("gxg-tab-bar", { slot: "tab-bar-container", displayBorder: true }, h("gxg-tab-button", { slot: "tab-bar", "tab-label": this._componentLocale.tabBasic.tabLabel, tab: "basic", "is-selected": true }), h("gxg-tab-button", { slot: "tab-bar", "tab-label": this._componentLocale.tabAdvanced.tabLabel, tab: "advanced", disabled: this.disableAdvanced })), this.renderTabBasic(), this.renderTabAdvanced())), h("gx-ide-container", { displayBorderTop: true }, h("gxg-form-checkbox", { label: this._componentLocale.setCurrentEnvironment, id: "show-current-environment", checked: this.setAsTarget, slot: "footer-start" }), h("gxg-button", { id: "button-create", slot: "footer-end", type: "primary-text-only", onClick: this.setEnvironmentHandler, part: "gxg-button gxg-button--create" }, this._componentLocale.footer.btnSetNewEnvironment), h("gxg-button", { id: "button-cancel", slot: "footer-end", type: "outlined", onClick: this.cancelButtonClickedHandler, part: "gxg-button gxg-button--cancel" }, this._componentLocale.footer.btnCancel)))));
108
107
  }
109
108
  static get is() { return "gx-ide-new-environment"; }
110
109
  static get encapsulation() { return "shadow"; }
@@ -121,24 +120,6 @@ export class GxIdeNewEnvironment {
121
120
  static get assetsDirs() { return ["gx-ide-assets/new-environment"]; }
122
121
  static get properties() {
123
122
  return {
124
- "hideTopBar": {
125
- "type": "boolean",
126
- "mutable": false,
127
- "complexType": {
128
- "original": "false",
129
- "resolved": "boolean",
130
- "references": {}
131
- },
132
- "required": false,
133
- "optional": false,
134
- "docs": {
135
- "tags": [],
136
- "text": "If true, will hide the top-bar"
137
- },
138
- "attribute": "hide-top-bar",
139
- "reflect": false,
140
- "defaultValue": "false"
141
- },
142
123
  "dataStores": {
143
124
  "type": "unknown",
144
125
  "mutable": false,
@@ -9,6 +9,14 @@
9
9
  height: 100%;
10
10
  }
11
11
 
12
+ .gxi-overflow-auto {
13
+ overflow: auto;
14
+ }
15
+
16
+ .gxi-display-flex {
17
+ display: flex;
18
+ }
19
+
12
20
  .align-start {
13
21
  display: flex;
14
22
  align-items: start;
@@ -36,6 +44,22 @@ ch-grid-cell {
36
44
  display: flex;
37
45
  }
38
46
 
47
+ ch-grid {
48
+ overflow: auto;
49
+ height: 100%;
50
+ }
51
+
52
+ ch-grid-column {
53
+ /*to be removed when this works inside a component with shadow: true*/
54
+ z-index: 999;
55
+ border-bottom: 1px solid var(--gray-01);
56
+ }
57
+
58
+ /*Gxg Tabs*/
59
+ gxg-tabs {
60
+ box-shadow: none;
61
+ }
62
+
39
63
  /*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*/
40
64
  :host(.gx-ide-component) {
41
65
  box-shadow: var(--box-shadow-01) !important;
@@ -13,11 +13,13 @@ export class GxIdeNewKb {
13
13
  prototypingTargets: null,
14
14
  userInterfaceLanguages: null,
15
15
  prototypingEnvironments: null,
16
- dataSources: null,
16
+ defaultDataSources: null,
17
17
  serverNames: null,
18
18
  collations: null,
19
19
  authenticationTypes: null
20
20
  };
21
+ /* Used to evaluate what front end options need to be updated on 'getFrontEndsCallback'*/
22
+ this.previousFrontEndsState = [];
21
23
  // 7.LISTENERS //
22
24
  // 8.PUBLIC METHODS API //
23
25
  // 9.LOCAL METHODS //
@@ -104,6 +106,63 @@ export class GxIdeNewKb {
104
106
  });
105
107
  return gxOptions;
106
108
  };
109
+ /**
110
+ * @description it evaluates what front end options need to be updated on 'getFrontEndsCallback', by comparing the new state (getFrontEndsCallback promise result) and the previous state (previousFrontEndsState)
111
+ */
112
+ this.updateFrontEnds = () => {
113
+ if (this.getFrontEndsCallback) {
114
+ const selectedPrototypingEnvironmentId = this.prototypingEnvironmentEl.value;
115
+ const updatedFrontEndsPromise = this.getFrontEndsCallback(selectedPrototypingEnvironmentId);
116
+ updatedFrontEndsPromise
117
+ .then(newFrontEndsOptions => {
118
+ if ((newFrontEndsOptions === null || newFrontEndsOptions === void 0 ? void 0 : newFrontEndsOptions.length) > 0) {
119
+ let newFrontEndOptionIndex;
120
+ const updatedFrontEnds = [];
121
+ this.previousFrontEndsState.forEach(prevFrontEndOption => {
122
+ const optionFound = newFrontEndsOptions.find((newFrontEndOption, index) => {
123
+ newFrontEndOptionIndex = index;
124
+ return newFrontEndOption.id === prevFrontEndOption.id;
125
+ });
126
+ if (optionFound) {
127
+ updatedFrontEnds.push(newFrontEndsOptions[newFrontEndOptionIndex]);
128
+ }
129
+ else {
130
+ updatedFrontEnds.push(prevFrontEndOption);
131
+ }
132
+ });
133
+ this.frontEnds = updatedFrontEnds;
134
+ }
135
+ })
136
+ .catch(() => {
137
+ // to do
138
+ });
139
+ }
140
+ };
141
+ this.getDataSources = () => {
142
+ if (this.getDataSourcesCallback) {
143
+ const selectedPrototypingEnvironmentId = this.prototypingEnvironmentEl.value;
144
+ const selectedPrototypingTargetId = this.prototypingTargetEl.value;
145
+ const updatedDefaultDataSourcesPromise = this.getDataSourcesCallback(selectedPrototypingEnvironmentId, selectedPrototypingTargetId);
146
+ updatedDefaultDataSourcesPromise
147
+ .then(result => {
148
+ if (result.length > 0) {
149
+ this.defaultDataSources = result;
150
+ // set first option as selected
151
+ this.dataSourceEl.value = this.defaultDataSources[0].id;
152
+ }
153
+ })
154
+ .catch(() => {
155
+ // to do
156
+ });
157
+ }
158
+ };
159
+ this.prototypingEnvironmentValueChangedHandler = () => {
160
+ this.getDataSources();
161
+ this.updateFrontEnds();
162
+ };
163
+ this.prototypingTargetValueChangedHandler = () => {
164
+ this.getDataSources();
165
+ };
107
166
  this.createKbHandler = () => {
108
167
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
109
168
  if (this.createCallback) {
@@ -137,12 +196,12 @@ export class GxIdeNewKb {
137
196
  // 10.RENDER() FUNCTION //
138
197
  this.renderTabBasic = () => {
139
198
  var _a, _b, _c, _d;
140
- return (h("gxg-tab", { tab: "basic", "no-padding": true, flexContainer: true }, h("gx-ide-container", { displayBorderTop: true, displayBorderBottom: true }, h("div", { class: "grid basic-row-first" }, h("gxg-combo-box", { disableFilter: true, label: this._componentLocale.tabBasic.prototypingTarget, value: (_a = this._initialComboValue["prototypingTargets"]) !== null && _a !== void 0 ? _a : this.prototypingTargets[0].id, ref: (el) => (this.prototypingTargetEl = el), class: "prototyping-target", part: "prototyping-target" }, renderFormItems("gxg-combo-box-item", this.prototypingTargets, "prototyping-target")), h("gxg-combo-box", { disableFilter: true, label: this._componentLocale.tabBasic.userInterfaceLanguage, value: (_b = this._initialComboValue["userInterfaceLanguages"]) !== null && _b !== void 0 ? _b : this.userInterfaceLanguages[0].id, ref: (el) => (this.userInterfaceLanguageEl = el), class: "user-interface-language", part: "user-interface-language" }, renderFormItems("gxg-combo-box-item", this.userInterfaceLanguages, "user-interface-language")))), h("div", { class: "grid basic-row-second" }, h("gx-ide-container", { fieldset: true, noHeadingBorder: true, containerTitle: this._componentLocale.tabBasic.backEnd.backEndLabel }, h("gxg-combo-box", { disableFilter: true, label: this._componentLocale.tabBasic.backEnd.prototypingEnvironment, value: (_c = this._initialComboValue["prototypingEnvironments"]) !== null && _c !== void 0 ? _c : this.prototypingEnvironments[0].id, ref: (el) => (this.prototypingEnvironmentEl = el), class: "prototyping-environment", part: "prototyping-environment" }, renderFormItems("gxg-combo-box-item", this.prototypingEnvironments, "prototyping-environment")), h("gxg-combo-box", { label: this._componentLocale.tabBasic.backEnd.dataSource, disableFilter: true, value: (_d = this._initialComboValue["dataSources"]) !== null && _d !== void 0 ? _d : this.dataSources[0].id, ref: (el) => (this.dataSourceEl = el), class: "data-source", part: "data-source" }, renderFormItems("gxg-combo-box-item", this.dataSources, "data-source"))), h("gx-ide-container", { fieldset: true, noHeadingBorder: true, containerTitle: this._componentLocale.tabBasic.frontEnd.frontEndLabel }, h("gxg-form-checkbox-group", { ref: el => (this.frontEndsEl = el) }, renderFormItems("gxg-form-checkbox", this.frontEnds, "front-end"))))));
199
+ return (h("gxg-tab", { tab: "basic", "no-padding": true, flexContainer: true }, h("gx-ide-container", { displayBorderBottom: true }, h("div", { class: "grid basic-row-first" }, h("gxg-combo-box", { disableFilter: true, label: this._componentLocale.tabBasic.prototypingTarget, value: (_a = this._initialComboValue["prototypingTargets"]) !== null && _a !== void 0 ? _a : this.prototypingTargets[0].id, ref: (el) => (this.prototypingTargetEl = el), onValueChanged: this.prototypingTargetValueChangedHandler, class: "prototyping-target", part: "prototyping-target" }, renderFormItems("gxg-combo-box-item", this.prototypingTargets, "prototyping-target")), h("gxg-combo-box", { disableFilter: true, label: this._componentLocale.tabBasic.userInterfaceLanguage, value: (_b = this._initialComboValue["userInterfaceLanguages"]) !== null && _b !== void 0 ? _b : this.userInterfaceLanguages[0].id, ref: (el) => (this.userInterfaceLanguageEl = el), class: "user-interface-language", part: "user-interface-language" }, renderFormItems("gxg-combo-box-item", this.userInterfaceLanguages, "user-interface-language")))), h("div", { class: "grid basic-row-second" }, h("gx-ide-container", { noHeadingBorder: true, containerTitle: this._componentLocale.tabBasic.backEnd.backEndLabel }, h("gxg-combo-box", { disableFilter: true, label: this._componentLocale.tabBasic.backEnd.prototypingEnvironment, value: (_c = this._initialComboValue["prototypingEnvironments"]) !== null && _c !== void 0 ? _c : this.prototypingEnvironments[0].id, ref: (el) => (this.prototypingEnvironmentEl = el), onValueChanged: this.prototypingEnvironmentValueChangedHandler, class: "prototyping-environment", part: "prototyping-environment" }, renderFormItems("gxg-combo-box-item", this.prototypingEnvironments, "prototyping-environment")), h("gxg-combo-box", { label: this._componentLocale.tabBasic.backEnd.dataSource, disableFilter: true, value: (_d = this._initialComboValue["defaultDataSources"]) !== null && _d !== void 0 ? _d : this.defaultDataSources[0].id, ref: (el) => (this.dataSourceEl = el), class: "data-source", part: "data-source" }, renderFormItems("gxg-combo-box-item", this.defaultDataSources, "data-source"))), h("gx-ide-container", { noHeadingBorder: true, containerTitle: this._componentLocale.tabBasic.frontEnd.frontEndLabel }, h("gxg-form-checkbox-group", { ref: el => (this.frontEndsEl = el) }, renderFormItems("gxg-form-checkbox", this.frontEnds, "front-end"))))));
141
200
  };
142
201
  this.renderTabAdvanced = () => {
143
202
  var _a, _b, _c;
144
- return (h("gxg-tab", { tab: "advanced", "no-padding": true, flexContainer: true }, h("gx-ide-container", { displayBorderTop: true, displayBorderBottom: true, containerTitle: this._componentLocale.tabAdvanced.tabTitle }), h("div", { class: "grid knowledge-base-storage" }, h("gx-ide-container", { fieldset: true }, h("div", { class: "grid knowledge-base-storage__col-left" }, h("gxg-combo-box", { label: this._componentLocale.tabAdvanced.serverName, disableFilter: true, value: (_a = this._initialComboValue["serverNames"]) !== null && _a !== void 0 ? _a : this.serverNames[0].id, ref: (el) => (this.serverNameEl = el), class: "server-name-combo-box", part: "server-name", onValueChanged: this.evaluateCreateDataInKbDisabled }, renderFormItems("gxg-combo-box-item", this.serverNames, "server-name")), h("gxg-button", { type: "secondary-icon-only", icon: "gemini-tools/search", class: "server-name-button", part: "search-server-name" }), h("gxg-form-text", { labelPosition: "above", label: this._componentLocale.tabAdvanced.databaseName, placeholder: "MyDatabase", ref: (el) => (this.databaseNameEl = el), value: this.databaseName, class: "database-name", part: "database-name" }), h("gxg-combo-box", { label: this._componentLocale.tabAdvanced.collation, disableFilter: true, value: (_b = this._initialComboValue["collations"]) !== null && _b !== void 0 ? _b : this.collations[0].id, ref: (el) => (this.collationEl = el), class: "collation-combo-box", part: "collation" }, renderFormItems("gxg-combo-box-item", this.collations, "collation")), h("gxg-button", { type: "secondary-icon-only", icon: "gemini-tools/reset", class: "collation-button", part: "reset-collation" }), h("gxg-form-checkbox", { label: this._componentLocale.tabAdvanced.createDataFilesInKbFolder, ref: (el) => (this.createDataFilesInKBFolderEl =
145
- el), alignTop: true, checked: this.createDataFilesInKBFolder, disabled: this.createDataInKbDisabled, class: "create-data-in-kb", part: "create-data-in-kb" }))), h("gx-ide-container", { fieldset: true, noHeadingBorder: true }, h("div", { class: {
203
+ return (h("gxg-tab", { tab: "advanced", "no-padding": true, flexContainer: true }, h("gx-ide-container", { displayBorderTop: true, displayBorderBottom: true, containerTitle: this._componentLocale.tabAdvanced.tabTitle }), h("div", { class: "grid knowledge-base-storage" }, h("gx-ide-container", null, h("div", { class: "grid knowledge-base-storage__col-left" }, h("gxg-combo-box", { label: this._componentLocale.tabAdvanced.serverName, disableFilter: true, value: (_a = this._initialComboValue["serverNames"]) !== null && _a !== void 0 ? _a : this.serverNames[0].id, ref: (el) => (this.serverNameEl = el), class: "server-name-combo-box", part: "server-name", onValueChanged: this.evaluateCreateDataInKbDisabled }, renderFormItems("gxg-combo-box-item", this.serverNames, "server-name")), h("gxg-button", { type: "secondary-icon-only", icon: "gemini-tools/search", class: "server-name-button", part: "search-server-name" }), h("gxg-form-text", { labelPosition: "above", label: this._componentLocale.tabAdvanced.databaseName, placeholder: "MyDatabase", ref: (el) => (this.databaseNameEl = el), value: this.databaseName, class: "database-name", part: "database-name" }), h("gxg-combo-box", { label: this._componentLocale.tabAdvanced.collation, disableFilter: true, value: (_b = this._initialComboValue["collations"]) !== null && _b !== void 0 ? _b : this.collations[0].id, ref: (el) => (this.collationEl = el), class: "collation-combo-box", part: "collation" }, renderFormItems("gxg-combo-box-item", this.collations, "collation")), h("gxg-button", { type: "secondary-icon-only", icon: "gemini-tools/reset", class: "collation-button", part: "reset-collation" }), h("gxg-form-checkbox", { label: this._componentLocale.tabAdvanced.createDataFilesInKbFolder, ref: (el) => (this.createDataFilesInKBFolderEl =
204
+ el), alignTop: true, checked: this.createDataFilesInKBFolder, disabled: this.createDataInKbDisabled, class: "create-data-in-kb", part: "create-data-in-kb" }))), h("gx-ide-container", { noHeadingBorder: true }, h("div", { class: {
146
205
  "grid": true,
147
206
  "knowledge-base-storage__col-right": true,
148
207
  "knowledge-base-storage__col-right--windows-authentication": !this.userNameVisible
@@ -152,7 +211,7 @@ export class GxIdeNewKb {
152
211
  this.userNameVisible = true;
153
212
  this.passwordVisible = true;
154
213
  this.savePasswordVisible = true;
155
- this.dataSources = undefined;
214
+ this.defaultDataSources = undefined;
156
215
  this.frontEnds = undefined;
157
216
  this.isAdvanced = false;
158
217
  this.kbLocation = undefined;
@@ -172,6 +231,8 @@ export class GxIdeNewKb {
172
231
  this.test = undefined;
173
232
  this.createCallback = undefined;
174
233
  this.cancelCallback = undefined;
234
+ this.getDataSourcesCallback = undefined;
235
+ this.getFrontEndsCallback = undefined;
175
236
  }
176
237
  // 6.COMPONENT LIFECYCLE METHODS //
177
238
  async componentWillLoad() {
@@ -179,6 +240,7 @@ export class GxIdeNewKb {
179
240
  this.setInitialValues();
180
241
  this.evaluateCreateDataInKbDisabled(null);
181
242
  this.evaluateAuthenticationType(null);
243
+ this.previousFrontEndsState = this.frontEnds;
182
244
  }
183
245
  componentDidRender() {
184
246
  this.componentDidRenderEvent.emit(this._componentLocale.componentName);
@@ -187,7 +249,7 @@ export class GxIdeNewKb {
187
249
  * 11.RENDER() FUNCTION
188
250
  ********************************/
189
251
  render() {
190
- return (h(Host, { class: "gx-ide-component" }, h("div", { class: "gx-ide-main-wrapper gx-ide-overflow" }, h("gx-ide-container", null, h("header", { class: {
252
+ return (h(Host, { class: "gx-ide-component" }, h("div", { class: "gx-ide-main-wrapper" }, h("gx-ide-container", null, h("header", { class: {
191
253
  "header": true,
192
254
  "grid": true,
193
255
  "header--is-advanced": this.isAdvanced
@@ -197,7 +259,7 @@ export class GxIdeNewKb {
197
259
  h("gxg-form-text", { labelPosition: "start", placeholder: "C:\\Models", maxWidth: "100%", value: this.kbLocation, ref: (el) => (this.locationEl = el), disabled: !this.isAdvanced, part: "kb-location", class: "location-input" }),
198
260
  h("gxg-button", { type: "secondary-icon-only", icon: "gemini-tools/folder", onClick: this.selectLocationHandler, part: "button-select-location", class: "location-icon" })
199
261
  ]
200
- : null)), h("main", { class: "gxi-full-height" }, h("gxg-tabs", { height: "100%", position: "top", class: "gxg-tabs" }, h("gxg-tab-bar", { slot: "tab-bar-container", part: "tab-bar" }, h("gxg-tab-button", { slot: "tab-bar", tabLabel: this._componentLocale.tabBasic.tabLabel, tab: "basic", "is-selected": true, hidden: !this.isAdvanced, part: "tab-button-basic" }), h("gxg-tab-button", { slot: "tab-bar", tabLabel: this._componentLocale.tabAdvanced.tabLabel, tab: "advanced", hidden: !this.isAdvanced, part: "tab-button-advanced" })), this.renderTabBasic(), this.renderTabAdvanced())), h("gx-ide-container", { displayBorderTop: true }, h("gxg-button", { id: "button-create", type: "primary-text-only", onClick: this.createKbHandler, part: "button-create", slot: "footer-end" }, this._componentLocale.footer.btnCreate), h("gxg-button", { id: "button-cancel", type: "outlined", onClick: this.cancelKbHandler, part: "button-cancel", slot: "footer-end" }, this._componentLocale.footer.btnCancel)))));
262
+ : null)), h("main", { class: "gxi-full-height gxi-overflow-auto" }, h("gxg-tabs", { class: "gxg-tabs" }, h("gxg-tab-bar", { slot: "tab-bar-container", part: "tab-bar", displayBorder: true }, h("gxg-tab-button", { slot: "tab-bar", tabLabel: this._componentLocale.tabBasic.tabLabel, tab: "basic", "is-selected": true, hidden: !this.isAdvanced, part: "tab-button-basic" }), h("gxg-tab-button", { slot: "tab-bar", tabLabel: this._componentLocale.tabAdvanced.tabLabel, tab: "advanced", hidden: !this.isAdvanced, part: "tab-button-advanced" })), this.renderTabBasic(), this.renderTabAdvanced())), h("gx-ide-container", { displayBorderTop: true }, h("gxg-button", { id: "button-create", type: "primary-text-only", onClick: this.createKbHandler, part: "button-create", slot: "footer-end" }, this._componentLocale.footer.btnCreate), h("gxg-button", { id: "button-cancel", type: "outlined", onClick: this.cancelKbHandler, part: "button-cancel", slot: "footer-end" }, this._componentLocale.footer.btnCancel)))));
201
263
  }
202
264
  static get is() { return "gx-ide-new-kb"; }
203
265
  static get encapsulation() { return "shadow"; }
@@ -214,9 +276,9 @@ export class GxIdeNewKb {
214
276
  static get assetsDirs() { return ["gx-ide-assets/new-kb"]; }
215
277
  static get properties() {
216
278
  return {
217
- "dataSources": {
279
+ "defaultDataSources": {
218
280
  "type": "unknown",
219
- "mutable": false,
281
+ "mutable": true,
220
282
  "complexType": {
221
283
  "original": "GxOption[]",
222
284
  "resolved": "GxOption[]",
@@ -236,7 +298,7 @@ export class GxIdeNewKb {
236
298
  },
237
299
  "frontEnds": {
238
300
  "type": "unknown",
239
- "mutable": false,
301
+ "mutable": true,
240
302
  "complexType": {
241
303
  "original": "GxOption[]",
242
304
  "resolved": "GxOption[]",
@@ -586,6 +648,44 @@ export class GxIdeNewKb {
586
648
  "tags": [],
587
649
  "text": "Callback invoked when the user wants to cancel KB creation (\u2018Cancel\u2019 button)"
588
650
  }
651
+ },
652
+ "getDataSourcesCallback": {
653
+ "type": "unknown",
654
+ "mutable": false,
655
+ "complexType": {
656
+ "original": "GetDataSourcesCallback",
657
+ "resolved": "(selectedPrototypingEnvironmentId: string, selectedPrototypingTargetId: string) => Promise<GxOption[]>",
658
+ "references": {
659
+ "GetDataSourcesCallback": {
660
+ "location": "local"
661
+ }
662
+ }
663
+ },
664
+ "required": false,
665
+ "optional": false,
666
+ "docs": {
667
+ "tags": [],
668
+ "text": "Callback invoked when the user wants to cancel KB creation (\u2018Cancel\u2019 button)"
669
+ }
670
+ },
671
+ "getFrontEndsCallback": {
672
+ "type": "unknown",
673
+ "mutable": false,
674
+ "complexType": {
675
+ "original": "GetFrontEndsCallback",
676
+ "resolved": "(selectedPrototypingEnvironmentId: string) => Promise<GxOption[]>",
677
+ "references": {
678
+ "GetFrontEndsCallback": {
679
+ "location": "local"
680
+ }
681
+ }
682
+ },
683
+ "required": false,
684
+ "optional": false,
685
+ "docs": {
686
+ "tags": [],
687
+ "text": "Callback invoked when the user changes the prototyping environment, allowing for the modification of the list of front ends"
688
+ }
589
689
  }
590
690
  };
591
691
  }
@@ -9,6 +9,14 @@
9
9
  height: 100%;
10
10
  }
11
11
 
12
+ .gxi-overflow-auto {
13
+ overflow: auto;
14
+ }
15
+
16
+ .gxi-display-flex {
17
+ display: flex;
18
+ }
19
+
12
20
  .align-start {
13
21
  display: flex;
14
22
  align-items: start;
@@ -36,6 +44,22 @@ ch-grid-cell {
36
44
  display: flex;
37
45
  }
38
46
 
47
+ ch-grid {
48
+ overflow: auto;
49
+ height: 100%;
50
+ }
51
+
52
+ ch-grid-column {
53
+ /*to be removed when this works inside a component with shadow: true*/
54
+ z-index: 999;
55
+ border-bottom: 1px solid var(--gray-01);
56
+ }
57
+
58
+ /*Gxg Tabs*/
59
+ gxg-tabs {
60
+ box-shadow: none;
61
+ }
62
+
39
63
  /*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*/
40
64
  :host(.gx-ide-component) {
41
65
  box-shadow: var(--box-shadow-01) !important;