@24vlh/vds 0.1.10 → 0.2.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/dist/components/action-bar.css +111 -0
- package/dist/components/action-bar.min.css +1 -0
- package/dist/components/authoring.css +262 -42
- package/dist/components/authoring.min.css +1 -1
- package/dist/components/avatar.css +229 -0
- package/dist/components/avatar.min.css +1 -0
- package/dist/components/badge-tag.css +235 -0
- package/dist/components/badge-tag.min.css +1 -0
- package/dist/components/buttons.css +90 -98
- package/dist/components/buttons.min.css +1 -1
- package/dist/components/command.css +846 -2
- package/dist/components/command.min.css +1 -1
- package/dist/components/content-blocks.css +328 -6
- package/dist/components/content-blocks.min.css +1 -1
- package/dist/components/description-list.css +117 -0
- package/dist/components/description-list.min.css +1 -0
- package/dist/components/flows.css +60 -47
- package/dist/components/flows.min.css +1 -1
- package/dist/components/header-footer.css +178 -18
- package/dist/components/header-footer.min.css +1 -1
- package/dist/components/hero.css +148 -14
- package/dist/components/hero.min.css +1 -1
- package/dist/components/icons.css +23 -11
- package/dist/components/icons.min.css +1 -1
- package/dist/components/inbox.css +5 -0
- package/dist/components/inbox.min.css +1 -1
- package/dist/components/navigation.css +67 -7
- package/dist/components/navigation.min.css +1 -1
- package/dist/components/overlays.css +121 -19
- package/dist/components/overlays.min.css +1 -1
- package/dist/components/progress.css +322 -0
- package/dist/components/progress.min.css +1 -0
- package/dist/components/skeleton.css +22 -3
- package/dist/components/skeleton.min.css +1 -1
- package/dist/components/state.css +172 -0
- package/dist/components/state.min.css +1 -0
- package/dist/components/tables.css +93 -15
- package/dist/components/tables.min.css +1 -1
- package/dist/components/tabs.css +116 -4
- package/dist/components/tabs.min.css +1 -1
- package/dist/components/toasts.css +115 -41
- package/dist/components/toasts.min.css +1 -1
- package/dist/components/tooltips-popovers.css +135 -93
- package/dist/components/tooltips-popovers.min.css +1 -1
- package/dist/components/utilities.css +37 -3
- package/dist/components/utilities.min.css +1 -1
- package/dist/core.css +43 -21
- package/dist/core.min.css +1 -1
- package/dist/identity.css +107 -1
- package/dist/identity.min.css +1 -1
- package/dist/vds.css +5432 -1775
- package/dist/vds.min.css +1 -1
- package/package.json +1 -1
|
@@ -22,7 +22,13 @@
|
|
|
22
22
|
[data-vds-toast],
|
|
23
23
|
.vds-toast {
|
|
24
24
|
--toast-duration: 5000ms;
|
|
25
|
+
--toast-stack-width: 20rem;
|
|
26
|
+
--toast-stack-gap: var(--space-2);
|
|
25
27
|
--toast-feedback-padding-md: var(--space-4);
|
|
28
|
+
--toast-padding: var(--toast-feedback-padding-md);
|
|
29
|
+
--toast-padding-compact: var(--space-3);
|
|
30
|
+
--toast-progress-track: color-mix(in srgb, currentColor 20%, transparent);
|
|
31
|
+
--toast-progress-fill: currentColor;
|
|
26
32
|
}
|
|
27
33
|
|
|
28
34
|
/* ---------------------------------------------------------
|
|
@@ -38,10 +44,10 @@
|
|
|
38
44
|
z-index: var(--z-toast);
|
|
39
45
|
display: flex;
|
|
40
46
|
flex-direction: column;
|
|
41
|
-
gap: var(--
|
|
47
|
+
gap: var(--toast-stack-gap);
|
|
42
48
|
pointer-events: none;
|
|
43
49
|
align-items: stretch;
|
|
44
|
-
width:
|
|
50
|
+
width: var(--toast-stack-width);
|
|
45
51
|
max-width: 100%;
|
|
46
52
|
}
|
|
47
53
|
|
|
@@ -127,6 +133,11 @@
|
|
|
127
133
|
--------------------------------------------------------- */
|
|
128
134
|
|
|
129
135
|
.toast {
|
|
136
|
+
--toast-bg: var(--color-surface);
|
|
137
|
+
--toast-border: var(--color-border-subtle);
|
|
138
|
+
--toast-accent: var(--toast-border);
|
|
139
|
+
--toast-text: var(--color-text);
|
|
140
|
+
|
|
130
141
|
pointer-events: auto;
|
|
131
142
|
display: grid;
|
|
132
143
|
grid-template-columns: auto 1fr auto;
|
|
@@ -140,11 +151,11 @@
|
|
|
140
151
|
grid-row-gap: var(--space-1);
|
|
141
152
|
row-gap: var(--space-1);
|
|
142
153
|
|
|
143
|
-
padding: var(--toast-
|
|
154
|
+
padding: var(--toast-padding);
|
|
144
155
|
border-radius: var(--radius-md);
|
|
145
|
-
border: var(--border-width) solid var(--
|
|
146
|
-
background-color: var(--
|
|
147
|
-
color: var(--
|
|
156
|
+
border: var(--border-width) solid var(--toast-border);
|
|
157
|
+
background-color: var(--toast-bg);
|
|
158
|
+
color: var(--toast-text);
|
|
148
159
|
box-shadow: var(--shadow-md);
|
|
149
160
|
|
|
150
161
|
font-size: var(--text-sm);
|
|
@@ -184,9 +195,9 @@
|
|
|
184
195
|
}
|
|
185
196
|
|
|
186
197
|
.toast__close {
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
198
|
+
grid-area: close;
|
|
199
|
+
justify-self: end;
|
|
200
|
+
align-self: start;
|
|
190
201
|
|
|
191
202
|
-webkit-appearance: none;
|
|
192
203
|
|
|
@@ -230,7 +241,7 @@
|
|
|
230
241
|
margin-top: var(--space-1);
|
|
231
242
|
height: 2px;
|
|
232
243
|
border-radius: var(--radius-full);
|
|
233
|
-
background-color:
|
|
244
|
+
background-color: var(--toast-progress-track);
|
|
234
245
|
overflow: hidden;
|
|
235
246
|
}
|
|
236
247
|
|
|
@@ -243,11 +254,12 @@
|
|
|
243
254
|
left: 0;
|
|
244
255
|
transform-origin: left center;
|
|
245
256
|
transform: scaleX(1);
|
|
246
|
-
background-color:
|
|
257
|
+
background-color: var(--toast-progress-fill);
|
|
247
258
|
animation: toast-progress var(--toast-duration) linear forwards;
|
|
248
259
|
}
|
|
249
260
|
|
|
250
261
|
.toast--compact {
|
|
262
|
+
--toast-padding: var(--toast-padding-compact);
|
|
251
263
|
grid-template-rows: auto;
|
|
252
264
|
grid-template-areas: "icon body close";
|
|
253
265
|
}
|
|
@@ -265,6 +277,87 @@
|
|
|
265
277
|
display: none;
|
|
266
278
|
}
|
|
267
279
|
|
|
280
|
+
/* Optional layout helpers */
|
|
281
|
+
|
|
282
|
+
.toast--no-progress {
|
|
283
|
+
grid-template-rows: auto;
|
|
284
|
+
grid-template-areas: "icon body close";
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
.toast--no-progress .toast__progress {
|
|
288
|
+
display: none;
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
.toast--no-icon {
|
|
292
|
+
grid-template-columns: 1fr auto;
|
|
293
|
+
grid-template-areas:
|
|
294
|
+
"body close"
|
|
295
|
+
"progress progress";
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
.toast--no-icon .toast__icon {
|
|
299
|
+
display: none;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
.toast--no-close {
|
|
303
|
+
grid-template-columns: auto 1fr;
|
|
304
|
+
grid-template-areas:
|
|
305
|
+
"icon body"
|
|
306
|
+
"progress progress";
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
.toast--no-close .toast__close {
|
|
310
|
+
display: none;
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
.toast--no-icon.toast--no-close {
|
|
314
|
+
grid-template-columns: 1fr;
|
|
315
|
+
grid-template-areas:
|
|
316
|
+
"body"
|
|
317
|
+
"progress";
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
.toast--no-progress.toast--no-icon {
|
|
321
|
+
grid-template-columns: 1fr auto;
|
|
322
|
+
grid-template-areas: "body close";
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
.toast--no-progress.toast--no-close {
|
|
326
|
+
grid-template-columns: auto 1fr;
|
|
327
|
+
grid-template-areas: "icon body";
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
.toast--no-progress.toast--no-icon.toast--no-close {
|
|
331
|
+
grid-template-columns: 1fr;
|
|
332
|
+
grid-template-areas: "body";
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
.toast--compact.toast--no-icon {
|
|
336
|
+
grid-template-columns: 1fr auto;
|
|
337
|
+
grid-template-rows: auto;
|
|
338
|
+
grid-template-areas: "body close";
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
.toast--compact.toast--no-close {
|
|
342
|
+
grid-template-columns: auto 1fr;
|
|
343
|
+
grid-template-rows: auto;
|
|
344
|
+
grid-template-areas: "icon body";
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
.toast--compact.toast--no-icon.toast--no-close {
|
|
348
|
+
grid-template-columns: 1fr;
|
|
349
|
+
grid-template-rows: auto;
|
|
350
|
+
grid-template-areas: "body";
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
.toast__actions {
|
|
354
|
+
display: flex;
|
|
355
|
+
flex-wrap: wrap;
|
|
356
|
+
gap: var(--space-2);
|
|
357
|
+
margin-top: var(--space-2);
|
|
358
|
+
align-items: center;
|
|
359
|
+
}
|
|
360
|
+
|
|
268
361
|
/* ---------------------------------------------------------
|
|
269
362
|
4. INLINE VARIANT (NON-FLOATING)
|
|
270
363
|
Usage:
|
|
@@ -277,6 +370,9 @@
|
|
|
277
370
|
width: 100%;
|
|
278
371
|
margin-top: var(--space-2);
|
|
279
372
|
margin-bottom: var(--space-2);
|
|
373
|
+
opacity: 1;
|
|
374
|
+
transform: none;
|
|
375
|
+
animation: none;
|
|
280
376
|
}
|
|
281
377
|
|
|
282
378
|
.toast--inline .toast__progress {
|
|
@@ -288,33 +384,33 @@
|
|
|
288
384
|
--------------------------------------------------------- */
|
|
289
385
|
|
|
290
386
|
.toast--neutral {
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
387
|
+
--toast-bg: var(--color-muted-bg);
|
|
388
|
+
--toast-border: var(--color-muted-border);
|
|
389
|
+
--toast-text: var(--color-text);
|
|
294
390
|
}
|
|
295
391
|
|
|
296
392
|
.toast--info {
|
|
297
393
|
--toast-bg: var(--semantic-info-bg-strong, var(--color-info-soft));
|
|
298
|
-
--toast-
|
|
394
|
+
--toast-accent: var(--semantic-info-border-strong, var(--color-info));
|
|
299
395
|
--toast-text: var(--semantic-info-text-strong, var(--color-info-strong));
|
|
300
396
|
}
|
|
301
397
|
|
|
302
398
|
.toast--success {
|
|
303
399
|
--toast-bg: var(--semantic-success-bg-strong, var(--color-success-soft));
|
|
304
|
-
--toast-
|
|
400
|
+
--toast-accent: var(--semantic-success-border-strong, var(--color-success));
|
|
305
401
|
--toast-text: var(--semantic-success-text-strong, var(--color-success-strong));
|
|
306
402
|
}
|
|
307
403
|
|
|
308
404
|
.toast--warning {
|
|
309
405
|
--toast-bg: var(--semantic-warning-bg-strong, var(--color-warning-soft));
|
|
310
|
-
--toast-
|
|
406
|
+
--toast-accent: var(--semantic-warning-border-strong, var(--color-warning));
|
|
311
407
|
--toast-text: var(--semantic-warning-text-strong, var(--color-warning-strong));
|
|
312
408
|
}
|
|
313
409
|
|
|
314
410
|
.toast--danger,
|
|
315
411
|
.toast--error {
|
|
316
412
|
--toast-bg: var(--semantic-error-bg-strong, var(--color-danger-soft));
|
|
317
|
-
--toast-
|
|
413
|
+
--toast-accent: var(--semantic-error-border-strong, var(--color-danger));
|
|
318
414
|
--toast-text: var(--semantic-error-text-strong, var(--color-danger-strong));
|
|
319
415
|
}
|
|
320
416
|
|
|
@@ -325,7 +421,7 @@
|
|
|
325
421
|
.toast--error {
|
|
326
422
|
background-color: var(--toast-bg);
|
|
327
423
|
color: var(--toast-text);
|
|
328
|
-
border-left: var(--border-width-strong) solid var(--toast-
|
|
424
|
+
border-left: var(--border-width-strong) solid var(--toast-accent);
|
|
329
425
|
}
|
|
330
426
|
|
|
331
427
|
.toast--info .toast__message,
|
|
@@ -376,28 +472,6 @@
|
|
|
376
472
|
}
|
|
377
473
|
}
|
|
378
474
|
|
|
379
|
-
@keyframes toast-slide-in {
|
|
380
|
-
from {
|
|
381
|
-
opacity: 0;
|
|
382
|
-
transform: translateY(8px);
|
|
383
|
-
}
|
|
384
|
-
to {
|
|
385
|
-
opacity: 1;
|
|
386
|
-
transform: translateY(0);
|
|
387
|
-
}
|
|
388
|
-
}
|
|
389
|
-
|
|
390
|
-
@keyframes toast-slide-out {
|
|
391
|
-
from {
|
|
392
|
-
opacity: 1;
|
|
393
|
-
transform: translateY(0);
|
|
394
|
-
}
|
|
395
|
-
to {
|
|
396
|
-
opacity: 0;
|
|
397
|
-
transform: translateY(6px);
|
|
398
|
-
}
|
|
399
|
-
}
|
|
400
|
-
|
|
401
475
|
/* ---------------------------------------------------------
|
|
402
476
|
7. REDUCED MOTION FALLBACKS
|
|
403
477
|
--------------------------------------------------------- */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.vds-toast,[data-vds-toast]{--toast-duration:5000ms;--toast-feedback-padding-md:var(--space-4)}.toast-stack{align-items:stretch;display:flex;flex-direction:column;gap:var(--
|
|
1
|
+
.vds-toast,[data-vds-toast]{--toast-duration:5000ms;--toast-stack-width:20rem;--toast-stack-gap:var(--space-2);--toast-feedback-padding-md:var(--space-4);--toast-padding:var(--toast-feedback-padding-md);--toast-padding-compact:var(--space-3);--toast-progress-track:color-mix(in srgb,currentColor 20%,transparent);--toast-progress-fill:currentColor}.toast-stack{align-items:stretch;display:flex;flex-direction:column;gap:var(--toast-stack-gap);max-width:100%;pointer-events:none;position:fixed;width:var(--toast-stack-width);z-index:var(--z-toast)}.toast-stack .toast{width:100%}.toast-stack--top-right{align-items:flex-end;right:var(--space-4);top:var(--space-4)}.toast-stack--top-left{align-items:flex-start;left:var(--space-4);top:var(--space-4)}.toast-stack--bottom-right{align-items:flex-end;bottom:var(--space-4);right:var(--space-4)}.toast-stack--bottom-left{align-items:flex-start;bottom:var(--space-4);left:var(--space-4)}.toast-stack--top-center{top:var(--space-4)}.toast-stack--bottom-center,.toast-stack--top-center{align-items:center;left:50%;transform:translateX(-50%)}.toast-stack--bottom-center{bottom:var(--space-4)}@media (max-width:640px){.toast-stack{left:var(--space-2);max-width:none;right:var(--space-2)}.toast-stack--top-center,.toast-stack--top-left,.toast-stack--top-right{align-items:stretch;bottom:var(--space-2);top:auto;transform:none}.toast-stack--bottom-center,.toast-stack--bottom-left,.toast-stack--bottom-right{align-items:stretch;bottom:var(--space-2);transform:none}}.toast{--toast-bg:var(--color-surface);--toast-border:var(--color-border-subtle);--toast-accent:var(--toast-border);--toast-text:var(--color-text);grid-column-gap:var(--space-3);grid-row-gap:var(--space-1);background-color:var(--toast-bg);border:var(--border-width) solid var(--toast-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);color:var(--toast-text);-moz-column-gap:var(--space-3);column-gap:var(--space-3);display:grid;font-size:var(--text-sm);grid-template-areas:"icon body close" "progress progress progress";grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;line-height:var(--line-height-normal);opacity:0;padding:var(--toast-padding);pointer-events:auto;position:relative;row-gap:var(--space-1);transform:translateY(8px)}.toast__icon{align-items:center;display:flex;flex-shrink:0;grid-area:icon;height:var(--icon-sm);justify-content:center;margin-top:0;width:var(--icon-sm)}.toast__body{display:flex;flex-direction:column;gap:var(--space-1);grid-area:body;min-width:0}.toast__title{font-weight:var(--font-weight-semibold)}.toast__message{color:var(--color-text-muted);font-size:var(--text-xs)}.toast__close{align-items:center;align-self:start;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--color-text-soft);cursor:pointer;display:inline-flex;grid-area:close;justify-content:center;justify-self:end;line-height:0;padding:var(--space-1)}.toast__close:hover{color:var(--color-text)}.toast__close:focus-visible{box-shadow:0 0 0 var(--focus-ring-width) var(--focus-ring-color);outline:none}.toast--in{animation:toast-slide-in .18s ease-out forwards;animation:toast-slide-in .18s var(--ease-out,ease-out) forwards}.toast--out{animation:toast-slide-out .15s ease-in forwards;animation:toast-slide-out .15s var(--ease-in,ease-in) forwards}.toast__progress{background-color:var(--toast-progress-track);border-radius:var(--radius-full);grid-area:progress;height:2px;margin-top:var(--space-1);overflow:hidden;position:relative}.toast__progress:before{animation:toast-progress var(--toast-duration) linear forwards;background-color:var(--toast-progress-fill);bottom:0;content:"";left:0;position:absolute;right:0;top:0;transform:scaleX(1);transform-origin:left center}.toast--compact{--toast-padding:var(--toast-padding-compact);grid-template-areas:"icon body close";grid-template-rows:auto}.toast--compact .toast__message{color:inherit;font-size:var(--text-sm)}.toast--compact .toast__progress,.toast--compact .toast__title{display:none}.toast--no-progress{grid-template-areas:"icon body close";grid-template-rows:auto}.toast--no-progress .toast__progress{display:none}.toast--no-icon{grid-template-areas:"body close" "progress progress";grid-template-columns:1fr auto}.toast--no-icon .toast__icon{display:none}.toast--no-close{grid-template-areas:"icon body" "progress progress";grid-template-columns:auto 1fr}.toast--no-close .toast__close{display:none}.toast--no-icon.toast--no-close{grid-template-areas:"body" "progress";grid-template-columns:1fr}.toast--no-progress.toast--no-icon{grid-template-areas:"body close";grid-template-columns:1fr auto}.toast--no-progress.toast--no-close{grid-template-areas:"icon body";grid-template-columns:auto 1fr}.toast--no-progress.toast--no-icon.toast--no-close{grid-template-areas:"body";grid-template-columns:1fr}.toast--compact.toast--no-icon{grid-template-areas:"body close";grid-template-columns:1fr auto;grid-template-rows:auto}.toast--compact.toast--no-close{grid-template-areas:"icon body";grid-template-columns:auto 1fr;grid-template-rows:auto}.toast--compact.toast--no-icon.toast--no-close{grid-template-areas:"body";grid-template-columns:1fr;grid-template-rows:auto}.toast__actions{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.toast--inline{animation:none;box-shadow:none;margin-bottom:var(--space-2);margin-top:var(--space-2);opacity:1;position:static;transform:none;width:100%}.toast--inline .toast__progress{display:none}.toast--neutral{--toast-bg:var(--color-muted-bg);--toast-border:var(--color-muted-border);--toast-text:var(--color-text)}.toast--info{--toast-bg:var(--semantic-info-bg-strong,var(--color-info-soft));--toast-accent:var(--semantic-info-border-strong,var(--color-info));--toast-text:var(--semantic-info-text-strong,var(--color-info-strong))}.toast--success{--toast-bg:var(--semantic-success-bg-strong,var(--color-success-soft));--toast-accent:var(--semantic-success-border-strong,var(--color-success));--toast-text:var(--semantic-success-text-strong,var(--color-success-strong))}.toast--warning{--toast-bg:var(--semantic-warning-bg-strong,var(--color-warning-soft));--toast-accent:var(--semantic-warning-border-strong,var(--color-warning));--toast-text:var(--semantic-warning-text-strong,var(--color-warning-strong))}.toast--danger,.toast--error{--toast-bg:var(--semantic-error-bg-strong,var(--color-danger-soft));--toast-accent:var(--semantic-error-border-strong,var(--color-danger));--toast-text:var(--semantic-error-text-strong,var(--color-danger-strong))}.toast--danger,.toast--error,.toast--info,.toast--success,.toast--warning{background-color:var(--toast-bg);border-left:var(--border-width-strong) solid var(--toast-accent);color:var(--toast-text)}.toast--danger .toast__message,.toast--error .toast__message,.toast--info .toast__message,.toast--neutral .toast__message,.toast--success .toast__message,.toast--warning .toast__message{color:inherit}.toast--exiting{animation:toast-slide-out var(--transition-fast) var(--ease-in) forwards}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-slide-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(6px)}}@keyframes toast-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media (prefers-reduced-motion:reduce){.toast{animation:none;opacity:1;transform:none;transition:none}.toast--exiting{animation:none;opacity:0}.toast__progress:before{animation-duration:var(--motion-none)}}
|
|
@@ -31,16 +31,27 @@
|
|
|
31
31
|
--------------------------------------------------------- */
|
|
32
32
|
|
|
33
33
|
.tooltip {
|
|
34
|
+
--tooltip-offset: var(--space-2);
|
|
35
|
+
--tooltip-motion: 0.25rem;
|
|
36
|
+
--tooltip-max-width: 24rem;
|
|
37
|
+
--tooltip-arrow-size: var(--space-3);
|
|
38
|
+
--tooltip-arrow-inset: var(--space-4);
|
|
39
|
+
--tooltip-bg: var(--color-surface);
|
|
40
|
+
--tooltip-border: var(--color-border-subtle);
|
|
41
|
+
--tooltip-text: var(--color-text);
|
|
42
|
+
|
|
34
43
|
position: absolute;
|
|
35
44
|
z-index: var(--z-tooltip);
|
|
36
45
|
|
|
37
46
|
max-width: 24rem;
|
|
47
|
+
|
|
48
|
+
max-width: var(--tooltip-max-width);
|
|
38
49
|
padding: var(--space-2) var(--space-3);
|
|
39
50
|
|
|
40
|
-
background-color: var(--
|
|
41
|
-
color: var(--
|
|
51
|
+
background-color: var(--tooltip-bg);
|
|
52
|
+
color: var(--tooltip-text);
|
|
42
53
|
border-radius: var(--radius-sm);
|
|
43
|
-
border: 1px solid var(--
|
|
54
|
+
border: 1px solid var(--tooltip-border);
|
|
44
55
|
box-shadow: var(--shadow-2);
|
|
45
56
|
|
|
46
57
|
font-size: var(--text-xs);
|
|
@@ -48,7 +59,6 @@
|
|
|
48
59
|
white-space: normal;
|
|
49
60
|
|
|
50
61
|
opacity: 0;
|
|
51
|
-
transform: translateY(0.25rem);
|
|
52
62
|
pointer-events: none;
|
|
53
63
|
|
|
54
64
|
transition: opacity var(--transition-fast) var(--ease-out), transform var(--transition-fast) var(--ease-out);
|
|
@@ -57,8 +67,7 @@
|
|
|
57
67
|
.tooltip--visible,
|
|
58
68
|
.tooltip[data-state="open"] {
|
|
59
69
|
opacity: 1;
|
|
60
|
-
|
|
61
|
-
pointer-events: auto;
|
|
70
|
+
--tooltip-motion: 0rem;
|
|
62
71
|
}
|
|
63
72
|
|
|
64
73
|
/* ---------------------------------------------------------
|
|
@@ -68,45 +77,49 @@
|
|
|
68
77
|
.tooltip--top {
|
|
69
78
|
bottom: 100%;
|
|
70
79
|
left: 50%;
|
|
71
|
-
transform: translate(-50%, -
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
.tooltip--top.tooltip--visible,
|
|
75
|
-
.tooltip--top[data-state="open"] {
|
|
76
|
-
transform: translate(-50%, 0);
|
|
80
|
+
transform: translate(-50%, calc(-1 * var(--tooltip-offset) - var(--tooltip-motion)));
|
|
77
81
|
}
|
|
78
82
|
|
|
79
83
|
.tooltip--bottom {
|
|
80
84
|
top: 100%;
|
|
81
85
|
left: 50%;
|
|
82
|
-
transform: translate(-50%,
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
.tooltip--bottom.tooltip--visible,
|
|
86
|
-
.tooltip--bottom[data-state="open"] {
|
|
87
|
-
transform: translate(-50%, 0);
|
|
86
|
+
transform: translate(-50%, calc(var(--tooltip-offset) + var(--tooltip-motion)));
|
|
88
87
|
}
|
|
89
88
|
|
|
90
89
|
.tooltip--left {
|
|
91
90
|
right: 100%;
|
|
92
91
|
top: 50%;
|
|
93
|
-
transform: translate(-
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
.tooltip--left.tooltip--visible,
|
|
97
|
-
.tooltip--left[data-state="open"] {
|
|
98
|
-
transform: translate(0, -50%);
|
|
92
|
+
transform: translate(calc(-1 * var(--tooltip-offset) - var(--tooltip-motion)), -50%);
|
|
99
93
|
}
|
|
100
94
|
|
|
101
95
|
.tooltip--right {
|
|
102
96
|
left: 100%;
|
|
103
97
|
top: 50%;
|
|
104
|
-
transform: translate(
|
|
98
|
+
transform: translate(calc(var(--tooltip-offset) + var(--tooltip-motion)), -50%);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
.tooltip--top-left {
|
|
102
|
+
bottom: 100%;
|
|
103
|
+
left: 0;
|
|
104
|
+
transform: translate(0, calc(-1 * var(--tooltip-offset) - var(--tooltip-motion)));
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
.tooltip--top-right {
|
|
108
|
+
bottom: 100%;
|
|
109
|
+
right: 0;
|
|
110
|
+
transform: translate(0, calc(-1 * var(--tooltip-offset) - var(--tooltip-motion)));
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
.tooltip--bottom-left {
|
|
114
|
+
top: 100%;
|
|
115
|
+
left: 0;
|
|
116
|
+
transform: translate(0, calc(var(--tooltip-offset) + var(--tooltip-motion)));
|
|
105
117
|
}
|
|
106
118
|
|
|
107
|
-
.tooltip--right
|
|
108
|
-
|
|
109
|
-
|
|
119
|
+
.tooltip--bottom-right {
|
|
120
|
+
top: 100%;
|
|
121
|
+
right: 0;
|
|
122
|
+
transform: translate(0, calc(var(--tooltip-offset) + var(--tooltip-motion)));
|
|
110
123
|
}
|
|
111
124
|
|
|
112
125
|
/* ---------------------------------------------------------
|
|
@@ -115,8 +128,8 @@
|
|
|
115
128
|
|
|
116
129
|
.tooltip__arrow {
|
|
117
130
|
position: absolute;
|
|
118
|
-
width: var(--
|
|
119
|
-
height: var(--
|
|
131
|
+
width: var(--tooltip-arrow-size);
|
|
132
|
+
height: var(--tooltip-arrow-size);
|
|
120
133
|
|
|
121
134
|
background-color: inherit;
|
|
122
135
|
border: inherit;
|
|
@@ -132,12 +145,36 @@
|
|
|
132
145
|
transform: translate(-50%, -50%) rotate(45deg);
|
|
133
146
|
}
|
|
134
147
|
|
|
148
|
+
.tooltip--top-left .tooltip__arrow {
|
|
149
|
+
top: 100%;
|
|
150
|
+
left: var(--tooltip-arrow-inset);
|
|
151
|
+
transform: translate(0, -50%) rotate(45deg);
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
.tooltip--top-right .tooltip__arrow {
|
|
155
|
+
top: 100%;
|
|
156
|
+
right: var(--tooltip-arrow-inset);
|
|
157
|
+
transform: translate(0, -50%) rotate(45deg);
|
|
158
|
+
}
|
|
159
|
+
|
|
135
160
|
.tooltip--bottom .tooltip__arrow {
|
|
136
161
|
bottom: 100%;
|
|
137
162
|
left: 50%;
|
|
138
163
|
transform: translate(-50%, 50%) rotate(45deg);
|
|
139
164
|
}
|
|
140
165
|
|
|
166
|
+
.tooltip--bottom-left .tooltip__arrow {
|
|
167
|
+
bottom: 100%;
|
|
168
|
+
left: var(--tooltip-arrow-inset);
|
|
169
|
+
transform: translate(0, 50%) rotate(45deg);
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
.tooltip--bottom-right .tooltip__arrow {
|
|
173
|
+
bottom: 100%;
|
|
174
|
+
right: var(--tooltip-arrow-inset);
|
|
175
|
+
transform: translate(0, 50%) rotate(45deg);
|
|
176
|
+
}
|
|
177
|
+
|
|
141
178
|
.tooltip--left .tooltip__arrow {
|
|
142
179
|
left: 100%;
|
|
143
180
|
top: 50%;
|
|
@@ -150,6 +187,15 @@
|
|
|
150
187
|
transform: translate(-50%, -50%) rotate(45deg);
|
|
151
188
|
}
|
|
152
189
|
|
|
190
|
+
.tooltip--no-arrow .tooltip__arrow {
|
|
191
|
+
display: none;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
.tooltip--interactive.tooltip--visible,
|
|
195
|
+
.tooltip--interactive[data-state="open"] {
|
|
196
|
+
pointer-events: auto;
|
|
197
|
+
}
|
|
198
|
+
|
|
153
199
|
/* ---------------------------------------------------------
|
|
154
200
|
5. TOOLTIP DENSITY
|
|
155
201
|
--------------------------------------------------------- */
|
|
@@ -206,23 +252,35 @@
|
|
|
206
252
|
--------------------------------------------------------- */
|
|
207
253
|
|
|
208
254
|
.popover {
|
|
255
|
+
--popover-offset: var(--space-2);
|
|
256
|
+
--popover-motion: 0.25rem;
|
|
257
|
+
--popover-min-width: 12rem;
|
|
258
|
+
--popover-max-width: 28rem;
|
|
259
|
+
--popover-arrow-size: var(--space-3);
|
|
260
|
+
--popover-arrow-inset: var(--space-6);
|
|
261
|
+
--popover-bg: var(--color-surface);
|
|
262
|
+
--popover-border: var(--color-border-subtle);
|
|
263
|
+
--popover-text: var(--color-text);
|
|
264
|
+
|
|
209
265
|
position: absolute;
|
|
210
266
|
z-index: var(--z-tooltip);
|
|
211
267
|
|
|
212
268
|
min-width: 12rem;
|
|
269
|
+
|
|
270
|
+
min-width: var(--popover-min-width);
|
|
213
271
|
max-width: 28rem;
|
|
272
|
+
max-width: var(--popover-max-width);
|
|
214
273
|
|
|
215
|
-
background-color: var(--
|
|
216
|
-
color: var(--
|
|
274
|
+
background-color: var(--popover-bg);
|
|
275
|
+
color: var(--popover-text);
|
|
217
276
|
border-radius: var(--radius-md);
|
|
218
|
-
border: 1px solid var(--
|
|
277
|
+
border: 1px solid var(--popover-border);
|
|
219
278
|
box-shadow: var(--shadow-3);
|
|
220
279
|
|
|
221
280
|
display: flex;
|
|
222
281
|
flex-direction: column;
|
|
223
282
|
|
|
224
283
|
opacity: 0;
|
|
225
|
-
transform: translateY(0.25rem);
|
|
226
284
|
pointer-events: none;
|
|
227
285
|
|
|
228
286
|
transition: opacity var(--transition-fast) var(--ease-out), transform var(--transition-fast) var(--ease-out);
|
|
@@ -231,8 +289,8 @@
|
|
|
231
289
|
.popover--open,
|
|
232
290
|
.popover[data-state="open"] {
|
|
233
291
|
opacity: 1;
|
|
234
|
-
transform: translateY(0);
|
|
235
292
|
pointer-events: auto;
|
|
293
|
+
--popover-motion: 0rem;
|
|
236
294
|
}
|
|
237
295
|
|
|
238
296
|
/* ---------------------------------------------------------
|
|
@@ -242,89 +300,49 @@
|
|
|
242
300
|
.popover--top {
|
|
243
301
|
bottom: 100%;
|
|
244
302
|
left: 50%;
|
|
245
|
-
transform: translate(-50%, -
|
|
246
|
-
}
|
|
247
|
-
|
|
248
|
-
.popover--top.popover--open,
|
|
249
|
-
.popover--top[data-state="open"] {
|
|
250
|
-
transform: translate(-50%, 0);
|
|
303
|
+
transform: translate(-50%, calc(-1 * var(--popover-offset) - var(--popover-motion)));
|
|
251
304
|
}
|
|
252
305
|
|
|
253
306
|
.popover--bottom {
|
|
254
307
|
top: 100%;
|
|
255
308
|
left: 50%;
|
|
256
|
-
transform: translate(-50%,
|
|
257
|
-
}
|
|
258
|
-
|
|
259
|
-
.popover--bottom.popover--open,
|
|
260
|
-
.popover--bottom[data-state="open"] {
|
|
261
|
-
transform: translate(-50%, 0);
|
|
309
|
+
transform: translate(-50%, calc(var(--popover-offset) + var(--popover-motion)));
|
|
262
310
|
}
|
|
263
311
|
|
|
264
312
|
.popover--left {
|
|
265
313
|
right: 100%;
|
|
266
314
|
top: 50%;
|
|
267
|
-
transform: translate(-
|
|
268
|
-
}
|
|
269
|
-
|
|
270
|
-
.popover--left.popover--open,
|
|
271
|
-
.popover--left[data-state="open"] {
|
|
272
|
-
transform: translate(0, -50%);
|
|
315
|
+
transform: translate(calc(-1 * var(--popover-offset) - var(--popover-motion)), -50%);
|
|
273
316
|
}
|
|
274
317
|
|
|
275
318
|
.popover--right {
|
|
276
319
|
left: 100%;
|
|
277
320
|
top: 50%;
|
|
278
|
-
transform: translate(
|
|
279
|
-
}
|
|
280
|
-
|
|
281
|
-
.popover--right.popover--open,
|
|
282
|
-
.popover--right[data-state="open"] {
|
|
283
|
-
transform: translate(0, -50%);
|
|
321
|
+
transform: translate(calc(var(--popover-offset) + var(--popover-motion)), -50%);
|
|
284
322
|
}
|
|
285
323
|
|
|
286
324
|
.popover--bottom-right {
|
|
287
325
|
top: 100%;
|
|
288
326
|
right: 0;
|
|
289
|
-
transform:
|
|
290
|
-
}
|
|
291
|
-
|
|
292
|
-
.popover--bottom-right.popover--open,
|
|
293
|
-
.popover--bottom-right[data-state="open"] {
|
|
294
|
-
transform: translateY(0);
|
|
327
|
+
transform: translate(0, calc(var(--popover-offset) + var(--popover-motion)));
|
|
295
328
|
}
|
|
296
329
|
|
|
297
330
|
.popover--bottom-left {
|
|
298
331
|
top: 100%;
|
|
299
332
|
left: 0;
|
|
300
|
-
transform:
|
|
301
|
-
}
|
|
302
|
-
|
|
303
|
-
.popover--bottom-left.popover--open,
|
|
304
|
-
.popover--bottom-left[data-state="open"] {
|
|
305
|
-
transform: translateY(0);
|
|
333
|
+
transform: translate(0, calc(var(--popover-offset) + var(--popover-motion)));
|
|
306
334
|
}
|
|
307
335
|
|
|
308
336
|
.popover--top-right {
|
|
309
337
|
bottom: 100%;
|
|
310
338
|
right: 0;
|
|
311
|
-
transform:
|
|
312
|
-
}
|
|
313
|
-
|
|
314
|
-
.popover--top-right.popover--open,
|
|
315
|
-
.popover--top-right[data-state="open"] {
|
|
316
|
-
transform: translateY(0);
|
|
339
|
+
transform: translate(0, calc(-1 * var(--popover-offset) - var(--popover-motion)));
|
|
317
340
|
}
|
|
318
341
|
|
|
319
342
|
.popover--top-left {
|
|
320
343
|
bottom: 100%;
|
|
321
344
|
left: 0;
|
|
322
|
-
transform:
|
|
323
|
-
}
|
|
324
|
-
|
|
325
|
-
.popover--top-left.popover--open,
|
|
326
|
-
.popover--top-left[data-state="open"] {
|
|
327
|
-
transform: translateY(0);
|
|
345
|
+
transform: translate(0, calc(-1 * var(--popover-offset) - var(--popover-motion)));
|
|
328
346
|
}
|
|
329
347
|
|
|
330
348
|
/* ---------------------------------------------------------
|
|
@@ -333,8 +351,8 @@
|
|
|
333
351
|
|
|
334
352
|
.popover__arrow {
|
|
335
353
|
position: absolute;
|
|
336
|
-
width: var(--
|
|
337
|
-
height: var(--
|
|
354
|
+
width: var(--popover-arrow-size);
|
|
355
|
+
height: var(--popover-arrow-size);
|
|
338
356
|
|
|
339
357
|
background-color: inherit;
|
|
340
358
|
border: inherit;
|
|
@@ -344,20 +362,40 @@
|
|
|
344
362
|
transform: rotate(45deg);
|
|
345
363
|
}
|
|
346
364
|
|
|
347
|
-
.popover--bottom .popover__arrow
|
|
348
|
-
|
|
365
|
+
.popover--bottom .popover__arrow {
|
|
366
|
+
bottom: 100%;
|
|
367
|
+
left: 50%;
|
|
368
|
+
transform: translate(-50%, 50%) rotate(45deg);
|
|
369
|
+
}
|
|
370
|
+
|
|
349
371
|
.popover--bottom-left .popover__arrow {
|
|
350
372
|
bottom: 100%;
|
|
351
|
-
left: var(--
|
|
352
|
-
transform:
|
|
373
|
+
left: var(--popover-arrow-inset);
|
|
374
|
+
transform: translate(0, 50%) rotate(45deg);
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
.popover--bottom-right .popover__arrow {
|
|
378
|
+
bottom: 100%;
|
|
379
|
+
right: var(--popover-arrow-inset);
|
|
380
|
+
transform: translate(0, 50%) rotate(45deg);
|
|
381
|
+
}
|
|
382
|
+
|
|
383
|
+
.popover--top .popover__arrow {
|
|
384
|
+
top: 100%;
|
|
385
|
+
left: 50%;
|
|
386
|
+
transform: translate(-50%, -50%) rotate(45deg);
|
|
353
387
|
}
|
|
354
388
|
|
|
355
|
-
.popover--top .popover__arrow,
|
|
356
|
-
.popover--top-right .popover__arrow,
|
|
357
389
|
.popover--top-left .popover__arrow {
|
|
358
390
|
top: 100%;
|
|
359
|
-
left: var(--
|
|
360
|
-
transform:
|
|
391
|
+
left: var(--popover-arrow-inset);
|
|
392
|
+
transform: translate(0, -50%) rotate(45deg);
|
|
393
|
+
}
|
|
394
|
+
|
|
395
|
+
.popover--top-right .popover__arrow {
|
|
396
|
+
top: 100%;
|
|
397
|
+
right: var(--popover-arrow-inset);
|
|
398
|
+
transform: translate(0, -50%) rotate(45deg);
|
|
361
399
|
}
|
|
362
400
|
|
|
363
401
|
.popover--left .popover__arrow {
|
|
@@ -372,6 +410,10 @@
|
|
|
372
410
|
transform: translate(-50%, -50%) rotate(45deg);
|
|
373
411
|
}
|
|
374
412
|
|
|
413
|
+
.popover--no-arrow .popover__arrow {
|
|
414
|
+
display: none;
|
|
415
|
+
}
|
|
416
|
+
|
|
375
417
|
/* ---------------------------------------------------------
|
|
376
418
|
11. POPOVER LAYOUT
|
|
377
419
|
--------------------------------------------------------- */
|