@mui/x-tree-view 8.11.0 → 8.11.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +169 -0
- package/RichTreeView/RichTreeView.js +16 -15
- package/RichTreeView/RichTreeView.types.d.ts +3 -2
- package/SimpleTreeView/SimpleTreeView.js +10 -9
- package/SimpleTreeView/SimpleTreeView.types.d.ts +3 -2
- package/TreeItem/TreeItem.d.ts +1 -1
- package/TreeItemProvider/TreeItemProvider.js +3 -3
- package/esm/RichTreeView/RichTreeView.js +16 -15
- package/esm/RichTreeView/RichTreeView.types.d.ts +3 -2
- package/esm/SimpleTreeView/SimpleTreeView.js +10 -9
- package/esm/SimpleTreeView/SimpleTreeView.types.d.ts +3 -2
- package/esm/TreeItem/TreeItem.d.ts +1 -1
- package/esm/TreeItemProvider/TreeItemProvider.js +3 -3
- package/esm/hooks/index.d.ts +2 -1
- package/esm/hooks/index.js +2 -1
- package/esm/hooks/useApplyPropagationToSelectedItemsOnMount.d.ts +53 -0
- package/esm/hooks/useApplyPropagationToSelectedItemsOnMount.js +80 -0
- package/esm/hooks/useTreeItemModel.js +3 -3
- package/esm/hooks/useTreeItemUtils/useTreeItemUtils.js +24 -25
- package/esm/index.js +1 -1
- package/esm/internals/TreeViewProvider/TreeViewChildrenItemProvider.js +2 -2
- package/esm/internals/TreeViewProvider/TreeViewProvider.types.d.ts +3 -3
- package/esm/internals/components/RichTreeViewItems.js +5 -5
- package/esm/internals/corePlugins/useTreeViewId/index.d.ts +2 -1
- package/esm/internals/corePlugins/useTreeViewId/index.js +2 -1
- package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.js +10 -13
- package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.d.ts +8 -34
- package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.js +9 -9
- package/esm/internals/index.d.ts +6 -14
- package/esm/internals/index.js +6 -13
- package/esm/internals/models/plugin.d.ts +2 -3
- package/esm/internals/models/treeView.d.ts +4 -6
- package/esm/internals/plugins/useTreeViewExpansion/index.d.ts +2 -1
- package/esm/internals/plugins/useTreeViewExpansion/index.js +2 -1
- package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +26 -30
- package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +24 -316
- package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.js +27 -38
- package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +7 -1
- package/esm/internals/plugins/useTreeViewFocus/index.d.ts +2 -1
- package/esm/internals/plugins/useTreeViewFocus/index.js +2 -1
- package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +17 -21
- package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.d.ts +20 -628
- package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.js +25 -37
- package/esm/internals/plugins/useTreeViewItems/index.d.ts +2 -1
- package/esm/internals/plugins/useTreeViewItems/index.js +2 -1
- package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.js +82 -102
- package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.d.ts +52 -1142
- package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.js +58 -98
- package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.utils.d.ts +1 -1
- package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.utils.js +1 -1
- package/esm/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +32 -42
- package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +22 -22
- package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +2 -0
- package/esm/internals/plugins/useTreeViewLabel/index.d.ts +2 -1
- package/esm/internals/plugins/useTreeViewLabel/index.js +2 -1
- package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.js +4 -4
- package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +17 -25
- package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.d.ts +14 -100
- package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.js +24 -34
- package/esm/internals/plugins/useTreeViewLazyLoading/index.d.ts +2 -1
- package/esm/internals/plugins/useTreeViewLazyLoading/index.js +1 -1
- package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.d.ts +18 -245
- package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.js +15 -27
- package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.d.ts +20 -6
- package/esm/internals/plugins/useTreeViewSelection/index.d.ts +2 -1
- package/esm/internals/plugins/useTreeViewSelection/index.js +2 -1
- package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.js +25 -38
- package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +30 -34
- package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.d.ts +38 -517
- package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.js +46 -71
- package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +1 -0
- package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +10 -10
- package/esm/internals/useTreeView/useTreeView.d.ts +1 -1
- package/esm/internals/useTreeView/useTreeView.js +11 -18
- package/esm/internals/useTreeView/useTreeView.types.d.ts +1 -1
- package/esm/internals/useTreeView/useTreeViewBuildContext.d.ts +2 -3
- package/esm/internals/utils/tree.js +33 -33
- package/esm/useTreeItem/useTreeItem.js +14 -14
- package/esm/useTreeItem/useTreeItem.types.d.ts +2 -1
- package/hooks/index.d.ts +2 -1
- package/hooks/index.js +8 -1
- package/hooks/useApplyPropagationToSelectedItemsOnMount.d.ts +53 -0
- package/hooks/useApplyPropagationToSelectedItemsOnMount.js +87 -0
- package/hooks/useTreeItemModel.js +3 -3
- package/hooks/useTreeItemUtils/useTreeItemUtils.js +18 -19
- package/index.js +1 -1
- package/internals/TreeViewProvider/TreeViewChildrenItemProvider.js +1 -1
- package/internals/TreeViewProvider/TreeViewProvider.types.d.ts +3 -3
- package/internals/components/RichTreeViewItems.js +5 -5
- package/internals/corePlugins/useTreeViewId/index.d.ts +2 -1
- package/internals/corePlugins/useTreeViewId/index.js +8 -1
- package/internals/corePlugins/useTreeViewId/useTreeViewId.js +9 -12
- package/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.d.ts +8 -34
- package/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.js +10 -10
- package/internals/index.d.ts +6 -14
- package/internals/index.js +12 -73
- package/internals/models/plugin.d.ts +2 -3
- package/internals/models/treeView.d.ts +4 -6
- package/internals/plugins/useTreeViewExpansion/index.d.ts +2 -1
- package/internals/plugins/useTreeViewExpansion/index.js +8 -1
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +24 -28
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +24 -316
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.js +27 -38
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +7 -1
- package/internals/plugins/useTreeViewFocus/index.d.ts +2 -1
- package/internals/plugins/useTreeViewFocus/index.js +8 -1
- package/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +14 -18
- package/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.d.ts +20 -628
- package/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.js +23 -35
- package/internals/plugins/useTreeViewItems/index.d.ts +2 -1
- package/internals/plugins/useTreeViewItems/index.js +8 -1
- package/internals/plugins/useTreeViewItems/useTreeViewItems.js +81 -101
- package/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.d.ts +52 -1142
- package/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.js +59 -99
- package/internals/plugins/useTreeViewItems/useTreeViewItems.utils.d.ts +1 -1
- package/internals/plugins/useTreeViewItems/useTreeViewItems.utils.js +1 -1
- package/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +32 -42
- package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +18 -18
- package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +2 -0
- package/internals/plugins/useTreeViewLabel/index.d.ts +2 -1
- package/internals/plugins/useTreeViewLabel/index.js +8 -1
- package/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.js +3 -3
- package/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +16 -24
- package/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.d.ts +14 -100
- package/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.js +24 -34
- package/internals/plugins/useTreeViewLazyLoading/index.d.ts +2 -1
- package/internals/plugins/useTreeViewLazyLoading/index.js +8 -1
- package/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.d.ts +18 -245
- package/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.js +16 -28
- package/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.d.ts +20 -6
- package/internals/plugins/useTreeViewSelection/index.d.ts +2 -1
- package/internals/plugins/useTreeViewSelection/index.js +8 -1
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.js +23 -37
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +29 -33
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.d.ts +38 -517
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.js +46 -71
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +1 -0
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +8 -8
- package/internals/useTreeView/useTreeView.d.ts +1 -1
- package/internals/useTreeView/useTreeView.js +11 -18
- package/internals/useTreeView/useTreeView.types.d.ts +1 -1
- package/internals/useTreeView/useTreeViewBuildContext.d.ts +2 -3
- package/internals/utils/tree.js +31 -31
- package/package.json +13 -14
- package/useTreeItem/useTreeItem.js +14 -14
- package/useTreeItem/useTreeItem.types.d.ts +2 -1
- package/esm/internals/hooks/useSelector.d.ts +0 -4
- package/esm/internals/hooks/useSelector.js +0 -8
- package/esm/internals/utils/TreeViewStore.d.ts +0 -12
- package/esm/internals/utils/TreeViewStore.js +0 -22
- package/esm/internals/utils/selectors.d.ts +0 -21
- package/esm/internals/utils/selectors.js +0 -51
- package/internals/hooks/useSelector.d.ts +0 -4
- package/internals/hooks/useSelector.js +0 -16
- package/internals/utils/TreeViewStore.d.ts +0 -12
- package/internals/utils/TreeViewStore.js +0 -29
- package/internals/utils/selectors.d.ts +0 -21
- package/internals/utils/selectors.js +0 -58
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,175 @@
|
|
|
5
5
|
All notable changes to this project will be documented in this file.
|
|
6
6
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
7
7
|
|
|
8
|
+
## 8.11.2
|
|
9
|
+
|
|
10
|
+
_Sep 10, 2025_
|
|
11
|
+
|
|
12
|
+
We'd like to extend a big thank you to the 13 contributors who made this release possible. Here are some highlights ✨:
|
|
13
|
+
|
|
14
|
+
- 🐞 Bugfixes
|
|
15
|
+
- 📚 Documentation improvements
|
|
16
|
+
|
|
17
|
+
Special thanks go out to the community members for their valuable contributions:
|
|
18
|
+
@ludvigeriksson, @sai6855
|
|
19
|
+
|
|
20
|
+
The following are all team members who have contributed to this release:
|
|
21
|
+
@alexfauquette, @bernardobelchior, @brijeshb42, @flaviendelangle, @Janpot, @LukasTy, @MBilalShafi, @noraleonte, @rita-codes, @romgrk, @siriwatknp
|
|
22
|
+
|
|
23
|
+
### Data Grid
|
|
24
|
+
|
|
25
|
+
#### `@mui/x-data-grid@8.11.2`
|
|
26
|
+
|
|
27
|
+
- [DataGrid] Allow opting out of the exclude row selection model (#19423) @MBilalShafi
|
|
28
|
+
- [DataGrid] Fix column dropdown menu text alignment for the "Unpin" menu item (#19462) @MBilalShafi
|
|
29
|
+
- [DataGrid] Fix indeterminate state for "Select all" checkbox with exclude model (#19466) @MBilalShafi
|
|
30
|
+
- [DataGrid] Fix styled API arguments error (#19460) @MBilalShafi
|
|
31
|
+
- [DataGrid] Fix `stringify()` for theme objects (#19427) @romgrk
|
|
32
|
+
|
|
33
|
+
#### `@mui/x-data-grid-pro@8.11.2` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
34
|
+
|
|
35
|
+
Same changes as in `@mui/x-data-grid@8.11.2`.
|
|
36
|
+
|
|
37
|
+
#### `@mui/x-data-grid-premium@8.11.2` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
38
|
+
|
|
39
|
+
Same changes as in `@mui/x-data-grid-pro@8.11.2`, plus:
|
|
40
|
+
|
|
41
|
+
- [DataGridPremium] Fallback to the regular reorder method for plain data (#19467) @MBilalShafi
|
|
42
|
+
- [DataGridPremium] Fix showing `0` as total aggregation value when aggregation position is set to `null` for row groups (#19515) @cherniavskii
|
|
43
|
+
|
|
44
|
+
### Date and Time Pickers
|
|
45
|
+
|
|
46
|
+
#### `@mui/x-date-pickers@8.11.2`
|
|
47
|
+
|
|
48
|
+
- [pickers] Gracefully handle `textField.slotProps` (#18980) @LukasTy
|
|
49
|
+
- [pickers] Improve hour and minute placement in Date Time Picker (#19227) @MBilalShafi
|
|
50
|
+
- [pickers] Use `calendarState.currentMonth` in Month Calendar when available (#19073) @LukasTy
|
|
51
|
+
- [pickers] Improve invalid value pasting into a section (#19357) @sai6855
|
|
52
|
+
- [fields] Remove redundant `id` and `aria-labelledby` attributes from spinbuttons (#19523) @LukasTy
|
|
53
|
+
|
|
54
|
+
#### `@mui/x-date-pickers-pro@8.11.2` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
55
|
+
|
|
56
|
+
Same changes as in `@mui/x-date-pickers@8.11.2`.
|
|
57
|
+
|
|
58
|
+
### Charts
|
|
59
|
+
|
|
60
|
+
#### `@mui/x-charts@8.11.2`
|
|
61
|
+
|
|
62
|
+
- [charts] Fix highlight regression (#19486) @alexfauquette
|
|
63
|
+
- [charts] Improve code reuse in `ChartsXAxis` and `ChartsYAxis` (#19198) @bernardobelchior
|
|
64
|
+
- [charts] Simplify params in `getRange` and `createDateFormatter` (#19517) @bernardobelchior
|
|
65
|
+
- [charts] Handle domain edge cases with `filterMode: 'discard'` (#19199) @bernardobelchior
|
|
66
|
+
- [l10n] Add Swedish (sv-SE) locale (#19489) @ludvigeriksson
|
|
67
|
+
|
|
68
|
+
#### `@mui/x-charts-pro@8.11.2` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
69
|
+
|
|
70
|
+
Same changes as in `@mui/x-charts@8.11.2`.
|
|
71
|
+
|
|
72
|
+
### Tree View
|
|
73
|
+
|
|
74
|
+
#### `@mui/x-tree-view@8.11.2`
|
|
75
|
+
|
|
76
|
+
- [TreeView] Do not mutate `props.items` in the `getItemTree()` method (#19483) @flaviendelangle
|
|
77
|
+
- [TreeView] Expose a new hook to apply selection propagation on the selected items (#19402) @flaviendelangle
|
|
78
|
+
|
|
79
|
+
#### `@mui/x-tree-view-pro@8.11.2` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
80
|
+
|
|
81
|
+
Same changes as in `@mui/x-tree-view@8.11.2`.
|
|
82
|
+
|
|
83
|
+
### Codemod
|
|
84
|
+
|
|
85
|
+
#### `@mui/x-codemod@8.11.2`
|
|
86
|
+
|
|
87
|
+
Internal changes.
|
|
88
|
+
|
|
89
|
+
### Docs
|
|
90
|
+
|
|
91
|
+
- [docs] Add recipe for save and manage filters from the panel (#19361) @siriwatknp
|
|
92
|
+
|
|
93
|
+
### Core
|
|
94
|
+
|
|
95
|
+
- [code-infra] Remove log when restarting dev server (#19490) @bernardobelchior
|
|
96
|
+
- [code-infra] Store test results in CI (#19507) @Janpot
|
|
97
|
+
|
|
98
|
+
### Miscellaneous
|
|
99
|
+
|
|
100
|
+
- [infra] Set nodejs versions of various CIs to 22.18 (#19503) @brijeshb42
|
|
101
|
+
- [test] Split infinitive @romgrk
|
|
102
|
+
|
|
103
|
+
## 8.11.1
|
|
104
|
+
|
|
105
|
+
_Sep 4, 2025_
|
|
106
|
+
|
|
107
|
+
We'd like to extend a big thank you to the 6 contributors who made this release possible. Here are some highlights ✨:
|
|
108
|
+
|
|
109
|
+
Special thanks go out to the community members for their valuable contributions:
|
|
110
|
+
@sai6855
|
|
111
|
+
|
|
112
|
+
The following are all team members who have contributed to this release:
|
|
113
|
+
@brijeshb42, @flaviendelangle, @JCQuintas, @mapache-salvaje, @oliviertassinari
|
|
114
|
+
|
|
115
|
+
### Data Grid
|
|
116
|
+
|
|
117
|
+
#### `@mui/x-data-grid@8.11.1`
|
|
118
|
+
|
|
119
|
+
- [DataGrid] Refine types in `GridCell` component (#19384) @sai6855
|
|
120
|
+
|
|
121
|
+
#### `@mui/x-data-grid-pro@8.11.1` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
122
|
+
|
|
123
|
+
Same changes as in `@mui/x-data-grid@8.11.1`.
|
|
124
|
+
|
|
125
|
+
#### `@mui/x-data-grid-premium@8.11.1` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
126
|
+
|
|
127
|
+
Same changes as in `@mui/x-data-grid-pro@8.11.1`.
|
|
128
|
+
|
|
129
|
+
### Date and Time Pickers
|
|
130
|
+
|
|
131
|
+
#### `@mui/x-date-pickers@8.11.1`
|
|
132
|
+
|
|
133
|
+
- [pickers] Merge `slotProps` for input adornment in `PickerFieldUI` component (#19399) @sai6855
|
|
134
|
+
|
|
135
|
+
#### `@mui/x-date-pickers-pro@8.11.1` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
136
|
+
|
|
137
|
+
Same changes as in `@mui/x-date-pickers@8.11.1`.
|
|
138
|
+
|
|
139
|
+
### Charts
|
|
140
|
+
|
|
141
|
+
#### `@mui/x-charts@8.11.1`
|
|
142
|
+
|
|
143
|
+
- [charts] Prevent crash and warn user on incorrect `axisId` when composing (#19397) @JCQuintas
|
|
144
|
+
|
|
145
|
+
#### `@mui/x-charts-pro@8.11.1` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
146
|
+
|
|
147
|
+
Same changes as in `@mui/x-charts@8.11.1`.
|
|
148
|
+
|
|
149
|
+
### Tree View
|
|
150
|
+
|
|
151
|
+
#### `@mui/x-tree-view@8.11.1`
|
|
152
|
+
|
|
153
|
+
- [tree view] Expose the methods to manually refetch the children of an item (#19248) @flaviendelangle
|
|
154
|
+
- [tree view] Use the shared store implementation instead of the custom one (#19261) @flaviendelangle
|
|
155
|
+
|
|
156
|
+
#### `@mui/x-tree-view-pro@8.11.1` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
157
|
+
|
|
158
|
+
Same changes as in `@mui/x-tree-view@8.11.1`.
|
|
159
|
+
|
|
160
|
+
### Codemod
|
|
161
|
+
|
|
162
|
+
#### `@mui/x-codemod@8.11.1`
|
|
163
|
+
|
|
164
|
+
Internal changes.
|
|
165
|
+
|
|
166
|
+
### Docs
|
|
167
|
+
|
|
168
|
+
- [docs] Fix grammar and spelling mistakes on the Date and Time Pickers pages (#19300) @mapache-salvaje
|
|
169
|
+
- [docs] Remove wrong legend info (#19383) @JCQuintas
|
|
170
|
+
|
|
171
|
+
### Core
|
|
172
|
+
|
|
173
|
+
- [internal] Fix action alert (#19388) @oliviertassinari
|
|
174
|
+
- [internal] Fix pnpm valelint to have 0 errors @oliviertassinari
|
|
175
|
+
- [infra] Remove "main" fields from publishable packages (#19407) @brijeshb42
|
|
176
|
+
|
|
8
177
|
## 8.11.0
|
|
9
178
|
|
|
10
179
|
_Aug 29, 2025_
|
|
@@ -11,6 +11,7 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
|
11
11
|
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
12
12
|
var React = _interopRequireWildcard(require("react"));
|
|
13
13
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
14
|
+
var _store = require("@mui/x-internals/store");
|
|
14
15
|
var _Alert = _interopRequireDefault(require("@mui/material/Alert"));
|
|
15
16
|
var _Typography = _interopRequireDefault(require("@mui/material/Typography"));
|
|
16
17
|
var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
|
|
@@ -22,8 +23,7 @@ var _useTreeView = require("../internals/useTreeView");
|
|
|
22
23
|
var _TreeViewProvider = require("../internals/TreeViewProvider");
|
|
23
24
|
var _RichTreeView2 = require("./RichTreeView.plugins");
|
|
24
25
|
var _RichTreeViewItems = require("../internals/components/RichTreeViewItems");
|
|
25
|
-
var
|
|
26
|
-
var _useTreeViewItems = require("../internals/plugins/useTreeViewItems/useTreeViewItems.selectors");
|
|
26
|
+
var _useTreeViewItems = require("../internals/plugins/useTreeViewItems");
|
|
27
27
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
28
28
|
const _excluded = ["slots", "slotProps"];
|
|
29
29
|
const useThemeProps = (0, _zeroStyled.createUseThemeProps)('MuiRichTreeView');
|
|
@@ -90,8 +90,8 @@ const RichTreeView = exports.RichTreeView = /*#__PURE__*/React.forwardRef(functi
|
|
|
90
90
|
rootRef: ref,
|
|
91
91
|
props: other
|
|
92
92
|
});
|
|
93
|
-
const isLoading = (0,
|
|
94
|
-
const treeViewError = (0,
|
|
93
|
+
const isLoading = (0, _store.useStore)(contextValue.store, _useTreeViewItems.itemsSelectors.isLoading);
|
|
94
|
+
const treeViewError = (0, _store.useStore)(contextValue.store, _useTreeViewItems.itemsSelectors.error);
|
|
95
95
|
const classes = useUtilityClasses(props);
|
|
96
96
|
const Root = slots?.root ?? RichTreeViewRoot;
|
|
97
97
|
const rootProps = (0, _useSlotProps.default)({
|
|
@@ -136,17 +136,18 @@ process.env.NODE_ENV !== "production" ? RichTreeView.propTypes = {
|
|
|
136
136
|
*/
|
|
137
137
|
apiRef: _propTypes.default.shape({
|
|
138
138
|
current: _propTypes.default.shape({
|
|
139
|
-
focusItem: _propTypes.default.func
|
|
140
|
-
getItem: _propTypes.default.func
|
|
141
|
-
getItemDOMElement: _propTypes.default.func
|
|
142
|
-
getItemOrderedChildrenIds: _propTypes.default.func
|
|
143
|
-
getItemTree: _propTypes.default.func
|
|
144
|
-
getParentId: _propTypes.default.func
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
139
|
+
focusItem: _propTypes.default.func,
|
|
140
|
+
getItem: _propTypes.default.func,
|
|
141
|
+
getItemDOMElement: _propTypes.default.func,
|
|
142
|
+
getItemOrderedChildrenIds: _propTypes.default.func,
|
|
143
|
+
getItemTree: _propTypes.default.func,
|
|
144
|
+
getParentId: _propTypes.default.func,
|
|
145
|
+
isItemExpanded: _propTypes.default.func,
|
|
146
|
+
setEditedItem: _propTypes.default.func,
|
|
147
|
+
setIsItemDisabled: _propTypes.default.func,
|
|
148
|
+
setItemExpansion: _propTypes.default.func,
|
|
149
|
+
setItemSelection: _propTypes.default.func,
|
|
150
|
+
updateItemLabel: _propTypes.default.func
|
|
150
151
|
})
|
|
151
152
|
}),
|
|
152
153
|
/**
|
|
@@ -17,7 +17,7 @@ export interface RichTreeViewSlots extends TreeViewSlots, RichTreeViewItemsSlots
|
|
|
17
17
|
export interface RichTreeViewSlotProps<R extends {}, Multiple extends boolean | undefined> extends TreeViewSlotProps, RichTreeViewItemsSlotProps {
|
|
18
18
|
root?: SlotComponentProps<'ul', {}, RichTreeViewProps<R, Multiple>>;
|
|
19
19
|
}
|
|
20
|
-
|
|
20
|
+
type RichTreeViewApiRef = React.RefObject<Partial<TreeViewPublicAPI<RichTreeViewPluginSignatures>> | undefined>;
|
|
21
21
|
export interface RichTreeViewPropsBase extends React.HTMLAttributes<HTMLUListElement> {
|
|
22
22
|
className?: string;
|
|
23
23
|
/**
|
|
@@ -44,4 +44,5 @@ export interface RichTreeViewProps<R extends {}, Multiple extends boolean | unde
|
|
|
44
44
|
* The ref object that allows Tree View manipulation. Can be instantiated with `useTreeViewApiRef()`.
|
|
45
45
|
*/
|
|
46
46
|
apiRef?: RichTreeViewApiRef;
|
|
47
|
-
}
|
|
47
|
+
}
|
|
48
|
+
export {};
|
|
@@ -117,15 +117,16 @@ process.env.NODE_ENV !== "production" ? SimpleTreeView.propTypes = {
|
|
|
117
117
|
*/
|
|
118
118
|
apiRef: _propTypes.default.shape({
|
|
119
119
|
current: _propTypes.default.shape({
|
|
120
|
-
focusItem: _propTypes.default.func
|
|
121
|
-
getItem: _propTypes.default.func
|
|
122
|
-
getItemDOMElement: _propTypes.default.func
|
|
123
|
-
getItemOrderedChildrenIds: _propTypes.default.func
|
|
124
|
-
getItemTree: _propTypes.default.func
|
|
125
|
-
getParentId: _propTypes.default.func
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
120
|
+
focusItem: _propTypes.default.func,
|
|
121
|
+
getItem: _propTypes.default.func,
|
|
122
|
+
getItemDOMElement: _propTypes.default.func,
|
|
123
|
+
getItemOrderedChildrenIds: _propTypes.default.func,
|
|
124
|
+
getItemTree: _propTypes.default.func,
|
|
125
|
+
getParentId: _propTypes.default.func,
|
|
126
|
+
isItemExpanded: _propTypes.default.func,
|
|
127
|
+
setIsItemDisabled: _propTypes.default.func,
|
|
128
|
+
setItemExpansion: _propTypes.default.func,
|
|
129
|
+
setItemSelection: _propTypes.default.func
|
|
129
130
|
})
|
|
130
131
|
}),
|
|
131
132
|
/**
|
|
@@ -16,7 +16,7 @@ export interface SimpleTreeViewSlots extends TreeViewSlots {
|
|
|
16
16
|
export interface SimpleTreeViewSlotProps extends TreeViewSlotProps {
|
|
17
17
|
root?: SlotComponentProps<'ul', {}, {}>;
|
|
18
18
|
}
|
|
19
|
-
|
|
19
|
+
type SimpleTreeViewApiRef = React.RefObject<Partial<TreeViewPublicAPI<SimpleTreeViewPluginSignatures>> | undefined>;
|
|
20
20
|
export interface SimpleTreeViewProps<Multiple extends boolean | undefined> extends SimpleTreeViewPluginParameters<Multiple>, React.HTMLAttributes<HTMLUListElement> {
|
|
21
21
|
/**
|
|
22
22
|
* The content of the component.
|
|
@@ -43,4 +43,5 @@ export interface SimpleTreeViewProps<Multiple extends boolean | undefined> exten
|
|
|
43
43
|
* The ref object that allows Tree View manipulation. Can be instantiated with `useTreeViewApiRef()`.
|
|
44
44
|
*/
|
|
45
45
|
apiRef?: SimpleTreeViewApiRef;
|
|
46
|
-
}
|
|
46
|
+
}
|
|
47
|
+
export {};
|
package/TreeItem/TreeItem.d.ts
CHANGED
|
@@ -15,7 +15,7 @@ export declare const TreeItemErrorContainer: import("@emotion/styled").StyledCom
|
|
|
15
15
|
export declare const TreeItemLoadingContainer: import("@emotion/styled").StyledComponent<Pick<import("@mui/material/CircularProgress").CircularProgressProps, keyof import("@mui/material/CircularProgress").CircularProgressProps> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, {}, {}>;
|
|
16
16
|
export declare const TreeItemCheckbox: import("@emotion/styled").StyledComponent<Pick<Omit<CheckboxProps & {
|
|
17
17
|
visible?: boolean;
|
|
18
|
-
}, "ref"> & React.RefAttributes<HTMLButtonElement>, "form" | "slot" | "style" | "title" | "id" | "value" | "name" | "checked" | "disabled" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "readOnly" | "required" | "size" | "onChange" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "autoCapitalize" | "autoFocus" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "enterKeyHint" | "hidden" | "lang" | "nonce" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "content" | "datatype" | "inlist" | "prefix" | "property" | "rel" | "resource" | "rev" | "typeof" | "vocab" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "popover" | "popoverTargetAction" | "popoverTarget" | "inert" | "inputMode" | "is" | "exportparts" | "part" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-braillelabel" | "aria-brailleroledescription" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colindextext" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-description" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowindextext" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerLeave" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onScrollEnd" | "onScrollEndCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onToggle" | "onBeforeToggle" | "onTransitionCancel" | "onTransitionCancelCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "onTransitionRun" | "onTransitionRunCapture" | "onTransitionStart" | "onTransitionStartCapture" | "action" | "visible" | "icon" | "slots" | "slotProps" | "classes" | "sx" | "component" | "checkedIcon" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple" | "edge" | "inputProps" | "inputRef" | "
|
|
18
|
+
}, "ref"> & React.RefAttributes<HTMLButtonElement>, "form" | "slot" | "style" | "title" | "id" | "value" | "name" | "checked" | "disabled" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "readOnly" | "required" | "size" | "onChange" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "autoCapitalize" | "autoFocus" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "enterKeyHint" | "hidden" | "lang" | "nonce" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "content" | "datatype" | "inlist" | "prefix" | "property" | "rel" | "resource" | "rev" | "typeof" | "vocab" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "popover" | "popoverTargetAction" | "popoverTarget" | "inert" | "inputMode" | "is" | "exportparts" | "part" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-braillelabel" | "aria-brailleroledescription" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colindextext" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-description" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowindextext" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerLeave" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onScrollEnd" | "onScrollEndCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onToggle" | "onBeforeToggle" | "onTransitionCancel" | "onTransitionCancelCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "onTransitionRun" | "onTransitionRunCapture" | "onTransitionStart" | "onTransitionStartCapture" | "action" | "visible" | "icon" | "slots" | "slotProps" | "classes" | "sx" | "indeterminate" | "component" | "checkedIcon" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple" | "edge" | "inputProps" | "inputRef" | "indeterminateIcon" | keyof React.RefAttributes<HTMLButtonElement>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, {}, {}>;
|
|
19
19
|
type TreeItemComponent = ((props: TreeItemProps & React.RefAttributes<HTMLLIElement>) => React.JSX.Element) & {
|
|
20
20
|
propTypes?: any;
|
|
21
21
|
};
|
|
@@ -9,10 +9,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
9
9
|
exports.TreeItemProvider = TreeItemProvider;
|
|
10
10
|
var React = _interopRequireWildcard(require("react"));
|
|
11
11
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
12
|
+
var _store = require("@mui/x-internals/store");
|
|
12
13
|
var _TreeViewProvider = require("../internals/TreeViewProvider");
|
|
13
14
|
var _useTreeViewId = require("../internals/corePlugins/useTreeViewId/useTreeViewId.utils");
|
|
14
|
-
var
|
|
15
|
-
var _useTreeViewId2 = require("../internals/corePlugins/useTreeViewId/useTreeViewId.selectors");
|
|
15
|
+
var _useTreeViewId2 = require("../internals/corePlugins/useTreeViewId");
|
|
16
16
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
17
|
function TreeItemProvider(props) {
|
|
18
18
|
const {
|
|
@@ -25,7 +25,7 @@ function TreeItemProvider(props) {
|
|
|
25
25
|
instance,
|
|
26
26
|
store
|
|
27
27
|
} = (0, _TreeViewProvider.useTreeViewContext)();
|
|
28
|
-
const treeId = (0,
|
|
28
|
+
const treeId = (0, _store.useStore)(store, _useTreeViewId2.idSelectors.treeId);
|
|
29
29
|
const idAttribute = (0, _useTreeViewId.generateTreeItemIdAttribute)({
|
|
30
30
|
itemId,
|
|
31
31
|
treeId,
|
|
@@ -5,6 +5,7 @@ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWith
|
|
|
5
5
|
const _excluded = ["slots", "slotProps"];
|
|
6
6
|
import * as React from 'react';
|
|
7
7
|
import PropTypes from 'prop-types';
|
|
8
|
+
import { useStore } from '@mui/x-internals/store';
|
|
8
9
|
import Alert from '@mui/material/Alert';
|
|
9
10
|
import Typography from '@mui/material/Typography';
|
|
10
11
|
import composeClasses from '@mui/utils/composeClasses';
|
|
@@ -16,8 +17,7 @@ import { useTreeView } from "../internals/useTreeView/index.js";
|
|
|
16
17
|
import { TreeViewProvider } from "../internals/TreeViewProvider/index.js";
|
|
17
18
|
import { RICH_TREE_VIEW_PLUGINS } from "./RichTreeView.plugins.js";
|
|
18
19
|
import { RichTreeViewItems } from "../internals/components/RichTreeViewItems.js";
|
|
19
|
-
import {
|
|
20
|
-
import { selectorGetTreeViewError, selectorIsTreeViewLoading } from "../internals/plugins/useTreeViewItems/useTreeViewItems.selectors.js";
|
|
20
|
+
import { itemsSelectors } from "../internals/plugins/useTreeViewItems/index.js";
|
|
21
21
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
22
22
|
const useThemeProps = createUseThemeProps('MuiRichTreeView');
|
|
23
23
|
const useUtilityClasses = ownerState => {
|
|
@@ -83,8 +83,8 @@ const RichTreeView = /*#__PURE__*/React.forwardRef(function RichTreeView(inProps
|
|
|
83
83
|
rootRef: ref,
|
|
84
84
|
props: other
|
|
85
85
|
});
|
|
86
|
-
const isLoading =
|
|
87
|
-
const treeViewError =
|
|
86
|
+
const isLoading = useStore(contextValue.store, itemsSelectors.isLoading);
|
|
87
|
+
const treeViewError = useStore(contextValue.store, itemsSelectors.error);
|
|
88
88
|
const classes = useUtilityClasses(props);
|
|
89
89
|
const Root = slots?.root ?? RichTreeViewRoot;
|
|
90
90
|
const rootProps = useSlotProps({
|
|
@@ -129,17 +129,18 @@ process.env.NODE_ENV !== "production" ? RichTreeView.propTypes = {
|
|
|
129
129
|
*/
|
|
130
130
|
apiRef: PropTypes.shape({
|
|
131
131
|
current: PropTypes.shape({
|
|
132
|
-
focusItem: PropTypes.func
|
|
133
|
-
getItem: PropTypes.func
|
|
134
|
-
getItemDOMElement: PropTypes.func
|
|
135
|
-
getItemOrderedChildrenIds: PropTypes.func
|
|
136
|
-
getItemTree: PropTypes.func
|
|
137
|
-
getParentId: PropTypes.func
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
132
|
+
focusItem: PropTypes.func,
|
|
133
|
+
getItem: PropTypes.func,
|
|
134
|
+
getItemDOMElement: PropTypes.func,
|
|
135
|
+
getItemOrderedChildrenIds: PropTypes.func,
|
|
136
|
+
getItemTree: PropTypes.func,
|
|
137
|
+
getParentId: PropTypes.func,
|
|
138
|
+
isItemExpanded: PropTypes.func,
|
|
139
|
+
setEditedItem: PropTypes.func,
|
|
140
|
+
setIsItemDisabled: PropTypes.func,
|
|
141
|
+
setItemExpansion: PropTypes.func,
|
|
142
|
+
setItemSelection: PropTypes.func,
|
|
143
|
+
updateItemLabel: PropTypes.func
|
|
143
144
|
})
|
|
144
145
|
}),
|
|
145
146
|
/**
|
|
@@ -17,7 +17,7 @@ export interface RichTreeViewSlots extends TreeViewSlots, RichTreeViewItemsSlots
|
|
|
17
17
|
export interface RichTreeViewSlotProps<R extends {}, Multiple extends boolean | undefined> extends TreeViewSlotProps, RichTreeViewItemsSlotProps {
|
|
18
18
|
root?: SlotComponentProps<'ul', {}, RichTreeViewProps<R, Multiple>>;
|
|
19
19
|
}
|
|
20
|
-
|
|
20
|
+
type RichTreeViewApiRef = React.RefObject<Partial<TreeViewPublicAPI<RichTreeViewPluginSignatures>> | undefined>;
|
|
21
21
|
export interface RichTreeViewPropsBase extends React.HTMLAttributes<HTMLUListElement> {
|
|
22
22
|
className?: string;
|
|
23
23
|
/**
|
|
@@ -44,4 +44,5 @@ export interface RichTreeViewProps<R extends {}, Multiple extends boolean | unde
|
|
|
44
44
|
* The ref object that allows Tree View manipulation. Can be instantiated with `useTreeViewApiRef()`.
|
|
45
45
|
*/
|
|
46
46
|
apiRef?: RichTreeViewApiRef;
|
|
47
|
-
}
|
|
47
|
+
}
|
|
48
|
+
export {};
|
|
@@ -110,15 +110,16 @@ process.env.NODE_ENV !== "production" ? SimpleTreeView.propTypes = {
|
|
|
110
110
|
*/
|
|
111
111
|
apiRef: PropTypes.shape({
|
|
112
112
|
current: PropTypes.shape({
|
|
113
|
-
focusItem: PropTypes.func
|
|
114
|
-
getItem: PropTypes.func
|
|
115
|
-
getItemDOMElement: PropTypes.func
|
|
116
|
-
getItemOrderedChildrenIds: PropTypes.func
|
|
117
|
-
getItemTree: PropTypes.func
|
|
118
|
-
getParentId: PropTypes.func
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
113
|
+
focusItem: PropTypes.func,
|
|
114
|
+
getItem: PropTypes.func,
|
|
115
|
+
getItemDOMElement: PropTypes.func,
|
|
116
|
+
getItemOrderedChildrenIds: PropTypes.func,
|
|
117
|
+
getItemTree: PropTypes.func,
|
|
118
|
+
getParentId: PropTypes.func,
|
|
119
|
+
isItemExpanded: PropTypes.func,
|
|
120
|
+
setIsItemDisabled: PropTypes.func,
|
|
121
|
+
setItemExpansion: PropTypes.func,
|
|
122
|
+
setItemSelection: PropTypes.func
|
|
122
123
|
})
|
|
123
124
|
}),
|
|
124
125
|
/**
|
|
@@ -16,7 +16,7 @@ export interface SimpleTreeViewSlots extends TreeViewSlots {
|
|
|
16
16
|
export interface SimpleTreeViewSlotProps extends TreeViewSlotProps {
|
|
17
17
|
root?: SlotComponentProps<'ul', {}, {}>;
|
|
18
18
|
}
|
|
19
|
-
|
|
19
|
+
type SimpleTreeViewApiRef = React.RefObject<Partial<TreeViewPublicAPI<SimpleTreeViewPluginSignatures>> | undefined>;
|
|
20
20
|
export interface SimpleTreeViewProps<Multiple extends boolean | undefined> extends SimpleTreeViewPluginParameters<Multiple>, React.HTMLAttributes<HTMLUListElement> {
|
|
21
21
|
/**
|
|
22
22
|
* The content of the component.
|
|
@@ -43,4 +43,5 @@ export interface SimpleTreeViewProps<Multiple extends boolean | undefined> exten
|
|
|
43
43
|
* The ref object that allows Tree View manipulation. Can be instantiated with `useTreeViewApiRef()`.
|
|
44
44
|
*/
|
|
45
45
|
apiRef?: SimpleTreeViewApiRef;
|
|
46
|
-
}
|
|
46
|
+
}
|
|
47
|
+
export {};
|
|
@@ -15,7 +15,7 @@ export declare const TreeItemErrorContainer: import("@emotion/styled").StyledCom
|
|
|
15
15
|
export declare const TreeItemLoadingContainer: import("@emotion/styled").StyledComponent<Pick<import("@mui/material/CircularProgress").CircularProgressProps, keyof import("@mui/material/CircularProgress").CircularProgressProps> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, {}, {}>;
|
|
16
16
|
export declare const TreeItemCheckbox: import("@emotion/styled").StyledComponent<Pick<Omit<CheckboxProps & {
|
|
17
17
|
visible?: boolean;
|
|
18
|
-
}, "ref"> & React.RefAttributes<HTMLButtonElement>, "form" | "slot" | "style" | "title" | "id" | "value" | "name" | "checked" | "disabled" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "readOnly" | "required" | "size" | "onChange" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "autoCapitalize" | "autoFocus" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "enterKeyHint" | "hidden" | "lang" | "nonce" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "content" | "datatype" | "inlist" | "prefix" | "property" | "rel" | "resource" | "rev" | "typeof" | "vocab" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "popover" | "popoverTargetAction" | "popoverTarget" | "inert" | "inputMode" | "is" | "exportparts" | "part" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-braillelabel" | "aria-brailleroledescription" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colindextext" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-description" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowindextext" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerLeave" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onScrollEnd" | "onScrollEndCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onToggle" | "onBeforeToggle" | "onTransitionCancel" | "onTransitionCancelCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "onTransitionRun" | "onTransitionRunCapture" | "onTransitionStart" | "onTransitionStartCapture" | "action" | "visible" | "icon" | "slots" | "slotProps" | "classes" | "sx" | "component" | "checkedIcon" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple" | "edge" | "inputProps" | "inputRef" | "
|
|
18
|
+
}, "ref"> & React.RefAttributes<HTMLButtonElement>, "form" | "slot" | "style" | "title" | "id" | "value" | "name" | "checked" | "disabled" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "readOnly" | "required" | "size" | "onChange" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "autoCapitalize" | "autoFocus" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "enterKeyHint" | "hidden" | "lang" | "nonce" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "content" | "datatype" | "inlist" | "prefix" | "property" | "rel" | "resource" | "rev" | "typeof" | "vocab" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "popover" | "popoverTargetAction" | "popoverTarget" | "inert" | "inputMode" | "is" | "exportparts" | "part" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-braillelabel" | "aria-brailleroledescription" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colindextext" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-description" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowindextext" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerLeave" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onScrollEnd" | "onScrollEndCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onToggle" | "onBeforeToggle" | "onTransitionCancel" | "onTransitionCancelCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "onTransitionRun" | "onTransitionRunCapture" | "onTransitionStart" | "onTransitionStartCapture" | "action" | "visible" | "icon" | "slots" | "slotProps" | "classes" | "sx" | "indeterminate" | "component" | "checkedIcon" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple" | "edge" | "inputProps" | "inputRef" | "indeterminateIcon" | keyof React.RefAttributes<HTMLButtonElement>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, {}, {}>;
|
|
19
19
|
type TreeItemComponent = ((props: TreeItemProps & React.RefAttributes<HTMLLIElement>) => React.JSX.Element) & {
|
|
20
20
|
propTypes?: any;
|
|
21
21
|
};
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
import * as React from 'react';
|
|
4
4
|
import PropTypes from 'prop-types';
|
|
5
|
+
import { useStore } from '@mui/x-internals/store';
|
|
5
6
|
import { useTreeViewContext } from "../internals/TreeViewProvider/index.js";
|
|
6
7
|
import { generateTreeItemIdAttribute } from "../internals/corePlugins/useTreeViewId/useTreeViewId.utils.js";
|
|
7
|
-
import {
|
|
8
|
-
import { selectorTreeViewId } from "../internals/corePlugins/useTreeViewId/useTreeViewId.selectors.js";
|
|
8
|
+
import { idSelectors } from "../internals/corePlugins/useTreeViewId/index.js";
|
|
9
9
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
10
10
|
function TreeItemProvider(props) {
|
|
11
11
|
const {
|
|
@@ -18,7 +18,7 @@ function TreeItemProvider(props) {
|
|
|
18
18
|
instance,
|
|
19
19
|
store
|
|
20
20
|
} = useTreeViewContext();
|
|
21
|
-
const treeId =
|
|
21
|
+
const treeId = useStore(store, idSelectors.treeId);
|
|
22
22
|
const idAttribute = generateTreeItemIdAttribute({
|
|
23
23
|
itemId,
|
|
24
24
|
treeId,
|
package/esm/hooks/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export { useTreeViewApiRef } from "./useTreeViewApiRef.js";
|
|
2
2
|
export { useTreeItemUtils } from "./useTreeItemUtils/index.js";
|
|
3
|
-
export { useTreeItemModel } from "./useTreeItemModel.js";
|
|
3
|
+
export { useTreeItemModel } from "./useTreeItemModel.js";
|
|
4
|
+
export { useApplyPropagationToSelectedItemsOnMount } from "./useApplyPropagationToSelectedItemsOnMount.js";
|
package/esm/hooks/index.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export { useTreeViewApiRef } from "./useTreeViewApiRef.js";
|
|
2
2
|
export { useTreeItemUtils } from "./useTreeItemUtils/index.js";
|
|
3
|
-
export { useTreeItemModel } from "./useTreeItemModel.js";
|
|
3
|
+
export { useTreeItemModel } from "./useTreeItemModel.js";
|
|
4
|
+
export { useApplyPropagationToSelectedItemsOnMount } from "./useApplyPropagationToSelectedItemsOnMount.js";
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { TreeViewItemId, TreeViewSelectionPropagation } from "../models/index.js";
|
|
2
|
+
/**
|
|
3
|
+
* Applies the selection propagation rules to the selected items.
|
|
4
|
+
* The value is only computed during the first render, any update of the parameters will be ignored.
|
|
5
|
+
*
|
|
6
|
+
* Uncontrolled example:
|
|
7
|
+
* ```tsx
|
|
8
|
+
* const defaultSelectedItems = useApplyPropagationToSelectedItemsOnMount({
|
|
9
|
+
* items: props.items,
|
|
10
|
+
* selectionPropagation: props.selectionPropagation,
|
|
11
|
+
* selectedItems: ['10', '11', '13', '14'],
|
|
12
|
+
* });
|
|
13
|
+
*
|
|
14
|
+
* return (
|
|
15
|
+
* <RichTreeView
|
|
16
|
+
* items={props.items}
|
|
17
|
+
* selectionPropagation={props.selectionPropagation}
|
|
18
|
+
* defaultSelectedItems={defaultSelectedItems}
|
|
19
|
+
* />
|
|
20
|
+
* );
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* Controlled example:
|
|
24
|
+
* ```tsx
|
|
25
|
+
* const initialSelectedItems = useApplyPropagationToSelectedItemsOnMount({
|
|
26
|
+
* items: props.items,
|
|
27
|
+
* selectionPropagation: props.selectionPropagation,
|
|
28
|
+
* selectedItems: ['10', '11', '13', '14'],
|
|
29
|
+
* });
|
|
30
|
+
*
|
|
31
|
+
* const [selectedItems, setSelectedItems] = React.useState(initialSelectedItems);
|
|
32
|
+
*
|
|
33
|
+
* return (
|
|
34
|
+
* <RichTreeView
|
|
35
|
+
* items={props.items}
|
|
36
|
+
* selectionPropagation={props.selectionPropagation}
|
|
37
|
+
* selectedItems={selectedItems}
|
|
38
|
+
* onSelectedItemsChange={setSelectedItems}
|
|
39
|
+
* />
|
|
40
|
+
* );
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
export declare function useApplyPropagationToSelectedItemsOnMount(parameters: UseApplyPropagationToDefaultSelectedItemsParameters<any>): string[];
|
|
44
|
+
interface UseApplyPropagationToDefaultSelectedItemsParameters<R extends {
|
|
45
|
+
children?: R[];
|
|
46
|
+
}> {
|
|
47
|
+
items: R[];
|
|
48
|
+
getItemId?: (item: R) => TreeViewItemId;
|
|
49
|
+
getItemChildren?: (item: R) => R[] | undefined;
|
|
50
|
+
selectedItems: string[];
|
|
51
|
+
selectionPropagation: TreeViewSelectionPropagation;
|
|
52
|
+
}
|
|
53
|
+
export {};
|