@mantine/dates 4.2.8 → 5.0.0-alpha.10

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 (148) hide show
  1. package/cjs/components/Calendar/Calendar.js +1 -1
  2. package/cjs/components/Calendar/Calendar.js.map +1 -1
  3. package/cjs/components/CalendarBase/CalendarBase.js +13 -9
  4. package/cjs/components/CalendarBase/CalendarBase.js.map +1 -1
  5. package/cjs/components/CalendarBase/CalendarHeader/CalendarHeader.js +9 -4
  6. package/cjs/components/CalendarBase/CalendarHeader/CalendarHeader.js.map +1 -1
  7. package/cjs/components/CalendarBase/MonthPicker/MonthPicker.js +8 -4
  8. package/cjs/components/CalendarBase/MonthPicker/MonthPicker.js.map +1 -1
  9. package/cjs/components/CalendarBase/MonthsList/MonthsList.js +8 -4
  10. package/cjs/components/CalendarBase/MonthsList/MonthsList.js.map +1 -1
  11. package/cjs/components/CalendarBase/YearPicker/YearPicker.js +7 -3
  12. package/cjs/components/CalendarBase/YearPicker/YearPicker.js.map +1 -1
  13. package/cjs/components/DatePicker/DatePicker.js +11 -8
  14. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  15. package/cjs/components/DatePickerBase/DatePickerBase.js +59 -50
  16. package/cjs/components/DatePickerBase/DatePickerBase.js.map +1 -1
  17. package/cjs/components/DatePickerBase/DatePickerBase.styles.js +1 -25
  18. package/cjs/components/DatePickerBase/DatePickerBase.styles.js.map +1 -1
  19. package/cjs/components/DateRangePicker/DateRangePicker.js +10 -7
  20. package/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
  21. package/cjs/components/Month/Day/Day.js +15 -11
  22. package/cjs/components/Month/Day/Day.js.map +1 -1
  23. package/cjs/components/Month/Day/Day.styles.js +47 -61
  24. package/cjs/components/Month/Day/Day.styles.js.map +1 -1
  25. package/cjs/components/Month/Month.js +18 -11
  26. package/cjs/components/Month/Month.js.map +1 -1
  27. package/cjs/components/Month/get-day-props/get-day-props.js +3 -2
  28. package/cjs/components/Month/get-day-props/get-day-props.js.map +1 -1
  29. package/cjs/components/Month/get-day-props/is-weekend/is-weekend.js +2 -3
  30. package/cjs/components/Month/get-day-props/is-weekend/is-weekend.js.map +1 -1
  31. package/cjs/components/RangeCalendar/RangeCalendar.js +1 -1
  32. package/cjs/components/RangeCalendar/RangeCalendar.js.map +1 -1
  33. package/cjs/components/TimeInput/TimeInput.js +36 -17
  34. package/cjs/components/TimeInput/TimeInput.js.map +1 -1
  35. package/cjs/components/TimeInput/TimeInput.styles.js +1 -0
  36. package/cjs/components/TimeInput/TimeInput.styles.js.map +1 -1
  37. package/cjs/components/TimeInputBase/AmPmInput/AmPmInput.js +25 -7
  38. package/cjs/components/TimeInputBase/AmPmInput/AmPmInput.js.map +1 -1
  39. package/cjs/components/TimeInputBase/TimeField/TimeField.js +10 -7
  40. package/cjs/components/TimeInputBase/TimeField/TimeField.js.map +1 -1
  41. package/cjs/components/TimeInputBase/TimeInputBase.styles.js +7 -2
  42. package/cjs/components/TimeInputBase/TimeInputBase.styles.js.map +1 -1
  43. package/cjs/components/TimeInputBase/create-amPm-handler/create-amPm-handler.js +3 -3
  44. package/cjs/components/TimeInputBase/create-amPm-handler/create-amPm-handler.js.map +1 -1
  45. package/cjs/components/TimeInputBase/create-time-handler/create-time-handler.js +1 -1
  46. package/cjs/components/TimeInputBase/create-time-handler/create-time-handler.js.map +1 -1
  47. package/cjs/components/TimeInputBase/get-date/get-date.js +2 -2
  48. package/cjs/components/TimeInputBase/get-date/get-date.js.map +1 -1
  49. package/cjs/components/TimeInputBase/get-time-values/get-time-value.js +2 -2
  50. package/cjs/components/TimeInputBase/get-time-values/get-time-value.js.map +1 -1
  51. package/cjs/components/TimeRangeInput/TimeRangeInput.js +18 -11
  52. package/cjs/components/TimeRangeInput/TimeRangeInput.js.map +1 -1
  53. package/esm/components/Calendar/Calendar.js +2 -2
  54. package/esm/components/Calendar/Calendar.js.map +1 -1
  55. package/esm/components/CalendarBase/CalendarBase.js +13 -9
  56. package/esm/components/CalendarBase/CalendarBase.js.map +1 -1
  57. package/esm/components/CalendarBase/CalendarHeader/CalendarHeader.js +9 -4
  58. package/esm/components/CalendarBase/CalendarHeader/CalendarHeader.js.map +1 -1
  59. package/esm/components/CalendarBase/MonthPicker/MonthPicker.js +8 -4
  60. package/esm/components/CalendarBase/MonthPicker/MonthPicker.js.map +1 -1
  61. package/esm/components/CalendarBase/MonthsList/MonthsList.js +8 -4
  62. package/esm/components/CalendarBase/MonthsList/MonthsList.js.map +1 -1
  63. package/esm/components/CalendarBase/YearPicker/YearPicker.js +7 -3
  64. package/esm/components/CalendarBase/YearPicker/YearPicker.js.map +1 -1
  65. package/esm/components/DatePicker/DatePicker.js +12 -9
  66. package/esm/components/DatePicker/DatePicker.js.map +1 -1
  67. package/esm/components/DatePickerBase/DatePickerBase.js +62 -53
  68. package/esm/components/DatePickerBase/DatePickerBase.js.map +1 -1
  69. package/esm/components/DatePickerBase/DatePickerBase.styles.js +2 -26
  70. package/esm/components/DatePickerBase/DatePickerBase.styles.js.map +1 -1
  71. package/esm/components/DateRangePicker/DateRangePicker.js +11 -8
  72. package/esm/components/DateRangePicker/DateRangePicker.js.map +1 -1
  73. package/esm/components/Month/Day/Day.js +15 -11
  74. package/esm/components/Month/Day/Day.js.map +1 -1
  75. package/esm/components/Month/Day/Day.styles.js +47 -61
  76. package/esm/components/Month/Day/Day.styles.js.map +1 -1
  77. package/esm/components/Month/Month.js +19 -12
  78. package/esm/components/Month/Month.js.map +1 -1
  79. package/esm/components/Month/get-day-props/get-day-props.js +3 -2
  80. package/esm/components/Month/get-day-props/get-day-props.js.map +1 -1
  81. package/esm/components/Month/get-day-props/is-weekend/is-weekend.js +2 -3
  82. package/esm/components/Month/get-day-props/is-weekend/is-weekend.js.map +1 -1
  83. package/esm/components/RangeCalendar/RangeCalendar.js +2 -2
  84. package/esm/components/RangeCalendar/RangeCalendar.js.map +1 -1
  85. package/esm/components/TimeInput/TimeInput.js +38 -19
  86. package/esm/components/TimeInput/TimeInput.js.map +1 -1
  87. package/esm/components/TimeInput/TimeInput.styles.js +1 -0
  88. package/esm/components/TimeInput/TimeInput.styles.js.map +1 -1
  89. package/esm/components/TimeInputBase/AmPmInput/AmPmInput.js +25 -7
  90. package/esm/components/TimeInputBase/AmPmInput/AmPmInput.js.map +1 -1
  91. package/esm/components/TimeInputBase/TimeField/TimeField.js +10 -7
  92. package/esm/components/TimeInputBase/TimeField/TimeField.js.map +1 -1
  93. package/esm/components/TimeInputBase/TimeInputBase.styles.js +7 -2
  94. package/esm/components/TimeInputBase/TimeInputBase.styles.js.map +1 -1
  95. package/esm/components/TimeInputBase/create-amPm-handler/create-amPm-handler.js +3 -3
  96. package/esm/components/TimeInputBase/create-amPm-handler/create-amPm-handler.js.map +1 -1
  97. package/esm/components/TimeInputBase/create-time-handler/create-time-handler.js +1 -1
  98. package/esm/components/TimeInputBase/create-time-handler/create-time-handler.js.map +1 -1
  99. package/esm/components/TimeInputBase/get-date/get-date.js +2 -2
  100. package/esm/components/TimeInputBase/get-date/get-date.js.map +1 -1
  101. package/esm/components/TimeInputBase/get-time-values/get-time-value.js +2 -2
  102. package/esm/components/TimeInputBase/get-time-values/get-time-value.js.map +1 -1
  103. package/esm/components/TimeRangeInput/TimeRangeInput.js +20 -13
  104. package/esm/components/TimeRangeInput/TimeRangeInput.js.map +1 -1
  105. package/lib/components/CalendarBase/CalendarBase.d.ts.map +1 -1
  106. package/lib/components/CalendarBase/CalendarHeader/CalendarHeader.d.ts +1 -1
  107. package/lib/components/CalendarBase/CalendarHeader/CalendarHeader.d.ts.map +1 -1
  108. package/lib/components/CalendarBase/MonthPicker/MonthPicker.d.ts +1 -1
  109. package/lib/components/CalendarBase/MonthPicker/MonthPicker.d.ts.map +1 -1
  110. package/lib/components/CalendarBase/MonthsList/MonthsList.d.ts +1 -1
  111. package/lib/components/CalendarBase/MonthsList/MonthsList.d.ts.map +1 -1
  112. package/lib/components/CalendarBase/YearPicker/YearPicker.d.ts +1 -1
  113. package/lib/components/CalendarBase/YearPicker/YearPicker.d.ts.map +1 -1
  114. package/lib/components/DatePicker/DatePicker.d.ts.map +1 -1
  115. package/lib/components/DatePickerBase/DatePickerBase.d.ts +7 -9
  116. package/lib/components/DatePickerBase/DatePickerBase.d.ts.map +1 -1
  117. package/lib/components/DatePickerBase/DatePickerBase.styles.d.ts +2 -7
  118. package/lib/components/DatePickerBase/DatePickerBase.styles.d.ts.map +1 -1
  119. package/lib/components/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  120. package/lib/components/Month/Day/Day.d.ts.map +1 -1
  121. package/lib/components/Month/Day/Day.styles.d.ts +2 -2
  122. package/lib/components/Month/Day/Day.styles.d.ts.map +1 -1
  123. package/lib/components/Month/Month.d.ts +2 -0
  124. package/lib/components/Month/Month.d.ts.map +1 -1
  125. package/lib/components/Month/get-day-props/get-day-props.d.ts +3 -1
  126. package/lib/components/Month/get-day-props/get-day-props.d.ts.map +1 -1
  127. package/lib/components/Month/get-day-props/is-weekend/is-weekend.d.ts +1 -1
  128. package/lib/components/Month/get-day-props/is-weekend/is-weekend.d.ts.map +1 -1
  129. package/lib/components/TimeInput/TimeInput.d.ts +6 -2
  130. package/lib/components/TimeInput/TimeInput.d.ts.map +1 -1
  131. package/lib/components/TimeInput/TimeInput.styles.d.ts +2 -2
  132. package/lib/components/TimeInput/TimeInput.styles.d.ts.map +1 -1
  133. package/lib/components/TimeInputBase/AmPmInput/AmPmInput.d.ts +5 -0
  134. package/lib/components/TimeInputBase/AmPmInput/AmPmInput.d.ts.map +1 -1
  135. package/lib/components/TimeInputBase/TimeField/TimeField.d.ts +1 -0
  136. package/lib/components/TimeInputBase/TimeField/TimeField.d.ts.map +1 -1
  137. package/lib/components/TimeInputBase/TimeInputBase.styles.d.ts +2 -2
  138. package/lib/components/TimeInputBase/TimeInputBase.styles.d.ts.map +1 -1
  139. package/lib/components/TimeInputBase/create-amPm-handler/create-amPm-handler.d.ts +3 -1
  140. package/lib/components/TimeInputBase/create-amPm-handler/create-amPm-handler.d.ts.map +1 -1
  141. package/lib/components/TimeInputBase/get-date/get-date.d.ts +1 -1
  142. package/lib/components/TimeInputBase/get-date/get-date.d.ts.map +1 -1
  143. package/lib/components/TimeInputBase/get-time-values/get-time-value.d.ts +1 -1
  144. package/lib/components/TimeInputBase/get-time-values/get-time-value.d.ts.map +1 -1
  145. package/lib/components/TimeRangeInput/TimeRangeInput.d.ts +2 -2
  146. package/lib/components/TimeRangeInput/TimeRangeInput.d.ts.map +1 -1
  147. package/lib/components/TimeRangeInput/TimeRangeInput.styles.d.ts +2 -2
  148. package/package.json +4 -3
