@mantine/dates 6.0.19 → 7.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (451) hide show
  1. package/cjs/components/Calendar/Calendar.js +118 -112
  2. package/cjs/components/Calendar/Calendar.js.map +1 -1
  3. package/cjs/components/Calendar/clamp-level/clamp-level.js +8 -2
  4. package/cjs/components/Calendar/clamp-level/clamp-level.js.map +1 -1
  5. package/cjs/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.js +15 -5
  6. package/cjs/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.js.map +1 -1
  7. package/cjs/components/CalendarHeader/CalendarHeader.js +91 -65
  8. package/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
  9. package/cjs/components/CalendarHeader/CalendarHeader.module.css.js +8 -0
  10. package/cjs/components/CalendarHeader/CalendarHeader.module.css.js.map +1 -0
  11. package/cjs/components/DateInput/DateInput.js +66 -60
  12. package/cjs/components/DateInput/DateInput.js.map +1 -1
  13. package/cjs/components/DateInput/date-string-parser/date-string-parser.js +3 -0
  14. package/cjs/components/DateInput/date-string-parser/date-string-parser.js.map +1 -1
  15. package/cjs/components/DateInput/is-date-valid/is-date-valid.js.map +1 -1
  16. package/cjs/components/DatePicker/DatePicker.js +48 -15
  17. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  18. package/cjs/components/DatePickerInput/DatePickerInput.js +116 -96
  19. package/cjs/components/DatePickerInput/DatePickerInput.js.map +1 -1
  20. package/cjs/components/DateTimePicker/DateTimePicker.js +102 -75
  21. package/cjs/components/DateTimePicker/DateTimePicker.js.map +1 -1
  22. package/cjs/components/DateTimePicker/DateTimePicker.module.css.js +8 -0
  23. package/cjs/components/DateTimePicker/DateTimePicker.module.css.js.map +1 -0
  24. package/cjs/components/DatesProvider/DatesProvider.js +1 -3
  25. package/cjs/components/DatesProvider/DatesProvider.js.map +1 -1
  26. package/cjs/components/DatesProvider/use-dates-context.js +12 -3
  27. package/cjs/components/DatesProvider/use-dates-context.js.map +1 -1
  28. package/cjs/components/Day/Day.js +61 -40
  29. package/cjs/components/Day/Day.js.map +1 -1
  30. package/cjs/components/Day/Day.module.css.js +8 -0
  31. package/cjs/components/Day/Day.module.css.js.map +1 -0
  32. package/cjs/components/DecadeLevel/DecadeLevel.js +52 -57
  33. package/cjs/components/DecadeLevel/DecadeLevel.js.map +1 -1
  34. package/cjs/components/DecadeLevelGroup/DecadeLevelGroup.js +79 -74
  35. package/cjs/components/DecadeLevelGroup/DecadeLevelGroup.js.map +1 -1
  36. package/cjs/components/HiddenDatesInput/HiddenDatesInput.js +2 -7
  37. package/cjs/components/HiddenDatesInput/HiddenDatesInput.js.map +1 -1
  38. package/cjs/components/{CalendarHeader/Chevron.js → LevelsGroup/LevelsGroup.js} +23 -15
  39. package/cjs/components/LevelsGroup/LevelsGroup.js.map +1 -0
  40. package/cjs/components/LevelsGroup/LevelsGroup.module.css.js +8 -0
  41. package/cjs/components/LevelsGroup/LevelsGroup.module.css.js.map +1 -0
  42. package/cjs/components/Month/Month.js +100 -78
  43. package/cjs/components/Month/Month.js.map +1 -1
  44. package/cjs/components/Month/Month.module.css.js +8 -0
  45. package/cjs/components/Month/Month.module.css.js.map +1 -0
  46. package/cjs/components/Month/get-date-in-tab-order/get-date-in-tab-order.js +6 -4
  47. package/cjs/components/Month/get-date-in-tab-order/get-date-in-tab-order.js.map +1 -1
  48. package/cjs/components/MonthLevel/MonthLevel.js +56 -64
  49. package/cjs/components/MonthLevel/MonthLevel.js.map +1 -1
  50. package/cjs/components/MonthLevelGroup/MonthLevelGroup.js +86 -82
  51. package/cjs/components/MonthLevelGroup/MonthLevelGroup.js.map +1 -1
  52. package/cjs/components/MonthPicker/MonthPicker.js +39 -17
  53. package/cjs/components/MonthPicker/MonthPicker.js.map +1 -1
  54. package/cjs/components/MonthPickerInput/MonthPickerInput.js +112 -92
  55. package/cjs/components/MonthPickerInput/MonthPickerInput.js.map +1 -1
  56. package/cjs/components/MonthsList/MonthsList.js +78 -72
  57. package/cjs/components/MonthsList/MonthsList.js.map +1 -1
  58. package/cjs/components/MonthsList/MonthsList.module.css.js +8 -0
  59. package/cjs/components/MonthsList/MonthsList.module.css.js.map +1 -0
  60. package/cjs/components/MonthsList/get-month-in-tab-order/get-month-in-tab-order.js +6 -4
  61. package/cjs/components/MonthsList/get-month-in-tab-order/get-month-in-tab-order.js.map +1 -1
  62. package/cjs/components/MonthsList/is-month-disabled/is-month-disabled.js.map +1 -1
  63. package/cjs/components/PickerControl/PickerControl.js +47 -31
  64. package/cjs/components/PickerControl/PickerControl.js.map +1 -1
  65. package/cjs/components/PickerControl/PickerControl.module.css.js +8 -0
  66. package/cjs/components/PickerControl/PickerControl.module.css.js.map +1 -0
  67. package/cjs/components/PickerInputBase/PickerInputBase.js +60 -59
  68. package/cjs/components/PickerInputBase/PickerInputBase.js.map +1 -1
  69. package/cjs/components/PickerInputBase/PickerInputBase.module.css.js +8 -0
  70. package/cjs/components/PickerInputBase/PickerInputBase.module.css.js.map +1 -0
  71. package/cjs/components/TimeInput/TimeInput.js +22 -19
  72. package/cjs/components/TimeInput/TimeInput.js.map +1 -1
  73. package/cjs/components/TimeInput/TimeInput.module.css.js +8 -0
  74. package/cjs/components/TimeInput/TimeInput.module.css.js.map +1 -0
  75. package/cjs/components/WeekdaysRow/WeekdaysRow.js +37 -35
  76. package/cjs/components/WeekdaysRow/WeekdaysRow.js.map +1 -1
  77. package/cjs/components/WeekdaysRow/WeekdaysRow.module.css.js +8 -0
  78. package/cjs/components/WeekdaysRow/WeekdaysRow.module.css.js.map +1 -0
  79. package/cjs/components/YearLevel/YearLevel.js +57 -65
  80. package/cjs/components/YearLevel/YearLevel.js.map +1 -1
  81. package/cjs/components/YearLevelGroup/YearLevelGroup.js +78 -74
  82. package/cjs/components/YearLevelGroup/YearLevelGroup.js.map +1 -1
  83. package/cjs/components/YearPicker/YearPicker.js +39 -17
  84. package/cjs/components/YearPicker/YearPicker.js.map +1 -1
  85. package/cjs/components/YearPickerInput/YearPickerInput.js +112 -92
  86. package/cjs/components/YearPickerInput/YearPickerInput.js.map +1 -1
  87. package/cjs/components/YearsList/YearsList.js +72 -68
  88. package/cjs/components/YearsList/YearsList.js.map +1 -1
  89. package/cjs/components/YearsList/YearsList.module.css.js +8 -0
  90. package/cjs/components/YearsList/YearsList.module.css.js.map +1 -0
  91. package/cjs/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.js +6 -4
  92. package/cjs/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.js.map +1 -1
  93. package/cjs/components/YearsList/is-year-disabled/is-year-disabled.js.map +1 -1
  94. package/cjs/hooks/use-dates-input/use-dates-input.js.map +1 -1
  95. package/cjs/hooks/use-dates-state/use-dates-state.js +9 -3
  96. package/cjs/hooks/use-dates-state/use-dates-state.js.map +1 -1
  97. package/cjs/hooks/use-uncontrolled-dates/use-uncontrolled-dates.js +9 -3
  98. package/cjs/hooks/use-uncontrolled-dates/use-uncontrolled-dates.js.map +1 -1
  99. package/cjs/index.css +413 -0
  100. package/cjs/index.js +41 -40
  101. package/cjs/index.js.map +1 -1
  102. package/cjs/utils/get-default-clamped-date.js +3 -3
  103. package/cjs/utils/get-default-clamped-date.js.map +1 -1
  104. package/cjs/utils/get-formatted-date.js +1 -1
  105. package/cjs/utils/get-formatted-date.js.map +1 -1
  106. package/cjs/utils/handle-control-key-down.js +4 -3
  107. package/cjs/utils/handle-control-key-down.js.map +1 -1
  108. package/esm/components/Calendar/Calendar.js +120 -114
  109. package/esm/components/Calendar/Calendar.js.map +1 -1
  110. package/esm/components/Calendar/clamp-level/clamp-level.js +8 -2
  111. package/esm/components/Calendar/clamp-level/clamp-level.js.map +1 -1
  112. package/esm/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.js +15 -5
  113. package/esm/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.js.map +1 -1
  114. package/esm/components/CalendarHeader/CalendarHeader.js +93 -67
  115. package/esm/components/CalendarHeader/CalendarHeader.js.map +1 -1
  116. package/esm/components/CalendarHeader/CalendarHeader.module.css.js +4 -0
  117. package/esm/components/CalendarHeader/CalendarHeader.module.css.js.map +1 -0
  118. package/esm/components/DateInput/DateInput.js +67 -61
  119. package/esm/components/DateInput/DateInput.js.map +1 -1
  120. package/esm/components/DateInput/date-string-parser/date-string-parser.js +3 -0
  121. package/esm/components/DateInput/date-string-parser/date-string-parser.js.map +1 -1
  122. package/esm/components/DateInput/is-date-valid/is-date-valid.js.map +1 -1
  123. package/esm/components/DatePicker/DatePicker.js +50 -17
  124. package/esm/components/DatePicker/DatePicker.js.map +1 -1
  125. package/esm/components/DatePickerInput/DatePickerInput.js +118 -98
  126. package/esm/components/DatePickerInput/DatePickerInput.js.map +1 -1
  127. package/esm/components/DateTimePicker/DateTimePicker.js +104 -77
  128. package/esm/components/DateTimePicker/DateTimePicker.js.map +1 -1
  129. package/esm/components/DateTimePicker/DateTimePicker.module.css.js +4 -0
  130. package/esm/components/DateTimePicker/DateTimePicker.module.css.js.map +1 -0
  131. package/esm/components/DatesProvider/DatesProvider.js +1 -3
  132. package/esm/components/DatesProvider/DatesProvider.js.map +1 -1
  133. package/esm/components/DatesProvider/use-dates-context.js +12 -3
  134. package/esm/components/DatesProvider/use-dates-context.js.map +1 -1
  135. package/esm/components/Day/Day.js +61 -40
  136. package/esm/components/Day/Day.js.map +1 -1
  137. package/esm/components/Day/Day.module.css.js +4 -0
  138. package/esm/components/Day/Day.module.css.js.map +1 -0
  139. package/esm/components/DecadeLevel/DecadeLevel.js +52 -57
  140. package/esm/components/DecadeLevel/DecadeLevel.js.map +1 -1
  141. package/esm/components/DecadeLevelGroup/DecadeLevelGroup.js +79 -74
  142. package/esm/components/DecadeLevelGroup/DecadeLevelGroup.js.map +1 -1
  143. package/esm/components/HiddenDatesInput/HiddenDatesInput.js +2 -7
  144. package/esm/components/HiddenDatesInput/HiddenDatesInput.js.map +1 -1
  145. package/esm/components/{CalendarHeader/Chevron.js → LevelsGroup/LevelsGroup.js} +24 -16
  146. package/esm/components/LevelsGroup/LevelsGroup.js.map +1 -0
  147. package/esm/components/LevelsGroup/LevelsGroup.module.css.js +4 -0
  148. package/esm/components/LevelsGroup/LevelsGroup.module.css.js.map +1 -0
  149. package/esm/components/Month/Month.js +102 -80
  150. package/esm/components/Month/Month.js.map +1 -1
  151. package/esm/components/Month/Month.module.css.js +4 -0
  152. package/esm/components/Month/Month.module.css.js.map +1 -0
  153. package/esm/components/Month/get-date-in-tab-order/get-date-in-tab-order.js +6 -4
  154. package/esm/components/Month/get-date-in-tab-order/get-date-in-tab-order.js.map +1 -1
  155. package/esm/components/MonthLevel/MonthLevel.js +58 -66
  156. package/esm/components/MonthLevel/MonthLevel.js.map +1 -1
  157. package/esm/components/MonthLevelGroup/MonthLevelGroup.js +86 -82
  158. package/esm/components/MonthLevelGroup/MonthLevelGroup.js.map +1 -1
  159. package/esm/components/MonthPicker/MonthPicker.js +41 -19
  160. package/esm/components/MonthPicker/MonthPicker.js.map +1 -1
  161. package/esm/components/MonthPickerInput/MonthPickerInput.js +114 -94
  162. package/esm/components/MonthPickerInput/MonthPickerInput.js.map +1 -1
  163. package/esm/components/MonthsList/MonthsList.js +78 -72
  164. package/esm/components/MonthsList/MonthsList.js.map +1 -1
  165. package/esm/components/MonthsList/MonthsList.module.css.js +4 -0
  166. package/esm/components/MonthsList/MonthsList.module.css.js.map +1 -0
  167. package/esm/components/MonthsList/get-month-in-tab-order/get-month-in-tab-order.js +6 -4
  168. package/esm/components/MonthsList/get-month-in-tab-order/get-month-in-tab-order.js.map +1 -1
  169. package/esm/components/MonthsList/is-month-disabled/is-month-disabled.js.map +1 -1
  170. package/esm/components/PickerControl/PickerControl.js +49 -33
  171. package/esm/components/PickerControl/PickerControl.js.map +1 -1
  172. package/esm/components/PickerControl/PickerControl.module.css.js +4 -0
  173. package/esm/components/PickerControl/PickerControl.module.css.js.map +1 -0
  174. package/esm/components/PickerInputBase/PickerInputBase.js +61 -61
  175. package/esm/components/PickerInputBase/PickerInputBase.js.map +1 -1
  176. package/esm/components/PickerInputBase/PickerInputBase.module.css.js +4 -0
  177. package/esm/components/PickerInputBase/PickerInputBase.module.css.js.map +1 -0
  178. package/esm/components/TimeInput/TimeInput.js +23 -21
  179. package/esm/components/TimeInput/TimeInput.js.map +1 -1
  180. package/esm/components/TimeInput/TimeInput.module.css.js +4 -0
  181. package/esm/components/TimeInput/TimeInput.module.css.js.map +1 -0
  182. package/esm/components/WeekdaysRow/WeekdaysRow.js +39 -37
  183. package/esm/components/WeekdaysRow/WeekdaysRow.js.map +1 -1
  184. package/esm/components/WeekdaysRow/WeekdaysRow.module.css.js +4 -0
  185. package/esm/components/WeekdaysRow/WeekdaysRow.module.css.js.map +1 -0
  186. package/esm/components/YearLevel/YearLevel.js +57 -65
  187. package/esm/components/YearLevel/YearLevel.js.map +1 -1
  188. package/esm/components/YearLevelGroup/YearLevelGroup.js +78 -74
  189. package/esm/components/YearLevelGroup/YearLevelGroup.js.map +1 -1
  190. package/esm/components/YearPicker/YearPicker.js +41 -19
  191. package/esm/components/YearPicker/YearPicker.js.map +1 -1
  192. package/esm/components/YearPickerInput/YearPickerInput.js +114 -94
  193. package/esm/components/YearPickerInput/YearPickerInput.js.map +1 -1
  194. package/esm/components/YearsList/YearsList.js +74 -70
  195. package/esm/components/YearsList/YearsList.js.map +1 -1
  196. package/esm/components/YearsList/YearsList.module.css.js +4 -0
  197. package/esm/components/YearsList/YearsList.module.css.js.map +1 -0
  198. package/esm/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.js +6 -4
  199. package/esm/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.js.map +1 -1
  200. package/esm/components/YearsList/is-year-disabled/is-year-disabled.js.map +1 -1
  201. package/esm/hooks/use-dates-input/use-dates-input.js.map +1 -1
  202. package/esm/hooks/use-dates-state/use-dates-state.js +9 -3
  203. package/esm/hooks/use-dates-state/use-dates-state.js.map +1 -1
  204. package/esm/hooks/use-uncontrolled-dates/use-uncontrolled-dates.js +9 -3
  205. package/esm/hooks/use-uncontrolled-dates/use-uncontrolled-dates.js.map +1 -1
  206. package/esm/index.css +413 -0
  207. package/esm/index.js +21 -20
  208. package/esm/index.js.map +1 -1
  209. package/esm/utils/get-default-clamped-date.js +3 -3
  210. package/esm/utils/get-default-clamped-date.js.map +1 -1
  211. package/esm/utils/get-formatted-date.js +1 -1
  212. package/esm/utils/get-formatted-date.js.map +1 -1
  213. package/esm/utils/handle-control-key-down.js +4 -3
  214. package/esm/utils/handle-control-key-down.js.map +1 -1
  215. package/lib/components/Calendar/Calendar.d.ts +13 -8
  216. package/lib/components/Calendar/Calendar.d.ts.map +1 -1
  217. package/lib/components/Calendar/clamp-level/clamp-level.d.ts +1 -1
  218. package/lib/components/Calendar/clamp-level/clamp-level.d.ts.map +1 -1
  219. package/lib/components/Calendar/index.d.ts +1 -1
  220. package/lib/components/Calendar/index.d.ts.map +1 -1
  221. package/lib/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.d.ts +1 -1
  222. package/lib/components/CalendarHeader/CalendarHeader.d.ts +18 -6
  223. package/lib/components/CalendarHeader/CalendarHeader.d.ts.map +1 -1
  224. package/lib/components/CalendarHeader/index.d.ts +1 -1
  225. package/lib/components/CalendarHeader/index.d.ts.map +1 -1
  226. package/lib/components/DateInput/DateInput.d.ts +15 -4
  227. package/lib/components/DateInput/DateInput.d.ts.map +1 -1
  228. package/lib/components/DateInput/date-string-parser/date-string-parser.d.ts +1 -1
  229. package/lib/components/DateInput/date-string-parser/date-string-parser.d.ts.map +1 -1
  230. package/lib/components/DateInput/index.d.ts +1 -1
  231. package/lib/components/DateInput/index.d.ts.map +1 -1
  232. package/lib/components/DateInput/is-date-valid/is-date-valid.d.ts +2 -2
  233. package/lib/components/DateInput/is-date-valid/is-date-valid.d.ts.map +1 -1
  234. package/lib/components/DatePicker/DatePicker.d.ts +10 -3
  235. package/lib/components/DatePicker/DatePicker.d.ts.map +1 -1
  236. package/lib/components/DatePicker/index.d.ts +1 -1
  237. package/lib/components/DatePicker/index.d.ts.map +1 -1
  238. package/lib/components/DatePickerInput/DatePickerInput.d.ts +12 -4
  239. package/lib/components/DatePickerInput/DatePickerInput.d.ts.map +1 -1
  240. package/lib/components/DatePickerInput/index.d.ts +1 -1
  241. package/lib/components/DatePickerInput/index.d.ts.map +1 -1
  242. package/lib/components/DateTimePicker/DateTimePicker.d.ts +17 -7
  243. package/lib/components/DateTimePicker/DateTimePicker.d.ts.map +1 -1
  244. package/lib/components/DateTimePicker/index.d.ts +1 -1
  245. package/lib/components/DateTimePicker/index.d.ts.map +1 -1
  246. package/lib/components/DatesProvider/DatesProvider.d.ts +1 -1
  247. package/lib/components/DatesProvider/DatesProvider.d.ts.map +1 -1
  248. package/lib/components/Day/Day.d.ts +27 -17
  249. package/lib/components/Day/Day.d.ts.map +1 -1
  250. package/lib/components/Day/index.d.ts +1 -2
  251. package/lib/components/Day/index.d.ts.map +1 -1
  252. package/lib/components/DecadeLevel/DecadeLevel.d.ts +16 -7
  253. package/lib/components/DecadeLevel/DecadeLevel.d.ts.map +1 -1
  254. package/lib/components/DecadeLevel/index.d.ts +1 -1
  255. package/lib/components/DecadeLevel/index.d.ts.map +1 -1
  256. package/lib/components/DecadeLevelGroup/DecadeLevelGroup.d.ts +17 -7
  257. package/lib/components/DecadeLevelGroup/DecadeLevelGroup.d.ts.map +1 -1
  258. package/lib/components/DecadeLevelGroup/index.d.ts +1 -1
  259. package/lib/components/DecadeLevelGroup/index.d.ts.map +1 -1
  260. package/lib/components/HiddenDatesInput/HiddenDatesInput.d.ts +4 -4
  261. package/lib/components/HiddenDatesInput/HiddenDatesInput.d.ts.map +1 -1
  262. package/lib/components/LevelsGroup/LevelsGroup.d.ts +17 -0
  263. package/lib/components/LevelsGroup/LevelsGroup.d.ts.map +1 -0
  264. package/lib/components/LevelsGroup/index.d.ts +3 -0
  265. package/lib/components/LevelsGroup/index.d.ts.map +1 -0
  266. package/lib/components/Month/Month.d.ts +15 -9
  267. package/lib/components/Month/Month.d.ts.map +1 -1
  268. package/lib/components/Month/get-date-in-tab-order/get-date-in-tab-order.d.ts +2 -2
  269. package/lib/components/Month/get-date-in-tab-order/get-date-in-tab-order.d.ts.map +1 -1
  270. package/lib/components/Month/index.d.ts +1 -1
  271. package/lib/components/Month/index.d.ts.map +1 -1
  272. package/lib/components/MonthLevel/MonthLevel.d.ts +16 -7
  273. package/lib/components/MonthLevel/MonthLevel.d.ts.map +1 -1
  274. package/lib/components/MonthLevel/index.d.ts +1 -1
  275. package/lib/components/MonthLevel/index.d.ts.map +1 -1
  276. package/lib/components/MonthLevelGroup/MonthLevelGroup.d.ts +17 -7
  277. package/lib/components/MonthLevelGroup/MonthLevelGroup.d.ts.map +1 -1
  278. package/lib/components/MonthLevelGroup/index.d.ts +1 -1
  279. package/lib/components/MonthLevelGroup/index.d.ts.map +1 -1
  280. package/lib/components/MonthPicker/MonthPicker.d.ts +14 -3
  281. package/lib/components/MonthPicker/MonthPicker.d.ts.map +1 -1
  282. package/lib/components/MonthPicker/index.d.ts +1 -1
  283. package/lib/components/MonthPicker/index.d.ts.map +1 -1
  284. package/lib/components/MonthPickerInput/MonthPickerInput.d.ts +12 -5
  285. package/lib/components/MonthPickerInput/MonthPickerInput.d.ts.map +1 -1
  286. package/lib/components/MonthPickerInput/index.d.ts +1 -1
  287. package/lib/components/MonthPickerInput/index.d.ts.map +1 -1
  288. package/lib/components/MonthsList/MonthsList.d.ts +14 -8
  289. package/lib/components/MonthsList/MonthsList.d.ts.map +1 -1
  290. package/lib/components/MonthsList/get-month-in-tab-order/get-month-in-tab-order.d.ts +1 -1
  291. package/lib/components/MonthsList/get-month-in-tab-order/get-month-in-tab-order.d.ts.map +1 -1
  292. package/lib/components/MonthsList/index.d.ts +1 -1
  293. package/lib/components/MonthsList/index.d.ts.map +1 -1
  294. package/lib/components/MonthsList/is-month-disabled/is-month-disabled.d.ts +1 -1
  295. package/lib/components/MonthsList/is-month-disabled/is-month-disabled.d.ts.map +1 -1
  296. package/lib/components/PickerControl/PickerControl.d.ts +18 -6
  297. package/lib/components/PickerControl/PickerControl.d.ts.map +1 -1
  298. package/lib/components/PickerControl/index.d.ts +1 -1
  299. package/lib/components/PickerControl/index.d.ts.map +1 -1
  300. package/lib/components/PickerInputBase/PickerInputBase.d.ts +24 -12
  301. package/lib/components/PickerInputBase/PickerInputBase.d.ts.map +1 -1
  302. package/lib/components/PickerInputBase/index.d.ts +1 -1
  303. package/lib/components/PickerInputBase/index.d.ts.map +1 -1
  304. package/lib/components/TimeInput/TimeInput.d.ts +12 -5
  305. package/lib/components/TimeInput/TimeInput.d.ts.map +1 -1
  306. package/lib/components/TimeInput/index.d.ts +1 -1
  307. package/lib/components/TimeInput/index.d.ts.map +1 -1
  308. package/lib/components/WeekdaysRow/WeekdaysRow.d.ts +18 -6
  309. package/lib/components/WeekdaysRow/WeekdaysRow.d.ts.map +1 -1
  310. package/lib/components/WeekdaysRow/index.d.ts +1 -2
  311. package/lib/components/WeekdaysRow/index.d.ts.map +1 -1
  312. package/lib/components/YearLevel/YearLevel.d.ts +15 -6
  313. package/lib/components/YearLevel/YearLevel.d.ts.map +1 -1
  314. package/lib/components/YearLevel/index.d.ts +1 -1
  315. package/lib/components/YearLevel/index.d.ts.map +1 -1
  316. package/lib/components/YearLevelGroup/YearLevelGroup.d.ts +17 -7
  317. package/lib/components/YearLevelGroup/YearLevelGroup.d.ts.map +1 -1
  318. package/lib/components/YearLevelGroup/index.d.ts +1 -1
  319. package/lib/components/YearLevelGroup/index.d.ts.map +1 -1
  320. package/lib/components/YearPicker/YearPicker.d.ts +13 -3
  321. package/lib/components/YearPicker/YearPicker.d.ts.map +1 -1
  322. package/lib/components/YearPicker/index.d.ts +1 -1
  323. package/lib/components/YearPicker/index.d.ts.map +1 -1
  324. package/lib/components/YearPickerInput/YearPickerInput.d.ts +12 -5
  325. package/lib/components/YearPickerInput/YearPickerInput.d.ts.map +1 -1
  326. package/lib/components/YearPickerInput/index.d.ts +1 -1
  327. package/lib/components/YearPickerInput/index.d.ts.map +1 -1
  328. package/lib/components/YearsList/YearsList.d.ts +17 -11
  329. package/lib/components/YearsList/YearsList.d.ts.map +1 -1
  330. package/lib/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.d.ts +1 -1
  331. package/lib/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.d.ts.map +1 -1
  332. package/lib/components/YearsList/index.d.ts +1 -1
  333. package/lib/components/YearsList/index.d.ts.map +1 -1
  334. package/lib/components/YearsList/is-year-disabled/is-year-disabled.d.ts +1 -1
  335. package/lib/components/YearsList/is-year-disabled/is-year-disabled.d.ts.map +1 -1
  336. package/lib/hooks/use-dates-input/use-dates-input.d.ts +8 -8
  337. package/lib/hooks/use-dates-input/use-dates-input.d.ts.map +1 -1
  338. package/lib/hooks/use-dates-state/use-dates-state.d.ts +4 -4
  339. package/lib/hooks/use-uncontrolled-dates/use-uncontrolled-dates.d.ts +3 -3
  340. package/lib/hooks/use-uncontrolled-dates/use-uncontrolled-dates.d.ts.map +1 -1
  341. package/lib/index.d.ts +19 -18
  342. package/lib/index.d.ts.map +1 -1
  343. package/lib/utils/get-default-clamped-date.d.ts +2 -2
  344. package/lib/utils/get-default-clamped-date.d.ts.map +1 -1
  345. package/package.json +19 -10
  346. package/cjs/components/Calendar/Calendar.styles.js +0 -12
  347. package/cjs/components/Calendar/Calendar.styles.js.map +0 -1
  348. package/cjs/components/CalendarHeader/CalendarHeader.styles.js +0 -84
  349. package/cjs/components/CalendarHeader/CalendarHeader.styles.js.map +0 -1
  350. package/cjs/components/CalendarHeader/Chevron.js.map +0 -1
  351. package/cjs/components/DateTimePicker/DateTimePicker.styles.js +0 -19
  352. package/cjs/components/DateTimePicker/DateTimePicker.styles.js.map +0 -1
  353. package/cjs/components/Day/Day.styles.js +0 -90
  354. package/cjs/components/Day/Day.styles.js.map +0 -1
  355. package/cjs/components/DecadeLevel/DecadeLevel.styles.js +0 -15
  356. package/cjs/components/DecadeLevel/DecadeLevel.styles.js.map +0 -1
  357. package/cjs/components/DecadeLevelGroup/DecadeLevelGroup.styles.js +0 -15
  358. package/cjs/components/DecadeLevelGroup/DecadeLevelGroup.styles.js.map +0 -1
  359. package/cjs/components/Month/Month.styles.js +0 -46
  360. package/cjs/components/Month/Month.styles.js.map +0 -1
  361. package/cjs/components/MonthLevel/MonthLevel.styles.js +0 -15
  362. package/cjs/components/MonthLevel/MonthLevel.styles.js.map +0 -1
  363. package/cjs/components/MonthLevelGroup/MonthLevelGroup.styles.js +0 -17
  364. package/cjs/components/MonthLevelGroup/MonthLevelGroup.styles.js.map +0 -1
  365. package/cjs/components/MonthsList/MonthsList.styles.js +0 -23
  366. package/cjs/components/MonthsList/MonthsList.styles.js.map +0 -1
  367. package/cjs/components/PickerControl/PickerControl.styles.js +0 -78
  368. package/cjs/components/PickerControl/PickerControl.styles.js.map +0 -1
  369. package/cjs/components/PickerInputBase/PickerInputBase.styles.js +0 -19
  370. package/cjs/components/PickerInputBase/PickerInputBase.styles.js.map +0 -1
  371. package/cjs/components/TimeInput/TimeInput.styles.js +0 -31
  372. package/cjs/components/TimeInput/TimeInput.styles.js.map +0 -1
  373. package/cjs/components/WeekdaysRow/WeekdaysRow.styles.js +0 -19
  374. package/cjs/components/WeekdaysRow/WeekdaysRow.styles.js.map +0 -1
  375. package/cjs/components/YearLevel/YearLevel.styles.js +0 -15
  376. package/cjs/components/YearLevel/YearLevel.styles.js.map +0 -1
  377. package/cjs/components/YearLevelGroup/YearLevelGroup.styles.js +0 -17
  378. package/cjs/components/YearLevelGroup/YearLevelGroup.styles.js.map +0 -1
  379. package/cjs/components/YearsList/YearsList.styles.js +0 -22
  380. package/cjs/components/YearsList/YearsList.styles.js.map +0 -1
  381. package/esm/components/Calendar/Calendar.styles.js +0 -8
  382. package/esm/components/Calendar/Calendar.styles.js.map +0 -1
  383. package/esm/components/CalendarHeader/CalendarHeader.styles.js +0 -80
  384. package/esm/components/CalendarHeader/CalendarHeader.styles.js.map +0 -1
  385. package/esm/components/CalendarHeader/Chevron.js.map +0 -1
  386. package/esm/components/DateTimePicker/DateTimePicker.styles.js +0 -15
  387. package/esm/components/DateTimePicker/DateTimePicker.styles.js.map +0 -1
  388. package/esm/components/Day/Day.styles.js +0 -86
  389. package/esm/components/Day/Day.styles.js.map +0 -1
  390. package/esm/components/DecadeLevel/DecadeLevel.styles.js +0 -11
  391. package/esm/components/DecadeLevel/DecadeLevel.styles.js.map +0 -1
  392. package/esm/components/DecadeLevelGroup/DecadeLevelGroup.styles.js +0 -11
  393. package/esm/components/DecadeLevelGroup/DecadeLevelGroup.styles.js.map +0 -1
  394. package/esm/components/Month/Month.styles.js +0 -42
  395. package/esm/components/Month/Month.styles.js.map +0 -1
  396. package/esm/components/MonthLevel/MonthLevel.styles.js +0 -11
  397. package/esm/components/MonthLevel/MonthLevel.styles.js.map +0 -1
  398. package/esm/components/MonthLevelGroup/MonthLevelGroup.styles.js +0 -13
  399. package/esm/components/MonthLevelGroup/MonthLevelGroup.styles.js.map +0 -1
  400. package/esm/components/MonthsList/MonthsList.styles.js +0 -19
  401. package/esm/components/MonthsList/MonthsList.styles.js.map +0 -1
  402. package/esm/components/PickerControl/PickerControl.styles.js +0 -74
  403. package/esm/components/PickerControl/PickerControl.styles.js.map +0 -1
  404. package/esm/components/PickerInputBase/PickerInputBase.styles.js +0 -15
  405. package/esm/components/PickerInputBase/PickerInputBase.styles.js.map +0 -1
  406. package/esm/components/TimeInput/TimeInput.styles.js +0 -27
  407. package/esm/components/TimeInput/TimeInput.styles.js.map +0 -1
  408. package/esm/components/WeekdaysRow/WeekdaysRow.styles.js +0 -15
  409. package/esm/components/WeekdaysRow/WeekdaysRow.styles.js.map +0 -1
  410. package/esm/components/YearLevel/YearLevel.styles.js +0 -11
  411. package/esm/components/YearLevel/YearLevel.styles.js.map +0 -1
  412. package/esm/components/YearLevelGroup/YearLevelGroup.styles.js +0 -13
  413. package/esm/components/YearLevelGroup/YearLevelGroup.styles.js.map +0 -1
  414. package/esm/components/YearsList/YearsList.styles.js +0 -18
  415. package/esm/components/YearsList/YearsList.styles.js.map +0 -1
  416. package/lib/components/Calendar/Calendar.styles.d.ts +0 -9
  417. package/lib/components/Calendar/Calendar.styles.d.ts.map +0 -1
  418. package/lib/components/CalendarHeader/CalendarHeader.styles.d.ts +0 -12
  419. package/lib/components/CalendarHeader/CalendarHeader.styles.d.ts.map +0 -1
  420. package/lib/components/CalendarHeader/Chevron.d.ts +0 -10
  421. package/lib/components/CalendarHeader/Chevron.d.ts.map +0 -1
  422. package/lib/components/DateTimePicker/DateTimePicker.styles.d.ts +0 -10
  423. package/lib/components/DateTimePicker/DateTimePicker.styles.d.ts.map +0 -1
  424. package/lib/components/Day/Day.styles.d.ts +0 -21
  425. package/lib/components/Day/Day.styles.d.ts.map +0 -1
  426. package/lib/components/DecadeLevel/DecadeLevel.styles.d.ts +0 -10
  427. package/lib/components/DecadeLevel/DecadeLevel.styles.d.ts.map +0 -1
  428. package/lib/components/DecadeLevelGroup/DecadeLevelGroup.styles.d.ts +0 -9
  429. package/lib/components/DecadeLevelGroup/DecadeLevelGroup.styles.d.ts.map +0 -1
  430. package/lib/components/Month/Month.styles.d.ts +0 -13
  431. package/lib/components/Month/Month.styles.d.ts.map +0 -1
  432. package/lib/components/MonthLevel/MonthLevel.styles.d.ts +0 -10
  433. package/lib/components/MonthLevel/MonthLevel.styles.d.ts.map +0 -1
  434. package/lib/components/MonthLevelGroup/MonthLevelGroup.styles.d.ts +0 -9
  435. package/lib/components/MonthLevelGroup/MonthLevelGroup.styles.d.ts.map +0 -1
  436. package/lib/components/MonthsList/MonthsList.styles.d.ts +0 -11
  437. package/lib/components/MonthsList/MonthsList.styles.d.ts.map +0 -1
  438. package/lib/components/PickerControl/PickerControl.styles.d.ts +0 -9
  439. package/lib/components/PickerControl/PickerControl.styles.d.ts.map +0 -1
  440. package/lib/components/PickerInputBase/PickerInputBase.styles.d.ts +0 -10
  441. package/lib/components/PickerInputBase/PickerInputBase.styles.d.ts.map +0 -1
  442. package/lib/components/TimeInput/TimeInput.styles.d.ts +0 -9
  443. package/lib/components/TimeInput/TimeInput.styles.d.ts.map +0 -1
  444. package/lib/components/WeekdaysRow/WeekdaysRow.styles.d.ts +0 -10
  445. package/lib/components/WeekdaysRow/WeekdaysRow.styles.d.ts.map +0 -1
  446. package/lib/components/YearLevel/YearLevel.styles.d.ts +0 -10
  447. package/lib/components/YearLevel/YearLevel.styles.d.ts.map +0 -1
  448. package/lib/components/YearLevelGroup/YearLevelGroup.styles.d.ts +0 -9
  449. package/lib/components/YearLevelGroup/YearLevelGroup.styles.d.ts.map +0 -1
  450. package/lib/components/YearsList/YearsList.styles.d.ts +0 -11
  451. package/lib/components/YearsList/YearsList.styles.d.ts.map +0 -1
