@volverjs/style 0.1.29 → 0.1.30-beta.1

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 (156) hide show
  1. package/design-tokens.json +503 -7
  2. package/dist/base.css +1 -1
  3. package/dist/components/vv-alert.css +1 -1
  4. package/dist/components/vv-attachment-group.css +1 -0
  5. package/dist/components/vv-attachment.css +1 -0
  6. package/dist/components/vv-avatar.css +1 -1
  7. package/dist/components/vv-badge.css +1 -1
  8. package/dist/components/vv-breadcrumb.css +1 -1
  9. package/dist/components/vv-bubble-group.css +1 -0
  10. package/dist/components/vv-bubble.css +1 -0
  11. package/dist/components/vv-button.css +1 -1
  12. package/dist/components/vv-calendar.css +1 -0
  13. package/dist/components/vv-checkbox-group.css +1 -1
  14. package/dist/components/vv-checkbox.css +1 -1
  15. package/dist/components/vv-command.css +1 -0
  16. package/dist/components/vv-dialog.css +1 -1
  17. package/dist/components/vv-dropdown-action.css +1 -1
  18. package/dist/components/vv-dropdown-option.css +1 -1
  19. package/dist/components/vv-empty.css +1 -0
  20. package/dist/components/vv-field.css +1 -0
  21. package/dist/components/vv-input-file.css +1 -1
  22. package/dist/components/vv-input-otp.css +1 -0
  23. package/dist/components/vv-input-range.css +1 -1
  24. package/dist/components/vv-input-text.css +1 -1
  25. package/dist/components/vv-item-group.css +1 -0
  26. package/dist/components/vv-item.css +1 -0
  27. package/dist/components/vv-kbd-group.css +1 -0
  28. package/dist/components/vv-kbd.css +1 -0
  29. package/dist/components/vv-marker.css +1 -0
  30. package/dist/components/vv-message-scroller.css +1 -0
  31. package/dist/components/vv-message.css +1 -0
  32. package/dist/components/vv-nav.css +1 -1
  33. package/dist/components/vv-pagination.css +1 -0
  34. package/dist/components/vv-popover.css +1 -0
  35. package/dist/components/vv-progress.css +1 -1
  36. package/dist/components/vv-prose.css +1 -0
  37. package/dist/components/vv-questionnaire.css +1 -0
  38. package/dist/components/vv-radio-group.css +1 -1
  39. package/dist/components/vv-radio.css +1 -1
  40. package/dist/components/vv-select.css +1 -1
  41. package/dist/components/vv-separator.css +1 -0
  42. package/dist/components/vv-sidebar.css +1 -0
  43. package/dist/components/vv-spinner.css +1 -0
  44. package/dist/components/vv-table.css +1 -1
  45. package/dist/components/vv-text.css +1 -1
  46. package/dist/components/vv-textarea.css +1 -1
  47. package/dist/components.css +1 -1
  48. package/dist/export.css +1 -1
  49. package/dist/props/colors.css +1 -1
  50. package/dist/props/input.css +1 -1
  51. package/dist/props.css +1 -1
  52. package/dist/themes/dark/components.css +1 -1
  53. package/dist/themes/dark/props.css +1 -1
  54. package/dist/themes/dark/volver.css +1 -1
  55. package/dist/utilities/colors.css +1 -1
  56. package/dist/utilities/layout.css +1 -1
  57. package/dist/utilities.css +1 -1
  58. package/dist/volver.css +1 -1
  59. package/package.json +49 -1
  60. package/src/_config.scss +23 -0
  61. package/src/_preflight.scss +14 -2
  62. package/src/components/index.scss +28 -0
  63. package/src/components/vv-attachment-group.scss +17 -0
  64. package/src/components/vv-attachment.scss +17 -0
  65. package/src/components/vv-bubble-group.scss +17 -0
  66. package/src/components/vv-bubble.scss +17 -0
  67. package/src/components/vv-calendar.scss +25 -0
  68. package/src/components/vv-command.scss +17 -0
  69. package/src/components/vv-empty.scss +17 -0
  70. package/src/components/vv-field.scss +25 -0
  71. package/src/components/vv-input-otp.scss +17 -0
  72. package/src/components/vv-item-group.scss +17 -0
  73. package/src/components/vv-item.scss +39 -0
  74. package/src/components/vv-kbd-group.scss +17 -0
  75. package/src/components/vv-kbd.scss +17 -0
  76. package/src/components/vv-marker.scss +17 -0
  77. package/src/components/vv-message-scroller.scss +24 -0
  78. package/src/components/vv-message.scss +25 -0
  79. package/src/components/vv-pagination.scss +17 -0
  80. package/src/components/vv-popover.scss +17 -0
  81. package/src/components/vv-prose.scss +17 -0
  82. package/src/components/vv-questionnaire.scss +28 -0
  83. package/src/components/vv-separator.scss +17 -0
  84. package/src/components/vv-sidebar.scss +17 -0
  85. package/src/components/vv-spinner.scss +27 -0
  86. package/src/presets/_outlined-fields.scss +346 -0
  87. package/src/props/colors.scss +6 -0
  88. package/src/settings/_colors.scss +161 -61
  89. package/src/settings/_index.scss +26 -0
  90. package/src/settings/_input.scss +9 -0
  91. package/src/settings/components/_choice.scss +104 -0
  92. package/src/settings/components/_vv-alert.scss +37 -12
  93. package/src/settings/components/_vv-attachment-group.scss +10 -0
  94. package/src/settings/components/_vv-attachment.scss +135 -0
  95. package/src/settings/components/_vv-avatar.scss +17 -7
  96. package/src/settings/components/_vv-badge.scss +21 -13
  97. package/src/settings/components/_vv-breadcrumb.scss +1 -1
  98. package/src/settings/components/_vv-bubble-group.scss +31 -0
  99. package/src/settings/components/_vv-bubble.scss +69 -0
  100. package/src/settings/components/_vv-button.scss +48 -5
  101. package/src/settings/components/_vv-calendar.scss +102 -0
  102. package/src/settings/components/_vv-checkbox-group.scss +33 -2
  103. package/src/settings/components/_vv-checkbox.scss +7 -2
  104. package/src/settings/components/_vv-command.scss +99 -0
  105. package/src/settings/components/_vv-dialog.scss +129 -26
  106. package/src/settings/components/_vv-dropdown-action.scss +2 -1
  107. package/src/settings/components/_vv-dropdown-option.scss +3 -3
  108. package/src/settings/components/_vv-empty.scss +71 -0
  109. package/src/settings/components/_vv-field.scss +111 -0
  110. package/src/settings/components/_vv-input-file.scss +6 -6
  111. package/src/settings/components/_vv-input-otp.scss +55 -0
  112. package/src/settings/components/_vv-input-range.scss +2 -2
  113. package/src/settings/components/_vv-input-text.scss +6 -6
  114. package/src/settings/components/_vv-item-group.scss +68 -0
  115. package/src/settings/components/_vv-item.scss +201 -0
  116. package/src/settings/components/_vv-kbd-group.scss +9 -0
  117. package/src/settings/components/_vv-kbd.scss +20 -0
  118. package/src/settings/components/_vv-marker.scss +32 -0
  119. package/src/settings/components/_vv-message-scroller.scss +65 -0
  120. package/src/settings/components/_vv-message.scss +95 -0
  121. package/src/settings/components/_vv-nav.scss +7 -3
  122. package/src/settings/components/_vv-pagination.scss +78 -0
  123. package/src/settings/components/_vv-popover.scss +53 -0
  124. package/src/settings/components/_vv-progress.scss +4 -4
  125. package/src/settings/components/_vv-prose.scss +274 -0
  126. package/src/settings/components/_vv-questionnaire.scss +77 -0
  127. package/src/settings/components/_vv-radio.scss +6 -2
  128. package/src/settings/components/_vv-select.scss +5 -5
  129. package/src/settings/components/_vv-separator.scss +79 -0
  130. package/src/settings/components/_vv-sidebar.scss +91 -0
  131. package/src/settings/components/_vv-spinner.scss +26 -0
  132. package/src/settings/components/_vv-table.scss +63 -0
  133. package/src/settings/components/_vv-text.scss +2 -2
  134. package/src/settings/components/_vv-textarea.scss +6 -6
  135. package/src/themes/dark/components/_vv-checkbox.scss +27 -0
  136. package/src/themes/dark/components/_vv-radio.scss +27 -0
  137. package/src/themes/dark/components/index.scss +2 -0
  138. package/src/themes/dark/props/_colors.scss +6 -0
  139. package/src/themes/dark/settings/_colors.scss +97 -32
  140. package/src/themes/dark/settings/_index.scss +2 -0
  141. package/src/themes/dark/settings/components/_choice.scss +15 -0
  142. package/src/themes/dark/settings/components/_vv-alert.scss +6 -48
  143. package/src/themes/dark/settings/components/_vv-avatar.scss +1 -16
  144. package/src/themes/dark/settings/components/_vv-badge.scss +1 -32
  145. package/src/themes/dark/settings/components/_vv-button.scss +0 -8
  146. package/src/themes/dark/settings/components/_vv-checkbox.scss +7 -0
  147. package/src/themes/dark/settings/components/_vv-dropdown-action.scss +2 -3
  148. package/src/themes/dark/settings/components/_vv-dropdown-option.scss +2 -19
  149. package/src/themes/dark/settings/components/_vv-nav.scss +2 -15
  150. package/src/themes/dark/settings/components/_vv-radio.scss +7 -0
  151. package/src/tools/_functions.scss +430 -2
  152. package/src/tools/mixin-modules/_bem.scss +5 -39
  153. package/src/tools/mixin-modules/_states.scss +77 -0
  154. package/src/tools/mixin-modules/_theme.scss +135 -121
  155. package/src/utilities/colors.scss +49 -4
  156. package/src/utilities/layout.scss +25 -0
