@mui/x-date-pickers-pro 5.0.0 → 5.0.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 (62) hide show
  1. package/CHANGELOG.md +94 -0
  2. package/DateRangePicker/DateRangePickerInput.d.ts +4 -2
  3. package/DateRangePicker/DateRangePickerInput.js +31 -5
  4. package/DateRangePicker/DateRangePickerToolbar.d.ts +4 -4
  5. package/DateRangePicker/DateRangePickerToolbar.js +31 -8
  6. package/DateRangePicker/DateRangePickerView.d.ts +2 -2
  7. package/DateRangePicker/DateRangePickerViewDesktop.d.ts +4 -3
  8. package/DateRangePicker/DateRangePickerViewDesktop.js +38 -6
  9. package/DateRangePicker/DateRangePickerViewMobile.d.ts +1 -1
  10. package/DateRangePicker/DateRangePickerViewMobile.js +1 -1
  11. package/DateRangePicker/dateRangePickerInputClasses.d.ts +7 -0
  12. package/DateRangePicker/dateRangePickerInputClasses.js +5 -0
  13. package/DateRangePicker/dateRangePickerToolbarClasses.d.ts +9 -0
  14. package/DateRangePicker/dateRangePickerToolbarClasses.js +5 -0
  15. package/DateRangePicker/dateRangePickerViewDesktopClasses.d.ts +9 -0
  16. package/DateRangePicker/dateRangePickerViewDesktopClasses.js +5 -0
  17. package/DateRangePicker/index.d.ts +6 -0
  18. package/DateRangePicker/index.js +4 -1
  19. package/DateRangePickerDay/DateRangePickerDay.js +30 -5
  20. package/StaticDateRangePicker/StaticDateRangePicker.js +5 -3
  21. package/index.js +1 -1
  22. package/internal/utils/releaseInfo.js +1 -1
  23. package/legacy/DateRangePicker/DateRangePickerInput.js +30 -4
  24. package/legacy/DateRangePicker/DateRangePickerToolbar.js +31 -8
  25. package/legacy/DateRangePicker/DateRangePickerViewDesktop.js +40 -5
  26. package/legacy/DateRangePicker/DateRangePickerViewMobile.js +2 -1
  27. package/legacy/DateRangePicker/dateRangePickerInputClasses.js +5 -0
  28. package/legacy/DateRangePicker/dateRangePickerToolbarClasses.js +5 -0
  29. package/legacy/DateRangePicker/dateRangePickerViewDesktopClasses.js +5 -0
  30. package/legacy/DateRangePicker/index.js +4 -1
  31. package/legacy/DateRangePickerDay/DateRangePickerDay.js +27 -16
  32. package/legacy/StaticDateRangePicker/StaticDateRangePicker.js +4 -2
  33. package/legacy/index.js +1 -1
  34. package/legacy/internal/utils/releaseInfo.js +1 -1
  35. package/modern/DateRangePicker/DateRangePickerInput.js +31 -5
  36. package/modern/DateRangePicker/DateRangePickerToolbar.js +31 -8
  37. package/modern/DateRangePicker/DateRangePickerViewDesktop.js +38 -6
  38. package/modern/DateRangePicker/DateRangePickerViewMobile.js +1 -1
  39. package/modern/DateRangePicker/dateRangePickerInputClasses.js +5 -0
  40. package/modern/DateRangePicker/dateRangePickerToolbarClasses.js +5 -0
  41. package/modern/DateRangePicker/dateRangePickerViewDesktopClasses.js +5 -0
  42. package/modern/DateRangePicker/index.js +4 -1
  43. package/modern/DateRangePickerDay/DateRangePickerDay.js +30 -5
  44. package/modern/StaticDateRangePicker/StaticDateRangePicker.js +5 -3
  45. package/modern/index.js +1 -1
  46. package/modern/internal/utils/releaseInfo.js +1 -1
  47. package/node/DateRangePicker/DateRangePickerInput.js +31 -4
  48. package/node/DateRangePicker/DateRangePickerToolbar.js +30 -9
  49. package/node/DateRangePicker/DateRangePickerViewDesktop.js +38 -5
  50. package/node/DateRangePicker/DateRangePickerViewMobile.js +1 -1
  51. package/node/DateRangePicker/dateRangePickerInputClasses.js +16 -0
  52. package/node/DateRangePicker/dateRangePickerToolbarClasses.js +16 -0
  53. package/node/DateRangePicker/dateRangePickerViewDesktopClasses.js +16 -0
  54. package/node/DateRangePicker/index.js +43 -1
  55. package/node/DateRangePickerDay/DateRangePickerDay.js +28 -4
  56. package/node/StaticDateRangePicker/StaticDateRangePicker.js +5 -3
  57. package/node/index.js +1 -1
  58. package/node/internal/utils/releaseInfo.js +1 -1
  59. package/package.json +3 -3
  60. package/themeAugmentation/components.d.ts +38 -3
  61. package/themeAugmentation/overrides.d.ts +10 -0
  62. package/themeAugmentation/props.d.ts +14 -0
