@vuetify/nightly 3.9.0-beta.1-dev.2025-06-28 → 3.9.0-beta.1-dev.2025-07-02
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +100 -3
- package/dist/json/attributes.json +725 -725
- package/dist/json/importMap-labs.json +30 -30
- package/dist/json/importMap.json +156 -156
- package/dist/json/web-types.json +1311 -1311
- package/dist/vuetify-labs.cjs +61 -63
- package/dist/vuetify-labs.css +4207 -4207
- package/dist/vuetify-labs.d.ts +203 -203
- package/dist/vuetify-labs.esm.js +61 -63
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +61 -63
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +36 -39
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +4469 -4469
- package/dist/vuetify.d.ts +60 -60
- package/dist/vuetify.esm.js +36 -39
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +36 -39
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +34 -35
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VDataTable/VDataTableColumn.js +0 -1
- package/lib/components/VDataTable/VDataTableColumn.js.map +1 -1
- package/lib/components/VDataTable/VDataTableHeaders.js +5 -5
- package/lib/components/VDataTable/VDataTableHeaders.js.map +1 -1
- package/lib/components/VDataTable/composables/sort.js +2 -1
- package/lib/components/VDataTable/composables/sort.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerMonth.js +1 -2
- package/lib/components/VDatePicker/VDatePickerMonth.js.map +1 -1
- package/lib/components/VOtpInput/VOtpInput.js +17 -14
- package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
- package/lib/components/VOverlay/locationStrategies.js +1 -1
- package/lib/components/VOverlay/locationStrategies.js.map +1 -1
- package/lib/components/VTextField/VTextField.js +1 -1
- package/lib/components/VTextField/VTextField.js.map +1 -1
- package/lib/composables/calendar.d.ts +0 -1
- package/lib/composables/calendar.js +6 -10
- package/lib/composables/calendar.js.map +1 -1
- package/lib/composables/date/adapters/vuetify.js +1 -1
- package/lib/composables/date/adapters/vuetify.js.map +1 -1
- package/lib/composables/virtual.js +1 -1
- package/lib/composables/virtual.js.map +1 -1
- package/lib/entry-bundler.js +1 -1
- package/lib/framework.d.ts +60 -60
- package/lib/framework.js +1 -1
- package/lib/labs/VCalendar/VCalendar.d.ts +33 -33
- package/lib/labs/VCalendar/VCalendar.js +9 -9
- package/lib/labs/VCalendar/VCalendar.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarDay.d.ts +33 -33
- package/lib/labs/VCalendar/VCalendarDay.js +1 -1
- package/lib/labs/VCalendar/VCalendarDay.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarInterval.d.ts +36 -36
- package/lib/labs/VCalendar/VCalendarInterval.js +9 -9
- package/lib/labs/VCalendar/VCalendarInterval.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarIntervalEvent.d.ts +12 -12
- package/lib/labs/VCalendar/VCalendarIntervalEvent.js +1 -1
- package/lib/labs/VCalendar/VCalendarIntervalEvent.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarMonthDay.d.ts +36 -36
- package/lib/labs/VCalendar/VCalendarMonthDay.js +4 -4
- package/lib/labs/VCalendar/VCalendarMonthDay.js.map +1 -1
- package/lib/labs/VIconBtn/VIconBtn.js +1 -0
- package/lib/labs/VIconBtn/VIconBtn.js.map +1 -1
- package/package.json +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"vuetify.js","names":["createRange","padStart","weekInfo","locale","code","slice","toUpperCase","firstDay","firstWeekSize","includes","getWeekArray","date","firstDayOfWeek","weeks","currentWeek","firstDayOfMonth","startOfMonth","lastDayOfMonth","endOfMonth","first","firstDayWeekIndex","getDay","lastDayWeekIndex","i","adjacentDay","Date","setDate","getDate","push","day","getFullYear","getMonth","length","startOfWeek","d","endOfWeek","lastDay","parseLocalDate","value","parts","split","map","Number","_YYYMMDD","parsed","test","parse","isNaN","sundayJanuarySecond2000","getWeekdays","weekdayFormat","daysFromSunday","weekday","Intl","DateTimeFormat","format","formatString","formats","newDate","customFormat","options","year","month","NumberFormat","hour","hour12","minute","second","replace","timeZone","timeZoneName","toISO","adapter","toJsDate","String","parseISO","addMinutes","amount","setMinutes","getMinutes","addHours","setHours","getHours","addDays","addWeeks","addMonths","setMonth","getYear","getWeek","firstWeekMinSize","weekInfoFromLocale","weekStart","minWeekSize","yearStart","getDiff","currentWeekEnd","size","d1w1","endOfDay","startOfDay","getNextMonth","getPreviousMonth","startOfYear","endOfYear","isWithinRange","range","isAfter","isBefore","isValid","getTime","comparing","isAfterDay","isEqual","isSameDay","isSameMonth","isSameYear","unit","c","Math","floor","count","setYear","setFullYear","VuetifyDateAdapter","constructor","undefined"],"sources":["../../../../src/composables/date/adapters/vuetify.ts"],"sourcesContent":["// Utilities\nimport { createRange, padStart } from '@/util'\n\n// Types\nimport type { DateAdapter } from '../DateAdapter'\n\ntype CustomDateFormat = Intl.DateTimeFormatOptions | ((date: Date, formatString: string, locale: string) => string)\n\nfunction weekInfo (locale: string): { firstDay: number, firstWeekSize: number } | null {\n // https://simplelocalize.io/data/locales/\n // then `new Intl.Locale(...).getWeekInfo()`\n const code = locale.slice(-2).toUpperCase()\n switch (true) {\n case locale === 'GB-alt-variant': {\n return { firstDay: 0, firstWeekSize: 4 }\n }\n case locale === '001': {\n return { firstDay: 1, firstWeekSize: 1 }\n }\n case `AG AS BD BR BS BT BW BZ CA CO DM DO ET GT GU HK HN ID IL IN JM JP KE\n KH KR LA MH MM MO MT MX MZ NI NP PA PE PH PK PR PY SA SG SV TH TT TW UM US\n VE VI WS YE ZA ZW`.includes(code): {\n return { firstDay: 0, firstWeekSize: 1 }\n }\n case `AI AL AM AR AU AZ BA BM BN BY CL CM CN CR CY EC GE HR KG KZ LB LK LV\n MD ME MK MN MY NZ RO RS SI TJ TM TR UA UY UZ VN XK`.includes(code): {\n return { firstDay: 1, firstWeekSize: 1 }\n }\n case `AD AN AT AX BE BG CH CZ DE DK EE ES FI FJ FO FR GB GF GP GR HU IE IS\n IT LI LT LU MC MQ NL NO PL RE RU SE SK SM VA`.includes(code): {\n return { firstDay: 1, firstWeekSize: 4 }\n }\n case `AE AF BH DJ DZ EG IQ IR JO KW LY OM QA SD SY`.includes(code): {\n return { firstDay: 6, firstWeekSize: 1 }\n }\n case code === 'MV': {\n return { firstDay: 5, firstWeekSize: 1 }\n }\n case code === 'PT': {\n return { firstDay: 0, firstWeekSize: 4 }\n }\n default: return null\n }\n}\n\nfunction getWeekArray (date: Date, locale: string, firstDayOfWeek?: number) {\n const weeks = []\n let currentWeek = []\n const firstDayOfMonth = startOfMonth(date)\n const lastDayOfMonth = endOfMonth(date)\n const first = firstDayOfWeek ?? weekInfo(locale)?.firstDay ?? 0\n const firstDayWeekIndex = (firstDayOfMonth.getDay() - first + 7) % 7\n const lastDayWeekIndex = (lastDayOfMonth.getDay() - first + 7) % 7\n\n for (let i = 0; i < firstDayWeekIndex; i++) {\n const adjacentDay = new Date(firstDayOfMonth)\n adjacentDay.setDate(adjacentDay.getDate() - (firstDayWeekIndex - i))\n currentWeek.push(adjacentDay)\n }\n\n for (let i = 1; i <= lastDayOfMonth.getDate(); i++) {\n const day = new Date(date.getFullYear(), date.getMonth(), i)\n\n // Add the day to the current week\n currentWeek.push(day)\n\n // If the current week has 7 days, add it to the weeks array and start a new week\n if (currentWeek.length === 7) {\n weeks.push(currentWeek)\n currentWeek = []\n }\n }\n\n for (let i = 1; i < 7 - lastDayWeekIndex; i++) {\n const adjacentDay = new Date(lastDayOfMonth)\n adjacentDay.setDate(adjacentDay.getDate() + i)\n currentWeek.push(adjacentDay)\n }\n\n if (currentWeek.length > 0) {\n weeks.push(currentWeek)\n }\n\n return weeks\n}\n\nfunction startOfWeek (date: Date, locale: string, firstDayOfWeek?: number) {\n const day = firstDayOfWeek ?? weekInfo(locale)?.firstDay ?? 0\n\n const d = new Date(date)\n while (d.getDay() !== day) {\n d.setDate(d.getDate() - 1)\n }\n return d\n}\n\nfunction endOfWeek (date: Date, locale: string) {\n const d = new Date(date)\n const lastDay = ((weekInfo(locale)?.firstDay ?? 0) + 6) % 7\n while (d.getDay() !== lastDay) {\n d.setDate(d.getDate() + 1)\n }\n return d\n}\n\nfunction startOfMonth (date: Date) {\n return new Date(date.getFullYear(), date.getMonth(), 1)\n}\n\nfunction endOfMonth (date: Date) {\n return new Date(date.getFullYear(), date.getMonth() + 1, 0)\n}\n\nfunction parseLocalDate (value: string): Date {\n const parts = value.split('-').map(Number)\n\n // new Date() uses local time zone when passing individual date component values\n return new Date(parts[0], parts[1] - 1, parts[2])\n}\n\nconst _YYYMMDD = /^([12]\\d{3}-([1-9]|0[1-9]|1[0-2])-([1-9]|0[1-9]|[12]\\d|3[01]))$/\n\nfunction date (value?: any): Date | null {\n if (value == null) return new Date()\n\n if (value instanceof Date) return value\n\n if (typeof value === 'string') {\n let parsed\n\n if (_YYYMMDD.test(value)) {\n return parseLocalDate(value)\n } else {\n parsed = Date.parse(value)\n }\n\n if (!isNaN(parsed)) return new Date(parsed)\n }\n\n return null\n}\n\nconst sundayJanuarySecond2000 = new Date(2000, 0, 2)\n\nfunction getWeekdays (locale: string, firstDayOfWeek?: number, weekdayFormat?: 'long' | 'short' | 'narrow') {\n const daysFromSunday = firstDayOfWeek ?? weekInfo(locale)?.firstDay ?? 0\n\n return createRange(7).map(i => {\n const weekday = new Date(sundayJanuarySecond2000)\n weekday.setDate(sundayJanuarySecond2000.getDate() + daysFromSunday + i)\n return new Intl.DateTimeFormat(locale, { weekday: weekdayFormat ?? 'narrow' }).format(weekday)\n })\n}\n\nfunction format (\n value: Date,\n formatString: string,\n locale: string,\n formats?: Record<string, CustomDateFormat>\n): string {\n const newDate = date(value) ?? new Date()\n const customFormat = formats?.[formatString]\n\n if (typeof customFormat === 'function') {\n return customFormat(newDate, formatString, locale)\n }\n\n let options: Intl.DateTimeFormatOptions = {}\n switch (formatString) {\n case 'fullDate':\n options = { year: 'numeric', month: 'long', day: 'numeric' }\n break\n case 'fullDateWithWeekday':\n options = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' }\n break\n case 'normalDate':\n const day = newDate.getDate()\n const month = new Intl.DateTimeFormat(locale, { month: 'long' }).format(newDate)\n return `${day} ${month}`\n case 'normalDateWithWeekday':\n options = { weekday: 'short', day: 'numeric', month: 'short' }\n break\n case 'shortDate':\n options = { month: 'short', day: 'numeric' }\n break\n case 'year':\n options = { year: 'numeric' }\n break\n case 'month':\n options = { month: 'long' }\n break\n case 'monthShort':\n options = { month: 'short' }\n break\n case 'monthAndYear':\n options = { month: 'long', year: 'numeric' }\n break\n case 'monthAndDate':\n options = { month: 'long', day: 'numeric' }\n break\n case 'weekday':\n options = { weekday: 'long' }\n break\n case 'weekdayShort':\n options = { weekday: 'short' }\n break\n case 'dayOfMonth':\n return new Intl.NumberFormat(locale).format(newDate.getDate())\n case 'hours12h':\n options = { hour: 'numeric', hour12: true }\n break\n case 'hours24h':\n options = { hour: 'numeric', hour12: false }\n break\n case 'minutes':\n options = { minute: 'numeric' }\n break\n case 'seconds':\n options = { second: 'numeric' }\n break\n case 'fullTime':\n options = { hour: 'numeric', minute: 'numeric' }\n break\n case 'fullTime12h':\n options = { hour: 'numeric', minute: 'numeric', hour12: true }\n break\n case 'fullTime24h':\n options = { hour: 'numeric', minute: 'numeric', hour12: false }\n break\n case 'fullDateTime':\n options = { year: 'numeric', month: 'short', day: 'numeric', hour: 'numeric', minute: 'numeric' }\n break\n case 'fullDateTime12h':\n options = { year: 'numeric', month: 'short', day: 'numeric', hour: 'numeric', minute: 'numeric', hour12: true }\n break\n case 'fullDateTime24h':\n options = { year: 'numeric', month: 'short', day: 'numeric', hour: 'numeric', minute: 'numeric', hour12: false }\n break\n case 'keyboardDate':\n options = { year: 'numeric', month: '2-digit', day: '2-digit' }\n break\n case 'keyboardDateTime':\n options = { year: 'numeric', month: '2-digit', day: '2-digit', hour: 'numeric', minute: 'numeric' }\n return new Intl.DateTimeFormat(locale, options).format(newDate).replace(/, /g, ' ')\n case 'keyboardDateTime12h':\n options = { year: 'numeric', month: '2-digit', day: '2-digit', hour: 'numeric', minute: 'numeric', hour12: true }\n return new Intl.DateTimeFormat(locale, options).format(newDate).replace(/, /g, ' ')\n case 'keyboardDateTime24h':\n options = { year: 'numeric', month: '2-digit', day: '2-digit', hour: 'numeric', minute: 'numeric', hour12: false }\n return new Intl.DateTimeFormat(locale, options).format(newDate).replace(/, /g, ' ')\n default:\n options = customFormat ?? { timeZone: 'UTC', timeZoneName: 'short' }\n }\n\n return new Intl.DateTimeFormat(locale, options).format(newDate)\n}\n\nfunction toISO (adapter: DateAdapter<any>, value: Date) {\n const date = adapter.toJsDate(value)\n const year = date.getFullYear()\n const month = padStart(String(date.getMonth() + 1), 2, '0')\n const day = padStart(String(date.getDate()), 2, '0')\n\n return `${year}-${month}-${day}`\n}\n\nfunction parseISO (value: string) {\n const [year, month, day] = value.split('-').map(Number)\n\n return new Date(year, month - 1, day)\n}\n\nfunction addMinutes (date: Date, amount: number) {\n const d = new Date(date)\n d.setMinutes(d.getMinutes() + amount)\n return d\n}\n\nfunction addHours (date: Date, amount: number) {\n const d = new Date(date)\n d.setHours(d.getHours() + amount)\n return d\n}\n\nfunction addDays (date: Date, amount: number) {\n const d = new Date(date)\n d.setDate(d.getDate() + amount)\n return d\n}\n\nfunction addWeeks (date: Date, amount: number) {\n const d = new Date(date)\n d.setDate(d.getDate() + (amount * 7))\n return d\n}\n\nfunction addMonths (date: Date, amount: number) {\n const d = new Date(date)\n d.setDate(1)\n d.setMonth(d.getMonth() + amount)\n return d\n}\n\nfunction getYear (date: Date) {\n return date.getFullYear()\n}\n\nfunction getMonth (date: Date) {\n return date.getMonth()\n}\n\nfunction getWeek (date: Date, locale: string, firstDayOfWeek?: number, firstWeekMinSize?: number) {\n const weekInfoFromLocale = weekInfo(locale)\n const weekStart = firstDayOfWeek ?? weekInfoFromLocale?.firstDay ?? 0\n const minWeekSize = firstWeekMinSize ?? weekInfoFromLocale?.firstWeekSize ?? 1\n function firstWeekSize (year: number) {\n const yearStart = new Date(year, 0, 1)\n return 7 - getDiff(yearStart, startOfWeek(yearStart, locale, weekStart), 'days')\n }\n\n let year = getYear(date)\n const currentWeekEnd = addDays(startOfWeek(date, locale, weekStart), 6)\n if (year < getYear(currentWeekEnd) && firstWeekSize(year + 1) >= minWeekSize) {\n year++\n }\n\n const yearStart = new Date(year, 0, 1)\n const size = firstWeekSize(year)\n const d1w1 = size >= minWeekSize\n ? addDays(yearStart, size - 7)\n : addDays(yearStart, size)\n\n return 1 + getDiff(endOfDay(date), startOfDay(d1w1), 'weeks')\n}\n\nfunction getDate (date: Date) {\n return date.getDate()\n}\n\nfunction getNextMonth (date: Date) {\n return new Date(date.getFullYear(), date.getMonth() + 1, 1)\n}\n\nfunction getPreviousMonth (date: Date) {\n return new Date(date.getFullYear(), date.getMonth() - 1, 1)\n}\n\nfunction getHours (date: Date) {\n return date.getHours()\n}\n\nfunction getMinutes (date: Date) {\n return date.getMinutes()\n}\n\nfunction startOfYear (date: Date) {\n return new Date(date.getFullYear(), 0, 1)\n}\nfunction endOfYear (date: Date) {\n return new Date(date.getFullYear(), 11, 31)\n}\n\nfunction isWithinRange (date: Date, range: [Date, Date]) {\n return isAfter(date, range[0]) && isBefore(date, range[1])\n}\n\nfunction isValid (date: any) {\n const d = new Date(date)\n\n return d instanceof Date && !isNaN(d.getTime())\n}\n\nfunction isAfter (date: Date, comparing: Date) {\n return date.getTime() > comparing.getTime()\n}\n\nfunction isAfterDay (date: Date, comparing: Date): boolean {\n return isAfter(startOfDay(date), startOfDay(comparing))\n}\n\nfunction isBefore (date: Date, comparing: Date) {\n return date.getTime() < comparing.getTime()\n}\n\nfunction isEqual (date: Date, comparing: Date) {\n return date.getTime() === comparing.getTime()\n}\n\nfunction isSameDay (date: Date, comparing: Date) {\n return date.getDate() === comparing.getDate() &&\n date.getMonth() === comparing.getMonth() &&\n date.getFullYear() === comparing.getFullYear()\n}\n\nfunction isSameMonth (date: Date, comparing: Date) {\n return date.getMonth() === comparing.getMonth() &&\n date.getFullYear() === comparing.getFullYear()\n}\n\nfunction isSameYear (date: Date, comparing: Date) {\n return date.getFullYear() === comparing.getFullYear()\n}\n\nfunction getDiff (date: Date, comparing: Date | string, unit?: string) {\n const d = new Date(date)\n const c = new Date(comparing)\n\n switch (unit) {\n case 'years':\n return d.getFullYear() - c.getFullYear()\n case 'quarters':\n return Math.floor((d.getMonth() - c.getMonth() + (d.getFullYear() - c.getFullYear()) * 12) / 4)\n case 'months':\n return d.getMonth() - c.getMonth() + (d.getFullYear() - c.getFullYear()) * 12\n case 'weeks':\n return Math.floor((d.getTime() - c.getTime()) / (1000 * 60 * 60 * 24 * 7))\n case 'days':\n return Math.floor((d.getTime() - c.getTime()) / (1000 * 60 * 60 * 24))\n case 'hours':\n return Math.floor((d.getTime() - c.getTime()) / (1000 * 60 * 60))\n case 'minutes':\n return Math.floor((d.getTime() - c.getTime()) / (1000 * 60))\n case 'seconds':\n return Math.floor((d.getTime() - c.getTime()) / 1000)\n default: {\n return d.getTime() - c.getTime()\n }\n }\n}\n\nfunction setHours (date: Date, count: number) {\n const d = new Date(date)\n d.setHours(count)\n return d\n}\n\nfunction setMinutes (date: Date, count: number) {\n const d = new Date(date)\n d.setMinutes(count)\n return d\n}\n\nfunction setMonth (date: Date, count: number) {\n const d = new Date(date)\n d.setMonth(count)\n return d\n}\n\nfunction setDate (date: Date, day: number) {\n const d = new Date(date)\n d.setDate(day)\n return d\n}\n\nfunction setYear (date: Date, year: number) {\n const d = new Date(date)\n d.setFullYear(year)\n return d\n}\n\nfunction startOfDay (date: Date) {\n return new Date(date.getFullYear(), date.getMonth(), date.getDate(), 0, 0, 0, 0)\n}\n\nfunction endOfDay (date: Date) {\n return new Date(date.getFullYear(), date.getMonth(), date.getDate(), 23, 59, 59, 999)\n}\n\nexport class VuetifyDateAdapter implements DateAdapter<Date> {\n locale: string\n formats?: Record<string, CustomDateFormat>\n\n constructor (options: { locale: string, formats?: Record<string, CustomDateFormat> }) {\n this.locale = options.locale\n this.formats = options.formats\n }\n\n date (value?: any) {\n return date(value)\n }\n\n toJsDate (date: Date) {\n return date\n }\n\n toISO (date: Date): string {\n return toISO(this, date)\n }\n\n parseISO (date: string) {\n return parseISO(date)\n }\n\n addMinutes (date: Date, amount: number) {\n return addMinutes(date, amount)\n }\n\n addHours (date: Date, amount: number) {\n return addHours(date, amount)\n }\n\n addDays (date: Date, amount: number) {\n return addDays(date, amount)\n }\n\n addWeeks (date: Date, amount: number) {\n return addWeeks(date, amount)\n }\n\n addMonths (date: Date, amount: number) {\n return addMonths(date, amount)\n }\n\n getWeekArray (date: Date, firstDayOfWeek?: number | string) {\n const firstDay = firstDayOfWeek !== undefined ? Number(firstDayOfWeek) : undefined\n return getWeekArray(date, this.locale, firstDay)\n }\n\n startOfWeek (date: Date, firstDayOfWeek?: number | string): Date {\n const firstDay = firstDayOfWeek !== undefined ? Number(firstDayOfWeek) : undefined\n return startOfWeek(date, this.locale, firstDay)\n }\n\n endOfWeek (date: Date): Date {\n return endOfWeek(date, this.locale)\n }\n\n startOfMonth (date: Date) {\n return startOfMonth(date)\n }\n\n endOfMonth (date: Date) {\n return endOfMonth(date)\n }\n\n format (date: Date, formatString: string) {\n return format(date, formatString, this.locale, this.formats)\n }\n\n isEqual (date: Date, comparing: Date) {\n return isEqual(date, comparing)\n }\n\n isValid (date: any) {\n return isValid(date)\n }\n\n isWithinRange (date: Date, range: [Date, Date]) {\n return isWithinRange(date, range)\n }\n\n isAfter (date: Date, comparing: Date) {\n return isAfter(date, comparing)\n }\n\n isAfterDay (date: Date, comparing: Date) {\n return isAfterDay(date, comparing)\n }\n\n isBefore (date: Date, comparing: Date) {\n return !isAfter(date, comparing) && !isEqual(date, comparing)\n }\n\n isSameDay (date: Date, comparing: Date) {\n return isSameDay(date, comparing)\n }\n\n isSameMonth (date: Date, comparing: Date) {\n return isSameMonth(date, comparing)\n }\n\n isSameYear (date: Date, comparing: Date) {\n return isSameYear(date, comparing)\n }\n\n setMinutes (date: Date, count: number) {\n return setMinutes(date, count)\n }\n\n setHours (date: Date, count: number) {\n return setHours(date, count)\n }\n\n setMonth (date: Date, count: number) {\n return setMonth(date, count)\n }\n\n setDate (date: Date, day: number): Date {\n return setDate(date, day)\n }\n\n setYear (date: Date, year: number) {\n return setYear(date, year)\n }\n\n getDiff (date: Date, comparing: Date | string, unit?: string) {\n return getDiff(date, comparing, unit)\n }\n\n getWeekdays (firstDayOfWeek?: number | string, weekdayFormat?: 'long' | 'short' | 'narrow') {\n const firstDay = firstDayOfWeek !== undefined ? Number(firstDayOfWeek) : undefined\n return getWeekdays(this.locale, firstDay, weekdayFormat)\n }\n\n getYear (date: Date) {\n return getYear(date)\n }\n\n getMonth (date: Date) {\n return getMonth(date)\n }\n\n getWeek (date: Date, firstDayOfWeek?: number | string, firstWeekMinSize?: number) {\n const firstDay = firstDayOfWeek !== undefined ? Number(firstDayOfWeek) : undefined\n return getWeek(date, this.locale, firstDay, firstWeekMinSize)\n }\n\n getDate (date: Date) {\n return getDate(date)\n }\n\n getNextMonth (date: Date) {\n return getNextMonth(date)\n }\n\n getPreviousMonth (date: Date) {\n return getPreviousMonth(date)\n }\n\n getHours (date: Date) {\n return getHours(date)\n }\n\n getMinutes (date: Date) {\n return getMinutes(date)\n }\n\n startOfDay (date: Date) {\n return startOfDay(date)\n }\n\n endOfDay (date: Date) {\n return endOfDay(date)\n }\n\n startOfYear (date: Date) {\n return startOfYear(date)\n }\n\n endOfYear (date: Date) {\n return endOfYear(date)\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"vuetify.js","names":["createRange","padStart","weekInfo","locale","code","slice","toUpperCase","firstDay","firstWeekSize","includes","getWeekArray","date","firstDayOfWeek","weeks","currentWeek","firstDayOfMonth","startOfMonth","lastDayOfMonth","endOfMonth","first","firstDayWeekIndex","getDay","lastDayWeekIndex","i","adjacentDay","Date","setDate","getDate","push","day","getFullYear","getMonth","length","startOfWeek","d","endOfWeek","lastDay","parseLocalDate","value","parts","split","map","Number","_YYYMMDD","parsed","test","parse","isNaN","sundayJanuarySecond2000","getWeekdays","weekdayFormat","daysFromSunday","weekday","Intl","DateTimeFormat","format","formatString","formats","newDate","customFormat","options","year","month","NumberFormat","hour","hour12","minute","second","replace","timeZone","timeZoneName","toISO","adapter","toJsDate","String","parseISO","addMinutes","amount","setMinutes","getMinutes","addHours","setHours","getHours","addDays","addWeeks","addMonths","setMonth","getYear","getWeek","firstWeekMinSize","weekInfoFromLocale","weekStart","minWeekSize","yearStart","getDiff","currentWeekEnd","size","d1w1","endOfDay","startOfDay","getNextMonth","getPreviousMonth","startOfYear","endOfYear","isWithinRange","range","isAfter","isBefore","isValid","getTime","comparing","isAfterDay","isEqual","isSameDay","isSameMonth","isSameYear","unit","c","Math","floor","count","setYear","setFullYear","VuetifyDateAdapter","constructor","undefined"],"sources":["../../../../src/composables/date/adapters/vuetify.ts"],"sourcesContent":["// Utilities\nimport { createRange, padStart } from '@/util'\n\n// Types\nimport type { DateAdapter } from '../DateAdapter'\n\ntype CustomDateFormat = Intl.DateTimeFormatOptions | ((date: Date, formatString: string, locale: string) => string)\n\nfunction weekInfo (locale: string): { firstDay: number, firstWeekSize: number } | null {\n // https://simplelocalize.io/data/locales/\n // then `new Intl.Locale(...).getWeekInfo()`\n const code = locale.slice(-2).toUpperCase()\n switch (true) {\n case locale === 'GB-alt-variant': {\n return { firstDay: 0, firstWeekSize: 4 }\n }\n case locale === '001': {\n return { firstDay: 1, firstWeekSize: 1 }\n }\n case `AG AS BD BR BS BT BW BZ CA CO DM DO ET GT GU HK HN ID IL IN JM JP KE\n KH KR LA MH MM MO MT MX MZ NI NP PA PE PH PK PR PY SA SG SV TH TT TW UM US\n VE VI WS YE ZA ZW`.includes(code): {\n return { firstDay: 0, firstWeekSize: 1 }\n }\n case `AI AL AM AR AU AZ BA BM BN BY CL CM CN CR CY EC GE HR KG KZ LB LK LV\n MD ME MK MN MY NZ RO RS SI TJ TM TR UA UY UZ VN XK`.includes(code): {\n return { firstDay: 1, firstWeekSize: 1 }\n }\n case `AD AN AT AX BE BG CH CZ DE DK EE ES FI FJ FO FR GB GF GP GR HU IE IS\n IT LI LT LU MC MQ NL NO PL RE RU SE SK SM VA`.includes(code): {\n return { firstDay: 1, firstWeekSize: 4 }\n }\n case `AE AF BH DJ DZ EG IQ IR JO KW LY OM QA SD SY`.includes(code): {\n return { firstDay: 6, firstWeekSize: 1 }\n }\n case code === 'MV': {\n return { firstDay: 5, firstWeekSize: 1 }\n }\n case code === 'PT': {\n return { firstDay: 0, firstWeekSize: 4 }\n }\n default: return null\n }\n}\n\nfunction getWeekArray (date: Date, locale: string, firstDayOfWeek?: number) {\n const weeks = []\n let currentWeek = []\n const firstDayOfMonth = startOfMonth(date)\n const lastDayOfMonth = endOfMonth(date)\n const first = firstDayOfWeek ?? weekInfo(locale)?.firstDay ?? 0\n const firstDayWeekIndex = (firstDayOfMonth.getDay() - first + 7) % 7\n const lastDayWeekIndex = (lastDayOfMonth.getDay() - first + 7) % 7\n\n for (let i = 0; i < firstDayWeekIndex; i++) {\n const adjacentDay = new Date(firstDayOfMonth)\n adjacentDay.setDate(adjacentDay.getDate() - (firstDayWeekIndex - i))\n currentWeek.push(adjacentDay)\n }\n\n for (let i = 1; i <= lastDayOfMonth.getDate(); i++) {\n const day = new Date(date.getFullYear(), date.getMonth(), i)\n\n // Add the day to the current week\n currentWeek.push(day)\n\n // If the current week has 7 days, add it to the weeks array and start a new week\n if (currentWeek.length === 7) {\n weeks.push(currentWeek)\n currentWeek = []\n }\n }\n\n for (let i = 1; i < 7 - lastDayWeekIndex; i++) {\n const adjacentDay = new Date(lastDayOfMonth)\n adjacentDay.setDate(adjacentDay.getDate() + i)\n currentWeek.push(adjacentDay)\n }\n\n if (currentWeek.length > 0) {\n weeks.push(currentWeek)\n }\n\n return weeks\n}\n\nfunction startOfWeek (date: Date, locale: string, firstDayOfWeek?: number) {\n const day = firstDayOfWeek ?? weekInfo(locale)?.firstDay ?? 0\n\n const d = new Date(date)\n while (d.getDay() !== day) {\n d.setDate(d.getDate() - 1)\n }\n return d\n}\n\nfunction endOfWeek (date: Date, locale: string) {\n const d = new Date(date)\n const lastDay = ((weekInfo(locale)?.firstDay ?? 0) + 6) % 7\n while (d.getDay() !== lastDay) {\n d.setDate(d.getDate() + 1)\n }\n return d\n}\n\nfunction startOfMonth (date: Date) {\n return new Date(date.getFullYear(), date.getMonth(), 1)\n}\n\nfunction endOfMonth (date: Date) {\n return new Date(date.getFullYear(), date.getMonth() + 1, 0)\n}\n\nfunction parseLocalDate (value: string): Date {\n const parts = value.split('-').map(Number)\n\n // new Date() uses local time zone when passing individual date component values\n return new Date(parts[0], parts[1] - 1, parts[2])\n}\n\nconst _YYYMMDD = /^([12]\\d{3}-([1-9]|0[1-9]|1[0-2])-([1-9]|0[1-9]|[12]\\d|3[01]))$/\n\nfunction date (value?: any): Date | null {\n if (value == null) return new Date()\n\n if (value instanceof Date) return value\n\n if (typeof value === 'string') {\n let parsed\n\n if (_YYYMMDD.test(value)) {\n return parseLocalDate(value)\n } else {\n parsed = Date.parse(value)\n }\n\n if (!isNaN(parsed)) return new Date(parsed)\n }\n\n return null\n}\n\nconst sundayJanuarySecond2000 = new Date(2000, 0, 2)\n\nfunction getWeekdays (locale: string, firstDayOfWeek?: number, weekdayFormat?: 'long' | 'short' | 'narrow') {\n const daysFromSunday = firstDayOfWeek ?? weekInfo(locale)?.firstDay ?? 0\n\n return createRange(7).map(i => {\n const weekday = new Date(sundayJanuarySecond2000)\n weekday.setDate(sundayJanuarySecond2000.getDate() + daysFromSunday + i)\n return new Intl.DateTimeFormat(locale, { weekday: weekdayFormat ?? 'narrow' }).format(weekday)\n })\n}\n\nfunction format (\n value: Date,\n formatString: string,\n locale: string,\n formats?: Record<string, CustomDateFormat>\n): string {\n const newDate = date(value) ?? new Date()\n const customFormat = formats?.[formatString]\n\n if (typeof customFormat === 'function') {\n return customFormat(newDate, formatString, locale)\n }\n\n let options: Intl.DateTimeFormatOptions = {}\n switch (formatString) {\n case 'fullDate':\n options = { year: 'numeric', month: 'short', day: 'numeric' }\n break\n case 'fullDateWithWeekday':\n options = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' }\n break\n case 'normalDate':\n const day = newDate.getDate()\n const month = new Intl.DateTimeFormat(locale, { month: 'long' }).format(newDate)\n return `${day} ${month}`\n case 'normalDateWithWeekday':\n options = { weekday: 'short', day: 'numeric', month: 'short' }\n break\n case 'shortDate':\n options = { month: 'short', day: 'numeric' }\n break\n case 'year':\n options = { year: 'numeric' }\n break\n case 'month':\n options = { month: 'long' }\n break\n case 'monthShort':\n options = { month: 'short' }\n break\n case 'monthAndYear':\n options = { month: 'long', year: 'numeric' }\n break\n case 'monthAndDate':\n options = { month: 'long', day: 'numeric' }\n break\n case 'weekday':\n options = { weekday: 'long' }\n break\n case 'weekdayShort':\n options = { weekday: 'short' }\n break\n case 'dayOfMonth':\n return new Intl.NumberFormat(locale).format(newDate.getDate())\n case 'hours12h':\n options = { hour: 'numeric', hour12: true }\n break\n case 'hours24h':\n options = { hour: 'numeric', hour12: false }\n break\n case 'minutes':\n options = { minute: 'numeric' }\n break\n case 'seconds':\n options = { second: 'numeric' }\n break\n case 'fullTime':\n options = { hour: 'numeric', minute: 'numeric' }\n break\n case 'fullTime12h':\n options = { hour: 'numeric', minute: 'numeric', hour12: true }\n break\n case 'fullTime24h':\n options = { hour: 'numeric', minute: 'numeric', hour12: false }\n break\n case 'fullDateTime':\n options = { year: 'numeric', month: 'short', day: 'numeric', hour: 'numeric', minute: 'numeric' }\n break\n case 'fullDateTime12h':\n options = { year: 'numeric', month: 'short', day: 'numeric', hour: 'numeric', minute: 'numeric', hour12: true }\n break\n case 'fullDateTime24h':\n options = { year: 'numeric', month: 'short', day: 'numeric', hour: 'numeric', minute: 'numeric', hour12: false }\n break\n case 'keyboardDate':\n options = { year: 'numeric', month: '2-digit', day: '2-digit' }\n break\n case 'keyboardDateTime':\n options = { year: 'numeric', month: '2-digit', day: '2-digit', hour: 'numeric', minute: 'numeric' }\n return new Intl.DateTimeFormat(locale, options).format(newDate).replace(/, /g, ' ')\n case 'keyboardDateTime12h':\n options = { year: 'numeric', month: '2-digit', day: '2-digit', hour: 'numeric', minute: 'numeric', hour12: true }\n return new Intl.DateTimeFormat(locale, options).format(newDate).replace(/, /g, ' ')\n case 'keyboardDateTime24h':\n options = { year: 'numeric', month: '2-digit', day: '2-digit', hour: 'numeric', minute: 'numeric', hour12: false }\n return new Intl.DateTimeFormat(locale, options).format(newDate).replace(/, /g, ' ')\n default:\n options = customFormat ?? { timeZone: 'UTC', timeZoneName: 'short' }\n }\n\n return new Intl.DateTimeFormat(locale, options).format(newDate)\n}\n\nfunction toISO (adapter: DateAdapter<any>, value: Date) {\n const date = adapter.toJsDate(value)\n const year = date.getFullYear()\n const month = padStart(String(date.getMonth() + 1), 2, '0')\n const day = padStart(String(date.getDate()), 2, '0')\n\n return `${year}-${month}-${day}`\n}\n\nfunction parseISO (value: string) {\n const [year, month, day] = value.split('-').map(Number)\n\n return new Date(year, month - 1, day)\n}\n\nfunction addMinutes (date: Date, amount: number) {\n const d = new Date(date)\n d.setMinutes(d.getMinutes() + amount)\n return d\n}\n\nfunction addHours (date: Date, amount: number) {\n const d = new Date(date)\n d.setHours(d.getHours() + amount)\n return d\n}\n\nfunction addDays (date: Date, amount: number) {\n const d = new Date(date)\n d.setDate(d.getDate() + amount)\n return d\n}\n\nfunction addWeeks (date: Date, amount: number) {\n const d = new Date(date)\n d.setDate(d.getDate() + (amount * 7))\n return d\n}\n\nfunction addMonths (date: Date, amount: number) {\n const d = new Date(date)\n d.setDate(1)\n d.setMonth(d.getMonth() + amount)\n return d\n}\n\nfunction getYear (date: Date) {\n return date.getFullYear()\n}\n\nfunction getMonth (date: Date) {\n return date.getMonth()\n}\n\nfunction getWeek (date: Date, locale: string, firstDayOfWeek?: number, firstWeekMinSize?: number) {\n const weekInfoFromLocale = weekInfo(locale)\n const weekStart = firstDayOfWeek ?? weekInfoFromLocale?.firstDay ?? 0\n const minWeekSize = firstWeekMinSize ?? weekInfoFromLocale?.firstWeekSize ?? 1\n function firstWeekSize (year: number) {\n const yearStart = new Date(year, 0, 1)\n return 7 - getDiff(yearStart, startOfWeek(yearStart, locale, weekStart), 'days')\n }\n\n let year = getYear(date)\n const currentWeekEnd = addDays(startOfWeek(date, locale, weekStart), 6)\n if (year < getYear(currentWeekEnd) && firstWeekSize(year + 1) >= minWeekSize) {\n year++\n }\n\n const yearStart = new Date(year, 0, 1)\n const size = firstWeekSize(year)\n const d1w1 = size >= minWeekSize\n ? addDays(yearStart, size - 7)\n : addDays(yearStart, size)\n\n return 1 + getDiff(endOfDay(date), startOfDay(d1w1), 'weeks')\n}\n\nfunction getDate (date: Date) {\n return date.getDate()\n}\n\nfunction getNextMonth (date: Date) {\n return new Date(date.getFullYear(), date.getMonth() + 1, 1)\n}\n\nfunction getPreviousMonth (date: Date) {\n return new Date(date.getFullYear(), date.getMonth() - 1, 1)\n}\n\nfunction getHours (date: Date) {\n return date.getHours()\n}\n\nfunction getMinutes (date: Date) {\n return date.getMinutes()\n}\n\nfunction startOfYear (date: Date) {\n return new Date(date.getFullYear(), 0, 1)\n}\nfunction endOfYear (date: Date) {\n return new Date(date.getFullYear(), 11, 31)\n}\n\nfunction isWithinRange (date: Date, range: [Date, Date]) {\n return isAfter(date, range[0]) && isBefore(date, range[1])\n}\n\nfunction isValid (date: any) {\n const d = new Date(date)\n\n return d instanceof Date && !isNaN(d.getTime())\n}\n\nfunction isAfter (date: Date, comparing: Date) {\n return date.getTime() > comparing.getTime()\n}\n\nfunction isAfterDay (date: Date, comparing: Date): boolean {\n return isAfter(startOfDay(date), startOfDay(comparing))\n}\n\nfunction isBefore (date: Date, comparing: Date) {\n return date.getTime() < comparing.getTime()\n}\n\nfunction isEqual (date: Date, comparing: Date) {\n return date.getTime() === comparing.getTime()\n}\n\nfunction isSameDay (date: Date, comparing: Date) {\n return date.getDate() === comparing.getDate() &&\n date.getMonth() === comparing.getMonth() &&\n date.getFullYear() === comparing.getFullYear()\n}\n\nfunction isSameMonth (date: Date, comparing: Date) {\n return date.getMonth() === comparing.getMonth() &&\n date.getFullYear() === comparing.getFullYear()\n}\n\nfunction isSameYear (date: Date, comparing: Date) {\n return date.getFullYear() === comparing.getFullYear()\n}\n\nfunction getDiff (date: Date, comparing: Date | string, unit?: string) {\n const d = new Date(date)\n const c = new Date(comparing)\n\n switch (unit) {\n case 'years':\n return d.getFullYear() - c.getFullYear()\n case 'quarters':\n return Math.floor((d.getMonth() - c.getMonth() + (d.getFullYear() - c.getFullYear()) * 12) / 4)\n case 'months':\n return d.getMonth() - c.getMonth() + (d.getFullYear() - c.getFullYear()) * 12\n case 'weeks':\n return Math.floor((d.getTime() - c.getTime()) / (1000 * 60 * 60 * 24 * 7))\n case 'days':\n return Math.floor((d.getTime() - c.getTime()) / (1000 * 60 * 60 * 24))\n case 'hours':\n return Math.floor((d.getTime() - c.getTime()) / (1000 * 60 * 60))\n case 'minutes':\n return Math.floor((d.getTime() - c.getTime()) / (1000 * 60))\n case 'seconds':\n return Math.floor((d.getTime() - c.getTime()) / 1000)\n default: {\n return d.getTime() - c.getTime()\n }\n }\n}\n\nfunction setHours (date: Date, count: number) {\n const d = new Date(date)\n d.setHours(count)\n return d\n}\n\nfunction setMinutes (date: Date, count: number) {\n const d = new Date(date)\n d.setMinutes(count)\n return d\n}\n\nfunction setMonth (date: Date, count: number) {\n const d = new Date(date)\n d.setMonth(count)\n return d\n}\n\nfunction setDate (date: Date, day: number) {\n const d = new Date(date)\n d.setDate(day)\n return d\n}\n\nfunction setYear (date: Date, year: number) {\n const d = new Date(date)\n d.setFullYear(year)\n return d\n}\n\nfunction startOfDay (date: Date) {\n return new Date(date.getFullYear(), date.getMonth(), date.getDate(), 0, 0, 0, 0)\n}\n\nfunction endOfDay (date: Date) {\n return new Date(date.getFullYear(), date.getMonth(), date.getDate(), 23, 59, 59, 999)\n}\n\nexport class VuetifyDateAdapter implements DateAdapter<Date> {\n locale: string\n formats?: Record<string, CustomDateFormat>\n\n constructor (options: { locale: string, formats?: Record<string, CustomDateFormat> }) {\n this.locale = options.locale\n this.formats = options.formats\n }\n\n date (value?: any) {\n return date(value)\n }\n\n toJsDate (date: Date) {\n return date\n }\n\n toISO (date: Date): string {\n return toISO(this, date)\n }\n\n parseISO (date: string) {\n return parseISO(date)\n }\n\n addMinutes (date: Date, amount: number) {\n return addMinutes(date, amount)\n }\n\n addHours (date: Date, amount: number) {\n return addHours(date, amount)\n }\n\n addDays (date: Date, amount: number) {\n return addDays(date, amount)\n }\n\n addWeeks (date: Date, amount: number) {\n return addWeeks(date, amount)\n }\n\n addMonths (date: Date, amount: number) {\n return addMonths(date, amount)\n }\n\n getWeekArray (date: Date, firstDayOfWeek?: number | string) {\n const firstDay = firstDayOfWeek !== undefined ? Number(firstDayOfWeek) : undefined\n return getWeekArray(date, this.locale, firstDay)\n }\n\n startOfWeek (date: Date, firstDayOfWeek?: number | string): Date {\n const firstDay = firstDayOfWeek !== undefined ? Number(firstDayOfWeek) : undefined\n return startOfWeek(date, this.locale, firstDay)\n }\n\n endOfWeek (date: Date): Date {\n return endOfWeek(date, this.locale)\n }\n\n startOfMonth (date: Date) {\n return startOfMonth(date)\n }\n\n endOfMonth (date: Date) {\n return endOfMonth(date)\n }\n\n format (date: Date, formatString: string) {\n return format(date, formatString, this.locale, this.formats)\n }\n\n isEqual (date: Date, comparing: Date) {\n return isEqual(date, comparing)\n }\n\n isValid (date: any) {\n return isValid(date)\n }\n\n isWithinRange (date: Date, range: [Date, Date]) {\n return isWithinRange(date, range)\n }\n\n isAfter (date: Date, comparing: Date) {\n return isAfter(date, comparing)\n }\n\n isAfterDay (date: Date, comparing: Date) {\n return isAfterDay(date, comparing)\n }\n\n isBefore (date: Date, comparing: Date) {\n return !isAfter(date, comparing) && !isEqual(date, comparing)\n }\n\n isSameDay (date: Date, comparing: Date) {\n return isSameDay(date, comparing)\n }\n\n isSameMonth (date: Date, comparing: Date) {\n return isSameMonth(date, comparing)\n }\n\n isSameYear (date: Date, comparing: Date) {\n return isSameYear(date, comparing)\n }\n\n setMinutes (date: Date, count: number) {\n return setMinutes(date, count)\n }\n\n setHours (date: Date, count: number) {\n return setHours(date, count)\n }\n\n setMonth (date: Date, count: number) {\n return setMonth(date, count)\n }\n\n setDate (date: Date, day: number): Date {\n return setDate(date, day)\n }\n\n setYear (date: Date, year: number) {\n return setYear(date, year)\n }\n\n getDiff (date: Date, comparing: Date | string, unit?: string) {\n return getDiff(date, comparing, unit)\n }\n\n getWeekdays (firstDayOfWeek?: number | string, weekdayFormat?: 'long' | 'short' | 'narrow') {\n const firstDay = firstDayOfWeek !== undefined ? Number(firstDayOfWeek) : undefined\n return getWeekdays(this.locale, firstDay, weekdayFormat)\n }\n\n getYear (date: Date) {\n return getYear(date)\n }\n\n getMonth (date: Date) {\n return getMonth(date)\n }\n\n getWeek (date: Date, firstDayOfWeek?: number | string, firstWeekMinSize?: number) {\n const firstDay = firstDayOfWeek !== undefined ? Number(firstDayOfWeek) : undefined\n return getWeek(date, this.locale, firstDay, firstWeekMinSize)\n }\n\n getDate (date: Date) {\n return getDate(date)\n }\n\n getNextMonth (date: Date) {\n return getNextMonth(date)\n }\n\n getPreviousMonth (date: Date) {\n return getPreviousMonth(date)\n }\n\n getHours (date: Date) {\n return getHours(date)\n }\n\n getMinutes (date: Date) {\n return getMinutes(date)\n }\n\n startOfDay (date: Date) {\n return startOfDay(date)\n }\n\n endOfDay (date: Date) {\n return endOfDay(date)\n }\n\n startOfYear (date: Date) {\n return startOfYear(date)\n }\n\n endOfYear (date: Date) {\n return endOfYear(date)\n }\n}\n"],"mappings":"AAAA;AAAA,SACSA,WAAW,EAAEC,QAAQ,kCAE9B;AAKA,SAASC,QAAQA,CAAEC,MAAc,EAAsD;EACrF;EACA;EACA,MAAMC,IAAI,GAAGD,MAAM,CAACE,KAAK,CAAC,CAAC,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;EAC3C,QAAQ,IAAI;IACV,KAAKH,MAAM,KAAK,gBAAgB;MAAE;QAChC,OAAO;UAAEI,QAAQ,EAAE,CAAC;UAAEC,aAAa,EAAE;QAAE,CAAC;MAC1C;IACA,KAAKL,MAAM,KAAK,KAAK;MAAE;QACrB,OAAO;UAAEI,QAAQ,EAAE,CAAC;UAAEC,aAAa,EAAE;QAAE,CAAC;MAC1C;IACA,KAAK;AACT;AACA,sBAAsB,CAACC,QAAQ,CAACL,IAAI,CAAC;MAAE;QACjC,OAAO;UAAEG,QAAQ,EAAE,CAAC;UAAEC,aAAa,EAAE;QAAE,CAAC;MAC1C;IACA,KAAK;AACT,uDAAuD,CAACC,QAAQ,CAACL,IAAI,CAAC;MAAE;QAClE,OAAO;UAAEG,QAAQ,EAAE,CAAC;UAAEC,aAAa,EAAE;QAAE,CAAC;MAC1C;IACA,KAAK;AACT,iDAAiD,CAACC,QAAQ,CAACL,IAAI,CAAC;MAAE;QAC5D,OAAO;UAAEG,QAAQ,EAAE,CAAC;UAAEC,aAAa,EAAE;QAAE,CAAC;MAC1C;IACA,KAAK,8CAA8C,CAACC,QAAQ,CAACL,IAAI,CAAC;MAAE;QAClE,OAAO;UAAEG,QAAQ,EAAE,CAAC;UAAEC,aAAa,EAAE;QAAE,CAAC;MAC1C;IACA,KAAKJ,IAAI,KAAK,IAAI;MAAE;QAClB,OAAO;UAAEG,QAAQ,EAAE,CAAC;UAAEC,aAAa,EAAE;QAAE,CAAC;MAC1C;IACA,KAAKJ,IAAI,KAAK,IAAI;MAAE;QAClB,OAAO;UAAEG,QAAQ,EAAE,CAAC;UAAEC,aAAa,EAAE;QAAE,CAAC;MAC1C;IACA;MAAS,OAAO,IAAI;EACtB;AACF;AAEA,SAASE,YAAYA,CAAEC,IAAU,EAAER,MAAc,EAAES,cAAuB,EAAE;EAC1E,MAAMC,KAAK,GAAG,EAAE;EAChB,IAAIC,WAAW,GAAG,EAAE;EACpB,MAAMC,eAAe,GAAGC,YAAY,CAACL,IAAI,CAAC;EAC1C,MAAMM,cAAc,GAAGC,UAAU,CAACP,IAAI,CAAC;EACvC,MAAMQ,KAAK,GAAGP,cAAc,IAAIV,QAAQ,CAACC,MAAM,CAAC,EAAEI,QAAQ,IAAI,CAAC;EAC/D,MAAMa,iBAAiB,GAAG,CAACL,eAAe,CAACM,MAAM,CAAC,CAAC,GAAGF,KAAK,GAAG,CAAC,IAAI,CAAC;EACpE,MAAMG,gBAAgB,GAAG,CAACL,cAAc,CAACI,MAAM,CAAC,CAAC,GAAGF,KAAK,GAAG,CAAC,IAAI,CAAC;EAElE,KAAK,IAAII,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,iBAAiB,EAAEG,CAAC,EAAE,EAAE;IAC1C,MAAMC,WAAW,GAAG,IAAIC,IAAI,CAACV,eAAe,CAAC;IAC7CS,WAAW,CAACE,OAAO,CAACF,WAAW,CAACG,OAAO,CAAC,CAAC,IAAIP,iBAAiB,GAAGG,CAAC,CAAC,CAAC;IACpET,WAAW,CAACc,IAAI,CAACJ,WAAW,CAAC;EAC/B;EAEA,KAAK,IAAID,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAIN,cAAc,CAACU,OAAO,CAAC,CAAC,EAAEJ,CAAC,EAAE,EAAE;IAClD,MAAMM,GAAG,GAAG,IAAIJ,IAAI,CAACd,IAAI,CAACmB,WAAW,CAAC,CAAC,EAAEnB,IAAI,CAACoB,QAAQ,CAAC,CAAC,EAAER,CAAC,CAAC;;IAE5D;IACAT,WAAW,CAACc,IAAI,CAACC,GAAG,CAAC;;IAErB;IACA,IAAIf,WAAW,CAACkB,MAAM,KAAK,CAAC,EAAE;MAC5BnB,KAAK,CAACe,IAAI,CAACd,WAAW,CAAC;MACvBA,WAAW,GAAG,EAAE;IAClB;EACF;EAEA,KAAK,IAAIS,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,CAAC,GAAGD,gBAAgB,EAAEC,CAAC,EAAE,EAAE;IAC7C,MAAMC,WAAW,GAAG,IAAIC,IAAI,CAACR,cAAc,CAAC;IAC5CO,WAAW,CAACE,OAAO,CAACF,WAAW,CAACG,OAAO,CAAC,CAAC,GAAGJ,CAAC,CAAC;IAC9CT,WAAW,CAACc,IAAI,CAACJ,WAAW,CAAC;EAC/B;EAEA,IAAIV,WAAW,CAACkB,MAAM,GAAG,CAAC,EAAE;IAC1BnB,KAAK,CAACe,IAAI,CAACd,WAAW,CAAC;EACzB;EAEA,OAAOD,KAAK;AACd;AAEA,SAASoB,WAAWA,CAAEtB,IAAU,EAAER,MAAc,EAAES,cAAuB,EAAE;EACzE,MAAMiB,GAAG,GAAGjB,cAAc,IAAIV,QAAQ,CAACC,MAAM,CAAC,EAAEI,QAAQ,IAAI,CAAC;EAE7D,MAAM2B,CAAC,GAAG,IAAIT,IAAI,CAACd,IAAI,CAAC;EACxB,OAAOuB,CAAC,CAACb,MAAM,CAAC,CAAC,KAAKQ,GAAG,EAAE;IACzBK,CAAC,CAACR,OAAO,CAACQ,CAAC,CAACP,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC;EAC5B;EACA,OAAOO,CAAC;AACV;AAEA,SAASC,SAASA,CAAExB,IAAU,EAAER,MAAc,EAAE;EAC9C,MAAM+B,CAAC,GAAG,IAAIT,IAAI,CAACd,IAAI,CAAC;EACxB,MAAMyB,OAAO,GAAG,CAAC,CAAClC,QAAQ,CAACC,MAAM,CAAC,EAAEI,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;EAC3D,OAAO2B,CAAC,CAACb,MAAM,CAAC,CAAC,KAAKe,OAAO,EAAE;IAC7BF,CAAC,CAACR,OAAO,CAACQ,CAAC,CAACP,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC;EAC5B;EACA,OAAOO,CAAC;AACV;AAEA,SAASlB,YAAYA,CAAEL,IAAU,EAAE;EACjC,OAAO,IAAIc,IAAI,CAACd,IAAI,CAACmB,WAAW,CAAC,CAAC,EAAEnB,IAAI,CAACoB,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;AACzD;AAEA,SAASb,UAAUA,CAAEP,IAAU,EAAE;EAC/B,OAAO,IAAIc,IAAI,CAACd,IAAI,CAACmB,WAAW,CAAC,CAAC,EAAEnB,IAAI,CAACoB,QAAQ,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAC7D;AAEA,SAASM,cAAcA,CAAEC,KAAa,EAAQ;EAC5C,MAAMC,KAAK,GAAGD,KAAK,CAACE,KAAK,CAAC,GAAG,CAAC,CAACC,GAAG,CAACC,MAAM,CAAC;;EAE1C;EACA,OAAO,IAAIjB,IAAI,CAACc,KAAK,CAAC,CAAC,CAAC,EAAEA,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,EAAEA,KAAK,CAAC,CAAC,CAAC,CAAC;AACnD;AAEA,MAAMI,QAAQ,GAAG,iEAAiE;AAElF,SAAShC,IAAIA,CAAE2B,KAAW,EAAe;EACvC,IAAIA,KAAK,IAAI,IAAI,EAAE,OAAO,IAAIb,IAAI,CAAC,CAAC;EAEpC,IAAIa,KAAK,YAAYb,IAAI,EAAE,OAAOa,KAAK;EAEvC,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC7B,IAAIM,MAAM;IAEV,IAAID,QAAQ,CAACE,IAAI,CAACP,KAAK,CAAC,EAAE;MACxB,OAAOD,cAAc,CAACC,KAAK,CAAC;IAC9B,CAAC,MAAM;MACLM,MAAM,GAAGnB,IAAI,CAACqB,KAAK,CAACR,KAAK,CAAC;IAC5B;IAEA,IAAI,CAACS,KAAK,CAACH,MAAM,CAAC,EAAE,OAAO,IAAInB,IAAI,CAACmB,MAAM,CAAC;EAC7C;EAEA,OAAO,IAAI;AACb;AAEA,MAAMI,uBAAuB,GAAG,IAAIvB,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;AAEpD,SAASwB,WAAWA,CAAE9C,MAAc,EAAES,cAAuB,EAAEsC,aAA2C,EAAE;EAC1G,MAAMC,cAAc,GAAGvC,cAAc,IAAIV,QAAQ,CAACC,MAAM,CAAC,EAAEI,QAAQ,IAAI,CAAC;EAExE,OAAOP,WAAW,CAAC,CAAC,CAAC,CAACyC,GAAG,CAAClB,CAAC,IAAI;IAC7B,MAAM6B,OAAO,GAAG,IAAI3B,IAAI,CAACuB,uBAAuB,CAAC;IACjDI,OAAO,CAAC1B,OAAO,CAACsB,uBAAuB,CAACrB,OAAO,CAAC,CAAC,GAAGwB,cAAc,GAAG5B,CAAC,CAAC;IACvE,OAAO,IAAI8B,IAAI,CAACC,cAAc,CAACnD,MAAM,EAAE;MAAEiD,OAAO,EAAEF,aAAa,IAAI;IAAS,CAAC,CAAC,CAACK,MAAM,CAACH,OAAO,CAAC;EAChG,CAAC,CAAC;AACJ;AAEA,SAASG,MAAMA,CACbjB,KAAW,EACXkB,YAAoB,EACpBrD,MAAc,EACdsD,OAA0C,EAClC;EACR,MAAMC,OAAO,GAAG/C,IAAI,CAAC2B,KAAK,CAAC,IAAI,IAAIb,IAAI,CAAC,CAAC;EACzC,MAAMkC,YAAY,GAAGF,OAAO,GAAGD,YAAY,CAAC;EAE5C,IAAI,OAAOG,YAAY,KAAK,UAAU,EAAE;IACtC,OAAOA,YAAY,CAACD,OAAO,EAAEF,YAAY,EAAErD,MAAM,CAAC;EACpD;EAEA,IAAIyD,OAAmC,GAAG,CAAC,CAAC;EAC5C,QAAQJ,YAAY;IAClB,KAAK,UAAU;MACbI,OAAO,GAAG;QAAEC,IAAI,EAAE,SAAS;QAAEC,KAAK,EAAE,OAAO;QAAEjC,GAAG,EAAE;MAAU,CAAC;MAC7D;IACF,KAAK,qBAAqB;MACxB+B,OAAO,GAAG;QAAER,OAAO,EAAE,MAAM;QAAES,IAAI,EAAE,SAAS;QAAEC,KAAK,EAAE,MAAM;QAAEjC,GAAG,EAAE;MAAU,CAAC;MAC7E;IACF,KAAK,YAAY;MACf,MAAMA,GAAG,GAAG6B,OAAO,CAAC/B,OAAO,CAAC,CAAC;MAC7B,MAAMmC,KAAK,GAAG,IAAIT,IAAI,CAACC,cAAc,CAACnD,MAAM,EAAE;QAAE2D,KAAK,EAAE;MAAO,CAAC,CAAC,CAACP,MAAM,CAACG,OAAO,CAAC;MAChF,OAAO,GAAG7B,GAAG,IAAIiC,KAAK,EAAE;IAC1B,KAAK,uBAAuB;MAC1BF,OAAO,GAAG;QAAER,OAAO,EAAE,OAAO;QAAEvB,GAAG,EAAE,SAAS;QAAEiC,KAAK,EAAE;MAAQ,CAAC;MAC9D;IACF,KAAK,WAAW;MACdF,OAAO,GAAG;QAAEE,KAAK,EAAE,OAAO;QAAEjC,GAAG,EAAE;MAAU,CAAC;MAC5C;IACF,KAAK,MAAM;MACT+B,OAAO,GAAG;QAAEC,IAAI,EAAE;MAAU,CAAC;MAC7B;IACF,KAAK,OAAO;MACVD,OAAO,GAAG;QAAEE,KAAK,EAAE;MAAO,CAAC;MAC3B;IACF,KAAK,YAAY;MACfF,OAAO,GAAG;QAAEE,KAAK,EAAE;MAAQ,CAAC;MAC5B;IACF,KAAK,cAAc;MACjBF,OAAO,GAAG;QAAEE,KAAK,EAAE,MAAM;QAAED,IAAI,EAAE;MAAU,CAAC;MAC5C;IACF,KAAK,cAAc;MACjBD,OAAO,GAAG;QAAEE,KAAK,EAAE,MAAM;QAAEjC,GAAG,EAAE;MAAU,CAAC;MAC3C;IACF,KAAK,SAAS;MACZ+B,OAAO,GAAG;QAAER,OAAO,EAAE;MAAO,CAAC;MAC7B;IACF,KAAK,cAAc;MACjBQ,OAAO,GAAG;QAAER,OAAO,EAAE;MAAQ,CAAC;MAC9B;IACF,KAAK,YAAY;MACf,OAAO,IAAIC,IAAI,CAACU,YAAY,CAAC5D,MAAM,CAAC,CAACoD,MAAM,CAACG,OAAO,CAAC/B,OAAO,CAAC,CAAC,CAAC;IAChE,KAAK,UAAU;MACbiC,OAAO,GAAG;QAAEI,IAAI,EAAE,SAAS;QAAEC,MAAM,EAAE;MAAK,CAAC;MAC3C;IACF,KAAK,UAAU;MACbL,OAAO,GAAG;QAAEI,IAAI,EAAE,SAAS;QAAEC,MAAM,EAAE;MAAM,CAAC;MAC5C;IACF,KAAK,SAAS;MACZL,OAAO,GAAG;QAAEM,MAAM,EAAE;MAAU,CAAC;MAC/B;IACF,KAAK,SAAS;MACZN,OAAO,GAAG;QAAEO,MAAM,EAAE;MAAU,CAAC;MAC/B;IACF,KAAK,UAAU;MACbP,OAAO,GAAG;QAAEI,IAAI,EAAE,SAAS;QAAEE,MAAM,EAAE;MAAU,CAAC;MAChD;IACF,KAAK,aAAa;MAChBN,OAAO,GAAG;QAAEI,IAAI,EAAE,SAAS;QAAEE,MAAM,EAAE,SAAS;QAAED,MAAM,EAAE;MAAK,CAAC;MAC9D;IACF,KAAK,aAAa;MAChBL,OAAO,GAAG;QAAEI,IAAI,EAAE,SAAS;QAAEE,MAAM,EAAE,SAAS;QAAED,MAAM,EAAE;MAAM,CAAC;MAC/D;IACF,KAAK,cAAc;MACjBL,OAAO,GAAG;QAAEC,IAAI,EAAE,SAAS;QAAEC,KAAK,EAAE,OAAO;QAAEjC,GAAG,EAAE,SAAS;QAAEmC,IAAI,EAAE,SAAS;QAAEE,MAAM,EAAE;MAAU,CAAC;MACjG;IACF,KAAK,iBAAiB;MACpBN,OAAO,GAAG;QAAEC,IAAI,EAAE,SAAS;QAAEC,KAAK,EAAE,OAAO;QAAEjC,GAAG,EAAE,SAAS;QAAEmC,IAAI,EAAE,SAAS;QAAEE,MAAM,EAAE,SAAS;QAAED,MAAM,EAAE;MAAK,CAAC;MAC/G;IACF,KAAK,iBAAiB;MACpBL,OAAO,GAAG;QAAEC,IAAI,EAAE,SAAS;QAAEC,KAAK,EAAE,OAAO;QAAEjC,GAAG,EAAE,SAAS;QAAEmC,IAAI,EAAE,SAAS;QAAEE,MAAM,EAAE,SAAS;QAAED,MAAM,EAAE;MAAM,CAAC;MAChH;IACF,KAAK,cAAc;MACjBL,OAAO,GAAG;QAAEC,IAAI,EAAE,SAAS;QAAEC,KAAK,EAAE,SAAS;QAAEjC,GAAG,EAAE;MAAU,CAAC;MAC/D;IACF,KAAK,kBAAkB;MACrB+B,OAAO,GAAG;QAAEC,IAAI,EAAE,SAAS;QAAEC,KAAK,EAAE,SAAS;QAAEjC,GAAG,EAAE,SAAS;QAAEmC,IAAI,EAAE,SAAS;QAAEE,MAAM,EAAE;MAAU,CAAC;MACnG,OAAO,IAAIb,IAAI,CAACC,cAAc,CAACnD,MAAM,EAAEyD,OAAO,CAAC,CAACL,MAAM,CAACG,OAAO,CAAC,CAACU,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;IACrF,KAAK,qBAAqB;MACxBR,OAAO,GAAG;QAAEC,IAAI,EAAE,SAAS;QAAEC,KAAK,EAAE,SAAS;QAAEjC,GAAG,EAAE,SAAS;QAAEmC,IAAI,EAAE,SAAS;QAAEE,MAAM,EAAE,SAAS;QAAED,MAAM,EAAE;MAAK,CAAC;MACjH,OAAO,IAAIZ,IAAI,CAACC,cAAc,CAACnD,MAAM,EAAEyD,OAAO,CAAC,CAACL,MAAM,CAACG,OAAO,CAAC,CAACU,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;IACrF,KAAK,qBAAqB;MACxBR,OAAO,GAAG;QAAEC,IAAI,EAAE,SAAS;QAAEC,KAAK,EAAE,SAAS;QAAEjC,GAAG,EAAE,SAAS;QAAEmC,IAAI,EAAE,SAAS;QAAEE,MAAM,EAAE,SAAS;QAAED,MAAM,EAAE;MAAM,CAAC;MAClH,OAAO,IAAIZ,IAAI,CAACC,cAAc,CAACnD,MAAM,EAAEyD,OAAO,CAAC,CAACL,MAAM,CAACG,OAAO,CAAC,CAACU,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;IACrF;MACER,OAAO,GAAGD,YAAY,IAAI;QAAEU,QAAQ,EAAE,KAAK;QAAEC,YAAY,EAAE;MAAQ,CAAC;EACxE;EAEA,OAAO,IAAIjB,IAAI,CAACC,cAAc,CAACnD,MAAM,EAAEyD,OAAO,CAAC,CAACL,MAAM,CAACG,OAAO,CAAC;AACjE;AAEA,SAASa,KAAKA,CAAEC,OAAyB,EAAElC,KAAW,EAAE;EACtD,MAAM3B,IAAI,GAAG6D,OAAO,CAACC,QAAQ,CAACnC,KAAK,CAAC;EACpC,MAAMuB,IAAI,GAAGlD,IAAI,CAACmB,WAAW,CAAC,CAAC;EAC/B,MAAMgC,KAAK,GAAG7D,QAAQ,CAACyE,MAAM,CAAC/D,IAAI,CAACoB,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;EAC3D,MAAMF,GAAG,GAAG5B,QAAQ,CAACyE,MAAM,CAAC/D,IAAI,CAACgB,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;EAEpD,OAAO,GAAGkC,IAAI,IAAIC,KAAK,IAAIjC,GAAG,EAAE;AAClC;AAEA,SAAS8C,QAAQA,CAAErC,KAAa,EAAE;EAChC,MAAM,CAACuB,IAAI,EAAEC,KAAK,EAAEjC,GAAG,CAAC,GAAGS,KAAK,CAACE,KAAK,CAAC,GAAG,CAAC,CAACC,GAAG,CAACC,MAAM,CAAC;EAEvD,OAAO,IAAIjB,IAAI,CAACoC,IAAI,EAAEC,KAAK,GAAG,CAAC,EAAEjC,GAAG,CAAC;AACvC;AAEA,SAAS+C,UAAUA,CAAEjE,IAAU,EAAEkE,MAAc,EAAE;EAC/C,MAAM3C,CAAC,GAAG,IAAIT,IAAI,CAACd,IAAI,CAAC;EACxBuB,CAAC,CAAC4C,UAAU,CAAC5C,CAAC,CAAC6C,UAAU,CAAC,CAAC,GAAGF,MAAM,CAAC;EACrC,OAAO3C,CAAC;AACV;AAEA,SAAS8C,QAAQA,CAAErE,IAAU,EAAEkE,MAAc,EAAE;EAC7C,MAAM3C,CAAC,GAAG,IAAIT,IAAI,CAACd,IAAI,CAAC;EACxBuB,CAAC,CAAC+C,QAAQ,CAAC/C,CAAC,CAACgD,QAAQ,CAAC,CAAC,GAAGL,MAAM,CAAC;EACjC,OAAO3C,CAAC;AACV;AAEA,SAASiD,OAAOA,CAAExE,IAAU,EAAEkE,MAAc,EAAE;EAC5C,MAAM3C,CAAC,GAAG,IAAIT,IAAI,CAACd,IAAI,CAAC;EACxBuB,CAAC,CAACR,OAAO,CAACQ,CAAC,CAACP,OAAO,CAAC,CAAC,GAAGkD,MAAM,CAAC;EAC/B,OAAO3C,CAAC;AACV;AAEA,SAASkD,QAAQA,CAAEzE,IAAU,EAAEkE,MAAc,EAAE;EAC7C,MAAM3C,CAAC,GAAG,IAAIT,IAAI,CAACd,IAAI,CAAC;EACxBuB,CAAC,CAACR,OAAO,CAACQ,CAAC,CAACP,OAAO,CAAC,CAAC,GAAIkD,MAAM,GAAG,CAAE,CAAC;EACrC,OAAO3C,CAAC;AACV;AAEA,SAASmD,SAASA,CAAE1E,IAAU,EAAEkE,MAAc,EAAE;EAC9C,MAAM3C,CAAC,GAAG,IAAIT,IAAI,CAACd,IAAI,CAAC;EACxBuB,CAAC,CAACR,OAAO,CAAC,CAAC,CAAC;EACZQ,CAAC,CAACoD,QAAQ,CAACpD,CAAC,CAACH,QAAQ,CAAC,CAAC,GAAG8C,MAAM,CAAC;EACjC,OAAO3C,CAAC;AACV;AAEA,SAASqD,OAAOA,CAAE5E,IAAU,EAAE;EAC5B,OAAOA,IAAI,CAACmB,WAAW,CAAC,CAAC;AAC3B;AAEA,SAASC,QAAQA,CAAEpB,IAAU,EAAE;EAC7B,OAAOA,IAAI,CAACoB,QAAQ,CAAC,CAAC;AACxB;AAEA,SAASyD,OAAOA,CAAE7E,IAAU,EAAER,MAAc,EAAES,cAAuB,EAAE6E,gBAAyB,EAAE;EAChG,MAAMC,kBAAkB,GAAGxF,QAAQ,CAACC,MAAM,CAAC;EAC3C,MAAMwF,SAAS,GAAG/E,cAAc,IAAI8E,kBAAkB,EAAEnF,QAAQ,IAAI,CAAC;EACrE,MAAMqF,WAAW,GAAGH,gBAAgB,IAAIC,kBAAkB,EAAElF,aAAa,IAAI,CAAC;EAC9E,SAASA,aAAaA,CAAEqD,IAAY,EAAE;IACpC,MAAMgC,SAAS,GAAG,IAAIpE,IAAI,CAACoC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IACtC,OAAO,CAAC,GAAGiC,OAAO,CAACD,SAAS,EAAE5D,WAAW,CAAC4D,SAAS,EAAE1F,MAAM,EAAEwF,SAAS,CAAC,EAAE,MAAM,CAAC;EAClF;EAEA,IAAI9B,IAAI,GAAG0B,OAAO,CAAC5E,IAAI,CAAC;EACxB,MAAMoF,cAAc,GAAGZ,OAAO,CAAClD,WAAW,CAACtB,IAAI,EAAER,MAAM,EAAEwF,SAAS,CAAC,EAAE,CAAC,CAAC;EACvE,IAAI9B,IAAI,GAAG0B,OAAO,CAACQ,cAAc,CAAC,IAAIvF,aAAa,CAACqD,IAAI,GAAG,CAAC,CAAC,IAAI+B,WAAW,EAAE;IAC5E/B,IAAI,EAAE;EACR;EAEA,MAAMgC,SAAS,GAAG,IAAIpE,IAAI,CAACoC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;EACtC,MAAMmC,IAAI,GAAGxF,aAAa,CAACqD,IAAI,CAAC;EAChC,MAAMoC,IAAI,GAAGD,IAAI,IAAIJ,WAAW,GAC5BT,OAAO,CAACU,SAAS,EAAEG,IAAI,GAAG,CAAC,CAAC,GAC5Bb,OAAO,CAACU,SAAS,EAAEG,IAAI,CAAC;EAE5B,OAAO,CAAC,GAAGF,OAAO,CAACI,QAAQ,CAACvF,IAAI,CAAC,EAAEwF,UAAU,CAACF,IAAI,CAAC,EAAE,OAAO,CAAC;AAC/D;AAEA,SAAStE,OAAOA,CAAEhB,IAAU,EAAE;EAC5B,OAAOA,IAAI,CAACgB,OAAO,CAAC,CAAC;AACvB;AAEA,SAASyE,YAAYA,CAAEzF,IAAU,EAAE;EACjC,OAAO,IAAIc,IAAI,CAACd,IAAI,CAACmB,WAAW,CAAC,CAAC,EAAEnB,IAAI,CAACoB,QAAQ,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAC7D;AAEA,SAASsE,gBAAgBA,CAAE1F,IAAU,EAAE;EACrC,OAAO,IAAIc,IAAI,CAACd,IAAI,CAACmB,WAAW,CAAC,CAAC,EAAEnB,IAAI,CAACoB,QAAQ,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAC7D;AAEA,SAASmD,QAAQA,CAAEvE,IAAU,EAAE;EAC7B,OAAOA,IAAI,CAACuE,QAAQ,CAAC,CAAC;AACxB;AAEA,SAASH,UAAUA,CAAEpE,IAAU,EAAE;EAC/B,OAAOA,IAAI,CAACoE,UAAU,CAAC,CAAC;AAC1B;AAEA,SAASuB,WAAWA,CAAE3F,IAAU,EAAE;EAChC,OAAO,IAAIc,IAAI,CAACd,IAAI,CAACmB,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAC3C;AACA,SAASyE,SAASA,CAAE5F,IAAU,EAAE;EAC9B,OAAO,IAAIc,IAAI,CAACd,IAAI,CAACmB,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;AAC7C;AAEA,SAAS0E,aAAaA,CAAE7F,IAAU,EAAE8F,KAAmB,EAAE;EACvD,OAAOC,OAAO,CAAC/F,IAAI,EAAE8F,KAAK,CAAC,CAAC,CAAC,CAAC,IAAIE,QAAQ,CAAChG,IAAI,EAAE8F,KAAK,CAAC,CAAC,CAAC,CAAC;AAC5D;AAEA,SAASG,OAAOA,CAAEjG,IAAS,EAAE;EAC3B,MAAMuB,CAAC,GAAG,IAAIT,IAAI,CAACd,IAAI,CAAC;EAExB,OAAOuB,CAAC,YAAYT,IAAI,IAAI,CAACsB,KAAK,CAACb,CAAC,CAAC2E,OAAO,CAAC,CAAC,CAAC;AACjD;AAEA,SAASH,OAAOA,CAAE/F,IAAU,EAAEmG,SAAe,EAAE;EAC7C,OAAOnG,IAAI,CAACkG,OAAO,CAAC,CAAC,GAAGC,SAAS,CAACD,OAAO,CAAC,CAAC;AAC7C;AAEA,SAASE,UAAUA,CAAEpG,IAAU,EAAEmG,SAAe,EAAW;EACzD,OAAOJ,OAAO,CAACP,UAAU,CAACxF,IAAI,CAAC,EAAEwF,UAAU,CAACW,SAAS,CAAC,CAAC;AACzD;AAEA,SAASH,QAAQA,CAAEhG,IAAU,EAAEmG,SAAe,EAAE;EAC9C,OAAOnG,IAAI,CAACkG,OAAO,CAAC,CAAC,GAAGC,SAAS,CAACD,OAAO,CAAC,CAAC;AAC7C;AAEA,SAASG,OAAOA,CAAErG,IAAU,EAAEmG,SAAe,EAAE;EAC7C,OAAOnG,IAAI,CAACkG,OAAO,CAAC,CAAC,KAAKC,SAAS,CAACD,OAAO,CAAC,CAAC;AAC/C;AAEA,SAASI,SAASA,CAAEtG,IAAU,EAAEmG,SAAe,EAAE;EAC/C,OAAOnG,IAAI,CAACgB,OAAO,CAAC,CAAC,KAAKmF,SAAS,CAACnF,OAAO,CAAC,CAAC,IAC3ChB,IAAI,CAACoB,QAAQ,CAAC,CAAC,KAAK+E,SAAS,CAAC/E,QAAQ,CAAC,CAAC,IACxCpB,IAAI,CAACmB,WAAW,CAAC,CAAC,KAAKgF,SAAS,CAAChF,WAAW,CAAC,CAAC;AAClD;AAEA,SAASoF,WAAWA,CAAEvG,IAAU,EAAEmG,SAAe,EAAE;EACjD,OAAOnG,IAAI,CAACoB,QAAQ,CAAC,CAAC,KAAK+E,SAAS,CAAC/E,QAAQ,CAAC,CAAC,IAC7CpB,IAAI,CAACmB,WAAW,CAAC,CAAC,KAAKgF,SAAS,CAAChF,WAAW,CAAC,CAAC;AAClD;AAEA,SAASqF,UAAUA,CAAExG,IAAU,EAAEmG,SAAe,EAAE;EAChD,OAAOnG,IAAI,CAACmB,WAAW,CAAC,CAAC,KAAKgF,SAAS,CAAChF,WAAW,CAAC,CAAC;AACvD;AAEA,SAASgE,OAAOA,CAAEnF,IAAU,EAAEmG,SAAwB,EAAEM,IAAa,EAAE;EACrE,MAAMlF,CAAC,GAAG,IAAIT,IAAI,CAACd,IAAI,CAAC;EACxB,MAAM0G,CAAC,GAAG,IAAI5F,IAAI,CAACqF,SAAS,CAAC;EAE7B,QAAQM,IAAI;IACV,KAAK,OAAO;MACV,OAAOlF,CAAC,CAACJ,WAAW,CAAC,CAAC,GAAGuF,CAAC,CAACvF,WAAW,CAAC,CAAC;IAC1C,KAAK,UAAU;MACb,OAAOwF,IAAI,CAACC,KAAK,CAAC,CAACrF,CAAC,CAACH,QAAQ,CAAC,CAAC,GAAGsF,CAAC,CAACtF,QAAQ,CAAC,CAAC,GAAG,CAACG,CAAC,CAACJ,WAAW,CAAC,CAAC,GAAGuF,CAAC,CAACvF,WAAW,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACjG,KAAK,QAAQ;MACX,OAAOI,CAAC,CAACH,QAAQ,CAAC,CAAC,GAAGsF,CAAC,CAACtF,QAAQ,CAAC,CAAC,GAAG,CAACG,CAAC,CAACJ,WAAW,CAAC,CAAC,GAAGuF,CAAC,CAACvF,WAAW,CAAC,CAAC,IAAI,EAAE;IAC/E,KAAK,OAAO;MACV,OAAOwF,IAAI,CAACC,KAAK,CAAC,CAACrF,CAAC,CAAC2E,OAAO,CAAC,CAAC,GAAGQ,CAAC,CAACR,OAAO,CAAC,CAAC,KAAK,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAC5E,KAAK,MAAM;MACT,OAAOS,IAAI,CAACC,KAAK,CAAC,CAACrF,CAAC,CAAC2E,OAAO,CAAC,CAAC,GAAGQ,CAAC,CAACR,OAAO,CAAC,CAAC,KAAK,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACxE,KAAK,OAAO;MACV,OAAOS,IAAI,CAACC,KAAK,CAAC,CAACrF,CAAC,CAAC2E,OAAO,CAAC,CAAC,GAAGQ,CAAC,CAACR,OAAO,CAAC,CAAC,KAAK,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACnE,KAAK,SAAS;MACZ,OAAOS,IAAI,CAACC,KAAK,CAAC,CAACrF,CAAC,CAAC2E,OAAO,CAAC,CAAC,GAAGQ,CAAC,CAACR,OAAO,CAAC,CAAC,KAAK,IAAI,GAAG,EAAE,CAAC,CAAC;IAC9D,KAAK,SAAS;MACZ,OAAOS,IAAI,CAACC,KAAK,CAAC,CAACrF,CAAC,CAAC2E,OAAO,CAAC,CAAC,GAAGQ,CAAC,CAACR,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC;IACvD;MAAS;QACP,OAAO3E,CAAC,CAAC2E,OAAO,CAAC,CAAC,GAAGQ,CAAC,CAACR,OAAO,CAAC,CAAC;MAClC;EACF;AACF;AAEA,SAAS5B,QAAQA,CAAEtE,IAAU,EAAE6G,KAAa,EAAE;EAC5C,MAAMtF,CAAC,GAAG,IAAIT,IAAI,CAACd,IAAI,CAAC;EACxBuB,CAAC,CAAC+C,QAAQ,CAACuC,KAAK,CAAC;EACjB,OAAOtF,CAAC;AACV;AAEA,SAAS4C,UAAUA,CAAEnE,IAAU,EAAE6G,KAAa,EAAE;EAC9C,MAAMtF,CAAC,GAAG,IAAIT,IAAI,CAACd,IAAI,CAAC;EACxBuB,CAAC,CAAC4C,UAAU,CAAC0C,KAAK,CAAC;EACnB,OAAOtF,CAAC;AACV;AAEA,SAASoD,QAAQA,CAAE3E,IAAU,EAAE6G,KAAa,EAAE;EAC5C,MAAMtF,CAAC,GAAG,IAAIT,IAAI,CAACd,IAAI,CAAC;EACxBuB,CAAC,CAACoD,QAAQ,CAACkC,KAAK,CAAC;EACjB,OAAOtF,CAAC;AACV;AAEA,SAASR,OAAOA,CAAEf,IAAU,EAAEkB,GAAW,EAAE;EACzC,MAAMK,CAAC,GAAG,IAAIT,IAAI,CAACd,IAAI,CAAC;EACxBuB,CAAC,CAACR,OAAO,CAACG,GAAG,CAAC;EACd,OAAOK,CAAC;AACV;AAEA,SAASuF,OAAOA,CAAE9G,IAAU,EAAEkD,IAAY,EAAE;EAC1C,MAAM3B,CAAC,GAAG,IAAIT,IAAI,CAACd,IAAI,CAAC;EACxBuB,CAAC,CAACwF,WAAW,CAAC7D,IAAI,CAAC;EACnB,OAAO3B,CAAC;AACV;AAEA,SAASiE,UAAUA,CAAExF,IAAU,EAAE;EAC/B,OAAO,IAAIc,IAAI,CAACd,IAAI,CAACmB,WAAW,CAAC,CAAC,EAAEnB,IAAI,CAACoB,QAAQ,CAAC,CAAC,EAAEpB,IAAI,CAACgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAClF;AAEA,SAASuE,QAAQA,CAAEvF,IAAU,EAAE;EAC7B,OAAO,IAAIc,IAAI,CAACd,IAAI,CAACmB,WAAW,CAAC,CAAC,EAAEnB,IAAI,CAACoB,QAAQ,CAAC,CAAC,EAAEpB,IAAI,CAACgB,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;AACvF;AAEA,OAAO,MAAMgG,kBAAkB,CAA8B;EAI3DC,WAAWA,CAAEhE,OAAuE,EAAE;IACpF,IAAI,CAACzD,MAAM,GAAGyD,OAAO,CAACzD,MAAM;IAC5B,IAAI,CAACsD,OAAO,GAAGG,OAAO,CAACH,OAAO;EAChC;EAEA9C,IAAIA,CAAE2B,KAAW,EAAE;IACjB,OAAO3B,IAAI,CAAC2B,KAAK,CAAC;EACpB;EAEAmC,QAAQA,CAAE9D,IAAU,EAAE;IACpB,OAAOA,IAAI;EACb;EAEA4D,KAAKA,CAAE5D,IAAU,EAAU;IACzB,OAAO4D,KAAK,CAAC,IAAI,EAAE5D,IAAI,CAAC;EAC1B;EAEAgE,QAAQA,CAAEhE,IAAY,EAAE;IACtB,OAAOgE,QAAQ,CAAChE,IAAI,CAAC;EACvB;EAEAiE,UAAUA,CAAEjE,IAAU,EAAEkE,MAAc,EAAE;IACtC,OAAOD,UAAU,CAACjE,IAAI,EAAEkE,MAAM,CAAC;EACjC;EAEAG,QAAQA,CAAErE,IAAU,EAAEkE,MAAc,EAAE;IACpC,OAAOG,QAAQ,CAACrE,IAAI,EAAEkE,MAAM,CAAC;EAC/B;EAEAM,OAAOA,CAAExE,IAAU,EAAEkE,MAAc,EAAE;IACnC,OAAOM,OAAO,CAACxE,IAAI,EAAEkE,MAAM,CAAC;EAC9B;EAEAO,QAAQA,CAAEzE,IAAU,EAAEkE,MAAc,EAAE;IACpC,OAAOO,QAAQ,CAACzE,IAAI,EAAEkE,MAAM,CAAC;EAC/B;EAEAQ,SAASA,CAAE1E,IAAU,EAAEkE,MAAc,EAAE;IACrC,OAAOQ,SAAS,CAAC1E,IAAI,EAAEkE,MAAM,CAAC;EAChC;EAEAnE,YAAYA,CAAEC,IAAU,EAAEC,cAAgC,EAAE;IAC1D,MAAML,QAAQ,GAAGK,cAAc,KAAKiH,SAAS,GAAGnF,MAAM,CAAC9B,cAAc,CAAC,GAAGiH,SAAS;IAClF,OAAOnH,YAAY,CAACC,IAAI,EAAE,IAAI,CAACR,MAAM,EAAEI,QAAQ,CAAC;EAClD;EAEA0B,WAAWA,CAAEtB,IAAU,EAAEC,cAAgC,EAAQ;IAC/D,MAAML,QAAQ,GAAGK,cAAc,KAAKiH,SAAS,GAAGnF,MAAM,CAAC9B,cAAc,CAAC,GAAGiH,SAAS;IAClF,OAAO5F,WAAW,CAACtB,IAAI,EAAE,IAAI,CAACR,MAAM,EAAEI,QAAQ,CAAC;EACjD;EAEA4B,SAASA,CAAExB,IAAU,EAAQ;IAC3B,OAAOwB,SAAS,CAACxB,IAAI,EAAE,IAAI,CAACR,MAAM,CAAC;EACrC;EAEAa,YAAYA,CAAEL,IAAU,EAAE;IACxB,OAAOK,YAAY,CAACL,IAAI,CAAC;EAC3B;EAEAO,UAAUA,CAAEP,IAAU,EAAE;IACtB,OAAOO,UAAU,CAACP,IAAI,CAAC;EACzB;EAEA4C,MAAMA,CAAE5C,IAAU,EAAE6C,YAAoB,EAAE;IACxC,OAAOD,MAAM,CAAC5C,IAAI,EAAE6C,YAAY,EAAE,IAAI,CAACrD,MAAM,EAAE,IAAI,CAACsD,OAAO,CAAC;EAC9D;EAEAuD,OAAOA,CAAErG,IAAU,EAAEmG,SAAe,EAAE;IACpC,OAAOE,OAAO,CAACrG,IAAI,EAAEmG,SAAS,CAAC;EACjC;EAEAF,OAAOA,CAAEjG,IAAS,EAAE;IAClB,OAAOiG,OAAO,CAACjG,IAAI,CAAC;EACtB;EAEA6F,aAAaA,CAAE7F,IAAU,EAAE8F,KAAmB,EAAE;IAC9C,OAAOD,aAAa,CAAC7F,IAAI,EAAE8F,KAAK,CAAC;EACnC;EAEAC,OAAOA,CAAE/F,IAAU,EAAEmG,SAAe,EAAE;IACpC,OAAOJ,OAAO,CAAC/F,IAAI,EAAEmG,SAAS,CAAC;EACjC;EAEAC,UAAUA,CAAEpG,IAAU,EAAEmG,SAAe,EAAE;IACvC,OAAOC,UAAU,CAACpG,IAAI,EAAEmG,SAAS,CAAC;EACpC;EAEAH,QAAQA,CAAEhG,IAAU,EAAEmG,SAAe,EAAE;IACrC,OAAO,CAACJ,OAAO,CAAC/F,IAAI,EAAEmG,SAAS,CAAC,IAAI,CAACE,OAAO,CAACrG,IAAI,EAAEmG,SAAS,CAAC;EAC/D;EAEAG,SAASA,CAAEtG,IAAU,EAAEmG,SAAe,EAAE;IACtC,OAAOG,SAAS,CAACtG,IAAI,EAAEmG,SAAS,CAAC;EACnC;EAEAI,WAAWA,CAAEvG,IAAU,EAAEmG,SAAe,EAAE;IACxC,OAAOI,WAAW,CAACvG,IAAI,EAAEmG,SAAS,CAAC;EACrC;EAEAK,UAAUA,CAAExG,IAAU,EAAEmG,SAAe,EAAE;IACvC,OAAOK,UAAU,CAACxG,IAAI,EAAEmG,SAAS,CAAC;EACpC;EAEAhC,UAAUA,CAAEnE,IAAU,EAAE6G,KAAa,EAAE;IACrC,OAAO1C,UAAU,CAACnE,IAAI,EAAE6G,KAAK,CAAC;EAChC;EAEAvC,QAAQA,CAAEtE,IAAU,EAAE6G,KAAa,EAAE;IACnC,OAAOvC,QAAQ,CAACtE,IAAI,EAAE6G,KAAK,CAAC;EAC9B;EAEAlC,QAAQA,CAAE3E,IAAU,EAAE6G,KAAa,EAAE;IACnC,OAAOlC,QAAQ,CAAC3E,IAAI,EAAE6G,KAAK,CAAC;EAC9B;EAEA9F,OAAOA,CAAEf,IAAU,EAAEkB,GAAW,EAAQ;IACtC,OAAOH,OAAO,CAACf,IAAI,EAAEkB,GAAG,CAAC;EAC3B;EAEA4F,OAAOA,CAAE9G,IAAU,EAAEkD,IAAY,EAAE;IACjC,OAAO4D,OAAO,CAAC9G,IAAI,EAAEkD,IAAI,CAAC;EAC5B;EAEAiC,OAAOA,CAAEnF,IAAU,EAAEmG,SAAwB,EAAEM,IAAa,EAAE;IAC5D,OAAOtB,OAAO,CAACnF,IAAI,EAAEmG,SAAS,EAAEM,IAAI,CAAC;EACvC;EAEAnE,WAAWA,CAAErC,cAAgC,EAAEsC,aAA2C,EAAE;IAC1F,MAAM3C,QAAQ,GAAGK,cAAc,KAAKiH,SAAS,GAAGnF,MAAM,CAAC9B,cAAc,CAAC,GAAGiH,SAAS;IAClF,OAAO5E,WAAW,CAAC,IAAI,CAAC9C,MAAM,EAAEI,QAAQ,EAAE2C,aAAa,CAAC;EAC1D;EAEAqC,OAAOA,CAAE5E,IAAU,EAAE;IACnB,OAAO4E,OAAO,CAAC5E,IAAI,CAAC;EACtB;EAEAoB,QAAQA,CAAEpB,IAAU,EAAE;IACpB,OAAOoB,QAAQ,CAACpB,IAAI,CAAC;EACvB;EAEA6E,OAAOA,CAAE7E,IAAU,EAAEC,cAAgC,EAAE6E,gBAAyB,EAAE;IAChF,MAAMlF,QAAQ,GAAGK,cAAc,KAAKiH,SAAS,GAAGnF,MAAM,CAAC9B,cAAc,CAAC,GAAGiH,SAAS;IAClF,OAAOrC,OAAO,CAAC7E,IAAI,EAAE,IAAI,CAACR,MAAM,EAAEI,QAAQ,EAAEkF,gBAAgB,CAAC;EAC/D;EAEA9D,OAAOA,CAAEhB,IAAU,EAAE;IACnB,OAAOgB,OAAO,CAAChB,IAAI,CAAC;EACtB;EAEAyF,YAAYA,CAAEzF,IAAU,EAAE;IACxB,OAAOyF,YAAY,CAACzF,IAAI,CAAC;EAC3B;EAEA0F,gBAAgBA,CAAE1F,IAAU,EAAE;IAC5B,OAAO0F,gBAAgB,CAAC1F,IAAI,CAAC;EAC/B;EAEAuE,QAAQA,CAAEvE,IAAU,EAAE;IACpB,OAAOuE,QAAQ,CAACvE,IAAI,CAAC;EACvB;EAEAoE,UAAUA,CAAEpE,IAAU,EAAE;IACtB,OAAOoE,UAAU,CAACpE,IAAI,CAAC;EACzB;EAEAwF,UAAUA,CAAExF,IAAU,EAAE;IACtB,OAAOwF,UAAU,CAACxF,IAAI,CAAC;EACzB;EAEAuF,QAAQA,CAAEvF,IAAU,EAAE;IACpB,OAAOuF,QAAQ,CAACvF,IAAI,CAAC;EACvB;EAEA2F,WAAWA,CAAE3F,IAAU,EAAE;IACvB,OAAO2F,WAAW,CAAC3F,IAAI,CAAC;EAC1B;EAEA4F,SAASA,CAAE5F,IAAU,EAAE;IACrB,OAAO4F,SAAS,CAAC5F,IAAI,CAAC;EACxB;AACF","ignoreList":[]}
|
@@ -165,7 +165,7 @@ export function useVirtual(props, items) {
|
|
165
165
|
raf = requestAnimationFrame(_calculateVisibleItems);
|
166
166
|
}
|
167
167
|
function _calculateVisibleItems() {
|
168
|
-
if (!containerRef.value || !viewportHeight.value) return;
|
168
|
+
if (!containerRef.value || !viewportHeight.value || !itemHeight.value) return;
|
169
169
|
const scrollTop = lastScrollTop - markerOffset;
|
170
170
|
const direction = Math.sign(scrollVelocity);
|
171
171
|
const startPx = Math.max(0, scrollTop - BUFFER_PX);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"virtual.js","names":["useDisplay","useResizeObserver","computed","nextTick","onScopeDispose","ref","shallowRef","watch","watchEffect","clamp","debounce","getPropertyFromItem","IN_BROWSER","propsFactory","UP","DOWN","BUFFER_PX","makeVirtualProps","itemHeight","type","Number","String","default","itemKey","Array","Function","height","useVirtual","props","items","display","value","parseFloat","first","last","Math","ceil","parseInt","paddingTop","paddingBottom","containerRef","markerRef","markerOffset","resizeRef","contentRect","viewportHeight","document","documentElement","hasInitialRender","sizes","from","length","offsets","updateTime","targetScrollIndex","getSize","index","updateOffsets","start","performance","now","i","max","unwatch","v","offsetTop","immediate","calculateVisibleItems","window","requestAnimationFrame","scrollToIndex","clear","handleItemResize","prevHeight","prevMinHeight","min","calculateOffset","whole","floor","fraction","next","wholeOffset","nextOffset","calculateIndex","scrollTop","binaryClosest","lastScrollTop","scrollVelocity","lastScrollTime","val","oldVal","scrollTimeout","handleScroll","scrollTime","scrollDeltaT","sign","clearTimeout","setTimeout","handleScrollend","raf","cancelAnimationFrame","_calculateVisibleItems","direction","startPx","endPx","end","topOverflow","bottomOverflow","bufferOverflow","offset","computedItems","slice","map","item","_index","raw","key","deep","arr","high","low","mid","target"],"sources":["../../src/composables/virtual.ts"],"sourcesContent":["// Composables\nimport { useDisplay } from '@/composables/display'\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport { computed, nextTick, onScopeDispose, ref, shallowRef, watch, watchEffect } from 'vue'\nimport { clamp, debounce, getPropertyFromItem, IN_BROWSER, propsFactory } from '@/util'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { SelectItemKey } from '@/util'\n\nconst UP = -1\nconst DOWN = 1\n\n/** Determines how large each batch of items should be */\nconst BUFFER_PX = 100\n\ntype VirtualProps = {\n itemHeight: number | string | null | undefined\n itemKey: SelectItemKey\n height: number | string | undefined\n}\n\nexport const makeVirtualProps = propsFactory({\n itemHeight: {\n type: [Number, String],\n default: null,\n },\n itemKey: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: null,\n },\n height: [Number, String],\n}, 'virtual')\n\nexport function useVirtual <T> (props: VirtualProps, items: Ref<readonly T[]>) {\n const display = useDisplay()\n\n const itemHeight = shallowRef(0)\n watchEffect(() => {\n itemHeight.value = parseFloat(props.itemHeight || 0)\n })\n\n const first = shallowRef(0)\n const last = shallowRef(Math.ceil(\n // Assume 16px items filling the entire screen height if\n // not provided. This is probably incorrect but it minimises\n // the chance of ending up with empty space at the bottom.\n // The default value is set here to avoid poisoning getSize()\n (parseInt(props.height!) || display.height.value) / (itemHeight.value || 16)\n ) || 1)\n const paddingTop = shallowRef(0)\n const paddingBottom = shallowRef(0)\n\n /** The scrollable element */\n const containerRef = ref<HTMLElement>()\n /** An element marking the top of the scrollable area,\n * used to add an offset if there's padding or other elements above the virtual list */\n const markerRef = ref<HTMLElement>()\n /** markerRef's offsetTop, lazily evaluated */\n let markerOffset = 0\n\n const { resizeRef, contentRect } = useResizeObserver()\n watchEffect(() => {\n resizeRef.value = containerRef.value\n })\n const viewportHeight = computed(() => {\n return containerRef.value === document.documentElement\n ? display.height.value\n : contentRect.value?.height || parseInt(props.height!) || 0\n })\n /** All static elements have been rendered and we have an assumed item height */\n const hasInitialRender = computed(() => {\n return !!(containerRef.value && markerRef.value && viewportHeight.value && itemHeight.value)\n })\n\n let sizes = Array.from<number | null>({ length: items.value.length })\n let offsets = Array.from<number>({ length: items.value.length })\n const updateTime = shallowRef(0)\n let targetScrollIndex = -1\n\n function getSize (index: number) {\n return sizes[index] || itemHeight.value\n }\n\n const updateOffsets = debounce(() => {\n const start = performance.now()\n offsets[0] = 0\n const length = items.value.length\n for (let i = 1; i <= length - 1; i++) {\n offsets[i] = (offsets[i - 1] || 0) + getSize(i - 1)\n }\n updateTime.value = Math.max(updateTime.value, performance.now() - start)\n }, updateTime)\n\n const unwatch = watch(hasInitialRender, v => {\n if (!v) return\n // First render is complete, update offsets and visible\n // items in case our assumed item height was incorrect\n\n unwatch()\n markerOffset = markerRef.value!.offsetTop\n updateOffsets.immediate()\n calculateVisibleItems()\n\n if (!~targetScrollIndex) return\n\n nextTick(() => {\n IN_BROWSER && window.requestAnimationFrame(() => {\n scrollToIndex(targetScrollIndex)\n targetScrollIndex = -1\n })\n })\n })\n\n onScopeDispose(() => {\n updateOffsets.clear()\n })\n\n function handleItemResize (index: number, height: number) {\n const prevHeight = sizes[index]\n const prevMinHeight = itemHeight.value\n\n itemHeight.value = prevMinHeight ? Math.min(itemHeight.value, height) : height\n\n if (prevHeight !== height || prevMinHeight !== itemHeight.value) {\n sizes[index] = height\n updateOffsets()\n }\n }\n\n function calculateOffset (index: number) {\n index = clamp(index, 0, items.value.length - 1)\n const whole = Math.floor(index)\n const fraction = index % 1\n const next = whole + 1\n const wholeOffset = offsets[whole] || 0\n const nextOffset = offsets[next] || wholeOffset\n return wholeOffset + (nextOffset - wholeOffset) * fraction\n }\n\n function calculateIndex (scrollTop: number) {\n return binaryClosest(offsets, scrollTop)\n }\n\n let lastScrollTop = 0\n let scrollVelocity = 0\n let lastScrollTime = 0\n\n watch(viewportHeight, (val, oldVal) => {\n if (oldVal) {\n calculateVisibleItems()\n if (val < oldVal) {\n requestAnimationFrame(() => {\n scrollVelocity = 0\n calculateVisibleItems()\n })\n }\n }\n })\n\n let scrollTimeout = -1\n function handleScroll () {\n if (!containerRef.value || !markerRef.value) return\n\n const scrollTop = containerRef.value.scrollTop\n const scrollTime = performance.now()\n const scrollDeltaT = scrollTime - lastScrollTime\n\n if (scrollDeltaT > 500) {\n scrollVelocity = Math.sign(scrollTop - lastScrollTop)\n\n // Not super important, only update at the\n // start of a scroll sequence to avoid reflows\n markerOffset = markerRef.value.offsetTop\n } else {\n scrollVelocity = scrollTop - lastScrollTop\n }\n\n lastScrollTop = scrollTop\n lastScrollTime = scrollTime\n\n window.clearTimeout(scrollTimeout)\n scrollTimeout = window.setTimeout(handleScrollend, 500)\n\n calculateVisibleItems()\n }\n function handleScrollend () {\n if (!containerRef.value || !markerRef.value) return\n\n scrollVelocity = 0\n lastScrollTime = 0\n\n window.clearTimeout(scrollTimeout)\n calculateVisibleItems()\n }\n\n let raf = -1\n function calculateVisibleItems () {\n cancelAnimationFrame(raf)\n raf = requestAnimationFrame(_calculateVisibleItems)\n }\n function _calculateVisibleItems () {\n if (!containerRef.value || !viewportHeight.value) return\n const scrollTop = lastScrollTop - markerOffset\n const direction = Math.sign(scrollVelocity)\n\n const startPx = Math.max(0, scrollTop - BUFFER_PX)\n const start = clamp(calculateIndex(startPx), 0, items.value.length)\n\n const endPx = scrollTop + viewportHeight.value + BUFFER_PX\n const end = clamp(calculateIndex(endPx) + 1, start + 1, items.value.length)\n\n if (\n // Only update the side we're scrolling towards,\n // the other side will be updated incidentally\n (direction !== UP || start < first.value) &&\n (direction !== DOWN || end > last.value)\n ) {\n const topOverflow = calculateOffset(first.value) - calculateOffset(start)\n const bottomOverflow = calculateOffset(end) - calculateOffset(last.value)\n const bufferOverflow = Math.max(topOverflow, bottomOverflow)\n\n if (bufferOverflow > BUFFER_PX) {\n first.value = start\n last.value = end\n } else {\n // Only update the side that's reached its limit if there's still buffer left\n if (start <= 0) first.value = start\n if (end >= items.value.length) last.value = end\n }\n }\n\n paddingTop.value = calculateOffset(first.value)\n paddingBottom.value = calculateOffset(items.value.length) - calculateOffset(last.value)\n }\n\n function scrollToIndex (index: number) {\n const offset = calculateOffset(index)\n if (!containerRef.value || (index && !offset)) {\n targetScrollIndex = index\n } else {\n containerRef.value.scrollTop = offset\n }\n }\n\n const computedItems = computed(() => {\n return items.value.slice(first.value, last.value).map((item, index) => {\n const _index = index + first.value\n return {\n raw: item,\n index: _index,\n key: getPropertyFromItem(item, props.itemKey, _index),\n }\n })\n })\n\n watch(items, () => {\n sizes = Array.from({ length: items.value.length })\n offsets = Array.from({ length: items.value.length })\n updateOffsets.immediate()\n calculateVisibleItems()\n }, { deep: 1 })\n\n return {\n calculateVisibleItems,\n containerRef,\n markerRef,\n computedItems,\n paddingTop,\n paddingBottom,\n scrollToIndex,\n handleScroll,\n handleScrollend,\n handleItemResize,\n }\n}\n\n// https://gist.github.com/robertleeplummerjr/1cc657191d34ecd0a324\nfunction binaryClosest (arr: ArrayLike<number>, val: number) {\n let high = arr.length - 1\n let low = 0\n let mid = 0\n let item = null\n let target = -1\n\n if (arr[high]! < val) {\n return high\n }\n\n while (low <= high) {\n mid = (low + high) >> 1\n item = arr[mid]!\n\n if (item > val) {\n high = mid - 1\n } else if (item < val) {\n target = mid\n low = mid + 1\n } else if (item === val) {\n return mid\n } else {\n return low\n }\n }\n\n return target\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"virtual.js","names":["useDisplay","useResizeObserver","computed","nextTick","onScopeDispose","ref","shallowRef","watch","watchEffect","clamp","debounce","getPropertyFromItem","IN_BROWSER","propsFactory","UP","DOWN","BUFFER_PX","makeVirtualProps","itemHeight","type","Number","String","default","itemKey","Array","Function","height","useVirtual","props","items","display","value","parseFloat","first","last","Math","ceil","parseInt","paddingTop","paddingBottom","containerRef","markerRef","markerOffset","resizeRef","contentRect","viewportHeight","document","documentElement","hasInitialRender","sizes","from","length","offsets","updateTime","targetScrollIndex","getSize","index","updateOffsets","start","performance","now","i","max","unwatch","v","offsetTop","immediate","calculateVisibleItems","window","requestAnimationFrame","scrollToIndex","clear","handleItemResize","prevHeight","prevMinHeight","min","calculateOffset","whole","floor","fraction","next","wholeOffset","nextOffset","calculateIndex","scrollTop","binaryClosest","lastScrollTop","scrollVelocity","lastScrollTime","val","oldVal","scrollTimeout","handleScroll","scrollTime","scrollDeltaT","sign","clearTimeout","setTimeout","handleScrollend","raf","cancelAnimationFrame","_calculateVisibleItems","direction","startPx","endPx","end","topOverflow","bottomOverflow","bufferOverflow","offset","computedItems","slice","map","item","_index","raw","key","deep","arr","high","low","mid","target"],"sources":["../../src/composables/virtual.ts"],"sourcesContent":["// Composables\nimport { useDisplay } from '@/composables/display'\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport { computed, nextTick, onScopeDispose, ref, shallowRef, watch, watchEffect } from 'vue'\nimport { clamp, debounce, getPropertyFromItem, IN_BROWSER, propsFactory } from '@/util'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { SelectItemKey } from '@/util'\n\nconst UP = -1\nconst DOWN = 1\n\n/** Determines how large each batch of items should be */\nconst BUFFER_PX = 100\n\ntype VirtualProps = {\n itemHeight: number | string | null | undefined\n itemKey: SelectItemKey\n height: number | string | undefined\n}\n\nexport const makeVirtualProps = propsFactory({\n itemHeight: {\n type: [Number, String],\n default: null,\n },\n itemKey: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: null,\n },\n height: [Number, String],\n}, 'virtual')\n\nexport function useVirtual <T> (props: VirtualProps, items: Ref<readonly T[]>) {\n const display = useDisplay()\n\n const itemHeight = shallowRef(0)\n watchEffect(() => {\n itemHeight.value = parseFloat(props.itemHeight || 0)\n })\n\n const first = shallowRef(0)\n const last = shallowRef(Math.ceil(\n // Assume 16px items filling the entire screen height if\n // not provided. This is probably incorrect but it minimises\n // the chance of ending up with empty space at the bottom.\n // The default value is set here to avoid poisoning getSize()\n (parseInt(props.height!) || display.height.value) / (itemHeight.value || 16)\n ) || 1)\n const paddingTop = shallowRef(0)\n const paddingBottom = shallowRef(0)\n\n /** The scrollable element */\n const containerRef = ref<HTMLElement>()\n /** An element marking the top of the scrollable area,\n * used to add an offset if there's padding or other elements above the virtual list */\n const markerRef = ref<HTMLElement>()\n /** markerRef's offsetTop, lazily evaluated */\n let markerOffset = 0\n\n const { resizeRef, contentRect } = useResizeObserver()\n watchEffect(() => {\n resizeRef.value = containerRef.value\n })\n const viewportHeight = computed(() => {\n return containerRef.value === document.documentElement\n ? display.height.value\n : contentRect.value?.height || parseInt(props.height!) || 0\n })\n /** All static elements have been rendered and we have an assumed item height */\n const hasInitialRender = computed(() => {\n return !!(containerRef.value && markerRef.value && viewportHeight.value && itemHeight.value)\n })\n\n let sizes = Array.from<number | null>({ length: items.value.length })\n let offsets = Array.from<number>({ length: items.value.length })\n const updateTime = shallowRef(0)\n let targetScrollIndex = -1\n\n function getSize (index: number) {\n return sizes[index] || itemHeight.value\n }\n\n const updateOffsets = debounce(() => {\n const start = performance.now()\n offsets[0] = 0\n const length = items.value.length\n for (let i = 1; i <= length - 1; i++) {\n offsets[i] = (offsets[i - 1] || 0) + getSize(i - 1)\n }\n updateTime.value = Math.max(updateTime.value, performance.now() - start)\n }, updateTime)\n\n const unwatch = watch(hasInitialRender, v => {\n if (!v) return\n // First render is complete, update offsets and visible\n // items in case our assumed item height was incorrect\n\n unwatch()\n markerOffset = markerRef.value!.offsetTop\n updateOffsets.immediate()\n calculateVisibleItems()\n\n if (!~targetScrollIndex) return\n\n nextTick(() => {\n IN_BROWSER && window.requestAnimationFrame(() => {\n scrollToIndex(targetScrollIndex)\n targetScrollIndex = -1\n })\n })\n })\n\n onScopeDispose(() => {\n updateOffsets.clear()\n })\n\n function handleItemResize (index: number, height: number) {\n const prevHeight = sizes[index]\n const prevMinHeight = itemHeight.value\n\n itemHeight.value = prevMinHeight ? Math.min(itemHeight.value, height) : height\n\n if (prevHeight !== height || prevMinHeight !== itemHeight.value) {\n sizes[index] = height\n updateOffsets()\n }\n }\n\n function calculateOffset (index: number) {\n index = clamp(index, 0, items.value.length - 1)\n const whole = Math.floor(index)\n const fraction = index % 1\n const next = whole + 1\n const wholeOffset = offsets[whole] || 0\n const nextOffset = offsets[next] || wholeOffset\n return wholeOffset + (nextOffset - wholeOffset) * fraction\n }\n\n function calculateIndex (scrollTop: number) {\n return binaryClosest(offsets, scrollTop)\n }\n\n let lastScrollTop = 0\n let scrollVelocity = 0\n let lastScrollTime = 0\n\n watch(viewportHeight, (val, oldVal) => {\n if (oldVal) {\n calculateVisibleItems()\n if (val < oldVal) {\n requestAnimationFrame(() => {\n scrollVelocity = 0\n calculateVisibleItems()\n })\n }\n }\n })\n\n let scrollTimeout = -1\n function handleScroll () {\n if (!containerRef.value || !markerRef.value) return\n\n const scrollTop = containerRef.value.scrollTop\n const scrollTime = performance.now()\n const scrollDeltaT = scrollTime - lastScrollTime\n\n if (scrollDeltaT > 500) {\n scrollVelocity = Math.sign(scrollTop - lastScrollTop)\n\n // Not super important, only update at the\n // start of a scroll sequence to avoid reflows\n markerOffset = markerRef.value.offsetTop\n } else {\n scrollVelocity = scrollTop - lastScrollTop\n }\n\n lastScrollTop = scrollTop\n lastScrollTime = scrollTime\n\n window.clearTimeout(scrollTimeout)\n scrollTimeout = window.setTimeout(handleScrollend, 500)\n\n calculateVisibleItems()\n }\n function handleScrollend () {\n if (!containerRef.value || !markerRef.value) return\n\n scrollVelocity = 0\n lastScrollTime = 0\n\n window.clearTimeout(scrollTimeout)\n calculateVisibleItems()\n }\n\n let raf = -1\n function calculateVisibleItems () {\n cancelAnimationFrame(raf)\n raf = requestAnimationFrame(_calculateVisibleItems)\n }\n function _calculateVisibleItems () {\n if (!containerRef.value || !viewportHeight.value || !itemHeight.value) return\n const scrollTop = lastScrollTop - markerOffset\n const direction = Math.sign(scrollVelocity)\n\n const startPx = Math.max(0, scrollTop - BUFFER_PX)\n const start = clamp(calculateIndex(startPx), 0, items.value.length)\n\n const endPx = scrollTop + viewportHeight.value + BUFFER_PX\n const end = clamp(calculateIndex(endPx) + 1, start + 1, items.value.length)\n\n if (\n // Only update the side we're scrolling towards,\n // the other side will be updated incidentally\n (direction !== UP || start < first.value) &&\n (direction !== DOWN || end > last.value)\n ) {\n const topOverflow = calculateOffset(first.value) - calculateOffset(start)\n const bottomOverflow = calculateOffset(end) - calculateOffset(last.value)\n const bufferOverflow = Math.max(topOverflow, bottomOverflow)\n\n if (bufferOverflow > BUFFER_PX) {\n first.value = start\n last.value = end\n } else {\n // Only update the side that's reached its limit if there's still buffer left\n if (start <= 0) first.value = start\n if (end >= items.value.length) last.value = end\n }\n }\n\n paddingTop.value = calculateOffset(first.value)\n paddingBottom.value = calculateOffset(items.value.length) - calculateOffset(last.value)\n }\n\n function scrollToIndex (index: number) {\n const offset = calculateOffset(index)\n if (!containerRef.value || (index && !offset)) {\n targetScrollIndex = index\n } else {\n containerRef.value.scrollTop = offset\n }\n }\n\n const computedItems = computed(() => {\n return items.value.slice(first.value, last.value).map((item, index) => {\n const _index = index + first.value\n return {\n raw: item,\n index: _index,\n key: getPropertyFromItem(item, props.itemKey, _index),\n }\n })\n })\n\n watch(items, () => {\n sizes = Array.from({ length: items.value.length })\n offsets = Array.from({ length: items.value.length })\n updateOffsets.immediate()\n calculateVisibleItems()\n }, { deep: 1 })\n\n return {\n calculateVisibleItems,\n containerRef,\n markerRef,\n computedItems,\n paddingTop,\n paddingBottom,\n scrollToIndex,\n handleScroll,\n handleScrollend,\n handleItemResize,\n }\n}\n\n// https://gist.github.com/robertleeplummerjr/1cc657191d34ecd0a324\nfunction binaryClosest (arr: ArrayLike<number>, val: number) {\n let high = arr.length - 1\n let low = 0\n let mid = 0\n let item = null\n let target = -1\n\n if (arr[high]! < val) {\n return high\n }\n\n while (low <= high) {\n mid = (low + high) >> 1\n item = arr[mid]!\n\n if (item > val) {\n high = mid - 1\n } else if (item < val) {\n target = mid\n low = mid + 1\n } else if (item === val) {\n return mid\n } else {\n return low\n }\n }\n\n return target\n}\n"],"mappings":"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","ignoreList":[]}
|
package/lib/entry-bundler.js
CHANGED
@@ -16,7 +16,7 @@ export const createVuetify = function () {
|
|
16
16
|
...options
|
17
17
|
});
|
18
18
|
};
|
19
|
-
export const version = "3.9.0-beta.1-dev.2025-
|
19
|
+
export const version = "3.9.0-beta.1-dev.2025-07-02";
|
20
20
|
createVuetify.version = version;
|
21
21
|
export { blueprints, components, directives };
|
22
22
|
export * from "./composables/index.js";
|
package/lib/framework.d.ts
CHANGED
@@ -2574,37 +2574,41 @@ declare module 'vue' {
|
|
2574
2574
|
}
|
2575
2575
|
export interface GlobalComponents {
|
2576
2576
|
VApp: typeof import('vuetify/components')['VApp']
|
2577
|
-
VAppBar: typeof import('vuetify/components')['VAppBar']
|
2578
|
-
VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
|
2579
|
-
VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
|
2580
2577
|
VAlert: typeof import('vuetify/components')['VAlert']
|
2581
2578
|
VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
|
2582
|
-
|
2583
|
-
VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
|
2579
|
+
VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
|
2584
2580
|
VAvatar: typeof import('vuetify/components')['VAvatar']
|
2585
|
-
|
2581
|
+
VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
|
2582
|
+
VBanner: typeof import('vuetify/components')['VBanner']
|
2583
|
+
VBannerActions: typeof import('vuetify/components')['VBannerActions']
|
2584
|
+
VBannerText: typeof import('vuetify/components')['VBannerText']
|
2586
2585
|
VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
|
2587
2586
|
VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
|
2588
2587
|
VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
|
2589
|
-
|
2590
|
-
|
2588
|
+
VBadge: typeof import('vuetify/components')['VBadge']
|
2589
|
+
VAppBar: typeof import('vuetify/components')['VAppBar']
|
2590
|
+
VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
|
2591
|
+
VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
|
2592
|
+
VBtn: typeof import('vuetify/components')['VBtn']
|
2593
|
+
VCarousel: typeof import('vuetify/components')['VCarousel']
|
2594
|
+
VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
|
2595
|
+
VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
|
2591
2596
|
VCard: typeof import('vuetify/components')['VCard']
|
2592
2597
|
VCardActions: typeof import('vuetify/components')['VCardActions']
|
2593
2598
|
VCardItem: typeof import('vuetify/components')['VCardItem']
|
2594
2599
|
VCardSubtitle: typeof import('vuetify/components')['VCardSubtitle']
|
2595
2600
|
VCardText: typeof import('vuetify/components')['VCardText']
|
2596
2601
|
VCardTitle: typeof import('vuetify/components')['VCardTitle']
|
2597
|
-
|
2598
|
-
|
2599
|
-
VCode: typeof import('vuetify/components')['VCode']
|
2602
|
+
VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
|
2603
|
+
VChipGroup: typeof import('vuetify/components')['VChipGroup']
|
2600
2604
|
VCheckbox: typeof import('vuetify/components')['VCheckbox']
|
2601
2605
|
VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
|
2602
|
-
|
2603
|
-
|
2604
|
-
VChipGroup: typeof import('vuetify/components')['VChipGroup']
|
2605
|
-
VBtn: typeof import('vuetify/components')['VBtn']
|
2606
|
+
VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
|
2607
|
+
VCode: typeof import('vuetify/components')['VCode']
|
2606
2608
|
VCounter: typeof import('vuetify/components')['VCounter']
|
2609
|
+
VChip: typeof import('vuetify/components')['VChip']
|
2607
2610
|
VCombobox: typeof import('vuetify/components')['VCombobox']
|
2611
|
+
VColorPicker: typeof import('vuetify/components')['VColorPicker']
|
2608
2612
|
VDatePicker: typeof import('vuetify/components')['VDatePicker']
|
2609
2613
|
VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
|
2610
2614
|
VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
|
@@ -2618,32 +2622,28 @@ declare module 'vue' {
|
|
2618
2622
|
VDataTableRow: typeof import('vuetify/components')['VDataTableRow']
|
2619
2623
|
VDataTableVirtual: typeof import('vuetify/components')['VDataTableVirtual']
|
2620
2624
|
VDataTableServer: typeof import('vuetify/components')['VDataTableServer']
|
2621
|
-
VDialog: typeof import('vuetify/components')['VDialog']
|
2622
2625
|
VDivider: typeof import('vuetify/components')['VDivider']
|
2623
|
-
|
2624
|
-
VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
|
2625
|
-
VFab: typeof import('vuetify/components')['VFab']
|
2626
|
+
VDialog: typeof import('vuetify/components')['VDialog']
|
2626
2627
|
VExpansionPanels: typeof import('vuetify/components')['VExpansionPanels']
|
2627
2628
|
VExpansionPanel: typeof import('vuetify/components')['VExpansionPanel']
|
2628
2629
|
VExpansionPanelText: typeof import('vuetify/components')['VExpansionPanelText']
|
2629
2630
|
VExpansionPanelTitle: typeof import('vuetify/components')['VExpansionPanelTitle']
|
2630
|
-
VFooter: typeof import('vuetify/components')['VFooter']
|
2631
|
-
VImg: typeof import('vuetify/components')['VImg']
|
2632
2631
|
VFileInput: typeof import('vuetify/components')['VFileInput']
|
2633
2632
|
VEmptyState: typeof import('vuetify/components')['VEmptyState']
|
2633
|
+
VFab: typeof import('vuetify/components')['VFab']
|
2634
|
+
VField: typeof import('vuetify/components')['VField']
|
2635
|
+
VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
|
2636
|
+
VFooter: typeof import('vuetify/components')['VFooter']
|
2637
|
+
VImg: typeof import('vuetify/components')['VImg']
|
2634
2638
|
VIcon: typeof import('vuetify/components')['VIcon']
|
2635
2639
|
VComponentIcon: typeof import('vuetify/components')['VComponentIcon']
|
2636
2640
|
VSvgIcon: typeof import('vuetify/components')['VSvgIcon']
|
2637
2641
|
VLigatureIcon: typeof import('vuetify/components')['VLigatureIcon']
|
2638
2642
|
VClassIcon: typeof import('vuetify/components')['VClassIcon']
|
2639
|
-
|
2640
|
-
VLabel: typeof import('vuetify/components')['VLabel']
|
2643
|
+
VInput: typeof import('vuetify/components')['VInput']
|
2641
2644
|
VItemGroup: typeof import('vuetify/components')['VItemGroup']
|
2642
2645
|
VItem: typeof import('vuetify/components')['VItem']
|
2643
|
-
|
2644
|
-
VKbd: typeof import('vuetify/components')['VKbd']
|
2645
|
-
VMenu: typeof import('vuetify/components')['VMenu']
|
2646
|
-
VMain: typeof import('vuetify/components')['VMain']
|
2646
|
+
VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
|
2647
2647
|
VList: typeof import('vuetify/components')['VList']
|
2648
2648
|
VListGroup: typeof import('vuetify/components')['VListGroup']
|
2649
2649
|
VListImg: typeof import('vuetify/components')['VListImg']
|
@@ -2653,44 +2653,43 @@ declare module 'vue' {
|
|
2653
2653
|
VListItemSubtitle: typeof import('vuetify/components')['VListItemSubtitle']
|
2654
2654
|
VListItemTitle: typeof import('vuetify/components')['VListItemTitle']
|
2655
2655
|
VListSubheader: typeof import('vuetify/components')['VListSubheader']
|
2656
|
+
VMain: typeof import('vuetify/components')['VMain']
|
2657
|
+
VLabel: typeof import('vuetify/components')['VLabel']
|
2656
2658
|
VMessages: typeof import('vuetify/components')['VMessages']
|
2657
|
-
|
2659
|
+
VMenu: typeof import('vuetify/components')['VMenu']
|
2660
|
+
VOtpInput: typeof import('vuetify/components')['VOtpInput']
|
2661
|
+
VKbd: typeof import('vuetify/components')['VKbd']
|
2658
2662
|
VNumberInput: typeof import('vuetify/components')['VNumberInput']
|
2659
|
-
VOverlay: typeof import('vuetify/components')['VOverlay']
|
2660
2663
|
VPagination: typeof import('vuetify/components')['VPagination']
|
2661
2664
|
VProgressCircular: typeof import('vuetify/components')['VProgressCircular']
|
2662
|
-
|
2665
|
+
VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
|
2663
2666
|
VProgressLinear: typeof import('vuetify/components')['VProgressLinear']
|
2664
|
-
|
2665
|
-
|
2667
|
+
VRadioGroup: typeof import('vuetify/components')['VRadioGroup']
|
2668
|
+
VOverlay: typeof import('vuetify/components')['VOverlay']
|
2666
2669
|
VSelect: typeof import('vuetify/components')['VSelect']
|
2667
2670
|
VSelectionControl: typeof import('vuetify/components')['VSelectionControl']
|
2668
|
-
|
2671
|
+
VRating: typeof import('vuetify/components')['VRating']
|
2669
2672
|
VSelectionControlGroup: typeof import('vuetify/components')['VSelectionControlGroup']
|
2670
2673
|
VSkeletonLoader: typeof import('vuetify/components')['VSkeletonLoader']
|
2671
2674
|
VSlideGroup: typeof import('vuetify/components')['VSlideGroup']
|
2672
2675
|
VSlideGroupItem: typeof import('vuetify/components')['VSlideGroupItem']
|
2673
|
-
|
2676
|
+
VSheet: typeof import('vuetify/components')['VSheet']
|
2674
2677
|
VSnackbar: typeof import('vuetify/components')['VSnackbar']
|
2675
|
-
|
2676
|
-
VSwitch: typeof import('vuetify/components')['VSwitch']
|
2678
|
+
VSlider: typeof import('vuetify/components')['VSlider']
|
2677
2679
|
VStepper: typeof import('vuetify/components')['VStepper']
|
2678
2680
|
VStepperActions: typeof import('vuetify/components')['VStepperActions']
|
2679
2681
|
VStepperHeader: typeof import('vuetify/components')['VStepperHeader']
|
2680
2682
|
VStepperItem: typeof import('vuetify/components')['VStepperItem']
|
2681
2683
|
VStepperWindow: typeof import('vuetify/components')['VStepperWindow']
|
2682
2684
|
VStepperWindowItem: typeof import('vuetify/components')['VStepperWindowItem']
|
2685
|
+
VSystemBar: typeof import('vuetify/components')['VSystemBar']
|
2683
2686
|
VTab: typeof import('vuetify/components')['VTab']
|
2684
2687
|
VTabs: typeof import('vuetify/components')['VTabs']
|
2685
2688
|
VTabsWindow: typeof import('vuetify/components')['VTabsWindow']
|
2686
2689
|
VTabsWindowItem: typeof import('vuetify/components')['VTabsWindowItem']
|
2687
|
-
VTextarea: typeof import('vuetify/components')['VTextarea']
|
2688
2690
|
VTextField: typeof import('vuetify/components')['VTextField']
|
2689
|
-
|
2690
|
-
|
2691
|
-
VTreeview: typeof import('vuetify/components')['VTreeview']
|
2692
|
-
VTreeviewItem: typeof import('vuetify/components')['VTreeviewItem']
|
2693
|
-
VTreeviewGroup: typeof import('vuetify/components')['VTreeviewGroup']
|
2691
|
+
VTable: typeof import('vuetify/components')['VTable']
|
2692
|
+
VTextarea: typeof import('vuetify/components')['VTextarea']
|
2694
2693
|
VToolbar: typeof import('vuetify/components')['VToolbar']
|
2695
2694
|
VToolbarTitle: typeof import('vuetify/components')['VToolbarTitle']
|
2696
2695
|
VToolbarItems: typeof import('vuetify/components')['VToolbarItems']
|
@@ -2698,35 +2697,37 @@ declare module 'vue' {
|
|
2698
2697
|
VTimePickerClock: typeof import('vuetify/components')['VTimePickerClock']
|
2699
2698
|
VTimePickerControls: typeof import('vuetify/components')['VTimePickerControls']
|
2700
2699
|
VTooltip: typeof import('vuetify/components')['VTooltip']
|
2700
|
+
VTreeview: typeof import('vuetify/components')['VTreeview']
|
2701
|
+
VTreeviewItem: typeof import('vuetify/components')['VTreeviewItem']
|
2702
|
+
VTreeviewGroup: typeof import('vuetify/components')['VTreeviewGroup']
|
2703
|
+
VTimeline: typeof import('vuetify/components')['VTimeline']
|
2704
|
+
VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
|
2701
2705
|
VWindow: typeof import('vuetify/components')['VWindow']
|
2702
2706
|
VWindowItem: typeof import('vuetify/components')['VWindowItem']
|
2703
|
-
|
2704
|
-
VBannerActions: typeof import('vuetify/components')['VBannerActions']
|
2705
|
-
VBannerText: typeof import('vuetify/components')['VBannerText']
|
2707
|
+
VSwitch: typeof import('vuetify/components')['VSwitch']
|
2706
2708
|
VConfirmEdit: typeof import('vuetify/components')['VConfirmEdit']
|
2707
2709
|
VDataIterator: typeof import('vuetify/components')['VDataIterator']
|
2708
2710
|
VDefaultsProvider: typeof import('vuetify/components')['VDefaultsProvider']
|
2709
2711
|
VForm: typeof import('vuetify/components')['VForm']
|
2712
|
+
VHover: typeof import('vuetify/components')['VHover']
|
2710
2713
|
VContainer: typeof import('vuetify/components')['VContainer']
|
2711
2714
|
VCol: typeof import('vuetify/components')['VCol']
|
2712
2715
|
VRow: typeof import('vuetify/components')['VRow']
|
2713
2716
|
VSpacer: typeof import('vuetify/components')['VSpacer']
|
2714
|
-
VHover: typeof import('vuetify/components')['VHover']
|
2715
2717
|
VLayout: typeof import('vuetify/components')['VLayout']
|
2716
2718
|
VLayoutItem: typeof import('vuetify/components')['VLayoutItem']
|
2717
2719
|
VLazy: typeof import('vuetify/components')['VLazy']
|
2718
2720
|
VLocaleProvider: typeof import('vuetify/components')['VLocaleProvider']
|
2719
2721
|
VNoSsr: typeof import('vuetify/components')['VNoSsr']
|
2720
|
-
VParallax: typeof import('vuetify/components')['VParallax']
|
2721
2722
|
VRadio: typeof import('vuetify/components')['VRadio']
|
2723
|
+
VParallax: typeof import('vuetify/components')['VParallax']
|
2722
2724
|
VRangeSlider: typeof import('vuetify/components')['VRangeSlider']
|
2723
2725
|
VResponsive: typeof import('vuetify/components')['VResponsive']
|
2724
2726
|
VSnackbarQueue: typeof import('vuetify/components')['VSnackbarQueue']
|
2725
2727
|
VSparkline: typeof import('vuetify/components')['VSparkline']
|
2726
2728
|
VSpeedDial: typeof import('vuetify/components')['VSpeedDial']
|
2727
|
-
VThemeProvider: typeof import('vuetify/components')['VThemeProvider']
|
2728
2729
|
VValidation: typeof import('vuetify/components')['VValidation']
|
2729
|
-
|
2730
|
+
VThemeProvider: typeof import('vuetify/components')['VThemeProvider']
|
2730
2731
|
VFabTransition: typeof import('vuetify/components')['VFabTransition']
|
2731
2732
|
VDialogBottomTransition: typeof import('vuetify/components')['VDialogBottomTransition']
|
2732
2733
|
VDialogTopTransition: typeof import('vuetify/components')['VDialogTopTransition']
|
@@ -2743,27 +2744,26 @@ declare module 'vue' {
|
|
2743
2744
|
VExpandTransition: typeof import('vuetify/components')['VExpandTransition']
|
2744
2745
|
VExpandXTransition: typeof import('vuetify/components')['VExpandXTransition']
|
2745
2746
|
VDialogTransition: typeof import('vuetify/components')['VDialogTransition']
|
2746
|
-
|
2747
|
-
VTable: typeof import('vuetify/components')['VTable']
|
2747
|
+
VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
|
2748
2748
|
VColorInput: typeof import('vuetify/labs/components')['VColorInput']
|
2749
|
-
VFileUpload: typeof import('vuetify/labs/components')['VFileUpload']
|
2750
|
-
VFileUploadItem: typeof import('vuetify/labs/components')['VFileUploadItem']
|
2751
|
-
VIconBtn: typeof import('vuetify/labs/components')['VIconBtn']
|
2752
|
-
VPicker: typeof import('vuetify/labs/components')['VPicker']
|
2753
|
-
VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
|
2754
|
-
VStepperVertical: typeof import('vuetify/labs/components')['VStepperVertical']
|
2755
|
-
VStepperVerticalItem: typeof import('vuetify/labs/components')['VStepperVerticalItem']
|
2756
|
-
VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
|
2757
|
-
VHotkey: typeof import('vuetify/labs/components')['VHotkey']
|
2758
2749
|
VCalendar: typeof import('vuetify/labs/components')['VCalendar']
|
2759
2750
|
VCalendarDay: typeof import('vuetify/labs/components')['VCalendarDay']
|
2760
2751
|
VCalendarHeader: typeof import('vuetify/labs/components')['VCalendarHeader']
|
2761
2752
|
VCalendarInterval: typeof import('vuetify/labs/components')['VCalendarInterval']
|
2762
2753
|
VCalendarIntervalEvent: typeof import('vuetify/labs/components')['VCalendarIntervalEvent']
|
2763
2754
|
VCalendarMonthDay: typeof import('vuetify/labs/components')['VCalendarMonthDay']
|
2755
|
+
VPicker: typeof import('vuetify/labs/components')['VPicker']
|
2756
|
+
VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
|
2757
|
+
VStepperVertical: typeof import('vuetify/labs/components')['VStepperVertical']
|
2758
|
+
VStepperVerticalItem: typeof import('vuetify/labs/components')['VStepperVerticalItem']
|
2759
|
+
VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
|
2760
|
+
VIconBtn: typeof import('vuetify/labs/components')['VIconBtn']
|
2761
|
+
VHotkey: typeof import('vuetify/labs/components')['VHotkey']
|
2764
2762
|
VDateInput: typeof import('vuetify/labs/components')['VDateInput']
|
2765
2763
|
VMaskInput: typeof import('vuetify/labs/components')['VMaskInput']
|
2766
2764
|
VPullToRefresh: typeof import('vuetify/labs/components')['VPullToRefresh']
|
2765
|
+
VFileUpload: typeof import('vuetify/labs/components')['VFileUpload']
|
2766
|
+
VFileUploadItem: typeof import('vuetify/labs/components')['VFileUploadItem']
|
2767
2767
|
}
|
2768
2768
|
export interface GlobalDirectives {
|
2769
2769
|
vClickOutside: typeof import('vuetify/directives')['ClickOutside']
|
package/lib/framework.js
CHANGED
@@ -109,7 +109,7 @@ export function createVuetify() {
|
|
109
109
|
};
|
110
110
|
});
|
111
111
|
}
|
112
|
-
export const version = "3.9.0-beta.1-dev.2025-
|
112
|
+
export const version = "3.9.0-beta.1-dev.2025-07-02";
|
113
113
|
createVuetify.version = version;
|
114
114
|
|
115
115
|
// Vue's inject() can only be used in setup
|