@trilogy-ds/styles 0.0.1-beta-4 → 0.0.1-beta.11

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 (86) hide show
  1. package/README.md +47 -0
  2. package/dist/default/trilogy-mangled.css +1 -1
  3. package/dist/default/trilogy-partials.css +1 -1
  4. package/dist/default/trilogy.css +1 -1
  5. package/framework/src/base/_color.scss +14 -36
  6. package/framework/src/base/_generic.scss +4 -1
  7. package/framework/src/base/_helpers.scss +10 -29
  8. package/framework/src/base/_loading.scss +7 -0
  9. package/framework/src/components/_accordion.scss +15 -36
  10. package/framework/src/components/_all.scss +0 -3
  11. package/framework/src/components/_breadcrumb.scss +39 -34
  12. package/framework/src/components/_card.scss +6 -5
  13. package/framework/src/components/_countdown.scss +49 -47
  14. package/framework/src/components/_disclaimer.scss +6 -5
  15. package/framework/src/components/_divider.scss +2 -2
  16. package/framework/src/components/_dropdown.scss +95 -101
  17. package/framework/src/components/_fab.scss +6 -21
  18. package/framework/src/components/_media.scss +2 -2
  19. package/framework/src/components/_modal.scss +172 -166
  20. package/framework/src/components/_otp.scss +9 -28
  21. package/framework/src/components/_pagination.scss +109 -131
  22. package/framework/src/components/_plus-symbol.scss +1 -1
  23. package/framework/src/components/_popover.scss +1 -4
  24. package/framework/src/components/_price.scss +118 -169
  25. package/framework/src/components/_product-tour.scss +1 -3
  26. package/framework/src/components/_segmented-control.scss +39 -51
  27. package/framework/src/components/_slider.scss +70 -70
  28. package/framework/src/components/_stepper.scss +16 -140
  29. package/framework/src/components/_tabs.scss +32 -55
  30. package/framework/src/components/_timeline.scss +49 -42
  31. package/framework/src/elements/_alert.scss +4 -5
  32. package/framework/src/elements/_all.scss +0 -2
  33. package/framework/src/elements/_badge.scss +54 -59
  34. package/framework/src/elements/_box.scss +5 -23
  35. package/framework/src/elements/_button.scss +29 -129
  36. package/framework/src/elements/_checkbox.scss +21 -27
  37. package/framework/src/elements/_chips.scss +76 -81
  38. package/framework/src/elements/_entry.scss +73 -89
  39. package/framework/src/elements/_form.scss +15 -15
  40. package/framework/src/elements/_input-gauge.scss +36 -32
  41. package/framework/src/elements/_link.scss +47 -62
  42. package/framework/src/elements/_list.scss +0 -36
  43. package/framework/src/elements/_notification.scss +2 -3
  44. package/framework/src/elements/_other.scss +1 -1
  45. package/framework/src/elements/_paragraph.scss +4 -26
  46. package/framework/src/elements/_progress.scss +9 -18
  47. package/framework/src/elements/_radio.scss +1 -1
  48. package/framework/src/elements/_select.scss +209 -245
  49. package/framework/src/elements/_sticker.scss +8 -9
  50. package/framework/src/elements/_switch.scss +85 -88
  51. package/framework/src/elements/_table.scss +11 -72
  52. package/framework/src/elements/_tag.scss +104 -104
  53. package/framework/src/elements/_textarea.scss +92 -106
  54. package/framework/src/elements/_title.scss +86 -84
  55. package/framework/src/elements/_toaster.scss +2 -3
  56. package/framework/src/grid/_columns.scss +5 -5
  57. package/framework/src/layout/_hero.scss +129 -211
  58. package/framework/src/layout/_section.scss +3 -3
  59. package/framework/src/layout/_toolbar.scss +6 -6
  60. package/framework/src/utilities/_controls.scss +37 -39
  61. package/framework/src/utilities/_derived-variables.scss +3 -14
  62. package/framework/src/utilities/_initial-variables.scss +38 -23
  63. package/framework/src/utilities/_mixins.scss +523 -582
  64. package/package.json +4 -3
  65. package/framework/src/components/_menu.scss +0 -213
  66. package/framework/src/components/_search-modal.scss +0 -197
  67. package/framework/src/components/_slices.scss +0 -316
  68. package/framework/src/components/_switch.scss +0 -209
  69. package/framework/src/elements/_checkradio.scss +0 -173
  70. package/framework/src/elements/_options.scss +0 -146
  71. package/framework/src/elements/_timeline.scss +0 -283
  72. /package/dist/default/assets/icons/all/{all/alert.svg → alert.svg} +0 -0
  73. /package/dist/default/assets/icons/all/{all/arrow-down.svg → arrow-down.svg} +0 -0
  74. /package/dist/default/assets/icons/all/{all/arrow-left.svg → arrow-left.svg} +0 -0
  75. /package/dist/default/assets/icons/all/{all/arrow-right.svg → arrow-right.svg} +0 -0
  76. /package/dist/default/assets/icons/all/{all/arrow-up.svg → arrow-up.svg} +0 -0
  77. /package/dist/default/assets/icons/all/{all/bell.svg → bell.svg} +0 -0
  78. /package/dist/default/assets/icons/all/{all/check-circle.svg → check-circle.svg} +0 -0
  79. /package/dist/default/assets/icons/all/{all/check.svg → check.svg} +0 -0
  80. /package/dist/default/assets/icons/all/{all/exclamation-circle.svg → exclamation-circle.svg} +0 -0
  81. /package/dist/default/assets/icons/all/{all/eye-slash.svg → eye-slash.svg} +0 -0
  82. /package/dist/default/assets/icons/all/{all/eye.svg → eye.svg} +0 -0
  83. /package/dist/default/assets/icons/all/{all/infos-circle.svg → infos-circle.svg} +0 -0
  84. /package/dist/default/assets/icons/all/{all/search.svg → search.svg} +0 -0
  85. /package/dist/default/assets/icons/all/{all/times.svg → times.svg} +0 -0
  86. /package/dist/default/assets/icons/all/{all/trash.svg → trash.svg} +0 -0
