@threadlabs/looma 0.25.2 → 0.25.4
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/components/ui-badge/ui-badge.html +59 -3
- package/components/ui-button/ui-button.html +1 -1
- package/components/ui-tree-item/ui-tree-item.html +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/styles/ui-badge.css +61 -4
- package/styles/ui-button.css +1 -1
- package/styles/ui-tree-item.css +1 -1
- package/vanilla/UiBadge.js +16 -3
- package/vue/UiBadge.d.ts +4 -2
- package/vue/UiBadge.vue +57 -3
- package/vue/UiButton.vue +1 -1
- package/vue/UiEditorSlashMenuItem.d.ts +1 -1
- package/vue/UiTreeItem.vue +1 -1
- package/vue/chunks/UiBadge.js +7 -3
- package/vue/chunks/UiButton.js +1 -1
- package/vue/chunks/UiTreeItem.js +1 -1
- package/vue/components.css +233 -186
package/vue/components.css
CHANGED
|
@@ -349,7 +349,7 @@ svg[data-v-bf7b9190] {
|
|
|
349
349
|
syntax: "*";
|
|
350
350
|
inherits: false;
|
|
351
351
|
}
|
|
352
|
-
[data-component~="ui-badge"][data-v-
|
|
352
|
+
[data-component~="ui-badge"][data-v-5065fda2] {
|
|
353
353
|
--_badge-surface: color-mix(in srgb, var(--ui-surface-subtle) 80%, var(--ui-surface-default));
|
|
354
354
|
--_badge-text: var(--ui-text-secondary);
|
|
355
355
|
/* Sit between the soft fill and its stronger theme ink. */
|
|
@@ -375,6 +375,7 @@ svg[data-v-bf7b9190] {
|
|
|
375
375
|
display: inline-flex;
|
|
376
376
|
align-items: center;
|
|
377
377
|
justify-content: center;
|
|
378
|
+
gap: var(--ui-space-1);
|
|
378
379
|
box-sizing: border-box;
|
|
379
380
|
min-inline-size: 0;
|
|
380
381
|
max-inline-size: 100%;
|
|
@@ -394,17 +395,48 @@ svg[data-v-bf7b9190] {
|
|
|
394
395
|
|
|
395
396
|
/* A constrained badge keeps its surface intact and ellipsizes only its label. The full
|
|
396
397
|
text stays in the DOM for accessible names and consumers' selected values. */
|
|
397
|
-
.label[data-v-
|
|
398
|
+
.label[data-v-5065fda2] {
|
|
398
399
|
display: block;
|
|
399
400
|
min-inline-size: 0;
|
|
400
401
|
overflow: hidden;
|
|
401
402
|
text-overflow: ellipsis;
|
|
402
403
|
}
|
|
404
|
+
.label[data-v-5065fda2]:empty {
|
|
405
|
+
display: none;
|
|
406
|
+
}
|
|
407
|
+
|
|
408
|
+
/* Icon content has its own flex item so label ellipsis never clips its strokes. */
|
|
409
|
+
.icon[data-v-5065fda2] {
|
|
410
|
+
display: inline-flex;
|
|
411
|
+
align-items: center;
|
|
412
|
+
justify-content: center;
|
|
413
|
+
flex: none;
|
|
414
|
+
}
|
|
415
|
+
.icon[data-v-5065fda2]:empty {
|
|
416
|
+
display: none;
|
|
417
|
+
}
|
|
418
|
+
.icon svg[data-v-5065fda2-s] {
|
|
419
|
+
display: block;
|
|
420
|
+
inline-size: 1em;
|
|
421
|
+
block-size: 1em;
|
|
422
|
+
flex: none;
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
/* Ordinary icon-plus-text children keep inline ellipsis, with explicit glyph spacing. */
|
|
426
|
+
.label svg[data-v-5065fda2-s] {
|
|
427
|
+
inline-size: 1em;
|
|
428
|
+
block-size: 1em;
|
|
429
|
+
vertical-align: middle;
|
|
430
|
+
margin-inline-end: var(--ui-space-1);
|
|
431
|
+
}
|
|
432
|
+
.label[data-v-5065fda2]:has(svg) {
|
|
433
|
+
text-box-trim: none;
|
|
434
|
+
}
|
|
403
435
|
|
|
404
|
-
/*
|
|
405
|
-
|
|
436
|
+
/* Text-only badges retain their trimmed inline baseline. Icon content needs a flex row;
|
|
437
|
+
trimming its label separately keeps the glyph centered without changing adjacent lines. */
|
|
406
438
|
@supports (text-box-trim: trim-both) {
|
|
407
|
-
[data-component~="ui-badge"][data-v-
|
|
439
|
+
[data-component~="ui-badge"][data-v-5065fda2] {
|
|
408
440
|
display: inline-block;
|
|
409
441
|
min-block-size: var(--ui-badge-min-block-size, 1.5rem);
|
|
410
442
|
text-align: center;
|
|
@@ -412,8 +444,17 @@ svg[data-v-bf7b9190] {
|
|
|
412
444
|
text-box-trim: trim-both;
|
|
413
445
|
text-box-edge: text;
|
|
414
446
|
}
|
|
447
|
+
[data-component~="ui-badge"][data-v-5065fda2]:has(.icon:not(:empty)),
|
|
448
|
+
[data-component~="ui-badge"][data-v-5065fda2]:has(.label svg) {
|
|
449
|
+
display: inline-flex;
|
|
450
|
+
text-box-trim: none;
|
|
415
451
|
}
|
|
416
|
-
[data-component~="ui-badge"][data-
|
|
452
|
+
[data-component~="ui-badge"]:has(.icon:not(:empty)) .label[data-v-5065fda2] {
|
|
453
|
+
text-box-trim: trim-both;
|
|
454
|
+
text-box-edge: text;
|
|
455
|
+
}
|
|
456
|
+
}
|
|
457
|
+
[data-component~="ui-badge"][data-ui-badge-state~="size=xs"][data-v-5065fda2] {
|
|
417
458
|
box-sizing: border-box;
|
|
418
459
|
min-inline-size: 1rem;
|
|
419
460
|
min-block-size: var(--ui-badge-min-block-size, 1rem);
|
|
@@ -421,52 +462,52 @@ svg[data-v-bf7b9190] {
|
|
|
421
462
|
font-size: var(--ui-badge-font-size, var(--ui-font-size-2xs));
|
|
422
463
|
line-height: var(--ui-badge-line-height, 1);
|
|
423
464
|
}
|
|
424
|
-
[data-component~="ui-badge"][data-ui-badge-state~="tone=accent"][data-v-
|
|
465
|
+
[data-component~="ui-badge"][data-ui-badge-state~="tone=accent"][data-v-5065fda2] {
|
|
425
466
|
--_badge-surface: var(--ui-accent-strong-surface, var(--ui-accent-solid));
|
|
426
467
|
--_badge-border: var(--ui-accent-strong-surface, var(--ui-accent-solid));
|
|
427
468
|
--_badge-text: var(--ui-accent-on-strong, var(--ui-text-on-accent));
|
|
428
469
|
}
|
|
429
|
-
[data-component~="ui-badge"][data-ui-badge-state~="tone=danger"][data-v-
|
|
470
|
+
[data-component~="ui-badge"][data-ui-badge-state~="tone=danger"][data-v-5065fda2] {
|
|
430
471
|
--_badge-surface: var(--ui-danger-strong-surface, var(--ui-danger-solid));
|
|
431
472
|
--_badge-border: var(--ui-danger-strong-surface, var(--ui-danger-solid));
|
|
432
473
|
--_badge-text: var(--ui-danger-on-strong, var(--ui-text-on-accent));
|
|
433
474
|
}
|
|
434
|
-
[data-component~="ui-badge"][data-ui-badge-state~="tone=success"][data-v-
|
|
475
|
+
[data-component~="ui-badge"][data-ui-badge-state~="tone=success"][data-v-5065fda2] {
|
|
435
476
|
--_badge-surface: var(--ui-success-strong-surface, var(--ui-success-solid));
|
|
436
477
|
--_badge-border: var(--ui-success-strong-surface, var(--ui-success-solid));
|
|
437
478
|
--_badge-text: var(--ui-success-on-strong, var(--ui-text-on-accent));
|
|
438
479
|
}
|
|
439
|
-
[data-component~="ui-badge"][data-ui-badge-state~="tone=warning"][data-v-
|
|
480
|
+
[data-component~="ui-badge"][data-ui-badge-state~="tone=warning"][data-v-5065fda2] {
|
|
440
481
|
--_badge-surface: var(--ui-warning-strong-surface, var(--ui-warning-solid));
|
|
441
482
|
--_badge-border: var(--ui-warning-strong-surface, var(--ui-warning-solid));
|
|
442
483
|
--_badge-text: var(--ui-warning-on-strong, var(--ui-text-on-accent));
|
|
443
484
|
}
|
|
444
|
-
[data-component~="ui-badge"][data-ui-badge-state~="tone=info"][data-v-
|
|
485
|
+
[data-component~="ui-badge"][data-ui-badge-state~="tone=info"][data-v-5065fda2] {
|
|
445
486
|
--_badge-surface: var(--ui-info-strong-surface, var(--ui-info-solid));
|
|
446
487
|
--_badge-border: var(--ui-info-strong-surface, var(--ui-info-solid));
|
|
447
488
|
--_badge-text: var(--ui-info-on-strong, var(--ui-text-on-accent));
|
|
448
489
|
}
|
|
449
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=accent"][data-v-
|
|
490
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=accent"][data-v-5065fda2] {
|
|
450
491
|
--_badge-surface: color-mix(in srgb, var(--ui-accent-solid) 19%, var(--ui-surface-default));
|
|
451
492
|
--_badge-border: color-mix(in srgb, var(--ui-accent-solid) 25%, var(--ui-surface-default));
|
|
452
493
|
--_badge-text: var(--ui-accent-subtle-text, var(--ui-accent-solid));
|
|
453
494
|
}
|
|
454
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=danger"][data-v-
|
|
495
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=danger"][data-v-5065fda2] {
|
|
455
496
|
--_badge-surface: color-mix(in srgb, var(--ui-danger-solid) 19%, var(--ui-surface-default));
|
|
456
497
|
--_badge-border: color-mix(in srgb, var(--ui-danger-solid) 25%, var(--ui-surface-default));
|
|
457
498
|
--_badge-text: var(--ui-danger-subtle-text, var(--ui-danger-solid));
|
|
458
499
|
}
|
|
459
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=success"][data-v-
|
|
500
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=success"][data-v-5065fda2] {
|
|
460
501
|
--_badge-surface: color-mix(in srgb, var(--ui-success-solid) 19%, var(--ui-surface-default));
|
|
461
502
|
--_badge-border: color-mix(in srgb, var(--ui-success-solid) 25%, var(--ui-surface-default));
|
|
462
503
|
--_badge-text: var(--ui-success-subtle-text, var(--ui-success-solid));
|
|
463
504
|
}
|
|
464
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=warning"][data-v-
|
|
505
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=warning"][data-v-5065fda2] {
|
|
465
506
|
--_badge-surface: color-mix(in srgb, var(--ui-warning-solid) 19%, var(--ui-surface-default));
|
|
466
507
|
--_badge-border: color-mix(in srgb, var(--ui-warning-solid) 25%, var(--ui-surface-default));
|
|
467
508
|
--_badge-text: var(--ui-warning-subtle-text, var(--ui-warning-solid));
|
|
468
509
|
}
|
|
469
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=info"][data-v-
|
|
510
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=subtle"][data-ui-badge-state~="tone=info"][data-v-5065fda2] {
|
|
470
511
|
--_badge-surface: color-mix(in srgb, var(--ui-info-solid) 19%, var(--ui-surface-default));
|
|
471
512
|
--_badge-border: color-mix(in srgb, var(--ui-info-solid) 25%, var(--ui-surface-default));
|
|
472
513
|
--_badge-text: var(--ui-info-subtle-text, var(--ui-info-solid));
|
|
@@ -474,12 +515,12 @@ svg[data-v-bf7b9190] {
|
|
|
474
515
|
|
|
475
516
|
/* A solid colour fills with the ink. Its text is the page surface, mixed at 0% only so that it too is
|
|
476
517
|
invalid while the hook is unset. */
|
|
477
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=solid"][data-v-
|
|
518
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=solid"][data-v-5065fda2] {
|
|
478
519
|
--_badge-color-surface: var(--_badge-color-ink);
|
|
479
520
|
--_badge-color-border: var(--_badge-color-ink);
|
|
480
521
|
--_badge-color-text: color-mix(in oklab, var(--_ui-badge-color) 0%, var(--ui-surface-default));
|
|
481
522
|
}
|
|
482
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-v-
|
|
523
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-v-5065fda2] {
|
|
483
524
|
--_badge-surface: var(--ui-surface-default);
|
|
484
525
|
--_badge-border: var(--ui-border-strong);
|
|
485
526
|
--_badge-text: var(--ui-text-secondary);
|
|
@@ -487,29 +528,29 @@ svg[data-v-bf7b9190] {
|
|
|
487
528
|
--_badge-color-surface: initial;
|
|
488
529
|
--_badge-color-border: var(--_badge-color-ink);
|
|
489
530
|
}
|
|
490
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=accent"][data-v-
|
|
531
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=accent"][data-v-5065fda2] {
|
|
491
532
|
--_badge-border: var(--ui-accent-solid);
|
|
492
533
|
--_badge-text: var(--ui-accent-subtle-text, var(--ui-accent-solid));
|
|
493
534
|
}
|
|
494
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=danger"][data-v-
|
|
535
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=danger"][data-v-5065fda2] {
|
|
495
536
|
--_badge-border: var(--ui-danger-solid);
|
|
496
537
|
--_badge-text: var(--ui-danger-subtle-text, var(--ui-danger-solid));
|
|
497
538
|
}
|
|
498
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=success"][data-v-
|
|
539
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=success"][data-v-5065fda2] {
|
|
499
540
|
--_badge-border: var(--ui-success-solid);
|
|
500
541
|
--_badge-text: var(--ui-success-subtle-text, var(--ui-success-solid));
|
|
501
542
|
}
|
|
502
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=warning"][data-v-
|
|
543
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=warning"][data-v-5065fda2] {
|
|
503
544
|
--_badge-border: var(--ui-warning-solid);
|
|
504
545
|
--_badge-text: var(--ui-warning-subtle-text, var(--ui-warning-solid));
|
|
505
546
|
}
|
|
506
|
-
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=info"][data-v-
|
|
547
|
+
[data-component~="ui-badge"][data-ui-badge-state~="variant=outline"][data-ui-badge-state~="tone=info"][data-v-5065fda2] {
|
|
507
548
|
--_badge-border: var(--ui-info-solid);
|
|
508
549
|
--_badge-text: var(--ui-info-subtle-text, var(--ui-info-solid));
|
|
509
550
|
}
|
|
510
551
|
|
|
511
552
|
/* An icon mark keeps the existing tone recipe and follows the global spacing and radius. */
|
|
512
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"][data-v-
|
|
553
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"][data-v-5065fda2] {
|
|
513
554
|
--_badge-square-size: var(--ui-badge-square-size, calc(var(--ui-space-4) * 2));
|
|
514
555
|
display: inline-flex;
|
|
515
556
|
box-sizing: border-box;
|
|
@@ -522,17 +563,23 @@ svg[data-v-bf7b9190] {
|
|
|
522
563
|
border-radius: var(--ui-radius-md);
|
|
523
564
|
text-box-trim: none;
|
|
524
565
|
}
|
|
525
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"][data-ui-badge-state~="size=xs"][data-v-
|
|
566
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"][data-ui-badge-state~="size=xs"][data-v-5065fda2] {
|
|
526
567
|
--_badge-square-size: var(--ui-badge-square-size, calc(var(--ui-space-3) * 2));
|
|
527
568
|
}
|
|
528
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label[data-v-
|
|
569
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label[data-v-5065fda2] {
|
|
529
570
|
display: inline-flex;
|
|
530
571
|
align-items: center;
|
|
531
572
|
justify-content: center;
|
|
532
573
|
}
|
|
574
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label svg[data-v-5065fda2-s] {
|
|
575
|
+
margin-inline-end: 0;
|
|
576
|
+
}
|
|
577
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=square"] .label[data-v-5065fda2]:empty {
|
|
578
|
+
display: none;
|
|
579
|
+
}
|
|
533
580
|
|
|
534
581
|
/* A dot uses the badge's tone recipe; only its silhouette and visible label change. */
|
|
535
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=dot"][data-v-
|
|
582
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=dot"][data-v-5065fda2] {
|
|
536
583
|
position: relative;
|
|
537
584
|
box-sizing: border-box;
|
|
538
585
|
flex: none;
|
|
@@ -544,7 +591,7 @@ svg[data-v-bf7b9190] {
|
|
|
544
591
|
border-radius: var(--ui-radius-round);
|
|
545
592
|
text-box-trim: none;
|
|
546
593
|
}
|
|
547
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=dot"] .label[data-v-
|
|
594
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=dot"] .label[data-v-5065fda2] {
|
|
548
595
|
position: absolute;
|
|
549
596
|
inline-size: 1px;
|
|
550
597
|
block-size: 1px;
|
|
@@ -555,7 +602,7 @@ svg[data-v-bf7b9190] {
|
|
|
555
602
|
|
|
556
603
|
/* The clipped point needs an inset surface over an outer border-colour shape: a native border
|
|
557
604
|
has no diagonal edge to follow. Keep this edge for every tag variant. */
|
|
558
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-
|
|
605
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-5065fda2] {
|
|
559
606
|
--_badge-point: var(--ui-badge-point, var(--ui-space-2));
|
|
560
607
|
|
|
561
608
|
position: relative;
|
|
@@ -572,7 +619,7 @@ svg[data-v-bf7b9190] {
|
|
|
572
619
|
0 100%
|
|
573
620
|
);
|
|
574
621
|
}
|
|
575
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-
|
|
622
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-5065fda2]::before {
|
|
576
623
|
content: "";
|
|
577
624
|
position: absolute;
|
|
578
625
|
inset: 0;
|
|
@@ -587,34 +634,34 @@ svg[data-v-bf7b9190] {
|
|
|
587
634
|
);
|
|
588
635
|
pointer-events: none;
|
|
589
636
|
}
|
|
590
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-
|
|
637
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-5065fda2]:dir(rtl) {
|
|
591
638
|
padding-inline-end: var(--ui-badge-padding-inline, var(--ui-space-2));
|
|
592
639
|
padding-inline-start: calc(
|
|
593
640
|
var(--ui-badge-padding-inline, var(--ui-space-2)) + var(--_badge-point)
|
|
594
641
|
);
|
|
595
642
|
clip-path: polygon(var(--_badge-point) 0, 100% 0, 100% 100%, var(--_badge-point) 100%, 0 50%);
|
|
596
643
|
}
|
|
597
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-
|
|
644
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-5065fda2]:dir(rtl)::before {
|
|
598
645
|
clip-path: polygon(var(--_badge-point) 0, 100% 0, 100% 100%, var(--_badge-point) 100%, 0 50%);
|
|
599
646
|
}
|
|
600
647
|
@media (forced-colors: active) {
|
|
601
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=dot"][data-v-
|
|
648
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=dot"][data-v-5065fda2] {
|
|
602
649
|
forced-color-adjust: none;
|
|
603
650
|
border-color: CanvasText;
|
|
604
651
|
background: CanvasText;
|
|
605
652
|
}
|
|
606
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-
|
|
653
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-5065fda2] {
|
|
607
654
|
forced-color-adjust: none;
|
|
608
655
|
background: CanvasText;
|
|
609
656
|
color: CanvasText;
|
|
610
657
|
}
|
|
611
|
-
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-
|
|
658
|
+
[data-component~="ui-badge"][data-ui-badge-state~="shape=tag"][data-v-5065fda2]::before {
|
|
612
659
|
background: Canvas;
|
|
613
660
|
}
|
|
614
661
|
}
|
|
615
662
|
|
|
616
663
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
617
|
-
[data-component~="ui-badge"][hidden][data-v-
|
|
664
|
+
[data-component~="ui-badge"][hidden][data-v-5065fda2] {
|
|
618
665
|
display: none;
|
|
619
666
|
}
|
|
620
667
|
|
|
@@ -824,7 +871,7 @@ svg[data-v-fb67873c],
|
|
|
824
871
|
syntax: "*";
|
|
825
872
|
inherits: false;
|
|
826
873
|
}
|
|
827
|
-
[data-component~="ui-button"][data-v-
|
|
874
|
+
[data-component~="ui-button"][data-v-7c2bc2b4] {
|
|
828
875
|
--_hue: var(--ui-accent);
|
|
829
876
|
--_hue-hover: var(--ui-accent-hover);
|
|
830
877
|
--_hue-active: var(--ui-accent-active);
|
|
@@ -840,18 +887,19 @@ svg[data-v-fb67873c],
|
|
|
840
887
|
display: inline-flex;
|
|
841
888
|
align-items: center;
|
|
842
889
|
justify-content: center;
|
|
890
|
+
column-gap: var(--ui-space-2);
|
|
843
891
|
vertical-align: middle;
|
|
844
892
|
color: var(--_tone-text);
|
|
845
893
|
}
|
|
846
|
-
[data-component~="ui-button"][data-ui-button-state~="align=start"][data-v-
|
|
894
|
+
[data-component~="ui-button"][data-ui-button-state~="align=start"][data-v-7c2bc2b4] {
|
|
847
895
|
justify-content: flex-start;
|
|
848
896
|
text-align: start;
|
|
849
897
|
}
|
|
850
|
-
[data-component~="ui-button"][data-ui-button-state~="stretch"][data-v-
|
|
898
|
+
[data-component~="ui-button"][data-ui-button-state~="stretch"][data-v-7c2bc2b4] {
|
|
851
899
|
display: flex;
|
|
852
900
|
inline-size: 100%;
|
|
853
901
|
}
|
|
854
|
-
[data-component~="ui-button"][data-v-
|
|
902
|
+
[data-component~="ui-button"][data-v-7c2bc2b4] {
|
|
855
903
|
appearance: none;
|
|
856
904
|
min-block-size: var(--ui-button-min-block-size, var(--ui-control-size-md));
|
|
857
905
|
border-style: solid;
|
|
@@ -879,35 +927,34 @@ svg[data-v-fb67873c],
|
|
|
879
927
|
}
|
|
880
928
|
|
|
881
929
|
/* An anchor keeps the boxed button look even when an app styles ordinary links. */
|
|
882
|
-
[data-component~="ui-button"][data-v-
|
|
930
|
+
[data-component~="ui-button"][data-v-7c2bc2b4]:is(a) {
|
|
883
931
|
text-decoration: none;
|
|
884
932
|
}
|
|
885
|
-
.spinner-wrap[data-v-
|
|
933
|
+
.spinner-wrap[data-v-7c2bc2b4] {
|
|
886
934
|
display: inline-flex;
|
|
887
935
|
flex: none;
|
|
888
|
-
margin-inline-end: var(--ui-space-2);
|
|
889
936
|
vertical-align: middle;
|
|
890
937
|
}
|
|
891
938
|
@supports (text-box-trim: trim-both) {
|
|
892
|
-
[data-component~="ui-button"][data-v-
|
|
939
|
+
[data-component~="ui-button"][data-v-7c2bc2b4] {
|
|
893
940
|
text-box-trim: trim-both;
|
|
894
941
|
text-box-edge: cap alphabetic;
|
|
895
942
|
}
|
|
896
943
|
}
|
|
897
|
-
[data-component~="ui-button"][data-ui-button-state~="size=xs"][data-v-
|
|
944
|
+
[data-component~="ui-button"][data-ui-button-state~="size=xs"][data-v-7c2bc2b4] {
|
|
898
945
|
min-block-size: 1.5rem;
|
|
899
946
|
padding: calc(var(--ui-space-0-5) * 1.5) calc(var(--ui-space-1) * 1.25);
|
|
900
947
|
font-size: var(--ui-font-size-xs);
|
|
901
948
|
}
|
|
902
|
-
[data-component~="ui-button"][data-ui-button-state~="shape=pill"][data-v-
|
|
949
|
+
[data-component~="ui-button"][data-ui-button-state~="shape=pill"][data-v-7c2bc2b4] {
|
|
903
950
|
border-radius: var(--ui-button-radius, var(--ui-radius-round));
|
|
904
951
|
}
|
|
905
|
-
[data-component~="ui-button"][data-ui-button-state~="size=sm"][data-v-
|
|
952
|
+
[data-component~="ui-button"][data-ui-button-state~="size=sm"][data-v-7c2bc2b4] {
|
|
906
953
|
min-block-size: var(--ui-control-size-sm);
|
|
907
954
|
padding: var(--ui-space-1) var(--ui-space-2);
|
|
908
955
|
font-size: var(--ui-font-size-sm);
|
|
909
956
|
}
|
|
910
|
-
[data-component~="ui-button"][data-ui-button-state~="size=lg"][data-v-
|
|
957
|
+
[data-component~="ui-button"][data-ui-button-state~="size=lg"][data-v-7c2bc2b4] {
|
|
911
958
|
min-block-size: var(--ui-control-size-lg);
|
|
912
959
|
padding: var(--ui-space-3) var(--ui-space-4);
|
|
913
960
|
font-size: var(--ui-font-size-md);
|
|
@@ -915,7 +962,7 @@ svg[data-v-fb67873c],
|
|
|
915
962
|
|
|
916
963
|
/* Card actions inherit Button's palette and behavior; only their shared layout changes.
|
|
917
964
|
The icon may contain any decorative composition. Empty icons remove their column. */
|
|
918
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=card"][data-v-
|
|
965
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=card"][data-v-7c2bc2b4] {
|
|
919
966
|
display: grid;
|
|
920
967
|
grid-template-columns: auto minmax(0, 1fr) auto;
|
|
921
968
|
align-content: center;
|
|
@@ -928,23 +975,23 @@ svg[data-v-fb67873c],
|
|
|
928
975
|
box-shadow: none;
|
|
929
976
|
background-image: none;
|
|
930
977
|
}
|
|
931
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=card"][data-ui-button-state~="size=lg"][data-v-
|
|
978
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=card"][data-ui-button-state~="size=lg"][data-v-7c2bc2b4] {
|
|
932
979
|
min-block-size: max(var(--ui-control-min-block-size), var(--ui-control-size-lg));
|
|
933
980
|
}
|
|
934
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=card"][data-v-
|
|
981
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=card"][data-v-7c2bc2b4]:has(.card-icon:empty) {
|
|
935
982
|
grid-template-columns: minmax(0, 1fr) auto;
|
|
936
983
|
}
|
|
937
|
-
.card-icon[data-v-
|
|
984
|
+
.card-icon[data-v-7c2bc2b4] {
|
|
938
985
|
display: flex;
|
|
939
986
|
align-items: flex-start;
|
|
940
987
|
}
|
|
941
|
-
.card-icon[data-v-
|
|
988
|
+
.card-icon[data-v-7c2bc2b4]:empty {
|
|
942
989
|
display: none;
|
|
943
990
|
}
|
|
944
|
-
.card-content[data-v-
|
|
991
|
+
.card-content[data-v-7c2bc2b4] {
|
|
945
992
|
min-inline-size: 0;
|
|
946
993
|
}
|
|
947
|
-
.card-action[data-v-
|
|
994
|
+
.card-action[data-v-7c2bc2b4] {
|
|
948
995
|
display: flex;
|
|
949
996
|
align-items: center;
|
|
950
997
|
align-self: center;
|
|
@@ -952,29 +999,29 @@ svg[data-v-fb67873c],
|
|
|
952
999
|
|
|
953
1000
|
/* A link is never :enabled, so interactive states test "not unavailable" instead: for a button that
|
|
954
1001
|
is exactly :enabled, at the same specificity, and it also matches a link that can be followed. */
|
|
955
|
-
[data-component~="ui-button"][data-v-
|
|
1002
|
+
[data-component~="ui-button"][data-v-7c2bc2b4]:hover:not(:disabled, [aria-disabled="true"]) {
|
|
956
1003
|
border-color: var(--ui-button-hover-border, var(--_tone-hover));
|
|
957
1004
|
background-color: var(--ui-button-hover-surface, oklch(from var(--_tone) l c h / 12%));
|
|
958
1005
|
}
|
|
959
1006
|
|
|
960
1007
|
/* Pressed reads as pressed in: the highlight goes, and the shadow moves inside. */
|
|
961
|
-
[data-component~="ui-button"][data-v-
|
|
1008
|
+
[data-component~="ui-button"][data-v-7c2bc2b4]:active:not(:disabled, [aria-disabled="true"]) {
|
|
962
1009
|
background-color: var(--ui-button-active-surface, oklch(from var(--_tone) l c h / 18%));
|
|
963
1010
|
background-image: none;
|
|
964
1011
|
box-shadow: var(--ui-pressed);
|
|
965
1012
|
}
|
|
966
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-
|
|
967
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-
|
|
1013
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-7c2bc2b4],
|
|
1014
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-7c2bc2b4] {
|
|
968
1015
|
border-color: var(--_tone);
|
|
969
1016
|
background-color: var(--_tone);
|
|
970
1017
|
color: var(--_on-tone);
|
|
971
1018
|
box-shadow: var(--ui-button-solid-shadow, var(--ui-raised));
|
|
972
1019
|
}
|
|
973
|
-
:is([data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-
|
|
1020
|
+
:is([data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-7c2bc2b4], [data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-7c2bc2b4]):hover:not(:disabled, [aria-disabled="true"]) {
|
|
974
1021
|
background-color: var(--_tone-hover);
|
|
975
1022
|
border-color: var(--_tone-hover);
|
|
976
1023
|
}
|
|
977
|
-
:is([data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-
|
|
1024
|
+
:is([data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-7c2bc2b4], [data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-7c2bc2b4]):active:not(:disabled, [aria-disabled="true"]) {
|
|
978
1025
|
background-color: var(--_tone-active);
|
|
979
1026
|
border-color: var(--_tone-active);
|
|
980
1027
|
background-image: none;
|
|
@@ -983,43 +1030,43 @@ svg[data-v-fb67873c],
|
|
|
983
1030
|
|
|
984
1031
|
/* Tone is the colour, variant is the volume. Every pairing works: a danger outline is a
|
|
985
1032
|
destructive secondary action, not a special case. */
|
|
986
|
-
[data-component~="ui-button"][data-ui-button-state~="tone=neutral"][data-v-
|
|
1033
|
+
[data-component~="ui-button"][data-ui-button-state~="tone=neutral"][data-v-7c2bc2b4] {
|
|
987
1034
|
--_hue: var(--ui-text);
|
|
988
1035
|
--_hue-hover: var(--ui-text);
|
|
989
1036
|
--_hue-active: var(--ui-text);
|
|
990
1037
|
--_hue-text: var(--ui-text);
|
|
991
1038
|
--_on-hue: var(--ui-surface);
|
|
992
1039
|
}
|
|
993
|
-
[data-component~="ui-button"][data-ui-button-state~="tone=danger"][data-v-
|
|
994
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-
|
|
1040
|
+
[data-component~="ui-button"][data-ui-button-state~="tone=danger"][data-v-7c2bc2b4],
|
|
1041
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=danger"][data-v-7c2bc2b4] {
|
|
995
1042
|
--_hue: var(--ui-danger);
|
|
996
1043
|
--_hue-hover: var(--ui-danger-hover);
|
|
997
1044
|
--_hue-active: var(--ui-danger-hover);
|
|
998
1045
|
--_hue-text: var(--ui-danger-hover);
|
|
999
1046
|
--_on-hue: var(--ui-on-danger);
|
|
1000
1047
|
}
|
|
1001
|
-
[data-component~="ui-button"][data-ui-button-state~="tone=success"][data-v-
|
|
1048
|
+
[data-component~="ui-button"][data-ui-button-state~="tone=success"][data-v-7c2bc2b4] {
|
|
1002
1049
|
--_hue: var(--ui-success);
|
|
1003
1050
|
--_hue-hover: color-mix(in srgb, var(--ui-success) 85%, #000);
|
|
1004
1051
|
--_hue-active: color-mix(in srgb, var(--ui-success) 75%, #000);
|
|
1005
1052
|
--_hue-text: color-mix(in srgb, var(--ui-success) 85%, #000);
|
|
1006
1053
|
--_on-hue: var(--ui-surface);
|
|
1007
1054
|
}
|
|
1008
|
-
[data-component~="ui-button"][data-ui-button-state~="tone=warning"][data-v-
|
|
1055
|
+
[data-component~="ui-button"][data-ui-button-state~="tone=warning"][data-v-7c2bc2b4] {
|
|
1009
1056
|
--_hue: var(--ui-warning);
|
|
1010
1057
|
--_hue-hover: color-mix(in srgb, var(--ui-warning) 85%, #000);
|
|
1011
1058
|
--_hue-active: color-mix(in srgb, var(--ui-warning) 75%, #000);
|
|
1012
1059
|
--_hue-text: color-mix(in srgb, var(--ui-warning) 85%, #000);
|
|
1013
1060
|
--_on-hue: var(--ui-surface);
|
|
1014
1061
|
}
|
|
1015
|
-
[data-component~="ui-button"][data-ui-button-state~="tone=info"][data-v-
|
|
1062
|
+
[data-component~="ui-button"][data-ui-button-state~="tone=info"][data-v-7c2bc2b4] {
|
|
1016
1063
|
--_hue: var(--ui-info);
|
|
1017
1064
|
--_hue-hover: color-mix(in srgb, var(--ui-info) 85%, #000);
|
|
1018
1065
|
--_hue-active: color-mix(in srgb, var(--ui-info) 75%, #000);
|
|
1019
1066
|
--_hue-text: color-mix(in srgb, var(--ui-info) 85%, #000);
|
|
1020
1067
|
--_on-hue: var(--ui-surface);
|
|
1021
1068
|
}
|
|
1022
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-
|
|
1069
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-7c2bc2b4] {
|
|
1023
1070
|
border-color: transparent;
|
|
1024
1071
|
background: transparent;
|
|
1025
1072
|
box-shadow: none;
|
|
@@ -1027,14 +1074,14 @@ svg[data-v-fb67873c],
|
|
|
1027
1074
|
}
|
|
1028
1075
|
|
|
1029
1076
|
/* Tints derive from the text colour, not a surface token, so hover and press show on any background. */
|
|
1030
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-
|
|
1077
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-7c2bc2b4]:hover:not(:disabled, [aria-disabled="true"]) {
|
|
1031
1078
|
background-color: var(--ui-button-ghost-hover-surface, oklch(from var(--_tone) l c h / 10%));
|
|
1032
1079
|
border-color: transparent;
|
|
1033
1080
|
}
|
|
1034
1081
|
|
|
1035
1082
|
/* Pressed, or holding its menu open, a ghost button sinks slightly: a light surface with a faint
|
|
1036
1083
|
edge and a soft inner shadow. Lighter than hover, so an open menu's trigger never reads as heavy. */
|
|
1037
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-
|
|
1084
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-7c2bc2b4]:is(:active, [aria-expanded="true"]):not(:disabled, [aria-disabled="true"]) {
|
|
1038
1085
|
background-color: var(
|
|
1039
1086
|
--ui-button-ghost-active-surface,
|
|
1040
1087
|
color-mix(in oklch, var(--ui-surface), var(--_tone) 3%)
|
|
@@ -1046,13 +1093,13 @@ svg[data-v-fb67873c],
|
|
|
1046
1093
|
}
|
|
1047
1094
|
|
|
1048
1095
|
/* A soft halo that transitions in with the other box-shadow changes, layered on the raised shadow. */
|
|
1049
|
-
[data-component~="ui-button"][data-v-
|
|
1096
|
+
[data-component~="ui-button"][data-v-7c2bc2b4]:focus-visible {
|
|
1050
1097
|
outline: none;
|
|
1051
1098
|
box-shadow:
|
|
1052
1099
|
var(--ui-button-shadow, var(--ui-raised)),
|
|
1053
1100
|
var(--ui-focus-halo);
|
|
1054
1101
|
}
|
|
1055
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-
|
|
1102
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=solid"][data-v-7c2bc2b4]:focus-visible {
|
|
1056
1103
|
box-shadow:
|
|
1057
1104
|
var(--ui-button-solid-shadow, var(--ui-raised)),
|
|
1058
1105
|
var(--ui-focus-halo);
|
|
@@ -1060,7 +1107,7 @@ svg[data-v-fb67873c],
|
|
|
1060
1107
|
|
|
1061
1108
|
/* A loading action stays visually active; only an explicitly disabled action takes the
|
|
1062
1109
|
neutral disabled palette. Its flat surface and muted ink make the state unambiguous. */
|
|
1063
|
-
[data-component~="ui-button"][data-v-
|
|
1110
|
+
[data-component~="ui-button"][data-v-7c2bc2b4]:is(:disabled, [aria-disabled="true"]:not([aria-busy="true"])) {
|
|
1064
1111
|
border-color: var(--ui-disabled-border);
|
|
1065
1112
|
background-color: var(--ui-disabled-surface);
|
|
1066
1113
|
color: var(--ui-disabled-text);
|
|
@@ -1070,19 +1117,19 @@ svg[data-v-fb67873c],
|
|
|
1070
1117
|
background-image: none;
|
|
1071
1118
|
box-shadow: none;
|
|
1072
1119
|
}
|
|
1073
|
-
:is([data-component~="ui-button"][data-ui-button-state~="loading"][data-v-
|
|
1120
|
+
:is([data-component~="ui-button"][data-ui-button-state~="loading"][data-v-7c2bc2b4], [data-component~="ui-button"][data-ui-button-state~="pending"][data-v-7c2bc2b4]):focus-visible {
|
|
1074
1121
|
box-shadow: var(--ui-focus-halo);
|
|
1075
1122
|
}
|
|
1076
1123
|
|
|
1077
1124
|
/* Ghost keeps no border, but gains the same neutral surface as other disabled buttons. */
|
|
1078
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-
|
|
1125
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=ghost"][data-v-7c2bc2b4]:is(:disabled, [aria-disabled="true"]:not([aria-busy="true"])) {
|
|
1079
1126
|
background-color: var(--ui-disabled-surface);
|
|
1080
1127
|
border-color: transparent;
|
|
1081
1128
|
}
|
|
1082
1129
|
|
|
1083
1130
|
/* The size states outrank :host, so sm is named too, or a small button would stay small. */
|
|
1084
1131
|
@media (pointer: coarse) {
|
|
1085
|
-
[data-component~="ui-button"][data-v-
|
|
1132
|
+
[data-component~="ui-button"][data-v-7c2bc2b4], [data-component~="ui-button"][data-ui-button-state~="size=sm"][data-v-7c2bc2b4] {
|
|
1086
1133
|
min-block-size: var(--ui-control-min-block-size);
|
|
1087
1134
|
}
|
|
1088
1135
|
}
|
|
@@ -1093,15 +1140,15 @@ svg[data-v-fb67873c],
|
|
|
1093
1140
|
area. xs sits inside a line of text the same way, so it keeps its size and gains the area too.
|
|
1094
1141
|
Only these need it: a hit area on every button would reach over its neighbours. */
|
|
1095
1142
|
html[data-ui-input-modality="touch"]
|
|
1096
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-
|
|
1143
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-7c2bc2b4],
|
|
1097
1144
|
html[data-ui-input-modality="touch"]
|
|
1098
|
-
[data-component~="ui-button"][data-ui-button-state~="size=xs"][data-v-
|
|
1145
|
+
[data-component~="ui-button"][data-ui-button-state~="size=xs"][data-v-7c2bc2b4] {
|
|
1099
1146
|
position: relative;
|
|
1100
1147
|
}
|
|
1101
1148
|
html[data-ui-input-modality="touch"]
|
|
1102
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-
|
|
1149
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-7c2bc2b4]::after,
|
|
1103
1150
|
html[data-ui-input-modality="touch"]
|
|
1104
|
-
[data-component~="ui-button"][data-ui-button-state~="size=xs"][data-v-
|
|
1151
|
+
[data-component~="ui-button"][data-ui-button-state~="size=xs"][data-v-7c2bc2b4]::after {
|
|
1105
1152
|
position: absolute;
|
|
1106
1153
|
inset: 50% auto auto 50%;
|
|
1107
1154
|
inline-size: max(100%, var(--ui-control-min-block-size));
|
|
@@ -1112,7 +1159,7 @@ html[data-ui-input-modality="touch"]
|
|
|
1112
1159
|
|
|
1113
1160
|
/* Link: an inline text action. No box, padding, or minimum height (inline targets are exempt under
|
|
1114
1161
|
WCAG 2.5.8); the inherited font; an underline that strengthens on hover; a visible focus ring. */
|
|
1115
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-
|
|
1162
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-7c2bc2b4] {
|
|
1116
1163
|
display: inline;
|
|
1117
1164
|
min-block-size: 0;
|
|
1118
1165
|
padding: 0;
|
|
@@ -1130,21 +1177,21 @@ html[data-ui-input-modality="touch"]
|
|
|
1130
1177
|
color var(--ui-motion-fast) var(--ui-motion-ease),
|
|
1131
1178
|
text-decoration-color var(--ui-motion-fast) var(--ui-motion-ease);
|
|
1132
1179
|
}
|
|
1133
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-
|
|
1180
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-7c2bc2b4]:hover:not(:disabled, [aria-disabled="true"]) {
|
|
1134
1181
|
color: var(--ui-button-link-hover-text, var(--ui-text-primary));
|
|
1135
1182
|
text-decoration-color: currentColor;
|
|
1136
1183
|
background: none;
|
|
1137
1184
|
transform: none;
|
|
1138
1185
|
}
|
|
1139
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-
|
|
1186
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-7c2bc2b4]:active:not(:disabled, [aria-disabled="true"]) {
|
|
1140
1187
|
background: none;
|
|
1141
1188
|
transform: none;
|
|
1142
1189
|
}
|
|
1143
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-
|
|
1190
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-7c2bc2b4]:is(:disabled, [aria-disabled="true"]:not([aria-busy="true"])) {
|
|
1144
1191
|
background: none;
|
|
1145
1192
|
border-color: transparent;
|
|
1146
1193
|
}
|
|
1147
|
-
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-
|
|
1194
|
+
[data-component~="ui-button"][data-ui-button-state~="variant=link"][data-v-7c2bc2b4]:focus-visible {
|
|
1148
1195
|
box-shadow: none;
|
|
1149
1196
|
/* Fallback keeps the ring if the token is missing: an unresolved var() would void the outline. */
|
|
1150
1197
|
outline: var(--ui-focus-width) solid var(--ui-focus-ring);
|
|
@@ -1152,7 +1199,7 @@ html[data-ui-input-modality="touch"]
|
|
|
1152
1199
|
}
|
|
1153
1200
|
|
|
1154
1201
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
1155
|
-
[data-component~="ui-button"][hidden][data-v-
|
|
1202
|
+
[data-component~="ui-button"][hidden][data-v-7c2bc2b4] {
|
|
1156
1203
|
display: none;
|
|
1157
1204
|
}
|
|
1158
1205
|
|
|
@@ -8816,7 +8863,7 @@ to {
|
|
|
8816
8863
|
syntax: "*";
|
|
8817
8864
|
inherits: false;
|
|
8818
8865
|
}
|
|
8819
|
-
[data-component~="ui-tree-item"][data-v-
|
|
8866
|
+
[data-component~="ui-tree-item"][data-v-f2ec0a81] {
|
|
8820
8867
|
/* Hooks do not inherit, so the parts below read them from the root. The tree's density
|
|
8821
8868
|
sets the defaults, in --_ui-default-*. */
|
|
8822
8869
|
--_ui-tree-item-min-block-size: var(
|
|
@@ -8838,7 +8885,7 @@ to {
|
|
|
8838
8885
|
min-inline-size: 0;
|
|
8839
8886
|
margin-inline-start: calc(var(--_ui-tree-item-indent-step, 0) * var(--_ui-tree-indent, 16px));
|
|
8840
8887
|
}
|
|
8841
|
-
.row[data-v-
|
|
8888
|
+
.row[data-v-f2ec0a81] {
|
|
8842
8889
|
position: relative;
|
|
8843
8890
|
display: grid;
|
|
8844
8891
|
grid-template-columns: var(--_tree-disclosure-size) auto minmax(0, 1fr);
|
|
@@ -8855,54 +8902,54 @@ to {
|
|
|
8855
8902
|
box-shadow var(--ui-motion-fast) var(--ui-motion-ease),
|
|
8856
8903
|
min-block-size var(--ui-motion-base) var(--ui-motion-ease);
|
|
8857
8904
|
}
|
|
8858
|
-
.row[data-v-
|
|
8859
|
-
.row[data-v-
|
|
8905
|
+
.row[data-v-f2ec0a81]:hover,
|
|
8906
|
+
.row[data-v-f2ec0a81]:focus-within {
|
|
8860
8907
|
color: var(--ui-text-primary);
|
|
8861
8908
|
background: var(--ui-surface-muted);
|
|
8862
8909
|
}
|
|
8863
8910
|
|
|
8864
8911
|
/* Selection is the same surface recipe as destination and choice rows. */
|
|
8865
|
-
[data-component~="ui-tree-item"][data-ui-tree-item-state~="selected"] > .row[data-v-
|
|
8912
|
+
[data-component~="ui-tree-item"][data-ui-tree-item-state~="selected"] > .row[data-v-f2ec0a81] {
|
|
8866
8913
|
color: var(--ui-selection-text);
|
|
8867
8914
|
background: var(--ui-selection-surface);
|
|
8868
8915
|
}
|
|
8869
8916
|
[data-component~="ui-tree-item"][data-ui-tree-item-state~="selected"]:not([aria-disabled="true"])
|
|
8870
8917
|
> .row
|
|
8871
|
-
> .leading[data-v-
|
|
8918
|
+
> .leading[data-v-f2ec0a81] {
|
|
8872
8919
|
color: var(--ui-selection-text);
|
|
8873
8920
|
}
|
|
8874
|
-
[data-component~="ui-tree-item"][data-ui-tree-item-state~="disabled"] .row[data-v-
|
|
8921
|
+
[data-component~="ui-tree-item"][data-ui-tree-item-state~="disabled"] .row[data-v-f2ec0a81] {
|
|
8875
8922
|
color: var(--ui-disabled-text);
|
|
8876
8923
|
background: var(--ui-disabled-surface);
|
|
8877
8924
|
}
|
|
8878
|
-
[data-component~="ui-tree-item"][data-dragging]:not([data-move-source]) .row[data-v-
|
|
8925
|
+
[data-component~="ui-tree-item"][data-dragging]:not([data-move-source]) .row[data-v-f2ec0a81] {
|
|
8879
8926
|
opacity: 0.42;
|
|
8880
8927
|
}
|
|
8881
|
-
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-
|
|
8882
|
-
[data-component~="ui-tree-item"][data-move-source] > .row > .leading[data-v-
|
|
8928
|
+
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-f2ec0a81],
|
|
8929
|
+
[data-component~="ui-tree-item"][data-move-source] > .row > .leading[data-v-f2ec0a81] {
|
|
8883
8930
|
opacity: 0.42;
|
|
8884
8931
|
}
|
|
8885
|
-
[data-component~="ui-tree-item"][data-v-
|
|
8932
|
+
[data-component~="ui-tree-item"][data-v-f2ec0a81]:focus {
|
|
8886
8933
|
outline: none;
|
|
8887
8934
|
}
|
|
8888
|
-
[data-component~="ui-tree-item"]:focus-visible .row[data-v-
|
|
8935
|
+
[data-component~="ui-tree-item"]:focus-visible .row[data-v-f2ec0a81] {
|
|
8889
8936
|
box-shadow: 0 0 0 var(--ui-focus-width) var(--ui-focus-ring);
|
|
8890
8937
|
}
|
|
8891
8938
|
|
|
8892
8939
|
/* Child combinators: drop feedback belongs to this item's own row, not the rows nested in it. */
|
|
8893
|
-
[data-component~="ui-tree-item"][data-drop-position="inside"] > .row[data-v-
|
|
8940
|
+
[data-component~="ui-tree-item"][data-drop-position="inside"] > .row[data-v-f2ec0a81] {
|
|
8894
8941
|
background: var(--ui-accent-subtle);
|
|
8895
8942
|
box-shadow: inset 0 0 0 var(--ui-accent-line-width)
|
|
8896
8943
|
var(--_ui-tree-drop-color, var(--ui-accent-solid));
|
|
8897
8944
|
}
|
|
8898
|
-
.disclosure[data-v-
|
|
8899
|
-
.disclosure-spacer[data-v-
|
|
8945
|
+
.disclosure[data-v-f2ec0a81],
|
|
8946
|
+
.disclosure-spacer[data-v-f2ec0a81] {
|
|
8900
8947
|
grid-column: 1;
|
|
8901
8948
|
grid-row: 1;
|
|
8902
8949
|
inline-size: var(--_tree-disclosure-size);
|
|
8903
8950
|
block-size: 28px;
|
|
8904
8951
|
}
|
|
8905
|
-
.disclosure[data-v-
|
|
8952
|
+
.disclosure[data-v-f2ec0a81] {
|
|
8906
8953
|
display: grid;
|
|
8907
8954
|
/* Start-aligned: the chevron's ink, not its hit area, aligns with the content above it. */
|
|
8908
8955
|
place-items: center start;
|
|
@@ -8913,10 +8960,10 @@ to {
|
|
|
8913
8960
|
border-radius: var(--ui-radius-sm);
|
|
8914
8961
|
cursor: pointer;
|
|
8915
8962
|
}
|
|
8916
|
-
.disclosure[hidden][data-v-
|
|
8963
|
+
.disclosure[hidden][data-v-f2ec0a81] {
|
|
8917
8964
|
display: none;
|
|
8918
8965
|
}
|
|
8919
|
-
.selection-hit[data-v-
|
|
8966
|
+
.selection-hit[data-v-f2ec0a81] {
|
|
8920
8967
|
display: none;
|
|
8921
8968
|
grid-column: 2;
|
|
8922
8969
|
grid-row: 1;
|
|
@@ -8925,29 +8972,29 @@ to {
|
|
|
8925
8972
|
block-size: var(--_ui-tree-item-min-block-size, var(--_tree-row-min-height));
|
|
8926
8973
|
cursor: pointer;
|
|
8927
8974
|
}
|
|
8928
|
-
.selection-checkbox[data-v-
|
|
8975
|
+
.selection-checkbox[data-v-f2ec0a81] {
|
|
8929
8976
|
inline-size: 1rem;
|
|
8930
8977
|
block-size: 1rem;
|
|
8931
8978
|
margin: 0;
|
|
8932
8979
|
accent-color: var(--ui-accent-solid);
|
|
8933
8980
|
}
|
|
8934
|
-
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row[data-v-
|
|
8981
|
+
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row[data-v-f2ec0a81] {
|
|
8935
8982
|
grid-template-columns: var(--_tree-disclosure-size) 1.25rem auto minmax(0, 1fr);
|
|
8936
8983
|
}
|
|
8937
|
-
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row > .selection-hit[data-v-
|
|
8984
|
+
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row > .selection-hit[data-v-f2ec0a81] {
|
|
8938
8985
|
display: grid;
|
|
8939
8986
|
}
|
|
8940
|
-
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row > .leading[data-v-
|
|
8987
|
+
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row > .leading[data-v-f2ec0a81] {
|
|
8941
8988
|
grid-column: 3;
|
|
8942
8989
|
}
|
|
8943
|
-
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row > .label[data-v-
|
|
8990
|
+
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row > .label[data-v-f2ec0a81] {
|
|
8944
8991
|
grid-column: 4;
|
|
8945
8992
|
}
|
|
8946
|
-
.disclosure[data-v-
|
|
8993
|
+
.disclosure[data-v-f2ec0a81]:hover {
|
|
8947
8994
|
color: var(--ui-text-primary);
|
|
8948
8995
|
background: var(--ui-surface-elevated);
|
|
8949
8996
|
}
|
|
8950
|
-
.disclosure-icon[data-v-
|
|
8997
|
+
.disclosure-icon[data-v-f2ec0a81] {
|
|
8951
8998
|
display: grid;
|
|
8952
8999
|
place-items: center;
|
|
8953
9000
|
inline-size: 12px;
|
|
@@ -8955,7 +9002,7 @@ to {
|
|
|
8955
9002
|
transform: rotate(-90deg);
|
|
8956
9003
|
transition: transform var(--ui-motion-fast) var(--ui-motion-ease);
|
|
8957
9004
|
}
|
|
8958
|
-
.disclosure-icon[data-v-
|
|
9005
|
+
.disclosure-icon[data-v-f2ec0a81]::before {
|
|
8959
9006
|
display: block;
|
|
8960
9007
|
inline-size: 0.375rem;
|
|
8961
9008
|
block-size: 0.375rem;
|
|
@@ -8965,19 +9012,19 @@ to {
|
|
|
8965
9012
|
/* A chevron's ink sits below its box centre; lift it so it centres optically (in either rotation). */
|
|
8966
9013
|
transform: translateY(-20%) rotate(45deg);
|
|
8967
9014
|
}
|
|
8968
|
-
[data-component~="ui-tree-item"][aria-expanded="true"] .disclosure-icon[data-v-
|
|
9015
|
+
[data-component~="ui-tree-item"][aria-expanded="true"] > .row > .disclosure > .disclosure-icon[data-v-f2ec0a81] {
|
|
8969
9016
|
transform: rotate(0deg);
|
|
8970
9017
|
}
|
|
8971
9018
|
|
|
8972
9019
|
/* Lucide grip-vertical, filling the handle as in Looma 0.2. */
|
|
8973
|
-
.drag-handle svg[data-v-
|
|
9020
|
+
.drag-handle svg[data-v-f2ec0a81] {
|
|
8974
9021
|
display: block;
|
|
8975
9022
|
inline-size: 100%;
|
|
8976
9023
|
block-size: 100%;
|
|
8977
9024
|
}
|
|
8978
9025
|
|
|
8979
9026
|
/* Slotted content is outside this scope, so :has() cannot see it; hide only a truly empty slot. */
|
|
8980
|
-
.leading[data-v-
|
|
9027
|
+
.leading[data-v-f2ec0a81] {
|
|
8981
9028
|
display: inline-grid;
|
|
8982
9029
|
place-items: center;
|
|
8983
9030
|
grid-column: 2;
|
|
@@ -8990,12 +9037,12 @@ to {
|
|
|
8990
9037
|
position: relative;
|
|
8991
9038
|
z-index: 1;
|
|
8992
9039
|
}
|
|
8993
|
-
.leading[data-v-
|
|
9040
|
+
.leading[data-v-f2ec0a81]:empty {
|
|
8994
9041
|
display: none;
|
|
8995
9042
|
}
|
|
8996
9043
|
|
|
8997
9044
|
/* Icons match the label's size (as in Knit's tree): an unsized SVG would otherwise render 300×150. */
|
|
8998
|
-
svg[data-v-
|
|
9045
|
+
svg[data-v-f2ec0a81-s],img[data-v-f2ec0a81-s] {
|
|
8999
9046
|
display: block;
|
|
9000
9047
|
inline-size: 1em;
|
|
9001
9048
|
block-size: 1em;
|
|
@@ -9004,7 +9051,7 @@ svg[data-v-4981f1b6-s],img[data-v-4981f1b6-s] {
|
|
|
9004
9051
|
|
|
9005
9052
|
/* The label spans the row's height and centres its content, so slotted content (a link) can
|
|
9006
9053
|
stretch to fill the row as its own hit area; the padding tokens remove the inset. */
|
|
9007
|
-
.label[data-v-
|
|
9054
|
+
.label[data-v-f2ec0a81] {
|
|
9008
9055
|
grid-column: 3;
|
|
9009
9056
|
grid-row: 1;
|
|
9010
9057
|
align-self: stretch;
|
|
@@ -9022,7 +9069,7 @@ svg[data-v-4981f1b6-s],img[data-v-4981f1b6-s] {
|
|
|
9022
9069
|
|
|
9023
9070
|
/* Slotted label content fills the cell, so a link is the row's hit area rather than sizing to
|
|
9024
9071
|
its own text and reading as overflow. */
|
|
9025
|
-
.label-text[data-v-
|
|
9072
|
+
.label-text[data-v-f2ec0a81] {
|
|
9026
9073
|
display: flex;
|
|
9027
9074
|
align-items: center;
|
|
9028
9075
|
/* Stretches, so slotted content can still be the row's full-height hit area. */
|
|
@@ -9032,16 +9079,16 @@ svg[data-v-4981f1b6-s],img[data-v-4981f1b6-s] {
|
|
|
9032
9079
|
inline-size: 100%;
|
|
9033
9080
|
white-space: nowrap;
|
|
9034
9081
|
}
|
|
9035
|
-
.label-text > [data-v-
|
|
9082
|
+
.label-text > [data-v-f2ec0a81-s] {
|
|
9036
9083
|
flex: 1 1 auto;
|
|
9037
9084
|
min-inline-size: 0;
|
|
9038
9085
|
}
|
|
9039
9086
|
|
|
9040
9087
|
/* The controls sit over the label's end, so the text fades out where they begin. The fade is
|
|
9041
9088
|
the truncation mark while it shows: an ellipsis under it would read as a second one. */
|
|
9042
|
-
.row:hover > .label[data-v-
|
|
9043
|
-
.row:focus-within > .label[data-v-
|
|
9044
|
-
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-
|
|
9089
|
+
.row:hover > .label[data-v-f2ec0a81],
|
|
9090
|
+
.row:focus-within > .label[data-v-f2ec0a81],
|
|
9091
|
+
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-f2ec0a81] {
|
|
9045
9092
|
text-overflow: clip;
|
|
9046
9093
|
mask-image: linear-gradient(
|
|
9047
9094
|
to right,
|
|
@@ -9049,9 +9096,9 @@ svg[data-v-4981f1b6-s],img[data-v-4981f1b6-s] {
|
|
|
9049
9096
|
transparent calc(100% - var(--_tree-actions-width, 1.75rem))
|
|
9050
9097
|
);
|
|
9051
9098
|
}
|
|
9052
|
-
.row:hover > .label[data-v-
|
|
9053
|
-
.row:focus-within > .label[data-v-
|
|
9054
|
-
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-
|
|
9099
|
+
.row:hover > .label[data-v-f2ec0a81]:dir(rtl),
|
|
9100
|
+
.row:focus-within > .label[data-v-f2ec0a81]:dir(rtl),
|
|
9101
|
+
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-f2ec0a81]:dir(rtl) {
|
|
9055
9102
|
mask-image: linear-gradient(
|
|
9056
9103
|
to left,
|
|
9057
9104
|
#000 calc(100% - var(--_tree-actions-width, 1.75rem) - var(--ui-space-1)),
|
|
@@ -9063,10 +9110,10 @@ svg[data-v-4981f1b6-s],img[data-v-4981f1b6-s] {
|
|
|
9063
9110
|
there, and starts again. Only when it actually overflows — the controller measures by how
|
|
9064
9111
|
much — after the controls have taken their place over its end — and hands over the distance
|
|
9065
9112
|
and a duration from it, so every name moves at the same speed. */
|
|
9066
|
-
.row[data-ui-marquee] > .label > .label-text[data-v-
|
|
9113
|
+
.row[data-ui-marquee] > .label > .label-text[data-v-f2ec0a81] {
|
|
9067
9114
|
/* Once per pass: the controller restarts it after a rest at the end, so the name holds still
|
|
9068
9115
|
long enough to read rather than sliding back and forth. */
|
|
9069
|
-
animation: ui-tree-item-marquee-
|
|
9116
|
+
animation: ui-tree-item-marquee-f2ec0a81 var(--_marquee-duration) linear 0.5s 1 normal forwards;
|
|
9070
9117
|
will-change: transform;
|
|
9071
9118
|
}
|
|
9072
9119
|
|
|
@@ -9074,7 +9121,7 @@ svg[data-v-4981f1b6-s],img[data-v-4981f1b6-s] {
|
|
|
9074
9121
|
slides, the label reaches back under the icon (the controller measures how far) with its text
|
|
9075
9122
|
where it was, and fades out across the gap before the icon, fully gone where the icon begins
|
|
9076
9123
|
to cover it: the name slips under the icon rather than stopping at a hard edge beside it. */
|
|
9077
|
-
.row[data-ui-marquee] > .label[data-v-
|
|
9124
|
+
.row[data-ui-marquee] > .label[data-v-f2ec0a81] {
|
|
9078
9125
|
margin-inline-start: calc(-1 * var(--_marquee-lead, 0px));
|
|
9079
9126
|
padding-inline-start: calc(
|
|
9080
9127
|
var(--_marquee-lead, 0px) + var(--_ui-tree-item-label-padding-inline, var(--ui-space-2))
|
|
@@ -9089,7 +9136,7 @@ svg[data-v-4981f1b6-s],img[data-v-4981f1b6-s] {
|
|
|
9089
9136
|
transparent calc(100% - var(--_tree-actions-width, 1.75rem))
|
|
9090
9137
|
);
|
|
9091
9138
|
}
|
|
9092
|
-
.row[data-ui-marquee] > .label[data-v-
|
|
9139
|
+
.row[data-ui-marquee] > .label[data-v-f2ec0a81]:dir(rtl) {
|
|
9093
9140
|
mask-image: linear-gradient(
|
|
9094
9141
|
to left,
|
|
9095
9142
|
transparent var(--_marquee-icon-width, 0px),
|
|
@@ -9100,7 +9147,7 @@ svg[data-v-4981f1b6-s],img[data-v-4981f1b6-s] {
|
|
|
9100
9147
|
transparent calc(100% - var(--_tree-actions-width, 1.75rem))
|
|
9101
9148
|
);
|
|
9102
9149
|
}
|
|
9103
|
-
@keyframes ui-tree-item-marquee-
|
|
9150
|
+
@keyframes ui-tree-item-marquee-f2ec0a81 {
|
|
9104
9151
|
from {
|
|
9105
9152
|
transform: translateX(0);
|
|
9106
9153
|
}
|
|
@@ -9111,15 +9158,15 @@ to {
|
|
|
9111
9158
|
|
|
9112
9159
|
/* Reduced motion keeps the fade, which already says the name continues. */
|
|
9113
9160
|
@media (prefers-reduced-motion: reduce) {
|
|
9114
|
-
.row[data-ui-marquee] > .label > .label-text[data-v-
|
|
9161
|
+
.row[data-ui-marquee] > .label > .label-text[data-v-f2ec0a81] {
|
|
9115
9162
|
animation: none;
|
|
9116
9163
|
}
|
|
9117
9164
|
}
|
|
9118
|
-
.row:hover > .label > [data-v-
|
|
9119
|
-
.row:focus-within > .label > [data-v-
|
|
9165
|
+
.row:hover > .label > [data-v-f2ec0a81-s],
|
|
9166
|
+
.row:focus-within > .label > [data-v-f2ec0a81-s] {
|
|
9120
9167
|
text-overflow: clip;
|
|
9121
9168
|
}
|
|
9122
|
-
.actions[data-v-
|
|
9169
|
+
.actions[data-v-f2ec0a81] {
|
|
9123
9170
|
position: absolute;
|
|
9124
9171
|
z-index: 1;
|
|
9125
9172
|
inset-block: 0;
|
|
@@ -9131,19 +9178,19 @@ to {
|
|
|
9131
9178
|
pointer-events: none;
|
|
9132
9179
|
transition: opacity var(--ui-motion-fast) var(--ui-motion-ease);
|
|
9133
9180
|
}
|
|
9134
|
-
.row:hover > .actions[data-v-
|
|
9135
|
-
.row:focus-within > .actions[data-v-
|
|
9136
|
-
[data-component~="ui-tree-item"][data-move-source] > .row > .actions[data-v-
|
|
9181
|
+
.row:hover > .actions[data-v-f2ec0a81],
|
|
9182
|
+
.row:focus-within > .actions[data-v-f2ec0a81],
|
|
9183
|
+
[data-component~="ui-tree-item"][data-move-source] > .row > .actions[data-v-f2ec0a81] {
|
|
9137
9184
|
opacity: 1;
|
|
9138
9185
|
pointer-events: auto;
|
|
9139
9186
|
}
|
|
9140
9187
|
|
|
9141
9188
|
/* Without hover there is no reveal, so the controls keep their own column. */
|
|
9142
9189
|
@media (hover: none), (pointer: coarse) {
|
|
9143
|
-
.row[data-v-
|
|
9190
|
+
.row[data-v-f2ec0a81] {
|
|
9144
9191
|
grid-template-columns: var(--_tree-disclosure-size) auto minmax(0, 1fr) auto;
|
|
9145
9192
|
}
|
|
9146
|
-
.actions[data-v-
|
|
9193
|
+
.actions[data-v-f2ec0a81] {
|
|
9147
9194
|
position: static;
|
|
9148
9195
|
grid-column: 4;
|
|
9149
9196
|
grid-row: 1;
|
|
@@ -9152,13 +9199,13 @@ to {
|
|
|
9152
9199
|
opacity: 1;
|
|
9153
9200
|
pointer-events: auto;
|
|
9154
9201
|
}
|
|
9155
|
-
.row:is(:hover, :focus-within) > .label[data-v-
|
|
9156
|
-
.row:is(:hover, :focus-within) > .label[data-v-
|
|
9157
|
-
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-
|
|
9158
|
-
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-
|
|
9202
|
+
.row:is(:hover, :focus-within) > .label[data-v-f2ec0a81],
|
|
9203
|
+
.row:is(:hover, :focus-within) > .label[data-v-f2ec0a81]:dir(rtl),
|
|
9204
|
+
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-f2ec0a81],
|
|
9205
|
+
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-f2ec0a81]:dir(rtl) {
|
|
9159
9206
|
mask-image: none;
|
|
9160
9207
|
}
|
|
9161
|
-
.row[data-ui-marquee] > .label[data-v-
|
|
9208
|
+
.row[data-ui-marquee] > .label[data-v-f2ec0a81] {
|
|
9162
9209
|
mask-image: linear-gradient(
|
|
9163
9210
|
to right,
|
|
9164
9211
|
transparent var(--_marquee-icon-width, 0px),
|
|
@@ -9167,7 +9214,7 @@ to {
|
|
|
9167
9214
|
)
|
|
9168
9215
|
);
|
|
9169
9216
|
}
|
|
9170
|
-
.row[data-ui-marquee] > .label[data-v-
|
|
9217
|
+
.row[data-ui-marquee] > .label[data-v-f2ec0a81]:dir(rtl) {
|
|
9171
9218
|
mask-image: linear-gradient(
|
|
9172
9219
|
to left,
|
|
9173
9220
|
transparent var(--_marquee-icon-width, 0px),
|
|
@@ -9176,10 +9223,10 @@ to {
|
|
|
9176
9223
|
)
|
|
9177
9224
|
);
|
|
9178
9225
|
}
|
|
9179
|
-
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row[data-v-
|
|
9226
|
+
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row[data-v-f2ec0a81] {
|
|
9180
9227
|
grid-template-columns: var(--_tree-disclosure-size) 1.25rem auto minmax(0, 1fr) auto;
|
|
9181
9228
|
}
|
|
9182
|
-
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row > .actions[data-v-
|
|
9229
|
+
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row > .actions[data-v-f2ec0a81] {
|
|
9183
9230
|
grid-column: 5;
|
|
9184
9231
|
}
|
|
9185
9232
|
}
|
|
@@ -9188,7 +9235,7 @@ to {
|
|
|
9188
9235
|
empty column, right before the icon; a branch's disclosure is there, so its handle sits just
|
|
9189
9236
|
outside the row. It is bare until pointed at: a resting surface behind it read as a faint
|
|
9190
9237
|
patch rather than as a control. */
|
|
9191
|
-
.drag-handle[data-v-
|
|
9238
|
+
.drag-handle[data-v-f2ec0a81] {
|
|
9192
9239
|
position: absolute;
|
|
9193
9240
|
z-index: 2;
|
|
9194
9241
|
inset-block-start: 50%;
|
|
@@ -9209,24 +9256,24 @@ to {
|
|
|
9209
9256
|
transform: translateY(-50%);
|
|
9210
9257
|
transition: opacity var(--ui-motion-fast) var(--ui-motion-ease);
|
|
9211
9258
|
}
|
|
9212
|
-
.row:hover .drag-handle[data-v-
|
|
9213
|
-
.drag-handle[data-v-
|
|
9214
|
-
.drag-handle[data-v-
|
|
9215
|
-
[data-component~="ui-tree-item"][data-dragging] > .row > .drag-handle[data-v-
|
|
9259
|
+
.row:hover .drag-handle[data-v-f2ec0a81],
|
|
9260
|
+
.drag-handle[data-v-f2ec0a81]:hover,
|
|
9261
|
+
.drag-handle[data-v-f2ec0a81]:focus-visible,
|
|
9262
|
+
[data-component~="ui-tree-item"][data-dragging] > .row > .drag-handle[data-v-f2ec0a81] {
|
|
9216
9263
|
opacity: 1;
|
|
9217
9264
|
}
|
|
9218
|
-
[data-component~="ui-tree-item"][data-ui-tree-item-state~="isContainer"] > .row > .drag-handle[data-v-
|
|
9265
|
+
[data-component~="ui-tree-item"][data-ui-tree-item-state~="isContainer"] > .row > .drag-handle[data-v-f2ec0a81] {
|
|
9219
9266
|
inset-inline-start: calc(-1 * var(--_tree-disclosure-size) - 2px);
|
|
9220
9267
|
}
|
|
9221
|
-
.drag-handle[data-v-
|
|
9222
|
-
.drag-handle[data-v-
|
|
9268
|
+
.drag-handle[data-v-f2ec0a81]:hover,
|
|
9269
|
+
.drag-handle[data-v-f2ec0a81]:focus-visible {
|
|
9223
9270
|
color: var(--ui-text-primary);
|
|
9224
9271
|
background: var(--ui-surface-hover);
|
|
9225
9272
|
}
|
|
9226
|
-
.drag-handle[data-v-
|
|
9273
|
+
.drag-handle[data-v-f2ec0a81]:active {
|
|
9227
9274
|
cursor: grabbing;
|
|
9228
9275
|
}
|
|
9229
|
-
.drop-indicator[data-v-
|
|
9276
|
+
.drop-indicator[data-v-f2ec0a81] {
|
|
9230
9277
|
position: absolute;
|
|
9231
9278
|
z-index: 3;
|
|
9232
9279
|
inset-inline: 1px;
|
|
@@ -9236,8 +9283,8 @@ to {
|
|
|
9236
9283
|
background: var(--_ui-tree-drop-color, var(--ui-accent-solid));
|
|
9237
9284
|
pointer-events: none;
|
|
9238
9285
|
}
|
|
9239
|
-
.drop-indicator[data-v-
|
|
9240
|
-
.drop-indicator[data-v-
|
|
9286
|
+
.drop-indicator[data-v-f2ec0a81]::before,
|
|
9287
|
+
.drop-indicator[data-v-f2ec0a81]::after {
|
|
9241
9288
|
content: "";
|
|
9242
9289
|
position: absolute;
|
|
9243
9290
|
inset-block-start: 50%;
|
|
@@ -9248,34 +9295,34 @@ to {
|
|
|
9248
9295
|
background: var(--ui-surface-elevated);
|
|
9249
9296
|
transform: translateY(-50%);
|
|
9250
9297
|
}
|
|
9251
|
-
.drop-indicator[data-v-
|
|
9298
|
+
.drop-indicator[data-v-f2ec0a81]::before {
|
|
9252
9299
|
inset-inline-start: -1px;
|
|
9253
9300
|
}
|
|
9254
|
-
.drop-indicator[data-v-
|
|
9301
|
+
.drop-indicator[data-v-f2ec0a81]::after {
|
|
9255
9302
|
inset-inline-end: -1px;
|
|
9256
9303
|
}
|
|
9257
|
-
[data-component~="ui-tree-item"][data-drop-position="before"] > .row > .row-drop-indicator[data-v-
|
|
9304
|
+
[data-component~="ui-tree-item"][data-drop-position="before"] > .row > .row-drop-indicator[data-v-f2ec0a81] {
|
|
9258
9305
|
display: block;
|
|
9259
9306
|
inset-block-start: calc(-0.5 * var(--ui-accent-line-width));
|
|
9260
9307
|
}
|
|
9261
|
-
[data-component~="ui-tree-item"][data-drop-position="after"] > .subtree-drop-indicator[data-v-
|
|
9308
|
+
[data-component~="ui-tree-item"][data-drop-position="after"] > .subtree-drop-indicator[data-v-f2ec0a81] {
|
|
9262
9309
|
display: block;
|
|
9263
9310
|
inset-block-end: calc(-0.5 * var(--ui-accent-line-width));
|
|
9264
9311
|
}
|
|
9265
|
-
.children[hidden][data-v-
|
|
9312
|
+
.children[hidden][data-v-f2ec0a81] {
|
|
9266
9313
|
display: none;
|
|
9267
9314
|
}
|
|
9268
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"][data-v-
|
|
9315
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"][data-v-f2ec0a81] {
|
|
9269
9316
|
--_tree-row-min-height: 44px;
|
|
9270
9317
|
}
|
|
9271
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .row[data-v-
|
|
9318
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .row[data-v-f2ec0a81] {
|
|
9272
9319
|
grid-template-columns: 44px var(--_tree-disclosure-size) auto minmax(0, 1fr);
|
|
9273
9320
|
}
|
|
9274
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .drag-handle[data-v-
|
|
9321
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .drag-handle[data-v-f2ec0a81],
|
|
9275
9322
|
html[data-ui-input-modality="touch"]
|
|
9276
9323
|
[data-component~="ui-tree-item"][data-ui-tree-item-state~="isContainer"]
|
|
9277
9324
|
> .row
|
|
9278
|
-
> .drag-handle[data-v-
|
|
9325
|
+
> .drag-handle[data-v-f2ec0a81] {
|
|
9279
9326
|
position: relative;
|
|
9280
9327
|
grid-column: 1;
|
|
9281
9328
|
grid-row: 1;
|
|
@@ -9287,24 +9334,24 @@ html[data-ui-input-modality="touch"]
|
|
|
9287
9334
|
transform: none;
|
|
9288
9335
|
cursor: pointer;
|
|
9289
9336
|
}
|
|
9290
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .disclosure[data-v-
|
|
9337
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .disclosure[data-v-f2ec0a81] {
|
|
9291
9338
|
grid-column: 2;
|
|
9292
9339
|
}
|
|
9293
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .leading[data-v-
|
|
9340
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .leading[data-v-f2ec0a81] {
|
|
9294
9341
|
grid-column: 3;
|
|
9295
9342
|
}
|
|
9296
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .label[data-v-
|
|
9343
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .label[data-v-f2ec0a81] {
|
|
9297
9344
|
grid-column: 4;
|
|
9298
9345
|
}
|
|
9299
9346
|
html[data-ui-input-modality="touch"]
|
|
9300
9347
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9301
|
-
> .row[data-v-
|
|
9348
|
+
> .row[data-v-f2ec0a81] {
|
|
9302
9349
|
grid-template-columns: 44px var(--_tree-disclosure-size) 44px auto minmax(0, 1fr);
|
|
9303
9350
|
}
|
|
9304
9351
|
html[data-ui-input-modality="touch"]
|
|
9305
9352
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9306
9353
|
> .row
|
|
9307
|
-
> .selection-hit[data-v-
|
|
9354
|
+
> .selection-hit[data-v-f2ec0a81] {
|
|
9308
9355
|
grid-column: 3;
|
|
9309
9356
|
inline-size: 44px;
|
|
9310
9357
|
block-size: 44px;
|
|
@@ -9312,55 +9359,55 @@ html[data-ui-input-modality="touch"]
|
|
|
9312
9359
|
html[data-ui-input-modality="touch"]
|
|
9313
9360
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9314
9361
|
> .row
|
|
9315
|
-
> .leading[data-v-
|
|
9362
|
+
> .leading[data-v-f2ec0a81] {
|
|
9316
9363
|
grid-column: 4;
|
|
9317
9364
|
}
|
|
9318
9365
|
html[data-ui-input-modality="touch"]
|
|
9319
9366
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9320
9367
|
> .row
|
|
9321
|
-
> .label[data-v-
|
|
9368
|
+
> .label[data-v-f2ec0a81] {
|
|
9322
9369
|
grid-column: 5;
|
|
9323
9370
|
}
|
|
9324
9371
|
@media (hover: none), (pointer: coarse) {
|
|
9325
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .row[data-v-
|
|
9372
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .row[data-v-f2ec0a81] {
|
|
9326
9373
|
grid-template-columns: 44px var(--_tree-disclosure-size) auto minmax(0, 1fr) auto;
|
|
9327
9374
|
}
|
|
9328
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .actions[data-v-
|
|
9375
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .actions[data-v-f2ec0a81] {
|
|
9329
9376
|
grid-column: 5;
|
|
9330
9377
|
}
|
|
9331
9378
|
html[data-ui-input-modality="touch"]
|
|
9332
9379
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9333
|
-
> .row[data-v-
|
|
9380
|
+
> .row[data-v-f2ec0a81] {
|
|
9334
9381
|
grid-template-columns: 44px var(--_tree-disclosure-size) 44px auto minmax(0, 1fr) auto;
|
|
9335
9382
|
}
|
|
9336
9383
|
html[data-ui-input-modality="touch"]
|
|
9337
9384
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9338
9385
|
> .row
|
|
9339
|
-
> .actions[data-v-
|
|
9386
|
+
> .actions[data-v-f2ec0a81] {
|
|
9340
9387
|
grid-column: 6;
|
|
9341
9388
|
}
|
|
9342
9389
|
}
|
|
9343
9390
|
@media (prefers-reduced-motion: reduce) {
|
|
9344
|
-
.row[data-v-
|
|
9345
|
-
.disclosure-icon[data-v-
|
|
9346
|
-
.drag-handle[data-v-
|
|
9391
|
+
.row[data-v-f2ec0a81],
|
|
9392
|
+
.disclosure-icon[data-v-f2ec0a81],
|
|
9393
|
+
.drag-handle[data-v-f2ec0a81] {
|
|
9347
9394
|
transition: none;
|
|
9348
9395
|
}
|
|
9349
9396
|
}
|
|
9350
9397
|
@media (forced-colors: active) {
|
|
9351
|
-
[data-component~="ui-tree-item"]:focus-visible > .row[data-v-
|
|
9398
|
+
[data-component~="ui-tree-item"]:focus-visible > .row[data-v-f2ec0a81] {
|
|
9352
9399
|
outline: var(--ui-focus-width) solid Highlight;
|
|
9353
9400
|
outline-offset: calc(-1 * var(--ui-focus-width));
|
|
9354
9401
|
}
|
|
9355
9402
|
[data-component~="ui-tree-item"][data-ui-tree-item-state~="selected"]:not(:focus-visible):not([aria-disabled="true"])
|
|
9356
|
-
> .row[data-v-
|
|
9403
|
+
> .row[data-v-f2ec0a81] {
|
|
9357
9404
|
outline: var(--ui-border-width) solid Highlight;
|
|
9358
9405
|
outline-offset: calc(-1 * var(--ui-border-width));
|
|
9359
9406
|
}
|
|
9360
9407
|
}
|
|
9361
9408
|
|
|
9362
9409
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
9363
|
-
[data-component~="ui-tree-item"][hidden][data-v-
|
|
9410
|
+
[data-component~="ui-tree-item"][hidden][data-v-f2ec0a81] {
|
|
9364
9411
|
display: none;
|
|
9365
9412
|
}
|
|
9366
9413
|
/**
|