@volverjs/style 0.1.12-beta.6 → 0.1.12-beta.7

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 (72) hide show
  1. package/README.md +2 -2
  2. package/dist/base.css +1 -1
  3. package/dist/components/vv-accordion-group.css +1 -1
  4. package/dist/components/vv-accordion.css +1 -1
  5. package/dist/components/vv-alert-group.css +1 -1
  6. package/dist/components/vv-alert.css +1 -1
  7. package/dist/components/vv-avatar-group.css +1 -1
  8. package/dist/components/vv-avatar.css +1 -1
  9. package/dist/components/vv-badge.css +1 -1
  10. package/dist/components/vv-breadcrumb.css +1 -1
  11. package/dist/components/vv-button.css +1 -1
  12. package/dist/components/vv-card.css +1 -1
  13. package/dist/components/vv-checkbox-group.css +1 -1
  14. package/dist/components/vv-checkbox.css +1 -1
  15. package/dist/components/vv-dialog.css +1 -1
  16. package/dist/components/vv-dropdown.css +1 -1
  17. package/dist/components/vv-input-file.css +1 -0
  18. package/dist/components/vv-input-text.css +1 -1
  19. package/dist/components/vv-nav.css +1 -1
  20. package/dist/components/vv-progress.css +1 -1
  21. package/dist/components/vv-radio-group.css +1 -1
  22. package/dist/components/vv-radio.css +1 -1
  23. package/dist/components/vv-select.css +1 -1
  24. package/dist/components/vv-table.css +1 -1
  25. package/dist/components/vv-text.css +1 -1
  26. package/dist/components/vv-textarea.css +1 -1
  27. package/dist/components/vv-tooltip.css +1 -1
  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/colors.css +1 -1
  32. package/dist/props/input.css +1 -1
  33. package/dist/props/transitions.css +1 -1
  34. package/dist/props.css +1 -1
  35. package/dist/reset.css +1 -1
  36. package/dist/themes/dark/props.css +1 -1
  37. package/dist/themes/dark/volver.css +1 -1
  38. package/dist/utilities/backgrounds.css +1 -1
  39. package/dist/utilities/colors.css +1 -1
  40. package/dist/utilities/layout.css +1 -1
  41. package/dist/utilities/typography.css +1 -1
  42. package/dist/utilities.css +1 -1
  43. package/dist/volver.css +1 -1
  44. package/package.json +23 -21
  45. package/src/_config.scss +10 -9
  46. package/src/components/index.scss +1 -0
  47. package/src/components/vv-button.scss +1 -12
  48. package/src/components/vv-input-file.scss +93 -0
  49. package/src/components/vv-input-text.scss +54 -11
  50. package/src/components/vv-select.scss +53 -10
  51. package/src/components/vv-textarea.scss +53 -10
  52. package/src/props/transitions.scss +19 -0
  53. package/src/settings/_background.scss +2 -0
  54. package/src/settings/_colors.scss +1 -1
  55. package/src/settings/_index.scss +1 -0
  56. package/src/settings/_input.scss +1 -0
  57. package/src/settings/_transitions.scss +1 -0
  58. package/src/settings/components/_vv-alert.scss +1 -0
  59. package/src/settings/components/_vv-checkbox-group.scss +1 -0
  60. package/src/settings/components/_vv-dialog.scss +3 -0
  61. package/src/settings/components/_vv-dropdown.scss +6 -5
  62. package/src/settings/components/_vv-input-file.scss +474 -0
  63. package/src/settings/components/_vv-input-text.scss +1 -0
  64. package/src/settings/components/_vv-nav.scss +3 -2
  65. package/src/settings/components/_vv-progress.scss +2 -0
  66. package/src/settings/components/_vv-select.scss +2 -0
  67. package/src/settings/components/_vv-text.scss +1 -0
  68. package/src/settings/components/_vv-textarea.scss +1 -0
  69. package/src/themes/dark/settings/_background.scss +2 -0
  70. package/src/tools/_mixins.scss +11 -1
  71. package/src/utilities/backgrounds.scss +1 -0
  72. package/src/utilities/typography.scss +10 -0
