vuetify 3.6.8 → 3.6.9
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 +4 -4
- package/dist/json/importMap-labs.json +22 -22
- package/dist/json/importMap.json +140 -140
- package/dist/json/web-types.json +12 -13
- package/dist/vuetify-labs.css +2770 -2769
- package/dist/vuetify-labs.d.ts +187 -189
- package/dist/vuetify-labs.esm.js +57 -46
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +57 -46
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +2752 -2751
- package/dist/vuetify.d.ts +231 -239
- package/dist/vuetify.esm.js +45 -39
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +45 -39
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +40 -36
- package/dist/vuetify.min.js.map +1 -1
- package/lib/blueprints/index.d.mts +58 -56
- package/lib/blueprints/md1.d.mts +58 -56
- package/lib/blueprints/md2.d.mts +58 -56
- package/lib/blueprints/md3.d.mts +58 -56
- package/lib/components/VAutocomplete/VAutocomplete.mjs +17 -14
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VBanner/VBanner.css +1 -0
- package/lib/components/VBanner/VBanner.sass +1 -0
- package/lib/components/VBanner/_variables.scss +1 -0
- package/lib/components/VCombobox/VCombobox.mjs +7 -11
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VEmptyState/VEmptyState.css +2 -2
- package/lib/components/VEmptyState/VEmptyState.mjs +1 -1
- package/lib/components/VEmptyState/VEmptyState.mjs.map +1 -1
- package/lib/components/VEmptyState/_variables.scss +2 -2
- package/lib/components/VFab/VFab.mjs +4 -7
- package/lib/components/VFab/VFab.mjs.map +1 -1
- package/lib/components/VFab/index.d.mts +46 -49
- package/lib/components/VList/VList.mjs +1 -0
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/index.d.mts +2 -0
- package/lib/components/VMenu/VMenu.mjs +1 -1
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VOverlay/VOverlay.mjs +4 -3
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/index.d.mts +38 -45
- package/lib/composables/goto.mjs.map +1 -1
- package/lib/composables/icons.mjs.map +1 -1
- package/lib/composables/scroll.mjs +6 -0
- package/lib/composables/scroll.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.mts +159 -160
- package/lib/labs/VNumberInput/VNumberInput.mjs +0 -1
- package/lib/labs/VNumberInput/VNumberInput.mjs.map +1 -1
- package/lib/labs/VStepperVertical/index.d.mts +3 -3
- package/lib/labs/VTimePicker/VTimePickerClock.mjs +3 -1
- package/lib/labs/VTimePicker/VTimePickerClock.mjs.map +1 -1
- package/lib/labs/VTimePicker/VTimePickerControls.mjs +7 -2
- package/lib/labs/VTimePicker/VTimePickerControls.mjs.map +1 -1
- package/lib/labs/VTreeview/VTreeview.mjs +3 -4
- package/lib/labs/VTreeview/VTreeview.mjs.map +1 -1
- package/lib/labs/VTreeview/index.d.mts +6 -0
- package/lib/labs/components.d.mts +6 -0
- package/package.json +2 -2
package/dist/vuetify-labs.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vuetify v3.6.
|
|
2
|
+
* Vuetify v3.6.9
|
|
3
3
|
* Forged by John Leider
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -3756,6 +3756,7 @@ function useScroll(props) {
|
|
|
3756
3756
|
canScroll
|
|
3757
3757
|
} = args;
|
|
3758
3758
|
let previousScroll = 0;
|
|
3759
|
+
let previousScrollHeight = 0;
|
|
3759
3760
|
const target = ref(null);
|
|
3760
3761
|
const currentScroll = shallowRef(0);
|
|
3761
3762
|
const savedScroll = shallowRef(0);
|
|
@@ -3778,6 +3779,11 @@ function useScroll(props) {
|
|
|
3778
3779
|
if (!targetEl || canScroll && !canScroll.value) return;
|
|
3779
3780
|
previousScroll = currentScroll.value;
|
|
3780
3781
|
currentScroll.value = 'window' in targetEl ? targetEl.pageYOffset : targetEl.scrollTop;
|
|
3782
|
+
const currentScrollHeight = targetEl instanceof Window ? document.documentElement.scrollHeight : targetEl.scrollHeight;
|
|
3783
|
+
if (previousScrollHeight !== currentScrollHeight) {
|
|
3784
|
+
previousScrollHeight = currentScrollHeight;
|
|
3785
|
+
return;
|
|
3786
|
+
}
|
|
3781
3787
|
isScrollingUp.value = currentScroll.value < previousScroll;
|
|
3782
3788
|
currentThreshold.value = Math.abs(currentScroll.value - scrollThreshold.value);
|
|
3783
3789
|
};
|
|
@@ -9384,6 +9390,7 @@ const makeVListProps = propsFactory({
|
|
|
9384
9390
|
nav: Boolean,
|
|
9385
9391
|
'onClick:open': EventProp(),
|
|
9386
9392
|
'onClick:select': EventProp(),
|
|
9393
|
+
'onUpdate:opened': EventProp(),
|
|
9387
9394
|
...makeNestedProps({
|
|
9388
9395
|
selectStrategy: 'single-leaf',
|
|
9389
9396
|
openStrategy: 'list'
|
|
@@ -10787,9 +10794,6 @@ const VOverlay = genericComponent()({
|
|
|
10787
10794
|
if (!(v && props.disabled)) model.value = v;
|
|
10788
10795
|
}
|
|
10789
10796
|
});
|
|
10790
|
-
const {
|
|
10791
|
-
teleportTarget
|
|
10792
|
-
} = useTeleport(computed(() => props.attach || props.contained));
|
|
10793
10797
|
const {
|
|
10794
10798
|
themeClasses
|
|
10795
10799
|
} = provideTheme(props);
|
|
@@ -10822,6 +10826,10 @@ const VOverlay = genericComponent()({
|
|
|
10822
10826
|
isActive,
|
|
10823
10827
|
isTop: localTop
|
|
10824
10828
|
});
|
|
10829
|
+
const potentialShadowDomRoot = computed(() => activatorEl?.value?.getRootNode());
|
|
10830
|
+
const {
|
|
10831
|
+
teleportTarget
|
|
10832
|
+
} = useTeleport(computed(() => props.attach || props.contained || potentialShadowDomRoot.value instanceof ShadowRoot ? potentialShadowDomRoot.value : false));
|
|
10825
10833
|
const {
|
|
10826
10834
|
dimensionStyles
|
|
10827
10835
|
} = useDimension(props);
|
|
@@ -11164,7 +11172,7 @@ const VMenu = genericComponent()({
|
|
|
11164
11172
|
function onKeydown(e) {
|
|
11165
11173
|
if (props.disabled) return;
|
|
11166
11174
|
if (e.key === 'Tab' || e.key === 'Enter' && !props.closeOnContentClick) {
|
|
11167
|
-
if (e.key === 'Enter' && e.target instanceof HTMLTextAreaElement) return;
|
|
11175
|
+
if (e.key === 'Enter' && (e.target instanceof HTMLTextAreaElement || e.target instanceof HTMLInputElement && !!e.target.closest('form'))) return;
|
|
11168
11176
|
if (e.key === 'Enter') e.preventDefault();
|
|
11169
11177
|
const nextElement = getNextElement(focusableChildren(overlay.value?.contentEl, false), e.shiftKey ? 'prev' : 'next', el => el.tabIndex >= 0);
|
|
11170
11178
|
if (!nextElement) {
|
|
@@ -12908,7 +12916,12 @@ const VAutocomplete = genericComponent()({
|
|
|
12908
12916
|
if (['Escape'].includes(e.key)) {
|
|
12909
12917
|
menu.value = false;
|
|
12910
12918
|
}
|
|
12911
|
-
if (highlightFirst.value && e.key
|
|
12919
|
+
if (highlightFirst.value && ['Enter', 'Tab'].includes(e.key) && !model.value.some(_ref2 => {
|
|
12920
|
+
let {
|
|
12921
|
+
value
|
|
12922
|
+
} = _ref2;
|
|
12923
|
+
return value === displayItems.value[0].value;
|
|
12924
|
+
})) {
|
|
12912
12925
|
select(displayItems.value[0]);
|
|
12913
12926
|
}
|
|
12914
12927
|
if (e.key === 'ArrowDown' && highlightFirst.value) {
|
|
@@ -13011,16 +13024,14 @@ const VAutocomplete = genericComponent()({
|
|
|
13011
13024
|
isPristine.value = true;
|
|
13012
13025
|
nextTick(() => isSelecting.value = false);
|
|
13013
13026
|
} else {
|
|
13014
|
-
if (!props.multiple && search.value == null) model.value = [];
|
|
13015
|
-
let {
|
|
13016
|
-
value
|
|
13017
|
-
} = _ref2;
|
|
13018
|
-
return value === displayItems.value[0].value;
|
|
13019
|
-
})) {
|
|
13020
|
-
select(displayItems.value[0]);
|
|
13021
|
-
}
|
|
13027
|
+
if (!props.multiple && search.value == null) model.value = [];
|
|
13022
13028
|
menu.value = false;
|
|
13023
|
-
if (
|
|
13029
|
+
if (!model.value.some(_ref3 => {
|
|
13030
|
+
let {
|
|
13031
|
+
title
|
|
13032
|
+
} = _ref3;
|
|
13033
|
+
return title === search.value;
|
|
13034
|
+
})) search.value = '';
|
|
13024
13035
|
selectionIndex.value = -1;
|
|
13025
13036
|
}
|
|
13026
13037
|
});
|
|
@@ -13106,12 +13117,12 @@ const VAutocomplete = genericComponent()({
|
|
|
13106
13117
|
"renderless": true,
|
|
13107
13118
|
"items": displayItems.value
|
|
13108
13119
|
}, {
|
|
13109
|
-
default:
|
|
13120
|
+
default: _ref4 => {
|
|
13110
13121
|
let {
|
|
13111
13122
|
item,
|
|
13112
13123
|
index,
|
|
13113
13124
|
itemRef
|
|
13114
|
-
} =
|
|
13125
|
+
} = _ref4;
|
|
13115
13126
|
const itemProps = mergeProps(item.props, {
|
|
13116
13127
|
ref: itemRef,
|
|
13117
13128
|
key: index,
|
|
@@ -13125,10 +13136,10 @@ const VAutocomplete = genericComponent()({
|
|
|
13125
13136
|
}) ?? createVNode(VListItem, mergeProps(itemProps, {
|
|
13126
13137
|
"role": "option"
|
|
13127
13138
|
}), {
|
|
13128
|
-
prepend:
|
|
13139
|
+
prepend: _ref5 => {
|
|
13129
13140
|
let {
|
|
13130
13141
|
isSelected
|
|
13131
|
-
} =
|
|
13142
|
+
} = _ref5;
|
|
13132
13143
|
return createVNode(Fragment, null, [props.multiple && !props.hideSelected ? createVNode(VCheckboxBtn, {
|
|
13133
13144
|
"key": item.value,
|
|
13134
13145
|
"modelValue": isSelected,
|
|
@@ -16778,8 +16789,13 @@ const VCombobox = genericComponent()({
|
|
|
16778
16789
|
if (['Escape'].includes(e.key)) {
|
|
16779
16790
|
menu.value = false;
|
|
16780
16791
|
}
|
|
16781
|
-
if (['Enter', 'Escape'].includes(e.key)) {
|
|
16782
|
-
if (highlightFirst.value && e.key
|
|
16792
|
+
if (['Enter', 'Escape', 'Tab'].includes(e.key)) {
|
|
16793
|
+
if (highlightFirst.value && ['Enter', 'Tab'].includes(e.key) && !model.value.some(_ref2 => {
|
|
16794
|
+
let {
|
|
16795
|
+
value
|
|
16796
|
+
} = _ref2;
|
|
16797
|
+
return value === displayItems.value[0].value;
|
|
16798
|
+
})) {
|
|
16783
16799
|
select(filteredItems.value[0]);
|
|
16784
16800
|
}
|
|
16785
16801
|
isPristine.value = true;
|
|
@@ -16874,15 +16890,6 @@ const VCombobox = genericComponent()({
|
|
|
16874
16890
|
if (val || val === oldVal) return;
|
|
16875
16891
|
selectionIndex.value = -1;
|
|
16876
16892
|
menu.value = false;
|
|
16877
|
-
if (highlightFirst.value && !listHasFocus.value && !model.value.some(_ref2 => {
|
|
16878
|
-
let {
|
|
16879
|
-
value
|
|
16880
|
-
} = _ref2;
|
|
16881
|
-
return value === displayItems.value[0].value;
|
|
16882
|
-
})) {
|
|
16883
|
-
select(displayItems.value[0]);
|
|
16884
|
-
return;
|
|
16885
|
-
}
|
|
16886
16893
|
if (search.value) {
|
|
16887
16894
|
if (props.multiple) {
|
|
16888
16895
|
select(transformItem$3(props, search.value));
|
|
@@ -22246,7 +22253,7 @@ const VEmptyState = genericComponent()({
|
|
|
22246
22253
|
"defaults": {
|
|
22247
22254
|
VBtn: {
|
|
22248
22255
|
class: 'v-empty-state__action-btn',
|
|
22249
|
-
color: props.color,
|
|
22256
|
+
color: props.color ?? 'surface-variant',
|
|
22250
22257
|
text: props.actionText
|
|
22251
22258
|
}
|
|
22252
22259
|
}
|
|
@@ -22513,15 +22520,13 @@ const VExpansionPanels = genericComponent()({
|
|
|
22513
22520
|
}
|
|
22514
22521
|
});
|
|
22515
22522
|
|
|
22523
|
+
// Types
|
|
22524
|
+
|
|
22516
22525
|
const makeVFabProps = propsFactory({
|
|
22517
22526
|
app: Boolean,
|
|
22518
22527
|
appear: Boolean,
|
|
22519
22528
|
extended: Boolean,
|
|
22520
22529
|
layout: Boolean,
|
|
22521
|
-
location: {
|
|
22522
|
-
type: String,
|
|
22523
|
-
default: 'bottom end'
|
|
22524
|
-
},
|
|
22525
22530
|
offset: Boolean,
|
|
22526
22531
|
modelValue: {
|
|
22527
22532
|
type: Boolean,
|
|
@@ -22531,6 +22536,7 @@ const makeVFabProps = propsFactory({
|
|
|
22531
22536
|
active: true
|
|
22532
22537
|
}), ['location']),
|
|
22533
22538
|
...makeLayoutItemProps(),
|
|
22539
|
+
...makeLocationProps(),
|
|
22534
22540
|
...makeTransitionProps({
|
|
22535
22541
|
transition: 'fab-transition'
|
|
22536
22542
|
})
|
|
@@ -22557,11 +22563,11 @@ const VFab = genericComponent()({
|
|
|
22557
22563
|
const hasPosition = computed(() => props.app || props.absolute);
|
|
22558
22564
|
const position = computed(() => {
|
|
22559
22565
|
if (!hasPosition.value) return false;
|
|
22560
|
-
return props.location
|
|
22566
|
+
return props.location?.split(' ').shift() ?? 'bottom';
|
|
22561
22567
|
});
|
|
22562
22568
|
const orientation = computed(() => {
|
|
22563
22569
|
if (!hasPosition.value) return false;
|
|
22564
|
-
return props.location
|
|
22570
|
+
return props.location?.split(' ')[1] ?? 'end';
|
|
22565
22571
|
});
|
|
22566
22572
|
useToggleScope(() => props.app, () => {
|
|
22567
22573
|
const layout = useLayoutItem({
|
|
@@ -27988,7 +27994,6 @@ const makeVNumberInputProps = propsFactory({
|
|
|
27988
27994
|
}, 'VNumberInput');
|
|
27989
27995
|
const VNumberInput = genericComponent()({
|
|
27990
27996
|
name: 'VNumberInput',
|
|
27991
|
-
inheritAttrs: false,
|
|
27992
27997
|
props: {
|
|
27993
27998
|
...makeVNumberInputProps()
|
|
27994
27999
|
},
|
|
@@ -28762,6 +28767,7 @@ const VTimePickerClock = genericComponent()({
|
|
|
28762
28767
|
return !props.allowedValues || props.allowedValues(value);
|
|
28763
28768
|
}
|
|
28764
28769
|
function wheel(e) {
|
|
28770
|
+
if (!props.scrollable || props.disabled) return;
|
|
28765
28771
|
e.preventDefault();
|
|
28766
28772
|
const delta = Math.sign(-e.deltaY || 1);
|
|
28767
28773
|
let value = displayedValue.value;
|
|
@@ -28856,6 +28862,7 @@ const VTimePickerClock = genericComponent()({
|
|
|
28856
28862
|
}
|
|
28857
28863
|
}
|
|
28858
28864
|
function onMouseDown(e) {
|
|
28865
|
+
if (props.disabled) return;
|
|
28859
28866
|
e.preventDefault();
|
|
28860
28867
|
window.addEventListener('mousemove', onDragMove);
|
|
28861
28868
|
window.addEventListener('touchmove', onDragMove);
|
|
@@ -28886,7 +28893,7 @@ const VTimePickerClock = genericComponent()({
|
|
|
28886
28893
|
}],
|
|
28887
28894
|
"onMousedown": onMouseDown,
|
|
28888
28895
|
"onTouchstart": onMouseDown,
|
|
28889
|
-
"onWheel":
|
|
28896
|
+
"onWheel": wheel,
|
|
28890
28897
|
"ref": clockRef
|
|
28891
28898
|
}, [createVNode("div", {
|
|
28892
28899
|
"class": "v-time-picker-clock__inner",
|
|
@@ -28988,6 +28995,7 @@ const VTimePickerControls = genericComponent()({
|
|
|
28988
28995
|
}, [createVNode(VBtn, {
|
|
28989
28996
|
"active": props.selecting === 1,
|
|
28990
28997
|
"color": props.selecting === 1 ? props.color : undefined,
|
|
28998
|
+
"disabled": props.disabled,
|
|
28991
28999
|
"variant": "tonal",
|
|
28992
29000
|
"class": {
|
|
28993
29001
|
'v-time-picker-controls__time__btn': true,
|
|
@@ -29009,6 +29017,7 @@ const VTimePickerControls = genericComponent()({
|
|
|
29009
29017
|
'v-time-picker-controls__time--with-ampm__btn': props.ampm,
|
|
29010
29018
|
'v-time-picker-controls__time--with-seconds__btn': props.useSeconds
|
|
29011
29019
|
},
|
|
29020
|
+
"disabled": props.disabled,
|
|
29012
29021
|
"variant": "tonal",
|
|
29013
29022
|
"text": props.minute == null ? '--' : pad(props.minute),
|
|
29014
29023
|
"onClick": () => emit('update:selecting', SelectingTimes.Minute)
|
|
@@ -29026,6 +29035,7 @@ const VTimePickerControls = genericComponent()({
|
|
|
29026
29035
|
'v-time-picker-controls__time__btn__active': props.selecting === 3,
|
|
29027
29036
|
'v-time-picker-controls__time--with-seconds__btn': props.useSeconds
|
|
29028
29037
|
},
|
|
29038
|
+
"disabled": props.disabled,
|
|
29029
29039
|
"text": props.second == null ? '--' : pad(props.second)
|
|
29030
29040
|
}, null), props.ampm && createVNode("div", {
|
|
29031
29041
|
"class": ['v-time-picker-controls__ampm', {
|
|
@@ -29039,8 +29049,9 @@ const VTimePickerControls = genericComponent()({
|
|
|
29039
29049
|
'v-time-picker-controls__ampm__btn': true,
|
|
29040
29050
|
'v-time-picker-controls__ampm__btn__active': props.period === 'am'
|
|
29041
29051
|
},
|
|
29052
|
+
"disabled": props.disabled,
|
|
29042
29053
|
"text": t('$vuetify.timePicker.am'),
|
|
29043
|
-
"variant":
|
|
29054
|
+
"variant": props.disabled && props.period === 'am' ? 'elevated' : 'tonal',
|
|
29044
29055
|
"onClick": () => props.period !== 'am' ? emit('update:period', 'am') : null
|
|
29045
29056
|
}, null), createVNode(VBtn, {
|
|
29046
29057
|
"active": props.period === 'pm',
|
|
@@ -29050,8 +29061,9 @@ const VTimePickerControls = genericComponent()({
|
|
|
29050
29061
|
'v-time-picker-controls__ampm__btn': true,
|
|
29051
29062
|
'v-time-picker-controls__ampm__btn__active': props.period === 'pm'
|
|
29052
29063
|
},
|
|
29064
|
+
"disabled": props.disabled,
|
|
29053
29065
|
"text": t('$vuetify.timePicker.pm'),
|
|
29054
|
-
"variant":
|
|
29066
|
+
"variant": props.disabled && props.period === 'pm' ? 'elevated' : 'tonal',
|
|
29055
29067
|
"onClick": () => props.period !== 'pm' ? emit('update:period', 'pm') : null
|
|
29056
29068
|
}, null)])])]);
|
|
29057
29069
|
});
|
|
@@ -29635,6 +29647,7 @@ const VTreeview = genericComponent()({
|
|
|
29635
29647
|
let {
|
|
29636
29648
|
slots
|
|
29637
29649
|
} = _ref;
|
|
29650
|
+
const vm = getCurrentInstance('VTreeview');
|
|
29638
29651
|
const {
|
|
29639
29652
|
items
|
|
29640
29653
|
} = useListItems(props);
|
|
@@ -29717,15 +29730,13 @@ const VTreeview = genericComponent()({
|
|
|
29717
29730
|
}
|
|
29718
29731
|
});
|
|
29719
29732
|
useRender(() => {
|
|
29720
|
-
const listProps = VList.filterProps(props);
|
|
29733
|
+
const listProps = VList.filterProps(vm.vnode.props);
|
|
29721
29734
|
const treeviewChildrenProps = VTreeviewChildren.filterProps(props);
|
|
29722
29735
|
return createVNode(VList, mergeProps({
|
|
29723
29736
|
"ref": vListRef
|
|
29724
29737
|
}, listProps, {
|
|
29725
29738
|
"class": ['v-treeview', props.class],
|
|
29726
29739
|
"style": props.style,
|
|
29727
|
-
"opened": opened.value,
|
|
29728
|
-
"onUpdate:opened": $event => opened.value = $event,
|
|
29729
29740
|
"activated": activated.value,
|
|
29730
29741
|
"onUpdate:activated": $event => activated.value = $event,
|
|
29731
29742
|
"selected": selected.value,
|
|
@@ -30237,7 +30248,7 @@ function createVuetify$1() {
|
|
|
30237
30248
|
goTo
|
|
30238
30249
|
};
|
|
30239
30250
|
}
|
|
30240
|
-
const version$1 = "3.6.
|
|
30251
|
+
const version$1 = "3.6.9";
|
|
30241
30252
|
createVuetify$1.version = version$1;
|
|
30242
30253
|
|
|
30243
30254
|
// Vue's inject() can only be used in setup
|
|
@@ -30490,7 +30501,7 @@ var index = /*#__PURE__*/Object.freeze({
|
|
|
30490
30501
|
|
|
30491
30502
|
/* eslint-disable local-rules/sort-imports */
|
|
30492
30503
|
|
|
30493
|
-
const version = "3.6.
|
|
30504
|
+
const version = "3.6.9";
|
|
30494
30505
|
|
|
30495
30506
|
/* eslint-disable local-rules/sort-imports */
|
|
30496
30507
|
|