@mui/x-tree-view 6.0.0-alpha.2 → 6.0.0-alpha.4

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 (267) hide show
  1. package/CHANGELOG.md +162 -1
  2. package/README.md +3 -9
  3. package/TreeItem/TreeItem.d.ts +2 -2
  4. package/TreeItem/TreeItem.js +25 -34
  5. package/TreeItem/useTreeItem.js +18 -27
  6. package/TreeView/TreeView.d.ts +6 -3
  7. package/TreeView/TreeView.js +67 -710
  8. package/TreeView/TreeView.types.d.ts +4 -147
  9. package/index.d.ts +1 -0
  10. package/index.js +3 -2
  11. package/{TreeView/descendants.d.ts → internals/TreeViewProvider/DescendantProvider.d.ts} +1 -5
  12. package/internals/TreeViewProvider/TreeViewContext.d.ts +7 -0
  13. package/{TreeView → internals/TreeViewProvider}/TreeViewContext.js +8 -18
  14. package/internals/TreeViewProvider/TreeViewProvider.d.ts +9 -0
  15. package/internals/TreeViewProvider/TreeViewProvider.js +21 -0
  16. package/internals/TreeViewProvider/TreeViewProvider.types.d.ts +18 -0
  17. package/internals/TreeViewProvider/index.d.ts +2 -0
  18. package/internals/TreeViewProvider/index.js +1 -0
  19. package/internals/TreeViewProvider/useTreeViewContext.d.ts +3 -0
  20. package/internals/TreeViewProvider/useTreeViewContext.js +3 -0
  21. package/internals/corePlugins/corePlugins.d.ts +7 -0
  22. package/internals/corePlugins/corePlugins.js +6 -0
  23. package/internals/corePlugins/index.d.ts +2 -0
  24. package/internals/corePlugins/index.js +1 -0
  25. package/internals/corePlugins/useTreeViewInstanceEvents/index.d.ts +2 -0
  26. package/internals/corePlugins/useTreeViewInstanceEvents/index.js +1 -0
  27. package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.d.ts +8 -0
  28. package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +35 -0
  29. package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.d.ts +21 -0
  30. package/internals/hooks/useInstanceEventHandler.d.ts +15 -0
  31. package/internals/hooks/useInstanceEventHandler.js +82 -0
  32. package/internals/models/events.d.ts +9 -0
  33. package/internals/models/helpers.d.ts +13 -0
  34. package/internals/models/helpers.js +1 -0
  35. package/internals/models/index.d.ts +3 -0
  36. package/internals/models/index.js +3 -0
  37. package/internals/models/plugin.d.ts +69 -0
  38. package/internals/models/plugin.js +1 -0
  39. package/internals/models/treeView.d.ts +23 -0
  40. package/internals/models/treeView.js +1 -0
  41. package/internals/plugins/defaultPlugins.d.ts +10 -0
  42. package/internals/plugins/defaultPlugins.js +9 -0
  43. package/internals/plugins/index.d.ts +2 -0
  44. package/internals/plugins/index.js +1 -0
  45. package/internals/plugins/useTreeViewContextValueBuilder/index.d.ts +2 -0
  46. package/internals/plugins/useTreeViewContextValueBuilder/index.js +1 -0
  47. package/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.d.ts +3 -0
  48. package/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.js +24 -0
  49. package/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.types.d.ts +34 -0
  50. package/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.types.js +1 -0
  51. package/internals/plugins/useTreeViewExpansion/index.d.ts +2 -0
  52. package/internals/plugins/useTreeViewExpansion/index.js +1 -0
  53. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.d.ts +3 -0
  54. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +63 -0
  55. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +32 -0
  56. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.js +1 -0
  57. package/internals/plugins/useTreeViewFocus/index.d.ts +2 -0
  58. package/internals/plugins/useTreeViewFocus/index.js +1 -0
  59. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.d.ts +3 -0
  60. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +77 -0
  61. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +25 -0
  62. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.js +1 -0
  63. package/internals/plugins/useTreeViewKeyboardNavigation/index.d.ts +2 -0
  64. package/internals/plugins/useTreeViewKeyboardNavigation/index.js +1 -0
  65. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.d.ts +3 -0
  66. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +223 -0
  67. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +14 -0
  68. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.js +1 -0
  69. package/internals/plugins/useTreeViewNodes/index.d.ts +2 -0
  70. package/internals/plugins/useTreeViewNodes/index.js +1 -0
  71. package/internals/plugins/useTreeViewNodes/useTreeViewNodes.d.ts +3 -0
  72. package/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +60 -0
  73. package/internals/plugins/useTreeViewNodes/useTreeViewNodes.types.d.ts +27 -0
  74. package/internals/plugins/useTreeViewNodes/useTreeViewNodes.types.js +1 -0
  75. package/internals/plugins/useTreeViewSelection/index.d.ts +2 -0
  76. package/internals/plugins/useTreeViewSelection/index.js +1 -0
  77. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.d.ts +3 -0
  78. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +172 -0
  79. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +49 -0
  80. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.js +1 -0
  81. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.d.ts +17 -0
  82. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +55 -0
  83. package/internals/useTreeView/index.d.ts +2 -0
  84. package/internals/useTreeView/index.js +1 -0
  85. package/internals/useTreeView/useTreeView.d.ts +3 -0
  86. package/internals/useTreeView/useTreeView.js +65 -0
  87. package/internals/useTreeView/useTreeView.types.d.ts +20 -0
  88. package/internals/useTreeView/useTreeView.types.js +1 -0
  89. package/internals/useTreeView/useTreeView.utils.d.ts +8 -0
  90. package/internals/useTreeView/useTreeView.utils.js +43 -0
  91. package/internals/useTreeView/useTreeViewModels.d.ts +6 -0
  92. package/internals/useTreeView/useTreeViewModels.js +63 -0
  93. package/internals/utils/EventManager.d.ts +29 -0
  94. package/internals/utils/EventManager.js +69 -0
  95. package/internals/utils/cleanupTracking/CleanupTracking.d.ts +9 -0
  96. package/internals/utils/cleanupTracking/CleanupTracking.js +1 -0
  97. package/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.d.ts +7 -0
  98. package/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +18 -0
  99. package/internals/utils/cleanupTracking/TimerBasedCleanupTracking.d.ts +10 -0
  100. package/internals/utils/cleanupTracking/TimerBasedCleanupTracking.js +38 -0
  101. package/internals/utils/publishTreeViewEvent.d.ts +5 -0
  102. package/internals/utils/publishTreeViewEvent.js +3 -0
  103. package/legacy/TreeItem/TreeItem.js +28 -35
  104. package/legacy/TreeItem/useTreeItem.js +18 -27
  105. package/legacy/TreeView/TreeView.js +67 -768
  106. package/legacy/index.js +3 -2
  107. package/legacy/internals/TreeViewProvider/TreeViewContext.js +21 -0
  108. package/legacy/internals/TreeViewProvider/TreeViewProvider.js +19 -0
  109. package/legacy/internals/TreeViewProvider/TreeViewProvider.types.js +1 -0
  110. package/legacy/internals/TreeViewProvider/index.js +1 -0
  111. package/legacy/internals/TreeViewProvider/useTreeViewContext.js +5 -0
  112. package/legacy/internals/corePlugins/corePlugins.js +6 -0
  113. package/legacy/internals/corePlugins/index.js +1 -0
  114. package/legacy/internals/corePlugins/useTreeViewInstanceEvents/index.js +1 -0
  115. package/legacy/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +45 -0
  116. package/legacy/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.js +1 -0
  117. package/legacy/internals/hooks/useInstanceEventHandler.js +87 -0
  118. package/legacy/internals/models/events.js +1 -0
  119. package/legacy/internals/models/helpers.js +1 -0
  120. package/legacy/internals/models/index.js +3 -0
  121. package/legacy/internals/models/plugin.js +1 -0
  122. package/legacy/internals/models/treeView.js +1 -0
  123. package/legacy/internals/plugins/defaultPlugins.js +9 -0
  124. package/legacy/internals/plugins/index.js +1 -0
  125. package/legacy/internals/plugins/useTreeViewContextValueBuilder/index.js +1 -0
  126. package/legacy/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.js +25 -0
  127. package/legacy/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.types.js +1 -0
  128. package/legacy/internals/plugins/useTreeViewExpansion/index.js +1 -0
  129. package/legacy/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +66 -0
  130. package/legacy/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.js +1 -0
  131. package/legacy/internals/plugins/useTreeViewFocus/index.js +1 -0
  132. package/legacy/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +87 -0
  133. package/legacy/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.js +1 -0
  134. package/legacy/internals/plugins/useTreeViewKeyboardNavigation/index.js +1 -0
  135. package/legacy/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +226 -0
  136. package/legacy/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.js +1 -0
  137. package/legacy/internals/plugins/useTreeViewNodes/index.js +1 -0
  138. package/legacy/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +71 -0
  139. package/legacy/internals/plugins/useTreeViewNodes/useTreeViewNodes.types.js +1 -0
  140. package/legacy/internals/plugins/useTreeViewSelection/index.js +1 -0
  141. package/legacy/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +188 -0
  142. package/legacy/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.js +1 -0
  143. package/legacy/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +55 -0
  144. package/legacy/internals/useTreeView/index.js +1 -0
  145. package/legacy/internals/useTreeView/useTreeView.js +71 -0
  146. package/legacy/internals/useTreeView/useTreeView.types.js +1 -0
  147. package/legacy/internals/useTreeView/useTreeView.utils.js +46 -0
  148. package/legacy/internals/useTreeView/useTreeViewModels.js +76 -0
  149. package/legacy/internals/utils/EventManager.js +91 -0
  150. package/legacy/internals/utils/cleanupTracking/CleanupTracking.js +1 -0
  151. package/legacy/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +29 -0
  152. package/legacy/internals/utils/cleanupTracking/TimerBasedCleanupTracking.js +52 -0
  153. package/legacy/internals/utils/publishTreeViewEvent.js +3 -0
  154. package/modern/TreeItem/TreeItem.js +25 -34
  155. package/modern/TreeItem/useTreeItem.js +18 -27
  156. package/modern/TreeView/TreeView.js +67 -709
  157. package/modern/index.js +3 -2
  158. package/modern/{TreeView → internals/TreeViewProvider}/TreeViewContext.js +8 -18
  159. package/modern/internals/TreeViewProvider/TreeViewProvider.js +21 -0
  160. package/modern/internals/TreeViewProvider/TreeViewProvider.types.js +1 -0
  161. package/modern/internals/TreeViewProvider/index.js +1 -0
  162. package/modern/internals/TreeViewProvider/useTreeViewContext.js +3 -0
  163. package/modern/internals/corePlugins/corePlugins.js +6 -0
  164. package/modern/internals/corePlugins/index.js +1 -0
  165. package/modern/internals/corePlugins/useTreeViewInstanceEvents/index.js +1 -0
  166. package/modern/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +35 -0
  167. package/modern/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.js +1 -0
  168. package/modern/internals/hooks/useInstanceEventHandler.js +77 -0
  169. package/modern/internals/models/events.js +1 -0
  170. package/modern/internals/models/helpers.js +1 -0
  171. package/modern/internals/models/index.js +3 -0
  172. package/modern/internals/models/plugin.js +1 -0
  173. package/modern/internals/models/treeView.js +1 -0
  174. package/modern/internals/plugins/defaultPlugins.js +9 -0
  175. package/modern/internals/plugins/index.js +1 -0
  176. package/modern/internals/plugins/useTreeViewContextValueBuilder/index.js +1 -0
  177. package/modern/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.js +24 -0
  178. package/modern/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.types.js +1 -0
  179. package/modern/internals/plugins/useTreeViewExpansion/index.js +1 -0
  180. package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +57 -0
  181. package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.js +1 -0
  182. package/modern/internals/plugins/useTreeViewFocus/index.js +1 -0
  183. package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +72 -0
  184. package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.js +1 -0
  185. package/modern/internals/plugins/useTreeViewKeyboardNavigation/index.js +1 -0
  186. package/modern/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +222 -0
  187. package/modern/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.js +1 -0
  188. package/modern/internals/plugins/useTreeViewNodes/index.js +1 -0
  189. package/modern/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +60 -0
  190. package/modern/internals/plugins/useTreeViewNodes/useTreeViewNodes.types.js +1 -0
  191. package/modern/internals/plugins/useTreeViewSelection/index.js +1 -0
  192. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +169 -0
  193. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.js +1 -0
  194. package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +55 -0
  195. package/modern/internals/useTreeView/index.js +1 -0
  196. package/modern/internals/useTreeView/useTreeView.js +65 -0
  197. package/modern/internals/useTreeView/useTreeView.types.js +1 -0
  198. package/modern/internals/useTreeView/useTreeView.utils.js +43 -0
  199. package/modern/internals/useTreeView/useTreeViewModels.js +63 -0
  200. package/modern/internals/utils/EventManager.js +69 -0
  201. package/modern/internals/utils/cleanupTracking/CleanupTracking.js +1 -0
  202. package/modern/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +18 -0
  203. package/modern/internals/utils/cleanupTracking/TimerBasedCleanupTracking.js +38 -0
  204. package/modern/internals/utils/publishTreeViewEvent.js +3 -0
  205. package/node/TreeItem/TreeItem.js +27 -36
  206. package/node/TreeItem/useTreeItem.js +18 -29
  207. package/node/TreeView/TreeView.js +67 -709
  208. package/node/index.js +14 -2
  209. package/node/{TreeView → internals/TreeViewProvider}/TreeViewContext.js +10 -19
  210. package/node/internals/TreeViewProvider/TreeViewProvider.js +29 -0
  211. package/node/internals/TreeViewProvider/index.js +12 -0
  212. package/node/internals/TreeViewProvider/useTreeViewContext.js +12 -0
  213. package/node/internals/corePlugins/corePlugins.js +13 -0
  214. package/node/internals/corePlugins/index.js +12 -0
  215. package/node/internals/corePlugins/useTreeViewInstanceEvents/index.js +12 -0
  216. package/node/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +44 -0
  217. package/node/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.js +5 -0
  218. package/node/internals/hooks/useInstanceEventHandler.js +88 -0
  219. package/node/internals/models/events.js +5 -0
  220. package/node/internals/models/helpers.js +5 -0
  221. package/node/internals/models/index.js +38 -0
  222. package/node/internals/models/plugin.js +5 -0
  223. package/node/internals/models/treeView.js +5 -0
  224. package/node/internals/plugins/defaultPlugins.js +16 -0
  225. package/node/internals/plugins/index.js +12 -0
  226. package/node/internals/plugins/useTreeViewContextValueBuilder/index.js +12 -0
  227. package/node/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.js +32 -0
  228. package/node/internals/plugins/useTreeViewContextValueBuilder/useTreeViewContextValueBuilder.types.js +5 -0
  229. package/node/internals/plugins/useTreeViewExpansion/index.js +12 -0
  230. package/node/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +67 -0
  231. package/node/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.js +5 -0
  232. package/node/internals/plugins/useTreeViewFocus/index.js +12 -0
  233. package/node/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +82 -0
  234. package/node/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.js +5 -0
  235. package/node/internals/plugins/useTreeViewKeyboardNavigation/index.js +12 -0
  236. package/node/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +232 -0
  237. package/node/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.js +5 -0
  238. package/node/internals/plugins/useTreeViewNodes/index.js +12 -0
  239. package/node/internals/plugins/useTreeViewNodes/useTreeViewNodes.js +70 -0
  240. package/node/internals/plugins/useTreeViewNodes/useTreeViewNodes.types.js +5 -0
  241. package/node/internals/plugins/useTreeViewSelection/index.js +12 -0
  242. package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +179 -0
  243. package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.js +5 -0
  244. package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +62 -0
  245. package/node/internals/useTreeView/index.js +12 -0
  246. package/node/internals/useTreeView/useTreeView.js +75 -0
  247. package/node/internals/useTreeView/useTreeView.types.js +5 -0
  248. package/node/internals/useTreeView/useTreeView.utils.js +54 -0
  249. package/node/internals/useTreeView/useTreeViewModels.js +73 -0
  250. package/node/internals/utils/EventManager.js +76 -0
  251. package/node/internals/utils/cleanupTracking/CleanupTracking.js +5 -0
  252. package/node/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +25 -0
  253. package/node/internals/utils/cleanupTracking/TimerBasedCleanupTracking.js +45 -0
  254. package/node/internals/utils/publishTreeViewEvent.js +10 -0
  255. package/package.json +3 -3
  256. package/themeAugmentation/props.d.ts +1 -1
  257. package/TreeView/TreeViewContext.d.ts +0 -6
  258. package/internals/models.d.ts +0 -1
  259. package/legacy/TreeView/TreeViewContext.js +0 -41
  260. /package/{TreeView/descendants.js → internals/TreeViewProvider/DescendantProvider.js} +0 -0
  261. /package/internals/{models.js → TreeViewProvider/TreeViewProvider.types.js} +0 -0
  262. /package/{legacy/internals/models.js → internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.js} +0 -0
  263. /package/{modern/internals/models.js → internals/models/events.js} +0 -0
  264. /package/legacy/{TreeView/descendants.js → internals/TreeViewProvider/DescendantProvider.js} +0 -0
  265. /package/modern/{TreeView/descendants.js → internals/TreeViewProvider/DescendantProvider.js} +0 -0
  266. /package/node/{TreeView/descendants.js → internals/TreeViewProvider/DescendantProvider.js} +0 -0
  267. /package/node/internals/{models.js → TreeViewProvider/TreeViewProvider.types.js} +0 -0
