@vuetify/nightly 3.7.11-master.2025-02-08 → 3.7.11-master.2025-02-11

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 (41) hide show
  1. package/CHANGELOG.md +8 -4
  2. package/dist/json/attributes.json +1459 -1471
  3. package/dist/json/importMap-labs.json +34 -34
  4. package/dist/json/importMap.json +256 -256
  5. package/dist/json/tags.json +0 -3
  6. package/dist/json/web-types.json +2831 -2858
  7. package/dist/vuetify-labs.css +5299 -5298
  8. package/dist/vuetify-labs.d.ts +20 -38
  9. package/dist/vuetify-labs.esm.js +33 -20
  10. package/dist/vuetify-labs.esm.js.map +1 -1
  11. package/dist/vuetify-labs.js +33 -20
  12. package/dist/vuetify-labs.min.css +2 -2
  13. package/dist/vuetify.css +4586 -4585
  14. package/dist/vuetify.d.ts +63 -75
  15. package/dist/vuetify.esm.js +31 -18
  16. package/dist/vuetify.esm.js.map +1 -1
  17. package/dist/vuetify.js +31 -18
  18. package/dist/vuetify.js.map +1 -1
  19. package/dist/vuetify.min.css +2 -2
  20. package/dist/vuetify.min.js +17 -12
  21. package/dist/vuetify.min.js.map +1 -1
  22. package/lib/components/VDatePicker/VDatePickerMonth.mjs +2 -2
  23. package/lib/components/VDatePicker/VDatePickerMonth.mjs.map +1 -1
  24. package/lib/components/VDatePicker/index.d.mts +12 -24
  25. package/lib/components/VOverlay/VOverlay.css +2 -1
  26. package/lib/components/VOverlay/VOverlay.sass +2 -1
  27. package/lib/components/VOverlay/_variables.scss +1 -1
  28. package/lib/components/VSlider/slider.mjs +25 -12
  29. package/lib/components/VSlider/slider.mjs.map +1 -1
  30. package/lib/components/index.d.mts +12 -24
  31. package/lib/composables/calendar.mjs.map +1 -1
  32. package/lib/composables/list-items.mjs +3 -3
  33. package/lib/composables/list-items.mjs.map +1 -1
  34. package/lib/entry-bundler.mjs +1 -1
  35. package/lib/framework.mjs +1 -1
  36. package/lib/index.d.mts +51 -51
  37. package/lib/labs/VDateInput/VDateInput.mjs +2 -2
  38. package/lib/labs/VDateInput/VDateInput.mjs.map +1 -1
  39. package/lib/labs/VDateInput/index.d.mts +8 -14
  40. package/lib/labs/components.d.mts +8 -14
  41. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"calendar.mjs","names":["getWeek","useDate","useProxiedModel","computed","propsFactory","wrapInArray","makeCalendarProps","allowedDates","Array","Function","disabled","Boolean","displayValue","modelValue","month","Number","String","max","min","showAdjacentMonths","year","weekdays","type","default","weeksInMonth","firstDayOfWeek","useCalendar","props","adapter","model","v","date","value","length","isArray","undefined","getYear","startOfYear","setYear","getMonth","startOfMonth","setMonth","defaultFirstDayOfWeek","weekDays","map","day","weeks","getWeekArray","days","flat","daysInMonth","lastDay","week","push","addDays","genDays","today","filter","includes","toJsDate","getDay","index","isoDate","toISO","isAdjacent","isSameMonth","isStart","isSameDay","isEnd","endOfMonth","isSame","formatted","format","isDisabled","isWeekStart","isWeekEnd","isToday","isHidden","isSelected","some","localized","daysInWeek","startOfWeek","weekNumbers","isAfter","d"],"sources":["../../src/composables/calendar.ts"],"sourcesContent":["// Composables\nimport { getWeek, useDate } from '@/composables/date/date'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed } from 'vue'\nimport { propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\nexport interface CalendarProps {\n allowedDates: unknown[] | ((date: unknown) => boolean) | undefined\n disabled: boolean\n displayValue: unknown\n modelValue: unknown[] | undefined\n max: unknown\n min: unknown\n showAdjacentMonths: boolean\n month: number | string | undefined\n weekdays: number[]\n year: number | string | undefined\n weeksInMonth: 'dynamic' | 'static'\n firstDayOfWeek: number | string | undefined\n\n 'onUpdate:modelValue': ((value: unknown[]) => void) | undefined\n 'onUpdate:month': ((value: number) => void) | undefined\n 'onUpdate:year': ((value: number) => void) | undefined\n}\n\n// Composables\nexport const makeCalendarProps = propsFactory({\n allowedDates: [Array, Function] as PropType<unknown[] | ((date: unknown) => boolean)>,\n disabled: Boolean,\n displayValue: null as any as PropType<unknown>,\n modelValue: Array as PropType<unknown[]>,\n month: [Number, String],\n max: null as any as PropType<unknown>,\n min: null as any as PropType<unknown>,\n showAdjacentMonths: Boolean,\n year: [Number, String],\n weekdays: {\n type: Array<number>,\n default: () => [0, 1, 2, 3, 4, 5, 6],\n },\n weeksInMonth: {\n type: String as PropType<'dynamic' | 'static'>,\n default: 'dynamic',\n },\n firstDayOfWeek: [Number, String],\n}, 'calendar')\n\nexport function useCalendar (props: CalendarProps) {\n const adapter = useDate()\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => wrapInArray(v),\n )\n const displayValue = computed(() => {\n if (props.displayValue) return adapter.date(props.displayValue)\n if (model.value.length > 0) return adapter.date(model.value[0])\n if (props.min) return adapter.date(props.min)\n if (Array.isArray(props.allowedDates)) return adapter.date(props.allowedDates[0])\n\n return adapter.date()\n })\n\n const year = useProxiedModel(\n props,\n 'year',\n undefined,\n v => {\n const value = v != null ? Number(v) : adapter.getYear(displayValue.value)\n\n return adapter.startOfYear(adapter.setYear(adapter.date(), value))\n },\n v => adapter.getYear(v)\n )\n\n const month = useProxiedModel(\n props,\n 'month',\n undefined,\n v => {\n const value = v != null ? Number(v) : adapter.getMonth(displayValue.value)\n const date = adapter.setYear(adapter.startOfMonth(adapter.date()), adapter.getYear(year.value))\n\n return adapter.setMonth(date, value)\n },\n v => adapter.getMonth(v)\n )\n\n const defaultFirstDayOfWeek = computed(() => {\n return props.firstDayOfWeek ?? props.weekdays[0]\n })\n\n const weekDays = computed(() => {\n const firstDayOfWeek = Number(props.firstDayOfWeek ?? 0)\n return props.weekdays.map(day => (day + firstDayOfWeek) % 7)\n })\n\n const weeksInMonth = computed(() => {\n const weeks = adapter.getWeekArray(month.value, defaultFirstDayOfWeek.value)\n\n const days = weeks.flat()\n\n // Make sure there's always 6 weeks in month (6 * 7 days)\n // if weeksInMonth is 'static'\n const daysInMonth = 6 * 7\n if (props.weeksInMonth === 'static' && days.length < daysInMonth) {\n const lastDay = days[days.length - 1]\n\n let week = []\n for (let day = 1; day <= daysInMonth - days.length; day++) {\n week.push(adapter.addDays(lastDay, day))\n\n if (day % 7 === 0) {\n weeks.push(week)\n week = []\n }\n }\n }\n\n return weeks\n })\n\n function genDays (days: unknown[], today: unknown) {\n return days.filter(date => {\n return weekDays.value.includes(adapter.toJsDate(date).getDay())\n }).map((date, index) => {\n const isoDate = adapter.toISO(date)\n const isAdjacent = !adapter.isSameMonth(date, month.value)\n const isStart = adapter.isSameDay(date, adapter.startOfMonth(month.value))\n const isEnd = adapter.isSameDay(date, adapter.endOfMonth(month.value))\n const isSame = adapter.isSameDay(date, month.value)\n\n return {\n date,\n isoDate,\n formatted: adapter.format(date, 'keyboardDate'),\n year: adapter.getYear(date),\n month: adapter.getMonth(date),\n isDisabled: isDisabled(date),\n isWeekStart: index % 7 === 0,\n isWeekEnd: index % 7 === 6,\n isToday: adapter.isSameDay(date, today),\n isAdjacent,\n isHidden: isAdjacent && !props.showAdjacentMonths,\n isStart,\n isSelected: model.value.some(value => adapter.isSameDay(date, value)),\n isEnd,\n isSame,\n localized: adapter.format(date, 'dayOfMonth'),\n }\n })\n }\n\n const daysInWeek = computed(() => {\n const lastDay = adapter.startOfWeek(displayValue.value, props.firstDayOfWeek)\n const week = []\n for (let day = 0; day <= 6; day++) {\n week.push(adapter.addDays(lastDay, day))\n }\n\n const today = adapter.date()\n\n return genDays(week, today)\n })\n\n const daysInMonth = computed(() => {\n const days = weeksInMonth.value.flat()\n const today = adapter.date() as Date\n\n return genDays(days, today)\n })\n\n const weekNumbers = computed(() => {\n return weeksInMonth.value.map(week => {\n return week.length ? getWeek(adapter, week[0]) : null\n })\n })\n\n function isDisabled (value: unknown) {\n if (props.disabled) return true\n\n const date = adapter.date(value)\n\n if (props.min && adapter.isAfter(adapter.date(props.min), date)) return true\n if (props.max && adapter.isAfter(date, adapter.date(props.max))) return true\n\n if (Array.isArray(props.allowedDates) && props.allowedDates.length > 0) {\n return !props.allowedDates.some(d => adapter.isSameDay(adapter.date(d), date))\n }\n\n if (typeof props.allowedDates === 'function') {\n return !props.allowedDates(date)\n }\n\n return false\n }\n\n return {\n displayValue,\n daysInMonth,\n daysInWeek,\n genDays,\n model,\n weeksInMonth,\n weekDays,\n weekNumbers,\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"calendar.mjs","names":["getWeek","useDate","useProxiedModel","computed","propsFactory","wrapInArray","makeCalendarProps","allowedDates","Array","Function","disabled","Boolean","displayValue","modelValue","month","Number","String","max","min","showAdjacentMonths","year","weekdays","type","default","weeksInMonth","firstDayOfWeek","useCalendar","props","adapter","model","v","date","value","length","isArray","undefined","getYear","startOfYear","setYear","getMonth","startOfMonth","setMonth","defaultFirstDayOfWeek","weekDays","map","day","weeks","getWeekArray","days","flat","daysInMonth","lastDay","week","push","addDays","genDays","today","filter","includes","toJsDate","getDay","index","isoDate","toISO","isAdjacent","isSameMonth","isStart","isSameDay","isEnd","endOfMonth","isSame","formatted","format","isDisabled","isWeekStart","isWeekEnd","isToday","isHidden","isSelected","some","localized","daysInWeek","startOfWeek","weekNumbers","isAfter","d"],"sources":["../../src/composables/calendar.ts"],"sourcesContent":["// Composables\nimport { getWeek, useDate } from '@/composables/date/date'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed } from 'vue'\nimport { propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\nexport interface CalendarProps {\n allowedDates: unknown[] | ((date: unknown) => boolean) | undefined\n disabled: boolean\n displayValue?: unknown\n modelValue: unknown[] | undefined\n max: unknown\n min: unknown\n showAdjacentMonths: boolean\n month: number | string | undefined\n weekdays: number[]\n year: number | string | undefined\n weeksInMonth: 'dynamic' | 'static'\n firstDayOfWeek: number | string | undefined\n\n 'onUpdate:modelValue': ((value: unknown[]) => void) | undefined\n 'onUpdate:month': ((value: number) => void) | undefined\n 'onUpdate:year': ((value: number) => void) | undefined\n}\n\n// Composables\nexport const makeCalendarProps = propsFactory({\n allowedDates: [Array, Function] as PropType<unknown[] | ((date: unknown) => boolean)>,\n disabled: Boolean,\n displayValue: null as any as PropType<unknown>,\n modelValue: Array as PropType<unknown[]>,\n month: [Number, String],\n max: null as any as PropType<unknown>,\n min: null as any as PropType<unknown>,\n showAdjacentMonths: Boolean,\n year: [Number, String],\n weekdays: {\n type: Array<number>,\n default: () => [0, 1, 2, 3, 4, 5, 6],\n },\n weeksInMonth: {\n type: String as PropType<'dynamic' | 'static'>,\n default: 'dynamic',\n },\n firstDayOfWeek: [Number, String],\n}, 'calendar')\n\nexport function useCalendar (props: CalendarProps) {\n const adapter = useDate()\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => wrapInArray(v),\n )\n const displayValue = computed(() => {\n if (props.displayValue) return adapter.date(props.displayValue)\n if (model.value.length > 0) return adapter.date(model.value[0])\n if (props.min) return adapter.date(props.min)\n if (Array.isArray(props.allowedDates)) return adapter.date(props.allowedDates[0])\n\n return adapter.date()\n })\n\n const year = useProxiedModel(\n props,\n 'year',\n undefined,\n v => {\n const value = v != null ? Number(v) : adapter.getYear(displayValue.value)\n\n return adapter.startOfYear(adapter.setYear(adapter.date(), value))\n },\n v => adapter.getYear(v)\n )\n\n const month = useProxiedModel(\n props,\n 'month',\n undefined,\n v => {\n const value = v != null ? Number(v) : adapter.getMonth(displayValue.value)\n const date = adapter.setYear(adapter.startOfMonth(adapter.date()), adapter.getYear(year.value))\n\n return adapter.setMonth(date, value)\n },\n v => adapter.getMonth(v)\n )\n\n const defaultFirstDayOfWeek = computed(() => {\n return props.firstDayOfWeek ?? props.weekdays[0]\n })\n\n const weekDays = computed(() => {\n const firstDayOfWeek = Number(props.firstDayOfWeek ?? 0)\n return props.weekdays.map(day => (day + firstDayOfWeek) % 7)\n })\n\n const weeksInMonth = computed(() => {\n const weeks = adapter.getWeekArray(month.value, defaultFirstDayOfWeek.value)\n\n const days = weeks.flat()\n\n // Make sure there's always 6 weeks in month (6 * 7 days)\n // if weeksInMonth is 'static'\n const daysInMonth = 6 * 7\n if (props.weeksInMonth === 'static' && days.length < daysInMonth) {\n const lastDay = days[days.length - 1]\n\n let week = []\n for (let day = 1; day <= daysInMonth - days.length; day++) {\n week.push(adapter.addDays(lastDay, day))\n\n if (day % 7 === 0) {\n weeks.push(week)\n week = []\n }\n }\n }\n\n return weeks\n })\n\n function genDays (days: unknown[], today: unknown) {\n return days.filter(date => {\n return weekDays.value.includes(adapter.toJsDate(date).getDay())\n }).map((date, index) => {\n const isoDate = adapter.toISO(date)\n const isAdjacent = !adapter.isSameMonth(date, month.value)\n const isStart = adapter.isSameDay(date, adapter.startOfMonth(month.value))\n const isEnd = adapter.isSameDay(date, adapter.endOfMonth(month.value))\n const isSame = adapter.isSameDay(date, month.value)\n\n return {\n date,\n isoDate,\n formatted: adapter.format(date, 'keyboardDate'),\n year: adapter.getYear(date),\n month: adapter.getMonth(date),\n isDisabled: isDisabled(date),\n isWeekStart: index % 7 === 0,\n isWeekEnd: index % 7 === 6,\n isToday: adapter.isSameDay(date, today),\n isAdjacent,\n isHidden: isAdjacent && !props.showAdjacentMonths,\n isStart,\n isSelected: model.value.some(value => adapter.isSameDay(date, value)),\n isEnd,\n isSame,\n localized: adapter.format(date, 'dayOfMonth'),\n }\n })\n }\n\n const daysInWeek = computed(() => {\n const lastDay = adapter.startOfWeek(displayValue.value, props.firstDayOfWeek)\n const week = []\n for (let day = 0; day <= 6; day++) {\n week.push(adapter.addDays(lastDay, day))\n }\n\n const today = adapter.date()\n\n return genDays(week, today)\n })\n\n const daysInMonth = computed(() => {\n const days = weeksInMonth.value.flat()\n const today = adapter.date() as Date\n\n return genDays(days, today)\n })\n\n const weekNumbers = computed(() => {\n return weeksInMonth.value.map(week => {\n return week.length ? getWeek(adapter, week[0]) : null\n })\n })\n\n function isDisabled (value: unknown) {\n if (props.disabled) return true\n\n const date = adapter.date(value)\n\n if (props.min && adapter.isAfter(adapter.date(props.min), date)) return true\n if (props.max && adapter.isAfter(date, adapter.date(props.max))) return true\n\n if (Array.isArray(props.allowedDates) && props.allowedDates.length > 0) {\n return !props.allowedDates.some(d => adapter.isSameDay(adapter.date(d), date))\n }\n\n if (typeof props.allowedDates === 'function') {\n return !props.allowedDates(date)\n }\n\n return false\n }\n\n return {\n displayValue,\n daysInMonth,\n daysInWeek,\n genDays,\n model,\n weeksInMonth,\n weekDays,\n weekNumbers,\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  // Utilities
2
2
  import { computed, shallowRef, toRaw, watchEffect } from 'vue';
3
- import { deepEqual, getPropertyFromItem, isPrimitive, omit, propsFactory } from "../util/index.mjs"; // Types
3
+ import { deepEqual, getPropertyFromItem, isPrimitive, omit, pick, propsFactory } from "../util/index.mjs"; // Types
4
4
  // Composables
5
5
  export const makeItemsProps = propsFactory({
6
6
  items: {
@@ -45,7 +45,7 @@ export function transformItem(props, item) {
45
45
  };
46
46
  }
47
47
  export function transformItems(props, items) {
48
- const _props = toRaw(props);
48
+ const _props = pick(props, ['itemTitle', 'itemValue', 'itemChildren', 'itemProps', 'returnObject', 'valueComparator']);
49
49
  const array = [];
50
50
  for (const item of items) {
51
51
  array.push(transformItem(_props, item));
@@ -88,7 +88,7 @@ export function useItems(props) {
88
88
  const _returnObject = props.returnObject;
89
89
  const hasValueComparator = !!props.valueComparator;
90
90
  const valueComparator = props.valueComparator || deepEqual;
91
- const _props = toRaw(props);
91
+ const _props = pick(props, ['itemTitle', 'itemValue', 'itemChildren', 'itemProps', 'returnObject', 'valueComparator']);
92
92
  const returnValue = [];
93
93
  main: for (const v of _value) {
94
94
  // When the model value is null, return an InternalItem
@@ -1 +1 @@
1
- {"version":3,"file":"list-items.mjs","names":["computed","shallowRef","toRaw","watchEffect","deepEqual","getPropertyFromItem","isPrimitive","omit","propsFactory","makeItemsProps","items","type","Array","default","itemTitle","String","Function","itemValue","itemChildren","Boolean","itemProps","returnObject","valueComparator","transformItem","props","item","title","value","children","isArray","undefined","_props","transformItems","raw","array","push","useItems","hasNullItem","some","itemsMap","Map","keylessItems","_items","map","keyless","i","length","values","get","set","transformIn","_value","_allItems","_keylessItems","_hasNullItem","_returnObject","hasValueComparator","returnValue","main","v","fastItems","transformOut","_ref","_ref2"],"sources":["../../src/composables/list-items.ts"],"sourcesContent":["// Utilities\nimport { computed, shallowRef, toRaw, watchEffect } from 'vue'\nimport { deepEqual, getPropertyFromItem, isPrimitive, omit, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { InternalItem } from '@/composables/filter'\nimport type { Primitive, SelectItemKey } from '@/util'\n\nexport interface ListItem<T = any> extends InternalItem<T> {\n title: string\n props: {\n [key: string]: any\n title: string\n value: any\n }\n children?: ListItem<T>[]\n}\n\nexport interface ItemProps {\n items: any[]\n itemTitle: SelectItemKey\n itemValue: SelectItemKey\n itemChildren: SelectItemKey\n itemProps: SelectItemKey\n returnObject: boolean\n valueComparator: typeof deepEqual | undefined\n}\n\n// Composables\nexport const makeItemsProps = propsFactory({\n items: {\n type: Array as PropType<ItemProps['items']>,\n default: () => ([]),\n },\n itemTitle: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'title',\n },\n itemValue: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'value',\n },\n itemChildren: {\n type: [Boolean, String, Array, Function] as PropType<SelectItemKey>,\n default: 'children',\n },\n itemProps: {\n type: [Boolean, String, Array, Function] as PropType<SelectItemKey>,\n default: 'props',\n },\n returnObject: Boolean,\n valueComparator: Function as PropType<typeof deepEqual>,\n}, 'list-items')\n\nexport function transformItem (props: Omit<ItemProps, 'items'>, item: any): ListItem {\n const title = getPropertyFromItem(item, props.itemTitle, item)\n const value = getPropertyFromItem(item, props.itemValue, title)\n const children = getPropertyFromItem(item, props.itemChildren)\n const itemProps = props.itemProps === true\n ? typeof item === 'object' && item != null && !Array.isArray(item)\n ? 'children' in item\n ? omit(item, ['children'])\n : item\n : undefined\n : getPropertyFromItem(item, props.itemProps)\n\n const _props = {\n title,\n value,\n ...itemProps,\n }\n\n return {\n title: String(_props.title ?? ''),\n value: _props.value,\n props: _props,\n children: Array.isArray(children) ? transformItems(props, children) : undefined,\n raw: item,\n }\n}\n\nexport function transformItems (props: Omit<ItemProps, 'items'>, items: ItemProps['items']) {\n const _props = toRaw(props)\n\n const array: ListItem[] = []\n for (const item of items) {\n array.push(transformItem(_props, item))\n }\n\n return array\n}\n\nexport function useItems (props: ItemProps) {\n const items = computed(() => transformItems(props, props.items))\n const hasNullItem = computed(() => items.value.some(item => item.value === null))\n\n const itemsMap = shallowRef<Map<Primitive, ListItem[]>>(new Map())\n const keylessItems = shallowRef<ListItem[]>([])\n watchEffect(() => {\n const _items = items.value\n const map = new Map()\n const keyless = []\n for (let i = 0; i < _items.length; i++) {\n const item = _items[i]\n if (isPrimitive(item.value) || item.value === null) {\n let values = map.get(item.value)\n if (!values) {\n values = []\n map.set(item.value, values)\n }\n values.push(item)\n } else {\n keyless.push(item)\n }\n }\n itemsMap.value = map\n keylessItems.value = keyless\n })\n\n function transformIn (value: any[]): ListItem[] {\n // Cache unrefed values outside the loop,\n // proxy getters can be slow when you call them a billion times\n const _value = toRaw(value)\n const _items = itemsMap.value\n const _allItems = items.value\n const _keylessItems = keylessItems.value\n const _hasNullItem = hasNullItem.value\n const _returnObject = props.returnObject\n const hasValueComparator = !!props.valueComparator\n const valueComparator = props.valueComparator || deepEqual\n const _props = toRaw(props)\n\n const returnValue: ListItem[] = []\n main: for (const v of _value) {\n // When the model value is null, return an InternalItem\n // based on null only if null is one of the items\n if (!_hasNullItem && v === null) continue\n\n // String model value means value is a custom input value from combobox\n // Don't look up existing items if the model value is a string\n if (_returnObject && typeof v === 'string') {\n returnValue.push(transformItem(_props, v))\n continue\n }\n\n // Fast path, items with primitive values and no\n // custom valueComparator can use a constant-time\n // map lookup instead of searching the items array\n const fastItems = _items.get(v)\n\n // Slow path, always use valueComparator.\n // This is O(n^2) so we really don't want to\n // do it for more than a couple hundred items.\n if (hasValueComparator || !fastItems) {\n for (const item of (hasValueComparator ? _allItems : _keylessItems)) {\n if (valueComparator(v, item.value)) {\n returnValue.push(item)\n continue main\n }\n }\n // Not an existing item, construct it from the model (#4000)\n returnValue.push(transformItem(_props, v))\n continue\n }\n\n returnValue.push(...fastItems)\n }\n\n return returnValue\n }\n\n function transformOut (value: ListItem[]): any[] {\n return props.returnObject\n ? value.map(({ raw }) => raw)\n : value.map(({ value }) => value)\n }\n\n return { items, transformIn, transformOut }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"list-items.mjs","names":["computed","shallowRef","toRaw","watchEffect","deepEqual","getPropertyFromItem","isPrimitive","omit","pick","propsFactory","makeItemsProps","items","type","Array","default","itemTitle","String","Function","itemValue","itemChildren","Boolean","itemProps","returnObject","valueComparator","transformItem","props","item","title","value","children","isArray","undefined","_props","transformItems","raw","array","push","useItems","hasNullItem","some","itemsMap","Map","keylessItems","_items","map","keyless","i","length","values","get","set","transformIn","_value","_allItems","_keylessItems","_hasNullItem","_returnObject","hasValueComparator","returnValue","main","v","fastItems","transformOut","_ref","_ref2"],"sources":["../../src/composables/list-items.ts"],"sourcesContent":["// Utilities\nimport { computed, shallowRef, toRaw, watchEffect } from 'vue'\nimport { deepEqual, getPropertyFromItem, isPrimitive, omit, pick, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { InternalItem } from '@/composables/filter'\nimport type { Primitive, SelectItemKey } from '@/util'\n\nexport interface ListItem<T = any> extends InternalItem<T> {\n title: string\n props: {\n [key: string]: any\n title: string\n value: any\n }\n children?: ListItem<T>[]\n}\n\nexport interface ItemProps {\n items: any[]\n itemTitle: SelectItemKey\n itemValue: SelectItemKey\n itemChildren: SelectItemKey\n itemProps: SelectItemKey\n returnObject: boolean\n valueComparator: typeof deepEqual | undefined\n}\n\n// Composables\nexport const makeItemsProps = propsFactory({\n items: {\n type: Array as PropType<ItemProps['items']>,\n default: () => ([]),\n },\n itemTitle: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'title',\n },\n itemValue: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'value',\n },\n itemChildren: {\n type: [Boolean, String, Array, Function] as PropType<SelectItemKey>,\n default: 'children',\n },\n itemProps: {\n type: [Boolean, String, Array, Function] as PropType<SelectItemKey>,\n default: 'props',\n },\n returnObject: Boolean,\n valueComparator: Function as PropType<typeof deepEqual>,\n}, 'list-items')\n\nexport function transformItem (props: Omit<ItemProps, 'items'>, item: any): ListItem {\n const title = getPropertyFromItem(item, props.itemTitle, item)\n const value = getPropertyFromItem(item, props.itemValue, title)\n const children = getPropertyFromItem(item, props.itemChildren)\n const itemProps = props.itemProps === true\n ? typeof item === 'object' && item != null && !Array.isArray(item)\n ? 'children' in item\n ? omit(item, ['children'])\n : item\n : undefined\n : getPropertyFromItem(item, props.itemProps)\n\n const _props = {\n title,\n value,\n ...itemProps,\n }\n\n return {\n title: String(_props.title ?? ''),\n value: _props.value,\n props: _props,\n children: Array.isArray(children) ? transformItems(props, children) : undefined,\n raw: item,\n }\n}\n\nexport function transformItems (props: Omit<ItemProps, 'items'>, items: ItemProps['items']) {\n const _props = pick(props, [\n 'itemTitle',\n 'itemValue',\n 'itemChildren',\n 'itemProps',\n 'returnObject',\n 'valueComparator',\n ])\n\n const array: ListItem[] = []\n for (const item of items) {\n array.push(transformItem(_props, item))\n }\n\n return array\n}\n\nexport function useItems (props: ItemProps) {\n const items = computed(() => transformItems(props, props.items))\n const hasNullItem = computed(() => items.value.some(item => item.value === null))\n\n const itemsMap = shallowRef<Map<Primitive, ListItem[]>>(new Map())\n const keylessItems = shallowRef<ListItem[]>([])\n watchEffect(() => {\n const _items = items.value\n const map = new Map()\n const keyless = []\n for (let i = 0; i < _items.length; i++) {\n const item = _items[i]\n if (isPrimitive(item.value) || item.value === null) {\n let values = map.get(item.value)\n if (!values) {\n values = []\n map.set(item.value, values)\n }\n values.push(item)\n } else {\n keyless.push(item)\n }\n }\n itemsMap.value = map\n keylessItems.value = keyless\n })\n\n function transformIn (value: any[]): ListItem[] {\n // Cache unrefed values outside the loop,\n // proxy getters can be slow when you call them a billion times\n const _value = toRaw(value)\n const _items = itemsMap.value\n const _allItems = items.value\n const _keylessItems = keylessItems.value\n const _hasNullItem = hasNullItem.value\n const _returnObject = props.returnObject\n const hasValueComparator = !!props.valueComparator\n const valueComparator = props.valueComparator || deepEqual\n const _props = pick(props, [\n 'itemTitle',\n 'itemValue',\n 'itemChildren',\n 'itemProps',\n 'returnObject',\n 'valueComparator',\n ])\n\n const returnValue: ListItem[] = []\n main: for (const v of _value) {\n // When the model value is null, return an InternalItem\n // based on null only if null is one of the items\n if (!_hasNullItem && v === null) continue\n\n // String model value means value is a custom input value from combobox\n // Don't look up existing items if the model value is a string\n if (_returnObject && typeof v === 'string') {\n returnValue.push(transformItem(_props, v))\n continue\n }\n\n // Fast path, items with primitive values and no\n // custom valueComparator can use a constant-time\n // map lookup instead of searching the items array\n const fastItems = _items.get(v)\n\n // Slow path, always use valueComparator.\n // This is O(n^2) so we really don't want to\n // do it for more than a couple hundred items.\n if (hasValueComparator || !fastItems) {\n for (const item of (hasValueComparator ? _allItems : _keylessItems)) {\n if (valueComparator(v, item.value)) {\n returnValue.push(item)\n continue main\n }\n }\n // Not an existing item, construct it from the model (#4000)\n returnValue.push(transformItem(_props, v))\n continue\n }\n\n returnValue.push(...fastItems)\n }\n\n return returnValue\n }\n\n function transformOut (value: ListItem[]): any[] {\n return props.returnObject\n ? value.map(({ raw }) => raw)\n : value.map(({ value }) => value)\n }\n\n return { items, transformIn, transformOut }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -16,7 +16,7 @@ export const createVuetify = function () {
16
16
  ...options
17
17
  });
18
18
  };
19
- export const version = "3.7.11-master.2025-02-08";
19
+ export const version = "3.7.11-master.2025-02-11";
20
20
  createVuetify.version = version;
21
21
  export { blueprints, components, directives };
22
22
  export * from "./composables/index.mjs";
package/lib/framework.mjs CHANGED
@@ -97,7 +97,7 @@ export function createVuetify() {
97
97
  goTo
98
98
  };
99
99
  }
100
- export const version = "3.7.11-master.2025-02-08";
100
+ export const version = "3.7.11-master.2025-02-11";
101
101
  createVuetify.version = version;
102
102
 
103
103
  // Vue's inject() can only be used in setup
package/lib/index.d.mts CHANGED
@@ -486,39 +486,38 @@ declare module 'vue' {
486
486
  $children?: VNodeChild
487
487
  }
488
488
  export interface GlobalComponents {
489
- VApp: typeof import('vuetify/components')['VApp']
490
- VAvatar: typeof import('vuetify/components')['VAvatar']
491
- VAlert: typeof import('vuetify/components')['VAlert']
492
- VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
493
489
  VAppBar: typeof import('vuetify/components')['VAppBar']
494
490
  VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
495
491
  VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
492
+ VAlert: typeof import('vuetify/components')['VAlert']
493
+ VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
494
+ VBadge: typeof import('vuetify/components')['VBadge']
495
+ VAvatar: typeof import('vuetify/components')['VAvatar']
496
496
  VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
497
497
  VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
498
- VBadge: typeof import('vuetify/components')['VBadge']
499
498
  VBanner: typeof import('vuetify/components')['VBanner']
500
499
  VBannerActions: typeof import('vuetify/components')['VBannerActions']
501
500
  VBannerText: typeof import('vuetify/components')['VBannerText']
501
+ VApp: typeof import('vuetify/components')['VApp']
502
502
  VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
503
503
  VBtn: typeof import('vuetify/components')['VBtn']
504
- VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
504
+ VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
505
+ VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
506
+ VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
507
+ VCheckbox: typeof import('vuetify/components')['VCheckbox']
508
+ VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
509
+ VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
510
+ VChip: typeof import('vuetify/components')['VChip']
505
511
  VCarousel: typeof import('vuetify/components')['VCarousel']
506
512
  VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
507
- VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
508
513
  VCard: typeof import('vuetify/components')['VCard']
509
514
  VCardActions: typeof import('vuetify/components')['VCardActions']
510
515
  VCardItem: typeof import('vuetify/components')['VCardItem']
511
516
  VCardSubtitle: typeof import('vuetify/components')['VCardSubtitle']
512
517
  VCardText: typeof import('vuetify/components')['VCardText']
513
518
  VCardTitle: typeof import('vuetify/components')['VCardTitle']
514
- VChipGroup: typeof import('vuetify/components')['VChipGroup']
515
- VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
516
- VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
517
- VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
518
- VChip: typeof import('vuetify/components')['VChip']
519
+ VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
519
520
  VCode: typeof import('vuetify/components')['VCode']
520
- VCheckbox: typeof import('vuetify/components')['VCheckbox']
521
- VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
522
521
  VColorPicker: typeof import('vuetify/components')['VColorPicker']
523
522
  VCounter: typeof import('vuetify/components')['VCounter']
524
523
  VDataTable: typeof import('vuetify/components')['VDataTable']
@@ -528,35 +527,34 @@ declare module 'vue' {
528
527
  VDataTableRow: typeof import('vuetify/components')['VDataTableRow']
529
528
  VDataTableVirtual: typeof import('vuetify/components')['VDataTableVirtual']
530
529
  VDataTableServer: typeof import('vuetify/components')['VDataTableServer']
530
+ VChipGroup: typeof import('vuetify/components')['VChipGroup']
531
+ VDialog: typeof import('vuetify/components')['VDialog']
532
+ VCombobox: typeof import('vuetify/components')['VCombobox']
533
+ VDivider: typeof import('vuetify/components')['VDivider']
531
534
  VDatePicker: typeof import('vuetify/components')['VDatePicker']
532
535
  VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
533
536
  VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
534
537
  VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
535
538
  VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
536
539
  VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
537
- VCombobox: typeof import('vuetify/components')['VCombobox']
538
- VDialog: typeof import('vuetify/components')['VDialog']
539
- VDivider: typeof import('vuetify/components')['VDivider']
540
- VEmptyState: typeof import('vuetify/components')['VEmptyState']
541
- VField: typeof import('vuetify/components')['VField']
542
- VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
543
- VFab: typeof import('vuetify/components')['VFab']
540
+ VFileInput: typeof import('vuetify/components')['VFileInput']
544
541
  VExpansionPanels: typeof import('vuetify/components')['VExpansionPanels']
545
542
  VExpansionPanel: typeof import('vuetify/components')['VExpansionPanel']
546
543
  VExpansionPanelText: typeof import('vuetify/components')['VExpansionPanelText']
547
544
  VExpansionPanelTitle: typeof import('vuetify/components')['VExpansionPanelTitle']
548
- VFileInput: typeof import('vuetify/components')['VFileInput']
545
+ VEmptyState: typeof import('vuetify/components')['VEmptyState']
546
+ VImg: typeof import('vuetify/components')['VImg']
547
+ VField: typeof import('vuetify/components')['VField']
548
+ VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
549
549
  VFooter: typeof import('vuetify/components')['VFooter']
550
+ VFab: typeof import('vuetify/components')['VFab']
550
551
  VIcon: typeof import('vuetify/components')['VIcon']
551
552
  VComponentIcon: typeof import('vuetify/components')['VComponentIcon']
552
553
  VSvgIcon: typeof import('vuetify/components')['VSvgIcon']
553
554
  VLigatureIcon: typeof import('vuetify/components')['VLigatureIcon']
554
555
  VClassIcon: typeof import('vuetify/components')['VClassIcon']
555
- VImg: typeof import('vuetify/components')['VImg']
556
- VLabel: typeof import('vuetify/components')['VLabel']
557
- VInput: typeof import('vuetify/components')['VInput']
558
- VKbd: typeof import('vuetify/components')['VKbd']
559
556
  VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
557
+ VKbd: typeof import('vuetify/components')['VKbd']
560
558
  VList: typeof import('vuetify/components')['VList']
561
559
  VListGroup: typeof import('vuetify/components')['VListGroup']
562
560
  VListImg: typeof import('vuetify/components')['VListImg']
@@ -566,22 +564,25 @@ declare module 'vue' {
566
564
  VListItemSubtitle: typeof import('vuetify/components')['VListItemSubtitle']
567
565
  VListItemTitle: typeof import('vuetify/components')['VListItemTitle']
568
566
  VListSubheader: typeof import('vuetify/components')['VListSubheader']
567
+ VInput: typeof import('vuetify/components')['VInput']
568
+ VLabel: typeof import('vuetify/components')['VLabel']
569
569
  VItemGroup: typeof import('vuetify/components')['VItemGroup']
570
570
  VItem: typeof import('vuetify/components')['VItem']
571
- VMain: typeof import('vuetify/components')['VMain']
572
571
  VMessages: typeof import('vuetify/components')['VMessages']
573
572
  VMenu: typeof import('vuetify/components')['VMenu']
574
- VOverlay: typeof import('vuetify/components')['VOverlay']
575
- VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
576
- VOtpInput: typeof import('vuetify/components')['VOtpInput']
577
- VProgressCircular: typeof import('vuetify/components')['VProgressCircular']
578
573
  VProgressLinear: typeof import('vuetify/components')['VProgressLinear']
574
+ VMain: typeof import('vuetify/components')['VMain']
575
+ VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
576
+ VOverlay: typeof import('vuetify/components')['VOverlay']
579
577
  VRadioGroup: typeof import('vuetify/components')['VRadioGroup']
580
- VRating: typeof import('vuetify/components')['VRating']
578
+ VProgressCircular: typeof import('vuetify/components')['VProgressCircular']
579
+ VOtpInput: typeof import('vuetify/components')['VOtpInput']
581
580
  VPagination: typeof import('vuetify/components')['VPagination']
582
- VSelect: typeof import('vuetify/components')['VSelect']
581
+ VRating: typeof import('vuetify/components')['VRating']
583
582
  VSelectionControl: typeof import('vuetify/components')['VSelectionControl']
583
+ VSelect: typeof import('vuetify/components')['VSelect']
584
584
  VSelectionControlGroup: typeof import('vuetify/components')['VSelectionControlGroup']
585
+ VSlider: typeof import('vuetify/components')['VSlider']
585
586
  VSheet: typeof import('vuetify/components')['VSheet']
586
587
  VSkeletonLoader: typeof import('vuetify/components')['VSkeletonLoader']
587
588
  VStepper: typeof import('vuetify/components')['VStepper']
@@ -590,49 +591,49 @@ declare module 'vue' {
590
591
  VStepperItem: typeof import('vuetify/components')['VStepperItem']
591
592
  VStepperWindow: typeof import('vuetify/components')['VStepperWindow']
592
593
  VStepperWindowItem: typeof import('vuetify/components')['VStepperWindowItem']
593
- VSystemBar: typeof import('vuetify/components')['VSystemBar']
594
- VTable: typeof import('vuetify/components')['VTable']
595
- VSnackbar: typeof import('vuetify/components')['VSnackbar']
596
594
  VSlideGroup: typeof import('vuetify/components')['VSlideGroup']
597
595
  VSlideGroupItem: typeof import('vuetify/components')['VSlideGroupItem']
596
+ VTable: typeof import('vuetify/components')['VTable']
597
+ VSnackbar: typeof import('vuetify/components')['VSnackbar']
598
+ VSystemBar: typeof import('vuetify/components')['VSystemBar']
598
599
  VTab: typeof import('vuetify/components')['VTab']
599
600
  VTabs: typeof import('vuetify/components')['VTabs']
600
601
  VTabsWindow: typeof import('vuetify/components')['VTabsWindow']
601
602
  VTabsWindowItem: typeof import('vuetify/components')['VTabsWindowItem']
602
- VSwitch: typeof import('vuetify/components')['VSwitch']
603
+ VTimeline: typeof import('vuetify/components')['VTimeline']
604
+ VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
603
605
  VTextField: typeof import('vuetify/components')['VTextField']
604
606
  VTextarea: typeof import('vuetify/components')['VTextarea']
605
- VSlider: typeof import('vuetify/components')['VSlider']
607
+ VSwitch: typeof import('vuetify/components')['VSwitch']
606
608
  VTooltip: typeof import('vuetify/components')['VTooltip']
607
609
  VToolbar: typeof import('vuetify/components')['VToolbar']
608
610
  VToolbarTitle: typeof import('vuetify/components')['VToolbarTitle']
609
611
  VToolbarItems: typeof import('vuetify/components')['VToolbarItems']
610
- VTimeline: typeof import('vuetify/components')['VTimeline']
611
- VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
612
612
  VWindow: typeof import('vuetify/components')['VWindow']
613
613
  VWindowItem: typeof import('vuetify/components')['VWindowItem']
614
- VConfirmEdit: typeof import('vuetify/components')['VConfirmEdit']
615
614
  VDataIterator: typeof import('vuetify/components')['VDataIterator']
616
- VDefaultsProvider: typeof import('vuetify/components')['VDefaultsProvider']
615
+ VConfirmEdit: typeof import('vuetify/components')['VConfirmEdit']
617
616
  VForm: typeof import('vuetify/components')['VForm']
618
617
  VContainer: typeof import('vuetify/components')['VContainer']
619
618
  VCol: typeof import('vuetify/components')['VCol']
620
619
  VRow: typeof import('vuetify/components')['VRow']
621
620
  VSpacer: typeof import('vuetify/components')['VSpacer']
621
+ VDefaultsProvider: typeof import('vuetify/components')['VDefaultsProvider']
622
622
  VHover: typeof import('vuetify/components')['VHover']
623
623
  VLazy: typeof import('vuetify/components')['VLazy']
624
+ VLocaleProvider: typeof import('vuetify/components')['VLocaleProvider']
624
625
  VLayout: typeof import('vuetify/components')['VLayout']
625
626
  VLayoutItem: typeof import('vuetify/components')['VLayoutItem']
626
- VLocaleProvider: typeof import('vuetify/components')['VLocaleProvider']
627
627
  VNoSsr: typeof import('vuetify/components')['VNoSsr']
628
- VRadio: typeof import('vuetify/components')['VRadio']
629
628
  VParallax: typeof import('vuetify/components')['VParallax']
629
+ VRadio: typeof import('vuetify/components')['VRadio']
630
630
  VRangeSlider: typeof import('vuetify/components')['VRangeSlider']
631
631
  VResponsive: typeof import('vuetify/components')['VResponsive']
632
632
  VSparkline: typeof import('vuetify/components')['VSparkline']
633
633
  VSpeedDial: typeof import('vuetify/components')['VSpeedDial']
634
634
  VThemeProvider: typeof import('vuetify/components')['VThemeProvider']
635
635
  VValidation: typeof import('vuetify/components')['VValidation']
636
+ VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
636
637
  VFabTransition: typeof import('vuetify/components')['VFabTransition']
637
638
  VDialogBottomTransition: typeof import('vuetify/components')['VDialogBottomTransition']
638
639
  VDialogTopTransition: typeof import('vuetify/components')['VDialogTopTransition']
@@ -649,29 +650,28 @@ declare module 'vue' {
649
650
  VExpandTransition: typeof import('vuetify/components')['VExpandTransition']
650
651
  VExpandXTransition: typeof import('vuetify/components')['VExpandXTransition']
651
652
  VDialogTransition: typeof import('vuetify/components')['VDialogTransition']
652
- VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
653
- VFileUpload: typeof import('vuetify/labs/components')['VFileUpload']
654
- VFileUploadItem: typeof import('vuetify/labs/components')['VFileUploadItem']
653
+ VNumberInput: typeof import('vuetify/labs/components')['VNumberInput']
655
654
  VCalendar: typeof import('vuetify/labs/components')['VCalendar']
656
655
  VCalendarDay: typeof import('vuetify/labs/components')['VCalendarDay']
657
656
  VCalendarHeader: typeof import('vuetify/labs/components')['VCalendarHeader']
658
657
  VCalendarInterval: typeof import('vuetify/labs/components')['VCalendarInterval']
659
658
  VCalendarIntervalEvent: typeof import('vuetify/labs/components')['VCalendarIntervalEvent']
660
659
  VCalendarMonthDay: typeof import('vuetify/labs/components')['VCalendarMonthDay']
661
- VPicker: typeof import('vuetify/labs/components')['VPicker']
662
- VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
660
+ VFileUpload: typeof import('vuetify/labs/components')['VFileUpload']
661
+ VFileUploadItem: typeof import('vuetify/labs/components')['VFileUploadItem']
663
662
  VStepperVertical: typeof import('vuetify/labs/components')['VStepperVertical']
664
663
  VStepperVerticalItem: typeof import('vuetify/labs/components')['VStepperVerticalItem']
665
664
  VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
666
- VNumberInput: typeof import('vuetify/labs/components')['VNumberInput']
667
665
  VTimePicker: typeof import('vuetify/labs/components')['VTimePicker']
668
666
  VTimePickerClock: typeof import('vuetify/labs/components')['VTimePickerClock']
669
667
  VTimePickerControls: typeof import('vuetify/labs/components')['VTimePickerControls']
668
+ VPicker: typeof import('vuetify/labs/components')['VPicker']
669
+ VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
670
670
  VTreeview: typeof import('vuetify/labs/components')['VTreeview']
671
671
  VTreeviewItem: typeof import('vuetify/labs/components')['VTreeviewItem']
672
672
  VTreeviewGroup: typeof import('vuetify/labs/components')['VTreeviewGroup']
673
673
  VDateInput: typeof import('vuetify/labs/components')['VDateInput']
674
- VSnackbarQueue: typeof import('vuetify/labs/components')['VSnackbarQueue']
675
674
  VPullToRefresh: typeof import('vuetify/labs/components')['VPullToRefresh']
675
+ VSnackbarQueue: typeof import('vuetify/labs/components')['VSnackbarQueue']
676
676
  }
677
677
  }
@@ -27,7 +27,7 @@ export const makeVDateInputProps = propsFactory({
27
27
  ...omit(makeVDatePickerProps({
28
28
  weeksInMonth: 'dynamic',
29
29
  hideHeader: true
30
- }), ['active', 'location'])
30
+ }), ['active', 'location', 'rounded'])
31
31
  }, 'VDateInput');
32
32
  export const VDateInput = genericComponent()({
33
33
  name: 'VDateInput',
@@ -88,7 +88,7 @@ export const VDateInput = genericComponent()({
88
88
  }
89
89
  useRender(() => {
90
90
  const confirmEditProps = VConfirmEdit.filterProps(props);
91
- const datePickerProps = VDatePicker.filterProps(omit(props, ['active', 'location']));
91
+ const datePickerProps = VDatePicker.filterProps(omit(props, ['active', 'location', 'rounded']));
92
92
  const textFieldProps = VTextField.filterProps(props);
93
93
  return _createVNode(VTextField, _mergeProps({
94
94
  "ref": vDateInputRef
@@ -1 +1 @@
1
- {"version":3,"file":"VDateInput.mjs","names":["makeVConfirmEditProps","VConfirmEdit","makeVDatePickerProps","VDatePicker","VMenu","makeVTextFieldProps","VTextField","useDate","makeFocusProps","useFocus","forwardRefs","useLocale","useProxiedModel","computed","ref","shallowRef","genericComponent","omit","propsFactory","useRender","wrapInArray","makeVDateInputProps","hideActions","Boolean","location","type","String","default","placeholder","prependIcon","weeksInMonth","hideHeader","VDateInput","name","props","emits","val","setup","_ref","slots","t","adapter","isFocused","focus","blur","model","multiple","Array","isArray","map","item","toJsDate","date","menu","vDateInputRef","display","value","length","start","end","isValid","format","isInteractive","disabled","readonly","onKeydown","e","key","target","onClick","preventDefault","stopPropagation","onSave","onUpdateModel","confirmEditProps","filterProps","datePickerProps","textFieldProps","_createVNode","_mergeProps","class","style","undefined","$event","onCancel","_ref2","actions","proxyModel","save","cancel","isPristine"],"sources":["../../../src/labs/VDateInput/VDateInput.tsx"],"sourcesContent":["// Components\nimport { makeVConfirmEditProps, VConfirmEdit } from '@/components/VConfirmEdit/VConfirmEdit'\nimport { makeVDatePickerProps, VDatePicker } from '@/components/VDatePicker/VDatePicker'\nimport { VMenu } from '@/components/VMenu/VMenu'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\n\n// Composables\nimport { useDate } from '@/composables/date'\nimport { makeFocusProps, useFocus } from '@/composables/focus'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref, shallowRef } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { StrategyProps } from '@/components/VOverlay/locationStrategies'\n\n// Types\nexport type VDateInputActionsSlot = {\n save: () => void\n cancel: () => void\n isPristine: boolean\n}\n\nexport type VDateInputSlots = {\n actions: VDateInputActionsSlot\n default: never\n}\n\nexport const makeVDateInputProps = propsFactory({\n hideActions: Boolean,\n location: {\n type: String as PropType<StrategyProps['location']>,\n default: 'bottom start',\n },\n ...makeFocusProps(),\n ...makeVConfirmEditProps(),\n ...makeVTextFieldProps({\n placeholder: 'mm/dd/yyyy',\n prependIcon: '$calendar',\n }),\n ...omit(makeVDatePickerProps({\n weeksInMonth: 'dynamic' as const,\n hideHeader: true,\n }), ['active', 'location']),\n}, 'VDateInput')\n\nexport const VDateInput = genericComponent<VDateInputSlots>()({\n name: 'VDateInput',\n\n props: makeVDateInputProps(),\n\n emits: {\n 'update:modelValue': (val: string) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const adapter = useDate()\n const { isFocused, focus, blur } = useFocus(props)\n const model = useProxiedModel(\n props,\n 'modelValue',\n props.multiple ? [] : null,\n val => Array.isArray(val) ? val.map(item => adapter.toJsDate(item)) : val ? adapter.toJsDate(val) : val,\n val => Array.isArray(val) ? val.map(item => adapter.date(item)) : val ? adapter.date(val) : val\n )\n\n const menu = shallowRef(false)\n const vDateInputRef = ref()\n\n const display = computed(() => {\n const value = wrapInArray(model.value)\n\n if (!value.length) return null\n\n if (props.multiple === true) {\n return t('$vuetify.datePicker.itemsSelected', value.length)\n }\n\n if (props.multiple === 'range') {\n const start = value[0]\n const end = value[value.length - 1]\n\n return adapter.isValid(start) && adapter.isValid(end)\n ? `${adapter.format(start, 'keyboardDate')} - ${adapter.format(end, 'keyboardDate')}`\n : ''\n }\n\n return adapter.isValid(model.value) ? adapter.format(model.value, 'keyboardDate') : ''\n })\n\n const isInteractive = computed(() => !props.disabled && !props.readonly)\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key !== 'Enter') return\n\n if (!menu.value || !isFocused.value) {\n menu.value = true\n\n return\n }\n\n const target = e.target as HTMLInputElement\n\n model.value = target.value\n }\n\n function onClick (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n\n menu.value = true\n }\n\n function onSave () {\n menu.value = false\n }\n\n function onUpdateModel (value: string) {\n if (value != null) return\n\n model.value = null\n }\n\n useRender(() => {\n const confirmEditProps = VConfirmEdit.filterProps(props)\n const datePickerProps = VDatePicker.filterProps(omit(props, ['active', 'location']))\n const textFieldProps = VTextField.filterProps(props)\n\n return (\n <VTextField\n ref={ vDateInputRef }\n { ...textFieldProps }\n class={ props.class }\n style={ props.style }\n modelValue={ display.value }\n onKeydown={ isInteractive.value ? onKeydown : undefined }\n focused={ menu.value || isFocused.value }\n onFocus={ focus }\n onBlur={ blur }\n onClick:control={ isInteractive.value ? onClick : undefined }\n onClick:prepend={ isInteractive.value ? onClick : undefined }\n onUpdate:modelValue={ onUpdateModel }\n >\n <VMenu\n v-model={ menu.value }\n activator=\"parent\"\n min-width=\"0\"\n location={ props.location }\n closeOnContentClick={ false }\n openOnClick={ false }\n >\n <VConfirmEdit\n { ...confirmEditProps }\n v-model={ model.value }\n onSave={ onSave }\n onCancel={ () => menu.value = false }\n >\n {{\n default: ({ actions, model: proxyModel, save, cancel, isPristine }) => {\n return (\n <VDatePicker\n { ...datePickerProps }\n modelValue={ props.hideActions ? model.value : proxyModel.value }\n onUpdate:modelValue={ val => {\n if (!props.hideActions) {\n proxyModel.value = val\n } else {\n model.value = val\n\n if (!props.multiple) menu.value = false\n }\n }}\n onMousedown={ (e: MouseEvent) => e.preventDefault() }\n >\n {{\n actions: !props.hideActions ? () => slots.actions?.({ save, cancel, isPristine }) ?? actions() : undefined,\n }}\n </VDatePicker>\n )\n },\n }}\n </VConfirmEdit>\n </VMenu>\n\n { slots.default?.() }\n </VTextField>\n )\n })\n\n return forwardRefs({}, vDateInputRef)\n },\n})\n\nexport type VDateInput = InstanceType<typeof VDateInput>\n"],"mappings":";AAAA;AAAA,SACSA,qBAAqB,EAAEC,YAAY;AAAA,SACnCC,oBAAoB,EAAEC,WAAW;AAAA,SACjCC,KAAK;AAAA,SACLC,mBAAmB,EAAEC,UAAU,sDAExC;AAAA,SACSC,OAAO;AAAA,SACPC,cAAc,EAAEC,QAAQ;AAAA,SACxBC,WAAW;AAAA,SACXC,SAAS;AAAA,SACTC,eAAe,8CAExB;AACA,SAASC,QAAQ,EAAEC,GAAG,EAAEC,UAAU,QAAQ,KAAK;AAAA,SACtCC,gBAAgB,EAAEC,IAAI,EAAEC,YAAY,EAAEC,SAAS,EAAEC,WAAW,gCAErE;AAIA;AAYA,OAAO,MAAMC,mBAAmB,GAAGH,YAAY,CAAC;EAC9CI,WAAW,EAAEC,OAAO;EACpBC,QAAQ,EAAE;IACRC,IAAI,EAAEC,MAA6C;IACnDC,OAAO,EAAE;EACX,CAAC;EACD,GAAGnB,cAAc,CAAC,CAAC;EACnB,GAAGR,qBAAqB,CAAC,CAAC;EAC1B,GAAGK,mBAAmB,CAAC;IACrBuB,WAAW,EAAE,YAAY;IACzBC,WAAW,EAAE;EACf,CAAC,CAAC;EACF,GAAGZ,IAAI,CAACf,oBAAoB,CAAC;IAC3B4B,YAAY,EAAE,SAAkB;IAChCC,UAAU,EAAE;EACd,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;AAC5B,CAAC,EAAE,YAAY,CAAC;AAEhB,OAAO,MAAMC,UAAU,GAAGhB,gBAAgB,CAAkB,CAAC,CAAC;EAC5DiB,IAAI,EAAE,YAAY;EAElBC,KAAK,EAAEb,mBAAmB,CAAC,CAAC;EAE5Bc,KAAK,EAAE;IACL,mBAAmB,EAAGC,GAAW,IAAK;EACxC,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE;IAAE,CAAC,GAAG7B,SAAS,CAAC,CAAC;IACzB,MAAM8B,OAAO,GAAGlC,OAAO,CAAC,CAAC;IACzB,MAAM;MAAEmC,SAAS;MAAEC,KAAK;MAAEC;IAAK,CAAC,GAAGnC,QAAQ,CAACyB,KAAK,CAAC;IAClD,MAAMW,KAAK,GAAGjC,eAAe,CAC3BsB,KAAK,EACL,YAAY,EACZA,KAAK,CAACY,QAAQ,GAAG,EAAE,GAAG,IAAI,EAC1BV,GAAG,IAAIW,KAAK,CAACC,OAAO,CAACZ,GAAG,CAAC,GAAGA,GAAG,CAACa,GAAG,CAACC,IAAI,IAAIT,OAAO,CAACU,QAAQ,CAACD,IAAI,CAAC,CAAC,GAAGd,GAAG,GAAGK,OAAO,CAACU,QAAQ,CAACf,GAAG,CAAC,GAAGA,GAAG,EACvGA,GAAG,IAAIW,KAAK,CAACC,OAAO,CAACZ,GAAG,CAAC,GAAGA,GAAG,CAACa,GAAG,CAACC,IAAI,IAAIT,OAAO,CAACW,IAAI,CAACF,IAAI,CAAC,CAAC,GAAGd,GAAG,GAAGK,OAAO,CAACW,IAAI,CAAChB,GAAG,CAAC,GAAGA,GAC9F,CAAC;IAED,MAAMiB,IAAI,GAAGtC,UAAU,CAAC,KAAK,CAAC;IAC9B,MAAMuC,aAAa,GAAGxC,GAAG,CAAC,CAAC;IAE3B,MAAMyC,OAAO,GAAG1C,QAAQ,CAAC,MAAM;MAC7B,MAAM2C,KAAK,GAAGpC,WAAW,CAACyB,KAAK,CAACW,KAAK,CAAC;MAEtC,IAAI,CAACA,KAAK,CAACC,MAAM,EAAE,OAAO,IAAI;MAE9B,IAAIvB,KAAK,CAACY,QAAQ,KAAK,IAAI,EAAE;QAC3B,OAAON,CAAC,CAAC,mCAAmC,EAAEgB,KAAK,CAACC,MAAM,CAAC;MAC7D;MAEA,IAAIvB,KAAK,CAACY,QAAQ,KAAK,OAAO,EAAE;QAC9B,MAAMY,KAAK,GAAGF,KAAK,CAAC,CAAC,CAAC;QACtB,MAAMG,GAAG,GAAGH,KAAK,CAACA,KAAK,CAACC,MAAM,GAAG,CAAC,CAAC;QAEnC,OAAOhB,OAAO,CAACmB,OAAO,CAACF,KAAK,CAAC,IAAIjB,OAAO,CAACmB,OAAO,CAACD,GAAG,CAAC,GACjD,GAAGlB,OAAO,CAACoB,MAAM,CAACH,KAAK,EAAE,cAAc,CAAC,MAAMjB,OAAO,CAACoB,MAAM,CAACF,GAAG,EAAE,cAAc,CAAC,EAAE,GACnF,EAAE;MACR;MAEA,OAAOlB,OAAO,CAACmB,OAAO,CAACf,KAAK,CAACW,KAAK,CAAC,GAAGf,OAAO,CAACoB,MAAM,CAAChB,KAAK,CAACW,KAAK,EAAE,cAAc,CAAC,GAAG,EAAE;IACxF,CAAC,CAAC;IAEF,MAAMM,aAAa,GAAGjD,QAAQ,CAAC,MAAM,CAACqB,KAAK,CAAC6B,QAAQ,IAAI,CAAC7B,KAAK,CAAC8B,QAAQ,CAAC;IAExE,SAASC,SAASA,CAAEC,CAAgB,EAAE;MACpC,IAAIA,CAAC,CAACC,GAAG,KAAK,OAAO,EAAE;MAEvB,IAAI,CAACd,IAAI,CAACG,KAAK,IAAI,CAACd,SAAS,CAACc,KAAK,EAAE;QACnCH,IAAI,CAACG,KAAK,GAAG,IAAI;QAEjB;MACF;MAEA,MAAMY,MAAM,GAAGF,CAAC,CAACE,MAA0B;MAE3CvB,KAAK,CAACW,KAAK,GAAGY,MAAM,CAACZ,KAAK;IAC5B;IAEA,SAASa,OAAOA,CAAEH,CAAa,EAAE;MAC/BA,CAAC,CAACI,cAAc,CAAC,CAAC;MAClBJ,CAAC,CAACK,eAAe,CAAC,CAAC;MAEnBlB,IAAI,CAACG,KAAK,GAAG,IAAI;IACnB;IAEA,SAASgB,MAAMA,CAAA,EAAI;MACjBnB,IAAI,CAACG,KAAK,GAAG,KAAK;IACpB;IAEA,SAASiB,aAAaA,CAAEjB,KAAa,EAAE;MACrC,IAAIA,KAAK,IAAI,IAAI,EAAE;MAEnBX,KAAK,CAACW,KAAK,GAAG,IAAI;IACpB;IAEArC,SAAS,CAAC,MAAM;MACd,MAAMuD,gBAAgB,GAAGzE,YAAY,CAAC0E,WAAW,CAACzC,KAAK,CAAC;MACxD,MAAM0C,eAAe,GAAGzE,WAAW,CAACwE,WAAW,CAAC1D,IAAI,CAACiB,KAAK,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;MACpF,MAAM2C,cAAc,GAAGvE,UAAU,CAACqE,WAAW,CAACzC,KAAK,CAAC;MAEpD,OAAA4C,YAAA,CAAAxE,UAAA,EAAAyE,WAAA;QAAA,OAEUzB;MAAa,GACduB,cAAc;QAAA,SACX3C,KAAK,CAAC8C,KAAK;QAAA,SACX9C,KAAK,CAAC+C,KAAK;QAAA,cACN1B,OAAO,CAACC,KAAK;QAAA,aACdM,aAAa,CAACN,KAAK,GAAGS,SAAS,GAAGiB,SAAS;QAAA,WAC7C7B,IAAI,CAACG,KAAK,IAAId,SAAS,CAACc,KAAK;QAAA,WAC7Bb,KAAK;QAAA,UACNC,IAAI;QAAA,mBACKkB,aAAa,CAACN,KAAK,GAAGa,OAAO,GAAGa,SAAS;QAAA,mBACzCpB,aAAa,CAACN,KAAK,GAAGa,OAAO,GAAGa,SAAS;QAAA,uBACrCT;MAAa;QAAA9C,OAAA,EAAAA,CAAA,MAAAmD,YAAA,CAAA1E,KAAA;UAAA,cAGvBiD,IAAI,CAACG,KAAK;UAAA,uBAAA2B,MAAA,IAAV9B,IAAI,CAACG,KAAK,GAAA2B,MAAA;UAAA;UAAA;UAAA,YAGTjD,KAAK,CAACV,QAAQ;UAAA,uBACH,KAAK;UAAA,eACb;QAAK;UAAAG,OAAA,EAAAA,CAAA,MAAAmD,YAAA,CAAA7E,YAAA,EAAA8E,WAAA,CAGZL,gBAAgB;YAAA,cACX7B,KAAK,CAACW,KAAK;YAAA,uBAAA2B,MAAA,IAAXtC,KAAK,CAACW,KAAK,GAAA2B,MAAA;YAAA,UACZX,MAAM;YAAA,YACJY,CAAA,KAAM/B,IAAI,CAACG,KAAK,GAAG;UAAK;YAGjC7B,OAAO,EAAE0D,KAAA,IAA8D;cAAA,IAA7D;gBAAEC,OAAO;gBAAEzC,KAAK,EAAE0C,UAAU;gBAAEC,IAAI;gBAAEC,MAAM;gBAAEC;cAAW,CAAC,GAAAL,KAAA;cAChE,OAAAP,YAAA,CAAA3E,WAAA,EAAA4E,WAAA,CAESH,eAAe;gBAAA,cACP1C,KAAK,CAACZ,WAAW,GAAGuB,KAAK,CAACW,KAAK,GAAG+B,UAAU,CAAC/B,KAAK;gBAAA,uBACzCpB,GAAG,IAAI;kBAC3B,IAAI,CAACF,KAAK,CAACZ,WAAW,EAAE;oBACtBiE,UAAU,CAAC/B,KAAK,GAAGpB,GAAG;kBACxB,CAAC,MAAM;oBACLS,KAAK,CAACW,KAAK,GAAGpB,GAAG;oBAEjB,IAAI,CAACF,KAAK,CAACY,QAAQ,EAAEO,IAAI,CAACG,KAAK,GAAG,KAAK;kBACzC;gBACF,CAAC;gBAAA,eACcU,CAAa,IAAKA,CAAC,CAACI,cAAc,CAAC;cAAC;gBAGjDgB,OAAO,EAAE,CAACpD,KAAK,CAACZ,WAAW,GAAG,MAAMiB,KAAK,CAAC+C,OAAO,GAAG;kBAAEE,IAAI;kBAAEC,MAAM;kBAAEC;gBAAW,CAAC,CAAC,IAAIJ,OAAO,CAAC,CAAC,GAAGJ;cAAS;YAIlH;UAAC;QAAA,IAKL3C,KAAK,CAACZ,OAAO,GAAG,CAAC;MAAA;IAGzB,CAAC,CAAC;IAEF,OAAOjB,WAAW,CAAC,CAAC,CAAC,EAAE4C,aAAa,CAAC;EACvC;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"VDateInput.mjs","names":["makeVConfirmEditProps","VConfirmEdit","makeVDatePickerProps","VDatePicker","VMenu","makeVTextFieldProps","VTextField","useDate","makeFocusProps","useFocus","forwardRefs","useLocale","useProxiedModel","computed","ref","shallowRef","genericComponent","omit","propsFactory","useRender","wrapInArray","makeVDateInputProps","hideActions","Boolean","location","type","String","default","placeholder","prependIcon","weeksInMonth","hideHeader","VDateInput","name","props","emits","val","setup","_ref","slots","t","adapter","isFocused","focus","blur","model","multiple","Array","isArray","map","item","toJsDate","date","menu","vDateInputRef","display","value","length","start","end","isValid","format","isInteractive","disabled","readonly","onKeydown","e","key","target","onClick","preventDefault","stopPropagation","onSave","onUpdateModel","confirmEditProps","filterProps","datePickerProps","textFieldProps","_createVNode","_mergeProps","class","style","undefined","$event","onCancel","_ref2","actions","proxyModel","save","cancel","isPristine"],"sources":["../../../src/labs/VDateInput/VDateInput.tsx"],"sourcesContent":["// Components\nimport { makeVConfirmEditProps, VConfirmEdit } from '@/components/VConfirmEdit/VConfirmEdit'\nimport { makeVDatePickerProps, VDatePicker } from '@/components/VDatePicker/VDatePicker'\nimport { VMenu } from '@/components/VMenu/VMenu'\nimport { makeVTextFieldProps, VTextField } from '@/components/VTextField/VTextField'\n\n// Composables\nimport { useDate } from '@/composables/date'\nimport { makeFocusProps, useFocus } from '@/composables/focus'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref, shallowRef } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { StrategyProps } from '@/components/VOverlay/locationStrategies'\n\n// Types\nexport type VDateInputActionsSlot = {\n save: () => void\n cancel: () => void\n isPristine: boolean\n}\n\nexport type VDateInputSlots = {\n actions: VDateInputActionsSlot\n default: never\n}\n\nexport const makeVDateInputProps = propsFactory({\n hideActions: Boolean,\n location: {\n type: String as PropType<StrategyProps['location']>,\n default: 'bottom start',\n },\n ...makeFocusProps(),\n ...makeVConfirmEditProps(),\n ...makeVTextFieldProps({\n placeholder: 'mm/dd/yyyy',\n prependIcon: '$calendar',\n }),\n ...omit(makeVDatePickerProps({\n weeksInMonth: 'dynamic' as const,\n hideHeader: true,\n }), ['active', 'location', 'rounded']),\n}, 'VDateInput')\n\nexport const VDateInput = genericComponent<VDateInputSlots>()({\n name: 'VDateInput',\n\n props: makeVDateInputProps(),\n\n emits: {\n 'update:modelValue': (val: string) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const adapter = useDate()\n const { isFocused, focus, blur } = useFocus(props)\n const model = useProxiedModel(\n props,\n 'modelValue',\n props.multiple ? [] : null,\n val => Array.isArray(val) ? val.map(item => adapter.toJsDate(item)) : val ? adapter.toJsDate(val) : val,\n val => Array.isArray(val) ? val.map(item => adapter.date(item)) : val ? adapter.date(val) : val\n )\n\n const menu = shallowRef(false)\n const vDateInputRef = ref()\n\n const display = computed(() => {\n const value = wrapInArray(model.value)\n\n if (!value.length) return null\n\n if (props.multiple === true) {\n return t('$vuetify.datePicker.itemsSelected', value.length)\n }\n\n if (props.multiple === 'range') {\n const start = value[0]\n const end = value[value.length - 1]\n\n return adapter.isValid(start) && adapter.isValid(end)\n ? `${adapter.format(start, 'keyboardDate')} - ${adapter.format(end, 'keyboardDate')}`\n : ''\n }\n\n return adapter.isValid(model.value) ? adapter.format(model.value, 'keyboardDate') : ''\n })\n\n const isInteractive = computed(() => !props.disabled && !props.readonly)\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key !== 'Enter') return\n\n if (!menu.value || !isFocused.value) {\n menu.value = true\n\n return\n }\n\n const target = e.target as HTMLInputElement\n\n model.value = target.value\n }\n\n function onClick (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n\n menu.value = true\n }\n\n function onSave () {\n menu.value = false\n }\n\n function onUpdateModel (value: string) {\n if (value != null) return\n\n model.value = null\n }\n\n useRender(() => {\n const confirmEditProps = VConfirmEdit.filterProps(props)\n const datePickerProps = VDatePicker.filterProps(omit(props, ['active', 'location', 'rounded']))\n const textFieldProps = VTextField.filterProps(props)\n\n return (\n <VTextField\n ref={ vDateInputRef }\n { ...textFieldProps }\n class={ props.class }\n style={ props.style }\n modelValue={ display.value }\n onKeydown={ isInteractive.value ? onKeydown : undefined }\n focused={ menu.value || isFocused.value }\n onFocus={ focus }\n onBlur={ blur }\n onClick:control={ isInteractive.value ? onClick : undefined }\n onClick:prepend={ isInteractive.value ? onClick : undefined }\n onUpdate:modelValue={ onUpdateModel }\n >\n <VMenu\n v-model={ menu.value }\n activator=\"parent\"\n min-width=\"0\"\n location={ props.location }\n closeOnContentClick={ false }\n openOnClick={ false }\n >\n <VConfirmEdit\n { ...confirmEditProps }\n v-model={ model.value }\n onSave={ onSave }\n onCancel={ () => menu.value = false }\n >\n {{\n default: ({ actions, model: proxyModel, save, cancel, isPristine }) => {\n return (\n <VDatePicker\n { ...datePickerProps }\n modelValue={ props.hideActions ? model.value : proxyModel.value }\n onUpdate:modelValue={ val => {\n if (!props.hideActions) {\n proxyModel.value = val\n } else {\n model.value = val\n\n if (!props.multiple) menu.value = false\n }\n }}\n onMousedown={ (e: MouseEvent) => e.preventDefault() }\n >\n {{\n actions: !props.hideActions ? () => slots.actions?.({ save, cancel, isPristine }) ?? actions() : undefined,\n }}\n </VDatePicker>\n )\n },\n }}\n </VConfirmEdit>\n </VMenu>\n\n { slots.default?.() }\n </VTextField>\n )\n })\n\n return forwardRefs({}, vDateInputRef)\n },\n})\n\nexport type VDateInput = InstanceType<typeof VDateInput>\n"],"mappings":"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","ignoreList":[]}
@@ -200,7 +200,6 @@ declare const VDateInput: {
200
200
  modelModifiers?: Record<string, boolean> | undefined;
201
201
  firstDayOfWeek?: string | number | undefined;
202
202
  allowedDates?: unknown[] | ((date: unknown) => boolean) | undefined;
203
- displayValue?: unknown;
204
203
  } & {
205
204
  $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
206
205
  actions?: ((arg: VDateInputActionsSlot) => vue.VNodeChild) | undefined;
@@ -316,7 +315,6 @@ declare const VDateInput: {
316
315
  modelModifiers?: Record<string, boolean> | undefined;
317
316
  firstDayOfWeek?: string | number | undefined;
318
317
  allowedDates?: unknown[] | ((date: unknown) => boolean) | undefined;
319
- displayValue?: unknown;
320
318
  } & {
321
319
  $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
322
320
  actions?: ((arg: VDateInputActionsSlot) => vue.VNodeChild) | undefined;
@@ -492,7 +490,6 @@ declare const VDateInput: {
492
490
  modelModifiers?: Record<string, boolean> | undefined;
493
491
  firstDayOfWeek?: string | number | undefined;
494
492
  allowedDates?: unknown[] | ((date: unknown) => boolean) | undefined;
495
- displayValue?: unknown;
496
493
  } & {
497
494
  $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
498
495
  actions?: ((arg: VDateInputActionsSlot) => vue.VNodeChild) | undefined;
@@ -662,7 +659,6 @@ declare const VDateInput: {
662
659
  modelModifiers?: Record<string, boolean> | undefined;
663
660
  firstDayOfWeek?: string | number | undefined;
664
661
  allowedDates?: unknown[] | ((date: unknown) => boolean) | undefined;
665
- displayValue?: unknown;
666
662
  } & {
667
663
  $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
668
664
  actions?: ((arg: VDateInputActionsSlot) => vue.VNodeChild) | undefined;
@@ -782,10 +778,6 @@ declare const VDateInput: {
782
778
  validator(v: any): boolean;
783
779
  };
784
780
  modelValue: null;
785
- rounded: {
786
- type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
787
- default: undefined;
788
- };
789
781
  tile: BooleanConstructor;
790
782
  bgColor: StringConstructor;
791
783
  nextIcon: {
@@ -840,13 +832,16 @@ declare const VDateInput: {
840
832
  };
841
833
  firstDayOfWeek: (StringConstructor | NumberConstructor)[];
842
834
  allowedDates: PropType<unknown[] | ((date: unknown) => boolean)>;
843
- displayValue: PropType<unknown>;
844
835
  hideWeekdays: BooleanConstructor;
845
836
  showWeek: BooleanConstructor;
846
837
  hideHeader: {
847
838
  type: PropType<boolean>;
848
839
  default: boolean;
849
840
  };
841
+ rounded: {
842
+ type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
843
+ default: undefined;
844
+ };
850
845
  loading: (StringConstructor | BooleanConstructor)[];
851
846
  appendInnerIcon: PropType<IconValue>;
852
847
  clearable: BooleanConstructor;
@@ -1001,10 +996,6 @@ declare const VDateInput: {
1001
996
  validator(v: any): boolean;
1002
997
  };
1003
998
  modelValue: null;
1004
- rounded: {
1005
- type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
1006
- default: undefined;
1007
- };
1008
999
  tile: BooleanConstructor;
1009
1000
  bgColor: StringConstructor;
1010
1001
  nextIcon: {
@@ -1059,13 +1050,16 @@ declare const VDateInput: {
1059
1050
  };
1060
1051
  firstDayOfWeek: (StringConstructor | NumberConstructor)[];
1061
1052
  allowedDates: PropType<unknown[] | ((date: unknown) => boolean)>;
1062
- displayValue: PropType<unknown>;
1063
1053
  hideWeekdays: BooleanConstructor;
1064
1054
  showWeek: BooleanConstructor;
1065
1055
  hideHeader: {
1066
1056
  type: PropType<boolean>;
1067
1057
  default: boolean;
1068
1058
  };
1059
+ rounded: {
1060
+ type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
1061
+ default: undefined;
1062
+ };
1069
1063
  loading: (StringConstructor | BooleanConstructor)[];
1070
1064
  appendInnerIcon: PropType<IconValue>;
1071
1065
  clearable: BooleanConstructor;