@volverjs/style 0.1.2-beta.9 → 0.1.2

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 (180) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +53 -46
  3. package/dist/components/vv-accordion.css +1 -1
  4. package/dist/components/vv-alert.css +1 -0
  5. package/dist/components/vv-avatar.css +1 -0
  6. package/dist/components/vv-badge.css +1 -1
  7. package/dist/components/vv-breadcrumb.css +1 -1
  8. package/dist/components/vv-button-group.css +1 -1
  9. package/dist/components/vv-button.css +1 -1
  10. package/dist/components/vv-card.css +1 -1
  11. package/dist/components/vv-checkbox-group.css +1 -0
  12. package/dist/components/vv-checkbox.css +1 -0
  13. package/dist/components/vv-dialog.css +1 -1
  14. package/dist/components/vv-dropdown.css +1 -1
  15. package/dist/components/vv-input-text.css +1 -1
  16. package/dist/components/vv-nav.css +1 -1
  17. package/dist/components/vv-progress.css +1 -1
  18. package/dist/components/vv-radio-group.css +1 -0
  19. package/dist/components/vv-radio.css +1 -0
  20. package/dist/components/vv-select.css +1 -1
  21. package/dist/components/vv-skeleton.css +1 -0
  22. package/dist/components/vv-tab.css +1 -0
  23. package/dist/components/vv-table.css +1 -1
  24. package/dist/components/vv-text.css +1 -1
  25. package/dist/components/vv-textarea.css +1 -1
  26. package/dist/components/vv-toast.css +1 -0
  27. package/dist/components/vv-tooltip.css +1 -0
  28. package/dist/components.css +1 -1
  29. package/dist/export.css +1 -1
  30. package/dist/props/background.css +1 -1
  31. package/dist/props/breakpoints.css +1 -0
  32. package/dist/props/colors.css +1 -1
  33. package/dist/props/filters.css +1 -1
  34. package/dist/props/input.css +1 -1
  35. package/dist/props/layout.css +1 -1
  36. package/dist/props/spacing.css +1 -1
  37. package/dist/props/transitions.css +1 -0
  38. package/dist/props.css +1 -1
  39. package/dist/themes/dark/components.css +1 -1
  40. package/dist/themes/dark/props.css +1 -1
  41. package/dist/themes/dark/volver.css +1 -1
  42. package/dist/utilities/backgrounds.css +1 -1
  43. package/dist/utilities/borders.css +1 -1
  44. package/dist/utilities/colors.css +1 -1
  45. package/dist/utilities/effects.css +1 -1
  46. package/dist/utilities/filters.css +1 -1
  47. package/dist/utilities/flexbox.css +1 -1
  48. package/dist/utilities/interactivity.css +1 -0
  49. package/dist/utilities/layout.css +1 -1
  50. package/dist/utilities/sizing.css +1 -1
  51. package/dist/utilities/spacing.css +1 -1
  52. package/dist/utilities/transitions.css +1 -0
  53. package/dist/utilities/typography.css +1 -1
  54. package/dist/utilities.css +1 -1
  55. package/dist/volver.css +1 -1
  56. package/package.json +56 -36
  57. package/src/_config.scss +17 -11
  58. package/src/_context.scss +3 -3
  59. package/src/_preflight.scss +308 -247
  60. package/src/components/index.scss +25 -19
  61. package/src/components/vv-accordion.scss +3 -2
  62. package/src/components/vv-alert.scss +13 -0
  63. package/src/components/vv-avatar.scss +13 -0
  64. package/src/components/vv-badge.scss +3 -2
  65. package/src/components/vv-breadcrumb.scss +3 -2
  66. package/src/components/vv-button-group.scss +11 -10
  67. package/src/components/vv-button.scss +5 -8
  68. package/src/components/vv-card.scss +3 -2
  69. package/src/components/vv-checkbox-group.scss +13 -0
  70. package/src/components/{vv-input-checkbox.scss → vv-checkbox.scss} +7 -6
  71. package/src/components/vv-dialog.scss +3 -2
  72. package/src/components/vv-dropdown.scss +3 -2
  73. package/src/components/vv-input-text.scss +6 -5
  74. package/src/components/vv-nav.scss +3 -2
  75. package/src/components/vv-progress.scss +3 -2
  76. package/src/components/vv-radio-group.scss +13 -0
  77. package/src/components/{vv-input-radio.scss → vv-radio.scss} +6 -5
  78. package/src/components/vv-select.scss +6 -5
  79. package/src/components/vv-skeleton.scss +14 -0
  80. package/src/components/vv-tab.scss +13 -0
  81. package/src/components/vv-table.scss +3 -2
  82. package/src/components/vv-text.scss +3 -2
  83. package/src/components/vv-textarea.scss +6 -5
  84. package/src/components/vv-toast.scss +13 -0
  85. package/src/components/vv-tooltip.scss +33 -0
  86. package/src/export.scss +89 -27
  87. package/src/props/background.scss +1 -1
  88. package/src/props/borders.scss +1 -1
  89. package/src/props/breakpoints.scss +15 -0
  90. package/src/props/colors.scss +1 -1
  91. package/src/props/effects.scss +1 -1
  92. package/src/props/filters.scss +2 -1
  93. package/src/props/index.scss +13 -12
  94. package/src/props/input.scss +1 -1
  95. package/src/props/layout.scss +1 -1
  96. package/src/props/media.scss +1 -1
  97. package/src/props/sizing.scss +1 -1
  98. package/src/props/spacing.scss +2 -2
  99. package/src/props/{animation.scss → transitions.scss} +53 -2
  100. package/src/props/typography.scss +2 -2
  101. package/src/settings/_background.scss +6 -1
  102. package/src/settings/_breakpoints.scss +2 -0
  103. package/src/settings/_colors.scss +23 -4
  104. package/src/settings/_effects.scss +47 -2
  105. package/src/settings/_filters.scss +9 -0
  106. package/src/settings/_index.scss +40 -33
  107. package/src/settings/_input.scss +8 -6
  108. package/src/settings/_interactivity.scss +39 -0
  109. package/src/settings/_layout.scss +18 -10
  110. package/src/settings/_spacing.scss +1 -0
  111. package/src/settings/_transitions.scss +44 -0
  112. package/src/settings/components/_vv-accordion.scss +40 -34
  113. package/src/settings/components/_vv-alert.scss +161 -0
  114. package/src/settings/components/_vv-avatar.scss +55 -0
  115. package/src/settings/components/_vv-badge.scss +43 -11
  116. package/src/settings/components/_vv-breadcrumb.scss +23 -15
  117. package/src/settings/components/_vv-button-group.scss +4 -0
  118. package/src/settings/components/_vv-button.scss +30 -25
  119. package/src/settings/components/_vv-card.scss +2 -2
  120. package/src/settings/components/{_vv-input-checkbox-group.scss → _vv-checkbox-group.scss} +2 -1
  121. package/src/settings/components/{_vv-input-checkbox.scss → _vv-checkbox.scss} +46 -11
  122. package/src/settings/components/_vv-dialog.scss +71 -89
  123. package/src/settings/components/_vv-input-text.scss +83 -37
  124. package/src/settings/components/_vv-nav.scss +98 -13
  125. package/src/settings/components/_vv-progress.scss +1 -1
  126. package/src/settings/components/_vv-radio-group.scss +3 -0
  127. package/src/settings/components/{_vv-input-radio.scss → _vv-radio.scss} +33 -4
  128. package/src/settings/components/_vv-select.scss +34 -43
  129. package/src/settings/components/_vv-skeleton.scss +22 -0
  130. package/src/settings/components/_vv-tab.scss +16 -0
  131. package/src/settings/components/_vv-table.scss +8 -1
  132. package/src/settings/components/_vv-text.scss +20 -0
  133. package/src/settings/components/_vv-textarea.scss +49 -24
  134. package/src/settings/components/_vv-toast.scss +259 -0
  135. package/src/settings/components/_vv-tooltip.scss +74 -0
  136. package/src/themes/dark/_context.scss +7 -4
  137. package/src/themes/dark/components/_vv-button.scss +2 -4
  138. package/src/themes/dark/components/index.scss +1 -2
  139. package/src/themes/dark/props/_background.scss +1 -1
  140. package/src/themes/dark/props/_colors.scss +1 -1
  141. package/src/themes/dark/props/_input.scss +15 -0
  142. package/src/themes/dark/props/index.scss +3 -2
  143. package/src/themes/dark/settings/_background.scss +5 -0
  144. package/src/themes/dark/settings/_colors.scss +22 -2
  145. package/src/themes/dark/settings/_index.scss +4 -4
  146. package/src/themes/dark/settings/_input.scss +8 -0
  147. package/src/themes/dark/settings/components/_vv-button.scss +9 -9
  148. package/src/themes/dark/volver.scss +2 -2
  149. package/src/tools/_breakpoints.scss +7 -7
  150. package/src/tools/_functions.scss +95 -37
  151. package/src/tools/_index.scss +3 -3
  152. package/src/tools/_mixins.scss +166 -35
  153. package/src/utilities/backgrounds.scss +15 -8
  154. package/src/utilities/borders.scss +22 -9
  155. package/src/utilities/colors.scss +9 -5
  156. package/src/utilities/effects.scss +23 -5
  157. package/src/utilities/filters.scss +15 -4
  158. package/src/utilities/flexbox.scss +15 -8
  159. package/src/utilities/grid.scss +17 -9
  160. package/src/utilities/index.scss +13 -12
  161. package/src/utilities/interactivity.scss +10 -0
  162. package/src/utilities/layout.scss +35 -23
  163. package/src/utilities/sizing.scss +23 -26
  164. package/src/utilities/spacing.scss +1 -1
  165. package/src/utilities/transitions.scss +47 -0
  166. package/src/utilities/typography.scss +34 -17
  167. package/src/volver.scss +4 -4
  168. package/dist/components/vv-input-checkbox-group.css +0 -1
  169. package/dist/components/vv-input-checkbox.css +0 -1
  170. package/dist/components/vv-input-radio-group.css +0 -1
  171. package/dist/components/vv-input-radio.css +0 -1
  172. package/dist/props/animation.css +0 -1
  173. package/dist/utilities/animation.css +0 -1
  174. package/src/components/vv-input-checkbox-group.scss +0 -12
  175. package/src/components/vv-input-radio-group.scss +0 -12
  176. package/src/settings/_animation.scss +0 -9
  177. package/src/settings/components/_vv-input-radio-group.scss +0 -1
  178. package/src/themes/dark/components/_vv-input-checkbox.scss +0 -24
  179. package/src/themes/dark/settings/components/_vv-input-checkbox.scss +0 -26
  180. package/src/utilities/animation.scss +0 -8
