@mui/x-tree-view 8.23.0 → 8.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (494) hide show
  1. package/CHANGELOG.md +111 -1
  2. package/RichTreeView/RichTreeView.d.ts +1 -1
  3. package/RichTreeView/RichTreeView.js +34 -28
  4. package/RichTreeView/RichTreeView.types.d.ts +6 -4
  5. package/RichTreeView/index.d.ts +1 -3
  6. package/RichTreeView/index.js +1 -13
  7. package/RichTreeView/useExtractRichTreeViewParameters.d.ts +294 -0
  8. package/RichTreeView/useExtractRichTreeViewParameters.js +91 -0
  9. package/SimpleTreeView/SimpleTreeView.d.ts +1 -1
  10. package/SimpleTreeView/SimpleTreeView.js +30 -24
  11. package/SimpleTreeView/SimpleTreeView.types.d.ts +5 -4
  12. package/SimpleTreeView/useExtractSimpleTreeViewParameters.d.ts +293 -0
  13. package/SimpleTreeView/useExtractSimpleTreeViewParameters.js +78 -0
  14. package/TreeItem/TreeItem.d.ts +1 -1
  15. package/TreeItemProvider/TreeItemProvider.js +3 -10
  16. package/esm/RichTreeView/RichTreeView.d.ts +1 -1
  17. package/esm/RichTreeView/RichTreeView.js +33 -27
  18. package/esm/RichTreeView/RichTreeView.types.d.ts +6 -4
  19. package/esm/RichTreeView/index.d.ts +1 -3
  20. package/esm/RichTreeView/index.js +1 -1
  21. package/esm/RichTreeView/useExtractRichTreeViewParameters.d.ts +294 -0
  22. package/esm/RichTreeView/useExtractRichTreeViewParameters.js +83 -0
  23. package/esm/SimpleTreeView/SimpleTreeView.d.ts +1 -1
  24. package/esm/SimpleTreeView/SimpleTreeView.js +29 -23
  25. package/esm/SimpleTreeView/SimpleTreeView.types.d.ts +5 -4
  26. package/esm/SimpleTreeView/useExtractSimpleTreeViewParameters.d.ts +293 -0
  27. package/esm/SimpleTreeView/useExtractSimpleTreeViewParameters.js +70 -0
  28. package/esm/TreeItem/TreeItem.d.ts +1 -1
  29. package/esm/TreeItemProvider/TreeItemProvider.js +3 -10
  30. package/esm/hooks/useApplyPropagationToSelectedItemsOnMount.js +1 -1
  31. package/esm/hooks/useRichTreeViewApiRef.d.ts +2 -2
  32. package/esm/hooks/useSimpleTreeViewApiRef.d.ts +2 -3
  33. package/esm/hooks/useTreeItemModel.d.ts +2 -2
  34. package/esm/hooks/useTreeItemModel.js +1 -1
  35. package/esm/hooks/useTreeItemUtils/useTreeItemUtils.d.ts +9 -19
  36. package/esm/hooks/useTreeItemUtils/useTreeItemUtils.js +25 -34
  37. package/esm/hooks/useTreeViewApiRef.d.ts +2 -4
  38. package/esm/hooks/useTreeViewApiRef.js +3 -2
  39. package/esm/index.d.ts +0 -1
  40. package/esm/index.js +1 -2
  41. package/esm/internals/MinimalTreeViewStore/MinimalTreeViewStore.d.ts +90 -0
  42. package/esm/internals/MinimalTreeViewStore/MinimalTreeViewStore.js +126 -0
  43. package/esm/internals/MinimalTreeViewStore/MinimalTreeViewStore.types.d.ts +272 -0
  44. package/esm/internals/MinimalTreeViewStore/MinimalTreeViewStore.utils.d.ts +21 -0
  45. package/esm/internals/MinimalTreeViewStore/MinimalTreeViewStore.utils.js +49 -0
  46. package/esm/internals/MinimalTreeViewStore/TimeoutManager.d.ts +9 -0
  47. package/esm/internals/MinimalTreeViewStore/TimeoutManager.js +39 -0
  48. package/esm/internals/MinimalTreeViewStore/TreeViewItemPluginManager.d.ts +12 -0
  49. package/esm/internals/MinimalTreeViewStore/TreeViewItemPluginManager.js +16 -0
  50. package/esm/internals/MinimalTreeViewStore/index.d.ts +2 -0
  51. package/esm/internals/MinimalTreeViewStore/index.js +2 -0
  52. package/esm/internals/RichTreeViewStore/RichTreeViewStore.d.ts +53 -0
  53. package/esm/internals/RichTreeViewStore/RichTreeViewStore.js +21 -0
  54. package/esm/internals/RichTreeViewStore/RichTreeViewStore.types.d.ts +34 -0
  55. package/esm/internals/RichTreeViewStore/RichTreeViewStore.utils.d.ts +3 -0
  56. package/esm/internals/RichTreeViewStore/RichTreeViewStore.utils.js +15 -0
  57. package/esm/internals/RichTreeViewStore/index.d.ts +3 -0
  58. package/esm/internals/RichTreeViewStore/index.js +3 -0
  59. package/esm/internals/SimpleTreeViewStore/SimpleTreeViewStore.d.ts +8 -0
  60. package/esm/internals/SimpleTreeViewStore/SimpleTreeViewStore.js +18 -0
  61. package/esm/internals/SimpleTreeViewStore/SimpleTreeViewStore.types.d.ts +9 -0
  62. package/esm/internals/SimpleTreeViewStore/SimpleTreeViewStore.utils.d.ts +3 -0
  63. package/esm/internals/SimpleTreeViewStore/SimpleTreeViewStore.utils.js +5 -0
  64. package/esm/internals/SimpleTreeViewStore/index.d.ts +2 -0
  65. package/esm/internals/SimpleTreeViewStore/index.js +2 -0
  66. package/esm/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.d.ts +2 -3
  67. package/esm/internals/TreeViewProvider/TreeViewChildrenItemProvider.js +2 -3
  68. package/esm/internals/TreeViewProvider/TreeViewContext.d.ts +3 -3
  69. package/esm/internals/TreeViewProvider/TreeViewProvider.d.ts +2 -2
  70. package/esm/internals/TreeViewProvider/TreeViewProvider.js +11 -6
  71. package/esm/internals/TreeViewProvider/TreeViewProvider.types.d.ts +8 -10
  72. package/esm/internals/TreeViewProvider/index.d.ts +1 -1
  73. package/esm/internals/TreeViewProvider/useTreeViewBuildContext.d.ts +16 -0
  74. package/esm/internals/{useTreeView → TreeViewProvider}/useTreeViewBuildContext.js +25 -39
  75. package/esm/internals/components/RichTreeViewItems.js +3 -3
  76. package/esm/internals/hooks/useTreeViewRootProps.d.ts +287 -0
  77. package/esm/internals/hooks/useTreeViewRootProps.js +30 -0
  78. package/esm/internals/hooks/useTreeViewStore.d.ts +10 -0
  79. package/esm/internals/hooks/useTreeViewStore.js +19 -0
  80. package/esm/internals/index.d.ts +15 -21
  81. package/esm/internals/index.js +11 -14
  82. package/esm/internals/models/events.d.ts +24 -3
  83. package/esm/internals/models/index.d.ts +2 -3
  84. package/esm/internals/models/index.js +2 -3
  85. package/esm/internals/models/itemPlugin.d.ts +9 -0
  86. package/esm/internals/models/treeView.d.ts +5 -9
  87. package/esm/internals/plugins/expansion/TreeViewExpansionPlugin.d.ts +69 -0
  88. package/esm/internals/plugins/expansion/TreeViewExpansionPlugin.js +124 -0
  89. package/esm/internals/plugins/expansion/index.d.ts +2 -0
  90. package/esm/internals/plugins/expansion/index.js +2 -0
  91. package/esm/internals/plugins/expansion/selectors.d.ts +27 -0
  92. package/esm/internals/plugins/{useTreeViewExpansion/useTreeViewExpansion.selectors.js → expansion/selectors.js} +5 -5
  93. package/esm/internals/plugins/expansion/utils.d.ts +5 -0
  94. package/esm/internals/plugins/focus/TreeViewFocusPlugin.d.ts +33 -0
  95. package/esm/internals/plugins/focus/TreeViewFocusPlugin.js +107 -0
  96. package/esm/internals/plugins/focus/index.d.ts +2 -0
  97. package/esm/internals/plugins/focus/index.js +2 -0
  98. package/esm/internals/plugins/focus/selectors.d.ts +21 -0
  99. package/esm/internals/plugins/{useTreeViewFocus/useTreeViewFocus.selectors.js → focus/selectors.js} +6 -6
  100. package/esm/internals/plugins/id/index.d.ts +1 -0
  101. package/esm/internals/plugins/id/index.js +1 -0
  102. package/esm/internals/plugins/id/selectors.d.ts +13 -0
  103. package/esm/internals/plugins/id/selectors.js +18 -0
  104. package/esm/internals/plugins/items/TreeViewItemsPlugin.d.ts +105 -0
  105. package/esm/internals/plugins/items/TreeViewItemsPlugin.js +223 -0
  106. package/esm/internals/plugins/items/index.d.ts +3 -0
  107. package/esm/internals/plugins/items/index.js +3 -0
  108. package/esm/internals/plugins/items/selectors.d.ts +60 -0
  109. package/esm/internals/plugins/items/selectors.js +64 -0
  110. package/esm/internals/plugins/items/utils.d.ts +43 -0
  111. package/esm/internals/plugins/{useTreeViewItems/useTreeViewItems.utils.js → items/utils.js} +6 -50
  112. package/esm/internals/plugins/{useTreeViewJSXItems/useTreeViewJSXItems.types.d.ts → jsxItems/TreeViewJSXItemsPlugin.d.ts} +6 -13
  113. package/esm/internals/plugins/jsxItems/TreeViewJSXItemsPlugin.js +81 -0
  114. package/esm/internals/plugins/jsxItems/index.d.ts +1 -0
  115. package/esm/internals/plugins/jsxItems/index.js +1 -0
  116. package/esm/internals/plugins/jsxItems/itemPlugin.d.ts +4 -0
  117. package/esm/internals/plugins/{useTreeViewJSXItems → jsxItems}/itemPlugin.js +29 -17
  118. package/esm/internals/plugins/keyboardNavigation/TreeViewKeyboardNavigationPlugin.d.ts +28 -0
  119. package/esm/internals/plugins/keyboardNavigation/TreeViewKeyboardNavigationPlugin.js +306 -0
  120. package/esm/internals/plugins/keyboardNavigation/index.d.ts +1 -0
  121. package/esm/internals/plugins/keyboardNavigation/index.js +1 -0
  122. package/esm/internals/plugins/labelEditing/TreeViewLabelEditingPlugin.d.ts +22 -0
  123. package/esm/internals/plugins/labelEditing/TreeViewLabelEditingPlugin.js +50 -0
  124. package/esm/internals/plugins/labelEditing/index.d.ts +2 -0
  125. package/esm/internals/plugins/labelEditing/index.js +2 -0
  126. package/{internals/plugins/useTreeViewLabel → esm/internals/plugins/labelEditing}/itemPlugin.d.ts +5 -4
  127. package/esm/internals/plugins/{useTreeViewLabel → labelEditing}/itemPlugin.js +2 -2
  128. package/esm/internals/plugins/labelEditing/selectors.d.ts +15 -0
  129. package/esm/internals/plugins/{useTreeViewLabel/useTreeViewLabel.selectors.js → labelEditing/selectors.js} +4 -4
  130. package/esm/internals/plugins/lazyLoading/index.d.ts +2 -0
  131. package/esm/internals/plugins/lazyLoading/index.js +2 -0
  132. package/esm/internals/plugins/lazyLoading/selectors.d.ts +19 -0
  133. package/esm/internals/plugins/lazyLoading/selectors.js +25 -0
  134. package/esm/internals/plugins/lazyLoading/types.d.ts +5 -0
  135. package/esm/internals/plugins/selection/TreeViewSelectionPlugin.d.ts +73 -0
  136. package/esm/internals/plugins/selection/TreeViewSelectionPlugin.js +319 -0
  137. package/esm/internals/plugins/selection/index.d.ts +2 -0
  138. package/esm/internals/plugins/selection/index.js +2 -0
  139. package/esm/internals/plugins/{useTreeViewSelection → selection}/itemPlugin.d.ts +1 -1
  140. package/esm/internals/plugins/{useTreeViewSelection → selection}/itemPlugin.js +3 -3
  141. package/esm/internals/plugins/selection/selectors.d.ts +48 -0
  142. package/esm/internals/plugins/{useTreeViewSelection/useTreeViewSelection.selectors.js → selection/selectors.js} +14 -9
  143. package/esm/internals/utils/tree.d.ts +8 -10
  144. package/esm/internals/utils/tree.js +2 -2
  145. package/esm/models/items.d.ts +5 -2
  146. package/esm/useTreeItem/useTreeItem.d.ts +18 -2
  147. package/esm/useTreeItem/useTreeItem.js +14 -18
  148. package/esm/useTreeItem/useTreeItem.types.d.ts +4 -19
  149. package/hooks/useApplyPropagationToSelectedItemsOnMount.js +2 -2
  150. package/hooks/useRichTreeViewApiRef.d.ts +2 -2
  151. package/hooks/useSimpleTreeViewApiRef.d.ts +2 -3
  152. package/hooks/useTreeItemModel.d.ts +2 -2
  153. package/hooks/useTreeItemModel.js +2 -2
  154. package/hooks/useTreeItemUtils/useTreeItemUtils.d.ts +9 -19
  155. package/hooks/useTreeItemUtils/useTreeItemUtils.js +41 -49
  156. package/hooks/useTreeViewApiRef.d.ts +2 -4
  157. package/hooks/useTreeViewApiRef.js +2 -4
  158. package/index.d.ts +0 -1
  159. package/index.js +1 -22
  160. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.d.ts +90 -0
  161. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.js +134 -0
  162. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.types.d.ts +272 -0
  163. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.utils.d.ts +21 -0
  164. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.utils.js +58 -0
  165. package/internals/MinimalTreeViewStore/TimeoutManager.d.ts +9 -0
  166. package/internals/MinimalTreeViewStore/TimeoutManager.js +46 -0
  167. package/internals/MinimalTreeViewStore/TreeViewItemPluginManager.d.ts +12 -0
  168. package/internals/MinimalTreeViewStore/TreeViewItemPluginManager.js +23 -0
  169. package/internals/MinimalTreeViewStore/index.d.ts +2 -0
  170. package/internals/MinimalTreeViewStore/index.js +27 -0
  171. package/internals/RichTreeViewStore/RichTreeViewStore.d.ts +53 -0
  172. package/internals/RichTreeViewStore/RichTreeViewStore.js +30 -0
  173. package/internals/RichTreeViewStore/RichTreeViewStore.types.d.ts +34 -0
  174. package/internals/RichTreeViewStore/RichTreeViewStore.utils.d.ts +3 -0
  175. package/internals/RichTreeViewStore/RichTreeViewStore.utils.js +22 -0
  176. package/internals/RichTreeViewStore/index.d.ts +3 -0
  177. package/internals/RichTreeViewStore/index.js +38 -0
  178. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.d.ts +8 -0
  179. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.js +26 -0
  180. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.types.d.ts +9 -0
  181. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.utils.d.ts +3 -0
  182. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.utils.js +11 -0
  183. package/internals/SimpleTreeViewStore/index.d.ts +2 -0
  184. package/internals/SimpleTreeViewStore/index.js +27 -0
  185. package/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.d.ts +2 -3
  186. package/internals/TreeViewProvider/TreeViewChildrenItemProvider.js +3 -4
  187. package/internals/TreeViewProvider/TreeViewContext.d.ts +3 -3
  188. package/internals/TreeViewProvider/TreeViewProvider.d.ts +2 -2
  189. package/internals/TreeViewProvider/TreeViewProvider.js +14 -9
  190. package/internals/TreeViewProvider/TreeViewProvider.types.d.ts +8 -10
  191. package/internals/TreeViewProvider/index.d.ts +1 -1
  192. package/internals/TreeViewProvider/useTreeViewBuildContext.d.ts +16 -0
  193. package/internals/{useTreeView → TreeViewProvider}/useTreeViewBuildContext.js +25 -39
  194. package/internals/components/RichTreeViewItems.js +9 -9
  195. package/internals/hooks/useTreeViewRootProps.d.ts +287 -0
  196. package/internals/hooks/useTreeViewRootProps.js +36 -0
  197. package/internals/hooks/useTreeViewStore.d.ts +10 -0
  198. package/internals/hooks/useTreeViewStore.js +26 -0
  199. package/internals/index.d.ts +15 -21
  200. package/internals/index.js +40 -70
  201. package/internals/models/events.d.ts +24 -3
  202. package/internals/models/index.d.ts +2 -3
  203. package/internals/models/index.js +11 -22
  204. package/internals/models/itemPlugin.d.ts +9 -0
  205. package/internals/models/treeView.d.ts +5 -9
  206. package/internals/plugins/expansion/TreeViewExpansionPlugin.d.ts +69 -0
  207. package/internals/plugins/expansion/TreeViewExpansionPlugin.js +132 -0
  208. package/internals/plugins/expansion/index.d.ts +2 -0
  209. package/internals/plugins/expansion/index.js +27 -0
  210. package/internals/plugins/expansion/selectors.d.ts +27 -0
  211. package/internals/plugins/{useTreeViewExpansion/useTreeViewExpansion.selectors.js → expansion/selectors.js} +8 -8
  212. package/internals/plugins/expansion/utils.d.ts +5 -0
  213. package/internals/plugins/focus/TreeViewFocusPlugin.d.ts +33 -0
  214. package/internals/plugins/focus/TreeViewFocusPlugin.js +114 -0
  215. package/internals/plugins/focus/index.d.ts +2 -0
  216. package/internals/plugins/focus/index.js +27 -0
  217. package/internals/plugins/focus/selectors.d.ts +21 -0
  218. package/internals/plugins/{useTreeViewFocus/useTreeViewFocus.selectors.js → focus/selectors.js} +9 -9
  219. package/internals/plugins/id/index.d.ts +1 -0
  220. package/internals/plugins/id/index.js +16 -0
  221. package/internals/plugins/id/selectors.d.ts +13 -0
  222. package/internals/plugins/id/selectors.js +24 -0
  223. package/internals/plugins/items/TreeViewItemsPlugin.d.ts +105 -0
  224. package/internals/plugins/items/TreeViewItemsPlugin.js +231 -0
  225. package/internals/plugins/items/index.d.ts +3 -0
  226. package/internals/plugins/items/index.js +46 -0
  227. package/internals/plugins/items/selectors.d.ts +60 -0
  228. package/internals/plugins/{useTreeViewItems/useTreeViewItems.selectors.js → items/selectors.js} +16 -16
  229. package/internals/plugins/items/utils.d.ts +43 -0
  230. package/internals/plugins/{useTreeViewItems/useTreeViewItems.utils.js → items/utils.js} +6 -51
  231. package/internals/plugins/{useTreeViewJSXItems/useTreeViewJSXItems.types.d.ts → jsxItems/TreeViewJSXItemsPlugin.d.ts} +6 -13
  232. package/internals/plugins/jsxItems/TreeViewJSXItemsPlugin.js +89 -0
  233. package/internals/plugins/jsxItems/index.d.ts +1 -0
  234. package/internals/plugins/jsxItems/index.js +16 -0
  235. package/internals/plugins/jsxItems/itemPlugin.d.ts +4 -0
  236. package/internals/plugins/{useTreeViewJSXItems → jsxItems}/itemPlugin.js +30 -17
  237. package/internals/plugins/keyboardNavigation/TreeViewKeyboardNavigationPlugin.d.ts +28 -0
  238. package/internals/plugins/keyboardNavigation/TreeViewKeyboardNavigationPlugin.js +313 -0
  239. package/internals/plugins/keyboardNavigation/index.d.ts +1 -0
  240. package/internals/plugins/keyboardNavigation/index.js +16 -0
  241. package/internals/plugins/labelEditing/TreeViewLabelEditingPlugin.d.ts +22 -0
  242. package/internals/plugins/labelEditing/TreeViewLabelEditingPlugin.js +58 -0
  243. package/internals/plugins/labelEditing/index.d.ts +2 -0
  244. package/internals/plugins/labelEditing/index.js +27 -0
  245. package/{esm/internals/plugins/useTreeViewLabel → internals/plugins/labelEditing}/itemPlugin.d.ts +5 -4
  246. package/internals/plugins/{useTreeViewLabel → labelEditing}/itemPlugin.js +6 -6
  247. package/internals/plugins/labelEditing/selectors.d.ts +15 -0
  248. package/internals/plugins/{useTreeViewLabel/useTreeViewLabel.selectors.js → labelEditing/selectors.js} +4 -4
  249. package/internals/plugins/lazyLoading/index.d.ts +2 -0
  250. package/internals/plugins/lazyLoading/index.js +27 -0
  251. package/internals/plugins/lazyLoading/selectors.d.ts +19 -0
  252. package/internals/plugins/{useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.js → lazyLoading/selectors.js} +11 -6
  253. package/internals/plugins/lazyLoading/types.d.ts +5 -0
  254. package/internals/plugins/selection/TreeViewSelectionPlugin.d.ts +73 -0
  255. package/internals/plugins/selection/TreeViewSelectionPlugin.js +327 -0
  256. package/internals/plugins/selection/index.d.ts +2 -0
  257. package/internals/plugins/selection/index.js +27 -0
  258. package/internals/plugins/{useTreeViewSelection → selection}/itemPlugin.d.ts +1 -1
  259. package/internals/plugins/{useTreeViewSelection → selection}/itemPlugin.js +13 -13
  260. package/internals/plugins/selection/selectors.d.ts +48 -0
  261. package/internals/plugins/{useTreeViewSelection/useTreeViewSelection.selectors.js → selection/selectors.js} +14 -9
  262. package/internals/utils/tree.d.ts +8 -10
  263. package/internals/utils/tree.js +33 -33
  264. package/models/items.d.ts +5 -2
  265. package/package.json +2 -2
  266. package/useTreeItem/useTreeItem.d.ts +18 -2
  267. package/useTreeItem/useTreeItem.js +18 -23
  268. package/useTreeItem/useTreeItem.types.d.ts +4 -19
  269. package/RichTreeView/RichTreeView.plugins.d.ts +0 -10
  270. package/RichTreeView/RichTreeView.plugins.js +0 -15
  271. package/SimpleTreeView/SimpleTreeView.plugins.d.ts +0 -9
  272. package/SimpleTreeView/SimpleTreeView.plugins.js +0 -15
  273. package/esm/RichTreeView/RichTreeView.plugins.d.ts +0 -10
  274. package/esm/RichTreeView/RichTreeView.plugins.js +0 -9
  275. package/esm/SimpleTreeView/SimpleTreeView.plugins.d.ts +0 -9
  276. package/esm/SimpleTreeView/SimpleTreeView.plugins.js +0 -9
  277. package/esm/internals/corePlugins/corePlugins.d.ts +0 -9
  278. package/esm/internals/corePlugins/corePlugins.js +0 -8
  279. package/esm/internals/corePlugins/index.d.ts +0 -2
  280. package/esm/internals/corePlugins/index.js +0 -1
  281. package/esm/internals/corePlugins/useTreeViewId/index.d.ts +0 -3
  282. package/esm/internals/corePlugins/useTreeViewId/index.js +0 -2
  283. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.d.ts +0 -3
  284. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.js +0 -38
  285. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.d.ts +0 -10
  286. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.js +0 -9
  287. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.types.d.ts +0 -20
  288. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.utils.d.ts +0 -21
  289. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.utils.js +0 -26
  290. package/esm/internals/corePlugins/useTreeViewInstanceEvents/index.d.ts +0 -2
  291. package/esm/internals/corePlugins/useTreeViewInstanceEvents/index.js +0 -1
  292. package/esm/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.d.ts +0 -3
  293. package/esm/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +0 -31
  294. package/esm/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.d.ts +0 -22
  295. package/esm/internals/corePlugins/useTreeViewOptionalPlugins/index.d.ts +0 -2
  296. package/esm/internals/corePlugins/useTreeViewOptionalPlugins/index.js +0 -1
  297. package/esm/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.d.ts +0 -3
  298. package/esm/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.js +0 -12
  299. package/esm/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.d.ts +0 -8
  300. package/esm/internals/hooks/useInstanceEventHandler.d.ts +0 -15
  301. package/esm/internals/hooks/useInstanceEventHandler.js +0 -79
  302. package/esm/internals/models/helpers.d.ts +0 -7
  303. package/esm/internals/models/plugin.d.ts +0 -166
  304. package/esm/internals/models/plugin.js +0 -1
  305. package/esm/internals/plugins/useTreeViewExpansion/index.d.ts +0 -3
  306. package/esm/internals/plugins/useTreeViewExpansion/index.js +0 -2
  307. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.d.ts +0 -3
  308. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +0 -149
  309. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +0 -28
  310. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +0 -112
  311. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.js +0 -1
  312. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.d.ts +0 -6
  313. package/esm/internals/plugins/useTreeViewFocus/index.d.ts +0 -3
  314. package/esm/internals/plugins/useTreeViewFocus/index.js +0 -2
  315. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.d.ts +0 -3
  316. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +0 -113
  317. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.d.ts +0 -22
  318. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +0 -45
  319. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.js +0 -1
  320. package/esm/internals/plugins/useTreeViewItems/index.d.ts +0 -4
  321. package/esm/internals/plugins/useTreeViewItems/index.js +0 -3
  322. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.d.ts +0 -3
  323. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.js +0 -223
  324. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.d.ts +0 -60
  325. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.js +0 -64
  326. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.types.d.ts +0 -204
  327. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.types.js +0 -1
  328. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.utils.d.ts +0 -49
  329. package/esm/internals/plugins/useTreeViewJSXItems/index.d.ts +0 -2
  330. package/esm/internals/plugins/useTreeViewJSXItems/index.js +0 -1
  331. package/esm/internals/plugins/useTreeViewJSXItems/itemPlugin.d.ts +0 -2
  332. package/esm/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.d.ts +0 -3
  333. package/esm/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +0 -104
  334. package/esm/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.js +0 -1
  335. package/esm/internals/plugins/useTreeViewKeyboardNavigation/index.d.ts +0 -2
  336. package/esm/internals/plugins/useTreeViewKeyboardNavigation/index.js +0 -1
  337. package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.d.ts +0 -3
  338. package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +0 -305
  339. package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +0 -32
  340. package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.js +0 -1
  341. package/esm/internals/plugins/useTreeViewLabel/index.d.ts +0 -3
  342. package/esm/internals/plugins/useTreeViewLabel/index.js +0 -2
  343. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.d.ts +0 -3
  344. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +0 -70
  345. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.d.ts +0 -16
  346. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.d.ts +0 -50
  347. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.js +0 -1
  348. package/esm/internals/plugins/useTreeViewLazyLoading/index.d.ts +0 -2
  349. package/esm/internals/plugins/useTreeViewLazyLoading/index.js +0 -1
  350. package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.d.ts +0 -24
  351. package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.js +0 -20
  352. package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.d.ts +0 -100
  353. package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.js +0 -1
  354. package/esm/internals/plugins/useTreeViewSelection/index.d.ts +0 -3
  355. package/esm/internals/plugins/useTreeViewSelection/index.js +0 -2
  356. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.d.ts +0 -3
  357. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +0 -231
  358. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.d.ts +0 -45
  359. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +0 -132
  360. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.js +0 -1
  361. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.d.ts +0 -31
  362. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +0 -107
  363. package/esm/internals/useTreeView/index.d.ts +0 -1
  364. package/esm/internals/useTreeView/index.js +0 -1
  365. package/esm/internals/useTreeView/useExtractPluginParamsFromProps.d.ts +0 -19
  366. package/esm/internals/useTreeView/useExtractPluginParamsFromProps.js +0 -51
  367. package/esm/internals/useTreeView/useTreeView.d.ts +0 -18
  368. package/esm/internals/useTreeView/useTreeView.js +0 -102
  369. package/esm/internals/useTreeView/useTreeView.types.d.ts +0 -20
  370. package/esm/internals/useTreeView/useTreeView.types.js +0 -1
  371. package/esm/internals/useTreeView/useTreeViewBuildContext.d.ts +0 -13
  372. package/esm/internals/utils/cleanupTracking/CleanupTracking.d.ts +0 -9
  373. package/esm/internals/utils/cleanupTracking/CleanupTracking.js +0 -1
  374. package/esm/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.d.ts +0 -7
  375. package/esm/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +0 -14
  376. package/esm/internals/utils/cleanupTracking/TimerBasedCleanupTracking.d.ts +0 -9
  377. package/esm/internals/utils/cleanupTracking/TimerBasedCleanupTracking.js +0 -38
  378. package/esm/internals/utils/plugins.d.ts +0 -2
  379. package/esm/internals/utils/plugins.js +0 -4
  380. package/esm/internals/utils/publishTreeViewEvent.d.ts +0 -5
  381. package/esm/internals/utils/publishTreeViewEvent.js +0 -3
  382. package/internals/corePlugins/corePlugins.d.ts +0 -9
  383. package/internals/corePlugins/corePlugins.js +0 -14
  384. package/internals/corePlugins/index.d.ts +0 -2
  385. package/internals/corePlugins/index.js +0 -12
  386. package/internals/corePlugins/useTreeViewId/index.d.ts +0 -3
  387. package/internals/corePlugins/useTreeViewId/index.js +0 -19
  388. package/internals/corePlugins/useTreeViewId/useTreeViewId.d.ts +0 -3
  389. package/internals/corePlugins/useTreeViewId/useTreeViewId.js +0 -46
  390. package/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.d.ts +0 -10
  391. package/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.js +0 -15
  392. package/internals/corePlugins/useTreeViewId/useTreeViewId.types.d.ts +0 -20
  393. package/internals/corePlugins/useTreeViewId/useTreeViewId.utils.d.ts +0 -21
  394. package/internals/corePlugins/useTreeViewId/useTreeViewId.utils.js +0 -34
  395. package/internals/corePlugins/useTreeViewInstanceEvents/index.d.ts +0 -2
  396. package/internals/corePlugins/useTreeViewInstanceEvents/index.js +0 -12
  397. package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.d.ts +0 -3
  398. package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +0 -38
  399. package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.d.ts +0 -22
  400. package/internals/corePlugins/useTreeViewOptionalPlugins/index.d.ts +0 -2
  401. package/internals/corePlugins/useTreeViewOptionalPlugins/index.js +0 -12
  402. package/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.d.ts +0 -3
  403. package/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.js +0 -19
  404. package/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.d.ts +0 -8
  405. package/internals/hooks/useInstanceEventHandler.d.ts +0 -15
  406. package/internals/hooks/useInstanceEventHandler.js +0 -87
  407. package/internals/models/helpers.d.ts +0 -7
  408. package/internals/models/plugin.d.ts +0 -166
  409. package/internals/models/plugin.js +0 -5
  410. package/internals/plugins/useTreeViewExpansion/index.d.ts +0 -3
  411. package/internals/plugins/useTreeViewExpansion/index.js +0 -19
  412. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.d.ts +0 -3
  413. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +0 -157
  414. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +0 -28
  415. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +0 -112
  416. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.js +0 -5
  417. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.d.ts +0 -6
  418. package/internals/plugins/useTreeViewFocus/index.d.ts +0 -3
  419. package/internals/plugins/useTreeViewFocus/index.js +0 -19
  420. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.d.ts +0 -3
  421. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +0 -121
  422. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.d.ts +0 -22
  423. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +0 -45
  424. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.js +0 -5
  425. package/internals/plugins/useTreeViewItems/index.d.ts +0 -4
  426. package/internals/plugins/useTreeViewItems/index.js +0 -32
  427. package/internals/plugins/useTreeViewItems/useTreeViewItems.d.ts +0 -3
  428. package/internals/plugins/useTreeViewItems/useTreeViewItems.js +0 -231
  429. package/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.d.ts +0 -60
  430. package/internals/plugins/useTreeViewItems/useTreeViewItems.types.d.ts +0 -204
  431. package/internals/plugins/useTreeViewItems/useTreeViewItems.types.js +0 -5
  432. package/internals/plugins/useTreeViewItems/useTreeViewItems.utils.d.ts +0 -49
  433. package/internals/plugins/useTreeViewJSXItems/index.d.ts +0 -2
  434. package/internals/plugins/useTreeViewJSXItems/index.js +0 -12
  435. package/internals/plugins/useTreeViewJSXItems/itemPlugin.d.ts +0 -2
  436. package/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.d.ts +0 -3
  437. package/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +0 -112
  438. package/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.js +0 -5
  439. package/internals/plugins/useTreeViewKeyboardNavigation/index.d.ts +0 -2
  440. package/internals/plugins/useTreeViewKeyboardNavigation/index.js +0 -12
  441. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.d.ts +0 -3
  442. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +0 -312
  443. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +0 -32
  444. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.js +0 -5
  445. package/internals/plugins/useTreeViewLabel/index.d.ts +0 -3
  446. package/internals/plugins/useTreeViewLabel/index.js +0 -19
  447. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.d.ts +0 -3
  448. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +0 -78
  449. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.d.ts +0 -16
  450. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.d.ts +0 -50
  451. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.js +0 -5
  452. package/internals/plugins/useTreeViewLazyLoading/index.d.ts +0 -2
  453. package/internals/plugins/useTreeViewLazyLoading/index.js +0 -12
  454. package/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.d.ts +0 -24
  455. package/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.d.ts +0 -100
  456. package/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.js +0 -5
  457. package/internals/plugins/useTreeViewSelection/index.d.ts +0 -3
  458. package/internals/plugins/useTreeViewSelection/index.js +0 -19
  459. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.d.ts +0 -3
  460. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +0 -240
  461. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.d.ts +0 -45
  462. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +0 -132
  463. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.js +0 -5
  464. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.d.ts +0 -31
  465. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +0 -116
  466. package/internals/useTreeView/index.d.ts +0 -1
  467. package/internals/useTreeView/index.js +0 -12
  468. package/internals/useTreeView/useExtractPluginParamsFromProps.d.ts +0 -19
  469. package/internals/useTreeView/useExtractPluginParamsFromProps.js +0 -60
  470. package/internals/useTreeView/useTreeView.d.ts +0 -18
  471. package/internals/useTreeView/useTreeView.js +0 -112
  472. package/internals/useTreeView/useTreeView.types.d.ts +0 -20
  473. package/internals/useTreeView/useTreeView.types.js +0 -5
  474. package/internals/useTreeView/useTreeViewBuildContext.d.ts +0 -13
  475. package/internals/utils/cleanupTracking/CleanupTracking.d.ts +0 -9
  476. package/internals/utils/cleanupTracking/CleanupTracking.js +0 -5
  477. package/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.d.ts +0 -7
  478. package/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +0 -21
  479. package/internals/utils/cleanupTracking/TimerBasedCleanupTracking.d.ts +0 -9
  480. package/internals/utils/cleanupTracking/TimerBasedCleanupTracking.js +0 -45
  481. package/internals/utils/plugins.d.ts +0 -2
  482. package/internals/utils/plugins.js +0 -11
  483. package/internals/utils/publishTreeViewEvent.d.ts +0 -5
  484. package/internals/utils/publishTreeViewEvent.js +0 -10
  485. /package/esm/internals/{corePlugins/useTreeViewId/useTreeViewId.types.js → MinimalTreeViewStore/MinimalTreeViewStore.types.js} +0 -0
  486. /package/esm/internals/{corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.js → RichTreeViewStore/RichTreeViewStore.types.js} +0 -0
  487. /package/esm/internals/{corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.js → SimpleTreeViewStore/SimpleTreeViewStore.types.js} +0 -0
  488. /package/esm/internals/plugins/{useTreeViewExpansion/useTreeViewExpansion.utils.js → expansion/utils.js} +0 -0
  489. /package/esm/internals/{models/helpers.js → plugins/lazyLoading/types.js} +0 -0
  490. /package/internals/{corePlugins/useTreeViewId/useTreeViewId.types.js → MinimalTreeViewStore/MinimalTreeViewStore.types.js} +0 -0
  491. /package/internals/{corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.js → RichTreeViewStore/RichTreeViewStore.types.js} +0 -0
  492. /package/internals/{corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.js → SimpleTreeViewStore/SimpleTreeViewStore.types.js} +0 -0
  493. /package/internals/plugins/{useTreeViewExpansion/useTreeViewExpansion.utils.js → expansion/utils.js} +0 -0
  494. /package/internals/{models/helpers.js → plugins/lazyLoading/types.js} +0 -0
