@volverjs/style 0.1.12-beta.8 → 0.1.12

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 (98) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +1 -1
  3. package/dist/base.css +1 -1
  4. package/dist/components/vv-accordion-group.css +1 -1
  5. package/dist/components/vv-accordion.css +1 -1
  6. package/dist/components/vv-alert-group.css +1 -1
  7. package/dist/components/vv-alert.css +1 -1
  8. package/dist/components/vv-avatar-group.css +1 -1
  9. package/dist/components/vv-avatar.css +1 -1
  10. package/dist/components/vv-badge.css +1 -1
  11. package/dist/components/vv-breadcrumb.css +1 -1
  12. package/dist/components/vv-button-group.css +1 -1
  13. package/dist/components/vv-button.css +1 -1
  14. package/dist/components/vv-card.css +1 -1
  15. package/dist/components/vv-checkbox-group.css +1 -1
  16. package/dist/components/vv-checkbox.css +1 -1
  17. package/dist/components/vv-dialog.css +1 -1
  18. package/dist/components/vv-dropdown-action.css +1 -1
  19. package/dist/components/vv-dropdown-optgroup.css +1 -1
  20. package/dist/components/vv-dropdown-option.css +1 -1
  21. package/dist/components/vv-dropdown.css +1 -1
  22. package/dist/components/vv-input-file.css +1 -1
  23. package/dist/components/vv-input-text.css +1 -1
  24. package/dist/components/vv-nav.css +1 -1
  25. package/dist/components/vv-progress.css +1 -1
  26. package/dist/components/vv-radio-group.css +1 -1
  27. package/dist/components/vv-radio.css +1 -1
  28. package/dist/components/vv-select.css +1 -1
  29. package/dist/components/vv-skeleton.css +1 -1
  30. package/dist/components/vv-tab.css +1 -1
  31. package/dist/components/vv-table.css +1 -1
  32. package/dist/components/vv-text.css +1 -1
  33. package/dist/components/vv-textarea.css +1 -1
  34. package/dist/components/vv-tooltip.css +1 -1
  35. package/dist/components.css +1 -1
  36. package/dist/export.css +1 -1
  37. package/dist/props/background.css +1 -1
  38. package/dist/props/colors.css +1 -1
  39. package/dist/props/input.css +1 -1
  40. package/dist/props/spacing.css +1 -1
  41. package/dist/props/transitions.css +1 -1
  42. package/dist/props/typography.css +1 -1
  43. package/dist/props.css +1 -1
  44. package/dist/themes/dark/props.css +1 -1
  45. package/dist/themes/dark/volver.css +1 -1
  46. package/dist/utilities/backgrounds.css +1 -1
  47. package/dist/utilities/colors.css +1 -1
  48. package/dist/utilities/effects.css +1 -1
  49. package/dist/utilities/interactivity.css +1 -1
  50. package/dist/utilities/sizing.css +1 -1
  51. package/dist/utilities/transforms.css +1 -1
  52. package/dist/utilities/typography.css +1 -1
  53. package/dist/utilities.css +1 -1
  54. package/dist/volver.css +1 -1
  55. package/package.json +37 -36
  56. package/src/_preflight.scss +31 -1
  57. package/src/components/vv-button-group.scss +6 -6
  58. package/src/components/vv-tooltip.scss +1 -1
  59. package/src/export.scss +16 -14
  60. package/src/props/breakpoints.scss +5 -4
  61. package/src/props/spacing.scss +2 -2
  62. package/src/props/typography.scss +3 -2
  63. package/src/settings/_colors.scss +11 -11
  64. package/src/settings/_effects.scss +3 -3
  65. package/src/settings/_input.scss +2 -2
  66. package/src/settings/_interactivity.scss +14 -0
  67. package/src/settings/_typography.scss +9 -1
  68. package/src/settings/components/_vv-accordion-group.scss +2 -2
  69. package/src/settings/components/_vv-accordion.scss +2 -0
  70. package/src/settings/components/_vv-alert-group.scss +5 -2
  71. package/src/settings/components/_vv-alert.scss +1 -1
  72. package/src/settings/components/_vv-avatar-group.scss +1 -0
  73. package/src/settings/components/_vv-avatar.scss +12 -8
  74. package/src/settings/components/_vv-badge.scss +2 -0
  75. package/src/settings/components/_vv-breadcrumb.scss +1 -0
  76. package/src/settings/components/_vv-button.scss +1 -0
  77. package/src/settings/components/_vv-card.scss +2 -0
  78. package/src/settings/components/_vv-checkbox-group.scss +2 -0
  79. package/src/settings/components/_vv-checkbox.scss +6 -0
  80. package/src/settings/components/_vv-dialog.scss +1 -0
  81. package/src/settings/components/_vv-input-file.scss +32 -3
  82. package/src/settings/components/_vv-input-text.scss +4 -1
  83. package/src/settings/components/_vv-nav.scss +1 -1
  84. package/src/settings/components/_vv-radio.scss +1 -0
  85. package/src/settings/components/_vv-select.scss +4 -1
  86. package/src/settings/components/_vv-table.scss +19 -1
  87. package/src/settings/components/_vv-textarea.scss +5 -1
  88. package/src/themes/dark/settings/_colors.scss +8 -8
  89. package/src/tools/_breakpoints.scss +13 -4
  90. package/src/tools/_functions.scss +100 -26
  91. package/src/tools/_mixins.scss +68 -24
  92. package/src/utilities/flexbox.scss +6 -1
  93. package/src/utilities/interactivity.scss +17 -1
  94. package/src/utilities/layout.scss +9 -3
  95. package/src/utilities/sizing.scss +10 -2
  96. package/src/utilities/spacing.scss +10 -1
  97. package/src/utilities/transforms.scss +2 -2
  98. package/src/utilities/typography.scss +11 -0
