@mantine/dates 9.0.0-alpha.4 → 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 (486) 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 +286 -0
  47. package/cjs/components/InlineDateTimePicker/InlineDateTimePicker.cjs.map +1 -0
  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 +284 -0
  256. package/esm/components/InlineDateTimePicker/InlineDateTimePicker.mjs.map +1 -0
  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/lib/components/InlineDateTimePicker/InlineDateTimePicker.d.ts +71 -0
  421. package/lib/components/InlineDateTimePicker/index.d.ts +9 -0
  422. package/package.json +7 -7
  423. package/styles.css +1 -1
  424. package/styles.layer.css +1 -1
  425. package/cjs/components/CalendarHeader/CalendarHeader.module.css.cjs +0 -7
  426. package/cjs/components/CalendarHeader/CalendarHeader.module.css.cjs.map +0 -1
  427. package/cjs/components/DatePicker/DatePicker.module.css.cjs +0 -7
  428. package/cjs/components/DatePicker/DatePicker.module.css.cjs.map +0 -1
  429. package/cjs/components/DateTimePicker/DateTimePicker.module.css.cjs +0 -7
  430. package/cjs/components/DateTimePicker/DateTimePicker.module.css.cjs.map +0 -1
  431. package/cjs/components/Day/Day.module.css.cjs +0 -7
  432. package/cjs/components/Day/Day.module.css.cjs.map +0 -1
  433. package/cjs/components/LevelsGroup/LevelsGroup.module.css.cjs +0 -7
  434. package/cjs/components/LevelsGroup/LevelsGroup.module.css.cjs.map +0 -1
  435. package/cjs/components/MiniCalendar/MiniCalendar.module.css.cjs +0 -7
  436. package/cjs/components/MiniCalendar/MiniCalendar.module.css.cjs.map +0 -1
  437. package/cjs/components/Month/Month.module.css.cjs +0 -7
  438. package/cjs/components/Month/Month.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/YearsList/YearsList.module.css.cjs +0 -7
  454. package/cjs/components/YearsList/YearsList.module.css.cjs.map +0 -1
  455. package/cjs/index.cjs.map +0 -1
  456. package/esm/components/CalendarHeader/CalendarHeader.module.css.mjs +0 -5
  457. package/esm/components/CalendarHeader/CalendarHeader.module.css.mjs.map +0 -1
  458. package/esm/components/DatePicker/DatePicker.module.css.mjs +0 -5
  459. package/esm/components/DatePicker/DatePicker.module.css.mjs.map +0 -1
  460. package/esm/components/DateTimePicker/DateTimePicker.module.css.mjs +0 -5
  461. package/esm/components/DateTimePicker/DateTimePicker.module.css.mjs.map +0 -1
  462. package/esm/components/Day/Day.module.css.mjs +0 -5
  463. package/esm/components/Day/Day.module.css.mjs.map +0 -1
  464. package/esm/components/LevelsGroup/LevelsGroup.module.css.mjs +0 -5
  465. package/esm/components/LevelsGroup/LevelsGroup.module.css.mjs.map +0 -1
  466. package/esm/components/MiniCalendar/MiniCalendar.module.css.mjs +0 -5
  467. package/esm/components/MiniCalendar/MiniCalendar.module.css.mjs.map +0 -1
  468. package/esm/components/Month/Month.module.css.mjs +0 -5
  469. package/esm/components/Month/Month.module.css.mjs.map +0 -1
  470. package/esm/components/MonthsList/MonthsList.module.css.mjs +0 -5
  471. package/esm/components/MonthsList/MonthsList.module.css.mjs.map +0 -1
  472. package/esm/components/PickerControl/PickerControl.module.css.mjs +0 -5
  473. package/esm/components/PickerControl/PickerControl.module.css.mjs.map +0 -1
  474. package/esm/components/PickerInputBase/PickerInputBase.module.css.mjs +0 -5
  475. package/esm/components/PickerInputBase/PickerInputBase.module.css.mjs.map +0 -1
  476. package/esm/components/TimeGrid/TimeGrid.module.css.mjs +0 -5
  477. package/esm/components/TimeGrid/TimeGrid.module.css.mjs.map +0 -1
  478. package/esm/components/TimeInput/TimeInput.module.css.mjs +0 -5
  479. package/esm/components/TimeInput/TimeInput.module.css.mjs.map +0 -1
  480. package/esm/components/TimePicker/TimePicker.module.css.mjs +0 -5
  481. package/esm/components/TimePicker/TimePicker.module.css.mjs.map +0 -1
  482. package/esm/components/WeekdaysRow/WeekdaysRow.module.css.mjs +0 -5
  483. package/esm/components/WeekdaysRow/WeekdaysRow.module.css.mjs.map +0 -1
  484. package/esm/components/YearsList/YearsList.module.css.mjs +0 -5
  485. package/esm/components/YearsList/YearsList.module.css.mjs.map +0 -1
  486. package/esm/index.mjs.map +0 -1
