@mui/x-tree-view 8.22.0 → 8.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (497) hide show
  1. package/CHANGELOG.md +312 -0
  2. package/RichTreeView/RichTreeView.d.ts +1 -1
  3. package/RichTreeView/RichTreeView.js +41 -28
  4. package/RichTreeView/RichTreeView.types.d.ts +6 -4
  5. package/RichTreeView/index.d.ts +1 -3
  6. package/RichTreeView/index.js +1 -13
  7. package/RichTreeView/useExtractRichTreeViewParameters.d.ts +294 -0
  8. package/RichTreeView/useExtractRichTreeViewParameters.js +91 -0
  9. package/SimpleTreeView/SimpleTreeView.d.ts +1 -1
  10. package/SimpleTreeView/SimpleTreeView.js +30 -24
  11. package/SimpleTreeView/SimpleTreeView.types.d.ts +5 -4
  12. package/SimpleTreeView/useExtractSimpleTreeViewParameters.d.ts +293 -0
  13. package/SimpleTreeView/useExtractSimpleTreeViewParameters.js +78 -0
  14. package/TreeItem/TreeItem.d.ts +1 -1
  15. package/TreeItem/TreeItem.js +9 -2
  16. package/TreeItemProvider/TreeItemProvider.js +3 -10
  17. package/esm/RichTreeView/RichTreeView.d.ts +1 -1
  18. package/esm/RichTreeView/RichTreeView.js +40 -27
  19. package/esm/RichTreeView/RichTreeView.types.d.ts +6 -4
  20. package/esm/RichTreeView/index.d.ts +1 -3
  21. package/esm/RichTreeView/index.js +1 -1
  22. package/esm/RichTreeView/useExtractRichTreeViewParameters.d.ts +294 -0
  23. package/esm/RichTreeView/useExtractRichTreeViewParameters.js +83 -0
  24. package/esm/SimpleTreeView/SimpleTreeView.d.ts +1 -1
  25. package/esm/SimpleTreeView/SimpleTreeView.js +29 -23
  26. package/esm/SimpleTreeView/SimpleTreeView.types.d.ts +5 -4
  27. package/esm/SimpleTreeView/useExtractSimpleTreeViewParameters.d.ts +293 -0
  28. package/esm/SimpleTreeView/useExtractSimpleTreeViewParameters.js +70 -0
  29. package/esm/TreeItem/TreeItem.d.ts +1 -1
  30. package/esm/TreeItem/TreeItem.js +9 -2
  31. package/esm/TreeItemProvider/TreeItemProvider.js +3 -10
  32. package/esm/hooks/useApplyPropagationToSelectedItemsOnMount.js +2 -2
  33. package/esm/hooks/useRichTreeViewApiRef.d.ts +2 -2
  34. package/esm/hooks/useSimpleTreeViewApiRef.d.ts +2 -3
  35. package/esm/hooks/useTreeItemModel.d.ts +2 -2
  36. package/esm/hooks/useTreeItemModel.js +1 -1
  37. package/esm/hooks/useTreeItemUtils/useTreeItemUtils.d.ts +9 -19
  38. package/esm/hooks/useTreeItemUtils/useTreeItemUtils.js +26 -35
  39. package/esm/hooks/useTreeViewApiRef.d.ts +3 -5
  40. package/esm/hooks/useTreeViewApiRef.js +4 -3
  41. package/esm/index.d.ts +0 -1
  42. package/esm/index.js +1 -2
  43. package/esm/internals/MinimalTreeViewStore/MinimalTreeViewStore.d.ts +90 -0
  44. package/esm/internals/MinimalTreeViewStore/MinimalTreeViewStore.js +126 -0
  45. package/esm/internals/MinimalTreeViewStore/MinimalTreeViewStore.types.d.ts +272 -0
  46. package/esm/internals/MinimalTreeViewStore/MinimalTreeViewStore.utils.d.ts +21 -0
  47. package/esm/internals/MinimalTreeViewStore/MinimalTreeViewStore.utils.js +49 -0
  48. package/esm/internals/MinimalTreeViewStore/TimeoutManager.d.ts +9 -0
  49. package/esm/internals/MinimalTreeViewStore/TimeoutManager.js +39 -0
  50. package/esm/internals/MinimalTreeViewStore/TreeViewItemPluginManager.d.ts +12 -0
  51. package/esm/internals/MinimalTreeViewStore/TreeViewItemPluginManager.js +16 -0
  52. package/esm/internals/MinimalTreeViewStore/index.d.ts +2 -0
  53. package/esm/internals/MinimalTreeViewStore/index.js +2 -0
  54. package/esm/internals/RichTreeViewStore/RichTreeViewStore.d.ts +53 -0
  55. package/esm/internals/RichTreeViewStore/RichTreeViewStore.js +21 -0
  56. package/esm/internals/RichTreeViewStore/RichTreeViewStore.types.d.ts +34 -0
  57. package/esm/internals/RichTreeViewStore/RichTreeViewStore.utils.d.ts +3 -0
  58. package/esm/internals/RichTreeViewStore/RichTreeViewStore.utils.js +15 -0
  59. package/esm/internals/RichTreeViewStore/index.d.ts +3 -0
  60. package/esm/internals/RichTreeViewStore/index.js +3 -0
  61. package/esm/internals/SimpleTreeViewStore/SimpleTreeViewStore.d.ts +8 -0
  62. package/esm/internals/SimpleTreeViewStore/SimpleTreeViewStore.js +18 -0
  63. package/esm/internals/SimpleTreeViewStore/SimpleTreeViewStore.types.d.ts +9 -0
  64. package/esm/internals/SimpleTreeViewStore/SimpleTreeViewStore.utils.d.ts +3 -0
  65. package/esm/internals/SimpleTreeViewStore/SimpleTreeViewStore.utils.js +5 -0
  66. package/esm/internals/SimpleTreeViewStore/index.d.ts +2 -0
  67. package/esm/internals/SimpleTreeViewStore/index.js +2 -0
  68. package/esm/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.d.ts +2 -3
  69. package/esm/internals/TreeViewProvider/TreeViewChildrenItemProvider.js +2 -3
  70. package/esm/internals/TreeViewProvider/TreeViewContext.d.ts +3 -3
  71. package/esm/internals/TreeViewProvider/TreeViewProvider.d.ts +2 -2
  72. package/esm/internals/TreeViewProvider/TreeViewProvider.js +11 -6
  73. package/esm/internals/TreeViewProvider/TreeViewProvider.types.d.ts +8 -10
  74. package/esm/internals/TreeViewProvider/index.d.ts +1 -1
  75. package/esm/internals/TreeViewProvider/useTreeViewBuildContext.d.ts +16 -0
  76. package/esm/internals/{useTreeView → TreeViewProvider}/useTreeViewBuildContext.js +25 -39
  77. package/esm/internals/components/RichTreeViewItems.js +3 -3
  78. package/esm/internals/hooks/useTreeViewRootProps.d.ts +287 -0
  79. package/esm/internals/hooks/useTreeViewRootProps.js +30 -0
  80. package/esm/internals/hooks/useTreeViewStore.d.ts +10 -0
  81. package/esm/internals/hooks/useTreeViewStore.js +19 -0
  82. package/esm/internals/index.d.ts +15 -21
  83. package/esm/internals/index.js +11 -14
  84. package/esm/internals/models/events.d.ts +24 -3
  85. package/esm/internals/models/index.d.ts +2 -3
  86. package/esm/internals/models/index.js +2 -3
  87. package/esm/internals/models/itemPlugin.d.ts +9 -0
  88. package/esm/internals/models/treeView.d.ts +6 -9
  89. package/esm/internals/plugins/expansion/TreeViewExpansionPlugin.d.ts +69 -0
  90. package/esm/internals/plugins/expansion/TreeViewExpansionPlugin.js +124 -0
  91. package/esm/internals/plugins/expansion/index.d.ts +2 -0
  92. package/esm/internals/plugins/expansion/index.js +2 -0
  93. package/esm/internals/plugins/expansion/selectors.d.ts +27 -0
  94. package/esm/internals/plugins/{useTreeViewExpansion/useTreeViewExpansion.selectors.js → expansion/selectors.js} +5 -5
  95. package/esm/internals/plugins/expansion/utils.d.ts +5 -0
  96. package/esm/internals/plugins/focus/TreeViewFocusPlugin.d.ts +33 -0
  97. package/esm/internals/plugins/focus/TreeViewFocusPlugin.js +107 -0
  98. package/esm/internals/plugins/focus/index.d.ts +2 -0
  99. package/esm/internals/plugins/focus/index.js +2 -0
  100. package/esm/internals/plugins/focus/selectors.d.ts +21 -0
  101. package/esm/internals/plugins/{useTreeViewFocus/useTreeViewFocus.selectors.js → focus/selectors.js} +6 -6
  102. package/esm/internals/plugins/id/index.d.ts +1 -0
  103. package/esm/internals/plugins/id/index.js +1 -0
  104. package/esm/internals/plugins/id/selectors.d.ts +13 -0
  105. package/esm/internals/plugins/id/selectors.js +18 -0
  106. package/esm/internals/plugins/items/TreeViewItemsPlugin.d.ts +105 -0
  107. package/esm/internals/plugins/items/TreeViewItemsPlugin.js +223 -0
  108. package/esm/internals/plugins/items/index.d.ts +3 -0
  109. package/esm/internals/plugins/items/index.js +3 -0
  110. package/esm/internals/plugins/items/selectors.d.ts +60 -0
  111. package/esm/internals/plugins/items/selectors.js +64 -0
  112. package/esm/internals/plugins/items/utils.d.ts +43 -0
  113. package/esm/internals/plugins/{useTreeViewItems/useTreeViewItems.utils.js → items/utils.js} +6 -49
  114. package/esm/internals/plugins/{useTreeViewJSXItems/useTreeViewJSXItems.types.d.ts → jsxItems/TreeViewJSXItemsPlugin.d.ts} +6 -13
  115. package/esm/internals/plugins/jsxItems/TreeViewJSXItemsPlugin.js +81 -0
  116. package/esm/internals/plugins/jsxItems/index.d.ts +1 -0
  117. package/esm/internals/plugins/jsxItems/index.js +1 -0
  118. package/esm/internals/plugins/jsxItems/itemPlugin.d.ts +4 -0
  119. package/esm/internals/plugins/jsxItems/itemPlugin.js +88 -0
  120. package/esm/internals/plugins/keyboardNavigation/TreeViewKeyboardNavigationPlugin.d.ts +28 -0
  121. package/esm/internals/plugins/keyboardNavigation/TreeViewKeyboardNavigationPlugin.js +306 -0
  122. package/esm/internals/plugins/keyboardNavigation/index.d.ts +1 -0
  123. package/esm/internals/plugins/keyboardNavigation/index.js +1 -0
  124. package/esm/internals/plugins/labelEditing/TreeViewLabelEditingPlugin.d.ts +22 -0
  125. package/esm/internals/plugins/labelEditing/TreeViewLabelEditingPlugin.js +50 -0
  126. package/esm/internals/plugins/labelEditing/index.d.ts +2 -0
  127. package/esm/internals/plugins/labelEditing/index.js +2 -0
  128. package/{internals/plugins/useTreeViewLabel → esm/internals/plugins/labelEditing}/itemPlugin.d.ts +5 -4
  129. package/esm/internals/plugins/{useTreeViewLabel → labelEditing}/itemPlugin.js +2 -2
  130. package/esm/internals/plugins/labelEditing/selectors.d.ts +15 -0
  131. package/esm/internals/plugins/{useTreeViewLabel/useTreeViewLabel.selectors.js → labelEditing/selectors.js} +4 -4
  132. package/esm/internals/plugins/lazyLoading/index.d.ts +2 -0
  133. package/esm/internals/plugins/lazyLoading/index.js +2 -0
  134. package/esm/internals/plugins/lazyLoading/selectors.d.ts +19 -0
  135. package/esm/internals/plugins/lazyLoading/selectors.js +25 -0
  136. package/esm/internals/plugins/lazyLoading/types.d.ts +5 -0
  137. package/esm/internals/plugins/selection/TreeViewSelectionPlugin.d.ts +73 -0
  138. package/esm/internals/plugins/selection/TreeViewSelectionPlugin.js +319 -0
  139. package/esm/internals/plugins/selection/index.d.ts +2 -0
  140. package/esm/internals/plugins/selection/index.js +2 -0
  141. package/esm/internals/plugins/{useTreeViewSelection → selection}/itemPlugin.d.ts +1 -1
  142. package/esm/internals/plugins/{useTreeViewSelection → selection}/itemPlugin.js +8 -8
  143. package/esm/internals/plugins/selection/selectors.d.ts +48 -0
  144. package/esm/internals/plugins/{useTreeViewSelection/useTreeViewSelection.selectors.js → selection/selectors.js} +19 -9
  145. package/esm/internals/utils/tree.d.ts +8 -10
  146. package/esm/internals/utils/tree.js +2 -2
  147. package/esm/models/items.d.ts +5 -2
  148. package/esm/useTreeItem/useTreeItem.d.ts +18 -2
  149. package/esm/useTreeItem/useTreeItem.js +15 -19
  150. package/esm/useTreeItem/useTreeItem.types.d.ts +9 -19
  151. package/hooks/useApplyPropagationToSelectedItemsOnMount.js +3 -3
  152. package/hooks/useRichTreeViewApiRef.d.ts +2 -2
  153. package/hooks/useSimpleTreeViewApiRef.d.ts +2 -3
  154. package/hooks/useTreeItemModel.d.ts +2 -2
  155. package/hooks/useTreeItemModel.js +2 -2
  156. package/hooks/useTreeItemUtils/useTreeItemUtils.d.ts +9 -19
  157. package/hooks/useTreeItemUtils/useTreeItemUtils.js +41 -49
  158. package/hooks/useTreeViewApiRef.d.ts +3 -5
  159. package/hooks/useTreeViewApiRef.js +3 -5
  160. package/index.d.ts +0 -1
  161. package/index.js +1 -22
  162. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.d.ts +90 -0
  163. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.js +134 -0
  164. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.types.d.ts +272 -0
  165. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.utils.d.ts +21 -0
  166. package/internals/MinimalTreeViewStore/MinimalTreeViewStore.utils.js +58 -0
  167. package/internals/MinimalTreeViewStore/TimeoutManager.d.ts +9 -0
  168. package/internals/MinimalTreeViewStore/TimeoutManager.js +46 -0
  169. package/internals/MinimalTreeViewStore/TreeViewItemPluginManager.d.ts +12 -0
  170. package/internals/MinimalTreeViewStore/TreeViewItemPluginManager.js +23 -0
  171. package/internals/MinimalTreeViewStore/index.d.ts +2 -0
  172. package/internals/MinimalTreeViewStore/index.js +27 -0
  173. package/internals/RichTreeViewStore/RichTreeViewStore.d.ts +53 -0
  174. package/internals/RichTreeViewStore/RichTreeViewStore.js +30 -0
  175. package/internals/RichTreeViewStore/RichTreeViewStore.types.d.ts +34 -0
  176. package/internals/RichTreeViewStore/RichTreeViewStore.utils.d.ts +3 -0
  177. package/internals/RichTreeViewStore/RichTreeViewStore.utils.js +22 -0
  178. package/internals/RichTreeViewStore/index.d.ts +3 -0
  179. package/internals/RichTreeViewStore/index.js +38 -0
  180. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.d.ts +8 -0
  181. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.js +26 -0
  182. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.types.d.ts +9 -0
  183. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.utils.d.ts +3 -0
  184. package/internals/SimpleTreeViewStore/SimpleTreeViewStore.utils.js +11 -0
  185. package/internals/SimpleTreeViewStore/index.d.ts +2 -0
  186. package/internals/SimpleTreeViewStore/index.js +27 -0
  187. package/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.d.ts +2 -3
  188. package/internals/TreeViewProvider/TreeViewChildrenItemProvider.js +3 -4
  189. package/internals/TreeViewProvider/TreeViewContext.d.ts +3 -3
  190. package/internals/TreeViewProvider/TreeViewProvider.d.ts +2 -2
  191. package/internals/TreeViewProvider/TreeViewProvider.js +14 -9
  192. package/internals/TreeViewProvider/TreeViewProvider.types.d.ts +8 -10
  193. package/internals/TreeViewProvider/index.d.ts +1 -1
  194. package/internals/TreeViewProvider/useTreeViewBuildContext.d.ts +16 -0
  195. package/internals/{useTreeView → TreeViewProvider}/useTreeViewBuildContext.js +25 -39
  196. package/internals/components/RichTreeViewItems.js +9 -9
  197. package/internals/hooks/useTreeViewRootProps.d.ts +287 -0
  198. package/internals/hooks/useTreeViewRootProps.js +36 -0
  199. package/internals/hooks/useTreeViewStore.d.ts +10 -0
  200. package/internals/hooks/useTreeViewStore.js +26 -0
  201. package/internals/index.d.ts +15 -21
  202. package/internals/index.js +40 -70
  203. package/internals/models/events.d.ts +24 -3
  204. package/internals/models/index.d.ts +2 -3
  205. package/internals/models/index.js +11 -22
  206. package/internals/models/itemPlugin.d.ts +9 -0
  207. package/internals/models/treeView.d.ts +6 -9
  208. package/internals/plugins/expansion/TreeViewExpansionPlugin.d.ts +69 -0
  209. package/internals/plugins/expansion/TreeViewExpansionPlugin.js +132 -0
  210. package/internals/plugins/expansion/index.d.ts +2 -0
  211. package/internals/plugins/expansion/index.js +27 -0
  212. package/internals/plugins/expansion/selectors.d.ts +27 -0
  213. package/internals/plugins/{useTreeViewExpansion/useTreeViewExpansion.selectors.js → expansion/selectors.js} +8 -8
  214. package/internals/plugins/expansion/utils.d.ts +5 -0
  215. package/internals/plugins/focus/TreeViewFocusPlugin.d.ts +33 -0
  216. package/internals/plugins/focus/TreeViewFocusPlugin.js +114 -0
  217. package/internals/plugins/focus/index.d.ts +2 -0
  218. package/internals/plugins/focus/index.js +27 -0
  219. package/internals/plugins/focus/selectors.d.ts +21 -0
  220. package/internals/plugins/{useTreeViewFocus/useTreeViewFocus.selectors.js → focus/selectors.js} +9 -9
  221. package/internals/plugins/id/index.d.ts +1 -0
  222. package/internals/plugins/id/index.js +16 -0
  223. package/internals/plugins/id/selectors.d.ts +13 -0
  224. package/internals/plugins/id/selectors.js +24 -0
  225. package/internals/plugins/items/TreeViewItemsPlugin.d.ts +105 -0
  226. package/internals/plugins/items/TreeViewItemsPlugin.js +231 -0
  227. package/internals/plugins/items/index.d.ts +3 -0
  228. package/internals/plugins/items/index.js +46 -0
  229. package/internals/plugins/items/selectors.d.ts +60 -0
  230. package/internals/plugins/{useTreeViewItems/useTreeViewItems.selectors.js → items/selectors.js} +18 -14
  231. package/internals/plugins/items/utils.d.ts +43 -0
  232. package/internals/plugins/{useTreeViewItems/useTreeViewItems.utils.js → items/utils.js} +6 -50
  233. package/internals/plugins/{useTreeViewJSXItems/useTreeViewJSXItems.types.d.ts → jsxItems/TreeViewJSXItemsPlugin.d.ts} +6 -13
  234. package/internals/plugins/jsxItems/TreeViewJSXItemsPlugin.js +89 -0
  235. package/internals/plugins/jsxItems/index.d.ts +1 -0
  236. package/internals/plugins/jsxItems/index.js +16 -0
  237. package/internals/plugins/jsxItems/itemPlugin.d.ts +4 -0
  238. package/internals/plugins/{useTreeViewJSXItems → jsxItems}/itemPlugin.js +35 -20
  239. package/internals/plugins/keyboardNavigation/TreeViewKeyboardNavigationPlugin.d.ts +28 -0
  240. package/internals/plugins/keyboardNavigation/TreeViewKeyboardNavigationPlugin.js +313 -0
  241. package/internals/plugins/keyboardNavigation/index.d.ts +1 -0
  242. package/internals/plugins/keyboardNavigation/index.js +16 -0
  243. package/internals/plugins/labelEditing/TreeViewLabelEditingPlugin.d.ts +22 -0
  244. package/internals/plugins/labelEditing/TreeViewLabelEditingPlugin.js +58 -0
  245. package/internals/plugins/labelEditing/index.d.ts +2 -0
  246. package/internals/plugins/labelEditing/index.js +27 -0
  247. package/{esm/internals/plugins/useTreeViewLabel → internals/plugins/labelEditing}/itemPlugin.d.ts +5 -4
  248. package/internals/plugins/{useTreeViewLabel → labelEditing}/itemPlugin.js +6 -6
  249. package/internals/plugins/labelEditing/selectors.d.ts +15 -0
  250. package/internals/plugins/{useTreeViewLabel/useTreeViewLabel.selectors.js → labelEditing/selectors.js} +4 -4
  251. package/internals/plugins/lazyLoading/index.d.ts +2 -0
  252. package/internals/plugins/lazyLoading/index.js +27 -0
  253. package/internals/plugins/lazyLoading/selectors.d.ts +19 -0
  254. package/internals/plugins/{useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.js → lazyLoading/selectors.js} +11 -6
  255. package/internals/plugins/lazyLoading/types.d.ts +5 -0
  256. package/internals/plugins/selection/TreeViewSelectionPlugin.d.ts +73 -0
  257. package/internals/plugins/selection/TreeViewSelectionPlugin.js +327 -0
  258. package/internals/plugins/selection/index.d.ts +2 -0
  259. package/internals/plugins/selection/index.js +27 -0
  260. package/internals/plugins/{useTreeViewSelection → selection}/itemPlugin.d.ts +1 -1
  261. package/internals/plugins/{useTreeViewSelection → selection}/itemPlugin.js +16 -16
  262. package/internals/plugins/selection/selectors.d.ts +48 -0
  263. package/internals/plugins/{useTreeViewSelection/useTreeViewSelection.selectors.js → selection/selectors.js} +19 -9
  264. package/internals/utils/tree.d.ts +8 -10
  265. package/internals/utils/tree.js +33 -33
  266. package/models/items.d.ts +5 -2
  267. package/package.json +3 -3
  268. package/useTreeItem/useTreeItem.d.ts +18 -2
  269. package/useTreeItem/useTreeItem.js +19 -24
  270. package/useTreeItem/useTreeItem.types.d.ts +9 -19
  271. package/RichTreeView/RichTreeView.plugins.d.ts +0 -10
  272. package/RichTreeView/RichTreeView.plugins.js +0 -15
  273. package/SimpleTreeView/SimpleTreeView.plugins.d.ts +0 -9
  274. package/SimpleTreeView/SimpleTreeView.plugins.js +0 -15
  275. package/esm/RichTreeView/RichTreeView.plugins.d.ts +0 -10
  276. package/esm/RichTreeView/RichTreeView.plugins.js +0 -9
  277. package/esm/SimpleTreeView/SimpleTreeView.plugins.d.ts +0 -9
  278. package/esm/SimpleTreeView/SimpleTreeView.plugins.js +0 -9
  279. package/esm/internals/corePlugins/corePlugins.d.ts +0 -9
  280. package/esm/internals/corePlugins/corePlugins.js +0 -8
  281. package/esm/internals/corePlugins/index.d.ts +0 -2
  282. package/esm/internals/corePlugins/index.js +0 -1
  283. package/esm/internals/corePlugins/useTreeViewId/index.d.ts +0 -3
  284. package/esm/internals/corePlugins/useTreeViewId/index.js +0 -2
  285. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.d.ts +0 -3
  286. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.js +0 -38
  287. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.d.ts +0 -10
  288. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.js +0 -9
  289. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.types.d.ts +0 -20
  290. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.utils.d.ts +0 -21
  291. package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.utils.js +0 -26
  292. package/esm/internals/corePlugins/useTreeViewInstanceEvents/index.d.ts +0 -2
  293. package/esm/internals/corePlugins/useTreeViewInstanceEvents/index.js +0 -1
  294. package/esm/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.d.ts +0 -3
  295. package/esm/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +0 -31
  296. package/esm/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.d.ts +0 -22
  297. package/esm/internals/corePlugins/useTreeViewOptionalPlugins/index.d.ts +0 -2
  298. package/esm/internals/corePlugins/useTreeViewOptionalPlugins/index.js +0 -1
  299. package/esm/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.d.ts +0 -3
  300. package/esm/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.js +0 -12
  301. package/esm/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.d.ts +0 -8
  302. package/esm/internals/hooks/useInstanceEventHandler.d.ts +0 -15
  303. package/esm/internals/hooks/useInstanceEventHandler.js +0 -79
  304. package/esm/internals/models/helpers.d.ts +0 -7
  305. package/esm/internals/models/plugin.d.ts +0 -166
  306. package/esm/internals/models/plugin.js +0 -1
  307. package/esm/internals/plugins/useTreeViewExpansion/index.d.ts +0 -3
  308. package/esm/internals/plugins/useTreeViewExpansion/index.js +0 -2
  309. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.d.ts +0 -3
  310. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +0 -149
  311. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +0 -28
  312. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +0 -112
  313. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.js +0 -1
  314. package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.d.ts +0 -6
  315. package/esm/internals/plugins/useTreeViewFocus/index.d.ts +0 -3
  316. package/esm/internals/plugins/useTreeViewFocus/index.js +0 -2
  317. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.d.ts +0 -3
  318. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +0 -113
  319. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.d.ts +0 -22
  320. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +0 -45
  321. package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.js +0 -1
  322. package/esm/internals/plugins/useTreeViewItems/index.d.ts +0 -4
  323. package/esm/internals/plugins/useTreeViewItems/index.js +0 -3
  324. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.d.ts +0 -3
  325. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.js +0 -218
  326. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.d.ts +0 -56
  327. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.js +0 -60
  328. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.types.d.ts +0 -197
  329. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.types.js +0 -1
  330. package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.utils.d.ts +0 -49
  331. package/esm/internals/plugins/useTreeViewJSXItems/index.d.ts +0 -2
  332. package/esm/internals/plugins/useTreeViewJSXItems/index.js +0 -1
  333. package/esm/internals/plugins/useTreeViewJSXItems/itemPlugin.d.ts +0 -2
  334. package/esm/internals/plugins/useTreeViewJSXItems/itemPlugin.js +0 -74
  335. package/esm/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.d.ts +0 -3
  336. package/esm/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +0 -104
  337. package/esm/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.js +0 -1
  338. package/esm/internals/plugins/useTreeViewKeyboardNavigation/index.d.ts +0 -2
  339. package/esm/internals/plugins/useTreeViewKeyboardNavigation/index.js +0 -1
  340. package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.d.ts +0 -3
  341. package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +0 -305
  342. package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +0 -32
  343. package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.js +0 -1
  344. package/esm/internals/plugins/useTreeViewLabel/index.d.ts +0 -3
  345. package/esm/internals/plugins/useTreeViewLabel/index.js +0 -2
  346. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.d.ts +0 -3
  347. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +0 -70
  348. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.d.ts +0 -16
  349. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.d.ts +0 -50
  350. package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.js +0 -1
  351. package/esm/internals/plugins/useTreeViewLazyLoading/index.d.ts +0 -2
  352. package/esm/internals/plugins/useTreeViewLazyLoading/index.js +0 -1
  353. package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.d.ts +0 -24
  354. package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.js +0 -20
  355. package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.d.ts +0 -100
  356. package/esm/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.js +0 -1
  357. package/esm/internals/plugins/useTreeViewSelection/index.d.ts +0 -3
  358. package/esm/internals/plugins/useTreeViewSelection/index.js +0 -2
  359. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.d.ts +0 -3
  360. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +0 -230
  361. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.d.ts +0 -40
  362. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +0 -132
  363. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.js +0 -1
  364. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.d.ts +0 -31
  365. package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +0 -107
  366. package/esm/internals/useTreeView/index.d.ts +0 -1
  367. package/esm/internals/useTreeView/index.js +0 -1
  368. package/esm/internals/useTreeView/useExtractPluginParamsFromProps.d.ts +0 -19
  369. package/esm/internals/useTreeView/useExtractPluginParamsFromProps.js +0 -51
  370. package/esm/internals/useTreeView/useTreeView.d.ts +0 -18
  371. package/esm/internals/useTreeView/useTreeView.js +0 -102
  372. package/esm/internals/useTreeView/useTreeView.types.d.ts +0 -20
  373. package/esm/internals/useTreeView/useTreeView.types.js +0 -1
  374. package/esm/internals/useTreeView/useTreeViewBuildContext.d.ts +0 -13
  375. package/esm/internals/utils/cleanupTracking/CleanupTracking.d.ts +0 -9
  376. package/esm/internals/utils/cleanupTracking/CleanupTracking.js +0 -1
  377. package/esm/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.d.ts +0 -7
  378. package/esm/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +0 -14
  379. package/esm/internals/utils/cleanupTracking/TimerBasedCleanupTracking.d.ts +0 -9
  380. package/esm/internals/utils/cleanupTracking/TimerBasedCleanupTracking.js +0 -38
  381. package/esm/internals/utils/plugins.d.ts +0 -2
  382. package/esm/internals/utils/plugins.js +0 -4
  383. package/esm/internals/utils/publishTreeViewEvent.d.ts +0 -5
  384. package/esm/internals/utils/publishTreeViewEvent.js +0 -3
  385. package/internals/corePlugins/corePlugins.d.ts +0 -9
  386. package/internals/corePlugins/corePlugins.js +0 -14
  387. package/internals/corePlugins/index.d.ts +0 -2
  388. package/internals/corePlugins/index.js +0 -12
  389. package/internals/corePlugins/useTreeViewId/index.d.ts +0 -3
  390. package/internals/corePlugins/useTreeViewId/index.js +0 -19
  391. package/internals/corePlugins/useTreeViewId/useTreeViewId.d.ts +0 -3
  392. package/internals/corePlugins/useTreeViewId/useTreeViewId.js +0 -46
  393. package/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.d.ts +0 -10
  394. package/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.js +0 -15
  395. package/internals/corePlugins/useTreeViewId/useTreeViewId.types.d.ts +0 -20
  396. package/internals/corePlugins/useTreeViewId/useTreeViewId.utils.d.ts +0 -21
  397. package/internals/corePlugins/useTreeViewId/useTreeViewId.utils.js +0 -34
  398. package/internals/corePlugins/useTreeViewInstanceEvents/index.d.ts +0 -2
  399. package/internals/corePlugins/useTreeViewInstanceEvents/index.js +0 -12
  400. package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.d.ts +0 -3
  401. package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +0 -38
  402. package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.d.ts +0 -22
  403. package/internals/corePlugins/useTreeViewOptionalPlugins/index.d.ts +0 -2
  404. package/internals/corePlugins/useTreeViewOptionalPlugins/index.js +0 -12
  405. package/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.d.ts +0 -3
  406. package/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.js +0 -19
  407. package/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.d.ts +0 -8
  408. package/internals/hooks/useInstanceEventHandler.d.ts +0 -15
  409. package/internals/hooks/useInstanceEventHandler.js +0 -87
  410. package/internals/models/helpers.d.ts +0 -7
  411. package/internals/models/plugin.d.ts +0 -166
  412. package/internals/models/plugin.js +0 -5
  413. package/internals/plugins/useTreeViewExpansion/index.d.ts +0 -3
  414. package/internals/plugins/useTreeViewExpansion/index.js +0 -19
  415. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.d.ts +0 -3
  416. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +0 -157
  417. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +0 -28
  418. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +0 -112
  419. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.js +0 -5
  420. package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.d.ts +0 -6
  421. package/internals/plugins/useTreeViewFocus/index.d.ts +0 -3
  422. package/internals/plugins/useTreeViewFocus/index.js +0 -19
  423. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.d.ts +0 -3
  424. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +0 -121
  425. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.d.ts +0 -22
  426. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +0 -45
  427. package/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.js +0 -5
  428. package/internals/plugins/useTreeViewItems/index.d.ts +0 -4
  429. package/internals/plugins/useTreeViewItems/index.js +0 -32
  430. package/internals/plugins/useTreeViewItems/useTreeViewItems.d.ts +0 -3
  431. package/internals/plugins/useTreeViewItems/useTreeViewItems.js +0 -226
  432. package/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.d.ts +0 -56
  433. package/internals/plugins/useTreeViewItems/useTreeViewItems.types.d.ts +0 -197
  434. package/internals/plugins/useTreeViewItems/useTreeViewItems.types.js +0 -5
  435. package/internals/plugins/useTreeViewItems/useTreeViewItems.utils.d.ts +0 -49
  436. package/internals/plugins/useTreeViewJSXItems/index.d.ts +0 -2
  437. package/internals/plugins/useTreeViewJSXItems/index.js +0 -12
  438. package/internals/plugins/useTreeViewJSXItems/itemPlugin.d.ts +0 -2
  439. package/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.d.ts +0 -3
  440. package/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +0 -112
  441. package/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.js +0 -5
  442. package/internals/plugins/useTreeViewKeyboardNavigation/index.d.ts +0 -2
  443. package/internals/plugins/useTreeViewKeyboardNavigation/index.js +0 -12
  444. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.d.ts +0 -3
  445. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +0 -312
  446. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +0 -32
  447. package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.js +0 -5
  448. package/internals/plugins/useTreeViewLabel/index.d.ts +0 -3
  449. package/internals/plugins/useTreeViewLabel/index.js +0 -19
  450. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.d.ts +0 -3
  451. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +0 -78
  452. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.d.ts +0 -16
  453. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.d.ts +0 -50
  454. package/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.js +0 -5
  455. package/internals/plugins/useTreeViewLazyLoading/index.d.ts +0 -2
  456. package/internals/plugins/useTreeViewLazyLoading/index.js +0 -12
  457. package/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.selectors.d.ts +0 -24
  458. package/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.d.ts +0 -100
  459. package/internals/plugins/useTreeViewLazyLoading/useTreeViewLazyLoading.types.js +0 -5
  460. package/internals/plugins/useTreeViewSelection/index.d.ts +0 -3
  461. package/internals/plugins/useTreeViewSelection/index.js +0 -19
  462. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.d.ts +0 -3
  463. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +0 -239
  464. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.d.ts +0 -40
  465. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +0 -132
  466. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.js +0 -5
  467. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.d.ts +0 -31
  468. package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +0 -116
  469. package/internals/useTreeView/index.d.ts +0 -1
  470. package/internals/useTreeView/index.js +0 -12
  471. package/internals/useTreeView/useExtractPluginParamsFromProps.d.ts +0 -19
  472. package/internals/useTreeView/useExtractPluginParamsFromProps.js +0 -60
  473. package/internals/useTreeView/useTreeView.d.ts +0 -18
  474. package/internals/useTreeView/useTreeView.js +0 -112
  475. package/internals/useTreeView/useTreeView.types.d.ts +0 -20
  476. package/internals/useTreeView/useTreeView.types.js +0 -5
  477. package/internals/useTreeView/useTreeViewBuildContext.d.ts +0 -13
  478. package/internals/utils/cleanupTracking/CleanupTracking.d.ts +0 -9
  479. package/internals/utils/cleanupTracking/CleanupTracking.js +0 -5
  480. package/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.d.ts +0 -7
  481. package/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +0 -21
  482. package/internals/utils/cleanupTracking/TimerBasedCleanupTracking.d.ts +0 -9
  483. package/internals/utils/cleanupTracking/TimerBasedCleanupTracking.js +0 -45
  484. package/internals/utils/plugins.d.ts +0 -2
  485. package/internals/utils/plugins.js +0 -11
  486. package/internals/utils/publishTreeViewEvent.d.ts +0 -5
  487. package/internals/utils/publishTreeViewEvent.js +0 -10
  488. /package/esm/internals/{corePlugins/useTreeViewId/useTreeViewId.types.js → MinimalTreeViewStore/MinimalTreeViewStore.types.js} +0 -0
  489. /package/esm/internals/{corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.js → RichTreeViewStore/RichTreeViewStore.types.js} +0 -0
  490. /package/esm/internals/{corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.js → SimpleTreeViewStore/SimpleTreeViewStore.types.js} +0 -0
  491. /package/esm/internals/plugins/{useTreeViewExpansion/useTreeViewExpansion.utils.js → expansion/utils.js} +0 -0
  492. /package/esm/internals/{models/helpers.js → plugins/lazyLoading/types.js} +0 -0
  493. /package/internals/{corePlugins/useTreeViewId/useTreeViewId.types.js → MinimalTreeViewStore/MinimalTreeViewStore.types.js} +0 -0
  494. /package/internals/{corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.js → RichTreeViewStore/RichTreeViewStore.types.js} +0 -0
  495. /package/internals/{corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.js → SimpleTreeViewStore/SimpleTreeViewStore.types.js} +0 -0
  496. /package/internals/plugins/{useTreeViewExpansion/useTreeViewExpansion.utils.js → expansion/utils.js} +0 -0
  497. /package/internals/{models/helpers.js → plugins/lazyLoading/types.js} +0 -0
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.createMinimalInitialState = createMinimalInitialState;
8
+ exports.createTreeViewDefaultId = void 0;
9
+ exports.deriveStateFromParameters = deriveStateFromParameters;
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+ var _empty = require("@base-ui/utils/empty");
12
+ var _utils = require("../plugins/expansion/utils");
13
+ var _items = require("../plugins/items");
14
+ /**
15
+ * Returns the properties of the state that are derived from the parameters.
16
+ * This do not contain state properties that don't update whenever the parameters update.
17
+ */
18
+ function deriveStateFromParameters(parameters) {
19
+ return {
20
+ disabledItemsFocusable: parameters.disabledItemsFocusable ?? false,
21
+ domStructure: 'nested',
22
+ itemChildrenIndentation: parameters.itemChildrenIndentation ?? '12px',
23
+ providedTreeId: parameters.id,
24
+ // TODO: Fix
25
+ expansionTrigger: (0, _utils.getExpansionTrigger)({
26
+ isItemEditable: parameters.isItemEditable,
27
+ expansionTrigger: parameters.expansionTrigger
28
+ }),
29
+ disableSelection: parameters.disableSelection ?? false,
30
+ multiSelect: parameters.multiSelect ?? false,
31
+ checkboxSelection: parameters.checkboxSelection ?? false,
32
+ selectionPropagation: parameters.selectionPropagation ?? _empty.EMPTY_OBJECT
33
+ };
34
+ }
35
+ function applyModelInitialValue(controlledValue, defaultValue, fallback) {
36
+ if (controlledValue !== undefined) {
37
+ return controlledValue;
38
+ }
39
+ if (defaultValue !== undefined) {
40
+ return defaultValue;
41
+ }
42
+ return fallback;
43
+ }
44
+ function createMinimalInitialState(parameters) {
45
+ return (0, _extends2.default)({
46
+ treeId: undefined,
47
+ focusedItemId: null
48
+ }, deriveStateFromParameters(parameters), _items.TreeViewItemsPlugin.buildItemsStateIfNeeded(parameters), {
49
+ expandedItems: applyModelInitialValue(parameters.expandedItems, parameters.defaultExpandedItems, []),
50
+ selectedItems: applyModelInitialValue(parameters.selectedItems, parameters.defaultSelectedItems, parameters.multiSelect ? _empty.EMPTY_ARRAY : null)
51
+ });
52
+ }
53
+ let globalTreeViewDefaultId = 0;
54
+ const createTreeViewDefaultId = () => {
55
+ globalTreeViewDefaultId += 1;
56
+ return `mui-tree-view-${globalTreeViewDefaultId}`;
57
+ };
58
+ exports.createTreeViewDefaultId = createTreeViewDefaultId;
@@ -0,0 +1,9 @@
1
+ export declare class TimeoutManager {
2
+ private timeoutIds;
3
+ private intervalIds;
4
+ startTimeout: (key: string, delay: number, fn: Function) => void;
5
+ startInterval: (key: string, delay: number, fn: Function) => void;
6
+ clearTimeout: (key: string) => void;
7
+ clearInterval: (key: string) => void;
8
+ clearAll: () => void;
9
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.TimeoutManager = void 0;
7
+ class TimeoutManager {
8
+ timeoutIds = new Map();
9
+ intervalIds = new Map();
10
+ startTimeout = (key, delay, fn) => {
11
+ this.clearTimeout(key);
12
+ const id = setTimeout(() => {
13
+ this.timeoutIds.delete(key);
14
+ fn();
15
+ }, delay); /* Node.js types are enabled in development */
16
+
17
+ this.timeoutIds.set(key, id);
18
+ };
19
+ startInterval = (key, delay, fn) => {
20
+ this.clearTimeout(key);
21
+ const id = setInterval(fn, delay); /* Node.js types are enabled in development */
22
+
23
+ this.intervalIds.set(key, id);
24
+ };
25
+ clearTimeout = key => {
26
+ const id = this.timeoutIds.get(key);
27
+ if (id != null) {
28
+ clearTimeout(id);
29
+ this.timeoutIds.delete(key);
30
+ }
31
+ };
32
+ clearInterval = key => {
33
+ const id = this.intervalIds.get(key);
34
+ if (id != null) {
35
+ clearInterval(id);
36
+ this.intervalIds.delete(key);
37
+ }
38
+ };
39
+ clearAll = () => {
40
+ this.timeoutIds.forEach(clearTimeout);
41
+ this.timeoutIds.clear();
42
+ this.intervalIds.forEach(clearInterval);
43
+ this.intervalIds.clear();
44
+ };
45
+ }
46
+ exports.TimeoutManager = TimeoutManager;
@@ -0,0 +1,12 @@
1
+ import { TreeItemWrapper, TreeViewAnyStore, TreeViewItemPlugin } from "../models/index.js";
2
+ /**
3
+ * Manages the registration and application of plugins for the Tree Item.
4
+ * This will be replaced with a proper implementation in the future.
5
+ */
6
+ export declare class TreeViewItemPluginManager<TStore extends TreeViewAnyStore> {
7
+ private itemPlugins;
8
+ private itemWrappers;
9
+ register: (plugin: TreeViewItemPlugin, wrapItem: TreeItemWrapper<TStore> | null) => void;
10
+ listPlugins: () => TreeViewItemPlugin[];
11
+ listWrappers: () => TreeItemWrapper<TStore>[];
12
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.TreeViewItemPluginManager = void 0;
7
+ /**
8
+ * Manages the registration and application of plugins for the Tree Item.
9
+ * This will be replaced with a proper implementation in the future.
10
+ */
11
+ class TreeViewItemPluginManager {
12
+ itemPlugins = [];
13
+ itemWrappers = [];
14
+ register = (plugin, wrapItem) => {
15
+ this.itemPlugins.push(plugin);
16
+ if (wrapItem) {
17
+ this.itemWrappers.push(wrapItem);
18
+ }
19
+ };
20
+ listPlugins = () => this.itemPlugins;
21
+ listWrappers = () => this.itemWrappers;
22
+ }
23
+ exports.TreeViewItemPluginManager = TreeViewItemPluginManager;
@@ -0,0 +1,2 @@
1
+ export * from "./MinimalTreeViewStore.js";
2
+ export * from "./MinimalTreeViewStore.types.js";
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _MinimalTreeViewStore = require("./MinimalTreeViewStore");
7
+ Object.keys(_MinimalTreeViewStore).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _MinimalTreeViewStore[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _MinimalTreeViewStore[key];
14
+ }
15
+ });
16
+ });
17
+ var _MinimalTreeViewStore2 = require("./MinimalTreeViewStore.types");
18
+ Object.keys(_MinimalTreeViewStore2).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _MinimalTreeViewStore2[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function () {
24
+ return _MinimalTreeViewStore2[key];
25
+ }
26
+ });
27
+ });
@@ -0,0 +1,53 @@
1
+ import { TreeViewValidItem } from "../../models/index.js";
2
+ import { TreeViewLabelEditingPlugin } from "../plugins/labelEditing/index.js";
3
+ import { MinimalTreeViewStore } from "../MinimalTreeViewStore/index.js";
4
+ import { RichTreeViewStoreParameters, RichTreeViewState } from "./RichTreeViewStore.types.js";
5
+ export declare class ExtendableRichTreeViewStore<R extends TreeViewValidItem<R>, Multiple extends boolean | undefined, State extends RichTreeViewState<R, Multiple> = RichTreeViewState<R, Multiple>, Parameters extends RichTreeViewStoreParameters<R, Multiple> = RichTreeViewStoreParameters<R, Multiple>> extends MinimalTreeViewStore<R, Multiple, State, Parameters> {
6
+ labelEditing: TreeViewLabelEditingPlugin;
7
+ /**
8
+ * Mapper of the RichTreeViewStore.
9
+ * Can be used by classes extending the RichTreeViewStore to create their own mapper.
10
+ */
11
+ static rawMapper: import("../index.js").TreeViewParametersToStateMapper<any, any, RichTreeViewState<any, any>, RichTreeViewStoreParameters<any, any>>;
12
+ buildPublicAPI(): {
13
+ setEditedItem: (itemId: import("../../index.js").TreeViewItemId | null) => void;
14
+ updateItemLabel: (itemId: import("../../index.js").TreeViewItemId, label: string) => void;
15
+ setItemSelection: ({
16
+ itemId,
17
+ event,
18
+ keepExistingSelection,
19
+ shouldBeSelected
20
+ }: {
21
+ itemId: string;
22
+ event?: React.SyntheticEvent | null;
23
+ shouldBeSelected?: boolean;
24
+ keepExistingSelection?: boolean;
25
+ }) => void;
26
+ isItemExpanded: (itemId: import("../../index.js").TreeViewItemId) => boolean;
27
+ setItemExpansion: ({
28
+ itemId,
29
+ event,
30
+ shouldBeExpanded
31
+ }: {
32
+ itemId: import("../../index.js").TreeViewItemId;
33
+ event?: React.SyntheticEvent | null;
34
+ shouldBeExpanded?: boolean;
35
+ }) => void;
36
+ focusItem: (event: React.SyntheticEvent | null, itemId: import("../../index.js").TreeViewItemId) => void;
37
+ getItem: (itemId: import("../../index.js").TreeViewItemId) => R;
38
+ getItemDOMElement: (itemId: import("../../index.js").TreeViewItemId) => HTMLElement | null;
39
+ getItemOrderedChildrenIds: (itemId: import("../../index.js").TreeViewItemId | null) => import("../../index.js").TreeViewItemId[];
40
+ getItemTree: () => R[];
41
+ getParentId: (itemId: import("../../index.js").TreeViewItemId) => import("../../index.js").TreeViewItemId | null;
42
+ setIsItemDisabled: ({
43
+ itemId,
44
+ shouldBeDisabled
45
+ }: {
46
+ itemId: import("../../index.js").TreeViewItemId;
47
+ shouldBeDisabled?: boolean;
48
+ }) => void;
49
+ };
50
+ }
51
+ export declare class RichTreeViewStore<R extends TreeViewValidItem<R>, Multiple extends boolean | undefined> extends ExtendableRichTreeViewStore<R, Multiple, RichTreeViewState<R, Multiple>, RichTreeViewStoreParameters<R, Multiple>> {
52
+ constructor(parameters: RichTreeViewStoreParameters<R, Multiple>);
53
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.RichTreeViewStore = exports.ExtendableRichTreeViewStore = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _labelEditing = require("../plugins/labelEditing");
10
+ var _MinimalTreeViewStore = require("../MinimalTreeViewStore");
11
+ var _RichTreeViewStore = require("./RichTreeViewStore.utils");
12
+ class ExtendableRichTreeViewStore extends _MinimalTreeViewStore.MinimalTreeViewStore {
13
+ labelEditing = new _labelEditing.TreeViewLabelEditingPlugin(this);
14
+
15
+ /**
16
+ * Mapper of the RichTreeViewStore.
17
+ * Can be used by classes extending the RichTreeViewStore to create their own mapper.
18
+ */
19
+ static rawMapper = _RichTreeViewStore.parametersToStateMapper;
20
+ buildPublicAPI() {
21
+ return (0, _extends2.default)({}, super.buildPublicAPI(), this.labelEditing.buildPublicAPI());
22
+ }
23
+ }
24
+ exports.ExtendableRichTreeViewStore = ExtendableRichTreeViewStore;
25
+ class RichTreeViewStore extends ExtendableRichTreeViewStore {
26
+ constructor(parameters) {
27
+ super(parameters, 'RichTreeView', _RichTreeViewStore.parametersToStateMapper);
28
+ }
29
+ }
30
+ exports.RichTreeViewStore = RichTreeViewStore;
@@ -0,0 +1,34 @@
1
+ import { TreeViewItemId, TreeViewValidItem } from "../../models/index.js";
2
+ import { MinimalTreeViewParameters, MinimalTreeViewState } from "../MinimalTreeViewStore/index.js";
3
+ import { RichTreeViewLazyLoadedItemsStatus } from "../plugins/lazyLoading/index.js";
4
+ export interface RichTreeViewState<R extends TreeViewValidItem<R>, Multiple extends boolean | undefined> extends MinimalTreeViewState<R, Multiple> {
5
+ /**
6
+ * Determine if a given item can be edited.
7
+ */
8
+ isItemEditable: ((item: any) => boolean) | boolean;
9
+ /**
10
+ * The id of the item currently being edited.
11
+ */
12
+ editedItemId: string | null;
13
+ /**
14
+ * The status of the items loaded using lazy loading.
15
+ * Is null if lazy loading is not enabled.
16
+ */
17
+ lazyLoadedItems: RichTreeViewLazyLoadedItemsStatus | null;
18
+ }
19
+ export interface RichTreeViewStoreParameters<R extends TreeViewValidItem<R>, Multiple extends boolean | undefined> extends MinimalTreeViewParameters<R, Multiple> {
20
+ /**
21
+ * Callback fired when the label of an item changes.
22
+ * @param {TreeViewItemId} itemId The id of the item that was edited.
23
+ * @param {string} newLabel The new label of the items.
24
+ */
25
+ onItemLabelChange?: (itemId: TreeViewItemId, newLabel: string) => void;
26
+ /**
27
+ * Determine if a given item can be edited.
28
+ * @template R
29
+ * @param {R} item The item to check.
30
+ * @returns {boolean} `true` if the item can be edited.
31
+ * @default () => false
32
+ */
33
+ isItemEditable?: boolean | ((item: R) => boolean);
34
+ }
@@ -0,0 +1,3 @@
1
+ import { TreeViewParametersToStateMapper } from "../MinimalTreeViewStore/index.js";
2
+ import { RichTreeViewStoreParameters, RichTreeViewState } from "./RichTreeViewStore.types.js";
3
+ export declare const parametersToStateMapper: TreeViewParametersToStateMapper<any, any, RichTreeViewState<any, any>, RichTreeViewStoreParameters<any, any>>;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.parametersToStateMapper = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ const deriveStateFromParameters = parameters => ({
10
+ isItemEditable: parameters.isItemEditable ?? false
11
+ });
12
+ const parametersToStateMapper = exports.parametersToStateMapper = {
13
+ getInitialState: (minimalInitialState, parameters) => (0, _extends2.default)({}, minimalInitialState, deriveStateFromParameters(parameters), {
14
+ editedItemId: null,
15
+ lazyLoadedItems: null
16
+ }),
17
+ updateStateFromParameters: (newMinimalState, parameters) => {
18
+ const newState = (0, _extends2.default)({}, newMinimalState, deriveStateFromParameters(parameters));
19
+ return newState;
20
+ },
21
+ shouldIgnoreItemsStateUpdate: () => false
22
+ };
@@ -0,0 +1,3 @@
1
+ export * from "./RichTreeViewStore.js";
2
+ export * from "./RichTreeViewStore.types.js";
3
+ export * from "./RichTreeViewStore.utils.js";
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _RichTreeViewStore = require("./RichTreeViewStore");
7
+ Object.keys(_RichTreeViewStore).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _RichTreeViewStore[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _RichTreeViewStore[key];
14
+ }
15
+ });
16
+ });
17
+ var _RichTreeViewStore2 = require("./RichTreeViewStore.types");
18
+ Object.keys(_RichTreeViewStore2).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _RichTreeViewStore2[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function () {
24
+ return _RichTreeViewStore2[key];
25
+ }
26
+ });
27
+ });
28
+ var _RichTreeViewStore3 = require("./RichTreeViewStore.utils");
29
+ Object.keys(_RichTreeViewStore3).forEach(function (key) {
30
+ if (key === "default" || key === "__esModule") return;
31
+ if (key in exports && exports[key] === _RichTreeViewStore3[key]) return;
32
+ Object.defineProperty(exports, key, {
33
+ enumerable: true,
34
+ get: function () {
35
+ return _RichTreeViewStore3[key];
36
+ }
37
+ });
38
+ });
@@ -0,0 +1,8 @@
1
+ import { MinimalTreeViewStore } from "../MinimalTreeViewStore/index.js";
2
+ import { InnerSimpleTreeViewParameters, SimpleTreeViewItem, SimpleTreeViewStoreParameters, SimpleTreeViewState } from "./SimpleTreeViewStore.types.js";
3
+ import { TreeViewJSXItemsPlugin } from "../plugins/jsxItems/index.js";
4
+ export declare class SimpleTreeViewStore<Multiple extends boolean | undefined> extends MinimalTreeViewStore<SimpleTreeViewItem, Multiple, SimpleTreeViewState<Multiple>, InnerSimpleTreeViewParameters<Multiple>> {
5
+ jsxItems: TreeViewJSXItemsPlugin;
6
+ constructor(parameters: SimpleTreeViewStoreParameters<Multiple>);
7
+ updateStateFromParameters(parameters: SimpleTreeViewStoreParameters<Multiple>): void;
8
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.SimpleTreeViewStore = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _empty = require("@base-ui/utils/empty");
10
+ var _MinimalTreeViewStore = require("../MinimalTreeViewStore");
11
+ var _jsxItems = require("../plugins/jsxItems");
12
+ var _SimpleTreeViewStore = require("./SimpleTreeViewStore.utils");
13
+ class SimpleTreeViewStore extends _MinimalTreeViewStore.MinimalTreeViewStore {
14
+ jsxItems = new _jsxItems.TreeViewJSXItemsPlugin(this);
15
+ constructor(parameters) {
16
+ super((0, _extends2.default)({}, parameters, {
17
+ items: _empty.EMPTY_ARRAY
18
+ }), 'SimpleTreeView', _SimpleTreeViewStore.parametersToStateMapper);
19
+ }
20
+ updateStateFromParameters(parameters) {
21
+ super.updateStateFromParameters((0, _extends2.default)({}, parameters, {
22
+ items: _empty.EMPTY_ARRAY
23
+ }));
24
+ }
25
+ }
26
+ exports.SimpleTreeViewStore = SimpleTreeViewStore;
@@ -0,0 +1,9 @@
1
+ import { MinimalTreeViewParameters, MinimalTreeViewState } from "../MinimalTreeViewStore/index.js";
2
+ export interface SimpleTreeViewState<Multiple extends boolean | undefined> extends MinimalTreeViewState<SimpleTreeViewItem, Multiple> {}
3
+ export interface InnerSimpleTreeViewParameters<Multiple extends boolean | undefined> extends MinimalTreeViewParameters<SimpleTreeViewItem, Multiple> {}
4
+ export interface SimpleTreeViewStoreParameters<Multiple extends boolean | undefined> extends Omit<InnerSimpleTreeViewParameters<Multiple>, 'items' | 'isItemDisabled' | 'isItemSelectionDisabled' | 'getItemLabel' | 'getItemChildren' | 'getItemId'> {}
5
+ export interface SimpleTreeViewItem {
6
+ id: string;
7
+ label: string;
8
+ children?: SimpleTreeViewItem[];
9
+ }
@@ -0,0 +1,3 @@
1
+ import { TreeViewParametersToStateMapper } from "../MinimalTreeViewStore/index.js";
2
+ import { InnerSimpleTreeViewParameters, SimpleTreeViewState } from "./SimpleTreeViewStore.types.js";
3
+ export declare const parametersToStateMapper: TreeViewParametersToStateMapper<any, any, SimpleTreeViewState<any>, InnerSimpleTreeViewParameters<any>>;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.parametersToStateMapper = void 0;
7
+ const parametersToStateMapper = exports.parametersToStateMapper = {
8
+ getInitialState: minimalInitialState => minimalInitialState,
9
+ updateStateFromParameters: newMinimalState => newMinimalState,
10
+ shouldIgnoreItemsStateUpdate: () => true
11
+ };
@@ -0,0 +1,2 @@
1
+ export * from "./SimpleTreeViewStore.js";
2
+ export * from "./SimpleTreeViewStore.types.js";
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _SimpleTreeViewStore = require("./SimpleTreeViewStore");
7
+ Object.keys(_SimpleTreeViewStore).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _SimpleTreeViewStore[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _SimpleTreeViewStore[key];
14
+ }
15
+ });
16
+ });
17
+ var _SimpleTreeViewStore2 = require("./SimpleTreeViewStore.types");
18
+ Object.keys(_SimpleTreeViewStore2).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _SimpleTreeViewStore2[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function () {
24
+ return _SimpleTreeViewStore2[key];
25
+ }
26
+ });
27
+ });
@@ -1,5 +1,4 @@
1
1
  import * as React from 'react';