@@ -15,7 +15,7 @@ $vv-text: (
15
15
  margin-block: var(--spacing-16),
16
16
  ),
17
17
  link: (
18
- color: var(--color-brand),
18
+ color: var(--color-brand-readable),
19
19
  state: (
20
20
  focus-visible: (
21
21
  outline: var(--spacing-px) solid var(--color-brand),
@@ -26,7 +26,7 @@ $vv-text: (
26
26
  text-underline-offset: var(--spacing-4),
27
27
  ),
28
28
  active: (
29
- color: var(--color-brand-darken-3),
29
+ color: var(--color-brand-readable-strong),
30
30
  ),
31
31
  disabled: (
32
32
  opacity: var(--opacity-50),
@@ -174,13 +174,13 @@ $vv-textarea: (
174
174
  ),
175
175
  ),
176
176
  hint: (
177
- color: var(--input-valid-color),
177
+ color: var(--input-valid-text-color),
178
178
  ),
179
179
  limit: (
180
- color: var(--input-valid-color),
180
+ color: var(--input-valid-text-color),
181
181
  ),
182
182
  icon-after: (
183
- color: var(--input-valid-color),
183
+ color: var(--input-valid-text-color),
184
184
  ),
185
185
  ),
186
186
  ),
@@ -195,13 +195,13 @@ $vv-textarea: (
195
195
  ),
196
196
  ),