@@ -17,10 +17,10 @@ var _useForkRef = _interopRequireDefault(require("@mui/utils/useForkRef"));
17
17
  var _unsupportedProp = _interopRequireDefault(require("@mui/utils/unsupportedProp"));
18
18
  var _elementTypeAcceptingRef = _interopRequireDefault(require("@mui/utils/elementTypeAcceptingRef"));
19
19
  var _base = require("@mui/base");
20
- var _TreeViewContext = require("../TreeView/TreeViewContext");
21
- var _descendants = require("../TreeView/descendants");
20
+ var _DescendantProvider = require("../internals/TreeViewProvider/DescendantProvider");
22
21
  var _TreeItemContent = require("./TreeItemContent");
23
22
  var _treeItemClasses = require("./treeItemClasses");
23
+ var _useTreeViewContext = require("../internals/TreeViewProvider/useTreeViewContext");
24
24
  var _jsxRuntime = require("react/jsx-runtime");
25
25
  const _excluded = ["children", "className", "collapseIcon", "ContentComponent", "ContentProps", "endIcon", "expandIcon", "disabled", "icon", "id", "label", "nodeId", "onClick", "onMouseDown", "TransitionComponent", "TransitionProps"];
26
26
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -67,6 +67,8 @@ const StyledTreeItemContent = (0, _styles.styled)(_TreeItemContent.TreeItemConte
67
67
  }) => ({
68
68
  padding: '0 8px',
69
69
  width: '100%',
70
+ boxSizing: 'border-box',
71
+ // prevent width + padding to overflow
70
72
  display: 'flex',
71
73
  alignItems: 'center',
72
74
  cursor: 'pointer',
@@ -109,10 +111,12 @@ const StyledTreeItemContent = (0, _styles.styled)(_TreeItemContent.TreeItemConte
109
111
  }
110
112
  },
111
113
  [`& .${_treeItemClasses.treeItemClasses.label}`]: (0, _extends2.default)({
114
+ paddingLeft: 4,
112
115
  width: '100%',
116
+ boxSizing: 'border-box',
117
+ // prevent width + padding to overflow
113
118
  // fixes overflow - see https://github.com/mui/material-ui/issues/27372
114
119
  minWidth: 0,
115
- paddingLeft: 4,
116
120
  position: 'relative'
117
121
  }, theme.typography.body1)
118
122
  }));
