@genexus/genexus-ide-ui 0.0.98 → 0.0.100

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (224) 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-container_2.cjs.entry.js → gx-ide-container_3.cjs.entry.js} +53 -127
  5. package/dist/cjs/gx-ide-container_3.cjs.entry.js.map +1 -0
  6. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js +2 -2
  7. package/dist/cjs/gx-ide-dashboard-home.cjs.entry.js.map +1 -1
  8. package/dist/cjs/gx-ide-data-selector.cjs.entry.js +175 -0
  9. package/dist/cjs/gx-ide-data-selector.cjs.entry.js.map +1 -0
  10. package/dist/cjs/{gx-ide-recent-news.cjs.entry.js → gx-ide-empty-state_2.cjs.entry.js} +64 -2
  11. package/dist/cjs/gx-ide-empty-state_2.cjs.entry.js.map +1 -0
  12. package/dist/cjs/gx-ide-import-from-design.cjs.entry.js +2 -9
  13. package/dist/cjs/gx-ide-import-from-design.cjs.entry.js.map +1 -1
  14. package/dist/cjs/gx-ide-start-page.cjs.entry.js +9 -5
  15. package/dist/cjs/gx-ide-start-page.cjs.entry.js.map +1 -1
  16. package/dist/cjs/gx-ide-status-buttons_2.cjs.entry.js +41 -27
  17. package/dist/cjs/gx-ide-status-buttons_2.cjs.entry.js.map +1 -1
  18. package/dist/cjs/gxg-card_2.cjs.entry.js +10 -5
  19. package/dist/cjs/gxg-card_2.cjs.entry.js.map +1 -1
  20. package/dist/cjs/gxg-combo-box_2.cjs.entry.js +62 -24
  21. package/dist/cjs/gxg-combo-box_2.cjs.entry.js.map +1 -1
  22. package/dist/cjs/gxg-form-checkbox.cjs.entry.js +151 -0
  23. package/dist/cjs/gxg-form-checkbox.cjs.entry.js.map +1 -0
  24. package/dist/cjs/gxg-list-box_2.cjs.entry.js +28 -3
  25. package/dist/cjs/gxg-list-box_2.cjs.entry.js.map +1 -1
  26. package/dist/cjs/gxg-menu-item.cjs.entry.js +1 -1
  27. package/dist/cjs/gxg-menu-item.cjs.entry.js.map +1 -1
  28. package/dist/cjs/gxg-pill.cjs.entry.js +5 -5
  29. package/dist/cjs/gxg-pill.cjs.entry.js.map +1 -1
  30. package/dist/cjs/gxg-pills.cjs.entry.js +1 -1
  31. package/dist/cjs/gxg-pills.cjs.entry.js.map +1 -1
  32. package/dist/cjs/gxg-tab_4.cjs.entry.js +97 -17
  33. package/dist/cjs/gxg-tab_4.cjs.entry.js.map +1 -1
  34. package/dist/cjs/gxg-window-v2.cjs.entry.js +28 -0
  35. package/dist/cjs/gxg-window-v2.cjs.entry.js.map +1 -0
  36. package/dist/cjs/loader.cjs.js +1 -1
  37. package/dist/collection/collection-manifest.json +4 -1
  38. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.css +40 -0
  39. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.js +180 -0
  40. package/dist/collection/components/_helpers/empty-state/gx-ide-empty-state.js.map +1 -0
  41. package/dist/collection/components/_helpers/list-selector/list-selector-item/list-selector-item.js +1 -1
  42. package/dist/collection/components/_helpers/list-selector/list-selector.js +1 -1
  43. package/dist/collection/components/dashboard-home/dashboard-home.css +5 -0
  44. package/dist/collection/components/dashboard-home/dashboard-home.js +1 -1
  45. package/dist/collection/components/dashboard-home/dashboard-home.js.map +1 -1
  46. package/dist/collection/components/data-selector/data-selector.css +261 -0
  47. package/dist/collection/components/data-selector/data-selector.js +441 -0
  48. package/dist/collection/components/data-selector/data-selector.js.map +1 -0
  49. package/dist/collection/components/data-selector/gx-ide-assets/data-selector/langs/data-selector.lang.en.json +23 -0
  50. package/dist/collection/components/data-selector/gx-ide-assets/data-selector/langs/data-selector.lang.ja.json +3 -0
  51. package/dist/collection/components/data-selector/gx-ide-assets/data-selector/langs/data-selector.lang.zh.json +3 -0
  52. package/dist/collection/components/data-selector/gx-ide-assets/data-selector/shortcuts.json +15 -0
  53. package/dist/collection/components/import-from-design/import-from-design.js +3 -12
  54. package/dist/collection/components/import-from-design/import-from-design.js.map +1 -1
  55. package/dist/collection/components/start-page/recent-news.css +1 -1
  56. package/dist/collection/components/start-page/start-page.css +4 -0
  57. package/dist/collection/components/start-page/start-page.js +8 -4
  58. package/dist/collection/components/start-page/start-page.js.map +1 -1
  59. package/dist/components/card.js +11 -5
  60. package/dist/components/card.js.map +1 -1
  61. package/dist/components/combo-box.js +62 -24
  62. package/dist/components/combo-box.js.map +1 -1
  63. package/dist/components/gx-ide-dashboard-home.js +2 -2
  64. package/dist/components/gx-ide-dashboard-home.js.map +1 -1
  65. package/dist/components/gx-ide-data-selector.d.ts +11 -0
  66. package/dist/components/gx-ide-data-selector.js +347 -0
  67. package/dist/components/gx-ide-data-selector.js.map +1 -0
  68. package/dist/components/gx-ide-empty-state.d.ts +11 -0
  69. package/dist/components/gx-ide-empty-state.js +8 -0
  70. package/dist/components/gx-ide-empty-state.js.map +1 -0
  71. package/dist/components/gx-ide-empty-state2.js +126 -0
  72. package/dist/components/gx-ide-empty-state2.js.map +1 -0
  73. package/dist/components/gx-ide-import-from-design.js +3 -11
  74. package/dist/components/gx-ide-import-from-design.js.map +1 -1
  75. package/dist/components/gx-ide-start-page.js +21 -11
  76. package/dist/components/gx-ide-start-page.js.map +1 -1
  77. package/dist/components/gxg-menu-item.js +1 -1
  78. package/dist/components/gxg-menu-item.js.map +1 -1
  79. package/dist/components/gxg-pills.js +1 -1
  80. package/dist/components/gxg-pills.js.map +1 -1
  81. package/dist/components/gxg-top-state-bar2.js +46 -30
  82. package/dist/components/gxg-top-state-bar2.js.map +1 -1
  83. package/dist/components/gxg-window-v2.js +44 -0
  84. package/dist/components/gxg-window-v2.js.map +1 -0
  85. package/dist/components/icon2.js +3 -2
  86. package/dist/components/icon2.js.map +1 -1
  87. package/dist/components/list-box.js +27 -1
  88. package/dist/components/list-box.js.map +1 -1
  89. package/dist/components/pill.js +5 -5
  90. package/dist/components/pill.js.map +1 -1
  91. package/dist/components/recent-news.js +1 -1
  92. package/dist/components/recent-news.js.map +1 -1
  93. package/dist/components/tab-bar.js +17 -9
  94. package/dist/components/tab-bar.js.map +1 -1
  95. package/dist/components/tab-button.js +11 -4
  96. package/dist/components/tab-button.js.map +1 -1
  97. package/dist/components/tab.js +6 -3
  98. package/dist/components/tab.js.map +1 -1
  99. package/dist/components/tabs.js +73 -4
  100. package/dist/components/tabs.js.map +1 -1
  101. package/dist/esm/ch-icon_5.entry.js +3 -2
  102. package/dist/esm/ch-icon_5.entry.js.map +1 -1
  103. package/dist/esm/genexus-ide-ui.js +1 -1
  104. package/dist/esm/{gx-ide-container_2.entry.js → gx-ide-container_3.entry.js} +53 -128
  105. package/dist/esm/gx-ide-container_3.entry.js.map +1 -0
  106. package/dist/esm/gx-ide-dashboard-home.entry.js +2 -2
  107. package/dist/esm/gx-ide-dashboard-home.entry.js.map +1 -1
  108. package/dist/esm/gx-ide-data-selector.entry.js +171 -0
  109. package/dist/esm/gx-ide-data-selector.entry.js.map +1 -0
  110. package/dist/esm/{gx-ide-recent-news.entry.js → gx-ide-empty-state_2.entry.js} +64 -3
  111. package/dist/esm/gx-ide-empty-state_2.entry.js.map +1 -0
  112. package/dist/esm/gx-ide-import-from-design.entry.js +2 -9
  113. package/dist/esm/gx-ide-import-from-design.entry.js.map +1 -1
  114. package/dist/esm/gx-ide-start-page.entry.js +9 -5
  115. package/dist/esm/gx-ide-start-page.entry.js.map +1 -1
  116. package/dist/esm/gx-ide-status-buttons_2.entry.js +41 -27
  117. package/dist/esm/gx-ide-status-buttons_2.entry.js.map +1 -1
  118. package/dist/esm/gxg-card_2.entry.js +10 -5
  119. package/dist/esm/gxg-card_2.entry.js.map +1 -1
  120. package/dist/esm/gxg-combo-box_2.entry.js +62 -24
  121. package/dist/esm/gxg-combo-box_2.entry.js.map +1 -1
  122. package/dist/esm/gxg-form-checkbox.entry.js +147 -0
  123. package/dist/esm/gxg-form-checkbox.entry.js.map +1 -0
  124. package/dist/esm/gxg-list-box_2.entry.js +27 -2
  125. package/dist/esm/gxg-list-box_2.entry.js.map +1 -1
  126. package/dist/esm/gxg-menu-item.entry.js +1 -1
  127. package/dist/esm/gxg-menu-item.entry.js.map +1 -1
  128. package/dist/esm/gxg-pill.entry.js +5 -5
  129. package/dist/esm/gxg-pill.entry.js.map +1 -1
  130. package/dist/esm/gxg-pills.entry.js +1 -1
  131. package/dist/esm/gxg-pills.entry.js.map +1 -1
  132. package/dist/esm/gxg-tab_4.entry.js +97 -17
  133. package/dist/esm/gxg-tab_4.entry.js.map +1 -1
  134. package/dist/esm/gxg-window-v2.entry.js +24 -0
  135. package/dist/esm/gxg-window-v2.entry.js.map +1 -0
  136. package/dist/esm/loader.js +1 -1
  137. package/dist/genexus-ide-ui/genexus-ide-ui.css +74 -7
  138. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  139. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
  140. package/dist/genexus-ide-ui/gx-ide-assets/data-selector/langs/data-selector.lang.en.json +23 -0
  141. package/dist/genexus-ide-ui/gx-ide-assets/data-selector/langs/data-selector.lang.ja.json +3 -0
  142. package/dist/genexus-ide-ui/gx-ide-assets/data-selector/langs/data-selector.lang.zh.json +3 -0
  143. package/dist/genexus-ide-ui/gx-ide-assets/data-selector/shortcuts.json +15 -0
  144. package/dist/genexus-ide-ui/icon-assets/mercury/tests/balanza-path.svg +3 -0
  145. package/dist/genexus-ide-ui/icon-assets/mercury/tests/balanza-stroke.svg +9 -0
  146. package/dist/genexus-ide-ui/icon-assets/mercury/tests/folder-2.svg +3 -0
  147. package/dist/genexus-ide-ui/{p-b8fc93f4.entry.js → p-2c8afaa6.entry.js} +147 -112
  148. package/dist/genexus-ide-ui/p-2c8afaa6.entry.js.map +1 -0
  149. package/dist/genexus-ide-ui/{p-9b96b515.entry.js → p-40f21d2d.entry.js} +116 -192
  150. package/dist/genexus-ide-ui/p-40f21d2d.entry.js.map +1 -0
  151. package/dist/genexus-ide-ui/{p-5ca84a03.entry.js → p-4e155cd5.entry.js} +27 -4
  152. package/dist/genexus-ide-ui/p-4e155cd5.entry.js.map +1 -0
  153. package/dist/genexus-ide-ui/p-4fc6d6a7.entry.js +24 -0
  154. package/dist/genexus-ide-ui/p-4fc6d6a7.entry.js.map +1 -0
  155. package/dist/genexus-ide-ui/p-54e4b362.entry.js +270 -0
  156. package/dist/genexus-ide-ui/p-54e4b362.entry.js.map +1 -0
  157. package/dist/genexus-ide-ui/{p-73aa4e69.entry.js → p-71f8aba2.entry.js} +13 -13
  158. package/dist/genexus-ide-ui/{p-73aa4e69.entry.js.map → p-71f8aba2.entry.js.map} +1 -1
  159. package/dist/genexus-ide-ui/p-75f0ba9d.entry.js +273 -0
  160. package/dist/genexus-ide-ui/p-75f0ba9d.entry.js.map +1 -0
  161. package/dist/genexus-ide-ui/{p-545291ad.entry.js → p-7dc3a137.entry.js} +4 -3
  162. package/dist/genexus-ide-ui/{p-545291ad.entry.js.map → p-7dc3a137.entry.js.map} +1 -1
  163. package/dist/genexus-ide-ui/{p-f186adfd.entry.js → p-85639fa5.entry.js} +100 -22
  164. package/dist/genexus-ide-ui/p-85639fa5.entry.js.map +1 -0
  165. package/dist/genexus-ide-ui/{p-30365c44.entry.js → p-a3e07b86.entry.js} +6 -7
  166. package/dist/genexus-ide-ui/p-a3e07b86.entry.js.map +1 -0
  167. package/dist/genexus-ide-ui/{p-9c6c5a61.entry.js → p-a592930e.entry.js} +37 -32
  168. package/dist/genexus-ide-ui/p-a592930e.entry.js.map +1 -0
  169. package/dist/genexus-ide-ui/p-b0e539fe.entry.js +41 -0
  170. package/dist/genexus-ide-ui/p-b0e539fe.entry.js.map +1 -0
  171. package/dist/genexus-ide-ui/{p-a439149b.entry.js → p-bff2603a.entry.js} +8 -3
  172. package/dist/genexus-ide-ui/p-bff2603a.entry.js.map +1 -0
  173. package/dist/genexus-ide-ui/{p-050bc199.entry.js → p-e0924e3f.entry.js} +96 -6
  174. package/dist/genexus-ide-ui/p-e0924e3f.entry.js.map +1 -0
  175. package/dist/genexus-ide-ui/{p-58cad79d.entry.js → p-e240361a.entry.js} +58 -68
  176. package/dist/genexus-ide-ui/p-e240361a.entry.js.map +1 -0
  177. package/dist/genexus-ide-ui/{p-e585f550.entry.js → p-e3925761.entry.js} +4 -5
  178. package/dist/genexus-ide-ui/{p-e585f550.entry.js.map → p-e3925761.entry.js.map} +1 -1
  179. package/dist/genexus-ide-ui/{p-219d7b29.entry.js → p-eeb35622.entry.js} +165 -89
  180. package/dist/genexus-ide-ui/p-eeb35622.entry.js.map +1 -0
  181. package/dist/node_modules/@genexus/gemini/dist/collection/components/card/card.css +13 -1
  182. package/dist/node_modules/@genexus/gemini/dist/collection/components/pills/pill.css +16 -51
  183. package/dist/node_modules/@genexus/gemini/dist/collection/components/pills/pills.css +1 -8
  184. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab/tab.css +7 -0
  185. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab-bar/tab-bar.css +18 -0
  186. package/dist/node_modules/@genexus/gemini/dist/collection/components/tab-button/tab-button.css +17 -0
  187. package/dist/node_modules/@genexus/gemini/dist/collection/components/tabs/tabs.css +64 -13
  188. package/dist/node_modules/@genexus/gemini/dist/collection/components/top-state-bar/gxg-top-state-bar.css +120 -43
  189. package/dist/node_modules/@genexus/gemini/dist/collection/components/window-v2/window.css +3 -0
  190. package/dist/types/components/_helpers/empty-state/gx-ide-empty-state.d.ts +34 -0
  191. package/dist/types/components/data-selector/data-selector.d.ts +109 -0
  192. package/dist/types/components/import-from-design/import-from-design.d.ts +1 -3
  193. package/dist/types/components.d.ts +220 -40
  194. package/package.json +3 -3
  195. package/dist/cjs/gx-ide-container_2.cjs.entry.js.map +0 -1
  196. package/dist/cjs/gx-ide-recent-news.cjs.entry.js.map +0 -1
  197. package/dist/cjs/gx-ide-title_2.cjs.entry.js +0 -77
  198. package/dist/cjs/gx-ide-title_2.cjs.entry.js.map +0 -1
  199. package/dist/cjs/reposition-scroll-86d8fac5.js +0 -33
  200. package/dist/cjs/reposition-scroll-86d8fac5.js.map +0 -1
  201. package/dist/components/reposition-scroll.js +0 -31
  202. package/dist/components/reposition-scroll.js.map +0 -1
  203. package/dist/esm/gx-ide-container_2.entry.js.map +0 -1
  204. package/dist/esm/gx-ide-recent-news.entry.js.map +0 -1
  205. package/dist/esm/gx-ide-title_2.entry.js +0 -72
  206. package/dist/esm/gx-ide-title_2.entry.js.map +0 -1
  207. package/dist/esm/reposition-scroll-cfff7017.js +0 -31
  208. package/dist/esm/reposition-scroll-cfff7017.js.map +0 -1
  209. package/dist/genexus-ide-ui/p-050bc199.entry.js.map +0 -1
  210. package/dist/genexus-ide-ui/p-219d7b29.entry.js.map +0 -1
  211. package/dist/genexus-ide-ui/p-30365c44.entry.js.map +0 -1
  212. package/dist/genexus-ide-ui/p-3e87257c.entry.js +0 -41
  213. package/dist/genexus-ide-ui/p-3e87257c.entry.js.map +0 -1
  214. package/dist/genexus-ide-ui/p-58cad79d.entry.js.map +0 -1
  215. package/dist/genexus-ide-ui/p-5ca84a03.entry.js.map +0 -1
  216. package/dist/genexus-ide-ui/p-9b96b515.entry.js.map +0 -1
  217. package/dist/genexus-ide-ui/p-9c6c5a61.entry.js.map +0 -1
  218. package/dist/genexus-ide-ui/p-a439149b.entry.js.map +0 -1
  219. package/dist/genexus-ide-ui/p-b8fc93f4.entry.js.map +0 -1
  220. package/dist/genexus-ide-ui/p-efa273d7.js +0 -27
  221. package/dist/genexus-ide-ui/p-efa273d7.js.map +0 -1
  222. package/dist/genexus-ide-ui/p-f186adfd.entry.js.map +0 -1
  223. package/dist/genexus-ide-ui/p-f5034221.entry.js +0 -258
  224. package/dist/genexus-ide-ui/p-f5034221.entry.js.map +0 -1