197
197
  hint: (
198
- color: var(--input-invalid-color),
198
+ color: var(--input-invalid-text-color),
199
199
  ),
200
200
  limit: (
201
- color: var(--input-invalid-color),
201
+ color: var(--input-invalid-text-color),
202
202
  ),
203
203
  icon-after: (
204
- color: var(--input-invalid-color),
204
+ color: var(--input-invalid-text-color),
205
205
  ),
206
206
  ),
207
207
  ),
@@ -0,0 +1,27 @@
1
+ @use 'sass:map';
2
+ @use '../context' as *;
3
+
4
+ $component-name: map.get($components-names, vv-checkbox);
5
+
6
+ @mixin theme-dark-vv-checkbox {
7
+ @include spread-theme-component(
8
+ $base-map: $vv-checkbox,
9
+ $theme-map: $dark-vv-checkbox,
10
+ $component-name: $component-name,
11
+ $bps: $breakpoints,
12
+ $use-custom-props: $use-custom-props-for-components,
13
+ $zero-specificity: $zero-specificity-for-components
14
+ );
15
+ }
16
+
17
+ @include layer(themes, $use-css-layers, $layer-prefix) {
18
+ :where(:host, :root, .theme):not(.theme--light) {
19
+ @media (prefers-color-scheme: dark) {
20
+ @include theme-dark-vv-checkbox;
21
+ }
22
+ }
23
+
24
+ :where(.theme.theme--dark) {
25
+ @include theme-dark-vv-checkbox;
26
+ }
27
+ }
@@ -0,0 +1,27 @@
1
+ @use 'sass:map';
2
+ @use '../context' as *;
3
+
4
+ $component-name: map.get($components-names, vv-radio);
5
+
6
+ @mixin theme-dark-vv-radio {
7
+ @include spread-theme-component(
8
+ $base-map: $vv-radio,
9
+ $theme-map: $dark-vv-radio,
10
+ $component-name: $component-name,
11
+ $bps: $breakpoints,
12
+ $use-custom-props: $use-custom-props-for-components,
13
+ $zero-specificity: $zero-specificity-for-components
14
+ );
15
+ }
16
+
17
+ @include layer(themes, $use-css-layers, $layer-prefix) {
18
+ :where(:host, :root, .theme):not(.theme--light) {
19
+ @media (prefers-color-scheme: dark) {
20
+ @include theme-dark-vv-radio;
21
+ }
22
+ }
23
+
24
+ :where(.theme.theme--dark) {
25
+ @include theme-dark-vv-radio;
26
+ }
27
+ }
@@ -2,7 +2,9 @@
2
2
  @use 'vv-avatar';
