@mui/x-date-pickers 8.0.0-alpha.1 → 8.0.0-alpha.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.
Files changed (150) hide show
  1. package/AdapterMoment/AdapterMoment.js +10 -0
  2. package/CHANGELOG.md +228 -7
  3. package/DateCalendar/DateCalendar.types.d.ts +2 -1
  4. package/DateCalendar/PickersFadeTransitionGroup.js +4 -6
  5. package/DateCalendar/PickersSlideTransition.js +12 -5
  6. package/DateCalendar/useCalendarState.d.ts +6 -4
  7. package/DateField/DateField.js +5 -4
  8. package/DateField/DateField.types.d.ts +10 -9
  9. package/DatePicker/DatePicker.types.d.ts +3 -3
  10. package/DatePicker/DatePickerToolbar.d.ts +3 -2
  11. package/DatePicker/shared.d.ts +6 -5
  12. package/DateTimeField/DateTimeField.js +5 -4
  13. package/DateTimeField/DateTimeField.types.d.ts +10 -10
  14. package/DateTimePicker/DateTimePicker.types.d.ts +3 -3
  15. package/DateTimePicker/DateTimePickerTabs.js +8 -6
  16. package/DateTimePicker/DateTimePickerToolbar.d.ts +2 -3
  17. package/DateTimePicker/shared.d.ts +6 -6
  18. package/DayCalendarSkeleton/DayCalendarSkeleton.js +10 -19
  19. package/DesktopDateTimePicker/DesktopDateTimePickerLayout.d.ts +2 -1
  20. package/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +10 -21
  21. package/MultiSectionDigitalClock/MultiSectionDigitalClock.types.d.ts +6 -6
  22. package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.d.ts +4 -4
  23. package/PickersCalendarHeader/PickersCalendarHeader.js +8 -7
  24. package/PickersCalendarHeader/PickersCalendarHeader.types.d.ts +3 -4
  25. package/PickersLayout/PickersLayout.d.ts +7 -5
  26. package/PickersLayout/PickersLayout.js +22 -27
  27. package/PickersLayout/PickersLayout.types.d.ts +14 -15
  28. package/PickersLayout/usePickerLayout.d.ts +5 -4
  29. package/PickersLayout/usePickerLayout.js +19 -12
  30. package/PickersShortcuts/PickersShortcuts.d.ts +7 -6
  31. package/README.md +7 -4
  32. package/TimeField/TimeField.js +5 -4
  33. package/TimeField/TimeField.types.d.ts +10 -10
  34. package/TimePicker/TimePicker.types.d.ts +3 -3
  35. package/TimePicker/TimePickerToolbar.d.ts +2 -3
  36. package/TimePicker/shared.d.ts +6 -6
  37. package/hooks/useParsedFormat.d.ts +2 -2
  38. package/hooks/useParsedFormat.js +1 -1
  39. package/index.js +1 -1
  40. package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +11 -10
  41. package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.types.d.ts +11 -8
  42. package/internals/components/PickersToolbar.d.ts +3 -3
  43. package/internals/hooks/useClockReferenceDate.d.ts +2 -1
  44. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +14 -14
  45. package/internals/hooks/useField/useField.d.ts +3 -3
  46. package/internals/hooks/useField/useField.types.d.ts +45 -45
  47. package/internals/hooks/useField/useField.utils.d.ts +4 -3
  48. package/internals/hooks/useField/useFieldCharacterEditing.d.ts +6 -5
  49. package/internals/hooks/useField/useFieldState.d.ts +9 -8
  50. package/internals/hooks/useField/useFieldState.js +0 -1
  51. package/internals/hooks/useField/useFieldV6TextField.d.ts +4 -3
  52. package/internals/hooks/useFieldOwnerState.d.ts +6 -0
  53. package/internals/hooks/useFieldOwnerState.js +12 -0
  54. package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +11 -11
  55. package/internals/hooks/usePicker/usePicker.d.ts +3 -3
  56. package/internals/hooks/usePicker/usePicker.js +2 -8
  57. package/internals/hooks/usePicker/usePicker.types.d.ts +7 -7
  58. package/internals/hooks/usePicker/usePickerProvider.d.ts +4 -5
  59. package/internals/hooks/usePicker/usePickerValue.d.ts +3 -2
  60. package/internals/hooks/usePicker/usePickerValue.js +0 -1
  61. package/internals/hooks/usePicker/usePickerValue.types.d.ts +25 -24
  62. package/internals/hooks/usePicker/usePickerViews.d.ts +10 -10
  63. package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +5 -6
  64. package/internals/hooks/useValueWithTimezone.d.ts +5 -4
  65. package/internals/hooks/useViews.d.ts +5 -5
  66. package/internals/index.d.ts +4 -2
  67. package/internals/index.js +1 -0
  68. package/internals/models/fields.d.ts +6 -1
  69. package/internals/models/pickers.d.ts +1 -0
  70. package/internals/models/pickers.js +1 -0
  71. package/internals/models/props/basePickerProps.d.ts +4 -3
  72. package/internals/models/props/time.d.ts +2 -1
  73. package/internals/models/props/toolbar.d.ts +2 -1
  74. package/internals/models/value.d.ts +9 -0
  75. package/internals/utils/date-utils.d.ts +1 -1
  76. package/internals/utils/valueManagers.d.ts +4 -3
  77. package/locales/nlNL.js +7 -7
  78. package/models/adapters.d.ts +4 -4
  79. package/models/fields.d.ts +19 -5
  80. package/models/validation.d.ts +2 -1
  81. package/modern/AdapterMoment/AdapterMoment.js +10 -0
  82. package/modern/DateCalendar/PickersFadeTransitionGroup.js +4 -6
  83. package/modern/DateCalendar/PickersSlideTransition.js +12 -5
  84. package/modern/DateField/DateField.js +5 -4
  85. package/modern/DateTimeField/DateTimeField.js +5 -4
  86. package/modern/DateTimePicker/DateTimePickerTabs.js +8 -6
  87. package/modern/DayCalendarSkeleton/DayCalendarSkeleton.js +10 -19
  88. package/modern/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +10 -21
  89. package/modern/PickersCalendarHeader/PickersCalendarHeader.js +8 -7
  90. package/modern/PickersLayout/PickersLayout.js +22 -27
  91. package/modern/PickersLayout/usePickerLayout.js +19 -12
  92. package/modern/TimeField/TimeField.js +5 -4
  93. package/modern/hooks/useParsedFormat.js +1 -1
  94. package/modern/index.js +1 -1
  95. package/modern/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +11 -10
  96. package/modern/internals/hooks/useField/useFieldState.js +0 -1
  97. package/modern/internals/hooks/useFieldOwnerState.js +12 -0
  98. package/modern/internals/hooks/usePicker/usePicker.js +2 -8
  99. package/modern/internals/hooks/usePicker/usePickerValue.js +0 -1
  100. package/modern/internals/index.js +1 -0
  101. package/modern/internals/models/pickers.js +1 -0
  102. package/modern/locales/nlNL.js +7 -7
  103. package/modern/validation/useValidation.js +1 -1
  104. package/modern/validation/validateDate.js +8 -0
  105. package/modern/validation/validateDateTime.js +8 -0
  106. package/modern/validation/validateTime.js +8 -0
  107. package/node/AdapterMoment/AdapterMoment.js +10 -0
  108. package/node/DateCalendar/PickersFadeTransitionGroup.js +4 -6
  109. package/node/DateCalendar/PickersSlideTransition.js +12 -5
  110. package/node/DateField/DateField.js +5 -4
  111. package/node/DateTimeField/DateTimeField.js +5 -4
  112. package/node/DateTimePicker/DateTimePickerTabs.js +8 -6
  113. package/node/DayCalendarSkeleton/DayCalendarSkeleton.js +10 -19
  114. package/node/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +11 -22
  115. package/node/PickersCalendarHeader/PickersCalendarHeader.js +8 -7
  116. package/node/PickersLayout/PickersLayout.js +22 -27
  117. package/node/PickersLayout/usePickerLayout.js +19 -12
  118. package/node/TimeField/TimeField.js +5 -4
  119. package/node/hooks/useParsedFormat.js +1 -1
  120. package/node/index.js +1 -1
  121. package/node/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +11 -10
  122. package/node/internals/hooks/useField/useFieldState.js +0 -1
  123. package/node/internals/hooks/useFieldOwnerState.js +20 -0
  124. package/node/internals/hooks/usePicker/usePicker.js +3 -8
  125. package/node/internals/index.js +7 -0
  126. package/node/internals/models/pickers.js +5 -0
  127. package/node/locales/nlNL.js +7 -7
  128. package/node/validation/useValidation.js +1 -1
  129. package/node/validation/validateDate.js +8 -0
  130. package/node/validation/validateDateTime.js +8 -0
  131. package/node/validation/validateTime.js +8 -0
  132. package/package.json +2 -2
  133. package/themeAugmentation/overrides.d.ts +1 -1
  134. package/themeAugmentation/props.d.ts +3 -2
  135. package/validation/useValidation.d.ts +7 -6
  136. package/validation/useValidation.js +1 -1
  137. package/validation/validateDate.d.ts +12 -3
  138. package/validation/validateDate.js +8 -0
  139. package/validation/validateDateTime.d.ts +12 -4
  140. package/validation/validateDateTime.js +8 -0
  141. package/validation/validateTime.d.ts +12 -3
  142. package/validation/validateTime.js +8 -0
  143. package/internals/hooks/useIsLandscape.d.ts +0 -4
  144. package/internals/hooks/useIsLandscape.js +0 -35
  145. package/internals/hooks/usePicker/usePickerLayoutProps.d.ts +0 -32
  146. package/internals/hooks/usePicker/usePickerLayoutProps.js +0 -31
  147. package/modern/internals/hooks/useIsLandscape.js +0 -35
  148. package/modern/internals/hooks/usePicker/usePickerLayoutProps.js +0 -31
  149. package/node/internals/hooks/useIsLandscape.js +0 -43
  150. package/node/internals/hooks/usePicker/usePickerLayoutProps.js +0 -38
