@mantine/dates 9.0.0-alpha.5 → 9.0.0-alpha.6

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 (494) hide show
  1. package/cjs/_virtual/_rolldown/runtime.cjs +24 -0
  2. package/cjs/components/Calendar/Calendar.cjs +250 -344
  3. package/cjs/components/Calendar/Calendar.cjs.map +1 -1
  4. package/cjs/components/Calendar/clamp-level/clamp-level.cjs +11 -19
  5. package/cjs/components/Calendar/clamp-level/clamp-level.cjs.map +1 -1
  6. package/cjs/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.cjs +64 -130
  7. package/cjs/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.cjs.map +1 -1
  8. package/cjs/components/CalendarHeader/CalendarHeader.cjs +100 -145
  9. package/cjs/components/CalendarHeader/CalendarHeader.cjs.map +1 -1
  10. package/cjs/components/CalendarHeader/CalendarHeader.module.cjs +12 -0
  11. package/cjs/components/CalendarHeader/CalendarHeader.module.cjs.map +1 -0
  12. package/cjs/components/DateInput/DateInput.cjs +188 -242
  13. package/cjs/components/DateInput/DateInput.cjs.map +1 -1
  14. package/cjs/components/DateInput/date-string-parser/date-string-parser.cjs +12 -19
  15. package/cjs/components/DateInput/date-string-parser/date-string-parser.cjs.map +1 -1
  16. package/cjs/components/DateInput/is-date-valid/is-date-valid.cjs +13 -24
  17. package/cjs/components/DateInput/is-date-valid/is-date-valid.cjs.map +1 -1
  18. package/cjs/components/DatePicker/DatePicker.cjs +121 -154
  19. package/cjs/components/DatePicker/DatePicker.cjs.map +1 -1
  20. package/cjs/components/DatePicker/DatePicker.module.cjs +11 -0
  21. package/cjs/components/DatePicker/DatePicker.module.cjs.map +1 -0
  22. package/cjs/components/DatePickerInput/DatePickerInput.cjs +85 -123
  23. package/cjs/components/DatePickerInput/DatePickerInput.cjs.map +1 -1
  24. package/cjs/components/DateTimePicker/DateTimePicker.cjs +187 -233
  25. package/cjs/components/DateTimePicker/DateTimePicker.cjs.map +1 -1
  26. package/cjs/components/DateTimePicker/DateTimePicker.module.cjs +10 -0
  27. package/cjs/components/DateTimePicker/DateTimePicker.module.cjs.map +1 -0
  28. package/cjs/components/DateTimePicker/get-min-max-time/get-min-max-time.cjs +12 -15
  29. package/cjs/components/DateTimePicker/get-min-max-time/get-min-max-time.cjs.map +1 -1
  30. package/cjs/components/DatesProvider/DatesProvider.cjs +21 -15
  31. package/cjs/components/DatesProvider/DatesProvider.cjs.map +1 -1
  32. package/cjs/components/DatesProvider/use-dates-context.cjs +20 -29
  33. package/cjs/components/DatesProvider/use-dates-context.cjs.map +1 -1
  34. package/cjs/components/Day/Day.cjs +49 -83
  35. package/cjs/components/Day/Day.cjs.map +1 -1
  36. package/cjs/components/Day/Day.module.cjs +7 -0
  37. package/cjs/components/Day/Day.module.cjs.map +1 -0
  38. package/cjs/components/DecadeLevel/DecadeLevel.cjs +75 -124
  39. package/cjs/components/DecadeLevel/DecadeLevel.cjs.map +1 -1
  40. package/cjs/components/DecadeLevel/get-decade-range/get-decade-range.cjs +8 -9
  41. package/cjs/components/DecadeLevel/get-decade-range/get-decade-range.cjs.map +1 -1
  42. package/cjs/components/DecadeLevelGroup/DecadeLevelGroup.cjs +81 -131
  43. package/cjs/components/DecadeLevelGroup/DecadeLevelGroup.cjs.map +1 -1
  44. package/cjs/components/HiddenDatesInput/HiddenDatesInput.cjs +30 -36
  45. package/cjs/components/HiddenDatesInput/HiddenDatesInput.cjs.map +1 -1
  46. package/cjs/components/InlineDateTimePicker/InlineDateTimePicker.cjs +281 -340
  47. package/cjs/components/InlineDateTimePicker/InlineDateTimePicker.cjs.map +1 -1
  48. package/cjs/components/InlineDateTimePicker/InlineDateTimePicker.module.cjs +13 -0
  49. package/cjs/components/InlineDateTimePicker/InlineDateTimePicker.module.cjs.map +1 -0
  50. package/cjs/components/LevelsGroup/LevelsGroup.cjs +30 -38
  51. package/cjs/components/LevelsGroup/LevelsGroup.cjs.map +1 -1
  52. package/cjs/components/LevelsGroup/LevelsGroup.module.cjs +7 -0
  53. package/cjs/components/LevelsGroup/LevelsGroup.module.cjs.map +1 -0
  54. package/cjs/components/MiniCalendar/MiniCalendar.cjs +124 -153
  55. package/cjs/components/MiniCalendar/MiniCalendar.cjs.map +1 -1
  56. package/cjs/components/MiniCalendar/MiniCalendar.module.cjs +14 -0
  57. package/cjs/components/MiniCalendar/MiniCalendar.module.cjs.map +1 -0
  58. package/cjs/components/Month/Month.cjs +152 -200
  59. package/cjs/components/Month/Month.cjs.map +1 -1
  60. package/cjs/components/Month/Month.module.cjs +11 -0
  61. package/cjs/components/Month/Month.module.cjs.map +1 -0
  62. package/cjs/components/Month/get-date-in-tab-order/get-date-in-tab-order.cjs +18 -35
  63. package/cjs/components/Month/get-date-in-tab-order/get-date-in-tab-order.cjs.map +1 -1
  64. package/cjs/components/Month/get-end-of-week/get-end-of-week.cjs +13 -20
  65. package/cjs/components/Month/get-end-of-week/get-end-of-week.cjs.map +1 -1
  66. package/cjs/components/Month/get-month-days/get-month-days.cjs +38 -47
  67. package/cjs/components/Month/get-month-days/get-month-days.cjs.map +1 -1
  68. package/cjs/components/Month/get-start-of-week/get-start-of-week.cjs +11 -16
  69. package/cjs/components/Month/get-start-of-week/get-start-of-week.cjs.map +1 -1
  70. package/cjs/components/Month/get-week-number/get-week-number.cjs +12 -16
  71. package/cjs/components/Month/get-week-number/get-week-number.cjs.map +1 -1
  72. package/cjs/components/Month/is-after-min-date/is-after-min-date.cjs +9 -12
  73. package/cjs/components/Month/is-after-min-date/is-after-min-date.cjs.map +1 -1
  74. package/cjs/components/Month/is-before-max-date/is-before-max-date.cjs +9 -12
  75. package/cjs/components/Month/is-before-max-date/is-before-max-date.cjs.map +1 -1
  76. package/cjs/components/Month/is-same-month/is-same-month.cjs +9 -12
  77. package/cjs/components/Month/is-same-month/is-same-month.cjs.map +1 -1
  78. package/cjs/components/MonthLevel/MonthLevel.cjs +83 -141
  79. package/cjs/components/MonthLevel/MonthLevel.cjs.map +1 -1
  80. package/cjs/components/MonthLevelGroup/MonthLevelGroup.cjs +92 -154
  81. package/cjs/components/MonthLevelGroup/MonthLevelGroup.cjs.map +1 -1
  82. package/cjs/components/MonthPicker/MonthPicker.cjs +49 -75
  83. package/cjs/components/MonthPicker/MonthPicker.cjs.map +1 -1
  84. package/cjs/components/MonthPicker/MonthPicker.module.cjs +11 -0
  85. package/cjs/components/MonthPicker/MonthPicker.module.cjs.map +1 -0
  86. package/cjs/components/MonthPickerInput/MonthPickerInput.cjs +86 -119
  87. package/cjs/components/MonthPickerInput/MonthPickerInput.cjs.map +1 -1
  88. package/cjs/components/MonthsList/MonthsList.cjs +105 -139
  89. package/cjs/components/MonthsList/MonthsList.cjs.map +1 -1
  90. package/cjs/components/MonthsList/MonthsList.module.cjs +10 -0
  91. package/cjs/components/MonthsList/MonthsList.module.cjs.map +1 -0
  92. package/cjs/components/MonthsList/get-month-in-tab-order/get-month-in-tab-order.cjs +20 -30
  93. package/cjs/components/MonthsList/get-month-in-tab-order/get-month-in-tab-order.cjs.map +1 -1
  94. package/cjs/components/MonthsList/get-months-data/get-months-data.cjs +21 -21
  95. package/cjs/components/MonthsList/get-months-data/get-months-data.cjs.map +1 -1
  96. package/cjs/components/MonthsList/is-month-disabled/is-month-disabled.cjs +12 -21
  97. package/cjs/components/MonthsList/is-month-disabled/is-month-disabled.cjs.map +1 -1
  98. package/cjs/components/PickerControl/PickerControl.cjs +43 -65
  99. package/cjs/components/PickerControl/PickerControl.cjs.map +1 -1
  100. package/cjs/components/PickerControl/PickerControl.module.cjs +7 -0
  101. package/cjs/components/PickerControl/PickerControl.module.cjs.map +1 -0
  102. package/cjs/components/PickerInputBase/PickerInputBase.cjs +95 -127
  103. package/cjs/components/PickerInputBase/PickerInputBase.cjs.map +1 -1
  104. package/cjs/components/PickerInputBase/PickerInputBase.module.cjs +7 -0
  105. package/cjs/components/PickerInputBase/PickerInputBase.module.cjs.map +1 -0
  106. package/cjs/components/SpinInput/SpinInput.cjs +83 -111
  107. package/cjs/components/SpinInput/SpinInput.cjs.map +1 -1
  108. package/cjs/components/TimeGrid/TimeGrid.cjs +94 -101
  109. package/cjs/components/TimeGrid/TimeGrid.cjs.map +1 -1
  110. package/cjs/components/TimeGrid/TimeGrid.context.cjs +7 -10
  111. package/cjs/components/TimeGrid/TimeGrid.context.cjs.map +1 -1
  112. package/cjs/components/TimeGrid/TimeGrid.module.cjs +7 -0
  113. package/cjs/components/TimeGrid/TimeGrid.module.cjs.map +1 -0
  114. package/cjs/components/TimeGrid/TimeGridControl.cjs +26 -35
  115. package/cjs/components/TimeGrid/TimeGridControl.cjs.map +1 -1
  116. package/cjs/components/TimeGrid/compare-time.cjs +8 -9
  117. package/cjs/components/TimeGrid/compare-time.cjs.map +1 -1
  118. package/cjs/components/TimeInput/TimeInput.cjs +71 -88
  119. package/cjs/components/TimeInput/TimeInput.cjs.map +1 -1
  120. package/cjs/components/TimeInput/TimeInput.module.cjs +7 -0
  121. package/cjs/components/TimeInput/TimeInput.module.cjs.map +1 -0
  122. package/cjs/components/TimePicker/AmPmInput/AmPmInput.cjs +93 -101
  123. package/cjs/components/TimePicker/AmPmInput/AmPmInput.cjs.map +1 -1
  124. package/cjs/components/TimePicker/TimeControlsList/AmPmControlsList.cjs +19 -12
  125. package/cjs/components/TimePicker/TimeControlsList/AmPmControlsList.cjs.map +1 -1
  126. package/cjs/components/TimePicker/TimeControlsList/TimeControl.cjs +20 -23
  127. package/cjs/components/TimePicker/TimeControlsList/TimeControl.cjs.map +1 -1
  128. package/cjs/components/TimePicker/TimeControlsList/TimeControlsList.cjs +47 -57
  129. package/cjs/components/TimePicker/TimeControlsList/TimeControlsList.cjs.map +1 -1
  130. package/cjs/components/TimePicker/TimePicker.cjs +325 -420
  131. package/cjs/components/TimePicker/TimePicker.cjs.map +1 -1
  132. package/cjs/components/TimePicker/TimePicker.context.cjs +7 -10
  133. package/cjs/components/TimePicker/TimePicker.context.cjs.map +1 -1
  134. package/cjs/components/TimePicker/TimePicker.module.cjs +18 -0
  135. package/cjs/components/TimePicker/TimePicker.module.cjs.map +1 -0
  136. package/cjs/components/TimePicker/TimePresets/TimePresetControl.cjs +23 -28
  137. package/cjs/components/TimePicker/TimePresets/TimePresetControl.cjs.map +1 -1
  138. package/cjs/components/TimePicker/TimePresets/TimePresetGroup.cjs +36 -36
  139. package/cjs/components/TimePicker/TimePresets/TimePresetGroup.cjs.map +1 -1
  140. package/cjs/components/TimePicker/TimePresets/TimePresets.cjs +61 -70
  141. package/cjs/components/TimePicker/TimePresets/TimePresets.cjs.map +1 -1
  142. package/cjs/components/TimePicker/use-time-picker.cjs +201 -193
  143. package/cjs/components/TimePicker/use-time-picker.cjs.map +1 -1
  144. package/cjs/components/TimePicker/utils/clamp-time/clamp-time.cjs +10 -12
  145. package/cjs/components/TimePicker/utils/clamp-time/clamp-time.cjs.map +1 -1
  146. package/cjs/components/TimePicker/utils/get-parsed-time/get-parsed-time.cjs +40 -34
  147. package/cjs/components/TimePicker/utils/get-parsed-time/get-parsed-time.cjs.map +1 -1
  148. package/cjs/components/TimePicker/utils/get-time-range/get-time-range.cjs +12 -15
  149. package/cjs/components/TimePicker/utils/get-time-range/get-time-range.cjs.map +1 -1
  150. package/cjs/components/TimePicker/utils/get-time-string/get-time-string.cjs +39 -48
  151. package/cjs/components/TimePicker/utils/get-time-string/get-time-string.cjs.map +1 -1
  152. package/cjs/components/TimePicker/utils/is-same-time/is-same-time.cjs +10 -13
  153. package/cjs/components/TimePicker/utils/is-same-time/is-same-time.cjs.map +1 -1
  154. package/cjs/components/TimePicker/utils/pad-time/pad-time.cjs +6 -6
  155. package/cjs/components/TimePicker/utils/pad-time/pad-time.cjs.map +1 -1
  156. package/cjs/components/TimePicker/utils/split-time-string/split-time-string.cjs +11 -7
  157. package/cjs/components/TimePicker/utils/split-time-string/split-time-string.cjs.map +1 -1
  158. package/cjs/components/TimePicker/utils/time-to-seconds/time-to-seconds.cjs +17 -18
  159. package/cjs/components/TimePicker/utils/time-to-seconds/time-to-seconds.cjs.map +1 -1
  160. package/cjs/components/TimeValue/TimeValue.cjs +18 -15
  161. package/cjs/components/TimeValue/TimeValue.cjs.map +1 -1
  162. package/cjs/components/TimeValue/get-formatted-time/get-formatted-time.cjs +14 -27
  163. package/cjs/components/TimeValue/get-formatted-time/get-formatted-time.cjs.map +1 -1
  164. package/cjs/components/WeekdaysRow/WeekdaysRow.cjs +51 -61
  165. package/cjs/components/WeekdaysRow/WeekdaysRow.cjs.map +1 -1
  166. package/cjs/components/WeekdaysRow/WeekdaysRow.module.cjs +7 -0
  167. package/cjs/components/WeekdaysRow/WeekdaysRow.module.cjs.map +1 -0
  168. package/cjs/components/WeekdaysRow/get-weekdays-names/get-weekdays-names.cjs +14 -26
  169. package/cjs/components/WeekdaysRow/get-weekdays-names/get-weekdays-names.cjs.map +1 -1
  170. package/cjs/components/YearLevel/YearLevel.cjs +73 -121
  171. package/cjs/components/YearLevel/YearLevel.cjs.map +1 -1
  172. package/cjs/components/YearLevelGroup/YearLevelGroup.cjs +83 -135
  173. package/cjs/components/YearLevelGroup/YearLevelGroup.cjs.map +1 -1
  174. package/cjs/components/YearPicker/YearPicker.cjs +48 -73
  175. package/cjs/components/YearPicker/YearPicker.cjs.map +1 -1
  176. package/cjs/components/YearPicker/YearPicker.module.cjs +11 -0
  177. package/cjs/components/YearPicker/YearPicker.module.cjs.map +1 -0
  178. package/cjs/components/YearPickerInput/YearPickerInput.cjs +86 -119
  179. package/cjs/components/YearPickerInput/YearPickerInput.cjs.map +1 -1
  180. package/cjs/components/YearsList/YearsList.cjs +103 -133
  181. package/cjs/components/YearsList/YearsList.cjs.map +1 -1
  182. package/cjs/components/YearsList/YearsList.module.cjs +10 -0
  183. package/cjs/components/YearsList/YearsList.module.cjs.map +1 -0
  184. package/cjs/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.cjs +20 -30
  185. package/cjs/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.cjs.map +1 -1
  186. package/cjs/components/YearsList/get-years-data/get-years-data.cjs +25 -23
  187. package/cjs/components/YearsList/get-years-data/get-years-data.cjs.map +1 -1
  188. package/cjs/components/YearsList/is-year-disabled/is-year-disabled.cjs +12 -21
  189. package/cjs/components/YearsList/is-year-disabled/is-year-disabled.cjs.map +1 -1
  190. package/cjs/hooks/use-dates-input/use-dates-input.cjs +47 -70
  191. package/cjs/hooks/use-dates-input/use-dates-input.cjs.map +1 -1
  192. package/cjs/hooks/use-dates-state/is-in-range/is-in-range.cjs +10 -13
  193. package/cjs/hooks/use-dates-state/is-in-range/is-in-range.cjs.map +1 -1
  194. package/cjs/hooks/use-dates-state/use-dates-state.cjs +113 -154
  195. package/cjs/hooks/use-dates-state/use-dates-state.cjs.map +1 -1
  196. package/cjs/hooks/use-uncontrolled-dates/use-uncontrolled-dates.cjs +32 -36
  197. package/cjs/hooks/use-uncontrolled-dates/use-uncontrolled-dates.cjs.map +1 -1
  198. package/cjs/index.cjs +94 -99
  199. package/cjs/utils/assign-time/assign-time.cjs +16 -21
  200. package/cjs/utils/assign-time/assign-time.cjs.map +1 -1
  201. package/cjs/utils/clamp-date/clamp-date.cjs +13 -22
  202. package/cjs/utils/clamp-date/clamp-date.cjs.map +1 -1
  203. package/cjs/utils/get-default-clamped-date/get-default-clamped-date.cjs +15 -27
  204. package/cjs/utils/get-default-clamped-date/get-default-clamped-date.cjs.map +1 -1
  205. package/cjs/utils/get-formatted-date/get-formatted-date.cjs +19 -37
  206. package/cjs/utils/get-formatted-date/get-formatted-date.cjs.map +1 -1
  207. package/cjs/utils/handle-control-key-down/handle-control-key-down.cjs +114 -149
  208. package/cjs/utils/handle-control-key-down/handle-control-key-down.cjs.map +1 -1
  209. package/cjs/utils/to-date-string/to-date-string.cjs +10 -13
  210. package/cjs/utils/to-date-string/to-date-string.cjs.map +1 -1
  211. package/esm/components/Calendar/Calendar.mjs +247 -337
  212. package/esm/components/Calendar/Calendar.mjs.map +1 -1
  213. package/esm/components/Calendar/clamp-level/clamp-level.mjs +10 -17
  214. package/esm/components/Calendar/clamp-level/clamp-level.mjs.map +1 -1
  215. package/esm/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.mjs +64 -128
  216. package/esm/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.mjs.map +1 -1
  217. package/esm/components/CalendarHeader/CalendarHeader.mjs +98 -142
  218. package/esm/components/CalendarHeader/CalendarHeader.mjs.map +1 -1
  219. package/esm/components/CalendarHeader/CalendarHeader.module.mjs +12 -0
  220. package/esm/components/CalendarHeader/CalendarHeader.module.mjs.map +1 -0
  221. package/esm/components/DateInput/DateInput.mjs +185 -235
  222. package/esm/components/DateInput/DateInput.mjs.map +1 -1
  223. package/esm/components/DateInput/date-string-parser/date-string-parser.mjs +10 -13
  224. package/esm/components/DateInput/date-string-parser/date-string-parser.mjs.map +1 -1
  225. package/esm/components/DateInput/is-date-valid/is-date-valid.mjs +11 -18
  226. package/esm/components/DateInput/is-date-valid/is-date-valid.mjs.map +1 -1
  227. package/esm/components/DatePicker/DatePicker.mjs +117 -146
  228. package/esm/components/DatePicker/DatePicker.mjs.map +1 -1
  229. package/esm/components/DatePicker/DatePicker.module.mjs +11 -0
  230. package/esm/components/DatePicker/DatePicker.module.mjs.map +1 -0
  231. package/esm/components/DatePickerInput/DatePickerInput.mjs +84 -121
  232. package/esm/components/DatePickerInput/DatePickerInput.mjs.map +1 -1
  233. package/esm/components/DateTimePicker/DateTimePicker.mjs +184 -226
  234. package/esm/components/DateTimePicker/DateTimePicker.mjs.map +1 -1
  235. package/esm/components/DateTimePicker/DateTimePicker.module.mjs +10 -0
  236. package/esm/components/DateTimePicker/DateTimePicker.module.mjs.map +1 -0
  237. package/esm/components/DateTimePicker/get-min-max-time/get-min-max-time.mjs +10 -9
  238. package/esm/components/DateTimePicker/get-min-max-time/get-min-max-time.mjs.map +1 -1
  239. package/esm/components/DatesProvider/DatesProvider.mjs +19 -12
  240. package/esm/components/DatesProvider/DatesProvider.mjs.map +1 -1
  241. package/esm/components/DatesProvider/use-dates-context.mjs +19 -27
  242. package/esm/components/DatesProvider/use-dates-context.mjs.map +1 -1
  243. package/esm/components/Day/Day.mjs +46 -76
  244. package/esm/components/Day/Day.mjs.map +1 -1
  245. package/esm/components/Day/Day.module.mjs +7 -0
  246. package/esm/components/Day/Day.module.mjs.map +1 -0
  247. package/esm/components/DecadeLevel/DecadeLevel.mjs +72 -117
  248. package/esm/components/DecadeLevel/DecadeLevel.mjs.map +1 -1
  249. package/esm/components/DecadeLevel/get-decade-range/get-decade-range.mjs +8 -7
  250. package/esm/components/DecadeLevel/get-decade-range/get-decade-range.mjs.map +1 -1
  251. package/esm/components/DecadeLevelGroup/DecadeLevelGroup.mjs +78 -124
  252. package/esm/components/DecadeLevelGroup/DecadeLevelGroup.mjs.map +1 -1
  253. package/esm/components/HiddenDatesInput/HiddenDatesInput.mjs +29 -34
  254. package/esm/components/HiddenDatesInput/HiddenDatesInput.mjs.map +1 -1
  255. package/esm/components/InlineDateTimePicker/InlineDateTimePicker.mjs +278 -333
  256. package/esm/components/InlineDateTimePicker/InlineDateTimePicker.mjs.map +1 -1
  257. package/esm/components/InlineDateTimePicker/InlineDateTimePicker.module.mjs +13 -0
  258. package/esm/components/InlineDateTimePicker/InlineDateTimePicker.module.mjs.map +1 -0
  259. package/esm/components/LevelsGroup/LevelsGroup.mjs +28 -35
  260. package/esm/components/LevelsGroup/LevelsGroup.mjs.map +1 -1
  261. package/esm/components/LevelsGroup/LevelsGroup.module.mjs +7 -0
  262. package/esm/components/LevelsGroup/LevelsGroup.module.mjs.map +1 -0
  263. package/esm/components/MiniCalendar/MiniCalendar.mjs +121 -146
  264. package/esm/components/MiniCalendar/MiniCalendar.mjs.map +1 -1
  265. package/esm/components/MiniCalendar/MiniCalendar.module.mjs +14 -0
  266. package/esm/components/MiniCalendar/MiniCalendar.module.mjs.map +1 -0
  267. package/esm/components/Month/Month.mjs +149 -193
  268. package/esm/components/Month/Month.mjs.map +1 -1
  269. package/esm/components/Month/Month.module.mjs +11 -0
  270. package/esm/components/Month/Month.module.mjs.map +1 -0
  271. package/esm/components/Month/get-date-in-tab-order/get-date-in-tab-order.mjs +16 -29
  272. package/esm/components/Month/get-date-in-tab-order/get-date-in-tab-order.mjs.map +1 -1
  273. package/esm/components/Month/get-end-of-week/get-end-of-week.mjs +11 -14
  274. package/esm/components/Month/get-end-of-week/get-end-of-week.mjs.map +1 -1
  275. package/esm/components/Month/get-month-days/get-month-days.mjs +36 -41
  276. package/esm/components/Month/get-month-days/get-month-days.mjs.map +1 -1
  277. package/esm/components/Month/get-start-of-week/get-start-of-week.mjs +9 -10
  278. package/esm/components/Month/get-start-of-week/get-start-of-week.mjs.map +1 -1
  279. package/esm/components/Month/get-week-number/get-week-number.mjs +8 -8
  280. package/esm/components/Month/get-week-number/get-week-number.mjs.map +1 -1
  281. package/esm/components/Month/is-after-min-date/is-after-min-date.mjs +7 -6
  282. package/esm/components/Month/is-after-min-date/is-after-min-date.mjs.map +1 -1
  283. package/esm/components/Month/is-before-max-date/is-before-max-date.mjs +7 -6
  284. package/esm/components/Month/is-before-max-date/is-before-max-date.mjs.map +1 -1
  285. package/esm/components/Month/is-same-month/is-same-month.mjs +7 -6
  286. package/esm/components/Month/is-same-month/is-same-month.mjs.map +1 -1
  287. package/esm/components/MonthLevel/MonthLevel.mjs +80 -134
  288. package/esm/components/MonthLevel/MonthLevel.mjs.map +1 -1
  289. package/esm/components/MonthLevelGroup/MonthLevelGroup.mjs +89 -147
  290. package/esm/components/MonthLevelGroup/MonthLevelGroup.mjs.map +1 -1
  291. package/esm/components/MonthPicker/MonthPicker.mjs +46 -71
  292. package/esm/components/MonthPicker/MonthPicker.mjs.map +1 -1
  293. package/esm/components/MonthPicker/MonthPicker.module.mjs +11 -0
  294. package/esm/components/MonthPicker/MonthPicker.module.mjs.map +1 -0
  295. package/esm/components/MonthPickerInput/MonthPickerInput.mjs +85 -117
  296. package/esm/components/MonthPickerInput/MonthPickerInput.mjs.map +1 -1
  297. package/esm/components/MonthsList/MonthsList.mjs +102 -132
  298. package/esm/components/MonthsList/MonthsList.mjs.map +1 -1
  299. package/esm/components/MonthsList/MonthsList.module.mjs +10 -0
  300. package/esm/components/MonthsList/MonthsList.module.mjs.map +1 -0
  301. package/esm/components/MonthsList/get-month-in-tab-order/get-month-in-tab-order.mjs +18 -24
  302. package/esm/components/MonthsList/get-month-in-tab-order/get-month-in-tab-order.mjs.map +1 -1
  303. package/esm/components/MonthsList/get-months-data/get-months-data.mjs +19 -15
  304. package/esm/components/MonthsList/get-months-data/get-months-data.mjs.map +1 -1
  305. package/esm/components/MonthsList/is-month-disabled/is-month-disabled.mjs +10 -15
  306. package/esm/components/MonthsList/is-month-disabled/is-month-disabled.mjs.map +1 -1
  307. package/esm/components/PickerControl/PickerControl.mjs +41 -62
  308. package/esm/components/PickerControl/PickerControl.mjs.map +1 -1
  309. package/esm/components/PickerControl/PickerControl.module.mjs +7 -0
  310. package/esm/components/PickerControl/PickerControl.module.mjs.map +1 -0
  311. package/esm/components/PickerInputBase/PickerInputBase.mjs +92 -120
  312. package/esm/components/PickerInputBase/PickerInputBase.mjs.map +1 -1
  313. package/esm/components/PickerInputBase/PickerInputBase.module.mjs +7 -0
  314. package/esm/components/PickerInputBase/PickerInputBase.module.mjs.map +1 -0
  315. package/esm/components/SpinInput/SpinInput.mjs +82 -109
  316. package/esm/components/SpinInput/SpinInput.mjs.map +1 -1
  317. package/esm/components/TimeGrid/TimeGrid.context.mjs +7 -8
  318. package/esm/components/TimeGrid/TimeGrid.context.mjs.map +1 -1
  319. package/esm/components/TimeGrid/TimeGrid.mjs +92 -98
  320. package/esm/components/TimeGrid/TimeGrid.mjs.map +1 -1
  321. package/esm/components/TimeGrid/TimeGrid.module.mjs +7 -0
  322. package/esm/components/TimeGrid/TimeGrid.module.mjs.map +1 -0
  323. package/esm/components/TimeGrid/TimeGridControl.mjs +24 -29
  324. package/esm/components/TimeGrid/TimeGridControl.mjs.map +1 -1
  325. package/esm/components/TimeGrid/compare-time.mjs +8 -7
  326. package/esm/components/TimeGrid/compare-time.mjs.map +1 -1
  327. package/esm/components/TimeInput/TimeInput.mjs +67 -80
  328. package/esm/components/TimeInput/TimeInput.mjs.map +1 -1
  329. package/esm/components/TimeInput/TimeInput.module.mjs +7 -0
  330. package/esm/components/TimeInput/TimeInput.module.mjs.map +1 -0
  331. package/esm/components/TimePicker/AmPmInput/AmPmInput.mjs +92 -99
  332. package/esm/components/TimePicker/AmPmInput/AmPmInput.mjs.map +1 -1
  333. package/esm/components/TimePicker/TimeControlsList/AmPmControlsList.mjs +18 -10
  334. package/esm/components/TimePicker/TimeControlsList/AmPmControlsList.mjs.map +1 -1
  335. package/esm/components/TimePicker/TimeControlsList/TimeControl.mjs +19 -21
  336. package/esm/components/TimePicker/TimeControlsList/TimeControl.mjs.map +1 -1
  337. package/esm/components/TimePicker/TimeControlsList/TimeControlsList.mjs +46 -55
  338. package/esm/components/TimePicker/TimeControlsList/TimeControlsList.mjs.map +1 -1
  339. package/esm/components/TimePicker/TimePicker.context.mjs +7 -8
  340. package/esm/components/TimePicker/TimePicker.context.mjs.map +1 -1
  341. package/esm/components/TimePicker/TimePicker.mjs +323 -417
  342. package/esm/components/TimePicker/TimePicker.mjs.map +1 -1
  343. package/esm/components/TimePicker/TimePicker.module.mjs +18 -0
  344. package/esm/components/TimePicker/TimePicker.module.mjs.map +1 -0
  345. package/esm/components/TimePicker/TimePresets/TimePresetControl.mjs +22 -26
  346. package/esm/components/TimePicker/TimePresets/TimePresetControl.mjs.map +1 -1
  347. package/esm/components/TimePicker/TimePresets/TimePresetGroup.mjs +35 -34
  348. package/esm/components/TimePicker/TimePresets/TimePresetGroup.mjs.map +1 -1
  349. package/esm/components/TimePicker/TimePresets/TimePresets.mjs +60 -68
  350. package/esm/components/TimePicker/TimePresets/TimePresets.mjs.map +1 -1
  351. package/esm/components/TimePicker/use-time-picker.mjs +200 -191
  352. package/esm/components/TimePicker/use-time-picker.mjs.map +1 -1
  353. package/esm/components/TimePicker/utils/clamp-time/clamp-time.mjs +10 -10
  354. package/esm/components/TimePicker/utils/clamp-time/clamp-time.mjs.map +1 -1
  355. package/esm/components/TimePicker/utils/get-parsed-time/get-parsed-time.mjs +40 -31
  356. package/esm/components/TimePicker/utils/get-parsed-time/get-parsed-time.mjs.map +1 -1
  357. package/esm/components/TimePicker/utils/get-time-range/get-time-range.mjs +12 -13
  358. package/esm/components/TimePicker/utils/get-time-range/get-time-range.mjs.map +1 -1
  359. package/esm/components/TimePicker/utils/get-time-string/get-time-string.mjs +39 -46
  360. package/esm/components/TimePicker/utils/get-time-string/get-time-string.mjs.map +1 -1
  361. package/esm/components/TimePicker/utils/is-same-time/is-same-time.mjs +10 -11
  362. package/esm/components/TimePicker/utils/is-same-time/is-same-time.mjs.map +1 -1
  363. package/esm/components/TimePicker/utils/pad-time/pad-time.mjs +6 -4
  364. package/esm/components/TimePicker/utils/pad-time/pad-time.mjs.map +1 -1
  365. package/esm/components/TimePicker/utils/split-time-string/split-time-string.mjs +11 -5
  366. package/esm/components/TimePicker/utils/split-time-string/split-time-string.mjs.map +1 -1
  367. package/esm/components/TimePicker/utils/time-to-seconds/time-to-seconds.mjs +17 -16
  368. package/esm/components/TimePicker/utils/time-to-seconds/time-to-seconds.mjs.map +1 -1
  369. package/esm/components/TimeValue/TimeValue.mjs +17 -13
  370. package/esm/components/TimeValue/TimeValue.mjs.map +1 -1
  371. package/esm/components/TimeValue/get-formatted-time/get-formatted-time.mjs +14 -25
  372. package/esm/components/TimeValue/get-formatted-time/get-formatted-time.mjs.map +1 -1
  373. package/esm/components/WeekdaysRow/WeekdaysRow.mjs +49 -58
  374. package/esm/components/WeekdaysRow/WeekdaysRow.mjs.map +1 -1
  375. package/esm/components/WeekdaysRow/WeekdaysRow.module.mjs +7 -0
  376. package/esm/components/WeekdaysRow/WeekdaysRow.module.mjs.map +1 -0
  377. package/esm/components/WeekdaysRow/get-weekdays-names/get-weekdays-names.mjs +12 -20
  378. package/esm/components/WeekdaysRow/get-weekdays-names/get-weekdays-names.mjs.map +1 -1
  379. package/esm/components/YearLevel/YearLevel.mjs +70 -114
  380. package/esm/components/YearLevel/YearLevel.mjs.map +1 -1
  381. package/esm/components/YearLevelGroup/YearLevelGroup.mjs +80 -128
  382. package/esm/components/YearLevelGroup/YearLevelGroup.mjs.map +1 -1
  383. package/esm/components/YearPicker/YearPicker.mjs +45 -69
  384. package/esm/components/YearPicker/YearPicker.mjs.map +1 -1
  385. package/esm/components/YearPicker/YearPicker.module.mjs +11 -0
  386. package/esm/components/YearPicker/YearPicker.module.mjs.map +1 -0
  387. package/esm/components/YearPickerInput/YearPickerInput.mjs +85 -117
  388. package/esm/components/YearPickerInput/YearPickerInput.mjs.map +1 -1
  389. package/esm/components/YearsList/YearsList.mjs +100 -126
  390. package/esm/components/YearsList/YearsList.mjs.map +1 -1
  391. package/esm/components/YearsList/YearsList.module.mjs +10 -0
  392. package/esm/components/YearsList/YearsList.module.mjs.map +1 -0
  393. package/esm/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.mjs +18 -24
  394. package/esm/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.mjs.map +1 -1
  395. package/esm/components/YearsList/get-years-data/get-years-data.mjs +23 -17
  396. package/esm/components/YearsList/get-years-data/get-years-data.mjs.map +1 -1
  397. package/esm/components/YearsList/is-year-disabled/is-year-disabled.mjs +10 -15
  398. package/esm/components/YearsList/is-year-disabled/is-year-disabled.mjs.map +1 -1
  399. package/esm/hooks/use-dates-input/use-dates-input.mjs +45 -64
  400. package/esm/hooks/use-dates-input/use-dates-input.mjs.map +1 -1
  401. package/esm/hooks/use-dates-state/is-in-range/is-in-range.mjs +8 -7
  402. package/esm/hooks/use-dates-state/is-in-range/is-in-range.mjs.map +1 -1
  403. package/esm/hooks/use-dates-state/use-dates-state.mjs +111 -148
  404. package/esm/hooks/use-dates-state/use-dates-state.mjs.map +1 -1
  405. package/esm/hooks/use-uncontrolled-dates/use-uncontrolled-dates.mjs +31 -33
  406. package/esm/hooks/use-uncontrolled-dates/use-uncontrolled-dates.mjs.map +1 -1
  407. package/esm/index.mjs +46 -46
  408. package/esm/utils/assign-time/assign-time.mjs +14 -15
  409. package/esm/utils/assign-time/assign-time.mjs.map +1 -1
  410. package/esm/utils/clamp-date/clamp-date.mjs +11 -16
  411. package/esm/utils/clamp-date/clamp-date.mjs.map +1 -1
  412. package/esm/utils/get-default-clamped-date/get-default-clamped-date.mjs +13 -21
  413. package/esm/utils/get-default-clamped-date/get-default-clamped-date.mjs.map +1 -1
  414. package/esm/utils/get-formatted-date/get-formatted-date.mjs +17 -30
  415. package/esm/utils/get-formatted-date/get-formatted-date.mjs.map +1 -1
  416. package/esm/utils/handle-control-key-down/handle-control-key-down.mjs +114 -147
  417. package/esm/utils/handle-control-key-down/handle-control-key-down.mjs.map +1 -1
  418. package/esm/utils/to-date-string/to-date-string.mjs +8 -7
  419. package/esm/utils/to-date-string/to-date-string.mjs.map +1 -1
  420. package/package.json +3 -3
  421. package/cjs/components/CalendarHeader/CalendarHeader.module.css.cjs +0 -7
  422. package/cjs/components/CalendarHeader/CalendarHeader.module.css.cjs.map +0 -1
  423. package/cjs/components/DatePicker/DatePicker.module.css.cjs +0 -7
  424. package/cjs/components/DatePicker/DatePicker.module.css.cjs.map +0 -1
  425. package/cjs/components/DateTimePicker/DateTimePicker.module.css.cjs +0 -7
  426. package/cjs/components/DateTimePicker/DateTimePicker.module.css.cjs.map +0 -1
  427. package/cjs/components/Day/Day.module.css.cjs +0 -7
  428. package/cjs/components/Day/Day.module.css.cjs.map +0 -1
  429. package/cjs/components/InlineDateTimePicker/InlineDateTimePicker.module.css.cjs +0 -7
  430. package/cjs/components/InlineDateTimePicker/InlineDateTimePicker.module.css.cjs.map +0 -1
  431. package/cjs/components/LevelsGroup/LevelsGroup.module.css.cjs +0 -7
  432. package/cjs/components/LevelsGroup/LevelsGroup.module.css.cjs.map +0 -1
  433. package/cjs/components/MiniCalendar/MiniCalendar.module.css.cjs +0 -7
  434. package/cjs/components/MiniCalendar/MiniCalendar.module.css.cjs.map +0 -1
  435. package/cjs/components/Month/Month.module.css.cjs +0 -7
  436. package/cjs/components/Month/Month.module.css.cjs.map +0 -1
  437. package/cjs/components/MonthPicker/MonthPicker.module.css.cjs +0 -7
  438. package/cjs/components/MonthPicker/MonthPicker.module.css.cjs.map +0 -1
  439. package/cjs/components/MonthsList/MonthsList.module.css.cjs +0 -7
  440. package/cjs/components/MonthsList/MonthsList.module.css.cjs.map +0 -1
  441. package/cjs/components/PickerControl/PickerControl.module.css.cjs +0 -7
  442. package/cjs/components/PickerControl/PickerControl.module.css.cjs.map +0 -1
  443. package/cjs/components/PickerInputBase/PickerInputBase.module.css.cjs +0 -7
  444. package/cjs/components/PickerInputBase/PickerInputBase.module.css.cjs.map +0 -1
  445. package/cjs/components/TimeGrid/TimeGrid.module.css.cjs +0 -7
  446. package/cjs/components/TimeGrid/TimeGrid.module.css.cjs.map +0 -1
  447. package/cjs/components/TimeInput/TimeInput.module.css.cjs +0 -7
  448. package/cjs/components/TimeInput/TimeInput.module.css.cjs.map +0 -1
  449. package/cjs/components/TimePicker/TimePicker.module.css.cjs +0 -7
  450. package/cjs/components/TimePicker/TimePicker.module.css.cjs.map +0 -1
  451. package/cjs/components/WeekdaysRow/WeekdaysRow.module.css.cjs +0 -7
  452. package/cjs/components/WeekdaysRow/WeekdaysRow.module.css.cjs.map +0 -1
  453. package/cjs/components/YearPicker/YearPicker.module.css.cjs +0 -7
  454. package/cjs/components/YearPicker/YearPicker.module.css.cjs.map +0 -1
  455. package/cjs/components/YearsList/YearsList.module.css.cjs +0 -7
  456. package/cjs/components/YearsList/YearsList.module.css.cjs.map +0 -1
  457. package/cjs/index.cjs.map +0 -1
  458. package/esm/components/CalendarHeader/CalendarHeader.module.css.mjs +0 -5
  459. package/esm/components/CalendarHeader/CalendarHeader.module.css.mjs.map +0 -1
  460. package/esm/components/DatePicker/DatePicker.module.css.mjs +0 -5
  461. package/esm/components/DatePicker/DatePicker.module.css.mjs.map +0 -1
  462. package/esm/components/DateTimePicker/DateTimePicker.module.css.mjs +0 -5
  463. package/esm/components/DateTimePicker/DateTimePicker.module.css.mjs.map +0 -1
  464. package/esm/components/Day/Day.module.css.mjs +0 -5
  465. package/esm/components/Day/Day.module.css.mjs.map +0 -1
  466. package/esm/components/InlineDateTimePicker/InlineDateTimePicker.module.css.mjs +0 -5
  467. package/esm/components/InlineDateTimePicker/InlineDateTimePicker.module.css.mjs.map +0 -1
  468. package/esm/components/LevelsGroup/LevelsGroup.module.css.mjs +0 -5
  469. package/esm/components/LevelsGroup/LevelsGroup.module.css.mjs.map +0 -1
  470. package/esm/components/MiniCalendar/MiniCalendar.module.css.mjs +0 -5
  471. package/esm/components/MiniCalendar/MiniCalendar.module.css.mjs.map +0 -1
  472. package/esm/components/Month/Month.module.css.mjs +0 -5
  473. package/esm/components/Month/Month.module.css.mjs.map +0 -1
  474. package/esm/components/MonthPicker/MonthPicker.module.css.mjs +0 -5
  475. package/esm/components/MonthPicker/MonthPicker.module.css.mjs.map +0 -1
  476. package/esm/components/MonthsList/MonthsList.module.css.mjs +0 -5
  477. package/esm/components/MonthsList/MonthsList.module.css.mjs.map +0 -1
  478. package/esm/components/PickerControl/PickerControl.module.css.mjs +0 -5
  479. package/esm/components/PickerControl/PickerControl.module.css.mjs.map +0 -1
  480. package/esm/components/PickerInputBase/PickerInputBase.module.css.mjs +0 -5
  481. package/esm/components/PickerInputBase/PickerInputBase.module.css.mjs.map +0 -1
  482. package/esm/components/TimeGrid/TimeGrid.module.css.mjs +0 -5
  483. package/esm/components/TimeGrid/TimeGrid.module.css.mjs.map +0 -1
  484. package/esm/components/TimeInput/TimeInput.module.css.mjs +0 -5
  485. package/esm/components/TimeInput/TimeInput.module.css.mjs.map +0 -1
  486. package/esm/components/TimePicker/TimePicker.module.css.mjs +0 -5
  487. package/esm/components/TimePicker/TimePicker.module.css.mjs.map +0 -1
  488. package/esm/components/WeekdaysRow/WeekdaysRow.module.css.mjs +0 -5
  489. package/esm/components/WeekdaysRow/WeekdaysRow.module.css.mjs.map +0 -1
  490. package/esm/components/YearPicker/YearPicker.module.css.mjs +0 -5
  491. package/esm/components/YearPicker/YearPicker.module.css.mjs.map +0 -1
  492. package/esm/components/YearsList/YearsList.module.css.mjs +0 -5
  493. package/esm/components/YearsList/YearsList.module.css.mjs.map +0 -1
  494. package/esm/index.mjs.map +0 -1