2
2
  import { TreeViewItemId } from "../../models/index.js";
3
- import { TreeViewState } from "../models/index.js";
4
- import type { UseTreeViewItemsSignature } from "../plugins/useTreeViewItems/index.js";
5
- export declare const TreeViewItemDepthContext: React.Context<number | ((state: TreeViewState<[UseTreeViewItemsSignature]>, itemId: TreeViewItemId) => number)>;
3
+ import { MinimalTreeViewState } from "../MinimalTreeViewStore/index.js";
4
+ export declare const TreeViewItemDepthContext: React.Context<number | ((state: MinimalTreeViewState<any, any>, itemId: TreeViewItemId) => number)>;
@@ -12,7 +12,7 @@ var React = _interopRequireWildcard(require("react"));
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
  var _TreeViewContext = require("./TreeViewContext");
14
14
  var _utils = require("../utils/utils");
15
- var _useTreeViewItems = require("../plugins/useTreeViewItems/useTreeViewItems.selectors");
15
+ var _selectors = require("../plugins/items/selectors");
16
16
  var _jsxRuntime = require("react/jsx-runtime");
17
17
  const TreeViewChildrenItemContext = exports.TreeViewChildrenItemContext = /*#__PURE__*/React.createContext(null);
18
18
  if (process.env.NODE_ENV !== "production") TreeViewChildrenItemContext.displayName = "TreeViewChildrenItemContext";