@@ -2,12 +2,30 @@ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
3
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
4
4
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
5
- var _excluded = ["currentlySelectingRangeEnd", "disableOpenPicker", "endText", "onBlur", "onChange", "open", "openPicker", "rawValue", "rawValue", "readOnly", "renderInput", "setCurrentlySelectingRangeEnd", "startText", "TextFieldProps", "validationError"];
5
+ var _excluded = ["currentlySelectingRangeEnd", "disableOpenPicker", "endText", "onBlur", "onChange", "open", "openPicker", "rawValue", "rawValue", "readOnly", "renderInput", "setCurrentlySelectingRangeEnd", "startText", "TextFieldProps", "validationError", "className"];
6
6
  import * as React from 'react';
7
- import { styled } from '@mui/material/styles';
7
+ import clsx from 'clsx';
8
+ import { styled, useThemeProps } from '@mui/material/styles';
9
+ import { unstable_composeClasses as composeClasses } from '@mui/material';
8
10
  import { useUtils, executeInTheNextEventLoopTick, useMaskedInput, onSpaceOrEnter } from '@mui/x-date-pickers/internals';
11
+ import { getDateRangePickerInputUtilityClass } from './dateRangePickerInputClasses';
9
12
  import { jsx as _jsx } from "react/jsx-runtime";
