@mui/x-tree-view 8.11.0 → 8.11.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/CHANGELOG.md +169 -0
  2. package/RichTreeView/RichTreeView.js +16 -15
  3. package/RichTreeView/RichTreeView.types.d.ts +3 -2
  4. package/SimpleTreeView/SimpleTreeView.js +10 -9
  5. package/SimpleTreeView/SimpleTreeView.types.d.ts +3 -2
  6. package/TreeItem/TreeItem.d.ts +1 -1
  7. package/TreeItemProvider/TreeItemProvider.js +3 -3
  8. package/esm/RichTreeView/RichTreeView.js +16 -15
  9. package/esm/RichTreeView/RichTreeView.types.d.ts +3 -2
  10. package/esm/SimpleTreeView/SimpleTreeView.js +10 -9
  11. package/esm/SimpleTreeView/SimpleTreeView.types.d.ts +3 -2
  12. package/esm/TreeItem/TreeItem.d.ts +1 -1
  13. package/esm/TreeItemProvider/TreeItemProvider.js +3 -3
  14. package/esm/hooks/index.d.ts +2 -1
  15. package/esm/hooks/index.js +2 -1
  16. package/esm/hooks/useApplyPropagationToSelectedItemsOnMount.d.ts +53 -0
  17. package/esm/hooks/useApplyPropagationToSelectedItemsOnMount.js +80 -0
  18. package/esm/hooks/useTreeItemModel.js +3 -3
  19. package/esm/hooks/useTreeItemUtils/useTreeItemUtils.js +24 -25
  20. package/esm/index.js +1 -1
  21. package/esm/internals/TreeViewProvider/TreeViewChildrenItemProvider.js +2 -2
  22. package/esm/internals/TreeViewProvider/TreeViewProvider.types.d.ts +3 -3
  23. package/esm/internals/components/RichTreeViewItems.js +5 -5
  24. package/esm/internals/corePlugins/useTreeViewId/index.d.ts +2 -1
  25. package/esm/internals/corePlugins/useTreeViewId/index.js +2 -1
  26. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.js +10 -13
  27. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.d.ts +8 -34
  28. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.js +9 -9
  29. package/esm/internals/index.d.ts +6 -14
  30. package/esm/internals/index.js +6 -13
  31. package/esm/internals/models/plugin.d.ts +2 -3
  32. package/esm/internals/models/treeView.d.ts +4 -6
  33. package/esm/internals/plugins/useTreeViewExpansion/index.d.ts +2 -1
  34. package/esm/internals/plugins/useTreeViewExpansion/index.js +2 -1
  35. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +26 -30
  36. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +24 -316
  37. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.js +27 -38
  38. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +7 -1
  39. package/esm/internals/plugins/useTreeViewFocus/index.d.ts +2 -1
  40. package/esm/internals/plugins/useTreeViewFocus/index.js +2 -1
  41. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +17 -21
  42. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.d.ts +20 -628
  43. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.js +25 -37
  44. package/esm/internals/plugins/useTreeViewItems/index.d.ts +2 -1
  45. package/esm/internals/plugins/useTreeViewItems/index.js +2 -1
  46. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.js +82 -102
  47. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.d.ts +52 -1142
  48. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.js +58 -98
  49. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.utils.d.ts +1 -1
  50. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.utils.js +1 -1
  51. package/esm/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +32 -42
  52. package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +22 -22
  53. package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +2 -0
  54. package/esm/internals/plugins/useTreeViewLabel/index.d.ts +2 -1
  55. package/esm/internals/plugins/useTreeViewLabel/index.js +2 -1
  56. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.js +4 -4
  57. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +17 -25
  58. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.d.ts +14 -100
  59. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.js +24 -34
  60. package/esm/internals/plugins/useTreeViewLazyLoading/index.d.ts +2 -1
  61. package/esm/internals/plugins/useTreeViewLazyLoading/index.js +1 -1
  62. package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.d.ts +18 -245
  63. package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.js +15 -27
  64. package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.d.ts +20 -6
  65. package/esm/internals/plugins/useTreeViewSelection/index.d.ts +2 -1
  66. package/esm/internals/plugins/useTreeViewSelection/index.js +2 -1
  67. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.js +25 -38
  68. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +30 -34
  69. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.d.ts +38 -517
  70. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.js +46 -71
  71. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +1 -0
  72. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +10 -10
  73. package/esm/internals/useTreeView/useTreeView.d.ts +1 -1
  74. package/esm/internals/useTreeView/useTreeView.js +11 -18
  75. package/esm/internals/useTreeView/useTreeView.types.d.ts +1 -1
  76. package/esm/internals/useTreeView/useTreeViewBuildContext.d.ts +2 -3
  77. package/esm/internals/utils/tree.js +33 -33
  78. package/esm/useTreeItem/useTreeItem.js +14 -14
  79. package/esm/useTreeItem/useTreeItem.types.d.ts +2 -1
  80. package/hooks/index.d.ts +2 -1
  81. package/hooks/index.js +8 -1
  82. package/hooks/useApplyPropagationToSelectedItemsOnMount.d.ts +53 -0
  83. package/hooks/useApplyPropagationToSelectedItemsOnMount.js +87 -0
  84. package/hooks/useTreeItemModel.js +3 -3
  85. package/hooks/useTreeItemUtils/useTreeItemUtils.js +18 -19
  86. package/index.js +1 -1
  87. package/internals/TreeViewProvider/TreeViewChildrenItemProvider.js +1 -1
  88. package/internals/TreeViewProvider/TreeViewProvider.types.d.ts +3 -3
  89. package/internals/components/RichTreeViewItems.js +5 -5
  90. package/internals/corePlugins/useTreeViewId/index.d.ts +2 -1
  91. package/internals/corePlugins/useTreeViewId/index.js +8 -1
  92. package/internals/corePlugins/useTreeViewId/useTreeViewId.js +9 -12
  93. package/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.d.ts +8 -34
  94. package/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.js +10 -10
  95. package/internals/index.d.ts +6 -14
  96. package/internals/index.js +12 -73
  97. package/internals/models/plugin.d.ts +2 -3
  98. package/internals/models/treeView.d.ts +4 -6
  99. package/internals/plugins/useTreeViewExpansion/index.d.ts +2 -1
  100. package/internals/plugins/useTreeViewExpansion/index.js +8 -1
  101. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +24 -28
  102. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +24 -316
  103. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.js +27 -38
  104. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +7 -1
  105. package/internals/plugins/useTreeViewFocus/index.d.ts +2 -1
  106. package/internals/plugins/useTreeViewFocus/index.js +8 -1
  107. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +14 -18
  108. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.d.ts +20 -628
  109. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.js +23 -35
  110. package/internals/plugins/useTreeViewItems/index.d.ts +2 -1
  111. package/internals/plugins/useTreeViewItems/index.js +8 -1
  112. package/internals/plugins/useTreeViewItems/useTreeViewItems.js +81 -101
  113. package/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.d.ts +52 -1142
  114. package/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.js +59 -99
  115. package/internals/plugins/useTreeViewItems/useTreeViewItems.utils.d.ts +1 -1
  116. package/internals/plugins/useTreeViewItems/useTreeViewItems.utils.js +1 -1
  117. package/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +32 -42
  118. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +18 -18
  119. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +2 -0
  120. package/internals/plugins/useTreeViewLabel/index.d.ts +2 -1
  121. package/internals/plugins/useTreeViewLabel/index.js +8 -1
  122. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.js +3 -3
  123. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +16 -24
  124. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.d.ts +14 -100
  125. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.js +24 -34
  126. package/internals/plugins/useTreeViewLazyLoading/index.d.ts +2 -1
  127. package/internals/plugins/useTreeViewLazyLoading/index.js +8 -1
  128. package/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.d.ts +18 -245
  129. package/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.js +16 -28
  130. package/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.d.ts +20 -6
  131. package/internals/plugins/useTreeViewSelection/index.d.ts +2 -1
  132. package/internals/plugins/useTreeViewSelection/index.js +8 -1
  133. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.js +23 -37
  134. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +29 -33
  135. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.d.ts +38 -517
  136. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.js +46 -71
  137. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +1 -0
  138. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +8 -8
  139. package/internals/useTreeView/useTreeView.d.ts +1 -1
  140. package/internals/useTreeView/useTreeView.js +11 -18
  141. package/internals/useTreeView/useTreeView.types.d.ts +1 -1
  142. package/internals/useTreeView/useTreeViewBuildContext.d.ts +2 -3
  143. package/internals/utils/tree.js +31 -31
  144. package/package.json +13 -14
  145. package/useTreeItem/useTreeItem.js +14 -14
  146. package/useTreeItem/useTreeItem.types.d.ts +2 -1
  147. package/esm/internals/hooks/useSelector.d.ts +0 -4
  148. package/esm/internals/hooks/useSelector.js +0 -8
  149. package/esm/internals/utils/TreeViewStore.d.ts +0 -12
  150. package/esm/internals/utils/TreeViewStore.js +0 -22
  151. package/esm/internals/utils/selectors.d.ts +0 -21
  152. package/esm/internals/utils/selectors.js +0 -51
  153. package/internals/hooks/useSelector.d.ts +0 -4
  154. package/internals/hooks/useSelector.js +0 -16
  155. package/internals/utils/TreeViewStore.d.ts +0 -12
  156. package/internals/utils/TreeViewStore.js +0 -29
  157. package/internals/utils/selectors.d.ts +0 -21
  158. package/internals/utils/selectors.js +0 -58
