@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.
- package/CHANGELOG.md +143 -92
- package/README.md +2 -2
- package/RichTreeView/RichTreeView.js +20 -1
- package/RichTreeView/RichTreeView.types.d.ts +4 -4
- package/SimpleTreeView/SimpleTreeView.js +21 -3
- package/TreeItem/TreeItem.d.ts +20 -2
- package/TreeItem/TreeItem.js +238 -368
- package/TreeItem/TreeItem.types.d.ts +51 -86
- package/TreeItem/index.d.ts +1 -4
- package/TreeItem/index.js +2 -4
- package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.d.ts +7 -0
- package/{modern/TreeItem2DragAndDropOverlay/TreeItem2DragAndDropOverlay.js → TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.js} +8 -6
- package/{TreeItem2DragAndDropOverlay/TreeItem2DragAndDropOverlay.types.d.ts → TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.d.ts} +1 -1
- package/TreeItemDragAndDropOverlay/index.d.ts +2 -0
- package/TreeItemDragAndDropOverlay/index.js +1 -0
- package/{TreeItem2LabelInput → TreeItemDragAndDropOverlay}/package.json +1 -1
- package/TreeItemIcon/TreeItemIcon.d.ts +7 -0
- package/{TreeItem2Icon/TreeItem2Icon.js → TreeItemIcon/TreeItemIcon.js} +5 -3
- package/{TreeItem2Icon/TreeItem2Icon.types.d.ts → TreeItemIcon/TreeItemIcon.types.d.ts} +7 -7
- package/TreeItemIcon/index.d.ts +2 -0
- package/TreeItemIcon/index.js +1 -0
- package/{useTreeItem2 → TreeItemIcon}/package.json +1 -1
- package/TreeItemLabelInput/TreeItemLabelInput.d.ts +5 -0
- package/{TreeItem2LabelInput/TreeItem2LabelInput.js → TreeItemLabelInput/TreeItemLabelInput.js} +3 -3
- package/{TreeItem2LabelInput/TreeItem2LabelInput.types.d.ts → TreeItemLabelInput/TreeItemLabelInput.types.d.ts} +1 -1
- package/TreeItemLabelInput/index.d.ts +2 -0
- package/TreeItemLabelInput/index.js +1 -0
- package/{TreeItem2Provider → TreeItemLabelInput}/package.json +1 -1
- package/TreeItemProvider/TreeItemProvider.d.ts +9 -0
- package/{TreeItem2Provider/TreeItem2Provider.js → TreeItemProvider/TreeItemProvider.js} +7 -3
- package/{TreeItem2Provider/TreeItem2Provider.types.d.ts → TreeItemProvider/TreeItemProvider.types.d.ts} +1 -1
- package/TreeItemProvider/index.d.ts +2 -0
- package/TreeItemProvider/index.js +1 -0
- package/{TreeItem2Icon → TreeItemProvider}/package.json +1 -1
- package/hooks/index.d.ts +1 -1
- package/hooks/index.js +1 -1
- package/hooks/useTreeItemUtils/index.d.ts +1 -0
- package/hooks/useTreeItemUtils/index.js +1 -0
- package/hooks/{useTreeItem2Utils/useTreeItem2Utils.d.ts → useTreeItemUtils/useTreeItemUtils.d.ts} +11 -11
- package/{modern/hooks/useTreeItem2Utils/useTreeItem2Utils.js → hooks/useTreeItemUtils/useTreeItemUtils.js} +5 -3
- package/index.d.ts +5 -7
- package/index.js +6 -8
- package/internals/TreeViewProvider/TreeViewProvider.types.d.ts +2 -1
- package/internals/components/RichTreeViewItems.d.ts +1 -2
- package/internals/index.d.ts +1 -1
- package/internals/models/helpers.d.ts +0 -2
- package/internals/models/itemPlugin.d.ts +11 -8
- package/internals/models/plugin.d.ts +1 -1
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +2 -1
- package/internals/plugins/useTreeViewItems/useTreeViewItems.js +2 -4
- package/internals/plugins/useTreeViewItems/useTreeViewItems.types.d.ts +3 -5
- package/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.d.ts +1 -1
- package/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.d.ts +6 -5
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.d.ts +2 -0
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.js +86 -0
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +43 -18
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +33 -3
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.d.ts +20 -1
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +95 -0
- package/models/items.d.ts +4 -0
- package/modern/RichTreeView/RichTreeView.js +20 -1
- package/modern/SimpleTreeView/SimpleTreeView.js +21 -3
- package/modern/TreeItem/TreeItem.js +238 -368
- package/modern/TreeItem/index.js +2 -4
- package/{TreeItem2DragAndDropOverlay/TreeItem2DragAndDropOverlay.js → modern/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.js} +8 -6
- package/modern/TreeItemDragAndDropOverlay/index.js +1 -0
- package/modern/{TreeItem2Icon/TreeItem2Icon.js → TreeItemIcon/TreeItemIcon.js} +5 -3
- package/modern/TreeItemIcon/index.js +1 -0
- package/modern/{TreeItem2LabelInput/TreeItem2LabelInput.js → TreeItemLabelInput/TreeItemLabelInput.js} +3 -3
- package/modern/TreeItemLabelInput/index.js +1 -0
- package/modern/{TreeItem2Provider/TreeItem2Provider.js → TreeItemProvider/TreeItemProvider.js} +7 -3
- package/modern/TreeItemProvider/index.js +1 -0
- package/modern/hooks/index.js +1 -1
- package/modern/hooks/useTreeItemUtils/index.js +1 -0
- package/{hooks/useTreeItem2Utils/useTreeItem2Utils.js → modern/hooks/useTreeItemUtils/useTreeItemUtils.js} +5 -3
- package/modern/index.js +6 -8
- package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.js +2 -4
- package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.js +86 -0
- package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +43 -18
- package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +95 -0
- package/modern/useTreeItem/index.js +1 -0
- package/modern/{useTreeItem2/useTreeItem2.js → useTreeItem/useTreeItem.js} +21 -42
- package/node/RichTreeView/RichTreeView.js +20 -1
- package/node/SimpleTreeView/SimpleTreeView.js +21 -3
- package/node/TreeItem/TreeItem.js +239 -369
- package/node/TreeItem/index.js +38 -16
- package/node/{TreeItem2DragAndDropOverlay/TreeItem2DragAndDropOverlay.js → TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.js} +7 -6
- package/node/TreeItemDragAndDropOverlay/index.js +12 -0
- package/node/{TreeItem2Icon/TreeItem2Icon.js → TreeItemIcon/TreeItemIcon.js} +4 -3
- package/node/TreeItemIcon/index.js +12 -0
- package/node/{TreeItem2LabelInput/TreeItem2LabelInput.js → TreeItemLabelInput/TreeItemLabelInput.js} +3 -3
- package/node/TreeItemLabelInput/index.js +12 -0
- package/node/{TreeItem2Provider/TreeItem2Provider.js → TreeItemProvider/TreeItemProvider.js} +6 -3
- package/node/TreeItemProvider/index.js +12 -0
- package/node/hooks/index.js +3 -3
- package/node/hooks/useTreeItemUtils/index.js +12 -0
- package/node/hooks/{useTreeItem2Utils/useTreeItem2Utils.js → useTreeItemUtils/useTreeItemUtils.js} +6 -5
- package/node/index.js +18 -42
- package/node/internals/plugins/useTreeViewItems/useTreeViewItems.js +2 -4
- package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.js +94 -0
- package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +42 -17
- package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +99 -2
- package/node/useTreeItem/index.js +12 -0
- package/node/{useTreeItem2/useTreeItem2.js → useTreeItem/useTreeItem.js} +22 -44
- package/package.json +3 -3
- package/themeAugmentation/components.d.ts +0 -10
- package/themeAugmentation/overrides.d.ts +0 -3
- package/themeAugmentation/props.d.ts +1 -5
- package/useTreeItem/index.d.ts +2 -0
- package/useTreeItem/index.js +1 -0
- package/{TreeItem2 → useTreeItem}/package.json +1 -1
- package/useTreeItem/useTreeItem.d.ts +2 -0
- package/{useTreeItem2/useTreeItem2.js → useTreeItem/useTreeItem.js} +21 -42
- package/{useTreeItem2/useTreeItem2.types.d.ts → useTreeItem/useTreeItem.types.d.ts} +42 -58
- package/TreeItem/TreeItemContent.d.ts +0 -61
- package/TreeItem/TreeItemContent.js +0 -146
- package/TreeItem/useTreeItemState.d.ts +0 -21
- package/TreeItem/useTreeItemState.js +0 -143
- package/TreeItem2/TreeItem2.d.ts +0 -34
- package/TreeItem2/TreeItem2.js +0 -387
- package/TreeItem2/TreeItem2.types.d.ts +0 -92
- package/TreeItem2/index.d.ts +0 -2
- package/TreeItem2/index.js +0 -1
- package/TreeItem2DragAndDropOverlay/TreeItem2DragAndDropOverlay.d.ts +0 -7
- package/TreeItem2DragAndDropOverlay/index.d.ts +0 -2
- package/TreeItem2DragAndDropOverlay/index.js +0 -1
- package/TreeItem2DragAndDropOverlay/package.json +0 -6
- package/TreeItem2Icon/TreeItem2Icon.d.ts +0 -7
- package/TreeItem2Icon/index.d.ts +0 -2
- package/TreeItem2Icon/index.js +0 -1
- package/TreeItem2LabelInput/TreeItem2LabelInput.d.ts +0 -5
- package/TreeItem2LabelInput/index.d.ts +0 -2
- package/TreeItem2LabelInput/index.js +0 -1
- package/TreeItem2Provider/TreeItem2Provider.d.ts +0 -6
- package/TreeItem2Provider/index.d.ts +0 -2
- package/TreeItem2Provider/index.js +0 -1
- package/TreeView/TreeView.d.ts +0 -21
- package/TreeView/TreeView.js +0 -211
- package/TreeView/TreeView.types.d.ts +0 -9
- package/TreeView/index.d.ts +0 -3
- package/TreeView/index.js +0 -3
- package/TreeView/package.json +0 -6
- package/TreeView/treeViewClasses.d.ts +0 -7
- package/TreeView/treeViewClasses.js +0 -6
- package/hooks/useTreeItem2Utils/index.d.ts +0 -1
- package/hooks/useTreeItem2Utils/index.js +0 -1
- package/modern/TreeItem/TreeItemContent.js +0 -146
- package/modern/TreeItem/useTreeItemState.js +0 -143
- package/modern/TreeItem2/TreeItem2.js +0 -387
- package/modern/TreeItem2/index.js +0 -1
- package/modern/TreeItem2DragAndDropOverlay/index.js +0 -1
- package/modern/TreeItem2Icon/index.js +0 -1
- package/modern/TreeItem2LabelInput/index.js +0 -1
- package/modern/TreeItem2Provider/TreeItem2Provider.types.js +0 -1
- package/modern/TreeItem2Provider/index.js +0 -1
- package/modern/TreeView/TreeView.js +0 -211
- package/modern/TreeView/TreeView.types.js +0 -1
- package/modern/TreeView/index.js +0 -3
- package/modern/TreeView/treeViewClasses.js +0 -6
- package/modern/hooks/useTreeItem2Utils/index.js +0 -1
- package/modern/useTreeItem2/index.js +0 -4
- package/modern/useTreeItem2/useTreeItem2.types.js +0 -1
- package/node/TreeItem/TreeItemContent.js +0 -153
- package/node/TreeItem/useTreeItemState.js +0 -148
- package/node/TreeItem2/TreeItem2.js +0 -394
- package/node/TreeItem2/index.js +0 -48
- package/node/TreeItem2DragAndDropOverlay/index.js +0 -12
- package/node/TreeItem2Icon/index.js +0 -12
- package/node/TreeItem2LabelInput/index.js +0 -12
- package/node/TreeItem2Provider/index.js +0 -12
- package/node/TreeView/TreeView.js +0 -217
- package/node/TreeView/TreeView.types.js +0 -5
- package/node/TreeView/index.js +0 -27
- package/node/TreeView/treeViewClasses.js +0 -14
- package/node/hooks/useTreeItem2Utils/index.js +0 -12
- package/node/useTreeItem2/index.js +0 -10
- package/node/useTreeItem2/useTreeItem2.types.js +0 -5
- package/useTreeItem2/index.d.ts +0 -3
- package/useTreeItem2/index.js +0 -4
- package/useTreeItem2/useTreeItem2.d.ts +0 -2
- package/useTreeItem2/useTreeItem2.types.js +0 -1
- /package/{TreeItem2/TreeItem2.types.js → TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.js} +0 -0
- /package/{TreeItem2DragAndDropOverlay/TreeItem2DragAndDropOverlay.types.js → TreeItemIcon/TreeItemIcon.types.js} +0 -0
- /package/{TreeItem2Icon/TreeItem2Icon.types.js → TreeItemLabelInput/TreeItemLabelInput.types.js} +0 -0
- /package/{TreeItem2LabelInput/TreeItem2LabelInput.types.js → TreeItemProvider/TreeItemProvider.types.js} +0 -0
- /package/{TreeItem2Provider/TreeItem2Provider.types.js → modern/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.js} +0 -0
- /package/{TreeView/TreeView.types.js → modern/TreeItemIcon/TreeItemIcon.types.js} +0 -0
- /package/modern/{TreeItem2/TreeItem2.types.js → TreeItemLabelInput/TreeItemLabelInput.types.js} +0 -0
- /package/modern/{TreeItem2DragAndDropOverlay/TreeItem2DragAndDropOverlay.types.js → TreeItemProvider/TreeItemProvider.types.js} +0 -0
- /package/modern/{TreeItem2Icon/TreeItem2Icon.types.js → useTreeItem/useTreeItem.types.js} +0 -0
- /package/node/{TreeItem2/TreeItem2.types.js → TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.js} +0 -0
- /package/node/{TreeItem2DragAndDropOverlay/TreeItem2DragAndDropOverlay.types.js → TreeItemIcon/TreeItemIcon.types.js} +0 -0
- /package/node/{TreeItem2Icon/TreeItem2Icon.types.js → TreeItemLabelInput/TreeItemLabelInput.types.js} +0 -0
- /package/node/{TreeItem2LabelInput/TreeItem2LabelInput.types.js → TreeItemProvider/TreeItemProvider.types.js} +0 -0
- /package/node/{TreeItem2Provider/TreeItem2Provider.types.js → useTreeItem/useTreeItem.types.js} +0 -0
- /package/{modern/TreeItem2LabelInput/TreeItem2LabelInput.types.js → useTreeItem/useTreeItem.types.js} +0 -0
package/node/TreeItem/index.js
CHANGED
|
@@ -5,7 +5,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
var _exportNames = {
|
|
7
7
|
TreeItem: true,
|
|
8
|
-
|
|
8
|
+
TreeItemRoot: true,
|
|
9
|
+
TreeItemContent: true,
|
|
10
|
+
TreeItemIconContainer: true,
|
|
11
|
+
TreeItemGroupTransition: true,
|
|
12
|
+
TreeItemCheckbox: true,
|
|
13
|
+
TreeItemLabel: true
|
|
9
14
|
};
|
|
10
15
|
Object.defineProperty(exports, "TreeItem", {
|
|
11
16
|
enumerable: true,
|
|
@@ -13,10 +18,40 @@ Object.defineProperty(exports, "TreeItem", {
|
|
|
13
18
|
return _TreeItem.TreeItem;
|
|
14
19
|
}
|
|
15
20
|
});
|
|
21
|
+
Object.defineProperty(exports, "TreeItemCheckbox", {
|
|
22
|
+
enumerable: true,
|
|
23
|
+
get: function () {
|
|
24
|
+
return _TreeItem.TreeItemCheckbox;
|
|
25
|
+
}
|
|
26
|
+
});
|
|
16
27
|
Object.defineProperty(exports, "TreeItemContent", {
|
|
17
28
|
enumerable: true,
|
|
18
29
|
get: function () {
|
|
19
|
-
return
|
|
30
|
+
return _TreeItem.TreeItemContent;
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
Object.defineProperty(exports, "TreeItemGroupTransition", {
|
|
34
|
+
enumerable: true,
|
|
35
|
+
get: function () {
|
|
36
|
+
return _TreeItem.TreeItemGroupTransition;
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
Object.defineProperty(exports, "TreeItemIconContainer", {
|
|
40
|
+
enumerable: true,
|
|
41
|
+
get: function () {
|
|
42
|
+
return _TreeItem.TreeItemIconContainer;
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
Object.defineProperty(exports, "TreeItemLabel", {
|
|
46
|
+
enumerable: true,
|
|
47
|
+
get: function () {
|
|
48
|
+
return _TreeItem.TreeItemLabel;
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
Object.defineProperty(exports, "TreeItemRoot", {
|
|
52
|
+
enumerable: true,
|
|
53
|
+
get: function () {
|
|
54
|
+
return _TreeItem.TreeItemRoot;
|
|
20
55
|
}
|
|
21
56
|
});
|
|
22
57
|
var _TreeItem = require("./TreeItem");
|
|
@@ -31,17 +66,4 @@ Object.keys(_treeItemClasses).forEach(function (key) {
|
|
|
31
66
|
return _treeItemClasses[key];
|
|
32
67
|
}
|
|
33
68
|
});
|
|
34
|
-
});
|
|
35
|
-
var _useTreeItemState = require("./useTreeItemState");
|
|
36
|
-
Object.keys(_useTreeItemState).forEach(function (key) {
|
|
37
|
-
if (key === "default" || key === "__esModule") return;
|
|
38
|
-
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
39
|
-
if (key in exports && exports[key] === _useTreeItemState[key]) return;
|
|
40
|
-
Object.defineProperty(exports, key, {
|
|
41
|
-
enumerable: true,
|
|
42
|
-
get: function () {
|
|
43
|
-
return _useTreeItemState[key];
|
|
44
|
-
}
|
|
45
|
-
});
|
|
46
|
-
});
|
|
47
|
-
var _TreeItemContent = require("./TreeItemContent");
|
|
69
|
+
});
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
'use client';
|
|
2
3
|
|
|
3
4
|
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
5
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
5
6
|
Object.defineProperty(exports, "__esModule", {
|
|
6
7
|
value: true
|
|
7
8
|
});
|
|
8
|
-
exports.
|
|
9
|
+
exports.TreeItemDragAndDropOverlay = TreeItemDragAndDropOverlay;
|
|
9
10
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
11
|
var React = _interopRequireWildcard(require("react"));
|
|
11
12
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
@@ -13,8 +14,8 @@ var _styles = require("@mui/material/styles");
|
|
|
13
14
|
var _system = require("@mui/system");
|
|
14
15
|
var _zeroStyled = require("../internals/zero-styled");
|
|
15
16
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
|
-
const
|
|
17
|
-
name: '
|
|
17
|
+
const TreeItemDragAndDropOverlayRoot = (0, _zeroStyled.styled)('div', {
|
|
18
|
+
name: 'MuiTreeItemDragAndDropOverlay',
|
|
18
19
|
slot: 'Root',
|
|
19
20
|
overridesResolver: (props, styles) => styles.root,
|
|
20
21
|
shouldForwardProp: prop => (0, _system.shouldForwardProp)(prop) && prop !== 'action'
|
|
@@ -63,13 +64,13 @@ const TreeItem2DragAndDropOverlayRoot = (0, _zeroStyled.styled)('div', {
|
|
|
63
64
|
}
|
|
64
65
|
}]
|
|
65
66
|
}));
|
|
66
|
-
function
|
|
67
|
+
function TreeItemDragAndDropOverlay(props) {
|
|
67
68
|
if (props.action == null) {
|
|
68
69
|
return null;
|
|
69
70
|
}
|
|
70
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
71
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(TreeItemDragAndDropOverlayRoot, (0, _extends2.default)({}, props));
|
|
71
72
|
}
|
|
72
|
-
process.env.NODE_ENV !== "production" ?
|
|
73
|
+
process.env.NODE_ENV !== "production" ? TreeItemDragAndDropOverlay.propTypes = {
|
|
73
74
|
// ----------------------------- Warning --------------------------------
|
|
74
75
|
// | These PropTypes are generated from the TypeScript type definitions |
|
|
75
76
|
// | To update them edit the TypeScript types and run "pnpm proptypes" |
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "TreeItemDragAndDropOverlay", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _TreeItemDragAndDropOverlay.TreeItemDragAndDropOverlay;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _TreeItemDragAndDropOverlay = require("./TreeItemDragAndDropOverlay");
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
'use client';
|
|
2
3
|
|
|
3
4
|
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
5
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
5
6
|
Object.defineProperty(exports, "__esModule", {
|
|
6
7
|
value: true
|
|
7
8
|
});
|
|
8
|
-
exports.
|
|
9
|
+
exports.TreeItemIcon = TreeItemIcon;
|
|
9
10
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
11
|
var React = _interopRequireWildcard(require("react"));
|
|
11
12
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
@@ -14,7 +15,7 @@ var _useSlotProps = _interopRequireDefault(require("@mui/utils/useSlotProps"));
|
|
|
14
15
|
var _TreeViewProvider = require("../internals/TreeViewProvider");
|
|
15
16
|
var _icons = require("../icons");
|
|
16
17
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
|
-
function
|
|
18
|
+
function TreeItemIcon(props) {
|
|
18
19
|
const {
|
|
19
20
|
slots,
|
|
20
21
|
slotProps,
|
|
@@ -50,7 +51,7 @@ function TreeItem2Icon(props) {
|
|
|
50
51
|
}
|
|
51
52
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Icon, (0, _extends2.default)({}, iconProps));
|
|
52
53
|
}
|
|
53
|
-
process.env.NODE_ENV !== "production" ?
|
|
54
|
+
process.env.NODE_ENV !== "production" ? TreeItemIcon.propTypes = {
|
|
54
55
|
// ----------------------------- Warning --------------------------------
|
|
55
56
|
// | These PropTypes are generated from the TypeScript type definitions |
|
|
56
57
|
// | To update them edit the TypeScript types and run "pnpm proptypes" |
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "TreeItemIcon", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _TreeItemIcon.TreeItemIcon;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _TreeItemIcon = require("./TreeItemIcon");
|
package/node/{TreeItem2LabelInput/TreeItem2LabelInput.js → TreeItemLabelInput/TreeItemLabelInput.js}
RENAMED
|
@@ -4,14 +4,14 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.
|
|
7
|
+
exports.TreeItemLabelInput = void 0;
|
|
8
8
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
9
|
var _zeroStyled = require("../internals/zero-styled");
|
|
10
10
|
/**
|
|
11
11
|
* @ignore - internal component.
|
|
12
12
|
*/
|
|
13
|
-
const
|
|
14
|
-
name: '
|
|
13
|
+
const TreeItemLabelInput = exports.TreeItemLabelInput = (0, _zeroStyled.styled)('input', {
|
|
14
|
+
name: 'MuiTreeItem',
|
|
15
15
|
slot: 'LabelInput',
|
|
16
16
|
overridesResolver: (props, styles) => styles.labelInput
|
|
17
17
|
})(({
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "TreeItemLabelInput", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _TreeItemLabelInput.TreeItemLabelInput;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _TreeItemLabelInput = require("./TreeItemLabelInput");
|
package/node/{TreeItem2Provider/TreeItem2Provider.js → TreeItemProvider/TreeItemProvider.js}
RENAMED
|
@@ -4,10 +4,13 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.
|
|
7
|
+
exports.TreeItemProvider = TreeItemProvider;
|
|
8
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
9
|
var _TreeViewProvider = require("../internals/TreeViewProvider");
|
|
10
|
-
|
|
10
|
+
/**
|
|
11
|
+
* @ignore - internal component.
|
|
12
|
+
*/
|
|
13
|
+
function TreeItemProvider(props) {
|
|
11
14
|
const {
|
|
12
15
|
children,
|
|
13
16
|
itemId
|
|
@@ -22,7 +25,7 @@ function TreeItem2Provider(props) {
|
|
|
22
25
|
instance
|
|
23
26
|
});
|
|
24
27
|
}
|
|
25
|
-
|
|
28
|
+
TreeItemProvider.propTypes = {
|
|
26
29
|
// ----------------------------- Warning --------------------------------
|
|
27
30
|
// | These PropTypes are generated from the TypeScript type definitions |
|
|
28
31
|
// | To update them edit the TypeScript types and run "pnpm proptypes" |
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "TreeItemProvider", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _TreeItemProvider.TreeItemProvider;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _TreeItemProvider = require("./TreeItemProvider");
|
package/node/hooks/index.js
CHANGED
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
Object.defineProperty(exports, "
|
|
6
|
+
Object.defineProperty(exports, "useTreeItemUtils", {
|
|
7
7
|
enumerable: true,
|
|
8
8
|
get: function () {
|
|
9
|
-
return
|
|
9
|
+
return _useTreeItemUtils.useTreeItemUtils;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
12
|
Object.defineProperty(exports, "useTreeViewApiRef", {
|
|
@@ -16,4 +16,4 @@ Object.defineProperty(exports, "useTreeViewApiRef", {
|
|
|
16
16
|
}
|
|
17
17
|
});
|
|
18
18
|
var _useTreeViewApiRef = require("./useTreeViewApiRef");
|
|
19
|
-
var
|
|
19
|
+
var _useTreeItemUtils = require("./useTreeItemUtils");
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useTreeItemUtils", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _useTreeItemUtils.useTreeItemUtils;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _useTreeItemUtils = require("./useTreeItemUtils");
|
package/node/hooks/{useTreeItem2Utils/useTreeItem2Utils.js → useTreeItemUtils/useTreeItemUtils.js}
RENAMED
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
'use client';
|
|
2
3
|
|
|
3
4
|
Object.defineProperty(exports, "__esModule", {
|
|
4
5
|
value: true
|
|
5
6
|
});
|
|
6
|
-
exports.
|
|
7
|
+
exports.useTreeItemUtils = void 0;
|
|
7
8
|
var _TreeViewProvider = require("../../internals/TreeViewProvider");
|
|
8
9
|
var _useTreeViewLabel = require("../../internals/plugins/useTreeViewLabel");
|
|
9
10
|
var _plugins = require("../../internals/utils/plugins");
|
|
10
11
|
/**
|
|
11
|
-
* Plugins that need to be present in the Tree View in order for `
|
|
12
|
+
* Plugins that need to be present in the Tree View in order for `useTreeItemUtils` to work correctly.
|
|
12
13
|
*/
|
|
13
14
|
|
|
14
15
|
/**
|
|
15
|
-
* Plugins that `
|
|
16
|
+
* Plugins that `useTreeItemUtils` can use if they are present, but are not required.
|
|
16
17
|
*/
|
|
17
18
|
|
|
18
19
|
const isItemExpandable = reactChildren => {
|
|
@@ -21,7 +22,7 @@ const isItemExpandable = reactChildren => {
|
|
|
21
22
|
}
|
|
22
23
|
return Boolean(reactChildren);
|
|
23
24
|
};
|
|
24
|
-
const
|
|
25
|
+
const useTreeItemUtils = ({
|
|
25
26
|
itemId,
|
|
26
27
|
children
|
|
27
28
|
}) => {
|
|
@@ -144,4 +145,4 @@ const useTreeItem2Utils = ({
|
|
|
144
145
|
publicAPI
|
|
145
146
|
};
|
|
146
147
|
};
|
|
147
|
-
exports.
|
|
148
|
+
exports.useTreeItemUtils = useTreeItemUtils;
|
package/node/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @mui/x-tree-view
|
|
2
|
+
* @mui/x-tree-view v8.0.0-alpha.0
|
|
3
3
|
*
|
|
4
4
|
* @license MIT
|
|
5
5
|
* This source code is licensed under the MIT license found in the
|
|
@@ -19,18 +19,6 @@ Object.defineProperty(exports, "unstable_resetCleanupTracking", {
|
|
|
19
19
|
return _useInstanceEventHandler.unstable_resetCleanupTracking;
|
|
20
20
|
}
|
|
21
21
|
});
|
|
22
|
-
var _TreeView = require("./TreeView");
|
|
23
|
-
Object.keys(_TreeView).forEach(function (key) {
|
|
24
|
-
if (key === "default" || key === "__esModule") return;
|
|
25
|
-
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
26
|
-
if (key in exports && exports[key] === _TreeView[key]) return;
|
|
27
|
-
Object.defineProperty(exports, key, {
|
|
28
|
-
enumerable: true,
|
|
29
|
-
get: function () {
|
|
30
|
-
return _TreeView[key];
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
});
|
|
34
22
|
var _SimpleTreeView = require("./SimpleTreeView");
|
|
35
23
|
Object.keys(_SimpleTreeView).forEach(function (key) {
|
|
36
24
|
if (key === "default" || key === "__esModule") return;
|
|
@@ -67,19 +55,7 @@ Object.keys(_TreeItem).forEach(function (key) {
|
|
|
67
55
|
}
|
|
68
56
|
});
|
|
69
57
|
});
|
|
70
|
-
var
|
|
71
|
-
Object.keys(_TreeItem2).forEach(function (key) {
|
|
72
|
-
if (key === "default" || key === "__esModule") return;
|
|
73
|
-
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
74
|
-
if (key in exports && exports[key] === _TreeItem2[key]) return;
|
|
75
|
-
Object.defineProperty(exports, key, {
|
|
76
|
-
enumerable: true,
|
|
77
|
-
get: function () {
|
|
78
|
-
return _TreeItem2[key];
|
|
79
|
-
}
|
|
80
|
-
});
|
|
81
|
-
});
|
|
82
|
-
var _useTreeItem = require("./useTreeItem2");
|
|
58
|
+
var _useTreeItem = require("./useTreeItem");
|
|
83
59
|
Object.keys(_useTreeItem).forEach(function (key) {
|
|
84
60
|
if (key === "default" || key === "__esModule") return;
|
|
85
61
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
@@ -91,51 +67,51 @@ Object.keys(_useTreeItem).forEach(function (key) {
|
|
|
91
67
|
}
|
|
92
68
|
});
|
|
93
69
|
});
|
|
94
|
-
var
|
|
95
|
-
Object.keys(
|
|
70
|
+
var _TreeItemIcon = require("./TreeItemIcon");
|
|
71
|
+
Object.keys(_TreeItemIcon).forEach(function (key) {
|
|
96
72
|
if (key === "default" || key === "__esModule") return;
|
|
97
73
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
98
|
-
if (key in exports && exports[key] ===
|
|
74
|
+
if (key in exports && exports[key] === _TreeItemIcon[key]) return;
|
|
99
75
|
Object.defineProperty(exports, key, {
|
|
100
76
|
enumerable: true,
|
|
101
77
|
get: function () {
|
|
102
|
-
return
|
|
78
|
+
return _TreeItemIcon[key];
|
|
103
79
|
}
|
|
104
80
|
});
|
|
105
81
|
});
|
|
106
|
-
var
|
|
107
|
-
Object.keys(
|
|
82
|
+
var _TreeItemProvider = require("./TreeItemProvider");
|
|
83
|
+
Object.keys(_TreeItemProvider).forEach(function (key) {
|
|
108
84
|
if (key === "default" || key === "__esModule") return;
|
|
109
85
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
110
|
-
if (key in exports && exports[key] ===
|
|
86
|
+
if (key in exports && exports[key] === _TreeItemProvider[key]) return;
|
|
111
87
|
Object.defineProperty(exports, key, {
|
|
112
88
|
enumerable: true,
|
|
113
89
|
get: function () {
|
|
114
|
-
return
|
|
90
|
+
return _TreeItemProvider[key];
|
|
115
91
|
}
|
|
116
92
|
});
|
|
117
93
|
});
|
|
118
|
-
var
|
|
119
|
-
Object.keys(
|
|
94
|
+
var _TreeItemDragAndDropOverlay = require("./TreeItemDragAndDropOverlay");
|
|
95
|
+
Object.keys(_TreeItemDragAndDropOverlay).forEach(function (key) {
|
|
120
96
|
if (key === "default" || key === "__esModule") return;
|
|
121
97
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
122
|
-
if (key in exports && exports[key] ===
|
|
98
|
+
if (key in exports && exports[key] === _TreeItemDragAndDropOverlay[key]) return;
|
|
123
99
|
Object.defineProperty(exports, key, {
|
|
124
100
|
enumerable: true,
|
|
125
101
|
get: function () {
|
|
126
|
-
return
|
|
102
|
+
return _TreeItemDragAndDropOverlay[key];
|
|
127
103
|
}
|
|
128
104
|
});
|
|
129
105
|
});
|
|
130
|
-
var
|
|
131
|
-
Object.keys(
|
|
106
|
+
var _TreeItemLabelInput = require("./TreeItemLabelInput");
|
|
107
|
+
Object.keys(_TreeItemLabelInput).forEach(function (key) {
|
|
132
108
|
if (key === "default" || key === "__esModule") return;
|
|
133
109
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
134
|
-
if (key in exports && exports[key] ===
|
|
110
|
+
if (key in exports && exports[key] === _TreeItemLabelInput[key]) return;
|
|
135
111
|
Object.defineProperty(exports, key, {
|
|
136
112
|
enumerable: true,
|
|
137
113
|
get: function () {
|
|
138
|
-
return
|
|
114
|
+
return _TreeItemLabelInput[key];
|
|
139
115
|
}
|
|
140
116
|
});
|
|
141
117
|
});
|
|
@@ -71,8 +71,7 @@ const useTreeViewItems = ({
|
|
|
71
71
|
instance,
|
|
72
72
|
params,
|
|
73
73
|
state,
|
|
74
|
-
setState
|
|
75
|
-
experimentalFeatures
|
|
74
|
+
setState
|
|
76
75
|
}) => {
|
|
77
76
|
const getItemMeta = React.useCallback(itemId => state.items.itemMetaMap[itemId], [state.items.itemMetaMap]);
|
|
78
77
|
const getItem = React.useCallback(itemId => state.items.itemMap[itemId], [state.items.itemMap]);
|
|
@@ -199,8 +198,7 @@ const useTreeViewItems = ({
|
|
|
199
198
|
contextValue: {
|
|
200
199
|
items: {
|
|
201
200
|
onItemClick: params.onItemClick,
|
|
202
|
-
disabledItemsFocusable: params.disabledItemsFocusable
|
|
203
|
-
indentationAtItemLevel: experimentalFeatures.indentationAtItemLevel ?? false
|
|
201
|
+
disabledItemsFocusable: params.disabledItemsFocusable
|
|
204
202
|
}
|
|
205
203
|
}
|
|
206
204
|
};
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.useTreeViewSelectionItemPlugin = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _TreeViewProvider = require("../../TreeViewProvider");
|
|
10
|
+
function getCheckboxStatus({
|
|
11
|
+
itemId,
|
|
12
|
+
instance,
|
|
13
|
+
selectionPropagation,
|
|
14
|
+
selected
|
|
15
|
+
}) {
|
|
16
|
+
if (selected) {
|
|
17
|
+
return {
|
|
18
|
+
indeterminate: false,
|
|
19
|
+
checked: true
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
const children = instance.getItemOrderedChildrenIds(itemId);
|
|
23
|
+
if (children.length === 0) {
|
|
24
|
+
return {
|
|
25
|
+
indeterminate: false,
|
|
26
|
+
checked: false
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
let hasSelectedDescendant = false;
|
|
30
|
+
let hasUnSelectedDescendant = false;
|
|
31
|
+
const traverseDescendants = itemToTraverseId => {
|
|
32
|
+
if (itemToTraverseId !== itemId) {
|
|
33
|
+
if (instance.isItemSelected(itemToTraverseId)) {
|
|
34
|
+
hasSelectedDescendant = true;
|
|
35
|
+
} else {
|
|
36
|
+
hasUnSelectedDescendant = true;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
instance.getItemOrderedChildrenIds(itemToTraverseId).forEach(traverseDescendants);
|
|
40
|
+
};
|
|
41
|
+
traverseDescendants(itemId);
|
|
42
|
+
return {
|
|
43
|
+
indeterminate: hasSelectedDescendant && hasUnSelectedDescendant || !hasUnSelectedDescendant && !selected,
|
|
44
|
+
checked: selectionPropagation.parents ? hasSelectedDescendant : selected
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
const useTreeViewSelectionItemPlugin = ({
|
|
48
|
+
props
|
|
49
|
+
}) => {
|
|
50
|
+
const {
|
|
51
|
+
itemId
|
|
52
|
+
} = props;
|
|
53
|
+
const {
|
|
54
|
+
instance,
|
|
55
|
+
selection: {
|
|
56
|
+
disableSelection,
|
|
57
|
+
checkboxSelection,
|
|
58
|
+
selectionPropagation
|
|
59
|
+
}
|
|
60
|
+
} = (0, _TreeViewProvider.useTreeViewContext)();
|
|
61
|
+
return {
|
|
62
|
+
propsEnhancers: {
|
|
63
|
+
checkbox: ({
|
|
64
|
+
externalEventHandlers,
|
|
65
|
+
interactions,
|
|
66
|
+
status
|
|
67
|
+
}) => {
|
|
68
|
+
const handleChange = event => {
|
|
69
|
+
externalEventHandlers.onChange?.(event);
|
|
70
|
+
if (event.defaultMuiPrevented) {
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
if (disableSelection || status.disabled) {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
interactions.handleCheckboxSelection(event);
|
|
77
|
+
};
|
|
78
|
+
const checkboxStatus = getCheckboxStatus({
|
|
79
|
+
instance,
|
|
80
|
+
itemId,
|
|
81
|
+
selectionPropagation,
|
|
82
|
+
selected: status.selected
|
|
83
|
+
});
|
|
84
|
+
return (0, _extends2.default)({
|
|
85
|
+
visible: checkboxSelection,
|
|
86
|
+
disabled: disableSelection || status.disabled,
|
|
87
|
+
tabIndex: -1,
|
|
88
|
+
onChange: handleChange
|
|
89
|
+
}, checkboxStatus);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
};
|
|
94
|
+
exports.useTreeViewSelectionItemPlugin = useTreeViewSelectionItemPlugin;
|
|
@@ -10,6 +10,7 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
|
10
10
|
var React = _interopRequireWildcard(require("react"));
|
|
11
11
|
var _tree = require("../../utils/tree");
|
|
12
12
|
var _useTreeViewSelection = require("./useTreeViewSelection.utils");
|
|
13
|
+
var _useTreeViewSelection2 = require("./useTreeViewSelection.itemPlugin");
|
|
13
14
|
const useTreeViewSelection = ({
|
|
14
15
|
instance,
|
|
15
16
|
params,
|
|
@@ -28,30 +29,47 @@ const useTreeViewSelection = ({
|
|
|
28
29
|
}
|
|
29
30
|
return temp;
|
|
30
31
|
}, [models.selectedItems.value]);
|
|
31
|
-
const setSelectedItems = (event,
|
|
32
|
+
const setSelectedItems = (event, newModel, additionalItemsToPropagate) => {
|
|
33
|
+
let cleanModel;
|
|
34
|
+
if (params.multiSelect && (params.selectionPropagation.descendants || params.selectionPropagation.parents)) {
|
|
35
|
+
cleanModel = (0, _useTreeViewSelection.propagateSelection)({
|
|
36
|
+
instance,
|
|
37
|
+
selectionPropagation: params.selectionPropagation,
|
|
38
|
+
newModel: newModel,
|
|
39
|
+
oldModel: models.selectedItems.value,
|
|
40
|
+
additionalItemsToPropagate
|
|
41
|
+
});
|
|
42
|
+
} else {
|
|
43
|
+
cleanModel = newModel;
|
|
44
|
+
}
|
|
32
45
|
if (params.onItemSelectionToggle) {
|
|
33
46
|
if (params.multiSelect) {
|
|
34
|
-
const
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
47
|
+
const changes = (0, _useTreeViewSelection.getAddedAndRemovedItems)({
|
|
48
|
+
instance,
|
|
49
|
+
newModel: cleanModel,
|
|
50
|
+
oldModel: models.selectedItems.value
|
|
38
51
|
});
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
52
|
+
if (params.onItemSelectionToggle) {
|
|
53
|
+
changes.added.forEach(itemId => {
|
|
54
|
+
params.onItemSelectionToggle(event, itemId, true);
|
|
55
|
+
});
|
|
56
|
+
changes.removed.forEach(itemId => {
|
|
57
|
+
params.onItemSelectionToggle(event, itemId, false);
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
} else if (params.onItemSelectionToggle && cleanModel !== models.selectedItems.value) {
|
|
43
61
|
if (models.selectedItems.value != null) {
|
|
44
62
|
params.onItemSelectionToggle(event, models.selectedItems.value, false);
|
|
45
63
|
}
|
|
46
|
-
if (
|
|
47
|
-
params.onItemSelectionToggle(event,
|
|
64
|
+
if (cleanModel != null) {
|
|
65
|
+
params.onItemSelectionToggle(event, cleanModel, true);
|
|
48
66
|
}
|
|
49
67
|
}
|
|
50
68
|
}
|
|
51
69
|
if (params.onSelectedItemsChange) {
|
|
52
|
-
params.onSelectedItemsChange(event,
|
|
70
|
+
params.onSelectedItemsChange(event, cleanModel);
|
|
53
71
|
}
|
|
54
|
-
models.selectedItems.setControlledValue(
|
|
72
|
+
models.selectedItems.setControlledValue(cleanModel);
|
|
55
73
|
};
|
|
56
74
|
const isItemSelected = itemId => selectedItemsMap.has(itemId);
|
|
57
75
|
const selectItem = ({
|
|
@@ -82,7 +100,10 @@ const useTreeViewSelection = ({
|
|
|
82
100
|
newSelected = params.multiSelect ? [itemId] : itemId;
|
|
83
101
|
}
|
|
84
102
|
}
|
|
85
|
-
setSelectedItems(event, newSelected
|
|
103
|
+
setSelectedItems(event, newSelected,
|
|
104
|
+
// If shouldBeSelected === instance.isItemSelect(itemId), we still want to propagate the select.
|
|
105
|
+
// This is useful when the element is in an indeterminate state.
|
|
106
|
+
[itemId]);
|
|
86
107
|
lastSelectedItem.current = itemId;
|
|
87
108
|
lastSelectedRange.current = {};
|
|
88
109
|
};
|
|
@@ -171,12 +192,14 @@ const useTreeViewSelection = ({
|
|
|
171
192
|
selection: {
|
|
172
193
|
multiSelect: params.multiSelect,
|
|
173
194
|
checkboxSelection: params.checkboxSelection,
|
|
174
|
-
disableSelection: params.disableSelection
|
|
195
|
+
disableSelection: params.disableSelection,
|
|
196
|
+
selectionPropagation: params.selectionPropagation
|
|
175
197
|
}
|
|
176
198
|
}
|
|
177
199
|
};
|
|
178
200
|
};
|
|
179
201
|
exports.useTreeViewSelection = useTreeViewSelection;
|
|
202
|
+
useTreeViewSelection.itemPlugin = _useTreeViewSelection2.useTreeViewSelectionItemPlugin;
|
|
180
203
|
useTreeViewSelection.models = {
|
|
181
204
|
selectedItems: {
|
|
182
205
|
getDefaultValue: params => params.defaultSelectedItems
|
|
@@ -189,7 +212,8 @@ useTreeViewSelection.getDefaultizedParams = ({
|
|
|
189
212
|
disableSelection: params.disableSelection ?? false,
|
|
190
213
|
multiSelect: params.multiSelect ?? false,
|
|
191
214
|
checkboxSelection: params.checkboxSelection ?? false,
|
|
192
|
-
defaultSelectedItems: params.defaultSelectedItems ?? (params.multiSelect ? DEFAULT_SELECTED_ITEMS : null)
|
|
215
|
+
defaultSelectedItems: params.defaultSelectedItems ?? (params.multiSelect ? DEFAULT_SELECTED_ITEMS : null),
|
|
216
|
+
selectionPropagation: params.selectionPropagation ?? {}
|
|
193
217
|
});
|
|
194
218
|
useTreeViewSelection.params = {
|
|
195
219
|
disableSelection: true,
|
|
@@ -198,5 +222,6 @@ useTreeViewSelection.params = {
|
|
|
198
222
|
defaultSelectedItems: true,
|
|
199
223
|
selectedItems: true,
|
|
200
224
|
onSelectedItemsChange: true,
|
|
201
|
-
onItemSelectionToggle: true
|
|
225
|
+
onItemSelectionToggle: true,
|
|
226
|
+
selectionPropagation: true
|
|
202
227
|
};
|