@genexus/mercury 0.4.5 → 0.4.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/mercury.scss CHANGED
@@ -560,6 +560,74 @@ Dialog Footer
560
560
  }
561
561
  }
562
562
 
563
+ /*----------------------
564
+ Body Spacing
565
+ ----------------------*/
566
+
567
+ // This custom properties define the block and inline spacing of containers.
568
+ // i.e.: dialog, layout, etc..
569
+
570
+ %spacing-body {
571
+ padding-block: var(--spacing-body-block-start) var(--spacing-body-block-end);
572
+ padding-inline: var(--spacing-body-inline-start)
573
+ var(--spacing-body-inline-end);
574
+ }
575
+
576
+ %spacing-body-block {
577
+ padding-block: var(--spacing-body-block-start) var(--spacing-body-block-end);
578
+ }
579
+ %spacing-body-block-start {
580
+ padding-block-start: var(--spacing-body-block-start);
581
+ }
582
+ %spacing-body-block-end {
583
+ padding-block-end: var(--spacing-body-block-end);
584
+ }
585
+
586
+ %spacing-body-inline {
587
+ padding-inline: var(--spacing-body-inline-start)
588
+ var(--spacing-body-inline-end);
589
+ }
590
+ %spacing-body-inline-start {
591
+ padding-inline-start: var(--spacing-body-inline-start);
592
+ }
593
+ %spacing-body-inline-end {
594
+ padding-inline-end: var(--spacing-body-inline-end);
595
+ }
596
+
597
+ @mixin spacing-body(
598
+ $body-selector: ".spacing-body",
599
+ $body-block-selector: ".spacing-body-block",
600
+ $body-block-start-selector: ".spacing-body-block-start",
601
+ $body-block-end-selector: ".spacing-body-block-end",
602
+ $body-inline-selector: ".spacing-body-inline",
603
+ $body-inline-start-selector: ".spacing-body-inline-start",
604
+ $body-inline-end-selector: ".spacing-body-inline-end"
605
+ ) {
606
+ #{$body-selector} {
607
+ @extend %spacing-body;
608
+ }
609
+ // block
610
+ #{$body-block-selector} {
611
+ @extend %spacing-body-block;
612
+ }
613
+ #{$body-block-start-selector} {
614
+ @extend %spacing-body-block-start;
615
+ }
616
+ #{$body-block-end-selector} {
617
+ @extend %spacing-body-block-end;
618
+ }
619
+ // inline
620
+ #{$body-inline-selector} {
621
+ @extend %spacing-body-inline;
622
+ }
623
+ #{$body-inline-start-selector} {
624
+ @extend %spacing-body-inline-start;
625
+ }
626
+ #{$body-inline-end-selector} {
627
+ @extend %spacing-body-inline-end;
628
+ }
629
+ }
630
+
563
631
 
564
632
  // Resets
