@mantine/dates 8.0.2 → 8.1.1

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 (111) hide show
  1. package/cjs/components/Calendar/Calendar.cjs +13 -1
  2. package/cjs/components/Calendar/Calendar.cjs.map +1 -1
  3. package/cjs/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.cjs +5 -0
  4. package/cjs/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.cjs.map +1 -1
  5. package/cjs/components/CalendarHeader/CalendarHeader.cjs +75 -60
  6. package/cjs/components/CalendarHeader/CalendarHeader.cjs.map +1 -1
  7. package/cjs/components/DateInput/DateInput.cjs +2 -2
  8. package/cjs/components/DateInput/DateInput.cjs.map +1 -1
  9. package/cjs/components/DatePicker/DatePicker.cjs +83 -27
  10. package/cjs/components/DatePicker/DatePicker.cjs.map +1 -1
  11. package/cjs/components/DatePicker/DatePicker.module.css.cjs +7 -0
  12. package/cjs/components/DatePicker/DatePicker.module.css.cjs.map +1 -0
  13. package/cjs/components/DatePickerInput/DatePickerInput.cjs +3 -1
  14. package/cjs/components/DatePickerInput/DatePickerInput.cjs.map +1 -1
  15. package/cjs/components/DateTimePicker/DateTimePicker.cjs +9 -2
  16. package/cjs/components/DateTimePicker/DateTimePicker.cjs.map +1 -1
  17. package/cjs/components/Day/Day.cjs.map +1 -1
  18. package/cjs/components/DecadeLevel/DecadeLevel.cjs +2 -0
  19. package/cjs/components/DecadeLevel/DecadeLevel.cjs.map +1 -1
  20. package/cjs/components/DecadeLevelGroup/DecadeLevelGroup.cjs +3 -1
  21. package/cjs/components/DecadeLevelGroup/DecadeLevelGroup.cjs.map +1 -1
  22. package/cjs/components/LevelsGroup/LevelsGroup.cjs.map +1 -1
  23. package/cjs/components/Month/Month.cjs +5 -1
  24. package/cjs/components/Month/Month.cjs.map +1 -1
  25. package/cjs/components/MonthLevel/MonthLevel.cjs +2 -0
  26. package/cjs/components/MonthLevel/MonthLevel.cjs.map +1 -1
  27. package/cjs/components/MonthLevelGroup/MonthLevelGroup.cjs +3 -1
  28. package/cjs/components/MonthLevelGroup/MonthLevelGroup.cjs.map +1 -1
  29. package/cjs/components/MonthPicker/MonthPicker.cjs.map +1 -1
  30. package/cjs/components/MonthPickerInput/MonthPickerInput.cjs.map +1 -1
  31. package/cjs/components/MonthsList/MonthsList.cjs +5 -1
  32. package/cjs/components/MonthsList/MonthsList.cjs.map +1 -1
  33. package/cjs/components/PickerControl/PickerControl.cjs.map +1 -1
  34. package/cjs/components/PickerInputBase/PickerInputBase.cjs.map +1 -1
  35. package/cjs/components/TimeGrid/TimeGrid.cjs.map +1 -1
  36. package/cjs/components/TimeInput/TimeInput.cjs +6 -2
  37. package/cjs/components/TimeInput/TimeInput.cjs.map +1 -1
  38. package/cjs/components/TimePicker/TimePicker.cjs +216 -223
  39. package/cjs/components/TimePicker/TimePicker.cjs.map +1 -1
  40. package/cjs/components/TimePicker/use-time-picker.cjs +14 -10
  41. package/cjs/components/TimePicker/use-time-picker.cjs.map +1 -1
  42. package/cjs/components/WeekdaysRow/WeekdaysRow.cjs.map +1 -1
  43. package/cjs/components/YearLevel/YearLevel.cjs +2 -0
  44. package/cjs/components/YearLevel/YearLevel.cjs.map +1 -1
  45. package/cjs/components/YearLevelGroup/YearLevelGroup.cjs +3 -1
  46. package/cjs/components/YearLevelGroup/YearLevelGroup.cjs.map +1 -1
  47. package/cjs/components/YearPicker/YearPicker.cjs.map +1 -1
  48. package/cjs/components/YearPickerInput/YearPickerInput.cjs.map +1 -1
  49. package/cjs/components/YearsList/YearsList.cjs +5 -1
  50. package/cjs/components/YearsList/YearsList.cjs.map +1 -1
  51. package/esm/components/Calendar/Calendar.mjs +13 -1
  52. package/esm/components/Calendar/Calendar.mjs.map +1 -1
  53. package/esm/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.mjs +5 -0
  54. package/esm/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.mjs.map +1 -1
  55. package/esm/components/CalendarHeader/CalendarHeader.mjs +77 -62
  56. package/esm/components/CalendarHeader/CalendarHeader.mjs.map +1 -1
  57. package/esm/components/DateInput/DateInput.mjs +2 -2
  58. package/esm/components/DateInput/DateInput.mjs.map +1 -1
  59. package/esm/components/DatePicker/DatePicker.mjs +85 -29
  60. package/esm/components/DatePicker/DatePicker.mjs.map +1 -1
  61. package/esm/components/DatePicker/DatePicker.module.css.mjs +5 -0
  62. package/esm/components/DatePicker/DatePicker.module.css.mjs.map +1 -0
  63. package/esm/components/DatePickerInput/DatePickerInput.mjs +3 -1
  64. package/esm/components/DatePickerInput/DatePickerInput.mjs.map +1 -1
  65. package/esm/components/DateTimePicker/DateTimePicker.mjs +9 -2
  66. package/esm/components/DateTimePicker/DateTimePicker.mjs.map +1 -1
  67. package/esm/components/Day/Day.mjs.map +1 -1
  68. package/esm/components/DecadeLevel/DecadeLevel.mjs +2 -0
  69. package/esm/components/DecadeLevel/DecadeLevel.mjs.map +1 -1
  70. package/esm/components/DecadeLevelGroup/DecadeLevelGroup.mjs +3 -1
  71. package/esm/components/DecadeLevelGroup/DecadeLevelGroup.mjs.map +1 -1
  72. package/esm/components/LevelsGroup/LevelsGroup.mjs.map +1 -1
  73. package/esm/components/Month/Month.mjs +5 -1
  74. package/esm/components/Month/Month.mjs.map +1 -1
  75. package/esm/components/MonthLevel/MonthLevel.mjs +2 -0
  76. package/esm/components/MonthLevel/MonthLevel.mjs.map +1 -1
  77. package/esm/components/MonthLevelGroup/MonthLevelGroup.mjs +3 -1
  78. package/esm/components/MonthLevelGroup/MonthLevelGroup.mjs.map +1 -1
  79. package/esm/components/MonthPicker/MonthPicker.mjs.map +1 -1
  80. package/esm/components/MonthPickerInput/MonthPickerInput.mjs.map +1 -1
  81. package/esm/components/MonthsList/MonthsList.mjs +5 -1
  82. package/esm/components/MonthsList/MonthsList.mjs.map +1 -1
  83. package/esm/components/PickerControl/PickerControl.mjs.map +1 -1
  84. package/esm/components/PickerInputBase/PickerInputBase.mjs.map +1 -1
  85. package/esm/components/TimeGrid/TimeGrid.mjs.map +1 -1
  86. package/esm/components/TimeInput/TimeInput.mjs +6 -2
  87. package/esm/components/TimeInput/TimeInput.mjs.map +1 -1
  88. package/esm/components/TimePicker/TimePicker.mjs +216 -223
  89. package/esm/components/TimePicker/TimePicker.mjs.map +1 -1
  90. package/esm/components/TimePicker/use-time-picker.mjs +16 -12
  91. package/esm/components/TimePicker/use-time-picker.mjs.map +1 -1
  92. package/esm/components/WeekdaysRow/WeekdaysRow.mjs.map +1 -1
  93. package/esm/components/YearLevel/YearLevel.mjs +2 -0
  94. package/esm/components/YearLevel/YearLevel.mjs.map +1 -1
  95. package/esm/components/YearLevelGroup/YearLevelGroup.mjs +3 -1
  96. package/esm/components/YearLevelGroup/YearLevelGroup.mjs.map +1 -1
  97. package/esm/components/YearPicker/YearPicker.mjs.map +1 -1
  98. package/esm/components/YearPickerInput/YearPickerInput.mjs.map +1 -1
  99. package/esm/components/YearsList/YearsList.mjs +5 -1
  100. package/esm/components/YearsList/YearsList.mjs.map +1 -1
  101. package/lib/components/Calendar/Calendar.d.ts +4 -0
  102. package/lib/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.d.ts +3 -1
  103. package/lib/components/CalendarHeader/CalendarHeader.d.ts +2 -0
  104. package/lib/components/DatePicker/DatePicker.d.ts +13 -2
  105. package/lib/components/DatePicker/index.d.ts +1 -1
  106. package/lib/components/DateTimePicker/DateTimePicker.d.ts +5 -0
  107. package/lib/hooks/use-dates-input/use-dates-input.d.ts +1 -5
  108. package/lib/types/DatePickerValue.d.ts +2 -2
  109. package/package.json +3 -3
  110. package/styles.css +48 -0
  111. package/styles.layer.css +48 -0
