@vuetify/nightly 3.8.1-next.2025-04-15 → 3.8.2-master.2025-04-17

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 (217) hide show
  1. package/CHANGELOG.md +5 -27
  2. package/dist/json/attributes.json +3031 -3031
  3. package/dist/json/importMap-labs.json +36 -36
  4. package/dist/json/importMap.json +150 -150
  5. package/dist/json/web-types.json +5537 -5577
  6. package/dist/vuetify-labs.cjs +197 -346
  7. package/dist/vuetify-labs.css +25469 -23739
  8. package/dist/vuetify-labs.d.ts +677 -274
  9. package/dist/vuetify-labs.esm.js +198 -347
  10. package/dist/vuetify-labs.esm.js.map +1 -1
  11. package/dist/vuetify-labs.js +197 -346
  12. package/dist/vuetify-labs.min.css +4 -3
  13. package/dist/vuetify.cjs +173 -328
  14. package/dist/vuetify.cjs.map +1 -1
  15. package/dist/vuetify.css +24041 -22315
  16. package/dist/vuetify.d.ts +680 -277
  17. package/dist/vuetify.esm.js +174 -329
  18. package/dist/vuetify.esm.js.map +1 -1
  19. package/dist/vuetify.js +173 -328
  20. package/dist/vuetify.js.map +1 -1
  21. package/dist/vuetify.min.css +4 -3
  22. package/dist/vuetify.min.js +1161 -1152
  23. package/dist/vuetify.min.js.map +1 -1
  24. package/lib/blueprints/md3.js +18 -5
  25. package/lib/blueprints/md3.js.map +1 -1
  26. package/lib/components/VAlert/VAlert.css +215 -207
  27. package/lib/components/VApp/VApp.css +15 -16
  28. package/lib/components/VAppBar/VAppBar.css +12 -14
  29. package/lib/components/VAutocomplete/VAutocomplete.css +84 -85
  30. package/lib/components/VAutocomplete/VAutocomplete.d.ts +9 -18
  31. package/lib/components/VAutocomplete/VAutocomplete.js +3 -6
  32. package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
  33. package/lib/components/VAvatar/VAvatar.css +106 -108
  34. package/lib/components/VBadge/VBadge.css +77 -77
  35. package/lib/components/VBanner/VBanner.css +166 -161
  36. package/lib/components/VBottomNavigation/VBottomNavigation.css +64 -65
  37. package/lib/components/VBottomSheet/VBottomSheet.css +31 -34
  38. package/lib/components/VBreadcrumbs/VBreadcrumbs.css +57 -54
  39. package/lib/components/VBtn/VBtn.css +408 -385
  40. package/lib/components/VBtn/VBtn.sass +4 -4
  41. package/lib/components/VBtnGroup/VBtnGroup.css +64 -63
  42. package/lib/components/VBtnToggle/VBtnToggle.css +14 -16
  43. package/lib/components/VCard/VCard.css +302 -294
  44. package/lib/components/VCarousel/VCarousel.css +65 -63
  45. package/lib/components/VCarousel/VCarousel.sass +1 -1
  46. package/lib/components/VCheckbox/VCheckbox.css +5 -7
  47. package/lib/components/VChip/VChip.css +411 -378
  48. package/lib/components/VChipGroup/VChipGroup.css +18 -19
  49. package/lib/components/VCode/VCode.css +11 -10
  50. package/lib/components/VCode/VCode.sass +3 -0
  51. package/lib/components/VColorPicker/VColorPicker.css +23 -23
  52. package/lib/components/VColorPicker/VColorPickerCanvas.css +22 -24
  53. package/lib/components/VColorPicker/VColorPickerEdit.css +28 -29
  54. package/lib/components/VColorPicker/VColorPickerPreview.css +67 -69
  55. package/lib/components/VColorPicker/VColorPickerPreview.sass +2 -4
  56. package/lib/components/VColorPicker/VColorPickerSwatches.css +34 -34
  57. package/lib/components/VCombobox/VCombobox.css +84 -85
  58. package/lib/components/VCombobox/VCombobox.d.ts +9 -18
  59. package/lib/components/VCombobox/VCombobox.js +3 -6
  60. package/lib/components/VCombobox/VCombobox.js.map +1 -1
  61. package/lib/components/VCounter/VCounter.css +5 -7
  62. package/lib/components/VDataTable/VDataTable.css +186 -189
  63. package/lib/components/VDataTable/VDataTable.sass +11 -21
  64. package/lib/components/VDataTable/VDataTableFooter.css +31 -33
  65. package/lib/components/VDatePicker/VDatePicker.css +6 -8
  66. package/lib/components/VDatePicker/VDatePicker.d.ts +7 -7
  67. package/lib/components/VDatePicker/VDatePickerControls.css +57 -55
  68. package/lib/components/VDatePicker/VDatePickerHeader.css +60 -56
  69. package/lib/components/VDatePicker/VDatePickerMonth.css +55 -51
  70. package/lib/components/VDatePicker/VDatePickerMonth.d.ts +7 -7
  71. package/lib/components/VDatePicker/VDatePickerMonths.css +19 -20
  72. package/lib/components/VDatePicker/VDatePickerYears.css +15 -16
  73. package/lib/components/VDialog/VDialog.css +98 -98
  74. package/lib/components/VDivider/VDivider.css +52 -52
  75. package/lib/components/VEmptyState/VEmptyState.css +67 -62
  76. package/lib/components/VExpansionPanel/VExpansionPanel.css +209 -203
  77. package/lib/components/VExpansionPanel/VExpansionPanel.sass +25 -27
  78. package/lib/components/VFab/VFab.css +73 -78
  79. package/lib/components/VFab/VFab.sass +4 -5
  80. package/lib/components/VField/VField.css +589 -548
  81. package/lib/components/VFileInput/VFileInput.css +28 -30
  82. package/lib/components/VFooter/VFooter.css +36 -38
  83. package/lib/components/VForm/VForm.d.ts +531 -111
  84. package/lib/components/VForm/VForm.js +1 -11
  85. package/lib/components/VForm/VForm.js.map +1 -1
  86. package/lib/components/VGrid/VGrid.css +592 -565
  87. package/lib/components/VIcon/VIcon.css +53 -52
  88. package/lib/components/VImg/VImg.css +51 -50
  89. package/lib/components/VInfiniteScroll/VInfiniteScroll.css +37 -36
  90. package/lib/components/VInput/VInput.css +147 -136
  91. package/lib/components/VItemGroup/VItemGroup.css +5 -7
  92. package/lib/components/VKbd/VKbd.css +11 -13
  93. package/lib/components/VLabel/VLabel.css +15 -16
  94. package/lib/components/VLayout/VLayout.css +8 -10
  95. package/lib/components/VLayout/VLayoutItem.css +7 -8
  96. package/lib/components/VList/VList.css +108 -104
  97. package/lib/components/VList/VList.sass +1 -1
  98. package/lib/components/VList/VListItem.css +452 -440
  99. package/lib/components/VList/VListItem.sass +1 -2
  100. package/lib/components/VLocaleProvider/VLocaleProvider.css +2 -4
  101. package/lib/components/VMain/VMain.css +30 -32
  102. package/lib/components/VMenu/VMenu.css +19 -21
  103. package/lib/components/VMessages/VMessages.css +15 -17
  104. package/lib/components/VNavigationDrawer/VNavigationDrawer.css +104 -102
  105. package/lib/components/VNumberInput/VNumberInput.css +46 -48
  106. package/lib/components/VOtpInput/VOtpInput.css +58 -56
  107. package/lib/components/VOverlay/VOverlay.css +64 -61
  108. package/lib/components/VOverlay/VOverlay.sass +13 -14
  109. package/lib/components/VPagination/VPagination.css +8 -10
  110. package/lib/components/VParallax/VParallax.css +6 -8
  111. package/lib/components/VProgressCircular/VProgressCircular.css +101 -95
  112. package/lib/components/VProgressLinear/VProgressLinear.css +222 -209
  113. package/lib/components/VRadioGroup/VRadioGroup.css +12 -14
  114. package/lib/components/VRating/VRating.css +53 -52
  115. package/lib/components/VResponsive/VResponsive.css +26 -25
  116. package/lib/components/VSelect/VSelect.css +51 -53
  117. package/lib/components/VSelect/VSelect.d.ts +9 -18
  118. package/lib/components/VSelect/VSelect.js +3 -6
  119. package/lib/components/VSelect/VSelect.js.map +1 -1
  120. package/lib/components/VSelectionControl/VSelectionControl.css +100 -98
  121. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.css +8 -10
  122. package/lib/components/VSheet/VSheet.css +36 -38
  123. package/lib/components/VSkeletonLoader/VSkeletonLoader.css +224 -225
  124. package/lib/components/VSlideGroup/VSlideGroup.css +55 -53
  125. package/lib/components/VSlider/VSlider.css +57 -53
  126. package/lib/components/VSlider/VSliderThumb.css +153 -142
  127. package/lib/components/VSlider/VSliderTrack.css +174 -155
  128. package/lib/components/VSnackbar/VSnackbar.css +140 -140
  129. package/lib/components/VSpeedDial/VSpeedDial.css +41 -43
  130. package/lib/components/VStepper/VStepper.css +56 -55
  131. package/lib/components/VStepper/VStepperItem.css +115 -112
  132. package/lib/components/VSwitch/VSwitch.css +139 -129
  133. package/lib/components/VSystemBar/VSystemBar.css +43 -45
  134. package/lib/components/VTable/VTable.css +141 -140
  135. package/lib/components/VTable/VTable.sass +2 -4
  136. package/lib/components/VTabs/VTab.css +29 -30
  137. package/lib/components/VTabs/VTabs.css +65 -59
  138. package/lib/components/VTextField/VTextField.css +85 -77
  139. package/lib/components/VTextarea/VTextarea.css +40 -48
  140. package/lib/components/VTextarea/VTextarea.sass +2 -4
  141. package/lib/components/VThemeProvider/VThemeProvider.css +3 -5
  142. package/lib/components/VTimeline/VTimeline.css +427 -388
  143. package/lib/components/VToolbar/VToolbar.css +144 -137
  144. package/lib/components/VTooltip/VTooltip.css +23 -27
  145. package/lib/components/VTooltip/VTooltip.sass +6 -8
  146. package/lib/components/VVirtualScroll/VVirtualScroll.css +9 -11
  147. package/lib/components/VWindow/VWindow.css +70 -73
  148. package/lib/composables/calendar.d.ts +2 -2
  149. package/lib/composables/calendar.js +5 -7
  150. package/lib/composables/calendar.js.map +1 -1
  151. package/lib/composables/date/DateAdapter.d.ts +1 -0
  152. package/lib/composables/date/DateAdapter.js.map +1 -1
  153. package/lib/composables/date/adapters/vuetify.d.ts +1 -0
  154. package/lib/composables/date/adapters/vuetify.js +101 -160
  155. package/lib/composables/date/adapters/vuetify.js.map +1 -1
  156. package/lib/composables/date/date.d.ts +1 -1
  157. package/lib/composables/date/date.js +0 -20
  158. package/lib/composables/date/date.js.map +1 -1
  159. package/lib/composables/filter.js +2 -1
  160. package/lib/composables/filter.js.map +1 -1
  161. package/lib/composables/theme.d.ts +1 -6
  162. package/lib/composables/theme.js +30 -98
  163. package/lib/composables/theme.js.map +1 -1
  164. package/lib/composables/validation.js +5 -0
  165. package/lib/composables/validation.js.map +1 -1
  166. package/lib/composables/virtual.js +1 -6
  167. package/lib/composables/virtual.js.map +1 -1
  168. package/lib/directives/ripple/VRipple.css +36 -38
  169. package/lib/entry-bundler.d.ts +1 -0
  170. package/lib/entry-bundler.js +1 -1
  171. package/lib/entry-bundler.js.map +1 -1
  172. package/lib/framework.d.ts +64 -66
  173. package/lib/framework.js +1 -1
  174. package/lib/framework.js.map +1 -1
  175. package/lib/labs/VCalendar/VCalendar.css +225 -219
  176. package/lib/labs/VCalendar/VCalendar.d.ts +7 -7
  177. package/lib/labs/VCalendar/VCalendarDay.css +32 -33
  178. package/lib/labs/VCalendar/VCalendarHeader.css +13 -13
  179. package/lib/labs/VCalendar/VCalendarInterval.css +42 -43
  180. package/lib/labs/VCalendar/VCalendarInterval.js +25 -19
  181. package/lib/labs/VCalendar/VCalendarInterval.js.map +1 -1
  182. package/lib/labs/VCalendar/VCalendarIntervalEvent.css +5 -7
  183. package/lib/labs/VCalendar/VCalendarMonthDay.css +58 -61
  184. package/lib/labs/VCalendar/VCalendarMonthDay.sass +2 -3
  185. package/lib/labs/VDateInput/VDateInput.d.ts +7 -7
  186. package/lib/labs/VFileUpload/VFileUpload.css +77 -74
  187. package/lib/labs/VIconBtn/VIconBtn.css +164 -162
  188. package/lib/labs/VPicker/VPicker.css +63 -58
  189. package/lib/labs/VTimePicker/VTimePicker.css +7 -9
  190. package/lib/labs/VTimePicker/VTimePickerClock.css +129 -126
  191. package/lib/labs/VTimePicker/VTimePickerControls.css +103 -102
  192. package/lib/labs/VTreeview/VTreeviewItem.css +28 -30
  193. package/lib/labs/VTreeview/VTreeviewItem.sass +2 -3
  194. package/lib/labs/entry-bundler.d.ts +1 -0
  195. package/lib/styles/elements/_global.sass +1 -1
  196. package/lib/styles/generic/_colors.scss +3 -3
  197. package/lib/styles/generic/_layers.scss +1 -13
  198. package/lib/styles/generic/_reset.scss +1 -0
  199. package/lib/styles/generic/_transitions.scss +32 -32
  200. package/lib/styles/main.css +16142 -14667
  201. package/lib/styles/settings/_utilities.scss +5 -0
  202. package/lib/styles/settings/_variables.scss +2 -1
  203. package/lib/styles/tools/_bootable.sass +3 -0
  204. package/lib/styles/tools/_border.sass +4 -4
  205. package/lib/styles/tools/_display.sass +10 -0
  206. package/lib/styles/tools/_elevation.sass +2 -2
  207. package/lib/styles/tools/_index.sass +2 -0
  208. package/lib/styles/tools/_layer.scss +2 -4
  209. package/lib/styles/tools/_position.sass +2 -2
  210. package/lib/styles/tools/_radius.sass +10 -0
  211. package/lib/styles/tools/_rounded.sass +2 -2
  212. package/lib/styles/tools/_utilities.sass +5 -1
  213. package/lib/styles/utilities/_elevation.scss +1 -1
  214. package/lib/util/globals.d.ts +0 -1
  215. package/lib/util/globals.js +0 -1
  216. package/lib/util/globals.js.map +1 -1
  217. package/package.json +46 -45
