@mui/x-date-pickers 8.0.0-alpha.1 → 8.0.0-alpha.11
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 +2007 -230
- package/DateCalendar/DateCalendar.js +41 -22
- package/DateCalendar/DateCalendar.types.d.ts +2 -1
- package/DateCalendar/DayCalendar.d.ts +1 -2
- package/DateCalendar/DayCalendar.js +12 -36
- 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 +13 -27
- package/DateCalendar/useCalendarState.js +65 -55
- 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 +12 -9
- package/PickersCalendarHeader/PickersCalendarHeader.types.d.ts +4 -6
- 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 +45 -38
- 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 +41 -22
- package/modern/DateCalendar/DayCalendar.js +12 -36
- package/modern/DateCalendar/PickersFadeTransitionGroup.js +4 -6
- package/modern/DateCalendar/PickersSlideTransition.js +12 -5
- package/modern/DateCalendar/useCalendarState.js +65 -55
- 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 +12 -9
- 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 +45 -38
- 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 +41 -22
- package/node/DateCalendar/DayCalendar.js +12 -37
- package/node/DateCalendar/PickersFadeTransitionGroup.js +4 -6
- package/node/DateCalendar/PickersSlideTransition.js +12 -5
- package/node/DateCalendar/useCalendarState.js +66 -57
- 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 +12 -9
- 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 +45 -38
- 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
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
1
3
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
4
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
-
const _excluded = ["autoFocus", "onChange", "className", "disabled", "readOnly", "items", "active", "slots", "slotProps", "skipDisabled"];
|
|
5
|
+
const _excluded = ["autoFocus", "onChange", "className", "classes", "disabled", "readOnly", "items", "active", "slots", "slotProps", "skipDisabled"];
|
|
4
6
|
import * as React from 'react';
|
|
5
7
|
import clsx from 'clsx';
|
|
6
8
|
import { alpha, styled, useThemeProps } from '@mui/material/styles';
|
|
@@ -11,11 +13,9 @@ import useForkRef from '@mui/utils/useForkRef';
|
|
|
11
13
|
import { getMultiSectionDigitalClockSectionUtilityClass } from "./multiSectionDigitalClockSectionClasses.js";
|
|
12
14
|
import { DIGITAL_CLOCK_VIEW_HEIGHT, MULTI_SECTION_CLOCK_SECTION_WIDTH } from "../internals/constants/dimensions.js";
|
|
13
15
|
import { getFocusedListItemIndex } from "../internals/utils/utils.js";
|
|
16
|
+
import { usePickerPrivateContext } from "../internals/hooks/usePickerPrivateContext.js";
|
|
14
17
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
15
|
-
const useUtilityClasses =
|
|
16
|
-
const {
|
|
17
|
-
classes
|
|
18
|
-
} = ownerState;
|
|
18
|
+
const useUtilityClasses = classes => {
|
|
19
19
|
const slots = {
|
|
20
20
|
root: ['root'],
|
|
21
21
|
item: ['item']
|
|
@@ -55,7 +55,7 @@ const MultiSectionDigitalClockSectionRoot = styled(MenuList, {
|
|
|
55
55
|
},
|
|
56
56
|
variants: [{
|
|
57
57
|
props: {
|
|
58
|
-
|
|
58
|
+
hasDigitalClockAlreadyBeenRendered: true
|
|
59
59
|
},
|
|
60
60
|
style: {
|
|
61
61
|
'@media (prefers-reduced-motion: no-preference)': {
|
|
@@ -107,6 +107,7 @@ export const MultiSectionDigitalClockSection = /*#__PURE__*/React.forwardRef(fun
|
|
|
107
107
|
autoFocus,
|
|
108
108
|
onChange,
|
|
109
109
|
className,
|
|
110
|
+
classes: classesProp,
|
|
110
111
|
disabled,
|
|
111
112
|
readOnly,
|
|
112
113
|
items,
|
|
@@ -116,10 +117,13 @@ export const MultiSectionDigitalClockSection = /*#__PURE__*/React.forwardRef(fun
|
|
|
116
117
|
skipDisabled
|
|
117
118
|
} = props,
|
|
118
119
|
other = _objectWithoutPropertiesLoose(props, _excluded);
|
|
119
|
-
const
|
|
120
|
-
|
|
121
|
-
}
|
|
122
|
-
const
|
|
120
|
+
const {
|
|
121
|
+
ownerState: pickerOwnerState
|
|
122
|
+
} = usePickerPrivateContext();
|
|
123
|
+
const ownerState = _extends({}, pickerOwnerState, {
|
|
124
|
+
hasDigitalClockAlreadyBeenRendered: !!containerRef.current
|
|
125
|
+
});
|
|
126
|
+
const classes = useUtilityClasses(classesProp);
|
|
123
127
|
const DigitalClockSectionItem = slots?.digitalClockSectionItem ?? MultiSectionDigitalClockSectionItem;
|
|
124
128
|
React.useEffect(() => {
|
|
125
129
|
if (containerRef.current === null) {
|
|
@@ -5,13 +5,11 @@ export interface PickersActionBarProps extends DialogActionsProps {
|
|
|
5
5
|
/**
|
|
6
6
|
* Ordered array of actions to display.
|
|
7
7
|
* If empty, does not display that action bar.
|
|
8
|
-
* @default
|
|
8
|
+
* @default
|
|
9
|
+
* - `[]` for Desktop Date Picker and Desktop Date Range Picker
|
|
10
|
+
* - `['cancel', 'accept']` for all other Pickers
|
|
9
11
|
*/
|
|
10
12
|
actions?: PickersActionBarAction[];
|
|
11
|
-
onAccept: () => void;
|
|
12
|
-
onClear: () => void;
|
|
13
|
-
onCancel: () => void;
|
|
14
|
-
onSetToday: () => void;
|
|
15
13
|
}
|
|
16
14
|
/**
|
|
17
15
|
* Demos:
|
|
@@ -23,8 +21,9 @@ export interface PickersActionBarProps extends DialogActionsProps {
|
|
|
23
21
|
*
|
|
24
22
|
* - [PickersActionBar API](https://mui.com/x/api/date-pickers/pickers-action-bar/)
|
|
25
23
|
*/
|
|
26
|
-
declare function
|
|
27
|
-
declare namespace
|
|
24
|
+
declare function PickersActionBarComponent(props: PickersActionBarProps): React.JSX.Element | null;
|
|
25
|
+
declare namespace PickersActionBarComponent {
|
|
28
26
|
var propTypes: any;
|
|
29
27
|
}
|
|
28
|
+
declare const PickersActionBar: React.MemoExoticComponent<typeof PickersActionBarComponent>;
|
|
30
29
|
export { PickersActionBar };
|
|
@@ -2,13 +2,21 @@
|
|
|
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 = ["
|
|
5
|
+
const _excluded = ["actions"];
|
|
6
6
|
import * as React from 'react';
|
|
7
7
|
import PropTypes from 'prop-types';
|
|
8
|
+
import { styled } from '@mui/material/styles';
|
|
8
9
|
import Button from '@mui/material/Button';
|
|
9
10
|
import DialogActions from '@mui/material/DialogActions';
|
|
10
11
|
import { usePickerTranslations } from "../hooks/usePickerTranslations.js";
|
|
12
|
+
import { usePickerActionsContext } from "../hooks/index.js";
|
|
11
13
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
14
|
+
const PickersActionBarRoot = styled(DialogActions, {
|
|
15
|
+
name: 'MuiPickersLayout',
|
|
16
|
+
slot: 'ActionBar',
|
|
17
|
+
overridesResolver: (_, styles) => styles.actionBar
|
|
18
|
+
})({});
|
|
19
|
+
|
|
12
20
|
/**
|
|
13
21
|
* Demos:
|
|
14
22
|
*
|
|
@@ -19,16 +27,18 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
19
27
|
*
|
|
20
28
|
* - [PickersActionBar API](https://mui.com/x/api/date-pickers/pickers-action-bar/)
|
|
21
29
|
*/
|
|
22
|
-
function
|
|
30
|
+
function PickersActionBarComponent(props) {
|
|
23
31
|
const {
|
|
24
|
-
onAccept,
|
|
25
|
-
onClear,
|
|
26
|
-
onCancel,
|
|
27
|
-
onSetToday,
|
|
28
32
|
actions
|
|
29
33
|
} = props,
|
|
30
34
|
other = _objectWithoutPropertiesLoose(props, _excluded);
|
|
31
35
|
const translations = usePickerTranslations();
|
|
36
|
+
const {
|
|
37
|
+
clearValue,
|
|
38
|
+
setValueToToday,
|
|
39
|
+
acceptValueChanges,
|
|
40
|
+
cancelValueChanges
|
|
41
|
+
} = usePickerActionsContext();
|
|
32
42
|
if (actions == null || actions.length === 0) {
|
|
33
43
|
return null;
|
|
34
44
|
}
|
|
@@ -36,33 +46,33 @@ function PickersActionBar(props) {
|
|
|
36
46
|
switch (actionType) {
|
|
37
47
|
case 'clear':
|
|
38
48
|
return /*#__PURE__*/_jsx(Button, {
|
|
39
|
-
onClick:
|
|
49
|
+
onClick: clearValue,
|
|
40
50
|
children: translations.clearButtonLabel
|
|
41
51
|
}, actionType);
|
|
42
52
|
case 'cancel':
|
|
43
53
|
return /*#__PURE__*/_jsx(Button, {
|
|
44
|
-
onClick:
|
|
54
|
+
onClick: cancelValueChanges,
|
|
45
55
|
children: translations.cancelButtonLabel
|
|
46
56
|
}, actionType);
|
|
47
57
|
case 'accept':
|
|
48
58
|
return /*#__PURE__*/_jsx(Button, {
|
|
49
|
-
onClick:
|
|
59
|
+
onClick: acceptValueChanges,
|
|
50
60
|
children: translations.okButtonLabel
|
|
51
61
|
}, actionType);
|
|
52
62
|
case 'today':
|
|
53
63
|
return /*#__PURE__*/_jsx(Button, {
|
|
54
|
-
onClick:
|
|
64
|
+
onClick: setValueToToday,
|
|
55
65
|
children: translations.todayButtonLabel
|
|
56
66
|
}, actionType);
|
|
57
67
|
default:
|
|
58
68
|
return null;
|
|
59
69
|
}
|
|
60
70
|
});
|
|
61
|
-
return /*#__PURE__*/_jsx(
|
|
71
|
+
return /*#__PURE__*/_jsx(PickersActionBarRoot, _extends({}, other, {
|
|
62
72
|
children: buttons
|
|
63
73
|
}));
|
|
64
74
|
}
|
|
65
|
-
process.env.NODE_ENV !== "production" ?
|
|
75
|
+
process.env.NODE_ENV !== "production" ? PickersActionBarComponent.propTypes = {
|
|
66
76
|
// ----------------------------- Warning --------------------------------
|
|
67
77
|
// | These PropTypes are generated from the TypeScript type definitions |
|
|
68
78
|
// | To update them edit the TypeScript types and run "pnpm proptypes" |
|
|
@@ -70,7 +80,9 @@ process.env.NODE_ENV !== "production" ? PickersActionBar.propTypes = {
|
|
|
70
80
|
/**
|
|
71
81
|
* Ordered array of actions to display.
|
|
72
82
|
* If empty, does not display that action bar.
|
|
73
|
-
* @default
|
|
83
|
+
* @default
|
|
84
|
+
* - `[]` for Desktop Date Picker and Desktop Date Range Picker
|
|
85
|
+
* - `['cancel', 'accept']` for all other Pickers
|
|
74
86
|
*/
|
|
75
87
|
actions: PropTypes.arrayOf(PropTypes.oneOf(['accept', 'cancel', 'clear', 'today']).isRequired),
|
|
76
88
|
/**
|
|
@@ -78,13 +90,10 @@ process.env.NODE_ENV !== "production" ? PickersActionBar.propTypes = {
|
|
|
78
90
|
* @default false
|
|
79
91
|
*/
|
|
80
92
|
disableSpacing: PropTypes.bool,
|
|
81
|
-
onAccept: PropTypes.func.isRequired,
|
|
82
|
-
onCancel: PropTypes.func.isRequired,
|
|
83
|
-
onClear: PropTypes.func.isRequired,
|
|
84
|
-
onSetToday: PropTypes.func.isRequired,
|
|
85
93
|
/**
|
|
86
94
|
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
87
95
|
*/
|
|
88
96
|
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])
|
|
89
97
|
} : void 0;
|
|
98
|
+
const PickersActionBar = /*#__PURE__*/React.memo(PickersActionBarComponent);
|
|
90
99
|
export { PickersActionBar };
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
4
4
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
5
|
-
const _excluded = ["slots", "slotProps", "currentMonth", "disabled", "disableFuture", "disablePast", "maxDate", "minDate", "onMonthChange", "onViewChange", "view", "reduceAnimations", "views", "labelId", "className", "timezone", "format"],
|
|
5
|
+
const _excluded = ["slots", "slotProps", "currentMonth", "disabled", "disableFuture", "disablePast", "maxDate", "minDate", "onMonthChange", "onViewChange", "view", "reduceAnimations", "views", "labelId", "className", "classes", "timezone", "format"],
|
|
6
6
|
_excluded2 = ["ownerState"];
|
|
7
7
|
import * as React from 'react';
|
|
8
8
|
import PropTypes from 'prop-types';
|
|
@@ -19,11 +19,9 @@ import { ArrowDropDownIcon } from "../icons/index.js";
|
|
|
19
19
|
import { PickersArrowSwitcher } from "../internals/components/PickersArrowSwitcher/index.js";
|
|
20
20
|
import { usePreviousMonthDisabled, useNextMonthDisabled } from "../internals/hooks/date-helpers-hooks.js";
|
|
21
21
|
import { getPickersCalendarHeaderUtilityClass, pickersCalendarHeaderClasses } from "./pickersCalendarHeaderClasses.js";
|
|
22
|
+
import { usePickerPrivateContext } from "../internals/hooks/usePickerPrivateContext.js";
|
|
22
23
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
23
|
-
const useUtilityClasses =
|
|
24
|
-
const {
|
|
25
|
-
classes
|
|
26
|
-
} = ownerState;
|
|
24
|
+
const useUtilityClasses = classes => {
|
|
27
25
|
const slots = {
|
|
28
26
|
root: ['root'],
|
|
29
27
|
labelContainer: ['labelContainer'],
|
|
@@ -132,12 +130,15 @@ const PickersCalendarHeader = /*#__PURE__*/React.forwardRef(function PickersCale
|
|
|
132
130
|
views,
|
|
133
131
|
labelId,
|
|
134
132
|
className,
|
|
133
|
+
classes: classesProp,
|
|
135
134
|
timezone,
|
|
136
135
|
format = `${utils.formats.month} ${utils.formats.year}`
|
|
137
136
|
} = props,
|
|
138
137
|
other = _objectWithoutPropertiesLoose(props, _excluded);
|
|
139
|
-
const
|
|
140
|
-
|
|
138
|
+
const {
|
|
139
|
+
ownerState
|
|
140
|
+
} = usePickerPrivateContext();
|
|
141
|
+
const classes = useUtilityClasses(classesProp);
|
|
141
142
|
const SwitchViewButton = slots?.switchViewButton ?? PickersCalendarHeaderSwitchViewButton;
|
|
142
143
|
const switchViewButtonProps = useSlotProps({
|
|
143
144
|
elementType: SwitchViewButton,
|
|
@@ -158,8 +159,8 @@ const PickersCalendarHeader = /*#__PURE__*/React.forwardRef(function PickersCale
|
|
|
158
159
|
className: classes.switchViewIcon
|
|
159
160
|
}),
|
|
160
161
|
switchViewIconProps = _objectWithoutPropertiesLoose(_useSlotProps, _excluded2);
|
|
161
|
-
const selectNextMonth = () => onMonthChange(utils.addMonths(month, 1)
|
|
162
|
-
const selectPreviousMonth = () => onMonthChange(utils.addMonths(month, -1)
|
|
162
|
+
const selectNextMonth = () => onMonthChange(utils.addMonths(month, 1));
|
|
163
|
+
const selectPreviousMonth = () => onMonthChange(utils.addMonths(month, -1));
|
|
163
164
|
const isNextMonthDisabled = useNextMonthDisabled(month, {
|
|
164
165
|
disableFuture,
|
|
165
166
|
maxDate,
|
|
@@ -214,6 +215,8 @@ const PickersCalendarHeader = /*#__PURE__*/React.forwardRef(function PickersCale
|
|
|
214
215
|
}))]
|
|
215
216
|
}), /*#__PURE__*/_jsx(Fade, {
|
|
216
217
|
in: view === 'day',
|
|
218
|
+
appear: !reduceAnimations,
|
|
219
|
+
enter: !reduceAnimations,
|
|
217
220
|
children: /*#__PURE__*/_jsx(PickersArrowSwitcher, {
|
|
218
221
|
slots: slots,
|
|
219
222
|
slotProps: slotProps,
|
|
@@ -5,8 +5,7 @@ import SvgIcon from '@mui/material/SvgIcon';
|
|
|
5
5
|
import { SxProps, Theme } from '@mui/material/styles';
|
|
6
6
|
import { ExportedPickersArrowSwitcherProps, PickersArrowSwitcherSlots, PickersArrowSwitcherSlotProps } from '../internals/components/PickersArrowSwitcher';
|
|
7
7
|
import { MonthValidationOptions } from '../internals/hooks/date-helpers-hooks';
|
|
8
|
-
import { PickerValidDate, DateView } from '../models';
|
|
9
|
-
import { SlideDirection } from '../DateCalendar/PickersSlideTransition';
|
|
8
|
+
import { PickerValidDate, DateView, PickerOwnerState } from '../models';
|
|
10
9
|
import { PickersCalendarHeaderClasses } from './pickersCalendarHeaderClasses';
|
|
11
10
|
export interface PickersCalendarHeaderSlots extends PickersArrowSwitcherSlots {
|
|
12
11
|
/**
|
|
@@ -22,10 +21,9 @@ export interface PickersCalendarHeaderSlots extends PickersArrowSwitcherSlots {
|
|
|
22
21
|
}
|
|
23
22
|
export interface PickersCalendarHeaderSlotPropsOverrides {
|
|
24
23
|
}
|
|
25
|
-
export type PickersCalendarHeaderOwnerState = PickersCalendarHeaderProps;
|
|
26
24
|
export interface PickersCalendarHeaderSlotProps extends PickersArrowSwitcherSlotProps {
|
|
27
|
-
switchViewButton?: SlotComponentProps<typeof IconButton, PickersCalendarHeaderSlotPropsOverrides,
|
|
28
|
-
switchViewIcon?: SlotComponentProps<typeof SvgIcon, PickersCalendarHeaderSlotPropsOverrides,
|
|
25
|
+
switchViewButton?: SlotComponentProps<typeof IconButton, PickersCalendarHeaderSlotPropsOverrides, PickerOwnerState>;
|
|
26
|
+
switchViewIcon?: SlotComponentProps<typeof SvgIcon, PickersCalendarHeaderSlotPropsOverrides, PickerOwnerState>;
|
|
29
27
|
}
|
|
30
28
|
export interface PickersCalendarHeaderProps extends ExportedPickersArrowSwitcherProps, MonthValidationOptions {
|
|
31
29
|
/**
|
|
@@ -41,7 +39,7 @@ export interface PickersCalendarHeaderProps extends ExportedPickersArrowSwitcher
|
|
|
41
39
|
currentMonth: PickerValidDate;
|
|
42
40
|
disabled?: boolean;
|
|
43
41
|
views: readonly DateView[];
|
|
44
|
-
onMonthChange: (date: PickerValidDate
|
|
42
|
+
onMonthChange: (date: PickerValidDate) => void;
|
|
45
43
|
view: DateView;
|
|
46
44
|
reduceAnimations: boolean;
|
|
47
45
|
onViewChange?: (view: DateView) => void;
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { PickersLayoutProps } from './PickersLayout.types';
|
|
3
|
-
import {
|
|
2
|
+
import { PickerLayoutOwnerState, PickersLayoutProps } from './PickersLayout.types';
|
|
3
|
+
import { PickerValidValue } from '../internals/models';
|
|
4
4
|
export declare const PickersLayoutRoot: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
|
|
5
|
-
ownerState:
|
|
5
|
+
ownerState: PickerLayoutOwnerState;
|
|
6
6
|
}, Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.ClassAttributes<HTMLDivElement> | keyof React.HTMLAttributes<HTMLDivElement>>, {}>;
|
|
7
|
-
export declare const PickersLayoutContentWrapper: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme
|
|
8
|
-
|
|
7
|
+
export declare const PickersLayoutContentWrapper: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
|
|
8
|
+
ownerState: PickerLayoutOwnerState;
|
|
9
|
+
}, Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.ClassAttributes<HTMLDivElement> | keyof React.HTMLAttributes<HTMLDivElement>>, {}>;
|
|
10
|
+
type PickersLayoutComponent = (<TValue extends PickerValidValue>(props: PickersLayoutProps<TValue> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
|
|
9
11
|
propTypes?: any;
|
|
10
12
|
};
|
|
11
13
|
/**
|
|
@@ -7,14 +7,14 @@ import { styled, useThemeProps } from '@mui/material/styles';
|
|
|
7
7
|
import composeClasses from '@mui/utils/composeClasses';
|
|
8
8
|
import { pickersLayoutClasses, getPickersLayoutUtilityClass } from "./pickersLayoutClasses.js";
|
|
9
9
|
import usePickerLayout from "./usePickerLayout.js";
|
|
10
|
+
import { usePickerContext } from "../hooks/usePickerContext.js";
|
|
10
11
|
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
11
|
-
const useUtilityClasses = ownerState => {
|
|
12
|
+
const useUtilityClasses = (classes, ownerState) => {
|
|
12
13
|
const {
|
|
13
|
-
|
|
14
|
-
classes
|
|
14
|
+
pickerOrientation
|
|
15
15
|
} = ownerState;
|
|
16
16
|
const slots = {
|
|
17
|
-
root: ['root',
|
|
17
|
+
root: ['root', pickerOrientation === 'landscape' && 'landscape'],
|
|
18
18
|
contentWrapper: ['contentWrapper']
|
|
19
19
|
};
|
|
20
20
|
return composeClasses(slots, getPickersLayoutUtilityClass, classes);
|
|
@@ -33,7 +33,7 @@ export const PickersLayoutRoot = styled('div', {
|
|
|
33
33
|
},
|
|
34
34
|
variants: [{
|
|
35
35
|
props: {
|
|
36
|
-
|
|
36
|
+
pickerOrientation: 'landscape'
|
|
37
37
|
},
|
|
38
38
|
style: {
|
|
39
39
|
[`& .${pickersLayoutClasses.toolbar}`]: {
|
|
@@ -47,8 +47,8 @@ export const PickersLayoutRoot = styled('div', {
|
|
|
47
47
|
}
|
|
48
48
|
}, {
|
|
49
49
|
props: {
|
|
50
|
-
|
|
51
|
-
|
|
50
|
+
pickerOrientation: 'landscape',
|
|
51
|
+
layoutDirection: 'rtl'
|
|
52
52
|
},
|
|
53
53
|
style: {
|
|
54
54
|
[`& .${pickersLayoutClasses.toolbar}`]: {
|
|
@@ -57,7 +57,7 @@ export const PickersLayoutRoot = styled('div', {
|
|
|
57
57
|
}
|
|
58
58
|
}, {
|
|
59
59
|
props: {
|
|
60
|
-
|
|
60
|
+
pickerOrientation: 'portrait'
|
|
61
61
|
},
|
|
62
62
|
style: {
|
|
63
63
|
[`& .${pickersLayoutClasses.toolbar}`]: {
|
|
@@ -71,8 +71,8 @@ export const PickersLayoutRoot = styled('div', {
|
|
|
71
71
|
}
|
|
72
72
|
}, {
|
|
73
73
|
props: {
|
|
74
|
-
|
|
75
|
-
|
|
74
|
+
pickerOrientation: 'portrait',
|
|
75
|
+
layoutDirection: 'rtl'
|
|
76
76
|
},
|
|
77
77
|
style: {
|
|
78
78
|
[`& .${pickersLayoutClasses.shortcuts}`]: {
|
|
@@ -110,23 +110,28 @@ const PickersLayout = /*#__PURE__*/React.forwardRef(function PickersLayout(inPro
|
|
|
110
110
|
content,
|
|
111
111
|
tabs,
|
|
112
112
|
actionBar,
|
|
113
|
-
shortcuts
|
|
113
|
+
shortcuts,
|
|
114
|
+
ownerState
|
|
114
115
|
} = usePickerLayout(props);
|
|
116
|
+
const {
|
|
117
|
+
orientation,
|
|
118
|
+
variant
|
|
119
|
+
} = usePickerContext();
|
|
115
120
|
const {
|
|
116
121
|
sx,
|
|
117
122
|
className,
|
|
118
|
-
|
|
119
|
-
wrapperVariant
|
|
123
|
+
classes: classesProp
|
|
120
124
|
} = props;
|
|
121
|
-
const classes = useUtilityClasses(
|
|
125
|
+
const classes = useUtilityClasses(classesProp, ownerState);
|
|
122
126
|
return /*#__PURE__*/_jsxs(PickersLayoutRoot, {
|
|
123
127
|
ref: ref,
|
|
124
128
|
sx: sx,
|
|
125
129
|
className: clsx(classes.root, className),
|
|
126
|
-
ownerState:
|
|
127
|
-
children: [
|
|
130
|
+
ownerState: ownerState,
|
|
131
|
+
children: [orientation === 'landscape' ? shortcuts : toolbar, orientation === 'landscape' ? toolbar : shortcuts, /*#__PURE__*/_jsx(PickersLayoutContentWrapper, {
|
|
128
132
|
className: classes.contentWrapper,
|
|
129
|
-
|
|
133
|
+
ownerState: ownerState,
|
|
134
|
+
children: variant === 'desktop' ? /*#__PURE__*/_jsxs(React.Fragment, {
|
|
130
135
|
children: [content, tabs]
|
|
131
136
|
}) : /*#__PURE__*/_jsxs(React.Fragment, {
|
|
132
137
|
children: [tabs, content]
|
|
@@ -145,26 +150,6 @@ process.env.NODE_ENV !== "production" ? PickersLayout.propTypes = {
|
|
|
145
150
|
*/
|
|
146
151
|
classes: PropTypes.object,
|
|
147
152
|
className: PropTypes.string,
|
|
148
|
-
isLandscape: PropTypes.bool.isRequired,
|
|
149
|
-
/**
|
|
150
|
-
* `true` if the application is in right-to-left direction.
|
|
151
|
-
*/
|
|
152
|
-
isRtl: PropTypes.bool.isRequired,
|
|
153
|
-
isValid: PropTypes.func.isRequired,
|
|
154
|
-
onAccept: PropTypes.func.isRequired,
|
|
155
|
-
onCancel: PropTypes.func.isRequired,
|
|
156
|
-
onChange: PropTypes.func.isRequired,
|
|
157
|
-
onClear: PropTypes.func.isRequired,
|
|
158
|
-
onClose: PropTypes.func.isRequired,
|
|
159
|
-
onDismiss: PropTypes.func.isRequired,
|
|
160
|
-
onOpen: PropTypes.func.isRequired,
|
|
161
|
-
onSelectShortcut: PropTypes.func.isRequired,
|
|
162
|
-
onSetToday: PropTypes.func.isRequired,
|
|
163
|
-
onViewChange: PropTypes.func.isRequired,
|
|
164
|
-
/**
|
|
165
|
-
* Force rendering in particular orientation.
|
|
166
|
-
*/
|
|
167
|
-
orientation: PropTypes.oneOf(['landscape', 'portrait']),
|
|
168
153
|
/**
|
|
169
154
|
* The props used for each component slot.
|
|
170
155
|
* @default {}
|
|
@@ -178,10 +163,6 @@ process.env.NODE_ENV !== "production" ? PickersLayout.propTypes = {
|
|
|
178
163
|
/**
|
|
179
164
|
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
180
165
|
*/
|
|
181
|
-
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])
|
|
182
|
-
value: PropTypes.any,
|
|
183
|
-
view: PropTypes.oneOf(['day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']),
|
|
184
|
-
views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']).isRequired).isRequired,
|
|
185
|
-
wrapperVariant: PropTypes.oneOf(['desktop', 'mobile'])
|
|
166
|
+
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])
|
|
186
167
|
} : void 0;
|
|
187
168
|
export { PickersLayout };
|
|
@@ -3,14 +3,13 @@ import { SxProps, Theme } from '@mui/material/styles';
|
|
|
3
3
|
import { SlotComponentProps } from '@mui/utils';
|
|
4
4
|
import { PickersActionBar, PickersActionBarProps } from '../PickersActionBar';
|
|
5
5
|
import { BaseToolbarProps, ExportedBaseToolbarProps } from '../internals/models/props/toolbar';
|
|
6
|
-
import {
|
|
7
|
-
import { UsePickerLayoutPropsResponseLayoutProps } from '../internals/hooks/usePicker/usePickerLayoutProps';
|
|
6
|
+
import { ExportedBaseTabsProps } from '../internals/models/props/tabs';
|
|
8
7
|
import { PickersLayoutClasses } from './pickersLayoutClasses';
|
|
9
|
-
import { DateOrTimeViewWithMeridiem, PickerVariant } from '../internals/models/common';
|
|
10
8
|
import { PickersShortcutsProps } from '../PickersShortcuts';
|
|
11
9
|
import { ExportedPickersShortcutProps, PickersShortcuts } from '../PickersShortcuts/PickersShortcuts';
|
|
12
10
|
import { PickerOwnerState } from '../models';
|
|
13
|
-
|
|
11
|
+
import { PickerValidValue } from '../internals/models';
|
|
12
|
+
export interface ExportedPickersLayoutSlots<TValue extends PickerValidValue> {
|
|
14
13
|
/**
|
|
15
14
|
* Custom component for the action bar, it is placed below the picker views.
|
|
16
15
|
* @default PickersActionBar
|
|
@@ -25,13 +24,17 @@ export interface ExportedPickersLayoutSlots<TValue, TView extends DateOrTimeView
|
|
|
25
24
|
* Custom component for wrapping the layout.
|
|
26
25
|
* It wraps the toolbar, views, action bar, and shortcuts.
|
|
27
26
|
*/
|
|
28
|
-
layout?: React.JSXElementConstructor<PickersLayoutProps<TValue
|
|
27
|
+
layout?: React.JSXElementConstructor<PickersLayoutProps<TValue> & React.RefAttributes<HTMLDivElement>>;
|
|
29
28
|
}
|
|
30
29
|
export interface PickerLayoutOwnerState extends PickerOwnerState {
|
|
31
|
-
|
|
32
|
-
|
|
30
|
+
/**
|
|
31
|
+
* The direction of the layout.
|
|
32
|
+
* Is equal to "ltr" when the layout is in left-to-right direction.
|
|
33
|
+
* Is equal to "rtl" when the layout is in right-to-left direction.
|
|
34
|
+
*/
|
|
35
|
+
layoutDirection: 'ltr' | 'rtl';
|
|
33
36
|
}
|
|
34
|
-
export interface ExportedPickersLayoutSlotProps<TValue
|
|
37
|
+
export interface ExportedPickersLayoutSlotProps<TValue extends PickerValidValue> {
|
|
35
38
|
/**
|
|
36
39
|
* Props passed down to the action bar component.
|
|
37
40
|
*/
|
|
@@ -43,20 +46,20 @@ export interface ExportedPickersLayoutSlotProps<TValue, TView extends DateOrTime
|
|
|
43
46
|
/**
|
|
44
47
|
* Props passed down to the layoutRoot component.
|
|
45
48
|
*/
|
|
46
|
-
layout?: Partial<PickersLayoutProps<TValue
|
|
49
|
+
layout?: Partial<PickersLayoutProps<TValue>>;
|
|
47
50
|
}
|
|
48
|
-
export interface PickersLayoutSlots<TValue
|
|
51
|
+
export interface PickersLayoutSlots<TValue extends PickerValidValue> extends ExportedPickersLayoutSlots<TValue> {
|
|
49
52
|
/**
|
|
50
53
|
* Tabs enabling toggling between views.
|
|
51
54
|
*/
|
|
52
|
-
tabs?: React.ElementType<
|
|
55
|
+
tabs?: React.ElementType<{}>;
|
|
53
56
|
/**
|
|
54
57
|
* Custom component for the toolbar.
|
|
55
58
|
* It is placed above the picker views.
|
|
56
59
|
*/
|
|
57
|
-
toolbar?: React.JSXElementConstructor<BaseToolbarProps
|
|
60
|
+
toolbar?: React.JSXElementConstructor<BaseToolbarProps>;
|
|
58
61
|
}
|
|
59
|
-
export interface PickersLayoutSlotProps<TValue
|
|
62
|
+
export interface PickersLayoutSlotProps<TValue extends PickerValidValue> extends ExportedPickersLayoutSlotProps<TValue> {
|
|
60
63
|
/**
|
|
61
64
|
* Props passed down to the tabs component.
|
|
62
65
|
*/
|
|
@@ -66,8 +69,7 @@ export interface PickersLayoutSlotProps<TValue, TView extends DateOrTimeViewWith
|
|
|
66
69
|
*/
|
|
67
70
|
toolbar?: ExportedBaseToolbarProps;
|
|
68
71
|
}
|
|
69
|
-
export interface PickersLayoutProps<TValue
|
|
70
|
-
value?: TValue;
|
|
72
|
+
export interface PickersLayoutProps<TValue extends PickerValidValue> {
|
|
71
73
|
className?: string;
|
|
72
74
|
children?: React.ReactNode;
|
|
73
75
|
/**
|
|
@@ -82,18 +84,14 @@ export interface PickersLayoutProps<TValue, TView extends DateOrTimeViewWithMeri
|
|
|
82
84
|
* Overridable component slots.
|
|
83
85
|
* @default {}
|
|
84
86
|
*/
|
|
85
|
-
slots?: PickersLayoutSlots<TValue
|
|
87
|
+
slots?: PickersLayoutSlots<TValue>;
|
|
86
88
|
/**
|
|
87
89
|
* The props used for each component slot.
|
|
88
90
|
* @default {}
|
|
89
91
|
*/
|
|
90
|
-
slotProps?: PickersLayoutSlotProps<TValue
|
|
91
|
-
/**
|
|
92
|
-
* `true` if the application is in right-to-left direction.
|
|
93
|
-
*/
|
|
94
|
-
isRtl: boolean;
|
|
92
|
+
slotProps?: PickersLayoutSlotProps<TValue>;
|
|
95
93
|
}
|
|
96
|
-
export interface SubComponents<TValue> {
|
|
94
|
+
export interface SubComponents<TValue extends PickerValidValue> {
|
|
97
95
|
toolbar: React.ReactElement<ExportedBaseToolbarProps> | null;
|
|
98
96
|
content: React.ReactNode;
|
|
99
97
|
tabs: React.ReactElement<ExportedBaseTabsProps> | null;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { PickersLayoutProps, SubComponents } from './PickersLayout.types';
|
|
2
|
-
import {
|
|
3
|
-
interface UsePickerLayoutResponse<TValue> extends SubComponents<TValue> {
|
|
1
|
+
import { PickerLayoutOwnerState, PickersLayoutProps, SubComponents } from './PickersLayout.types';
|
|
2
|
+
import { PickerValidValue } from '../internals/models';
|
|
3
|
+
interface UsePickerLayoutResponse<TValue extends PickerValidValue> extends SubComponents<TValue> {
|
|
4
|
+
ownerState: PickerLayoutOwnerState;
|
|
4
5
|
}
|
|
5
|
-
declare const usePickerLayout: <TValue
|
|
6
|
+
declare const usePickerLayout: <TValue extends PickerValidValue>(props: PickersLayoutProps<TValue>) => UsePickerLayoutResponse<TValue>;
|
|
6
7
|
export default usePickerLayout;
|