@mui/x-tree-view 9.7.0 → 9.9.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 (146) hide show
  1. package/CHANGELOG.md +249 -1
  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 +2 -2
  23. package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.d.ts +2 -2
  24. package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.d.mts +2 -2
  25. package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.d.ts +2 -2
  26. package/TreeItemIcon/TreeItemIcon.d.mts +3 -2
  27. package/TreeItemIcon/TreeItemIcon.d.ts +3 -2
  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 +3 -2
  33. package/TreeItemProvider/TreeItemProvider.d.ts +3 -2
  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 +3 -3
  49. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.d.ts +3 -3
  50. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.types.d.mts +2 -2
  51. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.types.d.ts +2 -2
  52. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.utils.d.mts +2 -2
  53. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.utils.d.ts +2 -2
  54. package/internals/MinimalTreeViewStore/TreeViewItemPluginManager.d.mts +1 -1
  55. package/internals/MinimalTreeViewStore/TreeViewItemPluginManager.d.ts +1 -1
  56. package/internals/RichTreeViewStore/RichTreeViewStore.d.mts +2 -2
  57. package/internals/RichTreeViewStore/RichTreeViewStore.d.ts +2 -2
  58. package/internals/RichTreeViewStore/RichTreeViewStore.types.d.mts +3 -3
  59. package/internals/RichTreeViewStore/RichTreeViewStore.types.d.ts +3 -3
  60. package/internals/RichTreeViewStore/RichTreeViewStore.utils.d.mts +2 -2
  61. package/internals/RichTreeViewStore/RichTreeViewStore.utils.d.ts +2 -2
  62. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.d.mts +1 -1
  63. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.d.ts +1 -1
  64. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.types.d.mts +1 -1
  65. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.types.d.ts +1 -1
  66. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.utils.d.mts +2 -2
  67. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.utils.d.ts +2 -2
  68. package/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.d.mts +2 -2
  69. package/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.d.ts +2 -2
  70. package/internals/TreeViewProvider/TreeViewChildrenItemProvider.d.mts +1 -1
  71. package/internals/TreeViewProvider/TreeViewChildrenItemProvider.d.ts +1 -1
  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 +4 -3
  75. package/internals/TreeViewProvider/TreeViewProvider.d.ts +4 -3
  76. package/internals/TreeViewProvider/TreeViewProvider.types.d.mts +5 -5
  77. package/internals/TreeViewProvider/TreeViewProvider.types.d.ts +5 -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 +6 -5
  83. package/internals/components/RichTreeViewItems.d.ts +6 -5
  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/models/events.d.mts +2 -2
  89. package/internals/models/events.d.ts +2 -2
  90. package/internals/models/itemPlugin.d.mts +5 -5
  91. package/internals/models/itemPlugin.d.ts +5 -5
  92. package/internals/models/treeView.d.mts +1 -1
  93. package/internals/models/treeView.d.ts +1 -1
  94. package/internals/plugins/expansion/TreeViewExpansionPlugin.d.mts +1 -1
  95. package/internals/plugins/expansion/TreeViewExpansionPlugin.d.ts +1 -1
  96. package/internals/plugins/expansion/selectors.d.mts +1 -1
  97. package/internals/plugins/expansion/selectors.d.ts +1 -1
  98. package/internals/plugins/expansion/utils.d.mts +1 -1
  99. package/internals/plugins/expansion/utils.d.ts +1 -1
  100. package/internals/plugins/focus/TreeViewFocusPlugin.d.mts +1 -1
  101. package/internals/plugins/focus/TreeViewFocusPlugin.d.ts +1 -1
  102. package/internals/plugins/focus/selectors.d.mts +1 -1
  103. package/internals/plugins/focus/selectors.d.ts +1 -1
  104. package/internals/plugins/id/selectors.d.mts +1 -1
  105. package/internals/plugins/id/selectors.d.ts +1 -1
  106. package/internals/plugins/items/TreeViewItemsPlugin.d.mts +2 -2
  107. package/internals/plugins/items/TreeViewItemsPlugin.d.ts +2 -2
  108. package/internals/plugins/items/selectors.d.mts +3 -3
  109. package/internals/plugins/items/selectors.d.ts +3 -3
  110. package/internals/plugins/items/utils.d.mts +2 -2
  111. package/internals/plugins/items/utils.d.ts +2 -2
  112. package/internals/plugins/jsxItems/TreeViewJSXItemsPlugin.d.mts +2 -2
  113. package/internals/plugins/jsxItems/TreeViewJSXItemsPlugin.d.ts +2 -2
  114. package/internals/plugins/jsxItems/TreeViewJSXItemsPlugin.js +2 -1
  115. package/internals/plugins/jsxItems/TreeViewJSXItemsPlugin.mjs +2 -1
  116. package/internals/plugins/jsxItems/itemPlugin.d.mts +2 -2
  117. package/internals/plugins/jsxItems/itemPlugin.d.ts +2 -2
  118. package/internals/plugins/keyboardNavigation/TreeViewKeyboardNavigationPlugin.d.mts +1 -1
  119. package/internals/plugins/keyboardNavigation/TreeViewKeyboardNavigationPlugin.d.ts +1 -1
  120. package/internals/plugins/labelEditing/TreeViewLabelEditingPlugin.d.mts +2 -2
  121. package/internals/plugins/labelEditing/TreeViewLabelEditingPlugin.d.ts +2 -2
  122. package/internals/plugins/labelEditing/itemPlugin.d.mts +2 -2
  123. package/internals/plugins/labelEditing/itemPlugin.d.ts +2 -2
  124. package/internals/plugins/labelEditing/selectors.d.mts +1 -1
  125. package/internals/plugins/labelEditing/selectors.d.ts +1 -1
  126. package/internals/plugins/lazyLoading/selectors.d.mts +1 -1
  127. package/internals/plugins/lazyLoading/selectors.d.ts +1 -1
  128. package/internals/plugins/lazyLoading/types.d.mts +1 -1
  129. package/internals/plugins/lazyLoading/types.d.ts +1 -1
  130. package/internals/plugins/selection/itemPlugin.d.mts +3 -3
  131. package/internals/plugins/selection/itemPlugin.d.ts +3 -3
  132. package/internals/plugins/selection/selectors.d.mts +1 -1
  133. package/internals/plugins/selection/selectors.d.ts +1 -1
  134. package/internals/utils/tree.d.mts +1 -1
  135. package/internals/utils/tree.d.ts +1 -1
  136. package/package.json +3 -3
  137. package/themeAugmentation/components.d.mts +1 -1
  138. package/themeAugmentation/components.d.ts +1 -1
  139. package/themeAugmentation/overrides.d.mts +3 -3
  140. package/themeAugmentation/overrides.d.ts +3 -3
  141. package/themeAugmentation/props.d.mts +3 -3
  142. package/themeAugmentation/props.d.ts +3 -3
  143. package/useTreeItem/useTreeItem.d.mts +4 -4
  144. package/useTreeItem/useTreeItem.d.ts +4 -4
  145. package/useTreeItem/useTreeItem.types.d.mts +3 -3
  146. package/useTreeItem/useTreeItem.types.d.ts +3 -3
