@lightspeed/design-system-css 34.0.1 → 35.0.0

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 (84) hide show
  1. package/dist/index.css +119 -191
  2. package/dist/index.css.map +1 -1
  3. package/package.json +1 -1
  4. package/src/index.scss +1 -1
  5. package/src/vend-styles/components/BarChart/BarChart.scss +1 -0
  6. package/src/vend-styles/components/Carousel/Carousel.scss +6 -1
  7. package/src/vend-styles/components/DataTable/DataTable.scss +7 -0
  8. package/src/vend-styles/components/DatePicker/DatePicker.scss +6 -3
  9. package/src/vend-styles/components/LineChart/LineChart.scss +3 -0
  10. package/src/vend-styles/components/Modal/Modal.scss +1 -6
  11. package/src/vend-styles/components/PromotionModal/PromotionModal.scss +1 -0
  12. package/src/vend-styles/components/TableList/TableList.scss +5 -4
  13. package/src/vend-styles/components/UpsellPrimary/UpsellPrimary.scss +1 -1
  14. package/src/vend-styles/components/UpsellSecondary/UpsellSecondary.scss +1 -1
  15. package/src/vend-styles/components/VendVideo/VendVideo.scss +8 -0
  16. package/src/vend-styles/vend-styles.scss +5 -5
  17. package/src/vend.ui/_deprecated/v38.0.0/styles/vd-flex/vd-flex.scss +2 -1
  18. package/src/vend.ui/behaviours/vd-align/vd-align.scss +2 -0
  19. package/src/vend.ui/components/vd-autocomplete/vd-autocomplete.scss +3 -3
  20. package/src/vend.ui/components/vd-autocomplete-filter/vd-autocomplete-filter.scss +4 -3
  21. package/src/vend.ui/components/vd-avatar/vd-avatar.scss +2 -2
  22. package/src/vend.ui/components/vd-avatar-multi/vd-avatar-multi.scss +13 -37
  23. package/src/vend.ui/components/vd-badges/vd-id-badge/vd-id-badge.scss +3 -1
  24. package/src/vend.ui/components/vd-banner/vd-banner.scss +2 -18
  25. package/src/vend.ui/components/vd-btn/_vd-btn-mixins.scss +3 -1
  26. package/src/vend.ui/components/vd-btn/vd-btn-panel.scss +5 -3
  27. package/src/vend.ui/components/vd-btn/vd-btn.scss +2 -2
  28. package/src/vend.ui/components/vd-card/vd-card.scss +2 -2
  29. package/src/vend.ui/components/vd-carousel/vd-carousel.scss +5 -1
  30. package/src/vend.ui/components/vd-checkbox/vd-checkbox.scss +12 -8
  31. package/src/vend.ui/components/vd-datepicker/vd-datepicker-ns.scss +1 -1
  32. package/src/vend.ui/components/vd-datepicker/vd-datepicker.scss +23 -11
  33. package/src/vend.ui/components/vd-dialog/vd-dialog.scss +1 -37
  34. package/src/vend.ui/components/vd-dott/vd-dott.scss +0 -1
  35. package/src/vend.ui/components/vd-dropdown/vd-dropdown.scss +2 -2
  36. package/src/vend.ui/components/vd-field/vd-field.scss +1 -0
  37. package/src/vend.ui/components/vd-flex/vd-flex.scss +9 -0
  38. package/src/vend.ui/components/vd-grid/vd-grid.scss +1 -1
  39. package/src/vend.ui/components/vd-hero/vd-hero-ns.scss +3 -2
  40. package/src/vend.ui/components/vd-hero/vd-hero.scss +4 -7
  41. package/src/vend.ui/components/vd-input/vd-input-ns.scss +9 -9
  42. package/src/vend.ui/components/vd-input/vd-input.scss +3 -0
  43. package/src/vend.ui/components/vd-link/vd-link.scss +2 -2
  44. package/src/vend.ui/components/vd-loader/vd-loader.scss +4 -3
  45. package/src/vend.ui/components/vd-lozenge/vd-lozenge.scss +1 -1
  46. package/src/vend.ui/components/vd-lozenge-group/vd-lozenge-group.scss +10 -5
  47. package/src/vend.ui/components/vd-modals-container/vd-modals-container.scss +1 -0
  48. package/src/vend.ui/components/vd-multiselect-popover/vd-multiselect-popover.scss +2 -2
  49. package/src/vend.ui/components/vd-next-stepper/vd-next-stepper.scss +1 -1
  50. package/src/vend.ui/components/vd-password/vd-password.scss +4 -0
  51. package/src/vend.ui/components/vd-popover/vd-popover.scss +10 -0
  52. package/src/vend.ui/components/vd-popover-list/vd-popover-list-ns.scss +1 -1
  53. package/src/vend.ui/components/vd-popover-list/vd-popover-list.scss +10 -4
  54. package/src/vend.ui/components/vd-promo/vd-promo-ns.scss +1 -1
  55. package/src/vend.ui/components/vd-promo/vd-promo.scss +2 -3
  56. package/src/vend.ui/components/vd-radio/vd-radio-ns.scss +1 -1
  57. package/src/vend.ui/components/vd-radio/vd-radio.scss +10 -5
  58. package/src/vend.ui/components/vd-section/vd-section.scss +2 -17
  59. package/src/vend.ui/components/vd-segcontrol/vd-segcontrol.scss +1 -1
  60. package/src/vend.ui/components/vd-select/vd-select-group.scss +4 -3
  61. package/src/vend.ui/components/vd-select/vd-select-ns.scss +4 -3
  62. package/src/vend.ui/components/vd-select/vd-select.scss +1 -0
  63. package/src/vend.ui/components/vd-splash/vd-splash.scss +1 -0
  64. package/src/vend.ui/components/vd-switch/vd-switch.scss +3 -3
  65. package/src/vend.ui/components/vd-table/vd-table.scss +19 -5
  66. package/src/vend.ui/components/vd-tabs/vd-tabs.scss +3 -3
  67. package/src/vend.ui/components/vd-text/vd-text.scss +3 -0
  68. package/src/vend.ui/components/vd-toast-notification/vd-toast-notification.scss +0 -6
  69. package/src/vend.ui/styles/global/_non-styles.scss +0 -2
  70. package/src/vend.ui/styles/global/_normalise.scss +1 -1
  71. package/src/vend.ui/styles/global/colour/_colour-functions.scss +4 -2
  72. package/src/vend.ui/styles/global/colour/_colour-helpers.scss +1 -0
  73. package/src/vend.ui/styles/global/colour/themes/_colour-themes.scss +0 -1
  74. package/src/vend.ui/styles/global/colour/themes/_css-var-theme-generator.scss +1 -1
  75. package/src/vend.ui/styles/global/colour/themes/_generate-themes.scss +4 -1
  76. package/src/vend.ui/styles/global/colour/themes/_theme-vd-functions.scss +1 -0
  77. package/src/vend.ui/styles/global/effects/_effects.scss +3 -0
  78. package/src/vend.ui/styles/global/text/_text-helpers.scss +1 -1
  79. package/src/vend.ui/styles/global/text/_text-mixins.scss +1 -3
  80. package/src/vend.ui/styles/global/utils/_functions.scss +2 -0
  81. package/src/vend.ui/styles/global/viewport/_viewport-identifier.scss +0 -3
  82. package/src/vend.ui/styles/global/viewport/_viewport-media-mixins.scss +2 -0
  83. package/dist/vend-styles.css +0 -8348
  84. package/src/vend-stylelint/use-colour-function.js +0 -63
