@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
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* The group arranges the checkboxes and holds the value; every box draws
|
|
6
6
|
* itself, because `checkbox` is the family beside this one rather than a part
|
|
7
7
|
* of it. Nothing here selects into that family: a rule reaching
|
|
8
|
-
* `[data-ui
|
|
8
|
+
* `[data-ui-checkbox]` from this stylesheet would make one family's DOM part
|
|
9
9
|
* of another's contract, and moving a box inside a wrapper would then change
|
|
10
10
|
* its appearance with no test to notice.
|
|
11
11
|
*
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* named group, and a second one named by the same legend is the same group
|
|
15
15
|
* announced twice.
|
|
16
16
|
*/
|
|
17
|
-
[data-ui
|
|
17
|
+
[data-ui-checkbox-group][data-part-root] {
|
|
18
18
|
--_gap: var(--slotted-control-gap-md, 8px);
|
|
19
19
|
|
|
20
20
|
display: flex;
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
* the same stated reason: two choices have to read as further apart than a
|
|
34
34
|
* box and its own label.
|
|
35
35
|
*/
|
|
36
|
-
[data-ui
|
|
36
|
+
[data-ui-checkbox-group][data-part-root]:has([data-part-description]) {
|
|
37
37
|
row-gap: var(--slotted-checkbox-group-gap, calc(var(--_gap) * 2));
|
|
38
38
|
}
|
|
39
39
|
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
* Horizontal wraps rather than scrolls or clips. A row of choices that runs
|
|
42
42
|
* past the container is a row whose last option nobody can see.
|
|
43
43
|
*/
|
|
44
|
-
[data-ui
|
|
44
|
+
[data-ui-checkbox-group][data-part-root][data-orientation='horizontal'] {
|
|
45
45
|
/** Twice the control gap: two choices have to read as further apart than a
|
|
46
46
|
box and its own label. */
|
|
47
47
|
column-gap: calc(var(--_gap) * 2);
|
|
@@ -56,15 +56,15 @@
|
|
|
56
56
|
* them through the binding rather than through a descendant selector.
|
|
57
57
|
*/
|
|
58
58
|
|
|
59
|
-
[data-ui
|
|
59
|
+
[data-ui-checkbox-group][data-part-root][data-size='sm'] {
|
|
60
60
|
--_gap: var(--slotted-control-gap-sm, 6px);
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
-
[data-ui
|
|
63
|
+
[data-ui-checkbox-group][data-part-root][data-size='md'] {
|
|
64
64
|
--_gap: var(--slotted-control-gap-md, 8px);
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
-
[data-ui
|
|
67
|
+
[data-ui-checkbox-group][data-part-root][data-size='lg'] {
|
|
68
68
|
--_gap: var(--slotted-control-gap-lg, 8px);
|
|
69
69
|
}
|
|
70
70
|
}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* The type does not follow density; the inset and the gutter do. Code at
|
|
14
14
|
* `dense` is still read one character at a time.
|
|
15
15
|
*/
|
|
16
|
-
[data-ui
|
|
16
|
+
[data-ui-code-block] {
|
|
17
17
|
--_ground: var(--slotted-code-block-surface, var(--slotted-surface-sunken, Canvas));
|
|
18
18
|
--_edge: var(--slotted-code-block-border-color, var(--slotted-border-subtle, GrayText));
|
|
19
19
|
--_ink: var(--slotted-code-block-color, var(--slotted-text, CanvasText));
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
* page's direction while the code below keeps its own, so a title reads in
|
|
64
64
|
* the reader's language and the code in its own.
|
|
65
65
|
*/
|
|
66
|
-
[data-ui
|
|
66
|
+
[data-ui-code-block] > [data-part-header] {
|
|
67
67
|
align-items: center;
|
|
68
68
|
border-block-end: var(--slotted-border-width-thin, 1px) solid var(--_edge);
|
|
69
69
|
display: flex;
|
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
}
|
|
77
77
|
|
|
78
78
|
/* The file's kind, an `Icon` the binding draws from the name's extension. */
|
|
79
|
-
[data-ui
|
|
79
|
+
[data-ui-code-block] > [data-part-header] > [data-part-icon] {
|
|
80
80
|
--slotted-icon-size: var(--_icon);
|
|
81
81
|
|
|
82
82
|
block-size: var(--_icon);
|
|
@@ -86,7 +86,7 @@
|
|
|
86
86
|
inline-size: var(--_icon);
|
|
87
87
|
}
|
|
88
88
|
|
|
89
|
-
[data-ui
|
|
89
|
+
[data-ui-code-block] > [data-part-header] > [data-part-title] {
|
|
90
90
|
font-family: var(--slotted-code-block-font-family, var(--slotted-font-family-mono, monospace));
|
|
91
91
|
min-inline-size: 0;
|
|
92
92
|
overflow: hidden;
|
|
@@ -94,7 +94,7 @@
|
|
|
94
94
|
white-space: nowrap;
|
|
95
95
|
}
|
|
96
96
|
|
|
97
|
-
[data-ui
|
|
97
|
+
[data-ui-code-block] > [data-part-header] > [data-part-language] {
|
|
98
98
|
color: var(--_muted);
|
|
99
99
|
font-size: var(--slotted-font-size-xs, 0.75rem);
|
|
100
100
|
letter-spacing: 0.02em;
|
|
@@ -102,19 +102,19 @@
|
|
|
102
102
|
text-transform: uppercase;
|
|
103
103
|
}
|
|
104
104
|
|
|
105
|
-
[data-ui
|
|
106
|
-
[data-ui
|
|
105
|
+
[data-ui-code-block] > [data-part-header] > [data-part-title] + [data-part-language],
|
|
106
|
+
[data-ui-code-block] > [data-part-header] > [data-part-icon] + [data-part-language] {
|
|
107
107
|
margin-inline-start: auto;
|
|
108
108
|
}
|
|
109
109
|
|
|
110
|
-
[data-ui
|
|
110
|
+
[data-ui-code-block] > [data-part-header] > [data-part-actions] {
|
|
111
111
|
align-items: center;
|
|
112
112
|
display: flex;
|
|
113
113
|
gap: var(--slotted-space-1, 0.125rem);
|
|
114
114
|
margin-inline-start: auto;
|
|
115
115
|
}
|
|
116
116
|
|
|
117
|
-
[data-ui
|
|
117
|
+
[data-ui-code-block] > [data-part-header] > [data-part-language] + [data-part-actions] {
|
|
118
118
|
margin-inline-start: var(--slotted-space-3, 0.375rem);
|
|
119
119
|
}
|
|
120
120
|
|
|
@@ -123,7 +123,7 @@
|
|
|
123
123
|
* inline end of the first line, on the ground's own colour, so the code
|
|
124
124
|
* beneath them is still there when the pointer leaves.
|
|
125
125
|
*/
|
|
126
|
-
[data-ui
|
|
126
|
+
[data-ui-code-block] > [data-part-actions] {
|
|
127
127
|
align-items: center;
|
|
128
128
|
background-color: var(--_ground);
|
|
129
129
|
border-radius: var(--slotted-control-radius, 4px);
|
|
@@ -138,7 +138,7 @@
|
|
|
138
138
|
/* ── The two controls, description-list's ────────────────────────────── */
|
|
139
139
|
|
|
140
140
|
/* Each holds an `Icon`: text-wrap, and copy that turns to a check once done. */
|
|
141
|
-
[data-ui
|
|
141
|
+
[data-ui-code-block] :is([data-part-copy], [data-part-wrap]) {
|
|
142
142
|
--slotted-icon-size: var(--_icon);
|
|
143
143
|
|
|
144
144
|
align-items: center;
|
|
@@ -164,48 +164,45 @@
|
|
|
164
164
|
reaches 44 pixels, and the ground and the ring stay square. The two
|
|
165
165
|
stand two pixels apart, so neither reaches across the edge they share. */
|
|
166
166
|
@media (pointer: coarse) {
|
|
167
|
-
[data-ui
|
|
167
|
+
[data-ui-code-block] :is([data-part-copy], [data-part-wrap]) {
|
|
168
168
|
position: relative;
|
|
169
169
|
}
|
|
170
170
|
|
|
171
|
-
[data-ui
|
|
171
|
+
[data-ui-code-block] :is([data-part-copy], [data-part-wrap])::before {
|
|
172
172
|
content: '';
|
|
173
173
|
inset: min(0px, calc((100% - var(--slotted-target-comfortable, 44px)) / 2));
|
|
174
174
|
position: absolute;
|
|
175
175
|
}
|
|
176
176
|
|
|
177
|
-
[data-ui
|
|
177
|
+
[data-ui-code-block] [data-part-wrap]:has(+ [data-part-copy])::before {
|
|
178
178
|
inset-inline-end: 0;
|
|
179
179
|
}
|
|
180
180
|
|
|
181
|
-
[data-ui
|
|
181
|
+
[data-ui-code-block] [data-part-wrap] + [data-part-copy]::before {
|
|
182
182
|
inset-inline-start: 0;
|
|
183
183
|
}
|
|
184
184
|
}
|
|
185
185
|
|
|
186
|
-
[data-ui
|
|
187
|
-
:is([data-part='copy'], [data-part='wrap']):enabled:not([data-complete]):hover {
|
|
186
|
+
[data-ui-code-block] :is([data-part-copy], [data-part-wrap]):enabled:not([data-complete]):hover {
|
|
188
187
|
background-color: var(--slotted-tone-secondary-subtle-hover, ButtonFace);
|
|
189
188
|
color: var(--_ink);
|
|
190
189
|
}
|
|
191
190
|
|
|
192
|
-
[data-ui
|
|
193
|
-
:is([data-part='copy'], [data-part='wrap']):enabled:not([data-complete]):active {
|
|
191
|
+
[data-ui-code-block] :is([data-part-copy], [data-part-wrap]):enabled:not([data-complete]):active {
|
|
194
192
|
background-color: var(--slotted-tone-secondary-subtle-active, ButtonFace);
|
|
195
193
|
}
|
|
196
194
|
|
|
197
|
-
[data-ui
|
|
195
|
+
[data-ui-code-block] [data-part-wrap][data-pressed] {
|
|
198
196
|
background-color: var(--slotted-tone-accent-surface, Canvas);
|
|
199
197
|
color: var(--slotted-tone-accent-text, CanvasText);
|
|
200
198
|
}
|
|
201
199
|
|
|
202
200
|
/** A copy that finished: the mark changes as well as the colour, and returns on its own. */
|
|
203
|
-
[data-ui
|
|
201
|
+
[data-ui-code-block] [data-part-copy][data-complete] {
|
|
204
202
|
color: var(--slotted-tone-success-text, CanvasText);
|
|
205
203
|
}
|
|
206
204
|
|
|
207
|
-
[data-ui
|
|
208
|
-
:is([data-part='copy'], [data-part='wrap'], [data-part='reveal']):focus-visible {
|
|
205
|
+
[data-ui-code-block] :is([data-part-copy], [data-part-wrap], [data-part-reveal]):focus-visible {
|
|
209
206
|
outline: var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);
|
|
210
207
|
outline-offset: var(--slotted-focus-ring-offset, 2px);
|
|
211
208
|
}
|
|
@@ -217,27 +214,27 @@
|
|
|
217
214
|
* The block's radius reaches it through `inherit`, and the mask
|
|
218
215
|
* scroll-area draws at an overflowing edge is what a wide line fades into.
|
|
219
216
|
*/
|
|
220
|
-
[data-ui
|
|
217
|
+
[data-ui-code-block] > [data-part-body] {
|
|
221
218
|
border-radius: 0 0 var(--_radius) var(--_radius);
|
|
222
219
|
min-inline-size: 0;
|
|
223
220
|
}
|
|
224
221
|
|
|
225
|
-
[data-ui
|
|
222
|
+
[data-ui-code-block] > [data-part-body]:first-child {
|
|
226
223
|
border-radius: var(--_radius);
|
|
227
224
|
}
|
|
228
225
|
|
|
229
|
-
[data-ui
|
|
226
|
+
[data-ui-code-block] > [data-part-body][data-max-lines] > [data-part-viewport] {
|
|
230
227
|
max-block-size: calc(
|
|
231
228
|
var(--slotted-code-block-max-lines) * var(--_line) + var(--_inset-block) * 2
|
|
232
229
|
);
|
|
233
230
|
}
|
|
234
231
|
|
|
235
|
-
[data-ui
|
|
232
|
+
[data-ui-code-block] > [data-part-body] > [data-part-viewport]:focus-visible {
|
|
236
233
|
outline: var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, Highlight);
|
|
237
234
|
outline-offset: calc(var(--slotted-focus-ring-offset, 2px) * -1);
|
|
238
235
|
}
|
|
239
236
|
|
|
240
|
-
[data-ui
|
|
237
|
+
[data-ui-code-block] [data-part-pre] {
|
|
241
238
|
/**
|
|
242
239
|
* Code reads left to right whatever the page does: the order of the
|
|
243
240
|
* characters is what the code means. `prose` decided it for a fence.
|
|
@@ -251,13 +248,13 @@
|
|
|
251
248
|
white-space: pre;
|
|
252
249
|
}
|
|
253
250
|
|
|
254
|
-
[data-ui
|
|
251
|
+
[data-ui-code-block][data-wrap] [data-part-pre] {
|
|
255
252
|
min-inline-size: 0;
|
|
256
253
|
overflow-wrap: anywhere;
|
|
257
254
|
white-space: pre-wrap;
|
|
258
255
|
}
|
|
259
256
|
|
|
260
|
-
[data-ui
|
|
257
|
+
[data-ui-code-block] [data-part-code] {
|
|
261
258
|
display: grid;
|
|
262
259
|
font: inherit;
|
|
263
260
|
grid-template-columns: minmax(0, 1fr);
|
|
@@ -272,7 +269,7 @@
|
|
|
272
269
|
* own leading whitespace — the binding measures it once into
|
|
273
270
|
* `--slotted-code-block-indent`, in characters.
|
|
274
271
|
*/
|
|
275
|
-
[data-ui
|
|
272
|
+
[data-ui-code-block] [data-part-line] {
|
|
276
273
|
--_indent: calc(var(--slotted-code-block-indent, 0) * 1ch);
|
|
277
274
|
box-sizing: border-box;
|
|
278
275
|
display: grid;
|
|
@@ -282,21 +279,21 @@
|
|
|
282
279
|
position: relative;
|
|
283
280
|
}
|
|
284
281
|
|
|
285
|
-
[data-ui
|
|
282
|
+
[data-ui-code-block][data-line-numbers] [data-part-line] {
|
|
286
283
|
--_number: var(--_gutter);
|
|
287
284
|
padding-inline-start: 0;
|
|
288
285
|
}
|
|
289
286
|
|
|
290
287
|
/** The number is in the DOM whether or not it is drawn, so turning numbers on moves no line. */
|
|
291
|
-
[data-ui
|
|
288
|
+
[data-ui-code-block]:not([data-line-numbers]) [data-part-number] {
|
|
292
289
|
display: none;
|
|
293
290
|
}
|
|
294
291
|
|
|
295
|
-
[data-ui
|
|
292
|
+
[data-ui-code-block][data-marks] [data-part-line] {
|
|
296
293
|
--_marker: var(--slotted-space-6, 1rem);
|
|
297
294
|
}
|
|
298
295
|
|
|
299
|
-
[data-ui
|
|
296
|
+
[data-ui-code-block] [data-part-number] {
|
|
300
297
|
color: var(--_muted);
|
|
301
298
|
font-variant-numeric: tabular-nums;
|
|
302
299
|
grid-column: 1;
|
|
@@ -305,65 +302,65 @@
|
|
|
305
302
|
user-select: none;
|
|
306
303
|
}
|
|
307
304
|
|
|
308
|
-
[data-ui
|
|
305
|
+
[data-ui-code-block] [data-part-marker] {
|
|
309
306
|
grid-column: 2;
|
|
310
307
|
text-align: center;
|
|
311
308
|
user-select: none;
|
|
312
309
|
}
|
|
313
310
|
|
|
314
|
-
[data-ui
|
|
315
|
-
[data-ui
|
|
311
|
+
[data-ui-code-block] [data-part-line] > [data-part-token],
|
|
312
|
+
[data-ui-code-block] [data-part-line] > [data-part-text] {
|
|
316
313
|
grid-column: 3;
|
|
317
314
|
}
|
|
318
315
|
|
|
319
316
|
/** The tokens flow as one inline run inside the third column. */
|
|
320
|
-
[data-ui
|
|
317
|
+
[data-ui-code-block] [data-part-line] > [data-part-text] {
|
|
321
318
|
display: block;
|
|
322
319
|
min-inline-size: 0;
|
|
323
320
|
}
|
|
324
321
|
|
|
325
|
-
[data-ui
|
|
322
|
+
[data-ui-code-block][data-wrap] [data-part-line] > [data-part-text] {
|
|
326
323
|
padding-inline-start: var(--_indent);
|
|
327
324
|
text-indent: calc(var(--_indent) * -1);
|
|
328
325
|
}
|
|
329
326
|
|
|
330
327
|
/* ── Scopes ─────────────────────────────────────────────────────────── */
|
|
331
328
|
|
|
332
|
-
[data-ui
|
|
329
|
+
[data-ui-code-block] [data-token='comment'] {
|
|
333
330
|
color: var(--slotted-code-comment, var(--slotted-text-muted, GrayText));
|
|
334
331
|
font-style: italic;
|
|
335
332
|
}
|
|
336
|
-
[data-ui
|
|
333
|
+
[data-ui-code-block] [data-token='keyword'] {
|
|
337
334
|
color: var(--slotted-code-keyword, var(--slotted-text, CanvasText));
|
|
338
335
|
}
|
|
339
|
-
[data-ui
|
|
336
|
+
[data-ui-code-block] [data-token='string'] {
|
|
340
337
|
color: var(--slotted-code-string, var(--slotted-text, CanvasText));
|
|
341
338
|
}
|
|
342
|
-
[data-ui
|
|
339
|
+
[data-ui-code-block] [data-token='number'] {
|
|
343
340
|
color: var(--slotted-code-number, var(--slotted-text, CanvasText));
|
|
344
341
|
}
|
|
345
|
-
[data-ui
|
|
342
|
+
[data-ui-code-block] [data-token='function'] {
|
|
346
343
|
color: var(--slotted-code-function, var(--slotted-text, CanvasText));
|
|
347
344
|
}
|
|
348
|
-
[data-ui
|
|
345
|
+
[data-ui-code-block] [data-token='type'] {
|
|
349
346
|
color: var(--slotted-code-type, var(--slotted-text, CanvasText));
|
|
350
347
|
}
|
|
351
|
-
[data-ui
|
|
348
|
+
[data-ui-code-block] [data-token='variable'] {
|
|
352
349
|
color: var(--slotted-code-variable, var(--slotted-text, CanvasText));
|
|
353
350
|
}
|
|
354
|
-
[data-ui
|
|
351
|
+
[data-ui-code-block] [data-token='property'] {
|
|
355
352
|
color: var(--slotted-code-property, var(--slotted-text, CanvasText));
|
|
356
353
|
}
|
|
357
|
-
[data-ui
|
|
354
|
+
[data-ui-code-block] [data-token='punctuation'] {
|
|
358
355
|
color: var(--slotted-code-punctuation, var(--slotted-text, CanvasText));
|
|
359
356
|
}
|
|
360
|
-
[data-ui
|
|
357
|
+
[data-ui-code-block] [data-token='tag'] {
|
|
361
358
|
color: var(--slotted-code-tag, var(--slotted-text, CanvasText));
|
|
362
359
|
}
|
|
363
|
-
[data-ui
|
|
360
|
+
[data-ui-code-block] [data-token='attribute'] {
|
|
364
361
|
color: var(--slotted-code-attribute, var(--slotted-text, CanvasText));
|
|
365
362
|
}
|
|
366
|
-
[data-ui
|
|
363
|
+
[data-ui-code-block] [data-token='constant'] {
|
|
367
364
|
color: var(--slotted-code-constant, var(--slotted-text, CanvasText));
|
|
368
365
|
}
|
|
369
366
|
|
|
@@ -374,13 +371,13 @@
|
|
|
374
371
|
* diff pair. The sign is text in a gutter nobody can select, so it never
|
|
375
372
|
* reaches a clipboard.
|
|
376
373
|
*/
|
|
377
|
-
[data-ui
|
|
374
|
+
[data-ui-code-block] [data-part-line][data-mark] {
|
|
378
375
|
--_tone: var(--slotted-tone-accent-text, CanvasText);
|
|
379
376
|
background-color: color-mix(in srgb, var(--_tone) calc(var(--_tint) * 100%), transparent);
|
|
380
377
|
}
|
|
381
378
|
|
|
382
|
-
[data-ui
|
|
383
|
-
[data-part
|
|
379
|
+
[data-ui-code-block]
|
|
380
|
+
[data-part-line]:is(
|
|
384
381
|
[data-mark='highlight'],
|
|
385
382
|
[data-mark='error'],
|
|
386
383
|
[data-mark='warning']
|
|
@@ -393,33 +390,33 @@
|
|
|
393
390
|
position: absolute;
|
|
394
391
|
}
|
|
395
392
|
|
|
396
|
-
[data-ui
|
|
393
|
+
[data-ui-code-block] [data-part-line][data-mark='add'] {
|
|
397
394
|
--_tone: var(--slotted-tone-success-text, CanvasText);
|
|
398
395
|
}
|
|
399
396
|
|
|
400
|
-
[data-ui
|
|
397
|
+
[data-ui-code-block] [data-part-line][data-mark='remove'] {
|
|
401
398
|
--_tone: var(--slotted-tone-danger-text, CanvasText);
|
|
402
399
|
}
|
|
403
400
|
|
|
404
|
-
[data-ui
|
|
401
|
+
[data-ui-code-block] [data-part-line][data-mark='error'] {
|
|
405
402
|
--_tone: var(--slotted-tone-danger-text, CanvasText);
|
|
406
403
|
}
|
|
407
404
|
|
|
408
|
-
[data-ui
|
|
405
|
+
[data-ui-code-block] [data-part-line][data-mark='warning'] {
|
|
409
406
|
--_tone: var(--slotted-tone-warning-text, CanvasText);
|
|
410
407
|
}
|
|
411
408
|
|
|
412
|
-
[data-ui
|
|
409
|
+
[data-ui-code-block] [data-part-line][data-mark='add'] > [data-part-marker]::before {
|
|
413
410
|
color: var(--_tone);
|
|
414
411
|
content: '+';
|
|
415
412
|
}
|
|
416
413
|
|
|
417
|
-
[data-ui
|
|
414
|
+
[data-ui-code-block] [data-part-line][data-mark='remove'] > [data-part-marker]::before {
|
|
418
415
|
color: var(--_tone);
|
|
419
416
|
content: '−';
|
|
420
417
|
}
|
|
421
418
|
|
|
422
|
-
[data-ui
|
|
419
|
+
[data-ui-code-block] [data-part-line][data-mark='remove'] > [data-part-text] {
|
|
423
420
|
opacity: 0.72;
|
|
424
421
|
}
|
|
425
422
|
|
|
@@ -430,7 +427,7 @@
|
|
|
430
427
|
* reduced motion with the transition; the dim stays, because it is the
|
|
431
428
|
* information.
|
|
432
429
|
*/
|
|
433
|
-
[data-ui
|
|
430
|
+
[data-ui-code-block] [data-part-line][data-dim] {
|
|
434
431
|
color: var(--_muted);
|
|
435
432
|
filter: blur(1px);
|
|
436
433
|
transition:
|
|
@@ -438,19 +435,18 @@
|
|
|
438
435
|
color var(--slotted-duration-medium) var(--slotted-easing-standard);
|
|
439
436
|
}
|
|
440
437
|
|
|
441
|
-
[data-ui
|
|
438
|
+
[data-ui-code-block] [data-part-line][data-dim] [data-part-token] {
|
|
442
439
|
color: inherit;
|
|
443
440
|
}
|
|
444
441
|
|
|
445
|
-
[data-ui
|
|
446
|
-
[data-part='line'][data-dim] {
|
|
442
|
+
[data-ui-code-block]:not([data-loading]):is(:hover, :focus-within) [data-part-line][data-dim] {
|
|
447
443
|
color: var(--_ink);
|
|
448
444
|
filter: none;
|
|
449
445
|
}
|
|
450
446
|
|
|
451
|
-
[data-ui
|
|
452
|
-
[data-part
|
|
453
|
-
[data-part
|
|
447
|
+
[data-ui-code-block]:not([data-loading]):is(:hover, :focus-within)
|
|
448
|
+
[data-part-line][data-dim]
|
|
449
|
+
[data-part-token] {
|
|
454
450
|
color: revert-layer;
|
|
455
451
|
}
|
|
456
452
|
|
|
@@ -461,9 +457,9 @@
|
|
|
461
457
|
* hidden lines stay in the DOM and in a selection. Revealed, the limit
|
|
462
458
|
* goes and the control reads "show less".
|
|
463
459
|
*/
|
|
464
|
-
[data-ui
|
|
465
|
-
> [data-part
|
|
466
|
-
> [data-part
|
|
460
|
+
[data-ui-code-block][data-collapse]:not([data-revealed])
|
|
461
|
+
> [data-part-body]
|
|
462
|
+
> [data-part-viewport] {
|
|
467
463
|
--_visible: calc(var(--slotted-code-block-collapse) * var(--_line) + var(--_inset-block));
|
|
468
464
|
mask-image: linear-gradient(
|
|
469
465
|
to bottom,
|
|
@@ -474,7 +470,7 @@
|
|
|
474
470
|
overflow-y: hidden;
|
|
475
471
|
}
|
|
476
472
|
|
|
477
|
-
[data-ui
|
|
473
|
+
[data-ui-code-block] > [data-part-reveal] {
|
|
478
474
|
appearance: none;
|
|
479
475
|
background: none;
|
|
480
476
|
border: 0;
|
|
@@ -492,63 +488,63 @@
|
|
|
492
488
|
}
|
|
493
489
|
|
|
494
490
|
/** The control is flush with the block's edge, so its ring is drawn inside it and takes the block's corners. */
|
|
495
|
-
[data-ui
|
|
491
|
+
[data-ui-code-block] > [data-part-reveal]:focus-visible {
|
|
496
492
|
border-end-end-radius: var(--_radius);
|
|
497
493
|
border-end-start-radius: var(--_radius);
|
|
498
494
|
outline-offset: calc(var(--slotted-focus-ring-offset, 2px) * -1);
|
|
499
495
|
}
|
|
500
496
|
|
|
501
|
-
[data-ui
|
|
497
|
+
[data-ui-code-block] > [data-part-reveal]:enabled:hover {
|
|
502
498
|
background-color: var(--slotted-tone-accent-subtle-hover, ButtonFace);
|
|
503
499
|
}
|
|
504
500
|
|
|
505
|
-
[data-ui
|
|
501
|
+
[data-ui-code-block] > [data-part-reveal]:enabled:active {
|
|
506
502
|
background-color: var(--slotted-tone-accent-subtle-active, ButtonFace);
|
|
507
503
|
}
|
|
508
504
|
|
|
509
505
|
/* ── Loading, empty ─────────────────────────────────────────────────── */
|
|
510
506
|
|
|
511
|
-
[data-ui
|
|
507
|
+
[data-ui-code-block][data-loading] [data-part-code] {
|
|
512
508
|
gap: var(--slotted-space-3, 0.375rem);
|
|
513
509
|
padding-inline: var(--_inset-inline);
|
|
514
510
|
}
|
|
515
511
|
|
|
516
|
-
[data-ui
|
|
512
|
+
[data-ui-code-block][data-loading] [data-part-code] > [data-ui-skeleton] {
|
|
517
513
|
block-size: var(--_font-size);
|
|
518
514
|
}
|
|
519
515
|
|
|
520
516
|
@media (prefers-reduced-motion: reduce) {
|
|
521
|
-
[data-ui
|
|
517
|
+
[data-ui-code-block] [data-part-line][data-dim] {
|
|
522
518
|
filter: none;
|
|
523
519
|
}
|
|
524
520
|
}
|
|
525
521
|
|
|
526
522
|
@media (forced-colors: active) {
|
|
527
523
|
/* The system owns the palette: a mark keeps its bar and its sign and loses its tint; the dim goes. */
|
|
528
|
-
[data-ui
|
|
524
|
+
[data-ui-code-block] [data-part-line][data-mark] {
|
|
529
525
|
background-color: transparent;
|
|
530
526
|
}
|
|
531
527
|
|
|
532
|
-
[data-ui
|
|
528
|
+
[data-ui-code-block] [data-part-line][data-dim] {
|
|
533
529
|
color: inherit;
|
|
534
530
|
filter: none;
|
|
535
531
|
}
|
|
536
532
|
}
|
|
537
533
|
|
|
538
534
|
@media print {
|
|
539
|
-
[data-ui
|
|
535
|
+
[data-ui-code-block] [data-part-pre] {
|
|
540
536
|
min-inline-size: 0;
|
|
541
537
|
overflow-wrap: anywhere;
|
|
542
538
|
white-space: pre-wrap;
|
|
543
539
|
}
|
|
544
540
|
|
|
545
|
-
[data-ui
|
|
541
|
+
[data-ui-code-block][data-collapse] > [data-part-body] > [data-part-viewport] {
|
|
546
542
|
mask-image: none;
|
|
547
543
|
max-block-size: none;
|
|
548
544
|
}
|
|
549
545
|
|
|
550
|
-
[data-ui
|
|
551
|
-
[data-ui
|
|
546
|
+
[data-ui-code-block] > [data-part-reveal],
|
|
547
|
+
[data-ui-code-block] [data-part-wrap] {
|
|
552
548
|
display: none;
|
|
553
549
|
}
|
|
554
550
|
}
|