@ponchia/ui 0.3.0 → 0.3.1
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/README.md +43 -61
- package/behaviors/index.d.ts +46 -0
- package/behaviors/index.js +575 -6
- package/classes/index.d.ts +25 -0
- package/classes/index.js +25 -0
- package/classes/vscode.css-custom-data.json +407 -0
- package/css/app.css +11 -2
- package/css/base.css +0 -1
- package/css/dots.css +1 -1
- package/css/feedback.css +87 -2
- package/css/forms.css +126 -0
- package/css/overlay.css +64 -1
- package/css/primitives.css +95 -0
- package/css/site.css +2 -2
- package/css/table.css +59 -0
- package/css/tokens.css +69 -21
- package/dist/bronto.css +1 -1
- package/dist/css/app.css +1 -1
- package/dist/css/base.css +1 -1
- package/dist/css/dots.css +1 -1
- package/dist/css/feedback.css +1 -1
- package/dist/css/forms.css +1 -1
- package/dist/css/overlay.css +1 -1
- package/dist/css/primitives.css +1 -1
- package/dist/css/site.css +1 -1
- package/dist/css/table.css +1 -1
- package/dist/css/tokens.css +1 -1
- package/package.json +13 -7
- package/tokens/index.d.ts +2 -2
- package/tokens/index.js +45 -14
- package/tokens/index.json +90 -28
- package/tokens/tokens.dtcg.json +219 -14
package/classes/index.js
CHANGED
|
@@ -68,6 +68,13 @@ export const cls = Object.freeze({
|
|
|
68
68
|
switchThumb: 'ui-switch__thumb',
|
|
69
69
|
hint: 'ui-hint',
|
|
70
70
|
hintError: 'ui-hint--error',
|
|
71
|
+
inputGroup: 'ui-input-group',
|
|
72
|
+
inputGroupAddon: 'ui-input-group__addon',
|
|
73
|
+
file: 'ui-file',
|
|
74
|
+
range: 'ui-range',
|
|
75
|
+
errorSummary: 'ui-error-summary',
|
|
76
|
+
errorSummaryTitle: 'ui-error-summary__title',
|
|
77
|
+
errorSummaryList: 'ui-error-summary__list',
|
|
71
78
|
// feedback
|
|
72
79
|
alert: 'ui-alert',
|
|
73
80
|
alertTitle: 'ui-alert__title',
|
|
@@ -78,14 +85,17 @@ export const cls = Object.freeze({
|
|
|
78
85
|
alertWarning: 'ui-alert--warning',
|
|
79
86
|
alertDanger: 'ui-alert--danger',
|
|
80
87
|
toastStack: 'ui-toast-stack',
|
|
88
|
+
toastStackAssertive: 'ui-toast-stack--assertive',
|
|
81
89
|
toast: 'ui-toast',
|
|
82
90
|
toastTitle: 'ui-toast__title',
|
|
91
|
+
toastClose: 'ui-toast__close',
|
|
83
92
|
toastAccent: 'ui-toast--accent',
|
|
84
93
|
toastSuccess: 'ui-toast--success',
|
|
85
94
|
toastWarning: 'ui-toast--warning',
|
|
86
95
|
toastDanger: 'ui-toast--danger',
|
|
87
96
|
tooltip: 'ui-tooltip',
|
|
88
97
|
tooltipBubble: 'ui-tooltip__bubble',
|
|
98
|
+
popover: 'ui-popover',
|
|
89
99
|
progress: 'ui-progress',
|
|
90
100
|
progressBar: 'ui-progress__bar',
|
|
91
101
|
progressIndeterminate: 'ui-progress--indeterminate',
|
|
@@ -102,6 +112,11 @@ export const cls = Object.freeze({
|
|
|
102
112
|
menuLabel: 'ui-menu__label',
|
|
103
113
|
menuItem: 'ui-menu__item',
|
|
104
114
|
menuSep: 'ui-menu__sep',
|
|
115
|
+
combobox: 'ui-combobox',
|
|
116
|
+
comboboxInput: 'ui-combobox__input',
|
|
117
|
+
comboboxList: 'ui-combobox__list',
|
|
118
|
+
comboboxOption: 'ui-combobox__option',
|
|
119
|
+
comboboxEmpty: 'ui-combobox__empty',
|
|
105
120
|
// disclosure
|
|
106
121
|
tabs: 'ui-tabs',
|
|
107
122
|
tabsList: 'ui-tabs__list',
|
|
@@ -128,6 +143,11 @@ export const cls = Object.freeze({
|
|
|
128
143
|
tableLined: 'ui-table--lined',
|
|
129
144
|
tableWrap: 'ui-table-wrap',
|
|
130
145
|
tableEmpty: 'ui-table__empty',
|
|
146
|
+
tableSort: 'ui-table__sort',
|
|
147
|
+
tableSelect: 'ui-table__select',
|
|
148
|
+
tableToolbar: 'ui-table__toolbar',
|
|
149
|
+
tableSelectable: 'ui-table--selectable',
|
|
150
|
+
tableLoading: 'ui-table--loading',
|
|
131
151
|
// shell / layout
|
|
132
152
|
panel: 'ui-panel',
|
|
133
153
|
panelHead: 'ui-panel__head',
|
|
@@ -136,6 +156,11 @@ export const cls = Object.freeze({
|
|
|
136
156
|
cluster: 'ui-cluster',
|
|
137
157
|
clusterBetween: 'ui-cluster--between',
|
|
138
158
|
grid: 'ui-grid',
|
|
159
|
+
sidebar: 'ui-sidebar',
|
|
160
|
+
switcher: 'ui-switcher',
|
|
161
|
+
center: 'ui-center',
|
|
162
|
+
ratio: 'ui-ratio',
|
|
163
|
+
cq: 'ui-cq',
|
|
139
164
|
divider: 'ui-divider',
|
|
140
165
|
status: 'ui-status',
|
|
141
166
|
// typography / utilities
|
|
@@ -0,0 +1,407 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 1.1,
|
|
3
|
+
"properties": [
|
|
4
|
+
{
|
|
5
|
+
"name": "--accent",
|
|
6
|
+
"description": "Theme token. Light: `#d71921` · Dark: `#ff3b41`"
|
|
7
|
+
},
|
|
8
|
+
{
|
|
9
|
+
"name": "--accent-1",
|
|
10
|
+
"description": "Global scale token. Value: `color-mix(in srgb, var(--accent) 8%, var(--bg))`"
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
"name": "--accent-2",
|
|
14
|
+
"description": "Global scale token. Value: `color-mix(in srgb, var(--accent) 16%, var(--bg))`"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"name": "--accent-3",
|
|
18
|
+
"description": "Global scale token. Value: `color-mix(in srgb, var(--accent) 32%, var(--bg))`"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "--accent-4",
|
|
22
|
+
"description": "Global scale token. Value: `color-mix(in srgb, var(--accent) 60%, var(--bg))`"
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"name": "--accent-5",
|
|
26
|
+
"description": "Global scale token. Value: `var(--accent)`"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"name": "--accent-6",
|
|
30
|
+
"description": "Global scale token. Value: `var(--accent-strong)`"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"name": "--accent-soft",
|
|
34
|
+
"description": "Theme token. Light: `color-mix(in srgb, var(--accent) 10%, transparent)` · Dark: `color-mix(in srgb, var(--accent) 14%, transparent)`"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"name": "--accent-strong",
|
|
38
|
+
"description": "Theme token. Light: `color-mix(in srgb, var(--accent) 83%, #000)` · Dark: `color-mix(in srgb, var(--accent) 84%, #fff)`"
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"name": "--accent-text",
|
|
42
|
+
"description": "Theme token. Light: `var(--accent-strong)` · Dark: `var(--accent-strong)`"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"name": "--bg",
|
|
46
|
+
"description": "Theme token. Light: `#f4f4f2` · Dark: `#000000`"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"name": "--bg-accent",
|
|
50
|
+
"description": "Theme token. Light: `color-mix(in srgb, var(--accent) 6%, transparent)` · Dark: `color-mix(in srgb, var(--accent) 8%, transparent)`"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"name": "--bg-elevated",
|
|
54
|
+
"description": "Theme token. Light: `#fbfbfa` · Dark: `#0a0a0a`"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"name": "--border",
|
|
58
|
+
"description": "Global scale token. Value: `var(--line)`"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"name": "--border-strong",
|
|
62
|
+
"description": "Global scale token. Value: `var(--line-strong)`"
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"name": "--bronto-color-action",
|
|
66
|
+
"description": "Global scale token. Value: `var(--accent)`"
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"name": "--bronto-color-bg",
|
|
70
|
+
"description": "Global scale token. Value: `var(--bg)`"
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
"name": "--bronto-color-border",
|
|
74
|
+
"description": "Global scale token. Value: `var(--line)`"
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"name": "--bronto-color-border-strong",
|
|
78
|
+
"description": "Global scale token. Value: `var(--line-strong)`"
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
"name": "--bronto-color-danger",
|
|
82
|
+
"description": "Global scale token. Value: `var(--danger)`"
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"name": "--bronto-color-focus",
|
|
86
|
+
"description": "Global scale token. Value: `var(--focus-ring)`"
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
"name": "--bronto-color-on-action",
|
|
90
|
+
"description": "Global scale token. Value: `var(--button-text)`"
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"name": "--bronto-color-success",
|
|
94
|
+
"description": "Global scale token. Value: `var(--success)`"
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
"name": "--bronto-color-surface",
|
|
98
|
+
"description": "Global scale token. Value: `var(--panel)`"
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"name": "--bronto-color-surface-raised",
|
|
102
|
+
"description": "Global scale token. Value: `var(--panel-strong)`"
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"name": "--bronto-color-text",
|
|
106
|
+
"description": "Global scale token. Value: `var(--text)`"
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
"name": "--bronto-color-text-muted",
|
|
110
|
+
"description": "Global scale token. Value: `var(--text-dim)`"
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
"name": "--bronto-color-warning",
|
|
114
|
+
"description": "Global scale token. Value: `var(--warning)`"
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
"name": "--button-text",
|
|
118
|
+
"description": "Theme token. Light: `#ffffff` · Dark: `#000000`"
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
"name": "--code-bg",
|
|
122
|
+
"description": "Theme token. Light: `rgb(10, 10, 10, 0.05)` · Dark: `rgb(255, 255, 255, 0.05)`"
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
"name": "--danger",
|
|
126
|
+
"description": "Theme token. Light: `#c01622` · Dark: `#ff4d54`"
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"name": "--danger-soft",
|
|
130
|
+
"description": "Theme token. Light: `rgb(192, 22, 34, 0.1)` · Dark: `rgb(255, 77, 84, 0.15)`"
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
"name": "--display",
|
|
134
|
+
"description": "Global scale token. Value: `'Doto', var(--mono)`"
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"name": "--dot-font",
|
|
138
|
+
"description": "Global scale token. Value: `'Doto', var(--mono)`"
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
"name": "--dot-gap",
|
|
142
|
+
"description": "Global scale token. Value: `14px`"
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
"name": "--dot-size",
|
|
146
|
+
"description": "Global scale token. Value: `2px`"
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
"name": "--duration-base",
|
|
150
|
+
"description": "Global scale token. Value: `200ms`"
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
"name": "--duration-fast",
|
|
154
|
+
"description": "Global scale token. Value: `130ms`"
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
"name": "--duration-slow",
|
|
158
|
+
"description": "Global scale token. Value: `360ms`"
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
"name": "--ease-out",
|
|
162
|
+
"description": "Global scale token. Value: `cubic-bezier(0.33, 1, 0.68, 1)`"
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
"name": "--ease-spring",
|
|
166
|
+
"description": "Global scale token. Value: `cubic-bezier(0.16, 1, 0.3, 1)`"
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
"name": "--ease-standard",
|
|
170
|
+
"description": "Global scale token. Value: `cubic-bezier(0.2, 0.8, 0.2, 1)`"
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
"name": "--field-dot",
|
|
174
|
+
"description": "Theme token. Light: `rgb(10, 10, 10, 0.16)` · Dark: `rgb(242, 242, 242, 0.14)`"
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
"name": "--field-dot-accent",
|
|
178
|
+
"description": "Theme token. Light: `color-mix(in srgb, var(--accent) 78%, transparent)` · Dark: `color-mix(in srgb, var(--accent) 82%, transparent)`"
|
|
179
|
+
},
|
|
180
|
+
{
|
|
181
|
+
"name": "--field-dot-hot",
|
|
182
|
+
"description": "Theme token. Light: `rgb(10, 10, 10, 0.4)` · Dark: `rgb(242, 242, 242, 0.36)`"
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
"name": "--focus-ring",
|
|
186
|
+
"description": "Theme token. Light: `var(--accent)` · Dark: `var(--accent)`"
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
"name": "--line",
|
|
190
|
+
"description": "Theme token. Light: `#d8d8d4` · Dark: `#2a2a2a`"
|
|
191
|
+
},
|
|
192
|
+
{
|
|
193
|
+
"name": "--line-strong",
|
|
194
|
+
"description": "Theme token. Light: `#a8a8a2` · Dark: `#444444`"
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
"name": "--mono",
|
|
198
|
+
"description": "Global scale token. Value: `'JetBrains Mono', 'Fira Code', 'Cascadia Code', 'SF Mono', ui-monospace, monospace`"
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
"name": "--orange",
|
|
202
|
+
"description": "Theme token. Light: `#a85f32` · Dark: `#d08c5b`"
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
"name": "--orange-soft",
|
|
206
|
+
"description": "Theme token. Light: `rgb(168, 95, 50, 0.13)` · Dark: `rgb(208, 140, 91, 0.15)`"
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
"name": "--panel",
|
|
210
|
+
"description": "Theme token. Light: `#ffffff` · Dark: `#0c0c0c`"
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
"name": "--panel-soft",
|
|
214
|
+
"description": "Theme token. Light: `#ececea` · Dark: `#1a1a1a`"
|
|
215
|
+
},
|
|
216
|
+
{
|
|
217
|
+
"name": "--panel-strong",
|
|
218
|
+
"description": "Theme token. Light: `#ffffff` · Dark: `#141414`"
|
|
219
|
+
},
|
|
220
|
+
{
|
|
221
|
+
"name": "--radius-lg",
|
|
222
|
+
"description": "Global scale token. Value: `3px`"
|
|
223
|
+
},
|
|
224
|
+
{
|
|
225
|
+
"name": "--radius-md",
|
|
226
|
+
"description": "Global scale token. Value: `2px`"
|
|
227
|
+
},
|
|
228
|
+
{
|
|
229
|
+
"name": "--radius-pill",
|
|
230
|
+
"description": "Global scale token. Value: `999px`"
|
|
231
|
+
},
|
|
232
|
+
{
|
|
233
|
+
"name": "--radius-sm",
|
|
234
|
+
"description": "Global scale token. Value: `1px`"
|
|
235
|
+
},
|
|
236
|
+
{
|
|
237
|
+
"name": "--radius-xl",
|
|
238
|
+
"description": "Global scale token. Value: `4px`"
|
|
239
|
+
},
|
|
240
|
+
{
|
|
241
|
+
"name": "--sans",
|
|
242
|
+
"description": "Global scale token. Value: `'Inter', 'SF Pro Text', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif`"
|
|
243
|
+
},
|
|
244
|
+
{
|
|
245
|
+
"name": "--shadow",
|
|
246
|
+
"description": "Theme token. Light: `none` · Dark: `none`"
|
|
247
|
+
},
|
|
248
|
+
{
|
|
249
|
+
"name": "--shadow-raised",
|
|
250
|
+
"description": "Theme token. Light: `0 0 0 1px var(--line-strong)` · Dark: `0 0 0 1px var(--line-strong)`"
|
|
251
|
+
},
|
|
252
|
+
{
|
|
253
|
+
"name": "--space-2xl",
|
|
254
|
+
"description": "Global scale token. Value: `2.5rem`"
|
|
255
|
+
},
|
|
256
|
+
{
|
|
257
|
+
"name": "--space-2xs",
|
|
258
|
+
"description": "Global scale token. Value: `0.25rem`"
|
|
259
|
+
},
|
|
260
|
+
{
|
|
261
|
+
"name": "--space-lg",
|
|
262
|
+
"description": "Global scale token. Value: `1.35rem`"
|
|
263
|
+
},
|
|
264
|
+
{
|
|
265
|
+
"name": "--space-md",
|
|
266
|
+
"description": "Global scale token. Value: `1rem`"
|
|
267
|
+
},
|
|
268
|
+
{
|
|
269
|
+
"name": "--space-sm",
|
|
270
|
+
"description": "Global scale token. Value: `0.75rem`"
|
|
271
|
+
},
|
|
272
|
+
{
|
|
273
|
+
"name": "--space-xl",
|
|
274
|
+
"description": "Global scale token. Value: `1.75rem`"
|
|
275
|
+
},
|
|
276
|
+
{
|
|
277
|
+
"name": "--space-xs",
|
|
278
|
+
"description": "Global scale token. Value: `0.5rem`"
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
"name": "--success",
|
|
282
|
+
"description": "Theme token. Light: `#2f7d4f` · Dark: `#4ec27e`"
|
|
283
|
+
},
|
|
284
|
+
{
|
|
285
|
+
"name": "--success-soft",
|
|
286
|
+
"description": "Theme token. Light: `rgb(47, 125, 79, 0.12)` · Dark: `rgb(78, 194, 126, 0.14)`"
|
|
287
|
+
},
|
|
288
|
+
{
|
|
289
|
+
"name": "--surface",
|
|
290
|
+
"description": "Global scale token. Value: `var(--panel)`"
|
|
291
|
+
},
|
|
292
|
+
{
|
|
293
|
+
"name": "--surface-1",
|
|
294
|
+
"description": "Global scale token. Value: `var(--bg)`"
|
|
295
|
+
},
|
|
296
|
+
{
|
|
297
|
+
"name": "--surface-2",
|
|
298
|
+
"description": "Global scale token. Value: `var(--bg-elevated)`"
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
"name": "--surface-3",
|
|
302
|
+
"description": "Global scale token. Value: `var(--panel)`"
|
|
303
|
+
},
|
|
304
|
+
{
|
|
305
|
+
"name": "--surface-4",
|
|
306
|
+
"description": "Global scale token. Value: `var(--panel-soft)`"
|
|
307
|
+
},
|
|
308
|
+
{
|
|
309
|
+
"name": "--surface-5",
|
|
310
|
+
"description": "Global scale token. Value: `var(--line)`"
|
|
311
|
+
},
|
|
312
|
+
{
|
|
313
|
+
"name": "--surface-6",
|
|
314
|
+
"description": "Global scale token. Value: `var(--line-strong)`"
|
|
315
|
+
},
|
|
316
|
+
{
|
|
317
|
+
"name": "--surface-muted",
|
|
318
|
+
"description": "Global scale token. Value: `var(--panel-soft)`"
|
|
319
|
+
},
|
|
320
|
+
{
|
|
321
|
+
"name": "--surface-raised",
|
|
322
|
+
"description": "Global scale token. Value: `var(--panel-strong)`"
|
|
323
|
+
},
|
|
324
|
+
{
|
|
325
|
+
"name": "--text",
|
|
326
|
+
"description": "Theme token. Light: `#0a0a0a` · Dark: `#f2f2f2`"
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
"name": "--text-2xs",
|
|
330
|
+
"description": "Global scale token. Value: `0.68rem`"
|
|
331
|
+
},
|
|
332
|
+
{
|
|
333
|
+
"name": "--text-base",
|
|
334
|
+
"description": "Global scale token. Value: `0.95rem`"
|
|
335
|
+
},
|
|
336
|
+
{
|
|
337
|
+
"name": "--text-dim",
|
|
338
|
+
"description": "Theme token. Light: `#686863` · Dark: `#858585`"
|
|
339
|
+
},
|
|
340
|
+
{
|
|
341
|
+
"name": "--text-lg",
|
|
342
|
+
"description": "Global scale token. Value: `1.15rem`"
|
|
343
|
+
},
|
|
344
|
+
{
|
|
345
|
+
"name": "--text-sm",
|
|
346
|
+
"description": "Global scale token. Value: `0.86rem`"
|
|
347
|
+
},
|
|
348
|
+
{
|
|
349
|
+
"name": "--text-soft",
|
|
350
|
+
"description": "Theme token. Light: `#353533` · Dark: `#c4c4c4`"
|
|
351
|
+
},
|
|
352
|
+
{
|
|
353
|
+
"name": "--text-xl",
|
|
354
|
+
"description": "Global scale token. Value: `1.45rem`"
|
|
355
|
+
},
|
|
356
|
+
{
|
|
357
|
+
"name": "--text-xs",
|
|
358
|
+
"description": "Global scale token. Value: `0.76rem`"
|
|
359
|
+
},
|
|
360
|
+
{
|
|
361
|
+
"name": "--tracking-wide",
|
|
362
|
+
"description": "Global scale token. Value: `0.14em`"
|
|
363
|
+
},
|
|
364
|
+
{
|
|
365
|
+
"name": "--tracking-wider",
|
|
366
|
+
"description": "Global scale token. Value: `0.22em`"
|
|
367
|
+
},
|
|
368
|
+
{
|
|
369
|
+
"name": "--warning",
|
|
370
|
+
"description": "Theme token. Light: `#806414` · Dark: `#d8bd72`"
|
|
371
|
+
},
|
|
372
|
+
{
|
|
373
|
+
"name": "--warning-soft",
|
|
374
|
+
"description": "Theme token. Light: `rgb(128, 100, 20, 0.13)` · Dark: `rgb(216, 189, 114, 0.14)`"
|
|
375
|
+
},
|
|
376
|
+
{
|
|
377
|
+
"name": "--z-base",
|
|
378
|
+
"description": "Global scale token. Value: `0`"
|
|
379
|
+
},
|
|
380
|
+
{
|
|
381
|
+
"name": "--z-overlay",
|
|
382
|
+
"description": "Global scale token. Value: `30`"
|
|
383
|
+
},
|
|
384
|
+
{
|
|
385
|
+
"name": "--z-popover",
|
|
386
|
+
"description": "Global scale token. Value: `50`"
|
|
387
|
+
},
|
|
388
|
+
{
|
|
389
|
+
"name": "--z-raised",
|
|
390
|
+
"description": "Global scale token. Value: `10`"
|
|
391
|
+
},
|
|
392
|
+
{
|
|
393
|
+
"name": "--z-sticky",
|
|
394
|
+
"description": "Global scale token. Value: `20`"
|
|
395
|
+
},
|
|
396
|
+
{
|
|
397
|
+
"name": "--z-toast",
|
|
398
|
+
"description": "Global scale token. Value: `60`"
|
|
399
|
+
}
|
|
400
|
+
],
|
|
401
|
+
"atDirectives": [
|
|
402
|
+
{
|
|
403
|
+
"name": "@layer bronto",
|
|
404
|
+
"description": "The single cascade layer @ponchia/ui ships in. Un-layered app CSS overrides it without specificity conflict."
|
|
405
|
+
}
|
|
406
|
+
]
|
|
407
|
+
}
|
package/css/app.css
CHANGED
|
@@ -130,7 +130,7 @@
|
|
|
130
130
|
padding: 0.75rem var(--space-lg);
|
|
131
131
|
position: sticky;
|
|
132
132
|
inset-block-start: 0;
|
|
133
|
-
z-index:
|
|
133
|
+
z-index: var(--z-raised);
|
|
134
134
|
}
|
|
135
135
|
|
|
136
136
|
.ui-app-topbar__title {
|
|
@@ -210,6 +210,15 @@
|
|
|
210
210
|
grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
|
|
211
211
|
}
|
|
212
212
|
|
|
213
|
+
/* Inside an opt-in .ui-cq container, collapse to one column when the
|
|
214
|
+
container (not the viewport) is narrow — keeps metric tiles usable
|
|
215
|
+
in a slim panel. Inert without .ui-cq, so baselines are unaffected. */
|
|
216
|
+
@container bronto (max-width: 30rem) {
|
|
217
|
+
.ui-app-metrics {
|
|
218
|
+
grid-template-columns: 1fr;
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
|
|
213
222
|
.ui-app-metric {
|
|
214
223
|
background: var(--panel);
|
|
215
224
|
border: 1px solid var(--line);
|
|
@@ -276,7 +285,7 @@
|
|
|
276
285
|
overflow-x: auto;
|
|
277
286
|
position: sticky;
|
|
278
287
|
inset-block-start: 0;
|
|
279
|
-
z-index:
|
|
288
|
+
z-index: calc(var(--z-raised) + 1);
|
|
280
289
|
}
|
|
281
290
|
|
|
282
291
|
.ui-app-rail__foot {
|
package/css/base.css
CHANGED
package/css/dots.css
CHANGED
package/css/feedback.css
CHANGED
|
@@ -114,7 +114,14 @@
|
|
|
114
114
|
max-inline-size: min(22rem, calc(100vw - 2rem));
|
|
115
115
|
pointer-events: none;
|
|
116
116
|
position: fixed;
|
|
117
|
-
z-index:
|
|
117
|
+
z-index: var(--z-toast);
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
/* Assertive (error) region — anchored top inline-end so it never
|
|
121
|
+
overlaps the polite bottom stack and reads as a distinct, urgent
|
|
122
|
+
channel. */
|
|
123
|
+
.ui-toast-stack--assertive {
|
|
124
|
+
inset-block: 1.25rem auto;
|
|
118
125
|
}
|
|
119
126
|
|
|
120
127
|
.ui-toast {
|
|
@@ -154,6 +161,30 @@
|
|
|
154
161
|
text-transform: uppercase;
|
|
155
162
|
}
|
|
156
163
|
|
|
164
|
+
.ui-toast__close {
|
|
165
|
+
align-self: start;
|
|
166
|
+
background: none;
|
|
167
|
+
border: 0;
|
|
168
|
+
block-size: 1.4rem;
|
|
169
|
+
color: var(--text-dim);
|
|
170
|
+
cursor: pointer;
|
|
171
|
+
font: inherit;
|
|
172
|
+
grid-column: 3;
|
|
173
|
+
grid-row: 1 / -1;
|
|
174
|
+
inline-size: 1.4rem;
|
|
175
|
+
padding: 0;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
.ui-toast__close::before {
|
|
179
|
+
content: '\00d7'; /* × — glyph via CSS so the button has no text node */
|
|
180
|
+
font-size: 1.1rem;
|
|
181
|
+
line-height: 1;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
.ui-toast__close:hover {
|
|
185
|
+
color: var(--text);
|
|
186
|
+
}
|
|
187
|
+
|
|
157
188
|
.ui-toast--accent::before {
|
|
158
189
|
background: var(--accent);
|
|
159
190
|
}
|
|
@@ -196,7 +227,7 @@
|
|
|
196
227
|
opacity var(--duration-fast) var(--ease-standard),
|
|
197
228
|
transform var(--duration-fast) var(--ease-standard);
|
|
198
229
|
white-space: nowrap;
|
|
199
|
-
z-index:
|
|
230
|
+
z-index: var(--z-popover);
|
|
200
231
|
}
|
|
201
232
|
|
|
202
233
|
.ui-tooltip:hover .ui-tooltip__bubble,
|
|
@@ -205,6 +236,60 @@
|
|
|
205
236
|
transform: translate(-50%, 0);
|
|
206
237
|
}
|
|
207
238
|
|
|
239
|
+
/* Progressive enhancement: where CSS anchor positioning exists, lift
|
|
240
|
+
the bubble out of the normal flow so it can't be clipped by an
|
|
241
|
+
ancestor's overflow/scroll and auto-flips at the viewport edge.
|
|
242
|
+
Unsupported browsers keep the absolutely-positioned fallback above
|
|
243
|
+
(fine for short labels; use .ui-popover + initPopover for rich or
|
|
244
|
+
edge-critical content). */
|
|
245
|
+
@supports (anchor-name: --x) {
|
|
246
|
+
.ui-tooltip {
|
|
247
|
+
anchor-name: --ui-tooltip;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
.ui-tooltip__bubble {
|
|
251
|
+
inset: auto;
|
|
252
|
+
margin-block-end: 0.5rem;
|
|
253
|
+
position: fixed;
|
|
254
|
+
position-anchor: --ui-tooltip;
|
|
255
|
+
position-area: block-start center;
|
|
256
|
+
position-try-fallbacks: flip-block;
|
|
257
|
+
transform: translateY(4px);
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
.ui-tooltip:hover .ui-tooltip__bubble,
|
|
261
|
+
.ui-tooltip:focus-within .ui-tooltip__bubble {
|
|
262
|
+
transform: translateY(0);
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
/* Popover surface — a top-layer panel positioned by initPopover (JS
|
|
267
|
+
collision-aware, dependency-free). Uses the native [popover] top
|
|
268
|
+
layer when available so it never clips; the class styles it either
|
|
269
|
+
way. */
|
|
270
|
+
.ui-popover {
|
|
271
|
+
background: var(--panel-strong);
|
|
272
|
+
border: 1px solid var(--line-strong);
|
|
273
|
+
border-radius: var(--radius-md);
|
|
274
|
+
box-shadow: var(--shadow-raised);
|
|
275
|
+
color: var(--text-soft);
|
|
276
|
+
font-size: var(--text-sm);
|
|
277
|
+
inline-size: max-content;
|
|
278
|
+
margin: 0;
|
|
279
|
+
max-inline-size: min(22rem, calc(100vw - 2rem));
|
|
280
|
+
padding: var(--space-sm) var(--space-md);
|
|
281
|
+
position: fixed;
|
|
282
|
+
z-index: var(--z-popover);
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
.ui-popover:not([popover], .is-open) {
|
|
286
|
+
display: none;
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
.ui-popover[popover]:not(:popover-open) {
|
|
290
|
+
display: none;
|
|
291
|
+
}
|
|
292
|
+
|
|
208
293
|
/* --- Progress — linear, determinate or indeterminate --- */
|
|
209
294
|
|
|
210
295
|
.ui-progress {
|