@@ -382,6 +382,24 @@ FORM ELEMENTS
382
382
  width: 0;
383
383
  }
384
384
 
385
+ /*Stacked*/
386
+ :host(.gxg-tab-bar--left-stacked),
387
+ :host(.gxg-tab-bar--right-stacked) {
388
+ height: 100%;
389
+ }
390
+ :host(.gxg-tab-bar--left-stacked) .tab-bar,
391
+ :host(.gxg-tab-bar--right-stacked) .tab-bar {
392
+ flex-direction: column;
393
+ }
394
+
395
+ :host(.gxg-tab-bar--left-stacked) {
396
+ border-inline-end: var(--ds-border-common-styles);
397
+ }
398
+
399
+ :host(.gxg-tab-bar--right-stacked) {
400
+ border-inline-start: var(--ds-border-common-styles);
401
+ }
402
+
385
403
  /*Scrollable*/
386
404
  :host([scrollable]) .nav {
387
405
  width: 100%;
@@ -344,6 +344,7 @@ FORM ELEMENTS
344
344
  -moz-box-shadow: none;
345
345
  box-shadow: none;
346
346
  background-color: transparent;
347
+ /*stacked style*/
347
348
  }
348
349
  :host .tab-button:focus-visible {
349
350
  outline: var(--ds-focus-border-width) solid var(--ds-border-color-control--focused);
@@ -404,10 +405,26 @@ FORM ELEMENTS
404
405
  :host .tab-button gxg-icon {
405
406
  --gxg-icon-color: var(--gxg-tab-button-icon-color);
406
407
  }
408
+ :host .tab-button--reduced {
409
+ padding-inline-end: var(--gxg-tab-button-horizontal-padding--reduced);
410
+ padding-inline-start: var(--gxg-tab-button-horizontal-padding--reduced);
411
+ font-size: var(--gxg-tab-button-font-size--reduced);
412
+ height: var(--gxg-tab-button-height--reduced);
413
+ }
414
+ :host .tab-button--stacked-style {
415
+ justify-content: flex-start;
416
+ }
417
+ :host .tab-button--stacked-style.tab-button--text-icon {
418
+ padding-inline-start: var(--gxg-tab-button-horizontal-padding--stacked);
419
+ }
407
420
  :host .tab-button__text {
408
421
  display: inline-block;
409
422
  }
410
423
 
424
+ :host(.stacked) {
425
+ width: 100%;
426
+ }
427
+
411
428
  :host([slot=tab-menu]) .tab-button {
412
429
  padding-left: 0;
413
430
  padding-right: 0;
@@ -344,26 +344,77 @@ FORM ELEMENTS
344
344
  overflow-y: auto;
345
345
  }
346
346
 
347
- :host([position=left]) .tab-bar-container {
348
- transform: rotate(-90deg) translate(-100%, 0);
349
- transform-origin: left top;
350
- position: absolute;
351
- z-index: 10;
347
+ :host([position=left-rotated]) .main-container,
348
+ :host([position=right-rotated]) .main-container {
349
+ flex-direction: row;
352
350
  }
353
- :host([position=left]) .tabs-container {
351
+ :host([position=left-rotated]) .tab-bar-container,
352
+ :host([position=right-rotated]) .tab-bar-container {
354
353
  height: 100%;
355
- width: calc(100% - 32px);
356
- margin-left: 32px;
354
+ overflow: auto;
355
+ width: 40px;
356
+ position: relative;
357
+ /* Track */
358
+ /* Handle */
359
+ /* Handle on hover */
357
360
  }
358
-
359
- :host([position=right]) .tab-bar-container {
361
+ :host([position=left-rotated]) .tab-bar-container::-webkit-scrollbar,
362
+ :host([position=right-rotated]) .tab-bar-container::-webkit-scrollbar {
363
+ width: var(--gxg-scrollbar-width);
364
+ height: var(--gxg-scrollbar-width);
365
+ }
366
+ :host([position=left-rotated]) .tab-bar-container::-webkit-scrollbar-track,
367
+ :host([position=right-rotated]) .tab-bar-container::-webkit-scrollbar-track {
368
+ background-color: var(--gxg-scrollbar-track-background);
369
+ border-radius: var(--gxg-scrollbar-track-border-radius);
370
+ }
371
+ :host([position=left-rotated]) .tab-bar-container::-webkit-scrollbar-thumb,
372
+ :host([position=right-rotated]) .tab-bar-container::-webkit-scrollbar-thumb {
373
+ background-color: var(--gxg-scrollbar-track-thumb-background);
374
+ border-radius: var(--gxg-scrollbar-track-thumb-radius);
375
+ }
376
+ :host([position=left-rotated]) .tab-bar-container::-webkit-scrollbar-thumb:hover,
377
+ :host([position=right-rotated]) .tab-bar-container::-webkit-scrollbar-thumb:hover {
378
+ background-color: var(--gxg-scrollbar-track-thumb-hover-background);
379
+ }
380
+ :host([position=left-rotated]) .tab-bar-container::-webkit-scrollbar-corner,
381
+ :host([position=right-rotated]) .tab-bar-container::-webkit-scrollbar-corner {
382
+ background: rgba(0, 0, 0, 0);
383
+ }
384
+ :host([position=left-rotated]) ::slotted(gxg-tab-bar),
385
+ :host([position=right-rotated]) ::slotted(gxg-tab-bar) {
360
386
  transform: rotate(-90deg) translate(-100%, 0);
361
387
  transform-origin: left top;
362
388
  position: absolute;
363
389
  z-index: 10;
364
- left: calc(100% - 32px);
365
390
  }
366
- :host([position=right]) .tabs-container {
367
- height: 100%;
391
+ :host([position=left-rotated]) ::slotted(gxg-tab),
392
+ :host([position=right-rotated]) ::slotted(gxg-tab) {
393
+ border-left-width: var(--gxg-tabs-border-width);
394
+ border-left-style: solid;
395
+ border-left-color: var(--gxg-tabs-border-color);
396
+ }
397
+ :host([position=left-rotated]) .tabs-container,
398
+ :host([position=right-rotated]) .tabs-container {
368
399
  width: calc(100% - 32px);
400
+ }
401
+ :host([position=left-rotated]) .main-container {
402
+ flex-direction: row;
403
+ }
404
+
405
+ :host([position=right-rotated]) .main-container {
406
+ flex-direction: row-reverse;
407
+ }
408
+
409
+ :host([position=left-stacked]) .main-container,
410
+ :host([position=right-stacked]) .main-container {
411
+ flex-direction: row;
412
+ }
413
+
414
+ :host([position=left-stacked]) .main-container {
415
+ flex-direction: row;
416
+ }
417
+
418
+ :host([position=right-stacked]) .main-container {
419
+ flex-direction: row-reverse;
369
420
  }
@@ -13,57 +13,118 @@
13
13
  }
14
14
 
15
15
  .top-state-bar {
16
+ position: relative;
17
+ border-radius: var(--mer-border__width--lg);
18
+ list-style: var(--mer-font__size--xxs);
19
+ display: flex;
20
+ opacity: 0;
21
+ transition: 150ms opacity;
16
22
  /*states*/
17
- /*with action*/
23
+ }
24
+ .top-state-bar:before {
25
+ content: "";
26
+ width: 100%;
27
+ height: 100%;
28
+ position: absolute;
29
+ background-color: var(--mer-color__elevation--04);
30
+ z-index: -1;
31
+ }
32
+ .top-state-bar:after {
33
+ content: "";
34
+ left: var(--mer-border__width--sm);
35
+ top: var(--mer-border__width--sm);
36
+ width: calc(100% - var(--mer-border__width--sm) * 2);
37
+ height: calc(100% - var(--mer-border__width--sm) * 2);
38
+ position: absolute;
39
+ background-color: var(--mer-color__surface);
40
+ z-index: 0;
41
+ border-radius: var(--mer-border__width--lg);
42
+ }
43
+ .top-state-bar > * {
44
+ position: relative;
45
+ z-index: 1;
18
46
  }
19
47
  .top-state-bar__wrapper {
20
- padding: 0 var(--mer-spacing--md);
48
+ flex: 1;
21
49
  display: flex;
22
- justify-content: center;
23
- align-items: center;
24
- height: var(--mer-spacing--xxl);
50
+ flex-direction: column;
51
+ gap: var(--mer-spacing--xs);
52
+ padding: var(--mer-spacing--sm) var(--mer-spacing--sm);
25
53
  }
26
54
  .top-state-bar__caption {
27
- opacity: 0;
28
- transition: 150ms opacity;
29
55
  color: var(--mer-text__on-message);
30
56
  font-family: var(--ds-base-font-family-primary);
31
- font-size: var(--mer-font__size--sm);
32
- font-weight: var(--mer-font__weight--semi-bold);
57
+ font-size: var(--mer-font__size--xxs);
58
+ line-height: var(--mer-font__size--xxs);
59
+ font-weight: var(--mer-font__weight--regular);
60
+ display: flex;
61
+ align-items: baseline;
62
+ font-style: italic;
33
63
  }
34
- .top-state-bar__caption--visible {
35
- opacity: 1;
64
+ .top-state-bar__progress-wrapper {
65
+ height: var(--mer-spacing--xxs);
66
+ background-color: var(--mer-color__elevation--04);
36
67
  }
37
- .top-state-bar__close {
38
- opacity: 0;
39
- transition: 200ms opacity;
68
+ .top-state-bar__close-wrapper {
40
69
  cursor: pointer;
70
+ border-inline-start: 1px solid var(--mer-color__elevation--04);
71
+ display: flex;
72
+ align-items: center;
73
+ transition: 200ms background-color;
41
74
  }
42
- .top-state-bar__close:hover {
75
+ .top-state-bar__close-wrapper:hover .top-state-bar__close {
43
76
  opacity: 0.75;
44
77
  }
45
- .top-state-bar__close--visible {
46
- opacity: 1;
78
+ .top-state-bar__close-wrapper:active .top-state-bar__close {
79
+ opacity: 0.5;
47
80
  }
48
- .top-state-bar--accent .top-state-bar__wrapper {
81
+ .top-state-bar--accent .progress-bar {
49
82
  background-color: var(--mer-accent__primary);
50
- color: var(--mer-text__on-primary);
51
83
  }
52
- .top-state-bar--success .top-state-bar__wrapper {
84
+ .top-state-bar--accent .top-state-bar__caption {
85
+ color: var(--mer-accent__primary);
86
+ }
87
+ .top-state-bar--success .progress-bar {
53
88
  background-color: var(--mer-color__message-green--100);
54
89
  }
55
- .top-state-bar--warning .top-state-bar__wrapper {
90
+ .top-state-bar--success .top-state-bar__caption {
91
+ color: var(--mer-color__message-green--100);
92
+ }
93
+ .top-state-bar--warning .progress-bar {
56
94
  background-color: var(--mer-color__message-yellow--100);
57
95
  }
58
- .top-state-bar--error .top-state-bar__wrapper {
96
+ .top-state-bar--warning .top-state-bar__caption {
97
+ color: var(--mer-color__message-yellow--100);
98
+ }
99
+ .top-state-bar--error .progress-bar {
59
100
  background-color: var(--mer-color__message-red--100);
60
101
  }
61
- .top-state-bar--in-progress .top-state-bar__wrapper {
102
+ .top-state-bar--error .top-state-bar__caption {
103
+ color: var(--mer-color__message-red--100);
104
+ }
105
+ .top-state-bar--in-progress:before {
106
+ height: 0;
107
+ width: 120%;
108
+ padding-top: 60%;
109
+ padding-bottom: 60%;
110
+ background: linear-gradient(90deg, #5ba7ff 0%, #3fa89b 100%);
111
+ top: 50%;
112
+ left: 50%;
113
+ transform: translate(-50%, -50%);
114
+ -webkit-animation: inProgressBackgroundColor 1s linear infinite;
115
+ animation: inProgressBackgroundColor 1s linear infinite;
116
+ }
117
+ .top-state-bar--in-progress .top-state-bar__close-wrapper {
118
+ border-inline-start-color: #3fa89b;
119
+ -webkit-animation: inProgressBorderColor 1s linear infinite;
120
+ animation: inProgressBorderColor 1s linear infinite;
121
+ }
122
+ .top-state-bar--in-progress .progress-bar {
62
123
  position: relative;
63
124
  overflow: hidden;
64
125
  z-index: 1;
65
126
  }
66
- .top-state-bar--in-progress .top-state-bar__wrapper:after {
127
+ .top-state-bar--in-progress .progress-bar:after {
67
128
  content: "";
68
129
  position: absolute;
69
130
  z-index: 0;
@@ -71,27 +132,35 @@
71
132
  height: 100%;
72
133
  left: 0;
73
134
  background: linear-gradient(90deg, #93f5eb 0%, #1aa3ff 33%, #93f5eb 66%, #1aa3ff 100%);
74
- animation-name: inProgress;
135
+ animation-name: inProgressBar;
75
136
  animation-duration: 2s;
76
137
  animation-iteration-count: infinite;
77
138
  }
78
139
  .top-state-bar--in-progress .top-state-bar__caption {
79
- display: flex;
80
- align-items: center;
81
- flex-direction: column;
82
- position: relative;
83
- z-index: 2;
140
+ color: #3fa89b;
84
141
  }
85
- .top-state-bar--with-action .top-state-bar__caption {
86
- flex: 1;
87
- text-align: center;
88
- }
89
- .top-state-bar--with-action .top-state-bar__wrapper {
90
- padding-inline-end: var(--mer-spacing--xxs);
142
+ .top-state-bar--visible {
143
+ opacity: 1;
91
144
  }
92
145
 
93
146
  /*in progress animation*/
94
- @-webkit-keyframes inProgress {
147
+ @-webkit-keyframes inProgressBorderColor {
148
+ 0% {
149
+ border-inline-start-color: #3fa89b;
150
+ }
151
+ 100% {
152
+ border-inline-start-color: #5ba7ff;
153
+ }
154
+ }
155
+ @-webkit-keyframes inProgressBackgroundColor {
156
+ 0% {
157
+ transform: translate(-50%, -50%) rotate(0);
158
+ }
159
+ 100% {
160
+ transform: translate(-50%, -50%) rotate(1turn);
161
+ }
162
+ }
163
+ @-webkit-keyframes inProgressBar {
95
164
  0% {
96
165
  left: 0%;
97
166
  }
@@ -99,7 +168,7 @@
99
168
  left: -200%;
100
169
  }
101
170
  }
102
- @-moz-keyframes inProgress {
171
+ @-moz-keyframes inProgressBar {
103
172
  0% {
104
173
  left: 0%;
105
174
  }
@@ -107,7 +176,7 @@
107
176
  left: 200%;
108
177
  }
109
178
  }
110
- @keyframes inProgress {
179
+ @keyframes inProgressBar {
111
180
  0% {
112
181
  left: 0%;
113
182
  }
@@ -116,11 +185,19 @@
116
185
  }
117
186
  }
118
187
  .progress-bar {
188
+ display: block;
119
189
  transition: all 200ms;
120
190
  width: var(--top-bar-progress);
121
- background-color: var(--mer-accent__primary);
122
- height: var(--mer-spacing--xxs);
191
+ border-radius: calc(var(--mer-spacing--xxs) / 2);
192
+ height: 100%;
123
193
  }
124
- .progress-bar--hidden {
125
- height: 0;
194
+
195
+ :host([no-border]) .top-state-bar {
196
+ position: relative;
197
+ }
198
+ :host([no-border]) .top-state-bar:before, :host([no-border]) .top-state-bar:after {
199
+ display: none;
200
+ }
201
+ :host([no-border]) .top-state-bar__close-wrapper {
202
+ border-inline-start: none;
126
203
  }
@@ -0,0 +1,34 @@
1
+ export declare class GxIdeEmptyState {
2
+ private transitionSpeed;
3
+ el: HTMLGxIdeEmptyStateElement;
4
+ private primaryButtonEl;
5
+ private secondaryButtonEl;
6
+ /**
7
+ * The state icon
8
+ */
9
+ readonly stateIcon?: string;
10
+ /**
11
+ * The state title
12
+ */
13
+ readonly stateTitle: string;
14
+ /**
15
+ * The state description
16
+ */
17
+ readonly stateDescription?: string;
18
+ /**
19
+ * The button primary label
20
+ */
21
+ readonly primaryButtonLabel?: string;
22
+ /**
23
+ * The button secondary label
24
+ */
25
+ readonly secondaryButtonLabel?: string;
26
+ /**
27
+ * If true, it will display the content
28
+ */
29
+ display: boolean;
30
+ watchDisplayHandler(display: boolean): void;
31
+ componentWillLoad(): void;
32
+ componentDidLoad(): void;
33
+ render(): any;
34
+ }
@@ -0,0 +1,109 @@
1
+ import { EventEmitter } from "../../stencil-public-runtime";
2
+ import { EntityData } from "../../common/types";
3
+ export declare class GxIdeDataSelector {
4
+ /**
5
+ * The component hard-coded strings translations.
6
+ */
7
+ private _componentLocale;
8
+ private renderedFirstTime;
9
+ private shortcutsSrc;
10
+ el: HTMLGxIdeDataSelectorElement;
11
+ private filterPatternEl;
12
+ private filterObjectEl;
13
+ private chGridEl;
14
+ private gxgShortcutsEl;
15
+ private loaderEl;
16
+ /**
17
+ * The objects rendered in the table
18
+ */
19
+ objects: ItemData[];
20
+ /**
21
+ * The selected objects in the table of objects
22
+ */
23
+ selectedObjectsIds: string[];
24
+ /**
25
+ * If true it displays the component title on the header
26
+ */
27
+ readonly displayTitle = false;
28
+ /**
29
+ * If true, it will display a loader when needed.
30
+ */
31
+ readonly loader = false;
32
+ /**
33
+ * Single if multiple object selection is not allowed. Default is multiple
34
+ */
35
+ readonly selectionType: "single" | "multiple";
36
+ /**
37
+ * Callback invoked when the action is executed in the Object filter. It returns the information of the selected object (id and name) or 'undefined' if it was canceled.
38
+ */
39
+ readonly selectObjectCallback: SelectObjectCallback;
40
+ /**
41
+ * Callback invoked when user press edit button. Receives the first selected element id as parameter
42
+ */
43
+ readonly editCallback: EditCallback;
44
+ /**
45
+ * Callback invoked when the user wishes to cancel the selection of objects.
46
+ */
47
+ readonly cancelCallback: CancelCallback;
48
+ /**
49
+ * Callback invoked when the component needs to reload the list of attributes.
50
+ */
51
+ readonly loadItemsCallback: LoadItemsCallback;
52
+ /**
53
+ * Callback invoked when the user presses the 'New' button.
54
+ */
55
+ readonly newVariableCallback: NewVariableCallback;
56
+ /**
57
+ * Callback invoked when the user presses the 'OK' button
58
+ */
59
+ readonly confirmCallback: ConfirmCallback;
60
+ /**
61
+ * This event is emitted once just after the component is fully loaded and the first render() occurs
62
+ */
63
+ componentDidRenderFirstTime: EventEmitter<boolean>;
64
+ /**
65
+ * This event is emitted once just after the component is fully loaded and the first render() occurs.
66
+ */
67
+ componentDidLoadEvent: EventEmitter<boolean>;
68
+ componentWillLoad(): Promise<void>;
69
+ componentDidLoad(): void;
70
+ componentDidRender(): void;
71
+ /**
72
+ * Suspends or reactivates the shortcuts
73
+ */
74
+ suspendShortcuts(suspendShortcuts: boolean): Promise<void>;
75
+ /**
76
+ * Validate necessary data input
77
+ */
78
+ validate(): Promise<boolean>;
79
+ private loaderCancelCallbackHandler;
80
+ private getObjects;
81
+ private editCallbackHandler;
82
+ private confirmCallbackHandler;
83
+ private cancelCallbackHandler;
84
+ private deselectAll;
85
+ private newVariableCallbackHandler;
86
+ private listenChanges;
87
+ private chGridKeyDownHandler;
88
+ private hostKeyPressHandler;
89
+ private renderFilter;
90
+ private renderObjects;
91
+ render(): void;
92
+ }
93
+ export type NewVariableCallback = () => Promise<void>;
94
+ export type CancelCallback = () => Promise<void>;
95
+ export type SelectObjectCallback = () => Promise<EntityData | undefined>;
96
+ export type EditCallback = (id: string) => Promise<boolean>;
97
+ export type ConfirmCallback = (ids: string[]) => Promise<void>;
98
+ export type LoadItemsCallback = (filters: FiltersData) => Promise<ItemData[]>;
99
+ export type FiltersData = {
100
+ pattern?: string;
101
+ object?: string;
102
+ };
103
+ export type ItemData = {
104
+ type: "variable" | "attribute";
105
+ id: string;
106
+ name: string;
107
+ dataType: string;
108
+ description: string;
109
+ };
@@ -30,7 +30,6 @@ export declare class GxIdeImportFromDesign {
30
30
  private tokensFactoryRenderEl;
31
31
  private stylesFactoryRenderEl;
32
32
  private treeDataEl;
33
- private tabsEl;
34
33
  /**
35
34
  * The design data loaded from file
36
35
  */
@@ -75,8 +74,7 @@ export declare class GxIdeImportFromDesign {
75
74
  /**
76
75
  * Used to trigger a re-render after an item has been selected on renderDesignTree, in order to set the first tab as the active tab (setFirstActiveTab()), since calling this method inside objectsTreeSelectedItemsChangedHandler does not always work without a setTimeOut.
77
76
  */
78
- counter: number;
79
- watchCounterHandler(): void;
77
+ updateTabsActiveTab: boolean;
80
78
  /**
81
79
  * If true, images will be fitted in the container
82
80
  */