package/package.json CHANGED
@@ -24,11 +24,10 @@
24
24
  "bugs": {
25
25
  "url": "https://github.com/volverjs/style/issues"
26
26
  },
27
- "version": "0.1.12-beta.8",
27
+ "version": "0.1.12",
28
28
  "engines": {
29
29
  "node": ">= 12.x"
30
30
  },
31
- "packageManager": "pnpm@7.8.0",
32
31
  "type": "module",
33
32
  "main": "dist/volver.css",
34
33
  "style": "dist/volver.css",
@@ -37,48 +36,47 @@
37
36
  "dist/*"
38
37
  ],
39
38
  "devDependencies": {
40
- "@iconify/vue": "^4.1.1",
41
- "@vitejs/plugin-vue": "^4.3.4",
42
- "@vueuse/core": "^10.4.1",
39
+ "@iconify/vue": "^4.1.2",
40
+ "@vitejs/plugin-vue": "^5.1.4",
41
+ "@vueuse/core": "^11.1.0",
43
42
  "@vueuse/head": "^2.0.0",
44
- "eslint": "^8.49.0",
45
- "eslint-config-prettier": "^9.0.0",
46
- "eslint-plugin-vue": "^9.17.0",
47
- "glob": "^10.3.4",
43
+ "eslint-config-prettier": "^9.1.0",
44
+ "eslint-plugin-vue": "^9.28.0",
45
+ "glob": "^11.0.0",
48
46
  "icss-utils": "^5.1.0",
49
- "markdown-it-anchor": "^8.6.7",
47
+ "markdown-it-anchor": "^9.2.0",
50
48
  "markdown-it-prism": "^2.3.0",
51
- "postcss": "^8.4.29",
52
- "postcss-html": "^1.5.0",
53
- "postcss-preset-env": "^9.1.3",
49
+ "postcss": "^8.4.47",
50
+ "postcss-html": "^1.7.0",
51
+ "postcss-preset-env": "^10.0.5",
52
+ "prettier": "^3.3.3",
54
53
  "prism-themes": "^1.9.0",
55
54
  "prismjs": "^1.29.0",
56
55
  "reduce-css-calc": "^2.1.8",
57
- "remark": "^14.0.3",
58
- "remark-frontmatter": "^4.0.1",
59
- "remark-gfm": "^3.0.1",
60
- "remark-lint": "^9.1.2",
61
- "sass": "^1.66.1",
62
- "stylelint": "^15.10.3",
63
- "stylelint-config-prettier": "^9.0.5",
64
- "stylelint-config-recommended-scss": "^13.0.0",
56
+ "remark": "^15.0.1",
57
+ "remark-frontmatter": "^5.0.0",
58
+ "remark-gfm": "^4.0.0",
59
+ "remark-lint": "^10.0.0",
60
+ "sass": "^1.79.4",
61
+ "stylelint": "^16.9.0",
62
+ "stylelint-config-recommended-scss": "^14.1.0",
65
63
  "stylelint-config-recommended-vue": "^1.5.0",
66
- "stylelint-config-standard-scss": "^11.0.0",
67
- "unplugin-auto-import": "^0.16.6",
68
- "unplugin-vue-components": "^0.25.2",
69
- "vite": "^4.4.9",
70
- "vite-plugin-css-export": "^2.0.0",
64
+ "stylelint-config-standard-scss": "^13.1.0",
65
+ "unplugin-auto-import": "^0.18.3",
66
+ "unplugin-vue-components": "^0.27.4",
67
+ "vite": "^5.4.8",
68
+ "vite-plugin-css-export": "^3.0.0",
71
69
  "vite-plugin-eslint": "^1.8.1",
72
- "vite-plugin-handlebars": "^1.6.0",
73
- "vite-plugin-markdown": "^2.1.0",
74
- "vite-plugin-pages": "^0.31.0",
75
- "vite-plugin-stylelint": "^5.1.1",
76
- "vite-plugin-vue-layouts": "^0.8.0",
77
- "vite-ssg": "^0.23.1",
78
- "vite-ssg-sitemap": "^0.5.1",
79
- "vue": "^3.3.4",
70
+ "vite-plugin-handlebars": "^2.0.0",
71
+ "vite-plugin-markdown": "^2.2.0",
72
+ "vite-plugin-pages": "^0.32.3",
73
+ "vite-plugin-stylelint": "^5.3.1",
74
+ "vite-plugin-vue-layouts": "^0.11.0",
75
+ "vite-ssg": "^0.23.8",
76
+ "vite-ssg-sitemap": "^0.8.1",
77
+ "vue": "^3.5.11",
80
78
  "vue-live": "^2.5.4",
81
- "vue-router": "^4.2.4"
79
+ "vue-router": "^4.4.5"
82
80
  },
