@threadlabs/looma 0.25.6 → 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-tree-item/ui-tree-item.html +14 -0
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/styles/ui-tree-item.css +13 -0
- package/vanilla/UiTreeItem.d.ts +1 -0
- package/vanilla/UiTreeItem.js +1 -1
- package/vue/UiTreeItem.d.ts +9 -0
- package/vue/UiTreeItem.vue +35 -0
- package/vue/chunks/UiTreeItem.js +24 -1
- package/vue/components.css +115 -100
package/vue/components.css
CHANGED
|
@@ -8952,7 +8952,7 @@ to {
|
|
|
8952
8952
|
syntax: "*";
|
|
8953
8953
|
inherits: false;
|
|
8954
8954
|
}
|
|
8955
|
-
[data-component~="ui-tree-item"][data-v-
|
|
8955
|
+
[data-component~="ui-tree-item"][data-v-dc15f210] {
|
|
8956
8956
|
/* Hooks do not inherit, so the parts below read them from the root. The tree's density
|
|
8957
8957
|
sets the defaults, in --_ui-default-*. */
|
|
8958
8958
|
--_ui-tree-item-min-block-size: var(
|
|
@@ -8974,7 +8974,7 @@ to {
|
|
|
8974
8974
|
min-inline-size: 0;
|
|
8975
8975
|
margin-inline-start: calc(var(--_ui-tree-item-indent-step, 0) * var(--_ui-tree-indent, 16px));
|
|
8976
8976
|
}
|
|
8977
|
-
.row[data-v-
|
|
8977
|
+
.row[data-v-dc15f210] {
|
|
8978
8978
|
position: relative;
|
|
8979
8979
|
display: grid;
|
|
8980
8980
|
grid-template-columns: var(--_tree-disclosure-size) auto minmax(0, 1fr);
|
|
@@ -8991,54 +8991,54 @@ to {
|
|
|
8991
8991
|
box-shadow var(--ui-motion-fast) var(--ui-motion-ease),
|
|
8992
8992
|
min-block-size var(--ui-motion-base) var(--ui-motion-ease);
|
|
8993
8993
|
}
|
|
8994
|
-
.row[data-v-
|
|
8995
|
-
.row[data-v-
|
|
8994
|
+
.row[data-v-dc15f210]:hover,
|
|
8995
|
+
.row[data-v-dc15f210]:focus-within {
|
|
8996
8996
|
color: var(--ui-text-primary);
|
|
8997
8997
|
background: var(--ui-surface-muted);
|
|
8998
8998
|
}
|
|
8999
8999
|
|
|
9000
9000
|
/* Selection is the same surface recipe as destination and choice rows. */
|
|
9001
|
-
[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] {
|
|
9002
9002
|
color: var(--ui-selection-text);
|
|
9003
9003
|
background: var(--ui-selection-surface);
|
|
9004
9004
|
}
|
|
9005
9005
|
[data-component~="ui-tree-item"][data-ui-tree-item-state~="selected"]:not([aria-disabled="true"])
|
|
9006
9006
|
> .row
|
|
9007
|
-
> .leading[data-v-
|
|
9007
|
+
> .leading[data-v-dc15f210] {
|
|
9008
9008
|
color: var(--ui-selection-text);
|
|
9009
9009
|
}
|
|
9010
|
-
[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] {
|
|
9011
9011
|
color: var(--ui-disabled-text);
|
|
9012
9012
|
background: var(--ui-disabled-surface);
|
|
9013
9013
|
}
|
|
9014
|
-
[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] {
|
|
9015
9015
|
opacity: 0.42;
|
|
9016
9016
|
}
|
|
9017
|
-
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-
|
|
9018
|
-
[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] {
|
|
9019
9019
|
opacity: 0.42;
|
|
9020
9020
|
}
|
|
9021
|
-
[data-component~="ui-tree-item"][data-v-
|
|
9021
|
+
[data-component~="ui-tree-item"][data-v-dc15f210]:focus {
|
|
9022
9022
|
outline: none;
|
|
9023
9023
|
}
|
|
9024
|
-
[data-component~="ui-tree-item"]:focus-visible .row[data-v-
|
|
9024
|
+
[data-component~="ui-tree-item"]:focus-visible .row[data-v-dc15f210] {
|
|
9025
9025
|
box-shadow: 0 0 0 var(--ui-focus-width) var(--ui-focus-ring);
|
|
9026
9026
|
}
|
|
9027
9027
|
|
|
9028
9028
|
/* Child combinators: drop feedback belongs to this item's own row, not the rows nested in it. */
|
|
9029
|
-
[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] {
|
|
9030
9030
|
background: var(--ui-accent-subtle);
|
|
9031
9031
|
box-shadow: inset 0 0 0 var(--ui-accent-line-width)
|
|
9032
9032
|
var(--_ui-tree-drop-color, var(--ui-accent-solid));
|
|
9033
9033
|
}
|
|
9034
|
-
.disclosure[data-v-
|
|
9035
|
-
.disclosure-spacer[data-v-
|
|
9034
|
+
.disclosure[data-v-dc15f210],
|
|
9035
|
+
.disclosure-spacer[data-v-dc15f210] {
|
|
9036
9036
|
grid-column: 1;
|
|
9037
9037
|
grid-row: 1;
|
|
9038
9038
|
inline-size: var(--_tree-disclosure-size);
|
|
9039
9039
|
block-size: 28px;
|
|
9040
9040
|
}
|
|
9041
|
-
.disclosure[data-v-
|
|
9041
|
+
.disclosure[data-v-dc15f210] {
|
|
9042
9042
|
display: grid;
|
|
9043
9043
|
/* Start-aligned: the chevron's ink, not its hit area, aligns with the content above it. */
|
|
9044
9044
|
place-items: center start;
|
|
@@ -9049,10 +9049,10 @@ to {
|
|
|
9049
9049
|
border-radius: var(--ui-radius-sm);
|
|
9050
9050
|
cursor: pointer;
|
|
9051
9051
|
}
|
|
9052
|
-
.disclosure[hidden][data-v-
|
|
9052
|
+
.disclosure[hidden][data-v-dc15f210] {
|
|
9053
9053
|
display: none;
|
|
9054
9054
|
}
|
|
9055
|
-
.selection-hit[data-v-
|
|
9055
|
+
.selection-hit[data-v-dc15f210] {
|
|
9056
9056
|
display: none;
|
|
9057
9057
|
grid-column: 2;
|
|
9058
9058
|
grid-row: 1;
|
|
@@ -9061,29 +9061,29 @@ to {
|
|
|
9061
9061
|
block-size: var(--_ui-tree-item-min-block-size, var(--_tree-row-min-height));
|
|
9062
9062
|
cursor: pointer;
|
|
9063
9063
|
}
|
|
9064
|
-
.selection-checkbox[data-v-
|
|
9064
|
+
.selection-checkbox[data-v-dc15f210] {
|
|
9065
9065
|
inline-size: 1rem;
|
|
9066
9066
|
block-size: 1rem;
|
|
9067
9067
|
margin: 0;
|
|
9068
9068
|
accent-color: var(--ui-accent-solid);
|
|
9069
9069
|
}
|
|
9070
|
-
[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] {
|
|
9071
9071
|
grid-template-columns: var(--_tree-disclosure-size) 1.25rem auto minmax(0, 1fr);
|
|
9072
9072
|
}
|
|
9073
|
-
[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] {
|
|
9074
9074
|
display: grid;
|
|
9075
9075
|
}
|
|
9076
|
-
[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] {
|
|
9077
9077
|
grid-column: 3;
|
|
9078
9078
|
}
|
|
9079
|
-
[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] {
|
|
9080
9080
|
grid-column: 4;
|
|
9081
9081
|
}
|
|
9082
|
-
.disclosure[data-v-
|
|
9082
|
+
.disclosure[data-v-dc15f210]:hover {
|
|
9083
9083
|
color: var(--ui-text-primary);
|
|
9084
9084
|
background: var(--ui-surface-elevated);
|
|
9085
9085
|
}
|
|
9086
|
-
.disclosure-icon[data-v-
|
|
9086
|
+
.disclosure-icon[data-v-dc15f210] {
|
|
9087
9087
|
display: grid;
|
|
9088
9088
|
place-items: center;
|
|
9089
9089
|
inline-size: 12px;
|
|
@@ -9091,7 +9091,7 @@ to {
|
|
|
9091
9091
|
transform: rotate(-90deg);
|
|
9092
9092
|
transition: transform var(--ui-motion-fast) var(--ui-motion-ease);
|
|
9093
9093
|
}
|
|
9094
|
-
.disclosure-icon[data-v-
|
|
9094
|
+
.disclosure-icon[data-v-dc15f210]::before {
|
|
9095
9095
|
display: block;
|
|
9096
9096
|
inline-size: 0.375rem;
|
|
9097
9097
|
block-size: 0.375rem;
|
|
@@ -9101,19 +9101,19 @@ to {
|
|
|
9101
9101
|
/* A chevron's ink sits below its box centre; lift it so it centres optically (in either rotation). */
|
|
9102
9102
|
transform: translateY(-20%) rotate(45deg);
|
|
9103
9103
|
}
|
|
9104
|
-
[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] {
|
|
9105
9105
|
transform: rotate(0deg);
|
|
9106
9106
|
}
|
|
9107
9107
|
|
|
9108
9108
|
/* Lucide grip-vertical, filling the handle as in Looma 0.2. */
|
|
9109
|
-
.drag-handle svg[data-v-
|
|
9109
|
+
.drag-handle svg[data-v-dc15f210] {
|
|
9110
9110
|
display: block;
|
|
9111
9111
|
inline-size: 100%;
|
|
9112
9112
|
block-size: 100%;
|
|
9113
9113
|
}
|
|
9114
9114
|
|
|
9115
9115
|
/* Slotted content is outside this scope, so :has() cannot see it; hide only a truly empty slot. */
|
|
9116
|
-
.leading[data-v-
|
|
9116
|
+
.leading[data-v-dc15f210] {
|
|
9117
9117
|
display: inline-grid;
|
|
9118
9118
|
place-items: center;
|
|
9119
9119
|
grid-column: 2;
|
|
@@ -9126,12 +9126,12 @@ to {
|
|
|
9126
9126
|
position: relative;
|
|
9127
9127
|
z-index: 1;
|
|
9128
9128
|
}
|
|
9129
|
-
.leading[data-v-
|
|
9129
|
+
.leading[data-v-dc15f210]:empty {
|
|
9130
9130
|
display: none;
|
|
9131
9131
|
}
|
|
9132
9132
|
|
|
9133
9133
|
/* Icons match the label's size (as in Knit's tree): an unsized SVG would otherwise render 300×150. */
|
|
9134
|
-
svg[data-v-
|
|
9134
|
+
svg[data-v-dc15f210-s],img[data-v-dc15f210-s] {
|
|
9135
9135
|
display: block;
|
|
9136
9136
|
inline-size: 1em;
|
|
9137
9137
|
block-size: 1em;
|
|
@@ -9140,7 +9140,7 @@ svg[data-v-f2ec0a81-s],img[data-v-f2ec0a81-s] {
|
|
|
9140
9140
|
|
|
9141
9141
|
/* The label spans the row's height and centres its content, so slotted content (a link) can
|
|
9142
9142
|
stretch to fill the row as its own hit area; the padding tokens remove the inset. */
|
|
9143
|
-
.label[data-v-
|
|
9143
|
+
.label[data-v-dc15f210] {
|
|
9144
9144
|
grid-column: 3;
|
|
9145
9145
|
grid-row: 1;
|
|
9146
9146
|
align-self: stretch;
|
|
@@ -9158,7 +9158,7 @@ svg[data-v-f2ec0a81-s],img[data-v-f2ec0a81-s] {
|
|
|
9158
9158
|
|
|
9159
9159
|
/* Slotted label content fills the cell, so a link is the row's hit area rather than sizing to
|
|
9160
9160
|
its own text and reading as overflow. */
|
|
9161
|
-
.label-text[data-v-
|
|
9161
|
+
.label-text[data-v-dc15f210] {
|
|
9162
9162
|
display: flex;
|
|
9163
9163
|
align-items: center;
|
|
9164
9164
|
/* Stretches, so slotted content can still be the row's full-height hit area. */
|
|
@@ -9168,16 +9168,17 @@ svg[data-v-f2ec0a81-s],img[data-v-f2ec0a81-s] {
|
|
|
9168
9168
|
inline-size: 100%;
|
|
9169
9169
|
white-space: nowrap;
|
|
9170
9170
|
}
|
|
9171
|
-
.label-text > [data-v-
|
|
9171
|
+
.label-text > [data-v-dc15f210-s] {
|
|
9172
9172
|
flex: 1 1 auto;
|
|
9173
9173
|
min-inline-size: 0;
|
|
9174
9174
|
}
|
|
9175
9175
|
|
|
9176
9176
|
/* The controls sit over the label's end, so the text fades out where they begin. The fade is
|
|
9177
9177
|
the truncation mark while it shows: an ellipsis under it would read as a second one. */
|
|
9178
|
-
.row:hover > .label[data-v-
|
|
9179
|
-
.row:focus-within > .label[data-v-
|
|
9180
|
-
[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] {
|
|
9181
9182
|
text-overflow: clip;
|
|
9182
9183
|
mask-image: linear-gradient(
|
|
9183
9184
|
to right,
|
|
@@ -9185,9 +9186,12 @@ svg[data-v-f2ec0a81-s],img[data-v-f2ec0a81-s] {
|
|
|
9185
9186
|
transparent calc(100% - var(--_tree-actions-width, 1.75rem))
|
|
9186
9187
|
);
|
|
9187
9188
|
}
|
|
9188
|
-
.row:hover > .label[data-v-
|
|
9189
|
-
.row:focus-within > .label[data-v-
|
|
9190
|
-
[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) {
|
|
9191
9195
|
mask-image: linear-gradient(
|
|
9192
9196
|
to left,
|
|
9193
9197
|
#000 calc(100% - var(--_tree-actions-width, 1.75rem) - var(--ui-space-1)),
|
|
@@ -9199,10 +9203,10 @@ svg[data-v-f2ec0a81-s],img[data-v-f2ec0a81-s] {
|
|
|
9199
9203
|
there, and starts again. Only when it actually overflows — the controller measures by how
|
|
9200
9204
|
much — after the controls have taken their place over its end — and hands over the distance
|
|
9201
9205
|
and a duration from it, so every name moves at the same speed. */
|
|
9202
|
-
.row[data-ui-marquee] > .label > .label-text[data-v-
|
|
9206
|
+
.row[data-ui-marquee] > .label > .label-text[data-v-dc15f210] {
|
|
9203
9207
|
/* Once per pass: the controller restarts it after a rest at the end, so the name holds still
|
|
9204
9208
|
long enough to read rather than sliding back and forth. */
|
|
9205
|
-
animation: ui-tree-item-marquee-
|
|
9209
|
+
animation: ui-tree-item-marquee-dc15f210 var(--_marquee-duration) linear 0.5s 1 normal forwards;
|
|
9206
9210
|
will-change: transform;
|
|
9207
9211
|
}
|
|
9208
9212
|
|
|
@@ -9210,7 +9214,7 @@ svg[data-v-f2ec0a81-s],img[data-v-f2ec0a81-s] {
|
|
|
9210
9214
|
slides, the label reaches back under the icon (the controller measures how far) with its text
|
|
9211
9215
|
where it was, and fades out across the gap before the icon, fully gone where the icon begins
|
|
9212
9216
|
to cover it: the name slips under the icon rather than stopping at a hard edge beside it. */
|
|
9213
|
-
.row[data-ui-marquee] > .label[data-v-
|
|
9217
|
+
.row[data-ui-marquee] > .label[data-v-dc15f210] {
|
|
9214
9218
|
margin-inline-start: calc(-1 * var(--_marquee-lead, 0px));
|
|
9215
9219
|
padding-inline-start: calc(
|
|
9216
9220
|
var(--_marquee-lead, 0px) + var(--_ui-tree-item-label-padding-inline, var(--ui-space-2))
|
|
@@ -9225,7 +9229,7 @@ svg[data-v-f2ec0a81-s],img[data-v-f2ec0a81-s] {
|
|
|
9225
9229
|
transparent calc(100% - var(--_tree-actions-width, 1.75rem))
|
|
9226
9230
|
);
|
|
9227
9231
|
}
|
|
9228
|
-
.row[data-ui-marquee] > .label[data-v-
|
|
9232
|
+
.row[data-ui-marquee] > .label[data-v-dc15f210]:dir(rtl) {
|
|
9229
9233
|
mask-image: linear-gradient(
|
|
9230
9234
|
to left,
|
|
9231
9235
|
transparent var(--_marquee-icon-width, 0px),
|
|
@@ -9236,7 +9240,7 @@ svg[data-v-f2ec0a81-s],img[data-v-f2ec0a81-s] {
|
|
|
9236
9240
|
transparent calc(100% - var(--_tree-actions-width, 1.75rem))
|
|
9237
9241
|
);
|
|
9238
9242
|
}
|
|
9239
|
-
@keyframes ui-tree-item-marquee-
|
|
9243
|
+
@keyframes ui-tree-item-marquee-dc15f210 {
|
|
9240
9244
|
from {
|
|
9241
9245
|
transform: translateX(0);
|
|
9242
9246
|
}
|
|
@@ -9247,15 +9251,15 @@ to {
|
|
|
9247
9251
|
|
|
9248
9252
|
/* Reduced motion keeps the fade, which already says the name continues. */
|
|
9249
9253
|
@media (prefers-reduced-motion: reduce) {
|
|
9250
|
-
.row[data-ui-marquee] > .label > .label-text[data-v-
|
|
9254
|
+
.row[data-ui-marquee] > .label > .label-text[data-v-dc15f210] {
|
|
9251
9255
|
animation: none;
|
|
9252
9256
|
}
|
|
9253
9257
|
}
|
|
9254
|
-
.row:hover > .label > [data-v-
|
|
9255
|
-
.row:focus-within > .label > [data-v-
|
|
9258
|
+
.row:hover > .label > [data-v-dc15f210-s],
|
|
9259
|
+
.row:focus-within > .label > [data-v-dc15f210-s] {
|
|
9256
9260
|
text-overflow: clip;
|
|
9257
9261
|
}
|
|
9258
|
-
.actions[data-v-
|
|
9262
|
+
.actions[data-v-dc15f210] {
|
|
9259
9263
|
position: absolute;
|
|
9260
9264
|
z-index: 1;
|
|
9261
9265
|
inset-block: 0;
|
|
@@ -9267,19 +9271,20 @@ to {
|
|
|
9267
9271
|
pointer-events: none;
|
|
9268
9272
|
transition: opacity var(--ui-motion-fast) var(--ui-motion-ease);
|
|
9269
9273
|
}
|
|
9270
|
-
.row:hover > .actions[data-v-
|
|
9271
|
-
.row:focus-within > .actions[data-v-
|
|
9272
|
-
[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] {
|
|
9273
9278
|
opacity: 1;
|
|
9274
9279
|
pointer-events: auto;
|
|
9275
9280
|
}
|
|
9276
9281
|
|
|
9277
9282
|
/* Without hover there is no reveal, so the controls keep their own column. */
|
|
9278
9283
|
@media (hover: none), (pointer: coarse) {
|
|
9279
|
-
.row[data-v-
|
|
9284
|
+
.row[data-v-dc15f210] {
|
|
9280
9285
|
grid-template-columns: var(--_tree-disclosure-size) auto minmax(0, 1fr) auto;
|
|
9281
9286
|
}
|
|
9282
|
-
.actions[data-v-
|
|
9287
|
+
.actions[data-v-dc15f210] {
|
|
9283
9288
|
position: static;
|
|
9284
9289
|
grid-column: 4;
|
|
9285
9290
|
grid-row: 1;
|
|
@@ -9288,13 +9293,13 @@ to {
|
|
|
9288
9293
|
opacity: 1;
|
|
9289
9294
|
pointer-events: auto;
|
|
9290
9295
|
}
|
|
9291
|
-
.row:is(:hover, :focus-within) > .label[data-v-
|
|
9292
|
-
.row:is(:hover, :focus-within) > .label[data-v-
|
|
9293
|
-
[data-component~="ui-tree-item"][data-move-source] > .row > .label[data-v-
|
|
9294
|
-
[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) {
|
|
9295
9300
|
mask-image: none;
|
|
9296
9301
|
}
|
|
9297
|
-
.row[data-ui-marquee] > .label[data-v-
|
|
9302
|
+
.row[data-ui-marquee] > .label[data-v-dc15f210] {
|
|
9298
9303
|
mask-image: linear-gradient(
|
|
9299
9304
|
to right,
|
|
9300
9305
|
transparent var(--_marquee-icon-width, 0px),
|
|
@@ -9303,7 +9308,17 @@ to {
|
|
|
9303
9308
|
)
|
|
9304
9309
|
);
|
|
9305
9310
|
}
|
|
9306
|
-
|
|
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) {
|
|
9307
9322
|
mask-image: linear-gradient(
|
|
9308
9323
|
to left,
|
|
9309
9324
|
transparent var(--_marquee-icon-width, 0px),
|
|
@@ -9312,10 +9327,10 @@ to {
|
|
|
9312
9327
|
)
|
|
9313
9328
|
);
|
|
9314
9329
|
}
|
|
9315
|
-
[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] {
|
|
9316
9331
|
grid-template-columns: var(--_tree-disclosure-size) 1.25rem auto minmax(0, 1fr) auto;
|
|
9317
9332
|
}
|
|
9318
|
-
[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] {
|
|
9319
9334
|
grid-column: 5;
|
|
9320
9335
|
}
|
|
9321
9336
|
}
|
|
@@ -9324,7 +9339,7 @@ to {
|
|
|
9324
9339
|
empty column, right before the icon; a branch's disclosure is there, so its handle sits just
|
|
9325
9340
|
outside the row. It is bare until pointed at: a resting surface behind it read as a faint
|
|
9326
9341
|
patch rather than as a control. */
|
|
9327
|
-
.drag-handle[data-v-
|
|
9342
|
+
.drag-handle[data-v-dc15f210] {
|
|
9328
9343
|
position: absolute;
|
|
9329
9344
|
z-index: 2;
|
|
9330
9345
|
inset-block-start: 50%;
|
|
@@ -9345,24 +9360,24 @@ to {
|
|
|
9345
9360
|
transform: translateY(-50%);
|
|
9346
9361
|
transition: opacity var(--ui-motion-fast) var(--ui-motion-ease);
|
|
9347
9362
|
}
|
|
9348
|
-
.row:hover .drag-handle[data-v-
|
|
9349
|
-
.drag-handle[data-v-
|
|
9350
|
-
.drag-handle[data-v-
|
|
9351
|
-
[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] {
|
|
9352
9367
|
opacity: 1;
|
|
9353
9368
|
}
|
|
9354
|
-
[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] {
|
|
9355
9370
|
inset-inline-start: calc(-1 * var(--_tree-disclosure-size) - 2px);
|
|
9356
9371
|
}
|
|
9357
|
-
.drag-handle[data-v-
|
|
9358
|
-
.drag-handle[data-v-
|
|
9372
|
+
.drag-handle[data-v-dc15f210]:hover,
|
|
9373
|
+
.drag-handle[data-v-dc15f210]:focus-visible {
|
|
9359
9374
|
color: var(--ui-text-primary);
|
|
9360
9375
|
background: var(--ui-surface-hover);
|
|
9361
9376
|
}
|
|
9362
|
-
.drag-handle[data-v-
|
|
9377
|
+
.drag-handle[data-v-dc15f210]:active {
|
|
9363
9378
|
cursor: grabbing;
|
|
9364
9379
|
}
|
|
9365
|
-
.drop-indicator[data-v-
|
|
9380
|
+
.drop-indicator[data-v-dc15f210] {
|
|
9366
9381
|
position: absolute;
|
|
9367
9382
|
z-index: 3;
|
|
9368
9383
|
inset-inline: 1px;
|
|
@@ -9372,8 +9387,8 @@ to {
|
|
|
9372
9387
|
background: var(--_ui-tree-drop-color, var(--ui-accent-solid));
|
|
9373
9388
|
pointer-events: none;
|
|
9374
9389
|
}
|
|
9375
|
-
.drop-indicator[data-v-
|
|
9376
|
-
.drop-indicator[data-v-
|
|
9390
|
+
.drop-indicator[data-v-dc15f210]::before,
|
|
9391
|
+
.drop-indicator[data-v-dc15f210]::after {
|
|
9377
9392
|
content: "";
|
|
9378
9393
|
position: absolute;
|
|
9379
9394
|
inset-block-start: 50%;
|
|
@@ -9384,34 +9399,34 @@ to {
|
|
|
9384
9399
|
background: var(--ui-surface-elevated);
|
|
9385
9400
|
transform: translateY(-50%);
|
|
9386
9401
|
}
|
|
9387
|
-
.drop-indicator[data-v-
|
|
9402
|
+
.drop-indicator[data-v-dc15f210]::before {
|
|
9388
9403
|
inset-inline-start: -1px;
|
|
9389
9404
|
}
|
|
9390
|
-
.drop-indicator[data-v-
|
|
9405
|
+
.drop-indicator[data-v-dc15f210]::after {
|
|
9391
9406
|
inset-inline-end: -1px;
|
|
9392
9407
|
}
|
|
9393
|
-
[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] {
|
|
9394
9409
|
display: block;
|
|
9395
9410
|
inset-block-start: calc(-0.5 * var(--ui-accent-line-width));
|
|
9396
9411
|
}
|
|
9397
|
-
[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] {
|
|
9398
9413
|
display: block;
|
|
9399
9414
|
inset-block-end: calc(-0.5 * var(--ui-accent-line-width));
|
|
9400
9415
|
}
|
|
9401
|
-
.children[hidden][data-v-
|
|
9416
|
+
.children[hidden][data-v-dc15f210] {
|
|
9402
9417
|
display: none;
|
|
9403
9418
|
}
|
|
9404
|
-
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] {
|
|
9405
9420
|
--_tree-row-min-height: 44px;
|
|
9406
9421
|
}
|
|
9407
|
-
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] {
|
|
9408
9423
|
grid-template-columns: 44px var(--_tree-disclosure-size) auto minmax(0, 1fr);
|
|
9409
9424
|
}
|
|
9410
|
-
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],
|
|
9411
9426
|
html[data-ui-input-modality="touch"]
|
|
9412
9427
|
[data-component~="ui-tree-item"][data-ui-tree-item-state~="isContainer"]
|
|
9413
9428
|
> .row
|
|
9414
|
-
> .drag-handle[data-v-
|
|
9429
|
+
> .drag-handle[data-v-dc15f210] {
|
|
9415
9430
|
position: relative;
|
|
9416
9431
|
grid-column: 1;
|
|
9417
9432
|
grid-row: 1;
|
|
@@ -9423,24 +9438,24 @@ html[data-ui-input-modality="touch"]
|
|
|
9423
9438
|
transform: none;
|
|
9424
9439
|
cursor: pointer;
|
|
9425
9440
|
}
|
|
9426
|
-
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] {
|
|
9427
9442
|
grid-column: 2;
|
|
9428
9443
|
}
|
|
9429
|
-
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] {
|
|
9430
9445
|
grid-column: 3;
|
|
9431
9446
|
}
|
|
9432
|
-
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] {
|
|
9433
9448
|
grid-column: 4;
|
|
9434
9449
|
}
|
|
9435
9450
|
html[data-ui-input-modality="touch"]
|
|
9436
9451
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9437
|
-
> .row[data-v-
|
|
9452
|
+
> .row[data-v-dc15f210] {
|
|
9438
9453
|
grid-template-columns: 44px var(--_tree-disclosure-size) 44px auto minmax(0, 1fr);
|
|
9439
9454
|
}
|
|
9440
9455
|
html[data-ui-input-modality="touch"]
|
|
9441
9456
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9442
9457
|
> .row
|
|
9443
|
-
> .selection-hit[data-v-
|
|
9458
|
+
> .selection-hit[data-v-dc15f210] {
|
|
9444
9459
|
grid-column: 3;
|
|
9445
9460
|
inline-size: 44px;
|
|
9446
9461
|
block-size: 44px;
|
|
@@ -9448,55 +9463,55 @@ html[data-ui-input-modality="touch"]
|
|
|
9448
9463
|
html[data-ui-input-modality="touch"]
|
|
9449
9464
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9450
9465
|
> .row
|
|
9451
|
-
> .leading[data-v-
|
|
9466
|
+
> .leading[data-v-dc15f210] {
|
|
9452
9467
|
grid-column: 4;
|
|
9453
9468
|
}
|
|
9454
9469
|
html[data-ui-input-modality="touch"]
|
|
9455
9470
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9456
9471
|
> .row
|
|
9457
|
-
> .label[data-v-
|
|
9472
|
+
> .label[data-v-dc15f210] {
|
|
9458
9473
|
grid-column: 5;
|
|
9459
9474
|
}
|
|
9460
9475
|
@media (hover: none), (pointer: coarse) {
|
|
9461
|
-
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] {
|
|
9462
9477
|
grid-template-columns: 44px var(--_tree-disclosure-size) auto minmax(0, 1fr) auto;
|
|
9463
9478
|
}
|
|
9464
|
-
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] {
|
|
9465
9480
|
grid-column: 5;
|
|
9466
9481
|
}
|
|
9467
9482
|
html[data-ui-input-modality="touch"]
|
|
9468
9483
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9469
|
-
> .row[data-v-
|
|
9484
|
+
> .row[data-v-dc15f210] {
|
|
9470
9485
|
grid-template-columns: 44px var(--_tree-disclosure-size) 44px auto minmax(0, 1fr) auto;
|
|
9471
9486
|
}
|
|
9472
9487
|
html[data-ui-input-modality="touch"]
|
|
9473
9488
|
[data-component~="ui-tree-item"][data-selection-mode="multiple"]
|
|
9474
9489
|
> .row
|
|
9475
|
-
> .actions[data-v-
|
|
9490
|
+
> .actions[data-v-dc15f210] {
|
|
9476
9491
|
grid-column: 6;
|
|
9477
9492
|
}
|
|
9478
9493
|
}
|
|
9479
9494
|
@media (prefers-reduced-motion: reduce) {
|
|
9480
|
-
.row[data-v-
|
|
9481
|
-
.disclosure-icon[data-v-
|
|
9482
|
-
.drag-handle[data-v-
|
|
9495
|
+
.row[data-v-dc15f210],
|
|
9496
|
+
.disclosure-icon[data-v-dc15f210],
|
|
9497
|
+
.drag-handle[data-v-dc15f210] {
|
|
9483
9498
|
transition: none;
|
|
9484
9499
|
}
|
|
9485
9500
|
}
|
|
9486
9501
|
@media (forced-colors: active) {
|
|
9487
|
-
[data-component~="ui-tree-item"]:focus-visible > .row[data-v-
|
|
9502
|
+
[data-component~="ui-tree-item"]:focus-visible > .row[data-v-dc15f210] {
|
|
9488
9503
|
outline: var(--ui-focus-width) solid Highlight;
|
|
9489
9504
|
outline-offset: calc(-1 * var(--ui-focus-width));
|
|
9490
9505
|
}
|
|
9491
9506
|
[data-component~="ui-tree-item"][data-ui-tree-item-state~="selected"]:not(:focus-visible):not([aria-disabled="true"])
|
|
9492
|
-
> .row[data-v-
|
|
9507
|
+
> .row[data-v-dc15f210] {
|
|
9493
9508
|
outline: var(--ui-border-width) solid Highlight;
|
|
9494
9509
|
outline-offset: calc(-1 * var(--ui-border-width));
|
|
9495
9510
|
}
|
|
9496
9511
|
}
|
|
9497
9512
|
|
|
9498
9513
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
9499
|
-
[data-component~="ui-tree-item"][hidden][data-v-
|
|
9514
|
+
[data-component~="ui-tree-item"][hidden][data-v-dc15f210] {
|
|
9500
9515
|
display: none;
|
|
9501
9516
|
}
|
|
9502
9517
|
/* The editor surface owns its renderer canvas. Existing hooks retain their defaults. */
|