vuetify 3.11.0 → 3.11.2
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 +2912 -2904
- package/dist/json/importMap-labs.json +30 -30
- package/dist/json/importMap.json +198 -198
- package/dist/json/tags.json +2 -0
- package/dist/json/web-types.json +4995 -4976
- package/dist/vuetify-labs.cjs +41 -31
- package/dist/vuetify-labs.css +5310 -5314
- package/dist/vuetify-labs.d.ts +85 -72
- package/dist/vuetify-labs.esm.js +41 -31
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +41 -31
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +37 -27
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +4184 -4185
- package/dist/vuetify.d.ts +85 -72
- package/dist/vuetify.esm.js +37 -27
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +37 -27
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +25 -21
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VDataTable/VDataTable.js +1 -1
- package/lib/components/VDataTable/VDataTable.js.map +1 -1
- package/lib/components/VDataTable/VDataTableHeaders.d.ts +10 -0
- package/lib/components/VDataTable/VDataTableHeaders.js +7 -7
- package/lib/components/VDataTable/VDataTableHeaders.js.map +1 -1
- package/lib/components/VDatePicker/VDatePicker.js +8 -3
- package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
- package/lib/components/VDialog/__test__/VDialog.spec.browser.js +5 -9
- package/lib/components/VDialog/__test__/VDialog.spec.browser.js.map +1 -1
- package/lib/components/VHotkey/_variables.scss +1 -1
- package/lib/components/VNumberInput/VNumberInput.js +1 -1
- package/lib/components/VNumberInput/VNumberInput.js.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroup.js +4 -1
- package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
- package/lib/components/VTabs/VTab.d.ts +13 -0
- package/lib/components/VTabs/VTab.js +3 -2
- package/lib/components/VTabs/VTab.js.map +1 -1
- package/lib/components/VTabs/VTabs.css +6 -7
- package/lib/components/VTabs/VTabs.js +1 -0
- package/lib/components/VTabs/VTabs.js.map +1 -1
- package/lib/components/VTabs/VTabs.sass +6 -7
- package/lib/components/VTextField/VTextField.js +8 -10
- package/lib/components/VTextField/VTextField.js.map +1 -1
- package/lib/composables/autofocus.js +3 -1
- package/lib/composables/autofocus.js.map +1 -1
- package/lib/entry-bundler.js +1 -1
- package/lib/framework.d.ts +72 -72
- package/lib/framework.js +1 -1
- package/lib/labs/VMaskInput/VMaskInput.js +4 -4
- package/lib/labs/VMaskInput/VMaskInput.js.map +1 -1
- package/lib/labs/VStepperVertical/VStepperVerticalItem.css +0 -3
- package/lib/labs/VStepperVertical/VStepperVerticalItem.sass +0 -3
- package/package.json +26 -26
package/dist/vuetify.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vuetify v3.11.
|
|
2
|
+
* Vuetify v3.11.2
|
|
3
3
|
* Forged by John Leider
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -8464,7 +8464,7 @@
|
|
|
8464
8464
|
},
|
|
8465
8465
|
showArrows: {
|
|
8466
8466
|
type: [Boolean, String],
|
|
8467
|
-
validator: v => typeof v === 'boolean' || ['always', 'desktop', 'mobile'].includes(v)
|
|
8467
|
+
validator: v => typeof v === 'boolean' || ['always', 'desktop', 'mobile', 'never'].includes(v)
|
|
8468
8468
|
},
|
|
8469
8469
|
...makeComponentProps(),
|
|
8470
8470
|
...makeDisplayProps({
|
|
@@ -8698,6 +8698,9 @@
|
|
|
8698
8698
|
const hasOverflowOrScroll = vue.computed(() => isOverflowing.value || Math.abs(scrollOffset.value) > 0);
|
|
8699
8699
|
const hasAffixes = vue.computed(() => {
|
|
8700
8700
|
switch (props.showArrows) {
|
|
8701
|
+
case 'never':
|
|
8702
|
+
return false;
|
|
8703
|
+
|
|
8701
8704
|
// Always show arrows on desktop & mobile
|
|
8702
8705
|
case 'always':
|
|
8703
8706
|
return true;
|
|
@@ -13164,7 +13167,9 @@
|
|
|
13164
13167
|
function useAutofocus(props) {
|
|
13165
13168
|
function onIntersect(isIntersecting, entries) {
|
|
13166
13169
|
if (!props.autofocus || !isIntersecting) return;
|
|
13167
|
-
entries[0].target
|
|
13170
|
+
const el = entries[0].target;
|
|
13171
|
+
const target = el.matches('input,textarea') ? el : el.querySelector('input,textarea');
|
|
13172
|
+
target?.focus();
|
|
13168
13173
|
}
|
|
13169
13174
|
return {
|
|
13170
13175
|
onIntersect
|
|
@@ -13342,7 +13347,7 @@
|
|
|
13342
13347
|
},
|
|
13343
13348
|
controlRef
|
|
13344
13349
|
} = _ref3;
|
|
13345
|
-
const inputNode = vue.
|
|
13350
|
+
const inputNode = vue.createElementVNode("input", vue.mergeProps({
|
|
13346
13351
|
"ref": val => inputRef.value = controlRef.value = val,
|
|
13347
13352
|
"value": model.value,
|
|
13348
13353
|
"onInput": onInput,
|
|
@@ -13357,21 +13362,19 @@
|
|
|
13357
13362
|
"type": props.type,
|
|
13358
13363
|
"onFocus": focus,
|
|
13359
13364
|
"onBlur": blur
|
|
13360
|
-
}, slotProps, inputAttrs), null)
|
|
13361
|
-
handler: onIntersect
|
|
13362
|
-
}, null, {
|
|
13363
|
-
once: true
|
|
13364
|
-
}]]);
|
|
13365
|
+
}, slotProps, inputAttrs), null);
|
|
13365
13366
|
return vue.createElementVNode(vue.Fragment, null, [props.prefix && vue.createElementVNode("span", {
|
|
13366
13367
|
"class": "v-text-field__prefix"
|
|
13367
13368
|
}, [vue.createElementVNode("span", {
|
|
13368
13369
|
"class": "v-text-field__prefix__text"
|
|
13369
|
-
}, [props.prefix])]), slots.default ? vue.createElementVNode("div", {
|
|
13370
|
+
}, [props.prefix])]), vue.withDirectives(slots.default ? vue.createElementVNode("div", {
|
|
13370
13371
|
"class": vue.normalizeClass(fieldClass),
|
|
13371
13372
|
"data-no-activator": ""
|
|
13372
13373
|
}, [slots.default(), inputNode]) : vue.cloneVNode(inputNode, {
|
|
13373
13374
|
class: fieldClass
|
|
13374
|
-
}),
|
|
13375
|
+
}), [[Intersect, onIntersect, null, {
|
|
13376
|
+
once: true
|
|
13377
|
+
}]]), props.suffix && vue.createElementVNode("span", {
|
|
13375
13378
|
"class": "v-text-field__suffix"
|
|
13376
13379
|
}, [vue.createElementVNode("span", {
|
|
13377
13380
|
"class": "v-text-field__suffix__text"
|
|
@@ -25032,6 +25035,7 @@
|
|
|
25032
25035
|
disableSort: Boolean,
|
|
25033
25036
|
fixedHeader: Boolean,
|
|
25034
25037
|
multiSort: Boolean,
|
|
25038
|
+
initialSortOrder: String,
|
|
25035
25039
|
sortAscIcon: {
|
|
25036
25040
|
type: IconValue,
|
|
25037
25041
|
default: '$sortAsc'
|
|
@@ -25094,8 +25098,7 @@
|
|
|
25094
25098
|
}
|
|
25095
25099
|
function getSortIcon(column) {
|
|
25096
25100
|
const item = sortBy.value.find(item => item.key === column.key);
|
|
25097
|
-
|
|
25098
|
-
return item.order === 'asc' ? props.sortAscIcon : props.sortDescIcon;
|
|
25101
|
+
return !item && props.initialSortOrder === 'asc' || item?.order === 'asc' ? props.sortAscIcon : props.sortDescIcon;
|
|
25099
25102
|
}
|
|
25100
25103
|
const {
|
|
25101
25104
|
backgroundColorClasses,
|
|
@@ -25195,6 +25198,7 @@
|
|
|
25195
25198
|
const displayItems = vue.computed(() => {
|
|
25196
25199
|
return columns.value.filter(column => column?.sortable && !props.disableSort);
|
|
25197
25200
|
});
|
|
25201
|
+
const showSelectColumn = columns.value.find(column => column.key === 'data-table-select');
|
|
25198
25202
|
return vue.createVNode(VDataTableColumn, vue.mergeProps({
|
|
25199
25203
|
"tag": "th",
|
|
25200
25204
|
"class": [...headerCellClasses.value],
|
|
@@ -25212,16 +25216,15 @@
|
|
|
25212
25216
|
"label": t('$vuetify.dataTable.sortBy'),
|
|
25213
25217
|
"multiple": props.multiSort,
|
|
25214
25218
|
"variant": "underlined",
|
|
25215
|
-
"onClick:clear": () => sortBy.value = []
|
|
25216
|
-
"onClick:append": () => selectAll(!allSelected.value)
|
|
25219
|
+
"onClick:clear": () => sortBy.value = []
|
|
25217
25220
|
}, {
|
|
25218
|
-
append: () => vue.createVNode(VCheckboxBtn, {
|
|
25221
|
+
append: showSelectColumn ? () => vue.createVNode(VCheckboxBtn, {
|
|
25219
25222
|
"color": props.color,
|
|
25220
25223
|
"density": "compact",
|
|
25221
25224
|
"modelValue": allSelected.value,
|
|
25222
25225
|
"indeterminate": someSelected.value && !allSelected.value,
|
|
25223
|
-
"onUpdate:modelValue": selectAll
|
|
25224
|
-
}, null),
|
|
25226
|
+
"onUpdate:modelValue": () => selectAll(!allSelected.value)
|
|
25227
|
+
}, null) : undefined,
|
|
25225
25228
|
chip: props => vue.createVNode(VChip, {
|
|
25226
25229
|
"onClick": props.item.raw?.sortable ? () => toggleSort(props.item.raw) : undefined,
|
|
25227
25230
|
"onMousedown": e => {
|
|
@@ -25777,7 +25780,7 @@
|
|
|
25777
25780
|
...makeDataTableItemsProps(),
|
|
25778
25781
|
...makeDataTableSelectProps(),
|
|
25779
25782
|
...makeDataTableSortProps(),
|
|
25780
|
-
...omit(makeVDataTableHeadersProps(), ['multiSort']),
|
|
25783
|
+
...omit(makeVDataTableHeadersProps(), ['multiSort', 'initialSortOrder']),
|
|
25781
25784
|
...makeVTableProps()
|
|
25782
25785
|
}, 'DataTable');
|
|
25783
25786
|
const makeVDataTableProps = propsFactory({
|
|
@@ -27669,7 +27672,10 @@
|
|
|
27669
27672
|
const formattedDate = model.value[0] && adapter.isValid(model.value[0]) ? adapter.format(adapter.date(model.value[0]), props.headerDateFormat) : t(props.header);
|
|
27670
27673
|
return props.landscape && formattedDate.split(' ').length === 3 ? formattedDate.replace(' ', '\n') : formattedDate;
|
|
27671
27674
|
});
|
|
27672
|
-
const date = vue.toRef(() =>
|
|
27675
|
+
const date = vue.toRef(() => {
|
|
27676
|
+
const monthTwoDigits = String(month.value + 1).padStart(2, '0');
|
|
27677
|
+
return adapter.parseISO(`${year.value}-${monthTwoDigits}-01`);
|
|
27678
|
+
});
|
|
27673
27679
|
const monthYearText = vue.toRef(() => adapter.format(date.value, 'monthAndYear'));
|
|
27674
27680
|
const monthText = vue.toRef(() => adapter.format(date.value, 'monthShort'));
|
|
27675
27681
|
const yearText = vue.toRef(() => adapter.format(date.value, 'year'));
|
|
@@ -27771,7 +27777,8 @@
|
|
|
27771
27777
|
function onClickNextYear() {
|
|
27772
27778
|
year.value++;
|
|
27773
27779
|
if (maxDate.value) {
|
|
27774
|
-
const
|
|
27780
|
+
const monthTwoDigits = String(month.value + 1).padStart(2, '0');
|
|
27781
|
+
const monthStart = adapter.parseISO(`${year.value}-${monthTwoDigits}-01`);
|
|
27775
27782
|
if (adapter.isAfter(monthStart, maxDate.value)) {
|
|
27776
27783
|
month.value = adapter.getMonth(maxDate.value);
|
|
27777
27784
|
}
|
|
@@ -27781,7 +27788,8 @@
|
|
|
27781
27788
|
function onClickPrevYear() {
|
|
27782
27789
|
year.value--;
|
|
27783
27790
|
if (minDate.value) {
|
|
27784
|
-
const
|
|
27791
|
+
const monthTwoDigits = String(month.value + 1).padStart(2, '0');
|
|
27792
|
+
const monthStart = adapter.endOfMonth(adapter.parseISO(`${year.value}-${monthTwoDigits}-01`));
|
|
27785
27793
|
if (adapter.isAfter(minDate.value, monthStart)) {
|
|
27786
27794
|
month.value = adapter.getMonth(minDate.value);
|
|
27787
27795
|
}
|
|
@@ -30638,7 +30646,7 @@
|
|
|
30638
30646
|
});
|
|
30639
30647
|
const isOutOfRange = vue.computed(() => {
|
|
30640
30648
|
if (_lastParsedValue.value === null) return false;
|
|
30641
|
-
const numberFromText = Number(_inputText.value);
|
|
30649
|
+
const numberFromText = Number(_inputText.value?.replace(decimalSeparator.value, '.'));
|
|
30642
30650
|
return numberFromText !== clamp(numberFromText, props.min, props.max);
|
|
30643
30651
|
});
|
|
30644
30652
|
const canIncrease = vue.computed(() => {
|
|
@@ -33508,6 +33516,7 @@
|
|
|
33508
33516
|
sliderTransition: String,
|
|
33509
33517
|
sliderTransitionDuration: [String, Number],
|
|
33510
33518
|
hideSlider: Boolean,
|
|
33519
|
+
inset: Boolean,
|
|
33511
33520
|
direction: {
|
|
33512
33521
|
type: String,
|
|
33513
33522
|
default: 'horizontal'
|
|
@@ -33602,8 +33611,8 @@
|
|
|
33602
33611
|
return vue.createVNode(VBtn, vue.mergeProps({
|
|
33603
33612
|
"symbol": VTabsSymbol,
|
|
33604
33613
|
"ref": rootEl,
|
|
33605
|
-
"class": ['v-tab', props.class, isSelected.value ? insetColorClasses.value : []],
|
|
33606
|
-
"style": [props.style, isSelected.value ? insetColorStyles.value : []],
|
|
33614
|
+
"class": ['v-tab', props.class, isSelected.value && props.inset ? insetColorClasses.value : []],
|
|
33615
|
+
"style": [props.style, isSelected.value && props.inset ? insetColorStyles.value : []],
|
|
33607
33616
|
"tabindex": isSelected.value ? 0 : -1,
|
|
33608
33617
|
"role": "tab",
|
|
33609
33618
|
"aria-selected": String(isSelected.value),
|
|
@@ -33766,6 +33775,7 @@
|
|
|
33766
33775
|
direction: vue.toRef(props, 'direction'),
|
|
33767
33776
|
stacked: vue.toRef(props, 'stacked'),
|
|
33768
33777
|
fixed: vue.toRef(props, 'fixedTabs'),
|
|
33778
|
+
inset: vue.toRef(props, 'inset'),
|
|
33769
33779
|
sliderColor: vue.toRef(props, 'sliderColor'),
|
|
33770
33780
|
sliderTransition: vue.toRef(props, 'sliderTransition'),
|
|
33771
33781
|
sliderTransitionDuration: vue.toRef(props, 'sliderTransitionDuration'),
|
|
@@ -36467,7 +36477,7 @@
|
|
|
36467
36477
|
};
|
|
36468
36478
|
});
|
|
36469
36479
|
}
|
|
36470
|
-
const version$1 = "3.11.
|
|
36480
|
+
const version$1 = "3.11.2";
|
|
36471
36481
|
createVuetify$1.version = version$1;
|
|
36472
36482
|
|
|
36473
36483
|
// Vue's inject() can only be used in setup
|
|
@@ -36492,7 +36502,7 @@
|
|
|
36492
36502
|
...options
|
|
36493
36503
|
});
|
|
36494
36504
|
};
|
|
36495
|
-
const version = "3.11.
|
|
36505
|
+
const version = "3.11.2";
|
|
36496
36506
|
createVuetify.version = version;
|
|
36497
36507
|
|
|
36498
36508
|
exports.blueprints = index;
|