@@ -23,7 +23,6 @@ function TreeViewChildrenItemProvider(props) {
23
23
  idAttribute
24
24
  } = props;
25
25
  const {
26
- instance,
27
26
  store,
28
27
  rootRef
29
28
  } = (0, _TreeViewContext.useTreeViewContext)();
@@ -32,7 +31,7 @@ function TreeViewChildrenItemProvider(props) {
32
31
  if (!rootRef.current) {
33
32
  return;
34
33
  }
35
- const previousChildrenIds = _useTreeViewItems.itemsSelectors.itemOrderedChildrenIds(store.state, itemId ?? null) ?? [];
34
+ const previousChildrenIds = _selectors.itemsSelectors.itemOrderedChildrenIds(store.state, itemId ?? null) ?? [];
36
35
  const escapedIdAttr = (0, _utils.escapeOperandAttributeSelector)(idAttribute ?? rootRef.current.id);
37
36
 
38
37
  // If collapsed, skip childrenIds update prevents clearing the parent's indeterminate state after opening a sibling.
@@ -46,7 +45,7 @@ function TreeViewChildrenItemProvider(props) {
46
45
  const childrenIds = Array.from(childrenElements).map(child => childrenIdAttrToIdRef.current.get(child.id));
47
46
  const hasChanged = childrenIds.length !== previousChildrenIds.length || childrenIds.some((childId, index) => childId !== previousChildrenIds[index]);
48
47
  if (hasChanged) {
49
- instance.setJSXItemsOrderedChildrenIds(itemId ?? null, childrenIds);
48
+ store.jsxItems.setJSXItemsOrderedChildrenIds(itemId ?? null, childrenIds);
50
49
  }
51
50
  });
