@vuetify/nightly 3.7.18-master.2025-03-25 → 3.7.19-master.2025-03-26

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.
@@ -278,12 +278,7 @@ export const VAutocomplete = genericComponent()({
278
278
  } else {
279
279
  if (!props.multiple && search.value == null) model.value = [];
280
280
  menu.value = false;
281
- if (!model.value.some(_ref3 => {
282
- let {
283
- title
284
- } = _ref3;
285
- return title === search.value;
286
- })) search.value = '';
281
+ if (props.multiple || hasSelectionSlot.value) search.value = '';
287
282
  selectionIndex.value = -1;
288
283
  }
289
284
  });
@@ -370,12 +365,12 @@ export const VAutocomplete = genericComponent()({
370
365
  "renderless": true,
371
366
  "items": displayItems.value
372
367
  }, {
373
- default: _ref4 => {
368
+ default: _ref3 => {
374
369
  let {
375
370
  item,
376
371
  index,
377
372
  itemRef
378
- } = _ref4;
373
+ } = _ref3;
379
374
  const itemProps = mergeProps(item.props, {
380
375
  ref: itemRef,
381
376
  key: item.value,
@@ -389,10 +384,10 @@ export const VAutocomplete = genericComponent()({
389
384
  }) ?? _createVNode(VListItem, _mergeProps(itemProps, {
390
385
  "role": "option"
391
386
  }), {
392
- prepend: _ref5 => {
387
+ prepend: _ref4 => {
393
388
  let {
394
389
  isSelected
395
- } = _ref5;
390
+ } = _ref4;
396
391
  return _createVNode(_Fragment, null, [props.multiple && !props.hideSelected ? _createVNode(VCheckboxBtn, {
397
392
  "key": item.value,
398
393
  "modelValue": isSelected,
@@ -1 +1 @@
1
- {"version":3,"file":"VAutocomplete.mjs","names":["VAvatar","VCheckboxBtn","VChip","VDefaultsProvider","VIcon","VList","VListItem","VMenu","makeSelectProps","makeVTextFieldProps","VTextField","VVirtualScroll","useScrolling","useTextColor","makeFilterProps","useFilter","useForm","forwardRefs","useItems","useLocale","useProxiedModel","makeTransitionProps","computed","mergeProps","nextTick","ref","shallowRef","watch","checkPrintable","deepEqual","ensureValidVNode","genericComponent","IN_BROWSER","matchesSelector","noop","omit","propsFactory","useRender","wrapInArray","highlightResult","text","matches","length","Array","isArray","Error","_createVNode","_Fragment","substr","makeVAutocompleteProps","autoSelectFirst","type","Boolean","String","clearOnSelect","search","filterKeys","modelValue","role","transition","VAutocomplete","name","props","emits","focused","value","setup","_ref","slots","t","vTextFieldRef","isFocused","isPristine","listHasFocus","vMenuRef","vVirtualScrollRef","_menu","menu","get","set","v","ΨopenChildren","size","selectionIndex","color","label","closeText","openText","items","transformIn","transformOut","textColorClasses","textColorStyles","model","transformed","multiple","counterValue","form","filteredItems","getMatches","displayItems","hideSelected","filter","filteredItem","some","s","hasChips","chips","chip","hasSelectionSlot","selection","selectedValues","map","highlightFirst","selectFirst","title","menuDisabled","hideNoData","isReadonly","isDisabled","listRef","listEvents","onClear","e","openOnClear","onMousedownControl","onMousedownMenuIcon","preventDefault","stopPropagation","onListKeydown","key","focus","onKeydown","selectionStart","includes","_ref2","select","originalSelectionIndex","prev","setSelectionRange","next","onChange","item","find","target","onAfterEnter","eager","calculateVisibleItems","onAfterLeave","onFocusin","setTimeout","onFocusout","onUpdateModelValue","isSelecting","arguments","undefined","disabled","index","findIndex","valueComparator","add","splice","val","oldVal","at","_ref3","window","requestAnimationFrame","scrollToIndex","newVal","hasList","isDirty","textFieldProps","filterProps","_mergeProps","$event","externalValue","class","style","placeholder","default","menuProps","itemColor","listProps","noDataText","_ref4","itemRef","itemProps","active","onClick","prepend","_ref5","isSelected","prependAvatar","prependIcon","onChipClose","slotProps","onMousedown","hasSlot","slotContent","closableChips","closable","_createTextVNode","append-inner","_len","args","_key","menuIcon"],"sources":["../../../src/components/VAutocomplete/VAutocomplete.tsx"],"sourcesContent":["// Styles\nimport './VAutocomplete.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 { VIcon } from '@/components/VIcon'\nimport { VList, VListItem } from '@/components/VList'\nimport { VMenu } from '@/components/VMenu'\nimport { makeSelectProps } from '@/components/VSelect/VSelect'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\nimport { VVirtualScroll } from '@/components/VVirtualScroll'\n\n// Composables\nimport { useScrolling } from '../VSelect/useScrolling'\nimport { useTextColor } from '@/composables/color'\nimport { makeFilterProps, useFilter } from '@/composables/filter'\nimport { useForm } from '@/composables/form'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useItems } from '@/composables/list-items'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeTransitionProps } from '@/composables/transition'\n\n// Utilities\nimport { computed, mergeProps, nextTick, ref, shallowRef, watch } from 'vue'\nimport {\n checkPrintable,\n deepEqual,\n ensureValidVNode,\n genericComponent,\n IN_BROWSER,\n matchesSelector,\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 { FilterMatch } from '@/composables/filter'\nimport type { ListItem } from '@/composables/list-items'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\nfunction highlightResult (text: string, matches: FilterMatch | undefined, length: number) {\n if (matches == null) return text\n\n if (Array.isArray(matches)) throw new Error('Multiple matches is not implemented')\n\n return typeof matches === 'number' && ~matches\n ? (\n <>\n <span class=\"v-autocomplete__unmask\">{ text.substr(0, matches) }</span>\n <span class=\"v-autocomplete__mask\">{ text.substr(matches, length) }</span>\n <span class=\"v-autocomplete__unmask\">{ text.substr(matches + length) }</span>\n </>\n )\n : text\n}\n\ntype Primitive = string | number | boolean | symbol\n\ntype Val <T, ReturnObject extends boolean> = [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 makeVAutocompleteProps = propsFactory({\n autoSelectFirst: {\n type: [Boolean, String] as PropType<boolean | 'exact'>,\n },\n clearOnSelect: Boolean,\n search: String,\n\n ...makeFilterProps({ filterKeys: ['title'] }),\n ...makeSelectProps(),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n role: 'combobox',\n }), ['validationValue', 'dirty', 'appendInnerIcon']),\n ...makeTransitionProps({ transition: false }),\n}, 'VAutocomplete')\n\ntype ItemType<T> = T extends readonly (infer U)[] ? U : never\n\nexport const VAutocomplete = genericComponent<new <\n T extends readonly any[],\n Item = ItemType<T>,\n ReturnObject extends boolean = false,\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 'prepend-item': never\n 'append-item': never\n 'no-data': never\n }\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VAutocomplete',\n\n props: makeVAutocompleteProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:search': (value: any) => true,\n 'update:modelValue': (value: any) => true,\n 'update:menu': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref()\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 _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 _menu.value = v\n },\n })\n const selectionIndex = shallowRef(-1)\n const color = computed(() => vTextFieldRef.value?.color)\n const label = computed(() => menu.value ? props.closeText : props.openText)\n const { items, transformIn, transformOut } = useItems(props)\n const { textColorClasses, textColorStyles } = useTextColor(color)\n const search = useProxiedModel(props, 'search', '')\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => transformIn(v === null ? [null] : wrapInArray(v)),\n v => {\n const transformed = transformOut(v)\n return props.multiple ? transformed : (transformed[0] ?? null)\n }\n )\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function' ? props.counterValue(model.value)\n : typeof props.counterValue === 'number' ? props.counterValue\n : model.value.length\n })\n const form = useForm(props)\n const { filteredItems, getMatches } = useFilter(props, items, () => isPristine.value ? '' : search.value)\n\n const displayItems = computed(() => {\n if (props.hideSelected) {\n return filteredItems.value.filter(filteredItem => !model.value.some(s => s.value === filteredItem.value))\n }\n return filteredItems.value\n })\n\n const hasChips = computed(() => !!(props.chips || slots.chip))\n const hasSelectionSlot = computed(() => hasChips.value || !!slots.selection)\n\n const selectedValues = computed(() => model.value.map(selection => selection.props.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 menuDisabled = computed(() => (\n (props.hideNoData && !displayItems.value.length) ||\n form.isReadonly.value || form.isDisabled.value\n ))\n\n const listRef = ref<VList>()\n const listEvents = useScrolling(listRef, vTextFieldRef)\n function onClear (e: MouseEvent) {\n if (props.openOnClear) {\n menu.value = true\n }\n\n search.value = ''\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 (e.key !== ' ' && checkPrintable(e)) {\n vTextFieldRef.value?.focus()\n }\n }\n function onKeydown (e: KeyboardEvent) {\n if (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 (\n highlightFirst.value &&\n ['Enter', 'Tab'].includes(e.key) &&\n !model.value.some(({ value }) => value === displayItems.value[0].value)\n ) {\n select(displayItems.value[0])\n }\n\n if (e.key === 'ArrowDown' && highlightFirst.value) {\n listRef.value?.focus('next')\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 > 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\n function onChange (e: Event) {\n if (matchesSelector(vTextFieldRef.value, ':autofill') || matchesSelector(vTextFieldRef.value, ':-webkit-autofill')) {\n const item = items.value.find(item => item.title === (e.target as HTMLInputElement).value)\n if (item) {\n select(item)\n }\n }\n }\n\n function onAfterEnter () {\n if (props.eager) {\n vVirtualScrollRef.value?.calculateVisibleItems()\n }\n }\n function onAfterLeave () {\n if (isFocused.value) {\n isPristine.value = true\n vTextFieldRef.value?.focus()\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 function onUpdateModelValue (v: any) {\n if (v == null || (v === '' && !props.multiple && !hasSelectionSlot.value)) model.value = []\n }\n\n const isSelecting = shallowRef(false)\n\n /** @param set - null means toggle */\n function select (item: ListItem | undefined, set: boolean | null = true) {\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 search.value = add && !hasSelectionSlot.value ? item.title : ''\n\n // watch for search watcher to trigger\n nextTick(() => {\n menu.value = false\n isPristine.value = true\n })\n }\n }\n\n watch(isFocused, (val, oldVal) => {\n if (val === oldVal) return\n\n if (val) {\n isSelecting.value = true\n search.value = (props.multiple || hasSelectionSlot.value) ? '' : String(model.value.at(-1)?.props.title ?? '')\n isPristine.value = true\n\n nextTick(() => isSelecting.value = false)\n } else {\n if (!props.multiple && search.value == null) model.value = []\n menu.value = false\n if (!model.value.some(({ title }) => title === search.value)) search.value = ''\n selectionIndex.value = -1\n }\n })\n\n watch(search, val => {\n if (!isFocused.value || isSelecting.value) return\n\n if (val) menu.value = true\n\n isPristine.value = !val\n })\n\n watch(menu, () => {\n if (!props.hideSelected && menu.value && model.value.length) {\n const index = displayItems.value.findIndex(\n item => model.value.some(s => item.value === s.value)\n )\n IN_BROWSER && window.requestAnimationFrame(() => {\n index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index)\n })\n }\n })\n\n watch(() => props.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 onUpdate:modelValue={ onUpdateModelValue }\n v-model:focused={ isFocused.value }\n validationValue={ model.externalValue }\n counterValue={ counterValue.value }\n dirty={ isDirty }\n onChange={ onChange }\n class={[\n 'v-autocomplete',\n `v-autocomplete--${props.multiple ? 'multiple' : 'single'}`,\n {\n 'v-autocomplete--active-menu': menu.value,\n 'v-autocomplete--chips': !!props.chips,\n 'v-autocomplete--selection-slot': !!hasSelectionSlot.value,\n 'v-autocomplete--selecting-index': selectionIndex.value > -1,\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 >\n {{\n ...slots,\n default: () => (\n <>\n <VMenu\n ref={ vMenuRef }\n v-model={ menu.value }\n activator=\"parent\"\n contentClass=\"v-autocomplete__content\"\n disabled={ menuDisabled.value }\n eager={ props.eager }\n maxHeight={ 310 }\n openOnClick={ false }\n closeOnContentClick={ false }\n transition={ props.transition }\n onAfterEnter={ onAfterEnter }\n onAfterLeave={ onAfterLeave }\n { ...props.menuProps }\n >\n { hasList && (\n <VList\n ref={ listRef }\n selected={ selectedValues.value }\n selectStrategy={ props.multiple ? 'independent' : 'single-independent' }\n onMousedown={ (e: MouseEvent) => e.preventDefault() }\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 }>\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 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 />\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(item.title, getMatches(item)?.title, search.value?.length ?? 0)\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-autocomplete__selection',\n index === selectionIndex.value && [\n 'v-autocomplete__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-autocomplete__selection-text\">\n { item.title }\n { props.multiple && (index < model.value.length - 1) && (\n <span class=\"v-autocomplete__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.menuIcon ? (\n <VIcon\n class=\"v-autocomplete__menu-icon\"\n icon={ props.menuIcon }\n onMousedown={ onMousedownMenuIcon }\n onClick={ noop }\n aria-label={ t(label.value) }\n title={ t(label.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 filteredItems,\n select,\n }, vTextFieldRef)\n },\n})\n\nexport type VAutocomplete = InstanceType<typeof VAutocomplete>\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VAutocomplete.mjs","names":["VAvatar","VCheckboxBtn","VChip","VDefaultsProvider","VIcon","VList","VListItem","VMenu","makeSelectProps","makeVTextFieldProps","VTextField","VVirtualScroll","useScrolling","useTextColor","makeFilterProps","useFilter","useForm","forwardRefs","useItems","useLocale","useProxiedModel","makeTransitionProps","computed","mergeProps","nextTick","ref","shallowRef","watch","checkPrintable","deepEqual","ensureValidVNode","genericComponent","IN_BROWSER","matchesSelector","noop","omit","propsFactory","useRender","wrapInArray","highlightResult","text","matches","length","Array","isArray","Error","_createVNode","_Fragment","substr","makeVAutocompleteProps","autoSelectFirst","type","Boolean","String","clearOnSelect","search","filterKeys","modelValue","role","transition","VAutocomplete","name","props","emits","focused","value","setup","_ref","slots","t","vTextFieldRef","isFocused","isPristine","listHasFocus","vMenuRef","vVirtualScrollRef","_menu","menu","get","set","v","ΨopenChildren","size","selectionIndex","color","label","closeText","openText","items","transformIn","transformOut","textColorClasses","textColorStyles","model","transformed","multiple","counterValue","form","filteredItems","getMatches","displayItems","hideSelected","filter","filteredItem","some","s","hasChips","chips","chip","hasSelectionSlot","selection","selectedValues","map","highlightFirst","selectFirst","title","menuDisabled","hideNoData","isReadonly","isDisabled","listRef","listEvents","onClear","e","openOnClear","onMousedownControl","onMousedownMenuIcon","preventDefault","stopPropagation","onListKeydown","key","focus","onKeydown","selectionStart","includes","_ref2","select","originalSelectionIndex","prev","setSelectionRange","next","onChange","item","find","target","onAfterEnter","eager","calculateVisibleItems","onAfterLeave","onFocusin","setTimeout","onFocusout","onUpdateModelValue","isSelecting","arguments","undefined","disabled","index","findIndex","valueComparator","add","splice","val","oldVal","at","window","requestAnimationFrame","scrollToIndex","newVal","hasList","isDirty","textFieldProps","filterProps","_mergeProps","$event","externalValue","class","style","placeholder","default","menuProps","itemColor","listProps","noDataText","_ref3","itemRef","itemProps","active","onClick","prepend","_ref4","isSelected","prependAvatar","prependIcon","onChipClose","slotProps","onMousedown","hasSlot","slotContent","closableChips","closable","_createTextVNode","append-inner","_len","args","_key","menuIcon"],"sources":["../../../src/components/VAutocomplete/VAutocomplete.tsx"],"sourcesContent":["// Styles\nimport './VAutocomplete.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 { VIcon } from '@/components/VIcon'\nimport { VList, VListItem } from '@/components/VList'\nimport { VMenu } from '@/components/VMenu'\nimport { makeSelectProps } from '@/components/VSelect/VSelect'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\nimport { VVirtualScroll } from '@/components/VVirtualScroll'\n\n// Composables\nimport { useScrolling } from '../VSelect/useScrolling'\nimport { useTextColor } from '@/composables/color'\nimport { makeFilterProps, useFilter } from '@/composables/filter'\nimport { useForm } from '@/composables/form'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useItems } from '@/composables/list-items'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeTransitionProps } from '@/composables/transition'\n\n// Utilities\nimport { computed, mergeProps, nextTick, ref, shallowRef, watch } from 'vue'\nimport {\n checkPrintable,\n deepEqual,\n ensureValidVNode,\n genericComponent,\n IN_BROWSER,\n matchesSelector,\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 { FilterMatch } from '@/composables/filter'\nimport type { ListItem } from '@/composables/list-items'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\nfunction highlightResult (text: string, matches: FilterMatch | undefined, length: number) {\n if (matches == null) return text\n\n if (Array.isArray(matches)) throw new Error('Multiple matches is not implemented')\n\n return typeof matches === 'number' && ~matches\n ? (\n <>\n <span class=\"v-autocomplete__unmask\">{ text.substr(0, matches) }</span>\n <span class=\"v-autocomplete__mask\">{ text.substr(matches, length) }</span>\n <span class=\"v-autocomplete__unmask\">{ text.substr(matches + length) }</span>\n </>\n )\n : text\n}\n\ntype Primitive = string | number | boolean | symbol\n\ntype Val <T, ReturnObject extends boolean> = [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 makeVAutocompleteProps = propsFactory({\n autoSelectFirst: {\n type: [Boolean, String] as PropType<boolean | 'exact'>,\n },\n clearOnSelect: Boolean,\n search: String,\n\n ...makeFilterProps({ filterKeys: ['title'] }),\n ...makeSelectProps(),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n role: 'combobox',\n }), ['validationValue', 'dirty', 'appendInnerIcon']),\n ...makeTransitionProps({ transition: false }),\n}, 'VAutocomplete')\n\ntype ItemType<T> = T extends readonly (infer U)[] ? U : never\n\nexport const VAutocomplete = genericComponent<new <\n T extends readonly any[],\n Item = ItemType<T>,\n ReturnObject extends boolean = false,\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 'prepend-item': never\n 'append-item': never\n 'no-data': never\n }\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VAutocomplete',\n\n props: makeVAutocompleteProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:search': (value: any) => true,\n 'update:modelValue': (value: any) => true,\n 'update:menu': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref()\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 _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 _menu.value = v\n },\n })\n const selectionIndex = shallowRef(-1)\n const color = computed(() => vTextFieldRef.value?.color)\n const label = computed(() => menu.value ? props.closeText : props.openText)\n const { items, transformIn, transformOut } = useItems(props)\n const { textColorClasses, textColorStyles } = useTextColor(color)\n const search = useProxiedModel(props, 'search', '')\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => transformIn(v === null ? [null] : wrapInArray(v)),\n v => {\n const transformed = transformOut(v)\n return props.multiple ? transformed : (transformed[0] ?? null)\n }\n )\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function' ? props.counterValue(model.value)\n : typeof props.counterValue === 'number' ? props.counterValue\n : model.value.length\n })\n const form = useForm(props)\n const { filteredItems, getMatches } = useFilter(props, items, () => isPristine.value ? '' : search.value)\n\n const displayItems = computed(() => {\n if (props.hideSelected) {\n return filteredItems.value.filter(filteredItem => !model.value.some(s => s.value === filteredItem.value))\n }\n return filteredItems.value\n })\n\n const hasChips = computed(() => !!(props.chips || slots.chip))\n const hasSelectionSlot = computed(() => hasChips.value || !!slots.selection)\n\n const selectedValues = computed(() => model.value.map(selection => selection.props.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 menuDisabled = computed(() => (\n (props.hideNoData && !displayItems.value.length) ||\n form.isReadonly.value || form.isDisabled.value\n ))\n\n const listRef = ref<VList>()\n const listEvents = useScrolling(listRef, vTextFieldRef)\n function onClear (e: MouseEvent) {\n if (props.openOnClear) {\n menu.value = true\n }\n\n search.value = ''\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 (e.key !== ' ' && checkPrintable(e)) {\n vTextFieldRef.value?.focus()\n }\n }\n function onKeydown (e: KeyboardEvent) {\n if (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 (\n highlightFirst.value &&\n ['Enter', 'Tab'].includes(e.key) &&\n !model.value.some(({ value }) => value === displayItems.value[0].value)\n ) {\n select(displayItems.value[0])\n }\n\n if (e.key === 'ArrowDown' && highlightFirst.value) {\n listRef.value?.focus('next')\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 > 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\n function onChange (e: Event) {\n if (matchesSelector(vTextFieldRef.value, ':autofill') || matchesSelector(vTextFieldRef.value, ':-webkit-autofill')) {\n const item = items.value.find(item => item.title === (e.target as HTMLInputElement).value)\n if (item) {\n select(item)\n }\n }\n }\n\n function onAfterEnter () {\n if (props.eager) {\n vVirtualScrollRef.value?.calculateVisibleItems()\n }\n }\n function onAfterLeave () {\n if (isFocused.value) {\n isPristine.value = true\n vTextFieldRef.value?.focus()\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 function onUpdateModelValue (v: any) {\n if (v == null || (v === '' && !props.multiple && !hasSelectionSlot.value)) model.value = []\n }\n\n const isSelecting = shallowRef(false)\n\n /** @param set - null means toggle */\n function select (item: ListItem | undefined, set: boolean | null = true) {\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 search.value = add && !hasSelectionSlot.value ? item.title : ''\n\n // watch for search watcher to trigger\n nextTick(() => {\n menu.value = false\n isPristine.value = true\n })\n }\n }\n\n watch(isFocused, (val, oldVal) => {\n if (val === oldVal) return\n\n if (val) {\n isSelecting.value = true\n search.value = (props.multiple || hasSelectionSlot.value) ? '' : String(model.value.at(-1)?.props.title ?? '')\n isPristine.value = true\n\n nextTick(() => isSelecting.value = false)\n } else {\n if (!props.multiple && search.value == null) model.value = []\n menu.value = false\n if (props.multiple || hasSelectionSlot.value) search.value = ''\n selectionIndex.value = -1\n }\n })\n\n watch(search, val => {\n if (!isFocused.value || isSelecting.value) return\n\n if (val) menu.value = true\n\n isPristine.value = !val\n })\n\n watch(menu, () => {\n if (!props.hideSelected && menu.value && model.value.length) {\n const index = displayItems.value.findIndex(\n item => model.value.some(s => item.value === s.value)\n )\n IN_BROWSER && window.requestAnimationFrame(() => {\n index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index)\n })\n }\n })\n\n watch(() => props.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 onUpdate:modelValue={ onUpdateModelValue }\n v-model:focused={ isFocused.value }\n validationValue={ model.externalValue }\n counterValue={ counterValue.value }\n dirty={ isDirty }\n onChange={ onChange }\n class={[\n 'v-autocomplete',\n `v-autocomplete--${props.multiple ? 'multiple' : 'single'}`,\n {\n 'v-autocomplete--active-menu': menu.value,\n 'v-autocomplete--chips': !!props.chips,\n 'v-autocomplete--selection-slot': !!hasSelectionSlot.value,\n 'v-autocomplete--selecting-index': selectionIndex.value > -1,\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 >\n {{\n ...slots,\n default: () => (\n <>\n <VMenu\n ref={ vMenuRef }\n v-model={ menu.value }\n activator=\"parent\"\n contentClass=\"v-autocomplete__content\"\n disabled={ menuDisabled.value }\n eager={ props.eager }\n maxHeight={ 310 }\n openOnClick={ false }\n closeOnContentClick={ false }\n transition={ props.transition }\n onAfterEnter={ onAfterEnter }\n onAfterLeave={ onAfterLeave }\n { ...props.menuProps }\n >\n { hasList && (\n <VList\n ref={ listRef }\n selected={ selectedValues.value }\n selectStrategy={ props.multiple ? 'independent' : 'single-independent' }\n onMousedown={ (e: MouseEvent) => e.preventDefault() }\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 }>\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 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 />\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(item.title, getMatches(item)?.title, search.value?.length ?? 0)\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-autocomplete__selection',\n index === selectionIndex.value && [\n 'v-autocomplete__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-autocomplete__selection-text\">\n { item.title }\n { props.multiple && (index < model.value.length - 1) && (\n <span class=\"v-autocomplete__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.menuIcon ? (\n <VIcon\n class=\"v-autocomplete__menu-icon\"\n icon={ props.menuIcon }\n onMousedown={ onMousedownMenuIcon }\n onClick={ noop }\n aria-label={ t(label.value) }\n title={ t(label.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 filteredItems,\n select,\n }, vTextFieldRef)\n },\n})\n\nexport type VAutocomplete = InstanceType<typeof VAutocomplete>\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.7.18-master.2025-03-25";
19
+ export const version = "3.7.19-master.2025-03-26";
20
20
  createVuetify.version = version;
21
21
  export { blueprints, components, directives };
22
22
  export * from "./composables/index.mjs";
package/lib/framework.mjs CHANGED
@@ -97,7 +97,7 @@ export function createVuetify() {
97
97
  goTo
98
98
  };
99
99
  }
100
- export const version = "3.7.18-master.2025-03-25";
100
+ export const version = "3.7.19-master.2025-03-26";
101
101
  createVuetify.version = version;
102
102
 
103
103
  // Vue's inject() can only be used in setup
package/lib/index.d.mts CHANGED
@@ -486,40 +486,50 @@ declare module 'vue' {
486
486
  $children?: VNodeChild
487
487
  }
488
488
  export interface GlobalComponents {
489
- VAlert: typeof import('vuetify/components')['VAlert']
490
- VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
491
489
  VApp: typeof import('vuetify/components')['VApp']
490
+ VAvatar: typeof import('vuetify/components')['VAvatar']
492
491
  VAppBar: typeof import('vuetify/components')['VAppBar']
493
492
  VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
494
493
  VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
495
- VAvatar: typeof import('vuetify/components')['VAvatar']
494
+ VAlert: typeof import('vuetify/components')['VAlert']
495
+ VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
496
496
  VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
497
497
  VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
498
498
  VBadge: typeof import('vuetify/components')['VBadge']
499
- VBtn: typeof import('vuetify/components')['VBtn']
500
499
  VBanner: typeof import('vuetify/components')['VBanner']
501
500
  VBannerActions: typeof import('vuetify/components')['VBannerActions']
502
501
  VBannerText: typeof import('vuetify/components')['VBannerText']
503
- VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
504
- VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
505
- VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
506
- VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
507
- VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
508
- VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
502
+ VBtn: typeof import('vuetify/components')['VBtn']
509
503
  VCard: typeof import('vuetify/components')['VCard']
510
504
  VCardActions: typeof import('vuetify/components')['VCardActions']
511
505
  VCardItem: typeof import('vuetify/components')['VCardItem']
512
506
  VCardSubtitle: typeof import('vuetify/components')['VCardSubtitle']
513
507
  VCardText: typeof import('vuetify/components')['VCardText']
514
508
  VCardTitle: typeof import('vuetify/components')['VCardTitle']
515
- VCheckbox: typeof import('vuetify/components')['VCheckbox']
516
- VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
509
+ VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
510
+ VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
511
+ VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
512
+ VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
513
+ VChipGroup: typeof import('vuetify/components')['VChipGroup']
514
+ VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
515
+ VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
516
+ VColorPicker: typeof import('vuetify/components')['VColorPicker']
517
+ VCode: typeof import('vuetify/components')['VCode']
518
+ VChip: typeof import('vuetify/components')['VChip']
517
519
  VCarousel: typeof import('vuetify/components')['VCarousel']
518
520
  VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
519
- VChip: typeof import('vuetify/components')['VChip']
520
521
  VCombobox: typeof import('vuetify/components')['VCombobox']
521
- VColorPicker: typeof import('vuetify/components')['VColorPicker']
522
- VChipGroup: typeof import('vuetify/components')['VChipGroup']
522
+ VCounter: typeof import('vuetify/components')['VCounter']
523
+ VCheckbox: typeof import('vuetify/components')['VCheckbox']
524
+ VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
525
+ VDatePicker: typeof import('vuetify/components')['VDatePicker']
526
+ VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
527
+ VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
528
+ VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
529
+ VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
530
+ VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
531
+ VDialog: typeof import('vuetify/components')['VDialog']
532
+ VEmptyState: typeof import('vuetify/components')['VEmptyState']
523
533
  VDataTable: typeof import('vuetify/components')['VDataTable']
524
534
  VDataTableHeaders: typeof import('vuetify/components')['VDataTableHeaders']
525
535
  VDataTableFooter: typeof import('vuetify/components')['VDataTableFooter']
@@ -527,38 +537,27 @@ declare module 'vue' {
527
537
  VDataTableRow: typeof import('vuetify/components')['VDataTableRow']
528
538
  VDataTableVirtual: typeof import('vuetify/components')['VDataTableVirtual']
529
539
  VDataTableServer: typeof import('vuetify/components')['VDataTableServer']
530
- VCode: typeof import('vuetify/components')['VCode']
531
- VCounter: typeof import('vuetify/components')['VCounter']
532
- VDialog: typeof import('vuetify/components')['VDialog']
533
540
  VDivider: typeof import('vuetify/components')['VDivider']
534
- VEmptyState: typeof import('vuetify/components')['VEmptyState']
535
- VDatePicker: typeof import('vuetify/components')['VDatePicker']
536
- VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
537
- VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
538
- VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
539
- VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
540
- VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
541
- VFileInput: typeof import('vuetify/components')['VFileInput']
542
- VFab: typeof import('vuetify/components')['VFab']
543
- VField: typeof import('vuetify/components')['VField']
544
- VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
545
541
  VExpansionPanels: typeof import('vuetify/components')['VExpansionPanels']
546
542
  VExpansionPanel: typeof import('vuetify/components')['VExpansionPanel']
547
543
  VExpansionPanelText: typeof import('vuetify/components')['VExpansionPanelText']
548
544
  VExpansionPanelTitle: typeof import('vuetify/components')['VExpansionPanelTitle']
545
+ VField: typeof import('vuetify/components')['VField']
546
+ VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
547
+ VFileInput: typeof import('vuetify/components')['VFileInput']
549
548
  VFooter: typeof import('vuetify/components')['VFooter']
550
- VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
551
- VImg: typeof import('vuetify/components')['VImg']
552
- VKbd: typeof import('vuetify/components')['VKbd']
553
549
  VIcon: typeof import('vuetify/components')['VIcon']
554
550
  VComponentIcon: typeof import('vuetify/components')['VComponentIcon']
555
551
  VSvgIcon: typeof import('vuetify/components')['VSvgIcon']
556
552
  VLigatureIcon: typeof import('vuetify/components')['VLigatureIcon']
557
553
  VClassIcon: typeof import('vuetify/components')['VClassIcon']
554
+ VImg: typeof import('vuetify/components')['VImg']
555
+ VFab: typeof import('vuetify/components')['VFab']
556
+ VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
558
557
  VInput: typeof import('vuetify/components')['VInput']
558
+ VKbd: typeof import('vuetify/components')['VKbd']
559
559
  VItemGroup: typeof import('vuetify/components')['VItemGroup']
560
560
  VItem: typeof import('vuetify/components')['VItem']
561
- VLabel: typeof import('vuetify/components')['VLabel']
562
561
  VList: typeof import('vuetify/components')['VList']
563
562
  VListGroup: typeof import('vuetify/components')['VListGroup']
564
563
  VListImg: typeof import('vuetify/components')['VListImg']
@@ -568,57 +567,58 @@ declare module 'vue' {
568
567
  VListItemSubtitle: typeof import('vuetify/components')['VListItemSubtitle']
569
568
  VListItemTitle: typeof import('vuetify/components')['VListItemTitle']
570
569
  VListSubheader: typeof import('vuetify/components')['VListSubheader']
571
- VMain: typeof import('vuetify/components')['VMain']
572
570
  VMessages: typeof import('vuetify/components')['VMessages']
573
571
  VMenu: typeof import('vuetify/components')['VMenu']
574
- VOverlay: typeof import('vuetify/components')['VOverlay']
575
- VOtpInput: typeof import('vuetify/components')['VOtpInput']
572
+ VLabel: typeof import('vuetify/components')['VLabel']
573
+ VMain: typeof import('vuetify/components')['VMain']
576
574
  VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
577
575
  VPagination: typeof import('vuetify/components')['VPagination']
576
+ VOtpInput: typeof import('vuetify/components')['VOtpInput']
578
577
  VProgressCircular: typeof import('vuetify/components')['VProgressCircular']
578
+ VOverlay: typeof import('vuetify/components')['VOverlay']
579
579
  VProgressLinear: typeof import('vuetify/components')['VProgressLinear']
580
+ VRating: typeof import('vuetify/components')['VRating']
581
+ VRadioGroup: typeof import('vuetify/components')['VRadioGroup']
582
+ VSheet: typeof import('vuetify/components')['VSheet']
580
583
  VSelect: typeof import('vuetify/components')['VSelect']
581
584
  VSelectionControl: typeof import('vuetify/components')['VSelectionControl']
582
- VRadioGroup: typeof import('vuetify/components')['VRadioGroup']
583
- VRating: typeof import('vuetify/components')['VRating']
584
- VSkeletonLoader: typeof import('vuetify/components')['VSkeletonLoader']
585
585
  VSelectionControlGroup: typeof import('vuetify/components')['VSelectionControlGroup']
586
- VSheet: typeof import('vuetify/components')['VSheet']
587
586
  VSlider: typeof import('vuetify/components')['VSlider']
588
587
  VSlideGroup: typeof import('vuetify/components')['VSlideGroup']
589
588
  VSlideGroupItem: typeof import('vuetify/components')['VSlideGroupItem']
590
- VSystemBar: typeof import('vuetify/components')['VSystemBar']
589
+ VSkeletonLoader: typeof import('vuetify/components')['VSkeletonLoader']
591
590
  VStepper: typeof import('vuetify/components')['VStepper']
592
591
  VStepperActions: typeof import('vuetify/components')['VStepperActions']
593
592
  VStepperHeader: typeof import('vuetify/components')['VStepperHeader']
594
593
  VStepperItem: typeof import('vuetify/components')['VStepperItem']
595
594
  VStepperWindow: typeof import('vuetify/components')['VStepperWindow']
596
595
  VStepperWindowItem: typeof import('vuetify/components')['VStepperWindowItem']
597
- VTable: typeof import('vuetify/components')['VTable']
596
+ VSystemBar: typeof import('vuetify/components')['VSystemBar']
598
597
  VSnackbar: typeof import('vuetify/components')['VSnackbar']
599
598
  VSwitch: typeof import('vuetify/components')['VSwitch']
599
+ VTextarea: typeof import('vuetify/components')['VTextarea']
600
+ VTimeline: typeof import('vuetify/components')['VTimeline']
601
+ VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
602
+ VTextField: typeof import('vuetify/components')['VTextField']
603
+ VTable: typeof import('vuetify/components')['VTable']
600
604
  VTab: typeof import('vuetify/components')['VTab']
601
605
  VTabs: typeof import('vuetify/components')['VTabs']
602
606
  VTabsWindow: typeof import('vuetify/components')['VTabsWindow']
603
607
  VTabsWindowItem: typeof import('vuetify/components')['VTabsWindowItem']
604
- VTextarea: typeof import('vuetify/components')['VTextarea']
605
- VTextField: typeof import('vuetify/components')['VTextField']
606
608
  VToolbar: typeof import('vuetify/components')['VToolbar']
607
609
  VToolbarTitle: typeof import('vuetify/components')['VToolbarTitle']
608
610
  VToolbarItems: typeof import('vuetify/components')['VToolbarItems']
609
611
  VTooltip: typeof import('vuetify/components')['VTooltip']
610
612
  VWindow: typeof import('vuetify/components')['VWindow']
611
613
  VWindowItem: typeof import('vuetify/components')['VWindowItem']
612
- VTimeline: typeof import('vuetify/components')['VTimeline']
613
- VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
614
614
  VConfirmEdit: typeof import('vuetify/components')['VConfirmEdit']
615
- VDataIterator: typeof import('vuetify/components')['VDataIterator']
616
615
  VDefaultsProvider: typeof import('vuetify/components')['VDefaultsProvider']
617
- VForm: typeof import('vuetify/components')['VForm']
616
+ VDataIterator: typeof import('vuetify/components')['VDataIterator']
618
617
  VContainer: typeof import('vuetify/components')['VContainer']
619
618
  VCol: typeof import('vuetify/components')['VCol']
620
619
  VRow: typeof import('vuetify/components')['VRow']
621
620
  VSpacer: typeof import('vuetify/components')['VSpacer']
621
+ VForm: typeof import('vuetify/components')['VForm']
622
622
  VHover: typeof import('vuetify/components')['VHover']
623
623
  VLazy: typeof import('vuetify/components')['VLazy']
624
624
  VLayout: typeof import('vuetify/components')['VLayout']
@@ -632,8 +632,8 @@ declare module 'vue' {
632
632
  VSparkline: typeof import('vuetify/components')['VSparkline']
633
633
  VSpeedDial: typeof import('vuetify/components')['VSpeedDial']
634
634
  VThemeProvider: typeof import('vuetify/components')['VThemeProvider']
635
- VValidation: typeof import('vuetify/components')['VValidation']
636
635
  VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
636
+ VValidation: typeof import('vuetify/components')['VValidation']
637
637
  VFabTransition: typeof import('vuetify/components')['VFabTransition']
638
638
  VDialogBottomTransition: typeof import('vuetify/components')['VDialogBottomTransition']
639
639
  VDialogTopTransition: typeof import('vuetify/components')['VDialogTopTransition']
@@ -656,20 +656,20 @@ declare module 'vue' {
656
656
  VCalendarInterval: typeof import('vuetify/labs/components')['VCalendarInterval']
657
657
  VCalendarIntervalEvent: typeof import('vuetify/labs/components')['VCalendarIntervalEvent']
658
658
  VCalendarMonthDay: typeof import('vuetify/labs/components')['VCalendarMonthDay']
659
+ VNumberInput: typeof import('vuetify/labs/components')['VNumberInput']
659
660
  VFileUpload: typeof import('vuetify/labs/components')['VFileUpload']
660
661
  VFileUploadItem: typeof import('vuetify/labs/components')['VFileUploadItem']
662
+ VTimePicker: typeof import('vuetify/labs/components')['VTimePicker']
663
+ VTimePickerClock: typeof import('vuetify/labs/components')['VTimePickerClock']
664
+ VTimePickerControls: typeof import('vuetify/labs/components')['VTimePickerControls']
661
665
  VPicker: typeof import('vuetify/labs/components')['VPicker']
662
666
  VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
663
667
  VStepperVertical: typeof import('vuetify/labs/components')['VStepperVertical']
664
668
  VStepperVerticalItem: typeof import('vuetify/labs/components')['VStepperVerticalItem']
665
669
  VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
666
- VNumberInput: typeof import('vuetify/labs/components')['VNumberInput']
667
670
  VTreeview: typeof import('vuetify/labs/components')['VTreeview']
668
671
  VTreeviewItem: typeof import('vuetify/labs/components')['VTreeviewItem']
669
672
  VTreeviewGroup: typeof import('vuetify/labs/components')['VTreeviewGroup']
670
- VTimePicker: typeof import('vuetify/labs/components')['VTimePicker']
671
- VTimePickerClock: typeof import('vuetify/labs/components')['VTimePickerClock']
672
- VTimePickerControls: typeof import('vuetify/labs/components')['VTimePickerControls']
673
673
  VDateInput: typeof import('vuetify/labs/components')['VDateInput']
674
674
  VSnackbarQueue: typeof import('vuetify/labs/components')['VSnackbarQueue']
675
675
  VPullToRefresh: typeof import('vuetify/labs/components')['VPullToRefresh']
@@ -51,7 +51,7 @@ export const VDateInput = genericComponent()({
51
51
  const adapter = useDate();
52
52
  const {
53
53
  mobile
54
- } = useDisplay();
54
+ } = useDisplay(props);
55
55
  const {
56
56
  isFocused,
57
57
  focus,
@@ -99,7 +99,7 @@ export const VDateInput = genericComponent()({
99
99
  return;
100
100
  }
101
101
  const target = e.target;
102
- model.value = target.value === '' ? null : target.value;
102
+ model.value = adapter.isValid(target.value) ? target.value : null;
103
103
  }
104
104
  function onClick(e) {
105
105
  e.preventDefault();
@@ -123,10 +123,6 @@ export const VDateInput = genericComponent()({
123
123
  if (value != null) return;
124
124
  model.value = null;
125
125
  }
126
- function onUpdateMenuModel(isMenuOpen) {
127
- if (isMenuOpen) return;
128
- isEditingInput.value = false;
129
- }
130
126
  function onBlur() {
131
127
  blur();
132
128
 
@@ -159,7 +155,7 @@ export const VDateInput = genericComponent()({
159
155
  ...slots,
160
156
  default: () => _createVNode(_Fragment, null, [_createVNode(VMenu, {
161
157
  "modelValue": menu.value,
162
- "onUpdate:modelValue": [$event => menu.value = $event, onUpdateMenuModel],
158
+ "onUpdate:modelValue": $event => menu.value = $event,
163
159
  "activator": "parent",
164
160
  "min-width": "0",
165
161
  "eager": isFocused.value,