565
633
  @mixin typography-reset() {
@@ -679,12 +747,13 @@ Dialog Footer
679
747
  --mer-color__neutral-gray--700: #c0ccd9;
680
748
  --mer-color__neutral-gray--800: #d2ddeb;
681
749
  --mer-color__neutral-gray--900: #e1ecf9;
682
- // 1000 to 1400 do not exist anymore in figma (check with designer)
683
- --mer-color__neutral-gray--1000: #;
684
- --mer-color__neutral-gray--1100: #;
685
- --mer-color__neutral-gray--1200: #;
686
- --mer-color__neutral-gray--1300: #;
687
- --mer-color__neutral-gray--1400: #;
750
+ // 1000 to 1400 do not exist anymore in figma but can not be removed yet
751
+ // because gemini is dependent on this tokens (check with designer)
752
+ --mer-color__neutral-gray--1000: #f8f8f8;
753
+ --mer-color__neutral-gray--1100: #f1f1f1;
754
+ --mer-color__neutral-gray--1200: #e4e4e4;
755
+ --mer-color__neutral-gray--1300: #dedede;
756
+ --mer-color__neutral-gray--1400: #ffffff;
688
757
 
689
758
  // tinted
690
759
  --mer-color__tinted-yellow--5: #ffc96b0d;
@@ -739,33 +808,44 @@ Dialog Footer
739
808
  --mer-color__neutral-gray--700: #242d3c;
740
809
  --mer-color__neutral-gray--800: #181f2a;
741
810
  --mer-color__neutral-gray--900: #11151c;
742
- // 1000 to 1400 do not exist anymore in figma (check with designer)
743
- --mer-color__neutral-gray--1000: #;
744
- --mer-color__neutral-gray--1100: #;
745
- --mer-color__neutral-gray--1200: #;
746
- --mer-color__neutral-gray--1300: #;
747
- --mer-color__neutral-gray--1400: #;
748
-
749
- // tinted
750
- --mer-color__tinted-yellow--5: #ffc96b0d;
751
- --mer-color__tinted-yellow--60: #ffc96b99;
752
- --mer-color__tinted-red--5: #fb7c840d;
753
- --mer-color__tinted-red--60: #fb7c8499;
754
- --mer-color__tinted-green--5: #3fa89b0d;
755
- --mer-color__tinted-green--60: #3fa89b99;
756
- --mer-color__tinted-blue--5: #5ba7ff0d;
757
- --mer-color__tinted-blue--8: #5ba7ff14;
758
- --mer-color__tinted-blue--10: #5ba7ff1a;
759
- --mer-color__tinted-blue--20: #5ba7ff33;
760
- --mer-color__tinted-blue--30: #5ba7ff4d;
761
- --mer-color__tinted-blue--50: #5ba7ff80;
762
- // tinted no opacity // WA
763
- // --mer-color__tinted-blue--5: #1d2838;
764
- // --mer-color__tinted-blue--8: #1f2c3f;
765
- // --mer-color__tinted-blue--10: #1f2e43;
766
- // --mer-color__tinted-blue--20: #293d5c;
767
- // --mer-color__tinted-blue--30: #2e4e72;
768
- // --mer-color__tinted-blue--50: #3c689c;
811
+ // 1000 to 1400 do not exist anymore in figma but can not be removed yet
812
+ // because gemini is dependent on this tokens (check with designer)
813
+ --mer-color__neutral-gray--1000: #1f2225;
814
+ --mer-color__neutral-gray--1100: #24272a;
815
+ --mer-color__neutral-gray--1200: #2d3032;
816
+ --mer-color__neutral-gray--1300: #3b3e40;
817
+ --mer-color__neutral-gray--1400: #2d3134;
818
+
819
+ // tinted (with opacity) this values had to be updated to the no opacity
820
+ // version (see below), because colors with opacity caused some issues when
821
+ // overlapping. Until this is not a definitive edition
822
+
823
+ // --mer-color__tinted-yellow--5: #ffc96b0d;
824
+ // --mer-color__tinted-yellow--60: #ffc96b99;
825
+ // --mer-color__tinted-red--5: #fb7c840d;
826
+ // --mer-color__tinted-red--60: #fb7c8499;
827
+ // --mer-color__tinted-green--5: #3fa89b0d;
828
+ // --mer-color__tinted-green--60: #3fa89b99;
829
+ // --mer-color__tinted-blue--5: #5ba7ff0d;
830
+ // --mer-color__tinted-blue--8: #5ba7ff14;
831
+ // --mer-color__tinted-blue--10: #5ba7ff1a;
832
+ // --mer-color__tinted-blue--20: #5ba7ff33;
833
+ // --mer-color__tinted-blue--30: #5ba7ff4d;
834
+ // --mer-color__tinted-blue--50: #5ba7ff80;
835
+
836
+ // tinted (no opacity) // tints with opacity were giving some issues
837
+ --mer-color__tinted-yellow--5: #282a2d;
838
+ --mer-color__tinted-yellow--60: #ad8a53;
839
+ --mer-color__tinted-red--5: #29252f;
840
+ --mer-color__tinted-red--60: #aa5962;
841
+ --mer-color__tinted-green--5: #1c2830;
842
+ --mer-color__tinted-green--60: #317571;
843
+ --mer-color__tinted-blue--5: #1d2838;
844
+ --mer-color__tinted-blue--8: #1f2c3f;
845
+ --mer-color__tinted-blue--10: #1f2e43;
846
+ --mer-color__tinted-blue--20: #293d5c;
847
+ --mer-color__tinted-blue--30: #2e4e72;
848
+ --mer-color__tinted-blue--50: #3c689c;
769
849
 
770
850
  // message
771
851
  --mer-color__message-green--100: #3fa89b;
@@ -1694,6 +1774,74 @@ Dialog Footer
1694
1774
  }
