@mui/x-date-pickers-pro 6.18.1 → 7.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/CHANGELOG.md +558 -1
  2. package/DateRangeCalendar/DateRangeCalendar.js +74 -80
  3. package/DateRangeCalendar/DateRangeCalendar.types.d.ts +12 -17
  4. package/DateRangePicker/DateRangePicker.js +0 -13
  5. package/DateRangePicker/DateRangePicker.types.d.ts +1 -14
  6. package/DateRangePicker/shared.d.ts +4 -16
  7. package/DateRangePicker/shared.js +7 -15
  8. package/DesktopDateRangePicker/DesktopDateRangePicker.js +0 -13
  9. package/DesktopDateRangePicker/DesktopDateRangePicker.types.d.ts +3 -15
  10. package/MobileDateRangePicker/MobileDateRangePicker.js +0 -13
  11. package/MobileDateRangePicker/MobileDateRangePicker.types.d.ts +3 -15
  12. package/MultiInputDateRangeField/MultiInputDateRangeField.js +6 -22
  13. package/MultiInputDateRangeField/MultiInputDateRangeField.types.d.ts +4 -17
  14. package/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +4 -20
  15. package/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.types.d.ts +4 -17
  16. package/MultiInputTimeRangeField/MultiInputTimeRangeField.js +4 -20
  17. package/MultiInputTimeRangeField/MultiInputTimeRangeField.types.d.ts +4 -17
  18. package/SingleInputDateRangeField/SingleInputDateRangeField.js +5 -21
  19. package/SingleInputDateRangeField/SingleInputDateRangeField.types.d.ts +3 -15
  20. package/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +5 -21
  21. package/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.types.d.ts +3 -15
  22. package/SingleInputTimeRangeField/SingleInputTimeRangeField.js +5 -21
  23. package/SingleInputTimeRangeField/SingleInputTimeRangeField.types.d.ts +3 -15
  24. package/StaticDateRangePicker/StaticDateRangePicker.js +0 -13
  25. package/StaticDateRangePicker/StaticDateRangePicker.types.d.ts +2 -14
  26. package/dateRangeViewRenderers/dateRangeViewRenderers.d.ts +1 -1
  27. package/dateRangeViewRenderers/dateRangeViewRenderers.js +0 -4
  28. package/index.js +1 -1
  29. package/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.types.d.ts +2 -2
  30. package/internals/hooks/useEnrichedRangePickerFieldProps.d.ts +6 -6
  31. package/internals/hooks/useMobileRangePicker/useMobileRangePicker.types.d.ts +2 -2
  32. package/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +9 -3
  33. package/internals/hooks/useStaticRangePicker/useStaticRangePicker.types.d.ts +2 -2
  34. package/internals/utils/date-fields-utils.d.ts +0 -1
  35. package/internals/utils/releaseInfo.js +1 -1
  36. package/legacy/DateRangeCalendar/DateRangeCalendar.js +39 -47
  37. package/legacy/DateRangePicker/DateRangePicker.js +0 -13
  38. package/legacy/DateRangePicker/shared.js +7 -13
  39. package/legacy/DesktopDateRangePicker/DesktopDateRangePicker.js +0 -13
  40. package/legacy/MobileDateRangePicker/MobileDateRangePicker.js +0 -13
  41. package/legacy/MultiInputDateRangeField/MultiInputDateRangeField.js +6 -22
  42. package/legacy/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +4 -20
  43. package/legacy/MultiInputTimeRangeField/MultiInputTimeRangeField.js +4 -20
  44. package/legacy/SingleInputDateRangeField/SingleInputDateRangeField.js +5 -21
  45. package/legacy/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +5 -21
  46. package/legacy/SingleInputTimeRangeField/SingleInputTimeRangeField.js +5 -21
  47. package/legacy/StaticDateRangePicker/StaticDateRangePicker.js +0 -13
  48. package/legacy/dateRangeViewRenderers/dateRangeViewRenderers.js +0 -4
  49. package/legacy/index.js +1 -1
  50. package/legacy/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +9 -3
  51. package/legacy/internals/utils/releaseInfo.js +1 -1
  52. package/modern/DateRangeCalendar/DateRangeCalendar.js +35 -45
  53. package/modern/DateRangePicker/DateRangePicker.js +0 -13
  54. package/modern/DateRangePicker/shared.js +6 -14
  55. package/modern/DesktopDateRangePicker/DesktopDateRangePicker.js +0 -13
  56. package/modern/MobileDateRangePicker/MobileDateRangePicker.js +0 -13
  57. package/modern/MultiInputDateRangeField/MultiInputDateRangeField.js +5 -21
  58. package/modern/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +4 -20
  59. package/modern/MultiInputTimeRangeField/MultiInputTimeRangeField.js +4 -20
  60. package/modern/SingleInputDateRangeField/SingleInputDateRangeField.js +4 -20
  61. package/modern/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +4 -20
  62. package/modern/SingleInputTimeRangeField/SingleInputTimeRangeField.js +4 -20
  63. package/modern/StaticDateRangePicker/StaticDateRangePicker.js +0 -13
  64. package/modern/dateRangeViewRenderers/dateRangeViewRenderers.js +0 -4
  65. package/modern/index.js +1 -1
  66. package/modern/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +9 -3
  67. package/modern/internals/utils/releaseInfo.js +1 -1
  68. package/node/DateRangeCalendar/DateRangeCalendar.js +33 -43
  69. package/node/DateRangePicker/DateRangePicker.js +0 -13
  70. package/node/DateRangePicker/shared.js +5 -13
  71. package/node/DesktopDateRangePicker/DesktopDateRangePicker.js +0 -13
  72. package/node/MobileDateRangePicker/MobileDateRangePicker.js +0 -13
  73. package/node/MultiInputDateRangeField/MultiInputDateRangeField.js +4 -20
  74. package/node/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +3 -19
  75. package/node/MultiInputTimeRangeField/MultiInputTimeRangeField.js +3 -19
  76. package/node/SingleInputDateRangeField/SingleInputDateRangeField.js +4 -20
  77. package/node/SingleInputDateTimeRangeField/SingleInputDateTimeRangeField.js +4 -20
  78. package/node/SingleInputTimeRangeField/SingleInputTimeRangeField.js +4 -20
  79. package/node/StaticDateRangePicker/StaticDateRangePicker.js +0 -13
  80. package/node/dateRangeViewRenderers/dateRangeViewRenderers.js +0 -4
  81. package/node/index.js +1 -1
  82. package/node/internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +9 -3
  83. package/node/internals/utils/releaseInfo.js +1 -1
  84. package/package.json +3 -3
