@mui/x-tree-view 8.0.0-alpha.8 → 8.0.0-beta.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 (798) hide show
  1. package/CHANGELOG.md +2566 -687
  2. package/README.md +1 -1
  3. package/RichTreeView/RichTreeView.d.ts +4 -4
  4. package/RichTreeView/RichTreeView.js +100 -79
  5. package/RichTreeView/RichTreeView.plugins.d.ts +9 -10
  6. package/RichTreeView/RichTreeView.plugins.js +14 -8
  7. package/RichTreeView/RichTreeView.types.d.ts +40 -40
  8. package/RichTreeView/RichTreeView.types.js +5 -1
  9. package/RichTreeView/index.d.ts +5 -5
  10. package/RichTreeView/index.js +39 -3
  11. package/RichTreeView/richTreeViewClasses.d.ts +3 -3
  12. package/RichTreeView/richTreeViewClasses.js +13 -5
  13. package/SimpleTreeView/SimpleTreeView.d.ts +5 -5
  14. package/SimpleTreeView/SimpleTreeView.js +73 -65
  15. package/SimpleTreeView/SimpleTreeView.plugins.d.ts +8 -9
  16. package/SimpleTreeView/SimpleTreeView.plugins.js +14 -8
  17. package/SimpleTreeView/SimpleTreeView.types.d.ts +41 -41
  18. package/SimpleTreeView/SimpleTreeView.types.js +5 -1
  19. package/SimpleTreeView/index.d.ts +3 -3
  20. package/SimpleTreeView/index.js +27 -3
  21. package/SimpleTreeView/simpleTreeViewClasses.d.ts +3 -3
  22. package/SimpleTreeView/simpleTreeViewClasses.js +13 -5
  23. package/TreeItem/TreeItem.d.ts +10 -8
  24. package/TreeItem/TreeItem.js +121 -73
  25. package/TreeItem/TreeItem.types.d.ts +97 -84
  26. package/TreeItem/TreeItem.types.js +5 -1
  27. package/TreeItem/index.d.ts +2 -2
  28. package/TreeItem/index.js +69 -2
  29. package/TreeItem/treeItemClasses.d.ts +29 -29
  30. package/TreeItem/treeItemClasses.js +13 -5
  31. package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.d.ts +3 -3
  32. package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.js +21 -15
  33. package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.d.ts +4 -4
  34. package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.js +5 -1
  35. package/TreeItemDragAndDropOverlay/index.d.ts +2 -2
  36. package/TreeItemDragAndDropOverlay/index.js +12 -1
  37. package/TreeItemIcon/TreeItemIcon.d.ts +3 -3
  38. package/TreeItemIcon/TreeItemIcon.js +35 -27
  39. package/TreeItemIcon/TreeItemIcon.types.d.ts +33 -33
  40. package/TreeItemIcon/TreeItemIcon.types.js +5 -1
  41. package/TreeItemIcon/index.d.ts +2 -2
  42. package/TreeItemIcon/index.js +12 -1
  43. package/TreeItemLabelInput/TreeItemLabelInput.d.ts +1 -1
  44. package/TreeItemLabelInput/TreeItemLabelInput.js +11 -6
  45. package/TreeItemLabelInput/TreeItemLabelInput.types.d.ts +12 -12
  46. package/TreeItemLabelInput/TreeItemLabelInput.types.js +5 -1
  47. package/TreeItemLabelInput/index.d.ts +2 -2
  48. package/TreeItemLabelInput/index.js +12 -1
  49. package/TreeItemProvider/TreeItemProvider.d.ts +3 -3
  50. package/TreeItemProvider/TreeItemProvider.js +22 -16
  51. package/TreeItemProvider/TreeItemProvider.types.d.ts +5 -5
  52. package/TreeItemProvider/TreeItemProvider.types.js +5 -1
  53. package/TreeItemProvider/index.d.ts +2 -2
  54. package/TreeItemProvider/index.js +12 -1
  55. package/esm/RichTreeView/RichTreeView.d.ts +18 -0
  56. package/{node → esm}/RichTreeView/RichTreeView.js +94 -85
  57. package/esm/RichTreeView/RichTreeView.plugins.d.ts +13 -0
  58. package/esm/RichTreeView/RichTreeView.plugins.js +10 -0
  59. package/esm/RichTreeView/RichTreeView.types.d.ts +52 -0
  60. package/esm/RichTreeView/RichTreeView.types.js +1 -0
  61. package/esm/RichTreeView/index.d.ts +5 -0
  62. package/esm/RichTreeView/index.js +3 -0
  63. package/esm/RichTreeView/richTreeViewClasses.d.ts +7 -0
  64. package/esm/RichTreeView/richTreeViewClasses.js +6 -0
  65. package/esm/SimpleTreeView/SimpleTreeView.d.ts +20 -0
  66. package/{node → esm}/SimpleTreeView/SimpleTreeView.js +67 -71
  67. package/esm/SimpleTreeView/SimpleTreeView.plugins.d.ts +12 -0
  68. package/esm/SimpleTreeView/SimpleTreeView.plugins.js +10 -0
  69. package/esm/SimpleTreeView/SimpleTreeView.types.d.ts +51 -0
  70. package/esm/SimpleTreeView/SimpleTreeView.types.js +1 -0
  71. package/esm/SimpleTreeView/index.d.ts +3 -0
  72. package/esm/SimpleTreeView/index.js +3 -0
  73. package/esm/SimpleTreeView/simpleTreeViewClasses.d.ts +7 -0
  74. package/esm/SimpleTreeView/simpleTreeViewClasses.js +6 -0
  75. package/esm/TreeItem/TreeItem.d.ts +33 -0
  76. package/{node → esm}/TreeItem/TreeItem.js +114 -80
  77. package/esm/TreeItem/TreeItem.types.d.ts +107 -0
  78. package/esm/TreeItem/TreeItem.types.js +1 -0
  79. package/esm/TreeItem/index.d.ts +3 -0
  80. package/esm/TreeItem/index.js +2 -0
  81. package/esm/TreeItem/treeItemClasses.d.ts +33 -0
  82. package/esm/TreeItem/treeItemClasses.js +6 -0
  83. package/esm/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.d.ts +7 -0
  84. package/{node → esm}/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.js +15 -21
  85. package/esm/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.d.ts +6 -0
  86. package/esm/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.js +1 -0
  87. package/esm/TreeItemDragAndDropOverlay/index.d.ts +2 -0
  88. package/esm/TreeItemDragAndDropOverlay/index.js +1 -0
  89. package/esm/TreeItemIcon/TreeItemIcon.d.ts +7 -0
  90. package/esm/TreeItemIcon/TreeItemIcon.js +74 -0
  91. package/esm/TreeItemIcon/TreeItemIcon.types.d.ts +40 -0
  92. package/esm/TreeItemIcon/TreeItemIcon.types.js +1 -0
  93. package/esm/TreeItemIcon/index.d.ts +2 -0
  94. package/esm/TreeItemIcon/index.js +1 -0
  95. package/esm/TreeItemLabelInput/TreeItemLabelInput.d.ts +5 -0
  96. package/esm/TreeItemLabelInput/TreeItemLabelInput.js +24 -0
  97. package/esm/TreeItemLabelInput/TreeItemLabelInput.types.d.ts +14 -0
  98. package/esm/TreeItemLabelInput/TreeItemLabelInput.types.js +1 -0
  99. package/esm/TreeItemLabelInput/index.d.ts +2 -0
  100. package/esm/TreeItemLabelInput/index.js +1 -0
  101. package/esm/TreeItemProvider/TreeItemProvider.d.ts +7 -0
  102. package/esm/TreeItemProvider/TreeItemProvider.js +45 -0
  103. package/esm/TreeItemProvider/TreeItemProvider.types.d.ts +7 -0
  104. package/esm/TreeItemProvider/TreeItemProvider.types.js +1 -0
  105. package/esm/TreeItemProvider/index.d.ts +2 -0
  106. package/esm/TreeItemProvider/index.js +1 -0
  107. package/esm/hooks/index.d.ts +3 -0
  108. package/esm/hooks/index.js +3 -0
  109. package/esm/hooks/useTreeItemModel.d.ts +2 -0
  110. package/esm/hooks/useTreeItemModel.js +11 -0
  111. package/esm/hooks/useTreeItemUtils/index.d.ts +1 -0
  112. package/esm/hooks/useTreeItemUtils/index.js +1 -0
  113. package/esm/hooks/useTreeItemUtils/useTreeItemUtils.d.ts +42 -0
  114. package/{node → esm}/hooks/useTreeItemUtils/useTreeItemUtils.js +45 -39
  115. package/esm/hooks/useTreeViewApiRef.d.ts +7 -0
  116. package/esm/hooks/useTreeViewApiRef.js +7 -0
  117. package/esm/icons/icons.d.ts +6 -0
  118. package/esm/icons/icons.js +9 -0
  119. package/esm/icons/index.d.ts +1 -0
  120. package/esm/icons/index.js +1 -0
  121. package/esm/index.d.ts +12 -0
  122. package/esm/index.js +22 -0
  123. package/esm/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.d.ts +5 -0
  124. package/esm/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.js +5 -0
  125. package/esm/internals/TreeViewItemDepthContext/index.d.ts +1 -0
  126. package/esm/internals/TreeViewItemDepthContext/index.js +1 -0
  127. package/esm/internals/TreeViewProvider/TreeViewChildrenItemProvider.d.ts +17 -0
  128. package/{node → esm}/internals/TreeViewProvider/TreeViewChildrenItemProvider.js +14 -23
  129. package/esm/internals/TreeViewProvider/TreeViewContext.d.ts +6 -0
  130. package/esm/internals/TreeViewProvider/TreeViewContext.js +8 -0
  131. package/esm/internals/TreeViewProvider/TreeViewProvider.d.ts +9 -0
  132. package/esm/internals/TreeViewProvider/TreeViewProvider.js +20 -0
  133. package/esm/internals/TreeViewProvider/TreeViewProvider.types.d.ts +19 -0
  134. package/esm/internals/TreeViewProvider/TreeViewProvider.types.js +1 -0
  135. package/esm/internals/TreeViewProvider/index.d.ts +3 -0
  136. package/esm/internals/TreeViewProvider/index.js +2 -0
  137. package/esm/internals/TreeViewProvider/useTreeViewContext.d.ts +3 -0
  138. package/esm/internals/TreeViewProvider/useTreeViewContext.js +9 -0
  139. package/esm/internals/components/RichTreeViewItems.d.ts +32 -0
  140. package/esm/internals/components/RichTreeViewItems.js +68 -0
  141. package/esm/internals/corePlugins/corePlugins.d.ts +9 -0
  142. package/esm/internals/corePlugins/corePlugins.js +8 -0
  143. package/esm/internals/corePlugins/index.d.ts +2 -0
  144. package/esm/internals/corePlugins/index.js +1 -0
  145. package/esm/internals/corePlugins/useTreeViewId/index.d.ts +2 -0
  146. package/esm/internals/corePlugins/useTreeViewId/index.js +1 -0
  147. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.d.ts +3 -0
  148. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.js +39 -0
  149. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.d.ts +36 -0
  150. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.js +9 -0
  151. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.types.d.ts +20 -0
  152. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.types.js +1 -0
  153. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.utils.d.ts +21 -0
  154. package/{node → esm}/internals/corePlugins/useTreeViewId/useTreeViewId.utils.js +3 -11
  155. package/esm/internals/corePlugins/useTreeViewInstanceEvents/index.d.ts +2 -0
  156. package/esm/internals/corePlugins/useTreeViewInstanceEvents/index.js +1 -0
  157. package/esm/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.d.ts +3 -0
  158. package/{node → esm}/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +4 -12
  159. package/esm/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.d.ts +22 -0
  160. package/esm/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.js +1 -0
  161. package/esm/internals/corePlugins/useTreeViewOptionalPlugins/index.d.ts +2 -0
  162. package/esm/internals/corePlugins/useTreeViewOptionalPlugins/index.js +1 -0
  163. package/esm/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.d.ts +3 -0
  164. package/esm/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.js +12 -0
  165. package/esm/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.d.ts +8 -0
  166. package/esm/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.js +1 -0
  167. package/esm/internals/hooks/useInstanceEventHandler.d.ts +15 -0
  168. package/{node → esm}/internals/hooks/useInstanceEventHandler.js +7 -16
  169. package/esm/internals/hooks/useLazyRef.d.ts +1 -0
  170. package/esm/internals/hooks/useLazyRef.js +1 -0
  171. package/esm/internals/hooks/useOnMount.d.ts +1 -0
  172. package/esm/internals/hooks/useOnMount.js +1 -0
  173. package/esm/internals/hooks/useSelector.d.ts +4 -0
  174. package/esm/internals/hooks/useSelector.js +9 -0
  175. package/esm/internals/hooks/useTimeout.d.ts +1 -0
  176. package/esm/internals/hooks/useTimeout.js +1 -0
  177. package/esm/internals/index.d.ts +33 -0
  178. package/esm/internals/index.js +24 -0
  179. package/esm/internals/models/events.d.ts +9 -0
  180. package/esm/internals/models/events.js +1 -0
  181. package/esm/internals/models/helpers.d.ts +7 -0
  182. package/esm/internals/models/helpers.js +1 -0
  183. package/esm/internals/models/index.d.ts +4 -0
  184. package/esm/internals/models/index.js +4 -0
  185. package/esm/internals/models/itemPlugin.d.ts +43 -0
  186. package/esm/internals/models/itemPlugin.js +1 -0
  187. package/esm/internals/models/plugin.d.ts +151 -0
  188. package/esm/internals/models/plugin.js +1 -0
  189. package/esm/internals/models/treeView.d.ts +32 -0
  190. package/esm/internals/models/treeView.js +1 -0
  191. package/esm/internals/plugins/useTreeViewExpansion/index.d.ts +2 -0
  192. package/esm/internals/plugins/useTreeViewExpansion/index.js +1 -0
  193. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.d.ts +3 -0
  194. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +134 -0
  195. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +184 -0
  196. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.js +24 -0
  197. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +102 -0
  198. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.js +1 -0
  199. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.d.ts +7 -0
  200. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.js +19 -0
  201. package/esm/internals/plugins/useTreeViewFocus/index.d.ts +2 -0
  202. package/esm/internals/plugins/useTreeViewFocus/index.js +1 -0
  203. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.d.ts +3 -0
  204. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +135 -0
  205. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.d.ts +182 -0
  206. package/{node → esm}/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.js +5 -11
  207. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +45 -0
  208. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.js +1 -0
  209. package/esm/internals/plugins/useTreeViewIcons/index.d.ts +2 -0
  210. package/esm/internals/plugins/useTreeViewIcons/index.js +1 -0
  211. package/esm/internals/plugins/useTreeViewIcons/useTreeViewIcons.d.ts +3 -0
  212. package/{node → esm}/internals/plugins/useTreeViewIcons/useTreeViewIcons.js +2 -10
  213. package/esm/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.d.ts +42 -0
  214. package/esm/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.js +1 -0
  215. package/esm/internals/plugins/useTreeViewItems/index.d.ts +3 -0
  216. package/esm/internals/plugins/useTreeViewItems/index.js +2 -0
  217. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.d.ts +3 -0
  218. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.js +330 -0
  219. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.d.ts +1058 -0
  220. package/{node → esm}/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.js +25 -18
  221. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.types.d.ts +205 -0
  222. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.types.js +1 -0
  223. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.utils.d.ts +4 -0
  224. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.utils.js +8 -0
  225. package/esm/internals/plugins/useTreeViewJSXItems/index.d.ts +2 -0
  226. package/esm/internals/plugins/useTreeViewJSXItems/index.js +1 -0
  227. package/esm/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.d.ts +3 -0
  228. package/esm/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +183 -0
  229. package/esm/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.d.ts +35 -0
  230. package/esm/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.js +1 -0
  231. package/esm/internals/plugins/useTreeViewKeyboardNavigation/index.d.ts +2 -0
  232. package/esm/internals/plugins/useTreeViewKeyboardNavigation/index.js +1 -0
  233. package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.d.ts +3 -0
  234. package/{node → esm}/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +47 -47
  235. package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +33 -0
  236. package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.js +1 -0
  237. package/esm/internals/plugins/useTreeViewLabel/index.d.ts +2 -0
  238. package/esm/internals/plugins/useTreeViewLabel/index.js +1 -0
  239. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.d.ts +3 -0
  240. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.d.ts +2 -0
  241. package/{node → esm}/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.js +9 -17
  242. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +68 -0
  243. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.d.ts +74 -0
  244. package/{node → esm}/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.js +4 -10
  245. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.d.ts +59 -0
  246. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.js +1 -0
  247. package/esm/internals/plugins/useTreeViewLazyLoading/index.d.ts +1 -0
  248. package/esm/internals/plugins/useTreeViewLazyLoading/index.js +1 -0
  249. package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.d.ts +249 -0
  250. package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.js +27 -0
  251. package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.d.ts +83 -0
  252. package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.js +1 -0
  253. package/esm/internals/plugins/useTreeViewSelection/index.d.ts +2 -0
  254. package/esm/internals/plugins/useTreeViewSelection/index.js +1 -0
  255. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.d.ts +3 -0
  256. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.d.ts +2 -0
  257. package/{node → esm}/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.js +14 -22
  258. package/{node → esm}/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +34 -43
  259. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.d.ts +32 -0
  260. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.js +9 -0
  261. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +144 -0
  262. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.js +1 -0
  263. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.d.ts +38 -0
  264. package/{node → esm}/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +16 -26
  265. package/esm/internals/useTreeView/extractPluginParamsFromProps.d.ts +22 -0
  266. package/{node → esm}/internals/useTreeView/extractPluginParamsFromProps.js +4 -12
  267. package/esm/internals/useTreeView/index.d.ts +1 -0
  268. package/esm/internals/useTreeView/index.js +1 -0
  269. package/esm/internals/useTreeView/useTreeView.d.ts +9 -0
  270. package/{node → esm}/internals/useTreeView/useTreeView.js +19 -29
  271. package/esm/internals/useTreeView/useTreeView.types.d.ts +23 -0
  272. package/esm/internals/useTreeView/useTreeView.types.js +1 -0
  273. package/esm/internals/useTreeView/useTreeViewBuildContext.d.ts +18 -0
  274. package/{node → esm}/internals/useTreeView/useTreeViewBuildContext.js +3 -11
  275. package/esm/internals/useTreeView/useTreeViewModels.d.ts +7 -0
  276. package/{node → esm}/internals/useTreeView/useTreeViewModels.js +5 -14
  277. package/esm/internals/useTreeView/useTreeViewPlugins.d.ts +0 -0
  278. package/esm/internals/useTreeView/useTreeViewPlugins.js +0 -0
  279. package/esm/internals/utils/TreeViewStore.d.ts +12 -0
  280. package/{node → esm}/internals/utils/TreeViewStore.js +2 -9
  281. package/esm/internals/utils/cleanupTracking/CleanupTracking.d.ts +9 -0
  282. package/esm/internals/utils/cleanupTracking/CleanupTracking.js +1 -0
  283. package/esm/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.d.ts +7 -0
  284. package/{node → esm}/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +2 -9
  285. package/esm/internals/utils/cleanupTracking/TimerBasedCleanupTracking.d.ts +9 -0
  286. package/{node → esm}/internals/utils/cleanupTracking/TimerBasedCleanupTracking.js +2 -9
  287. package/esm/internals/utils/plugins.d.ts +2 -0
  288. package/esm/internals/utils/plugins.js +4 -0
  289. package/esm/internals/utils/publishTreeViewEvent.d.ts +5 -0
  290. package/esm/internals/utils/publishTreeViewEvent.js +3 -0
  291. package/esm/internals/utils/selectors.d.ts +16 -0
  292. package/{node → esm}/internals/utils/selectors.js +14 -12
  293. package/esm/internals/utils/tree.d.ts +32 -0
  294. package/{node → esm}/internals/utils/tree.js +41 -55
  295. package/esm/internals/utils/utils.d.ts +2 -0
  296. package/{node → esm}/internals/utils/utils.js +2 -10
  297. package/esm/internals/zero-styled/index.d.ts +3 -0
  298. package/esm/internals/zero-styled/index.js +7 -0
  299. package/esm/models/events.d.ts +4 -0
  300. package/esm/models/events.js +1 -0
  301. package/esm/models/index.d.ts +3 -0
  302. package/esm/models/index.js +5 -0
  303. package/esm/models/items.d.ts +13 -0
  304. package/esm/models/items.js +1 -0
  305. package/esm/package.json +1 -0
  306. package/esm/themeAugmentation/components.d.ts +21 -0
  307. package/esm/themeAugmentation/index.d.ts +3 -0
  308. package/esm/themeAugmentation/index.js +0 -0
  309. package/esm/themeAugmentation/overrides.d.ts +16 -0
  310. package/esm/themeAugmentation/props.d.ts +14 -0
  311. package/esm/useTreeItem/index.d.ts +2 -0
  312. package/esm/useTreeItem/index.js +1 -0
  313. package/esm/useTreeItem/useTreeItem.d.ts +2 -0
  314. package/{node → esm}/useTreeItem/useTreeItem.js +67 -62
  315. package/esm/useTreeItem/useTreeItem.types.d.ts +196 -0
  316. package/esm/useTreeItem/useTreeItem.types.js +1 -0
  317. package/esm/utils/cache.d.ts +38 -0
  318. package/esm/utils/cache.js +31 -0
  319. package/esm/utils/index.d.ts +1 -0
  320. package/esm/utils/index.js +1 -0
  321. package/hooks/index.d.ts +3 -3
  322. package/hooks/index.js +26 -3
  323. package/hooks/useTreeItemModel.d.ts +2 -2
  324. package/hooks/useTreeItemModel.js +13 -7
  325. package/hooks/useTreeItemUtils/index.d.ts +1 -1
  326. package/hooks/useTreeItemUtils/index.js +12 -1
  327. package/hooks/useTreeItemUtils/useTreeItemUtils.d.ts +25 -26
  328. package/hooks/useTreeItemUtils/useTreeItemUtils.js +51 -33
  329. package/hooks/useTreeViewApiRef.d.ts +3 -3
  330. package/hooks/useTreeViewApiRef.js +9 -2
  331. package/icons/icons.d.ts +3 -3
  332. package/icons/icons.js +12 -5
  333. package/icons/index.d.ts +1 -1
  334. package/icons/index.js +16 -1
  335. package/index.d.ts +12 -12
  336. package/index.js +147 -15
  337. package/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.d.ts +3 -3
  338. package/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.js +9 -2
  339. package/internals/TreeViewItemDepthContext/index.d.ts +1 -1
  340. package/internals/TreeViewItemDepthContext/index.js +12 -1
  341. package/internals/TreeViewProvider/TreeViewChildrenItemProvider.d.ts +8 -8
  342. package/internals/TreeViewProvider/TreeViewChildrenItemProvider.js +23 -14
  343. package/internals/TreeViewProvider/TreeViewContext.d.ts +2 -2
  344. package/internals/TreeViewProvider/TreeViewContext.js +9 -2
  345. package/internals/TreeViewProvider/TreeViewProvider.d.ts +3 -3
  346. package/internals/TreeViewProvider/TreeViewProvider.js +12 -5
  347. package/internals/TreeViewProvider/TreeViewProvider.types.d.ts +13 -13
  348. package/internals/TreeViewProvider/TreeViewProvider.types.js +5 -1
  349. package/internals/TreeViewProvider/index.d.ts +3 -3
  350. package/internals/TreeViewProvider/index.js +19 -2
  351. package/internals/TreeViewProvider/useTreeViewContext.d.ts +3 -3
  352. package/internals/TreeViewProvider/useTreeViewContext.js +13 -5
  353. package/internals/components/RichTreeViewItems.d.ts +21 -21
  354. package/internals/components/RichTreeViewItems.js +31 -23
  355. package/internals/corePlugins/corePlugins.d.ts +3 -4
  356. package/internals/corePlugins/corePlugins.js +10 -4
  357. package/internals/corePlugins/index.d.ts +2 -2
  358. package/internals/corePlugins/index.js +12 -1
  359. package/internals/corePlugins/useTreeViewId/index.d.ts +2 -2
  360. package/internals/corePlugins/useTreeViewId/index.js +12 -1
  361. package/internals/corePlugins/useTreeViewId/useTreeViewId.d.ts +3 -3
  362. package/internals/corePlugins/useTreeViewId/useTreeViewId.js +19 -10
  363. package/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.d.ts +25 -25
  364. package/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.js +8 -2
  365. package/internals/corePlugins/useTreeViewId/useTreeViewId.types.d.ts +14 -14
  366. package/internals/corePlugins/useTreeViewId/useTreeViewId.types.js +5 -1
  367. package/internals/corePlugins/useTreeViewId/useTreeViewId.utils.d.ts +10 -6
  368. package/internals/corePlugins/useTreeViewId/useTreeViewId.utils.js +11 -3
  369. package/internals/corePlugins/useTreeViewInstanceEvents/index.d.ts +2 -2
  370. package/internals/corePlugins/useTreeViewInstanceEvents/index.js +12 -1
  371. package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.d.ts +2 -2
  372. package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +12 -4
  373. package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.d.ts +19 -19
  374. package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.js +5 -1
  375. package/internals/corePlugins/useTreeViewOptionalPlugins/index.d.ts +2 -2
  376. package/internals/corePlugins/useTreeViewOptionalPlugins/index.js +12 -1
  377. package/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.d.ts +3 -3
  378. package/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.js +8 -1
  379. package/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.d.ts +4 -4
  380. package/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.js +5 -1
  381. package/internals/hooks/useInstanceEventHandler.d.ts +8 -8
  382. package/internals/hooks/useInstanceEventHandler.js +16 -7
  383. package/internals/hooks/useLazyRef.d.ts +1 -1
  384. package/internals/hooks/useLazyRef.js +13 -1
  385. package/internals/hooks/useOnMount.d.ts +1 -1
  386. package/internals/hooks/useOnMount.js +13 -1
  387. package/internals/hooks/useSelector.d.ts +4 -4
  388. package/internals/hooks/useSelector.js +15 -4
  389. package/internals/hooks/useTimeout.d.ts +1 -1
  390. package/internals/hooks/useTimeout.js +13 -1
  391. package/internals/index.d.ts +31 -26
  392. package/internals/index.js +192 -20
  393. package/internals/models/events.d.ts +3 -3
  394. package/internals/models/events.js +5 -1
  395. package/internals/models/helpers.d.ts +1 -1
  396. package/internals/models/helpers.js +5 -1
  397. package/internals/models/index.d.ts +4 -4
  398. package/internals/models/index.js +49 -4
  399. package/internals/models/itemPlugin.d.ts +28 -28
  400. package/internals/models/itemPlugin.js +5 -1
  401. package/internals/models/plugin.d.ts +125 -148
  402. package/internals/models/plugin.js +5 -1
  403. package/internals/models/treeView.d.ts +19 -19
  404. package/internals/models/treeView.js +5 -1
  405. package/internals/plugins/useTreeViewExpansion/index.d.ts +2 -2
  406. package/internals/plugins/useTreeViewExpansion/index.js +12 -1
  407. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.d.ts +3 -3
  408. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +64 -33
  409. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +141 -137
  410. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.js +11 -5
  411. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +88 -64
  412. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.js +5 -1
  413. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.d.ts +6 -3
  414. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.js +11 -3
  415. package/internals/plugins/useTreeViewFocus/index.d.ts +2 -2
  416. package/internals/plugins/useTreeViewFocus/index.js +12 -1
  417. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.d.ts +3 -3
  418. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +40 -31
  419. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.d.ts +121 -121
  420. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.js +11 -5
  421. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +32 -36
  422. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.js +5 -1
  423. package/internals/plugins/useTreeViewIcons/index.d.ts +2 -2
  424. package/internals/plugins/useTreeViewIcons/index.js +12 -1
  425. package/internals/plugins/useTreeViewIcons/useTreeViewIcons.d.ts +3 -3
  426. package/internals/plugins/useTreeViewIcons/useTreeViewIcons.js +10 -2
  427. package/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.d.ts +31 -32
  428. package/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.js +5 -1
  429. package/internals/plugins/useTreeViewItems/index.d.ts +3 -3
  430. package/internals/plugins/useTreeViewItems/index.js +25 -2
  431. package/internals/plugins/useTreeViewItems/useTreeViewItems.d.ts +3 -3
  432. package/internals/plugins/useTreeViewItems/useTreeViewItems.js +194 -44
  433. package/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.d.ts +856 -684
  434. package/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.js +31 -12
  435. package/internals/plugins/useTreeViewItems/useTreeViewItems.types.d.ts +179 -130
  436. package/internals/plugins/useTreeViewItems/useTreeViewItems.types.js +5 -1
  437. package/internals/plugins/useTreeViewItems/useTreeViewItems.utils.d.ts +2 -2
  438. package/internals/plugins/useTreeViewItems/useTreeViewItems.utils.js +10 -3
  439. package/internals/plugins/useTreeViewJSXItems/index.d.ts +2 -2
  440. package/internals/plugins/useTreeViewJSXItems/index.js +12 -1
  441. package/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.d.ts +3 -3
  442. package/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +56 -47
  443. package/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.d.ts +32 -34
  444. package/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.js +5 -1
  445. package/internals/plugins/useTreeViewKeyboardNavigation/index.d.ts +2 -2
  446. package/internals/plugins/useTreeViewKeyboardNavigation/index.js +12 -1
  447. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.d.ts +3 -3
  448. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +56 -38
  449. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +27 -31
  450. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.js +5 -1
  451. package/internals/plugins/useTreeViewLabel/index.d.ts +2 -2
  452. package/internals/plugins/useTreeViewLabel/index.js +12 -1
  453. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.d.ts +3 -3
  454. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.d.ts +2 -2
  455. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.js +17 -9
  456. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +23 -24
  457. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.d.ts +49 -49
  458. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.js +10 -4
  459. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.d.ts +44 -49
  460. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.js +5 -1
  461. package/internals/plugins/useTreeViewLazyLoading/index.d.ts +1 -0
  462. package/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.d.ts +249 -0
  463. package/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.js +33 -0
  464. package/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.d.ts +83 -0
  465. package/internals/plugins/useTreeViewSelection/index.d.ts +2 -2
  466. package/internals/plugins/useTreeViewSelection/index.js +12 -1
  467. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.d.ts +3 -3
  468. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.d.ts +2 -2
  469. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.js +22 -14
  470. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +43 -34
  471. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.d.ts +22 -22
  472. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.js +8 -2
  473. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +123 -128
  474. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.js +5 -1
  475. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.d.ts +27 -17
  476. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +26 -16
  477. package/internals/useTreeView/extractPluginParamsFromProps.d.ts +18 -9
  478. package/internals/useTreeView/extractPluginParamsFromProps.js +12 -4
  479. package/internals/useTreeView/index.d.ts +1 -1
  480. package/internals/useTreeView/index.js +12 -1
  481. package/internals/useTreeView/useTreeView.d.ts +7 -3
  482. package/internals/useTreeView/useTreeView.js +29 -19
  483. package/internals/useTreeView/useTreeView.types.d.ts +13 -13
  484. package/internals/useTreeView/useTreeView.types.js +5 -1
  485. package/internals/useTreeView/useTreeViewBuildContext.d.ts +17 -11
  486. package/internals/useTreeView/useTreeViewBuildContext.js +11 -3
  487. package/internals/useTreeView/useTreeViewModels.d.ts +3 -3
  488. package/internals/useTreeView/useTreeViewModels.js +14 -5
  489. package/internals/useTreeView/useTreeViewPlugins.js +1 -0
  490. package/internals/utils/TreeViewStore.d.ts +7 -7
  491. package/internals/utils/TreeViewStore.js +9 -2
  492. package/internals/utils/cleanupTracking/CleanupTracking.d.ts +5 -5
  493. package/internals/utils/cleanupTracking/CleanupTracking.js +5 -1
  494. package/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.d.ts +6 -6
  495. package/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +9 -2
  496. package/internals/utils/cleanupTracking/TimerBasedCleanupTracking.d.ts +8 -8
  497. package/internals/utils/cleanupTracking/TimerBasedCleanupTracking.js +9 -2
  498. package/internals/utils/plugins.d.ts +2 -2
  499. package/internals/utils/plugins.js +9 -2
  500. package/internals/utils/publishTreeViewEvent.d.ts +4 -4
  501. package/internals/utils/publishTreeViewEvent.js +9 -2
  502. package/internals/utils/selectors.d.ts +9 -2
  503. package/internals/utils/selectors.js +21 -5
  504. package/internals/utils/tree.d.ts +2 -2
  505. package/internals/utils/tree.js +55 -41
  506. package/internals/utils/utils.d.ts +1 -1
  507. package/internals/utils/utils.js +10 -2
  508. package/internals/zero-styled/index.d.ts +1 -1
  509. package/internals/zero-styled/index.js +14 -4
  510. package/models/events.d.ts +2 -2
  511. package/models/events.js +5 -1
  512. package/models/index.d.ts +3 -3
  513. package/models/index.js +26 -4
  514. package/models/items.d.ts +6 -6
  515. package/models/items.js +5 -1
  516. package/modern/RichTreeView/RichTreeView.d.ts +18 -0
  517. package/modern/RichTreeView/RichTreeView.js +28 -13
  518. package/modern/RichTreeView/RichTreeView.plugins.d.ts +13 -0
  519. package/modern/RichTreeView/RichTreeView.types.d.ts +52 -0
  520. package/modern/RichTreeView/index.d.ts +5 -0
  521. package/modern/RichTreeView/richTreeViewClasses.d.ts +7 -0
  522. package/modern/SimpleTreeView/SimpleTreeView.d.ts +20 -0
  523. package/modern/SimpleTreeView/SimpleTreeView.js +8 -6
  524. package/modern/SimpleTreeView/SimpleTreeView.plugins.d.ts +12 -0
  525. package/modern/SimpleTreeView/SimpleTreeView.types.d.ts +51 -0
  526. package/modern/SimpleTreeView/index.d.ts +3 -0
  527. package/modern/SimpleTreeView/simpleTreeViewClasses.d.ts +7 -0
  528. package/modern/TreeItem/TreeItem.d.ts +33 -0
  529. package/modern/TreeItem/TreeItem.js +45 -4
  530. package/modern/TreeItem/TreeItem.types.d.ts +107 -0
  531. package/modern/TreeItem/index.d.ts +3 -0
  532. package/modern/TreeItem/treeItemClasses.d.ts +33 -0
  533. package/modern/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.d.ts +7 -0
  534. package/modern/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.d.ts +6 -0
  535. package/modern/TreeItemDragAndDropOverlay/index.d.ts +2 -0
  536. package/modern/TreeItemIcon/TreeItemIcon.d.ts +7 -0
  537. package/modern/TreeItemIcon/TreeItemIcon.js +2 -0
  538. package/modern/TreeItemIcon/TreeItemIcon.types.d.ts +40 -0
  539. package/modern/TreeItemIcon/index.d.ts +2 -0
  540. package/modern/TreeItemLabelInput/TreeItemLabelInput.d.ts +5 -0
  541. package/modern/TreeItemLabelInput/TreeItemLabelInput.types.d.ts +14 -0
  542. package/modern/TreeItemLabelInput/index.d.ts +2 -0
  543. package/modern/TreeItemProvider/TreeItemProvider.d.ts +7 -0
  544. package/modern/TreeItemProvider/TreeItemProvider.types.d.ts +7 -0
  545. package/modern/TreeItemProvider/index.d.ts +2 -0
  546. package/modern/hooks/index.d.ts +3 -0
  547. package/modern/hooks/useTreeItemModel.d.ts +2 -0
  548. package/modern/hooks/useTreeItemUtils/index.d.ts +1 -0
  549. package/modern/hooks/useTreeItemUtils/useTreeItemUtils.d.ts +42 -0
  550. package/modern/hooks/useTreeItemUtils/useTreeItemUtils.js +21 -9
  551. package/modern/hooks/useTreeViewApiRef.d.ts +7 -0
  552. package/modern/icons/icons.d.ts +6 -0
  553. package/modern/icons/index.d.ts +1 -0
  554. package/modern/index.d.ts +12 -0
  555. package/modern/index.js +1 -1
  556. package/modern/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.d.ts +5 -0
  557. package/modern/internals/TreeViewItemDepthContext/index.d.ts +1 -0
  558. package/modern/internals/TreeViewProvider/TreeViewChildrenItemProvider.d.ts +17 -0
  559. package/modern/internals/TreeViewProvider/TreeViewContext.d.ts +6 -0
  560. package/modern/internals/TreeViewProvider/TreeViewProvider.d.ts +9 -0
  561. package/modern/internals/TreeViewProvider/TreeViewProvider.types.d.ts +19 -0
  562. package/modern/internals/TreeViewProvider/index.d.ts +3 -0
  563. package/modern/internals/TreeViewProvider/useTreeViewContext.d.ts +3 -0
  564. package/modern/internals/components/RichTreeViewItems.d.ts +32 -0
  565. package/modern/internals/corePlugins/corePlugins.d.ts +9 -0
  566. package/modern/internals/corePlugins/index.d.ts +2 -0
  567. package/modern/internals/corePlugins/useTreeViewId/index.d.ts +2 -0
  568. package/modern/internals/corePlugins/useTreeViewId/useTreeViewId.d.ts +3 -0
  569. package/modern/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.d.ts +36 -0
  570. package/modern/internals/corePlugins/useTreeViewId/useTreeViewId.types.d.ts +20 -0
  571. package/modern/internals/corePlugins/useTreeViewId/useTreeViewId.utils.d.ts +21 -0
  572. package/modern/internals/corePlugins/useTreeViewInstanceEvents/index.d.ts +2 -0
  573. package/modern/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.d.ts +3 -0
  574. package/modern/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.d.ts +22 -0
  575. package/modern/internals/corePlugins/useTreeViewOptionalPlugins/index.d.ts +2 -0
  576. package/modern/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.d.ts +3 -0
  577. package/modern/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.d.ts +8 -0
  578. package/modern/internals/hooks/useInstanceEventHandler.d.ts +15 -0
  579. package/modern/internals/hooks/useLazyRef.d.ts +1 -0
  580. package/modern/internals/hooks/useOnMount.d.ts +1 -0
  581. package/modern/internals/hooks/useSelector.d.ts +4 -0
  582. package/modern/internals/hooks/useSelector.js +4 -1
  583. package/modern/internals/hooks/useTimeout.d.ts +1 -0
  584. package/modern/internals/index.d.ts +33 -0
  585. package/modern/internals/index.js +4 -1
  586. package/modern/internals/models/events.d.ts +9 -0
  587. package/modern/internals/models/helpers.d.ts +7 -0
  588. package/modern/internals/models/index.d.ts +4 -0
  589. package/modern/internals/models/itemPlugin.d.ts +43 -0
  590. package/modern/internals/models/plugin.d.ts +151 -0
  591. package/modern/internals/models/treeView.d.ts +32 -0
  592. package/modern/internals/plugins/useTreeViewExpansion/index.d.ts +2 -0
  593. package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.d.ts +3 -0
  594. package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +35 -12
  595. package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +184 -0
  596. package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +102 -0
  597. package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.d.ts +7 -0
  598. package/modern/internals/plugins/useTreeViewFocus/index.d.ts +2 -0
  599. package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.d.ts +3 -0
  600. package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.d.ts +182 -0
  601. package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +45 -0
  602. package/modern/internals/plugins/useTreeViewIcons/index.d.ts +2 -0
  603. package/modern/internals/plugins/useTreeViewIcons/useTreeViewIcons.d.ts +3 -0
  604. package/modern/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.d.ts +42 -0
  605. package/modern/internals/plugins/useTreeViewItems/index.d.ts +3 -0
  606. package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.d.ts +3 -0
  607. package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.js +157 -16
  608. package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.d.ts +1058 -0
  609. package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.js +13 -0
  610. package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.types.d.ts +205 -0
  611. package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.utils.d.ts +4 -0
  612. package/modern/internals/plugins/useTreeViewJSXItems/index.d.ts +2 -0
  613. package/modern/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.d.ts +3 -0
  614. package/modern/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +2 -2
  615. package/modern/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.d.ts +35 -0
  616. package/modern/internals/plugins/useTreeViewKeyboardNavigation/index.d.ts +2 -0
  617. package/modern/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.d.ts +3 -0
  618. package/modern/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +16 -7
  619. package/modern/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +33 -0
  620. package/modern/internals/plugins/useTreeViewLabel/index.d.ts +2 -0
  621. package/modern/internals/plugins/useTreeViewLabel/useTreeViewLabel.d.ts +3 -0
  622. package/modern/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.d.ts +2 -0
  623. package/modern/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +4 -14
  624. package/modern/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.d.ts +74 -0
  625. package/modern/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.d.ts +59 -0
  626. package/modern/internals/plugins/useTreeViewLazyLoading/index.d.ts +1 -0
  627. package/modern/internals/plugins/useTreeViewLazyLoading/index.js +1 -0
  628. package/modern/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.d.ts +249 -0
  629. package/modern/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.js +27 -0
  630. package/modern/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.d.ts +83 -0
  631. package/modern/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.js +1 -0
  632. package/modern/internals/plugins/useTreeViewSelection/index.d.ts +2 -0
  633. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.d.ts +3 -0
  634. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.d.ts +2 -0
  635. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +4 -4
  636. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.d.ts +32 -0
  637. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +144 -0
  638. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.d.ts +38 -0
  639. package/modern/internals/useTreeView/extractPluginParamsFromProps.d.ts +22 -0
  640. package/modern/internals/useTreeView/index.d.ts +1 -0
  641. package/modern/internals/useTreeView/useTreeView.d.ts +9 -0
  642. package/modern/internals/useTreeView/useTreeView.types.d.ts +23 -0
  643. package/modern/internals/useTreeView/useTreeViewBuildContext.d.ts +18 -0
  644. package/modern/internals/useTreeView/useTreeViewModels.d.ts +7 -0
  645. package/modern/internals/useTreeView/useTreeViewPlugins.d.ts +0 -0
  646. package/modern/internals/utils/TreeViewStore.d.ts +12 -0
  647. package/modern/internals/utils/cleanupTracking/CleanupTracking.d.ts +9 -0
  648. package/modern/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.d.ts +7 -0
  649. package/modern/internals/utils/cleanupTracking/TimerBasedCleanupTracking.d.ts +9 -0
  650. package/modern/internals/utils/plugins.d.ts +2 -0
  651. package/modern/internals/utils/publishTreeViewEvent.d.ts +5 -0
  652. package/modern/internals/utils/selectors.d.ts +16 -0
  653. package/modern/internals/utils/selectors.js +9 -0
  654. package/modern/internals/utils/tree.d.ts +32 -0
  655. package/modern/internals/utils/utils.d.ts +2 -0
  656. package/modern/internals/zero-styled/index.d.ts +3 -0
  657. package/modern/models/events.d.ts +4 -0
  658. package/modern/models/index.d.ts +3 -0
  659. package/modern/models/items.d.ts +13 -0
  660. package/modern/package.json +1 -0
  661. package/modern/themeAugmentation/components.d.ts +21 -0
  662. package/modern/themeAugmentation/index.d.ts +3 -0
  663. package/modern/themeAugmentation/overrides.d.ts +16 -0
  664. package/modern/themeAugmentation/props.d.ts +14 -0
  665. package/modern/useTreeItem/index.d.ts +2 -0
  666. package/modern/useTreeItem/useTreeItem.d.ts +2 -0
  667. package/modern/useTreeItem/useTreeItem.js +13 -0
  668. package/modern/useTreeItem/useTreeItem.types.d.ts +196 -0
  669. package/modern/utils/cache.d.ts +38 -0
  670. package/modern/utils/cache.js +31 -0
  671. package/modern/utils/index.d.ts +1 -0
  672. package/modern/utils/index.js +1 -0
  673. package/package.json +41 -8
  674. package/themeAugmentation/components.d.ts +1 -3
  675. package/themeAugmentation/index.d.ts +1 -1
  676. package/themeAugmentation/index.js +1 -0
  677. package/themeAugmentation/overrides.d.ts +4 -5
  678. package/themeAugmentation/props.d.ts +4 -6
  679. package/tsconfig.build.tsbuildinfo +1 -0
  680. package/useTreeItem/index.d.ts +2 -2
  681. package/useTreeItem/index.js +12 -1
  682. package/useTreeItem/useTreeItem.d.ts +2 -2
  683. package/useTreeItem/useTreeItem.js +75 -54
  684. package/useTreeItem/useTreeItem.types.d.ts +161 -151
  685. package/useTreeItem/useTreeItem.types.js +5 -1
  686. package/utils/cache.d.ts +38 -0
  687. package/utils/cache.js +38 -0
  688. package/utils/index.d.ts +1 -0
  689. package/{node/icons → utils}/index.js +4 -4
  690. package/RichTreeView/package.json +0 -6
  691. package/SimpleTreeView/package.json +0 -6
  692. package/TreeItem/package.json +0 -6
  693. package/TreeItemDragAndDropOverlay/package.json +0 -6
  694. package/TreeItemIcon/package.json +0 -6
  695. package/TreeItemLabelInput/package.json +0 -6
  696. package/TreeItemProvider/package.json +0 -6
  697. package/hooks/package.json +0 -6
  698. package/icons/package.json +0 -6
  699. package/internals/package.json +0 -6
  700. package/models/package.json +0 -6
  701. package/node/RichTreeView/RichTreeView.plugins.js +0 -16
  702. package/node/RichTreeView/index.js +0 -39
  703. package/node/RichTreeView/richTreeViewClasses.js +0 -14
  704. package/node/SimpleTreeView/SimpleTreeView.plugins.js +0 -16
  705. package/node/SimpleTreeView/index.js +0 -27
  706. package/node/SimpleTreeView/simpleTreeViewClasses.js +0 -14
  707. package/node/TreeItem/TreeItem.types.js +0 -5
  708. package/node/TreeItem/index.js +0 -69
  709. package/node/TreeItem/treeItemClasses.js +0 -14
  710. package/node/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.js +0 -5
  711. package/node/TreeItemDragAndDropOverlay/index.js +0 -12
  712. package/node/TreeItemIcon/TreeItemIcon.js +0 -78
  713. package/node/TreeItemIcon/TreeItemIcon.types.js +0 -5
  714. package/node/TreeItemIcon/index.js +0 -12
  715. package/node/TreeItemLabelInput/TreeItemLabelInput.js +0 -29
  716. package/node/TreeItemLabelInput/TreeItemLabelInput.types.js +0 -5
  717. package/node/TreeItemLabelInput/index.js +0 -12
  718. package/node/TreeItemProvider/TreeItemProvider.js +0 -51
  719. package/node/TreeItemProvider/TreeItemProvider.types.js +0 -5
  720. package/node/TreeItemProvider/index.js +0 -12
  721. package/node/hooks/index.js +0 -26
  722. package/node/hooks/useTreeItemModel.js +0 -17
  723. package/node/hooks/useTreeItemUtils/index.js +0 -12
  724. package/node/hooks/useTreeViewApiRef.js +0 -14
  725. package/node/icons/icons.js +0 -16
  726. package/node/index.js +0 -154
  727. package/node/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.js +0 -12
  728. package/node/internals/TreeViewItemDepthContext/index.js +0 -12
  729. package/node/internals/TreeViewProvider/TreeViewContext.js +0 -15
  730. package/node/internals/TreeViewProvider/TreeViewProvider.js +0 -27
  731. package/node/internals/TreeViewProvider/TreeViewProvider.types.js +0 -5
  732. package/node/internals/TreeViewProvider/index.js +0 -19
  733. package/node/internals/TreeViewProvider/useTreeViewContext.js +0 -17
  734. package/node/internals/components/RichTreeViewItems.js +0 -76
  735. package/node/internals/corePlugins/corePlugins.js +0 -14
  736. package/node/internals/corePlugins/index.js +0 -12
  737. package/node/internals/corePlugins/useTreeViewId/index.js +0 -12
  738. package/node/internals/corePlugins/useTreeViewId/useTreeViewId.js +0 -48
  739. package/node/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.js +0 -15
  740. package/node/internals/corePlugins/useTreeViewId/useTreeViewId.types.js +0 -5
  741. package/node/internals/corePlugins/useTreeViewInstanceEvents/index.js +0 -12
  742. package/node/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.js +0 -5
  743. package/node/internals/corePlugins/useTreeViewOptionalPlugins/index.js +0 -12
  744. package/node/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.js +0 -19
  745. package/node/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.js +0 -5
  746. package/node/internals/hooks/useLazyRef.js +0 -13
  747. package/node/internals/hooks/useOnMount.js +0 -13
  748. package/node/internals/hooks/useSelector.js +0 -13
  749. package/node/internals/hooks/useTimeout.js +0 -13
  750. package/node/internals/index.js +0 -160
  751. package/node/internals/models/events.js +0 -5
  752. package/node/internals/models/helpers.js +0 -5
  753. package/node/internals/models/index.js +0 -49
  754. package/node/internals/models/itemPlugin.js +0 -5
  755. package/node/internals/models/plugin.js +0 -5
  756. package/node/internals/models/treeView.js +0 -5
  757. package/node/internals/plugins/useTreeViewExpansion/index.js +0 -12
  758. package/node/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +0 -119
  759. package/node/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.js +0 -30
  760. package/node/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.js +0 -5
  761. package/node/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.js +0 -27
  762. package/node/internals/plugins/useTreeViewFocus/index.js +0 -12
  763. package/node/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +0 -144
  764. package/node/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.js +0 -5
  765. package/node/internals/plugins/useTreeViewIcons/index.js +0 -12
  766. package/node/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.js +0 -5
  767. package/node/internals/plugins/useTreeViewItems/index.js +0 -25
  768. package/node/internals/plugins/useTreeViewItems/useTreeViewItems.js +0 -198
  769. package/node/internals/plugins/useTreeViewItems/useTreeViewItems.types.js +0 -5
  770. package/node/internals/plugins/useTreeViewItems/useTreeViewItems.utils.js +0 -15
  771. package/node/internals/plugins/useTreeViewJSXItems/index.js +0 -12
  772. package/node/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +0 -192
  773. package/node/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.js +0 -5
  774. package/node/internals/plugins/useTreeViewKeyboardNavigation/index.js +0 -12
  775. package/node/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.js +0 -5
  776. package/node/internals/plugins/useTreeViewLabel/index.js +0 -12
  777. package/node/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +0 -87
  778. package/node/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.js +0 -5
  779. package/node/internals/plugins/useTreeViewSelection/index.js +0 -12
  780. package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.js +0 -15
  781. package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.js +0 -5
  782. package/node/internals/useTreeView/index.js +0 -12
  783. package/node/internals/useTreeView/useTreeView.types.js +0 -5
  784. package/node/internals/useTreeView/useTreeViewPlugins.js +0 -1
  785. package/node/internals/utils/cleanupTracking/CleanupTracking.js +0 -5
  786. package/node/internals/utils/plugins.js +0 -11
  787. package/node/internals/utils/publishTreeViewEvent.js +0 -10
  788. package/node/internals/zero-styled/index.js +0 -17
  789. package/node/models/events.js +0 -5
  790. package/node/models/index.js +0 -27
  791. package/node/models/items.js +0 -5
  792. package/node/themeAugmentation/index.js +0 -1
  793. package/node/useTreeItem/index.js +0 -12
  794. package/node/useTreeItem/useTreeItem.types.js +0 -5
  795. package/themeAugmentation/package.json +0 -6
  796. package/useTreeItem/package.json +0 -6
  797. /package/{node/RichTreeView/RichTreeView.types.js → internals/plugins/useTreeViewLazyLoading/index.js} +0 -0
  798. /package/{node/SimpleTreeView/SimpleTreeView.types.js → internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.js} +0 -0