@@ -130,11 +134,11 @@ const TreeItemGroup = (0, _styles.styled)(_Collapse.default, {
130
134
  *
131
135
  * Demos:
132
136
  *
133
- * - [Tree View](https://mui.com/material-ui/react-tree-view/)
137
+ * - [Tree View](https://mui.com/x/react-tree-view/)
134
138
  *
135
139
  * API:
136
140
  *
137
- * - [TreeItem API](https://mui.com/material-ui/api/tree-item/)
141
+ * - [TreeItem API](https://mui.com/x/api/tree-view/tree-item/)
138
142
  */
139
143
  const TreeItem = /*#__PURE__*/React.forwardRef(function TreeItem(inProps, ref) {
140
144
  const props = (0, _styles.useThemeProps)({
@@ -162,19 +166,11 @@ const TreeItem = /*#__PURE__*/React.forwardRef(function TreeItem(inProps, ref) {
162
166
  other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
163
167
  const {
164
168
  icons: contextIcons,
165
- focus,
166
- isExpanded,
167
- isFocused,
168
- isSelected,
169
- isDisabled,
170
169
  multiSelect,
171
170
  disabledItemsFocusable,
172
- mapFirstChar,
173
- unMapFirstChar,
174
- registerNode,
175
- unregisterNode,
176
- treeId
177
- } = React.useContext(_TreeViewContext.TreeViewContext);
171
+ treeId,
172
+ instance
173
+ } = (0, _useTreeViewContext.useTreeViewContext)();
178
174
  let id;
179
175
  if (idProp != null) {
180
176
  id = idProp;
@@ -191,12 +187,12 @@ const TreeItem = /*#__PURE__*/React.forwardRef(function TreeItem(inProps, ref) {
191
187
  const {
192
188
  index,
193
189
  parentId
194
- } = (0, _descendants.useDescendant)(descendant);
190
+ } = (0, _DescendantProvider.useDescendant)(descendant);
195
191
  const expandable = Boolean(Array.isArray(children) ? children.length : children);
196
- const expanded = isExpanded ? isExpanded(nodeId) : false;
197
- const focused = isFocused ? isFocused(nodeId) : false;
198
- const selected = isSelected ? isSelected(nodeId) : false;
199
- const disabled = isDisabled ? isDisabled(nodeId) : false;
192
+ const expanded = instance ? instance.isNodeExpanded(nodeId) : false;
193
+ const focused = instance ? instance.isNodeFocused(nodeId) : false;
194
+ const selected = instance ? instance.isNodeSelected(nodeId) : false;
195
+ const disabled = instance ? instance.isNodeDisabled(nodeId) : false;
200
196
  const ownerState = (0, _extends2.default)({}, props, {
201
197
  expanded,
202
198
  focused,
@@ -220,8 +216,8 @@ const TreeItem = /*#__PURE__*/React.forwardRef(function TreeItem(inProps, ref) {
220
216
  }
221
217
  React.useEffect(() => {
222
218
  // On the first render a node's index will be -1. We want to wait for the real index.
223
- if (registerNode && unregisterNode && index !== -1) {
224
- registerNode({
219
+ if (instance && index !== -1) {
220
+ instance.updateNode({
225
221
  id: nodeId,
226
222
  idAttribute: id,
227
223
  index,
@@ -229,21 +225,16 @@ const TreeItem = /*#__PURE__*/React.forwardRef(function TreeItem(inProps, ref) {
229
225
  expandable,
230
226
  disabled: disabledProp
231
227
  });
232
- return () => {
233
- unregisterNode(nodeId);
234
- };
228
+ return () => instance.removeNode(nodeId);
235
229
  }
236
230
  return undefined;
237
- }, [registerNode, unregisterNode, parentId, index, nodeId, expandable, disabledProp, id]);
231
+ }, [instance, parentId, index, nodeId, expandable, disabledProp, id]);
238
232
  React.useEffect(() => {
239
- if (mapFirstChar && unMapFirstChar && label) {
240
- mapFirstChar(nodeId, (contentRef.current?.textContent ?? '').substring(0, 1).toLowerCase());
241
- return () => {
242
- unMapFirstChar(nodeId);
243
- };
233
+ if (instance && label) {
234
+ return instance.mapFirstChar(nodeId, (contentRef.current?.textContent ?? '').substring(0, 1).toLowerCase());
244
235
  }
245
236
  return undefined;
246
- }, [mapFirstChar, unMapFirstChar, nodeId, label]);
237
+ }, [instance, nodeId, label]);
247
238
  let ariaSelected;
248
239
  if (multiSelect) {
249
240
  ariaSelected = selected;
@@ -270,8 +261,8 @@ const TreeItem = /*#__PURE__*/React.forwardRef(function TreeItem(inProps, ref) {
270
261
  });
271
262
  }
272
263
  const unfocusable = !disabledItemsFocusable && disabled;
273
- if (!focused && event.currentTarget === event.target && !unfocusable) {
274
- focus(event, nodeId);
264
+ if (instance && !focused && event.currentTarget === event.target && !unfocusable) {
265
+ instance.focusNode(event, nodeId);
275
266
  }
276
267
  }
277
268
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(TreeItemRoot, (0, _extends2.default)({
@@ -306,7 +297,7 @@ const TreeItem = /*#__PURE__*/React.forwardRef(function TreeItem(inProps, ref) {
306
297
  expansionIcon: expansionIcon,
307
298
  displayIcon: displayIcon,
308
299
  ownerState: ownerState
309
- }, ContentProps)), children && /*#__PURE__*/(0, _jsxRuntime.jsx)(_descendants.DescendantProvider, {
300
+ }, ContentProps)), children && /*#__PURE__*/(0, _jsxRuntime.jsx)(_DescendantProvider.DescendantProvider, {
310
301
  id: nodeId,
311
302
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(TreeItemGroup, (0, _extends2.default)({
312
303
  as: TransitionComponent,
@@ -4,57 +4,46 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useTreeItem = useTreeItem;
7
- var React = _interopRequireWildcard(require("react"));
8
- var _TreeViewContext = require("../TreeView/TreeViewContext");
9
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
10
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
7
+ var _useTreeViewContext = require("../internals/TreeViewProvider/useTreeViewContext");
11
8
  function useTreeItem(nodeId) {
12
9
  const {
13
- focus,
14
- isExpanded,
15
- isExpandable,
16
- isFocused,
17
- isDisabled,
18
- isSelected,
19
- multiSelect,
20
- selectNode,
21
- selectRange,
22
- toggleExpansion
23
- } = React.useContext(_TreeViewContext.TreeViewContext);
24
- const expandable = isExpandable ? isExpandable(nodeId) : false;
25
- const expanded = isExpanded ? isExpanded(nodeId) : false;
26
- const focused = isFocused ? isFocused(nodeId) : false;
27
- const disabled = isDisabled ? isDisabled(nodeId) : false;
28
- const selected = isSelected ? isSelected(nodeId) : false;
10
+ instance,
11
+ multiSelect
12
+ } = (0, _useTreeViewContext.useTreeViewContext)();
13
+ const expandable = instance ? instance.isNodeExpandable(nodeId) : false;
14
+ const expanded = instance ? instance.isNodeExpanded(nodeId) : false;
15
+ const focused = instance ? instance.isNodeFocused(nodeId) : false;
16
+ const selected = instance ? instance.isNodeSelected(nodeId) : false;
17
+ const disabled = instance ? instance.isNodeDisabled(nodeId) : false;
29
18
  const handleExpansion = event => {
30
- if (!disabled) {
19
+ if (instance && !disabled) {
31
20
  if (!focused) {
32
- focus(event, nodeId);
21
+ instance.focusNode(event, nodeId);
33
22
  }
34
23
  const multiple = multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);
35
24
 
36
25
  // If already expanded and trying to toggle selection don't close
37
- if (expandable && !(multiple && isExpanded(nodeId))) {
38
- toggleExpansion(event, nodeId);
26
+ if (expandable && !(multiple && instance.isNodeExpanded(nodeId))) {
27
+ instance.toggleNodeExpansion(event, nodeId);
39
28
  }
40
29
  }
41
30
  };
42
31
  const handleSelection = event => {
43
- if (!disabled) {
32
+ if (instance && !disabled) {
44
33
  if (!focused) {
45
- focus(event, nodeId);
34
+ instance.focusNode(event, nodeId);
46
35
  }
47
36
  const multiple = multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);
48
37
  if (multiple) {
49
38
  if (event.shiftKey) {
50
- selectRange(event, {
39
+ instance.selectRange(event, {
51
40
  end: nodeId
52
41
  });
53
42
  } else {
54
- selectNode(event, nodeId, true);
43
+ instance.selectNode(event, nodeId, true);
55
44
  }
56
45
  } else {
57
- selectNode(event, nodeId);
46
+ instance.selectNode(event, nodeId);
58
47
  }
59
48
  }
60
49
  };