@@ -12,7 +12,7 @@ table {
12
12
 
13
13
  th {
14
14
  text-align: left;
15
- padding: vd-grid-unit(4) vd-grid-unit(10) vd-grid-unit(4);
15
+ padding: vd-grid-unit(4) vd-grid-unit(10);
16
16
  }
17
17
 
18
18
  tr {
@@ -42,12 +42,15 @@ table {
42
42
  &.vd-no-border-b {
43
43
  border-bottom: none;
44
44
  }
45
+
45
46
  &.vd-no-border-t {
46
47
  border-top: none;
47
48
  }
49
+
48
50
  &.vd-no-border-l {
49
51
  border-left: none;
50
52
  }
53
+
51
54
  &.vd-no-border-r {
52
55
  border-right: none;
53
56
  }
@@ -55,6 +58,7 @@ table {
55
58
  &.vd-border-t {
56
59
  border-top: 1px solid hs-color(border-neutral-soft);
57
60
  }
61
+
58
62
  &.vd-border-b {
59
63
  border-bottom: 1px solid hs-color(border-neutral-soft);
60
64
  }
@@ -90,9 +94,11 @@ table {
90
94
  &.vd-valign-t td {
91
95
  vertical-align: top;
92
96
  }
97
+
93
98
  &.vd-valign-m td {
94
99
  vertical-align: middle;
95
100
  }
101
+
96
102
  &.vd-valign-b td {
97
103
  vertical-align: bottom;
98
104
  }
@@ -126,6 +132,7 @@ table {
126
132
  & + tr:not(.vd-expandable) {
127
133
  display: none;
128
134
  }
135
+
129
136
  &.vd-expandable--expanded + tr {
130
137
  display: table-row;
131
138
  }
@@ -162,22 +169,27 @@ table {
162
169
  &.vd-sml-pad-l {
163
170
  padding-left: vd-grid-unit(2);
164
171
  }
172
+
165
173
  &.vd-sml-pad-h,
166
174
  &.vd-sml-pad-r {
167
175
  padding-right: vd-grid-unit(2);
168
176
  }
177
+
169
178
  &.vd-no-pad-h,
170
179
  &.vd-no-pad-l {
171
180
  padding-left: 0;
172
181
  }
182
+
173
183
  &.vd-no-pad-h,
174
184
  &.vd-no-pad-r {
175
185
  padding-right: 0;
176
186
  }
187
+
177
188
  &.vd-no-pad-v,
178
189
  &.vd-no-pad-b {
179
190
  padding-bottom: 0;
180
191
  }
192
+
181
193
  &.vd-no-pad-v,
182
194
  &.vd-no-pad-t {
183
195
  padding-top: 0;
@@ -186,9 +198,11 @@ table {
186
198
  &.vd-valign-t {
187
199
  vertical-align: top;
188
200
  }
201
+
189
202
  &.vd-valign-m {
190
203
  vertical-align: middle;
191
204
  }
205
+
192
206
  &.vd-valign-b {
193
207
  vertical-align: bottom;
194
208
  }
@@ -196,6 +210,7 @@ table {
196
210
 
197
211
  &.vd-table--data {
198
212
  border: 1px solid hs-color(border-neutral-soft);
213
+
199
214
  tr {
200
215
  background-color: hs-color(bg-neutral-top);
201
216
  }
@@ -245,7 +260,7 @@ table {
245
260
 
246
261
  > thead {
247
262
  th {
248
- padding: vd-grid-unit(4) vd-grid-unit(4);
263
+ padding: vd-grid-unit(4);
249
264
  background-color: hs-color(bg-neutral-top);
250
265
  }
251
266
 
@@ -268,7 +283,7 @@ table {
268
283
  }
269
284
 
270
285
  > td {
271
- padding: vd-grid-unit(4) vd-grid-unit(4);
286
+ padding: vd-grid-unit(4);
272
287
  }
273
288
  }
274
289
 
@@ -301,8 +316,7 @@ table {
301
316
 
302
317
  &.vd-table--report--nested--indented {
303
318
  > tbody > tr > td:first-child {
304
- padding-left: (vd-grid-unit(4) - $vd-nested-reporting-table-container-offset) +
305
- $vd-nested-reporting-table-indent-padding;
319
+ padding-left: (vd-grid-unit(4) - $vd-nested-reporting-table-container-offset) + $vd-nested-reporting-table-indent-padding;
306
320
  }
307
321
  }
308
322
  }
@@ -54,12 +54,12 @@
54
54
  color: hs-color(fg-neutral-default);
55
55
 
56
56
  &.vd-tab--active .vd-tab-button {
57
- @include vd-active-tab();
57
+ @include vd-active-tab;
58
58
  }
59
59
 
60
60
  @include vd-hover-when-supported {
61
61
  &:hover:not(.vd-tab--disabled) .vd-tab-button {
62
- @include vd-active-tab();
62
+ @include vd-active-tab;
63
63
  }
64
64
 
65
65
  &:hover:not(.vd-tab--active) .vd-tab-button {
@@ -68,7 +68,7 @@
68
68
  }
69
69
 
70
70
  &.vd-tab--disabled .vd-tab-button {
71
- @include disabled();
71
+ @include disabled;
72
72
 
73
73
  @include vd-hover-when-supported {
74
74
  &:hover {
@@ -1,12 +1,15 @@
1
1
  .vd-text--secondary {
2
2
  color: hs-color(fg-supplementary-default);
3
3
  }
4
+
4
5
  .vd-text--success {
5
6
  color: hs-color(fg-go-default);
6
7
  }
8
+
7
9
  .vd-text--negative {
8
10
  color: hs-color(fg-no-default);
9
11
  }
12
+
10
13
  .vd-text--disabled {
11
14
  color: hs-color(fg-neutral-default);
12
15
  opacity: 0.35;
@@ -6,9 +6,7 @@
6
6
  left: 0;
7
7
  top: 0;
8
8
  z-index: $vd-toast-notification-z-index;
9
-
10
9
  display: block;
11
-
12
10
  opacity: 0;
13
11
  transform: translateY(-100%);
14
12
  transition: transform ease-in-out $vd-time-m, opacity ease-in-out $vd-time-m;
@@ -22,23 +20,19 @@
22
20
 
23
21
  .vd-toast-notification {
24
22
  position: relative;
25
-
26
23
  display: flex;
27
24
  align-items: flex-start;
28
25
  justify-content: center;
29
-
30
26
  width: calc(100% - #{$vd-toast-notification-offset});
31
27
  max-width: vd-grid-unit(170);
32
28
  margin: 0 auto;
33
29
  padding: $vd-toast-notification-padding-v $vd-toast-notification-padding-r
34
30
  $vd-toast-notification-padding-v $vd-toast-notification-padding-l;
35
-
36
31
  border-radius: $vd-border-radius;
37
32
  box-sizing: border-box;
38
33
  color: hs-color(fg-neutral-ondark-default);
39
34
  text-align: center;
40
35
  font-weight: $vd-font-weight--bold;
41
-
42
36
  transition: opacity ease-in-out $vd-time-m;
43
37
  pointer-events: auto;
44
38
  }
@@ -11,11 +11,9 @@
11
11
  // Global non-style variables, mixins and functions.
12
12
 
13
13
  @import 'utils/functions';
14
-
15
14
  @import 'viewport/viewport-data';
16
15
  @import 'viewport/viewport-ranges';
17
16
  @import 'viewport/viewport-media-mixins';
18
-
19
17
  @import 'colour/colour';
20
18
  @import 'effects/effects-ns';
21
19
  @import 'text/text';
@@ -1,5 +1,5 @@
1
1
  body {
2
- @include vd-reset();
2
+ @include vd-reset;
3
3
 
4
4
  padding: 0;
5
5
  margin: 0;
@@ -13,6 +13,7 @@
13
13
  @if ($_vd-colour-theme != _no_arg_provided_) {
14
14
  @warn "[colour-functions] Passing a theme as a second argument to vd-colour is deprecated. You should remove it.";
15
15
  }
16
+
16
17
  @if (index($helios-theme-available-keys, $_vd-colour-element) != null) {
17
18
  @return var(--vd-colour--#{$_vd-colour-element});
18
19
  } @else {
@@ -28,6 +29,7 @@
28
29
  /// @return {String} - Color as a css variable
29
30
  @function hs-color($_hs-color) {
30
31
  $_hs-theme: map-get($hs-unified-themes, light);
32
+
31
33
  @if (map-has-key($_hs-theme, $_hs-color)) {
32
34
  @return var(#{$hs-css-variables-prefix}#{$_hs-color});
33
35
  } @else {
@@ -63,6 +65,7 @@
63
65
  $string: unquote('#{$hex}');
64
66
  }
65
67
  $string: '%23' + $string;
68
+
66
69
  @return $string;
67
70
  }
68
71
 
@@ -114,8 +117,7 @@
114
117
  $index: str-index($string, $search);
115
118
 
116
119
  @if $index {
117
- @return str-slice($string, 1, $index - 1) + $replace +
118
- vd-str-replace(str-slice($string, $index + str-length($search)), $search, $replace);
120
+ @return str-slice($string, 1, $index - 1) + $replace + vd-str-replace(str-slice($string, $index + str-length($search)), $search, $replace);
119
121
  }
120
122
 
121
123
  @return $string;
@@ -1,6 +1,7 @@
1
1
  // @TODO remove `do` color option. While React components no longer support `do`, we still need to keen the `vd-colour-do` classes that are generated. Consuming apps still reference
2
2
  // and use these.
3
3
  $_vd-colour-helpers: (do, go, no, supplementary);
4
+
4
5
  @each $key in ($_vd-colour-helpers) {
5
6
  .vd-colour-#{$key} {
6
7
  color: hs-get-action-color($key, fg);
@@ -8,7 +8,6 @@
8
8
  // Unified Themes
9
9
  @import '@lightspeed/design-system-tokens/scss/unified-theme-light';
10
10
  @import '@lightspeed/design-system-tokens/scss/unified-theme-dark';
11
-
12
11
  @import './generate-themes';
13
12
 
14
13
  $vd-colour-themes: (
@@ -1 +1 @@
1
- @include hs-generate-unified-themes();
1
+ @include hs-generate-unified-themes;
@@ -7,6 +7,7 @@
7
7
  @media (prefers-color-scheme: dark) {
8
8
  .vd-theme--use-dark-mode {
9
9
  color-scheme: dark;
10
+
10
11
  @include vd-generate-theme-values(map-get($vd-colour-themes, dark));
11
12
  }
12
13
  }
@@ -15,12 +16,14 @@
15
16
  :root,
16
17
  .vd-theme--light {
17
18
  color-scheme: light;
19
+
18
20
  @include vd-generate-theme-values(map-get($vd-colour-themes, light));
19
21
  }
20
22
 
21
23
  // Dark theme
22
24
  .vd-theme--dark {
23
25
  color-scheme: dark;
26
+
24
27
  @include vd-generate-theme-values(map-get($vd-colour-themes, dark));
25
28
  }
26
29
  }
@@ -40,7 +43,7 @@
40
43
  }
41
44
 
42
45
  :root {
43
- @include generate-spacing-values();
46
+ @include generate-spacing-values;
44
47
  }
45
48
 
46
49
  // Default theme (light)
@@ -57,6 +57,7 @@
57
57
  /// @return {Map} Only discretionary colors
58
58
  @function vd-add-theme-discretionary-only($theme) {
59
59
  $_vend-discretionary-theme: ();
60
+
60
61
  @each $key in ($tokens-awaiting-migration) {
61
62
  $value: map-get($theme, $key);
62
63
  $_vend-discretionary-theme: map-merge(
@@ -8,6 +8,7 @@
8
8
  0% {
9
9
  opacity: 0;
10
10
  }
11
+
11
12
  100% {
12
13
  opacity: 1;
13
14
  }
@@ -17,10 +18,12 @@
17
18
  0% {
18
19
  opacity: 0;
19
20
  }
21
+
20
22
  30%,
21
23
  70% {
22
24
  opacity: 1;
23
25
  }
26
+
24
27
  100% {
25
28
  opacity: 0;
26
29
  }
@@ -8,7 +8,7 @@
8
8
 
9
9
  // Helper class implementing the vd-truncate mixin
10
10
  .vd-text-truncate {
11
- @include vd-truncate();
11
+ @include vd-truncate;
12
12
  }
13
13
 
14
14
  // Helper class implementing white-space: nowrap
@@ -1,10 +1,9 @@
1
1
  @use 'sass:math';
2
-
3
2
  @import 'text-definitions';
4
3
 
5
4
  @mixin font-smoothing {
6
5
  font-synthesis: none;
7
- text-rendering: optimizeLegibility;
6
+ text-rendering: optimizelegibility;
8
7
  -webkit-font-smoothing: antialiased;
9
8
  -moz-osx-font-smoothing: grayscale;
10
9
  }
@@ -71,7 +70,6 @@
71
70
  @include font-smoothing;
72
71
  // Resets to ensure <h#> and <p> elements will have the same margins and text colour
73
72
  word-break: break-word;
74
-
75
73
  margin: 0;
76
74
 
77
75
  @each $property, $value in $_vd-requested-type-styles {
@@ -31,6 +31,7 @@
31
31
  $sass-precision: 5;
32
32
 
33
33
  $pow: pow(10, $digits);
34
+
34
35
  @return math.div(round($float * $pow), $pow);
35
36
  }
36
37
 
@@ -66,6 +67,7 @@
66
67
  @each $key in $keys {
67
68
  $map: map-get($map, $key);
68
69
  }
70
+
69
71
  @return $map;
70
72
  }
71
73
 
@@ -6,13 +6,10 @@
6
6
  ##{map-get($vd-viewport-identifier-map, 'id')} {
7
7
  position: absolute;
8
8
  z-index: -1;
9
-
10
9
  top: 0;
11
10
  left: 0;
12
-
13
11
  width: 0;
14
12
  height: 0;
15
-
16
13
  visibility: hidden;
17
14
  overflow: hidden;
18
15
 
@@ -100,6 +100,7 @@
100
100
 
101
101
  @if (type-of($_viewport-range-min) == 'string') {
102
102
  $_media-min-width: get-viewport-px-width($_viewport-range-min, 'min');
103
+
103
104
  @if ($_media-min-width == null) {
104
105
  @error '[vd-viewport-media-min] Specified viewport range does not have a min range value. Use vd-viewport-media-max instead.';
105
106
  }
@@ -139,6 +140,7 @@
139
140
 
140
141
  @if (type-of($_viewport-range-max) == 'string') {
141
142
  $_media-max-width: get-viewport-px-width($_viewport-range-max, 'max');
143
+
142
144
  @if ($_media-max-width == null) {
143
145
  @error '[vd-viewport-media-max] Specified viewport range does not have a max range value. Use vd-viewport-media-min instead.';
144
146
  }