@vuetify/nightly 3.9.0-beta.1-dev.2025-07-02 → 3.9.0-beta.1-dev.2025-07-04
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/CHANGELOG.md +15 -3
- package/dist/json/attributes.json +3406 -3414
- package/dist/json/importMap-labs.json +12 -12
- package/dist/json/importMap.json +166 -166
- package/dist/json/tags.json +2 -4
- package/dist/json/web-types.json +6709 -6730
- package/dist/vuetify-labs.cjs +121 -61
- package/dist/vuetify-labs.css +4732 -4721
- package/dist/vuetify-labs.d.ts +106 -116
- package/dist/vuetify-labs.esm.js +121 -61
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +121 -61
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +121 -61
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +3631 -3620
- package/dist/vuetify.d.ts +106 -116
- package/dist/vuetify.esm.js +121 -61
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +121 -61
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +73 -59
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VDataTable/VDataTable.css +12 -1
- package/lib/components/VDataTable/VDataTable.d.ts +20 -38
- package/lib/components/VDataTable/VDataTable.sass +12 -2
- package/lib/components/VDataTable/VDataTableColumn.d.ts +9 -3
- package/lib/components/VDataTable/VDataTableColumn.js +12 -3
- package/lib/components/VDataTable/VDataTableColumn.js.map +1 -1
- package/lib/components/VDataTable/VDataTableHeaders.d.ts +0 -13
- package/lib/components/VDataTable/VDataTableHeaders.js +5 -4
- package/lib/components/VDataTable/VDataTableHeaders.js.map +1 -1
- package/lib/components/VDataTable/VDataTableRow.js +2 -0
- package/lib/components/VDataTable/VDataTableRow.js.map +1 -1
- package/lib/components/VDataTable/VDataTableServer.d.ts +10 -23
- package/lib/components/VDataTable/VDataTableVirtual.d.ts +10 -23
- package/lib/components/VDataTable/composables/headers.d.ts +22 -14
- package/lib/components/VDataTable/composables/headers.js +51 -22
- package/lib/components/VDataTable/composables/headers.js.map +1 -1
- package/lib/components/VDataTable/types.d.ts +3 -1
- package/lib/components/VDataTable/types.js.map +1 -1
- package/lib/components/VList/VListGroup.d.ts +13 -0
- package/lib/components/VList/VListGroup.js +2 -1
- package/lib/components/VList/VListGroup.js.map +1 -1
- package/lib/components/VList/VListItem.d.ts +6 -3
- package/lib/components/VList/VListItem.js +1 -1
- package/lib/components/VList/VListItem.js.map +1 -1
- package/lib/components/VTreeview/VTreeview.d.ts +6 -21
- package/lib/components/VTreeview/VTreeview.js +6 -9
- package/lib/components/VTreeview/VTreeview.js.map +1 -1
- package/lib/components/VTreeview/VTreeviewGroup.d.ts +13 -0
- package/lib/components/VTreeview/VTreeviewItem.d.ts +18 -9
- package/lib/components/VTreeview/VTreeviewItem.js +1 -1
- package/lib/components/VTreeview/VTreeviewItem.js.map +1 -1
- package/lib/composables/nested/nested.d.ts +7 -4
- package/lib/composables/nested/nested.js +16 -6
- package/lib/composables/nested/nested.js.map +1 -1
- package/lib/composables/nested/selectStrategies.d.ts +2 -1
- package/lib/composables/nested/selectStrategies.js +22 -11
- package/lib/composables/nested/selectStrategies.js.map +1 -1
- package/lib/entry-bundler.js +1 -1
- package/lib/framework.d.ts +61 -58
- package/lib/framework.js +1 -1
- package/package.json +1 -1
package/dist/vuetify.esm.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Vuetify v3.9.0-beta.1-dev.2025-07-
|
2
|
+
* Vuetify v3.9.0-beta.1-dev.2025-07-04
|
3
3
|
* Forged by John Leider
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
@@ -9100,7 +9100,7 @@ const independentSelectStrategy = mandatory => {
|
|
9100
9100
|
selected.set(id, value ? 'on' : 'off');
|
9101
9101
|
return selected;
|
9102
9102
|
},
|
9103
|
-
in: (v, children, parents) => {
|
9103
|
+
in: (v, children, parents, disabled) => {
|
9104
9104
|
const map = new Map();
|
9105
9105
|
for (const id of v || []) {
|
9106
9106
|
strategy.select({
|
@@ -9108,7 +9108,8 @@ const independentSelectStrategy = mandatory => {
|
|
9108
9108
|
value: true,
|
9109
9109
|
selected: map,
|
9110
9110
|
children,
|
9111
|
-
parents
|
9111
|
+
parents,
|
9112
|
+
disabled
|
9112
9113
|
});
|
9113
9114
|
}
|
9114
9115
|
return map;
|
@@ -9140,9 +9141,9 @@ const independentSingleSelectStrategy = mandatory => {
|
|
9140
9141
|
selected: singleSelected
|
9141
9142
|
});
|
9142
9143
|
},
|
9143
|
-
in: (v, children, parents) => {
|
9144
|
+
in: (v, children, parents, disabled) => {
|
9144
9145
|
if (v?.length) {
|
9145
|
-
return parentStrategy.in(v.slice(0, 1), children, parents);
|
9146
|
+
return parentStrategy.in(v.slice(0, 1), children, parents, disabled);
|
9146
9147
|
}
|
9147
9148
|
return new Map();
|
9148
9149
|
},
|
@@ -9208,23 +9209,32 @@ const classicSelectStrategy = mandatory => {
|
|
9208
9209
|
value,
|
9209
9210
|
selected,
|
9210
9211
|
children,
|
9211
|
-
parents
|
9212
|
+
parents,
|
9213
|
+
disabled
|
9212
9214
|
} = _ref6;
|
9213
9215
|
id = toRaw(id);
|
9214
9216
|
const original = new Map(selected);
|
9215
9217
|
const items = [id];
|
9216
9218
|
while (items.length) {
|
9217
9219
|
const item = items.shift();
|
9218
|
-
|
9220
|
+
if (!disabled.has(item)) {
|
9221
|
+
selected.set(toRaw(item), value ? 'on' : 'off');
|
9222
|
+
}
|
9219
9223
|
if (children.has(item)) {
|
9220
9224
|
items.push(...children.get(item));
|
9221
9225
|
}
|
9222
9226
|
}
|
9223
9227
|
let parent = toRaw(parents.get(id));
|
9224
9228
|
while (parent) {
|
9225
|
-
|
9226
|
-
|
9227
|
-
|
9229
|
+
let everySelected = true;
|
9230
|
+
let noneSelected = true;
|
9231
|
+
for (const child of children.get(parent)) {
|
9232
|
+
const cid = toRaw(child);
|
9233
|
+
if (disabled.has(cid)) continue;
|
9234
|
+
if (selected.get(cid) !== 'on') everySelected = false;
|
9235
|
+
if (selected.has(cid) && selected.get(cid) !== 'off') noneSelected = false;
|
9236
|
+
if (!everySelected && !noneSelected) break;
|
9237
|
+
}
|
9228
9238
|
selected.set(parent, everySelected ? 'on' : noneSelected ? 'off' : 'indeterminate');
|
9229
9239
|
parent = toRaw(parents.get(parent));
|
9230
9240
|
}
|
@@ -9241,7 +9251,7 @@ const classicSelectStrategy = mandatory => {
|
|
9241
9251
|
}
|
9242
9252
|
return selected;
|
9243
9253
|
},
|
9244
|
-
in: (v, children, parents) => {
|
9254
|
+
in: (v, children, parents, disabled) => {
|
9245
9255
|
let map = new Map();
|
9246
9256
|
for (const id of v || []) {
|
9247
9257
|
map = strategy.select({
|
@@ -9249,7 +9259,8 @@ const classicSelectStrategy = mandatory => {
|
|
9249
9259
|
value: true,
|
9250
9260
|
selected: map,
|
9251
9261
|
children,
|
9252
|
-
parents
|
9262
|
+
parents,
|
9263
|
+
disabled
|
9253
9264
|
});
|
9254
9265
|
}
|
9255
9266
|
return map;
|
@@ -9296,8 +9307,9 @@ const emptyNested = {
|
|
9296
9307
|
root: {
|
9297
9308
|
register: () => null,
|
9298
9309
|
unregister: () => null,
|
9299
|
-
parents: ref(new Map()),
|
9300
9310
|
children: ref(new Map()),
|
9311
|
+
parents: ref(new Map()),
|
9312
|
+
disabled: ref(new Set()),
|
9301
9313
|
open: () => null,
|
9302
9314
|
openOnSelect: () => null,
|
9303
9315
|
activate: () => null,
|
@@ -9326,6 +9338,7 @@ const useNested = props => {
|
|
9326
9338
|
let isUnmounted = false;
|
9327
9339
|
const children = shallowRef(new Map());
|
9328
9340
|
const parents = shallowRef(new Map());
|
9341
|
+
const disabled = shallowRef(new Set());
|
9329
9342
|
const opened = useProxiedModel(props, 'opened', props.opened, v => new Set(Array.isArray(v) ? v.map(i => toRaw(i)) : v), v => [...v.values()]);
|
9330
9343
|
const activeStrategy = computed(() => {
|
9331
9344
|
if (typeof props.activeStrategy === 'object') return props.activeStrategy;
|
@@ -9374,7 +9387,7 @@ const useNested = props => {
|
|
9374
9387
|
}
|
9375
9388
|
});
|
9376
9389
|
const activated = useProxiedModel(props, 'activated', props.activated, v => activeStrategy.value.in(v, children.value, parents.value), v => activeStrategy.value.out(v, children.value, parents.value));
|
9377
|
-
const selected = useProxiedModel(props, 'selected', props.selected, v => selectStrategy.value.in(v, children.value, parents.value), v => selectStrategy.value.out(v, children.value, parents.value));
|
9390
|
+
const selected = useProxiedModel(props, 'selected', props.selected, v => selectStrategy.value.in(v, children.value, parents.value, disabled.value), v => selectStrategy.value.out(v, children.value, parents.value));
|
9378
9391
|
onBeforeUnmount(() => {
|
9379
9392
|
isUnmounted = true;
|
9380
9393
|
});
|
@@ -9404,7 +9417,7 @@ const useNested = props => {
|
|
9404
9417
|
}
|
9405
9418
|
return arr;
|
9406
9419
|
}),
|
9407
|
-
register: (id, parentId, isGroup) => {
|
9420
|
+
register: (id, parentId, isDisabled, isGroup) => {
|
9408
9421
|
if (nodeIds.has(id)) {
|
9409
9422
|
const path = getPath(id).map(String).join(' -> ');
|
9410
9423
|
const newPath = getPath(parentId).concat(id).map(String).join(' -> ');
|
@@ -9414,6 +9427,7 @@ const useNested = props => {
|
|
9414
9427
|
nodeIds.add(id);
|
9415
9428
|
}
|
9416
9429
|
parentId && id !== parentId && parents.value.set(id, parentId);
|
9430
|
+
isDisabled && disabled.value.add(id);
|
9417
9431
|
isGroup && children.value.set(id, []);
|
9418
9432
|
if (parentId != null) {
|
9419
9433
|
children.value.set(parentId, [...(children.value.get(parentId) || []), id]);
|
@@ -9423,6 +9437,7 @@ const useNested = props => {
|
|
9423
9437
|
if (isUnmounted) return;
|
9424
9438
|
nodeIds.delete(id);
|
9425
9439
|
children.value.delete(id);
|
9440
|
+
disabled.value.delete(id);
|
9426
9441
|
const parent = parents.value.get(id);
|
9427
9442
|
if (parent) {
|
9428
9443
|
const list = children.value.get(parent) ?? [];
|
@@ -9472,6 +9487,7 @@ const useNested = props => {
|
|
9472
9487
|
selected: new Map(selected.value),
|
9473
9488
|
children: children.value,
|
9474
9489
|
parents: parents.value,
|
9490
|
+
disabled: disabled.value,
|
9475
9491
|
event
|
9476
9492
|
});
|
9477
9493
|
newSelected && (selected.value = newSelected);
|
@@ -9514,13 +9530,14 @@ const useNested = props => {
|
|
9514
9530
|
},
|
9515
9531
|
children,
|
9516
9532
|
parents,
|
9533
|
+
disabled,
|
9517
9534
|
getPath
|
9518
9535
|
}
|
9519
9536
|
};
|
9520
9537
|
provide(VNestedSymbol, nested);
|
9521
9538
|
return nested.root;
|
9522
9539
|
};
|
9523
|
-
const useNestedItem = (id, isGroup) => {
|
9540
|
+
const useNestedItem = (id, isDisabled, isGroup) => {
|
9524
9541
|
const parent = inject$1(VNestedSymbol, emptyNested);
|
9525
9542
|
const uidSymbol = Symbol('nested item');
|
9526
9543
|
const computedId = computed(() => toRaw(toValue(id)) ?? uidSymbol);
|
@@ -9540,10 +9557,14 @@ const useNestedItem = (id, isGroup) => {
|
|
9540
9557
|
isGroupActivator: parent.isGroupActivator
|
9541
9558
|
};
|
9542
9559
|
onBeforeMount(() => {
|
9543
|
-
!parent.isGroupActivator
|
9560
|
+
if (!parent.isGroupActivator) {
|
9561
|
+
parent.root.register(computedId.value, parent.id.value, toValue(isDisabled), isGroup);
|
9562
|
+
}
|
9544
9563
|
});
|
9545
9564
|
onBeforeUnmount(() => {
|
9546
|
-
!parent.isGroupActivator
|
9565
|
+
if (!parent.isGroupActivator) {
|
9566
|
+
parent.root.unregister(computedId.value);
|
9567
|
+
}
|
9547
9568
|
});
|
9548
9569
|
isGroup && provide(VNestedSymbol, item);
|
9549
9570
|
return item;
|
@@ -9575,6 +9596,7 @@ const makeVListGroupProps = propsFactory({
|
|
9575
9596
|
type: IconValue,
|
9576
9597
|
default: '$collapse'
|
9577
9598
|
},
|
9599
|
+
disabled: Boolean,
|
9578
9600
|
expandIcon: {
|
9579
9601
|
type: IconValue,
|
9580
9602
|
default: '$expand'
|
@@ -9600,7 +9622,7 @@ const VListGroup = genericComponent()({
|
|
9600
9622
|
isOpen,
|
9601
9623
|
open,
|
9602
9624
|
id: _id
|
9603
|
-
} = useNestedItem(() => props.value, true);
|
9625
|
+
} = useNestedItem(() => props.value, () => props.disabled, true);
|
9604
9626
|
const id = computed(() => `v-list-group--id-${String(props.rawId ?? _id.value)}`);
|
9605
9627
|
const list = useList();
|
9606
9628
|
const {
|
@@ -9770,7 +9792,7 @@ const VListItem = genericComponent()({
|
|
9770
9792
|
parent,
|
9771
9793
|
openOnSelect,
|
9772
9794
|
id: uid
|
9773
|
-
} = useNestedItem(id, false);
|
9795
|
+
} = useNestedItem(id, () => props.disabled, false);
|
9774
9796
|
const list = useList();
|
9775
9797
|
const isActive = computed(() => props.active !== false && (props.active || link.isActive?.value || (root.activatable.value ? isActivated.value : isSelected.value)));
|
9776
9798
|
const isLink = toRef(() => props.link !== false && link.isLink.value);
|
@@ -20829,10 +20851,15 @@ const VDataTableColumn = defineFunctionalComponent({
|
|
20829
20851
|
type: String,
|
20830
20852
|
default: 'start'
|
20831
20853
|
},
|
20832
|
-
fixed:
|
20854
|
+
fixed: {
|
20855
|
+
type: [Boolean, String],
|
20856
|
+
default: false
|
20857
|
+
},
|
20833
20858
|
fixedOffset: [Number, String],
|
20859
|
+
fixedEndOffset: [Number, String],
|
20834
20860
|
height: [Number, String],
|
20835
20861
|
lastFixed: Boolean,
|
20862
|
+
firstFixedEnd: Boolean,
|
20836
20863
|
noPadding: Boolean,
|
20837
20864
|
tag: String,
|
20838
20865
|
width: [Number, String],
|
@@ -20843,10 +20870,13 @@ const VDataTableColumn = defineFunctionalComponent({
|
|
20843
20870
|
slots
|
20844
20871
|
} = _ref;
|
20845
20872
|
const Tag = props.tag ?? 'td';
|
20873
|
+
const fixedSide = typeof props.fixed === 'string' ? props.fixed : props.fixed ? 'start' : 'none';
|
20846
20874
|
return createVNode(Tag, {
|
20847
20875
|
"class": normalizeClass(['v-data-table__td', {
|
20848
|
-
'v-data-table-column--fixed':
|
20876
|
+
'v-data-table-column--fixed': fixedSide === 'start',
|
20877
|
+
'v-data-table-column--fixed-end': fixedSide === 'end',
|
20849
20878
|
'v-data-table-column--last-fixed': props.lastFixed,
|
20879
|
+
'v-data-table-column--first-fixed-end': props.firstFixedEnd,
|
20850
20880
|
'v-data-table-column--no-padding': props.noPadding,
|
20851
20881
|
'v-data-table-column--nowrap': props.nowrap
|
20852
20882
|
}, `v-data-table-column--align-${props.align}`]),
|
@@ -20854,7 +20884,8 @@ const VDataTableColumn = defineFunctionalComponent({
|
|
20854
20884
|
height: convertToUnit(props.height),
|
20855
20885
|
width: convertToUnit(props.width),
|
20856
20886
|
maxWidth: convertToUnit(props.maxWidth),
|
20857
|
-
left: convertToUnit(props.fixedOffset || null)
|
20887
|
+
left: fixedSide === 'start' ? convertToUnit(props.fixedOffset || null) : undefined,
|
20888
|
+
right: fixedSide === 'end' ? convertToUnit(props.fixedEndOffset || null) : undefined
|
20858
20889
|
}
|
20859
20890
|
}, {
|
20860
20891
|
default: () => [slots.default?.()]
|
@@ -20951,20 +20982,28 @@ function getDepth(item) {
|
|
20951
20982
|
}
|
20952
20983
|
function parseFixedColumns(items) {
|
20953
20984
|
let seenFixed = false;
|
20954
|
-
function setFixed(item) {
|
20955
|
-
let
|
20985
|
+
function setFixed(item, side) {
|
20986
|
+
let parentFixedSide = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'none';
|
20956
20987
|
if (!item) return;
|
20957
|
-
if (
|
20958
|
-
item.fixed =
|
20988
|
+
if (parentFixedSide !== 'none') {
|
20989
|
+
item.fixed = parentFixedSide;
|
20959
20990
|
}
|
20960
|
-
|
20961
|
-
|
20962
|
-
|
20963
|
-
|
20991
|
+
|
20992
|
+
// normalize to simplify logic below
|
20993
|
+
if (item.fixed === true) {
|
20994
|
+
item.fixed = 'start';
|
20995
|
+
}
|
20996
|
+
const orderedChildren = side === 'start' ? item.children?.toReversed() : item.children;
|
20997
|
+
if (item.fixed === side) {
|
20998
|
+
if (orderedChildren) {
|
20999
|
+
for (const child of orderedChildren) {
|
21000
|
+
setFixed(child, side, side);
|
20964
21001
|
}
|
20965
21002
|
} else {
|
20966
|
-
if (!seenFixed) {
|
21003
|
+
if (!seenFixed && side === 'start') {
|
20967
21004
|
item.lastFixed = true;
|
21005
|
+
} else if (!seenFixed && side === 'end') {
|
21006
|
+
item.firstFixedEnd = true;
|
20968
21007
|
} else if (isNaN(Number(item.width))) {
|
20969
21008
|
consoleError(`Multiple fixed columns should have a static width (key: ${item.key})`);
|
20970
21009
|
} else {
|
@@ -20973,36 +21012,57 @@ function parseFixedColumns(items) {
|
|
20973
21012
|
seenFixed = true;
|
20974
21013
|
}
|
20975
21014
|
} else {
|
20976
|
-
if (
|
20977
|
-
for (
|
20978
|
-
setFixed(
|
21015
|
+
if (orderedChildren) {
|
21016
|
+
for (const child of orderedChildren) {
|
21017
|
+
setFixed(child, side);
|
20979
21018
|
}
|
20980
21019
|
} else {
|
20981
21020
|
seenFixed = false;
|
20982
21021
|
}
|
20983
21022
|
}
|
20984
21023
|
}
|
20985
|
-
for (
|
20986
|
-
setFixed(
|
21024
|
+
for (const item of items.toReversed()) {
|
21025
|
+
setFixed(item, 'start');
|
21026
|
+
}
|
21027
|
+
for (const item of items) {
|
21028
|
+
setFixed(item, 'end');
|
20987
21029
|
}
|
20988
21030
|
function setFixedOffset(item) {
|
20989
|
-
let
|
20990
|
-
if (!item) return
|
21031
|
+
let offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
21032
|
+
if (!item) return offset;
|
20991
21033
|
if (item.children) {
|
20992
|
-
item.fixedOffset =
|
21034
|
+
item.fixedOffset = offset;
|
20993
21035
|
for (const child of item.children) {
|
20994
|
-
|
21036
|
+
offset = setFixedOffset(child, offset);
|
20995
21037
|
}
|
20996
|
-
} else if (item.fixed) {
|
20997
|
-
item.fixedOffset =
|
20998
|
-
|
21038
|
+
} else if (item.fixed && item.fixed !== 'end') {
|
21039
|
+
item.fixedOffset = offset;
|
21040
|
+
offset += parseFloat(item.width || '0') || 0;
|
20999
21041
|
}
|
21000
|
-
return
|
21042
|
+
return offset;
|
21001
21043
|
}
|
21002
21044
|
let fixedOffset = 0;
|
21003
21045
|
for (const item of items) {
|
21004
21046
|
fixedOffset = setFixedOffset(item, fixedOffset);
|
21005
21047
|
}
|
21048
|
+
function setFixedEndOffset(item) {
|
21049
|
+
let offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
21050
|
+
if (!item) return offset;
|
21051
|
+
if (item.children) {
|
21052
|
+
item.fixedEndOffset = offset;
|
21053
|
+
for (const child of item.children) {
|
21054
|
+
offset = setFixedEndOffset(child, offset);
|
21055
|
+
}
|
21056
|
+
} else if (item.fixed === 'end') {
|
21057
|
+
item.fixedEndOffset = offset;
|
21058
|
+
offset += parseFloat(item.width || '0') || 0;
|
21059
|
+
}
|
21060
|
+
return offset;
|
21061
|
+
}
|
21062
|
+
let fixedEndOffset = 0;
|
21063
|
+
for (const item of items.toReversed()) {
|
21064
|
+
fixedEndOffset = setFixedEndOffset(item, fixedEndOffset);
|
21065
|
+
}
|
21006
21066
|
}
|
21007
21067
|
function parse(items, maxDepth) {
|
21008
21068
|
const headers = [];
|
@@ -21135,7 +21195,6 @@ const makeVDataTableHeadersProps = propsFactory({
|
|
21135
21195
|
color: String,
|
21136
21196
|
disableSort: Boolean,
|
21137
21197
|
fixedHeader: Boolean,
|
21138
|
-
lastFixed: Boolean,
|
21139
21198
|
multiSort: Boolean,
|
21140
21199
|
sortAscIcon: {
|
21141
21200
|
type: IconValue,
|
@@ -21182,11 +21241,12 @@ const VDataTableHeaders = genericComponent()({
|
|
21182
21241
|
loaderClasses
|
21183
21242
|
} = useLoader(props);
|
21184
21243
|
function getFixedStyles(column, y) {
|
21185
|
-
if (!(props.sticky || props.fixedHeader) && !
|
21244
|
+
if (!(props.sticky || props.fixedHeader) && !column.fixed) return undefined;
|
21245
|
+
const fixedSide = typeof column.fixed === 'string' ? column.fixed : column.fixed ? 'start' : 'none';
|
21186
21246
|
return {
|
21187
21247
|
position: 'sticky',
|
21188
|
-
left:
|
21189
|
-
right:
|
21248
|
+
left: fixedSide === 'start' ? convertToUnit(column.fixedOffset) : undefined,
|
21249
|
+
right: fixedSide === 'end' ? convertToUnit(column.fixedEndOffset) : undefined,
|
21190
21250
|
top: props.sticky || props.fixedHeader ? `calc(var(--v-table-header-height) * ${y})` : undefined
|
21191
21251
|
};
|
21192
21252
|
}
|
@@ -21249,6 +21309,7 @@ const VDataTableHeaders = genericComponent()({
|
|
21249
21309
|
"fixed": column.fixed,
|
21250
21310
|
"nowrap": column.nowrap,
|
21251
21311
|
"lastFixed": column.lastFixed,
|
21312
|
+
"firstFixedEnd": column.firstFixedEnd,
|
21252
21313
|
"noPadding": noPadding,
|
21253
21314
|
"tabindex": column.sortable ? 0 : undefined,
|
21254
21315
|
"onClick": column.sortable ? () => toggleSort(column) : undefined,
|
@@ -21529,7 +21590,9 @@ const VDataTableRow = genericComponent()({
|
|
21529
21590
|
},
|
21530
21591
|
"fixed": column.fixed,
|
21531
21592
|
"fixedOffset": column.fixedOffset,
|
21593
|
+
"fixedEndOffset": column.fixedEndOffset,
|
21532
21594
|
"lastFixed": column.lastFixed,
|
21595
|
+
"firstFixedEnd": column.firstFixedEnd,
|
21533
21596
|
"maxWidth": !mobile.value ? column.maxWidth : undefined,
|
21534
21597
|
"noPadding": column.key === 'data-table-select' || column.key === 'data-table-expand',
|
21535
21598
|
"nowrap": column.nowrap,
|
@@ -30382,7 +30445,7 @@ const VTreeviewItem = genericComponent()({
|
|
30382
30445
|
return createVNode(VListItem, mergeProps({
|
30383
30446
|
"ref": vListItemRef
|
30384
30447
|
}, listItemProps, {
|
30385
|
-
"active": vListItemRef.value?.isActivated,
|
30448
|
+
"active": vListItemRef.value?.isActivated || undefined,
|
30386
30449
|
"class": ['v-treeview-item', {
|
30387
30450
|
'v-treeview-item--activatable-group-activator': isActivatableGroupActivator.value,
|
30388
30451
|
'v-treeview-item--filtered': isFiltered.value
|
@@ -30594,10 +30657,7 @@ const makeVTreeviewProps = propsFactory({
|
|
30594
30657
|
expandIcon: '$treeviewExpand',
|
30595
30658
|
slim: true
|
30596
30659
|
}), ['itemType', 'nav', 'openStrategy']),
|
30597
|
-
modelValue:
|
30598
|
-
type: Array,
|
30599
|
-
default: () => []
|
30600
|
-
}
|
30660
|
+
modelValue: Array
|
30601
30661
|
}, 'VTreeview');
|
30602
30662
|
const VTreeview = genericComponent()({
|
30603
30663
|
name: 'VTreeview',
|
@@ -30612,7 +30672,8 @@ const VTreeview = genericComponent()({
|
|
30612
30672
|
},
|
30613
30673
|
setup(props, _ref) {
|
30614
30674
|
let {
|
30615
|
-
slots
|
30675
|
+
slots,
|
30676
|
+
emit
|
30616
30677
|
} = _ref;
|
30617
30678
|
const {
|
30618
30679
|
items
|
@@ -30621,13 +30682,12 @@ const VTreeview = genericComponent()({
|
|
30621
30682
|
const baseColor = toRef(() => props.baseColor);
|
30622
30683
|
const color = toRef(() => props.color);
|
30623
30684
|
const activated = useProxiedModel(props, 'activated');
|
30624
|
-
const
|
30625
|
-
const _selected = useProxiedModel(props, 'selected', props.modelValue);
|
30685
|
+
const _selected = useProxiedModel(props, 'selected');
|
30626
30686
|
const selected = computed({
|
30627
|
-
get: () => _selected.value,
|
30687
|
+
get: () => props.modelValue ?? _selected.value,
|
30628
30688
|
set(val) {
|
30629
30689
|
_selected.value = val;
|
30630
|
-
|
30690
|
+
emit('update:modelValue', val);
|
30631
30691
|
}
|
30632
30692
|
});
|
30633
30693
|
const vListRef = ref();
|
@@ -31230,7 +31290,7 @@ function createVuetify$1() {
|
|
31230
31290
|
};
|
31231
31291
|
});
|
31232
31292
|
}
|
31233
|
-
const version$1 = "3.9.0-beta.1-dev.2025-07-
|
31293
|
+
const version$1 = "3.9.0-beta.1-dev.2025-07-04";
|
31234
31294
|
createVuetify$1.version = version$1;
|
31235
31295
|
|
31236
31296
|
// Vue's inject() can only be used in setup
|
@@ -31255,7 +31315,7 @@ const createVuetify = function () {
|
|
31255
31315
|
...options
|
31256
31316
|
});
|
31257
31317
|
};
|
31258
|
-
const version = "3.9.0-beta.1-dev.2025-07-
|
31318
|
+
const version = "3.9.0-beta.1-dev.2025-07-04";
|
31259
31319
|
createVuetify.version = version;
|
31260
31320
|
|
31261
31321
|
export { index as blueprints, components, createVuetify, directives, useDate, useDefaults, useDisplay, useGoTo, useHotkey, useLayout, useLocale, useRtl, useTheme, version };
|