1695
1775
  }
1696
1776
 
1777
+ /*----------------------
1778
+ Body Spacing
1779
+ ----------------------*/
1780
+
1781
+ // This custom properties define the block and inline spacing of containers.
1782
+ // i.e.: dialog, layout, etc..
1783
+
1784
+ %spacing-body {
1785
+ padding-block: var(--spacing-body-block-start) var(--spacing-body-block-end);
1786
+ padding-inline: var(--spacing-body-inline-start)
1787
+ var(--spacing-body-inline-end);
1788
+ }
1789
+
1790
+ %spacing-body-block {
1791
+ padding-block: var(--spacing-body-block-start) var(--spacing-body-block-end);
1792
+ }
1793
+ %spacing-body-block-start {
1794
+ padding-block-start: var(--spacing-body-block-start);
1795
+ }
1796
+ %spacing-body-block-end {
1797
+ padding-block-end: var(--spacing-body-block-end);
1798
+ }
1799
+
1800
+ %spacing-body-inline {
1801
+ padding-inline: var(--spacing-body-inline-start)
1802
+ var(--spacing-body-inline-end);
1803
+ }
1804
+ %spacing-body-inline-start {
1805
+ padding-inline-start: var(--spacing-body-inline-start);
1806
+ }
1807
+ %spacing-body-inline-end {
1808
+ padding-inline-end: var(--spacing-body-inline-end);
1809
+ }
1810
+
1811
+ @mixin spacing-body(
1812
+ $body-selector: ".spacing-body",
1813
+ $body-block-selector: ".spacing-body-block",
1814
+ $body-block-start-selector: ".spacing-body-block-start",
1815
+ $body-block-end-selector: ".spacing-body-block-end",
1816
+ $body-inline-selector: ".spacing-body-inline",
1817
+ $body-inline-start-selector: ".spacing-body-inline-start",
1818
+ $body-inline-end-selector: ".spacing-body-inline-end"
1819
+ ) {
1820
+ #{$body-selector} {
1821
+ @extend %spacing-body;
1822
+ }
1823
+ // block
1824
+ #{$body-block-selector} {
1825
+ @extend %spacing-body-block;
1826
+ }
1827
+ #{$body-block-start-selector} {
1828
+ @extend %spacing-body-block-start;
1829
+ }
1830
+ #{$body-block-end-selector} {
1831
+ @extend %spacing-body-block-end;
1832
+ }
1833
+ // inline
1834
+ #{$body-inline-selector} {
1835
+ @extend %spacing-body-inline;
1836
+ }
1837
+ #{$body-inline-start-selector} {
1838
+ @extend %spacing-body-inline-start;
1839
+ }
1840
+ #{$body-inline-end-selector} {
1841
+ @extend %spacing-body-inline-end;
1842
+ }
1843
+ }
1844
+
1697
1845
 
1698
1846
  /// @group Label
1699
1847
  /// @param {String} $label-selector [".label"] -
@@ -1968,6 +2116,10 @@ Dialog Footer
1968
2116
  display: grid;
1969
2117
 
1970
2118
  &-group {
2119
+ --spacing-body-block-start: var(--mer-spacing--lg);
2120
+ --spacing-body-block-end: var(--mer-spacing--lg);
2121
+ --spacing-body-inline-start: var(--mer-spacing--md);
2122
+ --spacing-body-inline-end: var(--mer-spacing--md);
1971
2123
  display: grid;
1972
2124
  row-gap: var(--field-group__row-gap);
1973
2125
  column-gap: var(--field-group__column-gap);
@@ -2160,12 +2312,12 @@ Dialog Footer
2160
2312
  }
2161
2313
 
