@mui/x-date-pickers 7.24.0 → 7.25.0
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 +148 -0
- package/PickersCalendarHeader/PickersCalendarHeader.js +2 -0
- package/index.js +1 -1
- package/internals/hooks/useField/useField.js +5 -0
- package/internals/hooks/useField/useFieldV6TextField.js +3 -0
- package/internals/hooks/useField/useFieldV7TextField.js +3 -0
- package/modern/PickersCalendarHeader/PickersCalendarHeader.js +2 -0
- package/modern/index.js +1 -1
- package/modern/internals/hooks/useField/useField.js +5 -0
- package/modern/internals/hooks/useField/useFieldV6TextField.js +3 -0
- package/modern/internals/hooks/useField/useFieldV7TextField.js +3 -0
- package/node/PickersCalendarHeader/PickersCalendarHeader.js +2 -0
- package/node/index.js +1 -1
- package/node/internals/hooks/useField/useField.js +5 -0
- package/node/internals/hooks/useField/useFieldV6TextField.js +3 -0
- package/node/internals/hooks/useField/useFieldV7TextField.js +3 -0
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,154 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## 7.25.0
|
|
7
|
+
|
|
8
|
+
_Jan 31, 2025_
|
|
9
|
+
|
|
10
|
+
We'd like to offer a big thanks to the 5 contributors who made this release possible. Here are some highlights ✨:
|
|
11
|
+
|
|
12
|
+
- 🐞 Bugfixes
|
|
13
|
+
|
|
14
|
+
Special thanks go out to the community contributors who have helped make this release possible:
|
|
15
|
+
@k-rajat19, @lauri865.
|
|
16
|
+
Following are all team members who have contributed to this release:
|
|
17
|
+
@KenanYusuf, @MBilalShafi, @arminmeh.
|
|
18
|
+
|
|
19
|
+
<!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
|
|
20
|
+
|
|
21
|
+
### Data Grid
|
|
22
|
+
|
|
23
|
+
#### `@mui/x-data-grid@7.25.0`
|
|
24
|
+
|
|
25
|
+
- [DataGrid] Fix `renderContext` calculation with scroll bounce / over-scroll (#16368) @lauri865
|
|
26
|
+
- [DataGrid] Refactor row state propagation (#16351) @lauri865
|
|
27
|
+
- [DataGrid] Add missing style overrides (#16272) (#16358) @KenanYusuf
|
|
28
|
+
- [DataGrid] Fix header filters keyboard navigation when there are no rows (#16369) @k-rajat19
|
|
29
|
+
- [DataGrid] Fix order of `onClick` prop on toolbar buttons (#16364) @KenanYusuf
|
|
30
|
+
- [DataGrid] Improve test coverage of server side data source (#15988) @MBilalShafi
|
|
31
|
+
- [DataGrid] Remove outdated warning (#16370) @MBilalShafi
|
|
32
|
+
- [DataGrid] Respect width of `iconContainer` during autosizing (#16409) @michelengelen
|
|
33
|
+
|
|
34
|
+
#### `@mui/x-data-grid-pro@7.25.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
35
|
+
|
|
36
|
+
Same changes as in `@mui/x-data-grid@7.25.0`, plus:
|
|
37
|
+
|
|
38
|
+
- [DataGridPro] Fix the return type of `useGridApiRef` for Pro and Premium packages on React < 19 (#16348) @arminmeh
|
|
39
|
+
- [DataGridPro] Fetch new rows only once when multiple models are changed in one cycle (#16382) @arminmeh
|
|
40
|
+
|
|
41
|
+
#### `@mui/x-data-grid-premium@7.25.0` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
42
|
+
|
|
43
|
+
Same changes as in `@mui/x-data-grid-pro@7.25.0`.
|
|
44
|
+
|
|
45
|
+
### Date and Time Pickers
|
|
46
|
+
|
|
47
|
+
#### `@mui/x-date-pickers@7.25.0`
|
|
48
|
+
|
|
49
|
+
Internal changes.
|
|
50
|
+
|
|
51
|
+
#### `@mui/x-date-pickers-pro@7.25.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
52
|
+
|
|
53
|
+
Same changes as in `@mui/x-date-pickers@7.25.0`.
|
|
54
|
+
|
|
55
|
+
### Charts
|
|
56
|
+
|
|
57
|
+
#### `@mui/x-charts@7.25.0`
|
|
58
|
+
|
|
59
|
+
Internal changes.
|
|
60
|
+
|
|
61
|
+
#### `@mui/x-charts-pro@7.25.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
62
|
+
|
|
63
|
+
Same changes as in `@mui/x-charts@7.25.0`.
|
|
64
|
+
|
|
65
|
+
### Tree View
|
|
66
|
+
|
|
67
|
+
#### `@mui/x-tree-view@7.25.0`
|
|
68
|
+
|
|
69
|
+
Internal changes.
|
|
70
|
+
|
|
71
|
+
#### `@mui/x-tree-view-pro@7.25.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
72
|
+
|
|
73
|
+
Same changes as in `@mui/x-tree-view@7.25.0`.
|
|
74
|
+
|
|
75
|
+
### Docs
|
|
76
|
+
|
|
77
|
+
- [docs] Improve release documentation (#16322) @MBilalShafi
|
|
78
|
+
|
|
79
|
+
### Core
|
|
80
|
+
|
|
81
|
+
- [test] Fix flaky data source tests in DataGrid (#16382) @lauri865
|
|
82
|
+
|
|
83
|
+
## 7.24.1
|
|
84
|
+
|
|
85
|
+
_Jan 24, 2025_
|
|
86
|
+
|
|
87
|
+
We'd like to offer a big thanks to the 7 contributors who made this release possible. Here are some highlights ✨:
|
|
88
|
+
|
|
89
|
+
- 🐞 Bugfixes
|
|
90
|
+
- 🌍 Improve Persian (fa-IR) locale on the Data Grid
|
|
91
|
+
|
|
92
|
+
Special thanks go out to the community contributors who have helped make this release possible:
|
|
93
|
+
@mostafaRoosta74, @lauri865.
|
|
94
|
+
Following are all team members who have contributed to this release:
|
|
95
|
+
@alexfauquette, @JCQuintas, @cherniavskii, @LukasTy, @arminmeh.
|
|
96
|
+
|
|
97
|
+
### Data Grid
|
|
98
|
+
|
|
99
|
+
#### `@mui/x-data-grid@7.24.1`
|
|
100
|
+
|
|
101
|
+
- [DataGrid] Fix toggling preference panel from toolbar (#16276) @lauri865
|
|
102
|
+
- [DataGrid] Only try to mount filter button if there are filters present (#16269) @lauri865
|
|
103
|
+
- [DataGrid] Revert `apiRef` to be `MutableRefObject` for React versions < 19 (#16320) @arminmeh
|
|
104
|
+
- [l10n] Improve Persian (fa-IR) locale (#15964) @mostafaRoosta74
|
|
105
|
+
|
|
106
|
+
#### `@mui/x-data-grid-pro@7.24.1` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
107
|
+
|
|
108
|
+
Same changes as in `@mui/x-data-grid@7.24.1`.
|
|
109
|
+
|
|
110
|
+
#### `@mui/x-data-grid-premium@7.24.1` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
111
|
+
|
|
112
|
+
Same changes as in `@mui/x-data-grid-pro@7.24.1`.
|
|
113
|
+
|
|
114
|
+
### Date and Time Pickers
|
|
115
|
+
|
|
116
|
+
#### `@mui/x-date-pickers@7.24.1`
|
|
117
|
+
|
|
118
|
+
- [fields] Reset `all` selected state on section edit (#16232) @LukasTy
|
|
119
|
+
|
|
120
|
+
#### `@mui/x-date-pickers-pro@7.24.1` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
121
|
+
|
|
122
|
+
Same changes as in `@mui/x-date-pickers@7.24.1`.
|
|
123
|
+
|
|
124
|
+
### Charts
|
|
125
|
+
|
|
126
|
+
#### `@mui/x-charts@7.24.1`
|
|
127
|
+
|
|
128
|
+
- [charts] Handle case where gradient stop `offset` could be `Infinite` (@JCQuintas) (#16309) @JCQuintas
|
|
129
|
+
|
|
130
|
+
#### `@mui/x-charts-pro@7.24.1` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
131
|
+
|
|
132
|
+
Same changes as in `@mui/x-charts@7.24.1`.
|
|
133
|
+
|
|
134
|
+
### Tree View
|
|
135
|
+
|
|
136
|
+
#### `@mui/x-tree-view@7.24.1`
|
|
137
|
+
|
|
138
|
+
Internal changes.
|
|
139
|
+
|
|
140
|
+
#### `@mui/x-tree-view-pro@7.24.1` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
141
|
+
|
|
142
|
+
Same changes as in `@mui/x-tree-view@7.24.1`.
|
|
143
|
+
|
|
144
|
+
### Docs
|
|
145
|
+
|
|
146
|
+
- [docs] Fix `domainLimit` definition (#16271) @alexfauquette
|
|
147
|
+
|
|
148
|
+
### Core
|
|
149
|
+
|
|
150
|
+
- [core] Make `@mui/x-internals` a dependency of `@mui/x-license` (#16265) @alexfauquette
|
|
151
|
+
- [test] Fix flaky column pinning tests (#16228) @cherniavskii
|
|
152
|
+
- [test] Fix flaky tests (#16264) @lauri865
|
|
153
|
+
|
|
6
154
|
## 7.24.0
|
|
7
155
|
|
|
8
156
|
_Jan 17, 2025_
|
|
@@ -214,6 +214,8 @@ const PickersCalendarHeader = /*#__PURE__*/React.forwardRef(function PickersCale
|
|
|
214
214
|
}))]
|
|
215
215
|
}), /*#__PURE__*/_jsx(Fade, {
|
|
216
216
|
in: view === 'day',
|
|
217
|
+
appear: !reduceAnimations,
|
|
218
|
+
enter: !reduceAnimations,
|
|
217
219
|
children: /*#__PURE__*/_jsx(PickersArrowSwitcher, {
|
|
218
220
|
slots: slots,
|
|
219
221
|
slotProps: slotProps,
|
package/index.js
CHANGED
|
@@ -141,6 +141,11 @@ export const useField = params => {
|
|
|
141
141
|
if (readOnly || activeSectionIndex == null) {
|
|
142
142
|
break;
|
|
143
143
|
}
|
|
144
|
+
|
|
145
|
+
// if all sections are selected, mark the currently editing one as selected
|
|
146
|
+
if (parsedSelectedSections === 'all') {
|
|
147
|
+
setSelectedSections(activeSectionIndex);
|
|
148
|
+
}
|
|
144
149
|
const activeSection = state.sections[activeSectionIndex];
|
|
145
150
|
const activeDateManager = fieldValueManager.getActiveDateManager(utils, state, activeSection);
|
|
146
151
|
const newSectionValue = adjustSectionValue(utils, timezone, activeSection, event.key, sectionsValueBoundaries, localizedDigits, activeDateManager.date, {
|
|
@@ -237,6 +237,9 @@ export const useFieldV6TextField = params => {
|
|
|
237
237
|
const shouldUseEventData = eventData && eventData.length > 1;
|
|
238
238
|
const valueStr = shouldUseEventData ? eventData : targetValue;
|
|
239
239
|
const cleanValueStr = cleanString(valueStr);
|
|
240
|
+
if (parsedSelectedSections === 'all') {
|
|
241
|
+
setSelectedSections(activeSectionIndex);
|
|
242
|
+
}
|
|
240
243
|
|
|
241
244
|
// If no section is selected or eventData should be used, we just try to parse the new value
|
|
242
245
|
// This line is mostly triggered by imperative code / application tests.
|
|
@@ -176,6 +176,9 @@ export const useFieldV7TextField = params => {
|
|
|
176
176
|
} else if (keyPressed.length > 1) {
|
|
177
177
|
updateValueFromValueStr(keyPressed);
|
|
178
178
|
} else {
|
|
179
|
+
if (parsedSelectedSections === 'all') {
|
|
180
|
+
setSelectedSections(0);
|
|
181
|
+
}
|
|
179
182
|
applyCharacterEditing({
|
|
180
183
|
keyPressed,
|
|
181
184
|
sectionIndex: 0
|
|
@@ -214,6 +214,8 @@ const PickersCalendarHeader = /*#__PURE__*/React.forwardRef(function PickersCale
|
|
|
214
214
|
}))]
|
|
215
215
|
}), /*#__PURE__*/_jsx(Fade, {
|
|
216
216
|
in: view === 'day',
|
|
217
|
+
appear: !reduceAnimations,
|
|
218
|
+
enter: !reduceAnimations,
|
|
217
219
|
children: /*#__PURE__*/_jsx(PickersArrowSwitcher, {
|
|
218
220
|
slots: slots,
|
|
219
221
|
slotProps: slotProps,
|
package/modern/index.js
CHANGED
|
@@ -141,6 +141,11 @@ export const useField = params => {
|
|
|
141
141
|
if (readOnly || activeSectionIndex == null) {
|
|
142
142
|
break;
|
|
143
143
|
}
|
|
144
|
+
|
|
145
|
+
// if all sections are selected, mark the currently editing one as selected
|
|
146
|
+
if (parsedSelectedSections === 'all') {
|
|
147
|
+
setSelectedSections(activeSectionIndex);
|
|
148
|
+
}
|
|
144
149
|
const activeSection = state.sections[activeSectionIndex];
|
|
145
150
|
const activeDateManager = fieldValueManager.getActiveDateManager(utils, state, activeSection);
|
|
146
151
|
const newSectionValue = adjustSectionValue(utils, timezone, activeSection, event.key, sectionsValueBoundaries, localizedDigits, activeDateManager.date, {
|
|
@@ -237,6 +237,9 @@ export const useFieldV6TextField = params => {
|
|
|
237
237
|
const shouldUseEventData = eventData && eventData.length > 1;
|
|
238
238
|
const valueStr = shouldUseEventData ? eventData : targetValue;
|
|
239
239
|
const cleanValueStr = cleanString(valueStr);
|
|
240
|
+
if (parsedSelectedSections === 'all') {
|
|
241
|
+
setSelectedSections(activeSectionIndex);
|
|
242
|
+
}
|
|
240
243
|
|
|
241
244
|
// If no section is selected or eventData should be used, we just try to parse the new value
|
|
242
245
|
// This line is mostly triggered by imperative code / application tests.
|
|
@@ -176,6 +176,9 @@ export const useFieldV7TextField = params => {
|
|
|
176
176
|
} else if (keyPressed.length > 1) {
|
|
177
177
|
updateValueFromValueStr(keyPressed);
|
|
178
178
|
} else {
|
|
179
|
+
if (parsedSelectedSections === 'all') {
|
|
180
|
+
setSelectedSections(0);
|
|
181
|
+
}
|
|
179
182
|
applyCharacterEditing({
|
|
180
183
|
keyPressed,
|
|
181
184
|
sectionIndex: 0
|
|
@@ -221,6 +221,8 @@ const PickersCalendarHeader = exports.PickersCalendarHeader = /*#__PURE__*/React
|
|
|
221
221
|
}))]
|
|
222
222
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Fade.default, {
|
|
223
223
|
in: view === 'day',
|
|
224
|
+
appear: !reduceAnimations,
|
|
225
|
+
enter: !reduceAnimations,
|
|
224
226
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_PickersArrowSwitcher.PickersArrowSwitcher, {
|
|
225
227
|
slots: slots,
|
|
226
228
|
slotProps: slotProps,
|
package/node/index.js
CHANGED
|
@@ -149,6 +149,11 @@ const useField = params => {
|
|
|
149
149
|
if (readOnly || activeSectionIndex == null) {
|
|
150
150
|
break;
|
|
151
151
|
}
|
|
152
|
+
|
|
153
|
+
// if all sections are selected, mark the currently editing one as selected
|
|
154
|
+
if (parsedSelectedSections === 'all') {
|
|
155
|
+
setSelectedSections(activeSectionIndex);
|
|
156
|
+
}
|
|
152
157
|
const activeSection = state.sections[activeSectionIndex];
|
|
153
158
|
const activeDateManager = fieldValueManager.getActiveDateManager(utils, state, activeSection);
|
|
154
159
|
const newSectionValue = (0, _useField.adjustSectionValue)(utils, timezone, activeSection, event.key, sectionsValueBoundaries, localizedDigits, activeDateManager.date, {
|
|
@@ -246,6 +246,9 @@ const useFieldV6TextField = params => {
|
|
|
246
246
|
const shouldUseEventData = eventData && eventData.length > 1;
|
|
247
247
|
const valueStr = shouldUseEventData ? eventData : targetValue;
|
|
248
248
|
const cleanValueStr = cleanString(valueStr);
|
|
249
|
+
if (parsedSelectedSections === 'all') {
|
|
250
|
+
setSelectedSections(activeSectionIndex);
|
|
251
|
+
}
|
|
249
252
|
|
|
250
253
|
// If no section is selected or eventData should be used, we just try to parse the new value
|
|
251
254
|
// This line is mostly triggered by imperative code / application tests.
|
|
@@ -184,6 +184,9 @@ const useFieldV7TextField = params => {
|
|
|
184
184
|
} else if (keyPressed.length > 1) {
|
|
185
185
|
updateValueFromValueStr(keyPressed);
|
|
186
186
|
} else {
|
|
187
|
+
if (parsedSelectedSections === 'all') {
|
|
188
|
+
setSelectedSections(0);
|
|
189
|
+
}
|
|
187
190
|
applyCharacterEditing({
|
|
188
191
|
keyPressed,
|
|
189
192
|
sectionIndex: 0
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mui/x-date-pickers",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.25.0",
|
|
4
4
|
"description": "The community edition of the Date and Time Picker components (MUI X).",
|
|
5
5
|
"author": "MUI Team",
|
|
6
6
|
"main": "./node/index.js",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"clsx": "^2.1.1",
|
|
42
42
|
"prop-types": "^15.8.1",
|
|
43
43
|
"react-transition-group": "^4.4.5",
|
|
44
|
-
"@mui/x-internals": "7.
|
|
44
|
+
"@mui/x-internals": "7.25.0"
|
|
45
45
|
},
|
|
46
46
|
"peerDependencies": {
|
|
47
47
|
"@emotion/react": "^11.9.0",
|