@vuetify/nightly 3.9.3-master.2025-07-30 → 3.9.3-master.2025-08-01
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 +27 -3
- package/dist/json/attributes.json +2099 -2091
- package/dist/json/importMap-labs.json +26 -26
- package/dist/json/importMap.json +154 -154
- package/dist/json/tags.json +4 -2
- package/dist/json/web-types.json +3784 -3672
- package/dist/vuetify-labs.cjs +193 -96
- package/dist/vuetify-labs.css +5517 -5496
- package/dist/vuetify-labs.d.ts +211 -161
- package/dist/vuetify-labs.esm.js +193 -96
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +193 -96
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +171 -89
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +2952 -2946
- package/dist/vuetify.d.ts +99 -89
- package/dist/vuetify.esm.js +171 -89
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +171 -89
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +228 -227
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VApp/VApp.d.ts +0 -25
- package/lib/components/VApp/VApp.js +3 -3
- package/lib/components/VApp/VApp.js.map +1 -1
- package/lib/components/VColorPicker/VColorPickerEdit.css +5 -0
- package/lib/components/VColorPicker/VColorPickerEdit.js +8 -1
- package/lib/components/VColorPicker/VColorPickerEdit.js.map +1 -1
- package/lib/components/VColorPicker/VColorPickerEdit.sass +5 -0
- package/lib/components/VColorPicker/VColorPickerPreview.js +8 -1
- package/lib/components/VColorPicker/VColorPickerPreview.js.map +1 -1
- package/lib/components/VColorPicker/util/index.d.ts +1 -0
- package/lib/components/VColorPicker/util/index.js +20 -10
- package/lib/components/VColorPicker/util/index.js.map +1 -1
- package/lib/components/VConfirmEdit/VConfirmEdit.js +1 -1
- package/lib/components/VConfirmEdit/VConfirmEdit.js.map +1 -1
- package/lib/components/VDataIterator/VDataIterator.d.ts +2 -2
- package/lib/components/VDataIterator/VDataIterator.js +1 -1
- package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
- package/lib/components/VDataTable/VDataTable.css +2 -1
- package/lib/components/VDataTable/VDataTable.d.ts +6 -4
- package/lib/components/VDataTable/VDataTable.js +1 -1
- package/lib/components/VDataTable/VDataTable.js.map +1 -1
- package/lib/components/VDataTable/VDataTable.sass +2 -1
- package/lib/components/VDataTable/VDataTableRows.d.ts +14 -11
- package/lib/components/VDataTable/VDataTableRows.js +9 -0
- package/lib/components/VDataTable/VDataTableRows.js.map +1 -1
- package/lib/components/VDataTable/VDataTableServer.d.ts +4 -2
- package/lib/components/VDataTable/VDataTableServer.js +1 -1
- package/lib/components/VDataTable/VDataTableServer.js.map +1 -1
- package/lib/components/VDataTable/VDataTableVirtual.d.ts +4 -2
- package/lib/components/VDataTable/VDataTableVirtual.js +1 -1
- package/lib/components/VDataTable/VDataTableVirtual.js.map +1 -1
- package/lib/components/VDataTable/composables/group.d.ts +13 -5
- package/lib/components/VDataTable/composables/group.js +11 -5
- package/lib/components/VDataTable/composables/group.js.map +1 -1
- package/lib/components/VDataTable/composables/headers.js +53 -42
- package/lib/components/VDataTable/composables/headers.js.map +1 -1
- package/lib/components/VDataTable/composables/paginate.d.ts +3 -3
- package/lib/components/VDataTable/composables/paginate.js.map +1 -1
- package/lib/components/VDataTable/composables/sort.js +1 -1
- package/lib/components/VDataTable/composables/sort.js.map +1 -1
- package/lib/components/VDataTable/types.d.ts +7 -1
- package/lib/components/VDataTable/types.js.map +1 -1
- package/lib/components/VNumberInput/VNumberInput.js +1 -0
- package/lib/components/VNumberInput/VNumberInput.js.map +1 -1
- package/lib/components/VSlider/VSliderThumb.css +2 -2
- package/lib/components/VSlider/VSliderThumb.sass +2 -2
- package/lib/components/VTable/VTable.css +2 -2
- package/lib/components/VTable/VTable.js +32 -20
- package/lib/components/VTable/VTable.js.map +1 -1
- package/lib/components/VTable/VTable.sass +4 -4
- package/lib/components/VTreeview/VTreeviewChildren.d.ts +20 -2
- package/lib/components/VTreeview/VTreeviewChildren.js +7 -2
- package/lib/components/VTreeview/VTreeviewChildren.js.map +1 -1
- package/lib/entry-bundler.js +1 -1
- package/lib/framework.d.ts +60 -60
- package/lib/framework.js +1 -1
- package/lib/labs/VColorInput/VColorInput.css +15 -0
- package/lib/labs/VColorInput/VColorInput.d.ts +287 -215
- package/lib/labs/VColorInput/VColorInput.js +23 -8
- package/lib/labs/VColorInput/VColorInput.js.map +1 -1
- package/lib/labs/VColorInput/VColorInput.sass +8 -0
- package/lib/labs/VColorInput/_variables.scss +2 -0
- package/lib/labs/VVideo/VVideoControls.js +1 -1
- package/lib/labs/VVideo/VVideoControls.js.map +1 -1
- package/lib/labs/VVideo/VVideoVolume.js +1 -1
- package/lib/labs/VVideo/VVideoVolume.js.map +1 -1
- package/lib/locale/af.d.ts +17 -0
- package/lib/locale/af.js +17 -0
- package/lib/locale/af.js.map +1 -1
- package/lib/locale/ar.d.ts +17 -0
- package/lib/locale/ar.js +17 -0
- package/lib/locale/ar.js.map +1 -1
- package/lib/locale/az.d.ts +17 -0
- package/lib/locale/az.js +17 -0
- package/lib/locale/az.js.map +1 -1
- package/lib/locale/bg.d.ts +17 -0
- package/lib/locale/bg.js +17 -0
- package/lib/locale/bg.js.map +1 -1
- package/lib/locale/ca.d.ts +17 -0
- package/lib/locale/ca.js +17 -0
- package/lib/locale/ca.js.map +1 -1
- package/lib/locale/ckb.d.ts +17 -0
- package/lib/locale/ckb.js +17 -0
- package/lib/locale/ckb.js.map +1 -1
- package/lib/locale/cs.d.ts +17 -0
- package/lib/locale/cs.js +17 -0
- package/lib/locale/cs.js.map +1 -1
- package/lib/locale/da.d.ts +17 -0
- package/lib/locale/da.js +17 -0
- package/lib/locale/da.js.map +1 -1
- package/lib/locale/de.d.ts +17 -0
- package/lib/locale/de.js +17 -0
- package/lib/locale/de.js.map +1 -1
- package/lib/locale/el.d.ts +17 -0
- package/lib/locale/el.js +17 -0
- package/lib/locale/el.js.map +1 -1
- package/lib/locale/en.d.ts +17 -0
- package/lib/locale/en.js +17 -0
- package/lib/locale/en.js.map +1 -1
- package/lib/locale/es.d.ts +17 -0
- package/lib/locale/es.js +17 -0
- package/lib/locale/es.js.map +1 -1
- package/lib/locale/et.d.ts +17 -0
- package/lib/locale/et.js +17 -0
- package/lib/locale/et.js.map +1 -1
- package/lib/locale/fa.d.ts +17 -0
- package/lib/locale/fa.js +17 -0
- package/lib/locale/fa.js.map +1 -1
- package/lib/locale/fi.d.ts +17 -0
- package/lib/locale/fi.js +17 -0
- package/lib/locale/fi.js.map +1 -1
- package/lib/locale/fr.d.ts +17 -0
- package/lib/locale/fr.js +17 -0
- package/lib/locale/fr.js.map +1 -1
- package/lib/locale/he.d.ts +17 -0
- package/lib/locale/he.js +17 -0
- package/lib/locale/he.js.map +1 -1
- package/lib/locale/hr.d.ts +17 -0
- package/lib/locale/hr.js +17 -0
- package/lib/locale/hr.js.map +1 -1
- package/lib/locale/hu.d.ts +17 -0
- package/lib/locale/hu.js +17 -0
- package/lib/locale/hu.js.map +1 -1
- package/lib/locale/id.d.ts +17 -0
- package/lib/locale/id.js +17 -0
- package/lib/locale/id.js.map +1 -1
- package/lib/locale/it.d.ts +17 -0
- package/lib/locale/it.js +17 -0
- package/lib/locale/it.js.map +1 -1
- package/lib/locale/ja.d.ts +17 -0
- package/lib/locale/ja.js +17 -0
- package/lib/locale/ja.js.map +1 -1
- package/lib/locale/km.d.ts +17 -0
- package/lib/locale/km.js +17 -0
- package/lib/locale/km.js.map +1 -1
- package/lib/locale/ko.d.ts +17 -0
- package/lib/locale/ko.js +17 -0
- package/lib/locale/ko.js.map +1 -1
- package/lib/locale/lt.d.ts +17 -0
- package/lib/locale/lt.js +17 -0
- package/lib/locale/lt.js.map +1 -1
- package/lib/locale/lv.d.ts +17 -0
- package/lib/locale/lv.js +17 -0
- package/lib/locale/lv.js.map +1 -1
- package/lib/locale/nl.d.ts +17 -0
- package/lib/locale/nl.js +17 -0
- package/lib/locale/nl.js.map +1 -1
- package/lib/locale/no.d.ts +17 -0
- package/lib/locale/no.js +17 -0
- package/lib/locale/no.js.map +1 -1
- package/lib/locale/pl.d.ts +17 -0
- package/lib/locale/pl.js +17 -0
- package/lib/locale/pl.js.map +1 -1
- package/lib/locale/pt.d.ts +17 -0
- package/lib/locale/pt.js +17 -0
- package/lib/locale/pt.js.map +1 -1
- package/lib/locale/ro.d.ts +17 -0
- package/lib/locale/ro.js +17 -0
- package/lib/locale/ro.js.map +1 -1
- package/lib/locale/ru.d.ts +17 -0
- package/lib/locale/ru.js +17 -0
- package/lib/locale/ru.js.map +1 -1
- package/lib/locale/sk.d.ts +17 -0
- package/lib/locale/sk.js +17 -0
- package/lib/locale/sk.js.map +1 -1
- package/lib/locale/sl.d.ts +17 -0
- package/lib/locale/sl.js +17 -0
- package/lib/locale/sl.js.map +1 -1
- package/lib/locale/sr-Cyrl.d.ts +17 -0
- package/lib/locale/sr-Cyrl.js +17 -0
- package/lib/locale/sr-Cyrl.js.map +1 -1
- package/lib/locale/sr-Latn.d.ts +17 -0
- package/lib/locale/sr-Latn.js +17 -0
- package/lib/locale/sr-Latn.js.map +1 -1
- package/lib/locale/sv.d.ts +17 -0
- package/lib/locale/sv.js +17 -0
- package/lib/locale/sv.js.map +1 -1
- package/lib/locale/th.d.ts +17 -0
- package/lib/locale/th.js +17 -0
- package/lib/locale/th.js.map +1 -1
- package/lib/locale/tr.d.ts +17 -0
- package/lib/locale/tr.js +17 -0
- package/lib/locale/tr.js.map +1 -1
- package/lib/locale/uk.d.ts +17 -0
- package/lib/locale/uk.js +17 -0
- package/lib/locale/uk.js.map +1 -1
- package/lib/locale/vi.d.ts +17 -0
- package/lib/locale/vi.js +17 -0
- package/lib/locale/vi.js.map +1 -1
- package/lib/locale/zh-Hans.d.ts +17 -0
- package/lib/locale/zh-Hans.js +17 -0
- package/lib/locale/zh-Hans.js.map +1 -1
- package/lib/locale/zh-Hant.d.ts +17 -0
- package/lib/locale/zh-Hant.js +17 -0
- package/lib/locale/zh-Hant.js.map +1 -1
- package/lib/util/getScrollParent.js +3 -1
- package/lib/util/getScrollParent.js.map +1 -1
- package/package.json +1 -1
package/dist/vuetify.esm.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Vuetify v3.9.3-master.2025-
|
2
|
+
* Vuetify v3.9.3-master.2025-08-01
|
3
3
|
* Forged by John Leider
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
@@ -1609,7 +1609,9 @@ function getScrollParents(el, stopAt) {
|
|
1609
1609
|
function hasScrollbar(el) {
|
1610
1610
|
if (!el || el.nodeType !== Node.ELEMENT_NODE) return false;
|
1611
1611
|
const style = window.getComputedStyle(el);
|
1612
|
-
|
1612
|
+
const hasVerticalScrollbar = style.overflowY === 'scroll' || style.overflowY === 'auto' && el.scrollHeight > el.clientHeight;
|
1613
|
+
const hasHorizontalScrollbar = style.overflowX === 'scroll' || style.overflowX === 'auto' && el.scrollWidth > el.clientWidth;
|
1614
|
+
return hasVerticalScrollbar || hasHorizontalScrollbar;
|
1613
1615
|
}
|
1614
1616
|
function isPotentiallyScrollable(el) {
|
1615
1617
|
if (!el || el.nodeType !== Node.ELEMENT_NODE) return false;
|
@@ -2721,6 +2723,23 @@ var en = {
|
|
2721
2723
|
unmute: 'Unmute',
|
2722
2724
|
enterFullscreen: 'Full screen',
|
2723
2725
|
exitFullscreen: 'Exit full screen'
|
2726
|
+
},
|
2727
|
+
colorPicker: {
|
2728
|
+
ariaLabel: {
|
2729
|
+
eyedropper: 'Select color with eyedropper',
|
2730
|
+
hueSlider: 'Hue',
|
2731
|
+
alphaSlider: 'Alpha',
|
2732
|
+
redInput: 'Red value',
|
2733
|
+
greenInput: 'Green value',
|
2734
|
+
blueInput: 'Blue value',
|
2735
|
+
alphaInput: 'Alpha value',
|
2736
|
+
hueInput: 'Hue value',
|
2737
|
+
saturationInput: 'Saturation value',
|
2738
|
+
lightnessInput: 'Lightness value',
|
2739
|
+
hexInput: 'HEX value',
|
2740
|
+
hexaInput: 'HEX with alpha value',
|
2741
|
+
changeFormat: 'Change color format'
|
2742
|
+
}
|
2724
2743
|
}
|
2725
2744
|
};
|
2726
2745
|
|
@@ -3319,9 +3338,9 @@ function useTheme() {
|
|
3319
3338
|
|
3320
3339
|
const makeVAppProps = propsFactory({
|
3321
3340
|
...makeComponentProps(),
|
3322
|
-
...makeLayoutProps({
|
3341
|
+
...omit(makeLayoutProps({
|
3323
3342
|
fullHeight: true
|
3324
|
-
}),
|
3343
|
+
}), ['fullHeight']),
|
3325
3344
|
...makeThemeProps()
|
3326
3345
|
}, 'VApp');
|
3327
3346
|
const VApp = genericComponent()({
|
@@ -16218,7 +16237,8 @@ const rgba = {
|
|
16218
16237
|
getColor: (c, v) => ({
|
16219
16238
|
...c,
|
16220
16239
|
r: Number(v)
|
16221
|
-
})
|
16240
|
+
}),
|
16241
|
+
localeKey: 'redInput'
|
16222
16242
|
}, {
|
16223
16243
|
label: 'G',
|
16224
16244
|
max: 255,
|
@@ -16227,7 +16247,8 @@ const rgba = {
|
|
16227
16247
|
getColor: (c, v) => ({
|
16228
16248
|
...c,
|
16229
16249
|
g: Number(v)
|
16230
|
-
})
|
16250
|
+
}),
|
16251
|
+
localeKey: 'greenInput'
|
16231
16252
|
}, {
|
16232
16253
|
label: 'B',
|
16233
16254
|
max: 255,
|
@@ -16236,7 +16257,8 @@ const rgba = {
|
|
16236
16257
|
getColor: (c, v) => ({
|
16237
16258
|
...c,
|
16238
16259
|
b: Number(v)
|
16239
|
-
})
|
16260
|
+
}),
|
16261
|
+
localeKey: 'blueInput'
|
16240
16262
|
}, {
|
16241
16263
|
label: 'A',
|
16242
16264
|
max: 1,
|
@@ -16250,7 +16272,8 @@ const rgba = {
|
|
16250
16272
|
getColor: (c, v) => ({
|
16251
16273
|
...c,
|
16252
16274
|
a: Number(v)
|
16253
|
-
})
|
16275
|
+
}),
|
16276
|
+
localeKey: 'alphaInput'
|
16254
16277
|
}],
|
16255
16278
|
to: HSVtoRGB,
|
16256
16279
|
from: RGBtoHSV
|
@@ -16272,7 +16295,8 @@ const hsla = {
|
|
16272
16295
|
getColor: (c, v) => ({
|
16273
16296
|
...c,
|
16274
16297
|
h: Number(v)
|
16275
|
-
})
|
16298
|
+
}),
|
16299
|
+
localeKey: 'hueInput'
|
16276
16300
|
}, {
|
16277
16301
|
label: 'S',
|
16278
16302
|
max: 1,
|
@@ -16281,7 +16305,8 @@ const hsla = {
|
|
16281
16305
|
getColor: (c, v) => ({
|
16282
16306
|
...c,
|
16283
16307
|
s: Number(v)
|
16284
|
-
})
|
16308
|
+
}),
|
16309
|
+
localeKey: 'saturationInput'
|
16285
16310
|
}, {
|
16286
16311
|
label: 'L',
|
16287
16312
|
max: 1,
|
@@ -16290,7 +16315,8 @@ const hsla = {
|
|
16290
16315
|
getColor: (c, v) => ({
|
16291
16316
|
...c,
|
16292
16317
|
l: Number(v)
|
16293
|
-
})
|
16318
|
+
}),
|
16319
|
+
localeKey: 'lightnessInput'
|
16294
16320
|
}, {
|
16295
16321
|
label: 'A',
|
16296
16322
|
max: 1,
|
@@ -16304,7 +16330,8 @@ const hsla = {
|
|
16304
16330
|
getColor: (c, v) => ({
|
16305
16331
|
...c,
|
16306
16332
|
a: Number(v)
|
16307
|
-
})
|
16333
|
+
}),
|
16334
|
+
localeKey: 'alphaInput'
|
16308
16335
|
}],
|
16309
16336
|
to: HSVtoHSL,
|
16310
16337
|
from: HSLtoHSV
|
@@ -16320,7 +16347,8 @@ const hexa = {
|
|
16320
16347
|
inputs: [{
|
16321
16348
|
label: 'HEXA',
|
16322
16349
|
getValue: c => c,
|
16323
|
-
getColor: (c, v) => v
|
16350
|
+
getColor: (c, v) => v,
|
16351
|
+
localeKey: 'hexaInput'
|
16324
16352
|
}],
|
16325
16353
|
to: HSVtoHex,
|
16326
16354
|
from: HexToHSV
|
@@ -16330,7 +16358,8 @@ const hex = {
|
|
16330
16358
|
inputs: [{
|
16331
16359
|
label: 'HEX',
|
16332
16360
|
getValue: c => c.slice(0, 7),
|
16333
|
-
getColor: (c, v) => v
|
16361
|
+
getColor: (c, v) => v,
|
16362
|
+
localeKey: 'hexInput'
|
16334
16363
|
}]
|
16335
16364
|
};
|
16336
16365
|
const modes = {
|
@@ -16379,6 +16408,9 @@ const VColorPickerEdit = defineComponent({
|
|
16379
16408
|
let {
|
16380
16409
|
emit
|
16381
16410
|
} = _ref2;
|
16411
|
+
const {
|
16412
|
+
t
|
16413
|
+
} = useLocale();
|
16382
16414
|
const enabledModes = computed(() => {
|
16383
16415
|
return props.modes.map(key => ({
|
16384
16416
|
...modes[key],
|
@@ -16393,11 +16425,13 @@ const VColorPickerEdit = defineComponent({
|
|
16393
16425
|
let {
|
16394
16426
|
getValue,
|
16395
16427
|
getColor,
|
16428
|
+
localeKey,
|
16396
16429
|
...inputProps
|
16397
16430
|
} = _ref3;
|
16398
16431
|
return {
|
16399
16432
|
...mode.inputProps,
|
16400
16433
|
...inputProps,
|
16434
|
+
ariaLabel: t(`$vuetify.colorPicker.ariaLabel.${localeKey}`),
|
16401
16435
|
disabled: props.disabled,
|
16402
16436
|
value: color && getValue(color),
|
16403
16437
|
onChange: e => {
|
@@ -16415,6 +16449,7 @@ const VColorPickerEdit = defineComponent({
|
|
16415
16449
|
"icon": "$unfold",
|
16416
16450
|
"size": "x-small",
|
16417
16451
|
"variant": "plain",
|
16452
|
+
"aria-label": t('$vuetify.colorPicker.ariaLabel.changeFormat'),
|
16418
16453
|
"onClick": () => {
|
16419
16454
|
const mi = enabledModes.value.findIndex(m => m.name === props.mode);
|
16420
16455
|
emit('update:mode', enabledModes.value[(mi + 1) % enabledModes.value.length].name);
|
@@ -17180,6 +17215,9 @@ const VColorPickerPreview = defineComponent({
|
|
17180
17215
|
let {
|
17181
17216
|
emit
|
17182
17217
|
} = _ref;
|
17218
|
+
const {
|
17219
|
+
t
|
17220
|
+
} = useLocale();
|
17183
17221
|
const abortController = new AbortController();
|
17184
17222
|
onUnmounted(() => abortController.abort());
|
17185
17223
|
async function openEyeDropper() {
|
@@ -17205,6 +17243,7 @@ const VColorPickerPreview = defineComponent({
|
|
17205
17243
|
"class": "v-color-picker-preview__eye-dropper",
|
17206
17244
|
"key": "eyeDropper"
|
17207
17245
|
}, [createVNode(VBtn, {
|
17246
|
+
"aria-label": t('$vuetify.colorPicker.ariaLabel.eyedropper'),
|
17208
17247
|
"density": "comfortable",
|
17209
17248
|
"disabled": props.disabled,
|
17210
17249
|
"icon": "$eyeDropper",
|
@@ -17220,6 +17259,7 @@ const VColorPickerPreview = defineComponent({
|
|
17220
17259
|
"class": "v-color-picker-preview__sliders"
|
17221
17260
|
}, [createVNode(VSlider, {
|
17222
17261
|
"class": "v-color-picker-preview__track v-color-picker-preview__hue",
|
17262
|
+
"name": t('$vuetify.colorPicker.ariaLabel.hueSlider'),
|
17223
17263
|
"modelValue": props.color?.h,
|
17224
17264
|
"onUpdate:modelValue": h => emit('update:color', {
|
17225
17265
|
...(props.color ?? nullColor),
|
@@ -17235,6 +17275,7 @@ const VColorPickerPreview = defineComponent({
|
|
17235
17275
|
"hideDetails": true
|
17236
17276
|
}, null), !props.hideAlpha && createVNode(VSlider, {
|
17237
17277
|
"class": "v-color-picker-preview__track v-color-picker-preview__alpha",
|
17278
|
+
"name": t('$vuetify.colorPicker.ariaLabel.alphaSlider'),
|
17238
17279
|
"modelValue": props.color?.a ?? 1,
|
17239
17280
|
"onUpdate:modelValue": a => emit('update:color', {
|
17240
17281
|
...(props.color ?? nullColor),
|
@@ -19755,7 +19796,7 @@ function groupItems(items, groupBy) {
|
|
19755
19796
|
});
|
19756
19797
|
return groups;
|
19757
19798
|
}
|
19758
|
-
function flattenItems(items, opened) {
|
19799
|
+
function flattenItems(items, opened, hasSummary) {
|
19759
19800
|
const flatItems = [];
|
19760
19801
|
for (const item of items) {
|
19761
19802
|
// TODO: make this better
|
@@ -19764,7 +19805,13 @@ function flattenItems(items, opened) {
|
|
19764
19805
|
flatItems.push(item);
|
19765
19806
|
}
|
19766
19807
|
if (opened.has(item.id) || item.value == null) {
|
19767
|
-
flatItems.push(...flattenItems(item.items, opened));
|
19808
|
+
flatItems.push(...flattenItems(item.items, opened, hasSummary));
|
19809
|
+
if (hasSummary) {
|
19810
|
+
flatItems.push({
|
19811
|
+
...item,
|
19812
|
+
type: 'group-summary'
|
19813
|
+
});
|
19814
|
+
}
|
19768
19815
|
}
|
19769
19816
|
} else {
|
19770
19817
|
flatItems.push(item);
|
@@ -19772,11 +19819,11 @@ function flattenItems(items, opened) {
|
|
19772
19819
|
}
|
19773
19820
|
return flatItems;
|
19774
19821
|
}
|
19775
|
-
function useGroupedItems(items, groupBy, opened) {
|
19822
|
+
function useGroupedItems(items, groupBy, opened, hasSummary) {
|
19776
19823
|
const flatItems = computed(() => {
|
19777
19824
|
if (!groupBy.value.length) return items.value;
|
19778
19825
|
const groupedItems = groupItems(items.value, groupBy.value.map(item => item.key));
|
19779
|
-
return flattenItems(groupedItems, opened.value);
|
19826
|
+
return flattenItems(groupedItems, opened.value, toValue(hasSummary));
|
19780
19827
|
});
|
19781
19828
|
return {
|
19782
19829
|
flatItems
|
@@ -20394,7 +20441,7 @@ const VDataIterator = genericComponent()({
|
|
20394
20441
|
});
|
20395
20442
|
const {
|
20396
20443
|
flatItems
|
20397
|
-
} = useGroupedItems(sortedItems, groupBy, opened);
|
20444
|
+
} = useGroupedItems(sortedItems, groupBy, opened, false);
|
20398
20445
|
const itemsLength = toRef(() => flatItems.value.length);
|
20399
20446
|
const {
|
20400
20447
|
startIndex,
|
@@ -21099,11 +21146,16 @@ function parseFixedColumns(items) {
|
|
21099
21146
|
if (item.fixed === true) {
|
21100
21147
|
item.fixed = 'start';
|
21101
21148
|
}
|
21102
|
-
const orderedChildren = side === 'start' ? item.children?.toReversed() : item.children;
|
21103
21149
|
if (item.fixed === side) {
|
21104
|
-
if (
|
21105
|
-
|
21106
|
-
|
21150
|
+
if (item.children) {
|
21151
|
+
if (side === 'start') {
|
21152
|
+
for (let i = item.children.length - 1; i >= 0; i--) {
|
21153
|
+
setFixed(item.children[i], side, side);
|
21154
|
+
}
|
21155
|
+
} else {
|
21156
|
+
for (let i = 0; i < item.children.length; i++) {
|
21157
|
+
setFixed(item.children[i], side, side);
|
21158
|
+
}
|
21107
21159
|
}
|
21108
21160
|
} else {
|
21109
21161
|
if (!seenFixed && side === 'start') {
|
@@ -21118,57 +21170,63 @@ function parseFixedColumns(items) {
|
|
21118
21170
|
seenFixed = true;
|
21119
21171
|
}
|
21120
21172
|
} else {
|
21121
|
-
if (
|
21122
|
-
|
21123
|
-
|
21173
|
+
if (item.children) {
|
21174
|
+
if (side === 'start') {
|
21175
|
+
for (let i = item.children.length - 1; i >= 0; i--) {
|
21176
|
+
setFixed(item.children[i], side);
|
21177
|
+
}
|
21178
|
+
} else {
|
21179
|
+
for (let i = 0; i < item.children.length; i++) {
|
21180
|
+
setFixed(item.children[i], side);
|
21181
|
+
}
|
21124
21182
|
}
|
21125
21183
|
} else {
|
21126
21184
|
seenFixed = false;
|
21127
21185
|
}
|
21128
21186
|
}
|
21129
21187
|
}
|
21130
|
-
for (
|
21131
|
-
setFixed(
|
21188
|
+
for (let i = items.length - 1; i >= 0; i--) {
|
21189
|
+
setFixed(items[i], 'start');
|
21132
21190
|
}
|
21133
|
-
for (
|
21134
|
-
setFixed(
|
21135
|
-
}
|
21136
|
-
function setFixedOffset(item) {
|
21137
|
-
let offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
21138
|
-
if (!item) return offset;
|
21139
|
-
if (item.children) {
|
21140
|
-
item.fixedOffset = offset;
|
21141
|
-
for (const child of item.children) {
|
21142
|
-
offset = setFixedOffset(child, offset);
|
21143
|
-
}
|
21144
|
-
} else if (item.fixed && item.fixed !== 'end') {
|
21145
|
-
item.fixedOffset = offset;
|
21146
|
-
offset += parseFloat(item.width || '0') || 0;
|
21147
|
-
}
|
21148
|
-
return offset;
|
21191
|
+
for (let i = 0; i < items.length; i++) {
|
21192
|
+
setFixed(items[i], 'end');
|
21149
21193
|
}
|
21150
21194
|
let fixedOffset = 0;
|
21151
|
-
for (
|
21152
|
-
fixedOffset = setFixedOffset(
|
21195
|
+
for (let i = 0; i < items.length; i++) {
|
21196
|
+
fixedOffset = setFixedOffset(items[i], fixedOffset);
|
21153
21197
|
}
|
21154
|
-
|
21155
|
-
|
21156
|
-
|
21157
|
-
|
21158
|
-
|
21159
|
-
|
21160
|
-
|
21161
|
-
|
21162
|
-
|
21163
|
-
|
21164
|
-
|
21198
|
+
let fixedEndOffset = 0;
|
21199
|
+
for (let i = items.length - 1; i >= 0; i--) {
|
21200
|
+
fixedEndOffset = setFixedEndOffset(items[i], fixedEndOffset);
|
21201
|
+
}
|
21202
|
+
}
|
21203
|
+
function setFixedOffset(item) {
|
21204
|
+
let offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
21205
|
+
if (!item) return offset;
|
21206
|
+
if (item.children) {
|
21207
|
+
item.fixedOffset = offset;
|
21208
|
+
for (const child of item.children) {
|
21209
|
+
offset = setFixedOffset(child, offset);
|
21165
21210
|
}
|
21166
|
-
|
21211
|
+
} else if (item.fixed && item.fixed !== 'end') {
|
21212
|
+
item.fixedOffset = offset;
|
21213
|
+
offset += parseFloat(item.width || '0') || 0;
|
21167
21214
|
}
|
21168
|
-
|
21169
|
-
|
21170
|
-
|
21215
|
+
return offset;
|
21216
|
+
}
|
21217
|
+
function setFixedEndOffset(item) {
|
21218
|
+
let offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
21219
|
+
if (!item) return offset;
|
21220
|
+
if (item.children) {
|
21221
|
+
item.fixedEndOffset = offset;
|
21222
|
+
for (const child of item.children) {
|
21223
|
+
offset = setFixedEndOffset(child, offset);
|
21224
|
+
}
|
21225
|
+
} else if (item.fixed === 'end') {
|
21226
|
+
item.fixedEndOffset = offset;
|
21227
|
+
offset += parseFloat(item.width || '0') || 0;
|
21171
21228
|
}
|
21229
|
+
return offset;
|
21172
21230
|
}
|
21173
21231
|
function parse(items, maxDepth) {
|
21174
21232
|
const headers = [];
|
@@ -21834,6 +21892,15 @@ const VDataTableRows = genericComponent()({
|
|
21834
21892
|
"item": item
|
21835
21893
|
}, getPrefixedEventHandlers(attrs, ':group-header', () => slotProps)), slots);
|
21836
21894
|
}
|
21895
|
+
if (item.type === 'group-summary') {
|
21896
|
+
const slotProps = {
|
21897
|
+
index,
|
21898
|
+
item,
|
21899
|
+
columns: columns.value,
|
21900
|
+
toggleGroup
|
21901
|
+
};
|
21902
|
+
return slots['group-summary']?.(slotProps) ?? '';
|
21903
|
+
}
|
21837
21904
|
const slotProps = {
|
21838
21905
|
index,
|
21839
21906
|
item: item.raw,
|
@@ -21870,8 +21937,6 @@ const VDataTableRows = genericComponent()({
|
|
21870
21937
|
}
|
21871
21938
|
});
|
21872
21939
|
|
21873
|
-
// Types
|
21874
|
-
|
21875
21940
|
const makeVTableProps = propsFactory({
|
21876
21941
|
fixedHeader: Boolean,
|
21877
21942
|
fixedFooter: Boolean,
|
@@ -21901,26 +21966,37 @@ const VTable = genericComponent()({
|
|
21901
21966
|
const {
|
21902
21967
|
densityClasses
|
21903
21968
|
} = useDensity(props);
|
21904
|
-
useRender(() =>
|
21905
|
-
|
21906
|
-
|
21907
|
-
|
21908
|
-
'v-table--fixed-footer': props.fixedFooter,
|
21909
|
-
'v-table--has-top': !!slots.top,
|
21910
|
-
'v-table--has-bottom': !!slots.bottom,
|
21911
|
-
'v-table--hover': props.hover,
|
21912
|
-
'v-table--striped-even': props.striped === 'even',
|
21913
|
-
'v-table--striped-odd': props.striped === 'odd'
|
21914
|
-
}, themeClasses.value, densityClasses.value, props.class]),
|
21915
|
-
"style": normalizeStyle(props.style)
|
21916
|
-
}, {
|
21917
|
-
default: () => [slots.top?.(), slots.default ? createElementVNode("div", {
|
21918
|
-
"class": "v-table__wrapper",
|
21919
|
-
"style": {
|
21920
|
-
height: convertToUnit(props.height)
|
21969
|
+
useRender(() => {
|
21970
|
+
const tableContentDefaults = {
|
21971
|
+
VCheckboxBtn: {
|
21972
|
+
density: props.density
|
21921
21973
|
}
|
21922
|
-
}
|
21923
|
-
|
21974
|
+
};
|
21975
|
+
return createVNode(props.tag, {
|
21976
|
+
"class": normalizeClass(['v-table', {
|
21977
|
+
'v-table--fixed-height': !!props.height,
|
21978
|
+
'v-table--fixed-header': props.fixedHeader,
|
21979
|
+
'v-table--fixed-footer': props.fixedFooter,
|
21980
|
+
'v-table--has-top': !!slots.top,
|
21981
|
+
'v-table--has-bottom': !!slots.bottom,
|
21982
|
+
'v-table--hover': props.hover,
|
21983
|
+
'v-table--striped-even': props.striped === 'even',
|
21984
|
+
'v-table--striped-odd': props.striped === 'odd'
|
21985
|
+
}, themeClasses.value, densityClasses.value, props.class]),
|
21986
|
+
"style": normalizeStyle(props.style)
|
21987
|
+
}, {
|
21988
|
+
default: () => [slots.top?.(), createVNode(VDefaultsProvider, {
|
21989
|
+
"defaults": tableContentDefaults
|
21990
|
+
}, {
|
21991
|
+
default: () => [slots.default ? createElementVNode("div", {
|
21992
|
+
"class": "v-table__wrapper",
|
21993
|
+
"style": {
|
21994
|
+
height: convertToUnit(props.height)
|
21995
|
+
}
|
21996
|
+
}, [createElementVNode("table", null, [slots.default()])]) : slots.wrapper?.()]
|
21997
|
+
}), slots.bottom?.()]
|
21998
|
+
});
|
21999
|
+
});
|
21924
22000
|
return {};
|
21925
22001
|
}
|
21926
22002
|
});
|
@@ -22083,7 +22159,7 @@ const VDataTable = genericComponent()({
|
|
22083
22159
|
});
|
22084
22160
|
const {
|
22085
22161
|
flatItems
|
22086
|
-
} = useGroupedItems(sortedItems, groupBy, opened);
|
22162
|
+
} = useGroupedItems(sortedItems, groupBy, opened, () => !!slots['group-summary']);
|
22087
22163
|
const itemsLength = computed(() => flatItems.value.length);
|
22088
22164
|
const {
|
22089
22165
|
startIndex,
|
@@ -22271,7 +22347,7 @@ const VDataTableVirtual = genericComponent()({
|
|
22271
22347
|
});
|
22272
22348
|
const {
|
22273
22349
|
flatItems
|
22274
|
-
} = useGroupedItems(sortedItems, groupBy, opened);
|
22350
|
+
} = useGroupedItems(sortedItems, groupBy, opened, () => !!slots['group-summary']);
|
22275
22351
|
const allItems = computed(() => extractRows(flatItems.value));
|
22276
22352
|
const {
|
22277
22353
|
isSelected,
|
@@ -22500,7 +22576,7 @@ const VDataTableServer = genericComponent()({
|
|
22500
22576
|
});
|
22501
22577
|
const {
|
22502
22578
|
flatItems
|
22503
|
-
} = useGroupedItems(items, groupBy, opened);
|
22579
|
+
} = useGroupedItems(items, groupBy, opened, () => !!slots['group-summary']);
|
22504
22580
|
const {
|
22505
22581
|
isSelected,
|
22506
22582
|
select,
|
@@ -26253,6 +26329,7 @@ const VNumberInput = genericComponent()({
|
|
26253
26329
|
if (['Enter', 'ArrowLeft', 'ArrowRight', 'Backspace', 'Delete', 'Tab'].includes(e.key) || e.ctrlKey) return;
|
26254
26330
|
if (['ArrowDown', 'ArrowUp'].includes(e.key)) {
|
26255
26331
|
e.preventDefault();
|
26332
|
+
e.stopPropagation();
|
26256
26333
|
clampModel();
|
26257
26334
|
// _model is controlled, so need to wait until props['modelValue'] is updated
|
26258
26335
|
await nextTick();
|
@@ -30773,14 +30850,19 @@ const VTreeviewChildren = genericComponent()({
|
|
30773
30850
|
onToggleExpand: [() => checkChildren(item), activatorProps.onClick],
|
30774
30851
|
onClick: isClickOnOpen.value ? [() => checkChildren(item), activatorProps.onClick] : () => selectItem(activatorItems.value[index]?.select, !activatorItems.value[index]?.isSelected)
|
30775
30852
|
};
|
30776
|
-
return
|
30853
|
+
return renderSlot(slots.header, {
|
30854
|
+
props: listItemProps,
|
30855
|
+
item: item.raw,
|
30856
|
+
internalItem: item,
|
30857
|
+
loading
|
30858
|
+
}, () => createVNode(VTreeviewItem, mergeProps({
|
30777
30859
|
"ref": el => activatorItems.value[index] = el
|
30778
30860
|
}, listItemProps, {
|
30779
30861
|
"hideActions": props.hideActions,
|
30780
30862
|
"indentLines": indentLines.node,
|
30781
30863
|
"value": props.returnObject ? item.raw : itemProps.value,
|
30782
30864
|
"loading": loading
|
30783
|
-
}), slotsWithItem);
|
30865
|
+
}), slotsWithItem));
|
30784
30866
|
},
|
30785
30867
|
default: () => createVNode(VTreeviewChildren, mergeProps(treeviewChildrenProps, {
|
30786
30868
|
"items": children,
|
@@ -31471,7 +31553,7 @@ function createVuetify$1() {
|
|
31471
31553
|
};
|
31472
31554
|
});
|
31473
31555
|
}
|
31474
|
-
const version$1 = "3.9.3-master.2025-
|
31556
|
+
const version$1 = "3.9.3-master.2025-08-01";
|
31475
31557
|
createVuetify$1.version = version$1;
|
31476
31558
|
|
31477
31559
|
// Vue's inject() can only be used in setup
|
@@ -31496,7 +31578,7 @@ const createVuetify = function () {
|
|
31496
31578
|
...options
|
31497
31579
|
});
|
31498
31580
|
};
|
31499
|
-
const version = "3.9.3-master.2025-
|
31581
|
+
const version = "3.9.3-master.2025-08-01";
|
31500
31582
|
createVuetify.version = version;
|
31501
31583
|
|
31502
31584
|
export { index as blueprints, components, createVuetify, directives, useDate, useDefaults, useDisplay, useGoTo, useHotkey, useLayout, useLocale, useRtl, useTheme, version };
|