@mui/x-tree-view 8.0.0-beta.2 → 8.0.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 (421) hide show
  1. package/CHANGELOG.md +423 -96
  2. package/RichTreeView/RichTreeView.js +11 -6
  3. package/RichTreeView/RichTreeView.plugins.d.ts +3 -6
  4. package/RichTreeView/RichTreeView.plugins.js +1 -2
  5. package/RichTreeView/RichTreeView.types.d.ts +4 -3
  6. package/RichTreeView/index.d.ts +1 -1
  7. package/SimpleTreeView/SimpleTreeView.js +12 -8
  8. package/SimpleTreeView/SimpleTreeView.plugins.d.ts +3 -6
  9. package/SimpleTreeView/SimpleTreeView.plugins.js +1 -2
  10. package/SimpleTreeView/SimpleTreeView.types.d.ts +4 -3
  11. package/TreeItemIcon/TreeItemIcon.js +15 -11
  12. package/esm/RichTreeView/RichTreeView.js +10 -5
  13. package/esm/RichTreeView/RichTreeView.plugins.d.ts +3 -6
  14. package/esm/RichTreeView/RichTreeView.plugins.js +1 -2
  15. package/esm/RichTreeView/RichTreeView.types.d.ts +4 -3
  16. package/esm/RichTreeView/index.d.ts +1 -1
  17. package/esm/SimpleTreeView/SimpleTreeView.js +11 -7
  18. package/esm/SimpleTreeView/SimpleTreeView.plugins.d.ts +3 -6
  19. package/esm/SimpleTreeView/SimpleTreeView.plugins.js +1 -2
  20. package/esm/SimpleTreeView/SimpleTreeView.types.d.ts +4 -3
  21. package/esm/TreeItemIcon/TreeItemIcon.js +15 -11
  22. package/esm/hooks/useTreeItemUtils/useTreeItemUtils.js +1 -1
  23. package/esm/index.js +1 -1
  24. package/esm/internals/TreeViewProvider/TreeViewContext.d.ts +1 -1
  25. package/esm/internals/TreeViewProvider/TreeViewProvider.js +14 -4
  26. package/esm/internals/TreeViewProvider/TreeViewProvider.types.d.ts +6 -5
  27. package/esm/internals/TreeViewProvider/TreeViewStyleContext.d.ts +23 -0
  28. package/esm/internals/TreeViewProvider/TreeViewStyleContext.js +3 -1
  29. package/esm/internals/hooks/useSelector.js +1 -4
  30. package/esm/internals/index.d.ts +2 -3
  31. package/esm/internals/index.js +1 -1
  32. package/esm/internals/models/events.d.ts +2 -6
  33. package/esm/internals/models/plugin.d.ts +63 -38
  34. package/esm/internals/models/treeView.d.ts +0 -5
  35. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +35 -21
  36. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +144 -10
  37. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.js +21 -1
  38. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +1 -1
  39. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.d.ts +0 -1
  40. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.js +0 -7
  41. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +3 -30
  42. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.d.ts +476 -28
  43. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.js +21 -1
  44. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +0 -1
  45. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.d.ts +90 -4
  46. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.js +12 -25
  47. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.utils.d.ts +12 -1
  48. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.utils.js +31 -0
  49. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +3 -6
  50. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.d.ts +43 -9
  51. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.js +12 -2
  52. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.d.ts +1 -1
  53. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.js +2 -2
  54. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +39 -40
  55. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.d.ts +186 -30
  56. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.js +36 -1
  57. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +3 -6
  58. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.d.ts +0 -7
  59. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +5 -24
  60. package/esm/internals/useTreeView/extractPluginParamsFromProps.d.ts +0 -2
  61. package/esm/internals/useTreeView/extractPluginParamsFromProps.js +1 -5
  62. package/esm/internals/useTreeView/useTreeView.d.ts +10 -1
  63. package/esm/internals/useTreeView/useTreeView.js +22 -25
  64. package/esm/internals/useTreeView/useTreeView.types.d.ts +1 -3
  65. package/esm/internals/useTreeView/useTreeViewBuildContext.js +9 -11
  66. package/esm/internals/utils/models.d.ts +7 -0
  67. package/esm/internals/utils/models.js +23 -0
  68. package/esm/internals/utils/selectors.d.ts +1 -1
  69. package/esm/utils/cache.d.ts +1 -1
  70. package/esm/utils/cache.js +1 -1
  71. package/hooks/useTreeItemUtils/useTreeItemUtils.js +1 -1
  72. package/index.js +1 -1
  73. package/internals/TreeViewProvider/TreeViewContext.d.ts +1 -1
  74. package/internals/TreeViewProvider/TreeViewProvider.js +14 -4
  75. package/internals/TreeViewProvider/TreeViewProvider.types.d.ts +6 -5
  76. package/internals/TreeViewProvider/TreeViewStyleContext.d.ts +23 -0
  77. package/internals/TreeViewProvider/TreeViewStyleContext.js +3 -1
  78. package/internals/hooks/useSelector.js +1 -5
  79. package/internals/index.d.ts +2 -3
  80. package/internals/index.js +13 -7
  81. package/internals/models/events.d.ts +2 -6
  82. package/internals/models/plugin.d.ts +63 -38
  83. package/internals/models/treeView.d.ts +0 -5
  84. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +33 -19
  85. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +144 -10
  86. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.js +22 -2
  87. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +1 -1
  88. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.d.ts +0 -1
  89. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.js +1 -9
  90. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +2 -30
  91. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.d.ts +476 -28
  92. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.js +21 -1
  93. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +0 -1
  94. package/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.d.ts +90 -4
  95. package/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.js +12 -25
  96. package/internals/plugins/useTreeViewItems/useTreeViewItems.utils.d.ts +12 -1
  97. package/internals/plugins/useTreeViewItems/useTreeViewItems.utils.js +34 -2
  98. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +3 -6
  99. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.d.ts +43 -9
  100. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.js +13 -3
  101. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.d.ts +1 -1
  102. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.js +2 -2
  103. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +37 -38
  104. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.d.ts +186 -30
  105. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.js +37 -2
  106. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +3 -6
  107. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.d.ts +0 -7
  108. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +6 -26
  109. package/internals/useTreeView/extractPluginParamsFromProps.d.ts +0 -2
  110. package/internals/useTreeView/extractPluginParamsFromProps.js +1 -5
  111. package/internals/useTreeView/useTreeView.d.ts +10 -1
  112. package/internals/useTreeView/useTreeView.js +22 -25
  113. package/internals/useTreeView/useTreeView.types.d.ts +1 -3
  114. package/internals/useTreeView/useTreeViewBuildContext.js +9 -11
  115. package/internals/utils/models.d.ts +7 -0
  116. package/internals/utils/models.js +30 -0
  117. package/internals/utils/selectors.d.ts +1 -1
  118. package/package.json +7 -15
  119. package/utils/cache.d.ts +1 -1
  120. package/utils/cache.js +1 -1
  121. package/esm/internals/plugins/useTreeViewIcons/index.d.ts +0 -2
  122. package/esm/internals/plugins/useTreeViewIcons/index.js +0 -1
  123. package/esm/internals/plugins/useTreeViewIcons/useTreeViewIcons.d.ts +0 -3
  124. package/esm/internals/plugins/useTreeViewIcons/useTreeViewIcons.js +0 -24
  125. package/esm/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.d.ts +0 -42
  126. package/esm/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.js +0 -1
  127. package/esm/internals/plugins/useTreeViewItemCustomization/index.d.ts +0 -2
  128. package/esm/internals/plugins/useTreeViewItemCustomization/index.js +0 -1
  129. package/esm/internals/plugins/useTreeViewItemCustomization/useTreeViewItemCustomization.d.ts +0 -3
  130. package/esm/internals/plugins/useTreeViewItemCustomization/useTreeViewItemCustomization.js +0 -24
  131. package/esm/internals/plugins/useTreeViewItemCustomization/useTreeViewItemCustomization.types.d.ts +0 -42
  132. package/esm/internals/plugins/useTreeViewItemCustomization/useTreeViewItemCustomization.types.js +0 -1
  133. package/esm/internals/useTreeView/useTreeViewModels.d.ts +0 -7
  134. package/esm/internals/useTreeView/useTreeViewModels.js +0 -62
  135. package/internals/plugins/useTreeViewIcons/index.d.ts +0 -2
  136. package/internals/plugins/useTreeViewIcons/index.js +0 -12
  137. package/internals/plugins/useTreeViewIcons/useTreeViewIcons.d.ts +0 -3
  138. package/internals/plugins/useTreeViewIcons/useTreeViewIcons.js +0 -32
  139. package/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.d.ts +0 -42
  140. package/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.js +0 -5
  141. package/internals/plugins/useTreeViewItemCustomization/index.d.ts +0 -2
  142. package/internals/plugins/useTreeViewItemCustomization/index.js +0 -12
  143. package/internals/plugins/useTreeViewItemCustomization/useTreeViewItemCustomization.d.ts +0 -3
  144. package/internals/plugins/useTreeViewItemCustomization/useTreeViewItemCustomization.js +0 -32
  145. package/internals/plugins/useTreeViewItemCustomization/useTreeViewItemCustomization.types.d.ts +0 -42
  146. package/internals/plugins/useTreeViewItemCustomization/useTreeViewItemCustomization.types.js +0 -5
  147. package/internals/useTreeView/useTreeViewModels.d.ts +0 -7
  148. package/internals/useTreeView/useTreeViewModels.js +0 -71
  149. package/modern/RichTreeView/RichTreeView.d.ts +0 -18
  150. package/modern/RichTreeView/RichTreeView.js +0 -322
  151. package/modern/RichTreeView/RichTreeView.plugins.d.ts +0 -13
  152. package/modern/RichTreeView/RichTreeView.plugins.js +0 -10
  153. package/modern/RichTreeView/RichTreeView.types.d.ts +0 -52
  154. package/modern/RichTreeView/RichTreeView.types.js +0 -1
  155. package/modern/RichTreeView/index.d.ts +0 -5
  156. package/modern/RichTreeView/index.js +0 -3
  157. package/modern/RichTreeView/richTreeViewClasses.d.ts +0 -5
  158. package/modern/RichTreeView/richTreeViewClasses.js +0 -6
  159. package/modern/SimpleTreeView/SimpleTreeView.d.ts +0 -20
  160. package/modern/SimpleTreeView/SimpleTreeView.js +0 -265
  161. package/modern/SimpleTreeView/SimpleTreeView.plugins.d.ts +0 -12
  162. package/modern/SimpleTreeView/SimpleTreeView.plugins.js +0 -10
  163. package/modern/SimpleTreeView/SimpleTreeView.types.d.ts +0 -51
  164. package/modern/SimpleTreeView/SimpleTreeView.types.js +0 -1
  165. package/modern/SimpleTreeView/index.d.ts +0 -3
  166. package/modern/SimpleTreeView/index.js +0 -3
  167. package/modern/SimpleTreeView/simpleTreeViewClasses.d.ts +0 -5
  168. package/modern/SimpleTreeView/simpleTreeViewClasses.js +0 -6
  169. package/modern/TreeItem/TreeItem.d.ts +0 -33
  170. package/modern/TreeItem/TreeItem.js +0 -408
  171. package/modern/TreeItem/TreeItem.types.d.ts +0 -107
  172. package/modern/TreeItem/TreeItem.types.js +0 -1
  173. package/modern/TreeItem/index.d.ts +0 -4
  174. package/modern/TreeItem/index.js +0 -2
  175. package/modern/TreeItem/treeItemClasses.d.ts +0 -55
  176. package/modern/TreeItem/treeItemClasses.js +0 -8
  177. package/modern/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.d.ts +0 -7
  178. package/modern/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.js +0 -74
  179. package/modern/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.d.ts +0 -6
  180. package/modern/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.js +0 -1
  181. package/modern/TreeItemDragAndDropOverlay/index.d.ts +0 -2
  182. package/modern/TreeItemDragAndDropOverlay/index.js +0 -1
  183. package/modern/TreeItemIcon/TreeItemIcon.d.ts +0 -7
  184. package/modern/TreeItemIcon/TreeItemIcon.js +0 -74
  185. package/modern/TreeItemIcon/TreeItemIcon.types.d.ts +0 -40
  186. package/modern/TreeItemIcon/TreeItemIcon.types.js +0 -1
  187. package/modern/TreeItemIcon/index.d.ts +0 -2
  188. package/modern/TreeItemIcon/index.js +0 -1
  189. package/modern/TreeItemLabelInput/TreeItemLabelInput.d.ts +0 -5
  190. package/modern/TreeItemLabelInput/TreeItemLabelInput.js +0 -24
  191. package/modern/TreeItemLabelInput/TreeItemLabelInput.types.d.ts +0 -14
  192. package/modern/TreeItemLabelInput/TreeItemLabelInput.types.js +0 -1
  193. package/modern/TreeItemLabelInput/index.d.ts +0 -2
  194. package/modern/TreeItemLabelInput/index.js +0 -1
  195. package/modern/TreeItemProvider/TreeItemProvider.d.ts +0 -7
  196. package/modern/TreeItemProvider/TreeItemProvider.js +0 -45
  197. package/modern/TreeItemProvider/TreeItemProvider.types.d.ts +0 -7
  198. package/modern/TreeItemProvider/TreeItemProvider.types.js +0 -1
  199. package/modern/TreeItemProvider/index.d.ts +0 -2
  200. package/modern/TreeItemProvider/index.js +0 -1
  201. package/modern/hooks/index.d.ts +0 -3
  202. package/modern/hooks/index.js +0 -3
  203. package/modern/hooks/useTreeItemModel.d.ts +0 -2
  204. package/modern/hooks/useTreeItemModel.js +0 -11
  205. package/modern/hooks/useTreeItemUtils/index.d.ts +0 -1
  206. package/modern/hooks/useTreeItemUtils/index.js +0 -1
  207. package/modern/hooks/useTreeItemUtils/useTreeItemUtils.d.ts +0 -42
  208. package/modern/hooks/useTreeItemUtils/useTreeItemUtils.js +0 -165
  209. package/modern/hooks/useTreeViewApiRef.d.ts +0 -7
  210. package/modern/hooks/useTreeViewApiRef.js +0 -7
  211. package/modern/icons/icons.d.ts +0 -6
  212. package/modern/icons/icons.js +0 -9
  213. package/modern/icons/index.d.ts +0 -1
  214. package/modern/icons/index.js +0 -1
  215. package/modern/index.d.ts +0 -12
  216. package/modern/index.js +0 -22
  217. package/modern/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.d.ts +0 -5
  218. package/modern/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.js +0 -5
  219. package/modern/internals/TreeViewItemDepthContext/index.d.ts +0 -1
  220. package/modern/internals/TreeViewItemDepthContext/index.js +0 -1
  221. package/modern/internals/TreeViewProvider/TreeViewChildrenItemProvider.d.ts +0 -17
  222. package/modern/internals/TreeViewProvider/TreeViewChildrenItemProvider.js +0 -49
  223. package/modern/internals/TreeViewProvider/TreeViewContext.d.ts +0 -8
  224. package/modern/internals/TreeViewProvider/TreeViewContext.js +0 -15
  225. package/modern/internals/TreeViewProvider/TreeViewProvider.d.ts +0 -9
  226. package/modern/internals/TreeViewProvider/TreeViewProvider.js +0 -32
  227. package/modern/internals/TreeViewProvider/TreeViewProvider.types.d.ts +0 -21
  228. package/modern/internals/TreeViewProvider/TreeViewProvider.types.js +0 -1
  229. package/modern/internals/TreeViewProvider/TreeViewStyleContext.d.ts +0 -33
  230. package/modern/internals/TreeViewProvider/TreeViewStyleContext.js +0 -13
  231. package/modern/internals/TreeViewProvider/index.d.ts +0 -3
  232. package/modern/internals/TreeViewProvider/index.js +0 -2
  233. package/modern/internals/components/RichTreeViewItems.d.ts +0 -32
  234. package/modern/internals/components/RichTreeViewItems.js +0 -68
  235. package/modern/internals/corePlugins/corePlugins.d.ts +0 -9
  236. package/modern/internals/corePlugins/corePlugins.js +0 -8
  237. package/modern/internals/corePlugins/index.d.ts +0 -2
  238. package/modern/internals/corePlugins/index.js +0 -1
  239. package/modern/internals/corePlugins/useTreeViewId/index.d.ts +0 -2
  240. package/modern/internals/corePlugins/useTreeViewId/index.js +0 -1
  241. package/modern/internals/corePlugins/useTreeViewId/useTreeViewId.d.ts +0 -3
  242. package/modern/internals/corePlugins/useTreeViewId/useTreeViewId.js +0 -39
  243. package/modern/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.d.ts +0 -36
  244. package/modern/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.js +0 -9
  245. package/modern/internals/corePlugins/useTreeViewId/useTreeViewId.types.d.ts +0 -20
  246. package/modern/internals/corePlugins/useTreeViewId/useTreeViewId.types.js +0 -1
  247. package/modern/internals/corePlugins/useTreeViewId/useTreeViewId.utils.d.ts +0 -21
  248. package/modern/internals/corePlugins/useTreeViewId/useTreeViewId.utils.js +0 -26
  249. package/modern/internals/corePlugins/useTreeViewInstanceEvents/index.d.ts +0 -2
  250. package/modern/internals/corePlugins/useTreeViewInstanceEvents/index.js +0 -1
  251. package/modern/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.d.ts +0 -3
  252. package/modern/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +0 -29
  253. package/modern/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.d.ts +0 -22
  254. package/modern/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.js +0 -1
  255. package/modern/internals/corePlugins/useTreeViewOptionalPlugins/index.d.ts +0 -2
  256. package/modern/internals/corePlugins/useTreeViewOptionalPlugins/index.js +0 -1
  257. package/modern/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.d.ts +0 -3
  258. package/modern/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.js +0 -12
  259. package/modern/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.d.ts +0 -8
  260. package/modern/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.js +0 -1
  261. package/modern/internals/hooks/useInstanceEventHandler.d.ts +0 -15
  262. package/modern/internals/hooks/useInstanceEventHandler.js +0 -77
  263. package/modern/internals/hooks/useLazyRef.d.ts +0 -1
  264. package/modern/internals/hooks/useLazyRef.js +0 -1
  265. package/modern/internals/hooks/useOnMount.d.ts +0 -1
  266. package/modern/internals/hooks/useOnMount.js +0 -1
  267. package/modern/internals/hooks/useSelector.d.ts +0 -4
  268. package/modern/internals/hooks/useSelector.js +0 -9
  269. package/modern/internals/hooks/useTimeout.d.ts +0 -1
  270. package/modern/internals/hooks/useTimeout.js +0 -1
  271. package/modern/internals/index.d.ts +0 -34
  272. package/modern/internals/index.js +0 -24
  273. package/modern/internals/models/events.d.ts +0 -9
  274. package/modern/internals/models/events.js +0 -1
  275. package/modern/internals/models/helpers.d.ts +0 -7
  276. package/modern/internals/models/helpers.js +0 -1
  277. package/modern/internals/models/index.d.ts +0 -4
  278. package/modern/internals/models/index.js +0 -4
  279. package/modern/internals/models/itemPlugin.d.ts +0 -43
  280. package/modern/internals/models/itemPlugin.js +0 -1
  281. package/modern/internals/models/plugin.d.ts +0 -151
  282. package/modern/internals/models/plugin.js +0 -1
  283. package/modern/internals/models/treeView.d.ts +0 -32
  284. package/modern/internals/models/treeView.js +0 -1
  285. package/modern/internals/plugins/useTreeViewExpansion/index.d.ts +0 -2
  286. package/modern/internals/plugins/useTreeViewExpansion/index.js +0 -1
  287. package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.d.ts +0 -3
  288. package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +0 -134
  289. package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +0 -184
  290. package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.js +0 -24
  291. package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +0 -102
  292. package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.js +0 -1
  293. package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.d.ts +0 -7
  294. package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.js +0 -19
  295. package/modern/internals/plugins/useTreeViewFocus/index.d.ts +0 -2
  296. package/modern/internals/plugins/useTreeViewFocus/index.js +0 -1
  297. package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.d.ts +0 -3
  298. package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +0 -135
  299. package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.d.ts +0 -182
  300. package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.js +0 -34
  301. package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +0 -45
  302. package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.js +0 -1
  303. package/modern/internals/plugins/useTreeViewIcons/index.d.ts +0 -2
  304. package/modern/internals/plugins/useTreeViewIcons/index.js +0 -1
  305. package/modern/internals/plugins/useTreeViewIcons/useTreeViewIcons.d.ts +0 -3
  306. package/modern/internals/plugins/useTreeViewIcons/useTreeViewIcons.js +0 -24
  307. package/modern/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.d.ts +0 -42
  308. package/modern/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.js +0 -1
  309. package/modern/internals/plugins/useTreeViewItemCustomization/index.d.ts +0 -2
  310. package/modern/internals/plugins/useTreeViewItemCustomization/index.js +0 -1
  311. package/modern/internals/plugins/useTreeViewItemCustomization/useTreeViewItemCustomization.d.ts +0 -3
  312. package/modern/internals/plugins/useTreeViewItemCustomization/useTreeViewItemCustomization.js +0 -24
  313. package/modern/internals/plugins/useTreeViewItemCustomization/useTreeViewItemCustomization.types.d.ts +0 -42
  314. package/modern/internals/plugins/useTreeViewItemCustomization/useTreeViewItemCustomization.types.js +0 -1
  315. package/modern/internals/plugins/useTreeViewItems/index.d.ts +0 -3
  316. package/modern/internals/plugins/useTreeViewItems/index.js +0 -2
  317. package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.d.ts +0 -3
  318. package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.js +0 -325
  319. package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.d.ts +0 -1058
  320. package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.js +0 -113
  321. package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.types.d.ts +0 -205
  322. package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.types.js +0 -1
  323. package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.utils.d.ts +0 -4
  324. package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.utils.js +0 -8
  325. package/modern/internals/plugins/useTreeViewJSXItems/index.d.ts +0 -2
  326. package/modern/internals/plugins/useTreeViewJSXItems/index.js +0 -1
  327. package/modern/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.d.ts +0 -3
  328. package/modern/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +0 -183
  329. package/modern/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.d.ts +0 -35
  330. package/modern/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.js +0 -1
  331. package/modern/internals/plugins/useTreeViewKeyboardNavigation/index.d.ts +0 -2
  332. package/modern/internals/plugins/useTreeViewKeyboardNavigation/index.js +0 -1
  333. package/modern/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.d.ts +0 -3
  334. package/modern/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +0 -273
  335. package/modern/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +0 -30
  336. package/modern/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.js +0 -1
  337. package/modern/internals/plugins/useTreeViewLabel/index.d.ts +0 -2
  338. package/modern/internals/plugins/useTreeViewLabel/index.js +0 -1
  339. package/modern/internals/plugins/useTreeViewLabel/useTreeViewLabel.d.ts +0 -3
  340. package/modern/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.d.ts +0 -2
  341. package/modern/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.js +0 -72
  342. package/modern/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +0 -73
  343. package/modern/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.d.ts +0 -68
  344. package/modern/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.js +0 -24
  345. package/modern/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.d.ts +0 -60
  346. package/modern/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.js +0 -1
  347. package/modern/internals/plugins/useTreeViewLazyLoading/index.d.ts +0 -1
  348. package/modern/internals/plugins/useTreeViewLazyLoading/index.js +0 -1
  349. package/modern/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.d.ts +0 -247
  350. package/modern/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.js +0 -27
  351. package/modern/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.d.ts +0 -82
  352. package/modern/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.js +0 -1
  353. package/modern/internals/plugins/useTreeViewSelection/index.d.ts +0 -2
  354. package/modern/internals/plugins/useTreeViewSelection/index.js +0 -1
  355. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.d.ts +0 -3
  356. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.d.ts +0 -2
  357. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.js +0 -80
  358. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +0 -234
  359. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.d.ts +0 -363
  360. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.js +0 -46
  361. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +0 -145
  362. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.js +0 -1
  363. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.d.ts +0 -38
  364. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +0 -126
  365. package/modern/internals/useTreeView/extractPluginParamsFromProps.d.ts +0 -22
  366. package/modern/internals/useTreeView/extractPluginParamsFromProps.js +0 -46
  367. package/modern/internals/useTreeView/index.d.ts +0 -1
  368. package/modern/internals/useTreeView/index.js +0 -1
  369. package/modern/internals/useTreeView/useTreeView.d.ts +0 -9
  370. package/modern/internals/useTreeView/useTreeView.js +0 -114
  371. package/modern/internals/useTreeView/useTreeView.types.d.ts +0 -23
  372. package/modern/internals/useTreeView/useTreeView.types.js +0 -1
  373. package/modern/internals/useTreeView/useTreeViewBuildContext.d.ts +0 -18
  374. package/modern/internals/useTreeView/useTreeViewBuildContext.js +0 -101
  375. package/modern/internals/useTreeView/useTreeViewModels.d.ts +0 -7
  376. package/modern/internals/useTreeView/useTreeViewModels.js +0 -62
  377. package/modern/internals/useTreeView/useTreeViewPlugins.d.ts +0 -0
  378. package/modern/internals/useTreeView/useTreeViewPlugins.js +0 -0
  379. package/modern/internals/utils/TreeViewStore.d.ts +0 -12
  380. package/modern/internals/utils/TreeViewStore.js +0 -24
  381. package/modern/internals/utils/cleanupTracking/CleanupTracking.d.ts +0 -9
  382. package/modern/internals/utils/cleanupTracking/CleanupTracking.js +0 -1
  383. package/modern/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.d.ts +0 -7
  384. package/modern/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +0 -18
  385. package/modern/internals/utils/cleanupTracking/TimerBasedCleanupTracking.d.ts +0 -9
  386. package/modern/internals/utils/cleanupTracking/TimerBasedCleanupTracking.js +0 -38
  387. package/modern/internals/utils/plugins.d.ts +0 -2
  388. package/modern/internals/utils/plugins.js +0 -4
  389. package/modern/internals/utils/publishTreeViewEvent.d.ts +0 -5
  390. package/modern/internals/utils/publishTreeViewEvent.js +0 -3
  391. package/modern/internals/utils/selectors.d.ts +0 -16
  392. package/modern/internals/utils/selectors.js +0 -46
  393. package/modern/internals/utils/tree.d.ts +0 -32
  394. package/modern/internals/utils/tree.js +0 -203
  395. package/modern/internals/utils/utils.d.ts +0 -2
  396. package/modern/internals/utils/utils.js +0 -17
  397. package/modern/internals/zero-styled/index.d.ts +0 -3
  398. package/modern/internals/zero-styled/index.js +0 -7
  399. package/modern/models/events.d.ts +0 -4
  400. package/modern/models/events.js +0 -1
  401. package/modern/models/index.d.ts +0 -3
  402. package/modern/models/index.js +0 -5
  403. package/modern/models/items.d.ts +0 -13
  404. package/modern/models/items.js +0 -1
  405. package/modern/package.json +0 -1
  406. package/modern/themeAugmentation/components.d.ts +0 -21
  407. package/modern/themeAugmentation/index.d.ts +0 -3
  408. package/modern/themeAugmentation/index.js +0 -0
  409. package/modern/themeAugmentation/overrides.d.ts +0 -16
  410. package/modern/themeAugmentation/props.d.ts +0 -14
  411. package/modern/useTreeItem/index.d.ts +0 -2
  412. package/modern/useTreeItem/index.js +0 -1
  413. package/modern/useTreeItem/useTreeItem.d.ts +0 -2
  414. package/modern/useTreeItem/useTreeItem.js +0 -282
  415. package/modern/useTreeItem/useTreeItem.types.d.ts +0 -201
  416. package/modern/useTreeItem/useTreeItem.types.js +0 -1
  417. package/modern/utils/cache.d.ts +0 -38
  418. package/modern/utils/cache.js +0 -31
  419. package/modern/utils/index.d.ts +0 -1
  420. package/modern/utils/index.js +0 -1
  421. package/tsconfig.build.tsbuildinfo +0 -1