@@ -1,6 +1,10 @@
1
1
  @use "sass:map";
2
2
 
3
3
  @function getColor( $name ) {
4
+ @if str-slice($name, 0, 3) == 'bg-' {
5
+ $submane: str-slice($name, 4);
6
+ @return getBGColor( $submane );
7
+ }
4
8
  @return var(--color-#{nth(map-get($colors,$name),1)})
5
9
  }
6
10
 
@@ -8,51 +12,25 @@
8
12
  @return #{nth(map-get($colors,$name),2)}
9
13
  }
10
14
 
15
+ @function getBGColorValue( $name ) {
16
+ @return #{nth(map-get($colors,$name),4)}
17
+ }
18
+
11
19
  @function getColorBrandName( $name ) {
12
20
  @return #{nth(map-get($colors,$name),1)}
13
21
  }
14
22
 
15
- @function getVariantColor($name, $n:1) {
16
- @return #{nth(map-get($colors,$name),$n+3)}
17
- };
23
+ @function getBGColor( $name ) {
24
+ @return var(--color-bg-#{nth(map-get($colors,$name),1)})
25
+ }
18
26
 
19
27
  :root {
20
28
  @each $name, $color in $colors {
21
29
  --color-#{nth($color,1)}: #{nth($color,2)};
22
- }
23
-
24
- // Colors
25
- @each $name, $color in $colors {
26
- $colorname: nth($color, 1);
27
- $bgcolorval: nth($color, 2);
28
- $colorval: nth($color, 3);
29
- .has-background-#{$colorname} {
30
- background-color: var(--color-#{$colorname}) !important;
31
- color: var(--color-#{$colorval});
32
- }
30
+ --color-bg-#{nth($color,1)}: #{nth($color,4)};
33
31
  }
34
32
  }
35
33
 
36
- .is-hovered {
37
- background-color: var(--color-hovered);
38
- }
39
-
40
- @function invertColor ($colorName, $context:'') {
41
- $invertcolormap: ('tertiary': 'grey-dark', 'grey-dark': 'grey-light', 'grey-light': 'grey-dark');
42
- $defaultInvert: white;
43
-
44
- @if ($context == 'dark') {
45
- $invertcolormap: ('tertiary':'var(--color-success)');
46
- $defaultInvert: black;
47
- }
48
-
49
- @if ($context == 'accordion') {
50
- $defaultInvert: 'grey-lighter'
51
- }
52
-
53
- $result: map.get($invertcolormap, $colorName);
54
- @if ($result) {
55
- @return $result
56
- }
57
- @return $defaultInvert
34
+ @function invertColor ($colorName) {
35
+ @return var(--color-#{nth(map-get($colors,$colorName),3)})
58
36
  }
@@ -7,7 +7,7 @@ $body-line-height: 1.5 !default;
7
7
  .html-wrap {
8
8
  margin: 0;
9
9
  padding: 0;
10
- background-color: getColor('grey-lighter');
10
+ background-color: getBGColor('neutral');
11
11
  font-size: $body-size;
12
12
  -moz-osx-font-smoothing: grayscale;
13
13
  -webkit-font-smoothing: antialiased;
@@ -55,6 +55,9 @@ $body-line-height: 1.5 !default;
55
55
  z-index: zindex('small');
56
56
  }
57
57
  }
58
+ [disabled], [aria-disabled="true"] {
59
+ @include disabledRules;
60
+ }
58
61
  }
59
62
 
60
63
  .body-wrap {
@@ -195,16 +195,16 @@ $alignments: (
195
195
  font-weight: $weight-semibold !important;
196
196
  }
197
197
 
198
- @mixin typography-colors($target: '') {
198
+ @mixin typography-colors() {
199
199
  @each $name, $color in $colors {
200
- $brandName:nth($color, 1);
200
+ $brandName: nth($color, 1);
201
201
  $color: nth($color, 2);
202
202
  $color-invert: invertColor($name);
203
203
 
204
- .has-text-#{$brandName}#{if($target == '', '', '-' + $target)} {
204
+ .has-text-#{$brandName} {
205
205
  color: $color !important;
206
206
  }
207
- .has-text-#{$brandName}-invert#{if($target == '', '', '-' + $target)} {
207
+ .has-text-#{$brandName}-invert {
208
208
  color: $color-invert !important;
209
209
  }
210
210
  }
@@ -212,30 +212,6 @@ $alignments: (
212
212
 
213
213
  @include typography-colors;
214
214
 
215
- @include mobile {
216
- @include typography-colors('mobile');
217
- }
218
-
219
- @include tablet {
220
- @include typography-colors('tablet');
221
- }
222
-
223
- @include touch {
224
- @include typography-colors('touch');
225
- }
226
-
227
- @include desktop {
228
- @include typography-colors('desktop');
229
- }
230
-
231
- @include widescreen {
232
- @include typography-colors('widescreen');
233
- }
234
-
235
- @include fullhd {
236
- @include typography-colors('fullhd');
237
- }
238
-
239
215
  // Visibility
240
216
  $displays: 'block' 'flex' 'inline' 'inline-block' 'inline-flex';
241
217
 
@@ -445,7 +421,7 @@ $displays: 'block' 'flex' 'inline' 'inline-block' 'inline-flex';
445
421
  }
446
422
 
447
423
  .is-bordered {
448
- border: 1px solid getColor('grey-light');
424
+ border: 1px solid getBGColor('neutral-dark');
449
425
  }
450
426
 
451
427
  .is-vertical-paddingless {
@@ -645,6 +621,11 @@ $positions: (
645
621
  );
646
622
 
647
623
  @each $justification, $justify-content in $positions {
624
+
625
+ .is-justified-self {
626
+ justify-self: #{$justify-content} !important;
627
+ }
628
+
648
629
  .is-justified-#{$justification} {
649
630
  justify-content: #{$justify-content} !important;
650
631
  }
@@ -35,6 +35,11 @@ p.is-loading,
35
35
  .is-checkradio[type="checkbox"] + label::after {
36
36
  visibility: hidden;
37
37
  }
38
+ &::after {
39
+ @include spinner;
40
+ @include center(1em);
41
+ position: absolute !important;
42
+ }
38
43
 
39
44
  &.field,
40
45
  .field {
@@ -54,6 +59,8 @@ p.is-loading,
54
59
 
55
60
  filter: grayscale(1);
56
61
  cursor: default !important;
62
+ color: transparent !important;
63
+ pointer-events: none;
57
64
 
58
65
  // make the text elements like subtle animated lines
59
66
  @include text-tags {
@@ -4,13 +4,15 @@
4
4
  margin: $spacing-4 0;
5
5
 
6
6
  .accordion {
7
+ @include hover();
8
+
7
9
  box-sizing: border-box;
8
10
  display: flex;
9
11
  flex-direction: column;
10
- background-color: invertColor(currentColor, 'accordion');
12
+ background-color: getColor('background');
11
13
  font-size: $size-normal;
12
- border: 1px solid getColor('grey-disabled');
13
- border-radius: 8px;
14
+ border: 1px solid getBGColor('font');
15
+ border-radius: $radius;
14
16
  margin: 8px 0;
15
17
  min-height: 56px;
16
18
  max-height: max-content;
@@ -21,11 +23,17 @@
21
23
  padding-top: 0 !important;
22
24
  }
23
25
 
26
+ &:focus-visible {
27
+ outline: 2px solid getColor('main');
28
+ outline-offset: 2px;
29
+ }
30
+
24
31
  &.is-active > .accordion-header:first-child, [data-accordion-toggle]:checked ~ .accordion-header {
25
32
  font-weight: bold;
33
+
26
34
  & .toggle {
27
35
  &::before {
28
- @include arrow(getColor('font'), 'up');
36
+ @include arrow('up');
29
37
  }
30
38
  }
31
39
  }
@@ -34,23 +42,9 @@
34
42
  display: block;
35
43
  }
36
44
 
37
- &:hover:not(.is-disabled) {
38
- border: 2px solid getColor('alternate');
39
-
40
- .accordion-header {
41
- color: getColor('alternate');
42
- padding: 15px;
43
- }
44
-
45
- .accordion-body {
46
- padding: 15px;
47
- padding-top: 1px !important;
48
- }
49
- }
50
-
51
45
  &:not(:first-child) {
52
46
  .accordion-header {
53
- border-radius: 0;
47
+ border-radius: $radius;
54
48
  }
55
49
  }
56
50
 
@@ -68,22 +62,6 @@
68
62
  margin-bottom: 0;
69
63
  }
70
64
 
71
- &.is-disabled {
72
- background-color: getColor('bg-disabled');
73
- cursor: no-drop;
74
- .accordion-header,
75
- .accordion-header .toggle::before {
76
- color: getColor('disabled');
77
- cursor: no-drop;
78
- }
79
-
80
- &.is-active {
81
- .accordion-header:not(input) + .accordion-body {
82
- color: getColor('grey');
83
- }
84
- }
85
- }
86
-
87
65
  .accordion-header {
88
66
  align-items: center;
89
67
  display: flex;
@@ -139,7 +117,7 @@
139
117
  }
140
118
 
141
119
  &::before {
142
- @include arrow(getColor('grey-dark'));
120
+ @include arrow();
143
121
  top: -0.25em;
144
122
  left: 0;
145
123
  right: 0;
@@ -156,6 +134,7 @@
156
134
 
157
135
  & + .accordion-body {
158
136
  overflow-y: hidden;
137
+
159
138
  .accordion-content {
160
139
  border-radius: $radius;
161
140
  margin-bottom: 10px;
@@ -4,11 +4,9 @@
4
4
  @import 'disclaimer';
5
5
  @import 'divider';
6
6
  @import 'breadcrumb';
7
- @import 'switch';
8
7
  @import 'card';
9
8
  @import 'dropdown';
10
9
  @import 'level';
11
- @import 'menu';
12
10
  @import 'modal';
13
11
  @import 'pagination';
14
12
  @import 'popover';
@@ -18,7 +16,6 @@
18
16
  @import 'accordion';
19
17
  @import 'countdown';
20
18
  @import 'timeline';
21
- @import 'slices';
22
19
  @import 'stepper';
23
20
  @import 'slider';
24
21
  @import 'plus-symbol';
@@ -1,45 +1,50 @@
1
1
  .breadcrumb {
2
- @include block;
3
- @include unselectable;
2
+ @include block;
3
+ @include unselectable;
4
4
 
5
- ul,
6
- ol {
7
- @include desktop {
8
- display: flex;
9
- flex-wrap: wrap;
10
- }
5
+ ul,
6
+ ol {
7
+ @include desktop {
8
+ display: flex;
9
+ flex-wrap: wrap;
11
10
  }
11
+ }
12
12
 
13
- li {
14
- display: inline;
15
- position: relative;
13
+ li {
14
+ display: inline;
15
+ position: relative;
16
16
 
17
- @include desktop {
18
- display: flex;
19
- align-items: center;
20
- }
21
-
22
- &:first-child a {
23
- margin-left: 0;
24
- }
17
+ @include desktop {
18
+ display: flex;
19
+ align-items: center;
20
+ }
25
21
 
26
- &.is-active {
27
- a {
28
- color: getColor('font');
29
- cursor: default;
30
- pointer-events: none;
31
- }
32
- }
22
+ &:first-child a {
23
+ margin-left: 0;
24
+ }
33
25
 
34
- + li a::before {
35
- content: ">";
36
- text-align: center;
37
- padding-right: 0.5em;
38
- }
26
+ &.is-active {
27
+ a {
28
+ color: getColor('font');
29
+ cursor: default;
30
+ pointer-events: none;
31
+ text-decoration: none;
32
+ }
39
33
  }
40
34
 
41
- a {
42
- color: getColor('alternate');
43
- margin: 0 0.5em;
35
+ + li a::before {
36
+ content: ">";
37
+ text-align: center;
38
+ padding-right: 0.5em;
39
+ text-decoration: none;
40
+ display: inline-block;
44
41
  }
42
+ }
43
+
44
+ a {
45
+ color: getColor('main');
46
+ margin: 0 0.5em;
47
+ text-decoration: underline;
48
+ text-underline-offset: 4px;
49
+ }
45
50
  }
@@ -16,7 +16,7 @@
16
16
  position: relative;
17
17
  flex-shrink: 0;
18
18
  overflow: hidden;
19
- border-radius: 8px 8px 0px 0px;
19
+ border-radius: $radius $radius 0px 0px;
20
20
  }
21
21
 
22
22
  .card-content {
@@ -24,6 +24,7 @@
24
24
  border-bottom-right-radius: $radius;
25
25
  padding: $spacing-5;
26
26
  flex-grow: 1;
27
+ border-radius: $radius;
27
28
 
28
29
  @include mobile {
29
30
  padding: $spacing-4;
@@ -31,7 +32,7 @@
31
32
  }
32
33
 
33
34
  .card-footer {
34
- border-top: 1px solid getColor('grey');
35
+ border-top: 1px solid getColor('neutral');
35
36
  }
36
37
 
37
38
  .mention {
@@ -62,7 +63,7 @@
62
63
  }
63
64
 
64
65
  .card-content {
65
- border: 1px solid getColor('grey');
66
+ border: 1px solid getBGColor('font');
66
67
  padding-left: 20px;
67
68
  padding-right: 20px;
68
69
 
@@ -74,7 +75,7 @@
74
75
  }
75
76
 
76
77
  &.is-active {
77
- border: 2px solid getColor('alternate');
78
+ border: 2px solid getColor('main');
78
79
 
79
80
  .card-image {
80
81
  border-radius: 6px 6px 0px 0px;
@@ -113,7 +114,7 @@
113
114
 
114
115
  .card-image {
115
116
  max-width: 100%;
116
- border-radius: 8px 0px 0px 8px;
117
+ border-radius: $radius 0px 0px $radius;
117
118
 
118
119
  @include tablet {
119
120
  img {
@@ -1,55 +1,57 @@
1
1
  .countdown {
2
- border: 1px solid currentcolor;
3
- border-radius: 8px;
4
- display: inline-flex;
5
- padding: $spacing-2;
6
- color: getColor('font');
2
+ border: 1px solid currentcolor;
3
+ border-radius: $radius;
4
+ display: inline-flex;
5
+ padding: $spacing-2;
6
+ color: getColor('font');
7
7
 
8
- .count {
9
- font-family: $family-sans-serif;
10
- font-size: $text-14;
11
- font-weight: 400;
12
- list-style-type: none;
13
- text-align: center;
14
- padding: 0 $spacing-2;
15
- position: relative;
16
-
17
- &:not(:last-child)::before {
18
- content: ' ';
19
- border-left: 1px solid currentcolor;
20
- height: 100%;
21
- position: absolute;
22
- top: 0;
23
- bottom: 0;
24
- right: 0;
25
- }
26
-
27
- .value {
28
- font-size: $text-24;
29
- font-weight: 600;
30
- }
8
+ .count {
9
+ font-family: $family-sans-serif;
10
+ font-size: $text-14;
11
+ font-weight: 400;
12
+ list-style-type: none;
13
+ text-align: center;
14
+ padding: 0 $spacing-2;
15
+ position: relative;
16
+
17
+ &:not(:last-child)::before {
18
+ content: ' ';
19
+ border-left: 1px solid currentcolor;
20
+ height: 100%;
21
+ position: absolute;
22
+ top: 0;
23
+ bottom: 0;
24
+ right: 0;
31
25
  }
32
26
 
33
- &.is-small {
34
- padding: $spacing-2 0;
35
- border-radius: 4px;
36
- .count {
37
- font-size: $text-12;
38
- padding: 0 $spacing-2;
39
- font-weight: 500;
40
-
41
- .value {
42
- font-size: $text-16;
43
- font-weight: 600;
44
- }
45
- }
27
+ .value {
28
+ font-size: $text-24;
29
+ font-weight: 600;
46
30
  }
31
+ }
32
+
33
+ &.is-small {
34
+ padding: $spacing-2 0;
35
+ border-radius: $radius-small;
36
+
37
+ .count {
38
+ font-size: $text-12;
39
+ padding: 0 $spacing-2;
40
+ font-weight: 500;
47
41
 
48
- &.is-inverted {
49
- color: invertColor('font');
50
- .count {
51
- &:not(:last-child)::before {
52
- }
53
- }
42
+ .value {
43
+ font-size: $text-16;
44
+ font-weight: 600;
45
+ }
46
+ }
47
+ }
48
+
49
+ &.is-inverted {
50
+ color: invertColor('font');
51
+
52
+ .count {
53
+ &:not(:last-child)::before {
54
+ }
54
55
  }
56
+ }
55
57
  }
@@ -66,17 +66,18 @@
66
66
  }
67
67
  }
68
68
 
69
- &:hover:not(.is-disabled) {
70
- border-color: getColor('alternate');
69
+ #{$hoverSelector} {
70
+ border-color: getColor('main');
71
71
  }
72
72
 
73
73
  &.is-active {
74
- color: getColor('alternate');
74
+ color: getColor('main');
75
75
  }
76
- /* @todo : deprecated ? remove ? add doc ? */
76
+
77
+ /* @todo : deprecated ? remove ? add doc ? */
77
78
  .heading {
78
79
  font-size: $text-13;
79
- color: getColor('grey');
80
+ color: getColor('neutral');
80
81
  margin-bottom: 0.75em;
81
82
  text-transform: inherit;
82
83
  }
@@ -1,7 +1,7 @@
1
1
  .divider {
2
2
  position: relative;
3
3
  text-align: center;
4
- background-color: getColor('grey');
4
+ background-color: getBGColor('hovered');
5
5
  height: 1px;
6
6
  width: 100%;
7
7
  margin: 16px 0;
@@ -13,6 +13,6 @@
13
13
  transform: translate(-50%, -50%);
14
14
  white-space: nowrap;
15
15
  padding: 0 $spacing-4;
16
- background-color: invertColor('grey');
16
+ background-color: invertColor('neutral');
17
17
  }
18
18
  }