@mui/x-tree-view 9.6.0 → 9.8.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.
Files changed (150) hide show
  1. package/CHANGELOG.md +241 -2
  2. package/RichTreeView/RichTreeView.d.mts +1 -1
  3. package/RichTreeView/RichTreeView.d.ts +1 -1
  4. package/RichTreeView/RichTreeView.types.d.mts +10 -10
  5. package/RichTreeView/RichTreeView.types.d.ts +10 -10
  6. package/RichTreeView/richTreeViewClasses.d.mts +1 -1
  7. package/RichTreeView/richTreeViewClasses.d.ts +1 -1
  8. package/RichTreeView/useExtractRichTreeViewParameters.d.mts +4 -4
  9. package/RichTreeView/useExtractRichTreeViewParameters.d.ts +4 -4
  10. package/SimpleTreeView/SimpleTreeView.d.mts +1 -1
  11. package/SimpleTreeView/SimpleTreeView.d.ts +1 -1
  12. package/SimpleTreeView/SimpleTreeView.types.d.mts +9 -9
  13. package/SimpleTreeView/SimpleTreeView.types.d.ts +9 -9
  14. package/SimpleTreeView/simpleTreeViewClasses.d.mts +1 -1
  15. package/SimpleTreeView/simpleTreeViewClasses.d.ts +1 -1
  16. package/SimpleTreeView/useExtractSimpleTreeViewParameters.d.mts +3 -3
  17. package/SimpleTreeView/useExtractSimpleTreeViewParameters.d.ts +3 -3
  18. package/TreeItem/TreeItem.d.mts +3 -3
  19. package/TreeItem/TreeItem.d.ts +3 -3
  20. package/TreeItem/TreeItem.types.d.mts +10 -10
  21. package/TreeItem/TreeItem.types.d.ts +10 -10
  22. package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.d.mts +1 -1
  23. package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.d.ts +1 -1
  24. package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.d.mts +2 -2
  25. package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.d.ts +2 -2
  26. package/TreeItemIcon/TreeItemIcon.d.mts +1 -1
  27. package/TreeItemIcon/TreeItemIcon.d.ts +1 -1
  28. package/TreeItemIcon/TreeItemIcon.types.d.mts +3 -3
  29. package/TreeItemIcon/TreeItemIcon.types.d.ts +3 -3
  30. package/TreeItemLabelInput/TreeItemLabelInput.types.d.mts +2 -2
  31. package/TreeItemLabelInput/TreeItemLabelInput.types.d.ts +2 -2
  32. package/TreeItemProvider/TreeItemProvider.d.mts +1 -1
  33. package/TreeItemProvider/TreeItemProvider.d.ts +1 -1
  34. package/TreeItemProvider/TreeItemProvider.types.d.mts +2 -2
  35. package/TreeItemProvider/TreeItemProvider.types.d.ts +2 -2
  36. package/hooks/useApplyPropagationToSelectedItemsOnMount.d.mts +1 -1
  37. package/hooks/useApplyPropagationToSelectedItemsOnMount.d.ts +1 -1
  38. package/hooks/useRichTreeViewApiRef.d.mts +3 -3
  39. package/hooks/useRichTreeViewApiRef.d.ts +3 -3
  40. package/hooks/useSimpleTreeViewApiRef.d.mts +2 -2
  41. package/hooks/useSimpleTreeViewApiRef.d.ts +2 -2
  42. package/hooks/useTreeItemModel.d.mts +1 -1
  43. package/hooks/useTreeItemModel.d.ts +1 -1
  44. package/hooks/useTreeItemUtils/useTreeItemUtils.d.mts +3 -3
  45. package/hooks/useTreeItemUtils/useTreeItemUtils.d.ts +3 -3
  46. package/index.js +1 -1
  47. package/index.mjs +1 -1
  48. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.d.mts +15 -5
  49. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.d.ts +15 -5
  50. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.js +32 -8
  51. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.mjs +32 -8
  52. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.types.d.mts +2 -2
  53. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.types.d.ts +2 -2
  54. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.utils.d.mts +2 -2
  55. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.utils.d.ts +2 -2
  56. package/internals/MinimalTreeViewStore/TreeViewItemPluginManager.d.mts +1 -1
  57. package/internals/MinimalTreeViewStore/TreeViewItemPluginManager.d.ts +1 -1
  58. package/internals/RichTreeViewStore/RichTreeViewStore.d.mts +2 -2
  59. package/internals/RichTreeViewStore/RichTreeViewStore.d.ts +2 -2
  60. package/internals/RichTreeViewStore/RichTreeViewStore.types.d.mts +3 -3
  61. package/internals/RichTreeViewStore/RichTreeViewStore.types.d.ts +3 -3
  62. package/internals/RichTreeViewStore/RichTreeViewStore.utils.d.mts +2 -2
  63. package/internals/RichTreeViewStore/RichTreeViewStore.utils.d.ts +2 -2
  64. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.d.mts +1 -1
  65. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.d.ts +1 -1
  66. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.types.d.mts +1 -1
  67. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.types.d.ts +1 -1
  68. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.utils.d.mts +2 -2
  69. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.utils.d.ts +2 -2
  70. package/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.d.mts +2 -2
  71. package/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.d.ts +2 -2
  72. package/internals/TreeViewProvider/TreeViewContext.d.mts +2 -2
  73. package/internals/TreeViewProvider/TreeViewContext.d.ts +2 -2
  74. package/internals/TreeViewProvider/TreeViewProvider.d.mts +2 -2
  75. package/internals/TreeViewProvider/TreeViewProvider.d.ts +2 -2
  76. package/internals/TreeViewProvider/TreeViewProvider.types.d.mts +6 -5
  77. package/internals/TreeViewProvider/TreeViewProvider.types.d.ts +6 -5
  78. package/internals/TreeViewProvider/TreeViewStyleContext.d.mts +1 -1
  79. package/internals/TreeViewProvider/TreeViewStyleContext.d.ts +1 -1
  80. package/internals/TreeViewProvider/useTreeViewBuildContext.d.mts +2 -2
  81. package/internals/TreeViewProvider/useTreeViewBuildContext.d.ts +2 -2
  82. package/internals/components/RichTreeViewItems.d.mts +4 -3
  83. package/internals/components/RichTreeViewItems.d.ts +4 -3
  84. package/internals/hooks/useTreeViewRootProps.d.mts +5 -5
  85. package/internals/hooks/useTreeViewRootProps.d.ts +5 -5
  86. package/internals/hooks/useTreeViewStore.d.mts +1 -1
  87. package/internals/hooks/useTreeViewStore.d.ts +1 -1
  88. package/internals/hooks/useTreeViewStore.js +7 -4
  89. package/internals/hooks/useTreeViewStore.mjs +7 -4
  90. package/internals/models/events.d.mts +2 -2
  91. package/internals/models/events.d.ts +2 -2
  92. package/internals/models/itemPlugin.d.mts +5 -5
  93. package/internals/models/itemPlugin.d.ts +5 -5
  94. package/internals/models/treeView.d.mts +1 -1
  95. package/internals/models/treeView.d.ts +1 -1
  96. package/internals/plugins/expansion/TreeViewExpansionPlugin.d.mts +1 -1
  97. package/internals/plugins/expansion/TreeViewExpansionPlugin.d.ts +1 -1
  98. package/internals/plugins/expansion/selectors.d.mts +1 -1
  99. package/internals/plugins/expansion/selectors.d.ts +1 -1
  100. package/internals/plugins/expansion/utils.d.mts +1 -1
  101. package/internals/plugins/expansion/utils.d.ts +1 -1
  102. package/internals/plugins/focus/TreeViewFocusPlugin.d.mts +1 -1
  103. package/internals/plugins/focus/TreeViewFocusPlugin.d.ts +1 -1
  104. package/internals/plugins/focus/TreeViewFocusPlugin.js +2 -2
  105. package/internals/plugins/focus/TreeViewFocusPlugin.mjs +2 -2
  106. package/internals/plugins/focus/selectors.d.mts +1 -1
  107. package/internals/plugins/focus/selectors.d.ts +1 -1
  108. package/internals/plugins/id/selectors.d.mts +1 -1
  109. package/internals/plugins/id/selectors.d.ts +1 -1
  110. package/internals/plugins/items/TreeViewItemsPlugin.d.mts +2 -2
  111. package/internals/plugins/items/TreeViewItemsPlugin.d.ts +2 -2
  112. package/internals/plugins/items/selectors.d.mts +3 -3
  113. package/internals/plugins/items/selectors.d.ts +3 -3
  114. package/internals/plugins/items/utils.d.mts +2 -2
  115. package/internals/plugins/items/utils.d.ts +2 -2
  116. package/internals/plugins/jsxItems/TreeViewJSXItemsPlugin.d.mts +2 -2
  117. package/internals/plugins/jsxItems/TreeViewJSXItemsPlugin.d.ts +2 -2
  118. package/internals/plugins/jsxItems/TreeViewJSXItemsPlugin.js +2 -1
  119. package/internals/plugins/jsxItems/TreeViewJSXItemsPlugin.mjs +2 -1
  120. package/internals/plugins/jsxItems/itemPlugin.d.mts +2 -2
  121. package/internals/plugins/jsxItems/itemPlugin.d.ts +2 -2
  122. package/internals/plugins/keyboardNavigation/TreeViewKeyboardNavigationPlugin.d.mts +1 -1
  123. package/internals/plugins/keyboardNavigation/TreeViewKeyboardNavigationPlugin.d.ts +1 -1
  124. package/internals/plugins/labelEditing/TreeViewLabelEditingPlugin.d.mts +2 -2
  125. package/internals/plugins/labelEditing/TreeViewLabelEditingPlugin.d.ts +2 -2
  126. package/internals/plugins/labelEditing/itemPlugin.d.mts +2 -2
  127. package/internals/plugins/labelEditing/itemPlugin.d.ts +2 -2
  128. package/internals/plugins/labelEditing/selectors.d.mts +1 -1
  129. package/internals/plugins/labelEditing/selectors.d.ts +1 -1
  130. package/internals/plugins/lazyLoading/selectors.d.mts +1 -1
  131. package/internals/plugins/lazyLoading/selectors.d.ts +1 -1
  132. package/internals/plugins/lazyLoading/types.d.mts +1 -1
  133. package/internals/plugins/lazyLoading/types.d.ts +1 -1
  134. package/internals/plugins/selection/itemPlugin.d.mts +3 -3
  135. package/internals/plugins/selection/itemPlugin.d.ts +3 -3
  136. package/internals/plugins/selection/selectors.d.mts +1 -1
  137. package/internals/plugins/selection/selectors.d.ts +1 -1
  138. package/internals/utils/tree.d.mts +1 -1
  139. package/internals/utils/tree.d.ts +1 -1
  140. package/package.json +4 -4
  141. package/themeAugmentation/components.d.mts +1 -1
  142. package/themeAugmentation/components.d.ts +1 -1
  143. package/themeAugmentation/overrides.d.mts +3 -3
  144. package/themeAugmentation/overrides.d.ts +3 -3
  145. package/themeAugmentation/props.d.mts +3 -3
  146. package/themeAugmentation/props.d.ts +3 -3
  147. package/useTreeItem/useTreeItem.d.mts +4 -4
  148. package/useTreeItem/useTreeItem.d.ts +4 -4
  149. package/useTreeItem/useTreeItem.types.d.mts +3 -3
  150. package/useTreeItem/useTreeItem.types.d.ts +3 -3
