@slotted/styles 0.1.0-beta.7 → 0.1.0-beta.9
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.
- package/package.json +1 -1
- package/src/accordion/accordion.css +10 -10
- package/src/action-bar/action-bar.css +31 -32
- package/src/action-sheet/action-sheet.css +36 -36
- package/src/alert/alert.css +35 -35
- package/src/app-shell/app-shell.css +280 -299
- package/src/aspect-ratio/aspect-ratio.css +9 -9
- package/src/attachment/attachment.css +91 -99
- package/src/avatar/avatar.css +41 -41
- package/src/avatar-group/avatar-group.css +21 -22
- package/src/badge/badge.css +37 -37
- package/src/breadcrumb/breadcrumb.css +37 -37
- package/src/button/button.css +88 -69
- package/src/button-group/button-group.css +69 -73
- package/src/calendar/calendar.css +93 -103
- package/src/card/card.css +54 -61
- package/src/carousel/carousel.css +150 -161
- package/src/cascader/cascader.css +147 -151
- package/src/chart/chart.css +225 -240
- package/src/checkbox/checkbox.css +119 -124
- package/src/checkbox-group/checkbox-group.css +7 -7
- package/src/code-block/code-block.css +81 -85
- package/src/collapsible/collapsible.css +69 -76
- package/src/color-picker/color-picker.css +83 -91
- package/src/column-manager/column-manager.css +106 -114
- package/src/combobox/combobox.css +99 -101
- package/src/command-palette/command-palette.css +84 -90
- package/src/container/container.css +24 -24
- package/src/context-menu/context-menu.css +8 -8
- package/src/currency-field/currency-field.css +99 -104
- package/src/dashboard-grid/dashboard-grid.css +104 -107
- package/src/data-grid/data-grid.css +458 -456
- package/src/data-grid/data-grid.tokens.json +2 -0
- package/src/data-list/data-list.css +67 -69
- package/src/date-field/date-field.css +50 -50
- package/src/date-picker/date-picker.css +40 -42
- package/src/date-range-picker/date-range-picker.css +114 -118
- package/src/datetime-field/datetime-field.css +73 -78
- package/src/datetime-picker/datetime-picker.css +61 -63
- package/src/datetime-range-picker/datetime-range-picker.css +149 -156
- package/src/description-list/description-list.css +61 -64
- package/src/detail-panel/detail-panel.css +70 -70
- package/src/dialog/dialog.css +312 -148
- package/src/divider/divider.css +18 -18
- package/src/drawer/drawer.css +186 -209
- package/src/entity-picker/entity-picker.css +220 -239
- package/src/event-calendar/event-calendar.css +343 -385
- package/src/field/field.css +74 -78
- package/src/field-group/field-group.css +22 -25
- package/src/filter-bar/filter-bar.css +193 -209
- package/src/form/form.css +21 -24
- package/src/fullscreen/fullscreen.css +24 -25
- package/src/grid/grid.css +28 -28
- package/src/highlight/highlight.css +6 -6
- package/src/hover-card/hover-card.css +6 -6
- package/src/icon/icon.css +15 -15
- package/src/image/image.css +39 -39
- package/src/import-export-center/import-export-center.css +135 -156
- package/src/inline/inline.css +27 -27
- package/src/inline-message/inline-message.css +28 -28
- package/src/kbd/kbd.css +26 -26
- package/src/link/link.css +15 -15
- package/src/list/list.css +20 -20
- package/src/list-item/list-item.css +66 -66
- package/src/listbox/listbox.css +56 -59
- package/src/loading-overlay/loading-overlay.css +75 -92
- package/src/markdown/markdown.css +17 -17
- package/src/menu/menu.css +63 -65
- package/src/menubar/menubar.css +13 -13
- package/src/message/message.css +174 -202
- package/src/message-scroller/message-scroller.css +41 -42
- package/src/multi-select/multi-select.css +131 -137
- package/src/navigation-menu/navigation-menu.css +167 -188
- package/src/notification-center/notification-center.css +134 -148
- package/src/number-field/number-field.css +76 -81
- package/src/otp-input/otp-input.css +48 -48
- package/src/page/page.css +23 -23
- package/src/page-header/page-header.css +219 -280
- package/src/pagination/pagination.css +68 -72
- package/src/popover/popover.css +40 -49
- package/src/progress-indicator/progress-indicator.css +85 -90
- package/src/prompt-composer/prompt-composer.css +94 -99
- package/src/prose/prose.css +71 -75
- package/src/radio-group/radio-group.css +98 -103
- package/src/rating/rating.css +132 -132
- package/src/result-state/result-state.css +74 -77
- package/src/saved-views/saved-views.css +41 -47
- package/src/scroll-area/scroll-area.css +32 -35
- package/src/section/section.css +16 -16
- package/src/segmented-control/segmented-control.css +77 -79
- package/src/select/select.css +113 -115
- package/src/side-navigation/side-navigation.css +170 -180
- package/src/skeleton/skeleton.css +47 -48
- package/src/slider/slider.css +86 -88
- package/src/sparkline/sparkline.css +32 -32
- package/src/spinner/spinner.css +4 -4
- package/src/split-button/split-button.css +26 -31
- package/src/splitter/splitter.css +35 -35
- package/src/stack/stack.css +24 -24
- package/src/stat-card/stat-card.css +102 -103
- package/src/status-indicator/status-indicator.css +28 -28
- package/src/stepper/stepper.css +58 -62
- package/src/switch/switch.css +86 -92
- package/src/table/table.css +189 -198
- package/src/table-of-contents/table-of-contents.css +51 -54
- package/src/tabs/tabs.css +157 -172
- package/src/tag/tag.css +67 -71
- package/src/tags-input/tags-input.css +124 -74
- package/src/tags-input/tags-input.tokens.json +6 -1
- package/src/text-field/text-field.css +108 -126
- package/src/textarea/textarea.css +26 -26
- package/src/time-field/time-field.css +67 -67
- package/src/time-picker/time-picker.css +56 -58
- package/src/time-range-picker/time-range-picker.css +126 -133
- package/src/timeline/timeline.css +244 -266
- package/src/toast/toast.css +81 -90
- package/src/toggle/toggle.css +29 -33
- package/src/toggle-group/toggle-group.css +67 -71
- package/src/toolbar/toolbar.css +30 -35
- package/src/tooltip/tooltip.css +26 -26
- package/src/top-navigation/top-navigation.css +243 -259
- package/src/tour/tour.css +51 -60
- package/src/transfer/transfer.css +160 -164
- package/src/tree/tree.css +103 -111
- package/src/typography/typography.css +36 -36
- package/src/upload/upload.css +224 -224
- package/src/visually-hidden/visually-hidden.css +1 -1
- package/src/wizard/wizard.css +185 -197
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* └────────────────────────────────────────┘
|
|
16
16
|
* ⏸ ◀ ● ━━ ● ● ▶ 2 / 4 controls placement="below"
|
|
17
17
|
*/
|
|
18
|
-
[data-ui
|
|
18
|
+
[data-ui-carousel] {
|
|
19
19
|
--_control-size: var(--slotted-control-height-md, 34px);
|
|
20
20
|
--_icon-size: var(--slotted-control-icon-size-md, 16px);
|
|
21
21
|
--_gap: var(--slotted-carousel-gap, var(--slotted-space-6, 1rem));
|
|
@@ -55,12 +55,12 @@
|
|
|
55
55
|
row-gap: var(--slotted-carousel-controls-gap, var(--slotted-space-5, 0.75rem));
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
-
[data-ui
|
|
58
|
+
[data-ui-carousel][data-size='sm'] {
|
|
59
59
|
--_control-size: var(--slotted-control-height-sm, 30px);
|
|
60
60
|
--_icon-size: var(--slotted-control-icon-size-sm, 14px);
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
-
[data-ui
|
|
63
|
+
[data-ui-carousel][data-size='lg'] {
|
|
64
64
|
--_control-size: var(--slotted-control-height-lg, 38px);
|
|
65
65
|
--_icon-size: var(--slotted-control-icon-size-lg, 18px);
|
|
66
66
|
}
|
|
@@ -72,7 +72,7 @@
|
|
|
72
72
|
* viewport, without the absolute positioning that puts it outside the
|
|
73
73
|
* component's box.
|
|
74
74
|
*/
|
|
75
|
-
[data-ui
|
|
75
|
+
[data-ui-carousel][data-arrows='outside'] {
|
|
76
76
|
column-gap: var(--slotted-space-4, 0.5rem);
|
|
77
77
|
grid-template-columns: auto minmax(0, 1fr) auto;
|
|
78
78
|
}
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
* container query that writes `--slotted-carousel-slides-per-view` changes
|
|
88
88
|
* the layout and the engine reads the new pages from it.
|
|
89
89
|
*/
|
|
90
|
-
[data-ui
|
|
90
|
+
[data-ui-carousel] > [data-part-viewport] {
|
|
91
91
|
/**
|
|
92
92
|
* The share of the row a slide takes, never below the slide's own floor:
|
|
93
93
|
* three cards per view at 240 pixels are 64-pixel cards, and the floor
|
|
@@ -122,15 +122,15 @@
|
|
|
122
122
|
scrollbar-width: none;
|
|
123
123
|
}
|
|
124
124
|
|
|
125
|
-
[data-ui
|
|
125
|
+
[data-ui-carousel][data-arrows='outside'] > [data-part-viewport] {
|
|
126
126
|
grid-area: 1 / 2;
|
|
127
127
|
}
|
|
128
128
|
|
|
129
|
-
[data-ui
|
|
129
|
+
[data-ui-carousel] > [data-part-viewport]::-webkit-scrollbar {
|
|
130
130
|
display: none;
|
|
131
131
|
}
|
|
132
132
|
|
|
133
|
-
[data-ui
|
|
133
|
+
[data-ui-carousel] > [data-part-viewport]:focus-visible {
|
|
134
134
|
outline: var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);
|
|
135
135
|
outline-offset: var(--slotted-focus-ring-offset, 2px);
|
|
136
136
|
}
|
|
@@ -144,7 +144,7 @@
|
|
|
144
144
|
* pointer. Both movements end exactly on a page, so snap returns without
|
|
145
145
|
* moving anything.
|
|
146
146
|
*/
|
|
147
|
-
[data-ui
|
|
147
|
+
[data-ui-carousel] > [data-part-viewport][data-moving] {
|
|
148
148
|
scroll-snap-type: none;
|
|
149
149
|
}
|
|
150
150
|
|
|
@@ -154,22 +154,22 @@
|
|
|
154
154
|
* has no cursor to change.
|
|
155
155
|
*/
|
|
156
156
|
@media (hover: hover) and (pointer: fine) {
|
|
157
|
-
[data-ui
|
|
157
|
+
[data-ui-carousel][data-draggable]:not([data-transition='fade']) > [data-part-viewport] {
|
|
158
158
|
cursor: grab;
|
|
159
159
|
}
|
|
160
160
|
}
|
|
161
161
|
|
|
162
|
-
[data-ui
|
|
162
|
+
[data-ui-carousel][data-dragging] > [data-part-viewport] {
|
|
163
163
|
cursor: grabbing;
|
|
164
164
|
user-select: none;
|
|
165
165
|
}
|
|
166
166
|
|
|
167
167
|
/** A picture inside a draggable row would otherwise start the browser's own image drag. */
|
|
168
|
-
[data-ui
|
|
168
|
+
[data-ui-carousel][data-draggable] > [data-part-viewport] img {
|
|
169
169
|
-webkit-user-drag: none;
|
|
170
170
|
}
|
|
171
171
|
|
|
172
|
-
[data-ui
|
|
172
|
+
[data-ui-carousel][data-orientation='vertical'] > [data-part-viewport] {
|
|
173
173
|
/**
|
|
174
174
|
* A column of slides needs a height to divide, and the content cannot
|
|
175
175
|
* give one: the tallest slide would make the viewport as tall as the
|
|
@@ -197,7 +197,7 @@
|
|
|
197
197
|
* `--slotted-carousel-overscroll` — less and less the further the hand
|
|
198
198
|
* goes — and springs it back to nothing on release.
|
|
199
199
|
*/
|
|
200
|
-
[data-ui
|
|
200
|
+
[data-ui-carousel] > [data-part-viewport] > [data-part-slide] {
|
|
201
201
|
min-block-size: 0;
|
|
202
202
|
min-inline-size: 0;
|
|
203
203
|
position: relative;
|
|
@@ -205,7 +205,7 @@
|
|
|
205
205
|
translate: var(--slotted-carousel-overscroll, none);
|
|
206
206
|
}
|
|
207
207
|
|
|
208
|
-
[data-ui
|
|
208
|
+
[data-ui-carousel][data-align='center'] > [data-part-viewport] > [data-part-slide] {
|
|
209
209
|
scroll-snap-align: center;
|
|
210
210
|
}
|
|
211
211
|
|
|
@@ -214,9 +214,7 @@
|
|
|
214
214
|
* snap point. Before that every slide is one, which is the right paging for
|
|
215
215
|
* a server response and for one slide per view.
|
|
216
216
|
*/
|
|
217
|
-
[data-ui
|
|
218
|
-
> [data-part='viewport']
|
|
219
|
-
> [data-part='slide']:not([data-snap]) {
|
|
217
|
+
[data-ui-carousel][data-measured] > [data-part-viewport] > [data-part-slide]:not([data-snap]) {
|
|
220
218
|
scroll-snap-align: none;
|
|
221
219
|
}
|
|
222
220
|
|
|
@@ -235,7 +233,7 @@
|
|
|
235
233
|
* so it hides the leaving slide when its fade ends and nothing in it can be
|
|
236
234
|
* reached once it is gone.
|
|
237
235
|
*/
|
|
238
|
-
[data-ui
|
|
236
|
+
[data-ui-carousel][data-transition='fade'] > [data-part-viewport] {
|
|
239
237
|
grid-auto-columns: 100%;
|
|
240
238
|
grid-template-areas: 'stack';
|
|
241
239
|
overflow: hidden;
|
|
@@ -243,7 +241,7 @@
|
|
|
243
241
|
touch-action: pan-y;
|
|
244
242
|
}
|
|
245
243
|
|
|
246
|
-
[data-ui
|
|
244
|
+
[data-ui-carousel][data-transition='fade'] > [data-part-viewport] > [data-part-slide] {
|
|
247
245
|
grid-area: stack;
|
|
248
246
|
opacity: 0;
|
|
249
247
|
transition:
|
|
@@ -252,9 +250,9 @@
|
|
|
252
250
|
visibility: hidden;
|
|
253
251
|
}
|
|
254
252
|
|
|
255
|
-
[data-ui
|
|
256
|
-
> [data-part
|
|
257
|
-
> [data-part
|
|
253
|
+
[data-ui-carousel][data-transition='fade']
|
|
254
|
+
> [data-part-viewport]
|
|
255
|
+
> [data-part-slide][data-current] {
|
|
258
256
|
opacity: 1;
|
|
259
257
|
transition:
|
|
260
258
|
opacity var(--slotted-duration-long) var(--slotted-easing-enter, ease-out),
|
|
@@ -271,9 +269,9 @@
|
|
|
271
269
|
* 16-pixel mark; the family takes the control scale, 34 at `md`, so the
|
|
272
270
|
* pair is a step larger than the dots and matches a toolbar's buttons.
|
|
273
271
|
*/
|
|
274
|
-
[data-ui
|
|
275
|
-
[data-ui
|
|
276
|
-
[data-ui
|
|
272
|
+
[data-ui-carousel] [data-part-previous],
|
|
273
|
+
[data-ui-carousel] [data-part-next],
|
|
274
|
+
[data-ui-carousel] [data-part-autoplay] {
|
|
277
275
|
--slotted-icon-size: var(--_icon-size);
|
|
278
276
|
|
|
279
277
|
align-items: center;
|
|
@@ -306,44 +304,44 @@
|
|
|
306
304
|
}
|
|
307
305
|
|
|
308
306
|
/** Over the viewport, at the two ends of its axis. */
|
|
309
|
-
[data-ui
|
|
310
|
-
[data-ui
|
|
307
|
+
[data-ui-carousel] > [data-part-previous],
|
|
308
|
+
[data-ui-carousel] > [data-part-next] {
|
|
311
309
|
align-self: center;
|
|
312
310
|
grid-area: 1 / 1;
|
|
313
311
|
margin-inline: var(--_inset);
|
|
314
312
|
z-index: 1;
|
|
315
313
|
}
|
|
316
314
|
|
|
317
|
-
[data-ui
|
|
315
|
+
[data-ui-carousel] > [data-part-previous] {
|
|
318
316
|
justify-self: start;
|
|
319
317
|
}
|
|
320
318
|
|
|
321
|
-
[data-ui
|
|
319
|
+
[data-ui-carousel] > [data-part-next] {
|
|
322
320
|
justify-self: end;
|
|
323
321
|
}
|
|
324
322
|
|
|
325
|
-
[data-ui
|
|
323
|
+
[data-ui-carousel][data-arrows='outside'] > [data-part-previous] {
|
|
326
324
|
grid-area: 1 / 1;
|
|
327
325
|
margin-inline: 0;
|
|
328
326
|
}
|
|
329
327
|
|
|
330
|
-
[data-ui
|
|
328
|
+
[data-ui-carousel][data-arrows='outside'] > [data-part-next] {
|
|
331
329
|
grid-area: 1 / 3;
|
|
332
330
|
margin-inline: 0;
|
|
333
331
|
}
|
|
334
332
|
|
|
335
|
-
[data-ui
|
|
336
|
-
[data-ui
|
|
333
|
+
[data-ui-carousel][data-orientation='vertical'] > [data-part-previous],
|
|
334
|
+
[data-ui-carousel][data-orientation='vertical'] > [data-part-next] {
|
|
337
335
|
justify-self: center;
|
|
338
336
|
margin-block: var(--_inset);
|
|
339
337
|
margin-inline: 0;
|
|
340
338
|
}
|
|
341
339
|
|
|
342
|
-
[data-ui
|
|
340
|
+
[data-ui-carousel][data-orientation='vertical'] > [data-part-previous] {
|
|
343
341
|
align-self: start;
|
|
344
342
|
}
|
|
345
343
|
|
|
346
|
-
[data-ui
|
|
344
|
+
[data-ui-carousel][data-orientation='vertical'] > [data-part-next] {
|
|
347
345
|
align-self: end;
|
|
348
346
|
}
|
|
349
347
|
|
|
@@ -352,15 +350,15 @@
|
|
|
352
350
|
* icon box mirrors it in a right-to-left document. Previous turns it round;
|
|
353
351
|
* a vertical carousel turns both a quarter so they point along the column.
|
|
354
352
|
*/
|
|
355
|
-
[data-ui
|
|
353
|
+
[data-ui-carousel] [data-part-previous] > [data-ui-icon] {
|
|
356
354
|
rotate: 180deg;
|
|
357
355
|
}
|
|
358
356
|
|
|
359
|
-
[data-ui
|
|
357
|
+
[data-ui-carousel][data-orientation='vertical'] [data-part-previous] > [data-ui-icon] {
|
|
360
358
|
rotate: -90deg;
|
|
361
359
|
}
|
|
362
360
|
|
|
363
|
-
[data-ui
|
|
361
|
+
[data-ui-carousel][data-orientation='vertical'] [data-part-next] > [data-ui-icon] {
|
|
364
362
|
rotate: 90deg;
|
|
365
363
|
}
|
|
366
364
|
|
|
@@ -370,15 +368,15 @@
|
|
|
370
368
|
* and a mirrored chevron turned a quarter points the other way along the
|
|
371
369
|
* column.
|
|
372
370
|
*/
|
|
373
|
-
[data-ui
|
|
374
|
-
:is([data-part
|
|
375
|
-
> [data-ui
|
|
371
|
+
[data-ui-carousel][data-orientation='vertical']
|
|
372
|
+
:is([data-part-previous], [data-part-next])
|
|
373
|
+
> [data-ui-icon]:dir(rtl) {
|
|
376
374
|
scale: none;
|
|
377
375
|
}
|
|
378
376
|
|
|
379
|
-
[data-ui
|
|
380
|
-
[data-ui
|
|
381
|
-
[data-ui
|
|
377
|
+
[data-ui-carousel] [data-part-previous]:hover:not([data-disabled]):not(:disabled),
|
|
378
|
+
[data-ui-carousel] [data-part-next]:hover:not([data-disabled]):not(:disabled),
|
|
379
|
+
[data-ui-carousel] [data-part-autoplay]:hover:not([data-disabled]):not(:disabled) {
|
|
382
380
|
background: var(--slotted-tone-secondary-subtle-hover, ButtonFace);
|
|
383
381
|
}
|
|
384
382
|
|
|
@@ -388,18 +386,18 @@
|
|
|
388
386
|
* standing over a picture has no floor to be put down on, and a scale is
|
|
389
387
|
* the press that reads on a shape with no bottom edge.
|
|
390
388
|
*/
|
|
391
|
-
[data-ui
|
|
392
|
-
[data-ui
|
|
393
|
-
[data-ui
|
|
389
|
+
[data-ui-carousel] [data-part-previous]:active:not([data-disabled]):not(:disabled),
|
|
390
|
+
[data-ui-carousel] [data-part-next]:active:not([data-disabled]):not(:disabled),
|
|
391
|
+
[data-ui-carousel] [data-part-autoplay]:active:not([data-disabled]):not(:disabled) {
|
|
394
392
|
background: var(--slotted-tone-secondary-subtle-active, ButtonFace);
|
|
395
393
|
box-shadow: none;
|
|
396
394
|
scale: 0.94;
|
|
397
395
|
transition-duration: var(--slotted-duration-instant);
|
|
398
396
|
}
|
|
399
397
|
|
|
400
|
-
[data-ui
|
|
401
|
-
[data-ui
|
|
402
|
-
[data-ui
|
|
398
|
+
[data-ui-carousel] [data-part-previous]:focus-visible,
|
|
399
|
+
[data-ui-carousel] [data-part-next]:focus-visible,
|
|
400
|
+
[data-ui-carousel] [data-part-autoplay]:focus-visible {
|
|
403
401
|
outline: var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);
|
|
404
402
|
outline-offset: var(--slotted-focus-ring-offset, 2px);
|
|
405
403
|
}
|
|
@@ -411,7 +409,7 @@
|
|
|
411
409
|
* foundation's disabled ink, with its ground kept so it still reads as a
|
|
412
410
|
* control over a picture.
|
|
413
411
|
*/
|
|
414
|
-
[data-ui
|
|
412
|
+
[data-ui-carousel] :is([data-part-previous], [data-part-next])[data-disabled] {
|
|
415
413
|
border-color: var(--slotted-disabled-border, GrayText);
|
|
416
414
|
box-shadow: none;
|
|
417
415
|
color: var(--slotted-disabled-foreground, GrayText);
|
|
@@ -425,7 +423,7 @@
|
|
|
425
423
|
* pixels, and a carousel in a third of a dashboard is narrower than that.
|
|
426
424
|
* The counter drops under the dots, centred, before anything is clipped.
|
|
427
425
|
*/
|
|
428
|
-
[data-ui
|
|
426
|
+
[data-ui-carousel] > [data-part-controls] {
|
|
429
427
|
align-items: center;
|
|
430
428
|
display: flex;
|
|
431
429
|
flex-wrap: wrap;
|
|
@@ -435,7 +433,7 @@
|
|
|
435
433
|
min-inline-size: 0;
|
|
436
434
|
}
|
|
437
435
|
|
|
438
|
-
[data-ui
|
|
436
|
+
[data-ui-carousel][data-arrows='outside'] > [data-part-controls] {
|
|
439
437
|
grid-column: 2;
|
|
440
438
|
}
|
|
441
439
|
|
|
@@ -445,7 +443,7 @@
|
|
|
445
443
|
* has to read in every scheme, and a ground that lets the picture through
|
|
446
444
|
* gives the dots a different ground on every slide.
|
|
447
445
|
*/
|
|
448
|
-
[data-ui
|
|
446
|
+
[data-ui-carousel] > [data-part-controls][data-placement='overlay'] {
|
|
449
447
|
align-self: end;
|
|
450
448
|
background: var(--slotted-surface-raised, Canvas);
|
|
451
449
|
border-radius: var(--slotted-radius-full, 9999px);
|
|
@@ -465,9 +463,9 @@
|
|
|
465
463
|
* They take the height the foundation gives the inside of a control, so
|
|
466
464
|
* the pill is that height and a step of air either side of it.
|
|
467
465
|
*/
|
|
468
|
-
[data-ui
|
|
469
|
-
> [data-part
|
|
470
|
-
> :is([data-part
|
|
466
|
+
[data-ui-carousel]
|
|
467
|
+
> [data-part-controls][data-placement='overlay']
|
|
468
|
+
> :is([data-part-previous], [data-part-next], [data-part-autoplay]) {
|
|
471
469
|
--_control-size: var(--slotted-control-inner-size-md, 24px);
|
|
472
470
|
|
|
473
471
|
background: transparent;
|
|
@@ -475,29 +473,29 @@
|
|
|
475
473
|
box-shadow: none;
|
|
476
474
|
}
|
|
477
475
|
|
|
478
|
-
[data-ui
|
|
479
|
-
> [data-part
|
|
480
|
-
> :is([data-part
|
|
476
|
+
[data-ui-carousel][data-size='sm']
|
|
477
|
+
> [data-part-controls][data-placement='overlay']
|
|
478
|
+
> :is([data-part-previous], [data-part-next], [data-part-autoplay]) {
|
|
481
479
|
--_control-size: var(--slotted-control-inner-size-sm, 22px);
|
|
482
480
|
}
|
|
483
481
|
|
|
484
|
-
[data-ui
|
|
485
|
-
> [data-part
|
|
486
|
-
> :is([data-part
|
|
482
|
+
[data-ui-carousel][data-size='lg']
|
|
483
|
+
> [data-part-controls][data-placement='overlay']
|
|
484
|
+
> :is([data-part-previous], [data-part-next], [data-part-autoplay]) {
|
|
487
485
|
--_control-size: var(--slotted-control-inner-size-lg, 28px);
|
|
488
486
|
}
|
|
489
487
|
|
|
490
|
-
[data-ui
|
|
488
|
+
[data-ui-carousel][data-arrows='outside'] > [data-part-controls][data-placement='overlay'] {
|
|
491
489
|
grid-area: 1 / 2;
|
|
492
490
|
}
|
|
493
491
|
|
|
494
|
-
[data-ui
|
|
492
|
+
[data-ui-carousel] > [data-part-controls] > [data-part-indicators][data-variant='line'] {
|
|
495
493
|
flex: 1 1 auto;
|
|
496
494
|
}
|
|
497
495
|
|
|
498
496
|
/* ── The indicators ───────────────────────────────────────────────────── */
|
|
499
497
|
|
|
500
|
-
[data-ui
|
|
498
|
+
[data-ui-carousel] [data-part-indicators] {
|
|
501
499
|
align-items: center;
|
|
502
500
|
display: flex;
|
|
503
501
|
/* A dot's box is twenty pixels; four between two boxes puts their centres twenty-four apart. */
|
|
@@ -513,7 +511,7 @@
|
|
|
513
511
|
* centre, which is the spacing WCAG 2.2 SC 2.5.8 accepts for a target
|
|
514
512
|
* smaller than twenty-four.
|
|
515
513
|
*/
|
|
516
|
-
[data-ui
|
|
514
|
+
[data-ui-carousel] [data-part-indicator] {
|
|
517
515
|
appearance: none;
|
|
518
516
|
background: transparent;
|
|
519
517
|
block-size: var(--slotted-target-min, 24px);
|
|
@@ -529,16 +527,16 @@
|
|
|
529
527
|
transition: inline-size var(--slotted-duration-medium) var(--slotted-easing-standard, ease);
|
|
530
528
|
}
|
|
531
529
|
|
|
532
|
-
[data-ui
|
|
530
|
+
[data-ui-carousel] [data-part-indicator][data-current] {
|
|
533
531
|
inline-size: calc(var(--_dot-current) + 2 * var(--_dot-air));
|
|
534
532
|
}
|
|
535
533
|
|
|
536
|
-
[data-ui
|
|
537
|
-
[data-part
|
|
538
|
-
> [data-part
|
|
539
|
-
[data-ui
|
|
540
|
-
[data-part
|
|
541
|
-
> [data-part
|
|
534
|
+
[data-ui-carousel]
|
|
535
|
+
[data-part-indicators]:not([data-variant='thumbnails'])
|
|
536
|
+
> [data-part-indicator]::before,
|
|
537
|
+
[data-ui-carousel]
|
|
538
|
+
[data-part-indicators]:not([data-variant='thumbnails'])
|
|
539
|
+
> [data-part-indicator]::after {
|
|
542
540
|
block-size: var(--_dot);
|
|
543
541
|
border-radius: var(--slotted-radius-full, 9999px);
|
|
544
542
|
content: '';
|
|
@@ -552,30 +550,30 @@
|
|
|
552
550
|
* every surface a carousel stands on; the current one is the ink, and its
|
|
553
551
|
* shape already differs.
|
|
554
552
|
*/
|
|
555
|
-
[data-ui
|
|
556
|
-
[data-part
|
|
557
|
-
> [data-part
|
|
553
|
+
[data-ui-carousel]
|
|
554
|
+
[data-part-indicators]:not([data-variant='thumbnails'])
|
|
555
|
+
> [data-part-indicator]::before {
|
|
558
556
|
background: var(--slotted-border-strong, transparent);
|
|
559
557
|
transition: background-color var(--slotted-control-transition-duration)
|
|
560
558
|
var(--slotted-control-transition-easing, ease);
|
|
561
559
|
}
|
|
562
560
|
|
|
563
|
-
[data-ui
|
|
564
|
-
[data-part
|
|
565
|
-
> [data-part
|
|
561
|
+
[data-ui-carousel]
|
|
562
|
+
[data-part-indicators]:not([data-variant='thumbnails'])
|
|
563
|
+
> [data-part-indicator]:hover:not([data-current]):not([data-disabled])::before {
|
|
566
564
|
background: var(--slotted-text-muted, transparent);
|
|
567
565
|
}
|
|
568
566
|
|
|
569
|
-
[data-ui
|
|
570
|
-
[data-part
|
|
571
|
-
> [data-part
|
|
567
|
+
[data-ui-carousel]
|
|
568
|
+
[data-part-indicators]:not([data-variant='thumbnails'])
|
|
569
|
+
> [data-part-indicator]:active:not([data-current]):not([data-disabled])::before {
|
|
572
570
|
background: var(--slotted-text, transparent);
|
|
573
571
|
transition-duration: var(--slotted-duration-instant);
|
|
574
572
|
}
|
|
575
573
|
|
|
576
|
-
[data-ui
|
|
577
|
-
[data-part
|
|
578
|
-
> [data-part
|
|
574
|
+
[data-ui-carousel]
|
|
575
|
+
[data-part-indicators]:not([data-variant='thumbnails'])
|
|
576
|
+
> [data-part-indicator][data-current]::before {
|
|
579
577
|
background: var(--slotted-text, transparent);
|
|
580
578
|
}
|
|
581
579
|
|
|
@@ -590,24 +588,24 @@
|
|
|
590
588
|
* disagree. The fill grows its own inline size from the inline start, like
|
|
591
589
|
* `toast`'s countdown, so there is no origin to mirror.
|
|
592
590
|
*/
|
|
593
|
-
[data-ui
|
|
594
|
-
[data-part
|
|
595
|
-
> [data-part
|
|
591
|
+
[data-ui-carousel][data-playing]
|
|
592
|
+
[data-part-indicators]:not([data-variant='thumbnails'])
|
|
593
|
+
> [data-part-indicator][data-current]::before {
|
|
596
594
|
background: var(--slotted-border-strong, transparent);
|
|
597
595
|
}
|
|
598
596
|
|
|
599
|
-
[data-ui
|
|
600
|
-
[data-part
|
|
601
|
-
> [data-part
|
|
597
|
+
[data-ui-carousel][data-playing]
|
|
598
|
+
[data-part-indicators]:not([data-variant='thumbnails'])
|
|
599
|
+
> [data-part-indicator][data-current]::after {
|
|
602
600
|
animation: slotted-carousel-countdown
|
|
603
601
|
var(--slotted-carousel-autoplay-delay, var(--slotted-duration-loop-slow)) linear forwards;
|
|
604
602
|
background: var(--slotted-text, transparent);
|
|
605
603
|
inset-inline-end: auto;
|
|
606
604
|
}
|
|
607
605
|
|
|
608
|
-
[data-ui
|
|
609
|
-
[data-part
|
|
610
|
-
> [data-part
|
|
606
|
+
[data-ui-carousel][data-playing][data-paused]
|
|
607
|
+
[data-part-indicators]
|
|
608
|
+
> [data-part-indicator][data-current]::after {
|
|
611
609
|
animation-play-state: paused;
|
|
612
610
|
}
|
|
613
611
|
|
|
@@ -629,15 +627,15 @@
|
|
|
629
627
|
* stays a tab in the arrow ring, and moving onto it makes it current, which
|
|
630
628
|
* brings the window to it.
|
|
631
629
|
*/
|
|
632
|
-
[data-ui
|
|
633
|
-
[data-part
|
|
634
|
-
> [data-part
|
|
630
|
+
[data-ui-carousel]
|
|
631
|
+
[data-part-indicators][data-adaptive]
|
|
632
|
+
> [data-part-indicator][data-distance='2']::before {
|
|
635
633
|
scale: 0.66;
|
|
636
634
|
}
|
|
637
635
|
|
|
638
|
-
[data-ui
|
|
639
|
-
[data-part
|
|
640
|
-
> [data-part
|
|
636
|
+
[data-ui-carousel]
|
|
637
|
+
[data-part-indicators][data-adaptive]
|
|
638
|
+
> [data-part-indicator][data-distance='far'] {
|
|
641
639
|
inline-size: 0;
|
|
642
640
|
overflow: hidden;
|
|
643
641
|
}
|
|
@@ -649,34 +647,30 @@
|
|
|
649
647
|
* dot, and the current one is the ink — the progress line ReUI's `blog-3`
|
|
650
648
|
* draws as a single pixel, at the thickness the foundation gives a marker.
|
|
651
649
|
*/
|
|
652
|
-
[data-ui
|
|
650
|
+
[data-ui-carousel] [data-part-indicators][data-variant='line'] {
|
|
653
651
|
gap: var(--slotted-space-2, 0.25rem);
|
|
654
652
|
}
|
|
655
653
|
|
|
656
|
-
[data-ui
|
|
657
|
-
[data-ui
|
|
658
|
-
[data-part
|
|
659
|
-
> [data-part
|
|
654
|
+
[data-ui-carousel] [data-part-indicators][data-variant='line'] > [data-part-indicator],
|
|
655
|
+
[data-ui-carousel]
|
|
656
|
+
[data-part-indicators][data-variant='line']
|
|
657
|
+
> [data-part-indicator][data-current] {
|
|
660
658
|
flex: 1 1 0;
|
|
661
659
|
inline-size: auto;
|
|
662
660
|
min-inline-size: var(--slotted-target-min, 24px);
|
|
663
661
|
}
|
|
664
662
|
|
|
665
|
-
[data-ui='
|
|
666
|
-
|
|
667
|
-
> [data-part='indicator']::before,
|
|
668
|
-
[data-ui='carousel']
|
|
669
|
-
[data-part='indicators'][data-variant='line']
|
|
670
|
-
> [data-part='indicator']::after {
|
|
663
|
+
[data-ui-carousel] [data-part-indicators][data-variant='line'] > [data-part-indicator]::before,
|
|
664
|
+
[data-ui-carousel] [data-part-indicators][data-variant='line'] > [data-part-indicator]::after {
|
|
671
665
|
block-size: var(--_line);
|
|
672
666
|
border-radius: var(--slotted-radius-full, 9999px);
|
|
673
667
|
inset-block-start: calc(50% - var(--_line) / 2);
|
|
674
668
|
inset-inline: 0;
|
|
675
669
|
}
|
|
676
670
|
|
|
677
|
-
[data-ui
|
|
678
|
-
[data-part
|
|
679
|
-
> [data-part
|
|
671
|
+
[data-ui-carousel][data-playing]
|
|
672
|
+
[data-part-indicators][data-variant='line']
|
|
673
|
+
> [data-part-indicator][data-current]::after {
|
|
680
674
|
animation-name: slotted-carousel-countdown-line;
|
|
681
675
|
}
|
|
682
676
|
|
|
@@ -700,7 +694,7 @@
|
|
|
700
694
|
* the ink, inside its own box, so the focus ring drawn outside it is never
|
|
701
695
|
* confused with it.
|
|
702
696
|
*/
|
|
703
|
-
[data-ui
|
|
697
|
+
[data-ui-carousel] [data-part-indicators][data-variant='thumbnails'] {
|
|
704
698
|
gap: var(--slotted-space-4, 0.5rem);
|
|
705
699
|
justify-content: flex-start;
|
|
706
700
|
overflow-x: auto;
|
|
@@ -710,12 +704,10 @@
|
|
|
710
704
|
scrollbar-width: none;
|
|
711
705
|
}
|
|
712
706
|
|
|
713
|
-
[data-ui='
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
[data-part='indicators'][data-variant='thumbnails']
|
|
718
|
-
> [data-part='indicator'][data-current] {
|
|
707
|
+
[data-ui-carousel] [data-part-indicators][data-variant='thumbnails'] > [data-part-indicator],
|
|
708
|
+
[data-ui-carousel]
|
|
709
|
+
[data-part-indicators][data-variant='thumbnails']
|
|
710
|
+
> [data-part-indicator][data-current] {
|
|
719
711
|
block-size: var(--_thumbnail);
|
|
720
712
|
border-radius: var(--slotted-radius-md, 6px);
|
|
721
713
|
inline-size: var(--_thumbnail);
|
|
@@ -723,10 +715,7 @@
|
|
|
723
715
|
transition: none;
|
|
724
716
|
}
|
|
725
717
|
|
|
726
|
-
[data-ui='
|
|
727
|
-
[data-part='indicators'][data-variant='thumbnails']
|
|
728
|
-
> [data-part='indicator']
|
|
729
|
-
> * {
|
|
718
|
+
[data-ui-carousel] [data-part-indicators][data-variant='thumbnails'] > [data-part-indicator] > * {
|
|
730
719
|
block-size: 100%;
|
|
731
720
|
display: block;
|
|
732
721
|
inline-size: 100%;
|
|
@@ -736,23 +725,23 @@
|
|
|
736
725
|
var(--slotted-control-transition-easing, ease);
|
|
737
726
|
}
|
|
738
727
|
|
|
739
|
-
[data-ui
|
|
740
|
-
[data-part
|
|
741
|
-
> [data-part
|
|
728
|
+
[data-ui-carousel]
|
|
729
|
+
[data-part-indicators][data-variant='thumbnails']
|
|
730
|
+
> [data-part-indicator]:hover:not([data-current]):not([data-disabled])
|
|
742
731
|
> * {
|
|
743
732
|
opacity: 0.85;
|
|
744
733
|
}
|
|
745
734
|
|
|
746
|
-
[data-ui
|
|
747
|
-
[data-part
|
|
748
|
-
> [data-part
|
|
735
|
+
[data-ui-carousel]
|
|
736
|
+
[data-part-indicators][data-variant='thumbnails']
|
|
737
|
+
> [data-part-indicator][data-current]
|
|
749
738
|
> * {
|
|
750
739
|
opacity: 1;
|
|
751
740
|
}
|
|
752
741
|
|
|
753
|
-
[data-ui
|
|
754
|
-
[data-part
|
|
755
|
-
> [data-part
|
|
742
|
+
[data-ui-carousel]
|
|
743
|
+
[data-part-indicators][data-variant='thumbnails']
|
|
744
|
+
> [data-part-indicator]::after {
|
|
756
745
|
border-radius: inherit;
|
|
757
746
|
box-shadow: inset 0 0 0 var(--slotted-border-width-thin, 1px)
|
|
758
747
|
var(--slotted-border-subtle, transparent);
|
|
@@ -769,28 +758,28 @@
|
|
|
769
758
|
* under hover, and the ink under the press, so the part itself carries the
|
|
770
759
|
* state and not only the picture inside it.
|
|
771
760
|
*/
|
|
772
|
-
[data-ui
|
|
773
|
-
[data-part
|
|
774
|
-
> [data-part
|
|
761
|
+
[data-ui-carousel]
|
|
762
|
+
[data-part-indicators][data-variant='thumbnails']
|
|
763
|
+
> [data-part-indicator]:hover:not([data-current]):not([data-disabled])::after {
|
|
775
764
|
box-shadow: inset 0 0 0 var(--slotted-border-width-thin, 1px)
|
|
776
765
|
var(--slotted-border-strong, transparent);
|
|
777
766
|
}
|
|
778
767
|
|
|
779
|
-
[data-ui
|
|
780
|
-
[data-part
|
|
781
|
-
> [data-part
|
|
768
|
+
[data-ui-carousel]
|
|
769
|
+
[data-part-indicators][data-variant='thumbnails']
|
|
770
|
+
> [data-part-indicator]:active:not([data-current]):not([data-disabled])::after {
|
|
782
771
|
box-shadow: inset 0 0 0 var(--slotted-border-width-thick, 2px)
|
|
783
772
|
var(--slotted-border-strong, transparent);
|
|
784
773
|
transition-duration: var(--slotted-duration-instant);
|
|
785
774
|
}
|
|
786
775
|
|
|
787
|
-
[data-ui
|
|
788
|
-
[data-part
|
|
789
|
-
> [data-part
|
|
776
|
+
[data-ui-carousel]
|
|
777
|
+
[data-part-indicators][data-variant='thumbnails']
|
|
778
|
+
> [data-part-indicator][data-current]::after {
|
|
790
779
|
box-shadow: inset 0 0 0 var(--slotted-border-width-thick, 2px) var(--slotted-text, transparent);
|
|
791
780
|
}
|
|
792
781
|
|
|
793
|
-
[data-ui
|
|
782
|
+
[data-ui-carousel] [data-part-indicator]:focus-visible {
|
|
794
783
|
outline: var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);
|
|
795
784
|
outline-offset: var(--slotted-focus-ring-offset, 2px);
|
|
796
785
|
}
|
|
@@ -800,9 +789,9 @@
|
|
|
800
789
|
* pixels round a box much taller than the mark. The ring of a dot or a
|
|
801
790
|
* segment hugs the row instead, which is the box the pointer hits.
|
|
802
791
|
*/
|
|
803
|
-
[data-ui
|
|
804
|
-
[data-part
|
|
805
|
-
> [data-part
|
|
792
|
+
[data-ui-carousel]
|
|
793
|
+
[data-part-indicators]:not([data-variant='thumbnails'])
|
|
794
|
+
> [data-part-indicator]:focus-visible {
|
|
806
795
|
outline-offset: calc(var(--slotted-focus-ring-width, 2px) * -1);
|
|
807
796
|
}
|
|
808
797
|
|
|
@@ -812,7 +801,7 @@
|
|
|
812
801
|
* Tabular figures, so "9 / 12" and "10 / 12" are the same width and the
|
|
813
802
|
* controls beside the counter do not move when the page changes.
|
|
814
803
|
*/
|
|
815
|
-
[data-ui
|
|
804
|
+
[data-ui-carousel] [data-part-counter] {
|
|
816
805
|
color: var(--slotted-text-muted, GrayText);
|
|
817
806
|
font-family: var(--slotted-font-family-sans, sans-serif);
|
|
818
807
|
font-size: var(--slotted-font-size-sm, 0.8125rem);
|
|
@@ -836,23 +825,23 @@
|
|
|
836
825
|
* which forced colours map to the highlight.
|
|
837
826
|
*/
|
|
838
827
|
@media (forced-colors: active) {
|
|
839
|
-
[data-ui
|
|
840
|
-
[data-ui
|
|
828
|
+
[data-ui-carousel] [data-part-indicator]::before,
|
|
829
|
+
[data-ui-carousel] [data-part-indicator]::after {
|
|
841
830
|
forced-color-adjust: none;
|
|
842
831
|
}
|
|
843
832
|
|
|
844
|
-
[data-ui
|
|
845
|
-
[data-part
|
|
846
|
-
> [data-part
|
|
847
|
-
[data-ui
|
|
848
|
-
[data-part
|
|
849
|
-
> [data-part
|
|
833
|
+
[data-ui-carousel]
|
|
834
|
+
[data-part-indicators]:not([data-variant='thumbnails'])
|
|
835
|
+
> [data-part-indicator][data-current]::before,
|
|
836
|
+
[data-ui-carousel]
|
|
837
|
+
[data-part-indicators]:not([data-variant='thumbnails'])
|
|
838
|
+
> [data-part-indicator][data-current]::after {
|
|
850
839
|
background: var(--slotted-tone-accent-solid, transparent);
|
|
851
840
|
}
|
|
852
841
|
|
|
853
|
-
[data-ui
|
|
854
|
-
[data-part
|
|
855
|
-
> [data-part
|
|
842
|
+
[data-ui-carousel]
|
|
843
|
+
[data-part-indicators][data-variant='thumbnails']
|
|
844
|
+
> [data-part-indicator][data-current]::after {
|
|
856
845
|
box-shadow: inset 0 0 0 var(--slotted-border-width-thick, 2px)
|
|
857
846
|
var(--slotted-tone-accent-solid, transparent);
|
|
858
847
|
}
|