@@ -1,6 +1,6 @@
1
1
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
- var _excluded = ["slots", "slotProps", "components", "componentsProps", "disabled", "autoFocus", "unstableStartFieldRef", "unstableEndFieldRef", "className"],
3
+ var _excluded = ["slots", "slotProps", "disabled", "autoFocus", "unstableStartFieldRef", "unstableEndFieldRef", "className"],
4
4
  _excluded2 = ["onKeyDown", "ref", "readOnly", "inputMode"],
5
5
  _excluded3 = ["onKeyDown", "ref", "readOnly", "inputMode"];
6
6
  import * as React from 'react';
@@ -12,7 +12,7 @@ import Typography from '@mui/material/Typography';
12
12
  import { styled, useThemeProps } from '@mui/material/styles';
13
13
  import { useSlotProps } from '@mui/base/utils';
14
14
  import { unstable_composeClasses as composeClasses, unstable_generateUtilityClass as generateUtilityClass, unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';
15
- import { splitFieldInternalAndForwardedProps, uncapitalizeObjectKeys } from '@mui/x-date-pickers/internals';
15
+ import { splitFieldInternalAndForwardedProps } from '@mui/x-date-pickers/internals';
16
16
  import { useMultiInputTimeRangeField } from '../internals/hooks/useMultiInputRangeField/useMultiInputTimeRangeField';
17
17
  import { jsx as _jsx } from "react/jsx-runtime";
18
18
  import { jsxs as _jsxs } from "react/jsx-runtime";
@@ -73,18 +73,14 @@ var MultiInputTimeRangeField = /*#__PURE__*/React.forwardRef(function MultiInput
73
73
  var _splitFieldInternalAn = splitFieldInternalAndForwardedProps(themeProps, 'time'),
74
74
  timeFieldInternalProps = _splitFieldInternalAn.internalProps,
75
75
  forwardedProps = _splitFieldInternalAn.forwardedProps;
76
- var innerSlots = forwardedProps.slots,
77
- innerSlotProps = forwardedProps.slotProps,
78
- components = forwardedProps.components,
79
- componentsProps = forwardedProps.componentsProps,
76
+ var slots = forwardedProps.slots,
77
+ slotProps = forwardedProps.slotProps,
80
78
  disabled = forwardedProps.disabled,
81
79
  autoFocus = forwardedProps.autoFocus,
82
80
  unstableStartFieldRef = forwardedProps.unstableStartFieldRef,
83
81
  unstableEndFieldRef = forwardedProps.unstableEndFieldRef,
84
82
  className = forwardedProps.className,
85
83
  otherForwardedProps = _objectWithoutProperties(forwardedProps, _excluded);
86
- var slots = innerSlots != null ? innerSlots : uncapitalizeObjectKeys(components);
87
- var slotProps = innerSlotProps != null ? innerSlotProps : componentsProps;
88
84
  var ownerState = themeProps;
89
85
  var classes = useUtilityClasses(ownerState);
90
86
  var Root = (_slots$root = slots == null ? void 0 : slots.root) != null ? _slots$root : MultiInputTimeRangeFieldRoot;
@@ -190,18 +186,6 @@ process.env.NODE_ENV !== "production" ? MultiInputTimeRangeField.propTypes = {
190
186
  classes: PropTypes.object,
191
187
  className: PropTypes.string,
192
188
  component: PropTypes.elementType,
193
- /**
194
- * Overridable components.
195
- * @default {}
196
- * @deprecated Please use `slots`.
197
- */
198
- components: PropTypes.object,
199
- /**
200
- * The props used for each component slot.
201
- * @default {}
202
- * @deprecated Please use `slotProps`.
203
- */
204
- componentsProps: PropTypes.object,
205
189
  /**
206
190
  * The default value. Use when the component is not controlled.
207
191
  */
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
- var _excluded = ["slots", "slotProps", "components", "componentsProps", "InputProps", "inputProps"],
3
+ var _excluded = ["slots", "slotProps", "InputProps", "inputProps"],
4
4
  _excluded2 = ["inputRef"],
5
5
  _excluded3 = ["ref", "onPaste", "onKeyDown", "inputMode", "readOnly", "clearable", "onClear"];
6
6
  import * as React from 'react';
@@ -23,23 +23,21 @@ import { jsx as _jsx } from "react/jsx-runtime";
23
23
  * - [SingleInputDateRangeField API](https://mui.com/x/api/single-input-date-range-field/)
24
24
  */
25
25
  var SingleInputDateRangeField = /*#__PURE__*/React.forwardRef(function SingleInputDateRangeField(inProps, ref) {
26
- var _ref, _slots$textField, _slotProps$textField;
26
+ var _slots$textField;
27
27
  var themeProps = useThemeProps({
28
28
  props: inProps,
29
29
  name: 'MuiSingleInputDateRangeField'
30
30
  });
31
31
  var slots = themeProps.slots,
32
32
  slotProps = themeProps.slotProps,
33
- components = themeProps.components,
34
- componentsProps = themeProps.componentsProps,
35
33
  InputProps = themeProps.InputProps,
36
34
  inputProps = themeProps.inputProps,
37
35
  other = _objectWithoutProperties(themeProps, _excluded);
38
36
  var ownerState = themeProps;
39
- var TextField = (_ref = (_slots$textField = slots == null ? void 0 : slots.textField) != null ? _slots$textField : components == null ? void 0 : components.TextField) != null ? _ref : MuiTextField;
37
+ var TextField = (_slots$textField = slots == null ? void 0 : slots.textField) != null ? _slots$textField : MuiTextField;
40
38
  var _useSlotProps = useSlotProps({
41
39
  elementType: TextField,
42
- externalSlotProps: (_slotProps$textField = slotProps == null ? void 0 : slotProps.textField) != null ? _slotProps$textField : componentsProps == null ? void 0 : componentsProps.textField,
40
+ externalSlotProps: slotProps == null ? void 0 : slotProps.textField,
43
41
  externalForwardedProps: other,
44
42
  ownerState: ownerState
45
43
  }),
@@ -67,9 +65,7 @@ var SingleInputDateRangeField = /*#__PURE__*/React.forwardRef(function SingleInp
67
65
  fieldProps: fieldProps,
68
66
  InputProps: fieldProps.InputProps,
69
67
  slots: slots,
70
- slotProps: slotProps,
71
- components: components,
72
- componentsProps: componentsProps
68
+ slotProps: slotProps
73
69
  }),
74
70
  ProcessedInputProps = _useClearableField.InputProps,
75
71
  processedFieldProps = _useClearableField.fieldProps;
@@ -112,18 +108,6 @@ process.env.NODE_ENV !== "production" ? SingleInputDateRangeField.propTypes = {
112
108
  */
113
109
  color: PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']),
114
110
  component: PropTypes.elementType,
115
- /**
116
- * Overridable components.
117
- * @default {}
118
- * @deprecated Please use `slots`.
119
- */
120
- components: PropTypes.object,
121
- /**
122
- * The props used for each component slot.
123
- * @default {}
124
- * @deprecated Please use `slotProps`.
125
- */
126
- componentsProps: PropTypes.object,
127
111
  /**
128
112
  * The default value. Use when the component is not controlled.
129
113
  */
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
- var _excluded = ["slots", "slotProps", "components", "componentsProps", "InputProps", "inputProps"],
3
+ var _excluded = ["slots", "slotProps", "InputProps", "inputProps"],
4
4
  _excluded2 = ["inputRef"],
5
5
  _excluded3 = ["ref", "onPaste", "onKeyDown", "inputMode", "readOnly", "clearable", "onClear"];
6
6
  import * as React from 'react';
@@ -23,23 +23,21 @@ import { jsx as _jsx } from "react/jsx-runtime";
23
23
  * - [SingleInputDateTimeRangeField API](https://mui.com/x/api/single-input-date-time-range-field/)
24
24
  */
25
25
  var SingleInputDateTimeRangeField = /*#__PURE__*/React.forwardRef(function SingleInputDateTimeRangeField(inProps, ref) {
26
- var _ref, _slots$textField, _slotProps$textField;
26
+ var _slots$textField;
27
27
  var themeProps = useThemeProps({
28
28
  props: inProps,
29
29
  name: 'MuiSingleInputDateTimeRangeField'
30
30
  });
31
31
  var slots = themeProps.slots,
32
32
  slotProps = themeProps.slotProps,
33
- components = themeProps.components,
34
- componentsProps = themeProps.componentsProps,
35
33
  InputProps = themeProps.InputProps,
36
34
  inputProps = themeProps.inputProps,
37
35
  other = _objectWithoutProperties(themeProps, _excluded);
38
36
  var ownerState = themeProps;
39
- var TextField = (_ref = (_slots$textField = slots == null ? void 0 : slots.textField) != null ? _slots$textField : components == null ? void 0 : components.TextField) != null ? _ref : MuiTextField;
37
+ var TextField = (_slots$textField = slots == null ? void 0 : slots.textField) != null ? _slots$textField : MuiTextField;
40
38
  var _useSlotProps = useSlotProps({
41
39
  elementType: TextField,
42
- externalSlotProps: (_slotProps$textField = slotProps == null ? void 0 : slotProps.textField) != null ? _slotProps$textField : componentsProps == null ? void 0 : componentsProps.textField,
40
+ externalSlotProps: slotProps == null ? void 0 : slotProps.textField,
43
41
  externalForwardedProps: other,
44
42
  ownerState: ownerState
45
43
  }),
@@ -67,9 +65,7 @@ var SingleInputDateTimeRangeField = /*#__PURE__*/React.forwardRef(function Singl
67
65
  fieldProps: fieldProps,
68
66
  InputProps: fieldProps.InputProps,
69
67
  slots: slots,
70
- slotProps: slotProps,
71
- components: components,
72
- componentsProps: componentsProps
68
+ slotProps: slotProps
73
69
  }),
74
70
  ProcessedInputProps = _useClearableField.InputProps,
75
71
  processedFieldProps = _useClearableField.fieldProps;
@@ -117,18 +113,6 @@ process.env.NODE_ENV !== "production" ? SingleInputDateTimeRangeField.propTypes
117
113
  */
118
114
  color: PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']),
119
115
  component: PropTypes.elementType,
120
- /**
121
- * Overridable components.
122
- * @default {}
123
- * @deprecated Please use `slots`.
124
- */
125
- components: PropTypes.object,
126
- /**
127
- * The props used for each component slot.
128
- * @default {}
129
- * @deprecated Please use `slotProps`.
130
- */
131
- componentsProps: PropTypes.object,
132
116
  /**
133
117
  * The default value. Use when the component is not controlled.
134
118
  */
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
- var _excluded = ["slots", "slotProps", "components", "componentsProps", "InputProps", "inputProps"],
3
+ var _excluded = ["slots", "slotProps", "InputProps", "inputProps"],
4
4
  _excluded2 = ["inputRef"],
5
5
  _excluded3 = ["ref", "onPaste", "onKeyDown", "inputMode", "readOnly", "clearable", "onClear"];
6
6
  import * as React from 'react';
@@ -23,23 +23,21 @@ import { jsx as _jsx } from "react/jsx-runtime";
23
23
  * - [SingleInputTimeRangeField API](https://mui.com/x/api/single-input-time-range-field/)
24
24
  */
25
25
  var SingleInputTimeRangeField = /*#__PURE__*/React.forwardRef(function SingleInputTimeRangeField(inProps, ref) {
26
- var _ref, _slots$textField, _slotProps$textField;
26
+ var _slots$textField;
27
27
  var themeProps = useThemeProps({
28
28
  props: inProps,
29
29
  name: 'MuiSingleInputTimeRangeField'
30
30
  });
31
31
  var slots = themeProps.slots,
32
32
  slotProps = themeProps.slotProps,
33
- components = themeProps.components,
34
- componentsProps = themeProps.componentsProps,
35
33
  InputProps = themeProps.InputProps,
36
34
  inputProps = themeProps.inputProps,
37
35
  other = _objectWithoutProperties(themeProps, _excluded);
38
36
  var ownerState = themeProps;
39
- var TextField = (_ref = (_slots$textField = slots == null ? void 0 : slots.textField) != null ? _slots$textField : components == null ? void 0 : components.TextField) != null ? _ref : MuiTextField;
37
+ var TextField = (_slots$textField = slots == null ? void 0 : slots.textField) != null ? _slots$textField : MuiTextField;
40
38
  var _useSlotProps = useSlotProps({
41
39
  elementType: TextField,
42
- externalSlotProps: (_slotProps$textField = slotProps == null ? void 0 : slotProps.textField) != null ? _slotProps$textField : componentsProps == null ? void 0 : componentsProps.textField,
40
+ externalSlotProps: slotProps == null ? void 0 : slotProps.textField,
43
41
  externalForwardedProps: other,
44
42
  ownerState: ownerState
45
43
  }),
@@ -67,9 +65,7 @@ var SingleInputTimeRangeField = /*#__PURE__*/React.forwardRef(function SingleInp
67
65
  fieldProps: fieldProps,
68
66
  InputProps: fieldProps.InputProps,
69
67
  slots: slots,
70
- slotProps: slotProps,
71
- components: components,
72
- componentsProps: componentsProps
68
+ slotProps: slotProps
73
69
  }),
74
70
  ProcessedInputProps = _useClearableField.InputProps,
75
71
  processedFieldProps = _useClearableField.fieldProps;
@@ -117,18 +113,6 @@ process.env.NODE_ENV !== "production" ? SingleInputTimeRangeField.propTypes = {
117
113
  */
118
114
  color: PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']),
119
115
  component: PropTypes.elementType,
120
- /**
121
- * Overridable components.
122
- * @default {}
123
- * @deprecated Please use `slots`.
124
- */
125
- components: PropTypes.object,
126
- /**
127
- * The props used for each component slot.
128
- * @default {}
129
- * @deprecated Please use `slotProps`.
130
- */
131
- componentsProps: PropTypes.object,
132
116
  /**
133
117
  * The default value. Use when the component is not controlled.
134
118
  */
@@ -68,18 +68,6 @@ StaticDateRangePicker.propTypes = {
68
68
  * Class name applied to the root element.
69
69
  */
70
70
  className: PropTypes.string,
71
- /**
72
- * Overridable components.
73
- * @default {}
74
- * @deprecated Please use `slots`.
75
- */
76
- components: PropTypes.object,
77
- /**
78
- * The props used for each component slot.
79
- * @default {}
80
- * @deprecated Please use `slotProps`.
81
- */
82
- componentsProps: PropTypes.object,
83
71
  /**
84
72
  * Position the current month is rendered in.
85
73
  * @default 1
@@ -87,7 +75,6 @@ StaticDateRangePicker.propTypes = {
87
75
  currentMonthCalendarPosition: PropTypes.oneOf([1, 2, 3]),
88
76
  /**
89
77
  * Formats the day of week displayed in the calendar header.
90
- * @param {string} day The day of week provided by the adapter. Deprecated, will be removed in v7: Use `date` instead.
91
78
  * @param {TDate} date The date of the day of week provided by the adapter.
92
79
  * @returns {string} The name to display.
93
80
  * @default (_day: string, date: TDate) => adapter.format(date, 'weekdayShort').charAt(0).toUpperCase()
@@ -25,8 +25,6 @@ export var renderDateRangeViewCalendar = function renderDateRangeViewCalendar(_r
25
25
  onRangePositionChange = _ref.onRangePositionChange,
26
26
  calendars = _ref.calendars,
27
27
  currentMonthCalendarPosition = _ref.currentMonthCalendarPosition,
28
- components = _ref.components,
29
- componentsProps = _ref.componentsProps,
30
28
  slots = _ref.slots,
31
29
  slotProps = _ref.slotProps,
32
30
  loading = _ref.loading,
@@ -63,8 +61,6 @@ export var renderDateRangeViewCalendar = function renderDateRangeViewCalendar(_r
63
61
  onRangePositionChange: onRangePositionChange,
64
62
  calendars: calendars,
65
63
  currentMonthCalendarPosition: currentMonthCalendarPosition,
66
- components: components,
67
- componentsProps: componentsProps,
68
64
  slots: slots,
69
65
  slotProps: slotProps,
70
66
  loading: loading,
package/legacy/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-date-pickers-pro v6.18.1
2
+ * @mui/x-date-pickers-pro v7.0.0-alpha.1
3
3
  *
4
4
  * @license MUI X Commercial
5
5
  * This source code is licensed under the commercial license found in the
@@ -33,7 +33,9 @@ export var useMultiInputTimeRangeField = function useMultiInputTimeRangeField(_r
33
33
  timezoneProp = sharedProps.timezone,
34
34
  onChange = sharedProps.onChange,
35
35
  disabled = sharedProps.disabled,
36
- readOnly = sharedProps.readOnly;
36
+ readOnly = sharedProps.readOnly,
37
+ selectedSections = sharedProps.selectedSections,
38
+ onSelectedSectionsChange = sharedProps.onSelectedSectionsChange;
37
39
  var _useControlledValueWi = useControlledValueWithTimezone({
38
40
  name: 'useMultiInputDateRangeField',
39
41
  timezone: timezoneProp,
@@ -79,7 +81,9 @@ export var useMultiInputTimeRangeField = function useMultiInputTimeRangeField(_r
79
81
  unstableFieldRef: unstableStartFieldRef,
80
82
  value: valueProp === undefined ? undefined : valueProp[0],
81
83
  defaultValue: defaultValue === undefined ? undefined : defaultValue[0],
82
- onChange: handleStartDateChange
84
+ onChange: handleStartDateChange,
85
+ selectedSections: selectedSections,
86
+ onSelectedSectionsChange: onSelectedSectionsChange
83
87
  });
84
88
  var endFieldProps = _extends({
85
89
  error: !!validationError[1]
@@ -92,7 +96,9 @@ export var useMultiInputTimeRangeField = function useMultiInputTimeRangeField(_r
92
96
  unstableFieldRef: unstableEndFieldRef,
93
97
  value: valueProp === undefined ? undefined : valueProp[1],
94
98
  defaultValue: defaultValue === undefined ? undefined : defaultValue[1],
95
- onChange: handleEndDateChange
99
+ onChange: handleEndDateChange,
100
+ selectedSections: selectedSections,
101
+ onSelectedSectionsChange: onSelectedSectionsChange
96
102
  });
97
103
  var startDateResponse = useTimeField({
98
104
  props: startFieldProps,
@@ -1,6 +1,6 @@
1
1
  import { ponyfillGlobal } from '@mui/utils';
2
2
  export var getReleaseInfo = function getReleaseInfo() {
3
- var releaseInfo = "MTY5OTQ4NDQwMDAwMA==";
3
+ var releaseInfo = "MTcwMDE3MjAwMDAwMA==";
4
4
  if (process.env.NODE_ENV !== 'production') {
5
5
  // A simple hack to set the value in the test environment (has no build step).
6
6
  // eslint-disable-next-line no-useless-concat
@@ -1,18 +1,18 @@
1
1
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
- const _excluded = ["value", "defaultValue", "referenceDate", "onChange", "className", "disableFuture", "disablePast", "minDate", "maxDate", "shouldDisableDate", "reduceAnimations", "onMonthChange", "defaultCalendarMonth", "rangePosition", "defaultRangePosition", "onRangePositionChange", "calendars", "currentMonthCalendarPosition", "components", "componentsProps", "slots", "slotProps", "loading", "renderLoading", "disableHighlightToday", "readOnly", "disabled", "showDaysOutsideCurrentMonth", "dayOfWeekFormatter", "disableAutoMonthSwitching", "autoFocus", "fixedWeekNumber", "disableDragEditing", "displayWeekNumber", "timezone"],
3
+ const _excluded = ["value", "defaultValue", "referenceDate", "onChange", "className", "disableFuture", "disablePast", "minDate", "maxDate", "shouldDisableDate", "reduceAnimations", "onMonthChange", "defaultCalendarMonth", "rangePosition", "defaultRangePosition", "onRangePositionChange", "calendars", "currentMonthCalendarPosition", "slots", "slotProps", "loading", "renderLoading", "disableHighlightToday", "readOnly", "disabled", "showDaysOutsideCurrentMonth", "dayOfWeekFormatter", "disableAutoMonthSwitching", "autoFocus", "fixedWeekNumber", "disableDragEditing", "displayWeekNumber", "timezone"],
4
4
  _excluded2 = ["isDragging", "rangeDragDay", "draggingDatePosition"];
5
5
  import * as React from 'react';
6
6
  import PropTypes from 'prop-types';
7
7
  import clsx from 'clsx';
8
8
  import useEventCallback from '@mui/utils/useEventCallback';
9
9
  import useMediaQuery from '@mui/material/useMediaQuery';
10
- import { resolveComponentProps } from '@mui/base/utils';
10
+ import { resolveComponentProps, useSlotProps } from '@mui/base/utils';
11
11
  import { styled, useThemeProps } from '@mui/material/styles';
12
12
  import { unstable_composeClasses as composeClasses } from '@mui/utils';
13
13
  import { Watermark } from '@mui/x-license-pro';
14
14
  import { PickersCalendarHeader } from '@mui/x-date-pickers/PickersCalendarHeader';
15
- import { applyDefaultDate, DAY_MARGIN, DayCalendar, useDefaultReduceAnimations, PickersArrowSwitcher, useCalendarState, useDefaultDates, useLocaleText, useNextMonthDisabled, usePreviousMonthDisabled, useUtils, useNow, uncapitalizeObjectKeys, DEFAULT_DESKTOP_MODE_MEDIA_QUERY, buildWarning, useControlledValueWithTimezone } from '@mui/x-date-pickers/internals';
15
+ import { applyDefaultDate, DAY_MARGIN, DayCalendar, useDefaultReduceAnimations, PickersArrowSwitcher, useCalendarState, useDefaultDates, useLocaleText, useNextMonthDisabled, usePreviousMonthDisabled, useUtils, useNow, DEFAULT_DESKTOP_MODE_MEDIA_QUERY, buildWarning, useControlledValueWithTimezone } from '@mui/x-date-pickers/internals';
16
16
  import { getReleaseInfo } from '../internals/utils/releaseInfo';
17
17
  import { dateRangeCalendarClasses, getDateRangeCalendarUtilityClass } from './dateRangeCalendarClasses';
18
18
  import { isEndOfRange, isRangeValid, isStartOfRange, isWithinRange } from '../internals/utils/date-utils';
@@ -142,10 +142,8 @@ const DateRangeCalendar = /*#__PURE__*/React.forwardRef(function DateRangeCalend
142
142
  onRangePositionChange: inOnRangePositionChange,
143
143
  calendars,
144
144
  currentMonthCalendarPosition = 1,
145
- components,
146
- componentsProps,
147
- slots: innerSlots,
148
- slotProps: innerSlotProps,
145
+ slots,
146
+ slotProps,
149
147
  loading,
150
148
  renderLoading,
151
149
  disableHighlightToday,
@@ -176,8 +174,6 @@ const DateRangeCalendar = /*#__PURE__*/React.forwardRef(function DateRangeCalend
176
174
  const utils = useUtils();
177
175
  const localeText = useLocaleText();
178
176
  const now = useNow(timezone);
179
- const slots = innerSlots ?? uncapitalizeObjectKeys(components);
180
- const slotProps = innerSlotProps ?? componentsProps;
181
177
  const {
182
178
  rangePosition,
183
179
  onRangePositionChange
@@ -271,6 +267,34 @@ const DateRangeCalendar = /*#__PURE__*/React.forwardRef(function DateRangeCalend
271
267
  shouldDisableDate: wrappedShouldDisableDate,
272
268
  timezone
273
269
  });
270
+
271
+ // When disabled, limit the view to the selected date
272
+ const minDateWithDisabled = disabled && value[0] || minDate;
273
+ const maxDateWithDisabled = disabled && value[1] || maxDate;
274
+ const CalendarHeader = slots?.calendarHeader ?? PickersCalendarHeader;
275
+ const calendarHeaderProps = useSlotProps({
276
+ elementType: CalendarHeader,
277
+ externalSlotProps: slotProps?.calendarHeader,
278
+ additionalProps: {
279
+ views: ['day'],
280
+ view: 'day',
281
+ currentMonth: calendarState.currentMonth,
282
+ onMonthChange: (newMonth, direction) => handleChangeMonth({
283
+ newMonth,
284
+ direction
285
+ }),
286
+ minDate: minDateWithDisabled,
287
+ maxDate: maxDateWithDisabled,
288
+ disabled,
289
+ disablePast,
290
+ disableFuture,
291
+ reduceAnimations,
292
+ slots,
293
+ slotProps,
294
+ timezone
295
+ },
296
+ ownerState: props
297
+ });
274
298
  const prevValue = React.useRef(null);
275
299
  React.useEffect(() => {
276
300
  const date = rangePosition === 'start' ? value[0] : value[1];
@@ -323,10 +347,6 @@ const DateRangeCalendar = /*#__PURE__*/React.forwardRef(function DateRangeCalend
323
347
  readOnly,
324
348
  disabled
325
349
  };
326
-
327
- // When disabled, limit the view to the selected date
328
- const minDateWithDisabled = disabled && value[0] || minDate;
329
- const maxDateWithDisabled = disabled && value[1] || maxDate;
330
350
  const [rangePreviewDay, setRangePreviewDay] = React.useState(null);
331
351
  const CalendarTransitionProps = React.useMemo(() => ({
332
352
  onMouseLeave: () => setRangePreviewDay(null)
@@ -423,24 +443,7 @@ const DateRangeCalendar = /*#__PURE__*/React.forwardRef(function DateRangeCalend
423
443
  releaseInfo: releaseInfo
424
444
  }), calendarMonths.map((month, index) => /*#__PURE__*/_jsxs(DateRangeCalendarMonthContainer, {
425
445
  className: classes.monthContainer,
426
- children: [calendars === 1 ? /*#__PURE__*/_jsx(PickersCalendarHeader, {
427
- views: ['day'],
428
- view: 'day',
429
- currentMonth: calendarState.currentMonth,
430
- onMonthChange: (newMonth, direction) => handleChangeMonth({
431
- newMonth,
432
- direction
433
- }),
434
- minDate: minDateWithDisabled,
435
- maxDate: maxDateWithDisabled,
436
- disabled: disabled,
437
- disablePast: disablePast,
438
- disableFuture: disableFuture,
439
- reduceAnimations: reduceAnimations,
440
- slots: slots,
441
- slotProps: slotProps,
442
- timezone: timezone
443
- }) : /*#__PURE__*/_jsx(DateRangeCalendarArrowSwitcher, {
446
+ children: [calendars === 1 ? /*#__PURE__*/_jsx(CalendarHeader, _extends({}, calendarHeaderProps)) : /*#__PURE__*/_jsx(DateRangeCalendarArrowSwitcher, {
444
447
  onGoToPrevious: selectPreviousMonth,
445
448
  onGoToNext: selectNextMonth,
446
449
  isPreviousHidden: index !== 0,
@@ -451,7 +454,7 @@ const DateRangeCalendar = /*#__PURE__*/React.forwardRef(function DateRangeCalend
451
454
  nextLabel: localeText.nextMonth,
452
455
  slots: slots,
453
456
  slotProps: slotProps,
454
- children: utils.format(visibleMonths[month], 'monthAndYear')
457
+ children: utils.formatByString(visibleMonths[month], calendarHeaderProps.format ?? `${utils.formats.month} ${utils.formats.year}`)
455
458
  }), /*#__PURE__*/_jsx(DayCalendarForRange, _extends({
456
459
  className: classes.dayCalendar
457
460
  }, calendarState, baseDateValidationProps, commonViewProps, {
@@ -496,18 +499,6 @@ process.env.NODE_ENV !== "production" ? DateRangeCalendar.propTypes = {
496
499
  calendars: PropTypes.oneOf([1, 2, 3]),
497
500
  classes: PropTypes.object,
498
501
  className: PropTypes.string,
499
- /**
500
- * Overridable components.
501
- * @default {}
502
- * @deprecated Please use `slots`.
503
- */
504
- components: PropTypes.object,
505
- /**
506
- * The props used for each component slot.
507
- * @default {}
508
- * @deprecated Please use `slotProps`.
509
- */
510
- componentsProps: PropTypes.object,
511
502
  /**
512
503
  * Position the current month is rendered in.
513
504
  * @default 1
@@ -515,7 +506,6 @@ process.env.NODE_ENV !== "production" ? DateRangeCalendar.propTypes = {
515
506
  currentMonthCalendarPosition: PropTypes.oneOf([1, 2, 3]),
516
507
  /**
517
508
  * Formats the day of week displayed in the calendar header.
518
- * @param {string} day The day of week provided by the adapter. Deprecated, will be removed in v7: Use `date` instead.
519
509
  * @param {TDate} date The date of the day of week provided by the adapter.
520
510
  * @returns {string} The name to display.
521
511
  * @default (_day: string, date: TDate) => adapter.format(date, 'weekdayShort').charAt(0).toUpperCase()
@@ -68,18 +68,6 @@ process.env.NODE_ENV !== "production" ? DateRangePicker.propTypes = {
68
68
  * @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).
69
69
  */
70
70
  closeOnSelect: PropTypes.bool,
71
- /**
72
- * Overridable components.
73
- * @default {}
74
- * @deprecated Please use `slots`.
75
- */
76
- components: PropTypes.object,
77
- /**
78
- * The props used for each component slot.
79
- * @default {}
80
- * @deprecated Please use `slotProps`.
81
- */
82
- componentsProps: PropTypes.object,
83
71
  /**
84
72
  * Position the current month is rendered in.
85
73
  * @default 1
@@ -87,7 +75,6 @@ process.env.NODE_ENV !== "production" ? DateRangePicker.propTypes = {
87
75
  currentMonthCalendarPosition: PropTypes.oneOf([1, 2, 3]),
88
76
  /**
89
77
  * Formats the day of week displayed in the calendar header.
90
- * @param {string} day The day of week provided by the adapter. Deprecated, will be removed in v7: Use `date` instead.
91
78
  * @param {TDate} date The date of the day of week provided by the adapter.
92
79
  * @returns {string} The name to display.
93
80
  * @default (_day: string, date: TDate) => adapter.format(date, 'weekdayShort').charAt(0).toUpperCase()
@@ -1,22 +1,15 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
- import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- const _excluded = ["components", "componentsProps"];
4
2
  import * as React from 'react';
5
3
  import { useThemeProps } from '@mui/material/styles';
6
- import { useDefaultDates, useUtils, applyDefaultDate, uncapitalizeObjectKeys } from '@mui/x-date-pickers/internals';
4
+ import { useDefaultDates, useUtils, applyDefaultDate } from '@mui/x-date-pickers/internals';
7
5
  import { DateRangePickerToolbar } from './DateRangePickerToolbar';
8
6
  export function useDateRangePickerDefaultizedProps(props, name) {
9
7
  const utils = useUtils();
10
8
  const defaultDates = useDefaultDates();
11
- const _useThemeProps = useThemeProps({
12
- props,
13
- name
14
- }),
15
- {
16
- components,
17
- componentsProps
18
- } = _useThemeProps,
19
- themeProps = _objectWithoutPropertiesLoose(_useThemeProps, _excluded);
9
+ const themeProps = useThemeProps({
10
+ props,
11
+ name
12
+ });
20
13
  const localeText = React.useMemo(() => {
21
14
  if (themeProps.localeText?.toolbarTitle == null) {
22
15
  return themeProps.localeText;
@@ -33,7 +26,6 @@ export function useDateRangePickerDefaultizedProps(props, name) {
33
26
  maxDate: applyDefaultDate(utils, themeProps.maxDate, defaultDates.maxDate),
34
27
  slots: _extends({
35
28
  toolbar: DateRangePickerToolbar
36
- }, themeProps.slots ?? uncapitalizeObjectKeys(components)),
37
- slotProps: themeProps.slotProps ?? componentsProps
29
+ }, themeProps.slots)
38
30
  });
39
31
  }
@@ -79,18 +79,6 @@ DesktopDateRangePicker.propTypes = {
79
79
  * @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).
80
80
  */
81
81
  closeOnSelect: PropTypes.bool,
82
- /**
83
- * Overridable components.
84
- * @default {}
85
- * @deprecated Please use `slots`.
86
- */
87
- components: PropTypes.object,
88
- /**
89
- * The props used for each component slot.
90
- * @default {}
91
- * @deprecated Please use `slotProps`.
92
- */
93
- componentsProps: PropTypes.object,
94
82
  /**
95
83
  * Position the current month is rendered in.
96
84
  * @default 1
@@ -98,7 +86,6 @@ DesktopDateRangePicker.propTypes = {
98
86
  currentMonthCalendarPosition: PropTypes.oneOf([1, 2, 3]),
99
87
  /**
100
88
  * Formats the day of week displayed in the calendar header.
101
- * @param {string} day The day of week provided by the adapter. Deprecated, will be removed in v7: Use `date` instead.
102
89
  * @param {TDate} date The date of the day of week provided by the adapter.
103
90
  * @returns {string} The name to display.
104
91
  * @default (_day: string, date: TDate) => adapter.format(date, 'weekdayShort').charAt(0).toUpperCase()
@@ -79,18 +79,6 @@ MobileDateRangePicker.propTypes = {
79
79
  * @default `true` for desktop, `false` for mobile (based on the chosen wrapper and `desktopModeMediaQuery` prop).
80
80
  */
81
81
  closeOnSelect: PropTypes.bool,
82
- /**
83
- * Overridable components.
84
- * @default {}
85
- * @deprecated Please use `slots`.
86
- */
87
- components: PropTypes.object,
88
- /**
89
- * The props used for each component slot.
90
- * @default {}
91
- * @deprecated Please use `slotProps`.
92
- */
93
- componentsProps: PropTypes.object,
94
82
  /**
95
83
  * Position the current month is rendered in.
96
84
  * @default 1
@@ -98,7 +86,6 @@ MobileDateRangePicker.propTypes = {
98
86
  currentMonthCalendarPosition: PropTypes.oneOf([1, 2, 3]),
99
87
  /**
100
88
  * Formats the day of week displayed in the calendar header.
101
- * @param {string} day The day of week provided by the adapter. Deprecated, will be removed in v7: Use `date` instead.
102
89
  * @param {TDate} date The date of the day of week provided by the adapter.
103
90
  * @returns {string} The name to display.
104
91
  * @default (_day: string, date: TDate) => adapter.format(date, 'weekdayShort').charAt(0).toUpperCase()