@@ -1,112 +0,0 @@
1
- import * as React from 'react';
2
- import { DefaultizedProps } from '@mui/x-internals/types';
3
- import { TreeViewPluginSignature } from "../../models/index.js";
4
- import { UseTreeViewItemsSignature } from "../useTreeViewItems/index.js";
5
- import { TreeViewItemId } from "../../../models/index.js";
6
- import { UseTreeViewLabelSignature } from "../useTreeViewLabel/index.js";
7
- export interface UseTreeViewExpansionPublicAPI {
8
- /**
9
- * Change the expansion status of a given item.
10
- * @param {object} parameters The parameters of the method.
11
- * @param {TreeViewItemId} parameters.itemId The id of the item to expand of collapse.
12
- * @param {React.SyntheticEvent} parameters.event The DOM event that triggered the change.
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
- */
15
- setItemExpansion: (parameters: {
16
- itemId: TreeViewItemId;
17
- event?: React.SyntheticEvent;
18
- shouldBeExpanded?: boolean;
19
- }) => void;
20
- /**
21
- * Check if an item is expanded.
22
- * @param {TreeViewItemId} itemId The id of the item to check.
23
- * @returns {boolean} `true` if the item is expanded, `false` otherwise.
24
- */
25
- isItemExpanded: (itemId: TreeViewItemId) => boolean;
26
- }
27
- export interface UseTreeViewExpansionInstance extends Omit<UseTreeViewExpansionPublicAPI, 'isItemExpanded'> {
28
- /**
29
- * Expand all the siblings (i.e.: the items that have the same parent) of a given item.
30
- * @param {React.SyntheticEvent} event The DOM event that triggered the change.
31
- * @param {TreeViewItemId} itemId The id of the item whose siblings will be expanded.
32
- */
33
- expandAllSiblings: (event: React.KeyboardEvent, itemId: TreeViewItemId) => void;
34
- /**
35
- * Apply the new expansion status of a given item.
36
- * Is used by the `setItemExpansion` method and by the `useTreeViewLazyLoading` plugin.
37
- * Unlike `setItemExpansion`, this method does not trigger the lazy loading.
38
- * @param {object} parameters The parameters of the method.
39
- * @param {TreeViewItemId} parameters.itemId The id of the item to expand of collapse.
40
- * @param {React.SyntheticEvent | null} parameters.event The DOM event that triggered the change.
41
- * @param {boolean} parameters.shouldBeExpanded If `true` the item will be expanded. If `false` the item will be collapsed.
42
- */
43
- applyItemExpansion: (parameters: {
44
- itemId: TreeViewItemId;
45
- event: React.SyntheticEvent | null;
46
- shouldBeExpanded: boolean;
47
- }) => void;
48
- /**
49
- * Reset the expansion state of all items.
50
- */
51
- resetItemExpansion: () => void;
52
- }
53
- export interface UseTreeViewExpansionParameters {
54
- /**
55
- * Expanded item ids.
56
- * Used when the item's expansion is controlled.
57
- */
58
- expandedItems?: readonly TreeViewItemId[];
59
- /**
60
- * Expanded item ids.
61
- * Used when the item's expansion is not controlled.
62
- * @default []
63
- */
64
- defaultExpandedItems?: readonly TreeViewItemId[];
65
- /**
66
- * Callback fired when Tree Items are expanded/collapsed.
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 {TreeViewItemId[]} itemIds The ids of the expanded items.
69
- */
70
- onExpandedItemsChange?: (event: React.SyntheticEvent | null, itemIds: TreeViewItemId[]) => void;
71
- /**
72
- * Callback fired when a Tree Item is expanded or collapsed.
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 {TreeViewItemId} itemId The itemId of the modified item.
75
- * @param {boolean} isExpanded `true` if the item has just been expanded, `false` if it has just been collapsed.
76
- */
77
- onItemExpansionToggle?: (event: React.SyntheticEvent | null, itemId: TreeViewItemId, isExpanded: boolean) => void;
78
- /**
79
- * The slot that triggers the item's expansion when clicked.
80
- * @default 'content'
81
- */
82
- expansionTrigger?: 'content' | 'iconContainer';
83
- }
84
- export type UseTreeViewExpansionParametersWithDefaults = DefaultizedProps<UseTreeViewExpansionParameters, 'defaultExpandedItems'>;
85
- export interface UseTreeViewExpansionState {
86
- expansion: {
87
- expandedItems: readonly TreeViewItemId[];
88
- expansionTrigger: 'content' | 'iconContainer';
89
- };
90
- }
91
- interface UseTreeViewExpansionEventLookup {
92
- beforeItemToggleExpansion: {
93
- params: {
94
- isExpansionPrevented: boolean;
95
- shouldBeExpanded: boolean;
96
- event: React.SyntheticEvent | null;
97
- itemId: TreeViewItemId;
98
- };
99
- };
100
- }
101
- export type UseTreeViewExpansionSignature = TreeViewPluginSignature<{
102
- params: UseTreeViewExpansionParameters;
103
- paramsWithDefaults: UseTreeViewExpansionParametersWithDefaults;
104
- instance: UseTreeViewExpansionInstance;
105
- publicAPI: UseTreeViewExpansionPublicAPI;
106
- modelNames: 'expandedItems';
107
- state: UseTreeViewExpansionState;
108
- dependencies: [UseTreeViewItemsSignature];
109
- optionalDependencies: [UseTreeViewLabelSignature];
110
- events: UseTreeViewExpansionEventLookup;
111
- }>;
112
- export {};
@@ -1,6 +0,0 @@
1
- import { TreeViewUsedParamsWithDefaults } from "../../models/index.js";
2
- import { UseTreeViewExpansionSignature } from "./useTreeViewExpansion.types.js";
3
- export declare const getExpansionTrigger: ({
4
- isItemEditable,
5
- expansionTrigger
6
- }: Pick<TreeViewUsedParamsWithDefaults<UseTreeViewExpansionSignature>, "isItemEditable" | "expansionTrigger">) => "content" | "iconContainer";
@@ -1,3 +0,0 @@
1
- export { useTreeViewFocus } from "./useTreeViewFocus.js";
2
- export type { UseTreeViewFocusSignature, UseTreeViewFocusParameters, UseTreeViewFocusParametersWithDefaults } from "./useTreeViewFocus.types.js";
3
- export { focusSelectors } from "./useTreeViewFocus.selectors.js";
@@ -1,2 +0,0 @@
1
- export { useTreeViewFocus } from "./useTreeViewFocus.js";
2
- export { focusSelectors } from "./useTreeViewFocus.selectors.js";
@@ -1,3 +0,0 @@
1
- import { TreeViewPlugin } from "../../models/index.js";
2
- import { UseTreeViewFocusSignature } from "./useTreeViewFocus.types.js";
3
- export declare const useTreeViewFocus: TreeViewPlugin<UseTreeViewFocusSignature>;
@@ -1,113 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import { useStableCallback } from '@base-ui/utils/useStableCallback';
3
- import { useStoreEffect } from '@mui/x-internals/store';
4
- import { focusSelectors } from "./useTreeViewFocus.selectors.js";
5
- import { expansionSelectors } from "../useTreeViewExpansion/useTreeViewExpansion.selectors.js";
6
- import { itemsSelectors } from "../useTreeViewItems/useTreeViewItems.selectors.js";
7
- export const useTreeViewFocus = ({
8
- instance,
9
- params,
10
- store
11
- }) => {
12
- const setFocusedItemId = useStableCallback(itemId => {
13
- const focusedItemId = focusSelectors.focusedItemId(store.state);
14
- if (focusedItemId === itemId) {
15
- return;
16
- }
17
- store.set('focus', _extends({}, store.state.focus, {
18
- focusedItemId: itemId
19
- }));
20
- });
21
- const isItemVisible = itemId => {
22
- const itemMeta = itemsSelectors.itemMeta(store.state, itemId);
23
- return itemMeta && (itemMeta.parentId == null || expansionSelectors.isItemExpanded(store.state, itemMeta.parentId));
24
- };
25
- const innerFocusItem = (event, itemId) => {
26
- const itemElement = instance.getItemDOMElement(itemId);
27
- if (itemElement) {
28
- itemElement.focus();
29
- }
30
- setFocusedItemId(itemId);
31
- if (params.onItemFocus) {
32
- params.onItemFocus(event, itemId);
33
- }
34
- };
35
- const focusItem = useStableCallback((event, itemId) => {
36
- // If we receive an itemId, and it is visible, the focus will be set to it
37
- if (isItemVisible(itemId)) {
38
- innerFocusItem(event, itemId);
39
- }
40
- });
41
- const removeFocusedItem = useStableCallback(() => {
42
- const focusedItemId = focusSelectors.focusedItemId(store.state);
43
- if (focusedItemId == null) {
44
- return;
45
- }
46
- const itemMeta = itemsSelectors.itemMeta(store.state, focusedItemId);
47
- if (itemMeta) {
48
- const itemElement = instance.getItemDOMElement(focusedItemId);
49
- if (itemElement) {
50
- itemElement.blur();
51
- }
52
- }
53
- setFocusedItemId(null);
54
- });
55
-
56
- // Whenever the items change, we need to ensure the focused item is still present.
57
- useStoreEffect(store, itemsSelectors.itemMetaLookup, () => {
58
- const focusedItemId = focusSelectors.focusedItemId(store.state);
59
- if (focusedItemId == null) {
60
- return;
61
- }
62
- const hasItemBeenRemoved = !itemsSelectors.itemMeta(store.state, focusedItemId);
63
- if (!hasItemBeenRemoved) {
64
- return;
65
- }
66
- const defaultFocusableItemId = focusSelectors.defaultFocusableItemId(store.state);
67
- if (defaultFocusableItemId == null) {
68
- setFocusedItemId(null);
69
- return;
70
- }
71
- innerFocusItem(null, defaultFocusableItemId);
72
- });
73
- const createRootHandleFocus = otherHandlers => event => {
74
- otherHandlers.onFocus?.(event);
75
- if (event.defaultMuiPrevented) {
76
- return;
77
- }
78
-
79
- // if the event bubbled (which is React specific) we don't want to steal focus
80
- const defaultFocusableItemId = focusSelectors.defaultFocusableItemId(store.state);
81
- if (event.target === event.currentTarget && defaultFocusableItemId != null) {
82
- innerFocusItem(event, defaultFocusableItemId);
83
- }
84
- };
85
- const createRootHandleBlur = otherHandlers => event => {
86
- otherHandlers.onBlur?.(event);
87
- if (event.defaultMuiPrevented) {
88
- return;
89
- }
90
- setFocusedItemId(null);
91
- };
92
- return {
93
- getRootProps: otherHandlers => ({
94
- onFocus: createRootHandleFocus(otherHandlers),
95
- onBlur: createRootHandleBlur(otherHandlers)
96
- }),
97
- publicAPI: {
98
- focusItem
99
- },
100
- instance: {
101
- focusItem,
102
- removeFocusedItem
103
- }
104
- };
105
- };
106
- useTreeViewFocus.getInitialState = () => ({
107
- focus: {
108
- focusedItemId: null
109
- }
110
- });
111
- useTreeViewFocus.params = {
112
- onItemFocus: true
113
- };
@@ -1,22 +0,0 @@
1
- import { UseTreeViewFocusSignature } from "./useTreeViewFocus.types.js";
2
- import { TreeViewState } from "../../models/index.js";
3
- export declare const focusSelectors: {
4
- /**
5
- * Gets the item that should be sequentially focusable (usually with the Tab key).
6
- * At any point in time, there is a single item that can be sequentially focused in the Tree View.
7
- * This item is the first selected item (that is both visible and navigable), if any, or the first navigable item if no item is selected.
8
- */
9
- defaultFocusableItemId: (args_0: import("../../corePlugins/useTreeViewId/useTreeViewId.types.js").UseTreeViewIdState & import("../useTreeViewItems/index.js").UseTreeViewItemsState<import("../../../index.js").TreeViewDefaultItemModelProperties> & Partial<{}>) => string | null;
10
- /**
11
- * Checks whether an item is the default focusable item.
12
- */
13
- isItemTheDefaultFocusableItem: (args_0: import("../../corePlugins/useTreeViewId/useTreeViewId.types.js").UseTreeViewIdState & import("../useTreeViewItems/index.js").UseTreeViewItemsState<import("../../../index.js").TreeViewDefaultItemModelProperties> & Partial<{}>, itemId: any) => boolean;
14
- /**
15
- * Gets the id of the item that is currently focused.
16
- */
17
- focusedItemId: (state: TreeViewState<[UseTreeViewFocusSignature]>) => string | null;
18
- /**
19
- * Checks whether an item is focused.
20
- */
21
- isItemFocused: (state: TreeViewState<[UseTreeViewFocusSignature]>, itemId: string) => boolean;
22
- };
@@ -1,45 +0,0 @@
1
- import * as React from 'react';
2
- import { TreeViewPluginSignature } from "../../models/index.js";
3
- import type { UseTreeViewItemsSignature } from "../useTreeViewItems/index.js";
4
- import type { UseTreeViewSelectionSignature } from "../useTreeViewSelection/index.js";
5
- import { UseTreeViewExpansionSignature } from "../useTreeViewExpansion/index.js";
6
- import { TreeViewItemId } from "../../../models/index.js";
7
- export interface UseTreeViewFocusPublicAPI {
8
- /**
9
- * Focus the item with the given id.
10
- *
11
- * If the item is the child of a collapsed item, then this method will do nothing.
12
- * Make sure to expand the ancestors of the item before calling this method if needed.
13
- * @param {React.SyntheticEvent | null} event The DOM event that triggered the change.
14
- * @param {TreeViewItemId} itemId The id of the item to focus.
15
- */
16
- focusItem: (event: React.SyntheticEvent | null, itemId: TreeViewItemId) => void;
17
- }
18
- export interface UseTreeViewFocusInstance extends UseTreeViewFocusPublicAPI {
19
- /**
20
- * Remove the focus from the currently focused item (both from the internal state and the DOM).
21
- */
22
- removeFocusedItem: () => void;
23
- }
24
- export interface UseTreeViewFocusParameters {
25
- /**
26
- * Callback fired when a given Tree Item is focused.
27
- * @param {React.SyntheticEvent | null} event The DOM event that triggered the change. **Warning**: This is a generic event not a focus event.
28
- * @param {TreeViewItemId} itemId The id of the focused item.
29
- */
30
- onItemFocus?: (event: React.SyntheticEvent | null, itemId: TreeViewItemId) => void;
31
- }
32
- export type UseTreeViewFocusParametersWithDefaults = UseTreeViewFocusParameters;
33
- export interface UseTreeViewFocusState {
34
- focus: {
35
- focusedItemId: TreeViewItemId | null;
36
- };
37
- }
38
- export type UseTreeViewFocusSignature = TreeViewPluginSignature<{
39
- params: UseTreeViewFocusParameters;
40
- paramsWithDefaults: UseTreeViewFocusParametersWithDefaults;
41
- instance: UseTreeViewFocusInstance;
42
- publicAPI: UseTreeViewFocusPublicAPI;
43
- state: UseTreeViewFocusState;
44
- dependencies: [UseTreeViewItemsSignature, UseTreeViewSelectionSignature, UseTreeViewExpansionSignature];
45
- }>;
@@ -1,4 +0,0 @@
1
- export { useTreeViewItems } from "./useTreeViewItems.js";
2
- export type { UseTreeViewItemsSignature, UseTreeViewItemsParameters, UseTreeViewItemsParametersWithDefaults, UseTreeViewItemsState } from "./useTreeViewItems.types.js";
3
- export { buildSiblingIndexes, TREE_VIEW_ROOT_PARENT_ID } from "./useTreeViewItems.utils.js";
4
- export { itemsSelectors } from "./useTreeViewItems.selectors.js";
@@ -1,3 +0,0 @@
1
- export { useTreeViewItems } from "./useTreeViewItems.js";
2
- export { buildSiblingIndexes, TREE_VIEW_ROOT_PARENT_ID } from "./useTreeViewItems.utils.js";
3
- export { itemsSelectors } from "./useTreeViewItems.selectors.js";
@@ -1,3 +0,0 @@
1
- import { TreeViewPlugin } from "../../models/index.js";
2
- import { UseTreeViewItemsSignature } from "./useTreeViewItems.types.js";
3
- export declare const useTreeViewItems: TreeViewPlugin<UseTreeViewItemsSignature>;
@@ -1,223 +0,0 @@
1
- 'use client';
2
-
3
- import _extends from "@babel/runtime/helpers/esm/extends";
4
- import * as React from 'react';
5
- import { useStableCallback } from '@base-ui/utils/useStableCallback';
6
- import { buildItemsLookups, buildItemsState, TREE_VIEW_ROOT_PARENT_ID } from "./useTreeViewItems.utils.js";
7
- import { TreeViewItemDepthContext } from "../../TreeViewItemDepthContext/index.js";
8
- import { itemsSelectors } from "./useTreeViewItems.selectors.js";
9
- import { idSelectors } from "../../corePlugins/useTreeViewId/index.js";
10
- import { generateTreeItemIdAttribute } from "../../corePlugins/useTreeViewId/useTreeViewId.utils.js";
11
- import { jsx as _jsx } from "react/jsx-runtime";
12
- const defaultIsItemSelectionDisabled = item => item.disableSelection === true;
13
- export const useTreeViewItems = ({
14
- instance,
15
- params,
16
- store
17
- }) => {
18
- const itemsConfig = React.useMemo(() => ({
19
- isItemDisabled: params.isItemDisabled,
20
- isItemSelectionDisabled: params.isItemSelectionDisabled,
21
- getItemLabel: params.getItemLabel,
22
- getItemChildren: params.getItemChildren,
23
- getItemId: params.getItemId
24
- }), [params.isItemDisabled, params.isItemSelectionDisabled, params.getItemLabel, params.getItemChildren, params.getItemId]);
25
- const getItem = React.useCallback(itemId => itemsSelectors.itemModel(store.state, itemId), [store]);
26
- const getParentId = React.useCallback(itemId => {
27
- const itemMeta = itemsSelectors.itemMeta(store.state, itemId);
28
- return itemMeta?.parentId || null;
29
- }, [store]);
30
- const setIsItemDisabled = useStableCallback(({
31
- itemId,
32
- shouldBeDisabled
33
- }) => {
34
- if (!store.state.items.itemMetaLookup[itemId]) {
35
- return;
36
- }
37
- const itemMetaLookup = _extends({}, store.state.items.itemMetaLookup);
38
- itemMetaLookup[itemId] = _extends({}, itemMetaLookup[itemId], {
39
- disabled: shouldBeDisabled ?? !itemMetaLookup[itemId].disabled
40
- });
41
- store.set('items', _extends({}, store.state.items, {
42
- itemMetaLookup
43
- }));
44
- });
45
- const getItemTree = React.useCallback(() => {
46
- const getItemFromItemId = itemId => {
47
- const item = itemsSelectors.itemModel(store.state, itemId);
48
- const itemToMutate = _extends({}, item);
49
- const newChildren = itemsSelectors.itemOrderedChildrenIds(store.state, itemId);
50
- if (newChildren.length > 0) {
51
- itemToMutate.children = newChildren.map(getItemFromItemId);
52
- } else {
53
- delete itemToMutate.children;
54
- }
55
- return itemToMutate;
56
- };
57
- return itemsSelectors.itemOrderedChildrenIds(store.state, null).map(getItemFromItemId);
58
- }, [store]);
59
- const getItemOrderedChildrenIds = React.useCallback(itemId => itemsSelectors.itemOrderedChildrenIds(store.state, itemId), [store]);
60
- const getItemDOMElement = itemId => {
61
- const itemMeta = itemsSelectors.itemMeta(store.state, itemId);
62
- if (itemMeta == null) {
63
- return null;
64
- }
65
- const idAttribute = generateTreeItemIdAttribute({
66
- treeId: idSelectors.treeId(store.state),
67
- itemId,
68
- id: itemMeta.idAttribute
69
- });
70
- return document.getElementById(idAttribute);
71
- };
72
- const areItemUpdatesPreventedRef = React.useRef(false);
73
- const preventItemUpdates = React.useCallback(() => {
74
- areItemUpdatesPreventedRef.current = true;
75
- }, []);
76
- const areItemUpdatesPrevented = React.useCallback(() => areItemUpdatesPreventedRef.current, []);
77
- const setItemChildren = ({
78
- items,
79
- parentId,
80
- getChildrenCount
81
- }) => {
82
- const parentIdWithDefault = parentId ?? TREE_VIEW_ROOT_PARENT_ID;
83
- const parentDepth = parentId == null ? -1 : itemsSelectors.itemDepth(store.state, parentId);
84
- const {
85
- metaLookup,
86
- modelLookup,
87
- orderedChildrenIds,
88
- childrenIndexes
89
- } = buildItemsLookups({
90
- config: itemsConfig,
91
- items,
92
- parentId,
93
- depth: parentDepth + 1,
94
- isItemExpandable: getChildrenCount ? item => getChildrenCount(item) > 0 : () => false,
95
- otherItemsMetaLookup: itemsSelectors.itemMetaLookup(store.state)
96
- });
97
- const lookups = {
98
- itemModelLookup: _extends({}, store.state.items.itemModelLookup, modelLookup),
99
- itemMetaLookup: _extends({}, store.state.items.itemMetaLookup, metaLookup),
100
- itemOrderedChildrenIdsLookup: _extends({}, store.state.items.itemOrderedChildrenIdsLookup, {
101
- [parentIdWithDefault]: orderedChildrenIds
102
- }),
103
- itemChildrenIndexesLookup: _extends({}, store.state.items.itemChildrenIndexesLookup, {
104
- [parentIdWithDefault]: childrenIndexes
105
- })
106
- };
107
- store.set('items', _extends({}, store.state.items, lookups));
108
- };
109
- const removeChildren = useStableCallback(parentId => {
110
- const newMetaMap = Object.keys(store.state.items.itemMetaLookup).reduce((acc, key) => {
111
- const item = store.state.items.itemMetaLookup[key];
112
- if (item.parentId === parentId) {
113
- return acc;
114
- }
115
- return _extends({}, acc, {
116
- [item.id]: item
117
- });
118
- }, {});
119
- const newItemOrderedChildrenIdsLookup = _extends({}, store.state.items.itemOrderedChildrenIdsLookup);
120
- const newItemChildrenIndexesLookup = _extends({}, store.state.items.itemChildrenIndexesLookup);
121
- const cleanId = parentId ?? TREE_VIEW_ROOT_PARENT_ID;
122
- delete newItemChildrenIndexesLookup[cleanId];
123
- delete newItemOrderedChildrenIdsLookup[cleanId];
124
- store.set('items', _extends({}, store.state.items, {
125
- itemMetaLookup: newMetaMap,
126
- itemOrderedChildrenIdsLookup: newItemOrderedChildrenIdsLookup,
127
- itemChildrenIndexesLookup: newItemChildrenIndexesLookup
128
- }));
129
- });
130
- const addExpandableItems = useStableCallback(items => {
131
- const newItemMetaLookup = _extends({}, store.state.items.itemMetaLookup);
132
- for (const itemId of items) {
133
- newItemMetaLookup[itemId] = _extends({}, newItemMetaLookup[itemId], {
134
- expandable: true
135
- });
136
- }
137
- store.set('items', _extends({}, store.state.items, {
138
- itemMetaLookup: newItemMetaLookup
139
- }));
140
- });
141
- React.useEffect(() => {
142
- if (instance.areItemUpdatesPrevented()) {
143
- return;
144
- }
145
- const newState = buildItemsState({
146
- disabledItemsFocusable: params.disabledItemsFocusable,
147
- items: params.items,
148
- config: itemsConfig
149
- });
150
- store.set('items', _extends({}, store.state.items, newState));
151
- }, [instance, store, params.items, params.disabledItemsFocusable, itemsConfig]);
152
-
153
- // Wrap `props.onItemClick` with `useStableCallback` to prevent unneeded context updates.
154
- const handleItemClick = useStableCallback((event, itemId) => {
155
- if (params.onItemClick) {
156
- params.onItemClick(event, itemId);
157
- }
158
- });
159
- return {
160
- getRootProps: () => ({
161
- style: {
162
- '--TreeView-itemChildrenIndentation': typeof params.itemChildrenIndentation === 'number' ? `${params.itemChildrenIndentation}px` : params.itemChildrenIndentation
163
- }
164
- }),
165
- publicAPI: {
166
- getItem,
167
- getItemDOMElement,
168
- getItemTree,
169
- getItemOrderedChildrenIds,
170
- setIsItemDisabled,
171
- getParentId
172
- },
173
- instance: {
174
- getItemDOMElement,
175
- preventItemUpdates,
176
- areItemUpdatesPrevented,
177
- setItemChildren,
178
- removeChildren,
179
- addExpandableItems,
180
- handleItemClick
181
- }
182
- };
183
- };
184
- useTreeViewItems.getInitialState = params => ({
185
- items: buildItemsState({
186
- items: params.items,
187
- disabledItemsFocusable: params.disabledItemsFocusable,
188
- config: {
189
- isItemDisabled: params.isItemDisabled,
190
- isItemSelectionDisabled: params.isItemSelectionDisabled,
191
- getItemId: params.getItemId,
192
- getItemLabel: params.getItemLabel,
193
- getItemChildren: params.getItemChildren
194
- }
195
- })
196
- });
197
- useTreeViewItems.applyDefaultValuesToParams = ({
198
- params
199
- }) => _extends({}, params, {
200
- disabledItemsFocusable: params.disabledItemsFocusable ?? false,
201
- itemChildrenIndentation: params.itemChildrenIndentation ?? '12px',
202
- isItemSelectionDisabled: params.isItemSelectionDisabled ?? defaultIsItemSelectionDisabled
203
- });
204
- useTreeViewItems.wrapRoot = ({
205
- children
206
- }) => {
207
- return /*#__PURE__*/_jsx(TreeViewItemDepthContext.Provider, {
208
- value: itemsSelectors.itemDepth,
209
- children: children
210
- });
211
- };
212
- if (process.env.NODE_ENV !== "production") useTreeViewItems.wrapRoot.displayName = "useTreeViewItems.wrapRoot";
213
- useTreeViewItems.params = {
214
- disabledItemsFocusable: true,
215
- items: true,
216
- isItemDisabled: true,
217
- isItemSelectionDisabled: true,
218
- getItemLabel: true,
219
- getItemChildren: true,
220
- getItemId: true,
221
- onItemClick: true,
222
- itemChildrenIndentation: true
223
- };
@@ -1,60 +0,0 @@
1
- import { TreeViewItemMeta, TreeViewState } from "../../models/index.js";
2
- import { UseTreeViewItemsSignature } from "./useTreeViewItems.types.js";
3
- export declare const itemsSelectors: {
4
- /**
5
- * Gets the DOM structure of the Tree View.
6
- */
7
- domStructure: (state: TreeViewState<[UseTreeViewItemsSignature]>) => "flat" | "nested";
8
- /**
9
- * Checks whether the disabled items are focusable.
10
- */
11
- disabledItemFocusable: (state: TreeViewState<[UseTreeViewItemsSignature]>) => boolean;
12
- /**
13
- * Gets the meta-information of all items.
14
- */
15
- itemMetaLookup: (state: TreeViewState<[UseTreeViewItemsSignature]>) => {
16
- [itemId: string]: TreeViewItemMeta;
17
- };
18
- /**
19
- * Gets the ordered children ids of all items.
20
- */
21
- itemOrderedChildrenIdsLookup: (state: TreeViewState<[UseTreeViewItemsSignature]>) => {
22
- [parentItemId: string]: string[];
23
- };
24
- /**
25
- * Gets the meta-information of an item.
26
- */
27
- itemMeta: (state: TreeViewState<[UseTreeViewItemsSignature]>, itemId: string | null) => TreeViewItemMeta | null;
28
- /**
29
- * Gets the ordered children ids of an item.
30
- */
31
- itemOrderedChildrenIds: (state: TreeViewState<[UseTreeViewItemsSignature]>, itemId: string | null) => string[];
32
- /**
33
- * Gets the model of an item.
34
- */
35
- itemModel: (state: TreeViewState<[UseTreeViewItemsSignature]>, itemId: string) => import("../../../index.js").TreeViewBaseItem<import("../../../index.js").TreeViewDefaultItemModelProperties>;
36
- /**
37
- * Checks whether an item is disabled.
38
- */
39
- isItemDisabled: (state: TreeViewState<[UseTreeViewItemsSignature]>, itemId: string) => boolean;
40
- /**
41
- * Gets the index of an item in its parent's children.
42
- */
43
- itemIndex: (state: TreeViewState<[UseTreeViewItemsSignature]>, itemId: string) => number;
44
- /**
45
- * Gets the id of an item's parent.
46
- */
47
- itemParentId: (state: TreeViewState<[UseTreeViewItemsSignature]>, itemId: string) => string | null;
48
- /**
49
- * Gets the depth of an item (items at the root level have a depth of 0).
50
- */
51
- itemDepth: (state: TreeViewState<[UseTreeViewItemsSignature]>, itemId: string) => number;
52
- /**
53
- * Checks whether an item can be focused.
54
- */
55
- canItemBeFocused: (state: TreeViewState<[UseTreeViewItemsSignature]>, itemId: string) => boolean;
56
- /**
57
- * Checks whether an item is selectable based on the `isItemSelectionDisabled` prop.
58
- */
59
- isItemSelectable: (state: TreeViewState<[UseTreeViewItemsSignature]>, itemId: string) => boolean;
60
- };