2162
2314
  %layout {
2163
- --layout__padding-block: var(--mer-spacing--md);
2164
- --layout__padding-inline: var(--mer-spacing--lg);
2315
+ --spacing-body-block-start: var(--mer-spacing--md);
2316
+ --spacing-body-block-end: var(--mer-spacing--md);
2317
+ --spacing-body-inline-start: var(--mer-spacing--lg);
2318
+ --spacing-body-inline-end: var(--mer-spacing--lg);
2165
2319
 
2166
2320
  display: grid;
2167
- padding-block: var(--layout__padding-block);
2168
- padding-inline: var(--layout__padding-inline);
2169
2321
  gap: var(--mer-spacing--md);
2170
2322
  &__panel {
2171
2323
  display: grid;
@@ -2203,19 +2355,6 @@ Dialog Footer
2203
2355
  grid-template-rows: 1fr;
2204
2356
  grid-template-columns: 2fr 1fr;
2205
2357
  }
2206
-
2207
- &--no-padding {
2208
- --layout__padding-block: 0;
2209
- --layout__padding-inline: 0;
2210
- }
2211
-
2212
- &--no-block-padding {
2213
- --layout__padding-block: 0;
2214
- }
2215
-
2216
- &--no-inline-padding {
2217
- --layout__padding-inline: 0;
2218
- }
2219
2358
  }
2220
2359
 
2221
2360
  /// @group Layout
@@ -2227,9 +2366,6 @@ Dialog Footer
2227
2366
  /// @param {String} $layout--cols-4-selector [".layout--cols-4"] -
2228
2367
  /// @param {String} $layout--cols-1-2-selector [".layout--cols-1-2"] -
2229
2368
  /// @param {String} $layout--cols-2-1-selector [".layout--cols-2-1"] -
2230
- /// @param {String} $layout--no-padding-selector [".layout--no-padding"] -
2231
- /// @param {String} $layout--no-block-padding-selector [".layout--no-block-padding"] -
2232
- /// @param {String} $layout--no-inline-padding-selector [".layout--no-inline-padding"] -
2233
2369
  @mixin layout(
2234
2370
  $layout-selector: ".layout",
2235
2371
  $panel-selector: ".layout__panel",
@@ -2238,10 +2374,7 @@ Dialog Footer
2238
2374
  $layout--cols-3-selector: ".layout--cols-3",
2239
2375
  $layout--cols-4-selector: ".layout--cols-4",
2240
2376
  $layout--cols-1-2-selector: ".layout--cols-1-2",
2241
- $layout--cols-2-1-selector: ".layout--cols-2-1",
2242
- $layout--no-padding-selector: ".layout--no-padding",
2243
- $layout--no-block-padding-selector: ".layout--no-block-padding",
2244
- $layout--no-inline-padding-selector: ".layout--no-inline-padding"
2377
+ $layout--cols-2-1-selector: ".layout--cols-2-1"
2245
2378
  ) {
2246
2379
  #{$layout-selector} {
2247
2380
  @extend %layout;
@@ -2274,18 +2407,6 @@ Dialog Footer
2274
2407
  #{$layout--cols-2-1-selector} {
2275
2408
  @extend %layout--cols-2-1;
2276
2409
  }
2277
-
2278
- #{$layout--no-padding-selector} {
2279
- @extend %layout--no-padding;
2280
- }
2281
-
2282
- #{$layout--no-block-padding-selector} {
2283
- @extend %layout--no-block-padding;
2284
- }
2285
-
2286
- #{$layout--no-inline-padding-selector} {
2287
- @extend %layout--no-inline-padding;
2288
- }
2289
2410
  }
2290
2411
 
2291
2412
  @mixin heading-tokens() {
@@ -3406,6 +3527,74 @@ Dialog Footer
3406
3527
  }
3407
3528
  }
3408
3529
 
