vuetify 3.4.10 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. package/dist/json/attributes.json +311 -219
  2. package/dist/json/importMap-labs.json +8 -8
  3. package/dist/json/importMap.json +130 -130
  4. package/dist/json/tags.json +23 -0
  5. package/dist/json/web-types.json +3456 -3108
  6. package/dist/vuetify-labs.css +2997 -2913
  7. package/dist/vuetify-labs.d.ts +7835 -1501
  8. package/dist/vuetify-labs.esm.js +15280 -15027
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +15279 -15025
  11. package/dist/vuetify-labs.min.css +2 -2
  12. package/dist/vuetify.css +937 -855
  13. package/dist/vuetify.d.ts +7876 -1542
  14. package/dist/vuetify.esm.js +15280 -15027
  15. package/dist/vuetify.esm.js.map +1 -1
  16. package/dist/vuetify.js +15279 -15025
  17. package/dist/vuetify.js.map +1 -1
  18. package/dist/vuetify.min.css +2 -2
  19. package/dist/vuetify.min.js +940 -911
  20. package/dist/vuetify.min.js.map +1 -1
  21. package/lib/blueprints/index.d.mts +11 -1
  22. package/lib/blueprints/md1.d.mts +11 -1
  23. package/lib/blueprints/md2.d.mts +11 -1
  24. package/lib/blueprints/md3.d.mts +11 -1
  25. package/lib/components/VAlert/VAlert.css +2 -2
  26. package/lib/components/VAlert/_variables.scss +2 -2
  27. package/lib/components/VAutocomplete/VAutocomplete.css +1 -1
  28. package/lib/components/VAutocomplete/VAutocomplete.mjs +6 -2
  29. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  30. package/lib/components/VAutocomplete/VAutocomplete.sass +1 -1
  31. package/lib/components/VAutocomplete/index.d.mts +1698 -0
  32. package/lib/components/VBanner/index.d.mts +4 -4
  33. package/lib/components/VBtn/VBtn.mjs +3 -1
  34. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  35. package/lib/components/VBtn/index.d.mts +21 -5
  36. package/lib/components/VCard/VCard.css +6 -2
  37. package/lib/components/VCard/VCard.sass +5 -0
  38. package/lib/components/VCard/VCardItem.mjs +23 -10
  39. package/lib/components/VCard/VCardItem.mjs.map +1 -1
  40. package/lib/components/VCard/_variables.scss +2 -2
  41. package/lib/components/VCarousel/index.d.mts +35 -14
  42. package/lib/components/VChipGroup/VChipGroup.css +3 -3
  43. package/lib/components/VChipGroup/VChipGroup.mjs +22 -16
  44. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  45. package/lib/components/VChipGroup/VChipGroup.sass +4 -3
  46. package/lib/components/VChipGroup/index.d.mts +118 -1
  47. package/lib/components/VCombobox/VCombobox.css +1 -1
  48. package/lib/components/VCombobox/VCombobox.mjs +9 -3
  49. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  50. package/lib/components/VCombobox/VCombobox.sass +1 -1
  51. package/lib/components/VCombobox/index.d.mts +1704 -0
  52. package/lib/components/VDataIterator/VDataIterator.mjs +2 -1
  53. package/lib/components/VDataIterator/VDataIterator.mjs.map +1 -1
  54. package/lib/components/VDataIterator/index.d.mts +7 -0
  55. package/lib/components/VDataTable/VDataTable.css +2 -1
  56. package/lib/components/VDataTable/VDataTable.mjs +4 -2
  57. package/lib/components/VDataTable/VDataTable.mjs.map +1 -1
  58. package/lib/components/VDataTable/VDataTable.sass +2 -1
  59. package/lib/components/VDataTable/VDataTableFooter.css +9 -4
  60. package/lib/components/VDataTable/VDataTableFooter.sass +9 -4
  61. package/lib/components/VDataTable/VDataTableHeaders.mjs +6 -2
  62. package/lib/components/VDataTable/VDataTableHeaders.mjs.map +1 -1
  63. package/lib/components/VDataTable/VDataTableVirtual.mjs +4 -3
  64. package/lib/components/VDataTable/VDataTableVirtual.mjs.map +1 -1
  65. package/lib/components/VDataTable/_variables.scss +5 -0
  66. package/lib/components/VDataTable/composables/headers.mjs +16 -12
  67. package/lib/components/VDataTable/composables/headers.mjs.map +1 -1
  68. package/lib/components/VDataTable/composables/paginate.mjs +6 -2
  69. package/lib/components/VDataTable/composables/paginate.mjs.map +1 -1
  70. package/lib/components/VDataTable/composables/sort.mjs +13 -3
  71. package/lib/components/VDataTable/composables/sort.mjs.map +1 -1
  72. package/lib/components/VDataTable/index.d.mts +92 -30
  73. package/lib/components/VDataTable/types.mjs.map +1 -1
  74. package/lib/components/VDatePicker/VDatePicker.mjs +1 -1
  75. package/lib/components/VDatePicker/VDatePicker.mjs.map +1 -1
  76. package/lib/components/VDatePicker/VDatePickerMonth.mjs +56 -11
  77. package/lib/components/VDatePicker/VDatePickerMonth.mjs.map +1 -1
  78. package/lib/components/VDatePicker/index.d.mts +34 -19
  79. package/lib/components/VFileInput/VFileInput.mjs +2 -2
  80. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  81. package/lib/components/VImg/VImg.css +3 -0
  82. package/lib/components/VImg/VImg.mjs +14 -3
  83. package/lib/components/VImg/VImg.mjs.map +1 -1
  84. package/lib/components/VImg/VImg.sass +3 -0
  85. package/lib/components/VImg/_variables.scss +3 -0
  86. package/lib/components/VImg/index.d.mts +21 -0
  87. package/lib/components/VList/VList.mjs +5 -1
  88. package/lib/components/VList/VList.mjs.map +1 -1
  89. package/lib/components/VList/VListItem.css +1 -0
  90. package/lib/components/VList/VListItem.sass +1 -0
  91. package/lib/components/VList/_variables.scss +1 -0
  92. package/lib/components/VList/index.d.mts +12 -0
  93. package/lib/components/VOverlay/locationStrategies.mjs +1 -3
  94. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  95. package/lib/components/VPagination/VPagination.mjs +10 -10
  96. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  97. package/lib/components/VPagination/index.d.mts +2 -2
  98. package/lib/components/VSelect/VSelect.mjs +5 -2
  99. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  100. package/lib/components/VSelect/index.d.mts +1689 -0
  101. package/lib/components/VSelectionControl/VSelectionControl.mjs +6 -3
  102. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  103. package/lib/components/VSlideGroup/index.d.mts +7 -7
  104. package/lib/components/VSlider/VSliderThumb.mjs +4 -3
  105. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  106. package/lib/components/VSlider/VSliderTrack.css +1 -1
  107. package/lib/components/VSlider/VSliderTrack.sass +1 -1
  108. package/lib/components/VSlider/_variables.scss +1 -0
  109. package/lib/components/VSwitch/VSwitch.css +22 -2
  110. package/lib/components/VSwitch/VSwitch.mjs +26 -3
  111. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  112. package/lib/components/VSwitch/VSwitch.sass +20 -2
  113. package/lib/components/VSwitch/index.d.mts +37 -6
  114. package/lib/components/VSystemBar/VSystemBar.css +2 -2
  115. package/lib/components/VSystemBar/_variables.scss +2 -2
  116. package/lib/components/VTabs/VTab.mjs +6 -6
  117. package/lib/components/VTabs/VTab.mjs.map +1 -1
  118. package/lib/components/VTabs/index.d.mts +1116 -17
  119. package/lib/components/VTimeline/VTimeline.css +1 -1
  120. package/lib/components/VTimeline/_variables.scss +1 -1
  121. package/lib/components/VToolbar/VToolbar.css +2 -2
  122. package/lib/components/VToolbar/_variables.scss +2 -2
  123. package/lib/components/VWindow/VWindow.mjs +2 -2
  124. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  125. package/lib/components/VWindow/index.d.mts +8 -8
  126. package/lib/components/index.d.mts +8508 -2196
  127. package/lib/composables/calendar.mjs +1 -1
  128. package/lib/composables/calendar.mjs.map +1 -1
  129. package/lib/composables/date/adapters/vuetify.mjs +1 -2
  130. package/lib/composables/date/adapters/vuetify.mjs.map +1 -1
  131. package/lib/composables/date/date.mjs +4 -4
  132. package/lib/composables/date/date.mjs.map +1 -1
  133. package/lib/composables/goto.mjs +105 -0
  134. package/lib/composables/goto.mjs.map +1 -0
  135. package/lib/composables/index.mjs +1 -0
  136. package/lib/composables/index.mjs.map +1 -1
  137. package/lib/composables/locale.mjs +47 -2
  138. package/lib/composables/locale.mjs.map +1 -1
  139. package/lib/composables/theme.mjs +2 -0
  140. package/lib/composables/theme.mjs.map +1 -1
  141. package/lib/entry-bundler.mjs +1 -1
  142. package/lib/entry-bundler.mjs.map +1 -1
  143. package/lib/framework.mjs +6 -2
  144. package/lib/framework.mjs.map +1 -1
  145. package/lib/index.d.mts +65 -43
  146. package/lib/labs/VCalendar/VCalendar.css +4 -2
  147. package/lib/labs/VCalendar/VCalendar.sass +4 -2
  148. package/lib/labs/VCalendar/_variables.scss +5 -0
  149. package/lib/locale/index.d.mts +124 -66
  150. package/lib/locale/index.mjs +1 -43
  151. package/lib/locale/index.mjs.map +1 -1
  152. package/lib/locale/km.mjs +101 -0
  153. package/lib/locale/km.mjs.map +1 -0
  154. package/lib/locale/sk.mjs +22 -22
  155. package/lib/locale/sk.mjs.map +1 -1
  156. package/lib/styles/main.css +126 -78
  157. package/lib/styles/settings/_utilities.scss +7 -0
  158. package/lib/util/helpers.mjs +1 -43
  159. package/lib/util/helpers.mjs.map +1 -1
  160. package/package.json +3 -2
  161. package/lib/components/VDatePicker/utils.mjs +0 -69
  162. package/lib/components/VDatePicker/utils.mjs.map +0 -1
  163. package/lib/util/dateTimeUtils.mjs +0 -115
  164. package/lib/util/dateTimeUtils.mjs.map +0 -1