@@ -1,345 +1,255 @@
1
- 'use client';
2
- import { jsxs, jsx } from 'react/jsx-runtime';
3
- import dayjs from 'dayjs';
4
- import { useImperativeHandle, useRef, useEffect } from 'react';
5
- import { factory, useProps, useResolvedStylesApi, Box } from '@mantine/core';
6
- import { useUncontrolled, useMergedRef } from '@mantine/hooks';
7
- import { useUncontrolledDates } from '../../hooks/use-uncontrolled-dates/use-uncontrolled-dates.mjs';
8
- import '../DatesProvider/DatesProvider.mjs';
9
- import { toDateString } from '../../utils/to-date-string/to-date-string.mjs';
10
- import { DecadeLevelGroup } from '../DecadeLevelGroup/DecadeLevelGroup.mjs';
11
- import { MonthLevelGroup } from '../MonthLevelGroup/MonthLevelGroup.mjs';
12
- import { YearLevelGroup } from '../YearLevelGroup/YearLevelGroup.mjs';
13
- import { clampLevel } from './clamp-level/clamp-level.mjs';
14
-
1
+ "use client";
2
+ import { toDateString } from "../../utils/to-date-string/to-date-string.mjs";
3
+ import { DecadeLevelGroup } from "../DecadeLevelGroup/DecadeLevelGroup.mjs";
4
+ import { YearLevelGroup } from "../YearLevelGroup/YearLevelGroup.mjs";
5
+ import { MonthLevelGroup } from "../MonthLevelGroup/MonthLevelGroup.mjs";
6
+ import { useUncontrolledDates } from "../../hooks/use-uncontrolled-dates/use-uncontrolled-dates.mjs";
7
+ import { clampLevel } from "./clamp-level/clamp-level.mjs";
8
+ import dayjs from "dayjs";
9
+ import { useEffect, useImperativeHandle, useRef } from "react";
10
+ import { jsx, jsxs } from "react/jsx-runtime";
11
+ import { Box, factory, useProps, useResolvedStylesApi } from "@mantine/core";
12
+ import { useMergedRef, useUncontrolled } from "@mantine/hooks";
13
+ //#region packages/@mantine/dates/src/components/Calendar/Calendar.tsx
15
14
  const defaultProps = {
16
- maxLevel: "decade",
17
- minLevel: "month",
18
- __updateDateOnYearSelect: true,
19
- __updateDateOnMonthSelect: true,
20
- enableKeyboardNavigation: true
15
+ maxLevel: "decade",
16
+ minLevel: "month",
17
+ __updateDateOnYearSelect: true,
18
+ __updateDateOnMonthSelect: true,
19
+ enableKeyboardNavigation: true
21
20
  };
