vuetify 3.3.3 → 3.3.4

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 (308) hide show
  1. package/dist/_component-variables-labs.sass +2 -0
  2. package/dist/json/attributes.json +452 -12
  3. package/dist/json/importMap-labs.json +32 -0
  4. package/dist/json/importMap.json +20 -20
  5. package/dist/json/tags.json +150 -0
  6. package/dist/json/web-types.json +1609 -21
  7. package/dist/vuetify-labs.css +469 -192
  8. package/dist/vuetify-labs.d.ts +5178 -217
  9. package/dist/vuetify-labs.esm.js +1902 -990
  10. package/dist/vuetify-labs.esm.js.map +1 -1
  11. package/dist/vuetify-labs.js +1902 -990
  12. package/dist/vuetify-labs.min.css +2 -2
  13. package/dist/vuetify.css +210 -203
  14. package/dist/vuetify.d.ts +60 -45
  15. package/dist/vuetify.esm.js +142 -104
  16. package/dist/vuetify.esm.js.map +1 -1
  17. package/dist/vuetify.js +142 -104
  18. package/dist/vuetify.js.map +1 -1
  19. package/dist/vuetify.min.css +2 -2
  20. package/dist/vuetify.min.js +159 -160
  21. package/dist/vuetify.min.js.map +1 -1
  22. package/lib/blueprints/index.d.mts +32 -25
  23. package/lib/blueprints/md1.d.mts +32 -25
  24. package/lib/blueprints/md2.d.mts +32 -25
  25. package/lib/blueprints/md3.d.mts +32 -25
  26. package/lib/components/VAppBar/VAppBar.mjs +3 -10
  27. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  28. package/lib/components/VAutocomplete/VAutocomplete.css +4 -22
  29. package/lib/components/VAutocomplete/VAutocomplete.mjs +1 -1
  30. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  31. package/lib/components/VAutocomplete/VAutocomplete.sass +6 -17
  32. package/lib/components/VBreadcrumbs/index.d.mts +7 -7
  33. package/lib/components/VBtn/VBtn.css +11 -11
  34. package/lib/components/VBtn/VBtn.sass +1 -1
  35. package/lib/components/VBtn/_mixins.scss +1 -1
  36. package/lib/components/VChip/VChip.css +67 -67
  37. package/lib/components/VChip/_variables.scss +1 -1
  38. package/lib/components/VCombobox/VCombobox.css +4 -22
  39. package/lib/components/VCombobox/VCombobox.sass +6 -17
  40. package/lib/components/VCombobox/_variables.scss +3 -3
  41. package/lib/components/VCounter/index.d.mts +8 -8
  42. package/lib/components/VField/VField.css +71 -8
  43. package/lib/components/VField/VField.sass +9 -5
  44. package/lib/components/VField/_mixins.sass +7 -0
  45. package/lib/components/VFileInput/VFileInput.css +2 -17
  46. package/lib/components/VFileInput/VFileInput.mjs +0 -2
  47. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  48. package/lib/components/VFileInput/VFileInput.sass +2 -11
  49. package/lib/components/VFileInput/_variables.scss +3 -3
  50. package/lib/components/VInput/VInput.css +14 -1
  51. package/lib/components/VInput/VInput.sass +6 -0
  52. package/lib/components/VInput/_variables.scss +5 -1
  53. package/lib/components/VList/VListItem.mjs +1 -1
  54. package/lib/components/VList/VListItem.mjs.map +1 -1
  55. package/lib/components/VSelect/VSelect.css +2 -20
  56. package/lib/components/VSelect/VSelect.mjs +1 -1
  57. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  58. package/lib/components/VSelect/VSelect.sass +2 -12
  59. package/lib/components/VSelect/_variables.scss +3 -3
  60. package/lib/components/VTabs/VTab.mjs +2 -2
  61. package/lib/components/VTabs/VTab.mjs.map +1 -1
  62. package/lib/components/VTimePicker/VTimePickerTitle.mjs +1 -1
  63. package/lib/components/index.d.mts +15 -15
  64. package/lib/components/index.mjs +1 -2
  65. package/lib/components/index.mjs.map +1 -1
  66. package/lib/composables/icons.mjs.map +1 -1
  67. package/lib/composables/list-items.mjs +5 -2
  68. package/lib/composables/list-items.mjs.map +1 -1
  69. package/lib/composables/nested/nested.mjs +1 -1
  70. package/lib/composables/nested/nested.mjs.map +1 -1
  71. package/lib/entry-bundler.mjs +1 -1
  72. package/lib/framework.mjs +1 -1
  73. package/lib/iconsets/fa-svg.d.mts +1 -0
  74. package/lib/iconsets/fa.d.mts +1 -0
  75. package/lib/iconsets/fa.mjs +2 -1
  76. package/lib/iconsets/fa.mjs.map +1 -1
  77. package/lib/iconsets/fa4.d.mts +1 -0
  78. package/lib/iconsets/fa4.mjs +2 -1
  79. package/lib/iconsets/fa4.mjs.map +1 -1
  80. package/lib/iconsets/md.d.mts +1 -0
  81. package/lib/iconsets/md.mjs +2 -1
  82. package/lib/iconsets/md.mjs.map +1 -1
  83. package/lib/iconsets/mdi-svg.d.mts +1 -0
  84. package/lib/iconsets/mdi-svg.mjs +2 -1
  85. package/lib/iconsets/mdi-svg.mjs.map +1 -1
  86. package/lib/iconsets/mdi.d.mts +1 -0
  87. package/lib/iconsets/mdi.mjs +2 -1
  88. package/lib/iconsets/mdi.mjs.map +1 -1
  89. package/lib/index.d.mts +45 -30
  90. package/lib/labs/VDataTable/VDataTableVirtual.mjs +16 -12
  91. package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
  92. package/lib/labs/VDataTable/composables/headers.mjs +2 -5
  93. package/lib/labs/VDataTable/composables/headers.mjs.map +1 -1
  94. package/lib/labs/VDateInput/VDateInput.mjs +127 -0
  95. package/lib/labs/VDateInput/VDateInput.mjs.map +1 -0
  96. package/lib/labs/VDateInput/VDateInput.sass +11 -0
  97. package/lib/labs/VDateInput/VDateRangeInput.mjs +223 -0
  98. package/lib/labs/VDateInput/VDateRangeInput.mjs.map +1 -0
  99. package/lib/labs/VDateInput/VDateRangeInput.sass +10 -0
  100. package/lib/labs/VDateInput/composables.mjs +59 -0
  101. package/lib/labs/VDateInput/composables.mjs.map +1 -0
  102. package/lib/labs/VDateInput/index.d.mts +1352 -0
  103. package/lib/labs/VDateInput/index.mjs +3 -0
  104. package/lib/labs/VDateInput/index.mjs.map +1 -0
  105. package/lib/labs/VDatePicker/VDateCard.css +33 -0
  106. package/lib/labs/VDatePicker/VDateCard.mjs +112 -0
  107. package/lib/labs/VDatePicker/VDateCard.mjs.map +1 -0
  108. package/lib/labs/VDatePicker/VDateCard.sass +32 -0
  109. package/lib/labs/VDatePicker/VDatePicker.css +23 -0
  110. package/lib/labs/VDatePicker/VDatePicker.mjs +172 -0
  111. package/lib/labs/VDatePicker/VDatePicker.mjs.map +1 -0
  112. package/lib/labs/VDatePicker/VDatePicker.sass +23 -0
  113. package/lib/labs/VDatePicker/VDatePickerControls.css +15 -0
  114. package/lib/labs/VDatePicker/VDatePickerControls.mjs +80 -0
  115. package/lib/labs/VDatePicker/VDatePickerControls.mjs.map +1 -0
  116. package/lib/labs/VDatePicker/VDatePickerControls.sass +15 -0
  117. package/lib/labs/VDatePicker/VDatePickerHeader.css +54 -0
  118. package/lib/labs/VDatePicker/VDatePickerHeader.mjs +75 -0
  119. package/lib/labs/VDatePicker/VDatePickerHeader.mjs.map +1 -0
  120. package/lib/labs/VDatePicker/VDatePickerHeader.sass +51 -0
  121. package/lib/labs/VDatePicker/VDatePickerInput.sass +17 -0
  122. package/lib/labs/VDatePicker/VDatePickerMonth.css +77 -0
  123. package/lib/labs/VDatePicker/VDatePickerMonth.mjs +286 -0
  124. package/lib/labs/VDatePicker/VDatePickerMonth.mjs.map +1 -0
  125. package/lib/labs/VDatePicker/VDatePickerMonth.sass +69 -0
  126. package/lib/{components → labs}/VDatePicker/VDatePickerTitle.mjs +1 -1
  127. package/lib/labs/VDatePicker/VDatePickerTitle.mjs.map +1 -0
  128. package/lib/labs/VDatePicker/VDatePickerYears.css +18 -0
  129. package/lib/labs/VDatePicker/VDatePickerYears.mjs +64 -0
  130. package/lib/labs/VDatePicker/VDatePickerYears.mjs.map +1 -0
  131. package/lib/labs/VDatePicker/VDatePickerYears.sass +16 -0
  132. package/lib/labs/VDatePicker/composables.mjs +33 -0
  133. package/lib/labs/VDatePicker/composables.mjs.map +1 -0
  134. package/lib/labs/VDatePicker/index.d.mts +4430 -0
  135. package/lib/labs/VDatePicker/index.mjs +7 -0
  136. package/lib/labs/VDatePicker/index.mjs.map +1 -0
  137. package/lib/labs/VDatePicker/mixins/date-picker-table.mjs.map +1 -0
  138. package/lib/labs/VDatePicker/util/createNativeLocaleFormatter.mjs.map +1 -0
  139. package/lib/labs/VDatePicker/util/eventHelpers.mjs.map +1 -0
  140. package/lib/labs/VDatePicker/util/index.mjs.map +1 -0
  141. package/lib/labs/VDatePicker/util/isDateAllowed.mjs.map +1 -0
  142. package/lib/labs/VDatePicker/util/monthChange.mjs.map +1 -0
  143. package/lib/labs/VDatePicker/util/pad.mjs.map +1 -0
  144. package/lib/labs/VDatePicker/util/sanitizeDateString.mjs.map +1 -0
  145. package/lib/labs/VDatePicker/utils.mjs +69 -0
  146. package/lib/labs/VDatePicker/utils.mjs.map +1 -0
  147. package/lib/labs/VDateRangePicker/VDateRangeCard.mjs +87 -0
  148. package/lib/labs/VDateRangePicker/VDateRangeCard.mjs.map +1 -0
  149. package/lib/labs/VDateRangePicker/VDateRangeCard.sass +33 -0
  150. package/lib/labs/VDateRangePicker/VDateRangePicker.mjs +131 -0
  151. package/lib/labs/VDateRangePicker/VDateRangePicker.mjs.map +1 -0
  152. package/lib/labs/VDateRangePicker/VDateRangePicker.sass +21 -0
  153. package/lib/labs/VDateRangePicker/VDateRangePickerHeader.mjs +103 -0
  154. package/lib/labs/VDateRangePicker/VDateRangePickerHeader.mjs.map +1 -0
  155. package/lib/labs/VDateRangePicker/VDateRangePickerHeader.sass +39 -0
  156. package/lib/labs/VDateRangePicker/VDateRangePickerMonth.mjs +61 -0
  157. package/lib/labs/VDateRangePicker/VDateRangePickerMonth.mjs.map +1 -0
  158. package/lib/labs/VDateRangePicker/VDateRangePickerMonth.sass +12 -0
  159. package/lib/labs/VDateRangePicker/index.d.mts +1065 -0
  160. package/lib/labs/VDateRangePicker/index.mjs +3 -0
  161. package/lib/labs/VDateRangePicker/index.mjs.map +1 -0
  162. package/lib/labs/VPicker/VPicker.css +57 -0
  163. package/lib/labs/VPicker/VPicker.mjs +47 -0
  164. package/lib/labs/VPicker/VPicker.mjs.map +1 -0
  165. package/lib/labs/VPicker/VPicker.sass +53 -0
  166. package/lib/labs/VPicker/VPickerTitle.mjs +4 -0
  167. package/lib/labs/VPicker/VPickerTitle.mjs.map +1 -0
  168. package/lib/labs/VPicker/index.d.mts +541 -0
  169. package/lib/labs/VPicker/index.mjs +3 -0
  170. package/lib/labs/VPicker/index.mjs.map +1 -0
  171. package/lib/labs/components.d.mts +5136 -198
  172. package/lib/labs/components.mjs +2 -0
  173. package/lib/labs/components.mjs.map +1 -1
  174. package/lib/labs/date/DateAdapter.mjs.map +1 -1
  175. package/lib/labs/date/adapters/vuetify.d.mts +28 -25
  176. package/lib/labs/date/adapters/vuetify.mjs +65 -75
  177. package/lib/labs/date/adapters/vuetify.mjs.map +1 -1
  178. package/lib/labs/date/date.mjs +82 -11
  179. package/lib/labs/date/date.mjs.map +1 -1
  180. package/lib/labs/date/index.d.mts +31 -30
  181. package/lib/locale/af.mjs +14 -5
  182. package/lib/locale/af.mjs.map +1 -1
  183. package/lib/locale/ar.mjs +14 -5
  184. package/lib/locale/ar.mjs.map +1 -1
  185. package/lib/locale/az.mjs +14 -5
  186. package/lib/locale/az.mjs.map +1 -1
  187. package/lib/locale/bg.mjs +14 -5
  188. package/lib/locale/bg.mjs.map +1 -1
  189. package/lib/locale/ca.mjs +14 -5
  190. package/lib/locale/ca.mjs.map +1 -1
  191. package/lib/locale/ckb.mjs +14 -5
  192. package/lib/locale/ckb.mjs.map +1 -1
  193. package/lib/locale/cs.mjs +14 -5
  194. package/lib/locale/cs.mjs.map +1 -1
  195. package/lib/locale/da.mjs +14 -5
  196. package/lib/locale/da.mjs.map +1 -1
  197. package/lib/locale/de.mjs +14 -5
  198. package/lib/locale/de.mjs.map +1 -1
  199. package/lib/locale/el.mjs +14 -5
  200. package/lib/locale/el.mjs.map +1 -1
  201. package/lib/locale/en.mjs +14 -5
  202. package/lib/locale/en.mjs.map +1 -1
  203. package/lib/locale/es.mjs +14 -5
  204. package/lib/locale/es.mjs.map +1 -1
  205. package/lib/locale/et.mjs +14 -5
  206. package/lib/locale/et.mjs.map +1 -1
  207. package/lib/locale/fa.mjs +14 -5
  208. package/lib/locale/fa.mjs.map +1 -1
  209. package/lib/locale/fi.mjs +14 -5
  210. package/lib/locale/fi.mjs.map +1 -1
  211. package/lib/locale/fr.mjs +14 -5
  212. package/lib/locale/fr.mjs.map +1 -1
  213. package/lib/locale/he.mjs +14 -5
  214. package/lib/locale/he.mjs.map +1 -1
  215. package/lib/locale/hr.mjs +14 -5
  216. package/lib/locale/hr.mjs.map +1 -1
  217. package/lib/locale/hu.mjs +14 -5
  218. package/lib/locale/hu.mjs.map +1 -1
  219. package/lib/locale/id.mjs +14 -5
  220. package/lib/locale/id.mjs.map +1 -1
  221. package/lib/locale/index.d.mts +588 -210
  222. package/lib/locale/it.mjs +14 -5
  223. package/lib/locale/it.mjs.map +1 -1
  224. package/lib/locale/ja.mjs +14 -5
  225. package/lib/locale/ja.mjs.map +1 -1
  226. package/lib/locale/ko.mjs +14 -5
  227. package/lib/locale/ko.mjs.map +1 -1
  228. package/lib/locale/lt.mjs +14 -5
  229. package/lib/locale/lt.mjs.map +1 -1
  230. package/lib/locale/lv.mjs +14 -5
  231. package/lib/locale/lv.mjs.map +1 -1
  232. package/lib/locale/nl.mjs +14 -5
  233. package/lib/locale/nl.mjs.map +1 -1
  234. package/lib/locale/no.mjs +14 -5
  235. package/lib/locale/no.mjs.map +1 -1
  236. package/lib/locale/pl.mjs +14 -5
  237. package/lib/locale/pl.mjs.map +1 -1
  238. package/lib/locale/pt.mjs +14 -5
  239. package/lib/locale/pt.mjs.map +1 -1
  240. package/lib/locale/ro.mjs +14 -5
  241. package/lib/locale/ro.mjs.map +1 -1
  242. package/lib/locale/ru.mjs +14 -5
  243. package/lib/locale/ru.mjs.map +1 -1
  244. package/lib/locale/sk.mjs +14 -5
  245. package/lib/locale/sk.mjs.map +1 -1
  246. package/lib/locale/sl.mjs +14 -5
  247. package/lib/locale/sl.mjs.map +1 -1
  248. package/lib/locale/sr-Cyrl.mjs +14 -5
  249. package/lib/locale/sr-Cyrl.mjs.map +1 -1
  250. package/lib/locale/sr-Latn.mjs +14 -5
  251. package/lib/locale/sr-Latn.mjs.map +1 -1
  252. package/lib/locale/sv.mjs +14 -5
  253. package/lib/locale/sv.mjs.map +1 -1
  254. package/lib/locale/th.mjs +14 -5
  255. package/lib/locale/th.mjs.map +1 -1
  256. package/lib/locale/tr.mjs +14 -5
  257. package/lib/locale/tr.mjs.map +1 -1
  258. package/lib/locale/uk.mjs +14 -5
  259. package/lib/locale/uk.mjs.map +1 -1
  260. package/lib/locale/vi.mjs +14 -5
  261. package/lib/locale/vi.mjs.map +1 -1
  262. package/lib/locale/zh-Hans.mjs +14 -5
  263. package/lib/locale/zh-Hans.mjs.map +1 -1
  264. package/lib/locale/zh-Hant.mjs +14 -5
  265. package/lib/locale/zh-Hant.mjs.map +1 -1
  266. package/lib/util/dateTimeUtils.mjs +68 -0
  267. package/lib/util/dateTimeUtils.mjs.map +1 -1
  268. package/package.json +5 -2
  269. package/lib/components/VDatePicker/VDatePicker.mjs +0 -475
  270. package/lib/components/VDatePicker/VDatePicker.mjs.map +0 -1
  271. package/lib/components/VDatePicker/VDatePickerDateTable.mjs +0 -120
  272. package/lib/components/VDatePicker/VDatePickerDateTable.mjs.map +0 -1
  273. package/lib/components/VDatePicker/VDatePickerHeader.mjs +0 -136
  274. package/lib/components/VDatePicker/VDatePickerHeader.mjs.map +0 -1
  275. package/lib/components/VDatePicker/VDatePickerHeader.sass +0 -46
  276. package/lib/components/VDatePicker/VDatePickerMonthTable.mjs +0 -48
  277. package/lib/components/VDatePicker/VDatePickerMonthTable.mjs.map +0 -1
  278. package/lib/components/VDatePicker/VDatePickerTitle.mjs.map +0 -1
  279. package/lib/components/VDatePicker/VDatePickerYears.mjs +0 -84
  280. package/lib/components/VDatePicker/VDatePickerYears.mjs.map +0 -1
  281. package/lib/components/VDatePicker/VDatePickerYears.sass +0 -30
  282. package/lib/components/VDatePicker/index.mjs +0 -18
  283. package/lib/components/VDatePicker/index.mjs.map +0 -1
  284. package/lib/components/VDatePicker/mixins/date-picker-table.mjs.map +0 -1
  285. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.mjs.map +0 -1
  286. package/lib/components/VDatePicker/util/eventHelpers.mjs.map +0 -1
  287. package/lib/components/VDatePicker/util/index.mjs.map +0 -1
  288. package/lib/components/VDatePicker/util/isDateAllowed.mjs.map +0 -1
  289. package/lib/components/VDatePicker/util/monthChange.mjs.map +0 -1
  290. package/lib/components/VDatePicker/util/pad.mjs.map +0 -1
  291. package/lib/components/VDatePicker/util/sanitizeDateString.mjs.map +0 -1
  292. package/lib/components/VPicker/VPicker.mjs +0 -86
  293. package/lib/components/VPicker/VPicker.mjs.map +0 -1
  294. package/lib/components/VPicker/VPicker.sass +0 -94
  295. package/lib/components/VPicker/index.mjs +0 -4
  296. package/lib/components/VPicker/index.mjs.map +0 -1
  297. /package/lib/{components → labs}/VDatePicker/VDatePickerTable.sass +0 -0
  298. /package/lib/{components → labs}/VDatePicker/VDatePickerTitle.sass +0 -0
  299. /package/lib/{components → labs}/VDatePicker/_variables.scss +0 -0
  300. /package/lib/{components → labs}/VDatePicker/mixins/date-picker-table.mjs +0 -0
  301. /package/lib/{components → labs}/VDatePicker/util/createNativeLocaleFormatter.mjs +0 -0
  302. /package/lib/{components → labs}/VDatePicker/util/eventHelpers.mjs +0 -0
  303. /package/lib/{components → labs}/VDatePicker/util/index.mjs +0 -0
  304. /package/lib/{components → labs}/VDatePicker/util/isDateAllowed.mjs +0 -0
  305. /package/lib/{components → labs}/VDatePicker/util/monthChange.mjs +0 -0
  306. /package/lib/{components → labs}/VDatePicker/util/pad.mjs +0 -0
  307. /package/lib/{components → labs}/VDatePicker/util/sanitizeDateString.mjs +0 -0
  308. /package/lib/{components → labs}/VPicker/_variables.scss +0 -0