3
3
  @use 'vv-badge';
4
4
  @use 'vv-button';
5
+ @use 'vv-checkbox';
5
6
  @use 'vv-dropdown-action';
6
7
  @use 'vv-dropdown-option';
7
8
  @use 'vv-nav';
9
+ @use 'vv-radio';
8
10
  @use 'vv-select';
@@ -2,6 +2,12 @@
2
2
 
3
3
  @mixin theme-dark-colors {
4
4
  @include spread-map-into-props($dark-colors, 'color');
5
+
6
+ // Safari 17 reads `l` as a percentage: the fixed steps of word and
7
+ // surface, calc(l - 12), resolve there only written in percent
8
+ @supports not (color: hsl(from red h s calc(l + 1))) {
9
+ @include spread-map-into-props(fixed-steps-in-percent($dark-colors), 'color');
10
+ }
5
11
  }
6
12
 
7
13
  @include layer(themes, $use-css-layers, $layer-prefix) {
@@ -7,49 +7,114 @@
7
7
  @use '../../../config' as config;
8
8
 
9
9
  $dark-color-scheme: dark !default;
10
- $dark-color-word: hsl(color-hue($color-brand) 15% 85%) !default;
11
- $dark-color-surface: hsl(color-hue($color-brand) 10% 5%) !default;
10
+
11
+ // Hue from the light tint, as in the light theme: --color-tint is not
12
+ // redeclared here, so a dark brand does not move the neutrals.
13
+ $dark-color-word: hsl(color-hue($color-tint) 15% 85%) !default;
14
+ $dark-color-surface: hsl(color-hue($color-tint) 10% 5%) !default;
15
+
16
+ // Lightness of the tinted surfaces in the dark theme
17
+ $dark-color-surface-tint-lightness: 10% !default;
18
+
19
+ // Lightness between two neutral surfaces in the dark theme
20
+ $dark-color-surface-scale: 5% !default;
21
+
22
+ // `readable-strong` in the dark theme: `readable` with its luminance scaled
23
+ // by this, toward white. The text roles are redeclared here, so they follow
24
+ // the theme in every component and a light rule needs no dark override for
25
+ // its text color.
26
+ $dark-color-readable-strong-factor: 1.5 !default;
27
+
28
+ // The luminance the roles are moved to, on the neutral surfaces down to
29
+ // $color-readable-depth and on the hardest tinted surface of any hue, as in
30
+ // the light theme
31
+ $dark-color-readable-luminance: readable-luminance(
32
+ readable-surface($dark-color-surface, $color-readable-depth * $dark-color-surface-scale),
33
+ $color-readable-ratio
34
+ ) !default;
35
+ $dark-color-surface-readable-luminance: readable-luminance(
36
+ readable-worst-tint($dark-color-surface-tint-lightness),
37
+ $color-readable-ratio
38
+ ) !default;
39
+ $dark-color-graphic-luminance: readable-luminance(
40
+ readable-surface($dark-color-surface, $color-readable-depth * $dark-color-surface-scale),
41
+ $color-graphic-ratio
42
+ ) !default;
12
43
 
13
44
  // Surface palette for dark theme
14
45
  $dark-color-surface-palette: if(
15
46
  sass(config.$use-color-mix):
16
47
  (
17
- brand: string.unquote('hsl(from var(--color-brand) h s 10%)'),
18
- accent: string.unquote('hsl(from var(--color-accent) h s 10%)'),
19
- success: string.unquote('hsl(from var(--color-success) h s 10%)'),
20
- danger: string.unquote('hsl(from var(--color-danger) h s 10%)'),
21
- info: string.unquote('hsl(from var(--color-info) h s 10%)'),
22
- warning: string.unquote('hsl(from var(--color-warning) h s 10%)'),
48
+ brand: string.unquote('hsl(from var(--color-brand) h s #{$dark-color-surface-tint-lightness})'),
49
+ accent: string.unquote('hsl(from var(--color-accent) h s #{$dark-color-surface-tint-lightness})'),
50
+ success: string.unquote('hsl(from var(--color-success) h s #{$dark-color-surface-tint-lightness})'),
51
+ danger: string.unquote('hsl(from var(--color-danger) h s #{$dark-color-surface-tint-lightness})'),
52
+ info: string.unquote('hsl(from var(--color-info) h s #{$dark-color-surface-tint-lightness})'),
53
+ warning: string.unquote('hsl(from var(--color-warning) h s #{$dark-color-surface-tint-lightness})'),
23
54
  );
24
55
  else:
25
56
  (
26
- brand: hsl(var(--color-brand-hue) var(--color-brand-saturation) 10%),
27
- accent: hsl(var(--color-accent-hue) var(--color-accent-saturation) 10%),
28
- success: hsl(var(--color-success-hue) var(--color-success-saturation) 10%),
29
- danger: hsl(var(--color-danger-hue) var(--color-danger-saturation) 10%),
30
- info: hsl(var(--color-info-hue) var(--color-info-saturation) 10%),
31
- warning: hsl(var(--color-warning-hue) var(--color-warning-saturation) 10%),
57
+ brand: hsl(var(--color-brand-hue) var(--color-brand-saturation) $dark-color-surface-tint-lightness),
58
+ accent: hsl(var(--color-accent-hue) var(--color-accent-saturation) $dark-color-surface-tint-lightness),
59
+ success: hsl(var(--color-success-hue) var(--color-success-saturation) $dark-color-surface-tint-lightness),
60
+ danger: hsl(var(--color-danger-hue) var(--color-danger-saturation) $dark-color-surface-tint-lightness),
61
+ info: hsl(var(--color-info-hue) var(--color-info-saturation) $dark-color-surface-tint-lightness),
62
+ warning: hsl(var(--color-warning-hue) var(--color-warning-saturation) $dark-color-surface-tint-lightness),
32
63
  )
33
64
  ) !default;
34
65
 
35
66
  // color map
36
- $dark-colors: if(
37
- sass(config.$use-color-mix):
38
- (
39
- scheme: $dark-color-scheme,
40
- word: color-mix-darken-map($dark-color-word, 'word', $steps: 5, $scale: 12%),
41
- surface: map.merge(
42
- color-mix-lighten-map($dark-color-surface, 'surface', $steps: 5, $scale: 5%),
43
- $dark-color-surface-palette
44
- ),
45
- );
46
- else:
67
+ $dark-colors: map.deep-merge(
68
+ if(
69
+ sass(config.$use-color-mix):
70
+ (
71
+ scheme: $dark-color-scheme,
72
+ word: color-mix-darken-map(
73
+ tinted-neutral-value($dark-color-word, $color-tint, 15%, 85%),
74
+ 'word',
75
+ $steps: 5,
76
+ $scale: 12%
77
+ ),
78
+ surface: map.merge(
79
+ color-mix-lighten-map(
80
+ tinted-neutral-value($dark-color-surface, $color-tint, 10%, 5%),
81
+ 'surface',
82
+ $steps: 5,
83
+ $scale: $dark-color-surface-scale
84
+ ),
85
+ $dark-color-surface-palette
86
+ ),
87
+ );
88
+ else:
89
+ (
90
+ scheme: $dark-color-scheme,
91
+ word: color-darken-map($dark-color-word, 'word', $scale: 12%, $fixed: true),
92
+ surface: map.merge(
93
+ color-lighten-map(
94
+ $dark-color-surface,
95
+ 'surface',
96
+ $scale: $dark-color-surface-scale,
97
+ $fixed: true,
98
+ $inverted: false
99
+ ),
100
+ $dark-color-surface-palette
101
+ ),
102
+ )
103
+ ),
104
+ readable-roles(
47
105
  (
48
- scheme: $dark-color-scheme,
49
- word: color-darken-map($dark-color-word, 'word', $scale: 12%, $fixed: true),
50
- surface: map.merge(
51
- color-lighten-map($dark-color-surface, 'surface', $scale: 5%, $fixed: true, $inverted: false),
52
- $dark-color-surface-palette
53
- ),
54
- )
106
+ brand: $color-brand,
107
+ accent: $color-accent,
108
+ success: $color-success,
109
+ danger: $color-danger,
110
+ info: $color-info,
111
+ warning: $color-warning,
112
+ ),
113
+ $dark-color-readable-luminance,
114
+ $dark-color-surface-readable-luminance,
115
+ $dark-color-graphic-luminance,
116
+ $dark-color-readable-strong-factor,
117
+ $lighten: color-luminance($dark-color-surface) < contrast-threshold(),
118
+ $relative: config.$use-color-mix
119
+ )
55
120
  ) !default;
@@ -5,7 +5,9 @@
5
5
  @forward 'components/vv-avatar';
6
6
  @forward 'components/vv-badge';
7
7
  @forward 'components/vv-button';
8
+ @forward 'components/vv-checkbox';
8
9
  @forward 'components/vv-dropdown-action';
9
10
  @forward 'components/vv-dropdown-option';
10
11
  @forward 'components/vv-nav';
12
+ @forward 'components/vv-radio';
11
13
  @forward 'components/vv-select';
@@ -0,0 +1,15 @@
1
+ // Dark values of the modifiers shared by `vv-radio` and `vv-checkbox`, like
2
+ // `src/settings/components/_choice.scss` on the light side. Loaded by both
3
+ // dark maps and not forwarded.
4
+
5
+ // The chosen tile of a segmented control is raised on the plain surface in
6
+ // the light theme. In the dark one the plain surface is the darkest colour
7
+ // there is and would read as a hole in the `surface-2` track, so the tile
8
+ // takes a lighter step instead.
9
+ $dark-choice-segment: (
10
+ state: (
11
+ checked-within: (
12
+ background-color: var(--color-surface-4),
13
+ ),
14
+ ),
15
+ );
@@ -12,48 +12,6 @@ $dark-vv-alert: (
12
12
  ),
13
13
  ),