@@ -21,7 +21,6 @@ const defaultProps = {
21
21
  secondsStep: 1,
22
22
  format: "24h",
23
23
  amPmLabels: { am: "AM", pm: "PM" },
24
- withDropdown: false,
25
24
  pasteSplit: getParsedTime.getParsedTime,
26
25
  maxDropdownContentHeight: 200
27
26
  };
@@ -136,250 +135,244 @@ const TimePicker = core.factory((_props, ref) => {
136
135
  onBlur?.(event);
137
136
  }
138
137
  };
139
- return /* @__PURE__ */ jsxRuntime.jsx(
140
- TimePicker_context.TimePickerProvider,
138
+ return /* @__PURE__ */ jsxRuntime.jsx(TimePicker_context.TimePickerProvider, { value: { getStyles, scrollAreaProps, maxDropdownContentHeight }, children: /* @__PURE__ */ jsxRuntime.jsxs(
139
+ core.Popover,
141
140
  {
142
- value: { getStyles, scrollAreaProps, maxDropdownContentHeight },
143
- children: /* @__PURE__ */ jsxRuntime.jsxs(
144
- core.Popover,
145
- {
146
- opened: withDropdown && !readOnly && dropdownOpened,
147
- transitionProps: { duration: 0 },
148
- position: "bottom-start",
149
- withRoles: false,
150
- ...popoverProps,
151
- children: [
152
- /* @__PURE__ */ jsxRuntime.jsx(core.Popover.Target, { children: /* @__PURE__ */ jsxRuntime.jsxs(
153
- core.InputBase,
141
+ opened: withDropdown && !readOnly && dropdownOpened,
142
+ transitionProps: { duration: 0 },
143
+ position: "bottom-start",
144
+ withRoles: false,
145
+ ...popoverProps,
146
+ children: [
147
+ /* @__PURE__ */ jsxRuntime.jsx(core.Popover.Target, { children: /* @__PURE__ */ jsxRuntime.jsxs(
148
+ core.InputBase,
149
+ {
150
+ component: "div",
151
+ size,
152
+ disabled,
153
+ ref,
154
+ onClick: (event) => {
155
+ onClick?.(event);
156
+ controller.focus("hours");
157
+ },
158
+ onMouseDown: (event) => {
159
+ event.preventDefault();
160
+ onMouseDown?.(event);
161
+ },
162
+ onFocusCapture: (event) => {
163
+ setDropdownOpened(true);
164
+ onFocusCapture?.(event);
165
+ },
166
+ onBlurCapture: (event) => {
167
+ setDropdownOpened(false);
168
+ onBlurCapture?.(event);
169
+ },
170
+ rightSection: rightSection || controller.isClearable && /* @__PURE__ */ jsxRuntime.jsx(
171
+ core.CloseButton,
154
172
  {
155
- component: "div",
173
+ ...clearButtonProps,
156
174
  size,
157
- disabled,
158
- ref,
159
175
  onClick: (event) => {
160
- onClick?.(event);
161
- controller.focus("hours");
176
+ controller.clear();
177
+ clearButtonProps?.onClick?.(event);
162
178
  },
163
179
  onMouseDown: (event) => {
164
180
  event.preventDefault();
165
- onMouseDown?.(event);
166
- },
167
- onFocusCapture: (event) => {
168
- setDropdownOpened(true);
169
- onFocusCapture?.(event);
170
- },
171
- onBlurCapture: (event) => {
172
- setDropdownOpened(false);
173
- onBlurCapture?.(event);
174
- },
175
- rightSection: rightSection || controller.isClearable && /* @__PURE__ */ jsxRuntime.jsx(
176
- core.CloseButton,
181
+ clearButtonProps?.onMouseDown?.(event);
182
+ }
183
+ }
184
+ ),
185
+ labelProps: { htmlFor: hoursInputId, ...labelProps },
186
+ style,
187
+ className,
188
+ classNames: resolvedClassNames,
189
+ styles: resolvedStyles,
190
+ __staticSelector: "TimePicker",
191
+ ...others,
192
+ children: [
193
+ /* @__PURE__ */ jsxRuntime.jsx("div", { ...getStyles("fieldsRoot"), dir: "ltr", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { ...getStyles("fieldsGroup"), onBlur: handleBlur, children: [
194
+ /* @__PURE__ */ jsxRuntime.jsx(
195
+ SpinInput.SpinInput,
177
196
  {
178
- ...clearButtonProps,
179
- size,
180
- onClick: (event) => {
181
- controller.clear();
182
- clearButtonProps?.onClick?.(event);
183
- },
184
- onMouseDown: (event) => {
185
- event.preventDefault();
186
- clearButtonProps?.onMouseDown?.(event);
197
+ id: hoursInputId,
198
+ ...hoursInputProps,
199
+ ...getStyles("field", {
200
+ className: hoursInputProps?.className,
201
+ style: hoursInputProps?.style
202
+ }),
203
+ value: controller.values.hours,
204
+ onChange: controller.setHours,
205
+ onNextInput: () => controller.focus("minutes"),
206
+ min: format === "12h" ? 1 : 0,
207
+ max: format === "12h" ? 12 : 23,
208
+ focusable: true,
209
+ step: hoursStep,
210
+ ref: _hoursRef,
211
+ "aria-label": hoursInputLabel,
212
+ readOnly,
213
+ disabled,
214
+ onPaste: controller.onPaste,
215
+ onFocus: (event) => {
216
+ handleFocus(event);
217
+ hoursInputProps?.onFocus?.(event);
187
218
  }
188
219
  }
189
220
  ),
190
- labelProps: { htmlFor: hoursInputId, ...labelProps },
191
- style,
192
- className,
193
- classNames: resolvedClassNames,
194
- styles: resolvedStyles,
195
- __staticSelector: "TimePicker",
196
- ...others,
197
- children: [
198
- /* @__PURE__ */ jsxRuntime.jsx("div", { ...getStyles("fieldsRoot"), dir: "ltr", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { ...getStyles("fieldsGroup"), onBlur: handleBlur, children: [
199
- /* @__PURE__ */ jsxRuntime.jsx(
200
- SpinInput.SpinInput,
201
- {
202
- id: hoursInputId,
203
- ...hoursInputProps,
204
- ...getStyles("field", {
205
- className: hoursInputProps?.className,
206
- style: hoursInputProps?.style
207
- }),
208
- value: controller.values.hours,
209
- onChange: controller.setHours,
210
- onNextInput: () => controller.focus("minutes"),
211
- min: format === "12h" ? 1 : 0,
212
- max: format === "12h" ? 12 : 23,
213
- focusable: true,
214
- step: hoursStep,
215
- ref: _hoursRef,
216
- "aria-label": hoursInputLabel,
217
- readOnly,
218
- disabled,
219
- onPaste: controller.onPaste,
220
- onFocus: (event) => {
221
- handleFocus(event);
222
- hoursInputProps?.onFocus?.(event);
223
- }
224
- }
225
- ),
226
- /* @__PURE__ */ jsxRuntime.jsx("span", { children: ":" }),
227
- /* @__PURE__ */ jsxRuntime.jsx(
228
- SpinInput.SpinInput,
229
- {
230
- ...minutesInputProps,
231
- ...getStyles("field", {
232
- className: minutesInputProps?.className,
233
- style: minutesInputProps?.style
234
- }),
235
- value: controller.values.minutes,
236
- onChange: controller.setMinutes,
237
- min: 0,
238
- max: 59,
239
- focusable: true,
240
- step: minutesStep,
241
- ref: _minutesRef,
242
- onPreviousInput: () => controller.focus("hours"),
243
- onNextInput: () => withSeconds ? controller.focus("seconds") : controller.focus("amPm"),
244
- "aria-label": minutesInputLabel,
245
- tabIndex: -1,
246
- readOnly,
247
- disabled,
248
- onPaste: controller.onPaste,
249
- onFocus: (event) => {
250
- handleFocus(event);
251
- minutesInputProps?.onFocus?.(event);
252
- }
253
- }
254
- ),
255
- withSeconds && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
256
- /* @__PURE__ */ jsxRuntime.jsx("span", { children: ":" }),
257
- /* @__PURE__ */ jsxRuntime.jsx(
258
- SpinInput.SpinInput,
259
- {
260
- ...secondsInputProps,
261
- ...getStyles("field", {
262
- className: secondsInputProps?.className,
263
- style: secondsInputProps?.style
264
- }),
265
- value: controller.values.seconds,
266
- onChange: controller.setSeconds,
267
- min: 0,
268
- max: 59,
269
- focusable: true,
270
- step: secondsStep,
271
- ref: _secondsRef,
272
- onPreviousInput: () => controller.focus("minutes"),
273
- onNextInput: () => controller.focus("amPm"),
274
- "aria-label": secondsInputLabel,
275
- tabIndex: -1,
276
- readOnly,
277
- disabled,
278
- onPaste: controller.onPaste,
279
- onFocus: (event) => {
280
- handleFocus(event);
281
- secondsInputProps?.onFocus?.(event);
282
- }
283
- }
284
- )
285
- ] }),
286
- format === "12h" && /* @__PURE__ */ jsxRuntime.jsx(
287
- AmPmInput.AmPmInput,
288
- {
289
- ...amPmSelectProps,
290
- inputType: withDropdown ? "input" : "select",
291
- labels: amPmLabels,
292
- value: controller.values.amPm,
293
- onChange: controller.setAmPm,
294
- ref: _amPmRef,
295
- "aria-label": amPmInputLabel,
296
- onPreviousInput: () => withSeconds ? controller.focus("seconds") : controller.focus("minutes"),
297
- readOnly,
298
- disabled,
299
- tabIndex: -1,
300
- onPaste: controller.onPaste,
301
- onFocus: (event) => {
302
- handleFocus(event);
303
- amPmSelectProps?.onFocus?.(event);
304
- }
305
- }
306
- )
307
- ] }) }),
308
- /* @__PURE__ */ jsxRuntime.jsx(
309
- "input",
310
- {
311
- type: "hidden",
312
- name,
313
- form,
314
- value: controller.hiddenInputValue,
315
- ...hiddenInputProps
316
- }
317
- )
318
- ]
319
- }
320
- ) }),
321
- /* @__PURE__ */ jsxRuntime.jsx(
322
- core.Popover.Dropdown,
323
- {
324
- ...getStyles("dropdown"),
325
- onMouseDown: (event) => event.preventDefault(),
326
- children: presets ? /* @__PURE__ */ jsxRuntime.jsx(
327
- TimePresets.TimePresets,
221
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: ":" }),
222
+ /* @__PURE__ */ jsxRuntime.jsx(
223
+ SpinInput.SpinInput,
328
224
  {
329
- value: controller.hiddenInputValue,
330
- onChange: controller.setTimeString,
331
- format,
332
- presets,
333
- amPmLabels,
334
- withSeconds: withSeconds || false
335
- }
336
- ) : /* @__PURE__ */ jsxRuntime.jsxs("div", { ...getStyles("controlsListGroup"), children: [
337
- /* @__PURE__ */ jsxRuntime.jsx(
338
- TimeControlsList.TimeControlsList,
339
- {
340
- min: format === "12h" ? 1 : 0,
341
- max: format === "12h" ? 12 : 23,
342
- step: hoursStep,
343
- value: controller.values.hours,
344
- onSelect: controller.setHours
225
+ ...minutesInputProps,
226
+ ...getStyles("field", {
227
+ className: minutesInputProps?.className,
228
+ style: minutesInputProps?.style
229
+ }),
230
+ value: controller.values.minutes,
231
+ onChange: controller.setMinutes,
232
+ min: 0,
233
+ max: 59,
234
+ focusable: true,
235
+ step: minutesStep,
236
+ ref: _minutesRef,
237
+ onPreviousInput: () => controller.focus("hours"),
238
+ onNextInput: () => withSeconds ? controller.focus("seconds") : controller.focus("amPm"),
239
+ "aria-label": minutesInputLabel,
240
+ tabIndex: -1,
241
+ readOnly,
242
+ disabled,
243
+ onPaste: controller.onPaste,
244
+ onFocus: (event) => {
245
+ handleFocus(event);
246
+ minutesInputProps?.onFocus?.(event);
345
247
  }
346
- ),
248
+ }
249
+ ),
250
+ withSeconds && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
251
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: ":" }),
347
252
  /* @__PURE__ */ jsxRuntime.jsx(
348
- TimeControlsList.TimeControlsList,
349
- {
350
- min: 0,
351
- max: 59,
352
- step: minutesStep,
353
- value: controller.values.minutes,
354
- onSelect: controller.setMinutes
355
- }
356
- ),
357
- withSeconds && /* @__PURE__ */ jsxRuntime.jsx(
358
- TimeControlsList.TimeControlsList,
253
+ SpinInput.SpinInput,
359
254
  {
255
+ ...secondsInputProps,
256
+ ...getStyles("field", {
257
+ className: secondsInputProps?.className,
258
+ style: secondsInputProps?.style
259
+ }),
260
+ value: controller.values.seconds,
261
+ onChange: controller.setSeconds,
360
262
  min: 0,
361
263
  max: 59,
264
+ focusable: true,
362
265
  step: secondsStep,
363
- value: controller.values.seconds,
364
- onSelect: controller.setSeconds
365
- }
366
- ),
367
- format === "12h" && /* @__PURE__ */ jsxRuntime.jsx(
368
- AmPmControlsList.AmPmControlsList,
369
- {
370
- labels: amPmLabels,
371
- value: controller.values.amPm,
372
- onSelect: controller.setAmPm
266
+ ref: _secondsRef,
267
+ onPreviousInput: () => controller.focus("minutes"),
268
+ onNextInput: () => controller.focus("amPm"),
269
+ "aria-label": secondsInputLabel,
270
+ tabIndex: -1,
271
+ readOnly,
272
+ disabled,
273
+ onPaste: controller.onPaste,
274
+ onFocus: (event) => {
275
+ handleFocus(event);
276
+ secondsInputProps?.onFocus?.(event);
277
+ }
373
278
  }
374
279
  )
375
- ] })
280
+ ] }),
281
+ format === "12h" && /* @__PURE__ */ jsxRuntime.jsx(
282
+ AmPmInput.AmPmInput,
283
+ {
284
+ ...amPmSelectProps,
285
+ inputType: withDropdown ? "input" : "select",
286
+ labels: amPmLabels,
287
+ value: controller.values.amPm,
288
+ onChange: controller.setAmPm,
289
+ ref: _amPmRef,
290
+ "aria-label": amPmInputLabel,
291
+ onPreviousInput: () => withSeconds ? controller.focus("seconds") : controller.focus("minutes"),
292
+ readOnly,
293
+ disabled,
294
+ tabIndex: -1,
295
+ onPaste: controller.onPaste,
296
+ onFocus: (event) => {
297
+ handleFocus(event);
298
+ amPmSelectProps?.onFocus?.(event);
299
+ }
300
+ }
301
+ )
302
+ ] }) }),
303
+ /* @__PURE__ */ jsxRuntime.jsx(
304
+ "input",
305
+ {
306
+ type: "hidden",
307
+ name,
308
+ form,
309
+ value: controller.hiddenInputValue,
310
+ ...hiddenInputProps
311
+ }
312
+ )
313
+ ]
314
+ }
315
+ ) }),
316
+ /* @__PURE__ */ jsxRuntime.jsx(
317
+ core.Popover.Dropdown,
318
+ {
319
+ ...getStyles("dropdown"),
320
+ onMouseDown: (event) => event.preventDefault(),
321
+ children: presets ? /* @__PURE__ */ jsxRuntime.jsx(
322
+ TimePresets.TimePresets,
323
+ {
324
+ value: controller.hiddenInputValue,
325
+ onChange: controller.setTimeString,
326
+ format,
327
+ presets,
328
+ amPmLabels,
329
+ withSeconds: withSeconds || false
376
330
  }
377
- )
378
- ]
379
- }
380
- )
331
+ ) : /* @__PURE__ */ jsxRuntime.jsxs("div", { ...getStyles("controlsListGroup"), children: [
332
+ /* @__PURE__ */ jsxRuntime.jsx(
333
+ TimeControlsList.TimeControlsList,
334
+ {
335
+ min: format === "12h" ? 1 : 0,
336
+ max: format === "12h" ? 12 : 23,
337
+ step: hoursStep,
338
+ value: controller.values.hours,
339
+ onSelect: controller.setHours
340
+ }
341
+ ),
342
+ /* @__PURE__ */ jsxRuntime.jsx(
343
+ TimeControlsList.TimeControlsList,
344
+ {
345
+ min: 0,
346
+ max: 59,
347
+ step: minutesStep,
348
+ value: controller.values.minutes,
349
+ onSelect: controller.setMinutes
350
+ }
351
+ ),
352
+ withSeconds && /* @__PURE__ */ jsxRuntime.jsx(
353
+ TimeControlsList.TimeControlsList,
354
+ {
355
+ min: 0,
356
+ max: 59,
357
+ step: secondsStep,
358
+ value: controller.values.seconds,
359
+ onSelect: controller.setSeconds
360
+ }
361
+ ),
362
+ format === "12h" && /* @__PURE__ */ jsxRuntime.jsx(
363
+ AmPmControlsList.AmPmControlsList,
364
+ {
365
+ labels: amPmLabels,
366
+ value: controller.values.amPm,
367
+ onSelect: controller.setAmPm
368
+ }
369
+ )
370
+ ] })
371
+ }
372
+ )
373
+ ]
381
374
  }
382
- );
375
+ ) });
383
376
  });
384
377
  TimePicker.displayName = "@mantine/dates/TimePicker";
385
378
  TimePicker.classes = TimePicker_module;