@mui/x-tree-view 8.16.0 → 8.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +208 -1
- package/RichTreeView/RichTreeView.js +11 -11
- package/SimpleTreeView/SimpleTreeView.js +10 -10
- package/TreeItem/TreeItem.d.ts +1 -1
- package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.d.ts +1 -2
- package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.js +0 -2
- package/TreeItemIcon/TreeItemIcon.d.ts +1 -2
- package/TreeItemProvider/TreeItemProvider.d.ts +1 -2
- package/esm/RichTreeView/RichTreeView.js +11 -11
- package/esm/SimpleTreeView/SimpleTreeView.js +10 -10
- package/esm/TreeItem/TreeItem.d.ts +1 -1
- package/esm/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.d.ts +1 -2
- package/esm/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.js +0 -1
- package/esm/TreeItemIcon/TreeItemIcon.d.ts +1 -2
- package/esm/TreeItemProvider/TreeItemProvider.d.ts +1 -2
- package/esm/icons/icons.js +0 -1
- package/esm/index.js +1 -1
- package/esm/internals/TreeViewProvider/TreeViewChildrenItemProvider.d.ts +1 -1
- package/esm/internals/TreeViewProvider/TreeViewProvider.d.ts +1 -2
- package/esm/internals/components/RichTreeViewItems.d.ts +1 -1
- package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +1 -1
- package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +11 -11
- package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +5 -4
- package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.types.d.ts +7 -7
- package/esm/internals/plugins/useTreeViewJSXItems/itemPlugin.d.ts +2 -0
- package/esm/internals/plugins/useTreeViewJSXItems/itemPlugin.js +74 -0
- package/esm/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +2 -71
- package/esm/internals/plugins/useTreeViewLabel/itemPlugin.d.ts +11 -0
- package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +1 -1
- package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.d.ts +2 -11
- package/esm/internals/plugins/useTreeViewSelection/itemPlugin.d.ts +20 -0
- package/esm/internals/plugins/useTreeViewSelection/{useTreeViewSelection.itemPlugin.js → itemPlugin.js} +23 -3
- package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +1 -1
- package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +20 -31
- package/esm/models/items.d.ts +1 -0
- package/esm/useTreeItem/useTreeItem.js +0 -15
- package/esm/useTreeItem/useTreeItem.types.d.ts +0 -1
- package/icons/icons.js +0 -2
- package/index.js +1 -1
- package/internals/TreeViewProvider/TreeViewChildrenItemProvider.d.ts +1 -1
- package/internals/TreeViewProvider/TreeViewProvider.d.ts +1 -2
- package/internals/components/RichTreeViewItems.d.ts +1 -1
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +1 -1
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +11 -11
- package/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +5 -4
- package/internals/plugins/useTreeViewItems/useTreeViewItems.types.d.ts +7 -7
- package/internals/plugins/useTreeViewJSXItems/itemPlugin.d.ts +2 -0
- package/internals/plugins/useTreeViewJSXItems/itemPlugin.js +81 -0
- package/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +2 -71
- package/internals/plugins/useTreeViewLabel/itemPlugin.d.ts +11 -0
- package/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +4 -4
- package/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.d.ts +2 -11
- package/internals/plugins/useTreeViewSelection/itemPlugin.d.ts +20 -0
- package/internals/plugins/useTreeViewSelection/{useTreeViewSelection.itemPlugin.js → itemPlugin.js} +23 -3
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +2 -2
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +20 -31
- package/models/items.d.ts +1 -0
- package/package.json +3 -3
- package/useTreeItem/useTreeItem.js +0 -15
- package/useTreeItem/useTreeItem.types.d.ts +0 -1
- package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.d.ts +0 -2
- package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.d.ts +0 -2
- package/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.d.ts +0 -2
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.d.ts +0 -2
- /package/esm/internals/plugins/useTreeViewLabel/{useTreeViewLabel.itemPlugin.js → itemPlugin.js} +0 -0
- /package/internals/plugins/useTreeViewLabel/{useTreeViewLabel.itemPlugin.js → itemPlugin.js} +0 -0
|
@@ -3,18 +3,18 @@ import type { DefaultizedProps } from '@mui/x-internals/types';
|
|
|
3
3
|
import type { TreeViewPluginSignature } from "../../models/index.js";
|
|
4
4
|
import { UseTreeViewItemsSignature } from "../useTreeViewItems/index.js";
|
|
5
5
|
import { UseTreeViewExpansionSignature } from "../useTreeViewExpansion/index.js";
|
|
6
|
-
import { TreeViewSelectionPropagation,
|
|
6
|
+
import { TreeViewSelectionPropagation, TreeViewItemId } from "../../../models/index.js";
|
|
7
7
|
export interface UseTreeViewSelectionPublicAPI {
|
|
8
8
|
/**
|
|
9
9
|
* Select or deselect an item.
|
|
10
10
|
* @param {object} parameters The parameters of the method.
|
|
11
|
-
* @param {
|
|
11
|
+
* @param {TreeViewItemId} parameters.itemId The id of the item to select or deselect.
|
|
12
12
|
* @param {React.SyntheticEvent} parameters.event The DOM event that triggered the change.
|
|
13
13
|
* @param {boolean} parameters.keepExistingSelection If `true`, the other already selected items will remain selected, otherwise, they will be deselected. This parameter is only relevant when `multiSelect` is `true`
|
|
14
14
|
* @param {boolean | undefined} parameters.shouldBeSelected If `true` the item will be selected. If `false` the item will be deselected. If not defined, the item's selection status will be toggled.
|
|
15
15
|
*/
|
|
16
16
|
setItemSelection: (parameters: {
|
|
17
|
-
itemId:
|
|
17
|
+
itemId: TreeViewItemId;
|
|
18
18
|
event?: React.SyntheticEvent;
|
|
19
19
|
shouldBeSelected?: boolean;
|
|
20
20
|
keepExistingSelection?: boolean;
|
|
@@ -29,33 +29,33 @@ export interface UseTreeViewSelectionInstance extends UseTreeViewSelectionPublic
|
|
|
29
29
|
/**
|
|
30
30
|
* Expand the current selection range up to the given item.
|
|
31
31
|
* @param {React.SyntheticEvent} event The DOM event that triggered the change.
|
|
32
|
-
* @param {
|
|
32
|
+
* @param {TreeViewItemId} itemId The id of the item to expand the selection to.
|
|
33
33
|
*/
|
|
34
|
-
expandSelectionRange: (event: React.SyntheticEvent, itemId:
|
|
34
|
+
expandSelectionRange: (event: React.SyntheticEvent, itemId: TreeViewItemId) => void;
|
|
35
35
|
/**
|
|
36
36
|
* Expand the current selection range from the first navigable item to the given item.
|
|
37
37
|
* @param {React.SyntheticEvent} event The DOM event that triggered the change.
|
|
38
|
-
* @param {
|
|
38
|
+
* @param {TreeViewItemId} itemId The id of the item up to which the selection range should be expanded.
|
|
39
39
|
*/
|
|
40
|
-
selectRangeFromStartToItem: (event: React.SyntheticEvent, itemId:
|
|
40
|
+
selectRangeFromStartToItem: (event: React.SyntheticEvent, itemId: TreeViewItemId) => void;
|
|
41
41
|
/**
|
|
42
42
|
* Expand the current selection range from the given item to the last navigable item.
|
|
43
43
|
* @param {React.SyntheticEvent} event The DOM event that triggered the change.
|
|
44
|
-
* @param {
|
|
44
|
+
* @param {TreeViewItemId} itemId The id of the item from which the selection range should be expanded.
|
|
45
45
|
*/
|
|
46
|
-
selectRangeFromItemToEnd: (event: React.SyntheticEvent, itemId:
|
|
46
|
+
selectRangeFromItemToEnd: (event: React.SyntheticEvent, itemId: TreeViewItemId) => void;
|
|
47
47
|
/**
|
|
48
48
|
* Update the selection when navigating with ArrowUp / ArrowDown keys.
|
|
49
49
|
* @param {React.SyntheticEvent} event The DOM event that triggered the change.
|
|
50
|
-
* @param {
|
|
51
|
-
* @param {
|
|
50
|
+
* @param {TreeViewItemId} currentItemId The id of the active item before the keyboard navigation.
|
|
51
|
+
* @param {TreeViewItemId} nextItemId The id of the active item after the keyboard navigation.
|
|
52
52
|
*/
|
|
53
|
-
selectItemFromArrowNavigation: (event: React.SyntheticEvent, currentItemId:
|
|
53
|
+
selectItemFromArrowNavigation: (event: React.SyntheticEvent, currentItemId: TreeViewItemId, nextItemId: TreeViewItemId) => void;
|
|
54
54
|
}
|
|
55
|
-
export type TreeViewSelectionValue<Multiple extends boolean | undefined> = Multiple extends true ?
|
|
55
|
+
export type TreeViewSelectionValue<Multiple extends boolean | undefined> = Multiple extends true ? TreeViewItemId[] : TreeViewItemId | null;
|
|
56
56
|
export interface UseTreeViewSelectionParameters<Multiple extends boolean | undefined> {
|
|
57
57
|
/**
|
|
58
|
-
*
|
|
58
|
+
* Whether selection is disabled.
|
|
59
59
|
* @default false
|
|
60
60
|
*/
|
|
61
61
|
disableSelection?: boolean;
|
|
@@ -71,12 +71,12 @@ export interface UseTreeViewSelectionParameters<Multiple extends boolean | undef
|
|
|
71
71
|
*/
|
|
72
72
|
selectedItems?: TreeViewSelectionValue<Multiple>;
|
|
73
73
|
/**
|
|
74
|
-
*
|
|
74
|
+
* Whether multiple items can be selected.
|
|
75
75
|
* @default false
|
|
76
76
|
*/
|
|
77
77
|
multiSelect?: Multiple;
|
|
78
78
|
/**
|
|
79
|
-
*
|
|
79
|
+
* Whether the Tree View renders a checkbox at the left of its label that allows selecting it.
|
|
80
80
|
* @default false
|
|
81
81
|
*/
|
|
82
82
|
checkboxSelection?: boolean;
|
|
@@ -100,17 +100,17 @@ export interface UseTreeViewSelectionParameters<Multiple extends boolean | undef
|
|
|
100
100
|
/**
|
|
101
101
|
* Callback fired when Tree Items are selected/deselected.
|
|
102
102
|
* @param {React.SyntheticEvent} event The DOM event that triggered the change. Can be null when the change is caused by the `publicAPI.setItemSelection()` method.
|
|
103
|
-
* @param {
|
|
103
|
+
* @param {TreeViewItemId[] | TreeViewItemId} itemIds The ids of the selected items.
|
|
104
104
|
* When `multiSelect` is `true`, this is an array of strings; when false (default) a string.
|
|
105
105
|
*/
|
|
106
106
|
onSelectedItemsChange?: (event: React.SyntheticEvent | null, itemIds: TreeViewSelectionValue<Multiple>) => void;
|
|
107
107
|
/**
|
|
108
108
|
* Callback fired when a Tree Item is selected or deselected.
|
|
109
109
|
* @param {React.SyntheticEvent} event The DOM event that triggered the change. Can be null when the change is caused by the `publicAPI.setItemSelection()` method.
|
|
110
|
-
* @param {
|
|
110
|
+
* @param {TreeViewItemId} itemId The itemId of the modified item.
|
|
111
111
|
* @param {boolean} isSelected `true` if the item has just been selected, `false` if it has just been deselected.
|
|
112
112
|
*/
|
|
113
|
-
onItemSelectionToggle?: (event: React.SyntheticEvent | null, itemId:
|
|
113
|
+
onItemSelectionToggle?: (event: React.SyntheticEvent | null, itemId: TreeViewItemId, isSelected: boolean) => void;
|
|
114
114
|
}
|
|
115
115
|
export type UseTreeViewSelectionParametersWithDefaults<Multiple extends boolean> = DefaultizedProps<UseTreeViewSelectionParameters<Multiple>, 'disableSelection' | 'defaultSelectedItems' | 'multiSelect' | 'checkboxSelection' | 'selectionPropagation'>;
|
|
116
116
|
export interface UseTreeViewSelectionState {
|
|
@@ -129,15 +129,4 @@ export type UseTreeViewSelectionSignature = TreeViewPluginSignature<{
|
|
|
129
129
|
publicAPI: UseTreeViewSelectionPublicAPI;
|
|
130
130
|
state: UseTreeViewSelectionState;
|
|
131
131
|
dependencies: [UseTreeViewItemsSignature, UseTreeViewExpansionSignature, UseTreeViewItemsSignature];
|
|
132
|
-
}>;
|
|
133
|
-
export interface UseTreeItemCheckboxSlotPropsFromSelection {
|
|
134
|
-
visible?: boolean;
|
|
135
|
-
checked?: boolean;
|
|
136
|
-
indeterminate?: boolean;
|
|
137
|
-
disabled?: boolean;
|
|
138
|
-
tabIndex?: -1;
|
|
139
|
-
onChange?: TreeViewCancellableEventHandler<React.ChangeEvent<HTMLInputElement>>;
|
|
140
|
-
}
|
|
141
|
-
declare module '@mui/x-tree-view/useTreeItem' {
|
|
142
|
-
interface UseTreeItemCheckboxSlotOwnProps extends UseTreeItemCheckboxSlotPropsFromSelection {}
|
|
143
|
-
}
|
|
132
|
+
}>;
|
package/esm/models/items.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ export type TreeViewItemId = string;
|
|
|
2
2
|
export type TreeViewDefaultItemModelProperties = {
|
|
3
3
|
id: string;
|
|
4
4
|
label: string;
|
|
5
|
+
children?: TreeViewDefaultItemModelProperties[];
|
|
5
6
|
};
|
|
6
7
|
export type TreeViewBaseItem<R extends {} = TreeViewDefaultItemModelProperties> = R & {
|
|
7
8
|
children?: TreeViewBaseItem<R>[];
|
|
@@ -54,7 +54,6 @@ export const useTreeItem = parameters => {
|
|
|
54
54
|
const handleContentRef = useMergedRefs(contentRef, contentRefObject);
|
|
55
55
|
const checkboxRef = React.useRef(null);
|
|
56
56
|
const treeId = useStore(store, idSelectors.treeId);
|
|
57
|
-
const isSelectionEnabledForItem = useStore(store, selectionSelectors.canItemBeSelected, itemId);
|
|
58
57
|
const isCheckboxSelectionEnabled = useStore(store, selectionSelectors.isCheckboxSelectionEnabled);
|
|
59
58
|
const idAttribute = generateTreeItemIdAttribute({
|
|
60
59
|
itemId,
|
|
@@ -147,26 +146,12 @@ export const useTreeItem = parameters => {
|
|
|
147
146
|
});
|
|
148
147
|
const getRootProps = (externalProps = {}) => {
|
|
149
148
|
const externalEventHandlers = _extends({}, extractEventHandlers(parameters), extractEventHandlers(externalProps));
|
|
150
|
-
|
|
151
|
-
// https://www.w3.org/WAI/ARIA/apg/patterns/treeview/
|
|
152
|
-
let ariaSelected;
|
|
153
|
-
if (status.selected) {
|
|
154
|
-
// - each selected node has aria-selected set to true.
|
|
155
|
-
ariaSelected = true;
|
|
156
|
-
} else if (!isSelectionEnabledForItem) {
|
|
157
|
-
// - if the tree contains nodes that are not selectable, aria-selected is not present on those nodes.
|
|
158
|
-
ariaSelected = undefined;
|
|
159
|
-
} else {
|
|
160
|
-
// - all nodes that are selectable but not selected have aria-selected set to false.
|
|
161
|
-
ariaSelected = false;
|
|
162
|
-
}
|
|
163
149
|
const props = _extends({}, externalEventHandlers, {
|
|
164
150
|
ref: handleRootRef,
|
|
165
151
|
role: 'treeitem',
|
|
166
152
|
tabIndex: shouldBeAccessibleWithTab ? 0 : -1,
|
|
167
153
|
id: idAttribute,
|
|
168
154
|
'aria-expanded': status.expandable ? status.expanded : undefined,
|
|
169
|
-
'aria-selected': ariaSelected,
|
|
170
155
|
'aria-disabled': status.disabled || undefined
|
|
171
156
|
}, externalProps, {
|
|
172
157
|
style: _extends({}, externalProps.style ?? {}, {
|
|
@@ -42,7 +42,6 @@ export interface UseTreeItemRootSlotPropsFromUseTreeItem {
|
|
|
42
42
|
tabIndex: 0 | -1;
|
|
43
43
|
id: string;
|
|
44
44
|
'aria-expanded': React.AriaAttributes['aria-expanded'];
|
|
45
|
-
'aria-selected': React.AriaAttributes['aria-selected'];
|
|
46
45
|
'aria-disabled': React.AriaAttributes['aria-disabled'];
|
|
47
46
|
onFocus: TreeViewCancellableEventHandler<React.FocusEvent<HTMLElement>>;
|
|
48
47
|
onBlur: TreeViewCancellableEventHandler<React.FocusEvent<HTMLElement>>;
|
package/icons/icons.js
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
3
|
Object.defineProperty(exports, "__esModule", {
|
|
5
4
|
value: true
|
|
6
5
|
});
|
|
7
6
|
exports.TreeViewExpandIcon = exports.TreeViewCollapseIcon = void 0;
|
|
8
7
|
var _utils = require("@mui/material/utils");
|
|
9
|
-
var React = _interopRequireWildcard(require("react"));
|
|
10
8
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
9
|
const TreeViewExpandIcon = exports.TreeViewExpandIcon = (0, _utils.createSvgIcon)(/*#__PURE__*/(0, _jsxRuntime.jsx)("path", {
|
|
12
10
|
d: "M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"
|
package/index.js
CHANGED
|
@@ -5,7 +5,7 @@ interface TreeViewChildrenItemProviderProps {
|
|
|
5
5
|
idAttribute: string | null;
|
|
6
6
|
children: React.ReactNode;
|
|
7
7
|
}
|
|
8
|
-
export declare function TreeViewChildrenItemProvider(props: TreeViewChildrenItemProviderProps):
|
|
8
|
+
export declare function TreeViewChildrenItemProvider(props: TreeViewChildrenItemProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
9
9
|
export declare namespace TreeViewChildrenItemProvider {
|
|
10
10
|
var propTypes: any;
|
|
11
11
|
}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
1
|
import { TreeViewProviderProps } from "./TreeViewProvider.types.js";
|
|
3
2
|
import { TreeViewAnyPluginSignature } from "../models/index.js";
|
|
4
3
|
/**
|
|
@@ -6,4 +5,4 @@ import { TreeViewAnyPluginSignature } from "../models/index.js";
|
|
|
6
5
|
*
|
|
7
6
|
* @ignore - do not document.
|
|
8
7
|
*/
|
|
9
|
-
export declare function TreeViewProvider<TSignatures extends readonly TreeViewAnyPluginSignature[]>(props: TreeViewProviderProps<TSignatures>):
|
|
8
|
+
export declare function TreeViewProvider<TSignatures extends readonly TreeViewAnyPluginSignature[]>(props: TreeViewProviderProps<TSignatures>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -2,7 +2,7 @@ import * as React from 'react';
|
|
|
2
2
|
import { SlotComponentProps } from '@mui/utils/types';
|
|
3
3
|
import { TreeItem, TreeItemProps } from "../../TreeItem/index.js";
|
|
4
4
|
import { TreeViewItemId } from "../../models/index.js";
|
|
5
|
-
export declare function RichTreeViewItems(props: RichTreeViewItemsProps):
|
|
5
|
+
export declare function RichTreeViewItems(props: RichTreeViewItemsProps): import("react/jsx-runtime").JSX.Element;
|
|
6
6
|
interface RichTreeViewItemsOwnerState {
|
|
7
7
|
itemId: TreeViewItemId;
|
|
8
8
|
label: string;
|
|
@@ -4,7 +4,7 @@ export declare const expansionSelectors: {
|
|
|
4
4
|
/**
|
|
5
5
|
* Gets the expanded items as provided to the component.
|
|
6
6
|
*/
|
|
7
|
-
expandedItemsRaw: (state: TreeViewState<[UseTreeViewExpansionSignature]>) => string[];
|
|
7
|
+
expandedItemsRaw: (state: TreeViewState<[UseTreeViewExpansionSignature]>) => readonly string[];
|
|
8
8
|
/**
|
|
9
9
|
* Gets the expanded items as a Map.
|
|
10
10
|
*/
|
|
@@ -8,12 +8,12 @@ export interface UseTreeViewExpansionPublicAPI {
|
|
|
8
8
|
/**
|
|
9
9
|
* Change the expansion status of a given item.
|
|
10
10
|
* @param {object} parameters The parameters of the method.
|
|
11
|
-
* @param {
|
|
11
|
+
* @param {TreeViewItemId} parameters.itemId The id of the item to expand of collapse.
|
|
12
12
|
* @param {React.SyntheticEvent} parameters.event The DOM event that triggered the change.
|
|
13
13
|
* @param {boolean} parameters.shouldBeExpanded If `true` the item will be expanded. If `false` the item will be collapsed. If not defined, the item's expansion status will be the toggled.
|
|
14
14
|
*/
|
|
15
15
|
setItemExpansion: (parameters: {
|
|
16
|
-
itemId:
|
|
16
|
+
itemId: TreeViewItemId;
|
|
17
17
|
event?: React.SyntheticEvent;
|
|
18
18
|
shouldBeExpanded?: boolean;
|
|
19
19
|
}) => void;
|
|
@@ -36,12 +36,12 @@ export interface UseTreeViewExpansionInstance extends Omit<UseTreeViewExpansionP
|
|
|
36
36
|
* Is used by the `setItemExpansion` method and by the `useTreeViewLazyLoading` plugin.
|
|
37
37
|
* Unlike `setItemExpansion`, this method does not trigger the lazy loading.
|
|
38
38
|
* @param {object} parameters The parameters of the method.
|
|
39
|
-
* @param {
|
|
39
|
+
* @param {TreeViewItemId} parameters.itemId The id of the item to expand of collapse.
|
|
40
40
|
* @param {React.SyntheticEvent | null} parameters.event The DOM event that triggered the change.
|
|
41
41
|
* @param {boolean} parameters.shouldBeExpanded If `true` the item will be expanded. If `false` the item will be collapsed.
|
|
42
42
|
*/
|
|
43
43
|
applyItemExpansion: (parameters: {
|
|
44
|
-
itemId:
|
|
44
|
+
itemId: TreeViewItemId;
|
|
45
45
|
event: React.SyntheticEvent | null;
|
|
46
46
|
shouldBeExpanded: boolean;
|
|
47
47
|
}) => void;
|
|
@@ -55,26 +55,26 @@ export interface UseTreeViewExpansionParameters {
|
|
|
55
55
|
* Expanded item ids.
|
|
56
56
|
* Used when the item's expansion is controlled.
|
|
57
57
|
*/
|
|
58
|
-
expandedItems?:
|
|
58
|
+
expandedItems?: readonly TreeViewItemId[];
|
|
59
59
|
/**
|
|
60
60
|
* Expanded item ids.
|
|
61
61
|
* Used when the item's expansion is not controlled.
|
|
62
62
|
* @default []
|
|
63
63
|
*/
|
|
64
|
-
defaultExpandedItems?:
|
|
64
|
+
defaultExpandedItems?: readonly TreeViewItemId[];
|
|
65
65
|
/**
|
|
66
66
|
* Callback fired when Tree Items are expanded/collapsed.
|
|
67
67
|
* @param {React.SyntheticEvent} event The DOM event that triggered the change. Can be null when the change is caused by the `publicAPI.setItemExpansion()` method.
|
|
68
|
-
* @param {
|
|
68
|
+
* @param {TreeViewItemId[]} itemIds The ids of the expanded items.
|
|
69
69
|
*/
|
|
70
|
-
onExpandedItemsChange?: (event: React.SyntheticEvent | null, itemIds:
|
|
70
|
+
onExpandedItemsChange?: (event: React.SyntheticEvent | null, itemIds: TreeViewItemId[]) => void;
|
|
71
71
|
/**
|
|
72
72
|
* Callback fired when a Tree Item is expanded or collapsed.
|
|
73
73
|
* @param {React.SyntheticEvent | null} event The DOM event that triggered the change. Can be null when the change is caused by the `publicAPI.setItemExpansion()` method.
|
|
74
|
-
* @param {
|
|
74
|
+
* @param {TreeViewItemId} itemId The itemId of the modified item.
|
|
75
75
|
* @param {boolean} isExpanded `true` if the item has just been expanded, `false` if it has just been collapsed.
|
|
76
76
|
*/
|
|
77
|
-
onItemExpansionToggle?: (event: React.SyntheticEvent | null, itemId:
|
|
77
|
+
onItemExpansionToggle?: (event: React.SyntheticEvent | null, itemId: TreeViewItemId, isExpanded: boolean) => void;
|
|
78
78
|
/**
|
|
79
79
|
* The slot that triggers the item's expansion when clicked.
|
|
80
80
|
* @default 'content'
|
|
@@ -84,7 +84,7 @@ export interface UseTreeViewExpansionParameters {
|
|
|
84
84
|
export type UseTreeViewExpansionParametersWithDefaults = DefaultizedProps<UseTreeViewExpansionParameters, 'defaultExpandedItems'>;
|
|
85
85
|
export interface UseTreeViewExpansionState {
|
|
86
86
|
expansion: {
|
|
87
|
-
expandedItems:
|
|
87
|
+
expandedItems: readonly TreeViewItemId[];
|
|
88
88
|
expansionTrigger: 'content' | 'iconContainer';
|
|
89
89
|
};
|
|
90
90
|
}
|
|
@@ -3,6 +3,7 @@ import { TreeViewPluginSignature } from "../../models/index.js";
|
|
|
3
3
|
import type { UseTreeViewItemsSignature } from "../useTreeViewItems/index.js";
|
|
4
4
|
import type { UseTreeViewSelectionSignature } from "../useTreeViewSelection/index.js";
|
|
5
5
|
import { UseTreeViewExpansionSignature } from "../useTreeViewExpansion/index.js";
|
|
6
|
+
import { TreeViewItemId } from "../../../models/index.js";
|
|
6
7
|
export interface UseTreeViewFocusPublicAPI {
|
|
7
8
|
/**
|
|
8
9
|
* Focus the item with the given id.
|
|
@@ -12,7 +13,7 @@ export interface UseTreeViewFocusPublicAPI {
|
|
|
12
13
|
* @param {React.SyntheticEvent | null} event The DOM event that triggered the change.
|
|
13
14
|
* @param {TreeViewItemId} itemId The id of the item to focus.
|
|
14
15
|
*/
|
|
15
|
-
focusItem: (event: React.SyntheticEvent | null, itemId:
|
|
16
|
+
focusItem: (event: React.SyntheticEvent | null, itemId: TreeViewItemId) => void;
|
|
16
17
|
}
|
|
17
18
|
export interface UseTreeViewFocusInstance extends UseTreeViewFocusPublicAPI {
|
|
18
19
|
/**
|
|
@@ -24,14 +25,14 @@ export interface UseTreeViewFocusParameters {
|
|
|
24
25
|
/**
|
|
25
26
|
* Callback fired when a given Tree Item is focused.
|
|
26
27
|
* @param {React.SyntheticEvent | null} event The DOM event that triggered the change. **Warning**: This is a generic event not a focus event.
|
|
27
|
-
* @param {
|
|
28
|
+
* @param {TreeViewItemId} itemId The id of the focused item.
|
|
28
29
|
*/
|
|
29
|
-
onItemFocus?: (event: React.SyntheticEvent | null, itemId:
|
|
30
|
+
onItemFocus?: (event: React.SyntheticEvent | null, itemId: TreeViewItemId) => void;
|
|
30
31
|
}
|
|
31
32
|
export type UseTreeViewFocusParametersWithDefaults = UseTreeViewFocusParameters;
|
|
32
33
|
export interface UseTreeViewFocusState {
|
|
33
34
|
focus: {
|
|
34
|
-
focusedItemId:
|
|
35
|
+
focusedItemId: TreeViewItemId | null;
|
|
35
36
|
};
|
|
36
37
|
}
|
|
37
38
|
export type UseTreeViewFocusSignature = TreeViewPluginSignature<{
|
|
@@ -11,7 +11,7 @@ export interface UseTreeViewItemsPublicAPI<R extends {}> {
|
|
|
11
11
|
/**
|
|
12
12
|
* Get the item with the given id.
|
|
13
13
|
* When used in the Simple Tree View, it returns an object with the `id` and `label` properties.
|
|
14
|
-
* @param {
|
|
14
|
+
* @param {TreeViewItemId} itemId The id of the item to retrieve.
|
|
15
15
|
* @returns {R} The item with the given id.
|
|
16
16
|
*/
|
|
17
17
|
getItem: (itemId: TreeViewItemId) => R;
|
|
@@ -45,7 +45,7 @@ export interface UseTreeViewItemsPublicAPI<R extends {}> {
|
|
|
45
45
|
shouldBeDisabled?: boolean;
|
|
46
46
|
}) => void;
|
|
47
47
|
/** * Get the id of the parent item.
|
|
48
|
-
* @param {
|
|
48
|
+
* @param {TreeViewItemId} itemId The id of the item to whose parentId we want to retrieve.
|
|
49
49
|
* @returns {TreeViewItemId | null} The id of the parent item.
|
|
50
50
|
*/
|
|
51
51
|
getParentId: (itemId: TreeViewItemId) => TreeViewItemId | null;
|
|
@@ -88,7 +88,7 @@ export interface UseTreeViewItemsParameters<R extends {
|
|
|
88
88
|
children?: R[];
|
|
89
89
|
}> {
|
|
90
90
|
/**
|
|
91
|
-
*
|
|
91
|
+
* Whether the items should be focusable when disabled.
|
|
92
92
|
* @default false
|
|
93
93
|
*/
|
|
94
94
|
disabledItemsFocusable?: boolean;
|
|
@@ -123,16 +123,16 @@ export interface UseTreeViewItemsParameters<R extends {
|
|
|
123
123
|
*
|
|
124
124
|
* @template R
|
|
125
125
|
* @param {R} item The item to check.
|
|
126
|
-
* @returns {
|
|
126
|
+
* @returns {TreeViewItemId} The id of the item.
|
|
127
127
|
* @default (item) => item.id
|
|
128
128
|
*/
|
|
129
129
|
getItemId?: (item: R) => TreeViewItemId;
|
|
130
130
|
/**
|
|
131
131
|
* Callback fired when the `content` slot of a given Tree Item is clicked.
|
|
132
132
|
* @param {React.MouseEvent} event The DOM event that triggered the change.
|
|
133
|
-
* @param {
|
|
133
|
+
* @param {TreeViewItemId} itemId The id of the focused item.
|
|
134
134
|
*/
|
|
135
|
-
onItemClick?: (event: React.MouseEvent, itemId:
|
|
135
|
+
onItemClick?: (event: React.MouseEvent, itemId: TreeViewItemId) => void;
|
|
136
136
|
/**
|
|
137
137
|
* Horizontal indentation between an item and its children.
|
|
138
138
|
* Examples: 24, "24px", "2rem", "2em".
|
|
@@ -146,7 +146,7 @@ export type UseTreeViewItemsParametersWithDefaults<R extends {
|
|
|
146
146
|
export interface UseTreeViewItemsState<R extends {}> {
|
|
147
147
|
items: {
|
|
148
148
|
/**
|
|
149
|
-
*
|
|
149
|
+
* Whether the items should be focusable when disabled.
|
|
150
150
|
* Always equal to `props.disabledItemsFocusable` (or `false` if not provided).
|
|
151
151
|
*/
|
|
152
152
|
disabledItemsFocusable: boolean;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
'use client';
|
|
3
|
+
|
|
4
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.useTreeViewJSXItemsItemPlugin = void 0;
|
|
9
|
+
var React = _interopRequireWildcard(require("react"));
|
|
10
|
+
var _store = require("@mui/x-internals/store");
|
|
11
|
+
var _useMergedRefs = require("@base-ui-components/utils/useMergedRefs");
|
|
12
|
+
var _useIsoLayoutEffect = require("@base-ui-components/utils/useIsoLayoutEffect");
|
|
13
|
+
var _TreeViewProvider = require("../../TreeViewProvider");
|
|
14
|
+
var _TreeViewChildrenItemProvider = require("../../TreeViewProvider/TreeViewChildrenItemProvider");
|
|
15
|
+
var _useTreeItemUtils = require("../../../hooks/useTreeItemUtils/useTreeItemUtils");
|
|
16
|
+
var _useTreeViewId = require("../../corePlugins/useTreeViewId");
|
|
17
|
+
var _useTreeViewId2 = require("../../corePlugins/useTreeViewId/useTreeViewId.utils");
|
|
18
|
+
const useTreeViewJSXItemsItemPlugin = ({
|
|
19
|
+
props,
|
|
20
|
+
rootRef,
|
|
21
|
+
contentRef
|
|
22
|
+
}) => {
|
|
23
|
+
const {
|
|
24
|
+
instance,
|
|
25
|
+
store
|
|
26
|
+
} = (0, _TreeViewProvider.useTreeViewContext)();
|
|
27
|
+
const {
|
|
28
|
+
children,
|
|
29
|
+
disabled = false,
|
|
30
|
+
label,
|
|
31
|
+
itemId,
|
|
32
|
+
id
|
|
33
|
+
} = props;
|
|
34
|
+
const parentContext = React.useContext(_TreeViewChildrenItemProvider.TreeViewChildrenItemContext);
|
|
35
|
+
if (parentContext == null) {
|
|
36
|
+
throw new Error(['MUI X: Could not find the Tree View Children Item context.', 'It looks like you rendered your component outside of a SimpleTreeView parent component.', 'This can also happen if you are bundling multiple versions of the Tree View.'].join('\n'));
|
|
37
|
+
}
|
|
38
|
+
const {
|
|
39
|
+
registerChild,
|
|
40
|
+
unregisterChild,
|
|
41
|
+
parentId
|
|
42
|
+
} = parentContext;
|
|
43
|
+
const expandable = (0, _useTreeItemUtils.itemHasChildren)(children);
|
|
44
|
+
const pluginContentRef = React.useRef(null);
|
|
45
|
+
const handleContentRef = (0, _useMergedRefs.useMergedRefs)(pluginContentRef, contentRef);
|
|
46
|
+
const treeId = (0, _store.useStore)(store, _useTreeViewId.idSelectors.treeId);
|
|
47
|
+
|
|
48
|
+
// Prevent any flashing
|
|
49
|
+
(0, _useIsoLayoutEffect.useIsoLayoutEffect)(() => {
|
|
50
|
+
const idAttribute = (0, _useTreeViewId2.generateTreeItemIdAttribute)({
|
|
51
|
+
itemId,
|
|
52
|
+
treeId,
|
|
53
|
+
id
|
|
54
|
+
});
|
|
55
|
+
registerChild(idAttribute, itemId);
|
|
56
|
+
return () => {
|
|
57
|
+
unregisterChild(idAttribute);
|
|
58
|
+
unregisterChild(idAttribute);
|
|
59
|
+
};
|
|
60
|
+
}, [store, instance, registerChild, unregisterChild, itemId, id, treeId]);
|
|
61
|
+
(0, _useIsoLayoutEffect.useIsoLayoutEffect)(() => {
|
|
62
|
+
return instance.insertJSXItem({
|
|
63
|
+
id: itemId,
|
|
64
|
+
idAttribute: id,
|
|
65
|
+
parentId,
|
|
66
|
+
expandable,
|
|
67
|
+
disabled
|
|
68
|
+
});
|
|
69
|
+
}, [instance, parentId, itemId, expandable, disabled, id]);
|
|
70
|
+
React.useEffect(() => {
|
|
71
|
+
if (label) {
|
|
72
|
+
return instance.mapLabelFromJSX(itemId, (pluginContentRef.current?.textContent ?? '').toLowerCase());
|
|
73
|
+
}
|
|
74
|
+
return undefined;
|
|
75
|
+
}, [instance, itemId, label]);
|
|
76
|
+
return {
|
|
77
|
+
contentRef: handleContentRef,
|
|
78
|
+
rootRef
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
exports.useTreeViewJSXItemsItemPlugin = useTreeViewJSXItemsItemPlugin;
|
|
@@ -9,17 +9,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
9
9
|
exports.useTreeViewJSXItems = void 0;
|
|
10
10
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
11
|
var React = _interopRequireWildcard(require("react"));
|
|
12
|
-
var _store = require("@mui/x-internals/store");
|
|
13
12
|
var _useEventCallback = require("@base-ui-components/utils/useEventCallback");
|
|
14
|
-
var _useMergedRefs = require("@base-ui-components/utils/useMergedRefs");
|
|
15
|
-
var _useIsoLayoutEffect = require("@base-ui-components/utils/useIsoLayoutEffect");
|
|
16
|
-
var _TreeViewProvider = require("../../TreeViewProvider");
|
|
17
13
|
var _TreeViewChildrenItemProvider = require("../../TreeViewProvider/TreeViewChildrenItemProvider");
|
|
18
14
|
var _useTreeViewItems = require("../useTreeViewItems/useTreeViewItems.utils");
|
|
19
15
|
var _TreeViewItemDepthContext = require("../../TreeViewItemDepthContext");
|
|
20
|
-
var
|
|
21
|
-
var _useTreeItemUtils = require("../../../hooks/useTreeItemUtils/useTreeItemUtils");
|
|
22
|
-
var _useTreeViewId2 = require("../../corePlugins/useTreeViewId");
|
|
16
|
+
var _itemPlugin = require("./itemPlugin");
|
|
23
17
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
24
18
|
const useTreeViewJSXItems = ({
|
|
25
19
|
instance,
|
|
@@ -86,70 +80,7 @@ const useTreeViewJSXItems = ({
|
|
|
86
80
|
};
|
|
87
81
|
};
|
|
88
82
|
exports.useTreeViewJSXItems = useTreeViewJSXItems;
|
|
89
|
-
|
|
90
|
-
props,
|
|
91
|
-
rootRef,
|
|
92
|
-
contentRef
|
|
93
|
-
}) => {
|
|
94
|
-
const {
|
|
95
|
-
instance,
|
|
96
|
-
store
|
|
97
|
-
} = (0, _TreeViewProvider.useTreeViewContext)();
|
|
98
|
-
const {
|
|
99
|
-
children,
|
|
100
|
-
disabled = false,
|
|
101
|
-
label,
|
|
102
|
-
itemId,
|
|
103
|
-
id
|
|
104
|
-
} = props;
|
|
105
|
-
const parentContext = React.useContext(_TreeViewChildrenItemProvider.TreeViewChildrenItemContext);
|
|
106
|
-
if (parentContext == null) {
|
|
107
|
-
throw new Error(['MUI X: Could not find the Tree View Children Item context.', 'It looks like you rendered your component outside of a SimpleTreeView parent component.', 'This can also happen if you are bundling multiple versions of the Tree View.'].join('\n'));
|
|
108
|
-
}
|
|
109
|
-
const {
|
|
110
|
-
registerChild,
|
|
111
|
-
unregisterChild,
|
|
112
|
-
parentId
|
|
113
|
-
} = parentContext;
|
|
114
|
-
const expandable = (0, _useTreeItemUtils.itemHasChildren)(children);
|
|
115
|
-
const pluginContentRef = React.useRef(null);
|
|
116
|
-
const handleContentRef = (0, _useMergedRefs.useMergedRefs)(pluginContentRef, contentRef);
|
|
117
|
-
const treeId = (0, _store.useStore)(store, _useTreeViewId2.idSelectors.treeId);
|
|
118
|
-
|
|
119
|
-
// Prevent any flashing
|
|
120
|
-
(0, _useIsoLayoutEffect.useIsoLayoutEffect)(() => {
|
|
121
|
-
const idAttribute = (0, _useTreeViewId.generateTreeItemIdAttribute)({
|
|
122
|
-
itemId,
|
|
123
|
-
treeId,
|
|
124
|
-
id
|
|
125
|
-
});
|
|
126
|
-
registerChild(idAttribute, itemId);
|
|
127
|
-
return () => {
|
|
128
|
-
unregisterChild(idAttribute);
|
|
129
|
-
unregisterChild(idAttribute);
|
|
130
|
-
};
|
|
131
|
-
}, [store, instance, registerChild, unregisterChild, itemId, id, treeId]);
|
|
132
|
-
(0, _useIsoLayoutEffect.useIsoLayoutEffect)(() => {
|
|
133
|
-
return instance.insertJSXItem({
|
|
134
|
-
id: itemId,
|
|
135
|
-
idAttribute: id,
|
|
136
|
-
parentId,
|
|
137
|
-
expandable,
|
|
138
|
-
disabled
|
|
139
|
-
});
|
|
140
|
-
}, [instance, parentId, itemId, expandable, disabled, id]);
|
|
141
|
-
React.useEffect(() => {
|
|
142
|
-
if (label) {
|
|
143
|
-
return instance.mapLabelFromJSX(itemId, (pluginContentRef.current?.textContent ?? '').toLowerCase());
|
|
144
|
-
}
|
|
145
|
-
return undefined;
|
|
146
|
-
}, [instance, itemId, label]);
|
|
147
|
-
return {
|
|
148
|
-
contentRef: handleContentRef,
|
|
149
|
-
rootRef
|
|
150
|
-
};
|
|
151
|
-
};
|
|
152
|
-
useTreeViewJSXItems.itemPlugin = useTreeViewJSXItemsItemPlugin;
|
|
83
|
+
useTreeViewJSXItems.itemPlugin = _itemPlugin.useTreeViewJSXItemsItemPlugin;
|
|
153
84
|
useTreeViewJSXItems.wrapItem = ({
|
|
154
85
|
children,
|
|
155
86
|
itemId,
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { TreeViewItemPlugin } from "../../models/index.js";
|
|
2
|
+
import { TreeItemLabelInputProps } from "../../../TreeItemLabelInput/index.js";
|
|
3
|
+
export declare const useTreeViewLabelItemPlugin: TreeViewItemPlugin;
|
|
4
|
+
export interface UseTreeItemLabelInputSlotPropsFromLabelEditing extends TreeItemLabelInputProps {}
|
|
5
|
+
export interface UseTreeItemLabelSlotPropsFromLabelEditing {
|
|
6
|
+
editable?: boolean;
|
|
7
|
+
}
|
|
8
|
+
declare module '@mui/x-tree-view/useTreeItem' {
|
|
9
|
+
interface UseTreeItemLabelInputSlotOwnProps extends UseTreeItemLabelInputSlotPropsFromLabelEditing {}
|
|
10
|
+
interface UseTreeItemLabelSlotOwnProps extends UseTreeItemLabelSlotPropsFromLabelEditing {}
|
|
11
|
+
}
|
|
@@ -7,15 +7,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.useTreeViewLabel = void 0;
|
|
8
8
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
9
|
var _useIsoLayoutEffect = require("@base-ui-components/utils/useIsoLayoutEffect");
|
|
10
|
-
var
|
|
11
|
-
var
|
|
10
|
+
var _itemPlugin = require("./itemPlugin");
|
|
11
|
+
var _useTreeViewLabel = require("./useTreeViewLabel.selectors");
|
|
12
12
|
const useTreeViewLabel = ({
|
|
13
13
|
store,
|
|
14
14
|
params
|
|
15
15
|
}) => {
|
|
16
16
|
const setEditedItem = editedItemId => {
|
|
17
17
|
if (editedItemId !== null) {
|
|
18
|
-
const isEditable =
|
|
18
|
+
const isEditable = _useTreeViewLabel.labelSelectors.isItemEditable(store.state, editedItemId);
|
|
19
19
|
if (!isEditable) {
|
|
20
20
|
return;
|
|
21
21
|
}
|
|
@@ -60,7 +60,7 @@ const useTreeViewLabel = ({
|
|
|
60
60
|
};
|
|
61
61
|
};
|
|
62
62
|
exports.useTreeViewLabel = useTreeViewLabel;
|
|
63
|
-
useTreeViewLabel.itemPlugin =
|
|
63
|
+
useTreeViewLabel.itemPlugin = _itemPlugin.useTreeViewLabelItemPlugin;
|
|
64
64
|
useTreeViewLabel.applyDefaultValuesToParams = ({
|
|
65
65
|
params
|
|
66
66
|
}) => (0, _extends2.default)({}, params, {
|
|
@@ -2,7 +2,6 @@ import { DefaultizedProps } from '@mui/x-internals/types';
|
|
|
2
2
|
import { TreeViewPluginSignature } from "../../models/index.js";
|
|
3
3
|
import { TreeViewItemId } from "../../../models/index.js";
|
|
4
4
|
import { UseTreeViewItemsSignature } from "../useTreeViewItems/index.js";
|
|
5
|
-
import { TreeItemLabelInputProps } from "../../../TreeItemLabelInput/index.js";
|
|
6
5
|
export interface UseTreeViewLabelPublicAPI {
|
|
7
6
|
/**
|
|
8
7
|
* Used to update the label of an item.
|
|
@@ -38,7 +37,7 @@ export type UseTreeViewLabelParametersWithDefaults<R extends {}> = DefaultizedPr
|
|
|
38
37
|
export interface UseTreeViewLabelState {
|
|
39
38
|
label: {
|
|
40
39
|
isItemEditable: ((item: any) => boolean) | boolean;
|
|
41
|
-
editedItemId:
|
|
40
|
+
editedItemId: TreeViewItemId | null;
|
|
42
41
|
};
|
|
43
42
|
}
|
|
44
43
|
export type UseTreeViewLabelSignature = TreeViewPluginSignature<{
|
|
@@ -48,12 +47,4 @@ export type UseTreeViewLabelSignature = TreeViewPluginSignature<{
|
|
|
48
47
|
instance: UseTreeViewLabelInstance;
|
|
49
48
|
state: UseTreeViewLabelState;
|
|
50
49
|
dependencies: [UseTreeViewItemsSignature];
|
|
51
|
-
}>;
|
|
52
|
-
export interface UseTreeItemLabelInputSlotPropsFromLabelEditing extends TreeItemLabelInputProps {}
|
|
53
|
-
export interface UseTreeItemLabelSlotPropsFromLabelEditing {
|
|
54
|
-
editable?: boolean;
|
|
55
|
-
}
|
|
56
|
-
declare module '@mui/x-tree-view/useTreeItem' {
|
|
57
|
-
interface UseTreeItemLabelInputSlotOwnProps extends UseTreeItemLabelInputSlotPropsFromLabelEditing {}
|
|
58
|
-
interface UseTreeItemLabelSlotOwnProps extends UseTreeItemLabelSlotPropsFromLabelEditing {}
|
|
59
|
-
}
|
|
50
|
+
}>;
|