@mui/x-tree-view 7.0.0-alpha.1 → 7.0.0-alpha.7

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 (203) hide show
  1. package/CHANGELOG.md +1254 -188
  2. package/README.md +0 -1
  3. package/RichTreeView/RichTreeView.d.ts +20 -0
  4. package/RichTreeView/RichTreeView.js +324 -0
  5. package/RichTreeView/RichTreeView.types.d.ts +55 -0
  6. package/RichTreeView/RichTreeView.types.js +1 -0
  7. package/RichTreeView/index.d.ts +3 -0
  8. package/RichTreeView/index.js +3 -0
  9. package/RichTreeView/package.json +6 -0
  10. package/RichTreeView/richTreeViewClasses.d.ts +7 -0
  11. package/RichTreeView/richTreeViewClasses.js +6 -0
  12. package/SimpleTreeView/SimpleTreeView.d.ts +20 -0
  13. package/SimpleTreeView/SimpleTreeView.js +268 -0
  14. package/SimpleTreeView/SimpleTreeView.plugins.d.ts +6 -0
  15. package/SimpleTreeView/SimpleTreeView.plugins.js +5 -0
  16. package/SimpleTreeView/SimpleTreeView.types.d.ts +38 -0
  17. package/SimpleTreeView/SimpleTreeView.types.js +1 -0
  18. package/SimpleTreeView/index.d.ts +3 -0
  19. package/SimpleTreeView/index.js +3 -0
  20. package/SimpleTreeView/package.json +6 -0
  21. package/SimpleTreeView/simpleTreeViewClasses.d.ts +7 -0
  22. package/SimpleTreeView/simpleTreeViewClasses.js +6 -0
  23. package/TreeItem/TreeItem.js +44 -89
  24. package/TreeItem/TreeItem.types.d.ts +2 -1
  25. package/TreeItem/index.d.ts +2 -2
  26. package/TreeItem/index.js +2 -2
  27. package/TreeItem/useTreeItem.js +5 -5
  28. package/TreeView/TreeView.d.ts +4 -0
  29. package/TreeView/TreeView.js +80 -87
  30. package/TreeView/TreeView.types.d.ts +4 -26
  31. package/TreeView/index.d.ts +1 -1
  32. package/index.d.ts +3 -0
  33. package/index.js +5 -2
  34. package/internals/TreeViewProvider/TreeViewContext.d.ts +1 -2
  35. package/internals/TreeViewProvider/TreeViewContext.js +1 -14
  36. package/internals/TreeViewProvider/TreeViewProvider.types.d.ts +3 -3
  37. package/internals/TreeViewProvider/useTreeViewContext.js +7 -1
  38. package/internals/corePlugins/corePlugins.d.ts +1 -1
  39. package/internals/corePlugins/corePlugins.js +1 -1
  40. package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.d.ts +0 -5
  41. package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +0 -6
  42. package/internals/hooks/useLazyRef.d.ts +2 -0
  43. package/internals/hooks/useLazyRef.js +11 -0
  44. package/internals/hooks/useOnMount.d.ts +2 -0
  45. package/internals/hooks/useOnMount.js +7 -0
  46. package/internals/hooks/useTimeout.d.ts +9 -0
  47. package/internals/hooks/useTimeout.js +28 -0
  48. package/internals/models/plugin.d.ts +23 -0
  49. package/internals/models/treeView.d.ts +5 -1
  50. package/internals/plugins/defaultPlugins.d.ts +3 -2
  51. package/internals/plugins/defaultPlugins.js +2 -1
  52. package/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.js +8 -6
  53. package/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.types.d.ts +1 -6
  54. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +26 -17
  55. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +12 -5
  56. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +13 -6
  57. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +4 -1
  58. package/internals/plugins/useTreeViewId/index.d.ts +2 -0
  59. package/internals/plugins/useTreeViewId/index.js +1 -0
  60. package/internals/plugins/useTreeViewId/useTreeViewId.d.ts +3 -0
  61. package/internals/plugins/useTreeViewId/useTreeViewId.js +18 -0
  62. package/internals/plugins/useTreeViewId/useTreeViewId.types.d.ts +17 -0
  63. package/internals/plugins/useTreeViewId/useTreeViewId.types.js +1 -0
  64. package/internals/plugins/useTreeViewJSXNodes/index.d.ts +2 -0
  65. package/internals/plugins/useTreeViewJSXNodes/index.js +1 -0
  66. package/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.d.ts +3 -0
  67. package/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.js +114 -0
  68. package/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.types.d.ts +16 -0
  69. package/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.types.js +1 -0
  70. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +20 -9
  71. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +5 -2
  72. package/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +83 -18
  73. package/internals/plugins/useTreeViewNodes/useTreeViewNodes.types.d.ts +48 -5
  74. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.d.ts +1 -1
  75. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +41 -28
  76. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +15 -8
  77. package/internals/useTreeView/useTreeView.js +40 -3
  78. package/internals/useTreeView/useTreeView.types.d.ts +2 -1
  79. package/internals/utils/warning.d.ts +1 -0
  80. package/internals/utils/warning.js +14 -0
  81. package/legacy/RichTreeView/RichTreeView.js +317 -0
  82. package/legacy/RichTreeView/RichTreeView.types.js +1 -0
  83. package/legacy/RichTreeView/index.js +3 -0
  84. package/legacy/RichTreeView/richTreeViewClasses.js +6 -0
  85. package/legacy/SimpleTreeView/SimpleTreeView.js +264 -0
  86. package/legacy/SimpleTreeView/SimpleTreeView.plugins.js +6 -0
  87. package/legacy/SimpleTreeView/SimpleTreeView.types.js +1 -0
  88. package/legacy/SimpleTreeView/index.js +3 -0
  89. package/legacy/SimpleTreeView/simpleTreeViewClasses.js +6 -0
  90. package/legacy/TreeItem/TreeItem.js +49 -103
  91. package/legacy/TreeItem/index.js +2 -2
  92. package/legacy/TreeItem/useTreeItem.js +5 -5
  93. package/legacy/TreeView/TreeView.js +80 -82
  94. package/legacy/index.js +5 -2
  95. package/legacy/internals/TreeViewProvider/TreeViewContext.js +1 -14
  96. package/legacy/internals/TreeViewProvider/useTreeViewContext.js +5 -1
  97. package/legacy/internals/corePlugins/corePlugins.js +1 -1
  98. package/legacy/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +0 -6
  99. package/legacy/internals/hooks/useLazyRef.js +11 -0
  100. package/legacy/internals/hooks/useOnMount.js +7 -0
  101. package/legacy/internals/hooks/useTimeout.js +38 -0
  102. package/legacy/internals/plugins/defaultPlugins.js +2 -1
  103. package/legacy/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.js +11 -8
  104. package/legacy/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +26 -17
  105. package/legacy/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +13 -6
  106. package/legacy/internals/plugins/useTreeViewId/index.js +1 -0
  107. package/legacy/internals/plugins/useTreeViewId/useTreeViewId.js +21 -0
  108. package/legacy/internals/plugins/useTreeViewId/useTreeViewId.types.js +1 -0
  109. package/legacy/internals/plugins/useTreeViewJSXNodes/index.js +1 -0
  110. package/legacy/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.js +120 -0
  111. package/legacy/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.types.js +1 -0
  112. package/legacy/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +20 -9
  113. package/legacy/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +89 -20
  114. package/legacy/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +45 -28
  115. package/legacy/internals/useTreeView/useTreeView.js +39 -3
  116. package/legacy/internals/utils/warning.js +15 -0
  117. package/legacy/models/index.js +1 -0
  118. package/legacy/models/items.js +1 -0
  119. package/models/index.d.ts +1 -0
  120. package/models/index.js +1 -0
  121. package/models/items.d.ts +7 -0
  122. package/models/items.js +1 -0
  123. package/models/package.json +6 -0
  124. package/modern/RichTreeView/RichTreeView.js +322 -0
  125. package/modern/RichTreeView/RichTreeView.types.js +1 -0
  126. package/modern/RichTreeView/index.js +3 -0
  127. package/modern/RichTreeView/richTreeViewClasses.js +6 -0
  128. package/modern/SimpleTreeView/SimpleTreeView.js +267 -0
  129. package/modern/SimpleTreeView/SimpleTreeView.plugins.js +5 -0
  130. package/modern/SimpleTreeView/SimpleTreeView.types.js +1 -0
  131. package/modern/SimpleTreeView/index.js +3 -0
  132. package/modern/SimpleTreeView/simpleTreeViewClasses.js +6 -0
  133. package/modern/TreeItem/TreeItem.js +44 -88
  134. package/modern/TreeItem/index.js +2 -2
  135. package/modern/TreeItem/useTreeItem.js +5 -5
  136. package/modern/TreeView/TreeView.js +80 -87
  137. package/modern/index.js +5 -2
  138. package/modern/internals/TreeViewProvider/TreeViewContext.js +1 -14
  139. package/modern/internals/TreeViewProvider/useTreeViewContext.js +7 -1
  140. package/modern/internals/corePlugins/corePlugins.js +1 -1
  141. package/modern/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +0 -6
  142. package/modern/internals/hooks/useLazyRef.js +11 -0
  143. package/modern/internals/hooks/useOnMount.js +7 -0
  144. package/modern/internals/hooks/useTimeout.js +28 -0
  145. package/modern/internals/plugins/defaultPlugins.js +2 -1
  146. package/modern/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.js +8 -6
  147. package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +26 -17
  148. package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +12 -6
  149. package/modern/internals/plugins/useTreeViewId/index.js +1 -0
  150. package/modern/internals/plugins/useTreeViewId/useTreeViewId.js +18 -0
  151. package/modern/internals/plugins/useTreeViewId/useTreeViewId.types.js +1 -0
  152. package/modern/internals/plugins/useTreeViewJSXNodes/index.js +1 -0
  153. package/modern/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.js +113 -0
  154. package/modern/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.types.js +1 -0
  155. package/modern/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +19 -9
  156. package/modern/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +82 -18
  157. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +41 -28
  158. package/modern/internals/useTreeView/useTreeView.js +40 -3
  159. package/modern/internals/utils/warning.js +14 -0
  160. package/modern/models/index.js +1 -0
  161. package/modern/models/items.js +1 -0
  162. package/node/RichTreeView/RichTreeView.js +330 -0
  163. package/node/RichTreeView/RichTreeView.types.js +5 -0
  164. package/node/RichTreeView/index.js +27 -0
  165. package/node/RichTreeView/richTreeViewClasses.js +14 -0
  166. package/node/SimpleTreeView/SimpleTreeView.js +275 -0
  167. package/node/SimpleTreeView/SimpleTreeView.plugins.js +11 -0
  168. package/node/SimpleTreeView/SimpleTreeView.types.js +5 -0
  169. package/node/SimpleTreeView/index.js +27 -0
  170. package/node/SimpleTreeView/simpleTreeViewClasses.js +14 -0
  171. package/node/TreeItem/TreeItem.js +44 -88
  172. package/node/TreeItem/index.js +11 -15
  173. package/node/TreeItem/useTreeItem.js +5 -5
  174. package/node/TreeView/TreeView.js +80 -87
  175. package/node/index.js +38 -2
  176. package/node/internals/TreeViewProvider/TreeViewContext.js +2 -15
  177. package/node/internals/TreeViewProvider/useTreeViewContext.js +7 -1
  178. package/node/internals/corePlugins/corePlugins.js +1 -1
  179. package/node/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +0 -6
  180. package/node/internals/hooks/useLazyRef.js +19 -0
  181. package/node/internals/hooks/useOnMount.js +15 -0
  182. package/node/internals/hooks/useTimeout.js +34 -0
  183. package/node/internals/plugins/defaultPlugins.js +2 -1
  184. package/node/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.js +8 -7
  185. package/node/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +26 -17
  186. package/node/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +12 -6
  187. package/node/internals/plugins/useTreeViewId/index.js +12 -0
  188. package/node/internals/plugins/useTreeViewId/useTreeViewId.js +28 -0
  189. package/node/internals/plugins/useTreeViewId/useTreeViewId.types.js +5 -0
  190. package/node/internals/plugins/useTreeViewJSXNodes/index.js +12 -0
  191. package/node/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.js +123 -0
  192. package/node/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.types.js +5 -0
  193. package/node/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +19 -9
  194. package/node/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +82 -18
  195. package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +41 -28
  196. package/node/internals/useTreeView/useTreeView.js +40 -3
  197. package/node/internals/utils/warning.js +21 -0
  198. package/node/models/index.js +16 -0
  199. package/node/models/items.js +5 -0
  200. package/package.json +8 -7
  201. package/themeAugmentation/components.d.ts +14 -4
  202. package/themeAugmentation/overrides.d.ts +8 -4
  203. package/themeAugmentation/props.d.ts +7 -3