83
81
  "exports": {
84
82
  ".": "./dist/volver.css",
@@ -88,6 +86,8 @@
88
86
  "./scss/mixins": "./src/tools/_mixins.scss",
89
87
  "./scss/settings": "./src/settings/_index.scss",
90
88
  "./scss/preflight": "./src/_preflight.scss",
89
+ "./scss/themes/dark/context": "./src/themes/dark/_context.scss",
90
+ "./scss/themes/dark/settings": "./src/themes/dark/settings/_index.scss",
91
91
  "./scss": "./src/volver.scss",
92
92
  "./reset": "./dist/reset.css",
93
93
  "./scss/reset": "./src/reset.scss",
@@ -230,6 +230,7 @@
230
230
  "dev": "vite --port 3000 --open",
231
231
  "build": "node ./scripts/build.js",
232
232
  "design-tokens": "node ./scripts/generateDesignTokens.js",
233
- "styleguide": "vite-ssg build"
233
+ "styleguide": "vite-ssg build",
234
+ "preview": "vite preview"
234
235
  }
235
236
  }
@@ -36,6 +36,8 @@
36
36
  &:where(p) {
37
37
  @extend %vv-text !optional;
38
38
  @extend %vv-text--copy !optional;
39
+ @extend %overflow-hidden !optional;
40
+ @extend %text-ellipsis !optional;
39
41
  }
40
42
 
41
43
  &:where(blockquote) {
@@ -53,10 +55,30 @@
53
55
  @extend %list-disc !optional;
54
56
  }
55
57
 