@@ -0,0 +1,474 @@
1
+ $vv-input-file: (
2
+ display: var(--input-display),
3
+ flex: var(--input-flex),
4
+ flex-direction: var(--input-flex-direction),
5
+ margin-bottom: var(--input-gap),
6
+ font-size: var(--input-font-size),
7
+ line-height: var(--input-line-height),
8
+ min-width: var(--input-min-width),
9
+ element: (
10
+ label: (
11
+ _alias: '> label',
12
+ display: var(--input-label-display),
13
+ font-size: var(--input-label-font-size),
14
+ font-weight: var(--input-label-font-weight),
15
+ color: var(--input-label-color),
16
+ margin: 0 0 var(--input-label-gap) 0,
17
+ white-space: var(--input-label-white-space),
18
+ text-overflow: var(--input-label-text-overflow),
19
+ overflow: var(--input-label-overflow),
20
+ max-width: var(--input-label-max-width),
21
+ ),
22
+ wrapper: (
23
+ position: relative,
24
+ display: flex,
25
+ align-items: center,
26
+ flex: 1,
27
+ overflow: hidden,
28
+ background-color: var(--input-background-color),
29
+ will-change: background-color,
30
+ transition: var(--transition-colors),
31
+ pseudo: (
32
+ before: (
33
+ position: absolute,
34
+ height: var(--spacing-1),
35
+ inset: auto 0 0 0,
36
+ background: var(--color-word-5),
37
+ ),
38
+ after: (
39
+ position: absolute,
40
+ height: var(--spacing-2),
41
+ inset: auto 0 0 0,
42
+ background: var(--color-brand),
43
+ scale: 0 1,
44
+ transform-origin: left,
45
+ will-change: transform,
46
+ transition: var(--transition-transform),
47
+ ),
48
+ ),
49
+ state: (
50
+ hover: (
51
+ background-color: var(--input-background-color-hover),
52
+ ),
53
+ focus-within: (
54
+ background-color: var(--input-background-color-focus),
55
+ pseudo: (
56
+ after: (
57
+ scale: 1,
58
+ ),
59
+ ),
60
+ ),
61
+ ),
62
+ ),
63
+ inner: (
64
+ position: relative,
65
+ display: flex,
66
+ flex: 1,
67
+ min-width: 0,
68
+ ),
69
+ input: (
70
+ _alias: 'input[type="file"]',
71
+ flex: 1,
72
+ white-space: nowrap,
73
+ cursor: pointer,
74
+ color: var(--input-color),
75
+ [padding-block]: var(--input-spacing-top) 0,
76
+ [padding-inline]: var(--input-spacing-left)
77
+ var(--input-spacing-right),
78
+ min-width: 0,
79
+ min-height: var(--input-min-height),
80
+ text-overflow: var(--input-text-overflow),
81
+ pseudo: (
82
+ file-selector-button: (
83
+ appearance: none,
84
+ border: none,
85
+ background: transparent,
86
+ cursor: pointer,
87
+ text-decoration: underline,
88
+ color: var(--input-color),
89
+ ),
90
+ ),
91
+ state: (
92
+ disabled: (
93
+ cursor: not-allowed,
94
+ ),
95
+ readonly: (
96
+ cursor: text,
97
+ user-select: text,
98
+ pointer-events: none,
99
+ pseudo: (
100
+ file-selector-button: (
101
+ opacity: var(--opacity-50),
102
+ ),
103
+ ),
104
+ ),
105
+ ),
106
+ ),
107
+ input-before: (
108
+ display: flex,
109
+ padding-left: var(--input-spacing-left),
110
+ ),
111
+ input-after: (
112
+ display: flex,
113
+ padding-right: var(--input-spacing-right),
114
+ ),
115
+ icon: (
116
+ _alias: '> div > :where(svg, [data-icon])',
117
+ position: var(--input-icon-position),
118
+ top: 0,
119
+ left: 0,
120
+ width: var(--input-icon-width),
121
+ height: var(--input-min-height),
122
+ margin: var(--input-icon-margin),
123
+ pointer-events: var(--input-icon-pointer-events),
124
+ ),
125
+ icon-after: (
126
+ _alias: 'input + :where(svg, [data-icon])',
127
+ position: var(--input-icon-position),
128
+ right: 0,
129
+ left: auto,
130
+ ),
131
+ hint: (
132
+ _alias: '> small',
133
+ display: var(--input-hint-display),
134
+ font-size: var(--input-hint-font-size),
135
+ color: var(--input-hint-color),
136
+ padding-top: var(--input-hint-gap),
137
+ padding-inline: var(--spacing-xs),
138
+ white-space: var(--input-hint-white-space),
139
+ text-overflow: var(--input-hint-text-overflow),
140
+ overflow: var(--input-hint-overflow),
141
+ ),
142
+ drop-area: (
143
+ position: relative,
144
+ background-color: var(--input-background-color),
145
+ color: var(--input-hint-color),
146
+ min-height: var(--spacing-100),
147
+ padding: var(--spacing-16),
148
+ display: flex,
149
+ text-align: center,
150
+ align-items: center,
151
+ justify-content: center,
152
+ margin-bottom: var(--input-label-gap),
153
+ cursor: pointer,
154
+ transition: var(--transition-all),
155
+ overflow: hidden,
156
+ text-overflow: ellipsis,
157
+ pseudo: (
158
+ after: (
159
+ position: absolute,
160
+ inset: 0,
161
+ opacity: var(--opacity-100),
162
+ border-width: var(--border-2),
163
+ border-style: dashed,
164
+ border-color: var(--color-word-5),
165
+ transition: var(--transition-all),
166
+ ),
167
+ ),
168
+ state: (
169
+ hover: (
170
+ background-color: var(--color-surface-2),
171
+ color: var(--input-color),
172
+ ),
173
+ ),
174
+ ),
175
+ preview: (
176
+ position: absolute,
177
+ display: flex,
178
+ inset: var(--spacing-4),
179
+ font-size: var(--text-xl),
180
+ align-items: center,
181
+ justify-content: center,
182
+ object-fit: contain,
183
+ object-position: center,
184
+ background: var(--bg-chessboard),
185
+ overflow: hidden,
186
+ ),
187
+ progress: (
188
+ position: absolute,
189
+ width: 100%,
190
+ height: var(--border-2),
191
+ bottom: 0,
192
+ left: 0,
193
+ z-index: 1,
194
+ pseudo: (
195
+ -webkit-progress-bar: (
196
+ background-color: transparent,
197
+ ),
198
+ -moz-progress-bar: (
199
+ background-color: var(--color-brand),
200
+ transition: var(--transition-all),
201
+ ),
202
+ -webkit-progress-value: (
203
+ background-color: var(--color-brand),
204
+ transition: var(--transition-all),
205
+ ),
206
+ ),
207
+ ),
208
+ list: (
209
+ display: flex,
210
+ flex-direction: column,
211
+ gap: var(--input-label-gap),
212
+ margin-top: var(--input-label-gap),
213
+ state: (
214
+ empty: (
215
+ display: none,
216
+ ),
217
+ ),
218
+ ),
219
+ item: (
220
+ display: flex,
221
+ font-size: var(--input-label-font-size),
222
+ align-items: center,
223
+ gap: var(--spacing-8),
224
+ background-color: var(--input-background-color),
225
+ padding: var(--spacing-8),
226
+ ),
227
+ item-name: (
228
+ white-space: nowrap,
229
+ text-overflow: ellipsis,
230
+ overflow: hidden,
231
+ ),
232
+ item-info: (
233
+ font-size: smaller,
234
+ white-space: nowrap,
235
+ color: var(--color-word-5),
236
+ align-self: flex-end,
237
+ ),
238
+ item-link: (
239
+ cursor: pointer,
240
+ text-decoration: underline,
241
+ ),
242
+ item-icon: (
243
+ flex-shrink: 0,
244
+ ),
245
+ item-remove: (
246
+ flex-shrink: 0,
247
+ background-image: var(--bg-close),
248
+ width: 1.4em,
249
+ height: 1.4em,
250
+ background-size: 0.8em,
251
+ background-repeat: no-repeat,
252
+ background-position: center,
253
+ border-radius: var(--rounded-full),
254
+ background-color: var(--color-surface-3),
255
+ margin-inline-start: auto,
256
+ cursor: pointer,
257
+ transition: var(--transition-colors),
258
+ state: (
259
+ hover: (
260
+ background-color: var(--color-surface-4),
261
+ ),
262
+ active: (
263
+ background-color: var(--color-surface-5),
264
+ ),
265
+ focus-visible: (
266
+ outline: var(--spacing-px) solid var(--color-gray-lighten-4),
267
+ ),
268
+ disabled: (
269
+ cursor: not-allowed,
270
+ opacity: var(--opacity-50),
271
+ ),
272
+ ),
273
+ ),
274
+ ),
275
+ modifier: (
276
+ icon-before: (
277
+ --input-spacing-left: calc(var(--spacing-sm) * 2 + 1em),
278
+ ),
279
+ icon-after: (
280
+ --input-spacing-right: calc(var(--spacing-sm) * 2 + 1em),
281
+ element: (
282
+ limit: (
283
+ margin-left: calc((var(--spacing-sm) + 1em) * -1),
284
+ ),
285
+ ),
286
+ ),
287
+ with-progress: (
288
+ element: (
289
+ drop-area: (
290
+ cursor: not-allowed,
291
+ height: var(--spacing-2),
292
+ min-height: 0,
293
+ padding-block: 0,
294
+ color: var(--color-transparent),
295
+ background-color: var(--color-surface-3),
296
+ pseudo: (
297
+ after: (
298
+ opacity: var(--opacity-0),
299
+ ),
300
+ ),
301
+ ),
302
+ ),
303
+ ),
304
+ valid: (
305
+ element: (
306
+ wrapper: (
307
+ pseudo: (
308
+ after: (
309
+ background: var(--input-valid-color),
310
+ scale: 1,
311
+ ),
312
+ ),
313
+ ),
314
+ hint: (
315
+ color: var(--input-valid-color),
316
+ ),
317
+ limit: (
318
+ color: var(--input-valid-color),
319
+ ),
320
+ icon-after: (
321
+ color: var(--input-valid-color),
322
+ ),
323
+ drop-area: (
324
+ pseudo: (
325
+ after: (
326
+ border-color: var(--input-valid-color),
327
+ ),
328
+ ),
329
+ ),
330
+ ),
331
+ ),
332
+ invalid: (
333
+ element: (
334
+ wrapper: (
335
+ pseudo: (
336
+ after: (
337
+ background: var(--input-invalid-color),
338
+ scale: 1,
339
+ ),
340
+ ),
341
+ ),
342
+ hint: (
343
+ color: var(--input-invalid-color),
344
+ ),
345
+ limit: (
346
+ color: var(--input-invalid-color),
347
+ ),
348
+ icon-after: (
349
+ color: var(--input-invalid-color),
350
+ ),
351
+ drop-area: (
352
+ pseudo: (
353
+ after: (
354
+ border-color: var(--input-invalid-color),
355
+ ),
356
+ ),
357
+ ),
358
+ ),
359
+ ),
360
+ loading: (
361
+ element: (
362
+ wrapper: (
363
+ pseudo: (
364
+ after: (
365
+ opacity: var(--opacity-100),
366
+ animation: var(--animation-indeterminate),
367
+ ),
368
+ ),
369
+ ),
370
+ drop-area: (
371
+ pseudo: (
372
+ after: (
373
+ border-color: var(--color-brand),
374
+ animation: var(--animation-clippath),
375
+ ),
376
+ ),
377
+ ),
378
+ ),
379
+ ),
380
+ hidden: (
381
+ element: (
382
+ wrapper: (
383
+ display: none,
384
+ ),
385
+ drop-area: (
386
+ margin-bottom: var(--spacing-0),
387
+ ),
388
+ ),
389
+ ),
390
+ dragging: (
391
+ element: (
392
+ drop-area: (
393
+ background-color: var(--color-surface-2),
394
+ color: var(--input-color),
395
+ pseudo: (
396
+ after: (
397
+ border-color: var(--color-brand),
398
+ ),
399
+ ),
400
+ ),
401
+ ),
402
+ ),
403
+ square: (
404
+ element: (
405
+ drop-area: (
406
+ aspect-ratio: var(--aspect-square),
407
+ ),
408
+ ),
409
+ ),
410
+ circle: (
411
+ element: (
412
+ drop-area: (
413
+ aspect-ratio: var(--aspect-square),
414
+ border-radius: var(--rounded-full),
415
+ pseudo: (
416
+ after: (
417
+ border-radius: var(--rounded-full),
418
+ ),
419
+ ),
420
+ ),
421
+ preview: (
422
+ border-radius: var(--rounded-full),
423
+ ),
424
+ ),
425
+ ),
426
+ ),
427
+ state: (
428
+ disabled: (
429
+ opacity: var(--opacity-50),
430
+ element: (
431
+ wrapper: (
432
+ state: (
433
+ hover: (
434
+ background-color: var(--input-background-color),
435
+ ),
436
+ focus-within: (
437
+ background-color: var(--input-background-color),
438
+ ),
439
+ ),
440
+ ),
441
+ drop-area: (
442
+ cursor: not-allowed,
443
+ background-color: var(--input-background-color),
444
+ color: var(--input-hint-color),
445
+ ),
446
+ ),
447
+ ),
448
+ readonly: (
449
+ element: (
450
+ wrapper: (
451
+ pseudo: (
452
+ before: (
453
+ opacity: var(--opacity-0),
454
+ ),
455
+ after: (
456
+ opacity: var(--opacity-0),
457
+ ),
458
+ ),
459
+ state: (
460
+ hover: (
461
+ background-color: var(--input-background-color),
462
+ ),
463
+ focus-within: (
464
+ background-color: var(--input-background-color),
465
+ ),
466
+ ),
467
+ ),
468
+ drop-area: (
469
+ display: none,
470
+ ),
471
+ ),
472
+ ),
473
+ ),
474
+ ) !default;
@@ -11,6 +11,7 @@ $vv-input-text: (
11
11
  _alias: '> label',
12
12
  display: var(--input-label-display),
13
13
  font-size: var(--input-label-font-size),
14
+ font-weight: var(--input-label-font-weight),
14
15
  color: var(--input-label-color),
15
16
  margin: 0 0 var(--input-label-gap) 0,
16
17
  white-space: var(--input-label-white-space),
@@ -35,7 +35,7 @@ $vv-nav: (
35
35
  ),
36
36
  ),