52
51
  const value = React.useMemo(() => ({
@@ -1,8 +1,8 @@
1
1
  import * as React from 'react';
2
- import { TreeViewAnyPluginSignature } from "../models/index.js";
2
+ import { TreeViewAnyStore } from "../models/index.js";
3
3
  import { TreeViewContextValue } from "./TreeViewProvider.types.js";
4
4
  /**
5
5
  * @ignore - internal component.
6
6
  */
7
- export declare const TreeViewContext: React.Context<TreeViewContextValue<any, []> | null>;
8
- export declare const useTreeViewContext: <TSignatures extends readonly TreeViewAnyPluginSignature[], TOptionalSignatures extends readonly TreeViewAnyPluginSignature[] = []>() => TreeViewContextValue<TSignatures, TOptionalSignatures>;
7
+ export declare const TreeViewContext: React.Context<TreeViewContextValue<any> | null>;
8
+ export declare const useTreeViewContext: <TStore extends TreeViewAnyStore>() => TreeViewContextValue<TStore>;
@@ -1,8 +1,8 @@
1
1
  import { TreeViewProviderProps } from "./TreeViewProvider.types.js";
2
- import { TreeViewAnyPluginSignature } from "../models/index.js";
2
+ import { TreeViewAnyStore } from "../models/index.js";
3
3
  /**
4
4
  * Sets up the contexts for the underlying Tree Item components.
5
5
  *
6
6
  * @ignore - do not document.
7
7
  */
8
- export declare function TreeViewProvider<TSignatures extends readonly TreeViewAnyPluginSignature[]>(props: TreeViewProviderProps<TSignatures>): import("react/jsx-runtime").JSX.Element;
8
+ export declare function TreeViewProvider<TStore extends TreeViewAnyStore>(props: TreeViewProviderProps<TStore>): import("react/jsx-runtime").JSX.Element;
@@ -6,11 +6,11 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.TreeViewProvider = TreeViewProvider;
8
8
  var React = _interopRequireWildcard(require("react"));
9
+ var _empty = require("@base-ui/utils/empty");
9
10
  var _TreeViewContext = require("./TreeViewContext");
10
11
  var _TreeViewStyleContext = require("./TreeViewStyleContext");
12
+ var _useTreeViewBuildContext = require("./useTreeViewBuildContext");
11
13
  var _jsxRuntime = require("react/jsx-runtime");
12
- const EMPTY_OBJECT = {};
13
-
14
14
  /**
15
15
  * Sets up the contexts for the underlying Tree Item components.
16
16
  *
@@ -18,12 +18,19 @@ const EMPTY_OBJECT = {};
18
18
  */
19
19
  function TreeViewProvider(props) {
20
20
  const {
21
- contextValue,
22
- classes = EMPTY_OBJECT,
23
- slots = EMPTY_OBJECT,
24
- slotProps = EMPTY_OBJECT,
21
+ store,
22
+ apiRef,
23
+ rootRef,
24
+ classes = _empty.EMPTY_OBJECT,
25
+ slots = _empty.EMPTY_OBJECT,
26
+ slotProps = _empty.EMPTY_OBJECT,
25
27
  children
26
28
  } = props;
29
+ const contextValue = (0, _useTreeViewBuildContext.useTreeViewBuildContext)({
30
+ store,
31
+ apiRef,
32
+ rootRef
33
+ });
27
34
  const styleContextValue = React.useMemo(() => ({
28
35
  classes,
29
36
  slots: {
@@ -41,9 +48,7 @@ function TreeViewProvider(props) {
41
48
  value: contextValue,
42
49
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TreeViewStyleContext.TreeViewStyleContext.Provider, {
43
50
  value: styleContextValue,
44
- children: contextValue.wrapRoot({
45
- children
46
- })
51
+ children: children
47
52
  })
48
53
  });
49
54
  }
@@ -1,20 +1,18 @@
1
1
  import * as React from 'react';
2
- import { TreeItemWrapper, TreeRootWrapper, TreeViewAnyPluginSignature, TreeViewInstance, TreeViewItemPluginResponse, TreeViewPublicAPI, TreeViewReadonlyStore } from "../models/index.js";
2
+ import { TreeItemWrapper, TreeViewItemPluginResponse, TreeViewPublicAPI, TreeViewAnyStore } from "../models/index.js";
3
3
  import type { TreeItemProps } from "../../TreeItem/TreeItem.types.js";
4
4
  import { TreeViewClasses, TreeViewSlotProps, TreeViewSlots } from "./TreeViewStyleContext.js";
5
- import { TreeViewCorePluginSignatures } from "../corePlugins/index.js";
5
+ import { UseTreeViewBuildContextParameters } from "./useTreeViewBuildContext.js";
6
6
  export type TreeViewItemPluginsRunner = (props: TreeItemProps) => Required<TreeViewItemPluginResponse>;
7
- export interface TreeViewContextValue<TSignatures extends readonly TreeViewAnyPluginSignature[], TOptionalSignatures extends readonly TreeViewAnyPluginSignature[] = []> {
8
- instance: TreeViewInstance<TSignatures, TOptionalSignatures>;
9
- publicAPI: TreeViewPublicAPI<TSignatures, TOptionalSignatures>;
10
- store: TreeViewReadonlyStore<readonly [...TreeViewCorePluginSignatures, ...TSignatures]>;
7
+ export type TreeViewStoreInContext<TStore extends TreeViewAnyStore> = Omit<TStore, 'setState' | 'update' | 'set' | 'updateStateFromParameters' | 'disposeEffect' | 'registerStoreEffect' | 'itemPluginManager' | 'parameters'>;
8
+ export interface TreeViewContextValue<TStore extends TreeViewAnyStore> {
9
+ publicAPI: TreeViewPublicAPI<TStore>;
10
+ store: TreeViewStoreInContext<TStore>;
11
11
  rootRef: React.RefObject<HTMLUListElement | null>;
12
- wrapItem: TreeItemWrapper<TSignatures>;
13
- wrapRoot: TreeRootWrapper;
12
+ wrapItem: TreeItemWrapper<TStore>;
14
13
  runItemPlugins: TreeViewItemPluginsRunner;
15
14
  }
16
- export interface TreeViewProviderProps<TSignatures extends readonly TreeViewAnyPluginSignature[]> {
17
- contextValue: TreeViewContextValue<TSignatures>;
15
+ export interface TreeViewProviderProps<TStore extends TreeViewAnyStore> extends UseTreeViewBuildContextParameters<TStore> {
18
16
  children: React.ReactNode;
19
17
  classes: Partial<TreeViewClasses> | undefined;
20
18
  slots: TreeViewSlots | undefined;
@@ -1,3 +1,3 @@
1
1
  export { TreeViewProvider } from "./TreeViewProvider.js";
2
2
  export { useTreeViewContext } from "./TreeViewContext.js";
3
- export type { TreeViewProviderProps, TreeViewContextValue, TreeViewItemPluginsRunner } from "./TreeViewProvider.types.js";
3
+ export type { TreeViewProviderProps, TreeViewContextValue, TreeViewItemPluginsRunner, TreeViewStoreInContext } from "./TreeViewProvider.types.js";