@@ -60,12 +60,14 @@ const defaultProps = {
60
60
  withSeconds: false,
61
61
  clearable: false,
62
62
  format: "24",
63
+ amLabel: "am",
64
+ pmLabel: "pm",
63
65
  timePlaceholder: "--",
64
66
  amPmPlaceholder: "am",
65
67
  disabled: false
66
68
  };
67
69
  const TimeInput = React.forwardRef((props, ref) => {
68
- const _a = core.useMantineDefaultProps("TimeInput", defaultProps, props), {
70
+ const _a = core.useComponentDefaultProps("TimeInput", defaultProps, props), {
69
71
  required,
70
72
  label,
71
73
  error,
@@ -84,6 +86,8 @@ const TimeInput = React.forwardRef((props, ref) => {
84
86
  clearable,
85
87
  clearButtonLabel,
86
88
  format,
89
+ amLabel,
90
+ pmLabel,
87
91
  name,
88
92
  hoursLabel,
89
93
  minutesLabel,
@@ -96,7 +100,8 @@ const TimeInput = React.forwardRef((props, ref) => {
96
100
  nextRef,
97
101
  labelProps,
98
102
  descriptionProps,
99
- errorProps
103
+ errorProps,
104
+ unstyled
100
105
  } = _a, others = __objRest(_a, [
101
106
  "required",
102
107
  "label",
@@ -116,6 +121,8 @@ const TimeInput = React.forwardRef((props, ref) => {
116
121
  "clearable",
117
122
  "clearButtonLabel",
118
123
  "format",
124
+ "amLabel",
125
+ "pmLabel",
119
126
  "name",
120
127
  "hoursLabel",
121
128
  "minutesLabel",
@@ -128,20 +135,21 @@ const TimeInput = React.forwardRef((props, ref) => {
128
135
  "nextRef",
129
136
  "labelProps",
130
137
  "descriptionProps",
131
- "errorProps"
138
+ "errorProps",
139
+ "unstyled"
132
140
  ]);
133
- const { classes, cx, theme } = TimeInput_styles['default']({ size }, { classNames, styles, name: "TimeInput" });
141
+ const { classes, cx, theme } = TimeInput_styles['default']({ size }, { classNames, styles, unstyled, name: "TimeInput" });
134
142
  const { systemStyles, rest } = core.extractSystemStyles(others);
135
- const uuid = hooks.useUuid(id);
143
+ const uuid = hooks.useId(id);
136
144
  const hoursRef = React.useRef();
137
145
  const minutesRef = React.useRef();
138
146
  const secondsRef = React.useRef();
139
147
  const amPmRef = React.useRef();
140
- const [time, setTime] = React.useState(getTimeValue.getTimeValues(value || defaultValue, format));
148
+ const [time, setTime] = React.useState(getTimeValue.getTimeValues(value || defaultValue, format, amLabel, pmLabel));
141
149
  const [_value, setValue] = React.useState(value || defaultValue);
142
150
  hooks.useDidUpdate(() => {
143
- setTime(getTimeValue.getTimeValues(_value, format));
144
- }, [_value, format]);
151
+ setTime(getTimeValue.getTimeValues(_value, format, amLabel, pmLabel));
152
+ }, [_value, format, amLabel, pmLabel]);
145
153
  hooks.useDidUpdate(() => {
146
154
  if ((value == null ? void 0 : value.getTime()) !== (_value == null ? void 0 : _value.getTime())) {
147
155
  setValue(value);
@@ -149,7 +157,7 @@ const TimeInput = React.forwardRef((props, ref) => {
149
157
  }, [value]);
150
158
  const setDate = (change) => {
151
159
  const timeWithChange = __spreadValues(__spreadValues({}, time), change);
152
- const newDate = getDate.getDate(timeWithChange.hours, timeWithChange.minutes, timeWithChange.seconds, format, timeWithChange.amPm);
160
+ const newDate = getDate.getDate(timeWithChange.hours, timeWithChange.minutes, timeWithChange.seconds, format, pmLabel, timeWithChange.amPm);
153
161
  setValue(newDate);
154
162
  typeof onChange === "function" && onChange(newDate);
155
163
  };
@@ -186,6 +194,8 @@ const TimeInput = React.forwardRef((props, ref) => {
186
194
  nextRef: format === "12" ? amPmRef : nextRef
187
195
  });
188
196
  const handleAmPmChange = createAmPmHandler.createAmPmHandler({
197
+ amLabel,
198
+ pmLabel,
189
199
  onChange: (val) => {
190
200
  setDate({ amPm: val });
191
201
  },
@@ -201,9 +211,10 @@ const TimeInput = React.forwardRef((props, ref) => {
201
211
  variant: "transparent",
202
212
  "aria-label": clearButtonLabel,
203
213
  onClick: handleClear,
204
- size
214
+ size,
215
+ unstyled
205
216
  }) : null;
206
- return /* @__PURE__ */ React__default.createElement(core.InputWrapper, __spreadValues(__spreadValues({
217
+ return /* @__PURE__ */ React__default.createElement(core.Input.Wrapper, __spreadValues(__spreadValues({
207
218
  required,
208
219
  label,
209
220
  error,
@@ -218,7 +229,8 @@ const TimeInput = React.forwardRef((props, ref) => {
218
229
  sx,
219
230
  errorProps,
220
231
  descriptionProps,
221
- labelProps
232
+ labelProps,
233
+ unstyled
222
234
  }, systemStyles), wrapperProps), /* @__PURE__ */ React__default.createElement(core.Input, __spreadValues({
223
235
  component: "div",
224
236
  __staticSelector: "TimeInput",
@@ -231,7 +243,8 @@ const TimeInput = React.forwardRef((props, ref) => {
231
243
  styles,
232
244
  disabled,
233
245
  rightSection,
234
- rightSectionWidth: theme.fn.size({ size, sizes: RIGHT_SECTION_WIDTH })
246
+ rightSectionWidth: theme.fn.size({ size, sizes: RIGHT_SECTION_WIDTH }),
247
+ unstyled
235
248
  }, rest), /* @__PURE__ */ React__default.createElement("div", {
236
249
  className: classes.controls
237
250
  }, /* @__PURE__ */ React__default.createElement(TimeField.TimeField, {
@@ -247,7 +260,8 @@ const TimeInput = React.forwardRef((props, ref) => {
247
260
  placeholder: timePlaceholder,
248
261
  "aria-label": hoursLabel,
249
262
  disabled,
250
- name
263
+ name,
264
+ unstyled
251
265
  }), /* @__PURE__ */ React__default.createElement(TimeField.TimeField, {
252
266
  ref: minutesRef,
253
267
  value: time.minutes,
@@ -259,7 +273,8 @@ const TimeInput = React.forwardRef((props, ref) => {
259
273
  max: 59,
260
274
  placeholder: timePlaceholder,
261
275
  "aria-label": minutesLabel,
262
- disabled
276
+ disabled,
277
+ unstyled
263
278
  }), withSeconds && /* @__PURE__ */ React__default.createElement(TimeField.TimeField, {
264
279
  ref: secondsRef,
265
280
  value: time.seconds,
@@ -270,15 +285,19 @@ const TimeInput = React.forwardRef((props, ref) => {
270
285
  max: 59,
271
286
  placeholder: timePlaceholder,
272
287
  "aria-label": secondsLabel,
273
- disabled
288
+ disabled,
289
+ unstyled
274
290
  }), format === "12" && /* @__PURE__ */ React__default.createElement(AmPmInput.AmPmInput, {
275
291
  ref: amPmRef,
276
292
  value: time.amPm,
277
293
  onChange: handleAmPmChange,
278
294
  placeholder: amPmPlaceholder,
295
+ amLabel,
296
+ pmLabel,
279
297
  size,
280
298
  "aria-label": amPmLabel,
281
- disabled
299
+ disabled,
300
+ unstyled
282
301
  }))));
283
302
  });
284
303
  TimeInput.displayName = "@mantine/dates/TimeInput";
@@ -1 +1 @@
1
- {"version":3,"file":"TimeInput.js","sources":["../../../src/components/TimeInput/TimeInput.tsx"],"sourcesContent":["import React, { useState, useRef, forwardRef } from 'react';\nimport {\n InputBaseProps,\n InputWrapperBaseProps,\n InputStylesNames,\n InputWrapperStylesNames,\n DefaultProps,\n Input,\n InputWrapper,\n MantineSize,\n Selectors,\n CloseButton,\n extractSystemStyles,\n useMantineDefaultProps,\n} from '@mantine/core';\nimport { useDidUpdate, useMergedRef, useUuid } from '@mantine/hooks';\nimport { TimeField } from '../TimeInputBase/TimeField/TimeField';\nimport { createTimeHandler } from '../TimeInputBase/create-time-handler/create-time-handler';\nimport useStyles from './TimeInput.styles';\nimport { AmPmInput } from '../TimeInputBase/AmPmInput/AmPmInput';\nimport { createAmPmHandler } from '../TimeInputBase/create-amPm-handler/create-amPm-handler';\nimport { getDate } from '../TimeInputBase/get-date/get-date';\nimport { getTimeValues } from '../TimeInputBase/get-time-values/get-time-value';\n\nexport type TimeInputStylesNames =\n | Selectors<typeof useStyles>\n | InputStylesNames\n | InputWrapperStylesNames;\n\nexport interface TimeInputProps\n extends DefaultProps<TimeInputStylesNames>,\n InputBaseProps,\n InputWrapperBaseProps,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'onChange' | 'value' | 'defaultValue'> {\n /** Input size */\n size?: MantineSize;\n\n /** Controlled input value */\n value?: Date | null;\n\n /** Uncontrolled input default value */\n defaultValue?: Date | null;\n\n /** Controlled input onChange handler */\n onChange?(value: Date): void;\n\n /** Display seconds input */\n withSeconds?: boolean;\n\n /** Allow to clear item */\n clearable?: boolean;\n\n /** aria-label for clear button */\n clearButtonLabel?: string;\n\n /** Time format */\n format?: '12' | '24';\n\n /** Uncontrolled input name */\n name?: string;\n\n /** aria-label for hours input */\n hoursLabel?: string;\n\n /** aria-label for minutes input */\n minutesLabel?: string;\n\n /** aria-label for seconds input */\n secondsLabel?: string;\n\n /** aria-label for am/pm input */\n amPmLabel?: string;\n\n /** Placeholder for hours/minutes/seconds inputs*/\n timePlaceholder?: string;\n\n /** Placeholder for am/pm input */\n amPmPlaceholder?: string;\n\n /** Disable field */\n disabled?: boolean;\n\n /** Ref to focus after final TimeInput field. Used by TimeRangeInput */\n nextRef?: React.RefObject<HTMLInputElement>;\n}\n\nconst RIGHT_SECTION_WIDTH = {\n xs: 24,\n sm: 30,\n md: 34,\n lg: 40,\n xl: 44,\n};\n\nconst defaultProps: Partial<TimeInputProps> = {\n size: 'sm',\n withSeconds: false,\n clearable: false,\n format: '24',\n timePlaceholder: '--',\n amPmPlaceholder: 'am',\n disabled: false,\n};\n\nexport const TimeInput = forwardRef<HTMLInputElement, TimeInputProps>(\n (props: TimeInputProps, ref) => {\n const {\n required,\n label,\n error,\n description,\n className,\n style,\n size,\n wrapperProps,\n classNames,\n styles,\n id,\n value,\n defaultValue,\n onChange,\n withSeconds,\n clearable,\n clearButtonLabel,\n format,\n name,\n hoursLabel,\n minutesLabel,\n secondsLabel,\n amPmLabel,\n timePlaceholder,\n amPmPlaceholder,\n disabled,\n sx,\n nextRef,\n labelProps,\n descriptionProps,\n errorProps,\n ...others\n } = useMantineDefaultProps('TimeInput', defaultProps, props);\n\n const { classes, cx, theme } = useStyles({ size }, { classNames, styles, name: 'TimeInput' });\n const { systemStyles, rest } = extractSystemStyles(others);\n const uuid = useUuid(id);\n\n const hoursRef = useRef<HTMLInputElement>();\n const minutesRef = useRef<HTMLInputElement>();\n const secondsRef = useRef<HTMLInputElement>();\n const amPmRef = useRef<HTMLInputElement>();\n const [time, setTime] = useState<{\n hours: string;\n minutes: string;\n seconds: string;\n amPm: string;\n }>(getTimeValues(value || defaultValue, format));\n const [_value, setValue] = useState<Date | null>(value || defaultValue);\n\n useDidUpdate(() => {\n setTime(getTimeValues(_value, format));\n }, [_value, format]);\n\n // Allow controlled value prop to override internal _value\n useDidUpdate(() => {\n if (value?.getTime() !== _value?.getTime()) {\n setValue(value);\n }\n }, [value]);\n\n const setDate = (change: Partial<typeof time>) => {\n const timeWithChange = { ...time, ...change };\n const newDate = getDate(\n timeWithChange.hours,\n timeWithChange.minutes,\n timeWithChange.seconds,\n format,\n timeWithChange.amPm\n );\n setValue(newDate);\n typeof onChange === 'function' && onChange(newDate);\n };\n\n const handleHoursChange = createTimeHandler({\n onChange: (val, carryOver) => {\n setDate({\n hours: val,\n minutes: carryOver ?? time.minutes,\n });\n },\n min: format === '12' ? 1 : 0,\n max: format === '12' ? 12 : 23,\n nextRef: minutesRef,\n nextMax: 59,\n });\n\n const handleMinutesChange = createTimeHandler({\n onChange: (val, carryOver) => {\n setDate({\n minutes: val,\n seconds: carryOver ?? time.seconds,\n });\n },\n min: 0,\n max: 59,\n nextRef: withSeconds ? secondsRef : format === '12' ? amPmRef : nextRef,\n nextMax: withSeconds ? 59 : undefined,\n });\n\n const handleSecondsChange = createTimeHandler({\n onChange: (val) => {\n setDate({ seconds: val });\n },\n min: 0,\n max: 59,\n nextRef: format === '12' ? amPmRef : nextRef,\n });\n\n const handleAmPmChange = createAmPmHandler({\n onChange: (val) => {\n setDate({ amPm: val });\n },\n nextRef,\n });\n\n const handleClear = () => {\n setTime({ hours: '', minutes: '', seconds: '', amPm: '' });\n setValue(null);\n onChange?.(null);\n hoursRef.current.focus();\n };\n\n const rightSection =\n clearable && _value ? (\n <CloseButton\n variant=\"transparent\"\n aria-label={clearButtonLabel}\n onClick={handleClear}\n size={size}\n />\n ) : null;\n\n return (\n <InputWrapper\n required={required}\n label={label}\n error={error}\n description={description}\n className={className}\n style={style}\n classNames={classNames}\n styles={styles}\n size={size}\n __staticSelector=\"TimeInput\"\n id={uuid}\n sx={sx}\n errorProps={errorProps}\n descriptionProps={descriptionProps}\n labelProps={labelProps}\n {...systemStyles}\n {...wrapperProps}\n >\n <Input\n component=\"div\"\n __staticSelector=\"TimeInput\"\n required={required}\n invalid={!!error}\n onClick={() => hoursRef.current.focus()}\n size={size}\n className={cx({ [classes.disabled]: disabled })}\n classNames={classNames}\n styles={styles}\n disabled={disabled}\n rightSection={rightSection}\n rightSectionWidth={theme.fn.size({ size, sizes: RIGHT_SECTION_WIDTH })}\n {...rest}\n >\n <div className={classes.controls}>\n <TimeField\n ref={useMergedRef(hoursRef, ref)}\n value={time.hours}\n onChange={handleHoursChange}\n setValue={(val) => setTime((current) => ({ ...current, hours: val }))}\n id={uuid}\n className={classes.timeInput}\n withSeparator\n size={size}\n max={format === '12' ? 12 : 23}\n placeholder={timePlaceholder}\n aria-label={hoursLabel}\n disabled={disabled}\n name={name}\n />\n <TimeField\n ref={minutesRef}\n value={time.minutes}\n onChange={handleMinutesChange}\n setValue={(val) => setTime((current) => ({ ...current, minutes: val }))}\n className={classes.timeInput}\n withSeparator={withSeconds}\n size={size}\n max={59}\n placeholder={timePlaceholder}\n aria-label={minutesLabel}\n disabled={disabled}\n />\n {withSeconds && (\n <TimeField\n ref={secondsRef}\n value={time.seconds}\n onChange={handleSecondsChange}\n setValue={(val) => setTime((current) => ({ ...current, seconds: val }))}\n className={classes.timeInput}\n size={size}\n max={59}\n placeholder={timePlaceholder}\n aria-label={secondsLabel}\n disabled={disabled}\n />\n )}\n {format === '12' && (\n <AmPmInput\n ref={amPmRef}\n value={time.amPm}\n onChange={handleAmPmChange}\n placeholder={amPmPlaceholder}\n size={size}\n aria-label={amPmLabel}\n disabled={disabled}\n />\n )}\n </div>\n </Input>\n </InputWrapper>\n );\n }\n);\n\nTimeInput.displayName = '@mantine/dates/TimeInput';\n"],"names":["forwardRef","useMantineDefaultProps","useStyles","extractSystemStyles","useUuid","useRef","useState","getTimeValues","useDidUpdate","getDate","createTimeHandler","createAmPmHandler","React","CloseButton","InputWrapper","Input","TimeField","useMergedRef","AmPmInput"],"mappings":"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"}
1
+ {"version":3,"file":"TimeInput.js","sources":["../../../src/components/TimeInput/TimeInput.tsx"],"sourcesContent":["import React, { useState, useRef, forwardRef } from 'react';\nimport {\n InputSharedProps,\n InputWrapperBaseProps,\n InputStylesNames,\n InputWrapperStylesNames,\n DefaultProps,\n Input,\n MantineSize,\n Selectors,\n CloseButton,\n extractSystemStyles,\n useComponentDefaultProps,\n} from '@mantine/core';\nimport { useDidUpdate, useMergedRef, useId } from '@mantine/hooks';\nimport { TimeField } from '../TimeInputBase/TimeField/TimeField';\nimport { createTimeHandler } from '../TimeInputBase/create-time-handler/create-time-handler';\nimport useStyles from './TimeInput.styles';\nimport { AmPmInput } from '../TimeInputBase/AmPmInput/AmPmInput';\nimport { createAmPmHandler } from '../TimeInputBase/create-amPm-handler/create-amPm-handler';\nimport { getDate } from '../TimeInputBase/get-date/get-date';\nimport { getTimeValues } from '../TimeInputBase/get-time-values/get-time-value';\n\nexport type TimeInputStylesNames =\n | Selectors<typeof useStyles>\n | InputStylesNames\n | InputWrapperStylesNames;\n\nexport interface TimeInputProps\n extends DefaultProps<TimeInputStylesNames>,\n InputSharedProps,\n InputWrapperBaseProps,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'onChange' | 'value' | 'defaultValue'> {\n /** Input size */\n size?: MantineSize;\n\n /** Controlled input value */\n value?: Date | null;\n\n /** Uncontrolled input default value */\n defaultValue?: Date | null;\n\n /** Controlled input onChange handler */\n onChange?(value: Date): void;\n\n /** Display seconds input */\n withSeconds?: boolean;\n\n /** Allow to clear item */\n clearable?: boolean;\n\n /** aria-label for clear button */\n clearButtonLabel?: string;\n\n /** Time format */\n format?: '12' | '24';\n\n /** Label for 'am' */\n amLabel?: string;\n\n /** Label for 'pm' */\n pmLabel?: string;\n\n /** Uncontrolled input name */\n name?: string;\n\n /** aria-label for hours input */\n hoursLabel?: string;\n\n /** aria-label for minutes input */\n minutesLabel?: string;\n\n /** aria-label for seconds input */\n secondsLabel?: string;\n\n /** aria-label for am/pm input */\n amPmLabel?: string;\n\n /** Placeholder for hours/minutes/seconds inputs*/\n timePlaceholder?: string;\n\n /** Placeholder for am/pm input */\n amPmPlaceholder?: string;\n\n /** Disable field */\n disabled?: boolean;\n\n /** Ref to focus after final TimeInput field. Used by TimeRangeInput */\n nextRef?: React.RefObject<HTMLInputElement>;\n}\n\nconst RIGHT_SECTION_WIDTH = {\n xs: 24,\n sm: 30,\n md: 34,\n lg: 40,\n xl: 44,\n};\n\nconst defaultProps: Partial<TimeInputProps> = {\n size: 'sm',\n withSeconds: false,\n clearable: false,\n format: '24',\n amLabel: 'am',\n pmLabel: 'pm',\n timePlaceholder: '--',\n amPmPlaceholder: 'am',\n disabled: false,\n};\n\nexport const TimeInput = forwardRef<HTMLInputElement, TimeInputProps>(\n (props: TimeInputProps, ref) => {\n const {\n required,\n label,\n error,\n description,\n className,\n style,\n size,\n wrapperProps,\n classNames,\n styles,\n id,\n value,\n defaultValue,\n onChange,\n withSeconds,\n clearable,\n clearButtonLabel,\n format,\n amLabel,\n pmLabel,\n name,\n hoursLabel,\n minutesLabel,\n secondsLabel,\n amPmLabel,\n timePlaceholder,\n amPmPlaceholder,\n disabled,\n sx,\n nextRef,\n labelProps,\n descriptionProps,\n errorProps,\n unstyled,\n ...others\n } = useComponentDefaultProps('TimeInput', defaultProps, props);\n\n const { classes, cx, theme } = useStyles(\n { size },\n { classNames, styles, unstyled, name: 'TimeInput' }\n );\n const { systemStyles, rest } = extractSystemStyles(others);\n const uuid = useId(id);\n\n const hoursRef = useRef<HTMLInputElement>();\n const minutesRef = useRef<HTMLInputElement>();\n const secondsRef = useRef<HTMLInputElement>();\n const amPmRef = useRef<HTMLInputElement>();\n const [time, setTime] = useState<{\n hours: string;\n minutes: string;\n seconds: string;\n amPm: string;\n }>(getTimeValues(value || defaultValue, format, amLabel, pmLabel));\n const [_value, setValue] = useState<Date | null>(value || defaultValue);\n\n useDidUpdate(() => {\n setTime(getTimeValues(_value, format, amLabel, pmLabel));\n }, [_value, format, amLabel, pmLabel]);\n\n // Allow controlled value prop to override internal _value\n useDidUpdate(() => {\n if (value?.getTime() !== _value?.getTime()) {\n setValue(value);\n }\n }, [value]);\n\n const setDate = (change: Partial<typeof time>) => {\n const timeWithChange = { ...time, ...change };\n const newDate = getDate(\n timeWithChange.hours,\n timeWithChange.minutes,\n timeWithChange.seconds,\n format,\n pmLabel,\n timeWithChange.amPm\n );\n setValue(newDate);\n typeof onChange === 'function' && onChange(newDate);\n };\n\n const handleHoursChange = createTimeHandler({\n onChange: (val, carryOver) => {\n setDate({\n hours: val,\n minutes: carryOver ?? time.minutes,\n });\n },\n min: format === '12' ? 1 : 0,\n max: format === '12' ? 12 : 23,\n nextRef: minutesRef,\n nextMax: 59,\n });\n\n const handleMinutesChange = createTimeHandler({\n onChange: (val, carryOver) => {\n setDate({\n minutes: val,\n seconds: carryOver ?? time.seconds,\n });\n },\n min: 0,\n max: 59,\n nextRef: withSeconds ? secondsRef : format === '12' ? amPmRef : nextRef,\n nextMax: withSeconds ? 59 : undefined,\n });\n\n const handleSecondsChange = createTimeHandler({\n onChange: (val) => {\n setDate({ seconds: val });\n },\n min: 0,\n max: 59,\n nextRef: format === '12' ? amPmRef : nextRef,\n });\n\n const handleAmPmChange = createAmPmHandler({\n amLabel,\n pmLabel,\n onChange: (val) => {\n setDate({ amPm: val });\n },\n nextRef,\n });\n\n const handleClear = () => {\n setTime({ hours: '', minutes: '', seconds: '', amPm: '' });\n setValue(null);\n onChange?.(null);\n hoursRef.current.focus();\n };\n\n const rightSection =\n clearable && _value ? (\n <CloseButton\n variant=\"transparent\"\n aria-label={clearButtonLabel}\n onClick={handleClear}\n size={size}\n unstyled={unstyled}\n />\n ) : null;\n\n return (\n <Input.Wrapper\n required={required}\n label={label}\n error={error}\n description={description}\n className={className}\n style={style}\n classNames={classNames}\n styles={styles}\n size={size}\n __staticSelector=\"TimeInput\"\n id={uuid}\n sx={sx}\n errorProps={errorProps}\n descriptionProps={descriptionProps}\n labelProps={labelProps}\n unstyled={unstyled}\n {...systemStyles}\n {...wrapperProps}\n >\n <Input\n component=\"div\"\n __staticSelector=\"TimeInput\"\n required={required}\n invalid={!!error}\n onClick={() => hoursRef.current.focus()}\n size={size}\n className={cx({ [classes.disabled]: disabled })}\n classNames={classNames}\n styles={styles}\n disabled={disabled}\n rightSection={rightSection}\n rightSectionWidth={theme.fn.size({ size, sizes: RIGHT_SECTION_WIDTH })}\n unstyled={unstyled}\n {...rest}\n >\n <div className={classes.controls}>\n <TimeField\n ref={useMergedRef(hoursRef, ref)}\n value={time.hours}\n onChange={handleHoursChange}\n setValue={(val) => setTime((current) => ({ ...current, hours: val }))}\n id={uuid}\n className={classes.timeInput}\n withSeparator\n size={size}\n max={format === '12' ? 12 : 23}\n placeholder={timePlaceholder}\n aria-label={hoursLabel}\n disabled={disabled}\n name={name}\n unstyled={unstyled}\n />\n <TimeField\n ref={minutesRef}\n value={time.minutes}\n onChange={handleMinutesChange}\n setValue={(val) => setTime((current) => ({ ...current, minutes: val }))}\n className={classes.timeInput}\n withSeparator={withSeconds}\n size={size}\n max={59}\n placeholder={timePlaceholder}\n aria-label={minutesLabel}\n disabled={disabled}\n unstyled={unstyled}\n />\n {withSeconds && (\n <TimeField\n ref={secondsRef}\n value={time.seconds}\n onChange={handleSecondsChange}\n setValue={(val) => setTime((current) => ({ ...current, seconds: val }))}\n className={classes.timeInput}\n size={size}\n max={59}\n placeholder={timePlaceholder}\n aria-label={secondsLabel}\n disabled={disabled}\n unstyled={unstyled}\n />\n )}\n {format === '12' && (\n <AmPmInput\n ref={amPmRef}\n value={time.amPm}\n onChange={handleAmPmChange}\n placeholder={amPmPlaceholder}\n amLabel={amLabel}\n pmLabel={pmLabel}\n size={size}\n aria-label={amPmLabel}\n disabled={disabled}\n unstyled={unstyled}\n />\n )}\n </div>\n </Input>\n </Input.Wrapper>\n );\n }\n);\n\nTimeInput.displayName = '@mantine/dates/TimeInput';\n"],"names":["forwardRef","useComponentDefaultProps","useStyles","extractSystemStyles","useId","useRef","useState","getTimeValues","useDidUpdate","getDate","createTimeHandler","createAmPmHandler","React","CloseButton","Input","TimeField","useMergedRef","AmPmInput"],"mappings":"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"}
@@ -6,6 +6,7 @@ var core = require('@mantine/core');
6
6
 
7
7
  var useStyles = core.createStyles((theme, { size }) => ({
8
8
  timeInput: {},
9
+ amPmInput: {},
9
10
  disabled: {
10
11
  opacity: 0.6,
11
12
  cursor: "not-allowed"
@@ -1 +1 @@
1
- {"version":3,"file":"TimeInput.styles.js","sources":["../../../src/components/TimeInput/TimeInput.styles.ts"],"sourcesContent":["import { createStyles, INPUT_SIZES, MantineSize } from '@mantine/core';\n\nexport interface TimeInputStylesParams {\n size: MantineSize;\n}\n\nexport default createStyles((theme, { size }: TimeInputStylesParams) => ({\n timeInput: {},\n\n disabled: {\n opacity: 0.6,\n cursor: 'not-allowed',\n },\n\n controls: {\n display: 'flex',\n alignItems: 'center',\n // -2 for border offset\n height: theme.fn.size({ size, sizes: INPUT_SIZES }) - 2,\n },\n}));\n"],"names":["createStyles","INPUT_SIZES"],"mappings":";;;;;;AACA,gBAAeA,iBAAY,CAAC,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM;AAClD,EAAE,SAAS,EAAE,EAAE;AACf,EAAE,QAAQ,EAAE;AACZ,IAAI,OAAO,EAAE,GAAG;AAChB,IAAI,MAAM,EAAE,aAAa;AACzB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,OAAO,EAAE,MAAM;AACnB,IAAI,UAAU,EAAE,QAAQ;AACxB,IAAI,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAEC,gBAAW,EAAE,CAAC,GAAG,CAAC;AAC3D,GAAG;AACH,CAAC,CAAC,CAAC;;;;"}
1
+ {"version":3,"file":"TimeInput.styles.js","sources":["../../../src/components/TimeInput/TimeInput.styles.ts"],"sourcesContent":["import { createStyles, INPUT_SIZES, MantineSize } from '@mantine/core';\n\nexport interface TimeInputStylesParams {\n size: MantineSize;\n}\n\nexport default createStyles((theme, { size }: TimeInputStylesParams) => ({\n timeInput: {},\n amPmInput: {},\n\n disabled: {\n opacity: 0.6,\n cursor: 'not-allowed',\n },\n\n controls: {\n display: 'flex',\n alignItems: 'center',\n // -2 for border offset\n height: theme.fn.size({ size, sizes: INPUT_SIZES }) - 2,\n },\n}));\n"],"names":["createStyles","INPUT_SIZES"],"mappings":";;;;;;AACA,gBAAeA,iBAAY,CAAC,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM;AAClD,EAAE,SAAS,EAAE,EAAE;AACf,EAAE,SAAS,EAAE,EAAE;AACf,EAAE,QAAQ,EAAE;AACZ,IAAI,OAAO,EAAE,GAAG;AAChB,IAAI,MAAM,EAAE,aAAa;AACzB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,OAAO,EAAE,MAAM;AACnB,IAAI,UAAU,EAAE,QAAQ;AACxB,IAAI,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAEC,gBAAW,EAAE,CAAC,GAAG,CAAC;AAC3D,GAAG;AACH,CAAC,CAAC,CAAC;;;;"}
@@ -39,8 +39,26 @@ var __objRest = (source, exclude) => {
39
39
  return target;
40
40
  };
41
41
  const AmPmInput = React.forwardRef((_a, ref) => {
42
- var _b = _a, { className, onChange, onFocus, size = "sm", value } = _b, others = __objRest(_b, ["className", "onChange", "onFocus", "size", "value"]);
43
- const { classes, cx } = TimeInputBase_styles['default']({ size, hasValue: !!value });
42
+ var _b = _a, {
43
+ className,
44
+ onChange,
45
+ onFocus,
46
+ size = "sm",
47
+ value,
48
+ unstyled,
49
+ amLabel,
50
+ pmLabel
51
+ } = _b, others = __objRest(_b, [
52
+ "className",
53
+ "onChange",
54
+ "onFocus",
55
+ "size",
56
+ "value",
57
+ "unstyled",
58
+ "amLabel",
59
+ "pmLabel"
60
+ ]);
61
+ const { classes, cx } = TimeInputBase_styles['default']({ size, hasValue: !!value }, { name: "AmPmInput", unstyled });
44
62
  const inputRef = React.useRef();
45
63
  const handleFocus = (event) => {
46
64
  typeof onFocus === "function" && onFocus(event);
@@ -51,21 +69,21 @@ const AmPmInput = React.forwardRef((_a, ref) => {
51
69
  inputRef.current.select();
52
70
  };
53
71
  const handleKeyDown = (event) => {
54
- if (event.nativeEvent.code === "ArrowUp" || event.nativeEvent.code === "ArrowDown") {
72
+ if (event.key === "ArrowUp" || event.key === "ArrowDown") {
55
73
  event.preventDefault();
56
- onChange(value === "am" ? "pm" : "am", true);
74
+ onChange(value === amLabel ? pmLabel : amLabel, true);
57
75
  }
58
76
  };
59
77
  const handleChange = (event) => {
60
78
  const lastInputVal = event.target.value.slice(-1).toLowerCase();
61
79
  if (lastInputVal === "p") {
62
80
  event.preventDefault();
63
- onChange("pm", true);
81
+ onChange(pmLabel, true);
64
82
  return;
65
83
  }
66
84
  if (lastInputVal === "a") {
67
85
  event.preventDefault();
68
- onChange("am", true);
86
+ onChange(amLabel, true);
69
87
  return;
70
88
  }
71
89
  onChange(value.toString(), true);
@@ -78,7 +96,7 @@ const AmPmInput = React.forwardRef((_a, ref) => {
78
96
  onKeyDown: handleKeyDown,
79
97
  onChange: handleChange,
80
98
  value,
81
- className: cx(classes.timeInput, className)
99
+ className: cx(classes.timeInput, classes.amPmInput)
82
100
  }, others));
83
101
  });
84
102
  AmPmInput.displayName = "@mantine/dates/AmPmInput";
@@ -1 +1 @@
1
- {"version":3,"file":"AmPmInput.js","sources":["../../../../src/components/TimeInputBase/AmPmInput/AmPmInput.tsx"],"sourcesContent":["import React, { useRef, forwardRef } from 'react';\nimport { useMergedRef } from '@mantine/hooks';\nimport { MantineSize } from '@mantine/core';\nimport useStyles from '../TimeInputBase.styles';\n\ninterface AmPmSelectProps\n extends Omit<React.ComponentPropsWithoutRef<'input'>, 'onChange' | 'size'> {\n /** Called with onChange event */\n onChange(value: string, triggerShift: boolean): void;\n\n /** Colon text size */\n size?: MantineSize;\n}\n\nexport const AmPmInput = forwardRef<HTMLInputElement, AmPmSelectProps>(\n ({ className, onChange, onFocus, size = 'sm', value, ...others }: AmPmSelectProps, ref) => {\n const { classes, cx } = useStyles({ size, hasValue: !!value });\n const inputRef = useRef<HTMLInputElement>();\n\n const handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onFocus === 'function' && onFocus(event);\n inputRef.current.select();\n };\n\n const handleClick = (event: React.MouseEvent<HTMLInputElement, MouseEvent>) => {\n event.stopPropagation();\n inputRef.current.select();\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.nativeEvent.code === 'ArrowUp' || event.nativeEvent.code === 'ArrowDown') {\n event.preventDefault();\n onChange(value === 'am' ? 'pm' : 'am', true);\n }\n };\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const lastInputVal = event.target.value.slice(-1).toLowerCase();\n\n if (lastInputVal === 'p') {\n event.preventDefault();\n onChange('pm', true);\n return;\n }\n\n if (lastInputVal === 'a') {\n event.preventDefault();\n onChange('am', true);\n return;\n }\n\n onChange(value.toString(), true);\n };\n\n return (\n <input\n type=\"text\"\n ref={useMergedRef(inputRef, ref)}\n onClick={handleClick}\n onFocus={handleFocus}\n onKeyDown={handleKeyDown}\n onChange={handleChange}\n value={value}\n className={cx(classes.timeInput, className)}\n {...others}\n />\n );\n }\n);\n\nAmPmInput.displayName = '@mantine/dates/AmPmInput';\n"],"names":["forwardRef","useStyles","useRef","React","useMergedRef"],"mappings":"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"}
1
+ {"version":3,"file":"AmPmInput.js","sources":["../../../../src/components/TimeInputBase/AmPmInput/AmPmInput.tsx"],"sourcesContent":["import React, { useRef, forwardRef } from 'react';\nimport { useMergedRef } from '@mantine/hooks';\nimport { MantineSize } from '@mantine/core';\nimport useStyles from '../TimeInputBase.styles';\n\ninterface AmPmSelectProps\n extends Omit<React.ComponentPropsWithoutRef<'input'>, 'onChange' | 'size'> {\n /** Label for 'am' */\n amLabel?: string;\n\n /** Label for 'pm' */\n pmLabel?: string;\n\n /** Called with onChange event */\n onChange(value: string, triggerShift: boolean): void;\n\n /** Colon text size */\n size?: MantineSize;\n\n unstyled?: boolean;\n}\n\nexport const AmPmInput = forwardRef<HTMLInputElement, AmPmSelectProps>(\n (\n {\n className,\n onChange,\n onFocus,\n size = 'sm',\n value,\n unstyled,\n amLabel,\n pmLabel,\n ...others\n }: AmPmSelectProps,\n ref\n ) => {\n const { classes, cx } = useStyles({ size, hasValue: !!value }, { name: 'AmPmInput', unstyled });\n const inputRef = useRef<HTMLInputElement>();\n\n const handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onFocus === 'function' && onFocus(event);\n inputRef.current.select();\n };\n\n const handleClick = (event: React.MouseEvent<HTMLInputElement, MouseEvent>) => {\n event.stopPropagation();\n inputRef.current.select();\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'ArrowUp' || event.key === 'ArrowDown') {\n event.preventDefault();\n onChange(value === amLabel ? pmLabel : amLabel, true);\n }\n };\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const lastInputVal = event.target.value.slice(-1).toLowerCase();\n\n if (lastInputVal === 'p') {\n event.preventDefault();\n onChange(pmLabel, true);\n return;\n }\n\n if (lastInputVal === 'a') {\n event.preventDefault();\n onChange(amLabel, true);\n return;\n }\n\n onChange(value.toString(), true);\n };\n\n return (\n <input\n type=\"text\"\n ref={useMergedRef(inputRef, ref)}\n onClick={handleClick}\n onFocus={handleFocus}\n onKeyDown={handleKeyDown}\n onChange={handleChange}\n value={value}\n className={cx(classes.timeInput, classes.amPmInput)}\n {...others}\n />\n );\n }\n);\n\nAmPmInput.displayName = '@mantine/dates/AmPmInput';\n"],"names":["forwardRef","useStyles","useRef","React","useMergedRef"],"mappings":"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"}
@@ -51,7 +51,8 @@ const TimeField = React.forwardRef((_a, ref) => {
51
51
  size = "sm",
52
52
  max,
53
53
  min = 0,
54
- value
54
+ value,
55
+ unstyled
55
56
  } = _b, others = __objRest(_b, [
56
57
  "className",
57
58
  "onFocus",
@@ -62,10 +63,11 @@ const TimeField = React.forwardRef((_a, ref) => {
62
63
  "size",
63
64
  "max",
64
65
  "min",
65
- "value"
66
+ "value",
67
+ "unstyled"
66
68
  ]);
67
69
  const [digitsEntered, setDigitsEntered] = React.useState(0);
68
- const { classes, cx, theme } = TimeInputBase_styles['default']({ size, hasValue: !!value });
70
+ const { classes, cx, theme } = TimeInputBase_styles['default']({ size, hasValue: !!value }, { name: "TimeField", unstyled });
69
71
  const inputRef = React.useRef();
70
72
  const handleFocus = (event) => {
71
73
  typeof onFocus === "function" && onFocus(event);
@@ -83,16 +85,16 @@ const TimeField = React.forwardRef((_a, ref) => {
83
85
  inputRef.current.select();
84
86
  };
85
87
  const handleKeyDown = (event) => {
86
- if (event.nativeEvent.code === "ArrowUp") {
88
+ if (event.key === "ArrowUp") {
87
89
  event.preventDefault();
88
- const padded = padTime.padTime(hooks.clamp({ value: parseInt(event.currentTarget.value, 10) + 1, max, min }).toString());
90
+ const padded = padTime.padTime(hooks.clamp(parseInt(event.currentTarget.value, 10) + 1, max, min).toString());
89
91
  if (value !== padded) {
90
92
  onChange(padded, false);
91
93
  }
92
94
  }
93
- if (event.nativeEvent.code === "ArrowDown") {
95
+ if (event.key === "ArrowDown") {
94
96
  event.preventDefault();
95
- const padded = padTime.padTime(hooks.clamp({ value: parseInt(event.currentTarget.value, 10) - 1, max, min }).toString());
97
+ const padded = padTime.padTime(hooks.clamp(parseInt(event.currentTarget.value, 10) - 1, max, min).toString());
96
98
  if (value !== padded) {
97
99
  onChange(padded, false);
98
100
  }
@@ -120,6 +122,7 @@ const TimeField = React.forwardRef((_a, ref) => {
120
122
  className: cx(classes.timeInput, className)
121
123
  }, others)), withSeparator && /* @__PURE__ */ React__default.createElement(core.Text, {
122
124
  size,
125
+ unstyled,
123
126
  style: {
124
127
  lineHeight: 1,
125
128
  color: value ? "inherit" : theme.colorScheme === "dark" ? theme.colors.dark[2] : theme.colors.gray[7]
@@ -1 +1 @@
1
- {"version":3,"file":"TimeField.js","sources":["../../../../src/components/TimeInputBase/TimeField/TimeField.tsx"],"sourcesContent":["import React, { useRef, forwardRef, useState } from 'react';\nimport { useMergedRef, clamp } from '@mantine/hooks';\nimport { Text, MantineSize } from '@mantine/core';\nimport { padTime } from '../pad-time/pad-time';\nimport useStyles from '../TimeInputBase.styles';\nimport type { createTimeHandler } from '../create-time-handler/create-time-handler';\n\ninterface TimeFieldProps\n extends Omit<React.ComponentPropsWithoutRef<'input'>, 'onChange' | 'size'> {\n /** Called with onChange event */\n onChange: ReturnType<typeof createTimeHandler>;\n\n /** Called to set input value and bypass parent validation/onChange calls */\n setValue(value: string): void;\n\n /** Adds colon after the field */\n withSeparator?: boolean;\n\n /** Colon text size */\n size?: MantineSize;\n\n /** Maximum possible value */\n max?: number;\n\n /** Minimum possible value. Default 0 */\n min?: number;\n}\n\nexport const TimeField = forwardRef<HTMLInputElement, TimeFieldProps>(\n (\n {\n className,\n onFocus,\n onBlur,\n onChange,\n setValue,\n withSeparator = false,\n size = 'sm',\n max,\n min = 0,\n value,\n ...others\n }: TimeFieldProps,\n ref\n ) => {\n const [digitsEntered, setDigitsEntered] = useState(0);\n const { classes, cx, theme } = useStyles({ size, hasValue: !!value });\n const inputRef = useRef<HTMLInputElement>();\n\n const handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onFocus === 'function' && onFocus(event);\n inputRef.current.select();\n setDigitsEntered(0);\n };\n\n const handleBlur = (event: any) => {\n typeof onBlur === 'function' && onBlur(event);\n // Call onChange in case the only digit entered is 0\n if (digitsEntered === 1) {\n typeof onChange === 'function' && onChange(event.currentTarget.value, false);\n }\n };\n\n const handleClick = (event: React.MouseEvent<HTMLInputElement, MouseEvent>) => {\n event.stopPropagation();\n inputRef.current.select();\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.nativeEvent.code === 'ArrowUp') {\n event.preventDefault();\n const padded = padTime(\n clamp({ value: parseInt(event.currentTarget.value, 10) + 1, max, min }).toString()\n );\n\n if (value !== padded) {\n onChange(padded, false);\n }\n }\n\n if (event.nativeEvent.code === 'ArrowDown') {\n event.preventDefault();\n const padded = padTime(\n clamp({ value: parseInt(event.currentTarget.value, 10) - 1, max, min }).toString()\n );\n\n if (value !== padded) {\n onChange(padded, false);\n }\n }\n };\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n setDigitsEntered(digitsEntered + 1);\n\n const _val = parseInt(event.currentTarget.value, 10).toString();\n\n // In 12-hour format, 0 is not allowed, but it could be the start of 01, 02, etc.\n if (_val === '0' && digitsEntered === 0) {\n setValue('00');\n return;\n }\n onChange(_val, true, digitsEntered > 0);\n };\n\n return (\n <>\n <input\n type=\"text\"\n inputMode=\"numeric\"\n ref={useMergedRef(inputRef, ref)}\n onChange={handleChange}\n onClick={handleClick}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n value={value}\n className={cx(classes.timeInput, className)}\n {...others}\n />\n\n {withSeparator && (\n <Text\n size={size}\n style={{\n lineHeight: 1,\n color: value\n ? 'inherit'\n : theme.colorScheme === 'dark'\n ? theme.colors.dark[2]\n : theme.colors.gray[7],\n }}\n >\n :\n </Text>\n )}\n </>\n );\n }\n);\n\nTimeField.displayName = '@mantine/dates/TimeField';\n"],"names":["forwardRef","useState","useStyles","useRef","padTime","clamp","React","useMergedRef","Text"],"mappings":"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"}
1
+ {"version":3,"file":"TimeField.js","sources":["../../../../src/components/TimeInputBase/TimeField/TimeField.tsx"],"sourcesContent":["import React, { useRef, forwardRef, useState } from 'react';\nimport { useMergedRef, clamp } from '@mantine/hooks';\nimport { Text, MantineSize } from '@mantine/core';\nimport { padTime } from '../pad-time/pad-time';\nimport useStyles from '../TimeInputBase.styles';\nimport type { createTimeHandler } from '../create-time-handler/create-time-handler';\n\ninterface TimeFieldProps\n extends Omit<React.ComponentPropsWithoutRef<'input'>, 'onChange' | 'size'> {\n /** Called with onChange event */\n onChange: ReturnType<typeof createTimeHandler>;\n\n /** Called to set input value and bypass parent validation/onChange calls */\n setValue(value: string): void;\n\n /** Adds colon after the field */\n withSeparator?: boolean;\n\n /** Colon text size */\n size?: MantineSize;\n\n /** Maximum possible value */\n max?: number;\n\n /** Minimum possible value. Default 0 */\n min?: number;\n\n unstyled?: boolean;\n}\n\nexport const TimeField = forwardRef<HTMLInputElement, TimeFieldProps>(\n (\n {\n className,\n onFocus,\n onBlur,\n onChange,\n setValue,\n withSeparator = false,\n size = 'sm',\n max,\n min = 0,\n value,\n unstyled,\n ...others\n }: TimeFieldProps,\n ref\n ) => {\n const [digitsEntered, setDigitsEntered] = useState(0);\n const { classes, cx, theme } = useStyles(\n { size, hasValue: !!value },\n { name: 'TimeField', unstyled }\n );\n const inputRef = useRef<HTMLInputElement>();\n\n const handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onFocus === 'function' && onFocus(event);\n inputRef.current.select();\n setDigitsEntered(0);\n };\n\n const handleBlur = (event: any) => {\n typeof onBlur === 'function' && onBlur(event);\n // Call onChange in case the only digit entered is 0\n if (digitsEntered === 1) {\n typeof onChange === 'function' && onChange(event.currentTarget.value, false);\n }\n };\n\n const handleClick = (event: React.MouseEvent<HTMLInputElement, MouseEvent>) => {\n event.stopPropagation();\n inputRef.current.select();\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'ArrowUp') {\n event.preventDefault();\n const padded = padTime(\n clamp(parseInt(event.currentTarget.value, 10) + 1, max, min).toString()\n );\n\n if (value !== padded) {\n onChange(padded, false);\n }\n }\n\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n const padded = padTime(\n clamp(parseInt(event.currentTarget.value, 10) - 1, max, min).toString()\n );\n\n if (value !== padded) {\n onChange(padded, false);\n }\n }\n };\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n setDigitsEntered(digitsEntered + 1);\n\n const _val = parseInt(event.currentTarget.value, 10).toString();\n\n // In 12-hour format, 0 is not allowed, but it could be the start of 01, 02, etc.\n if (_val === '0' && digitsEntered === 0) {\n setValue('00');\n return;\n }\n onChange(_val, true, digitsEntered > 0);\n };\n\n return (\n <>\n <input\n type=\"text\"\n inputMode=\"numeric\"\n ref={useMergedRef(inputRef, ref)}\n onChange={handleChange}\n onClick={handleClick}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n value={value}\n className={cx(classes.timeInput, className)}\n {...others}\n />\n\n {withSeparator && (\n <Text\n size={size}\n unstyled={unstyled}\n style={{\n lineHeight: 1,\n color: value\n ? 'inherit'\n : theme.colorScheme === 'dark'\n ? theme.colors.dark[2]\n : theme.colors.gray[7],\n }}\n >\n :\n </Text>\n )}\n </>\n );\n }\n);\n\nTimeField.displayName = '@mantine/dates/TimeField';\n"],"names":["forwardRef","useState","useStyles","useRef","padTime","clamp","React","useMergedRef","Text"],"mappings":"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"}
@@ -46,13 +46,18 @@ var useStyles = core.createStyles((theme, { size, hasValue }) => ({
46
46
  textAlign: hasValue ? void 0 : "start"
47
47
  },
48
48
  "&::placeholder": {
49
- textAlign: "center"
49
+ width: "auto",
50
+ textAlign: "left"
50
51
  },
51
52
  "&[disabled]": {
52
53
  color: theme.colorScheme === "dark" ? theme.colors.dark[2] : theme.colors.gray[7],
53
54
  cursor: "not-allowed"
54
55
  }
55
- })
56
+ }),
57
+ amPmInput: {
58
+ width: "auto",
59
+ textAlign: "left"
60
+ }
56
61
  }));
57
62
 
58
63
  exports.default = useStyles;
@@ -1 +1 @@
1
- {"version":3,"file":"TimeInputBase.styles.js","sources":["../../../src/components/TimeInputBase/TimeInputBase.styles.ts"],"sourcesContent":["import { createStyles, MantineSize } from '@mantine/core';\n\nexport const inputSizes = {\n xs: 20,\n sm: 23,\n md: 25,\n lg: 27,\n xl: 29,\n};\n\ninterface TimeInputBaseStyles {\n size: MantineSize;\n hasValue: boolean;\n}\n\nexport default createStyles((theme, { size, hasValue }: TimeInputBaseStyles) => ({\n timeInput: {\n ...theme.fn.fontStyles(),\n width: theme.fn.size({ size, sizes: inputSizes }),\n appearance: 'none',\n backgroundColor: 'transparent',\n color: 'inherit',\n padding: 0,\n textAlign: 'center',\n border: '1px solid transparent',\n fontSize: theme.fn.size({ size, sizes: theme.fontSizes }),\n lineHeight: 1,\n outline: 0,\n\n '&:focus': {\n textAlign: hasValue ? undefined : 'start',\n },\n\n '&::placeholder': {\n textAlign: 'center',\n },\n\n '&[disabled]': {\n color: theme.colorScheme === 'dark' ? theme.colors.dark[2] : theme.colors.gray[7],\n cursor: 'not-allowed',\n },\n },\n}));\n"],"names":["createStyles"],"mappings":"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"}
1
+ {"version":3,"file":"TimeInputBase.styles.js","sources":["../../../src/components/TimeInputBase/TimeInputBase.styles.ts"],"sourcesContent":["import { createStyles, MantineSize } from '@mantine/core';\n\nexport const inputSizes = {\n xs: 20,\n sm: 23,\n md: 25,\n lg: 27,\n xl: 29,\n};\n\ninterface TimeInputBaseStyles {\n size: MantineSize;\n hasValue: boolean;\n}\n\nexport default createStyles((theme, { size, hasValue }: TimeInputBaseStyles) => ({\n timeInput: {\n ...theme.fn.fontStyles(),\n width: theme.fn.size({ size, sizes: inputSizes }),\n appearance: 'none',\n backgroundColor: 'transparent',\n color: 'inherit',\n padding: 0,\n textAlign: 'center',\n border: '1px solid transparent',\n fontSize: theme.fn.size({ size, sizes: theme.fontSizes }),\n lineHeight: 1,\n outline: 0,\n\n '&:focus': {\n textAlign: hasValue ? undefined : 'start',\n },\n\n '&::placeholder': {\n width: 'auto',\n textAlign: 'left',\n },\n\n '&[disabled]': {\n color: theme.colorScheme === 'dark' ? theme.colors.dark[2] : theme.colors.gray[7],\n cursor: 'not-allowed',\n },\n },\n\n amPmInput: {\n width: 'auto',\n textAlign: 'left',\n },\n}));\n"],"names":["createStyles"],"mappings":"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"}
@@ -2,12 +2,12 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const testRegex = /(^(a|p)m?$)|(^$)/;
6
- function createAmPmHandler({ onChange, nextRef }) {
5
+ function createAmPmHandler({ amLabel, pmLabel, onChange, nextRef }) {
7
6
  return (value, triggerShift) => {
8
7
  var _a, _b;
8
+ const testRegex = new RegExp(`(^(${amLabel}|${pmLabel})?$)`);
9
9
  const valLower = value.toLowerCase();
10
- if (valLower === "am" || valLower === "pm") {
10
+ if (valLower === amLabel || valLower === pmLabel) {
11
11
  onChange(valLower);
12
12
  triggerShift && ((_a = nextRef == null ? void 0 : nextRef.current) == null ? void 0 : _a.focus());
13
13
  triggerShift && ((_b = nextRef == null ? void 0 : nextRef.current) == null ? void 0 : _b.select());
@@ -1 +1 @@
1
- {"version":3,"file":"create-amPm-handler.js","sources":["../../../../src/components/TimeInputBase/create-amPm-handler/create-amPm-handler.tsx"],"sourcesContent":["interface CreateAmPmHandler {\n onChange(value: string): void;\n nextRef?: React.RefObject<HTMLInputElement>;\n}\n\nconst testRegex = /(^(a|p)m?$)|(^$)/;\n\nexport function createAmPmHandler({ onChange, nextRef }: CreateAmPmHandler) {\n return (value: string, triggerShift: boolean) => {\n const valLower = value.toLowerCase();\n\n if (valLower === 'am' || valLower === 'pm') {\n onChange(valLower);\n triggerShift && nextRef?.current?.focus();\n triggerShift && nextRef?.current?.select();\n return;\n }\n\n if (!testRegex.test(valLower)) {\n return;\n }\n\n onChange(valLower);\n };\n}\n"],"names":[],"mappings":";;;;AAAA,MAAM,SAAS,GAAG,kBAAkB,CAAC;AAC9B,SAAS,iBAAiB,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;AACzD,EAAE,OAAO,CAAC,KAAK,EAAE,YAAY,KAAK;AAClC,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC;AACf,IAAI,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;AACzC,IAAI,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI,EAAE;AAChD,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACzB,MAAM,YAAY,KAAK,CAAC,EAAE,GAAG,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;AACxG,MAAM,YAAY,KAAK,CAAC,EAAE,GAAG,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;AACzG,MAAM,OAAO;AACb,KAAK;AACL,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;AACnC,MAAM,OAAO;AACb,KAAK;AACL,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACvB,GAAG,CAAC;AACJ;;;;"}
1
+ {"version":3,"file":"create-amPm-handler.js","sources":["../../../../src/components/TimeInputBase/create-amPm-handler/create-amPm-handler.tsx"],"sourcesContent":["interface CreateAmPmHandler {\n amLabel: string;\n pmLabel: string;\n onChange(value: string): void;\n nextRef?: React.RefObject<HTMLInputElement>;\n}\n\nexport function createAmPmHandler({ amLabel, pmLabel, onChange, nextRef }: CreateAmPmHandler) {\n return (value: string, triggerShift: boolean) => {\n const testRegex = new RegExp(`(^(${amLabel}|${pmLabel})?$)`);\n const valLower = value.toLowerCase();\n\n if (valLower === amLabel || valLower === pmLabel) {\n onChange(valLower);\n triggerShift && nextRef?.current?.focus();\n triggerShift && nextRef?.current?.select();\n return;\n }\n\n if (!testRegex.test(valLower)) {\n return;\n }\n\n onChange(valLower);\n };\n}\n"],"names":[],"mappings":";;;;AAAO,SAAS,iBAAiB,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;AAC3E,EAAE,OAAO,CAAC,KAAK,EAAE,YAAY,KAAK;AAClC,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC;AACf,IAAI,MAAM,SAAS,GAAG,IAAI,MAAM,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;AACjE,IAAI,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;AACzC,IAAI,IAAI,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,OAAO,EAAE;AACtD,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACzB,MAAM,YAAY,KAAK,CAAC,EAAE,GAAG,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;AACxG,MAAM,YAAY,KAAK,CAAC,EAAE,GAAG,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;AACzG,MAAM,OAAO;AACb,KAAK;AACL,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;AACnC,MAAM,OAAO;AACb,KAAK;AACL,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACvB,GAAG,CAAC;AACJ;;;;"}
@@ -21,7 +21,7 @@ function createTimeHandler({ onChange, nextRef, min, max, nextMax }) {
21
21
  updatedValue = padTime.padTime(allButLastDigit.allButLastDigit(parsed).toString());
22
22
  carryOver = padTime.padTime(lastDigit.toString());
23
23
  } else {
24
- updatedValue = padTime.padTime(hooks.clamp({ value: parsed, min, max }).toString());
24
+ updatedValue = padTime.padTime(hooks.clamp(parsed, min, max).toString());
25
25
  }
26
26
  onChange(updatedValue, carryOver);
27
27
  triggerShift && ((_a = nextRef == null ? void 0 : nextRef.current) == null ? void 0 : _a.focus());
@@ -1 +1 @@
1
- {"version":3,"file":"create-time-handler.js","sources":["../../../../src/components/TimeInputBase/create-time-handler/create-time-handler.ts"],"sourcesContent":["import { clamp } from '@mantine/hooks';\nimport { padTime } from '../pad-time/pad-time';\nimport { allButLastDigit } from './all-but-last-digit/all-but-last-digit';\n\ninterface CreateTimeHandler {\n onChange(value: string, carryOver?: string): void;\n nextRef?: React.RefObject<HTMLInputElement>;\n min: number;\n max: number;\n nextMax?: number;\n}\n\nexport function createTimeHandler({ onChange, nextRef, min, max, nextMax }: CreateTimeHandler) {\n return (value: string, triggerShift: boolean, forceTriggerShift = false) => {\n const parsed = parseInt(value, 10);\n\n if (Number.isNaN(parsed)) {\n return;\n }\n\n if (parsed > allButLastDigit(max) || forceTriggerShift) {\n const lastDigit = parsed % 10;\n\n let updatedValue: string;\n let carryOver: string | undefined;\n\n /*\n Check if it is possible to construct a number that satisfies the following conditions:\n 1. The number starts with the last digit of the current value.\n 2. The number is less than the next field's maximum value constraint.\n */\n if (parsed > max && nextMax && lastDigit <= allButLastDigit(nextMax)) {\n updatedValue = padTime(allButLastDigit(parsed).toString());\n carryOver = padTime(lastDigit.toString());\n } else {\n updatedValue = padTime(clamp({ value: parsed, min, max }).toString());\n }\n\n onChange(updatedValue, carryOver);\n triggerShift && nextRef?.current?.focus();\n triggerShift && nextRef?.current?.select();\n return;\n }\n\n onChange(parsed.toString());\n };\n}\n"],"names":["allButLastDigit","padTime","clamp"],"mappings":";;;;;;;;AAGO,SAAS,iBAAiB,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;AAC5E,EAAE,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,iBAAiB,GAAG,KAAK,KAAK;AAC7D,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC;AACf,IAAI,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACvC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;AAC9B,MAAM,OAAO;AACb,KAAK;AACL,IAAI,IAAI,MAAM,GAAGA,+BAAe,CAAC,GAAG,CAAC,IAAI,iBAAiB,EAAE;AAC5D,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,EAAE,CAAC;AACpC,MAAM,IAAI,YAAY,CAAC;AACvB,MAAM,IAAI,SAAS,CAAC;AACpB,MAAM,IAAI,MAAM,GAAG,GAAG,IAAI,OAAO,IAAI,SAAS,IAAIA,+BAAe,CAAC,OAAO,CAAC,EAAE;AAC5E,QAAQ,YAAY,GAAGC,eAAO,CAACD,+BAAe,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;AACnE,QAAQ,SAAS,GAAGC,eAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;AAClD,OAAO,MAAM;AACb,QAAQ,YAAY,GAAGA,eAAO,CAACC,WAAK,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC9E,OAAO;AACP,MAAM,QAAQ,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;AACxC,MAAM,YAAY,KAAK,CAAC,EAAE,GAAG,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;AACxG,MAAM,YAAY,KAAK,CAAC,EAAE,GAAG,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;AACzG,MAAM,OAAO;AACb,KAAK;AACL,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;AAChC,GAAG,CAAC;AACJ;;;;"}
1
+ {"version":3,"file":"create-time-handler.js","sources":["../../../../src/components/TimeInputBase/create-time-handler/create-time-handler.ts"],"sourcesContent":["import { clamp } from '@mantine/hooks';\nimport { padTime } from '../pad-time/pad-time';\nimport { allButLastDigit } from './all-but-last-digit/all-but-last-digit';\n\ninterface CreateTimeHandler {\n onChange(value: string, carryOver?: string): void;\n nextRef?: React.RefObject<HTMLInputElement>;\n min: number;\n max: number;\n nextMax?: number;\n}\n\nexport function createTimeHandler({ onChange, nextRef, min, max, nextMax }: CreateTimeHandler) {\n return (value: string, triggerShift: boolean, forceTriggerShift = false) => {\n const parsed = parseInt(value, 10);\n\n if (Number.isNaN(parsed)) {\n return;\n }\n\n if (parsed > allButLastDigit(max) || forceTriggerShift) {\n const lastDigit = parsed % 10;\n\n let updatedValue: string;\n let carryOver: string | undefined;\n\n /*\n Check if it is possible to construct a number that satisfies the following conditions:\n 1. The number starts with the last digit of the current value.\n 2. The number is less than the next field's maximum value constraint.\n */\n if (parsed > max && nextMax && lastDigit <= allButLastDigit(nextMax)) {\n updatedValue = padTime(allButLastDigit(parsed).toString());\n carryOver = padTime(lastDigit.toString());\n } else {\n updatedValue = padTime(clamp(parsed, min, max).toString());\n }\n\n onChange(updatedValue, carryOver);\n triggerShift && nextRef?.current?.focus();\n triggerShift && nextRef?.current?.select();\n return;\n }\n\n onChange(parsed.toString());\n };\n}\n"],"names":["allButLastDigit","padTime","clamp"],"mappings":";;;;;;;;AAGO,SAAS,iBAAiB,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;AAC5E,EAAE,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,iBAAiB,GAAG,KAAK,KAAK;AAC7D,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC;AACf,IAAI,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACvC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;AAC9B,MAAM,OAAO;AACb,KAAK;AACL,IAAI,IAAI,MAAM,GAAGA,+BAAe,CAAC,GAAG,CAAC,IAAI,iBAAiB,EAAE;AAC5D,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,EAAE,CAAC;AACpC,MAAM,IAAI,YAAY,CAAC;AACvB,MAAM,IAAI,SAAS,CAAC;AACpB,MAAM,IAAI,MAAM,GAAG,GAAG,IAAI,OAAO,IAAI,SAAS,IAAIA,+BAAe,CAAC,OAAO,CAAC,EAAE;AAC5E,QAAQ,YAAY,GAAGC,eAAO,CAACD,+BAAe,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;AACnE,QAAQ,SAAS,GAAGC,eAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;AAClD,OAAO,MAAM;AACb,QAAQ,YAAY,GAAGA,eAAO,CAACC,WAAK,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;AACnE,OAAO;AACP,MAAM,QAAQ,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;AACxC,MAAM,YAAY,KAAK,CAAC,EAAE,GAAG,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;AACxG,MAAM,YAAY,KAAK,CAAC,EAAE,GAAG,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;AACzG,MAAM,OAAO;AACb,KAAK;AACL,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;AAChC,GAAG,CAAC;AACJ;;;;"}
@@ -8,7 +8,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
8
8
 
9
9
  var dayjs__default = /*#__PURE__*/_interopDefaultLegacy(dayjs);
10
10
 
11
- function getDate(hours, minutes, seconds, format, amPm) {
11
+ function getDate(hours, minutes, seconds, format, pmLabel, amPm) {
12
12
  const date = dayjs__default();
13
13
  let _hours = parseInt(hours, 10);
14
14
  const _minutes = parseInt(minutes, 10);
@@ -18,7 +18,7 @@ function getDate(hours, minutes, seconds, format, amPm) {
18
18
  }
19
19
  if (format === "12") {
20
20
  _hours %= 12;
21
- if (amPm === "pm") {
21
+ if (amPm === pmLabel) {
22
22
  _hours += 12;
23
23
  }
24
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"get-date.js","sources":["../../../../src/components/TimeInputBase/get-date/get-date.ts"],"sourcesContent":["import dayjs from 'dayjs';\n\nexport function getDate(\n hours: string,\n minutes: string,\n seconds: string,\n format: '12' | '24',\n amPm?: string\n) {\n const date = dayjs();\n let _hours = parseInt(hours, 10);\n const _minutes = parseInt(minutes, 10);\n const _seconds = parseInt(seconds, 10);\n\n if (Number.isNaN(_hours)) {\n _hours = 0;\n }\n\n if (format === '12') {\n _hours %= 12;\n if (amPm === 'pm') {\n _hours += 12;\n }\n }\n\n return date\n .hour(_hours)\n .minute(Number.isNaN(_minutes) ? 0 : _minutes)\n .second(Number.isNaN(_seconds) ? 0 : _seconds)\n .millisecond(0)\n .toDate();\n}\n"],"names":["dayjs"],"mappings":";;;;;;;;;;AACO,SAAS,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE;AAC/D,EAAE,MAAM,IAAI,GAAGA,cAAK,EAAE,CAAC;AACvB,EAAE,IAAI,MAAM,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACnC,EAAE,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACzC,EAAE,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACzC,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;AAC5B,IAAI,MAAM,GAAG,CAAC,CAAC;AACf,GAAG;AACH,EAAE,IAAI,MAAM,KAAK,IAAI,EAAE;AACvB,IAAI,MAAM,IAAI,EAAE,CAAC;AACjB,IAAI,IAAI,IAAI,KAAK,IAAI,EAAE;AACvB,MAAM,MAAM,IAAI,EAAE,CAAC;AACnB,KAAK;AACL,GAAG;AACH,EAAE,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;AAC/I;;;;"}
1
+ {"version":3,"file":"get-date.js","sources":["../../../../src/components/TimeInputBase/get-date/get-date.ts"],"sourcesContent":["import dayjs from 'dayjs';\n\nexport function getDate(\n hours: string,\n minutes: string,\n seconds: string,\n format: '12' | '24',\n pmLabel: string,\n amPm?: string\n) {\n const date = dayjs();\n let _hours = parseInt(hours, 10);\n const _minutes = parseInt(minutes, 10);\n const _seconds = parseInt(seconds, 10);\n\n if (Number.isNaN(_hours)) {\n _hours = 0;\n }\n\n if (format === '12') {\n _hours %= 12;\n if (amPm === pmLabel) {\n _hours += 12;\n }\n }\n\n return date\n .hour(_hours)\n .minute(Number.isNaN(_minutes) ? 0 : _minutes)\n .second(Number.isNaN(_seconds) ? 0 : _seconds)\n .millisecond(0)\n .toDate();\n}\n"],"names":["dayjs"],"mappings":";;;;;;;;;;AACO,SAAS,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE;AACxE,EAAE,MAAM,IAAI,GAAGA,cAAK,EAAE,CAAC;AACvB,EAAE,IAAI,MAAM,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACnC,EAAE,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACzC,EAAE,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACzC,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;AAC5B,IAAI,MAAM,GAAG,CAAC,CAAC;AACf,GAAG;AACH,EAAE,IAAI,MAAM,KAAK,IAAI,EAAE;AACvB,IAAI,MAAM,IAAI,EAAE,CAAC;AACjB,IAAI,IAAI,IAAI,KAAK,OAAO,EAAE;AAC1B,MAAM,MAAM,IAAI,EAAE,CAAC;AACnB,KAAK;AACL,GAAG;AACH,EAAE,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;AAC/I;;;;"}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var padTime = require('../pad-time/pad-time.js');
6
6
 
7
- function getTimeValues(value, format) {
7
+ function getTimeValues(value, format, amLabel, pmLabel) {
8
8
  if (!(value instanceof Date)) {
9
9
  return { hours: "", minutes: "", seconds: "", amPm: "" };
10
10
  }
@@ -20,7 +20,7 @@ function getTimeValues(value, format) {
20
20
  hours: padTime.padTime(_hours.toString()),
21
21
  minutes: padTime.padTime(value.getMinutes().toString()),
22
22
  seconds: padTime.padTime(value.getSeconds().toString()),
23
- amPm: isPm ? "pm" : "am"
23
+ amPm: isPm ? pmLabel : amLabel
24
24
  };
25
25
  }
26
26