@vuetify/nightly 3.10.9-dev.2025-11-08 → 3.10.9-dev.2025-11-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.
@@ -104,16 +104,9 @@ export const VCombobox = genericComponent()({
104
104
  nextTick(() => vVirtualScrollRef.value?.scrollToIndex(0));
105
105
  }
106
106
  if (val && props.multiple && props.delimiters?.length) {
107
- const signsToMatch = props.delimiters.map(escapeForRegex).join('|');
108
- const values = val.split(new RegExp(`(?:${signsToMatch})+`));
107
+ const values = splitByDelimiters(val);
109
108
  if (values.length > 1) {
110
- for (let v of values) {
111
- v = v.trim();
112
- if (v) {
113
- select(transformItem(props, v));
114
- await nextTick();
115
- }
116
- }
109
+ selectMultiple(values);
117
110
  _search.value = '';
118
111
  }
119
112
  }
@@ -260,6 +253,14 @@ export const VCombobox = genericComponent()({
260
253
  selectionIndex.value = -1;
261
254
  }
262
255
  }
256
+ function onPaste(e) {
257
+ const clipboardText = e?.clipboardData?.getData('Text') ?? '';
258
+ const values = splitByDelimiters(clipboardText);
259
+ if (values.length > 1 && props.multiple) {
260
+ e.preventDefault();
261
+ selectMultiple(values);
262
+ }
263
+ }
263
264
  function onAfterEnter() {
264
265
  if (props.eager) {
265
266
  vVirtualScrollRef.value?.calculateVisibleItems();
@@ -305,6 +306,20 @@ export const VCombobox = genericComponent()({
305
306
  });
306
307
  }
307
308
  }
309
+ function splitByDelimiters(val) {
310
+ const effectiveDelimiters = ['\n', ...(props.delimiters ?? [])];
311
+ const signsToMatch = effectiveDelimiters.map(escapeForRegex).join('|');
312
+ return val.split(new RegExp(`(?:${signsToMatch})+`));
313
+ }
314
+ async function selectMultiple(values) {
315
+ for (let value of values) {
316
+ value = value.trim();
317
+ if (value) {
318
+ select(transformItem(props, value));
319
+ await nextTick();
320
+ }
321
+ }
322
+ }
308
323
  function onFocusin(e) {
309
324
  isFocused.value = true;
310
325
  setTimeout(() => {
@@ -378,6 +393,7 @@ export const VCombobox = genericComponent()({
378
393
  "onClick:clear": onClear,
379
394
  "onMousedown:control": onMousedownControl,
380
395
  "onKeydown": onKeydown,
396
+ "onPaste": onPaste,
381
397
  "aria-expanded": ariaExpanded.value,
382
398
  "aria-controls": ariaControls.value
383
399
  }), {
@@ -1 +1 @@
1
- {"version":3,"file":"VCombobox.js","names":["VAvatar","VCheckboxBtn","VChip","VDefaultsProvider","VDivider","VIcon","VList","VListItem","VListSubheader","VMenu","makeSelectProps","VTextField","makeVTextFieldProps","VVirtualScroll","useScrolling","useTextColor","highlightResult","makeFilterProps","useFilter","useForm","forwardRefs","transformItem","useItems","useLocale","useMenuActivator","useProxiedModel","computed","mergeProps","nextTick","ref","shallowRef","watch","checkPrintable","deepEqual","ensureValidVNode","escapeForRegex","genericComponent","IN_BROWSER","isComposingIgnoreKey","noop","omit","propsFactory","useRender","wrapInArray","makeVComboboxProps","alwaysFilter","Boolean","autoSelectFirst","type","String","clearOnSelect","default","delimiters","Array","filterKeys","hideNoData","returnObject","modelValue","role","VCombobox","name","props","emits","focused","value","setup","_ref","emit","slots","t","vTextFieldRef","isFocused","isPristine","listHasFocus","vMenuRef","vVirtualScrollRef","selectionIndex","cleared","items","transformIn","transformOut","textColorClasses","textColorStyles","color","model","v","transformed","multiple","form","hasChips","chips","chip","hasSelectionSlot","selection","_search","title","_searchLock","search","get","set","val","scrollToIndex","length","signsToMatch","map","join","values","split","RegExp","trim","select","counterValue","filteredItems","getMatches","displayItems","hideSelected","filter","filteredItem","some","s","menuDisabled","isReadonly","isDisabled","_menu","menu","ΨopenChildren","size","menuId","ariaExpanded","ariaControls","ariaLabel","selectedValues","highlightFirst","selectFirst","listRef","listEvents","onClear","e","openOnClear","onMousedownControl","onMousedownMenuIcon","preventDefault","stopPropagation","onListKeydown","key","focus","onKeydown","selectionStart","includes","_ref2","originalSelectionIndex","prev","setSelectionRange","next","onAfterEnter","eager","calculateVisibleItems","onAfterLeave","item","arguments","undefined","keepMenu","disabled","index","findIndex","valueComparator","add","splice","onFocusin","setTimeout","onFocusout","oldVal","_ref3","window","requestAnimationFrame","newVal","hasList","isDirty","textFieldProps","filterProps","_createVNode","_mergeProps","$event","externalValue","class","style","placeholder","_createElementVNode","_Fragment","menuProps","itemColor","listProps","noDataText","_ref4","itemRef","itemProps","active","onClick","divider","raw","subheader","prepend","_ref5","isSelected","event","prependAvatar","prependIcon","onChipClose","slotProps","onMousedown","hasSlot","slotContent","_normalizeClass","_normalizeStyle","closableChips","closable","text","_createTextVNode","append-inner","_len","args","_key","menuIcon","fieldIconColor"],"sources":["../../../src/components/VCombobox/VCombobox.tsx"],"sourcesContent":["// Styles\nimport './VCombobox.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\nimport { VChip } from '@/components/VChip'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VDivider } from '@/components/VDivider'\nimport { VIcon } from '@/components/VIcon'\nimport { VList, VListItem, VListSubheader } from '@/components/VList'\nimport { VMenu } from '@/components/VMenu'\nimport { makeSelectProps } from '@/components/VSelect/VSelect'\nimport { VTextField } from '@/components/VTextField'\nimport { makeVTextFieldProps } from '@/components/VTextField/VTextField'\nimport { VVirtualScroll } from '@/components/VVirtualScroll'\n\n// Composables\nimport { useScrolling } from '../VSelect/useScrolling'\nimport { useTextColor } from '@/composables/color'\nimport { highlightResult, makeFilterProps, useFilter } from '@/composables/filter'\nimport { useForm } from '@/composables/form'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { transformItem, useItems } from '@/composables/list-items'\nimport { useLocale } from '@/composables/locale'\nimport { useMenuActivator } from '@/composables/menuActivator'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, mergeProps, nextTick, ref, shallowRef, watch } from 'vue'\nimport {\n checkPrintable,\n deepEqual,\n ensureValidVNode,\n escapeForRegex,\n genericComponent,\n IN_BROWSER,\n isComposingIgnoreKey,\n noop,\n omit,\n propsFactory,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { ListItem } from '@/composables/list-items'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\ntype Primitive = string | number | boolean | symbol\n\ntype Val <T, ReturnObject extends boolean> = string | ([T] extends [Primitive]\n ? T\n : (ReturnObject extends true ? T : any))\n\ntype Value <T, ReturnObject extends boolean, Multiple extends boolean> =\n Multiple extends true\n ? readonly Val<T, ReturnObject>[]\n : Val<T, ReturnObject> | null\n\nexport const makeVComboboxProps = propsFactory({\n alwaysFilter: Boolean,\n autoSelectFirst: {\n type: [Boolean, String] as PropType<boolean | 'exact'>,\n },\n clearOnSelect: {\n type: Boolean,\n default: true,\n },\n delimiters: Array as PropType<readonly string[]>,\n\n ...makeFilterProps({ filterKeys: ['title'] }),\n ...makeSelectProps({ hideNoData: true, returnObject: true }),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n role: 'combobox',\n }), ['validationValue', 'dirty', 'appendInnerIcon']),\n}, 'VCombobox')\n\ntype ItemType<T> = T extends readonly (infer U)[] ? U : never\n\nexport const VCombobox = genericComponent<new <\n T extends readonly any[],\n Item = ItemType<T>,\n ReturnObject extends boolean = true,\n Multiple extends boolean = false,\n V extends Value<Item, ReturnObject, Multiple> = Value<Item, ReturnObject, Multiple>\n>(\n props: {\n items?: T\n itemTitle?: SelectItemKey<ItemType<T>>\n itemValue?: SelectItemKey<ItemType<T>>\n itemProps?: SelectItemKey<ItemType<T>>\n returnObject?: ReturnObject\n multiple?: Multiple\n modelValue?: V | null\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: Omit<VInputSlots & VFieldSlots, 'default'> & {\n item: { item: ListItem<Item>, index: number, props: Record<string, unknown> }\n chip: { item: ListItem<Item>, index: number, props: Record<string, unknown> }\n selection: { item: ListItem<Item>, index: number }\n subheader: { props: Record<string, unknown>, index: number }\n divider: { props: Record<string, unknown>, index: number }\n 'prepend-item': never\n 'append-item': never\n 'no-data': never\n }\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VCombobox',\n\n props: makeVComboboxProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (value: any) => true,\n 'update:search': (value: string) => true,\n 'update:menu': (value: boolean) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref<VTextField>()\n const isFocused = shallowRef(false)\n const isPristine = shallowRef(true)\n const listHasFocus = shallowRef(false)\n const vMenuRef = ref<VMenu>()\n const vVirtualScrollRef = ref<VVirtualScroll>()\n const selectionIndex = shallowRef(-1)\n let cleared = false\n const { items, transformIn, transformOut } = useItems(props)\n const { textColorClasses, textColorStyles } = useTextColor(() => vTextFieldRef.value?.color)\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => transformIn(wrapInArray(v)),\n v => {\n const transformed = transformOut(v)\n return props.multiple ? transformed : (transformed[0] ?? null)\n }\n )\n const form = useForm(props)\n\n const hasChips = computed(() => !!(props.chips || slots.chip))\n const hasSelectionSlot = computed(() => hasChips.value || !!slots.selection)\n\n const _search = shallowRef(!props.multiple && !hasSelectionSlot.value ? model.value[0]?.title ?? '' : '')\n const _searchLock = shallowRef<string | null>(null)\n\n const search = computed<string>({\n get: () => {\n return _search.value\n },\n set: async (val: string | null) => {\n _search.value = val ?? ''\n if (val === null || (val === '' && !props.multiple && !hasSelectionSlot.value)) {\n model.value = []\n } else if (!props.multiple && !hasSelectionSlot.value) {\n model.value = [transformItem(props, val)]\n nextTick(() => vVirtualScrollRef.value?.scrollToIndex(0))\n }\n\n if (val && props.multiple && props.delimiters?.length) {\n const signsToMatch = props.delimiters.map(escapeForRegex).join('|')\n const values = val.split(new RegExp(`(?:${signsToMatch})+`))\n if (values.length > 1) {\n for (let v of values) {\n v = v.trim()\n if (v) {\n select(transformItem(props, v))\n await nextTick()\n }\n }\n _search.value = ''\n }\n }\n\n if (!val) selectionIndex.value = -1\n\n isPristine.value = !val\n },\n })\n\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function' ? props.counterValue(model.value)\n : typeof props.counterValue === 'number' ? props.counterValue\n : (props.multiple ? model.value.length : search.value.length)\n })\n\n const { filteredItems, getMatches } = useFilter(\n props,\n items,\n () => _searchLock.value ?? (props.alwaysFilter || !isPristine.value ? search.value : '')\n )\n\n const displayItems = computed(() => {\n if (props.hideSelected && _searchLock.value === null) {\n return filteredItems.value.filter(filteredItem => !model.value.some(s => s.value === filteredItem.value))\n }\n return filteredItems.value\n })\n\n const menuDisabled = computed(() => (\n (props.hideNoData && !displayItems.value.length) ||\n form.isReadonly.value || form.isDisabled.value\n ))\n const _menu = useProxiedModel(props, 'menu')\n const menu = computed({\n get: () => _menu.value,\n set: v => {\n if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return\n if (v && menuDisabled.value) return\n _menu.value = v\n },\n })\n\n const { menuId, ariaExpanded, ariaControls, ariaLabel } = useMenuActivator(props, menu)\n\n watch(_search, value => {\n if (cleared) {\n // wait for clear to finish, VTextField sets _search to null\n // then search computed triggers and updates _search to ''\n nextTick(() => (cleared = false))\n } else if (isFocused.value && !menu.value) {\n menu.value = true\n }\n\n emit('update:search', value)\n })\n\n watch(model, value => {\n if (!props.multiple && !hasSelectionSlot.value) {\n _search.value = value[0]?.title ?? ''\n }\n })\n\n const selectedValues = computed(() => model.value.map(selection => selection.value))\n\n const highlightFirst = computed(() => {\n const selectFirst = props.autoSelectFirst === true ||\n (props.autoSelectFirst === 'exact' && search.value === displayItems.value[0]?.title)\n return selectFirst &&\n displayItems.value.length > 0 &&\n !isPristine.value &&\n !listHasFocus.value\n })\n\n const listRef = ref<VList>()\n const listEvents = useScrolling(listRef, vTextFieldRef)\n function onClear (e: MouseEvent) {\n cleared = true\n nextTick(() => (cleared = false))\n\n if (props.openOnClear) {\n menu.value = true\n }\n }\n function onMousedownControl () {\n if (menuDisabled.value) return\n\n menu.value = true\n }\n function onMousedownMenuIcon (e: MouseEvent) {\n if (menuDisabled.value) return\n\n if (isFocused.value) {\n e.preventDefault()\n e.stopPropagation()\n }\n menu.value = !menu.value\n }\n function onListKeydown (e: KeyboardEvent) {\n if (checkPrintable(e) || e.key === 'Backspace') {\n vTextFieldRef.value?.focus()\n }\n }\n // eslint-disable-next-line complexity\n function onKeydown (e: KeyboardEvent) {\n if (isComposingIgnoreKey(e) || form.isReadonly.value) return\n\n const selectionStart = vTextFieldRef.value?.selectionStart\n const length = model.value.length\n\n if (['Enter', 'ArrowDown', 'ArrowUp'].includes(e.key)) {\n e.preventDefault()\n }\n\n if (['Enter', 'ArrowDown'].includes(e.key)) {\n menu.value = true\n }\n\n if (['Escape'].includes(e.key)) {\n menu.value = false\n }\n\n if (highlightFirst.value &&\n ['Enter', 'Tab'].includes(e.key) &&\n !model.value.some(({ value }) => value === displayItems.value[0].value)\n ) {\n select(filteredItems.value[0])\n }\n\n if (e.key === 'ArrowDown' && highlightFirst.value) {\n listRef.value?.focus('next')\n }\n\n if (e.key === 'Enter' && search.value) {\n select(transformItem(props, search.value), true, true)\n if (hasSelectionSlot.value) _search.value = ''\n }\n\n if (['Backspace', 'Delete'].includes(e.key)) {\n if (\n !props.multiple &&\n hasSelectionSlot.value &&\n model.value.length > 0 &&\n !search.value\n ) return select(model.value[0], false)\n\n if (~selectionIndex.value) {\n e.preventDefault()\n const originalSelectionIndex = selectionIndex.value\n select(model.value[selectionIndex.value], false)\n\n selectionIndex.value = originalSelectionIndex >= length - 1 ? (length - 2) : originalSelectionIndex\n } else if (e.key === 'Backspace' && !search.value) {\n selectionIndex.value = length - 1\n }\n\n return\n }\n\n if (!props.multiple) return\n\n if (e.key === 'ArrowLeft') {\n if (selectionIndex.value < 0 && selectionStart && selectionStart > 0) return\n\n const prev = selectionIndex.value > -1\n ? selectionIndex.value - 1\n : length - 1\n\n if (model.value[prev]) {\n selectionIndex.value = prev\n } else {\n selectionIndex.value = -1\n vTextFieldRef.value?.setSelectionRange(search.value.length, search.value.length)\n }\n } else if (e.key === 'ArrowRight') {\n if (selectionIndex.value < 0) return\n\n const next = selectionIndex.value + 1\n\n if (model.value[next]) {\n selectionIndex.value = next\n } else {\n selectionIndex.value = -1\n vTextFieldRef.value?.setSelectionRange(0, 0)\n }\n } else if (~selectionIndex.value && checkPrintable(e)) {\n selectionIndex.value = -1\n }\n }\n function onAfterEnter () {\n if (props.eager) {\n vVirtualScrollRef.value?.calculateVisibleItems()\n }\n }\n function onAfterLeave () {\n if (isFocused.value) {\n vTextFieldRef.value?.focus()\n }\n isPristine.value = true\n _searchLock.value = null\n }\n /** @param set - null means toggle */\n function select (item: ListItem | undefined, set: boolean | null = true, keepMenu = false) {\n if (!item || item.props.disabled) return\n\n if (props.multiple) {\n const index = model.value.findIndex(selection => (props.valueComparator || deepEqual)(selection.value, item.value))\n const add = set == null ? !~index : set\n\n if (~index) {\n const value = add ? [...model.value, item] : [...model.value]\n value.splice(index, 1)\n model.value = value\n } else if (add) {\n model.value = [...model.value, item]\n }\n\n if (props.clearOnSelect) {\n search.value = ''\n }\n } else {\n const add = set !== false\n model.value = add ? [item] : []\n if ((!isPristine.value || props.alwaysFilter) && _search.value) {\n _searchLock.value = _search.value\n }\n _search.value = add && !hasSelectionSlot.value ? item.title : ''\n\n // watch for search watcher to trigger\n nextTick(() => {\n menu.value = keepMenu\n isPristine.value = true\n })\n }\n }\n\n function onFocusin (e: FocusEvent) {\n isFocused.value = true\n setTimeout(() => {\n listHasFocus.value = true\n })\n }\n function onFocusout (e: FocusEvent) {\n listHasFocus.value = false\n }\n\n watch(isFocused, (val, oldVal) => {\n if (val || val === oldVal) return\n\n selectionIndex.value = -1\n menu.value = false\n\n if (search.value) {\n if (props.multiple) {\n select(transformItem(props, search.value))\n return\n }\n\n if (!hasSelectionSlot.value) return\n\n if (model.value.some(({ title }) => title === search.value)) {\n _search.value = ''\n } else {\n select(transformItem(props, search.value))\n }\n }\n })\n\n watch(menu, val => {\n if (!props.hideSelected && val && model.value.length && isPristine.value) {\n const index = displayItems.value.findIndex(\n item => model.value.some(s => (props.valueComparator || deepEqual)(s.value, item.value))\n )\n IN_BROWSER && window.requestAnimationFrame(() => {\n index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index)\n })\n }\n\n if (val) _searchLock.value = null\n })\n\n watch(items, (newVal, oldVal) => {\n if (menu.value) return\n\n if (isFocused.value && !oldVal.length && newVal.length) {\n menu.value = true\n }\n })\n\n useRender(() => {\n const hasList = !!(\n (!props.hideNoData || displayItems.value.length) ||\n slots['prepend-item'] ||\n slots['append-item'] ||\n slots['no-data']\n )\n const isDirty = model.value.length > 0\n const textFieldProps = VTextField.filterProps(props)\n\n return (\n <VTextField\n ref={ vTextFieldRef }\n { ...textFieldProps }\n v-model={ search.value }\n v-model:focused={ isFocused.value }\n validationValue={ model.externalValue }\n counterValue={ counterValue.value }\n dirty={ isDirty }\n class={[\n 'v-combobox',\n {\n 'v-combobox--active-menu': menu.value,\n 'v-combobox--chips': !!props.chips,\n 'v-combobox--selection-slot': !!hasSelectionSlot.value,\n 'v-combobox--selecting-index': selectionIndex.value > -1,\n [`v-combobox--${props.multiple ? 'multiple' : 'single'}`]: true,\n },\n props.class,\n ]}\n style={ props.style }\n readonly={ form.isReadonly.value }\n placeholder={ isDirty ? undefined : props.placeholder }\n onClick:clear={ onClear }\n onMousedown:control={ onMousedownControl }\n onKeydown={ onKeydown }\n aria-expanded={ ariaExpanded.value }\n aria-controls={ ariaControls.value }\n >\n {{\n ...slots,\n default: () => (\n <>\n <VMenu\n id={ menuId.value }\n ref={ vMenuRef }\n v-model={ menu.value }\n activator=\"parent\"\n contentClass=\"v-combobox__content\"\n disabled={ menuDisabled.value }\n eager={ props.eager }\n maxHeight={ 310 }\n openOnClick={ false }\n closeOnContentClick={ false }\n onAfterEnter={ onAfterEnter }\n onAfterLeave={ onAfterLeave }\n { ...props.menuProps }\n >\n { hasList && (\n <VList\n ref={ listRef }\n filterable\n selected={ selectedValues.value }\n selectStrategy={ props.multiple ? 'independent' : 'single-independent' }\n onMousedown={ (e: MouseEvent) => e.preventDefault() }\n selectable\n onKeydown={ onListKeydown }\n onFocusin={ onFocusin }\n onFocusout={ onFocusout }\n tabindex=\"-1\"\n aria-live=\"polite\"\n color={ props.itemColor ?? props.color }\n { ...listEvents }\n { ...props.listProps }\n >\n { slots['prepend-item']?.() }\n\n { !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? (\n <VListItem key=\"no-data\" title={ t(props.noDataText) } />\n ))}\n\n <VVirtualScroll ref={ vVirtualScrollRef } renderless items={ displayItems.value } itemKey=\"value\">\n { ({ item, index, itemRef }) => {\n const itemProps = mergeProps(item.props, {\n ref: itemRef,\n key: item.value,\n active: (highlightFirst.value && index === 0) ? true : undefined,\n onClick: () => select(item, null),\n })\n\n if (item.type === 'divider') {\n return slots.divider?.({ props: item.raw, index }) ?? (\n <VDivider { ...item.props } key={ `divider-${index}` } />\n )\n }\n\n if (item.type === 'subheader') {\n return slots.subheader?.({ props: item.raw, index }) ?? (\n <VListSubheader { ...item.props } key={ `subheader-${index}` } />\n )\n }\n\n return slots.item?.({\n item,\n index,\n props: itemProps,\n }) ?? (\n <VListItem { ...itemProps } role=\"option\">\n {{\n prepend: ({ isSelected }) => (\n <>\n { props.multiple && !props.hideSelected ? (\n <VCheckboxBtn\n key={ item.value }\n modelValue={ isSelected }\n ripple={ false }\n tabindex=\"-1\"\n onClick={ (event: MouseEvent) => event.preventDefault() }\n />\n ) : undefined }\n\n { item.props.prependAvatar && (\n <VAvatar image={ item.props.prependAvatar } />\n )}\n\n { item.props.prependIcon && (\n <VIcon icon={ item.props.prependIcon } />\n )}\n </>\n ),\n title: () => {\n return isPristine.value\n ? item.title\n : highlightResult('v-combobox', item.title, getMatches(item)?.title)\n },\n }}\n </VListItem>\n )\n }}\n </VVirtualScroll>\n\n { slots['append-item']?.() }\n </VList>\n )}\n </VMenu>\n\n { model.value.map((item, index) => {\n function onChipClose (e: Event) {\n e.stopPropagation()\n e.preventDefault()\n\n select(item, false)\n }\n\n const slotProps = {\n 'onClick:close': onChipClose,\n onKeydown (e: KeyboardEvent) {\n if (e.key !== 'Enter' && e.key !== ' ') return\n\n e.preventDefault()\n e.stopPropagation()\n\n onChipClose(e)\n },\n onMousedown (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n },\n modelValue: true,\n 'onUpdate:modelValue': undefined,\n }\n\n const hasSlot = hasChips.value ? !!slots.chip : !!slots.selection\n const slotContent = hasSlot\n ? ensureValidVNode(\n hasChips.value\n ? slots.chip!({ item, index, props: slotProps })\n : slots.selection!({ item, index })\n )\n : undefined\n\n if (hasSlot && !slotContent) return undefined\n\n return (\n <div\n key={ item.value }\n class={[\n 'v-combobox__selection',\n index === selectionIndex.value && [\n 'v-combobox__selection--selected',\n textColorClasses.value,\n ],\n ]}\n style={ index === selectionIndex.value ? textColorStyles.value : {} }\n >\n { hasChips.value ? (\n !slots.chip ? (\n <VChip\n key=\"chip\"\n closable={ props.closableChips }\n size=\"small\"\n text={ item.title }\n disabled={ item.props.disabled }\n { ...slotProps }\n />\n ) : (\n <VDefaultsProvider\n key=\"chip-defaults\"\n defaults={{\n VChip: {\n closable: props.closableChips,\n size: 'small',\n text: item.title,\n },\n }}\n >\n { slotContent }\n </VDefaultsProvider>\n )\n ) : (\n slotContent ?? (\n <span class=\"v-combobox__selection-text\">\n { item.title }\n { props.multiple && (index < model.value.length - 1) && (\n <span class=\"v-combobox__selection-comma\">,</span>\n )}\n </span>\n )\n )}\n </div>\n )\n })}\n </>\n ),\n 'append-inner': (...args) => (\n <>\n { slots['append-inner']?.(...args) }\n { (!props.hideNoData || props.items.length) && props.menuIcon ? (\n <VIcon\n class=\"v-combobox__menu-icon\"\n color={ vTextFieldRef.value?.fieldIconColor }\n icon={ props.menuIcon }\n onMousedown={ onMousedownMenuIcon }\n onClick={ noop }\n aria-label={ ariaLabel.value }\n title={ ariaLabel.value }\n tabindex=\"-1\"\n />\n ) : undefined }\n </>\n ),\n }}\n </VTextField>\n )\n })\n\n return forwardRefs({\n isFocused,\n isPristine,\n menu,\n search,\n selectionIndex,\n filteredItems,\n select,\n }, vTextFieldRef)\n },\n})\n\nexport type VCombobox = InstanceType<typeof VCombobox>\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VCombobox.js","names":["VAvatar","VCheckboxBtn","VChip","VDefaultsProvider","VDivider","VIcon","VList","VListItem","VListSubheader","VMenu","makeSelectProps","VTextField","makeVTextFieldProps","VVirtualScroll","useScrolling","useTextColor","highlightResult","makeFilterProps","useFilter","useForm","forwardRefs","transformItem","useItems","useLocale","useMenuActivator","useProxiedModel","computed","mergeProps","nextTick","ref","shallowRef","watch","checkPrintable","deepEqual","ensureValidVNode","escapeForRegex","genericComponent","IN_BROWSER","isComposingIgnoreKey","noop","omit","propsFactory","useRender","wrapInArray","makeVComboboxProps","alwaysFilter","Boolean","autoSelectFirst","type","String","clearOnSelect","default","delimiters","Array","filterKeys","hideNoData","returnObject","modelValue","role","VCombobox","name","props","emits","focused","value","setup","_ref","emit","slots","t","vTextFieldRef","isFocused","isPristine","listHasFocus","vMenuRef","vVirtualScrollRef","selectionIndex","cleared","items","transformIn","transformOut","textColorClasses","textColorStyles","color","model","v","transformed","multiple","form","hasChips","chips","chip","hasSelectionSlot","selection","_search","title","_searchLock","search","get","set","val","scrollToIndex","length","values","splitByDelimiters","selectMultiple","counterValue","filteredItems","getMatches","displayItems","hideSelected","filter","filteredItem","some","s","menuDisabled","isReadonly","isDisabled","_menu","menu","ΨopenChildren","size","menuId","ariaExpanded","ariaControls","ariaLabel","selectedValues","map","highlightFirst","selectFirst","listRef","listEvents","onClear","e","openOnClear","onMousedownControl","onMousedownMenuIcon","preventDefault","stopPropagation","onListKeydown","key","focus","onKeydown","selectionStart","includes","_ref2","select","originalSelectionIndex","prev","setSelectionRange","next","onPaste","clipboardText","clipboardData","getData","onAfterEnter","eager","calculateVisibleItems","onAfterLeave","item","arguments","undefined","keepMenu","disabled","index","findIndex","valueComparator","add","splice","effectiveDelimiters","signsToMatch","join","split","RegExp","trim","onFocusin","setTimeout","onFocusout","oldVal","_ref3","window","requestAnimationFrame","newVal","hasList","isDirty","textFieldProps","filterProps","_createVNode","_mergeProps","$event","externalValue","class","style","placeholder","_createElementVNode","_Fragment","menuProps","itemColor","listProps","noDataText","_ref4","itemRef","itemProps","active","onClick","divider","raw","subheader","prepend","_ref5","isSelected","event","prependAvatar","prependIcon","onChipClose","slotProps","onMousedown","hasSlot","slotContent","_normalizeClass","_normalizeStyle","closableChips","closable","text","_createTextVNode","append-inner","_len","args","_key","menuIcon","fieldIconColor"],"sources":["../../../src/components/VCombobox/VCombobox.tsx"],"sourcesContent":["// Styles\nimport './VCombobox.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\nimport { VChip } from '@/components/VChip'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VDivider } from '@/components/VDivider'\nimport { VIcon } from '@/components/VIcon'\nimport { VList, VListItem, VListSubheader } from '@/components/VList'\nimport { VMenu } from '@/components/VMenu'\nimport { makeSelectProps } from '@/components/VSelect/VSelect'\nimport { VTextField } from '@/components/VTextField'\nimport { makeVTextFieldProps } from '@/components/VTextField/VTextField'\nimport { VVirtualScroll } from '@/components/VVirtualScroll'\n\n// Composables\nimport { useScrolling } from '../VSelect/useScrolling'\nimport { useTextColor } from '@/composables/color'\nimport { highlightResult, makeFilterProps, useFilter } from '@/composables/filter'\nimport { useForm } from '@/composables/form'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { transformItem, useItems } from '@/composables/list-items'\nimport { useLocale } from '@/composables/locale'\nimport { useMenuActivator } from '@/composables/menuActivator'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, mergeProps, nextTick, ref, shallowRef, watch } from 'vue'\nimport {\n checkPrintable,\n deepEqual,\n ensureValidVNode,\n escapeForRegex,\n genericComponent,\n IN_BROWSER,\n isComposingIgnoreKey,\n noop,\n omit,\n propsFactory,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { ListItem } from '@/composables/list-items'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\ntype Primitive = string | number | boolean | symbol\n\ntype Val <T, ReturnObject extends boolean> = string | ([T] extends [Primitive]\n ? T\n : (ReturnObject extends true ? T : any))\n\ntype Value <T, ReturnObject extends boolean, Multiple extends boolean> =\n Multiple extends true\n ? readonly Val<T, ReturnObject>[]\n : Val<T, ReturnObject> | null\n\nexport const makeVComboboxProps = propsFactory({\n alwaysFilter: Boolean,\n autoSelectFirst: {\n type: [Boolean, String] as PropType<boolean | 'exact'>,\n },\n clearOnSelect: {\n type: Boolean,\n default: true,\n },\n delimiters: Array as PropType<readonly string[]>,\n\n ...makeFilterProps({ filterKeys: ['title'] }),\n ...makeSelectProps({ hideNoData: true, returnObject: true }),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n role: 'combobox',\n }), ['validationValue', 'dirty', 'appendInnerIcon']),\n}, 'VCombobox')\n\ntype ItemType<T> = T extends readonly (infer U)[] ? U : never\n\nexport const VCombobox = genericComponent<new <\n T extends readonly any[],\n Item = ItemType<T>,\n ReturnObject extends boolean = true,\n Multiple extends boolean = false,\n V extends Value<Item, ReturnObject, Multiple> = Value<Item, ReturnObject, Multiple>\n>(\n props: {\n items?: T\n itemTitle?: SelectItemKey<ItemType<T>>\n itemValue?: SelectItemKey<ItemType<T>>\n itemProps?: SelectItemKey<ItemType<T>>\n returnObject?: ReturnObject\n multiple?: Multiple\n modelValue?: V | null\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: Omit<VInputSlots & VFieldSlots, 'default'> & {\n item: { item: ListItem<Item>, index: number, props: Record<string, unknown> }\n chip: { item: ListItem<Item>, index: number, props: Record<string, unknown> }\n selection: { item: ListItem<Item>, index: number }\n subheader: { props: Record<string, unknown>, index: number }\n divider: { props: Record<string, unknown>, index: number }\n 'prepend-item': never\n 'append-item': never\n 'no-data': never\n }\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VCombobox',\n\n props: makeVComboboxProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (value: any) => true,\n 'update:search': (value: string) => true,\n 'update:menu': (value: boolean) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref<VTextField>()\n const isFocused = shallowRef(false)\n const isPristine = shallowRef(true)\n const listHasFocus = shallowRef(false)\n const vMenuRef = ref<VMenu>()\n const vVirtualScrollRef = ref<VVirtualScroll>()\n const selectionIndex = shallowRef(-1)\n let cleared = false\n const { items, transformIn, transformOut } = useItems(props)\n const { textColorClasses, textColorStyles } = useTextColor(() => vTextFieldRef.value?.color)\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => transformIn(wrapInArray(v)),\n v => {\n const transformed = transformOut(v)\n return props.multiple ? transformed : (transformed[0] ?? null)\n }\n )\n const form = useForm(props)\n\n const hasChips = computed(() => !!(props.chips || slots.chip))\n const hasSelectionSlot = computed(() => hasChips.value || !!slots.selection)\n\n const _search = shallowRef(!props.multiple && !hasSelectionSlot.value ? model.value[0]?.title ?? '' : '')\n const _searchLock = shallowRef<string | null>(null)\n\n const search = computed<string>({\n get: () => {\n return _search.value\n },\n set: async (val: string | null) => {\n _search.value = val ?? ''\n if (val === null || (val === '' && !props.multiple && !hasSelectionSlot.value)) {\n model.value = []\n } else if (!props.multiple && !hasSelectionSlot.value) {\n model.value = [transformItem(props, val)]\n nextTick(() => vVirtualScrollRef.value?.scrollToIndex(0))\n }\n\n if (val && props.multiple && props.delimiters?.length) {\n const values = splitByDelimiters(val)\n if (values.length > 1) {\n selectMultiple(values)\n _search.value = ''\n }\n }\n\n if (!val) selectionIndex.value = -1\n\n isPristine.value = !val\n },\n })\n\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function' ? props.counterValue(model.value)\n : typeof props.counterValue === 'number' ? props.counterValue\n : (props.multiple ? model.value.length : search.value.length)\n })\n\n const { filteredItems, getMatches } = useFilter(\n props,\n items,\n () => _searchLock.value ?? (props.alwaysFilter || !isPristine.value ? search.value : '')\n )\n\n const displayItems = computed(() => {\n if (props.hideSelected && _searchLock.value === null) {\n return filteredItems.value.filter(filteredItem => !model.value.some(s => s.value === filteredItem.value))\n }\n return filteredItems.value\n })\n\n const menuDisabled = computed(() => (\n (props.hideNoData && !displayItems.value.length) ||\n form.isReadonly.value || form.isDisabled.value\n ))\n const _menu = useProxiedModel(props, 'menu')\n const menu = computed({\n get: () => _menu.value,\n set: v => {\n if (_menu.value && !v && vMenuRef.value?.ΨopenChildren.size) return\n if (v && menuDisabled.value) return\n _menu.value = v\n },\n })\n\n const { menuId, ariaExpanded, ariaControls, ariaLabel } = useMenuActivator(props, menu)\n\n watch(_search, value => {\n if (cleared) {\n // wait for clear to finish, VTextField sets _search to null\n // then search computed triggers and updates _search to ''\n nextTick(() => (cleared = false))\n } else if (isFocused.value && !menu.value) {\n menu.value = true\n }\n\n emit('update:search', value)\n })\n\n watch(model, value => {\n if (!props.multiple && !hasSelectionSlot.value) {\n _search.value = value[0]?.title ?? ''\n }\n })\n\n const selectedValues = computed(() => model.value.map(selection => selection.value))\n\n const highlightFirst = computed(() => {\n const selectFirst = props.autoSelectFirst === true ||\n (props.autoSelectFirst === 'exact' && search.value === displayItems.value[0]?.title)\n return selectFirst &&\n displayItems.value.length > 0 &&\n !isPristine.value &&\n !listHasFocus.value\n })\n\n const listRef = ref<VList>()\n const listEvents = useScrolling(listRef, vTextFieldRef)\n function onClear (e: MouseEvent) {\n cleared = true\n nextTick(() => (cleared = false))\n\n if (props.openOnClear) {\n menu.value = true\n }\n }\n function onMousedownControl () {\n if (menuDisabled.value) return\n\n menu.value = true\n }\n function onMousedownMenuIcon (e: MouseEvent) {\n if (menuDisabled.value) return\n\n if (isFocused.value) {\n e.preventDefault()\n e.stopPropagation()\n }\n menu.value = !menu.value\n }\n function onListKeydown (e: KeyboardEvent) {\n if (checkPrintable(e) || e.key === 'Backspace') {\n vTextFieldRef.value?.focus()\n }\n }\n // eslint-disable-next-line complexity\n function onKeydown (e: KeyboardEvent) {\n if (isComposingIgnoreKey(e) || form.isReadonly.value) return\n\n const selectionStart = vTextFieldRef.value?.selectionStart\n const length = model.value.length\n\n if (['Enter', 'ArrowDown', 'ArrowUp'].includes(e.key)) {\n e.preventDefault()\n }\n\n if (['Enter', 'ArrowDown'].includes(e.key)) {\n menu.value = true\n }\n\n if (['Escape'].includes(e.key)) {\n menu.value = false\n }\n\n if (highlightFirst.value &&\n ['Enter', 'Tab'].includes(e.key) &&\n !model.value.some(({ value }) => value === displayItems.value[0].value)\n ) {\n select(filteredItems.value[0])\n }\n\n if (e.key === 'ArrowDown' && highlightFirst.value) {\n listRef.value?.focus('next')\n }\n\n if (e.key === 'Enter' && search.value) {\n select(transformItem(props, search.value), true, true)\n if (hasSelectionSlot.value) _search.value = ''\n }\n\n if (['Backspace', 'Delete'].includes(e.key)) {\n if (\n !props.multiple &&\n hasSelectionSlot.value &&\n model.value.length > 0 &&\n !search.value\n ) return select(model.value[0], false)\n\n if (~selectionIndex.value) {\n e.preventDefault()\n const originalSelectionIndex = selectionIndex.value\n select(model.value[selectionIndex.value], false)\n\n selectionIndex.value = originalSelectionIndex >= length - 1 ? (length - 2) : originalSelectionIndex\n } else if (e.key === 'Backspace' && !search.value) {\n selectionIndex.value = length - 1\n }\n\n return\n }\n\n if (!props.multiple) return\n\n if (e.key === 'ArrowLeft') {\n if (selectionIndex.value < 0 && selectionStart && selectionStart > 0) return\n\n const prev = selectionIndex.value > -1\n ? selectionIndex.value - 1\n : length - 1\n\n if (model.value[prev]) {\n selectionIndex.value = prev\n } else {\n selectionIndex.value = -1\n vTextFieldRef.value?.setSelectionRange(search.value.length, search.value.length)\n }\n } else if (e.key === 'ArrowRight') {\n if (selectionIndex.value < 0) return\n\n const next = selectionIndex.value + 1\n\n if (model.value[next]) {\n selectionIndex.value = next\n } else {\n selectionIndex.value = -1\n vTextFieldRef.value?.setSelectionRange(0, 0)\n }\n } else if (~selectionIndex.value && checkPrintable(e)) {\n selectionIndex.value = -1\n }\n }\n function onPaste (e: ClipboardEvent) {\n const clipboardText = e?.clipboardData?.getData('Text') ?? ''\n const values = splitByDelimiters(clipboardText)\n\n if (values.length > 1 && props.multiple) {\n e.preventDefault()\n selectMultiple(values)\n }\n }\n function onAfterEnter () {\n if (props.eager) {\n vVirtualScrollRef.value?.calculateVisibleItems()\n }\n }\n function onAfterLeave () {\n if (isFocused.value) {\n vTextFieldRef.value?.focus()\n }\n isPristine.value = true\n _searchLock.value = null\n }\n /** @param set - null means toggle */\n function select (item: ListItem | undefined, set: boolean | null = true, keepMenu = false) {\n if (!item || item.props.disabled) return\n\n if (props.multiple) {\n const index = model.value.findIndex(selection => (props.valueComparator || deepEqual)(selection.value, item.value))\n const add = set == null ? !~index : set\n\n if (~index) {\n const value = add ? [...model.value, item] : [...model.value]\n value.splice(index, 1)\n model.value = value\n } else if (add) {\n model.value = [...model.value, item]\n }\n\n if (props.clearOnSelect) {\n search.value = ''\n }\n } else {\n const add = set !== false\n model.value = add ? [item] : []\n if ((!isPristine.value || props.alwaysFilter) && _search.value) {\n _searchLock.value = _search.value\n }\n _search.value = add && !hasSelectionSlot.value ? item.title : ''\n\n // watch for search watcher to trigger\n nextTick(() => {\n menu.value = keepMenu\n isPristine.value = true\n })\n }\n }\n function splitByDelimiters (val: string) {\n const effectiveDelimiters = ['\\n', ...props.delimiters ?? []]\n const signsToMatch = effectiveDelimiters.map(escapeForRegex).join('|')\n return val.split(new RegExp(`(?:${signsToMatch})+`))\n }\n async function selectMultiple (values: string[]) {\n for (let value of values) {\n value = value.trim()\n if (value) {\n select(transformItem(props, value))\n await nextTick()\n }\n }\n }\n function onFocusin (e: FocusEvent) {\n isFocused.value = true\n setTimeout(() => {\n listHasFocus.value = true\n })\n }\n function onFocusout (e: FocusEvent) {\n listHasFocus.value = false\n }\n\n watch(isFocused, (val, oldVal) => {\n if (val || val === oldVal) return\n\n selectionIndex.value = -1\n menu.value = false\n\n if (search.value) {\n if (props.multiple) {\n select(transformItem(props, search.value))\n return\n }\n\n if (!hasSelectionSlot.value) return\n\n if (model.value.some(({ title }) => title === search.value)) {\n _search.value = ''\n } else {\n select(transformItem(props, search.value))\n }\n }\n })\n\n watch(menu, val => {\n if (!props.hideSelected && val && model.value.length && isPristine.value) {\n const index = displayItems.value.findIndex(\n item => model.value.some(s => (props.valueComparator || deepEqual)(s.value, item.value))\n )\n IN_BROWSER && window.requestAnimationFrame(() => {\n index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index)\n })\n }\n\n if (val) _searchLock.value = null\n })\n\n watch(items, (newVal, oldVal) => {\n if (menu.value) return\n\n if (isFocused.value && !oldVal.length && newVal.length) {\n menu.value = true\n }\n })\n\n useRender(() => {\n const hasList = !!(\n (!props.hideNoData || displayItems.value.length) ||\n slots['prepend-item'] ||\n slots['append-item'] ||\n slots['no-data']\n )\n const isDirty = model.value.length > 0\n const textFieldProps = VTextField.filterProps(props)\n\n return (\n <VTextField\n ref={ vTextFieldRef }\n { ...textFieldProps }\n v-model={ search.value }\n v-model:focused={ isFocused.value }\n validationValue={ model.externalValue }\n counterValue={ counterValue.value }\n dirty={ isDirty }\n class={[\n 'v-combobox',\n {\n 'v-combobox--active-menu': menu.value,\n 'v-combobox--chips': !!props.chips,\n 'v-combobox--selection-slot': !!hasSelectionSlot.value,\n 'v-combobox--selecting-index': selectionIndex.value > -1,\n [`v-combobox--${props.multiple ? 'multiple' : 'single'}`]: true,\n },\n props.class,\n ]}\n style={ props.style }\n readonly={ form.isReadonly.value }\n placeholder={ isDirty ? undefined : props.placeholder }\n onClick:clear={ onClear }\n onMousedown:control={ onMousedownControl }\n onKeydown={ onKeydown }\n onPaste={ onPaste }\n aria-expanded={ ariaExpanded.value }\n aria-controls={ ariaControls.value }\n >\n {{\n ...slots,\n default: () => (\n <>\n <VMenu\n id={ menuId.value }\n ref={ vMenuRef }\n v-model={ menu.value }\n activator=\"parent\"\n contentClass=\"v-combobox__content\"\n disabled={ menuDisabled.value }\n eager={ props.eager }\n maxHeight={ 310 }\n openOnClick={ false }\n closeOnContentClick={ false }\n onAfterEnter={ onAfterEnter }\n onAfterLeave={ onAfterLeave }\n { ...props.menuProps }\n >\n { hasList && (\n <VList\n ref={ listRef }\n filterable\n selected={ selectedValues.value }\n selectStrategy={ props.multiple ? 'independent' : 'single-independent' }\n onMousedown={ (e: MouseEvent) => e.preventDefault() }\n selectable\n onKeydown={ onListKeydown }\n onFocusin={ onFocusin }\n onFocusout={ onFocusout }\n tabindex=\"-1\"\n aria-live=\"polite\"\n color={ props.itemColor ?? props.color }\n { ...listEvents }\n { ...props.listProps }\n >\n { slots['prepend-item']?.() }\n\n { !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? (\n <VListItem key=\"no-data\" title={ t(props.noDataText) } />\n ))}\n\n <VVirtualScroll ref={ vVirtualScrollRef } renderless items={ displayItems.value } itemKey=\"value\">\n { ({ item, index, itemRef }) => {\n const itemProps = mergeProps(item.props, {\n ref: itemRef,\n key: item.value,\n active: (highlightFirst.value && index === 0) ? true : undefined,\n onClick: () => select(item, null),\n })\n\n if (item.type === 'divider') {\n return slots.divider?.({ props: item.raw, index }) ?? (\n <VDivider { ...item.props } key={ `divider-${index}` } />\n )\n }\n\n if (item.type === 'subheader') {\n return slots.subheader?.({ props: item.raw, index }) ?? (\n <VListSubheader { ...item.props } key={ `subheader-${index}` } />\n )\n }\n\n return slots.item?.({\n item,\n index,\n props: itemProps,\n }) ?? (\n <VListItem { ...itemProps } role=\"option\">\n {{\n prepend: ({ isSelected }) => (\n <>\n { props.multiple && !props.hideSelected ? (\n <VCheckboxBtn\n key={ item.value }\n modelValue={ isSelected }\n ripple={ false }\n tabindex=\"-1\"\n onClick={ (event: MouseEvent) => event.preventDefault() }\n />\n ) : undefined }\n\n { item.props.prependAvatar && (\n <VAvatar image={ item.props.prependAvatar } />\n )}\n\n { item.props.prependIcon && (\n <VIcon icon={ item.props.prependIcon } />\n )}\n </>\n ),\n title: () => {\n return isPristine.value\n ? item.title\n : highlightResult('v-combobox', item.title, getMatches(item)?.title)\n },\n }}\n </VListItem>\n )\n }}\n </VVirtualScroll>\n\n { slots['append-item']?.() }\n </VList>\n )}\n </VMenu>\n\n { model.value.map((item, index) => {\n function onChipClose (e: Event) {\n e.stopPropagation()\n e.preventDefault()\n\n select(item, false)\n }\n\n const slotProps = {\n 'onClick:close': onChipClose,\n onKeydown (e: KeyboardEvent) {\n if (e.key !== 'Enter' && e.key !== ' ') return\n\n e.preventDefault()\n e.stopPropagation()\n\n onChipClose(e)\n },\n onMousedown (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n },\n modelValue: true,\n 'onUpdate:modelValue': undefined,\n }\n\n const hasSlot = hasChips.value ? !!slots.chip : !!slots.selection\n const slotContent = hasSlot\n ? ensureValidVNode(\n hasChips.value\n ? slots.chip!({ item, index, props: slotProps })\n : slots.selection!({ item, index })\n )\n : undefined\n\n if (hasSlot && !slotContent) return undefined\n\n return (\n <div\n key={ item.value }\n class={[\n 'v-combobox__selection',\n index === selectionIndex.value && [\n 'v-combobox__selection--selected',\n textColorClasses.value,\n ],\n ]}\n style={ index === selectionIndex.value ? textColorStyles.value : {} }\n >\n { hasChips.value ? (\n !slots.chip ? (\n <VChip\n key=\"chip\"\n closable={ props.closableChips }\n size=\"small\"\n text={ item.title }\n disabled={ item.props.disabled }\n { ...slotProps }\n />\n ) : (\n <VDefaultsProvider\n key=\"chip-defaults\"\n defaults={{\n VChip: {\n closable: props.closableChips,\n size: 'small',\n text: item.title,\n },\n }}\n >\n { slotContent }\n </VDefaultsProvider>\n )\n ) : (\n slotContent ?? (\n <span class=\"v-combobox__selection-text\">\n { item.title }\n { props.multiple && (index < model.value.length - 1) && (\n <span class=\"v-combobox__selection-comma\">,</span>\n )}\n </span>\n )\n )}\n </div>\n )\n })}\n </>\n ),\n 'append-inner': (...args) => (\n <>\n { slots['append-inner']?.(...args) }\n { (!props.hideNoData || props.items.length) && props.menuIcon ? (\n <VIcon\n class=\"v-combobox__menu-icon\"\n color={ vTextFieldRef.value?.fieldIconColor }\n icon={ props.menuIcon }\n onMousedown={ onMousedownMenuIcon }\n onClick={ noop }\n aria-label={ ariaLabel.value }\n title={ ariaLabel.value }\n tabindex=\"-1\"\n />\n ) : undefined }\n </>\n ),\n }}\n </VTextField>\n )\n })\n\n return forwardRefs({\n isFocused,\n isPristine,\n menu,\n search,\n selectionIndex,\n filteredItems,\n select,\n }, vTextFieldRef)\n },\n})\n\nexport type VCombobox = InstanceType<typeof VCombobox>\n"],"mappings":"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","ignoreList":[]}
@@ -16,7 +16,7 @@ export const createVuetify = function () {
16
16
  ...options
17
17
  });
18
18
  };
19
- export const version = "3.10.9-dev.2025-11-08";
19
+ export const version = "3.10.9-dev.2025-11-09";
20
20
  createVuetify.version = version;
21
21
  export { blueprints, components, directives };
22
22
  export * from "./composables/index.js";
@@ -2741,49 +2741,41 @@ declare module 'vue' {
2741
2741
  $children?: VNodeChild
2742
2742
  }
2743
2743
  export interface GlobalComponents {
2744
- VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
2745
- VApp: typeof import('vuetify/components')['VApp']
2746
2744
  VAppBar: typeof import('vuetify/components')['VAppBar']
2747
2745
  VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
2748
2746
  VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
2749
- VBadge: typeof import('vuetify/components')['VBadge']
2747
+ VAvatar: typeof import('vuetify/components')['VAvatar']
2748
+ VApp: typeof import('vuetify/components')['VApp']
2750
2749
  VAlert: typeof import('vuetify/components')['VAlert']
2751
2750
  VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
2752
- VAvatar: typeof import('vuetify/components')['VAvatar']
2753
- VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
2754
2751
  VBanner: typeof import('vuetify/components')['VBanner']
2755
2752
  VBannerActions: typeof import('vuetify/components')['VBannerActions']
2756
2753
  VBannerText: typeof import('vuetify/components')['VBannerText']
2757
- VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
2754
+ VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
2755
+ VBadge: typeof import('vuetify/components')['VBadge']
2756
+ VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
2758
2757
  VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
2759
2758
  VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
2760
2759
  VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
2760
+ VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
2761
2761
  VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
2762
+ VBtn: typeof import('vuetify/components')['VBtn']
2763
+ VCarousel: typeof import('vuetify/components')['VCarousel']
2764
+ VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
2762
2765
  VCard: typeof import('vuetify/components')['VCard']
2763
2766
  VCardActions: typeof import('vuetify/components')['VCardActions']
2764
2767
  VCardItem: typeof import('vuetify/components')['VCardItem']
2765
2768
  VCardSubtitle: typeof import('vuetify/components')['VCardSubtitle']
2766
2769
  VCardText: typeof import('vuetify/components')['VCardText']
2767
2770
  VCardTitle: typeof import('vuetify/components')['VCardTitle']
2768
- VBtn: typeof import('vuetify/components')['VBtn']
2769
- VChip: typeof import('vuetify/components')['VChip']
2770
- VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
2771
+ VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
2772
+ VColorPicker: typeof import('vuetify/components')['VColorPicker']
2771
2773
  VCheckbox: typeof import('vuetify/components')['VCheckbox']
2772
2774
  VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
2773
- VCarousel: typeof import('vuetify/components')['VCarousel']
2774
- VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
2775
- VColorPicker: typeof import('vuetify/components')['VColorPicker']
2776
- VCode: typeof import('vuetify/components')['VCode']
2777
2775
  VChipGroup: typeof import('vuetify/components')['VChipGroup']
2778
- VCombobox: typeof import('vuetify/components')['VCombobox']
2779
- VFab: typeof import('vuetify/components')['VFab']
2776
+ VChip: typeof import('vuetify/components')['VChip']
2780
2777
  VCounter: typeof import('vuetify/components')['VCounter']
2781
- VDatePicker: typeof import('vuetify/components')['VDatePicker']
2782
- VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
2783
- VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
2784
- VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
2785
- VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
2786
- VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
2778
+ VCode: typeof import('vuetify/components')['VCode']
2787
2779
  VDataTable: typeof import('vuetify/components')['VDataTable']
2788
2780
  VDataTableHeaders: typeof import('vuetify/components')['VDataTableHeaders']
2789
2781
  VDataTableFooter: typeof import('vuetify/components')['VDataTableFooter']
@@ -2791,30 +2783,38 @@ declare module 'vue' {
2791
2783
  VDataTableRow: typeof import('vuetify/components')['VDataTableRow']
2792
2784
  VDataTableVirtual: typeof import('vuetify/components')['VDataTableVirtual']
2793
2785
  VDataTableServer: typeof import('vuetify/components')['VDataTableServer']
2794
- VEmptyState: typeof import('vuetify/components')['VEmptyState']
2786
+ VCombobox: typeof import('vuetify/components')['VCombobox']
2795
2787
  VDivider: typeof import('vuetify/components')['VDivider']
2796
- VField: typeof import('vuetify/components')['VField']
2797
- VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
2798
- VDialog: typeof import('vuetify/components')['VDialog']
2799
- VFileInput: typeof import('vuetify/components')['VFileInput']
2788
+ VEmptyState: typeof import('vuetify/components')['VEmptyState']
2800
2789
  VExpansionPanels: typeof import('vuetify/components')['VExpansionPanels']
2801
2790
  VExpansionPanel: typeof import('vuetify/components')['VExpansionPanel']
2802
2791
  VExpansionPanelText: typeof import('vuetify/components')['VExpansionPanelText']
2803
2792
  VExpansionPanelTitle: typeof import('vuetify/components')['VExpansionPanelTitle']
2793
+ VDatePicker: typeof import('vuetify/components')['VDatePicker']
2794
+ VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
2795
+ VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
2796
+ VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
2797
+ VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
2798
+ VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
2799
+ VDialog: typeof import('vuetify/components')['VDialog']
2800
+ VFab: typeof import('vuetify/components')['VFab']
2801
+ VField: typeof import('vuetify/components')['VField']
2802
+ VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
2804
2803
  VFooter: typeof import('vuetify/components')['VFooter']
2805
- VImg: typeof import('vuetify/components')['VImg']
2806
- VItemGroup: typeof import('vuetify/components')['VItemGroup']
2807
- VItem: typeof import('vuetify/components')['VItem']
2808
- VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
2809
2804
  VIcon: typeof import('vuetify/components')['VIcon']
2810
2805
  VComponentIcon: typeof import('vuetify/components')['VComponentIcon']
2811
2806
  VSvgIcon: typeof import('vuetify/components')['VSvgIcon']
2812
2807
  VLigatureIcon: typeof import('vuetify/components')['VLigatureIcon']
2813
2808
  VClassIcon: typeof import('vuetify/components')['VClassIcon']
2809
+ VFileInput: typeof import('vuetify/components')['VFileInput']
2810
+ VImg: typeof import('vuetify/components')['VImg']
2811
+ VItemGroup: typeof import('vuetify/components')['VItemGroup']
2812
+ VItem: typeof import('vuetify/components')['VItem']
2814
2813
  VInput: typeof import('vuetify/components')['VInput']
2815
- VLabel: typeof import('vuetify/components')['VLabel']
2816
- VMain: typeof import('vuetify/components')['VMain']
2814
+ VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
2817
2815
  VKbd: typeof import('vuetify/components')['VKbd']
2816
+ VLabel: typeof import('vuetify/components')['VLabel']
2817
+ VMenu: typeof import('vuetify/components')['VMenu']
2818
2818
  VList: typeof import('vuetify/components')['VList']
2819
2819
  VListGroup: typeof import('vuetify/components')['VListGroup']
2820
2820
  VListImg: typeof import('vuetify/components')['VListImg']
@@ -2824,78 +2824,76 @@ declare module 'vue' {
2824
2824
  VListItemSubtitle: typeof import('vuetify/components')['VListItemSubtitle']
2825
2825
  VListItemTitle: typeof import('vuetify/components')['VListItemTitle']
2826
2826
  VListSubheader: typeof import('vuetify/components')['VListSubheader']
2827
- VMessages: typeof import('vuetify/components')['VMessages']
2828
- VMenu: typeof import('vuetify/components')['VMenu']
2827
+ VMain: typeof import('vuetify/components')['VMain']
2829
2828
  VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
2830
- VOtpInput: typeof import('vuetify/components')['VOtpInput']
2829
+ VMessages: typeof import('vuetify/components')['VMessages']
2831
2830
  VNumberInput: typeof import('vuetify/components')['VNumberInput']
2831
+ VOtpInput: typeof import('vuetify/components')['VOtpInput']
2832
2832
  VPagination: typeof import('vuetify/components')['VPagination']
2833
- VProgressCircular: typeof import('vuetify/components')['VProgressCircular']
2834
2833
  VOverlay: typeof import('vuetify/components')['VOverlay']
2835
- VProgressLinear: typeof import('vuetify/components')['VProgressLinear']
2836
2834
  VRating: typeof import('vuetify/components')['VRating']
2835
+ VProgressCircular: typeof import('vuetify/components')['VProgressCircular']
2836
+ VProgressLinear: typeof import('vuetify/components')['VProgressLinear']
2837
2837
  VRadioGroup: typeof import('vuetify/components')['VRadioGroup']
2838
- VSheet: typeof import('vuetify/components')['VSheet']
2839
- VSelectionControl: typeof import('vuetify/components')['VSelectionControl']
2840
- VSelect: typeof import('vuetify/components')['VSelect']
2841
2838
  VSelectionControlGroup: typeof import('vuetify/components')['VSelectionControlGroup']
2842
- VSlider: typeof import('vuetify/components')['VSlider']
2843
- VSlideGroup: typeof import('vuetify/components')['VSlideGroup']
2844
- VSlideGroupItem: typeof import('vuetify/components')['VSlideGroupItem']
2839
+ VSelect: typeof import('vuetify/components')['VSelect']
2845
2840
  VSkeletonLoader: typeof import('vuetify/components')['VSkeletonLoader']
2841
+ VSelectionControl: typeof import('vuetify/components')['VSelectionControl']
2842
+ VSlider: typeof import('vuetify/components')['VSlider']
2843
+ VSystemBar: typeof import('vuetify/components')['VSystemBar']
2846
2844
  VSnackbar: typeof import('vuetify/components')['VSnackbar']
2847
- VTab: typeof import('vuetify/components')['VTab']
2848
- VTabs: typeof import('vuetify/components')['VTabs']
2849
- VTabsWindow: typeof import('vuetify/components')['VTabsWindow']
2850
- VTabsWindowItem: typeof import('vuetify/components')['VTabsWindowItem']
2845
+ VSheet: typeof import('vuetify/components')['VSheet']
2851
2846
  VStepper: typeof import('vuetify/components')['VStepper']
2852
2847
  VStepperActions: typeof import('vuetify/components')['VStepperActions']
2853
2848
  VStepperHeader: typeof import('vuetify/components')['VStepperHeader']
2854
2849
  VStepperItem: typeof import('vuetify/components')['VStepperItem']
2855
2850
  VStepperWindow: typeof import('vuetify/components')['VStepperWindow']
2856
2851
  VStepperWindowItem: typeof import('vuetify/components')['VStepperWindowItem']
2852
+ VSlideGroup: typeof import('vuetify/components')['VSlideGroup']
2853
+ VSlideGroupItem: typeof import('vuetify/components')['VSlideGroupItem']
2857
2854
  VSwitch: typeof import('vuetify/components')['VSwitch']
2858
- VSystemBar: typeof import('vuetify/components')['VSystemBar']
2859
- VTimePicker: typeof import('vuetify/components')['VTimePicker']
2860
- VTimePickerClock: typeof import('vuetify/components')['VTimePickerClock']
2861
- VTimePickerControls: typeof import('vuetify/components')['VTimePickerControls']
2862
- VTable: typeof import('vuetify/components')['VTable']
2863
2855
  VTextarea: typeof import('vuetify/components')['VTextarea']
2864
- VTextField: typeof import('vuetify/components')['VTextField']
2865
- VTooltip: typeof import('vuetify/components')['VTooltip']
2866
- VWindow: typeof import('vuetify/components')['VWindow']
2867
- VWindowItem: typeof import('vuetify/components')['VWindowItem']
2868
- VTimeline: typeof import('vuetify/components')['VTimeline']
2869
- VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
2856
+ VTab: typeof import('vuetify/components')['VTab']
2857
+ VTabs: typeof import('vuetify/components')['VTabs']
2858
+ VTabsWindow: typeof import('vuetify/components')['VTabsWindow']
2859
+ VTabsWindowItem: typeof import('vuetify/components')['VTabsWindowItem']
2860
+ VTable: typeof import('vuetify/components')['VTable']
2870
2861
  VToolbar: typeof import('vuetify/components')['VToolbar']
2871
2862
  VToolbarTitle: typeof import('vuetify/components')['VToolbarTitle']
2872
2863
  VToolbarItems: typeof import('vuetify/components')['VToolbarItems']
2864
+ VTimeline: typeof import('vuetify/components')['VTimeline']
2865
+ VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
2866
+ VTextField: typeof import('vuetify/components')['VTextField']
2873
2867
  VTreeview: typeof import('vuetify/components')['VTreeview']
2874
2868
  VTreeviewItem: typeof import('vuetify/components')['VTreeviewItem']
2875
2869
  VTreeviewGroup: typeof import('vuetify/components')['VTreeviewGroup']
2870
+ VTimePicker: typeof import('vuetify/components')['VTimePicker']
2871
+ VTimePickerClock: typeof import('vuetify/components')['VTimePickerClock']
2872
+ VTimePickerControls: typeof import('vuetify/components')['VTimePickerControls']
2873
+ VWindow: typeof import('vuetify/components')['VWindow']
2874
+ VWindowItem: typeof import('vuetify/components')['VWindowItem']
2875
+ VTooltip: typeof import('vuetify/components')['VTooltip']
2876
2876
  VConfirmEdit: typeof import('vuetify/components')['VConfirmEdit']
2877
2877
  VDataIterator: typeof import('vuetify/components')['VDataIterator']
2878
2878
  VDefaultsProvider: typeof import('vuetify/components')['VDefaultsProvider']
2879
2879
  VForm: typeof import('vuetify/components')['VForm']
2880
+ VHover: typeof import('vuetify/components')['VHover']
2880
2881
  VContainer: typeof import('vuetify/components')['VContainer']
2881
2882
  VCol: typeof import('vuetify/components')['VCol']
2882
2883
  VRow: typeof import('vuetify/components')['VRow']
2883
2884
  VSpacer: typeof import('vuetify/components')['VSpacer']
2884
- VHover: typeof import('vuetify/components')['VHover']
2885
2885
  VLayout: typeof import('vuetify/components')['VLayout']
2886
2886
  VLayoutItem: typeof import('vuetify/components')['VLayoutItem']
2887
- VLocaleProvider: typeof import('vuetify/components')['VLocaleProvider']
2888
2887
  VLazy: typeof import('vuetify/components')['VLazy']
2888
+ VLocaleProvider: typeof import('vuetify/components')['VLocaleProvider']
2889
2889
  VNoSsr: typeof import('vuetify/components')['VNoSsr']
2890
2890
  VParallax: typeof import('vuetify/components')['VParallax']
2891
2891
  VRadio: typeof import('vuetify/components')['VRadio']
2892
- VResponsive: typeof import('vuetify/components')['VResponsive']
2893
- VSnackbarQueue: typeof import('vuetify/components')['VSnackbarQueue']
2894
2892
  VRangeSlider: typeof import('vuetify/components')['VRangeSlider']
2895
- VSpeedDial: typeof import('vuetify/components')['VSpeedDial']
2893
+ VResponsive: typeof import('vuetify/components')['VResponsive']
2896
2894
  VSparkline: typeof import('vuetify/components')['VSparkline']
2895
+ VSpeedDial: typeof import('vuetify/components')['VSpeedDial']
2897
2896
  VThemeProvider: typeof import('vuetify/components')['VThemeProvider']
2898
- VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
2899
2897
  VFabTransition: typeof import('vuetify/components')['VFabTransition']
2900
2898
  VDialogBottomTransition: typeof import('vuetify/components')['VDialogBottomTransition']
2901
2899
  VDialogTopTransition: typeof import('vuetify/components')['VDialogTopTransition']
@@ -2913,23 +2911,25 @@ declare module 'vue' {
2913
2911
  VExpandXTransition: typeof import('vuetify/components')['VExpandXTransition']
2914
2912
  VDialogTransition: typeof import('vuetify/components')['VDialogTransition']
2915
2913
  VValidation: typeof import('vuetify/components')['VValidation']
2914
+ VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
2915
+ VSnackbarQueue: typeof import('vuetify/components')['VSnackbarQueue']
2916
2916
  VColorInput: typeof import('vuetify/labs/components')['VColorInput']
2917
- VCalendar: typeof import('vuetify/labs/components')['VCalendar']
2918
2917
  VFileUpload: typeof import('vuetify/labs/components')['VFileUpload']
2919
2918
  VFileUploadItem: typeof import('vuetify/labs/components')['VFileUploadItem']
2920
2919
  VIconBtn: typeof import('vuetify/labs/components')['VIconBtn']
2921
- VStepperVertical: typeof import('vuetify/labs/components')['VStepperVertical']
2922
- VStepperVerticalItem: typeof import('vuetify/labs/components')['VStepperVerticalItem']
2923
- VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
2924
- VPicker: typeof import('vuetify/labs/components')['VPicker']
2925
- VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
2926
- VHotkey: typeof import('vuetify/labs/components')['VHotkey']
2920
+ VCalendar: typeof import('vuetify/labs/components')['VCalendar']
2927
2921
  VPie: typeof import('vuetify/labs/components')['VPie']
2928
2922
  VPieSegment: typeof import('vuetify/labs/components')['VPieSegment']
2929
2923
  VPieTooltip: typeof import('vuetify/labs/components')['VPieTooltip']
2924
+ VPicker: typeof import('vuetify/labs/components')['VPicker']
2925
+ VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
2930
2926
  VVideo: typeof import('vuetify/labs/components')['VVideo']
2931
2927
  VVideoControls: typeof import('vuetify/labs/components')['VVideoControls']
2932
2928
  VVideoVolume: typeof import('vuetify/labs/components')['VVideoVolume']
2929
+ VStepperVertical: typeof import('vuetify/labs/components')['VStepperVertical']
2930
+ VStepperVerticalItem: typeof import('vuetify/labs/components')['VStepperVerticalItem']
2931
+ VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
2932
+ VHotkey: typeof import('vuetify/labs/components')['VHotkey']
2933
2933
  VDateInput: typeof import('vuetify/labs/components')['VDateInput']
2934
2934
  VMaskInput: typeof import('vuetify/labs/components')['VMaskInput']
2935
2935
  VPullToRefresh: typeof import('vuetify/labs/components')['VPullToRefresh']
package/lib/framework.js CHANGED
@@ -110,7 +110,7 @@ export function createVuetify() {
110
110
  };
111
111
  });
112
112
  }
113
- export const version = "3.10.9-dev.2025-11-08";
113
+ export const version = "3.10.9-dev.2025-11-09";
114
114
  createVuetify.version = version;
115
115
 
116
116
  // Vue's inject() can only be used in setup
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@vuetify/nightly",
3
3
  "description": "Vue Material Component Framework",
4
- "version": "3.10.9-dev.2025-11-08",
4
+ "version": "3.10.9-dev.2025-11-09",
5
5
  "author": {
6
6
  "name": "John Leider",
7
7
  "email": "john@vuetifyjs.com"