@mui/x-tree-view 7.3.0 → 7.3.1
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 +79 -2
- package/TreeItem/TreeItem.js +1 -2
- package/TreeItem/TreeItemContent.js +1 -2
- package/TreeItem/useTreeItemState.js +1 -3
- package/TreeItem2/TreeItem2.js +1 -2
- package/hooks/useTreeItem2Utils/useTreeItem2Utils.js +1 -3
- package/index.js +1 -1
- package/internals/TreeViewProvider/useTreeViewContext.d.ts +1 -1
- package/internals/hooks/useInstanceEventHandler.d.ts +2 -2
- package/internals/models/treeView.d.ts +0 -6
- package/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +1 -4
- package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +31 -63
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +82 -94
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +32 -5
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.d.ts +9 -0
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +21 -0
- package/internals/useTreeView/useTreeView.types.d.ts +1 -1
- package/internals/useTreeView/useTreeViewModels.d.ts +1 -1
- package/internals/utils/extractPluginParamsFromProps.d.ts +1 -1
- package/internals/utils/publishTreeViewEvent.d.ts +1 -1
- package/internals/utils/tree.d.ts +17 -1
- package/internals/utils/tree.js +34 -4
- package/modern/TreeItem/TreeItem.js +1 -2
- package/modern/TreeItem/TreeItemContent.js +1 -2
- package/modern/TreeItem/useTreeItemState.js +1 -3
- package/modern/TreeItem2/TreeItem2.js +1 -2
- package/modern/hooks/useTreeItem2Utils/useTreeItem2Utils.js +1 -3
- package/modern/index.js +1 -1
- package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +1 -4
- package/modern/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +31 -63
- package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +82 -94
- package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +21 -0
- package/modern/internals/utils/tree.js +34 -4
- package/node/RichTreeView/RichTreeView.js +1 -1
- package/node/SimpleTreeView/SimpleTreeView.js +1 -1
- package/node/TreeItem/TreeItem.js +1 -1
- package/node/TreeItem/TreeItemContent.js +1 -1
- package/node/TreeItem/useTreeItemState.js +1 -3
- package/node/TreeItem2/TreeItem2.js +1 -1
- package/node/TreeItem2Icon/TreeItem2Icon.js +1 -1
- package/node/TreeView/TreeView.js +1 -1
- package/node/hooks/useTreeItem2Utils/useTreeItem2Utils.js +1 -3
- package/node/hooks/useTreeViewApiRef.js +1 -1
- package/node/icons/icons.js +1 -1
- package/node/index.js +1 -1
- package/node/internals/TreeViewProvider/TreeViewChildrenItemProvider.js +1 -1
- package/node/internals/TreeViewProvider/TreeViewContext.js +1 -1
- package/node/internals/TreeViewProvider/TreeViewProvider.js +1 -1
- package/node/internals/TreeViewProvider/useTreeViewContext.js +1 -1
- package/node/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +1 -1
- package/node/internals/hooks/useInstanceEventHandler.js +1 -1
- package/node/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +1 -1
- package/node/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +2 -5
- package/node/internals/plugins/useTreeViewId/useTreeViewId.js +1 -1
- package/node/internals/plugins/useTreeViewItems/useTreeViewItems.js +1 -1
- package/node/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +1 -1
- package/node/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +32 -64
- package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +82 -94
- package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +29 -0
- package/node/internals/useTreeView/useTreeView.js +1 -1
- package/node/internals/useTreeView/useTreeViewModels.js +1 -1
- package/node/internals/utils/tree.js +37 -5
- package/package.json +3 -5
|
@@ -84,7 +84,7 @@ export const getFirstNavigableItem = instance => instance.getItemOrderedChildren
|
|
|
84
84
|
* Another way to put it is which item is shallower in a trémaux tree
|
|
85
85
|
* https://en.wikipedia.org/wiki/Tr%C3%A9maux_tree
|
|
86
86
|
*/
|
|
87
|
-
const findOrderInTremauxTree = (instance, itemAId, itemBId) => {
|
|
87
|
+
export const findOrderInTremauxTree = (instance, itemAId, itemBId) => {
|
|
88
88
|
if (itemAId === itemBId) {
|
|
89
89
|
return [itemAId, itemBId];
|
|
90
90
|
}
|
|
@@ -125,13 +125,43 @@ const findOrderInTremauxTree = (instance, itemAId, itemBId) => {
|
|
|
125
125
|
const bSide = bFamily[bFamily.indexOf(commonAncestor) - 1];
|
|
126
126
|
return ancestorFamily.indexOf(aSide) < ancestorFamily.indexOf(bSide) ? [itemAId, itemBId] : [itemBId, itemAId];
|
|
127
127
|
};
|
|
128
|
-
export const
|
|
128
|
+
export const getNonDisabledItemsInRange = (instance, itemAId, itemBId) => {
|
|
129
|
+
const getNextItem = itemId => {
|
|
130
|
+
// If the item is expanded and has some children, return the first of them.
|
|
131
|
+
if (instance.isItemExpandable(itemId) && instance.isItemExpanded(itemId)) {
|
|
132
|
+
return instance.getItemOrderedChildrenIds(itemId)[0];
|
|
133
|
+
}
|
|
134
|
+
let itemMeta = instance.getItemMeta(itemId);
|
|
135
|
+
while (itemMeta != null) {
|
|
136
|
+
// Try to find the first navigable sibling after the current item.
|
|
137
|
+
const siblings = instance.getItemOrderedChildrenIds(itemMeta.parentId);
|
|
138
|
+
const currentItemIndex = instance.getItemIndex(itemMeta.id);
|
|
139
|
+
if (currentItemIndex < siblings.length - 1) {
|
|
140
|
+
return siblings[currentItemIndex + 1];
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
// If the item is the last of its siblings, go up a level to the parent and try again.
|
|
144
|
+
itemMeta = instance.getItemMeta(itemMeta.parentId);
|
|
145
|
+
}
|
|
146
|
+
throw new Error('Invalid range');
|
|
147
|
+
};
|
|
129
148
|
const [first, last] = findOrderInTremauxTree(instance, itemAId, itemBId);
|
|
130
149
|
const items = [first];
|
|
131
150
|
let current = first;
|
|
132
151
|
while (current !== last) {
|
|
133
|
-
current =
|
|
134
|
-
|
|
152
|
+
current = getNextItem(current);
|
|
153
|
+
if (!instance.isItemDisabled(current)) {
|
|
154
|
+
items.push(current);
|
|
155
|
+
}
|
|
135
156
|
}
|
|
136
157
|
return items;
|
|
158
|
+
};
|
|
159
|
+
export const getAllNavigableItems = instance => {
|
|
160
|
+
let item = getFirstNavigableItem(instance);
|
|
161
|
+
const navigableItems = [];
|
|
162
|
+
while (item != null) {
|
|
163
|
+
navigableItems.push(item);
|
|
164
|
+
item = getNextNavigableItem(instance, item);
|
|
165
|
+
}
|
|
166
|
+
return navigableItems;
|
|
137
167
|
};
|
|
@@ -20,7 +20,7 @@ var _warning = require("../internals/utils/warning");
|
|
|
20
20
|
var _extractPluginParamsFromProps = require("../internals/utils/extractPluginParamsFromProps");
|
|
21
21
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
22
22
|
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); }
|
|
23
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
23
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
24
24
|
const useUtilityClasses = ownerState => {
|
|
25
25
|
const {
|
|
26
26
|
classes
|
|
@@ -19,7 +19,7 @@ var _warning = require("../internals/utils/warning");
|
|
|
19
19
|
var _extractPluginParamsFromProps = require("../internals/utils/extractPluginParamsFromProps");
|
|
20
20
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
21
21
|
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); }
|
|
22
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
22
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
23
23
|
const useUtilityClasses = ownerState => {
|
|
24
24
|
const {
|
|
25
25
|
classes
|
|
@@ -28,7 +28,7 @@ const _excluded = ["children", "className", "slots", "slotProps", "ContentCompon
|
|
|
28
28
|
_excluded3 = ["ownerState"],
|
|
29
29
|
_excluded4 = ["ownerState"];
|
|
30
30
|
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); }
|
|
31
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
31
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
32
32
|
const useUtilityClasses = ownerState => {
|
|
33
33
|
const {
|
|
34
34
|
classes
|
|
@@ -14,7 +14,7 @@ var _useTreeItemState = require("./useTreeItemState");
|
|
|
14
14
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
15
|
const _excluded = ["classes", "className", "displayIcon", "expansionIcon", "icon", "label", "itemId", "onClick", "onMouseDown"];
|
|
16
16
|
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); }
|
|
17
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
17
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
18
18
|
/**
|
|
19
19
|
* @ignore - internal component.
|
|
20
20
|
*/
|
|
@@ -38,9 +38,7 @@ function useTreeItemState(itemId) {
|
|
|
38
38
|
const multiple = multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);
|
|
39
39
|
if (multiple) {
|
|
40
40
|
if (event.shiftKey) {
|
|
41
|
-
instance.
|
|
42
|
-
end: itemId
|
|
43
|
-
});
|
|
41
|
+
instance.expandSelectionRange(event, itemId);
|
|
44
42
|
} else {
|
|
45
43
|
instance.selectItem(event, itemId, true);
|
|
46
44
|
}
|
|
@@ -23,7 +23,7 @@ var _TreeItem2Provider = require("../TreeItem2Provider");
|
|
|
23
23
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
24
24
|
const _excluded = ["id", "itemId", "label", "disabled", "children", "slots", "slotProps"];
|
|
25
25
|
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); }
|
|
26
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
26
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
27
27
|
const TreeItem2Root = exports.TreeItem2Root = (0, _styles.styled)('li', {
|
|
28
28
|
name: 'MuiTreeItem2',
|
|
29
29
|
slot: 'Root',
|
|
@@ -13,7 +13,7 @@ var _useTreeViewContext = require("../internals/TreeViewProvider/useTreeViewCont
|
|
|
13
13
|
var _icons = require("../icons");
|
|
14
14
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
15
|
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); }
|
|
16
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
16
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
17
17
|
function TreeItem2Icon(props) {
|
|
18
18
|
const {
|
|
19
19
|
slots,
|
|
@@ -14,7 +14,7 @@ var _treeViewClasses = require("./treeViewClasses");
|
|
|
14
14
|
var _SimpleTreeView = require("../SimpleTreeView");
|
|
15
15
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
16
|
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); }
|
|
17
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
17
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
18
18
|
const useUtilityClasses = ownerState => {
|
|
19
19
|
const {
|
|
20
20
|
classes
|
|
@@ -46,9 +46,7 @@ const useTreeItem2Utils = ({
|
|
|
46
46
|
const multiple = multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);
|
|
47
47
|
if (multiple) {
|
|
48
48
|
if (event.shiftKey) {
|
|
49
|
-
instance.
|
|
50
|
-
end: itemId
|
|
51
|
-
});
|
|
49
|
+
instance.expandSelectionRange(event, itemId);
|
|
52
50
|
} else {
|
|
53
51
|
instance.selectItem(event, itemId, true);
|
|
54
52
|
}
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.useTreeViewApiRef = void 0;
|
|
7
7
|
var React = _interopRequireWildcard(require("react"));
|
|
8
8
|
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); }
|
|
9
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
9
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
10
10
|
/**
|
|
11
11
|
* Hook that instantiates a [[TreeViewApiRef]].
|
|
12
12
|
*/
|
package/node/icons/icons.js
CHANGED
|
@@ -8,7 +8,7 @@ var _utils = require("@mui/material/utils");
|
|
|
8
8
|
var React = _interopRequireWildcard(require("react"));
|
|
9
9
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
10
|
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); }
|
|
11
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
11
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
12
12
|
const TreeViewExpandIcon = exports.TreeViewExpandIcon = (0, _utils.createSvgIcon)( /*#__PURE__*/(0, _jsxRuntime.jsx)("path", {
|
|
13
13
|
d: "M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"
|
|
14
14
|
}), 'TreeViewExpandIcon');
|
package/node/index.js
CHANGED
|
@@ -11,7 +11,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
11
11
|
var _useTreeViewContext = require("./useTreeViewContext");
|
|
12
12
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
13
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); }
|
|
14
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
14
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
15
15
|
const TreeViewChildrenItemContext = exports.TreeViewChildrenItemContext = /*#__PURE__*/React.createContext(null);
|
|
16
16
|
if (process.env.NODE_ENV !== 'production') {
|
|
17
17
|
TreeViewChildrenItemContext.displayName = 'TreeViewChildrenItemContext';
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.TreeViewContext = void 0;
|
|
7
7
|
var React = _interopRequireWildcard(require("react"));
|
|
8
8
|
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); }
|
|
9
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
9
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
10
10
|
/**
|
|
11
11
|
* @ignore - internal component.
|
|
12
12
|
*/
|
|
@@ -8,7 +8,7 @@ var React = _interopRequireWildcard(require("react"));
|
|
|
8
8
|
var _TreeViewContext = require("./TreeViewContext");
|
|
9
9
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
10
|
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); }
|
|
11
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
11
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
12
12
|
/**
|
|
13
13
|
* Sets up the contexts for the underlying TreeItem components.
|
|
14
14
|
*
|
|
@@ -7,7 +7,7 @@ exports.useTreeViewContext = void 0;
|
|
|
7
7
|
var React = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _TreeViewContext = require("./TreeViewContext");
|
|
9
9
|
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); }
|
|
10
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
10
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
11
11
|
const useTreeViewContext = () => {
|
|
12
12
|
const context = React.useContext(_TreeViewContext.TreeViewContext);
|
|
13
13
|
if (context == null) {
|
|
@@ -7,7 +7,7 @@ exports.useTreeViewInstanceEvents = void 0;
|
|
|
7
7
|
var React = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _EventManager = require("../../utils/EventManager");
|
|
9
9
|
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); }
|
|
10
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
10
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
11
11
|
const isSyntheticEvent = event => {
|
|
12
12
|
return event.isPropagationStopped !== undefined;
|
|
13
13
|
};
|
|
@@ -9,7 +9,7 @@ var React = _interopRequireWildcard(require("react"));
|
|
|
9
9
|
var _TimerBasedCleanupTracking = require("../utils/cleanupTracking/TimerBasedCleanupTracking");
|
|
10
10
|
var _FinalizationRegistryBasedCleanupTracking = require("../utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking");
|
|
11
11
|
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); }
|
|
12
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
12
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
13
13
|
// We use class to make it easier to detect in heap snapshots by name
|
|
14
14
|
class ObjectToBeRetainedByReact {}
|
|
15
15
|
|
|
@@ -9,7 +9,7 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
|
9
9
|
var React = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _useEventCallback = _interopRequireDefault(require("@mui/utils/useEventCallback"));
|
|
11
11
|
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); }
|
|
12
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
12
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
13
13
|
const useTreeViewExpansion = ({
|
|
14
14
|
instance,
|
|
15
15
|
params,
|
|
@@ -13,7 +13,7 @@ var _useInstanceEventHandler = require("../../hooks/useInstanceEventHandler");
|
|
|
13
13
|
var _utils = require("../../utils/utils");
|
|
14
14
|
var _tree = require("../../utils/tree");
|
|
15
15
|
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); }
|
|
16
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
16
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
17
17
|
const useTabbableItemId = (instance, selectedItems) => {
|
|
18
18
|
const isItemVisible = itemId => {
|
|
19
19
|
const itemMeta = instance.getItemMeta(itemId);
|
|
@@ -114,12 +114,9 @@ const useTreeViewFocus = ({
|
|
|
114
114
|
instance.focusDefaultItem(event);
|
|
115
115
|
}
|
|
116
116
|
};
|
|
117
|
-
const focusedItem = instance.getItemMeta(state.focusedItemId);
|
|
118
|
-
const activeDescendant = focusedItem ? instance.getTreeItemIdAttribute(focusedItem.id, focusedItem.idAttribute) : null;
|
|
119
117
|
return {
|
|
120
118
|
getRootProps: otherHandlers => ({
|
|
121
|
-
onFocus: createRootHandleFocus(otherHandlers)
|
|
122
|
-
'aria-activedescendant': activeDescendant ?? undefined
|
|
119
|
+
onFocus: createRootHandleFocus(otherHandlers)
|
|
123
120
|
}),
|
|
124
121
|
publicAPI: {
|
|
125
122
|
focusItem
|
|
@@ -8,7 +8,7 @@ exports.useTreeViewId = void 0;
|
|
|
8
8
|
var React = _interopRequireWildcard(require("react"));
|
|
9
9
|
var _useId = _interopRequireDefault(require("@mui/utils/useId"));
|
|
10
10
|
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); }
|
|
11
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
11
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
12
12
|
const useTreeViewId = ({
|
|
13
13
|
params
|
|
14
14
|
}) => {
|
|
@@ -10,7 +10,7 @@ var React = _interopRequireWildcard(require("react"));
|
|
|
10
10
|
var _publishTreeViewEvent = require("../../utils/publishTreeViewEvent");
|
|
11
11
|
var _useTreeViewItems = require("./useTreeViewItems.utils");
|
|
12
12
|
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); }
|
|
13
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
13
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
14
14
|
const updateItemsState = ({
|
|
15
15
|
items,
|
|
16
16
|
isItemDisabled,
|
|
@@ -16,7 +16,7 @@ var _TreeViewChildrenItemProvider = require("../../TreeViewProvider/TreeViewChil
|
|
|
16
16
|
var _useTreeViewItems = require("../useTreeViewItems/useTreeViewItems.utils");
|
|
17
17
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
18
18
|
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); }
|
|
19
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
19
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
20
20
|
const useTreeViewJSXItems = ({
|
|
21
21
|
instance,
|
|
22
22
|
setState
|
package/node/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js
CHANGED
|
@@ -10,18 +10,10 @@ var _styles = require("@mui/material/styles");
|
|
|
10
10
|
var _useEventCallback = _interopRequireDefault(require("@mui/utils/useEventCallback"));
|
|
11
11
|
var _tree = require("../../utils/tree");
|
|
12
12
|
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); }
|
|
13
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
13
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
14
14
|
function isPrintableCharacter(string) {
|
|
15
15
|
return !!string && string.length === 1 && !!string.match(/\S/);
|
|
16
16
|
}
|
|
17
|
-
function findNextFirstChar(firstChars, startIndex, char) {
|
|
18
|
-
for (let i = startIndex; i < firstChars.length; i += 1) {
|
|
19
|
-
if (char === firstChars[i]) {
|
|
20
|
-
return i;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
return -1;
|
|
24
|
-
}
|
|
25
17
|
const useTreeViewKeyboardNavigation = ({
|
|
26
18
|
instance,
|
|
27
19
|
params,
|
|
@@ -44,42 +36,29 @@ const useTreeViewKeyboardNavigation = ({
|
|
|
44
36
|
Object.values(state.items.itemMetaMap).forEach(processItem);
|
|
45
37
|
firstCharMap.current = newFirstCharMap;
|
|
46
38
|
}, [state.items.itemMetaMap, params.getItemId, instance]);
|
|
47
|
-
const getFirstMatchingItem = (itemId,
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
39
|
+
const getFirstMatchingItem = (itemId, query) => {
|
|
40
|
+
const cleanQuery = query.toLowerCase();
|
|
41
|
+
const getNextItem = itemIdToCheck => {
|
|
42
|
+
const nextItemId = (0, _tree.getNextNavigableItem)(instance, itemIdToCheck);
|
|
43
|
+
// We reached the end of the tree, check from the beginning
|
|
44
|
+
if (nextItemId === null) {
|
|
45
|
+
return (0, _tree.getFirstNavigableItem)(instance);
|
|
46
|
+
}
|
|
47
|
+
return nextItemId;
|
|
48
|
+
};
|
|
49
|
+
let matchingItemId = null;
|
|
50
|
+
let currentItemId = getNextItem(itemId);
|
|
51
|
+
const checkedItems = {};
|
|
52
|
+
// The "!checkedItems[currentItemId]" condition avoids an infinite loop when there is no matching item.
|
|
53
|
+
while (matchingItemId == null && !checkedItems[currentItemId]) {
|
|
54
|
+
if (firstCharMap.current[currentItemId] === cleanQuery) {
|
|
55
|
+
matchingItemId = currentItemId;
|
|
56
|
+
} else {
|
|
57
|
+
checkedItems[currentItemId] = true;
|
|
58
|
+
currentItemId = getNextItem(currentItemId);
|
|
61
59
|
}
|
|
62
|
-
});
|
|
63
|
-
|
|
64
|
-
// Get start index for search based on position of currentItem
|
|
65
|
-
start = firstCharIds.indexOf(itemId) + 1;
|
|
66
|
-
if (start >= firstCharIds.length) {
|
|
67
|
-
start = 0;
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
// Check remaining slots in the menu
|
|
71
|
-
index = findNextFirstChar(firstChars, start, lowercaseChar);
|
|
72
|
-
|
|
73
|
-
// If not found in remaining slots, check from beginning
|
|
74
|
-
if (index === -1) {
|
|
75
|
-
index = findNextFirstChar(firstChars, 0, lowercaseChar);
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
// If a match was found...
|
|
79
|
-
if (index > -1) {
|
|
80
|
-
return firstCharIds[index];
|
|
81
60
|
}
|
|
82
|
-
return
|
|
61
|
+
return matchingItemId;
|
|
83
62
|
};
|
|
84
63
|
const canToggleItemSelection = itemId => !params.disableSelection && !instance.isItemDisabled(itemId);
|
|
85
64
|
const canToggleItemExpansion = itemId => {
|
|
@@ -104,9 +83,7 @@ const useTreeViewKeyboardNavigation = ({
|
|
|
104
83
|
{
|
|
105
84
|
event.preventDefault();
|
|
106
85
|
if (params.multiSelect && event.shiftKey) {
|
|
107
|
-
instance.
|
|
108
|
-
end: itemId
|
|
109
|
-
});
|
|
86
|
+
instance.expandSelectionRange(event, itemId);
|
|
110
87
|
} else if (params.multiSelect) {
|
|
111
88
|
instance.selectItem(event, itemId, true);
|
|
112
89
|
} else {
|
|
@@ -145,10 +122,7 @@ const useTreeViewKeyboardNavigation = ({
|
|
|
145
122
|
// Multi select behavior when pressing Shift + ArrowDown
|
|
146
123
|
// Toggles the selection state of the next item
|
|
147
124
|
if (params.multiSelect && event.shiftKey && canToggleItemSelection(nextItem)) {
|
|
148
|
-
instance.
|
|
149
|
-
end: nextItem,
|
|
150
|
-
current: itemId
|
|
151
|
-
}, true);
|
|
125
|
+
instance.selectItemFromArrowNavigation(event, itemId, nextItem);
|
|
152
126
|
}
|
|
153
127
|
}
|
|
154
128
|
break;
|
|
@@ -165,10 +139,7 @@ const useTreeViewKeyboardNavigation = ({
|
|
|
165
139
|
// Multi select behavior when pressing Shift + ArrowUp
|
|
166
140
|
// Toggles the selection state of the previous item
|
|
167
141
|
if (params.multiSelect && event.shiftKey && canToggleItemSelection(previousItem)) {
|
|
168
|
-
instance.
|
|
169
|
-
end: previousItem,
|
|
170
|
-
current: itemId
|
|
171
|
-
}, true);
|
|
142
|
+
instance.selectItemFromArrowNavigation(event, itemId, previousItem);
|
|
172
143
|
}
|
|
173
144
|
}
|
|
174
145
|
break;
|
|
@@ -211,12 +182,12 @@ const useTreeViewKeyboardNavigation = ({
|
|
|
211
182
|
// Focuses the first item in the tree
|
|
212
183
|
case key === 'Home':
|
|
213
184
|
{
|
|
214
|
-
instance.focusItem(event, (0, _tree.getFirstNavigableItem)(instance));
|
|
215
|
-
|
|
216
185
|
// Multi select behavior when pressing Ctrl + Shift + Home
|
|
217
186
|
// Selects the focused item and all items up to the first item.
|
|
218
187
|
if (canToggleItemSelection(itemId) && params.multiSelect && ctrlPressed && event.shiftKey) {
|
|
219
|
-
instance.
|
|
188
|
+
instance.selectRangeFromStartToItem(event, itemId);
|
|
189
|
+
} else {
|
|
190
|
+
instance.focusItem(event, (0, _tree.getFirstNavigableItem)(instance));
|
|
220
191
|
}
|
|
221
192
|
event.preventDefault();
|
|
222
193
|
break;
|
|
@@ -225,12 +196,12 @@ const useTreeViewKeyboardNavigation = ({
|
|
|
225
196
|
// Focuses the last item in the tree
|
|
226
197
|
case key === 'End':
|
|
227
198
|
{
|
|
228
|
-
instance.focusItem(event, (0, _tree.getLastNavigableItem)(instance));
|
|
229
|
-
|
|
230
199
|
// Multi select behavior when pressing Ctrl + Shirt + End
|
|
231
200
|
// Selects the focused item and all the items down to the last item.
|
|
232
201
|
if (canToggleItemSelection(itemId) && params.multiSelect && ctrlPressed && event.shiftKey) {
|
|
233
|
-
instance.
|
|
202
|
+
instance.selectRangeFromItemToEnd(event, itemId);
|
|
203
|
+
} else {
|
|
204
|
+
instance.focusItem(event, (0, _tree.getLastNavigableItem)(instance));
|
|
234
205
|
}
|
|
235
206
|
event.preventDefault();
|
|
236
207
|
break;
|
|
@@ -248,10 +219,7 @@ const useTreeViewKeyboardNavigation = ({
|
|
|
248
219
|
// Selects all the items
|
|
249
220
|
case key === 'a' && ctrlPressed && params.multiSelect && !params.disableSelection:
|
|
250
221
|
{
|
|
251
|
-
instance.
|
|
252
|
-
start: (0, _tree.getFirstNavigableItem)(instance),
|
|
253
|
-
end: (0, _tree.getLastNavigableItem)(instance)
|
|
254
|
-
});
|
|
222
|
+
instance.selectAllNavigableItems(event);
|
|
255
223
|
event.preventDefault();
|
|
256
224
|
break;
|
|
257
225
|
}
|