vuetify 3.10.11 → 3.10.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/json/attributes.json +3371 -3371
- package/dist/json/importMap-labs.json +26 -26
- package/dist/json/importMap.json +162 -162
- package/dist/json/web-types.json +6094 -6094
- package/dist/vuetify-labs.cjs +20 -7
- package/dist/vuetify-labs.css +3825 -3825
- package/dist/vuetify-labs.d.ts +61 -61
- package/dist/vuetify-labs.esm.js +20 -7
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +20 -7
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +20 -7
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +2277 -2277
- package/dist/vuetify.d.ts +61 -61
- package/dist/vuetify.esm.js +20 -7
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +20 -7
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +23 -23
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VSelect/VSelect.js +14 -3
- package/lib/components/VSelect/VSelect.js.map +1 -1
- package/lib/composables/autocomplete.js +1 -0
- package/lib/composables/autocomplete.js.map +1 -1
- package/lib/directives/tooltip/index.js +5 -2
- package/lib/directives/tooltip/index.js.map +1 -1
- package/lib/entry-bundler.js +1 -1
- package/lib/framework.d.ts +61 -61
- package/lib/framework.js +1 -1
- package/lib/util/helpers.js +1 -1
- package/lib/util/helpers.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Fragment as _Fragment,
|
|
1
|
+
import { Fragment as _Fragment, createElementVNode as _createElementVNode, createVNode as _createVNode, mergeProps as _mergeProps, createTextVNode as _createTextVNode } from "vue";
|
|
2
2
|
// Styles
|
|
3
3
|
import "./VSelect.css";
|
|
4
4
|
|
|
@@ -15,6 +15,7 @@ import { VMenu } from "../VMenu/index.js";
|
|
|
15
15
|
import { makeVTextFieldProps, VTextField } from "../VTextField/VTextField.js";
|
|
16
16
|
import { VVirtualScroll } from "../VVirtualScroll/index.js"; // Composables
|
|
17
17
|
import { useScrolling } from "./useScrolling.js";
|
|
18
|
+
import { useAutocomplete } from "../../composables/autocomplete.js";
|
|
18
19
|
import { useForm } from "../../composables/form.js";
|
|
19
20
|
import { forwardRefs } from "../../composables/forwardRefs.js";
|
|
20
21
|
import { IconValue } from "../../composables/icons.js";
|
|
@@ -98,6 +99,7 @@ export const VSelect = genericComponent()({
|
|
|
98
99
|
return typeof props.counterValue === 'function' ? props.counterValue(model.value) : typeof props.counterValue === 'number' ? props.counterValue : model.value.length;
|
|
99
100
|
});
|
|
100
101
|
const form = useForm(props);
|
|
102
|
+
const autocomplete = useAutocomplete(props);
|
|
101
103
|
const selectedValues = computed(() => model.value.map(selection => selection.value));
|
|
102
104
|
const isFocused = shallowRef(false);
|
|
103
105
|
let keyboardLookupPrefix = '';
|
|
@@ -290,7 +292,8 @@ export const VSelect = genericComponent()({
|
|
|
290
292
|
return _createVNode(VTextField, _mergeProps({
|
|
291
293
|
"ref": vTextFieldRef
|
|
292
294
|
}, textFieldProps, {
|
|
293
|
-
"modelValue": model.value.map(v => v.props.
|
|
295
|
+
"modelValue": model.value.map(v => v.props.title).join(', '),
|
|
296
|
+
"name": undefined,
|
|
294
297
|
"onUpdate:modelValue": onModelUpdate,
|
|
295
298
|
"focused": isFocused.value,
|
|
296
299
|
"onUpdate:focused": $event => isFocused.value = $event,
|
|
@@ -317,7 +320,15 @@ export const VSelect = genericComponent()({
|
|
|
317
320
|
"title": ariaLabel.value
|
|
318
321
|
}), {
|
|
319
322
|
...slots,
|
|
320
|
-
default: () => _createElementVNode(_Fragment, null, [
|
|
323
|
+
default: () => _createElementVNode(_Fragment, null, [_createElementVNode("select", {
|
|
324
|
+
"hidden": true,
|
|
325
|
+
"multiple": props.multiple,
|
|
326
|
+
"name": autocomplete.fieldName.value
|
|
327
|
+
}, [items.value.map(item => _createElementVNode("option", {
|
|
328
|
+
"key": item.value,
|
|
329
|
+
"value": item.value,
|
|
330
|
+
"selected": selectedValues.value.includes(item.value)
|
|
331
|
+
}, null))]), _createVNode(VMenu, _mergeProps({
|
|
321
332
|
"id": menuId.value,
|
|
322
333
|
"ref": vMenuRef,
|
|
323
334
|
"modelValue": menu.value,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VSelect.js","names":["VDialogTransition","VAvatar","VCheckboxBtn","VChip","VDefaultsProvider","VDivider","VIcon","VList","VListItem","VListSubheader","VMenu","makeVTextFieldProps","VTextField","VVirtualScroll","useScrolling","useForm","forwardRefs","IconValue","makeItemsProps","useItems","useLocale","makeMenuActivatorProps","useMenuActivator","useProxiedModel","makeTransitionProps","computed","mergeProps","nextTick","ref","shallowRef","watch","camelizeProps","checkPrintable","deepEqual","ensureValidVNode","genericComponent","IN_BROWSER","matchesSelector","omit","propsFactory","useRender","wrapInArray","makeSelectProps","chips","Boolean","closableChips","eager","hideNoData","hideSelected","listProps","type","Object","menu","menuIcon","default","menuProps","multiple","noDataText","String","openOnClear","itemColor","noAutoScroll","itemChildren","makeVSelectProps","modelValue","role","transition","component","VSelect","name","props","emits","focused","value","ue","setup","_ref","slots","t","vTextFieldRef","vMenuRef","vVirtualScrollRef","items","transformIn","transformOut","model","v","transformed","counterValue","length","form","selectedValues","map","selection","isFocused","keyboardLookupPrefix","keyboardLookupIndex","keyboardLookupLastTime","displayItems","filter","item","some","s","valueComparator","menuDisabled","isReadonly","isDisabled","_menu","get","set","ΨopenChildren","size","menuId","ariaExpanded","ariaControls","ariaLabel","computedMenuProps","activatorProps","listRef","listEvents","onClear","e","onMousedownControl","onListKeydown","onKeydown","key","includes","preventDefault","focus","KEYBOARD_LOOKUP_THRESHOLD","now","performance","toLowerCase","findItem","result","findItemBase","at","slice","i","_item","title","startsWith","undefined","index","select","arguments","disabled","findIndex","add","splice","onBlur","$el","contains","relatedTarget","onAfterEnter","calculateVisibleItems","onAfterLeave","onFocusin","onModelUpdate","find","window","requestAnimationFrame","scrollToIndex","newVal","oldVal","hasChips","chip","hasList","isDirty","textFieldProps","filterProps","placeholder","label","persistentPlaceholder","_createVNode","_mergeProps","join","$event","externalValue","class","style","_createElementVNode","_Fragment","color","_ref2","itemRef","camelizedProps","itemProps","onClick","divider","raw","subheader","prepend","_ref3","isSelected","event","prependAvatar","prependIcon","onChipClose","stopPropagation","slotProps","onMousedown","hasSlot","slotContent","closable","text","_createTextVNode","append-inner","_len","args","Array","_key","fieldIconColor"],"sources":["../../../src/components/VSelect/VSelect.tsx"],"sourcesContent":["// Styles\nimport './VSelect.sass'\n\n// Components\nimport { VDialogTransition } from '@/components/transitions'\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 { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\nimport { VVirtualScroll } from '@/components/VVirtualScroll'\n\n// Composables\nimport { useScrolling } from './useScrolling'\nimport { useForm } from '@/composables/form'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { IconValue } from '@/composables/icons'\nimport { makeItemsProps, useItems } from '@/composables/list-items'\nimport { useLocale } from '@/composables/locale'\nimport { makeMenuActivatorProps, useMenuActivator } from '@/composables/menuActivator'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeTransitionProps } from '@/composables/transition'\n\n// Utilities\nimport { computed, mergeProps, nextTick, ref, shallowRef, watch } from 'vue'\nimport {\n camelizeProps,\n checkPrintable,\n deepEqual,\n ensureValidVNode,\n genericComponent,\n IN_BROWSER,\n matchesSelector,\n omit,\n propsFactory,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { Component, 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> = [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 makeSelectProps = propsFactory({\n chips: Boolean,\n closableChips: Boolean,\n eager: Boolean,\n hideNoData: Boolean,\n hideSelected: Boolean,\n listProps: {\n type: Object as PropType<VList['$props']>,\n },\n menu: Boolean,\n menuIcon: {\n type: IconValue,\n default: '$dropdown',\n },\n menuProps: {\n type: Object as PropType<VMenu['$props']>,\n },\n multiple: Boolean,\n noDataText: {\n type: String,\n default: '$vuetify.noDataText',\n },\n openOnClear: Boolean,\n itemColor: String,\n noAutoScroll: Boolean,\n\n ...makeMenuActivatorProps(),\n ...makeItemsProps({ itemChildren: false }),\n}, 'Select')\n\nexport const makeVSelectProps = propsFactory({\n ...makeSelectProps(),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n role: 'combobox',\n }), ['validationValue', 'dirty', 'appendInnerIcon']),\n ...makeTransitionProps({ transition: { component: VDialogTransition as Component } }),\n}, 'VSelect')\n\ntype ItemType<T> = T extends readonly (infer U)[] ? U : never\n\nexport const VSelect = 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 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: 'VSelect',\n\n props: makeVSelectProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (value: any) => true,\n 'update:menu': (ue: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref<VTextField>()\n const vMenuRef = ref<VMenu>()\n const vVirtualScrollRef = ref<VVirtualScroll>()\n const { items, transformIn, transformOut } = useItems(props)\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 selectedValues = computed(() => model.value.map(selection => selection.value))\n const isFocused = shallowRef(false)\n\n let keyboardLookupPrefix = ''\n let keyboardLookupIndex = -1\n let keyboardLookupLastTime: number\n\n const displayItems = computed(() => {\n if (props.hideSelected) {\n return items.value.filter(item => !model.value.some(s => (props.valueComparator || deepEqual)(s, item)))\n }\n return items.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 const computedMenuProps = computed(() => {\n return {\n ...props.menuProps,\n activatorProps: {\n ...(props.menuProps?.activatorProps || {}),\n 'aria-haspopup': 'listbox', // Set aria-haspopup to 'listbox'\n },\n }\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 function onMousedownControl () {\n if (menuDisabled.value) return\n\n menu.value = !menu.value\n }\n function onListKeydown (e: KeyboardEvent) {\n if (checkPrintable(e)) {\n onKeydown(e)\n }\n }\n function onKeydown (e: KeyboardEvent) {\n if (!e.key || form.isReadonly.value) return\n\n if (['Enter', ' ', 'ArrowDown', 'ArrowUp', 'Home', 'End'].includes(e.key)) {\n e.preventDefault()\n }\n\n if (['Enter', 'ArrowDown', ' '].includes(e.key)) {\n menu.value = true\n }\n\n if (['Escape', 'Tab'].includes(e.key)) {\n menu.value = false\n }\n\n if (e.key === 'Home') {\n listRef.value?.focus('first')\n } else if (e.key === 'End') {\n listRef.value?.focus('last')\n }\n\n // html select hotkeys\n const KEYBOARD_LOOKUP_THRESHOLD = 1000 // milliseconds\n\n if (!checkPrintable(e)) return\n\n const now = performance.now()\n if (now - keyboardLookupLastTime > KEYBOARD_LOOKUP_THRESHOLD) {\n keyboardLookupPrefix = ''\n keyboardLookupIndex = -1\n }\n keyboardLookupPrefix += e.key.toLowerCase()\n keyboardLookupLastTime = now\n\n const items = displayItems.value\n function findItem () {\n let result = findItemBase()\n if (result) return result\n\n if (keyboardLookupPrefix.at(-1) === keyboardLookupPrefix.at(-2)) {\n // No matches but we have a repeated letter, try the next item with that prefix\n keyboardLookupPrefix = keyboardLookupPrefix.slice(0, -1)\n result = findItemBase()\n if (result) return result\n }\n\n // Still nothing, wrap around to the top\n keyboardLookupIndex = -1\n result = findItemBase()\n if (result) return result\n\n // Still nothing, try just the new letter\n keyboardLookupPrefix = e.key.toLowerCase()\n return findItemBase()\n }\n function findItemBase () {\n for (let i = keyboardLookupIndex + 1; i < items.length; i++) {\n const _item = items[i]\n if (_item.title.toLowerCase().startsWith(keyboardLookupPrefix)) {\n return [_item, i] as const\n }\n }\n return undefined\n }\n\n const result = findItem()\n if (!result) return\n\n const [item, index] = result\n keyboardLookupIndex = index\n listRef.value?.focus(index)\n if (!props.multiple) {\n model.value = [item]\n }\n }\n\n /** @param set - null means toggle */\n function select (item: ListItem, set: boolean | null = true) {\n if (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 } else {\n const add = set !== false\n model.value = add ? [item] : []\n\n nextTick(() => {\n menu.value = false\n })\n }\n }\n function onBlur (e: FocusEvent) {\n if (!listRef.value?.$el.contains(e.relatedTarget as HTMLElement)) {\n menu.value = false\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 }\n function onFocusin (e: FocusEvent) {\n isFocused.value = true\n }\n function onModelUpdate (v: any) {\n if (v == null) model.value = []\n else if (matchesSelector(vTextFieldRef.value, ':autofill') || matchesSelector(vTextFieldRef.value, ':-webkit-autofill')) {\n const item = items.value.find(item => item.title === v)\n if (item) {\n select(item)\n }\n } else if (vTextFieldRef.value) {\n vTextFieldRef.value.value = ''\n }\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 => (props.valueComparator || deepEqual)(s.value, item.value))\n )\n IN_BROWSER && !props.noAutoScroll && window.requestAnimationFrame(() => {\n index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index)\n })\n }\n })\n\n watch(items, (newVal, oldVal) => {\n if (menu.value) return\n\n if (isFocused.value && props.hideNoData && !oldVal.length && newVal.length) {\n menu.value = true\n }\n })\n\n useRender(() => {\n const hasChips = !!(props.chips || slots.chip)\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 const placeholder = isDirty || (\n !isFocused.value &&\n props.label &&\n !props.persistentPlaceholder\n ) ? undefined : props.placeholder\n\n return (\n <VTextField\n ref={ vTextFieldRef }\n { ...textFieldProps }\n modelValue={ model.value.map(v => v.props.value).join(', ') }\n onUpdate:modelValue={ onModelUpdate }\n v-model:focused={ isFocused.value }\n validationValue={ model.externalValue }\n counterValue={ counterValue.value }\n dirty={ isDirty }\n class={[\n 'v-select',\n {\n 'v-select--active-menu': menu.value,\n 'v-select--chips': !!props.chips,\n [`v-select--${props.multiple ? 'multiple' : 'single'}`]: true,\n 'v-select--selected': model.value.length,\n 'v-select--selection-slot': !!slots.selection,\n },\n props.class,\n ]}\n style={ props.style }\n inputmode=\"none\"\n placeholder={ placeholder }\n onClick:clear={ onClear }\n onMousedown:control={ onMousedownControl }\n onBlur={ onBlur }\n onKeydown={ onKeydown }\n aria-expanded={ ariaExpanded.value }\n aria-controls={ ariaControls.value }\n aria-label={ ariaLabel.value }\n title={ ariaLabel.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-select__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 { ...computedMenuProps.value }\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 tabindex=\"-1\"\n selectable\n aria-live=\"polite\"\n aria-label={ `${props.label}-list` }\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 camelizedProps = camelizeProps(item.props)\n\n const itemProps = mergeProps(item.props, {\n ref: itemRef,\n key: item.value,\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 { camelizedProps.prependAvatar && (\n <VAvatar image={ camelizedProps.prependAvatar } />\n )}\n\n { camelizedProps.prependIcon && (\n <VIcon icon={ camelizedProps.prependIcon } />\n )}\n </>\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 ? !!slots.chip : !!slots.selection\n const slotContent = hasSlot\n ? ensureValidVNode(\n hasChips\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 key={ item.value } class=\"v-select__selection\">\n { hasChips ? (\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-select__selection-text\">\n { item.title }\n { props.multiple && (index < model.value.length - 1) && (\n <span class=\"v-select__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-select__menu-icon\"\n color={ vTextFieldRef.value?.fieldIconColor }\n icon={ props.menuIcon }\n />\n ) : undefined }\n </>\n ),\n }}\n </VTextField>\n )\n })\n\n return forwardRefs({\n isFocused,\n menu,\n select,\n }, vTextFieldRef)\n },\n})\n\nexport type VSelect = InstanceType<typeof VSelect>\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"VSelect.js","names":["VDialogTransition","VAvatar","VCheckboxBtn","VChip","VDefaultsProvider","VDivider","VIcon","VList","VListItem","VListSubheader","VMenu","makeVTextFieldProps","VTextField","VVirtualScroll","useScrolling","useAutocomplete","useForm","forwardRefs","IconValue","makeItemsProps","useItems","useLocale","makeMenuActivatorProps","useMenuActivator","useProxiedModel","makeTransitionProps","computed","mergeProps","nextTick","ref","shallowRef","watch","camelizeProps","checkPrintable","deepEqual","ensureValidVNode","genericComponent","IN_BROWSER","matchesSelector","omit","propsFactory","useRender","wrapInArray","makeSelectProps","chips","Boolean","closableChips","eager","hideNoData","hideSelected","listProps","type","Object","menu","menuIcon","default","menuProps","multiple","noDataText","String","openOnClear","itemColor","noAutoScroll","itemChildren","makeVSelectProps","modelValue","role","transition","component","VSelect","name","props","emits","focused","value","ue","setup","_ref","slots","t","vTextFieldRef","vMenuRef","vVirtualScrollRef","items","transformIn","transformOut","model","v","transformed","counterValue","length","form","autocomplete","selectedValues","map","selection","isFocused","keyboardLookupPrefix","keyboardLookupIndex","keyboardLookupLastTime","displayItems","filter","item","some","s","valueComparator","menuDisabled","isReadonly","isDisabled","_menu","get","set","ΨopenChildren","size","menuId","ariaExpanded","ariaControls","ariaLabel","computedMenuProps","activatorProps","listRef","listEvents","onClear","e","onMousedownControl","onListKeydown","onKeydown","key","includes","preventDefault","focus","KEYBOARD_LOOKUP_THRESHOLD","now","performance","toLowerCase","findItem","result","findItemBase","at","slice","i","_item","title","startsWith","undefined","index","select","arguments","disabled","findIndex","add","splice","onBlur","$el","contains","relatedTarget","onAfterEnter","calculateVisibleItems","onAfterLeave","onFocusin","onModelUpdate","find","window","requestAnimationFrame","scrollToIndex","newVal","oldVal","hasChips","chip","hasList","isDirty","textFieldProps","filterProps","placeholder","label","persistentPlaceholder","_createVNode","_mergeProps","join","$event","externalValue","class","style","_createElementVNode","_Fragment","fieldName","color","_ref2","itemRef","camelizedProps","itemProps","onClick","divider","raw","subheader","prepend","_ref3","isSelected","event","prependAvatar","prependIcon","onChipClose","stopPropagation","slotProps","onMousedown","hasSlot","slotContent","closable","text","_createTextVNode","append-inner","_len","args","Array","_key","fieldIconColor"],"sources":["../../../src/components/VSelect/VSelect.tsx"],"sourcesContent":["// Styles\nimport './VSelect.sass'\n\n// Components\nimport { VDialogTransition } from '@/components/transitions'\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 { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\nimport { VVirtualScroll } from '@/components/VVirtualScroll'\n\n// Composables\nimport { useScrolling } from './useScrolling'\nimport { useAutocomplete } from '@/composables/autocomplete'\nimport { useForm } from '@/composables/form'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { IconValue } from '@/composables/icons'\nimport { makeItemsProps, useItems } from '@/composables/list-items'\nimport { useLocale } from '@/composables/locale'\nimport { makeMenuActivatorProps, useMenuActivator } from '@/composables/menuActivator'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeTransitionProps } from '@/composables/transition'\n\n// Utilities\nimport { computed, mergeProps, nextTick, ref, shallowRef, watch } from 'vue'\nimport {\n camelizeProps,\n checkPrintable,\n deepEqual,\n ensureValidVNode,\n genericComponent,\n IN_BROWSER,\n matchesSelector,\n omit,\n propsFactory,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { Component, 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> = [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 makeSelectProps = propsFactory({\n chips: Boolean,\n closableChips: Boolean,\n eager: Boolean,\n hideNoData: Boolean,\n hideSelected: Boolean,\n listProps: {\n type: Object as PropType<VList['$props']>,\n },\n menu: Boolean,\n menuIcon: {\n type: IconValue,\n default: '$dropdown',\n },\n menuProps: {\n type: Object as PropType<VMenu['$props']>,\n },\n multiple: Boolean,\n noDataText: {\n type: String,\n default: '$vuetify.noDataText',\n },\n openOnClear: Boolean,\n itemColor: String,\n noAutoScroll: Boolean,\n\n ...makeMenuActivatorProps(),\n ...makeItemsProps({ itemChildren: false }),\n}, 'Select')\n\nexport const makeVSelectProps = propsFactory({\n ...makeSelectProps(),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n role: 'combobox',\n }), ['validationValue', 'dirty', 'appendInnerIcon']),\n ...makeTransitionProps({ transition: { component: VDialogTransition as Component } }),\n}, 'VSelect')\n\ntype ItemType<T> = T extends readonly (infer U)[] ? U : never\n\nexport const VSelect = 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 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: 'VSelect',\n\n props: makeVSelectProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (value: any) => true,\n 'update:menu': (ue: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref<VTextField>()\n const vMenuRef = ref<VMenu>()\n const vVirtualScrollRef = ref<VVirtualScroll>()\n const { items, transformIn, transformOut } = useItems(props)\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 autocomplete = useAutocomplete(props)\n const selectedValues = computed(() => model.value.map(selection => selection.value))\n const isFocused = shallowRef(false)\n\n let keyboardLookupPrefix = ''\n let keyboardLookupIndex = -1\n let keyboardLookupLastTime: number\n\n const displayItems = computed(() => {\n if (props.hideSelected) {\n return items.value.filter(item => !model.value.some(s => (props.valueComparator || deepEqual)(s, item)))\n }\n return items.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 const computedMenuProps = computed(() => {\n return {\n ...props.menuProps,\n activatorProps: {\n ...(props.menuProps?.activatorProps || {}),\n 'aria-haspopup': 'listbox', // Set aria-haspopup to 'listbox'\n },\n }\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 function onMousedownControl () {\n if (menuDisabled.value) return\n\n menu.value = !menu.value\n }\n function onListKeydown (e: KeyboardEvent) {\n if (checkPrintable(e)) {\n onKeydown(e)\n }\n }\n function onKeydown (e: KeyboardEvent) {\n if (!e.key || form.isReadonly.value) return\n\n if (['Enter', ' ', 'ArrowDown', 'ArrowUp', 'Home', 'End'].includes(e.key)) {\n e.preventDefault()\n }\n\n if (['Enter', 'ArrowDown', ' '].includes(e.key)) {\n menu.value = true\n }\n\n if (['Escape', 'Tab'].includes(e.key)) {\n menu.value = false\n }\n\n if (e.key === 'Home') {\n listRef.value?.focus('first')\n } else if (e.key === 'End') {\n listRef.value?.focus('last')\n }\n\n // html select hotkeys\n const KEYBOARD_LOOKUP_THRESHOLD = 1000 // milliseconds\n\n if (!checkPrintable(e)) return\n\n const now = performance.now()\n if (now - keyboardLookupLastTime > KEYBOARD_LOOKUP_THRESHOLD) {\n keyboardLookupPrefix = ''\n keyboardLookupIndex = -1\n }\n keyboardLookupPrefix += e.key.toLowerCase()\n keyboardLookupLastTime = now\n\n const items = displayItems.value\n function findItem () {\n let result = findItemBase()\n if (result) return result\n\n if (keyboardLookupPrefix.at(-1) === keyboardLookupPrefix.at(-2)) {\n // No matches but we have a repeated letter, try the next item with that prefix\n keyboardLookupPrefix = keyboardLookupPrefix.slice(0, -1)\n result = findItemBase()\n if (result) return result\n }\n\n // Still nothing, wrap around to the top\n keyboardLookupIndex = -1\n result = findItemBase()\n if (result) return result\n\n // Still nothing, try just the new letter\n keyboardLookupPrefix = e.key.toLowerCase()\n return findItemBase()\n }\n function findItemBase () {\n for (let i = keyboardLookupIndex + 1; i < items.length; i++) {\n const _item = items[i]\n if (_item.title.toLowerCase().startsWith(keyboardLookupPrefix)) {\n return [_item, i] as const\n }\n }\n return undefined\n }\n\n const result = findItem()\n if (!result) return\n\n const [item, index] = result\n keyboardLookupIndex = index\n listRef.value?.focus(index)\n if (!props.multiple) {\n model.value = [item]\n }\n }\n\n /** @param set - null means toggle */\n function select (item: ListItem, set: boolean | null = true) {\n if (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 } else {\n const add = set !== false\n model.value = add ? [item] : []\n\n nextTick(() => {\n menu.value = false\n })\n }\n }\n function onBlur (e: FocusEvent) {\n if (!listRef.value?.$el.contains(e.relatedTarget as HTMLElement)) {\n menu.value = false\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 }\n function onFocusin (e: FocusEvent) {\n isFocused.value = true\n }\n function onModelUpdate (v: any) {\n if (v == null) model.value = []\n else if (matchesSelector(vTextFieldRef.value, ':autofill') || matchesSelector(vTextFieldRef.value, ':-webkit-autofill')) {\n const item = items.value.find(item => item.title === v)\n if (item) {\n select(item)\n }\n } else if (vTextFieldRef.value) {\n vTextFieldRef.value.value = ''\n }\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 => (props.valueComparator || deepEqual)(s.value, item.value))\n )\n IN_BROWSER && !props.noAutoScroll && window.requestAnimationFrame(() => {\n index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index)\n })\n }\n })\n\n watch(items, (newVal, oldVal) => {\n if (menu.value) return\n\n if (isFocused.value && props.hideNoData && !oldVal.length && newVal.length) {\n menu.value = true\n }\n })\n\n useRender(() => {\n const hasChips = !!(props.chips || slots.chip)\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 const placeholder = isDirty || (\n !isFocused.value &&\n props.label &&\n !props.persistentPlaceholder\n ) ? undefined : props.placeholder\n\n return (\n <VTextField\n ref={ vTextFieldRef }\n { ...textFieldProps }\n modelValue={ model.value.map(v => v.props.title).join(', ') }\n name={ undefined }\n onUpdate:modelValue={ onModelUpdate }\n v-model:focused={ isFocused.value }\n validationValue={ model.externalValue }\n counterValue={ counterValue.value }\n dirty={ isDirty }\n class={[\n 'v-select',\n {\n 'v-select--active-menu': menu.value,\n 'v-select--chips': !!props.chips,\n [`v-select--${props.multiple ? 'multiple' : 'single'}`]: true,\n 'v-select--selected': model.value.length,\n 'v-select--selection-slot': !!slots.selection,\n },\n props.class,\n ]}\n style={ props.style }\n inputmode=\"none\"\n placeholder={ placeholder }\n onClick:clear={ onClear }\n onMousedown:control={ onMousedownControl }\n onBlur={ onBlur }\n onKeydown={ onKeydown }\n aria-expanded={ ariaExpanded.value }\n aria-controls={ ariaControls.value }\n aria-label={ ariaLabel.value }\n title={ ariaLabel.value }\n >\n {{\n ...slots,\n default: () => (\n <>\n <select\n hidden\n multiple={ props.multiple }\n name={ autocomplete.fieldName.value }\n >\n { items.value.map(item => (\n <option\n key={ item.value }\n value={ item.value }\n selected={ selectedValues.value.includes(item.value) }\n />\n ))}\n </select>\n\n <VMenu\n id={ menuId.value }\n ref={ vMenuRef }\n v-model={ menu.value }\n activator=\"parent\"\n contentClass=\"v-select__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 { ...computedMenuProps.value }\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 tabindex=\"-1\"\n selectable\n aria-live=\"polite\"\n aria-label={ `${props.label}-list` }\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 camelizedProps = camelizeProps(item.props)\n\n const itemProps = mergeProps(item.props, {\n ref: itemRef,\n key: item.value,\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 { camelizedProps.prependAvatar && (\n <VAvatar image={ camelizedProps.prependAvatar } />\n )}\n\n { camelizedProps.prependIcon && (\n <VIcon icon={ camelizedProps.prependIcon } />\n )}\n </>\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 ? !!slots.chip : !!slots.selection\n const slotContent = hasSlot\n ? ensureValidVNode(\n hasChips\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 key={ item.value } class=\"v-select__selection\">\n { hasChips ? (\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-select__selection-text\">\n { item.title }\n { props.multiple && (index < model.value.length - 1) && (\n <span class=\"v-select__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-select__menu-icon\"\n color={ vTextFieldRef.value?.fieldIconColor }\n icon={ props.menuIcon }\n />\n ) : undefined }\n </>\n ),\n }}\n </VTextField>\n )\n })\n\n return forwardRefs({\n isFocused,\n menu,\n select,\n }, vTextFieldRef)\n },\n})\n\nexport type VSelect = InstanceType<typeof VSelect>\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -11,6 +11,7 @@ export function useAutocomplete(props) {
|
|
|
11
11
|
const reloadTrigger = shallowRef(0);
|
|
12
12
|
const isSuppressing = toRef(() => props.autocomplete === 'suppress');
|
|
13
13
|
const fieldName = toRef(() => {
|
|
14
|
+
if (!props.name) return undefined;
|
|
14
15
|
return isSuppressing.value ? `${props.name}-${uniqueId}-${reloadTrigger.value}` : props.name;
|
|
15
16
|
});
|
|
16
17
|
const fieldAutocomplete = toRef(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autocomplete.js","names":["shallowRef","toRef","useId","propsFactory","makeAutocompleteProps","autocomplete","String","useAutocomplete","props","uniqueId","reloadTrigger","isSuppressing","fieldName","
|
|
1
|
+
{"version":3,"file":"autocomplete.js","names":["shallowRef","toRef","useId","propsFactory","makeAutocompleteProps","autocomplete","String","useAutocomplete","props","uniqueId","reloadTrigger","isSuppressing","fieldName","name","undefined","value","fieldAutocomplete","update","Date","getTime"],"sources":["../../src/composables/autocomplete.ts"],"sourcesContent":["// Utilities\nimport { shallowRef, toRef, useId } from 'vue'\nimport { propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\nexport interface InputAutocompleteProps {\n autocomplete: 'suppress' | string | undefined\n name?: string\n}\n\n// Composables\nexport const makeAutocompleteProps = propsFactory({\n autocomplete: String as PropType<'suppress' | string>,\n}, 'autocomplete')\n\nexport function useAutocomplete (props: InputAutocompleteProps) {\n const uniqueId = useId()\n const reloadTrigger = shallowRef(0)\n\n const isSuppressing = toRef(() => props.autocomplete === 'suppress')\n\n const fieldName = toRef(() => {\n if (!props.name) return undefined\n\n return isSuppressing.value\n ? `${props.name}-${uniqueId}-${reloadTrigger.value}`\n : props.name\n })\n\n const fieldAutocomplete = toRef(() => {\n return isSuppressing.value\n ? 'off'\n : props.autocomplete\n })\n\n return {\n isSuppressing,\n fieldAutocomplete,\n fieldName,\n update: () => reloadTrigger.value = new Date().getTime(),\n }\n}\n"],"mappings":"AAAA;AACA,SAASA,UAAU,EAAEC,KAAK,EAAEC,KAAK,QAAQ,KAAK;AAAA,SACrCC,YAAY,4BAErB;AAGA;AAMA;AACA,OAAO,MAAMC,qBAAqB,GAAGD,YAAY,CAAC;EAChDE,YAAY,EAAEC;AAChB,CAAC,EAAE,cAAc,CAAC;AAElB,OAAO,SAASC,eAAeA,CAAEC,KAA6B,EAAE;EAC9D,MAAMC,QAAQ,GAAGP,KAAK,CAAC,CAAC;EACxB,MAAMQ,aAAa,GAAGV,UAAU,CAAC,CAAC,CAAC;EAEnC,MAAMW,aAAa,GAAGV,KAAK,CAAC,MAAMO,KAAK,CAACH,YAAY,KAAK,UAAU,CAAC;EAEpE,MAAMO,SAAS,GAAGX,KAAK,CAAC,MAAM;IAC5B,IAAI,CAACO,KAAK,CAACK,IAAI,EAAE,OAAOC,SAAS;IAEjC,OAAOH,aAAa,CAACI,KAAK,GACtB,GAAGP,KAAK,CAACK,IAAI,IAAIJ,QAAQ,IAAIC,aAAa,CAACK,KAAK,EAAE,GAClDP,KAAK,CAACK,IAAI;EAChB,CAAC,CAAC;EAEF,MAAMG,iBAAiB,GAAGf,KAAK,CAAC,MAAM;IACpC,OAAOU,aAAa,CAACI,KAAK,GACtB,KAAK,GACLP,KAAK,CAACH,YAAY;EACxB,CAAC,CAAC;EAEF,OAAO;IACLM,aAAa;IACbK,iBAAiB;IACjBJ,SAAS;IACTK,MAAM,EAAEA,CAAA,KAAMP,aAAa,CAACK,KAAK,GAAG,IAAIG,IAAI,CAAC,CAAC,CAACC,OAAO,CAAC;EACzD,CAAC;AACH","ignoreList":[]}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
// Components
|
|
2
2
|
import { VTooltip } from "../../components/VTooltip/index.js"; // Composables
|
|
3
|
-
import { useDirectiveComponent } from "../../composables/directiveComponent.js"; //
|
|
3
|
+
import { useDirectiveComponent } from "../../composables/directiveComponent.js"; // Utilities
|
|
4
|
+
import { isObject } from "../../util/index.js"; // Types
|
|
4
5
|
export const Tooltip = useDirectiveComponent(VTooltip, binding => {
|
|
6
|
+
const disabled = isObject(binding.value) ? !binding.value.text : ['', false, null].includes(binding.value); // undefined means true
|
|
7
|
+
|
|
5
8
|
return {
|
|
6
|
-
activator: 'parent',
|
|
9
|
+
activator: disabled ? null : 'parent',
|
|
7
10
|
location: binding.arg?.replace('-', ' '),
|
|
8
11
|
text: typeof binding.value === 'boolean' ? undefined : binding.value
|
|
9
12
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["VTooltip","useDirectiveComponent","Tooltip","binding","
|
|
1
|
+
{"version":3,"file":"index.js","names":["VTooltip","useDirectiveComponent","isObject","Tooltip","binding","disabled","value","text","includes","activator","location","arg","replace","undefined"],"sources":["../../../src/directives/tooltip/index.ts"],"sourcesContent":["// Components\nimport { VTooltip } from '@/components/VTooltip'\n\n// Composables\nimport { useDirectiveComponent } from '@/composables/directiveComponent'\n\n// Utilities\nimport { isObject } from '@/util'\n\n// Types\nimport type { DirectiveBinding } from 'vue'\nimport type { Anchor } from '@/util'\n\nexport interface TooltipDirectiveBinding extends Omit<DirectiveBinding<string>, 'arg' | 'value'> {\n arg?: { [T in Anchor]: T extends `${infer A} ${infer B}` ? `${A}-${B}` : T }[Anchor]\n value: boolean | string | Record<string, any>\n}\n\nexport const Tooltip = useDirectiveComponent<TooltipDirectiveBinding>(VTooltip, binding => {\n const disabled = isObject(binding.value)\n ? !binding.value.text\n : ['', false, null].includes(binding.value) // undefined means true\n\n return {\n activator: disabled ? null : 'parent',\n location: binding.arg?.replace('-', ' '),\n text: typeof binding.value === 'boolean' ? undefined : binding.value,\n }\n})\n\nexport default Tooltip\n"],"mappings":"AAAA;AAAA,SACSA,QAAQ,8CAEjB;AAAA,SACSC,qBAAqB,mDAE9B;AAAA,SACSC,QAAQ,+BAEjB;AASA,OAAO,MAAMC,OAAO,GAAGF,qBAAqB,CAA0BD,QAAQ,EAAEI,OAAO,IAAI;EACzF,MAAMC,QAAQ,GAAGH,QAAQ,CAACE,OAAO,CAACE,KAAK,CAAC,GACpC,CAACF,OAAO,CAACE,KAAK,CAACC,IAAI,GACnB,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAACC,QAAQ,CAACJ,OAAO,CAACE,KAAK,CAAC,EAAC;;EAE9C,OAAO;IACLG,SAAS,EAAEJ,QAAQ,GAAG,IAAI,GAAG,QAAQ;IACrCK,QAAQ,EAAEN,OAAO,CAACO,GAAG,EAAEC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC;IACxCL,IAAI,EAAE,OAAOH,OAAO,CAACE,KAAK,KAAK,SAAS,GAAGO,SAAS,GAAGT,OAAO,CAACE;EACjE,CAAC;AACH,CAAC,CAAC;AAEF,eAAeH,OAAO","ignoreList":[]}
|
package/lib/entry-bundler.js
CHANGED
|
@@ -16,7 +16,7 @@ export const createVuetify = function () {
|
|
|
16
16
|
...options
|
|
17
17
|
});
|
|
18
18
|
};
|
|
19
|
-
export const version = "3.10.
|
|
19
|
+
export const version = "3.10.12";
|
|
20
20
|
createVuetify.version = version;
|
|
21
21
|
export { blueprints, components, directives };
|
|
22
22
|
export * from "./composables/index.js";
|
package/lib/framework.d.ts
CHANGED
|
@@ -2729,35 +2729,34 @@ declare module 'vue' {
|
|
|
2729
2729
|
VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
|
|
2730
2730
|
VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
|
|
2731
2731
|
VAvatar: typeof import('vuetify/components')['VAvatar']
|
|
2732
|
-
VBadge: typeof import('vuetify/components')['VBadge']
|
|
2733
2732
|
VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
|
|
2734
|
-
|
|
2735
|
-
|
|
2736
|
-
VBannerText: typeof import('vuetify/components')['VBannerText']
|
|
2737
|
-
VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
|
|
2733
|
+
VBadge: typeof import('vuetify/components')['VBadge']
|
|
2734
|
+
VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
|
|
2738
2735
|
VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
|
|
2739
2736
|
VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
|
|
2740
2737
|
VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
|
|
2741
|
-
|
|
2742
|
-
VBtn: typeof import('vuetify/components')['VBtn']
|
|
2738
|
+
VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
|
|
2743
2739
|
VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
|
|
2740
|
+
VBanner: typeof import('vuetify/components')['VBanner']
|
|
2741
|
+
VBannerActions: typeof import('vuetify/components')['VBannerActions']
|
|
2742
|
+
VBannerText: typeof import('vuetify/components')['VBannerText']
|
|
2743
|
+
VBtn: typeof import('vuetify/components')['VBtn']
|
|
2744
|
+
VCheckbox: typeof import('vuetify/components')['VCheckbox']
|
|
2745
|
+
VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
|
|
2746
|
+
VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
|
|
2744
2747
|
VCard: typeof import('vuetify/components')['VCard']
|
|
2745
2748
|
VCardActions: typeof import('vuetify/components')['VCardActions']
|
|
2746
2749
|
VCardItem: typeof import('vuetify/components')['VCardItem']
|
|
2747
2750
|
VCardSubtitle: typeof import('vuetify/components')['VCardSubtitle']
|
|
2748
2751
|
VCardText: typeof import('vuetify/components')['VCardText']
|
|
2749
2752
|
VCardTitle: typeof import('vuetify/components')['VCardTitle']
|
|
2750
|
-
|
|
2753
|
+
VColorPicker: typeof import('vuetify/components')['VColorPicker']
|
|
2754
|
+
VChip: typeof import('vuetify/components')['VChip']
|
|
2751
2755
|
VCarousel: typeof import('vuetify/components')['VCarousel']
|
|
2752
2756
|
VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
|
|
2753
|
-
VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
|
|
2754
|
-
VCode: typeof import('vuetify/components')['VCode']
|
|
2755
|
-
VCheckbox: typeof import('vuetify/components')['VCheckbox']
|
|
2756
|
-
VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
|
|
2757
2757
|
VCombobox: typeof import('vuetify/components')['VCombobox']
|
|
2758
|
-
|
|
2759
|
-
|
|
2760
|
-
VChip: typeof import('vuetify/components')['VChip']
|
|
2758
|
+
VCode: typeof import('vuetify/components')['VCode']
|
|
2759
|
+
VChipGroup: typeof import('vuetify/components')['VChipGroup']
|
|
2761
2760
|
VDataTable: typeof import('vuetify/components')['VDataTable']
|
|
2762
2761
|
VDataTableHeaders: typeof import('vuetify/components')['VDataTableHeaders']
|
|
2763
2762
|
VDataTableFooter: typeof import('vuetify/components')['VDataTableFooter']
|
|
@@ -2765,35 +2764,39 @@ declare module 'vue' {
|
|
|
2765
2764
|
VDataTableRow: typeof import('vuetify/components')['VDataTableRow']
|
|
2766
2765
|
VDataTableVirtual: typeof import('vuetify/components')['VDataTableVirtual']
|
|
2767
2766
|
VDataTableServer: typeof import('vuetify/components')['VDataTableServer']
|
|
2768
|
-
|
|
2767
|
+
VCounter: typeof import('vuetify/components')['VCounter']
|
|
2769
2768
|
VDatePicker: typeof import('vuetify/components')['VDatePicker']
|
|
2770
2769
|
VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
|
|
2771
2770
|
VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
|
|
2772
2771
|
VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
|
|
2773
2772
|
VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
|
|
2774
2773
|
VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
|
|
2775
|
-
VEmptyState: typeof import('vuetify/components')['VEmptyState']
|
|
2776
|
-
VDivider: typeof import('vuetify/components')['VDivider']
|
|
2777
|
-
VFab: typeof import('vuetify/components')['VFab']
|
|
2778
2774
|
VExpansionPanels: typeof import('vuetify/components')['VExpansionPanels']
|
|
2779
2775
|
VExpansionPanel: typeof import('vuetify/components')['VExpansionPanel']
|
|
2780
2776
|
VExpansionPanelText: typeof import('vuetify/components')['VExpansionPanelText']
|
|
2781
2777
|
VExpansionPanelTitle: typeof import('vuetify/components')['VExpansionPanelTitle']
|
|
2778
|
+
VDivider: typeof import('vuetify/components')['VDivider']
|
|
2779
|
+
VDialog: typeof import('vuetify/components')['VDialog']
|
|
2780
|
+
VEmptyState: typeof import('vuetify/components')['VEmptyState']
|
|
2781
|
+
VFab: typeof import('vuetify/components')['VFab']
|
|
2782
2782
|
VField: typeof import('vuetify/components')['VField']
|
|
2783
2783
|
VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
|
|
2784
|
-
VFooter: typeof import('vuetify/components')['VFooter']
|
|
2785
2784
|
VFileInput: typeof import('vuetify/components')['VFileInput']
|
|
2785
|
+
VFooter: typeof import('vuetify/components')['VFooter']
|
|
2786
2786
|
VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
|
|
2787
|
+
VItemGroup: typeof import('vuetify/components')['VItemGroup']
|
|
2788
|
+
VItem: typeof import('vuetify/components')['VItem']
|
|
2787
2789
|
VIcon: typeof import('vuetify/components')['VIcon']
|
|
2788
2790
|
VComponentIcon: typeof import('vuetify/components')['VComponentIcon']
|
|
2789
2791
|
VSvgIcon: typeof import('vuetify/components')['VSvgIcon']
|
|
2790
2792
|
VLigatureIcon: typeof import('vuetify/components')['VLigatureIcon']
|
|
2791
2793
|
VClassIcon: typeof import('vuetify/components')['VClassIcon']
|
|
2792
2794
|
VImg: typeof import('vuetify/components')['VImg']
|
|
2793
|
-
|
|
2794
|
-
VItem: typeof import('vuetify/components')['VItem']
|
|
2795
|
-
VInput: typeof import('vuetify/components')['VInput']
|
|
2795
|
+
VKbd: typeof import('vuetify/components')['VKbd']
|
|
2796
2796
|
VLabel: typeof import('vuetify/components')['VLabel']
|
|
2797
|
+
VInput: typeof import('vuetify/components')['VInput']
|
|
2798
|
+
VMenu: typeof import('vuetify/components')['VMenu']
|
|
2799
|
+
VMessages: typeof import('vuetify/components')['VMessages']
|
|
2797
2800
|
VList: typeof import('vuetify/components')['VList']
|
|
2798
2801
|
VListGroup: typeof import('vuetify/components')['VListGroup']
|
|
2799
2802
|
VListImg: typeof import('vuetify/components')['VListImg']
|
|
@@ -2803,81 +2806,75 @@ declare module 'vue' {
|
|
|
2803
2806
|
VListItemSubtitle: typeof import('vuetify/components')['VListItemSubtitle']
|
|
2804
2807
|
VListItemTitle: typeof import('vuetify/components')['VListItemTitle']
|
|
2805
2808
|
VListSubheader: typeof import('vuetify/components')['VListSubheader']
|
|
2806
|
-
VKbd: typeof import('vuetify/components')['VKbd']
|
|
2807
|
-
VMessages: typeof import('vuetify/components')['VMessages']
|
|
2808
|
-
VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
|
|
2809
|
-
VMenu: typeof import('vuetify/components')['VMenu']
|
|
2810
2809
|
VMain: typeof import('vuetify/components')['VMain']
|
|
2811
|
-
|
|
2810
|
+
VNumberInput: typeof import('vuetify/components')['VNumberInput']
|
|
2812
2811
|
VOtpInput: typeof import('vuetify/components')['VOtpInput']
|
|
2812
|
+
VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
|
|
2813
2813
|
VProgressCircular: typeof import('vuetify/components')['VProgressCircular']
|
|
2814
|
-
|
|
2815
|
-
VRadioGroup: typeof import('vuetify/components')['VRadioGroup']
|
|
2816
|
-
VPagination: typeof import('vuetify/components')['VPagination']
|
|
2817
|
-
VRating: typeof import('vuetify/components')['VRating']
|
|
2814
|
+
VOverlay: typeof import('vuetify/components')['VOverlay']
|
|
2818
2815
|
VProgressLinear: typeof import('vuetify/components')['VProgressLinear']
|
|
2819
|
-
|
|
2816
|
+
VPagination: typeof import('vuetify/components')['VPagination']
|
|
2817
|
+
VRadioGroup: typeof import('vuetify/components')['VRadioGroup']
|
|
2820
2818
|
VSelect: typeof import('vuetify/components')['VSelect']
|
|
2819
|
+
VSelectionControlGroup: typeof import('vuetify/components')['VSelectionControlGroup']
|
|
2820
|
+
VRating: typeof import('vuetify/components')['VRating']
|
|
2821
2821
|
VSelectionControl: typeof import('vuetify/components')['VSelectionControl']
|
|
2822
|
-
VSheet: typeof import('vuetify/components')['VSheet']
|
|
2823
|
-
VSkeletonLoader: typeof import('vuetify/components')['VSkeletonLoader']
|
|
2824
|
-
VSlider: typeof import('vuetify/components')['VSlider']
|
|
2825
2822
|
VSlideGroup: typeof import('vuetify/components')['VSlideGroup']
|
|
2826
2823
|
VSlideGroupItem: typeof import('vuetify/components')['VSlideGroupItem']
|
|
2827
|
-
VSwitch: typeof import('vuetify/components')['VSwitch']
|
|
2828
2824
|
VSnackbar: typeof import('vuetify/components')['VSnackbar']
|
|
2825
|
+
VSkeletonLoader: typeof import('vuetify/components')['VSkeletonLoader']
|
|
2826
|
+
VSwitch: typeof import('vuetify/components')['VSwitch']
|
|
2827
|
+
VSlider: typeof import('vuetify/components')['VSlider']
|
|
2828
|
+
VSystemBar: typeof import('vuetify/components')['VSystemBar']
|
|
2829
2829
|
VStepper: typeof import('vuetify/components')['VStepper']
|
|
2830
2830
|
VStepperActions: typeof import('vuetify/components')['VStepperActions']
|
|
2831
2831
|
VStepperHeader: typeof import('vuetify/components')['VStepperHeader']
|
|
2832
2832
|
VStepperItem: typeof import('vuetify/components')['VStepperItem']
|
|
2833
2833
|
VStepperWindow: typeof import('vuetify/components')['VStepperWindow']
|
|
2834
2834
|
VStepperWindowItem: typeof import('vuetify/components')['VStepperWindowItem']
|
|
2835
|
-
|
|
2835
|
+
VTextField: typeof import('vuetify/components')['VTextField']
|
|
2836
|
+
VTable: typeof import('vuetify/components')['VTable']
|
|
2837
|
+
VTextarea: typeof import('vuetify/components')['VTextarea']
|
|
2836
2838
|
VTab: typeof import('vuetify/components')['VTab']
|
|
2837
2839
|
VTabs: typeof import('vuetify/components')['VTabs']
|
|
2838
2840
|
VTabsWindow: typeof import('vuetify/components')['VTabsWindow']
|
|
2839
2841
|
VTabsWindowItem: typeof import('vuetify/components')['VTabsWindowItem']
|
|
2840
|
-
VTable: typeof import('vuetify/components')['VTable']
|
|
2841
|
-
VTextField: typeof import('vuetify/components')['VTextField']
|
|
2842
|
-
VTextarea: typeof import('vuetify/components')['VTextarea']
|
|
2843
2842
|
VToolbar: typeof import('vuetify/components')['VToolbar']
|
|
2844
2843
|
VToolbarTitle: typeof import('vuetify/components')['VToolbarTitle']
|
|
2845
2844
|
VToolbarItems: typeof import('vuetify/components')['VToolbarItems']
|
|
2846
2845
|
VTimeline: typeof import('vuetify/components')['VTimeline']
|
|
2847
2846
|
VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
|
|
2847
|
+
VWindow: typeof import('vuetify/components')['VWindow']
|
|
2848
|
+
VWindowItem: typeof import('vuetify/components')['VWindowItem']
|
|
2848
2849
|
VTimePicker: typeof import('vuetify/components')['VTimePicker']
|
|
2849
2850
|
VTimePickerClock: typeof import('vuetify/components')['VTimePickerClock']
|
|
2850
2851
|
VTimePickerControls: typeof import('vuetify/components')['VTimePickerControls']
|
|
2852
|
+
VTooltip: typeof import('vuetify/components')['VTooltip']
|
|
2851
2853
|
VTreeview: typeof import('vuetify/components')['VTreeview']
|
|
2852
2854
|
VTreeviewItem: typeof import('vuetify/components')['VTreeviewItem']
|
|
2853
2855
|
VTreeviewGroup: typeof import('vuetify/components')['VTreeviewGroup']
|
|
2854
|
-
VTooltip: typeof import('vuetify/components')['VTooltip']
|
|
2855
|
-
VWindow: typeof import('vuetify/components')['VWindow']
|
|
2856
|
-
VWindowItem: typeof import('vuetify/components')['VWindowItem']
|
|
2857
2856
|
VConfirmEdit: typeof import('vuetify/components')['VConfirmEdit']
|
|
2858
2857
|
VDataIterator: typeof import('vuetify/components')['VDataIterator']
|
|
2859
2858
|
VDefaultsProvider: typeof import('vuetify/components')['VDefaultsProvider']
|
|
2860
|
-
VHover: typeof import('vuetify/components')['VHover']
|
|
2861
2859
|
VForm: typeof import('vuetify/components')['VForm']
|
|
2860
|
+
VHover: typeof import('vuetify/components')['VHover']
|
|
2862
2861
|
VContainer: typeof import('vuetify/components')['VContainer']
|
|
2863
2862
|
VCol: typeof import('vuetify/components')['VCol']
|
|
2864
2863
|
VRow: typeof import('vuetify/components')['VRow']
|
|
2865
2864
|
VSpacer: typeof import('vuetify/components')['VSpacer']
|
|
2865
|
+
VLazy: typeof import('vuetify/components')['VLazy']
|
|
2866
2866
|
VLayout: typeof import('vuetify/components')['VLayout']
|
|
2867
2867
|
VLayoutItem: typeof import('vuetify/components')['VLayoutItem']
|
|
2868
|
-
|
|
2868
|
+
VLocaleProvider: typeof import('vuetify/components')['VLocaleProvider']
|
|
2869
2869
|
VNoSsr: typeof import('vuetify/components')['VNoSsr']
|
|
2870
|
-
VRadio: typeof import('vuetify/components')['VRadio']
|
|
2871
2870
|
VParallax: typeof import('vuetify/components')['VParallax']
|
|
2872
|
-
|
|
2871
|
+
VRadio: typeof import('vuetify/components')['VRadio']
|
|
2873
2872
|
VResponsive: typeof import('vuetify/components')['VResponsive']
|
|
2874
|
-
|
|
2875
|
-
VSparkline: typeof import('vuetify/components')['VSparkline']
|
|
2873
|
+
VRangeSlider: typeof import('vuetify/components')['VRangeSlider']
|
|
2876
2874
|
VSnackbarQueue: typeof import('vuetify/components')['VSnackbarQueue']
|
|
2877
2875
|
VSpeedDial: typeof import('vuetify/components')['VSpeedDial']
|
|
2876
|
+
VSparkline: typeof import('vuetify/components')['VSparkline']
|
|
2878
2877
|
VThemeProvider: typeof import('vuetify/components')['VThemeProvider']
|
|
2879
|
-
VValidation: typeof import('vuetify/components')['VValidation']
|
|
2880
|
-
VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
|
|
2881
2878
|
VFabTransition: typeof import('vuetify/components')['VFabTransition']
|
|
2882
2879
|
VDialogBottomTransition: typeof import('vuetify/components')['VDialogBottomTransition']
|
|
2883
2880
|
VDialogTopTransition: typeof import('vuetify/components')['VDialogTopTransition']
|
|
@@ -2894,23 +2891,26 @@ declare module 'vue' {
|
|
|
2894
2891
|
VExpandTransition: typeof import('vuetify/components')['VExpandTransition']
|
|
2895
2892
|
VExpandXTransition: typeof import('vuetify/components')['VExpandXTransition']
|
|
2896
2893
|
VDialogTransition: typeof import('vuetify/components')['VDialogTransition']
|
|
2897
|
-
|
|
2894
|
+
VValidation: typeof import('vuetify/components')['VValidation']
|
|
2895
|
+
VSheet: typeof import('vuetify/components')['VSheet']
|
|
2896
|
+
VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
|
|
2897
|
+
VColorInput: typeof import('vuetify/labs/components')['VColorInput']
|
|
2898
2898
|
VFileUpload: typeof import('vuetify/labs/components')['VFileUpload']
|
|
2899
2899
|
VFileUploadItem: typeof import('vuetify/labs/components')['VFileUploadItem']
|
|
2900
|
-
VColorInput: typeof import('vuetify/labs/components')['VColorInput']
|
|
2901
2900
|
VIconBtn: typeof import('vuetify/labs/components')['VIconBtn']
|
|
2901
|
+
VCalendar: typeof import('vuetify/labs/components')['VCalendar']
|
|
2902
|
+
VHotkey: typeof import('vuetify/labs/components')['VHotkey']
|
|
2903
|
+
VVideo: typeof import('vuetify/labs/components')['VVideo']
|
|
2904
|
+
VVideoControls: typeof import('vuetify/labs/components')['VVideoControls']
|
|
2905
|
+
VVideoVolume: typeof import('vuetify/labs/components')['VVideoVolume']
|
|
2902
2906
|
VPicker: typeof import('vuetify/labs/components')['VPicker']
|
|
2903
2907
|
VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
|
|
2904
|
-
VStepperVertical: typeof import('vuetify/labs/components')['VStepperVertical']
|
|
2905
|
-
VStepperVerticalItem: typeof import('vuetify/labs/components')['VStepperVerticalItem']
|
|
2906
|
-
VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
|
|
2907
2908
|
VPie: typeof import('vuetify/labs/components')['VPie']
|
|
2908
2909
|
VPieSegment: typeof import('vuetify/labs/components')['VPieSegment']
|
|
2909
2910
|
VPieTooltip: typeof import('vuetify/labs/components')['VPieTooltip']
|
|
2910
|
-
|
|
2911
|
-
|
|
2912
|
-
|
|
2913
|
-
VHotkey: typeof import('vuetify/labs/components')['VHotkey']
|
|
2911
|
+
VStepperVertical: typeof import('vuetify/labs/components')['VStepperVertical']
|
|
2912
|
+
VStepperVerticalItem: typeof import('vuetify/labs/components')['VStepperVerticalItem']
|
|
2913
|
+
VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
|
|
2914
2914
|
VDateInput: typeof import('vuetify/labs/components')['VDateInput']
|
|
2915
2915
|
VMaskInput: typeof import('vuetify/labs/components')['VMaskInput']
|
|
2916
2916
|
VPullToRefresh: typeof import('vuetify/labs/components')['VPullToRefresh']
|
package/lib/framework.js
CHANGED
package/lib/util/helpers.js
CHANGED
|
@@ -316,7 +316,7 @@ export function findChildrenWithProvide(key, vnode) {
|
|
|
316
316
|
} else if (Array.isArray(vnode.children)) {
|
|
317
317
|
return vnode.children.map(child => findChildrenWithProvide(key, child)).flat(1);
|
|
318
318
|
} else if (vnode.component) {
|
|
319
|
-
if (Object.
|
|
319
|
+
if (Object.getOwnPropertyDescriptor(vnode.component.provides, key)) {
|
|
320
320
|
return [vnode.component];
|
|
321
321
|
} else if (vnode.component.subTree) {
|
|
322
322
|
return findChildrenWithProvide(key, vnode.component.subTree).flat(1);
|