vuetify 3.3.17 → 3.3.18

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.
Files changed (77) hide show
  1. package/dist/json/attributes.json +25 -9
  2. package/dist/json/importMap.json +8 -8
  3. package/dist/json/tags.json +5 -1
  4. package/dist/json/web-types.json +322 -750
  5. package/dist/vuetify-labs.css +146 -151
  6. package/dist/vuetify-labs.d.ts +1175 -2641
  7. package/dist/vuetify-labs.esm.js +67 -44
  8. package/dist/vuetify-labs.esm.js.map +1 -1
  9. package/dist/vuetify-labs.js +66 -43
  10. package/dist/vuetify-labs.min.css +2 -2
  11. package/dist/vuetify.css +155 -160
  12. package/dist/vuetify.d.ts +51 -51
  13. package/dist/vuetify.esm.js +32 -17
  14. package/dist/vuetify.esm.js.map +1 -1
  15. package/dist/vuetify.js +32 -17
  16. package/dist/vuetify.js.map +1 -1
  17. package/dist/vuetify.min.css +2 -2
  18. package/dist/vuetify.min.js +24 -23
  19. package/dist/vuetify.min.js.map +1 -1
  20. package/lib/components/VAutocomplete/VAutocomplete.mjs +4 -2
  21. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  22. package/lib/components/VAutocomplete/index.d.mts +12 -12
  23. package/lib/components/VCombobox/VCombobox.mjs +4 -2
  24. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  25. package/lib/components/VCombobox/index.d.mts +12 -12
  26. package/lib/components/VList/VList.mjs +2 -1
  27. package/lib/components/VList/VList.mjs.map +1 -1
  28. package/lib/components/VList/VListChildren.mjs +10 -3
  29. package/lib/components/VList/VListChildren.mjs.map +1 -1
  30. package/lib/components/VList/index.d.mts +10 -10
  31. package/lib/components/VSelect/VSelect.mjs +3 -1
  32. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  33. package/lib/components/VSelect/index.d.mts +12 -12
  34. package/lib/components/VTable/VTable.css +4 -2
  35. package/lib/components/VTable/VTable.sass +3 -1
  36. package/lib/components/VTable/_variables.scss +1 -1
  37. package/lib/components/VTextField/VTextField.mjs +2 -2
  38. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  39. package/lib/components/VTextField/index.d.mts +6 -6
  40. package/lib/components/VTimeline/VTimeline.css +15 -22
  41. package/lib/components/VTimeline/VTimeline.sass +15 -25
  42. package/lib/components/index.d.mts +49 -49
  43. package/lib/entry-bundler.mjs +1 -1
  44. package/lib/framework.mjs +1 -1
  45. package/lib/index.d.mts +2 -2
  46. package/lib/labs/VBottomSheet/VBottomSheet.mjs +2 -1
  47. package/lib/labs/VBottomSheet/VBottomSheet.mjs.map +1 -1
  48. package/lib/labs/VDataIterator/index.d.mts +66 -48
  49. package/lib/labs/VDataTable/VDataTableRow.mjs +8 -6
  50. package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
  51. package/lib/labs/VDataTable/VDataTableRows.mjs +4 -2
  52. package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
  53. package/lib/labs/VDataTable/VDataTableServer.mjs +1 -2
  54. package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
  55. package/lib/labs/VDataTable/VDataTableVirtual.mjs +1 -2
  56. package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
  57. package/lib/labs/VDataTable/composables/headers.mjs +5 -7
  58. package/lib/labs/VDataTable/composables/headers.mjs.map +1 -1
  59. package/lib/labs/VDataTable/composables/items.mjs +1 -1
  60. package/lib/labs/VDataTable/composables/items.mjs.map +1 -1
  61. package/lib/labs/VDataTable/composables/select.mjs +14 -8
  62. package/lib/labs/VDataTable/composables/select.mjs.map +1 -1
  63. package/lib/labs/VDataTable/composables/sort.mjs +1 -0
  64. package/lib/labs/VDataTable/composables/sort.mjs.map +1 -1
  65. package/lib/labs/VDataTable/index.d.mts +1135 -2614
  66. package/lib/labs/VDataTable/types.mjs.map +1 -1
  67. package/lib/labs/VDateInput/index.d.mts +6 -6
  68. package/lib/labs/VDatePicker/VDatePicker.mjs +1 -1
  69. package/lib/labs/VDatePicker/VDatePicker.mjs.map +1 -1
  70. package/lib/labs/VOtpInput/VOtpInput.mjs +1 -1
  71. package/lib/labs/VOtpInput/VOtpInput.mjs.map +1 -1
  72. package/lib/labs/components.d.mts +1393 -2858
  73. package/lib/labs/date/adapters/vuetify.mjs +2 -2
  74. package/lib/labs/date/adapters/vuetify.mjs.map +1 -1
  75. package/lib/util/helpers.mjs +2 -1
  76. package/lib/util/helpers.mjs.map +1 -1
  77. package/package.json +2 -2
@@ -54,7 +54,7 @@ interface FilterPropsOptions<PropsOptions extends Readonly<ComponentPropsOptions
54
54
  }
55
55
 
56
56
  declare function deepEqual(a: any, b: any): boolean;
57
- type SelectItemKey = boolean | string | (string | number)[] | ((item: Record<string, any>, fallback?: any) => any);
57
+ type SelectItemKey = boolean | null | undefined | string | (string | number)[] | ((item: Record<string, any>, fallback?: any) => any);
58
58
  type EventProp<T extends any[] = any[], F = (...args: T) => any> = F | F[];
59
59
  declare const EventProp: <T extends any[] = any[]>() => PropType<EventProp<T, (...args: T) => any>>;
60
60
 