@@ -1,8 +1,8 @@
1
- import * as React from 'react';
2
- import { EventHandlers } from '@mui/utils/types';
3
- import { TreeViewCancellableEvent } from "../../models/index.mjs";
4
- import { TreeViewAnyStore } from "../models/index.mjs";
5
- import { TreeViewStoreInContext } from "../TreeViewProvider/index.mjs";
1
+ import type * as React from 'react';
2
+ import type { EventHandlers } from '@mui/utils/types';
3
+ import type { TreeViewCancellableEvent } from "../../models/index.mjs";
4
+ import type { TreeViewAnyStore } from "../models/index.mjs";
5
+ import type { TreeViewStoreInContext } from "../TreeViewProvider/index.mjs";
6
6
  export declare function useTreeViewRootProps<TStore extends TreeViewAnyStore>(store: TreeViewStoreInContext<TStore>, forwardedProps: React.HTMLAttributes<HTMLUListElement>, ref: React.Ref<HTMLUListElement | null> | undefined): (otherHandlers: EventHandlers) => {
7
7
  style: React.CSSProperties;
8
8
  onFocus: (event: React.FocusEvent<HTMLUListElement> & TreeViewCancellableEvent) => void;
@@ -1,8 +1,8 @@
1
- import * as React from 'react';
2
- import { EventHandlers } from '@mui/utils/types';
3
- import { TreeViewCancellableEvent } from "../../models/index.js";
4
- import { TreeViewAnyStore } from "../models/index.js";
5
- import { TreeViewStoreInContext } from "../TreeViewProvider/index.js";
1
+ import type * as React from 'react';
2
+ import type { EventHandlers } from '@mui/utils/types';
3
+ import type { TreeViewCancellableEvent } from "../../models/index.js";
4
+ import type { TreeViewAnyStore } from "../models/index.js";
5
+ import type { TreeViewStoreInContext } from "../TreeViewProvider/index.js";
6
6
  export declare function useTreeViewRootProps<TStore extends TreeViewAnyStore>(store: TreeViewStoreInContext<TStore>, forwardedProps: React.HTMLAttributes<HTMLUListElement>, ref: React.Ref<HTMLUListElement | null> | undefined): (otherHandlers: EventHandlers) => {
7
7
  style: React.CSSProperties;
8
8
  onFocus: (event: React.FocusEvent<HTMLUListElement> & TreeViewCancellableEvent) => void;
@@ -1,4 +1,4 @@
1
- import { TreeViewAnyStore } from "../models/index.mjs";
1
+ import type { TreeViewAnyStore } from "../models/index.mjs";
2
2
  interface ValidTreeViewStoreConstructor<TStore extends TreeViewAnyStore> {
3
3
  new (parameters: TStore['parameters']): TStore;
4
4
  }
@@ -1,4 +1,4 @@
1
- import { TreeViewAnyStore } from "../models/index.js";
1
+ import type { TreeViewAnyStore } from "../models/index.js";
2
2
  interface ValidTreeViewStoreConstructor<TStore extends TreeViewAnyStore> {
3
3
  new (parameters: TStore['parameters']): TStore;
4
4
  }
@@ -1,5 +1,5 @@
1
- import { MuiEvent } from '@mui/x-internals/types';
2
- import { TreeViewItemId } from "../../models/index.mjs";
1
+ import type { MuiEvent } from '@mui/x-internals/types';
2
+ import type { TreeViewItemId } from "../../models/index.mjs";
3
3
  interface TreeViewEventLookup {
4
4
  /**
5
5
  * Fired before an item is expanded or collapsed.
@@ -1,5 +1,5 @@
1
- import { MuiEvent } from '@mui/x-internals/types';
2
- import { TreeViewItemId } from "../../models/index.js";
1
+ import type { MuiEvent } from '@mui/x-internals/types';
2
+ import type { TreeViewItemId } from "../../models/index.js";
3
3
  interface TreeViewEventLookup {
4
4
  /**
5
5
  * Fired before an item is expanded or collapsed.
@@ -1,11 +1,11 @@
1
- import * as React from 'react';
2
- import { EventHandlers } from '@mui/utils/types';
3
- import { TreeViewItemId } from "../../models/index.mjs";
1
+ import type * as React from 'react';
2
+ import type { EventHandlers } from '@mui/utils/types';
3
+ import type { TreeViewItemId } from "../../models/index.mjs";
4
4
  import type { UseTreeItemContentSlotOwnProps, UseTreeItemDragAndDropOverlaySlotOwnProps, UseTreeItemLabelInputSlotOwnProps, UseTreeItemRootSlotOwnProps, UseTreeItemCheckboxSlotOwnProps, UseTreeItemLabelSlotOwnProps } from "../../useTreeItem/index.mjs";
5
5
  import type { UseTreeItemInteractions } from "../../hooks/useTreeItemUtils/useTreeItemUtils.mjs";
6
6
  import type { TreeItemProps } from "../../TreeItem/TreeItem.types.mjs";
7
- import { TreeViewAnyStore } from "./treeView.mjs";
8
- import { TreeViewStoreInContext } from "../TreeViewProvider/index.mjs";
7
+ import type { TreeViewAnyStore } from "./treeView.mjs";
8
+ import type { TreeViewStoreInContext } from "../TreeViewProvider/index.mjs";
9
9
  export interface TreeViewItemPluginSlotPropsEnhancerParams {
10
10
  rootRefObject: React.RefObject<HTMLLIElement | null>;
11
11
  contentRefObject: React.RefObject<HTMLDivElement | null>;
@@ -1,11 +1,11 @@
1
- import * as React from 'react';
2
- import { EventHandlers } from '@mui/utils/types';
3
- import { TreeViewItemId } from "../../models/index.js";
1
+ import type * as React from 'react';
2
+ import type { EventHandlers } from '@mui/utils/types';
3
+ import type { TreeViewItemId } from "../../models/index.js";
4
4
  import type { UseTreeItemContentSlotOwnProps, UseTreeItemDragAndDropOverlaySlotOwnProps, UseTreeItemLabelInputSlotOwnProps, UseTreeItemRootSlotOwnProps, UseTreeItemCheckboxSlotOwnProps, UseTreeItemLabelSlotOwnProps } from "../../useTreeItem/index.js";
5
5
  import type { UseTreeItemInteractions } from "../../hooks/useTreeItemUtils/useTreeItemUtils.js";
6
6
  import type { TreeItemProps } from "../../TreeItem/TreeItem.types.js";
7
- import { TreeViewAnyStore } from "./treeView.js";
8
- import { TreeViewStoreInContext } from "../TreeViewProvider/index.js";
7
+ import type { TreeViewAnyStore } from "./treeView.js";
8
+ import type { TreeViewStoreInContext } from "../TreeViewProvider/index.js";
9
9
  export interface TreeViewItemPluginSlotPropsEnhancerParams {
10
10
  rootRefObject: React.RefObject<HTMLLIElement | null>;
11
11
  contentRefObject: React.RefObject<HTMLDivElement | null>;
@@ -1,4 +1,4 @@
1
- import { MinimalTreeViewStore } from "../MinimalTreeViewStore/index.mjs";
1
+ import type { MinimalTreeViewStore } from "../MinimalTreeViewStore/index.mjs";
2
2
  export interface TreeViewItemMeta {
3
3
  id: string;
4
4
  idAttribute: string | undefined;
@@ -1,4 +1,4 @@
1
- import { MinimalTreeViewStore } from "../MinimalTreeViewStore/index.js";
1
+ import type { MinimalTreeViewStore } from "../MinimalTreeViewStore/index.js";
2
2
  export interface TreeViewItemMeta {
3
3
  id: string;
4
4
  idAttribute: string | undefined;
@@ -1,4 +1,4 @@
1
- import { TreeViewItemId } from "../../../models/index.mjs";
1
+ import type { TreeViewItemId } from "../../../models/index.mjs";
2
2
  export declare class TreeViewExpansionPlugin {
3
3
  private store;
4
4
  constructor(store: any);
@@ -1,4 +1,4 @@
1
- import { TreeViewItemId } from "../../../models/index.js";
1
+ import type { TreeViewItemId } from "../../../models/index.js";
2
2
  export declare class TreeViewExpansionPlugin {
3
3
  private store;
4
4
  constructor(store: any);
@@ -1,4 +1,4 @@
1
- import { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.mjs";
1
+ import type { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.mjs";
2
2
  export declare const expansionSelectors: {
3
3
  /**
4
4
  * Gets the expanded items as provided to the component.
@@ -1,4 +1,4 @@
1
- import { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.js";
1
+ import type { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.js";
2
2
  export declare const expansionSelectors: {
3
3
  /**
4
4
  * Gets the expanded items as provided to the component.
@@ -1,4 +1,4 @@
1
- import { RichTreeViewStoreParameters } from "../../RichTreeViewStore/index.mjs";
1
+ import type { RichTreeViewStoreParameters } from "../../RichTreeViewStore/index.mjs";
2
2
  export declare const getExpansionTrigger: ({
3
3
  isItemEditable,
4
4
  expansionTrigger
@@ -1,4 +1,4 @@
1
- import { RichTreeViewStoreParameters } from "../../RichTreeViewStore/index.js";
1
+ import type { RichTreeViewStoreParameters } from "../../RichTreeViewStore/index.js";
2
2
  export declare const getExpansionTrigger: ({
3
3
  isItemEditable,
4
4
  expansionTrigger
@@ -1,4 +1,4 @@
1
- import { TreeViewCancellableEvent, TreeViewItemId } from "../../../models/index.mjs";
1
+ import type { TreeViewCancellableEvent, TreeViewItemId } from "../../../models/index.mjs";
2
2
  export declare class TreeViewFocusPlugin {
3
3
  private store;
4
4
  constructor(store: any);
@@ -1,4 +1,4 @@
1
- import { TreeViewCancellableEvent, TreeViewItemId } from "../../../models/index.js";
1
+ import type { TreeViewCancellableEvent, TreeViewItemId } from "../../../models/index.js";
2
2
  export declare class TreeViewFocusPlugin {
3
3
  private store;
4
4
  constructor(store: any);
@@ -1,4 +1,4 @@
1
- import { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.mjs";
1
+ import type { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.mjs";
2
2
  export declare const focusSelectors: {
3
3
  /**
4
4
  * Gets the item that should be sequentially focusable (usually with the Tab key).
@@ -1,4 +1,4 @@
1
- import { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.js";
1
+ import type { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.js";
2
2
  export declare const focusSelectors: {
3
3
  /**
4
4
  * Gets the item that should be sequentially focusable (usually with the Tab key).
@@ -1,4 +1,4 @@
1
- import { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.mjs";
1
+ import type { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.mjs";
2
2
  export declare const idSelectors: {
3
3
  /**
4
4
  * Get the id attribute of the tree view.
@@ -1,4 +1,4 @@
1
- import { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.js";
1
+ import type { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.js";
2
2
  export declare const idSelectors: {
3
3
  /**
4
4
  * Get the id attribute of the tree view.
@@ -1,5 +1,5 @@
1
- import { TreeViewItemId, TreeViewValidItem } from "../../../models/index.mjs";
2
- import { MinimalTreeViewParameters } from "../../MinimalTreeViewStore/MinimalTreeViewStore.types.mjs";
1
+ import type { TreeViewItemId, TreeViewValidItem } from "../../../models/index.mjs";
2
+ import type { MinimalTreeViewParameters } from "../../MinimalTreeViewStore/MinimalTreeViewStore.types.mjs";
3
3
  export declare class TreeViewItemsPlugin<R extends TreeViewValidItem<R>> {
4
4
  private store;
5
5
  constructor(store: any);
@@ -1,5 +1,5 @@
1
- import { TreeViewItemId, TreeViewValidItem } from "../../../models/index.js";
2
- import { MinimalTreeViewParameters } from "../../MinimalTreeViewStore/MinimalTreeViewStore.types.js";
1
+ import type { TreeViewItemId, TreeViewValidItem } from "../../../models/index.js";
2
+ import type { MinimalTreeViewParameters } from "../../MinimalTreeViewStore/MinimalTreeViewStore.types.js";
3
3
  export declare class TreeViewItemsPlugin<R extends TreeViewValidItem<R>> {
4
4
  private store;
5
5
  constructor(store: any);
@@ -1,6 +1,6 @@
1
- import { TreeViewItemMeta } from "../../models/index.mjs";
2
- import { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.mjs";
3
- import { RichTreeViewState } from "../../RichTreeViewStore/index.mjs";
1
+ import type { TreeViewItemMeta } from "../../models/index.mjs";
2
+ import type { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.mjs";
3
+ import type { RichTreeViewState } from "../../RichTreeViewStore/index.mjs";
4
4
  export declare const itemsSelectors: {
5
5
  /**
6
6
  * Gets the DOM structure of the Tree View.
@@ -1,6 +1,6 @@
1
- import { TreeViewItemMeta } from "../../models/index.js";
2
- import { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.js";
3
- import { RichTreeViewState } from "../../RichTreeViewStore/index.js";
1
+ import type { TreeViewItemMeta } from "../../models/index.js";
2
+ import type { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.js";
3
+ import type { RichTreeViewState } from "../../RichTreeViewStore/index.js";
4
4
  export declare const itemsSelectors: {
5
5
  /**
6
6
  * Gets the DOM structure of the Tree View.
@@ -1,5 +1,5 @@
1
- import { TreeViewValidItem, TreeViewItemId } from "../../../models/index.mjs";
2
- import { TreeViewItemMeta } from "../../models/index.mjs";
1
+ import type { TreeViewValidItem, TreeViewItemId } from "../../../models/index.mjs";
2
+ import type { TreeViewItemMeta } from "../../models/index.mjs";
3
3
  import type { MinimalTreeViewParameters } from "../../MinimalTreeViewStore/index.mjs";
4
4
  export declare const TREE_VIEW_ROOT_PARENT_ID = "__TREE_VIEW_ROOT_PARENT_ID__";
5
5
  export declare const buildSiblingIndexes: (siblings: string[]) => {
@@ -1,5 +1,5 @@
1
- import { TreeViewValidItem, TreeViewItemId } from "../../../models/index.js";
2
- import { TreeViewItemMeta } from "../../models/index.js";
1
+ import type { TreeViewValidItem, TreeViewItemId } from "../../../models/index.js";
2
+ import type { TreeViewItemMeta } from "../../models/index.js";
3
3
  import type { MinimalTreeViewParameters } from "../../MinimalTreeViewStore/index.js";
4
4
  export declare const TREE_VIEW_ROOT_PARENT_ID = "__TREE_VIEW_ROOT_PARENT_ID__";
5
5
  export declare const buildSiblingIndexes: (siblings: string[]) => {
@@ -1,5 +1,5 @@
1
- import { TreeViewItemId } from "../../../models/index.mjs";
2
- import { TreeViewItemMeta } from "../../models/index.mjs";
1
+ import type { TreeViewItemId } from "../../../models/index.mjs";
2
+ import type { TreeViewItemMeta } from "../../models/index.mjs";
3
3
  import type { SimpleTreeViewStore } from "../../SimpleTreeViewStore/index.mjs";
4
4
  export declare class TreeViewJSXItemsPlugin {
5
5
  private store;
@@ -1,5 +1,5 @@
1
- import { TreeViewItemId } from "../../../models/index.js";
2
- import { TreeViewItemMeta } from "../../models/index.js";
1
+ import type { TreeViewItemId } from "../../../models/index.js";
2
+ import type { TreeViewItemMeta } from "../../models/index.js";
3
3
  import type { SimpleTreeViewStore } from "../../SimpleTreeViewStore/index.js";
4
4
  export declare class TreeViewJSXItemsPlugin {
5
5
  private store;
@@ -118,7 +118,8 @@ Two items were provided with the same id in the \`items\` prop: "${item.id}"` :
118
118
 
119
119
  // If a parent was selected while its children were unmounted (collapsed with unmountOnExit),
120
120
  // re-run selection propagation now that the children are registered.
121
- if (parentId !== null && _selectors.selectionSelectors.isItemSelected(this.store.state, parentId)) {
121
+ // The multiSelect guard matches the documented contract: selectionPropagation only works with multiSelect.
122
+ if (parentId !== null && _selectors.selectionSelectors.isMultiSelectEnabled(this.store.state) && _selectors.selectionSelectors.propagationRules(this.store.state).descendants && _selectors.selectionSelectors.isItemSelected(this.store.state, parentId)) {
122
123
  this.store.selection.setItemSelection({
123
124
  itemId: parentId,
124
125
  shouldBeSelected: true,
@@ -111,7 +111,8 @@ Two items were provided with the same id in the \`items\` prop: "${item.id}"` :
111
111
 
112
112
  // If a parent was selected while its children were unmounted (collapsed with unmountOnExit),
113
113
  // re-run selection propagation now that the children are registered.
114
- if (parentId !== null && selectionSelectors.isItemSelected(this.store.state, parentId)) {
114
+ // The multiSelect guard matches the documented contract: selectionPropagation only works with multiSelect.
115
+ if (parentId !== null && selectionSelectors.isMultiSelectEnabled(this.store.state) && selectionSelectors.propagationRules(this.store.state).descendants && selectionSelectors.isItemSelected(this.store.state, parentId)) {
115
116
  this.store.selection.setItemSelection({
116
117
  itemId: parentId,
117
118
  shouldBeSelected: true,
@@ -1,4 +1,4 @@
1
- import { TreeItemWrapper, TreeViewItemPlugin } from "../../models/index.mjs";
2
- import { SimpleTreeViewStore } from "../../SimpleTreeViewStore/index.mjs";
1
+ import type { TreeItemWrapper, TreeViewItemPlugin } from "../../models/index.mjs";
2
+ import type { SimpleTreeViewStore } from "../../SimpleTreeViewStore/index.mjs";
3
3
  export declare const useJSXItemsItemPlugin: TreeViewItemPlugin;
4
4
  export declare const jsxItemsitemWrapper: TreeItemWrapper<SimpleTreeViewStore<any>>;
@@ -1,4 +1,4 @@
1
- import { TreeItemWrapper, TreeViewItemPlugin } from "../../models/index.js";
2
- import { SimpleTreeViewStore } from "../../SimpleTreeViewStore/index.js";
1
+ import type { TreeItemWrapper, TreeViewItemPlugin } from "../../models/index.js";
2
+ import type { SimpleTreeViewStore } from "../../SimpleTreeViewStore/index.js";
3
3
  export declare const useJSXItemsItemPlugin: TreeViewItemPlugin;
4
4
  export declare const jsxItemsitemWrapper: TreeItemWrapper<SimpleTreeViewStore<any>>;
@@ -1,4 +1,4 @@
1
- import { TreeViewCancellableEvent, TreeViewItemId } from "../../../models/index.mjs";
1
+ import type { TreeViewCancellableEvent, TreeViewItemId } from "../../../models/index.mjs";
2
2
  type TreeViewLabelMap = {
3
3
  [itemId: string]: string;
4
4
  };
@@ -1,4 +1,4 @@
1
- import { TreeViewCancellableEvent, TreeViewItemId } from "../../../models/index.js";
1
+ import type { TreeViewCancellableEvent, TreeViewItemId } from "../../../models/index.js";
2
2
  type TreeViewLabelMap = {
3
3
  [itemId: string]: string;
4
4
  };
@@ -1,5 +1,5 @@
1
- import { ExtendableRichTreeViewStore } from "../../RichTreeViewStore/RichTreeViewStore.mjs";
2
- import { TreeViewItemId } from "../../../models/index.mjs";
1
+ import type { ExtendableRichTreeViewStore } from "../../RichTreeViewStore/RichTreeViewStore.mjs";
2
+ import type { TreeViewItemId } from "../../../models/index.mjs";
3
3
  export declare class TreeViewLabelEditingPlugin {
4
4
  private store;
5
5
  constructor(store: ExtendableRichTreeViewStore<any, any>);
@@ -1,5 +1,5 @@
1
- import { ExtendableRichTreeViewStore } from "../../RichTreeViewStore/RichTreeViewStore.js";
2
- import { TreeViewItemId } from "../../../models/index.js";
1
+ import type { ExtendableRichTreeViewStore } from "../../RichTreeViewStore/RichTreeViewStore.js";
2
+ import type { TreeViewItemId } from "../../../models/index.js";
3
3
  export declare class TreeViewLabelEditingPlugin {
4
4
  private store;
5
5
  constructor(store: ExtendableRichTreeViewStore<any, any>);
@@ -1,5 +1,5 @@
1
- import { TreeViewItemPlugin } from "../../models/index.mjs";
2
- import { TreeItemLabelInputProps } from "../../../TreeItemLabelInput/index.mjs";
1
+ import type { TreeViewItemPlugin } from "../../models/index.mjs";
2
+ import type { TreeItemLabelInputProps } from "../../../TreeItemLabelInput/index.mjs";
3
3
  export declare const useLabelEditingItemPlugin: TreeViewItemPlugin;
4
4
  interface UseTreeItemLabelInputSlotPropsFromLabelEditing extends TreeItemLabelInputProps {}
5
5
  interface UseTreeItemLabelSlotPropsFromLabelEditing {
@@ -1,5 +1,5 @@
1
- import { TreeViewItemPlugin } from "../../models/index.js";
2
- import { TreeItemLabelInputProps } from "../../../TreeItemLabelInput/index.js";
1
+ import type { TreeViewItemPlugin } from "../../models/index.js";
2
+ import type { TreeItemLabelInputProps } from "../../../TreeItemLabelInput/index.js";
3
3
  export declare const useLabelEditingItemPlugin: TreeViewItemPlugin;
4
4
  interface UseTreeItemLabelInputSlotPropsFromLabelEditing extends TreeItemLabelInputProps {}
5
5
  interface UseTreeItemLabelSlotPropsFromLabelEditing {
@@ -1,4 +1,4 @@
1
- import { RichTreeViewState } from "../../RichTreeViewStore/index.mjs";
1
+ import type { RichTreeViewState } from "../../RichTreeViewStore/index.mjs";
2
2
  export declare const labelSelectors: {
3
3
  /**
4
4
  * Checks whether an item is editable.
@@ -1,4 +1,4 @@
1
- import { RichTreeViewState } from "../../RichTreeViewStore/index.js";
1
+ import type { RichTreeViewState } from "../../RichTreeViewStore/index.js";
2
2
  export declare const labelSelectors: {
3
3
  /**
4
4
  * Checks whether an item is editable.
@@ -1,4 +1,4 @@
1
- import { RichTreeViewState } from "../../RichTreeViewStore/index.mjs";
1
+ import type { RichTreeViewState } from "../../RichTreeViewStore/index.mjs";
2
2
  export declare const lazyLoadingSelectors: {
3
3
  /**
4
4
  * Checks if the lazy loaded state is empty.
@@ -1,4 +1,4 @@
1
- import { RichTreeViewState } from "../../RichTreeViewStore/index.js";
1
+ import type { RichTreeViewState } from "../../RichTreeViewStore/index.js";
2
2
  export declare const lazyLoadingSelectors: {
3
3
  /**
4
4
  * Checks if the lazy loaded state is empty.
@@ -1,4 +1,4 @@
1
- import { TreeViewItemId } from "../../../models/index.mjs";
1
+ import type { TreeViewItemId } from "../../../models/index.mjs";
2
2
  export interface RichTreeViewLazyLoadedItemsStatus {
3
3
  loading: Record<TreeViewItemId, boolean>;
4
4
  errors: Record<TreeViewItemId, Error | null>;
@@ -1,4 +1,4 @@
1
- import { TreeViewItemId } from "../../../models/index.js";
1
+ import type { TreeViewItemId } from "../../../models/index.js";
2
2
  export interface RichTreeViewLazyLoadedItemsStatus {
3
3
  loading: Record<TreeViewItemId, boolean>;
4
4
  errors: Record<TreeViewItemId, Error | null>;
@@ -1,6 +1,6 @@
1
- import * as React from 'react';
2
- import { TreeViewCancellableEventHandler } from "../../../models/index.mjs";
3
- import { TreeViewItemPlugin } from "../../models/index.mjs";
1
+ import type * as React from 'react';
2
+ import type { TreeViewCancellableEventHandler } from "../../../models/index.mjs";
3
+ import type { TreeViewItemPlugin } from "../../models/index.mjs";
4
4
  export declare const useSelectionItemPlugin: TreeViewItemPlugin;
5
5
  interface UseTreeItemRootSlotPropsFromSelection {
6
6
  'aria-checked': React.AriaAttributes['aria-checked'];
@@ -1,6 +1,6 @@
1
- import * as React from 'react';
2
- import { TreeViewCancellableEventHandler } from "../../../models/index.js";
3
- import { TreeViewItemPlugin } from "../../models/index.js";
1
+ import type * as React from 'react';
2
+ import type { TreeViewCancellableEventHandler } from "../../../models/index.js";
3
+ import type { TreeViewItemPlugin } from "../../models/index.js";
4
4
  export declare const useSelectionItemPlugin: TreeViewItemPlugin;
5
5
  interface UseTreeItemRootSlotPropsFromSelection {
6
6
  'aria-checked': React.AriaAttributes['aria-checked'];
@@ -1,4 +1,4 @@
1
- import { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.mjs";
1
+ import type { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.mjs";
2
2
  export declare const selectionSelectors: {
3
3
  /**
4
4
  * Gets the selected items as provided to the component.
@@ -1,4 +1,4 @@
1
- import { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.js";
1
+ import type { MinimalTreeViewState } from "../../MinimalTreeViewStore/index.js";
2
2
  export declare const selectionSelectors: {
3
3
  /**
4
4
  * Gets the selected items as provided to the component.
@@ -1,4 +1,4 @@
1
- import { MinimalTreeViewState } from "../MinimalTreeViewStore/index.mjs";
1
+ import type { MinimalTreeViewState } from "../MinimalTreeViewStore/index.mjs";
2
2
  export declare const getPreviousNavigableItem: (state: MinimalTreeViewState<any, any>, itemId: string) => string | null;
3
3
  export declare const getNextNavigableItem: (state: MinimalTreeViewState<any, any>, itemId: string) => string | null;
4
4
  export declare const getLastNavigableItem: (state: MinimalTreeViewState<any, any>) => string;
@@ -1,4 +1,4 @@
1
- import { MinimalTreeViewState } from "../MinimalTreeViewStore/index.js";
1
+ import type { MinimalTreeViewState } from "../MinimalTreeViewStore/index.js";
2
2
  export declare const getPreviousNavigableItem: (state: MinimalTreeViewState<any, any>, itemId: string) => string | null;
3
3
  export declare const getNextNavigableItem: (state: MinimalTreeViewState<any, any>, itemId: string) => string | null;
4
4
  export declare const getLastNavigableItem: (state: MinimalTreeViewState<any, any>) => string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-tree-view",
3
- "version": "9.7.0",
3
+ "version": "9.9.0",
4
4
  "author": "MUI Team",
5
5
  "description": "The community edition of the MUI X Tree View components.",
6
6
  "license": "MIT",
@@ -33,12 +33,12 @@
33
33
  "dependencies": {
34
34
  "@babel/runtime": "^7.29.7",
35
35
  "@base-ui/utils": "^0.3.0",
36
- "@mui/utils": "^9.1.1",
36
+ "@mui/utils": "^9.2.0",
37
37
  "@types/react-transition-group": "^4.4.12",
38
38
  "clsx": "^2.1.1",
39
39
  "prop-types": "^15.8.1",
40
40
  "react-transition-group": "^4.4.5",
41
- "@mui/x-internals": "^9.7.0"
41
+ "@mui/x-internals": "^9.9.0"
42
42
  },
43
43
  "peerDependencies": {
44
44
  "@emotion/react": "^11.9.0",
@@ -1,4 +1,4 @@
1
- import { ComponentsProps, ComponentsOverrides, ComponentsVariants } from '@mui/material/styles';
1
+ import type { ComponentsProps, ComponentsOverrides, ComponentsVariants } from '@mui/material/styles';
2
2
  export interface TreeViewComponents<Theme = unknown> {
3
3
  MuiSimpleTreeView?: {
4
4
  defaultProps?: ComponentsProps['MuiSimpleTreeView'];
@@ -1,4 +1,4 @@
1
- import { ComponentsProps, ComponentsOverrides, ComponentsVariants } from '@mui/material/styles';
1
+ import type { ComponentsProps, ComponentsOverrides, ComponentsVariants } from '@mui/material/styles';
2
2
  export interface TreeViewComponents<Theme = unknown> {
3
3
  MuiSimpleTreeView?: {
4
4
  defaultProps?: ComponentsProps['MuiSimpleTreeView'];
@@ -1,6 +1,6 @@
1
- import { RichTreeViewClassKey } from "../RichTreeView/index.mjs";
2
- import { SimpleTreeViewClassKey } from "../SimpleTreeView/index.mjs";
3
- import { TreeItemClassKey } from "../TreeItem/index.mjs";
1
+ import type { RichTreeViewClassKey } from "../RichTreeView/index.mjs";
2
+ import type { SimpleTreeViewClassKey } from "../SimpleTreeView/index.mjs";
3
+ import type { TreeItemClassKey } from "../TreeItem/index.mjs";
4
4
  export interface TreeViewComponentNameToClassKey {
5
5
  MuiSimpleTreeView: SimpleTreeViewClassKey;
6
6
  MuiRichTreeView: RichTreeViewClassKey;
@@ -1,6 +1,6 @@
1
- import { RichTreeViewClassKey } from "../RichTreeView/index.js";
2
- import { SimpleTreeViewClassKey } from "../SimpleTreeView/index.js";
3
- import { TreeItemClassKey } from "../TreeItem/index.js";
1
+ import type { RichTreeViewClassKey } from "../RichTreeView/index.js";
2
+ import type { SimpleTreeViewClassKey } from "../SimpleTreeView/index.js";
3
+ import type { TreeItemClassKey } from "../TreeItem/index.js";
4
4
  export interface TreeViewComponentNameToClassKey {
5
5
  MuiSimpleTreeView: SimpleTreeViewClassKey;
6
6
  MuiRichTreeView: RichTreeViewClassKey;
@@ -1,6 +1,6 @@
1
- import { SimpleTreeViewProps } from "../SimpleTreeView/index.mjs";
2
- import { RichTreeViewProps } from "../RichTreeView/index.mjs";
3
- import { TreeItemProps } from "../TreeItem/index.mjs";
1
+ import type { SimpleTreeViewProps } from "../SimpleTreeView/index.mjs";
2
+ import type { RichTreeViewProps } from "../RichTreeView/index.mjs";
3
+ import type { TreeItemProps } from "../TreeItem/index.mjs";
4
4
  export interface TreeViewComponentsPropsList {
5
5
  MuiSimpleTreeView: SimpleTreeViewProps<any>;
6
6
  MuiRichTreeView: RichTreeViewProps<any, any>;
@@ -1,6 +1,6 @@
1
- import { SimpleTreeViewProps } from "../SimpleTreeView/index.js";
2
- import { RichTreeViewProps } from "../RichTreeView/index.js";
3
- import { TreeItemProps } from "../TreeItem/index.js";
1
+ import type { SimpleTreeViewProps } from "../SimpleTreeView/index.js";
2
+ import type { RichTreeViewProps } from "../RichTreeView/index.js";
3
+ import type { TreeItemProps } from "../TreeItem/index.js";
4
4
  export interface TreeViewComponentsPropsList {
5
5
  MuiSimpleTreeView: SimpleTreeViewProps<any>;
6
6
  MuiRichTreeView: RichTreeViewProps<any, any>;
@@ -1,7 +1,7 @@
1
- import { TreeViewItemId } from "../models/index.mjs";
2
- import { UseTreeItemParameters, UseTreeItemReturnValue } from "./useTreeItem.types.mjs";
3
- import { TreeViewAnyStore, TreeViewPublicAPI } from "../internals/models/index.mjs";
4
- import { RichTreeViewStore } from "../internals/RichTreeViewStore/index.mjs";
1
+ import type { TreeViewItemId } from "../models/index.mjs";
2
+ import type { UseTreeItemParameters, UseTreeItemReturnValue } from "./useTreeItem.types.mjs";
3
+ import type { TreeViewAnyStore, TreeViewPublicAPI } from "../internals/models/index.mjs";
4
+ import type { RichTreeViewStore } from "../internals/RichTreeViewStore/index.mjs";
5
5
  interface DefaultStore extends RichTreeViewStore<any, any> {
6
6
  buildPublicAPI: () => TreeViewPublicAPI<RichTreeViewStore<any, any>> & {
7
7
  /**
@@ -1,7 +1,7 @@
1
- import { TreeViewItemId } from "../models/index.js";
2
- import { UseTreeItemParameters, UseTreeItemReturnValue } from "./useTreeItem.types.js";
3
- import { TreeViewAnyStore, TreeViewPublicAPI } from "../internals/models/index.js";
4
- import { RichTreeViewStore } from "../internals/RichTreeViewStore/index.js";
1
+ import type { TreeViewItemId } from "../models/index.js";
2
+ import type { UseTreeItemParameters, UseTreeItemReturnValue } from "./useTreeItem.types.js";
3
+ import type { TreeViewAnyStore, TreeViewPublicAPI } from "../internals/models/index.js";
4
+ import type { RichTreeViewStore } from "../internals/RichTreeViewStore/index.js";
5
5
  interface DefaultStore extends RichTreeViewStore<any, any> {
6
6
  buildPublicAPI: () => TreeViewPublicAPI<RichTreeViewStore<any, any>> & {
7
7
  /**
@@ -1,6 +1,6 @@
1
- import * as React from 'react';
2
- import { TreeViewItemId, TreeViewCancellableEventHandler } from "../models/index.mjs";
3
- import { TreeViewPublicAPI, TreeViewAnyStore } from "../internals/models/index.mjs";
1
+ import type * as React from 'react';
2
+ import type { TreeViewItemId, TreeViewCancellableEventHandler } from "../models/index.mjs";
3
+ import type { TreeViewPublicAPI, TreeViewAnyStore } from "../internals/models/index.mjs";
4
4
  export interface UseTreeItemParameters {
5
5
  /**
6
6
  * The id attribute of the item. If not provided, it will be generated.