@@ -1,12 +1,12 @@
1
1
  import dayjs from 'dayjs';
2
- import React, { forwardRef } from 'react';
3
- import { useComponentDefaultProps, Box } from '@mantine/core';
2
+ import React from 'react';
3
+ import { factory, useProps, useStyles, useResolvedStylesApi, Box } from '@mantine/core';
4
4
  import { getMonthDays } from './get-month-days/get-month-days.js';
5
+ import { getDateInTabOrder } from './get-date-in-tab-order/get-date-in-tab-order.js';
5
6
  import { isSameMonth } from './is-same-month/is-same-month.js';
6
7
  import { isBeforeMaxDate } from './is-before-max-date/is-before-max-date.js';
7
8
  import { isAfterMinDate } from './is-after-min-date/is-after-min-date.js';
8
- import useStyles from './Month.styles.js';
9
- import { getDateInTabOrder } from './get-date-in-tab-order/get-date-in-tab-order.js';
9
+ import classes from './Month.module.css.js';
10
10
  import { useDatesContext } from '../DatesProvider/use-dates-context.js';
11
11
  import { Day } from '../Day/Day.js';
12
12
  import { WeekdaysRow } from '../WeekdaysRow/WeekdaysRow.js';
@@ -46,12 +46,15 @@ const defaultProps = {
46
46
  size: "sm",
47
47
  withCellSpacing: true
48
48
  };