@@ -1,6 +1,8 @@
1
1
  export * from "./VBottomSheet/index.mjs";
2
2
  export * from "./VDataIterator/index.mjs";
3
3
  export * from "./VDataTable/index.mjs";
4
+ export * from "./VDatePicker/index.mjs";
4
5
  export * from "./VInfiniteScroll/index.mjs";
6
+ export * from "./VPicker/index.mjs";
5
7
  export * from "./VSkeletonLoader/index.mjs";
6
8
  //# sourceMappingURL=components.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"components.mjs","names":[],"sources":["../../src/labs/components.ts"],"sourcesContent":["export * from './VBottomSheet'\nexport * from './VDataIterator'\nexport * from './VDataTable'\nexport * from './VInfiniteScroll'\nexport * from './VSkeletonLoader'\n"],"mappings":""}
1
+ {"version":3,"file":"components.mjs","names":[],"sources":["../../src/labs/components.ts"],"sourcesContent":["export * from './VBottomSheet'\nexport * from './VDataIterator'\nexport * from './VDataTable'\nexport * from './VDatePicker'\nexport * from './VInfiniteScroll'\nexport * from './VPicker'\nexport * from './VSkeletonLoader'\n"],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"DateAdapter.mjs","names":[],"sources":["../../../src/labs/date/DateAdapter.ts"],"sourcesContent":["export interface DateAdapter<Date> {\n date (value?: any): Date | null\n format (date: Date, formatString: string): string\n\n startOfMonth (date: Date): Date\n endOfMonth (date: Date): Date\n startOfYear (date: Date): Date\n endOfYear (date: Date): Date\n\n isAfter (date: Date, comparing: Date): boolean\n isEqual (date: Date, comparing: Date): boolean\n isSameDay (date: Date, comparing: Date): boolean\n isSameMonth (date: Date, comparing: Date): boolean\n isValid (date: any): boolean\n isWithinRange (date: Date, range: [Date, Date]): boolean\n\n addDays (date: Date, amount: number): Date\n addMonths (date: Date, amount: number): Date\n\n getYear (date: Date): number\n setYear (date: Date, year: number): Date\n getDiff (date: Date, comparing: Date | string, unit?: string): number\n getWeek (date: Date): number\n getWeekArray (date: Date): (Date | null)[][]\n getWeekdays (): string[]\n getMonth (date: Date): number\n}\n"],"mappings":""}
1
+ {"version":3,"file":"DateAdapter.mjs","names":[],"sources":["../../../src/labs/date/DateAdapter.ts"],"sourcesContent":["export interface DateAdapter<T> {\n date (value?: any): T | null\n format (date: T, formatString: string): string\n toJsDate (value: T): Date\n\n startOfMonth (date: T): T\n endOfMonth (date: T): T\n startOfYear (date: T): T\n endOfYear (date: T): T\n\n isBefore (date: T, comparing: T): boolean\n isAfter (date: T, comparing: T): boolean\n isEqual (date: T, comparing: T): boolean\n isSameDay (date: T, comparing: T): boolean\n isSameMonth (date: T, comparing: T): boolean\n isValid (date: any): boolean\n isWithinRange (date: T, range: [T, T]): boolean\n\n addDays (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): T[][]\n getWeekdays (): string[]\n getMonth (date: T): number\n}\n"],"mappings":""}
@@ -1,35 +1,38 @@
1
- interface DateAdapter<Date> {
2
- date(value?: any): Date | null;
3
- format(date: Date, formatString: string): string;
4
- startOfMonth(date: Date): Date;
5
- endOfMonth(date: Date): Date;
6
- startOfYear(date: Date): Date;
7
- endOfYear(date: Date): Date;
8
- isAfter(date: Date, comparing: Date): boolean;
9
- isEqual(date: Date, comparing: Date): boolean;
10
- isSameDay(date: Date, comparing: Date): boolean;
11
- isSameMonth(date: Date, comparing: Date): boolean;
1
+ interface DateAdapter<T> {
2
+ date(value?: any): T | null;
3
+ format(date: T, formatString: string): string;
4
+ toJsDate(value: T): Date;
5
+ startOfMonth(date: T): T;
6
+ endOfMonth(date: T): T;
7
+ startOfYear(date: T): T;
8
+ endOfYear(date: T): T;
9
+ isBefore(date: T, comparing: T): boolean;
10
+ isAfter(date: T, comparing: T): boolean;
11
+ isEqual(date: T, comparing: T): boolean;
12
+ isSameDay(date: T, comparing: T): boolean;
13
+ isSameMonth(date: T, comparing: T): boolean;
12
14
  isValid(date: any): boolean;
13
- isWithinRange(date: Date, range: [Date, Date]): boolean;
14
- addDays(date: Date, amount: number): Date;
15
- addMonths(date: Date, amount: number): Date;
16
- getYear(date: Date): number;
17
- setYear(date: Date, year: number): Date;
18
- getDiff(date: Date, comparing: Date | string, unit?: string): number;
19
- getWeek(date: Date): number;
20
- getWeekArray(date: Date): (Date | null)[][];
15
+ isWithinRange(date: T, range: [T, T]): boolean;
16
+ addDays(date: T, amount: number): T;
17
+ addMonths(date: T, amount: number): T;
18
+ getYear(date: T): number;
19
+ setYear(date: T, year: number): T;
20
+ getDiff(date: T, comparing: T | string, unit?: string): number;
21
+ getWeekArray(date: T): T[][];
21
22
  getWeekdays(): string[];
22
- getMonth(date: Date): number;
23
+ getMonth(date: T): number;
23
24
  }
24
25
 
25
- declare function getWeek(date: Date): number;
26
26
  declare class VuetifyDateAdapter implements DateAdapter<Date> {
27
27
  locale: string;
28
- constructor(locale?: string);
28
+ constructor(options: {
29
+ locale: string;
30
+ });
29
31
  date(value?: any): Date | null;
32
+ toJsDate(date: Date): Date;
30
33
  addDays(date: Date, amount: number): Date;
31
34
  addMonths(date: Date, amount: number): Date;
32
- getWeekArray(date: Date): (Date | null)[][];
35
+ getWeekArray(date: Date): Date[][];
33
36
  startOfMonth(date: Date): Date;
34
37
  endOfMonth(date: Date): Date;
35
38
  format(date: Date, formatString: string): string;
@@ -37,11 +40,11 @@ declare class VuetifyDateAdapter implements DateAdapter<Date> {
37
40
  isValid(date: any): boolean;
38
41
  isWithinRange(date: Date, range: [Date, Date]): boolean;
39
42
  isAfter(date: Date, comparing: Date): boolean;
43
+ isBefore(date: Date, comparing: Date): boolean;
40
44
  isSameDay(date: Date, comparing: Date): boolean;
41
45
  isSameMonth(date: Date, comparing: Date): boolean;
42
46
  setYear(date: Date, year: number): Date;
43
47
  getDiff(date: Date, comparing: Date | string, unit?: string): number;
44
- getWeek(date: Date): number;
45
48
  getWeekdays(): string[];
46
49
  getYear(date: Date): number;
47
50
  getMonth(date: Date): number;
@@ -49,4 +52,4 @@ declare class VuetifyDateAdapter implements DateAdapter<Date> {
49
52
  endOfYear(date: Date): Date;
50
53
  }
51
54
 
52
- export { VuetifyDateAdapter, getWeek };
55
+ export { VuetifyDateAdapter };
@@ -1,46 +1,5 @@
1
1
  // Utilities
2
2
  import { createRange } from "../../../util/index.mjs"; // Types
3
- function getWeekArray(date) {
4
- let currentWeek = [];
5
- const weeks = [];
6
- const firstDayOfMonth = startOfMonth(date);
7
- const lastDayOfMonth = endOfMonth(date);
8
- for (let i = 0; i < firstDayOfMonth.getDay(); i++) {
9
- currentWeek.push(null);
10
- }
11
- for (let i = 1; i <= lastDayOfMonth.getDate(); i++) {
12
- const day = new Date(date.getFullYear(), date.getMonth(), i);
13
-
14
- // Add the day to the current week
15
- currentWeek.push(day);
16
-
17
- // If the current week has 7 days, add it to the weeks array and start a new week
18
- if (currentWeek.length === 7) {
19
- weeks.push(currentWeek);
20
- currentWeek = [];
21
- }
22
- }
23
- for (let i = currentWeek.length; i < 7; i++) {
24
- currentWeek.push(null);
25
- }
26
- weeks.push(currentWeek);
27
- return weeks;
28
- }
29
- function startOfMonth(date) {
30
- return new Date(date.getFullYear(), date.getMonth(), 1);
31
- }
32
- function endOfMonth(date) {
33
- return new Date(date.getFullYear(), date.getMonth() + 1, 0);
34
- }
35
- function date(value) {
36
- if (value == null) return null;
37
- if (value instanceof Date) return value;
38
- if (typeof value === 'string') {
39
- const parsed = Date.parse(value);
40
- if (!isNaN(parsed)) return new Date(parsed);
41
- }
42
- return null;
43
- }
44
3
  const firstDay = {
45
4
  '001': 1,
46
5
  AD: 1,
@@ -54,7 +13,7 @@ const firstDay = {
54
13
  AR: 1,
55
14
  AS: 0,
56
15
  AT: 1,
57
- AU: 0,
16
+ AU: 1,
58
17
  AX: 1,
59
18
  AZ: 1,
60
19
  BA: 1,
@@ -74,7 +33,7 @@ const firstDay = {
74
33
  CH: 1,
75
34
  CL: 1,
76
35
  CM: 1,
77
- CN: 0,
36
+ CN: 1,
78
37
  CO: 0,
79
38
  CR: 1,
80
39
  CY: 1,
@@ -194,6 +153,53 @@ const firstDay = {
194
153
  ZA: 0,
195
154
  ZW: 0
196
155
  };
156
+ function getWeekArray(date, locale) {
157
+ const weeks = [];
158
+ let currentWeek = [];
159
+ const firstDayOfMonth = startOfMonth(date);
160
+ const lastDayOfMonth = endOfMonth(date);
161
+ const firstDayWeekIndex = firstDayOfMonth.getDay() - firstDay[locale.slice(-2).toUpperCase()];
162
+ const lastDayWeekIndex = lastDayOfMonth.getDay() - firstDay[locale.slice(-2).toUpperCase()];
163
+ for (let i = 0; i < firstDayWeekIndex; i++) {
164
+ const adjacentDay = new Date(firstDayOfMonth);
165
+ adjacentDay.setDate(adjacentDay.getDate() - (firstDayWeekIndex - i));
166
+ currentWeek.push(adjacentDay);
167
+ }
168
+ for (let i = 1; i <= lastDayOfMonth.getDate(); i++) {
169
+ const day = new Date(date.getFullYear(), date.getMonth(), i);
170
+
171
+ // Add the day to the current week
172
+ currentWeek.push(day);
173
+
174
+ // If the current week has 7 days, add it to the weeks array and start a new week
175
+ if (currentWeek.length === 7) {
176
+ weeks.push(currentWeek);
177
+ currentWeek = [];
178
+ }
179
+ }
180
+ for (let i = 1; i < 7 - lastDayWeekIndex; i++) {
181
+ const adjacentDay = new Date(lastDayOfMonth);
182
+ adjacentDay.setDate(adjacentDay.getDate() + i);
183
+ currentWeek.push(adjacentDay);
184
+ }
185
+ weeks.push(currentWeek);
186
+ return weeks;
187
+ }
188
+ function startOfMonth(date) {
189
+ return new Date(date.getFullYear(), date.getMonth(), 1);
190
+ }
191
+ function endOfMonth(date) {
192
+ return new Date(date.getFullYear(), date.getMonth() + 1, 0);
193
+ }
194
+ function date(value) {
195
+ if (value == null) return new Date();
196
+ if (value instanceof Date) return value;
197
+ if (typeof value === 'string') {
198
+ const parsed = Date.parse(value);
199
+ if (!isNaN(parsed)) return new Date(parsed);
200
+ }
201
+ return null;
202
+ }
197
203
  const sundayJanuarySecond2000 = new Date(2000, 0, 2);
198
204
  function getWeekdays(locale) {
199
205
  const daysFromSunday = firstDay[locale.slice(-2).toUpperCase()];
@@ -201,7 +207,7 @@ function getWeekdays(locale) {
201
207
  const weekday = new Date(sundayJanuarySecond2000);
202
208
  weekday.setDate(sundayJanuarySecond2000.getDate() + daysFromSunday + i);
203
209
  return new Intl.DateTimeFormat(locale, {
204
- weekday: 'long'
210
+ weekday: 'short'
205
211
  }).format(weekday);
206
212
  });
207
213
  }
@@ -221,8 +227,7 @@ function format(value, formatString, locale) {
221
227
  options = {
222
228
  weekday: 'short',
223
229
  day: 'numeric',
224
- month: 'short',
225
- year: 'numeric'
230
+ month: 'short'
226
231
  };
227
232
  break;
228
233
  case 'keyboardDate':
@@ -240,6 +245,11 @@ function format(value, formatString, locale) {
240
245
  year: 'numeric'
241
246
  };
242
247
  break;
248
+ case 'dayOfMonth':
249
+ options = {
250
+ day: 'numeric'
251
+ };
252
+ break;
243
253
  default:
244
254
  options = {
245
255
  timeZone: 'UTC',
@@ -270,28 +280,6 @@ function startOfYear(date) {
270
280
  function endOfYear(date) {
271
281
  return new Date(date.getFullYear(), 11, 31);
272
282
  }
273
- function getMondayOfFirstWeekOfYear(year) {
274
- return new Date(year, 0, 1);
275
- }
276
-
277
- // https://stackoverflow.com/questions/274861/how-do-i-calculate-the-week-number-given-a-date/275024#275024
278
- export function getWeek(date) {
279
- let year = date.getFullYear();
280
- let d1w1 = getMondayOfFirstWeekOfYear(year);
281
- if (date < d1w1) {
282
- year = year - 1;
283
- d1w1 = getMondayOfFirstWeekOfYear(year);
284
- } else {
285
- const tv = getMondayOfFirstWeekOfYear(year + 1);
286
- if (date >= tv) {
287
- year = year + 1;
288
- d1w1 = tv;
289
- }
290
- }
291
- const diffTime = Math.abs(date.getTime() - d1w1.getTime());
292
- const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24));
293
- return Math.floor(diffDays / 7) + 1;
294
- }
295
283
  function isWithinRange(date, range) {
296
284
  return isAfter(date, range[0]) && isBefore(date, range[1]);
297
285
  }
@@ -328,13 +316,15 @@ function setYear(date, year) {
328
316
  return d;
329
317
  }
330
318
  export class VuetifyDateAdapter {
331
- constructor() {
332
- let locale = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'en';
333
- this.locale = locale;
319
+ constructor(options) {
320
+ this.locale = options.locale;
334
321
  }
335
322
  date(value) {
336
323
  return date(value);
337
324
  }
325
+ toJsDate(date) {
326
+ return date;
327
+ }
338
328
  addDays(date, amount) {
339
329
  return addDays(date, amount);
340
330
  }
@@ -342,7 +332,7 @@ export class VuetifyDateAdapter {
342
332
  return addMonths(date, amount);
343
333
  }
344
334
  getWeekArray(date) {
345
- return getWeekArray(date);
335
+ return getWeekArray(date, this.locale);
346
336
  }
347
337
  startOfMonth(date) {
348
338
  return startOfMonth(date);
@@ -365,6 +355,9 @@ export class VuetifyDateAdapter {
365
355
  isAfter(date, comparing) {
366
356
  return isAfter(date, comparing);
367
357
  }
358
+ isBefore(date, comparing) {
359
+ return !isAfter(date, comparing) && !isEqual(date, comparing);
360
+ }
368
361
  isSameDay(date, comparing) {
369
362
  return isSameDay(date, comparing);
370
363
  }
@@ -377,9 +370,6 @@ export class VuetifyDateAdapter {
377
370
  getDiff(date, comparing, unit) {
378
371
  return getDiff(date, comparing, unit);
379
372
  }
380
- getWeek(date) {
381
- return getWeek(date);
382
- }
383
373
  getWeekdays() {
384
374
  return getWeekdays(this.locale);
385
375
  }
@@ -1 +1 @@
1
- {"version":3,"file":"vuetify.mjs","names":["createRange","getWeekArray","date","currentWeek","weeks","firstDayOfMonth","startOfMonth","lastDayOfMonth","endOfMonth","i","getDay","push","getDate","day","Date","getFullYear","getMonth","length","value","parsed","parse","isNaN","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","sundayJanuarySecond2000","getWeekdays","locale","daysFromSunday","slice","toUpperCase","map","weekday","setDate","Intl","DateTimeFormat","format","formatString","options","month","year","timeZone","timeZoneName","addDays","amount","d","addMonths","setMonth","getYear","startOfYear","endOfYear","getMondayOfFirstWeekOfYear","getWeek","d1w1","tv","diffTime","Math","abs","getTime","diffDays","ceil","floor","isWithinRange","range","isAfter","isBefore","isValid","comparing","isEqual","isSameDay","isSameMonth","getDiff","unit","c","setYear","setFullYear","VuetifyDateAdapter","constructor","arguments","undefined"],"sources":["../../../../src/labs/date/adapters/vuetify.ts"],"sourcesContent":["// Utilities\nimport { createRange } from '@/util'\n\n// Types\nimport type { DateAdapter } from '../DateAdapter'\n\nfunction getWeekArray (date: Date) {\n let currentWeek = []\n const weeks = []\n const firstDayOfMonth = startOfMonth(date)\n const lastDayOfMonth = endOfMonth(date)\n\n for (let i = 0; i < firstDayOfMonth.getDay(); i++) {\n currentWeek.push(null)\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 = currentWeek.length; i < 7; i++) {\n currentWeek.push(null)\n }\n\n weeks.push(currentWeek)\n\n return weeks\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 date (value?: any): Date | null {\n if (value == null) return null\n\n if (value instanceof Date) return value\n\n if (typeof value === 'string') {\n const parsed = Date.parse(value)\n\n if (!isNaN(parsed)) return new Date(parsed)\n }\n\n return null\n}\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: 0,\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: 0,\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\nconst sundayJanuarySecond2000 = new Date(2000, 0, 2)\n\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: 'long' }).format(weekday)\n })\n}\n\nfunction format (value: Date, formatString: string, locale: string): string {\n const date = new Date(value)\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 'normalDateWithWeekday':\n options = { weekday: 'short', day: 'numeric', month: 'short', year: 'numeric' }\n break\n case 'keyboardDate':\n options = {}\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 default:\n options = { timeZone: 'UTC', timeZoneName: 'short' }\n }\n\n return new Intl.DateTimeFormat(locale, options).format(date)\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 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 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 getMondayOfFirstWeekOfYear (year: number) {\n return new Date(year, 0, 1)\n}\n\n// https://stackoverflow.com/questions/274861/how-do-i-calculate-the-week-number-given-a-date/275024#275024\nexport function getWeek (date: Date) {\n let year = date.getFullYear()\n let d1w1 = getMondayOfFirstWeekOfYear(year)\n\n if (date < d1w1) {\n year = year - 1\n d1w1 = getMondayOfFirstWeekOfYear(year)\n } else {\n const tv = getMondayOfFirstWeekOfYear(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\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 setYear (date: Date, year: number) {\n const d = new Date(date)\n d.setFullYear(year)\n return d\n}\n\nexport class VuetifyDateAdapter implements DateAdapter<Date> {\n constructor (public locale: string = 'en') {}\n\n date (value?: any) {\n return date(value)\n }\n\n addDays (date: Date, amount: number) {\n return addDays(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)\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)\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 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 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 getWeek (date: Date) {\n return getWeek(date)\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 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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EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,CAAC;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,E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"}
1
+ {"version":3,"file":"vuetify.mjs","names":["createRange","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","value","parsed","parse","isNaN","sundayJanuarySecond2000","getWeekdays","daysFromSunday","map","weekday","Intl","DateTimeFormat","format","formatString","options","month","year","timeZone","timeZoneName","addDays","amount","d","addMonths","setMonth","getYear","startOfYear","endOfYear","isWithinRange","range","isAfter","isBefore","isValid","getTime","comparing","isEqual","isSameDay","isSameMonth","getDiff","unit","c","Math","floor","setYear","setFullYear","VuetifyDateAdapter","constructor","toJsDate"],"sources":["../../../../src/labs/date/adapters/vuetify.ts"],"sourcesContent":["// Utilities\nimport { createRange } from '@/util'\n\n// Types\nimport type { DateAdapter } from '../DateAdapter'\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()]\n const lastDayWeekIndex = lastDayOfMonth.getDay() - firstDay[locale.slice(-2).toUpperCase()]\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 weeks.push(currentWeek)\n\n return weeks\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 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 const parsed = Date.parse(value)\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) {\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 (value: Date, formatString: string, locale: string): string {\n const date = new Date(value)\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 'normalDateWithWeekday':\n options = { weekday: 'short', day: 'numeric', month: 'short' }\n break\n case 'keyboardDate':\n options = {}\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 'dayOfMonth':\n options = { day: 'numeric' }\n break\n default:\n options = { timeZone: 'UTC', timeZoneName: 'short' }\n }\n\n return new Intl.DateTimeFormat(locale, options).format(date)\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 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 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 setYear (date: Date, year: number) {\n const d = new Date(date)\n d.setFullYear(year)\n return d\n}\n\nexport class VuetifyDateAdapter implements DateAdapter<Date> {\n locale: string\n\n constructor (options: { locale: string }) {\n this.locale = options.locale\n }\n\n date (value?: any) {\n return date(value)\n }\n\n toJsDate (date: Date) {\n return date\n }\n\n addDays (date: Date, amount: number) {\n return addDays(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 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)\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 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 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,mCAEpB;AAGA,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,EAAE,EAAE,C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"}
@@ -1,13 +1,56 @@
1
1
  // Composables
2
2
  import { useLocale } from "../../composables/locale.mjs"; // Utilities
3
3
  import { inject, watch } from 'vue';
4
- import { propsFactory } from "../../util/index.mjs"; // Adapters
4
+ import { mergeDeep, propsFactory } from "../../util/index.mjs"; // Adapters
5
5
  import { VuetifyDateAdapter } from "./adapters/vuetify.mjs"; // Types
6
6
  export const DateAdapterSymbol = Symbol.for('vuetify:date-adapter');
7
7
  export function createDate(options) {
8
- return options ?? {
9
- adapter: VuetifyDateAdapter
10
- };
8
+ return mergeDeep({
9
+ adapter: VuetifyDateAdapter,
10
+ locale: {
11
+ af: 'af-ZA',
12
+ // ar: '', # not the same value for all variants
13
+ bg: 'bg-BG',
14
+ ca: 'ca-ES',
15
+ ckb: '',
16
+ cs: '',
17
+ de: 'de-DE',
18
+ el: 'el-GR',
19
+ en: 'en-US',
20
+ // es: '', # not the same value for all variants
21
+ et: 'et-EE',
22
+ fa: 'fa-IR',
23
+ fi: 'fi-FI',
24
+ // fr: '', #not the same value for all variants
25
+ hr: 'hr-HR',
26
+ hu: 'hu-HU',
27
+ he: 'he-IL',
28
+ id: 'id-ID',
29
+ it: 'it-IT',
30
+ ja: 'ja-JP',
31
+ ko: 'ko-KR',
32
+ lv: 'lv-LV',
33
+ lt: 'lt-LT',
34
+ nl: 'nl-NL',
35
+ no: 'nn-NO',
36
+ pl: 'pl-PL',
37
+ pt: 'pt-PT',
38
+ ro: 'ro-RO',
39
+ ru: 'ru-RU',
40
+ sk: 'sk-SK',
41
+ sl: 'sl-SI',
42
+ srCyrl: 'sr-SP',
43
+ srLatn: 'sr-SP',
44
+ sv: 'sv-SE',
45
+ th: 'th-TH',
46
+ tr: 'tr-TR',
47
+ az: 'az-AZ',
48
+ uk: 'uk-UA',
49
+ vi: 'vi-VN',
50
+ zhHans: 'zh-CN',
51
+ zhHant: 'zh-TW'
52
+ }
53
+ }, options);
11
54
  }
12
55
 
13
56
  // TODO: revisit this after it starts being implemented
@@ -22,18 +65,46 @@ export const makeDateProps = propsFactory({
22
65
  default: () => []
23
66
  }
24
67
  }, 'date');
25
- export function useDate(props) {
68
+ export function useDate() {
26
69
  const date = inject(DateAdapterSymbol);
27
70
  const locale = useLocale();
28
71
  if (!date) throw new Error('[Vuetify] Could not find injected date');
29
72
  const instance = typeof date.adapter === 'function'
30
73
  // eslint-disable-next-line new-cap
31
- ? new date.adapter(locale.current.value) : date.adapter;
32
- if (typeof date.adapter === 'function') {
33
- watch(locale.current, val => {
34
- instance.locale = val;
35
- });
36
- }
74
+ ? new date.adapter({
75
+ locale: date.locale?.[locale.current.value] ?? locale.current.value
76
+ }) : date.adapter;
77
+ watch(locale.current, value => {
78
+ const newLocale = date.locale ? date.locale[value] : value;
79
+ instance.locale = newLocale ?? instance.locale;
80
+ });
37
81
  return instance;
38
82
  }
83
+ export function toIso(adapter, value) {
84
+ const date = adapter.toJsDate(value);
85
+ return `${date.getFullYear()}-${date.getMonth() + 1}-${date.getDate()}`;
86
+ }
87
+ function getMondayOfFirstWeekOfYear(year) {
88
+ return new Date(year, 0, 1);
89
+ }
90
+
91
+ // https://stackoverflow.com/questions/274861/how-do-i-calculate-the-week-number-given-a-date/275024#275024
92
+ export function getWeek(adapter, value) {
93
+ const date = adapter.toJsDate(value);
94
+ let year = date.getFullYear();
95
+ let d1w1 = getMondayOfFirstWeekOfYear(year);
96
+ if (date < d1w1) {
97
+ year = year - 1;
98
+ d1w1 = getMondayOfFirstWeekOfYear(year);
99
+ } else {
100
+ const tv = getMondayOfFirstWeekOfYear(year + 1);
101
+ if (date >= tv) {
102
+ year = year + 1;
103
+ d1w1 = tv;
104
+ }
105
+ }
106
+ const diffTime = Math.abs(date.getTime() - d1w1.getTime());
107
+ const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24));
108
+ return Math.floor(diffDays / 7) + 1;
109
+ }
39
110
  //# sourceMappingURL=date.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"date.mjs","names":["useLocale","inject","watch","propsFactory","VuetifyDateAdapter","DateAdapterSymbol","Symbol","for","createDate","options","adapter","makeDateProps","displayDate","type","Object","default","Date","hideAdjacentMonths","Boolean","modelValue","useDate","props","date","locale","Error","instance","current","value","val"],"sources":["../../../src/labs/date/date.ts"],"sourcesContent":["// Composables\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { inject, watch } from 'vue'\nimport { propsFactory } from '@/util'\n\n// Adapters\nimport { VuetifyDateAdapter } from './adapters/vuetify'\n\n// Types\nimport type { InjectionKey, PropType } from 'vue'\nimport type { DateAdapter } from './DateAdapter'\n\nexport interface DateInstance extends DateAdapter<Date> {\n locale: string\n}\n\nexport type DateOptions = {\n adapter: (new (locale: string) => DateInstance) | DateInstance\n}\n\nexport const DateAdapterSymbol: InjectionKey<DateOptions> = Symbol.for('vuetify:date-adapter')\n\nexport interface DateProps {\n displayDate: Date\n hideAdjacentMonths: boolean\n modelValue: readonly any[]\n}\n\nexport function createDate (options?: DateOptions) {\n return options ?? { adapter: VuetifyDateAdapter }\n}\n\n// TODO: revisit this after it starts being implemented\nexport const makeDateProps = propsFactory({\n displayDate: {\n type: Object as PropType<Date>,\n default: new Date(),\n },\n hideAdjacentMonths: Boolean,\n modelValue: {\n type: null as unknown as PropType<readonly any[]>,\n default: () => [],\n },\n}, 'date')\n\nexport function useDate (props?: DateProps) {\n const date = inject(DateAdapterSymbol)\n const locale = useLocale()\n\n if (!date) throw new Error('[Vuetify] Could not find injected date')\n\n const instance = typeof date.adapter === 'function'\n // eslint-disable-next-line new-cap\n ? new date.adapter(locale.current.value)\n : date.adapter\n\n if (typeof date.adapter === 'function') {\n watch(locale.current, val => {\n instance.locale = val\n })\n }\n\n return instance\n}\n"],"mappings":"AAAA;AAAA,SACSA,SAAS,wCAElB;AACA,SAASC,MAAM,EAAEC,KAAK,QAAQ,KAAK;AAAA,SAC1BC,YAAY,gCAErB;AAAA,SACSC,kBAAkB,kCAE3B;AAYA,OAAO,MAAMC,iBAA4C,GAAGC,MAAM,CAACC,GAAG,CAAC,sBAAsB,CAAC;AAQ9F,OAAO,SAASC,UAAUA,CAAEC,OAAqB,EAAE;EACjD,OAAOA,OAAO,IAAI;IAAEC,OAAO,EAAEN;EAAmB,CAAC;AACnD;;AAEA;AACA,OAAO,MAAMO,aAAa,GAAGR,YAAY,CAAC;EACxCS,WAAW,EAAE;IACXC,IAAI,EAAEC,MAAwB;IAC9BC,OAAO,EAAE,IAAIC,IAAI;EACnB,CAAC;EACDC,kBAAkB,EAAEC,OAAO;EAC3BC,UAAU,EAAE;IACVN,IAAI,EAAE,IAA2C;IACjDE,OAAO,EAAEA,CAAA,KAAM;EACjB;AACF,CAAC,EAAE,MAAM,CAAC;AAEV,OAAO,SAASK,OAAOA,CAAEC,KAAiB,EAAE;EAC1C,MAAMC,IAAI,GAAGrB,MAAM,CAACI,iBAAiB,CAAC;EACtC,MAAMkB,MAAM,GAAGvB,SAAS,EAAE;EAE1B,IAAI,CAACsB,IAAI,EAAE,MAAM,IAAIE,KAAK,CAAC,wCAAwC,CAAC;EAEpE,MAAMC,QAAQ,GAAG,OAAOH,IAAI,CAACZ,OAAO,KAAK;EACvC;EAAA,EACE,IAAIY,IAAI,CAACZ,OAAO,CAACa,MAAM,CAACG,OAAO,CAACC,KAAK,CAAC,GACtCL,IAAI,CAACZ,OAAO;EAEhB,IAAI,OAAOY,IAAI,CAACZ,OAAO,KAAK,UAAU,EAAE;IACtCR,KAAK,CAACqB,MAAM,CAACG,OAAO,EAAEE,GAAG,IAAI;MAC3BH,QAAQ,CAACF,MAAM,GAAGK,GAAG;IACvB,CAAC,CAAC;EACJ;EAEA,OAAOH,QAAQ;AACjB"}
1
+ {"version":3,"file":"date.mjs","names":["useLocale","inject","watch","mergeDeep","propsFactory","VuetifyDateAdapter","DateAdapterSymbol","Symbol","for","createDate","options","adapter","locale","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","makeDateProps","displayDate","type","Object","default","Date","hideAdjacentMonths","Boolean","modelValue","useDate","date","Error","instance","current","value","newLocale","toIso","toJsDate","getFullYear","getMonth","getDate","getMondayOfFirstWeekOfYear","year","getWeek","d1w1","tv","diffTime","Math","abs","getTime","diffDays","ceil","floor"],"sources":["../../../src/labs/date/date.ts"],"sourcesContent":["// Composables\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { inject, watch } from 'vue'\nimport { mergeDeep, propsFactory } from '@/util'\n\n// Adapters\nimport { VuetifyDateAdapter } from './adapters/vuetify'\n\n// Types\nimport type { InjectionKey, PropType } from 'vue'\nimport type { DateAdapter } from './DateAdapter'\n\nexport interface DateInstance<T> extends DateAdapter<T> {\n locale?: any\n}\n\nexport type InternalDateOptions<T = any> = {\n adapter: (new (options: { locale: any }) => DateInstance<T>) | DateInstance<T>\n formats?: Record<string, string>\n locale: Record<string, any>\n}\n\nexport type DateOptions<T = any> = Partial<InternalDateOptions<T>>\n\nexport const DateAdapterSymbol: InjectionKey<InternalDateOptions> = Symbol.for('vuetify:date-adapter')\n\nexport interface DateProps {\n displayDate: any\n hideAdjacentMonths: boolean\n modelValue: readonly any[]\n}\n\nexport function createDate (options?: DateOptions) {\n return 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: '',\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: 'nn-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)\n}\n\n// TODO: revisit this after it starts being implemented\nexport const makeDateProps = propsFactory({\n displayDate: {\n type: Object as PropType<Date>,\n default: new Date(),\n },\n hideAdjacentMonths: Boolean,\n modelValue: {\n type: null as unknown as PropType<readonly any[]>,\n default: () => [],\n },\n}, 'date')\n\nexport function useDate () {\n const date = inject(DateAdapterSymbol)\n const locale = useLocale()\n\n if (!date) throw new Error('[Vuetify] Could not find injected date')\n\n const instance = typeof date.adapter === 'function'\n // eslint-disable-next-line new-cap\n ? new date.adapter({ locale: date.locale?.[locale.current.value] ?? locale.current.value })\n : date.adapter\n\n watch(locale.current, value => {\n const newLocale = date.locale ? date.locale[value] : value\n instance.locale = newLocale ?? instance.locale\n })\n\n return instance\n}\n\nexport function toIso (adapter: DateAdapter<any>, value: any) {\n const date = adapter.toJsDate(value)\n return `${date.getFullYear()}-${date.getMonth() + 1}-${date.getDate()}`\n}\n\nfunction getMondayOfFirstWeekOfYear (year: number) {\n return new Date(year, 0, 1)\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 = getMondayOfFirstWeekOfYear(year)\n\n if (date < d1w1) {\n year = year - 1\n d1w1 = getMondayOfFirstWeekOfYear(year)\n } else {\n const tv = getMondayOfFirstWeekOfYear(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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"}