@@ -2,6 +2,19 @@ import { createSelector } from "../../utils/selectors.js";
2
2
  import { TREE_VIEW_ROOT_PARENT_ID } from "./useTreeViewItems.utils.js";
3
3
  const selectorTreeViewItemsState = state => state.items;
4
4
 
5
+ /**
6
+ * Get the loading state for the Tree View.
7
+ * @param {TreeViewState<[UseTreeViewItemsSignature]>} state The state of the tree view.
8
+ * @returns {boolean} The loading state for the Tree View.
9
+ */
10
+ export const selectorIsTreeViewLoading = createSelector(selectorTreeViewItemsState, items => items.loading);
11
+ /**
12
+ * Get the error state for the Tree View.
13
+ * @param {TreeViewState<[UseTreeViewItemsSignature]>} state The state of the tree view.
14
+ * @returns {boolean} The error state for the Tree View.
15
+ */
16
+ export const selectorGetTreeViewError = createSelector(selectorTreeViewItemsState, items => items.error);
17
+
5
18
  /**
6
19
  * Get the meta-information of all items.
7
20
  * @param {TreeViewState<[UseTreeViewItemsSignature]>} state The state of the tree view.
@@ -0,0 +1,205 @@
1
+ import * as React from 'react';
2
+ import { DefaultizedProps } from '@mui/x-internals/types';
3
+ import { TreeViewItemMeta, TreeViewPluginSignature } from "../../models/index.js";
4
+ import { TreeViewBaseItem, TreeViewDefaultItemModelProperties, TreeViewItemId } from "../../../models/index.js";
5
+ export type AddItemsParameters<R> = {
6
+ items: readonly R[];
7
+ parentId?: TreeViewItemId;
8
+ depth: number;
9
+ getChildrenCount?: (item: R) => number;
10
+ };
11
+ export interface UseTreeViewItemsPublicAPI<R extends {}> {
12
+ /**
13
+ * Get the item with the given id.
14
+ * When used in the Simple Tree View, it returns an object with the `id` and `label` properties.
15
+ * @param {string} itemId The id of the item to retrieve.
16
+ * @returns {R} The item with the given id.
17
+ */
18
+ getItem: (itemId: TreeViewItemId) => R;
19
+ /**
20
+ * Get the DOM element of the item with the given id.
21
+ * @param {TreeViewItemId} itemId The id of the item to get the DOM element of.
22
+ * @returns {HTMLElement | null} The DOM element of the item with the given id.
23
+ */
24
+ getItemDOMElement: (itemId: TreeViewItemId) => HTMLElement | null;
25
+ /**
26
+ * Get the ids of a given item's children.
27
+ * Those ids are returned in the order they should be rendered.
28
+ * To get the root items, pass `null` as the `itemId`.
29
+ * @param {TreeViewItemId | null} itemId The id of the item to get the children of.
30
+ * @returns {TreeViewItemId[]} The ids of the item's children.
31
+ */
32
+ getItemOrderedChildrenIds: (itemId: TreeViewItemId | null) => TreeViewItemId[];
33
+ /**
34
+ * Get all the items in the same format as provided by `props.items`.
35
+ * @returns {TreeViewBaseItem[]} The items in the tree.
36
+ */
37
+ getItemTree: () => TreeViewBaseItem[];
38
+ /**
39
+ * Toggle the disabled state of the item with the given id.
40
+ * @param {object} parameters The params of the method.
41
+ * @param {TreeViewItemId } parameters.itemId The id of the item to get the children of.
42
+ * @param {boolean } parameters.shouldBeDisabled true if the item should be disabled.
43
+ */
44
+ setIsItemDisabled: (parameters: {
45
+ itemId: TreeViewItemId;
46
+ shouldBeDisabled?: boolean;
47
+ }) => void;
48
+ /** * Get the id of the parent item.
49
+ * @param {string} itemId The id of the item to whose parentId we want to retrieve.
50
+ * @returns {TreeViewItemId | null} The id of the parent item.
51
+ */
52
+ getParentId: (itemId: TreeViewItemId) => TreeViewItemId | null;
53
+ }
54
+ export interface UseTreeViewItemsInstance<R extends {}> extends Pick<UseTreeViewItemsPublicAPI<R>, 'getItemDOMElement'> {
55
+ /**
56
+ * Freeze any future update to the state based on the `items` prop.
57
+ * This is useful when `useTreeViewJSXItems` is used to avoid having conflicting sources of truth.
58
+ */
59
+ preventItemUpdates: () => void;
60
+ /**
61
+ * Check if the updates to the state based on the `items` prop are prevented.
62
+ * This is useful when `useTreeViewJSXItems` is used to avoid having conflicting sources of truth.
63
+ * @returns {boolean} `true` if the updates to the state based on the `items` prop are prevented.
64
+ */
65
+ areItemUpdatesPrevented: () => boolean;
66
+ /**
67
+ * Add an array of items to the tree.
68
+ * @param {AddItemsParameters<R>} args The items to add to the tree and information about their ancestors.
69
+ */
70
+ addItems: (args: AddItemsParameters<R>) => void;
71
+ /**
72
+ * Remove the children of an item.
73
+ * @param {TreeViewItemId} parentId The id of the item to remove the children of.
74
+ */
75
+ removeChildren: (parentId?: TreeViewItemId) => void;
76
+ /**
77
+ * Set the loading state of the tree.
78
+ * @param {boolean} loading True if the tree view is loading.
79
+ */
80
+ setTreeViewLoading: (loading: boolean) => void;
81
+ /**
82
+ * Set the error state of the tree.
83
+ * @param {Error | null} error The error on the tree view.
84
+ */
85
+ setTreeViewError: (error: Error | null) => void;
86
+ }
87
+ export interface UseTreeViewItemsParameters<R extends {
88
+ children?: R[];
89
+ }> {
90
+ /**
91
+ * If `true`, will allow focus on disabled items.
92
+ * @default false
93
+ */
94
+ disabledItemsFocusable?: boolean;
95
+ items: readonly R[];
96
+ /**
97
+ * Used to determine if a given item should be disabled.
98
+ * @template R
99
+ * @param {R} item The item to check.
100
+ * @returns {boolean} `true` if the item should be disabled.
101
+ */
102
+ isItemDisabled?: (item: R) => boolean;
103
+ /**
104
+ * Used to determine the string label for a given item.
105
+ *
106
+ * @template R
107
+ * @param {R} item The item to check.
108
+ * @returns {string} The label of the item.
109
+ * @default (item) => item.label
110
+ */
111
+ getItemLabel?: (item: R) => string;
112
+ /**
113
+ * Used to determine the id of a given item.
114
+ *
115
+ * @template R
116
+ * @param {R} item The item to check.
117
+ * @returns {string} The id of the item.
118
+ * @default (item) => item.id
119
+ */
120
+ getItemId?: (item: R) => TreeViewItemId;
121
+ /**
122
+ * Callback fired when the `content` slot of a given Tree Item is clicked.
123
+ * @param {React.MouseEvent} event The DOM event that triggered the change.
124
+ * @param {string} itemId The id of the focused item.
125
+ */
126
+ onItemClick?: (event: React.MouseEvent, itemId: string) => void;
127
+ /**
128
+ * Horizontal indentation between an item and its children.
129
+ * Examples: 24, "24px", "2rem", "2em".
130
+ * @default 12px
131
+ */
132
+ itemChildrenIndentation?: string | number;
133
+ }
134
+ export type UseTreeViewItemsDefaultizedParameters<R extends {
135
+ children?: R[];
136
+ }> = DefaultizedProps<UseTreeViewItemsParameters<R>, 'disabledItemsFocusable' | 'itemChildrenIndentation'>;
137
+ interface UseTreeViewItemsEventLookup {
138
+ removeItem: {
139
+ params: {
140
+ id: string;
141
+ };
142
+ };
143
+ }
144
+ export interface UseTreeViewItemsState<R extends {}> {
145
+ items: {
146
+ /**
147
+ * If `true`, will allow focus on disabled items.
148
+ * Always equal to `props.disabledItemsFocusable` (or `false` if not provided).
149
+ */
150
+ disabledItemsFocusable: boolean;
151
+ /**
152
+ * Model of each item as provided by `props.items` or by imperative items updates.
153
+ * It is not updated when properties derived from the model are updated:
154
+ * - when the label of an item is updated, `itemMetaLookup` is updated, not `itemModelLookup`.
155
+ * - when the children of an item are updated, `itemOrderedChildrenIdsLookup` and `itemChildrenIndexesLookup` are updated, not `itemModelLookup`.
156
+ * This means that the `children`, `label` or `id` properties of an item model should never be used directly, always use the structured sub-states instead.
157
+ */
158
+ itemModelLookup: {
159
+ [itemId: string]: TreeViewBaseItem<R>;
160
+ };
161
+ /**
162
+ * Meta data of each item.
163
+ */
164
+ itemMetaLookup: {
165
+ [itemId: string]: TreeViewItemMeta;
166
+ };
167
+ /**
168
+ * Ordered children ids of each item.
169
+ */
170
+ itemOrderedChildrenIdsLookup: {
171
+ [parentItemId: string]: string[];
172
+ };
173
+ /**
174
+ * Index of each child in the ordered children ids of its parent.
175
+ */
176
+ itemChildrenIndexesLookup: {
177
+ [parentItemId: string]: {
178
+ [itemId: string]: number;
179
+ };
180
+ };
181
+ /**
182
+ * The loading state of the tree.
183
+ */
184
+ loading: boolean;
185
+ /**
186
+ * The error state of the tree.
187
+ */
188
+ error: Error | null;
189
+ };
190
+ }
191
+ interface UseTreeViewItemsContextValue {
192
+ items: {
193
+ onItemClick: (event: React.MouseEvent, itemId: string) => void;
194
+ };
195
+ }
196
+ export type UseTreeViewItemsSignature = TreeViewPluginSignature<{
197
+ params: UseTreeViewItemsParameters<any>;
198
+ defaultizedParams: UseTreeViewItemsDefaultizedParameters<any>;
199
+ instance: UseTreeViewItemsInstance<any>;
200
+ publicAPI: UseTreeViewItemsPublicAPI<any>;
201
+ events: UseTreeViewItemsEventLookup;
202
+ state: UseTreeViewItemsState<TreeViewDefaultItemModelProperties>;
203
+ contextValue: UseTreeViewItemsContextValue;
204
+ }>;
205
+ export {};
@@ -0,0 +1,4 @@
1
+ export declare const TREE_VIEW_ROOT_PARENT_ID = "__TREE_VIEW_ROOT_PARENT_ID__";
2
+ export declare const buildSiblingIndexes: (siblings: string[]) => {
3
+ [itemId: string]: number;
4
+ };
@@ -0,0 +1,2 @@
1
+ export { useTreeViewJSXItems } from "./useTreeViewJSXItems.js";
2
+ export type { UseTreeViewJSXItemsSignature, UseTreeViewJSXItemsParameters, UseTreeViewItemsDefaultizedParameters } from './useTreeViewJSXItems.types';
@@ -0,0 +1,3 @@
1
+ import { TreeViewPlugin } from "../../models/index.js";
2
+ import { UseTreeViewJSXItemsSignature } from "./useTreeViewJSXItems.types.js";
3
+ export declare const useTreeViewJSXItems: TreeViewPlugin<UseTreeViewJSXItemsSignature>;
@@ -9,7 +9,7 @@ import { TreeViewChildrenItemContext, TreeViewChildrenItemProvider } from "../..
9
9
  import { buildSiblingIndexes, TREE_VIEW_ROOT_PARENT_ID } from "../useTreeViewItems/useTreeViewItems.utils.js";