@@ -1,184 +0,0 @@
1
- import { TreeViewRootSelector } from "../../utils/selectors.js";
2
- import { UseTreeViewExpansionSignature } from "./useTreeViewExpansion.types.js";
3
- /**
4
- * Check if an item is expanded.
5
- * @param {TreeViewState<[UseTreeViewExpansionSignature]>} state The state of the tree view.
6
- * @returns {boolean} `true` if the item is expanded, `false` otherwise.
7
- */
8
- export declare const selectorIsItemExpanded: ((state: any, itemId: string) => boolean) & {
9
- clearCache: () => void;
10
- resultsCount: () => number;
11
- resetResultsCount: () => void;
12
- } & {
13
- resultFunc: (resultFuncArgs_0: {
14
- expandedItemsMap: Map<string, true>;
15
- expansionTrigger: "content" | "iconContainer";
16
- }, resultFuncArgs_1: string) => boolean;
17
- memoizedResultFunc: ((resultFuncArgs_0: {
18
- expandedItemsMap: Map<string, true>;
19
- expansionTrigger: "content" | "iconContainer";
20
- }, resultFuncArgs_1: string) => boolean) & {
21
- clearCache: () => void;
22
- resultsCount: () => number;
23
- resetResultsCount: () => void;
24
- };
25
- lastResult: () => boolean;
26
- dependencies: [TreeViewRootSelector<UseTreeViewExpansionSignature>, (_: any, itemId: string) => string];
27
- recomputations: () => number;
28
- resetRecomputations: () => void;
29
- dependencyRecomputations: () => number;
30
- resetDependencyRecomputations: () => void;
31
- } & {
32
- argsMemoize: typeof import("reselect").weakMapMemoize;
33
- memoize: typeof import("reselect").weakMapMemoize;
34
- };
35
- /**
36
- * Check if an item is expandable.
37
- * @param {TreeViewState<[UseTreeViewItemsSignature]>} state The state of the tree view.
38
- * @returns {boolean} `true` if the item is expandable, `false` otherwise.
39
- */
40
- export declare const selectorIsItemExpandable: ((state: any, itemId: string | null) => boolean) & {
41
- clearCache: () => void;
42
- resultsCount: () => number;
43
- resetResultsCount: () => void;
44
- } & {
45
- resultFunc: (resultFuncArgs_0: import("../..").TreeViewItemMeta | null) => boolean;
46
- memoizedResultFunc: ((resultFuncArgs_0: import("../..").TreeViewItemMeta | null) => boolean) & {
47
- clearCache: () => void;
48
- resultsCount: () => number;
49
- resetResultsCount: () => void;
50
- };
51
- lastResult: () => boolean;
52
- dependencies: [((state: any, itemId: string | null) => import("../..").TreeViewItemMeta | null) & {
53
- clearCache: () => void;
54
- resultsCount: () => number;
55
- resetResultsCount: () => void;
56
- } & {
57
- resultFunc: (resultFuncArgs_0: {
58
- [itemId: string]: import("../..").TreeViewItemMeta;
59
- }, resultFuncArgs_1: string | null) => import("../..").TreeViewItemMeta | null;
60
- memoizedResultFunc: ((resultFuncArgs_0: {
61
- [itemId: string]: import("../..").TreeViewItemMeta;
62
- }, resultFuncArgs_1: string | null) => import("../..").TreeViewItemMeta | null) & {
63
- clearCache: () => void;
64
- resultsCount: () => number;
65
- resetResultsCount: () => void;
66
- };
67
- lastResult: () => import("../..").TreeViewItemMeta | null;
68
- dependencies: [((state: import("../../corePlugins/useTreeViewId/useTreeViewId.types").UseTreeViewIdState & import("../useTreeViewItems").UseTreeViewItemsState<import("../../..").TreeViewDefaultItemModelProperties> & Partial<{}> & {
69
- cacheKey: import("../../models").TreeViewStateCacheKey;
70
- }) => {
71
- [itemId: string]: import("../..").TreeViewItemMeta;
72
- }) & {
73
- clearCache: () => void;
74
- resultsCount: () => number;
75
- resetResultsCount: () => void;
76
- } & {
77
- resultFunc: (resultFuncArgs_0: {
78
- disabledItemsFocusable: boolean;
79
- itemModelLookup: {
80
- [itemId: string]: import("../../..").TreeViewBaseItem<import("../../..").TreeViewDefaultItemModelProperties>;
81
- };
82
- itemMetaLookup: {
83
- [itemId: string]: import("../..").TreeViewItemMeta;
84
- };
85
- itemOrderedChildrenIdsLookup: {
86
- [parentItemId: string]: string[];
87
- };
88
- itemChildrenIndexesLookup: {
89
- [parentItemId: string]: {
90
- [itemId: string]: number;
91
- };
92
- };
93
- loading: boolean;
94
- error: Error | null;
95
- }) => {
96
- [itemId: string]: import("../..").TreeViewItemMeta;
97
- };
98
- memoizedResultFunc: ((resultFuncArgs_0: {
99
- disabledItemsFocusable: boolean;
100
- itemModelLookup: {
101
- [itemId: string]: import("../../..").TreeViewBaseItem<import("../../..").TreeViewDefaultItemModelProperties>;
102
- };
103
- itemMetaLookup: {
104
- [itemId: string]: import("../..").TreeViewItemMeta;
105
- };
106
- itemOrderedChildrenIdsLookup: {
107
- [parentItemId: string]: string[];
108
- };
109
- itemChildrenIndexesLookup: {
110
- [parentItemId: string]: {
111
- [itemId: string]: number;
112
- };
113
- };
114
- loading: boolean;
115
- error: Error | null;
116
- }) => {
117
- [itemId: string]: import("../..").TreeViewItemMeta;
118
- }) & {
119
- clearCache: () => void;
120
- resultsCount: () => number;
121
- resetResultsCount: () => void;
122
- };
123
- lastResult: () => {
124
- [itemId: string]: import("../..").TreeViewItemMeta;
125
- };
126
- dependencies: [TreeViewRootSelector<import("../useTreeViewItems").UseTreeViewItemsSignature>];
127
- recomputations: () => number;
128
- resetRecomputations: () => void;
129
- dependencyRecomputations: () => number;
130
- resetDependencyRecomputations: () => void;
131
- } & {
132
- argsMemoize: typeof import("reselect").weakMapMemoize;
133
- memoize: typeof import("reselect").weakMapMemoize;
134
- }, (_: any, itemId: string | null) => string | null];
135
- recomputations: () => number;
136
- resetRecomputations: () => void;
137
- dependencyRecomputations: () => number;
138
- resetDependencyRecomputations: () => void;
139
- } & {
140
- argsMemoize: typeof import("reselect").weakMapMemoize;
141
- memoize: typeof import("reselect").weakMapMemoize;
142
- }];
143
- recomputations: () => number;
144
- resetRecomputations: () => void;
145
- dependencyRecomputations: () => number;
146
- resetDependencyRecomputations: () => void;
147
- } & {
148
- argsMemoize: typeof import("reselect").weakMapMemoize;
149
- memoize: typeof import("reselect").weakMapMemoize;
150
- };
151
- /**
152
- * Get the slot that triggers the item's expansion when clicked.
153
- * @param {TreeViewState<[UseTreeViewExpansionSignature]>} state The state of the tree view.
154
- * @returns {'content' | 'iconContainer'} The slot that triggers the item's expansion when clicked. Is `null` if the item is not expandable.
155
- */
156
- export declare const selectorItemExpansionTrigger: ((state: import("../../corePlugins/useTreeViewId/useTreeViewId.types").UseTreeViewIdState & import("./useTreeViewExpansion.types").UseTreeViewExpansionState & Partial<{}> & {
157
- cacheKey: import("../../models").TreeViewStateCacheKey;
158
- }) => "content" | "iconContainer") & {
159
- clearCache: () => void;
160
- resultsCount: () => number;
161
- resetResultsCount: () => void;
162
- } & {
163
- resultFunc: (resultFuncArgs_0: {
164
- expandedItemsMap: Map<string, true>;
165
- expansionTrigger: "content" | "iconContainer";
166
- }) => "content" | "iconContainer";
167
- memoizedResultFunc: ((resultFuncArgs_0: {
168
- expandedItemsMap: Map<string, true>;
169
- expansionTrigger: "content" | "iconContainer";
170
- }) => "content" | "iconContainer") & {
171
- clearCache: () => void;
172
- resultsCount: () => number;
173
- resetResultsCount: () => void;
174
- };
175
- lastResult: () => "content" | "iconContainer";
176
- dependencies: [TreeViewRootSelector<UseTreeViewExpansionSignature>];
177
- recomputations: () => number;
178
- resetRecomputations: () => void;
179
- dependencyRecomputations: () => number;
180
- resetDependencyRecomputations: () => void;
181
- } & {
182
- argsMemoize: typeof import("reselect").weakMapMemoize;
183
- memoize: typeof import("reselect").weakMapMemoize;
184
- };
@@ -1,24 +0,0 @@
1
- import { createSelector } from "../../utils/selectors.js";
2
- import { selectorItemMeta } from "../useTreeViewItems/useTreeViewItems.selectors.js";
3
- const selectorExpansion = state => state.expansion;
4
-
5
- /**
6
- * Check if an item is expanded.
7
- * @param {TreeViewState<[UseTreeViewExpansionSignature]>} state The state of the tree view.
8
- * @returns {boolean} `true` if the item is expanded, `false` otherwise.
9
- */
10
- export const selectorIsItemExpanded = createSelector([selectorExpansion, (_, itemId) => itemId], (expansionState, itemId) => expansionState.expandedItemsMap.has(itemId));
11
-
12
- /**
13
- * Check if an item is expandable.
14
- * @param {TreeViewState<[UseTreeViewItemsSignature]>} state The state of the tree view.
15
- * @returns {boolean} `true` if the item is expandable, `false` otherwise.
16
- */
17
- export const selectorIsItemExpandable = createSelector([selectorItemMeta], itemMeta => itemMeta?.expandable ?? false);
18
-
19
- /**
20
- * Get the slot that triggers the item's expansion when clicked.
21
- * @param {TreeViewState<[UseTreeViewExpansionSignature]>} state The state of the tree view.
22
- * @returns {'content' | 'iconContainer'} The slot that triggers the item's expansion when clicked. Is `null` if the item is not expandable.
23
- */
24
- export const selectorItemExpansionTrigger = createSelector([selectorExpansion], expansionState => expansionState.expansionTrigger);
@@ -1,102 +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 {string} 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: string;
17
- event?: React.SyntheticEvent;
18
- shouldBeExpanded?: boolean;
19
- }) => void;
20
- }
21
- export interface UseTreeViewExpansionInstance extends UseTreeViewExpansionPublicAPI {
22
- /**
23
- * Expand all the siblings (i.e.: the items that have the same parent) of a given item.
24
- * @param {React.SyntheticEvent} event The DOM event that triggered the change.
25
- * @param {TreeViewItemId} itemId The id of the item whose siblings will be expanded.
26
- */
27
- expandAllSiblings: (event: React.KeyboardEvent, itemId: TreeViewItemId) => void;
28
- /**
29
- * APply the new expansion status of a given item.
30
- * Is used by the `setItemExpansion` method and by the `useTreeViewLazyLoading` plugin.
31
- * Unlike `setItemExpansion`, this method does not trigger the lazy loading.
32
- * @param {object} parameters The parameters of the method.
33
- * @param {string} parameters.itemId The id of the item to expand of collapse.
34
- * @param {React.SyntheticEvent | null} parameters.event The DOM event that triggered the change.
35
- * @param {boolean} parameters.shouldBeExpanded If `true` the item will be expanded. If `false` the item will be collapsed.
36
- */
37
- applyItemExpansion: (parameters: {
38
- itemId: string;
39
- event: React.SyntheticEvent | null;
40
- shouldBeExpanded: boolean;
41
- }) => void;
42
- }
43
- export interface UseTreeViewExpansionParameters {
44
- /**
45
- * Expanded item ids.
46
- * Used when the item's expansion is controlled.
47
- */
48
- expandedItems?: string[];
49
- /**
50
- * Expanded item ids.
51
- * Used when the item's expansion is not controlled.
52
- * @default []
53
- */
54
- defaultExpandedItems?: string[];
55
- /**
56
- * Callback fired when Tree Items are expanded/collapsed.
57
- * @param {React.SyntheticEvent} event The DOM event that triggered the change. Can be null when the change is caused by the `publicAPI.setItemExpansion()` method.
58
- * @param {array} itemIds The ids of the expanded items.
59
- */
60
- onExpandedItemsChange?: (event: React.SyntheticEvent | null, itemIds: string[]) => void;
61
- /**
62
- * Callback fired when a Tree Item is expanded or collapsed.
63
- * @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.
64
- * @param {array} itemId The itemId of the modified item.
65
- * @param {array} isExpanded `true` if the item has just been expanded, `false` if it has just been collapsed.
66
- */
67
- onItemExpansionToggle?: (event: React.SyntheticEvent | null, itemId: string, isExpanded: boolean) => void;
68
- /**
69
- * The slot that triggers the item's expansion when clicked.
70
- * @default 'content'
71
- */
72
- expansionTrigger?: 'content' | 'iconContainer';
73
- }
74
- export type UseTreeViewExpansionDefaultizedParameters = DefaultizedProps<UseTreeViewExpansionParameters, 'defaultExpandedItems'>;
75
- export interface UseTreeViewExpansionState {
76
- expansion: {
77
- expandedItemsMap: Map<string, true>;
78
- expansionTrigger: 'content' | 'iconContainer';
79
- };
80
- }
81
- interface UseTreeViewExpansionEventLookup {
82
- beforeItemToggleExpansion: {
83
- params: {
84
- isExpansionPrevented: boolean;
85
- shouldBeExpanded: boolean;
86
- event: React.SyntheticEvent | null;
87
- itemId: TreeViewItemId;
88
- };
89
- };
90
- }
91
- export type UseTreeViewExpansionSignature = TreeViewPluginSignature<{
92
- params: UseTreeViewExpansionParameters;
93
- defaultizedParams: UseTreeViewExpansionDefaultizedParameters;
94
- instance: UseTreeViewExpansionInstance;
95
- publicAPI: UseTreeViewExpansionPublicAPI;
96
- modelNames: 'expandedItems';
97
- state: UseTreeViewExpansionState;
98
- dependencies: [UseTreeViewItemsSignature];
99
- optionalDependencies: [UseTreeViewLabelSignature];
100
- events: UseTreeViewExpansionEventLookup;
101
- }>;
102
- export {};
@@ -1,7 +0,0 @@
1
- import { TreeViewUsedDefaultizedParams } from "../../models/index.js";
2
- import { UseTreeViewExpansionSignature } from "./useTreeViewExpansion.types.js";
3
- export declare const createExpandedItemsMap: (expandedItems: string[]) => Map<string, true>;
4
- export declare const getExpansionTrigger: ({
5
- isItemEditable,
6
- expansionTrigger
7
- }: Pick<TreeViewUsedDefaultizedParams<UseTreeViewExpansionSignature>, "isItemEditable" | "expansionTrigger">) => "content" | "iconContainer";
@@ -1,19 +0,0 @@
1
- export const createExpandedItemsMap = expandedItems => {
2
- const expandedItemsMap = new Map();
3
- expandedItems.forEach(id => {
4
- expandedItemsMap.set(id, true);
5
- });
6
- return expandedItemsMap;
7
- };
8
- export const getExpansionTrigger = ({
9
- isItemEditable,
10
- expansionTrigger
11
- }) => {
12
- if (expansionTrigger) {
13
- return expansionTrigger;
14
- }
15
- if (isItemEditable) {
16
- return 'iconContainer';
17
- }
18
- return 'content';
19
- };
@@ -1,2 +0,0 @@
1
- export { useTreeViewFocus } from "./useTreeViewFocus.js";
2
- export type { UseTreeViewFocusSignature, UseTreeViewFocusParameters, UseTreeViewFocusDefaultizedParameters } from './useTreeViewFocus.types';
@@ -1 +0,0 @@
1
- export { useTreeViewFocus } from "./useTreeViewFocus.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,135 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import * as React from 'react';
3
- import useEventCallback from '@mui/utils/useEventCallback';
4
- import { useInstanceEventHandler } from "../../hooks/useInstanceEventHandler.js";
5
- import { getFirstNavigableItem } from "../../utils/tree.js";
6
- import { convertSelectedItemsToArray } from "../useTreeViewSelection/useTreeViewSelection.utils.js";
7
- import { selectorDefaultFocusableItemId, selectorFocusedItemId } from "./useTreeViewFocus.selectors.js";
8
- import { selectorIsItemExpanded } from "../useTreeViewExpansion/useTreeViewExpansion.selectors.js";
9
- import { selectorCanItemBeFocused, selectorItemMeta } from "../useTreeViewItems/useTreeViewItems.selectors.js";
10
- export const useTreeViewFocus = ({
11
- instance,
12
- params,
13
- store,
14
- models
15
- }) => {
16
- React.useEffect(() => {
17
- let defaultFocusableItemId = convertSelectedItemsToArray(models.selectedItems.value).find(itemId => {
18
- if (!selectorCanItemBeFocused(store.value, itemId)) {
19
- return false;
20
- }
21
- const itemMeta = selectorItemMeta(store.value, itemId);
22
- return itemMeta && (itemMeta.parentId == null || selectorIsItemExpanded(store.value, itemMeta.parentId));
23
- });
24
- if (defaultFocusableItemId == null) {
25
- defaultFocusableItemId = getFirstNavigableItem(store.value) ?? null;
26
- }
27
- store.update(prevState => {
28
- if (defaultFocusableItemId === prevState.focus.defaultFocusableItemId) {
29
- return prevState;
30
- }
31
- return _extends({}, prevState, {
32
- focus: _extends({}, prevState.focus, {
33
- defaultFocusableItemId
34
- })
35
- });
36
- });
37
- }, [store, models.selectedItems.value]);
38
- const setFocusedItemId = useEventCallback(itemId => {
39
- store.update(prevState => {
40
- const focusedItemId = selectorFocusedItemId(prevState);
41
- if (focusedItemId === itemId) {
42
- return prevState;
43
- }
44
- return _extends({}, prevState, {
45
- focus: _extends({}, prevState.focus, {
46
- focusedItemId: itemId
47
- })
48
- });
49
- });
50
- });
51
- const isItemVisible = itemId => {
52
- const itemMeta = selectorItemMeta(store.value, itemId);
53
- return itemMeta && (itemMeta.parentId == null || selectorIsItemExpanded(store.value, itemMeta.parentId));
54
- };
55
- const innerFocusItem = (event, itemId) => {
56
- const itemElement = instance.getItemDOMElement(itemId);
57
- if (itemElement) {
58
- itemElement.focus();
59
- }
60
- setFocusedItemId(itemId);
61
- if (params.onItemFocus) {
62
- params.onItemFocus(event, itemId);
63
- }
64
- };
65
- const focusItem = useEventCallback((event, itemId) => {
66
- // If we receive an itemId, and it is visible, the focus will be set to it
67
- if (isItemVisible(itemId)) {
68
- innerFocusItem(event, itemId);
69
- }
70
- });
71
- const removeFocusedItem = useEventCallback(() => {
72
- const focusedItemId = selectorFocusedItemId(store.value);
73
- if (focusedItemId == null) {
74
- return;
75
- }
76
- const itemMeta = selectorItemMeta(store.value, focusedItemId);
77
- if (itemMeta) {
78
- const itemElement = instance.getItemDOMElement(focusedItemId);
79
- if (itemElement) {
80
- itemElement.blur();
81
- }
82
- }
83
- setFocusedItemId(null);
84
- });
85
- useInstanceEventHandler(instance, 'removeItem', ({
86
- id
87
- }) => {
88
- const focusedItemId = selectorFocusedItemId(store.value);
89
- const defaultFocusableItemId = selectorDefaultFocusableItemId(store.value);
90
- if (focusedItemId === id && defaultFocusableItemId != null) {
91
- innerFocusItem(null, defaultFocusableItemId);
92
- }
93
- });
94
- const createRootHandleFocus = otherHandlers => event => {
95
- otherHandlers.onFocus?.(event);
96
- if (event.defaultMuiPrevented) {
97
- return;
98
- }
99
-
100
- // if the event bubbled (which is React specific) we don't want to steal focus
101
- const defaultFocusableItemId = selectorDefaultFocusableItemId(store.value);
102
- if (event.target === event.currentTarget && defaultFocusableItemId != null) {
103
- innerFocusItem(event, defaultFocusableItemId);
104
- }
105
- };
106
- const createRootHandleBlur = otherHandlers => event => {
107
- otherHandlers.onBlur?.(event);
108
- if (event.defaultMuiPrevented) {
109
- return;
110
- }
111
- setFocusedItemId(null);
112
- };
113
- return {
114
- getRootProps: otherHandlers => ({
115
- onFocus: createRootHandleFocus(otherHandlers),
116
- onBlur: createRootHandleBlur(otherHandlers)
117
- }),
118
- publicAPI: {
119
- focusItem
120
- },
121
- instance: {
122
- focusItem,
123
- removeFocusedItem
124
- }
125
- };
126
- };
127
- useTreeViewFocus.getInitialState = () => ({
128
- focus: {
129
- focusedItemId: null,
130
- defaultFocusableItemId: null
131
- }
132
- });
133
- useTreeViewFocus.params = {
134
- onItemFocus: true
135
- };
@@ -1,182 +0,0 @@
1
- import { UseTreeViewFocusSignature } from "./useTreeViewFocus.types.js";
2
- import { TreeViewRootSelector } from "../../utils/selectors.js";
3
- /**
4
- * Get the item that should be sequentially focusable (usually with the Tab key).
5
- * At any point in time, there is a single item that can be sequentially focused in the Tree View.
6
- * 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.
7
- * @param {TreeViewState<[UseTreeViewFocusSignature]>} state The state of the tree view.
8
- * @returns {TreeViewItemId | null} The id of the item that should be sequentially focusable.
9
- */
10
- export declare const selectorDefaultFocusableItemId: ((state: import("../../corePlugins/useTreeViewId/useTreeViewId.types").UseTreeViewIdState & import("./useTreeViewFocus.types").UseTreeViewFocusState & Partial<{}> & {
11
- cacheKey: import("../../models").TreeViewStateCacheKey;
12
- }) => string | null) & {
13
- clearCache: () => void;
14
- resultsCount: () => number;
15
- resetResultsCount: () => void;
16
- } & {
17
- resultFunc: (resultFuncArgs_0: {
18
- focusedItemId: string | null;
19
- defaultFocusableItemId: string | null;
20
- }) => string | null;
21
- memoizedResultFunc: ((resultFuncArgs_0: {
22
- focusedItemId: string | null;
23
- defaultFocusableItemId: string | null;
24
- }) => string | null) & {
25
- clearCache: () => void;
26
- resultsCount: () => number;
27
- resetResultsCount: () => void;
28
- };
29
- lastResult: () => string | null;
30
- dependencies: [TreeViewRootSelector<UseTreeViewFocusSignature>];
31
- recomputations: () => number;
32
- resetRecomputations: () => void;
33
- dependencyRecomputations: () => number;
34
- resetDependencyRecomputations: () => void;
35
- } & {
36
- argsMemoize: typeof import("reselect").weakMapMemoize;
37
- memoize: typeof import("reselect").weakMapMemoize;
38
- };
39
- /**
40
- * Check if an item is the default focusable item.
41
- * @param {TreeViewState<[UseTreeViewFocusSignature]>} state The state of the tree view.
42
- * @param {TreeViewItemId} itemId The id of the item to check.
43
- * @returns {boolean} `true` if the item is the default focusable item, `false` otherwise.
44
- */
45
- export declare const selectorIsItemTheDefaultFocusableItem: ((state: any, itemId: string) => boolean) & {
46
- clearCache: () => void;
47
- resultsCount: () => number;
48
- resetResultsCount: () => void;
49
- } & {
50
- resultFunc: (resultFuncArgs_0: string | null, resultFuncArgs_1: string) => boolean;
51
- memoizedResultFunc: ((resultFuncArgs_0: string | null, resultFuncArgs_1: string) => boolean) & {
52
- clearCache: () => void;
53
- resultsCount: () => number;
54
- resetResultsCount: () => void;
55
- };
56
- lastResult: () => boolean;
57
- dependencies: [((state: import("../../corePlugins/useTreeViewId/useTreeViewId.types").UseTreeViewIdState & import("./useTreeViewFocus.types").UseTreeViewFocusState & Partial<{}> & {
58
- cacheKey: import("../../models").TreeViewStateCacheKey;
59
- }) => string | null) & {
60
- clearCache: () => void;
61
- resultsCount: () => number;
62
- resetResultsCount: () => void;
63
- } & {
64
- resultFunc: (resultFuncArgs_0: {
65
- focusedItemId: string | null;
66
- defaultFocusableItemId: string | null;
67
- }) => string | null;
68
- memoizedResultFunc: ((resultFuncArgs_0: {
69
- focusedItemId: string | null;
70
- defaultFocusableItemId: string | null;
71
- }) => string | null) & {
72
- clearCache: () => void;
73
- resultsCount: () => number;
74
- resetResultsCount: () => void;
75
- };
76
- lastResult: () => string | null;
77
- dependencies: [TreeViewRootSelector<UseTreeViewFocusSignature>];
78
- recomputations: () => number;
79
- resetRecomputations: () => void;
80
- dependencyRecomputations: () => number;
81
- resetDependencyRecomputations: () => void;
82
- } & {
83
- argsMemoize: typeof import("reselect").weakMapMemoize;
84
- memoize: typeof import("reselect").weakMapMemoize;
85
- }, (_: any, itemId: string) => string];
86
- recomputations: () => number;
87
- resetRecomputations: () => void;
88
- dependencyRecomputations: () => number;
89
- resetDependencyRecomputations: () => void;
90
- } & {
91
- argsMemoize: typeof import("reselect").weakMapMemoize;
92
- memoize: typeof import("reselect").weakMapMemoize;
93
- };
94
- /**
95
- * Get the id of the item that is currently focused.
96
- * @param {TreeViewState<[UseTreeViewFocusSignature]>} state The state of the tree view.
97
- * @returns {TreeViewItemId | null} The id of the item that is currently focused.
98
- */
99
- export declare const selectorFocusedItemId: ((state: import("../../corePlugins/useTreeViewId/useTreeViewId.types").UseTreeViewIdState & import("./useTreeViewFocus.types").UseTreeViewFocusState & Partial<{}> & {
100
- cacheKey: import("../../models").TreeViewStateCacheKey;
101
- }) => string | null) & {
102
- clearCache: () => void;
103
- resultsCount: () => number;
104
- resetResultsCount: () => void;
105
- } & {
106
- resultFunc: (resultFuncArgs_0: {
107
- focusedItemId: string | null;
108
- defaultFocusableItemId: string | null;
109
- }) => string | null;
110
- memoizedResultFunc: ((resultFuncArgs_0: {
111
- focusedItemId: string | null;
112
- defaultFocusableItemId: string | null;
113
- }) => string | null) & {
114
- clearCache: () => void;
115
- resultsCount: () => number;
116
- resetResultsCount: () => void;
117
- };
118
- lastResult: () => string | null;
119
- dependencies: [TreeViewRootSelector<UseTreeViewFocusSignature>];
120
- recomputations: () => number;
121
- resetRecomputations: () => void;
122
- dependencyRecomputations: () => number;
123
- resetDependencyRecomputations: () => void;
124
- } & {
125
- argsMemoize: typeof import("reselect").weakMapMemoize;
126
- memoize: typeof import("reselect").weakMapMemoize;
127
- };
128
- /**
129
- * Check if an item is focused.
130
- * @param {TreeViewState<[UseTreeViewFocusSignature]>} state The state of the tree view.
131
- * @param {TreeViewItemId} itemId The id of the item to check.
132
- * @returns {boolean} `true` if the item is focused, `false` otherwise.
133
- */
134
- export declare const selectorIsItemFocused: ((state: any, itemId: string) => boolean) & {
135
- clearCache: () => void;
136
- resultsCount: () => number;
137
- resetResultsCount: () => void;
138
- } & {
139
- resultFunc: (resultFuncArgs_0: string | null, resultFuncArgs_1: string) => boolean;
140
- memoizedResultFunc: ((resultFuncArgs_0: string | null, resultFuncArgs_1: string) => boolean) & {
141
- clearCache: () => void;
142
- resultsCount: () => number;
143
- resetResultsCount: () => void;
144
- };
145
- lastResult: () => boolean;
146
- dependencies: [((state: import("../../corePlugins/useTreeViewId/useTreeViewId.types").UseTreeViewIdState & import("./useTreeViewFocus.types").UseTreeViewFocusState & Partial<{}> & {
147
- cacheKey: import("../../models").TreeViewStateCacheKey;
148
- }) => string | null) & {
149
- clearCache: () => void;
150
- resultsCount: () => number;
151
- resetResultsCount: () => void;
152
- } & {
153
- resultFunc: (resultFuncArgs_0: {
154
- focusedItemId: string | null;
155
- defaultFocusableItemId: string | null;
156
- }) => string | null;
157
- memoizedResultFunc: ((resultFuncArgs_0: {
158
- focusedItemId: string | null;
159
- defaultFocusableItemId: string | null;
160
- }) => string | null) & {
161
- clearCache: () => void;
162
- resultsCount: () => number;
163
- resetResultsCount: () => void;
164
- };
165
- lastResult: () => string | null;
166
- dependencies: [TreeViewRootSelector<UseTreeViewFocusSignature>];
167
- recomputations: () => number;
168
- resetRecomputations: () => void;
169
- dependencyRecomputations: () => number;
170
- resetDependencyRecomputations: () => void;
171
- } & {
172
- argsMemoize: typeof import("reselect").weakMapMemoize;
173
- memoize: typeof import("reselect").weakMapMemoize;
174
- }, (_: any, itemId: string) => string];
175
- recomputations: () => number;
176
- resetRecomputations: () => void;
177
- dependencyRecomputations: () => number;
178
- resetDependencyRecomputations: () => void;
179
- } & {
180
- argsMemoize: typeof import("reselect").weakMapMemoize;
181
- memoize: typeof import("reselect").weakMapMemoize;
182
- };