@@ -1,12 +1,11 @@
1
1
  import * as React from 'react';
2
2
  import { EventHandlers } from '@mui/utils/types';
3
- import { TreeViewInstance } from "./treeView.js";
3
+ import { TreeViewInstance, TreeViewStore } from "./treeView.js";
4
4
  import type { MergeSignaturesProperty, OptionalIfEmpty } from "./helpers.js";
5
5
  import { TreeViewEventLookupElement } from "./events.js";
6
6
  import type { TreeViewCorePluginSignatures } from "../corePlugins/index.js";
7
7
  import { TreeViewItemPlugin } from "./itemPlugin.js";
8
8
  import { TreeViewItemId } from "../../models/index.js";
9
- import { TreeViewStore } from "../utils/TreeViewStore.js";
10
9
  export interface TreeViewPluginOptions<TSignature extends TreeViewAnyPluginSignature> {
11
10
  /**
12
11
  * An imperative API available for internal use. Used to access methods from other plugins.
@@ -109,7 +108,7 @@ export type TreeViewUsedInstance<TSignature extends TreeViewAnyPluginSignature>
109
108
  */
110
109
  $$signature: TSignature;
111
110
  };
112
- export type TreeViewUsedStore<TSignature extends TreeViewAnyPluginSignature> = TreeViewStore<[TSignature, ...TSignature['dependencies']]>;
111
+ export type TreeViewUsedStore<TSignature extends TreeViewAnyPluginSignature> = TreeViewStore<[TSignature, ...TSignature['dependencies']], TSignature['optionalDependencies']>;
113
112
  export type TreeViewUsedEvents<TSignature extends TreeViewAnyPluginSignature> = TSignature['events'] & MergeSignaturesProperty<TreeViewRequiredPlugins<TSignature>, 'events'>;
