@mui/x-tree-view 7.0.0-beta.6 → 7.0.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 +311 -12
- package/README.md +1 -1
- package/RichTreeView/RichTreeView.js +34 -36
- package/RichTreeView/RichTreeView.types.d.ts +3 -2
- package/SimpleTreeView/SimpleTreeView.js +25 -26
- package/TreeItem/TreeItem.js +94 -82
- package/TreeItem/TreeItem.types.d.ts +13 -11
- package/TreeItem/TreeItemContent.d.ts +7 -7
- package/TreeItem/TreeItemContent.js +10 -10
- package/TreeItem/useTreeItemState.d.ts +1 -1
- package/TreeItem/useTreeItemState.js +13 -13
- package/TreeItem2/TreeItem2.d.ts +18 -0
- package/TreeItem2/TreeItem2.js +300 -0
- package/TreeItem2/TreeItem2.types.d.ts +64 -0
- package/TreeItem2/TreeItem2.types.js +1 -0
- package/TreeItem2/index.d.ts +2 -0
- package/TreeItem2/index.js +1 -0
- package/TreeItem2/package.json +6 -0
- package/TreeItem2Icon/TreeItem2Icon.d.ts +7 -0
- package/TreeItem2Icon/TreeItem2Icon.js +67 -0
- package/TreeItem2Icon/TreeItem2Icon.types.d.ts +40 -0
- package/TreeItem2Icon/TreeItem2Icon.types.js +1 -0
- package/TreeItem2Icon/index.d.ts +2 -0
- package/TreeItem2Icon/index.js +1 -0
- package/TreeItem2Icon/package.json +6 -0
- package/TreeItem2Provider/TreeItem2Provider.d.ts +7 -0
- package/TreeItem2Provider/TreeItem2Provider.js +24 -0
- package/TreeItem2Provider/TreeItem2Provider.types.d.ts +6 -0
- package/TreeItem2Provider/TreeItem2Provider.types.js +1 -0
- package/TreeItem2Provider/index.d.ts +2 -0
- package/TreeItem2Provider/index.js +1 -0
- package/TreeItem2Provider/package.json +6 -0
- package/TreeView/TreeView.d.ts +1 -1
- package/TreeView/TreeView.js +23 -23
- package/hooks/index.d.ts +1 -0
- package/hooks/index.js +2 -1
- package/hooks/useTreeItem2Utils/index.d.ts +1 -0
- package/hooks/useTreeItem2Utils/index.js +1 -0
- package/hooks/useTreeItem2Utils/useTreeItem2Utils.d.ts +15 -0
- package/hooks/useTreeItem2Utils/useTreeItem2Utils.js +61 -0
- package/index.d.ts +5 -1
- package/index.js +9 -2
- package/internals/TreeViewProvider/TreeViewContext.d.ts +3 -1
- package/internals/TreeViewProvider/TreeViewProvider.types.d.ts +4 -2
- package/internals/hooks/useInstanceEventHandler.js +5 -10
- package/internals/hooks/useLazyRef.d.ts +1 -2
- package/internals/hooks/useLazyRef.js +1 -11
- package/internals/hooks/useOnMount.d.ts +1 -2
- package/internals/hooks/useOnMount.js +1 -7
- package/internals/hooks/useTimeout.d.ts +1 -11
- package/internals/hooks/useTimeout.js +1 -36
- package/internals/models/plugin.d.ts +19 -16
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +31 -38
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +14 -14
- package/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +67 -51
- package/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +9 -8
- package/internals/plugins/useTreeViewId/useTreeViewId.js +1 -1
- package/internals/plugins/useTreeViewId/useTreeViewId.types.d.ts +1 -1
- package/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.js +30 -31
- package/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.types.d.ts +2 -2
- package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +75 -80
- package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +4 -1
- package/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +26 -31
- package/internals/plugins/useTreeViewNodes/useTreeViewNodes.types.d.ts +11 -11
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +47 -50
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +15 -15
- package/internals/useTreeView/useTreeView.js +28 -27
- package/internals/useTreeView/useTreeView.utils.d.ts +2 -2
- package/internals/useTreeView/useTreeView.utils.js +22 -22
- package/internals/utils/extractPluginParamsFromProps.js +2 -2
- package/internals/utils/utils.js +1 -0
- package/modern/RichTreeView/RichTreeView.js +29 -29
- package/modern/SimpleTreeView/SimpleTreeView.js +23 -23
- package/modern/TreeItem/TreeItem.js +83 -70
- package/modern/TreeItem/TreeItemContent.js +10 -10
- package/modern/TreeItem/useTreeItemState.js +13 -13
- package/modern/TreeItem2/TreeItem2.js +300 -0
- package/modern/TreeItem2/TreeItem2.types.js +1 -0
- package/modern/TreeItem2/index.js +1 -0
- package/modern/TreeItem2Icon/TreeItem2Icon.js +67 -0
- package/modern/TreeItem2Icon/TreeItem2Icon.types.js +1 -0
- package/modern/TreeItem2Icon/index.js +1 -0
- package/modern/TreeItem2Provider/TreeItem2Provider.js +24 -0
- package/modern/TreeItem2Provider/TreeItem2Provider.types.js +1 -0
- package/modern/TreeItem2Provider/index.js +1 -0
- package/modern/TreeView/TreeView.js +23 -23
- package/modern/hooks/index.js +2 -1
- package/modern/hooks/useTreeItem2Utils/index.js +1 -0
- package/modern/hooks/useTreeItem2Utils/useTreeItem2Utils.js +61 -0
- package/modern/index.js +9 -2
- package/modern/internals/hooks/useLazyRef.js +1 -11
- package/modern/internals/hooks/useOnMount.js +1 -7
- package/modern/internals/hooks/useTimeout.js +1 -36
- package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +29 -29
- package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +65 -46
- package/modern/internals/plugins/useTreeViewId/useTreeViewId.js +1 -1
- package/modern/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.js +30 -30
- package/modern/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +74 -77
- package/modern/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +21 -22
- package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +43 -43
- package/modern/internals/useTreeView/useTreeView.js +28 -27
- package/modern/internals/useTreeView/useTreeView.utils.js +22 -22
- package/modern/internals/utils/utils.js +1 -0
- package/modern/useTreeItem2/index.js +1 -0
- package/modern/useTreeItem2/useTreeItem2.js +146 -0
- package/modern/useTreeItem2/useTreeItem2.types.js +1 -0
- package/node/RichTreeView/RichTreeView.js +29 -29
- package/node/SimpleTreeView/SimpleTreeView.js +23 -23
- package/node/TreeItem/TreeItem.js +83 -70
- package/node/TreeItem/TreeItemContent.js +10 -10
- package/node/TreeItem/useTreeItemState.js +13 -13
- package/node/TreeItem2/TreeItem2.js +308 -0
- package/node/TreeItem2/TreeItem2.types.js +5 -0
- package/node/TreeItem2/index.js +42 -0
- package/node/TreeItem2Icon/TreeItem2Icon.js +75 -0
- package/node/TreeItem2Icon/TreeItem2Icon.types.js +5 -0
- package/node/TreeItem2Icon/index.js +12 -0
- package/node/TreeItem2Provider/TreeItem2Provider.js +30 -0
- package/node/TreeItem2Provider/TreeItem2Provider.types.js +5 -0
- package/node/TreeItem2Provider/index.js +12 -0
- package/node/TreeView/TreeView.js +23 -23
- package/node/hooks/index.js +8 -1
- package/node/hooks/useTreeItem2Utils/index.js +12 -0
- package/node/hooks/useTreeItem2Utils/useTreeItem2Utils.js +68 -0
- package/node/index.js +61 -13
- package/node/internals/hooks/useLazyRef.js +7 -13
- package/node/internals/hooks/useOnMount.js +8 -10
- package/node/internals/hooks/useTimeout.js +7 -37
- package/node/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +29 -29
- package/node/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +65 -46
- package/node/internals/plugins/useTreeViewId/useTreeViewId.js +1 -1
- package/node/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.js +30 -30
- package/node/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +74 -77
- package/node/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +21 -22
- package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +43 -43
- package/node/internals/useTreeView/useTreeView.js +28 -27
- package/node/internals/useTreeView/useTreeView.utils.js +22 -22
- package/node/internals/utils/utils.js +1 -0
- package/node/useTreeItem2/index.js +12 -0
- package/node/useTreeItem2/useTreeItem2.js +154 -0
- package/node/useTreeItem2/useTreeItem2.types.js +5 -0
- package/package.json +5 -5
- package/themeAugmentation/components.d.ts +5 -0
- package/themeAugmentation/overrides.d.ts +1 -0
- package/themeAugmentation/props.d.ts +2 -0
- package/useTreeItem2/index.d.ts +2 -0
- package/useTreeItem2/index.js +1 -0
- package/useTreeItem2/package.json +6 -0
- package/useTreeItem2/useTreeItem2.d.ts +2 -0
- package/useTreeItem2/useTreeItem2.js +146 -0
- package/useTreeItem2/useTreeItem2.types.d.ts +115 -0
- package/useTreeItem2/useTreeItem2.types.js +1 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,285 @@
|
|
|
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
|
+
## v7.0.0
|
|
7
|
+
|
|
8
|
+
_Mar 22, 2024_
|
|
9
|
+
|
|
10
|
+
We're excited to [announce the first v7 stable release](https://mui.com/blog/mui-x-v7/)! 🎉🚀
|
|
11
|
+
|
|
12
|
+
This is now the officially supported major version, where we'll keep rolling out new features, bug fixes, and improvements.
|
|
13
|
+
Migration guides are available with a complete list of the breaking changes:
|
|
14
|
+
|
|
15
|
+
- [Data Grid](https://mui.com/x/migration/migration-data-grid-v6/)
|
|
16
|
+
- [Date and Time Pickers](https://mui.com/x/migration/migration-pickers-v6/)
|
|
17
|
+
- [Tree View](https://mui.com/x/migration/migration-tree-view-v6/)
|
|
18
|
+
- [Charts](https://mui.com/x/migration/migration-charts-v6/)
|
|
19
|
+
|
|
20
|
+
We'd like to offer a big thanks to the 12 contributors who made this release possible. Here are some highlights ✨:
|
|
21
|
+
|
|
22
|
+
- 🚀 Improve the usage of custom `viewRenderers` on `DateTimePicker` (#12441) @LukasTy
|
|
23
|
+
- ✨ Set focus on the focused Tree Item instead of the Tree View (#12226) @flaviendelangle
|
|
24
|
+
- 🕹️ Support controlled `density` for the Data Grid (#12332) @MBilalShafi
|
|
25
|
+
- 🎁 Dynamic virtualization range for the Data Grid (#12353) @romgrk
|
|
26
|
+
- 🐞 Bugfixes
|
|
27
|
+
- 📚 Documentation improvements
|
|
28
|
+
|
|
29
|
+
### Data Grid
|
|
30
|
+
|
|
31
|
+
#### Breaking changes
|
|
32
|
+
|
|
33
|
+
- The `density` is a [controlled prop](https://mui.com/x/react-data-grid/accessibility/#set-the-density-programmatically) now, if you were previously passing the `density` prop to the Data Grid, you will need to do one of the following:
|
|
34
|
+
|
|
35
|
+
1. Move it to the `initialState.density` to initialize it.
|
|
36
|
+
|
|
37
|
+
```diff
|
|
38
|
+
<DataGrid
|
|
39
|
+
- density="compact"
|
|
40
|
+
+ initialState={{ density: "compact" }}
|
|
41
|
+
/>
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
2. Move it to the state and use `onDensityChange` callback to update the `density` prop accordingly for it to work as expected.
|
|
45
|
+
|
|
46
|
+
```diff
|
|
47
|
+
+ const [density, setDensity] = React.useState<GridDensity>('compact');
|
|
48
|
+
<DataGrid
|
|
49
|
+
- density="compact"
|
|
50
|
+
+ density={density}
|
|
51
|
+
+ onDensityChange={(newDensity) => setDensity(newDensity)}
|
|
52
|
+
/>
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
- The selector `gridDensityValueSelector` was removed, use the `gridDensitySelector` instead.
|
|
56
|
+
|
|
57
|
+
- The props `rowBuffer` and `columnBuffer` were renamed to `rowBufferPx` and `columnBufferPx`.
|
|
58
|
+
Their value is now a pixel value rather than a number of items. Their default value is now `150`.
|
|
59
|
+
|
|
60
|
+
- The props `rowThreshold` and `columnThreshold` have been removed.
|
|
61
|
+
If you had the `rowThreshold` prop set to `0` to force new rows to be rendered more often – this is no longer necessary.
|
|
62
|
+
|
|
63
|
+
#### `@mui/x-data-grid@7.0.0`
|
|
64
|
+
|
|
65
|
+
- [DataGrid] Allow to control the grid density (#12332) @MBilalShafi
|
|
66
|
+
- [DataGrid] Dynamic virtualization range (#12353) @romgrk
|
|
67
|
+
- [DataGrid] Fix `ElementType` usage (#12479) @cherniavskii
|
|
68
|
+
- [DataGrid] Fix cell value formatting on copy (#12357) @sai6855
|
|
69
|
+
- [DataGrid] Fix checkbox selection is keeping selection when filtering (#11751) @g1mishra
|
|
70
|
+
- [DataGrid] Make `rows` an optional prop (#12478) @MBilalShafi
|
|
71
|
+
|
|
72
|
+
#### `@mui/x-data-grid-pro@7.0.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
73
|
+
|
|
74
|
+
Same changes as in `@mui/x-data-grid@7.0.0`.
|
|
75
|
+
|
|
76
|
+
#### `@mui/x-data-grid-premium@7.0.0` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
77
|
+
|
|
78
|
+
Same changes as in `@mui/x-data-grid-pro@7.0.0`, plus:
|
|
79
|
+
|
|
80
|
+
- [DataGridPremium] Add support for confirmation before clipboard paste (#12225) @cherniavskii
|
|
81
|
+
- [DataGridPremium] Fix single grouping column sorting (#9679) @cherniavskii
|
|
82
|
+
- [DataGridPremium] Fix boolean cell not rendered in group rows (#12492) @sai6855
|
|
83
|
+
|
|
84
|
+
### Date and Time Pickers
|
|
85
|
+
|
|
86
|
+
#### Breaking changes
|
|
87
|
+
|
|
88
|
+
- The `DesktopDateTimePicker` view rendering has been optimized by using the same technique as for `DesktopDateTimeRangePicker`.
|
|
89
|
+
- The `dateTimeViewRenderers` have been removed in favor of reusing existing time view renderers (`renderTimeViewClock`, `renderDigitalClockTimeView` and `renderMultiSectionDigitalClockTimeView`) and date view renderer (`renderDateViewCalendar`).
|
|
90
|
+
- Passing `renderTimeViewClock` to time view renderers will no longer revert to the old behavior of rendering only date or time view.
|
|
91
|
+
|
|
92
|
+
#### `@mui/x-date-pickers@7.0.0`
|
|
93
|
+
|
|
94
|
+
- [fields] Allow to override the separator between the start and the end date in all range fields (#12174) @flaviendelangle
|
|
95
|
+
- [fields] Support format without separator (#12489) @flaviendelangle
|
|
96
|
+
- [pickers] Use renderer interceptor on `DesktopDateTimePicker` (#12441) @LukasTy
|
|
97
|
+
|
|
98
|
+
#### `@mui/x-date-pickers-pro@7.0.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
99
|
+
|
|
100
|
+
Same changes as in `@mui/x-date-pickers@7.0.0`, plus:
|
|
101
|
+
|
|
102
|
+
- [DateTimeRangePicker] Add component `JSDoc` (#12518) @LukasTy
|
|
103
|
+
- [DateTimeRangePicker] Fix views behavior regression (#12529) @LukasTy
|
|
104
|
+
|
|
105
|
+
### Charts
|
|
106
|
+
|
|
107
|
+
#### `@mui/x-charts@7.0.0`
|
|
108
|
+
|
|
109
|
+
- [charts] Fix small typo in `CartesianContextProvider` (#12461) @Janpot
|
|
110
|
+
|
|
111
|
+
### Tree View
|
|
112
|
+
|
|
113
|
+
#### Breaking changes
|
|
114
|
+
|
|
115
|
+
- The required `nodeId` prop used by the `TreeItem` has been renamed to `itemId` for consistency:
|
|
116
|
+
|
|
117
|
+
```diff
|
|
118
|
+
<TreeView>
|
|
119
|
+
- <TreeItem label="Item 1" nodeId="one">
|
|
120
|
+
+ <TreeItem label="Item 1" itemId="one">
|
|
121
|
+
</TreeView>
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
- The focus is now applied to the Tree Item root element instead of the Tree View root element.
|
|
125
|
+
|
|
126
|
+
This change will allow new features that require the focus to be on the Tree Item,
|
|
127
|
+
like the drag and drop reordering of items.
|
|
128
|
+
It also solves several issues with focus management,
|
|
129
|
+
like the inability to scroll to the focused item when a lot of items are rendered.
|
|
130
|
+
|
|
131
|
+
This will mostly impact how you write tests to interact with the Tree View:
|
|
132
|
+
|
|
133
|
+
For example, if you were writing a test with `react-testing-library`, here is what the changes could look like:
|
|
134
|
+
|
|
135
|
+
```diff
|
|
136
|
+
it('test example on first item', () => {
|
|
137
|
+
- const { getByRole } = render(
|
|
138
|
+
+ const { getAllByRole } = render(
|
|
139
|
+
<SimpleTreeView>
|
|
140
|
+
<TreeItem nodeId="one" />
|
|
141
|
+
<TreeItem nodeId="two" />
|
|
142
|
+
</SimpleTreeView>
|
|
143
|
+
);
|
|
144
|
+
|
|
145
|
+
- const tree = getByRole('tree');
|
|
146
|
+
+ const firstTreeItem = getAllByRole('treeitem')[0];
|
|
147
|
+
act(() => {
|
|
148
|
+
- tree.focus();
|
|
149
|
+
+ firstTreeItem.focus();
|
|
150
|
+
});
|
|
151
|
+
- fireEvent.keyDown(tree, { key: 'ArrowDown' });
|
|
152
|
+
+ fireEvent.keyDown(firstTreeItem, { key: 'ArrowDown' });
|
|
153
|
+
})
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
#### `@mui/x-tree-view@7.0.0`
|
|
157
|
+
|
|
158
|
+
- [TreeView] Rename `nodeId` to `itemId` (#12418) @noraleonte
|
|
159
|
+
- [TreeView] Set focus on the focused Tree Item instead of the Tree View (#12226) @flaviendelangle
|
|
160
|
+
- [TreeView] Update JSDoc of the `ContentComponent` prop to avoid using the word "node" (#12476) @flaviendelangle
|
|
161
|
+
|
|
162
|
+
### `@mui/x-codemod@7.0.0`
|
|
163
|
+
|
|
164
|
+
- [codemod] Add a codemod and update the grid migration guide (#12488) @MBilalShafi
|
|
165
|
+
|
|
166
|
+
### Docs
|
|
167
|
+
|
|
168
|
+
- [docs] Finalize migration guide (#12501) @noraleonte
|
|
169
|
+
- [docs] Fix nested cells alignment in the popular features demo (#12450) @cherniavskii
|
|
170
|
+
- [docs] Fix some Vale errors (#12469) @oliviertassinari
|
|
171
|
+
- [docs] Remove mentions of pre release (#12513) @noraleonte
|
|
172
|
+
- [docs] Update branch name and tags (#12498) @cherniavskii
|
|
173
|
+
- [docs] Update links to v6 (#12496) @cherniavskii
|
|
174
|
+
- [docs] Update links to v7 docs (#12500) @noraleonte
|
|
175
|
+
- [docs] Update supported versions (#12508) @joserodolfofreitas
|
|
176
|
+
- [docs] Update "What's new in MUI X" page #12527 @cherniavskii
|
|
177
|
+
|
|
178
|
+
### Core
|
|
179
|
+
|
|
180
|
+
- [core] Bump `@mui/material` peer dependency for all packages (#12516) @LukasTy
|
|
181
|
+
- [core] Fix `no-restricted-imports` ESLint rule not working for Data Grid packages (#12477) @cherniavskii
|
|
182
|
+
- [core] Lower the frequency of `no-response` action runs (#12491) @michaldudak
|
|
183
|
+
- [core] Remove leftover `legacy` `browserlistrc` entry (#12415) @LukasTy
|
|
184
|
+
- [core] Update NPM tag (#12511) @cherniavskii
|
|
185
|
+
- [core] Update supported browsers (browserlistrc) (#12521) @LukasTy
|
|
186
|
+
- [core] Use Circle CI context @oliviertassinari
|
|
187
|
+
- [license] Fix grammar on expired license error message (#12460) @joserodolfofreitas
|
|
188
|
+
|
|
189
|
+
## 7.0.0-beta.7
|
|
190
|
+
|
|
191
|
+
_Mar 14, 2024_
|
|
192
|
+
|
|
193
|
+
We'd like to offer a big thanks to the 11 contributors who made this release possible. Here are some highlights ✨:
|
|
194
|
+
|
|
195
|
+
- 🦥 The Lazy loading feature is now stable and the `lazyLoading` feature flag was removed from the `experimentalFeatures` prop.
|
|
196
|
+
- 🌍 Improve Japanese (ja-JP) locale for the Data Grid
|
|
197
|
+
- 🐞 Bugfixes
|
|
198
|
+
- 📚 Documentation improvements
|
|
199
|
+
|
|
200
|
+
### Data Grid
|
|
201
|
+
|
|
202
|
+
#### Breaking changes
|
|
203
|
+
|
|
204
|
+
- The `columnHeader--showColumnBorder` class was replaced by `columnHeader--withLeftBorder` and `columnHeader--withRightBorder`.
|
|
205
|
+
- The `columnHeadersInner`, `columnHeadersInner--scrollable`, and `columnHeaderDropZone` classes were removed since the inner wrapper was removed in our effort to simplify the DOM structure and improve accessibility.
|
|
206
|
+
- The `pinnedColumnHeaders`, `pinnedColumnHeaders--left`, and `pinnedColumnHeaders--right` classes were removed along with the element they were applied to.
|
|
207
|
+
The pinned column headers now use `position: 'sticky'` and are rendered in the same row element as the regular column headers.
|
|
208
|
+
|
|
209
|
+
#### `@mui/x-data-grid@7.0.0-beta.7`
|
|
210
|
+
|
|
211
|
+
- [DataGrid] Fix focus visible style on scrollbar (#12402) @oliviertassinari
|
|
212
|
+
- [DataGrid] Fix the issue where pressing the Delete key resets various cell values to an empty string. (#12216) @sooster910
|
|
213
|
+
- [DataGrid] Make `rowCount` part of the state (#12381) @MBilalShafi
|
|
214
|
+
- [DataGrid] Make column resizing and autosizing available in Community plan (#12420) @cherniavskii
|
|
215
|
+
- [DataGrid] Remove `baseSwitch` slot (#12439) @romgrk
|
|
216
|
+
- [l10n] Improve Japanese (ja-JP) locale (#12398) @makoto14
|
|
217
|
+
|
|
218
|
+
#### `@mui/x-data-grid-pro@7.0.0-beta.7` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
219
|
+
|
|
220
|
+
Same changes as in `@mui/x-data-grid@7.0.0-beta.7`, plus:
|
|
221
|
+
|
|
222
|
+
- [DataGridPro] Add `inputRef` to the props passed to `colDef.renderHeaderFilter` (#12328) @vovarudomanenko
|
|
223
|
+
- [DataGridPro] Fix filler rendered for no reason when there are pinned columns (#12440) @cherniavskii
|
|
224
|
+
- [DataGridPro] Make lazy loading feature stable (#12421) @cherniavskii
|
|
225
|
+
- [DataGridPro] Render pinned and non-pinned column headers in one row (#12376) @cherniavskii
|
|
226
|
+
|
|
227
|
+
#### `@mui/x-data-grid-premium@7.0.0-beta.7` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
228
|
+
|
|
229
|
+
Same changes as in `@mui/x-data-grid-pro@7.0.0-beta.7`, plus:
|
|
230
|
+
|
|
231
|
+
- [DataGridPremium] Fix auto-scroll not working when selecting cell range (#12267) @cherniavskii
|
|
232
|
+
|
|
233
|
+
### Date and Time Pickers
|
|
234
|
+
|
|
235
|
+
#### `@mui/x-date-pickers@7.0.0-beta.7`
|
|
236
|
+
|
|
237
|
+
- [fields] Fix `tabIndex` on accessible field DOM structure (#12311) @flaviendelangle
|
|
238
|
+
- [fields] Fix items alignment on multi input range fields (#12312) @flaviendelangle
|
|
239
|
+
- [pickers] Improve the customization of the range picker calendar header (#11988) @flaviendelangle
|
|
240
|
+
- [pickers] Keep the existing time when looking for closest enabled date (#12377) @LukasTy
|
|
241
|
+
|
|
242
|
+
#### `@mui/x-date-pickers-pro@7.0.0-beta.7` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
243
|
+
|
|
244
|
+
Same changes as in `@mui/x-date-pickers@7.0.0-beta.7`.
|
|
245
|
+
|
|
246
|
+
### Charts
|
|
247
|
+
|
|
248
|
+
#### `@mui/x-charts@7.0.0-beta.7`
|
|
249
|
+
|
|
250
|
+
- [charts] Fix axis highlight when axis is reversed (#12407) @alexfauquette
|
|
251
|
+
|
|
252
|
+
### Tree View
|
|
253
|
+
|
|
254
|
+
#### Breaking changes
|
|
255
|
+
|
|
256
|
+
The `onNodeFocus` callback has been renamed to `onItemFocus` for consistency:
|
|
257
|
+
|
|
258
|
+
```diff
|
|
259
|
+
<SimpleTreeView
|
|
260
|
+
- onNodeFocus={onNodeFocus}
|
|
261
|
+
+ onItemFocus={onItemFocus}
|
|
262
|
+
/>
|
|
263
|
+
```
|
|
264
|
+
|
|
265
|
+
#### `@mui/x-tree-view@7.0.0-beta.7`
|
|
266
|
+
|
|
267
|
+
- [TreeView] Clean the usage of the term "item" and "node" in API introduced during v7 (#12368) @noraleonte
|
|
268
|
+
- [TreeView] Introduce a new `TreeItem2` component and a new `useTreeItem2` hook (#11721) @flaviendelangle
|
|
269
|
+
- [TreeView] Rename `onNodeFocus` to `onItemFocus` (#12419) @noraleonte
|
|
270
|
+
|
|
271
|
+
### Docs
|
|
272
|
+
|
|
273
|
+
- [docs] Add `legacy` bundle drop mention in migration pages (#12424) @LukasTy
|
|
274
|
+
- [docs] Add missing luxon `Info` import (#12427) @LukasTy
|
|
275
|
+
- [docs] Improve slots definitions for charts (#12408) @alexfauquette
|
|
276
|
+
- [docs] Polish What's new in MUI X blog titles (#12309) @oliviertassinari
|
|
277
|
+
- [docs] Replace `rel="noreferrer"` by `rel="noopener"` @oliviertassinari
|
|
278
|
+
- [docs] Update `date-fns` `weekStarsOn` overriding example (#12416) @LukasTy
|
|
279
|
+
|
|
280
|
+
### Core
|
|
281
|
+
|
|
282
|
+
- [core] Fix CI (#12414) @flaviendelangle
|
|
283
|
+
- [core] Fix PR deploy link for Tree View doc pages (#12411) @flaviendelangle
|
|
284
|
+
|
|
6
285
|
## 7.0.0-beta.6
|
|
7
286
|
|
|
8
287
|
_Mar 8, 2024_
|
|
@@ -156,7 +435,7 @@ Same changes as in `@mui/x-date-pickers@7.0.0-beta.5`.
|
|
|
156
435
|
### Docs
|
|
157
436
|
|
|
158
437
|
- [docs] Fix image layout shift when loading @oliviertassinari
|
|
159
|
-
- [docs] Match Material
|
|
438
|
+
- [docs] Match Material UI repo comment for redirections @oliviertassinari
|
|
160
439
|
- [docs] Non breaking spaces @oliviertassinari
|
|
161
440
|
- [docs] Polish the Date Picker playground (#11869) @zanivan
|
|
162
441
|
- [docs] Standardize WAI-ARIA references @oliviertassinari
|
|
@@ -167,9 +446,9 @@ Same changes as in `@mui/x-date-pickers@7.0.0-beta.5`.
|
|
|
167
446
|
- [core] Remove grid folder from `getComponentInfo` RegExp (#12241) @flaviendelangle
|
|
168
447
|
- [core] Remove `window.` reference for common globals @oliviertassinari
|
|
169
448
|
- [core] Use runtime agnostic setTimeout type @oliviertassinari
|
|
170
|
-
- [docs-infra] Fix Stack
|
|
449
|
+
- [docs-infra] Fix Stack Overflow breaking space @oliviertassinari
|
|
171
450
|
- [docs-infra] Fix missing non breaking spaces @oliviertassinari
|
|
172
|
-
- [
|
|
451
|
+
- [infra] Update `no-response` workflow (#12193) @MBilalShafi
|
|
173
452
|
- [infra] Fix missing permission reset @oliviertassinari
|
|
174
453
|
|
|
175
454
|
## 7.0.0-beta.4
|
|
@@ -186,7 +465,7 @@ We'd like to offer a big thanks to the 10 contributors who made this release pos
|
|
|
186
465
|
|
|
187
466
|
### Breaking changes
|
|
188
467
|
|
|
189
|
-
- The support for IE11 has been removed from all MUI
|
|
468
|
+
- The support for IE11 has been removed from all MUI X packages. The `legacy` bundle that used to support old browsers like IE11 is no longer included.
|
|
190
469
|
|
|
191
470
|
### Data Grid
|
|
192
471
|
|
|
@@ -228,7 +507,7 @@ Same changes as in `@mui/x-data-grid-pro@7.0.0-beta.4`.
|
|
|
228
507
|
- The headless field hooks (e.g.: `useDateField`) now returns a new prop called `enableAccessibleFieldDOMStructure`.
|
|
229
508
|
This property is utilized to determine whether the anticipated UI is constructed using an accessible DOM structure. Learn more about this new [accessible DOM structure](/x/react-date-pickers/fields/#accessible-dom-structure).
|
|
230
509
|
|
|
231
|
-
|
|
510
|
+
When building a custom UI, you are most-likely only supporting one DOM structure, so you can remove `enableAccessibleFieldDOMStructure` before it is passed to the DOM:
|
|
232
511
|
|
|
233
512
|
```diff
|
|
234
513
|
function MyCustomTextField(props) {
|
|
@@ -296,7 +575,7 @@ These components are no longer exported from `@mui/x-charts`:
|
|
|
296
575
|
### Docs
|
|
297
576
|
|
|
298
577
|
- [docs] Add recipe for hiding separator on non-resizable columns (#12134) @michelengelen
|
|
299
|
-
- [docs] Add small improvements to the Gauge
|
|
578
|
+
- [docs] Add small improvements to the Gauge page (#12076) @danilo-leal
|
|
300
579
|
- [docs] Add the 'point' scaleType to the axis documentation (#12179) @alexfauquette
|
|
301
580
|
- [docs] Clarify Pickers 'Component composition' section (#12097) @LukasTy
|
|
302
581
|
- [docs] Fix "Licensing" page link (#12156) @LukasTy
|
|
@@ -879,7 +1158,7 @@ Same changes as in `@mui/x-date-pickers@7.0.0-alpha.9`.
|
|
|
879
1158
|
|
|
880
1159
|
- [charts] Do not propagate `innerRadius` and `outerRadius` to the DOM (#11689) @alexfauquette
|
|
881
1160
|
- [charts] Fix default `stackOffset` for `LineChart` (#11647) @alexfauquette
|
|
882
|
-
- [charts] Remove a
|
|
1161
|
+
- [charts] Remove a TypeScript ignore (#11688) @alexfauquette
|
|
883
1162
|
|
|
884
1163
|
### Tree View
|
|
885
1164
|
|
|
@@ -1308,7 +1587,7 @@ Same changes as in `@mui/x-date-pickers@7.0.0-alpha.7`.
|
|
|
1308
1587
|
- [core] Fix release changelog (#11496) @romgrk
|
|
1309
1588
|
- [core] Fix use of ::before & ::after (#11515) @oliviertassinari
|
|
1310
1589
|
- [core] Localize the issue template to MUI X (#11511) @oliviertassinari
|
|
1311
|
-
- [core]
|
|
1590
|
+
- [core] Regenerate API files (#11542) @flaviendelangle
|
|
1312
1591
|
- [core] Remove issue emoji @oliviertassinari
|
|
1313
1592
|
- [core] Sync the release instructions with MUI Core @oliviertassinari
|
|
1314
1593
|
- [core] Yaml format match most common convention @oliviertassinari
|
|
@@ -1351,7 +1630,7 @@ We'd like to offer a big thanks to the 6 contributors who made this release poss
|
|
|
1351
1630
|
|
|
1352
1631
|
- The `filterModel` now supports `Date` objects as values for `date` and `dateTime` column types.
|
|
1353
1632
|
The `filterModel` still accepts strings as values for `date` and `dateTime` column types,
|
|
1354
|
-
but all updates to the `filterModel` coming from the UI (
|
|
1633
|
+
but all updates to the `filterModel` coming from the UI (for example filter panel) will set the value as a `Date` object.
|
|
1355
1634
|
|
|
1356
1635
|
#### `@mui/x-data-grid@7.0.0-alpha.6`
|
|
1357
1636
|
|
|
@@ -1562,7 +1841,7 @@ Same changes as in `@mui/x-date-pickers@7.0.0-alpha.5`, plus:
|
|
|
1562
1841
|
### Core
|
|
1563
1842
|
|
|
1564
1843
|
- [core] Automate cherry-pick of PRs from `next` -> `master` (#11382) @MBilalShafi
|
|
1565
|
-
- [
|
|
1844
|
+
- [infra] Update `no-response` workflow (#11369) @MBilalShafi
|
|
1566
1845
|
- [test] Fix flaky screenshots (#11388) @cherniavskii
|
|
1567
1846
|
|
|
1568
1847
|
## 7.0.0-alpha.4
|
|
@@ -1731,7 +2010,7 @@ Same changes as in `@mui/x-data-grid-pro@7.0.0-alpha.3`, plus:
|
|
|
1731
2010
|
The Firefox browser currently does not support this behavior because the [getWeekInfo](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale/getWeekInfo) API is not yet implemented.
|
|
1732
2011
|
|
|
1733
2012
|
```ts
|
|
1734
|
-
import { Settings } from 'luxon';
|
|
2013
|
+
import { Settings, Info } from 'luxon';
|
|
1735
2014
|
|
|
1736
2015
|
Settings.defaultWeekSettings = {
|
|
1737
2016
|
firstDay: 1,
|
|
@@ -1800,7 +2079,7 @@ Same changes as in `@mui/x-date-pickers@7.0.0-alpha.3`.
|
|
|
1800
2079
|
|
|
1801
2080
|
- [charts] Adjusted `defaultizeValueFormatter` util to accept an optional `series.valueFormatter` value (#11144) @michelengelen
|
|
1802
2081
|
- [charts] Apply `labelStyle` and `tickLabelStyle` props on `<ChartsYAxis />` (#11180) @akamfoad
|
|
1803
|
-
- [charts] Fix
|
|
2082
|
+
- [charts] Fix TypeScript config (#11259) @alexfauquette
|
|
1804
2083
|
- [charts] Fix error with empty dataset (#11063) @alexfauquette
|
|
1805
2084
|
- [charts] Fix export strategy (#11235) @alexfauquette
|
|
1806
2085
|
- [charts] Remove outdated prop-types (#11045) @alexfauquette
|
|
@@ -2521,6 +2800,26 @@ Here is an example of the renaming for the `<ChartsTooltip />` component.
|
|
|
2521
2800
|
- [core] Update release instructions as per v7 configuration (#10962) @MBilalShafi
|
|
2522
2801
|
- [license] Correctly throw errors (#10924) @oliviertassinari
|
|
2523
2802
|
|
|
2803
|
+
## 6.19.7
|
|
2804
|
+
|
|
2805
|
+
_Mar 14, 2024_
|
|
2806
|
+
|
|
2807
|
+
We'd like to offer a big thanks to @LukasTy who made this release possible.
|
|
2808
|
+
|
|
2809
|
+
### Date Pickers
|
|
2810
|
+
|
|
2811
|
+
#### `@mui/x-date-pickers@6.19.7`
|
|
2812
|
+
|
|
2813
|
+
- [pickers] Keep the existing time when looking for closest enabled date (#12410) @LukasTy
|
|
2814
|
+
|
|
2815
|
+
#### `@mui/x-date-pickers-pro@6.19.7` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
2816
|
+
|
|
2817
|
+
Same changes as in `@mui/x-date-pickers@6.19.7`.
|
|
2818
|
+
|
|
2819
|
+
### Docs
|
|
2820
|
+
|
|
2821
|
+
- [docs] Add Pickers custom start of week section (#12425) @LukasTy
|
|
2822
|
+
|
|
2524
2823
|
## 6.19.6
|
|
2525
2824
|
|
|
2526
2825
|
_Mar 1, 2024_
|
package/README.md
CHANGED
|
@@ -36,21 +36,20 @@ function WrappedTreeItem({
|
|
|
36
36
|
slotProps,
|
|
37
37
|
label,
|
|
38
38
|
id,
|
|
39
|
-
|
|
39
|
+
itemId,
|
|
40
40
|
children
|
|
41
41
|
}) {
|
|
42
|
-
|
|
43
|
-
const Item = (_slots$item = slots == null ? void 0 : slots.item) != null ? _slots$item : TreeItem;
|
|
42
|
+
const Item = slots?.item ?? TreeItem;
|
|
44
43
|
const itemProps = useSlotProps({
|
|
45
44
|
elementType: Item,
|
|
46
|
-
externalSlotProps: slotProps
|
|
45
|
+
externalSlotProps: slotProps?.item,
|
|
47
46
|
additionalProps: {
|
|
48
|
-
|
|
47
|
+
itemId,
|
|
49
48
|
id,
|
|
50
49
|
label
|
|
51
50
|
},
|
|
52
51
|
ownerState: {
|
|
53
|
-
|
|
52
|
+
itemId,
|
|
54
53
|
label
|
|
55
54
|
}
|
|
56
55
|
});
|
|
@@ -58,7 +57,7 @@ function WrappedTreeItem({
|
|
|
58
57
|
children: children
|
|
59
58
|
}));
|
|
60
59
|
}
|
|
61
|
-
const childrenWarning = buildWarning(['MUI X: The `RichTreeView` component does not support JSX children.', 'If you want to add items, you need to use the `items` prop', 'Check the documentation for more details: https://
|
|
60
|
+
const childrenWarning = buildWarning(['MUI X: The `RichTreeView` component does not support JSX children.', 'If you want to add items, you need to use the `items` prop', 'Check the documentation for more details: https://mui.com/x/react-tree-view/rich-tree-view/items/']);
|
|
62
61
|
|
|
63
62
|
/**
|
|
64
63
|
*
|
|
@@ -71,7 +70,6 @@ const childrenWarning = buildWarning(['MUI X: The `RichTreeView` component does
|
|
|
71
70
|
* - [RichTreeView API](https://mui.com/x/api/tree-view/rich-tree-view/)
|
|
72
71
|
*/
|
|
73
72
|
const RichTreeView = /*#__PURE__*/React.forwardRef(function RichTreeView(inProps, ref) {
|
|
74
|
-
var _slots$root;
|
|
75
73
|
const props = useThemeProps({
|
|
76
74
|
props: inProps,
|
|
77
75
|
name: 'MuiRichTreeView'
|
|
@@ -97,10 +95,10 @@ const RichTreeView = /*#__PURE__*/React.forwardRef(function RichTreeView(inProps
|
|
|
97
95
|
instance
|
|
98
96
|
} = useTreeView(pluginParams);
|
|
99
97
|
const classes = useUtilityClasses(props);
|
|
100
|
-
const Root =
|
|
98
|
+
const Root = slots?.root ?? RichTreeViewRoot;
|
|
101
99
|
const rootProps = useSlotProps({
|
|
102
100
|
elementType: Root,
|
|
103
|
-
externalSlotProps: slotProps
|
|
101
|
+
externalSlotProps: slotProps?.root,
|
|
104
102
|
externalForwardedProps: otherProps,
|
|
105
103
|
className: classes.root,
|
|
106
104
|
getSlotProps: getRootProps,
|
|
@@ -109,7 +107,7 @@ const RichTreeView = /*#__PURE__*/React.forwardRef(function RichTreeView(inProps
|
|
|
109
107
|
const nodesToRender = instance.getNodesToRender();
|
|
110
108
|
const renderNode = ({
|
|
111
109
|
label,
|
|
112
|
-
|
|
110
|
+
itemId,
|
|
113
111
|
id,
|
|
114
112
|
children
|
|
115
113
|
}) => {
|
|
@@ -118,9 +116,9 @@ const RichTreeView = /*#__PURE__*/React.forwardRef(function RichTreeView(inProps
|
|
|
118
116
|
slotProps: slotProps,
|
|
119
117
|
label: label,
|
|
120
118
|
id: id,
|
|
121
|
-
|
|
122
|
-
children: children
|
|
123
|
-
},
|
|
119
|
+
itemId: itemId,
|
|
120
|
+
children: children?.map(renderNode)
|
|
121
|
+
}, itemId);
|
|
124
122
|
};
|
|
125
123
|
return /*#__PURE__*/_jsx(TreeViewProvider, {
|
|
126
124
|
value: contextValue,
|
|
@@ -139,7 +137,7 @@ process.env.NODE_ENV !== "production" ? RichTreeView.propTypes = {
|
|
|
139
137
|
*/
|
|
140
138
|
apiRef: PropTypes.shape({
|
|
141
139
|
current: PropTypes.shape({
|
|
142
|
-
|
|
140
|
+
focusItem: PropTypes.func.isRequired,
|
|
143
141
|
getItem: PropTypes.func.isRequired
|
|
144
142
|
})
|
|
145
143
|
}),
|
|
@@ -149,17 +147,17 @@ process.env.NODE_ENV !== "production" ? RichTreeView.propTypes = {
|
|
|
149
147
|
classes: PropTypes.object,
|
|
150
148
|
className: PropTypes.string,
|
|
151
149
|
/**
|
|
152
|
-
* Expanded
|
|
150
|
+
* Expanded item ids.
|
|
153
151
|
* Used when the item's expansion is not controlled.
|
|
154
152
|
* @default []
|
|
155
153
|
*/
|
|
156
|
-
|
|
154
|
+
defaultExpandedItems: PropTypes.arrayOf(PropTypes.string),
|
|
157
155
|
/**
|
|
158
|
-
* Selected
|
|
156
|
+
* Selected item ids. (Uncontrolled)
|
|
159
157
|
* When `multiSelect` is true this takes an array of strings; when false (default) a string.
|
|
160
158
|
* @default []
|
|
161
159
|
*/
|
|
162
|
-
|
|
160
|
+
defaultSelectedItems: PropTypes.any,
|
|
163
161
|
/**
|
|
164
162
|
* If `true`, will allow focus on disabled items.
|
|
165
163
|
* @default false
|
|
@@ -171,10 +169,10 @@ process.env.NODE_ENV !== "production" ? RichTreeView.propTypes = {
|
|
|
171
169
|
*/
|
|
172
170
|
disableSelection: PropTypes.bool,
|
|
173
171
|
/**
|
|
174
|
-
* Expanded
|
|
172
|
+
* Expanded item ids.
|
|
175
173
|
* Used when the item's expansion is controlled.
|
|
176
174
|
*/
|
|
177
|
-
|
|
175
|
+
expandedItems: PropTypes.arrayOf(PropTypes.string),
|
|
178
176
|
/**
|
|
179
177
|
* Used to determine the string label for a given item.
|
|
180
178
|
*
|
|
@@ -214,42 +212,42 @@ process.env.NODE_ENV !== "production" ? RichTreeView.propTypes = {
|
|
|
214
212
|
/**
|
|
215
213
|
* Callback fired when tree items are expanded/collapsed.
|
|
216
214
|
* @param {React.SyntheticEvent} event The event source of the callback.
|
|
217
|
-
* @param {array}
|
|
215
|
+
* @param {array} itemIds The ids of the expanded items.
|
|
218
216
|
*/
|
|
219
|
-
|
|
217
|
+
onExpandedItemsChange: PropTypes.func,
|
|
220
218
|
/**
|
|
221
219
|
* Callback fired when a tree item is expanded or collapsed.
|
|
222
220
|
* @param {React.SyntheticEvent} event The event source of the callback.
|
|
223
|
-
* @param {array}
|
|
224
|
-
* @param {array} isExpanded `true` if the
|
|
221
|
+
* @param {array} itemId The itemId of the modified item.
|
|
222
|
+
* @param {array} isExpanded `true` if the item has just been expanded, `false` if it has just been collapsed.
|
|
225
223
|
*/
|
|
226
|
-
|
|
224
|
+
onItemExpansionToggle: PropTypes.func,
|
|
227
225
|
/**
|
|
228
226
|
* Callback fired when tree items are focused.
|
|
229
227
|
* @param {React.SyntheticEvent} event The event source of the callback **Warning**: This is a generic event not a focus event.
|
|
230
|
-
* @param {string}
|
|
231
|
-
* @param {string} value of the focused
|
|
228
|
+
* @param {string} itemId The id of the focused item.
|
|
229
|
+
* @param {string} value of the focused item.
|
|
232
230
|
*/
|
|
233
|
-
|
|
231
|
+
onItemFocus: PropTypes.func,
|
|
234
232
|
/**
|
|
235
233
|
* Callback fired when a tree item is selected or deselected.
|
|
236
234
|
* @param {React.SyntheticEvent} event The event source of the callback.
|
|
237
|
-
* @param {array}
|
|
238
|
-
* @param {array} isSelected `true` if the
|
|
235
|
+
* @param {array} itemId The itemId of the modified item.
|
|
236
|
+
* @param {array} isSelected `true` if the item has just been selected, `false` if it has just been deselected.
|
|
239
237
|
*/
|
|
240
|
-
|
|
238
|
+
onItemSelectionToggle: PropTypes.func,
|
|
241
239
|
/**
|
|
242
240
|
* Callback fired when tree items are selected/deselected.
|
|
243
241
|
* @param {React.SyntheticEvent} event The event source of the callback
|
|
244
|
-
* @param {string[] | string}
|
|
242
|
+
* @param {string[] | string} itemIds The ids of the selected items.
|
|
245
243
|
* When `multiSelect` is `true`, this is an array of strings; when false (default) a string.
|
|
246
244
|
*/
|
|
247
|
-
|
|
245
|
+
onSelectedItemsChange: PropTypes.func,
|
|
248
246
|
/**
|
|
249
|
-
* Selected
|
|
247
|
+
* Selected item ids. (Controlled)
|
|
250
248
|
* When `multiSelect` is true this takes an array of strings; when false (default) a string.
|
|
251
249
|
*/
|
|
252
|
-
|
|
250
|
+
selectedItems: PropTypes.any,
|
|
253
251
|
/**
|
|
254
252
|
* The props used for each component slot.
|
|
255
253
|
* @default {}
|
|
@@ -5,10 +5,11 @@ import { SlotComponentProps } from '@mui/base/utils';
|
|
|
5
5
|
import { RichTreeViewClasses } from './richTreeViewClasses';
|
|
6
6
|
import { DefaultTreeViewPluginParameters, DefaultTreeViewPluginSlotProps, DefaultTreeViewPluginSlots, DefaultTreeViewPlugins } from '../internals/plugins/defaultPlugins';
|
|
7
7
|
import { TreeItem, TreeItemProps } from '../TreeItem';
|
|
8
|
+
import { TreeItem2Props } from '../TreeItem2';
|
|
8
9
|
import { TreeViewItemId } from '../models';
|
|
9
10
|
import { TreeViewPublicAPI } from '../internals/models';
|
|
10
11
|
interface RichTreeViewItemSlotOwnerState {
|
|
11
|
-
|
|
12
|
+
itemId: TreeViewItemId;
|
|
12
13
|
label: string;
|
|
13
14
|
}
|
|
14
15
|
export interface RichTreeViewSlots extends DefaultTreeViewPluginSlots {
|
|
@@ -21,7 +22,7 @@ export interface RichTreeViewSlots extends DefaultTreeViewPluginSlots {
|
|
|
21
22
|
* Custom component for the item.
|
|
22
23
|
* @default TreeItem.
|
|
23
24
|
*/
|
|
24
|
-
item?: React.JSXElementConstructor<TreeItemProps>;
|
|
25
|
+
item?: React.JSXElementConstructor<TreeItemProps> | React.JSXElementConstructor<TreeItem2Props>;
|
|
25
26
|
}
|
|
26
27
|
export interface RichTreeViewSlotProps<R extends {}, Multiple extends boolean | undefined> extends DefaultTreeViewPluginSlotProps {
|
|
27
28
|
root?: SlotComponentProps<'ul', {}, RichTreeViewProps<R, Multiple>>;
|