@@ -1,5 +1,5 @@
1
- import * as React from 'react';
2
- import { TreeViewCancellableEventHandler } from "../models/index.mjs";
1
+ import type * as React from 'react';
2
+ import type { TreeViewCancellableEventHandler } from "../models/index.mjs";
3
3
  export interface TreeItemLabelInputProps {
4
4
  value?: string;
5
5
  /**
@@ -1,5 +1,5 @@
1
- import * as React from 'react';
2
- import { TreeViewCancellableEventHandler } from "../models/index.js";
1
+ import type * as React from 'react';
2
+ import type { TreeViewCancellableEventHandler } from "../models/index.js";
3
3
  export interface TreeItemLabelInputProps {
4
4
  value?: string;
5
5
  /**
@@ -1,4 +1,4 @@
1
- import { TreeItemProviderProps } from "./TreeItemProvider.types.mjs";
1
+ import type { TreeItemProviderProps } from "./TreeItemProvider.types.mjs";
2
2
  declare function TreeItemProvider(props: TreeItemProviderProps): import("react/jsx-runtime").JSX.Element;
3
3
  declare namespace TreeItemProvider {
4
4
  var propTypes: any;
@@ -1,4 +1,4 @@
1
- import { TreeItemProviderProps } from "./TreeItemProvider.types.js";
1
+ import type { TreeItemProviderProps } from "./TreeItemProvider.types.js";
2
2
  declare function TreeItemProvider(props: TreeItemProviderProps): import("react/jsx-runtime").JSX.Element;
3
3
  declare namespace TreeItemProvider {
4
4
  var propTypes: any;
@@ -1,5 +1,5 @@
1
- import * as React from 'react';
2
- import { TreeViewItemId } from "../models/index.mjs";
1
+ import type * as React from 'react';
2
+ import type { TreeViewItemId } from "../models/index.mjs";
3
3
  export interface TreeItemProviderProps {
4
4
  children: React.ReactNode;
5
5
  itemId: TreeViewItemId;
@@ -1,5 +1,5 @@
1
- import * as React from 'react';
2
- import { TreeViewItemId } from "../models/index.js";
1
+ import type * as React from 'react';
2
+ import type { TreeViewItemId } from "../models/index.js";
3
3
  export interface TreeItemProviderProps {
4
4
  children: React.ReactNode;
5
5
  itemId: TreeViewItemId;
@@ -1,4 +1,4 @@
1
- import { TreeViewItemId, TreeViewSelectionPropagation } from "../models/index.mjs";
1
+ import type { TreeViewItemId, TreeViewSelectionPropagation } from "../models/index.mjs";
2
2
  /**
3
3
  * Applies the selection propagation rules to the selected items.
4
4
  * The value is only computed during the first render, any update of the parameters will be ignored.
@@ -1,4 +1,4 @@
1
- import { TreeViewItemId, TreeViewSelectionPropagation } from "../models/index.js";
1
+ import type { TreeViewItemId, TreeViewSelectionPropagation } from "../models/index.js";
2
2
  /**
3
3
  * Applies the selection propagation rules to the selected items.
4
4
  * The value is only computed during the first render, any update of the parameters will be ignored.
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
- import { TreeViewDefaultItemModelProperties, TreeViewValidItem } from "../models/index.mjs";
3
- import { TreeViewPublicAPI } from "../internals/models/index.mjs";
4
- import { RichTreeViewStore } from "../internals/RichTreeViewStore/index.mjs";
2
+ import type { TreeViewDefaultItemModelProperties, TreeViewValidItem } from "../models/index.mjs";
3
+ import type { TreeViewPublicAPI } from "../internals/models/index.mjs";
4
+ import type { RichTreeViewStore } from "../internals/RichTreeViewStore/index.mjs";
5
5
  /**
6
6
  * Creates the ref to pass to the `apiRef` prop of the `RichTreeView` component.
7
7
  */
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
- import { TreeViewDefaultItemModelProperties, TreeViewValidItem } from "../models/index.js";
3
- import { TreeViewPublicAPI } from "../internals/models/index.js";
4
- import { RichTreeViewStore } from "../internals/RichTreeViewStore/index.js";
2
+ import type { TreeViewDefaultItemModelProperties, TreeViewValidItem } from "../models/index.js";
3
+ import type { TreeViewPublicAPI } from "../internals/models/index.js";
4
+ import type { RichTreeViewStore } from "../internals/RichTreeViewStore/index.js";
5
5
  /**
6
6
  * Creates the ref to pass to the `apiRef` prop of the `RichTreeView` component.
7
7
  */
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
- import { TreeViewPublicAPI } from "../internals/models/index.mjs";
3
- import { SimpleTreeViewStore } from "../internals/SimpleTreeViewStore/index.mjs";
2
+ import type { TreeViewPublicAPI } from "../internals/models/index.mjs";
3
+ import type { SimpleTreeViewStore } from "../internals/SimpleTreeViewStore/index.mjs";
4
4
  /**
5
5
  * Creates the ref to pass to the `apiRef` prop of the `SimpleTreeView` component.
6
6
  */
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
- import { TreeViewPublicAPI } from "../internals/models/index.js";
3
- import { SimpleTreeViewStore } from "../internals/SimpleTreeViewStore/index.js";
2
+ import type { TreeViewPublicAPI } from "../internals/models/index.js";
3
+ import type { SimpleTreeViewStore } from "../internals/SimpleTreeViewStore/index.js";
4
4
  /**
5
5
  * Creates the ref to pass to the `apiRef` prop of the `SimpleTreeView` component.
6
6
  */
@@ -1,2 +1,2 @@
1
- import { TreeViewDefaultItemModelProperties, TreeViewItemId } from "../models/index.mjs";
1
+ import type { TreeViewDefaultItemModelProperties, TreeViewItemId } from "../models/index.mjs";
2
2
  export declare const useTreeItemModel: <R extends {} = TreeViewDefaultItemModelProperties>(itemId: TreeViewItemId) => R | null;
@@ -1,2 +1,2 @@
1
- import { TreeViewDefaultItemModelProperties, TreeViewItemId } from "../models/index.js";
1
+ import type { TreeViewDefaultItemModelProperties, TreeViewItemId } from "../models/index.js";
2
2
  export declare const useTreeItemModel: <R extends {} = TreeViewDefaultItemModelProperties>(itemId: TreeViewItemId) => R | null;
@@ -1,7 +1,7 @@
1
- import * as React from 'react';
1
+ import type * as React from 'react';
2
2
  import type { UseTreeItemStatus } from "../../useTreeItem/index.mjs";
3
- import { TreeViewPublicAPI, TreeViewAnyStore } from "../../internals/models/index.mjs";
4
- import { TreeViewLabelEditingPlugin } from "../../internals/plugins/labelEditing/index.mjs";
3
+ import type { TreeViewPublicAPI, TreeViewAnyStore } from "../../internals/models/index.mjs";
4
+ import type { TreeViewLabelEditingPlugin } from "../../internals/plugins/labelEditing/index.mjs";
5
5
  export interface UseTreeItemInteractions {
6
6
  handleExpansion: (event: React.MouseEvent) => void;
7
7
  handleSelection: (event: React.MouseEvent) => void;
@@ -1,7 +1,7 @@
1
- import * as React from 'react';
1
+ import type * as React from 'react';
2
2
  import type { UseTreeItemStatus } from "../../useTreeItem/index.js";
3
- import { TreeViewPublicAPI, TreeViewAnyStore } from "../../internals/models/index.js";
4
- import { TreeViewLabelEditingPlugin } from "../../internals/plugins/labelEditing/index.js";
3
+ import type { TreeViewPublicAPI, TreeViewAnyStore } from "../../internals/models/index.js";
4
+ import type { TreeViewLabelEditingPlugin } from "../../internals/plugins/labelEditing/index.js";
5
5
  export interface UseTreeItemInteractions {
6
6
  handleExpansion: (event: React.MouseEvent) => void;
7
7
  handleSelection: (event: React.MouseEvent) => void;
package/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-tree-view v9.6.0
2
+ * @mui/x-tree-view v9.8.0
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
package/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-tree-view v9.6.0
2
+ * @mui/x-tree-view v9.8.0
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -1,6 +1,7 @@
1
1
  import { Store } from '@mui/x-internals/store';
2
- import { MinimalTreeViewParameters, TreeViewParametersToStateMapper, MinimalTreeViewState } from "./MinimalTreeViewStore.types.mjs";
3
- import { TreeViewValidItem } from "../../models/index.mjs";
2
+ import { disposeSymbol } from '@mui/x-internals/disposable';
3
+ import type { MinimalTreeViewParameters, TreeViewParametersToStateMapper, MinimalTreeViewState } from "./MinimalTreeViewStore.types.mjs";
4
+ import type { TreeViewValidItem } from "../../models/index.mjs";
4
5
  import { TimeoutManager } from "./TimeoutManager.mjs";
5
6
  import { TreeViewKeyboardNavigationPlugin } from "../plugins/keyboardNavigation/index.mjs";
6
7
  import { TreeViewFocusPlugin } from "../plugins/focus/TreeViewFocusPlugin.mjs";
@@ -8,10 +9,11 @@ import { TreeViewItemsPlugin } from "../plugins/items/TreeViewItemsPlugin.mjs";
8
9
  import { TreeViewSelectionPlugin } from "../plugins/selection/TreeViewSelectionPlugin.mjs";
9
10
  import { TreeViewExpansionPlugin } from "../plugins/expansion/index.mjs";
10
11
  import { TreeViewItemPluginManager } from "./TreeViewItemPluginManager.mjs";
11
- import { TreeViewEventEvent, TreeViewEventListener, TreeViewEventParameters, TreeViewEvents } from "../models/index.mjs";
12
+ import type { TreeViewEventEvent, TreeViewEventListener, TreeViewEventParameters, TreeViewEvents } from "../models/index.mjs";
12
13
  export declare class MinimalTreeViewStore<R extends TreeViewValidItem<R>, Multiple extends boolean | undefined, State extends MinimalTreeViewState<R, Multiple> = MinimalTreeViewState<R, Multiple>, Parameters extends MinimalTreeViewParameters<R, Multiple> = MinimalTreeViewParameters<R, Multiple>> extends Store<State> {
13
14
  private initialParameters;
14
15
  private mapper;
16
+ readonly disposables: DisposableStack;
15
17
  private eventManager;
16
18
  instanceName: string;
17
19
  parameters: Parameters;
@@ -67,9 +69,17 @@ export declare class MinimalTreeViewStore<R extends TreeViewValidItem<R>, Multip
67
69
  */
68
70
  updateStateFromParameters(parameters: Parameters): void;
69
71
  /**
70
- * Returns a cleanup function that need to be called when the store is destroyed.
72
+ * Runs mount-time side effects that must not happen during render (the store
73
+ * is created during render by `useDisposable`). No-op by default; overridden
74
+ * by stores that kick off work on mount (e.g. lazy-loading fetches). Safe to
75
+ * call more than once (StrictMode replays mount effects).
71
76
  */
72
- disposeEffect: () => () => void;
77
+ mountEffect: () => void;
78
+ /**
79
+ * Disposes the store synchronously when the component unmounts. `useDisposable`
80
+ * handles React StrictMode's simulated unmount, so this runs once on real unmount.
81
+ */
82
+ [disposeSymbol](): void;
73
83
  /**
74
84
  * Whether updates based on `props.items` change should be ignored.
75
85
  */
@@ -1,6 +1,7 @@
1
1
  import { Store } from '@mui/x-internals/store';
2
- import { MinimalTreeViewParameters, TreeViewParametersToStateMapper, MinimalTreeViewState } from "./MinimalTreeViewStore.types.js";
3
- import { TreeViewValidItem } from "../../models/index.js";
2
+ import { disposeSymbol } from '@mui/x-internals/disposable';
3
+ import type { MinimalTreeViewParameters, TreeViewParametersToStateMapper, MinimalTreeViewState } from "./MinimalTreeViewStore.types.js";
4
+ import type { TreeViewValidItem } from "../../models/index.js";
4
5
  import { TimeoutManager } from "./TimeoutManager.js";
5
6
  import { TreeViewKeyboardNavigationPlugin } from "../plugins/keyboardNavigation/index.js";
6
7
  import { TreeViewFocusPlugin } from "../plugins/focus/TreeViewFocusPlugin.js";
@@ -8,10 +9,11 @@ import { TreeViewItemsPlugin } from "../plugins/items/TreeViewItemsPlugin.js";
8
9
  import { TreeViewSelectionPlugin } from "../plugins/selection/TreeViewSelectionPlugin.js";
9
10
  import { TreeViewExpansionPlugin } from "../plugins/expansion/index.js";
10
11
  import { TreeViewItemPluginManager } from "./TreeViewItemPluginManager.js";
11
- import { TreeViewEventEvent, TreeViewEventListener, TreeViewEventParameters, TreeViewEvents } from "../models/index.js";
12
+ import type { TreeViewEventEvent, TreeViewEventListener, TreeViewEventParameters, TreeViewEvents } from "../models/index.js";
12
13
  export declare class MinimalTreeViewStore<R extends TreeViewValidItem<R>, Multiple extends boolean | undefined, State extends MinimalTreeViewState<R, Multiple> = MinimalTreeViewState<R, Multiple>, Parameters extends MinimalTreeViewParameters<R, Multiple> = MinimalTreeViewParameters<R, Multiple>> extends Store<State> {
13
14
  private initialParameters;
14
15
  private mapper;
16
+ readonly disposables: DisposableStack;
15
17
  private eventManager;
16
18
  instanceName: string;
17
19
  parameters: Parameters;
@@ -67,9 +69,17 @@ export declare class MinimalTreeViewStore<R extends TreeViewValidItem<R>, Multip
67
69
  */
68
70
  updateStateFromParameters(parameters: Parameters): void;
69
71
  /**
70
- * Returns a cleanup function that need to be called when the store is destroyed.
72
+ * Runs mount-time side effects that must not happen during render (the store
73
+ * is created during render by `useDisposable`). No-op by default; overridden
74
+ * by stores that kick off work on mount (e.g. lazy-loading fetches). Safe to
75
+ * call more than once (StrictMode replays mount effects).
71
76
  */
72
- disposeEffect: () => () => void;
77
+ mountEffect: () => void;
78
+ /**
79
+ * Disposes the store synchronously when the component unmounts. `useDisposable`
80
+ * handles React StrictMode's simulated unmount, so this runs once on real unmount.
81
+ */
82
+ [disposeSymbol](): void;
73
83
  /**
74
84
  * Whether updates based on `props.items` change should be ignored.
75
85
  */
@@ -9,6 +9,7 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
9
9
  var _store = require("@mui/x-internals/store");
10
10
  var _warning = require("@mui/x-internals/warning");
11
11
  var _EventManager = require("@mui/x-internals/EventManager");
12
+ var _disposable = require("@mui/x-internals/disposable");
12
13
  var _MinimalTreeViewStore = require("./MinimalTreeViewStore.utils");
13
14
  var _TimeoutManager = require("./TimeoutManager");
14
15
  var _keyboardNavigation = require("../plugins/keyboardNavigation");
@@ -19,8 +20,13 @@ var _expansion = require("../plugins/expansion");
19
20
  var _TreeViewItemPluginManager = require("./TreeViewItemPluginManager");
20
21
  class MinimalTreeViewStore extends _store.Store {
21
22
  initialParameters = null;
22
- eventManager = new _EventManager.EventManager();
23
- timeoutManager = new _TimeoutManager.TimeoutManager();
23
+ // Owns the store's teardown. Declared first so the resources below register
24
+ // against it during field initialization; disposed by `useDisposable` on
25
+ // unmount (see `[disposeSymbol]`). `public` so plugins can register their own
26
+ // subscriptions against it (hidden from the context store type).
27
+ disposables = new _disposable.DisposableStack();
28
+ eventManager = this.disposables.adopt(new _EventManager.EventManager(), manager => manager.removeAllListeners());
29
+ timeoutManager = this.disposables.adopt(new _TimeoutManager.TimeoutManager(), manager => manager.clearAll());
24
30
  itemPluginManager = new _TreeViewItemPluginManager.TreeViewItemPluginManager();
25
31
  constructor(parameters, instanceName, mapper) {
26
32
  const minimalInitialState = (0, _MinimalTreeViewStore.createMinimalInitialState)(parameters);
@@ -83,11 +89,29 @@ class MinimalTreeViewStore extends _store.Store {
83
89
  }
84
90
 
85
91
  /**
86
- * Returns a cleanup function that need to be called when the store is destroyed.
92
+ * Runs mount-time side effects that must not happen during render (the store
93
+ * is created during render by `useDisposable`). No-op by default; overridden
94
+ * by stores that kick off work on mount (e.g. lazy-loading fetches). Safe to
95
+ * call more than once (StrictMode replays mount effects).
87
96
  */
88
- disposeEffect = () => {
89
- return this.timeoutManager.clearAll;
90
- };
97
+ mountEffect = () => {};
98
+
99
+ /**
100
+ * Disposes the store synchronously when the component unmounts. `useDisposable`
101
+ * handles React StrictMode's simulated unmount, so this runs once on real unmount.
102
+ */
103
+ [_disposable.disposeSymbol]() {
104
+ if (this.disposables.disposed) {
105
+ return;
106
+ }
107
+ try {
108
+ this.disposables.dispose();
109
+ } catch (error) {
110
+ if (process.env.NODE_ENV !== 'production') {
111
+ console.error('MUI X Tree View: error while disposing the store.', ...(0, _disposable.unwrapSuppressedErrors)(error));
112
+ }
113
+ }
114
+ }
91
115
 
92
116
  /**
93
117
  * Whether updates based on `props.items` change should be ignored.
@@ -101,13 +125,13 @@ class MinimalTreeViewStore extends _store.Store {
101
125
  */
102
126
  registerStoreEffect = (selector, effect) => {
103
127
  let previousValue = selector(this.state);
104
- this.subscribe(state => {
128
+ this.disposables.defer(this.subscribe(state => {
105
129
  const nextValue = selector(state);
106
130
  if (nextValue !== previousValue) {
107
131
  effect(previousValue, nextValue);
108
132
  previousValue = nextValue;
109
133
  }
110
- });
134
+ }));
111
135
  };
112
136
 
113
137
  /**
@@ -2,6 +2,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import { Store } from '@mui/x-internals/store';
3
3
  import { warnOnce } from '@mui/x-internals/warning';
4
4
  import { EventManager } from '@mui/x-internals/EventManager';
5
+ import { DisposableStack, disposeSymbol, unwrapSuppressedErrors } from '@mui/x-internals/disposable';
5
6
  import { createMinimalInitialState, createTreeViewDefaultId, deriveStateFromParameters } from "./MinimalTreeViewStore.utils.mjs";
6
7
  import { TimeoutManager } from "./TimeoutManager.mjs";
7
8
  import { TreeViewKeyboardNavigationPlugin } from "../plugins/keyboardNavigation/index.mjs";
@@ -12,8 +13,13 @@ import { TreeViewExpansionPlugin } from "../plugins/expansion/index.mjs";
12
13
  import { TreeViewItemPluginManager } from "./TreeViewItemPluginManager.mjs";
13
14
  export class MinimalTreeViewStore extends Store {
14
15
  initialParameters = null;
15
- eventManager = new EventManager();
16
- timeoutManager = new TimeoutManager();
16
+ // Owns the store's teardown. Declared first so the resources below register
17
+ // against it during field initialization; disposed by `useDisposable` on
18
+ // unmount (see `[disposeSymbol]`). `public` so plugins can register their own
19
+ // subscriptions against it (hidden from the context store type).
20
+ disposables = new DisposableStack();
21
+ eventManager = this.disposables.adopt(new EventManager(), manager => manager.removeAllListeners());
22
+ timeoutManager = this.disposables.adopt(new TimeoutManager(), manager => manager.clearAll());
17
23
  itemPluginManager = new TreeViewItemPluginManager();
18
24
  constructor(parameters, instanceName, mapper) {
19
25
  const minimalInitialState = createMinimalInitialState(parameters);
@@ -76,11 +82,29 @@ export class MinimalTreeViewStore extends Store {
76
82
  }
77
83
 
78
84
  /**
79
- * Returns a cleanup function that need to be called when the store is destroyed.
85
+ * Runs mount-time side effects that must not happen during render (the store
86
+ * is created during render by `useDisposable`). No-op by default; overridden
87
+ * by stores that kick off work on mount (e.g. lazy-loading fetches). Safe to
88
+ * call more than once (StrictMode replays mount effects).
80
89
  */
81
- disposeEffect = () => {
82
- return this.timeoutManager.clearAll;
83
- };
90
+ mountEffect = () => {};
91
+
92
+ /**
93
+ * Disposes the store synchronously when the component unmounts. `useDisposable`
94
+ * handles React StrictMode's simulated unmount, so this runs once on real unmount.
95
+ */
96
+ [disposeSymbol]() {
97
+ if (this.disposables.disposed) {
98
+ return;
99
+ }
100
+ try {
101
+ this.disposables.dispose();
102
+ } catch (error) {
103
+ if (process.env.NODE_ENV !== 'production') {
104
+ console.error('MUI X Tree View: error while disposing the store.', ...unwrapSuppressedErrors(error));
105
+ }
106
+ }
107
+ }
84
108
 
85
109
  /**
86
110
  * Whether updates based on `props.items` change should be ignored.
@@ -94,13 +118,13 @@ export class MinimalTreeViewStore extends Store {
94
118
  */
95
119
  registerStoreEffect = (selector, effect) => {
96
120
  let previousValue = selector(this.state);
97
- this.subscribe(state => {
121
+ this.disposables.defer(this.subscribe(state => {
98
122
  const nextValue = selector(state);
99
123
  if (nextValue !== previousValue) {
100
124
  effect(previousValue, nextValue);
101
125
  previousValue = nextValue;
102
126
  }
103
- });
127
+ }));
104
128
  };
105
129
 
106
130
  /**
@@ -1,5 +1,5 @@
1
- import { TreeViewItemId, TreeViewSelectionPropagation, TreeViewValidItem } from "../../models/index.mjs";
2
- import { TreeViewItemMeta } from "../models/index.mjs";
1
+ import type { TreeViewItemId, TreeViewSelectionPropagation, TreeViewValidItem } from "../../models/index.mjs";
2
+ import type { TreeViewItemMeta } from "../models/index.mjs";
3
3
  export interface MinimalTreeViewState<R extends TreeViewValidItem<R>, Multiple extends boolean | undefined> {
4
4
  /**
5
5
  * Whether the button should be focusable when disabled.
@@ -1,5 +1,5 @@
1
- import { TreeViewItemId, TreeViewSelectionPropagation, TreeViewValidItem } from "../../models/index.js";
2
- import { TreeViewItemMeta } from "../models/index.js";
1
+ import type { TreeViewItemId, TreeViewSelectionPropagation, TreeViewValidItem } from "../../models/index.js";
2
+ import type { TreeViewItemMeta } from "../models/index.js";
3
3
  export interface MinimalTreeViewState<R extends TreeViewValidItem<R>, Multiple extends boolean | undefined> {
4
4
  /**
5
5
  * Whether the button should be focusable when disabled.
@@ -1,5 +1,5 @@
1
- import { TreeViewValidItem } from "../../models/index.mjs";
2
- import { MinimalTreeViewParameters, MinimalTreeViewState } from "./MinimalTreeViewStore.types.mjs";
1
+ import type { TreeViewValidItem } from "../../models/index.mjs";
2
+ import type { MinimalTreeViewParameters, MinimalTreeViewState } from "./MinimalTreeViewStore.types.mjs";
3
3
  /**
4
4
  * Returns the properties of the state that are derived from the parameters.
5
5
  * This do not contain state properties that don't update whenever the parameters update.
@@ -1,5 +1,5 @@
1
- import { TreeViewValidItem } from "../../models/index.js";
2
- import { MinimalTreeViewParameters, MinimalTreeViewState } from "./MinimalTreeViewStore.types.js";
1
+ import type { TreeViewValidItem } from "../../models/index.js";
2
+ import type { MinimalTreeViewParameters, MinimalTreeViewState } from "./MinimalTreeViewStore.types.js";
3
3
  /**
4
4
  * Returns the properties of the state that are derived from the parameters.
5
5
  * This do not contain state properties that don't update whenever the parameters update.
@@ -1,4 +1,4 @@
1
- import { TreeItemWrapper, TreeViewAnyStore, TreeViewItemPlugin } from "../models/index.mjs";
1
+ import type { TreeItemWrapper, TreeViewAnyStore, TreeViewItemPlugin } from "../models/index.mjs";
2
2
  /**
3
3
  * Manages the registration and application of plugins for the Tree Item.
4
4
  * This will be replaced with a proper implementation in the future.
@@ -1,4 +1,4 @@
1
- import { TreeItemWrapper, TreeViewAnyStore, TreeViewItemPlugin } from "../models/index.js";
1
+ import type { TreeItemWrapper, TreeViewAnyStore, TreeViewItemPlugin } from "../models/index.js";
2
2
  /**
3
3
  * Manages the registration and application of plugins for the Tree Item.
4
4
  * This will be replaced with a proper implementation in the future.
@@ -1,7 +1,7 @@
1
- import { TreeViewValidItem } from "../../models/index.mjs";
1
+ import type { TreeViewValidItem } from "../../models/index.mjs";
2
2
  import { TreeViewLabelEditingPlugin } from "../plugins/labelEditing/index.mjs";
3
3
  import { MinimalTreeViewStore } from "../MinimalTreeViewStore/index.mjs";
4
- import { RichTreeViewStoreParameters, RichTreeViewState } from "./RichTreeViewStore.types.mjs";
4
+ import type { RichTreeViewStoreParameters, RichTreeViewState } from "./RichTreeViewStore.types.mjs";
5
5
  export declare class ExtendableRichTreeViewStore<R extends TreeViewValidItem<R>, Multiple extends boolean | undefined, State extends RichTreeViewState<R, Multiple> = RichTreeViewState<R, Multiple>, Parameters extends RichTreeViewStoreParameters<R, Multiple> = RichTreeViewStoreParameters<R, Multiple>> extends MinimalTreeViewStore<R, Multiple, State, Parameters> {
6
6
  labelEditing: TreeViewLabelEditingPlugin;
7
7
  /**
@@ -1,7 +1,7 @@
1
- import { TreeViewValidItem } from "../../models/index.js";
1
+ import type { TreeViewValidItem } from "../../models/index.js";
2
2
  import { TreeViewLabelEditingPlugin } from "../plugins/labelEditing/index.js";
3
3
  import { MinimalTreeViewStore } from "../MinimalTreeViewStore/index.js";
4
- import { RichTreeViewStoreParameters, RichTreeViewState } from "./RichTreeViewStore.types.js";
4
+ import type { RichTreeViewStoreParameters, RichTreeViewState } from "./RichTreeViewStore.types.js";
5
5
  export declare class ExtendableRichTreeViewStore<R extends TreeViewValidItem<R>, Multiple extends boolean | undefined, State extends RichTreeViewState<R, Multiple> = RichTreeViewState<R, Multiple>, Parameters extends RichTreeViewStoreParameters<R, Multiple> = RichTreeViewStoreParameters<R, Multiple>> extends MinimalTreeViewStore<R, Multiple, State, Parameters> {
6
6
  labelEditing: TreeViewLabelEditingPlugin;
7
7
  /**
@@ -1,6 +1,6 @@
1
- import { TreeViewDOMStructure, TreeViewItemId, TreeViewValidItem } from "../../models/index.mjs";
2
- import { MinimalTreeViewParameters, MinimalTreeViewState } from "../MinimalTreeViewStore/index.mjs";
3
- import { RichTreeViewLazyLoadedItemsStatus } from "../plugins/lazyLoading/index.mjs";
1
+ import type { TreeViewDOMStructure, TreeViewItemId, TreeViewValidItem } from "../../models/index.mjs";
2
+ import type { MinimalTreeViewParameters, MinimalTreeViewState } from "../MinimalTreeViewStore/index.mjs";
3
+ import type { RichTreeViewLazyLoadedItemsStatus } from "../plugins/lazyLoading/index.mjs";
4
4
  export interface RichTreeViewState<R extends TreeViewValidItem<R>, Multiple extends boolean | undefined> extends MinimalTreeViewState<R, Multiple> {
5
5
  /**
6
6
  * Determine if a given item can be edited.
@@ -1,6 +1,6 @@
1
- import { TreeViewDOMStructure, TreeViewItemId, TreeViewValidItem } from "../../models/index.js";
2
- import { MinimalTreeViewParameters, MinimalTreeViewState } from "../MinimalTreeViewStore/index.js";
3
- import { RichTreeViewLazyLoadedItemsStatus } from "../plugins/lazyLoading/index.js";
1
+ import type { TreeViewDOMStructure, TreeViewItemId, TreeViewValidItem } from "../../models/index.js";
2
+ import type { MinimalTreeViewParameters, MinimalTreeViewState } from "../MinimalTreeViewStore/index.js";
3
+ import type { RichTreeViewLazyLoadedItemsStatus } from "../plugins/lazyLoading/index.js";
4
4
  export interface RichTreeViewState<R extends TreeViewValidItem<R>, Multiple extends boolean | undefined> extends MinimalTreeViewState<R, Multiple> {
5
5
  /**
6
6
  * Determine if a given item can be edited.
@@ -1,3 +1,3 @@
1
- import { TreeViewParametersToStateMapper } from "../MinimalTreeViewStore/index.mjs";
2
- import { RichTreeViewStoreParameters, RichTreeViewState } from "./RichTreeViewStore.types.mjs";
1
+ import type { TreeViewParametersToStateMapper } from "../MinimalTreeViewStore/index.mjs";
2
+ import type { RichTreeViewStoreParameters, RichTreeViewState } from "./RichTreeViewStore.types.mjs";
3
3
  export declare const parametersToStateMapper: TreeViewParametersToStateMapper<any, any, RichTreeViewState<any, any>, RichTreeViewStoreParameters<any, any>>;
@@ -1,3 +1,3 @@
1
- import { TreeViewParametersToStateMapper } from "../MinimalTreeViewStore/index.js";
2
- import { RichTreeViewStoreParameters, RichTreeViewState } from "./RichTreeViewStore.types.js";
1
+ import type { TreeViewParametersToStateMapper } from "../MinimalTreeViewStore/index.js";
2
+ import type { RichTreeViewStoreParameters, RichTreeViewState } from "./RichTreeViewStore.types.js";
3
3
  export declare const parametersToStateMapper: TreeViewParametersToStateMapper<any, any, RichTreeViewState<any, any>, RichTreeViewStoreParameters<any, any>>;
@@ -1,5 +1,5 @@
1
1
  import { MinimalTreeViewStore } from "../MinimalTreeViewStore/index.mjs";
2
- import { InnerSimpleTreeViewParameters, SimpleTreeViewItem, SimpleTreeViewStoreParameters, SimpleTreeViewState } from "./SimpleTreeViewStore.types.mjs";
2
+ import type { InnerSimpleTreeViewParameters, SimpleTreeViewItem, SimpleTreeViewStoreParameters, SimpleTreeViewState } from "./SimpleTreeViewStore.types.mjs";
3
3
  import { TreeViewJSXItemsPlugin } from "../plugins/jsxItems/index.mjs";
4
4
  export declare class SimpleTreeViewStore<Multiple extends boolean | undefined> extends MinimalTreeViewStore<SimpleTreeViewItem, Multiple, SimpleTreeViewState<Multiple>, InnerSimpleTreeViewParameters<Multiple>> {
5
5
  jsxItems: TreeViewJSXItemsPlugin;
@@ -1,5 +1,5 @@
1
1
  import { MinimalTreeViewStore } from "../MinimalTreeViewStore/index.js";
2
- import { InnerSimpleTreeViewParameters, SimpleTreeViewItem, SimpleTreeViewStoreParameters, SimpleTreeViewState } from "./SimpleTreeViewStore.types.js";
2
+ import type { InnerSimpleTreeViewParameters, SimpleTreeViewItem, SimpleTreeViewStoreParameters, SimpleTreeViewState } from "./SimpleTreeViewStore.types.js";
3
3
  import { TreeViewJSXItemsPlugin } from "../plugins/jsxItems/index.js";
4
4
  export declare class SimpleTreeViewStore<Multiple extends boolean | undefined> extends MinimalTreeViewStore<SimpleTreeViewItem, Multiple, SimpleTreeViewState<Multiple>, InnerSimpleTreeViewParameters<Multiple>> {
5
5
  jsxItems: TreeViewJSXItemsPlugin;
@@ -1,4 +1,4 @@
1
- import { MinimalTreeViewParameters, MinimalTreeViewState } from "../MinimalTreeViewStore/index.mjs";
1
+ import type { MinimalTreeViewParameters, MinimalTreeViewState } from "../MinimalTreeViewStore/index.mjs";
2
2
  export interface SimpleTreeViewState<Multiple extends boolean | undefined> extends MinimalTreeViewState<SimpleTreeViewItem, Multiple> {}
3
3
  export interface InnerSimpleTreeViewParameters<Multiple extends boolean | undefined> extends MinimalTreeViewParameters<SimpleTreeViewItem, Multiple> {}
4
4
  export interface SimpleTreeViewStoreParameters<Multiple extends boolean | undefined> extends Omit<InnerSimpleTreeViewParameters<Multiple>, 'items' | 'isItemDisabled' | 'isItemSelectionDisabled' | 'getItemLabel' | 'getItemChildren' | 'getItemId'> {}
@@ -1,4 +1,4 @@
1
- import { MinimalTreeViewParameters, MinimalTreeViewState } from "../MinimalTreeViewStore/index.js";
1
+ import type { MinimalTreeViewParameters, MinimalTreeViewState } from "../MinimalTreeViewStore/index.js";
2
2
  export interface SimpleTreeViewState<Multiple extends boolean | undefined> extends MinimalTreeViewState<SimpleTreeViewItem, Multiple> {}
3
3
  export interface InnerSimpleTreeViewParameters<Multiple extends boolean | undefined> extends MinimalTreeViewParameters<SimpleTreeViewItem, Multiple> {}
4
4
  export interface SimpleTreeViewStoreParameters<Multiple extends boolean | undefined> extends Omit<InnerSimpleTreeViewParameters<Multiple>, 'items' | 'isItemDisabled' | 'isItemSelectionDisabled' | 'getItemLabel' | 'getItemChildren' | 'getItemId'> {}
@@ -1,3 +1,3 @@
1
- import { TreeViewParametersToStateMapper } from "../MinimalTreeViewStore/index.mjs";
2
- import { InnerSimpleTreeViewParameters, SimpleTreeViewState } from "./SimpleTreeViewStore.types.mjs";
1
+ import type { TreeViewParametersToStateMapper } from "../MinimalTreeViewStore/index.mjs";
2
+ import type { InnerSimpleTreeViewParameters, SimpleTreeViewState } from "./SimpleTreeViewStore.types.mjs";
3
3
  export declare const parametersToStateMapper: TreeViewParametersToStateMapper<any, any, SimpleTreeViewState<any>, InnerSimpleTreeViewParameters<any>>;
@@ -1,3 +1,3 @@
1
- import { TreeViewParametersToStateMapper } from "../MinimalTreeViewStore/index.js";
2
- import { InnerSimpleTreeViewParameters, SimpleTreeViewState } from "./SimpleTreeViewStore.types.js";
1
+ import type { TreeViewParametersToStateMapper } from "../MinimalTreeViewStore/index.js";
2
+ import type { InnerSimpleTreeViewParameters, SimpleTreeViewState } from "./SimpleTreeViewStore.types.js";
3
3
  export declare const parametersToStateMapper: TreeViewParametersToStateMapper<any, any, SimpleTreeViewState<any>, InnerSimpleTreeViewParameters<any>>;
@@ -1,4 +1,4 @@
1
1
  import * as React from 'react';
2
- import { TreeViewItemId } from "../../models/index.mjs";
3
- import { MinimalTreeViewState } from "../MinimalTreeViewStore/index.mjs";
2
+ import type { TreeViewItemId } from "../../models/index.mjs";
3
+ import type { MinimalTreeViewState } from "../MinimalTreeViewStore/index.mjs";
4
4
  export declare const TreeViewItemDepthContext: React.Context<number | ((state: MinimalTreeViewState<any, any>, itemId: TreeViewItemId) => number)>;
@@ -1,4 +1,4 @@
1
1
  import * as React from 'react';
2
- import { TreeViewItemId } from "../../models/index.js";
3
- import { MinimalTreeViewState } from "../MinimalTreeViewStore/index.js";
2
+ import type { TreeViewItemId } from "../../models/index.js";
3
+ import type { MinimalTreeViewState } from "../MinimalTreeViewStore/index.js";
4
4
  export declare const TreeViewItemDepthContext: React.Context<number | ((state: MinimalTreeViewState<any, any>, itemId: TreeViewItemId) => number)>;
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
- import { TreeViewAnyStore } from "../models/index.mjs";
3
- import { TreeViewContextValue } from "./TreeViewProvider.types.mjs";
2
+ import type { TreeViewAnyStore } from "../models/index.mjs";
3
+ import type { TreeViewContextValue } from "./TreeViewProvider.types.mjs";
4
4
  /**
5
5
  * @ignore - internal component.
6
6
  */
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
- import { TreeViewAnyStore } from "../models/index.js";
3
- import { TreeViewContextValue } from "./TreeViewProvider.types.js";
2
+ import type { TreeViewAnyStore } from "../models/index.js";
3
+ import type { TreeViewContextValue } from "./TreeViewProvider.types.js";
4
4
  /**
5
5
  * @ignore - internal component.
6
6
  */
@@ -1,5 +1,5 @@
1
- import { TreeViewProviderProps } from "./TreeViewProvider.types.mjs";
2
- import { TreeViewAnyStore } from "../models/index.mjs";
1
+ import type { TreeViewProviderProps } from "./TreeViewProvider.types.mjs";
2
+ import type { TreeViewAnyStore } from "../models/index.mjs";
3
3
  /**
4
4
  * Sets up the contexts for the underlying Tree Item components.
5
5
  *