@mui/x-date-pickers-pro 8.0.0-beta.0 → 8.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.
Files changed (99) hide show
  1. package/CHANGELOG.md +171 -0
  2. package/DateRangeCalendar/DateRangeCalendar.js +2 -7
  3. package/DateRangeCalendar/DateRangeCalendar.types.d.ts +1 -1
  4. package/DateRangePicker/DateRangePicker.js +3 -1
  5. package/DateRangePicker/shared.js +2 -7
  6. package/DateRangePickerDay/DateRangePickerDay.d.ts +1 -41
  7. package/DateRangePickerDay/DateRangePickerDay.js +89 -57
  8. package/DateRangePickerDay/DateRangePickerDay.types.d.ts +91 -0
  9. package/DateRangePickerDay/DateRangePickerDay.types.js +5 -0
  10. package/DateRangePickerDay/index.d.ts +1 -1
  11. package/DateTimeRangePicker/DateTimeRangePicker.js +3 -1
  12. package/DateTimeRangePicker/shared.js +2 -11
  13. package/DesktopDateRangePicker/DesktopDateRangePicker.js +1 -0
  14. package/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +1 -0
  15. package/DesktopTimeRangePicker/DesktopTimeRangePicker.js +1 -0
  16. package/MobileDateRangePicker/MobileDateRangePicker.js +1 -0
  17. package/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +1 -0
  18. package/MobileTimeRangePicker/MobileTimeRangePicker.js +1 -0
  19. package/SingleInputDateRangeField/useSingleInputDateRangeField.d.ts +1 -1
  20. package/SingleInputDateRangeField/useSingleInputDateRangeField.js +2 -16
  21. package/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.d.ts +1 -1
  22. package/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +2 -16
  23. package/SingleInputTimeRangeField/useSingleInputTimeRangeField.d.ts +1 -1
  24. package/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +2 -16
  25. package/TimeRangePicker/TimeRangePicker.js +3 -1
  26. package/TimeRangePicker/shared.js +2 -3
  27. package/esm/DateRangeCalendar/DateRangeCalendar.js +3 -8
  28. package/esm/DateRangeCalendar/DateRangeCalendar.types.d.ts +1 -1
  29. package/esm/DateRangePicker/DateRangePicker.js +3 -1
  30. package/esm/DateRangePicker/shared.js +3 -8
  31. package/esm/DateRangePickerDay/DateRangePickerDay.d.ts +1 -41
  32. package/esm/DateRangePickerDay/DateRangePickerDay.js +90 -58
  33. package/esm/DateRangePickerDay/DateRangePickerDay.types.d.ts +91 -0
  34. package/esm/DateRangePickerDay/DateRangePickerDay.types.js +1 -0
  35. package/esm/DateRangePickerDay/index.d.ts +1 -1
  36. package/esm/DateTimeRangePicker/DateTimeRangePicker.js +3 -1
  37. package/esm/DateTimeRangePicker/shared.js +3 -12
  38. package/esm/DesktopDateRangePicker/DesktopDateRangePicker.js +1 -0
  39. package/esm/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +1 -0
  40. package/esm/DesktopTimeRangePicker/DesktopTimeRangePicker.js +1 -0
  41. package/esm/MobileDateRangePicker/MobileDateRangePicker.js +1 -0
  42. package/esm/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +1 -0
  43. package/esm/MobileTimeRangePicker/MobileTimeRangePicker.js +1 -0
  44. package/esm/SingleInputDateRangeField/useSingleInputDateRangeField.d.ts +1 -1
  45. package/esm/SingleInputDateRangeField/useSingleInputDateRangeField.js +3 -17
  46. package/esm/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.d.ts +1 -1
  47. package/esm/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +3 -17
  48. package/esm/SingleInputTimeRangeField/useSingleInputTimeRangeField.d.ts +1 -1
  49. package/esm/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +3 -17
  50. package/esm/TimeRangePicker/TimeRangePicker.js +3 -1
  51. package/esm/TimeRangePicker/shared.js +3 -4
  52. package/esm/hooks/useMultiInputRangeField/useMultiInputRangeField.d.ts +2 -2
  53. package/esm/hooks/useMultiInputRangeField/useTextFieldProps.js +4 -16
  54. package/esm/index.js +1 -1
  55. package/esm/internals/utils/releaseInfo.js +1 -1
  56. package/esm/managers/useDateRangeManager.js +12 -13
  57. package/esm/managers/useDateTimeRangeManager.js +13 -13
  58. package/esm/managers/useTimeRangeManager.js +13 -11
  59. package/hooks/useMultiInputRangeField/useMultiInputRangeField.d.ts +2 -2
  60. package/hooks/useMultiInputRangeField/useTextFieldProps.js +3 -15
  61. package/index.js +1 -1
  62. package/internals/utils/releaseInfo.js +1 -1
  63. package/managers/useDateRangeManager.js +11 -12
  64. package/managers/useDateTimeRangeManager.js +12 -12
  65. package/managers/useTimeRangeManager.js +12 -10
  66. package/modern/DateRangeCalendar/DateRangeCalendar.js +3 -8
  67. package/modern/DateRangeCalendar/DateRangeCalendar.types.d.ts +1 -1
  68. package/modern/DateRangePicker/DateRangePicker.js +3 -1
  69. package/modern/DateRangePicker/shared.js +3 -8
  70. package/modern/DateRangePickerDay/DateRangePickerDay.d.ts +1 -41
  71. package/modern/DateRangePickerDay/DateRangePickerDay.js +90 -58
  72. package/modern/DateRangePickerDay/DateRangePickerDay.types.d.ts +91 -0
  73. package/modern/DateRangePickerDay/DateRangePickerDay.types.js +1 -0
  74. package/modern/DateRangePickerDay/index.d.ts +1 -1
  75. package/modern/DateTimeRangePicker/DateTimeRangePicker.js +3 -1
  76. package/modern/DateTimeRangePicker/shared.js +3 -12
  77. package/modern/DesktopDateRangePicker/DesktopDateRangePicker.js +1 -0
  78. package/modern/DesktopDateTimeRangePicker/DesktopDateTimeRangePicker.js +1 -0
  79. package/modern/DesktopTimeRangePicker/DesktopTimeRangePicker.js +1 -0
  80. package/modern/MobileDateRangePicker/MobileDateRangePicker.js +1 -0
  81. package/modern/MobileDateTimeRangePicker/MobileDateTimeRangePicker.js +1 -0
  82. package/modern/MobileTimeRangePicker/MobileTimeRangePicker.js +1 -0
  83. package/modern/SingleInputDateRangeField/useSingleInputDateRangeField.d.ts +1 -1
  84. package/modern/SingleInputDateRangeField/useSingleInputDateRangeField.js +3 -17
  85. package/modern/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.d.ts +1 -1
  86. package/modern/SingleInputDateTimeRangeField/useSingleInputDateTimeRangeField.js +3 -17
  87. package/modern/SingleInputTimeRangeField/useSingleInputTimeRangeField.d.ts +1 -1
  88. package/modern/SingleInputTimeRangeField/useSingleInputTimeRangeField.js +3 -17
  89. package/modern/TimeRangePicker/TimeRangePicker.js +3 -1
  90. package/modern/TimeRangePicker/shared.js +3 -4
  91. package/modern/hooks/useMultiInputRangeField/useMultiInputRangeField.d.ts +2 -2
  92. package/modern/hooks/useMultiInputRangeField/useTextFieldProps.js +4 -16
  93. package/modern/index.js +1 -1
  94. package/modern/internals/utils/releaseInfo.js +1 -1
  95. package/modern/managers/useDateRangeManager.js +12 -13
  96. package/modern/managers/useDateTimeRangeManager.js +13 -13
  97. package/modern/managers/useTimeRangeManager.js +13 -11
  98. package/package.json +4 -4
  99. package/tsconfig.build.tsbuildinfo +1 -1
