@mui/x-date-pickers 6.2.1 → 6.3.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/AdapterDateFns/AdapterDateFns.d.ts +109 -0
- package/AdapterDateFns/AdapterDateFns.js +598 -0
- package/AdapterDateFns/index.d.ts +1 -13
- package/AdapterDateFns/index.js +1 -149
- package/AdapterDateFnsJalali/AdapterDateFnsJalali.d.ts +109 -0
- package/AdapterDateFnsJalali/AdapterDateFnsJalali.js +610 -0
- package/AdapterDateFnsJalali/index.d.ts +1 -13
- package/AdapterDateFnsJalali/index.js +1 -149
- package/AdapterDayjs/AdapterDayjs.d.ts +53 -53
- package/AdapterDayjs/AdapterDayjs.js +146 -111
- package/AdapterLuxon/AdapterLuxon.d.ts +108 -0
- package/AdapterLuxon/AdapterLuxon.js +513 -0
- package/AdapterLuxon/index.d.ts +1 -14
- package/AdapterLuxon/index.js +1 -111
- package/AdapterMoment/AdapterMoment.d.ts +110 -0
- package/AdapterMoment/AdapterMoment.js +416 -0
- package/AdapterMoment/index.d.ts +1 -21
- package/AdapterMoment/index.js +1 -99
- package/AdapterMomentHijri/AdapterMomentHijri.d.ts +67 -0
- package/AdapterMomentHijri/AdapterMomentHijri.js +269 -0
- package/AdapterMomentHijri/index.d.ts +1 -18
- package/AdapterMomentHijri/index.js +1 -74
- package/AdapterMomentJalaali/AdapterMomentJalaali.d.ts +74 -0
- package/AdapterMomentJalaali/AdapterMomentJalaali.js +276 -0
- package/AdapterMomentJalaali/index.d.ts +1 -22
- package/AdapterMomentJalaali/index.js +1 -87
- package/CHANGELOG.md +70 -1
- package/DateCalendar/DateCalendar.types.d.ts +1 -1
- package/DateCalendar/DayCalendar.d.ts +1 -1
- package/DateCalendar/DayCalendar.js +1 -1
- package/DateCalendar/PickersCalendarHeader.d.ts +1 -1
- package/DateCalendar/useCalendarState.js +1 -1
- package/DateCalendar/useIsDateDisabled.d.ts +2 -0
- package/DateCalendar/useIsDateDisabled.js +27 -0
- package/DateField/DateField.js +20 -3
- package/DateField/DateField.types.d.ts +2 -2
- package/DateField/useDateField.js +4 -2
- package/DatePicker/DatePickerToolbar.js +1 -1
- package/DateTimeField/DateTimeField.js +21 -3
- package/DateTimeField/DateTimeField.types.d.ts +3 -2
- package/DateTimeField/useDateTimeField.js +4 -2
- package/DateTimePicker/DateTimePicker.js +1 -0
- package/DateTimePicker/shared.d.ts +6 -5
- package/DesktopDatePicker/DesktopDatePicker.js +1 -1
- package/DesktopDateTimePicker/DesktopDateTimePicker.js +2 -1
- package/DesktopTimePicker/DesktopTimePicker.js +50 -8
- package/DesktopTimePicker/DesktopTimePicker.types.d.ts +12 -4
- package/DigitalClock/DigitalClock.d.ts +7 -0
- package/DigitalClock/DigitalClock.js +397 -0
- package/DigitalClock/DigitalClock.types.d.ts +47 -0
- package/DigitalClock/digitalClockClasses.d.ts +11 -0
- package/DigitalClock/digitalClockClasses.js +6 -0
- package/DigitalClock/index.d.ts +4 -0
- package/DigitalClock/index.js +2 -0
- package/DigitalClock/package.json +6 -0
- package/MobileDatePicker/MobileDatePicker.js +1 -1
- package/MobileDateTimePicker/MobileDateTimePicker.js +2 -1
- package/MobileTimePicker/MobileTimePicker.js +2 -1
- package/MobileTimePicker/MobileTimePicker.types.d.ts +8 -7
- package/MonthCalendar/MonthCalendar.types.d.ts +1 -1
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.d.ts +7 -0
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.js +479 -0
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.types.d.ts +57 -0
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.d.ts +22 -0
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +65 -0
- package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.d.ts +28 -0
- package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +151 -0
- package/MultiSectionDigitalClock/index.d.ts +7 -0
- package/MultiSectionDigitalClock/index.js +3 -0
- package/MultiSectionDigitalClock/multiSectionDigitalClockClasses.d.ts +7 -0
- package/MultiSectionDigitalClock/multiSectionDigitalClockClasses.js +6 -0
- package/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.d.ts +9 -0
- package/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +6 -0
- package/MultiSectionDigitalClock/package.json +6 -0
- package/PickersDay/PickersDay.js +4 -1
- package/PickersLayout/PickersLayout.d.ts +2 -2
- package/PickersLayout/PickersLayout.js +2 -2
- package/PickersLayout/PickersLayout.types.d.ts +7 -8
- package/PickersLayout/usePickerLayout.d.ts +2 -2
- package/README.md +0 -9
- package/StaticDateTimePicker/StaticDateTimePicker.js +2 -1
- package/StaticTimePicker/StaticTimePicker.js +2 -1
- package/StaticTimePicker/StaticTimePicker.types.d.ts +1 -1
- package/TimeClock/TimeClock.js +35 -12
- package/TimeClock/TimeClock.types.d.ts +4 -67
- package/TimeField/TimeField.js +21 -3
- package/TimeField/TimeField.types.d.ts +3 -2
- package/TimeField/useTimeField.js +4 -2
- package/TimePicker/TimePicker.js +25 -2
- package/TimePicker/TimePicker.types.d.ts +4 -3
- package/TimePicker/TimePickerToolbar.d.ts +2 -2
- package/TimePicker/TimePickerToolbar.js +2 -2
- package/TimePicker/shared.d.ts +9 -7
- package/YearCalendar/YearCalendar.types.d.ts +1 -1
- package/dateViewRenderers/dateViewRenderers.d.ts +2 -2
- package/index.d.ts +2 -0
- package/index.js +4 -1
- package/internals/components/PickersToolbar.d.ts +3 -3
- package/internals/constants/dimensions.d.ts +1 -0
- package/internals/constants/dimensions.js +2 -1
- package/internals/demo/DemoContainer.js +4 -1
- package/internals/hooks/date-helpers-hooks.d.ts +3 -2
- package/internals/hooks/date-helpers-hooks.js +3 -3
- package/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +2 -2
- package/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -1
- package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +7 -6
- package/internals/hooks/useField/useField.js +12 -11
- package/internals/hooks/useField/useField.types.d.ts +19 -4
- package/internals/hooks/useField/useField.utils.d.ts +8 -5
- package/internals/hooks/useField/useField.utils.js +60 -34
- package/internals/hooks/useField/useFieldCharacterEditing.js +18 -10
- package/internals/hooks/useField/useFieldState.js +4 -3
- package/internals/hooks/useIsLandscape.d.ts +2 -2
- package/internals/hooks/useMobilePicker/useMobilePicker.d.ts +2 -2
- package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +7 -6
- package/internals/hooks/usePicker/usePicker.d.ts +4 -3
- package/internals/hooks/usePicker/usePicker.types.d.ts +6 -5
- package/internals/hooks/usePicker/usePickerLayoutProps.d.ts +5 -6
- package/internals/hooks/usePicker/usePickerValue.d.ts +1 -1
- package/internals/hooks/usePicker/usePickerValue.js +1 -1
- package/internals/hooks/usePicker/usePickerValue.types.d.ts +1 -1
- package/internals/hooks/usePicker/usePickerViews.d.ts +11 -11
- package/internals/hooks/useStaticPicker/useStaticPicker.d.ts +2 -2
- package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +6 -5
- package/internals/hooks/{validation/useValidation.d.ts → useValidation.d.ts} +1 -1
- package/internals/hooks/{validation/useValidation.js → useValidation.js} +1 -1
- package/internals/hooks/useViews.d.ts +8 -6
- package/internals/hooks/useViews.js +29 -13
- package/internals/index.d.ts +7 -7
- package/internals/index.js +5 -5
- package/internals/models/common.d.ts +3 -0
- package/internals/models/index.d.ts +1 -0
- package/internals/models/index.js +2 -1
- package/internals/models/props/basePickerProps.d.ts +3 -3
- package/internals/models/props/clock.d.ts +88 -0
- package/internals/models/props/tabs.d.ts +2 -2
- package/internals/models/props/toolbar.d.ts +3 -3
- package/internals/{hooks/validation/models.d.ts → models/validation.d.ts} +2 -5
- package/internals/models/validation.js +1 -0
- package/internals/utils/time-utils.d.ts +7 -7
- package/internals/utils/time-utils.js +2 -1
- package/internals/{hooks/validation/useDateValidation.d.ts → utils/validation/validateDate.d.ts} +2 -3
- package/internals/{hooks/validation/useDateValidation.js → utils/validation/validateDate.js} +1 -27
- package/internals/{hooks/validation/useDateTimeValidation.d.ts → utils/validation/validateDateTime.d.ts} +3 -3
- package/{modern/internals/hooks/validation/useDateTimeValidation.js → internals/utils/validation/validateDateTime.js} +2 -2
- package/internals/{hooks/validation/useTimeValidation.d.ts → utils/validation/validateTime.d.ts} +2 -2
- package/{modern/internals/hooks/validation/useTimeValidation.js → internals/utils/validation/validateTime.js} +1 -1
- package/internals/utils/views.d.ts +3 -2
- package/legacy/AdapterDateFns/AdapterDateFns.js +606 -0
- package/legacy/AdapterDateFns/index.js +1 -165
- package/legacy/AdapterDateFnsJalali/AdapterDateFnsJalali.js +620 -0
- package/legacy/AdapterDateFnsJalali/index.js +1 -165
- package/legacy/AdapterDayjs/AdapterDayjs.js +146 -111
- package/legacy/AdapterLuxon/AdapterLuxon.js +524 -0
- package/legacy/AdapterLuxon/index.js +1 -127
- package/legacy/AdapterMoment/AdapterMoment.js +422 -0
- package/legacy/AdapterMoment/index.js +1 -115
- package/legacy/AdapterMomentHijri/AdapterMomentHijri.js +284 -0
- package/legacy/AdapterMomentHijri/index.js +1 -90
- package/legacy/AdapterMomentJalaali/AdapterMomentJalaali.js +291 -0
- package/legacy/AdapterMomentJalaali/index.js +1 -103
- package/legacy/DateCalendar/DayCalendar.js +1 -1
- package/legacy/DateCalendar/useCalendarState.js +1 -1
- package/legacy/DateCalendar/useIsDateDisabled.js +28 -0
- package/legacy/DateField/DateField.js +20 -3
- package/legacy/DateField/useDateField.js +4 -2
- package/legacy/DatePicker/DatePickerToolbar.js +1 -1
- package/legacy/DateTimeField/DateTimeField.js +21 -3
- package/legacy/DateTimeField/useDateTimeField.js +4 -2
- package/legacy/DateTimePicker/DateTimePicker.js +1 -0
- package/legacy/DesktopDatePicker/DesktopDatePicker.js +1 -1
- package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +2 -1
- package/legacy/DesktopTimePicker/DesktopTimePicker.js +51 -8
- package/legacy/DigitalClock/DigitalClock.js +419 -0
- package/legacy/DigitalClock/DigitalClock.types.js +1 -0
- package/legacy/DigitalClock/digitalClockClasses.js +6 -0
- package/legacy/DigitalClock/index.js +2 -0
- package/legacy/MobileDatePicker/MobileDatePicker.js +1 -1
- package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +2 -1
- package/legacy/MobileTimePicker/MobileTimePicker.js +2 -1
- package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.js +508 -0
- package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.types.js +1 -0
- package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +65 -0
- package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +157 -0
- package/legacy/MultiSectionDigitalClock/index.js +3 -0
- package/legacy/MultiSectionDigitalClock/multiSectionDigitalClockClasses.js +6 -0
- package/legacy/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +6 -0
- package/legacy/PickersDay/PickersDay.js +3 -1
- package/legacy/PickersLayout/PickersLayout.js +2 -2
- package/legacy/StaticDateTimePicker/StaticDateTimePicker.js +2 -1
- package/legacy/StaticTimePicker/StaticTimePicker.js +2 -1
- package/legacy/TimeClock/TimeClock.js +35 -12
- package/legacy/TimeField/TimeField.js +21 -3
- package/legacy/TimeField/useTimeField.js +4 -2
- package/legacy/TimePicker/TimePicker.js +25 -2
- package/legacy/TimePicker/TimePickerToolbar.js +2 -2
- package/legacy/index.js +4 -1
- package/legacy/internals/constants/dimensions.js +2 -1
- package/legacy/internals/demo/DemoContainer.js +4 -1
- package/legacy/internals/hooks/date-helpers-hooks.js +3 -3
- package/legacy/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -1
- package/legacy/internals/hooks/useField/useField.js +11 -10
- package/legacy/internals/hooks/useField/useField.utils.js +58 -34
- package/legacy/internals/hooks/useField/useFieldCharacterEditing.js +18 -10
- package/legacy/internals/hooks/useField/useFieldState.js +6 -4
- package/legacy/internals/hooks/usePicker/usePickerValue.js +1 -1
- package/legacy/internals/hooks/{validation/useValidation.js → useValidation.js} +1 -1
- package/legacy/internals/hooks/useViews.js +30 -14
- package/legacy/internals/index.js +5 -5
- package/legacy/internals/models/index.js +2 -1
- package/legacy/internals/models/props/clock.js +1 -0
- package/legacy/internals/models/validation.js +1 -0
- package/legacy/internals/utils/time-utils.js +2 -1
- package/legacy/internals/{hooks/validation/useDateValidation.js → utils/validation/validateDate.js} +1 -28
- package/legacy/internals/{hooks/validation/useDateTimeValidation.js → utils/validation/validateDateTime.js} +2 -2
- package/legacy/internals/{hooks/validation/useTimeValidation.js → utils/validation/validateTime.js} +1 -1
- package/legacy/locales/beBY.js +5 -3
- package/legacy/locales/caES.js +6 -1
- package/legacy/locales/csCZ.js +6 -4
- package/legacy/locales/daDK.js +6 -2
- package/legacy/locales/deDE.js +6 -2
- package/legacy/locales/enUS.js +4 -0
- package/legacy/locales/esES.js +6 -1
- package/legacy/locales/faIR.js +11 -1
- package/legacy/locales/fiFI.js +6 -1
- package/legacy/locales/frFR.js +6 -1
- package/legacy/locales/heIL.js +6 -1
- package/legacy/locales/huHU.js +6 -2
- package/legacy/locales/index.js +1 -0
- package/legacy/locales/isIS.js +11 -1
- package/legacy/locales/itIT.js +6 -1
- package/legacy/locales/jaJP.js +6 -2
- package/legacy/locales/koKR.js +6 -1
- package/legacy/locales/kzKZ.js +6 -2
- package/legacy/locales/nbNO.js +11 -1
- package/legacy/locales/nlNL.js +11 -1
- package/legacy/locales/plPL.js +11 -1
- package/legacy/locales/ptBR.js +11 -1
- package/legacy/locales/ruRU.js +6 -2
- package/legacy/locales/svSE.js +11 -1
- package/legacy/locales/trTR.js +22 -7
- package/legacy/locales/ukUA.js +11 -1
- package/legacy/locales/urPK.js +11 -1
- package/legacy/locales/zhCN.js +44 -23
- package/legacy/models/common.js +1 -0
- package/legacy/models/index.js +2 -1
- package/legacy/tests/describeAdapters/describeAdapters.js +1 -3
- package/legacy/tests/describeGregorianAdapter/describeGregorianAdapter.js +3 -1
- package/legacy/tests/describeGregorianAdapter/testCalculations.js +29 -26
- package/legacy/tests/describeGregorianAdapter/testLocalization.js +2 -2
- package/legacy/tests/describeHijriAdapter/describeHijriAdapter.js +23 -0
- package/legacy/tests/describeHijriAdapter/describeHijriAdapter.types.js +1 -0
- package/legacy/tests/describeHijriAdapter/index.js +1 -0
- package/legacy/tests/describeHijriAdapter/testCalculations.js +94 -0
- package/legacy/tests/describeHijriAdapter/testLocalization.js +12 -0
- package/legacy/tests/describeJalaliAdapter/describeJalaliAdapter.js +25 -0
- package/legacy/tests/describeJalaliAdapter/describeJalaliAdapter.types.js +1 -0
- package/legacy/tests/describeJalaliAdapter/index.js +1 -0
- package/legacy/tests/describeJalaliAdapter/testCalculations.js +82 -0
- package/legacy/tests/describeJalaliAdapter/testLocalization.js +12 -0
- package/legacy/tests/describePicker/describePicker.js +159 -0
- package/legacy/tests/describePicker/describePicker.types.js +1 -0
- package/legacy/tests/describePicker/index.js +1 -0
- package/legacy/tests/describeValue/describeValue.js +1 -1
- package/legacy/tests/describeValue/testControlledUnControlled.js +8 -9
- package/legacy/tests/describeValue/testPickerActionBar.js +46 -13
- package/legacy/tests/describeValue/testPickerOpenCloseLifeCycle.js +0 -5
- package/legacy/timeViewRenderers/index.js +1 -1
- package/legacy/timeViewRenderers/timeViewRenderers.js +132 -4
- package/locales/beBY.d.ts +4 -2
- package/locales/beBY.js +3 -3
- package/locales/caES.d.ts +4 -2
- package/locales/caES.js +4 -1
- package/locales/csCZ.d.ts +4 -2
- package/locales/csCZ.js +4 -4
- package/locales/daDK.d.ts +4 -2
- package/locales/daDK.js +4 -2
- package/locales/deDE.d.ts +4 -2
- package/locales/deDE.js +4 -2
- package/locales/enUS.d.ts +3 -2
- package/locales/enUS.js +2 -0
- package/locales/esES.d.ts +4 -2
- package/locales/esES.js +4 -1
- package/locales/faIR.d.ts +4 -2
- package/locales/faIR.js +9 -1
- package/locales/fiFI.d.ts +4 -2
- package/locales/fiFI.js +4 -1
- package/locales/frFR.d.ts +4 -2
- package/locales/frFR.js +4 -1
- package/locales/heIL.d.ts +4 -2
- package/locales/heIL.js +4 -1
- package/locales/huHU.d.ts +4 -2
- package/locales/huHU.js +4 -2
- package/locales/index.d.ts +1 -0
- package/locales/index.js +1 -0
- package/locales/isIS.d.ts +4 -2
- package/locales/isIS.js +9 -1
- package/locales/itIT.d.ts +4 -2
- package/locales/itIT.js +4 -1
- package/locales/jaJP.d.ts +4 -2
- package/locales/jaJP.js +4 -2
- package/locales/koKR.d.ts +4 -2
- package/locales/koKR.js +4 -1
- package/locales/kzKZ.d.ts +4 -2
- package/locales/kzKZ.js +4 -2
- package/locales/nbNO.d.ts +4 -2
- package/locales/nbNO.js +9 -1
- package/locales/nlNL.d.ts +8 -7
- package/locales/nlNL.js +9 -1
- package/locales/plPL.d.ts +4 -2
- package/locales/plPL.js +9 -1
- package/locales/ptBR.d.ts +4 -2
- package/locales/ptBR.js +9 -1
- package/locales/ruRU.d.ts +4 -2
- package/locales/ruRU.js +4 -2
- package/locales/svSE.d.ts +4 -2
- package/locales/svSE.js +9 -1
- package/locales/trTR.d.ts +4 -2
- package/locales/trTR.js +14 -7
- package/locales/ukUA.d.ts +4 -2
- package/locales/ukUA.js +9 -1
- package/locales/urPK.d.ts +4 -2
- package/locales/urPK.js +9 -1
- package/locales/utils/getPickersLocalization.d.ts +3 -2
- package/locales/utils/pickersLocaleTextApi.d.ts +5 -3
- package/locales/zhCN.d.ts +4 -2
- package/locales/zhCN.js +22 -23
- package/models/adapters.d.ts +7 -6
- package/models/common.d.ts +5 -0
- package/models/common.js +1 -0
- package/models/fields.d.ts +19 -2
- package/models/index.d.ts +1 -0
- package/models/index.js +2 -1
- package/modern/AdapterDateFns/AdapterDateFns.js +597 -0
- package/modern/AdapterDateFns/index.js +1 -149
- package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +608 -0
- package/modern/AdapterDateFnsJalali/index.js +1 -148
- package/modern/AdapterDayjs/AdapterDayjs.js +146 -111
- package/modern/AdapterLuxon/AdapterLuxon.js +512 -0
- package/modern/AdapterLuxon/index.js +1 -111
- package/modern/AdapterMoment/AdapterMoment.js +416 -0
- package/modern/AdapterMoment/index.js +1 -99
- package/modern/AdapterMomentHijri/AdapterMomentHijri.js +269 -0
- package/modern/AdapterMomentHijri/index.js +1 -74
- package/modern/AdapterMomentJalaali/AdapterMomentJalaali.js +276 -0
- package/modern/AdapterMomentJalaali/index.js +1 -87
- package/modern/DateCalendar/DayCalendar.js +1 -1
- package/modern/DateCalendar/useCalendarState.js +1 -1
- package/modern/DateCalendar/useIsDateDisabled.js +27 -0
- package/modern/DateField/DateField.js +20 -3
- package/modern/DateField/useDateField.js +4 -2
- package/modern/DatePicker/DatePickerToolbar.js +1 -1
- package/modern/DateTimeField/DateTimeField.js +21 -3
- package/modern/DateTimeField/useDateTimeField.js +4 -2
- package/modern/DateTimePicker/DateTimePicker.js +1 -0
- package/modern/DesktopDatePicker/DesktopDatePicker.js +1 -1
- package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +2 -1
- package/modern/DesktopTimePicker/DesktopTimePicker.js +49 -7
- package/modern/DigitalClock/DigitalClock.js +396 -0
- package/modern/DigitalClock/DigitalClock.types.js +1 -0
- package/modern/DigitalClock/digitalClockClasses.js +6 -0
- package/modern/DigitalClock/index.js +2 -0
- package/modern/MobileDatePicker/MobileDatePicker.js +1 -1
- package/modern/MobileDateTimePicker/MobileDateTimePicker.js +2 -1
- package/modern/MobileTimePicker/MobileTimePicker.js +2 -1
- package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.js +479 -0
- package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.types.js +1 -0
- package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +65 -0
- package/modern/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +149 -0
- package/modern/MultiSectionDigitalClock/index.js +3 -0
- package/modern/MultiSectionDigitalClock/multiSectionDigitalClockClasses.js +6 -0
- package/modern/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +6 -0
- package/modern/PickersDay/PickersDay.js +4 -1
- package/modern/PickersLayout/PickersLayout.js +2 -2
- package/modern/StaticDateTimePicker/StaticDateTimePicker.js +2 -1
- package/modern/StaticTimePicker/StaticTimePicker.js +2 -1
- package/modern/TimeClock/TimeClock.js +35 -12
- package/modern/TimeField/TimeField.js +21 -3
- package/modern/TimeField/useTimeField.js +4 -2
- package/modern/TimePicker/TimePicker.js +25 -2
- package/modern/TimePicker/TimePickerToolbar.js +2 -2
- package/modern/index.js +4 -1
- package/modern/internals/constants/dimensions.js +2 -1
- package/modern/internals/demo/DemoContainer.js +4 -1
- package/modern/internals/hooks/date-helpers-hooks.js +3 -3
- package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -1
- package/modern/internals/hooks/useField/useField.js +12 -11
- package/modern/internals/hooks/useField/useField.utils.js +60 -34
- package/modern/internals/hooks/useField/useFieldCharacterEditing.js +18 -10
- package/modern/internals/hooks/useField/useFieldState.js +4 -3
- package/modern/internals/hooks/usePicker/usePickerValue.js +1 -1
- package/modern/internals/hooks/{validation/useValidation.js → useValidation.js} +1 -1
- package/modern/internals/hooks/useViews.js +29 -13
- package/modern/internals/index.js +5 -5
- package/modern/internals/models/index.js +2 -1
- package/modern/internals/models/props/clock.js +1 -0
- package/modern/internals/models/validation.js +1 -0
- package/modern/internals/utils/time-utils.js +2 -1
- package/modern/internals/{hooks/validation/useDateValidation.js → utils/validation/validateDate.js} +1 -27
- package/{internals/hooks/validation/useDateTimeValidation.js → modern/internals/utils/validation/validateDateTime.js} +2 -2
- package/{internals/hooks/validation/useTimeValidation.js → modern/internals/utils/validation/validateTime.js} +1 -1
- package/modern/locales/beBY.js +3 -3
- package/modern/locales/caES.js +4 -1
- package/modern/locales/csCZ.js +4 -4
- package/modern/locales/daDK.js +4 -2
- package/modern/locales/deDE.js +4 -2
- package/modern/locales/enUS.js +2 -0
- package/modern/locales/esES.js +4 -1
- package/modern/locales/faIR.js +9 -1
- package/modern/locales/fiFI.js +4 -1
- package/modern/locales/frFR.js +4 -1
- package/modern/locales/heIL.js +4 -1
- package/modern/locales/huHU.js +4 -2
- package/modern/locales/index.js +1 -0
- package/modern/locales/isIS.js +9 -1
- package/modern/locales/itIT.js +4 -1
- package/modern/locales/jaJP.js +4 -2
- package/modern/locales/koKR.js +4 -1
- package/modern/locales/kzKZ.js +4 -2
- package/modern/locales/nbNO.js +9 -1
- package/modern/locales/nlNL.js +9 -1
- package/modern/locales/plPL.js +9 -1
- package/modern/locales/ptBR.js +9 -1
- package/modern/locales/ruRU.js +4 -2
- package/modern/locales/svSE.js +9 -1
- package/modern/locales/trTR.js +14 -7
- package/modern/locales/ukUA.js +9 -1
- package/modern/locales/urPK.js +9 -1
- package/modern/locales/zhCN.js +22 -23
- package/modern/models/common.js +1 -0
- package/modern/models/index.js +2 -1
- package/modern/tests/describeAdapters/describeAdapters.js +1 -3
- package/modern/tests/describeGregorianAdapter/describeGregorianAdapter.js +3 -1
- package/modern/tests/describeGregorianAdapter/testCalculations.js +29 -26
- package/modern/tests/describeGregorianAdapter/testLocalization.js +2 -2
- package/modern/tests/describeHijriAdapter/describeHijriAdapter.js +23 -0
- package/modern/tests/describeHijriAdapter/describeHijriAdapter.types.js +1 -0
- package/modern/tests/describeHijriAdapter/index.js +1 -0
- package/modern/tests/describeHijriAdapter/testCalculations.js +91 -0
- package/modern/tests/describeHijriAdapter/testLocalization.js +13 -0
- package/modern/tests/describeJalaliAdapter/describeJalaliAdapter.js +25 -0
- package/modern/tests/describeJalaliAdapter/describeJalaliAdapter.types.js +1 -0
- package/modern/tests/describeJalaliAdapter/index.js +1 -0
- package/modern/tests/describeJalaliAdapter/testCalculations.js +83 -0
- package/modern/tests/describeJalaliAdapter/testLocalization.js +13 -0
- package/modern/tests/describePicker/describePicker.js +162 -0
- package/modern/tests/describePicker/describePicker.types.js +1 -0
- package/modern/tests/describePicker/index.js +1 -0
- package/modern/tests/describeValue/describeValue.js +1 -1
- package/modern/tests/describeValue/testControlledUnControlled.js +8 -9
- package/modern/tests/describeValue/testPickerActionBar.js +46 -13
- package/modern/tests/describeValue/testPickerOpenCloseLifeCycle.js +0 -5
- package/modern/timeViewRenderers/index.js +1 -1
- package/modern/timeViewRenderers/timeViewRenderers.js +130 -2
- package/node/AdapterDateFns/AdapterDateFns.js +607 -0
- package/node/AdapterDateFns/index.js +6 -152
- package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +618 -0
- package/node/AdapterDateFnsJalali/index.js +6 -151
- package/node/AdapterDayjs/AdapterDayjs.js +146 -111
- package/node/AdapterLuxon/AdapterLuxon.js +521 -0
- package/node/AdapterLuxon/index.js +6 -114
- package/node/AdapterMoment/AdapterMoment.js +425 -0
- package/node/AdapterMoment/index.js +6 -102
- package/node/AdapterMomentHijri/AdapterMomentHijri.js +278 -0
- package/node/AdapterMomentHijri/index.js +6 -77
- package/node/AdapterMomentJalaali/AdapterMomentJalaali.js +285 -0
- package/node/AdapterMomentJalaali/index.js +6 -90
- package/node/DateCalendar/DayCalendar.js +2 -2
- package/node/DateCalendar/useCalendarState.js +2 -2
- package/node/{internals/hooks/validation/useDateValidation.js → DateCalendar/useIsDateDisabled.js} +4 -37
- package/node/DateField/DateField.js +20 -3
- package/node/DateField/useDateField.js +5 -3
- package/node/DatePicker/DatePickerToolbar.js +1 -1
- package/node/DateTimeField/DateTimeField.js +21 -3
- package/node/DateTimeField/useDateTimeField.js +5 -3
- package/node/DateTimePicker/DateTimePicker.js +1 -0
- package/node/DesktopDatePicker/DesktopDatePicker.js +2 -2
- package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +3 -2
- package/node/DesktopTimePicker/DesktopTimePicker.js +50 -8
- package/node/DigitalClock/DigitalClock.js +406 -0
- package/node/DigitalClock/digitalClockClasses.js +15 -0
- package/node/DigitalClock/index.js +25 -0
- package/node/MobileDatePicker/MobileDatePicker.js +2 -2
- package/node/MobileDateTimePicker/MobileDateTimePicker.js +3 -2
- package/node/MobileTimePicker/MobileTimePicker.js +3 -2
- package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +489 -0
- package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.types.js +5 -0
- package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +73 -0
- package/node/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +159 -0
- package/node/MultiSectionDigitalClock/index.js +32 -0
- package/node/MultiSectionDigitalClock/multiSectionDigitalClockClasses.js +15 -0
- package/node/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +15 -0
- package/node/PickersDay/PickersDay.js +4 -1
- package/node/PickersLayout/PickersLayout.js +2 -2
- package/node/StaticDateTimePicker/StaticDateTimePicker.js +3 -2
- package/node/StaticTimePicker/StaticTimePicker.js +3 -2
- package/node/TimeClock/TimeClock.js +35 -12
- package/node/TimeField/TimeField.js +21 -3
- package/node/TimeField/useTimeField.js +5 -3
- package/node/TimePicker/TimePicker.js +25 -2
- package/node/TimePicker/TimePickerToolbar.js +2 -2
- package/node/index.js +25 -1
- package/node/internals/constants/dimensions.js +4 -2
- package/node/internals/demo/DemoContainer.js +4 -1
- package/node/internals/hooks/date-helpers-hooks.js +3 -3
- package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -1
- package/node/internals/hooks/useField/useField.js +12 -11
- package/node/internals/hooks/useField/useField.utils.js +63 -36
- package/node/internals/hooks/useField/useFieldCharacterEditing.js +17 -9
- package/node/internals/hooks/useField/useFieldState.js +4 -3
- package/node/internals/hooks/usePicker/usePickerValue.js +1 -1
- package/node/internals/hooks/{validation/useValidation.js → useValidation.js} +1 -1
- package/node/internals/hooks/useViews.js +29 -13
- package/node/internals/index.js +9 -9
- package/node/internals/models/index.js +11 -0
- package/node/internals/models/props/clock.js +5 -0
- package/node/internals/models/validation.js +5 -0
- package/node/internals/utils/time-utils.js +2 -1
- package/node/internals/utils/validation/validateDate.js +40 -0
- package/node/internals/{hooks/validation/useDateTimeValidation.js → utils/validation/validateDateTime.js} +4 -4
- package/node/internals/{hooks/validation/useTimeValidation.js → utils/validation/validateTime.js} +1 -1
- package/node/locales/beBY.js +3 -3
- package/node/locales/caES.js +4 -1
- package/node/locales/csCZ.js +4 -2
- package/node/locales/daDK.js +4 -1
- package/node/locales/deDE.js +4 -1
- package/node/locales/enUS.js +2 -0
- package/node/locales/esES.js +4 -1
- package/node/locales/faIR.js +9 -1
- package/node/locales/fiFI.js +4 -1
- package/node/locales/frFR.js +4 -1
- package/node/locales/heIL.js +4 -1
- package/node/locales/huHU.js +4 -1
- package/node/locales/index.js +11 -0
- package/node/locales/isIS.js +9 -1
- package/node/locales/itIT.js +4 -1
- package/node/locales/jaJP.js +4 -1
- package/node/locales/koKR.js +4 -1
- package/node/locales/kzKZ.js +4 -1
- package/node/locales/nbNO.js +9 -1
- package/node/locales/nlNL.js +9 -1
- package/node/locales/plPL.js +9 -1
- package/node/locales/ptBR.js +9 -1
- package/node/locales/ruRU.js +4 -1
- package/node/locales/svSE.js +9 -1
- package/node/locales/trTR.js +14 -7
- package/node/locales/ukUA.js +9 -1
- package/node/locales/urPK.js +9 -1
- package/node/locales/zhCN.js +22 -23
- package/node/models/common.js +5 -0
- package/node/models/index.js +11 -0
- package/node/tests/describeAdapters/describeAdapters.js +1 -3
- package/node/tests/describeGregorianAdapter/describeGregorianAdapter.js +3 -1
- package/node/tests/describeGregorianAdapter/testCalculations.js +29 -26
- package/node/tests/describeGregorianAdapter/testLocalization.js +2 -2
- package/node/tests/describeHijriAdapter/describeHijriAdapter.js +31 -0
- package/node/tests/describeHijriAdapter/describeHijriAdapter.types.js +5 -0
- package/node/tests/describeHijriAdapter/index.js +12 -0
- package/node/tests/describeHijriAdapter/testCalculations.js +98 -0
- package/node/tests/describeHijriAdapter/testLocalization.js +20 -0
- package/node/tests/describeJalaliAdapter/describeJalaliAdapter.js +33 -0
- package/node/tests/describeJalaliAdapter/describeJalaliAdapter.types.js +5 -0
- package/node/tests/describeJalaliAdapter/index.js +12 -0
- package/node/tests/describeJalaliAdapter/testCalculations.js +90 -0
- package/node/tests/describeJalaliAdapter/testLocalization.js +20 -0
- package/node/tests/describePicker/describePicker.js +173 -0
- package/node/tests/describePicker/describePicker.types.js +5 -0
- package/node/tests/describePicker/index.js +12 -0
- package/node/tests/describeValue/describeValue.js +1 -1
- package/node/tests/describeValue/testControlledUnControlled.js +8 -9
- package/node/tests/describeValue/testPickerActionBar.js +46 -13
- package/node/tests/describeValue/testPickerOpenCloseLifeCycle.js +0 -5
- package/node/timeViewRenderers/index.js +12 -0
- package/node/timeViewRenderers/timeViewRenderers.js +134 -4
- package/package.json +3 -10
- package/tests/describeAdapters/describeAdapters.js +1 -3
- package/tests/describeGregorianAdapter/describeGregorianAdapter.js +3 -1
- package/tests/describeGregorianAdapter/testCalculations.js +29 -26
- package/tests/describeGregorianAdapter/testLocalization.js +2 -2
- package/tests/describeHijriAdapter/describeHijriAdapter.js +23 -0
- package/tests/describeHijriAdapter/describeHijriAdapter.types.js +1 -0
- package/tests/describeHijriAdapter/index.js +1 -0
- package/tests/describeHijriAdapter/testCalculations.js +91 -0
- package/tests/describeHijriAdapter/testLocalization.js +13 -0
- package/tests/describeJalaliAdapter/describeJalaliAdapter.js +25 -0
- package/tests/describeJalaliAdapter/describeJalaliAdapter.types.js +1 -0
- package/tests/describeJalaliAdapter/index.js +1 -0
- package/tests/describeJalaliAdapter/testCalculations.js +83 -0
- package/tests/describeJalaliAdapter/testLocalization.js +13 -0
- package/tests/describePicker/describePicker.js +162 -0
- package/tests/describePicker/describePicker.types.js +1 -0
- package/tests/describePicker/index.js +1 -0
- package/tests/describeValue/describeValue.js +1 -1
- package/tests/describeValue/testControlledUnControlled.js +8 -9
- package/tests/describeValue/testPickerActionBar.js +46 -13
- package/tests/describeValue/testPickerOpenCloseLifeCycle.js +0 -5
- package/themeAugmentation/components.d.ts +12 -0
- package/themeAugmentation/overrides.d.ts +8 -0
- package/themeAugmentation/props.d.ts +8 -0
- package/timeViewRenderers/index.d.ts +1 -1
- package/timeViewRenderers/index.js +1 -1
- package/timeViewRenderers/timeViewRenderers.d.ts +11 -4
- package/timeViewRenderers/timeViewRenderers.js +130 -2
- /package/{internals/hooks/validation/models.js → DigitalClock/DigitalClock.types.js} +0 -0
- /package/{legacy/internals/hooks/validation/models.js → MultiSectionDigitalClock/MultiSectionDigitalClock.types.js} +0 -0
- /package/{modern/internals/hooks/validation/models.js → internals/models/props/clock.js} +0 -0
- /package/internals/utils/{validation.d.ts → validation/extractValidationProps.d.ts} +0 -0
- /package/internals/utils/{validation.js → validation/extractValidationProps.js} +0 -0
- /package/legacy/internals/utils/{validation.js → validation/extractValidationProps.js} +0 -0
- /package/modern/internals/utils/{validation.js → validation/extractValidationProps.js} +0 -0
- /package/node/{internals/hooks/validation/models.js → DigitalClock/DigitalClock.types.js} +0 -0
- /package/node/internals/utils/{validation.js → validation/extractValidationProps.js} +0 -0
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
|
+
var _excluded = ["autoFocus", "onChange", "className", "disabled", "readOnly", "items", "active", "slots", "slotProps", "skipDisabled"];
|
|
4
|
+
import * as React from 'react';
|
|
5
|
+
import clsx from 'clsx';
|
|
6
|
+
import { alpha, styled, useThemeProps } from '@mui/material/styles';
|
|
7
|
+
import composeClasses from '@mui/utils/composeClasses';
|
|
8
|
+
import MenuList from '@mui/material/MenuList';
|
|
9
|
+
import MenuItem from '@mui/material/MenuItem';
|
|
10
|
+
import useForkRef from '@mui/utils/useForkRef';
|
|
11
|
+
import { getMultiSectionDigitalClockSectionUtilityClass } from './multiSectionDigitalClockSectionClasses';
|
|
12
|
+
import { DIGITAL_CLOCK_VIEW_HEIGHT } from '../internals/constants/dimensions';
|
|
13
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
14
|
+
var useUtilityClasses = function useUtilityClasses(ownerState) {
|
|
15
|
+
var classes = ownerState.classes;
|
|
16
|
+
var slots = {
|
|
17
|
+
root: ['root'],
|
|
18
|
+
item: ['item']
|
|
19
|
+
};
|
|
20
|
+
return composeClasses(slots, getMultiSectionDigitalClockSectionUtilityClass, classes);
|
|
21
|
+
};
|
|
22
|
+
var MultiSectionDigitalClockSectionRoot = styled(MenuList, {
|
|
23
|
+
name: 'MuiMultiSectionDigitalClockSection',
|
|
24
|
+
slot: 'Root',
|
|
25
|
+
overridesResolver: function overridesResolver(_, styles) {
|
|
26
|
+
return styles.root;
|
|
27
|
+
}
|
|
28
|
+
})(function (_ref) {
|
|
29
|
+
var theme = _ref.theme,
|
|
30
|
+
ownerState = _ref.ownerState;
|
|
31
|
+
return {
|
|
32
|
+
maxHeight: DIGITAL_CLOCK_VIEW_HEIGHT,
|
|
33
|
+
width: 56,
|
|
34
|
+
padding: 0,
|
|
35
|
+
overflow: 'hidden',
|
|
36
|
+
scrollBehavior: ownerState.alreadyRendered ? 'smooth' : 'auto',
|
|
37
|
+
'&:hover': {
|
|
38
|
+
overflowY: 'auto'
|
|
39
|
+
},
|
|
40
|
+
'&:not(:first-of-type)': {
|
|
41
|
+
borderLeft: "1px solid ".concat((theme.vars || theme).palette.divider)
|
|
42
|
+
},
|
|
43
|
+
'&:after': {
|
|
44
|
+
display: 'block',
|
|
45
|
+
content: '""',
|
|
46
|
+
height: 188
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
});
|
|
50
|
+
var MultiSectionDigitalClockSectionItem = styled(MenuItem, {
|
|
51
|
+
name: 'MuiMultiSectionDigitalClockSection',
|
|
52
|
+
slot: 'Item',
|
|
53
|
+
overridesResolver: function overridesResolver(_, styles) {
|
|
54
|
+
return styles.item;
|
|
55
|
+
}
|
|
56
|
+
})(function (_ref2) {
|
|
57
|
+
var theme = _ref2.theme;
|
|
58
|
+
return {
|
|
59
|
+
padding: 8,
|
|
60
|
+
margin: '2px 4px',
|
|
61
|
+
width: 48,
|
|
62
|
+
justifyContent: 'center',
|
|
63
|
+
'&:first-of-type': {
|
|
64
|
+
marginTop: 4
|
|
65
|
+
},
|
|
66
|
+
'&:hover': {
|
|
67
|
+
backgroundColor: theme.vars ? "rgba(".concat(theme.vars.palette.primary.mainChannel, " / ").concat(theme.vars.palette.action.hoverOpacity, ")") : alpha(theme.palette.primary.main, theme.palette.action.hoverOpacity)
|
|
68
|
+
},
|
|
69
|
+
'&.Mui-selected': {
|
|
70
|
+
backgroundColor: (theme.vars || theme).palette.primary.main,
|
|
71
|
+
color: (theme.vars || theme).palette.primary.contrastText,
|
|
72
|
+
'&:focus-visible, &:hover': {
|
|
73
|
+
backgroundColor: (theme.vars || theme).palette.primary.dark
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
'&.Mui-focusVisible': {
|
|
77
|
+
backgroundColor: theme.vars ? "rgba(".concat(theme.vars.palette.primary.mainChannel, " / ").concat(theme.vars.palette.action.focusOpacity, ")") : alpha(theme.palette.primary.main, theme.palette.action.focusOpacity)
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
});
|
|
81
|
+
/**
|
|
82
|
+
* @ignore - internal component.
|
|
83
|
+
*/
|
|
84
|
+
export var MultiSectionDigitalClockSection = /*#__PURE__*/React.forwardRef(function MultiSectionDigitalClockSection(inProps, ref) {
|
|
85
|
+
var _slots$digitalClockSe;
|
|
86
|
+
var containerRef = React.useRef(null);
|
|
87
|
+
var handleRef = useForkRef(ref, containerRef);
|
|
88
|
+
var props = useThemeProps({
|
|
89
|
+
props: inProps,
|
|
90
|
+
name: 'MuiMultiSectionDigitalClockSection'
|
|
91
|
+
});
|
|
92
|
+
var autoFocus = props.autoFocus,
|
|
93
|
+
onChange = props.onChange,
|
|
94
|
+
className = props.className,
|
|
95
|
+
disabled = props.disabled,
|
|
96
|
+
readOnly = props.readOnly,
|
|
97
|
+
items = props.items,
|
|
98
|
+
active = props.active,
|
|
99
|
+
slots = props.slots,
|
|
100
|
+
slotProps = props.slotProps,
|
|
101
|
+
skipDisabled = props.skipDisabled,
|
|
102
|
+
other = _objectWithoutProperties(props, _excluded);
|
|
103
|
+
var ownerState = React.useMemo(function () {
|
|
104
|
+
return _extends({}, props, {
|
|
105
|
+
alreadyRendered: !!containerRef.current
|
|
106
|
+
});
|
|
107
|
+
}, [props]);
|
|
108
|
+
var classes = useUtilityClasses(ownerState);
|
|
109
|
+
var DigitalClockSectionItem = (_slots$digitalClockSe = slots == null ? void 0 : slots.digitalClockSectionItem) != null ? _slots$digitalClockSe : MultiSectionDigitalClockSectionItem;
|
|
110
|
+
React.useEffect(function () {
|
|
111
|
+
if (containerRef.current === null) {
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
var selectedItem = containerRef.current.querySelector('[role="option"][aria-selected="true"]');
|
|
115
|
+
if (!selectedItem) {
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
if (active && autoFocus) {
|
|
119
|
+
selectedItem.focus();
|
|
120
|
+
}
|
|
121
|
+
var offsetTop = selectedItem.offsetTop;
|
|
122
|
+
|
|
123
|
+
// Subtracting the 4px of extra margin intended for the first visible section item
|
|
124
|
+
containerRef.current.scrollTop = offsetTop - 4;
|
|
125
|
+
});
|
|
126
|
+
return /*#__PURE__*/_jsx(MultiSectionDigitalClockSectionRoot, _extends({
|
|
127
|
+
ref: handleRef,
|
|
128
|
+
className: clsx(classes.root, className),
|
|
129
|
+
ownerState: ownerState,
|
|
130
|
+
autoFocusItem: autoFocus && active,
|
|
131
|
+
role: "listbox"
|
|
132
|
+
}, other, {
|
|
133
|
+
children: items.map(function (option) {
|
|
134
|
+
var _option$isDisabled, _option$isDisabled2;
|
|
135
|
+
if (skipDisabled && (_option$isDisabled = option.isDisabled) != null && _option$isDisabled.call(option, option.value)) {
|
|
136
|
+
return null;
|
|
137
|
+
}
|
|
138
|
+
var isSelected = option.isSelected(option.value);
|
|
139
|
+
return /*#__PURE__*/_jsx(DigitalClockSectionItem, _extends({
|
|
140
|
+
onClick: function onClick() {
|
|
141
|
+
return !readOnly && onChange(option.value);
|
|
142
|
+
},
|
|
143
|
+
selected: isSelected,
|
|
144
|
+
disabled: disabled != null ? disabled : (_option$isDisabled2 = option.isDisabled) == null ? void 0 : _option$isDisabled2.call(option, option.value),
|
|
145
|
+
disableRipple: readOnly,
|
|
146
|
+
role: "option"
|
|
147
|
+
// aria-readonly is not supported here and does not have any effect
|
|
148
|
+
,
|
|
149
|
+
"aria-disabled": readOnly,
|
|
150
|
+
"aria-label": option.ariaLabel,
|
|
151
|
+
"aria-selected": isSelected
|
|
152
|
+
}, slotProps == null ? void 0 : slotProps.digitalClockSectionItem, {
|
|
153
|
+
children: option.label
|
|
154
|
+
}), option.label);
|
|
155
|
+
})
|
|
156
|
+
}));
|
|
157
|
+
});
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { MultiSectionDigitalClock } from './MultiSectionDigitalClock';
|
|
2
|
+
export { multiSectionDigitalClockSectionClasses } from './multiSectionDigitalClockSectionClasses';
|
|
3
|
+
export { multiSectionDigitalClockClasses, getMultiSectionDigitalClockUtilityClass } from './multiSectionDigitalClockClasses';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import generateUtilityClass from '@mui/utils/generateUtilityClass';
|
|
2
|
+
import generateUtilityClasses from '@mui/utils/generateUtilityClasses';
|
|
3
|
+
export function getMultiSectionDigitalClockUtilityClass(slot) {
|
|
4
|
+
return generateUtilityClass('MuiMultiSectionDigitalClock', slot);
|
|
5
|
+
}
|
|
6
|
+
export var multiSectionDigitalClockClasses = generateUtilityClasses('MuiMultiSectionDigitalClock', ['root']);
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import generateUtilityClass from '@mui/utils/generateUtilityClass';
|
|
2
|
+
import generateUtilityClasses from '@mui/utils/generateUtilityClasses';
|
|
3
|
+
export function getMultiSectionDigitalClockSectionUtilityClass(slot) {
|
|
4
|
+
return generateUtilityClass('MuiMultiSectionDigitalClock', slot);
|
|
5
|
+
}
|
|
6
|
+
export var multiSectionDigitalClockSectionClasses = generateUtilityClasses('MuiMultiSectionDigitalClock', ['root', 'item']);
|
|
@@ -61,8 +61,10 @@ var styleArg = function styleArg(_ref) {
|
|
|
61
61
|
willChange: 'background-color',
|
|
62
62
|
backgroundColor: (theme.vars || theme).palette.primary.dark
|
|
63
63
|
}
|
|
64
|
-
}), _defineProperty(_extends2, "&.".concat(pickersDayClasses.disabled), {
|
|
64
|
+
}), _defineProperty(_extends2, "&.".concat(pickersDayClasses.disabled, ":not(.").concat(pickersDayClasses.selected, ")"), {
|
|
65
65
|
color: (theme.vars || theme).palette.text.disabled
|
|
66
|
+
}), _defineProperty(_extends2, "&.".concat(pickersDayClasses.disabled, "&.").concat(pickersDayClasses.selected), {
|
|
67
|
+
opacity: 0.6
|
|
66
68
|
}), _extends2), !ownerState.disableMargin && {
|
|
67
69
|
margin: "0 ".concat(DAY_MARGIN, "px")
|
|
68
70
|
}, ownerState.outsideCurrentMonth && ownerState.showDaysOutsideCurrentMonth && {
|
|
@@ -154,8 +154,8 @@ process.env.NODE_ENV !== "production" ? PickersLayout.propTypes = {
|
|
|
154
154
|
slots: PropTypes.object,
|
|
155
155
|
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
|
|
156
156
|
value: PropTypes.any,
|
|
157
|
-
view: PropTypes.oneOf(['day', 'hours', 'minutes', 'month', 'seconds', 'year']),
|
|
158
|
-
views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'hours', 'minutes', 'month', 'seconds', 'year']).isRequired).isRequired,
|
|
157
|
+
view: PropTypes.oneOf(['day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']),
|
|
158
|
+
views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']).isRequired).isRequired,
|
|
159
159
|
wrapperVariant: PropTypes.oneOf(['desktop', 'mobile'])
|
|
160
160
|
} : void 0;
|
|
161
161
|
export { PickersLayout };
|
|
@@ -6,7 +6,7 @@ import { renderTimeViewClock } from '../timeViewRenderers';
|
|
|
6
6
|
import { renderDateViewCalendar } from '../dateViewRenderers';
|
|
7
7
|
import { singleItemValueManager } from '../internals/utils/valueManagers';
|
|
8
8
|
import { useStaticPicker } from '../internals/hooks/useStaticPicker';
|
|
9
|
-
import { validateDateTime } from '../internals/
|
|
9
|
+
import { validateDateTime } from '../internals/utils/validation/validateDateTime';
|
|
10
10
|
var StaticDateTimePicker = /*#__PURE__*/React.forwardRef(function StaticDateTimePicker(inProps, ref) {
|
|
11
11
|
var _defaultizedProps$dis, _defaultizedProps$amp, _defaultizedProps$yea, _defaultizedProps$slo, _defaultizedProps$slo2;
|
|
12
12
|
var defaultizedProps = useDateTimePickerDefaultizedProps(inProps, 'MuiStaticDateTimePicker');
|
|
@@ -282,6 +282,7 @@ StaticDateTimePicker.propTypes = {
|
|
|
282
282
|
shouldDisableMonth: PropTypes.func,
|
|
283
283
|
/**
|
|
284
284
|
* Disable specific time.
|
|
285
|
+
* @template TDate
|
|
285
286
|
* @param {TDate} value The value to check.
|
|
286
287
|
* @param {TimeView} view The clock type of the timeValue.
|
|
287
288
|
* @returns {boolean} If `true` the time will be disabled.
|
|
@@ -5,7 +5,7 @@ import { useTimePickerDefaultizedProps } from '../TimePicker/shared';
|
|
|
5
5
|
import { renderTimeViewClock } from '../timeViewRenderers';
|
|
6
6
|
import { singleItemValueManager } from '../internals/utils/valueManagers';
|
|
7
7
|
import { useStaticPicker } from '../internals/hooks/useStaticPicker';
|
|
8
|
-
import { validateTime } from '../internals/
|
|
8
|
+
import { validateTime } from '../internals/utils/validation/validateTime';
|
|
9
9
|
var StaticTimePicker = /*#__PURE__*/React.forwardRef(function StaticTimePicker(inProps, ref) {
|
|
10
10
|
var _defaultizedProps$dis, _defaultizedProps$amp, _defaultizedProps$slo;
|
|
11
11
|
var defaultizedProps = useTimePickerDefaultizedProps(inProps, 'MuiStaticTimePicker');
|
|
@@ -184,6 +184,7 @@ StaticTimePicker.propTypes = {
|
|
|
184
184
|
shouldDisableClock: PropTypes.func,
|
|
185
185
|
/**
|
|
186
186
|
* Disable specific time.
|
|
187
|
+
* @template TDate
|
|
187
188
|
* @param {TDate} value The value to check.
|
|
188
189
|
* @param {TimeView} view The clock type of the timeValue.
|
|
189
190
|
* @returns {boolean} If `true` the time will be disabled.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
3
3
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
4
|
-
var _excluded = ["ampm", "ampmInClock", "autoFocus", "components", "componentsProps", "slots", "slotProps", "value", "disableIgnoringDatePartForTimeValidation", "maxTime", "minTime", "disableFuture", "disablePast", "minutesStep", "shouldDisableClock", "shouldDisableTime", "showViewSwitcher", "onChange", "defaultValue", "view", "views", "openTo", "onViewChange", "className", "disabled", "readOnly"];
|
|
4
|
+
var _excluded = ["ampm", "ampmInClock", "autoFocus", "components", "componentsProps", "slots", "slotProps", "value", "disableIgnoringDatePartForTimeValidation", "maxTime", "minTime", "disableFuture", "disablePast", "minutesStep", "shouldDisableClock", "shouldDisableTime", "showViewSwitcher", "onChange", "defaultValue", "view", "views", "openTo", "onViewChange", "focusedView", "onFocusedViewChange", "className", "disabled", "readOnly"];
|
|
5
5
|
import * as React from 'react';
|
|
6
6
|
import clsx from 'clsx';
|
|
7
7
|
import PropTypes from 'prop-types';
|
|
@@ -92,6 +92,8 @@ export var TimeClock = /*#__PURE__*/React.forwardRef(function TimeClock(inProps,
|
|
|
92
92
|
views = _props$views === void 0 ? ['hours', 'minutes'] : _props$views,
|
|
93
93
|
openTo = props.openTo,
|
|
94
94
|
onViewChange = props.onViewChange,
|
|
95
|
+
focusedView = props.focusedView,
|
|
96
|
+
onFocusedViewChange = props.onFocusedViewChange,
|
|
95
97
|
className = props.className,
|
|
96
98
|
disabled = props.disabled,
|
|
97
99
|
readOnly = props.readOnly,
|
|
@@ -116,7 +118,9 @@ export var TimeClock = /*#__PURE__*/React.forwardRef(function TimeClock(inProps,
|
|
|
116
118
|
views: views,
|
|
117
119
|
openTo: openTo,
|
|
118
120
|
onViewChange: onViewChange,
|
|
119
|
-
onChange: handleValueChange
|
|
121
|
+
onChange: handleValueChange,
|
|
122
|
+
focusedView: focusedView,
|
|
123
|
+
onFocusedViewChange: onFocusedViewChange
|
|
120
124
|
}),
|
|
121
125
|
view = _useViews.view,
|
|
122
126
|
setView = _useViews.setView,
|
|
@@ -286,7 +290,7 @@ export var TimeClock = /*#__PURE__*/React.forwardRef(function TimeClock(inProps,
|
|
|
286
290
|
ownerState: ownerState
|
|
287
291
|
}, other, {
|
|
288
292
|
children: [/*#__PURE__*/_jsx(Clock, _extends({
|
|
289
|
-
autoFocus: autoFocus,
|
|
293
|
+
autoFocus: autoFocus != null ? autoFocus : !!focusedView,
|
|
290
294
|
ampmInClock: ampmInClock && views.includes('hours'),
|
|
291
295
|
value: value,
|
|
292
296
|
type: view,
|
|
@@ -332,7 +336,10 @@ process.env.NODE_ENV !== "production" ? TimeClock.propTypes = {
|
|
|
332
336
|
*/
|
|
333
337
|
ampmInClock: PropTypes.bool,
|
|
334
338
|
/**
|
|
335
|
-
*
|
|
339
|
+
* If `true`, the main element is focused during the first mount.
|
|
340
|
+
* This main element is:
|
|
341
|
+
* - the element chosen by the visible view if any (i.e: the selected day on the `day` view).
|
|
342
|
+
* - the `input` element if there is a field rendered.
|
|
336
343
|
*/
|
|
337
344
|
autoFocus: PropTypes.bool,
|
|
338
345
|
/**
|
|
@@ -358,7 +365,7 @@ process.env.NODE_ENV !== "production" ? TimeClock.propTypes = {
|
|
|
358
365
|
*/
|
|
359
366
|
defaultValue: PropTypes.any,
|
|
360
367
|
/**
|
|
361
|
-
* If `true`, the picker and text field are disabled.
|
|
368
|
+
* If `true`, the picker views and text field are disabled.
|
|
362
369
|
* @default false
|
|
363
370
|
*/
|
|
364
371
|
disabled: PropTypes.bool,
|
|
@@ -377,6 +384,10 @@ process.env.NODE_ENV !== "production" ? TimeClock.propTypes = {
|
|
|
377
384
|
* @default false
|
|
378
385
|
*/
|
|
379
386
|
disablePast: PropTypes.bool,
|
|
387
|
+
/**
|
|
388
|
+
* Controlled focused view.
|
|
389
|
+
*/
|
|
390
|
+
focusedView: PropTypes.oneOf(['hours', 'minutes', 'seconds']),
|
|
380
391
|
/**
|
|
381
392
|
* Maximal selectable time.
|
|
382
393
|
* The date part of the object will be ignored unless `props.disableIgnoringDatePartForTimeValidation === true`.
|
|
@@ -397,20 +408,30 @@ process.env.NODE_ENV !== "production" ? TimeClock.propTypes = {
|
|
|
397
408
|
* @template TDate
|
|
398
409
|
* @param {TDate | null} value The new value.
|
|
399
410
|
* @param {PickerSelectionState | undefined} selectionState Indicates if the date selection is complete.
|
|
411
|
+
* @param {TView | undefined} selectedView Indicates the view in which the selection has been made.
|
|
400
412
|
*/
|
|
401
413
|
onChange: PropTypes.func,
|
|
414
|
+
/**
|
|
415
|
+
* Callback fired on focused view change.
|
|
416
|
+
* @template TView
|
|
417
|
+
* @param {TView} view The new view to focus or not.
|
|
418
|
+
* @param {boolean} hasFocus `true` if the view should be focused.
|
|
419
|
+
*/
|
|
420
|
+
onFocusedViewChange: PropTypes.func,
|
|
402
421
|
/**
|
|
403
422
|
* Callback fired on view change.
|
|
404
|
-
* @
|
|
423
|
+
* @template TView
|
|
424
|
+
* @param {TView} view The new view.
|
|
405
425
|
*/
|
|
406
426
|
onViewChange: PropTypes.func,
|
|
407
427
|
/**
|
|
408
|
-
*
|
|
409
|
-
*
|
|
428
|
+
* The default visible view.
|
|
429
|
+
* Used when the component view is not controlled.
|
|
430
|
+
* Must be a valid option from `views` list.
|
|
410
431
|
*/
|
|
411
432
|
openTo: PropTypes.oneOf(['hours', 'minutes', 'seconds']),
|
|
412
433
|
/**
|
|
413
|
-
*
|
|
434
|
+
* If `true`, the picker views and text field are read-only.
|
|
414
435
|
* @default false
|
|
415
436
|
*/
|
|
416
437
|
readOnly: PropTypes.bool,
|
|
@@ -424,6 +445,7 @@ process.env.NODE_ENV !== "production" ? TimeClock.propTypes = {
|
|
|
424
445
|
shouldDisableClock: PropTypes.func,
|
|
425
446
|
/**
|
|
426
447
|
* Disable specific time.
|
|
448
|
+
* @template TDate
|
|
427
449
|
* @param {TDate} value The value to check.
|
|
428
450
|
* @param {TimeView} view The clock type of the timeValue.
|
|
429
451
|
* @returns {boolean} If `true` the time will be disabled.
|
|
@@ -450,12 +472,13 @@ process.env.NODE_ENV !== "production" ? TimeClock.propTypes = {
|
|
|
450
472
|
*/
|
|
451
473
|
value: PropTypes.any,
|
|
452
474
|
/**
|
|
453
|
-
*
|
|
475
|
+
* The visible view.
|
|
476
|
+
* Used when the component view is controlled.
|
|
477
|
+
* Must be a valid option from `views` list.
|
|
454
478
|
*/
|
|
455
479
|
view: PropTypes.oneOf(['hours', 'minutes', 'seconds']),
|
|
456
480
|
/**
|
|
457
|
-
*
|
|
458
|
-
* @default ['hours', 'minutes']
|
|
481
|
+
* Available views.
|
|
459
482
|
*/
|
|
460
483
|
views: PropTypes.arrayOf(PropTypes.oneOf(['hours', 'minutes', 'seconds']).isRequired)
|
|
461
484
|
} : void 0;
|
|
@@ -49,11 +49,13 @@ var TimeField = /*#__PURE__*/React.forwardRef(function TimeField(inProps, ref) {
|
|
|
49
49
|
return /*#__PURE__*/_jsx(TextField, _extends({
|
|
50
50
|
ref: ref
|
|
51
51
|
}, fieldProps, {
|
|
52
|
+
InputProps: _extends({}, fieldProps.InputProps, {
|
|
53
|
+
readOnly: readOnly
|
|
54
|
+
}),
|
|
52
55
|
inputProps: _extends({}, fieldProps.inputProps, {
|
|
53
|
-
ref: inputRef,
|
|
54
|
-
onPaste: onPaste,
|
|
55
56
|
inputMode: inputMode,
|
|
56
|
-
|
|
57
|
+
onPaste: onPaste,
|
|
58
|
+
ref: inputRef
|
|
57
59
|
})
|
|
58
60
|
}));
|
|
59
61
|
});
|
|
@@ -262,11 +264,27 @@ process.env.NODE_ENV !== "production" ? TimeField.propTypes = {
|
|
|
262
264
|
shouldDisableClock: PropTypes.func,
|
|
263
265
|
/**
|
|
264
266
|
* Disable specific time.
|
|
267
|
+
* @template TDate
|
|
265
268
|
* @param {TDate} value The value to check.
|
|
266
269
|
* @param {TimeView} view The clock type of the timeValue.
|
|
267
270
|
* @returns {boolean} If `true` the time will be disabled.
|
|
268
271
|
*/
|
|
269
272
|
shouldDisableTime: PropTypes.func,
|
|
273
|
+
/**
|
|
274
|
+
* If `true`, the format will respect the leading zeroes (e.g: on dayjs, the format `M/D/YYYY` will render `8/16/2018`)
|
|
275
|
+
* If `false`, the format will always add leading zeroes (e.g: on dayjs, the format `M/D/YYYY` will render `08/16/2018`)
|
|
276
|
+
*
|
|
277
|
+
* Warning n°1: Luxon is not able to respect the leading zeroes when using macro tokens (e.g: "DD"), so `shouldRespectLeadingZeros={true}` might lead to inconsistencies when using `AdapterLuxon`.
|
|
278
|
+
*
|
|
279
|
+
* Warning n°2: When `shouldRespectLeadingZeros={true}`, the field will add an invisible character on the sections containing a single digit to make sure `onChange` is fired.
|
|
280
|
+
* If you need to get the clean value from the input, you can remove this character using `input.value.replace(/\u200e/g, '')`.
|
|
281
|
+
*
|
|
282
|
+
* Warning n°3: When used in strict mode, dayjs and moment require to respect the leading zeros.
|
|
283
|
+
* This mean that when using `shouldRespectLeadingZeros={false}`, if you retrieve the value directly from the input (not listening to `onChange`) and your format contains tokens without leading zeros, the value will not be parsed by your library.
|
|
284
|
+
*
|
|
285
|
+
* @default `false`
|
|
286
|
+
*/
|
|
287
|
+
shouldRespectLeadingZeros: PropTypes.bool,
|
|
270
288
|
/**
|
|
271
289
|
* The size of the component.
|
|
272
290
|
*/
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
2
2
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
3
|
-
var _excluded = ["value", "defaultValue", "format", "formatDensity", "onChange", "readOnly", "onError", "disableFuture", "disablePast", "minTime", "maxTime", "minutesStep", "shouldDisableClock", "shouldDisableTime", "disableIgnoringDatePartForTimeValidation", "selectedSections", "onSelectedSectionsChange", "ampm", "unstableFieldRef"];
|
|
3
|
+
var _excluded = ["value", "defaultValue", "format", "formatDensity", "shouldRespectLeadingZeros", "onChange", "readOnly", "onError", "disableFuture", "disablePast", "minTime", "maxTime", "minutesStep", "shouldDisableClock", "shouldDisableTime", "disableIgnoringDatePartForTimeValidation", "selectedSections", "onSelectedSectionsChange", "ampm", "unstableFieldRef"];
|
|
4
4
|
import { singleItemFieldValueManager, singleItemValueManager } from '../internals/utils/valueManagers';
|
|
5
5
|
import { useField } from '../internals/hooks/useField';
|
|
6
|
-
import { validateTime } from '../internals/
|
|
6
|
+
import { validateTime } from '../internals/utils/validation/validateTime';
|
|
7
7
|
import { useUtils } from '../internals/hooks/useUtils';
|
|
8
8
|
var useDefaultizedTimeField = function useDefaultizedTimeField(props) {
|
|
9
9
|
var _props$ampm, _props$disablePast, _props$disableFuture, _props$format;
|
|
@@ -24,6 +24,7 @@ export var useTimeField = function useTimeField(_ref) {
|
|
|
24
24
|
defaultValue = _useDefaultizedTimeFi.defaultValue,
|
|
25
25
|
format = _useDefaultizedTimeFi.format,
|
|
26
26
|
formatDensity = _useDefaultizedTimeFi.formatDensity,
|
|
27
|
+
shouldRespectLeadingZeros = _useDefaultizedTimeFi.shouldRespectLeadingZeros,
|
|
27
28
|
onChange = _useDefaultizedTimeFi.onChange,
|
|
28
29
|
readOnly = _useDefaultizedTimeFi.readOnly,
|
|
29
30
|
onError = _useDefaultizedTimeFi.onError,
|
|
@@ -48,6 +49,7 @@ export var useTimeField = function useTimeField(_ref) {
|
|
|
48
49
|
defaultValue: defaultValue,
|
|
49
50
|
format: format,
|
|
50
51
|
formatDensity: formatDensity,
|
|
52
|
+
shouldRespectLeadingZeros: shouldRespectLeadingZeros,
|
|
51
53
|
onChange: onChange,
|
|
52
54
|
readOnly: readOnly,
|
|
53
55
|
onError: onError,
|
|
@@ -206,7 +206,7 @@ process.env.NODE_ENV !== "production" ? TimePicker.propTypes = {
|
|
|
206
206
|
* Used when the component view is not controlled.
|
|
207
207
|
* Must be a valid option from `views` list.
|
|
208
208
|
*/
|
|
209
|
-
openTo: PropTypes.oneOf(['hours', 'minutes', 'seconds']),
|
|
209
|
+
openTo: PropTypes.oneOf(['hours', 'meridiem', 'minutes', 'seconds']),
|
|
210
210
|
/**
|
|
211
211
|
* Force rendering in particular orientation.
|
|
212
212
|
*/
|
|
@@ -235,11 +235,17 @@ process.env.NODE_ENV !== "production" ? TimePicker.propTypes = {
|
|
|
235
235
|
shouldDisableClock: PropTypes.func,
|
|
236
236
|
/**
|
|
237
237
|
* Disable specific time.
|
|
238
|
+
* @template TDate
|
|
238
239
|
* @param {TDate} value The value to check.
|
|
239
240
|
* @param {TimeView} view The clock type of the timeValue.
|
|
240
241
|
* @returns {boolean} If `true` the time will be disabled.
|
|
241
242
|
*/
|
|
242
243
|
shouldDisableTime: PropTypes.func,
|
|
244
|
+
/**
|
|
245
|
+
* If `true`, disabled digital clock items will not be rendered.
|
|
246
|
+
* @default false
|
|
247
|
+
*/
|
|
248
|
+
skipDisabled: PropTypes.bool,
|
|
243
249
|
/**
|
|
244
250
|
* The props used for each component slot.
|
|
245
251
|
* @default {}
|
|
@@ -254,6 +260,22 @@ process.env.NODE_ENV !== "production" ? TimePicker.propTypes = {
|
|
|
254
260
|
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
255
261
|
*/
|
|
256
262
|
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
|
|
263
|
+
/**
|
|
264
|
+
* Amount of time options below or at which the single column time renderer is used.
|
|
265
|
+
* @default 24
|
|
266
|
+
*/
|
|
267
|
+
thresholdToRenderTimeInASingleColumn: PropTypes.number,
|
|
268
|
+
/**
|
|
269
|
+
* The time steps between two time unit options.
|
|
270
|
+
* For example, if `timeStep.minutes = 8`, then the available minute options will be `[0, 8, 16, 24, 32, 40, 48, 56]`.
|
|
271
|
+
* When single column time renderer is used, only `timeStep.minutes` will be used.
|
|
272
|
+
* @default{ hours: 1, minutes: 5, seconds: 5 }
|
|
273
|
+
*/
|
|
274
|
+
timeSteps: PropTypes.shape({
|
|
275
|
+
hours: PropTypes.number,
|
|
276
|
+
minutes: PropTypes.number,
|
|
277
|
+
seconds: PropTypes.number
|
|
278
|
+
}),
|
|
257
279
|
/**
|
|
258
280
|
* The selected value.
|
|
259
281
|
* Used when the component is controlled.
|
|
@@ -264,7 +286,7 @@ process.env.NODE_ENV !== "production" ? TimePicker.propTypes = {
|
|
|
264
286
|
* Used when the component view is controlled.
|
|
265
287
|
* Must be a valid option from `views` list.
|
|
266
288
|
*/
|
|
267
|
-
view: PropTypes.oneOf(['hours', 'minutes', 'seconds']),
|
|
289
|
+
view: PropTypes.oneOf(['hours', 'meridiem', 'minutes', 'seconds']),
|
|
268
290
|
/**
|
|
269
291
|
* Define custom view renderers for each section.
|
|
270
292
|
* If `null`, the section will only have field editing.
|
|
@@ -272,6 +294,7 @@ process.env.NODE_ENV !== "production" ? TimePicker.propTypes = {
|
|
|
272
294
|
*/
|
|
273
295
|
viewRenderers: PropTypes.shape({
|
|
274
296
|
hours: PropTypes.func,
|
|
297
|
+
meridiem: PropTypes.func,
|
|
275
298
|
minutes: PropTypes.func,
|
|
276
299
|
seconds: PropTypes.func
|
|
277
300
|
}),
|
|
@@ -248,7 +248,7 @@ process.env.NODE_ENV !== "production" ? TimePickerToolbar.propTypes = {
|
|
|
248
248
|
/**
|
|
249
249
|
* Currently visible picker view.
|
|
250
250
|
*/
|
|
251
|
-
view: PropTypes.oneOf(['hours', 'minutes', 'seconds']).isRequired,
|
|
252
|
-
views: PropTypes.arrayOf(PropTypes.oneOf(['
|
|
251
|
+
view: PropTypes.oneOf(['hours', 'meridiem', 'minutes', 'seconds']).isRequired,
|
|
252
|
+
views: PropTypes.arrayOf(PropTypes.oneOf(['hours', 'meridiem', 'minutes', 'seconds']).isRequired).isRequired
|
|
253
253
|
} : void 0;
|
|
254
254
|
export { TimePickerToolbar };
|
package/legacy/index.js
CHANGED
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @mui/x-date-pickers v6.
|
|
2
|
+
* @mui/x-date-pickers v6.3.0
|
|
3
3
|
*
|
|
4
4
|
* @license MIT
|
|
5
5
|
* This source code is licensed under the MIT license found in the
|
|
6
6
|
* LICENSE file in the root directory of this source tree.
|
|
7
7
|
*/
|
|
8
|
+
// Clocks
|
|
8
9
|
export * from './TimeClock';
|
|
10
|
+
export * from './DigitalClock';
|
|
11
|
+
export * from './MultiSectionDigitalClock';
|
|
9
12
|
export * from './LocalizationProvider';
|
|
10
13
|
export * from './PickersDay';
|
|
11
14
|
export * from './locales';
|
|
@@ -10,6 +10,9 @@ var getChildTypeFromChildName = function getChildTypeFromChildName(childName) {
|
|
|
10
10
|
if (childName.match(/^([A-Za-z]+)Range(Calendar|Clock)$/)) {
|
|
11
11
|
return 'multi-panel-UI-view';
|
|
12
12
|
}
|
|
13
|
+
if (childName.match(/^([A-Za-z]*)(DigitalClock)$/)) {
|
|
14
|
+
return 'Tall-UI-view';
|
|
15
|
+
}
|
|
13
16
|
if (childName.match(/^Static([A-Za-z]+)/) || childName.match(/^([A-Za-z]+)(Calendar|Clock)$/)) {
|
|
14
17
|
return 'UI-view';
|
|
15
18
|
}
|
|
@@ -68,7 +71,7 @@ export function DemoContainer(props) {
|
|
|
68
71
|
});
|
|
69
72
|
var getSpacing = function getSpacing(direction) {
|
|
70
73
|
if (direction === 'row') {
|
|
71
|
-
return childrenTypes.has('UI-view') ? 3 : 2;
|
|
74
|
+
return childrenTypes.has('UI-view') || childrenTypes.has('Tall-UI-view') ? 3 : 2;
|
|
72
75
|
}
|
|
73
76
|
return childrenTypes.has('UI-view') ? 4 : 3;
|
|
74
77
|
};
|
|
@@ -21,13 +21,13 @@ export function usePreviousMonthDisabled(month, _ref2) {
|
|
|
21
21
|
return !utils.isBefore(firstEnabledMonth, month);
|
|
22
22
|
}, [disablePast, minDate, month, utils]);
|
|
23
23
|
}
|
|
24
|
-
export function useMeridiemMode(date, ampm, onChange) {
|
|
24
|
+
export function useMeridiemMode(date, ampm, onChange, selectionState) {
|
|
25
25
|
var utils = useUtils();
|
|
26
26
|
var meridiemMode = getMeridiem(date, utils);
|
|
27
27
|
var handleMeridiemChange = React.useCallback(function (mode) {
|
|
28
28
|
var timeWithMeridiem = date == null ? null : convertToMeridiem(date, mode, Boolean(ampm), utils);
|
|
29
|
-
onChange(timeWithMeridiem, 'partial');
|
|
30
|
-
}, [ampm, date, onChange, utils]);
|
|
29
|
+
onChange(timeWithMeridiem, selectionState != null ? selectionState : 'partial');
|
|
30
|
+
}, [ampm, date, onChange, selectionState, utils]);
|
|
31
31
|
return {
|
|
32
32
|
meridiemMode: meridiemMode,
|
|
33
33
|
handleMeridiemChange: handleMeridiemChange
|
|
@@ -99,7 +99,8 @@ export var useDesktopPicker = function useDesktopPicker(_ref) {
|
|
|
99
99
|
format: format,
|
|
100
100
|
formatDensity: formatDensity,
|
|
101
101
|
label: label,
|
|
102
|
-
autoFocus: autoFocus && !props.open
|
|
102
|
+
autoFocus: autoFocus && !props.open,
|
|
103
|
+
focused: open ? true : undefined
|
|
103
104
|
}),
|
|
104
105
|
ownerState: props
|
|
105
106
|
});
|
|
@@ -7,7 +7,7 @@ import useEnhancedEffect from '@mui/utils/useEnhancedEffect';
|
|
|
7
7
|
import useEventCallback from '@mui/utils/useEventCallback';
|
|
8
8
|
import useForkRef from '@mui/utils/useForkRef';
|
|
9
9
|
import { useTheme } from '@mui/material/styles';
|
|
10
|
-
import { useValidation } from '../
|
|
10
|
+
import { useValidation } from '../useValidation';
|
|
11
11
|
import { useUtils } from '../useUtils';
|
|
12
12
|
import { adjustSectionValue, isAndroid, cleanString, getSectionOrder } from './useField.utils';
|
|
13
13
|
import { useFieldState } from './useFieldState';
|
|
@@ -26,14 +26,6 @@ export var useField = function useField(params) {
|
|
|
26
26
|
setTempAndroidValueStr = _useFieldState.setTempAndroidValueStr,
|
|
27
27
|
sectionsValueBoundaries = _useFieldState.sectionsValueBoundaries,
|
|
28
28
|
placeholder = _useFieldState.placeholder;
|
|
29
|
-
var _useFieldCharacterEdi = useFieldCharacterEditing({
|
|
30
|
-
sections: state.sections,
|
|
31
|
-
updateSectionValue: updateSectionValue,
|
|
32
|
-
sectionsValueBoundaries: sectionsValueBoundaries,
|
|
33
|
-
setTempAndroidValueStr: setTempAndroidValueStr
|
|
34
|
-
}),
|
|
35
|
-
applyCharacterEditing = _useFieldCharacterEdi.applyCharacterEditing,
|
|
36
|
-
resetCharacterQuery = _useFieldCharacterEdi.resetCharacterQuery;
|
|
37
29
|
var inputRefProp = params.inputRef,
|
|
38
30
|
internalProps = params.internalProps,
|
|
39
31
|
_params$internalProps = params.internalProps,
|
|
@@ -52,6 +44,14 @@ export var useField = function useField(params) {
|
|
|
52
44
|
fieldValueManager = params.fieldValueManager,
|
|
53
45
|
valueManager = params.valueManager,
|
|
54
46
|
validator = params.validator;
|
|
47
|
+
var _useFieldCharacterEdi = useFieldCharacterEditing({
|
|
48
|
+
sections: state.sections,
|
|
49
|
+
updateSectionValue: updateSectionValue,
|
|
50
|
+
sectionsValueBoundaries: sectionsValueBoundaries,
|
|
51
|
+
setTempAndroidValueStr: setTempAndroidValueStr
|
|
52
|
+
}),
|
|
53
|
+
applyCharacterEditing = _useFieldCharacterEdi.applyCharacterEditing,
|
|
54
|
+
resetCharacterQuery = _useFieldCharacterEdi.resetCharacterQuery;
|
|
55
55
|
var inputRef = React.useRef(null);
|
|
56
56
|
var handleRef = useForkRef(inputRefProp, inputRef);
|
|
57
57
|
var focusTimeoutRef = React.useRef(undefined);
|
|
@@ -130,7 +130,8 @@ export var useField = function useField(params) {
|
|
|
130
130
|
var activeSection = state.sections[selectedSectionIndexes.startIndex];
|
|
131
131
|
var lettersOnly = /^[a-zA-Z]+$/.test(pastedValue);
|
|
132
132
|
var digitsOnly = /^[0-9]+$/.test(pastedValue);
|
|
133
|
-
var
|
|
133
|
+
var digitsAndLetterOnly = /^(([a-zA-Z]+)|)([0-9]+)(([a-zA-Z]+)|)$/.test(pastedValue);
|
|
134
|
+
var isValidPastedValue = activeSection.contentType === 'letter' && lettersOnly || activeSection.contentType === 'digit' && digitsOnly || activeSection.contentType === 'digit-with-letter' && digitsAndLetterOnly;
|
|
134
135
|
if (isValidPastedValue) {
|
|
135
136
|
// Early return to let the paste update section, value
|
|
136
137
|
return;
|