3530
+ /*----------------------
3531
+ Body Spacing
3532
+ ----------------------*/
3533
+
3534
+ // This custom properties define the block and inline spacing of containers.
3535
+ // i.e.: dialog, layout, etc..
3536
+
3537
+ %spacing-body {
3538
+ padding-block: var(--spacing-body-block-start) var(--spacing-body-block-end);
3539
+ padding-inline: var(--spacing-body-inline-start)
3540
+ var(--spacing-body-inline-end);
3541
+ }
3542
+
3543
+ %spacing-body-block {
3544
+ padding-block: var(--spacing-body-block-start) var(--spacing-body-block-end);
3545
+ }
3546
+ %spacing-body-block-start {
3547
+ padding-block-start: var(--spacing-body-block-start);
3548
+ }
3549
+ %spacing-body-block-end {
3550
+ padding-block-end: var(--spacing-body-block-end);
3551
+ }
3552
+
3553
+ %spacing-body-inline {
3554
+ padding-inline: var(--spacing-body-inline-start)
3555
+ var(--spacing-body-inline-end);
3556
+ }
3557
+ %spacing-body-inline-start {
3558
+ padding-inline-start: var(--spacing-body-inline-start);
3559
+ }
3560
+ %spacing-body-inline-end {
3561
+ padding-inline-end: var(--spacing-body-inline-end);
3562
+ }
3563
+
3564
+ @mixin spacing-body(
3565
+ $body-selector: ".spacing-body",
3566
+ $body-block-selector: ".spacing-body-block",
3567
+ $body-block-start-selector: ".spacing-body-block-start",
3568
+ $body-block-end-selector: ".spacing-body-block-end",
3569
+ $body-inline-selector: ".spacing-body-inline",
3570
+ $body-inline-start-selector: ".spacing-body-inline-start",
3571
+ $body-inline-end-selector: ".spacing-body-inline-end"
3572
+ ) {
3573
+ #{$body-selector} {
3574
+ @extend %spacing-body;
3575
+ }
3576
+ // block
3577
+ #{$body-block-selector} {
3578
+ @extend %spacing-body-block;
3579
+ }
3580
+ #{$body-block-start-selector} {
3581
+ @extend %spacing-body-block-start;
3582
+ }
3583
+ #{$body-block-end-selector} {
3584
+ @extend %spacing-body-block-end;
3585
+ }
3586
+ // inline
3587
+ #{$body-inline-selector} {
3588
+ @extend %spacing-body-inline;
3589
+ }
3590
+ #{$body-inline-start-selector} {
3591
+ @extend %spacing-body-inline-start;
3592
+ }
3593
+ #{$body-inline-end-selector} {
3594
+ @extend %spacing-body-inline-end;
3595
+ }
3596
+ }
3597
+
3409
3598
  :root {
3410
3599
  --ch-placeholder-color: var(--mer-text__neutral);
3411
3600
  }
@@ -3583,6 +3772,10 @@ Dialog Footer
3583
3772
  }
3584
3773
 
3585
3774
  %dialog {
3775
+ --spacing-body-block-start: var(--mer-spacing--lg);
3776
+ --spacing-body-block-end: var(--mer-spacing--lg);
3777
+ --spacing-body-inline-start: var(--mer-spacing--md);
3778
+ --spacing-body-inline-end: var(--mer-spacing--md);
3586
3779
  --ch-dialog-max-inline-size: 800px;
3587
3780
  background-color: var(--mer-color__elevation--01);
3588
3781
  box-shadow: var(--mer-box-shadow--01);
@@ -3613,8 +3806,6 @@ Dialog Footer
3613
3806
  }
3614
3807
 
3615
3808
  &__content {
3616
- padding-block: var(--mer-spacing--lg);
3617
- padding-inline: var(--mer-spacing--md);
3618
3809
  overflow: auto;
3619
3810
  }
3620
3811
 
@@ -5128,7 +5319,6 @@ Dialog Footer
5128
5319
  // - - - - - - - - - - - - - - - - - - - -
5129
5320
 
5130
5321
  --tree-view__min-inline-size: max-content;
5131
- --tree-view__padding: var(--mer-spacing--xs);
5132
5322
  --tree-view-item-custom__padding-inline-end: var(--mer-spacing--2xs);
5133
5323
 
5134
5324
  // - - - - - - - - - - - - - - - - - - - -
@@ -5171,12 +5361,7 @@ Dialog Footer
5171
5361
  @include tree-view-tokens();