@@ -4,20 +4,22 @@ import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import * as React from 'react';
5
5
  import useSlotProps from '@mui/utils/useSlotProps';
6
6
  import composeClasses from '@mui/utils/composeClasses';
7
+ import { useRtl } from '@mui/system/RtlProvider';
7
8
  import { PickersActionBar } from "../PickersActionBar/index.js";
8
9
  import { getPickersLayoutUtilityClass } from "./pickersLayoutClasses.js";
9
10
  import { PickersShortcuts } from "../PickersShortcuts/index.js";
10
11
  import { usePickerPrivateContext } from "../internals/hooks/usePickerPrivateContext.js";
12
+ import { usePickerContext } from "../hooks/index.js";
11
13
  import { jsx as _jsx } from "react/jsx-runtime";
12
14
  function toolbarHasView(toolbarProps) {
13
15
  return toolbarProps.view !== null;
14
16
  }
15
17
  const useUtilityClasses = (classes, ownerState) => {
16
18
  const {
17
- isLandscape
19
+ pickerOrientation
18
20
  } = ownerState;
19
21
  const slots = {
20
- root: ['root', isLandscape && 'landscape'],
22
+ root: ['root', pickerOrientation === 'landscape' && 'landscape'],
21
23
  contentWrapper: ['contentWrapper'],
22
24
  toolbar: ['toolbar'],
23
25
  actionBar: ['actionBar'],
@@ -29,10 +31,14 @@ const useUtilityClasses = (classes, ownerState) => {
29
31
  };
30
32
  const usePickerLayout = props => {
31
33
  const {
32
- ownerState: pickersOwnerState
34
+ ownerState: pickerOwnerState
33
35
  } = usePickerPrivateContext();
34
36
  const {
35
- wrapperVariant,
37
+ variant,
38
+ orientation
39
+ } = usePickerContext();
40
+ const isRtl = useRtl();
41
+ const {
36
42
  onAccept,
37
43
  onClear,
38
44
  onCancel,
@@ -44,7 +50,6 @@ const usePickerLayout = props => {
44
50
  onChange,
45
51
  onSelectShortcut,
46
52
  isValid,
47
- isLandscape,
48
53
  children,
49
54
  slots,
50
55
  slotProps,
@@ -54,9 +59,8 @@ const usePickerLayout = props => {
54
59
  // - For pickers value: PickerValidDate | null
55
60
  // - For range pickers value: [PickerValidDate | null, PickerValidDate | null]
56
61
  } = props;
57
- const ownerState = _extends({}, pickersOwnerState, {
58
- wrapperVariant,
59
- isLandscape
62
+ const ownerState = _extends({}, pickerOwnerState, {
63
+ isRtl
60
64
  });
61
65
  const classes = useUtilityClasses(classesProp, ownerState);
62
66
 
@@ -70,7 +74,7 @@ const usePickerLayout = props => {
70
74
  onClear,
71
75
  onCancel,
72
76
  onSetToday,
73
- actions: wrapperVariant === 'desktop' ? [] : ['cancel', 'accept']
77
+ actions: variant === 'desktop' ? [] : ['cancel', 'accept']
74
78
  },
75
79
  className: classes.actionBar,
76
80
  ownerState
@@ -83,7 +87,8 @@ const usePickerLayout = props => {
83
87
  elementType: Toolbar,
84
88
  externalSlotProps: slotProps?.toolbar,
85
89
  additionalProps: {
86
- isLandscape,
90
+ isLandscape: orientation === 'landscape',
91
+ // Will be removed in a follow up PR?
87
92
  onChange,
88
93
  value,
89
94
  view,
@@ -113,7 +118,8 @@ const usePickerLayout = props => {
113
118
  externalSlotProps: slotProps?.shortcuts,
114
119
  additionalProps: {
115
120
  isValid,
116
- isLandscape,
121
+ isLandscape: orientation === 'landscape',
122
+ // Will be removed in a follow up PR?
117
123
  onChange: onSelectShortcut
118
124
  },
119
125
  className: classes.shortcuts,
@@ -125,7 +131,8 @@ const usePickerLayout = props => {
125
131
  content,
126
132
  tabs,
127
133
  actionBar,
128
- shortcuts
134
+ shortcuts,
135
+ ownerState
129
136
  };
130
137
  };
131
138
  export default usePickerLayout;
@@ -1,9 +1,10 @@
1
1
  import * as React from 'react';
2
2
  import { ListProps } from '@mui/material/List';
3
- interface PickersShortcutsItemGetValueParams<TValue> {
3
+ import { PickerValidValue } from '../internals/models';
4
+ interface PickersShortcutsItemGetValueParams<TValue extends PickerValidValue> {
4
5
  isValid: (value: TValue) => boolean;
5
6
  }
6
- export interface PickersShortcutsItem<TValue> {
7
+ export interface PickersShortcutsItem<TValue extends PickerValidValue> {
7
8
  label: string;
8
9
  getValue: (params: PickersShortcutsItemGetValueParams<TValue>) => TValue;
9
10
  /**
@@ -12,9 +13,9 @@ export interface PickersShortcutsItem<TValue> {
12
13
  */
13
14
  id?: string;
14
15
  }
15
- export type PickersShortcutsItemContext = Omit<PickersShortcutsItem<unknown>, 'getValue'>;
16
+ export type PickersShortcutsItemContext = Omit<PickersShortcutsItem<PickerValidValue>, 'getValue'>;
16
17
  export type PickerShortcutChangeImportance = 'set' | 'accept';
17
- export interface ExportedPickersShortcutProps<TValue> extends Omit<ListProps, 'onChange'> {
18
+ export interface ExportedPickersShortcutProps<TValue extends PickerValidValue> extends Omit<ListProps, 'onChange'> {
18
19
  /**
19
20
  * Ordered array of shortcuts to display.
20
21
  * If empty, does not display the shortcuts.
@@ -29,7 +30,7 @@ export interface ExportedPickersShortcutProps<TValue> extends Omit<ListProps, 'o
29
30
  */
30
31
  changeImportance?: PickerShortcutChangeImportance;
31
32
  }
32
- export interface PickersShortcutsProps<TValue> extends ExportedPickersShortcutProps<TValue> {
33
+ export interface PickersShortcutsProps<TValue extends PickerValidValue> extends ExportedPickersShortcutProps<TValue> {
33
34
  isLandscape: boolean;
34
35
  onChange: (newValue: TValue, changeImportance: PickerShortcutChangeImportance, shortcut: PickersShortcutsItemContext) => void;
35
36
  isValid: (value: TValue) => boolean;
@@ -43,7 +44,7 @@ export interface PickersShortcutsProps<TValue> extends ExportedPickersShortcutPr
43
44
  *
44
45
  * - [PickersShortcuts API](https://mui.com/x/api/date-pickers/pickers-shortcuts/)
45
46
  */
46
- declare function PickersShortcuts<TValue>(props: PickersShortcutsProps<TValue>): React.JSX.Element | null;
47
+ declare function PickersShortcuts<TValue extends PickerValidValue>(props: PickersShortcutsProps<TValue>): React.JSX.Element | null;
47
48
  declare namespace PickersShortcuts {
48
49
  var propTypes: any;
49
50
  }
package/README.md CHANGED
@@ -20,13 +20,16 @@ The pickers currently support the following date libraries:
20
20
  - [Moment.js](https://momentjs.com/)
21
21
 
22
22
  ```bash
23
- // date-fns
23
+ # date-fns
24
24
  npm install date-fns
25
- // or dayjs
25
+
26
+ # or dayjs
26
27
  npm install dayjs
27
- // or luxon
28
+
29
+ # or luxon
28
30
  npm install luxon
29
- // or moment
31
+
32
+ # or moment
30
33
  npm install moment
31
34
  ```
32
35
 
@@ -13,6 +13,7 @@ import { useTimeField } from "./useTimeField.js";
13
13
  import { useClearableField } from "../hooks/index.js";
14
14
  import { PickersTextField } from "../PickersTextField/index.js";
15
15
  import { convertFieldResponseIntoMuiTextFieldProps } from "../internals/utils/convertFieldResponseIntoMuiTextFieldProps.js";
16
+ import { useFieldOwnerState } from "../internals/hooks/useFieldOwnerState.js";
16
17
  import { jsx as _jsx } from "react/jsx-runtime";
17
18
  /**
18
19
  * Demos:
@@ -36,7 +37,7 @@ const TimeField = /*#__PURE__*/React.forwardRef(function TimeField(inProps, inRe
36
37
  inputProps
37
38
  } = themeProps,
38
39
  other = _objectWithoutPropertiesLoose(themeProps, _excluded);
39
- const ownerState = themeProps;
40
+ const ownerState = useFieldOwnerState(themeProps);
40
41
  const TextField = slots?.textField ?? (inProps.enableAccessibleFieldDOMStructure === false ? MuiTextField : PickersTextField);
41
42
  const textFieldProps = useSlotProps({
42
43
  elementType: TextField,
@@ -268,10 +269,10 @@ process.env.NODE_ENV !== "production" ? TimeField.propTypes = {
268
269
  */
269
270
  shouldDisableTime: PropTypes.func,
270
271
  /**
271
- * If `true`, the format will respect the leading zeroes (e.g: on dayjs, the format `M/D/YYYY` will render `8/16/2018`)
272
- * If `false`, the format will always add leading zeroes (e.g: on dayjs, the format `M/D/YYYY` will render `08/16/2018`)
272
+ * If `true`, the format will respect the leading zeroes (for example on dayjs, the format `M/D/YYYY` will render `8/16/2018`)
273
+ * If `false`, the format will always add leading zeroes (for example on dayjs, the format `M/D/YYYY` will render `08/16/2018`)
273
274
  *
274
- * Warning n°1: Luxon is not able to respect the leading zeroes when using macro tokens (e.g: "DD"), so `shouldRespectLeadingZeros={true}` might lead to inconsistencies when using `AdapterLuxon`.
275
+ * Warning n°1: Luxon is not able to respect the leading zeroes when using macro tokens (for example "DD"), so `shouldRespectLeadingZeros={true}` might lead to inconsistencies when using `AdapterLuxon`.
275
276
  *
276
277
  * Warning n°2: When `shouldRespectLeadingZeros={true}`, the field will add an invisible character on the sections containing a single digit to make sure `onChange` is fired.
277
278
  * If you need to get the clean value from the input, you can remove this character using `input.value.replace(/\u200e/g, '')`.
@@ -1,13 +1,14 @@
1
1
  import * as React from 'react';
2
- import { SlotComponentProps } from '@mui/utils';
3
- import { MakeOptional } from '@mui/x-internals/types';
4
- import TextField from '@mui/material/TextField';
2
+ import type { TextFieldProps } from '@mui/material/TextField';
3
+ import { MakeOptional, SlotComponentPropsFromProps } from '@mui/x-internals/types';
5
4
  import { UseFieldInternalProps } from '../internals/hooks/useField';
6
- import { FieldSection, PickerValidDate, TimeValidationError, BuiltInFieldTextFieldProps } from '../models';
5
+ import { TimeValidationError, BuiltInFieldTextFieldProps, FieldOwnerState } from '../models';
7
6
  import { ExportedUseClearableFieldProps, UseClearableFieldSlots, UseClearableFieldSlotProps } from '../hooks/useClearableField';
8
7
  import { ExportedValidateTimeProps } from '../validation/validateTime';
9
8
  import { AmPmProps } from '../internals/models/props/time';
10
- export interface UseTimeFieldProps<TEnableAccessibleFieldDOMStructure extends boolean> extends MakeOptional<UseFieldInternalProps<PickerValidDate | null, FieldSection, TEnableAccessibleFieldDOMStructure, TimeValidationError>, 'format'>, ExportedValidateTimeProps, ExportedUseClearableFieldProps, AmPmProps {
9
+ import { PickerValue } from '../internals/models';
10
+ import { PickersTextFieldProps } from '../PickersTextField';
11
+ export interface UseTimeFieldProps<TEnableAccessibleFieldDOMStructure extends boolean> extends MakeOptional<UseFieldInternalProps<PickerValue, TEnableAccessibleFieldDOMStructure, TimeValidationError>, 'format'>, ExportedValidateTimeProps, ExportedUseClearableFieldProps, AmPmProps {
11
12
  }
12
13
  export type TimeFieldProps<TEnableAccessibleFieldDOMStructure extends boolean = true> = UseTimeFieldProps<TEnableAccessibleFieldDOMStructure> & Omit<BuiltInFieldTextFieldProps<TEnableAccessibleFieldDOMStructure>, keyof UseTimeFieldProps<TEnableAccessibleFieldDOMStructure>> & {
13
14
  /**
@@ -19,16 +20,15 @@ export type TimeFieldProps<TEnableAccessibleFieldDOMStructure extends boolean =
19
20
  * The props used for each component slot.
20
21
  * @default {}
21
22
  */
22
- slotProps?: TimeFieldSlotProps<TEnableAccessibleFieldDOMStructure>;
23
+ slotProps?: TimeFieldSlotProps;
23
24
  };
24
- export type TimeFieldOwnerState<TEnableAccessibleFieldDOMStructure extends boolean> = TimeFieldProps<TEnableAccessibleFieldDOMStructure>;
25
25
  export interface TimeFieldSlots extends UseClearableFieldSlots {
26
26
  /**
27
27
  * Form control with an input to render the value.
28
- * @default TextField from '@mui/material' or PickersTextField if `enableAccessibleFieldDOMStructure` is `true`.
28
+ * @default <PickersTextField />, or <TextField /> from '@mui/material' if `enableAccessibleFieldDOMStructure` is `false`.
29
29
  */
30
30
  textField?: React.ElementType;
31
31
  }
32
- export interface TimeFieldSlotProps<TEnableAccessibleFieldDOMStructure extends boolean> extends UseClearableFieldSlotProps {
33
- textField?: SlotComponentProps<typeof TextField, {}, TimeFieldOwnerState<TEnableAccessibleFieldDOMStructure>>;
32
+ export interface TimeFieldSlotProps extends UseClearableFieldSlotProps {
33
+ textField?: SlotComponentPropsFromProps<PickersTextFieldProps | TextFieldProps, {}, FieldOwnerState>;
34
34
  }
@@ -1,7 +1,7 @@
1
1
  import { DesktopTimePickerProps, DesktopTimePickerSlots, DesktopTimePickerSlotProps } from '../DesktopTimePicker';
2
- import { BaseSingleInputFieldProps, TimeViewWithMeridiem } from '../internals/models';
2
+ import { BaseSingleInputFieldProps, PickerValue, TimeViewWithMeridiem } from '../internals/models';
3
3
  import { MobileTimePickerProps, MobileTimePickerSlots, MobileTimePickerSlotProps } from '../MobileTimePicker';
4
- import { FieldSection, PickerValidDate, TimeValidationError } from '../models';
4
+ import { TimeValidationError } from '../models';
5
5
  import { ValidateTimeProps } from '../validation/validateTime';
6
6
  export interface TimePickerSlots extends DesktopTimePickerSlots, MobileTimePickerSlots<TimeViewWithMeridiem> {
7
7
  }
@@ -28,4 +28,4 @@ export interface TimePickerProps<TEnableAccessibleFieldDOMStructure extends bool
28
28
  /**
29
29
  * Props the field can receive when used inside a time picker (<TimePicker />, <DesktopTimePicker /> or <MobileTimePicker /> component).
30
30
  */
31
- export type TimePickerFieldProps<TEnableAccessibleFieldDOMStructure extends boolean = true> = ValidateTimeProps & BaseSingleInputFieldProps<PickerValidDate | null, FieldSection, TEnableAccessibleFieldDOMStructure, TimeValidationError>;
31
+ export type TimePickerFieldProps<TEnableAccessibleFieldDOMStructure extends boolean = true> = ValidateTimeProps & BaseSingleInputFieldProps<PickerValue, TEnableAccessibleFieldDOMStructure, TimeValidationError>;
@@ -1,9 +1,8 @@
1
1
  import * as React from 'react';
2
2
  import { BaseToolbarProps, ExportedBaseToolbarProps } from '../internals/models/props/toolbar';
3
3
  import { TimePickerToolbarClasses } from './timePickerToolbarClasses';
4
- import { TimeViewWithMeridiem } from '../internals/models';
5
- import { PickerValidDate } from '../models';
6
- export interface TimePickerToolbarProps extends BaseToolbarProps<PickerValidDate | null, TimeViewWithMeridiem>, ExportedTimePickerToolbarProps {
4
+ import { PickerValue, TimeViewWithMeridiem } from '../internals/models';
5
+ export interface TimePickerToolbarProps extends BaseToolbarProps<PickerValue, TimeViewWithMeridiem>, ExportedTimePickerToolbarProps {
7
6
  ampm?: boolean;
8
7
  ampmInClock?: boolean;
9
8
  }
@@ -2,14 +2,14 @@ import * as React from 'react';
2
2
  import { DefaultizedProps } from '@mui/x-internals/types';
3
3
  import { TimeClockSlots, TimeClockSlotProps } from '../TimeClock/TimeClock.types';
4
4
  import { BasePickerInputProps } from '../internals/models/props/basePickerProps';
5
- import { BaseTimeValidationProps } from '../internals/models/validation';
6
5
  import { LocalizedComponent } from '../locales/utils/pickersLocaleTextApi';
7
6
  import { TimePickerToolbarProps, ExportedTimePickerToolbarProps } from './TimePickerToolbar';
8
- import { PickerValidDate, TimeValidationError } from '../models';
7
+ import { TimeValidationError } from '../models';
9
8
  import { PickerViewRendererLookup } from '../internals/hooks/usePicker/usePickerViews';
10
9
  import { TimeViewRendererProps } from '../timeViewRenderers';
11
10
  import { BaseClockProps, ExportedBaseClockProps } from '../internals/models/props/time';
12
- import { TimeViewWithMeridiem } from '../internals/models';
11
+ import { PickerValue, TimeViewWithMeridiem } from '../internals/models';
12
+ import { ValidateTimePropsToDefault } from '../validation/validateTime';
13
13
  export interface BaseTimePickerSlots extends TimeClockSlots {
14
14
  /**
15
15
  * Custom component for the toolbar rendered above the views.
@@ -20,8 +20,8 @@ export interface BaseTimePickerSlots extends TimeClockSlots {
20
20
  export interface BaseTimePickerSlotProps extends TimeClockSlotProps {
21
21
  toolbar?: ExportedTimePickerToolbarProps;
22
22
  }
23
- export type TimePickerViewRenderers<TView extends TimeViewWithMeridiem, TAdditionalProps extends {} = {}> = PickerViewRendererLookup<PickerValidDate | null, TView, TimeViewRendererProps<TView, BaseClockProps<TView>>, TAdditionalProps>;
24
- export interface BaseTimePickerProps<TView extends TimeViewWithMeridiem> extends BasePickerInputProps<PickerValidDate | null, TView, TimeValidationError>, ExportedBaseClockProps {
23
+ export type TimePickerViewRenderers<TView extends TimeViewWithMeridiem, TAdditionalProps extends {} = {}> = PickerViewRendererLookup<PickerValue, TView, TimeViewRendererProps<TView, BaseClockProps<TView>>, TAdditionalProps>;
24
+ export interface BaseTimePickerProps<TView extends TimeViewWithMeridiem> extends BasePickerInputProps<PickerValue, TView, TimeValidationError>, ExportedBaseClockProps {
25
25
  /**
26
26
  * Display ampm controls under the clock (instead of in the toolbar).
27
27
  * @default true on desktop, false on mobile
@@ -44,6 +44,6 @@ export interface BaseTimePickerProps<TView extends TimeViewWithMeridiem> extends
44
44
  */
45
45
  viewRenderers?: Partial<TimePickerViewRenderers<TView>>;
46
46
  }
47
- type UseTimePickerDefaultizedProps<TView extends TimeViewWithMeridiem, Props extends BaseTimePickerProps<TView>> = LocalizedComponent<DefaultizedProps<Props, 'views' | 'openTo' | 'ampm' | keyof BaseTimeValidationProps>>;
47
+ type UseTimePickerDefaultizedProps<TView extends TimeViewWithMeridiem, Props extends BaseTimePickerProps<TView>> = LocalizedComponent<DefaultizedProps<Props, 'views' | 'openTo' | 'ampm' | ValidateTimePropsToDefault>>;
48
48
  export declare function useTimePickerDefaultizedProps<TView extends TimeViewWithMeridiem, Props extends BaseTimePickerProps<TView>>(props: Props, name: string): UseTimePickerDefaultizedProps<TView, Props>;
49
49
  export {};
@@ -1,9 +1,9 @@
1
1
  import type { UseFieldInternalProps } from '../internals/hooks/useField';
2
- interface UseParsedFormatParameters extends Pick<UseFieldInternalProps<any, any, any, any>, 'format' | 'formatDensity' | 'shouldRespectLeadingZeros'> {
2
+ interface UseParsedFormatParameters extends Pick<UseFieldInternalProps<any, any, any>, 'format' | 'formatDensity' | 'shouldRespectLeadingZeros'> {
3
3
  }
4
4
  /**
5
5
  * Returns the parsed format to be rendered in the field when there is no value or in other parts of the Picker.
6
- * This format is localized (e.g: `AAAA` for the year with the French locale) and cannot be parsed by your date library.
6
+ * This format is localized (for example `AAAA` for the year with the French locale) and cannot be parsed by your date library.
7
7
  * @param {object} The parameters needed to build the placeholder.
8
8
  * @param {string} params.format Format of the date to use.
9
9
  * @param {'dense' | 'spacious'} params.formatDensity Density of the format (setting `formatDensity` to `"spacious"` will add a space before and after each `/`, `-` and `.` character).
@@ -8,7 +8,7 @@ import { getLocalizedDigits } from "../internals/hooks/useField/useField.utils.j
8
8
  import { usePickerTranslations } from "./usePickerTranslations.js";
9
9
  /**
10
10
  * Returns the parsed format to be rendered in the field when there is no value or in other parts of the Picker.
11
- * This format is localized (e.g: `AAAA` for the year with the French locale) and cannot be parsed by your date library.
11
+ * This format is localized (for example `AAAA` for the year with the French locale) and cannot be parsed by your date library.
12
12
  * @param {object} The parameters needed to build the placeholder.
13
13
  * @param {string} params.format Format of the date to use.
14
14
  * @param {'dense' | 'spacious'} params.formatDensity Density of the format (setting `formatDensity` to `"spacious"` will add a space before and after each `/`, `-` and `.` character).
package/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-date-pickers v8.0.0-alpha.1
2
+ * @mui/x-date-pickers v8.0.0-alpha.2
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -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 = ["children", "className", "slots", "slotProps", "isNextDisabled", "isNextHidden", "onGoToNext", "nextLabel", "isPreviousDisabled", "isPreviousHidden", "onGoToPrevious", "previousLabel", "labelId"],
3
+ const _excluded = ["children", "className", "slots", "slotProps", "isNextDisabled", "isNextHidden", "onGoToNext", "nextLabel", "isPreviousDisabled", "isPreviousHidden", "onGoToPrevious", "previousLabel", "labelId", "classes"],
4
4
  _excluded2 = ["ownerState"],
5
5
  _excluded3 = ["ownerState"];
6
6
  import * as React from 'react';
@@ -13,6 +13,7 @@ import useSlotProps from '@mui/utils/useSlotProps';
13
13
  import IconButton from '@mui/material/IconButton';
14
14
  import { ArrowLeftIcon, ArrowRightIcon } from "../../../icons/index.js";
15
15
  import { getPickersArrowSwitcherUtilityClass } from "./pickersArrowSwitcherClasses.js";
16
+ import { usePickerPrivateContext } from "../../hooks/usePickerPrivateContext.js";
16
17
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
17
18
  const PickersArrowSwitcherRoot = styled('div', {
18
19
  name: 'MuiPickersArrowSwitcher',
@@ -44,10 +45,7 @@ const PickersArrowSwitcherButton = styled(IconButton, {
44
45
  }
45
46
  }]
46
47
  });
47
- const useUtilityClasses = ownerState => {
48
- const {
49
- classes
50
- } = ownerState;
48
+ const useUtilityClasses = classes => {
51
49
  const slots = {
52
50
  root: ['root'],
53
51
  spacer: ['spacer'],
@@ -78,11 +76,14 @@ export const PickersArrowSwitcher = /*#__PURE__*/React.forwardRef(function Picke
78
76
  isPreviousHidden,
79
77
  onGoToPrevious,
80
78
  previousLabel,
81
- labelId
79
+ labelId,
80
+ classes: classesProp
82
81
  } = props,
83
82
  other = _objectWithoutPropertiesLoose(props, _excluded);
84
- const ownerState = props;
85
- const classes = useUtilityClasses(ownerState);
83
+ const {
84
+ ownerState
85
+ } = usePickerPrivateContext();
86
+ const classes = useUtilityClasses(classesProp);
86
87
  const nextProps = {
87
88
  isDisabled: isNextDisabled,
88
89
  isHidden: isNextHidden,
@@ -108,7 +109,7 @@ export const PickersArrowSwitcher = /*#__PURE__*/React.forwardRef(function Picke
108
109
  onClick: previousProps.goTo
109
110
  },
110
111
  ownerState: _extends({}, ownerState, {
111
- hidden: previousProps.isHidden
112
+ hidden: previousProps.isHidden ?? false
112
113
  }),
113
114
  className: clsx(classes.button, classes.previousIconButton)
114
115
  });
@@ -125,7 +126,7 @@ export const PickersArrowSwitcher = /*#__PURE__*/React.forwardRef(function Picke
125
126
  onClick: nextProps.goTo
126
127
  },
127
128
  ownerState: _extends({}, ownerState, {
128
- hidden: nextProps.isHidden
129
+ hidden: nextProps.isHidden ?? false
129
130
  }),
130
131
  className: clsx(classes.button, classes.nextIconButton)
131
132
  });
@@ -3,6 +3,7 @@ import { SlotComponentProps } from '@mui/utils';
3
3
  import IconButton from '@mui/material/IconButton';
4
4
  import SvgIcon from '@mui/material/SvgIcon';
5
5
  import { PickersArrowSwitcherClasses } from './pickersArrowSwitcherClasses';
6
+ import { PickerOwnerState } from '../../../models';
6
7
  export interface ExportedPickersArrowSwitcherProps {
7
8
  /**
8
9
  * Overridable component slots.
@@ -36,7 +37,12 @@ export interface PickersArrowSwitcherProps extends ExportedPickersArrowSwitcherP
36
37
  nextLabel: string;
37
38
  labelId?: string;
38
39
  }
39
- export type PickersArrowSwitcherOwnerState = PickersArrowSwitcherProps;
40
+ export interface PickersArrowSwitcherOwnerState extends PickerOwnerState {
41
+ /**
42
+ * If `true`, this button should be hidden.
43
+ */
44
+ hidden: boolean;
45
+ }
40
46
  export interface PickersArrowSwitcherSlotPropsOverrides {
41
47
  }
42
48
  export interface PickersArrowSwitcherSlots {
@@ -61,12 +67,9 @@ export interface PickersArrowSwitcherSlots {
61
67
  */
62
68
  rightArrowIcon?: React.ElementType;
63
69
  }
64
- export interface PickersArrowSwitcherButtonSlotOwnerState extends PickersArrowSwitcherOwnerState {
65
- hidden?: boolean;
66
- }
67
70
  export interface PickersArrowSwitcherSlotProps {
68
- previousIconButton?: SlotComponentProps<typeof IconButton, PickersArrowSwitcherSlotPropsOverrides, PickersArrowSwitcherButtonSlotOwnerState>;
69
- nextIconButton?: SlotComponentProps<typeof IconButton, PickersArrowSwitcherSlotPropsOverrides, PickersArrowSwitcherButtonSlotOwnerState>;
70
- leftArrowIcon?: SlotComponentProps<typeof SvgIcon, PickersArrowSwitcherSlotPropsOverrides, PickersArrowSwitcherButtonSlotOwnerState>;
71
- rightArrowIcon?: SlotComponentProps<typeof SvgIcon, PickersArrowSwitcherSlotPropsOverrides, PickersArrowSwitcherButtonSlotOwnerState>;
71
+ previousIconButton?: SlotComponentProps<typeof IconButton, PickersArrowSwitcherSlotPropsOverrides, PickersArrowSwitcherOwnerState>;
72
+ nextIconButton?: SlotComponentProps<typeof IconButton, PickersArrowSwitcherSlotPropsOverrides, PickersArrowSwitcherOwnerState>;
73
+ leftArrowIcon?: SlotComponentProps<typeof SvgIcon, PickersArrowSwitcherSlotPropsOverrides, PickerOwnerState>;
74
+ rightArrowIcon?: SlotComponentProps<typeof SvgIcon, PickersArrowSwitcherSlotPropsOverrides, PickerOwnerState>;
72
75
  }
@@ -1,14 +1,14 @@
1
1
  import * as React from 'react';
2
2
  import { BaseToolbarProps } from '../models/props/toolbar';
3
3
  import { PickersToolbarClasses } from './pickersToolbarClasses';
4
- import { DateOrTimeViewWithMeridiem } from '../models';
5
- export interface PickersToolbarProps<TValue, TView extends DateOrTimeViewWithMeridiem> extends Pick<BaseToolbarProps<TValue, TView>, 'isLandscape' | 'hidden' | 'titleId'> {
4
+ import { DateOrTimeViewWithMeridiem, PickerValidValue } from '../models';
5
+ export interface PickersToolbarProps<TValue extends PickerValidValue, TView extends DateOrTimeViewWithMeridiem> extends Pick<BaseToolbarProps<TValue, TView>, 'isLandscape' | 'hidden' | 'titleId'> {
6
6
  className?: string;
7
7
  landscapeDirection?: 'row' | 'column';
8
8
  toolbarTitle: React.ReactNode;
9
9
  classes?: Partial<PickersToolbarClasses>;
10
10
  }
11
- type PickersToolbarComponent = (<TValue, TView extends DateOrTimeViewWithMeridiem>(props: React.PropsWithChildren<PickersToolbarProps<TValue, TView>> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
11
+ type PickersToolbarComponent = (<TValue extends PickerValidValue, TView extends DateOrTimeViewWithMeridiem>(props: React.PropsWithChildren<PickersToolbarProps<TValue, TView>> & React.RefAttributes<HTMLDivElement>) => React.JSX.Element) & {
12
12
  propTypes?: any;
13
13
  };
14
14
  export declare const PickersToolbar: PickersToolbarComponent;
@@ -1,6 +1,7 @@
1
1
  import { MuiPickersAdapter, PickersTimezone, PickerValidDate } from '../../models';
2
+ import { PickerValue } from '../models';
2
3
  export declare const useClockReferenceDate: <TProps extends {}>({ value, referenceDate: referenceDateProp, utils, props, timezone, }: {
3
- value: PickerValidDate;
4
+ value: PickerValue;
4
5
  referenceDate: PickerValidDate | undefined;
5
6
  utils: MuiPickersAdapter;
6
7
  props: TProps;
@@ -1,19 +1,19 @@
1
1
  import * as React from 'react';
2
- import IconButton, { IconButtonProps } from '@mui/material/IconButton';
3
- import { InputAdornmentProps } from '@mui/material/InputAdornment';
4
- import TextField from '@mui/material/TextField';
5
- import { SlotComponentProps } from '@mui/utils';
2
+ import type { IconButtonProps } from '@mui/material/IconButton';
3
+ import type { InputAdornmentProps } from '@mui/material/InputAdornment';
4
+ import type { TextFieldProps } from '@mui/material/TextField';
6
5
  import { MakeRequired, SlotComponentPropsFromProps } from '@mui/x-internals/types';
7
6
  import { BaseNonStaticPickerProps, BasePickerProps, BaseNonRangeNonStaticPickerProps } from '../../models/props/basePickerProps';
8
7
  import { PickersPopperSlots, PickersPopperSlotProps } from '../../components/PickersPopper';
9
8
  import { UsePickerParams } from '../usePicker';
10
- import { FieldSection, PickerFieldSlotProps, PickerOwnerState, PickerValidDate } from '../../../models';
9
+ import { FieldOwnerState, PickerFieldSlotProps, PickerOwnerState, PickerValidDate } from '../../../models';
11
10
  import { ExportedPickersLayoutSlots, ExportedPickersLayoutSlotProps, PickersLayoutSlotProps } from '../../../PickersLayout/PickersLayout.types';
12
11
  import { UsePickerValueNonStaticProps } from '../usePicker/usePickerValue.types';
13
12
  import { UsePickerViewsNonStaticProps, UsePickerViewsProps } from '../usePicker/usePickerViews';
14
- import { DateOrTimeViewWithMeridiem } from '../../models';
13
+ import { DateOrTimeViewWithMeridiem, PickerValue } from '../../models';
15
14
  import { UseClearableFieldSlots, UseClearableFieldSlotProps } from '../../../hooks/useClearableField';
16
- export interface UseDesktopPickerSlots<TView extends DateOrTimeViewWithMeridiem> extends Pick<PickersPopperSlots, 'desktopPaper' | 'desktopTransition' | 'desktopTrapFocus' | 'popper'>, ExportedPickersLayoutSlots<PickerValidDate | null, TView>, UseClearableFieldSlots {
15
+ import { PickersTextFieldProps } from '../../../PickersTextField';
16
+ export interface UseDesktopPickerSlots<TView extends DateOrTimeViewWithMeridiem> extends Pick<PickersPopperSlots, 'desktopPaper' | 'desktopTransition' | 'desktopTrapFocus' | 'popper'>, ExportedPickersLayoutSlots<PickerValue, TView>, UseClearableFieldSlots {
17
17
  /**
18
18
  * Component used to enter the date with the keyboard.
19
19
  */
@@ -38,13 +38,13 @@ export interface UseDesktopPickerSlots<TView extends DateOrTimeViewWithMeridiem>
38
38
  */
39
39
  openPickerIcon: React.ElementType;
40
40
  }
41
- export interface UseDesktopPickerSlotProps<TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean> extends ExportedUseDesktopPickerSlotProps<TView, TEnableAccessibleFieldDOMStructure>, Pick<PickersLayoutSlotProps<PickerValidDate | null, TView>, 'toolbar'> {
41
+ export interface UseDesktopPickerSlotProps<TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean> extends ExportedUseDesktopPickerSlotProps<TView, TEnableAccessibleFieldDOMStructure>, Pick<PickersLayoutSlotProps<PickerValue, TView>, 'toolbar'> {
42
42
  }
43
- export interface ExportedUseDesktopPickerSlotProps<TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean> extends PickersPopperSlotProps, ExportedPickersLayoutSlotProps<PickerValidDate | null, TView>, UseClearableFieldSlotProps {
44
- field?: SlotComponentPropsFromProps<PickerFieldSlotProps<PickerValidDate | null, FieldSection, TEnableAccessibleFieldDOMStructure>, {}, PickerOwnerState>;
45
- textField?: SlotComponentProps<typeof TextField, {}, Record<string, any>>;
43
+ export interface ExportedUseDesktopPickerSlotProps<TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean> extends PickersPopperSlotProps, ExportedPickersLayoutSlotProps<PickerValue, TView>, UseClearableFieldSlotProps {
44
+ field?: SlotComponentPropsFromProps<PickerFieldSlotProps<PickerValue, TEnableAccessibleFieldDOMStructure>, {}, PickerOwnerState>;
45
+ textField?: SlotComponentPropsFromProps<PickersTextFieldProps | TextFieldProps, {}, FieldOwnerState>;
46
46
  inputAdornment?: SlotComponentPropsFromProps<InputAdornmentProps, {}, PickerOwnerState>;
47
- openPickerButton?: SlotComponentProps<typeof IconButton, {}, PickerOwnerState>;
47
+ openPickerButton?: SlotComponentPropsFromProps<IconButtonProps, {}, PickerOwnerState>;
48
48
  openPickerIcon?: SlotComponentPropsFromProps<Record<string, any>, {}, PickerOwnerState>;
49
49
  }
50
50
  export interface DesktopOnlyPickerProps extends BaseNonStaticPickerProps, BaseNonRangeNonStaticPickerProps, UsePickerValueNonStaticProps, UsePickerViewsNonStaticProps {
@@ -54,7 +54,7 @@ export interface DesktopOnlyPickerProps extends BaseNonStaticPickerProps, BaseNo
54
54
  */
55
55
  autoFocus?: boolean;
56
56
  }
57
- export interface UseDesktopPickerProps<TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean, TError, TExternalProps extends UsePickerViewsProps<PickerValidDate | null, TView, any, {}>> extends BasePickerProps<PickerValidDate | null, TView, TError, TExternalProps, {}>, MakeRequired<DesktopOnlyPickerProps, 'format'> {
57
+ export interface UseDesktopPickerProps<TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean, TError, TExternalProps extends UsePickerViewsProps<PickerValue, TView, any, {}>> extends BasePickerProps<PickerValue, TView, TError, TExternalProps, {}>, MakeRequired<DesktopOnlyPickerProps, 'format'> {
58
58
  /**
59
59
  * Overridable component slots.
60
60
  * @default {}
@@ -66,7 +66,7 @@ export interface UseDesktopPickerProps<TView extends DateOrTimeViewWithMeridiem,
66
66
  */
67
67
  slotProps?: UseDesktopPickerSlotProps<TView, TEnableAccessibleFieldDOMStructure>;
68
68
  }
69
- export interface UseDesktopPickerParams<TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean, TExternalProps extends UseDesktopPickerProps<TView, TEnableAccessibleFieldDOMStructure, any, TExternalProps>> extends Pick<UsePickerParams<PickerValidDate | null, TView, FieldSection, TExternalProps, {}>, 'valueManager' | 'valueType' | 'validator' | 'rendererInterceptor'> {
69
+ export interface UseDesktopPickerParams<TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean, TExternalProps extends UseDesktopPickerProps<TView, TEnableAccessibleFieldDOMStructure, any, TExternalProps>> extends Pick<UsePickerParams<PickerValue, TView, TExternalProps, {}>, 'valueManager' | 'valueType' | 'validator' | 'rendererInterceptor'> {
70
70
  props: TExternalProps;
71
71
  getOpenDialogAriaText: (date: PickerValidDate | null) => string;
72
72
  }
@@ -1,5 +1,5 @@
1
1
  import { UseFieldParams, UseFieldResponse, UseFieldCommonForwardedProps, UseFieldInternalProps, UseFieldForwardedProps } from './useField.types';
2
- import { FieldSection } from '../../../models';
3
- export declare const useField: <TValue, TSection extends FieldSection, TEnableAccessibleFieldDOMStructure extends boolean, TForwardedProps extends UseFieldCommonForwardedProps & UseFieldForwardedProps<TEnableAccessibleFieldDOMStructure>, TInternalProps extends UseFieldInternalProps<any, any, TEnableAccessibleFieldDOMStructure, any> & {
2
+ import { PickerValidValue } from '../../models';
3
+ export declare const useField: <TValue extends PickerValidValue, TEnableAccessibleFieldDOMStructure extends boolean, TForwardedProps extends UseFieldCommonForwardedProps & UseFieldForwardedProps<TEnableAccessibleFieldDOMStructure>, TInternalProps extends UseFieldInternalProps<TValue, TEnableAccessibleFieldDOMStructure, any> & {
4
4
  minutesStep?: number;
5
- }>(params: UseFieldParams<TValue, TSection, TEnableAccessibleFieldDOMStructure, TForwardedProps, TInternalProps>) => UseFieldResponse<TEnableAccessibleFieldDOMStructure, TForwardedProps>;
5
+ }>(params: UseFieldParams<TValue, TEnableAccessibleFieldDOMStructure, TForwardedProps, TInternalProps>) => UseFieldResponse<TEnableAccessibleFieldDOMStructure, TForwardedProps>;