@mui/x-date-pickers-pro 8.27.0 → 8.27.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.
- package/CHANGELOG.md +125 -0
- package/DateRangeCalendar/DateRangeCalendar.js +1 -1
- package/DateRangePickerDay/DateRangePickerDay.js +1 -1
- package/esm/DateRangeCalendar/DateRangeCalendar.js +1 -1
- package/esm/DateRangePickerDay/DateRangePickerDay.js +1 -1
- package/esm/index.js +1 -1
- package/esm/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +1 -1
- package/esm/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +1 -1
- package/esm/internals/utils/date-range-manager.js +12 -2
- package/index.js +1 -1
- package/internals/hooks/useDesktopRangePicker/useDesktopRangePicker.js +1 -1
- package/internals/hooks/useMobileRangePicker/useMobileRangePicker.js +1 -1
- package/internals/utils/date-range-manager.js +12 -2
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,131 @@
|
|
|
5
5
|
All notable changes to this project will be documented in this file.
|
|
6
6
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
7
7
|
|
|
8
|
+
## 8.27.2
|
|
9
|
+
|
|
10
|
+
_Feb 20, 2026_
|
|
11
|
+
|
|
12
|
+
We'd like to extend a big thank you to the 3 contributors who made this release possible. Here are some highlights ✨:
|
|
13
|
+
|
|
14
|
+
- 🐞 Bugfixes
|
|
15
|
+
|
|
16
|
+
### Data Grid
|
|
17
|
+
|
|
18
|
+
#### `@mui/x-data-grid@8.27.2`
|
|
19
|
+
|
|
20
|
+
Internal changes.
|
|
21
|
+
|
|
22
|
+
#### `@mui/x-data-grid-pro@8.27.2` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
23
|
+
|
|
24
|
+
Same changes as in `@mui/x-data-grid@8.27.2`, plus:
|
|
25
|
+
|
|
26
|
+
- [DataGridPro] Fix number input visibility in header filters (#21345) @michelengelen
|
|
27
|
+
|
|
28
|
+
#### `@mui/x-data-grid-premium@8.27.2` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
29
|
+
|
|
30
|
+
Same changes as in `@mui/x-data-grid-pro@8.27.2`.
|
|
31
|
+
|
|
32
|
+
### Date and Time Pickers
|
|
33
|
+
|
|
34
|
+
#### `@mui/x-date-pickers@8.27.2`
|
|
35
|
+
|
|
36
|
+
- [DatePicker] Add keyboard support for selecting day, month, and year (#21399) @michelengelen
|
|
37
|
+
|
|
38
|
+
#### `@mui/x-date-pickers-pro@8.27.2` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
39
|
+
|
|
40
|
+
Same changes as in `@mui/x-date-pickers@8.27.2`, plus:
|
|
41
|
+
|
|
42
|
+
- [DateRangePicker] Fix timezone update issue leading to `invalidRange` error (#21382) @michelengelen
|
|
43
|
+
|
|
44
|
+
### Charts
|
|
45
|
+
|
|
46
|
+
#### `@mui/x-charts@8.27.2`
|
|
47
|
+
|
|
48
|
+
Internal changes.
|
|
49
|
+
|
|
50
|
+
#### `@mui/x-charts-pro@8.27.2` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
51
|
+
|
|
52
|
+
Same changes as in `@mui/x-charts@8.27.2`, plus:
|
|
53
|
+
|
|
54
|
+
- [charts-pro] Handle edge case in export image (#21206) @bernardobelchior
|
|
55
|
+
|
|
56
|
+
#### `@mui/x-charts-premium@8.27.2` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
57
|
+
|
|
58
|
+
Same changes as in `@mui/x-charts-pro@8.27.2`.
|
|
59
|
+
|
|
60
|
+
### Tree View
|
|
61
|
+
|
|
62
|
+
#### `@mui/x-tree-view@8.27.2`
|
|
63
|
+
|
|
64
|
+
- [tree view] Focus item sibling on unmount instead of the 1st item (#21386) @flaviendelangle
|
|
65
|
+
|
|
66
|
+
#### `@mui/x-tree-view-pro@8.27.2` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
67
|
+
|
|
68
|
+
Same changes as in `@mui/x-tree-view@8.27.2`.
|
|
69
|
+
|
|
70
|
+
### Codemod
|
|
71
|
+
|
|
72
|
+
#### `@mui/x-codemod@8.27.2`
|
|
73
|
+
|
|
74
|
+
Internal changes.
|
|
75
|
+
|
|
76
|
+
### Core
|
|
77
|
+
|
|
78
|
+
- [code-infra] Only ignore `renovate[bot]` in changelog generation script (#21188) @bernardobelchior
|
|
79
|
+
|
|
80
|
+
## v8.27.1
|
|
81
|
+
|
|
82
|
+
<!-- generated comparing v8.27.0..v8.x -->
|
|
83
|
+
|
|
84
|
+
_Feb 13, 2026_
|
|
85
|
+
|
|
86
|
+
We'd like to extend a big thank you to the 6 contributors who made this release possible. Here are some highlights ✨:
|
|
87
|
+
|
|
88
|
+
- 📝 CSS bundler support is no longer needed for the Data Grid
|
|
89
|
+
- 🐞 Bugfixes
|
|
90
|
+
|
|
91
|
+
Special thanks go out to these community members for their valuable contributions:
|
|
92
|
+
@sai6855
|
|
93
|
+
|
|
94
|
+
The following team members contributed to this release:
|
|
95
|
+
@arminmeh, @cherniavskii, @flaviendelangle, @mj12albert, @MBilalShafi
|
|
96
|
+
|
|
97
|
+
### Data Grid
|
|
98
|
+
|
|
99
|
+
#### `@mui/x-data-grid@8.27.1`
|
|
100
|
+
|
|
101
|
+
- [DataGrid] Hide column menu icon when there are no items (#21303) @MBilalShafi
|
|
102
|
+
- [DataGrid] Migrate styled imports and remove `index.css` (#21176) @MBilalShafi
|
|
103
|
+
- [DataGrid] Optimize `GridRootStyles` overrides resolver (#21251) @sai6855
|
|
104
|
+
|
|
105
|
+
#### `@mui/x-data-grid-pro@8.27.1` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
106
|
+
|
|
107
|
+
Same changes as in `@mui/x-data-grid@8.27.1`, plus:
|
|
108
|
+
|
|
109
|
+
- [DataGridPro] Fix column pinning issue with `restoreState` (#21305) @MBilalShafi
|
|
110
|
+
- [DataGridPro] Fix lazy loading params for page with one row (#21238) @MBilalShafi
|
|
111
|
+
- [DataGridPro] Properly extract parent path (#21301) @arminmeh
|
|
112
|
+
|
|
113
|
+
#### `@mui/x-data-grid-premium@8.27.1` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
114
|
+
|
|
115
|
+
Same changes as in `@mui/x-data-grid-pro@8.27.1`, plus:
|
|
116
|
+
|
|
117
|
+
- [DataGridPremium] Fix aggregation display when `initialState` has both `sortModel` and `pinnedColumns` (#21152) @mj12albert
|
|
118
|
+
|
|
119
|
+
### Tree View
|
|
120
|
+
|
|
121
|
+
#### `@mui/x-tree-view@8.27.1`
|
|
122
|
+
|
|
123
|
+
- [tree view] Fix `apiRef.current.setItemExpansion()` (#21095) @flaviendelangle
|
|
124
|
+
|
|
125
|
+
#### `@mui/x-tree-view-pro@8.27.1` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
126
|
+
|
|
127
|
+
Same changes as in `@mui/x-tree-view@8.27.1`.
|
|
128
|
+
|
|
129
|
+
### Core
|
|
130
|
+
|
|
131
|
+
- [internal] Add CLI for translation using LLM (#21299) @cherniavskii
|
|
132
|
+
|
|
8
133
|
## v8.27.0
|
|
9
134
|
|
|
10
135
|
_Feb 2, 2026_
|
|
@@ -37,7 +37,7 @@ var _DateRangePickerDay2 = require("../DateRangePickerDay2");
|
|
|
37
37
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
38
38
|
const _excluded = ["value", "defaultValue", "referenceDate", "onChange", "className", "classes", "disableFuture", "disablePast", "minDate", "maxDate", "shouldDisableDate", "reduceAnimations", "onMonthChange", "rangePosition", "defaultRangePosition", "onRangePositionChange", "calendars", "currentMonthCalendarPosition", "slots", "slotProps", "loading", "renderLoading", "disableHighlightToday", "focusedView", "onFocusedViewChange", "readOnly", "disabled", "showDaysOutsideCurrentMonth", "dayOfWeekFormatter", "disableAutoMonthSwitching", "autoFocus", "fixedWeekNumber", "disableDragEditing", "displayWeekNumber", "timezone", "availableRangePositions", "views", "view", "openTo", "onViewChange"],
|
|
39
39
|
_excluded2 = ["isDragging", "rangeDragDay", "draggingDatePosition"];
|
|
40
|
-
const releaseInfo = "
|
|
40
|
+
const releaseInfo = "MTc3MTU0NTYwMDAwMA==";
|
|
41
41
|
const DateRangeCalendarRoot = (0, _styles.styled)('div', {
|
|
42
42
|
name: 'MuiDateRangeCalendar',
|
|
43
43
|
slot: 'Root'
|
|
@@ -235,7 +235,7 @@ const DateRangePickerDayRaw = /*#__PURE__*/React.forwardRef(function DateRangePi
|
|
|
235
235
|
showDaysOutsideCurrentMonth
|
|
236
236
|
} = props,
|
|
237
237
|
other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
|
|
238
|
-
(0, _xLicense.useLicenseVerifier)('x-date-pickers-pro', "
|
|
238
|
+
(0, _xLicense.useLicenseVerifier)('x-date-pickers-pro', "MTc3MTU0NTYwMDAwMA==");
|
|
239
239
|
const adapter = (0, _hooks.usePickerAdapter)();
|
|
240
240
|
const shouldRenderHighlight = isHighlighting && !outsideCurrentMonth;
|
|
241
241
|
const shouldRenderPreview = isPreviewing && !outsideCurrentMonth;
|
|
@@ -30,7 +30,7 @@ import { PickersRangeCalendarHeader } from "../PickersRangeCalendarHeader/index.
|
|
|
30
30
|
import { useNullablePickerRangePositionContext } from "../internals/hooks/useNullablePickerRangePositionContext.js";
|
|
31
31
|
import { dateRangePickerDay2Classes } from "../DateRangePickerDay2/index.js";
|
|
32
32
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
33
|
-
const releaseInfo = "
|
|
33
|
+
const releaseInfo = "MTc3MTU0NTYwMDAwMA==";
|
|
34
34
|
const DateRangeCalendarRoot = styled('div', {
|
|
35
35
|
name: 'MuiDateRangeCalendar',
|
|
36
36
|
slot: 'Root'
|
|
@@ -228,7 +228,7 @@ const DateRangePickerDayRaw = /*#__PURE__*/React.forwardRef(function DateRangePi
|
|
|
228
228
|
showDaysOutsideCurrentMonth
|
|
229
229
|
} = props,
|
|
230
230
|
other = _objectWithoutPropertiesLoose(props, _excluded);
|
|
231
|
-
useLicenseVerifier('x-date-pickers-pro', "
|
|
231
|
+
useLicenseVerifier('x-date-pickers-pro', "MTc3MTU0NTYwMDAwMA==");
|
|
232
232
|
const adapter = usePickerAdapter();
|
|
233
233
|
const shouldRenderHighlight = isHighlighting && !outsideCurrentMonth;
|
|
234
234
|
const shouldRenderPreview = isPreviewing && !outsideCurrentMonth;
|
package/esm/index.js
CHANGED
|
@@ -18,7 +18,7 @@ export const useDesktopRangePicker = _ref => {
|
|
|
18
18
|
steps
|
|
19
19
|
} = _ref,
|
|
20
20
|
pickerParams = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
21
|
-
useLicenseVerifier('x-date-pickers-pro', "
|
|
21
|
+
useLicenseVerifier('x-date-pickers-pro', "MTc3MTU0NTYwMDAwMA==");
|
|
22
22
|
const {
|
|
23
23
|
slots,
|
|
24
24
|
slotProps,
|
|
@@ -20,7 +20,7 @@ export const useMobileRangePicker = _ref => {
|
|
|
20
20
|
steps
|
|
21
21
|
} = _ref,
|
|
22
22
|
pickerParams = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
23
|
-
useLicenseVerifier('x-date-pickers-pro', "
|
|
23
|
+
useLicenseVerifier('x-date-pickers-pro', "MTc3MTU0NTYwMDAwMA==");
|
|
24
24
|
const {
|
|
25
25
|
slots,
|
|
26
26
|
slotProps: innerSlotProps,
|
|
@@ -46,9 +46,19 @@ export function calculateRangeChange({
|
|
|
46
46
|
nextSelection: 'end',
|
|
47
47
|
newRange: [newSelectedDate, null]
|
|
48
48
|
};
|
|
49
|
-
|
|
49
|
+
if (Boolean(start) && adapter.isBeforeDay(newSelectedDate, start)) {
|
|
50
|
+
return truthyResult;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
// If we're selecting the same day as the start, but the time would make the range invalid,
|
|
54
|
+
// set the end to the end of the day instead
|
|
55
|
+
let adjustedEndDate = newSelectedDate;
|
|
56
|
+
if (start && newSelectedDate && adapter.isSameDay(start, newSelectedDate) && adapter.isBefore(newSelectedDate, start)) {
|
|
57
|
+
adjustedEndDate = adapter.endOfDay(newSelectedDate);
|
|
58
|
+
}
|
|
59
|
+
return {
|
|
50
60
|
nextSelection: 'start',
|
|
51
|
-
newRange: [start,
|
|
61
|
+
newRange: [start, adjustedEndDate]
|
|
52
62
|
};
|
|
53
63
|
}
|
|
54
64
|
export function calculateRangePreview(options) {
|
package/index.js
CHANGED
|
@@ -25,7 +25,7 @@ const useDesktopRangePicker = _ref => {
|
|
|
25
25
|
steps
|
|
26
26
|
} = _ref,
|
|
27
27
|
pickerParams = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded);
|
|
28
|
-
(0, _xLicense.useLicenseVerifier)('x-date-pickers-pro', "
|
|
28
|
+
(0, _xLicense.useLicenseVerifier)('x-date-pickers-pro', "MTc3MTU0NTYwMDAwMA==");
|
|
29
29
|
const {
|
|
30
30
|
slots,
|
|
31
31
|
slotProps,
|
|
@@ -27,7 +27,7 @@ const useMobileRangePicker = _ref => {
|
|
|
27
27
|
steps
|
|
28
28
|
} = _ref,
|
|
29
29
|
pickerParams = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded);
|
|
30
|
-
(0, _xLicense.useLicenseVerifier)('x-date-pickers-pro', "
|
|
30
|
+
(0, _xLicense.useLicenseVerifier)('x-date-pickers-pro', "MTc3MTU0NTYwMDAwMA==");
|
|
31
31
|
const {
|
|
32
32
|
slots,
|
|
33
33
|
slotProps: innerSlotProps,
|
|
@@ -54,9 +54,19 @@ function calculateRangeChange({
|
|
|
54
54
|
nextSelection: 'end',
|
|
55
55
|
newRange: [newSelectedDate, null]
|
|
56
56
|
};
|
|
57
|
-
|
|
57
|
+
if (Boolean(start) && adapter.isBeforeDay(newSelectedDate, start)) {
|
|
58
|
+
return truthyResult;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
// If we're selecting the same day as the start, but the time would make the range invalid,
|
|
62
|
+
// set the end to the end of the day instead
|
|
63
|
+
let adjustedEndDate = newSelectedDate;
|
|
64
|
+
if (start && newSelectedDate && adapter.isSameDay(start, newSelectedDate) && adapter.isBefore(newSelectedDate, start)) {
|
|
65
|
+
adjustedEndDate = adapter.endOfDay(newSelectedDate);
|
|
66
|
+
}
|
|
67
|
+
return {
|
|
58
68
|
nextSelection: 'start',
|
|
59
|
-
newRange: [start,
|
|
69
|
+
newRange: [start, adjustedEndDate]
|
|
60
70
|
};
|
|
61
71
|
}
|
|
62
72
|
function calculateRangePreview(options) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mui/x-date-pickers-pro",
|
|
3
|
-
"version": "8.27.
|
|
3
|
+
"version": "8.27.2",
|
|
4
4
|
"author": "MUI Team",
|
|
5
5
|
"description": "The Pro plan edition of the MUI X Date and Time Picker components.",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE",
|
|
@@ -35,9 +35,9 @@
|
|
|
35
35
|
"clsx": "^2.1.1",
|
|
36
36
|
"prop-types": "^15.8.1",
|
|
37
37
|
"react-transition-group": "^4.4.5",
|
|
38
|
-
"@mui/x-date-pickers": "8.27.0",
|
|
39
38
|
"@mui/x-internals": "8.26.0",
|
|
40
|
-
"@mui/x-license": "8.26.0"
|
|
39
|
+
"@mui/x-license": "8.26.0",
|
|
40
|
+
"@mui/x-date-pickers": "8.27.2"
|
|
41
41
|
},
|
|
42
42
|
"peerDependencies": {
|
|
43
43
|
"@emotion/react": "^11.9.0",
|