vuetify 3.3.21 → 3.3.23
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 +228 -24
- package/dist/json/importMap-labs.json +4 -4
- package/dist/json/tags.json +57 -3
- package/dist/json/web-types.json +909 -39
- package/dist/vuetify-labs.css +5831 -5824
- package/dist/vuetify-labs.d.ts +205 -19
- package/dist/vuetify-labs.esm.js +95 -50
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +94 -49
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +5191 -5187
- package/dist/vuetify.d.ts +1 -1
- package/dist/vuetify.esm.js +62 -36
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +61 -35
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +813 -813
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.css +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.mjs +13 -10
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.sass +2 -2
- package/lib/components/VAutocomplete/_variables.scss +1 -0
- package/lib/components/VCard/VCard.css +3 -1
- package/lib/components/VCard/VCard.sass +2 -1
- package/lib/components/VCard/_variables.scss +7 -5
- package/lib/components/VCombobox/VCombobox.mjs +14 -11
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VList/VListItem.css +0 -4
- package/lib/components/VList/VListItem.sass +0 -5
- package/lib/components/VNavigationDrawer/VNavigationDrawer.css +6 -0
- package/lib/components/VNavigationDrawer/VNavigationDrawer.sass +5 -0
- package/lib/components/VSelect/VSelect.mjs +13 -10
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VToolbar/_variables.scss +6 -3
- package/lib/composables/color.mjs +2 -2
- package/lib/composables/color.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.mts +1 -1
- package/lib/labs/VDataTable/VDataTable.css +0 -6
- package/lib/labs/VDataTable/VDataTable.sass +0 -1
- package/lib/labs/VStepper/VStepper.css +9 -0
- package/lib/labs/VStepper/VStepper.mjs +1 -2
- package/lib/labs/VStepper/VStepper.mjs.map +1 -1
- package/lib/labs/VStepper/VStepper.sass +17 -8
- package/lib/labs/VStepper/VStepperActions.mjs +34 -13
- package/lib/labs/VStepper/VStepperActions.mjs.map +1 -1
- package/lib/labs/VStepper/VStepperItem.mjs.map +1 -1
- package/lib/labs/VStepper/VStepperItem.sass +15 -15
- package/lib/labs/VStepper/_variables.scss +24 -1
- package/lib/labs/VStepper/index.d.mts +205 -19
- package/lib/labs/components.d.mts +205 -19
- package/lib/labs/date/adapters/vuetify.mjs +6 -3
- package/lib/labs/date/adapters/vuetify.mjs.map +1 -1
- package/lib/locale/de.mjs +20 -20
- package/lib/locale/de.mjs.map +1 -1
- package/lib/locale/fr.mjs +19 -19
- package/lib/locale/fr.mjs.map +1 -1
- package/lib/locale/nl.mjs +22 -22
- package/lib/locale/nl.mjs.map +1 -1
- package/lib/util/colorUtils.mjs +3 -0
- package/lib/util/colorUtils.mjs.map +1 -1
- package/lib/util/helpers.mjs +12 -1
- package/lib/util/helpers.mjs.map +1 -1
- package/package.json +2 -2
package/dist/vuetify.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vuetify v3.3.
|
|
2
|
+
* Vuetify v3.3.23
|
|
3
3
|
* Forged by John Leider
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -232,6 +232,10 @@
|
|
|
232
232
|
const onRE = /^on[^a-z]/;
|
|
233
233
|
const isOn = key => onRE.test(key);
|
|
234
234
|
const bubblingEvents = ['onAfterscriptexecute', 'onAnimationcancel', 'onAnimationend', 'onAnimationiteration', 'onAnimationstart', 'onAuxclick', 'onBeforeinput', 'onBeforescriptexecute', 'onChange', 'onClick', 'onCompositionend', 'onCompositionstart', 'onCompositionupdate', 'onContextmenu', 'onCopy', 'onCut', 'onDblclick', 'onFocusin', 'onFocusout', 'onFullscreenchange', 'onFullscreenerror', 'onGesturechange', 'onGestureend', 'onGesturestart', 'onGotpointercapture', 'onInput', 'onKeydown', 'onKeypress', 'onKeyup', 'onLostpointercapture', 'onMousedown', 'onMousemove', 'onMouseout', 'onMouseover', 'onMouseup', 'onMousewheel', 'onPaste', 'onPointercancel', 'onPointerdown', 'onPointerenter', 'onPointerleave', 'onPointermove', 'onPointerout', 'onPointerover', 'onPointerup', 'onReset', 'onSelect', 'onSubmit', 'onTouchcancel', 'onTouchend', 'onTouchmove', 'onTouchstart', 'onTransitioncancel', 'onTransitionend', 'onTransitionrun', 'onTransitionstart', 'onWheel'];
|
|
235
|
+
const compositionIgnoreKeys = ['ArrowUp', 'ArrowDown', 'ArrowRight', 'ArrowLeft', 'Enter', 'Escape', 'Tab', ' '];
|
|
236
|
+
function isComposingIgnoreKey(e) {
|
|
237
|
+
return e.isComposing && compositionIgnoreKeys.includes(e.key);
|
|
238
|
+
}
|
|
235
239
|
|
|
236
240
|
/**
|
|
237
241
|
* Filter attributes that should be applied to
|
|
@@ -465,6 +469,13 @@
|
|
|
465
469
|
return null;
|
|
466
470
|
}
|
|
467
471
|
}
|
|
472
|
+
function ensureValidVNode(vnodes) {
|
|
473
|
+
return vnodes.some(child => {
|
|
474
|
+
if (!vue.isVNode(child)) return true;
|
|
475
|
+
if (child.type === vue.Comment) return false;
|
|
476
|
+
return child.type !== vue.Fragment || ensureValidVNode(child.children);
|
|
477
|
+
}) ? vnodes : null;
|
|
478
|
+
}
|
|
468
479
|
|
|
469
480
|
// Utilities
|
|
470
481
|
const block = ['top', 'bottom'];
|
|
@@ -845,6 +856,9 @@
|
|
|
845
856
|
function isCssColor(color) {
|
|
846
857
|
return !!color && /^(#|var\(--|(rgb|hsl)a?\()/.test(color);
|
|
847
858
|
}
|
|
859
|
+
function isParsableColor(color) {
|
|
860
|
+
return isCssColor(color) && !/^((rgb|hsl)a?\()?var\(--/.test(color);
|
|
861
|
+
}
|
|
848
862
|
const cssColorRe = /^(?<fn>(?:rgb|hsl)a?)\((?<values>.+)\)/;
|
|
849
863
|
const mappers = {
|
|
850
864
|
rgb: (r, g, b, a) => ({
|
|
@@ -3269,7 +3283,7 @@
|
|
|
3269
3283
|
if (colors.value.background) {
|
|
3270
3284
|
if (isCssColor(colors.value.background)) {
|
|
3271
3285
|
styles.backgroundColor = colors.value.background;
|
|
3272
|
-
if (!colors.value.text) {
|
|
3286
|
+
if (!colors.value.text && isParsableColor(colors.value.background)) {
|
|
3273
3287
|
const backgroundColor = parseColor(colors.value.background);
|
|
3274
3288
|
if (backgroundColor.a == null || backgroundColor.a === 1) {
|
|
3275
3289
|
const textColor = getForeground(backgroundColor);
|
|
@@ -11151,6 +11165,16 @@
|
|
|
11151
11165
|
modelValue: true,
|
|
11152
11166
|
'onUpdate:modelValue': undefined
|
|
11153
11167
|
};
|
|
11168
|
+
const hasSlot = hasChips ? !!slots.chip : !!slots.selection;
|
|
11169
|
+
const slotContent = hasSlot ? ensureValidVNode(hasChips ? slots.chip({
|
|
11170
|
+
item,
|
|
11171
|
+
index,
|
|
11172
|
+
props: slotProps
|
|
11173
|
+
}) : slots.selection({
|
|
11174
|
+
item,
|
|
11175
|
+
index
|
|
11176
|
+
})) : undefined;
|
|
11177
|
+
if (hasSlot && !slotContent) return undefined;
|
|
11154
11178
|
return vue.createVNode("div", {
|
|
11155
11179
|
"key": item.value,
|
|
11156
11180
|
"class": "v-select__selection"
|
|
@@ -11170,15 +11194,8 @@
|
|
|
11170
11194
|
}
|
|
11171
11195
|
}
|
|
11172
11196
|
}, {
|
|
11173
|
-
default: () => [
|
|
11174
|
-
|
|
11175
|
-
index,
|
|
11176
|
-
props: slotProps
|
|
11177
|
-
})]
|
|
11178
|
-
}) : slots.selection?.({
|
|
11179
|
-
item,
|
|
11180
|
-
index
|
|
11181
|
-
}) ?? vue.createVNode("span", {
|
|
11197
|
+
default: () => [slotContent]
|
|
11198
|
+
}) : slotContent ?? vue.createVNode("span", {
|
|
11182
11199
|
"class": "v-select__selection-text"
|
|
11183
11200
|
}, [item.title, props.multiple && index < model.value.length - 1 && vue.createVNode("span", {
|
|
11184
11201
|
"class": "v-select__selection-comma"
|
|
@@ -11679,6 +11696,16 @@
|
|
|
11679
11696
|
modelValue: true,
|
|
11680
11697
|
'onUpdate:modelValue': undefined
|
|
11681
11698
|
};
|
|
11699
|
+
const hasSlot = hasChips ? !!slots.chip : !!slots.selection;
|
|
11700
|
+
const slotContent = hasSlot ? ensureValidVNode(hasChips ? slots.chip({
|
|
11701
|
+
item,
|
|
11702
|
+
index,
|
|
11703
|
+
props: slotProps
|
|
11704
|
+
}) : slots.selection({
|
|
11705
|
+
item,
|
|
11706
|
+
index
|
|
11707
|
+
})) : undefined;
|
|
11708
|
+
if (hasSlot && !slotContent) return undefined;
|
|
11682
11709
|
return vue.createVNode("div", {
|
|
11683
11710
|
"key": item.value,
|
|
11684
11711
|
"class": ['v-autocomplete__selection', index === selectionIndex.value && ['v-autocomplete__selection--selected', textColorClasses.value]],
|
|
@@ -11699,15 +11726,8 @@
|
|
|
11699
11726
|
}
|
|
11700
11727
|
}
|
|
11701
11728
|
}, {
|
|
11702
|
-
default: () => [
|
|
11703
|
-
|
|
11704
|
-
index,
|
|
11705
|
-
props: slotProps
|
|
11706
|
-
})]
|
|
11707
|
-
}) : slots.selection?.({
|
|
11708
|
-
item,
|
|
11709
|
-
index
|
|
11710
|
-
}) ?? vue.createVNode("span", {
|
|
11729
|
+
default: () => [slotContent]
|
|
11730
|
+
}) : slotContent ?? vue.createVNode("span", {
|
|
11711
11731
|
"class": "v-autocomplete__selection-text"
|
|
11712
11732
|
}, [item.title, props.multiple && index < model.value.length - 1 && vue.createVNode("span", {
|
|
11713
11733
|
"class": "v-autocomplete__selection-comma"
|
|
@@ -14990,7 +15010,7 @@
|
|
|
14990
15010
|
menu.value = !menu.value;
|
|
14991
15011
|
}
|
|
14992
15012
|
function onKeydown(e) {
|
|
14993
|
-
if (props.readonly || form?.isReadonly.value) return;
|
|
15013
|
+
if (isComposingIgnoreKey(e) || props.readonly || form?.isReadonly.value) return;
|
|
14994
15014
|
const selectionStart = vTextFieldRef.value.selectionStart;
|
|
14995
15015
|
const length = model.value.length;
|
|
14996
15016
|
if (selectionIndex.value > -1 || ['Enter', 'ArrowDown', 'ArrowUp'].includes(e.key)) {
|
|
@@ -15231,6 +15251,16 @@
|
|
|
15231
15251
|
modelValue: true,
|
|
15232
15252
|
'onUpdate:modelValue': undefined
|
|
15233
15253
|
};
|
|
15254
|
+
const hasSlot = hasChips ? !!slots.chip : !!slots.selection;
|
|
15255
|
+
const slotContent = hasSlot ? ensureValidVNode(hasChips ? slots.chip({
|
|
15256
|
+
item,
|
|
15257
|
+
index,
|
|
15258
|
+
props: slotProps
|
|
15259
|
+
}) : slots.selection({
|
|
15260
|
+
item,
|
|
15261
|
+
index
|
|
15262
|
+
})) : undefined;
|
|
15263
|
+
if (hasSlot && !slotContent) return undefined;
|
|
15234
15264
|
return vue.createVNode("div", {
|
|
15235
15265
|
"key": item.value,
|
|
15236
15266
|
"class": ['v-combobox__selection', index === selectionIndex.value && ['v-combobox__selection--selected', textColorClasses.value]],
|
|
@@ -15251,15 +15281,8 @@
|
|
|
15251
15281
|
}
|
|
15252
15282
|
}
|
|
15253
15283
|
}, {
|
|
15254
|
-
default: () => [
|
|
15255
|
-
|
|
15256
|
-
index,
|
|
15257
|
-
props: slotProps
|
|
15258
|
-
})]
|
|
15259
|
-
}) : slots.selection?.({
|
|
15260
|
-
item,
|
|
15261
|
-
index
|
|
15262
|
-
}) ?? vue.createVNode("span", {
|
|
15284
|
+
default: () => [slotContent]
|
|
15285
|
+
}) : slotContent ?? vue.createVNode("span", {
|
|
15263
15286
|
"class": "v-combobox__selection-text"
|
|
15264
15287
|
}, [item.title, props.multiple && index < model.value.length - 1 && vue.createVNode("span", {
|
|
15265
15288
|
"class": "v-combobox__selection-comma"
|
|
@@ -20081,7 +20104,6 @@
|
|
|
20081
20104
|
});
|
|
20082
20105
|
}
|
|
20083
20106
|
function format(value, formatString, locale) {
|
|
20084
|
-
const date = new Date(value);
|
|
20085
20107
|
let options = {};
|
|
20086
20108
|
switch (formatString) {
|
|
20087
20109
|
case 'fullDateWithWeekday':
|
|
@@ -20100,7 +20122,11 @@
|
|
|
20100
20122
|
};
|
|
20101
20123
|
break;
|
|
20102
20124
|
case 'keyboardDate':
|
|
20103
|
-
options = {
|
|
20125
|
+
options = {
|
|
20126
|
+
day: '2-digit',
|
|
20127
|
+
month: '2-digit',
|
|
20128
|
+
year: 'numeric'
|
|
20129
|
+
};
|
|
20104
20130
|
break;
|
|
20105
20131
|
case 'monthAndDate':
|
|
20106
20132
|
options = {
|
|
@@ -20130,7 +20156,7 @@
|
|
|
20130
20156
|
timeZoneName: 'short'
|
|
20131
20157
|
};
|
|
20132
20158
|
}
|
|
20133
|
-
return new Intl.DateTimeFormat(locale, options).format(date);
|
|
20159
|
+
return new Intl.DateTimeFormat(locale, options).format(date(value) ?? undefined);
|
|
20134
20160
|
}
|
|
20135
20161
|
function toISO(adapter, value) {
|
|
20136
20162
|
const date = adapter.toJsDate(value);
|
|
@@ -20430,7 +20456,7 @@
|
|
|
20430
20456
|
date
|
|
20431
20457
|
};
|
|
20432
20458
|
}
|
|
20433
|
-
const version$1 = "3.3.
|
|
20459
|
+
const version$1 = "3.3.23";
|
|
20434
20460
|
createVuetify$1.version = version$1;
|
|
20435
20461
|
|
|
20436
20462
|
// Vue's inject() can only be used in setup
|
|
@@ -20455,7 +20481,7 @@
|
|
|
20455
20481
|
...options
|
|
20456
20482
|
});
|
|
20457
20483
|
};
|
|
20458
|
-
const version = "3.3.
|
|
20484
|
+
const version = "3.3.23";
|
|
20459
20485
|
createVuetify.version = version;
|
|
20460
20486
|
|
|
20461
20487
|
exports.components = components;
|