49
- const Month = forwardRef((props, ref) => {
50
- const _a = useComponentDefaultProps("Month", defaultProps, props), {
51
- className,
49
+ const Month = factory((_props, ref) => {
50
+ const props = useProps("Month", defaultProps, _props);
51
+ const _a = props, {
52
52
  classNames,
53
+ className,
54
+ style,
53
55
  styles,
54
56
  unstyled,
57
+ vars,
55
58
  __staticSelector,
56
59
  locale,
57
60
  firstDayOfWeek,
@@ -74,13 +77,14 @@ const Month = forwardRef((props, ref) => {
74
77
  __preventFocus,
75
78
  __stopPropagation,
76
79
  withCellSpacing,
77
- size,
78
- variant
80
+ size
79
81
  } = _a, others = __objRest(_a, [
80
- "className",
81
82
  "classNames",
83
+ "className",
84
+ "style",
82
85
  "styles",
83
86
  "unstyled",
87
+ "vars",
84
88
  "__staticSelector",
85
89
  "locale",
86
90
  "firstDayOfWeek",
@@ -103,92 +107,110 @@ const Month = forwardRef((props, ref) => {
103
107
  "__preventFocus",
104
108
  "__stopPropagation",
105
109
  "withCellSpacing",
106
- "size",
107
- "variant"
110
+ "size"
108
111
  ]);
109
- const ctx = useDatesContext();
110
- const { classes, cx } = useStyles(null, {
111
- name: ["Month", __staticSelector],
112
+ const getStyles = useStyles({
113
+ name: __staticSelector || "Month",
114
+ classes,
115
+ props,
116
+ className,
117
+ style,
112
118
  classNames,
113
119
  styles,
114
120
  unstyled,
115
- variant,
116
- size
121
+ vars,
122
+ rootSelector: "month"
117
123
  });
118
- const stylesApiProps = {
119
- __staticSelector: __staticSelector || "Month",
124
+ const ctx = useDatesContext();
125
+ const dates = getMonthDays(month, ctx.getFirstDayOfWeek(firstDayOfWeek));
126
+ const dateInTabOrder = getDateInTabOrder(
127
+ dates,
128
+ minDate,
129
+ maxDate,
130
+ getDayProps,
131
+ excludeDate,
132
+ hideOutsideDates,
133
+ month
134
+ );
135
+ const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi({
120
136
  classNames,
121
137
  styles,
122
- unstyled,
123
- variant,
124
- size
125
- };
126
- const dates = getMonthDays(month, ctx.getFirstDayOfWeek(firstDayOfWeek));
127
- const dateInTabOrder = getDateInTabOrder(dates, minDate, maxDate, getDayProps, excludeDate, hideOutsideDates, month);
138
+ props
139
+ });
128
140
  const rows = dates.map((row, rowIndex) => {
129
141
  const cells = row.map((date, cellIndex) => {
130
142
  const outside = !isSameMonth(date, month);
131
143
  const ariaLabel = (getDayAriaLabel == null ? void 0 : getDayAriaLabel(date)) || dayjs(date).locale(locale || ctx.locale).format("D MMMM YYYY");
132
144
  const dayProps = getDayProps == null ? void 0 : getDayProps(date);
133
145
  const isDateInTabOrder = dayjs(date).isSame(dateInTabOrder, "date");
134
- return /* @__PURE__ */ React.createElement("td", {
135
- key: date.toString(),
136
- className: classes.monthCell,
137
- "data-with-spacing": withCellSpacing || void 0
138
- }, /* @__PURE__ */ React.createElement(Day, __spreadProps(__spreadValues(__spreadProps(__spreadValues({}, stylesApiProps), {
139
- "data-mantine-stop-propagation": __stopPropagation || void 0,
140
- renderDay,
141
- date,
142
- weekend: ctx.getWeekendDays(weekendDays).includes(date.getDay()),
143
- outside,
144
- hidden: hideOutsideDates ? outside : false,
145
- "aria-label": ariaLabel,
146
- static: isStatic,
147
- disabled: (excludeDate == null ? void 0 : excludeDate(date)) || !isBeforeMaxDate(date, maxDate) || !isAfterMinDate(date, minDate),
148
- ref: (node) => __getDayRef == null ? void 0 : __getDayRef(rowIndex, cellIndex, node)
149
- }), dayProps), {
150
- onKeyDown: (event) => {
151
- var _a2;
152
- (_a2 = dayProps == null ? void 0 : dayProps.onKeyDown) == null ? void 0 : _a2.call(dayProps, event);
153
- __onDayKeyDown == null ? void 0 : __onDayKeyDown(event, { rowIndex, cellIndex, date });
154
- },
155
- onMouseEnter: (event) => {
156
- var _a2;
157
- (_a2 = dayProps == null ? void 0 : dayProps.onMouseEnter) == null ? void 0 : _a2.call(dayProps, event);
158
- __onDayMouseEnter == null ? void 0 : __onDayMouseEnter(event, date);
159
- },
160
- onClick: (event) => {
161
- var _a2;
162
- (_a2 = dayProps == null ? void 0 : dayProps.onClick) == null ? void 0 : _a2.call(dayProps, event);
163
- __onDayClick == null ? void 0 : __onDayClick(event, date);
164
- },
165
- onMouseDown: (event) => {
166
- var _a2;
167
- (_a2 = dayProps == null ? void 0 : dayProps.onMouseDown) == null ? void 0 : _a2.call(dayProps, event);
168
- __preventFocus && event.preventDefault();
169
- },
170
- tabIndex: __preventFocus || !isDateInTabOrder ? -1 : 0
171
- })));
146
+ return /* @__PURE__ */ React.createElement(
147
+ "td",
148
+ __spreadProps(__spreadValues({
149
+ key: date.toString()
150
+ }, getStyles("monthCell")), {
151
+ "data-with-spacing": withCellSpacing || void 0
152
+ }),
153
+ /* @__PURE__ */ React.createElement(
154
+ Day,
155
+ __spreadProps(__spreadValues({
156
+ __staticSelector: __staticSelector || "Month",
157
+ classNames: resolvedClassNames,
158
+ styles: resolvedStyles,
159
+ unstyled,
160
+ "data-mantine-stop-propagation": __stopPropagation || void 0,
161
+ renderDay,
162
+ date,
163
+ size,
164
+ weekend: ctx.getWeekendDays(weekendDays).includes(date.getDay()),
165
+ outside,
166
+ hidden: hideOutsideDates ? outside : false,
167
+ "aria-label": ariaLabel,
168
+ static: isStatic,
169
+ disabled: (excludeDate == null ? void 0 : excludeDate(date)) || !isBeforeMaxDate(date, maxDate) || !isAfterMinDate(date, minDate),
170
+ ref: (node) => __getDayRef == null ? void 0 : __getDayRef(rowIndex, cellIndex, node)
171
+ }, dayProps), {
172
+ onKeyDown: (event) => {
173
+ var _a2;
174
+ (_a2 = dayProps == null ? void 0 : dayProps.onKeyDown) == null ? void 0 : _a2.call(dayProps, event);
175
+ __onDayKeyDown == null ? void 0 : __onDayKeyDown(event, { rowIndex, cellIndex, date });
176
+ },
177
+ onMouseEnter: (event) => {
178
+ var _a2;
179
+ (_a2 = dayProps == null ? void 0 : dayProps.onMouseEnter) == null ? void 0 : _a2.call(dayProps, event);
180
+ __onDayMouseEnter == null ? void 0 : __onDayMouseEnter(event, date);
181
+ },
182
+ onClick: (event) => {
183
+ var _a2;
184
+ (_a2 = dayProps == null ? void 0 : dayProps.onClick) == null ? void 0 : _a2.call(dayProps, event);
185
+ __onDayClick == null ? void 0 : __onDayClick(event, date);
186
+ },
187
+ onMouseDown: (event) => {
188
+ var _a2;
189
+ (_a2 = dayProps == null ? void 0 : dayProps.onMouseDown) == null ? void 0 : _a2.call(dayProps, event);
190
+ __preventFocus && event.preventDefault();
191
+ },
192
+ tabIndex: __preventFocus || !isDateInTabOrder ? -1 : 0
193
+ })
194
+ )
195
+ );
172
196
  });
173
- return /* @__PURE__ */ React.createElement("tr", {
174
- key: rowIndex,
175
- className: classes.monthRow
176
- }, cells);
197
+ return /* @__PURE__ */ React.createElement("tr", __spreadValues({ key: rowIndex }, getStyles("monthRow")), cells);
177
198
  });
178
- return /* @__PURE__ */ React.createElement(Box, __spreadValues({
179
- component: "table",
180
- className: cx(classes.month, className),
181
- ref
182
- }, others), !hideWeekdays && /* @__PURE__ */ React.createElement("thead", {
183
- className: classes.monthThead
184
- }, /* @__PURE__ */ React.createElement(WeekdaysRow, __spreadProps(__spreadValues({}, stylesApiProps), {
185
- locale,
186
- firstDayOfWeek,
187
- weekdayFormat
188
- }))), /* @__PURE__ */ React.createElement("tbody", {
189
- className: classes.monthTbody
190
- }, rows));
199
+ return /* @__PURE__ */ React.createElement(Box, __spreadValues(__spreadProps(__spreadValues({ component: "table" }, getStyles("month")), { size, ref }), others), !hideWeekdays && /* @__PURE__ */ React.createElement("thead", __spreadValues({}, getStyles("monthThead")), /* @__PURE__ */ React.createElement(
200
+ WeekdaysRow,
201
+ {
202
+ __staticSelector: __staticSelector || "Month",
203
+ locale,
204
+ firstDayOfWeek,
205
+ weekdayFormat,
206
+ size,
207
+ classNames: resolvedClassNames,
208
+ styles: resolvedStyles,
209
+ unstyled
210
+ }
211
+ )), /* @__PURE__ */ React.createElement("tbody", __spreadValues({}, getStyles("monthTbody")), rows));
191
212
  });
213
+ Month.classes = classes;
192
214
  Month.displayName = "@mantine/dates/Month";
193
215
 
194
216
  export { Month };
@@ -1 +1 @@
1
- {"version":3,"file":"Month.js","sources":["../../../src/components/Month/Month.tsx"],"sourcesContent":["/* eslint-disable react/no-unused-prop-types */\nimport dayjs from 'dayjs';\nimport React, { forwardRef } from 'react';\nimport { DefaultProps, Selectors, Box, useComponentDefaultProps, MantineSize } from '@mantine/core';\nimport { useDatesContext } from '../DatesProvider';\nimport { WeekdaysRow, WeekdaysRowStylesNames } from '../WeekdaysRow';\nimport { Day, DayStylesNames, DayProps } from '../Day';\nimport { ControlKeydownPayload, DayOfWeek } from '../../types';\nimport { getMonthDays } from './get-month-days/get-month-days';\nimport { isSameMonth } from './is-same-month/is-same-month';\nimport { isBeforeMaxDate } from './is-before-max-date/is-before-max-date';\nimport { isAfterMinDate } from './is-after-min-date/is-after-min-date';\nimport useStyles from './Month.styles';\nimport { getDateInTabOrder } from './get-date-in-tab-order/get-date-in-tab-order';\n\nexport type MonthStylesNames =\n | Selectors<typeof useStyles>\n | WeekdaysRowStylesNames\n | DayStylesNames;\n\nexport interface MonthSettings {\n /** Determines whether propagation for Escape key should be stopped */\n __stopPropagation?: boolean;\n\n /** Prevents focus shift when buttons are clicked */\n __preventFocus?: boolean;\n\n /** Called when day is clicked with click event and date */\n __onDayClick?(event: React.MouseEvent<HTMLButtonElement>, date: Date): void;\n\n /** Called when mouse enters day */\n __onDayMouseEnter?(event: React.MouseEvent<HTMLButtonElement>, date: Date): void;\n\n /** Called when any keydown event is registered on day, used for arrows navigation */\n __onDayKeyDown?(\n event: React.KeyboardEvent<HTMLButtonElement>,\n payload: ControlKeydownPayload\n ): void;\n\n /** Assigns ref of every day based on its position in the table, used for arrows navigation */\n __getDayRef?(rowIndex: number, cellIndex: number, node: HTMLButtonElement): void;\n\n /** dayjs locale, defaults to value defined in DatesProvider */\n locale?: string;\n\n /** number 0-6, 0 – Sunday, 6 – Saturday, defaults to 1 – Monday */\n firstDayOfWeek?: DayOfWeek;\n\n /** dayjs format for weekdays names, defaults to \"dd\" */\n weekdayFormat?: string | ((date: Date) => React.ReactNode);\n\n /** Indices of weekend days, 0-6, where 0 is Sunday and 6 is Saturday, defaults to value defined in DatesProvider */\n weekendDays?: DayOfWeek[];\n\n /** Adds props to Day component based on date */\n getDayProps?(date: Date): Partial<DayProps>;\n\n /** Callback function to determine whether the day should be disabled */\n excludeDate?(date: Date): boolean;\n\n /** Minimum possible date */\n minDate?: Date;\n\n /** Maximum possible date */\n maxDate?: Date;\n\n /** Controls day value rendering */\n renderDay?(date: Date): React.ReactNode;\n\n /** Determines whether outside dates should be hidden, defaults to false */\n hideOutsideDates?: boolean;\n\n /** Determines whether weekdays row should be hidden, defaults to false */\n hideWeekdays?: boolean;\n\n /** Assigns aria-label to days based on date */\n getDayAriaLabel?(date: Date): string;\n\n /** Controls size */\n size?: MantineSize;\n\n /** Determines whether controls should be separated by spacing, true by default */\n withCellSpacing?: boolean;\n}\n\nexport interface MonthProps\n extends DefaultProps<MonthStylesNames>,\n MonthSettings,\n React.ComponentPropsWithoutRef<'table'> {\n variant?: string;\n __staticSelector?: string;\n\n /** Month to display */\n month: Date;\n\n /** Determines whether days should be static, static days can be used to display month if it is not expected that user will interact with the component in any way */\n static?: boolean;\n}\n\nconst defaultProps: Partial<MonthProps> = {\n size: 'sm',\n withCellSpacing: true,\n};\n\nexport const Month = forwardRef<HTMLTableElement, MonthProps>((props, ref) => {\n const {\n className,\n classNames,\n styles,\n unstyled,\n __staticSelector,\n locale,\n firstDayOfWeek,\n weekdayFormat,\n month,\n weekendDays,\n getDayProps,\n excludeDate,\n minDate,\n maxDate,\n renderDay,\n hideOutsideDates,\n hideWeekdays,\n getDayAriaLabel,\n static: isStatic,\n __getDayRef,\n __onDayKeyDown,\n __onDayClick,\n __onDayMouseEnter,\n __preventFocus,\n __stopPropagation,\n withCellSpacing,\n size,\n variant,\n ...others\n } = useComponentDefaultProps('Month', defaultProps, props);\n\n const ctx = useDatesContext();\n\n const { classes, cx } = useStyles(null, {\n name: ['Month', __staticSelector],\n classNames,\n styles,\n unstyled,\n variant,\n size,\n });\n\n const stylesApiProps = {\n __staticSelector: __staticSelector || 'Month',\n classNames,\n styles,\n unstyled,\n variant,\n size,\n };\n\n const dates = getMonthDays(month, ctx.getFirstDayOfWeek(firstDayOfWeek));\n\n const dateInTabOrder = getDateInTabOrder(\n dates,\n minDate,\n maxDate,\n getDayProps,\n excludeDate,\n hideOutsideDates,\n month\n );\n\n const rows = dates.map((row, rowIndex) => {\n const cells = row.map((date, cellIndex) => {\n const outside = !isSameMonth(date, month);\n const ariaLabel =\n getDayAriaLabel?.(date) ||\n dayjs(date)\n .locale(locale || ctx.locale)\n .format('D MMMM YYYY');\n const dayProps = getDayProps?.(date);\n const isDateInTabOrder = dayjs(date).isSame(dateInTabOrder, 'date');\n\n return (\n <td\n key={date.toString()}\n className={classes.monthCell}\n data-with-spacing={withCellSpacing || undefined}\n >\n <Day\n {...stylesApiProps}\n data-mantine-stop-propagation={__stopPropagation || undefined}\n renderDay={renderDay}\n date={date}\n weekend={ctx.getWeekendDays(weekendDays).includes(date.getDay() as DayOfWeek)}\n outside={outside}\n hidden={hideOutsideDates ? outside : false}\n aria-label={ariaLabel}\n static={isStatic}\n disabled={\n excludeDate?.(date) ||\n !isBeforeMaxDate(date, maxDate) ||\n !isAfterMinDate(date, minDate)\n }\n ref={(node) => __getDayRef?.(rowIndex, cellIndex, node)}\n {...dayProps}\n onKeyDown={(event) => {\n dayProps?.onKeyDown?.(event);\n __onDayKeyDown?.(event, { rowIndex, cellIndex, date });\n }}\n onMouseEnter={(event) => {\n dayProps?.onMouseEnter?.(event);\n __onDayMouseEnter?.(event, date);\n }}\n onClick={(event) => {\n dayProps?.onClick?.(event);\n __onDayClick?.(event, date);\n }}\n onMouseDown={(event) => {\n dayProps?.onMouseDown?.(event);\n __preventFocus && event.preventDefault();\n }}\n tabIndex={__preventFocus || !isDateInTabOrder ? -1 : 0}\n />\n </td>\n );\n });\n\n return (\n <tr key={rowIndex} className={classes.monthRow}>\n {cells}\n </tr>\n );\n });\n\n return (\n <Box component=\"table\" className={cx(classes.month, className)} ref={ref} {...others}>\n {!hideWeekdays && (\n <thead className={classes.monthThead}>\n <WeekdaysRow\n {...stylesApiProps}\n locale={locale}\n firstDayOfWeek={firstDayOfWeek}\n weekdayFormat={weekdayFormat}\n />\n </thead>\n )}\n <tbody className={classes.monthTbody}>{rows}</tbody>\n </Box>\n );\n});\n\nMonth.displayName = '@mantine/dates/Month';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Month.js","sources":["../../../src/components/Month/Month.tsx"],"sourcesContent":["import dayjs from 'dayjs';\nimport React from 'react';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n Factory,\n MantineSize,\n useResolvedStylesApi,\n} from '@mantine/core';\nimport { ControlKeydownPayload, DayOfWeek } from '../../types';\nimport { Day, DayProps, DayStylesNames } from '../Day';\nimport { getMonthDays } from './get-month-days/get-month-days';\nimport { useDatesContext } from '../DatesProvider';\nimport { getDateInTabOrder } from './get-date-in-tab-order/get-date-in-tab-order';\nimport { isSameMonth } from './is-same-month/is-same-month';\nimport { isBeforeMaxDate } from './is-before-max-date/is-before-max-date';\nimport { isAfterMinDate } from './is-after-min-date/is-after-min-date';\nimport { WeekdaysRow } from '../WeekdaysRow';\nimport classes from './Month.module.css';\n\nexport type MonthStylesNames =\n | 'month'\n | 'weekday'\n | 'weekdaysRow'\n | 'monthRow'\n | 'month'\n | 'monthThead'\n | 'monthTbody'\n | 'monthCell'\n | DayStylesNames;\n\nexport interface MonthSettings {\n /** Determines whether propagation for Escape key should be stopped */\n __stopPropagation?: boolean;\n\n /** Prevents focus shift when buttons are clicked */\n __preventFocus?: boolean;\n\n /** Called when day is clicked with click event and date */\n __onDayClick?(event: React.MouseEvent<HTMLButtonElement>, date: Date): void;\n\n /** Called when mouse enters day */\n __onDayMouseEnter?(event: React.MouseEvent<HTMLButtonElement>, date: Date): void;\n\n /** Called when any keydown event is registered on day, used for arrows navigation */\n __onDayKeyDown?(\n event: React.KeyboardEvent<HTMLButtonElement>,\n payload: ControlKeydownPayload\n ): void;\n\n /** Assigns ref of every day based on its position in the table, used for arrows navigation */\n __getDayRef?(rowIndex: number, cellIndex: number, node: HTMLButtonElement): void;\n\n /** dayjs locale, defaults to value defined in DatesProvider */\n locale?: string;\n\n /** number 0-6, 0 – Sunday, 6 – Saturday, defaults to 1 – Monday */\n firstDayOfWeek?: DayOfWeek;\n\n /** dayjs format for weekdays names, defaults to \"dd\" */\n weekdayFormat?: string | ((date: Date) => React.ReactNode);\n\n /** Indices of weekend days, 0-6, where 0 is Sunday and 6 is Saturday, defaults to value defined in DatesProvider */\n weekendDays?: DayOfWeek[];\n\n /** Adds props to Day component based on date */\n getDayProps?(date: Date): Omit<Partial<DayProps>, 'classNames' | 'styles' | 'vars'>;\n\n /** Callback function to determine whether the day should be disabled */\n excludeDate?(date: Date): boolean;\n\n /** Minimum possible date */\n minDate?: Date;\n\n /** Maximum possible date */\n maxDate?: Date;\n\n /** Controls day value rendering */\n renderDay?(date: Date): React.ReactNode;\n\n /** Determines whether outside dates should be hidden, defaults to false */\n hideOutsideDates?: boolean;\n\n /** Determines whether weekdays row should be hidden, defaults to false */\n hideWeekdays?: boolean;\n\n /** Assigns aria-label to days based on date */\n getDayAriaLabel?(date: Date): string;\n\n /** Controls size */\n size?: MantineSize;\n\n /** Determines whether controls should be separated by spacing, true by default */\n withCellSpacing?: boolean;\n}\n\nexport interface MonthProps\n extends BoxProps,\n MonthSettings,\n StylesApiProps<MonthFactory>,\n ElementProps<'div'> {\n __staticSelector?: string;\n\n /** Month to display */\n month: Date;\n\n /** Determines whether days should be static, static days can be used to display month if it is not expected that user will interact with the component in any way */\n static?: boolean;\n}\n\nexport type MonthFactory = Factory<{\n props: MonthProps;\n ref: HTMLTableElement;\n stylesNames: MonthStylesNames;\n}>;\n\nconst defaultProps: Partial<MonthProps> = {\n size: 'sm',\n withCellSpacing: true,\n};\n\nexport const Month = factory<MonthFactory>((_props, ref) => {\n const props = useProps('Month', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n __staticSelector,\n locale,\n firstDayOfWeek,\n weekdayFormat,\n month,\n weekendDays,\n getDayProps,\n excludeDate,\n minDate,\n maxDate,\n renderDay,\n hideOutsideDates,\n hideWeekdays,\n getDayAriaLabel,\n static: isStatic,\n __getDayRef,\n __onDayKeyDown,\n __onDayClick,\n __onDayMouseEnter,\n __preventFocus,\n __stopPropagation,\n withCellSpacing,\n size,\n ...others\n } = props;\n\n const getStyles = useStyles<MonthFactory>({\n name: __staticSelector || 'Month',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n rootSelector: 'month',\n });\n\n const ctx = useDatesContext();\n const dates = getMonthDays(month, ctx.getFirstDayOfWeek(firstDayOfWeek));\n\n const dateInTabOrder = getDateInTabOrder(\n dates,\n minDate,\n maxDate,\n getDayProps,\n excludeDate,\n hideOutsideDates,\n month\n );\n\n const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi<MonthFactory>({\n classNames,\n styles,\n props,\n });\n\n const rows = dates.map((row, rowIndex) => {\n const cells = row.map((date, cellIndex) => {\n const outside = !isSameMonth(date, month);\n const ariaLabel =\n getDayAriaLabel?.(date) ||\n dayjs(date)\n .locale(locale || ctx.locale)\n .format('D MMMM YYYY');\n const dayProps = getDayProps?.(date);\n const isDateInTabOrder = dayjs(date).isSame(dateInTabOrder, 'date');\n\n return (\n <td\n key={date.toString()}\n {...getStyles('monthCell')}\n data-with-spacing={withCellSpacing || undefined}\n >\n <Day\n __staticSelector={__staticSelector || 'Month'}\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n unstyled={unstyled}\n data-mantine-stop-propagation={__stopPropagation || undefined}\n renderDay={renderDay}\n date={date}\n size={size}\n weekend={ctx.getWeekendDays(weekendDays).includes(date.getDay() as DayOfWeek)}\n outside={outside}\n hidden={hideOutsideDates ? outside : false}\n aria-label={ariaLabel}\n static={isStatic}\n disabled={\n excludeDate?.(date) ||\n !isBeforeMaxDate(date, maxDate) ||\n !isAfterMinDate(date, minDate)\n }\n ref={(node) => __getDayRef?.(rowIndex, cellIndex, node!)}\n {...dayProps}\n onKeyDown={(event) => {\n dayProps?.onKeyDown?.(event);\n __onDayKeyDown?.(event, { rowIndex, cellIndex, date });\n }}\n onMouseEnter={(event) => {\n dayProps?.onMouseEnter?.(event);\n __onDayMouseEnter?.(event, date);\n }}\n onClick={(event) => {\n dayProps?.onClick?.(event);\n __onDayClick?.(event, date);\n }}\n onMouseDown={(event) => {\n dayProps?.onMouseDown?.(event);\n __preventFocus && event.preventDefault();\n }}\n tabIndex={__preventFocus || !isDateInTabOrder ? -1 : 0}\n />\n </td>\n );\n });\n\n return (\n <tr key={rowIndex} {...getStyles('monthRow')}>\n {cells}\n </tr>\n );\n });\n\n return (\n <Box component=\"table\" {...getStyles('month')} size={size} ref={ref} {...others}>\n {!hideWeekdays && (\n <thead {...getStyles('monthThead')}>\n <WeekdaysRow\n __staticSelector={__staticSelector || 'Month'}\n locale={locale}\n firstDayOfWeek={firstDayOfWeek}\n weekdayFormat={weekdayFormat}\n size={size}\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n unstyled={unstyled}\n />\n </thead>\n )}\n <tbody {...getStyles('monthTbody')}>{rows}</tbody>\n </Box>\n );\n});\n\nMonth.classes = classes;\nMonth.displayName = '@mantine/dates/Month';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ var classes = {"month":"m-cc9820d3","monthCell":"m-8f457cd5"};
2
+
3
+ export default classes;
4
+ //# sourceMappingURL=Month.module.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Month.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -4,10 +4,12 @@ import { isBeforeMaxDate } from '../is-before-max-date/is-before-max-date.js';
4
4
  import { isSameMonth } from '../is-same-month/is-same-month.js';
5
5
 
6
6
  function getDateInTabOrder(dates, minDate, maxDate, getDateControlProps, excludeDate, hideOutsideDates, month) {
7
- const enabledDates = dates.flat().filter((date) => {
8
- var _a;
9
- return isBeforeMaxDate(date, maxDate) && isAfterMinDate(date, minDate) && !(excludeDate == null ? void 0 : excludeDate(date)) && !((_a = getDateControlProps == null ? void 0 : getDateControlProps(date)) == null ? void 0 : _a.disabled) && (!hideOutsideDates || isSameMonth(date, month));
10
- });
7
+ const enabledDates = dates.flat().filter(
8
+ (date) => {
9
+ var _a;
10
+ return isBeforeMaxDate(date, maxDate) && isAfterMinDate(date, minDate) && !(excludeDate == null ? void 0 : excludeDate(date)) && !((_a = getDateControlProps == null ? void 0 : getDateControlProps(date)) == null ? void 0 : _a.disabled) && (!hideOutsideDates || isSameMonth(date, month));
11
+ }
12
+ );
11
13
  const selectedDate = enabledDates.find((date) => {
12
14
  var _a;
13
15
  return (_a = getDateControlProps == null ? void 0 : getDateControlProps(date)) == null ? void 0 : _a.selected;
@@ -1 +1 @@
1
- {"version":3,"file":"get-date-in-tab-order.js","sources":["../../../../src/components/Month/get-date-in-tab-order/get-date-in-tab-order.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { DayProps } from '../../Day';\nimport { isAfterMinDate } from '../is-after-min-date/is-after-min-date';\nimport { isBeforeMaxDate } from '../is-before-max-date/is-before-max-date';\nimport { isSameMonth } from '../is-same-month/is-same-month';\n\nexport function getDateInTabOrder(\n dates: Date[][],\n minDate: Date,\n maxDate: Date,\n getDateControlProps: (date: Date) => Partial<DayProps>,\n excludeDate: (date: Date) => boolean,\n hideOutsideDates: boolean,\n month: Date\n) {\n const enabledDates = dates\n .flat()\n .filter(\n (date) =>\n isBeforeMaxDate(date, maxDate) &&\n isAfterMinDate(date, minDate) &&\n !excludeDate?.(date) &&\n !getDateControlProps?.(date)?.disabled &&\n (!hideOutsideDates || isSameMonth(date, month))\n );\n\n const selectedDate = enabledDates.find((date) => getDateControlProps?.(date)?.selected);\n\n if (selectedDate) {\n return selectedDate;\n }\n\n const currentDate = enabledDates.find((date) => dayjs().isSame(date, 'date'));\n\n if (currentDate) {\n return currentDate;\n }\n\n return enabledDates[0];\n}\n"],"names":[],"mappings":";;;;;AAIO,SAAS,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,gBAAgB,EAAE,KAAK,EAAE;AACtH,EAAE,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK;AACrD,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,OAAO,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,mBAAmB,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,IAAI,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;AAClS,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK;AACnD,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,OAAO,CAAC,EAAE,GAAG,mBAAmB,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC;AAClH,GAAG,CAAC,CAAC;AACL,EAAE,IAAI,YAAY,EAAE;AACpB,IAAI,OAAO,YAAY,CAAC;AACxB,GAAG;AACH,EAAE,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;AAChF,EAAE,IAAI,WAAW,EAAE;AACnB,IAAI,OAAO,WAAW,CAAC;AACvB,GAAG;AACH,EAAE,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;AACzB;;;;"}
1
+ {"version":3,"file":"get-date-in-tab-order.js","sources":["../../../../src/components/Month/get-date-in-tab-order/get-date-in-tab-order.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { DayProps } from '../../Day/Day';\nimport { isAfterMinDate } from '../is-after-min-date/is-after-min-date';\nimport { isBeforeMaxDate } from '../is-before-max-date/is-before-max-date';\nimport { isSameMonth } from '../is-same-month/is-same-month';\n\nexport function getDateInTabOrder(\n dates: Date[][],\n minDate: Date | undefined,\n maxDate: Date | undefined,\n getDateControlProps: ((date: Date) => Partial<DayProps>) | undefined,\n excludeDate: ((date: Date) => boolean) | undefined,\n hideOutsideDates: boolean | undefined,\n month: Date\n) {\n const enabledDates = dates\n .flat()\n .filter(\n (date) =>\n isBeforeMaxDate(date, maxDate) &&\n isAfterMinDate(date, minDate) &&\n !excludeDate?.(date) &&\n !getDateControlProps?.(date)?.disabled &&\n (!hideOutsideDates || isSameMonth(date, month))\n );\n\n const selectedDate = enabledDates.find((date) => getDateControlProps?.(date)?.selected);\n\n if (selectedDate) {\n return selectedDate;\n }\n\n const currentDate = enabledDates.find((date) => dayjs().isSame(date, 'date'));\n\n if (currentDate) {\n return currentDate;\n }\n\n return enabledDates[0];\n}\n"],"names":[],"mappings":";;;;;AAIO,SAAS,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,gBAAgB,EAAE,KAAK,EAAE;AACtH,EAAE,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM;AAC1C,IAAI,CAAC,IAAI,KAAK;AACd,MAAM,IAAI,EAAE,CAAC;AACb,MAAM,OAAO,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,mBAAmB,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,IAAI,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;AACpS,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK;AACnD,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,OAAO,CAAC,EAAE,GAAG,mBAAmB,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC;AAClH,GAAG,CAAC,CAAC;AACL,EAAE,IAAI,YAAY,EAAE;AACpB,IAAI,OAAO,YAAY,CAAC;AACxB,GAAG;AACH,EAAE,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;AAChF,EAAE,IAAI,WAAW,EAAE;AACnB,IAAI,OAAO,WAAW,CAAC;AACvB,GAAG;AACH,EAAE,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;AACzB;;;;"}
@@ -1,7 +1,6 @@
1
1
  import dayjs from 'dayjs';
2
- import React, { forwardRef } from 'react';
3
- import { useComponentDefaultProps, Box } from '@mantine/core';
4
- import useStyles from './MonthLevel.styles.js';
2
+ import React from 'react';
3
+ import { factory, useProps, Box } from '@mantine/core';
5
4
  import { useDatesContext } from '../DatesProvider/use-dates-context.js';
6
5
  import { CalendarHeader } from '../CalendarHeader/CalendarHeader.js';
7
6
  import { Month } from '../Month/Month.js';
@@ -37,9 +36,10 @@ var __objRest = (source, exclude) => {
37
36
  const defaultProps = {
38
37
  monthLabelFormat: "MMMM YYYY"
39
38
  };
40
- const MonthLevel = forwardRef((props, ref) => {
41
- const _a = useComponentDefaultProps("MonthLevel", defaultProps, props), {
42
- month,
39
+ const MonthLevel = factory((_props, ref) => {
40
+ const props = useProps("MonthLevel", defaultProps, _props);
41
+ const _a = props, {
42
+ month: month,
43
43
  locale,
44
44
  firstDayOfWeek,
45
45
  weekdayFormat,
@@ -57,7 +57,7 @@ const MonthLevel = forwardRef((props, ref) => {
57
57
  __onDayClick,
58
58
  __onDayMouseEnter,
59
59
  withCellSpacing,
60
- __preventFocus,
60
+ __preventFocus: __preventFocus,
61
61
  __stopPropagation,
62
62
  nextIcon,
63
63
  previousIcon,
@@ -72,16 +72,15 @@ const MonthLevel = forwardRef((props, ref) => {
72
72
  levelControlAriaLabel,
73
73
  withNext,
74
74
  withPrevious,
75
- className,
76
- monthLabelFormat,
75
+ monthLabelFormat: monthLabelFormat,
77
76
  classNames,
78
77
  styles,
79
78
  unstyled,
80
79
  __staticSelector,
81
80
  size,
82
- variant,
83
81
  static: isStatic
84
82
  } = _a, others = __objRest(_a, [
83
+ // Month settings
85
84
  "month",
86
85
  "locale",
87
86
  "firstDayOfWeek",
@@ -100,6 +99,7 @@ const MonthLevel = forwardRef((props, ref) => {
100
99
  "__onDayClick",
101
100
  "__onDayMouseEnter",
102
101
  "withCellSpacing",
102
+ // CalendarHeader settings
103
103
  "__preventFocus",
104
104
  "__stopPropagation",
105
105
  "nextIcon",
@@ -115,81 +115,73 @@ const MonthLevel = forwardRef((props, ref) => {
115
115
  "levelControlAriaLabel",
116
116
  "withNext",
117
117
  "withPrevious",
118
- "className",
118
+ // Other props
119
119
  "monthLabelFormat",
120
120
  "classNames",
121
121
  "styles",
122
122
  "unstyled",
123
123
  "__staticSelector",
124
124
  "size",
125
- "variant",
126
125
  "static"
127
126
  ]);
128
- const { classes, cx } = useStyles(null, {
129
- name: ["MonthLevel", __staticSelector],
130
- classNames,
131
- styles,
132
- unstyled,
133
- variant,
134
- size
135
- });
136
127
  const ctx = useDatesContext();
137
128
  const stylesApiProps = {
138
129
  __staticSelector: __staticSelector || "MonthLevel",
139
130
  classNames,
140
131
  styles,
141
132
  unstyled,
142
- variant,
143
133
  size
144
134
  };
145
135
  const _nextDisabled = typeof nextDisabled === "boolean" ? nextDisabled : maxDate ? !dayjs(month).endOf("month").isBefore(maxDate) : false;
146
136
  const _previousDisabled = typeof previousDisabled === "boolean" ? previousDisabled : minDate ? !dayjs(month).startOf("month").isAfter(minDate) : false;
147
- return /* @__PURE__ */ React.createElement(Box, __spreadValues({
148
- className: cx(classes.monthLevel, className),
149
- "data-month-level": true,
150
- ref
151
- }, others), /* @__PURE__ */ React.createElement(CalendarHeader, __spreadValues({
152
- label: typeof monthLabelFormat === "function" ? monthLabelFormat(month) : dayjs(month).locale(locale || ctx.locale).format(monthLabelFormat),
153
- className: classes.calendarHeader,
154
- __preventFocus,
155
- __stopPropagation,
156
- nextIcon,
157
- previousIcon,
158
- nextLabel,
159
- previousLabel,
160
- onNext,
161
- onPrevious,
162
- onLevelClick,
163
- nextDisabled: _nextDisabled,
164
- previousDisabled: _previousDisabled,
165
- hasNextLevel,
166
- levelControlAriaLabel,
167
- withNext,
168
- withPrevious
169
- }, stylesApiProps)), /* @__PURE__ */ React.createElement(Month, __spreadValues({
170
- month,
171
- locale,
172
- firstDayOfWeek,
173
- weekdayFormat,
174
- weekendDays,
175
- getDayProps,
176
- excludeDate,
177
- minDate,
178
- maxDate,
179
- renderDay,
180
- hideOutsideDates,
181
- hideWeekdays,
182
- getDayAriaLabel,
183
- __getDayRef,
184
- __onDayKeyDown,
185
- __onDayClick,
186
- __onDayMouseEnter,
187
- __preventFocus,
188
- __stopPropagation,
189
- static: isStatic,
190
- withCellSpacing
191
- }, stylesApiProps)));
137
+ return /* @__PURE__ */ React.createElement(Box, __spreadValues({ "data-month-level": true, size, ref }, others), /* @__PURE__ */ React.createElement(
138
+ CalendarHeader,
139
+ __spreadValues({
140
+ label: typeof monthLabelFormat === "function" ? monthLabelFormat(month) : dayjs(month).locale(locale || ctx.locale).format(monthLabelFormat),
141
+ __preventFocus,
142
+ __stopPropagation,
143
+ nextIcon,
144
+ previousIcon,
145
+ nextLabel,
146
+ previousLabel,
147
+ onNext,
148
+ onPrevious,
149
+ onLevelClick,
150
+ nextDisabled: _nextDisabled,
151
+ previousDisabled: _previousDisabled,
152
+ hasNextLevel,
153
+ levelControlAriaLabel,
154
+ withNext,
155
+ withPrevious
156
+ }, stylesApiProps)
157
+ ), /* @__PURE__ */ React.createElement(
158
+ Month,
159
+ __spreadValues({
160
+ month,
161
+ locale,
162
+ firstDayOfWeek,
163
+ weekdayFormat,
164
+ weekendDays,
165
+ getDayProps,
166
+ excludeDate,
167
+ minDate,
168
+ maxDate,
169
+ renderDay,
170
+ hideOutsideDates,
171
+ hideWeekdays,
172
+ getDayAriaLabel,
173
+ __getDayRef,
174
+ __onDayKeyDown,
175
+ __onDayClick,
176
+ __onDayMouseEnter,
177
+ __preventFocus,
178
+ __stopPropagation,
179
+ static: isStatic,
180
+ withCellSpacing
181
+ }, stylesApiProps)
182
+ ));
192
183
  });
184
+ MonthLevel.classes = __spreadValues(__spreadValues({}, Month.classes), CalendarHeader.classes);
193
185
  MonthLevel.displayName = "@mantine/dates/MonthLevel";
194
186
 
195
187
  export { MonthLevel };
@@ -1 +1 @@
1
- {"version":3,"file":"MonthLevel.js","sources":["../../../src/components/MonthLevel/MonthLevel.tsx"],"sourcesContent":["import dayjs from 'dayjs';\nimport React, { forwardRef } from 'react';\nimport { Box, DefaultProps, useComponentDefaultProps, Selectors } from '@mantine/core';\nimport {\n CalendarHeader,\n CalendarHeaderStylesNames,\n CalendarHeaderSettings,\n} from '../CalendarHeader';\nimport { useDatesContext } from '../DatesProvider';\nimport { Month, MonthSettings, MonthStylesNames } from '../Month';\nimport useStyles from './MonthLevel.styles';\n\nexport type MonthLevelStylesNames =\n | Selectors<typeof useStyles>\n | MonthStylesNames\n | CalendarHeaderStylesNames;\n\nexport interface MonthLevelBaseSettings extends MonthSettings {\n /** dayjs label format to display month label or a function that returns month label based on month value, defaults to \"MMMM YYYY\" */\n monthLabelFormat?: string | ((month: Date) => React.ReactNode);\n}\n\nexport interface MonthLevelSettings extends MonthLevelBaseSettings, CalendarHeaderSettings {}\n\nexport interface MonthLevelProps\n extends DefaultProps<MonthLevelStylesNames>,\n MonthLevelSettings,\n React.ComponentPropsWithoutRef<'div'> {\n variant?: string;\n __staticSelector?: string;\n\n /** Month that is currently displayed */\n month: Date;\n\n /** aria-label for change level control */\n levelControlAriaLabel?: string;\n\n /** Determines whether days should be static, static days can be used to display month if it is not expected that user will interact with the component in any way */\n static?: boolean;\n}\n\nconst defaultProps: Partial<MonthLevelProps> = {\n monthLabelFormat: 'MMMM YYYY',\n};\n\nexport const MonthLevel = forwardRef<HTMLDivElement, MonthLevelProps>((props, ref) => {\n const {\n // Month settings\n month,\n locale,\n firstDayOfWeek,\n weekdayFormat,\n weekendDays,\n getDayProps,\n excludeDate,\n minDate,\n maxDate,\n renderDay,\n hideOutsideDates,\n hideWeekdays,\n getDayAriaLabel,\n __getDayRef,\n __onDayKeyDown,\n __onDayClick,\n __onDayMouseEnter,\n withCellSpacing,\n\n // CalendarHeader settings\n __preventFocus,\n __stopPropagation,\n nextIcon,\n previousIcon,\n nextLabel,\n previousLabel,\n onNext,\n onPrevious,\n onLevelClick,\n nextDisabled,\n previousDisabled,\n hasNextLevel,\n levelControlAriaLabel,\n withNext,\n withPrevious,\n\n // Other props\n className,\n monthLabelFormat,\n classNames,\n styles,\n unstyled,\n __staticSelector,\n size,\n variant,\n static: isStatic,\n ...others\n } = useComponentDefaultProps('MonthLevel', defaultProps, props);\n\n const { classes, cx } = useStyles(null, {\n name: ['MonthLevel', __staticSelector],\n classNames,\n styles,\n unstyled,\n variant,\n size,\n });\n\n const ctx = useDatesContext();\n\n const stylesApiProps = {\n __staticSelector: __staticSelector || 'MonthLevel',\n classNames,\n styles,\n unstyled,\n variant,\n size,\n };\n\n const _nextDisabled =\n typeof nextDisabled === 'boolean'\n ? nextDisabled\n : maxDate\n ? !dayjs(month).endOf('month').isBefore(maxDate)\n : false;\n\n const _previousDisabled =\n typeof previousDisabled === 'boolean'\n ? previousDisabled\n : minDate\n ? !dayjs(month).startOf('month').isAfter(minDate)\n : false;\n\n return (\n <Box className={cx(classes.monthLevel, className)} data-month-level ref={ref} {...others}>\n <CalendarHeader\n label={\n typeof monthLabelFormat === 'function'\n ? monthLabelFormat(month)\n : dayjs(month)\n .locale(locale || ctx.locale)\n .format(monthLabelFormat)\n }\n className={classes.calendarHeader}\n __preventFocus={__preventFocus}\n __stopPropagation={__stopPropagation}\n nextIcon={nextIcon}\n previousIcon={previousIcon}\n nextLabel={nextLabel}\n previousLabel={previousLabel}\n onNext={onNext}\n onPrevious={onPrevious}\n onLevelClick={onLevelClick}\n nextDisabled={_nextDisabled}\n previousDisabled={_previousDisabled}\n hasNextLevel={hasNextLevel}\n levelControlAriaLabel={levelControlAriaLabel}\n withNext={withNext}\n withPrevious={withPrevious}\n {...stylesApiProps}\n />\n\n <Month\n month={month}\n locale={locale}\n firstDayOfWeek={firstDayOfWeek}\n weekdayFormat={weekdayFormat}\n weekendDays={weekendDays}\n getDayProps={getDayProps}\n excludeDate={excludeDate}\n minDate={minDate}\n maxDate={maxDate}\n renderDay={renderDay}\n hideOutsideDates={hideOutsideDates}\n hideWeekdays={hideWeekdays}\n getDayAriaLabel={getDayAriaLabel}\n __getDayRef={__getDayRef}\n __onDayKeyDown={__onDayKeyDown}\n __onDayClick={__onDayClick}\n __onDayMouseEnter={__onDayMouseEnter}\n __preventFocus={__preventFocus}\n __stopPropagation={__stopPropagation}\n static={isStatic}\n withCellSpacing={withCellSpacing}\n {...stylesApiProps}\n />\n </Box>\n );\n});\n\nMonthLevel.displayName = '@mantine/dates/MonthLevel';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MonthLevel.js","sources":["../../../src/components/MonthLevel/MonthLevel.tsx"],"sourcesContent":["import dayjs from 'dayjs';\nimport React from 'react';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n Factory,\n} from '@mantine/core';\nimport { Month, MonthSettings, MonthStylesNames } from '../Month';\nimport {\n CalendarHeader,\n CalendarHeaderSettings,\n CalendarHeaderStylesNames,\n} from '../CalendarHeader';\nimport { useDatesContext } from '../DatesProvider';\n\nexport type MonthLevelStylesNames = MonthStylesNames | CalendarHeaderStylesNames;\n\nexport interface MonthLevelBaseSettings extends MonthSettings {\n /** dayjs label format to display month label or a function that returns month label based on month value, defaults to \"MMMM YYYY\" */\n monthLabelFormat?: string | ((month: Date) => React.ReactNode);\n}\n\nexport interface MonthLevelSettings extends MonthLevelBaseSettings, CalendarHeaderSettings {}\n\nexport interface MonthLevelProps\n extends BoxProps,\n MonthLevelSettings,\n Omit<StylesApiProps<MonthLevelFactory>, 'classNames' | 'styles'>,\n ElementProps<'div'> {\n classNames?: Partial<Record<string, string>>;\n styles?: Partial<Record<string, React.CSSProperties>>;\n __staticSelector?: string;\n\n /** Month that is currently displayed */\n month: Date;\n\n /** aria-label for change level control */\n levelControlAriaLabel?: string;\n\n /** Determines whether days should be static, static days can be used to display month if it is not expected that user will interact with the component in any way */\n static?: boolean;\n}\n\nexport type MonthLevelFactory = Factory<{\n props: MonthLevelProps;\n ref: HTMLDivElement;\n stylesNames: MonthLevelStylesNames;\n}>;\n\nconst defaultProps: Partial<MonthLevelProps> = {\n monthLabelFormat: 'MMMM YYYY',\n};\n\nexport const MonthLevel = factory<MonthLevelFactory>((_props, ref) => {\n const props = useProps('MonthLevel', defaultProps, _props);\n const {\n // Month settings\n month,\n locale,\n firstDayOfWeek,\n weekdayFormat,\n weekendDays,\n getDayProps,\n excludeDate,\n minDate,\n maxDate,\n renderDay,\n hideOutsideDates,\n hideWeekdays,\n getDayAriaLabel,\n __getDayRef,\n __onDayKeyDown,\n __onDayClick,\n __onDayMouseEnter,\n withCellSpacing,\n\n // CalendarHeader settings\n __preventFocus,\n __stopPropagation,\n nextIcon,\n previousIcon,\n nextLabel,\n previousLabel,\n onNext,\n onPrevious,\n onLevelClick,\n nextDisabled,\n previousDisabled,\n hasNextLevel,\n levelControlAriaLabel,\n withNext,\n withPrevious,\n\n // Other props\n monthLabelFormat,\n classNames,\n styles,\n unstyled,\n __staticSelector,\n size,\n static: isStatic,\n ...others\n } = props;\n\n const ctx = useDatesContext();\n\n const stylesApiProps = {\n __staticSelector: __staticSelector || 'MonthLevel',\n classNames,\n styles,\n unstyled,\n size,\n };\n\n const _nextDisabled =\n typeof nextDisabled === 'boolean'\n ? nextDisabled\n : maxDate\n ? !dayjs(month).endOf('month').isBefore(maxDate)\n : false;\n\n const _previousDisabled =\n typeof previousDisabled === 'boolean'\n ? previousDisabled\n : minDate\n ? !dayjs(month).startOf('month').isAfter(minDate)\n : false;\n\n return (\n <Box data-month-level size={size} ref={ref} {...others}>\n <CalendarHeader\n label={\n typeof monthLabelFormat === 'function'\n ? monthLabelFormat(month)\n : dayjs(month)\n .locale(locale || ctx.locale)\n .format(monthLabelFormat)\n }\n __preventFocus={__preventFocus}\n __stopPropagation={__stopPropagation}\n nextIcon={nextIcon}\n previousIcon={previousIcon}\n nextLabel={nextLabel}\n previousLabel={previousLabel}\n onNext={onNext}\n onPrevious={onPrevious}\n onLevelClick={onLevelClick}\n nextDisabled={_nextDisabled}\n previousDisabled={_previousDisabled}\n hasNextLevel={hasNextLevel}\n levelControlAriaLabel={levelControlAriaLabel}\n withNext={withNext}\n withPrevious={withPrevious}\n {...stylesApiProps}\n />\n\n <Month\n month={month}\n locale={locale}\n firstDayOfWeek={firstDayOfWeek}\n weekdayFormat={weekdayFormat}\n weekendDays={weekendDays}\n getDayProps={getDayProps}\n excludeDate={excludeDate}\n minDate={minDate}\n maxDate={maxDate}\n renderDay={renderDay}\n hideOutsideDates={hideOutsideDates}\n hideWeekdays={hideWeekdays}\n getDayAriaLabel={getDayAriaLabel}\n __getDayRef={__getDayRef}\n __onDayKeyDown={__onDayKeyDown}\n __onDayClick={__onDayClick}\n __onDayMouseEnter={__onDayMouseEnter}\n __preventFocus={__preventFocus}\n __stopPropagation={__stopPropagation}\n static={isStatic}\n withCellSpacing={withCellSpacing}\n {...stylesApiProps}\n />\n </Box>\n );\n});\n\nMonthLevel.classes = { ...Month.classes, ...CalendarHeader.classes };\nMonthLevel.displayName = '@mantine/dates/MonthLevel';\n"],"names":[],"mappings":"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"}