@mui/x-internals 8.16.0 → 8.17.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 +108 -1
- package/ToolbarContext/ToolbarContext.d.ts +1 -1
- package/esm/ToolbarContext/ToolbarContext.d.ts +1 -1
- package/esm/store/createSelector.d.ts +2 -0
- package/esm/store/createSelector.js +29 -4
- package/package.json +1 -1
- package/store/createSelector.d.ts +2 -0
- package/store/createSelector.js +30 -5
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,113 @@
|
|
|
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.17.0
|
|
9
|
+
|
|
10
|
+
_Nov 5, 2025_
|
|
11
|
+
|
|
12
|
+
We'd like to extend a big thank you to the 13 contributors who made this release possible. Here are some highlights ✨:
|
|
13
|
+
|
|
14
|
+
- Add `colorGetter` prop to cartesian charts series
|
|
15
|
+
|
|
16
|
+
<img width="400" alt="Image" src="https://github.com/user-attachments/assets/d8b1263f-794e-4939-b17e-87350fdd1746" />
|
|
17
|
+
|
|
18
|
+
- 🌎 Add Catalan (ca-ES) locale on the Data Grid
|
|
19
|
+
- 🌎 Add Norwegian Bokmål (nb-NO) locale on the Charts
|
|
20
|
+
- 🐞 Bugfixes
|
|
21
|
+
- 📚 Documentation improvements
|
|
22
|
+
|
|
23
|
+
Special thanks go out to these community members for their valuable contributions:
|
|
24
|
+
@frncesc, @Methuselah96, @samuelwalk, @htollefsen
|
|
25
|
+
|
|
26
|
+
The following team members contributed to this release:
|
|
27
|
+
@alexfauquette, @bernardobelchior, @flaviendelangle, @Janpot, @JCQuintas, @mnajdova, @rita-codes, @arminmeh, @brijeshb42
|
|
28
|
+
|
|
29
|
+
### Data Grid
|
|
30
|
+
|
|
31
|
+
#### `@mui/x-data-grid@8.17.0`
|
|
32
|
+
|
|
33
|
+
- [DataGrid] Stop event propagation on data grid action buttons (GridActionsCellItem) (#19513) @Copilot
|
|
34
|
+
- [DataGrid] Update cell editable state if `editable` prop is updated in the column definition (#20147) @arminmeh
|
|
35
|
+
- [DataGrid] Wait for external model updates before resetting pagination after sort/filter (#20162) @arminmeh
|
|
36
|
+
- [l10n] Add Catalan (ca-ES) locale (#20154) @frncesc
|
|
37
|
+
- [l10n] Improve Arabic (ar-SD) locale (#20185) @samuelwalk
|
|
38
|
+
|
|
39
|
+
#### `@mui/x-data-grid-pro@8.17.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
40
|
+
|
|
41
|
+
Same changes as in `@mui/x-data-grid@8.17.0`.
|
|
42
|
+
|
|
43
|
+
#### `@mui/x-data-grid-premium@8.17.0` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
44
|
+
|
|
45
|
+
Same changes as in `@mui/x-data-grid-pro@8.17.0`.
|
|
46
|
+
|
|
47
|
+
### Date and Time Pickers
|
|
48
|
+
|
|
49
|
+
#### `@mui/x-date-pickers@8.17.0`
|
|
50
|
+
|
|
51
|
+
Internal changes.
|
|
52
|
+
|
|
53
|
+
#### `@mui/x-date-pickers-pro@8.17.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
54
|
+
|
|
55
|
+
Same changes as in `@mui/x-date-pickers@8.17.0`.
|
|
56
|
+
|
|
57
|
+
### Charts
|
|
58
|
+
|
|
59
|
+
#### `@mui/x-charts@8.17.0`
|
|
60
|
+
|
|
61
|
+
- [charts] Add `barLabel` to bar series. Deprecate `barLabel` in `BarPlot`. (#20184) @bernardobelchior
|
|
62
|
+
- [charts] Add series color callback (#20084) @bernardobelchior
|
|
63
|
+
- [charts] Expose `ChartsSurface` classes (#20180) @bernardobelchior
|
|
64
|
+
- [charts] Fix chart cut off when inside `overflow: scroll` container (#20182) @bernardobelchior
|
|
65
|
+
- [charts] Fix tick label overflow on multiple axes and series demo (#20152) @bernardobelchior
|
|
66
|
+
- [charts] Organize series config (#20155) @bernardobelchior
|
|
67
|
+
- [charts] Use selectors from `@mui/x-internals` (#20052) @alexfauquette
|
|
68
|
+
- [charts] Use store from `@mui/x-internals` (#20121) @alexfauquette
|
|
69
|
+
- [charts] Add `useDataset` hook (#20205) @JCQuintas
|
|
70
|
+
- [l10n] Add Norwegian Bokmål (nb-NO) locale (#20197) @htollefsen
|
|
71
|
+
|
|
72
|
+
#### `@mui/x-charts-pro@8.17.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
73
|
+
|
|
74
|
+
Same changes as in `@mui/x-charts@8.17.0`, plus:
|
|
75
|
+
|
|
76
|
+
- [charts-pro] Fix zoom pan issue when controlled (#20163) @JCQuintas
|
|
77
|
+
|
|
78
|
+
#### `@mui/x-charts-premium@8.17.0` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
79
|
+
|
|
80
|
+
Same changes as in `@mui/x-charts-pro@8.17.0`.
|
|
81
|
+
|
|
82
|
+
### Tree View
|
|
83
|
+
|
|
84
|
+
#### `@mui/x-tree-view@8.17.0`
|
|
85
|
+
|
|
86
|
+
- [tree view] Accept read only arrays in `expandedItems` prop (#20181) @Methuselah96
|
|
87
|
+
- [tree view] Use `aria-checked` instead of `aria-selected` on items (#19851) @flaviendelangle
|
|
88
|
+
|
|
89
|
+
#### `@mui/x-tree-view-pro@8.17.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
90
|
+
|
|
91
|
+
Same changes as in `@mui/x-tree-view@8.17.0`.
|
|
92
|
+
|
|
93
|
+
### Codemod
|
|
94
|
+
|
|
95
|
+
#### `@mui/x-codemod@8.17.0`
|
|
96
|
+
|
|
97
|
+
Internal changes.
|
|
98
|
+
|
|
99
|
+
### Docs
|
|
100
|
+
|
|
101
|
+
- [docs] Fix focus issues in the action column demo (#20178) @arminmeh
|
|
102
|
+
- [docs] Remove hidden Tree View headless page (#20119) @flaviendelangle
|
|
103
|
+
- [docs] Fix some external redirects (#20211) @Janpot
|
|
104
|
+
|
|
105
|
+
### Core
|
|
106
|
+
|
|
107
|
+
- [code-infra] Fix cci job timeout due to buffered test output (#20193) @Janpot
|
|
108
|
+
- [code-infra] Fix publish workflow (#20140) @bernardobelchior
|
|
109
|
+
- [code-infra] Increase JSDOM test parallelism (#20179) @Janpot
|
|
110
|
+
- [code-infra] Remove React import requirement for jsx (#20144) @brijeshb42
|
|
111
|
+
- [code-infra] Replace `getInitialProps` with `getStaticProps` (#20192) @Janpot
|
|
112
|
+
- [code-infra] git-ignore next-env.d.ts (#20177) @Janpot
|
|
113
|
+
- [code-infra] Stabilize screenshot testing (#19868) @Janpot
|
|
114
|
+
|
|
8
115
|
## 8.16.0
|
|
9
116
|
|
|
10
117
|
_Oct 29, 2025_
|
|
@@ -39,7 +146,7 @@ Same changes as in `@mui/x-data-grid@8.16.0`, plus:
|
|
|
39
146
|
Same changes as in `@mui/x-data-grid-pro@8.16.0`, plus:
|
|
40
147
|
|
|
41
148
|
- [DataGridPremium] Export and restore chart integration state (#20079) @arminmeh
|
|
42
|
-
- [DataGridPremium] Fix grouping column `valueFormatter()` crash
|
|
149
|
+
- [DataGridPremium] Fix grouping column `valueFormatter()` crash (#20070) @sai6855
|
|
43
150
|
- [DataGridPremium] Refetch aggregation data after row update with server-side aggregation (#20039) @arminmeh
|
|
44
151
|
|
|
45
152
|
### Date and Time Pickers
|
|
@@ -11,4 +11,4 @@ export declare const ToolbarContext: React.Context<ToolbarContextValue | undefin
|
|
|
11
11
|
export declare function useToolbarContext(): ToolbarContextValue;
|
|
12
12
|
export declare function ToolbarContextProvider({
|
|
13
13
|
children
|
|
14
|
-
}: React.PropsWithChildren):
|
|
14
|
+
}: React.PropsWithChildren): import("react/jsx-runtime").JSX.Element;
|
|
@@ -11,4 +11,4 @@ export declare const ToolbarContext: React.Context<ToolbarContextValue | undefin
|
|
|
11
11
|
export declare function useToolbarContext(): ToolbarContextValue;
|
|
12
12
|
export declare function ToolbarContextProvider({
|
|
13
13
|
children
|
|
14
|
-
}: React.PropsWithChildren):
|
|
14
|
+
}: React.PropsWithChildren): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import { OverrideMemoizeOptions, UnknownMemoizer } from 'reselect';
|
|
1
2
|
import type { CreateSelectorFunction } from "./createSelectorType.js";
|
|
2
3
|
export type { CreateSelectorFunction } from "./createSelectorType.js";
|
|
3
4
|
export declare const createSelector: CreateSelectorFunction;
|
|
5
|
+
export declare const createSelectorMemoizedWithOptions: (options?: OverrideMemoizeOptions<UnknownMemoizer>) => CreateSelectorFunction;
|
|
4
6
|
export declare const createSelectorMemoized: CreateSelectorFunction;
|
|
@@ -9,12 +9,33 @@ const reselectCreateSelector = createSelectorCreator({
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
/* eslint-disable id-denylist */
|
|
12
|
-
export const createSelector = (a, b, c, d, e, f, ...other) => {
|
|
12
|
+
export const createSelector = (a, b, c, d, e, f, g, h, ...other) => {
|
|
13
13
|
if (other.length > 0) {
|
|
14
14
|
throw new Error('Unsupported number of selectors');
|
|
15
15
|
}
|
|
16
16
|
let selector;
|
|
17
|
-
if (a && b && c && d && e && f) {
|
|
17
|
+
if (a && b && c && d && e && f && g && h) {
|
|
18
|
+
selector = (state, a1, a2, a3) => {
|
|
19
|
+
const va = a(state, a1, a2, a3);
|
|
20
|
+
const vb = b(state, a1, a2, a3);
|
|
21
|
+
const vc = c(state, a1, a2, a3);
|
|
22
|
+
const vd = d(state, a1, a2, a3);
|
|
23
|
+
const ve = e(state, a1, a2, a3);
|
|
24
|
+
const vf = f(state, a1, a2, a3);
|
|
25
|
+
const vg = g(state, a1, a2, a3);
|
|
26
|
+
return h(va, vb, vc, vd, ve, vf, vg, a1, a2, a3);
|
|
27
|
+
};
|
|
28
|
+
} else if (a && b && c && d && e && f && g) {
|
|
29
|
+
selector = (state, a1, a2, a3) => {
|
|
30
|
+
const va = a(state, a1, a2, a3);
|
|
31
|
+
const vb = b(state, a1, a2, a3);
|
|
32
|
+
const vc = c(state, a1, a2, a3);
|
|
33
|
+
const vd = d(state, a1, a2, a3);
|
|
34
|
+
const ve = e(state, a1, a2, a3);
|
|
35
|
+
const vf = f(state, a1, a2, a3);
|
|
36
|
+
return g(va, vb, vc, vd, ve, vf, a1, a2, a3);
|
|
37
|
+
};
|
|
38
|
+
} else if (a && b && c && d && e && f) {
|
|
18
39
|
selector = (state, a1, a2, a3) => {
|
|
19
40
|
const va = a(state, a1, a2, a3);
|
|
20
41
|
const vb = b(state, a1, a2, a3);
|
|
@@ -58,7 +79,7 @@ export const createSelector = (a, b, c, d, e, f, ...other) => {
|
|
|
58
79
|
};
|
|
59
80
|
/* eslint-enable id-denylist */
|
|
60
81
|
|
|
61
|
-
export const
|
|
82
|
+
export const createSelectorMemoizedWithOptions = options => (...inputs) => {
|
|
62
83
|
const cache = new WeakMap();
|
|
63
84
|
let nextCacheId = 1;
|
|
64
85
|
const combiner = inputs[inputs.length - 1];
|
|
@@ -105,6 +126,9 @@ export const createSelectorMemoized = (...inputs) => {
|
|
|
105
126
|
default:
|
|
106
127
|
throw new Error('Unsupported number of arguments');
|
|
107
128
|
}
|
|
129
|
+
if (options) {
|
|
130
|
+
reselectArgs = [...reselectArgs, options];
|
|
131
|
+
}
|
|
108
132
|
fn = reselectCreateSelector(...reselectArgs);
|
|
109
133
|
fn.selectorArgs = selectorArgs;
|
|
110
134
|
cache.set(cacheKey, fn);
|
|
@@ -136,4 +160,5 @@ export const createSelectorMemoized = (...inputs) => {
|
|
|
136
160
|
}
|
|
137
161
|
};
|
|
138
162
|
return selector;
|
|
139
|
-
};
|
|
163
|
+
};
|
|
164
|
+
export const createSelectorMemoized = createSelectorMemoizedWithOptions();
|
package/package.json
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import { OverrideMemoizeOptions, UnknownMemoizer } from 'reselect';
|
|
1
2
|
import type { CreateSelectorFunction } from "./createSelectorType.js";
|
|
2
3
|
export type { CreateSelectorFunction } from "./createSelectorType.js";
|
|
3
4
|
export declare const createSelector: CreateSelectorFunction;
|
|
5
|
+
export declare const createSelectorMemoizedWithOptions: (options?: OverrideMemoizeOptions<UnknownMemoizer>) => CreateSelectorFunction;
|
|
4
6
|
export declare const createSelectorMemoized: CreateSelectorFunction;
|
package/store/createSelector.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.createSelectorMemoized = exports.createSelector = void 0;
|
|
6
|
+
exports.createSelectorMemoizedWithOptions = exports.createSelectorMemoized = exports.createSelector = void 0;
|
|
7
7
|
var _reselect = require("reselect");
|
|
8
8
|
/* eslint-disable no-underscore-dangle */ // __cacheKey__
|
|
9
9
|
|
|
@@ -15,12 +15,33 @@ const reselectCreateSelector = (0, _reselect.createSelectorCreator)({
|
|
|
15
15
|
}
|
|
16
16
|
});
|
|
17
17
|
/* eslint-disable id-denylist */
|
|
18
|
-
const createSelector = (a, b, c, d, e, f, ...other) => {
|
|
18
|
+
const createSelector = (a, b, c, d, e, f, g, h, ...other) => {
|
|
19
19
|
if (other.length > 0) {
|
|
20
20
|
throw new Error('Unsupported number of selectors');
|
|
21
21
|
}
|
|
22
22
|
let selector;
|
|
23
|
-
if (a && b && c && d && e && f) {
|
|
23
|
+
if (a && b && c && d && e && f && g && h) {
|
|
24
|
+
selector = (state, a1, a2, a3) => {
|
|
25
|
+
const va = a(state, a1, a2, a3);
|
|
26
|
+
const vb = b(state, a1, a2, a3);
|
|
27
|
+
const vc = c(state, a1, a2, a3);
|
|
28
|
+
const vd = d(state, a1, a2, a3);
|
|
29
|
+
const ve = e(state, a1, a2, a3);
|
|
30
|
+
const vf = f(state, a1, a2, a3);
|
|
31
|
+
const vg = g(state, a1, a2, a3);
|
|
32
|
+
return h(va, vb, vc, vd, ve, vf, vg, a1, a2, a3);
|
|
33
|
+
};
|
|
34
|
+
} else if (a && b && c && d && e && f && g) {
|
|
35
|
+
selector = (state, a1, a2, a3) => {
|
|
36
|
+
const va = a(state, a1, a2, a3);
|
|
37
|
+
const vb = b(state, a1, a2, a3);
|
|
38
|
+
const vc = c(state, a1, a2, a3);
|
|
39
|
+
const vd = d(state, a1, a2, a3);
|
|
40
|
+
const ve = e(state, a1, a2, a3);
|
|
41
|
+
const vf = f(state, a1, a2, a3);
|
|
42
|
+
return g(va, vb, vc, vd, ve, vf, a1, a2, a3);
|
|
43
|
+
};
|
|
44
|
+
} else if (a && b && c && d && e && f) {
|
|
24
45
|
selector = (state, a1, a2, a3) => {
|
|
25
46
|
const va = a(state, a1, a2, a3);
|
|
26
47
|
const vb = b(state, a1, a2, a3);
|
|
@@ -64,7 +85,7 @@ const createSelector = (a, b, c, d, e, f, ...other) => {
|
|
|
64
85
|
};
|
|
65
86
|
/* eslint-enable id-denylist */
|
|
66
87
|
exports.createSelector = createSelector;
|
|
67
|
-
const
|
|
88
|
+
const createSelectorMemoizedWithOptions = options => (...inputs) => {
|
|
68
89
|
const cache = new WeakMap();
|
|
69
90
|
let nextCacheId = 1;
|
|
70
91
|
const combiner = inputs[inputs.length - 1];
|
|
@@ -111,6 +132,9 @@ const createSelectorMemoized = (...inputs) => {
|
|
|
111
132
|
default:
|
|
112
133
|
throw new Error('Unsupported number of arguments');
|
|
113
134
|
}
|
|
135
|
+
if (options) {
|
|
136
|
+
reselectArgs = [...reselectArgs, options];
|
|
137
|
+
}
|
|
114
138
|
fn = reselectCreateSelector(...reselectArgs);
|
|
115
139
|
fn.selectorArgs = selectorArgs;
|
|
116
140
|
cache.set(cacheKey, fn);
|
|
@@ -143,4 +167,5 @@ const createSelectorMemoized = (...inputs) => {
|
|
|
143
167
|
};
|
|
144
168
|
return selector;
|
|
145
169
|
};
|
|
146
|
-
exports.
|
|
170
|
+
exports.createSelectorMemoizedWithOptions = createSelectorMemoizedWithOptions;
|
|
171
|
+
const createSelectorMemoized = exports.createSelectorMemoized = createSelectorMemoizedWithOptions();
|