22
21
  const Calendar = factory((_props) => {
23
- const props = useProps("Calendar", defaultProps, _props);
24
- const {
25
- // CalendarLevel props
26
- vars,
27
- maxLevel,
28
- minLevel,
29
- defaultLevel,
30
- level,
31
- onLevelChange,
32
- date,
33
- defaultDate,
34
- onDateChange,
35
- numberOfColumns,
36
- columnsToScroll,
37
- ariaLabels,
38
- nextLabel,
39
- previousLabel,
40
- onYearSelect,
41
- onMonthSelect,
42
- onYearMouseEnter,
43
- onMonthMouseEnter,
44
- headerControlsOrder,
45
- __updateDateOnYearSelect,
46
- __updateDateOnMonthSelect,
47
- __setDateRef,
48
- __setLevelRef,
49
- // MonthLevelGroup props
50
- firstDayOfWeek,
51
- weekdayFormat,
52
- weekendDays,
53
- getDayProps,
54
- excludeDate,
55
- renderDay,
56
- hideOutsideDates,
57
- hideWeekdays,
58
- getDayAriaLabel,
59
- monthLabelFormat,
60
- nextIcon,
61
- previousIcon,
62
- __onDayClick,
63
- __onDayMouseEnter,
64
- withCellSpacing,
65
- highlightToday,
66
- withWeekNumbers,
67
- // YearLevelGroup props
68
- monthsListFormat,
69
- getMonthControlProps,
70
- yearLabelFormat,
71
- // DecadeLevelGroup props
72
- yearsListFormat,
73
- getYearControlProps,
74
- decadeLabelFormat,
75
- // Other props
76
- classNames,
77
- styles,
78
- unstyled,
79
- minDate,
80
- maxDate,
81
- locale,
82
- __staticSelector,
83
- size,
84
- __preventFocus,
85
- __stopPropagation,
86
- onNextDecade,
87
- onPreviousDecade,
88
- onNextYear,
89
- onPreviousYear,
90
- onNextMonth,
91
- onPreviousMonth,
92
- static: isStatic,
93
- enableKeyboardNavigation,
94
- fullWidth,
95
- attributes,
96
- ref,
97
- ...others
98
- } = props;
99
- const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi({
100
- classNames,
101
- styles,
102
- props
103
- });
104
- const [_level, setLevel] = useUncontrolled({
105
- value: level ? clampLevel(level, minLevel, maxLevel) : void 0,
106
- defaultValue: defaultLevel ? clampLevel(defaultLevel, minLevel, maxLevel) : void 0,
107
- finalValue: clampLevel(void 0, minLevel, maxLevel),
108
- onChange: onLevelChange
109
- });
110
- const [_date, setDate] = useUncontrolledDates({
111
- type: "default",
112
- value: toDateString(date),
113
- defaultValue: toDateString(defaultDate),
114
- onChange: onDateChange
115
- });
116
- useImperativeHandle(__setDateRef, () => (date2) => {
117
- setDate(date2);
118
- });
119
- useImperativeHandle(__setLevelRef, () => (level2) => {
120
- setLevel(level2);
121
- });
122
- const stylesApiProps = {
123
- __staticSelector: __staticSelector || "Calendar",
124
- styles: resolvedStyles,
125
- classNames: resolvedClassNames,
126
- unstyled,
127
- size,
128
- attributes
129
- };
130
- const _columnsToScroll = columnsToScroll || numberOfColumns || 1;
131
- const fallbackDateRef = useRef(null);
132
- if (fallbackDateRef.current === null) {
133
- const now = /* @__PURE__ */ new Date();
134
- fallbackDateRef.current = minDate && dayjs(now).isAfter(minDate) ? minDate : dayjs(now).format("YYYY-MM-DD");
135
- }
136
- const currentDate = _date || fallbackDateRef.current;
137
- const handleNextMonth = () => {
138
- const nextDate = dayjs(currentDate).add(_columnsToScroll, "month").format("YYYY-MM-DD");
139
- onNextMonth?.(nextDate);
140
- setDate(nextDate);
141
- };
142
- const handlePreviousMonth = () => {
143
- const nextDate = dayjs(currentDate).subtract(_columnsToScroll, "month").format("YYYY-MM-DD");
144
- onPreviousMonth?.(nextDate);
145
- setDate(nextDate);
146
- };
147
- const handleNextYear = () => {
148
- const nextDate = dayjs(currentDate).add(_columnsToScroll, "year").format("YYYY-MM-DD");
149
- onNextYear?.(nextDate);
150
- setDate(nextDate);
151
- };
152
- const handlePreviousYear = () => {
153
- const nextDate = dayjs(currentDate).subtract(_columnsToScroll, "year").format("YYYY-MM-DD");
154
- onPreviousYear?.(nextDate);
155
- setDate(nextDate);
156
- };
157
- const handleNextDecade = () => {
158
- const nextDate = dayjs(currentDate).add(10 * _columnsToScroll, "year").format("YYYY-MM-DD");
159
- onNextDecade?.(nextDate);
160
- setDate(nextDate);
161
- };
162
- const handlePreviousDecade = () => {
163
- const nextDate = dayjs(currentDate).subtract(10 * _columnsToScroll, "year").format("YYYY-MM-DD");
164
- onPreviousDecade?.(nextDate);
165
- setDate(nextDate);
166
- };
167
- const calendarRef = useRef(null);
168
- useEffect(() => {
169
- if (!enableKeyboardNavigation || isStatic) {
170
- return;
171
- }
172
- const handleKeyDown = (event) => {
173
- if (!calendarRef.current?.contains(document.activeElement)) {
174
- return;
175
- }
176
- const isCtrlOrCmd = event.ctrlKey || event.metaKey;
177
- const isShift = event.shiftKey;
178
- switch (event.key) {
179
- case "ArrowUp":
180
- if (isCtrlOrCmd && isShift) {
181
- event.preventDefault();
182
- handlePreviousDecade();
183
- } else if (isCtrlOrCmd) {
184
- event.preventDefault();
185
- handlePreviousYear();
186
- }
187
- break;
188
- case "ArrowDown":
189
- if (isCtrlOrCmd && isShift) {
190
- event.preventDefault();
191
- handleNextDecade();
192
- } else if (isCtrlOrCmd) {
193
- event.preventDefault();
194
- handleNextYear();
195
- }
196
- break;
197
- case "y":
198
- case "Y":
199
- if (_level === "month") {
200
- event.preventDefault();
201
- setLevel("year");
202
- }
203
- break;
204
- }
205
- };
206
- document.addEventListener("keydown", handleKeyDown);
207
- return () => {
208
- document.removeEventListener("keydown", handleKeyDown);
209
- };
210
- }, [
211
- enableKeyboardNavigation,
212
- isStatic,
213
- _level,
214
- handleNextYear,
215
- handlePreviousYear,
216
- handleNextDecade,
217
- handlePreviousDecade
218
- ]);
219
- return /* @__PURE__ */ jsxs(
220
- Box,
221
- {
222
- ref: useMergedRef(calendarRef, ref),
223
- size,
224
- "data-calendar": true,
225
- "data-full-width": fullWidth || void 0,
226
- ...others,
227
- children: [
228
- _level === "month" && /* @__PURE__ */ jsx(
229
- MonthLevelGroup,
230
- {
231
- month: currentDate,
232
- minDate,
233
- maxDate,
234
- firstDayOfWeek,
235
- weekdayFormat,
236
- weekendDays,
237
- getDayProps,
238
- excludeDate,
239
- renderDay,
240
- hideOutsideDates,
241
- hideWeekdays,
242
- getDayAriaLabel,
243
- onNext: handleNextMonth,
244
- onPrevious: handlePreviousMonth,
245
- hasNextLevel: maxLevel !== "month",
246
- onLevelClick: () => setLevel("year"),
247
- numberOfColumns,
248
- locale,
249
- levelControlAriaLabel: ariaLabels?.monthLevelControl,
250
- nextLabel: ariaLabels?.nextMonth ?? nextLabel,
251
- nextIcon,
252
- previousLabel: ariaLabels?.previousMonth ?? previousLabel,
253
- previousIcon,
254
- monthLabelFormat,
255
- __onDayClick,
256
- __onDayMouseEnter,
257
- __preventFocus,
258
- __stopPropagation,
259
- static: isStatic,
260
- withCellSpacing,
261
- highlightToday,
262
- withWeekNumbers,
263
- headerControlsOrder,
264
- fullWidth,
265
- ...stylesApiProps
266
- }
267
- ),
268
- _level === "year" && /* @__PURE__ */ jsx(
269
- YearLevelGroup,
270
- {
271
- year: currentDate,
272
- numberOfColumns,
273
- minDate,
274
- maxDate,
275
- monthsListFormat,
276
- getMonthControlProps,
277
- locale,
278
- onNext: handleNextYear,
279
- onPrevious: handlePreviousYear,
280
- hasNextLevel: maxLevel !== "month" && maxLevel !== "year",
281
- onLevelClick: () => setLevel("decade"),
282
- levelControlAriaLabel: ariaLabels?.yearLevelControl,
283
- nextLabel: ariaLabels?.nextYear ?? nextLabel,
284
- nextIcon,
285
- previousLabel: ariaLabels?.previousYear ?? previousLabel,
286
- previousIcon,
287
- yearLabelFormat,
288
- __onControlMouseEnter: onMonthMouseEnter,
289
- __onControlClick: (_event, payload) => {
290
- __updateDateOnMonthSelect && setDate(payload);
291
- setLevel(clampLevel("month", minLevel, maxLevel));
292
- onMonthSelect?.(payload);
293
- },
294
- __preventFocus,
295
- __stopPropagation,
296
- withCellSpacing,
297
- headerControlsOrder,
298
- fullWidth,
299
- ...stylesApiProps
300
- }
301
- ),
302
- _level === "decade" && /* @__PURE__ */ jsx(
303
- DecadeLevelGroup,
304
- {
305
- decade: currentDate,
306
- minDate,
307
- maxDate,
308
- yearsListFormat,
309
- getYearControlProps,
310
- locale,
311
- onNext: handleNextDecade,
312
- onPrevious: handlePreviousDecade,
313
- numberOfColumns,
314
- nextLabel: ariaLabels?.nextDecade ?? nextLabel,
315
- nextIcon,
316
- previousLabel: ariaLabels?.previousDecade ?? previousLabel,
317
- previousIcon,
318
- decadeLabelFormat,
319
- __onControlMouseEnter: onYearMouseEnter,
320
- __onControlClick: (_event, payload) => {
321
- __updateDateOnYearSelect && setDate(payload);
322
- setLevel(clampLevel("year", minLevel, maxLevel));
323
- onYearSelect?.(payload);
324
- },
325
- __preventFocus,
326
- __stopPropagation,
327
- withCellSpacing,
328
- headerControlsOrder,
329
- fullWidth,
330
- ...stylesApiProps
331
- }
332
- )
333
- ]
334
- }
335
- );
22
+ const props = useProps("Calendar", defaultProps, _props);
23
+ const { vars, maxLevel, minLevel, defaultLevel, level, onLevelChange, date, defaultDate, onDateChange, numberOfColumns, columnsToScroll, ariaLabels, nextLabel, previousLabel, onYearSelect, onMonthSelect, onYearMouseEnter, onMonthMouseEnter, headerControlsOrder, __updateDateOnYearSelect, __updateDateOnMonthSelect, __setDateRef, __setLevelRef, firstDayOfWeek, weekdayFormat, weekendDays, getDayProps, excludeDate, renderDay, hideOutsideDates, hideWeekdays, getDayAriaLabel, monthLabelFormat, nextIcon, previousIcon, __onDayClick, __onDayMouseEnter, withCellSpacing, highlightToday, withWeekNumbers, monthsListFormat, getMonthControlProps, yearLabelFormat, yearsListFormat, getYearControlProps, decadeLabelFormat, classNames, styles, unstyled, minDate, maxDate, locale, __staticSelector, size, __preventFocus, __stopPropagation, onNextDecade, onPreviousDecade, onNextYear, onPreviousYear, onNextMonth, onPreviousMonth, static: isStatic, enableKeyboardNavigation, fullWidth, attributes, ref, ...others } = props;
24
+ const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi({
25
+ classNames,
26
+ styles,
27
+ props
28
+ });
29
+ const [_level, setLevel] = useUncontrolled({
30
+ value: level ? clampLevel(level, minLevel, maxLevel) : void 0,
31
+ defaultValue: defaultLevel ? clampLevel(defaultLevel, minLevel, maxLevel) : void 0,
32
+ finalValue: clampLevel(void 0, minLevel, maxLevel),
33
+ onChange: onLevelChange
34
+ });
35
+ const [_date, setDate] = useUncontrolledDates({
36
+ type: "default",
37
+ value: toDateString(date),
38
+ defaultValue: toDateString(defaultDate),
39
+ onChange: onDateChange
40
+ });
41
+ useImperativeHandle(__setDateRef, () => (date) => {
42
+ setDate(date);
43
+ });
44
+ useImperativeHandle(__setLevelRef, () => (level) => {
45
+ setLevel(level);
46
+ });
47
+ const stylesApiProps = {
48
+ __staticSelector: __staticSelector || "Calendar",
49
+ styles: resolvedStyles,
50
+ classNames: resolvedClassNames,
51
+ unstyled,
52
+ size,
53
+ attributes
54
+ };
55
+ const _columnsToScroll = columnsToScroll || numberOfColumns || 1;
56
+ const fallbackDateRef = useRef(null);
57
+ if (fallbackDateRef.current === null) {
58
+ const now = /* @__PURE__ */ new Date();
59
+ fallbackDateRef.current = minDate && dayjs(now).isAfter(minDate) ? minDate : dayjs(now).format("YYYY-MM-DD");
60
+ }
61
+ const currentDate = _date || fallbackDateRef.current;
62
+ const handleNextMonth = () => {
63
+ const nextDate = dayjs(currentDate).add(_columnsToScroll, "month").format("YYYY-MM-DD");
64
+ onNextMonth?.(nextDate);
65
+ setDate(nextDate);
66
+ };
67
+ const handlePreviousMonth = () => {
68
+ const nextDate = dayjs(currentDate).subtract(_columnsToScroll, "month").format("YYYY-MM-DD");
69
+ onPreviousMonth?.(nextDate);
70
+ setDate(nextDate);
71
+ };
72
+ const handleNextYear = () => {
73
+ const nextDate = dayjs(currentDate).add(_columnsToScroll, "year").format("YYYY-MM-DD");
74
+ onNextYear?.(nextDate);
75
+ setDate(nextDate);
76
+ };
77
+ const handlePreviousYear = () => {
78
+ const nextDate = dayjs(currentDate).subtract(_columnsToScroll, "year").format("YYYY-MM-DD");
79
+ onPreviousYear?.(nextDate);
80
+ setDate(nextDate);
81
+ };
82
+ const handleNextDecade = () => {
83
+ const nextDate = dayjs(currentDate).add(10 * _columnsToScroll, "year").format("YYYY-MM-DD");
84
+ onNextDecade?.(nextDate);
85
+ setDate(nextDate);
86
+ };
87
+ const handlePreviousDecade = () => {
88
+ const nextDate = dayjs(currentDate).subtract(10 * _columnsToScroll, "year").format("YYYY-MM-DD");
89
+ onPreviousDecade?.(nextDate);
90
+ setDate(nextDate);
91
+ };
92
+ const calendarRef = useRef(null);
93
+ useEffect(() => {
94
+ if (!enableKeyboardNavigation || isStatic) return;
95
+ const handleKeyDown = (event) => {
96
+ if (!calendarRef.current?.contains(document.activeElement)) return;
97
+ const isCtrlOrCmd = event.ctrlKey || event.metaKey;
98
+ const isShift = event.shiftKey;
99
+ switch (event.key) {
100
+ case "ArrowUp":
101
+ if (isCtrlOrCmd && isShift) {
102
+ event.preventDefault();
103
+ handlePreviousDecade();
104
+ } else if (isCtrlOrCmd) {
105
+ event.preventDefault();
106
+ handlePreviousYear();
107
+ }
108
+ break;
109
+ case "ArrowDown":
110
+ if (isCtrlOrCmd && isShift) {
111
+ event.preventDefault();
112
+ handleNextDecade();
113
+ } else if (isCtrlOrCmd) {
114
+ event.preventDefault();
115
+ handleNextYear();
116
+ }
117
+ break;
118
+ case "y":
119
+ case "Y":
120
+ if (_level === "month") {
121
+ event.preventDefault();
122
+ setLevel("year");
123
+ }
124
+ break;
125
+ }
126
+ };
127
+ document.addEventListener("keydown", handleKeyDown);
128
+ return () => {
129
+ document.removeEventListener("keydown", handleKeyDown);
130
+ };
131
+ }, [
132
+ enableKeyboardNavigation,
133
+ isStatic,
134
+ _level,
135
+ handleNextYear,
136
+ handlePreviousYear,
137
+ handleNextDecade,
138
+ handlePreviousDecade
139
+ ]);
140
+ return /* @__PURE__ */ jsxs(Box, {
141
+ ref: useMergedRef(calendarRef, ref),
142
+ size,
143
+ "data-calendar": true,
144
+ "data-full-width": fullWidth || void 0,
145
+ ...others,
146
+ children: [
147
+ _level === "month" && /* @__PURE__ */ jsx(MonthLevelGroup, {
148
+ month: currentDate,
149
+ minDate,
150
+ maxDate,
151
+ firstDayOfWeek,
152
+ weekdayFormat,
153
+ weekendDays,
154
+ getDayProps,
155
+ excludeDate,
156
+ renderDay,
157
+ hideOutsideDates,
158
+ hideWeekdays,
159
+ getDayAriaLabel,
160
+ onNext: handleNextMonth,
161
+ onPrevious: handlePreviousMonth,
162
+ hasNextLevel: maxLevel !== "month",
163
+ onLevelClick: () => setLevel("year"),
164
+ numberOfColumns,
165
+ locale,
166
+ levelControlAriaLabel: ariaLabels?.monthLevelControl,
167
+ nextLabel: ariaLabels?.nextMonth ?? nextLabel,
168
+ nextIcon,
169
+ previousLabel: ariaLabels?.previousMonth ?? previousLabel,
170
+ previousIcon,
171
+ monthLabelFormat,
172
+ __onDayClick,
173
+ __onDayMouseEnter,
174
+ __preventFocus,
175
+ __stopPropagation,
176
+ static: isStatic,
177
+ withCellSpacing,
178
+ highlightToday,
179
+ withWeekNumbers,
180
+ headerControlsOrder,
181
+ fullWidth,
182
+ ...stylesApiProps
183
+ }),
184
+ _level === "year" && /* @__PURE__ */ jsx(YearLevelGroup, {
185
+ year: currentDate,
186
+ numberOfColumns,
187
+ minDate,
188
+ maxDate,
189
+ monthsListFormat,
190
+ getMonthControlProps,
191
+ locale,
192
+ onNext: handleNextYear,
193
+ onPrevious: handlePreviousYear,
194
+ hasNextLevel: maxLevel !== "month" && maxLevel !== "year",
195
+ onLevelClick: () => setLevel("decade"),
196
+ levelControlAriaLabel: ariaLabels?.yearLevelControl,
197
+ nextLabel: ariaLabels?.nextYear ?? nextLabel,
198
+ nextIcon,
199
+ previousLabel: ariaLabels?.previousYear ?? previousLabel,
200
+ previousIcon,
201
+ yearLabelFormat,
202
+ __onControlMouseEnter: onMonthMouseEnter,
203
+ __onControlClick: (_event, payload) => {
204
+ __updateDateOnMonthSelect && setDate(payload);
205
+ setLevel(clampLevel("month", minLevel, maxLevel));
206
+ onMonthSelect?.(payload);
207
+ },
208
+ __preventFocus,
209
+ __stopPropagation,
210
+ withCellSpacing,
211
+ headerControlsOrder,
212
+ fullWidth,
213
+ ...stylesApiProps
214
+ }),
215
+ _level === "decade" && /* @__PURE__ */ jsx(DecadeLevelGroup, {
216
+ decade: currentDate,
217
+ minDate,
218
+ maxDate,
219
+ yearsListFormat,
220
+ getYearControlProps,
221
+ locale,
222
+ onNext: handleNextDecade,
223
+ onPrevious: handlePreviousDecade,
224
+ numberOfColumns,
225
+ nextLabel: ariaLabels?.nextDecade ?? nextLabel,
226
+ nextIcon,
227
+ previousLabel: ariaLabels?.previousDecade ?? previousLabel,
228
+ previousIcon,
229
+ decadeLabelFormat,
230
+ __onControlMouseEnter: onYearMouseEnter,
231
+ __onControlClick: (_event, payload) => {
232
+ __updateDateOnYearSelect && setDate(payload);
233
+ setLevel(clampLevel("year", minLevel, maxLevel));
234
+ onYearSelect?.(payload);
235
+ },
236
+ __preventFocus,
237
+ __stopPropagation,
238
+ withCellSpacing,
239
+ headerControlsOrder,
240
+ fullWidth,
241
+ ...stylesApiProps
242
+ })
243
+ ]
244
+ });
336
245
  });
337
246
  Calendar.classes = {
338
- ...DecadeLevelGroup.classes,
339
- ...YearLevelGroup.classes,
340
- ...MonthLevelGroup.classes
247
+ ...DecadeLevelGroup.classes,
248
+ ...YearLevelGroup.classes,
249
+ ...MonthLevelGroup.classes
341
250
  };
342
251
  Calendar.displayName = "@mantine/dates/Calendar";
343
-
252
+ //#endregion
344
253
  export { Calendar };
345
- //# sourceMappingURL=Calendar.mjs.map
254
+
255
+ //# sourceMappingURL=Calendar.mjs.map