14
14
  ),
15
- success: (
16
- element: (
17
- header: (
18
- color: var(--color-success-lighten-3),
19
- ),
20
- ),
21
- ),
22
- warning: (
23
- element: (
24
- header: (
25
- color: var(--color-warning),
26
- ),
27
- ),
28
- ),
29
- danger: (
30
- element: (
31
- header: (
32
- color: var(--color-danger-lighten-5),
33
- ),
34
- ),
35
- ),
36
- accent: (
37
- element: (
38
- header: (
39
- color: var(--color-accent-lighten-4),
40
- ),
41
- ),
42
- ),
43
- brand: (
44
- element: (
45
- header: (
46
- color: var(--color-brand-lighten-3),
47
- ),
48
- ),
49
- ),
50
- info: (
51
- element: (
52
- header: (
53
- color: var(--color-info),
54
- ),
55
- ),
56
- ),
57
15
  notification: (
58
16
  border-color: var(--color-gray-lighten-3),
59
17
  modifier: (
@@ -61,7 +19,7 @@ $dark-vv-alert: (
61
19
  border-color: var(--color-danger-lighten-3),
62
20
  element: (
63
21
  header: (
64
- color: var(--color-white)
22
+ color: var(--color-danger-contrast)
65
23
  ),
66
24
  ),
67
25
  ),
@@ -69,7 +27,7 @@ $dark-vv-alert: (
69
27
  border-color: var(--color-brand-lighten-3),
70
28
  element: (
71
29
  header: (
72
- color: var(--color-white)
30
+ color: var(--color-brand-contrast)
73
31
  ),
74
32
  ),
75
33
  ),
@@ -77,7 +35,7 @@ $dark-vv-alert: (
77
35
  border-color: var(--color-success-lighten-3),
78
36
  element: (
79
37
  header: (
80
- color: var(--color-white)
38
+ color: var(--color-success-contrast)
81
39
  ),
82
40
  ),
83
41
  ),
@@ -85,7 +43,7 @@ $dark-vv-alert: (
85
43
  border-color: var(--color-accent-lighten-3),
86
44
  element: (
87
45
  header: (
88
- color: var(--color-white)
46
+ color: var(--color-accent-contrast)
89
47
  ),
90
48
  ),
91
49
  ),
@@ -93,7 +51,7 @@ $dark-vv-alert: (
93
51
  border-color: var(--color-warning-darken-5),
94
52
  element: (
95
53
  header: (
96
- color: var(--color-white),
54
+ color: var(--color-warning-darken-5-contrast),
97
55
  background-color: var(--color-warning-darken-5),
98
56
  ),
99
57
  ),
@@ -102,7 +60,7 @@ $dark-vv-alert: (
102
60
  border-color: var(--color-info-darken-2),
103
61
  element: (
104
62
  header: (
105
- color: var(--color-white),
63
+ color: var(--color-info-darken-5-contrast),
106
64
  background-color: var(--color-info-darken-5),
107
65
  ),
108
66
  ),
@@ -1,26 +1,11 @@
1
1
  $dark-vv-avatar: (
2
2
  modifier: (
3
+ // The colored rings take the readable roles, which follow the theme
3
4
  ring: (
4
- color: var(--color-brand-lighten-3),
5
5
  modifier: (
6
- danger: (
7
- color: var(--color-danger-lighten-5),
8
- ),
9
- success: (
10
- color: var(--color-success-lighten-3),
11
- ),
12
- warning: (
13
- color: var(--color-warning),
14
- ),
15
6
  gray: (
16
7
  color: var(--color-gray-lighten-3),
17
8
  ),
18
- info: (
19
- color: var(--color-info),
20
- ),
21
- accent: (
22
- color: var(--color-accent-lighten-5),
23
- ),
24
9
  surface: (
25
10
  color: var(--color-word-2),
26
11
  ),
@@ -1,46 +1,15 @@
1
+ // The colored variants take the readable roles, which follow the theme
1
2
  $dark-vv-badge: (
2
3
  modifier: (
3
4
  outline: (
4
- color: var(--color-brand-lighten-3),
5
5
  modifier: (
6
- danger: (
7
- color: var(--color-danger-lighten-3),
8
- ),
9
- success: (
10
- color: var(--color-success-lighten-3),
11
- ),
12
- warning: (
13
- color: var(--color-warning),
14
- ),
15
- info: (
16
- color: var(--color-info),
17
- ),
18
- accent: (
19
- color: var(--color-accent-lighten-3),
20
- ),
21
6
  gray: (
22
7
  color: var(--color-gray-lighten-3),
23
8
  ),
24
9
  ),
25
10
  ),
26
11
  ghost: (
27
- color: var(--color-brand-lighten-3),
28
12
  modifier: (
29
- danger: (
30
- color: var(--color-danger-lighten-3),
31
- ),
32
- success: (
33
- color: var(--color-success-lighten-3),
34
- ),
35
- warning: (
36
- color: var(--color-warning),
37
- ),
38
- info: (
39
- color: var(--color-info),
40
- ),
41
- accent: (
42
- color: var(--color-accent-lighten-3),
43
- ),
44
13
  gray: (
45
14
  color: var(--color-gray-lighten-3),
46
15
  ),
@@ -50,13 +50,5 @@ $dark-vv-button: (
50
50
  ),
51
51
  ),
52
52
  ),
53
- link: (
54
- color: var(--color-brand-lighten-3),
55
- state: (
56
- active: (
57
- color: var(--color-brand-lighten-2),
58
- ),
59
- ),
60
- ),
61
53
  ),
62
54
  ) !default;
@@ -0,0 +1,7 @@
1
+ @use 'choice' as *;
2
+
3
+ $dark-vv-checkbox: (
4
+ modifier: (
5
+ segment: $dark-choice-segment,
6
+ ),
7
+ );
@@ -1,3 +1,2 @@
1
- $dark-vv-dropdown-action: (
2
- color: var(--color-brand-lighten-3),
3
- );
1
+ // Its text colors are the readable roles, which the dark theme redeclares
2
+ $dark-vv-dropdown-action: ();
@@ -1,19 +1,2 @@
1
- $dark-vv-dropdown-option: (
2
- state: (
3
- focus-visible: (
4
- color: var(--color-success-lighten-3),
5
- ),
6
- selected: (
7
- color: var(--color-brand-lighten-3),
8
- ),
9
- ),
10
- modifier: (
11
- unselectable: (
12
- state: (
13
- focus-visible: (
14
- color: var(--color-danger-lighten-5),
15
- ),
16
- ),
17
- ),
18
- ),
19
- );
1
+ // Its text colors are the readable roles, which the dark theme redeclares
2
+ $dark-vv-dropdown-option: ();
@@ -1,15 +1,2 @@
1
- $dark-vv-nav: (
2
- modifier: (
3
- tabs: (
4
- element: (
5
- item-label: (
6
- state: (
7
- current: (
8
- color: var(--color-brand-lighten-3),
9
- ),
10
- ),
11
- ),
12
- ),
13
- ),
14
- ),
15
- );
1
+ // Its text colors are the readable roles, which the dark theme redeclares
2
+ $dark-vv-nav: ();
@@ -0,0 +1,7 @@
1
+ @use 'choice' as *;
2
+
3
+ $dark-vv-radio: (
4
+ modifier: (
5
+ segment: $dark-choice-segment,
6
+ ),
7
+ );