@@ -1,424 +1,330 @@
1
- 'use client';
2
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
3
- import { useRef, useState } from 'react';
4
- import { createVarsResolver, getFontSize, factory, useProps, useResolvedStylesApi, useStyles, Popover, InputBase, CloseButton } from '@mantine/core';
5
- import { useMergedRef, useId } from '@mantine/hooks';
6
- import { SpinInput } from '../SpinInput/SpinInput.mjs';
7
- import { AmPmInput } from './AmPmInput/AmPmInput.mjs';
8
- import { AmPmControlsList } from './TimeControlsList/AmPmControlsList.mjs';
9
- import { TimeControlsList } from './TimeControlsList/TimeControlsList.mjs';
10
- import { TimePickerProvider } from './TimePicker.context.mjs';
11
- import classes from './TimePicker.module.css.mjs';
12
- import { TimePresets } from './TimePresets/TimePresets.mjs';
13
- import { useTimePicker } from './use-time-picker.mjs';
14
- import { clampTime } from './utils/clamp-time/clamp-time.mjs';
15
- import { getParsedTime } from './utils/get-parsed-time/get-parsed-time.mjs';
16
- import { getTimeString } from './utils/get-time-string/get-time-string.mjs';
17
-
1
+ "use client";
2
+ import { SpinInput } from "../SpinInput/SpinInput.mjs";
3
+ import { TimePickerProvider } from "./TimePicker.context.mjs";
4
+ import { AmPmInput } from "./AmPmInput/AmPmInput.mjs";
5
+ import { AmPmControlsList } from "./TimeControlsList/AmPmControlsList.mjs";
6
+ import { TimeControlsList } from "./TimeControlsList/TimeControlsList.mjs";
7
+ import { TimePresets } from "./TimePresets/TimePresets.mjs";
8
+ import { clampTime } from "./utils/clamp-time/clamp-time.mjs";
9
+ import { getParsedTime } from "./utils/get-parsed-time/get-parsed-time.mjs";
10
+ import { getTimeString } from "./utils/get-time-string/get-time-string.mjs";
11
+ import { useTimePicker } from "./use-time-picker.mjs";
12
+ import TimePicker_module_default from "./TimePicker.module.mjs";
13
+ import { useRef, useState } from "react";
14
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
15
+ import { CloseButton, InputBase, Popover, createVarsResolver, factory, getFontSize, useProps, useResolvedStylesApi, useStyles } from "@mantine/core";
16
+ import { useId, useMergedRef } from "@mantine/hooks";
17
+ //#region packages/@mantine/dates/src/components/TimePicker/TimePicker.tsx
18
18
  const defaultProps = {
19
- hoursStep: 1,
20
- minutesStep: 1,
21
- secondsStep: 1,
22
- format: "24h",
23
- amPmLabels: { am: "AM", pm: "PM" },
24
- pasteSplit: getParsedTime,
25
- maxDropdownContentHeight: 200,
26
- hoursPlaceholder: "--",
27
- minutesPlaceholder: "--",
28
- secondsPlaceholder: "--"
19
+ hoursStep: 1,
20
+ minutesStep: 1,
21
+ secondsStep: 1,
22
+ format: "24h",
23
+ amPmLabels: {
24
+ am: "AM",
25
+ pm: "PM"
26
+ },
27
+ pasteSplit: getParsedTime,
28
+ maxDropdownContentHeight: 200,
29
+ hoursPlaceholder: "--",
30
+ minutesPlaceholder: "--",
31
+ secondsPlaceholder: "--"
29
32
  };