114
113
  export type TreeItemWrapper<TSignatures extends readonly TreeViewAnyPluginSignature[]> = (params: {
115
114
  itemId: TreeViewItemId;
@@ -1,3 +1,4 @@
1
+ import { ReadonlyStore, Store } from '@mui/x-internals/store';
1
2
  import type { TreeViewAnyPluginSignature } from "./plugin.js";
2
3
  import type { MergeSignaturesProperty } from "./helpers.js";
3
4
  import type { TreeViewCorePluginSignatures } from "../corePlugins/index.js";
@@ -18,9 +19,6 @@ export interface TreeViewItemMeta {
18
19
  }
19
20
  export type TreeViewInstance<TSignatures extends readonly TreeViewAnyPluginSignature[], TOptionalSignatures extends readonly TreeViewAnyPluginSignature[] = []> = MergeSignaturesProperty<[...TreeViewCorePluginSignatures, ...TSignatures], 'instance'> & Partial<MergeSignaturesProperty<TOptionalSignatures, 'instance'>>;
20
21
  export type TreeViewPublicAPI<TSignatures extends readonly TreeViewAnyPluginSignature[], TOptionalSignatures extends readonly TreeViewAnyPluginSignature[] = []> = MergeSignaturesProperty<[...TreeViewCorePluginSignatures, ...TSignatures], 'publicAPI'> & Partial<MergeSignaturesProperty<TOptionalSignatures, 'instance'>>;
21
- export type TreeViewStateCacheKey = {
22
- id: number;
23
- };
24
- export type TreeViewState<TSignatures extends readonly TreeViewAnyPluginSignature[], TOptionalSignatures extends readonly TreeViewAnyPluginSignature[] = []> = MergeSignaturesProperty<[...TreeViewCorePluginSignatures, ...TSignatures], 'state'> & Partial<MergeSignaturesProperty<TOptionalSignatures, 'state'>> & {
25
- cacheKey: TreeViewStateCacheKey;
26
- };
22
+ export type TreeViewState<TSignatures extends readonly TreeViewAnyPluginSignature[], TOptionalSignatures extends readonly TreeViewAnyPluginSignature[] = []> = MergeSignaturesProperty<[...TreeViewCorePluginSignatures, ...TSignatures], 'state'> & Partial<MergeSignaturesProperty<TOptionalSignatures, 'state'>>;
23
+ export type TreeViewStore<TSignatures extends readonly TreeViewAnyPluginSignature[], TOptionalSignatures extends readonly TreeViewAnyPluginSignature[] = []> = Store<TreeViewState<TSignatures, TOptionalSignatures>>;
24
+ export type TreeViewReadonlyStore<TSignatures extends readonly TreeViewAnyPluginSignature[], TOptionalSignatures extends readonly TreeViewAnyPluginSignature[] = []> = ReadonlyStore<TreeViewState<TSignatures, TOptionalSignatures>>;
@@ -1,2 +1,3 @@
1
1
  export { useTreeViewExpansion } from "./useTreeViewExpansion.js";
2
- export type { UseTreeViewExpansionSignature, UseTreeViewExpansionParameters, UseTreeViewExpansionParametersWithDefaults } from "./useTreeViewExpansion.types.js";
2
+ export type { UseTreeViewExpansionSignature, UseTreeViewExpansionParameters, UseTreeViewExpansionParametersWithDefaults } from "./useTreeViewExpansion.types.js";
3
+ export { expansionSelectors } from "./useTreeViewExpansion.selectors.js";
@@ -3,10 +3,17 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ Object.defineProperty(exports, "expansionSelectors", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _useTreeViewExpansion2.expansionSelectors;
10
+ }
11
+ });
6
12
  Object.defineProperty(exports, "useTreeViewExpansion", {
7
13
  enumerable: true,
8
14
  get: function () {
9
15
  return _useTreeViewExpansion.useTreeViewExpansion;
10
16
  }
11
17
  });
12
- var _useTreeViewExpansion = require("./useTreeViewExpansion");
18
+ var _useTreeViewExpansion = require("./useTreeViewExpansion");
19
+ var _useTreeViewExpansion2 = require("./useTreeViewExpansion.selectors");
@@ -25,27 +25,21 @@ const useTreeViewExpansion = ({
25
25
  defaultValue: params.defaultExpandedItems
26
26
  });
