@mantine/dates 7.16.3 → 8.0.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.
- package/cjs/components/Calendar/Calendar.cjs +13 -17
- package/cjs/components/Calendar/Calendar.cjs.map +1 -1
- package/cjs/components/CalendarHeader/CalendarHeader.cjs.map +1 -1
- package/cjs/components/DateInput/DateInput.cjs +3 -9
- package/cjs/components/DateInput/DateInput.cjs.map +1 -1
- package/cjs/components/DateInput/date-string-parser/date-string-parser.cjs +8 -5
- package/cjs/components/DateInput/date-string-parser/date-string-parser.cjs.map +1 -1
- package/cjs/components/DateInput/is-date-valid/is-date-valid.cjs +1 -1
- package/cjs/components/DateInput/is-date-valid/is-date-valid.cjs.map +1 -1
- package/cjs/components/DatePicker/DatePicker.cjs +3 -10
- package/cjs/components/DatePicker/DatePicker.cjs.map +1 -1
- package/cjs/components/DatePickerInput/DatePickerInput.cjs +3 -9
- package/cjs/components/DatePickerInput/DatePickerInput.cjs.map +1 -1
- package/cjs/components/DateTimePicker/DateTimePicker.cjs +34 -34
- package/cjs/components/DateTimePicker/DateTimePicker.cjs.map +1 -1
- package/cjs/components/DateTimePicker/get-min-max-time/get-min-max-time.cjs +21 -0
- package/cjs/components/DateTimePicker/get-min-max-time/get-min-max-time.cjs.map +1 -0
- package/cjs/components/DatesProvider/DatesProvider.cjs +0 -1
- package/cjs/components/DatesProvider/DatesProvider.cjs.map +1 -1
- package/cjs/components/DatesProvider/use-dates-context.cjs +0 -5
- package/cjs/components/DatesProvider/use-dates-context.cjs.map +1 -1
- package/cjs/components/Day/Day.cjs +1 -5
- package/cjs/components/Day/Day.cjs.map +1 -1
- package/cjs/components/DecadeLevel/DecadeLevel.cjs.map +1 -1
- package/cjs/components/DecadeLevel/get-decade-range/get-decade-range.cjs.map +1 -1
- package/cjs/components/DecadeLevelGroup/DecadeLevelGroup.cjs +2 -3
- package/cjs/components/DecadeLevelGroup/DecadeLevelGroup.cjs.map +1 -1
- package/cjs/components/HiddenDatesInput/HiddenDatesInput.cjs +17 -15
- package/cjs/components/HiddenDatesInput/HiddenDatesInput.cjs.map +1 -1
- package/cjs/components/Month/Month.cjs +7 -6
- package/cjs/components/Month/Month.cjs.map +1 -1
- package/cjs/components/Month/get-date-in-tab-order/get-date-in-tab-order.cjs +11 -3
- package/cjs/components/Month/get-date-in-tab-order/get-date-in-tab-order.cjs.map +1 -1
- package/cjs/components/Month/get-end-of-week/get-end-of-week.cjs +1 -1
- package/cjs/components/Month/get-end-of-week/get-end-of-week.cjs.map +1 -1
- package/cjs/components/Month/get-month-days/get-month-days.cjs +10 -11
- package/cjs/components/Month/get-month-days/get-month-days.cjs.map +1 -1
- package/cjs/components/Month/get-start-of-week/get-start-of-week.cjs +1 -1
- package/cjs/components/Month/get-start-of-week/get-start-of-week.cjs.map +1 -1
- package/cjs/components/Month/get-week-number/get-week-number.cjs.map +1 -1
- package/cjs/components/Month/is-after-min-date/is-after-min-date.cjs +1 -1
- package/cjs/components/Month/is-after-min-date/is-after-min-date.cjs.map +1 -1
- package/cjs/components/Month/is-before-max-date/is-before-max-date.cjs +1 -1
- package/cjs/components/Month/is-before-max-date/is-before-max-date.cjs.map +1 -1
- package/cjs/components/MonthLevel/MonthLevel.cjs.map +1 -1
- package/cjs/components/MonthLevelGroup/MonthLevelGroup.cjs +2 -3
- package/cjs/components/MonthLevelGroup/MonthLevelGroup.cjs.map +1 -1
- package/cjs/components/MonthPicker/MonthPicker.cjs +3 -10
- package/cjs/components/MonthPicker/MonthPicker.cjs.map +1 -1
- package/cjs/components/MonthPickerInput/MonthPickerInput.cjs +2 -8
- package/cjs/components/MonthPickerInput/MonthPickerInput.cjs.map +1 -1
- package/cjs/components/MonthsList/MonthsList.cjs +12 -2
- package/cjs/components/MonthsList/MonthsList.cjs.map +1 -1
- package/cjs/components/MonthsList/get-month-in-tab-order/get-month-in-tab-order.cjs +7 -2
- package/cjs/components/MonthsList/get-month-in-tab-order/get-month-in-tab-order.cjs.map +1 -1
- package/cjs/components/MonthsList/get-months-data/get-months-data.cjs +1 -1
- package/cjs/components/MonthsList/get-months-data/get-months-data.cjs.map +1 -1
- package/cjs/components/MonthsList/is-month-disabled/is-month-disabled.cjs +1 -1
- package/cjs/components/MonthsList/is-month-disabled/is-month-disabled.cjs.map +1 -1
- package/cjs/components/PickerControl/PickerControl.cjs.map +1 -1
- package/cjs/components/PickerInputBase/PickerInputBase.cjs +4 -1
- package/cjs/components/PickerInputBase/PickerInputBase.cjs.map +1 -1
- package/cjs/components/SpinInput/SpinInput.cjs +115 -0
- package/cjs/components/SpinInput/SpinInput.cjs.map +1 -0
- package/cjs/components/TimeGrid/TimeGrid.cjs +104 -0
- package/cjs/components/TimeGrid/TimeGrid.cjs.map +1 -0
- package/cjs/components/TimeGrid/TimeGrid.context.cjs +12 -0
- package/cjs/components/TimeGrid/TimeGrid.context.cjs.map +1 -0
- package/cjs/components/TimeGrid/TimeGrid.module.css.cjs +7 -0
- package/cjs/components/TimeGrid/TimeGrid.module.css.cjs.map +1 -0
- package/cjs/components/TimeGrid/TimeGridControl.cjs +37 -0
- package/cjs/components/TimeGrid/TimeGridControl.cjs.map +1 -0
- package/cjs/components/TimeGrid/compare-time.cjs +15 -0
- package/cjs/components/TimeGrid/compare-time.cjs.map +1 -0
- package/cjs/components/TimeInput/TimeInput.cjs.map +1 -1
- package/cjs/components/TimePicker/AmPmInput/AmPmInput.cjs +72 -0
- package/cjs/components/TimePicker/AmPmInput/AmPmInput.cjs.map +1 -0
- package/cjs/components/TimePicker/TimeControlsList/AmPmControlsList.cjs +16 -0
- package/cjs/components/TimePicker/TimeControlsList/AmPmControlsList.cjs.map +1 -0
- package/cjs/components/TimePicker/TimeControlsList/TimeControl.cjs +27 -0
- package/cjs/components/TimePicker/TimeControlsList/TimeControl.cjs.map +1 -0
- package/cjs/components/TimePicker/TimeControlsList/TimeControlsList.cjs +54 -0
- package/cjs/components/TimePicker/TimeControlsList/TimeControlsList.cjs.map +1 -0
- package/cjs/components/TimePicker/TimePicker.cjs +387 -0
- package/cjs/components/TimePicker/TimePicker.cjs.map +1 -0
- package/cjs/components/TimePicker/TimePicker.context.cjs +12 -0
- package/cjs/components/TimePicker/TimePicker.context.cjs.map +1 -0
- package/cjs/components/TimePicker/TimePicker.module.css.cjs +7 -0
- package/cjs/components/TimePicker/TimePicker.module.css.cjs.map +1 -0
- package/cjs/components/TimePicker/TimePresets/TimePresetControl.cjs +31 -0
- package/cjs/components/TimePicker/TimePresets/TimePresetControl.cjs.map +1 -0
- package/cjs/components/TimePicker/TimePresets/TimePresetGroup.cjs +39 -0
- package/cjs/components/TimePicker/TimePresets/TimePresetGroup.cjs.map +1 -0
- package/cjs/components/TimePicker/TimePresets/TimePresets.cjs +73 -0
- package/cjs/components/TimePicker/TimePresets/TimePresets.cjs.map +1 -0
- package/cjs/components/TimePicker/use-time-picker.cjs +164 -0
- package/cjs/components/TimePicker/use-time-picker.cjs.map +1 -0
- package/cjs/components/TimePicker/utils/clamp-time/clamp-time.cjs +15 -0
- package/cjs/components/TimePicker/utils/clamp-time/clamp-time.cjs.map +1 -0
- package/cjs/components/TimePicker/utils/get-parsed-time/get-parsed-time.cjs +38 -0
- package/cjs/components/TimePicker/utils/get-parsed-time/get-parsed-time.cjs.map +1 -0
- package/cjs/components/TimePicker/utils/get-time-range/get-time-range.cjs +18 -0
- package/cjs/components/TimePicker/utils/get-time-range/get-time-range.cjs.map +1 -0
- package/cjs/components/TimePicker/utils/get-time-string/get-time-string.cjs +51 -0
- package/cjs/components/TimePicker/utils/get-time-string/get-time-string.cjs.map +1 -0
- package/cjs/components/TimePicker/utils/is-same-time/is-same-time.cjs +16 -0
- package/cjs/components/TimePicker/utils/is-same-time/is-same-time.cjs.map +1 -0
- package/cjs/components/TimePicker/utils/pad-time/pad-time.cjs +9 -0
- package/cjs/components/TimePicker/utils/pad-time/pad-time.cjs.map +1 -0
- package/cjs/components/TimePicker/utils/split-time-string/split-time-string.cjs +10 -0
- package/cjs/components/TimePicker/utils/split-time-string/split-time-string.cjs.map +1 -0
- package/cjs/components/TimePicker/utils/time-to-seconds/time-to-seconds.cjs +24 -0
- package/cjs/components/TimePicker/utils/time-to-seconds/time-to-seconds.cjs.map +1 -0
- package/cjs/components/TimeValue/TimeValue.cjs +18 -0
- package/cjs/components/TimeValue/TimeValue.cjs.map +1 -0
- package/cjs/components/TimeValue/get-formatted-time/get-formatted-time.cjs +31 -0
- package/cjs/components/TimeValue/get-formatted-time/get-formatted-time.cjs.map +1 -0
- package/cjs/components/WeekdaysRow/WeekdaysRow.cjs.map +1 -1
- package/cjs/components/WeekdaysRow/get-weekdays-names/get-weekdays-names.cjs +1 -1
- package/cjs/components/WeekdaysRow/get-weekdays-names/get-weekdays-names.cjs.map +1 -1
- package/cjs/components/YearLevel/YearLevel.cjs.map +1 -1
- package/cjs/components/YearLevelGroup/YearLevelGroup.cjs +2 -3
- package/cjs/components/YearLevelGroup/YearLevelGroup.cjs.map +1 -1
- package/cjs/components/YearPicker/YearPicker.cjs +3 -10
- package/cjs/components/YearPicker/YearPicker.cjs.map +1 -1
- package/cjs/components/YearPickerInput/YearPickerInput.cjs +3 -9
- package/cjs/components/YearPickerInput/YearPickerInput.cjs.map +1 -1
- package/cjs/components/YearsList/YearsList.cjs +7 -2
- package/cjs/components/YearsList/YearsList.cjs.map +1 -1
- package/cjs/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.cjs +7 -2
- package/cjs/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.cjs.map +1 -1
- package/cjs/components/YearsList/get-years-data/get-years-data.cjs +8 -2
- package/cjs/components/YearsList/get-years-data/get-years-data.cjs.map +1 -1
- package/cjs/components/YearsList/is-year-disabled/is-year-disabled.cjs +1 -1
- package/cjs/components/YearsList/is-year-disabled/is-year-disabled.cjs.map +1 -1
- package/cjs/hooks/use-dates-input/use-dates-input.cjs +7 -4
- package/cjs/hooks/use-dates-input/use-dates-input.cjs.map +1 -1
- package/cjs/hooks/use-dates-state/is-in-range/is-in-range.cjs +1 -1
- package/cjs/hooks/use-dates-state/is-in-range/is-in-range.cjs.map +1 -1
- package/cjs/hooks/use-dates-state/use-dates-state.cjs +10 -12
- package/cjs/hooks/use-dates-state/use-dates-state.cjs.map +1 -1
- package/cjs/hooks/use-uncontrolled-dates/use-uncontrolled-dates.cjs +10 -34
- package/cjs/hooks/use-uncontrolled-dates/use-uncontrolled-dates.cjs.map +1 -1
- package/cjs/index.cjs +19 -5
- package/cjs/index.cjs.map +1 -1
- package/cjs/utils/assign-time/assign-time.cjs +16 -13
- package/cjs/utils/assign-time/assign-time.cjs.map +1 -1
- package/cjs/utils/clamp-date/clamp-date.cjs +25 -0
- package/cjs/utils/clamp-date/clamp-date.cjs.map +1 -0
- package/cjs/utils/get-default-clamped-date/get-default-clamped-date.cjs +29 -0
- package/cjs/utils/get-default-clamped-date/get-default-clamped-date.cjs.map +1 -0
- package/cjs/utils/get-formatted-date/get-formatted-date.cjs +41 -0
- package/cjs/utils/get-formatted-date/get-formatted-date.cjs.map +1 -0
- package/cjs/utils/handle-control-key-down/handle-control-key-down.cjs +158 -0
- package/cjs/utils/handle-control-key-down/handle-control-key-down.cjs.map +1 -0
- package/cjs/utils/to-date-string/to-date-string.cjs +19 -0
- package/cjs/utils/to-date-string/to-date-string.cjs.map +1 -0
- package/esm/components/Calendar/Calendar.mjs +13 -17
- package/esm/components/Calendar/Calendar.mjs.map +1 -1
- package/esm/components/CalendarHeader/CalendarHeader.mjs.map +1 -1
- package/esm/components/DateInput/DateInput.mjs +3 -9
- package/esm/components/DateInput/DateInput.mjs.map +1 -1
- package/esm/components/DateInput/date-string-parser/date-string-parser.mjs +4 -5
- package/esm/components/DateInput/date-string-parser/date-string-parser.mjs.map +1 -1
- package/esm/components/DateInput/is-date-valid/is-date-valid.mjs +1 -1
- package/esm/components/DateInput/is-date-valid/is-date-valid.mjs.map +1 -1
- package/esm/components/DatePicker/DatePicker.mjs +3 -10
- package/esm/components/DatePicker/DatePicker.mjs.map +1 -1
- package/esm/components/DatePickerInput/DatePickerInput.mjs +3 -9
- package/esm/components/DatePickerInput/DatePickerInput.mjs.map +1 -1
- package/esm/components/DateTimePicker/DateTimePicker.mjs +34 -34
- package/esm/components/DateTimePicker/DateTimePicker.mjs.map +1 -1
- package/esm/components/DateTimePicker/get-min-max-time/get-min-max-time.mjs +14 -0
- package/esm/components/DateTimePicker/get-min-max-time/get-min-max-time.mjs.map +1 -0
- package/esm/components/DatesProvider/DatesProvider.mjs +0 -1
- package/esm/components/DatesProvider/DatesProvider.mjs.map +1 -1
- package/esm/components/DatesProvider/use-dates-context.mjs +0 -5
- package/esm/components/DatesProvider/use-dates-context.mjs.map +1 -1
- package/esm/components/Day/Day.mjs +1 -5
- package/esm/components/Day/Day.mjs.map +1 -1
- package/esm/components/DecadeLevel/DecadeLevel.mjs.map +1 -1
- package/esm/components/DecadeLevel/get-decade-range/get-decade-range.mjs.map +1 -1
- package/esm/components/DecadeLevelGroup/DecadeLevelGroup.mjs +2 -3
- package/esm/components/DecadeLevelGroup/DecadeLevelGroup.mjs.map +1 -1
- package/esm/components/HiddenDatesInput/HiddenDatesInput.mjs +17 -15
- package/esm/components/HiddenDatesInput/HiddenDatesInput.mjs.map +1 -1
- package/esm/components/Month/Month.mjs +7 -6
- package/esm/components/Month/Month.mjs.map +1 -1
- package/esm/components/Month/get-date-in-tab-order/get-date-in-tab-order.mjs +11 -3
- package/esm/components/Month/get-date-in-tab-order/get-date-in-tab-order.mjs.map +1 -1
- package/esm/components/Month/get-end-of-week/get-end-of-week.mjs +1 -1
- package/esm/components/Month/get-end-of-week/get-end-of-week.mjs.map +1 -1
- package/esm/components/Month/get-month-days/get-month-days.mjs +10 -11
- package/esm/components/Month/get-month-days/get-month-days.mjs.map +1 -1
- package/esm/components/Month/get-start-of-week/get-start-of-week.mjs +1 -1
- package/esm/components/Month/get-start-of-week/get-start-of-week.mjs.map +1 -1
- package/esm/components/Month/get-week-number/get-week-number.mjs.map +1 -1
- package/esm/components/Month/is-after-min-date/is-after-min-date.mjs +1 -1
- package/esm/components/Month/is-after-min-date/is-after-min-date.mjs.map +1 -1
- package/esm/components/Month/is-before-max-date/is-before-max-date.mjs +1 -1
- package/esm/components/Month/is-before-max-date/is-before-max-date.mjs.map +1 -1
- package/esm/components/MonthLevel/MonthLevel.mjs.map +1 -1
- package/esm/components/MonthLevelGroup/MonthLevelGroup.mjs +2 -3
- package/esm/components/MonthLevelGroup/MonthLevelGroup.mjs.map +1 -1
- package/esm/components/MonthPicker/MonthPicker.mjs +3 -10
- package/esm/components/MonthPicker/MonthPicker.mjs.map +1 -1
- package/esm/components/MonthPickerInput/MonthPickerInput.mjs +2 -8
- package/esm/components/MonthPickerInput/MonthPickerInput.mjs.map +1 -1
- package/esm/components/MonthsList/MonthsList.mjs +12 -2
- package/esm/components/MonthsList/MonthsList.mjs.map +1 -1
- package/esm/components/MonthsList/get-month-in-tab-order/get-month-in-tab-order.mjs +7 -2
- package/esm/components/MonthsList/get-month-in-tab-order/get-month-in-tab-order.mjs.map +1 -1
- package/esm/components/MonthsList/get-months-data/get-months-data.mjs +1 -1
- package/esm/components/MonthsList/get-months-data/get-months-data.mjs.map +1 -1
- package/esm/components/MonthsList/is-month-disabled/is-month-disabled.mjs +1 -1
- package/esm/components/MonthsList/is-month-disabled/is-month-disabled.mjs.map +1 -1
- package/esm/components/PickerControl/PickerControl.mjs.map +1 -1
- package/esm/components/PickerInputBase/PickerInputBase.mjs +4 -1
- package/esm/components/PickerInputBase/PickerInputBase.mjs.map +1 -1
- package/esm/components/SpinInput/SpinInput.mjs +113 -0
- package/esm/components/SpinInput/SpinInput.mjs.map +1 -0
- package/esm/components/TimeGrid/TimeGrid.context.mjs +9 -0
- package/esm/components/TimeGrid/TimeGrid.context.mjs.map +1 -0
- package/esm/components/TimeGrid/TimeGrid.mjs +102 -0
- package/esm/components/TimeGrid/TimeGrid.mjs.map +1 -0
- package/esm/components/TimeGrid/TimeGrid.module.css.mjs +5 -0
- package/esm/components/TimeGrid/TimeGrid.module.css.mjs.map +1 -0
- package/esm/components/TimeGrid/TimeGridControl.mjs +31 -0
- package/esm/components/TimeGrid/TimeGridControl.mjs.map +1 -0
- package/esm/components/TimeGrid/compare-time.mjs +12 -0
- package/esm/components/TimeGrid/compare-time.mjs.map +1 -0
- package/esm/components/TimeInput/TimeInput.mjs.map +1 -1
- package/esm/components/TimePicker/AmPmInput/AmPmInput.mjs +70 -0
- package/esm/components/TimePicker/AmPmInput/AmPmInput.mjs.map +1 -0
- package/esm/components/TimePicker/TimeControlsList/AmPmControlsList.mjs +14 -0
- package/esm/components/TimePicker/TimeControlsList/AmPmControlsList.mjs.map +1 -0
- package/esm/components/TimePicker/TimeControlsList/TimeControl.mjs +25 -0
- package/esm/components/TimePicker/TimeControlsList/TimeControl.mjs.map +1 -0
- package/esm/components/TimePicker/TimeControlsList/TimeControlsList.mjs +52 -0
- package/esm/components/TimePicker/TimeControlsList/TimeControlsList.mjs.map +1 -0
- package/esm/components/TimePicker/TimePicker.context.mjs +9 -0
- package/esm/components/TimePicker/TimePicker.context.mjs.map +1 -0
- package/esm/components/TimePicker/TimePicker.mjs +385 -0
- package/esm/components/TimePicker/TimePicker.mjs.map +1 -0
- package/esm/components/TimePicker/TimePicker.module.css.mjs +5 -0
- package/esm/components/TimePicker/TimePicker.module.css.mjs.map +1 -0
- package/esm/components/TimePicker/TimePresets/TimePresetControl.mjs +29 -0
- package/esm/components/TimePicker/TimePresets/TimePresetControl.mjs.map +1 -0
- package/esm/components/TimePicker/TimePresets/TimePresetGroup.mjs +37 -0
- package/esm/components/TimePicker/TimePresets/TimePresetGroup.mjs.map +1 -0
- package/esm/components/TimePicker/TimePresets/TimePresets.mjs +71 -0
- package/esm/components/TimePicker/TimePresets/TimePresets.mjs.map +1 -0
- package/esm/components/TimePicker/use-time-picker.mjs +162 -0
- package/esm/components/TimePicker/use-time-picker.mjs.map +1 -0
- package/esm/components/TimePicker/utils/clamp-time/clamp-time.mjs +13 -0
- package/esm/components/TimePicker/utils/clamp-time/clamp-time.mjs.map +1 -0
- package/esm/components/TimePicker/utils/get-parsed-time/get-parsed-time.mjs +35 -0
- package/esm/components/TimePicker/utils/get-parsed-time/get-parsed-time.mjs.map +1 -0
- package/esm/components/TimePicker/utils/get-time-range/get-time-range.mjs +16 -0
- package/esm/components/TimePicker/utils/get-time-range/get-time-range.mjs.map +1 -0
- package/esm/components/TimePicker/utils/get-time-string/get-time-string.mjs +49 -0
- package/esm/components/TimePicker/utils/get-time-string/get-time-string.mjs.map +1 -0
- package/esm/components/TimePicker/utils/is-same-time/is-same-time.mjs +14 -0
- package/esm/components/TimePicker/utils/is-same-time/is-same-time.mjs.map +1 -0
- package/esm/components/TimePicker/utils/pad-time/pad-time.mjs +7 -0
- package/esm/components/TimePicker/utils/pad-time/pad-time.mjs.map +1 -0
- package/esm/components/TimePicker/utils/split-time-string/split-time-string.mjs +8 -0
- package/esm/components/TimePicker/utils/split-time-string/split-time-string.mjs.map +1 -0
- package/esm/components/TimePicker/utils/time-to-seconds/time-to-seconds.mjs +21 -0
- package/esm/components/TimePicker/utils/time-to-seconds/time-to-seconds.mjs.map +1 -0
- package/esm/components/TimeValue/TimeValue.mjs +16 -0
- package/esm/components/TimeValue/TimeValue.mjs.map +1 -0
- package/esm/components/TimeValue/get-formatted-time/get-formatted-time.mjs +29 -0
- package/esm/components/TimeValue/get-formatted-time/get-formatted-time.mjs.map +1 -0
- package/esm/components/WeekdaysRow/WeekdaysRow.mjs.map +1 -1
- package/esm/components/WeekdaysRow/get-weekdays-names/get-weekdays-names.mjs +1 -1
- package/esm/components/WeekdaysRow/get-weekdays-names/get-weekdays-names.mjs.map +1 -1
- package/esm/components/YearLevel/YearLevel.mjs.map +1 -1
- package/esm/components/YearLevelGroup/YearLevelGroup.mjs +2 -3
- package/esm/components/YearLevelGroup/YearLevelGroup.mjs.map +1 -1
- package/esm/components/YearPicker/YearPicker.mjs +3 -10
- package/esm/components/YearPicker/YearPicker.mjs.map +1 -1
- package/esm/components/YearPickerInput/YearPickerInput.mjs +3 -9
- package/esm/components/YearPickerInput/YearPickerInput.mjs.map +1 -1
- package/esm/components/YearsList/YearsList.mjs +7 -2
- package/esm/components/YearsList/YearsList.mjs.map +1 -1
- package/esm/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.mjs +7 -2
- package/esm/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.mjs.map +1 -1
- package/esm/components/YearsList/get-years-data/get-years-data.mjs +4 -2
- package/esm/components/YearsList/get-years-data/get-years-data.mjs.map +1 -1
- package/esm/components/YearsList/is-year-disabled/is-year-disabled.mjs +1 -1
- package/esm/components/YearsList/is-year-disabled/is-year-disabled.mjs.map +1 -1
- package/esm/hooks/use-dates-input/use-dates-input.mjs +3 -4
- package/esm/hooks/use-dates-input/use-dates-input.mjs.map +1 -1
- package/esm/hooks/use-dates-state/is-in-range/is-in-range.mjs +1 -1
- package/esm/hooks/use-dates-state/is-in-range/is-in-range.mjs.map +1 -1
- package/esm/hooks/use-dates-state/use-dates-state.mjs +10 -12
- package/esm/hooks/use-dates-state/use-dates-state.mjs.map +1 -1
- package/esm/hooks/use-uncontrolled-dates/use-uncontrolled-dates.mjs +10 -35
- package/esm/hooks/use-uncontrolled-dates/use-uncontrolled-dates.mjs.map +1 -1
- package/esm/index.mjs +10 -4
- package/esm/index.mjs.map +1 -1
- package/esm/utils/assign-time/assign-time.mjs +12 -13
- package/esm/utils/assign-time/assign-time.mjs.map +1 -1
- package/esm/utils/clamp-date/clamp-date.mjs +19 -0
- package/esm/utils/clamp-date/clamp-date.mjs.map +1 -0
- package/esm/utils/get-default-clamped-date/get-default-clamped-date.mjs +23 -0
- package/esm/utils/get-default-clamped-date/get-default-clamped-date.mjs.map +1 -0
- package/esm/utils/get-formatted-date/get-formatted-date.mjs +34 -0
- package/esm/utils/get-formatted-date/get-formatted-date.mjs.map +1 -0
- package/esm/utils/handle-control-key-down/handle-control-key-down.mjs +156 -0
- package/esm/utils/handle-control-key-down/handle-control-key-down.mjs.map +1 -0
- package/esm/utils/to-date-string/to-date-string.mjs +12 -0
- package/esm/utils/to-date-string/to-date-string.mjs.map +1 -0
- package/lib/components/Calendar/Calendar.d.ts +31 -33
- package/lib/components/CalendarHeader/CalendarHeader.d.ts +12 -12
- package/lib/components/DateInput/DateInput.d.ts +18 -20
- package/lib/components/DateInput/date-string-parser/date-string-parser.d.ts +2 -1
- package/lib/components/DateInput/is-date-valid/is-date-valid.d.ts +4 -3
- package/lib/components/DateInputMask/DateInputMask.d.ts +63 -0
- package/lib/components/DateInputMask/use-date-input-mask.d.ts +1 -0
- package/lib/components/DatePicker/DatePicker.d.ts +3 -3
- package/lib/components/DatePickerInput/DatePickerInput.d.ts +1 -1
- package/lib/components/DateTimePicker/DateTimePicker.d.ts +9 -11
- package/lib/components/DateTimePicker/get-min-max-time/get-min-max-time.d.ts +12 -0
- package/lib/components/DatesProvider/DatesProvider.d.ts +0 -1
- package/lib/components/DatesProvider/use-dates-context.d.ts +0 -2
- package/lib/components/Day/Day.d.ts +7 -5
- package/lib/components/Day/index.d.ts +1 -1
- package/lib/components/DecadeLevel/DecadeLevel.d.ts +6 -5
- package/lib/components/DecadeLevel/get-decade-range/get-decade-range.d.ts +2 -1
- package/lib/components/DecadeLevelGroup/DecadeLevelGroup.d.ts +6 -5
- package/lib/components/HiddenDatesInput/HiddenDatesInput.d.ts +2 -1
- package/lib/components/Month/Month.d.ts +25 -25
- package/lib/components/Month/get-date-in-tab-order/get-date-in-tab-order.d.ts +12 -1
- package/lib/components/Month/get-end-of-week/get-end-of-week.d.ts +2 -2
- package/lib/components/Month/get-month-days/get-month-days.d.ts +3 -3
- package/lib/components/Month/get-start-of-week/get-start-of-week.d.ts +2 -2
- package/lib/components/Month/get-week-number/get-week-number.d.ts +2 -1
- package/lib/components/Month/is-after-min-date/is-after-min-date.d.ts +2 -1
- package/lib/components/Month/is-before-max-date/is-before-max-date.d.ts +2 -1
- package/lib/components/MonthLevel/MonthLevel.d.ts +4 -3
- package/lib/components/MonthLevelGroup/MonthLevelGroup.d.ts +7 -6
- package/lib/components/MonthPicker/MonthPicker.d.ts +8 -8
- package/lib/components/MonthPickerInput/MonthPickerInput.d.ts +1 -1
- package/lib/components/MonthsList/MonthsList.d.ts +8 -8
- package/lib/components/MonthsList/get-month-in-tab-order/get-month-in-tab-order.d.ts +9 -1
- package/lib/components/MonthsList/get-months-data/get-months-data.d.ts +2 -1
- package/lib/components/MonthsList/is-month-disabled/is-month-disabled.d.ts +8 -1
- package/lib/components/PickerControl/PickerControl.d.ts +5 -5
- package/lib/components/PickerInputBase/PickerInputBase.d.ts +11 -8
- package/lib/components/SpinInput/SpinInput.d.ts +12 -0
- package/lib/components/SpinInput/index.d.ts +1 -0
- package/lib/components/TimeGrid/TimeGrid.context.d.ts +10 -0
- package/lib/components/TimeGrid/TimeGrid.d.ts +52 -0
- package/lib/components/TimeGrid/TimeGridControl.d.ts +10 -0
- package/lib/components/TimeGrid/compare-time.d.ts +2 -0
- package/lib/components/TimeGrid/index.d.ts +3 -0
- package/lib/components/TimeInput/TimeInput.d.ts +3 -3
- package/lib/components/TimePicker/AmPmInput/AmPmInput.d.ts +13 -0
- package/lib/components/TimePicker/TimeControlsList/AmPmControlsList.d.ts +13 -0
- package/lib/components/TimePicker/TimeControlsList/TimeControl.d.ts +10 -0
- package/lib/components/TimePicker/TimeControlsList/TimeControlsList.d.ts +12 -0
- package/lib/components/TimePicker/TimePicker.context.d.ts +12 -0
- package/lib/components/TimePicker/TimePicker.d.ts +98 -0
- package/lib/components/TimePicker/TimePicker.types.d.ts +22 -0
- package/lib/components/TimePicker/TimePresets/TimePresetControl.d.ts +14 -0
- package/lib/components/TimePicker/TimePresets/TimePresetGroup.d.ts +14 -0
- package/lib/components/TimePicker/TimePresets/TimePresets.d.ts +14 -0
- package/lib/components/TimePicker/index.d.ts +4 -0
- package/lib/components/TimePicker/use-time-picker.d.ts +40 -0
- package/lib/components/TimePicker/utils/clamp-time/clamp-time.d.ts +6 -0
- package/lib/components/TimePicker/utils/get-parsed-time/get-parsed-time.d.ts +35 -0
- package/lib/components/TimePicker/utils/get-time-range/get-time-range.d.ts +7 -0
- package/lib/components/TimePicker/utils/get-time-string/get-time-string.d.ts +15 -0
- package/lib/components/TimePicker/utils/is-same-time/is-same-time.d.ts +7 -0
- package/lib/components/TimePicker/utils/pad-time/pad-time.d.ts +1 -0
- package/lib/components/TimePicker/utils/split-time-string/split-time-string.d.ts +5 -0
- package/lib/components/TimePicker/utils/time-to-seconds/time-to-seconds.d.ts +7 -0
- package/lib/components/TimeValue/TimeValue.d.ts +15 -0
- package/lib/components/TimeValue/get-formatted-time/get-formatted-time.d.ts +8 -0
- package/lib/components/TimeValue/index.d.ts +2 -0
- package/lib/components/WeekdaysRow/WeekdaysRow.d.ts +7 -7
- package/lib/components/WeekdaysRow/get-weekdays-names/get-weekdays-names.d.ts +2 -2
- package/lib/components/YearLevel/YearLevel.d.ts +6 -5
- package/lib/components/YearLevelGroup/YearLevelGroup.d.ts +6 -5
- package/lib/components/YearPicker/YearPicker.d.ts +2 -2
- package/lib/components/YearPickerInput/YearPickerInput.d.ts +1 -1
- package/lib/components/YearsList/YearsList.d.ts +7 -7
- package/lib/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.d.ts +9 -1
- package/lib/components/YearsList/get-years-data/get-years-data.d.ts +2 -1
- package/lib/components/YearsList/is-year-disabled/is-year-disabled.d.ts +8 -1
- package/lib/hooks/use-dates-state/is-in-range/is-in-range.d.ts +2 -1
- package/lib/hooks/use-dates-state/use-dates-state.d.ts +5 -6
- package/lib/hooks/use-uncontrolled-dates/use-uncontrolled-dates.d.ts +5 -4
- package/lib/index.d.mts +3 -0
- package/lib/index.d.ts +3 -0
- package/lib/types/ControlsGroupSettings.d.ts +7 -7
- package/lib/types/DatePickerValue.d.ts +4 -3
- package/lib/types/GeneralTypes.d.ts +4 -1
- package/lib/types/PickerBaseProps.d.ts +2 -1
- package/lib/utils/assign-time/assign-time.d.ts +3 -1
- package/lib/utils/clamp-date/clamp-date.d.ts +2 -0
- package/lib/utils/get-default-clamped-date/get-default-clamped-date.d.ts +7 -0
- package/lib/utils/get-formatted-date/get-formatted-date.d.ts +15 -0
- package/lib/utils/handle-control-key-down/handle-control-key-down.d.ts +11 -0
- package/lib/utils/index.d.ts +6 -5
- package/lib/utils/to-date-string/to-date-string.d.ts +4 -0
- package/package.json +5 -5
- package/styles.css +241 -4
- package/styles.layer.css +241 -4
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { BoxProps, ElementProps, Factory, StylesApiProps } from '@mantine/core';
|
|
2
|
+
import { DateLabelFormat, DateStringValue } from '../../types';
|
|
2
3
|
import { CalendarHeaderSettings, CalendarHeaderStylesNames } from '../CalendarHeader';
|
|
3
4
|
import { MonthsListSettings, MonthsListStylesNames } from '../MonthsList';
|
|
4
5
|
export type YearLevelStylesNames = MonthsListStylesNames | CalendarHeaderStylesNames;
|
|
5
6
|
export interface YearLevelBaseSettings extends MonthsListSettings {
|
|
6
|
-
/**
|
|
7
|
-
yearLabelFormat?:
|
|
7
|
+
/** dayjs label format to display year label or a function that returns year label based on year value, `"YYYY"` by default */
|
|
8
|
+
yearLabelFormat?: DateLabelFormat;
|
|
8
9
|
}
|
|
9
10
|
export interface YearLevelSettings extends YearLevelBaseSettings, CalendarHeaderSettings {
|
|
10
11
|
}
|
|
@@ -12,9 +13,9 @@ export interface YearLevelProps extends BoxProps, YearLevelSettings, Omit<Styles
|
|
|
12
13
|
classNames?: Partial<Record<string, string>>;
|
|
13
14
|
styles?: Partial<Record<string, React.CSSProperties>>;
|
|
14
15
|
__staticSelector?: string;
|
|
15
|
-
/**
|
|
16
|
-
year:
|
|
17
|
-
/**
|
|
16
|
+
/** Displayed year value in `YYYY-MM-DD` format */
|
|
17
|
+
year: DateStringValue;
|
|
18
|
+
/** `aria-label` for change level control */
|
|
18
19
|
levelControlAriaLabel?: string;
|
|
19
20
|
}
|
|
20
21
|
export type YearLevelFactory = Factory<{
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { BoxProps, ElementProps, Factory, StylesApiProps } from '@mantine/core';
|
|
2
|
+
import { DateStringValue } from '../../types';
|
|
2
3
|
import { LevelsGroupStylesNames } from '../LevelsGroup';
|
|
3
4
|
import { YearLevelSettings, YearLevelStylesNames } from '../YearLevel';
|
|
4
5
|
export type YearLevelGroupStylesNames = YearLevelStylesNames | LevelsGroupStylesNames;
|
|
@@ -6,12 +7,12 @@ export interface YearLevelGroupProps extends BoxProps, Omit<YearLevelSettings, '
|
|
|
6
7
|
classNames?: Partial<Record<string, string>>;
|
|
7
8
|
styles?: Partial<Record<string, React.CSSProperties>>;
|
|
8
9
|
__staticSelector?: string;
|
|
9
|
-
/** Number of columns
|
|
10
|
+
/** Number of columns displayed next to each other */
|
|
10
11
|
numberOfColumns?: number;
|
|
11
|
-
/**
|
|
12
|
-
year:
|
|
13
|
-
/** Function that returns level control aria-label
|
|
14
|
-
levelControlAriaLabel?: ((year:
|
|
12
|
+
/** Displayed year */
|
|
13
|
+
year: DateStringValue;
|
|
14
|
+
/** Function that returns level control `aria-label` */
|
|
15
|
+
levelControlAriaLabel?: ((year: DateStringValue) => string) | string;
|
|
15
16
|
}
|
|
16
17
|
export type YearLevelGroupFactory = Factory<{
|
|
17
18
|
props: YearLevelGroupProps;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BoxProps, ElementProps, Factory, MantineComponentStaticProperties, StylesApiProps } from '@mantine/core';
|
|
2
|
-
import { DatePickerType, PickerBaseProps } from '../../types';
|
|
2
|
+
import { DatePickerType, DateStringValue, PickerBaseProps } from '../../types';
|
|
3
3
|
import { CalendarBaseProps } from '../Calendar';
|
|
4
4
|
import { DecadeLevelBaseSettings } from '../DecadeLevel';
|
|
5
5
|
import { DecadeLevelGroupStylesNames } from '../DecadeLevelGroup';
|
|
@@ -8,7 +8,7 @@ export interface YearPickerBaseProps<Type extends DatePickerType = 'default'> ex
|
|
|
8
8
|
}
|
|
9
9
|
export interface YearPickerProps<Type extends DatePickerType = 'default'> extends BoxProps, YearPickerBaseProps<Type>, StylesApiProps<YearPickerFactory>, ElementProps<'div', 'onChange' | 'value' | 'defaultValue'> {
|
|
10
10
|
/** Called when year is selected */
|
|
11
|
-
onYearSelect?: (date:
|
|
11
|
+
onYearSelect?: (date: DateStringValue) => void;
|
|
12
12
|
}
|
|
13
13
|
export type YearPickerFactory = Factory<{
|
|
14
14
|
props: YearPickerProps;
|
|
@@ -4,7 +4,7 @@ import { DateInputSharedProps } from '../PickerInputBase';
|
|
|
4
4
|
import { YearPickerBaseProps, YearPickerStylesNames } from '../YearPicker';
|
|
5
5
|
export type YearPickerInputStylesNames = __InputStylesNames | 'placeholder' | YearPickerStylesNames;
|
|
6
6
|
export interface YearPickerInputProps<Type extends DatePickerType = 'default'> extends BoxProps, DateInputSharedProps, YearPickerBaseProps<Type>, StylesApiProps<YearPickerInputFactory> {
|
|
7
|
-
/**
|
|
7
|
+
/** day format to display input value, `"YYYY"` by default */
|
|
8
8
|
valueFormat?: string;
|
|
9
9
|
}
|
|
10
10
|
export type YearPickerInputFactory = Factory<{
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BoxProps, ElementProps, Factory, MantineSize, StylesApiProps } from '@mantine/core';
|
|
2
|
-
import { ControlsGroupSettings } from '../../types';
|
|
2
|
+
import { ControlsGroupSettings, DateStringValue } from '../../types';
|
|
3
3
|
import { PickerControlProps } from '../PickerControl';
|
|
4
4
|
export type YearsListStylesNames = 'yearsListControl' | 'yearsList' | 'yearsListCell' | 'yearsListRow';
|
|
5
5
|
export interface YearsListSettings extends ControlsGroupSettings {
|
|
@@ -7,19 +7,19 @@ export interface YearsListSettings extends ControlsGroupSettings {
|
|
|
7
7
|
__preventFocus?: boolean;
|
|
8
8
|
/** Determines whether propagation for Escape key should be stopped */
|
|
9
9
|
__stopPropagation?: boolean;
|
|
10
|
-
/**
|
|
10
|
+
/** dayjs format for years list, `'YYYY'` by default */
|
|
11
11
|
yearsListFormat?: string;
|
|
12
|
-
/**
|
|
13
|
-
getYearControlProps?: (date:
|
|
12
|
+
/** Passes props down to year picker control based on date */
|
|
13
|
+
getYearControlProps?: (date: DateStringValue) => Partial<PickerControlProps>;
|
|
14
14
|
/** Component size */
|
|
15
15
|
size?: MantineSize;
|
|
16
|
-
/** Determines whether controls should be separated
|
|
16
|
+
/** Determines whether controls should be separated, `true` by default */
|
|
17
17
|
withCellSpacing?: boolean;
|
|
18
18
|
}
|
|
19
19
|
export interface YearsListProps extends BoxProps, YearsListSettings, StylesApiProps<YearsListFactory>, ElementProps<'table'> {
|
|
20
20
|
__staticSelector?: string;
|
|
21
|
-
/** Decade
|
|
22
|
-
decade:
|
|
21
|
+
/** Decade value to display */
|
|
22
|
+
decade: DateStringValue;
|
|
23
23
|
}
|
|
24
24
|
export type YearsListFactory = Factory<{
|
|
25
25
|
props: YearsListProps;
|
|
@@ -1,2 +1,10 @@
|
|
|
1
|
+
import { DateStringValue } from '../../../types';
|
|
1
2
|
import { PickerControlProps } from '../../PickerControl';
|
|
2
|
-
|
|
3
|
+
interface GetYearInTabOrderInput {
|
|
4
|
+
years: DateStringValue[][];
|
|
5
|
+
minDate: DateStringValue | Date | undefined;
|
|
6
|
+
maxDate: DateStringValue | Date | undefined;
|
|
7
|
+
getYearControlProps: ((year: DateStringValue) => Partial<PickerControlProps>) | undefined;
|
|
8
|
+
}
|
|
9
|
+
export declare function getYearInTabOrder({ years, minDate, maxDate, getYearControlProps, }: GetYearInTabOrderInput): string;
|
|
10
|
+
export {};
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import { DateStringValue } from '../../../types';
|
|
2
|
+
export declare function getYearsData(decade: DateStringValue): string[][];
|
|
@@ -1 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
import { DateStringValue } from '../../../types';
|
|
2
|
+
interface IsYearDisabledInput {
|
|
3
|
+
year: DateStringValue;
|
|
4
|
+
minDate: DateStringValue | Date | undefined;
|
|
5
|
+
maxDate: DateStringValue | Date | undefined;
|
|
6
|
+
}
|
|
7
|
+
export declare function isYearDisabled({ year, minDate, maxDate }: IsYearDisabledInput): boolean;
|
|
8
|
+
export {};
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import { DateStringValue } from '../../../types';
|
|
2
|
+
export declare function isInRange(date: DateStringValue, range: [DateStringValue, DateStringValue]): boolean;
|
|
@@ -1,15 +1,14 @@
|
|
|
1
|
-
import { DatePickerType, PickerBaseProps } from '../../types';
|
|
1
|
+
import { DatePickerType, DateStringValue, PickerBaseProps } from '../../types';
|
|
2
2
|
interface UseDatesRangeInput<Type extends DatePickerType = 'default'> extends PickerBaseProps<Type> {
|
|
3
3
|
level: 'year' | 'month' | 'day';
|
|
4
4
|
type: Type;
|
|
5
5
|
onMouseLeave?: (event: React.MouseEvent<HTMLDivElement>) => void;
|
|
6
|
-
applyTimezone?: boolean;
|
|
7
6
|
}
|
|
8
|
-
export declare function useDatesState<Type extends DatePickerType = 'default'>({ type, level, value, defaultValue, onChange, allowSingleDateInRange, allowDeselect, onMouseLeave,
|
|
9
|
-
onDateChange: (date:
|
|
7
|
+
export declare function useDatesState<Type extends DatePickerType = 'default'>({ type, level, value, defaultValue, onChange, allowSingleDateInRange, allowDeselect, onMouseLeave, }: UseDatesRangeInput<Type>): {
|
|
8
|
+
onDateChange: (date: DateStringValue) => void;
|
|
10
9
|
onRootMouseLeave: ((event: React.MouseEvent<HTMLDivElement>) => void) | undefined;
|
|
11
|
-
onHoveredDateChange: import("react").Dispatch<import("react").SetStateAction<
|
|
12
|
-
getControlProps: (date:
|
|
10
|
+
onHoveredDateChange: import("react").Dispatch<import("react").SetStateAction<string | null>>;
|
|
11
|
+
getControlProps: (date: DateStringValue) => {
|
|
13
12
|
selected: any;
|
|
14
13
|
inRange: boolean;
|
|
15
14
|
firstInRange: boolean;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { DatePickerType, DatePickerValue } from '../../types';
|
|
1
|
+
import { DatePickerType, DatePickerValue, DateStringValue } from '../../types';
|
|
2
2
|
interface UseUncontrolledDates<Type extends DatePickerType = 'default'> {
|
|
3
3
|
type: Type;
|
|
4
4
|
value: DatePickerValue<Type> | undefined;
|
|
5
5
|
defaultValue: DatePickerValue<Type> | undefined;
|
|
6
|
-
onChange: ((value: DatePickerValue<Type>) => void) | undefined;
|
|
7
|
-
|
|
6
|
+
onChange: ((value: DatePickerValue<Type, DateStringValue>) => void) | undefined;
|
|
7
|
+
withTime?: boolean;
|
|
8
8
|
}
|
|
9
|
-
export declare
|
|
9
|
+
export declare const convertDatesValue: (value: any, withTime: boolean) => string | (string | null | undefined)[] | null | undefined;
|
|
10
|
+
export declare function useUncontrolledDates<Type extends DatePickerType = 'default'>({ type, value, defaultValue, onChange, withTime, }: UseUncontrolledDates<Type>): any[];
|
|
10
11
|
export {};
|
package/lib/index.d.mts
CHANGED
|
@@ -3,6 +3,8 @@ export * from './utils/index.js';
|
|
|
3
3
|
export * from './components/DatesProvider/index.js';
|
|
4
4
|
export * from './components/HiddenDatesInput/index.js';
|
|
5
5
|
export * from './components/TimeInput/index.js';
|
|
6
|
+
export * from './components/TimePicker/index.js';
|
|
7
|
+
export * from './components/TimeValue/index.js';
|
|
6
8
|
export * from './components/Day/index.js';
|
|
7
9
|
export * from './components/WeekdaysRow/index.js';
|
|
8
10
|
export * from './components/Month/index.js';
|
|
@@ -27,3 +29,4 @@ export * from './components/DateTimePicker/index.js';
|
|
|
27
29
|
export * from './components/YearPickerInput/index.js';
|
|
28
30
|
export * from './components/MonthPickerInput/index.js';
|
|
29
31
|
export * from './components/DatePickerInput/index.js';
|
|
32
|
+
export * from './components/TimeGrid/index.js';
|
package/lib/index.d.ts
CHANGED
|
@@ -3,6 +3,8 @@ export * from './utils/index.js';
|
|
|
3
3
|
export * from './components/DatesProvider/index.js';
|
|
4
4
|
export * from './components/HiddenDatesInput/index.js';
|
|
5
5
|
export * from './components/TimeInput/index.js';
|
|
6
|
+
export * from './components/TimePicker/index.js';
|
|
7
|
+
export * from './components/TimeValue/index.js';
|
|
6
8
|
export * from './components/Day/index.js';
|
|
7
9
|
export * from './components/WeekdaysRow/index.js';
|
|
8
10
|
export * from './components/Month/index.js';
|
|
@@ -27,3 +29,4 @@ export * from './components/DateTimePicker/index.js';
|
|
|
27
29
|
export * from './components/YearPickerInput/index.js';
|
|
28
30
|
export * from './components/MonthPickerInput/index.js';
|
|
29
31
|
export * from './components/DatePickerInput/index.js';
|
|
32
|
+
export * from './components/TimeGrid/index.js';
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import type { ControlKeydownPayload } from './GeneralTypes';
|
|
1
|
+
import type { ControlKeydownPayload, DateStringValue } from './GeneralTypes';
|
|
2
2
|
export interface ControlsGroupSettings {
|
|
3
3
|
/** Called when control is clicked with event and date */
|
|
4
|
-
__onControlClick?: (event: React.MouseEvent<HTMLButtonElement>, date:
|
|
4
|
+
__onControlClick?: (event: React.MouseEvent<HTMLButtonElement>, date: DateStringValue) => void;
|
|
5
5
|
/** Called when mouse enters control with event and date, used for ranges */
|
|
6
|
-
__onControlMouseEnter?: (event: React.MouseEvent<HTMLButtonElement>, date:
|
|
6
|
+
__onControlMouseEnter?: (event: React.MouseEvent<HTMLButtonElement>, date: DateStringValue) => void;
|
|
7
7
|
/** Called when any keydown event is registered on control, used for arrows navigation */
|
|
8
8
|
__onControlKeyDown?: (event: React.KeyboardEvent<HTMLButtonElement>, payload: ControlKeydownPayload) => void;
|
|
9
9
|
/** Assigns ref of every control based on its position in the table, used for arrows navigation */
|
|
10
10
|
__getControlRef?: (rowIndex: number, cellIndex: number, node: HTMLButtonElement) => void;
|
|
11
|
-
/** Minimum possible date */
|
|
12
|
-
minDate?: Date;
|
|
13
|
-
/** Maximum possible date */
|
|
14
|
-
maxDate?: Date;
|
|
11
|
+
/** Minimum possible date in `YYYY-MM-DD` format or Date object */
|
|
12
|
+
minDate?: DateStringValue | Date;
|
|
13
|
+
/** Maximum possible date in `YYYY-MM-DD` format or Date object */
|
|
14
|
+
maxDate?: DateStringValue | Date;
|
|
15
15
|
/** Dayjs locale, defaults to value defined in DatesProvider */
|
|
16
16
|
locale?: string;
|
|
17
17
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
export type
|
|
1
|
+
import { DateStringValue } from './GeneralTypes';
|
|
2
|
+
export type DateValue = DateStringValue | Date | null;
|
|
3
|
+
export type DatesRangeValue<ValueType = DateValue> = [ValueType, ValueType];
|
|
3
4
|
export type DatePickerType = 'default' | 'multiple' | 'range';
|
|
4
|
-
export type DatePickerValue<Type extends DatePickerType = 'default'> = Type extends 'range' ? DatesRangeValue : Type extends 'multiple' ?
|
|
5
|
+
export type DatePickerValue<Type extends DatePickerType = 'default', ValueType = DateValue> = Type extends 'range' ? DatesRangeValue<ValueType> : Type extends 'multiple' ? ValueType[] : ValueType;
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
+
/** Date value used by all Mantine components, format: `YYYY-MM-DD` */
|
|
2
|
+
export type DateStringValue = string;
|
|
1
3
|
export type DayOfWeek = 0 | 1 | 2 | 3 | 4 | 5 | 6;
|
|
2
4
|
export type CalendarLevel = 'month' | 'year' | 'decade';
|
|
3
5
|
export interface ControlKeydownPayload {
|
|
4
6
|
cellIndex: number;
|
|
5
7
|
rowIndex: number;
|
|
6
|
-
date:
|
|
8
|
+
date: DateStringValue;
|
|
7
9
|
}
|
|
10
|
+
export type DateLabelFormat = string | ((date: DateStringValue) => React.ReactNode);
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { DatePickerType, DatePickerValue } from './DatePickerValue';
|
|
2
|
+
import { DateStringValue } from './GeneralTypes';
|
|
2
3
|
export interface PickerBaseProps<Type extends DatePickerType = 'default'> {
|
|
3
4
|
/** Picker type: range, multiple or default */
|
|
4
5
|
type?: DatePickerType | Type;
|
|
@@ -7,7 +8,7 @@ export interface PickerBaseProps<Type extends DatePickerType = 'default'> {
|
|
|
7
8
|
/** Default value for uncontrolled component */
|
|
8
9
|
defaultValue?: DatePickerValue<Type>;
|
|
9
10
|
/** Called when value changes */
|
|
10
|
-
onChange?: (value: DatePickerValue<Type>) => void;
|
|
11
|
+
onChange?: (value: DatePickerValue<Type, DateStringValue>) => void;
|
|
11
12
|
/** Determines whether user can deselect the date by clicking on selected item, applicable only when type="default" */
|
|
12
13
|
allowDeselect?: Type extends 'default' ? boolean : never;
|
|
13
14
|
/** Determines whether a single day can be selected as range, applicable only when type="range" */
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { DateStringValue } from '../../types';
|
|
2
|
+
interface GetDefaultClampedDate {
|
|
3
|
+
minDate: DateStringValue | Date | undefined;
|
|
4
|
+
maxDate: DateStringValue | Date | undefined;
|
|
5
|
+
}
|
|
6
|
+
export declare function getDefaultClampedDate({ minDate, maxDate, }: GetDefaultClampedDate): DateStringValue;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { DatePickerType, DatePickerValue } from '../../types';
|
|
2
|
+
interface DateFormatterInput {
|
|
3
|
+
type: DatePickerType;
|
|
4
|
+
date: DatePickerValue<DatePickerType>;
|
|
5
|
+
locale: string;
|
|
6
|
+
format: string;
|
|
7
|
+
labelSeparator: string;
|
|
8
|
+
}
|
|
9
|
+
export type DateFormatter = (input: DateFormatterInput) => string;
|
|
10
|
+
export declare function defaultDateFormatter({ type, date, locale, format, labelSeparator, }: DateFormatterInput): string;
|
|
11
|
+
interface GetFormattedDateInput extends DateFormatterInput {
|
|
12
|
+
formatter?: DateFormatter;
|
|
13
|
+
}
|
|
14
|
+
export declare function getFormattedDate({ formatter, ...others }: GetFormattedDateInput): string;
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
type ControlsRef = RefObject<HTMLButtonElement[][][]>;
|
|
3
|
+
interface HandleControlKeyDownInput {
|
|
4
|
+
controlsRef: ControlsRef;
|
|
5
|
+
levelIndex: number;
|
|
6
|
+
rowIndex: number;
|
|
7
|
+
cellIndex: number;
|
|
8
|
+
event: React.KeyboardEvent<HTMLButtonElement>;
|
|
9
|
+
}
|
|
10
|
+
export declare function handleControlKeyDown({ controlsRef, levelIndex, rowIndex, cellIndex, event, }: HandleControlKeyDownInput): void;
|
|
11
|
+
export {};
|
package/lib/utils/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
export { getFormattedDate } from './get-formatted-date';
|
|
2
|
-
export { handleControlKeyDown } from './handle-control-key-down';
|
|
1
|
+
export { getFormattedDate } from './get-formatted-date/get-formatted-date';
|
|
2
|
+
export { handleControlKeyDown } from './handle-control-key-down/handle-control-key-down';
|
|
3
3
|
export { assignTime } from './assign-time/assign-time';
|
|
4
|
-
export { getDefaultClampedDate } from './get-default-clamped-date';
|
|
5
|
-
export {
|
|
6
|
-
export
|
|
4
|
+
export { getDefaultClampedDate } from './get-default-clamped-date/get-default-clamped-date';
|
|
5
|
+
export { clampDate } from './clamp-date/clamp-date';
|
|
6
|
+
export { toDateString, toDateTimeString } from './to-date-string/to-date-string';
|
|
7
|
+
export type { DateFormatter } from './get-formatted-date/get-formatted-date';
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Dayjs } from 'dayjs';
|
|
2
|
+
import { DateStringValue } from '../../types';
|
|
3
|
+
export declare function toDateString(value: string | number | Date | Dayjs | undefined | null): DateStringValue | undefined | null;
|
|
4
|
+
export declare function toDateTimeString(value: string | number | Date | Dayjs | undefined | null): DateStringValue | undefined | null;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mantine/dates",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "8.0.0-alpha.0",
|
|
4
4
|
"description": "Calendars, date and time pickers based on Mantine components",
|
|
5
5
|
"homepage": "https://mantine.dev/dates/getting-started/",
|
|
6
6
|
"license": "MIT",
|
|
@@ -45,8 +45,8 @@
|
|
|
45
45
|
"directory": "packages/@mantine/dates"
|
|
46
46
|
},
|
|
47
47
|
"peerDependencies": {
|
|
48
|
-
"@mantine/core": "
|
|
49
|
-
"@mantine/hooks": "
|
|
48
|
+
"@mantine/core": "8.0.0-alpha.0",
|
|
49
|
+
"@mantine/hooks": "8.0.0-alpha.0",
|
|
50
50
|
"dayjs": ">=1.0.0",
|
|
51
51
|
"react": "^18.x || ^19.x",
|
|
52
52
|
"react-dom": "^18.x || ^19.x"
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"@mantine-tests/dates": "workspace:*",
|
|
60
60
|
"@mantine/core": "workspace:*",
|
|
61
61
|
"@mantine/hooks": "workspace:*",
|
|
62
|
-
"react": "
|
|
63
|
-
"react-dom": "
|
|
62
|
+
"react": "19.0.0",
|
|
63
|
+
"react-dom": "19.0.0"
|
|
64
64
|
}
|
|
65
65
|
}
|