5172
5362
  font-size: var(--tree-view__font-size);
5173
5363
  line-height: var(--mer-line-height--regular);
5174
- padding: var(--tree-view__padding);
5175
5364
  min-inline-size: var(--tree-view__min-inline-size);
5176
-
5177
- &--no-padding {
5178
- padding: 0;
5179
- }
5180
5365
  }
5181
5366
 
5182
5367
  // TODO: Improve this
@@ -5279,7 +5464,6 @@ Dialog Footer
5279
5464
  ///
5280
5465
  @mixin tree-view(
5281
5466
  $tree-view-selector: ".tree-view",
5282
- $tree-view--no-padding-selector: ".tree-view--no-padding",
5283
5467
 
5284
5468
  // Drag preview
5285
5469
  $drag-preview-selector: ".tree-view::part(drag-preview)",
@@ -5330,10 +5514,6 @@ Dialog Footer
5330
5514
  @include scrollbar-styles();
5331
5515
  }
5332
5516
 
5333
- #{$tree-view--no-padding-selector} {
5334
- @extend %tree-view--no-padding;
5335
- }
5336
-
5337
5517
  // - - - - - - - - - - - - - - - - - - - -
5338
5518
  // Drag preview
5339
5519
  // - - - - - - - - - - - - - - - - - - - -
@@ -5470,6 +5650,7 @@ Dialog Footer
5470
5650
  $form-controls-classes: true,
5471
5651
  $icon-classes: true,
5472
5652
  $layout-classes: true,
5653
+ $spacing-classes: true,
5473
5654
  $typography-classes: true,
5474
5655
 
5475
5656
  // Components
@@ -28079,6 +28260,11 @@ Dialog Footer
28079
28260
  @include control-footer();
28080
28261
  }
28081
28262
 
28263
+ // Spacing classes
28264
+ @if $spacing-classes {
28265
+ @include spacing-body();
28266
+ }
28267
+
28082
28268
  // Typography classes
28083
28269
  @if $typography-classes {
28084
28270
  @include typography-classes();
@@ -28187,6 +28373,7 @@ Dialog Footer
28187
28373
  $form-controls-classes: false,
28188
28374
  $icon-classes: false,
28189
28375
  $layout-classes: false,
28376
+ $spacing-classes: false,
28190
28377
  $typography-classes: false,
28191
28378
 
28192
28379
  // Components
@@ -28245,6 +28432,7 @@ Dialog Footer
28245
28432
  $form-controls-classes: $form-controls-classes,
28246
28433
  $icon-classes: $icon-classes,
28247
28434
  $layout-classes: $layout-classes,
28435
+ $spacing-classes: $spacing-classes,
28248
28436
  $typography-classes: $typography-classes,
28249
28437
 
28250
28438
  // Components
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@genexus/mercury",
3
- "version": "0.4.5",
3
+ "version": "0.4.6",
4
4
  "description": "Mercury is the design system designed for GeneXus IDE Web and GeneXus Next",
5
5
  "main": "dist/mercury.scss",
6
6
  "module": "dist/assets-manager.js",
@@ -12,7 +12,7 @@
12
12
  "scripts": {
13
13
  "build": "tsc && npm run icons-svg && npm run icons-sass && npm run build.scss && npm run copy-tasks",
14
14
  "build-no-svg": "tsc && npm run build.scss && npm run copy-tasks",
15
- "build.scss": "scss-bundle -e ./src/mercury.scss -o dist/mercury.scss && npm run build.bundles && npm run copy-all.css npm run showcase.scss",
15
+ "build.scss": "scss-bundle -e ./src/mercury.scss -o dist/mercury.scss && npm run build.bundles && npm run copy-all.css && npm run showcase.scss",
16
16
  "build.bundles": "fse copy --all --keepExisting --errorOnExist --dereference --preserveTimestamps --quiet src/bundles/scss dist/bundles/scss && sass --load-path=src --no-source-map --style compressed dist/bundles/scss:dist/bundles/css",
17
17
  "start": "vite --port 5200 --open showcase/button.html",
18
18
  "validate.ci": "npm run build-no-svg",