@mui/lab 5.0.0-alpha.75 → 5.0.0-alpha.78
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/index.d.ts +1 -1
- package/AdapterDateFns/index.js +1 -1
- package/AdapterDayjs/index.d.ts +1 -1
- package/AdapterDayjs/index.js +1 -1
- package/AdapterLuxon/index.d.ts +1 -1
- package/AdapterLuxon/index.js +1 -1
- package/AdapterMoment/index.d.ts +1 -1
- package/AdapterMoment/index.js +1 -1
- package/CHANGELOG.md +210 -32
- package/CalendarPicker/index.d.ts +2 -5
- package/CalendarPicker/index.js +1 -1
- package/CalendarPickerSkeleton/index.d.ts +2 -3
- package/CalendarPickerSkeleton/index.js +1 -1
- package/ClockPicker/index.d.ts +2 -5
- package/ClockPicker/index.js +1 -2
- package/DatePicker/index.d.ts +2 -2
- package/DatePicker/index.js +1 -2
- package/DateRangePicker/DateRangePicker.d.ts +11 -65
- package/DateRangePicker/DateRangePicker.js +14 -512
- package/DateRangePicker/index.d.ts +2 -3
- package/DateRangePicker/index.js +2 -2
- package/DateRangePickerDay/DateRangePickerDay.d.ts +13 -79
- package/DateRangePickerDay/DateRangePickerDay.js +17 -240
- package/DateRangePickerDay/index.d.ts +2 -2
- package/DateRangePickerDay/index.js +2 -2
- package/DateTimePicker/index.d.ts +2 -2
- package/DateTimePicker/index.js +1 -2
- package/DesktopDatePicker/index.d.ts +2 -2
- package/DesktopDatePicker/index.js +1 -2
- package/DesktopDateRangePicker/DesktopDateRangePicker.d.ts +10 -64
- package/DesktopDateRangePicker/DesktopDateRangePicker.js +13 -477
- package/DesktopDateRangePicker/index.d.ts +2 -2
- package/DesktopDateRangePicker/index.js +2 -2
- package/DesktopDateTimePicker/index.d.ts +2 -2
- package/DesktopDateTimePicker/index.js +1 -2
- package/DesktopTimePicker/index.d.ts +2 -2
- package/DesktopTimePicker/index.js +1 -2
- package/LoadingButton/LoadingButton.d.ts +3 -3
- package/LoadingButton/loadingButtonClasses.d.ts +22 -22
- package/LocalizationProvider/index.d.ts +2 -2
- package/LocalizationProvider/index.js +1 -2
- package/Masonry/Masonry.d.ts +2 -2
- package/Masonry/masonryClasses.d.ts +8 -8
- package/MobileDatePicker/index.d.ts +2 -2
- package/MobileDatePicker/index.js +1 -2
- package/MobileDateRangePicker/MobileDateRangePicker.d.ts +10 -64
- package/MobileDateRangePicker/MobileDateRangePicker.js +13 -487
- package/MobileDateRangePicker/index.d.ts +2 -2
- package/MobileDateRangePicker/index.js +2 -2
- package/MobileDateTimePicker/index.d.ts +2 -2
- package/MobileDateTimePicker/index.js +1 -2
- package/MobileTimePicker/index.d.ts +2 -2
- package/MobileTimePicker/index.js +1 -2
- package/MonthPicker/index.d.ts +2 -3
- package/MonthPicker/index.js +1 -1
- package/PickersDay/index.d.ts +2 -4
- package/PickersDay/index.js +1 -2
- package/StaticDatePicker/index.d.ts +2 -2
- package/StaticDatePicker/index.js +1 -2
- package/StaticDateRangePicker/StaticDateRangePicker.d.ts +10 -67
- package/StaticDateRangePicker/StaticDateRangePicker.js +13 -443
- package/StaticDateRangePicker/index.d.ts +2 -2
- package/StaticDateRangePicker/index.js +2 -2
- package/StaticDateTimePicker/index.d.ts +2 -2
- package/StaticDateTimePicker/index.js +1 -2
- package/StaticTimePicker/index.d.ts +2 -2
- package/StaticTimePicker/index.js +1 -2
- package/TabContext/TabContext.d.ts +2 -2
- package/TabList/TabList.d.ts +3 -3
- package/TabPanel/TabPanel.d.ts +2 -2
- package/TabPanel/tabPanelClasses.d.ts +8 -8
- package/TimePicker/index.d.ts +2 -2
- package/TimePicker/index.js +1 -2
- package/Timeline/Timeline.d.ts +59 -59
- package/Timeline/Timeline.js +2 -2
- package/Timeline/TimelineContext.d.ts +6 -6
- package/Timeline/index.d.ts +5 -5
- package/Timeline/timelineClasses.d.ts +3 -3
- package/TimelineConnector/TimelineConnector.d.ts +2 -2
- package/TimelineConnector/timelineConnectorClasses.d.ts +8 -8
- package/TimelineContent/TimelineContent.d.ts +3 -3
- package/TimelineContent/timelineContentClasses.d.ts +14 -14
- package/TimelineDot/TimelineDot.d.ts +2 -2
- package/TimelineDot/timelineDotClasses.d.ts +24 -24
- package/TimelineItem/TimelineItem.d.ts +2 -2
- package/TimelineItem/timelineItemClasses.d.ts +16 -16
- package/TimelineOppositeContent/TimelineOppositeContent.d.ts +3 -3
- package/TimelineOppositeContent/timelineOppositeContentClasses.d.ts +14 -14
- package/TimelineSeparator/TimelineSeparator.d.ts +2 -2
- package/TimelineSeparator/timelineSeparatorClasses.d.ts +8 -8
- package/TreeItem/TreeItem.d.ts +3 -3
- package/TreeItem/TreeItem.js +1 -1
- package/TreeItem/treeItemClasses.d.ts +24 -24
- package/TreeView/TreeView.d.ts +2 -2
- package/TreeView/treeViewClasses.d.ts +8 -8
- package/YearPicker/index.d.ts +2 -5
- package/YearPicker/index.js +1 -3
- package/index.js +1 -1
- package/internal/svg-icons/ArrowDropDown.d.ts +7 -7
- package/internal/svg-icons/ArrowLeft.d.ts +7 -7
- package/internal/svg-icons/ArrowRight.d.ts +7 -7
- package/internal/svg-icons/Calendar.d.ts +7 -7
- package/internal/svg-icons/Clock.d.ts +7 -7
- package/internal/svg-icons/DateRange.d.ts +7 -7
- package/internal/svg-icons/Pen.d.ts +7 -7
- package/internal/svg-icons/Time.d.ts +7 -7
- package/legacy/AdapterDateFns/index.js +1 -1
- package/legacy/AdapterDayjs/index.js +1 -1
- package/legacy/AdapterLuxon/index.js +1 -1
- package/legacy/AdapterMoment/index.js +1 -1
- package/legacy/CalendarPicker/index.js +1 -1
- package/legacy/CalendarPickerSkeleton/index.js +1 -1
- package/legacy/ClockPicker/index.js +1 -2
- package/legacy/DatePicker/index.js +1 -2
- package/legacy/DateRangePicker/DateRangePicker.js +13 -517
- package/legacy/DateRangePicker/index.js +2 -2
- package/legacy/DateRangePickerDay/DateRangePickerDay.js +17 -245
- package/legacy/DateRangePickerDay/index.js +2 -2
- package/legacy/DateTimePicker/index.js +1 -2
- package/legacy/DesktopDatePicker/index.js +1 -2
- package/legacy/DesktopDateRangePicker/DesktopDateRangePicker.js +12 -482
- package/legacy/DesktopDateRangePicker/index.js +2 -2
- package/legacy/DesktopDateTimePicker/index.js +1 -2
- package/legacy/DesktopTimePicker/index.js +1 -2
- package/legacy/LocalizationProvider/index.js +1 -2
- package/legacy/MobileDatePicker/index.js +1 -2
- package/legacy/MobileDateRangePicker/MobileDateRangePicker.js +12 -492
- package/legacy/MobileDateRangePicker/index.js +2 -2
- package/legacy/MobileDateTimePicker/index.js +1 -2
- package/legacy/MobileTimePicker/index.js +1 -2
- package/legacy/MonthPicker/index.js +1 -1
- package/legacy/PickersDay/index.js +1 -2
- package/legacy/StaticDatePicker/index.js +1 -2
- package/legacy/StaticDateRangePicker/StaticDateRangePicker.js +12 -449
- package/legacy/StaticDateRangePicker/index.js +2 -2
- package/legacy/StaticDateTimePicker/index.js +1 -2
- package/legacy/StaticTimePicker/index.js +1 -2
- package/legacy/TimePicker/index.js +1 -2
- package/legacy/Timeline/Timeline.js +2 -2
- package/legacy/TreeItem/TreeItem.js +1 -1
- package/legacy/YearPicker/index.js +1 -3
- package/legacy/index.js +1 -1
- package/modern/AdapterDateFns/index.js +1 -1
- package/modern/AdapterDayjs/index.js +1 -1
- package/modern/AdapterLuxon/index.js +1 -1
- package/modern/AdapterMoment/index.js +1 -1
- package/modern/CalendarPicker/index.js +1 -1
- package/modern/CalendarPickerSkeleton/index.js +1 -1
- package/modern/ClockPicker/index.js +1 -2
- package/modern/DatePicker/index.js +1 -2
- package/modern/DateRangePicker/DateRangePicker.js +14 -512
- package/modern/DateRangePicker/index.js +2 -2
- package/modern/DateRangePickerDay/DateRangePickerDay.js +17 -240
- package/modern/DateRangePickerDay/index.js +2 -2
- package/modern/DateTimePicker/index.js +1 -2
- package/modern/DesktopDatePicker/index.js +1 -2
- package/modern/DesktopDateRangePicker/DesktopDateRangePicker.js +13 -477
- package/modern/DesktopDateRangePicker/index.js +2 -2
- package/modern/DesktopDateTimePicker/index.js +1 -2
- package/modern/DesktopTimePicker/index.js +1 -2
- package/modern/LocalizationProvider/index.js +1 -2
- package/modern/MobileDatePicker/index.js +1 -2
- package/modern/MobileDateRangePicker/MobileDateRangePicker.js +13 -487
- package/modern/MobileDateRangePicker/index.js +2 -2
- package/modern/MobileDateTimePicker/index.js +1 -2
- package/modern/MobileTimePicker/index.js +1 -2
- package/modern/MonthPicker/index.js +1 -1
- package/modern/PickersDay/index.js +1 -2
- package/modern/StaticDatePicker/index.js +1 -2
- package/modern/StaticDateRangePicker/StaticDateRangePicker.js +13 -443
- package/modern/StaticDateRangePicker/index.js +2 -2
- package/modern/StaticDateTimePicker/index.js +1 -2
- package/modern/StaticTimePicker/index.js +1 -2
- package/modern/TimePicker/index.js +1 -2
- package/modern/Timeline/Timeline.js +2 -2
- package/modern/TreeItem/TreeItem.js +1 -1
- package/modern/YearPicker/index.js +1 -3
- package/modern/index.js +1 -1
- package/node/AdapterDateFns/index.js +2 -4
- package/node/AdapterDayjs/index.js +2 -4
- package/node/AdapterLuxon/index.js +2 -4
- package/node/AdapterMoment/index.js +2 -4
- package/node/CalendarPicker/index.js +2 -6
- package/node/CalendarPickerSkeleton/index.js +2 -6
- package/node/ClockPicker/index.js +2 -6
- package/node/DatePicker/index.js +2 -19
- package/node/DateRangePicker/DateRangePicker.js +14 -517
- package/node/DateRangePickerDay/DateRangePickerDay.js +20 -254
- package/node/DateTimePicker/index.js +2 -19
- package/node/DesktopDatePicker/index.js +2 -19
- package/node/DesktopDateRangePicker/DesktopDateRangePicker.js +13 -482
- package/node/DesktopDateTimePicker/index.js +2 -19
- package/node/DesktopTimePicker/index.js +2 -19
- package/node/LocalizationProvider/index.js +2 -19
- package/node/MobileDatePicker/index.js +2 -19
- package/node/MobileDateRangePicker/MobileDateRangePicker.js +13 -492
- package/node/MobileDateTimePicker/index.js +2 -19
- package/node/MobileTimePicker/index.js +2 -19
- package/node/MonthPicker/index.js +2 -6
- package/node/PickersDay/index.js +2 -6
- package/node/StaticDatePicker/index.js +2 -19
- package/node/StaticDateRangePicker/StaticDateRangePicker.js +13 -447
- package/node/StaticDateTimePicker/index.js +2 -19
- package/node/StaticTimePicker/index.js +2 -19
- package/node/TimePicker/index.js +2 -19
- package/node/Timeline/Timeline.js +2 -2
- package/node/TreeItem/TreeItem.js +1 -1
- package/node/YearPicker/index.js +9 -26
- package/node/index.js +1 -1
- package/package.json +9 -12
- package/themeAugmentation/components.d.ts +0 -50
- package/themeAugmentation/index.d.ts +2 -0
- package/themeAugmentation/overrides.d.ts +0 -16
- package/themeAugmentation/props.d.ts +0 -36
- package/CalendarPicker/CalendarPicker.d.ts +0 -106
- package/CalendarPicker/CalendarPicker.js +0 -344
- package/CalendarPicker/PickersCalendar.d.ts +0 -47
- package/CalendarPicker/PickersCalendar.js +0 -145
- package/CalendarPicker/PickersCalendarHeader.d.ts +0 -43
- package/CalendarPicker/PickersCalendarHeader.js +0 -165
- package/CalendarPicker/PickersFadeTransitionGroup.d.ts +0 -12
- package/CalendarPicker/PickersFadeTransitionGroup.js +0 -44
- package/CalendarPicker/PickersSlideTransition.d.ts +0 -16
- package/CalendarPicker/PickersSlideTransition.js +0 -103
- package/CalendarPicker/shared.d.ts +0 -1
- package/CalendarPicker/shared.js +0 -1
- package/CalendarPicker/useCalendarState.d.ts +0 -32
- package/CalendarPicker/useCalendarState.js +0 -110
- package/CalendarPickerSkeleton/CalendarPickerSkeleton.d.ts +0 -41
- package/CalendarPickerSkeleton/CalendarPickerSkeleton.js +0 -149
- package/ClockPicker/Clock.d.ts +0 -28
- package/ClockPicker/Clock.js +0 -267
- package/ClockPicker/ClockNumber.d.ts +0 -19
- package/ClockPicker/ClockNumber.js +0 -72
- package/ClockPicker/ClockNumbers.d.ts +0 -24
- package/ClockPicker/ClockNumbers.js +0 -80
- package/ClockPicker/ClockPicker.d.ts +0 -121
- package/ClockPicker/ClockPicker.js +0 -398
- package/ClockPicker/ClockPickerStandalone.d.ts +0 -28
- package/ClockPicker/ClockPickerStandalone.js +0 -47
- package/ClockPicker/ClockPointer.d.ts +0 -23
- package/ClockPicker/ClockPointer.js +0 -103
- package/ClockPicker/shared.d.ts +0 -5
- package/ClockPicker/shared.js +0 -57
- package/DatePicker/DatePicker.d.ts +0 -27
- package/DatePicker/DatePicker.js +0 -469
- package/DatePicker/DatePickerToolbar.d.ts +0 -23
- package/DatePicker/DatePickerToolbar.js +0 -82
- package/DatePicker/shared.d.ts +0 -45
- package/DatePicker/shared.js +0 -54
- package/DateRangePicker/DateRangePickerInput.d.ts +0 -35
- package/DateRangePicker/DateRangePickerInput.js +0 -132
- package/DateRangePicker/DateRangePickerToolbar.d.ts +0 -15
- package/DateRangePicker/DateRangePickerToolbar.js +0 -65
- package/DateRangePicker/DateRangePickerView.d.ts +0 -44
- package/DateRangePicker/DateRangePickerView.js +0 -177
- package/DateRangePicker/DateRangePickerViewDesktop.d.ts +0 -29
- package/DateRangePicker/DateRangePickerViewDesktop.js +0 -159
- package/DateRangePicker/DateRangePickerViewMobile.d.ts +0 -17
- package/DateRangePicker/DateRangePickerViewMobile.js +0 -62
- package/DateRangePicker/RangeTypes.d.ts +0 -8
- package/DateRangePicker/RangeTypes.js +0 -1
- package/DateRangePicker/date-range-manager.d.ts +0 -14
- package/DateRangePicker/date-range-manager.js +0 -43
- package/DateTimePicker/DateTimePicker.d.ts +0 -27
- package/DateTimePicker/DateTimePicker.js +0 -547
- package/DateTimePicker/DateTimePickerTabs.d.ts +0 -13
- package/DateTimePicker/DateTimePickerTabs.js +0 -87
- package/DateTimePicker/DateTimePickerToolbar.d.ts +0 -7
- package/DateTimePicker/DateTimePickerToolbar.js +0 -139
- package/DateTimePicker/shared.d.ts +0 -67
- package/DateTimePicker/shared.js +0 -58
- package/DesktopDatePicker/DesktopDatePicker.d.ts +0 -20
- package/DesktopDatePicker/DesktopDatePicker.js +0 -444
- package/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +0 -20
- package/DesktopDateTimePicker/DesktopDateTimePicker.js +0 -518
- package/DesktopTimePicker/DesktopTimePicker.d.ts +0 -20
- package/DesktopTimePicker/DesktopTimePicker.js +0 -366
- package/LocalizationProvider/LocalizationProvider.d.ts +0 -35
- package/LocalizationProvider/LocalizationProvider.js +0 -108
- package/MobileDatePicker/MobileDatePicker.d.ts +0 -20
- package/MobileDatePicker/MobileDatePicker.js +0 -449
- package/MobileDateTimePicker/MobileDateTimePicker.d.ts +0 -20
- package/MobileDateTimePicker/MobileDateTimePicker.js +0 -529
- package/MobileTimePicker/MobileTimePicker.d.ts +0 -20
- package/MobileTimePicker/MobileTimePicker.js +0 -377
- package/MonthPicker/MonthPicker.d.ts +0 -53
- package/MonthPicker/MonthPicker.js +0 -182
- package/MonthPicker/PickersMonth.d.ts +0 -15
- package/MonthPicker/PickersMonth.js +0 -72
- package/PickersDay/PickersDay.d.ts +0 -93
- package/PickersDay/PickersDay.js +0 -396
- package/StaticDatePicker/StaticDatePicker.d.ts +0 -25
- package/StaticDatePicker/StaticDatePicker.js +0 -406
- package/StaticDateTimePicker/StaticDateTimePicker.d.ts +0 -25
- package/StaticDateTimePicker/StaticDateTimePicker.js +0 -486
- package/StaticTimePicker/StaticTimePicker.d.ts +0 -25
- package/StaticTimePicker/StaticTimePicker.js +0 -333
- package/TimePicker/TimePicker.d.ts +0 -27
- package/TimePicker/TimePicker.js +0 -395
- package/TimePicker/TimePickerToolbar.d.ts +0 -23
- package/TimePicker/TimePickerToolbar.js +0 -172
- package/TimePicker/shared.d.ts +0 -36
- package/TimePicker/shared.js +0 -45
- package/YearPicker/PickersYear.d.ts +0 -27
- package/YearPicker/PickersYear.js +0 -112
- package/YearPicker/YearPicker.d.ts +0 -44
- package/YearPicker/YearPicker.js +0 -251
- package/YearPicker/yearPickerClasses.d.ts +0 -3
- package/YearPicker/yearPickerClasses.js +0 -6
- package/internal/pickers/KeyboardDateInput.d.ts +0 -4
- package/internal/pickers/KeyboardDateInput.js +0 -59
- package/internal/pickers/Picker/Picker.d.ts +0 -33
- package/internal/pickers/Picker/Picker.js +0 -130
- package/internal/pickers/Picker/PickerView.d.ts +0 -3
- package/internal/pickers/Picker/PickerView.js +0 -11
- package/internal/pickers/PickersArrowSwitcher.d.ts +0 -41
- package/internal/pickers/PickersArrowSwitcher.js +0 -91
- package/internal/pickers/PickersModalDialog.d.ts +0 -47
- package/internal/pickers/PickersModalDialog.js +0 -78
- package/internal/pickers/PickersPopper.d.ts +0 -44
- package/internal/pickers/PickersPopper.js +0 -267
- package/internal/pickers/PickersToolbar.d.ts +0 -14
- package/internal/pickers/PickersToolbar.js +0 -88
- package/internal/pickers/PickersToolbarButton.d.ts +0 -13
- package/internal/pickers/PickersToolbarButton.js +0 -39
- package/internal/pickers/PickersToolbarText.d.ts +0 -8
- package/internal/pickers/PickersToolbarText.js +0 -36
- package/internal/pickers/PureDateInput.d.ts +0 -80
- package/internal/pickers/PureDateInput.js +0 -51
- package/internal/pickers/constants/dimensions.d.ts +0 -4
- package/internal/pickers/constants/dimensions.js +0 -4
- package/internal/pickers/constants/prop-types.d.ts +0 -1
- package/internal/pickers/constants/prop-types.js +0 -1
- package/internal/pickers/date-time-utils.d.ts +0 -8
- package/internal/pickers/date-time-utils.js +0 -28
- package/internal/pickers/date-utils.d.ts +0 -52
- package/internal/pickers/date-utils.js +0 -138
- package/internal/pickers/hooks/date-helpers-hooks.d.ts +0 -16
- package/internal/pickers/hooks/date-helpers-hooks.js +0 -37
- package/internal/pickers/hooks/useIsLandscape.d.ts +0 -4
- package/internal/pickers/hooks/useIsLandscape.js +0 -43
- package/internal/pickers/hooks/useMaskedInput.d.ts +0 -7
- package/internal/pickers/hooks/useMaskedInput.js +0 -93
- package/internal/pickers/hooks/useOpenState.d.ts +0 -10
- package/internal/pickers/hooks/useOpenState.js +0 -38
- package/internal/pickers/hooks/usePickerState.d.ts +0 -38
- package/internal/pickers/hooks/usePickerState.js +0 -117
- package/internal/pickers/hooks/useUtils.d.ts +0 -7
- package/internal/pickers/hooks/useUtils.js +0 -25
- package/internal/pickers/hooks/useValidation.d.ts +0 -23
- package/internal/pickers/hooks/useValidation.js +0 -44
- package/internal/pickers/hooks/useViews.d.ts +0 -19
- package/internal/pickers/hooks/useViews.js +0 -50
- package/internal/pickers/test-utils.js +0 -91
- package/internal/pickers/text-field-helper.d.ts +0 -11
- package/internal/pickers/text-field-helper.js +0 -66
- package/internal/pickers/time-utils.d.ts +0 -33
- package/internal/pickers/time-utils.js +0 -68
- package/internal/pickers/typings/BasePicker.d.ts +0 -95
- package/internal/pickers/typings/BasePicker.js +0 -1
- package/internal/pickers/typings/Views.d.ts +0 -1
- package/internal/pickers/typings/Views.js +0 -1
- package/internal/pickers/typings/helpers.d.ts +0 -9
- package/internal/pickers/typings/helpers.js +0 -1
- package/internal/pickers/utils.d.ts +0 -7
- package/internal/pickers/utils.js +0 -36
- package/internal/pickers/wrappers/DesktopTooltipWrapper.d.ts +0 -4
- package/internal/pickers/wrappers/DesktopTooltipWrapper.js +0 -55
- package/internal/pickers/wrappers/DesktopWrapper.d.ts +0 -16
- package/internal/pickers/wrappers/DesktopWrapper.js +0 -45
- package/internal/pickers/wrappers/MobileWrapper.d.ts +0 -14
- package/internal/pickers/wrappers/MobileWrapper.js +0 -50
- package/internal/pickers/wrappers/PickerStaticWrapper.d.ts +0 -21
- package/internal/pickers/wrappers/PickerStaticWrapper.js +0 -63
- package/internal/pickers/wrappers/ResponsiveWrapper.d.ts +0 -23
- package/internal/pickers/wrappers/ResponsiveWrapper.js +0 -44
- package/internal/pickers/wrappers/WrapperProps.d.ts +0 -13
- package/internal/pickers/wrappers/WrapperProps.js +0 -1
- package/internal/pickers/wrappers/WrapperVariantContext.d.ts +0 -11
- package/internal/pickers/wrappers/WrapperVariantContext.js +0 -12
- package/legacy/CalendarPicker/CalendarPicker.js +0 -355
- package/legacy/CalendarPicker/PickersCalendar.js +0 -159
- package/legacy/CalendarPicker/PickersCalendarHeader.js +0 -176
- package/legacy/CalendarPicker/PickersFadeTransitionGroup.js +0 -44
- package/legacy/CalendarPicker/PickersSlideTransition.js +0 -98
- package/legacy/CalendarPicker/shared.js +0 -1
- package/legacy/CalendarPicker/useCalendarState.js +0 -118
- package/legacy/CalendarPickerSkeleton/CalendarPickerSkeleton.js +0 -155
- package/legacy/ClockPicker/Clock.js +0 -273
- package/legacy/ClockPicker/ClockNumber.js +0 -71
- package/legacy/ClockPicker/ClockNumbers.js +0 -83
- package/legacy/ClockPicker/ClockPicker.js +0 -437
- package/legacy/ClockPicker/ClockPickerStandalone.js +0 -49
- package/legacy/ClockPicker/ClockPointer.js +0 -130
- package/legacy/ClockPicker/shared.js +0 -61
- package/legacy/DatePicker/DatePicker.js +0 -467
- package/legacy/DatePicker/DatePickerToolbar.js +0 -82
- package/legacy/DatePicker/shared.js +0 -57
- package/legacy/DateRangePicker/DateRangePickerInput.js +0 -144
- package/legacy/DateRangePicker/DateRangePickerToolbar.js +0 -73
- package/legacy/DateRangePicker/DateRangePickerView.js +0 -181
- package/legacy/DateRangePicker/DateRangePickerViewDesktop.js +0 -174
- package/legacy/DateRangePicker/DateRangePickerViewMobile.js +0 -64
- package/legacy/DateRangePicker/RangeTypes.js +0 -1
- package/legacy/DateRangePicker/date-range-manager.js +0 -51
- package/legacy/DateTimePicker/DateTimePicker.js +0 -545
- package/legacy/DateTimePicker/DateTimePickerTabs.js +0 -88
- package/legacy/DateTimePicker/DateTimePickerToolbar.js +0 -151
- package/legacy/DateTimePicker/shared.js +0 -58
- package/legacy/DesktopDatePicker/DesktopDatePicker.js +0 -446
- package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +0 -520
- package/legacy/DesktopTimePicker/DesktopTimePicker.js +0 -368
- package/legacy/LocalizationProvider/LocalizationProvider.js +0 -108
- package/legacy/MobileDatePicker/MobileDatePicker.js +0 -452
- package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +0 -532
- package/legacy/MobileTimePicker/MobileTimePicker.js +0 -380
- package/legacy/MonthPicker/MonthPicker.js +0 -179
- package/legacy/MonthPicker/PickersMonth.js +0 -70
- package/legacy/PickersDay/PickersDay.js +0 -399
- package/legacy/StaticDatePicker/StaticDatePicker.js +0 -410
- package/legacy/StaticDateTimePicker/StaticDateTimePicker.js +0 -490
- package/legacy/StaticTimePicker/StaticTimePicker.js +0 -336
- package/legacy/TimePicker/TimePicker.js +0 -393
- package/legacy/TimePicker/TimePickerToolbar.js +0 -179
- package/legacy/TimePicker/shared.js +0 -44
- package/legacy/YearPicker/PickersYear.js +0 -115
- package/legacy/YearPicker/YearPicker.js +0 -254
- package/legacy/YearPicker/yearPickerClasses.js +0 -6
- package/legacy/internal/pickers/KeyboardDateInput.js +0 -57
- package/legacy/internal/pickers/Picker/Picker.js +0 -141
- package/legacy/internal/pickers/Picker/PickerView.js +0 -11
- package/legacy/internal/pickers/PickersArrowSwitcher.js +0 -92
- package/legacy/internal/pickers/PickersModalDialog.js +0 -85
- package/legacy/internal/pickers/PickersPopper.js +0 -280
- package/legacy/internal/pickers/PickersToolbar.js +0 -92
- package/legacy/internal/pickers/PickersToolbarButton.js +0 -36
- package/legacy/internal/pickers/PickersToolbarText.js +0 -34
- package/legacy/internal/pickers/PureDateInput.js +0 -53
- package/legacy/internal/pickers/constants/dimensions.js +0 -4
- package/legacy/internal/pickers/constants/prop-types.js +0 -1
- package/legacy/internal/pickers/date-time-utils.js +0 -25
- package/legacy/internal/pickers/date-utils.js +0 -143
- package/legacy/internal/pickers/hooks/date-helpers-hooks.js +0 -35
- package/legacy/internal/pickers/hooks/useIsLandscape.js +0 -46
- package/legacy/internal/pickers/hooks/useMaskedInput.js +0 -105
- package/legacy/internal/pickers/hooks/useOpenState.js +0 -41
- package/legacy/internal/pickers/hooks/usePickerState.js +0 -143
- package/legacy/internal/pickers/hooks/useUtils.js +0 -25
- package/legacy/internal/pickers/hooks/useValidation.js +0 -43
- package/legacy/internal/pickers/hooks/useViews.js +0 -55
- package/legacy/internal/pickers/test-utils.js +0 -112
- package/legacy/internal/pickers/text-field-helper.js +0 -68
- package/legacy/internal/pickers/time-utils.js +0 -69
- package/legacy/internal/pickers/typings/BasePicker.js +0 -1
- package/legacy/internal/pickers/typings/Views.js +0 -1
- package/legacy/internal/pickers/typings/helpers.js +0 -1
- package/legacy/internal/pickers/utils.js +0 -52
- package/legacy/internal/pickers/wrappers/DesktopTooltipWrapper.js +0 -53
- package/legacy/internal/pickers/wrappers/DesktopWrapper.js +0 -43
- package/legacy/internal/pickers/wrappers/MobileWrapper.js +0 -47
- package/legacy/internal/pickers/wrappers/PickerStaticWrapper.js +0 -61
- package/legacy/internal/pickers/wrappers/ResponsiveWrapper.js +0 -42
- package/legacy/internal/pickers/wrappers/WrapperProps.js +0 -1
- package/legacy/internal/pickers/wrappers/WrapperVariantContext.js +0 -12
- package/modern/CalendarPicker/CalendarPicker.js +0 -344
- package/modern/CalendarPicker/PickersCalendar.js +0 -145
- package/modern/CalendarPicker/PickersCalendarHeader.js +0 -165
- package/modern/CalendarPicker/PickersFadeTransitionGroup.js +0 -44
- package/modern/CalendarPicker/PickersSlideTransition.js +0 -103
- package/modern/CalendarPicker/shared.js +0 -1
- package/modern/CalendarPicker/useCalendarState.js +0 -108
- package/modern/CalendarPickerSkeleton/CalendarPickerSkeleton.js +0 -149
- package/modern/ClockPicker/Clock.js +0 -267
- package/modern/ClockPicker/ClockNumber.js +0 -72
- package/modern/ClockPicker/ClockNumbers.js +0 -80
- package/modern/ClockPicker/ClockPicker.js +0 -398
- package/modern/ClockPicker/ClockPickerStandalone.js +0 -47
- package/modern/ClockPicker/ClockPointer.js +0 -103
- package/modern/ClockPicker/shared.js +0 -57
- package/modern/DatePicker/DatePicker.js +0 -469
- package/modern/DatePicker/DatePickerToolbar.js +0 -82
- package/modern/DatePicker/shared.js +0 -54
- package/modern/DateRangePicker/DateRangePickerInput.js +0 -128
- package/modern/DateRangePicker/DateRangePickerToolbar.js +0 -65
- package/modern/DateRangePicker/DateRangePickerView.js +0 -177
- package/modern/DateRangePicker/DateRangePickerViewDesktop.js +0 -159
- package/modern/DateRangePicker/DateRangePickerViewMobile.js +0 -62
- package/modern/DateRangePicker/RangeTypes.js +0 -1
- package/modern/DateRangePicker/date-range-manager.js +0 -43
- package/modern/DateTimePicker/DateTimePicker.js +0 -547
- package/modern/DateTimePicker/DateTimePickerTabs.js +0 -87
- package/modern/DateTimePicker/DateTimePickerToolbar.js +0 -139
- package/modern/DateTimePicker/shared.js +0 -58
- package/modern/DesktopDatePicker/DesktopDatePicker.js +0 -444
- package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +0 -518
- package/modern/DesktopTimePicker/DesktopTimePicker.js +0 -366
- package/modern/LocalizationProvider/LocalizationProvider.js +0 -108
- package/modern/MobileDatePicker/MobileDatePicker.js +0 -449
- package/modern/MobileDateTimePicker/MobileDateTimePicker.js +0 -529
- package/modern/MobileTimePicker/MobileTimePicker.js +0 -377
- package/modern/MonthPicker/MonthPicker.js +0 -182
- package/modern/MonthPicker/PickersMonth.js +0 -72
- package/modern/PickersDay/PickersDay.js +0 -396
- package/modern/StaticDatePicker/StaticDatePicker.js +0 -406
- package/modern/StaticDateTimePicker/StaticDateTimePicker.js +0 -486
- package/modern/StaticTimePicker/StaticTimePicker.js +0 -333
- package/modern/TimePicker/TimePicker.js +0 -395
- package/modern/TimePicker/TimePickerToolbar.js +0 -172
- package/modern/TimePicker/shared.js +0 -45
- package/modern/YearPicker/PickersYear.js +0 -112
- package/modern/YearPicker/YearPicker.js +0 -251
- package/modern/YearPicker/yearPickerClasses.js +0 -6
- package/modern/internal/pickers/KeyboardDateInput.js +0 -59
- package/modern/internal/pickers/Picker/Picker.js +0 -130
- package/modern/internal/pickers/Picker/PickerView.js +0 -11
- package/modern/internal/pickers/PickersArrowSwitcher.js +0 -91
- package/modern/internal/pickers/PickersModalDialog.js +0 -78
- package/modern/internal/pickers/PickersPopper.js +0 -267
- package/modern/internal/pickers/PickersToolbar.js +0 -88
- package/modern/internal/pickers/PickersToolbarButton.js +0 -39
- package/modern/internal/pickers/PickersToolbarText.js +0 -36
- package/modern/internal/pickers/PureDateInput.js +0 -51
- package/modern/internal/pickers/constants/dimensions.js +0 -4
- package/modern/internal/pickers/constants/prop-types.js +0 -1
- package/modern/internal/pickers/date-time-utils.js +0 -28
- package/modern/internal/pickers/date-utils.js +0 -138
- package/modern/internal/pickers/hooks/date-helpers-hooks.js +0 -37
- package/modern/internal/pickers/hooks/useIsLandscape.js +0 -43
- package/modern/internal/pickers/hooks/useMaskedInput.js +0 -93
- package/modern/internal/pickers/hooks/useOpenState.js +0 -38
- package/modern/internal/pickers/hooks/usePickerState.js +0 -117
- package/modern/internal/pickers/hooks/useUtils.js +0 -25
- package/modern/internal/pickers/hooks/useValidation.js +0 -44
- package/modern/internal/pickers/hooks/useViews.js +0 -48
- package/modern/internal/pickers/test-utils.js +0 -91
- package/modern/internal/pickers/text-field-helper.js +0 -66
- package/modern/internal/pickers/time-utils.js +0 -68
- package/modern/internal/pickers/typings/BasePicker.js +0 -1
- package/modern/internal/pickers/typings/Views.js +0 -1
- package/modern/internal/pickers/typings/helpers.js +0 -1
- package/modern/internal/pickers/utils.js +0 -36
- package/modern/internal/pickers/wrappers/DesktopTooltipWrapper.js +0 -53
- package/modern/internal/pickers/wrappers/DesktopWrapper.js +0 -45
- package/modern/internal/pickers/wrappers/MobileWrapper.js +0 -50
- package/modern/internal/pickers/wrappers/PickerStaticWrapper.js +0 -63
- package/modern/internal/pickers/wrappers/ResponsiveWrapper.js +0 -44
- package/modern/internal/pickers/wrappers/WrapperProps.js +0 -1
- package/modern/internal/pickers/wrappers/WrapperVariantContext.js +0 -12
- package/node/CalendarPicker/CalendarPicker.js +0 -377
- package/node/CalendarPicker/PickersCalendar.js +0 -166
- package/node/CalendarPicker/PickersCalendarHeader.js +0 -189
- package/node/CalendarPicker/PickersFadeTransitionGroup.js +0 -65
- package/node/CalendarPicker/PickersSlideTransition.js +0 -127
- package/node/CalendarPicker/shared.js +0 -5
- package/node/CalendarPicker/useCalendarState.js +0 -131
- package/node/CalendarPickerSkeleton/CalendarPickerSkeleton.js +0 -177
- package/node/ClockPicker/Clock.js +0 -290
- package/node/ClockPicker/ClockNumber.js +0 -95
- package/node/ClockPicker/ClockNumbers.js +0 -100
- package/node/ClockPicker/ClockPicker.js +0 -428
- package/node/ClockPicker/ClockPickerStandalone.js +0 -68
- package/node/ClockPicker/ClockPointer.js +0 -123
- package/node/ClockPicker/shared.js +0 -70
- package/node/DatePicker/DatePicker.js +0 -490
- package/node/DatePicker/DatePickerToolbar.js +0 -106
- package/node/DatePicker/shared.js +0 -73
- package/node/DateRangePicker/DateRangePickerInput.js +0 -155
- package/node/DateRangePicker/DateRangePickerToolbar.js +0 -86
- package/node/DateRangePicker/DateRangePickerView.js +0 -205
- package/node/DateRangePicker/DateRangePickerViewDesktop.js +0 -184
- package/node/DateRangePicker/DateRangePickerViewMobile.js +0 -84
- package/node/DateRangePicker/RangeTypes.js +0 -5
- package/node/DateRangePicker/date-range-manager.js +0 -52
- package/node/DateTimePicker/DateTimePicker.js +0 -568
- package/node/DateTimePicker/DateTimePickerTabs.js +0 -106
- package/node/DateTimePicker/DateTimePickerToolbar.js +0 -163
- package/node/DateTimePicker/shared.js +0 -72
- package/node/DesktopDatePicker/DesktopDatePicker.js +0 -469
- package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +0 -543
- package/node/DesktopTimePicker/DesktopTimePicker.js +0 -391
- package/node/LocalizationProvider/LocalizationProvider.js +0 -126
- package/node/MobileDatePicker/MobileDatePicker.js +0 -475
- package/node/MobileDateTimePicker/MobileDateTimePicker.js +0 -555
- package/node/MobileTimePicker/MobileTimePicker.js +0 -403
- package/node/MonthPicker/MonthPicker.js +0 -209
- package/node/MonthPicker/PickersMonth.js +0 -96
- package/node/PickersDay/PickersDay.js +0 -429
- package/node/StaticDatePicker/StaticDatePicker.js +0 -431
- package/node/StaticDateTimePicker/StaticDateTimePicker.js +0 -511
- package/node/StaticTimePicker/StaticTimePicker.js +0 -357
- package/node/TimePicker/TimePicker.js +0 -416
- package/node/TimePicker/TimePickerToolbar.js +0 -200
- package/node/TimePicker/shared.js +0 -59
- package/node/YearPicker/PickersYear.js +0 -136
- package/node/YearPicker/YearPicker.js +0 -275
- package/node/YearPicker/yearPickerClasses.js +0 -17
- package/node/internal/pickers/KeyboardDateInput.js +0 -85
- package/node/internal/pickers/Picker/Picker.js +0 -156
- package/node/internal/pickers/Picker/PickerView.js +0 -21
- package/node/internal/pickers/PickersArrowSwitcher.js +0 -113
- package/node/internal/pickers/PickersModalDialog.js +0 -100
- package/node/internal/pickers/PickersPopper.js +0 -291
- package/node/internal/pickers/PickersToolbar.js +0 -112
- package/node/internal/pickers/PickersToolbarButton.js +0 -60
- package/node/internal/pickers/PickersToolbarText.js +0 -58
- package/node/internal/pickers/PureDateInput.js +0 -70
- package/node/internal/pickers/constants/dimensions.js +0 -14
- package/node/internal/pickers/constants/prop-types.js +0 -5
- package/node/internal/pickers/date-time-utils.js +0 -40
- package/node/internal/pickers/date-utils.js +0 -170
- package/node/internal/pickers/hooks/date-helpers-hooks.js +0 -55
- package/node/internal/pickers/hooks/useIsLandscape.js +0 -59
- package/node/internal/pickers/hooks/useMaskedInput.js +0 -115
- package/node/internal/pickers/hooks/useOpenState.js +0 -53
- package/node/internal/pickers/hooks/usePickerState.js +0 -134
- package/node/internal/pickers/hooks/useUtils.js +0 -42
- package/node/internal/pickers/hooks/useValidation.js +0 -65
- package/node/internal/pickers/hooks/useViews.js +0 -64
- package/node/internal/pickers/test-utils.js +0 -122
- package/node/internal/pickers/text-field-helper.js +0 -86
- package/node/internal/pickers/time-utils.js +0 -92
- package/node/internal/pickers/typings/BasePicker.js +0 -5
- package/node/internal/pickers/typings/Views.js +0 -5
- package/node/internal/pickers/typings/helpers.js +0 -5
- package/node/internal/pickers/utils.js +0 -58
- package/node/internal/pickers/wrappers/DesktopTooltipWrapper.js +0 -74
- package/node/internal/pickers/wrappers/DesktopWrapper.js +0 -63
- package/node/internal/pickers/wrappers/MobileWrapper.js +0 -68
- package/node/internal/pickers/wrappers/PickerStaticWrapper.js +0 -88
- package/node/internal/pickers/wrappers/ResponsiveWrapper.js +0 -64
- package/node/internal/pickers/wrappers/WrapperProps.js +0 -5
- package/node/internal/pickers/wrappers/WrapperVariantContext.js +0 -25
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
2
|
-
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
3
|
-
const _excluded = ["date", "isLandscape", "isMobileKeyboardViewOpen", "onChange", "toggleMobileKeyboardView", "toolbarFormat", "toolbarPlaceholder", "toolbarTitle", "views"];
|
|
4
|
-
import * as React from 'react';
|
|
5
|
-
import Typography from '@mui/material/Typography';
|
|
6
|
-
import { styled } from '@mui/material/styles';
|
|
7
|
-
import { generateUtilityClasses } from '@mui/base';
|
|
8
|
-
import PickersToolbar from '../internal/pickers/PickersToolbar';
|
|
9
|
-
import { useUtils } from '../internal/pickers/hooks/useUtils';
|
|
10
|
-
import { isYearAndMonthViews, isYearOnlyView } from './shared';
|
|
11
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
12
|
-
const classes = generateUtilityClasses('PrivateDatePickerToolbar', ['penIcon']);
|
|
13
|
-
const DatePickerToolbarRoot = styled(PickersToolbar)({
|
|
14
|
-
[`& .${classes.penIcon}`]: {
|
|
15
|
-
position: 'relative',
|
|
16
|
-
top: 4
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
const DatePickerToolbarTitle = styled(Typography)(({
|
|
20
|
-
ownerState
|
|
21
|
-
}) => _extends({}, ownerState.isLandscape && {
|
|
22
|
-
margin: 'auto 16px auto auto'
|
|
23
|
-
}));
|
|
24
|
-
/**
|
|
25
|
-
* @ignore - internal component.
|
|
26
|
-
*/
|
|
27
|
-
|
|
28
|
-
const DatePickerToolbar = /*#__PURE__*/React.forwardRef(function DatePickerToolbar(props, ref) {
|
|
29
|
-
const {
|
|
30
|
-
date,
|
|
31
|
-
isLandscape,
|
|
32
|
-
isMobileKeyboardViewOpen,
|
|
33
|
-
toggleMobileKeyboardView,
|
|
34
|
-
toolbarFormat,
|
|
35
|
-
toolbarPlaceholder = '––',
|
|
36
|
-
toolbarTitle = 'Select date',
|
|
37
|
-
views
|
|
38
|
-
} = props,
|
|
39
|
-
other = _objectWithoutPropertiesLoose(props, _excluded);
|
|
40
|
-
|
|
41
|
-
const utils = useUtils();
|
|
42
|
-
const dateText = React.useMemo(() => {
|
|
43
|
-
if (!date) {
|
|
44
|
-
return toolbarPlaceholder;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
if (toolbarFormat) {
|
|
48
|
-
return utils.formatByString(date, toolbarFormat);
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
if (isYearOnlyView(views)) {
|
|
52
|
-
return utils.format(date, 'year');
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
if (isYearAndMonthViews(views)) {
|
|
56
|
-
return utils.format(date, 'month');
|
|
57
|
-
} // Little localization hack (Google is doing the same for android native pickers):
|
|
58
|
-
// For english localization it is convenient to include weekday into the date "Mon, Jun 1".
|
|
59
|
-
// For other locales using strings like "June 1", without weekday.
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
return /en/.test(utils.getCurrentLocaleCode()) ? utils.format(date, 'normalDateWithWeekday') : utils.format(date, 'normalDate');
|
|
63
|
-
}, [date, toolbarFormat, toolbarPlaceholder, utils, views]);
|
|
64
|
-
const ownerState = props;
|
|
65
|
-
return /*#__PURE__*/_jsx(DatePickerToolbarRoot, _extends({
|
|
66
|
-
ref: ref,
|
|
67
|
-
toolbarTitle: toolbarTitle,
|
|
68
|
-
isMobileKeyboardViewOpen: isMobileKeyboardViewOpen,
|
|
69
|
-
toggleMobileKeyboardView: toggleMobileKeyboardView,
|
|
70
|
-
isLandscape: isLandscape,
|
|
71
|
-
penIconClassName: classes.penIcon,
|
|
72
|
-
ownerState: ownerState
|
|
73
|
-
}, other, {
|
|
74
|
-
children: /*#__PURE__*/_jsx(DatePickerToolbarTitle, {
|
|
75
|
-
variant: "h4",
|
|
76
|
-
align: isLandscape ? 'left' : 'center',
|
|
77
|
-
ownerState: ownerState,
|
|
78
|
-
children: dateText
|
|
79
|
-
})
|
|
80
|
-
}));
|
|
81
|
-
});
|
|
82
|
-
export default DatePickerToolbar;
|
package/DatePicker/shared.d.ts
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import { ParseableDate } from '../internal/pickers/constants/prop-types';
|
|
3
|
-
import { OverrideParseableDateProps } from '../internal/pickers/hooks/date-helpers-hooks';
|
|
4
|
-
import { CalendarPickerView } from '../CalendarPicker';
|
|
5
|
-
import { ExportedCalendarPickerProps } from '../CalendarPicker/CalendarPicker';
|
|
6
|
-
import { DateValidationError, ValidationProps } from '../internal/pickers/hooks/useValidation';
|
|
7
|
-
import { ExportedDateInputProps } from '../internal/pickers/PureDateInput';
|
|
8
|
-
import { BasePickerProps, ToolbarComponentProps } from '../internal/pickers/typings/BasePicker';
|
|
9
|
-
export declare type DatePickerView = 'year' | 'day' | 'month';
|
|
10
|
-
export interface BaseDatePickerProps<TDate> extends ExportedCalendarPickerProps<TDate>, BasePickerProps<ParseableDate<TDate>, TDate | null>, ValidationProps<DateValidationError, ParseableDate<TDate>>, ExportedDateInputProps<ParseableDate<TDate>, TDate | null> {
|
|
11
|
-
/**
|
|
12
|
-
* The components used for each slot.
|
|
13
|
-
* Either a string to use a HTML element or a component.
|
|
14
|
-
* @default {}
|
|
15
|
-
*/
|
|
16
|
-
components?: OverrideParseableDateProps<TDate, ExportedCalendarPickerProps<TDate>, 'minDate' | 'maxDate'>['components'] & ExportedDateInputProps<ParseableDate<TDate>, TDate | null>['components'];
|
|
17
|
-
/**
|
|
18
|
-
* Callback fired on view change.
|
|
19
|
-
*/
|
|
20
|
-
onViewChange?: (view: DatePickerView) => void;
|
|
21
|
-
/**
|
|
22
|
-
* First view to show.
|
|
23
|
-
*/
|
|
24
|
-
openTo?: DatePickerView;
|
|
25
|
-
/**
|
|
26
|
-
* Component that will replace default toolbar renderer.
|
|
27
|
-
* @default DatePickerToolbar
|
|
28
|
-
*/
|
|
29
|
-
ToolbarComponent?: React.JSXElementConstructor<ToolbarComponentProps<TDate | null>>;
|
|
30
|
-
/**
|
|
31
|
-
* Mobile picker title, displaying in the toolbar.
|
|
32
|
-
* @default 'Select date'
|
|
33
|
-
*/
|
|
34
|
-
toolbarTitle?: React.ReactNode;
|
|
35
|
-
/**
|
|
36
|
-
* Array of views to show.
|
|
37
|
-
*/
|
|
38
|
-
views?: readonly DatePickerView[];
|
|
39
|
-
}
|
|
40
|
-
export declare const isYearOnlyView: (views: readonly CalendarPickerView[]) => views is readonly "year"[];
|
|
41
|
-
export declare const isYearAndMonthViews: (views: readonly CalendarPickerView[]) => views is readonly ("month" | "year")[];
|
|
42
|
-
export declare type DefaultizedProps<Props> = Props & {
|
|
43
|
-
inputFormat: string;
|
|
44
|
-
};
|
|
45
|
-
export declare function useDatePickerDefaultizedProps<Props extends BaseDatePickerProps<unknown>>({ openTo, views, minDate: minDateProp, maxDate: maxDateProp, ...other }: Props, name: string): DefaultizedProps<Props> & Required<Pick<BaseDatePickerProps<unknown>, 'openTo' | 'views'>>;
|
package/DatePicker/shared.js
DELETED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
-
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
-
const _excluded = ["openTo", "views", "minDate", "maxDate"];
|
|
4
|
-
import { useThemeProps } from '@mui/material/styles';
|
|
5
|
-
import { useDefaultDates, useUtils } from '../internal/pickers/hooks/useUtils';
|
|
6
|
-
export const isYearOnlyView = views => views.length === 1 && views[0] === 'year';
|
|
7
|
-
export const isYearAndMonthViews = views => views.length === 2 && views.indexOf('month') !== -1 && views.indexOf('year') !== -1;
|
|
8
|
-
|
|
9
|
-
const getFormatAndMaskByViews = (views, utils) => {
|
|
10
|
-
if (isYearOnlyView(views)) {
|
|
11
|
-
return {
|
|
12
|
-
mask: '____',
|
|
13
|
-
inputFormat: utils.formats.year
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
if (isYearAndMonthViews(views)) {
|
|
18
|
-
return {
|
|
19
|
-
disableMaskedInput: true,
|
|
20
|
-
inputFormat: utils.formats.monthAndYear
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
return {
|
|
25
|
-
mask: '__/__/____',
|
|
26
|
-
inputFormat: utils.formats.keyboardDate
|
|
27
|
-
};
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
export function useDatePickerDefaultizedProps(_ref, name) {
|
|
31
|
-
let {
|
|
32
|
-
openTo = 'day',
|
|
33
|
-
views = ['year', 'day'],
|
|
34
|
-
minDate: minDateProp,
|
|
35
|
-
maxDate: maxDateProp
|
|
36
|
-
} = _ref,
|
|
37
|
-
other = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
38
|
-
|
|
39
|
-
const utils = useUtils();
|
|
40
|
-
const defaultDates = useDefaultDates();
|
|
41
|
-
const minDate = minDateProp != null ? minDateProp : defaultDates.minDate;
|
|
42
|
-
const maxDate = maxDateProp != null ? maxDateProp : defaultDates.maxDate; // This is technically unsound if the type parameters appear in optional props.
|
|
43
|
-
// Optional props can be filled by `useThemeProps` with types that don't match the type parameters.
|
|
44
|
-
|
|
45
|
-
return useThemeProps({
|
|
46
|
-
props: _extends({
|
|
47
|
-
views,
|
|
48
|
-
openTo,
|
|
49
|
-
minDate,
|
|
50
|
-
maxDate
|
|
51
|
-
}, getFormatAndMaskByViews(views, utils), other),
|
|
52
|
-
name
|
|
53
|
-
});
|
|
54
|
-
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { RangeInput, DateRange, CurrentlySelectingRangeEndProps } from './RangeTypes';
|
|
3
|
-
import { DateRangeValidationError } from '../internal/pickers/date-utils';
|
|
4
|
-
import { DateInputProps, ExportedDateInputProps, MuiTextFieldProps } from '../internal/pickers/PureDateInput';
|
|
5
|
-
export interface ExportedDateRangePickerInputProps extends Omit<ExportedDateInputProps<RangeInput<any>, DateRange<any>>, 'renderInput'> {
|
|
6
|
-
/**
|
|
7
|
-
* The `renderInput` prop allows you to customize the rendered input.
|
|
8
|
-
* The `startProps` and `endProps` arguments of this render prop contains props of [TextField](https://mui.com/api/text-field/#textfield-api),
|
|
9
|
-
* that you need to forward to the range start/end inputs respectively.
|
|
10
|
-
* Pay specific attention to the `ref` and `inputProps` keys.
|
|
11
|
-
* @example
|
|
12
|
-
* ```jsx
|
|
13
|
-
* <DateRangePicker
|
|
14
|
-
* renderInput={(startProps, endProps) => (
|
|
15
|
-
* <React.Fragment>
|
|
16
|
-
* <TextField {...startProps} />
|
|
17
|
-
* <Box sx={{ mx: 2 }}> to </Box>
|
|
18
|
-
* <TextField {...endProps} />
|
|
19
|
-
* </React.Fragment>;
|
|
20
|
-
* )}
|
|
21
|
-
* />
|
|
22
|
-
* ````
|
|
23
|
-
*/
|
|
24
|
-
renderInput: (startProps: MuiTextFieldProps, endProps: MuiTextFieldProps) => React.ReactElement;
|
|
25
|
-
}
|
|
26
|
-
export interface DateRangeInputProps extends ExportedDateRangePickerInputProps, CurrentlySelectingRangeEndProps, Omit<DateInputProps<RangeInput<any>, DateRange<any>>, 'validationError' | 'renderInput'> {
|
|
27
|
-
startText: React.ReactNode;
|
|
28
|
-
endText: React.ReactNode;
|
|
29
|
-
validationError: DateRangeValidationError;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* @ignore - internal component.
|
|
33
|
-
*/
|
|
34
|
-
declare const DateRangePickerInput: React.ForwardRefExoticComponent<DateRangeInputProps & React.RefAttributes<HTMLDivElement>>;
|
|
35
|
-
export default DateRangePickerInput;
|
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
-
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
-
const _excluded = ["currentlySelectingRangeEnd", "disableOpenPicker", "endText", "onBlur", "onChange", "open", "openPicker", "rawValue", "rawValue", "readOnly", "renderInput", "setCurrentlySelectingRangeEnd", "startText", "TextFieldProps", "validationError"];
|
|
4
|
-
import * as React from 'react';
|
|
5
|
-
import { styled } from '@mui/material/styles';
|
|
6
|
-
import { useUtils } from '../internal/pickers/hooks/useUtils';
|
|
7
|
-
import { useMaskedInput } from '../internal/pickers/hooks/useMaskedInput';
|
|
8
|
-
import { WrapperVariantContext } from '../internal/pickers/wrappers/WrapperVariantContext';
|
|
9
|
-
import { executeInTheNextEventLoopTick } from '../internal/pickers/utils';
|
|
10
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
11
|
-
const DateRangePickerInputRoot = styled('div')(({
|
|
12
|
-
theme
|
|
13
|
-
}) => ({
|
|
14
|
-
display: 'flex',
|
|
15
|
-
alignItems: 'baseline',
|
|
16
|
-
[theme.breakpoints.down('xs')]: {
|
|
17
|
-
flexDirection: 'column',
|
|
18
|
-
alignItems: 'center'
|
|
19
|
-
}
|
|
20
|
-
}));
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* @ignore - internal component.
|
|
24
|
-
*/
|
|
25
|
-
const DateRangePickerInput = /*#__PURE__*/React.forwardRef(function DateRangePickerInput(props, ref) {
|
|
26
|
-
const {
|
|
27
|
-
currentlySelectingRangeEnd,
|
|
28
|
-
disableOpenPicker,
|
|
29
|
-
endText,
|
|
30
|
-
onBlur,
|
|
31
|
-
onChange,
|
|
32
|
-
open,
|
|
33
|
-
openPicker,
|
|
34
|
-
rawValue: [start, end],
|
|
35
|
-
readOnly,
|
|
36
|
-
renderInput,
|
|
37
|
-
setCurrentlySelectingRangeEnd,
|
|
38
|
-
startText,
|
|
39
|
-
TextFieldProps,
|
|
40
|
-
validationError: [startValidationError, endValidationError]
|
|
41
|
-
} = props,
|
|
42
|
-
other = _objectWithoutPropertiesLoose(props, _excluded);
|
|
43
|
-
|
|
44
|
-
const utils = useUtils();
|
|
45
|
-
const startRef = React.useRef(null);
|
|
46
|
-
const endRef = React.useRef(null);
|
|
47
|
-
const wrapperVariant = React.useContext(WrapperVariantContext);
|
|
48
|
-
React.useEffect(() => {
|
|
49
|
-
if (!open) {
|
|
50
|
-
return;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
if (currentlySelectingRangeEnd === 'start') {
|
|
54
|
-
var _startRef$current;
|
|
55
|
-
|
|
56
|
-
(_startRef$current = startRef.current) == null ? void 0 : _startRef$current.focus();
|
|
57
|
-
} else if (currentlySelectingRangeEnd === 'end') {
|
|
58
|
-
var _endRef$current;
|
|
59
|
-
|
|
60
|
-
(_endRef$current = endRef.current) == null ? void 0 : _endRef$current.focus();
|
|
61
|
-
}
|
|
62
|
-
}, [currentlySelectingRangeEnd, open]); // TODO: rethink this approach. We do not need to wait for calendar to be updated to rerender input (looks like freezing)
|
|
63
|
-
// TODO: so simply break 1 react's commit phase in 2 (first for input and second for calendars) by executing onChange in the next tick
|
|
64
|
-
|
|
65
|
-
const lazyHandleChangeCallback = React.useCallback((...args) => executeInTheNextEventLoopTick(() => onChange(...args)), [onChange]);
|
|
66
|
-
|
|
67
|
-
const handleStartChange = (date, inputString) => {
|
|
68
|
-
lazyHandleChangeCallback([date, utils.date(end)], inputString);
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
const handleEndChange = (date, inputString) => {
|
|
72
|
-
lazyHandleChangeCallback([utils.date(start), date], inputString);
|
|
73
|
-
};
|
|
74
|
-
|
|
75
|
-
const openRangeStartSelection = () => {
|
|
76
|
-
if (setCurrentlySelectingRangeEnd) {
|
|
77
|
-
setCurrentlySelectingRangeEnd('start');
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
if (!readOnly && !disableOpenPicker) {
|
|
81
|
-
openPicker();
|
|
82
|
-
}
|
|
83
|
-
};
|
|
84
|
-
|
|
85
|
-
const openRangeEndSelection = () => {
|
|
86
|
-
if (setCurrentlySelectingRangeEnd) {
|
|
87
|
-
setCurrentlySelectingRangeEnd('end');
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
if (!readOnly && !disableOpenPicker) {
|
|
91
|
-
openPicker();
|
|
92
|
-
}
|
|
93
|
-
};
|
|
94
|
-
|
|
95
|
-
const openOnFocus = wrapperVariant === 'desktop';
|
|
96
|
-
const startInputProps = useMaskedInput(_extends({}, other, {
|
|
97
|
-
readOnly,
|
|
98
|
-
rawValue: start,
|
|
99
|
-
onChange: handleStartChange,
|
|
100
|
-
label: startText,
|
|
101
|
-
validationError: startValidationError !== null,
|
|
102
|
-
TextFieldProps: _extends({}, TextFieldProps, {
|
|
103
|
-
ref: startRef,
|
|
104
|
-
focused: open && currentlySelectingRangeEnd === 'start'
|
|
105
|
-
}),
|
|
106
|
-
inputProps: {
|
|
107
|
-
onClick: !openOnFocus ? openRangeStartSelection : undefined,
|
|
108
|
-
onFocus: openOnFocus ? openRangeStartSelection : undefined
|
|
109
|
-
}
|
|
110
|
-
}));
|
|
111
|
-
const endInputProps = useMaskedInput(_extends({}, other, {
|
|
112
|
-
readOnly,
|
|
113
|
-
label: endText,
|
|
114
|
-
rawValue: end,
|
|
115
|
-
onChange: handleEndChange,
|
|
116
|
-
validationError: endValidationError !== null,
|
|
117
|
-
TextFieldProps: _extends({}, TextFieldProps, {
|
|
118
|
-
ref: endRef,
|
|
119
|
-
focused: open && currentlySelectingRangeEnd === 'end'
|
|
120
|
-
}),
|
|
121
|
-
inputProps: {
|
|
122
|
-
onClick: !openOnFocus ? openRangeEndSelection : undefined,
|
|
123
|
-
onFocus: openOnFocus ? openRangeEndSelection : undefined
|
|
124
|
-
}
|
|
125
|
-
}));
|
|
126
|
-
return /*#__PURE__*/_jsx(DateRangePickerInputRoot, {
|
|
127
|
-
onBlur: onBlur,
|
|
128
|
-
ref: ref,
|
|
129
|
-
children: renderInput(startInputProps, endInputProps)
|
|
130
|
-
});
|
|
131
|
-
});
|
|
132
|
-
export default DateRangePickerInput;
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { ToolbarComponentProps } from '../internal/pickers/typings/BasePicker';
|
|
3
|
-
import { DateRange, CurrentlySelectingRangeEndProps } from './RangeTypes';
|
|
4
|
-
interface DateRangePickerToolbarProps extends CurrentlySelectingRangeEndProps, Pick<ToolbarComponentProps, 'isMobileKeyboardViewOpen' | 'toggleMobileKeyboardView' | 'toolbarTitle' | 'toolbarFormat'> {
|
|
5
|
-
date: DateRange<unknown>;
|
|
6
|
-
startText: React.ReactNode;
|
|
7
|
-
endText: React.ReactNode;
|
|
8
|
-
currentlySelectingRangeEnd: 'start' | 'end';
|
|
9
|
-
setCurrentlySelectingRangeEnd: (newSelectingEnd: 'start' | 'end') => void;
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* @ignore - internal component.
|
|
13
|
-
*/
|
|
14
|
-
declare const DateRangePickerToolbar: ({ currentlySelectingRangeEnd, date: [start, end], endText, isMobileKeyboardViewOpen, setCurrentlySelectingRangeEnd, startText, toggleMobileKeyboardView, toolbarFormat, toolbarTitle, }: DateRangePickerToolbarProps) => JSX.Element;
|
|
15
|
-
export default DateRangePickerToolbar;
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
var _Typography;
|
|
2
|
-
|
|
3
|
-
import * as React from 'react';
|
|
4
|
-
import Typography from '@mui/material/Typography';
|
|
5
|
-
import { styled } from '@mui/material/styles';
|
|
6
|
-
import { generateUtilityClasses } from '@mui/base';
|
|
7
|
-
import PickersToolbar from '../internal/pickers/PickersToolbar';
|
|
8
|
-
import { useUtils } from '../internal/pickers/hooks/useUtils';
|
|
9
|
-
import PickersToolbarButton from '../internal/pickers/PickersToolbarButton';
|
|
10
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
11
|
-
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
12
|
-
const classes = generateUtilityClasses('PrivateDateRangePickerToolbar', ['penIcon']);
|
|
13
|
-
const DateRangePickerToolbarRoot = styled(PickersToolbar)({
|
|
14
|
-
[`& .${classes.penIcon}`]: {
|
|
15
|
-
position: 'relative',
|
|
16
|
-
top: 4
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
const DateRangePickerToolbarContainer = styled('div')({
|
|
20
|
-
display: 'flex'
|
|
21
|
-
});
|
|
22
|
-
/**
|
|
23
|
-
* @ignore - internal component.
|
|
24
|
-
*/
|
|
25
|
-
|
|
26
|
-
const DateRangePickerToolbar = ({
|
|
27
|
-
currentlySelectingRangeEnd,
|
|
28
|
-
date: [start, end],
|
|
29
|
-
endText,
|
|
30
|
-
isMobileKeyboardViewOpen,
|
|
31
|
-
setCurrentlySelectingRangeEnd,
|
|
32
|
-
startText,
|
|
33
|
-
toggleMobileKeyboardView,
|
|
34
|
-
toolbarFormat,
|
|
35
|
-
toolbarTitle = 'Select date range'
|
|
36
|
-
}) => {
|
|
37
|
-
const utils = useUtils();
|
|
38
|
-
const startDateValue = start ? utils.formatByString(start, toolbarFormat || utils.formats.shortDate) : startText;
|
|
39
|
-
const endDateValue = end ? utils.formatByString(end, toolbarFormat || utils.formats.shortDate) : endText;
|
|
40
|
-
return /*#__PURE__*/_jsx(DateRangePickerToolbarRoot, {
|
|
41
|
-
toolbarTitle: toolbarTitle,
|
|
42
|
-
isMobileKeyboardViewOpen: isMobileKeyboardViewOpen,
|
|
43
|
-
toggleMobileKeyboardView: toggleMobileKeyboardView,
|
|
44
|
-
isLandscape: false,
|
|
45
|
-
penIconClassName: classes.penIcon,
|
|
46
|
-
children: /*#__PURE__*/_jsxs(DateRangePickerToolbarContainer, {
|
|
47
|
-
children: [/*#__PURE__*/_jsx(PickersToolbarButton, {
|
|
48
|
-
variant: start !== null ? 'h5' : 'h6',
|
|
49
|
-
value: startDateValue,
|
|
50
|
-
selected: currentlySelectingRangeEnd === 'start',
|
|
51
|
-
onClick: () => setCurrentlySelectingRangeEnd('start')
|
|
52
|
-
}), _Typography || (_Typography = /*#__PURE__*/_jsxs(Typography, {
|
|
53
|
-
variant: "h5",
|
|
54
|
-
children: ["\xA0", '–', "\xA0"]
|
|
55
|
-
})), /*#__PURE__*/_jsx(PickersToolbarButton, {
|
|
56
|
-
variant: end !== null ? 'h5' : 'h6',
|
|
57
|
-
value: endDateValue,
|
|
58
|
-
selected: currentlySelectingRangeEnd === 'end',
|
|
59
|
-
onClick: () => setCurrentlySelectingRangeEnd('end')
|
|
60
|
-
})]
|
|
61
|
-
})
|
|
62
|
-
});
|
|
63
|
-
};
|
|
64
|
-
|
|
65
|
-
export default DateRangePickerToolbar;
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import PropTypes from 'prop-types';
|
|
3
|
-
import { BasePickerProps } from '../internal/pickers/typings/BasePicker';
|
|
4
|
-
import { WrapperVariant } from '../internal/pickers/wrappers/WrapperVariantContext';
|
|
5
|
-
import { DateRangeInputProps } from './DateRangePickerInput';
|
|
6
|
-
import { DateRange, CurrentlySelectingRangeEndProps, RangeInput } from './RangeTypes';
|
|
7
|
-
import { ExportedCalendarPickerProps } from '../CalendarPicker/CalendarPicker';
|
|
8
|
-
import { ExportedDesktopDateRangeCalendarProps } from './DateRangePickerViewDesktop';
|
|
9
|
-
import { PickerSelectionState } from '../internal/pickers/hooks/usePickerState';
|
|
10
|
-
declare type BaseCalendarPropsToReuse<TDate> = Omit<ExportedCalendarPickerProps<TDate>, 'onYearChange' | 'renderDay'>;
|
|
11
|
-
export interface ExportedDateRangePickerViewProps<TDate> extends BaseCalendarPropsToReuse<TDate>, ExportedDesktopDateRangeCalendarProps<TDate>, Omit<BasePickerProps<RangeInput<TDate>, DateRange<TDate>>, 'value' | 'onChange'> {
|
|
12
|
-
/**
|
|
13
|
-
* If `true`, after selecting `start` date calendar will not automatically switch to the month of `end` date.
|
|
14
|
-
* @default false
|
|
15
|
-
*/
|
|
16
|
-
disableAutoMonthSwitching?: boolean;
|
|
17
|
-
/**
|
|
18
|
-
* Mobile picker title, displaying in the toolbar.
|
|
19
|
-
* @default 'Select date range'
|
|
20
|
-
*/
|
|
21
|
-
toolbarTitle?: React.ReactNode;
|
|
22
|
-
}
|
|
23
|
-
interface DateRangePickerViewProps<TDate> extends CurrentlySelectingRangeEndProps, ExportedDateRangePickerViewProps<TDate> {
|
|
24
|
-
calendars: 1 | 2 | 3;
|
|
25
|
-
open: boolean;
|
|
26
|
-
startText: React.ReactNode;
|
|
27
|
-
endText: React.ReactNode;
|
|
28
|
-
isMobileKeyboardViewOpen: boolean;
|
|
29
|
-
toggleMobileKeyboardView: () => void;
|
|
30
|
-
DateInputProps: DateRangeInputProps;
|
|
31
|
-
date: DateRange<TDate>;
|
|
32
|
-
onDateChange: (date: DateRange<TDate>, currentWrapperVariant: WrapperVariant, isFinish?: PickerSelectionState) => void;
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* @ignore - internal component.
|
|
36
|
-
*/
|
|
37
|
-
export declare function DateRangePickerView<TDate>(props: DateRangePickerViewProps<TDate>): JSX.Element;
|
|
38
|
-
export declare namespace DateRangePickerView {
|
|
39
|
-
var propTypes: {
|
|
40
|
-
calendars: PropTypes.Requireable<number>;
|
|
41
|
-
disableAutoMonthSwitching: PropTypes.Requireable<boolean>;
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
export {};
|
|
@@ -1,177 +0,0 @@
|
|
|
1
|
-
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
-
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
-
const _excluded = ["calendars", "className", "currentlySelectingRangeEnd", "date", "DateInputProps", "defaultCalendarMonth", "disableAutoMonthSwitching", "disableFuture", "disableHighlightToday", "disablePast", "endText", "isMobileKeyboardViewOpen", "maxDate", "minDate", "onDateChange", "onMonthChange", "open", "reduceAnimations", "setCurrentlySelectingRangeEnd", "shouldDisableDate", "showToolbar", "startText", "toggleMobileKeyboardView", "toolbarFormat", "toolbarTitle"];
|
|
4
|
-
import * as React from 'react';
|
|
5
|
-
import PropTypes from 'prop-types';
|
|
6
|
-
import { isRangeValid } from '../internal/pickers/date-utils';
|
|
7
|
-
import { calculateRangeChange } from './date-range-manager';
|
|
8
|
-
import { useUtils } from '../internal/pickers/hooks/useUtils';
|
|
9
|
-
import DateRangePickerToolbar from './DateRangePickerToolbar';
|
|
10
|
-
import { useCalendarState } from '../CalendarPicker/useCalendarState';
|
|
11
|
-
import { DateRangePickerViewMobile } from './DateRangePickerViewMobile';
|
|
12
|
-
import { WrapperVariantContext } from '../internal/pickers/wrappers/WrapperVariantContext';
|
|
13
|
-
import { MobileKeyboardInputView } from '../internal/pickers/Picker/Picker';
|
|
14
|
-
import DateRangePickerInput from './DateRangePickerInput';
|
|
15
|
-
import { defaultReduceAnimations } from '../CalendarPicker/CalendarPicker';
|
|
16
|
-
import DateRangePickerViewDesktop from './DateRangePickerViewDesktop';
|
|
17
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
18
|
-
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
19
|
-
|
|
20
|
-
/**
|
|
21
|
-
* @ignore - internal component.
|
|
22
|
-
*/
|
|
23
|
-
export function DateRangePickerView(props) {
|
|
24
|
-
const {
|
|
25
|
-
calendars,
|
|
26
|
-
className,
|
|
27
|
-
currentlySelectingRangeEnd,
|
|
28
|
-
date,
|
|
29
|
-
DateInputProps,
|
|
30
|
-
defaultCalendarMonth,
|
|
31
|
-
disableAutoMonthSwitching = false,
|
|
32
|
-
disableFuture,
|
|
33
|
-
disableHighlightToday,
|
|
34
|
-
disablePast,
|
|
35
|
-
endText,
|
|
36
|
-
isMobileKeyboardViewOpen,
|
|
37
|
-
maxDate,
|
|
38
|
-
minDate,
|
|
39
|
-
onDateChange,
|
|
40
|
-
onMonthChange,
|
|
41
|
-
open,
|
|
42
|
-
reduceAnimations = defaultReduceAnimations,
|
|
43
|
-
setCurrentlySelectingRangeEnd,
|
|
44
|
-
shouldDisableDate,
|
|
45
|
-
showToolbar,
|
|
46
|
-
startText,
|
|
47
|
-
toggleMobileKeyboardView,
|
|
48
|
-
toolbarFormat,
|
|
49
|
-
toolbarTitle
|
|
50
|
-
} = props,
|
|
51
|
-
other = _objectWithoutPropertiesLoose(props, _excluded);
|
|
52
|
-
|
|
53
|
-
const utils = useUtils();
|
|
54
|
-
const wrapperVariant = React.useContext(WrapperVariantContext);
|
|
55
|
-
const [start, end] = date;
|
|
56
|
-
const {
|
|
57
|
-
changeMonth,
|
|
58
|
-
calendarState,
|
|
59
|
-
isDateDisabled,
|
|
60
|
-
onMonthSwitchingAnimationEnd,
|
|
61
|
-
changeFocusedDay
|
|
62
|
-
} = useCalendarState({
|
|
63
|
-
date: start || end,
|
|
64
|
-
defaultCalendarMonth,
|
|
65
|
-
disableFuture,
|
|
66
|
-
disablePast,
|
|
67
|
-
disableSwitchToMonthOnDayFocus: true,
|
|
68
|
-
maxDate,
|
|
69
|
-
minDate,
|
|
70
|
-
onMonthChange,
|
|
71
|
-
reduceAnimations,
|
|
72
|
-
shouldDisableDate
|
|
73
|
-
});
|
|
74
|
-
const toShowToolbar = showToolbar != null ? showToolbar : wrapperVariant !== 'desktop';
|
|
75
|
-
|
|
76
|
-
const scrollToDayIfNeeded = day => {
|
|
77
|
-
if (!day || !utils.isValid(day) || isDateDisabled(day)) {
|
|
78
|
-
return;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
const currentlySelectedDate = currentlySelectingRangeEnd === 'start' ? start : end;
|
|
82
|
-
|
|
83
|
-
if (currentlySelectedDate === null) {
|
|
84
|
-
// do not scroll if one of ages is not selected
|
|
85
|
-
return;
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
const displayingMonthRange = wrapperVariant === 'mobile' ? 0 : calendars - 1;
|
|
89
|
-
const currentMonthNumber = utils.getMonth(calendarState.currentMonth);
|
|
90
|
-
const requestedMonthNumber = utils.getMonth(day);
|
|
91
|
-
|
|
92
|
-
if (!utils.isSameYear(calendarState.currentMonth, day) || requestedMonthNumber < currentMonthNumber || requestedMonthNumber > currentMonthNumber + displayingMonthRange) {
|
|
93
|
-
const newMonth = currentlySelectingRangeEnd === 'start' ? currentlySelectedDate : // If need to focus end, scroll to the state when "end" is displaying in the last calendar
|
|
94
|
-
utils.addMonths(currentlySelectedDate, -displayingMonthRange);
|
|
95
|
-
changeMonth(newMonth);
|
|
96
|
-
}
|
|
97
|
-
};
|
|
98
|
-
|
|
99
|
-
React.useEffect(() => {
|
|
100
|
-
if (disableAutoMonthSwitching || !open) {
|
|
101
|
-
return;
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
scrollToDayIfNeeded(currentlySelectingRangeEnd === 'start' ? start : end);
|
|
105
|
-
}, [currentlySelectingRangeEnd, date]); // eslint-disable-line
|
|
106
|
-
|
|
107
|
-
const handleChange = React.useCallback(newDate => {
|
|
108
|
-
const {
|
|
109
|
-
nextSelection,
|
|
110
|
-
newRange
|
|
111
|
-
} = calculateRangeChange({
|
|
112
|
-
newDate,
|
|
113
|
-
utils,
|
|
114
|
-
range: date,
|
|
115
|
-
currentlySelectingRangeEnd
|
|
116
|
-
});
|
|
117
|
-
setCurrentlySelectingRangeEnd(nextSelection);
|
|
118
|
-
const isFullRangeSelected = currentlySelectingRangeEnd === 'end' && isRangeValid(utils, newRange);
|
|
119
|
-
onDateChange(newRange, wrapperVariant, isFullRangeSelected ? 'finish' : 'partial');
|
|
120
|
-
}, [currentlySelectingRangeEnd, date, onDateChange, setCurrentlySelectingRangeEnd, utils, wrapperVariant]);
|
|
121
|
-
|
|
122
|
-
const renderView = () => {
|
|
123
|
-
const sharedCalendarProps = _extends({
|
|
124
|
-
date,
|
|
125
|
-
isDateDisabled,
|
|
126
|
-
changeFocusedDay,
|
|
127
|
-
onChange: handleChange,
|
|
128
|
-
reduceAnimations,
|
|
129
|
-
disableHighlightToday,
|
|
130
|
-
onMonthSwitchingAnimationEnd,
|
|
131
|
-
changeMonth,
|
|
132
|
-
currentlySelectingRangeEnd,
|
|
133
|
-
disableFuture,
|
|
134
|
-
disablePast,
|
|
135
|
-
minDate,
|
|
136
|
-
maxDate
|
|
137
|
-
}, calendarState, other);
|
|
138
|
-
|
|
139
|
-
switch (wrapperVariant) {
|
|
140
|
-
case 'desktop':
|
|
141
|
-
{
|
|
142
|
-
return /*#__PURE__*/_jsx(DateRangePickerViewDesktop, _extends({
|
|
143
|
-
calendars: calendars
|
|
144
|
-
}, sharedCalendarProps));
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
default:
|
|
148
|
-
{
|
|
149
|
-
return /*#__PURE__*/_jsx(DateRangePickerViewMobile, _extends({}, sharedCalendarProps));
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
};
|
|
153
|
-
|
|
154
|
-
return /*#__PURE__*/_jsxs("div", {
|
|
155
|
-
className: className,
|
|
156
|
-
children: [toShowToolbar && /*#__PURE__*/_jsx(DateRangePickerToolbar, {
|
|
157
|
-
date: date,
|
|
158
|
-
isMobileKeyboardViewOpen: isMobileKeyboardViewOpen,
|
|
159
|
-
toggleMobileKeyboardView: toggleMobileKeyboardView,
|
|
160
|
-
currentlySelectingRangeEnd: currentlySelectingRangeEnd,
|
|
161
|
-
setCurrentlySelectingRangeEnd: setCurrentlySelectingRangeEnd,
|
|
162
|
-
startText: startText,
|
|
163
|
-
endText: endText,
|
|
164
|
-
toolbarTitle: toolbarTitle,
|
|
165
|
-
toolbarFormat: toolbarFormat
|
|
166
|
-
}), isMobileKeyboardViewOpen ? /*#__PURE__*/_jsx(MobileKeyboardInputView, {
|
|
167
|
-
children: /*#__PURE__*/_jsx(DateRangePickerInput, _extends({
|
|
168
|
-
disableOpenPicker: true,
|
|
169
|
-
ignoreInvalidInputs: true
|
|
170
|
-
}, DateInputProps))
|
|
171
|
-
}) : renderView()]
|
|
172
|
-
});
|
|
173
|
-
}
|
|
174
|
-
process.env.NODE_ENV !== "production" ? DateRangePickerView.propTypes = {
|
|
175
|
-
calendars: PropTypes.oneOf([1, 2, 3]),
|
|
176
|
-
disableAutoMonthSwitching: PropTypes.bool
|
|
177
|
-
} : void 0;
|