@mui/x-date-pickers 8.0.0-alpha.1 → 8.0.0-alpha.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AdapterDateFns/AdapterDateFns.d.ts +2 -4
- package/AdapterDateFns/AdapterDateFns.js +49 -47
- package/AdapterDateFnsBase/AdapterDateFnsBase.d.ts +1 -1
- package/AdapterDateFnsJalali/AdapterDateFnsJalali.d.ts +2 -4
- package/AdapterDateFnsJalali/AdapterDateFnsJalali.js +48 -46
- package/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.d.ts → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.d.ts} +2 -2
- package/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.js} +45 -52
- package/AdapterDateFnsJalaliV2/index.d.ts +1 -0
- package/AdapterDateFnsJalaliV2/index.js +1 -0
- package/{AdapterDateFnsJalaliV3 → AdapterDateFnsJalaliV2}/package.json +1 -1
- package/{AdapterDateFnsV3/AdapterDateFnsV3.d.ts → AdapterDateFnsV2/AdapterDateFnsV2.d.ts} +2 -2
- package/{AdapterDateFnsV3/AdapterDateFnsV3.js → AdapterDateFnsV2/AdapterDateFnsV2.js} +46 -54
- package/AdapterDateFnsV2/index.d.ts +1 -0
- package/AdapterDateFnsV2/index.js +1 -0
- package/{AdapterDateFnsV3 → AdapterDateFnsV2}/package.json +1 -1
- package/AdapterDayjs/AdapterDayjs.d.ts +1 -1
- package/AdapterLuxon/AdapterLuxon.d.ts +1 -1
- package/AdapterMoment/AdapterMoment.d.ts +1 -1
- package/AdapterMoment/AdapterMoment.js +10 -0
- package/CHANGELOG.md +1903 -231
- package/DateCalendar/DateCalendar.js +4 -4
- package/DateCalendar/DateCalendar.types.d.ts +2 -1
- package/DateCalendar/DayCalendar.js +2 -0
- package/DateCalendar/PickersFadeTransitionGroup.d.ts +1 -1
- package/DateCalendar/PickersFadeTransitionGroup.js +4 -6
- package/DateCalendar/PickersSlideTransition.d.ts +1 -1
- package/DateCalendar/PickersSlideTransition.js +12 -5
- package/DateCalendar/useCalendarState.d.ts +6 -4
- package/DateField/DateField.js +29 -33
- package/DateField/DateField.types.d.ts +7 -15
- package/DateField/useDateField.d.ts +1 -1
- package/DateField/useDateField.js +14 -11
- package/DatePicker/DatePicker.js +1 -1
- package/DatePicker/DatePicker.types.d.ts +7 -3
- package/DatePicker/DatePickerToolbar.d.ts +1 -2
- package/DatePicker/DatePickerToolbar.js +17 -33
- package/DatePicker/shared.d.ts +6 -5
- package/DateTimeField/DateTimeField.js +29 -33
- package/DateTimeField/DateTimeField.types.d.ts +7 -16
- package/DateTimeField/useDateTimeField.d.ts +1 -1
- package/DateTimeField/useDateTimeField.js +14 -11
- package/DateTimePicker/DateTimePicker.js +2 -2
- package/DateTimePicker/DateTimePicker.types.d.ts +4 -5
- package/DateTimePicker/DateTimePickerTabs.d.ts +2 -5
- package/DateTimePicker/DateTimePickerTabs.js +15 -20
- package/DateTimePicker/DateTimePickerToolbar.d.ts +16 -5
- package/DateTimePicker/DateTimePickerToolbar.js +88 -80
- package/DateTimePicker/shared.d.ts +8 -8
- package/DayCalendarSkeleton/DayCalendarSkeleton.js +10 -19
- package/DesktopDatePicker/DesktopDatePicker.js +11 -17
- package/DesktopDatePicker/DesktopDatePicker.types.d.ts +7 -3
- package/DesktopDateTimePicker/DesktopDateTimePicker.js +17 -27
- package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +2 -2
- package/DesktopDateTimePicker/DesktopDateTimePickerLayout.d.ts +2 -2
- package/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +9 -34
- package/DesktopTimePicker/DesktopTimePicker.js +6 -22
- package/DesktopTimePicker/DesktopTimePicker.types.d.ts +2 -2
- package/DigitalClock/DigitalClock.js +13 -11
- package/DigitalClock/DigitalClock.types.d.ts +8 -2
- package/MobileDatePicker/MobileDatePicker.js +4 -14
- package/MobileDatePicker/MobileDatePicker.types.d.ts +2 -3
- package/MobileDateTimePicker/MobileDateTimePicker.js +4 -14
- package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +4 -4
- package/MobileTimePicker/MobileTimePicker.js +4 -14
- package/MobileTimePicker/MobileTimePicker.types.d.ts +4 -4
- package/MonthCalendar/MonthCalendar.d.ts +1 -1
- package/MonthCalendar/MonthCalendar.js +31 -11
- package/MonthCalendar/MonthCalendar.types.d.ts +2 -2
- package/MonthCalendar/MonthCalendarButton.d.ts +24 -0
- package/{modern/MonthCalendar/PickersMonth.js → MonthCalendar/MonthCalendarButton.js} +20 -61
- package/MonthCalendar/index.d.ts +0 -3
- package/MonthCalendar/index.js +1 -2
- package/MonthCalendar/monthCalendarClasses.d.ts +7 -1
- package/MonthCalendar/monthCalendarClasses.js +1 -1
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.js +11 -7
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.types.d.ts +6 -6
- package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.d.ts +4 -4
- package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +14 -10
- package/PickersActionBar/PickersActionBar.d.ts +6 -7
- package/PickersActionBar/PickersActionBar.js +26 -17
- package/PickersCalendarHeader/PickersCalendarHeader.js +10 -7
- package/PickersCalendarHeader/PickersCalendarHeader.types.d.ts +3 -4
- package/PickersLayout/PickersLayout.d.ts +7 -5
- package/PickersLayout/PickersLayout.js +23 -42
- package/PickersLayout/PickersLayout.types.d.ts +20 -22
- package/PickersLayout/usePickerLayout.d.ts +5 -4
- package/PickersLayout/usePickerLayout.js +26 -53
- package/PickersSectionList/PickersSectionList.js +21 -16
- package/PickersSectionList/PickersSectionList.types.d.ts +13 -6
- package/PickersShortcuts/PickersShortcuts.d.ts +9 -11
- package/PickersShortcuts/PickersShortcuts.js +21 -11
- package/PickersShortcuts/index.d.ts +1 -1
- package/PickersTextField/PickersFilledInput/PickersFilledInput.d.ts +7 -0
- package/PickersTextField/PickersFilledInput/PickersFilledInput.js +34 -28
- package/PickersTextField/PickersFilledInput/pickersFilledInputClasses.d.ts +1 -1
- package/PickersTextField/PickersInput/PickersInput.js +20 -14
- package/PickersTextField/PickersInput/pickersInputClasses.d.ts +3 -2
- package/PickersTextField/PickersInput/pickersInputClasses.js +1 -1
- package/PickersTextField/PickersInputBase/PickersInputBase.d.ts +3 -6
- package/PickersTextField/PickersInputBase/PickersInputBase.js +43 -37
- package/PickersTextField/PickersInputBase/PickersInputBase.types.d.ts +1 -0
- package/PickersTextField/PickersOutlinedInput/Outline.d.ts +0 -1
- package/PickersTextField/PickersOutlinedInput/Outline.js +13 -10
- package/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +8 -14
- package/PickersTextField/PickersTextField.js +75 -62
- package/PickersTextField/PickersTextField.types.d.ts +43 -4
- package/PickersTextField/usePickerTextFieldOwnerState.d.ts +4 -0
- package/PickersTextField/usePickerTextFieldOwnerState.js +11 -0
- package/README.md +8 -5
- package/StaticDatePicker/StaticDatePicker.js +2 -2
- package/StaticDatePicker/StaticDatePicker.types.d.ts +2 -3
- package/StaticDateTimePicker/StaticDateTimePicker.js +2 -2
- package/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +2 -2
- package/StaticTimePicker/StaticTimePicker.js +2 -2
- package/StaticTimePicker/StaticTimePicker.types.d.ts +2 -2
- package/TimeClock/Clock.d.ts +4 -0
- package/TimeClock/Clock.js +27 -27
- package/TimeClock/ClockNumber.js +15 -11
- package/TimeClock/ClockPointer.d.ts +6 -1
- package/TimeClock/ClockPointer.js +16 -10
- package/TimeClock/TimeClock.js +30 -12
- package/TimeField/TimeField.js +28 -32
- package/TimeField/TimeField.types.d.ts +7 -16
- package/TimeField/useTimeField.d.ts +1 -1
- package/TimeField/useTimeField.js +14 -11
- package/TimePicker/TimePicker.js +2 -2
- package/TimePicker/TimePicker.types.d.ts +4 -5
- package/TimePicker/TimePickerToolbar.d.ts +1 -3
- package/TimePicker/TimePickerToolbar.js +36 -51
- package/TimePicker/shared.d.ts +6 -6
- package/YearCalendar/YearCalendar.js +46 -13
- package/YearCalendar/YearCalendar.types.d.ts +2 -2
- package/YearCalendar/YearCalendarButton.d.ts +23 -0
- package/{modern/YearCalendar/PickersYear.js → YearCalendar/YearCalendarButton.js} +20 -59
- package/YearCalendar/index.d.ts +0 -3
- package/YearCalendar/index.js +1 -2
- package/YearCalendar/yearCalendarClasses.d.ts +7 -1
- package/YearCalendar/yearCalendarClasses.js +1 -1
- package/hooks/index.d.ts +2 -0
- package/hooks/index.js +3 -1
- package/hooks/useClearableField.d.ts +5 -3
- package/hooks/useClearableField.js +4 -2
- package/hooks/useIsValidValue.d.ts +7 -0
- package/hooks/useIsValidValue.js +11 -0
- package/hooks/useParsedFormat.d.ts +9 -7
- package/hooks/useParsedFormat.js +11 -13
- package/hooks/usePickerActionsContext.d.ts +7 -0
- package/hooks/usePickerActionsContext.js +15 -0
- package/hooks/usePickerContext.d.ts +5 -1
- package/hooks/usePickerContext.js +2 -2
- package/hooks/useSplitFieldProps.d.ts +12 -3
- package/hooks/useSplitFieldProps.js +8 -3
- package/index.d.ts +1 -0
- package/index.js +3 -2
- package/internals/components/PickerFieldUI.d.ts +133 -0
- package/internals/components/PickerFieldUI.js +317 -0
- package/internals/components/{PickersPopper.d.ts → PickerPopper/PickerPopper.d.ts} +26 -25
- package/{modern/internals/components/PickersPopper.js → internals/components/PickerPopper/PickerPopper.js} +47 -47
- package/internals/components/PickerPopper/index.d.ts +4 -0
- package/internals/components/PickerPopper/index.js +2 -0
- package/internals/components/PickerPopper/pickerPopperClasses.d.ts +9 -0
- package/internals/components/PickerPopper/pickerPopperClasses.js +6 -0
- package/internals/components/PickerProvider.d.ts +86 -32
- package/internals/components/PickerProvider.js +25 -7
- package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +12 -11
- package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.types.d.ts +11 -8
- package/internals/components/PickersModalDialog.d.ts +1 -3
- package/internals/components/PickersModalDialog.js +9 -3
- package/internals/components/PickersToolbar.d.ts +2 -3
- package/internals/components/PickersToolbar.js +15 -12
- package/internals/components/PickersToolbarButton.js +4 -6
- package/internals/components/PickersToolbarText.js +11 -13
- package/internals/hooks/date-helpers-hooks.js +4 -3
- package/internals/hooks/useClockReferenceDate.d.ts +2 -1
- package/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +1 -1
- package/internals/hooks/useDesktopPicker/useDesktopPicker.js +35 -120
- package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +16 -38
- package/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
- package/internals/hooks/useField/index.d.ts +2 -0
- package/internals/hooks/useField/index.js +2 -1
- package/internals/hooks/useField/useField.d.ts +3 -3
- package/internals/hooks/useField/useField.js +17 -4
- package/internals/hooks/useField/useField.types.d.ts +55 -48
- package/internals/hooks/useField/useField.utils.d.ts +4 -3
- package/internals/hooks/useField/useField.utils.js +2 -2
- package/internals/hooks/useField/useFieldCharacterEditing.d.ts +6 -5
- package/internals/hooks/useField/useFieldInternalPropsWithDefaults.d.ts +15 -0
- package/internals/hooks/useField/useFieldInternalPropsWithDefaults.js +47 -0
- package/internals/hooks/useField/useFieldState.d.ts +9 -8
- package/internals/hooks/useField/useFieldState.js +2 -3
- package/internals/hooks/useField/useFieldV6TextField.d.ts +4 -3
- package/internals/hooks/useField/useFieldV6TextField.js +5 -2
- package/internals/hooks/useField/useFieldV7TextField.js +6 -3
- package/internals/hooks/useFieldOwnerState.d.ts +6 -0
- package/internals/hooks/useFieldOwnerState.js +16 -0
- package/internals/hooks/useMobilePicker/useMobilePicker.d.ts +1 -1
- package/internals/hooks/useMobilePicker/useMobilePicker.js +34 -68
- package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +15 -22
- package/internals/hooks/useNullablePickerContext.d.ts +5 -0
- package/internals/hooks/useNullablePickerContext.js +10 -0
- package/internals/hooks/useOpenState.d.ts +3 -2
- package/internals/hooks/useOpenState.js +11 -9
- package/internals/hooks/usePicker/index.d.ts +1 -1
- package/internals/hooks/usePicker/usePicker.d.ts +3 -4
- package/internals/hooks/usePicker/usePicker.js +4 -20
- package/internals/hooks/usePicker/usePicker.types.d.ts +10 -10
- package/internals/hooks/usePicker/usePickerProvider.d.ts +45 -10
- package/internals/hooks/usePicker/usePickerProvider.js +50 -16
- package/internals/hooks/usePicker/usePickerValue.d.ts +3 -2
- package/internals/hooks/usePicker/usePickerValue.js +84 -214
- package/internals/hooks/usePicker/usePickerValue.types.d.ts +130 -75
- package/internals/hooks/usePicker/usePickerViews.d.ts +59 -41
- package/internals/hooks/usePicker/usePickerViews.js +31 -20
- package/internals/hooks/useReduceAnimations.d.ts +2 -0
- package/internals/hooks/{useDefaultReduceAnimations.js → useReduceAnimations.js} +5 -2
- package/internals/hooks/useStaticPicker/useStaticPicker.d.ts +1 -1
- package/internals/hooks/useStaticPicker/useStaticPicker.js +7 -12
- package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +7 -13
- package/internals/hooks/useToolbarOwnerState.d.ts +10 -0
- package/internals/hooks/useToolbarOwnerState.js +13 -0
- package/internals/hooks/useUtils.d.ts +4 -3
- package/internals/hooks/useUtils.js +1 -1
- package/internals/hooks/useValueWithTimezone.d.ts +5 -4
- package/internals/hooks/useViews.d.ts +5 -5
- package/internals/index.d.ts +27 -18
- package/internals/index.js +13 -8
- package/internals/models/common.d.ts +1 -1
- package/internals/models/fields.d.ts +8 -24
- package/internals/models/index.d.ts +1 -0
- package/internals/models/index.js +2 -1
- package/internals/models/manager.d.ts +15 -0
- package/internals/models/manager.js +1 -0
- package/internals/models/pickers.d.ts +1 -0
- package/internals/models/pickers.js +1 -0
- package/internals/models/props/basePickerProps.d.ts +3 -33
- package/internals/models/props/tabs.d.ts +0 -13
- package/internals/models/props/time.d.ts +2 -1
- package/internals/models/props/toolbar.d.ts +1 -19
- package/internals/models/value.d.ts +9 -0
- package/internals/utils/date-utils.d.ts +1 -1
- package/internals/utils/date-utils.js +1 -1
- package/internals/utils/utils.d.ts +3 -0
- package/internals/utils/utils.js +11 -1
- package/internals/utils/valueManagers.d.ts +4 -3
- package/internals/utils/valueManagers.js +4 -4
- package/locales/index.d.ts +1 -0
- package/locales/index.js +1 -0
- package/locales/nbNO.js +15 -19
- package/locales/nlNL.js +7 -7
- package/locales/roRO.js +15 -18
- package/locales/utils/getPickersLocalization.d.ts +0 -7
- package/locales/utils/getPickersLocalization.js +0 -13
- package/locales/zhTW.d.ts +80 -0
- package/locales/zhTW.js +73 -0
- package/managers/index.d.ts +6 -0
- package/managers/index.js +3 -0
- package/managers/package.json +6 -0
- package/managers/useDateManager.d.ts +27 -0
- package/managers/useDateManager.js +55 -0
- package/managers/useDateTimeManager.d.ts +28 -0
- package/managers/useDateTimeManager.js +60 -0
- package/managers/useTimeManager.d.ts +28 -0
- package/managers/useTimeManager.js +51 -0
- package/models/adapters.d.ts +5 -5
- package/models/fields.d.ts +33 -9
- package/models/index.d.ts +1 -0
- package/models/index.js +1 -0
- package/models/manager.d.ts +87 -0
- package/models/manager.js +1 -0
- package/models/pickers.d.ts +7 -0
- package/models/validation.d.ts +2 -1
- package/modern/AdapterDateFns/AdapterDateFns.js +49 -47
- package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +48 -46
- package/modern/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.js} +45 -52
- package/modern/AdapterDateFnsJalaliV2/index.js +1 -0
- package/modern/{AdapterDateFnsV3/AdapterDateFnsV3.js → AdapterDateFnsV2/AdapterDateFnsV2.js} +46 -54
- package/modern/AdapterDateFnsV2/index.js +1 -0
- package/modern/AdapterMoment/AdapterMoment.js +10 -0
- package/modern/DateCalendar/DateCalendar.js +4 -4
- package/modern/DateCalendar/DayCalendar.js +2 -0
- package/modern/DateCalendar/PickersFadeTransitionGroup.js +4 -6
- package/modern/DateCalendar/PickersSlideTransition.js +12 -5
- package/modern/DateField/DateField.js +29 -33
- package/modern/DateField/useDateField.js +14 -11
- package/modern/DatePicker/DatePicker.js +1 -1
- package/modern/DatePicker/DatePickerToolbar.js +17 -33
- package/modern/DateTimeField/DateTimeField.js +29 -33
- package/modern/DateTimeField/useDateTimeField.js +14 -11
- package/modern/DateTimePicker/DateTimePicker.js +2 -2
- package/modern/DateTimePicker/DateTimePickerTabs.js +15 -20
- package/modern/DateTimePicker/DateTimePickerToolbar.js +88 -80
- package/modern/DayCalendarSkeleton/DayCalendarSkeleton.js +10 -19
- package/modern/DesktopDatePicker/DesktopDatePicker.js +11 -17
- package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +17 -27
- package/modern/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +9 -34
- package/modern/DesktopTimePicker/DesktopTimePicker.js +6 -22
- package/modern/DigitalClock/DigitalClock.js +13 -11
- package/modern/MobileDatePicker/MobileDatePicker.js +4 -14
- package/modern/MobileDateTimePicker/MobileDateTimePicker.js +4 -14
- package/modern/MobileTimePicker/MobileTimePicker.js +4 -14
- package/modern/MonthCalendar/MonthCalendar.js +31 -11
- package/{MonthCalendar/PickersMonth.js → modern/MonthCalendar/MonthCalendarButton.js} +20 -61
- package/modern/MonthCalendar/index.js +1 -2
- package/modern/MonthCalendar/monthCalendarClasses.js +1 -1
- package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.js +11 -7
- package/modern/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +14 -10
- package/modern/PickersActionBar/PickersActionBar.js +26 -17
- package/modern/PickersCalendarHeader/PickersCalendarHeader.js +10 -7
- package/modern/PickersLayout/PickersLayout.js +23 -42
- package/modern/PickersLayout/usePickerLayout.js +26 -53
- package/modern/PickersSectionList/PickersSectionList.js +21 -16
- package/modern/PickersShortcuts/PickersShortcuts.js +21 -11
- package/modern/PickersTextField/PickersFilledInput/PickersFilledInput.js +34 -28
- package/modern/PickersTextField/PickersInput/PickersInput.js +20 -14
- package/modern/PickersTextField/PickersInput/pickersInputClasses.js +1 -1
- package/modern/PickersTextField/PickersInputBase/PickersInputBase.js +43 -37
- package/modern/PickersTextField/PickersOutlinedInput/Outline.js +13 -10
- package/modern/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +8 -14
- package/modern/PickersTextField/PickersTextField.js +75 -62
- package/modern/PickersTextField/usePickerTextFieldOwnerState.js +11 -0
- package/modern/StaticDatePicker/StaticDatePicker.js +2 -2
- package/modern/StaticDateTimePicker/StaticDateTimePicker.js +2 -2
- package/modern/StaticTimePicker/StaticTimePicker.js +2 -2
- package/modern/TimeClock/Clock.js +27 -27
- package/modern/TimeClock/ClockNumber.js +15 -11
- package/modern/TimeClock/ClockPointer.js +16 -10
- package/modern/TimeClock/TimeClock.js +30 -12
- package/modern/TimeField/TimeField.js +28 -32
- package/modern/TimeField/useTimeField.js +14 -11
- package/modern/TimePicker/TimePicker.js +2 -2
- package/modern/TimePicker/TimePickerToolbar.js +36 -51
- package/modern/YearCalendar/YearCalendar.js +46 -13
- package/{YearCalendar/PickersYear.js → modern/YearCalendar/YearCalendarButton.js} +20 -59
- package/modern/YearCalendar/index.js +1 -2
- package/modern/YearCalendar/yearCalendarClasses.js +1 -1
- package/modern/hooks/index.js +3 -1
- package/modern/hooks/useClearableField.js +4 -2
- package/modern/hooks/useIsValidValue.js +11 -0
- package/modern/hooks/useParsedFormat.js +11 -13
- package/modern/hooks/usePickerActionsContext.js +15 -0
- package/modern/hooks/usePickerContext.js +2 -2
- package/modern/hooks/useSplitFieldProps.js +8 -3
- package/modern/index.js +3 -2
- package/modern/internals/components/PickerFieldUI.js +317 -0
- package/{internals/components/PickersPopper.js → modern/internals/components/PickerPopper/PickerPopper.js} +47 -47
- package/modern/internals/components/PickerPopper/index.js +2 -0
- package/modern/internals/components/PickerPopper/pickerPopperClasses.js +6 -0
- package/modern/internals/components/PickerProvider.js +25 -7
- package/modern/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +12 -11
- package/modern/internals/components/PickersModalDialog.js +9 -3
- package/modern/internals/components/PickersToolbar.js +15 -12
- package/modern/internals/components/PickersToolbarButton.js +4 -6
- package/modern/internals/components/PickersToolbarText.js +11 -13
- package/modern/internals/hooks/date-helpers-hooks.js +4 -3
- package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +35 -120
- package/modern/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
- package/modern/internals/hooks/useField/index.js +2 -1
- package/modern/internals/hooks/useField/useField.js +17 -4
- package/modern/internals/hooks/useField/useField.utils.js +2 -2
- package/modern/internals/hooks/useField/useFieldInternalPropsWithDefaults.js +47 -0
- package/modern/internals/hooks/useField/useFieldState.js +2 -3
- package/modern/internals/hooks/useField/useFieldV6TextField.js +5 -2
- package/modern/internals/hooks/useField/useFieldV7TextField.js +6 -3
- package/modern/internals/hooks/useFieldOwnerState.js +16 -0
- package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +34 -68
- package/modern/internals/hooks/useNullablePickerContext.js +10 -0
- package/modern/internals/hooks/useOpenState.js +11 -9
- package/modern/internals/hooks/usePicker/usePicker.js +4 -20
- package/modern/internals/hooks/usePicker/usePickerProvider.js +50 -16
- package/modern/internals/hooks/usePicker/usePickerValue.js +84 -214
- package/modern/internals/hooks/usePicker/usePickerViews.js +31 -20
- package/modern/internals/hooks/{useDefaultReduceAnimations.js → useReduceAnimations.js} +5 -2
- package/modern/internals/hooks/useStaticPicker/useStaticPicker.js +7 -12
- package/modern/internals/hooks/useToolbarOwnerState.js +13 -0
- package/modern/internals/hooks/useUtils.js +1 -1
- package/modern/internals/index.js +13 -8
- package/modern/internals/models/index.js +2 -1
- package/modern/internals/models/manager.js +1 -0
- package/modern/internals/models/pickers.js +1 -0
- package/modern/internals/utils/date-utils.js +1 -1
- package/modern/internals/utils/utils.js +11 -1
- package/modern/internals/utils/valueManagers.js +4 -4
- package/modern/locales/index.js +1 -0
- package/modern/locales/nbNO.js +15 -19
- package/modern/locales/nlNL.js +7 -7
- package/modern/locales/roRO.js +15 -18
- package/modern/locales/utils/getPickersLocalization.js +0 -13
- package/modern/locales/zhTW.js +73 -0
- package/modern/managers/index.js +3 -0
- package/modern/managers/useDateManager.js +55 -0
- package/modern/managers/useDateTimeManager.js +60 -0
- package/modern/managers/useTimeManager.js +51 -0
- package/modern/models/index.js +1 -0
- package/modern/models/manager.js +1 -0
- package/modern/validation/useValidation.js +1 -1
- package/modern/validation/validateDate.js +8 -0
- package/modern/validation/validateDateTime.js +8 -0
- package/modern/validation/validateTime.js +8 -0
- package/node/AdapterDateFns/AdapterDateFns.js +97 -97
- package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +97 -96
- package/node/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.js} +94 -101
- package/node/{AdapterDateFnsJalaliV3 → AdapterDateFnsJalaliV2}/index.js +1 -1
- package/node/AdapterDateFnsV2/AdapterDateFnsV2.js +291 -0
- package/node/{AdapterDateFnsV3 → AdapterDateFnsV2}/index.js +1 -1
- package/node/AdapterMoment/AdapterMoment.js +10 -0
- package/node/DateCalendar/DateCalendar.js +4 -4
- package/node/DateCalendar/DayCalendar.js +1 -0
- package/node/DateCalendar/PickersFadeTransitionGroup.js +4 -6
- package/node/DateCalendar/PickersSlideTransition.js +12 -5
- package/node/DateField/DateField.js +29 -33
- package/node/DateField/useDateField.js +13 -10
- package/node/DatePicker/DatePicker.js +1 -1
- package/node/DatePicker/DatePickerToolbar.js +17 -33
- package/node/DateTimeField/DateTimeField.js +29 -33
- package/node/DateTimeField/useDateTimeField.js +13 -10
- package/node/DateTimePicker/DateTimePicker.js +2 -2
- package/node/DateTimePicker/DateTimePickerTabs.js +15 -20
- package/node/DateTimePicker/DateTimePickerToolbar.js +89 -80
- package/node/DayCalendarSkeleton/DayCalendarSkeleton.js +10 -19
- package/node/DesktopDatePicker/DesktopDatePicker.js +11 -17
- package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +17 -27
- package/node/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +10 -35
- package/node/DesktopTimePicker/DesktopTimePicker.js +6 -22
- package/node/DigitalClock/DigitalClock.js +13 -11
- package/node/MobileDatePicker/MobileDatePicker.js +4 -14
- package/node/MobileDateTimePicker/MobileDateTimePicker.js +4 -14
- package/node/MobileTimePicker/MobileTimePicker.js +4 -14
- package/node/MonthCalendar/MonthCalendar.js +31 -11
- package/node/MonthCalendar/{PickersMonth.js → MonthCalendarButton.js} +20 -61
- package/node/MonthCalendar/index.js +1 -8
- package/node/MonthCalendar/monthCalendarClasses.js +1 -1
- package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +11 -7
- package/node/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +13 -10
- package/node/PickersActionBar/PickersActionBar.js +28 -19
- package/node/PickersCalendarHeader/PickersCalendarHeader.js +10 -7
- package/node/PickersLayout/PickersLayout.js +23 -42
- package/node/PickersLayout/usePickerLayout.js +30 -57
- package/node/PickersSectionList/PickersSectionList.js +21 -16
- package/node/PickersShortcuts/PickersShortcuts.js +21 -11
- package/node/PickersTextField/PickersFilledInput/PickersFilledInput.js +34 -28
- package/node/PickersTextField/PickersInput/PickersInput.js +20 -14
- package/node/PickersTextField/PickersInput/pickersInputClasses.js +1 -1
- package/node/PickersTextField/PickersInputBase/PickersInputBase.js +43 -37
- package/node/PickersTextField/PickersOutlinedInput/Outline.js +13 -10
- package/node/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +8 -14
- package/node/PickersTextField/PickersTextField.js +75 -62
- package/node/PickersTextField/usePickerTextFieldOwnerState.js +18 -0
- package/node/StaticDatePicker/StaticDatePicker.js +2 -2
- package/node/StaticDateTimePicker/StaticDateTimePicker.js +2 -2
- package/node/StaticTimePicker/StaticTimePicker.js +2 -2
- package/node/TimeClock/Clock.js +27 -27
- package/node/TimeClock/ClockNumber.js +15 -11
- package/node/TimeClock/ClockPointer.js +15 -10
- package/node/TimeClock/TimeClock.js +30 -12
- package/node/TimeField/TimeField.js +28 -32
- package/node/TimeField/useTimeField.js +13 -10
- package/node/TimePicker/TimePicker.js +2 -2
- package/node/TimePicker/TimePickerToolbar.js +36 -51
- package/node/YearCalendar/YearCalendar.js +45 -12
- package/node/YearCalendar/{PickersYear.js → YearCalendarButton.js} +20 -59
- package/node/YearCalendar/index.js +1 -8
- package/node/YearCalendar/yearCalendarClasses.js +1 -1
- package/node/hooks/index.js +15 -1
- package/node/hooks/useClearableField.js +4 -2
- package/node/hooks/useIsValidValue.js +18 -0
- package/node/hooks/useParsedFormat.js +11 -13
- package/node/hooks/usePickerActionsContext.js +22 -0
- package/node/hooks/usePickerContext.js +5 -4
- package/node/hooks/useSplitFieldProps.js +7 -2
- package/node/index.js +13 -1
- package/node/internals/components/PickerFieldUI.js +329 -0
- package/node/internals/components/{PickersPopper.js → PickerPopper/PickerPopper.js} +48 -48
- package/node/internals/components/PickerPopper/index.js +25 -0
- package/node/internals/components/PickerPopper/pickerPopperClasses.js +14 -0
- package/node/internals/components/PickerProvider.js +27 -9
- package/node/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +12 -11
- package/node/internals/components/PickersModalDialog.js +9 -3
- package/node/internals/components/PickersToolbar.js +15 -12
- package/node/internals/components/PickersToolbarButton.js +4 -6
- package/node/internals/components/PickersToolbarText.js +10 -12
- package/node/internals/hooks/date-helpers-hooks.js +4 -3
- package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +37 -122
- package/node/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
- package/node/internals/hooks/useField/index.js +8 -1
- package/node/internals/hooks/useField/useField.js +16 -3
- package/node/internals/hooks/useField/useField.utils.js +2 -2
- package/node/internals/hooks/useField/useFieldInternalPropsWithDefaults.js +56 -0
- package/node/internals/hooks/useField/useFieldState.js +2 -3
- package/node/internals/hooks/useField/useFieldV6TextField.js +5 -2
- package/node/internals/hooks/useField/useFieldV7TextField.js +6 -3
- package/node/internals/hooks/useFieldOwnerState.js +24 -0
- package/node/internals/hooks/useMobilePicker/useMobilePicker.js +35 -69
- package/node/internals/hooks/useNullablePickerContext.js +16 -0
- package/node/internals/hooks/useOpenState.js +12 -9
- package/node/internals/hooks/usePicker/usePicker.js +4 -20
- package/node/internals/hooks/usePicker/usePickerProvider.js +51 -17
- package/node/internals/hooks/usePicker/usePickerValue.js +84 -213
- package/node/internals/hooks/usePicker/usePickerViews.js +31 -21
- package/node/internals/hooks/{useDefaultReduceAnimations.js → useReduceAnimations.js} +7 -4
- package/node/internals/hooks/useStaticPicker/useStaticPicker.js +7 -12
- package/node/internals/hooks/useToolbarOwnerState.js +21 -0
- package/node/internals/hooks/useUtils.js +1 -1
- package/node/internals/index.js +87 -34
- package/node/internals/models/index.js +11 -0
- package/node/internals/models/manager.js +5 -0
- package/node/internals/models/pickers.js +5 -0
- package/node/internals/utils/date-utils.js +1 -1
- package/node/internals/utils/utils.js +14 -2
- package/node/internals/utils/valueManagers.js +4 -4
- package/node/locales/index.js +11 -0
- package/node/locales/nbNO.js +15 -19
- package/node/locales/nlNL.js +7 -7
- package/node/locales/roRO.js +15 -18
- package/node/locales/utils/getPickersLocalization.js +2 -16
- package/node/locales/zhTW.js +79 -0
- package/node/managers/index.js +26 -0
- package/node/managers/useDateManager.js +63 -0
- package/node/managers/useDateTimeManager.js +68 -0
- package/node/managers/useTimeManager.js +59 -0
- package/node/models/index.js +11 -0
- package/node/models/manager.js +5 -0
- package/node/validation/useValidation.js +1 -1
- package/node/validation/validateDate.js +8 -0
- package/node/validation/validateDateTime.js +8 -0
- package/node/validation/validateTime.js +8 -0
- package/package.json +5 -5
- package/themeAugmentation/components.d.ts +3 -11
- package/themeAugmentation/overrides.d.ts +5 -7
- package/themeAugmentation/props.d.ts +7 -9
- package/validation/extractValidationProps.d.ts +1 -1
- package/validation/useValidation.d.ts +7 -6
- package/validation/useValidation.js +1 -1
- package/validation/validateDate.d.ts +12 -3
- package/validation/validateDate.js +8 -0
- package/validation/validateDateTime.d.ts +12 -4
- package/validation/validateDateTime.js +8 -0
- package/validation/validateTime.d.ts +12 -3
- package/validation/validateTime.js +8 -0
- package/AdapterDateFnsJalaliV3/index.d.ts +0 -1
- package/AdapterDateFnsJalaliV3/index.js +0 -1
- package/AdapterDateFnsV3/index.d.ts +0 -1
- package/AdapterDateFnsV3/index.js +0 -1
- package/MonthCalendar/PickersMonth.d.ts +0 -28
- package/MonthCalendar/pickersMonthClasses.d.ts +0 -13
- package/MonthCalendar/pickersMonthClasses.js +0 -5
- package/YearCalendar/PickersYear.d.ts +0 -27
- package/YearCalendar/pickersYearClasses.d.ts +0 -13
- package/YearCalendar/pickersYearClasses.js +0 -5
- package/internals/components/pickersPopperClasses.d.ts +0 -9
- package/internals/components/pickersPopperClasses.js +0 -5
- package/internals/hooks/defaultizedFieldProps.d.ts +0 -18
- package/internals/hooks/defaultizedFieldProps.js +0 -40
- package/internals/hooks/useDefaultReduceAnimations.d.ts +0 -2
- package/internals/hooks/useIsLandscape.d.ts +0 -4
- package/internals/hooks/useIsLandscape.js +0 -35
- package/internals/hooks/usePicker/usePickerLayoutProps.d.ts +0 -32
- package/internals/hooks/usePicker/usePickerLayoutProps.js +0 -31
- package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.d.ts +0 -3
- package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +0 -44
- package/modern/AdapterDateFnsJalaliV3/index.js +0 -1
- package/modern/AdapterDateFnsV3/index.js +0 -1
- package/modern/MonthCalendar/pickersMonthClasses.js +0 -5
- package/modern/YearCalendar/pickersYearClasses.js +0 -5
- package/modern/internals/components/pickersPopperClasses.js +0 -5
- package/modern/internals/hooks/defaultizedFieldProps.js +0 -40
- package/modern/internals/hooks/useIsLandscape.js +0 -35
- package/modern/internals/hooks/usePicker/usePickerLayoutProps.js +0 -31
- package/modern/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +0 -44
- package/node/AdapterDateFnsV3/AdapterDateFnsV3.js +0 -299
- package/node/MonthCalendar/pickersMonthClasses.js +0 -12
- package/node/YearCalendar/pickersYearClasses.js +0 -12
- package/node/internals/components/pickersPopperClasses.js +0 -12
- package/node/internals/hooks/defaultizedFieldProps.js +0 -50
- package/node/internals/hooks/useIsLandscape.js +0 -43
- package/node/internals/hooks/usePicker/usePickerLayoutProps.js +0 -38
- package/node/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +0 -52
|
@@ -7,15 +7,14 @@ import resolveComponentProps from '@mui/utils/resolveComponentProps';
|
|
|
7
7
|
import { refType } from '@mui/utils';
|
|
8
8
|
import { singleItemValueManager } from "../internals/utils/valueManagers.js";
|
|
9
9
|
import { useDatePickerDefaultizedProps } from "../DatePicker/shared.js";
|
|
10
|
-
import { usePickerTranslations } from "../hooks/usePickerTranslations.js";
|
|
11
10
|
import { useUtils } from "../internals/hooks/useUtils.js";
|
|
12
11
|
import { validateDate, extractValidationProps } from "../validation/index.js";
|
|
13
12
|
import { useDesktopPicker } from "../internals/hooks/useDesktopPicker/index.js";
|
|
14
|
-
import { CalendarIcon } from "../icons/index.js";
|
|
15
13
|
import { DateField } from "../DateField/index.js";
|
|
16
14
|
import { renderDateViewCalendar } from "../dateViewRenderers/index.js";
|
|
17
15
|
import { resolveDateFormat } from "../internals/utils/date-utils.js";
|
|
18
|
-
|
|
16
|
+
const emptyActions = [];
|
|
17
|
+
|
|
19
18
|
/**
|
|
20
19
|
* Demos:
|
|
21
20
|
*
|
|
@@ -27,7 +26,6 @@ import { buildGetOpenDialogAriaText } from "../locales/utils/getPickersLocalizat
|
|
|
27
26
|
* - [DesktopDatePicker API](https://mui.com/x/api/date-pickers/desktop-date-picker/)
|
|
28
27
|
*/
|
|
29
28
|
const DesktopDatePicker = /*#__PURE__*/React.forwardRef(function DesktopDatePicker(inProps, ref) {
|
|
30
|
-
const translations = usePickerTranslations();
|
|
31
29
|
const utils = useUtils();
|
|
32
30
|
|
|
33
31
|
// Props with the default values common to all date pickers
|
|
@@ -40,34 +38,30 @@ const DesktopDatePicker = /*#__PURE__*/React.forwardRef(function DesktopDatePick
|
|
|
40
38
|
|
|
41
39
|
// Props with the default values specific to the desktop variant
|
|
42
40
|
const props = _extends({}, defaultizedProps, {
|
|
41
|
+
closeOnSelect: defaultizedProps.closeOnSelect ?? true,
|
|
43
42
|
viewRenderers,
|
|
44
43
|
format: resolveDateFormat(utils, defaultizedProps, false),
|
|
45
44
|
yearsPerRow: defaultizedProps.yearsPerRow ?? 4,
|
|
46
45
|
slots: _extends({
|
|
47
|
-
openPickerIcon: CalendarIcon,
|
|
48
46
|
field: DateField
|
|
49
47
|
}, defaultizedProps.slots),
|
|
50
48
|
slotProps: _extends({}, defaultizedProps.slotProps, {
|
|
51
|
-
field: ownerState => _extends({}, resolveComponentProps(defaultizedProps.slotProps?.field, ownerState), extractValidationProps(defaultizedProps),
|
|
52
|
-
ref
|
|
53
|
-
}),
|
|
49
|
+
field: ownerState => _extends({}, resolveComponentProps(defaultizedProps.slotProps?.field, ownerState), extractValidationProps(defaultizedProps)),
|
|
54
50
|
toolbar: _extends({
|
|
55
51
|
hidden: true
|
|
56
|
-
}, defaultizedProps.slotProps?.toolbar)
|
|
52
|
+
}, defaultizedProps.slotProps?.toolbar),
|
|
53
|
+
actionBar: ownerState => _extends({
|
|
54
|
+
actions: emptyActions
|
|
55
|
+
}, resolveComponentProps(defaultizedProps.slotProps?.actionBar, ownerState))
|
|
57
56
|
})
|
|
58
57
|
});
|
|
59
58
|
const {
|
|
60
59
|
renderPicker
|
|
61
60
|
} = useDesktopPicker({
|
|
61
|
+
ref,
|
|
62
62
|
props,
|
|
63
63
|
valueManager: singleItemValueManager,
|
|
64
64
|
valueType: 'date',
|
|
65
|
-
getOpenDialogAriaText: buildGetOpenDialogAriaText({
|
|
66
|
-
utils,
|
|
67
|
-
formatKey: 'fullDate',
|
|
68
|
-
contextTranslation: translations.openDatePickerDialogue,
|
|
69
|
-
propsTranslation: props.localeText?.openDatePickerDialogue
|
|
70
|
-
}),
|
|
71
65
|
validator: validateDate
|
|
72
66
|
});
|
|
73
67
|
return renderPicker();
|
|
@@ -86,8 +80,8 @@ DesktopDatePicker.propTypes = {
|
|
|
86
80
|
autoFocus: PropTypes.bool,
|
|
87
81
|
className: PropTypes.string,
|
|
88
82
|
/**
|
|
89
|
-
* If `true`, the
|
|
90
|
-
* @default
|
|
83
|
+
* If `true`, the Picker will close after submitting the full date.
|
|
84
|
+
* @default true
|
|
91
85
|
*/
|
|
92
86
|
closeOnSelect: PropTypes.bool,
|
|
93
87
|
/**
|
|
@@ -12,10 +12,8 @@ import { singleItemValueManager } from "../internals/utils/valueManagers.js";
|
|
|
12
12
|
import { DateTimeField } from "../DateTimeField/index.js";
|
|
13
13
|
import { useDateTimePickerDefaultizedProps } from "../DateTimePicker/shared.js";
|
|
14
14
|
import { renderDateViewCalendar } from "../dateViewRenderers/dateViewRenderers.js";
|
|
15
|
-
import { usePickerTranslations } from "../hooks/usePickerTranslations.js";
|
|
16
15
|
import { useUtils } from "../internals/hooks/useUtils.js";
|
|
17
16
|
import { validateDateTime, extractValidationProps } from "../validation/index.js";
|
|
18
|
-
import { CalendarIcon } from "../icons/index.js";
|
|
19
17
|
import { useDesktopPicker } from "../internals/hooks/useDesktopPicker/index.js";
|
|
20
18
|
import { resolveDateTimeFormat, resolveTimeViewsResponse } from "../internals/utils/date-time-utils.js";
|
|
21
19
|
import { renderDigitalClockTimeView, renderMultiSectionDigitalClockTimeView } from "../timeViewRenderers/index.js";
|
|
@@ -25,9 +23,13 @@ import { DesktopDateTimePickerLayout } from "./DesktopDateTimePickerLayout.js";
|
|
|
25
23
|
import { VIEW_HEIGHT } from "../internals/constants/dimensions.js";
|
|
26
24
|
import { isInternalTimeView } from "../internals/utils/time-utils.js";
|
|
27
25
|
import { isDatePickerView } from "../internals/utils/date-utils.js";
|
|
28
|
-
import { buildGetOpenDialogAriaText } from "../locales/utils/getPickersLocalization.js";
|
|
29
26
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
30
|
-
const rendererInterceptor = function
|
|
27
|
+
const rendererInterceptor = function RendererInterceptor(props) {
|
|
28
|
+
const {
|
|
29
|
+
viewRenderers,
|
|
30
|
+
popperView,
|
|
31
|
+
rendererProps
|
|
32
|
+
} = props;
|
|
31
33
|
const {
|
|
32
34
|
openTo,
|
|
33
35
|
focusedView,
|
|
@@ -46,8 +48,10 @@ const rendererInterceptor = function rendererInterceptor(inViewRenderers, popper
|
|
|
46
48
|
}]
|
|
47
49
|
});
|
|
48
50
|
const isTimeViewActive = isInternalTimeView(popperView);
|
|
51
|
+
const dateView = isTimeViewActive ? 'day' : popperView;
|
|
52
|
+
const timeView = isTimeViewActive ? popperView : 'hours';
|
|
49
53
|
return /*#__PURE__*/_jsxs(React.Fragment, {
|
|
50
|
-
children: [
|
|
54
|
+
children: [viewRenderers[dateView]?.(_extends({}, rendererProps, {
|
|
51
55
|
view: !isTimeViewActive ? popperView : 'day',
|
|
52
56
|
focusedView: focusedView && isDatePickerView(focusedView) ? focusedView : null,
|
|
53
57
|
views: rendererProps.views.filter(isDatePickerView),
|
|
@@ -60,7 +64,7 @@ const rendererInterceptor = function rendererInterceptor(inViewRenderers, popper
|
|
|
60
64
|
sx: {
|
|
61
65
|
gridColumn: 2
|
|
62
66
|
}
|
|
63
|
-
}),
|
|
67
|
+
}), viewRenderers[timeView]?.(_extends({}, finalProps, {
|
|
64
68
|
view: isTimeViewActive ? popperView : 'hours',
|
|
65
69
|
focusedView: focusedView && isInternalTimeView(focusedView) ? focusedView : null,
|
|
66
70
|
openTo: isInternalTimeView(openTo) ? openTo : 'hours',
|
|
@@ -83,7 +87,6 @@ const rendererInterceptor = function rendererInterceptor(inViewRenderers, popper
|
|
|
83
87
|
* - [DesktopDateTimePicker API](https://mui.com/x/api/date-pickers/desktop-date-time-picker/)
|
|
84
88
|
*/
|
|
85
89
|
const DesktopDateTimePicker = /*#__PURE__*/React.forwardRef(function DesktopDateTimePicker(inProps, ref) {
|
|
86
|
-
const translations = usePickerTranslations();
|
|
87
90
|
const utils = useUtils();
|
|
88
91
|
|
|
89
92
|
// Props with the default values common to all date time pickers
|
|
@@ -108,7 +111,6 @@ const DesktopDateTimePicker = /*#__PURE__*/React.forwardRef(function DesktopDate
|
|
|
108
111
|
// Need to avoid adding the `meridiem` view when unexpected renderer is specified
|
|
109
112
|
const shouldHoursRendererContainMeridiemView = viewRenderers.hours?.name === renderMultiSectionDigitalClockTimeView.name;
|
|
110
113
|
const views = !shouldHoursRendererContainMeridiemView ? resolvedViews.filter(view => view !== 'meridiem') : resolvedViews;
|
|
111
|
-
const actionBarActions = shouldRenderTimeInASingleColumn ? [] : ['accept'];
|
|
112
114
|
|
|
113
115
|
// Props with the default values specific to the desktop variant
|
|
114
116
|
const props = _extends({}, defaultizedProps, {
|
|
@@ -122,38 +124,26 @@ const DesktopDateTimePicker = /*#__PURE__*/React.forwardRef(function DesktopDate
|
|
|
122
124
|
shouldRenderTimeInASingleColumn,
|
|
123
125
|
slots: _extends({
|
|
124
126
|
field: DateTimeField,
|
|
125
|
-
layout: DesktopDateTimePickerLayout
|
|
126
|
-
openPickerIcon: CalendarIcon
|
|
127
|
+
layout: DesktopDateTimePickerLayout
|
|
127
128
|
}, defaultizedProps.slots),
|
|
128
129
|
slotProps: _extends({}, defaultizedProps.slotProps, {
|
|
129
|
-
field: ownerState => _extends({}, resolveComponentProps(defaultizedProps.slotProps?.field, ownerState), extractValidationProps(defaultizedProps),
|
|
130
|
-
ref
|
|
131
|
-
}),
|
|
130
|
+
field: ownerState => _extends({}, resolveComponentProps(defaultizedProps.slotProps?.field, ownerState), extractValidationProps(defaultizedProps)),
|
|
132
131
|
toolbar: _extends({
|
|
133
132
|
hidden: true,
|
|
134
|
-
ampmInClock
|
|
135
|
-
toolbarVariant: 'desktop'
|
|
133
|
+
ampmInClock
|
|
136
134
|
}, defaultizedProps.slotProps?.toolbar),
|
|
137
135
|
tabs: _extends({
|
|
138
136
|
hidden: true
|
|
139
|
-
}, defaultizedProps.slotProps?.tabs)
|
|
140
|
-
actionBar: ownerState => _extends({
|
|
141
|
-
actions: actionBarActions
|
|
142
|
-
}, resolveComponentProps(defaultizedProps.slotProps?.actionBar, ownerState))
|
|
137
|
+
}, defaultizedProps.slotProps?.tabs)
|
|
143
138
|
})
|
|
144
139
|
});
|
|
145
140
|
const {
|
|
146
141
|
renderPicker
|
|
147
142
|
} = useDesktopPicker({
|
|
143
|
+
ref,
|
|
148
144
|
props,
|
|
149
145
|
valueManager: singleItemValueManager,
|
|
150
146
|
valueType: 'date-time',
|
|
151
|
-
getOpenDialogAriaText: buildGetOpenDialogAriaText({
|
|
152
|
-
utils,
|
|
153
|
-
formatKey: 'fullDate',
|
|
154
|
-
contextTranslation: translations.openDatePickerDialogue,
|
|
155
|
-
propsTranslation: props.localeText?.openDatePickerDialogue
|
|
156
|
-
}),
|
|
157
147
|
validator: validateDateTime,
|
|
158
148
|
rendererInterceptor
|
|
159
149
|
});
|
|
@@ -183,8 +173,8 @@ DesktopDateTimePicker.propTypes = {
|
|
|
183
173
|
autoFocus: PropTypes.bool,
|
|
184
174
|
className: PropTypes.string,
|
|
185
175
|
/**
|
|
186
|
-
* If `true`, the
|
|
187
|
-
* @default
|
|
176
|
+
* If `true`, the Picker will close after submitting the full date.
|
|
177
|
+
* @default false
|
|
188
178
|
*/
|
|
189
179
|
closeOnSelect: PropTypes.bool,
|
|
190
180
|
/**
|
|
@@ -1,33 +1,31 @@
|
|
|
1
|
-
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
1
|
import * as React from 'react';
|
|
3
2
|
import PropTypes from 'prop-types';
|
|
4
3
|
import clsx from 'clsx';
|
|
5
|
-
import { useRtl } from '@mui/system/RtlProvider';
|
|
6
4
|
import Divider from '@mui/material/Divider';
|
|
7
5
|
import { PickersLayoutContentWrapper, PickersLayoutRoot, pickersLayoutClasses, usePickerLayout } from "../PickersLayout/index.js";
|
|
6
|
+
import { usePickerContext } from "../hooks/usePickerContext.js";
|
|
8
7
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
8
|
/**
|
|
10
9
|
* @ignore - internal component.
|
|
11
10
|
*/
|
|
12
11
|
const DesktopDateTimePickerLayout = /*#__PURE__*/React.forwardRef(function DesktopDateTimePickerLayout(props, ref) {
|
|
13
|
-
const isRtl = useRtl();
|
|
14
12
|
const {
|
|
15
13
|
toolbar,
|
|
16
14
|
tabs,
|
|
17
15
|
content,
|
|
18
16
|
actionBar,
|
|
19
|
-
shortcuts
|
|
17
|
+
shortcuts,
|
|
18
|
+
ownerState
|
|
20
19
|
} = usePickerLayout(props);
|
|
20
|
+
const {
|
|
21
|
+
orientation
|
|
22
|
+
} = usePickerContext();
|
|
21
23
|
const {
|
|
22
24
|
sx,
|
|
23
25
|
className,
|
|
24
|
-
isLandscape,
|
|
25
26
|
classes
|
|
26
27
|
} = props;
|
|
27
28
|
const isActionBarVisible = actionBar && (actionBar.props.actions?.length ?? 0) > 0;
|
|
28
|
-
const ownerState = _extends({}, props, {
|
|
29
|
-
isRtl
|
|
30
|
-
});
|
|
31
29
|
return /*#__PURE__*/_jsxs(PickersLayoutRoot, {
|
|
32
30
|
ref: ref,
|
|
33
31
|
className: clsx(pickersLayoutClasses.root, classes?.root, className),
|
|
@@ -41,8 +39,9 @@ const DesktopDateTimePickerLayout = /*#__PURE__*/React.forwardRef(function Deskt
|
|
|
41
39
|
}
|
|
42
40
|
}, ...(Array.isArray(sx) ? sx : [sx])],
|
|
43
41
|
ownerState: ownerState,
|
|
44
|
-
children: [
|
|
42
|
+
children: [orientation === 'landscape' ? shortcuts : toolbar, orientation === 'landscape' ? toolbar : shortcuts, /*#__PURE__*/_jsxs(PickersLayoutContentWrapper, {
|
|
45
43
|
className: clsx(pickersLayoutClasses.contentWrapper, classes?.contentWrapper),
|
|
44
|
+
ownerState: ownerState,
|
|
46
45
|
sx: {
|
|
47
46
|
display: 'grid'
|
|
48
47
|
},
|
|
@@ -66,26 +65,6 @@ process.env.NODE_ENV !== "production" ? DesktopDateTimePickerLayout.propTypes =
|
|
|
66
65
|
*/
|
|
67
66
|
classes: PropTypes.object,
|
|
68
67
|
className: PropTypes.string,
|
|
69
|
-
isLandscape: PropTypes.bool.isRequired,
|
|
70
|
-
/**
|
|
71
|
-
* `true` if the application is in right-to-left direction.
|
|
72
|
-
*/
|
|
73
|
-
isRtl: PropTypes.bool.isRequired,
|
|
74
|
-
isValid: PropTypes.func.isRequired,
|
|
75
|
-
onAccept: PropTypes.func.isRequired,
|
|
76
|
-
onCancel: PropTypes.func.isRequired,
|
|
77
|
-
onChange: PropTypes.func.isRequired,
|
|
78
|
-
onClear: PropTypes.func.isRequired,
|
|
79
|
-
onClose: PropTypes.func.isRequired,
|
|
80
|
-
onDismiss: PropTypes.func.isRequired,
|
|
81
|
-
onOpen: PropTypes.func.isRequired,
|
|
82
|
-
onSelectShortcut: PropTypes.func.isRequired,
|
|
83
|
-
onSetToday: PropTypes.func.isRequired,
|
|
84
|
-
onViewChange: PropTypes.func.isRequired,
|
|
85
|
-
/**
|
|
86
|
-
* Force rendering in particular orientation.
|
|
87
|
-
*/
|
|
88
|
-
orientation: PropTypes.oneOf(['landscape', 'portrait']),
|
|
89
68
|
/**
|
|
90
69
|
* The props used for each component slot.
|
|
91
70
|
* @default {}
|
|
@@ -99,10 +78,6 @@ process.env.NODE_ENV !== "production" ? DesktopDateTimePickerLayout.propTypes =
|
|
|
99
78
|
/**
|
|
100
79
|
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
101
80
|
*/
|
|
102
|
-
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])
|
|
103
|
-
value: PropTypes.any,
|
|
104
|
-
view: PropTypes.oneOf(['day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']),
|
|
105
|
-
views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']).isRequired).isRequired,
|
|
106
|
-
wrapperVariant: PropTypes.oneOf(['desktop', 'mobile'])
|
|
81
|
+
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])
|
|
107
82
|
} : void 0;
|
|
108
83
|
export { DesktopDateTimePickerLayout };
|
|
@@ -8,15 +8,12 @@ import { refType } from '@mui/utils';
|
|
|
8
8
|
import { singleItemValueManager } from "../internals/utils/valueManagers.js";
|
|
9
9
|
import { TimeField } from "../TimeField/index.js";
|
|
10
10
|
import { useTimePickerDefaultizedProps } from "../TimePicker/shared.js";
|
|
11
|
-
import { usePickerTranslations } from "../hooks/usePickerTranslations.js";
|
|
12
11
|
import { useUtils } from "../internals/hooks/useUtils.js";
|
|
13
12
|
import { extractValidationProps, validateTime } from "../validation/index.js";
|
|
14
|
-
import { ClockIcon } from "../icons/index.js";
|
|
15
13
|
import { useDesktopPicker } from "../internals/hooks/useDesktopPicker/index.js";
|
|
16
14
|
import { renderDigitalClockTimeView, renderMultiSectionDigitalClockTimeView } from "../timeViewRenderers/index.js";
|
|
17
15
|
import { resolveTimeFormat } from "../internals/utils/time-utils.js";
|
|
18
16
|
import { resolveTimeViewsResponse } from "../internals/utils/date-time-utils.js";
|
|
19
|
-
import { buildGetOpenDialogAriaText } from "../locales/utils/getPickersLocalization.js";
|
|
20
17
|
/**
|
|
21
18
|
* Demos:
|
|
22
19
|
*
|
|
@@ -28,7 +25,6 @@ import { buildGetOpenDialogAriaText } from "../locales/utils/getPickersLocalizat
|
|
|
28
25
|
* - [DesktopTimePicker API](https://mui.com/x/api/date-pickers/desktop-time-picker/)
|
|
29
26
|
*/
|
|
30
27
|
const DesktopTimePicker = /*#__PURE__*/React.forwardRef(function DesktopTimePicker(inProps, ref) {
|
|
31
|
-
const translations = usePickerTranslations();
|
|
32
28
|
const utils = useUtils();
|
|
33
29
|
|
|
34
30
|
// Props with the default values common to all time pickers
|
|
@@ -46,7 +42,6 @@ const DesktopTimePicker = /*#__PURE__*/React.forwardRef(function DesktopTimePick
|
|
|
46
42
|
meridiem: renderTimeView
|
|
47
43
|
}, defaultizedProps.viewRenderers);
|
|
48
44
|
const ampmInClock = defaultizedProps.ampmInClock ?? true;
|
|
49
|
-
const actionBarActions = shouldRenderTimeInASingleColumn ? [] : ['accept'];
|
|
50
45
|
// Need to avoid adding the `meridiem` view when unexpected renderer is specified
|
|
51
46
|
const shouldHoursRendererContainMeridiemView = viewRenderers.hours?.name === renderMultiSectionDigitalClockTimeView.name;
|
|
52
47
|
const views = !shouldHoursRendererContainMeridiemView ? resolvedViews.filter(view => view !== 'meridiem') : resolvedViews;
|
|
@@ -61,34 +56,23 @@ const DesktopTimePicker = /*#__PURE__*/React.forwardRef(function DesktopTimePick
|
|
|
61
56
|
// Allows for easy view lifecycle management
|
|
62
57
|
views: shouldRenderTimeInASingleColumn ? ['hours'] : views,
|
|
63
58
|
slots: _extends({
|
|
64
|
-
field: TimeField
|
|
65
|
-
openPickerIcon: ClockIcon
|
|
59
|
+
field: TimeField
|
|
66
60
|
}, defaultizedProps.slots),
|
|
67
61
|
slotProps: _extends({}, defaultizedProps.slotProps, {
|
|
68
|
-
field: ownerState => _extends({}, resolveComponentProps(defaultizedProps.slotProps?.field, ownerState), extractValidationProps(defaultizedProps),
|
|
69
|
-
ref
|
|
70
|
-
}),
|
|
62
|
+
field: ownerState => _extends({}, resolveComponentProps(defaultizedProps.slotProps?.field, ownerState), extractValidationProps(defaultizedProps)),
|
|
71
63
|
toolbar: _extends({
|
|
72
64
|
hidden: true,
|
|
73
65
|
ampmInClock
|
|
74
|
-
}, defaultizedProps.slotProps?.toolbar)
|
|
75
|
-
actionBar: _extends({
|
|
76
|
-
actions: actionBarActions
|
|
77
|
-
}, defaultizedProps.slotProps?.actionBar)
|
|
66
|
+
}, defaultizedProps.slotProps?.toolbar)
|
|
78
67
|
})
|
|
79
68
|
});
|
|
80
69
|
const {
|
|
81
70
|
renderPicker
|
|
82
71
|
} = useDesktopPicker({
|
|
72
|
+
ref,
|
|
83
73
|
props,
|
|
84
74
|
valueManager: singleItemValueManager,
|
|
85
75
|
valueType: 'time',
|
|
86
|
-
getOpenDialogAriaText: buildGetOpenDialogAriaText({
|
|
87
|
-
utils,
|
|
88
|
-
formatKey: 'fullTime',
|
|
89
|
-
contextTranslation: translations.openTimePickerDialogue,
|
|
90
|
-
propsTranslation: props.localeText?.openTimePickerDialogue
|
|
91
|
-
}),
|
|
92
76
|
validator: validateTime
|
|
93
77
|
});
|
|
94
78
|
return renderPicker();
|
|
@@ -117,8 +101,8 @@ DesktopTimePicker.propTypes = {
|
|
|
117
101
|
autoFocus: PropTypes.bool,
|
|
118
102
|
className: PropTypes.string,
|
|
119
103
|
/**
|
|
120
|
-
* If `true`, the
|
|
121
|
-
* @default
|
|
104
|
+
* If `true`, the Picker will close after submitting the full date.
|
|
105
|
+
* @default false
|
|
122
106
|
*/
|
|
123
107
|
closeOnSelect: PropTypes.bool,
|
|
124
108
|
/**
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
4
4
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
5
|
-
const _excluded = ["ampm", "timeStep", "autoFocus", "slots", "slotProps", "value", "defaultValue", "referenceDate", "disableIgnoringDatePartForTimeValidation", "maxTime", "minTime", "disableFuture", "disablePast", "minutesStep", "shouldDisableTime", "onChange", "view", "openTo", "onViewChange", "focusedView", "onFocusedViewChange", "className", "disabled", "readOnly", "views", "skipDisabled", "timezone"];
|
|
5
|
+
const _excluded = ["ampm", "timeStep", "autoFocus", "slots", "slotProps", "value", "defaultValue", "referenceDate", "disableIgnoringDatePartForTimeValidation", "maxTime", "minTime", "disableFuture", "disablePast", "minutesStep", "shouldDisableTime", "onChange", "view", "openTo", "onViewChange", "focusedView", "onFocusedViewChange", "className", "classes", "disabled", "readOnly", "views", "skipDisabled", "timezone"];
|
|
6
6
|
import * as React from 'react';
|
|
7
7
|
import clsx from 'clsx';
|
|
8
8
|
import PropTypes from 'prop-types';
|
|
@@ -24,11 +24,9 @@ import { useControlledValueWithTimezone } from "../internals/hooks/useValueWithT
|
|
|
24
24
|
import { singleItemValueManager } from "../internals/utils/valueManagers.js";
|
|
25
25
|
import { useClockReferenceDate } from "../internals/hooks/useClockReferenceDate.js";
|
|
26
26
|
import { getFocusedListItemIndex } from "../internals/utils/utils.js";
|
|
27
|
+
import { usePickerPrivateContext } from "../internals/hooks/usePickerPrivateContext.js";
|
|
27
28
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
28
|
-
const useUtilityClasses =
|
|
29
|
-
const {
|
|
30
|
-
classes
|
|
31
|
-
} = ownerState;
|
|
29
|
+
const useUtilityClasses = classes => {
|
|
32
30
|
const slots = {
|
|
33
31
|
root: ['root'],
|
|
34
32
|
list: ['list'],
|
|
@@ -49,7 +47,7 @@ const DigitalClockRoot = styled(PickerViewRoot, {
|
|
|
49
47
|
maxHeight: DIGITAL_CLOCK_VIEW_HEIGHT,
|
|
50
48
|
variants: [{
|
|
51
49
|
props: {
|
|
52
|
-
|
|
50
|
+
hasDigitalClockAlreadyBeenRendered: true
|
|
53
51
|
},
|
|
54
52
|
style: {
|
|
55
53
|
'@media (prefers-reduced-motion: no-preference)': {
|
|
@@ -133,6 +131,7 @@ export const DigitalClock = /*#__PURE__*/React.forwardRef(function DigitalClock(
|
|
|
133
131
|
focusedView,
|
|
134
132
|
onFocusedViewChange,
|
|
135
133
|
className,
|
|
134
|
+
classes: classesProp,
|
|
136
135
|
disabled,
|
|
137
136
|
readOnly,
|
|
138
137
|
views = ['hours'],
|
|
@@ -155,15 +154,18 @@ export const DigitalClock = /*#__PURE__*/React.forwardRef(function DigitalClock(
|
|
|
155
154
|
});
|
|
156
155
|
const translations = usePickerTranslations();
|
|
157
156
|
const now = useNow(timezone);
|
|
158
|
-
const
|
|
159
|
-
|
|
160
|
-
}
|
|
161
|
-
const
|
|
157
|
+
const {
|
|
158
|
+
ownerState: pickerOwnerState
|
|
159
|
+
} = usePickerPrivateContext();
|
|
160
|
+
const ownerState = _extends({}, pickerOwnerState, {
|
|
161
|
+
hasDigitalClockAlreadyBeenRendered: !!containerRef.current
|
|
162
|
+
});
|
|
163
|
+
const classes = useUtilityClasses(classesProp);
|
|
162
164
|
const ClockItem = slots?.digitalClockItem ?? DigitalClockItem;
|
|
163
165
|
const clockItemProps = useSlotProps({
|
|
164
166
|
elementType: ClockItem,
|
|
165
167
|
externalSlotProps: slotProps?.digitalClockItem,
|
|
166
|
-
ownerState
|
|
168
|
+
ownerState,
|
|
167
169
|
className: classes.item
|
|
168
170
|
});
|
|
169
171
|
const valueOrReferenceDate = useClockReferenceDate({
|
|
@@ -7,14 +7,12 @@ import resolveComponentProps from '@mui/utils/resolveComponentProps';
|
|
|
7
7
|
import { refType } from '@mui/utils';
|
|
8
8
|
import { useMobilePicker } from "../internals/hooks/useMobilePicker/index.js";
|
|
9
9
|
import { useDatePickerDefaultizedProps } from "../DatePicker/shared.js";
|
|
10
|
-
import { usePickerTranslations } from "../hooks/usePickerTranslations.js";
|
|
11
10
|
import { useUtils } from "../internals/hooks/useUtils.js";
|
|
12
11
|
import { extractValidationProps, validateDate } from "../validation/index.js";
|
|
13
12
|
import { DateField } from "../DateField/index.js";
|
|
14
13
|
import { singleItemValueManager } from "../internals/utils/valueManagers.js";
|
|
15
14
|
import { renderDateViewCalendar } from "../dateViewRenderers/index.js";
|
|
16
15
|
import { resolveDateFormat } from "../internals/utils/date-utils.js";
|
|
17
|
-
import { buildGetOpenDialogAriaText } from "../locales/utils/getPickersLocalization.js";
|
|
18
16
|
/**
|
|
19
17
|
* Demos:
|
|
20
18
|
*
|
|
@@ -26,7 +24,6 @@ import { buildGetOpenDialogAriaText } from "../locales/utils/getPickersLocalizat
|
|
|
26
24
|
* - [MobileDatePicker API](https://mui.com/x/api/date-pickers/mobile-date-picker/)
|
|
27
25
|
*/
|
|
28
26
|
const MobileDatePicker = /*#__PURE__*/React.forwardRef(function MobileDatePicker(inProps, ref) {
|
|
29
|
-
const translations = usePickerTranslations();
|
|
30
27
|
const utils = useUtils();
|
|
31
28
|
|
|
32
29
|
// Props with the default values common to all date pickers
|
|
@@ -45,9 +42,7 @@ const MobileDatePicker = /*#__PURE__*/React.forwardRef(function MobileDatePicker
|
|
|
45
42
|
field: DateField
|
|
46
43
|
}, defaultizedProps.slots),
|
|
47
44
|
slotProps: _extends({}, defaultizedProps.slotProps, {
|
|
48
|
-
field: ownerState => _extends({}, resolveComponentProps(defaultizedProps.slotProps?.field, ownerState), extractValidationProps(defaultizedProps),
|
|
49
|
-
ref
|
|
50
|
-
}),
|
|
45
|
+
field: ownerState => _extends({}, resolveComponentProps(defaultizedProps.slotProps?.field, ownerState), extractValidationProps(defaultizedProps)),
|
|
51
46
|
toolbar: _extends({
|
|
52
47
|
hidden: false
|
|
53
48
|
}, defaultizedProps.slotProps?.toolbar)
|
|
@@ -56,15 +51,10 @@ const MobileDatePicker = /*#__PURE__*/React.forwardRef(function MobileDatePicker
|
|
|
56
51
|
const {
|
|
57
52
|
renderPicker
|
|
58
53
|
} = useMobilePicker({
|
|
54
|
+
ref,
|
|
59
55
|
props,
|
|
60
56
|
valueManager: singleItemValueManager,
|
|
61
57
|
valueType: 'date',
|
|
62
|
-
getOpenDialogAriaText: buildGetOpenDialogAriaText({
|
|
63
|
-
utils,
|
|
64
|
-
formatKey: 'fullDate',
|
|
65
|
-
contextTranslation: translations.openDatePickerDialogue,
|
|
66
|
-
propsTranslation: props.localeText?.openDatePickerDialogue
|
|
67
|
-
}),
|
|
68
58
|
validator: validateDate
|
|
69
59
|
});
|
|
70
60
|
return renderPicker();
|
|
@@ -83,8 +73,8 @@ MobileDatePicker.propTypes = {
|
|
|
83
73
|
autoFocus: PropTypes.bool,
|
|
84
74
|
className: PropTypes.string,
|
|
85
75
|
/**
|
|
86
|
-
* If `true`, the
|
|
87
|
-
* @default
|
|
76
|
+
* If `true`, the Picker will close after submitting the full date.
|
|
77
|
+
* @default false
|
|
88
78
|
*/
|
|
89
79
|
closeOnSelect: PropTypes.bool,
|
|
90
80
|
/**
|
|
@@ -8,14 +8,12 @@ import { refType } from '@mui/utils';
|
|
|
8
8
|
import { singleItemValueManager } from "../internals/utils/valueManagers.js";
|
|
9
9
|
import { DateTimeField } from "../DateTimeField/index.js";
|
|
10
10
|
import { useDateTimePickerDefaultizedProps } from "../DateTimePicker/shared.js";
|
|
11
|
-
import { usePickerTranslations } from "../hooks/usePickerTranslations.js";
|
|
12
11
|
import { useUtils } from "../internals/hooks/useUtils.js";
|
|
13
12
|
import { extractValidationProps, validateDateTime } from "../validation/index.js";
|
|
14
13
|
import { useMobilePicker } from "../internals/hooks/useMobilePicker/index.js";
|
|
15
14
|
import { renderDateViewCalendar } from "../dateViewRenderers/index.js";
|
|
16
15
|
import { renderTimeViewClock } from "../timeViewRenderers/index.js";
|
|
17
16
|
import { resolveDateTimeFormat } from "../internals/utils/date-time-utils.js";
|
|
18
|
-
import { buildGetOpenDialogAriaText } from "../locales/utils/getPickersLocalization.js";
|
|
19
17
|
/**
|
|
20
18
|
* Demos:
|
|
21
19
|
*
|
|
@@ -27,7 +25,6 @@ import { buildGetOpenDialogAriaText } from "../locales/utils/getPickersLocalizat
|
|
|
27
25
|
* - [MobileDateTimePicker API](https://mui.com/x/api/date-pickers/mobile-date-time-picker/)
|
|
28
26
|
*/
|
|
29
27
|
const MobileDateTimePicker = /*#__PURE__*/React.forwardRef(function MobileDateTimePicker(inProps, ref) {
|
|
30
|
-
const translations = usePickerTranslations();
|
|
31
28
|
const utils = useUtils();
|
|
32
29
|
|
|
33
30
|
// Props with the default values common to all date time pickers
|
|
@@ -51,9 +48,7 @@ const MobileDateTimePicker = /*#__PURE__*/React.forwardRef(function MobileDateTi
|
|
|
51
48
|
field: DateTimeField
|
|
52
49
|
}, defaultizedProps.slots),
|
|
53
50
|
slotProps: _extends({}, defaultizedProps.slotProps, {
|
|
54
|
-
field: ownerState => _extends({}, resolveComponentProps(defaultizedProps.slotProps?.field, ownerState), extractValidationProps(defaultizedProps),
|
|
55
|
-
ref
|
|
56
|
-
}),
|
|
51
|
+
field: ownerState => _extends({}, resolveComponentProps(defaultizedProps.slotProps?.field, ownerState), extractValidationProps(defaultizedProps)),
|
|
57
52
|
toolbar: _extends({
|
|
58
53
|
hidden: false,
|
|
59
54
|
ampmInClock
|
|
@@ -66,15 +61,10 @@ const MobileDateTimePicker = /*#__PURE__*/React.forwardRef(function MobileDateTi
|
|
|
66
61
|
const {
|
|
67
62
|
renderPicker
|
|
68
63
|
} = useMobilePicker({
|
|
64
|
+
ref,
|
|
69
65
|
props,
|
|
70
66
|
valueManager: singleItemValueManager,
|
|
71
67
|
valueType: 'date-time',
|
|
72
|
-
getOpenDialogAriaText: buildGetOpenDialogAriaText({
|
|
73
|
-
utils,
|
|
74
|
-
formatKey: 'fullDate',
|
|
75
|
-
contextTranslation: translations.openDatePickerDialogue,
|
|
76
|
-
propsTranslation: props.localeText?.openDatePickerDialogue
|
|
77
|
-
}),
|
|
78
68
|
validator: validateDateTime
|
|
79
69
|
});
|
|
80
70
|
return renderPicker();
|
|
@@ -103,8 +93,8 @@ MobileDateTimePicker.propTypes = {
|
|
|
103
93
|
autoFocus: PropTypes.bool,
|
|
104
94
|
className: PropTypes.string,
|
|
105
95
|
/**
|
|
106
|
-
* If `true`, the
|
|
107
|
-
* @default
|
|
96
|
+
* If `true`, the Picker will close after submitting the full date.
|
|
97
|
+
* @default false
|
|
108
98
|
*/
|
|
109
99
|
closeOnSelect: PropTypes.bool,
|
|
110
100
|
/**
|
|
@@ -8,13 +8,11 @@ import { refType } from '@mui/utils';
|
|
|
8
8
|
import { singleItemValueManager } from "../internals/utils/valueManagers.js";
|
|
9
9
|
import { TimeField } from "../TimeField/index.js";
|
|
10
10
|
import { useTimePickerDefaultizedProps } from "../TimePicker/shared.js";
|
|
11
|
-
import { usePickerTranslations } from "../hooks/usePickerTranslations.js";
|
|
12
11
|
import { useUtils } from "../internals/hooks/useUtils.js";
|
|
13
12
|
import { extractValidationProps, validateTime } from "../validation/index.js";
|
|
14
13
|
import { useMobilePicker } from "../internals/hooks/useMobilePicker/index.js";
|
|
15
14
|
import { renderTimeViewClock } from "../timeViewRenderers/index.js";
|
|
16
15
|
import { resolveTimeFormat } from "../internals/utils/time-utils.js";
|
|
17
|
-
import { buildGetOpenDialogAriaText } from "../locales/utils/getPickersLocalization.js";
|
|
18
16
|
/**
|
|
19
17
|
* Demos:
|
|
20
18
|
*
|
|
@@ -26,7 +24,6 @@ import { buildGetOpenDialogAriaText } from "../locales/utils/getPickersLocalizat
|
|
|
26
24
|
* - [MobileTimePicker API](https://mui.com/x/api/date-pickers/mobile-time-picker/)
|
|
27
25
|
*/
|
|
28
26
|
const MobileTimePicker = /*#__PURE__*/React.forwardRef(function MobileTimePicker(inProps, ref) {
|
|
29
|
-
const translations = usePickerTranslations();
|
|
30
27
|
const utils = useUtils();
|
|
31
28
|
|
|
32
29
|
// Props with the default values common to all time pickers
|
|
@@ -47,9 +44,7 @@ const MobileTimePicker = /*#__PURE__*/React.forwardRef(function MobileTimePicker
|
|
|
47
44
|
field: TimeField
|
|
48
45
|
}, defaultizedProps.slots),
|
|
49
46
|
slotProps: _extends({}, defaultizedProps.slotProps, {
|
|
50
|
-
field: ownerState => _extends({}, resolveComponentProps(defaultizedProps.slotProps?.field, ownerState), extractValidationProps(defaultizedProps),
|
|
51
|
-
ref
|
|
52
|
-
}),
|
|
47
|
+
field: ownerState => _extends({}, resolveComponentProps(defaultizedProps.slotProps?.field, ownerState), extractValidationProps(defaultizedProps)),
|
|
53
48
|
toolbar: _extends({
|
|
54
49
|
hidden: false,
|
|
55
50
|
ampmInClock
|
|
@@ -59,15 +54,10 @@ const MobileTimePicker = /*#__PURE__*/React.forwardRef(function MobileTimePicker
|
|
|
59
54
|
const {
|
|
60
55
|
renderPicker
|
|
61
56
|
} = useMobilePicker({
|
|
57
|
+
ref,
|
|
62
58
|
props,
|
|
63
59
|
valueManager: singleItemValueManager,
|
|
64
60
|
valueType: 'time',
|
|
65
|
-
getOpenDialogAriaText: buildGetOpenDialogAriaText({
|
|
66
|
-
utils,
|
|
67
|
-
formatKey: 'fullTime',
|
|
68
|
-
contextTranslation: translations.openTimePickerDialogue,
|
|
69
|
-
propsTranslation: props.localeText?.openTimePickerDialogue
|
|
70
|
-
}),
|
|
71
61
|
validator: validateTime
|
|
72
62
|
});
|
|
73
63
|
return renderPicker();
|
|
@@ -96,8 +86,8 @@ MobileTimePicker.propTypes = {
|
|
|
96
86
|
autoFocus: PropTypes.bool,
|
|
97
87
|
className: PropTypes.string,
|
|
98
88
|
/**
|
|
99
|
-
* If `true`, the
|
|
100
|
-
* @default
|
|
89
|
+
* If `true`, the Picker will close after submitting the full date.
|
|
90
|
+
* @default false
|
|
101
91
|
*/
|
|
102
92
|
closeOnSelect: PropTypes.bool,
|
|
103
93
|
/**
|