@mantine/dates 9.0.0-alpha.4 → 9.0.0-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/_virtual/_rolldown/runtime.cjs +24 -0
- package/cjs/components/Calendar/Calendar.cjs +250 -344
- package/cjs/components/Calendar/Calendar.cjs.map +1 -1
- package/cjs/components/Calendar/clamp-level/clamp-level.cjs +11 -19
- package/cjs/components/Calendar/clamp-level/clamp-level.cjs.map +1 -1
- package/cjs/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.cjs +64 -130
- package/cjs/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.cjs.map +1 -1
- package/cjs/components/CalendarHeader/CalendarHeader.cjs +100 -145
- package/cjs/components/CalendarHeader/CalendarHeader.cjs.map +1 -1
- package/cjs/components/CalendarHeader/CalendarHeader.module.cjs +12 -0
- package/cjs/components/CalendarHeader/CalendarHeader.module.cjs.map +1 -0
- package/cjs/components/DateInput/DateInput.cjs +188 -242
- package/cjs/components/DateInput/DateInput.cjs.map +1 -1
- package/cjs/components/DateInput/date-string-parser/date-string-parser.cjs +12 -19
- 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 +13 -24
- package/cjs/components/DateInput/is-date-valid/is-date-valid.cjs.map +1 -1
- package/cjs/components/DatePicker/DatePicker.cjs +121 -154
- package/cjs/components/DatePicker/DatePicker.cjs.map +1 -1
- package/cjs/components/DatePicker/DatePicker.module.cjs +11 -0
- package/cjs/components/DatePicker/DatePicker.module.cjs.map +1 -0
- package/cjs/components/DatePickerInput/DatePickerInput.cjs +85 -123
- package/cjs/components/DatePickerInput/DatePickerInput.cjs.map +1 -1
- package/cjs/components/DateTimePicker/DateTimePicker.cjs +187 -233
- package/cjs/components/DateTimePicker/DateTimePicker.cjs.map +1 -1
- package/cjs/components/DateTimePicker/DateTimePicker.module.cjs +10 -0
- package/cjs/components/DateTimePicker/DateTimePicker.module.cjs.map +1 -0
- package/cjs/components/DateTimePicker/get-min-max-time/get-min-max-time.cjs +12 -15
- package/cjs/components/DateTimePicker/get-min-max-time/get-min-max-time.cjs.map +1 -1
- package/cjs/components/DatesProvider/DatesProvider.cjs +21 -15
- package/cjs/components/DatesProvider/DatesProvider.cjs.map +1 -1
- package/cjs/components/DatesProvider/use-dates-context.cjs +20 -29
- package/cjs/components/DatesProvider/use-dates-context.cjs.map +1 -1
- package/cjs/components/Day/Day.cjs +49 -83
- package/cjs/components/Day/Day.cjs.map +1 -1
- package/cjs/components/Day/Day.module.cjs +7 -0
- package/cjs/components/Day/Day.module.cjs.map +1 -0
- package/cjs/components/DecadeLevel/DecadeLevel.cjs +75 -124
- package/cjs/components/DecadeLevel/DecadeLevel.cjs.map +1 -1
- package/cjs/components/DecadeLevel/get-decade-range/get-decade-range.cjs +8 -9
- package/cjs/components/DecadeLevel/get-decade-range/get-decade-range.cjs.map +1 -1
- package/cjs/components/DecadeLevelGroup/DecadeLevelGroup.cjs +81 -131
- package/cjs/components/DecadeLevelGroup/DecadeLevelGroup.cjs.map +1 -1
- package/cjs/components/HiddenDatesInput/HiddenDatesInput.cjs +30 -36
- package/cjs/components/HiddenDatesInput/HiddenDatesInput.cjs.map +1 -1
- package/cjs/components/InlineDateTimePicker/InlineDateTimePicker.cjs +286 -0
- package/cjs/components/InlineDateTimePicker/InlineDateTimePicker.cjs.map +1 -0
- package/cjs/components/InlineDateTimePicker/InlineDateTimePicker.module.cjs +13 -0
- package/cjs/components/InlineDateTimePicker/InlineDateTimePicker.module.cjs.map +1 -0
- package/cjs/components/LevelsGroup/LevelsGroup.cjs +30 -38
- package/cjs/components/LevelsGroup/LevelsGroup.cjs.map +1 -1
- package/cjs/components/LevelsGroup/LevelsGroup.module.cjs +7 -0
- package/cjs/components/LevelsGroup/LevelsGroup.module.cjs.map +1 -0
- package/cjs/components/MiniCalendar/MiniCalendar.cjs +124 -153
- package/cjs/components/MiniCalendar/MiniCalendar.cjs.map +1 -1
- package/cjs/components/MiniCalendar/MiniCalendar.module.cjs +14 -0
- package/cjs/components/MiniCalendar/MiniCalendar.module.cjs.map +1 -0
- package/cjs/components/Month/Month.cjs +152 -200
- package/cjs/components/Month/Month.cjs.map +1 -1
- package/cjs/components/Month/Month.module.cjs +11 -0
- package/cjs/components/Month/Month.module.cjs.map +1 -0
- package/cjs/components/Month/get-date-in-tab-order/get-date-in-tab-order.cjs +18 -35
- 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 +13 -20
- 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 +38 -47
- 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 +11 -16
- 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 +12 -16
- 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 +9 -12
- 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 +9 -12
- package/cjs/components/Month/is-before-max-date/is-before-max-date.cjs.map +1 -1
- package/cjs/components/Month/is-same-month/is-same-month.cjs +9 -12
- package/cjs/components/Month/is-same-month/is-same-month.cjs.map +1 -1
- package/cjs/components/MonthLevel/MonthLevel.cjs +83 -141
- package/cjs/components/MonthLevel/MonthLevel.cjs.map +1 -1
- package/cjs/components/MonthLevelGroup/MonthLevelGroup.cjs +92 -154
- package/cjs/components/MonthLevelGroup/MonthLevelGroup.cjs.map +1 -1
- package/cjs/components/MonthPicker/MonthPicker.cjs +49 -75
- package/cjs/components/MonthPicker/MonthPicker.cjs.map +1 -1
- package/cjs/components/MonthPicker/MonthPicker.module.cjs +11 -0
- package/cjs/components/MonthPicker/MonthPicker.module.cjs.map +1 -0
- package/cjs/components/MonthPickerInput/MonthPickerInput.cjs +86 -119
- package/cjs/components/MonthPickerInput/MonthPickerInput.cjs.map +1 -1
- package/cjs/components/MonthsList/MonthsList.cjs +105 -139
- package/cjs/components/MonthsList/MonthsList.cjs.map +1 -1
- package/cjs/components/MonthsList/MonthsList.module.cjs +10 -0
- package/cjs/components/MonthsList/MonthsList.module.cjs.map +1 -0
- package/cjs/components/MonthsList/get-month-in-tab-order/get-month-in-tab-order.cjs +20 -30
- 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 +21 -21
- 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 +12 -21
- package/cjs/components/MonthsList/is-month-disabled/is-month-disabled.cjs.map +1 -1
- package/cjs/components/PickerControl/PickerControl.cjs +43 -65
- package/cjs/components/PickerControl/PickerControl.cjs.map +1 -1
- package/cjs/components/PickerControl/PickerControl.module.cjs +7 -0
- package/cjs/components/PickerControl/PickerControl.module.cjs.map +1 -0
- package/cjs/components/PickerInputBase/PickerInputBase.cjs +95 -127
- package/cjs/components/PickerInputBase/PickerInputBase.cjs.map +1 -1
- package/cjs/components/PickerInputBase/PickerInputBase.module.cjs +7 -0
- package/cjs/components/PickerInputBase/PickerInputBase.module.cjs.map +1 -0
- package/cjs/components/SpinInput/SpinInput.cjs +83 -111
- package/cjs/components/SpinInput/SpinInput.cjs.map +1 -1
- package/cjs/components/TimeGrid/TimeGrid.cjs +94 -101
- package/cjs/components/TimeGrid/TimeGrid.cjs.map +1 -1
- package/cjs/components/TimeGrid/TimeGrid.context.cjs +7 -10
- package/cjs/components/TimeGrid/TimeGrid.context.cjs.map +1 -1
- package/cjs/components/TimeGrid/TimeGrid.module.cjs +7 -0
- package/cjs/components/TimeGrid/TimeGrid.module.cjs.map +1 -0
- package/cjs/components/TimeGrid/TimeGridControl.cjs +26 -35
- package/cjs/components/TimeGrid/TimeGridControl.cjs.map +1 -1
- package/cjs/components/TimeGrid/compare-time.cjs +8 -9
- package/cjs/components/TimeGrid/compare-time.cjs.map +1 -1
- package/cjs/components/TimeInput/TimeInput.cjs +71 -88
- package/cjs/components/TimeInput/TimeInput.cjs.map +1 -1
- package/cjs/components/TimeInput/TimeInput.module.cjs +7 -0
- package/cjs/components/TimeInput/TimeInput.module.cjs.map +1 -0
- package/cjs/components/TimePicker/AmPmInput/AmPmInput.cjs +93 -101
- package/cjs/components/TimePicker/AmPmInput/AmPmInput.cjs.map +1 -1
- package/cjs/components/TimePicker/TimeControlsList/AmPmControlsList.cjs +19 -12
- package/cjs/components/TimePicker/TimeControlsList/AmPmControlsList.cjs.map +1 -1
- package/cjs/components/TimePicker/TimeControlsList/TimeControl.cjs +20 -23
- package/cjs/components/TimePicker/TimeControlsList/TimeControl.cjs.map +1 -1
- package/cjs/components/TimePicker/TimeControlsList/TimeControlsList.cjs +47 -57
- package/cjs/components/TimePicker/TimeControlsList/TimeControlsList.cjs.map +1 -1
- package/cjs/components/TimePicker/TimePicker.cjs +325 -420
- package/cjs/components/TimePicker/TimePicker.cjs.map +1 -1
- package/cjs/components/TimePicker/TimePicker.context.cjs +7 -10
- package/cjs/components/TimePicker/TimePicker.context.cjs.map +1 -1
- package/cjs/components/TimePicker/TimePicker.module.cjs +18 -0
- package/cjs/components/TimePicker/TimePicker.module.cjs.map +1 -0
- package/cjs/components/TimePicker/TimePresets/TimePresetControl.cjs +23 -28
- package/cjs/components/TimePicker/TimePresets/TimePresetControl.cjs.map +1 -1
- package/cjs/components/TimePicker/TimePresets/TimePresetGroup.cjs +36 -36
- package/cjs/components/TimePicker/TimePresets/TimePresetGroup.cjs.map +1 -1
- package/cjs/components/TimePicker/TimePresets/TimePresets.cjs +61 -70
- package/cjs/components/TimePicker/TimePresets/TimePresets.cjs.map +1 -1
- package/cjs/components/TimePicker/use-time-picker.cjs +201 -193
- package/cjs/components/TimePicker/use-time-picker.cjs.map +1 -1
- package/cjs/components/TimePicker/utils/clamp-time/clamp-time.cjs +10 -12
- package/cjs/components/TimePicker/utils/clamp-time/clamp-time.cjs.map +1 -1
- package/cjs/components/TimePicker/utils/get-parsed-time/get-parsed-time.cjs +40 -34
- package/cjs/components/TimePicker/utils/get-parsed-time/get-parsed-time.cjs.map +1 -1
- package/cjs/components/TimePicker/utils/get-time-range/get-time-range.cjs +12 -15
- package/cjs/components/TimePicker/utils/get-time-range/get-time-range.cjs.map +1 -1
- package/cjs/components/TimePicker/utils/get-time-string/get-time-string.cjs +39 -48
- package/cjs/components/TimePicker/utils/get-time-string/get-time-string.cjs.map +1 -1
- package/cjs/components/TimePicker/utils/is-same-time/is-same-time.cjs +10 -13
- package/cjs/components/TimePicker/utils/is-same-time/is-same-time.cjs.map +1 -1
- package/cjs/components/TimePicker/utils/pad-time/pad-time.cjs +6 -6
- package/cjs/components/TimePicker/utils/pad-time/pad-time.cjs.map +1 -1
- package/cjs/components/TimePicker/utils/split-time-string/split-time-string.cjs +11 -7
- package/cjs/components/TimePicker/utils/split-time-string/split-time-string.cjs.map +1 -1
- package/cjs/components/TimePicker/utils/time-to-seconds/time-to-seconds.cjs +17 -18
- package/cjs/components/TimePicker/utils/time-to-seconds/time-to-seconds.cjs.map +1 -1
- package/cjs/components/TimeValue/TimeValue.cjs +18 -15
- package/cjs/components/TimeValue/TimeValue.cjs.map +1 -1
- package/cjs/components/TimeValue/get-formatted-time/get-formatted-time.cjs +14 -27
- package/cjs/components/TimeValue/get-formatted-time/get-formatted-time.cjs.map +1 -1
- package/cjs/components/WeekdaysRow/WeekdaysRow.cjs +51 -61
- package/cjs/components/WeekdaysRow/WeekdaysRow.cjs.map +1 -1
- package/cjs/components/WeekdaysRow/WeekdaysRow.module.cjs +7 -0
- package/cjs/components/WeekdaysRow/WeekdaysRow.module.cjs.map +1 -0
- package/cjs/components/WeekdaysRow/get-weekdays-names/get-weekdays-names.cjs +14 -26
- package/cjs/components/WeekdaysRow/get-weekdays-names/get-weekdays-names.cjs.map +1 -1
- package/cjs/components/YearLevel/YearLevel.cjs +73 -121
- package/cjs/components/YearLevel/YearLevel.cjs.map +1 -1
- package/cjs/components/YearLevelGroup/YearLevelGroup.cjs +83 -135
- package/cjs/components/YearLevelGroup/YearLevelGroup.cjs.map +1 -1
- package/cjs/components/YearPicker/YearPicker.cjs +48 -73
- package/cjs/components/YearPicker/YearPicker.cjs.map +1 -1
- package/cjs/components/YearPicker/YearPicker.module.cjs +11 -0
- package/cjs/components/YearPicker/YearPicker.module.cjs.map +1 -0
- package/cjs/components/YearPickerInput/YearPickerInput.cjs +86 -119
- package/cjs/components/YearPickerInput/YearPickerInput.cjs.map +1 -1
- package/cjs/components/YearsList/YearsList.cjs +103 -133
- package/cjs/components/YearsList/YearsList.cjs.map +1 -1
- package/cjs/components/YearsList/YearsList.module.cjs +10 -0
- package/cjs/components/YearsList/YearsList.module.cjs.map +1 -0
- package/cjs/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.cjs +20 -30
- 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 +25 -23
- 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 +12 -21
- package/cjs/components/YearsList/is-year-disabled/is-year-disabled.cjs.map +1 -1
- package/cjs/hooks/use-dates-input/use-dates-input.cjs +47 -70
- 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 +10 -13
- 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 +113 -154
- package/cjs/hooks/use-dates-state/use-dates-state.cjs.map +1 -1
- package/cjs/hooks/use-uncontrolled-dates/use-uncontrolled-dates.cjs +32 -36
- package/cjs/hooks/use-uncontrolled-dates/use-uncontrolled-dates.cjs.map +1 -1
- package/cjs/index.cjs +94 -99
- package/cjs/utils/assign-time/assign-time.cjs +16 -21
- package/cjs/utils/assign-time/assign-time.cjs.map +1 -1
- package/cjs/utils/clamp-date/clamp-date.cjs +13 -22
- package/cjs/utils/clamp-date/clamp-date.cjs.map +1 -1
- package/cjs/utils/get-default-clamped-date/get-default-clamped-date.cjs +15 -27
- package/cjs/utils/get-default-clamped-date/get-default-clamped-date.cjs.map +1 -1
- package/cjs/utils/get-formatted-date/get-formatted-date.cjs +19 -37
- package/cjs/utils/get-formatted-date/get-formatted-date.cjs.map +1 -1
- package/cjs/utils/handle-control-key-down/handle-control-key-down.cjs +114 -149
- package/cjs/utils/handle-control-key-down/handle-control-key-down.cjs.map +1 -1
- package/cjs/utils/to-date-string/to-date-string.cjs +10 -13
- package/cjs/utils/to-date-string/to-date-string.cjs.map +1 -1
- package/esm/components/Calendar/Calendar.mjs +247 -337
- package/esm/components/Calendar/Calendar.mjs.map +1 -1
- package/esm/components/Calendar/clamp-level/clamp-level.mjs +10 -17
- package/esm/components/Calendar/clamp-level/clamp-level.mjs.map +1 -1
- package/esm/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.mjs +64 -128
- package/esm/components/Calendar/pick-calendar-levels-props/pick-calendar-levels-props.mjs.map +1 -1
- package/esm/components/CalendarHeader/CalendarHeader.mjs +98 -142
- package/esm/components/CalendarHeader/CalendarHeader.mjs.map +1 -1
- package/esm/components/CalendarHeader/CalendarHeader.module.mjs +12 -0
- package/esm/components/CalendarHeader/CalendarHeader.module.mjs.map +1 -0
- package/esm/components/DateInput/DateInput.mjs +185 -235
- package/esm/components/DateInput/DateInput.mjs.map +1 -1
- package/esm/components/DateInput/date-string-parser/date-string-parser.mjs +10 -13
- 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 +11 -18
- package/esm/components/DateInput/is-date-valid/is-date-valid.mjs.map +1 -1
- package/esm/components/DatePicker/DatePicker.mjs +117 -146
- package/esm/components/DatePicker/DatePicker.mjs.map +1 -1
- package/esm/components/DatePicker/DatePicker.module.mjs +11 -0
- package/esm/components/DatePicker/DatePicker.module.mjs.map +1 -0
- package/esm/components/DatePickerInput/DatePickerInput.mjs +84 -121
- package/esm/components/DatePickerInput/DatePickerInput.mjs.map +1 -1
- package/esm/components/DateTimePicker/DateTimePicker.mjs +184 -226
- package/esm/components/DateTimePicker/DateTimePicker.mjs.map +1 -1
- package/esm/components/DateTimePicker/DateTimePicker.module.mjs +10 -0
- package/esm/components/DateTimePicker/DateTimePicker.module.mjs.map +1 -0
- package/esm/components/DateTimePicker/get-min-max-time/get-min-max-time.mjs +10 -9
- package/esm/components/DateTimePicker/get-min-max-time/get-min-max-time.mjs.map +1 -1
- package/esm/components/DatesProvider/DatesProvider.mjs +19 -12
- package/esm/components/DatesProvider/DatesProvider.mjs.map +1 -1
- package/esm/components/DatesProvider/use-dates-context.mjs +19 -27
- package/esm/components/DatesProvider/use-dates-context.mjs.map +1 -1
- package/esm/components/Day/Day.mjs +46 -76
- package/esm/components/Day/Day.mjs.map +1 -1
- package/esm/components/Day/Day.module.mjs +7 -0
- package/esm/components/Day/Day.module.mjs.map +1 -0
- package/esm/components/DecadeLevel/DecadeLevel.mjs +72 -117
- package/esm/components/DecadeLevel/DecadeLevel.mjs.map +1 -1
- package/esm/components/DecadeLevel/get-decade-range/get-decade-range.mjs +8 -7
- package/esm/components/DecadeLevel/get-decade-range/get-decade-range.mjs.map +1 -1
- package/esm/components/DecadeLevelGroup/DecadeLevelGroup.mjs +78 -124
- package/esm/components/DecadeLevelGroup/DecadeLevelGroup.mjs.map +1 -1
- package/esm/components/HiddenDatesInput/HiddenDatesInput.mjs +29 -34
- package/esm/components/HiddenDatesInput/HiddenDatesInput.mjs.map +1 -1
- package/esm/components/InlineDateTimePicker/InlineDateTimePicker.mjs +284 -0
- package/esm/components/InlineDateTimePicker/InlineDateTimePicker.mjs.map +1 -0
- package/esm/components/InlineDateTimePicker/InlineDateTimePicker.module.mjs +13 -0
- package/esm/components/InlineDateTimePicker/InlineDateTimePicker.module.mjs.map +1 -0
- package/esm/components/LevelsGroup/LevelsGroup.mjs +28 -35
- package/esm/components/LevelsGroup/LevelsGroup.mjs.map +1 -1
- package/esm/components/LevelsGroup/LevelsGroup.module.mjs +7 -0
- package/esm/components/LevelsGroup/LevelsGroup.module.mjs.map +1 -0
- package/esm/components/MiniCalendar/MiniCalendar.mjs +121 -146
- package/esm/components/MiniCalendar/MiniCalendar.mjs.map +1 -1
- package/esm/components/MiniCalendar/MiniCalendar.module.mjs +14 -0
- package/esm/components/MiniCalendar/MiniCalendar.module.mjs.map +1 -0
- package/esm/components/Month/Month.mjs +149 -193
- package/esm/components/Month/Month.mjs.map +1 -1
- package/esm/components/Month/Month.module.mjs +11 -0
- package/esm/components/Month/Month.module.mjs.map +1 -0
- package/esm/components/Month/get-date-in-tab-order/get-date-in-tab-order.mjs +16 -29
- 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 +11 -14
- 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 +36 -41
- 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 +9 -10
- 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 +8 -8
- 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 +7 -6
- 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 +7 -6
- package/esm/components/Month/is-before-max-date/is-before-max-date.mjs.map +1 -1
- package/esm/components/Month/is-same-month/is-same-month.mjs +7 -6
- package/esm/components/Month/is-same-month/is-same-month.mjs.map +1 -1
- package/esm/components/MonthLevel/MonthLevel.mjs +80 -134
- package/esm/components/MonthLevel/MonthLevel.mjs.map +1 -1
- package/esm/components/MonthLevelGroup/MonthLevelGroup.mjs +89 -147
- package/esm/components/MonthLevelGroup/MonthLevelGroup.mjs.map +1 -1
- package/esm/components/MonthPicker/MonthPicker.mjs +46 -71
- package/esm/components/MonthPicker/MonthPicker.mjs.map +1 -1
- package/esm/components/MonthPicker/MonthPicker.module.mjs +11 -0
- package/esm/components/MonthPicker/MonthPicker.module.mjs.map +1 -0
- package/esm/components/MonthPickerInput/MonthPickerInput.mjs +85 -117
- package/esm/components/MonthPickerInput/MonthPickerInput.mjs.map +1 -1
- package/esm/components/MonthsList/MonthsList.mjs +102 -132
- package/esm/components/MonthsList/MonthsList.mjs.map +1 -1
- package/esm/components/MonthsList/MonthsList.module.mjs +10 -0
- package/esm/components/MonthsList/MonthsList.module.mjs.map +1 -0
- package/esm/components/MonthsList/get-month-in-tab-order/get-month-in-tab-order.mjs +18 -24
- 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 +19 -15
- 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 +10 -15
- package/esm/components/MonthsList/is-month-disabled/is-month-disabled.mjs.map +1 -1
- package/esm/components/PickerControl/PickerControl.mjs +41 -62
- package/esm/components/PickerControl/PickerControl.mjs.map +1 -1
- package/esm/components/PickerControl/PickerControl.module.mjs +7 -0
- package/esm/components/PickerControl/PickerControl.module.mjs.map +1 -0
- package/esm/components/PickerInputBase/PickerInputBase.mjs +92 -120
- package/esm/components/PickerInputBase/PickerInputBase.mjs.map +1 -1
- package/esm/components/PickerInputBase/PickerInputBase.module.mjs +7 -0
- package/esm/components/PickerInputBase/PickerInputBase.module.mjs.map +1 -0
- package/esm/components/SpinInput/SpinInput.mjs +82 -109
- package/esm/components/SpinInput/SpinInput.mjs.map +1 -1
- package/esm/components/TimeGrid/TimeGrid.context.mjs +7 -8
- package/esm/components/TimeGrid/TimeGrid.context.mjs.map +1 -1
- package/esm/components/TimeGrid/TimeGrid.mjs +92 -98
- package/esm/components/TimeGrid/TimeGrid.mjs.map +1 -1
- package/esm/components/TimeGrid/TimeGrid.module.mjs +7 -0
- package/esm/components/TimeGrid/TimeGrid.module.mjs.map +1 -0
- package/esm/components/TimeGrid/TimeGridControl.mjs +24 -29
- package/esm/components/TimeGrid/TimeGridControl.mjs.map +1 -1
- package/esm/components/TimeGrid/compare-time.mjs +8 -7
- package/esm/components/TimeGrid/compare-time.mjs.map +1 -1
- package/esm/components/TimeInput/TimeInput.mjs +67 -80
- package/esm/components/TimeInput/TimeInput.mjs.map +1 -1
- package/esm/components/TimeInput/TimeInput.module.mjs +7 -0
- package/esm/components/TimeInput/TimeInput.module.mjs.map +1 -0
- package/esm/components/TimePicker/AmPmInput/AmPmInput.mjs +92 -99
- package/esm/components/TimePicker/AmPmInput/AmPmInput.mjs.map +1 -1
- package/esm/components/TimePicker/TimeControlsList/AmPmControlsList.mjs +18 -10
- package/esm/components/TimePicker/TimeControlsList/AmPmControlsList.mjs.map +1 -1
- package/esm/components/TimePicker/TimeControlsList/TimeControl.mjs +19 -21
- package/esm/components/TimePicker/TimeControlsList/TimeControl.mjs.map +1 -1
- package/esm/components/TimePicker/TimeControlsList/TimeControlsList.mjs +46 -55
- package/esm/components/TimePicker/TimeControlsList/TimeControlsList.mjs.map +1 -1
- package/esm/components/TimePicker/TimePicker.context.mjs +7 -8
- package/esm/components/TimePicker/TimePicker.context.mjs.map +1 -1
- package/esm/components/TimePicker/TimePicker.mjs +323 -417
- package/esm/components/TimePicker/TimePicker.mjs.map +1 -1
- package/esm/components/TimePicker/TimePicker.module.mjs +18 -0
- package/esm/components/TimePicker/TimePicker.module.mjs.map +1 -0
- package/esm/components/TimePicker/TimePresets/TimePresetControl.mjs +22 -26
- package/esm/components/TimePicker/TimePresets/TimePresetControl.mjs.map +1 -1
- package/esm/components/TimePicker/TimePresets/TimePresetGroup.mjs +35 -34
- package/esm/components/TimePicker/TimePresets/TimePresetGroup.mjs.map +1 -1
- package/esm/components/TimePicker/TimePresets/TimePresets.mjs +60 -68
- package/esm/components/TimePicker/TimePresets/TimePresets.mjs.map +1 -1
- package/esm/components/TimePicker/use-time-picker.mjs +200 -191
- package/esm/components/TimePicker/use-time-picker.mjs.map +1 -1
- package/esm/components/TimePicker/utils/clamp-time/clamp-time.mjs +10 -10
- package/esm/components/TimePicker/utils/clamp-time/clamp-time.mjs.map +1 -1
- package/esm/components/TimePicker/utils/get-parsed-time/get-parsed-time.mjs +40 -31
- package/esm/components/TimePicker/utils/get-parsed-time/get-parsed-time.mjs.map +1 -1
- package/esm/components/TimePicker/utils/get-time-range/get-time-range.mjs +12 -13
- package/esm/components/TimePicker/utils/get-time-range/get-time-range.mjs.map +1 -1
- package/esm/components/TimePicker/utils/get-time-string/get-time-string.mjs +39 -46
- package/esm/components/TimePicker/utils/get-time-string/get-time-string.mjs.map +1 -1
- package/esm/components/TimePicker/utils/is-same-time/is-same-time.mjs +10 -11
- package/esm/components/TimePicker/utils/is-same-time/is-same-time.mjs.map +1 -1
- package/esm/components/TimePicker/utils/pad-time/pad-time.mjs +6 -4
- package/esm/components/TimePicker/utils/pad-time/pad-time.mjs.map +1 -1
- package/esm/components/TimePicker/utils/split-time-string/split-time-string.mjs +11 -5
- package/esm/components/TimePicker/utils/split-time-string/split-time-string.mjs.map +1 -1
- package/esm/components/TimePicker/utils/time-to-seconds/time-to-seconds.mjs +17 -16
- package/esm/components/TimePicker/utils/time-to-seconds/time-to-seconds.mjs.map +1 -1
- package/esm/components/TimeValue/TimeValue.mjs +17 -13
- package/esm/components/TimeValue/TimeValue.mjs.map +1 -1
- package/esm/components/TimeValue/get-formatted-time/get-formatted-time.mjs +14 -25
- package/esm/components/TimeValue/get-formatted-time/get-formatted-time.mjs.map +1 -1
- package/esm/components/WeekdaysRow/WeekdaysRow.mjs +49 -58
- package/esm/components/WeekdaysRow/WeekdaysRow.mjs.map +1 -1
- package/esm/components/WeekdaysRow/WeekdaysRow.module.mjs +7 -0
- package/esm/components/WeekdaysRow/WeekdaysRow.module.mjs.map +1 -0
- package/esm/components/WeekdaysRow/get-weekdays-names/get-weekdays-names.mjs +12 -20
- package/esm/components/WeekdaysRow/get-weekdays-names/get-weekdays-names.mjs.map +1 -1
- package/esm/components/YearLevel/YearLevel.mjs +70 -114
- package/esm/components/YearLevel/YearLevel.mjs.map +1 -1
- package/esm/components/YearLevelGroup/YearLevelGroup.mjs +80 -128
- package/esm/components/YearLevelGroup/YearLevelGroup.mjs.map +1 -1
- package/esm/components/YearPicker/YearPicker.mjs +45 -69
- package/esm/components/YearPicker/YearPicker.mjs.map +1 -1
- package/esm/components/YearPicker/YearPicker.module.mjs +11 -0
- package/esm/components/YearPicker/YearPicker.module.mjs.map +1 -0
- package/esm/components/YearPickerInput/YearPickerInput.mjs +85 -117
- package/esm/components/YearPickerInput/YearPickerInput.mjs.map +1 -1
- package/esm/components/YearsList/YearsList.mjs +100 -126
- package/esm/components/YearsList/YearsList.mjs.map +1 -1
- package/esm/components/YearsList/YearsList.module.mjs +10 -0
- package/esm/components/YearsList/YearsList.module.mjs.map +1 -0
- package/esm/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.mjs +18 -24
- 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 +23 -17
- 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 +10 -15
- package/esm/components/YearsList/is-year-disabled/is-year-disabled.mjs.map +1 -1
- package/esm/hooks/use-dates-input/use-dates-input.mjs +45 -64
- 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 +8 -7
- 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 +111 -148
- package/esm/hooks/use-dates-state/use-dates-state.mjs.map +1 -1
- package/esm/hooks/use-uncontrolled-dates/use-uncontrolled-dates.mjs +31 -33
- package/esm/hooks/use-uncontrolled-dates/use-uncontrolled-dates.mjs.map +1 -1
- package/esm/index.mjs +46 -46
- package/esm/utils/assign-time/assign-time.mjs +14 -15
- package/esm/utils/assign-time/assign-time.mjs.map +1 -1
- package/esm/utils/clamp-date/clamp-date.mjs +11 -16
- package/esm/utils/clamp-date/clamp-date.mjs.map +1 -1
- package/esm/utils/get-default-clamped-date/get-default-clamped-date.mjs +13 -21
- package/esm/utils/get-default-clamped-date/get-default-clamped-date.mjs.map +1 -1
- package/esm/utils/get-formatted-date/get-formatted-date.mjs +17 -30
- package/esm/utils/get-formatted-date/get-formatted-date.mjs.map +1 -1
- package/esm/utils/handle-control-key-down/handle-control-key-down.mjs +114 -147
- package/esm/utils/handle-control-key-down/handle-control-key-down.mjs.map +1 -1
- package/esm/utils/to-date-string/to-date-string.mjs +8 -7
- package/esm/utils/to-date-string/to-date-string.mjs.map +1 -1
- package/lib/components/InlineDateTimePicker/InlineDateTimePicker.d.ts +71 -0
- package/lib/components/InlineDateTimePicker/index.d.ts +9 -0
- package/package.json +7 -7
- package/styles.css +1 -1
- package/styles.layer.css +1 -1
- package/cjs/components/CalendarHeader/CalendarHeader.module.css.cjs +0 -7
- package/cjs/components/CalendarHeader/CalendarHeader.module.css.cjs.map +0 -1
- package/cjs/components/DatePicker/DatePicker.module.css.cjs +0 -7
- package/cjs/components/DatePicker/DatePicker.module.css.cjs.map +0 -1
- package/cjs/components/DateTimePicker/DateTimePicker.module.css.cjs +0 -7
- package/cjs/components/DateTimePicker/DateTimePicker.module.css.cjs.map +0 -1
- package/cjs/components/Day/Day.module.css.cjs +0 -7
- package/cjs/components/Day/Day.module.css.cjs.map +0 -1
- package/cjs/components/LevelsGroup/LevelsGroup.module.css.cjs +0 -7
- package/cjs/components/LevelsGroup/LevelsGroup.module.css.cjs.map +0 -1
- package/cjs/components/MiniCalendar/MiniCalendar.module.css.cjs +0 -7
- package/cjs/components/MiniCalendar/MiniCalendar.module.css.cjs.map +0 -1
- package/cjs/components/Month/Month.module.css.cjs +0 -7
- package/cjs/components/Month/Month.module.css.cjs.map +0 -1
- package/cjs/components/MonthsList/MonthsList.module.css.cjs +0 -7
- package/cjs/components/MonthsList/MonthsList.module.css.cjs.map +0 -1
- package/cjs/components/PickerControl/PickerControl.module.css.cjs +0 -7
- package/cjs/components/PickerControl/PickerControl.module.css.cjs.map +0 -1
- package/cjs/components/PickerInputBase/PickerInputBase.module.css.cjs +0 -7
- package/cjs/components/PickerInputBase/PickerInputBase.module.css.cjs.map +0 -1
- package/cjs/components/TimeGrid/TimeGrid.module.css.cjs +0 -7
- package/cjs/components/TimeGrid/TimeGrid.module.css.cjs.map +0 -1
- package/cjs/components/TimeInput/TimeInput.module.css.cjs +0 -7
- package/cjs/components/TimeInput/TimeInput.module.css.cjs.map +0 -1
- package/cjs/components/TimePicker/TimePicker.module.css.cjs +0 -7
- package/cjs/components/TimePicker/TimePicker.module.css.cjs.map +0 -1
- package/cjs/components/WeekdaysRow/WeekdaysRow.module.css.cjs +0 -7
- package/cjs/components/WeekdaysRow/WeekdaysRow.module.css.cjs.map +0 -1
- package/cjs/components/YearsList/YearsList.module.css.cjs +0 -7
- package/cjs/components/YearsList/YearsList.module.css.cjs.map +0 -1
- package/cjs/index.cjs.map +0 -1
- package/esm/components/CalendarHeader/CalendarHeader.module.css.mjs +0 -5
- package/esm/components/CalendarHeader/CalendarHeader.module.css.mjs.map +0 -1
- package/esm/components/DatePicker/DatePicker.module.css.mjs +0 -5
- package/esm/components/DatePicker/DatePicker.module.css.mjs.map +0 -1
- package/esm/components/DateTimePicker/DateTimePicker.module.css.mjs +0 -5
- package/esm/components/DateTimePicker/DateTimePicker.module.css.mjs.map +0 -1
- package/esm/components/Day/Day.module.css.mjs +0 -5
- package/esm/components/Day/Day.module.css.mjs.map +0 -1
- package/esm/components/LevelsGroup/LevelsGroup.module.css.mjs +0 -5
- package/esm/components/LevelsGroup/LevelsGroup.module.css.mjs.map +0 -1
- package/esm/components/MiniCalendar/MiniCalendar.module.css.mjs +0 -5
- package/esm/components/MiniCalendar/MiniCalendar.module.css.mjs.map +0 -1
- package/esm/components/Month/Month.module.css.mjs +0 -5
- package/esm/components/Month/Month.module.css.mjs.map +0 -1
- package/esm/components/MonthsList/MonthsList.module.css.mjs +0 -5
- package/esm/components/MonthsList/MonthsList.module.css.mjs.map +0 -1
- package/esm/components/PickerControl/PickerControl.module.css.mjs +0 -5
- package/esm/components/PickerControl/PickerControl.module.css.mjs.map +0 -1
- package/esm/components/PickerInputBase/PickerInputBase.module.css.mjs +0 -5
- package/esm/components/PickerInputBase/PickerInputBase.module.css.mjs.map +0 -1
- package/esm/components/TimeGrid/TimeGrid.module.css.mjs +0 -5
- package/esm/components/TimeGrid/TimeGrid.module.css.mjs.map +0 -1
- package/esm/components/TimeInput/TimeInput.module.css.mjs +0 -5
- package/esm/components/TimeInput/TimeInput.module.css.mjs.map +0 -1
- package/esm/components/TimePicker/TimePicker.module.css.mjs +0 -5
- package/esm/components/TimePicker/TimePicker.module.css.mjs.map +0 -1
- package/esm/components/WeekdaysRow/WeekdaysRow.module.css.mjs +0 -5
- package/esm/components/WeekdaysRow/WeekdaysRow.module.css.mjs.map +0 -1
- package/esm/components/YearsList/YearsList.module.css.mjs +0 -5
- package/esm/components/YearsList/YearsList.module.css.mjs.map +0 -1
- package/esm/index.mjs.map +0 -1
|
@@ -1,113 +1,86 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
|
|
1
|
+
"use client";
|
|
2
|
+
import { padTime } from "../TimePicker/utils/pad-time/pad-time.mjs";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
import { clamp } from "@mantine/hooks";
|
|
5
|
+
//#region packages/@mantine/dates/src/components/SpinInput/SpinInput.tsx
|
|
6
6
|
const getMaxDigit = (max) => Number(max.toFixed(0)[0]);
|
|
7
|
-
function SpinInput({
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
}
|
|
82
|
-
};
|
|
83
|
-
return /* @__PURE__ */ jsx(
|
|
84
|
-
"input",
|
|
85
|
-
{
|
|
86
|
-
type: "text",
|
|
87
|
-
role: "spinbutton",
|
|
88
|
-
"aria-valuemin": min,
|
|
89
|
-
"aria-valuemax": max,
|
|
90
|
-
"aria-valuenow": value === null ? 0 : value,
|
|
91
|
-
"data-empty": value === null || void 0,
|
|
92
|
-
inputMode: "numeric",
|
|
93
|
-
placeholder,
|
|
94
|
-
value: value === null ? "" : padTime(value),
|
|
95
|
-
onChange: (event) => handleChange(event.currentTarget.value),
|
|
96
|
-
onKeyDown: handleKeyDown,
|
|
97
|
-
onFocus: (event) => {
|
|
98
|
-
event.currentTarget.select();
|
|
99
|
-
onFocus?.(event);
|
|
100
|
-
},
|
|
101
|
-
onClick: (event) => {
|
|
102
|
-
event.stopPropagation();
|
|
103
|
-
event.currentTarget.select();
|
|
104
|
-
},
|
|
105
|
-
onMouseDown: (event) => event.stopPropagation(),
|
|
106
|
-
...others
|
|
107
|
-
}
|
|
108
|
-
);
|
|
7
|
+
function SpinInput({ value, min, max, onChange, focusable, step, onNextInput, onPreviousInput, onFocus, readOnly, allowTemporaryZero = false, placeholder = "--", ...others }) {
|
|
8
|
+
const maxDigit = getMaxDigit(max);
|
|
9
|
+
const arrowsMax = max + 1 - step;
|
|
10
|
+
const handleChange = (value) => {
|
|
11
|
+
if (readOnly) return;
|
|
12
|
+
const clearValue = value.replace(/\D/g, "");
|
|
13
|
+
if (clearValue !== "") {
|
|
14
|
+
const parsedValue = parseInt(clearValue, 10);
|
|
15
|
+
const clampedValue = allowTemporaryZero && parsedValue === 0 && min > 0 ? 0 : clamp(parsedValue, min, max);
|
|
16
|
+
onChange(clampedValue);
|
|
17
|
+
if (clampedValue > maxDigit || value.startsWith("00")) onNextInput?.();
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
const handleKeyDown = (event) => {
|
|
21
|
+
if (readOnly) return;
|
|
22
|
+
if (event.key === "0" || event.key === "Num0") {
|
|
23
|
+
if (value === 0) {
|
|
24
|
+
event.preventDefault();
|
|
25
|
+
onNextInput?.();
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
if (event.key === "Home") {
|
|
29
|
+
event.preventDefault();
|
|
30
|
+
onChange(min);
|
|
31
|
+
}
|
|
32
|
+
if (event.key === "End") {
|
|
33
|
+
event.preventDefault();
|
|
34
|
+
onChange(max);
|
|
35
|
+
}
|
|
36
|
+
if (event.key === "Backspace" || event.key === "Delete") {
|
|
37
|
+
event.preventDefault();
|
|
38
|
+
if (value !== null) onChange(null);
|
|
39
|
+
else onPreviousInput?.();
|
|
40
|
+
}
|
|
41
|
+
if (event.key === "ArrowRight") {
|
|
42
|
+
event.preventDefault();
|
|
43
|
+
onNextInput?.();
|
|
44
|
+
}
|
|
45
|
+
if (event.key === "ArrowLeft") {
|
|
46
|
+
event.preventDefault();
|
|
47
|
+
onPreviousInput?.();
|
|
48
|
+
}
|
|
49
|
+
if (event.key === "ArrowUp") {
|
|
50
|
+
event.preventDefault();
|
|
51
|
+
onChange(value === null ? min : clamp(value + step, min, arrowsMax));
|
|
52
|
+
}
|
|
53
|
+
if (event.key === "ArrowDown") {
|
|
54
|
+
event.preventDefault();
|
|
55
|
+
onChange(value === null ? arrowsMax : clamp(value - step, min, arrowsMax));
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
return /* @__PURE__ */ jsx("input", {
|
|
59
|
+
type: "text",
|
|
60
|
+
role: "spinbutton",
|
|
61
|
+
"aria-valuemin": min,
|
|
62
|
+
"aria-valuemax": max,
|
|
63
|
+
"aria-valuenow": value === null ? 0 : value,
|
|
64
|
+
"data-empty": value === null || void 0,
|
|
65
|
+
inputMode: "numeric",
|
|
66
|
+
placeholder,
|
|
67
|
+
value: value === null ? "" : padTime(value),
|
|
68
|
+
onChange: (event) => handleChange(event.currentTarget.value),
|
|
69
|
+
onKeyDown: handleKeyDown,
|
|
70
|
+
onFocus: (event) => {
|
|
71
|
+
event.currentTarget.select();
|
|
72
|
+
onFocus?.(event);
|
|
73
|
+
},
|
|
74
|
+
onClick: (event) => {
|
|
75
|
+
event.stopPropagation();
|
|
76
|
+
event.currentTarget.select();
|
|
77
|
+
},
|
|
78
|
+
onMouseDown: (event) => event.stopPropagation(),
|
|
79
|
+
...others
|
|
80
|
+
});
|
|
109
81
|
}
|
|
110
82
|
SpinInput.displayName = "@mantine/dates/SpinInput";
|
|
111
|
-
|
|
83
|
+
//#endregion
|
|
112
84
|
export { SpinInput };
|
|
113
|
-
|
|
85
|
+
|
|
86
|
+
//# sourceMappingURL=SpinInput.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpinInput.mjs","sources":["../../../src/components/SpinInput/SpinInput.tsx"],"sourcesContent":["import { clamp } from '@mantine/hooks';\nimport { padTime } from '../TimePicker/utils/pad-time/pad-time';\n\ninterface SpinInputProps extends Omit<React.ComponentProps<'input'>, 'onChange' | 'value'> {\n value: number | null;\n min: number;\n max: number;\n onChange: (value: number | null) => void;\n focusable: boolean;\n step: number;\n onNextInput?: () => void;\n onPreviousInput?: () => void;\n allowTemporaryZero?: boolean;\n placeholder?: string;\n}\n\nconst getMaxDigit = (max: number) => Number(max.toFixed(0)[0]);\n\nexport function SpinInput({\n value,\n min,\n max,\n onChange,\n focusable,\n step,\n onNextInput,\n onPreviousInput,\n onFocus,\n readOnly,\n allowTemporaryZero = false,\n placeholder = '--',\n ...others\n}: SpinInputProps) {\n const maxDigit = getMaxDigit(max);\n const arrowsMax = max + 1 - step;\n\n const handleChange = (value: string) => {\n if (readOnly) {\n return;\n }\n\n const clearValue = value.replace(/\\D/g, '');\n if (clearValue !== '') {\n const parsedValue = parseInt(clearValue, 10);\n const clampedValue =\n allowTemporaryZero && parsedValue === 0 && min > 0 ? 0 : clamp(parsedValue, min, max);\n\n onChange(clampedValue);\n\n if (clampedValue > maxDigit || value.startsWith('00')) {\n onNextInput?.();\n }\n }\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (readOnly) {\n return;\n }\n\n if (event.key === '0' || event.key === 'Num0') {\n if (value === 0) {\n event.preventDefault();\n onNextInput?.();\n }\n }\n\n if (event.key === 'Home') {\n event.preventDefault();\n onChange(min);\n }\n\n if (event.key === 'End') {\n event.preventDefault();\n onChange(max);\n }\n\n if (event.key === 'Backspace' || event.key === 'Delete') {\n event.preventDefault();\n\n if (value !== null) {\n onChange(null);\n } else {\n onPreviousInput?.();\n }\n }\n\n if (event.key === 'ArrowRight') {\n event.preventDefault();\n onNextInput?.();\n }\n\n if (event.key === 'ArrowLeft') {\n event.preventDefault();\n onPreviousInput?.();\n }\n\n if (event.key === 'ArrowUp') {\n event.preventDefault();\n const newValue = value === null ? min : clamp(value + step, min, arrowsMax);\n onChange(newValue);\n }\n\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n const newValue = value === null ? arrowsMax : clamp(value - step, min, arrowsMax);\n onChange(newValue);\n }\n };\n\n return (\n <input\n type=\"text\"\n role=\"spinbutton\"\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={value === null ? 0 : value}\n data-empty={value === null || undefined}\n inputMode=\"numeric\"\n placeholder={placeholder}\n value={value === null ? '' : padTime(value)}\n onChange={(event) => handleChange(event.currentTarget.value)}\n onKeyDown={handleKeyDown}\n onFocus={(event) => {\n event.currentTarget.select();\n onFocus?.(event);\n }}\n onClick={(event) => {\n event.stopPropagation();\n event.currentTarget.select();\n }}\n onMouseDown={(event) => event.stopPropagation()}\n {...others}\n />\n );\n}\n\nSpinInput.displayName = '@mantine/dates/SpinInput';\n"],"names":["value"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SpinInput.mjs","names":[],"sources":["../../../src/components/SpinInput/SpinInput.tsx"],"sourcesContent":["import { clamp } from '@mantine/hooks';\nimport { padTime } from '../TimePicker/utils/pad-time/pad-time';\n\ninterface SpinInputProps extends Omit<React.ComponentProps<'input'>, 'onChange' | 'value'> {\n value: number | null;\n min: number;\n max: number;\n onChange: (value: number | null) => void;\n focusable: boolean;\n step: number;\n onNextInput?: () => void;\n onPreviousInput?: () => void;\n allowTemporaryZero?: boolean;\n placeholder?: string;\n}\n\nconst getMaxDigit = (max: number) => Number(max.toFixed(0)[0]);\n\nexport function SpinInput({\n value,\n min,\n max,\n onChange,\n focusable,\n step,\n onNextInput,\n onPreviousInput,\n onFocus,\n readOnly,\n allowTemporaryZero = false,\n placeholder = '--',\n ...others\n}: SpinInputProps) {\n const maxDigit = getMaxDigit(max);\n const arrowsMax = max + 1 - step;\n\n const handleChange = (value: string) => {\n if (readOnly) {\n return;\n }\n\n const clearValue = value.replace(/\\D/g, '');\n if (clearValue !== '') {\n const parsedValue = parseInt(clearValue, 10);\n const clampedValue =\n allowTemporaryZero && parsedValue === 0 && min > 0 ? 0 : clamp(parsedValue, min, max);\n\n onChange(clampedValue);\n\n if (clampedValue > maxDigit || value.startsWith('00')) {\n onNextInput?.();\n }\n }\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (readOnly) {\n return;\n }\n\n if (event.key === '0' || event.key === 'Num0') {\n if (value === 0) {\n event.preventDefault();\n onNextInput?.();\n }\n }\n\n if (event.key === 'Home') {\n event.preventDefault();\n onChange(min);\n }\n\n if (event.key === 'End') {\n event.preventDefault();\n onChange(max);\n }\n\n if (event.key === 'Backspace' || event.key === 'Delete') {\n event.preventDefault();\n\n if (value !== null) {\n onChange(null);\n } else {\n onPreviousInput?.();\n }\n }\n\n if (event.key === 'ArrowRight') {\n event.preventDefault();\n onNextInput?.();\n }\n\n if (event.key === 'ArrowLeft') {\n event.preventDefault();\n onPreviousInput?.();\n }\n\n if (event.key === 'ArrowUp') {\n event.preventDefault();\n const newValue = value === null ? min : clamp(value + step, min, arrowsMax);\n onChange(newValue);\n }\n\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n const newValue = value === null ? arrowsMax : clamp(value - step, min, arrowsMax);\n onChange(newValue);\n }\n };\n\n return (\n <input\n type=\"text\"\n role=\"spinbutton\"\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={value === null ? 0 : value}\n data-empty={value === null || undefined}\n inputMode=\"numeric\"\n placeholder={placeholder}\n value={value === null ? '' : padTime(value)}\n onChange={(event) => handleChange(event.currentTarget.value)}\n onKeyDown={handleKeyDown}\n onFocus={(event) => {\n event.currentTarget.select();\n onFocus?.(event);\n }}\n onClick={(event) => {\n event.stopPropagation();\n event.currentTarget.select();\n }}\n onMouseDown={(event) => event.stopPropagation()}\n {...others}\n />\n );\n}\n\nSpinInput.displayName = '@mantine/dates/SpinInput';\n"],"mappings":";;;;;AAgBA,MAAM,eAAe,QAAgB,OAAO,IAAI,QAAQ,EAAE,CAAC,GAAG;AAE9D,SAAgB,UAAU,EACxB,OACA,KACA,KACA,UACA,WACA,MACA,aACA,iBACA,SACA,UACA,qBAAqB,OACrB,cAAc,MACd,GAAG,UACc;CACjB,MAAM,WAAW,YAAY,IAAI;CACjC,MAAM,YAAY,MAAM,IAAI;CAE5B,MAAM,gBAAgB,UAAkB;AACtC,MAAI,SACF;EAGF,MAAM,aAAa,MAAM,QAAQ,OAAO,GAAG;AAC3C,MAAI,eAAe,IAAI;GACrB,MAAM,cAAc,SAAS,YAAY,GAAG;GAC5C,MAAM,eACJ,sBAAsB,gBAAgB,KAAK,MAAM,IAAI,IAAI,MAAM,aAAa,KAAK,IAAI;AAEvF,YAAS,aAAa;AAEtB,OAAI,eAAe,YAAY,MAAM,WAAW,KAAK,CACnD,gBAAe;;;CAKrB,MAAM,iBAAiB,UAAiD;AACtE,MAAI,SACF;AAGF,MAAI,MAAM,QAAQ,OAAO,MAAM,QAAQ;OACjC,UAAU,GAAG;AACf,UAAM,gBAAgB;AACtB,mBAAe;;;AAInB,MAAI,MAAM,QAAQ,QAAQ;AACxB,SAAM,gBAAgB;AACtB,YAAS,IAAI;;AAGf,MAAI,MAAM,QAAQ,OAAO;AACvB,SAAM,gBAAgB;AACtB,YAAS,IAAI;;AAGf,MAAI,MAAM,QAAQ,eAAe,MAAM,QAAQ,UAAU;AACvD,SAAM,gBAAgB;AAEtB,OAAI,UAAU,KACZ,UAAS,KAAK;OAEd,oBAAmB;;AAIvB,MAAI,MAAM,QAAQ,cAAc;AAC9B,SAAM,gBAAgB;AACtB,kBAAe;;AAGjB,MAAI,MAAM,QAAQ,aAAa;AAC7B,SAAM,gBAAgB;AACtB,sBAAmB;;AAGrB,MAAI,MAAM,QAAQ,WAAW;AAC3B,SAAM,gBAAgB;AAEtB,YADiB,UAAU,OAAO,MAAM,MAAM,QAAQ,MAAM,KAAK,UAAU,CACzD;;AAGpB,MAAI,MAAM,QAAQ,aAAa;AAC7B,SAAM,gBAAgB;AAEtB,YADiB,UAAU,OAAO,YAAY,MAAM,QAAQ,MAAM,KAAK,UAAU,CAC/D;;;AAItB,QACE,oBAAC,SAAD;EACE,MAAK;EACL,MAAK;EACL,iBAAe;EACf,iBAAe;EACf,iBAAe,UAAU,OAAO,IAAI;EACpC,cAAY,UAAU,QAAQ,KAAA;EAC9B,WAAU;EACG;EACb,OAAO,UAAU,OAAO,KAAK,QAAQ,MAAM;EAC3C,WAAW,UAAU,aAAa,MAAM,cAAc,MAAM;EAC5D,WAAW;EACX,UAAU,UAAU;AAClB,SAAM,cAAc,QAAQ;AAC5B,aAAU,MAAM;;EAElB,UAAU,UAAU;AAClB,SAAM,iBAAiB;AACvB,SAAM,cAAc,QAAQ;;EAE9B,cAAc,UAAU,MAAM,iBAAiB;EAC/C,GAAI;EACJ,CAAA;;AAIN,UAAU,cAAc"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
import { createSafeContext } from
|
|
3
|
-
|
|
4
|
-
const [TimeGridProvider, useTimeGridContext] = createSafeContext(
|
|
5
|
-
|
|
6
|
-
);
|
|
7
|
-
|
|
1
|
+
"use client";
|
|
2
|
+
import { createSafeContext } from "@mantine/core";
|
|
3
|
+
//#region packages/@mantine/dates/src/components/TimeGrid/TimeGrid.context.ts
|
|
4
|
+
const [TimeGridProvider, useTimeGridContext] = createSafeContext("TimeGridProvider was not found in the component tree");
|
|
5
|
+
//#endregion
|
|
8
6
|
export { TimeGridProvider, useTimeGridContext };
|
|
9
|
-
|
|
7
|
+
|
|
8
|
+
//# sourceMappingURL=TimeGrid.context.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TimeGrid.context.mjs","sources":["../../../src/components/TimeGrid/TimeGrid.context.ts"],"sourcesContent":["import { createSafeContext, GetStylesApi } from '@mantine/core';\nimport type { TimeGridFactory } from './TimeGrid';\n\ninterface TimeGridContextValue {\n getStyles: GetStylesApi<TimeGridFactory>;\n}\n\nexport const [TimeGridProvider, useTimeGridContext] = createSafeContext<TimeGridContextValue>(\n 'TimeGridProvider was not found in the component tree'\n);\n"],"
|
|
1
|
+
{"version":3,"file":"TimeGrid.context.mjs","names":[],"sources":["../../../src/components/TimeGrid/TimeGrid.context.ts"],"sourcesContent":["import { createSafeContext, GetStylesApi } from '@mantine/core';\nimport type { TimeGridFactory } from './TimeGrid';\n\ninterface TimeGridContextValue {\n getStyles: GetStylesApi<TimeGridFactory>;\n}\n\nexport const [TimeGridProvider, useTimeGridContext] = createSafeContext<TimeGridContextValue>(\n 'TimeGridProvider was not found in the component tree'\n);\n"],"mappings":";;;AAOA,MAAa,CAAC,kBAAkB,sBAAsB,kBACpD,uDACD"}
|
|
@@ -1,105 +1,99 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import
|
|
7
|
-
import {
|
|
8
|
-
import
|
|
9
|
-
import {
|
|
10
|
-
|
|
1
|
+
"use client";
|
|
2
|
+
import { isSameTime } from "../TimePicker/utils/is-same-time/is-same-time.mjs";
|
|
3
|
+
import { isTimeAfter, isTimeBefore } from "./compare-time.mjs";
|
|
4
|
+
import { TimeGridProvider } from "./TimeGrid.context.mjs";
|
|
5
|
+
import { TimeGridControl } from "./TimeGridControl.mjs";
|
|
6
|
+
import TimeGrid_module_default from "./TimeGrid.module.mjs";
|
|
7
|
+
import { jsx } from "react/jsx-runtime";
|
|
8
|
+
import { Box, SimpleGrid, createVarsResolver, factory, getFontSize, getRadius, useProps, useStyles } from "@mantine/core";
|
|
9
|
+
import { useUncontrolled } from "@mantine/hooks";
|
|
10
|
+
//#region packages/@mantine/dates/src/components/TimeGrid/TimeGrid.tsx
|
|
11
11
|
const defaultProps = {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
simpleGridProps: {
|
|
13
|
+
cols: 3,
|
|
14
|
+
spacing: "xs"
|
|
15
|
+
},
|
|
16
|
+
format: "24h",
|
|
17
|
+
amPmLabels: {
|
|
18
|
+
am: "AM",
|
|
19
|
+
pm: "PM"
|
|
20
|
+
}
|
|
15
21
|
};
|
|
16
|
-
const varsResolver = createVarsResolver((_theme, { size, radius }) => ({
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
}
|
|
21
|
-
}));
|
|
22
|
+
const varsResolver = createVarsResolver((_theme, { size, radius }) => ({ root: {
|
|
23
|
+
"--time-grid-fz": getFontSize(size),
|
|
24
|
+
"--time-grid-radius": getRadius(radius)
|
|
25
|
+
} }));
|
|
22
26
|
const TimeGrid = factory((_props) => {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
return /* @__PURE__ */ jsx(TimeGridProvider, { value: { getStyles }, children: /* @__PURE__ */ jsx(Box, { ...getStyles("root"), ...others, children: /* @__PURE__ */ jsx(
|
|
89
|
-
SimpleGrid,
|
|
90
|
-
{
|
|
91
|
-
...simpleGridProps,
|
|
92
|
-
...getStyles("simpleGrid", {
|
|
93
|
-
className: simpleGridProps?.className,
|
|
94
|
-
style: simpleGridProps?.style
|
|
95
|
-
}),
|
|
96
|
-
children: controls
|
|
97
|
-
}
|
|
98
|
-
) }) });
|
|
27
|
+
const props = useProps("TimeGrid", defaultProps, _props);
|
|
28
|
+
const { classNames, className, style, styles, unstyled, vars, data, value, defaultValue, onChange, format, withSeconds = false, amPmLabels, allowDeselect, simpleGridProps, getControlProps, minTime, maxTime, disableTime, disabled, attributes, ...others } = props;
|
|
29
|
+
const getStyles = useStyles({
|
|
30
|
+
name: "TimeGrid",
|
|
31
|
+
classes: TimeGrid_module_default,
|
|
32
|
+
props,
|
|
33
|
+
className,
|
|
34
|
+
style,
|
|
35
|
+
classNames,
|
|
36
|
+
styles,
|
|
37
|
+
unstyled,
|
|
38
|
+
attributes,
|
|
39
|
+
vars,
|
|
40
|
+
varsResolver
|
|
41
|
+
});
|
|
42
|
+
const [_value, setValue] = useUncontrolled({
|
|
43
|
+
value,
|
|
44
|
+
defaultValue,
|
|
45
|
+
finalValue: null,
|
|
46
|
+
onChange
|
|
47
|
+
});
|
|
48
|
+
const controls = data.map((time) => {
|
|
49
|
+
const isDisabled = disabled || !!minTime && isTimeBefore(time, minTime) || !!maxTime && isTimeAfter(time, maxTime) || (Array.isArray(disableTime) ? !!disableTime.find((t) => isSameTime({
|
|
50
|
+
time,
|
|
51
|
+
compare: t,
|
|
52
|
+
withSeconds
|
|
53
|
+
})) : !!disableTime?.(time));
|
|
54
|
+
return /* @__PURE__ */ jsx(TimeGridControl, {
|
|
55
|
+
active: isSameTime({
|
|
56
|
+
time,
|
|
57
|
+
compare: _value || "",
|
|
58
|
+
withSeconds
|
|
59
|
+
}),
|
|
60
|
+
time,
|
|
61
|
+
onClick: () => {
|
|
62
|
+
const nextValue = allowDeselect && (_value === null ? time === _value : isSameTime({
|
|
63
|
+
time,
|
|
64
|
+
compare: _value,
|
|
65
|
+
withSeconds
|
|
66
|
+
})) ? null : time;
|
|
67
|
+
nextValue !== _value && setValue(nextValue);
|
|
68
|
+
},
|
|
69
|
+
format,
|
|
70
|
+
amPmLabels,
|
|
71
|
+
disabled: isDisabled,
|
|
72
|
+
"data-disabled": isDisabled || void 0,
|
|
73
|
+
withSeconds,
|
|
74
|
+
...getControlProps?.(time)
|
|
75
|
+
}, time);
|
|
76
|
+
});
|
|
77
|
+
return /* @__PURE__ */ jsx(TimeGridProvider, {
|
|
78
|
+
value: { getStyles },
|
|
79
|
+
children: /* @__PURE__ */ jsx(Box, {
|
|
80
|
+
...getStyles("root"),
|
|
81
|
+
...others,
|
|
82
|
+
children: /* @__PURE__ */ jsx(SimpleGrid, {
|
|
83
|
+
...simpleGridProps,
|
|
84
|
+
...getStyles("simpleGrid", {
|
|
85
|
+
className: simpleGridProps?.className,
|
|
86
|
+
style: simpleGridProps?.style
|
|
87
|
+
}),
|
|
88
|
+
children: controls
|
|
89
|
+
})
|
|
90
|
+
})
|
|
91
|
+
});
|
|
99
92
|
});
|
|
100
93
|
TimeGrid.displayName = "@mantine/dates/TimeGrid";
|
|
101
|
-
TimeGrid.classes =
|
|
94
|
+
TimeGrid.classes = TimeGrid_module_default;
|
|
102
95
|
TimeGrid.varsResolver = varsResolver;
|
|
103
|
-
|
|
96
|
+
//#endregion
|
|
104
97
|
export { TimeGrid };
|
|
105
|
-
|
|
98
|
+
|
|
99
|
+
//# sourceMappingURL=TimeGrid.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TimeGrid.mjs","sources":["../../../src/components/TimeGrid/TimeGrid.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n createVarsResolver,\n DataAttributes,\n ElementProps,\n factory,\n Factory,\n getFontSize,\n getRadius,\n MantineRadius,\n MantineSize,\n SimpleGrid,\n SimpleGridProps,\n StylesApiProps,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport { useUncontrolled } from '@mantine/hooks';\nimport type { TimePickerAmPmLabels, TimePickerFormat } from '../TimePicker';\nimport { isSameTime } from '../TimePicker/utils/is-same-time/is-same-time';\nimport { isTimeAfter, isTimeBefore } from './compare-time';\nimport { TimeGridProvider } from './TimeGrid.context';\nimport classes from './TimeGrid.module.css';\nimport { TimeGridControl } from './TimeGridControl';\n\nexport type TimeGridStylesNames = 'root' | 'control' | 'simpleGrid';\nexport type TimeGridCssVariables = {\n root: '--time-grid-fz' | '--time-grid-radius';\n};\n\nexport interface TimeGridProps\n extends\n BoxProps,\n StylesApiProps<TimeGridFactory>,\n ElementProps<'div', 'onChange' | 'value' | 'defaultValue'> {\n /** Time data in 24h format to be displayed in the grid, for example `['10:00', '18:30', '22:00']`. Time values must be unique. */\n data: string[];\n\n /** Controlled component value */\n value?: string | null;\n\n /** Uncontrolled component default value */\n defaultValue?: string | null;\n\n /** Called when value changes */\n onChange?: (value: string | null) => void;\n\n /** Determines whether the value can be deselected when the current active option is clicked or activated with keyboard @default false */\n allowDeselect?: boolean;\n\n /** Time format displayed in the grid @default '24h' */\n format?: TimePickerFormat;\n\n /** Determines whether the seconds part should be displayed @default false */\n withSeconds?: boolean;\n\n /** Labels used for am/pm values @default { am: 'AM', pm: 'PM' } */\n amPmLabels?: TimePickerAmPmLabels;\n\n /** Props passed down to the underlying `SimpleGrid` component @default { cols: 3, spacing: 'xs' } */\n simpleGridProps?: SimpleGridProps;\n\n /** A function to pass props down to control based on the time value */\n getControlProps?: (time: string) => React.ComponentProps<'button'> & DataAttributes;\n\n /** Key of `theme.radius` or any valid CSS value to set `border-radius` @default theme.defaultRadius */\n radius?: MantineRadius;\n\n /** Control `font-size` of controls, key of `theme.fontSizes` or any valid CSS value @default 'sm' */\n size?: MantineSize;\n\n /** All controls before this time are disabled */\n minTime?: string;\n\n /** All controls after this time are disabled */\n maxTime?: string;\n\n /** Array of time values to disable */\n disableTime?: string[] | ((time: string) => boolean);\n\n /** If set, all controls are disabled */\n disabled?: boolean;\n}\n\nexport type TimeGridFactory = Factory<{\n props: TimeGridProps;\n ref: HTMLDivElement;\n stylesNames: TimeGridStylesNames;\n vars: TimeGridCssVariables;\n}>;\n\nconst defaultProps = {\n simpleGridProps: { cols: 3, spacing: 'xs' },\n format: '24h',\n amPmLabels: { am: 'AM', pm: 'PM' },\n} satisfies Partial<TimeGridProps>;\n\nconst varsResolver = createVarsResolver<TimeGridFactory>((_theme, { size, radius }) => ({\n root: {\n '--time-grid-fz': getFontSize(size),\n '--time-grid-radius': getRadius(radius),\n },\n}));\n\nexport const TimeGrid = factory<TimeGridFactory>((_props) => {\n const props = useProps('TimeGrid', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n data,\n value,\n defaultValue,\n onChange,\n format,\n withSeconds = false,\n amPmLabels,\n allowDeselect,\n simpleGridProps,\n getControlProps,\n minTime,\n maxTime,\n disableTime,\n disabled,\n attributes,\n ...others\n } = props;\n\n const getStyles = useStyles<TimeGridFactory>({\n name: 'TimeGrid',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: null,\n onChange,\n });\n\n const controls = data.map((time) => {\n const isDisabled =\n disabled ||\n (!!minTime && isTimeBefore(time, minTime)) ||\n (!!maxTime && isTimeAfter(time, maxTime)) ||\n (Array.isArray(disableTime)\n ? !!disableTime.find((t) => isSameTime({ time, compare: t, withSeconds }))\n : !!disableTime?.(time));\n\n return (\n <TimeGridControl\n key={time}\n active={isSameTime({ time, compare: _value || '', withSeconds })}\n time={time}\n onClick={() => {\n const nextValue =\n allowDeselect &&\n (_value === null ? time === _value : isSameTime({ time, compare: _value, withSeconds }))\n ? null\n : time;\n nextValue !== _value && setValue(nextValue);\n }}\n format={format}\n amPmLabels={amPmLabels}\n disabled={isDisabled}\n data-disabled={isDisabled || undefined}\n withSeconds={withSeconds}\n {...getControlProps?.(time)}\n />\n );\n });\n\n return (\n <TimeGridProvider value={{ getStyles }}>\n <Box {...getStyles('root')} {...others}>\n <SimpleGrid\n {...simpleGridProps}\n {...getStyles('simpleGrid', {\n className: simpleGridProps?.className,\n style: simpleGridProps?.style,\n })}\n >\n {controls}\n </SimpleGrid>\n </Box>\n </TimeGridProvider>\n );\n});\n\nTimeGrid.displayName = '@mantine/dates/TimeGrid';\nTimeGrid.classes = classes;\nTimeGrid.varsResolver = varsResolver;\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TimeGrid.mjs","names":["classes"],"sources":["../../../src/components/TimeGrid/TimeGrid.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n createVarsResolver,\n DataAttributes,\n ElementProps,\n factory,\n Factory,\n getFontSize,\n getRadius,\n MantineRadius,\n MantineSize,\n SimpleGrid,\n SimpleGridProps,\n StylesApiProps,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport { useUncontrolled } from '@mantine/hooks';\nimport type { TimePickerAmPmLabels, TimePickerFormat } from '../TimePicker';\nimport { isSameTime } from '../TimePicker/utils/is-same-time/is-same-time';\nimport { isTimeAfter, isTimeBefore } from './compare-time';\nimport { TimeGridProvider } from './TimeGrid.context';\nimport { TimeGridControl } from './TimeGridControl';\nimport classes from './TimeGrid.module.css';\n\nexport type TimeGridStylesNames = 'root' | 'control' | 'simpleGrid';\nexport type TimeGridCssVariables = {\n root: '--time-grid-fz' | '--time-grid-radius';\n};\n\nexport interface TimeGridProps\n extends\n BoxProps,\n StylesApiProps<TimeGridFactory>,\n ElementProps<'div', 'onChange' | 'value' | 'defaultValue'> {\n /** Time data in 24h format to be displayed in the grid, for example `['10:00', '18:30', '22:00']`. Time values must be unique. */\n data: string[];\n\n /** Controlled component value */\n value?: string | null;\n\n /** Uncontrolled component default value */\n defaultValue?: string | null;\n\n /** Called when value changes */\n onChange?: (value: string | null) => void;\n\n /** Determines whether the value can be deselected when the current active option is clicked or activated with keyboard @default false */\n allowDeselect?: boolean;\n\n /** Time format displayed in the grid @default '24h' */\n format?: TimePickerFormat;\n\n /** Determines whether the seconds part should be displayed @default false */\n withSeconds?: boolean;\n\n /** Labels used for am/pm values @default { am: 'AM', pm: 'PM' } */\n amPmLabels?: TimePickerAmPmLabels;\n\n /** Props passed down to the underlying `SimpleGrid` component @default { cols: 3, spacing: 'xs' } */\n simpleGridProps?: SimpleGridProps;\n\n /** A function to pass props down to control based on the time value */\n getControlProps?: (time: string) => React.ComponentProps<'button'> & DataAttributes;\n\n /** Key of `theme.radius` or any valid CSS value to set `border-radius` @default theme.defaultRadius */\n radius?: MantineRadius;\n\n /** Control `font-size` of controls, key of `theme.fontSizes` or any valid CSS value @default 'sm' */\n size?: MantineSize;\n\n /** All controls before this time are disabled */\n minTime?: string;\n\n /** All controls after this time are disabled */\n maxTime?: string;\n\n /** Array of time values to disable */\n disableTime?: string[] | ((time: string) => boolean);\n\n /** If set, all controls are disabled */\n disabled?: boolean;\n}\n\nexport type TimeGridFactory = Factory<{\n props: TimeGridProps;\n ref: HTMLDivElement;\n stylesNames: TimeGridStylesNames;\n vars: TimeGridCssVariables;\n}>;\n\nconst defaultProps = {\n simpleGridProps: { cols: 3, spacing: 'xs' },\n format: '24h',\n amPmLabels: { am: 'AM', pm: 'PM' },\n} satisfies Partial<TimeGridProps>;\n\nconst varsResolver = createVarsResolver<TimeGridFactory>((_theme, { size, radius }) => ({\n root: {\n '--time-grid-fz': getFontSize(size),\n '--time-grid-radius': getRadius(radius),\n },\n}));\n\nexport const TimeGrid = factory<TimeGridFactory>((_props) => {\n const props = useProps('TimeGrid', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n data,\n value,\n defaultValue,\n onChange,\n format,\n withSeconds = false,\n amPmLabels,\n allowDeselect,\n simpleGridProps,\n getControlProps,\n minTime,\n maxTime,\n disableTime,\n disabled,\n attributes,\n ...others\n } = props;\n\n const getStyles = useStyles<TimeGridFactory>({\n name: 'TimeGrid',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: null,\n onChange,\n });\n\n const controls = data.map((time) => {\n const isDisabled =\n disabled ||\n (!!minTime && isTimeBefore(time, minTime)) ||\n (!!maxTime && isTimeAfter(time, maxTime)) ||\n (Array.isArray(disableTime)\n ? !!disableTime.find((t) => isSameTime({ time, compare: t, withSeconds }))\n : !!disableTime?.(time));\n\n return (\n <TimeGridControl\n key={time}\n active={isSameTime({ time, compare: _value || '', withSeconds })}\n time={time}\n onClick={() => {\n const nextValue =\n allowDeselect &&\n (_value === null ? time === _value : isSameTime({ time, compare: _value, withSeconds }))\n ? null\n : time;\n nextValue !== _value && setValue(nextValue);\n }}\n format={format}\n amPmLabels={amPmLabels}\n disabled={isDisabled}\n data-disabled={isDisabled || undefined}\n withSeconds={withSeconds}\n {...getControlProps?.(time)}\n />\n );\n });\n\n return (\n <TimeGridProvider value={{ getStyles }}>\n <Box {...getStyles('root')} {...others}>\n <SimpleGrid\n {...simpleGridProps}\n {...getStyles('simpleGrid', {\n className: simpleGridProps?.className,\n style: simpleGridProps?.style,\n })}\n >\n {controls}\n </SimpleGrid>\n </Box>\n </TimeGridProvider>\n );\n});\n\nTimeGrid.displayName = '@mantine/dates/TimeGrid';\nTimeGrid.classes = classes;\nTimeGrid.varsResolver = varsResolver;\n"],"mappings":";;;;;;;;;;AA4FA,MAAM,eAAe;CACnB,iBAAiB;EAAE,MAAM;EAAG,SAAS;EAAM;CAC3C,QAAQ;CACR,YAAY;EAAE,IAAI;EAAM,IAAI;EAAM;CACnC;AAED,MAAM,eAAe,oBAAqC,QAAQ,EAAE,MAAM,cAAc,EACtF,MAAM;CACJ,kBAAkB,YAAY,KAAK;CACnC,sBAAsB,UAAU,OAAO;CACxC,EACF,EAAE;AAEH,MAAa,WAAW,SAA0B,WAAW;CAC3D,MAAM,QAAQ,SAAS,YAAY,cAAc,OAAO;CACxD,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,MACA,MACA,OACA,cACA,UACA,QACA,cAAc,OACd,YACA,eACA,iBACA,iBACA,SACA,SACA,aACA,UACA,YACA,GAAG,WACD;CAEJ,MAAM,YAAY,UAA2B;EAC3C,MAAM;EACN,SAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CAAC;CAEF,MAAM,CAAC,QAAQ,YAAY,gBAAgB;EACzC;EACA;EACA,YAAY;EACZ;EACD,CAAC;CAEF,MAAM,WAAW,KAAK,KAAK,SAAS;EAClC,MAAM,aACJ,YACC,CAAC,CAAC,WAAW,aAAa,MAAM,QAAQ,IACxC,CAAC,CAAC,WAAW,YAAY,MAAM,QAAQ,KACvC,MAAM,QAAQ,YAAY,GACvB,CAAC,CAAC,YAAY,MAAM,MAAM,WAAW;GAAE;GAAM,SAAS;GAAG;GAAa,CAAC,CAAC,GACxE,CAAC,CAAC,cAAc,KAAK;AAE3B,SACE,oBAAC,iBAAD;GAEE,QAAQ,WAAW;IAAE;IAAM,SAAS,UAAU;IAAI;IAAa,CAAC;GAC1D;GACN,eAAe;IACb,MAAM,YACJ,kBACC,WAAW,OAAO,SAAS,SAAS,WAAW;KAAE;KAAM,SAAS;KAAQ;KAAa,CAAC,IACnF,OACA;AACN,kBAAc,UAAU,SAAS,UAAU;;GAErC;GACI;GACZ,UAAU;GACV,iBAAe,cAAc,KAAA;GAChB;GACb,GAAI,kBAAkB,KAAK;GAC3B,EAjBK,KAiBL;GAEJ;AAEF,QACE,oBAAC,kBAAD;EAAkB,OAAO,EAAE,WAAW;YACpC,oBAAC,KAAD;GAAK,GAAI,UAAU,OAAO;GAAE,GAAI;aAC9B,oBAAC,YAAD;IACE,GAAI;IACJ,GAAI,UAAU,cAAc;KAC1B,WAAW,iBAAiB;KAC5B,OAAO,iBAAiB;KACzB,CAAC;cAED;IACU,CAAA;GACT,CAAA;EACW,CAAA;EAErB;AAEF,SAAS,cAAc;AACvB,SAAS,UAAUA;AACnB,SAAS,eAAe"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TimeGrid.module.mjs","names":[],"sources":["../../../src/components/TimeGrid/TimeGrid.module.css"],"sourcesContent":[".control {\n text-align: center;\n padding-inline: 1em;\n padding-block: 0.25em;\n border: 1px solid var(--mantine-color-default-border);\n background-color: var(--mantine-color-default);\n color: var(--mantine-color-default-color);\n border-radius: var(--time-grid-radius, var(--mantine-radius-default));\n font-size: var(--time-grid-fz, var(--mantine-font-size-sm));\n\n @mixin hover {\n &:where(:not([data-disabled])) {\n background-color: var(--mantine-color-default-hover);\n }\n }\n\n &:where([data-active]) {\n background-color: var(--mantine-primary-color-filled);\n color: var(--mantine-color-white);\n border-color: transparent;\n\n @mixin hover {\n &:where(:not([data-disabled])) {\n background-color: var(--mantine-primary-color-filled-hover);\n }\n }\n }\n\n &:where(:disabled, [data-disabled]) {\n opacity: 0.5;\n cursor: not-allowed;\n }\n}\n"],"mappings":""}
|
|
@@ -1,31 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
5
|
-
import
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
function TimeGridControl({
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
mod: [{ active }],
|
|
23
|
-
...ctx.getStyles("control", { className: cx(theme.activeClassName, className) }),
|
|
24
|
-
...others,
|
|
25
|
-
children: /* @__PURE__ */ jsx(TimeValue, { value: time, format, amPmLabels, withSeconds })
|
|
26
|
-
}
|
|
27
|
-
);
|
|
1
|
+
"use client";
|
|
2
|
+
import { TimeValue } from "../TimeValue/TimeValue.mjs";
|
|
3
|
+
import { useTimeGridContext } from "./TimeGrid.context.mjs";
|
|
4
|
+
import { jsx } from "react/jsx-runtime";
|
|
5
|
+
import cx from "clsx";
|
|
6
|
+
import { UnstyledButton, useMantineTheme } from "@mantine/core";
|
|
7
|
+
//#region packages/@mantine/dates/src/components/TimeGrid/TimeGridControl.tsx
|
|
8
|
+
function TimeGridControl({ time, active, className, amPmLabels, format, withSeconds, ...others }) {
|
|
9
|
+
const ctx = useTimeGridContext();
|
|
10
|
+
const theme = useMantineTheme();
|
|
11
|
+
return /* @__PURE__ */ jsx(UnstyledButton, {
|
|
12
|
+
mod: [{ active }],
|
|
13
|
+
...ctx.getStyles("control", { className: cx(theme.activeClassName, className) }),
|
|
14
|
+
...others,
|
|
15
|
+
children: /* @__PURE__ */ jsx(TimeValue, {
|
|
16
|
+
value: time,
|
|
17
|
+
format,
|
|
18
|
+
amPmLabels,
|
|
19
|
+
withSeconds
|
|
20
|
+
})
|
|
21
|
+
});
|
|
28
22
|
}
|
|
29
|
-
|
|
23
|
+
//#endregion
|
|
30
24
|
export { TimeGridControl };
|
|
31
|
-
|
|
25
|
+
|
|
26
|
+
//# sourceMappingURL=TimeGridControl.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TimeGridControl.mjs","sources":["../../../src/components/TimeGrid/TimeGridControl.tsx"],"sourcesContent":["import cx from 'clsx';\nimport { UnstyledButton, useMantineTheme } from '@mantine/core';\nimport type { TimePickerAmPmLabels, TimePickerFormat } from '../TimePicker';\nimport { TimeValue } from '../TimeValue';\nimport { useTimeGridContext } from './TimeGrid.context';\n\ninterface TimeGridControlProps extends React.ComponentProps<'button'> {\n time: string;\n active: boolean;\n format: TimePickerFormat;\n amPmLabels: TimePickerAmPmLabels;\n withSeconds: boolean | undefined;\n}\n\nexport function TimeGridControl({\n time,\n active,\n className,\n amPmLabels,\n format,\n withSeconds,\n ...others\n}: TimeGridControlProps) {\n const ctx = useTimeGridContext();\n const theme = useMantineTheme();\n\n return (\n <UnstyledButton\n mod={[{ active }]}\n {...ctx.getStyles('control', { className: cx(theme.activeClassName, className) })}\n {...others}\n >\n <TimeValue value={time} format={format} amPmLabels={amPmLabels} withSeconds={withSeconds} />\n </UnstyledButton>\n );\n}\n"],"
|
|
1
|
+
{"version":3,"file":"TimeGridControl.mjs","names":[],"sources":["../../../src/components/TimeGrid/TimeGridControl.tsx"],"sourcesContent":["import cx from 'clsx';\nimport { UnstyledButton, useMantineTheme } from '@mantine/core';\nimport type { TimePickerAmPmLabels, TimePickerFormat } from '../TimePicker';\nimport { TimeValue } from '../TimeValue';\nimport { useTimeGridContext } from './TimeGrid.context';\n\ninterface TimeGridControlProps extends React.ComponentProps<'button'> {\n time: string;\n active: boolean;\n format: TimePickerFormat;\n amPmLabels: TimePickerAmPmLabels;\n withSeconds: boolean | undefined;\n}\n\nexport function TimeGridControl({\n time,\n active,\n className,\n amPmLabels,\n format,\n withSeconds,\n ...others\n}: TimeGridControlProps) {\n const ctx = useTimeGridContext();\n const theme = useMantineTheme();\n\n return (\n <UnstyledButton\n mod={[{ active }]}\n {...ctx.getStyles('control', { className: cx(theme.activeClassName, className) })}\n {...others}\n >\n <TimeValue value={time} format={format} amPmLabels={amPmLabels} withSeconds={withSeconds} />\n </UnstyledButton>\n );\n}\n"],"mappings":";;;;;;;AAcA,SAAgB,gBAAgB,EAC9B,MACA,QACA,WACA,YACA,QACA,aACA,GAAG,UACoB;CACvB,MAAM,MAAM,oBAAoB;CAChC,MAAM,QAAQ,iBAAiB;AAE/B,QACE,oBAAC,gBAAD;EACE,KAAK,CAAC,EAAE,QAAQ,CAAC;EACjB,GAAI,IAAI,UAAU,WAAW,EAAE,WAAW,GAAG,MAAM,iBAAiB,UAAU,EAAE,CAAC;EACjF,GAAI;YAEJ,oBAAC,WAAD;GAAW,OAAO;GAAc;GAAoB;GAAyB;GAAe,CAAA;EAC7E,CAAA"}
|