@@ -61,7 +61,7 @@ export function useCalendar(props) {
61
61
  });
62
62
  function genDays(days, today) {
63
63
  return days.filter(date => {
64
- return props.weekdays.includes(date.getDay());
64
+ return props.weekdays.includes(adapter.toJsDate(date).getDay());
65
65
  }).map((date, index) => {
66
66
  const isoDate = adapter.toISO(date);
67
67
  const isAdjacent = !adapter.isSameMonth(date, month.value);
@@ -1 +1 @@
1
- {"version":3,"file":"calendar.mjs","names":["getWeek","useDate","useProxiedModel","computed","propsFactory","wrapInArray","makeCalendarProps","allowedDates","Array","Function","disabled","Boolean","displayValue","modelValue","month","Number","String","max","min","showAdjacentMonths","year","weekdays","type","default","useCalendar","props","adapter","model","v","date","value","length","isArray","undefined","getYear","startOfYear","setYear","getMonth","setMonth","weeksInMonth","weeks","getWeekArray","days","flat","daysInMonth","lastDay","week","day","push","addDays","genDays","today","filter","includes","getDay","map","index","isoDate","toISO","isAdjacent","isSameMonth","isStart","isSameDay","startOfMonth","isEnd","endOfMonth","isSame","formatted","format","isDisabled","isWeekStart","isWeekEnd","isToday","isHidden","isSelected","some","localized","daysInWeek","startOfWeek","weekNumbers","isAfter","d"],"sources":["../../src/composables/calendar.ts"],"sourcesContent":["// Composables\nimport { getWeek, useDate } from '@/composables/date/date'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed } from 'vue'\nimport { propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\nexport interface CalendarProps {\n allowedDates: unknown[] | ((date: unknown) => boolean)\n disabled: boolean\n displayValue: unknown\n modelValue: unknown[]\n max: unknown\n min: unknown\n showAdjacentMonths?: boolean\n month: number | string\n weekdays: number[]\n year: number | string\n\n 'onUpdate:modelValue': (value: unknown[]) => void\n 'onUpdate:month': (value: number) => void\n 'onUpdate:year': (value: number) => void\n}\n\n// Composables\nexport const makeCalendarProps = propsFactory({\n allowedDates: [Array, Function],\n disabled: Boolean,\n displayValue: null as any as PropType<unknown>,\n modelValue: Array as PropType<unknown[] | undefined>,\n month: [Number, String],\n max: null as any as PropType<unknown>,\n min: null as any as PropType<unknown>,\n showAdjacentMonths: Boolean,\n year: [Number, String],\n weekdays: {\n type: Array<number>,\n default: () => [0, 1, 2, 3, 4, 5, 6],\n },\n}, 'calendar')\n\nexport function useCalendar (props: CalendarProps) {\n const adapter = useDate()\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => wrapInArray(v),\n )\n const displayValue = computed(() => {\n if (props.displayValue) return adapter.date(props.displayValue)\n if (model.value.length > 0) return adapter.date(model.value[0])\n if (props.min) return adapter.date(props.min)\n if (Array.isArray(props.allowedDates)) return adapter.date(props.allowedDates[0])\n\n return adapter.date()\n })\n\n const year = useProxiedModel(\n props,\n 'year',\n undefined,\n v => {\n const value = v != null ? Number(v) : adapter.getYear(displayValue.value)\n\n return adapter.startOfYear(adapter.setYear(adapter.date(), value))\n },\n v => adapter.getYear(v)\n )\n\n const month = useProxiedModel(\n props,\n 'month',\n undefined,\n v => {\n const value = v != null ? Number(v) : adapter.getMonth(displayValue.value)\n const date = adapter.setYear(adapter.date(), adapter.getYear(year.value))\n\n return adapter.setMonth(date, value)\n },\n v => adapter.getMonth(v)\n )\n\n const weeksInMonth = computed<Date[][]>((): Date[][] => {\n const weeks = adapter.getWeekArray(month.value)\n\n const days = weeks.flat()\n\n // Make sure there's always 6 weeks in month (6 * 7 days)\n // But only do it if we're not hiding adjacent months?\n const daysInMonth = 6 * 7\n if (days.length < daysInMonth) {\n const lastDay = days[days.length - 1]\n\n let week = []\n for (let day = 1; day <= daysInMonth - days.length; day++) {\n week.push(adapter.addDays(lastDay, day))\n\n if (day % 7 === 0) {\n weeks.push(week)\n week = []\n }\n }\n }\n\n return weeks as Date[][]\n })\n\n function genDays (days: Date[], today: Date) {\n return days.filter(date => {\n return props.weekdays.includes(date.getDay())\n }).map((date, index) => {\n const isoDate = adapter.toISO(date)\n const isAdjacent = !adapter.isSameMonth(date, month.value)\n const isStart = adapter.isSameDay(date, adapter.startOfMonth(month.value))\n const isEnd = adapter.isSameDay(date, adapter.endOfMonth(month.value))\n const isSame = adapter.isSameDay(date, month.value)\n\n return {\n date,\n isoDate,\n formatted: adapter.format(date, 'keyboardDate'),\n year: adapter.getYear(date),\n month: adapter.getMonth(date),\n isDisabled: isDisabled(date),\n isWeekStart: index % 7 === 0,\n isWeekEnd: index % 7 === 6,\n isToday: adapter.isSameDay(date, today),\n isAdjacent,\n isHidden: isAdjacent && !props.showAdjacentMonths,\n isStart,\n isSelected: model.value.some(value => adapter.isSameDay(date, value)),\n isEnd,\n isSame,\n localized: adapter.format(date, 'dayOfMonth'),\n }\n })\n }\n\n const daysInWeek = computed(() => {\n const lastDay = adapter.startOfWeek(model.value)\n const week = []\n for (let day = 0; day <= 6; day++) {\n week.push(adapter.addDays(lastDay, day))\n }\n\n const days = week as Date[]\n\n const today = adapter.date() as Date\n\n return genDays(days, today)\n })\n\n const daysInMonth = computed(() => {\n const days = weeksInMonth.value.flat()\n const today = adapter.date() as Date\n\n return genDays(days, today)\n })\n\n const weekNumbers = computed(() => {\n return weeksInMonth.value.map(week => {\n return week.length ? getWeek(adapter, week[0]) : null\n })\n })\n\n function isDisabled (value: unknown) {\n if (props.disabled) return true\n\n const date = adapter.date(value)\n\n if (props.min && adapter.isAfter(adapter.date(props.min), date)) return true\n if (props.max && adapter.isAfter(date, adapter.date(props.max))) return true\n\n if (Array.isArray(props.allowedDates) && props.allowedDates.length > 0) {\n return !props.allowedDates.some(d => adapter.isSameDay(adapter.date(d), date))\n }\n\n if (typeof props.allowedDates === 'function') {\n return !props.allowedDates(date)\n }\n\n return false\n }\n\n return {\n displayValue,\n daysInMonth,\n daysInWeek,\n genDays,\n model,\n weeksInMonth,\n weekNumbers,\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"calendar.mjs","names":["getWeek","useDate","useProxiedModel","computed","propsFactory","wrapInArray","makeCalendarProps","allowedDates","Array","Function","disabled","Boolean","displayValue","modelValue","month","Number","String","max","min","showAdjacentMonths","year","weekdays","type","default","useCalendar","props","adapter","model","v","date","value","length","isArray","undefined","getYear","startOfYear","setYear","getMonth","setMonth","weeksInMonth","weeks","getWeekArray","days","flat","daysInMonth","lastDay","week","day","push","addDays","genDays","today","filter","includes","toJsDate","getDay","map","index","isoDate","toISO","isAdjacent","isSameMonth","isStart","isSameDay","startOfMonth","isEnd","endOfMonth","isSame","formatted","format","isDisabled","isWeekStart","isWeekEnd","isToday","isHidden","isSelected","some","localized","daysInWeek","startOfWeek","weekNumbers","isAfter","d"],"sources":["../../src/composables/calendar.ts"],"sourcesContent":["// Composables\nimport { getWeek, useDate } from '@/composables/date/date'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed } from 'vue'\nimport { propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\nexport interface CalendarProps {\n allowedDates: unknown[] | ((date: unknown) => boolean)\n disabled: boolean\n displayValue: unknown\n modelValue: unknown[]\n max: unknown\n min: unknown\n showAdjacentMonths?: boolean\n month: number | string\n weekdays: number[]\n year: number | string\n\n 'onUpdate:modelValue': (value: unknown[]) => void\n 'onUpdate:month': (value: number) => void\n 'onUpdate:year': (value: number) => void\n}\n\n// Composables\nexport const makeCalendarProps = propsFactory({\n allowedDates: [Array, Function],\n disabled: Boolean,\n displayValue: null as any as PropType<unknown>,\n modelValue: Array as PropType<unknown[] | undefined>,\n month: [Number, String],\n max: null as any as PropType<unknown>,\n min: null as any as PropType<unknown>,\n showAdjacentMonths: Boolean,\n year: [Number, String],\n weekdays: {\n type: Array<number>,\n default: () => [0, 1, 2, 3, 4, 5, 6],\n },\n}, 'calendar')\n\nexport function useCalendar (props: CalendarProps) {\n const adapter = useDate()\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => wrapInArray(v),\n )\n const displayValue = computed(() => {\n if (props.displayValue) return adapter.date(props.displayValue)\n if (model.value.length > 0) return adapter.date(model.value[0])\n if (props.min) return adapter.date(props.min)\n if (Array.isArray(props.allowedDates)) return adapter.date(props.allowedDates[0])\n\n return adapter.date()\n })\n\n const year = useProxiedModel(\n props,\n 'year',\n undefined,\n v => {\n const value = v != null ? Number(v) : adapter.getYear(displayValue.value)\n\n return adapter.startOfYear(adapter.setYear(adapter.date(), value))\n },\n v => adapter.getYear(v)\n )\n\n const month = useProxiedModel(\n props,\n 'month',\n undefined,\n v => {\n const value = v != null ? Number(v) : adapter.getMonth(displayValue.value)\n const date = adapter.setYear(adapter.date(), adapter.getYear(year.value))\n\n return adapter.setMonth(date, value)\n },\n v => adapter.getMonth(v)\n )\n\n const weeksInMonth = computed<Date[][]>((): Date[][] => {\n const weeks = adapter.getWeekArray(month.value)\n\n const days = weeks.flat()\n\n // Make sure there's always 6 weeks in month (6 * 7 days)\n // But only do it if we're not hiding adjacent months?\n const daysInMonth = 6 * 7\n if (days.length < daysInMonth) {\n const lastDay = days[days.length - 1]\n\n let week = []\n for (let day = 1; day <= daysInMonth - days.length; day++) {\n week.push(adapter.addDays(lastDay, day))\n\n if (day % 7 === 0) {\n weeks.push(week)\n week = []\n }\n }\n }\n\n return weeks as Date[][]\n })\n\n function genDays (days: Date[], today: Date) {\n return days.filter(date => {\n return props.weekdays.includes(adapter.toJsDate(date).getDay())\n }).map((date, index) => {\n const isoDate = adapter.toISO(date)\n const isAdjacent = !adapter.isSameMonth(date, month.value)\n const isStart = adapter.isSameDay(date, adapter.startOfMonth(month.value))\n const isEnd = adapter.isSameDay(date, adapter.endOfMonth(month.value))\n const isSame = adapter.isSameDay(date, month.value)\n\n return {\n date,\n isoDate,\n formatted: adapter.format(date, 'keyboardDate'),\n year: adapter.getYear(date),\n month: adapter.getMonth(date),\n isDisabled: isDisabled(date),\n isWeekStart: index % 7 === 0,\n isWeekEnd: index % 7 === 6,\n isToday: adapter.isSameDay(date, today),\n isAdjacent,\n isHidden: isAdjacent && !props.showAdjacentMonths,\n isStart,\n isSelected: model.value.some(value => adapter.isSameDay(date, value)),\n isEnd,\n isSame,\n localized: adapter.format(date, 'dayOfMonth'),\n }\n })\n }\n\n const daysInWeek = computed(() => {\n const lastDay = adapter.startOfWeek(model.value)\n const week = []\n for (let day = 0; day <= 6; day++) {\n week.push(adapter.addDays(lastDay, day))\n }\n\n const days = week as Date[]\n\n const today = adapter.date() as Date\n\n return genDays(days, today)\n })\n\n const daysInMonth = computed(() => {\n const days = weeksInMonth.value.flat()\n const today = adapter.date() as Date\n\n return genDays(days, today)\n })\n\n const weekNumbers = computed(() => {\n return weeksInMonth.value.map(week => {\n return week.length ? getWeek(adapter, week[0]) : null\n })\n })\n\n function isDisabled (value: unknown) {\n if (props.disabled) return true\n\n const date = adapter.date(value)\n\n if (props.min && adapter.isAfter(adapter.date(props.min), date)) return true\n if (props.max && adapter.isAfter(date, adapter.date(props.max))) return true\n\n if (Array.isArray(props.allowedDates) && props.allowedDates.length > 0) {\n return !props.allowedDates.some(d => adapter.isSameDay(adapter.date(d), date))\n }\n\n if (typeof props.allowedDates === 'function') {\n return !props.allowedDates(date)\n }\n\n return false\n }\n\n return {\n displayValue,\n daysInMonth,\n daysInWeek,\n genDays,\n model,\n weeksInMonth,\n weekNumbers,\n }\n}\n"],"mappings":"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"}
@@ -237,10 +237,9 @@ function getWeekdays(locale) {
237
237
  return createRange(7).map(i => {
238
238
  const weekday = new Date(sundayJanuarySecond2000);
239
239
  weekday.setDate(sundayJanuarySecond2000.getDate() + daysFromSunday + i);
240
- const formattedDay = new Intl.DateTimeFormat(locale, {
240
+ return new Intl.DateTimeFormat(locale, {
241
241
  weekday: 'short'
242
242
  }).format(weekday);
243
- return formattedDay.charAt(0).toUpperCase() + formattedDay.slice(1);
244
243
  });
245
244
  }
246
245
  function format(value, formatString, locale, formats) {
@@ -1 +1 @@
1
- {"version":3,"file":"vuetify.mjs","names":["createRange","padStart","firstDay","AD","AE","AF","AG","AI","AL","AM","AN","AR","AS","AT","AU","AX","AZ","BA","BD","BE","BG","BH","BM","BN","BR","BS","BT","BW","BY","BZ","CA","CH","CL","CM","CN","CO","CR","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","ES","ET","FI","FJ","FO","FR","GB","GE","GF","GP","GR","GT","GU","HK","HN","HR","HU","ID","IE","IL","IN","IQ","IR","IS","IT","JM","JO","JP","KE","KG","KH","KR","KW","KZ","LA","LB","LI","LK","LT","LU","LV","LY","MC","MD","ME","MH","MK","MM","MN","MO","MQ","MT","MV","MX","MY","MZ","NI","NL","NO","NP","NZ","OM","PA","PE","PH","PK","PL","PR","PT","PY","QA","RE","RO","RS","RU","SA","SD","SE","SG","SI","SK","SM","SV","SY","TH","TJ","TM","TR","TT","TW","UA","UM","US","UY","UZ","VA","VE","VI","VN","WS","XK","YE","ZA","ZW","getWeekArray","date","locale","weeks","currentWeek","firstDayOfMonth","startOfMonth","lastDayOfMonth","endOfMonth","firstDayWeekIndex","getDay","slice","toUpperCase","lastDayWeekIndex","i","adjacentDay","Date","setDate","getDate","push","day","getFullYear","getMonth","length","startOfWeek","d","endOfWeek","parseLocalDate","value","parts","split","map","Number","_YYYMMDD","parsed","test","parse","isNaN","sundayJanuarySecond2000","getWeekdays","daysFromSunday","weekday","formattedDay","Intl","DateTimeFormat","format","charAt","formatString","formats","newDate","customFormat","options","month","year","hour","hour12","timeZone","timeZoneName","toISO","adapter","toJsDate","String","parseISO","addMinutes","amount","setMinutes","getMinutes","addHours","setHours","getHours","addDays","addWeeks","addMonths","setMonth","getYear","getNextMonth","startOfYear","endOfYear","isWithinRange","range","isAfter","isBefore","isValid","getTime","comparing","isEqual","isSameDay","isSameMonth","getDiff","unit","c","Math","floor","count","setYear","setFullYear","startOfDay","endOfDay","VuetifyDateAdapter","constructor"],"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\nconst firstDay: Record<string, number> = {\n '001': 1,\n AD: 1,\n AE: 6,\n AF: 6,\n AG: 0,\n AI: 1,\n AL: 1,\n AM: 1,\n AN: 1,\n AR: 1,\n AS: 0,\n AT: 1,\n AU: 1,\n AX: 1,\n AZ: 1,\n BA: 1,\n BD: 0,\n BE: 1,\n BG: 1,\n BH: 6,\n BM: 1,\n BN: 1,\n BR: 0,\n BS: 0,\n BT: 0,\n BW: 0,\n BY: 1,\n BZ: 0,\n CA: 0,\n CH: 1,\n CL: 1,\n CM: 1,\n CN: 1,\n CO: 0,\n CR: 1,\n CY: 1,\n CZ: 1,\n DE: 1,\n DJ: 6,\n DK: 1,\n DM: 0,\n DO: 0,\n DZ: 6,\n EC: 1,\n EE: 1,\n EG: 6,\n ES: 1,\n ET: 0,\n FI: 1,\n FJ: 1,\n FO: 1,\n FR: 1,\n GB: 1,\n 'GB-alt-variant': 0,\n GE: 1,\n GF: 1,\n GP: 1,\n GR: 1,\n GT: 0,\n GU: 0,\n HK: 0,\n HN: 0,\n HR: 1,\n HU: 1,\n ID: 0,\n IE: 1,\n IL: 0,\n IN: 0,\n IQ: 6,\n IR: 6,\n IS: 1,\n IT: 1,\n JM: 0,\n JO: 6,\n JP: 0,\n KE: 0,\n KG: 1,\n KH: 0,\n KR: 0,\n KW: 6,\n KZ: 1,\n LA: 0,\n LB: 1,\n LI: 1,\n LK: 1,\n LT: 1,\n LU: 1,\n LV: 1,\n LY: 6,\n MC: 1,\n MD: 1,\n ME: 1,\n MH: 0,\n MK: 1,\n MM: 0,\n MN: 1,\n MO: 0,\n MQ: 1,\n MT: 0,\n MV: 5,\n MX: 0,\n MY: 1,\n MZ: 0,\n NI: 0,\n NL: 1,\n NO: 1,\n NP: 0,\n NZ: 1,\n OM: 6,\n PA: 0,\n PE: 0,\n PH: 0,\n PK: 0,\n PL: 1,\n PR: 0,\n PT: 0,\n PY: 0,\n QA: 6,\n RE: 1,\n RO: 1,\n RS: 1,\n RU: 1,\n SA: 0,\n SD: 6,\n SE: 1,\n SG: 0,\n SI: 1,\n SK: 1,\n SM: 1,\n SV: 0,\n SY: 6,\n TH: 0,\n TJ: 1,\n TM: 1,\n TR: 1,\n TT: 0,\n TW: 0,\n UA: 1,\n UM: 0,\n US: 0,\n UY: 1,\n UZ: 1,\n VA: 1,\n VE: 0,\n VI: 0,\n VN: 1,\n WS: 0,\n XK: 1,\n YE: 0,\n ZA: 0,\n ZW: 0,\n}\n\nfunction getWeekArray (date: Date, locale: string) {\n const weeks = []\n let currentWeek = []\n const firstDayOfMonth = startOfMonth(date)\n const lastDayOfMonth = endOfMonth(date)\n const firstDayWeekIndex = (firstDayOfMonth.getDay() - firstDay[locale.slice(-2).toUpperCase()] + 7) % 7\n const lastDayWeekIndex = (lastDayOfMonth.getDay() - firstDay[locale.slice(-2).toUpperCase()] + 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) {\n const d = new Date(date)\n while (d.getDay() !== 0) {\n d.setDate(d.getDate() - 1)\n }\n return d\n}\n\nfunction endOfWeek (date: Date) {\n const d = new Date(date)\n while (d.getDay() !== 6) {\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\n// The number of letters returned by getWeekday() varies by date library\n// So we've opted for 3-letter abbreviations for all locales\nfunction getWeekdays (locale: string) {\n const daysFromSunday = firstDay[locale.slice(-2).toUpperCase()]\n\n return createRange(7).map(i => {\n const weekday = new Date(sundayJanuarySecond2000)\n weekday.setDate(sundayJanuarySecond2000.getDate() + daysFromSunday + i)\n const formattedDay = new Intl.DateTimeFormat(locale, { weekday: 'short' }).format(weekday)\n return formattedDay.charAt(0).toUpperCase() + formattedDay.slice(1)\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 'fullDateWithWeekday':\n options = { weekday: 'long', day: 'numeric', month: 'long', year: 'numeric' }\n break\n case 'hours12h':\n options = { hour: 'numeric', hour12: true }\n break\n case 'normalDateWithWeekday':\n options = { weekday: 'short', day: 'numeric', month: 'short' }\n break\n case 'keyboardDate':\n options = { day: '2-digit', month: '2-digit', year: 'numeric' }\n break\n case 'monthAndDate':\n options = { month: 'long', day: 'numeric' }\n break\n case 'monthAndYear':\n options = { month: 'long', year: 'numeric' }\n break\n case 'month':\n options = { month: 'long' }\n break\n case 'monthShort':\n options = { month: 'short' }\n break\n case 'dayOfMonth':\n options = { day: 'numeric' }\n break\n case 'shortDate':\n options = { year: '2-digit', month: 'numeric', day: 'numeric' }\n break\n case 'weekdayShort':\n options = { weekday: 'short' }\n break\n case 'year':\n options = { year: 'numeric' }\n break\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.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 getNextMonth (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 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 getDiff (date: Date, comparing: Date | string, unit?: string) {\n const d = new Date(date)\n const c = new Date(comparing)\n\n if (unit === 'month') {\n return d.getMonth() - c.getMonth() + (d.getFullYear() - c.getFullYear()) * 12\n }\n\n return Math.floor((d.getTime() - c.getTime()) / (1000 * 60 * 60 * 24))\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 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())\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) {\n return getWeekArray(date, this.locale)\n }\n\n startOfWeek (date: Date): Date {\n return startOfWeek(date)\n }\n\n endOfWeek (date: Date): Date {\n return endOfWeek(date)\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 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 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 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 () {\n return getWeekdays(this.locale)\n }\n\n getYear (date: Date) {\n return getYear(date)\n }\n\n getMonth (date: Date) {\n return getMonth(date)\n }\n\n getNextMonth (date: Date) {\n return getNextMonth(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,mCAE9B;AAKA,MAAMC,QAAgC,GAAG;EACvC,KAAK,EAAE,CAAC;EACRC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACL,gBAAgB,EAAE,CAAC;EACnBC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,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"}
1
+ {"version":3,"file":"vuetify.mjs","names":["createRange","padStart","firstDay","AD","AE","AF","AG","AI","AL","AM","AN","AR","AS","AT","AU","AX","AZ","BA","BD","BE","BG","BH","BM","BN","BR","BS","BT","BW","BY","BZ","CA","CH","CL","CM","CN","CO","CR","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","ES","ET","FI","FJ","FO","FR","GB","GE","GF","GP","GR","GT","GU","HK","HN","HR","HU","ID","IE","IL","IN","IQ","IR","IS","IT","JM","JO","JP","KE","KG","KH","KR","KW","KZ","LA","LB","LI","LK","LT","LU","LV","LY","MC","MD","ME","MH","MK","MM","MN","MO","MQ","MT","MV","MX","MY","MZ","NI","NL","NO","NP","NZ","OM","PA","PE","PH","PK","PL","PR","PT","PY","QA","RE","RO","RS","RU","SA","SD","SE","SG","SI","SK","SM","SV","SY","TH","TJ","TM","TR","TT","TW","UA","UM","US","UY","UZ","VA","VE","VI","VN","WS","XK","YE","ZA","ZW","getWeekArray","date","locale","weeks","currentWeek","firstDayOfMonth","startOfMonth","lastDayOfMonth","endOfMonth","firstDayWeekIndex","getDay","slice","toUpperCase","lastDayWeekIndex","i","adjacentDay","Date","setDate","getDate","push","day","getFullYear","getMonth","length","startOfWeek","d","endOfWeek","parseLocalDate","value","parts","split","map","Number","_YYYMMDD","parsed","test","parse","isNaN","sundayJanuarySecond2000","getWeekdays","daysFromSunday","weekday","Intl","DateTimeFormat","format","formatString","formats","newDate","customFormat","options","month","year","hour","hour12","timeZone","timeZoneName","toISO","adapter","toJsDate","String","parseISO","addMinutes","amount","setMinutes","getMinutes","addHours","setHours","getHours","addDays","addWeeks","addMonths","setMonth","getYear","getNextMonth","startOfYear","endOfYear","isWithinRange","range","isAfter","isBefore","isValid","getTime","comparing","isEqual","isSameDay","isSameMonth","getDiff","unit","c","Math","floor","count","setYear","setFullYear","startOfDay","endOfDay","VuetifyDateAdapter","constructor"],"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\nconst firstDay: Record<string, number> = {\n '001': 1,\n AD: 1,\n AE: 6,\n AF: 6,\n AG: 0,\n AI: 1,\n AL: 1,\n AM: 1,\n AN: 1,\n AR: 1,\n AS: 0,\n AT: 1,\n AU: 1,\n AX: 1,\n AZ: 1,\n BA: 1,\n BD: 0,\n BE: 1,\n BG: 1,\n BH: 6,\n BM: 1,\n BN: 1,\n BR: 0,\n BS: 0,\n BT: 0,\n BW: 0,\n BY: 1,\n BZ: 0,\n CA: 0,\n CH: 1,\n CL: 1,\n CM: 1,\n CN: 1,\n CO: 0,\n CR: 1,\n CY: 1,\n CZ: 1,\n DE: 1,\n DJ: 6,\n DK: 1,\n DM: 0,\n DO: 0,\n DZ: 6,\n EC: 1,\n EE: 1,\n EG: 6,\n ES: 1,\n ET: 0,\n FI: 1,\n FJ: 1,\n FO: 1,\n FR: 1,\n GB: 1,\n 'GB-alt-variant': 0,\n GE: 1,\n GF: 1,\n GP: 1,\n GR: 1,\n GT: 0,\n GU: 0,\n HK: 0,\n HN: 0,\n HR: 1,\n HU: 1,\n ID: 0,\n IE: 1,\n IL: 0,\n IN: 0,\n IQ: 6,\n IR: 6,\n IS: 1,\n IT: 1,\n JM: 0,\n JO: 6,\n JP: 0,\n KE: 0,\n KG: 1,\n KH: 0,\n KR: 0,\n KW: 6,\n KZ: 1,\n LA: 0,\n LB: 1,\n LI: 1,\n LK: 1,\n LT: 1,\n LU: 1,\n LV: 1,\n LY: 6,\n MC: 1,\n MD: 1,\n ME: 1,\n MH: 0,\n MK: 1,\n MM: 0,\n MN: 1,\n MO: 0,\n MQ: 1,\n MT: 0,\n MV: 5,\n MX: 0,\n MY: 1,\n MZ: 0,\n NI: 0,\n NL: 1,\n NO: 1,\n NP: 0,\n NZ: 1,\n OM: 6,\n PA: 0,\n PE: 0,\n PH: 0,\n PK: 0,\n PL: 1,\n PR: 0,\n PT: 0,\n PY: 0,\n QA: 6,\n RE: 1,\n RO: 1,\n RS: 1,\n RU: 1,\n SA: 0,\n SD: 6,\n SE: 1,\n SG: 0,\n SI: 1,\n SK: 1,\n SM: 1,\n SV: 0,\n SY: 6,\n TH: 0,\n TJ: 1,\n TM: 1,\n TR: 1,\n TT: 0,\n TW: 0,\n UA: 1,\n UM: 0,\n US: 0,\n UY: 1,\n UZ: 1,\n VA: 1,\n VE: 0,\n VI: 0,\n VN: 1,\n WS: 0,\n XK: 1,\n YE: 0,\n ZA: 0,\n ZW: 0,\n}\n\nfunction getWeekArray (date: Date, locale: string) {\n const weeks = []\n let currentWeek = []\n const firstDayOfMonth = startOfMonth(date)\n const lastDayOfMonth = endOfMonth(date)\n const firstDayWeekIndex = (firstDayOfMonth.getDay() - firstDay[locale.slice(-2).toUpperCase()] + 7) % 7\n const lastDayWeekIndex = (lastDayOfMonth.getDay() - firstDay[locale.slice(-2).toUpperCase()] + 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) {\n const d = new Date(date)\n while (d.getDay() !== 0) {\n d.setDate(d.getDate() - 1)\n }\n return d\n}\n\nfunction endOfWeek (date: Date) {\n const d = new Date(date)\n while (d.getDay() !== 6) {\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\n// The number of letters returned by getWeekday() varies by date library\n// So we've opted for 3-letter abbreviations for all locales\nfunction getWeekdays (locale: string) {\n const daysFromSunday = firstDay[locale.slice(-2).toUpperCase()]\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: 'short' }).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 'fullDateWithWeekday':\n options = { weekday: 'long', day: 'numeric', month: 'long', year: 'numeric' }\n break\n case 'hours12h':\n options = { hour: 'numeric', hour12: true }\n break\n case 'normalDateWithWeekday':\n options = { weekday: 'short', day: 'numeric', month: 'short' }\n break\n case 'keyboardDate':\n options = { day: '2-digit', month: '2-digit', year: 'numeric' }\n break\n case 'monthAndDate':\n options = { month: 'long', day: 'numeric' }\n break\n case 'monthAndYear':\n options = { month: 'long', year: 'numeric' }\n break\n case 'month':\n options = { month: 'long' }\n break\n case 'monthShort':\n options = { month: 'short' }\n break\n case 'dayOfMonth':\n options = { day: 'numeric' }\n break\n case 'shortDate':\n options = { year: '2-digit', month: 'numeric', day: 'numeric' }\n break\n case 'weekdayShort':\n options = { weekday: 'short' }\n break\n case 'year':\n options = { year: 'numeric' }\n break\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.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 getNextMonth (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 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 getDiff (date: Date, comparing: Date | string, unit?: string) {\n const d = new Date(date)\n const c = new Date(comparing)\n\n if (unit === 'month') {\n return d.getMonth() - c.getMonth() + (d.getFullYear() - c.getFullYear()) * 12\n }\n\n return Math.floor((d.getTime() - c.getTime()) / (1000 * 60 * 60 * 24))\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 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())\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) {\n return getWeekArray(date, this.locale)\n }\n\n startOfWeek (date: Date): Date {\n return startOfWeek(date)\n }\n\n endOfWeek (date: Date): Date {\n return endOfWeek(date)\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 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 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 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 () {\n return getWeekdays(this.locale)\n }\n\n getYear (date: Date) {\n return getYear(date)\n }\n\n getMonth (date: Date) {\n return getMonth(date)\n }\n\n getNextMonth (date: Date) {\n return getNextMonth(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,mCAE9B;AAKA,MAAMC,QAAgC,GAAG;EACvC,KAAK,EAAE,CAAC;EACRC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACL,gBAAgB,EAAE,CAAC;EACnBC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,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"}
@@ -81,13 +81,13 @@ export function useDate() {
81
81
  // https://stackoverflow.com/questions/274861/how-do-i-calculate-the-week-number-given-a-date/275024#275024
82
82
  export function getWeek(adapter, value) {
83
83
  const date = adapter.toJsDate(value);
84
- let year = adapter.getYear(date);
85
- let d1w1 = adapter.startOfYear(date);
84
+ let year = date.getFullYear();
85
+ let d1w1 = new Date(year, 0, 1);
86
86
  if (date < d1w1) {
87
87
  year = year - 1;
88
- d1w1 = adapter.startOfYear(adapter.setYear(date, year));
88
+ d1w1 = new Date(year, 0, 1);
89
89
  } else {
90
- const tv = adapter.startOfYear(adapter.setYear(date, year + 1));
90
+ const tv = new Date(year + 1, 0, 1);
91
91
  if (date >= tv) {
92
92
  year = year + 1;
93
93
  d1w1 = tv;
@@ -1 +1 @@
1
- {"version":3,"file":"date.mjs","names":["useLocale","inject","reactive","watch","mergeDeep","VuetifyDateAdapter","DateOptionsSymbol","Symbol","for","DateAdapterSymbol","createDate","options","locale","_options","adapter","af","bg","ca","ckb","cs","de","el","en","et","fa","fi","hr","hu","he","id","it","ja","ko","lv","lt","nl","no","pl","pt","ro","ru","sk","sl","srCyrl","srLatn","sv","th","tr","az","uk","vi","zhHans","zhHant","instance","createInstance","current","value","formats","useDate","Error","getWeek","date","toJsDate","year","getYear","d1w1","startOfYear","setYear","tv","diffTime","Math","abs","getTime","diffDays","ceil","floor"],"sources":["../../../src/composables/date/date.ts"],"sourcesContent":["// Composables\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { inject, reactive, watch } from 'vue'\nimport { mergeDeep } from '@/util'\n\n// Types\nimport type { InjectionKey } from 'vue'\nimport type { DateAdapter } from './DateAdapter'\nimport type { LocaleInstance } from '@/composables/locale'\n\n// Adapters\nimport { VuetifyDateAdapter } from './adapters/vuetify'\n\nexport interface DateInstance<T = DateInstanceType['instanceType']> extends DateAdapter<T> {\n locale?: any\n}\n\n/** Supports module augmentation to specify date object types */\nexport interface DateInstanceType {\n instanceType: unknown\n}\n\nexport type InternalDateOptions<T = unknown> = {\n adapter: (new (options: { locale: any, formats?: any }) => DateInstance<T>) | DateInstance<T>\n formats?: Record<string, any>\n locale: Record<string, any>\n}\n\nexport type DateOptions<T = any> = Partial<InternalDateOptions<T>>\n\nexport const DateOptionsSymbol: InjectionKey<InternalDateOptions> = Symbol.for('vuetify:date-options')\nexport const DateAdapterSymbol: InjectionKey<DateInstance> = Symbol.for('vuetify:date-adapter')\n\nexport function createDate (options: DateOptions | undefined, locale: LocaleInstance) {\n const _options = mergeDeep({\n adapter: VuetifyDateAdapter,\n locale: {\n af: 'af-ZA',\n // ar: '', # not the same value for all variants\n bg: 'bg-BG',\n ca: 'ca-ES',\n ckb: '',\n cs: 'cs-CZ',\n de: 'de-DE',\n el: 'el-GR',\n en: 'en-US',\n // es: '', # not the same value for all variants\n et: 'et-EE',\n fa: 'fa-IR',\n fi: 'fi-FI',\n // fr: '', #not the same value for all variants\n hr: 'hr-HR',\n hu: 'hu-HU',\n he: 'he-IL',\n id: 'id-ID',\n it: 'it-IT',\n ja: 'ja-JP',\n ko: 'ko-KR',\n lv: 'lv-LV',\n lt: 'lt-LT',\n nl: 'nl-NL',\n no: 'no-NO',\n pl: 'pl-PL',\n pt: 'pt-PT',\n ro: 'ro-RO',\n ru: 'ru-RU',\n sk: 'sk-SK',\n sl: 'sl-SI',\n srCyrl: 'sr-SP',\n srLatn: 'sr-SP',\n sv: 'sv-SE',\n th: 'th-TH',\n tr: 'tr-TR',\n az: 'az-AZ',\n uk: 'uk-UA',\n vi: 'vi-VN',\n zhHans: 'zh-CN',\n zhHant: 'zh-TW',\n },\n }, options) as InternalDateOptions\n\n return {\n options: _options,\n instance: createInstance(_options, locale),\n }\n}\n\nfunction createInstance (options: InternalDateOptions, locale: LocaleInstance) {\n const instance = reactive(\n typeof options.adapter === 'function'\n // eslint-disable-next-line new-cap\n ? new options.adapter({\n locale: options.locale[locale.current.value] ?? locale.current.value,\n formats: options.formats,\n })\n : options.adapter\n )\n\n watch(locale.current, value => {\n instance.locale = options.locale[value] ?? value ?? instance.locale\n })\n\n return instance\n}\n\nexport function useDate () {\n const options = inject(DateOptionsSymbol)\n\n if (!options) throw new Error('[Vuetify] Could not find injected date options')\n\n const locale = useLocale()\n\n return createInstance(options, locale)\n}\n\n// https://stackoverflow.com/questions/274861/how-do-i-calculate-the-week-number-given-a-date/275024#275024\nexport function getWeek (adapter: DateAdapter<any>, value: any) {\n const date = adapter.toJsDate(value)\n let year = adapter.getYear(date)\n let d1w1 = adapter.startOfYear(date)\n\n if (date < d1w1) {\n year = year - 1\n d1w1 = adapter.startOfYear(adapter.setYear(date, year))\n } else {\n const tv = adapter.startOfYear(adapter.setYear(date, year + 1))\n if (date >= tv) {\n year = year + 1\n d1w1 = tv\n }\n }\n\n const diffTime = Math.abs(date.getTime() - d1w1.getTime())\n const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24))\n\n return Math.floor(diffDays / 7) + 1\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"date.mjs","names":["useLocale","inject","reactive","watch","mergeDeep","VuetifyDateAdapter","DateOptionsSymbol","Symbol","for","DateAdapterSymbol","createDate","options","locale","_options","adapter","af","bg","ca","ckb","cs","de","el","en","et","fa","fi","hr","hu","he","id","it","ja","ko","lv","lt","nl","no","pl","pt","ro","ru","sk","sl","srCyrl","srLatn","sv","th","tr","az","uk","vi","zhHans","zhHant","instance","createInstance","current","value","formats","useDate","Error","getWeek","date","toJsDate","year","getFullYear","d1w1","Date","tv","diffTime","Math","abs","getTime","diffDays","ceil","floor"],"sources":["../../../src/composables/date/date.ts"],"sourcesContent":["// Composables\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { inject, reactive, watch } from 'vue'\nimport { mergeDeep } from '@/util'\n\n// Types\nimport type { InjectionKey } from 'vue'\nimport type { DateAdapter } from './DateAdapter'\nimport type { LocaleInstance } from '@/composables/locale'\n\n// Adapters\nimport { VuetifyDateAdapter } from './adapters/vuetify'\n\nexport interface DateInstance<T = DateInstanceType['instanceType']> extends DateAdapter<T> {\n locale?: any\n}\n\n/** Supports module augmentation to specify date object types */\nexport interface DateInstanceType {\n instanceType: unknown\n}\n\nexport type InternalDateOptions<T = unknown> = {\n adapter: (new (options: { locale: any, formats?: any }) => DateInstance<T>) | DateInstance<T>\n formats?: Record<string, any>\n locale: Record<string, any>\n}\n\nexport type DateOptions<T = any> = Partial<InternalDateOptions<T>>\n\nexport const DateOptionsSymbol: InjectionKey<InternalDateOptions> = Symbol.for('vuetify:date-options')\nexport const DateAdapterSymbol: InjectionKey<DateInstance> = Symbol.for('vuetify:date-adapter')\n\nexport function createDate (options: DateOptions | undefined, locale: LocaleInstance) {\n const _options = mergeDeep({\n adapter: VuetifyDateAdapter,\n locale: {\n af: 'af-ZA',\n // ar: '', # not the same value for all variants\n bg: 'bg-BG',\n ca: 'ca-ES',\n ckb: '',\n cs: 'cs-CZ',\n de: 'de-DE',\n el: 'el-GR',\n en: 'en-US',\n // es: '', # not the same value for all variants\n et: 'et-EE',\n fa: 'fa-IR',\n fi: 'fi-FI',\n // fr: '', #not the same value for all variants\n hr: 'hr-HR',\n hu: 'hu-HU',\n he: 'he-IL',\n id: 'id-ID',\n it: 'it-IT',\n ja: 'ja-JP',\n ko: 'ko-KR',\n lv: 'lv-LV',\n lt: 'lt-LT',\n nl: 'nl-NL',\n no: 'no-NO',\n pl: 'pl-PL',\n pt: 'pt-PT',\n ro: 'ro-RO',\n ru: 'ru-RU',\n sk: 'sk-SK',\n sl: 'sl-SI',\n srCyrl: 'sr-SP',\n srLatn: 'sr-SP',\n sv: 'sv-SE',\n th: 'th-TH',\n tr: 'tr-TR',\n az: 'az-AZ',\n uk: 'uk-UA',\n vi: 'vi-VN',\n zhHans: 'zh-CN',\n zhHant: 'zh-TW',\n },\n }, options) as InternalDateOptions\n\n return {\n options: _options,\n instance: createInstance(_options, locale),\n }\n}\n\nfunction createInstance (options: InternalDateOptions, locale: LocaleInstance) {\n const instance = reactive(\n typeof options.adapter === 'function'\n // eslint-disable-next-line new-cap\n ? new options.adapter({\n locale: options.locale[locale.current.value] ?? locale.current.value,\n formats: options.formats,\n })\n : options.adapter\n )\n\n watch(locale.current, value => {\n instance.locale = options.locale[value] ?? value ?? instance.locale\n })\n\n return instance\n}\n\nexport function useDate () {\n const options = inject(DateOptionsSymbol)\n\n if (!options) throw new Error('[Vuetify] Could not find injected date options')\n\n const locale = useLocale()\n\n return createInstance(options, locale)\n}\n\n// https://stackoverflow.com/questions/274861/how-do-i-calculate-the-week-number-given-a-date/275024#275024\nexport function getWeek (adapter: DateAdapter<any>, value: any) {\n const date = adapter.toJsDate(value)\n let year = date.getFullYear()\n let d1w1 = new Date(year, 0, 1)\n\n if (date < d1w1) {\n year = year - 1\n d1w1 = new Date(year, 0, 1)\n } else {\n const tv = new Date(year + 1, 0, 1)\n if (date >= tv) {\n year = year + 1\n d1w1 = tv\n }\n }\n\n const diffTime = Math.abs(date.getTime() - d1w1.getTime())\n const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24))\n\n return Math.floor(diffDays / 7) + 1\n}\n"],"mappings":"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"}
@@ -0,0 +1,105 @@
1
+ // Utilities
2
+ import { inject } from 'vue';
3
+ import { mergeDeep, refElement } from "../util/index.mjs"; // Types
4
+ export const GoToSymbol = Symbol.for('vuetify:goto');
5
+ function genDefaults() {
6
+ return {
7
+ container: undefined,
8
+ duration: 300,
9
+ layout: false,
10
+ offset: 0,
11
+ easing: 'easeInOutCubic',
12
+ patterns: {
13
+ linear: t => t,
14
+ easeInQuad: t => t ** 2,
15
+ easeOutQuad: t => t * (2 - t),
16
+ easeInOutQuad: t => t < 0.5 ? 2 * t ** 2 : -1 + (4 - 2 * t) * t,
17
+ easeInCubic: t => t ** 3,
18
+ easeOutCubic: t => --t ** 3 + 1,
19
+ easeInOutCubic: t => t < 0.5 ? 4 * t ** 3 : (t - 1) * (2 * t - 2) * (2 * t - 2) + 1,
20
+ easeInQuart: t => t ** 4,
21
+ easeOutQuart: t => 1 - --t ** 4,
22
+ easeInOutQuart: t => t < 0.5 ? 8 * t ** 4 : 1 - 8 * --t ** 4,
23
+ easeInQuint: t => t ** 5,
24
+ easeOutQuint: t => 1 + --t ** 5,
25
+ easeInOutQuint: t => t < 0.5 ? 16 * t ** 5 : 1 + 16 * --t ** 5
26
+ }
27
+ };
28
+ }
29
+ function getContainer(el) {
30
+ return getTarget(el) ?? (document.scrollingElement || document.body);
31
+ }
32
+ function getTarget(el) {
33
+ return typeof el === 'string' ? document.querySelector(el) : refElement(el);
34
+ }
35
+ function getOffset(target, horizontal, rtl) {
36
+ if (typeof target === 'number') return horizontal && rtl ? -target : target;
37
+ let el = getTarget(target);
38
+ let totalOffset = 0;
39
+ while (el) {
40
+ totalOffset += horizontal ? el.offsetLeft : el.offsetTop;
41
+ el = el.offsetParent;
42
+ }
43
+ return totalOffset;
44
+ }
45
+ export function createGoTo(options, locale) {
46
+ return {
47
+ rtl: locale.isRtl,
48
+ options: mergeDeep(genDefaults(), options)
49
+ };
50
+ }
51
+ async function scrollTo(_target, _options, horizontal, goTo) {
52
+ const options = mergeDeep(goTo?.options, _options);
53
+ const rtl = goTo?.rtl.value;
54
+ const target = (typeof _target === 'number' ? _target : getTarget(_target)) ?? 0;
55
+ const container = options.container === 'parent' && target instanceof HTMLElement ? target.parentElement : getContainer(options.container);
56
+ const ease = typeof options.easing === 'function' ? options.easing : options.patterns[options.easing];
57
+ if (!ease) throw new TypeError(`Easing function "${options.easing}" not found.`);
58
+ let targetLocation;
59
+ if (typeof target === 'number') {
60
+ targetLocation = getOffset(target, horizontal, rtl);
61
+ } else {
62
+ targetLocation = getOffset(target, horizontal, rtl) - getOffset(container, horizontal, rtl);
63
+ if (options.layout) {
64
+ const styles = window.getComputedStyle(target);
65
+ const layoutOffset = styles.getPropertyValue('--v-layout-top');
66
+ if (layoutOffset) targetLocation -= parseInt(layoutOffset, 10);
67
+ }
68
+ }
69
+ targetLocation += options.offset;
70
+ const startLocation = (horizontal ? container.scrollLeft : container.scrollTop) ?? 0;
71
+ if (targetLocation === startLocation) return Promise.resolve(targetLocation);
72
+ const startTime = performance.now();
73
+ return new Promise(resolve => requestAnimationFrame(function step(currentTime) {
74
+ const timeElapsed = currentTime - startTime;
75
+ const progress = Math.abs(options.duration ? Math.min(timeElapsed / options.duration, 1) : 1);
76
+ const location = Math.floor(startLocation + (targetLocation - startLocation) * ease(progress));
77
+ container[horizontal ? 'scrollLeft' : 'scrollTop'] = location;
78
+ if (progress === 1) return resolve(targetLocation);
79
+ let clientSize;
80
+ let reachEnd;
81
+ if (!horizontal) {
82
+ clientSize = container === document.body ? document.documentElement.clientHeight : container.clientHeight;
83
+ reachEnd = clientSize + container.scrollTop >= container.scrollHeight;
84
+ if (targetLocation > container.scrollTop && reachEnd) return resolve(targetLocation);
85
+ } else {
86
+ clientSize = container === document.body ? document.documentElement.clientWidth : container.clientWidth;
87
+ reachEnd = clientSize + container.scrollLeft >= container.scrollWidth;
88
+ if (targetLocation > container.scrollLeft && reachEnd) return resolve(targetLocation);
89
+ }
90
+ requestAnimationFrame(step);
91
+ }));
92
+ }
93
+ export function useGoTo() {
94
+ let _options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
95
+ const goTo = inject(GoToSymbol);
96
+ if (!goTo) throw new Error('[Vuetify] Could not find injected goto instance');
97
+ async function go(target, options) {
98
+ return scrollTo(target, mergeDeep(_options, options), false, goTo);
99
+ }
100
+ go.horizontal = async (target, options) => {
101
+ return scrollTo(target, mergeDeep(_options, options), true, goTo);
102
+ };
103
+ return go;
104
+ }
105
+ //# sourceMappingURL=goto.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"goto.mjs","names":["inject","mergeDeep","refElement","GoToSymbol","Symbol","for","genDefaults","container","undefined","duration","layout","offset","easing","patterns","linear","t","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","getContainer","el","getTarget","document","scrollingElement","body","querySelector","getOffset","target","horizontal","rtl","totalOffset","offsetLeft","offsetTop","offsetParent","createGoTo","options","locale","isRtl","scrollTo","_target","_options","goTo","value","HTMLElement","parentElement","ease","TypeError","targetLocation","styles","window","getComputedStyle","layoutOffset","getPropertyValue","parseInt","startLocation","scrollLeft","scrollTop","Promise","resolve","startTime","performance","now","requestAnimationFrame","step","currentTime","timeElapsed","progress","Math","abs","min","location","floor","clientSize","reachEnd","documentElement","clientHeight","scrollHeight","clientWidth","scrollWidth","useGoTo","arguments","length","Error","go"],"sources":["../../src/composables/goto.ts"],"sourcesContent":["// Utilities\nimport { inject } from 'vue'\nimport { mergeDeep, refElement } from '@/util'\n\n// Types\nimport type { ComponentPublicInstance, InjectionKey, Ref } from 'vue'\nimport type { LocaleInstance, RtlInstance } from './locale'\n\nexport interface GoToInstance {\n rtl: Ref<boolean>\n options: GoToOptions\n}\n\nexport interface GoToOptions {\n container: ComponentPublicInstance | HTMLElement | string\n duration: number\n layout: boolean\n offset: number\n easing: string | ((t: number) => number)\n patterns: Record<string, (t: number) => number>\n}\n\nexport const GoToSymbol: InjectionKey<GoToInstance> = Symbol.for('vuetify:goto')\n\nfunction genDefaults () {\n return {\n container: undefined,\n duration: 300,\n layout: false,\n offset: 0,\n easing: 'easeInOutCubic',\n patterns: {\n linear: (t: number) => t,\n easeInQuad: (t: number) => t ** 2,\n easeOutQuad: (t: number) => t * (2 - t),\n easeInOutQuad: (t: number) => (t < 0.5 ? 2 * t ** 2 : -1 + (4 - 2 * t) * t),\n easeInCubic: (t: number) => t ** 3,\n easeOutCubic: (t: number) => --t ** 3 + 1,\n easeInOutCubic: (t: number) => t < 0.5 ? 4 * t ** 3 : (t - 1) * (2 * t - 2) * (2 * t - 2) + 1,\n easeInQuart: (t: number) => t ** 4,\n easeOutQuart: (t: number) => 1 - --t ** 4,\n easeInOutQuart: (t: number) => (t < 0.5 ? 8 * t ** 4 : 1 - 8 * --t ** 4),\n easeInQuint: (t: number) => t ** 5,\n easeOutQuint: (t: number) => 1 + --t ** 5,\n easeInOutQuint: (t: number) => t < 0.5 ? 16 * t ** 5 : 1 + 16 * --t ** 5,\n },\n }\n}\n\nfunction getContainer (el?: ComponentPublicInstance | HTMLElement | string) {\n return getTarget(el) ?? (document.scrollingElement || document.body) as HTMLElement\n}\n\nfunction getTarget (el: ComponentPublicInstance | HTMLElement | string | undefined) {\n return (typeof el === 'string') ? document.querySelector<HTMLElement>(el) : refElement(el)\n}\n\nfunction getOffset (target: any, horizontal?: boolean, rtl?: boolean): number {\n if (typeof target === 'number') return horizontal && rtl ? -target : target\n\n let el = getTarget(target)\n let totalOffset = 0\n while (el) {\n totalOffset += horizontal ? el.offsetLeft : el.offsetTop\n el = el.offsetParent as HTMLElement\n }\n\n return totalOffset\n}\n\nexport function createGoTo (options: Partial<GoToOptions> | undefined, locale: LocaleInstance & RtlInstance) {\n return {\n rtl: locale.isRtl,\n options: mergeDeep(genDefaults(), options),\n }\n}\n\nasync function scrollTo (\n _target: ComponentPublicInstance | HTMLElement | number | string,\n _options: Partial<GoToOptions>,\n horizontal?: boolean,\n goTo?: GoToInstance,\n) {\n const options = mergeDeep(goTo?.options, _options)\n const rtl = goTo?.rtl.value\n const target = (typeof _target === 'number' ? _target : getTarget(_target)) ?? 0\n const container = options.container === 'parent' && target instanceof HTMLElement\n ? target.parentElement!\n : getContainer(options.container)\n const ease = typeof options.easing === 'function' ? options.easing : options.patterns[options.easing]\n\n if (!ease) throw new TypeError(`Easing function \"${options.easing}\" not found.`)\n\n let targetLocation: number\n if (typeof target === 'number') {\n targetLocation = getOffset(target, horizontal, rtl)\n } else {\n targetLocation = getOffset(target, horizontal, rtl) - getOffset(container, horizontal, rtl)\n\n if (options.layout) {\n const styles = window.getComputedStyle(target)\n const layoutOffset = styles.getPropertyValue('--v-layout-top')\n\n if (layoutOffset) targetLocation -= parseInt(layoutOffset, 10)\n }\n }\n\n targetLocation += options.offset\n\n const startLocation = (horizontal ? container.scrollLeft : container.scrollTop) ?? 0\n\n if (targetLocation === startLocation) return Promise.resolve(targetLocation)\n\n const startTime = performance.now()\n\n return new Promise(resolve => requestAnimationFrame(function step (currentTime: number) {\n const timeElapsed = currentTime - startTime\n const progress = Math.abs(options.duration ? Math.min(timeElapsed / options.duration, 1) : 1)\n const location = Math.floor(startLocation + (targetLocation - startLocation) * ease(progress))\n\n container[horizontal ? 'scrollLeft' : 'scrollTop'] = location\n\n if (progress === 1) return resolve(targetLocation)\n\n let clientSize\n let reachEnd\n\n if (!horizontal) {\n clientSize = container === document.body ? document.documentElement.clientHeight : container.clientHeight\n reachEnd = clientSize + container.scrollTop >= container.scrollHeight\n\n if (targetLocation > container.scrollTop && reachEnd) return resolve(targetLocation)\n } else {\n clientSize = container === document.body ? document.documentElement.clientWidth : container.clientWidth\n reachEnd = clientSize + container.scrollLeft >= container.scrollWidth\n\n if (targetLocation > container.scrollLeft && reachEnd) return resolve(targetLocation)\n }\n\n requestAnimationFrame(step)\n }))\n}\n\nexport function useGoTo (_options: Partial<GoToOptions> = {}) {\n const goTo = inject(GoToSymbol)\n\n if (!goTo) throw new Error('[Vuetify] Could not find injected goto instance')\n\n async function go (\n target: ComponentPublicInstance | HTMLElement | string | number,\n options?: Partial<GoToOptions>,\n ) {\n return scrollTo(target, mergeDeep(_options, options), false, goTo)\n }\n\n go.horizontal = async (\n target: ComponentPublicInstance | HTMLElement | string | number,\n options?: Partial<GoToOptions>,\n ) => {\n return scrollTo(target, mergeDeep(_options, options), true, goTo)\n }\n\n return go\n}\n"],"mappings":"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"}
@@ -5,6 +5,7 @@
5
5
  export { useDate } from "./date/index.mjs";
6
6
  export { useDefaults } from "./defaults.mjs";
7
7
  export { useDisplay } from "./display.mjs";
8
+ export { useGoTo } from "./goto.mjs";
8
9
  export { useLayout } from "./layout.mjs";
9
10
  export { useLocale, useRtl } from "./locale.mjs";
10
11
  export { useTheme } from "./theme.mjs";
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":["useDate","useDefaults","useDisplay","useLayout","useLocale","useRtl","useTheme"],"sources":["../../src/composables/index.ts"],"sourcesContent":["/*\n * PUBLIC INTERFACES ONLY\n * Imports in our code should be to the composable directly, not this file\n */\n\nexport { useDate } from './date'\nexport { useDefaults } from './defaults'\nexport { useDisplay } from './display'\nexport { useLayout } from './layout'\nexport { useLocale, useRtl } from './locale'\nexport { useTheme } from './theme'\n\nexport type { DateInstance } from './date'\nexport type { DefaultsInstance } from './defaults'\nexport type { DisplayBreakpoint, DisplayInstance, DisplayThresholds } from './display'\nexport type { SubmitEventPromise } from './form'\nexport type { IconAliases, IconProps, IconSet, IconOptions } from './icons'\nexport type { LocaleInstance, LocaleMessages, RtlInstance, LocaleOptions, RtlOptions } from './locale'\nexport type { ThemeDefinition, ThemeInstance } from './theme'\n"],"mappings":"AAAA;AACA;AACA;AACA;AAHA,SAKSA,OAAO;AAAA,SACPC,WAAW;AAAA,SACXC,UAAU;AAAA,SACVC,SAAS;AAAA,SACTC,SAAS,EAAEC,MAAM;AAAA,SACjBC,QAAQ"}
1
+ {"version":3,"file":"index.mjs","names":["useDate","useDefaults","useDisplay","useGoTo","useLayout","useLocale","useRtl","useTheme"],"sources":["../../src/composables/index.ts"],"sourcesContent":["/*\n * PUBLIC INTERFACES ONLY\n * Imports in our code should be to the composable directly, not this file\n */\n\nexport { useDate } from './date'\nexport { useDefaults } from './defaults'\nexport { useDisplay } from './display'\nexport { useGoTo } from './goto'\nexport { useLayout } from './layout'\nexport { useLocale, useRtl } from './locale'\nexport { useTheme } from './theme'\n\nexport type { DateInstance } from './date'\nexport type { DefaultsInstance } from './defaults'\nexport type { DisplayBreakpoint, DisplayInstance, DisplayThresholds } from './display'\nexport type { SubmitEventPromise } from './form'\nexport type { GoToInstance } from './goto'\nexport type { IconAliases, IconProps, IconSet, IconOptions } from './icons'\nexport type { LocaleInstance, LocaleMessages, RtlInstance, LocaleOptions, RtlOptions } from './locale'\nexport type { ThemeDefinition, ThemeInstance } from './theme'\n"],"mappings":"AAAA;AACA;AACA;AACA;AAHA,SAKSA,OAAO;AAAA,SACPC,WAAW;AAAA,SACXC,UAAU;AAAA,SACVC,OAAO;AAAA,SACPC,SAAS;AAAA,SACTC,SAAS,EAAEC,MAAM;AAAA,SACjBC,QAAQ"}
@@ -1,6 +1,5 @@
1
1
  // Utilities
2
2
  import { computed, inject, provide, ref } from 'vue';
3
- import { defaultRtl } from "../locale/index.mjs";
4
3
  import { createVuetifyAdapter } from "../locale/adapters/vuetify.mjs"; // Types
5
4
  export const LocaleSymbol = Symbol.for('vuetify:locale');
6
5
  function isLocaleInstance(obj) {
@@ -35,8 +34,54 @@ export function provideLocale(props) {
35
34
  // RTL
36
35
 
37
36
  export const RtlSymbol = Symbol.for('vuetify:rtl');
37
+ function genDefaults() {
38
+ return {
39
+ af: false,
40
+ ar: true,
41
+ bg: false,
42
+ ca: false,
43
+ ckb: false,
44
+ cs: false,
45
+ de: false,
46
+ el: false,
47
+ en: false,
48
+ es: false,
49
+ et: false,
50
+ fa: true,
51
+ fi: false,
52
+ fr: false,
53
+ hr: false,
54
+ hu: false,
55
+ he: true,
56
+ id: false,
57
+ it: false,
58
+ ja: false,
59
+ km: false,
60
+ ko: false,
61
+ lv: false,
62
+ lt: false,
63
+ nl: false,
64
+ no: false,
65
+ pl: false,
66
+ pt: false,
67
+ ro: false,
68
+ ru: false,
69
+ sk: false,
70
+ sl: false,
71
+ srCyrl: false,
72
+ srLatn: false,
73
+ sv: false,
74
+ th: false,
75
+ tr: false,
76
+ az: false,
77
+ uk: false,
78
+ vi: false,
79
+ zhHans: false,
80
+ zhHant: false
81
+ };
82
+ }
38
83
  export function createRtl(i18n, options) {
39
- const rtl = ref(options?.rtl ?? defaultRtl);
84
+ const rtl = ref(options?.rtl ?? genDefaults());
40
85
  const isRtl = computed(() => rtl.value[i18n.current.value] ?? false);
41
86
  return {
42
87
  isRtl,
@@ -1 +1 @@
1
- {"version":3,"file":"locale.mjs","names":["computed","inject","provide","ref","defaultRtl","createVuetifyAdapter","LocaleSymbol","Symbol","for","isLocaleInstance","obj","name","createLocale","options","i18n","adapter","rtl","createRtl","useLocale","locale","Error","provideLocale","props","provideRtl","data","RtlSymbol","isRtl","value","current","rtlClasses","useRtl"],"sources":["../../src/composables/locale.ts"],"sourcesContent":["// Utilities\nimport { computed, inject, provide, ref } from 'vue'\nimport { defaultRtl } from '@/locale'\nimport { createVuetifyAdapter } from '@/locale/adapters/vuetify'\n\n// Types\nimport type { InjectionKey, Ref } from 'vue'\n\nexport interface LocaleMessages {\n [key: string]: LocaleMessages | string\n}\n\nexport interface LocaleOptions {\n messages?: LocaleMessages\n locale?: string\n fallback?: string\n adapter?: LocaleInstance\n}\n\nexport interface LocaleInstance {\n name: string\n messages: Ref<LocaleMessages>\n current: Ref<string>\n fallback: Ref<string>\n t: (key: string, ...params: unknown[]) => string\n n: (value: number) => string\n provide: (props: LocaleOptions) => LocaleInstance\n}\n\nexport const LocaleSymbol: InjectionKey<LocaleInstance & RtlInstance> = Symbol.for('vuetify:locale')\n\nfunction isLocaleInstance (obj: any): obj is LocaleInstance {\n return obj.name != null\n}\n\nexport function createLocale (options?: LocaleOptions & RtlOptions) {\n const i18n = options?.adapter && isLocaleInstance(options?.adapter) ? options?.adapter : createVuetifyAdapter(options)\n const rtl = createRtl(i18n, options)\n\n return { ...i18n, ...rtl }\n}\n\nexport function useLocale () {\n const locale = inject(LocaleSymbol)\n\n if (!locale) throw new Error('[Vuetify] Could not find injected locale instance')\n\n return locale\n}\n\nexport function provideLocale (props: LocaleOptions & RtlProps) {\n const locale = inject(LocaleSymbol)\n\n if (!locale) throw new Error('[Vuetify] Could not find injected locale instance')\n\n const i18n = locale.provide(props)\n const rtl = provideRtl(i18n, locale.rtl, props)\n\n const data = { ...i18n, ...rtl }\n\n provide(LocaleSymbol, data)\n\n return data\n}\n\n// RTL\n\nexport interface RtlOptions {\n rtl?: Record<string, boolean>\n}\n\nexport interface RtlProps {\n rtl?: boolean\n}\n\nexport interface RtlInstance {\n isRtl: Ref<boolean>\n rtl: Ref<Record<string, boolean>>\n rtlClasses: Ref<string>\n}\n\nexport const RtlSymbol: InjectionKey<RtlInstance> = Symbol.for('vuetify:rtl')\n\nexport function createRtl (i18n: LocaleInstance, options?: RtlOptions): RtlInstance {\n const rtl = ref<Record<string, boolean>>(options?.rtl ?? defaultRtl)\n const isRtl = computed(() => rtl.value[i18n.current.value] ?? false)\n\n return {\n isRtl,\n rtl,\n rtlClasses: computed(() => `v-locale--is-${isRtl.value ? 'rtl' : 'ltr'}`),\n }\n}\n\nexport function provideRtl (locale: LocaleInstance, rtl: RtlInstance['rtl'], props: RtlProps): RtlInstance {\n const isRtl = computed(() => props.rtl ?? rtl.value[locale.current.value] ?? false)\n\n return {\n isRtl,\n rtl,\n rtlClasses: computed(() => `v-locale--is-${isRtl.value ? 'rtl' : 'ltr'}`),\n }\n}\n\nexport function useRtl () {\n const locale = inject(LocaleSymbol)\n\n if (!locale) throw new Error('[Vuetify] Could not find injected rtl instance')\n\n return { isRtl: locale.isRtl, rtlClasses: locale.rtlClasses }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"locale.mjs","names":["computed","inject","provide","ref","createVuetifyAdapter","LocaleSymbol","Symbol","for","isLocaleInstance","obj","name","createLocale","options","i18n","adapter","rtl","createRtl","useLocale","locale","Error","provideLocale","props","provideRtl","data","RtlSymbol","genDefaults","af","ar","bg","ca","ckb","cs","de","el","en","es","et","fa","fi","fr","hr","hu","he","id","it","ja","km","ko","lv","lt","nl","no","pl","pt","ro","ru","sk","sl","srCyrl","srLatn","sv","th","tr","az","uk","vi","zhHans","zhHant","isRtl","value","current","rtlClasses","useRtl"],"sources":["../../src/composables/locale.ts"],"sourcesContent":["// Utilities\nimport { computed, inject, provide, ref } from 'vue'\nimport { createVuetifyAdapter } from '@/locale/adapters/vuetify'\n\n// Types\nimport type { InjectionKey, Ref } from 'vue'\n\nexport interface LocaleMessages {\n [key: string]: LocaleMessages | string\n}\n\nexport interface LocaleOptions {\n messages?: LocaleMessages\n locale?: string\n fallback?: string\n adapter?: LocaleInstance\n}\n\nexport interface LocaleInstance {\n name: string\n messages: Ref<LocaleMessages>\n current: Ref<string>\n fallback: Ref<string>\n t: (key: string, ...params: unknown[]) => string\n n: (value: number) => string\n provide: (props: LocaleOptions) => LocaleInstance\n}\n\nexport const LocaleSymbol: InjectionKey<LocaleInstance & RtlInstance> = Symbol.for('vuetify:locale')\n\nfunction isLocaleInstance (obj: any): obj is LocaleInstance {\n return obj.name != null\n}\n\nexport function createLocale (options?: LocaleOptions & RtlOptions) {\n const i18n = options?.adapter && isLocaleInstance(options?.adapter) ? options?.adapter : createVuetifyAdapter(options)\n const rtl = createRtl(i18n, options)\n\n return { ...i18n, ...rtl }\n}\n\nexport function useLocale () {\n const locale = inject(LocaleSymbol)\n\n if (!locale) throw new Error('[Vuetify] Could not find injected locale instance')\n\n return locale\n}\n\nexport function provideLocale (props: LocaleOptions & RtlProps) {\n const locale = inject(LocaleSymbol)\n\n if (!locale) throw new Error('[Vuetify] Could not find injected locale instance')\n\n const i18n = locale.provide(props)\n const rtl = provideRtl(i18n, locale.rtl, props)\n\n const data = { ...i18n, ...rtl }\n\n provide(LocaleSymbol, data)\n\n return data\n}\n\n// RTL\n\nexport interface RtlOptions {\n rtl?: Record<string, boolean>\n}\n\nexport interface RtlProps {\n rtl?: boolean\n}\n\nexport interface RtlInstance {\n isRtl: Ref<boolean>\n rtl: Ref<Record<string, boolean>>\n rtlClasses: Ref<string>\n}\n\nexport const RtlSymbol: InjectionKey<RtlInstance> = Symbol.for('vuetify:rtl')\n\nfunction genDefaults () {\n return {\n af: false,\n ar: true,\n bg: false,\n ca: false,\n ckb: false,\n cs: false,\n de: false,\n el: false,\n en: false,\n es: false,\n et: false,\n fa: true,\n fi: false,\n fr: false,\n hr: false,\n hu: false,\n he: true,\n id: false,\n it: false,\n ja: false,\n km: false,\n ko: false,\n lv: false,\n lt: false,\n nl: false,\n no: false,\n pl: false,\n pt: false,\n ro: false,\n ru: false,\n sk: false,\n sl: false,\n srCyrl: false,\n srLatn: false,\n sv: false,\n th: false,\n tr: false,\n az: false,\n uk: false,\n vi: false,\n zhHans: false,\n zhHant: false,\n }\n}\n\nexport function createRtl (i18n: LocaleInstance, options?: RtlOptions): RtlInstance {\n const rtl = ref<Record<string, boolean>>(options?.rtl ?? genDefaults())\n const isRtl = computed(() => rtl.value[i18n.current.value] ?? false)\n\n return {\n isRtl,\n rtl,\n rtlClasses: computed(() => `v-locale--is-${isRtl.value ? 'rtl' : 'ltr'}`),\n }\n}\n\nexport function provideRtl (locale: LocaleInstance, rtl: RtlInstance['rtl'], props: RtlProps): RtlInstance {\n const isRtl = computed(() => props.rtl ?? rtl.value[locale.current.value] ?? false)\n\n return {\n isRtl,\n rtl,\n rtlClasses: computed(() => `v-locale--is-${isRtl.value ? 'rtl' : 'ltr'}`),\n }\n}\n\nexport function useRtl () {\n const locale = inject(LocaleSymbol)\n\n if (!locale) throw new Error('[Vuetify] Could not find injected rtl instance')\n\n return { isRtl: locale.isRtl, rtlClasses: locale.rtlClasses }\n}\n"],"mappings":"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"}
@@ -20,6 +20,7 @@ function genDefaults() {
20
20
  background: '#FFFFFF',
21
21
  surface: '#FFFFFF',
22
22
  'surface-bright': '#FFFFFF',
23
+ 'surface-light': '#EEEEEE',
23
24
  'surface-variant': '#424242',
24
25
  'on-surface-variant': '#EEEEEE',
25
26
  primary: '#1867C0',
@@ -56,6 +57,7 @@ function genDefaults() {
56
57
  background: '#121212',
57
58
  surface: '#212121',
58
59
  'surface-bright': '#ccbfd6',
60
+ 'surface-light': '#424242',
59
61
  'surface-variant': '#a3a3a3',
60
62
  'on-surface-variant': '#424242',
61
63
  primary: '#2196F3',