@@ -14,6 +14,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
14
14
  var _utils = require("@mui/utils");
15
15
  var _useMediaQuery = _interopRequireDefault(require("@mui/material/useMediaQuery"));
16
16
  var _styles = require("@mui/material/styles");
17
+ var _internals = require("@mui/x-date-pickers/internals");
17
18
  var _DesktopDateTimeRangePicker = require("../DesktopDateTimeRangePicker");
18
19
  var _MobileDateTimeRangePicker = require("../MobileDateTimeRangePicker");
19
20
  var _jsxRuntime = require("react/jsx-runtime");
@@ -34,7 +35,7 @@ const DateTimeRangePicker = exports.DateTimeRangePicker = /*#__PURE__*/React.for
34
35
  name: 'MuiDateTimeRangePicker'
35
36
  });
36
37
  const {
37
- desktopModeMediaQuery = '@media (pointer: fine)'
38
+ desktopModeMediaQuery = _internals.DEFAULT_DESKTOP_MODE_MEDIA_QUERY
38
39
  } = props,
39
40
  other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
40
41
 
@@ -141,6 +142,7 @@ process.env.NODE_ENV !== "production" ? DateTimeRangePicker.propTypes = {
141
142
  disableIgnoringDatePartForTimeValidation: _propTypes.default.bool,
142
143
  /**
143
144
  * If `true`, the button to open the Picker will not be rendered (it will only render the field).
145
+ * @deprecated Use the [field component](https://next.mui.com/x/react-date-pickers/fields/) instead.
144
146
  * @default false
145
147
  */
146
148
  disableOpenPicker: _propTypes.default.bool,
@@ -12,11 +12,11 @@ var _DateTimeRangePickerToolbar = require("./DateTimeRangePickerToolbar");
12
12
  var _DateTimeRangePickerTabs = require("./DateTimeRangePickerTabs");
13
13
  function useDateTimeRangePickerDefaultizedProps(props, name) {
14
14
  const utils = (0, _internals.useUtils)();
15
- const defaultDates = (0, _internals.useDefaultDates)();
16
15
  const themeProps = (0, _styles.useThemeProps)({
17
16
  props,
18
17
  name
19
18
  });
19
+ const validationProps = (0, _internals.useApplyDefaultValuesToDateTimeValidationProps)(themeProps);
20
20
  const ampm = themeProps.ampm ?? utils.is12HourCycleInCurrentLocale();
21
21
  const {
22
22
  openTo,
@@ -38,22 +38,13 @@ function useDateTimeRangePickerDefaultizedProps(props, name) {
38
38
  timeSteps: themeProps.timeSteps,
39
39
  views: defaultViews
40
40
  });
41
- return (0, _extends2.default)({}, themeProps, {
41
+ return (0, _extends2.default)({}, themeProps, validationProps, {
42
42
  timeSteps,
43
43
  openTo,
44
44
  shouldRenderTimeInASingleColumn,
45
45
  thresholdToRenderTimeInASingleColumn,
46
46
  views,
47
47
  ampm,
48
- disableFuture: themeProps.disableFuture ?? false,
49
- disablePast: themeProps.disablePast ?? false,
50
- minDate: (0, _internals.applyDefaultDate)(utils, themeProps.minDateTime ?? themeProps.minDate, defaultDates.minDate),
51
- maxDate: (0, _internals.applyDefaultDate)(utils, themeProps.maxDateTime ?? themeProps.maxDate, defaultDates.maxDate),
52
- minTime: themeProps.minDateTime ?? themeProps.minTime,
53
- maxTime: themeProps.maxDateTime ?? themeProps.maxTime,
54
- disableIgnoringDatePartForTimeValidation: themeProps.disableIgnoringDatePartForTimeValidation ?? Boolean(themeProps.minDateTime || themeProps.maxDateTime ||
55
- // allow digital clocks to correctly check time validity: https://github.com/mui/mui-x/issues/12048
56
- themeProps.disablePast || themeProps.disableFuture),
57
48
  slots: (0, _extends2.default)({
58
49
  tabs: _DateTimeRangePickerTabs.DateTimeRangePickerTabs,
59
50
  toolbar: _DateTimeRangePickerToolbar.DateTimeRangePickerToolbar
@@ -145,6 +145,7 @@ DesktopDateRangePicker.propTypes = {
145
145
  disableHighlightToday: _propTypes.default.bool,
146
146
  /**
147
147
  * If `true`, the button to open the Picker will not be rendered (it will only render the field).
148
+ * @deprecated Use the [field component](https://next.mui.com/x/react-date-pickers/fields/) instead.
148
149
  * @default false
149
150
  */
150
151
  disableOpenPicker: _propTypes.default.bool,
@@ -223,6 +223,7 @@ DesktopDateTimeRangePicker.propTypes = {
223
223
  disableIgnoringDatePartForTimeValidation: _propTypes.default.bool,
224
224
  /**
225
225
  * If `true`, the button to open the Picker will not be rendered (it will only render the field).
226
+ * @deprecated Use the [field component](https://next.mui.com/x/react-date-pickers/fields/) instead.
226
227
  * @default false
227
228
  */
228
229
  disableOpenPicker: _propTypes.default.bool,
@@ -164,6 +164,7 @@ DesktopTimeRangePicker.propTypes = {
164
164
  disableIgnoringDatePartForTimeValidation: _propTypes.default.bool,
165
165
  /**
166
166
  * If `true`, the button to open the Picker will not be rendered (it will only render the field).
167
+ * @deprecated Use the [field component](https://next.mui.com/x/react-date-pickers/fields/) instead.
167
168
  * @default false
168
169
  */
169
170
  disableOpenPicker: _propTypes.default.bool,
@@ -137,6 +137,7 @@ MobileDateRangePicker.propTypes = {
137
137
  disableHighlightToday: _propTypes.default.bool,
138
138
  /**
139
139
  * If `true`, the button to open the Picker will not be rendered (it will only render the field).
140
+ * @deprecated Use the [field component](https://next.mui.com/x/react-date-pickers/fields/) instead.
140
141
  * @default false
141
142
  */
142
143
  disableOpenPicker: _propTypes.default.bool,
@@ -223,6 +223,7 @@ MobileDateTimeRangePicker.propTypes = {
223
223
  disableIgnoringDatePartForTimeValidation: _propTypes.default.bool,
224
224
  /**
225
225
  * If `true`, the button to open the Picker will not be rendered (it will only render the field).
226
+ * @deprecated Use the [field component](https://next.mui.com/x/react-date-pickers/fields/) instead.
226
227
  * @default false
227
228
  */
228
229
  disableOpenPicker: _propTypes.default.bool,
@@ -154,6 +154,7 @@ MobileTimeRangePicker.propTypes = {
154
154
  disableIgnoringDatePartForTimeValidation: _propTypes.default.bool,
155
155
  /**
156
156
  * If `true`, the button to open the Picker will not be rendered (it will only render the field).
157
+ * @deprecated Use the [field component](https://next.mui.com/x/react-date-pickers/fields/) instead.
157
158
  * @default false
158
159
  */
159
160
  disableOpenPicker: _propTypes.default.bool,
@@ -1,2 +1,2 @@
1
1
  import { UseSingleInputDateRangeFieldProps } from "./SingleInputDateRangeField.types.js";
2
- export declare const useSingleInputDateRangeField: <TEnableAccessibleFieldDOMStructure extends boolean, TAllProps extends UseSingleInputDateRangeFieldProps<TEnableAccessibleFieldDOMStructure>>(props: TAllProps) => import("@mui/x-date-pickers/internals").UseFieldResponse<TEnableAccessibleFieldDOMStructure, Omit<TAllProps, "disabled" | "readOnly" | "value" | "defaultValue" | "autoFocus" | "onChange" | "onError" | "format" | "focused" | "timezone" | "enableAccessibleFieldDOMStructure" | "formatDensity" | "selectedSections" | "onSelectedSectionsChange" | "referenceDate" | "shouldRespectLeadingZeros" | "unstableFieldRef" | keyof import("@mui/x-date-pickers/internals").BaseDateValidationProps | "shouldDisableDate" | "shouldDisableMonth" | "shouldDisableYear" | "unstableStartFieldRef" | "unstableEndFieldRef" | "dateSeparator">>;
2
+ export declare const useSingleInputDateRangeField: <TEnableAccessibleFieldDOMStructure extends boolean, TProps extends UseSingleInputDateRangeFieldProps<TEnableAccessibleFieldDOMStructure>>(props: TProps) => import("@mui/x-date-pickers/internals").UseFieldReturnValue<TEnableAccessibleFieldDOMStructure, TProps>;
@@ -6,26 +6,12 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.useSingleInputDateRangeField = void 0;
8
8
  var _internals = require("@mui/x-date-pickers/internals");
9
- var _hooks = require("@mui/x-date-pickers/hooks");
10
9
  var _managers = require("../managers");
11
10
  const useSingleInputDateRangeField = props => {
12
11
  const manager = (0, _managers.useDateRangeManager)(props);
13
- const {
14
- forwardedProps,
15
- internalProps
16
- } = (0, _hooks.useSplitFieldProps)(props, 'date');
17
- const internalPropsWithDefaults = (0, _internals.useFieldInternalPropsWithDefaults)({
18
- manager,
19
- internalProps
20
- });
21
12
  return (0, _internals.useField)({
22
- forwardedProps,
23
- internalProps: internalPropsWithDefaults,
24
- valueManager: manager.internal_valueManager,
25
- fieldValueManager: manager.internal_fieldValueManager,
26
- validator: manager.validator,
27
- valueType: manager.valueType,
28
- getOpenPickerButtonAriaLabel: manager.internal_useOpenPickerButtonAriaLabel()
13
+ manager,
14
+ props
29
15
  });
30
16
  };
31
17
  exports.useSingleInputDateRangeField = useSingleInputDateRangeField;
@@ -1,2 +1,2 @@
1
1
  import { UseSingleInputDateTimeRangeFieldProps } from "./SingleInputDateTimeRangeField.types.js";
2
- export declare const useSingleInputDateTimeRangeField: <TEnableAccessibleFieldDOMStructure extends boolean, TAllProps extends UseSingleInputDateTimeRangeFieldProps<TEnableAccessibleFieldDOMStructure>>(props: TAllProps) => import("@mui/x-date-pickers/internals").UseFieldResponse<TEnableAccessibleFieldDOMStructure, Omit<TAllProps, "disabled" | "readOnly" | "value" | "defaultValue" | "autoFocus" | "onChange" | "onError" | "format" | "focused" | "timezone" | "enableAccessibleFieldDOMStructure" | "formatDensity" | "selectedSections" | "onSelectedSectionsChange" | "referenceDate" | "shouldRespectLeadingZeros" | "unstableFieldRef" | "ampm" | "disableFuture" | "maxDate" | "disablePast" | "minDate" | "minTime" | "maxTime" | "minutesStep" | "shouldDisableTime" | "disableIgnoringDatePartForTimeValidation" | "shouldDisableDate" | "shouldDisableMonth" | "shouldDisableYear" | "minDateTime" | "maxDateTime" | "unstableStartFieldRef" | "unstableEndFieldRef" | "dateSeparator">>;
2
+ export declare const useSingleInputDateTimeRangeField: <TEnableAccessibleFieldDOMStructure extends boolean, TProps extends UseSingleInputDateTimeRangeFieldProps<TEnableAccessibleFieldDOMStructure>>(props: TProps) => import("@mui/x-date-pickers/internals").UseFieldReturnValue<TEnableAccessibleFieldDOMStructure, TProps>;
@@ -6,26 +6,12 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.useSingleInputDateTimeRangeField = void 0;
8
8
  var _internals = require("@mui/x-date-pickers/internals");
9
- var _hooks = require("@mui/x-date-pickers/hooks");
10
9
  var _managers = require("../managers");
11
10
  const useSingleInputDateTimeRangeField = props => {
12
11
  const manager = (0, _managers.useDateTimeRangeManager)(props);
13
- const {
14
- forwardedProps,
15
- internalProps
16
- } = (0, _hooks.useSplitFieldProps)(props, 'date-time');
17
- const internalPropsWithDefaults = (0, _internals.useFieldInternalPropsWithDefaults)({
18
- manager,
19
- internalProps
20
- });
21
12
  return (0, _internals.useField)({
22
- forwardedProps,
23
- internalProps: internalPropsWithDefaults,
24
- valueManager: manager.internal_valueManager,
25
- fieldValueManager: manager.internal_fieldValueManager,
26
- validator: manager.validator,
27
- valueType: manager.valueType,
28
- getOpenPickerButtonAriaLabel: manager.internal_useOpenPickerButtonAriaLabel()
13
+ manager,
14
+ props
29
15
  });
30
16
  };
31
17
  exports.useSingleInputDateTimeRangeField = useSingleInputDateTimeRangeField;
@@ -1,2 +1,2 @@
1
1
  import { UseSingleInputTimeRangeFieldProps } from "./SingleInputTimeRangeField.types.js";
2
- export declare const useSingleInputTimeRangeField: <TEnableAccessibleFieldDOMStructure extends boolean, TAllProps extends UseSingleInputTimeRangeFieldProps<TEnableAccessibleFieldDOMStructure>>(props: TAllProps) => import("@mui/x-date-pickers/internals").UseFieldResponse<TEnableAccessibleFieldDOMStructure, Omit<TAllProps, "disabled" | "readOnly" | "value" | "defaultValue" | "autoFocus" | "onChange" | "onError" | "format" | "focused" | "timezone" | "enableAccessibleFieldDOMStructure" | "formatDensity" | "selectedSections" | "onSelectedSectionsChange" | "referenceDate" | "shouldRespectLeadingZeros" | "unstableFieldRef" | "ampm" | keyof import("@mui/x-date-pickers/internals").BaseTimeValidationProps | keyof import("@mui/x-date-pickers/internals").TimeValidationProps | "unstableStartFieldRef" | "unstableEndFieldRef" | "dateSeparator">>;
2
+ export declare const useSingleInputTimeRangeField: <TEnableAccessibleFieldDOMStructure extends boolean, TProps extends UseSingleInputTimeRangeFieldProps<TEnableAccessibleFieldDOMStructure>>(props: TProps) => import("@mui/x-date-pickers/internals").UseFieldReturnValue<TEnableAccessibleFieldDOMStructure, TProps>;
@@ -6,26 +6,12 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.useSingleInputTimeRangeField = void 0;
8
8
  var _internals = require("@mui/x-date-pickers/internals");
9
- var _hooks = require("@mui/x-date-pickers/hooks");
10
9
  var _managers = require("../managers");
11
10
  const useSingleInputTimeRangeField = props => {
12
11
  const manager = (0, _managers.useTimeRangeManager)(props);
13
- const {
14
- forwardedProps,
15
- internalProps
16
- } = (0, _hooks.useSplitFieldProps)(props, 'time');
17
- const internalPropsWithDefaults = (0, _internals.useFieldInternalPropsWithDefaults)({
18
- manager,
19
- internalProps
20
- });
21
12
  return (0, _internals.useField)({
22
- forwardedProps,
23
- internalProps: internalPropsWithDefaults,
24
- valueManager: manager.internal_valueManager,
25
- fieldValueManager: manager.internal_fieldValueManager,
26
- validator: manager.validator,
27
- valueType: manager.valueType,
28
- getOpenPickerButtonAriaLabel: manager.internal_useOpenPickerButtonAriaLabel()
13
+ manager,
14
+ props
29
15
  });
30
16
  };
31
17
  exports.useSingleInputTimeRangeField = useSingleInputTimeRangeField;
@@ -14,6 +14,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
14
14
  var _useMediaQuery = _interopRequireDefault(require("@mui/material/useMediaQuery"));
15
15
  var _styles = require("@mui/material/styles");
16
16
  var _refType = _interopRequireDefault(require("@mui/utils/refType"));
17
+ var _internals = require("@mui/x-date-pickers/internals");
17
18
  var _DesktopTimeRangePicker = require("../DesktopTimeRangePicker");
18
19
  var _MobileTimeRangePicker = require("../MobileTimeRangePicker");
19
20
  var _jsxRuntime = require("react/jsx-runtime");
@@ -34,7 +35,7 @@ const TimeRangePicker = exports.TimeRangePicker = /*#__PURE__*/React.forwardRef(
34
35
  name: 'MuiTimeRangePicker'
35
36
  });
36
37
  const {
37
- desktopModeMediaQuery = '@media (pointer: fine)'
38
+ desktopModeMediaQuery = _internals.DEFAULT_DESKTOP_MODE_MEDIA_QUERY
38
39
  } = props,
39
40
  other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
40
41
 
@@ -109,6 +110,7 @@ process.env.NODE_ENV !== "production" ? TimeRangePicker.propTypes = {
109
110
  disableIgnoringDatePartForTimeValidation: _propTypes.default.bool,
110
111
  /**
111
112
  * If `true`, the button to open the Picker will not be rendered (it will only render the field).
113
+ * @deprecated Use the [field component](https://next.mui.com/x/react-date-pickers/fields/) instead.
112
114
  * @default false
113
115
  */
114
116
  disableOpenPicker: _propTypes.default.bool,
@@ -18,6 +18,7 @@ function useTimeRangePickerDefaultizedProps(props, name) {
18
18
  props,
19
19
  name
20
20
  });
21
+ const validationProps = (0, _internals.useApplyDefaultValuesToTimeValidationProps)(themeProps);
21
22
  const ampm = themeProps.ampm ?? utils.is12HourCycleInCurrentLocale();
22
23
  const {
23
24
  openTo,
@@ -47,7 +48,7 @@ function useTimeRangePickerDefaultizedProps(props, name) {
47
48
  timeSteps: themeProps.timeSteps,
48
49
  views: defaultViews
49
50
  });
50
- return (0, _extends2.default)({}, themeProps, {
51
+ return (0, _extends2.default)({}, themeProps, validationProps, {
51
52
  localeText,
52
53
  timeSteps,
53
54
  openTo,
@@ -55,8 +56,6 @@ function useTimeRangePickerDefaultizedProps(props, name) {
55
56
  thresholdToRenderTimeInASingleColumn,
56
57
  views,
57
58
  ampm,
58
- disableFuture: themeProps.disableFuture ?? false,
59
- disablePast: themeProps.disablePast ?? false,
60
59
  slots: (0, _extends2.default)({
61
60
  tabs: _TimeRangePickerTabs.TimeRangePickerTabs,
62
61
  toolbar: _TimeRangePickerToolbar.TimeRangePickerToolbar
@@ -15,7 +15,7 @@ import { styled, useThemeProps } from '@mui/material/styles';
15
15
  import composeClasses from '@mui/utils/composeClasses';
16
16
  import useId from '@mui/utils/useId';
17
17
  import { Watermark } from '@mui/x-license';
18
- import { applyDefaultDate, DayCalendar, useReduceAnimations, useCalendarState, useDefaultDates, useUtils, DEFAULT_DESKTOP_MODE_MEDIA_QUERY, useControlledValue, useViews, usePickerPrivateContext, areDatesEqual } from '@mui/x-date-pickers/internals';
18
+ import { DayCalendar, useReduceAnimations, useCalendarState, useUtils, DEFAULT_DESKTOP_MODE_MEDIA_QUERY, useControlledValue, useViews, usePickerPrivateContext, areDatesEqual, useApplyDefaultValuesToDateValidationProps } from '@mui/x-date-pickers/internals';
19
19
  import { warnOnce } from '@mui/x-internals/warning';
20
20
  import { getReleaseInfo } from "../internals/utils/releaseInfo.js";
21
21
  import { dateRangeCalendarClasses, getDateRangeCalendarUtilityClass } from "./dateRangeCalendarClasses.js";
@@ -74,25 +74,20 @@ const InnerDayCalendarForRange = styled(DayCalendar)(({
74
74
  }));
75
75
  const DayCalendarForRange = InnerDayCalendarForRange;
76
76
  function useDateRangeCalendarDefaultizedProps(props, name) {
77
- const utils = useUtils();
78
- const defaultDates = useDefaultDates();
79
77
  const themeProps = useThemeProps({
80
78
  props,
81
79
  name
82
80
  });
83
81
  const reduceAnimations = useReduceAnimations(themeProps.reduceAnimations);
84
- return _extends({}, themeProps, {
82
+ const validationProps = useApplyDefaultValuesToDateValidationProps(themeProps);
83
+ return _extends({}, themeProps, validationProps, {
85
84
  renderLoading: themeProps.renderLoading ?? (() => /*#__PURE__*/_jsx("span", {
86
85
  children: "..."
87
86
  })),
88
87
  reduceAnimations,
89
88
  loading: props.loading ?? false,
90
- disablePast: props.disablePast ?? false,
91
- disableFuture: props.disableFuture ?? false,
92
89
  openTo: themeProps.openTo ?? 'day',
93
90
  views: themeProps.views ?? ['day'],
94
- minDate: applyDefaultDate(utils, themeProps.minDate, defaultDates.minDate),
95
- maxDate: applyDefaultDate(utils, themeProps.maxDate, defaultDates.maxDate),
96
91
  calendars: themeProps.calendars ?? 2,
97
92
  disableDragEditing: themeProps.disableDragEditing ?? false,
98
93
  availableRangePositions: themeProps.availableRangePositions ?? ['start', 'end']
@@ -5,7 +5,7 @@ import { Theme } from '@mui/material/styles';
5
5
  import { DefaultizedProps } from '@mui/x-internals/types';
6
6
  import { PickerOwnerState, PickerValidDate, TimezoneProps } from '@mui/x-date-pickers/models';
7
7
  import { PickersCalendarHeader, PickersCalendarHeaderSlots, PickersCalendarHeaderSlotProps } from '@mui/x-date-pickers/PickersCalendarHeader';
8
- import { PickerDayOwnerState } from '@mui/x-date-pickers/DateCalendar';
8
+ import { PickerDayOwnerState } from '@mui/x-date-pickers/PickersDay';
9
9
  import { BaseDateValidationProps, ExportedDayCalendarProps, DayCalendarSlots, DayCalendarSlotProps, PickersArrowSwitcherSlots, PickersArrowSwitcherSlotProps, ExportedUseViewsOptions, PickerRangeValue, FormProps } from '@mui/x-date-pickers/internals';
10
10
  import { RangePosition } from "../models/index.js";
11
11
  import { DateRangeCalendarClasses } from "./dateRangeCalendarClasses.js";
@@ -7,6 +7,7 @@ import * as React from 'react';
7
7
  import PropTypes from 'prop-types';
8
8
  import useMediaQuery from '@mui/material/useMediaQuery';
9
9
  import { useThemeProps } from '@mui/material/styles';
10
+ import { DEFAULT_DESKTOP_MODE_MEDIA_QUERY } from '@mui/x-date-pickers/internals';
10
11
  import { refType } from '@mui/utils';
11
12
  import { DesktopDateRangePicker } from "../DesktopDateRangePicker/index.js";
12
13
  import { MobileDateRangePicker } from "../MobileDateRangePicker/index.js";
@@ -27,7 +28,7 @@ const DateRangePicker = /*#__PURE__*/React.forwardRef(function DateRangePicker(i
27
28
  name: 'MuiDateRangePicker'
28
29
  });
29
30
  const {
30
- desktopModeMediaQuery = '@media (pointer: fine)'
31
+ desktopModeMediaQuery = DEFAULT_DESKTOP_MODE_MEDIA_QUERY
31
32
  } = props,
32
33
  other = _objectWithoutPropertiesLoose(props, _excluded);
33
34
 
@@ -124,6 +125,7 @@ process.env.NODE_ENV !== "production" ? DateRangePicker.propTypes = {
124
125
  disableHighlightToday: PropTypes.bool,
125
126
  /**
126
127
  * If `true`, the button to open the Picker will not be rendered (it will only render the field).
128
+ * @deprecated Use the [field component](https://next.mui.com/x/react-date-pickers/fields/) instead.
127
129
  * @default false
128
130
  */
129
131
  disableOpenPicker: PropTypes.bool,
@@ -1,15 +1,14 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import * as React from 'react';
3
3
  import { useThemeProps } from '@mui/material/styles';
4
- import { useDefaultDates, useUtils, applyDefaultDate } from '@mui/x-date-pickers/internals';
4
+ import { useApplyDefaultValuesToDateValidationProps } from '@mui/x-date-pickers/internals';
5
5
  import { DateRangePickerToolbar } from "./DateRangePickerToolbar.js";
6
6
  export function useDateRangePickerDefaultizedProps(props, name) {
7
- const utils = useUtils();
8
- const defaultDates = useDefaultDates();
9
7
  const themeProps = useThemeProps({
10
8
  props,
11
9
  name
12
10
  });
11
+ const validationProps = useApplyDefaultValuesToDateValidationProps(themeProps);
13
12
  const localeText = React.useMemo(() => {
14
13
  if (themeProps.localeText?.toolbarTitle == null) {
15
14
  return themeProps.localeText;
@@ -18,12 +17,8 @@ export function useDateRangePickerDefaultizedProps(props, name) {
18
17
  dateRangePickerToolbarTitle: themeProps.localeText.toolbarTitle
19
18
  });
20
19
  }, [themeProps.localeText]);
21
- return _extends({}, themeProps, {
20
+ return _extends({}, themeProps, validationProps, {
22
21
  localeText,
23
- disableFuture: themeProps.disableFuture ?? false,
24
- disablePast: themeProps.disablePast ?? false,
25
- minDate: applyDefaultDate(utils, themeProps.minDate, defaultDates.minDate),
26
- maxDate: applyDefaultDate(utils, themeProps.maxDate, defaultDates.maxDate),
27
22
  slots: _extends({
28
23
  toolbar: DateRangePickerToolbar
29
24
  }, themeProps.slots)
@@ -1,45 +1,5 @@
1
1
  import * as React from 'react';
2
- import { PickersDayProps } from '@mui/x-date-pickers/PickersDay';
3
- import { DateRangePickerDayClasses } from "./dateRangePickerDayClasses.js";
4
- export interface DateRangePickerDayProps extends Omit<PickersDayProps, 'classes' | 'onBlur' | 'onFocus' | 'onKeyDown'> {
5
- /**
6
- * Set to `true` if the `day` is in a highlighted date range.
7
- */
8
- isHighlighting: boolean;
9
- /**
10
- * Set to `true` if the `day` is the end of a highlighted date range.
11
- */
12
- isEndOfHighlighting: boolean;
13
- /**
14
- * Set to `true` if the `day` is the start of a highlighted date range.
15
- */
16
- isStartOfHighlighting: boolean;
17
- /**
18
- * Set to `true` if the `day` is in a preview date range.
19
- */
20
- isPreviewing: boolean;
21
- /**
22
- * Set to `true` if the `day` is the end of a previewing date range.
23
- */
24
- isEndOfPreviewing: boolean;
25
- /**
26
- * Set to `true` if the `day` is the start of a previewing date range.
27
- */
28
- isStartOfPreviewing: boolean;
29
- /**
30
- * Override or extend the styles applied to the component.
31
- */
32
- classes?: Partial<DateRangePickerDayClasses>;
33
- /**
34
- * Indicates if the day should be visually selected.
35
- */
36
- isVisuallySelected?: boolean;
37
- /**
38
- * If `true`, the day can be dragged to change the current date range.
39
- * @default false
40
- */
41
- draggable?: boolean;
42
- }
2
+ import { DateRangePickerDayProps } from "./DateRangePickerDay.types.js";
43
3
  type DateRangePickerDayComponent = (props: DateRangePickerDayProps & React.RefAttributes<HTMLButtonElement>) => React.JSX.Element;
44
4
  /**
45
5
  * Demos: