@mui/x-date-pickers 7.0.0-beta.0 → 7.0.0-beta.2
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/AdapterDateFnsBase/AdapterDateFnsBase.d.ts +5 -0
- package/AdapterDateFnsJalali/AdapterDateFnsJalali.d.ts +5 -0
- package/AdapterDateFnsJalali/AdapterDateFnsJalali.js +0 -1
- package/AdapterDayjs/AdapterDayjs.d.ts +5 -0
- package/AdapterDayjs/AdapterDayjs.js +0 -1
- package/AdapterLuxon/AdapterLuxon.d.ts +5 -0
- package/AdapterLuxon/AdapterLuxon.js +1 -2
- package/AdapterMoment/AdapterMoment.d.ts +5 -0
- package/AdapterMoment/AdapterMoment.js +0 -1
- package/AdapterMomentHijri/AdapterMomentHijri.d.ts +5 -0
- package/AdapterMomentHijri/AdapterMomentHijri.js +0 -1
- package/AdapterMomentJalaali/AdapterMomentJalaali.d.ts +5 -0
- package/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -1
- package/CHANGELOG.md +406 -1
- package/DateCalendar/DateCalendar.d.ts +2 -1
- package/DateCalendar/DateCalendar.js +5 -5
- package/DateCalendar/DateCalendar.types.d.ts +6 -6
- package/DateCalendar/DayCalendar.d.ts +6 -6
- package/DateCalendar/useCalendarState.d.ts +7 -7
- package/DateCalendar/useIsDateDisabled.d.ts +2 -1
- package/DateField/DateField.d.ts +2 -1
- package/DateField/DateField.js +5 -5
- package/DateField/DateField.types.d.ts +7 -7
- package/DateField/useDateField.d.ts +2 -1
- package/DatePicker/DatePicker.d.ts +2 -1
- package/DatePicker/DatePicker.js +5 -5
- package/DatePicker/DatePicker.types.d.ts +4 -3
- package/DatePicker/DatePickerToolbar.d.ts +3 -3
- package/DatePicker/DatePickerToolbar.js +1 -1
- package/DatePicker/shared.d.ts +6 -6
- package/DateTimeField/DateTimeField.d.ts +2 -1
- package/DateTimeField/DateTimeField.js +9 -9
- package/DateTimeField/DateTimeField.types.d.ts +7 -7
- package/DateTimeField/useDateTimeField.d.ts +2 -1
- package/DateTimePicker/DateTimePicker.d.ts +2 -1
- package/DateTimePicker/DateTimePicker.js +9 -9
- package/DateTimePicker/DateTimePicker.types.d.ts +4 -3
- package/DateTimePicker/DateTimePickerToolbar.d.ts +3 -2
- package/DateTimePicker/DateTimePickerToolbar.js +1 -1
- package/DateTimePicker/shared.d.ts +6 -6
- package/DesktopDatePicker/DesktopDatePicker.d.ts +2 -1
- package/DesktopDatePicker/DesktopDatePicker.js +5 -5
- package/DesktopDatePicker/DesktopDatePicker.types.d.ts +4 -4
- package/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +2 -1
- package/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
- package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +4 -4
- package/DesktopTimePicker/DesktopTimePicker.d.ts +2 -1
- package/DesktopTimePicker/DesktopTimePicker.js +5 -5
- package/DesktopTimePicker/DesktopTimePicker.types.d.ts +4 -4
- package/DigitalClock/DigitalClock.d.ts +2 -1
- package/DigitalClock/DigitalClock.js +5 -5
- package/DigitalClock/DigitalClock.types.d.ts +4 -4
- package/LocalizationProvider/LocalizationProvider.d.ts +5 -5
- package/MobileDatePicker/MobileDatePicker.d.ts +2 -1
- package/MobileDatePicker/MobileDatePicker.js +5 -5
- package/MobileDatePicker/MobileDatePicker.types.d.ts +4 -4
- package/MobileDateTimePicker/MobileDateTimePicker.d.ts +2 -1
- package/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
- package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +4 -4
- package/MobileTimePicker/MobileTimePicker.d.ts +2 -1
- package/MobileTimePicker/MobileTimePicker.js +5 -5
- package/MobileTimePicker/MobileTimePicker.types.d.ts +4 -4
- package/MonthCalendar/MonthCalendar.d.ts +3 -2
- package/MonthCalendar/MonthCalendar.js +5 -5
- package/MonthCalendar/MonthCalendar.types.d.ts +2 -2
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.d.ts +2 -1
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.js +5 -5
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.types.d.ts +4 -3
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.d.ts +5 -5
- package/PickersCalendarHeader/PickersCalendarHeader.d.ts +2 -1
- package/PickersCalendarHeader/PickersCalendarHeader.js +3 -3
- package/PickersCalendarHeader/PickersCalendarHeader.types.d.ts +6 -6
- package/PickersDay/PickersDay.d.ts +3 -2
- package/PickersDay/PickersDay.js +1 -1
- package/PickersLayout/PickersLayout.d.ts +2 -1
- package/PickersLayout/PickersLayout.types.d.ts +7 -6
- package/PickersLayout/usePickerLayout.d.ts +2 -1
- package/StaticDatePicker/StaticDatePicker.d.ts +2 -1
- package/StaticDatePicker/StaticDatePicker.js +5 -5
- package/StaticDatePicker/StaticDatePicker.types.d.ts +4 -4
- package/StaticDateTimePicker/StaticDateTimePicker.d.ts +2 -1
- package/StaticDateTimePicker/StaticDateTimePicker.js +9 -9
- package/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +4 -4
- package/StaticTimePicker/StaticTimePicker.d.ts +2 -1
- package/StaticTimePicker/StaticTimePicker.js +5 -5
- package/StaticTimePicker/StaticTimePicker.types.d.ts +4 -4
- package/TimeClock/Clock.d.ts +3 -3
- package/TimeClock/ClockNumbers.d.ts +4 -4
- package/TimeClock/TimeClock.d.ts +2 -1
- package/TimeClock/TimeClock.js +5 -5
- package/TimeClock/TimeClock.types.d.ts +3 -3
- package/TimeField/TimeField.d.ts +2 -1
- package/TimeField/TimeField.js +5 -5
- package/TimeField/TimeField.types.d.ts +7 -7
- package/TimeField/useTimeField.d.ts +2 -1
- package/TimePicker/TimePicker.d.ts +2 -1
- package/TimePicker/TimePicker.js +5 -5
- package/TimePicker/TimePicker.types.d.ts +4 -3
- package/TimePicker/TimePickerToolbar.d.ts +3 -2
- package/TimePicker/TimePickerToolbar.js +1 -1
- package/TimePicker/shared.d.ts +5 -5
- package/TimePicker/timePickerToolbarClasses.d.ts +8 -0
- package/YearCalendar/YearCalendar.d.ts +2 -1
- package/YearCalendar/YearCalendar.js +5 -5
- package/YearCalendar/YearCalendar.types.d.ts +2 -2
- package/dateTimeViewRenderers/dateTimeViewRenderers.d.ts +3 -2
- package/dateViewRenderers/dateViewRenderers.d.ts +3 -3
- package/index.js +1 -1
- package/internals/hooks/date-helpers-hooks.d.ts +5 -5
- package/internals/hooks/useClockReferenceDate.d.ts +3 -3
- package/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +2 -1
- package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +7 -7
- package/internals/hooks/useField/useField.d.ts +2 -2
- package/internals/hooks/useField/useField.types.d.ts +7 -7
- package/internals/hooks/useField/useField.utils.d.ts +13 -13
- package/internals/hooks/useField/useFieldCharacterEditing.d.ts +3 -3
- package/internals/hooks/useField/useFieldState.d.ts +2 -2
- package/internals/hooks/useMobilePicker/useMobilePicker.d.ts +2 -1
- package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +7 -7
- package/internals/hooks/usePicker/usePicker.d.ts +2 -2
- package/internals/hooks/usePicker/usePicker.types.d.ts +4 -4
- package/internals/hooks/usePicker/usePickerValue.d.ts +2 -2
- package/internals/hooks/usePicker/usePickerValue.types.d.ts +5 -5
- package/internals/hooks/usePicker/usePickerViews.d.ts +5 -5
- package/internals/hooks/useStaticPicker/useStaticPicker.d.ts +2 -1
- package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +6 -6
- package/internals/hooks/useUtils.d.ts +6 -6
- package/internals/hooks/useValidation.d.ts +3 -2
- package/internals/hooks/useValueWithTimezone.d.ts +3 -3
- package/internals/hooks/useViews.d.ts +2 -1
- package/internals/models/fields.d.ts +2 -2
- package/internals/models/props/basePickerProps.d.ts +3 -2
- package/internals/models/props/clock.d.ts +4 -4
- package/internals/models/validation.d.ts +7 -7
- package/internals/utils/date-time-utils.d.ts +5 -5
- package/internals/utils/date-utils.d.ts +12 -12
- package/internals/utils/getDefaultReferenceDate.d.ts +3 -3
- package/internals/utils/time-utils.d.ts +6 -6
- package/internals/utils/validation/validateDate.d.ts +2 -2
- package/internals/utils/validation/validateDateTime.d.ts +2 -2
- package/internals/utils/validation/validateTime.d.ts +2 -2
- package/internals/utils/valueManagers.d.ts +2 -2
- package/legacy/AdapterDateFnsJalali/AdapterDateFnsJalali.js +0 -1
- package/legacy/AdapterDayjs/AdapterDayjs.js +0 -1
- package/legacy/AdapterLuxon/AdapterLuxon.js +1 -2
- package/legacy/AdapterMoment/AdapterMoment.js +0 -1
- package/legacy/AdapterMomentHijri/AdapterMomentHijri.js +0 -1
- package/legacy/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -1
- package/legacy/DateCalendar/DateCalendar.js +5 -5
- package/legacy/DateField/DateField.js +5 -5
- package/legacy/DatePicker/DatePicker.js +5 -5
- package/legacy/DatePicker/DatePickerToolbar.js +1 -1
- package/legacy/DateTimeField/DateTimeField.js +9 -9
- package/legacy/DateTimePicker/DateTimePicker.js +9 -9
- package/legacy/DateTimePicker/DateTimePickerToolbar.js +1 -1
- package/legacy/DesktopDatePicker/DesktopDatePicker.js +5 -5
- package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
- package/legacy/DesktopTimePicker/DesktopTimePicker.js +5 -5
- package/legacy/DigitalClock/DigitalClock.js +5 -5
- package/legacy/MobileDatePicker/MobileDatePicker.js +5 -5
- package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
- package/legacy/MobileTimePicker/MobileTimePicker.js +5 -5
- package/legacy/MonthCalendar/MonthCalendar.js +5 -5
- package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.js +5 -5
- package/legacy/PickersCalendarHeader/PickersCalendarHeader.js +3 -3
- package/legacy/PickersDay/PickersDay.js +1 -1
- package/legacy/StaticDatePicker/StaticDatePicker.js +5 -5
- package/legacy/StaticDateTimePicker/StaticDateTimePicker.js +9 -9
- package/legacy/StaticTimePicker/StaticTimePicker.js +5 -5
- package/legacy/TimeClock/TimeClock.js +5 -5
- package/legacy/TimeField/TimeField.js +5 -5
- package/legacy/TimePicker/TimePicker.js +5 -5
- package/legacy/TimePicker/TimePickerToolbar.js +1 -1
- package/legacy/YearCalendar/YearCalendar.js +5 -5
- package/legacy/index.js +1 -1
- package/locales/beBY.d.ts +6 -6
- package/locales/caES.d.ts +6 -6
- package/locales/csCZ.d.ts +6 -6
- package/locales/daDK.d.ts +6 -6
- package/locales/deDE.d.ts +6 -6
- package/locales/elGR.d.ts +6 -6
- package/locales/enUS.d.ts +6 -6
- package/locales/esES.d.ts +6 -6
- package/locales/eu.d.ts +6 -6
- package/locales/faIR.d.ts +6 -6
- package/locales/fiFI.d.ts +6 -6
- package/locales/frFR.d.ts +6 -6
- package/locales/heIL.d.ts +6 -6
- package/locales/huHU.d.ts +6 -6
- package/locales/isIS.d.ts +6 -6
- package/locales/itIT.d.ts +6 -6
- package/locales/jaJP.d.ts +6 -6
- package/locales/koKR.d.ts +6 -6
- package/locales/kzKZ.d.ts +6 -6
- package/locales/mk.d.ts +6 -6
- package/locales/nbNO.d.ts +6 -6
- package/locales/nlNL.d.ts +6 -6
- package/locales/plPL.d.ts +6 -6
- package/locales/ptBR.d.ts +6 -6
- package/locales/roRO.d.ts +6 -6
- package/locales/ruRU.d.ts +6 -6
- package/locales/skSK.d.ts +6 -6
- package/locales/svSE.d.ts +6 -6
- package/locales/trTR.d.ts +6 -6
- package/locales/ukUA.d.ts +6 -6
- package/locales/urPK.d.ts +6 -6
- package/locales/utils/getPickersLocalization.d.ts +6 -6
- package/locales/utils/pickersLocaleTextApi.d.ts +6 -6
- package/locales/viVN.d.ts +6 -6
- package/locales/zhCN.d.ts +6 -6
- package/locales/zhHK.d.ts +6 -6
- package/models/adapters.d.ts +2 -1
- package/models/fields.d.ts +3 -2
- package/models/pickers.d.ts +3 -0
- package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +0 -1
- package/modern/AdapterDayjs/AdapterDayjs.js +0 -1
- package/modern/AdapterLuxon/AdapterLuxon.js +1 -2
- package/modern/AdapterMoment/AdapterMoment.js +0 -1
- package/modern/AdapterMomentHijri/AdapterMomentHijri.js +0 -1
- package/modern/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -1
- package/modern/DateCalendar/DateCalendar.js +5 -5
- package/modern/DateField/DateField.js +5 -5
- package/modern/DatePicker/DatePicker.js +5 -5
- package/modern/DatePicker/DatePickerToolbar.js +1 -1
- package/modern/DateTimeField/DateTimeField.js +9 -9
- package/modern/DateTimePicker/DateTimePicker.js +9 -9
- package/modern/DateTimePicker/DateTimePickerToolbar.js +1 -1
- package/modern/DesktopDatePicker/DesktopDatePicker.js +5 -5
- package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
- package/modern/DesktopTimePicker/DesktopTimePicker.js +5 -5
- package/modern/DigitalClock/DigitalClock.js +5 -5
- package/modern/MobileDatePicker/MobileDatePicker.js +5 -5
- package/modern/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
- package/modern/MobileTimePicker/MobileTimePicker.js +5 -5
- package/modern/MonthCalendar/MonthCalendar.js +5 -5
- package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.js +5 -5
- package/modern/PickersCalendarHeader/PickersCalendarHeader.js +3 -3
- package/modern/PickersDay/PickersDay.js +1 -1
- package/modern/StaticDatePicker/StaticDatePicker.js +5 -5
- package/modern/StaticDateTimePicker/StaticDateTimePicker.js +9 -9
- package/modern/StaticTimePicker/StaticTimePicker.js +5 -5
- package/modern/TimeClock/TimeClock.js +5 -5
- package/modern/TimeField/TimeField.js +5 -5
- package/modern/TimePicker/TimePicker.js +5 -5
- package/modern/TimePicker/TimePickerToolbar.js +1 -1
- package/modern/YearCalendar/YearCalendar.js +5 -5
- package/modern/index.js +1 -1
- package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +0 -1
- package/node/AdapterDayjs/AdapterDayjs.js +0 -1
- package/node/AdapterLuxon/AdapterLuxon.js +1 -2
- package/node/AdapterMoment/AdapterMoment.js +0 -1
- package/node/AdapterMomentHijri/AdapterMomentHijri.js +0 -1
- package/node/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -1
- package/node/DateCalendar/DateCalendar.js +5 -5
- package/node/DateField/DateField.js +5 -5
- package/node/DatePicker/DatePicker.js +5 -5
- package/node/DatePicker/DatePickerToolbar.js +1 -1
- package/node/DateTimeField/DateTimeField.js +9 -9
- package/node/DateTimePicker/DateTimePicker.js +9 -9
- package/node/DateTimePicker/DateTimePickerToolbar.js +1 -1
- package/node/DesktopDatePicker/DesktopDatePicker.js +5 -5
- package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
- package/node/DesktopTimePicker/DesktopTimePicker.js +5 -5
- package/node/DigitalClock/DigitalClock.js +5 -5
- package/node/MobileDatePicker/MobileDatePicker.js +5 -5
- package/node/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
- package/node/MobileTimePicker/MobileTimePicker.js +5 -5
- package/node/MonthCalendar/MonthCalendar.js +5 -5
- package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +5 -5
- package/node/PickersCalendarHeader/PickersCalendarHeader.js +3 -3
- package/node/PickersDay/PickersDay.js +1 -1
- package/node/StaticDatePicker/StaticDatePicker.js +5 -5
- package/node/StaticDateTimePicker/StaticDateTimePicker.js +9 -9
- package/node/StaticTimePicker/StaticTimePicker.js +5 -5
- package/node/TimeClock/TimeClock.js +5 -5
- package/node/TimeField/TimeField.js +5 -5
- package/node/TimePicker/TimePicker.js +5 -5
- package/node/TimePicker/TimePickerToolbar.js +1 -1
- package/node/YearCalendar/YearCalendar.js +5 -5
- package/node/index.js +1 -1
- package/package.json +5 -5
- package/themeAugmentation/props.d.ts +31 -31
- package/timeViewRenderers/timeViewRenderers.d.ts +4 -4
|
@@ -5,9 +5,9 @@ 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 { TimezoneProps } from '../models';
|
|
8
|
+
import { PickerValidDate, TimezoneProps } from '../models';
|
|
9
9
|
import { DefaultizedProps } from '../internals/models/helpers';
|
|
10
|
-
export interface DayCalendarSlots<TDate> {
|
|
10
|
+
export interface DayCalendarSlots<TDate extends PickerValidDate> {
|
|
11
11
|
/**
|
|
12
12
|
* Custom component for day.
|
|
13
13
|
* Check the [PickersDay](https://mui.com/x/api/date-pickers/pickers-day/) component.
|
|
@@ -15,13 +15,13 @@ export interface DayCalendarSlots<TDate> {
|
|
|
15
15
|
*/
|
|
16
16
|
day?: React.ElementType<PickersDayProps<TDate>>;
|
|
17
17
|
}
|
|
18
|
-
export interface DayCalendarSlotProps<TDate> {
|
|
18
|
+
export interface DayCalendarSlotProps<TDate extends PickerValidDate> {
|
|
19
19
|
day?: SlotComponentProps<typeof PickersDay, {}, DayCalendarProps<TDate> & {
|
|
20
20
|
day: TDate;
|
|
21
21
|
selected: boolean;
|
|
22
22
|
}>;
|
|
23
23
|
}
|
|
24
|
-
export interface ExportedDayCalendarProps<TDate> extends ExportedPickersDayProps {
|
|
24
|
+
export interface ExportedDayCalendarProps<TDate extends PickerValidDate> extends ExportedPickersDayProps {
|
|
25
25
|
/**
|
|
26
26
|
* If `true`, calls `renderLoading` instead of rendering the day calendar.
|
|
27
27
|
* Can be used to preload information and show it in calendar.
|
|
@@ -52,7 +52,7 @@ export interface ExportedDayCalendarProps<TDate> extends ExportedPickersDayProps
|
|
|
52
52
|
*/
|
|
53
53
|
fixedWeekNumber?: number;
|
|
54
54
|
}
|
|
55
|
-
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 PickerValidDate> extends ExportedDayCalendarProps<TDate>, DayValidationProps<TDate>, MonthValidationProps<TDate>, YearValidationProps<TDate>, Required<BaseDateValidationProps<TDate>>, DefaultizedProps<TimezoneProps, 'timezone'> {
|
|
56
56
|
autoFocus?: boolean;
|
|
57
57
|
className?: string;
|
|
58
58
|
currentMonth: TDate;
|
|
@@ -85,4 +85,4 @@ export interface DayCalendarProps<TDate> extends ExportedDayCalendarProps<TDate>
|
|
|
85
85
|
/**
|
|
86
86
|
* @ignore - do not document.
|
|
87
87
|
*/
|
|
88
|
-
export declare function DayCalendar<TDate>(inProps: DayCalendarProps<TDate>): React.JSX.Element;
|
|
88
|
+
export declare function DayCalendar<TDate extends PickerValidDate>(inProps: DayCalendarProps<TDate>): React.JSX.Element;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { SlideDirection } from './PickersSlideTransition';
|
|
2
|
-
import { MuiPickersAdapter, PickersTimezone } from '../models';
|
|
2
|
+
import { MuiPickersAdapter, PickersTimezone, PickerValidDate } from '../models';
|
|
3
3
|
import { DateCalendarDefaultizedProps } from './DateCalendar.types';
|
|
4
|
-
interface CalendarState<TDate> {
|
|
4
|
+
interface CalendarState<TDate extends PickerValidDate> {
|
|
5
5
|
currentMonth: TDate;
|
|
6
6
|
focusedDay: TDate | null;
|
|
7
7
|
isMonthSwitchingAnimating: boolean;
|
|
@@ -10,11 +10,11 @@ interface CalendarState<TDate> {
|
|
|
10
10
|
type ReducerAction<TType, TAdditional = {}> = {
|
|
11
11
|
type: TType;
|
|
12
12
|
} & TAdditional;
|
|
13
|
-
interface ChangeMonthPayload<TDate> {
|
|
13
|
+
interface ChangeMonthPayload<TDate extends PickerValidDate> {
|
|
14
14
|
direction: SlideDirection;
|
|
15
15
|
newMonth: TDate;
|
|
16
16
|
}
|
|
17
|
-
interface ChangeFocusedDayPayload<TDate> {
|
|
17
|
+
interface ChangeFocusedDayPayload<TDate extends PickerValidDate> {
|
|
18
18
|
focusedDay: TDate | null;
|
|
19
19
|
/**
|
|
20
20
|
* The update does not trigger month switching animation.
|
|
@@ -22,14 +22,14 @@ interface ChangeFocusedDayPayload<TDate> {
|
|
|
22
22
|
*/
|
|
23
23
|
withoutMonthSwitchingAnimation?: boolean;
|
|
24
24
|
}
|
|
25
|
-
export declare const createCalendarStateReducer: <TDate extends
|
|
25
|
+
export declare const createCalendarStateReducer: <TDate extends PickerValidDate>(reduceAnimations: boolean, disableSwitchToMonthOnDayFocus: boolean, utils: MuiPickersAdapter<TDate, any>) => (state: CalendarState<TDate>, action: {
|
|
26
26
|
type: "finishMonthSwitchingAnimation";
|
|
27
27
|
} | ReducerAction<"changeMonth", ChangeMonthPayload<TDate>> | ReducerAction<"changeFocusedDay", ChangeFocusedDayPayload<TDate>>) => CalendarState<TDate>;
|
|
28
|
-
interface UseCalendarStateParams<TDate> extends Pick<DateCalendarDefaultizedProps<TDate>, 'value' | 'referenceDate' | 'disableFuture' | 'disablePast' | 'minDate' | 'maxDate' | 'onMonthChange' | 'reduceAnimations' | 'shouldDisableDate'> {
|
|
28
|
+
interface UseCalendarStateParams<TDate extends PickerValidDate> extends Pick<DateCalendarDefaultizedProps<TDate>, 'value' | 'referenceDate' | 'disableFuture' | 'disablePast' | 'minDate' | 'maxDate' | 'onMonthChange' | 'reduceAnimations' | 'shouldDisableDate'> {
|
|
29
29
|
disableSwitchToMonthOnDayFocus?: boolean;
|
|
30
30
|
timezone: PickersTimezone;
|
|
31
31
|
}
|
|
32
|
-
export declare const useCalendarState: <TDate extends
|
|
32
|
+
export declare const useCalendarState: <TDate extends PickerValidDate>(params: UseCalendarStateParams<TDate>) => {
|
|
33
33
|
referenceDate: any;
|
|
34
34
|
calendarState: CalendarState<TDate>;
|
|
35
35
|
changeMonth: (newDate: TDate) => void;
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import { DateComponentValidationProps } from '../internals/utils/validation/validateDate';
|
|
2
|
-
|
|
2
|
+
import { PickerValidDate } from '../models';
|
|
3
|
+
export declare const useIsDateDisabled: <TDate extends PickerValidDate>({ shouldDisableDate, shouldDisableMonth, shouldDisableYear, minDate, maxDate, disableFuture, disablePast, timezone, }: DateComponentValidationProps<TDate>) => (day: TDate | null) => boolean;
|
package/DateField/DateField.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { DateFieldProps } from './DateField.types';
|
|
3
|
-
|
|
3
|
+
import { PickerValidDate } from '../models';
|
|
4
|
+
type DateFieldComponent = (<TDate extends PickerValidDate>(props: DateFieldProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
|
|
4
5
|
propTypes?: any;
|
|
5
6
|
};
|
|
6
7
|
/**
|
package/DateField/DateField.js
CHANGED
|
@@ -84,7 +84,7 @@ process.env.NODE_ENV !== "production" ? DateField.propTypes = {
|
|
|
84
84
|
/**
|
|
85
85
|
* The default value. Use when the component is not controlled.
|
|
86
86
|
*/
|
|
87
|
-
defaultValue: PropTypes.
|
|
87
|
+
defaultValue: PropTypes.object,
|
|
88
88
|
/**
|
|
89
89
|
* If `true`, the component is disabled.
|
|
90
90
|
* @default false
|
|
@@ -171,11 +171,11 @@ process.env.NODE_ENV !== "production" ? DateField.propTypes = {
|
|
|
171
171
|
/**
|
|
172
172
|
* Maximal selectable date.
|
|
173
173
|
*/
|
|
174
|
-
maxDate: PropTypes.
|
|
174
|
+
maxDate: PropTypes.object,
|
|
175
175
|
/**
|
|
176
176
|
* Minimal selectable date.
|
|
177
177
|
*/
|
|
178
|
-
minDate: PropTypes.
|
|
178
|
+
minDate: PropTypes.object,
|
|
179
179
|
/**
|
|
180
180
|
* Name attribute of the `input` element.
|
|
181
181
|
*/
|
|
@@ -218,7 +218,7 @@ process.env.NODE_ENV !== "production" ? DateField.propTypes = {
|
|
|
218
218
|
* For example, on time fields it will be used to determine the date to set.
|
|
219
219
|
* @default The closest valid date using the validation props, except callbacks such as `shouldDisableDate`. Value is rounded to the most granular section used.
|
|
220
220
|
*/
|
|
221
|
-
referenceDate: PropTypes.
|
|
221
|
+
referenceDate: PropTypes.object,
|
|
222
222
|
/**
|
|
223
223
|
* If `true`, the label is displayed as required and the `input` element is required.
|
|
224
224
|
* @default false
|
|
@@ -311,7 +311,7 @@ process.env.NODE_ENV !== "production" ? DateField.propTypes = {
|
|
|
311
311
|
* The selected value.
|
|
312
312
|
* Used when the component is controlled.
|
|
313
313
|
*/
|
|
314
|
-
value: PropTypes.
|
|
314
|
+
value: PropTypes.object,
|
|
315
315
|
/**
|
|
316
316
|
* The variant to use.
|
|
317
317
|
* @default 'outlined'
|
|
@@ -2,16 +2,16 @@ import * as React from 'react';
|
|
|
2
2
|
import { SlotComponentProps } from '@mui/base/utils';
|
|
3
3
|
import TextField from '@mui/material/TextField';
|
|
4
4
|
import { UseClearableFieldSlots, UseClearableFieldSlotProps } from '../hooks/useClearableField';
|
|
5
|
-
import { DateValidationError, FieldSection } from '../models';
|
|
5
|
+
import { DateValidationError, FieldSection, PickerValidDate } from '../models';
|
|
6
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
|
-
export interface UseDateFieldProps<TDate> extends MakeOptional<UseFieldInternalProps<TDate | null, TDate, FieldSection, DateValidationError>, 'format'>, DayValidationProps<TDate>, MonthValidationProps<TDate>, YearValidationProps<TDate>, BaseDateValidationProps<TDate> {
|
|
10
|
+
export interface UseDateFieldProps<TDate extends PickerValidDate> extends MakeOptional<UseFieldInternalProps<TDate | null, TDate, FieldSection, DateValidationError>, 'format'>, DayValidationProps<TDate>, MonthValidationProps<TDate>, YearValidationProps<TDate>, BaseDateValidationProps<TDate> {
|
|
11
11
|
}
|
|
12
|
-
export type UseDateFieldDefaultizedProps<TDate> = DefaultizedProps<UseDateFieldProps<TDate>, keyof BaseDateValidationProps<any> | 'format'>;
|
|
13
|
-
export type UseDateFieldComponentProps<TDate, TChildProps extends {}> = Omit<TChildProps, keyof UseDateFieldProps<TDate>> & UseDateFieldProps<TDate>;
|
|
14
|
-
export interface DateFieldProps<TDate> extends UseDateFieldComponentProps<TDate, FieldsTextFieldProps> {
|
|
12
|
+
export type UseDateFieldDefaultizedProps<TDate extends PickerValidDate> = DefaultizedProps<UseDateFieldProps<TDate>, keyof BaseDateValidationProps<any> | 'format'>;
|
|
13
|
+
export type UseDateFieldComponentProps<TDate extends PickerValidDate, TChildProps extends {}> = Omit<TChildProps, keyof UseDateFieldProps<TDate>> & UseDateFieldProps<TDate>;
|
|
14
|
+
export interface DateFieldProps<TDate extends PickerValidDate> extends UseDateFieldComponentProps<TDate, FieldsTextFieldProps> {
|
|
15
15
|
/**
|
|
16
16
|
* Overridable component slots.
|
|
17
17
|
* @default {}
|
|
@@ -23,7 +23,7 @@ export interface DateFieldProps<TDate> extends UseDateFieldComponentProps<TDate,
|
|
|
23
23
|
*/
|
|
24
24
|
slotProps?: DateFieldSlotProps<TDate>;
|
|
25
25
|
}
|
|
26
|
-
export type DateFieldOwnerState<TDate> = DateFieldProps<TDate>;
|
|
26
|
+
export type DateFieldOwnerState<TDate extends PickerValidDate> = DateFieldProps<TDate>;
|
|
27
27
|
export interface DateFieldSlots extends UseClearableFieldSlots {
|
|
28
28
|
/**
|
|
29
29
|
* Form control with an input to render the value.
|
|
@@ -32,6 +32,6 @@ export interface DateFieldSlots extends UseClearableFieldSlots {
|
|
|
32
32
|
*/
|
|
33
33
|
textField?: React.ElementType;
|
|
34
34
|
}
|
|
35
|
-
export interface DateFieldSlotProps<TDate> extends UseClearableFieldSlotProps {
|
|
35
|
+
export interface DateFieldSlotProps<TDate extends PickerValidDate> extends UseClearableFieldSlotProps {
|
|
36
36
|
textField?: SlotComponentProps<typeof TextField, {}, DateFieldOwnerState<TDate>>;
|
|
37
37
|
}
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import { UseDateFieldProps, UseDateFieldComponentProps } from './DateField.types';
|
|
2
|
-
|
|
2
|
+
import { PickerValidDate } from '../models';
|
|
3
|
+
export declare const useDateField: <TDate extends PickerValidDate, TChildProps extends {}>(inProps: UseDateFieldComponentProps<TDate, TChildProps>) => import("../internals/hooks/useField").UseFieldResponse<Omit<TChildProps & Omit<UseDateFieldProps<TDate>, "format" | keyof import("../internals").BaseDateValidationProps<any>> & Required<Pick<UseDateFieldProps<TDate>, "format" | keyof import("../internals").BaseDateValidationProps<any>>>, keyof UseDateFieldProps<TDate>>>;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { DatePickerProps } from './DatePicker.types';
|
|
3
|
-
|
|
3
|
+
import { PickerValidDate } from '../models';
|
|
4
|
+
type DatePickerComponent = (<TDate extends PickerValidDate>(props: DatePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
|
|
4
5
|
propTypes?: any;
|
|
5
6
|
};
|
|
6
7
|
/**
|
package/DatePicker/DatePicker.js
CHANGED
|
@@ -72,7 +72,7 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = {
|
|
|
72
72
|
* The default value.
|
|
73
73
|
* Used when the component is not controlled.
|
|
74
74
|
*/
|
|
75
|
-
defaultValue: PropTypes.
|
|
75
|
+
defaultValue: PropTypes.object,
|
|
76
76
|
/**
|
|
77
77
|
* CSS media query when `Mobile` mode will be changed to `Desktop`.
|
|
78
78
|
* @default '@media (pointer: fine)'
|
|
@@ -147,11 +147,11 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = {
|
|
|
147
147
|
/**
|
|
148
148
|
* Maximal selectable date.
|
|
149
149
|
*/
|
|
150
|
-
maxDate: PropTypes.
|
|
150
|
+
maxDate: PropTypes.object,
|
|
151
151
|
/**
|
|
152
152
|
* Minimal selectable date.
|
|
153
153
|
*/
|
|
154
|
-
minDate: PropTypes.
|
|
154
|
+
minDate: PropTypes.object,
|
|
155
155
|
/**
|
|
156
156
|
* Months rendered per row.
|
|
157
157
|
* @default 3
|
|
@@ -243,7 +243,7 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = {
|
|
|
243
243
|
* The date used to generate the new value when both `value` and `defaultValue` are empty.
|
|
244
244
|
* @default The closest valid date-time using the validation props, except callbacks like `shouldDisable<...>`.
|
|
245
245
|
*/
|
|
246
|
-
referenceDate: PropTypes.
|
|
246
|
+
referenceDate: PropTypes.object,
|
|
247
247
|
/**
|
|
248
248
|
* Component displaying when passed `loading` true.
|
|
249
249
|
* @returns {React.ReactNode} The node to render when loading.
|
|
@@ -324,7 +324,7 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = {
|
|
|
324
324
|
* The selected value.
|
|
325
325
|
* Used when the component is controlled.
|
|
326
326
|
*/
|
|
327
|
-
value: PropTypes.
|
|
327
|
+
value: PropTypes.object,
|
|
328
328
|
/**
|
|
329
329
|
* The visible view.
|
|
330
330
|
* Used when the component view is controlled.
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { DesktopDatePickerProps, DesktopDatePickerSlots, DesktopDatePickerSlotProps } from '../DesktopDatePicker';
|
|
2
2
|
import { MobileDatePickerProps, MobileDatePickerSlots, MobileDatePickerSlotProps } from '../MobileDatePicker';
|
|
3
|
-
|
|
3
|
+
import { PickerValidDate } from '../models';
|
|
4
|
+
export interface DatePickerSlots<TDate extends PickerValidDate> extends DesktopDatePickerSlots<TDate>, MobileDatePickerSlots<TDate> {
|
|
4
5
|
}
|
|
5
|
-
export interface DatePickerSlotProps<TDate> extends DesktopDatePickerSlotProps<TDate>, MobileDatePickerSlotProps<TDate> {
|
|
6
|
+
export interface DatePickerSlotProps<TDate extends PickerValidDate> extends DesktopDatePickerSlotProps<TDate>, MobileDatePickerSlotProps<TDate> {
|
|
6
7
|
}
|
|
7
|
-
export interface DatePickerProps<TDate> extends DesktopDatePickerProps<TDate>, MobileDatePickerProps<TDate> {
|
|
8
|
+
export interface DatePickerProps<TDate extends PickerValidDate> extends DesktopDatePickerProps<TDate>, MobileDatePickerProps<TDate> {
|
|
8
9
|
/**
|
|
9
10
|
* CSS media query when `Mobile` mode will be changed to `Desktop`.
|
|
10
11
|
* @default '@media (pointer: fine)'
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { SxProps, Theme } from '@mui/material/styles';
|
|
3
3
|
import { BaseToolbarProps, ExportedBaseToolbarProps } from '../internals/models/props/toolbar';
|
|
4
|
-
import { DateView } from '../models';
|
|
4
|
+
import { DateView, PickerValidDate } from '../models';
|
|
5
5
|
import { DatePickerToolbarClasses } from './datePickerToolbarClasses';
|
|
6
|
-
export interface DatePickerToolbarProps<TDate> extends BaseToolbarProps<TDate | null, DateView> {
|
|
6
|
+
export interface DatePickerToolbarProps<TDate extends PickerValidDate> extends BaseToolbarProps<TDate | null, DateView> {
|
|
7
7
|
classes?: Partial<DatePickerToolbarClasses>;
|
|
8
8
|
sx?: SxProps<Theme>;
|
|
9
9
|
}
|
|
10
10
|
export interface ExportedDatePickerToolbarProps extends ExportedBaseToolbarProps {
|
|
11
11
|
}
|
|
12
|
-
type DatePickerToolbarComponent = (<TDate>(props: DatePickerToolbarProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
|
|
12
|
+
type DatePickerToolbarComponent = (<TDate extends PickerValidDate>(props: DatePickerToolbarProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
|
|
13
13
|
propTypes?: any;
|
|
14
14
|
};
|
|
15
15
|
/**
|
package/DatePicker/shared.d.ts
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { DefaultizedProps } from '../internals/models/helpers';
|
|
3
3
|
import { DateCalendarSlots, DateCalendarSlotProps, ExportedDateCalendarProps } from '../DateCalendar/DateCalendar.types';
|
|
4
|
-
import { DateValidationError, DateView } from '../models';
|
|
4
|
+
import { DateValidationError, DateView, PickerValidDate } from '../models';
|
|
5
5
|
import { BasePickerInputProps } from '../internals/models/props/basePickerProps';
|
|
6
6
|
import { BaseDateValidationProps } from '../internals/models/validation';
|
|
7
7
|
import { LocalizedComponent } from '../locales/utils/pickersLocaleTextApi';
|
|
8
8
|
import { DatePickerToolbarProps, ExportedDatePickerToolbarProps } from './DatePickerToolbar';
|
|
9
9
|
import { PickerViewRendererLookup } from '../internals/hooks/usePicker/usePickerViews';
|
|
10
10
|
import { DateViewRendererProps } from '../dateViewRenderers';
|
|
11
|
-
export interface BaseDatePickerSlots<TDate> extends DateCalendarSlots<TDate> {
|
|
11
|
+
export interface BaseDatePickerSlots<TDate extends PickerValidDate> extends DateCalendarSlots<TDate> {
|
|
12
12
|
/**
|
|
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
|
-
export interface BaseDatePickerSlotProps<TDate> extends DateCalendarSlotProps<TDate> {
|
|
18
|
+
export interface BaseDatePickerSlotProps<TDate extends PickerValidDate> extends DateCalendarSlotProps<TDate> {
|
|
19
19
|
toolbar?: ExportedDatePickerToolbarProps;
|
|
20
20
|
}
|
|
21
|
-
export interface BaseDatePickerProps<TDate> extends BasePickerInputProps<TDate | null, TDate, DateView, DateValidationError>, ExportedDateCalendarProps<TDate> {
|
|
21
|
+
export interface BaseDatePickerProps<TDate extends PickerValidDate> extends BasePickerInputProps<TDate | null, TDate, DateView, DateValidationError>, ExportedDateCalendarProps<TDate> {
|
|
22
22
|
/**
|
|
23
23
|
* Overridable component slots.
|
|
24
24
|
* @default {}
|
|
@@ -36,6 +36,6 @@ export interface BaseDatePickerProps<TDate> extends BasePickerInputProps<TDate |
|
|
|
36
36
|
*/
|
|
37
37
|
viewRenderers?: Partial<PickerViewRendererLookup<TDate | null, DateView, DateViewRendererProps<TDate, DateView>, {}>>;
|
|
38
38
|
}
|
|
39
|
-
type UseDatePickerDefaultizedProps<TDate, Props extends BaseDatePickerProps<TDate>> = LocalizedComponent<TDate, DefaultizedProps<Props, 'views' | 'openTo' | keyof BaseDateValidationProps<TDate>>>;
|
|
40
|
-
export declare function useDatePickerDefaultizedProps<TDate, Props extends BaseDatePickerProps<TDate>>(props: Props, name: string): UseDatePickerDefaultizedProps<TDate, Props>;
|
|
39
|
+
type UseDatePickerDefaultizedProps<TDate extends PickerValidDate, Props extends BaseDatePickerProps<TDate>> = LocalizedComponent<TDate, DefaultizedProps<Props, 'views' | 'openTo' | keyof BaseDateValidationProps<TDate>>>;
|
|
40
|
+
export declare function useDatePickerDefaultizedProps<TDate extends PickerValidDate, Props extends BaseDatePickerProps<TDate>>(props: Props, name: string): UseDatePickerDefaultizedProps<TDate, Props>;
|
|
41
41
|
export {};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { DateTimeFieldProps } from './DateTimeField.types';
|
|
3
|
-
|
|
3
|
+
import { PickerValidDate } from '../models';
|
|
4
|
+
type DateTimeFieldComponent = (<TDate extends PickerValidDate>(props: DateTimeFieldProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
|
|
4
5
|
propTypes?: any;
|
|
5
6
|
};
|
|
6
7
|
/**
|
|
@@ -89,7 +89,7 @@ process.env.NODE_ENV !== "production" ? DateTimeField.propTypes = {
|
|
|
89
89
|
/**
|
|
90
90
|
* The default value. Use when the component is not controlled.
|
|
91
91
|
*/
|
|
92
|
-
defaultValue: PropTypes.
|
|
92
|
+
defaultValue: PropTypes.object,
|
|
93
93
|
/**
|
|
94
94
|
* If `true`, the component is disabled.
|
|
95
95
|
* @default false
|
|
@@ -181,29 +181,29 @@ process.env.NODE_ENV !== "production" ? DateTimeField.propTypes = {
|
|
|
181
181
|
/**
|
|
182
182
|
* Maximal selectable date.
|
|
183
183
|
*/
|
|
184
|
-
maxDate: PropTypes.
|
|
184
|
+
maxDate: PropTypes.object,
|
|
185
185
|
/**
|
|
186
186
|
* Maximal selectable moment of time with binding to date, to set max time in each day use `maxTime`.
|
|
187
187
|
*/
|
|
188
|
-
maxDateTime: PropTypes.
|
|
188
|
+
maxDateTime: PropTypes.object,
|
|
189
189
|
/**
|
|
190
190
|
* Maximal selectable time.
|
|
191
191
|
* The date part of the object will be ignored unless `props.disableIgnoringDatePartForTimeValidation === true`.
|
|
192
192
|
*/
|
|
193
|
-
maxTime: PropTypes.
|
|
193
|
+
maxTime: PropTypes.object,
|
|
194
194
|
/**
|
|
195
195
|
* Minimal selectable date.
|
|
196
196
|
*/
|
|
197
|
-
minDate: PropTypes.
|
|
197
|
+
minDate: PropTypes.object,
|
|
198
198
|
/**
|
|
199
199
|
* Minimal selectable moment of time with binding to date, to set min time in each day use `minTime`.
|
|
200
200
|
*/
|
|
201
|
-
minDateTime: PropTypes.
|
|
201
|
+
minDateTime: PropTypes.object,
|
|
202
202
|
/**
|
|
203
203
|
* Minimal selectable time.
|
|
204
204
|
* The date part of the object will be ignored unless `props.disableIgnoringDatePartForTimeValidation === true`.
|
|
205
205
|
*/
|
|
206
|
-
minTime: PropTypes.
|
|
206
|
+
minTime: PropTypes.object,
|
|
207
207
|
/**
|
|
208
208
|
* Step over minutes.
|
|
209
209
|
* @default 1
|
|
@@ -251,7 +251,7 @@ process.env.NODE_ENV !== "production" ? DateTimeField.propTypes = {
|
|
|
251
251
|
* For example, on time fields it will be used to determine the date to set.
|
|
252
252
|
* @default The closest valid date using the validation props, except callbacks such as `shouldDisableDate`. Value is rounded to the most granular section used.
|
|
253
253
|
*/
|
|
254
|
-
referenceDate: PropTypes.
|
|
254
|
+
referenceDate: PropTypes.object,
|
|
255
255
|
/**
|
|
256
256
|
* If `true`, the label is displayed as required and the `input` element is required.
|
|
257
257
|
* @default false
|
|
@@ -352,7 +352,7 @@ process.env.NODE_ENV !== "production" ? DateTimeField.propTypes = {
|
|
|
352
352
|
* The selected value.
|
|
353
353
|
* Used when the component is controlled.
|
|
354
354
|
*/
|
|
355
|
-
value: PropTypes.
|
|
355
|
+
value: PropTypes.object,
|
|
356
356
|
/**
|
|
357
357
|
* The variant to use.
|
|
358
358
|
* @default 'outlined'
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { SlotComponentProps } from '@mui/base/utils';
|
|
3
3
|
import TextField from '@mui/material/TextField';
|
|
4
|
-
import { DateTimeValidationError, FieldSection } from '../models';
|
|
4
|
+
import { DateTimeValidationError, FieldSection, PickerValidDate } from '../models';
|
|
5
5
|
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
9
|
import { UseClearableFieldSlots, UseClearableFieldSlotProps } from '../hooks/useClearableField';
|
|
10
|
-
export interface UseDateTimeFieldProps<TDate> extends MakeOptional<UseFieldInternalProps<TDate | null, TDate, FieldSection, DateTimeValidationError>, 'format'>, DayValidationProps<TDate>, MonthValidationProps<TDate>, YearValidationProps<TDate>, BaseDateValidationProps<TDate>, TimeValidationProps<TDate>, BaseTimeValidationProps, DateTimeValidationProps<TDate> {
|
|
10
|
+
export interface UseDateTimeFieldProps<TDate extends PickerValidDate> extends MakeOptional<UseFieldInternalProps<TDate | null, TDate, FieldSection, DateTimeValidationError>, 'format'>, DayValidationProps<TDate>, MonthValidationProps<TDate>, YearValidationProps<TDate>, BaseDateValidationProps<TDate>, TimeValidationProps<TDate>, BaseTimeValidationProps, DateTimeValidationProps<TDate> {
|
|
11
11
|
/**
|
|
12
12
|
* 12h/24h view for hour selection clock.
|
|
13
13
|
* @default `utils.is12HourCycleInCurrentLocale()`
|
|
14
14
|
*/
|
|
15
15
|
ampm?: boolean;
|
|
16
16
|
}
|
|
17
|
-
export type UseDateTimeFieldDefaultizedProps<TDate> = DefaultizedProps<UseDateTimeFieldProps<TDate>, keyof BaseDateValidationProps<any> | keyof BaseTimeValidationProps | 'format'>;
|
|
18
|
-
export type UseDateTimeFieldComponentProps<TDate, TChildProps extends {}> = Omit<TChildProps, keyof UseDateTimeFieldProps<TDate>> & UseDateTimeFieldProps<TDate>;
|
|
19
|
-
export interface DateTimeFieldProps<TDate> extends UseDateTimeFieldComponentProps<TDate, FieldsTextFieldProps> {
|
|
17
|
+
export type UseDateTimeFieldDefaultizedProps<TDate extends PickerValidDate> = DefaultizedProps<UseDateTimeFieldProps<TDate>, keyof BaseDateValidationProps<any> | keyof BaseTimeValidationProps | 'format'>;
|
|
18
|
+
export type UseDateTimeFieldComponentProps<TDate extends PickerValidDate, TChildProps extends {}> = Omit<TChildProps, keyof UseDateTimeFieldProps<TDate>> & UseDateTimeFieldProps<TDate>;
|
|
19
|
+
export interface DateTimeFieldProps<TDate extends PickerValidDate> extends UseDateTimeFieldComponentProps<TDate, FieldsTextFieldProps> {
|
|
20
20
|
/**
|
|
21
21
|
* Overridable component slots.
|
|
22
22
|
* @default {}
|
|
@@ -28,7 +28,7 @@ export interface DateTimeFieldProps<TDate> extends UseDateTimeFieldComponentProp
|
|
|
28
28
|
*/
|
|
29
29
|
slotProps?: DateTimeFieldSlotProps<TDate>;
|
|
30
30
|
}
|
|
31
|
-
export type DateTimeFieldOwnerState<TDate> = DateTimeFieldProps<TDate>;
|
|
31
|
+
export type DateTimeFieldOwnerState<TDate extends PickerValidDate> = DateTimeFieldProps<TDate>;
|
|
32
32
|
export interface DateTimeFieldSlots extends UseClearableFieldSlots {
|
|
33
33
|
/**
|
|
34
34
|
* Form control with an input to render the value.
|
|
@@ -37,6 +37,6 @@ export interface DateTimeFieldSlots extends UseClearableFieldSlots {
|
|
|
37
37
|
*/
|
|
38
38
|
textField?: React.ElementType;
|
|
39
39
|
}
|
|
40
|
-
export interface DateTimeFieldSlotProps<TDate> extends UseClearableFieldSlotProps {
|
|
40
|
+
export interface DateTimeFieldSlotProps<TDate extends PickerValidDate> extends UseClearableFieldSlotProps {
|
|
41
41
|
textField?: SlotComponentProps<typeof TextField, {}, DateTimeFieldOwnerState<TDate>>;
|
|
42
42
|
}
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import { UseDateTimeFieldProps, UseDateTimeFieldComponentProps } from './DateTimeField.types';
|
|
2
|
-
|
|
2
|
+
import { PickerValidDate } from '../models';
|
|
3
|
+
export declare const useDateTimeField: <TDate extends PickerValidDate, TChildProps extends {}>(inProps: UseDateTimeFieldComponentProps<TDate, TChildProps>) => import("../internals/hooks/useField").UseFieldResponse<Omit<TChildProps & Omit<UseDateTimeFieldProps<TDate>, "format" | "disableFuture" | "disablePast" | "maxDate" | "minDate"> & Required<Pick<UseDateTimeFieldProps<TDate>, "format" | "disableFuture" | "disablePast" | "maxDate" | "minDate">>, keyof UseDateTimeFieldProps<any>>>;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { DateTimePickerProps } from './DateTimePicker.types';
|
|
3
|
-
|
|
3
|
+
import { PickerValidDate } from '../models';
|
|
4
|
+
type DateTimePickerComponent = (<TDate extends PickerValidDate>(props: DateTimePickerProps<TDate> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
|
|
4
5
|
propTypes?: any;
|
|
5
6
|
};
|
|
6
7
|
/**
|
|
@@ -82,7 +82,7 @@ process.env.NODE_ENV !== "production" ? DateTimePicker.propTypes = {
|
|
|
82
82
|
* The default value.
|
|
83
83
|
* Used when the component is not controlled.
|
|
84
84
|
*/
|
|
85
|
-
defaultValue: PropTypes.
|
|
85
|
+
defaultValue: PropTypes.object,
|
|
86
86
|
/**
|
|
87
87
|
* CSS media query when `Mobile` mode will be changed to `Desktop`.
|
|
88
88
|
* @default '@media (pointer: fine)'
|
|
@@ -162,29 +162,29 @@ process.env.NODE_ENV !== "production" ? DateTimePicker.propTypes = {
|
|
|
162
162
|
/**
|
|
163
163
|
* Maximal selectable date.
|
|
164
164
|
*/
|
|
165
|
-
maxDate: PropTypes.
|
|
165
|
+
maxDate: PropTypes.object,
|
|
166
166
|
/**
|
|
167
167
|
* Maximal selectable moment of time with binding to date, to set max time in each day use `maxTime`.
|
|
168
168
|
*/
|
|
169
|
-
maxDateTime: PropTypes.
|
|
169
|
+
maxDateTime: PropTypes.object,
|
|
170
170
|
/**
|
|
171
171
|
* Maximal selectable time.
|
|
172
172
|
* The date part of the object will be ignored unless `props.disableIgnoringDatePartForTimeValidation === true`.
|
|
173
173
|
*/
|
|
174
|
-
maxTime: PropTypes.
|
|
174
|
+
maxTime: PropTypes.object,
|
|
175
175
|
/**
|
|
176
176
|
* Minimal selectable date.
|
|
177
177
|
*/
|
|
178
|
-
minDate: PropTypes.
|
|
178
|
+
minDate: PropTypes.object,
|
|
179
179
|
/**
|
|
180
180
|
* Minimal selectable moment of time with binding to date, to set min time in each day use `minTime`.
|
|
181
181
|
*/
|
|
182
|
-
minDateTime: PropTypes.
|
|
182
|
+
minDateTime: PropTypes.object,
|
|
183
183
|
/**
|
|
184
184
|
* Minimal selectable time.
|
|
185
185
|
* The date part of the object will be ignored unless `props.disableIgnoringDatePartForTimeValidation === true`.
|
|
186
186
|
*/
|
|
187
|
-
minTime: PropTypes.
|
|
187
|
+
minTime: PropTypes.object,
|
|
188
188
|
/**
|
|
189
189
|
* Step over minutes.
|
|
190
190
|
* @default 1
|
|
@@ -281,7 +281,7 @@ process.env.NODE_ENV !== "production" ? DateTimePicker.propTypes = {
|
|
|
281
281
|
* The date used to generate the new value when both `value` and `defaultValue` are empty.
|
|
282
282
|
* @default The closest valid date-time using the validation props, except callbacks like `shouldDisable<...>`.
|
|
283
283
|
*/
|
|
284
|
-
referenceDate: PropTypes.
|
|
284
|
+
referenceDate: PropTypes.object,
|
|
285
285
|
/**
|
|
286
286
|
* Component displaying when passed `loading` true.
|
|
287
287
|
* @returns {React.ReactNode} The node to render when loading.
|
|
@@ -391,7 +391,7 @@ process.env.NODE_ENV !== "production" ? DateTimePicker.propTypes = {
|
|
|
391
391
|
* The selected value.
|
|
392
392
|
* Used when the component is controlled.
|
|
393
393
|
*/
|
|
394
|
-
value: PropTypes.
|
|
394
|
+
value: PropTypes.object,
|
|
395
395
|
/**
|
|
396
396
|
* The visible view.
|
|
397
397
|
* Used when the component view is controlled.
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { DesktopDateTimePickerProps, DesktopDateTimePickerSlots, DesktopDateTimePickerSlotProps } from '../DesktopDateTimePicker';
|
|
2
2
|
import { DateOrTimeViewWithMeridiem } from '../internals/models';
|
|
3
3
|
import { MobileDateTimePickerProps, MobileDateTimePickerSlots, MobileDateTimePickerSlotProps } from '../MobileDateTimePicker';
|
|
4
|
-
|
|
4
|
+
import { PickerValidDate } from '../models';
|
|
5
|
+
export interface DateTimePickerSlots<TDate extends PickerValidDate> extends DesktopDateTimePickerSlots<TDate>, MobileDateTimePickerSlots<TDate, DateOrTimeViewWithMeridiem> {
|
|
5
6
|
}
|
|
6
|
-
export interface DateTimePickerSlotProps<TDate> extends DesktopDateTimePickerSlotProps<TDate>, MobileDateTimePickerSlotProps<TDate, DateOrTimeViewWithMeridiem> {
|
|
7
|
+
export interface DateTimePickerSlotProps<TDate extends PickerValidDate> extends DesktopDateTimePickerSlotProps<TDate>, MobileDateTimePickerSlotProps<TDate, DateOrTimeViewWithMeridiem> {
|
|
7
8
|
}
|
|
8
|
-
export interface DateTimePickerProps<TDate> extends DesktopDateTimePickerProps<TDate>, Omit<MobileDateTimePickerProps<TDate, DateOrTimeViewWithMeridiem>, 'views'> {
|
|
9
|
+
export interface DateTimePickerProps<TDate extends PickerValidDate> extends DesktopDateTimePickerProps<TDate>, Omit<MobileDateTimePickerProps<TDate, DateOrTimeViewWithMeridiem>, 'views'> {
|
|
9
10
|
/**
|
|
10
11
|
* CSS media query when `Mobile` mode will be changed to `Desktop`.
|
|
11
12
|
* @default '@media (pointer: fine)'
|
|
@@ -3,11 +3,12 @@ import { BaseToolbarProps, ExportedBaseToolbarProps } from '../internals/models/
|
|
|
3
3
|
import { DateTimePickerToolbarClasses } from './dateTimePickerToolbarClasses';
|
|
4
4
|
import { DateOrTimeViewWithMeridiem, WrapperVariant } from '../internals/models';
|
|
5
5
|
import { MakeOptional } from '../internals/models/helpers';
|
|
6
|
+
import { PickerValidDate } from '../models';
|
|
6
7
|
export interface ExportedDateTimePickerToolbarProps extends ExportedBaseToolbarProps {
|
|
7
8
|
ampm?: boolean;
|
|
8
9
|
ampmInClock?: boolean;
|
|
9
10
|
}
|
|
10
|
-
export interface DateTimePickerToolbarProps<TDate> extends ExportedDateTimePickerToolbarProps, MakeOptional<BaseToolbarProps<TDate | null, DateOrTimeViewWithMeridiem>, 'view'> {
|
|
11
|
+
export interface DateTimePickerToolbarProps<TDate extends PickerValidDate> extends ExportedDateTimePickerToolbarProps, MakeOptional<BaseToolbarProps<TDate | null, DateOrTimeViewWithMeridiem>, 'view'> {
|
|
11
12
|
/**
|
|
12
13
|
* Override or extend the styles applied to the component.
|
|
13
14
|
*/
|
|
@@ -28,7 +29,7 @@ export interface DateTimePickerToolbarProps<TDate> extends ExportedDateTimePicke
|
|
|
28
29
|
*
|
|
29
30
|
* - [DateTimePickerToolbar API](https://mui.com/x/api/date-pickers/date-time-picker-toolbar/)
|
|
30
31
|
*/
|
|
31
|
-
declare function DateTimePickerToolbar<TDate extends
|
|
32
|
+
declare function DateTimePickerToolbar<TDate extends PickerValidDate>(inProps: DateTimePickerToolbarProps<TDate>): React.JSX.Element;
|
|
32
33
|
declare namespace DateTimePickerToolbar {
|
|
33
34
|
var propTypes: any;
|
|
34
35
|
}
|
|
@@ -352,7 +352,7 @@ process.env.NODE_ENV !== "production" ? DateTimePickerToolbar.propTypes = {
|
|
|
352
352
|
*/
|
|
353
353
|
toolbarTitle: PropTypes.node,
|
|
354
354
|
toolbarVariant: PropTypes.oneOf(['desktop', 'mobile']),
|
|
355
|
-
value: PropTypes.
|
|
355
|
+
value: PropTypes.object,
|
|
356
356
|
/**
|
|
357
357
|
* Currently visible picker view.
|
|
358
358
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { DefaultizedProps } from '../internals/models/helpers';
|
|
3
|
-
import { DateTimeValidationError } from '../models';
|
|
3
|
+
import { DateTimeValidationError, PickerValidDate } from '../models';
|
|
4
4
|
import { DateCalendarSlots, DateCalendarSlotProps, ExportedDateCalendarProps } from '../DateCalendar/DateCalendar.types';
|
|
5
5
|
import { TimeClockSlots, TimeClockSlotProps } from '../TimeClock/TimeClock.types';
|
|
6
6
|
import { BasePickerInputProps } from '../internals/models/props/basePickerProps';
|
|
@@ -13,7 +13,7 @@ import { DateViewRendererProps } from '../dateViewRenderers';
|
|
|
13
13
|
import { TimeViewRendererProps } from '../timeViewRenderers';
|
|
14
14
|
import { BaseClockProps, ExportedBaseClockProps } from '../internals/models/props/clock';
|
|
15
15
|
import { DateOrTimeViewWithMeridiem, TimeViewWithMeridiem } from '../internals/models';
|
|
16
|
-
export interface BaseDateTimePickerSlots<TDate> extends DateCalendarSlots<TDate>, TimeClockSlots {
|
|
16
|
+
export interface BaseDateTimePickerSlots<TDate extends PickerValidDate> extends DateCalendarSlots<TDate>, TimeClockSlots {
|
|
17
17
|
/**
|
|
18
18
|
* Tabs enabling toggling between date and time pickers.
|
|
19
19
|
* @default DateTimePickerTabs
|
|
@@ -25,7 +25,7 @@ export interface BaseDateTimePickerSlots<TDate> extends DateCalendarSlots<TDate>
|
|
|
25
25
|
*/
|
|
26
26
|
toolbar?: React.JSXElementConstructor<DateTimePickerToolbarProps<TDate>>;
|
|
27
27
|
}
|
|
28
|
-
export interface BaseDateTimePickerSlotProps<TDate> extends DateCalendarSlotProps<TDate>, TimeClockSlotProps {
|
|
28
|
+
export interface BaseDateTimePickerSlotProps<TDate extends PickerValidDate> extends DateCalendarSlotProps<TDate>, TimeClockSlotProps {
|
|
29
29
|
/**
|
|
30
30
|
* Props passed down to the tabs component.
|
|
31
31
|
*/
|
|
@@ -35,7 +35,7 @@ export interface BaseDateTimePickerSlotProps<TDate> extends DateCalendarSlotProp
|
|
|
35
35
|
*/
|
|
36
36
|
toolbar?: ExportedDateTimePickerToolbarProps;
|
|
37
37
|
}
|
|
38
|
-
export interface BaseDateTimePickerProps<TDate, TView extends DateOrTimeViewWithMeridiem> extends BasePickerInputProps<TDate | null, TDate, TView, DateTimeValidationError>, Omit<ExportedDateCalendarProps<TDate>, 'onViewChange'>, ExportedBaseClockProps<TDate>, DateTimeValidationProps<TDate> {
|
|
38
|
+
export interface BaseDateTimePickerProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem> extends BasePickerInputProps<TDate | null, TDate, TView, DateTimeValidationError>, Omit<ExportedDateCalendarProps<TDate>, 'onViewChange'>, ExportedBaseClockProps<TDate>, DateTimeValidationProps<TDate> {
|
|
39
39
|
/**
|
|
40
40
|
* Display ampm controls under the clock (instead of in the toolbar).
|
|
41
41
|
* @default true on desktop, false on mobile
|
|
@@ -58,6 +58,6 @@ export interface BaseDateTimePickerProps<TDate, TView extends DateOrTimeViewWith
|
|
|
58
58
|
*/
|
|
59
59
|
viewRenderers?: Partial<PickerViewRendererLookup<TDate | null, TView, DateViewRendererProps<TDate, TView> & TimeViewRendererProps<TimeViewWithMeridiem, BaseClockProps<TDate, TimeViewWithMeridiem>>, {}>>;
|
|
60
60
|
}
|
|
61
|
-
type UseDateTimePickerDefaultizedProps<TDate, TView extends DateOrTimeViewWithMeridiem, Props extends BaseDateTimePickerProps<TDate, TView>> = LocalizedComponent<TDate, DefaultizedProps<Props, 'views' | 'openTo' | 'orientation' | 'ampm' | keyof BaseDateValidationProps<TDate> | keyof BaseTimeValidationProps>>;
|
|
62
|
-
export declare function useDateTimePickerDefaultizedProps<TDate, TView extends DateOrTimeViewWithMeridiem, Props extends BaseDateTimePickerProps<TDate, TView>>(props: Props, name: string): UseDateTimePickerDefaultizedProps<TDate, TView, Props>;
|
|
61
|
+
type UseDateTimePickerDefaultizedProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, Props extends BaseDateTimePickerProps<TDate, TView>> = LocalizedComponent<TDate, DefaultizedProps<Props, 'views' | 'openTo' | 'orientation' | 'ampm' | keyof BaseDateValidationProps<TDate> | keyof BaseTimeValidationProps>>;
|
|
62
|
+
export declare function useDateTimePickerDefaultizedProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, Props extends BaseDateTimePickerProps<TDate, TView>>(props: Props, name: string): UseDateTimePickerDefaultizedProps<TDate, TView, Props>;
|
|
63
63
|
export {};
|