10
10
  import { TreeViewItemDepthContext } from "../../TreeViewItemDepthContext/index.js";
11
11
  import { generateTreeItemIdAttribute } from "../../corePlugins/useTreeViewId/useTreeViewId.utils.js";
12
- import { isItemExpandable } from "../../../hooks/useTreeItemUtils/useTreeItemUtils.js";
12
+ import { itemHasChildren } from "../../../hooks/useTreeItemUtils/useTreeItemUtils.js";
13
13
  import { useSelector } from "../../hooks/useSelector.js";
14
14
  import { selectorTreeViewId } from "../../corePlugins/useTreeViewId/useTreeViewId.selectors.js";
15
15
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -115,7 +115,7 @@ const useTreeViewJSXItemsItemPlugin = ({
115
115
  unregisterChild,
116
116
  parentId
117
117
  } = parentContext;
118
- const expandable = isItemExpandable(children);
118
+ const expandable = itemHasChildren(children);
119
119
  const pluginContentRef = React.useRef(null);
120
120
  const handleContentRef = useForkRef(pluginContentRef, contentRef);
121
121
  const treeId = useSelector(store, selectorTreeViewId);
@@ -0,0 +1,35 @@
1
+ import { TreeViewItemMeta, TreeViewPluginSignature } from "../../models/index.js";
2
+ import { UseTreeViewItemsSignature } from "../useTreeViewItems/index.js";
3
+ import { UseTreeViewKeyboardNavigationSignature } from "../useTreeViewKeyboardNavigation/index.js";
4
+ import { TreeViewItemId } from "../../../models/index.js";
5
+ export interface UseTreeViewItemsInstance {
6
+ /**
7
+ * Insert a new item in the state from a Tree Item component.
8
+ * @param {TreeViewItemMeta} item The meta-information of the item to insert.
9
+ * @returns {() => void} A function to remove the item from the state.
10
+ */
11
+ insertJSXItem: (item: TreeViewItemMeta) => () => void;
12
+ /**
13
+ * Updates the `firstCharMap` to register the first character of the given item's label.
14
+ * This map is used to navigate the tree using type-ahead search.
15
+ * @param {TreeViewItemId} itemId The id of the item to map the first character of.
16
+ * @param {string} firstChar The first character of the item's label.
17
+ * @returns {() => void} A function to remove the item from the `firstCharMap`.
18
+ */
19
+ mapFirstCharFromJSX: (itemId: TreeViewItemId, firstChar: string) => () => void;
20
+ /**
21
+ * Store the ids of a given item's children in the state.
22
+ * Those ids must be passed in the order they should be rendered.
23
+ * @param {TreeViewItemId | null} parentId The id of the item to store the children of.
24
+ * @param {TreeViewItemId[]} orderedChildrenIds The ids of the item's children.
25
+ */
26
+ setJSXItemsOrderedChildrenIds: (parentId: TreeViewItemId | null, orderedChildrenIds: TreeViewItemId[]) => void;
27
+ }
28
+ export interface UseTreeViewJSXItemsParameters {}
29
+ export interface UseTreeViewItemsDefaultizedParameters {}
30
+ export type UseTreeViewJSXItemsSignature = TreeViewPluginSignature<{
31
+ params: UseTreeViewJSXItemsParameters;
32
+ defaultizedParams: UseTreeViewItemsDefaultizedParameters;
33
+ instance: UseTreeViewItemsInstance;
34
+ dependencies: [UseTreeViewItemsSignature, UseTreeViewKeyboardNavigationSignature];
35
+ }>;
@@ -0,0 +1,2 @@
1
+ export { useTreeViewKeyboardNavigation } from "./useTreeViewKeyboardNavigation.js";
2
+ export type { UseTreeViewKeyboardNavigationSignature } from './useTreeViewKeyboardNavigation.types';
@@ -0,0 +1,3 @@
1
+ import { TreeViewPlugin } from "../../models/index.js";
2
+ import { UseTreeViewKeyboardNavigationSignature } from "./useTreeViewKeyboardNavigation.types.js";
3
+ export declare const useTreeViewKeyboardNavigation: TreeViewPlugin<UseTreeViewKeyboardNavigationSignature>;
@@ -64,7 +64,7 @@ export const useTreeViewKeyboardNavigation = ({
64
64
  };
65
65
 
66
66
  // ARIA specification: https://www.w3.org/WAI/ARIA/apg/patterns/treeview/#keyboardinteraction
67
- const handleItemKeyDown = (event, itemId) => {
67
+ const handleItemKeyDown = async (event, itemId) => {
68
68
  if (event.defaultMuiPrevented) {
69
69
  return;
70
70
  }
@@ -83,7 +83,7 @@ export const useTreeViewKeyboardNavigation = ({
83
83
  if (params.multiSelect && event.shiftKey) {
84
84
  instance.expandSelectionRange(event, itemId);
85
85
  } else {
86
- instance.selectItem({
86
+ instance.setItemSelection({
87
87
  event,
88
88
  itemId,
89
89
  keepExistingSelection: params.multiSelect,
@@ -103,18 +103,21 @@ export const useTreeViewKeyboardNavigation = ({
103
103
  }) && !selectorIsItemBeingEdited(store.value, itemId)) {
104
104
  instance.setEditedItemId(itemId);
105
105
  } else if (canToggleItemExpansion(itemId)) {
106
- instance.toggleItemExpansion(event, itemId);
106
+ instance.setItemExpansion({
107
+ event,
108
+ itemId
109
+ });
107
110
  event.preventDefault();
108
111
  } else if (canToggleItemSelection(itemId)) {
109
112
  if (params.multiSelect) {
110
113
  event.preventDefault();
111
- instance.selectItem({
114
+ instance.setItemSelection({
112
115
  event,
113
116
  itemId,
114
117
  keepExistingSelection: true
115
118
  });
116
119
  } else if (!selectorIsItemSelected(store.value, itemId)) {
117
- instance.selectItem({
120
+ instance.setItemSelection({
118
121
  event,
119
122
  itemId
120
123
  });
@@ -172,7 +175,10 @@ export const useTreeViewKeyboardNavigation = ({
172
175
  event.preventDefault();
173
176
  }
174
177
  } else if (canToggleItemExpansion(itemId)) {
175
- instance.toggleItemExpansion(event, itemId);
178
+ instance.setItemExpansion({
179
+ event,
180
+ itemId
181
+ });
176
182
  event.preventDefault();
177
183
  }
178
184
  break;
@@ -186,7 +192,10 @@ export const useTreeViewKeyboardNavigation = ({
186
192
  return;
187
193
  }
188
194
  if (canToggleItemExpansion(itemId) && selectorIsItemExpanded(store.value, itemId)) {
189
- instance.toggleItemExpansion(event, itemId);
195
+ instance.setItemExpansion({
196
+ event,
197
+ itemId
198
+ });
190
199
  event.preventDefault();
191
200
  } else {
192
201
  const parent = selectorItemParentId(store.value, itemId);
@@ -0,0 +1,33 @@
1
+ import * as React from 'react';
2
+ import { TreeViewPluginSignature } from "../../models/index.js";
3
+ import { UseTreeViewItemsSignature } from "../useTreeViewItems/index.js";
4
+ import { UseTreeViewSelectionSignature } from "../useTreeViewSelection/index.js";
5
+ import { UseTreeViewFocusSignature } from "../useTreeViewFocus/index.js";
6
+ import { UseTreeViewExpansionSignature } from "../useTreeViewExpansion/index.js";
7
+ import { TreeViewItemId, TreeViewCancellableEvent } from "../../../models/index.js";
8
+ import { UseTreeViewLabelSignature } from "../useTreeViewLabel/index.js";
9
+ import { UseTreeViewLazyLoadingSignature } from "../useTreeViewLazyLoading/index.js";
10
+ export interface UseTreeViewKeyboardNavigationInstance {
11
+ /**
12
+ * Updates the `firstCharMap` to add/remove the first character of some item's labels.
13
+ * This map is used to navigate the tree using type-ahead search.
14
+ * This method is only used by the `useTreeViewJSXItems` plugin, otherwise the updates are handled internally.
15
+ * @param {(map: TreeViewFirstCharMap) => TreeViewFirstCharMap} updater The function to update the map.
16
+ */
17
+ updateFirstCharMap: (updater: (map: TreeViewFirstCharMap) => TreeViewFirstCharMap) => void;
18
+ /**
19
+ * Callback fired when a key is pressed on an item.
20
+ * Handles all the keyboard navigation logic.
21
+ * @param {React.KeyboardEvent<HTMLElement> & TreeViewCancellableEvent} event The keyboard event that triggered the callback.
22
+ * @param {TreeViewItemId} itemId The id of the item that the event was triggered on.
23
+ */
24
+ handleItemKeyDown: (event: React.KeyboardEvent<HTMLElement> & TreeViewCancellableEvent, itemId: TreeViewItemId) => void;
25
+ }
26
+ export type UseTreeViewKeyboardNavigationSignature = TreeViewPluginSignature<{
27
+ instance: UseTreeViewKeyboardNavigationInstance;
28
+ dependencies: [UseTreeViewItemsSignature, UseTreeViewSelectionSignature, UseTreeViewFocusSignature, UseTreeViewExpansionSignature];
29
+ optionalDependencies: [UseTreeViewLabelSignature, UseTreeViewLazyLoadingSignature];
30
+ }>;
31
+ export type TreeViewFirstCharMap = {
32
+ [itemId: string]: string;
33
+ };
@@ -0,0 +1,2 @@
1
+ export { useTreeViewLabel } from "./useTreeViewLabel.js";
2
+ export type { UseTreeViewLabelSignature, UseTreeViewLabelParameters } from './useTreeViewLabel.types';
@@ -0,0 +1,3 @@
1
+ import { TreeViewPlugin } from "../../models/index.js";
2
+ import { UseTreeViewLabelSignature } from "./useTreeViewLabel.types.js";
3
+ export declare const useTreeViewLabel: TreeViewPlugin<UseTreeViewLabelSignature>;
@@ -0,0 +1,2 @@
1
+ import { TreeViewItemPlugin } from "../../models/index.js";
2
+ export declare const useTreeViewLabelItemPlugin: TreeViewItemPlugin;
@@ -1,6 +1,5 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import * as React from 'react';
3
- import { warnOnce } from '@mui/x-internals/warning';
4
3
  import { useTreeViewLabelItemPlugin } from "./useTreeViewLabel.itemPlugin.js";
5
4
  export const useTreeViewLabel = ({
6
5
  store,
@@ -54,19 +53,10 @@ export const useTreeViewLabel = ({
54
53
  };
55
54
  useTreeViewLabel.itemPlugin = useTreeViewLabelItemPlugin;
56
55
  useTreeViewLabel.getDefaultizedParams = ({
57
- params,
58
- experimentalFeatures
59
- }) => {
60
- const canUseFeature = experimentalFeatures?.labelEditing;
61
- if (process.env.NODE_ENV !== 'production') {
62
- if (params.isItemEditable && !canUseFeature) {
63
- warnOnce(['MUI X: The label editing feature requires the `labelEditing` experimental feature to be enabled.', 'You can do it by passing `experimentalFeatures={{ labelEditing: true}}` to the Rich Tree View Pro component.', 'Check the documentation for more details: https://mui.com/x/react-tree-view/rich-tree-view/editing/']);
64
- }
65
- }
66
- return _extends({}, params, {
67
- isItemEditable: canUseFeature ? params.isItemEditable ?? false : false
68
- });
69
- };
56
+ params
57
+ }) => _extends({}, params, {
58
+ isItemEditable: params.isItemEditable ?? false
59
+ });
70
60
  useTreeViewLabel.getInitialState = () => ({
71
61
  label: {
72
62
  editedItemId: null
@@ -0,0 +1,74 @@
1
+ import { UseTreeViewLabelSignature } from "./useTreeViewLabel.types.js";
2
+ import { TreeViewRootSelector } from "../../utils/selectors.js";
3
+ /**
4
+ * Check if an item is editable.
5
+ * @param {TreeViewState<[UseTreeViewItemsSignature]>} state The state of the tree view.
6
+ * @param {object} params The parameters.
7
+ * @param {TreeViewItemId} params.itemId The id of the item to check.
8
+ * @param {((item: any) => boolean) | boolean} params.isItemEditable The function to determine if an item is editable.
9
+ * @returns {boolean} `true` if the item is editable, `false` otherwise.
10
+ */
11
+ export declare const selectorIsItemEditable: ((state: any, args: any) => boolean) & {
12
+ clearCache: () => void;
13
+ resultsCount: () => number;
14
+ resetResultsCount: () => void;
15
+ } & {
16
+ resultFunc: (resultFuncArgs_0: {
17
+ itemId: string;
18
+ isItemEditable: ((item: any) => boolean) | boolean;
19
+ }, resultFuncArgs_1: import("../../..").TreeViewBaseItem<import("../../..").TreeViewDefaultItemModelProperties>) => boolean;
20
+ memoizedResultFunc: ((resultFuncArgs_0: {
21
+ itemId: string;
22
+ isItemEditable: ((item: any) => boolean) | boolean;
23
+ }, resultFuncArgs_1: import("../../..").TreeViewBaseItem<import("../../..").TreeViewDefaultItemModelProperties>) => boolean) & {
24
+ clearCache: () => void;
25
+ resultsCount: () => number;
26
+ resetResultsCount: () => void;
27
+ };
28
+ lastResult: () => boolean;
29
+ dependencies: [(_: any, args: {
30
+ itemId: string;
31
+ isItemEditable: ((item: any) => boolean) | boolean;
32
+ }) => {
33
+ itemId: string;
34
+ isItemEditable: ((item: any) => boolean) | boolean;
35
+ }, (state: any, args: any) => import("../../..").TreeViewBaseItem<import("../../..").TreeViewDefaultItemModelProperties>];
36
+ recomputations: () => number;
37
+ resetRecomputations: () => void;
38
+ dependencyRecomputations: () => number;
39
+ resetDependencyRecomputations: () => void;
40
+ } & {
41
+ argsMemoize: typeof import("reselect").weakMapMemoize;
42
+ memoize: typeof import("reselect").weakMapMemoize;
43
+ };
44
+ /**
45
+ * Check if an item is being edited.
46
+ * @param {TreeViewState<[UseTreeViewLabelSignature]>} state The state of the tree view.
47
+ * @param {TreeViewItemId} itemId The id of the item to check.
48
+ * @returns {boolean} `true` if the item is being edited, `false` otherwise.
49
+ */
50
+ export declare const selectorIsItemBeingEdited: ((state: any, itemId: string) => boolean) & {
51
+ clearCache: () => void;
52
+ resultsCount: () => number;
53
+ resetResultsCount: () => void;
54
+ } & {
55
+ resultFunc: (resultFuncArgs_0: {
56
+ editedItemId: string | null;
57
+ }, resultFuncArgs_1: string) => boolean;
58
+ memoizedResultFunc: ((resultFuncArgs_0: {
59
+ editedItemId: string | null;
60
+ }, resultFuncArgs_1: string) => boolean) & {
61
+ clearCache: () => void;
62
+ resultsCount: () => number;
63
+ resetResultsCount: () => void;
64
+ };
65
+ lastResult: () => boolean;
66
+ dependencies: [TreeViewRootSelector<UseTreeViewLabelSignature>, (_: any, itemId: string) => string];
67
+ recomputations: () => number;
68
+ resetRecomputations: () => void;
69
+ dependencyRecomputations: () => number;
70
+ resetDependencyRecomputations: () => void;
71
+ } & {
72
+ argsMemoize: typeof import("reselect").weakMapMemoize;
73
+ memoize: typeof import("reselect").weakMapMemoize;
74
+ };
@@ -0,0 +1,59 @@
1
+ import { DefaultizedProps } from '@mui/x-internals/types';
2
+ import { TreeViewPluginSignature } from "../../models/index.js";
3
+ import { TreeViewItemId } from "../../../models/index.js";
4
+ import { UseTreeViewItemsSignature } from "../useTreeViewItems/index.js";
5
+ import { TreeItemLabelInputProps } from "../../../TreeItemLabelInput/index.js";
6
+ export interface UseTreeViewLabelPublicAPI {
7
+ /**
8
+ * Used to update the label of an item.
9
+ * @param {TreeViewItemId} itemId The id of the item to update the label of.
10
+ * @param {string} newLabel The new label of the item.
11
+ */
12
+ updateItemLabel: (itemId: TreeViewItemId, newLabel: string) => void;
13
+ }
14
+ export interface UseTreeViewLabelInstance extends UseTreeViewLabelPublicAPI {
15
+ /**
16
+ * Updates which item is currently being edited.
17
+ * @param {TreeViewItemId} itemId The id of the item that is currently being edited.
18
+ * @returns {void}.
19
+ */
20
+ setEditedItemId: (itemId: TreeViewItemId | null) => void;
21
+ }
22
+ export interface UseTreeViewLabelParameters<R extends {}> {
23
+ /**
24
+ * Callback fired when the label of an item changes.
25
+ * @param {TreeViewItemId} itemId The id of the item that was edited.
26
+ * @param {string} newLabel The new label of the items.
27
+ */
28
+ onItemLabelChange?: (itemId: TreeViewItemId, newLabel: string) => void;
29
+ /**
30
+ * Determine if a given item can be edited.
31
+ * @template R
32
+ * @param {R} item The item to check.
33
+ * @returns {boolean} `true` if the item can be edited.
34
+ * @default () => false
35
+ */
36
+ isItemEditable?: boolean | ((item: R) => boolean);
37
+ }
38
+ export type UseTreeViewLabelDefaultizedParameters<R extends {}> = DefaultizedProps<UseTreeViewLabelParameters<R>, 'isItemEditable'>;
39
+ export interface UseTreeViewLabelState {
40
+ label: {
41
+ editedItemId: string | null;
42
+ };
43
+ }
44
+ export interface UseTreeViewLabelContextValue {
45
+ label: Pick<UseTreeViewLabelDefaultizedParameters<any>, 'isItemEditable'>;
46
+ }
47
+ export type UseTreeViewLabelSignature = TreeViewPluginSignature<{
48
+ params: UseTreeViewLabelParameters<any>;
49
+ defaultizedParams: UseTreeViewLabelDefaultizedParameters<any>;
50
+ publicAPI: UseTreeViewLabelPublicAPI;
51
+ instance: UseTreeViewLabelInstance;
52
+ state: UseTreeViewLabelState;
53
+ contextValue: UseTreeViewLabelContextValue;
54
+ dependencies: [UseTreeViewItemsSignature];
55
+ }>;
56
+ export interface UseTreeItemLabelInputSlotPropsFromLabelEditing extends TreeItemLabelInputProps {}
57
+ declare module '@mui/x-tree-view/useTreeItem' {
58
+ interface UseTreeItemLabelInputSlotOwnProps extends UseTreeItemLabelInputSlotPropsFromLabelEditing {}
59
+ }
@@ -0,0 +1 @@
1
+ export type { UseTreeViewLazyLoadingSignature, UseTreeViewLazyLoadingParameters } from './useTreeViewLazyLoading.types';