@@ -240,10 +240,10 @@ declare const VCombobox: {
240
240
  filterMode?: FilterMode | undefined;
241
241
  noFilter?: boolean | undefined;
242
242
  filterKeys?: NonNullable<FilterKeys> | undefined;
243
- itemTitle?: SelectItemKey | undefined;
244
- itemValue?: SelectItemKey | undefined;
243
+ itemTitle?: SelectItemKey;
244
+ itemValue?: SelectItemKey;
245
245
  itemChildren?: NonNullable<SelectItemKey> | undefined;
246
- itemProps?: SelectItemKey | undefined;
246
+ itemProps?: SelectItemKey;
247
247
  clearable?: boolean | undefined;
248
248
  persistentClear?: boolean | undefined;
249
249
  singleLine?: boolean | undefined;
@@ -328,7 +328,7 @@ declare const VCombobox: {
328
328
  customFilter?: FilterFunction | undefined;
329
329
  customKeyFilter?: FilterKeyFunctions | undefined;
330
330
  suffix?: string | undefined;
331
- counterValue?: ((value: any) => number) | undefined;
331
+ counterValue?: number | ((value: any) => number) | undefined;
332
332
  modelModifiers?: Record<string, boolean> | undefined;
333
333
  menuProps?: {
334
334
  location?: Anchor | undefined;
@@ -599,7 +599,7 @@ declare const VCombobox: {
599
599
  customFilter?: FilterFunction | undefined;
600
600
  customKeyFilter?: FilterKeyFunctions | undefined;
601
601
  suffix?: string | undefined;
602
- counterValue?: ((value: any) => number) | undefined;
602
+ counterValue?: number | ((value: any) => number) | undefined;
603
603
  modelModifiers?: Record<string, boolean> | undefined;
604
604
  menuProps?: {
605
605
  location?: Anchor | undefined;
@@ -727,7 +727,7 @@ declare const VCombobox: {
727
727
  'update:modelValue': (val: any) => true;
728
728
  'update:search': (val: string) => true;
729
729
  'update:menu': (val: boolean) => true;
730
- }, "multiple" | "$children" | "items" | "v-slots" | "v-slot:append" | "v-slot:prepend" | "modelValue" | "update:modelValue" | "v-slot:loader" | "v-slot:label" | "v-slot:message" | "v-slot:details" | "v-slot:item" | "returnObject" | "v-slot:clear" | "v-slot:prepend-inner" | "v-slot:append-inner" | "v-slot:chip" | "v-slot:selection" | "v-slot:prepend-item" | "v-slot:append-item" | "v-slot:no-data">, string, {
730
+ }, "multiple" | "$children" | "items" | "v-slots" | "v-slot:append" | "v-slot:prepend" | "modelValue" | "update:modelValue" | "v-slot:loader" | "v-slot:label" | "v-slot:message" | "v-slot:details" | "returnObject" | "v-slot:item" | "v-slot:clear" | "v-slot:prepend-inner" | "v-slot:append-inner" | "v-slot:chip" | "v-slot:selection" | "v-slot:prepend-item" | "v-slot:append-item" | "v-slot:no-data">, string, {
731
731
  flat: boolean;
732
732
  reverse: boolean;
733
733
  type: string;
@@ -936,7 +936,7 @@ declare const VCombobox: {
936
936
  customFilter?: FilterFunction | undefined;
937
937
  customKeyFilter?: FilterKeyFunctions | undefined;
938
938
  suffix?: string | undefined;
939
- counterValue?: ((value: any) => number) | undefined;
939
+ counterValue?: number | ((value: any) => number) | undefined;
940
940
  modelModifiers?: Record<string, boolean> | undefined;
941
941
  menuProps?: {
942
942
  location?: Anchor | undefined;
@@ -1142,7 +1142,7 @@ declare const VCombobox: {
1142
1142
  customFilter?: FilterFunction | undefined;
1143
1143
  customKeyFilter?: FilterKeyFunctions | undefined;
1144
1144
  suffix?: string | undefined;
1145
- counterValue?: ((value: any) => number) | undefined;
1145
+ counterValue?: number | ((value: any) => number) | undefined;
1146
1146
  modelModifiers?: Record<string, boolean> | undefined;
1147
1147
  menuProps?: {
1148
1148
  location?: Anchor | undefined;
@@ -1270,7 +1270,7 @@ declare const VCombobox: {
1270
1270
  'update:modelValue': (val: any) => true;
1271
1271
  'update:search': (val: string) => true;
1272
1272
  'update:menu': (val: boolean) => true;
1273
- }, "multiple" | "$children" | "items" | "v-slots" | "v-slot:append" | "v-slot:prepend" | "modelValue" | "update:modelValue" | "v-slot:loader" | "v-slot:label" | "v-slot:message" | "v-slot:details" | "v-slot:item" | "returnObject" | "v-slot:clear" | "v-slot:prepend-inner" | "v-slot:append-inner" | "v-slot:chip" | "v-slot:selection" | "v-slot:prepend-item" | "v-slot:append-item" | "v-slot:no-data">, string, {
1273
+ }, "multiple" | "$children" | "items" | "v-slots" | "v-slot:append" | "v-slot:prepend" | "modelValue" | "update:modelValue" | "v-slot:loader" | "v-slot:label" | "v-slot:message" | "v-slot:details" | "returnObject" | "v-slot:item" | "v-slot:clear" | "v-slot:prepend-inner" | "v-slot:append-inner" | "v-slot:chip" | "v-slot:selection" | "v-slot:prepend-item" | "v-slot:append-item" | "v-slot:no-data">, string, {
1274
1274
  flat: boolean;
1275
1275
  reverse: boolean;
1276
1276
  type: string;
@@ -1547,7 +1547,7 @@ declare const VCombobox: {
1547
1547
  persistentPlaceholder: BooleanConstructor;
1548
1548
  persistentCounter: BooleanConstructor;
1549
1549
  suffix: StringConstructor;
1550
- counterValue: PropType<(value: any) => number>;
1550
+ counterValue: PropType<number | ((value: any) => number)>;
1551
1551
  modelModifiers: PropType<Record<string, boolean>>;
1552
1552
  items: {
1553
1553
  type: PropType<any[]>;
@@ -1858,7 +1858,7 @@ declare const VCombobox: {
1858
1858
  persistentPlaceholder: BooleanConstructor;
1859
1859
  persistentCounter: BooleanConstructor;
1860
1860
  suffix: StringConstructor;
1861
- counterValue: PropType<(value: any) => number>;
1861
+ counterValue: PropType<number | ((value: any) => number)>;
1862
1862
  modelModifiers: PropType<Record<string, boolean>>;
1863
1863
  items: {
1864
1864
  type: PropType<any[]>;
@@ -202,7 +202,8 @@ export const VList = genericComponent()({
202
202
  "onKeydown": onKeydown
203
203
  }, {
204
204
  default: () => [_createVNode(VListChildren, {
205
- "items": items.value
205
+ "items": items.value,
206
+ "returnObject": props.returnObject
206
207
  }, slots)]
207
208
  });
208
209
  });
@@ -1 +1 @@
1
- {"version":3,"file":"VList.mjs","names":["VListChildren","createList","makeBorderProps","useBorder","useBackgroundColor","makeComponentProps","provideDefaults","makeDensityProps","useDensity","makeDimensionProps","useDimension","makeElevationProps","useElevation","makeItemsProps","makeNestedProps","useNested","makeRoundedProps","useRounded","makeTagProps","makeThemeProps","provideTheme","makeVariantProps","computed","ref","shallowRef","toRef","focusChild","genericComponent","getPropertyFromItem","pick","propsFactory","useRender","isPrimitive","value","transformItem","props","item","type","itemType","title","itemTitle","itemValue","undefined","children","itemChildren","itemProps","_props","transformItems","raw","items","array","push","useListItems","makeVListProps","baseColor","String","activeColor","activeClass","bgColor","disabled","Boolean","lines","default","nav","selectStrategy","openStrategy","variant","VList","name","emits","val","setup","_ref","slots","themeClasses","backgroundColorClasses","backgroundColorStyles","borderClasses","densityClasses","dimensionStyles","elevationClasses","roundedClasses","open","select","lineClasses","color","VListGroup","VListItem","density","isFocused","contentRef","onFocusin","e","onFocusout","onFocus","relatedTarget","contains","focus","onKeydown","key","preventDefault","location","_createVNode","tag","class","style"],"sources":["../../../src/components/VList/VList.tsx"],"sourcesContent":["// Styles\nimport './VList.sass'\n\n// Components\nimport { VListChildren } from './VListChildren'\n\n// Composables\nimport { createList } from './list'\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeItemsProps } from '@/composables/list-items'\nimport { makeNestedProps, useNested } from '@/composables/nested/nested'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeVariantProps } from '@/composables/variant'\n\n// Utilities\nimport { computed, ref, shallowRef, toRef } from 'vue'\nimport { focusChild, genericComponent, getPropertyFromItem, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VListChildrenSlots } from './VListChildren'\nimport type { ItemProps, ListItem } from '@/composables/list-items'\nimport type { GenericProps } from '@/util'\n\nexport interface InternalListItem<T = any> extends ListItem<T> {\n type?: 'item' | 'subheader' | 'divider'\n}\n\nfunction isPrimitive (value: unknown): value is string | number | boolean {\n return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean'\n}\n\nfunction transformItem (props: ItemProps & { itemType: string }, item: any): InternalListItem {\n const type = getPropertyFromItem(item, props.itemType, 'item')\n const title = isPrimitive(item) ? item : getPropertyFromItem(item, props.itemTitle)\n const value = getPropertyFromItem(item, props.itemValue, undefined)\n const children = getPropertyFromItem(item, props.itemChildren)\n const itemProps = props.itemProps === true ? pick(item, ['children'])[1] : getPropertyFromItem(item, props.itemProps)\n\n const _props = {\n title,\n value,\n ...itemProps,\n }\n\n return {\n type,\n title: _props.title,\n value: _props.value,\n props: _props,\n children: type === 'item' && children ? transformItems(props, children) : undefined,\n raw: item,\n }\n}\n\nfunction transformItems (props: ItemProps & { itemType: string }, items: (string | object)[]) {\n const array: InternalListItem[] = []\n\n for (const item of items) {\n array.push(transformItem(props, item))\n }\n\n return array\n}\n\nfunction useListItems (props: ItemProps & { itemType: string }) {\n const items = computed(() => transformItems(props, props.items))\n\n return { items }\n}\n\nexport const makeVListProps = propsFactory({\n baseColor: String,\n /* @deprecated */\n activeColor: String,\n activeClass: String,\n bgColor: String,\n disabled: Boolean,\n lines: {\n type: [Boolean, String] as PropType<'one' | 'two' | 'three' | false>,\n default: 'one',\n },\n nav: Boolean,\n\n ...makeNestedProps({\n selectStrategy: 'single-leaf' as const,\n openStrategy: 'list' as const,\n }),\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n itemType: {\n type: String,\n default: 'type',\n },\n ...makeItemsProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'text' } as const),\n}, 'VList')\n\nexport const VList = genericComponent<new <T>(\n props: {\n items?: T[]\n },\n slots: VListChildrenSlots<T>\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VList',\n\n props: makeVListProps(),\n\n emits: {\n 'update:selected': (val: unknown[]) => true,\n 'update:opened': (val: unknown[]) => true,\n 'click:open': (value: { id: unknown, value: boolean, path: unknown[] }) => true,\n 'click:select': (value: { id: unknown, value: boolean, path: unknown[] }) => true,\n },\n\n setup (props, { slots }) {\n const { items } = useListItems(props)\n const { themeClasses } = provideTheme(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'bgColor'))\n const { borderClasses } = useBorder(props)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n const { open, select } = useNested(props)\n const lineClasses = computed(() => props.lines ? `v-list--${props.lines}-line` : undefined)\n const activeColor = toRef(props, 'activeColor')\n const baseColor = toRef(props, 'baseColor')\n const color = toRef(props, 'color')\n\n createList()\n\n provideDefaults({\n VListGroup: {\n activeColor,\n baseColor,\n color,\n },\n VListItem: {\n activeClass: toRef(props, 'activeClass'),\n activeColor,\n baseColor,\n color,\n density: toRef(props, 'density'),\n disabled: toRef(props, 'disabled'),\n lines: toRef(props, 'lines'),\n nav: toRef(props, 'nav'),\n variant: toRef(props, 'variant'),\n },\n })\n\n const isFocused = shallowRef(false)\n const contentRef = ref<HTMLElement>()\n function onFocusin (e: FocusEvent) {\n isFocused.value = true\n }\n\n function onFocusout (e: FocusEvent) {\n isFocused.value = false\n }\n\n function onFocus (e: FocusEvent) {\n if (\n !isFocused.value &&\n !(e.relatedTarget && contentRef.value?.contains(e.relatedTarget as Node))\n ) focus()\n }\n\n function onKeydown (e: KeyboardEvent) {\n if (!contentRef.value) return\n\n if (e.key === 'ArrowDown') {\n focus('next')\n } else if (e.key === 'ArrowUp') {\n focus('prev')\n } else if (e.key === 'Home') {\n focus('first')\n } else if (e.key === 'End') {\n focus('last')\n } else {\n return\n }\n\n e.preventDefault()\n }\n\n function focus (location?: 'next' | 'prev' | 'first' | 'last') {\n if (contentRef.value) {\n return focusChild(contentRef.value, location)\n }\n }\n\n useRender(() => {\n return (\n <props.tag\n ref={ contentRef }\n class={[\n 'v-list',\n {\n 'v-list--disabled': props.disabled,\n 'v-list--nav': props.nav,\n },\n themeClasses.value,\n backgroundColorClasses.value,\n borderClasses.value,\n densityClasses.value,\n elevationClasses.value,\n lineClasses.value,\n roundedClasses.value,\n props.class,\n ]}\n style={[\n backgroundColorStyles.value,\n dimensionStyles.value,\n props.style,\n ]}\n tabindex={ (props.disabled || isFocused.value) ? -1 : 0 }\n role=\"listbox\"\n aria-activedescendant={ undefined }\n onFocusin={ onFocusin }\n onFocusout={ onFocusout }\n onFocus={ onFocus }\n onKeydown={ onKeydown }\n >\n <VListChildren items={ items.value } v-slots={ slots }></VListChildren>\n </props.tag>\n )\n })\n\n return {\n open,\n select,\n focus,\n }\n },\n})\n\nexport type VList = InstanceType<typeof VList>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VList.mjs","names":["VListChildren","createList","makeBorderProps","useBorder","useBackgroundColor","makeComponentProps","provideDefaults","makeDensityProps","useDensity","makeDimensionProps","useDimension","makeElevationProps","useElevation","makeItemsProps","makeNestedProps","useNested","makeRoundedProps","useRounded","makeTagProps","makeThemeProps","provideTheme","makeVariantProps","computed","ref","shallowRef","toRef","focusChild","genericComponent","getPropertyFromItem","pick","propsFactory","useRender","isPrimitive","value","transformItem","props","item","type","itemType","title","itemTitle","itemValue","undefined","children","itemChildren","itemProps","_props","transformItems","raw","items","array","push","useListItems","makeVListProps","baseColor","String","activeColor","activeClass","bgColor","disabled","Boolean","lines","default","nav","selectStrategy","openStrategy","variant","VList","name","emits","val","setup","_ref","slots","themeClasses","backgroundColorClasses","backgroundColorStyles","borderClasses","densityClasses","dimensionStyles","elevationClasses","roundedClasses","open","select","lineClasses","color","VListGroup","VListItem","density","isFocused","contentRef","onFocusin","e","onFocusout","onFocus","relatedTarget","contains","focus","onKeydown","key","preventDefault","location","_createVNode","tag","class","style","returnObject"],"sources":["../../../src/components/VList/VList.tsx"],"sourcesContent":["// Styles\nimport './VList.sass'\n\n// Components\nimport { VListChildren } from './VListChildren'\n\n// Composables\nimport { createList } from './list'\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeItemsProps } from '@/composables/list-items'\nimport { makeNestedProps, useNested } from '@/composables/nested/nested'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeVariantProps } from '@/composables/variant'\n\n// Utilities\nimport { computed, ref, shallowRef, toRef } from 'vue'\nimport { focusChild, genericComponent, getPropertyFromItem, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VListChildrenSlots } from './VListChildren'\nimport type { ItemProps, ListItem } from '@/composables/list-items'\nimport type { GenericProps } from '@/util'\n\nexport interface InternalListItem<T = any> extends ListItem<T> {\n type?: 'item' | 'subheader' | 'divider'\n}\n\nfunction isPrimitive (value: unknown): value is string | number | boolean {\n return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean'\n}\n\nfunction transformItem (props: ItemProps & { itemType: string }, item: any): InternalListItem {\n const type = getPropertyFromItem(item, props.itemType, 'item')\n const title = isPrimitive(item) ? item : getPropertyFromItem(item, props.itemTitle)\n const value = getPropertyFromItem(item, props.itemValue, undefined)\n const children = getPropertyFromItem(item, props.itemChildren)\n const itemProps = props.itemProps === true ? pick(item, ['children'])[1] : getPropertyFromItem(item, props.itemProps)\n\n const _props = {\n title,\n value,\n ...itemProps,\n }\n\n return {\n type,\n title: _props.title,\n value: _props.value,\n props: _props,\n children: type === 'item' && children ? transformItems(props, children) : undefined,\n raw: item,\n }\n}\n\nfunction transformItems (props: ItemProps & { itemType: string }, items: (string | object)[]) {\n const array: InternalListItem[] = []\n\n for (const item of items) {\n array.push(transformItem(props, item))\n }\n\n return array\n}\n\nfunction useListItems (props: ItemProps & { itemType: string }) {\n const items = computed(() => transformItems(props, props.items))\n\n return { items }\n}\n\nexport const makeVListProps = propsFactory({\n baseColor: String,\n /* @deprecated */\n activeColor: String,\n activeClass: String,\n bgColor: String,\n disabled: Boolean,\n lines: {\n type: [Boolean, String] as PropType<'one' | 'two' | 'three' | false>,\n default: 'one',\n },\n nav: Boolean,\n\n ...makeNestedProps({\n selectStrategy: 'single-leaf' as const,\n openStrategy: 'list' as const,\n }),\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n itemType: {\n type: String,\n default: 'type',\n },\n ...makeItemsProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'text' } as const),\n}, 'VList')\n\nexport const VList = genericComponent<new <T>(\n props: {\n items?: T[]\n },\n slots: VListChildrenSlots<T>\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VList',\n\n props: makeVListProps(),\n\n emits: {\n 'update:selected': (val: unknown[]) => true,\n 'update:opened': (val: unknown[]) => true,\n 'click:open': (value: { id: unknown, value: boolean, path: unknown[] }) => true,\n 'click:select': (value: { id: unknown, value: boolean, path: unknown[] }) => true,\n },\n\n setup (props, { slots }) {\n const { items } = useListItems(props)\n const { themeClasses } = provideTheme(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'bgColor'))\n const { borderClasses } = useBorder(props)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n const { open, select } = useNested(props)\n const lineClasses = computed(() => props.lines ? `v-list--${props.lines}-line` : undefined)\n const activeColor = toRef(props, 'activeColor')\n const baseColor = toRef(props, 'baseColor')\n const color = toRef(props, 'color')\n\n createList()\n\n provideDefaults({\n VListGroup: {\n activeColor,\n baseColor,\n color,\n },\n VListItem: {\n activeClass: toRef(props, 'activeClass'),\n activeColor,\n baseColor,\n color,\n density: toRef(props, 'density'),\n disabled: toRef(props, 'disabled'),\n lines: toRef(props, 'lines'),\n nav: toRef(props, 'nav'),\n variant: toRef(props, 'variant'),\n },\n })\n\n const isFocused = shallowRef(false)\n const contentRef = ref<HTMLElement>()\n function onFocusin (e: FocusEvent) {\n isFocused.value = true\n }\n\n function onFocusout (e: FocusEvent) {\n isFocused.value = false\n }\n\n function onFocus (e: FocusEvent) {\n if (\n !isFocused.value &&\n !(e.relatedTarget && contentRef.value?.contains(e.relatedTarget as Node))\n ) focus()\n }\n\n function onKeydown (e: KeyboardEvent) {\n if (!contentRef.value) return\n\n if (e.key === 'ArrowDown') {\n focus('next')\n } else if (e.key === 'ArrowUp') {\n focus('prev')\n } else if (e.key === 'Home') {\n focus('first')\n } else if (e.key === 'End') {\n focus('last')\n } else {\n return\n }\n\n e.preventDefault()\n }\n\n function focus (location?: 'next' | 'prev' | 'first' | 'last') {\n if (contentRef.value) {\n return focusChild(contentRef.value, location)\n }\n }\n\n useRender(() => {\n return (\n <props.tag\n ref={ contentRef }\n class={[\n 'v-list',\n {\n 'v-list--disabled': props.disabled,\n 'v-list--nav': props.nav,\n },\n themeClasses.value,\n backgroundColorClasses.value,\n borderClasses.value,\n densityClasses.value,\n elevationClasses.value,\n lineClasses.value,\n roundedClasses.value,\n props.class,\n ]}\n style={[\n backgroundColorStyles.value,\n dimensionStyles.value,\n props.style,\n ]}\n tabindex={ (props.disabled || isFocused.value) ? -1 : 0 }\n role=\"listbox\"\n aria-activedescendant={ undefined }\n onFocusin={ onFocusin }\n onFocusout={ onFocusout }\n onFocus={ onFocus }\n onKeydown={ onKeydown }\n >\n <VListChildren\n items={ items.value }\n returnObject={ props.returnObject }\n v-slots={ slots }\n />\n </props.tag>\n )\n })\n\n return {\n open,\n select,\n focus,\n }\n },\n})\n\nexport type VList = InstanceType<typeof VList>\n"],"mappings":"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"}
@@ -7,7 +7,8 @@ import { VDivider } from "../VDivider/index.mjs"; // Utilities
7
7
  import { createList } from "./list.mjs";
8
8
  import { genericComponent, propsFactory } from "../../util/index.mjs"; // Types
9
9
  export const makeVListChildrenProps = propsFactory({
10
- items: Array
10
+ items: Array,
11
+ returnObject: Boolean
11
12
  }, 'VListChildren');
12
13
  export const VListChildren = genericComponent()({
13
14
  name: 'VListChildren',
@@ -65,14 +66,20 @@ export const VListChildren = genericComponent()({
65
66
  ...itemProps,
66
67
  ...activatorProps
67
68
  }
68
- }) : _createVNode(VListItem, _mergeProps(itemProps, activatorProps), slotsWithItem);
69
+ }) : _createVNode(VListItem, _mergeProps({
70
+ "title": itemProps.title,
71
+ "value": props.returnObject ? item : itemProps.value
72
+ }, activatorProps), slotsWithItem);
69
73
  },
70
74
  default: () => _createVNode(VListChildren, {
71
75
  "items": children
72
76
  }, slots)
73
77
  }) : slots.item ? slots.item({
74
78
  props: itemProps
75
- }) : _createVNode(VListItem, itemProps, slotsWithItem);
79
+ }) : _createVNode(VListItem, {
80
+ "title": itemProps.title,
81
+ "value": props.returnObject ? item : itemProps.value
82
+ }, slotsWithItem);
76
83
  });
77
84
  }
78
85
  });
@@ -1 +1 @@
1
- {"version":3,"file":"VListChildren.mjs","names":["VListGroup","VListItem","VListSubheader","VDivider","createList","genericComponent","propsFactory","makeVListChildrenProps","items","Array","VListChildren","name","props","setup","_ref","slots","default","map","_ref2","children","itemProps","type","raw","item","divider","_createVNode","subheader","slotsWithItem","subtitle","slotProps","undefined","prepend","append","title","listGroupProps","_1","filterProps","_mergeProps","value","activator","_ref3","activatorProps","header"],"sources":["../../../src/components/VList/VListChildren.tsx"],"sourcesContent":["// Components\nimport { VListGroup } from './VListGroup'\nimport { VListItem } from './VListItem'\nimport { VListSubheader } from './VListSubheader'\nimport { VDivider } from '../VDivider'\n\n// Utilities\nimport { createList } from './list'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { InternalListItem } from './VList'\nimport type { VListItemSlots } from './VListItem'\nimport type { GenericProps } from '@/util'\n\nexport type VListChildrenSlots<T> = {\n [K in keyof Omit<VListItemSlots, 'default'>]: VListItemSlots[K] & { item: T }\n} & {\n default: never\n item: { props: InternalListItem['props'] }\n divider: { props: InternalListItem['props'] }\n subheader: { props: InternalListItem['props'] }\n header: { props: InternalListItem['props'] }\n}\n\nexport const makeVListChildrenProps = propsFactory({\n items: Array as PropType<readonly InternalListItem[]>,\n}, 'VListChildren')\n\nexport const VListChildren = genericComponent<new <T extends InternalListItem>(\n props: {\n items?: readonly T[]\n },\n slots: VListChildrenSlots<T>\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VListChildren',\n\n props: makeVListChildrenProps(),\n\n setup (props, { slots }) {\n createList()\n\n return () => slots.default?.() ?? props.items?.map(({ children, props: itemProps, type, raw: item }) => {\n if (type === 'divider') {\n return slots.divider?.({ props: itemProps }) ?? (\n <VDivider { ...itemProps } />\n )\n }\n\n if (type === 'subheader') {\n return slots.subheader?.({ props: itemProps }) ?? (\n <VListSubheader { ...itemProps } />\n )\n }\n\n const slotsWithItem = {\n subtitle: slots.subtitle ? (slotProps: any) => slots.subtitle?.({ ...slotProps, item }) : undefined,\n prepend: slots.prepend ? (slotProps: any) => slots.prepend?.({ ...slotProps, item }) : undefined,\n append: slots.append ? (slotProps: any) => slots.append?.({ ...slotProps, item }) : undefined,\n title: slots.title ? (slotProps: any) => slots.title?.({ ...slotProps, item }) : undefined,\n }\n\n const [listGroupProps, _1] = VListGroup.filterProps(itemProps)\n\n return children ? (\n <VListGroup\n value={ itemProps?.value }\n { ...listGroupProps }\n >\n {{\n activator: ({ props: activatorProps }) => slots.header\n ? slots.header({ props: { ...itemProps, ...activatorProps } })\n : <VListItem { ...itemProps } { ...activatorProps } v-slots={ slotsWithItem } />,\n default: () => (\n <VListChildren items={ children } v-slots={ slots } />\n ),\n }}\n </VListGroup>\n ) : (\n slots.item ? slots.item({ props: itemProps }) : (\n <VListItem\n { ...itemProps }\n v-slots={ slotsWithItem }\n />\n )\n )\n })\n },\n})\n"],"mappings":"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"}
1
+ {"version":3,"file":"VListChildren.mjs","names":["VListGroup","VListItem","VListSubheader","VDivider","createList","genericComponent","propsFactory","makeVListChildrenProps","items","Array","returnObject","Boolean","VListChildren","name","props","setup","_ref","slots","default","map","_ref2","children","itemProps","type","raw","item","divider","_createVNode","subheader","slotsWithItem","subtitle","slotProps","undefined","prepend","append","title","listGroupProps","_1","filterProps","_mergeProps","value","activator","_ref3","activatorProps","header"],"sources":["../../../src/components/VList/VListChildren.tsx"],"sourcesContent":["// Components\nimport { VListGroup } from './VListGroup'\nimport { VListItem } from './VListItem'\nimport { VListSubheader } from './VListSubheader'\nimport { VDivider } from '../VDivider'\n\n// Utilities\nimport { createList } from './list'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { InternalListItem } from './VList'\nimport type { VListItemSlots } from './VListItem'\nimport type { GenericProps } from '@/util'\n\nexport type VListChildrenSlots<T> = {\n [K in keyof Omit<VListItemSlots, 'default'>]: VListItemSlots[K] & { item: T }\n} & {\n default: never\n item: { props: InternalListItem['props'] }\n divider: { props: InternalListItem['props'] }\n subheader: { props: InternalListItem['props'] }\n header: { props: InternalListItem['props'] }\n}\n\nexport const makeVListChildrenProps = propsFactory({\n items: Array as PropType<readonly InternalListItem[]>,\n returnObject: Boolean,\n}, 'VListChildren')\n\nexport const VListChildren = genericComponent<new <T extends InternalListItem>(\n props: {\n items?: readonly T[]\n returnObject?: boolean\n },\n slots: VListChildrenSlots<T>\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VListChildren',\n\n props: makeVListChildrenProps(),\n\n setup (props, { slots }) {\n createList()\n\n return () => slots.default?.() ?? props.items?.map(({ children, props: itemProps, type, raw: item }) => {\n if (type === 'divider') {\n return slots.divider?.({ props: itemProps }) ?? (\n <VDivider { ...itemProps } />\n )\n }\n\n if (type === 'subheader') {\n return slots.subheader?.({ props: itemProps }) ?? (\n <VListSubheader { ...itemProps } />\n )\n }\n\n const slotsWithItem = {\n subtitle: slots.subtitle ? (slotProps: any) => slots.subtitle?.({ ...slotProps, item }) : undefined,\n prepend: slots.prepend ? (slotProps: any) => slots.prepend?.({ ...slotProps, item }) : undefined,\n append: slots.append ? (slotProps: any) => slots.append?.({ ...slotProps, item }) : undefined,\n title: slots.title ? (slotProps: any) => slots.title?.({ ...slotProps, item }) : undefined,\n }\n\n const [listGroupProps, _1] = VListGroup.filterProps(itemProps)\n\n return children ? (\n <VListGroup\n value={ itemProps?.value }\n { ...listGroupProps }\n >\n {{\n activator: ({ props: activatorProps }) => slots.header\n ? slots.header({ props: { ...itemProps, ...activatorProps } })\n : (\n <VListItem\n title={ itemProps.title }\n value={ props.returnObject ? item : itemProps.value }\n { ...activatorProps }\n v-slots={ slotsWithItem }\n />\n ),\n default: () => (\n <VListChildren items={ children } v-slots={ slots } />\n ),\n }}\n </VListGroup>\n ) : (\n slots.item ? slots.item({ props: itemProps }) : (\n <VListItem\n title={ itemProps.title }\n value={ props.returnObject ? item : itemProps.value }\n v-slots={ slotsWithItem }\n />\n )\n )\n })\n },\n})\n"],"mappings":"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"}
@@ -33,7 +33,7 @@ interface FilterPropsOptions<PropsOptions extends Readonly<ComponentPropsOptions
33
33
  }
34
34
 
35
35
  declare function deepEqual(a: any, b: any): boolean;
36
- type SelectItemKey = boolean | string | (string | number)[] | ((item: Record<string, any>, fallback?: any) => any);
36
+ type SelectItemKey = boolean | null | undefined | string | (string | number)[] | ((item: Record<string, any>, fallback?: any) => any);
37
37
  type EventProp<T extends any[] = any[], F = (...args: T) => any> = F | F[];
38
38
  declare const EventProp: <T extends any[] = any[]>() => PropType<EventProp<T, (...args: T) => any>>;
39
39
 
@@ -718,11 +718,11 @@ declare const VList: {
718
718
  selectStrategy?: NonNullable<SelectStrategy> | undefined;
719
719
  openStrategy?: NonNullable<OpenStrategyProp> | undefined;
720
720
  lines?: false | "one" | "two" | "three" | undefined;
721
- itemTitle?: SelectItemKey | undefined;
722
- itemValue?: SelectItemKey | undefined;
723
- itemChildren?: SelectItemKey | undefined;
724
- itemProps?: SelectItemKey | undefined;
725
721
  returnObject?: boolean | undefined;
722
+ itemTitle?: SelectItemKey;
723
+ itemValue?: SelectItemKey;
724
+ itemChildren?: SelectItemKey;
725
+ itemProps?: SelectItemKey;
726
726
  itemType?: string | undefined;
727
727
  key?: string | number | symbol | undefined;
728
728
  height?: string | number | undefined;
@@ -897,11 +897,11 @@ declare const VList: {
897
897
  selectStrategy: NonNullable<SelectStrategy>;
898
898
  openStrategy: NonNullable<OpenStrategyProp>;
899
899
  lines: false | "one" | "two" | "three";
900
+ returnObject: boolean;
900
901
  itemTitle: SelectItemKey;
901
902
  itemValue: SelectItemKey;
902
903
  itemChildren: SelectItemKey;
903
904
  itemProps: SelectItemKey;
904
- returnObject: boolean;
905
905
  itemType: string;
906
906
  } & {
907
907
  height?: string | number | undefined;
@@ -965,11 +965,11 @@ declare const VList: {
965
965
  selectStrategy: NonNullable<SelectStrategy>;
966
966
  openStrategy: NonNullable<OpenStrategyProp>;
967
967
  lines: false | "one" | "two" | "three";
968
+ returnObject: boolean;
968
969
  itemTitle: SelectItemKey;
969
970
  itemValue: SelectItemKey;
970
971
  itemChildren: SelectItemKey;
971
972
  itemProps: SelectItemKey;
972
- returnObject: boolean;
973
973
  itemType: string;
974
974
  }, {}, string, vue.SlotsType<Partial<{
975
975
  title: (arg: ListItemTitleSlot & {
@@ -1073,11 +1073,11 @@ declare const VList: {
1073
1073
  selectStrategy: NonNullable<SelectStrategy>;
1074
1074
  openStrategy: NonNullable<OpenStrategyProp>;
1075
1075
  lines: false | "one" | "two" | "three";
1076
+ returnObject: boolean;
1076
1077
  itemTitle: SelectItemKey;
1077
1078
  itemValue: SelectItemKey;
1078
1079
  itemChildren: SelectItemKey;
1079
1080
  itemProps: SelectItemKey;
1080
- returnObject: boolean;
1081
1081
  itemType: string;
1082
1082
  } & {
1083
1083
  height?: string | number | undefined;
@@ -1131,11 +1131,11 @@ declare const VList: {
1131
1131
  selectStrategy: NonNullable<SelectStrategy>;
1132
1132
  openStrategy: NonNullable<OpenStrategyProp>;
1133
1133
  lines: false | "one" | "two" | "three";
1134
+ returnObject: boolean;
1134
1135
  itemTitle: SelectItemKey;
1135
1136
  itemValue: SelectItemKey;
1136
1137
  itemChildren: SelectItemKey;
1137
1138
  itemProps: SelectItemKey;
1138
- returnObject: boolean;
1139
1139
  itemType: string;
1140
1140
  } & {
1141
1141
  height?: string | number | undefined;
@@ -1199,11 +1199,11 @@ declare const VList: {
1199
1199
  selectStrategy: NonNullable<SelectStrategy>;
1200
1200
  openStrategy: NonNullable<OpenStrategyProp>;
1201
1201
  lines: false | "one" | "two" | "three";
1202
+ returnObject: boolean;
1202
1203
  itemTitle: SelectItemKey;
1203
1204
  itemValue: SelectItemKey;
1204
1205
  itemChildren: SelectItemKey;
1205
1206
  itemProps: SelectItemKey;
1206
- returnObject: boolean;
1207
1207
  itemType: string;
1208
1208
  }, {}, string, vue.SlotsType<Partial<{
1209
1209
  title: (arg: ListItemTitleSlot & {
@@ -226,6 +226,7 @@ export const VSelect = genericComponent()({
226
226
  "focused": isFocused.value,
227
227
  "onUpdate:focused": $event => isFocused.value = $event,
228
228
  "validationValue": model.externalValue,
229
+ "counterValue": model.value.length,
229
230
  "dirty": isDirty,
230
231
  "class": ['v-select', {
231
232
  'v-select--active-menu': menu.value,
@@ -332,7 +333,8 @@ export const VSelect = genericComponent()({
332
333
  "key": "chip",
333
334
  "closable": props.closableChips,
334
335
  "size": "small",
335
- "text": item.title
336
+ "text": item.title,
337
+ "disabled": item.props.disabled
336
338
  }, slotProps), null) : _createVNode(VDefaultsProvider, {
337
339
  "key": "chip-defaults",
338
340
  "defaults": {
@@ -1 +1 @@
1
- {"version":3,"file":"VSelect.mjs","names":["VDialogTransition","VCheckboxBtn","VChip","VDefaultsProvider","VIcon","VList","VListItem","VMenu","makeVTextFieldProps","VTextField","VVirtualScroll","useScrolling","useForm","forwardRefs","IconValue","makeItemsProps","useItems","useLocale","useProxiedModel","makeTransitionProps","computed","mergeProps","ref","shallowRef","watch","genericComponent","IN_BROWSER","matchesSelector","omit","propsFactory","useRender","wrapInArray","makeSelectProps","chips","Boolean","closableChips","closeText","type","String","default","openText","eager","hideNoData","hideSelected","menu","menuIcon","menuProps","Object","multiple","noDataText","openOnClear","itemColor","itemChildren","makeVSelectProps","modelValue","role","transition","component","VSelect","name","props","emits","focused","val","setup","_ref","slots","t","vTextFieldRef","vMenuRef","vVirtualScrollRef","_menu","get","value","set","v","ΨopenChildren","items","transformIn","transformOut","model","transformed","form","selectedValues","map","selection","isFocused","label","keyboardLookupPrefix","keyboardLookupLastTime","displayItems","filter","item","some","s","menuDisabled","length","readonly","isReadonly","listRef","onListScroll","onListKeydown","onClear","e","onMousedownControl","onKeydown","key","includes","preventDefault","focus","KEYBOARD_LOOKUP_THRESHOLD","checkPrintable","isPrintableChar","noModifier","ctrlKey","metaKey","altKey","now","performance","toLowerCase","find","title","startsWith","undefined","select","index","findIndex","valueComparator","splice","onBlur","$el","contains","relatedTarget","onAfterLeave","onFocusin","onModelUpdate","window","requestAnimationFrame","scrollToIndex","hasChips","chip","hasList","isDirty","textFieldProps","filterProps","placeholder","persistentPlaceholder","_createVNode","_mergeProps","join","$event","externalValue","class","style","_Fragment","color","_ref2","itemRef","itemProps","onClick","prepend","_ref3","isSelected","prependIcon","onChipClose","stopPropagation","slotProps","onMousedown","closable","size","text","_createTextVNode","append-inner","_len","arguments","args","Array","_key"],"sources":["../../../src/components/VSelect/VSelect.tsx"],"sourcesContent":["// Styles\nimport './VSelect.sass'\n\n// Components\nimport { VDialogTransition } from '@/components/transitions'\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 { 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 { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeTransitionProps } from '@/composables/transition'\n\n// Utilities\nimport { computed, mergeProps, ref, shallowRef, watch } from 'vue'\nimport {\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 } 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 closeText: {\n type: String,\n default: '$vuetify.close',\n },\n openText: {\n type: String,\n default: '$vuetify.open',\n },\n eager: Boolean,\n hideNoData: Boolean,\n hideSelected: Boolean,\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\n ...makeItemsProps({ itemChildren: false }),\n}, 'Select')\n\nexport const makeVSelectProps = propsFactory({\n ...makeSelectProps(),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n role: 'button',\n }), ['validationValue', 'dirty', 'appendInnerIcon']),\n ...makeTransitionProps({ transition: { component: VDialogTransition as Component } }),\n}, 'VSelect')\n\nexport const VSelect = genericComponent<new <\n T extends readonly any[],\n Item = T extends readonly (infer U)[] ? U : never,\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 returnObject?: ReturnObject\n multiple?: Multiple\n modelValue?: V | null\n 'onUpdate:modelValue'?: (val: 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: 'VSelect',\n\n props: makeVSelectProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (val: any) => true,\n 'update:menu': (val: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref()\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) return\n _menu.value = v\n },\n })\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 form = useForm()\n const selectedValues = computed(() => model.value.map(selection => selection.value))\n const isFocused = shallowRef(false)\n const label = computed(() => menu.value ? props.closeText : props.openText)\n\n let keyboardLookupPrefix = ''\n let keyboardLookupLastTime: number\n\n const displayItems = computed(() => {\n if (props.hideSelected) {\n return items.value.filter(item => !model.value.some(s => s === item))\n }\n return items.value\n })\n\n const menuDisabled = computed(() => (\n (props.hideNoData && !items.value.length) ||\n props.readonly || form?.isReadonly.value\n ))\n\n const listRef = ref<VList>()\n const { onListScroll, onListKeydown } = 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 onKeydown (e: KeyboardEvent) {\n if (!e.key || props.readonly || 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 function checkPrintable (e: KeyboardEvent) {\n const isPrintableChar = e.key.length === 1\n const noModifier = !e.ctrlKey && !e.metaKey && !e.altKey\n return isPrintableChar && noModifier\n }\n\n if (props.multiple || !checkPrintable(e)) return\n\n const now = performance.now()\n if (now - keyboardLookupLastTime > KEYBOARD_LOOKUP_THRESHOLD) {\n keyboardLookupPrefix = ''\n }\n keyboardLookupPrefix += e.key.toLowerCase()\n keyboardLookupLastTime = now\n\n const item = items.value.find(item => item.title.toLowerCase().startsWith(keyboardLookupPrefix))\n if (item !== undefined) {\n model.value = [item]\n }\n }\n function select (item: ListItem) {\n if (props.multiple) {\n const index = model.value.findIndex(selection => props.valueComparator(selection.value, item.value))\n\n if (index === -1) {\n model.value = [...model.value, item]\n } else {\n const value = [...model.value]\n value.splice(index, 1)\n model.value = value\n }\n } else {\n model.value = [item]\n menu.value = false\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 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(s.value, item.value))\n )\n IN_BROWSER && window.requestAnimationFrame(() => {\n index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index)\n })\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 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-label={ t(label.value) }\n title={ t(label.value) }\n >\n {{\n ...slots,\n default: () => (\n <>\n <VMenu\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 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 onScrollPassive={ onListScroll }\n tabindex=\"-1\"\n color={ props.itemColor ?? props.color }\n >\n { slots['prepend-item']?.() }\n\n { !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? (\n <VListItem 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: index,\n onClick: () => select(item),\n })\n\n return slots.item?.({\n item,\n index,\n props: itemProps,\n }) ?? (\n <VListItem { ...itemProps }>\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.prependIcon && (\n <VIcon icon={ item.props.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)\n }\n\n const slotProps = {\n 'onClick:close': onChipClose,\n onMousedown (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n },\n modelValue: true,\n 'onUpdate:modelValue': undefined,\n }\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 { ...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 { slots.chip?.({ item, index, props: slotProps }) }\n </VDefaultsProvider>\n )\n ) : (\n slots.selection?.({ item, index }) ?? (\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 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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"}
1
+ {"version":3,"file":"VSelect.mjs","names":["VDialogTransition","VCheckboxBtn","VChip","VDefaultsProvider","VIcon","VList","VListItem","VMenu","makeVTextFieldProps","VTextField","VVirtualScroll","useScrolling","useForm","forwardRefs","IconValue","makeItemsProps","useItems","useLocale","useProxiedModel","makeTransitionProps","computed","mergeProps","ref","shallowRef","watch","genericComponent","IN_BROWSER","matchesSelector","omit","propsFactory","useRender","wrapInArray","makeSelectProps","chips","Boolean","closableChips","closeText","type","String","default","openText","eager","hideNoData","hideSelected","menu","menuIcon","menuProps","Object","multiple","noDataText","openOnClear","itemColor","itemChildren","makeVSelectProps","modelValue","role","transition","component","VSelect","name","props","emits","focused","val","setup","_ref","slots","t","vTextFieldRef","vMenuRef","vVirtualScrollRef","_menu","get","value","set","v","ΨopenChildren","items","transformIn","transformOut","model","transformed","form","selectedValues","map","selection","isFocused","label","keyboardLookupPrefix","keyboardLookupLastTime","displayItems","filter","item","some","s","menuDisabled","length","readonly","isReadonly","listRef","onListScroll","onListKeydown","onClear","e","onMousedownControl","onKeydown","key","includes","preventDefault","focus","KEYBOARD_LOOKUP_THRESHOLD","checkPrintable","isPrintableChar","noModifier","ctrlKey","metaKey","altKey","now","performance","toLowerCase","find","title","startsWith","undefined","select","index","findIndex","valueComparator","splice","onBlur","$el","contains","relatedTarget","onAfterLeave","onFocusin","onModelUpdate","window","requestAnimationFrame","scrollToIndex","hasChips","chip","hasList","isDirty","textFieldProps","filterProps","placeholder","persistentPlaceholder","_createVNode","_mergeProps","join","$event","externalValue","class","style","_Fragment","color","_ref2","itemRef","itemProps","onClick","prepend","_ref3","isSelected","prependIcon","onChipClose","stopPropagation","slotProps","onMousedown","disabled","closable","size","text","_createTextVNode","append-inner","_len","arguments","args","Array","_key"],"sources":["../../../src/components/VSelect/VSelect.tsx"],"sourcesContent":["// Styles\nimport './VSelect.sass'\n\n// Components\nimport { VDialogTransition } from '@/components/transitions'\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 { 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 { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeTransitionProps } from '@/composables/transition'\n\n// Utilities\nimport { computed, mergeProps, ref, shallowRef, watch } from 'vue'\nimport {\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 } 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 closeText: {\n type: String,\n default: '$vuetify.close',\n },\n openText: {\n type: String,\n default: '$vuetify.open',\n },\n eager: Boolean,\n hideNoData: Boolean,\n hideSelected: Boolean,\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\n ...makeItemsProps({ itemChildren: false }),\n}, 'Select')\n\nexport const makeVSelectProps = propsFactory({\n ...makeSelectProps(),\n ...omit(makeVTextFieldProps({\n modelValue: null,\n role: 'button',\n }), ['validationValue', 'dirty', 'appendInnerIcon']),\n ...makeTransitionProps({ transition: { component: VDialogTransition as Component } }),\n}, 'VSelect')\n\nexport const VSelect = genericComponent<new <\n T extends readonly any[],\n Item = T extends readonly (infer U)[] ? U : never,\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 returnObject?: ReturnObject\n multiple?: Multiple\n modelValue?: V | null\n 'onUpdate:modelValue'?: (val: 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: 'VSelect',\n\n props: makeVSelectProps(),\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (val: any) => true,\n 'update:menu': (val: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref()\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) return\n _menu.value = v\n },\n })\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 form = useForm()\n const selectedValues = computed(() => model.value.map(selection => selection.value))\n const isFocused = shallowRef(false)\n const label = computed(() => menu.value ? props.closeText : props.openText)\n\n let keyboardLookupPrefix = ''\n let keyboardLookupLastTime: number\n\n const displayItems = computed(() => {\n if (props.hideSelected) {\n return items.value.filter(item => !model.value.some(s => s === item))\n }\n return items.value\n })\n\n const menuDisabled = computed(() => (\n (props.hideNoData && !items.value.length) ||\n props.readonly || form?.isReadonly.value\n ))\n\n const listRef = ref<VList>()\n const { onListScroll, onListKeydown } = 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 onKeydown (e: KeyboardEvent) {\n if (!e.key || props.readonly || 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 function checkPrintable (e: KeyboardEvent) {\n const isPrintableChar = e.key.length === 1\n const noModifier = !e.ctrlKey && !e.metaKey && !e.altKey\n return isPrintableChar && noModifier\n }\n\n if (props.multiple || !checkPrintable(e)) return\n\n const now = performance.now()\n if (now - keyboardLookupLastTime > KEYBOARD_LOOKUP_THRESHOLD) {\n keyboardLookupPrefix = ''\n }\n keyboardLookupPrefix += e.key.toLowerCase()\n keyboardLookupLastTime = now\n\n const item = items.value.find(item => item.title.toLowerCase().startsWith(keyboardLookupPrefix))\n if (item !== undefined) {\n model.value = [item]\n }\n }\n function select (item: ListItem) {\n if (props.multiple) {\n const index = model.value.findIndex(selection => props.valueComparator(selection.value, item.value))\n\n if (index === -1) {\n model.value = [...model.value, item]\n } else {\n const value = [...model.value]\n value.splice(index, 1)\n model.value = value\n }\n } else {\n model.value = [item]\n menu.value = false\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 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(s.value, item.value))\n )\n IN_BROWSER && window.requestAnimationFrame(() => {\n index >= 0 && vVirtualScrollRef.value?.scrollToIndex(index)\n })\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={ model.value.length }\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-label={ t(label.value) }\n title={ t(label.value) }\n >\n {{\n ...slots,\n default: () => (\n <>\n <VMenu\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 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 onScrollPassive={ onListScroll }\n tabindex=\"-1\"\n color={ props.itemColor ?? props.color }\n >\n { slots['prepend-item']?.() }\n\n { !displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? (\n <VListItem 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: index,\n onClick: () => select(item),\n })\n\n return slots.item?.({\n item,\n index,\n props: itemProps,\n }) ?? (\n <VListItem { ...itemProps }>\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.prependIcon && (\n <VIcon icon={ item.props.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)\n }\n\n const slotProps = {\n 'onClick:close': onChipClose,\n onMousedown (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n },\n modelValue: true,\n 'onUpdate:modelValue': undefined,\n }\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 { slots.chip?.({ item, index, props: slotProps }) }\n </VDefaultsProvider>\n )\n ) : (\n slots.selection?.({ item, index }) ?? (\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 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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"}