@@ -1 +1 @@
1
- {"version":3,"file":"calendar.js","names":["getWeek","useDate","useProxiedModel","computed","propsFactory","wrapInArray","makeCalendarProps","allowedDates","Array","Function","disabled","type","Boolean","default","displayValue","modelValue","month","Number","String","max","min","showAdjacentMonths","year","weekdays","weeksInMonth","firstDayOfWeek","useCalendar","props","adapter","model","v","map","i","date","value","length","isArray","undefined","getYear","startOfYear","setYear","getMonth","startOfMonth","setMonth","weekDays","day","weeks","getWeekArray","days","flat","daysInMonth","lastDay","week","push","addDays","genDays","today","filter","includes","toJsDate","getDay","index","isoDate","toISO","isAdjacent","isSameMonth","isStart","isSameDay","isEnd","endOfMonth","isSame","formatted","format","isDisabled","isWeekStart","isWeekEnd","isToday","isHidden","isSelected","some","localized","daysInWeek","startOfWeek","weekNumbers","isAfter","d"],"sources":["../../src/composables/calendar.ts"],"sourcesContent":["// Composables\nimport { getWeek, useDate } from '@/composables/date/date'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed } from 'vue'\nimport { propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\nexport interface CalendarProps {\n allowedDates: unknown[] | ((date: unknown) => boolean) | undefined\n disabled: boolean\n displayValue?: unknown\n modelValue: unknown[] | undefined\n max: unknown\n min: unknown\n showAdjacentMonths: boolean\n month: number | string | undefined\n weekdays: number[]\n year: number | string | undefined\n weeksInMonth: 'dynamic' | 'static'\n firstDayOfWeek: number | string | undefined\n\n 'onUpdate:modelValue': ((value: unknown[]) => void) | undefined\n 'onUpdate:month': ((value: number) => void) | undefined\n 'onUpdate:year': ((value: number) => void) | undefined\n}\n\nexport type CalendarWeekdays = 0 | 1 | 2 | 3 | 4 | 5 | 6\n\n// Composables\nexport const makeCalendarProps = propsFactory({\n allowedDates: [Array, Function] as PropType<unknown[] | ((date: unknown) => boolean)>,\n disabled: {\n type: Boolean,\n default: null,\n },\n displayValue: null as any as PropType<unknown>,\n modelValue: Array as PropType<unknown[]>,\n month: [Number, String],\n max: null as any as PropType<unknown>,\n min: null as any as PropType<unknown>,\n showAdjacentMonths: Boolean,\n year: [Number, String],\n weekdays: {\n type: Array as PropType<CalendarWeekdays[]>,\n default: () => [0, 1, 2, 3, 4, 5, 6],\n },\n weeksInMonth: {\n type: String as PropType<'dynamic' | 'static'>,\n default: 'dynamic',\n },\n firstDayOfWeek: {\n type: [Number, String],\n default: 0,\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).map(i => adapter.date(i)),\n )\n const displayValue = computed(() => {\n if (props.displayValue) return adapter.date(props.displayValue)\n if (model.value.length > 0) return adapter.date(model.value[0])\n if (props.min) return adapter.date(props.min)\n if (Array.isArray(props.allowedDates)) return adapter.date(props.allowedDates[0])\n\n return adapter.date()\n })\n\n const year = useProxiedModel(\n props,\n 'year',\n undefined,\n v => {\n const value = v != null ? Number(v) : adapter.getYear(displayValue.value)\n\n return adapter.startOfYear(adapter.setYear(adapter.date(), value))\n },\n v => adapter.getYear(v)\n )\n\n const month = useProxiedModel(\n props,\n 'month',\n undefined,\n v => {\n const value = v != null ? Number(v) : adapter.getMonth(displayValue.value)\n const date = adapter.setYear(adapter.startOfMonth(adapter.date()), adapter.getYear(year.value))\n\n return adapter.setMonth(date, value)\n },\n v => adapter.getMonth(v)\n )\n\n const weekDays = computed(() => {\n const firstDayOfWeek = Number(props.firstDayOfWeek)\n\n // Always generate all days, regardless of props.weekdays\n return [0, 1, 2, 3, 4, 5, 6].map(day => (day + firstDayOfWeek) % 7)\n })\n\n const weeksInMonth = computed(() => {\n const firstDayOfWeek = Number(props.firstDayOfWeek)\n const weeks = adapter.getWeekArray(month.value, firstDayOfWeek)\n\n const days = weeks.flat()\n\n // Make sure there's always 6 weeks in month (6 * 7 days)\n // if weeksInMonth is 'static'\n const daysInMonth = 6 * 7\n if (props.weeksInMonth === 'static' && days.length < daysInMonth) {\n const lastDay = days[days.length - 1]\n\n let week = []\n for (let day = 1; day <= daysInMonth - days.length; day++) {\n week.push(adapter.addDays(lastDay, day))\n\n if (day % 7 === 0) {\n weeks.push(week)\n week = []\n }\n }\n }\n\n return weeks\n })\n\n function genDays (days: unknown[], today: unknown) {\n return days.filter(date => {\n return weekDays.value.includes(adapter.toJsDate(date).getDay())\n }).map((date, index) => {\n const isoDate = adapter.toISO(date)\n const isAdjacent = !adapter.isSameMonth(date, month.value)\n const isStart = adapter.isSameDay(date, adapter.startOfMonth(month.value))\n const isEnd = adapter.isSameDay(date, adapter.endOfMonth(month.value))\n const isSame = adapter.isSameDay(date, month.value)\n\n return {\n date,\n isoDate,\n formatted: adapter.format(date, 'keyboardDate'),\n year: adapter.getYear(date),\n month: adapter.getMonth(date),\n isDisabled: isDisabled(date),\n isWeekStart: index % 7 === 0,\n isWeekEnd: index % 7 === 6,\n isToday: adapter.isSameDay(date, today),\n isAdjacent,\n isHidden: isAdjacent && !props.showAdjacentMonths,\n isStart,\n isSelected: model.value.some(value => adapter.isSameDay(date, value)),\n isEnd,\n isSame,\n localized: adapter.format(date, 'dayOfMonth'),\n }\n })\n }\n\n const daysInWeek = computed(() => {\n const lastDay = adapter.startOfWeek(displayValue.value, props.firstDayOfWeek)\n const week = []\n for (let day = 0; day <= 6; day++) {\n week.push(adapter.addDays(lastDay, day))\n }\n\n const today = adapter.date()\n\n return genDays(week, today)\n })\n\n const daysInMonth = computed(() => {\n const days = weeksInMonth.value.flat()\n const today = adapter.date() as Date\n\n return genDays(days, today)\n })\n\n const weekNumbers = computed(() => {\n return weeksInMonth.value.map(week => {\n return week.length ? getWeek(adapter, week[0]) : null\n })\n })\n\n function isDisabled (value: unknown) {\n if (props.disabled) return true\n\n const date = adapter.date(value)\n\n if (props.min && adapter.isAfter(adapter.date(props.min), date)) return true\n if (props.max && adapter.isAfter(date, adapter.date(props.max))) return true\n\n if (Array.isArray(props.allowedDates) && props.allowedDates.length > 0) {\n return !props.allowedDates.some(d => adapter.isSameDay(adapter.date(d), date))\n }\n\n if (typeof props.allowedDates === 'function') {\n return !props.allowedDates(date)\n }\n\n return !props.weekdays.includes(adapter.toJsDate(date).getDay())\n }\n\n return {\n displayValue,\n daysInMonth,\n daysInWeek,\n genDays,\n model,\n weeksInMonth,\n weekDays,\n weekNumbers,\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"calendar.js","names":["useDate","useProxiedModel","computed","propsFactory","wrapInArray","makeCalendarProps","allowedDates","Array","Function","disabled","type","Boolean","default","displayValue","modelValue","month","Number","String","max","min","showAdjacentMonths","year","weekdays","weeksInMonth","firstDayOfWeek","undefined","useCalendar","props","adapter","model","v","map","i","date","value","length","isArray","getYear","startOfYear","setYear","getMonth","startOfMonth","setMonth","weekDays","toJsDate","startOfWeek","getDay","day","weeks","getWeekArray","days","flat","daysInMonth","lastDay","week","push","addDays","genDays","today","filter","includes","index","isoDate","toISO","isAdjacent","isSameMonth","isStart","isSameDay","isEnd","endOfMonth","isSame","formatted","format","isDisabled","isWeekStart","isWeekEnd","isToday","isHidden","isSelected","some","localized","daysInWeek","weekNumbers","getWeek","isAfter","d"],"sources":["../../src/composables/calendar.ts"],"sourcesContent":["// Composables\nimport { useDate } from '@/composables/date/date'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed } from 'vue'\nimport { propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\nexport interface CalendarProps {\n allowedDates: unknown[] | ((date: unknown) => boolean) | undefined\n disabled: boolean\n displayValue?: unknown\n modelValue: unknown[] | undefined\n max: unknown\n min: unknown\n showAdjacentMonths: boolean\n month: number | string | undefined\n weekdays: number[]\n year: number | string | undefined\n weeksInMonth: 'dynamic' | 'static'\n firstDayOfWeek: number | string | undefined\n\n 'onUpdate:modelValue': ((value: unknown[]) => void) | undefined\n 'onUpdate:month': ((value: number) => void) | undefined\n 'onUpdate:year': ((value: number) => void) | undefined\n}\n\nexport type CalendarWeekdays = 0 | 1 | 2 | 3 | 4 | 5 | 6\n\n// Composables\nexport const makeCalendarProps = propsFactory({\n allowedDates: [Array, Function] as PropType<unknown[] | ((date: unknown) => boolean)>,\n disabled: {\n type: Boolean,\n default: null,\n },\n displayValue: null as any as PropType<unknown>,\n modelValue: Array as PropType<unknown[]>,\n month: [Number, String],\n max: null as any as PropType<unknown>,\n min: null as any as PropType<unknown>,\n showAdjacentMonths: Boolean,\n year: [Number, String],\n weekdays: {\n type: Array as PropType<CalendarWeekdays[]>,\n default: () => [0, 1, 2, 3, 4, 5, 6],\n },\n weeksInMonth: {\n type: String as PropType<'dynamic' | 'static'>,\n default: 'dynamic',\n },\n firstDayOfWeek: {\n type: [Number, String],\n default: undefined,\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).map(i => adapter.date(i)),\n )\n const displayValue = computed(() => {\n if (props.displayValue) return adapter.date(props.displayValue)\n if (model.value.length > 0) return adapter.date(model.value[0])\n if (props.min) return adapter.date(props.min)\n if (Array.isArray(props.allowedDates)) return adapter.date(props.allowedDates[0])\n\n return adapter.date()\n })\n\n const year = useProxiedModel(\n props,\n 'year',\n undefined,\n v => {\n const value = v != null ? Number(v) : adapter.getYear(displayValue.value)\n\n return adapter.startOfYear(adapter.setYear(adapter.date(), value))\n },\n v => adapter.getYear(v)\n )\n\n const month = useProxiedModel(\n props,\n 'month',\n undefined,\n v => {\n const value = v != null ? Number(v) : adapter.getMonth(displayValue.value)\n const date = adapter.setYear(adapter.startOfMonth(adapter.date()), adapter.getYear(year.value))\n\n return adapter.setMonth(date, value)\n },\n v => adapter.getMonth(v)\n )\n\n const weekDays = computed(() => {\n const firstDayOfWeek = adapter.toJsDate(adapter.startOfWeek(adapter.date(), props.firstDayOfWeek)).getDay()\n // Always generate all days, regardless of props.weekdays\n return [0, 1, 2, 3, 4, 5, 6].map(day => (day + firstDayOfWeek) % 7)\n })\n\n const weeksInMonth = computed(() => {\n const weeks = adapter.getWeekArray(month.value, props.firstDayOfWeek)\n\n const days = weeks.flat()\n\n // Make sure there's always 6 weeks in month (6 * 7 days)\n // if weeksInMonth is 'static'\n const daysInMonth = 6 * 7\n if (props.weeksInMonth === 'static' && days.length < daysInMonth) {\n const lastDay = days[days.length - 1]\n\n let week = []\n for (let day = 1; day <= daysInMonth - days.length; day++) {\n week.push(adapter.addDays(lastDay, day))\n\n if (day % 7 === 0) {\n weeks.push(week)\n week = []\n }\n }\n }\n\n return weeks\n })\n\n function genDays (days: unknown[], today: unknown) {\n return days.filter(date => {\n return weekDays.value.includes(adapter.toJsDate(date).getDay())\n }).map((date, index) => {\n const isoDate = adapter.toISO(date)\n const isAdjacent = !adapter.isSameMonth(date, month.value)\n const isStart = adapter.isSameDay(date, adapter.startOfMonth(month.value))\n const isEnd = adapter.isSameDay(date, adapter.endOfMonth(month.value))\n const isSame = adapter.isSameDay(date, month.value)\n\n return {\n date,\n isoDate,\n formatted: adapter.format(date, 'keyboardDate'),\n year: adapter.getYear(date),\n month: adapter.getMonth(date),\n isDisabled: isDisabled(date),\n isWeekStart: index % 7 === 0,\n isWeekEnd: index % 7 === 6,\n isToday: adapter.isSameDay(date, today),\n isAdjacent,\n isHidden: isAdjacent && !props.showAdjacentMonths,\n isStart,\n isSelected: model.value.some(value => adapter.isSameDay(date, value)),\n isEnd,\n isSame,\n localized: adapter.format(date, 'dayOfMonth'),\n }\n })\n }\n\n const daysInWeek = computed(() => {\n const lastDay = adapter.startOfWeek(displayValue.value, props.firstDayOfWeek)\n const week = []\n for (let day = 0; day <= 6; day++) {\n week.push(adapter.addDays(lastDay, day))\n }\n\n const today = adapter.date()\n\n return genDays(week, today)\n })\n\n const daysInMonth = computed(() => {\n const days = weeksInMonth.value.flat()\n const today = adapter.date() as Date\n\n return genDays(days, today)\n })\n\n const weekNumbers = computed(() => {\n return weeksInMonth.value.map(week => {\n return week.length ? adapter.getWeek(week[0], props.firstDayOfWeek) : 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 !props.weekdays.includes(adapter.toJsDate(date).getDay())\n }\n\n return {\n displayValue,\n daysInMonth,\n daysInWeek,\n genDays,\n model,\n weeksInMonth,\n weekDays,\n weekNumbers,\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -31,6 +31,7 @@ export interface DateAdapter<T = unknown> {
31
31
  getDiff(date: T, comparing: T | string, unit?: string): number;
32
32
  getWeekArray(date: T, firstDayOfWeek?: number | string): T[][];
33
33
  getWeekdays(firstDayOfWeek?: number | string): string[];
34
+ getWeek(date: T, firstDayOfWeek?: number | string, firstWeekMinSize?: number): number;
34
35
  getMonth(date: T): number;
35
36
  setMonth(date: T, month: number): T;
36
37
  getDate(date: T): number;
@@ -1 +1 @@
1
- {"version":3,"file":"DateAdapter.js","names":[],"sources":["../../../src/composables/date/DateAdapter.ts"],"sourcesContent":["export interface DateAdapter<T = unknown> {\n date (value?: any): T | null\n format (date: T, formatString: string): string\n toJsDate (value: T): Date\n parseISO (date: string): T\n toISO (date: T): string\n\n startOfDay (date: T): T\n endOfDay (date: T): T\n startOfWeek (date: T, firstDayOfWeek?: number | string): T\n endOfWeek (date: T): T\n startOfMonth (date: T): T\n endOfMonth (date: T): T\n startOfYear (date: T): T\n endOfYear (date: T): T\n\n isAfter (date: T, comparing: T): boolean\n isAfterDay(value: T, comparing: T): boolean\n\n isSameDay (date: T, comparing: T): boolean\n isSameMonth (date: T, comparing: T): boolean\n isSameYear(value: T, comparing: T): boolean\n\n isBefore (date: T, comparing: T): boolean\n isEqual (date: T, comparing: T): boolean\n isValid (date: any): boolean\n isWithinRange (date: T, range: [T, T]): boolean\n\n addMinutes (date: T, amount: number): T\n addHours (date: T, amount: number): T\n addDays (date: T, amount: number): T\n addWeeks (date: T, amount: number): T\n addMonths (date: T, amount: number): T\n\n getYear (date: T): number\n setYear (date: T, year: number): T\n getDiff (date: T, comparing: T | string, unit?: string): number\n getWeekArray (date: T, firstDayOfWeek?: number | string): T[][]\n getWeekdays (firstDayOfWeek?: number | string): string[]\n getMonth (date: T): number\n setMonth (date: T, month: number): T\n getDate (date: T): number\n setDate (date: T, day: number): T\n getNextMonth (date: T): T\n getPreviousMonth(date: T): T\n\n getHours (date: T): number\n setHours (date: T, hours: number): T\n getMinutes (date: T): number\n setMinutes (date: T, minutes: number): T\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"DateAdapter.js","names":[],"sources":["../../../src/composables/date/DateAdapter.ts"],"sourcesContent":["export interface DateAdapter<T = unknown> {\n date (value?: any): T | null\n format (date: T, formatString: string): string\n toJsDate (value: T): Date\n parseISO (date: string): T\n toISO (date: T): string\n\n startOfDay (date: T): T\n endOfDay (date: T): T\n startOfWeek (date: T, firstDayOfWeek?: number | string): T\n endOfWeek (date: T): T\n startOfMonth (date: T): T\n endOfMonth (date: T): T\n startOfYear (date: T): T\n endOfYear (date: T): T\n\n isAfter (date: T, comparing: T): boolean\n isAfterDay(value: T, comparing: T): boolean\n\n isSameDay (date: T, comparing: T): boolean\n isSameMonth (date: T, comparing: T): boolean\n isSameYear(value: T, comparing: T): boolean\n\n isBefore (date: T, comparing: T): boolean\n isEqual (date: T, comparing: T): boolean\n isValid (date: any): boolean\n isWithinRange (date: T, range: [T, T]): boolean\n\n addMinutes (date: T, amount: number): T\n addHours (date: T, amount: number): T\n addDays (date: T, amount: number): T\n addWeeks (date: T, amount: number): T\n addMonths (date: T, amount: number): T\n\n getYear (date: T): number\n setYear (date: T, year: number): T\n getDiff (date: T, comparing: T | string, unit?: string): number\n getWeekArray (date: T, firstDayOfWeek?: number | string): T[][]\n getWeekdays (firstDayOfWeek?: number | string): string[]\n getWeek (date: T, firstDayOfWeek?: number | string, firstWeekMinSize?: number): number\n getMonth (date: T): number\n setMonth (date: T, month: number): T\n getDate (date: T): number\n setDate (date: T, day: number): T\n getNextMonth (date: T): T\n getPreviousMonth(date: T): T\n\n getHours (date: T): number\n setHours (date: T, hours: number): T\n getMinutes (date: T): number\n setMinutes (date: T, minutes: number): T\n}\n"],"mappings":"","ignoreList":[]}
@@ -40,6 +40,7 @@ export declare class VuetifyDateAdapter implements DateAdapter<Date> {
40
40
  getWeekdays(firstDayOfWeek?: number | string): string[];
41
41
  getYear(date: Date): number;
42
42
  getMonth(date: Date): number;
43
+ getWeek(date: Date, firstDayOfWeek?: number | string, firstWeekMinSize?: number): number;
43
44
  getDate(date: Date): number;
44
45
  getNextMonth(date: Date): Date;
45
46
  getPreviousMonth(date: Date): Date;
@@ -1,164 +1,80 @@
1
1
  // Utilities
2
2
  import { createRange, padStart } from "../../../util/index.js"; // Types
3
- const firstDay = {
4
- '001': 1,
5
- AD: 1,
6
- AE: 6,
7
- AF: 6,
8
- AG: 0,
9
- AI: 1,
10
- AL: 1,
11
- AM: 1,
12
- AN: 1,
13
- AR: 1,
14
- AS: 0,
15
- AT: 1,
16
- AU: 1,
17
- AX: 1,
18
- AZ: 1,
19
- BA: 1,
20
- BD: 0,
21
- BE: 1,
22
- BG: 1,
23
- BH: 6,
24
- BM: 1,
25
- BN: 1,
26
- BR: 0,
27
- BS: 0,
28
- BT: 0,
29
- BW: 0,
30
- BY: 1,
31
- BZ: 0,
32
- CA: 0,
33
- CH: 1,
34
- CL: 1,
35
- CM: 1,
36
- CN: 1,
37
- CO: 0,
38
- CR: 1,
39
- CY: 1,
40
- CZ: 1,
41
- DE: 1,
42
- DJ: 6,
43
- DK: 1,
44
- DM: 0,
45
- DO: 0,
46
- DZ: 6,
47
- EC: 1,
48
- EE: 1,
49
- EG: 6,
50
- ES: 1,
51
- ET: 0,
52
- FI: 1,
53
- FJ: 1,
54
- FO: 1,
55
- FR: 1,
56
- GB: 1,
57
- 'GB-alt-variant': 0,
58
- GE: 1,
59
- GF: 1,
60
- GP: 1,
61
- GR: 1,
62
- GT: 0,
63
- GU: 0,
64
- HK: 0,
65
- HN: 0,
66
- HR: 1,
67
- HU: 1,
68
- ID: 0,
69
- IE: 1,
70
- IL: 0,
71
- IN: 0,
72
- IQ: 6,
73
- IR: 6,
74
- IS: 1,
75
- IT: 1,
76
- JM: 0,
77
- JO: 6,
78
- JP: 0,
79
- KE: 0,
80
- KG: 1,
81
- KH: 0,
82
- KR: 0,
83
- KW: 6,
84
- KZ: 1,
85
- LA: 0,
86
- LB: 1,
87
- LI: 1,
88
- LK: 1,
89
- LT: 1,
90
- LU: 1,
91
- LV: 1,
92
- LY: 6,
93
- MC: 1,
94
- MD: 1,
95
- ME: 1,
96
- MH: 0,
97
- MK: 1,
98
- MM: 0,
99
- MN: 1,
100
- MO: 0,
101
- MQ: 1,
102
- MT: 0,
103
- MV: 5,
104
- MX: 0,
105
- MY: 1,
106
- MZ: 0,
107
- NI: 0,
108
- NL: 1,
109
- NO: 1,
110
- NP: 0,
111
- NZ: 1,
112
- OM: 6,
113
- PA: 0,
114
- PE: 0,
115
- PH: 0,
116
- PK: 0,
117
- PL: 1,
118
- PR: 0,
119
- PT: 0,
120
- PY: 0,
121
- QA: 6,
122
- RE: 1,
123
- RO: 1,
124
- RS: 1,
125
- RU: 1,
126
- SA: 0,
127
- SD: 6,
128
- SE: 1,
129
- SG: 0,
130
- SI: 1,
131
- SK: 1,
132
- SM: 1,
133
- SV: 0,
134
- SY: 6,
135
- TH: 0,
136
- TJ: 1,
137
- TM: 1,
138
- TR: 1,
139
- TT: 0,
140
- TW: 0,
141
- UA: 1,
142
- UM: 0,
143
- US: 0,
144
- UY: 1,
145
- UZ: 1,
146
- VA: 1,
147
- VE: 0,
148
- VI: 0,
149
- VN: 1,
150
- WS: 0,
151
- XK: 1,
152
- YE: 0,
153
- ZA: 0,
154
- ZW: 0
155
- };
3
+ function weekInfo(locale) {
4
+ // https://simplelocalize.io/data/locales/
5
+ // then `new Intl.Locale(...).getWeekInfo()`
6
+ const code = locale.slice(-2).toUpperCase();
7
+ switch (true) {
8
+ case locale === 'GB-alt-variant':
9
+ {
10
+ return {
11
+ firstDay: 0,
12
+ firstWeekSize: 4
13
+ };
14
+ }
15
+ case locale === '001':
16
+ {
17
+ return {
18
+ firstDay: 1,
19
+ firstWeekSize: 1
20
+ };
21
+ }
22
+ case `AG AS BD BR BS BT BW BZ CA CO DM DO ET GT GU HK HN ID IL IN JM JP KE
23
+ 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
24
+ VE VI WS YE ZA ZW`.includes(code):
25
+ {
26
+ return {
27
+ firstDay: 0,
28
+ firstWeekSize: 1
29
+ };
30
+ }
31
+ case `AI AL AM AR AU AZ BA BM BN BY CL CM CN CR CY EC GE HR KG KZ LB LK LV
32
+ MD ME MK MN MY NZ RO RS SI TJ TM TR UA UY UZ VN XK`.includes(code):
33
+ {
34
+ return {
35
+ firstDay: 1,
36
+ firstWeekSize: 1
37
+ };
38
+ }
39
+ case `AD AN AT AX BE BG CH CZ DE DK EE ES FI FJ FO FR GB GF GP GR HU IE IS
40
+ IT LI LT LU MC MQ NL NO PL RE RU SE SK SM VA`.includes(code):
41
+ {
42
+ return {
43
+ firstDay: 1,
44
+ firstWeekSize: 4
45
+ };
46
+ }
47
+ case `AE AF BH DJ DZ EG IQ IR JO KW LY OM QA SD SY`.includes(code):
48
+ {
49
+ return {
50
+ firstDay: 6,
51
+ firstWeekSize: 1
52
+ };
53
+ }
54
+ case code === 'MV':
55
+ {
56
+ return {
57
+ firstDay: 5,
58
+ firstWeekSize: 1
59
+ };
60
+ }
61
+ case code === 'PT':
62
+ {
63
+ return {
64
+ firstDay: 0,
65
+ firstWeekSize: 4
66
+ };
67
+ }
68
+ default:
69
+ return null;
70
+ }
71
+ }
156
72
  function getWeekArray(date, locale, firstDayOfWeek) {
157
73
  const weeks = [];
158
74
  let currentWeek = [];
159
75
  const firstDayOfMonth = startOfMonth(date);
160
76
  const lastDayOfMonth = endOfMonth(date);
161
- const first = firstDayOfWeek ?? firstDay[locale.slice(-2).toUpperCase()] ?? 0;
77
+ const first = firstDayOfWeek ?? weekInfo(locale)?.firstDay ?? 0;
162
78
  const firstDayWeekIndex = (firstDayOfMonth.getDay() - first + 7) % 7;
163
79
  const lastDayWeekIndex = (lastDayOfMonth.getDay() - first + 7) % 7;
164
80
  for (let i = 0; i < firstDayWeekIndex; i++) {
@@ -189,7 +105,7 @@ function getWeekArray(date, locale, firstDayOfWeek) {
189
105
  return weeks;
190
106
  }
191
107
  function startOfWeek(date, locale, firstDayOfWeek) {
192
- const day = firstDayOfWeek ?? firstDay[locale.slice(-2).toUpperCase()] ?? 0;
108
+ const day = firstDayOfWeek ?? weekInfo(locale)?.firstDay ?? 0;
193
109
  const d = new Date(date);
194
110
  while (d.getDay() !== day) {
195
111
  d.setDate(d.getDate() - 1);
@@ -198,7 +114,7 @@ function startOfWeek(date, locale, firstDayOfWeek) {
198
114
  }
199
115
  function endOfWeek(date, locale) {
200
116
  const d = new Date(date);
201
- const lastDay = ((firstDay[locale.slice(-2).toUpperCase()] ?? 0) + 6) % 7;
117
+ const lastDay = ((weekInfo(locale)?.firstDay ?? 0) + 6) % 7;
202
118
  while (d.getDay() !== lastDay) {
203
119
  d.setDate(d.getDate() + 1);
204
120
  }
@@ -233,7 +149,7 @@ function date(value) {
233
149
  }
234
150
  const sundayJanuarySecond2000 = new Date(2000, 0, 2);
235
151
  function getWeekdays(locale, firstDayOfWeek) {
236
- const daysFromSunday = firstDayOfWeek ?? firstDay[locale.slice(-2).toUpperCase()] ?? 0;
152
+ const daysFromSunday = firstDayOfWeek ?? weekInfo(locale)?.firstDay ?? 0;
237
153
  return createRange(7).map(i => {
238
154
  const weekday = new Date(sundayJanuarySecond2000);
239
155
  weekday.setDate(sundayJanuarySecond2000.getDate() + daysFromSunday + i);
@@ -481,6 +397,24 @@ function getYear(date) {
481
397
  function getMonth(date) {
482
398
  return date.getMonth();
483
399
  }
400
+ function getWeek(date, locale, firstDayOfWeek, firstWeekMinSize) {
401
+ const weekInfoFromLocale = weekInfo(locale);
402
+ const weekStart = firstDayOfWeek ?? weekInfoFromLocale?.firstDay ?? 0;
403
+ const minWeekSize = firstWeekMinSize ?? weekInfoFromLocale?.firstWeekSize ?? 1;
404
+ function firstWeekSize(year) {
405
+ const yearStart = new Date(year, 0, 1);
406
+ return 7 - getDiff(yearStart, startOfWeek(yearStart, locale, weekStart), 'days');
407
+ }
408
+ let year = getYear(date);
409
+ const currentWeekEnd = addDays(startOfWeek(date, locale, weekStart), 6);
410
+ if (year < getYear(currentWeekEnd) && firstWeekSize(year + 1) >= minWeekSize) {
411
+ year++;
412
+ }
413
+ const yearStart = new Date(year, 0, 1);
414
+ const size = firstWeekSize(year);
415
+ const d1w1 = size >= minWeekSize ? addDays(yearStart, size - 7) : addDays(yearStart, size);
416
+ return 1 + getDiff(date, d1w1, 'weeks');
417
+ }
484
418
  function getDate(date) {
485
419
  return date.getDate();
486
420
  }
@@ -620,10 +554,12 @@ export class VuetifyDateAdapter {
620
554
  return addMonths(date, amount);
621
555
  }
622
556
  getWeekArray(date, firstDayOfWeek) {
623
- return getWeekArray(date, this.locale, firstDayOfWeek ? Number(firstDayOfWeek) : undefined);
557
+ const firstDay = firstDayOfWeek !== undefined ? Number(firstDayOfWeek) : undefined;
558
+ return getWeekArray(date, this.locale, firstDay);
624
559
  }
625
560
  startOfWeek(date, firstDayOfWeek) {
626
- return startOfWeek(date, this.locale, firstDayOfWeek ? Number(firstDayOfWeek) : undefined);
561
+ const firstDay = firstDayOfWeek !== undefined ? Number(firstDayOfWeek) : undefined;
562
+ return startOfWeek(date, this.locale, firstDay);
627
563
  }
628
564
  endOfWeek(date) {
629
565
  return endOfWeek(date, this.locale);
@@ -683,7 +619,8 @@ export class VuetifyDateAdapter {
683
619
  return getDiff(date, comparing, unit);
684
620
  }
685
621
  getWeekdays(firstDayOfWeek) {
686
- return getWeekdays(this.locale, firstDayOfWeek ? Number(firstDayOfWeek) : undefined);
622
+ const firstDay = firstDayOfWeek !== undefined ? Number(firstDayOfWeek) : undefined;
623
+ return getWeekdays(this.locale, firstDay);
687
624
  }
688
625
  getYear(date) {
689
626
  return getYear(date);
@@ -691,6 +628,10 @@ export class VuetifyDateAdapter {
691
628
  getMonth(date) {
692
629
  return getMonth(date);
693
630
  }
631
+ getWeek(date, firstDayOfWeek, firstWeekMinSize) {
632
+ const firstDay = firstDayOfWeek !== undefined ? Number(firstDayOfWeek) : undefined;
633
+ return getWeek(date, this.locale, firstDay, firstWeekMinSize);
634
+ }
694
635
  getDate(date) {
695
636
  return getDate(date);
696
637
  }
@@ -1 +1 @@
1
- {"version":3,"file":"vuetify.js","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","firstDayOfWeek","weeks","currentWeek","firstDayOfMonth","startOfMonth","lastDayOfMonth","endOfMonth","first","slice","toUpperCase","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","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","getNextMonth","getPreviousMonth","startOfYear","endOfYear","isWithinRange","range","isAfter","isBefore","isValid","getTime","comparing","isAfterDay","startOfDay","isEqual","isSameDay","isSameMonth","isSameYear","getDiff","unit","c","Math","floor","count","setYear","setFullYear","endOfDay","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\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, firstDayOfWeek?: number) {\n const weeks = []\n let currentWeek = []\n const firstDayOfMonth = startOfMonth(date)\n const lastDayOfMonth = endOfMonth(date)\n const first = firstDayOfWeek ?? firstDay[locale.slice(-2).toUpperCase()] ?? 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 ?? firstDay[locale.slice(-2).toUpperCase()] ?? 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 = ((firstDay[locale.slice(-2).toUpperCase()] ?? 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) {\n const daysFromSunday = firstDayOfWeek ?? firstDay[locale.slice(-2).toUpperCase()] ?? 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: '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 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 return getWeekArray(date, this.locale, firstDayOfWeek ? Number(firstDayOfWeek) : undefined)\n }\n\n startOfWeek (date: Date, firstDayOfWeek?: number | string): Date {\n return startOfWeek(date, this.locale, firstDayOfWeek ? Number(firstDayOfWeek) : undefined)\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) {\n return getWeekdays(this.locale, firstDayOfWeek ? Number(firstDayOfWeek) : undefined)\n }\n\n getYear (date: Date) {\n return getYear(date)\n }\n\n getMonth (date: Date) {\n return getMonth(date)\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,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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","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","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","getNextMonth","getPreviousMonth","startOfYear","endOfYear","isWithinRange","range","isAfter","isBefore","isValid","getTime","comparing","isAfterDay","startOfDay","isEqual","isSameDay","isSameMonth","isSameYear","unit","c","Math","floor","count","setYear","setFullYear","endOfDay","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) {\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: '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(date, 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) {\n const firstDay = firstDayOfWeek !== undefined ? Number(firstDayOfWeek) : undefined\n return getWeekdays(this.locale, firstDay)\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":[]}