@@ -19,30 +19,49 @@ const useTreeViewSelection = ({
19
19
  const lastSelectedNode = React.useRef(null);
20
20
  const lastSelectionWasRange = React.useRef(false);
21
21
  const currentRangeSelection = React.useRef([]);
22
- const isNodeSelected = nodeId => Array.isArray(models.selected.value) ? models.selected.value.indexOf(nodeId) !== -1 : models.selected.value === nodeId;
22
+ const isNodeSelected = nodeId => Array.isArray(models.selectedNodes.value) ? models.selectedNodes.value.indexOf(nodeId) !== -1 : models.selectedNodes.value === nodeId;
23
+ const setSelectedNodes = (event, newSelectedNodes) => {
24
+ if (params.onNodeSelectionToggle) {
25
+ if (params.multiSelect) {
26
+ const addedNodes = newSelectedNodes.filter(nodeId => !instance.isNodeSelected(nodeId));
27
+ const removedNodes = models.selectedNodes.value.filter(nodeId => !newSelectedNodes.includes(nodeId));
28
+ addedNodes.forEach(nodeId => {
29
+ params.onNodeSelectionToggle(event, nodeId, true);
30
+ });
31
+ removedNodes.forEach(nodeId => {
32
+ params.onNodeSelectionToggle(event, nodeId, false);
33
+ });
34
+ } else if (newSelectedNodes !== models.selectedNodes.value) {
35
+ if (models.selectedNodes.value != null) {
36
+ params.onNodeSelectionToggle(event, models.selectedNodes.value, false);
37
+ }
38
+ if (newSelectedNodes != null) {
39
+ params.onNodeSelectionToggle(event, newSelectedNodes, true);
40
+ }
41
+ }
42
+ }
43
+ if (params.onSelectedNodesChange) {
44
+ params.onSelectedNodesChange(event, newSelectedNodes);
45
+ }
46
+ models.selectedNodes.setValue(newSelectedNodes);
47
+ };
23
48
  const selectNode = (event, nodeId, multiple = false) => {
24
49
  if (params.disableSelection) {
25
50
  return;
26
51
  }
27
52
  if (multiple) {
28
- if (Array.isArray(models.selected.value)) {
53
+ if (Array.isArray(models.selectedNodes.value)) {
29
54
  let newSelected;
30
- if (models.selected.value.indexOf(nodeId) !== -1) {
31
- newSelected = models.selected.value.filter(id => id !== nodeId);
55
+ if (models.selectedNodes.value.indexOf(nodeId) !== -1) {
56
+ newSelected = models.selectedNodes.value.filter(id => id !== nodeId);
32
57
  } else {
33
- newSelected = [nodeId].concat(models.selected.value);
34
- }
35
- if (params.onNodeSelect) {
36
- params.onNodeSelect(event, newSelected);
58
+ newSelected = [nodeId].concat(models.selectedNodes.value);
37
59
  }
38
- models.selected.setValue(newSelected);
60
+ setSelectedNodes(event, newSelected);
39
61
  }
40
62
  } else {
41
63
  const newSelected = params.multiSelect ? [nodeId] : nodeId;
42
- if (params.onNodeSelect) {
43
- params.onNodeSelect(event, newSelected);
44
- }
45
- models.selected.setValue(newSelected);
64
+ setSelectedNodes(event, newSelected);
46
65
  }
47
66
  lastSelectedNode.current = nodeId;
48
67
  lastSelectionWasRange.current = false;
@@ -59,7 +78,7 @@ const useTreeViewSelection = ({
59
78
  return nodes;
60
79
  };
61
80
  const handleRangeArrowSelect = (event, nodes) => {
62
- let base = models.selected.value.slice();
81
+ let base = models.selectedNodes.value.slice();
63
82
  const {
64
83
  start,
65
84
  next,
@@ -83,13 +102,10 @@ const useTreeViewSelection = ({
83
102
  base.push(next);
84
103
  currentRangeSelection.current.push(current, next);
85
104
  }
86
- if (params.onNodeSelect) {
87
- params.onNodeSelect(event, base);
88
- }
89
- models.selected.setValue(base);
105
+ setSelectedNodes(event, base);
90
106
  };
91
107
  const handleRangeSelect = (event, nodes) => {
92
- let base = models.selected.value.slice();
108
+ let base = models.selectedNodes.value.slice();
93
109
  const {
94
110
  start,
95
111
  end
@@ -103,10 +119,7 @@ const useTreeViewSelection = ({
103
119
  currentRangeSelection.current = range;
104
120
  let newSelected = base.concat(range);
105
121
  newSelected = newSelected.filter((id, i) => newSelected.indexOf(id) === i);
106
- if (params.onNodeSelect) {
107
- params.onNodeSelect(event, newSelected);
108
- }
109
- models.selected.setValue(newSelected);
122
+ setSelectedNodes(event, newSelected);
110
123
  };
111
124
  const selectRange = (event, nodes, stacked = false) => {
112
125
  if (params.disableSelection) {
@@ -166,14 +179,14 @@ const useTreeViewSelection = ({
166
179
  };
167
180
  exports.useTreeViewSelection = useTreeViewSelection;
168
181
  useTreeViewSelection.models = {
169
- selected: {
170
- controlledProp: 'selected',
171
- defaultProp: 'defaultSelected'
182
+ selectedNodes: {
183
+ controlledProp: 'selectedNodes',
184
+ defaultProp: 'defaultSelectedNodes'
172
185
  }
173
186
  };
174
- const DEFAULT_SELECTED = [];
187
+ const DEFAULT_SELECTED_NODES = [];
175
188
  useTreeViewSelection.getDefaultizedParams = params => (0, _extends2.default)({}, params, {
176
189
  disableSelection: params.disableSelection ?? false,
177
190
  multiSelect: params.multiSelect ?? false,
178
- defaultSelected: params.defaultSelected ?? (params.multiSelect ? DEFAULT_SELECTED : null)
191
+ defaultSelectedNodes: params.defaultSelectedNodes ?? (params.multiSelect ? DEFAULT_SELECTED_NODES : null)
179
192
  });
@@ -8,7 +8,6 @@ exports.useTreeView = void 0;
8
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
9
  var React = _interopRequireWildcard(require("react"));
10
10
  var _useForkRef = _interopRequireDefault(require("@mui/utils/useForkRef"));
11
- var _TreeViewContext = require("../TreeViewProvider/TreeViewContext");
12
11
  var _useTreeViewModels = require("./useTreeViewModels");
13
12
  var _corePlugins = require("../corePlugins");
14
13
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
@@ -36,7 +35,7 @@ const useTreeView = inParams => {
36
35
  return temp;
37
36
  });
38
37
  const rootPropsGetters = [];
39
- let contextValue = _TreeViewContext.DEFAULT_TREE_VIEW_CONTEXT_VALUE;
38
+ let contextValue = {};
40
39
  const runPlugin = plugin => {
41
40
  const pluginResponse = plugin({
42
41
  instance,
@@ -54,6 +53,43 @@ const useTreeView = inParams => {
54
53
  }
55
54
  };
56
55
  plugins.forEach(runPlugin);
56
+ contextValue.runItemPlugins = ({
57
+ props,
58
+ ref
59
+ }) => {
60
+ let finalProps = props;
61
+ let finalRef = ref;
62
+ const itemWrappers = [];
63
+ plugins.forEach(plugin => {
64
+ if (!plugin.itemPlugin) {
65
+ return;
66
+ }
67
+ const itemPluginResponse = plugin.itemPlugin({
68
+ props: finalProps,
69
+ ref: finalRef
70
+ });
71
+ if (itemPluginResponse?.props) {
72
+ finalProps = itemPluginResponse.props;
73
+ }
74
+ if (itemPluginResponse?.ref) {
75
+ finalRef = itemPluginResponse.ref;
76
+ }
77
+ if (itemPluginResponse?.wrapItem) {
78
+ itemWrappers.push(itemPluginResponse.wrapItem);
79
+ }
80
+ });
81
+ return {
82
+ props: finalProps,
83
+ ref: finalRef,
84
+ wrapItem: children => {
85
+ let finalChildren = children;
86
+ itemWrappers.forEach(itemWrapper => {
87
+ finalChildren = itemWrapper(finalChildren);
88
+ });
89
+ return finalChildren;
90
+ }
91
+ };
92
+ };
57
93
  const getRootProps = (otherHandlers = {}) => {
58
94
  const rootProps = (0, _extends2.default)({
59
95
  role: 'tree',
@@ -69,7 +105,8 @@ const useTreeView = inParams => {
69
105
  return {
70
106
  getRootProps,
71
107
  rootRef: handleRootRef,
72
- contextValue
108
+ contextValue,
109
+ instance: instance
73
110
  };
74
111
  };
75
112
  exports.useTreeView = useTreeView;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.buildWarning = void 0;
7
+ const buildWarning = (message, gravity = 'warning') => {
8
+ let alreadyWarned = false;
9
+ const cleanMessage = Array.isArray(message) ? message.join('\n') : message;
10
+ return () => {
11
+ if (!alreadyWarned) {
12
+ alreadyWarned = true;
13
+ if (gravity === 'error') {
14
+ console.error(cleanMessage);
15
+ } else {
16
+ console.warn(cleanMessage);
17
+ }
18
+ }
19
+ };
20
+ };
21
+ exports.buildWarning = buildWarning;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _items = require("./items");
7
+ Object.keys(_items).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _items[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _items[key];
14
+ }
15
+ });
16
+ });
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-tree-view",
3
- "version": "7.0.0-alpha.1",
3
+ "version": "7.0.0-alpha.7",
4
4
  "description": "The community edition of the tree view components (MUI X).",
5
5
  "author": "MUI Team",
6
6
  "main": "./node/index.js",
@@ -11,7 +11,7 @@
11
11
  "homepage": "https://mui.com/x/react-tree-view/",
12
12
  "funding": {
13
13
  "type": "opencollective",
14
- "url": "https://opencollective.com/mui"
14
+ "url": "https://opencollective.com/mui-org"
15
15
  },
16
16
  "sideEffects": false,
17
17
  "publishConfig": {
@@ -21,6 +21,7 @@
21
21
  "react",
22
22
  "react-component",
23
23
  "mui",
24
+ "mui-x",
24
25
  "material-ui",
25
26
  "material design",
26
27
  "treeview"
@@ -31,10 +32,11 @@
31
32
  "directory": "packages/x-tree-view"
32
33
  },
33
34
  "dependencies": {
34
- "@babel/runtime": "^7.23.2",
35
- "@mui/base": "^5.0.0-beta.22",
36
- "@mui/utils": "^5.14.16",
37
- "@types/react-transition-group": "^4.4.8",
35
+ "@babel/runtime": "^7.23.7",
36
+ "@mui/base": "^5.0.0-beta.29",
37
+ "@mui/system": "^5.15.2",
38
+ "@mui/utils": "^5.15.2",
39
+ "@types/react-transition-group": "^4.4.10",
38
40
  "clsx": "^2.0.0",
39
41
  "prop-types": "^15.8.1",
40
42
  "react-transition-group": "^4.4.5"
@@ -43,7 +45,6 @@
43
45
  "@emotion/react": "^11.9.0",
44
46
  "@emotion/styled": "^11.8.1",
45
47
  "@mui/material": "^5.8.6",
46
- "@mui/system": "^5.8.0",
47
48
  "react": "^17.0.0 || ^18.0.0",
48
49
  "react-dom": "^17.0.0 || ^18.0.0"
49
50
  },
@@ -1,16 +1,26 @@
1
1
  import { ComponentsProps, ComponentsOverrides, ComponentsVariants } from '@mui/material/styles';
2
2
 
3
3
  export interface TreeViewComponents<Theme = unknown> {
4
- MuiTreeItem?: {
5
- defaultProps?: ComponentsProps['MuiTreeItem'];
6
- styleOverrides?: ComponentsOverrides<Theme>['MuiTreeItem'];
7
- variants?: ComponentsVariants['MuiTreeItem'];
4
+ MuiSimpleTreeView?: {
5
+ defaultProps?: ComponentsProps['MuiSimpleTreeView'];
6
+ styleOverrides?: ComponentsOverrides<Theme>['MuiSimpleTreeView'];
7
+ variants?: ComponentsVariants['MuiSimpleTreeView'];
8
+ };
9
+ MuiRichTreeView?: {
10
+ defaultProps?: ComponentsProps['MuiRichTreeView'];
11
+ styleOverrides?: ComponentsOverrides<Theme>['MuiRichTreeView'];
12
+ variants?: ComponentsVariants['MuiRichTreeView'];
8
13
  };
9
14
  MuiTreeView?: {
10
15
  defaultProps?: ComponentsProps['MuiTreeView'];
11
16
  styleOverrides?: ComponentsOverrides<Theme>['MuiTreeView'];
12
17
  variants?: ComponentsVariants['MuiTreeView'];
13
18
  };
19
+ MuiTreeItem?: {
20
+ defaultProps?: ComponentsProps['MuiTreeItem'];
21
+ styleOverrides?: ComponentsOverrides<Theme>['MuiTreeItem'];
22
+ variants?: ComponentsVariants['MuiTreeItem'];
23
+ };
14
24
  }
15
25
 
16
26
  declare module '@mui/material/styles' {
@@ -1,14 +1,18 @@
1
- import { TreeItemClassKey } from '../TreeItem';
1
+ import { RichTreeViewClassKey } from '../RichTreeView';
2
+ import { SimpleTreeViewClassKey } from '../SimpleTreeView';
2
3
  import { TreeViewClassKey } from '../TreeView';
4
+ import { TreeItemClassKey } from '../TreeItem';
3
5
 
4
6
  // prettier-ignore
5
- export interface PickersComponentNameToClassKey {
6
- MuiTreeItem: TreeItemClassKey;
7
+ export interface TreeViewComponentNameToClassKey {
8
+ MuiSimpleTreeView: SimpleTreeViewClassKey;
9
+ MuiRichTreeView: RichTreeViewClassKey;
7
10
  MuiTreeView: TreeViewClassKey;
11
+ MuiTreeItem: TreeItemClassKey;
8
12
  }
9
13
 
10
14
  declare module '@mui/material/styles' {
11
- interface ComponentNameToClassKey extends PickersComponentNameToClassKey {}
15
+ interface ComponentNameToClassKey extends TreeViewComponentNameToClassKey {}
12
16
  }
13
17
 
14
18
  // disable automatic export
@@ -1,13 +1,17 @@
1
1
  import { TreeItemProps } from '../TreeItem';
2
2
  import { TreeViewProps } from '../TreeView';
3
+ import { SimpleTreeViewProps } from '../SimpleTreeView';
4
+ import { RichTreeViewProps } from '../RichTreeView';
3
5
 
4
- export interface PickersComponentsPropsList {
5
- MuiTreeItem: TreeItemProps;
6
+ export interface TreeViewComponentsPropsList {
7
+ MuiSimpleTreeView: SimpleTreeViewProps<any>;
8
+ MuiRichTreeView: RichTreeViewProps<any, any>;
6
9
  MuiTreeView: TreeViewProps<any>;
10
+ MuiTreeItem: TreeItemProps;
7
11
  }
8
12
 
9
13
  declare module '@mui/material/styles' {
10
- interface ComponentsPropsList extends PickersComponentsPropsList {}
14
+ interface ComponentsPropsList extends TreeViewComponentsPropsList {}
11
15
  }
12
16
 
13
17
  // disable automatic export