@@ -0,0 +1,39 @@
1
+ // cursor
2
+ $cursor: (
3
+ auto: auto,
4
+ default: default,
5
+ pointer: pointer,
6
+ wait: wait,
7
+ text: text,
8
+ move: move,
9
+ help: help,
10
+ not-allowed: not-allowed,
11
+ none: none,
12
+ context-menu: context-menu,
13
+ progress: progress,
14
+ cell: cell,
15
+ crosshair: crosshair,
16
+ vertical-text: vertical-text,
17
+ alias: alias,
18
+ copy: copy,
19
+ no-drop: no-drop,
20
+ grab: grab,
21
+ grabbing: grabbing,
22
+ all-scroll: all-scroll,
23
+ col-resize: col-resize,
24
+ row-resize: row-resize,
25
+ n-resize: n-resize,
26
+ e-resize: e-resize,
27
+ s-resize: s-resize,
28
+ w-resize: w-resize,
29
+ ne-resize: ne-resize,
30
+ nw-resize: nw-resize,
31
+ se-resize: se-resize,
32
+ sw-resize: sw-resize,
33
+ ew-resize: ew-resize,
34
+ ns-resize: ns-resize,
35
+ nesw-resize: nesw-resize,
36
+ nwse-resize: nwse-resize,
37
+ zoom-in: zoom-in,
38
+ zoom-out: zoom-out,
39
+ ) !default;
@@ -83,6 +83,14 @@ $object-position: (
83
83
  top: top,
84
84
  ) !default;