27
27
  (0, _useEnhancedEffect.default)(() => {
28
- store.update(prevState => {
29
- const newExpansionTrigger = (0, _useTreeViewExpansion2.getExpansionTrigger)({
30
- isItemEditable: params.isItemEditable,
31
- expansionTrigger: params.expansionTrigger
32
- });
33
- if (prevState.expansion.expansionTrigger === newExpansionTrigger) {
34
- return prevState;
35
- }
36
- return (0, _extends2.default)({}, prevState, {
37
- expansion: (0, _extends2.default)({}, prevState.expansion, {
38
- expansionTrigger: newExpansionTrigger
39
- })
40
- });
28
+ const newExpansionTrigger = (0, _useTreeViewExpansion2.getExpansionTrigger)({
29
+ isItemEditable: params.isItemEditable,
30
+ expansionTrigger: params.expansionTrigger
41
31
  });
32
+ if (store.state.expansion.expansionTrigger === newExpansionTrigger) {
33
+ return;
34
+ }
35
+ store.set('expansion', (0, _extends2.default)({}, store.state.expansion, {
36
+ expansionTrigger: newExpansionTrigger
37
+ }));
42
38
  }, [store, params.isItemEditable, params.expansionTrigger]);
43
39
  const setExpandedItems = (event, value) => {
44
40
  if (params.expandedItems === undefined) {
45
- store.update(prevState => (0, _extends2.default)({}, prevState, {
46
- expansion: (0, _extends2.default)({}, prevState.expansion, {
47
- expandedItems: value
48
- })
41
+ store.set('expansion', (0, _extends2.default)({}, store.state.expansion, {
42
+ expandedItems: value
49
43
  }));
50
44
  }
51
45
  params.onExpandedItemsChange?.(event, value);
@@ -58,7 +52,7 @@ const useTreeViewExpansion = ({
58
52
  event,
59
53
  shouldBeExpanded
60
54
  }) => {
61
- const oldExpanded = (0, _useTreeViewExpansion.selectorExpandedItems)(store.value);
55
+ const oldExpanded = _useTreeViewExpansion.expansionSelectors.expandedItemsRaw(store.state);
62
56
  let newExpanded;
63
57
  if (shouldBeExpanded) {
64
58
  newExpanded = [itemId].concat(oldExpanded);
@@ -75,7 +69,7 @@ const useTreeViewExpansion = ({
75
69
  event = null,
76
70
  shouldBeExpanded
77
71
  }) => {
78
- const isExpandedBefore = (0, _useTreeViewExpansion.selectorIsItemExpanded)(store.value, itemId);
72
+ const isExpandedBefore = _useTreeViewExpansion.expansionSelectors.isItemExpanded(store.state, itemId);
79
73
  const cleanShouldBeExpanded = shouldBeExpanded ?? !isExpandedBefore;
80
74
  if (isExpandedBefore === cleanShouldBeExpanded) {
81
75
  return;
@@ -96,14 +90,17 @@ const useTreeViewExpansion = ({
96
90
  shouldBeExpanded: cleanShouldBeExpanded
97
91
  });
98
92
  });
93
+ const isItemExpanded = (0, _useEventCallback.default)(itemId => {
94
+ return _useTreeViewExpansion.expansionSelectors.isItemExpandable(store.state, itemId);
95
+ });
99
96
  const expandAllSiblings = (event, itemId) => {
100
- const itemMeta = (0, _useTreeViewItems.selectorItemMeta)(store.value, itemId);
97
+ const itemMeta = _useTreeViewItems.itemsSelectors.itemMeta(store.state, itemId);
101
98
  if (itemMeta == null) {
102
99
  return;
103
100
  }
104
- const siblings = (0, _useTreeViewItems.selectorItemOrderedChildrenIds)(store.value, itemMeta.parentId);
105
- const diff = siblings.filter(child => (0, _useTreeViewExpansion.selectorIsItemExpandable)(store.value, child) && !(0, _useTreeViewExpansion.selectorIsItemExpanded)(store.value, child));
106
- const newExpanded = (0, _useTreeViewExpansion.selectorExpandedItems)(store.value).concat(diff);
101
+ const siblings = _useTreeViewItems.itemsSelectors.itemOrderedChildrenIds(store.state, itemMeta.parentId);
102
+ const diff = siblings.filter(child => _useTreeViewExpansion.expansionSelectors.isItemExpandable(store.state, child) && !_useTreeViewExpansion.expansionSelectors.isItemExpanded(store.state, child));
103
+ const newExpanded = _useTreeViewExpansion.expansionSelectors.expandedItemsRaw(store.state).concat(diff);
107
104
  if (diff.length > 0) {
108
105
  if (params.onItemExpansionToggle) {
109
106
  diff.forEach(newlyExpandedItemId => {
@@ -120,16 +117,15 @@ const useTreeViewExpansion = ({
120
117
  (0, _useEnhancedEffect.default)(() => {
121
118
  const expandedItems = params.expandedItems;
122
119
  if (expandedItems !== undefined) {
123
- store.update(prevState => (0, _extends2.default)({}, prevState, {
124
- expansion: (0, _extends2.default)({}, prevState.expansion, {
125
- expandedItems
126
- })
120
+ store.set('expansion', (0, _extends2.default)({}, store.state.expansion, {
121
+ expandedItems
127
122
  }));
128
123
  }
129
124
  }, [store, params.expandedItems]);
130
125
  return {
131
126
  publicAPI: {
132
- setItemExpansion
127
+ setItemExpansion,
128
+ isItemExpanded
133
129
  },
134
130
  instance: {
135
131
  setItemExpansion,
@@ -1,318 +1,26 @@
1
- import { TreeViewRootSelector } from "../../utils/selectors.js";
1
+ import { TreeViewState } from "../../models/index.js";
2
2
  import { UseTreeViewExpansionSignature } from "./useTreeViewExpansion.types.js";
3
- /**
4
- * Get the expanded items.
5
- * @param {TreeViewState<[UseTreeViewExpansionSignature]>} state The state of the tree view.
6
- * @returns {TreeViewItemId[]} The expanded items.
7
- */
8
- export declare const selectorExpandedItems: ((state: import("../../corePlugins/useTreeViewId/useTreeViewId.types.js").UseTreeViewIdState & import("./useTreeViewExpansion.types.js").UseTreeViewExpansionState & Partial<{}> & {
9
- cacheKey: import("../../models/index.js").TreeViewStateCacheKey;
10
- }) => string[]) & {
11
- clearCache: () => void;
12
- resultsCount: () => number;
13
- resetResultsCount: () => void;
14
- } & {
15
- resultFunc: (resultFuncArgs_0: {
16
- expandedItems: string[];
17
- expansionTrigger: "content" | "iconContainer";
18
- }) => string[];
19
- memoizedResultFunc: ((resultFuncArgs_0: {
20
- expandedItems: string[];
21
- expansionTrigger: "content" | "iconContainer";
22
- }) => string[]) & {
23
- clearCache: () => void;
24
- resultsCount: () => number;
25
- resetResultsCount: () => void;
26
- };
27
- lastResult: () => string[];
28
- dependencies: [TreeViewRootSelector<UseTreeViewExpansionSignature>];
29
- recomputations: () => number;
30
- resetRecomputations: () => void;
31
- dependencyRecomputations: () => number;
32
- resetDependencyRecomputations: () => void;
33
- } & {
34
- memoize: typeof import("reselect").weakMapMemoize;
35
- argsMemoize: typeof import("reselect").weakMapMemoize;
36
- };
37
- /**
38
- * Get the expanded items as a Map.
39
- * @param {TreeViewState<[UseTreeViewExpansionSignature]>} state The state of the tree view.
40
- * @returns {TreeViewExpansionValue} The expanded items as a Map.
41
- */
42
- export declare const selectorExpandedItemsMap: ((state: import("../../corePlugins/useTreeViewId/useTreeViewId.types.js").UseTreeViewIdState & import("./useTreeViewExpansion.types.js").UseTreeViewExpansionState & Partial<{}> & {
43
- cacheKey: import("../../models/index.js").TreeViewStateCacheKey;
44
- }) => Map<string, true>) & {
45
- clearCache: () => void;
46
- resultsCount: () => number;
47
- resetResultsCount: () => void;
48
- } & {
49
- resultFunc: (resultFuncArgs_0: string[]) => Map<string, true>;
50
- memoizedResultFunc: ((resultFuncArgs_0: string[]) => Map<string, true>) & {
51
- clearCache: () => void;
52
- resultsCount: () => number;
53
- resetResultsCount: () => void;
54
- };
55
- lastResult: () => Map<string, true>;
56
- dependencies: [((state: import("../../corePlugins/useTreeViewId/useTreeViewId.types.js").UseTreeViewIdState & import("./useTreeViewExpansion.types.js").UseTreeViewExpansionState & Partial<{}> & {
57
- cacheKey: import("../../models/index.js").TreeViewStateCacheKey;
58
- }) => string[]) & {
59
- clearCache: () => void;
60
- resultsCount: () => number;
61
- resetResultsCount: () => void;
62
- } & {
63
- resultFunc: (resultFuncArgs_0: {
64
- expandedItems: string[];
65
- expansionTrigger: "content" | "iconContainer";
66
- }) => string[];
67
- memoizedResultFunc: ((resultFuncArgs_0: {
68
- expandedItems: string[];
69
- expansionTrigger: "content" | "iconContainer";
70
- }) => string[]) & {
71
- clearCache: () => void;
72
- resultsCount: () => number;
73
- resetResultsCount: () => void;
74
- };
75
- lastResult: () => string[];
76
- dependencies: [TreeViewRootSelector<UseTreeViewExpansionSignature>];
77
- recomputations: () => number;
78
- resetRecomputations: () => void;
79
- dependencyRecomputations: () => number;
80
- resetDependencyRecomputations: () => void;
81
- } & {
82
- memoize: typeof import("reselect").weakMapMemoize;
83
- argsMemoize: typeof import("reselect").weakMapMemoize;
84
- }];
85
- recomputations: () => number;
86
- resetRecomputations: () => void;
87
- dependencyRecomputations: () => number;
88
- resetDependencyRecomputations: () => void;
89
- } & {
90
- memoize: typeof import("reselect").weakMapMemoize;
91
- argsMemoize: typeof import("reselect").weakMapMemoize;
92
- };
93
- /**
94
- * Check if an item is expanded.
95
- * @param {TreeViewState<[UseTreeViewExpansionSignature]>} state The state of the tree view.
96
- * @returns {boolean} `true` if the item is expanded, `false` otherwise.
97
- */
98
- export declare const selectorIsItemExpanded: ((state: any, itemId: string) => boolean) & {
99
- clearCache: () => void;
100
- resultsCount: () => number;
101
- resetResultsCount: () => void;
102
- } & {
103
- resultFunc: (resultFuncArgs_0: Map<string, true>, resultFuncArgs_1: string) => boolean;
104
- memoizedResultFunc: ((resultFuncArgs_0: Map<string, true>, resultFuncArgs_1: string) => boolean) & {
105
- clearCache: () => void;
106
- resultsCount: () => number;
107
- resetResultsCount: () => void;
108
- };
109
- lastResult: () => boolean;
110
- dependencies: [((state: import("../../corePlugins/useTreeViewId/useTreeViewId.types.js").UseTreeViewIdState & import("./useTreeViewExpansion.types.js").UseTreeViewExpansionState & Partial<{}> & {
111
- cacheKey: import("../../models/index.js").TreeViewStateCacheKey;
112
- }) => Map<string, true>) & {
113
- clearCache: () => void;
114
- resultsCount: () => number;
115
- resetResultsCount: () => void;
116
- } & {
117
- resultFunc: (resultFuncArgs_0: string[]) => Map<string, true>;
118
- memoizedResultFunc: ((resultFuncArgs_0: string[]) => Map<string, true>) & {
119
- clearCache: () => void;
120
- resultsCount: () => number;
121
- resetResultsCount: () => void;
122
- };
123
- lastResult: () => Map<string, true>;
124
- dependencies: [((state: import("../../corePlugins/useTreeViewId/useTreeViewId.types.js").UseTreeViewIdState & import("./useTreeViewExpansion.types.js").UseTreeViewExpansionState & Partial<{}> & {
125
- cacheKey: import("../../models/index.js").TreeViewStateCacheKey;
126
- }) => string[]) & {
127
- clearCache: () => void;
128
- resultsCount: () => number;
129
- resetResultsCount: () => void;
130
- } & {
131
- resultFunc: (resultFuncArgs_0: {
132
- expandedItems: string[];
133
- expansionTrigger: "content" | "iconContainer";
134
- }) => string[];
135
- memoizedResultFunc: ((resultFuncArgs_0: {
136
- expandedItems: string[];
137
- expansionTrigger: "content" | "iconContainer";
138
- }) => string[]) & {
139
- clearCache: () => void;
140
- resultsCount: () => number;
141
- resetResultsCount: () => void;
142
- };
143
- lastResult: () => string[];
144
- dependencies: [TreeViewRootSelector<UseTreeViewExpansionSignature>];
145
- recomputations: () => number;
146
- resetRecomputations: () => void;
147
- dependencyRecomputations: () => number;
148
- resetDependencyRecomputations: () => void;
149
- } & {
150
- memoize: typeof import("reselect").weakMapMemoize;
151
- argsMemoize: typeof import("reselect").weakMapMemoize;
152
- }];
153
- recomputations: () => number;
154
- resetRecomputations: () => void;
155
- dependencyRecomputations: () => number;
156
- resetDependencyRecomputations: () => void;
157
- } & {
158
- memoize: typeof import("reselect").weakMapMemoize;
159
- argsMemoize: typeof import("reselect").weakMapMemoize;
160
- }, (_: any, itemId: string) => string];
161
- recomputations: () => number;
162
- resetRecomputations: () => void;
163
- dependencyRecomputations: () => number;
164
- resetDependencyRecomputations: () => void;
165
- } & {
166
- memoize: typeof import("reselect").weakMapMemoize;
167
- argsMemoize: typeof import("reselect").weakMapMemoize;
168
- };
169
- /**
170
- * Check if an item is expandable.
171
- * @param {TreeViewState<[UseTreeViewItemsSignature]>} state The state of the tree view.
172
- * @returns {boolean} `true` if the item is expandable, `false` otherwise.
173
- */
174
- export declare const selectorIsItemExpandable: ((state: any, itemId: string | null) => boolean) & {
175
- clearCache: () => void;
176
- resultsCount: () => number;
177
- resetResultsCount: () => void;
178
- } & {
179
- resultFunc: (resultFuncArgs_0: import("../../index.js").TreeViewItemMeta | null) => boolean;
180
- memoizedResultFunc: ((resultFuncArgs_0: import("../../index.js").TreeViewItemMeta | null) => boolean) & {
181
- clearCache: () => void;
182
- resultsCount: () => number;
183
- resetResultsCount: () => void;
184
- };
185
- lastResult: () => boolean;
186
- dependencies: [((state: any, itemId: string | null) => import("../../index.js").TreeViewItemMeta | null) & {
187
- clearCache: () => void;
188
- resultsCount: () => number;
189
- resetResultsCount: () => void;
190
- } & {
191
- resultFunc: (resultFuncArgs_0: {
192
- [itemId: string]: import("../../index.js").TreeViewItemMeta;
193
- }, resultFuncArgs_1: string | null) => import("../../index.js").TreeViewItemMeta | null;
194
- memoizedResultFunc: ((resultFuncArgs_0: {
195
- [itemId: string]: import("../../index.js").TreeViewItemMeta;
196
- }, resultFuncArgs_1: string | null) => import("../../index.js").TreeViewItemMeta | null) & {
197
- clearCache: () => void;
198
- resultsCount: () => number;
199
- resetResultsCount: () => void;
200
- };
201
- lastResult: () => import("../../index.js").TreeViewItemMeta | null;
202
- dependencies: [((state: import("../../corePlugins/useTreeViewId/useTreeViewId.types.js").UseTreeViewIdState & import("../useTreeViewItems/index.js").UseTreeViewItemsState<import("../../../index.js").TreeViewDefaultItemModelProperties> & Partial<{}> & {
203
- cacheKey: import("../../models/index.js").TreeViewStateCacheKey;
204
- }) => {
205
- [itemId: string]: import("../../index.js").TreeViewItemMeta;
206
- }) & {
207
- clearCache: () => void;
208
- resultsCount: () => number;
209
- resetResultsCount: () => void;
210
- } & {
211
- resultFunc: (resultFuncArgs_0: {
212
- disabledItemsFocusable: boolean;
213
- itemModelLookup: {
214
- [itemId: string]: import("../../../index.js").TreeViewBaseItem<import("../../../index.js").TreeViewDefaultItemModelProperties>;
215
- };
216
- itemMetaLookup: {
217
- [itemId: string]: import("../../index.js").TreeViewItemMeta;
218
- };
219
- itemOrderedChildrenIdsLookup: {
220
- [parentItemId: string]: string[];
221
- };
222
- itemChildrenIndexesLookup: {
223
- [parentItemId: string]: {
224
- [itemId: string]: number;
225
- };
226
- };
227
- loading: boolean;
228
- error: Error | null;
229
- }) => {
230
- [itemId: string]: import("../../index.js").TreeViewItemMeta;
231
- };
232
- memoizedResultFunc: ((resultFuncArgs_0: {
233
- disabledItemsFocusable: boolean;
234
- itemModelLookup: {
235
- [itemId: string]: import("../../../index.js").TreeViewBaseItem<import("../../../index.js").TreeViewDefaultItemModelProperties>;
236
- };
237
- itemMetaLookup: {
238
- [itemId: string]: import("../../index.js").TreeViewItemMeta;
239
- };
240
- itemOrderedChildrenIdsLookup: {
241
- [parentItemId: string]: string[];
242
- };
243
- itemChildrenIndexesLookup: {
244
- [parentItemId: string]: {
245
- [itemId: string]: number;
246
- };
247
- };
248
- loading: boolean;
249
- error: Error | null;
250
- }) => {
251
- [itemId: string]: import("../../index.js").TreeViewItemMeta;
252
- }) & {
253
- clearCache: () => void;
254
- resultsCount: () => number;
255
- resetResultsCount: () => void;
256
- };
257
- lastResult: () => {
258
- [itemId: string]: import("../../index.js").TreeViewItemMeta;
259
- };
260
- dependencies: [TreeViewRootSelector<import("../useTreeViewItems/index.js").UseTreeViewItemsSignature>];
261
- recomputations: () => number;
262
- resetRecomputations: () => void;
263
- dependencyRecomputations: () => number;
264
- resetDependencyRecomputations: () => void;
265
- } & {
266
- memoize: typeof import("reselect").weakMapMemoize;
267
- argsMemoize: typeof import("reselect").weakMapMemoize;
268
- }, (_: any, itemId: string | null) => string | null];
269
- recomputations: () => number;
270
- resetRecomputations: () => void;
271
- dependencyRecomputations: () => number;
272
- resetDependencyRecomputations: () => void;
273
- } & {
274
- memoize: typeof import("reselect").weakMapMemoize;
275
- argsMemoize: typeof import("reselect").weakMapMemoize;
276
- }];
277
- recomputations: () => number;
278
- resetRecomputations: () => void;
279
- dependencyRecomputations: () => number;
280
- resetDependencyRecomputations: () => void;
281
- } & {
282
- memoize: typeof import("reselect").weakMapMemoize;
283
- argsMemoize: typeof import("reselect").weakMapMemoize;
284
- };
285
- /**
286
- * Get the slot that triggers the item's expansion when clicked.
287
- * @param {TreeViewState<[UseTreeViewExpansionSignature]>} state The state of the tree view.
288
- * @returns {'content' | 'iconContainer'} The slot that triggers the item's expansion when clicked. Is `null` if the item is not expandable.
289
- */
290
- export declare const selectorItemExpansionTrigger: ((state: import("../../corePlugins/useTreeViewId/useTreeViewId.types.js").UseTreeViewIdState & import("./useTreeViewExpansion.types.js").UseTreeViewExpansionState & Partial<{}> & {
291
- cacheKey: import("../../models/index.js").TreeViewStateCacheKey;
292
- }) => "content" | "iconContainer") & {
293
- clearCache: () => void;
294
- resultsCount: () => number;
295
- resetResultsCount: () => void;
296
- } & {
297
- resultFunc: (resultFuncArgs_0: {
298
- expandedItems: string[];
299
- expansionTrigger: "content" | "iconContainer";
300
- }) => "content" | "iconContainer";
301
- memoizedResultFunc: ((resultFuncArgs_0: {
302
- expandedItems: string[];
303
- expansionTrigger: "content" | "iconContainer";
304
- }) => "content" | "iconContainer") & {
305
- clearCache: () => void;
306
- resultsCount: () => number;
307
- resetResultsCount: () => void;
308
- };
309
- lastResult: () => "content" | "iconContainer";
310
- dependencies: [TreeViewRootSelector<UseTreeViewExpansionSignature>];
311
- recomputations: () => number;
312
- resetRecomputations: () => void;
313
- dependencyRecomputations: () => number;
314
- resetDependencyRecomputations: () => void;
315
- } & {
316
- memoize: typeof import("reselect").weakMapMemoize;
317
- argsMemoize: typeof import("reselect").weakMapMemoize;
3
+ export declare const expansionSelectors: {
4
+ /**
5
+ * Gets the expanded items as provided to the component.
6
+ */
7
+ expandedItemsRaw: (state: TreeViewState<[UseTreeViewExpansionSignature]>) => string[];
8
+ /**
9
+ * Get the expanded items as a Map.
10
+ * @param {TreeViewState<[UseTreeViewExpansionSignature]>} state The state of the tree view.
11
+ * @returns {TreeViewExpansionValue} The expanded items as a Map.
12
+ */
13
+ expandedItemsMap: (args_0: import("../../corePlugins/useTreeViewId/useTreeViewId.types.js").UseTreeViewIdState & import("./useTreeViewExpansion.types.js").UseTreeViewExpansionState & Partial<{}>) => Map<string, true>;
14
+ /**
15
+ * Gets the slot that triggers the item's expansion when clicked.
16
+ */
17
+ triggerSlot: (state: TreeViewState<[UseTreeViewExpansionSignature]>) => "content" | "iconContainer";
18
+ /**
19
+ * Checks whether an item is expanded.
20
+ */
21
+ isItemExpanded: (args_0: import("../../corePlugins/useTreeViewId/useTreeViewId.types.js").UseTreeViewIdState & import("./useTreeViewExpansion.types.js").UseTreeViewExpansionState & Partial<{}>, itemId: string) => boolean;
22
+ /**
23
+ * Checks whether an item is expandable.
24
+ */
25
+ isItemExpandable: (args_0: import("../../corePlugins/useTreeViewId/useTreeViewId.types.js").UseTreeViewIdState & import("../useTreeViewItems/index.js").UseTreeViewItemsState<import("../../../index.js").TreeViewDefaultItemModelProperties> & Partial<{}>, _itemId: string) => boolean;
318
26
  };
@@ -3,48 +3,37 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.selectorItemExpansionTrigger = exports.selectorIsItemExpanded = exports.selectorIsItemExpandable = exports.selectorExpandedItemsMap = exports.selectorExpandedItems = void 0;
7
- var _selectors = require("../../utils/selectors");
6
+ exports.expansionSelectors = void 0;
7
+ var _store = require("@mui/x-internals/store");
8
8
  var _useTreeViewItems = require("../useTreeViewItems/useTreeViewItems.selectors");
9
- const selectorExpansion = state => state.expansion;
10
-
11
- /**
12
- * Get the expanded items.
13
- * @param {TreeViewState<[UseTreeViewExpansionSignature]>} state The state of the tree view.
14
- * @returns {TreeViewItemId[]} The expanded items.
15
- */
16
- const selectorExpandedItems = exports.selectorExpandedItems = (0, _selectors.createSelector)([selectorExpansion], expansionState => expansionState.expandedItems);
17
-
18
- /**
19
- * Get the expanded items as a Map.
20
- * @param {TreeViewState<[UseTreeViewExpansionSignature]>} state The state of the tree view.
21
- * @returns {TreeViewExpansionValue} The expanded items as a Map.
22
- */
23
- const selectorExpandedItemsMap = exports.selectorExpandedItemsMap = (0, _selectors.createSelector)([selectorExpandedItems], expandedItems => {
9
+ const expandedItemMapSelector = (0, _store.createSelectorMemoized)(state => state.expansion.expandedItems, expandedItems => {
24
10
  const expandedItemsMap = new Map();
25
11
  expandedItems.forEach(id => {
26
12
  expandedItemsMap.set(id, true);
27
13
  });
28
14
  return expandedItemsMap;
29
15
  });
30
-
31
- /**
32
- * Check if an item is expanded.
33
- * @param {TreeViewState<[UseTreeViewExpansionSignature]>} state The state of the tree view.
34
- * @returns {boolean} `true` if the item is expanded, `false` otherwise.
35
- */
36
- const selectorIsItemExpanded = exports.selectorIsItemExpanded = (0, _selectors.createSelector)([selectorExpandedItemsMap, (_, itemId) => itemId], (expandedItemsMap, itemId) => expandedItemsMap.has(itemId));
37
-
38
- /**
39
- * Check if an item is expandable.
40
- * @param {TreeViewState<[UseTreeViewItemsSignature]>} state The state of the tree view.
41
- * @returns {boolean} `true` if the item is expandable, `false` otherwise.
42
- */
43
- const selectorIsItemExpandable = exports.selectorIsItemExpandable = (0, _selectors.createSelector)([_useTreeViewItems.selectorItemMeta], itemMeta => itemMeta?.expandable ?? false);
44
-
45
- /**
46
- * Get the slot that triggers the item's expansion when clicked.
47
- * @param {TreeViewState<[UseTreeViewExpansionSignature]>} state The state of the tree view.
48
- * @returns {'content' | 'iconContainer'} The slot that triggers the item's expansion when clicked. Is `null` if the item is not expandable.
49
- */
50
- const selectorItemExpansionTrigger = exports.selectorItemExpansionTrigger = (0, _selectors.createSelector)([selectorExpansion], expansionState => expansionState.expansionTrigger);
16
+ const expansionSelectors = exports.expansionSelectors = {
17
+ /**
18
+ * Gets the expanded items as provided to the component.
19
+ */
20
+ expandedItemsRaw: (0, _store.createSelector)(state => state.expansion.expandedItems),
21
+ /**
22
+ * Get the expanded items as a Map.
23
+ * @param {TreeViewState<[UseTreeViewExpansionSignature]>} state The state of the tree view.
24
+ * @returns {TreeViewExpansionValue} The expanded items as a Map.
25
+ */
26
+ expandedItemsMap: expandedItemMapSelector,
27
+ /**
28
+ * Gets the slot that triggers the item's expansion when clicked.
29
+ */
30
+ triggerSlot: (0, _store.createSelector)(state => state.expansion.expansionTrigger),
31
+ /**
32
+ * Checks whether an item is expanded.
33
+ */
34
+ isItemExpanded: (0, _store.createSelector)(expandedItemMapSelector, (expandedItemsMap, itemId) => expandedItemsMap.has(itemId)),
35
+ /**
36
+ * Checks whether an item is expandable.
37
+ */
38
+ isItemExpandable: (0, _store.createSelector)(_useTreeViewItems.itemsSelectors.itemMeta, (itemMeta, _itemId) => itemMeta?.expandable ?? false)
39
+ };
@@ -17,8 +17,14 @@ export interface UseTreeViewExpansionPublicAPI {
17
17
  event?: React.SyntheticEvent;
18
18
  shouldBeExpanded?: boolean;
19
19
  }) => void;
20
+ /**
21
+ * Check if an item is expanded.
22
+ * @param {TreeViewItemId} itemId The id of the item to check.
23
+ * @returns {boolean} `true` if the item is expanded, `false` otherwise.
24
+ */
25
+ isItemExpanded: (itemId: TreeViewItemId) => boolean;
20
26
  }
21
- export interface UseTreeViewExpansionInstance extends UseTreeViewExpansionPublicAPI {
27
+ export interface UseTreeViewExpansionInstance extends Omit<UseTreeViewExpansionPublicAPI, 'isItemExpanded'> {
22
28
  /**
23
29
  * Expand all the siblings (i.e.: the items that have the same parent) of a given item.
24
30
  * @param {React.SyntheticEvent} event The DOM event that triggered the change.
@@ -1,2 +1,3 @@
1
1
  export { useTreeViewFocus } from "./useTreeViewFocus.js";
2
- export type { UseTreeViewFocusSignature, UseTreeViewFocusParameters, UseTreeViewFocusParametersWithDefaults } from "./useTreeViewFocus.types.js";
2
+ export type { UseTreeViewFocusSignature, UseTreeViewFocusParameters, UseTreeViewFocusParametersWithDefaults } from "./useTreeViewFocus.types.js";
3
+ export { focusSelectors } from "./useTreeViewFocus.selectors.js";
@@ -3,10 +3,17 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ Object.defineProperty(exports, "focusSelectors", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _useTreeViewFocus2.focusSelectors;
10
+ }
11
+ });
6
12
  Object.defineProperty(exports, "useTreeViewFocus", {
7
13
  enumerable: true,
8
14
  get: function () {
9
15
  return _useTreeViewFocus.useTreeViewFocus;
10
16
  }
11
17
  });
12
- var _useTreeViewFocus = require("./useTreeViewFocus");
18
+ var _useTreeViewFocus = require("./useTreeViewFocus");
19
+ var _useTreeViewFocus2 = require("./useTreeViewFocus.selectors");