@mui/x-tree-view 7.22.1 → 8.0.0-alpha.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.
Files changed (196) hide show
  1. package/CHANGELOG.md +143 -92
  2. package/README.md +2 -2
  3. package/RichTreeView/RichTreeView.js +20 -1
  4. package/RichTreeView/RichTreeView.types.d.ts +4 -4
  5. package/SimpleTreeView/SimpleTreeView.js +21 -3
  6. package/TreeItem/TreeItem.d.ts +20 -2
  7. package/TreeItem/TreeItem.js +238 -368
  8. package/TreeItem/TreeItem.types.d.ts +51 -86
  9. package/TreeItem/index.d.ts +1 -4
  10. package/TreeItem/index.js +2 -4
  11. package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.d.ts +7 -0
  12. package/{modern/TreeItem2DragAndDropOverlay/TreeItem2DragAndDropOverlay.js → TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.js} +8 -6
  13. package/{TreeItem2DragAndDropOverlay/TreeItem2DragAndDropOverlay.types.d.ts → TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.d.ts} +1 -1
  14. package/TreeItemDragAndDropOverlay/index.d.ts +2 -0
  15. package/TreeItemDragAndDropOverlay/index.js +1 -0
  16. package/{TreeItem2LabelInput → TreeItemDragAndDropOverlay}/package.json +1 -1
  17. package/TreeItemIcon/TreeItemIcon.d.ts +7 -0
  18. package/{TreeItem2Icon/TreeItem2Icon.js → TreeItemIcon/TreeItemIcon.js} +5 -3
  19. package/{TreeItem2Icon/TreeItem2Icon.types.d.ts → TreeItemIcon/TreeItemIcon.types.d.ts} +7 -7
  20. package/TreeItemIcon/index.d.ts +2 -0
  21. package/TreeItemIcon/index.js +1 -0
  22. package/{useTreeItem2 → TreeItemIcon}/package.json +1 -1
  23. package/TreeItemLabelInput/TreeItemLabelInput.d.ts +5 -0
  24. package/{TreeItem2LabelInput/TreeItem2LabelInput.js → TreeItemLabelInput/TreeItemLabelInput.js} +3 -3
  25. package/{TreeItem2LabelInput/TreeItem2LabelInput.types.d.ts → TreeItemLabelInput/TreeItemLabelInput.types.d.ts} +1 -1
  26. package/TreeItemLabelInput/index.d.ts +2 -0
  27. package/TreeItemLabelInput/index.js +1 -0
  28. package/{TreeItem2Provider → TreeItemLabelInput}/package.json +1 -1
  29. package/TreeItemProvider/TreeItemProvider.d.ts +9 -0
  30. package/{TreeItem2Provider/TreeItem2Provider.js → TreeItemProvider/TreeItemProvider.js} +7 -3
  31. package/{TreeItem2Provider/TreeItem2Provider.types.d.ts → TreeItemProvider/TreeItemProvider.types.d.ts} +1 -1
  32. package/TreeItemProvider/index.d.ts +2 -0
  33. package/TreeItemProvider/index.js +1 -0
  34. package/{TreeItem2Icon → TreeItemProvider}/package.json +1 -1
  35. package/hooks/index.d.ts +1 -1
  36. package/hooks/index.js +1 -1
  37. package/hooks/useTreeItemUtils/index.d.ts +1 -0
  38. package/hooks/useTreeItemUtils/index.js +1 -0
  39. package/hooks/{useTreeItem2Utils/useTreeItem2Utils.d.ts → useTreeItemUtils/useTreeItemUtils.d.ts} +11 -11
  40. package/{modern/hooks/useTreeItem2Utils/useTreeItem2Utils.js → hooks/useTreeItemUtils/useTreeItemUtils.js} +5 -3
  41. package/index.d.ts +5 -7
  42. package/index.js +6 -8
  43. package/internals/TreeViewProvider/TreeViewProvider.types.d.ts +2 -1
  44. package/internals/components/RichTreeViewItems.d.ts +1 -2
  45. package/internals/index.d.ts +1 -1
  46. package/internals/models/helpers.d.ts +0 -2
  47. package/internals/models/itemPlugin.d.ts +11 -8
  48. package/internals/models/plugin.d.ts +1 -1
  49. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +2 -1
  50. package/internals/plugins/useTreeViewItems/useTreeViewItems.js +2 -4
  51. package/internals/plugins/useTreeViewItems/useTreeViewItems.types.d.ts +3 -5
  52. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.d.ts +1 -1
  53. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.d.ts +6 -5
  54. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.d.ts +2 -0
  55. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.js +86 -0
  56. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +43 -18
  57. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +33 -3
  58. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.d.ts +20 -1
  59. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +95 -0
  60. package/models/items.d.ts +4 -0
  61. package/modern/RichTreeView/RichTreeView.js +20 -1
  62. package/modern/SimpleTreeView/SimpleTreeView.js +21 -3
  63. package/modern/TreeItem/TreeItem.js +238 -368
  64. package/modern/TreeItem/index.js +2 -4
  65. package/{TreeItem2DragAndDropOverlay/TreeItem2DragAndDropOverlay.js → modern/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.js} +8 -6
  66. package/modern/TreeItemDragAndDropOverlay/index.js +1 -0
  67. package/modern/{TreeItem2Icon/TreeItem2Icon.js → TreeItemIcon/TreeItemIcon.js} +5 -3
  68. package/modern/TreeItemIcon/index.js +1 -0
  69. package/modern/{TreeItem2LabelInput/TreeItem2LabelInput.js → TreeItemLabelInput/TreeItemLabelInput.js} +3 -3
  70. package/modern/TreeItemLabelInput/index.js +1 -0
  71. package/modern/{TreeItem2Provider/TreeItem2Provider.js → TreeItemProvider/TreeItemProvider.js} +7 -3
  72. package/modern/TreeItemProvider/index.js +1 -0
  73. package/modern/hooks/index.js +1 -1
  74. package/modern/hooks/useTreeItemUtils/index.js +1 -0
  75. package/{hooks/useTreeItem2Utils/useTreeItem2Utils.js → modern/hooks/useTreeItemUtils/useTreeItemUtils.js} +5 -3
  76. package/modern/index.js +6 -8
  77. package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.js +2 -4
  78. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.js +86 -0
  79. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +43 -18
  80. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +95 -0
  81. package/modern/useTreeItem/index.js +1 -0
  82. package/modern/{useTreeItem2/useTreeItem2.js → useTreeItem/useTreeItem.js} +21 -42
  83. package/node/RichTreeView/RichTreeView.js +20 -1
  84. package/node/SimpleTreeView/SimpleTreeView.js +21 -3
  85. package/node/TreeItem/TreeItem.js +239 -369
  86. package/node/TreeItem/index.js +38 -16
  87. package/node/{TreeItem2DragAndDropOverlay/TreeItem2DragAndDropOverlay.js → TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.js} +7 -6
  88. package/node/TreeItemDragAndDropOverlay/index.js +12 -0
  89. package/node/{TreeItem2Icon/TreeItem2Icon.js → TreeItemIcon/TreeItemIcon.js} +4 -3
  90. package/node/TreeItemIcon/index.js +12 -0
  91. package/node/{TreeItem2LabelInput/TreeItem2LabelInput.js → TreeItemLabelInput/TreeItemLabelInput.js} +3 -3
  92. package/node/TreeItemLabelInput/index.js +12 -0
  93. package/node/{TreeItem2Provider/TreeItem2Provider.js → TreeItemProvider/TreeItemProvider.js} +6 -3
  94. package/node/TreeItemProvider/index.js +12 -0
  95. package/node/hooks/index.js +3 -3
  96. package/node/hooks/useTreeItemUtils/index.js +12 -0
  97. package/node/hooks/{useTreeItem2Utils/useTreeItem2Utils.js → useTreeItemUtils/useTreeItemUtils.js} +6 -5
  98. package/node/index.js +18 -42
  99. package/node/internals/plugins/useTreeViewItems/useTreeViewItems.js +2 -4
  100. package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.js +94 -0
  101. package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +42 -17
  102. package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +99 -2
  103. package/node/useTreeItem/index.js +12 -0
  104. package/node/{useTreeItem2/useTreeItem2.js → useTreeItem/useTreeItem.js} +22 -44
  105. package/package.json +3 -3
  106. package/themeAugmentation/components.d.ts +0 -10
  107. package/themeAugmentation/overrides.d.ts +0 -3
  108. package/themeAugmentation/props.d.ts +1 -5
  109. package/useTreeItem/index.d.ts +2 -0
  110. package/useTreeItem/index.js +1 -0
  111. package/{TreeItem2 → useTreeItem}/package.json +1 -1
  112. package/useTreeItem/useTreeItem.d.ts +2 -0
  113. package/{useTreeItem2/useTreeItem2.js → useTreeItem/useTreeItem.js} +21 -42
  114. package/{useTreeItem2/useTreeItem2.types.d.ts → useTreeItem/useTreeItem.types.d.ts} +42 -58
  115. package/TreeItem/TreeItemContent.d.ts +0 -61
  116. package/TreeItem/TreeItemContent.js +0 -146
  117. package/TreeItem/useTreeItemState.d.ts +0 -21
  118. package/TreeItem/useTreeItemState.js +0 -143
  119. package/TreeItem2/TreeItem2.d.ts +0 -34
  120. package/TreeItem2/TreeItem2.js +0 -387
  121. package/TreeItem2/TreeItem2.types.d.ts +0 -92
  122. package/TreeItem2/index.d.ts +0 -2
  123. package/TreeItem2/index.js +0 -1
  124. package/TreeItem2DragAndDropOverlay/TreeItem2DragAndDropOverlay.d.ts +0 -7
  125. package/TreeItem2DragAndDropOverlay/index.d.ts +0 -2
  126. package/TreeItem2DragAndDropOverlay/index.js +0 -1
  127. package/TreeItem2DragAndDropOverlay/package.json +0 -6
  128. package/TreeItem2Icon/TreeItem2Icon.d.ts +0 -7
  129. package/TreeItem2Icon/index.d.ts +0 -2
  130. package/TreeItem2Icon/index.js +0 -1
  131. package/TreeItem2LabelInput/TreeItem2LabelInput.d.ts +0 -5
  132. package/TreeItem2LabelInput/index.d.ts +0 -2
  133. package/TreeItem2LabelInput/index.js +0 -1
  134. package/TreeItem2Provider/TreeItem2Provider.d.ts +0 -6
  135. package/TreeItem2Provider/index.d.ts +0 -2
  136. package/TreeItem2Provider/index.js +0 -1
  137. package/TreeView/TreeView.d.ts +0 -21
  138. package/TreeView/TreeView.js +0 -211
  139. package/TreeView/TreeView.types.d.ts +0 -9
  140. package/TreeView/index.d.ts +0 -3
  141. package/TreeView/index.js +0 -3
  142. package/TreeView/package.json +0 -6
  143. package/TreeView/treeViewClasses.d.ts +0 -7
  144. package/TreeView/treeViewClasses.js +0 -6
  145. package/hooks/useTreeItem2Utils/index.d.ts +0 -1
  146. package/hooks/useTreeItem2Utils/index.js +0 -1
  147. package/modern/TreeItem/TreeItemContent.js +0 -146
  148. package/modern/TreeItem/useTreeItemState.js +0 -143
  149. package/modern/TreeItem2/TreeItem2.js +0 -387
  150. package/modern/TreeItem2/index.js +0 -1
  151. package/modern/TreeItem2DragAndDropOverlay/index.js +0 -1
  152. package/modern/TreeItem2Icon/index.js +0 -1
  153. package/modern/TreeItem2LabelInput/index.js +0 -1
  154. package/modern/TreeItem2Provider/TreeItem2Provider.types.js +0 -1
  155. package/modern/TreeItem2Provider/index.js +0 -1
  156. package/modern/TreeView/TreeView.js +0 -211
  157. package/modern/TreeView/TreeView.types.js +0 -1
  158. package/modern/TreeView/index.js +0 -3
  159. package/modern/TreeView/treeViewClasses.js +0 -6
  160. package/modern/hooks/useTreeItem2Utils/index.js +0 -1
  161. package/modern/useTreeItem2/index.js +0 -4
  162. package/modern/useTreeItem2/useTreeItem2.types.js +0 -1
  163. package/node/TreeItem/TreeItemContent.js +0 -153
  164. package/node/TreeItem/useTreeItemState.js +0 -148
  165. package/node/TreeItem2/TreeItem2.js +0 -394
  166. package/node/TreeItem2/index.js +0 -48
  167. package/node/TreeItem2DragAndDropOverlay/index.js +0 -12
  168. package/node/TreeItem2Icon/index.js +0 -12
  169. package/node/TreeItem2LabelInput/index.js +0 -12
  170. package/node/TreeItem2Provider/index.js +0 -12
  171. package/node/TreeView/TreeView.js +0 -217
  172. package/node/TreeView/TreeView.types.js +0 -5
  173. package/node/TreeView/index.js +0 -27
  174. package/node/TreeView/treeViewClasses.js +0 -14
  175. package/node/hooks/useTreeItem2Utils/index.js +0 -12
  176. package/node/useTreeItem2/index.js +0 -10
  177. package/node/useTreeItem2/useTreeItem2.types.js +0 -5
  178. package/useTreeItem2/index.d.ts +0 -3
  179. package/useTreeItem2/index.js +0 -4
  180. package/useTreeItem2/useTreeItem2.d.ts +0 -2
  181. package/useTreeItem2/useTreeItem2.types.js +0 -1
  182. /package/{TreeItem2/TreeItem2.types.js → TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.js} +0 -0
  183. /package/{TreeItem2DragAndDropOverlay/TreeItem2DragAndDropOverlay.types.js → TreeItemIcon/TreeItemIcon.types.js} +0 -0
  184. /package/{TreeItem2Icon/TreeItem2Icon.types.js → TreeItemLabelInput/TreeItemLabelInput.types.js} +0 -0
  185. /package/{TreeItem2LabelInput/TreeItem2LabelInput.types.js → TreeItemProvider/TreeItemProvider.types.js} +0 -0
  186. /package/{TreeItem2Provider/TreeItem2Provider.types.js → modern/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.js} +0 -0
  187. /package/{TreeView/TreeView.types.js → modern/TreeItemIcon/TreeItemIcon.types.js} +0 -0
  188. /package/modern/{TreeItem2/TreeItem2.types.js → TreeItemLabelInput/TreeItemLabelInput.types.js} +0 -0
  189. /package/modern/{TreeItem2DragAndDropOverlay/TreeItem2DragAndDropOverlay.types.js → TreeItemProvider/TreeItemProvider.types.js} +0 -0
  190. /package/modern/{TreeItem2Icon/TreeItem2Icon.types.js → useTreeItem/useTreeItem.types.js} +0 -0
  191. /package/node/{TreeItem2/TreeItem2.types.js → TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.js} +0 -0
  192. /package/node/{TreeItem2DragAndDropOverlay/TreeItem2DragAndDropOverlay.types.js → TreeItemIcon/TreeItemIcon.types.js} +0 -0
  193. /package/node/{TreeItem2Icon/TreeItem2Icon.types.js → TreeItemLabelInput/TreeItemLabelInput.types.js} +0 -0
  194. /package/node/{TreeItem2LabelInput/TreeItem2LabelInput.types.js → TreeItemProvider/TreeItemProvider.types.js} +0 -0
  195. /package/node/{TreeItem2Provider/TreeItem2Provider.types.js → useTreeItem/useTreeItem.types.js} +0 -0
  196. /package/{modern/TreeItem2LabelInput/TreeItem2LabelInput.types.js → useTreeItem/useTreeItem.types.js} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,149 +1,200 @@