10
- var DateRangePickerInputRoot = styled('div')(function (_ref) {
13
+
14
+ var useUtilityClasses = function useUtilityClasses(ownerState) {
15
+ var classes = ownerState.classes;
16
+ var slots = {
17
+ root: ['root']
18
+ };
19
+ return composeClasses(slots, getDateRangePickerInputUtilityClass, classes);
20
+ };
21
+
22
+ var DateRangePickerInputRoot = styled('div', {
23
+ name: 'MuiDateRangePickerInput',
24
+ slot: 'Root',
25
+ overridesResolver: function overridesResolver(_, styles) {
26
+ return styles.root;
27
+ }
28
+ })(function (_ref) {
11
29
  var theme = _ref.theme;
12
30
  return _defineProperty({
13
31
  display: 'flex',
@@ -21,7 +39,12 @@ var DateRangePickerInputRoot = styled('div')(function (_ref) {
21
39
  /**
22
40
  * @ignore - internal component.
23
41
  */
24
- export var DateRangePickerInput = /*#__PURE__*/React.forwardRef(function DateRangePickerInput(props, ref) {
42
+ export var DateRangePickerInput = /*#__PURE__*/React.forwardRef(function DateRangePickerInput(inProps, ref) {
43
+ var props = useThemeProps({
44
+ props: inProps,
45
+ name: 'MuiDateRangePickerInput'
46
+ });
47
+
25
48
  var currentlySelectingRangeEnd = props.currentlySelectingRangeEnd,
26
49
  disableOpenPicker = props.disableOpenPicker,
27
50
  endText = props.endText,
@@ -41,11 +64,13 @@ export var DateRangePickerInput = /*#__PURE__*/React.forwardRef(function DateRan
41
64
  _props$validationErro = _slicedToArray(props.validationError, 2),
42
65
  startValidationError = _props$validationErro[0],
43
66
  endValidationError = _props$validationErro[1],
67
+ className = props.className,
44
68
  other = _objectWithoutProperties(props, _excluded);
45
69
 
46
70
  var utils = useUtils();
47
71
  var startRef = React.useRef(null);
48
72
  var endRef = React.useRef(null);
73
+ var classes = useUtilityClasses(props);
49
74
  React.useEffect(function () {
50
75
  if (!open) {
51
76
  return;
@@ -148,6 +173,7 @@ export var DateRangePickerInput = /*#__PURE__*/React.forwardRef(function DateRan
148
173
  return /*#__PURE__*/_jsx(DateRangePickerInputRoot, {
149
174
  onBlur: onBlur,
150
175
  ref: ref,
176
+ className: clsx(classes.root, className),
151
177
  children: renderInput(startInputProps, endInputProps)
152
178
  });
153
179
  });
@@ -2,31 +2,51 @@ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
2
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
3
  import * as React from 'react';
4
4
  import Typography from '@mui/material/Typography';
5
- import { styled } from '@mui/material/styles';
6
- import { generateUtilityClasses } from '@mui/material';
5
+ import { styled, useThemeProps } from '@mui/material/styles';
6
+ import { unstable_composeClasses as composeClasses } from '@mui/material';
7
7
  import { PickersToolbar, PickersToolbarButton, pickersToolbarClasses, useUtils, useLocaleText } from '@mui/x-date-pickers/internals';
8
+ import { getDateRangePickerToolbarUtilityClass } from './dateRangePickerToolbarClasses';
8
9
  import { jsx as _jsx } from "react/jsx-runtime";
9
10
  import { jsxs as _jsxs } from "react/jsx-runtime";
10
- export var dateRangePickerToolbarClasses = generateUtilityClasses('MuiDateRangePickerToolbar', ['root']);
11
+
12
+ var useUtilityClasses = function useUtilityClasses(ownerState) {
13
+ var classes = ownerState.classes;
14
+ var slots = {
15
+ root: ['root'],
16
+ container: ['container']
17
+ };
18
+ return composeClasses(slots, getDateRangePickerToolbarUtilityClass, classes);
19
+ };
20
+
11
21
  var DateRangePickerToolbarRoot = styled(PickersToolbar, {
12
22
  name: 'MuiDateRangePickerToolbar',
13
23
  slot: 'Root',
14
- overridesResolver: function overridesResolver(props, styles) {
24
+ overridesResolver: function overridesResolver(_, styles) {
15
25
  return styles.root;
16
26
  }
17
27
  })(_defineProperty({}, "& .".concat(pickersToolbarClasses.penIconButton), {
18
28
  position: 'relative',
19
29
  top: 4
20
30
  }));
21
- var DateRangePickerToolbarContainer = styled('div')({
31
+ var DateRangePickerToolbarContainer = styled('div', {
32
+ name: 'MuiDateRangePickerToolbar',
33
+ slot: 'Container',
34
+ overridesResolver: function overridesResolver(_, styles) {
35
+ return styles.container;
36
+ }
37
+ })({
22
38
  display: 'flex'
23
39
  });
24
40
  /**
25
41
  * @ignore - internal component.
26
42
  */
27
43
 
28
- export var DateRangePickerToolbar = function DateRangePickerToolbar(props) {
44
+ export var DateRangePickerToolbar = /*#__PURE__*/React.forwardRef(function DateRangePickerToolbar(inProps, ref) {
29
45
  var utils = useUtils();
46
+ var props = useThemeProps({
47
+ props: inProps,
48
+ name: 'MuiDateRangePickerToolbar'
49
+ });
30
50
 
31
51
  var currentlySelectingRangeEnd = props.currentlySelectingRangeEnd,
32
52
  _props$parsedValue = _slicedToArray(props.parsedValue, 2),
@@ -45,14 +65,17 @@ export var DateRangePickerToolbar = function DateRangePickerToolbar(props) {
45
65
  var startDateValue = start ? utils.formatByString(start, toolbarFormat || utils.formats.shortDate) : startText;
46
66
  var endDateValue = end ? utils.formatByString(end, toolbarFormat || utils.formats.shortDate) : endText;
47
67
  var ownerState = props;
68
+ var classes = useUtilityClasses(ownerState);
48
69
  return /*#__PURE__*/_jsx(DateRangePickerToolbarRoot, {
49
70
  toolbarTitle: toolbarTitle,
50
71
  isMobileKeyboardViewOpen: isMobileKeyboardViewOpen,
51
72
  toggleMobileKeyboardView: toggleMobileKeyboardView,
52
73
  isLandscape: false,
53
- className: dateRangePickerToolbarClasses.root,
74
+ className: classes.root,
54
75
  ownerState: ownerState,
76
+ ref: ref,
55
77
  children: /*#__PURE__*/_jsxs(DateRangePickerToolbarContainer, {
78
+ className: classes.container,
56
79
  children: [/*#__PURE__*/_jsx(PickersToolbarButton, {
57
80
  variant: start !== null ? 'h5' : 'h6',
58
81
  value: startDateValue,
@@ -73,4 +96,4 @@ export var DateRangePickerToolbar = function DateRangePickerToolbar(props) {
73
96
  })]
74
97
  })
75
98
  });
76
- };
99
+ });
@@ -1,22 +1,47 @@
1
1
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
- var _excluded = ["calendars", "changeMonth", "components", "componentsProps", "currentlySelectingRangeEnd", "currentMonth", "parsedValue", "disableFuture", "disablePast", "leftArrowButtonText", "maxDate", "minDate", "onSelectedDaysChange", "renderDay", "rightArrowButtonText"];
4
+ var _excluded = ["calendars", "changeMonth", "components", "componentsProps", "currentlySelectingRangeEnd", "currentMonth", "parsedValue", "disableFuture", "disablePast", "leftArrowButtonText", "maxDate", "minDate", "onSelectedDaysChange", "renderDay", "rightArrowButtonText", "className", "classes"];
5
5
  import * as React from 'react';
6
- import { styled } from '@mui/material/styles';
6
+ import clsx from 'clsx';
7
+ import { styled, useThemeProps } from '@mui/material/styles';
8
+ import { unstable_composeClasses as composeClasses } from '@mui/material';
7
9
  import { useDefaultDates, useUtils, useLocaleText, PickersArrowSwitcher, usePreviousMonthDisabled, useNextMonthDisabled, DayPicker, buildDeprecatedPropsWarning, DAY_MARGIN } from '@mui/x-date-pickers/internals';
8
10
  import { calculateRangePreview } from './date-range-manager';
9
11
  import { DateRangePickerDay } from '../DateRangePickerDay';
10
12
  import { isWithinRange, isStartOfRange, isEndOfRange } from '../internal/utils/date-utils';
11
13
  import { doNothing } from '../internal/utils/utils';
14
+ import { getDateRangePickerViewDesktopUtilityClass } from './dateRangePickerViewDesktopClasses';
12
15
  import { jsx as _jsx } from "react/jsx-runtime";
13
16
  import { createElement as _createElement } from "react";
14
17
  import { jsxs as _jsxs } from "react/jsx-runtime";
15
- var DateRangePickerViewDesktopRoot = styled('div')({
18
+
19
+ var useUtilityClasses = function useUtilityClasses(ownerState) {
20
+ var classes = ownerState.classes;
21
+ var slots = {
22
+ root: ['root'],
23
+ container: ['container']
24
+ };
25
+ return composeClasses(slots, getDateRangePickerViewDesktopUtilityClass, classes);
26
+ };
27
+
28
+ var DateRangePickerViewDesktopRoot = styled('div', {
29
+ name: 'MuiDateRangePickerViewDesktop',
30
+ slot: 'Root',
31
+ overridesResolver: function overridesResolver(_, styles) {
32
+ return styles.root;
33
+ }
34
+ })({
16
35
  display: 'flex',
17
36
  flexDirection: 'row'
18
37
  });
19
- var DateRangePickerViewDesktopContainer = styled('div')(function (_ref) {
38
+ var DateRangePickerViewDesktopContainer = styled('div', {
39
+ name: 'MuiDateRangePickerViewDesktop',
40
+ slot: 'Container',
41
+ overridesResolver: function overridesResolver(_, styles) {
42
+ return styles.container;
43
+ }
44
+ })(function (_ref) {
20
45
  var theme = _ref.theme;
21
46
  return {
22
47
  '&:not(:last-of-type)': {
@@ -59,7 +84,12 @@ var deprecatedPropsWarning = buildDeprecatedPropsWarning('Props for translation
59
84
  * @ignore - internal component.
60
85
  */
61
86
 
62
- export function DateRangePickerViewDesktop(props) {
87
+ export function DateRangePickerViewDesktop(inProps) {
88
+ var props = useThemeProps({
89
+ props: inProps,
90
+ name: 'MuiDateRangePickerViewDesktop'
91
+ });
92
+
63
93
  var calendars = props.calendars,
64
94
  changeMonth = props.changeMonth,
65
95
  components = props.components,
@@ -78,6 +108,8 @@ export function DateRangePickerViewDesktop(props) {
78
108
  return /*#__PURE__*/_jsx(DateRangePickerDay, _extends({}, dateRangeProps));
79
109
  } : _props$renderDay,
80
110
  rightArrowButtonTextProp = props.rightArrowButtonText,
111
+ className = props.className,
112
+ providedClasses = props.classes,
81
113
  other = _objectWithoutProperties(props, _excluded);
82
114
 
83
115
  deprecatedPropsWarning({
@@ -88,6 +120,7 @@ export function DateRangePickerViewDesktop(props) {
88
120
  var leftArrowButtonText = leftArrowButtonTextProp != null ? leftArrowButtonTextProp : localeText.previousMonth;
89
121
  var rightArrowButtonText = rightArrowButtonTextProp != null ? rightArrowButtonTextProp : localeText.nextMonth;
90
122
  var utils = useUtils();
123
+ var classes = useUtilityClasses(props);
91
124
  var defaultDates = useDefaultDates();
92
125
  var minDate = minDateProp != null ? minDateProp : defaultDates.minDate;
93
126
  var maxDate = maxDateProp != null ? maxDateProp : defaultDates.maxDate;
@@ -138,9 +171,11 @@ export function DateRangePickerViewDesktop(props) {
138
171
  changeMonth(utils.getPreviousMonth(currentMonth));
139
172
  }, [changeMonth, currentMonth, utils]);
140
173
  return /*#__PURE__*/_jsx(DateRangePickerViewDesktopRoot, {
174
+ className: clsx(className, classes.root),
141
175
  children: getCalendarsArray(calendars).map(function (_, index) {
142
176
  var monthOnIteration = utils.setMonth(currentMonth, utils.getMonth(currentMonth) + index);
143
177
  return /*#__PURE__*/_jsxs(DateRangePickerViewDesktopContainer, {
178
+ className: classes.container,
144
179
  children: [/*#__PURE__*/_jsx(DateRangePickerViewDesktopArrowSwitcher, {
145
180
  onLeftClick: selectPreviousMonth,
146
181
  onRightClick: selectNextMonth,
@@ -1,7 +1,7 @@
1
1
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
- var _excluded = ["changeMonth", "components", "componentsProps", "parsedValue", "leftArrowButtonText", "maxDate", "minDate", "onSelectedDaysChange", "renderDay", "rightArrowButtonText", "disabled", "readOnly"];
4
+ var _excluded = ["changeMonth", "components", "componentsProps", "parsedValue", "leftArrowButtonText", "maxDate", "minDate", "onSelectedDaysChange", "renderDay", "rightArrowButtonText", "disabled", "readOnly", "classes"];
5
5
  import * as React from 'react';
6
6
  import { PickersCalendarHeader, useDefaultDates, useUtils, DayPicker } from '@mui/x-date-pickers/internals';
7
7
  import { doNothing } from '../internal/utils/utils';
@@ -30,6 +30,7 @@ export function DateRangePickerViewMobile(props) {
30
30
  rightArrowButtonText = props.rightArrowButtonText,
31
31
  disabled = props.disabled,
32
32
  readOnly = props.readOnly,
33
+ providedClasses = props.classes,
33
34
  other = _objectWithoutProperties(props, _excluded);
34
35
 
35
36
  var utils = useUtils();
@@ -0,0 +1,5 @@
1
+ import { generateUtilityClass, generateUtilityClasses } from '@mui/material';
2
+ export function getDateRangePickerInputUtilityClass(slot) {
3
+ return generateUtilityClass('MuiDateRangePickerInput', slot);
4
+ }
5
+ export var dateRangePickerInputClasses = generateUtilityClasses('MuiDateRangePickerInput', ['root']);
@@ -0,0 +1,5 @@
1
+ import { generateUtilityClass, generateUtilityClasses } from '@mui/material';
2
+ export function getDateRangePickerToolbarUtilityClass(slot) {
3
+ return generateUtilityClass('MuiDateRangePickerToolbar', slot);
4
+ }
5
+ export var dateRangePickerToolbarClasses = generateUtilityClasses('MuiDateRangePickerToolbar', ['root', 'container']);
@@ -0,0 +1,5 @@
1
+ import { generateUtilityClass, generateUtilityClasses } from '@mui/material';
2
+ export function getDateRangePickerViewDesktopUtilityClass(slot) {
3
+ return generateUtilityClass('MuiDateRangePickerViewDesktop', slot);
4
+ }
5
+ export var dateRangePickerViewDesktopClasses = generateUtilityClasses('MuiDateRangePickerViewDesktop', ['root', 'container']);
@@ -1 +1,4 @@
1
- export { DateRangePicker } from './DateRangePicker';
1
+ export { DateRangePicker } from './DateRangePicker';
2
+ export { getDateRangePickerInputUtilityClass, dateRangePickerInputClasses } from './dateRangePickerInputClasses';
3
+ export { getDateRangePickerToolbarUtilityClass, dateRangePickerToolbarClasses } from './dateRangePickerToolbarClasses';
4
+ export { getDateRangePickerViewDesktopUtilityClass, dateRangePickerViewDesktopClasses } from './dateRangePickerViewDesktopClasses';
@@ -1,12 +1,12 @@
1
1
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
2
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
4
  var _excluded = ["className", "day", "outsideCurrentMonth", "isEndOfHighlighting", "isEndOfPreviewing", "isHighlighting", "isPreviewing", "isStartOfHighlighting", "isStartOfPreviewing", "selected"];
5
5
  import * as React from 'react';
6
6
  import PropTypes from 'prop-types';
7
7
  import clsx from 'clsx';
8
8
  import { useLicenseVerifier } from '@mui/x-license-pro';
9
- import { alpha, styled } from '@mui/material/styles';
9
+ import { alpha, styled, useThemeProps } from '@mui/material/styles';
10
10
  import { unstable_composeClasses as composeClasses } from '@mui/material';
11
11
  import { DAY_MARGIN, useUtils, areDayPropsEqual } from '@mui/x-date-pickers/internals';
12
12
  import { PickersDay } from '@mui/x-date-pickers/PickersDay';
@@ -46,14 +46,14 @@ var startBorderStyle = {
46
46
  var DateRangePickerDayRoot = styled('div', {
47
47
  name: 'MuiDateRangePickerDay',
48
48
  slot: 'Root',
49
- overridesResolver: function overridesResolver(props, styles) {
50
- return styles.root;
49
+ overridesResolver: function overridesResolver(_, styles) {
50
+ return [_defineProperty({}, "&.".concat(dateRangePickerDayClasses.rangeIntervalDayHighlight), styles.rangeIntervalDayHighlight), _defineProperty({}, "&.".concat(dateRangePickerDayClasses.rangeIntervalDayHighlightStart), styles.rangeIntervalDayHighlightStart), _defineProperty({}, "&.".concat(dateRangePickerDayClasses.rangeIntervalDayHighlightEnd), styles.rangeIntervalDayHighlightEnd), styles.root];
51
51
  }
52
- })(function (_ref) {
52
+ })(function (_ref4) {
53
53
  var _extends2;
54
54
 
55
- var theme = _ref.theme,
56
- ownerState = _ref.ownerState;
55
+ var theme = _ref4.theme,
56
+ ownerState = _ref4.ownerState;
57
57
  return _extends((_extends2 = {}, _defineProperty(_extends2, "&:first-of-type .".concat(dateRangePickerDayClasses.rangeIntervalDayPreview), _extends({}, startBorderStyle, {
58
58
  borderLeftColor: theme.palette.divider
59
59
  })), _defineProperty(_extends2, "&:last-of-type .".concat(dateRangePickerDayClasses.rangeIntervalDayPreview), _extends({}, endBorderStyle, {
@@ -81,10 +81,13 @@ DateRangePickerDayRoot.propTypes = {
81
81
  };
82
82
  var DateRangePickerDayRangeIntervalPreview = styled('div', {
83
83
  name: 'MuiDateRangePickerDay',
84
- slot: 'RangeIntervalPreview'
85
- })(function (_ref2) {
86
- var theme = _ref2.theme,
87
- ownerState = _ref2.ownerState;
84
+ slot: 'RangeIntervalPreview',
85
+ overridesResolver: function overridesResolver(_, styles) {
86
+ return [_defineProperty({}, "&.".concat(dateRangePickerDayClasses.rangeIntervalDayPreview), styles.rangeIntervalDayPreview), _defineProperty({}, "&.".concat(dateRangePickerDayClasses.rangeIntervalDayPreviewStart), styles.rangeIntervalDayPreviewStart), _defineProperty({}, "&.".concat(dateRangePickerDayClasses.rangeIntervalDayPreviewEnd), styles.rangeIntervalDayPreviewEnd), styles.rangeIntervalPreview];
87
+ }
88
+ })(function (_ref8) {
89
+ var theme = _ref8.theme,
90
+ ownerState = _ref8.ownerState;
88
91
  return _extends({
89
92
  // replace default day component margin with transparent border to avoid jumping on preview
90
93
  border: '2px solid transparent'
@@ -108,10 +111,13 @@ DateRangePickerDayRangeIntervalPreview.propTypes = {
108
111
  };
109
112
  var DateRangePickerDayDay = styled(PickersDay, {
110
113
  name: 'MuiDateRangePickerDay',
111
- slot: 'Day'
112
- })(function (_ref3) {
113
- var theme = _ref3.theme,
114
- ownerState = _ref3.ownerState;
114
+ slot: 'Day',
115
+ overridesResolver: function overridesResolver(_, styles) {
116
+ return [_defineProperty({}, "&.".concat(dateRangePickerDayClasses.dayInsideRangeInterval), styles.dayInsideRangeInterval), _defineProperty({}, "&.".concat(dateRangePickerDayClasses.dayOutsideRangeInterval), styles.dayOutsideRangeInterval), _defineProperty({}, "&.".concat(dateRangePickerDayClasses.notSelectedDate), styles.notSelectedDate), styles.day];
117
+ }
118
+ })(function (_ref12) {
119
+ var theme = _ref12.theme,
120
+ ownerState = _ref12.ownerState;
115
121
  return _extends({
116
122
  // Required to overlap preview border
117
123
  transform: 'scale(1.1)',
@@ -128,7 +134,12 @@ var DateRangePickerDayDay = styled(PickersDay, {
128
134
  color: theme.palette.getContrastText(alpha(theme.palette.primary.light, 0.6))
129
135
  });
130
136
  });
131
- var DateRangePickerDayRaw = /*#__PURE__*/React.forwardRef(function DateRangePickerDay(props, ref) {
137
+ var DateRangePickerDayRaw = /*#__PURE__*/React.forwardRef(function DateRangePickerDay(inProps, ref) {
138
+ var props = useThemeProps({
139
+ props: inProps,
140
+ name: 'MuiDateRangePickerDay'
141
+ });
142
+
132
143
  var className = props.className,
133
144
  day = props.day,
134
145
  outsideCurrentMonth = props.outsideCurrentMonth,
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
3
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
4
- var _excluded = ["displayStaticWrapperAs", "value", "onChange", "components", "componentsProps"];
4
+ var _excluded = ["displayStaticWrapperAs", "value", "onChange", "components", "componentsProps", "className"];
5
5
  import * as React from 'react';
6
6
  import PropTypes from 'prop-types';
7
7
  import { useLicenseVerifier } from '@mui/x-license-pro';
@@ -45,6 +45,7 @@ export var StaticDateRangePicker = /*#__PURE__*/React.forwardRef(function Static
45
45
  onChange = props.onChange,
46
46
  components = props.components,
47
47
  componentsProps = props.componentsProps,
48
+ className = props.className,
48
49
  other = _objectWithoutProperties(props, _excluded);
49
50
 
50
51
  var DateInputProps = _extends({}, inputProps, other, {
@@ -59,7 +60,8 @@ export var StaticDateRangePicker = /*#__PURE__*/React.forwardRef(function Static
59
60
  return /*#__PURE__*/_jsx(PickerStaticWrapper, _extends({
60
61
  displayStaticWrapperAs: displayStaticWrapperAs,
61
62
  components: components,
62
- componentsProps: componentsProps
63
+ componentsProps: componentsProps,
64
+ className: className
63
65
  }, wrapperProps, {
64
66
  children: /*#__PURE__*/_jsx(DateRangePickerView, _extends({
65
67
  open: wrapperProps.open,
package/legacy/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.0.0
1
+ /** @license MUI v5.0.2
2
2
  *
3
3
  * This source code is licensed under the MIT license found in the
4
4
  * LICENSE file in the root directory of this source tree.
@@ -1,6 +1,6 @@
1
1
  import { ponyfillGlobal } from '@mui/utils';
2
2
  export var getReleaseInfo = function getReleaseInfo() {
3
- var releaseInfo = "MTY2MjA2NjAwMDAwMA==";
3
+ var releaseInfo = "MTY2MzI5NzIwMDAwMA==";
4
4
 
5
5
  if (process.env.NODE_ENV !== 'production') {
6
6
  // A simple hack to set the value in the test environment (has no build step).
@@ -1,11 +1,29 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- const _excluded = ["currentlySelectingRangeEnd", "disableOpenPicker", "endText", "onBlur", "onChange", "open", "openPicker", "rawValue", "rawValue", "readOnly", "renderInput", "setCurrentlySelectingRangeEnd", "startText", "TextFieldProps", "validationError"];
3
+ const _excluded = ["currentlySelectingRangeEnd", "disableOpenPicker", "endText", "onBlur", "onChange", "open", "openPicker", "rawValue", "rawValue", "readOnly", "renderInput", "setCurrentlySelectingRangeEnd", "startText", "TextFieldProps", "validationError", "className"];
4
4
  import * as React from 'react';
5
- import { styled } from '@mui/material/styles';
5
+ import clsx from 'clsx';
6
+ import { styled, useThemeProps } from '@mui/material/styles';
7
+ import { unstable_composeClasses as composeClasses } from '@mui/material';
6
8
  import { useUtils, executeInTheNextEventLoopTick, useMaskedInput, onSpaceOrEnter } from '@mui/x-date-pickers/internals';
9
+ import { getDateRangePickerInputUtilityClass } from './dateRangePickerInputClasses';
7
10
  import { jsx as _jsx } from "react/jsx-runtime";
8
- const DateRangePickerInputRoot = styled('div')(({
11
+
12
+ const useUtilityClasses = ownerState => {
13
+ const {
14
+ classes
15
+ } = ownerState;
16
+ const slots = {
17
+ root: ['root']
18
+ };
19
+ return composeClasses(slots, getDateRangePickerInputUtilityClass, classes);
20
+ };
21
+
22
+ const DateRangePickerInputRoot = styled('div', {
23
+ name: 'MuiDateRangePickerInput',
24
+ slot: 'Root',
25
+ overridesResolver: (_, styles) => styles.root
26
+ })(({
9
27
  theme
10
28
  }) => ({
11
29
  display: 'flex',
@@ -19,7 +37,12 @@ const DateRangePickerInputRoot = styled('div')(({
19
37
  /**
20
38
  * @ignore - internal component.
21
39
  */
22
- export const DateRangePickerInput = /*#__PURE__*/React.forwardRef(function DateRangePickerInput(props, ref) {
40
+ export const DateRangePickerInput = /*#__PURE__*/React.forwardRef(function DateRangePickerInput(inProps, ref) {
41
+ const props = useThemeProps({
42
+ props: inProps,
43
+ name: 'MuiDateRangePickerInput'
44
+ });
45
+
23
46
  const {
24
47
  currentlySelectingRangeEnd,
25
48
  disableOpenPicker,
@@ -34,13 +57,15 @@ export const DateRangePickerInput = /*#__PURE__*/React.forwardRef(function DateR
34
57
  setCurrentlySelectingRangeEnd,
35
58
  startText,
36
59
  TextFieldProps,
37
- validationError: [startValidationError, endValidationError]
60
+ validationError: [startValidationError, endValidationError],
61
+ className
38
62
  } = props,
39
63
  other = _objectWithoutPropertiesLoose(props, _excluded);
40
64
 
41
65
  const utils = useUtils();
42
66
  const startRef = React.useRef(null);
43
67
  const endRef = React.useRef(null);
68
+ const classes = useUtilityClasses(props);
44
69
  React.useEffect(() => {
45
70
  if (!open) {
46
71
  return;
@@ -131,6 +156,7 @@ export const DateRangePickerInput = /*#__PURE__*/React.forwardRef(function DateR
131
156
  return /*#__PURE__*/_jsx(DateRangePickerInputRoot, {
132
157
  onBlur: onBlur,
133
158
  ref: ref,
159
+ className: clsx(classes.root, className),
134
160
  children: renderInput(startInputProps, endInputProps)
135
161
  });
136
162
  });
@@ -1,30 +1,50 @@
1
1
  import * as React from 'react';
2
2
  import Typography from '@mui/material/Typography';
3
- import { styled } from '@mui/material/styles';
4
- import { generateUtilityClasses } from '@mui/material';
3
+ import { styled, useThemeProps } from '@mui/material/styles';
4
+ import { unstable_composeClasses as composeClasses } from '@mui/material';
5
5
  import { PickersToolbar, PickersToolbarButton, pickersToolbarClasses, useUtils, useLocaleText } from '@mui/x-date-pickers/internals';
6
+ import { getDateRangePickerToolbarUtilityClass } from './dateRangePickerToolbarClasses';
6
7
  import { jsx as _jsx } from "react/jsx-runtime";
7
8
  import { jsxs as _jsxs } from "react/jsx-runtime";
8
- export const dateRangePickerToolbarClasses = generateUtilityClasses('MuiDateRangePickerToolbar', ['root']);
9
+
10
+ const useUtilityClasses = ownerState => {
11
+ const {
12
+ classes
13
+ } = ownerState;
14
+ const slots = {
15
+ root: ['root'],
16
+ container: ['container']
17
+ };
18
+ return composeClasses(slots, getDateRangePickerToolbarUtilityClass, classes);
19
+ };
20
+
9
21
  const DateRangePickerToolbarRoot = styled(PickersToolbar, {
10
22
  name: 'MuiDateRangePickerToolbar',
11
23
  slot: 'Root',
12
- overridesResolver: (props, styles) => styles.root
24
+ overridesResolver: (_, styles) => styles.root
13
25
  })({
14
26
  [`& .${pickersToolbarClasses.penIconButton}`]: {
15
27
  position: 'relative',
16
28
  top: 4
17
29
  }
18
30
  });
19
- const DateRangePickerToolbarContainer = styled('div')({
31
+ const DateRangePickerToolbarContainer = styled('div', {
32
+ name: 'MuiDateRangePickerToolbar',
33
+ slot: 'Container',
34
+ overridesResolver: (_, styles) => styles.container
35
+ })({
20
36
  display: 'flex'
21
37
  });
22
38
  /**
23
39
  * @ignore - internal component.
24
40
  */
25
41
 
26
- export const DateRangePickerToolbar = props => {
42
+ export const DateRangePickerToolbar = /*#__PURE__*/React.forwardRef(function DateRangePickerToolbar(inProps, ref) {
27
43
  const utils = useUtils();
44
+ const props = useThemeProps({
45
+ props: inProps,
46
+ name: 'MuiDateRangePickerToolbar'
47
+ });
28
48
  const {
29
49
  currentlySelectingRangeEnd,
30
50
  parsedValue: [start, end],
@@ -41,14 +61,17 @@ export const DateRangePickerToolbar = props => {
41
61
  const startDateValue = start ? utils.formatByString(start, toolbarFormat || utils.formats.shortDate) : startText;
42
62
  const endDateValue = end ? utils.formatByString(end, toolbarFormat || utils.formats.shortDate) : endText;
43
63
  const ownerState = props;
64
+ const classes = useUtilityClasses(ownerState);
44
65
  return /*#__PURE__*/_jsx(DateRangePickerToolbarRoot, {
45
66
  toolbarTitle: toolbarTitle,
46
67
  isMobileKeyboardViewOpen: isMobileKeyboardViewOpen,
47
68
  toggleMobileKeyboardView: toggleMobileKeyboardView,
48
69
  isLandscape: false,
49
- className: dateRangePickerToolbarClasses.root,
70
+ className: classes.root,
50
71
  ownerState: ownerState,
72
+ ref: ref,
51
73
  children: /*#__PURE__*/_jsxs(DateRangePickerToolbarContainer, {
74
+ className: classes.container,
52
75
  children: [/*#__PURE__*/_jsx(PickersToolbarButton, {
53
76
  variant: start !== null ? 'h5' : 'h6',
54
77
  value: startDateValue,
@@ -65,4 +88,4 @@ export const DateRangePickerToolbar = props => {
65
88
  })]
66
89
  })
67
90
  });
68
- };
91
+ });