85
85
 
86
+ // overflow
87
+ $overflow: (
88
+ visible: visible,
89
+ hidden: hidden,
90
+ scroll: scroll,
91
+ auto: auto,
92
+ ) !default;
93
+
86
94
  // position
87
95
  $position: (static, fixed, absolute, relative, sticky) !default;
88
96
 
@@ -95,15 +103,15 @@ $visibility: (
95
103
  // z-index
96
104
  $z-index: (
97
105
  dropdown: 1000,
98
- sticky: 1020,
99
- fixed: 1030,
100
- modal-backdrop: 1040,
101
- modal: 1050,
102
- confirm-backdrop: 1060,
103
- confirm: 1070,
104
- popover: 1060,
105
- tooltip: 1070,
106
- toast: 1080,
107
- notification-alert: 1090,
106
+ sticky: 1010,
107
+ fixed: 1020,
108
+ modal-backdrop: 1030,
109
+ modal: 1040,
110
+ confirm-backdrop: 1050,
111
+ confirm: 1060,
112
+ popover: 1070,
113
+ tooltip: 1080,
114
+ toast: 1090,
115
+ notification-alert: 1100,
108
116
  auto: 'auto',
109
117
  ) !default;
@@ -11,6 +11,7 @@ $spacing: (
11
11
  12: 0.75rem,
12
12
  14: 0.875rem,
13
13
  16: 1rem,
14
+ 18: 1.125rem,
14
15
  20: 1.25rem,
15
16
  22: 1.375rem,
16
17
  24: 1.5rem,
@@ -0,0 +1,44 @@
1
+ // transition property
2
+ $transition-property: (
3
+ none: none,
4
+ all: all,
5
+ transition:
6
+ 'color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter',
7
+ colors:
8
+ 'color, background-color, border-color, text-decoration-color, fill, stroke',
9
+ opacity: opacity,
10
+ shadow: box-shadow,
11
+ transform: transform,
12
+ ) !default;
13
+
14
+ // transition duration and transition delay
15
+ $transition-duration-delay: (
16
+ 75: 75ms,
17
+ 100: 100ms,
18
+ 150: 150ms,
19
+ 200: 200ms,
20
+ 300: 300ms,
21
+ 500: 500ms,
22
+ 700: 700ms,
23
+ 1000: 1000ms,
24
+ ) !default;
25
+
26
+ // transition timing function
27
+ $transition-timing-function: (
28
+ linear: linear,
29
+ in: cubic-bezier(0.4, 0, 1, 1),
30
+ out: cubic-bezier(0, 0, 0.2, 1),
31
+ in-out: cubic-bezier(0.4, 0, 0.2, 1),
32
+ ) !default;
33
+
34
+ // animation
35
+ $animation: (
36
+ none: none,
37
+ indeterminate: indeterminate 2s infinite,
38
+ progress-indeterminate: progress-indeterminate 1.5s linear infinite,
39
+ spin: spin 1s infinite,
40
+ ping: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite,
41
+ pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite,
42
+ bounce: bounce 1s infinite,
43
+ shine: shine 1.5s infinite,
44
+ ) !default;
@@ -1,10 +1,25 @@
1
1
  $vv-accordion: (
2
2
  --accordion-marker-size:
3
3
  calc(var(--spacing-sm) + var(--leading-normal) * 1em),
4
- --accordion-padding-top: 0px,
5
- --accordion-padding-right: 0px,
6
- --accordion-padding-bottom: 0px,
7
- --accordion-padding-left: 0px,
4
+ --accordion-padding-top: var(--spacing-xs),
5
+ --accordion-padding-right: var(--spacing-xs),
6
+ --accordion-padding-bottom: var(--spacing-xs),
7
+ --accordion-padding-left: var(--spacing-xs),
8
+ overflow: hidden,
9
+ state: (
10
+ open: (
11
+ element: (
12
+ summary: (
13
+ background-color: var(--color-surface-2),
14
+ pseudo: (
15
+ before: (
16
+ transform: rotate(0),
17
+ ),
18
+ ),
19
+ ),
20
+ ),
21
+ ),
22
+ ),
8
23
  element: (
9
24
  summary: (
10
25
  _alias: '> summary',
@@ -20,8 +35,11 @@ $vv-accordion: (
20
35
  line-height: var(--leading-normal),
21
36
  color: var(--color-word-2),
22
37
  will-change: background-color,
23
- transition: background-color 0.3s ease-in-out,
38
+ transition: var(--transition-colors),
24
39
  font-size: var(--text-sm),
40
+ border-radius: var(--rounded-lg),
41
+ -webkit-tap-highlight-color: transparent,
42
+ outline: none,
25
43
  pseudo: (
26
44
  before: (
27
45
  display: block,
@@ -35,7 +53,7 @@ $vv-accordion: (
35
53
  background-size: 1em,
36
54
  background-repeat: no-repeat,
37
55
  will-change: transform,
38
- transition: transform 0.3s ease-in-out,
56
+ transition: var(--transition-transform),
39
57
  transform: rotate(-90deg),
40
58
  ),
41
59
  marker: (
@@ -45,6 +63,14 @@ $vv-accordion: (
45
63
  display: none,
46
64
  ),
47
65
  ),
66
+ state: (
67
+ hover: (
68
+ background-color: var(--color-surface-1),
69
+ ),
70
+ focus-visible: (
71
+ background-color: var(--color-surface-1),
72
+ ),
73
+ ),
48
74
  ),
49
75
  content: (
50
76
  _alias: '> summary + *',
@@ -53,19 +79,6 @@ $vv-accordion: (
53
79
  var(--accordion-padding-right),
54
80
  ),
55
81
  ),
56
- state: (
57
- open: (
58
- element: (
59
- summary: (
60
- pseudo: (
61
- before: (
62
- transform: rotate(0),
63
- ),
64
- ),
65
- ),
66
- ),
67
- ),
68
- ),
69
82
  modifier: (
70
83
  marker-right: (
71
84
  element: (
@@ -100,25 +113,18 @@ $vv-accordion: (
100
113
  ),
101
114
  ),
102
115
  bordered: (
103
- --accordion-padding-top: var(--spacing-sm),
104
- --accordion-padding-right: var(--spacing-sm),
105
- --accordion-padding-bottom: var(--spacing-sm),
106
- --accordion-padding-left: var(--spacing-sm),
107
- border-bottom: var(--border) solid var(--color-surface-2),
108
- element: (
109
- summary: (
110
- state: (
111
- hover: (
112
- background-color: var(--color-surface-1),
113
- ),
114
- ),
115
- ),
116
- ),
116
+ --accordion-padding-top: var(--spacing-xs),
117
+ --accordion-padding-right: var(--spacing-xs),
118
+ --accordion-padding-bottom: var(--spacing-xs),
119
+ --accordion-padding-left: var(--spacing-xs),
120
+ border: var(--border) solid var(--color-surface-4),
121
+ border-radius: var(--rounded-lg),
117
122
  state: (
118
123
  open: (
119
124
  element: (
120
125
  summary: (
121
- background-color: var(--color-surface-2),
126
+ border-bottom-right-radius: 0,
127
+ border-bottom-left-radius: 0,
122
128
  ),
123
129
  ),
124
130
  ),
@@ -0,0 +1,161 @@
1
+ $vv-alert: (
2
+ display: flex,
3
+ min-width: 0,
4
+ overflow: hidden,
5
+ align-items: center,
6
+ padding: var(--spacing-sm) var(--spacing-md),
7
+ background-color: var(--color-surface-2),
8
+ border-color: var(--color-gray-lighten-4),
9
+ border-width: var(--border),
10
+ border-style: solid,
11
+ border-radius: var(--rounded),
12
+ position: relative,
13
+ element: (
14
+ icon: (
15
+ _alias: '> :where(svg, [data-icon])',
16
+ position: absolute,
17
+ left: var(--spacing-md),
18
+ inline-size: 1.2em,
19
+ block-size: 1.2em,
20
+ ),
21
+ close: (
22
+ position: absolute,
23
+ right: var(--spacing-md),
24
+ inline-size: 1em,
25
+ block-size: 1em,
26
+ cursor: pointer,
27
+ background-image: var(--bg-close),
28
+ background-position: center,
29
+ background-size: 100% auto,
30
+ background-repeat: no-repeat,
31
+ ),
32
+ title: (
33
+ display: flex,
34
+ margin-right: 1ch,
35
+ line-height: var(--leading-normal),
36
+ font-weight: var(--font-bold),
37
+ color: var(--color-word),
38
+ ),
39
+ content: (
40
+ line-height: var(--leading-normal),
41
+ color: var(--color-word-1),
42
+ text-overflow: ellipsis,
43
+ white-space: nowrap,
44
+ overflow: hidden,
45
+ ),
46
+ separator: (
47
+ _alias: '> hr',
48
+ height: var(--border),
49
+ background-color: var(--color-alpha-2),
50
+ margin-block: var(--spacing-sm),
51
+ ),
52
+ ),
53
+ modifier: (
54
+ fixed: (
55
+ position: fixed,
56
+ z-index: var(--z-notification-alert),
57
+ ),
58
+ top: (
59
+ inset-inline: var(--spacing-lg),
60
+ inset-block: var(--spacing-lg) auto,
61
+ ),
62
+ bottom: (
63
+ inset-inline: var(--spacing-lg),
64
+ inset-block: auto var(--spacing-lg),
65
+ ),
66
+ success: (
67
+ border-color: var(--color-success-lighten-5),
68
+ background-color: var(--color-surface-success),
69
+ element: (
70
+ icon: (
71
+ color: var(--color-success),
72
+ ),
73
+ title: (
74
+ color: var(--color-success),
75
+ ),
76
+ ),
77
+ ),
78
+ danger: (
79
+ border-color: var(--color-danger-lighten-5),
80
+ background-color: var(--color-surface-danger),
81
+ element: (
82
+ icon: (
83
+ color: var(--color-danger),
84
+ ),
85
+ title: (
86
+ color: var(--color-danger),
87
+ ),
88
+ ),
89
+ ),
90
+ warning: (
91
+ border-color: var(--color-warning-lighten-5),
92
+ background-color: var(--color-surface-warning),
93
+ element: (
94
+ icon: (
95
+ color: var(--color-warning-darken-2),
96
+ ),
97
+ title: (
98
+ color: var(--color-warning-darken-2),
99
+ ),
100
+ ),
101
+ ),
102
+ info: (
103
+ border-color: var(--color-info-lighten-5),
104
+ background-color: var(--color-surface-info),
105
+ element: (
106
+ icon: (
107
+ color: var(--color-info-darken-2),
108
+ ),
109
+ title: (
110
+ color: var(--color-info-darken-2),
111
+ ),
112
+ ),
113
+ ),
114
+ accent: (
115
+ border-color: var(--color-accent-lighten-5),
116
+ background-color: var(--color-surface-accent),
117
+ element: (
118
+ icon: (
119
+ color: var(--color-accent),
120
+ ),
121
+ title: (
122
+ color: var(--color-accent),
123
+ ),
124
+ ),
125
+ ),
126
+ brand: (
127
+ border-color: var(--color-brand-lighten-5),
128
+ background-color: var(--color-surface-brand),
129
+ element: (
130
+ icon: (
131
+ color: var(--color-brand),
132
+ ),
133
+ title: (
134
+ color: var(--color-brand),
135
+ ),
136
+ ),
137
+ ),
138
+ callout: (
139
+ display: block,
140
+ border-radius: var(--rounded-none),
141
+ border-width: 0 0 0 var(--spacing-4),
142
+ element: (
143
+ title: (
144
+ margin-bottom: var(--spacing-sm),
145
+ margin-right: 0,
146
+ text-transform: uppercase,
147
+ ),
148
+ content: (
149
+ line-height: var(--leading-normal),
150
+ white-space: wrap,
151
+ ),
152
+ ),
153
+ ),
154
+ icon: (
155
+ padding-left: calc(var(--spacing-md) * 2 + 1em),
156
+ ),
157
+ close: (
158
+ padding-right: calc(var(--spacing-md) * 2 + 1em),
159
+ ),
160
+ ),
161
+ ) !default;
@@ -0,0 +1,55 @@
1
+ $vv-avatar: (
2
+ display: inline-flex,
3
+ position: relative,
4
+ justify-content: center,
5
+ align-items: center,
6
+ font-size: var(--text-12),
7
+ line-height: var(--leading-none),
8
+ width: var(--spacing-28),
9
+ height: var(--spacing-28),
10
+ border-radius: var(--rounded),
11
+ background-position: center,
12
+ background-size: contain,
13
+ background-repeat: no-repeat,
14
+ color: var(--color-white),
15
+ object-fit: contain,
16
+ modifier: (
17
+ rounded: (
18
+ border-radius: var(--rounded-full),
19
+ overflow: hidden,
20
+ ),
21
+ md: (
22
+ font-size: var(--text-14),
23
+ width: var(--spacing-34),
24
+ height: var(--spacing-34),
25
+ ),
26
+ lg: (
27
+ font-size: var(--text-16),
28
+ width: var(--spacing-40),
29
+ height: var(--spacing-40),
30
+ ),
31
+ ),
32
+ state: (
33
+ focus: (
34
+ outline: var(--spacing-px) solid var(--color-brand),
35
+ outline-offset: var(--spacing-0),
36
+ ),
37
+ ),
38
+ element: (
39
+ badge: (
40
+ _alias: '> sup',
41
+ position: absolute,
42
+ top: 0,
43
+ right: 0,
44
+ transform: translate(50%, -50%),
45
+ box-shadow: var(--shadow-sm),
46
+ ),
47
+ image: (
48
+ _alias: '> img',
49
+ width: 100%,
50
+ height: 100%,
51
+ border-radius: inherit,
52
+ object-fit: inherit,
53
+ ),
54
+ ),
55
+ ) !default;
@@ -1,10 +1,15 @@
1
1
  $vv-badge: (
2
2
  --badge-font-size: 0.7rem,
3
+ --badge-color: var(--color-white),
4
+ --badge-background-color: var(--color-brand),
5
+ --badge-border-width: 0,
3
6
  [font-size]: var(--badge-font-size),
7
+ [background-color]: var(--badge-background-color),
8
+ [color]: var(--badge-color),
9
+ [border-width]: var(--badge-border-width),
10
+ [border-color]: var(--badge-background-color),
11
+ border-style: solid,
4
12
  border-radius: 0.5em,
5
- background: var(--color-brand),
6
- color: var(--color-white),
7
- line-height: 2em,
8
13
  min-height: 2em,
9
14
  min-width: 2em,
10
15
  padding: 0 0.5em,
@@ -16,6 +21,7 @@ $vv-badge: (
16
21
  font-family: var(--font-sans),
17
22
  font-weight: var(--font-normal),
18
23
  text-shadow: none,
24
+ line-height: var(--leading-none),
19
25
  state: (
20
26
  empty: (
21
27
  font-size: inherit,
@@ -28,28 +34,54 @@ $vv-badge: (
28
34
  ),
29
35
  ),
30
36
  modifier: (
31
- small: (
37
+ sm: (
32
38
  --badge-font-size: 0.6rem,
33
39
  ),
34
40
  rounded: (
35
41
  border-radius: 1em,
36
42
  ),
43
+ outline: (
44
+ --badge-border-width: var(--border),
45
+ [background-color]: transparent,
46
+ [color]: var(--badge-background-color),
47
+ ),
48
+ ghost: (
49
+ [background-color]: transparent,
50
+ [color]: var(--badge-background-color),
51
+ ),
37
52
  white: (
38
- background: alpha-color('white', 80%),
39
- color: var(--color-black),
53
+ --badge-background-color:
54
+ hsla(
55
+ var(--color-white-hue) var(--color-white-saturation)
56
+ var(--color-white-lightness) / 80%
57
+ ),
58
+ --badge-color: var(--color-black),
40
59
  ),
41
60
  black: (
42
- background: alpha-color('black', 80%),
43
- color: var(--color-white),
61
+ --badge-background-color:
62
+ hsla(
63
+ var(--color-black-hue) var(--color-black-saturation)
64
+ var(--color-black-lightness) / 80%
65
+ ),
66
+ --badge-color: var(--color-white),
44
67
  ),
45
68
  danger: (
46
- background: var(--color-danger),
69
+ --badge-background-color: var(--color-danger),
47
70
  ),
48
71
  success: (
49
- background: var(--color-success),
72
+ --badge-background-color: var(--color-success),
50
73
  ),
51
74
  warning: (
52
- background: var(--color-warning),
75
+ --badge-background-color: var(--color-warning),
76
+ ),
77
+ info: (
78
+ --badge-background-color: var(--color-info),
79
+ ),
80
+ accent: (
81
+ --badge-background-color: var(--color-accent),
82
+ ),
83
+ gray: (
84
+ --badge-background-color: var(--color-gray),
53
85
  ),
54
86
  ),
55
87
  ) !default;
@@ -1,29 +1,37 @@
1
1
  $vv-breadcrumb: (
2
+ position: relative,
3
+ pseudo: (
4
+ after: (
5
+ position: absolute,
6
+ top: 0,
7
+ bottom: 0,
8
+ right: 0,
9
+ display: block,
10
+ width: var(--spacing-sm),
11
+ background:
12
+ linear-gradient(45deg, transparent, var(--color-surface)),
13
+ ),
14
+ ),
2
15
  element: (
3
16
  list: (
4
17
  _alias: '> ol',
5
18
  position: relative,
19
+ overflow: auto hidden,
20
+ overscroll-behavior-x: contain,
21
+ scroll-behavior: smooth,
22
+ scroll-snap-type: x mandatory,
23
+ scrollbar-width: none,
6
24
  display: flex,
7
25
  flex-wrap: no-wrap,
8
26
  list-style: none,
9
- overflow: auto,
10
27
  padding: 0,
11
28
  background: var(--color-surface),
29
+ white-space: nowrap,
12
30
  pseudo: (
13
- after: (
14
- position: absolute,
15
- top: 0,
16
- bottom: 0,
17
- right: 0,
18
- display: block,
19
- width: var(--spacing-sm),
20
- background:
21
- linear-gradient(
22
- 45deg,
23
- transparent,
24
- var(--color-surface)
25
- ),
26
- ),
31
+ -webkit-scrollbar: (
32
+ width: 0,
33
+ height: 0,
34
+ ),
27
35
  ),
28
36
  ),
29
37
  item: (
@@ -1,6 +1,10 @@
1
1
  $vv-button-group: (
2
2
  display: inline-flex,
3
+ flex-wrap: wrap,
4
+ min-width: 0,
5
+ max-width: 100%,
3
6
  align-items: center,
7
+ justify-content: center,
4
8
  gap: var(--spacing-4),
5
9
  modifier: (
6
10
  block: (