56
- &:where(ol) {
58
+ &:where(ol, ol[type='1']) {
57
59
  @extend %list-decimal !optional;
58
60
  }
59
61
 
62
+ &:where(ol[type='a']) {
63
+ @extend %list-lower-latin !optional;
64
+ }
65
+
66
+ &:where(ol[type='A']) {
67
+ @extend %list-upper-latin !optional;
68
+ }
69
+
70
+ &:where(ol[type='i']) {
71
+ @extend %list-lower-roman !optional;
72
+ }
73
+
74
+ &:where(ol[type='I']) {
75
+ @extend %list-upper-roman !optional;
76
+ }
77
+
78
+ &:where(li > p) {
79
+ @extend %inline !optional;
80
+ }
81
+
60
82
  &:where(b, strong, th) {
61
83
  @extend %font-bold !optional;
62
84
  }
@@ -84,6 +106,7 @@
84
106
  &:where(abbr) {
85
107
  @extend %underline !optional;
86
108
  @extend %decoration-dotted !optional;
109
+ @extend %cursor-help !optional;
87
110
  }
88
111
 
89
112
  &:where(code) {
@@ -217,6 +240,7 @@
217
240
  // table
218
241
  &:where(table) {
219
242
  @extend %vv-table !optional;
243
+ @extend %vv-table--bordered !optional;
220
244
 
221
245
  :where(tr) {
222
246
  @extend %vv-table__tr !optional;
@@ -224,10 +248,16 @@
224
248
 
225
249
  :where(td) {
226
250
  @extend %vv-table__td !optional;
251
+ @extend %vv-table-modifier-bordered__td !optional;
227
252
  }
228
253
 
229
254
  :where(th) {
230
255
  @extend %vv-table__th !optional;
256
+ @extend %vv-table-modifier-bordered__th !optional;
257
+ }
258
+
259
+ :where(caption) {
260
+ @extend %vv-table__caption !optional;
231
261
  }
232
262
  }
233
263
 
@@ -48,7 +48,7 @@ $button-component-selector: '.' + $button-component-name;
48
48
  #{$button-component-selector} {
49
49
  // clear top border-radius for first child
50
50
  @include wrap-with-where(
51
- $selector: '&:not(:first-child)',
51
+ $selector: '&:not(:first-of-type)',
52
52
  $enabled: $zero-specificity-for-components
53
53
  ) {
54
54
  border-top-right-radius: 0;
@@ -57,7 +57,7 @@ $button-component-selector: '.' + $button-component-name;
57
57
 
58
58
  // clear bottom border-radius for last child
59
59
  @include wrap-with-where(
60
- $selector: '&:not(:last-child)',
60
+ $selector: '&:not(:last-of-type)',
61
61
  $enabled: $zero-specificity-for-components
62
62
  ) {
63
63
  border-bottom-right-radius: 0;
@@ -67,7 +67,7 @@ $button-component-selector: '.' + $button-component-name;
67
67
  // clear margin for inner children
68
68
  @if map.get($vv-button, '--button-border-width') {
69
69
  @include wrap-with-where(
70
- $selector: '&:not(:last-child, :last-child)',
70
+ $selector: '&:not(:first-of-type, :last-of-type)',
71
71
  $enabled: $zero-specificity-for-components
72
72
  ) {
73
73
  margin-block: calc(var(--button-border-width) * -1);
@@ -81,7 +81,7 @@ $button-component-selector: '.' + $button-component-name;
81
81
  #{$button-component-selector} {
82
82
  // clear left border-radius for first child
83
83
  @include wrap-with-where(
84
- $selector: '&:not(:first-child)',
84
+ $selector: '&:not(:first-of-type)',
85
85
  $enabled: $zero-specificity-for-components
86
86
  ) {
87
87
  border-top-left-radius: 0;
@@ -90,7 +90,7 @@ $button-component-selector: '.' + $button-component-name;
90
90
 
91
91
  // clear right border-radius for first child
92
92
  @include wrap-with-where(
93
- $selector: '&:not(:last-child)',
93
+ $selector: '&:not(:last-of-type)',
94
94
  $enabled: $zero-specificity-for-components
95
95
  ) {
96
96
  border-top-right-radius: 0;
@@ -100,7 +100,7 @@ $button-component-selector: '.' + $button-component-name;
100
100
  // clear margin for inner children
101
101
  @if map.get($vv-button, '--button-border-width') {
102
102
  @include wrap-with-where(
103
- $selector: '&:not(:last-child, :last-child)',
103
+ $selector: '&:not(:first-of-type, :last-of-type)',
104
104
  $enabled: $zero-specificity-for-components
105
105
  ) {
106
106
  margin-inline: calc(var(--button-border-width) * -1);
@@ -14,7 +14,7 @@ $component-selector: '.#{ $component-name}';
14
14
  );
15
15
 
16
16
  @include wrap-with-where(
17
- $selector: '*:has(#{$component-selector})',
17
+ $selector: '*:has(> #{$component-selector})',
18
18
  $enabled: $zero-specificity-for-components
19
19
  ) {
20
20
  position: relative;
package/src/export.scss CHANGED
@@ -11,13 +11,13 @@
11
11
  // #region CUSTOMIZATION
12
12
  // colors
13
13
  @each $key, $value in $colors {
14
- @if type-of($value) == 'map' {
14
+ @if meta.type-of($value) == 'map' {
15
15
  @each $subKey, $subValue in $value {
16
- @if type-of($value) not 'map' {
16
+ @if meta.type-of($value) not 'map' {
17
17
  @if not
18
- str-index($subKey, 'hue') and not
19
- str-index($subKey, 'saturation') and not
20
- str-index($subKey, 'lightness')
18
+ string.index($subKey, 'hue') and not
19
+ string.index($subKey, 'saturation') and not
20
+ string.index($subKey, 'lightness')
21
21
  {
22
22
  @if '' + $key == $subKey {
23
23
  #{'colors__' + $key}: $subValue;
@@ -35,13 +35,13 @@
35
35
  }
36
36
 
37
37
  @each $key, $value in $dark-colors {
38
- @if type-of($value) == 'map' {
38
+ @if meta.type-of($value) == 'map' {
39
39
  @each $subKey, $subValue in $value {
40
- @if type-of($value) not 'map' {
40
+ @if meta.type-of($value) not 'map' {
41
41
  @if not
42
- str-index($subKey, 'hue') and not
43
- str-index($subKey, 'saturation') and not
44
- str-index($subKey, 'lightness')
42
+ string.index($subKey, 'hue') and not
43
+ string.index($subKey, 'saturation') and not
44
+ string.index($subKey, 'lightness')
45
45
  {
46
46
  @if '' + $key == $subKey {
47
47
  #{'dark-colors__' + $key}: $subValue;
@@ -233,10 +233,11 @@
233
233
  @each $size, $value in $spacing {
234
234
  spacing__#{$size}: $value;
235
235
  }
236
+
236
237
  @each $size, $value in $spacing-dynamic {
237
- @if type-of($value) == 'map' {
238
+ @if meta.type-of($value) == 'map' {
238
239
  @each $subKey, $subValue in $value {
239
- @if type-of($value) not 'map' {
240
+ @if meta.type-of($value) not 'map' {
240
241
  spacing-dynamic__#{$size}__#{$subKey}: $subValue;
241
242
  }
242
243
  }
@@ -247,10 +248,11 @@
247
248
  @each $size, $value in $font-size {
248
249
  font-size__#{$size}: $value;
249
250
  }
251
+
250
252
  @each $size, $value in $font-size-dynamic {
251
- @if type-of($value) == 'map' {
253
+ @if meta.type-of($value) == 'map' {
252
254
  @each $subKey, $subValue in $value {
253
- @if type-of($value) not 'map' {
255
+ @if meta.type-of($value) not 'map' {
254
256
  font-size-dynamic__#{$size}__#{$subKey}: $subValue;
255
257
  }
256
258
  }
@@ -2,14 +2,15 @@
2
2
  @use '../context' as *;
3
3
 
4
4
  :where(:host, :root, .theme) {
5
+ @include spread-map-into-props(
6
+ $map: map.remove($breakpoints, 'xxs'),
7
+ $prefix: breakpoint
8
+ );
9
+
5
10
  @each $breakpoint, $breakpoint-value in $breakpoints {
6
11
  @media screen and (min-width: $breakpoint-value) {
7
12
  --breakpoint-key: #{$breakpoint};
8
13
  --breakpoint-value: #{$breakpoint-value};
9
14
  }
10
15
  }
11
- @include spread-map-into-props(
12
- $map: map.remove($breakpoints, 'xxs'),
13
- $prefix: breakpoint
14
- );
15
16
  }
@@ -10,12 +10,12 @@
10
10
  // dynamic
11
11
  @each $name, $sizes in $spacing-dynamic {
12
12
  @each $breakpoint, $size in $sizes {
13
- @if map-has-key($breakpoints, $breakpoint) {
13
+ @if map.has-key($breakpoints, $breakpoint) {
14
14
  @include media-breakpoint-up($breakpoint, $breakpoints) {
15
15
  $var: $size;
16
16
 
17
17
  // if is a static spacing
18
- @if map-has-key($spacing, $size) {
18
+ @if map.has-key($spacing, $size) {
19
19
  $var: var(--spacing-#{$size});
20
20
  }
21
21
 
@@ -1,3 +1,4 @@
1
+ @use 'sass:map';
1
2
  @use '../context' as *;
2
3
 
3
4
  :where(:host, :root, .theme) {
@@ -21,12 +22,12 @@
21
22
  // font-size dynamic
22
23
  @each $name, $sizes in $font-size-dynamic {
23
24
  @each $breakpoint, $size in $sizes {
24
- @if map-has-key($breakpoints, $breakpoint) {
25
+ @if map.has-key($breakpoints, $breakpoint) {
25
26
  @include media-breakpoint-up($breakpoint, $breakpoints) {
26
27
  $var: $size;
27
28
 
28
29
  // if is a static font-size
29
- @if map-has-key($font-size, $size) {
30
+ @if map.has-key($font-size, $size) {
30
31
  $var: var(--text-#{$size});
31
32
  }
32
33
 
@@ -13,9 +13,9 @@ $color-success: #178230 !default;
13
13
  $color-danger: #af2323 !default;
14
14
  $color-info: #31ccec !default;
15
15
  $color-warning: #e7b735 !default;
16
- $color-gray: hsl(color.hue($color-brand) 15% 50%) !default;
17
- $color-word: hsl(color.hue($color-brand) 15% 10%) !default;
18
- $color-surface: hsl(color.hue($color-brand) 10% 100%) !default;
16
+ $color-gray: hsl(color-hue($color-brand) 15% 50%) !default;
17
+ $color-word: hsl(color-hue($color-brand) 15% 10%) !default;
18
+ $color-surface: hsl(color-hue($color-brand) 10% 100%) !default;
19
19
  $color-surface-palette: (
20
20
  brand: hsl(var(--color-brand-hue) var(--color-brand-saturation) 90%),
21
21
  accent: hsl(var(--color-accent-hue) var(--color-accent-saturation) 90%),
@@ -25,15 +25,15 @@ $color-surface-palette: (
25
25
  warning: hsl(var(--color-warning-hue) var(--color-warning-saturation) 90%),
26
26
  ) !default;
27
27
  $color-surface-palette-no-vars: (
28
- brand: hsl(color.hue($color-brand) color.saturation($color-brand) 90%),
29
- accent: hsl(color.hue($color-accent) color.saturation($color-accent) 90%),
30
- success: hsl(color.hue($color-success) color.saturation($color-success) 90%),
31
- danger: hsl(color.hue($color-danger) color.saturation($color-danger) 90%),
32
- info: hsl(color.hue($color-info) color.saturation($color-info) 90%),
33
- warning: hsl(color.hue($color-warning) color.saturation($color-warning) 90%),
28
+ brand: hsl(color-hue($color-brand) color-saturation($color-brand) 90%),
29
+ accent: hsl(color-hue($color-accent) color-saturation($color-accent) 90%),
30
+ success: hsl(color-hue($color-success) color-saturation($color-success) 90%),
31
+ danger: hsl(color-hue($color-danger) color-saturation($color-danger) 90%),
32
+ info: hsl(color-hue($color-info) color-saturation($color-info) 90%),
33
+ warning: hsl(color-hue($color-warning) color-saturation($color-warning) 90%),
34
34
  ) !default;
35
- $color-shadow: hsl(color.hue($color-brand) 50% 20%) !default;
36
- $color-backdrop: hsla(color.hue($color-brand) 50% 20% / 20%) !default;
35
+ $color-shadow: hsl(color-hue($color-brand) 50% 20%) !default;
36
+ $color-backdrop: hsla(color-hue($color-brand) 50% 20% / 20%) !default;
37
37
  $color-alpha: hsl(0deg 0% 0% / 0%) !default;
38
38
 
39
39
  // colors map
@@ -22,9 +22,9 @@ $box-shadow: (
22
22
  ) !default;
23
23
 
24
24
  // box-shadow without css vars
25
- $color-shadow-hue: color.hue(colors.$color-shadow);
26
- $color-shadow-saturation: color.saturation(colors.$color-shadow);
27
- $color-shadow-lightness: color.lightness(colors.$color-shadow);
25
+ $color-shadow-hue: color-hue(colors.$color-shadow);
26
+ $color-shadow-saturation: color-saturation(colors.$color-shadow);
27
+ $color-shadow-lightness: color-lightness(colors.$color-shadow);
28
28
 
29
29
  // opacity
30
30
  $opacity: (
@@ -11,10 +11,10 @@ $input: (
11
11
  line-height: var(--leading-normal),
12
12
  min-height: var(--spacing-52),
13
13
  min-width: 0,
14
+ spacing-top: var(--spacing-sm),
15
+ spacing-right: var(--spacing-sm),
14
16
  spacing-bottom: var(--spacing-sm),
15
17
  spacing-left: var(--spacing-sm),
16
- spacing-right: var(--spacing-sm),
17
- spacing-top: var(--spacing-sm),
18
18
  text-overflow: ellipsis,
19
19
  label: (
20
20
  color: var(--color-word-2),
@@ -37,3 +37,17 @@ $cursor: (
37
37
  zoom-in: zoom-in,
38
38
  zoom-out: zoom-out,
39
39
  ) !default;
40
+
41
+ // pointer events
42
+ $pointer-events: (
43
+ none: none,
44
+ auto: auto,
45
+ ) !default;
46
+
47
+ // user select
48
+ $user-select: (
49
+ none: none,
50
+ text: text,
51
+ all: all,
52
+ auto: auto,
53
+ ) !default;
@@ -114,7 +114,15 @@ $font-variant-numeric: (
114
114
  ) !default;
115
115
 
116
116
  // list-style-type
117
- $list-style-type: (none, disc, decimal) !default;
117
+ $list-style-type: (
118
+ none,
119
+ disc,
120
+ decimal,
121
+ lower-latin,
122
+ upper-latin,
123
+ lower-roman,
124
+ upper-roman
125
+ ) !default;
118
126
 
119
127
  // list-style-position
120
128
  $list-style-position: (inside, outside) !default;
@@ -1,7 +1,7 @@
1
1
  $vv-accordion-group: (
2
2
  display: flex,
3
3
  flex-direction: column,
4
- gap: var(--spacing-sm),
4
+ [gap]: var(--spacing-sm),
5
5
  element: (
6
6
  not-last-child: (
7
7
  _alias: '> details:not(:last-child)',
@@ -9,7 +9,7 @@ $vv-accordion-group: (
9
9
  ),
10
10
  modifier: (
11
11
  condensed: (
12
- gap: 0,
12
+ gap: var(--spacing-0),
13
13
  element: (
14
14
  not-last-child: (
15
15
  border-bottom-width: 0,
@@ -32,6 +32,7 @@ $vv-accordion: (
32
32
  element: (
33
33
  summary: (
34
34
  _alias: '> summary',
35
+ _combinator: '>',
35
36
  position: relative,
36
37
  cursor: pointer,
37
38
  user-select: none,
@@ -83,6 +84,7 @@ $vv-accordion: (
83
84
  ),
84
85
  content: (
85
86
  _alias: '> summary + *',
87
+ _combinator: '>',
86
88
  padding-block: var(--spacing-sm),
87
89
  [padding-inline]: var(--accordion-padding-left)
88
90
  var(--accordion-padding-right),
@@ -9,6 +9,7 @@ $vv-alert-group: (
9
9
  element: (
10
10
  list: (
11
11
  _alias: '> [role="group"]',
12
+ _combinator: '>',
12
13
  display: flex,
13
14
  flex-direction: column,
14
15
  gap: var(--spacing-xs),
@@ -130,8 +131,10 @@ $vv-alert-group: (
130
131
  [scale]: calc(1 - 0.05 * (var(--alert-counter, 1) - 1)),
131
132
  [z-index]:
132
133
  calc(
133
- var(--z-notification-alert) -
134
- var(--alert-counter, 1)
134
+ var(--z-notification-alert) - var(
135
+ --alert-counter,
136
+ 1
137
+ )
135
138
  ),
136
139
  filter: grayscale(100%),
137
140
  ),
@@ -64,7 +64,7 @@ $vv-alert: (
64
64
  left: 50%,
65
65
  background-color: var(--color-gray),
66
66
  [animation]: pie-masks var(--alert-duration) steps(1, end) reverse,
67
- z-index: 1,
67
+ z-index: var(--z-1),
68
68
  ),
69
69
  ),
70
70
  modifier: (
@@ -5,6 +5,7 @@ $vv-avatar-group: (
5
5
  element: (
6
6
  item: (
7
7
  _alias: '> *',
8
+ _combinator: '>',
8
9
  box-shadow: var(--shadow-md),
9
10
  ),
10
11
  item-not-first: (
@@ -14,6 +14,7 @@ $vv-avatar: (
14
14
  background-size: contain,
15
15
  background-repeat: no-repeat,
16
16
  object-fit: contain,
17
+ flex-shrink: 0,
17
18
  state: (
18
19
  focus: (
19
20
  outline: var(--spacing-px) solid var(--color-brand),
@@ -23,6 +24,7 @@ $vv-avatar: (
23
24
  element: (
24
25
  badge: (
25
26
  _alias: '> sup',
27
+ _combinator: '>',
26
28
  position: absolute,
27
29
  top: 0,
28
30
  right: 0,
@@ -31,6 +33,7 @@ $vv-avatar: (
31
33
  ),
32
34
  badge-bottom: (
33
35
  _alias: '> sub',
36
+ _combinator: '>',
34
37
  position: absolute,
35
38
  bottom: 0,
36
39
  right: 0,
@@ -39,6 +42,7 @@ $vv-avatar: (
39
42
  ),
40
43
  image: (
41
44
  _alias: '> img',
45
+ _combinator: '>',
42
46
  width: 100%,
43
47
  height: 100%,
44
48
  object-fit: inherit,
@@ -64,7 +68,7 @@ $vv-avatar: (
64
68
  ),
65
69
  ),
66
70
  bordered: (
67
- border-color: var(--color-brand-darken-3),
71
+ border-color: var(--color-brand-lighten-3),
68
72
  border-width: var(--border),
69
73
  border-style: solid,
70
74
  ),
@@ -82,25 +86,25 @@ $vv-avatar: (
82
86
  background-color: var(--color-transparent),
83
87
  ),
84
88
  surface: (
85
- background-color: var(--color-surface-1),
86
- border-color: var(--color-surface-3),
89
+ background-color: var(--color-surface-2),
90
+ border-color: var(--color-surface-5),
87
91
  color: var(--color-word-2),
88
92
  ),
89
93
  danger: (
90
94
  background-color: var(--color-danger),
91
- border-color: var(--color-danger-darken-3),
95
+ border-color: var(--color-danger-lighten-3),
92
96
  ),
93
97
  success: (
94
98
  background-color: var(--color-success),
95
- border-color: var(--color-success-darken-3),
99
+ border-color: var(--color-success-lighten-3),
96
100
  ),
97
101
  warning: (
98
102
  background-color: var(--color-warning-darken-5),
99
- border-color: var(--color-warning-darken-3),
103
+ border-color: var(--color-warning-darken-2),
100
104
  ),
101
105
  info: (
102
106
  background-color: var(--color-info-darken-5),
103
- border-color: var(--color-info-darken-3),
107
+ border-color: var(--color-info-darken-2),
104
108
  ),
105
109
  accent: (
106
110
  background-color: var(--color-accent),
@@ -108,7 +112,7 @@ $vv-avatar: (
108
112
  ),
109
113
  gray: (
110
114
  background-color: var(--color-gray-darken-1),
111
- border-color: var(--color-gray-darken-3),
115
+ border-color: var(--color-gray-lighten-2),
112
116
  ),
113
117
  ring: (
114
118
  color: var(--color-brand-darken-3),
@@ -21,6 +21,7 @@ $vv-badge: (
21
21
  line-height: var(--leading-none),
22
22
  overflow: hidden,
23
23
  flex-shrink: 0,
24
+ vertical-align: middle,
24
25
  state: (
25
26
  empty: (
26
27
  font-size: inherit,
@@ -39,6 +40,7 @@ $vv-badge: (
39
40
  element: (
40
41
  button: (
41
42
  _alias: '> button',
43
+ _combinator: '>',
42
44
  cursor: pointer,
43
45
  padding: 0 0.5em,
44
46
  margin: 0 -0.5em,
@@ -15,6 +15,7 @@ $vv-breadcrumb: (
15
15
  element: (
16
16
  list: (
17
17
  _alias: '> ol',
18
+ _combinator: '>',
18
19
  position: relative,
19
20
  overflow: auto hidden,
20
21
  overscroll-behavior-x: contain,
@@ -18,6 +18,7 @@ $vv-button: (
18
18
  transition: var(--transition-all),
19
19
  will-change: all,
20
20
  min-width: 0,
21
+ pointer-events: auto,
21
22
  state: (
22
23
  focus-visible: (
23
24
  outline-offset: var(--spacing-4),