30
- const varsResolver = createVarsResolver((_theme, { size }) => ({
31
- dropdown: {
32
- "--control-font-size": getFontSize(size)
33
- }
34
- }));
33
+ const varsResolver = createVarsResolver((_theme, { size }) => ({ dropdown: { "--control-font-size": getFontSize(size) } }));
35
34
  const TimePicker = factory((_props) => {
36
- const props = useProps("TimePicker", defaultProps, _props);
37
- const {
38
- classNames,
39
- className,
40
- style,
41
- styles,
42
- unstyled,
43
- vars,
44
- onClick,
45
- format,
46
- value,
47
- defaultValue,
48
- onChange,
49
- hoursStep,
50
- minutesStep,
51
- secondsStep,
52
- withSeconds,
53
- hoursInputLabel,
54
- minutesInputLabel,
55
- secondsInputLabel,
56
- amPmInputLabel,
57
- amPmLabels,
58
- clearable,
59
- clearSectionMode,
60
- onMouseDown,
61
- onFocusCapture,
62
- onBlurCapture,
63
- min,
64
- max,
65
- popoverProps,
66
- withDropdown,
67
- rightSection,
68
- onFocus,
69
- onBlur,
70
- clearButtonProps,
71
- hoursInputProps,
72
- minutesInputProps,
73
- secondsInputProps,
74
- amPmSelectProps,
75
- readOnly,
76
- disabled,
77
- size,
78
- name,
79
- form,
80
- hiddenInputProps,
81
- labelProps,
82
- pasteSplit,
83
- hoursRef,
84
- minutesRef,
85
- secondsRef,
86
- amPmRef,
87
- presets,
88
- maxDropdownContentHeight,
89
- scrollAreaProps,
90
- attributes,
91
- reverseTimeControlsList,
92
- hoursPlaceholder,
93
- minutesPlaceholder,
94
- secondsPlaceholder,
95
- ...others
96
- } = props;
97
- const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi({
98
- classNames,
99
- styles,
100
- props
101
- });
102
- const getStyles = useStyles({
103
- name: "TimePicker",
104
- classes,
105
- props,
106
- className,
107
- style,
108
- classNames,
109
- styles,
110
- unstyled,
111
- attributes,
112
- vars,
113
- varsResolver
114
- });
115
- const controller = useTimePicker({
116
- value,
117
- defaultValue,
118
- onChange,
119
- format,
120
- amPmLabels,
121
- withSeconds,
122
- min,
123
- max,
124
- clearable,
125
- disabled,
126
- readOnly,
127
- pasteSplit
128
- });
129
- const _hoursRef = useMergedRef(controller.refs.hours, hoursRef);
130
- const _minutesRef = useMergedRef(controller.refs.minutes, minutesRef);
131
- const _secondsRef = useMergedRef(controller.refs.seconds, secondsRef);
132
- const _amPmRef = useMergedRef(controller.refs.amPm, amPmRef);
133
- const hoursInputId = useId();
134
- const hasFocusRef = useRef(false);
135
- const [dropdownOpened, setDropdownOpened] = useState(false);
136
- const handleFocus = (event) => {
137
- if (!hasFocusRef.current) {
138
- hasFocusRef.current = true;
139
- onFocus?.(event);
140
- }
141
- };
142
- const handleBlur = (event) => {
143
- if (!event.currentTarget.contains(event.relatedTarget)) {
144
- const computedValue = controller.values;
145
- const timeString = getTimeString({
146
- ...computedValue,
147
- format,
148
- amPmLabels,
149
- withSeconds: !!withSeconds
150
- });
151
- if (timeString.valid && (min || max)) {
152
- const clamped = clampTime(timeString.value, min, max);
153
- if (clamped.timeString !== timeString.value) {
154
- controller.setTimeString(clamped.timeString);
155
- }
156
- }
157
- hasFocusRef.current = false;
158
- onBlur?.(event);
159
- }
160
- };
161
- return /* @__PURE__ */ jsx(TimePickerProvider, { value: { getStyles, scrollAreaProps, maxDropdownContentHeight }, children: /* @__PURE__ */ jsxs(
162
- Popover,
163
- {
164
- opened: dropdownOpened,
165
- transitionProps: { duration: 0 },
166
- position: "bottom-start",
167
- withRoles: false,
168
- disabled: disabled || readOnly || !withDropdown,
169
- ...popoverProps,
170
- children: [
171
- /* @__PURE__ */ jsx(Popover.Target, { children: /* @__PURE__ */ jsxs(
172
- InputBase,
173
- {
174
- component: "div",
175
- size,
176
- disabled,
177
- onClick: (event) => {
178
- onClick?.(event);
179
- controller.focus("hours");
180
- },
181
- onMouseDown: (event) => {
182
- event.preventDefault();
183
- onMouseDown?.(event);
184
- },
185
- onFocusCapture: (event) => {
186
- setDropdownOpened(true);
187
- onFocusCapture?.(event);
188
- },
189
- onBlurCapture: (event) => {
190
- setDropdownOpened(false);
191
- onBlurCapture?.(event);
192
- },
193
- rightSection,
194
- __clearSection: /* @__PURE__ */ jsx(
195
- CloseButton,
196
- {
197
- ...clearButtonProps,
198
- size,
199
- onClick: (event) => {
200
- controller.clear();
201
- clearButtonProps?.onClick?.(event);
202
- },
203
- onMouseDown: (event) => {
204
- event.preventDefault();
205
- clearButtonProps?.onMouseDown?.(event);
206
- }
207
- }
208
- ),
209
- __clearable: controller.isClearable,
210
- __clearSectionMode: clearSectionMode,
211
- labelProps: { htmlFor: hoursInputId, ...labelProps },
212
- style,
213
- className,
214
- classNames: resolvedClassNames,
215
- styles: resolvedStyles,
216
- attributes,
217
- __staticSelector: "TimePicker",
218
- ...others,
219
- children: [
220
- /* @__PURE__ */ jsx("div", { ...getStyles("fieldsRoot"), dir: "ltr", children: /* @__PURE__ */ jsxs("div", { ...getStyles("fieldsGroup"), onBlur: handleBlur, children: [
221
- /* @__PURE__ */ jsx(
222
- SpinInput,
223
- {
224
- id: hoursInputId,
225
- ...hoursInputProps,
226
- ...getStyles("field", {
227
- className: hoursInputProps?.className,
228
- style: hoursInputProps?.style
229
- }),
230
- value: controller.values.hours,
231
- onChange: controller.setHours,
232
- onNextInput: () => controller.focus("minutes"),
233
- min: format === "12h" ? 1 : 0,
234
- max: format === "12h" ? 12 : 23,
235
- allowTemporaryZero: format === "12h",
236
- focusable: true,
237
- step: hoursStep,
238
- ref: _hoursRef,
239
- "aria-label": hoursInputLabel,
240
- readOnly,
241
- disabled,
242
- onPaste: controller.onPaste,
243
- onFocus: (event) => {
244
- handleFocus(event);
245
- hoursInputProps?.onFocus?.(event);
246
- },
247
- onBlur: (event) => {
248
- const actualInputValue = event.currentTarget.value;
249
- const numericValue = actualInputValue ? parseInt(actualInputValue, 10) : null;
250
- if (format === "12h" && numericValue === 0) {
251
- controller.setHours(12);
252
- }
253
- hoursInputProps?.onBlur?.(event);
254
- },
255
- placeholder: hoursPlaceholder
256
- }
257
- ),
258
- /* @__PURE__ */ jsx("span", { children: ":" }),
259
- /* @__PURE__ */ jsx(
260
- SpinInput,
261
- {
262
- ...minutesInputProps,
263
- ...getStyles("field", {
264
- className: minutesInputProps?.className,
265
- style: minutesInputProps?.style
266
- }),
267
- value: controller.values.minutes,
268
- onChange: controller.setMinutes,
269
- min: 0,
270
- max: 59,
271
- focusable: true,
272
- step: minutesStep,
273
- ref: _minutesRef,
274
- onPreviousInput: () => controller.focus("hours"),
275
- onNextInput: () => withSeconds ? controller.focus("seconds") : controller.focus("amPm"),
276
- "aria-label": minutesInputLabel,
277
- tabIndex: -1,
278
- readOnly,
279
- disabled,
280
- onPaste: controller.onPaste,
281
- onFocus: (event) => {
282
- handleFocus(event);
283
- minutesInputProps?.onFocus?.(event);
284
- },
285
- placeholder: minutesPlaceholder
286
- }
287
- ),
288
- withSeconds && /* @__PURE__ */ jsxs(Fragment, { children: [
289
- /* @__PURE__ */ jsx("span", { children: ":" }),
290
- /* @__PURE__ */ jsx(
291
- SpinInput,
292
- {
293
- ...secondsInputProps,
294
- ...getStyles("field", {
295
- className: secondsInputProps?.className,
296
- style: secondsInputProps?.style
297
- }),
298
- value: controller.values.seconds,
299
- onChange: controller.setSeconds,
300
- min: 0,
301
- max: 59,
302
- focusable: true,
303
- step: secondsStep,
304
- ref: _secondsRef,
305
- onPreviousInput: () => controller.focus("minutes"),
306
- onNextInput: () => controller.focus("amPm"),
307
- "aria-label": secondsInputLabel,
308
- tabIndex: -1,
309
- readOnly,
310
- disabled,
311
- onPaste: controller.onPaste,
312
- onFocus: (event) => {
313
- handleFocus(event);
314
- secondsInputProps?.onFocus?.(event);
315
- },
316
- placeholder: secondsPlaceholder
317
- }
318
- )
319
- ] }),
320
- format === "12h" && /* @__PURE__ */ jsx(
321
- AmPmInput,
322
- {
323
- ...amPmSelectProps,
324
- inputType: withDropdown ? "input" : "select",
325
- labels: amPmLabels,
326
- value: controller.values.amPm,
327
- onChange: controller.setAmPm,
328
- ref: _amPmRef,
329
- "aria-label": amPmInputLabel,
330
- onPreviousInput: () => withSeconds ? controller.focus("seconds") : controller.focus("minutes"),
331
- readOnly,
332
- disabled,
333
- tabIndex: -1,
334
- onPaste: controller.onPaste,
335
- onFocus: (event) => {
336
- handleFocus(event);
337
- amPmSelectProps?.onFocus?.(event);
338
- }
339
- }
340
- )
341
- ] }) }),
342
- /* @__PURE__ */ jsx(
343
- "input",
344
- {
345
- type: "hidden",
346
- name,
347
- form,
348
- value: controller.hiddenInputValue,
349
- ...hiddenInputProps
350
- }
351
- )
352
- ]
353
- }
354
- ) }),
355
- /* @__PURE__ */ jsx(
356
- Popover.Dropdown,
357
- {
358
- ...getStyles("dropdown"),
359
- onMouseDown: (event) => event.preventDefault(),
360
- children: presets ? /* @__PURE__ */ jsx(
361
- TimePresets,
362
- {
363
- value: controller.hiddenInputValue,
364
- onChange: controller.setTimeString,
365
- format,
366
- presets,
367
- amPmLabels,
368
- withSeconds: withSeconds || false
369
- }
370
- ) : /* @__PURE__ */ jsxs("div", { ...getStyles("controlsListGroup"), children: [
371
- /* @__PURE__ */ jsx(
372
- TimeControlsList,
373
- {
374
- min: format === "12h" ? 1 : 0,
375
- max: format === "12h" ? 12 : 23,
376
- step: hoursStep,
377
- value: controller.values.hours,
378
- onSelect: controller.setHours,
379
- reversed: reverseTimeControlsList
380
- }
381
- ),
382
- /* @__PURE__ */ jsx(
383
- TimeControlsList,
384
- {
385
- min: 0,
386
- max: 59,
387
- step: minutesStep,
388
- value: controller.values.minutes,
389
- onSelect: controller.setMinutes,
390
- reversed: reverseTimeControlsList
391
- }
392
- ),
393
- withSeconds && /* @__PURE__ */ jsx(
394
- TimeControlsList,
395
- {
396
- min: 0,
397
- max: 59,
398
- step: secondsStep,
399
- value: controller.values.seconds,
400
- onSelect: controller.setSeconds,
401
- reversed: reverseTimeControlsList
402
- }
403
- ),
404
- format === "12h" && /* @__PURE__ */ jsx(
405
- AmPmControlsList,
406
- {
407
- labels: amPmLabels,
408
- value: controller.values.amPm,
409
- onSelect: controller.setAmPm
410
- }
411
- )
412
- ] })
413
- }
414
- )
415
- ]
416
- }
417
- ) });
35
+ const props = useProps("TimePicker", defaultProps, _props);
36
+ const { classNames, className, style, styles, unstyled, vars, onClick, format, value, defaultValue, onChange, hoursStep, minutesStep, secondsStep, withSeconds, hoursInputLabel, minutesInputLabel, secondsInputLabel, amPmInputLabel, amPmLabels, clearable, clearSectionMode, onMouseDown, onFocusCapture, onBlurCapture, min, max, popoverProps, withDropdown, rightSection, onFocus, onBlur, clearButtonProps, hoursInputProps, minutesInputProps, secondsInputProps, amPmSelectProps, readOnly, disabled, size, name, form, hiddenInputProps, labelProps, pasteSplit, hoursRef, minutesRef, secondsRef, amPmRef, presets, maxDropdownContentHeight, scrollAreaProps, attributes, reverseTimeControlsList, hoursPlaceholder, minutesPlaceholder, secondsPlaceholder, ...others } = props;
37
+ const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi({
38
+ classNames,
39
+ styles,
40
+ props
41
+ });
42
+ const getStyles = useStyles({
43
+ name: "TimePicker",
44
+ classes: TimePicker_module_default,
45
+ props,
46
+ className,
47
+ style,
48
+ classNames,
49
+ styles,
50
+ unstyled,
51
+ attributes,
52
+ vars,
53
+ varsResolver
54
+ });
55
+ const controller = useTimePicker({
56
+ value,
57
+ defaultValue,
58
+ onChange,
59
+ format,
60
+ amPmLabels,
61
+ withSeconds,
62
+ min,
63
+ max,
64
+ clearable,
65
+ disabled,
66
+ readOnly,
67
+ pasteSplit
68
+ });
69
+ const _hoursRef = useMergedRef(controller.refs.hours, hoursRef);
70
+ const _minutesRef = useMergedRef(controller.refs.minutes, minutesRef);
71
+ const _secondsRef = useMergedRef(controller.refs.seconds, secondsRef);
72
+ const _amPmRef = useMergedRef(controller.refs.amPm, amPmRef);
73
+ const hoursInputId = useId();
74
+ const hasFocusRef = useRef(false);
75
+ const [dropdownOpened, setDropdownOpened] = useState(false);
76
+ const handleFocus = (event) => {
77
+ if (!hasFocusRef.current) {
78
+ hasFocusRef.current = true;
79
+ onFocus?.(event);
80
+ }
81
+ };
82
+ const handleBlur = (event) => {
83
+ if (!event.currentTarget.contains(event.relatedTarget)) {
84
+ const computedValue = controller.values;
85
+ const timeString = getTimeString({
86
+ ...computedValue,
87
+ format,
88
+ amPmLabels,
89
+ withSeconds: !!withSeconds
90
+ });
91
+ if (timeString.valid && (min || max)) {
92
+ const clamped = clampTime(timeString.value, min, max);
93
+ if (clamped.timeString !== timeString.value) controller.setTimeString(clamped.timeString);
94
+ }
95
+ hasFocusRef.current = false;
96
+ onBlur?.(event);
97
+ }
98
+ };
99
+ return /* @__PURE__ */ jsx(TimePickerProvider, {
100
+ value: {
101
+ getStyles,
102
+ scrollAreaProps,
103
+ maxDropdownContentHeight
104
+ },
105
+ children: /* @__PURE__ */ jsxs(Popover, {
106
+ opened: dropdownOpened,
107
+ transitionProps: { duration: 0 },
108
+ position: "bottom-start",
109
+ withRoles: false,
110
+ disabled: disabled || readOnly || !withDropdown,
111
+ ...popoverProps,
112
+ children: [/* @__PURE__ */ jsx(Popover.Target, { children: /* @__PURE__ */ jsxs(InputBase, {
113
+ component: "div",
114
+ size,
115
+ disabled,
116
+ onClick: (event) => {
117
+ onClick?.(event);
118
+ controller.focus("hours");
119
+ },
120
+ onMouseDown: (event) => {
121
+ event.preventDefault();
122
+ onMouseDown?.(event);
123
+ },
124
+ onFocusCapture: (event) => {
125
+ setDropdownOpened(true);
126
+ onFocusCapture?.(event);
127
+ },
128
+ onBlurCapture: (event) => {
129
+ setDropdownOpened(false);
130
+ onBlurCapture?.(event);
131
+ },
132
+ rightSection,
133
+ __clearSection: /* @__PURE__ */ jsx(CloseButton, {
134
+ ...clearButtonProps,
135
+ size,
136
+ onClick: (event) => {
137
+ controller.clear();
138
+ clearButtonProps?.onClick?.(event);
139
+ },
140
+ onMouseDown: (event) => {
141
+ event.preventDefault();
142
+ clearButtonProps?.onMouseDown?.(event);
143
+ }
144
+ }),
145
+ __clearable: controller.isClearable,
146
+ __clearSectionMode: clearSectionMode,
147
+ labelProps: {
148
+ htmlFor: hoursInputId,
149
+ ...labelProps
150
+ },
151
+ style,
152
+ className,
153
+ classNames: resolvedClassNames,
154
+ styles: resolvedStyles,
155
+ attributes,
156
+ __staticSelector: "TimePicker",
157
+ ...others,
158
+ children: [/* @__PURE__ */ jsx("div", {
159
+ ...getStyles("fieldsRoot"),
160
+ dir: "ltr",
161
+ children: /* @__PURE__ */ jsxs("div", {
162
+ ...getStyles("fieldsGroup"),
163
+ onBlur: handleBlur,
164
+ children: [
165
+ /* @__PURE__ */ jsx(SpinInput, {
166
+ id: hoursInputId,
167
+ ...hoursInputProps,
168
+ ...getStyles("field", {
169
+ className: hoursInputProps?.className,
170
+ style: hoursInputProps?.style
171
+ }),
172
+ value: controller.values.hours,
173
+ onChange: controller.setHours,
174
+ onNextInput: () => controller.focus("minutes"),
175
+ min: format === "12h" ? 1 : 0,
176
+ max: format === "12h" ? 12 : 23,
177
+ allowTemporaryZero: format === "12h",
178
+ focusable: true,
179
+ step: hoursStep,
180
+ ref: _hoursRef,
181
+ "aria-label": hoursInputLabel,
182
+ readOnly,
183
+ disabled,
184
+ onPaste: controller.onPaste,
185
+ onFocus: (event) => {
186
+ handleFocus(event);
187
+ hoursInputProps?.onFocus?.(event);
188
+ },
189
+ onBlur: (event) => {
190
+ const actualInputValue = event.currentTarget.value;
191
+ if (format === "12h" && (actualInputValue ? parseInt(actualInputValue, 10) : null) === 0) controller.setHours(12);
192
+ hoursInputProps?.onBlur?.(event);
193
+ },
194
+ placeholder: hoursPlaceholder
195
+ }),
196
+ /* @__PURE__ */ jsx("span", { children: ":" }),
197
+ /* @__PURE__ */ jsx(SpinInput, {
198
+ ...minutesInputProps,
199
+ ...getStyles("field", {
200
+ className: minutesInputProps?.className,
201
+ style: minutesInputProps?.style
202
+ }),
203
+ value: controller.values.minutes,
204
+ onChange: controller.setMinutes,
205
+ min: 0,
206
+ max: 59,
207
+ focusable: true,
208
+ step: minutesStep,
209
+ ref: _minutesRef,
210
+ onPreviousInput: () => controller.focus("hours"),
211
+ onNextInput: () => withSeconds ? controller.focus("seconds") : controller.focus("amPm"),
212
+ "aria-label": minutesInputLabel,
213
+ tabIndex: -1,
214
+ readOnly,
215
+ disabled,
216
+ onPaste: controller.onPaste,
217
+ onFocus: (event) => {
218
+ handleFocus(event);
219
+ minutesInputProps?.onFocus?.(event);
220
+ },
221
+ placeholder: minutesPlaceholder
222
+ }),
223
+ withSeconds && /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("span", { children: ":" }), /* @__PURE__ */ jsx(SpinInput, {
224
+ ...secondsInputProps,
225
+ ...getStyles("field", {
226
+ className: secondsInputProps?.className,
227
+ style: secondsInputProps?.style
228
+ }),
229
+ value: controller.values.seconds,
230
+ onChange: controller.setSeconds,
231
+ min: 0,
232
+ max: 59,
233
+ focusable: true,
234
+ step: secondsStep,
235
+ ref: _secondsRef,
236
+ onPreviousInput: () => controller.focus("minutes"),
237
+ onNextInput: () => controller.focus("amPm"),
238
+ "aria-label": secondsInputLabel,
239
+ tabIndex: -1,
240
+ readOnly,
241
+ disabled,
242
+ onPaste: controller.onPaste,
243
+ onFocus: (event) => {
244
+ handleFocus(event);
245
+ secondsInputProps?.onFocus?.(event);
246
+ },
247
+ placeholder: secondsPlaceholder
248
+ })] }),
249
+ format === "12h" && /* @__PURE__ */ jsx(AmPmInput, {
250
+ ...amPmSelectProps,
251
+ inputType: withDropdown ? "input" : "select",
252
+ labels: amPmLabels,
253
+ value: controller.values.amPm,
254
+ onChange: controller.setAmPm,
255
+ ref: _amPmRef,
256
+ "aria-label": amPmInputLabel,
257
+ onPreviousInput: () => withSeconds ? controller.focus("seconds") : controller.focus("minutes"),
258
+ readOnly,
259
+ disabled,
260
+ tabIndex: -1,
261
+ onPaste: controller.onPaste,
262
+ onFocus: (event) => {
263
+ handleFocus(event);
264
+ amPmSelectProps?.onFocus?.(event);
265
+ }
266
+ })
267
+ ]
268
+ })
269
+ }), /* @__PURE__ */ jsx("input", {
270
+ type: "hidden",
271
+ name,
272
+ form,
273
+ value: controller.hiddenInputValue,
274
+ ...hiddenInputProps
275
+ })]
276
+ }) }), /* @__PURE__ */ jsx(Popover.Dropdown, {
277
+ ...getStyles("dropdown"),
278
+ onMouseDown: (event) => event.preventDefault(),
279
+ children: presets ? /* @__PURE__ */ jsx(TimePresets, {
280
+ value: controller.hiddenInputValue,
281
+ onChange: controller.setTimeString,
282
+ format,
283
+ presets,
284
+ amPmLabels,
285
+ withSeconds: withSeconds || false
286
+ }) : /* @__PURE__ */ jsxs("div", {
287
+ ...getStyles("controlsListGroup"),
288
+ children: [
289
+ /* @__PURE__ */ jsx(TimeControlsList, {
290
+ min: format === "12h" ? 1 : 0,
291
+ max: format === "12h" ? 12 : 23,
292
+ step: hoursStep,
293
+ value: controller.values.hours,
294
+ onSelect: controller.setHours,
295
+ reversed: reverseTimeControlsList
296
+ }),
297
+ /* @__PURE__ */ jsx(TimeControlsList, {
298
+ min: 0,
299
+ max: 59,
300
+ step: minutesStep,
301
+ value: controller.values.minutes,
302
+ onSelect: controller.setMinutes,
303
+ reversed: reverseTimeControlsList
304
+ }),
305
+ withSeconds && /* @__PURE__ */ jsx(TimeControlsList, {
306
+ min: 0,
307
+ max: 59,
308
+ step: secondsStep,
309
+ value: controller.values.seconds,
310
+ onSelect: controller.setSeconds,
311
+ reversed: reverseTimeControlsList
312
+ }),
313
+ format === "12h" && /* @__PURE__ */ jsx(AmPmControlsList, {
314
+ labels: amPmLabels,
315
+ value: controller.values.amPm,
316
+ onSelect: controller.setAmPm
317
+ })
318
+ ]
319
+ })
320
+ })]
321
+ })
322
+ });
418
323
  });
419
324
  TimePicker.displayName = "@mantine/dates/TimePicker";
420
- TimePicker.classes = classes;
325
+ TimePicker.classes = TimePicker_module_default;
421
326
  TimePicker.varsResolver = varsResolver;
422
-
327
+ //#endregion
423
328
  export { TimePicker };
424
- //# sourceMappingURL=TimePicker.mjs.map
329
+
330
+ //# sourceMappingURL=TimePicker.mjs.map