1
1
  # Changelog
2
2
 
3
+ > For full v7 changelog, please refer to the [v.7x branch](https://github.com/mui/mui-x/blob/v7.x/CHANGELOG.md).
4
+
3
5
  All notable changes to this project will be documented in this file.
4
6
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
7
 
6
- ## 7.22.1
8
+ ## 8.0.0-alpha.0
7
9
 
8
- _Nov 1, 2024_
10
+ <img width="100%" alt="MUI X v8 Alpha is live" src="https://github.com/user-attachments/assets/114cf615-b617-435f-8499-76ac3c26c57b">
9
11
 
10
- We'd like to offer a big thanks to the 7 contributors who made this release possible. Here are some highlights ✨:
12
+ _Nov 14, 2024_
11
13
 
14
+ We'd like to offer a big thanks to the 22 contributors who made this release possible. Here are some highlights ✨:
15
+
16
+ - 🔁 Support [automatic parents and children selection](https://next.mui.com/x/react-tree-view/rich-tree-view/selection/#automatic-parents-and-children-selection) for the Rich Tree View components.
17
+ - 🌍 Improve Greek (el-GR) locale on the Date and Time Pickers components
18
+ - 🌍 Improve Polish (pl-PL) locale on the Data Grid component
12
19
  - 🐞 Bugfixes
13
20
  - 📚 Documentation improvements
14
- - 🌍 Improve Polish (pl-PL) locale on the Date Pickers
15
21
 
16
- Special thanks go out to the community contributors who have helped make this release possible:
17
- @wojtkolos, @dpak-maurya, @k-rajat19.
18
- Following are all team members who have contributed to this release:
19
- @LukasTy, @arminmeh, @MBilalShafi, @KenanYusuf, @flaviendelangle.
22
+ Special thanks go out to the community contributors who have helped make this release possible:
23
+ @belkocik, @GeorgiosDrivas, @k-rajat19, @kalyan90, @DungTiger, @fxnoob, @GuillaumeMeheut
24
+ Following are all team members who have contributed to this release:
25
+ @alexfauquette, @arminmeh, @arthurbalduini, @cherniavskii, @flaviendelangle, @JCQuintas, @KenanYusuf, @LukasTy, @MBilalShafi, @michelengelen, @noraleonte, @oliviertassinari, @romgrk, @samuelsycamore, @joserodolfofreitas.
20
26
 
21
27
  <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
22
28
 
23
29
  ### Data Grid
24
30
 
25
- #### `@mui/x-data-grid@7.22.1`
26
-
27
- - [DataGrid] Fix right column group header border (#15152) @KenanYusuf
28
- - [DataGrid] Fix scroll jump when holding down arrow keys (#15167) @arminmeh
29
- - [DataGrid] Move `rowGroupingModelChange` handler to respective hook (#15127) @MBilalShafi
30
- - [DataGrid] Prevent error when deleting the last row (#15153) @dpak-maurya
31
- - [DataGrid] Fix overlay height in autoHeight mode (#15205) @cherniavskii
31
+ #### `@mui/x-data-grid@8.0.0-alpha.0`
32
32
 
33
- #### `@mui/x-data-grid-pro@7.22.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
33
+ - [DataGrid] Fix grid overlay aligment with scroll for rtl (#15072) @kalyan90
34
+ - [DataGrid] Fix resizing right pinned column (#15107) @KenanYusuf
35
+ - [DataGrid] Pass the reason to the `onPaginationModelChange` callback (#13959) @DungTiger
36
+ - [DataGrid] Set default overlay height in flex parent layout (#15202) @cherniavskii
37
+ - [DataGrid] Refactor `baseMenuList` and `baseMenuItem` (#15049) @romgrk
38
+ - [DataGrid] Remove more material imports (#15063) @romgrk
39
+ - [l10n] Improve Polish (pl-PL) locale (#15227) @belkocik
34
40
 
35
- Same changes as in `@mui/x-data-grid@7.22.1`, plus:
41
+ #### `@mui/x-data-grid-pro@8.0.0-alpha.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
36
42
 
37
- - [DataGridPro] Add list view tests (#15166) @KenanYusuf
43
+ Same changes as in `@mui/x-data-grid@8.0.0-alpha.0`, plus:
38
44
 
39
- #### `@mui/x-data-grid-premium@7.22.1` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
45
+ - [DataGridPro] Fix column pinning layout (#14966) @cherniavskii
40
46
 
41
- - [DataGridPremium] Keep focus on the grouping cell on space bar press #15155 @k-rajat19
42
-
43
- ### Date and Time Pickers
47
+ #### `@mui/x-data-grid-premium@8.0.0-alpha.0` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
44
48
 
45
- #### `@mui/x-date-pickers@7.22.1`
49
+ Same changes as in `@mui/x-data-grid-pro@8.0.0-alpha.0`, plus:
46
50
 
47
- - [l10n] Improve Polish (pl-PL) locale (#15177) @wojtkolos
51
+ - [DataGridPremium] Server-side data source with row grouping (#13826) @MBilalShafi
48
52
 
49
- #### `@mui/x-date-pickers-pro@7.22.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
50
-
51
- Same changes as in `@mui/x-date-pickers@7.22.1`.
52
-
53
- ### Tree View
54
-
55
- #### `@mui/x-tree-view@7.22.1`
53
+ ### Date and Time Pickers
56
54
 
57
- - [TreeView] Export `TreeItem2DragAndDropOverlay` and `TreeItem2LabelInput` from the root of each package (#15208) @flaviendelangle
58
- - [TreeView] Fix drag and drop color usage (#15149) @LukasTy
55
+ #### Breaking changes
59
56
 
60
- #### `@mui/x-tree-view-pro@7.22.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
57
+ - The default DOM structure of the field has changed [Learn more](https://next.mui.com/x/migration/migration-pickers-v7/#new-dom-structure-for-the-field).
61
58
 
62
- Same changes as in `@mui/x-tree-view@7.22.1`.
59
+ - Before version `v8.x`, the fields' DOM structure consisted of an `<input />`, which held the whole value for the component, but unfortunately presents a few limitations in terms of accessibility when managing multiple section values.
60
+ - Starting with version `v8.x`, all the field and picker components come with a new DOM structure that allows the field component to set aria attributes on individual sections, providing a far better experience with screen readers.
63
61
 
64
- ### Docs
62
+ - Some translation keys no longer require `utils` and the date object as parameters, but only the formatted value as a string. The keys affected by this changes are: `clockLabelText`, `openDatePickerDialogue` and `openTimePickerDialogue` — [Learn more](https://next.mui.com/x/migration/migration-pickers-v7/#stop-passing-utils-and-the-date-object-to-some-translation-keys).
65
63
 
66
- - [docs] Add section explaining how to keep the selection while filtering in Data grid docs (#15199) @arminmeh
64
+ - The following types are no longer exported by `@mui/x-date-pickers` and `@mui/x-date-pickers-pro` [Learn more](https://next.mui.com/x/migration/migration-pickers-v7/#removed-types).
67
65
 
68
- ## 7.22.0
66
+ - `UseDateFieldComponentProps`
67
+ - `UseTimeFieldComponentProps`
68
+ - `UseDateTimeFieldComponentProps`
69
+ - `BaseSingleInputFieldProps`
70
+ - `BaseMultiInputFieldProps`
71
+ - `BasePickersTextFieldProps`
69
72
 
70
- _Oct 25, 2024_
73
+ - The `TDate` generic has been removed from all the types, interfaces, and variables of the `@mui/x-date-pickers` and `@mui/x-date-pickers-pro` packages — [Learn more](https://next.mui.com/x/migration/migration-pickers-v7/#remove-tdate-generic).
71
74
 
72
- We'd like to offer a big thanks to the 11 contributors who made this release possible. Here are some highlights ✨:
75
+ - Renamed `usePickersTranslations` and `usePickersContext` hooks to have a coherent `Picker` prefix instead of `Pickers` [Learn more](https://next.mui.com/x/migration/migration-pickers-v7/#renamed-variables).
73
76
 
74
- - 🛰 Introduce [server-side support for Data Grid row grouping](https://mui.com/x/react-data-grid/server-side-data/row-grouping/)
75
- - 🐞 Bugfixes
76
- - 📚 Documentation improvements
77
- - 🌍 Improve Portuguese (pt-BR) locale on the Data Grid component
77
+ - The `LicenseInfo` object is no longer exported from the `@mui/x-date-pickers-pro` package — [Learn more](https://next.mui.com/x/migration/migration-pickers-v7/#stop-using-licenseinfo-from-mui-x-date-pickers-pro).
78
78
 
79
- Special thanks go out to the community contributors who have helped make this release possible:
80
- @clins1994, @GITPHLAP, @k-rajat19, @kalyan90, @merotosc, @yash49.
81
- Following are all team members who have contributed to this release:
82
- @cherniavskii, @flaviendelangle, @LukasTy, @MBilalShafi, @romgrk.
79
+ #### `@mui/x-date-pickers@8.0.0-alpha.0`
83
80
 
84
- <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
81
+ - [fields] Enable the new field DOM structure by default (#14651) @flaviendelangle
82
+ - [fields] Remove `UseDateFieldComponentProps` and equivalent interfaces (#15053) @flaviendelangle
83
+ - [fields] Remove clear button from the tab sequence (#14616) @k-rajat19
84
+ - [l10n] Improve Greek (el-GR) locale (#15250) @GeorgiosDrivas
85
+ - [pickers] Clean definition of validation props (#15198) @flaviendelangle
86
+ - [pickers] Clean the new `ownerState` object (#15056) @flaviendelangle
87
+ - [pickers] Correctly type the `ownerState` of the `field` and `actionBar` slots when resolved in a picker component (#15162) @flaviendelangle
88
+ - [pickers] Fix `DateCalendar` timezone management (#12321) @LukasTy
89
+ - [pickers] Fix `DateTimeRangePicker` error when using format without time (#14917) @fxnoob
90
+ - [pickers] Fix `DigitalClock` time options on a `DST` switch day (#10793) @LukasTy
91
+ - [pickers] Remove `TDate` generics in favor of `PickerValidDate` direct usage (#15001) @flaviendelangle
92
+ - [pickers] Remove `utils` and `value` params from translations (#14986) @arthurbalduini
93
+ - [pickers] Remove plural in "Pickers" on recently introduced APIs (#15297) @flaviendelangle
94
+ - [pickers] Remove the re-export from `@mui/x-license` (#14487) @k-rajat19
95
+ - [pickers] Strictly type the props a picker passes to its field, and migrate all the custom field demos accordingly (#15197) @flaviendelangle
96
+ - [pickers] Unify JSDoc for all the `disabled` and `readOnly` props (#15304) @flaviendelangle
97
+ - [pickers] Use the new `ownerState` in `DateCalendar`, `DateRangeCalendar`, `MonthCalendar` and `YearCalendar` (#15171) @flaviendelangle
98
+ - [pickers] Use the new `ownerState` in `usePickersLayout` and `useXXXPicker` (#14994) @flaviendelangle
85
99
 
86
- ### Data Grid
100
+ #### `@mui/x-date-pickers-pro@8.0.0-alpha.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
87
101
 
88
- #### `@mui/x-data-grid@7.22.0`
102
+ Same changes as in `@mui/x-date-pickers@8.0.0-alpha.0`.
89
103
 
90
- - [DataGrid] Fix `GridPanelAnchor` positioning (#15022) @k-rajat19
91
- - [DataGrid] Fix ugly prop-types for the `pageStyle` prop of the `GridPrintExportMenuItem` component (#15015) @flaviendelangle
92
- - [DataGrid] Fix value type in filter model for number and boolean column type (#14733) @k-rajat19
93
- - [DataGrid] Focus next row when the focused row is deleted (#15067) @cherniavskii
94
- - [DataGrid] Remove some usages of `<Box />` and `<Badge />` (#15013) @romgrk
95
- - [DataGrid] Fix number of rows to display for page size options with negative value (#14890) @kalyan90
96
- - [l10n] Improve Portuguese (pt-BR) locale (#15021) @k-rajat19
104
+ ### Charts
97
105
 
98
- #### `@mui/x-data-grid-pro@7.22.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
106
+ #### Breaking changes
99
107
 
100
- Same changes as in `@mui/x-data-grid@7.22.0`, plus:
108
+ - The `legend` prop got removed. To pass props to the legend, use `slotProps={{ legend: { ... } }}` instead. This can be automatically done with the codemod as long as the `legend` prop does not come from a destructured object — [Learn more](https://next.mui.com/x/migration/migration-charts-v7/#legend-props-propagation-✅).
101
109
 
102
- - [DataGridPro] Fix column pinning layout (#15073) @cherniavskii
110
+ - The `slots.legend` does not receive the `drawingArea` prop. You can still access your custom legend with the `useDrawingArea()` hook if your custom legend needs it.
103
111
 
104
- #### `@mui/x-data-grid-premium@7.22.0` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
112
+ - Removed or renamed multiple props from Series — [Learn more](https://next.mui.com/x/migration/migration-charts-v7/#series-properties-renaming).
105
113
 
106
- Same changes as in `@mui/x-data-grid-pro@7.22.0`, plus:
114
+ - The `highlighted` and `faded` properties of highlightScope were deprecated in favor of `highlight` and `fade`.
115
+ The deprecated ones are now removed.
116
+ - The `xAxisKey`, `yAxisKey`, and `zAxisKey` properties got deprecated in favor of `xAxisId`, `yAxisId`, and `zAxisId`.
107
117
 
108
- - [DataGridPremium] Server-side data source with row grouping (#15109) @MBilalShafi
118
+ - The Pie Chart lost all props and renderer linked to axes because pie chart does not need cartesian axes. If you used it, you can still add them back with composition. Please consider opening an issue to share your use case with us — [Learn more](https://next.mui.com/x/migration/migration-charts-v7/#remove-pie-chart-axes).
109
119
 
110
- ### Date and Time Pickers
120
+ #### `@mui/x-charts@8.0.0-alpha.0`
111
121
 
112
- #### `@mui/x-date-pickers@7.22.0`
122
+ - [charts] Introduce `hideLegend` prop (#15277) @alexfauquette
123
+ - [charts] Filter items outside the drawing area for performance (#14281) @alexfauquette
124
+ - [charts] Fix log scale with `null` data (#15337) @alexfauquette
125
+ - [charts] Fix tooltip follow mouse (#15189) @alexfauquette
126
+ - [charts] Remove `xAxisKey`, `yAxisKey`, and `zAxisKey` series keys (#15192) @alexfauquette
127
+ - [charts] Remove axis from the pie chart (#15187) @alexfauquette
128
+ - [charts] Remove deprecated `legend` props (#15081) @alexfauquette
129
+ - [charts] Remove deprecated highlight properties (#15191) @alexfauquette
130
+ - [charts] Update Popper position outside of React (#15003) @alexfauquette
131
+ - [charts] Improve the performance of the `getSymbol` method (#15233) @romgrk
113
132
 
114
- - [pickers] Fix `DateCalendar` timezone management (#15119) @LukasTy
115
- - [pickers] Fix `DigitalClock` time options on a `DST` switch day (#15092) @LukasTy
133
+ #### `@mui/x-charts-pro@8.0.0-alpha.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
116
134
 
117
- #### `@mui/x-date-pickers-pro@7.22.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
135
+ Same changes as in `@mui/x-charts@8.0.0-alpha.0`.
118
136
 
119
- Same changes as in `@mui/x-date-pickers@7.22.0`.
137
+ ### Tree View
120
138
 
121
- ### Charts
139
+ #### Breaking changes
122
140
 
123
- #### `@mui/x-charts@7.22.0`
141
+ - The `ContentComponent` or `ContentProps` props of the `<TreeItem />` component have been removed in favor of the new `slots`, `slotProps` props and of the `useTreeItem` hook — [Learn more](https://next.mui.com/x/migration/migration-tree-view-v7/#new-api-to-customize-the-tree-item).
124
142
 
125
- - [charts] Export data type in `onAxisClick(_, data)` callback (#15038) @clins1994
143
+ - The `onClick` and `onMouseDown` callbacks of the Tree Item component are now passed to the root element instead of the content — [Learn more](https://next.mui.com/x/migration/migration-tree-view-v7/#behavior-change-on-the-onclick-and-onmousedown-props-of-treeitem).
126
144
 
127
- #### `@mui/x-charts-pro@7.0.0-beta.6` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
145
+ - Rename the `<TreeItem2 />` component (and related utils) — [Learn more](https://next.mui.com/x/migration/migration-tree-view-v7/#✅-rename-the-treeitem2-and-related-utils).
128
146
 
129
- Same changes as in `@mui/x-charts@7.22.0`.
147
+ - The `<TreeView />` component has been renamed `<SimpleTreeView />` which has exactly the same API — [Learn more](https://next.mui.com/x/migration/migration-tree-view-v7/#✅-use-simple-tree-view-instead-of-tree-view).
130
148
 
131
- ### Tree View
149
+ - The indentation of nested Tree Items is now applied on the content of the element — [Learn more](https://next.mui.com/x/migration/migration-tree-view-v7/#apply-the-indentation-on-the-item-content-instead-of-its-parents-group).
132
150
 
133
- #### `@mui/x-tree-view@7.22.0`
151
+ #### `@mui/x-tree-view@8.0.0-alpha.0`
134
152
 
135
- - [TreeView] Make the cancellable event types public (#14992) @flaviendelangle
153
+ - [TreeView] Always apply the indentation on the item content instead of its parent's group (#15089) @flaviendelangle
154
+ - [TreeView] Automatic parents and children selection (#14899) @flaviendelangle
155
+ - [TreeView] Remove deprecated `TreeView` component (#15093) @flaviendelangle
156
+ - [TreeView] Replace `<TreeItem />` with `<TreeItem2 />` and migrate all the components and utils (#14913) @flaviendelangle
136
157
 
137
158
  ### Docs
138
159
 
139
- - [docs] Fix typo in Tree View docs (#15047) @yash49
160
+ - [docs] Add docs for rounded symbol (#15324) @GuillaumeMeheut
161
+ - [docs] Add migration guide for the removal of `LicenseInfo` from `@mui/x-date-pickers-pro` (#15321) @flaviendelangle
162
+ - [docs] Add migration guide for the first breaking changes of charts (#15276) @alexfauquette
163
+ - [docs] Add `PickersPopper` component to the Date Picker customization playground (#15305) @LukasTy
164
+ - [docs] Add v8 to supported releases table (#15384) @joserodolfofreitas
165
+ - [docs] Apply the new DX to the Button Field demos (#14860) @flaviendelangle
166
+ - [docs] Apply the new DX to the `Autocomplete` Field demo (#15165) @flaviendelangle
167
+ - [docs] Cleanup the pickers migration guide (#15310) @flaviendelangle
168
+ - [docs] Copyedit the Charts Getting Started sequence (#14962) @samuelsycamore
169
+ - [docs] Create Pickers masked field recipe (#13515) @flaviendelangle
170
+ - [docs] Fix `applyDomain` docs for the charts (#15332) @JCQuintas
171
+ - [docs] Fix link to private notion page (#15396) @michelengelen
172
+ - [docs] Fix missing punctuation on descriptions (#15229) @oliviertassinari
173
+ - [docs] Fix peer dependency range (#15281) @oliviertassinari
174
+ - [docs] Fix small Tree View typo (#15390) @oliviertassinari
175
+ - [docs] Fix the `AdapterMomentHijri` doc section (#15312) @flaviendelangle
176
+ - [docs] Replace the Tree Item anatomy images (#15066) @noraleonte
177
+ - [docs] Start v8 migration guides (#15096) @MBilalShafi
178
+ - [docs] Subdivide and reorganize navigation bar (#15014) @samuelsycamore
179
+ - [docs] Use `PickersTextField` in the customization playground (#15288) @LukasTy
180
+ - [docs] Use `next` instead of `^8.0.0` in the migration guides (#15091) @flaviendelangle
140
181
 
141
182
  ### Core
142
183
 
143
- - [core] Adjust cherry-pick GH actions (#15101) @LukasTy
144
- - [core] Update prettier target branch (#15100) @MBilalShafi
145
- - [core] Update some `default-branch-switch` instances for `v7.x` (#15085) @MBilalShafi
146
- - [test] Revert to using `fireEvent` instead of `userEvent` (#14927) @LukasTy
184
+ - [core] Adjust the `cherry-pick` GitHub actions (#15099) @LukasTy
185
+ - [core] Add `()` at the name of function name in the doc (#15075) @oliviertassinari
186
+ - [core] Clarify release version bump strategy (#15219) @cherniavskii
187
+ - [core] Fix CodeSandbox and StackBlitz for next doc-infra sync @oliviertassinari
188
+ - [core] Fix Vale error on `master` @oliviertassinari
189
+ - [core] Fix changelog reference to VoiceOver @oliviertassinari
190
+ - [core] Fix `tools-public.mui.com` redirection @oliviertassinari
191
+ - [core] Fix webpack capitalization (#15353) @oliviertassinari
192
+ - [core] Move `helpers` to `@mui/x-internals` package (#15188) @LukasTy
193
+ - [code-infra] Set renovate to automerge devDependencies (#13463) @JCQuintas
194
+ - [infra] Reintroduce the cherry pick workflow (#15293) @michelengelen
195
+ - [core] Remove duplicate title header (#15389) @oliviertassinari
196
+ - [release] v8 preparation (#15054) @michelengelen
197
+ - [test] Fix advanced list view regression test snapshot (#15260) @KenanYusuf
147
198
 
148
199
  ## 7.21.0
149
200
 
@@ -211,7 +262,7 @@ Same changes as in `@mui/x-charts@7.21.0`.
211
262
 
212
263
  #### `@mui/x-tree-view@7.21.0`
213
264
 
214
- - [TreeView] Fix `alpha` usage with CSS variables (#14969) @wangkailang
265
+ - [TreeView] Fix `alpha()` usage with CSS variables (#14969) @wangkailang
215
266
  - [TreeView] Fix usage of the `aria-selected` attribute (#14991) @flaviendelangle
216
267
  - [TreeView] Fix hydration error (#15002) @flaviendelangle
217
268
 
@@ -431,7 +482,7 @@ Same changes as in `@mui/x-charts@7.19.0`.
431
482
  - [code-infra] Remove custom playwright installation steps (#14728) @Janpot
432
483
  - [code-infra] Replace or remove all instances of `e` identifier (#14724) @samuelsycamore
433
484
  - [infra] Adds community contribution section to the changelog script (#14799) @michelengelen
434
- - [infra] Fix line break in Stack Overflow message @oliviertassinari
485
+ - [infra] Fix line break in Stack Overflow message @oliviertassinari
435
486
  - [test] Fix `Escape` event firing event (#14797) @oliviertassinari
436
487
 
437
488
  ## 7.18.0
@@ -523,7 +574,7 @@ Same changes as in `@mui/x-charts@7.18.0`.
523
574
  - [core] Fix 301 link to Next.js and git diff @oliviertassinari
524
575
  - [core] Fix failing CI on `master` (#14644) @cherniavskii
525
576
  - [core] Fix `package.json` repository rule @oliviertassinari
526
- - [core] MUI X repository moved to a new location @oliviertassinari
577
+ - [core] MUI X repository moved to a new location @oliviertassinari
527
578
  - [docs-infra] Strengthen CSP (#14581) @oliviertassinari
528
579
  - [license] Finish renaming of LicensingModel (#14615) @oliviertassinari
529
580
 
@@ -547,7 +598,7 @@ We'd like to offer a big thanks to the 12 contributors who made this release pos
547
598
 
548
599
  - [DataGrid] Add "does not equal" and "does not contain" filter operators (#14489) @KenanYusuf
549
600
  - [DataGrid] Add demo to the "Custom columns" page that does not use generator (#13695) @arminmeh
550
- - [DataGrid] Fix Voice Over reading the column name twice (#14482) @arminmeh
601
+ - [DataGrid] Fix VoiceOver reading the column name twice (#14482) @arminmeh
551
602
  - [DataGrid] Fix bug in CRUD example (#14513) @michelengelen
552
603
  - [DataGrid] Fix failing jsdom tests caused by `:has()` selectors (#14559) @KenanYusuf
553
604
  - [DataGrid] Refactor string operator filter functions (#14564) @KenanYusuf
@@ -1003,10 +1054,9 @@ No changes since `@mui/x-tree-view@7.12.0`.
1003
1054
 
1004
1055
  ### Docs
1005
1056
 
1006
- - [docs] Add a warning to promote the usage of `updateRows` (#14027) @MBilalShafi
1057
+ - [docs] Add a warning to promote the usage of `updateRows()` (#14027) @MBilalShafi
1007
1058
  - [docs] Disable ad in `Rich Tree View-Ordering` page (#14123) @oliviertassinari
1008
1059
  - [docs] Redesign Date and Time Pickers overview page (#13241) @noraleonte
1009
-
1010
1060
  - [CHANGELOG] Polish details @oliviertassinari
1011
1061
  - [code-infra] Use concurrency 1 in CircleCI (#14110) @JCQuintas
1012
1062
  - [infra] Re-added the removal of `Latest Version` section (#14132) @michelengelen
@@ -1367,7 +1417,7 @@ _Jul 5, 2024_
1367
1417
  We'd like to offer a big thanks to the 7 contributors who made this release possible. Here are some highlights ✨:
1368
1418
 
1369
1419
  - 🔄 Add loading overlay variants, including a skeleton loader option to the Data Grid component. See [Loading overlay docs](https://mui.com/x/react-data-grid/overlays/#loading-overlay) for more details.
1370
- - 🌳 Add `selectItem` and `getItemDOMElement` methods to the TreeView component public API
1420
+ - 🌳 Add `selectItem()` and `getItemDOMElement()` methods to the TreeView component public API
1371
1421
  - ⛏️ Make the `usePickersTranslations` hook public in the pickers component
1372
1422
  - 🐞 Bugfixes
1373
1423
 
@@ -1412,7 +1462,7 @@ Same changes as in `@mui/x-date-pickers@7.9.0`.
1412
1462
 
1413
1463
  #### `@mui/x-tree-view@7.9.0`
1414
1464
 
1415
- - [TreeView] Add `selectItem` and `getItemDOMElement` methods to the public API (#13485) @flaviendelangle
1465
+ - [TreeView] Add `selectItem()` and `getItemDOMElement()` methods to the public API (#13485) @flaviendelangle
1416
1466
 
1417
1467
  ### Docs
1418
1468
 
@@ -3044,7 +3094,8 @@ Same changes as in `@mui/x-data-grid-pro@7.0.0-beta.4`.
3044
3094
  ```
3045
3095
 
3046
3096
  - The headless field hooks (e.g.: `useDateField`) now returns a new prop called `enableAccessibleFieldDOMStructure`.
3047
- 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).
3097
+ This property is utilized to determine whether the anticipated UI is constructed using an accessible DOM structure.
3098
+ Learn more about this new accessible DOM structure in the [v8 migration guide](https://next.mui.com/x/migration/migration-pickers-v7/#new-dom-structure-for-the-field).
3048
3099
 
3049
3100
  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:
3050
3101
 
package/README.md CHANGED
@@ -11,11 +11,11 @@ Install the package in your project directory with:
11
11
  npm install @mui/x-tree-view
12
12
  ```
13
13
 
14
- This component has the following peer dependencies that you will need to install as well.
14
+ This component has the following peer dependencies that you need to install as well.
15
15
 
16
16
  ```json
17
17
  "peerDependencies": {
18
- "@mui/material": "^5.15.14",
18
+ "@mui/material": "^5.15.14 || ^6.0.0",
19
19
  "react": "^17.0.0 || ^18.0.0",
20
20
  "react-dom": "^17.0.0 || ^18.0.0"
21
21
  },
@@ -155,7 +155,6 @@ process.env.NODE_ENV !== "production" ? RichTreeView.propTypes = {
155
155
  * the feature will be fully disabled and any property / method call will not have any effect.
156
156
  */
157
157
  experimentalFeatures: PropTypes.shape({
158
- indentationAtItemLevel: PropTypes.bool,
159
158
  labelEditing: PropTypes.bool
160
159
  }),
161
160
  /**
@@ -260,6 +259,26 @@ process.env.NODE_ENV !== "production" ? RichTreeView.propTypes = {
260
259
  * When `multiSelect` is true this takes an array of strings; when false (default) a string.
261
260
  */
262
261
  selectedItems: PropTypes.any,
262
+ /**
263
+ * When `selectionPropagation.descendants` is set to `true`.
264
+ *
265
+ * - Selecting a parent selects all its descendants automatically.
266
+ * - Deselecting a parent deselects all its descendants automatically.
267
+ *
268
+ * When `selectionPropagation.parents` is set to `true`.
269
+ *
270
+ * - Selecting all the descendants of a parent selects the parent automatically.
271
+ * - Deselecting a descendant of a selected parent deselects the parent automatically.
272
+ *
273
+ * Only works when `multiSelect` is `true`.
274
+ * On the <SimpleTreeView />, only the expanded items are considered (since the collapsed item are not passed to the Tree View component at all)
275
+ *
276
+ * @default { parents: false, descendants: false }
277
+ */
278
+ selectionPropagation: PropTypes.shape({
279
+ descendants: PropTypes.bool,
280
+ parents: PropTypes.bool
281
+ }),
263
282
  /**
264
283
  * The props used for each component slot.
265
284
  * @default {}
@@ -2,12 +2,12 @@ import * as React from 'react';
2
2
  import { Theme } from '@mui/material/styles';
3
3
  import { SxProps } from '@mui/system';
4
4
  import { SlotComponentProps } from '@mui/utils';
5
+ import { SlotComponentPropsFromProps } from '@mui/x-internals/types';
5
6
  import { RichTreeViewClasses } from './richTreeViewClasses';
6
7
  import { RichTreeViewPluginParameters, RichTreeViewPluginSlotProps, RichTreeViewPluginSlots, RichTreeViewPluginSignatures } from './RichTreeView.plugins';
7
8
  import { TreeItemProps } from '../TreeItem';
8
- import { TreeItem2Props } from '../TreeItem2';
9
9
  import { TreeViewItemId } from '../models';
10
- import { SlotComponentPropsFromProps, TreeViewExperimentalFeatures, TreeViewPublicAPI } from '../internals/models';
10
+ import { TreeViewExperimentalFeatures, TreeViewPublicAPI } from '../internals/models';
11
11
  interface RichTreeViewItemSlotOwnerState {
12
12
  itemId: TreeViewItemId;
13
13
  label: string;
@@ -22,11 +22,11 @@ export interface RichTreeViewSlots extends RichTreeViewPluginSlots {
22
22
  * Custom component for the item.
23
23
  * @default TreeItem.
24
24
  */
25
- item?: React.JSXElementConstructor<TreeItemProps> | React.JSXElementConstructor<TreeItem2Props>;
25
+ item?: React.JSXElementConstructor<TreeItemProps>;
26
26
  }
27
27
  export interface RichTreeViewSlotProps<R extends {}, Multiple extends boolean | undefined> extends RichTreeViewPluginSlotProps {
28
28
  root?: SlotComponentProps<'ul', {}, RichTreeViewProps<R, Multiple>>;
29
- item?: SlotComponentPropsFromProps<TreeItemProps | TreeItem2Props, {}, RichTreeViewItemSlotOwnerState>;
29
+ item?: SlotComponentPropsFromProps<TreeItemProps, {}, RichTreeViewItemSlotOwnerState>;
30
30
  }
31
31
  export type RichTreeViewApiRef = React.MutableRefObject<TreeViewPublicAPI<RichTreeViewPluginSignatures> | undefined>;
32
32
  export interface RichTreeViewPropsBase extends React.HTMLAttributes<HTMLUListElement> {
@@ -154,9 +154,7 @@ process.env.NODE_ENV !== "production" ? SimpleTreeView.propTypes = {
154
154
  * For each feature, if the flag is not explicitly set to `true`,
155
155
  * the feature will be fully disabled and any property / method call will not have any effect.
156
156
  */
157
- experimentalFeatures: PropTypes.shape({
158
- indentationAtItemLevel: PropTypes.bool
159
- }),
157
+ experimentalFeatures: PropTypes.object,
160
158
  /**
161
159
  * This prop is used to help implement the accessibility logic.
162
160
  * If you don't provide this prop. It falls back to a randomly generated id.
@@ -217,6 +215,26 @@ process.env.NODE_ENV !== "production" ? SimpleTreeView.propTypes = {
217
215
  * When `multiSelect` is true this takes an array of strings; when false (default) a string.
218
216
  */
219
217
  selectedItems: PropTypes.any,
218
+ /**
219
+ * When `selectionPropagation.descendants` is set to `true`.
220
+ *
221
+ * - Selecting a parent selects all its descendants automatically.
222
+ * - Deselecting a parent deselects all its descendants automatically.
223
+ *
224
+ * When `selectionPropagation.parents` is set to `true`.
225
+ *
226
+ * - Selecting all the descendants of a parent selects the parent automatically.
227
+ * - Deselecting a descendant of a selected parent deselects the parent automatically.
228
+ *
229
+ * Only works when `multiSelect` is `true`.
230
+ * On the <SimpleTreeView />, only the expanded items are considered (since the collapsed item are not passed to the Tree View component at all)
231
+ *
232
+ * @default { parents: false, descendants: false }
233
+ */
234
+ selectionPropagation: PropTypes.shape({
235
+ descendants: PropTypes.bool,
236
+ parents: PropTypes.bool
237
+ }),
220
238
  /**
221
239
  * The props used for each component slot.
222
240
  */
@@ -1,5 +1,22 @@
1
1
  import * as React from 'react';
2
+ import { CheckboxProps } from '@mui/material/Checkbox';
2
3
  import { TreeItemProps } from './TreeItem.types';
4
+ import { UseTreeItemStatus } from '../useTreeItem';
5
+ export declare const TreeItemRoot: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, Pick<React.DetailedHTMLProps<React.LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, keyof React.ClassAttributes<HTMLLIElement> | keyof React.LiHTMLAttributes<HTMLLIElement>>, {}>;
6
+ export declare const TreeItemContent: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
7
+ status: UseTreeItemStatus;
8
+ }, React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
9
+ export declare const TreeItemLabel: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
10
+ editable?: boolean;
11
+ }, React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
12
+ export declare const TreeItemIconContainer: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.ClassAttributes<HTMLDivElement> | keyof React.HTMLAttributes<HTMLDivElement>>, {}>;
13
+ export declare const TreeItemGroupTransition: import("@emotion/styled").StyledComponent<Pick<import("@mui/material").CollapseProps, keyof import("@mui/material").CollapseProps> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
14
+ export declare const TreeItemCheckbox: import("@emotion/styled").StyledComponent<Pick<Omit<CheckboxProps & {
15
+ visible?: boolean;
16
+ }, "ref"> & React.RefAttributes<HTMLButtonElement>, "hidden" | "visible" | "color" | "content" | "size" | "style" | "icon" | "translate" | "disabled" | "form" | "slot" | "title" | "suppressHydrationWarning" | "className" | "id" | "lang" | "name" | "role" | "tabIndex" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-braillelabel" | "aria-brailleroledescription" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colindextext" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-description" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowindextext" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerLeave" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "accessKey" | "autoCapitalize" | "autoFocus" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "enterKeyHint" | "nonce" | "spellCheck" | "radioGroup" | "about" | "datatype" | "inlist" | "prefix" | "property" | "rel" | "resource" | "rev" | "typeof" | "vocab" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "value" | "readOnly" | "required" | "action" | "checked" | "component" | "sx" | "classes" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple" | "edge" | "checkedIcon" | "inputProps" | "inputRef" | "indeterminate" | "indeterminateIcon" | keyof React.RefAttributes<HTMLButtonElement>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
17
+ type TreeItemComponent = ((props: TreeItemProps & React.RefAttributes<HTMLLIElement>) => React.JSX.Element) & {
18
+ propTypes?: any;
19
+ };
3
20
  /**
4
21
  *
5
22
  * Demos:
@@ -8,6 +25,7 @@ import { TreeItemProps } from './TreeItem.types';
8
25
  *
9
26
  * API:
10
27
  *
11
- * - [TreeItem API](https://mui.com/x/api/tree-view/tree-item/)
28
+ * - [TreeItem API](https://mui.com/x/api/tree-view/tree-item-2/)
12
29
  */
13
- export declare const TreeItem: React.ForwardRefExoticComponent<TreeItemProps & React.RefAttributes<HTMLLIElement>>;
30
+ export declare const TreeItem: TreeItemComponent;
31
+ export {};