@mantine/dates 3.6.3 → 3.7.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/cjs/components/DatePickerBase/DatePickerBase.js +1 -1
  2. package/cjs/components/DatePickerBase/DatePickerBase.js.map +1 -1
  3. package/cjs/components/DateRangePicker/DateRangePicker.js +1 -11
  4. package/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
  5. package/cjs/components/TimeInput/TimeInput.js +35 -44
  6. package/cjs/components/TimeInput/TimeInput.js.map +1 -1
  7. package/cjs/components/TimeInputBase/AmPmInput/AmPmInput.js +8 -6
  8. package/cjs/components/TimeInputBase/AmPmInput/AmPmInput.js.map +1 -1
  9. package/cjs/components/TimeInputBase/TimeField/TimeField.js +19 -5
  10. package/cjs/components/TimeInputBase/TimeField/TimeField.js.map +1 -1
  11. package/cjs/components/TimeInputBase/create-time-handler/create-time-handler.js +5 -11
  12. package/cjs/components/TimeInputBase/create-time-handler/create-time-handler.js.map +1 -1
  13. package/cjs/components/TimeInputBase/get-date/get-date.js +7 -1
  14. package/cjs/components/TimeInputBase/get-date/get-date.js.map +1 -1
  15. package/cjs/components/TimeInputBase/get-time-values/get-time-value.js +13 -4
  16. package/cjs/components/TimeInputBase/get-time-values/get-time-value.js.map +1 -1
  17. package/cjs/components/TimeRangeInput/TimeRangeInput.js +44 -237
  18. package/cjs/components/TimeRangeInput/TimeRangeInput.js.map +1 -1
  19. package/cjs/index.js +4 -0
  20. package/cjs/index.js.map +1 -1
  21. package/esm/components/DatePickerBase/DatePickerBase.js +1 -1
  22. package/esm/components/DatePickerBase/DatePickerBase.js.map +1 -1
  23. package/esm/components/DateRangePicker/DateRangePicker.js +1 -11
  24. package/esm/components/DateRangePicker/DateRangePicker.js.map +1 -1
  25. package/esm/components/TimeInput/TimeInput.js +37 -46
  26. package/esm/components/TimeInput/TimeInput.js.map +1 -1
  27. package/esm/components/TimeInputBase/AmPmInput/AmPmInput.js +8 -6
  28. package/esm/components/TimeInputBase/AmPmInput/AmPmInput.js.map +1 -1
  29. package/esm/components/TimeInputBase/TimeField/TimeField.js +20 -6
  30. package/esm/components/TimeInputBase/TimeField/TimeField.js.map +1 -1
  31. package/esm/components/TimeInputBase/create-time-handler/create-time-handler.js +5 -11
  32. package/esm/components/TimeInputBase/create-time-handler/create-time-handler.js.map +1 -1
  33. package/esm/components/TimeInputBase/get-date/get-date.js +7 -1
  34. package/esm/components/TimeInputBase/get-date/get-date.js.map +1 -1
  35. package/esm/components/TimeInputBase/get-time-values/get-time-value.js +13 -4
  36. package/esm/components/TimeInputBase/get-time-values/get-time-value.js.map +1 -1
  37. package/esm/components/TimeRangeInput/TimeRangeInput.js +46 -239
  38. package/esm/components/TimeRangeInput/TimeRangeInput.js.map +1 -1
  39. package/esm/index.js +2 -0
  40. package/esm/index.js.map +1 -1
  41. package/lib/components/CalendarBase/index.d.ts +3 -0
  42. package/lib/components/CalendarBase/index.d.ts.map +1 -0
  43. package/lib/components/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  44. package/lib/components/TimeInput/TimeInput.d.ts +4 -2
  45. package/lib/components/TimeInput/TimeInput.d.ts.map +1 -1
  46. package/lib/components/TimeInputBase/AmPmInput/AmPmInput.d.ts +0 -2
  47. package/lib/components/TimeInputBase/AmPmInput/AmPmInput.d.ts.map +1 -1
  48. package/lib/components/TimeInputBase/TimeField/TimeField.d.ts +6 -3
  49. package/lib/components/TimeInputBase/TimeField/TimeField.d.ts.map +1 -1
  50. package/lib/components/TimeInputBase/create-time-handler/create-time-handler.d.ts +1 -1
  51. package/lib/components/TimeInputBase/create-time-handler/create-time-handler.d.ts.map +1 -1
  52. package/lib/components/TimeInputBase/get-date/get-date.d.ts.map +1 -1
  53. package/lib/components/TimeInputBase/get-time-values/get-time-value.d.ts +2 -1
  54. package/lib/components/TimeInputBase/get-time-values/get-time-value.d.ts.map +1 -1
  55. package/lib/components/TimeRangeInput/TimeRangeInput.d.ts.map +1 -1
  56. package/lib/index.d.ts +2 -0
  57. package/lib/index.d.ts.map +1 -1
  58. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"TimeField.js","sources":["../../../../src/components/TimeInputBase/TimeField/TimeField.tsx"],"sourcesContent":["import React, { useRef, forwardRef } 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';\n\ninterface TimeFieldProps\n extends Omit<React.ComponentPropsWithoutRef<'input'>, 'onChange' | 'size'> {\n /** Called with onChange event */\n onChange(value: string, triggerShift: boolean): void;\n\n /** Called when input loses focus, used to format value */\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, min value is always 0 */\n max?: 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 value,\n ...others\n }: TimeFieldProps,\n ref\n ) => {\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 };\n\n const handleBlur = (event: any) => {\n typeof onBlur === 'function' && onBlur(event);\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: 0 }).toString()\n );\n\n if (value !== padded) {\n setValue(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: 0 }).toString()\n );\n\n if (value !== padded) {\n setValue(padded);\n onChange(padded, false);\n }\n }\n };\n\n return (\n <>\n <input\n type=\"text\"\n ref={useMergedRef(inputRef, ref)}\n onChange={(event) => onChange(event.currentTarget.value, true)}\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","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\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 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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"}
@@ -6,22 +6,16 @@ var hooks = require('@mantine/hooks');
6
6
  var padTime = require('../pad-time/pad-time.js');
7
7
 
