Skip to content

Commit f1e96db

Browse files
Work
1 parent cae8762 commit f1e96db

File tree

3 files changed

+27
-15
lines changed

3 files changed

+27
-15
lines changed

packages/x-date-pickers/src/valueManagers/getDateTimeValueManager.ts

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,13 @@ export interface DateTimeFieldInternalPropsWithDefaults<
3737
> extends UseFieldInternalProps<false, TEnableAccessibleFieldDOMStructure, DateTimeValidationError>,
3838
ValidateDateTimeProps {}
3939

40+
type DateTimeFieldPropsToDefault =
41+
| 'format'
42+
// minTime and maxTime can still be undefined after applying defaults.
43+
| 'minTime'
44+
| 'maxTime'
45+
| ValidateDateTimePropsToDefault;
46+
4047
export const getDateTimeFieldInternalPropsDefaults = <
4148
TEnableAccessibleFieldDOMStructure extends boolean,
4249
>({
@@ -46,22 +53,18 @@ export const getDateTimeFieldInternalPropsDefaults = <
4653
}: Pick<MuiPickersAdapterContextValue, 'defaultDates' | 'utils'> & {
4754
internalProps: Pick<
4855
DateTimeFieldInternalProps<TEnableAccessibleFieldDOMStructure>,
49-
| 'format'
50-
| 'ampm'
51-
| 'minDateTime'
52-
| 'maxDateTime'
53-
| 'minTime'
54-
| 'maxTime'
55-
| ValidateDateTimePropsToDefault
56+
DateTimeFieldPropsToDefault | 'minDateTime' | 'maxDateTime' | 'ampm'
5657
>;
57-
}) => {
58+
}): Pick<
59+
DateTimeFieldInternalPropsWithDefaults<TEnableAccessibleFieldDOMStructure>,
60+
DateTimeFieldPropsToDefault | 'disableIgnoringDatePartForTimeValidation'
61+
> => {
5862
const ampm = internalProps.ampm ?? utils.is12HourCycleInCurrentLocale();
5963
const defaultFormat = ampm
6064
? utils.formats.keyboardDateTime12h
6165
: utils.formats.keyboardDateTime24h;
6266

6367
return {
64-
ampm,
6568
disablePast: internalProps.disablePast ?? false,
6669
disableFuture: internalProps.disableFuture ?? false,
6770
format: internalProps.format ?? defaultFormat,

packages/x-date-pickers/src/valueManagers/getDateValueManager.ts

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@ export interface DateFieldInternalPropsWithDefaults<
3535
> extends UseFieldInternalProps<false, TEnableAccessibleFieldDOMStructure, DateValidationError>,
3636
ValidateDateProps {}
3737

38+
type DateFieldPropsToDefault = 'format' | ValidateDatePropsToDefault;
39+
3840
export const getDateFieldInternalPropsDefaults = <
3941
TEnableAccessibleFieldDOMStructure extends boolean,
4042
>({
@@ -44,12 +46,15 @@ export const getDateFieldInternalPropsDefaults = <
4446
}: Pick<MuiPickersAdapterContextValue, 'defaultDates' | 'utils'> & {
4547
internalProps: Pick<
4648
DateFieldInternalProps<TEnableAccessibleFieldDOMStructure>,
47-
'format' | ValidateDatePropsToDefault
49+
DateFieldPropsToDefault
4850
>;
49-
}) => ({
51+
}): Pick<
52+
DateFieldInternalPropsWithDefaults<TEnableAccessibleFieldDOMStructure>,
53+
DateFieldPropsToDefault
54+
> => ({
55+
format: internalProps.format ?? utils.formats.keyboardDate,
5056
disablePast: internalProps.disablePast ?? false,
5157
disableFuture: internalProps.disableFuture ?? false,
52-
format: internalProps.format ?? utils.formats.keyboardDate,
5358
minDate: applyDefaultDate(utils, internalProps.minDate, defaultDates.minDate),
5459
maxDate: applyDefaultDate(utils, internalProps.maxDate, defaultDates.maxDate),
5560
});

packages/x-date-pickers/src/valueManagers/getTimeValueManager.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@ export interface TimeFieldInternalPropsWithDefaults<
3636
> extends UseFieldInternalProps<false, TEnableAccessibleFieldDOMStructure, TimeValidationError>,
3737
ValidateTimeProps {}
3838

39+
type TimeFieldPropsToDefault = 'format' | ValidateTimePropsToDefault;
40+
3941
export const getTimeFieldInternalPropsDefaults = <
4042
TEnableAccessibleFieldDOMStructure extends boolean,
4143
>({
@@ -44,14 +46,16 @@ export const getTimeFieldInternalPropsDefaults = <
4446
}: Pick<MuiPickersAdapterContextValue, 'utils'> & {
4547
internalProps: Pick<
4648
TimeFieldInternalProps<TEnableAccessibleFieldDOMStructure>,
47-
'format' | 'ampm' | ValidateTimePropsToDefault
49+
TimeFieldPropsToDefault | 'ampm'
4850
>;
49-
}) => {
51+
}): Pick<
52+
TimeFieldInternalPropsWithDefaults<TEnableAccessibleFieldDOMStructure>,
53+
TimeFieldPropsToDefault
54+
> => {
5055
const ampm = internalProps.ampm ?? utils.is12HourCycleInCurrentLocale();
5156
const defaultFormat = ampm ? utils.formats.fullTime12h : utils.formats.fullTime24h;
5257

5358
return {
54-
ampm,
5559
disablePast: internalProps.disablePast ?? false,
5660
disableFuture: internalProps.disableFuture ?? false,
5761
format: internalProps.format ?? defaultFormat,

0 commit comments

Comments
 (0)