@threadlabs/looma 0.25.5 → 0.25.7
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-checkbox/ui-checkbox.html +2 -0
- package/components/ui-cluster/ui-cluster.html +5 -2
- package/components/ui-list-item/ui-list-item.html +12 -3
- package/components/ui-tree-item/ui-tree-item.html +14 -0
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/styles/ui-cluster.css +3 -0
- package/styles/ui-list-item.css +11 -3
- package/styles/ui-tree-item.css +13 -0
- package/vanilla/UiCheckbox.d.ts +1 -0
- package/vanilla/UiCheckbox.js +18 -15
- package/vanilla/UiCluster.d.ts +1 -1
- package/vanilla/UiCluster.js +1 -1
- package/vanilla/UiListItem.d.ts +1 -0
- package/vanilla/UiListItem.js +4 -2
- package/vanilla/UiTreeItem.d.ts +1 -0
- package/vanilla/UiTreeItem.js +1 -1
- package/vue/UiCheckbox.d.ts +9 -0
- package/vue/UiCheckbox.vue +20 -0
- package/vue/UiCluster.d.ts +3 -3
- package/vue/UiCluster.vue +7 -4
- package/vue/UiListItem.d.ts +9 -0
- package/vue/UiListItem.vue +35 -4
- package/vue/UiTreeItem.d.ts +9 -0
- package/vue/UiTreeItem.vue +35 -0
- package/vue/chunks/UiCheckbox.js +25 -1
- package/vue/chunks/UiCluster.js +4 -3
- package/vue/chunks/UiListItem.js +23 -1
- package/vue/chunks/UiTreeItem.js +24 -1
- package/vue/components.css +204 -180
package/vue/components.css
CHANGED
|
@@ -1417,7 +1417,7 @@ html[data-ui-input-modality="touch"]
|
|
|
1417
1417
|
syntax: "*";
|
|
1418
1418
|
inherits: false;
|
|
1419
1419
|
}
|
|
1420
|
-
[data-component~="ui-checkbox"][data-v-
|
|
1420
|
+
[data-component~="ui-checkbox"][data-v-3bebca63] {
|
|
1421
1421
|
/* Hooks do not inherit, so the parts below read them from the root. */
|
|
1422
1422
|
--_ui-checkbox-size: var(--ui-checkbox-size);
|
|
1423
1423
|
--_ui-checkbox-invalid-border: var(
|
|
@@ -1434,25 +1434,25 @@ html[data-ui-input-modality="touch"]
|
|
|
1434
1434
|
}
|
|
1435
1435
|
|
|
1436
1436
|
/* The label, and under it an optional line saying what the choice means. */
|
|
1437
|
-
.text[data-v-
|
|
1437
|
+
.text[data-v-3bebca63] {
|
|
1438
1438
|
display: flex;
|
|
1439
1439
|
flex-direction: column;
|
|
1440
1440
|
gap: var(--ui-space-1);
|
|
1441
1441
|
min-inline-size: 0;
|
|
1442
1442
|
}
|
|
1443
|
-
.label[data-v-
|
|
1443
|
+
.label[data-v-3bebca63] {
|
|
1444
1444
|
min-inline-size: 0;
|
|
1445
1445
|
line-height: var(--ui-line-height-md);
|
|
1446
1446
|
}
|
|
1447
|
-
.description[data-v-
|
|
1447
|
+
.description[data-v-3bebca63] {
|
|
1448
1448
|
color: var(--ui-text-secondary);
|
|
1449
1449
|
font-size: var(--ui-font-size-sm);
|
|
1450
1450
|
line-height: var(--ui-line-height);
|
|
1451
1451
|
}
|
|
1452
|
-
.description[data-v-
|
|
1452
|
+
.description[data-v-3bebca63]:empty {
|
|
1453
1453
|
display: none;
|
|
1454
1454
|
}
|
|
1455
|
-
input[data-v-
|
|
1455
|
+
input[data-v-3bebca63] {
|
|
1456
1456
|
appearance: none;
|
|
1457
1457
|
-webkit-appearance: none;
|
|
1458
1458
|
position: relative;
|
|
@@ -1470,21 +1470,21 @@ input[data-v-ce204e6e] {
|
|
|
1470
1470
|
border-color var(--ui-motion-fast) var(--ui-motion-ease),
|
|
1471
1471
|
box-shadow var(--ui-motion-fast) var(--ui-motion-ease);
|
|
1472
1472
|
}
|
|
1473
|
-
input[data-v-
|
|
1473
|
+
input[data-v-3bebca63]::after {
|
|
1474
1474
|
content: "";
|
|
1475
1475
|
position: absolute;
|
|
1476
1476
|
opacity: 0;
|
|
1477
1477
|
transition: opacity 120ms var(--ui-motion-ease);
|
|
1478
1478
|
}
|
|
1479
|
-
input[data-v-
|
|
1480
|
-
input[data-v-
|
|
1479
|
+
input[data-v-3bebca63]:checked,
|
|
1480
|
+
input[data-v-3bebca63]:indeterminate {
|
|
1481
1481
|
border-color: var(--ui-accent-solid);
|
|
1482
1482
|
background: var(--ui-accent-solid);
|
|
1483
1483
|
box-shadow: var(--ui-control-inset);
|
|
1484
1484
|
}
|
|
1485
1485
|
|
|
1486
1486
|
/* Centre the tick's box and lift it slightly for the rotated check shape. */
|
|
1487
|
-
input[data-v-
|
|
1487
|
+
input[data-v-3bebca63]:checked::after {
|
|
1488
1488
|
inset: 0;
|
|
1489
1489
|
margin: auto;
|
|
1490
1490
|
inline-size: 0.28rem;
|
|
@@ -1496,9 +1496,9 @@ input[data-v-ce204e6e]:checked::after {
|
|
|
1496
1496
|
border-width: 0 0.125rem 0.125rem 0;
|
|
1497
1497
|
opacity: 1;
|
|
1498
1498
|
transform: translateY(-0.09rem) rotate(45deg);
|
|
1499
|
-
animation: ui-checkbox-check-
|
|
1499
|
+
animation: ui-checkbox-check-3bebca63 180ms var(--ui-motion-ease-out, cubic-bezier(0.16, 1, 0.3, 1)) both;
|
|
1500
1500
|
}
|
|
1501
|
-
input[data-v-
|
|
1501
|
+
input[data-v-3bebca63]:indeterminate::after {
|
|
1502
1502
|
inset: 50% 0.23rem auto;
|
|
1503
1503
|
block-size: 0.125rem;
|
|
1504
1504
|
border-radius: var(--ui-radius-round);
|
|
@@ -1506,7 +1506,7 @@ input[data-v-ce204e6e]:indeterminate::after {
|
|
|
1506
1506
|
opacity: 1;
|
|
1507
1507
|
transform: translateY(-50%);
|
|
1508
1508
|
}
|
|
1509
|
-
@keyframes ui-checkbox-check-
|
|
1509
|
+
@keyframes ui-checkbox-check-3bebca63 {
|
|
1510
1510
|
from {
|
|
1511
1511
|
opacity: 0;
|
|
1512
1512
|
transform: translateY(-0.09rem) rotate(45deg) scale(0.55);
|
|
@@ -1521,29 +1521,29 @@ to {
|
|
|
1521
1521
|
}
|
|
1522
1522
|
}
|
|
1523
1523
|
@media (prefers-reduced-motion: reduce) {
|
|
1524
|
-
input[data-v-
|
|
1524
|
+
input[data-v-3bebca63]::after {
|
|
1525
1525
|
transition: none;
|
|
1526
1526
|
animation: none;
|
|
1527
1527
|
}
|
|
1528
1528
|
}
|
|
1529
|
-
input[data-v-
|
|
1529
|
+
input[data-v-3bebca63]:hover:enabled {
|
|
1530
1530
|
border-color: var(--ui-accent-solid);
|
|
1531
1531
|
}
|
|
1532
|
-
input[data-v-
|
|
1532
|
+
input[data-v-3bebca63]:focus-visible {
|
|
1533
1533
|
outline: var(--ui-focus-width) solid var(--ui-focus-ring, var(--ui-accent-solid));
|
|
1534
1534
|
outline-offset: var(--ui-focus-width);
|
|
1535
1535
|
}
|
|
1536
|
-
[data-component~="ui-checkbox"][data-ui-checkbox-state~="invalid"] input[data-v-
|
|
1536
|
+
[data-component~="ui-checkbox"][data-ui-checkbox-state~="invalid"] input[data-v-3bebca63] {
|
|
1537
1537
|
border-color: var(--_ui-checkbox-invalid-border);
|
|
1538
1538
|
}
|
|
1539
|
-
[data-component~="ui-checkbox"][data-ui-checkbox-state~="disabled"][data-v-
|
|
1539
|
+
[data-component~="ui-checkbox"][data-ui-checkbox-state~="disabled"][data-v-3bebca63] {
|
|
1540
1540
|
color: var(--ui-disabled-text);
|
|
1541
1541
|
cursor: not-allowed;
|
|
1542
1542
|
}
|
|
1543
|
-
[data-component~="ui-checkbox"][data-ui-checkbox-state~="disabled"] .description[data-v-
|
|
1543
|
+
[data-component~="ui-checkbox"][data-ui-checkbox-state~="disabled"] .description[data-v-3bebca63] {
|
|
1544
1544
|
color: var(--ui-disabled-text);
|
|
1545
1545
|
}
|
|
1546
|
-
[data-component~="ui-checkbox"][data-ui-checkbox-state~="disabled"] input[data-v-
|
|
1546
|
+
[data-component~="ui-checkbox"][data-ui-checkbox-state~="disabled"] input[data-v-3bebca63] {
|
|
1547
1547
|
border-color: var(--ui-disabled-border);
|
|
1548
1548
|
background: var(--ui-disabled-surface);
|
|
1549
1549
|
box-shadow: none;
|
|
@@ -1553,32 +1553,32 @@ input[data-v-ce204e6e]:focus-visible {
|
|
|
1553
1553
|
/* A sized choice keeps its box and aligns instead: the label takes that size's field type size,
|
|
1554
1554
|
and the first line centres in that control height, so the label shares a row's baseline.
|
|
1555
1555
|
Multi-line labels and descriptions still grow downward from that first line. */
|
|
1556
|
-
[data-component~="ui-checkbox"][data-ui-checkbox-state~="size=sm"][data-v-
|
|
1556
|
+
[data-component~="ui-checkbox"][data-ui-checkbox-state~="size=sm"][data-v-3bebca63] {
|
|
1557
1557
|
--_font: var(--ui-font-size-sm);
|
|
1558
1558
|
--_row: var(--ui-control-size-sm);
|
|
1559
1559
|
}
|
|
1560
|
-
[data-component~="ui-checkbox"][data-ui-checkbox-state~="size=lg"][data-v-
|
|
1560
|
+
[data-component~="ui-checkbox"][data-ui-checkbox-state~="size=lg"][data-v-3bebca63] {
|
|
1561
1561
|
--_font: var(--ui-font-size-md);
|
|
1562
1562
|
--_row: var(--ui-control-size-lg);
|
|
1563
1563
|
}
|
|
1564
|
-
[data-component~="ui-checkbox"][data-ui-checkbox-state~="size=sm"][data-v-
|
|
1565
|
-
[data-component~="ui-checkbox"][data-ui-checkbox-state~="size=lg"][data-v-
|
|
1564
|
+
[data-component~="ui-checkbox"][data-ui-checkbox-state~="size=sm"][data-v-3bebca63],
|
|
1565
|
+
[data-component~="ui-checkbox"][data-ui-checkbox-state~="size=lg"][data-v-3bebca63] {
|
|
1566
1566
|
--_line: calc(var(--_font) * var(--ui-line-height-md));
|
|
1567
1567
|
font-size: var(--_font);
|
|
1568
1568
|
padding-block: calc((var(--_row) - var(--_line)) / 2);
|
|
1569
1569
|
}
|
|
1570
|
-
[data-component~="ui-checkbox"][data-ui-checkbox-state~="size=sm"] input[data-v-
|
|
1571
|
-
[data-component~="ui-checkbox"][data-ui-checkbox-state~="size=lg"] input[data-v-
|
|
1570
|
+
[data-component~="ui-checkbox"][data-ui-checkbox-state~="size=sm"] input[data-v-3bebca63],
|
|
1571
|
+
[data-component~="ui-checkbox"][data-ui-checkbox-state~="size=lg"] input[data-v-3bebca63] {
|
|
1572
1572
|
margin-top: calc((var(--_line) - var(--_ui-checkbox-size, 1.125rem)) / 2);
|
|
1573
1573
|
}
|
|
1574
1574
|
@media (pointer: coarse) {
|
|
1575
|
-
[data-component~="ui-checkbox"][data-ui-checkbox-state~="size=sm"][data-v-
|
|
1575
|
+
[data-component~="ui-checkbox"][data-ui-checkbox-state~="size=sm"][data-v-3bebca63] {
|
|
1576
1576
|
--_row: var(--ui-control-min-block-size);
|
|
1577
1577
|
}
|
|
1578
1578
|
}
|
|
1579
1579
|
|
|
1580
1580
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
1581
|
-
[data-component~="ui-checkbox"][hidden][data-v-
|
|
1581
|
+
[data-component~="ui-checkbox"][hidden][data-v-3bebca63] {
|
|
1582
1582
|
display: none;
|
|
1583
1583
|
}
|
|
1584
1584
|
|
|
@@ -1587,7 +1587,7 @@ input[data-v-ce204e6e]:focus-visible {
|
|
|
1587
1587
|
syntax: "*";
|
|
1588
1588
|
inherits: false;
|
|
1589
1589
|
}
|
|
1590
|
-
[data-component~="ui-cluster"][data-v-
|
|
1590
|
+
[data-component~="ui-cluster"][data-v-acd23e4a] {
|
|
1591
1591
|
--_layout-gap: var(--ui-space-3);
|
|
1592
1592
|
display: flex;
|
|
1593
1593
|
flex-wrap: wrap;
|
|
@@ -1597,69 +1597,72 @@ input[data-v-ce204e6e]:focus-visible {
|
|
|
1597
1597
|
max-inline-size: 100%;
|
|
1598
1598
|
margin: 0;
|
|
1599
1599
|
}
|
|
1600
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="fixed"][data-v-
|
|
1600
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="fixed"][data-v-acd23e4a] {
|
|
1601
1601
|
flex: none;
|
|
1602
1602
|
}
|
|
1603
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="padding=s"][data-v-
|
|
1603
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="padding=s"][data-v-acd23e4a] {
|
|
1604
1604
|
padding: var(--ui-space-2);
|
|
1605
1605
|
}
|
|
1606
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="padding=m"][data-v-
|
|
1606
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="padding=m"][data-v-acd23e4a] {
|
|
1607
1607
|
padding: var(--ui-space-3);
|
|
1608
1608
|
}
|
|
1609
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="padding=l"][data-v-
|
|
1609
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="padding=l"][data-v-acd23e4a] {
|
|
1610
1610
|
padding: var(--ui-space-4);
|
|
1611
1611
|
}
|
|
1612
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="paddingEnd=s"][data-v-
|
|
1612
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="paddingEnd=s"][data-v-acd23e4a] {
|
|
1613
1613
|
padding-inline-end: var(--ui-space-2);
|
|
1614
1614
|
}
|
|
1615
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="paddingEnd=m"][data-v-
|
|
1615
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="paddingEnd=m"][data-v-acd23e4a] {
|
|
1616
1616
|
padding-inline-end: var(--ui-space-3);
|
|
1617
1617
|
}
|
|
1618
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="paddingEnd=l"][data-v-
|
|
1618
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="paddingEnd=l"][data-v-acd23e4a] {
|
|
1619
1619
|
padding-inline-end: var(--ui-space-4);
|
|
1620
1620
|
}
|
|
1621
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="paddingEnd=xl"][data-v-
|
|
1621
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="paddingEnd=xl"][data-v-acd23e4a] {
|
|
1622
1622
|
padding-inline-end: calc(var(--ui-space-4) * 4);
|
|
1623
1623
|
}
|
|
1624
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="gap=xs"][data-v-
|
|
1624
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="gap=xs"][data-v-acd23e4a] {
|
|
1625
1625
|
--_layout-gap: var(--ui-space-2);
|
|
1626
1626
|
}
|
|
1627
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="gap=s"][data-v-
|
|
1627
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="gap=s"][data-v-acd23e4a] {
|
|
1628
1628
|
--_layout-gap: var(--ui-space-3);
|
|
1629
1629
|
}
|
|
1630
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="gap=m"][data-v-
|
|
1630
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="gap=m"][data-v-acd23e4a] {
|
|
1631
1631
|
--_layout-gap: var(--ui-space-4);
|
|
1632
1632
|
}
|
|
1633
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="gap=l"][data-v-
|
|
1633
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="gap=l"][data-v-acd23e4a] {
|
|
1634
1634
|
--_layout-gap: var(--ui-space-5);
|
|
1635
1635
|
}
|
|
1636
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="gap=xl"][data-v-
|
|
1636
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="gap=xl"][data-v-acd23e4a] {
|
|
1637
1637
|
--_layout-gap: var(--ui-space-6);
|
|
1638
1638
|
}
|
|
1639
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="align=start"][data-v-
|
|
1639
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="align=start"][data-v-acd23e4a] {
|
|
1640
1640
|
align-items: flex-start;
|
|
1641
1641
|
}
|
|
1642
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="align=end"][data-v-
|
|
1642
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="align=end"][data-v-acd23e4a] {
|
|
1643
1643
|
align-items: flex-end;
|
|
1644
1644
|
}
|
|
1645
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="align=
|
|
1645
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="align=baseline"][data-v-acd23e4a] {
|
|
1646
|
+
align-items: baseline;
|
|
1647
|
+
}
|
|
1648
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="align=stretch"][data-v-acd23e4a] {
|
|
1646
1649
|
align-items: stretch;
|
|
1647
1650
|
}
|
|
1648
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="justify=center"][data-v-
|
|
1651
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="justify=center"][data-v-acd23e4a] {
|
|
1649
1652
|
justify-content: center;
|
|
1650
1653
|
}
|
|
1651
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="justify=end"][data-v-
|
|
1654
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="justify=end"][data-v-acd23e4a] {
|
|
1652
1655
|
justify-content: flex-end;
|
|
1653
1656
|
}
|
|
1654
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="justify=between"][data-v-
|
|
1657
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="justify=between"][data-v-acd23e4a] {
|
|
1655
1658
|
justify-content: space-between;
|
|
1656
1659
|
}
|
|
1657
|
-
[data-component~="ui-cluster"][data-ui-cluster-state~="wrap=nowrap"][data-v-
|
|
1660
|
+
[data-component~="ui-cluster"][data-ui-cluster-state~="wrap=nowrap"][data-v-acd23e4a] {
|
|
1658
1661
|
flex-wrap: nowrap;
|
|
1659
1662
|
}
|
|
1660
1663
|
|
|
1661
1664
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
1662
|
-
[data-component~="ui-cluster"][hidden][data-v-
|
|
1665
|
+
[data-component~="ui-cluster"][hidden][data-v-acd23e4a] {
|
|
1663
1666
|
display: none;
|
|
1664
1667
|
}
|
|
1665
1668
|
|
|
@@ -5601,7 +5604,7 @@ svg[data-v-521a280a-s] {
|
|
|
5601
5604
|
padding follow it too, and the item takes the link's focus ring. The link stays a real link, so
|
|
5602
5605
|
a router, a modified click, and "open in new tab" all work. Trailing controls sit above it and
|
|
5603
5606
|
stay their own. */
|
|
5604
|
-
[data-component~="ui-list-item"][data-v-
|
|
5607
|
+
[data-component~="ui-list-item"][data-v-8b9a3e2b] {
|
|
5605
5608
|
/* Hooks do not inherit, so the parts below read them from the root. */
|
|
5606
5609
|
--_ui-list-item-icon-size: var(--ui-list-item-icon-size);
|
|
5607
5610
|
|
|
@@ -5626,91 +5629,97 @@ svg[data-v-521a280a-s] {
|
|
|
5626
5629
|
background-color var(--ui-motion-fast) var(--ui-motion-ease),
|
|
5627
5630
|
border-color var(--ui-motion-fast) var(--ui-motion-ease);
|
|
5628
5631
|
}
|
|
5629
|
-
[data-component~="ui-list-item"][data-ui-list-item-state~="variant=card"][data-v-
|
|
5632
|
+
[data-component~="ui-list-item"][data-ui-list-item-state~="variant=card"][data-v-8b9a3e2b] {
|
|
5630
5633
|
padding-block: var(--ui-list-item-padding-block, var(--ui-space-3));
|
|
5631
5634
|
padding-inline: var(--ui-list-item-padding-inline, var(--ui-space-4));
|
|
5632
5635
|
border: var(--ui-border-width) solid var(--ui-border-strong);
|
|
5633
5636
|
border-radius: var(--ui-radius-lg);
|
|
5634
5637
|
background: var(--ui-surface-raised);
|
|
5635
5638
|
}
|
|
5636
|
-
[data-component~="ui-list-item"][data-v-
|
|
5637
|
-
background: var(--ui-surface
|
|
5639
|
+
[data-component~="ui-list-item"][data-v-8b9a3e2b]:where(:has(.title a[href])):hover {
|
|
5640
|
+
background: var(--ui-selection-surface);
|
|
5638
5641
|
}
|
|
5639
|
-
[data-component~="ui-list-item"][data-ui-list-item-state~="variant=card"][data-v-
|
|
5640
|
-
a[href]:hover
|
|
5642
|
+
[data-component~="ui-list-item"][data-ui-list-item-state~="variant=card"][data-v-8b9a3e2b]:where(:has(.title
|
|
5643
|
+
a[href])):hover {
|
|
5641
5644
|
border-color: var(--ui-border-strong);
|
|
5642
5645
|
}
|
|
5643
|
-
[data-component~="ui-list-item"][data-ui-list-item-state~="highlighted"][data-v-
|
|
5646
|
+
[data-component~="ui-list-item"][data-ui-list-item-state~="highlighted"][data-v-8b9a3e2b] {
|
|
5644
5647
|
background: var(--ui-selection-surface);
|
|
5645
5648
|
}
|
|
5646
|
-
[data-component~="ui-list-item"][data-ui-list-item-state~="current"][data-v-
|
|
5649
|
+
[data-component~="ui-list-item"][data-ui-list-item-state~="current"][data-v-8b9a3e2b] {
|
|
5647
5650
|
background: var(--ui-selection-surface);
|
|
5648
5651
|
color: var(--ui-selection-text);
|
|
5649
5652
|
}
|
|
5650
|
-
[data-component~="ui-list-item"][data-v-
|
|
5653
|
+
[data-component~="ui-list-item"][data-v-8b9a3e2b]:has(.title a[href]:focus-visible) {
|
|
5651
5654
|
box-shadow: 0 0 0 var(--ui-focus-width) var(--ui-focus-ring);
|
|
5652
5655
|
}
|
|
5653
|
-
.leading[data-v-
|
|
5654
|
-
.trailing[data-v-
|
|
5656
|
+
.leading[data-v-8b9a3e2b],
|
|
5657
|
+
.trailing[data-v-8b9a3e2b] {
|
|
5655
5658
|
display: inline-flex;
|
|
5656
5659
|
flex: none;
|
|
5657
5660
|
align-items: center;
|
|
5658
5661
|
gap: var(--ui-space-2);
|
|
5659
5662
|
}
|
|
5660
|
-
.leading[data-v-
|
|
5663
|
+
.leading[data-v-8b9a3e2b] {
|
|
5661
5664
|
color: var(--ui-text-muted);
|
|
5662
5665
|
font-size: var(--_ui-list-item-icon-size, var(--ui-font-size-lg));
|
|
5663
5666
|
}
|
|
5664
|
-
[data-component~="ui-list-item"][data-ui-list-item-state~="current"] .leading[data-v-
|
|
5667
|
+
[data-component~="ui-list-item"][data-ui-list-item-state~="current"] .leading[data-v-8b9a3e2b] {
|
|
5665
5668
|
color: var(--ui-selection-text);
|
|
5666
5669
|
}
|
|
5667
5670
|
|
|
5671
|
+
/* An explicitly independent leading control sits above the stretched row link. */
|
|
5672
|
+
[data-component~="ui-list-item"][data-ui-list-item-state~="leadingInteractive"] .leading[data-v-8b9a3e2b] {
|
|
5673
|
+
position: relative;
|
|
5674
|
+
z-index: 1;
|
|
5675
|
+
}
|
|
5676
|
+
|
|
5668
5677
|
/* Trailing controls take their own clicks, above the title link's stretched hit area. */
|
|
5669
|
-
.trailing[data-v-
|
|
5678
|
+
.trailing[data-v-8b9a3e2b] {
|
|
5670
5679
|
position: relative;
|
|
5671
5680
|
z-index: 1;
|
|
5672
5681
|
color: var(--ui-text-muted);
|
|
5673
5682
|
font-size: var(--ui-font-size-sm);
|
|
5674
5683
|
}
|
|
5675
|
-
.content[data-v-
|
|
5684
|
+
.content[data-v-8b9a3e2b] {
|
|
5676
5685
|
display: flex;
|
|
5677
5686
|
flex: 1;
|
|
5678
5687
|
flex-direction: column;
|
|
5679
5688
|
gap: var(--ui-space-0-5, 2px);
|
|
5680
5689
|
min-inline-size: 0;
|
|
5681
5690
|
}
|
|
5682
|
-
.title[data-v-
|
|
5683
|
-
.description[data-v-
|
|
5691
|
+
.title[data-v-8b9a3e2b],
|
|
5692
|
+
.description[data-v-8b9a3e2b] {
|
|
5684
5693
|
display: block;
|
|
5685
5694
|
min-inline-size: 0;
|
|
5686
5695
|
overflow: hidden;
|
|
5687
5696
|
text-overflow: ellipsis;
|
|
5688
5697
|
white-space: nowrap;
|
|
5689
5698
|
}
|
|
5690
|
-
[data-component~="ui-list-item"][data-ui-list-item-state~="wrap"] .title[data-v-
|
|
5691
|
-
[data-component~="ui-list-item"][data-ui-list-item-state~="wrap"] .description[data-v-
|
|
5699
|
+
[data-component~="ui-list-item"][data-ui-list-item-state~="wrap"] .title[data-v-8b9a3e2b],
|
|
5700
|
+
[data-component~="ui-list-item"][data-ui-list-item-state~="wrap"] .description[data-v-8b9a3e2b] {
|
|
5692
5701
|
white-space: normal;
|
|
5693
5702
|
overflow-wrap: anywhere;
|
|
5694
5703
|
}
|
|
5695
|
-
.title[data-v-
|
|
5704
|
+
.title[data-v-8b9a3e2b] {
|
|
5696
5705
|
font-size: var(--ui-font-size-md);
|
|
5697
5706
|
font-weight: var(--_ui-list-item-title-weight, var(--ui-font-medium));
|
|
5698
5707
|
line-height: var(--ui-line-height-tight);
|
|
5699
5708
|
}
|
|
5700
|
-
.description[data-v-
|
|
5709
|
+
.description[data-v-8b9a3e2b] {
|
|
5701
5710
|
color: var(--ui-text-muted);
|
|
5702
5711
|
font-size: var(--ui-font-size-sm);
|
|
5703
5712
|
line-height: var(--ui-line-height-tight);
|
|
5704
5713
|
}
|
|
5705
|
-
.title > a[data-v-
|
|
5714
|
+
.title > a[data-v-8b9a3e2b-s] {
|
|
5706
5715
|
color: inherit;
|
|
5707
5716
|
text-decoration: none;
|
|
5708
5717
|
}
|
|
5709
|
-
.title > a[data-v-
|
|
5718
|
+
.title > a[data-v-8b9a3e2b-s]:focus-visible {
|
|
5710
5719
|
outline: none;
|
|
5711
5720
|
box-shadow: none;
|
|
5712
5721
|
}
|
|
5713
|
-
.title > a[href][data-v-
|
|
5722
|
+
.title > a[href][data-v-8b9a3e2b-s]::after {
|
|
5714
5723
|
position: absolute;
|
|
5715
5724
|
inset: 0;
|
|
5716
5725
|
border-radius: inherit;
|
|
@@ -5718,24 +5727,24 @@ svg[data-v-521a280a-s] {
|
|
|
5718
5727
|
}
|
|
5719
5728
|
|
|
5720
5729
|
/* An unused region takes no space. */
|
|
5721
|
-
.leading[data-v-
|
|
5722
|
-
.description[data-v-
|
|
5723
|
-
.trailing[data-v-
|
|
5730
|
+
.leading[data-v-8b9a3e2b]:empty,
|
|
5731
|
+
.description[data-v-8b9a3e2b]:empty,
|
|
5732
|
+
.trailing[data-v-8b9a3e2b]:empty {
|
|
5724
5733
|
display: none;
|
|
5725
5734
|
}
|
|
5726
5735
|
@media (forced-colors: active) {
|
|
5727
|
-
[data-component~="ui-list-item"][data-v-
|
|
5736
|
+
[data-component~="ui-list-item"][data-v-8b9a3e2b]:has(a:focus-visible) {
|
|
5728
5737
|
outline: var(--ui-focus-width) solid Highlight;
|
|
5729
5738
|
outline-offset: calc(-1 * var(--ui-focus-width));
|
|
5730
5739
|
}
|
|
5731
|
-
:is([data-component~="ui-list-item"][data-ui-list-item-state~="current"][data-v-
|
|
5740
|
+
:is([data-component~="ui-list-item"][data-ui-list-item-state~="current"][data-v-8b9a3e2b], [data-component~="ui-list-item"][data-ui-list-item-state~="highlighted"][data-v-8b9a3e2b]):not(:has(a:focus-visible)) {
|
|
5732
5741
|
outline: var(--ui-border-width) solid Highlight;
|
|
5733
5742
|
outline-offset: calc(-1 * var(--ui-border-width));
|
|
5734
5743
|
}
|
|
5735
5744
|
}
|
|
5736
5745
|
|
|
5737
5746
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
5738
|
-
[data-component~="ui-list-item"][hidden][data-v-
|
|
5747
|
+
[data-component~="ui-list-item"][hidden][data-v-8b9a3e2b] {
|
|
5739
5748
|
display: none;
|
|
5740
5749
|
}
|
|
5741
5750
|
|
|
@@ -8943,7 +8952,7 @@ to {
|
|
|
8943
8952
|
syntax: "*";
|
|
8944
8953
|
inherits: false;
|
|
8945
8954
|
}
|
|
8946
|
-
[data-component~="ui-tree-item"][data-v-
|
|
8955
|
+
[data-component~="ui-tree-item"][data-v-dc15f210] {
|
|
8947
8956
|
/* Hooks do not inherit, so the parts below read them from the root. The tree's density
|
|
8948
8957
|
sets the defaults, in --_ui-default-*. */
|
|
8949
8958
|
--_ui-tree-item-min-block-size: var(
|
|
@@ -8965,7 +8974,7 @@ to {
|
|
|
8965
8974
|
min-inline-size: 0;
|
|
8966
8975
|
margin-inline-start: calc(var(--_ui-tree-item-indent-step, 0) * var(--_ui-tree-indent, 16px));
|
|
8967
8976
|
}
|
|
8968
|
-
.row[data-v-
|
|
8977
|
+
.row[data-v-dc15f210] {
|
|
8969
8978
|
position: relative;
|
|
8970
8979
|
display: grid;
|
|
8971
8980
|
grid-template-columns: var(--_tree-disclosure-size) auto minmax(0, 1fr);
|
|
@@ -8982,54 +8991,54 @@ to {
|
|
|
8982
8991
|
box-shadow var(--ui-motion-fast) var(--ui-motion-ease),
|
|
8983
8992
|
min-block-size var(--ui-motion-base) var(--ui-motion-ease);
|
|
8984
8993
|
}
|
|
8985
|
-
.row[data-v-
|
|
8986
|
-
.row[data-v-
|
|
8994
|
+
.row[data-v-dc15f210]:hover,
|
|
8995
|
+
.row[data-v-dc15f210]:focus-within {
|
|
8987
8996
|
color: var(--ui-text-primary);
|
|
8988
8997
|
background: var(--ui-surface-muted);
|
|
8989
8998
|
}
|
|
8990
8999
|
|
|
8991
9000
|
/* Selection is the same surface recipe as destination and choice rows. */
|
|
8992
|
-
[data-component~="ui-tree-item"][data-ui-tree-item-state~="selected"] > .row[data-v-
|
|
9001
|
+
[data-component~="ui-tree-item"][data-ui-tree-item-state~="selected"] > .row[data-v-dc15f210] {
|
|
8993
9002
|
color: var(--ui-selection-text);
|
|
8994
9003
|
background: var(--ui-selection-surface);
|
|
8995
9004
|
}
|
|
8996
9005
|
[data-component~="ui-tree-item"][data-ui-tree-item-state~="selected"]:not([aria-disabled="true"])
|
|
8997
9006
|
> .row
|
|
8998
|
-
> .leading[data-v-
|
|
9007
|
+
> .leading[data-v-dc15f210] {
|
|
8999
9008
|
color: var(--ui-selection-text);
|
|
9000
9009
|
}
|
|
9001
|
-
[data-component~="ui-tree-item"][data-ui-tree-item-state~="disabled"] .row[data-v-
|
|
9010
|
+
[data-component~="ui-tree-item"][data-ui-tree-item-state~="disabled"] .row[data-v-dc15f210] {
|
|
9002
9011
|
color: var(--ui-disabled-text);
|
|
9003
9012
|
background: var(--ui-disabled-surface);
|
|
9004
9013
|
}
|
|
9005
|
-
[data-component~="ui-tree-item"][data-dragging]:not([data-move-source]) .row[data-v-
|
|
9014
|
+
[data-component~="ui-tree-item"][data-dragging]:not([data-move-source]) .row[data-v-dc15f210] {
|
|
9006
9015
|
opacity: 0.42;
|
|
9007
9016
|
}
|
|
9008
|
-
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-
|
|
9009
|
-
[data-component~="ui-tree-item"][data-move-source] > .row > .leading[data-v-
|
|
9017
|
+
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-dc15f210],
|
|
9018
|
+
[data-component~="ui-tree-item"][data-move-source] > .row > .leading[data-v-dc15f210] {
|
|
9010
9019
|
opacity: 0.42;
|
|
9011
9020
|
}
|
|
9012
|
-
[data-component~="ui-tree-item"][data-v-
|
|
9021
|
+
[data-component~="ui-tree-item"][data-v-dc15f210]:focus {
|
|
9013
9022
|
outline: none;
|
|
9014
9023
|
}
|
|
9015
|
-
[data-component~="ui-tree-item"]:focus-visible .row[data-v-
|
|
9024
|
+
[data-component~="ui-tree-item"]:focus-visible .row[data-v-dc15f210] {
|
|
9016
9025
|
box-shadow: 0 0 0 var(--ui-focus-width) var(--ui-focus-ring);
|
|
9017
9026
|
}
|
|
9018
9027
|
|
|
9019
9028
|
/* Child combinators: drop feedback belongs to this item's own row, not the rows nested in it. */
|
|
9020
|
-
[data-component~="ui-tree-item"][data-drop-position="inside"] > .row[data-v-
|
|
9029
|
+
[data-component~="ui-tree-item"][data-drop-position="inside"] > .row[data-v-dc15f210] {
|
|
9021
9030
|
background: var(--ui-accent-subtle);
|
|
9022
9031
|
box-shadow: inset 0 0 0 var(--ui-accent-line-width)
|
|
9023
9032
|
var(--_ui-tree-drop-color, var(--ui-accent-solid));
|
|
9024
9033
|
}
|
|
9025
|
-
.disclosure[data-v-
|
|
9026
|
-
.disclosure-spacer[data-v-
|
|
9034
|
+
.disclosure[data-v-dc15f210],
|
|
9035
|
+
.disclosure-spacer[data-v-dc15f210] {
|
|
9027
9036
|
grid-column: 1;
|
|
9028
9037
|
grid-row: 1;
|
|
9029
9038
|
inline-size: var(--_tree-disclosure-size);
|
|
9030
9039
|
block-size: 28px;
|
|
9031
9040
|
}
|
|
9032
|
-
.disclosure[data-v-
|
|
9041
|
+
.disclosure[data-v-dc15f210] {
|
|
9033
9042
|
display: grid;
|
|
9034
9043
|
/* Start-aligned: the chevron's ink, not its hit area, aligns with the content above it. */
|
|
9035
9044
|
place-items: center start;
|
|
@@ -9040,10 +9049,10 @@ to {
|
|
|
9040
9049
|
border-radius: var(--ui-radius-sm);
|
|
9041
9050
|
cursor: pointer;
|
|
9042
9051
|
}
|
|
9043
|
-
.disclosure[hidden][data-v-
|
|
9052
|
+
.disclosure[hidden][data-v-dc15f210] {
|
|
9044
9053
|
display: none;
|
|
9045
9054
|
}
|
|
9046
|
-
.selection-hit[data-v-
|
|
9055
|
+
.selection-hit[data-v-dc15f210] {
|
|
9047
9056
|
display: none;
|
|
9048
9057
|
grid-column: 2;
|
|
9049
9058
|
grid-row: 1;
|
|
@@ -9052,29 +9061,29 @@ to {
|
|
|
9052
9061
|
block-size: var(--_ui-tree-item-min-block-size, var(--_tree-row-min-height));
|
|
9053
9062
|
cursor: pointer;
|
|
9054
9063
|
}
|
|
9055
|
-
.selection-checkbox[data-v-
|
|
9064
|
+
.selection-checkbox[data-v-dc15f210] {
|
|
9056
9065
|
inline-size: 1rem;
|
|
9057
9066
|
block-size: 1rem;
|
|
9058
9067
|
margin: 0;
|
|
9059
9068
|
accent-color: var(--ui-accent-solid);
|
|
9060
9069
|
}
|
|
9061
|
-
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row[data-v-
|
|
9070
|
+
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row[data-v-dc15f210] {
|
|
9062
9071
|
grid-template-columns: var(--_tree-disclosure-size) 1.25rem auto minmax(0, 1fr);
|
|
9063
9072
|
}
|
|
9064
|
-
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row > .selection-hit[data-v-
|
|
9073
|
+
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row > .selection-hit[data-v-dc15f210] {
|
|
9065
9074
|
display: grid;
|
|
9066
9075
|
}
|
|
9067
|
-
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row > .leading[data-v-
|
|
9076
|
+
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row > .leading[data-v-dc15f210] {
|
|
9068
9077
|
grid-column: 3;
|
|
9069
9078
|
}
|
|
9070
|
-
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row > .label[data-v-
|
|
9079
|
+
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row > .label[data-v-dc15f210] {
|
|
9071
9080
|
grid-column: 4;
|
|
9072
9081
|
}
|
|
9073
|
-
.disclosure[data-v-
|
|
9082
|
+
.disclosure[data-v-dc15f210]:hover {
|
|
9074
9083
|
color: var(--ui-text-primary);
|
|
9075
9084
|
background: var(--ui-surface-elevated);
|
|
9076
9085
|
}
|
|
9077
|
-
.disclosure-icon[data-v-
|
|
9086
|
+
.disclosure-icon[data-v-dc15f210] {
|
|
9078
9087
|
display: grid;
|
|
9079
9088
|
place-items: center;
|
|
9080
9089
|
inline-size: 12px;
|
|
@@ -9082,7 +9091,7 @@ to {
|
|
|
9082
9091
|
transform: rotate(-90deg);
|
|
9083
9092
|
transition: transform var(--ui-motion-fast) var(--ui-motion-ease);
|
|
9084
9093
|
}
|
|
9085
|
-
.disclosure-icon[data-v-
|
|
9094
|
+
.disclosure-icon[data-v-dc15f210]::before {
|
|
9086
9095
|
display: block;
|
|
9087
9096
|
inline-size: 0.375rem;
|
|
9088
9097
|
block-size: 0.375rem;
|
|
@@ -9092,19 +9101,19 @@ to {
|
|
|
9092
9101
|
/* A chevron's ink sits below its box centre; lift it so it centres optically (in either rotation). */
|
|
9093
9102
|
transform: translateY(-20%) rotate(45deg);
|
|
9094
9103
|
}
|
|
9095
|
-
[data-component~="ui-tree-item"][aria-expanded="true"] > .row > .disclosure > .disclosure-icon[data-v-
|
|
9104
|
+
[data-component~="ui-tree-item"][aria-expanded="true"] > .row > .disclosure > .disclosure-icon[data-v-dc15f210] {
|
|
9096
9105
|
transform: rotate(0deg);
|
|
9097
9106
|
}
|
|
9098
9107
|
|
|
9099
9108
|
/* Lucide grip-vertical, filling the handle as in Looma 0.2. */
|
|
9100
|
-
.drag-handle svg[data-v-
|
|
9109
|
+
.drag-handle svg[data-v-dc15f210] {
|
|
9101
9110
|
display: block;
|
|
9102
9111
|
inline-size: 100%;
|
|
9103
9112
|
block-size: 100%;
|
|
9104
9113
|
}
|
|
9105
9114
|
|
|
9106
9115
|
/* Slotted content is outside this scope, so :has() cannot see it; hide only a truly empty slot. */
|
|
9107
|
-
.leading[data-v-
|
|
9116
|
+
.leading[data-v-dc15f210] {
|
|
9108
9117
|
display: inline-grid;
|
|
9109
9118
|
place-items: center;
|
|
9110
9119
|
grid-column: 2;
|
|
@@ -9117,12 +9126,12 @@ to {
|
|
|
9117
9126
|
position: relative;
|
|
9118
9127
|
z-index: 1;
|
|
9119
9128
|
}
|
|
9120
|
-
.leading[data-v-
|
|
9129
|
+
.leading[data-v-dc15f210]:empty {
|
|
9121
9130
|
display: none;
|
|
9122
9131
|
}
|
|
9123
9132
|
|
|
9124
9133
|
/* Icons match the label's size (as in Knit's tree): an unsized SVG would otherwise render 300×150. */
|
|
9125
|
-
svg[data-v-
|
|
9134
|
+
svg[data-v-dc15f210-s],img[data-v-dc15f210-s] {
|
|
9126
9135
|
display: block;
|
|
9127
9136
|
inline-size: 1em;
|
|
9128
9137
|
block-size: 1em;
|
|
@@ -9131,7 +9140,7 @@ svg[data-v-f2ec0a81-s],img[data-v-f2ec0a81-s] {
|
|
|
9131
9140
|
|
|
9132
9141
|
/* The label spans the row's height and centres its content, so slotted content (a link) can
|
|
9133
9142
|
stretch to fill the row as its own hit area; the padding tokens remove the inset. */
|
|
9134
|
-
.label[data-v-
|
|
9143
|
+
.label[data-v-dc15f210] {
|
|
9135
9144
|
grid-column: 3;
|
|
9136
9145
|
grid-row: 1;
|
|
9137
9146
|
align-self: stretch;
|
|
@@ -9149,7 +9158,7 @@ svg[data-v-f2ec0a81-s],img[data-v-f2ec0a81-s] {
|
|
|
9149
9158
|
|
|
9150
9159
|
/* Slotted label content fills the cell, so a link is the row's hit area rather than sizing to
|
|
9151
9160
|
its own text and reading as overflow. */
|
|
9152
|
-
.label-text[data-v-
|
|
9161
|
+
.label-text[data-v-dc15f210] {
|
|
9153
9162
|
display: flex;
|
|
9154
9163
|
align-items: center;
|
|
9155
9164
|
/* Stretches, so slotted content can still be the row's full-height hit area. */
|
|
@@ -9159,16 +9168,17 @@ svg[data-v-f2ec0a81-s],img[data-v-f2ec0a81-s] {
|
|
|
9159
9168
|
inline-size: 100%;
|
|
9160
9169
|
white-space: nowrap;
|
|
9161
9170
|
}
|
|
9162
|
-
.label-text > [data-v-
|
|
9171
|
+
.label-text > [data-v-dc15f210-s] {
|
|
9163
9172
|
flex: 1 1 auto;
|
|
9164
9173
|
min-inline-size: 0;
|
|
9165
9174
|
}
|
|
9166
9175
|
|
|
9167
9176
|
/* The controls sit over the label's end, so the text fades out where they begin. The fade is
|
|
9168
9177
|
the truncation mark while it shows: an ellipsis under it would read as a second one. */
|
|
9169
|
-
.row:hover > .label[data-v-
|
|
9170
|
-
.row:focus-within > .label[data-v-
|
|
9171
|
-
[data-component~="ui-tree-item"][data-
|
|
9178
|
+
.row:hover > .label[data-v-dc15f210],
|
|
9179
|
+
.row:focus-within > .label[data-v-dc15f210],
|
|
9180
|
+
[data-component~="ui-tree-item"][data-ui-tree-item-state~="actionsVisible"] > .row > .label[data-v-dc15f210],
|
|
9181
|
+
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-dc15f210] {
|
|
9172
9182
|
text-overflow: clip;
|
|
9173
9183
|
mask-image: linear-gradient(
|
|
9174
9184
|
to right,
|
|
@@ -9176,9 +9186,12 @@ svg[data-v-f2ec0a81-s],img[data-v-f2ec0a81-s] {
|
|
|
9176
9186
|
transparent calc(100% - var(--_tree-actions-width, 1.75rem))
|
|
9177
9187
|
);
|
|
9178
9188
|
}
|
|
9179
|
-
.row:hover > .label[data-v-
|
|
9180
|
-
.row:focus-within > .label[data-v-
|
|
9181
|
-
[data-component~="ui-tree-item"][data-
|
|
9189
|
+
.row:hover > .label[data-v-dc15f210]:dir(rtl),
|
|
9190
|
+
.row:focus-within > .label[data-v-dc15f210]:dir(rtl),
|
|
9191
|
+
[data-component~="ui-tree-item"][data-ui-tree-item-state~="actionsVisible"]
|
|
9192
|
+
> .row
|
|
9193
|
+
> .label[data-v-dc15f210]:dir(rtl),
|
|
9194
|
+
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-dc15f210]:dir(rtl) {
|
|
9182
9195
|
mask-image: linear-gradient(
|
|
9183
9196
|
to left,
|
|
9184
9197
|
#000 calc(100% - var(--_tree-actions-width, 1.75rem) - var(--ui-space-1)),
|
|
@@ -9190,10 +9203,10 @@ svg[data-v-f2ec0a81-s],img[data-v-f2ec0a81-s] {
|
|
|
9190
9203
|
there, and starts again. Only when it actually overflows — the controller measures by how
|
|
9191
9204
|
much — after the controls have taken their place over its end — and hands over the distance
|
|
9192
9205
|
and a duration from it, so every name moves at the same speed. */
|
|
9193
|
-
.row[data-ui-marquee] > .label > .label-text[data-v-
|
|
9206
|
+
.row[data-ui-marquee] > .label > .label-text[data-v-dc15f210] {
|
|
9194
9207
|
/* Once per pass: the controller restarts it after a rest at the end, so the name holds still
|
|
9195
9208
|
long enough to read rather than sliding back and forth. */
|
|
9196
|
-
animation: ui-tree-item-marquee-
|
|
9209
|
+
animation: ui-tree-item-marquee-dc15f210 var(--_marquee-duration) linear 0.5s 1 normal forwards;
|
|
9197
9210
|
will-change: transform;
|
|
9198
9211
|
}
|
|
9199
9212
|
|
|
@@ -9201,7 +9214,7 @@ svg[data-v-f2ec0a81-s],img[data-v-f2ec0a81-s] {
|
|
|
9201
9214
|
slides, the label reaches back under the icon (the controller measures how far) with its text
|
|
9202
9215
|
where it was, and fades out across the gap before the icon, fully gone where the icon begins
|
|
9203
9216
|
to cover it: the name slips under the icon rather than stopping at a hard edge beside it. */
|
|
9204
|
-
.row[data-ui-marquee] > .label[data-v-
|
|
9217
|
+
.row[data-ui-marquee] > .label[data-v-dc15f210] {
|
|
9205
9218
|
margin-inline-start: calc(-1 * var(--_marquee-lead, 0px));
|
|
9206
9219
|
padding-inline-start: calc(
|
|
9207
9220
|
var(--_marquee-lead, 0px) + var(--_ui-tree-item-label-padding-inline, var(--ui-space-2))
|
|
@@ -9216,7 +9229,7 @@ svg[data-v-f2ec0a81-s],img[data-v-f2ec0a81-s] {
|
|
|
9216
9229
|
transparent calc(100% - var(--_tree-actions-width, 1.75rem))
|
|
9217
9230
|
);
|
|
9218
9231
|
}
|
|
9219
|
-
.row[data-ui-marquee] > .label[data-v-
|
|
9232
|
+
.row[data-ui-marquee] > .label[data-v-dc15f210]:dir(rtl) {
|
|
9220
9233
|
mask-image: linear-gradient(
|
|
9221
9234
|
to left,
|
|
9222
9235
|
transparent var(--_marquee-icon-width, 0px),
|
|
@@ -9227,7 +9240,7 @@ svg[data-v-f2ec0a81-s],img[data-v-f2ec0a81-s] {
|
|
|
9227
9240
|
transparent calc(100% - var(--_tree-actions-width, 1.75rem))
|
|
9228
9241
|
);
|
|
9229
9242
|
}
|
|
9230
|
-
@keyframes ui-tree-item-marquee-
|
|
9243
|
+
@keyframes ui-tree-item-marquee-dc15f210 {
|
|
9231
9244
|
from {
|
|
9232
9245
|
transform: translateX(0);
|
|
9233
9246
|
}
|
|
@@ -9238,15 +9251,15 @@ to {
|
|
|
9238
9251
|
|
|
9239
9252
|
/* Reduced motion keeps the fade, which already says the name continues. */
|
|
9240
9253
|
@media (prefers-reduced-motion: reduce) {
|
|
9241
|
-
.row[data-ui-marquee] > .label > .label-text[data-v-
|
|
9254
|
+
.row[data-ui-marquee] > .label > .label-text[data-v-dc15f210] {
|
|
9242
9255
|
animation: none;
|
|
9243
9256
|
}
|
|
9244
9257
|
}
|
|
9245
|
-
.row:hover > .label > [data-v-
|
|
9246
|
-
.row:focus-within > .label > [data-v-
|
|
9258
|
+
.row:hover > .label > [data-v-dc15f210-s],
|
|
9259
|
+
.row:focus-within > .label > [data-v-dc15f210-s] {
|
|
9247
9260
|
text-overflow: clip;
|
|
9248
9261
|
}
|
|
9249
|
-
.actions[data-v-
|
|
9262
|
+
.actions[data-v-dc15f210] {
|
|
9250
9263
|
position: absolute;
|
|
9251
9264
|
z-index: 1;
|
|
9252
9265
|
inset-block: 0;
|
|
@@ -9258,19 +9271,20 @@ to {
|
|
|
9258
9271
|
pointer-events: none;
|
|
9259
9272
|
transition: opacity var(--ui-motion-fast) var(--ui-motion-ease);
|
|
9260
9273
|
}
|
|
9261
|
-
.row:hover > .actions[data-v-
|
|
9262
|
-
.row:focus-within > .actions[data-v-
|
|
9263
|
-
[data-component~="ui-tree-item"][data-
|
|
9274
|
+
.row:hover > .actions[data-v-dc15f210],
|
|
9275
|
+
.row:focus-within > .actions[data-v-dc15f210],
|
|
9276
|
+
[data-component~="ui-tree-item"][data-ui-tree-item-state~="actionsVisible"] > .row > .actions[data-v-dc15f210],
|
|
9277
|
+
[data-component~="ui-tree-item"][data-move-source] > .row > .actions[data-v-dc15f210] {
|
|
9264
9278
|
opacity: 1;
|
|
9265
9279
|
pointer-events: auto;
|
|
9266
9280
|
}
|
|
9267
9281
|
|
|
9268
9282
|
/* Without hover there is no reveal, so the controls keep their own column. */
|
|
9269
9283
|
@media (hover: none), (pointer: coarse) {
|
|
9270
|
-
.row[data-v-
|
|
9284
|
+
.row[data-v-dc15f210] {
|
|
9271
9285
|
grid-template-columns: var(--_tree-disclosure-size) auto minmax(0, 1fr) auto;
|
|
9272
9286
|
}
|
|
9273
|
-
.actions[data-v-
|
|
9287
|
+
.actions[data-v-dc15f210] {
|
|
9274
9288
|
position: static;
|
|
9275
9289
|
grid-column: 4;
|
|
9276
9290
|
grid-row: 1;
|
|
@@ -9279,13 +9293,13 @@ to {
|
|
|
9279
9293
|
opacity: 1;
|
|
9280
9294
|
pointer-events: auto;
|
|
9281
9295
|
}
|
|
9282
|
-
.row:is(:hover, :focus-within) > .label[data-v-
|
|
9283
|
-
.row:is(:hover, :focus-within) > .label[data-v-
|
|
9284
|
-
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-
|
|
9285
|
-
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-
|
|
9296
|
+
.row:is(:hover, :focus-within) > .label[data-v-dc15f210],
|
|
9297
|
+
.row:is(:hover, :focus-within) > .label[data-v-dc15f210]:dir(rtl),
|
|
9298
|
+
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-dc15f210],
|
|
9299
|
+
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-dc15f210]:dir(rtl) {
|
|
9286
9300
|
mask-image: none;
|
|
9287
9301
|
}
|
|
9288
|
-
.row[data-ui-marquee] > .label[data-v-
|
|
9302
|
+
.row[data-ui-marquee] > .label[data-v-dc15f210] {
|
|
9289
9303
|
mask-image: linear-gradient(
|
|
9290
9304
|
to right,
|
|
9291
9305
|
transparent var(--_marquee-icon-width, 0px),
|
|
@@ -9294,7 +9308,17 @@ to {
|
|
|
9294
9308
|
)
|
|
9295
9309
|
);
|
|
9296
9310
|
}
|
|
9297
|
-
|
|
9311
|
+
|
|
9312
|
+
/* Persistent content has its own column on touch. Fade only the label's end. */
|
|
9313
|
+
[data-component~="ui-tree-item"][data-ui-tree-item-state~="actionsVisible"] > .row > .label[data-v-dc15f210] {
|
|
9314
|
+
mask-image: linear-gradient(to right, #000 calc(100% - var(--ui-space-1)), transparent 100%);
|
|
9315
|
+
}
|
|
9316
|
+
[data-component~="ui-tree-item"][data-ui-tree-item-state~="actionsVisible"]
|
|
9317
|
+
> .row
|
|
9318
|
+
> .label[data-v-dc15f210]:dir(rtl) {
|
|
9319
|
+
mask-image: linear-gradient(to left, #000 calc(100% - var(--ui-space-1)), transparent 100%);
|
|
9320
|
+
}
|
|
9321
|
+
.row[data-ui-marquee] > .label[data-v-dc15f210]:dir(rtl) {
|
|
9298
9322
|
mask-image: linear-gradient(
|
|
9299
9323
|
to left,
|
|
9300
9324
|
transparent var(--_marquee-icon-width, 0px),
|
|
@@ -9303,10 +9327,10 @@ to {
|
|
|
9303
9327
|
)
|
|
9304
9328
|
);
|
|
9305
9329
|
}
|
|
9306
|
-
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row[data-v-
|
|
9330
|
+
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row[data-v-dc15f210] {
|
|
9307
9331
|
grid-template-columns: var(--_tree-disclosure-size) 1.25rem auto minmax(0, 1fr) auto;
|
|
9308
9332
|
}
|
|
9309
|
-
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row > .actions[data-v-
|
|
9333
|
+
[data-component~="ui-tree-item"][data-selection-mode="multiple"] > .row > .actions[data-v-dc15f210] {
|
|
9310
9334
|
grid-column: 5;
|
|
9311
9335
|
}
|
|
9312
9336
|
}
|
|
@@ -9315,7 +9339,7 @@ to {
|
|
|
9315
9339
|
empty column, right before the icon; a branch's disclosure is there, so its handle sits just
|
|
9316
9340
|
outside the row. It is bare until pointed at: a resting surface behind it read as a faint
|
|
9317
9341
|
patch rather than as a control. */
|
|
9318
|
-
.drag-handle[data-v-
|
|
9342
|
+
.drag-handle[data-v-dc15f210] {
|
|
9319
9343
|
position: absolute;
|
|
9320
9344
|
z-index: 2;
|
|
9321
9345
|
inset-block-start: 50%;
|
|
@@ -9336,24 +9360,24 @@ to {
|
|
|
9336
9360
|
transform: translateY(-50%);
|
|
9337
9361
|
transition: opacity var(--ui-motion-fast) var(--ui-motion-ease);
|
|
9338
9362
|
}
|
|
9339
|
-
.row:hover .drag-handle[data-v-
|
|
9340
|
-
.drag-handle[data-v-
|
|
9341
|
-
.drag-handle[data-v-
|
|
9342
|
-
[data-component~="ui-tree-item"][data-dragging] > .row > .drag-handle[data-v-
|
|
9363
|
+
.row:hover .drag-handle[data-v-dc15f210],
|
|
9364
|
+
.drag-handle[data-v-dc15f210]:hover,
|
|
9365
|
+
.drag-handle[data-v-dc15f210]:focus-visible,
|
|
9366
|
+
[data-component~="ui-tree-item"][data-dragging] > .row > .drag-handle[data-v-dc15f210] {
|
|
9343
9367
|
opacity: 1;
|
|
9344
9368
|
}
|
|
9345
|
-
[data-component~="ui-tree-item"][data-ui-tree-item-state~="isContainer"] > .row > .drag-handle[data-v-
|
|
9369
|
+
[data-component~="ui-tree-item"][data-ui-tree-item-state~="isContainer"] > .row > .drag-handle[data-v-dc15f210] {
|
|
9346
9370
|
inset-inline-start: calc(-1 * var(--_tree-disclosure-size) - 2px);
|
|
9347
9371
|
}
|
|
9348
|
-
.drag-handle[data-v-
|
|
9349
|
-
.drag-handle[data-v-
|
|
9372
|
+
.drag-handle[data-v-dc15f210]:hover,
|
|
9373
|
+
.drag-handle[data-v-dc15f210]:focus-visible {
|
|
9350
9374
|
color: var(--ui-text-primary);
|
|
9351
9375
|
background: var(--ui-surface-hover);
|
|
9352
9376
|
}
|
|
9353
|
-
.drag-handle[data-v-
|
|
9377
|
+
.drag-handle[data-v-dc15f210]:active {
|
|
9354
9378
|
cursor: grabbing;
|
|
9355
9379
|
}
|
|
9356
|
-
.drop-indicator[data-v-
|
|
9380
|
+
.drop-indicator[data-v-dc15f210] {
|
|
9357
9381
|
position: absolute;
|
|
9358
9382
|
z-index: 3;
|
|
9359
9383
|
inset-inline: 1px;
|
|
@@ -9363,8 +9387,8 @@ to {
|
|
|
9363
9387
|
background: var(--_ui-tree-drop-color, var(--ui-accent-solid));
|
|
9364
9388
|
pointer-events: none;
|
|
9365
9389
|
}
|
|
9366
|
-
.drop-indicator[data-v-
|
|
9367
|
-
.drop-indicator[data-v-
|
|
9390
|
+
.drop-indicator[data-v-dc15f210]::before,
|
|
9391
|
+
.drop-indicator[data-v-dc15f210]::after {
|
|
9368
9392
|
content: "";
|
|
9369
9393
|
position: absolute;
|
|
9370
9394
|
inset-block-start: 50%;
|
|
@@ -9375,34 +9399,34 @@ to {
|
|
|
9375
9399
|
background: var(--ui-surface-elevated);
|
|
9376
9400
|
transform: translateY(-50%);
|
|
9377
9401
|
}
|
|
9378
|
-
.drop-indicator[data-v-
|
|
9402
|
+
.drop-indicator[data-v-dc15f210]::before {
|
|
9379
9403
|
inset-inline-start: -1px;
|
|
9380
9404
|
}
|
|
9381
|
-
.drop-indicator[data-v-
|
|
9405
|
+
.drop-indicator[data-v-dc15f210]::after {
|
|
9382
9406
|
inset-inline-end: -1px;
|
|
9383
9407
|
}
|
|
9384
|
-
[data-component~="ui-tree-item"][data-drop-position="before"] > .row > .row-drop-indicator[data-v-
|
|
9408
|
+
[data-component~="ui-tree-item"][data-drop-position="before"] > .row > .row-drop-indicator[data-v-dc15f210] {
|
|
9385
9409
|
display: block;
|
|
9386
9410
|
inset-block-start: calc(-0.5 * var(--ui-accent-line-width));
|
|
9387
9411
|
}
|
|
9388
|
-
[data-component~="ui-tree-item"][data-drop-position="after"] > .subtree-drop-indicator[data-v-
|
|
9412
|
+
[data-component~="ui-tree-item"][data-drop-position="after"] > .subtree-drop-indicator[data-v-dc15f210] {
|
|
9389
9413
|
display: block;
|
|
9390
9414
|
inset-block-end: calc(-0.5 * var(--ui-accent-line-width));
|
|
9391
9415
|
}
|
|
9392
|
-
.children[hidden][data-v-
|
|
9416
|
+
.children[hidden][data-v-dc15f210] {
|
|
9393
9417
|
display: none;
|
|
9394
9418
|
}
|
|
9395
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"][data-v-
|
|
9419
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"][data-v-dc15f210] {
|
|
9396
9420
|
--_tree-row-min-height: 44px;
|
|
9397
9421
|
}
|
|
9398
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .row[data-v-
|
|
9422
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .row[data-v-dc15f210] {
|
|
9399
9423
|
grid-template-columns: 44px var(--_tree-disclosure-size) auto minmax(0, 1fr);
|
|
9400
9424
|
}
|
|
9401
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .drag-handle[data-v-
|
|
9425
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .drag-handle[data-v-dc15f210],
|
|
9402
9426
|
html[data-ui-input-modality="touch"]
|
|
9403
9427
|
[data-component~="ui-tree-item"][data-ui-tree-item-state~="isContainer"]
|
|
9404
9428
|
> .row
|
|
9405
|
-
> .drag-handle[data-v-
|
|
9429
|
+
> .drag-handle[data-v-dc15f210] {
|
|
9406
9430
|
position: relative;
|
|
9407
9431
|
grid-column: 1;
|
|
9408
9432
|
grid-row: 1;
|
|
@@ -9414,24 +9438,24 @@ html[data-ui-input-modality="touch"]
|
|
|
9414
9438
|
transform: none;
|
|
9415
9439
|
cursor: pointer;
|
|
9416
9440
|
}
|
|
9417
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .disclosure[data-v-
|
|
9441
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .disclosure[data-v-dc15f210] {
|
|
9418
9442
|
grid-column: 2;
|
|
9419
9443
|
}
|
|
9420
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .leading[data-v-
|
|
9444
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .leading[data-v-dc15f210] {
|
|
9421
9445
|
grid-column: 3;
|
|
9422
9446
|
}
|
|
9423
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .label[data-v-
|
|
9447
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .label[data-v-dc15f210] {
|
|
9424
9448
|
grid-column: 4;
|
|
9425
9449
|
}
|
|
9426
9450
|
html[data-ui-input-modality="touch"]
|
|
9427
9451
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9428
|
-
> .row[data-v-
|
|
9452
|
+
> .row[data-v-dc15f210] {
|
|
9429
9453
|
grid-template-columns: 44px var(--_tree-disclosure-size) 44px auto minmax(0, 1fr);
|
|
9430
9454
|
}
|
|
9431
9455
|
html[data-ui-input-modality="touch"]
|
|
9432
9456
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9433
9457
|
> .row
|
|
9434
|
-
> .selection-hit[data-v-
|
|
9458
|
+
> .selection-hit[data-v-dc15f210] {
|
|
9435
9459
|
grid-column: 3;
|
|
9436
9460
|
inline-size: 44px;
|
|
9437
9461
|
block-size: 44px;
|
|
@@ -9439,55 +9463,55 @@ html[data-ui-input-modality="touch"]
|
|
|
9439
9463
|
html[data-ui-input-modality="touch"]
|
|
9440
9464
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9441
9465
|
> .row
|
|
9442
|
-
> .leading[data-v-
|
|
9466
|
+
> .leading[data-v-dc15f210] {
|
|
9443
9467
|
grid-column: 4;
|
|
9444
9468
|
}
|
|
9445
9469
|
html[data-ui-input-modality="touch"]
|
|
9446
9470
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9447
9471
|
> .row
|
|
9448
|
-
> .label[data-v-
|
|
9472
|
+
> .label[data-v-dc15f210] {
|
|
9449
9473
|
grid-column: 5;
|
|
9450
9474
|
}
|
|
9451
9475
|
@media (hover: none), (pointer: coarse) {
|
|
9452
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .row[data-v-
|
|
9476
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .row[data-v-dc15f210] {
|
|
9453
9477
|
grid-template-columns: 44px var(--_tree-disclosure-size) auto minmax(0, 1fr) auto;
|
|
9454
9478
|
}
|
|
9455
|
-
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .actions[data-v-
|
|
9479
|
+
html[data-ui-input-modality="touch"] [data-component~="ui-tree-item"] .actions[data-v-dc15f210] {
|
|
9456
9480
|
grid-column: 5;
|
|
9457
9481
|
}
|
|
9458
9482
|
html[data-ui-input-modality="touch"]
|
|
9459
9483
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9460
|
-
> .row[data-v-
|
|
9484
|
+
> .row[data-v-dc15f210] {
|
|
9461
9485
|
grid-template-columns: 44px var(--_tree-disclosure-size) 44px auto minmax(0, 1fr) auto;
|
|
9462
9486
|
}
|
|
9463
9487
|
html[data-ui-input-modality="touch"]
|
|
9464
9488
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9465
9489
|
> .row
|
|
9466
|
-
> .actions[data-v-
|
|
9490
|
+
> .actions[data-v-dc15f210] {
|
|
9467
9491
|
grid-column: 6;
|
|
9468
9492
|
}
|
|
9469
9493
|
}
|
|
9470
9494
|
@media (prefers-reduced-motion: reduce) {
|
|
9471
|
-
.row[data-v-
|
|
9472
|
-
.disclosure-icon[data-v-
|
|
9473
|
-
.drag-handle[data-v-
|
|
9495
|
+
.row[data-v-dc15f210],
|
|
9496
|
+
.disclosure-icon[data-v-dc15f210],
|
|
9497
|
+
.drag-handle[data-v-dc15f210] {
|
|
9474
9498
|
transition: none;
|
|
9475
9499
|
}
|
|
9476
9500
|
}
|
|
9477
9501
|
@media (forced-colors: active) {
|
|
9478
|
-
[data-component~="ui-tree-item"]:focus-visible > .row[data-v-
|
|
9502
|
+
[data-component~="ui-tree-item"]:focus-visible > .row[data-v-dc15f210] {
|
|
9479
9503
|
outline: var(--ui-focus-width) solid Highlight;
|
|
9480
9504
|
outline-offset: calc(-1 * var(--ui-focus-width));
|
|
9481
9505
|
}
|
|
9482
9506
|
[data-component~="ui-tree-item"][data-ui-tree-item-state~="selected"]:not(:focus-visible):not([aria-disabled="true"])
|
|
9483
|
-
> .row[data-v-
|
|
9507
|
+
> .row[data-v-dc15f210] {
|
|
9484
9508
|
outline: var(--ui-border-width) solid Highlight;
|
|
9485
9509
|
outline-offset: calc(-1 * var(--ui-border-width));
|
|
9486
9510
|
}
|
|
9487
9511
|
}
|
|
9488
9512
|
|
|
9489
9513
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
9490
|
-
[data-component~="ui-tree-item"][hidden][data-v-
|
|
9514
|
+
[data-component~="ui-tree-item"][hidden][data-v-dc15f210] {
|
|
9491
9515
|
display: none;
|
|
9492
9516
|
}
|
|
9493
9517
|
/* The editor surface owns its renderer canvas. Existing hooks retain their defaults. */
|