@mui/x-tree-view 6.17.0 → 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.
- package/CHANGELOG.md +1748 -6
- package/README.md +0 -1
- package/RichTreeView/RichTreeView.d.ts +20 -0
- package/RichTreeView/RichTreeView.js +324 -0
- package/RichTreeView/RichTreeView.types.d.ts +55 -0
- package/RichTreeView/RichTreeView.types.js +1 -0
- package/RichTreeView/index.d.ts +3 -0
- package/RichTreeView/index.js +3 -0
- package/RichTreeView/package.json +6 -0
- package/RichTreeView/richTreeViewClasses.d.ts +7 -0
- package/RichTreeView/richTreeViewClasses.js +6 -0
- package/SimpleTreeView/SimpleTreeView.d.ts +20 -0
- package/SimpleTreeView/SimpleTreeView.js +268 -0
- package/SimpleTreeView/SimpleTreeView.plugins.d.ts +6 -0
- package/SimpleTreeView/SimpleTreeView.plugins.js +5 -0
- package/SimpleTreeView/SimpleTreeView.types.d.ts +38 -0
- package/SimpleTreeView/SimpleTreeView.types.js +1 -0
- package/SimpleTreeView/index.d.ts +3 -0
- package/SimpleTreeView/index.js +3 -0
- package/SimpleTreeView/package.json +6 -0
- package/SimpleTreeView/simpleTreeViewClasses.d.ts +7 -0
- package/SimpleTreeView/simpleTreeViewClasses.js +6 -0
- package/TreeItem/TreeItem.js +44 -89
- package/TreeItem/TreeItem.types.d.ts +2 -1
- package/TreeItem/index.d.ts +2 -2
- package/TreeItem/index.js +2 -2
- package/TreeItem/useTreeItem.js +5 -5
- package/TreeView/TreeView.d.ts +4 -0
- package/TreeView/TreeView.js +80 -87
- package/TreeView/TreeView.types.d.ts +4 -26
- package/TreeView/index.d.ts +1 -1
- package/index.d.ts +3 -0
- package/index.js +5 -2
- package/internals/TreeViewProvider/TreeViewContext.d.ts +1 -2
- package/internals/TreeViewProvider/TreeViewContext.js +1 -14
- package/internals/TreeViewProvider/TreeViewProvider.types.d.ts +3 -3
- package/internals/TreeViewProvider/useTreeViewContext.js +7 -1
- package/internals/corePlugins/corePlugins.d.ts +1 -1
- package/internals/corePlugins/corePlugins.js +1 -1
- package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.d.ts +0 -5
- package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +0 -6
- package/internals/hooks/useLazyRef.d.ts +2 -0
- package/internals/hooks/useLazyRef.js +11 -0
- package/internals/hooks/useOnMount.d.ts +2 -0
- package/internals/hooks/useOnMount.js +7 -0
- package/internals/hooks/useTimeout.d.ts +9 -0
- package/internals/hooks/useTimeout.js +28 -0
- package/internals/models/plugin.d.ts +23 -0
- package/internals/models/treeView.d.ts +5 -1
- package/internals/plugins/defaultPlugins.d.ts +3 -2
- package/internals/plugins/defaultPlugins.js +2 -1
- package/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.js +8 -6
- package/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.types.d.ts +1 -6
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +26 -17
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +12 -5
- package/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +13 -6
- package/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +4 -1
- package/internals/plugins/useTreeViewId/index.d.ts +2 -0
- package/internals/plugins/useTreeViewId/index.js +1 -0
- package/internals/plugins/useTreeViewId/useTreeViewId.d.ts +3 -0
- package/internals/plugins/useTreeViewId/useTreeViewId.js +18 -0
- package/internals/plugins/useTreeViewId/useTreeViewId.types.d.ts +17 -0
- package/internals/plugins/useTreeViewId/useTreeViewId.types.js +1 -0
- package/internals/plugins/useTreeViewJSXNodes/index.d.ts +2 -0
- package/internals/plugins/useTreeViewJSXNodes/index.js +1 -0
- package/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.d.ts +3 -0
- package/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.js +114 -0
- package/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.types.d.ts +16 -0
- package/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.types.js +1 -0
- package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +20 -9
- package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +5 -2
- package/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +83 -18
- package/internals/plugins/useTreeViewNodes/useTreeViewNodes.types.d.ts +48 -5
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.d.ts +1 -1
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +41 -28
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +15 -8
- package/internals/useTreeView/useTreeView.js +40 -3
- package/internals/useTreeView/useTreeView.types.d.ts +2 -1
- package/internals/utils/warning.d.ts +1 -0
- package/internals/utils/warning.js +14 -0
- package/legacy/RichTreeView/RichTreeView.js +317 -0
- package/legacy/RichTreeView/RichTreeView.types.js +1 -0
- package/legacy/RichTreeView/index.js +3 -0
- package/legacy/RichTreeView/richTreeViewClasses.js +6 -0
- package/legacy/SimpleTreeView/SimpleTreeView.js +264 -0
- package/legacy/SimpleTreeView/SimpleTreeView.plugins.js +6 -0
- package/legacy/SimpleTreeView/SimpleTreeView.types.js +1 -0
- package/legacy/SimpleTreeView/index.js +3 -0
- package/legacy/SimpleTreeView/simpleTreeViewClasses.js +6 -0
- package/legacy/TreeItem/TreeItem.js +49 -103
- package/legacy/TreeItem/index.js +2 -2
- package/legacy/TreeItem/useTreeItem.js +5 -5
- package/legacy/TreeView/TreeView.js +80 -82
- package/legacy/index.js +5 -2
- package/legacy/internals/TreeViewProvider/TreeViewContext.js +1 -14
- package/legacy/internals/TreeViewProvider/useTreeViewContext.js +5 -1
- package/legacy/internals/corePlugins/corePlugins.js +1 -1
- package/legacy/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +0 -6
- package/legacy/internals/hooks/useLazyRef.js +11 -0
- package/legacy/internals/hooks/useOnMount.js +7 -0
- package/legacy/internals/hooks/useTimeout.js +38 -0
- package/legacy/internals/plugins/defaultPlugins.js +2 -1
- package/legacy/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.js +11 -8
- package/legacy/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +26 -17
- package/legacy/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +13 -6
- package/legacy/internals/plugins/useTreeViewId/index.js +1 -0
- package/legacy/internals/plugins/useTreeViewId/useTreeViewId.js +21 -0
- package/legacy/internals/plugins/useTreeViewId/useTreeViewId.types.js +1 -0
- package/legacy/internals/plugins/useTreeViewJSXNodes/index.js +1 -0
- package/legacy/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.js +120 -0
- package/legacy/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.types.js +1 -0
- package/legacy/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +20 -9
- package/legacy/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +89 -20
- package/legacy/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +45 -28
- package/legacy/internals/useTreeView/useTreeView.js +39 -3
- package/legacy/internals/utils/warning.js +15 -0
- package/legacy/models/index.js +1 -0
- package/legacy/models/items.js +1 -0
- package/models/index.d.ts +1 -0
- package/models/index.js +1 -0
- package/models/items.d.ts +7 -0
- package/models/items.js +1 -0
- package/models/package.json +6 -0
- package/modern/RichTreeView/RichTreeView.js +322 -0
- package/modern/RichTreeView/RichTreeView.types.js +1 -0
- package/modern/RichTreeView/index.js +3 -0
- package/modern/RichTreeView/richTreeViewClasses.js +6 -0
- package/modern/SimpleTreeView/SimpleTreeView.js +267 -0
- package/modern/SimpleTreeView/SimpleTreeView.plugins.js +5 -0
- package/modern/SimpleTreeView/SimpleTreeView.types.js +1 -0
- package/modern/SimpleTreeView/index.js +3 -0
- package/modern/SimpleTreeView/simpleTreeViewClasses.js +6 -0
- package/modern/TreeItem/TreeItem.js +44 -88
- package/modern/TreeItem/index.js +2 -2
- package/modern/TreeItem/useTreeItem.js +5 -5
- package/modern/TreeView/TreeView.js +80 -87
- package/modern/index.js +5 -2
- package/modern/internals/TreeViewProvider/TreeViewContext.js +1 -14
- package/modern/internals/TreeViewProvider/useTreeViewContext.js +7 -1
- package/modern/internals/corePlugins/corePlugins.js +1 -1
- package/modern/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +0 -6
- package/modern/internals/hooks/useLazyRef.js +11 -0
- package/modern/internals/hooks/useOnMount.js +7 -0
- package/modern/internals/hooks/useTimeout.js +28 -0
- package/modern/internals/plugins/defaultPlugins.js +2 -1
- package/modern/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.js +8 -6
- package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +26 -17
- package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +12 -6
- package/modern/internals/plugins/useTreeViewId/index.js +1 -0
- package/modern/internals/plugins/useTreeViewId/useTreeViewId.js +18 -0
- package/modern/internals/plugins/useTreeViewId/useTreeViewId.types.js +1 -0
- package/modern/internals/plugins/useTreeViewJSXNodes/index.js +1 -0
- package/modern/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.js +113 -0
- package/modern/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.types.js +1 -0
- package/modern/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +19 -9
- package/modern/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +82 -18
- package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +41 -28
- package/modern/internals/useTreeView/useTreeView.js +40 -3
- package/modern/internals/utils/warning.js +14 -0
- package/modern/models/index.js +1 -0
- package/modern/models/items.js +1 -0
- package/node/RichTreeView/RichTreeView.js +330 -0
- package/node/RichTreeView/RichTreeView.types.js +5 -0
- package/node/RichTreeView/index.js +27 -0
- package/node/RichTreeView/richTreeViewClasses.js +14 -0
- package/node/SimpleTreeView/SimpleTreeView.js +275 -0
- package/node/SimpleTreeView/SimpleTreeView.plugins.js +11 -0
- package/node/SimpleTreeView/SimpleTreeView.types.js +5 -0
- package/node/SimpleTreeView/index.js +27 -0
- package/node/SimpleTreeView/simpleTreeViewClasses.js +14 -0
- package/node/TreeItem/TreeItem.js +44 -88
- package/node/TreeItem/index.js +11 -15
- package/node/TreeItem/useTreeItem.js +5 -5
- package/node/TreeView/TreeView.js +80 -87
- package/node/index.js +38 -2
- package/node/internals/TreeViewProvider/TreeViewContext.js +2 -15
- package/node/internals/TreeViewProvider/useTreeViewContext.js +7 -1
- package/node/internals/corePlugins/corePlugins.js +1 -1
- package/node/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +0 -6
- package/node/internals/hooks/useLazyRef.js +19 -0
- package/node/internals/hooks/useOnMount.js +15 -0
- package/node/internals/hooks/useTimeout.js +34 -0
- package/node/internals/plugins/defaultPlugins.js +2 -1
- package/node/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.js +8 -7
- package/node/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +26 -17
- package/node/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +12 -6
- package/node/internals/plugins/useTreeViewId/index.js +12 -0
- package/node/internals/plugins/useTreeViewId/useTreeViewId.js +28 -0
- package/node/internals/plugins/useTreeViewId/useTreeViewId.types.js +5 -0
- package/node/internals/plugins/useTreeViewJSXNodes/index.js +12 -0
- package/node/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.js +123 -0
- package/node/internals/plugins/useTreeViewJSXNodes/useTreeViewJSXNodes.types.js +5 -0
- package/node/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +19 -9
- package/node/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +82 -18
- package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +41 -28
- package/node/internals/useTreeView/useTreeView.js +40 -3
- package/node/internals/utils/warning.js +21 -0
- package/node/models/index.js +16 -0
- package/node/models/items.js +5 -0
- package/package.json +8 -7
- package/themeAugmentation/components.d.ts +14 -4
- package/themeAugmentation/overrides.d.ts +8 -4
- 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.
|
|
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.
|
|
53
|
+
if (Array.isArray(models.selectedNodes.value)) {
|
|
29
54
|
let newSelected;
|
|
30
|
-
if (models.
|
|
31
|
-
newSelected = models.
|
|
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.
|
|
34
|
-
}
|
|
35
|
-
if (params.onNodeSelect) {
|
|
36
|
-
params.onNodeSelect(event, newSelected);
|
|
58
|
+
newSelected = [nodeId].concat(models.selectedNodes.value);
|
|
37
59
|
}
|
|
38
|
-
|
|
60
|
+
setSelectedNodes(event, newSelected);
|
|
39
61
|
}
|
|
40
62
|
} else {
|
|
41
63
|
const newSelected = params.multiSelect ? [nodeId] : nodeId;
|
|
42
|
-
|
|
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.
|
|
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
|
-
|
|
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.
|
|
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
|
-
|
|
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
|
-
|
|
170
|
-
controlledProp: '
|
|
171
|
-
defaultProp: '
|
|
182
|
+
selectedNodes: {
|
|
183
|
+
controlledProp: 'selectedNodes',
|
|
184
|
+
defaultProp: 'defaultSelectedNodes'
|
|
172
185
|
}
|
|
173
186
|
};
|
|
174
|
-
const
|
|
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
|
-
|
|
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 =
|
|
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
|
+
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mui/x-tree-view",
|
|
3
|
-
"version": "
|
|
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.
|
|
35
|
-
"@mui/base": "^5.0.0-beta.
|
|
36
|
-
"@mui/
|
|
37
|
-
"@
|
|
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
|
-
|
|
5
|
-
defaultProps?: ComponentsProps['
|
|
6
|
-
styleOverrides?: ComponentsOverrides<Theme>['
|
|
7
|
-
variants?: ComponentsVariants['
|
|
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 {
|
|
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
|
|
6
|
-
|
|
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
|
|
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
|
|
5
|
-
|
|
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
|
|
14
|
+
interface ComponentsPropsList extends TreeViewComponentsPropsList {}
|
|
11
15
|
}
|
|
12
16
|
|
|
13
17
|
// disable automatic export
|