37
37
  ),
38
- divider: (
38
+ separator: (
39
39
  _alias: 'li[role="separator"]',
40
40
  display: block,
41
41
  margin-block: var(--spacing-16),
@@ -84,7 +84,7 @@ $vv-nav: (
84
84
  ),
85
85
  ),
86
86
  ),
87
- divider: (
87
+ separator: (
88
88
  margin-block: var(--spacing-8),
89
89
  ),
90
90
  ),
@@ -135,6 +135,7 @@ $vv-nav: (
135
135
  ),
136
136
  item-label: (
137
137
  display: block,
138
+ width: 100%,
138
139
  text-align: center,
139
140
  ),
140
141
  ),
@@ -17,9 +17,11 @@ $vv-progress: (
17
17
  ),
18
18
  -moz-progress-bar: (
19
19
  background-color: var(--color-brand),
20
+ transition: var(--transition-all),
20
21
  ),
21
22
  -webkit-progress-value: (
22
23
  background-color: var(--color-brand),
24
+ transition: var(--transition-all),
23
25
  ),
24
26
  ),
25
27
  state: (
@@ -12,6 +12,7 @@ $vv-select: (
12
12
  _alias: '> label',
13
13
  display: var(--input-label-display),
14
14
  font-size: var(--input-label-font-size),
15
+ font-weight: var(--input-label-font-weight),
15
16
  color: var(--input-label-color),
16
17
  margin: 0 0 var(--input-label-gap) 0,
17
18
  white-space: var(--input-label-white-space),
@@ -72,6 +73,7 @@ $vv-select: (
72
73
  display: flex,
73
74
  flex: 1,
74
75
  width: 100%,
76
+ min-width: 0,
75
77
  ),
76
78
  value: (
77
79
  text-overflow: var(--input-text-overflow),
@@ -7,6 +7,7 @@ $vv-text: (
7
7
  headline: (
8
8
  font-weight: var(--font-semibold),
9
9
  line-height: var(--leading-tight),
10
+ letter-spacing: var(--tracking-tight),
10
11
  margin-top: var(--spacing-24),
11
12
  margin-bottom: var(--spacing-16),
12
13
  ),
@@ -11,6 +11,7 @@ $vv-textarea: (
11
11
  _alias: '> label',
12
12
  display: var(--input-label-display),
13
13
  font-size: var(--input-label-font-size),
14
+ font-weight: var(--input-label-font-weight),
14
15
  color: var(--input-label-color),
15
16
  margin: 0 0 var(--input-label-gap) 0,
16
17
  white-space: var(--input-label-white-space),
@@ -6,6 +6,8 @@ $dark-background-image: (
6
6
  none: none,
7
7
  chevron:
8
8
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(#{hex-to-rgb($dark-color-word)})' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E"),
9
+ chessboard:
10
+ url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' version='1.1' width='200' height='400'%3E%3Cdefs%3E%3Cpattern id='grid' width='20' height='20' patternUnits='userSpaceOnUse'%3E%3Crect fill='white' x='0' y='0' width='10' height='10' opacity='0.1'/%3E%3Crect fill='black' x='10' y='0' width='10' height='10'/%3E%3Crect fill='white' x='10' y='10' width='10' height='10' opacity='0.1'/%3E%3Crect fill='black' x='0' y='10' width='10' height='10'/%3E%3C/pattern%3E%3C/defs%3E%3Crect fill='url(%23grid)' x='0' y='0' width='100%25' height='100%25'/%3E%3C/svg%3E"),
9
11
  grid:
10
12
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' width='32' height='32' fill='none' stroke='rgb(51 65 85 / 0.25)'%3E%3Cpath d='M0 .5H31.5V32'/%3E%3C/svg%3E"),
11
13
  check:
@@ -428,6 +428,7 @@
428
428
  disabled,
429
429
  checked,
430
430
  checked-within,
431
+ multiple,
431
432
  selected,
432
433
  readonly,
433
434
  empty,
@@ -514,7 +515,14 @@
514
515
  '#{$modifier}#{$alias}:not(:has(*:placeholder-shown))'
515
516
  );
516
517
  }
517
- } @else if $state == 'disabled' or $state == 'readonly' {
518
+ } @else if
519
+ $state ==
520
+ 'disabled' or
521
+ $state ==
522
+ 'readonly' or
523
+ $state ==
524
+ 'multiple'
525
+ {
518
526
  $selectors: list.join(
519
527
  $selectors,
520
528
  '#{$modifier}#{$block-item}[#{$state}]'
@@ -844,6 +852,8 @@
844
852
  datetime-edit,
845
853
  datetime-edit-fields-wrapper,
846
854
  datetime-edit-day-field,
855
+ backdrop,
856
+ file-selector-button,
847
857
  -webkit-progress-bar,
848
858
  -webkit-progress-value,
849
859
  -webkit-inner-element,
@@ -53,6 +53,7 @@
53
53
  $map: $background-image,
54
54
  $class: bg,
55
55
  $attribute: background-image,
56
+ $prop: bg,
56
57
  $zero-specificity: $zero-specificity-for-utilities
57
58
  );
58
59
 
@@ -195,6 +195,16 @@
195
195
  @extend %text-clip;
196
196
  }
197
197
 
198
+ %text-balance {
199
+ text-wrap: balance;
200
+ }
201
+ @include wrap-with-where(
202
+ $selector: '.text-balance',
203
+ $enabled: $zero-specificity-for-utilities
204
+ ) {
205
+ @extend %text-balance;
206
+ }
207
+
198
208
  // word break
199
209
  %break-normal {
200
210
  overflow-wrap: normal;