@mui/x-date-pickers 6.18.1 → 7.0.0-alpha.1
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 +4 -15
- package/AdapterDateFns/AdapterDateFns.js +8 -90
- package/AdapterDateFnsJalali/AdapterDateFnsJalali.d.ts +4 -15
- package/AdapterDateFnsJalali/AdapterDateFnsJalali.js +8 -90
- package/AdapterDayjs/AdapterDayjs.d.ts +5 -17
- package/AdapterDayjs/AdapterDayjs.js +11 -60
- package/AdapterLuxon/AdapterLuxon.d.ts +4 -15
- package/AdapterLuxon/AdapterLuxon.js +16 -76
- package/AdapterMoment/AdapterMoment.d.ts +4 -20
- package/AdapterMoment/AdapterMoment.js +9 -66
- package/AdapterMomentHijri/AdapterMomentHijri.d.ts +1 -7
- package/AdapterMomentHijri/AdapterMomentHijri.js +1 -30
- package/AdapterMomentJalaali/AdapterMomentJalaali.d.ts +1 -9
- package/AdapterMomentJalaali/AdapterMomentJalaali.js +1 -40
- package/CHANGELOG.md +558 -1
- package/DateCalendar/DateCalendar.js +4 -21
- package/DateCalendar/DateCalendar.types.d.ts +12 -3
- package/DateCalendar/DayCalendar.d.ts +13 -5
- package/DateCalendar/DayCalendar.js +12 -21
- package/DateCalendar/index.d.ts +0 -1
- package/DateCalendar/index.js +1 -3
- package/DateCalendar/useCalendarState.js +2 -3
- package/DateField/DateField.js +5 -21
- package/DateField/DateField.types.d.ts +12 -3
- package/DatePicker/DatePicker.js +0 -13
- package/DatePicker/DatePicker.types.d.ts +1 -14
- package/DatePicker/shared.d.ts +4 -16
- package/DatePicker/shared.js +2 -5
- package/DateTimeField/DateTimeField.js +5 -21
- package/DateTimeField/DateTimeField.types.d.ts +2 -15
- package/DateTimePicker/DateTimePicker.js +0 -13
- package/DateTimePicker/DateTimePicker.types.d.ts +1 -14
- package/DateTimePicker/shared.d.ts +4 -17
- package/DateTimePicker/shared.js +4 -7
- package/DesktopDatePicker/DesktopDatePicker.js +0 -13
- package/DesktopDatePicker/DesktopDatePicker.types.d.ts +2 -15
- package/DesktopDateTimePicker/DesktopDateTimePicker.js +0 -13
- package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +2 -15
- package/DesktopTimePicker/DesktopTimePicker.js +0 -12
- package/DesktopTimePicker/DesktopTimePicker.types.d.ts +2 -15
- package/DigitalClock/DigitalClock.js +18 -26
- package/DigitalClock/DigitalClock.types.d.ts +2 -15
- package/LocalizationProvider/LocalizationProvider.js +0 -6
- package/MobileDatePicker/MobileDatePicker.js +0 -13
- package/MobileDatePicker/MobileDatePicker.types.d.ts +2 -15
- package/MobileDateTimePicker/MobileDateTimePicker.js +0 -13
- package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +2 -15
- package/MobileTimePicker/MobileTimePicker.js +0 -12
- package/MobileTimePicker/MobileTimePicker.types.d.ts +2 -15
- package/MonthCalendar/MonthCalendar.js +3 -7
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.js +7 -18
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.types.d.ts +3 -15
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.d.ts +2 -1
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +16 -6
- package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.d.ts +1 -2
- package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +13 -10
- package/PickersCalendarHeader/PickersCalendarHeader.js +14 -20
- package/PickersCalendarHeader/PickersCalendarHeader.types.d.ts +3 -16
- package/PickersLayout/PickersLayout.js +0 -12
- package/PickersLayout/PickersLayout.types.d.ts +6 -19
- package/PickersLayout/usePickerLayout.js +2 -7
- package/StaticDatePicker/StaticDatePicker.js +0 -13
- package/StaticDatePicker/StaticDatePicker.types.d.ts +2 -14
- package/StaticDateTimePicker/StaticDateTimePicker.js +0 -13
- package/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +2 -14
- package/StaticTimePicker/StaticTimePicker.js +0 -12
- package/StaticTimePicker/StaticTimePicker.types.d.ts +2 -14
- package/TimeClock/TimeClock.js +3 -20
- package/TimeClock/TimeClock.types.d.ts +1 -14
- package/TimeField/TimeField.js +5 -21
- package/TimeField/TimeField.types.d.ts +2 -15
- package/TimePicker/TimePicker.js +0 -12
- package/TimePicker/TimePicker.types.d.ts +1 -14
- package/TimePicker/shared.d.ts +3 -16
- package/TimePicker/shared.js +4 -7
- package/YearCalendar/YearCalendar.js +4 -8
- package/dateTimeViewRenderers/dateTimeViewRenderers.d.ts +2 -2
- package/dateTimeViewRenderers/dateTimeViewRenderers.js +2 -8
- package/dateViewRenderers/dateViewRenderers.d.ts +1 -1
- package/dateViewRenderers/dateViewRenderers.js +0 -4
- package/hooks/useClearableField.d.ts +1 -3
- package/hooks/useClearableField.js +6 -8
- package/index.d.ts +1 -0
- package/index.js +4 -1
- package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.types.d.ts +10 -6
- package/internals/components/PickersModalDialog.d.ts +4 -5
- package/internals/components/PickersPopper.d.ts +5 -6
- package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +7 -8
- package/internals/hooks/useField/useField.types.d.ts +2 -2
- package/internals/hooks/useField/useField.utils.js +0 -1
- package/internals/hooks/useField/useFieldState.js +1 -1
- package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +3 -4
- package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +1 -14
- package/internals/index.d.ts +0 -2
- package/internals/index.js +0 -1
- package/internals/utils/getDefaultReferenceDate.d.ts +1 -2
- package/internals/utils/getDefaultReferenceDate.js +0 -4
- package/legacy/AdapterDateFns/AdapterDateFns.js +11 -92
- package/legacy/AdapterDateFnsJalali/AdapterDateFnsJalali.js +11 -92
- package/legacy/AdapterDayjs/AdapterDayjs.js +15 -63
- package/legacy/AdapterLuxon/AdapterLuxon.js +19 -78
- package/legacy/AdapterMoment/AdapterMoment.js +12 -70
- package/legacy/AdapterMomentHijri/AdapterMomentHijri.js +5 -30
- package/legacy/AdapterMomentJalaali/AdapterMomentJalaali.js +5 -40
- package/legacy/DateCalendar/DateCalendar.js +4 -21
- package/legacy/DateCalendar/DayCalendar.js +10 -16
- package/legacy/DateCalendar/index.js +1 -3
- package/legacy/DateCalendar/useCalendarState.js +2 -3
- package/legacy/DateField/DateField.js +6 -22
- package/legacy/DatePicker/DatePicker.js +0 -13
- package/legacy/DatePicker/shared.js +2 -5
- package/legacy/DateTimeField/DateTimeField.js +6 -22
- package/legacy/DateTimePicker/DateTimePicker.js +0 -13
- package/legacy/DateTimePicker/shared.js +4 -7
- package/legacy/DesktopDatePicker/DesktopDatePicker.js +0 -13
- package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +0 -13
- package/legacy/DesktopTimePicker/DesktopTimePicker.js +0 -12
- package/legacy/DigitalClock/DigitalClock.js +20 -26
- package/legacy/LocalizationProvider/LocalizationProvider.js +0 -6
- package/legacy/MobileDatePicker/MobileDatePicker.js +0 -13
- package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +0 -13
- package/legacy/MobileTimePicker/MobileTimePicker.js +0 -12
- package/legacy/MonthCalendar/MonthCalendar.js +3 -6
- package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.js +11 -18
- package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +16 -6
- package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +15 -10
- package/legacy/PickersCalendarHeader/PickersCalendarHeader.js +14 -20
- package/legacy/PickersLayout/PickersLayout.js +0 -12
- package/legacy/PickersLayout/usePickerLayout.js +2 -7
- package/legacy/StaticDatePicker/StaticDatePicker.js +0 -13
- package/legacy/StaticDateTimePicker/StaticDateTimePicker.js +0 -13
- package/legacy/StaticTimePicker/StaticTimePicker.js +0 -12
- package/legacy/TimeClock/TimeClock.js +3 -20
- package/legacy/TimeField/TimeField.js +5 -21
- package/legacy/TimePicker/TimePicker.js +0 -12
- package/legacy/TimePicker/shared.js +4 -7
- package/legacy/YearCalendar/YearCalendar.js +4 -7
- package/legacy/dateTimeViewRenderers/dateTimeViewRenderers.js +2 -8
- package/legacy/dateViewRenderers/dateViewRenderers.js +0 -4
- package/legacy/hooks/useClearableField.js +6 -8
- package/legacy/index.js +4 -1
- package/legacy/internals/hooks/useField/useField.utils.js +0 -1
- package/legacy/internals/hooks/useField/useFieldState.js +1 -1
- package/legacy/internals/index.js +0 -1
- package/legacy/internals/utils/getDefaultReferenceDate.js +0 -6
- package/legacy/locales/esES.js +6 -7
- package/legacy/locales/eu.js +94 -0
- package/legacy/locales/index.js +1 -0
- package/legacy/timeViewRenderers/timeViewRenderers.js +0 -12
- package/locales/esES.js +6 -7
- package/locales/eu.d.ts +54 -0
- package/locales/eu.js +58 -0
- package/locales/index.d.ts +1 -0
- package/locales/index.js +1 -0
- package/models/adapters.d.ts +10 -135
- package/models/fields.d.ts +0 -6
- package/modern/AdapterDateFns/AdapterDateFns.js +8 -90
- package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +8 -90
- package/modern/AdapterDayjs/AdapterDayjs.js +11 -59
- package/modern/AdapterLuxon/AdapterLuxon.js +16 -76
- package/modern/AdapterMoment/AdapterMoment.js +9 -65
- package/modern/AdapterMomentHijri/AdapterMomentHijri.js +1 -30
- package/modern/AdapterMomentJalaali/AdapterMomentJalaali.js +1 -40
- package/modern/DateCalendar/DateCalendar.js +3 -20
- package/modern/DateCalendar/DayCalendar.js +11 -19
- package/modern/DateCalendar/index.js +1 -3
- package/modern/DateCalendar/useCalendarState.js +2 -3
- package/modern/DateField/DateField.js +4 -20
- package/modern/DatePicker/DatePicker.js +0 -13
- package/modern/DatePicker/shared.js +1 -4
- package/modern/DateTimeField/DateTimeField.js +4 -20
- package/modern/DateTimePicker/DateTimePicker.js +0 -13
- package/modern/DateTimePicker/shared.js +3 -6
- package/modern/DesktopDatePicker/DesktopDatePicker.js +0 -13
- package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +0 -13
- package/modern/DesktopTimePicker/DesktopTimePicker.js +0 -12
- package/modern/DigitalClock/DigitalClock.js +17 -25
- package/modern/LocalizationProvider/LocalizationProvider.js +0 -6
- package/modern/MobileDatePicker/MobileDatePicker.js +0 -13
- package/modern/MobileDateTimePicker/MobileDateTimePicker.js +0 -13
- package/modern/MobileTimePicker/MobileTimePicker.js +0 -12
- package/modern/MonthCalendar/MonthCalendar.js +3 -7
- package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.js +7 -18
- package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +16 -6
- package/modern/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +13 -10
- package/modern/PickersCalendarHeader/PickersCalendarHeader.js +13 -19
- package/modern/PickersLayout/PickersLayout.js +0 -12
- package/modern/PickersLayout/usePickerLayout.js +2 -7
- package/modern/StaticDatePicker/StaticDatePicker.js +0 -13
- package/modern/StaticDateTimePicker/StaticDateTimePicker.js +0 -13
- package/modern/StaticTimePicker/StaticTimePicker.js +0 -12
- package/modern/TimeClock/TimeClock.js +3 -20
- package/modern/TimeField/TimeField.js +4 -20
- package/modern/TimePicker/TimePicker.js +0 -12
- package/modern/TimePicker/shared.js +3 -6
- package/modern/YearCalendar/YearCalendar.js +4 -8
- package/modern/dateTimeViewRenderers/dateTimeViewRenderers.js +1 -7
- package/modern/dateViewRenderers/dateViewRenderers.js +0 -4
- package/modern/hooks/useClearableField.js +5 -7
- package/modern/index.js +4 -1
- package/modern/internals/hooks/useField/useField.utils.js +0 -1
- package/modern/internals/hooks/useField/useFieldState.js +1 -1
- package/modern/internals/index.js +0 -1
- package/modern/internals/utils/getDefaultReferenceDate.js +0 -1
- package/modern/locales/esES.js +6 -7
- package/modern/locales/eu.js +58 -0
- package/modern/locales/index.js +1 -0
- package/modern/timeViewRenderers/timeViewRenderers.js +0 -12
- package/node/AdapterDateFns/AdapterDateFns.js +8 -90
- package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +8 -90
- package/node/AdapterDayjs/AdapterDayjs.js +11 -59
- package/node/AdapterLuxon/AdapterLuxon.js +16 -76
- package/node/AdapterMoment/AdapterMoment.js +9 -65
- package/node/AdapterMomentHijri/AdapterMomentHijri.js +1 -30
- package/node/AdapterMomentJalaali/AdapterMomentJalaali.js +1 -40
- package/node/DateCalendar/DateCalendar.js +3 -20
- package/node/DateCalendar/DayCalendar.js +11 -19
- package/node/DateCalendar/index.js +1 -21
- package/node/DateCalendar/useCalendarState.js +1 -2
- package/node/DateField/DateField.js +4 -20
- package/node/DatePicker/DatePicker.js +0 -13
- package/node/DatePicker/shared.js +1 -4
- package/node/DateTimeField/DateTimeField.js +4 -20
- package/node/DateTimePicker/DateTimePicker.js +0 -13
- package/node/DateTimePicker/shared.js +3 -6
- package/node/DesktopDatePicker/DesktopDatePicker.js +0 -13
- package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +0 -13
- package/node/DesktopTimePicker/DesktopTimePicker.js +0 -12
- package/node/DigitalClock/DigitalClock.js +17 -25
- package/node/LocalizationProvider/LocalizationProvider.js +0 -6
- package/node/MobileDatePicker/MobileDatePicker.js +0 -13
- package/node/MobileDateTimePicker/MobileDateTimePicker.js +0 -13
- package/node/MobileTimePicker/MobileTimePicker.js +0 -12
- package/node/MonthCalendar/MonthCalendar.js +3 -7
- package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +7 -18
- package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +16 -6
- package/node/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +13 -10
- package/node/PickersCalendarHeader/PickersCalendarHeader.js +13 -19
- package/node/PickersLayout/PickersLayout.js +0 -12
- package/node/PickersLayout/usePickerLayout.js +2 -7
- package/node/StaticDatePicker/StaticDatePicker.js +0 -13
- package/node/StaticDateTimePicker/StaticDateTimePicker.js +0 -13
- package/node/StaticTimePicker/StaticTimePicker.js +0 -12
- package/node/TimeClock/TimeClock.js +3 -20
- package/node/TimeField/TimeField.js +4 -20
- package/node/TimePicker/TimePicker.js +0 -12
- package/node/TimePicker/shared.js +3 -6
- package/node/YearCalendar/YearCalendar.js +4 -8
- package/node/dateTimeViewRenderers/dateTimeViewRenderers.js +1 -7
- package/node/dateViewRenderers/dateViewRenderers.js +0 -4
- package/node/hooks/useClearableField.js +5 -7
- package/node/index.js +13 -1
- package/node/internals/hooks/useField/useField.utils.js +0 -1
- package/node/internals/hooks/useField/useFieldState.js +1 -1
- package/node/internals/index.js +0 -7
- package/node/internals/utils/getDefaultReferenceDate.js +1 -3
- package/node/locales/esES.js +6 -7
- package/node/locales/eu.js +64 -0
- package/node/locales/index.js +11 -0
- package/node/timeViewRenderers/timeViewRenderers.js +0 -12
- package/package.json +1 -1
- package/themeAugmentation/overrides.d.ts +1 -1
- package/timeViewRenderers/timeViewRenderers.d.ts +3 -3
- package/timeViewRenderers/timeViewRenderers.js +0 -12
- package/internals/utils/slots-migration.d.ts +0 -36
- package/internals/utils/slots-migration.js +0 -13
- package/legacy/internals/utils/slots-migration.js +0 -14
- package/modern/internals/utils/slots-migration.js +0 -13
- package/node/internals/utils/slots-migration.js +0 -21
|
@@ -10,7 +10,6 @@ import { PickerSelectionState } from '../internals/hooks/usePicker/usePickerValu
|
|
|
10
10
|
import { ExportedUseViewsOptions } from '../internals/hooks/useViews';
|
|
11
11
|
import { DateView, TimezoneProps } from '../models';
|
|
12
12
|
import { DefaultizedProps } from '../internals/models/helpers';
|
|
13
|
-
import { SlotsAndSlotProps } from '../internals/utils/slots-migration';
|
|
14
13
|
import { ExportedYearCalendarProps } from '../YearCalendar/YearCalendar.types';
|
|
15
14
|
import { ExportedMonthCalendarProps } from '../MonthCalendar/MonthCalendar.types';
|
|
16
15
|
export interface DateCalendarSlotsComponent<TDate> extends PickersCalendarHeaderSlotsComponent, DayCalendarSlotsComponent<TDate> {
|
|
@@ -19,7 +18,7 @@ export interface DateCalendarSlotsComponent<TDate> extends PickersCalendarHeader
|
|
|
19
18
|
* Check the [PickersCalendarHeader](https://mui.com/x/api/date-pickers/pickers-calendar-header/) component.
|
|
20
19
|
* @default PickersCalendarHeader
|
|
21
20
|
*/
|
|
22
|
-
|
|
21
|
+
calendarHeader?: React.ElementType<PickersCalendarHeaderProps<TDate>>;
|
|
23
22
|
}
|
|
24
23
|
export interface DateCalendarSlotsComponentsProps<TDate> extends PickersCalendarHeaderSlotsComponentsProps<TDate>, DayCalendarSlotsComponentsProps<TDate> {
|
|
25
24
|
calendarHeader?: SlotComponentProps<typeof PickersCalendarHeader, {}, DateCalendarProps<TDate>>;
|
|
@@ -63,7 +62,7 @@ export interface ExportedDateCalendarProps<TDate> extends ExportedDayCalendarPro
|
|
|
63
62
|
*/
|
|
64
63
|
onMonthChange?: (month: TDate) => void;
|
|
65
64
|
}
|
|
66
|
-
export interface DateCalendarProps<TDate> extends ExportedDateCalendarProps<TDate>, ExportedUseViewsOptions<DateView
|
|
65
|
+
export interface DateCalendarProps<TDate> extends ExportedDateCalendarProps<TDate>, ExportedUseViewsOptions<DateView> {
|
|
67
66
|
/**
|
|
68
67
|
* The selected value.
|
|
69
68
|
* Used when the component is controlled.
|
|
@@ -92,5 +91,15 @@ export interface DateCalendarProps<TDate> extends ExportedDateCalendarProps<TDat
|
|
|
92
91
|
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
93
92
|
*/
|
|
94
93
|
sx?: SxProps<Theme>;
|
|
94
|
+
/**
|
|
95
|
+
* Overridable component slots.
|
|
96
|
+
* @default {}
|
|
97
|
+
*/
|
|
98
|
+
slots?: DateCalendarSlotsComponent<TDate>;
|
|
99
|
+
/**
|
|
100
|
+
* The props used for each component slot.
|
|
101
|
+
* @default {}
|
|
102
|
+
*/
|
|
103
|
+
slotProps?: DateCalendarSlotsComponentsProps<TDate>;
|
|
95
104
|
}
|
|
96
105
|
export type DateCalendarDefaultizedProps<TDate> = DefaultizedProps<DateCalendarProps<TDate>, 'views' | 'openTo' | 'loading' | 'reduceAnimations' | 'renderLoading' | keyof BaseDateValidationProps<TDate>>;
|
|
@@ -5,7 +5,6 @@ import { PickerOnChangeFn } from '../internals/hooks/useViews';
|
|
|
5
5
|
import { SlideDirection, SlideTransitionProps } from './PickersSlideTransition';
|
|
6
6
|
import { BaseDateValidationProps, DayValidationProps, MonthValidationProps, YearValidationProps } from '../internals/models/validation';
|
|
7
7
|
import { DayCalendarClasses } from './dayCalendarClasses';
|
|
8
|
-
import { SlotsAndSlotProps } from '../internals/utils/slots-migration';
|
|
9
8
|
import { TimezoneProps } from '../models';
|
|
10
9
|
import { DefaultizedProps } from '../internals/models/helpers';
|
|
11
10
|
export interface DayCalendarSlotsComponent<TDate> {
|
|
@@ -14,7 +13,7 @@ export interface DayCalendarSlotsComponent<TDate> {
|
|
|
14
13
|
* Check the [PickersDay](https://mui.com/x/api/date-pickers/pickers-day/) component.
|
|
15
14
|
* @default PickersDay
|
|
16
15
|
*/
|
|
17
|
-
|
|
16
|
+
day?: React.ElementType<PickersDayProps<TDate>>;
|
|
18
17
|
}
|
|
19
18
|
export interface DayCalendarSlotsComponentsProps<TDate> {
|
|
20
19
|
day?: SlotComponentProps<typeof PickersDay, {}, DayCalendarProps<TDate> & {
|
|
@@ -37,12 +36,11 @@ export interface ExportedDayCalendarProps<TDate> extends ExportedPickersDayProps
|
|
|
37
36
|
renderLoading?: () => React.ReactNode;
|
|
38
37
|
/**
|
|
39
38
|
* Formats the day of week displayed in the calendar header.
|
|
40
|
-
* @param {string} day The day of week provided by the adapter. Deprecated, will be removed in v7: Use `date` instead.
|
|
41
39
|
* @param {TDate} date The date of the day of week provided by the adapter.
|
|
42
40
|
* @returns {string} The name to display.
|
|
43
41
|
* @default (_day: string, date: TDate) => adapter.format(date, 'weekdayShort').charAt(0).toUpperCase()
|
|
44
42
|
*/
|
|
45
|
-
dayOfWeekFormatter?: (
|
|
43
|
+
dayOfWeekFormatter?: (date: TDate) => string;
|
|
46
44
|
/**
|
|
47
45
|
* If `true`, the week number will be display in the calendar.
|
|
48
46
|
*/
|
|
@@ -54,7 +52,7 @@ export interface ExportedDayCalendarProps<TDate> extends ExportedPickersDayProps
|
|
|
54
52
|
*/
|
|
55
53
|
fixedWeekNumber?: number;
|
|
56
54
|
}
|
|
57
|
-
export interface DayCalendarProps<TDate> extends ExportedDayCalendarProps<TDate>, DayValidationProps<TDate>, MonthValidationProps<TDate>, YearValidationProps<TDate>, Required<BaseDateValidationProps<TDate>>, DefaultizedProps<TimezoneProps, 'timezone'
|
|
55
|
+
export interface DayCalendarProps<TDate> extends ExportedDayCalendarProps<TDate>, DayValidationProps<TDate>, MonthValidationProps<TDate>, YearValidationProps<TDate>, Required<BaseDateValidationProps<TDate>>, DefaultizedProps<TimezoneProps, 'timezone'> {
|
|
58
56
|
autoFocus?: boolean;
|
|
59
57
|
className?: string;
|
|
60
58
|
currentMonth: TDate;
|
|
@@ -73,6 +71,16 @@ export interface DayCalendarProps<TDate> extends ExportedDayCalendarProps<TDate>
|
|
|
73
71
|
onFocusedViewChange?: (newHasFocus: boolean) => void;
|
|
74
72
|
gridLabelId?: string;
|
|
75
73
|
classes?: Partial<DayCalendarClasses>;
|
|
74
|
+
/**
|
|
75
|
+
* Overridable component slots.
|
|
76
|
+
* @default {}
|
|
77
|
+
*/
|
|
78
|
+
slots?: DayCalendarSlotsComponent<TDate>;
|
|
79
|
+
/**
|
|
80
|
+
* The props used for each component slot.
|
|
81
|
+
* @default {}
|
|
82
|
+
*/
|
|
83
|
+
slotProps?: DayCalendarSlotsComponentsProps<TDate>;
|
|
76
84
|
}
|
|
77
85
|
/**
|
|
78
86
|
* @ignore - do not document.
|
|
@@ -133,7 +133,7 @@ const PickersCalendarWeek = styled('div', {
|
|
|
133
133
|
justifyContent: 'center'
|
|
134
134
|
});
|
|
135
135
|
function WrappedDay(_ref) {
|
|
136
|
-
var
|
|
136
|
+
var _slots$day;
|
|
137
137
|
let {
|
|
138
138
|
parentProps,
|
|
139
139
|
day,
|
|
@@ -149,8 +149,6 @@ function WrappedDay(_ref) {
|
|
|
149
149
|
disableHighlightToday,
|
|
150
150
|
isMonthSwitchingAnimating,
|
|
151
151
|
showDaysOutsideCurrentMonth,
|
|
152
|
-
components,
|
|
153
|
-
componentsProps,
|
|
154
152
|
slots,
|
|
155
153
|
slotProps,
|
|
156
154
|
timezone
|
|
@@ -160,11 +158,11 @@ function WrappedDay(_ref) {
|
|
|
160
158
|
const isFocusableDay = focusableDay !== null && utils.isSameDay(day, focusableDay);
|
|
161
159
|
const isSelected = selectedDays.some(selectedDay => utils.isSameDay(selectedDay, day));
|
|
162
160
|
const isToday = utils.isSameDay(day, now);
|
|
163
|
-
const Day = (
|
|
161
|
+
const Day = (_slots$day = slots == null ? void 0 : slots.day) != null ? _slots$day : PickersDay;
|
|
164
162
|
// We don't want to pass to ownerState down, to avoid re-rendering all the day whenever a prop changes.
|
|
165
163
|
const _useSlotProps = useSlotProps({
|
|
166
164
|
elementType: Day,
|
|
167
|
-
externalSlotProps:
|
|
165
|
+
externalSlotProps: slotProps == null ? void 0 : slotProps.day,
|
|
168
166
|
additionalProps: _extends({
|
|
169
167
|
disableHighlightToday,
|
|
170
168
|
showDaysOutsideCurrentMonth,
|
|
@@ -218,6 +216,7 @@ export function DayCalendar(inProps) {
|
|
|
218
216
|
props: inProps,
|
|
219
217
|
name: 'MuiDayCalendar'
|
|
220
218
|
});
|
|
219
|
+
const utils = useUtils();
|
|
221
220
|
const {
|
|
222
221
|
onFocusedDayChange,
|
|
223
222
|
className,
|
|
@@ -241,7 +240,7 @@ export function DayCalendar(inProps) {
|
|
|
241
240
|
shouldDisableDate,
|
|
242
241
|
shouldDisableMonth,
|
|
243
242
|
shouldDisableYear,
|
|
244
|
-
dayOfWeekFormatter
|
|
243
|
+
dayOfWeekFormatter = date => utils.format(date, 'weekdayShort').charAt(0).toUpperCase(),
|
|
245
244
|
hasFocus,
|
|
246
245
|
onFocusedViewChange,
|
|
247
246
|
gridLabelId,
|
|
@@ -251,13 +250,9 @@ export function DayCalendar(inProps) {
|
|
|
251
250
|
timezone
|
|
252
251
|
} = props;
|
|
253
252
|
const now = useNow(timezone);
|
|
254
|
-
const utils = useUtils();
|
|
255
253
|
const classes = useUtilityClasses(props);
|
|
256
254
|
const theme = useTheme();
|
|
257
255
|
const isRTL = theme.direction === 'rtl';
|
|
258
|
-
|
|
259
|
-
// before we could define this outside of the component scope, but now we need utils, which is only defined here
|
|
260
|
-
const dayOfWeekFormatter = dayOfWeekFormatterFromProps || ((_day, date) => utils.format(date, 'weekdayShort').charAt(0).toUpperCase());
|
|
261
256
|
const isDateDisabled = useIsDateDisabled({
|
|
262
257
|
shouldDisableDate,
|
|
263
258
|
shouldDisableMonth,
|
|
@@ -412,17 +407,13 @@ export function DayCalendar(inProps) {
|
|
|
412
407
|
"aria-label": localeText.calendarWeekNumberHeaderLabel,
|
|
413
408
|
className: classes.weekNumberLabel,
|
|
414
409
|
children: localeText.calendarWeekNumberHeaderText
|
|
415
|
-
}), getWeekdays(utils, now).map((weekday, i) => {
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
className: classes.weekDayLabel,
|
|
423
|
-
children: (_dayOfWeekFormatter = dayOfWeekFormatter == null ? void 0 : dayOfWeekFormatter(day, weekday)) != null ? _dayOfWeekFormatter : day
|
|
424
|
-
}, day + i.toString());
|
|
425
|
-
})]
|
|
410
|
+
}), getWeekdays(utils, now).map((weekday, i) => /*#__PURE__*/_jsx(PickersCalendarWeekDayLabel, {
|
|
411
|
+
variant: "caption",
|
|
412
|
+
role: "columnheader",
|
|
413
|
+
"aria-label": utils.format(utils.addDays(startOfCurrentWeek, i), 'weekday'),
|
|
414
|
+
className: classes.weekDayLabel,
|
|
415
|
+
children: dayOfWeekFormatter(weekday)
|
|
416
|
+
}, i.toString()))]
|
|
426
417
|
}), loading ? /*#__PURE__*/_jsx(PickersCalendarLoadingContainer, {
|
|
427
418
|
className: classes.loadingContainer,
|
|
428
419
|
children: renderLoading()
|
package/DateCalendar/index.d.ts
CHANGED
|
@@ -10,4 +10,3 @@ export type { PickersFadeTransitionGroupClassKey, PickersFadeTransitionGroupClas
|
|
|
10
10
|
export { pickersSlideTransitionClasses } from './pickersSlideTransitionClasses';
|
|
11
11
|
export type { PickersSlideTransitionClassKey, PickersSlideTransitionClasses, } from './pickersSlideTransitionClasses';
|
|
12
12
|
export type { ExportedSlideTransitionProps } from './PickersSlideTransition';
|
|
13
|
-
export * from '../PickersCalendarHeader';
|
package/DateCalendar/index.js
CHANGED
|
@@ -2,6 +2,4 @@ export { DateCalendar } from './DateCalendar';
|
|
|
2
2
|
export { getDateCalendarUtilityClass, dateCalendarClasses } from './dateCalendarClasses';
|
|
3
3
|
export { dayPickerClasses } from './dayCalendarClasses';
|
|
4
4
|
export { pickersFadeTransitionGroupClasses } from './pickersFadeTransitionGroupClasses';
|
|
5
|
-
export { pickersSlideTransitionClasses } from './pickersSlideTransitionClasses';
|
|
6
|
-
// TODO v7: Remove and export the `PickersCalendarHeader` folder from the root instead.
|
|
7
|
-
export * from '../PickersCalendarHeader';
|
|
5
|
+
export { pickersSlideTransitionClasses } from './pickersSlideTransitionClasses';
|
|
@@ -2,7 +2,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import useEventCallback from '@mui/utils/useEventCallback';
|
|
4
4
|
import { useIsDateDisabled } from './useIsDateDisabled';
|
|
5
|
-
import { useUtils
|
|
5
|
+
import { useUtils } from '../internals/hooks/useUtils';
|
|
6
6
|
import { singleItemValueManager } from '../internals/utils/valueManagers';
|
|
7
7
|
import { SECTION_TYPE_GRANULARITY } from '../internals/utils/getDefaultReferenceDate';
|
|
8
8
|
export const createCalendarStateReducer = (reduceAnimations, disableSwitchToMonthOnDayFocus, utils) => (state, action) => {
|
|
@@ -49,7 +49,6 @@ export const useCalendarState = params => {
|
|
|
49
49
|
shouldDisableDate,
|
|
50
50
|
timezone
|
|
51
51
|
} = params;
|
|
52
|
-
const now = useNow(timezone);
|
|
53
52
|
const utils = useUtils();
|
|
54
53
|
const reducerFn = React.useRef(createCalendarStateReducer(Boolean(reduceAnimations), disableSwitchToMonthOnDayFocus, utils)).current;
|
|
55
54
|
const referenceDate = React.useMemo(() => {
|
|
@@ -73,7 +72,7 @@ export const useCalendarState = params => {
|
|
|
73
72
|
|
|
74
73
|
const [calendarState, dispatch] = React.useReducer(reducerFn, {
|
|
75
74
|
isMonthSwitchingAnimating: false,
|
|
76
|
-
focusedDay:
|
|
75
|
+
focusedDay: referenceDate,
|
|
77
76
|
currentMonth: utils.startOfMonth(referenceDate),
|
|
78
77
|
slideDirection: 'left'
|
|
79
78
|
});
|
package/DateField/DateField.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
-
const _excluded = ["
|
|
3
|
+
const _excluded = ["slots", "slotProps", "InputProps", "inputProps"],
|
|
4
4
|
_excluded2 = ["inputRef"],
|
|
5
5
|
_excluded3 = ["ref", "onPaste", "onKeyDown", "inputMode", "readOnly", "clearable", "onClear"];
|
|
6
6
|
import * as React from 'react';
|
|
@@ -23,14 +23,12 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
23
23
|
* - [DateField API](https://mui.com/x/api/date-pickers/date-field/)
|
|
24
24
|
*/
|
|
25
25
|
const DateField = /*#__PURE__*/React.forwardRef(function DateField(inProps, ref) {
|
|
26
|
-
var
|
|
26
|
+
var _slots$textField;
|
|
27
27
|
const themeProps = useThemeProps({
|
|
28
28
|
props: inProps,
|
|
29
29
|
name: 'MuiDateField'
|
|
30
30
|
});
|
|
31
31
|
const {
|
|
32
|
-
components,
|
|
33
|
-
componentsProps,
|
|
34
32
|
slots,
|
|
35
33
|
slotProps,
|
|
36
34
|
InputProps,
|
|
@@ -38,10 +36,10 @@ const DateField = /*#__PURE__*/React.forwardRef(function DateField(inProps, ref)
|
|
|
38
36
|
} = themeProps,
|
|
39
37
|
other = _objectWithoutPropertiesLoose(themeProps, _excluded);
|
|
40
38
|
const ownerState = themeProps;
|
|
41
|
-
const TextField = (
|
|
39
|
+
const TextField = (_slots$textField = slots == null ? void 0 : slots.textField) != null ? _slots$textField : MuiTextField;
|
|
42
40
|
const _useSlotProps = useSlotProps({
|
|
43
41
|
elementType: TextField,
|
|
44
|
-
externalSlotProps:
|
|
42
|
+
externalSlotProps: slotProps == null ? void 0 : slotProps.textField,
|
|
45
43
|
externalForwardedProps: other,
|
|
46
44
|
ownerState
|
|
47
45
|
}),
|
|
@@ -76,9 +74,7 @@ const DateField = /*#__PURE__*/React.forwardRef(function DateField(inProps, ref)
|
|
|
76
74
|
fieldProps,
|
|
77
75
|
InputProps: fieldProps.InputProps,
|
|
78
76
|
slots,
|
|
79
|
-
slotProps
|
|
80
|
-
components,
|
|
81
|
-
componentsProps
|
|
77
|
+
slotProps
|
|
82
78
|
});
|
|
83
79
|
return /*#__PURE__*/_jsx(TextField, _extends({
|
|
84
80
|
ref: ref
|
|
@@ -118,18 +114,6 @@ process.env.NODE_ENV !== "production" ? DateField.propTypes = {
|
|
|
118
114
|
*/
|
|
119
115
|
color: PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']),
|
|
120
116
|
component: PropTypes.elementType,
|
|
121
|
-
/**
|
|
122
|
-
* Overridable components.
|
|
123
|
-
* @default {}
|
|
124
|
-
* @deprecated Please use `slots`.
|
|
125
|
-
*/
|
|
126
|
-
components: PropTypes.object,
|
|
127
|
-
/**
|
|
128
|
-
* The props used for each component slot.
|
|
129
|
-
* @default {}
|
|
130
|
-
* @deprecated Please use `slotProps`.
|
|
131
|
-
*/
|
|
132
|
-
componentsProps: PropTypes.object,
|
|
133
117
|
/**
|
|
134
118
|
* The default value. Use when the component is not controlled.
|
|
135
119
|
*/
|
|
@@ -7,7 +7,6 @@ import { UseFieldInternalProps } from '../internals/hooks/useField';
|
|
|
7
7
|
import { DefaultizedProps, MakeOptional } from '../internals/models/helpers';
|
|
8
8
|
import { BaseDateValidationProps, DayValidationProps, MonthValidationProps, YearValidationProps } from '../internals/models/validation';
|
|
9
9
|
import { FieldsTextFieldProps } from '../internals/models/fields';
|
|
10
|
-
import { SlotsAndSlotProps } from '../internals/utils/slots-migration';
|
|
11
10
|
export interface UseDateFieldParams<TDate, TChildProps extends {}> {
|
|
12
11
|
props: UseDateFieldComponentProps<TDate, TChildProps>;
|
|
13
12
|
inputRef?: React.Ref<HTMLInputElement>;
|
|
@@ -16,7 +15,17 @@ export interface UseDateFieldProps<TDate> extends MakeOptional<UseFieldInternalP
|
|
|
16
15
|
}
|
|
17
16
|
export type UseDateFieldDefaultizedProps<TDate> = DefaultizedProps<UseDateFieldProps<TDate>, keyof BaseDateValidationProps<any> | 'format'>;
|
|
18
17
|
export type UseDateFieldComponentProps<TDate, TChildProps extends {}> = Omit<TChildProps, keyof UseDateFieldProps<TDate>> & UseDateFieldProps<TDate>;
|
|
19
|
-
export interface DateFieldProps<TDate> extends UseDateFieldComponentProps<TDate, FieldsTextFieldProps
|
|
18
|
+
export interface DateFieldProps<TDate> extends UseDateFieldComponentProps<TDate, FieldsTextFieldProps> {
|
|
19
|
+
/**
|
|
20
|
+
* Overridable component slots.
|
|
21
|
+
* @default {}
|
|
22
|
+
*/
|
|
23
|
+
slots?: DateFieldSlotsComponent;
|
|
24
|
+
/**
|
|
25
|
+
* The props used for each component slot.
|
|
26
|
+
* @default {}
|
|
27
|
+
*/
|
|
28
|
+
slotProps?: DateFieldSlotsComponentsProps<TDate>;
|
|
20
29
|
}
|
|
21
30
|
export type DateFieldOwnerState<TDate> = DateFieldProps<TDate>;
|
|
22
31
|
export interface DateFieldSlotsComponent extends FieldSlotsComponents {
|
|
@@ -25,7 +34,7 @@ export interface DateFieldSlotsComponent extends FieldSlotsComponents {
|
|
|
25
34
|
* Receives the same props as `@mui/material/TextField`.
|
|
26
35
|
* @default TextField from '@mui/material'
|
|
27
36
|
*/
|
|
28
|
-
|
|
37
|
+
textField?: React.ElementType;
|
|
29
38
|
}
|
|
30
39
|
export interface DateFieldSlotsComponentsProps<TDate> extends FieldSlotsComponentsProps {
|
|
31
40
|
textField?: SlotComponentProps<typeof TextField, {}, DateFieldOwnerState<TDate>>;
|
package/DatePicker/DatePicker.js
CHANGED
|
@@ -64,21 +64,8 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = {
|
|
|
64
64
|
* @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).
|
|
65
65
|
*/
|
|
66
66
|
closeOnSelect: PropTypes.bool,
|
|
67
|
-
/**
|
|
68
|
-
* Overridable components.
|
|
69
|
-
* @default {}
|
|
70
|
-
* @deprecated Please use `slots`.
|
|
71
|
-
*/
|
|
72
|
-
components: PropTypes.object,
|
|
73
|
-
/**
|
|
74
|
-
* The props used for each component slot.
|
|
75
|
-
* @default {}
|
|
76
|
-
* @deprecated Please use `slotProps`.
|
|
77
|
-
*/
|
|
78
|
-
componentsProps: PropTypes.object,
|
|
79
67
|
/**
|
|
80
68
|
* Formats the day of week displayed in the calendar header.
|
|
81
|
-
* @param {string} day The day of week provided by the adapter. Deprecated, will be removed in v7: Use `date` instead.
|
|
82
69
|
* @param {TDate} date The date of the day of week provided by the adapter.
|
|
83
70
|
* @returns {string} The name to display.
|
|
84
71
|
* @default (_day: string, date: TDate) => adapter.format(date, 'weekdayShort').charAt(0).toUpperCase()
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { DesktopDatePickerProps, DesktopDatePickerSlotsComponent, DesktopDatePickerSlotsComponentsProps } from '../DesktopDatePicker';
|
|
2
|
-
import { UncapitalizeObjectKeys } from '../internals/utils/slots-migration';
|
|
3
2
|
import { MobileDatePickerProps, MobileDatePickerSlotsComponent, MobileDatePickerSlotsComponentsProps } from '../MobileDatePicker';
|
|
4
3
|
export interface DatePickerSlotsComponents<TDate> extends DesktopDatePickerSlotsComponent<TDate>, MobileDatePickerSlotsComponent<TDate> {
|
|
5
4
|
}
|
|
@@ -17,23 +16,11 @@ export interface DatePickerProps<TDate> extends DesktopDatePickerProps<TDate>, M
|
|
|
17
16
|
* @default 4 on desktop, 3 on mobile
|
|
18
17
|
*/
|
|
19
18
|
yearsPerRow?: 3 | 4;
|
|
20
|
-
/**
|
|
21
|
-
* Overridable components.
|
|
22
|
-
* @default {}
|
|
23
|
-
* @deprecated Please use `slots`.
|
|
24
|
-
*/
|
|
25
|
-
components?: DatePickerSlotsComponents<TDate>;
|
|
26
|
-
/**
|
|
27
|
-
* The props used for each component slot.
|
|
28
|
-
* @default {}
|
|
29
|
-
* @deprecated Please use `slotProps`.
|
|
30
|
-
*/
|
|
31
|
-
componentsProps?: DatePickerSlotsComponentsProps<TDate>;
|
|
32
19
|
/**
|
|
33
20
|
* Overridable component slots.
|
|
34
21
|
* @default {}
|
|
35
22
|
*/
|
|
36
|
-
slots?:
|
|
23
|
+
slots?: DatePickerSlotsComponents<TDate>;
|
|
37
24
|
/**
|
|
38
25
|
* The props used for each component slot.
|
|
39
26
|
* @default {}
|
package/DatePicker/shared.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { DefaultizedProps } from '../internals/models/helpers';
|
|
|
3
3
|
import { DateCalendarSlotsComponent, DateCalendarSlotsComponentsProps, ExportedDateCalendarProps } from '../DateCalendar/DateCalendar.types';
|
|
4
4
|
import { DateValidationError, DateView } from '../models';
|
|
5
5
|
import { BasePickerInputProps } from '../internals/models/props/basePickerProps';
|
|
6
|
-
import { BaseDateValidationProps
|
|
6
|
+
import { BaseDateValidationProps } from '../internals';
|
|
7
7
|
import { LocalizedComponent } from '../locales/utils/pickersLocaleTextApi';
|
|
8
8
|
import { DatePickerToolbarProps, ExportedDatePickerToolbarProps } from './DatePickerToolbar';
|
|
9
9
|
import { PickerViewRendererLookup } from '../internals/hooks/usePicker/usePickerViews';
|
|
@@ -13,29 +13,17 @@ export interface BaseDatePickerSlotsComponent<TDate> extends DateCalendarSlotsCo
|
|
|
13
13
|
* Custom component for the toolbar rendered above the views.
|
|
14
14
|
* @default DatePickerToolbar
|
|
15
15
|
*/
|
|
16
|
-
|
|
16
|
+
toolbar?: React.JSXElementConstructor<DatePickerToolbarProps<TDate>>;
|
|
17
17
|
}
|
|
18
18
|
export interface BaseDatePickerSlotsComponentsProps<TDate> extends DateCalendarSlotsComponentsProps<TDate> {
|
|
19
19
|
toolbar?: ExportedDatePickerToolbarProps;
|
|
20
20
|
}
|
|
21
21
|
export interface BaseDatePickerProps<TDate> extends BasePickerInputProps<TDate | null, TDate, DateView, DateValidationError>, ExportedDateCalendarProps<TDate> {
|
|
22
|
-
/**
|
|
23
|
-
* Overridable components.
|
|
24
|
-
* @default {}
|
|
25
|
-
* @deprecated Please use `slots`.
|
|
26
|
-
*/
|
|
27
|
-
components?: BaseDatePickerSlotsComponent<TDate>;
|
|
28
|
-
/**
|
|
29
|
-
* The props used for each component slot.
|
|
30
|
-
* @default {}
|
|
31
|
-
* @deprecated Please use `slotProps`.
|
|
32
|
-
*/
|
|
33
|
-
componentsProps?: BaseDatePickerSlotsComponentsProps<TDate>;
|
|
34
22
|
/**
|
|
35
23
|
* Overridable component slots.
|
|
36
24
|
* @default {}
|
|
37
25
|
*/
|
|
38
|
-
slots?:
|
|
26
|
+
slots?: BaseDatePickerSlotsComponent<TDate>;
|
|
39
27
|
/**
|
|
40
28
|
* The props used for each component slot.
|
|
41
29
|
* @default {}
|
|
@@ -48,6 +36,6 @@ export interface BaseDatePickerProps<TDate> extends BasePickerInputProps<TDate |
|
|
|
48
36
|
*/
|
|
49
37
|
viewRenderers?: Partial<PickerViewRendererLookup<TDate | null, DateView, DateViewRendererProps<TDate, DateView>, {}>>;
|
|
50
38
|
}
|
|
51
|
-
type UseDatePickerDefaultizedProps<TDate, Props extends BaseDatePickerProps<TDate>> = LocalizedComponent<TDate,
|
|
39
|
+
type UseDatePickerDefaultizedProps<TDate, Props extends BaseDatePickerProps<TDate>> = LocalizedComponent<TDate, DefaultizedProps<Props, 'views' | 'openTo' | keyof BaseDateValidationProps<TDate>>>;
|
|
52
40
|
export declare function useDatePickerDefaultizedProps<TDate, Props extends BaseDatePickerProps<TDate>>(props: Props, name: string): UseDatePickerDefaultizedProps<TDate, Props>;
|
|
53
41
|
export {};
|
package/DatePicker/shared.js
CHANGED
|
@@ -5,9 +5,8 @@ import { useDefaultDates, useUtils } from '../internals/hooks/useUtils';
|
|
|
5
5
|
import { applyDefaultViewProps } from '../internals/utils/views';
|
|
6
6
|
import { applyDefaultDate } from '../internals/utils/date-utils';
|
|
7
7
|
import { DatePickerToolbar } from './DatePickerToolbar';
|
|
8
|
-
import { uncapitalizeObjectKeys } from '../internals/utils/slots-migration';
|
|
9
8
|
export function useDatePickerDefaultizedProps(props, name) {
|
|
10
|
-
var _themeProps$
|
|
9
|
+
var _themeProps$disableFu, _themeProps$disablePa;
|
|
11
10
|
const utils = useUtils();
|
|
12
11
|
const defaultDates = useDefaultDates();
|
|
13
12
|
const themeProps = useThemeProps({
|
|
@@ -23,7 +22,6 @@ export function useDatePickerDefaultizedProps(props, name) {
|
|
|
23
22
|
datePickerToolbarTitle: themeProps.localeText.toolbarTitle
|
|
24
23
|
});
|
|
25
24
|
}, [themeProps.localeText]);
|
|
26
|
-
const slots = (_themeProps$slots = themeProps.slots) != null ? _themeProps$slots : uncapitalizeObjectKeys(themeProps.components);
|
|
27
25
|
return _extends({}, themeProps, {
|
|
28
26
|
localeText
|
|
29
27
|
}, applyDefaultViewProps({
|
|
@@ -38,7 +36,6 @@ export function useDatePickerDefaultizedProps(props, name) {
|
|
|
38
36
|
maxDate: applyDefaultDate(utils, themeProps.maxDate, defaultDates.maxDate),
|
|
39
37
|
slots: _extends({
|
|
40
38
|
toolbar: DatePickerToolbar
|
|
41
|
-
}, slots)
|
|
42
|
-
slotProps: (_themeProps$slotProps = themeProps.slotProps) != null ? _themeProps$slotProps : themeProps.componentsProps
|
|
39
|
+
}, themeProps.slots)
|
|
43
40
|
});
|
|
44
41
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
-
const _excluded = ["
|
|
3
|
+
const _excluded = ["slots", "slotProps", "InputProps", "inputProps"],
|
|
4
4
|
_excluded2 = ["inputRef"],
|
|
5
5
|
_excluded3 = ["ref", "onPaste", "onKeyDown", "inputMode", "readOnly", "clearable", "onClear"];
|
|
6
6
|
import * as React from 'react';
|
|
@@ -23,14 +23,12 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
23
23
|
* - [DateTimeField API](https://mui.com/x/api/date-pickers/date-time-field/)
|
|
24
24
|
*/
|
|
25
25
|
const DateTimeField = /*#__PURE__*/React.forwardRef(function DateTimeField(inProps, ref) {
|
|
26
|
-
var
|
|
26
|
+
var _slots$textField;
|
|
27
27
|
const themeProps = useThemeProps({
|
|
28
28
|
props: inProps,
|
|
29
29
|
name: 'MuiDateTimeField'
|
|
30
30
|
});
|
|
31
31
|
const {
|
|
32
|
-
components,
|
|
33
|
-
componentsProps,
|
|
34
32
|
slots,
|
|
35
33
|
slotProps,
|
|
36
34
|
InputProps,
|
|
@@ -38,10 +36,10 @@ const DateTimeField = /*#__PURE__*/React.forwardRef(function DateTimeField(inPro
|
|
|
38
36
|
} = themeProps,
|
|
39
37
|
other = _objectWithoutPropertiesLoose(themeProps, _excluded);
|
|
40
38
|
const ownerState = themeProps;
|
|
41
|
-
const TextField = (
|
|
39
|
+
const TextField = (_slots$textField = slots == null ? void 0 : slots.textField) != null ? _slots$textField : MuiTextField;
|
|
42
40
|
const _useSlotProps = useSlotProps({
|
|
43
41
|
elementType: TextField,
|
|
44
|
-
externalSlotProps:
|
|
42
|
+
externalSlotProps: slotProps == null ? void 0 : slotProps.textField,
|
|
45
43
|
externalForwardedProps: other,
|
|
46
44
|
ownerState
|
|
47
45
|
}),
|
|
@@ -76,9 +74,7 @@ const DateTimeField = /*#__PURE__*/React.forwardRef(function DateTimeField(inPro
|
|
|
76
74
|
fieldProps,
|
|
77
75
|
InputProps: fieldProps.InputProps,
|
|
78
76
|
slots,
|
|
79
|
-
slotProps
|
|
80
|
-
components,
|
|
81
|
-
componentsProps
|
|
77
|
+
slotProps
|
|
82
78
|
});
|
|
83
79
|
return /*#__PURE__*/_jsx(TextField, _extends({
|
|
84
80
|
ref: ref
|
|
@@ -123,18 +119,6 @@ process.env.NODE_ENV !== "production" ? DateTimeField.propTypes = {
|
|
|
123
119
|
*/
|
|
124
120
|
color: PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']),
|
|
125
121
|
component: PropTypes.elementType,
|
|
126
|
-
/**
|
|
127
|
-
* Overridable components.
|
|
128
|
-
* @default {}
|
|
129
|
-
* @deprecated Please use `slots`.
|
|
130
|
-
*/
|
|
131
|
-
components: PropTypes.object,
|
|
132
|
-
/**
|
|
133
|
-
* The props used for each component slot.
|
|
134
|
-
* @default {}
|
|
135
|
-
* @deprecated Please use `slotProps`.
|
|
136
|
-
*/
|
|
137
|
-
componentsProps: PropTypes.object,
|
|
138
122
|
/**
|
|
139
123
|
* The default value. Use when the component is not controlled.
|
|
140
124
|
*/
|
|
@@ -6,7 +6,6 @@ import { UseFieldInternalProps } from '../internals/hooks/useField';
|
|
|
6
6
|
import { DefaultizedProps, MakeOptional } from '../internals/models/helpers';
|
|
7
7
|
import { BaseDateValidationProps, BaseTimeValidationProps, DateTimeValidationProps, DayValidationProps, MonthValidationProps, TimeValidationProps, YearValidationProps } from '../internals/models/validation';
|
|
8
8
|
import { FieldsTextFieldProps } from '../internals/models/fields';
|
|
9
|
-
import { UncapitalizeObjectKeys } from '../internals/utils/slots-migration';
|
|
10
9
|
import { FieldSlotsComponents, FieldSlotsComponentsProps } from '../internals';
|
|
11
10
|
export interface UseDateTimeFieldParams<TDate, TChildProps extends {}> {
|
|
12
11
|
props: UseDateTimeFieldComponentProps<TDate, TChildProps>;
|
|
@@ -22,23 +21,11 @@ export interface UseDateTimeFieldProps<TDate> extends MakeOptional<UseFieldInter
|
|
|
22
21
|
export type UseDateTimeFieldDefaultizedProps<TDate> = DefaultizedProps<UseDateTimeFieldProps<TDate>, keyof BaseDateValidationProps<any> | keyof BaseTimeValidationProps | 'format'>;
|
|
23
22
|
export type UseDateTimeFieldComponentProps<TDate, TChildProps extends {}> = Omit<TChildProps, keyof UseDateTimeFieldProps<TDate>> & UseDateTimeFieldProps<TDate>;
|
|
24
23
|
export interface DateTimeFieldProps<TDate> extends UseDateTimeFieldComponentProps<TDate, FieldsTextFieldProps> {
|
|
25
|
-
/**
|
|
26
|
-
* Overridable components.
|
|
27
|
-
* @default {}
|
|
28
|
-
* @deprecated Please use `slots`.
|
|
29
|
-
*/
|
|
30
|
-
components?: DateTimeFieldSlotsComponent;
|
|
31
|
-
/**
|
|
32
|
-
* The props used for each component slot.
|
|
33
|
-
* @default {}
|
|
34
|
-
* @deprecated Please use `slotProps`.
|
|
35
|
-
*/
|
|
36
|
-
componentsProps?: DateTimeFieldSlotsComponentsProps<TDate>;
|
|
37
24
|
/**
|
|
38
25
|
* Overridable component slots.
|
|
39
26
|
* @default {}
|
|
40
27
|
*/
|
|
41
|
-
slots?:
|
|
28
|
+
slots?: DateTimeFieldSlotsComponent;
|
|
42
29
|
/**
|
|
43
30
|
* The props used for each component slot.
|
|
44
31
|
* @default {}
|
|
@@ -52,7 +39,7 @@ export interface DateTimeFieldSlotsComponent extends FieldSlotsComponents {
|
|
|
52
39
|
* Receives the same props as `@mui/material/TextField`.
|
|
53
40
|
* @default TextField from '@mui/material'
|
|
54
41
|
*/
|
|
55
|
-
|
|
42
|
+
textField?: React.ElementType;
|
|
56
43
|
}
|
|
57
44
|
export interface DateTimeFieldSlotsComponentsProps<TDate> extends FieldSlotsComponentsProps {
|
|
58
45
|
textField?: SlotComponentProps<typeof TextField, {}, DateTimeFieldOwnerState<TDate>>;
|
|
@@ -74,21 +74,8 @@ process.env.NODE_ENV !== "production" ? DateTimePicker.propTypes = {
|
|
|
74
74
|
* @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).
|
|
75
75
|
*/
|
|
76
76
|
closeOnSelect: PropTypes.bool,
|
|
77
|
-
/**
|
|
78
|
-
* Overridable components.
|
|
79
|
-
* @default {}
|
|
80
|
-
* @deprecated Please use `slots`.
|
|
81
|
-
*/
|
|
82
|
-
components: PropTypes.object,
|
|
83
|
-
/**
|
|
84
|
-
* The props used for each component slot.
|
|
85
|
-
* @default {}
|
|
86
|
-
* @deprecated Please use `slotProps`.
|
|
87
|
-
*/
|
|
88
|
-
componentsProps: PropTypes.object,
|
|
89
77
|
/**
|
|
90
78
|
* Formats the day of week displayed in the calendar header.
|
|
91
|
-
* @param {string} day The day of week provided by the adapter. Deprecated, will be removed in v7: Use `date` instead.
|
|
92
79
|
* @param {TDate} date The date of the day of week provided by the adapter.
|
|
93
80
|
* @returns {string} The name to display.
|
|
94
81
|
* @default (_day: string, date: TDate) => adapter.format(date, 'weekdayShort').charAt(0).toUpperCase()
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { DesktopDateTimePickerProps, DesktopDateTimePickerSlotsComponent, DesktopDateTimePickerSlotsComponentsProps } from '../DesktopDateTimePicker';
|
|
2
2
|
import { DateOrTimeViewWithMeridiem } from '../internals/models';
|
|
3
|
-
import { UncapitalizeObjectKeys } from '../internals/utils/slots-migration';
|
|
4
3
|
import { MobileDateTimePickerProps, MobileDateTimePickerSlotsComponent, MobileDateTimePickerSlotsComponentsProps } from '../MobileDateTimePicker';
|
|
5
4
|
export interface DateTimePickerSlotsComponents<TDate> extends DesktopDateTimePickerSlotsComponent<TDate>, MobileDateTimePickerSlotsComponent<TDate, DateOrTimeViewWithMeridiem> {
|
|
6
5
|
}
|
|
@@ -18,23 +17,11 @@ export interface DateTimePickerProps<TDate> extends DesktopDateTimePickerProps<T
|
|
|
18
17
|
* @default 4 on desktop, 3 on mobile
|
|
19
18
|
*/
|
|
20
19
|
yearsPerRow?: 3 | 4;
|
|
21
|
-
/**
|
|
22
|
-
* Overridable components.
|
|
23
|
-
* @default {}
|
|
24
|
-
* @deprecated Please use `slots`.
|
|
25
|
-
*/
|
|
26
|
-
components?: DateTimePickerSlotsComponents<TDate>;
|
|
27
|
-
/**
|
|
28
|
-
* The props used for each component slot.
|
|
29
|
-
* @default {}
|
|
30
|
-
* @deprecated Please use `slotProps`.
|
|
31
|
-
*/
|
|
32
|
-
componentsProps?: DateTimePickerSlotsComponentsProps<TDate>;
|
|
33
20
|
/**
|
|
34
21
|
* Overridable component slots.
|
|
35
22
|
* @default {}
|
|
36
23
|
*/
|
|
37
|
-
slots?:
|
|
24
|
+
slots?: DateTimePickerSlotsComponents<TDate>;
|
|
38
25
|
/**
|
|
39
26
|
* The props used for each component slot.
|
|
40
27
|
* @default {}
|