vuetify 3.7.15 → 3.7.16
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/dist/json/attributes.json +2932 -2928
- package/dist/json/importMap-labs.json +12 -12
- package/dist/json/importMap.json +164 -164
- package/dist/json/tags.json +3 -2
- package/dist/json/web-types.json +5470 -5438
- package/dist/vuetify-labs.css +2965 -2965
- package/dist/vuetify-labs.d.ts +438 -200
- package/dist/vuetify-labs.esm.js +155 -126
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +154 -125
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +4258 -4258
- package/dist/vuetify.d.ts +390 -210
- package/dist/vuetify.esm.js +101 -69
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +100 -68
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +227 -225
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAppBar/index.d.mts +15 -6
- package/lib/components/VAutocomplete/index.d.mts +23 -8
- package/lib/components/VBadge/VBadge.mjs +2 -2
- package/lib/components/VBadge/VBadge.mjs.map +1 -1
- package/lib/components/VBtn/VBtn.mjs +6 -3
- package/lib/components/VBtn/VBtn.mjs.map +1 -1
- package/lib/components/VBtn/index.d.mts +15 -6
- package/lib/components/VCard/VCard.mjs +12 -3
- package/lib/components/VCard/VCard.mjs.map +1 -1
- package/lib/components/VCard/VCardItem.mjs +11 -4
- package/lib/components/VCard/VCardItem.mjs.map +1 -1
- package/lib/components/VCard/index.d.mts +75 -30
- package/lib/components/VCarousel/VCarousel.mjs +1 -1
- package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
- package/lib/components/VChip/VChip.mjs +6 -3
- package/lib/components/VChip/VChip.mjs.map +1 -1
- package/lib/components/VChip/index.d.mts +15 -6
- package/lib/components/VCombobox/index.d.mts +23 -8
- package/lib/components/VDataIterator/index.d.mts +2 -2
- package/lib/components/VDataTable/composables/headers.mjs +3 -1
- package/lib/components/VDataTable/composables/headers.mjs.map +1 -1
- package/lib/components/VDataTable/composables/paginate.mjs +2 -2
- package/lib/components/VDataTable/composables/paginate.mjs.map +1 -1
- package/lib/components/VDataTable/index.d.mts +34 -34
- package/lib/components/VDataTable/types.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePickerMonth.mjs +12 -21
- package/lib/components/VDatePicker/VDatePickerMonth.mjs.map +1 -1
- package/lib/components/VDatePicker/index.d.mts +3 -3
- package/lib/components/VDialog/index.d.mts +21 -6
- package/lib/components/VFab/index.d.mts +15 -6
- package/lib/components/VList/VListItem.mjs +11 -5
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/index.d.mts +32 -14
- package/lib/components/VMenu/index.d.mts +21 -6
- package/lib/components/VOverlay/VOverlay.mjs +10 -1
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/VOverlay/index.d.mts +6 -0
- package/lib/components/VPagination/VPagination.mjs +3 -3
- package/lib/components/VPagination/VPagination.mjs.map +1 -1
- package/lib/components/VParallax/VParallax.mjs +1 -1
- package/lib/components/VParallax/VParallax.mjs.map +1 -1
- package/lib/components/VRating/VRating.mjs +1 -1
- package/lib/components/VRating/VRating.mjs.map +1 -1
- package/lib/components/VSelect/index.d.mts +23 -8
- package/lib/components/VSlider/slider.mjs +1 -1
- package/lib/components/VSlider/slider.mjs.map +1 -1
- package/lib/components/VSnackbar/index.d.mts +21 -6
- package/lib/components/VSparkline/VBarline.mjs +1 -1
- package/lib/components/VSparkline/VBarline.mjs.map +1 -1
- package/lib/components/VTabs/index.d.mts +39 -24
- package/lib/components/VTextarea/VTextarea.mjs +2 -2
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- package/lib/components/VTooltip/index.d.mts +21 -6
- package/lib/components/index.d.mts +333 -153
- package/lib/composables/stack.mjs +2 -2
- package/lib/composables/stack.mjs.map +1 -1
- package/lib/composables/validation.mjs +2 -2
- package/lib/composables/validation.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.mts +57 -57
- package/lib/labs/VDateInput/VDateInput.mjs +3 -2
- package/lib/labs/VDateInput/VDateInput.mjs.map +1 -1
- package/lib/labs/VDateInput/index.d.mts +10 -10
- package/lib/labs/VFileUpload/VFileUpload.mjs +3 -2
- package/lib/labs/VFileUpload/VFileUpload.mjs.map +1 -1
- package/lib/labs/VFileUpload/index.d.mts +32 -14
- package/lib/labs/VNumberInput/VNumberInput.mjs +5 -5
- package/lib/labs/VNumberInput/VNumberInput.mjs.map +1 -1
- package/lib/labs/VSnackbarQueue/index.d.mts +21 -6
- package/lib/labs/VTimePicker/VTimePicker.mjs +30 -31
- package/lib/labs/VTimePicker/VTimePicker.mjs.map +1 -1
- package/lib/labs/VTimePicker/VTimePickerControls.mjs +14 -13
- package/lib/labs/VTimePicker/VTimePickerControls.mjs.map +1 -1
- package/lib/labs/VTimePicker/index.d.mts +35 -13
- package/lib/labs/VTimePicker/shared.mjs +2 -0
- package/lib/labs/VTimePicker/shared.mjs.map +1 -0
- package/lib/labs/VTreeview/index.d.mts +32 -14
- package/lib/labs/components.d.mts +128 -55
- package/lib/locale/adapters/vuetify.mjs +1 -1
- package/lib/locale/adapters/vuetify.mjs.map +1 -1
- package/lib/util/animation.mjs +8 -8
- package/lib/util/animation.mjs.map +1 -1
- package/lib/util/helpers.mjs +6 -4
- package/lib/util/helpers.mjs.map +1 -1
- package/package.json +2 -2
- package/lib/labs/VTimePicker/SelectingTimes.mjs +0 -10
- package/lib/labs/VTimePicker/SelectingTimes.mjs.map +0 -1
package/dist/vuetify.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vuetify v3.7.
|
|
2
|
+
* Vuetify v3.7.16
|
|
3
3
|
* Forged by John Leider
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -84,12 +84,14 @@
|
|
|
84
84
|
let unit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'px';
|
|
85
85
|
if (str == null || str === '') {
|
|
86
86
|
return undefined;
|
|
87
|
-
}
|
|
87
|
+
}
|
|
88
|
+
const num = Number(str);
|
|
89
|
+
if (isNaN(num)) {
|
|
88
90
|
return String(str);
|
|
89
|
-
} else if (!isFinite(
|
|
91
|
+
} else if (!isFinite(num)) {
|
|
90
92
|
return undefined;
|
|
91
93
|
} else {
|
|
92
|
-
return `${
|
|
94
|
+
return `${num}${unit}`;
|
|
93
95
|
}
|
|
94
96
|
}
|
|
95
97
|
function isObject(obj) {
|
|
@@ -617,16 +619,16 @@
|
|
|
617
619
|
let ta, sx, sy, dx, dy;
|
|
618
620
|
if (tx.startsWith('matrix3d(')) {
|
|
619
621
|
ta = tx.slice(9, -1).split(/, /);
|
|
620
|
-
sx =
|
|
621
|
-
sy =
|
|
622
|
-
dx =
|
|
623
|
-
dy =
|
|
622
|
+
sx = Number(ta[0]);
|
|
623
|
+
sy = Number(ta[5]);
|
|
624
|
+
dx = Number(ta[12]);
|
|
625
|
+
dy = Number(ta[13]);
|
|
624
626
|
} else if (tx.startsWith('matrix(')) {
|
|
625
627
|
ta = tx.slice(7, -1).split(/, /);
|
|
626
|
-
sx =
|
|
627
|
-
sy =
|
|
628
|
-
dx =
|
|
629
|
-
dy =
|
|
628
|
+
sx = Number(ta[0]);
|
|
629
|
+
sy = Number(ta[3]);
|
|
630
|
+
dx = Number(ta[4]);
|
|
631
|
+
dy = Number(ta[5]);
|
|
630
632
|
} else {
|
|
631
633
|
return new Box(rect);
|
|
632
634
|
}
|
|
@@ -2520,7 +2522,7 @@
|
|
|
2520
2522
|
const LANG_PREFIX = '$vuetify.';
|
|
2521
2523
|
const replace = (str, params) => {
|
|
2522
2524
|
return str.replace(/\{(\d+)\}/g, (match, index) => {
|
|
2523
|
-
return String(params[
|
|
2525
|
+
return String(params[Number(index)]);
|
|
2524
2526
|
});
|
|
2525
2527
|
};
|
|
2526
2528
|
const createTranslateFunction = (current, fallback, messages) => {
|
|
@@ -5809,7 +5811,10 @@
|
|
|
5809
5811
|
type: [Boolean, Object],
|
|
5810
5812
|
default: true
|
|
5811
5813
|
},
|
|
5812
|
-
text:
|
|
5814
|
+
text: {
|
|
5815
|
+
type: [String, Number, Boolean],
|
|
5816
|
+
default: undefined
|
|
5817
|
+
},
|
|
5813
5818
|
...makeBorderProps(),
|
|
5814
5819
|
...makeComponentProps(),
|
|
5815
5820
|
...makeDensityProps(),
|
|
@@ -5965,7 +5970,7 @@
|
|
|
5965
5970
|
}
|
|
5966
5971
|
}
|
|
5967
5972
|
}, {
|
|
5968
|
-
default: () => [slots.default?.() ?? props.text]
|
|
5973
|
+
default: () => [slots.default?.() ?? vue.toDisplayString(props.text)]
|
|
5969
5974
|
})]), !props.icon && hasAppend && vue.createVNode("span", {
|
|
5970
5975
|
"key": "append",
|
|
5971
5976
|
"class": "v-btn__append"
|
|
@@ -6973,7 +6978,7 @@
|
|
|
6973
6978
|
const isPristine = vue.shallowRef(true);
|
|
6974
6979
|
const isDirty = vue.computed(() => !!(wrapInArray(model.value === '' ? null : model.value).length || wrapInArray(validationModel.value === '' ? null : validationModel.value).length));
|
|
6975
6980
|
const errorMessages = vue.computed(() => {
|
|
6976
|
-
return props.errorMessages?.length ? wrapInArray(props.errorMessages).concat(internalErrorMessages.value).slice(0, Math.max(0,
|
|
6981
|
+
return props.errorMessages?.length ? wrapInArray(props.errorMessages).concat(internalErrorMessages.value).slice(0, Math.max(0, Number(props.maxErrors))) : internalErrorMessages.value;
|
|
6977
6982
|
});
|
|
6978
6983
|
const validateOn = vue.computed(() => {
|
|
6979
6984
|
let value = (props.validateOn ?? form.validateOn?.value) || 'input';
|
|
@@ -7064,7 +7069,7 @@
|
|
|
7064
7069
|
const results = [];
|
|
7065
7070
|
isValidating.value = true;
|
|
7066
7071
|
for (const rule of props.rules) {
|
|
7067
|
-
if (results.length >=
|
|
7072
|
+
if (results.length >= Number(props.maxErrors ?? 1)) {
|
|
7068
7073
|
break;
|
|
7069
7074
|
}
|
|
7070
7075
|
const handler = typeof rule === 'function' ? rule : () => rule;
|
|
@@ -8125,7 +8130,10 @@
|
|
|
8125
8130
|
type: [Boolean, Object],
|
|
8126
8131
|
default: true
|
|
8127
8132
|
},
|
|
8128
|
-
text:
|
|
8133
|
+
text: {
|
|
8134
|
+
type: [String, Number, Boolean],
|
|
8135
|
+
default: undefined
|
|
8136
|
+
},
|
|
8129
8137
|
modelValue: {
|
|
8130
8138
|
type: Boolean,
|
|
8131
8139
|
default: true
|
|
@@ -8294,7 +8302,7 @@
|
|
|
8294
8302
|
toggle: group?.toggle,
|
|
8295
8303
|
value: group?.value.value,
|
|
8296
8304
|
disabled: props.disabled
|
|
8297
|
-
}) ?? props.text]), hasAppend && vue.createVNode("div", {
|
|
8305
|
+
}) ?? vue.toDisplayString(props.text)]), hasAppend && vue.createVNode("div", {
|
|
8298
8306
|
"key": "append",
|
|
8299
8307
|
"class": "v-chip__append"
|
|
8300
8308
|
}, [!slots.append ? vue.createVNode(vue.Fragment, null, [props.appendIcon && vue.createVNode(VIcon, {
|
|
@@ -9173,8 +9181,14 @@
|
|
|
9173
9181
|
default: true
|
|
9174
9182
|
},
|
|
9175
9183
|
slim: Boolean,
|
|
9176
|
-
subtitle:
|
|
9177
|
-
|
|
9184
|
+
subtitle: {
|
|
9185
|
+
type: [String, Number, Boolean],
|
|
9186
|
+
default: undefined
|
|
9187
|
+
},
|
|
9188
|
+
title: {
|
|
9189
|
+
type: [String, Number, Boolean],
|
|
9190
|
+
default: undefined
|
|
9191
|
+
},
|
|
9178
9192
|
value: null,
|
|
9179
9193
|
onClick: EventProp(),
|
|
9180
9194
|
onClickOnce: EventProp(),
|
|
@@ -9367,13 +9381,13 @@
|
|
|
9367
9381
|
}, {
|
|
9368
9382
|
default: () => [slots.title?.({
|
|
9369
9383
|
title: props.title
|
|
9370
|
-
}) ?? props.title]
|
|
9384
|
+
}) ?? vue.toDisplayString(props.title)]
|
|
9371
9385
|
}), hasSubtitle && vue.createVNode(VListItemSubtitle, {
|
|
9372
9386
|
"key": "subtitle"
|
|
9373
9387
|
}, {
|
|
9374
9388
|
default: () => [slots.subtitle?.({
|
|
9375
9389
|
subtitle: props.subtitle
|
|
9376
|
-
}) ?? props.subtitle]
|
|
9390
|
+
}) ?? vue.toDisplayString(props.subtitle)]
|
|
9377
9391
|
}), slots.default?.(slotProps.value)]), hasAppend && vue.createVNode("div", {
|
|
9378
9392
|
"key": "append",
|
|
9379
9393
|
"class": "v-list-item__append"
|
|
@@ -10974,10 +10988,10 @@
|
|
|
10974
10988
|
activeChildren: new Set()
|
|
10975
10989
|
});
|
|
10976
10990
|
vue.provide(StackSymbol, stack);
|
|
10977
|
-
const _zIndex = vue.shallowRef(
|
|
10991
|
+
const _zIndex = vue.shallowRef(Number(zIndex.value));
|
|
10978
10992
|
useToggleScope(isActive, () => {
|
|
10979
10993
|
const lastZIndex = globalStack.at(-1)?.[1];
|
|
10980
|
-
_zIndex.value = lastZIndex ? lastZIndex + 10 :
|
|
10994
|
+
_zIndex.value = lastZIndex ? lastZIndex + 10 : Number(zIndex.value);
|
|
10981
10995
|
if (createStackEntry) {
|
|
10982
10996
|
globalStack.push([vm.uid, _zIndex.value]);
|
|
10983
10997
|
}
|
|
@@ -11186,6 +11200,7 @@
|
|
|
11186
11200
|
emits: {
|
|
11187
11201
|
'click:outside': e => true,
|
|
11188
11202
|
'update:modelValue': value => true,
|
|
11203
|
+
keydown: e => true,
|
|
11189
11204
|
afterEnter: () => true,
|
|
11190
11205
|
afterLeave: () => true
|
|
11191
11206
|
},
|
|
@@ -11298,6 +11313,9 @@
|
|
|
11298
11313
|
});
|
|
11299
11314
|
function onKeydown(e) {
|
|
11300
11315
|
if (e.key === 'Escape' && globalTop.value) {
|
|
11316
|
+
if (!contentEl.value?.contains(document.activeElement)) {
|
|
11317
|
+
emit('keydown', e);
|
|
11318
|
+
}
|
|
11301
11319
|
if (!props.persistent) {
|
|
11302
11320
|
isActive.value = false;
|
|
11303
11321
|
if (contentEl.value?.contains(document.activeElement)) {
|
|
@@ -11306,6 +11324,10 @@
|
|
|
11306
11324
|
} else animateClick();
|
|
11307
11325
|
}
|
|
11308
11326
|
}
|
|
11327
|
+
function onKeydownSelf(e) {
|
|
11328
|
+
if (e.key === 'Escape' && !globalTop.value) return;
|
|
11329
|
+
emit('keydown', e);
|
|
11330
|
+
}
|
|
11309
11331
|
const router = useRouter();
|
|
11310
11332
|
useToggleScope(() => props.closeOnBack, () => {
|
|
11311
11333
|
useBackButton(router, next => {
|
|
@@ -11368,7 +11390,8 @@
|
|
|
11368
11390
|
'--v-overlay-opacity': props.opacity,
|
|
11369
11391
|
top: convertToUnit(top.value)
|
|
11370
11392
|
}, props.style],
|
|
11371
|
-
"ref": root
|
|
11393
|
+
"ref": root,
|
|
11394
|
+
"onKeydown": onKeydownSelf
|
|
11372
11395
|
}, scopeId, attrs), [vue.createVNode(Scrim, vue.mergeProps({
|
|
11373
11396
|
"color": scrimColor,
|
|
11374
11397
|
"modelValue": isActive.value && !!props.scrim,
|
|
@@ -13759,11 +13782,11 @@
|
|
|
13759
13782
|
locationStyles
|
|
13760
13783
|
} = useLocation(props, true, side => {
|
|
13761
13784
|
const base = props.floating ? props.dot ? 2 : 4 : props.dot ? 8 : 12;
|
|
13762
|
-
return base + (['top', 'bottom'].includes(side) ?
|
|
13785
|
+
return base + (['top', 'bottom'].includes(side) ? Number(props.offsetY ?? 0) : ['left', 'right'].includes(side) ? Number(props.offsetX ?? 0) : 0);
|
|
13763
13786
|
});
|
|
13764
13787
|
useRender(() => {
|
|
13765
13788
|
const value = Number(props.content);
|
|
13766
|
-
const content = !props.max || isNaN(value) ? props.content : value <=
|
|
13789
|
+
const content = !props.max || isNaN(value) ? props.content : value <= Number(props.max) ? value : `${props.max}+`;
|
|
13767
13790
|
const [badgeAttrs, attrs] = pickWithRest(ctx.attrs, ['aria-atomic', 'aria-label', 'aria-live', 'role', 'title']);
|
|
13768
13791
|
return vue.createVNode(props.tag, vue.mergeProps({
|
|
13769
13792
|
"class": ['v-badge', {
|
|
@@ -14462,8 +14485,14 @@
|
|
|
14462
14485
|
appendIcon: IconValue,
|
|
14463
14486
|
prependAvatar: String,
|
|
14464
14487
|
prependIcon: IconValue,
|
|
14465
|
-
subtitle:
|
|
14466
|
-
|
|
14488
|
+
subtitle: {
|
|
14489
|
+
type: [String, Number, Boolean],
|
|
14490
|
+
default: undefined
|
|
14491
|
+
},
|
|
14492
|
+
title: {
|
|
14493
|
+
type: [String, Number, Boolean],
|
|
14494
|
+
default: undefined
|
|
14495
|
+
},
|
|
14467
14496
|
...makeComponentProps(),
|
|
14468
14497
|
...makeDensityProps()
|
|
14469
14498
|
}, 'VCardItem');
|
|
@@ -14513,11 +14542,11 @@
|
|
|
14513
14542
|
}, [hasTitle && vue.createVNode(VCardTitle, {
|
|
14514
14543
|
"key": "title"
|
|
14515
14544
|
}, {
|
|
14516
|
-
default: () => [slots.title?.() ?? props.title]
|
|
14545
|
+
default: () => [slots.title?.() ?? vue.toDisplayString(props.title)]
|
|
14517
14546
|
}), hasSubtitle && vue.createVNode(VCardSubtitle, {
|
|
14518
14547
|
"key": "subtitle"
|
|
14519
14548
|
}, {
|
|
14520
|
-
default: () => [slots.subtitle?.() ?? props.subtitle]
|
|
14549
|
+
default: () => [slots.subtitle?.() ?? vue.toDisplayString(props.subtitle)]
|
|
14521
14550
|
}), slots.default?.()]), hasAppend && vue.createVNode("div", {
|
|
14522
14551
|
"key": "append",
|
|
14523
14552
|
"class": "v-card-item__append"
|
|
@@ -14589,9 +14618,18 @@
|
|
|
14589
14618
|
type: [Boolean, Object],
|
|
14590
14619
|
default: true
|
|
14591
14620
|
},
|
|
14592
|
-
subtitle:
|
|
14593
|
-
|
|
14594
|
-
|
|
14621
|
+
subtitle: {
|
|
14622
|
+
type: [String, Number, Boolean],
|
|
14623
|
+
default: undefined
|
|
14624
|
+
},
|
|
14625
|
+
text: {
|
|
14626
|
+
type: [String, Number, Boolean],
|
|
14627
|
+
default: undefined
|
|
14628
|
+
},
|
|
14629
|
+
title: {
|
|
14630
|
+
type: [String, Number, Boolean],
|
|
14631
|
+
default: undefined
|
|
14632
|
+
},
|
|
14595
14633
|
...makeBorderProps(),
|
|
14596
14634
|
...makeComponentProps(),
|
|
14597
14635
|
...makeDensityProps(),
|
|
@@ -15060,7 +15098,7 @@
|
|
|
15060
15098
|
vue.onMounted(startTimeout);
|
|
15061
15099
|
function startTimeout() {
|
|
15062
15100
|
if (!props.cycle || !windowRef.value) return;
|
|
15063
|
-
slideTimeout = window.setTimeout(windowRef.value.group.next,
|
|
15101
|
+
slideTimeout = window.setTimeout(windowRef.value.group.next, Number(props.interval) > 0 ? Number(props.interval) : 6000);
|
|
15064
15102
|
}
|
|
15065
15103
|
function restartTimeout() {
|
|
15066
15104
|
window.clearTimeout(slideTimeout);
|
|
@@ -15786,7 +15824,7 @@
|
|
|
15786
15824
|
const useSteps = props => {
|
|
15787
15825
|
const min = vue.computed(() => parseFloat(props.min));
|
|
15788
15826
|
const max = vue.computed(() => parseFloat(props.max));
|
|
15789
|
-
const step = vue.computed(() =>
|
|
15827
|
+
const step = vue.computed(() => Number(props.step) > 0 ? parseFloat(props.step) : 0);
|
|
15790
15828
|
const decimals = vue.computed(() => Math.max(getDecimals(step.value), getDecimals(min.value)));
|
|
15791
15829
|
function roundValue(value) {
|
|
15792
15830
|
value = parseFloat(value);
|
|
@@ -18741,8 +18779,8 @@
|
|
|
18741
18779
|
}, 'DataTable-paginate');
|
|
18742
18780
|
const VDataTablePaginationSymbol = Symbol.for('vuetify:data-table-pagination');
|
|
18743
18781
|
function createPagination(props) {
|
|
18744
|
-
const page = useProxiedModel(props, 'page', undefined, value =>
|
|
18745
|
-
const itemsPerPage = useProxiedModel(props, 'itemsPerPage', undefined, value =>
|
|
18782
|
+
const page = useProxiedModel(props, 'page', undefined, value => Number(value ?? 1));
|
|
18783
|
+
const itemsPerPage = useProxiedModel(props, 'itemsPerPage', undefined, value => Number(value ?? 10));
|
|
18746
18784
|
return {
|
|
18747
18785
|
page,
|
|
18748
18786
|
itemsPerPage
|
|
@@ -19531,7 +19569,7 @@
|
|
|
19531
19569
|
const minButtons = props.showFirstLastPage ? 5 : 3;
|
|
19532
19570
|
return Math.max(0, Math.floor(
|
|
19533
19571
|
// Round to two decimal places to avoid floating point errors
|
|
19534
|
-
|
|
19572
|
+
Number(((totalWidth - itemWidth * minButtons) / itemWidth).toFixed(2))));
|
|
19535
19573
|
}
|
|
19536
19574
|
const range = vue.computed(() => {
|
|
19537
19575
|
if (length.value <= 0 || isNaN(length.value) || length.value > Number.MAX_SAFE_INTEGER) return [];
|
|
@@ -19602,7 +19640,7 @@
|
|
|
19602
19640
|
ref,
|
|
19603
19641
|
ellipsis: false,
|
|
19604
19642
|
icon: true,
|
|
19605
|
-
disabled: !!props.disabled ||
|
|
19643
|
+
disabled: !!props.disabled || Number(props.length) < 2,
|
|
19606
19644
|
color: isActive ? props.activeColor : props.color,
|
|
19607
19645
|
'aria-current': isActive,
|
|
19608
19646
|
'aria-label': t(isActive ? props.currentPageAriaLabel : props.pageAriaLabel, item),
|
|
@@ -19651,7 +19689,7 @@
|
|
|
19651
19689
|
refs.value[currentIndex]?.$el.focus();
|
|
19652
19690
|
}
|
|
19653
19691
|
function onKeydown(e) {
|
|
19654
|
-
if (e.key === keyValues.left && !props.disabled && page.value >
|
|
19692
|
+
if (e.key === keyValues.left && !props.disabled && page.value > Number(props.start)) {
|
|
19655
19693
|
page.value = page.value - 1;
|
|
19656
19694
|
vue.nextTick(updateFocus);
|
|
19657
19695
|
} else if (e.key === keyValues.right && !props.disabled && page.value < start.value + length.value - 1) {
|
|
@@ -19984,8 +20022,10 @@
|
|
|
19984
20022
|
} else {
|
|
19985
20023
|
if (!seenFixed) {
|
|
19986
20024
|
item.lastFixed = true;
|
|
19987
|
-
} else if (isNaN(
|
|
20025
|
+
} else if (isNaN(Number(item.width))) {
|
|
19988
20026
|
consoleError(`Multiple fixed columns should have a static width (key: ${item.key})`);
|
|
20027
|
+
} else {
|
|
20028
|
+
item.minWidth = Math.max(Number(item.width) || 0, Number(item.minWidth) || 0);
|
|
19989
20029
|
}
|
|
19990
20030
|
seenFixed = true;
|
|
19991
20031
|
}
|
|
@@ -22118,7 +22158,7 @@
|
|
|
22118
22158
|
model.value = [value];
|
|
22119
22159
|
}
|
|
22120
22160
|
}
|
|
22121
|
-
|
|
22161
|
+
useRender(() => vue.createVNode("div", {
|
|
22122
22162
|
"class": "v-date-picker-month"
|
|
22123
22163
|
}, [props.showWeek && vue.createVNode("div", {
|
|
22124
22164
|
"key": "weeks",
|
|
@@ -22140,6 +22180,13 @@
|
|
|
22140
22180
|
}, [weekDay])), daysInMonth.value.map((item, i) => {
|
|
22141
22181
|
const slotProps = {
|
|
22142
22182
|
props: {
|
|
22183
|
+
class: 'v-date-picker-month__day-btn',
|
|
22184
|
+
color: (item.isSelected || item.isToday) && !item.isDisabled ? props.color : undefined,
|
|
22185
|
+
disabled: item.isDisabled,
|
|
22186
|
+
icon: true,
|
|
22187
|
+
ripple: false,
|
|
22188
|
+
text: item.localized,
|
|
22189
|
+
variant: item.isDisabled ? item.isToday ? 'outlined' : 'text' : item.isToday && !item.isSelected ? 'outlined' : 'flat',
|
|
22143
22190
|
onClick: () => onClick(item.date)
|
|
22144
22191
|
},
|
|
22145
22192
|
item,
|
|
@@ -22157,24 +22204,9 @@
|
|
|
22157
22204
|
'v-date-picker-month__day--week-start': item.isWeekStart
|
|
22158
22205
|
}],
|
|
22159
22206
|
"data-v-date": !item.isDisabled ? item.isoDate : undefined
|
|
22160
|
-
}, [(props.showAdjacentMonths || !item.isAdjacent) && vue.createVNode(
|
|
22161
|
-
"defaults": {
|
|
22162
|
-
VBtn: {
|
|
22163
|
-
class: 'v-date-picker-month__day-btn',
|
|
22164
|
-
color: (item.isSelected || item.isToday) && !item.isDisabled ? props.color : undefined,
|
|
22165
|
-
disabled: item.isDisabled,
|
|
22166
|
-
icon: true,
|
|
22167
|
-
ripple: false,
|
|
22168
|
-
text: item.localized,
|
|
22169
|
-
variant: item.isDisabled ? item.isToday ? 'outlined' : 'text' : item.isToday && !item.isSelected ? 'outlined' : 'flat',
|
|
22170
|
-
onClick: () => onClick(item.date)
|
|
22171
|
-
}
|
|
22172
|
-
}
|
|
22173
|
-
}, {
|
|
22174
|
-
default: () => [slots.day?.(slotProps) ?? vue.createVNode(VBtn, slotProps.props, null)]
|
|
22175
|
-
})]);
|
|
22207
|
+
}, [(props.showAdjacentMonths || !item.isAdjacent) && (slots.day?.(slotProps) ?? vue.createVNode(VBtn, slotProps.props, null))]);
|
|
22176
22208
|
})])]
|
|
22177
|
-
})]);
|
|
22209
|
+
})]));
|
|
22178
22210
|
}
|
|
22179
22211
|
});
|
|
22180
22212
|
|
|
@@ -24931,7 +24963,7 @@
|
|
|
24931
24963
|
vue.watch(displayHeight, onScroll);
|
|
24932
24964
|
vue.watch(() => contentRect.value?.height, onScroll);
|
|
24933
24965
|
const scale = vue.computed(() => {
|
|
24934
|
-
return 1 - clamp(
|
|
24966
|
+
return 1 - clamp(Number(props.scale));
|
|
24935
24967
|
});
|
|
24936
24968
|
let frame = -1;
|
|
24937
24969
|
function onScroll() {
|
|
@@ -25352,7 +25384,7 @@
|
|
|
25352
25384
|
themeClasses
|
|
25353
25385
|
} = provideTheme(props);
|
|
25354
25386
|
const rating = useProxiedModel(props, 'modelValue');
|
|
25355
|
-
const normalizedValue = vue.computed(() => clamp(parseFloat(rating.value), 0,
|
|
25387
|
+
const normalizedValue = vue.computed(() => clamp(parseFloat(rating.value), 0, Number(props.length)));
|
|
25356
25388
|
const range = vue.computed(() => createRange(Number(props.length), 1));
|
|
25357
25389
|
const increments = vue.computed(() => range.value.flatMap(v => props.halfIncrements ? [v - 0.5, v] : [v]));
|
|
25358
25390
|
const hoverIndex = vue.shallowRef(-1);
|
|
@@ -25963,7 +25995,7 @@
|
|
|
25963
25995
|
const height = Math.abs(gridY * value);
|
|
25964
25996
|
return {
|
|
25965
25997
|
x: minX + index * gridX,
|
|
25966
|
-
y: horizonY - height +
|
|
25998
|
+
y: horizonY - height + Number(value < 0) * height,
|
|
25967
25999
|
height,
|
|
25968
26000
|
value
|
|
25969
26001
|
};
|
|
@@ -27401,10 +27433,10 @@
|
|
|
27401
27433
|
}
|
|
27402
27434
|
}
|
|
27403
27435
|
const sizerRef = vue.ref();
|
|
27404
|
-
const rows = vue.ref(
|
|
27436
|
+
const rows = vue.ref(Number(props.rows));
|
|
27405
27437
|
const isPlainOrUnderlined = vue.computed(() => ['plain', 'underlined'].includes(props.variant));
|
|
27406
27438
|
vue.watchEffect(() => {
|
|
27407
|
-
if (!props.autoGrow) rows.value =
|
|
27439
|
+
if (!props.autoGrow) rows.value = Number(props.rows);
|
|
27408
27440
|
});
|
|
27409
27441
|
function calculateInputHeight() {
|
|
27410
27442
|
if (!props.autoGrow) return;
|
|
@@ -28421,7 +28453,7 @@
|
|
|
28421
28453
|
goTo
|
|
28422
28454
|
};
|
|
28423
28455
|
}
|
|
28424
|
-
const version$1 = "3.7.
|
|
28456
|
+
const version$1 = "3.7.16";
|
|
28425
28457
|
createVuetify$1.version = version$1;
|
|
28426
28458
|
|
|
28427
28459
|
// Vue's inject() can only be used in setup
|
|
@@ -28446,7 +28478,7 @@
|
|
|
28446
28478
|
...options
|
|
28447
28479
|
});
|
|
28448
28480
|
};
|
|
28449
|
-
const version = "3.7.
|
|
28481
|
+
const version = "3.7.16";
|
|
28450
28482
|
createVuetify.version = version;
|
|
28451
28483
|
|
|
28452
28484
|
exports.blueprints = index;
|