8
8
  function createTimeHandler({ onChange, nextRef, min, max, maxValue }) {
9
- return (value, triggerShift) => {
10
- var _a, _b, _c, _d;
11
- if (value === "00") {
12
- onChange("00");
13
- triggerShift && ((_a = nextRef == null ? void 0 : nextRef.current) == null ? void 0 : _a.focus());
14
- triggerShift && ((_b = nextRef == null ? void 0 : nextRef.current) == null ? void 0 : _b.select());
15
- return;
16
- }
9
+ return (value, triggerShift, forceTriggerShift = false) => {
10
+ var _a, _b;
17
11
  const parsed = parseInt(value, 10);
18
12
  if (Number.isNaN(parsed)) {
19
13
  return;
20
14
  }
21
- if (parsed > maxValue) {
15
+ if (parsed > maxValue || forceTriggerShift) {
22
16
  onChange(padTime.padTime(hooks.clamp({ value: parsed, min, max }).toString()));
23
- triggerShift && ((_c = nextRef == null ? void 0 : nextRef.current) == null ? void 0 : _c.focus());
24
- triggerShift && ((_d = nextRef == null ? void 0 : nextRef.current) == null ? void 0 : _d.select());
17
+ triggerShift && ((_a = nextRef == null ? void 0 : nextRef.current) == null ? void 0 : _a.focus());
18
+ triggerShift && ((_b = nextRef == null ? void 0 : nextRef.current) == null ? void 0 : _b.select());
25
19
  return;
26
20
  }
27
21
  onChange(parsed.toString());
@@ -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';\n\ninterface CreateTimeHandler {\n onChange(value: string): void;\n nextRef?: React.RefObject<HTMLInputElement>;\n min: number;\n max: number;\n maxValue: number;\n}\n\nexport function createTimeHandler({ onChange, nextRef, min, max, maxValue }: CreateTimeHandler) {\n return (value: string, triggerShift: boolean) => {\n if (value === '00') {\n onChange('00');\n triggerShift && nextRef?.current?.focus();\n triggerShift && nextRef?.current?.select();\n return;\n }\n\n const parsed = parseInt(value, 10);\n\n if (Number.isNaN(parsed)) {\n return;\n }\n\n if (parsed > maxValue) {\n onChange(padTime(clamp({ value: parsed, min, max }).toString()));\n triggerShift && nextRef?.current?.focus();\n triggerShift && nextRef?.current?.select();\n return;\n }\n\n onChange(parsed.toString());\n };\n}\n"],"names":["padTime","clamp"],"mappings":";;;;;;;AAEO,SAAS,iBAAiB,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE;AAC7E,EAAE,OAAO,CAAC,KAAK,EAAE,YAAY,KAAK;AAClC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AACvB,IAAI,IAAI,KAAK,KAAK,IAAI,EAAE;AACxB,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;AACrB,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,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,GAAG,QAAQ,EAAE;AAC3B,MAAM,QAAQ,CAACA,eAAO,CAACC,WAAK,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AACvE,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';\n\ninterface CreateTimeHandler {\n onChange(value: string): void;\n nextRef?: React.RefObject<HTMLInputElement>;\n min: number;\n max: number;\n maxValue: number;\n}\n\nexport function createTimeHandler({ onChange, nextRef, min, max, maxValue }: 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 > maxValue || forceTriggerShift) {\n onChange(padTime(clamp({ value: parsed, min, max }).toString()));\n triggerShift && nextRef?.current?.focus();\n triggerShift && nextRef?.current?.select();\n return;\n }\n\n onChange(parsed.toString());\n };\n}\n"],"names":["padTime","clamp"],"mappings":";;;;;;;AAEO,SAAS,iBAAiB,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE;AAC7E,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,GAAG,QAAQ,IAAI,iBAAiB,EAAE;AAChD,MAAM,QAAQ,CAACA,eAAO,CAACC,WAAK,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AACvE,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;;;;"}
@@ -16,7 +16,13 @@ function getDate(hours, minutes, seconds, format, amPm) {
16
16
  if (Number.isNaN(_hours)) {
17
17
  _hours = 0;
18
18
  }
19
- return date.hour(format === "12" && amPm === "pm" ? _hours < 12 ? _hours - 12 : _hours : _hours).minute(Number.isNaN(_minutes) ? 0 : _minutes).second(Number.isNaN(_seconds) ? 0 : _seconds).toDate();
19
+ if (format === "12") {
20
+ _hours %= 12;
21
+ if (amPm === "pm") {
22
+ _hours += 12;
23
+ }
24
+ }
25
+ return date.hour(_hours).minute(Number.isNaN(_minutes) ? 0 : _minutes).second(Number.isNaN(_seconds) ? 0 : _seconds).toDate();
20
26
  }
21
27
 
22
28
  exports.getDate = getDate;
@@ -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 return date\n .hour(format === '12' && amPm === 'pm' ? (_hours < 12 ? _hours - 12 : _hours) : _hours)\n .minute(Number.isNaN(_minutes) ? 0 : _minutes)\n .second(Number.isNaN(_seconds) ? 0 : _seconds)\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,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,GAAG,MAAM,GAAG,EAAE,GAAG,MAAM,GAAG,EAAE,GAAG,MAAM,GAAG,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,MAAM,EAAE,CAAC;AACxM;;;;"}
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 .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,MAAM,EAAE,CAAC;AAChI;;;;"}
@@ -4,14 +4,23 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var padTime = require('../pad-time/pad-time.js');
6
6
 
7
- function getTimeValues(value) {
7
+ function getTimeValues(value, format) {
8
8
  if (!(value instanceof Date)) {
9
- return { hours: "", minutes: "", seconds: "" };
9
+ return { hours: "", minutes: "", seconds: "", amPm: "" };
10
+ }
11
+ let _hours = value.getHours();
12
+ const isPm = _hours >= 12;
13
+ if (format === "12") {
14
+ _hours %= 12;
15
+ if (_hours === 0) {
16
+ _hours += 12;
17
+ }
10
18
  }
11
19
  return {
12
- hours: padTime.padTime(value.getHours().toString()),
20
+ hours: padTime.padTime(_hours.toString()),
13
21
  minutes: padTime.padTime(value.getMinutes().toString()),
14
- seconds: padTime.padTime(value.getSeconds().toString())
22
+ seconds: padTime.padTime(value.getSeconds().toString()),
23
+ amPm: isPm ? "pm" : "am"
15
24
  };
16
25
  }
17
26
 
@@ -1 +1 @@
1
- {"version":3,"file":"get-time-value.js","sources":["../../../../src/components/TimeInputBase/get-time-values/get-time-value.ts"],"sourcesContent":["import { padTime } from '../pad-time/pad-time';\n\nexport function getTimeValues(value: Date) {\n if (!(value instanceof Date)) {\n return { hours: '', minutes: '', seconds: '' };\n }\n\n return {\n hours: padTime(value.getHours().toString()),\n minutes: padTime(value.getMinutes().toString()),\n seconds: padTime(value.getSeconds().toString()),\n };\n}\n"],"names":["padTime"],"mappings":";;;;;;AACO,SAAS,aAAa,CAAC,KAAK,EAAE;AACrC,EAAE,IAAI,EAAE,KAAK,YAAY,IAAI,CAAC,EAAE;AAChC,IAAI,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;AACnD,GAAG;AACH,EAAE,OAAO;AACT,IAAI,KAAK,EAAEA,eAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AAC/C,IAAI,OAAO,EAAEA,eAAO,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC;AACnD,IAAI,OAAO,EAAEA,eAAO,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC;AACnD,GAAG,CAAC;AACJ;;;;"}
1
+ {"version":3,"file":"get-time-value.js","sources":["../../../../src/components/TimeInputBase/get-time-values/get-time-value.ts"],"sourcesContent":["import { padTime } from '../pad-time/pad-time';\n\nexport function getTimeValues(value: Date, format: '12' | '24') {\n if (!(value instanceof Date)) {\n return { hours: '', minutes: '', seconds: '', amPm: '' };\n }\n\n let _hours = value.getHours();\n\n const isPm = _hours >= 12;\n if (format === '12') {\n _hours %= 12;\n if (_hours === 0) {\n _hours += 12;\n }\n }\n\n return {\n hours: padTime(_hours.toString()),\n minutes: padTime(value.getMinutes().toString()),\n seconds: padTime(value.getSeconds().toString()),\n amPm: isPm ? 'pm' : 'am',\n };\n}\n"],"names":["padTime"],"mappings":";;;;;;AACO,SAAS,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE;AAC7C,EAAE,IAAI,EAAE,KAAK,YAAY,IAAI,CAAC,EAAE;AAChC,IAAI,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AAC7D,GAAG;AACH,EAAE,IAAI,MAAM,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;AAChC,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,EAAE,CAAC;AAC5B,EAAE,IAAI,MAAM,KAAK,IAAI,EAAE;AACvB,IAAI,MAAM,IAAI,EAAE,CAAC;AACjB,IAAI,IAAI,MAAM,KAAK,CAAC,EAAE;AACtB,MAAM,MAAM,IAAI,EAAE,CAAC;AACnB,KAAK;AACL,GAAG;AACH,EAAE,OAAO;AACT,IAAI,KAAK,EAAEA,eAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;AACrC,IAAI,OAAO,EAAEA,eAAO,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC;AACnD,IAAI,OAAO,EAAEA,eAAO,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC;AACnD,IAAI,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI;AAC5B,GAAG,CAAC;AACJ;;;;"}
@@ -5,22 +5,14 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var React = require('react');
6
6
  var core = require('@mantine/core');
7
7
  var hooks = require('@mantine/hooks');
8
- var TimeField = require('../TimeInputBase/TimeField/TimeField.js');
9
- var createTimeHandler = require('../TimeInputBase/create-time-handler/create-time-handler.js');
10
- var getTimeValue = require('../TimeInputBase/get-time-values/get-time-value.js');
11
8
  var TimeRangeInput_styles = require('./TimeRangeInput.styles.js');
12
- var padTime = require('../TimeInputBase/pad-time/pad-time.js');
13
- var AmPmInput = require('../TimeInputBase/AmPmInput/AmPmInput.js');
14
- var createAmPmHandler = require('../TimeInputBase/create-amPm-handler/create-amPm-handler.js');
15
- var getDate = require('../TimeInputBase/get-date/get-date.js');
9
+ var TimeInput = require('../TimeInput/TimeInput.js');
16
10
 
17
11
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e['default'] : e; }
18
12
 
19
13
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
20
14
 
21
15
  var __defProp = Object.defineProperty;
22
- var __defProps = Object.defineProperties;
23
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
24
16
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
25
17
  var __hasOwnProp = Object.prototype.hasOwnProperty;
26
18
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
@@ -36,7 +28,6 @@ var __spreadValues = (a, b) => {
36
28
  }
37
29
  return a;
38
30
  };
39
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
40
31
  var __objRest = (source, exclude) => {
41
32
  var target = {};
42
33
  for (var prop in source)
@@ -70,7 +61,7 @@ const TimeRangeInput = React.forwardRef((_a, ref) => {
70
61
  styles,
71
62
  id,
72
63
  value,
73
- defaultValue,
64
+ defaultValue = [null, null],
74
65
  onChange,
75
66
  withSeconds = false,
76
67
  clearable = false,
@@ -119,106 +110,22 @@ const TimeRangeInput = React.forwardRef((_a, ref) => {
119
110
  const { classes, cx, theme } = TimeRangeInput_styles['default']({ size }, { classNames, styles, name: "TimeRangeInput" });
120
111
  const { margins, rest } = core.extractMargins(others);
121
112
  const uuid = hooks.useUuid(id);
122
- const hoursRef = React.useRef([]);
123
- const minutesRef = React.useRef([]);
124
- const secondsRef = React.useRef([]);
125
- const formatsRef = React.useRef([]);
126
- const [fromTime, setFromTime] = React.useState(getTimeValue.getTimeValues(value ? value[0] : defaultValue ? defaultValue[0] : void 0));
127
- const [toTime, setToTime] = React.useState(getTimeValue.getTimeValues(value ? value[1] : defaultValue ? defaultValue[1] : void 0));
128
- const [fromAmPm, setFromAmPm] = React.useState("am");
129
- const [toAmPm, setToAmPm] = React.useState("am");
130
- const [selectedFieldIndex, setSelectedFieldIndex] = React.useState(0);
113
+ const fromTimeRef = React.useRef();
114
+ const toTimeRef = React.useRef();
131
115
  const [_value, setValue] = React.useState(value != null ? value : defaultValue);
132
- React.useEffect(() => {
133
- setValue([
134
- getDate.getDate(fromTime.hours, fromTime.minutes, fromTime.seconds, format, fromAmPm),
135
- getDate.getDate(toTime.hours, toTime.minutes, toTime.seconds, format, toAmPm)
136
- ]);
137
- }, [
138
- fromTime.hours,
139
- fromTime.minutes,
140
- fromTime.seconds,
141
- toTime.hours,
142
- toTime.minutes,
143
- toTime.seconds,
144
- format,
145
- fromAmPm,
146
- toAmPm
147
- ]);
148
- React.useEffect(() => {
149
- if (format === "12" && (_value[0] || _value[1])) {
150
- setFromAmPm(parseInt(fromTime.hours, 10) >= 12 ? "pm" : "am");
151
- setToAmPm(parseInt(toTime.hours, 10) >= 12 ? "pm" : "am");
152
- }
153
- }, [format]);
154
- const setTime = (cb) => {
155
- selectedFieldIndex === 0 ? setFromTime(cb) : setToTime(cb);
156
- };
157
- const nextMinuteRef = () => {
158
- if (withSeconds) {
159
- return secondsRef.current[selectedFieldIndex];
160
- }
161
- if (format === "12") {
162
- return formatsRef.current[selectedFieldIndex];
163
- }
164
- if (format === "24" && selectedFieldIndex === 0) {
165
- return hoursRef.current[1];
166
- }
167
- return void 0;
168
- };
169
- const handleHoursChange = createTimeHandler.createTimeHandler({
170
- onChange: (val) => {
171
- setTime((current) => __spreadProps(__spreadValues({}, current), { hours: padTime.padTime(val) }));
172
- },
173
- min: 0,
174
- max: format === "12" ? 11 : 23,
175
- maxValue: format === "12" ? 1 : 2,
176
- nextRef: {
177
- current: minutesRef.current[selectedFieldIndex]
178
- }
179
- });
180
- const handleMinutesChange = createTimeHandler.createTimeHandler({
181
- onChange: (val) => {
182
- setTime((current) => __spreadProps(__spreadValues({}, current), { minutes: padTime.padTime(val) }));
183
- },
184
- min: 0,
185
- max: 59,
186
- maxValue: 5,
187
- nextRef: {
188
- current: nextMinuteRef()
189
- }
190
- });
191
- const handleSecondsChange = createTimeHandler.createTimeHandler({
192
- onChange: (val) => {
193
- setTime((current) => __spreadProps(__spreadValues({}, current), { seconds: padTime.padTime(val) }));
194
- },
195
- min: 0,
196
- max: 59,
197
- maxValue: 5,
198
- nextRef: {
199
- current: format === "12" ? formatsRef.current[selectedFieldIndex] : format === "24" && selectedFieldIndex === 0 ? hoursRef.current[1] : void 0
200
- }
201
- });
202
- const handleAmPmChange = createAmPmHandler.createAmPmHandler({
203
- onChange: (val) => {
204
- if (selectedFieldIndex === 0) {
205
- setFromAmPm(val);
206
- } else {
207
- setToAmPm(val);
208
- }
209
- },
210
- nextRef: {
211
- current: selectedFieldIndex === 0 ? hoursRef.current[1] : void 0
116
+ hooks.useDidUpdate(() => {
117
+ typeof onChange === "function" && onChange(_value);
118
+ }, [_value]);
119
+ hooks.useDidUpdate(() => {
120
+ var _a2, _b2, _c, _d;
121
+ if (((_a2 = value[0]) == null ? void 0 : _a2.getTime()) !== ((_b2 = _value[0]) == null ? void 0 : _b2.getTime()) || ((_c = value[1]) == null ? void 0 : _c.getTime()) !== ((_d = _value[1]) == null ? void 0 : _d.getTime())) {
122
+ setValue(value);
212
123
  }
213
- });
124
+ }, [value]);
214
125
  const handleClear = () => {
215
126
  var _a2;
216
- setFromTime({ hours: "", minutes: "", seconds: "" });
217
- setToTime({ hours: "", minutes: "", seconds: "" });
218
- setSelectedFieldIndex(0);
219
- setFromAmPm("");
220
- setToAmPm("");
221
- (_a2 = hoursRef.current[0]) == null ? void 0 : _a2.focus();
127
+ setValue([null, null]);
128
+ (_a2 = fromTimeRef.current) == null ? void 0 : _a2.focus();
222
129
  };
223
130
  const rightSection = clearable && _value.filter((item) => Boolean(item)).length > 0 ? /* @__PURE__ */ React__default.createElement(core.CloseButton, {
224
131
  variant: "transparent",
@@ -226,6 +133,18 @@ const TimeRangeInput = React.forwardRef((_a, ref) => {
226
133
  onClick: handleClear,
227
134
  size
228
135
  }) : null;
136
+ const forwardProps = {
137
+ amPmLabel,
138
+ amPmPlaceholder,
139
+ disabled,
140
+ format,
141
+ hoursLabel,
142
+ minutesLabel,
143
+ secondsLabel,
144
+ size,
145
+ timePlaceholder,
146
+ withSeconds
147
+ };
229
148
  return /* @__PURE__ */ React__default.createElement(core.InputWrapper, __spreadValues(__spreadValues({
230
149
  required,
231
150
  label,
@@ -245,8 +164,8 @@ const TimeRangeInput = React.forwardRef((_a, ref) => {
245
164
  required,
246
165
  invalid: !!error,
247
166
  onClick: () => {
248
- setSelectedFieldIndex(0);
249
- hoursRef.current[selectedFieldIndex].focus();
167
+ var _a2;
168
+ (_a2 = fromTimeRef.current) == null ? void 0 : _a2.focus();
250
169
  },
251
170
  size,
252
171
  className: cx({ [classes.disabled]: disabled }),
@@ -257,137 +176,25 @@ const TimeRangeInput = React.forwardRef((_a, ref) => {
257
176
  rightSectionWidth: theme.fn.size({ size, sizes: RIGHT_SECTION_WIDTH })
258
177
  }, rest), /* @__PURE__ */ React__default.createElement("div", {
259
178
  className: classes.inputWrapper
260
- }, /* @__PURE__ */ React__default.createElement(TimeField.TimeField, {
261
- ref: hooks.useMergedRef((node) => {
262
- hoursRef.current[0] = node;
263
- }, ref),
264
- value: fromTime.hours,
265
- onChange: handleHoursChange,
266
- setValue: (val) => setTime((current) => __spreadProps(__spreadValues({}, current), { hours: val })),
267
- id: uuid,
268
- className: classes.timeField,
269
- withSeparator: true,
270
- size,
271
- max: format === "12" ? 11 : 23,
272
- placeholder: timePlaceholder,
273
- "aria-label": `from ${hoursLabel}`,
274
- disabled,
275
- onFocus: () => setSelectedFieldIndex(0)
276
- }), /* @__PURE__ */ React__default.createElement(TimeField.TimeField, {
277
- ref: (node) => {
278
- minutesRef.current[0] = node;
279
- },
280
- value: fromTime.minutes,
281
- onChange: handleMinutesChange,
282
- setValue: (val) => setTime((current) => __spreadProps(__spreadValues({}, current), { minutes: val })),
283
- className: classes.timeField,
284
- withSeparator: withSeconds,
285
- size,
286
- max: 59,
287
- placeholder: timePlaceholder,
288
- "aria-label": `from ${minutesLabel}`,
289
- disabled,
290
- onFocus: () => setSelectedFieldIndex(0)
291
- }), withSeconds && /* @__PURE__ */ React__default.createElement(TimeField.TimeField, {
292
- ref: (node) => {
293
- secondsRef.current[0] = node;
294
- },
295
- value: fromTime.seconds,
296
- onChange: handleSecondsChange,
297
- setValue: (val) => setTime((current) => __spreadProps(__spreadValues({}, current), { seconds: val })),
298
- className: classes.timeField,
299
- size,
300
- max: 59,
301
- placeholder: timePlaceholder,
302
- "aria-label": `from ${secondsLabel}`,
303
- disabled,
304
- onFocus: () => setSelectedFieldIndex(0)
305
- }), format === "12" && /* @__PURE__ */ React__default.createElement(AmPmInput.AmPmInput, {
306
- ref: (node) => {
307
- formatsRef.current[0] = node;
308
- },
309
- value: fromAmPm,
310
- onChange: handleAmPmChange,
311
- setValue: (val) => {
312
- setFromAmPm(val);
313
- },
314
- placeholder: amPmPlaceholder,
315
- onFocus: () => setSelectedFieldIndex(0),
316
- "aria-label": `from ${amPmLabel}`,
317
- disabled
318
- }), /* @__PURE__ */ React__default.createElement("span", {
179
+ }, /* @__PURE__ */ React__default.createElement(TimeInput.TimeInput, __spreadValues({
180
+ ref: hooks.useMergedRef(fromTimeRef, ref),
181
+ variant: "unstyled",
182
+ value: _value[0],
183
+ onChange: (date) => setValue([date, _value[1]]),
184
+ name,
185
+ nextRef: toTimeRef,
186
+ id: uuid
187
+ }, forwardProps)), /* @__PURE__ */ React__default.createElement("span", {
319
188
  className: classes.separator,
320
189
  style: {
321
- color: (toTime == null ? void 0 : toTime.hours) ? "inherit" : theme.colorScheme === "dark" ? theme.colors.dark[2] : theme.colors.gray[7]
190
+ color: theme.colorScheme === "dark" ? theme.colors.dark[2] : theme.colors.gray[7]
322
191
  }
323
- }, labelSeparator), /* @__PURE__ */ React__default.createElement("div", {
324
- className: classes.inputWrapper
325
- }, /* @__PURE__ */ React__default.createElement(TimeField.TimeField, {
326
- ref: (node) => {
327
- hoursRef.current[1] = node;
328
- },
329
- value: format === "12" && parseInt(toTime.hours, 10) >= 12 ? padTime.padTime((parseInt(toTime.hours, 10) - 12).toString()) : toTime.hours,
330
- onChange: handleHoursChange,
331
- setValue: (val) => setTime((current) => __spreadProps(__spreadValues({}, current), { hours: val })),
332
- className: classes.timeField,
333
- withSeparator: true,
334
- size,
335
- max: format === "12" ? 11 : 23,
336
- placeholder: timePlaceholder,
337
- "aria-label": `to ${hoursLabel}`,
338
- disabled,
339
- onFocus: () => setSelectedFieldIndex(1)
340
- }), /* @__PURE__ */ React__default.createElement(TimeField.TimeField, {
341
- ref: (node) => {
342
- minutesRef.current[1] = node;
343
- },
344
- value: toTime.minutes,
345
- onChange: handleMinutesChange,
346
- setValue: (val) => setTime((current) => __spreadProps(__spreadValues({}, current), { minutes: val })),
347
- className: classes.timeField,
348
- withSeparator: withSeconds,
349
- size,
350
- max: 59,
351
- placeholder: timePlaceholder,
352
- "aria-label": `to ${minutesLabel}`,
353
- disabled,
354
- onFocus: () => setSelectedFieldIndex(1)
355
- }), withSeconds && /* @__PURE__ */ React__default.createElement(TimeField.TimeField, {
356
- ref: (node) => {
357
- secondsRef.current[1] = node;
358
- },
359
- value: toTime.seconds,
360
- onChange: handleSecondsChange,
361
- setValue: (val) => setTime((current) => __spreadProps(__spreadValues({}, current), { seconds: val })),
362
- className: classes.timeField,
363
- size,
364
- max: 59,
365
- placeholder: timePlaceholder,
366
- "aria-label": `to ${secondsLabel}`,
367
- disabled,
368
- onFocus: () => setSelectedFieldIndex(1)
369
- }), format === "12" && /* @__PURE__ */ React__default.createElement(AmPmInput.AmPmInput, {
370
- ref: (node) => {
371
- formatsRef.current[1] = node;
372
- },
373
- value: toAmPm,
374
- onChange: handleAmPmChange,
375
- setValue: (val) => {
376
- setToAmPm(val);
377
- },
378
- placeholder: amPmPlaceholder,
379
- onFocus: () => setSelectedFieldIndex(1),
380
- "aria-label": `to ${amPmLabel}`,
381
- disabled
382
- })), name && /* @__PURE__ */ React__default.createElement("input", {
383
- type: "hidden",
384
- name: `${name}-from`,
385
- value: _value[0].toISOString()
386
- }), name && /* @__PURE__ */ React__default.createElement("input", {
387
- type: "hidden",
388
- name: `${name}-to`,
389
- value: _value[1].toISOString()
390
- }))));
192
+ }, labelSeparator), /* @__PURE__ */ React__default.createElement(TimeInput.TimeInput, __spreadValues({
193
+ ref: toTimeRef,
194
+ variant: "unstyled",
195
+ value: _value[1],
196
+ onChange: (date) => setValue([_value[0], date])
197
+ }, forwardProps)))));
391
198
  });
392
199
  TimeRangeInput.displayName = "@mantine/dates/TimeRangeInput";
393
200
 
@@ -1 +1 @@
1
- {"version":3,"file":"TimeRangeInput.js","sources":["../../../src/components/TimeRangeInput/TimeRangeInput.tsx"],"sourcesContent":["import React, { useState, useRef, forwardRef, useEffect } from 'react';\nimport {\n InputBaseProps,\n InputWrapperBaseProps,\n InputStylesNames,\n InputWrapperStylesNames,\n DefaultProps,\n Input,\n InputWrapper,\n MantineSize,\n ClassNames,\n CloseButton,\n extractMargins,\n} from '@mantine/core';\nimport { useMergedRef, useUuid } from '@mantine/hooks';\nimport { TimeField } from '../TimeInputBase/TimeField/TimeField';\nimport { createTimeHandler } from '../TimeInputBase/create-time-handler/create-time-handler';\nimport { getTimeValues } from '../TimeInputBase/get-time-values/get-time-value';\nimport useStyles from './TimeRangeInput.styles';\nimport { padTime } from '../TimeInputBase/pad-time/pad-time';\nimport { AmPmInput } from '../TimeInputBase/AmPmInput/AmPmInput';\nimport { createAmPmHandler } from '../TimeInputBase/create-amPm-handler/create-amPm-handler';\nimport { getDate } from '../TimeInputBase/get-date/get-date';\n\nexport type TimeRangeInputStylesNames =\n | Exclude<ClassNames<typeof useStyles>, 'disabled'>\n | InputStylesNames\n | InputWrapperStylesNames;\n\nexport interface TimeRangeInputProps\n extends DefaultProps<TimeRangeInputStylesNames>,\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, Date | null];\n\n /** Uncontrolled input default value */\n defaultValue?: [Date | null, Date | null];\n\n /** Controlled input onChange handler */\n onChange?(value: [Date, 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 /** The 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 time input */\n timePlaceholder?: string;\n\n /** placeholder for am/pm input */\n amPmPlaceholder?: string;\n\n /** Disable field */\n disabled?: boolean;\n\n /** Separator between time inputs */\n labelSeparator?: string;\n}\n\nconst RIGHT_SECTION_WIDTH = {\n xs: 24,\n sm: 30,\n md: 34,\n lg: 40,\n xl: 44,\n};\n\nexport const TimeRangeInput = forwardRef<HTMLInputElement, TimeRangeInputProps>(\n (\n {\n required,\n label,\n error,\n description,\n className,\n style,\n size = 'sm',\n wrapperProps,\n classNames,\n styles,\n id,\n value,\n defaultValue,\n onChange,\n withSeconds = false,\n clearable = false,\n clearButtonLabel,\n format = '24',\n name,\n hoursLabel,\n minutesLabel,\n secondsLabel,\n amPmLabel,\n timePlaceholder = '--',\n amPmPlaceholder = 'am',\n labelSeparator = '–',\n disabled = false,\n sx,\n ...others\n }: TimeRangeInputProps,\n ref\n ) => {\n const { classes, cx, theme } = useStyles(\n { size },\n { classNames, styles, name: 'TimeRangeInput' }\n );\n const { margins, rest } = extractMargins(others);\n const uuid = useUuid(id);\n\n const hoursRef = useRef<HTMLInputElement[]>([]);\n const minutesRef = useRef<HTMLInputElement[]>([]);\n const secondsRef = useRef<HTMLInputElement[]>([]);\n const formatsRef = useRef<HTMLInputElement[]>([]);\n const [fromTime, setFromTime] = useState<{ hours: string; minutes: string; seconds: string }>(\n getTimeValues(value ? value[0] : undefined || defaultValue ? defaultValue[0] : undefined)\n );\n const [toTime, setToTime] = useState<{ hours: string; minutes: string; seconds: string }>(\n getTimeValues(value ? value[1] : undefined || defaultValue ? defaultValue[1] : undefined)\n );\n const [fromAmPm, setFromAmPm] = useState('am');\n const [toAmPm, setToAmPm] = useState('am');\n const [selectedFieldIndex, setSelectedFieldIndex] = useState<0 | 1>(0);\n const [_value, setValue] = useState<[Date, Date]>(value ?? defaultValue);\n\n useEffect(() => {\n setValue([\n getDate(fromTime.hours, fromTime.minutes, fromTime.seconds, format, fromAmPm),\n getDate(toTime.hours, toTime.minutes, toTime.seconds, format, toAmPm),\n ]);\n }, [\n fromTime.hours,\n fromTime.minutes,\n fromTime.seconds,\n toTime.hours,\n toTime.minutes,\n toTime.seconds,\n format,\n fromAmPm,\n toAmPm,\n ]);\n\n useEffect(() => {\n if (format === '12' && (_value[0] || _value[1])) {\n setFromAmPm(parseInt(fromTime.hours, 10) >= 12 ? 'pm' : 'am');\n setToAmPm(parseInt(toTime.hours, 10) >= 12 ? 'pm' : 'am');\n }\n }, [format]);\n\n const setTime = (\n cb: (val: ReturnType<typeof getTimeValues>) => ReturnType<typeof getTimeValues>\n ) => {\n selectedFieldIndex === 0 ? setFromTime(cb) : setToTime(cb);\n };\n\n const nextMinuteRef = () => {\n if (withSeconds) {\n return secondsRef.current[selectedFieldIndex];\n }\n\n if (format === '12') {\n return formatsRef.current[selectedFieldIndex];\n }\n\n if (format === '24' && selectedFieldIndex === 0) {\n return hoursRef.current[1];\n }\n\n return undefined;\n };\n\n const handleHoursChange = createTimeHandler({\n onChange: (val) => {\n setTime((current) => ({ ...current, hours: padTime(val) }));\n },\n min: 0,\n max: format === '12' ? 11 : 23,\n maxValue: format === '12' ? 1 : 2,\n nextRef: {\n current: minutesRef.current[selectedFieldIndex],\n },\n });\n\n const handleMinutesChange = createTimeHandler({\n onChange: (val) => {\n setTime((current) => ({ ...current, minutes: padTime(val) }));\n },\n min: 0,\n max: 59,\n maxValue: 5,\n nextRef: {\n current: nextMinuteRef(),\n },\n });\n\n const handleSecondsChange = createTimeHandler({\n onChange: (val) => {\n setTime((current) => ({ ...current, seconds: padTime(val) }));\n },\n min: 0,\n max: 59,\n maxValue: 5,\n nextRef: {\n current:\n format === '12'\n ? formatsRef.current[selectedFieldIndex]\n : format === '24' && selectedFieldIndex === 0\n ? hoursRef.current[1]\n : undefined,\n },\n });\n\n const handleAmPmChange = createAmPmHandler({\n onChange: (val) => {\n if (selectedFieldIndex === 0) {\n setFromAmPm(val);\n } else {\n setToAmPm(val);\n }\n },\n nextRef: {\n current: selectedFieldIndex === 0 ? hoursRef.current[1] : undefined,\n },\n });\n\n const handleClear = () => {\n setFromTime({ hours: '', minutes: '', seconds: '' });\n setToTime({ hours: '', minutes: '', seconds: '' });\n setSelectedFieldIndex(0);\n setFromAmPm('');\n setToAmPm('');\n hoursRef.current[0]?.focus();\n };\n\n const rightSection =\n clearable && _value.filter((item) => Boolean(item)).length > 0 ? (\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=\"TimeRangeInput\"\n id={uuid}\n sx={sx}\n {...margins}\n {...wrapperProps}\n >\n <Input\n component=\"div\"\n __staticSelector=\"TimeRangeInput\"\n required={required}\n invalid={!!error}\n onClick={() => {\n setSelectedFieldIndex(0);\n hoursRef.current[selectedFieldIndex].focus();\n }}\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.inputWrapper}>\n <TimeField\n ref={useMergedRef((node: HTMLInputElement) => {\n hoursRef.current[0] = node;\n }, ref)}\n value={fromTime.hours}\n onChange={handleHoursChange}\n setValue={(val) => setTime((current) => ({ ...current, hours: val }))}\n id={uuid}\n className={classes.timeField}\n withSeparator\n size={size}\n max={format === '12' ? 11 : 23}\n placeholder={timePlaceholder}\n aria-label={`from ${hoursLabel}`}\n disabled={disabled}\n onFocus={() => setSelectedFieldIndex(0)}\n />\n\n <TimeField\n ref={(node) => {\n minutesRef.current[0] = node;\n }}\n value={fromTime.minutes}\n onChange={handleMinutesChange}\n setValue={(val) => setTime((current) => ({ ...current, minutes: val }))}\n className={classes.timeField}\n withSeparator={withSeconds}\n size={size}\n max={59}\n placeholder={timePlaceholder}\n aria-label={`from ${minutesLabel}`}\n disabled={disabled}\n onFocus={() => setSelectedFieldIndex(0)}\n />\n\n {withSeconds && (\n <TimeField\n ref={(node) => {\n secondsRef.current[0] = node;\n }}\n value={fromTime.seconds}\n onChange={handleSecondsChange}\n setValue={(val) => setTime((current) => ({ ...current, seconds: val }))}\n className={classes.timeField}\n size={size}\n max={59}\n placeholder={timePlaceholder}\n aria-label={`from ${secondsLabel}`}\n disabled={disabled}\n onFocus={() => setSelectedFieldIndex(0)}\n />\n )}\n\n {format === '12' && (\n <AmPmInput\n ref={(node) => {\n formatsRef.current[0] = node;\n }}\n value={fromAmPm}\n onChange={handleAmPmChange}\n setValue={(val) => {\n setFromAmPm(val);\n }}\n placeholder={amPmPlaceholder}\n onFocus={() => setSelectedFieldIndex(0)}\n aria-label={`from ${amPmLabel}`}\n disabled={disabled}\n />\n )}\n\n <span\n className={classes.separator}\n style={{\n color: toTime?.hours\n ? 'inherit'\n : theme.colorScheme === 'dark'\n ? theme.colors.dark[2]\n : theme.colors.gray[7],\n }}\n >\n {labelSeparator}\n </span>\n\n <div className={classes.inputWrapper}>\n <TimeField\n ref={(node) => {\n hoursRef.current[1] = node;\n }}\n value={\n format === '12' && parseInt(toTime.hours, 10) >= 12\n ? padTime((parseInt(toTime.hours, 10) - 12).toString())\n : toTime.hours\n }\n onChange={handleHoursChange}\n setValue={(val) => setTime((current) => ({ ...current, hours: val }))}\n className={classes.timeField}\n withSeparator\n size={size}\n max={format === '12' ? 11 : 23}\n placeholder={timePlaceholder}\n aria-label={`to ${hoursLabel}`}\n disabled={disabled}\n onFocus={() => setSelectedFieldIndex(1)}\n />\n\n <TimeField\n ref={(node) => {\n minutesRef.current[1] = node;\n }}\n value={toTime.minutes}\n onChange={handleMinutesChange}\n setValue={(val) => setTime((current) => ({ ...current, minutes: val }))}\n className={classes.timeField}\n withSeparator={withSeconds}\n size={size}\n max={59}\n placeholder={timePlaceholder}\n aria-label={`to ${minutesLabel}`}\n disabled={disabled}\n onFocus={() => setSelectedFieldIndex(1)}\n />\n\n {withSeconds && (\n <TimeField\n ref={(node) => {\n secondsRef.current[1] = node;\n }}\n value={toTime.seconds}\n onChange={handleSecondsChange}\n setValue={(val) => setTime((current) => ({ ...current, seconds: val }))}\n className={classes.timeField}\n size={size}\n max={59}\n placeholder={timePlaceholder}\n aria-label={`to ${secondsLabel}`}\n disabled={disabled}\n onFocus={() => setSelectedFieldIndex(1)}\n />\n )}\n\n {format === '12' && (\n <AmPmInput\n ref={(node) => {\n formatsRef.current[1] = node;\n }}\n value={toAmPm}\n onChange={handleAmPmChange}\n setValue={(val) => {\n setToAmPm(val);\n }}\n placeholder={amPmPlaceholder}\n onFocus={() => setSelectedFieldIndex(1)}\n aria-label={`to ${amPmLabel}`}\n disabled={disabled}\n />\n )}\n </div>\n {name && <input type=\"hidden\" name={`${name}-from`} value={_value[0].toISOString()} />}\n {name && <input type=\"hidden\" name={`${name}-to`} value={_value[1].toISOString()} />}\n </div>\n </Input>\n </InputWrapper>\n );\n }\n);\n\nTimeRangeInput.displayName = '@mantine/dates/TimeRangeInput';\n"],"names":["forwardRef","useStyles","extractMargins","useUuid","useRef","useState","getTimeValues","useEffect","getDate","createTimeHandler","padTime","createAmPmHandler","React","CloseButton","InputWrapper","Input","TimeField","useMergedRef","AmPmInput"],"mappings":"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"}
1
+ {"version":3,"file":"TimeRangeInput.js","sources":["../../../src/components/TimeRangeInput/TimeRangeInput.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 ClassNames,\n CloseButton,\n extractMargins,\n} from '@mantine/core';\nimport { useDidUpdate, useMergedRef, useUuid } from '@mantine/hooks';\nimport useStyles from './TimeRangeInput.styles';\nimport { TimeInput } from '../TimeInput';\n\nexport type TimeRangeInputStylesNames =\n | Exclude<ClassNames<typeof useStyles>, 'disabled'>\n | InputStylesNames\n | InputWrapperStylesNames;\n\nexport interface TimeRangeInputProps\n extends DefaultProps<TimeRangeInputStylesNames>,\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, Date | null];\n\n /** Uncontrolled input default value */\n defaultValue?: [Date | null, Date | null];\n\n /** Controlled input onChange handler */\n onChange?(value: [Date, 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 /** The 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 time input */\n timePlaceholder?: string;\n\n /** placeholder for am/pm input */\n amPmPlaceholder?: string;\n\n /** Disable field */\n disabled?: boolean;\n\n /** Separator between time inputs */\n labelSeparator?: string;\n}\n\nconst RIGHT_SECTION_WIDTH = {\n xs: 24,\n sm: 30,\n md: 34,\n lg: 40,\n xl: 44,\n};\n\nexport const TimeRangeInput = forwardRef<HTMLInputElement, TimeRangeInputProps>(\n (\n {\n required,\n label,\n error,\n description,\n className,\n style,\n size = 'sm',\n wrapperProps,\n classNames,\n styles,\n id,\n value,\n defaultValue = [null, null],\n onChange,\n withSeconds = false,\n clearable = false,\n clearButtonLabel,\n format = '24',\n name,\n hoursLabel,\n minutesLabel,\n secondsLabel,\n amPmLabel,\n timePlaceholder = '--',\n amPmPlaceholder = 'am',\n labelSeparator = '–',\n disabled = false,\n sx,\n ...others\n }: TimeRangeInputProps,\n ref\n ) => {\n const { classes, cx, theme } = useStyles(\n { size },\n { classNames, styles, name: 'TimeRangeInput' }\n );\n const { margins, rest } = extractMargins(others);\n const uuid = useUuid(id);\n\n const fromTimeRef = useRef<HTMLInputElement>();\n const toTimeRef = useRef<HTMLInputElement>();\n const [_value, setValue] = useState<[Date, Date]>(value ?? defaultValue);\n\n useDidUpdate(() => {\n typeof onChange === 'function' && onChange(_value);\n }, [_value]);\n\n // Allow controlled value prop to override internal _value\n useDidUpdate(() => {\n if (\n value[0]?.getTime() !== _value[0]?.getTime() ||\n value[1]?.getTime() !== _value[1]?.getTime()\n ) {\n setValue(value);\n }\n }, [value]);\n\n const handleClear = () => {\n setValue([null, null]);\n fromTimeRef.current?.focus();\n };\n\n const rightSection =\n clearable && _value.filter((item) => Boolean(item)).length > 0 ? (\n <CloseButton\n variant=\"transparent\"\n aria-label={clearButtonLabel}\n onClick={handleClear}\n size={size}\n />\n ) : null;\n\n const forwardProps = {\n amPmLabel,\n amPmPlaceholder,\n disabled,\n format,\n hoursLabel,\n minutesLabel,\n secondsLabel,\n size,\n timePlaceholder,\n withSeconds,\n };\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=\"TimeRangeInput\"\n id={uuid}\n sx={sx}\n {...margins}\n {...wrapperProps}\n >\n <Input\n component=\"div\"\n __staticSelector=\"TimeRangeInput\"\n required={required}\n invalid={!!error}\n onClick={() => {\n fromTimeRef.current?.focus();\n }}\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.inputWrapper}>\n <TimeInput\n ref={useMergedRef(fromTimeRef, ref)}\n variant=\"unstyled\"\n value={_value[0]}\n onChange={(date) => setValue([date, _value[1]])}\n name={name}\n nextRef={toTimeRef}\n id={uuid}\n {...forwardProps}\n />\n\n <span\n className={classes.separator}\n style={{\n color: theme.colorScheme === 'dark' ? theme.colors.dark[2] : theme.colors.gray[7],\n }}\n >\n {labelSeparator}\n </span>\n\n <TimeInput\n ref={toTimeRef}\n variant=\"unstyled\"\n value={_value[1]}\n onChange={(date) => setValue([_value[0], date])}\n {...forwardProps}\n />\n </div>\n </Input>\n </InputWrapper>\n );\n }\n);\n\nTimeRangeInput.displayName = '@mantine/dates/TimeRangeInput';\n"],"names":["forwardRef","useStyles","extractMargins","useUuid","useRef","useState","useDidUpdate","React","CloseButton","InputWrapper","Input","TimeInput","useMergedRef"],"mappings":"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"}
package/cjs/index.js CHANGED
@@ -17,6 +17,8 @@ var Month = require('./components/Month/Month.js');
17
17
  var RangeCalendar = require('./components/RangeCalendar/RangeCalendar.js');
18
18
  var TimeInput = require('./components/TimeInput/TimeInput.js');
19
19
  var TimeRangeInput = require('./components/TimeRangeInput/TimeRangeInput.js');
20
+ var CalendarBase = require('./components/CalendarBase/CalendarBase.js');
21
+ var DatePickerBase = require('./components/DatePickerBase/DatePickerBase.js');
20
22
 
21
23
 
22
24
 
@@ -35,4 +37,6 @@ exports.Month = Month.Month;
35
37
  exports.RangeCalendar = RangeCalendar.RangeCalendar;
36
38
  exports.TimeInput = TimeInput.TimeInput;
37
39
  exports.TimeRangeInput = TimeRangeInput.TimeRangeInput;
40
+ exports.CalendarBase = CalendarBase.CalendarBase;
41
+ exports.DatePickerBase = DatePickerBase.DatePickerBase;
38
42
  //# sourceMappingURL=index.js.map
package/cjs/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -207,7 +207,7 @@ const DatePickerBase = forwardRef((_a, ref) => {
207
207
  onBlur: handleInputBlur,
208
208
  onFocus: handleInputFocus,
209
209
  onChange,
210
- autoComplete: "off"
210
+ autoComplete: "nope"
211
211
  }, rest))), dropdownType === "popover" ? /* @__PURE__ */ React.createElement(Popper, {
212
212
  referenceElement,
213
213
  transitionDuration,