@vuetify/nightly 3.10.5-dev.2025-10-07 → 3.10.5-dev.2025-10-09
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 +16 -3
- package/dist/json/attributes.json +3521 -3521
- package/dist/json/importMap-labs.json +14 -14
- package/dist/json/importMap.json +180 -180
- package/dist/json/tags.json +5 -5
- package/dist/json/web-types.json +6459 -6444
- package/dist/vuetify-labs.cjs +230 -166
- package/dist/vuetify-labs.css +3872 -3872
- package/dist/vuetify-labs.d.ts +1520 -1446
- package/dist/vuetify-labs.esm.js +230 -166
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +230 -166
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +156 -92
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +3682 -3682
- package/dist/vuetify.d.ts +2284 -2195
- package/dist/vuetify.esm.js +156 -92
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +156 -92
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +959 -955
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.d.ts +0 -61
- package/lib/components/VAutocomplete/VAutocomplete.js +13 -11
- package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
- package/lib/components/VCombobox/VCombobox.d.ts +6 -67
- package/lib/components/VCombobox/VCombobox.js +22 -23
- package/lib/components/VCombobox/VCombobox.js.map +1 -1
- package/lib/components/VDataTable/VDataTable.d.ts +7 -7
- package/lib/components/VDataTable/VDataTableFooter.d.ts +16 -3
- package/lib/components/VDataTable/VDataTableFooter.js +4 -2
- package/lib/components/VDataTable/VDataTableFooter.js.map +1 -1
- package/lib/components/VDataTable/VDataTableHeaders.js +10 -7
- package/lib/components/VDataTable/VDataTableHeaders.js.map +1 -1
- package/lib/components/VDataTable/VDataTableRow.d.ts +10 -0
- package/lib/components/VDataTable/VDataTableRow.js +3 -0
- package/lib/components/VDataTable/VDataTableRow.js.map +1 -1
- package/lib/components/VDataTable/VDataTableRows.d.ts +10 -0
- package/lib/components/VDataTable/VDataTableRows.js +2 -0
- package/lib/components/VDataTable/VDataTableRows.js.map +1 -1
- package/lib/components/VDataTable/VDataTableServer.d.ts +7 -7
- package/lib/components/VNumberInput/VNumberInput.js +23 -8
- package/lib/components/VNumberInput/VNumberInput.js.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroup.d.ts +1 -1
- package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
- package/lib/components/VTabs/VTabs.d.ts +16 -2
- package/lib/components/VTabs/VTabs.js +4 -2
- package/lib/components/VTabs/VTabs.js.map +1 -1
- package/lib/components/VTextarea/VTextarea.css +2 -2
- package/lib/components/VTextarea/VTextarea.js +20 -1
- package/lib/components/VTextarea/VTextarea.js.map +1 -1
- package/lib/components/VTextarea/VTextarea.sass +4 -2
- package/lib/components/VTreeview/VTreeview.d.ts +192 -5
- package/lib/components/VTreeview/VTreeview.js +16 -3
- package/lib/components/VTreeview/VTreeview.js.map +1 -1
- package/lib/composables/icons.d.ts +0 -2
- package/lib/composables/icons.js +3 -36
- package/lib/composables/icons.js.map +1 -1
- package/lib/composables/virtual.js +2 -2
- package/lib/composables/virtual.js.map +1 -1
- package/lib/entry-bundler.js +1 -1
- package/lib/framework.d.ts +60 -60
- package/lib/framework.js +3 -2
- package/lib/framework.js.map +1 -1
- package/lib/icons.d.ts +3 -0
- package/lib/icons.js +34 -0
- package/lib/icons.js.map +1 -0
- package/lib/labs/VDateInput/VDateInput.d.ts +0 -30
- package/lib/labs/VDateInput/VDateInput.js +2 -2
- package/lib/labs/VDateInput/VDateInput.js.map +1 -1
- package/package.json +1 -1
package/dist/vuetify-labs.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vuetify v3.10.5-dev.2025-10-
|
|
2
|
+
* Vuetify v3.10.5-dev.2025-10-09
|
|
3
3
|
* Forged by John Leider
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -4783,83 +4783,7 @@
|
|
|
4783
4783
|
}
|
|
4784
4784
|
});
|
|
4785
4785
|
|
|
4786
|
-
//
|
|
4787
|
-
|
|
4788
|
-
// Types
|
|
4789
|
-
|
|
4790
|
-
const aliases = {
|
|
4791
|
-
collapse: 'mdi-chevron-up',
|
|
4792
|
-
complete: 'mdi-check',
|
|
4793
|
-
cancel: 'mdi-close-circle',
|
|
4794
|
-
close: 'mdi-close',
|
|
4795
|
-
delete: 'mdi-close-circle',
|
|
4796
|
-
// delete (e.g. v-chip close)
|
|
4797
|
-
clear: 'mdi-close-circle',
|
|
4798
|
-
success: 'mdi-check-circle',
|
|
4799
|
-
info: 'mdi-information',
|
|
4800
|
-
warning: 'mdi-alert-circle',
|
|
4801
|
-
error: 'mdi-close-circle',
|
|
4802
|
-
prev: 'mdi-chevron-left',
|
|
4803
|
-
next: 'mdi-chevron-right',
|
|
4804
|
-
checkboxOn: 'mdi-checkbox-marked',
|
|
4805
|
-
checkboxOff: 'mdi-checkbox-blank-outline',
|
|
4806
|
-
checkboxIndeterminate: 'mdi-minus-box',
|
|
4807
|
-
delimiter: 'mdi-circle',
|
|
4808
|
-
// for carousel
|
|
4809
|
-
sortAsc: 'mdi-arrow-up',
|
|
4810
|
-
sortDesc: 'mdi-arrow-down',
|
|
4811
|
-
expand: 'mdi-chevron-down',
|
|
4812
|
-
menu: 'mdi-menu',
|
|
4813
|
-
subgroup: 'mdi-menu-down',
|
|
4814
|
-
dropdown: 'mdi-menu-down',
|
|
4815
|
-
radioOn: 'mdi-radiobox-marked',
|
|
4816
|
-
radioOff: 'mdi-radiobox-blank',
|
|
4817
|
-
edit: 'mdi-pencil',
|
|
4818
|
-
ratingEmpty: 'mdi-star-outline',
|
|
4819
|
-
ratingFull: 'mdi-star',
|
|
4820
|
-
ratingHalf: 'mdi-star-half-full',
|
|
4821
|
-
loading: 'mdi-cached',
|
|
4822
|
-
first: 'mdi-page-first',
|
|
4823
|
-
last: 'mdi-page-last',
|
|
4824
|
-
unfold: 'mdi-unfold-more-horizontal',
|
|
4825
|
-
file: 'mdi-paperclip',
|
|
4826
|
-
plus: 'mdi-plus',
|
|
4827
|
-
minus: 'mdi-minus',
|
|
4828
|
-
calendar: 'mdi-calendar',
|
|
4829
|
-
treeviewCollapse: 'mdi-menu-down',
|
|
4830
|
-
treeviewExpand: 'mdi-menu-right',
|
|
4831
|
-
tableGroupCollapse: 'mdi-chevron-down',
|
|
4832
|
-
tableGroupExpand: 'mdi-chevron-right',
|
|
4833
|
-
eyeDropper: 'mdi-eyedropper',
|
|
4834
|
-
upload: 'mdi-cloud-upload',
|
|
4835
|
-
color: 'mdi-palette',
|
|
4836
|
-
command: 'mdi-apple-keyboard-command',
|
|
4837
|
-
ctrl: 'mdi-apple-keyboard-control',
|
|
4838
|
-
space: 'mdi-keyboard-space',
|
|
4839
|
-
shift: 'mdi-apple-keyboard-shift',
|
|
4840
|
-
alt: 'mdi-apple-keyboard-option',
|
|
4841
|
-
enter: 'mdi-keyboard-return',
|
|
4842
|
-
arrowup: 'mdi-arrow-up',
|
|
4843
|
-
arrowdown: 'mdi-arrow-down',
|
|
4844
|
-
arrowleft: 'mdi-arrow-left',
|
|
4845
|
-
arrowright: 'mdi-arrow-right',
|
|
4846
|
-
backspace: 'mdi-backspace',
|
|
4847
|
-
play: 'mdi-play',
|
|
4848
|
-
pause: 'mdi-pause',
|
|
4849
|
-
fullscreen: 'mdi-fullscreen',
|
|
4850
|
-
fullscreenExit: 'mdi-fullscreen-exit',
|
|
4851
|
-
volumeHigh: 'mdi-volume-high',
|
|
4852
|
-
volumeMedium: 'mdi-volume-medium',
|
|
4853
|
-
volumeLow: 'mdi-volume-low',
|
|
4854
|
-
volumeOff: 'mdi-volume-variant-off'
|
|
4855
|
-
};
|
|
4856
|
-
const mdi = {
|
|
4857
|
-
// Not using mergeProps here, functional components merge props by default (?)
|
|
4858
|
-
component: props => vue.h(VClassIcon, {
|
|
4859
|
-
...props,
|
|
4860
|
-
class: 'mdi'
|
|
4861
|
-
})
|
|
4862
|
-
};
|
|
4786
|
+
// Utilities
|
|
4863
4787
|
|
|
4864
4788
|
// Types
|
|
4865
4789
|
|
|
@@ -4942,37 +4866,6 @@
|
|
|
4942
4866
|
};
|
|
4943
4867
|
}
|
|
4944
4868
|
});
|
|
4945
|
-
function genDefaults$1() {
|
|
4946
|
-
return {
|
|
4947
|
-
svg: {
|
|
4948
|
-
component: VSvgIcon
|
|
4949
|
-
},
|
|
4950
|
-
class: {
|
|
4951
|
-
component: VClassIcon
|
|
4952
|
-
}
|
|
4953
|
-
};
|
|
4954
|
-
}
|
|
4955
|
-
|
|
4956
|
-
// Composables
|
|
4957
|
-
function createIcons(options) {
|
|
4958
|
-
const sets = genDefaults$1();
|
|
4959
|
-
const defaultSet = options?.defaultSet ?? 'mdi';
|
|
4960
|
-
if (defaultSet === 'mdi' && !sets.mdi) {
|
|
4961
|
-
sets.mdi = mdi;
|
|
4962
|
-
}
|
|
4963
|
-
return mergeDeep({
|
|
4964
|
-
defaultSet,
|
|
4965
|
-
sets,
|
|
4966
|
-
aliases: {
|
|
4967
|
-
...aliases,
|
|
4968
|
-
/* eslint-disable max-len */
|
|
4969
|
-
vuetify: ['M8.2241 14.2009L12 21L22 3H14.4459L8.2241 14.2009Z', ['M7.26303 12.4733L7.00113 12L2 3H12.5261C12.5261 3 12.5261 3 12.5261 3L7.26303 12.4733Z', 0.6]],
|
|
4970
|
-
'vuetify-outline': 'svg:M7.26 12.47 12.53 3H2L7.26 12.47ZM14.45 3 8.22 14.2 12 21 22 3H14.45ZM18.6 5 12 16.88 10.51 14.2 15.62 5ZM7.26 8.35 5.4 5H9.13L7.26 8.35Z',
|
|
4971
|
-
'vuetify-play': ['m6.376 13.184-4.11-7.192C1.505 4.66 2.467 3 4.003 3h8.532l-.953 1.576-.006.01-.396.677c-.429.732-.214 1.507.194 2.015.404.503 1.092.878 1.869.806a3.72 3.72 0 0 1 1.005.022c.276.053.434.143.523.237.138.146.38.635-.25 2.09-.893 1.63-1.553 1.722-1.847 1.677-.213-.033-.468-.158-.756-.406a4.95 4.95 0 0 1-.8-.927c-.39-.564-1.04-.84-1.66-.846-.625-.006-1.316.27-1.693.921l-.478.826-.911 1.506Z', ['M9.093 11.552c.046-.079.144-.15.32-.148a.53.53 0 0 1 .43.207c.285.414.636.847 1.046 1.2.405.35.914.662 1.516.754 1.334.205 2.502-.698 3.48-2.495l.014-.028.013-.03c.687-1.574.774-2.852-.005-3.675-.37-.391-.861-.586-1.333-.676a5.243 5.243 0 0 0-1.447-.044c-.173.016-.393-.073-.54-.257-.145-.18-.127-.316-.082-.392l.393-.672L14.287 3h5.71c1.536 0 2.499 1.659 1.737 2.992l-7.997 13.996c-.768 1.344-2.706 1.344-3.473 0l-3.037-5.314 1.377-2.278.004-.006.004-.007.481-.831Z', 0.6]]
|
|
4972
|
-
/* eslint-enable max-len */
|
|
4973
|
-
}
|
|
4974
|
-
}, options);
|
|
4975
|
-
}
|
|
4976
4869
|
const useIcon = props => {
|
|
4977
4870
|
const icons = vue.inject(IconSymbol);
|
|
4978
4871
|
if (!icons) throw new Error('Missing Vuetify Icons provide!');
|
|
@@ -7922,7 +7815,7 @@
|
|
|
7922
7815
|
// Types
|
|
7923
7816
|
|
|
7924
7817
|
const GoToSymbol = Symbol.for('vuetify:goto');
|
|
7925
|
-
function genDefaults() {
|
|
7818
|
+
function genDefaults$1() {
|
|
7926
7819
|
return {
|
|
7927
7820
|
container: undefined,
|
|
7928
7821
|
duration: 300,
|
|
@@ -7951,12 +7844,12 @@
|
|
|
7951
7844
|
function createGoTo(options, locale) {
|
|
7952
7845
|
return {
|
|
7953
7846
|
rtl: locale.isRtl,
|
|
7954
|
-
options: mergeDeep(genDefaults(), options)
|
|
7847
|
+
options: mergeDeep(genDefaults$1(), options)
|
|
7955
7848
|
};
|
|
7956
7849
|
}
|
|
7957
7850
|
async function scrollTo(_target, _options, horizontal, goTo) {
|
|
7958
7851
|
const property = horizontal ? 'scrollLeft' : 'scrollTop';
|
|
7959
|
-
const options = mergeDeep(goTo?.options ?? genDefaults(), _options);
|
|
7852
|
+
const options = mergeDeep(goTo?.options ?? genDefaults$1(), _options);
|
|
7960
7853
|
const rtl = goTo?.rtl.value;
|
|
7961
7854
|
const target = (typeof _target === 'number' ? _target : getTarget$1(_target)) ?? 0;
|
|
7962
7855
|
const container = options.container === 'parent' && target instanceof HTMLElement ? target.parentElement : getContainer(options.container);
|
|
@@ -12946,7 +12839,7 @@
|
|
|
12946
12839
|
const start = performance.now();
|
|
12947
12840
|
offsets[0] = 0;
|
|
12948
12841
|
const length = items.value.length;
|
|
12949
|
-
for (let i = 1; i <= length
|
|
12842
|
+
for (let i = 1; i <= length; i++) {
|
|
12950
12843
|
offsets[i] = (offsets[i - 1] || 0) + getSize(i - 1);
|
|
12951
12844
|
}
|
|
12952
12845
|
updateTime.value = Math.max(updateTime.value, performance.now() - start);
|
|
@@ -12981,7 +12874,7 @@
|
|
|
12981
12874
|
}
|
|
12982
12875
|
}
|
|
12983
12876
|
function calculateOffset(index) {
|
|
12984
|
-
index = clamp(index, 0, items.value.length
|
|
12877
|
+
index = clamp(index, 0, items.value.length);
|
|
12985
12878
|
const whole = Math.floor(index);
|
|
12986
12879
|
const fraction = index % 1;
|
|
12987
12880
|
const next = whole + 1;
|
|
@@ -13986,10 +13879,7 @@
|
|
|
13986
13879
|
...omit(makeVTextFieldProps({
|
|
13987
13880
|
modelValue: null,
|
|
13988
13881
|
role: 'combobox'
|
|
13989
|
-
}), ['validationValue', 'dirty', 'appendInnerIcon'])
|
|
13990
|
-
...makeTransitionProps({
|
|
13991
|
-
transition: false
|
|
13992
|
-
})
|
|
13882
|
+
}), ['validationValue', 'dirty', 'appendInnerIcon'])
|
|
13993
13883
|
}, 'VAutocomplete');
|
|
13994
13884
|
const VAutocomplete = genericComponent()({
|
|
13995
13885
|
name: 'VAutocomplete',
|
|
@@ -14014,6 +13904,7 @@
|
|
|
14014
13904
|
const vMenuRef = vue.ref();
|
|
14015
13905
|
const vVirtualScrollRef = vue.ref();
|
|
14016
13906
|
const selectionIndex = vue.shallowRef(-1);
|
|
13907
|
+
const _searchLock = vue.shallowRef(null);
|
|
14017
13908
|
const {
|
|
14018
13909
|
items,
|
|
14019
13910
|
transformIn,
|
|
@@ -14035,9 +13926,9 @@
|
|
|
14035
13926
|
const {
|
|
14036
13927
|
filteredItems,
|
|
14037
13928
|
getMatches
|
|
14038
|
-
} = useFilter(props, items, () => isPristine.value ? '' : search.value);
|
|
13929
|
+
} = useFilter(props, items, () => _searchLock.value ?? (isPristine.value ? '' : search.value));
|
|
14039
13930
|
const displayItems = vue.computed(() => {
|
|
14040
|
-
if (props.hideSelected) {
|
|
13931
|
+
if (props.hideSelected && _searchLock.value === null) {
|
|
14041
13932
|
return filteredItems.value.filter(filteredItem => !model.value.some(s => s.value === filteredItem.value));
|
|
14042
13933
|
}
|
|
14043
13934
|
return filteredItems.value;
|
|
@@ -14168,6 +14059,7 @@
|
|
|
14168
14059
|
isPristine.value = true;
|
|
14169
14060
|
vTextFieldRef.value?.focus();
|
|
14170
14061
|
}
|
|
14062
|
+
_searchLock.value = null;
|
|
14171
14063
|
}
|
|
14172
14064
|
function onFocusin(e) {
|
|
14173
14065
|
isFocused.value = true;
|
|
@@ -14203,6 +14095,7 @@
|
|
|
14203
14095
|
} else {
|
|
14204
14096
|
const add = set !== false;
|
|
14205
14097
|
model.value = add ? [item] : [];
|
|
14098
|
+
_searchLock.value = isPristine.value ? '' : search.value ?? '';
|
|
14206
14099
|
search.value = add && !hasSelectionSlot.value ? item.title : '';
|
|
14207
14100
|
|
|
14208
14101
|
// watch for search watcher to trigger
|
|
@@ -14222,6 +14115,9 @@
|
|
|
14222
14115
|
} else {
|
|
14223
14116
|
if (!props.multiple && search.value == null) model.value = [];
|
|
14224
14117
|
menu.value = false;
|
|
14118
|
+
if (!isPristine.value && search.value) {
|
|
14119
|
+
_searchLock.value = search.value;
|
|
14120
|
+
}
|
|
14225
14121
|
search.value = '';
|
|
14226
14122
|
selectionIndex.value = -1;
|
|
14227
14123
|
}
|
|
@@ -14231,13 +14127,14 @@
|
|
|
14231
14127
|
if (val) menu.value = true;
|
|
14232
14128
|
isPristine.value = !val;
|
|
14233
14129
|
});
|
|
14234
|
-
vue.watch(menu,
|
|
14235
|
-
if (!props.hideSelected &&
|
|
14130
|
+
vue.watch(menu, val => {
|
|
14131
|
+
if (!props.hideSelected && val && model.value.length && isPristine.value) {
|
|
14236
14132
|
const index = displayItems.value.findIndex(item => model.value.some(s => item.value === s.value));
|
|
14237
14133
|
IN_BROWSER && window.requestAnimationFrame(() => {
|
|
14238
14134
|
index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index);
|
|
14239
14135
|
});
|
|
14240
14136
|
}
|
|
14137
|
+
if (val) _searchLock.value = null;
|
|
14241
14138
|
});
|
|
14242
14139
|
vue.watch(items, (newVal, oldVal) => {
|
|
14243
14140
|
if (menu.value) return;
|
|
@@ -14288,7 +14185,6 @@
|
|
|
14288
14185
|
"maxHeight": 310,
|
|
14289
14186
|
"openOnClick": false,
|
|
14290
14187
|
"closeOnContentClick": false,
|
|
14291
|
-
"transition": props.transition,
|
|
14292
14188
|
"onAfterEnter": onAfterEnter,
|
|
14293
14189
|
"onAfterLeave": onAfterLeave
|
|
14294
14190
|
}, props.menuProps), {
|
|
@@ -19316,10 +19212,7 @@
|
|
|
19316
19212
|
...omit(makeVTextFieldProps({
|
|
19317
19213
|
modelValue: null,
|
|
19318
19214
|
role: 'combobox'
|
|
19319
|
-
}), ['validationValue', 'dirty', 'appendInnerIcon'])
|
|
19320
|
-
...makeTransitionProps({
|
|
19321
|
-
transition: false
|
|
19322
|
-
})
|
|
19215
|
+
}), ['validationValue', 'dirty', 'appendInnerIcon'])
|
|
19323
19216
|
}, 'VCombobox');
|
|
19324
19217
|
const VCombobox = genericComponent()({
|
|
19325
19218
|
name: 'VCombobox',
|
|
@@ -19363,6 +19256,7 @@
|
|
|
19363
19256
|
const hasChips = vue.computed(() => !!(props.chips || slots.chip));
|
|
19364
19257
|
const hasSelectionSlot = vue.computed(() => hasChips.value || !!slots.selection);
|
|
19365
19258
|
const _search = vue.shallowRef(!props.multiple && !hasSelectionSlot.value ? model.value[0]?.title ?? '' : '');
|
|
19259
|
+
const _searchLock = vue.shallowRef(null);
|
|
19366
19260
|
const search = vue.computed({
|
|
19367
19261
|
get: () => {
|
|
19368
19262
|
return _search.value;
|
|
@@ -19397,9 +19291,9 @@
|
|
|
19397
19291
|
const {
|
|
19398
19292
|
filteredItems,
|
|
19399
19293
|
getMatches
|
|
19400
|
-
} = useFilter(props, items, () => props.alwaysFilter || !isPristine.value ? search.value : '');
|
|
19294
|
+
} = useFilter(props, items, () => _searchLock.value ?? (props.alwaysFilter || !isPristine.value ? search.value : ''));
|
|
19401
19295
|
const displayItems = vue.computed(() => {
|
|
19402
|
-
if (props.hideSelected) {
|
|
19296
|
+
if (props.hideSelected && _searchLock.value === null) {
|
|
19403
19297
|
return filteredItems.value.filter(filteredItem => !model.value.some(s => s.value === filteredItem.value));
|
|
19404
19298
|
}
|
|
19405
19299
|
return filteredItems.value;
|
|
@@ -19480,22 +19374,19 @@
|
|
|
19480
19374
|
if (['Escape'].includes(e.key)) {
|
|
19481
19375
|
menu.value = false;
|
|
19482
19376
|
}
|
|
19483
|
-
if (['Enter', '
|
|
19484
|
-
|
|
19485
|
-
|
|
19486
|
-
|
|
19487
|
-
|
|
19488
|
-
|
|
19489
|
-
|
|
19490
|
-
select(filteredItems.value[0]);
|
|
19491
|
-
}
|
|
19492
|
-
isPristine.value = true;
|
|
19377
|
+
if (highlightFirst.value && ['Enter', 'Tab'].includes(e.key) && !model.value.some(_ref2 => {
|
|
19378
|
+
let {
|
|
19379
|
+
value
|
|
19380
|
+
} = _ref2;
|
|
19381
|
+
return value === displayItems.value[0].value;
|
|
19382
|
+
})) {
|
|
19383
|
+
select(filteredItems.value[0]);
|
|
19493
19384
|
}
|
|
19494
19385
|
if (e.key === 'ArrowDown' && highlightFirst.value) {
|
|
19495
19386
|
listRef.value?.focus('next');
|
|
19496
19387
|
}
|
|
19497
19388
|
if (e.key === 'Enter' && search.value) {
|
|
19498
|
-
select(transformItem$3(props, search.value));
|
|
19389
|
+
select(transformItem$3(props, search.value), true, true);
|
|
19499
19390
|
if (hasSelectionSlot.value) _search.value = '';
|
|
19500
19391
|
}
|
|
19501
19392
|
if (['Backspace', 'Delete'].includes(e.key)) {
|
|
@@ -19543,10 +19434,12 @@
|
|
|
19543
19434
|
isPristine.value = true;
|
|
19544
19435
|
vTextFieldRef.value?.focus();
|
|
19545
19436
|
}
|
|
19437
|
+
_searchLock.value = null;
|
|
19546
19438
|
}
|
|
19547
19439
|
/** @param set - null means toggle */
|
|
19548
19440
|
function select(item) {
|
|
19549
19441
|
let set = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
19442
|
+
let keepMenu = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
19550
19443
|
if (!item || item.props.disabled) return;
|
|
19551
19444
|
if (props.multiple) {
|
|
19552
19445
|
const index = model.value.findIndex(selection => (props.valueComparator || deepEqual)(selection.value, item.value));
|
|
@@ -19564,11 +19457,14 @@
|
|
|
19564
19457
|
} else {
|
|
19565
19458
|
const add = set !== false;
|
|
19566
19459
|
model.value = add ? [item] : [];
|
|
19460
|
+
if ((!isPristine.value || props.alwaysFilter) && _search.value) {
|
|
19461
|
+
_searchLock.value = _search.value;
|
|
19462
|
+
}
|
|
19567
19463
|
_search.value = add && !hasSelectionSlot.value ? item.title : '';
|
|
19568
19464
|
|
|
19569
19465
|
// watch for search watcher to trigger
|
|
19570
19466
|
vue.nextTick(() => {
|
|
19571
|
-
menu.value =
|
|
19467
|
+
menu.value = keepMenu;
|
|
19572
19468
|
isPristine.value = true;
|
|
19573
19469
|
});
|
|
19574
19470
|
}
|
|
@@ -19607,13 +19503,14 @@
|
|
|
19607
19503
|
}
|
|
19608
19504
|
}
|
|
19609
19505
|
});
|
|
19610
|
-
vue.watch(menu,
|
|
19611
|
-
if (!props.hideSelected &&
|
|
19506
|
+
vue.watch(menu, val => {
|
|
19507
|
+
if (!props.hideSelected && val && model.value.length && isPristine.value) {
|
|
19612
19508
|
const index = displayItems.value.findIndex(item => model.value.some(s => (props.valueComparator || deepEqual)(s.value, item.value)));
|
|
19613
19509
|
IN_BROWSER && window.requestAnimationFrame(() => {
|
|
19614
19510
|
index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index);
|
|
19615
19511
|
});
|
|
19616
19512
|
}
|
|
19513
|
+
if (val) _searchLock.value = null;
|
|
19617
19514
|
});
|
|
19618
19515
|
vue.watch(items, (newVal, oldVal) => {
|
|
19619
19516
|
if (menu.value) return;
|
|
@@ -19664,7 +19561,6 @@
|
|
|
19664
19561
|
"maxHeight": 310,
|
|
19665
19562
|
"openOnClick": false,
|
|
19666
19563
|
"closeOnContentClick": false,
|
|
19667
|
-
"transition": props.transition,
|
|
19668
19564
|
"onAfterEnter": onAfterEnter,
|
|
19669
19565
|
"onAfterLeave": onAfterLeave
|
|
19670
19566
|
}, props.menuProps), {
|
|
@@ -21211,6 +21107,7 @@
|
|
|
21211
21107
|
// Types
|
|
21212
21108
|
|
|
21213
21109
|
const makeVDataTableFooterProps = propsFactory({
|
|
21110
|
+
color: String,
|
|
21214
21111
|
prevIcon: {
|
|
21215
21112
|
type: IconValue,
|
|
21216
21113
|
default: '$prev'
|
|
@@ -21313,6 +21210,7 @@
|
|
|
21313
21210
|
"aria-label": t(props.itemsPerPageText)
|
|
21314
21211
|
}, [t(props.itemsPerPageText)]), vue.createVNode(VSelect, {
|
|
21315
21212
|
"items": itemsPerPageOptions.value,
|
|
21213
|
+
"itemColor": props.color,
|
|
21316
21214
|
"modelValue": itemsPerPage.value,
|
|
21317
21215
|
"onUpdate:modelValue": v => setItemsPerPage(Number(v)),
|
|
21318
21216
|
"density": "compact",
|
|
@@ -21335,7 +21233,7 @@
|
|
|
21335
21233
|
"showFirstLastPage": true,
|
|
21336
21234
|
"totalVisible": props.showCurrentPage ? 1 : 0,
|
|
21337
21235
|
"variant": "plain"
|
|
21338
|
-
}, paginationProps), null)])]);
|
|
21236
|
+
}, omit(paginationProps, ['color'])), null)])]);
|
|
21339
21237
|
});
|
|
21340
21238
|
return {};
|
|
21341
21239
|
}
|
|
@@ -21846,6 +21744,7 @@
|
|
|
21846
21744
|
if (isEmpty) return '';
|
|
21847
21745
|
if (column.key === 'data-table-select') {
|
|
21848
21746
|
return slots['header.data-table-select']?.(columnSlotProps) ?? (showSelectAll.value && vue.createVNode(VCheckboxBtn, {
|
|
21747
|
+
"color": props.color,
|
|
21849
21748
|
"density": props.density,
|
|
21850
21749
|
"modelValue": allSelected.value,
|
|
21851
21750
|
"indeterminate": someSelected.value && !allSelected.value,
|
|
@@ -21870,11 +21769,6 @@
|
|
|
21870
21769
|
const displayItems = vue.computed(() => {
|
|
21871
21770
|
return columns.value.filter(column => column?.sortable && !props.disableSort);
|
|
21872
21771
|
});
|
|
21873
|
-
const appendIcon = vue.computed(() => {
|
|
21874
|
-
const showSelectColumn = columns.value.find(column => column.key === 'data-table-select');
|
|
21875
|
-
if (showSelectColumn == null) return;
|
|
21876
|
-
return allSelected.value ? '$checkboxOn' : someSelected.value ? '$checkboxIndeterminate' : '$checkboxOff';
|
|
21877
|
-
});
|
|
21878
21772
|
return vue.createVNode(VDataTableColumn, vue.mergeProps({
|
|
21879
21773
|
"tag": "th",
|
|
21880
21774
|
"class": [...headerCellClasses.value],
|
|
@@ -21884,6 +21778,7 @@
|
|
|
21884
21778
|
"class": "v-data-table-header__content"
|
|
21885
21779
|
}, [vue.createVNode(VSelect, {
|
|
21886
21780
|
"chips": true,
|
|
21781
|
+
"color": props.color,
|
|
21887
21782
|
"class": "v-data-table__td-sort-select",
|
|
21888
21783
|
"clearable": true,
|
|
21889
21784
|
"density": "default",
|
|
@@ -21892,9 +21787,15 @@
|
|
|
21892
21787
|
"multiple": props.multiSort,
|
|
21893
21788
|
"variant": "underlined",
|
|
21894
21789
|
"onClick:clear": () => sortBy.value = [],
|
|
21895
|
-
"appendIcon": appendIcon.value,
|
|
21896
21790
|
"onClick:append": () => selectAll(!allSelected.value)
|
|
21897
21791
|
}, {
|
|
21792
|
+
append: () => vue.createVNode(VCheckboxBtn, {
|
|
21793
|
+
"color": props.color,
|
|
21794
|
+
"density": "compact",
|
|
21795
|
+
"modelValue": allSelected.value,
|
|
21796
|
+
"indeterminate": someSelected.value && !allSelected.value,
|
|
21797
|
+
"onUpdate:modelValue": selectAll
|
|
21798
|
+
}, null),
|
|
21898
21799
|
chip: props => vue.createVNode(VChip, {
|
|
21899
21800
|
"onClick": props.item.raw?.sortable ? () => toggleSort(props.item.raw) : undefined,
|
|
21900
21801
|
"onMousedown": e => {
|
|
@@ -21924,7 +21825,7 @@
|
|
|
21924
21825
|
"name": "v-data-table-progress",
|
|
21925
21826
|
"absolute": true,
|
|
21926
21827
|
"active": true,
|
|
21927
|
-
"color": typeof props.loading === 'boolean' ?
|
|
21828
|
+
"color": typeof props.loading === 'boolean' || props.loading === 'true' ? props.color : props.loading,
|
|
21928
21829
|
"indeterminate": true
|
|
21929
21830
|
}, {
|
|
21930
21831
|
default: slots.loader
|
|
@@ -22031,6 +21932,7 @@
|
|
|
22031
21932
|
// Types
|
|
22032
21933
|
|
|
22033
21934
|
const makeVDataTableRowProps = propsFactory({
|
|
21935
|
+
color: String,
|
|
22034
21936
|
index: Number,
|
|
22035
21937
|
item: Object,
|
|
22036
21938
|
cellProps: [Object, Function],
|
|
@@ -22148,11 +22050,13 @@
|
|
|
22148
22050
|
return slots['item.data-table-select']?.({
|
|
22149
22051
|
...slotProps,
|
|
22150
22052
|
props: {
|
|
22053
|
+
color: props.color,
|
|
22151
22054
|
disabled: !item.selectable,
|
|
22152
22055
|
modelValue: isSelected([item]),
|
|
22153
22056
|
onClick: vue.withModifiers(() => toggleSelect(item), ['stop'])
|
|
22154
22057
|
}
|
|
22155
22058
|
}) ?? vue.createVNode(VCheckboxBtn, {
|
|
22059
|
+
"color": props.color,
|
|
22156
22060
|
"disabled": !item.selectable,
|
|
22157
22061
|
"density": props.density,
|
|
22158
22062
|
"modelValue": isSelected([item]),
|
|
@@ -22191,6 +22095,7 @@
|
|
|
22191
22095
|
// Types
|
|
22192
22096
|
|
|
22193
22097
|
const makeVDataTableRowsProps = propsFactory({
|
|
22098
|
+
color: String,
|
|
22194
22099
|
loading: [Boolean, String],
|
|
22195
22100
|
loadingText: {
|
|
22196
22101
|
type: String,
|
|
@@ -22306,6 +22211,7 @@
|
|
|
22306
22211
|
} : undefined,
|
|
22307
22212
|
index,
|
|
22308
22213
|
item,
|
|
22214
|
+
color: props.color,
|
|
22309
22215
|
cellProps: props.cellProps,
|
|
22310
22216
|
collapseIcon: props.collapseIcon,
|
|
22311
22217
|
expandIcon: props.expandIcon,
|
|
@@ -26701,12 +26607,17 @@
|
|
|
26701
26607
|
}
|
|
26702
26608
|
const model = useProxiedModel(props, 'modelValue', null, val => val ?? null, val => val == null ? val ?? null : clamp(Number(val), props.min, props.max));
|
|
26703
26609
|
const _inputText = vue.shallowRef(null);
|
|
26704
|
-
vue.
|
|
26705
|
-
|
|
26610
|
+
const _lastParsedValue = vue.shallowRef(null);
|
|
26611
|
+
vue.watch(model, val => {
|
|
26612
|
+
if (isFocused.value && !controlsDisabled.value && Number(_inputText.value) === val) ; else if (val == null) {
|
|
26706
26613
|
_inputText.value = null;
|
|
26707
|
-
|
|
26708
|
-
|
|
26614
|
+
_lastParsedValue.value = null;
|
|
26615
|
+
} else if (!isNaN(val)) {
|
|
26616
|
+
_inputText.value = correctPrecision(val);
|
|
26617
|
+
_lastParsedValue.value = Number(_inputText.value.replace(decimalSeparator.value, '.'));
|
|
26709
26618
|
}
|
|
26619
|
+
}, {
|
|
26620
|
+
immediate: true
|
|
26710
26621
|
});
|
|
26711
26622
|
const inputText = vue.computed({
|
|
26712
26623
|
get: () => _inputText.value,
|
|
@@ -26714,15 +26625,24 @@
|
|
|
26714
26625
|
if (val === null || val === '') {
|
|
26715
26626
|
model.value = null;
|
|
26716
26627
|
_inputText.value = null;
|
|
26628
|
+
_lastParsedValue.value = null;
|
|
26717
26629
|
return;
|
|
26718
26630
|
}
|
|
26719
26631
|
const parsedValue = Number(val.replace(decimalSeparator.value, '.'));
|
|
26720
|
-
if (!isNaN(parsedValue)
|
|
26721
|
-
model.value = parsedValue;
|
|
26632
|
+
if (!isNaN(parsedValue)) {
|
|
26722
26633
|
_inputText.value = val;
|
|
26634
|
+
_lastParsedValue.value = parsedValue;
|
|
26635
|
+
if (parsedValue <= props.max && parsedValue >= props.min) {
|
|
26636
|
+
model.value = parsedValue;
|
|
26637
|
+
}
|
|
26723
26638
|
}
|
|
26724
26639
|
}
|
|
26725
26640
|
});
|
|
26641
|
+
const isOutOfRange = vue.computed(() => {
|
|
26642
|
+
if (_lastParsedValue.value === null) return false;
|
|
26643
|
+
const numberFromText = Number(_inputText.value);
|
|
26644
|
+
return numberFromText !== clamp(numberFromText, props.min, props.max);
|
|
26645
|
+
});
|
|
26726
26646
|
const canIncrease = vue.computed(() => {
|
|
26727
26647
|
if (controlsDisabled.value) return false;
|
|
26728
26648
|
return (model.value ?? 0) + props.step <= props.max;
|
|
@@ -26978,6 +26898,7 @@
|
|
|
26978
26898
|
"focused": isFocused.value,
|
|
26979
26899
|
"onUpdate:focused": $event => isFocused.value = $event,
|
|
26980
26900
|
"validationValue": model.value,
|
|
26901
|
+
"error": isOutOfRange.value || undefined,
|
|
26981
26902
|
"onBeforeinput": onBeforeinput,
|
|
26982
26903
|
"onFocus": onFocus,
|
|
26983
26904
|
"onBlur": onBlur,
|
|
@@ -29777,7 +29698,7 @@
|
|
|
29777
29698
|
"role": "tablist",
|
|
29778
29699
|
"symbol": VTabsSymbol
|
|
29779
29700
|
}, scopeId, attrs), {
|
|
29780
|
-
default:
|
|
29701
|
+
default: slots.default ?? (() => items.value.map(item => slots.tab?.({
|
|
29781
29702
|
item
|
|
29782
29703
|
}) ?? vue.createVNode(VTab, vue.mergeProps(item, {
|
|
29783
29704
|
"key": item.text,
|
|
@@ -29787,7 +29708,9 @@
|
|
|
29787
29708
|
default: slots[`tab.${item.value}`] ? () => slots[`tab.${item.value}`]?.({
|
|
29788
29709
|
item
|
|
29789
29710
|
}) : undefined
|
|
29790
|
-
}))
|
|
29711
|
+
}))),
|
|
29712
|
+
prev: slots.prev,
|
|
29713
|
+
next: slots.next
|
|
29791
29714
|
}), hasWindow && vue.createVNode(VTabsWindow, vue.mergeProps({
|
|
29792
29715
|
"modelValue": model.value,
|
|
29793
29716
|
"onUpdate:modelValue": $event => model.value = $event,
|
|
@@ -29876,6 +29799,10 @@
|
|
|
29876
29799
|
const vFieldRef = vue.ref();
|
|
29877
29800
|
const controlHeight = vue.shallowRef('');
|
|
29878
29801
|
const textareaRef = vue.ref();
|
|
29802
|
+
const scrollbarWidth = vue.ref(0);
|
|
29803
|
+
const {
|
|
29804
|
+
platform
|
|
29805
|
+
} = useDisplay();
|
|
29879
29806
|
const autocomplete = useAutocomplete(props);
|
|
29880
29807
|
const isActive = vue.computed(() => props.persistentPlaceholder || isFocused.value || props.active);
|
|
29881
29808
|
function onFocus() {
|
|
@@ -29920,6 +29847,18 @@
|
|
|
29920
29847
|
if (!props.autoGrow) rows.value = Number(props.rows);
|
|
29921
29848
|
});
|
|
29922
29849
|
function calculateInputHeight() {
|
|
29850
|
+
vue.nextTick(() => {
|
|
29851
|
+
if (!textareaRef.value) return;
|
|
29852
|
+
if (platform.value.firefox) {
|
|
29853
|
+
scrollbarWidth.value = 12;
|
|
29854
|
+
return;
|
|
29855
|
+
}
|
|
29856
|
+
const {
|
|
29857
|
+
offsetWidth,
|
|
29858
|
+
clientWidth
|
|
29859
|
+
} = textareaRef.value;
|
|
29860
|
+
scrollbarWidth.value = Math.max(0, offsetWidth - clientWidth);
|
|
29861
|
+
});
|
|
29923
29862
|
if (!props.autoGrow) return;
|
|
29924
29863
|
vue.nextTick(() => {
|
|
29925
29864
|
if (!sizerRef.value || !vFieldRef.value) return;
|
|
@@ -29980,7 +29919,9 @@
|
|
|
29980
29919
|
'v-textarea--no-resize': props.noResize || props.autoGrow,
|
|
29981
29920
|
'v-input--plain-underlined': isPlainOrUnderlined.value
|
|
29982
29921
|
}, props.class],
|
|
29983
|
-
"style":
|
|
29922
|
+
"style": [{
|
|
29923
|
+
'--v-textarea-scroll-bar-width': convertToUnit(scrollbarWidth.value)
|
|
29924
|
+
}, props.style]
|
|
29984
29925
|
}, rootAttrs, inputProps, {
|
|
29985
29926
|
"centerAffix": rows.value === 1 && !isPlainOrUnderlined.value,
|
|
29986
29927
|
"focused": isFocused.value
|
|
@@ -31499,6 +31440,11 @@
|
|
|
31499
31440
|
openAll: Boolean,
|
|
31500
31441
|
indentLines: [Boolean, String],
|
|
31501
31442
|
search: String,
|
|
31443
|
+
hideNoData: Boolean,
|
|
31444
|
+
noDataText: {
|
|
31445
|
+
type: String,
|
|
31446
|
+
default: '$vuetify.noDataText'
|
|
31447
|
+
},
|
|
31502
31448
|
...makeFilterProps({
|
|
31503
31449
|
filterKeys: ['title']
|
|
31504
31450
|
}),
|
|
@@ -31526,6 +31472,9 @@
|
|
|
31526
31472
|
slots,
|
|
31527
31473
|
emit
|
|
31528
31474
|
} = _ref;
|
|
31475
|
+
const {
|
|
31476
|
+
t
|
|
31477
|
+
} = useLocale();
|
|
31529
31478
|
const {
|
|
31530
31479
|
items
|
|
31531
31480
|
} = useListItems(props);
|
|
@@ -31619,7 +31568,10 @@
|
|
|
31619
31568
|
"selected": selected.value,
|
|
31620
31569
|
"onUpdate:selected": $event => selected.value = $event
|
|
31621
31570
|
}), {
|
|
31622
|
-
default: () => [
|
|
31571
|
+
default: () => [visibleIds.value?.size === 0 && !props.hideNoData && (slots['no-data']?.() ?? vue.createVNode(VListItem, {
|
|
31572
|
+
"key": "no-data",
|
|
31573
|
+
"title": t(props.noDataText)
|
|
31574
|
+
}, null)), vue.createVNode(VTreeviewChildren, vue.mergeProps(treeviewChildrenProps, {
|
|
31623
31575
|
"density": props.density,
|
|
31624
31576
|
"returnObject": props.returnObject,
|
|
31625
31577
|
"items": items.value,
|
|
@@ -34674,7 +34626,7 @@
|
|
|
34674
34626
|
...omit(makeVDatePickerProps({
|
|
34675
34627
|
hideHeader: true,
|
|
34676
34628
|
showAdjacentMonths: true
|
|
34677
|
-
}), ['active', 'location', 'rounded'])
|
|
34629
|
+
}), ['active', 'location', 'rounded', 'height', 'minHeight', 'maxHeight'])
|
|
34678
34630
|
}, 'VDateInput');
|
|
34679
34631
|
const VDateInput = genericComponent()({
|
|
34680
34632
|
name: 'VDateInput',
|
|
@@ -34816,7 +34768,7 @@
|
|
|
34816
34768
|
}
|
|
34817
34769
|
useRender(() => {
|
|
34818
34770
|
const confirmEditProps = VConfirmEdit.filterProps(props);
|
|
34819
|
-
const datePickerProps = VDatePicker.filterProps(omit(props, ['active', 'location', 'rounded']));
|
|
34771
|
+
const datePickerProps = VDatePicker.filterProps(omit(props, ['active', 'bgColor', 'location', 'rounded', 'maxWidth', 'minWidth', 'width']));
|
|
34820
34772
|
const datePickerSlots = pick(slots, ['title', 'header', 'day', 'month', 'year']);
|
|
34821
34773
|
const textFieldProps = VTextField.filterProps(omit(props, ['placeholder']));
|
|
34822
34774
|
return vue.createVNode(VTextField, vue.mergeProps({
|
|
@@ -37908,6 +37860,118 @@
|
|
|
37908
37860
|
Touch: Touch
|
|
37909
37861
|
});
|
|
37910
37862
|
|
|
37863
|
+
// Composables
|
|
37864
|
+
|
|
37865
|
+
// Types
|
|
37866
|
+
|
|
37867
|
+
const aliases = {
|
|
37868
|
+
collapse: 'mdi-chevron-up',
|
|
37869
|
+
complete: 'mdi-check',
|
|
37870
|
+
cancel: 'mdi-close-circle',
|
|
37871
|
+
close: 'mdi-close',
|
|
37872
|
+
delete: 'mdi-close-circle',
|
|
37873
|
+
// delete (e.g. v-chip close)
|
|
37874
|
+
clear: 'mdi-close-circle',
|
|
37875
|
+
success: 'mdi-check-circle',
|
|
37876
|
+
info: 'mdi-information',
|
|
37877
|
+
warning: 'mdi-alert-circle',
|
|
37878
|
+
error: 'mdi-close-circle',
|
|
37879
|
+
prev: 'mdi-chevron-left',
|
|
37880
|
+
next: 'mdi-chevron-right',
|
|
37881
|
+
checkboxOn: 'mdi-checkbox-marked',
|
|
37882
|
+
checkboxOff: 'mdi-checkbox-blank-outline',
|
|
37883
|
+
checkboxIndeterminate: 'mdi-minus-box',
|
|
37884
|
+
delimiter: 'mdi-circle',
|
|
37885
|
+
// for carousel
|
|
37886
|
+
sortAsc: 'mdi-arrow-up',
|
|
37887
|
+
sortDesc: 'mdi-arrow-down',
|
|
37888
|
+
expand: 'mdi-chevron-down',
|
|
37889
|
+
menu: 'mdi-menu',
|
|
37890
|
+
subgroup: 'mdi-menu-down',
|
|
37891
|
+
dropdown: 'mdi-menu-down',
|
|
37892
|
+
radioOn: 'mdi-radiobox-marked',
|
|
37893
|
+
radioOff: 'mdi-radiobox-blank',
|
|
37894
|
+
edit: 'mdi-pencil',
|
|
37895
|
+
ratingEmpty: 'mdi-star-outline',
|
|
37896
|
+
ratingFull: 'mdi-star',
|
|
37897
|
+
ratingHalf: 'mdi-star-half-full',
|
|
37898
|
+
loading: 'mdi-cached',
|
|
37899
|
+
first: 'mdi-page-first',
|
|
37900
|
+
last: 'mdi-page-last',
|
|
37901
|
+
unfold: 'mdi-unfold-more-horizontal',
|
|
37902
|
+
file: 'mdi-paperclip',
|
|
37903
|
+
plus: 'mdi-plus',
|
|
37904
|
+
minus: 'mdi-minus',
|
|
37905
|
+
calendar: 'mdi-calendar',
|
|
37906
|
+
treeviewCollapse: 'mdi-menu-down',
|
|
37907
|
+
treeviewExpand: 'mdi-menu-right',
|
|
37908
|
+
tableGroupCollapse: 'mdi-chevron-down',
|
|
37909
|
+
tableGroupExpand: 'mdi-chevron-right',
|
|
37910
|
+
eyeDropper: 'mdi-eyedropper',
|
|
37911
|
+
upload: 'mdi-cloud-upload',
|
|
37912
|
+
color: 'mdi-palette',
|
|
37913
|
+
command: 'mdi-apple-keyboard-command',
|
|
37914
|
+
ctrl: 'mdi-apple-keyboard-control',
|
|
37915
|
+
space: 'mdi-keyboard-space',
|
|
37916
|
+
shift: 'mdi-apple-keyboard-shift',
|
|
37917
|
+
alt: 'mdi-apple-keyboard-option',
|
|
37918
|
+
enter: 'mdi-keyboard-return',
|
|
37919
|
+
arrowup: 'mdi-arrow-up',
|
|
37920
|
+
arrowdown: 'mdi-arrow-down',
|
|
37921
|
+
arrowleft: 'mdi-arrow-left',
|
|
37922
|
+
arrowright: 'mdi-arrow-right',
|
|
37923
|
+
backspace: 'mdi-backspace',
|
|
37924
|
+
play: 'mdi-play',
|
|
37925
|
+
pause: 'mdi-pause',
|
|
37926
|
+
fullscreen: 'mdi-fullscreen',
|
|
37927
|
+
fullscreenExit: 'mdi-fullscreen-exit',
|
|
37928
|
+
volumeHigh: 'mdi-volume-high',
|
|
37929
|
+
volumeMedium: 'mdi-volume-medium',
|
|
37930
|
+
volumeLow: 'mdi-volume-low',
|
|
37931
|
+
volumeOff: 'mdi-volume-variant-off'
|
|
37932
|
+
};
|
|
37933
|
+
const mdi = {
|
|
37934
|
+
// Not using mergeProps here, functional components merge props by default (?)
|
|
37935
|
+
component: props => vue.h(VClassIcon, {
|
|
37936
|
+
...props,
|
|
37937
|
+
class: 'mdi'
|
|
37938
|
+
})
|
|
37939
|
+
};
|
|
37940
|
+
|
|
37941
|
+
// Composables
|
|
37942
|
+
|
|
37943
|
+
// Types
|
|
37944
|
+
|
|
37945
|
+
function genDefaults() {
|
|
37946
|
+
return {
|
|
37947
|
+
svg: {
|
|
37948
|
+
component: VSvgIcon
|
|
37949
|
+
},
|
|
37950
|
+
class: {
|
|
37951
|
+
component: VClassIcon
|
|
37952
|
+
}
|
|
37953
|
+
};
|
|
37954
|
+
}
|
|
37955
|
+
function createIcons(options) {
|
|
37956
|
+
const sets = genDefaults();
|
|
37957
|
+
const defaultSet = options?.defaultSet ?? 'mdi';
|
|
37958
|
+
if (defaultSet === 'mdi' && !sets.mdi) {
|
|
37959
|
+
sets.mdi = mdi;
|
|
37960
|
+
}
|
|
37961
|
+
return mergeDeep({
|
|
37962
|
+
defaultSet,
|
|
37963
|
+
sets,
|
|
37964
|
+
aliases: {
|
|
37965
|
+
...aliases,
|
|
37966
|
+
/* eslint-disable max-len */
|
|
37967
|
+
vuetify: ['M8.2241 14.2009L12 21L22 3H14.4459L8.2241 14.2009Z', ['M7.26303 12.4733L7.00113 12L2 3H12.5261C12.5261 3 12.5261 3 12.5261 3L7.26303 12.4733Z', 0.6]],
|
|
37968
|
+
'vuetify-outline': 'svg:M7.26 12.47 12.53 3H2L7.26 12.47ZM14.45 3 8.22 14.2 12 21 22 3H14.45ZM18.6 5 12 16.88 10.51 14.2 15.62 5ZM7.26 8.35 5.4 5H9.13L7.26 8.35Z',
|
|
37969
|
+
'vuetify-play': ['m6.376 13.184-4.11-7.192C1.505 4.66 2.467 3 4.003 3h8.532l-.953 1.576-.006.01-.396.677c-.429.732-.214 1.507.194 2.015.404.503 1.092.878 1.869.806a3.72 3.72 0 0 1 1.005.022c.276.053.434.143.523.237.138.146.38.635-.25 2.09-.893 1.63-1.553 1.722-1.847 1.677-.213-.033-.468-.158-.756-.406a4.95 4.95 0 0 1-.8-.927c-.39-.564-1.04-.84-1.66-.846-.625-.006-1.316.27-1.693.921l-.478.826-.911 1.506Z', ['M9.093 11.552c.046-.079.144-.15.32-.148a.53.53 0 0 1 .43.207c.285.414.636.847 1.046 1.2.405.35.914.662 1.516.754 1.334.205 2.502-.698 3.48-2.495l.014-.028.013-.03c.687-1.574.774-2.852-.005-3.675-.37-.391-.861-.586-1.333-.676a5.243 5.243 0 0 0-1.447-.044c-.173.016-.393-.073-.54-.257-.145-.18-.127-.316-.082-.392l.393-.672L14.287 3h5.71c1.536 0 2.499 1.659 1.737 2.992l-7.997 13.996c-.768 1.344-2.706 1.344-3.473 0l-3.037-5.314 1.377-2.278.004-.006.004-.007.481-.831Z', 0.6]]
|
|
37970
|
+
/* eslint-enable max-len */
|
|
37971
|
+
}
|
|
37972
|
+
}, options);
|
|
37973
|
+
}
|
|
37974
|
+
|
|
37911
37975
|
// Composables
|
|
37912
37976
|
function createVuetify$1() {
|
|
37913
37977
|
let vuetify = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
@@ -38007,7 +38071,7 @@
|
|
|
38007
38071
|
};
|
|
38008
38072
|
});
|
|
38009
38073
|
}
|
|
38010
|
-
const version$1 = "3.10.5-dev.2025-10-
|
|
38074
|
+
const version$1 = "3.10.5-dev.2025-10-09";
|
|
38011
38075
|
createVuetify$1.version = version$1;
|
|
38012
38076
|
|
|
38013
38077
|
// Vue's inject() can only be used in setup
|
|
@@ -38305,7 +38369,7 @@
|
|
|
38305
38369
|
|
|
38306
38370
|
/* eslint-disable local-rules/sort-imports */
|
|
38307
38371
|
|
|
38308
|
-
const version = "3.10.5-dev.2025-10-
|
|
38372
|
+
const version = "3.10.5-dev.2025-10-09";
|
|
38309
38373
|
|
|
38310
38374
|
/* eslint-disable local-rules/sort-imports */
|
|
38311
38375
|
|