@mui/x-tree-view 8.0.0-alpha.11 → 8.0.0-alpha.13
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.
- package/CHANGELOG.md +460 -1
- package/RichTreeView/RichTreeView.d.ts +3 -3
- package/RichTreeView/RichTreeView.js +74 -68
- package/RichTreeView/RichTreeView.plugins.d.ts +9 -10
- package/RichTreeView/RichTreeView.plugins.js +14 -8
- package/RichTreeView/RichTreeView.types.d.ts +40 -40
- package/RichTreeView/RichTreeView.types.js +5 -1
- package/RichTreeView/index.d.ts +5 -5
- package/RichTreeView/index.js +39 -3
- package/RichTreeView/richTreeViewClasses.d.ts +3 -3
- package/RichTreeView/richTreeViewClasses.js +13 -5
- package/SimpleTreeView/SimpleTreeView.d.ts +4 -4
- package/SimpleTreeView/SimpleTreeView.js +67 -61
- package/SimpleTreeView/SimpleTreeView.plugins.d.ts +8 -9
- package/SimpleTreeView/SimpleTreeView.plugins.js +14 -8
- package/SimpleTreeView/SimpleTreeView.types.d.ts +41 -41
- package/SimpleTreeView/SimpleTreeView.types.js +5 -1
- package/SimpleTreeView/index.d.ts +3 -3
- package/SimpleTreeView/index.js +27 -3
- package/SimpleTreeView/simpleTreeViewClasses.d.ts +3 -3
- package/SimpleTreeView/simpleTreeViewClasses.js +13 -5
- package/TreeItem/TreeItem.d.ts +7 -7
- package/TreeItem/TreeItem.js +78 -71
- package/TreeItem/TreeItem.types.d.ts +83 -84
- package/TreeItem/TreeItem.types.js +5 -1
- package/TreeItem/index.d.ts +2 -2
- package/TreeItem/index.js +69 -2
- package/TreeItem/treeItemClasses.d.ts +29 -29
- package/TreeItem/treeItemClasses.js +13 -5
- package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.d.ts +3 -3
- package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.js +21 -15
- package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.d.ts +4 -4
- package/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.js +5 -1
- package/TreeItemDragAndDropOverlay/index.d.ts +2 -2
- package/TreeItemDragAndDropOverlay/index.js +12 -1
- package/TreeItemIcon/TreeItemIcon.d.ts +3 -3
- package/TreeItemIcon/TreeItemIcon.js +33 -27
- package/TreeItemIcon/TreeItemIcon.types.d.ts +33 -33
- package/TreeItemIcon/TreeItemIcon.types.js +5 -1
- package/TreeItemIcon/index.d.ts +2 -2
- package/TreeItemIcon/index.js +12 -1
- package/TreeItemLabelInput/TreeItemLabelInput.d.ts +1 -1
- package/TreeItemLabelInput/TreeItemLabelInput.js +11 -6
- package/TreeItemLabelInput/TreeItemLabelInput.types.d.ts +12 -12
- package/TreeItemLabelInput/TreeItemLabelInput.types.js +5 -1
- package/TreeItemLabelInput/index.d.ts +2 -2
- package/TreeItemLabelInput/index.js +12 -1
- package/TreeItemProvider/TreeItemProvider.d.ts +3 -3
- package/TreeItemProvider/TreeItemProvider.js +22 -16
- package/TreeItemProvider/TreeItemProvider.types.d.ts +5 -5
- package/TreeItemProvider/TreeItemProvider.types.js +5 -1
- package/TreeItemProvider/index.d.ts +2 -2
- package/TreeItemProvider/index.js +12 -1
- package/esm/RichTreeView/RichTreeView.d.ts +18 -0
- package/{node → esm}/RichTreeView/RichTreeView.js +68 -74
- package/esm/RichTreeView/RichTreeView.plugins.d.ts +13 -0
- package/esm/RichTreeView/RichTreeView.plugins.js +10 -0
- package/esm/RichTreeView/RichTreeView.types.d.ts +52 -0
- package/esm/RichTreeView/RichTreeView.types.js +1 -0
- package/esm/RichTreeView/index.d.ts +5 -0
- package/esm/RichTreeView/index.js +3 -0
- package/esm/RichTreeView/richTreeViewClasses.d.ts +7 -0
- package/esm/RichTreeView/richTreeViewClasses.js +6 -0
- package/esm/SimpleTreeView/SimpleTreeView.d.ts +20 -0
- package/{node → esm}/SimpleTreeView/SimpleTreeView.js +61 -67
- package/esm/SimpleTreeView/SimpleTreeView.plugins.d.ts +12 -0
- package/esm/SimpleTreeView/SimpleTreeView.plugins.js +10 -0
- package/esm/SimpleTreeView/SimpleTreeView.types.d.ts +51 -0
- package/esm/SimpleTreeView/SimpleTreeView.types.js +1 -0
- package/esm/SimpleTreeView/index.d.ts +3 -0
- package/esm/SimpleTreeView/index.js +3 -0
- package/esm/SimpleTreeView/simpleTreeViewClasses.d.ts +7 -0
- package/esm/SimpleTreeView/simpleTreeViewClasses.js +6 -0
- package/esm/TreeItem/TreeItem.d.ts +31 -0
- package/{node → esm}/TreeItem/TreeItem.js +71 -78
- package/esm/TreeItem/TreeItem.types.d.ts +93 -0
- package/esm/TreeItem/TreeItem.types.js +1 -0
- package/esm/TreeItem/index.d.ts +3 -0
- package/esm/TreeItem/index.js +2 -0
- package/esm/TreeItem/treeItemClasses.d.ts +33 -0
- package/esm/TreeItem/treeItemClasses.js +6 -0
- package/esm/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.d.ts +7 -0
- package/{node → esm}/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.js +15 -21
- package/esm/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.d.ts +6 -0
- package/esm/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.js +1 -0
- package/esm/TreeItemDragAndDropOverlay/index.d.ts +2 -0
- package/esm/TreeItemDragAndDropOverlay/index.js +1 -0
- package/esm/TreeItemIcon/TreeItemIcon.d.ts +7 -0
- package/esm/TreeItemIcon/TreeItemIcon.js +72 -0
- package/esm/TreeItemIcon/TreeItemIcon.types.d.ts +40 -0
- package/esm/TreeItemIcon/TreeItemIcon.types.js +1 -0
- package/esm/TreeItemIcon/index.d.ts +2 -0
- package/esm/TreeItemIcon/index.js +1 -0
- package/esm/TreeItemLabelInput/TreeItemLabelInput.d.ts +5 -0
- package/esm/TreeItemLabelInput/TreeItemLabelInput.js +24 -0
- package/esm/TreeItemLabelInput/TreeItemLabelInput.types.d.ts +14 -0
- package/esm/TreeItemLabelInput/TreeItemLabelInput.types.js +1 -0
- package/esm/TreeItemLabelInput/index.d.ts +2 -0
- package/esm/TreeItemLabelInput/index.js +1 -0
- package/esm/TreeItemProvider/TreeItemProvider.d.ts +7 -0
- package/esm/TreeItemProvider/TreeItemProvider.js +45 -0
- package/esm/TreeItemProvider/TreeItemProvider.types.d.ts +7 -0
- package/esm/TreeItemProvider/TreeItemProvider.types.js +1 -0
- package/esm/TreeItemProvider/index.d.ts +2 -0
- package/esm/TreeItemProvider/index.js +1 -0
- package/esm/hooks/index.d.ts +3 -0
- package/esm/hooks/index.js +3 -0
- package/esm/hooks/useTreeItemModel.d.ts +2 -0
- package/esm/hooks/useTreeItemModel.js +11 -0
- package/esm/hooks/useTreeItemUtils/index.d.ts +1 -0
- package/esm/hooks/useTreeItemUtils/index.js +1 -0
- package/esm/hooks/useTreeItemUtils/useTreeItemUtils.d.ts +41 -0
- package/{node → esm}/hooks/useTreeItemUtils/useTreeItemUtils.js +26 -32
- package/esm/hooks/useTreeViewApiRef.d.ts +7 -0
- package/esm/hooks/useTreeViewApiRef.js +7 -0
- package/esm/icons/icons.d.ts +6 -0
- package/esm/icons/icons.js +9 -0
- package/esm/icons/index.d.ts +1 -0
- package/esm/icons/index.js +1 -0
- package/esm/index.d.ts +12 -0
- package/esm/index.js +22 -0
- package/esm/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.d.ts +5 -0
- package/esm/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.js +5 -0
- package/esm/internals/TreeViewItemDepthContext/index.d.ts +1 -0
- package/esm/internals/TreeViewItemDepthContext/index.js +1 -0
- package/esm/internals/TreeViewProvider/TreeViewChildrenItemProvider.d.ts +17 -0
- package/{node → esm}/internals/TreeViewProvider/TreeViewChildrenItemProvider.js +14 -23
- package/esm/internals/TreeViewProvider/TreeViewContext.d.ts +6 -0
- package/esm/internals/TreeViewProvider/TreeViewContext.js +8 -0
- package/esm/internals/TreeViewProvider/TreeViewProvider.d.ts +9 -0
- package/esm/internals/TreeViewProvider/TreeViewProvider.js +20 -0
- package/esm/internals/TreeViewProvider/TreeViewProvider.types.d.ts +19 -0
- package/esm/internals/TreeViewProvider/TreeViewProvider.types.js +1 -0
- package/esm/internals/TreeViewProvider/index.d.ts +3 -0
- package/esm/internals/TreeViewProvider/index.js +2 -0
- package/esm/internals/TreeViewProvider/useTreeViewContext.d.ts +3 -0
- package/esm/internals/TreeViewProvider/useTreeViewContext.js +9 -0
- package/esm/internals/components/RichTreeViewItems.d.ts +32 -0
- package/esm/internals/components/RichTreeViewItems.js +68 -0
- package/esm/internals/corePlugins/corePlugins.d.ts +9 -0
- package/esm/internals/corePlugins/corePlugins.js +8 -0
- package/esm/internals/corePlugins/index.d.ts +2 -0
- package/esm/internals/corePlugins/index.js +1 -0
- package/esm/internals/corePlugins/useTreeViewId/index.d.ts +2 -0
- package/esm/internals/corePlugins/useTreeViewId/index.js +1 -0
- package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.d.ts +3 -0
- package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.js +39 -0
- package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.d.ts +36 -0
- package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.js +9 -0
- package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.types.d.ts +20 -0
- package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.types.js +1 -0
- package/esm/internals/corePlugins/useTreeViewId/useTreeViewId.utils.d.ts +21 -0
- package/{node → esm}/internals/corePlugins/useTreeViewId/useTreeViewId.utils.js +3 -11
- package/esm/internals/corePlugins/useTreeViewInstanceEvents/index.d.ts +2 -0
- package/esm/internals/corePlugins/useTreeViewInstanceEvents/index.js +1 -0
- package/esm/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.d.ts +3 -0
- package/{node → esm}/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +4 -12
- package/esm/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.d.ts +22 -0
- package/esm/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.js +1 -0
- package/esm/internals/corePlugins/useTreeViewOptionalPlugins/index.d.ts +2 -0
- package/esm/internals/corePlugins/useTreeViewOptionalPlugins/index.js +1 -0
- package/esm/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.d.ts +3 -0
- package/esm/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.js +12 -0
- package/esm/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.d.ts +8 -0
- package/esm/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.js +1 -0
- package/esm/internals/hooks/useInstanceEventHandler.d.ts +15 -0
- package/{node → esm}/internals/hooks/useInstanceEventHandler.js +7 -16
- package/esm/internals/hooks/useLazyRef.d.ts +1 -0
- package/esm/internals/hooks/useLazyRef.js +1 -0
- package/esm/internals/hooks/useOnMount.d.ts +1 -0
- package/esm/internals/hooks/useOnMount.js +1 -0
- package/esm/internals/hooks/useSelector.d.ts +4 -0
- package/esm/internals/hooks/useSelector.js +9 -0
- package/esm/internals/hooks/useTimeout.d.ts +1 -0
- package/esm/internals/hooks/useTimeout.js +1 -0
- package/esm/internals/index.d.ts +28 -0
- package/esm/internals/index.js +21 -0
- package/esm/internals/models/events.d.ts +9 -0
- package/esm/internals/models/events.js +1 -0
- package/esm/internals/models/helpers.d.ts +7 -0
- package/esm/internals/models/helpers.js +1 -0
- package/esm/internals/models/index.d.ts +4 -0
- package/esm/internals/models/index.js +4 -0
- package/esm/internals/models/itemPlugin.d.ts +43 -0
- package/esm/internals/models/itemPlugin.js +1 -0
- package/esm/internals/models/plugin.d.ts +151 -0
- package/esm/internals/models/plugin.js +1 -0
- package/esm/internals/models/treeView.d.ts +32 -0
- package/esm/internals/models/treeView.js +1 -0
- package/esm/internals/plugins/useTreeViewExpansion/index.d.ts +2 -0
- package/esm/internals/plugins/useTreeViewExpansion/index.js +1 -0
- package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.d.ts +3 -0
- package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +111 -0
- package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +180 -0
- package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.js +24 -0
- package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +78 -0
- package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.js +1 -0
- package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.d.ts +7 -0
- package/esm/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.js +19 -0
- package/esm/internals/plugins/useTreeViewFocus/index.d.ts +2 -0
- package/esm/internals/plugins/useTreeViewFocus/index.js +1 -0
- package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.d.ts +3 -0
- package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +135 -0
- package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.d.ts +182 -0
- package/{node → esm}/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.js +5 -11
- package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +45 -0
- package/esm/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.js +1 -0
- package/esm/internals/plugins/useTreeViewIcons/index.d.ts +2 -0
- package/esm/internals/plugins/useTreeViewIcons/index.js +1 -0
- package/esm/internals/plugins/useTreeViewIcons/useTreeViewIcons.d.ts +3 -0
- package/{node → esm}/internals/plugins/useTreeViewIcons/useTreeViewIcons.js +2 -10
- package/esm/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.d.ts +42 -0
- package/esm/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.js +1 -0
- package/esm/internals/plugins/useTreeViewItems/index.d.ts +3 -0
- package/esm/internals/plugins/useTreeViewItems/index.js +2 -0
- package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.d.ts +3 -0
- package/{node → esm}/internals/plugins/useTreeViewItems/useTreeViewItems.js +28 -37
- package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.d.ts +886 -0
- package/{node → esm}/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.js +12 -18
- package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.types.d.ts +156 -0
- package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.types.js +1 -0
- package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.utils.d.ts +4 -0
- package/esm/internals/plugins/useTreeViewItems/useTreeViewItems.utils.js +8 -0
- package/esm/internals/plugins/useTreeViewJSXItems/index.d.ts +2 -0
- package/esm/internals/plugins/useTreeViewJSXItems/index.js +1 -0
- package/esm/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.d.ts +3 -0
- package/esm/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +183 -0
- package/esm/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.d.ts +35 -0
- package/esm/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.js +1 -0
- package/esm/internals/plugins/useTreeViewKeyboardNavigation/index.d.ts +2 -0
- package/esm/internals/plugins/useTreeViewKeyboardNavigation/index.js +1 -0
- package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.d.ts +3 -0
- package/{node → esm}/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +31 -40
- package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +32 -0
- package/esm/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.js +1 -0
- package/esm/internals/plugins/useTreeViewLabel/index.d.ts +2 -0
- package/esm/internals/plugins/useTreeViewLabel/index.js +1 -0
- package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.d.ts +3 -0
- package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.d.ts +2 -0
- package/{node → esm}/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.js +9 -17
- package/{node → esm}/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +11 -20
- package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.d.ts +74 -0
- package/{node → esm}/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.js +4 -10
- package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.d.ts +59 -0
- package/esm/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.js +1 -0
- package/esm/internals/plugins/useTreeViewSelection/index.d.ts +2 -0
- package/esm/internals/plugins/useTreeViewSelection/index.js +1 -0
- package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.d.ts +3 -0
- package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.d.ts +2 -0
- package/{node → esm}/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.js +14 -22
- package/{node → esm}/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +30 -39
- package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.d.ts +32 -0
- package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.js +9 -0
- package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +144 -0
- package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.js +1 -0
- package/esm/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.d.ts +38 -0
- package/{node → esm}/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +16 -26
- package/esm/internals/useTreeView/extractPluginParamsFromProps.d.ts +22 -0
- package/{node → esm}/internals/useTreeView/extractPluginParamsFromProps.js +4 -12
- package/esm/internals/useTreeView/index.d.ts +1 -0
- package/esm/internals/useTreeView/index.js +1 -0
- package/esm/internals/useTreeView/useTreeView.d.ts +9 -0
- package/{node → esm}/internals/useTreeView/useTreeView.js +19 -29
- package/esm/internals/useTreeView/useTreeView.types.d.ts +23 -0
- package/esm/internals/useTreeView/useTreeView.types.js +1 -0
- package/esm/internals/useTreeView/useTreeViewBuildContext.d.ts +18 -0
- package/{node → esm}/internals/useTreeView/useTreeViewBuildContext.js +3 -11
- package/esm/internals/useTreeView/useTreeViewModels.d.ts +7 -0
- package/{node → esm}/internals/useTreeView/useTreeViewModels.js +5 -14
- package/esm/internals/useTreeView/useTreeViewPlugins.d.ts +0 -0
- package/esm/internals/useTreeView/useTreeViewPlugins.js +0 -0
- package/esm/internals/utils/TreeViewStore.d.ts +12 -0
- package/{node → esm}/internals/utils/TreeViewStore.js +2 -9
- package/esm/internals/utils/cleanupTracking/CleanupTracking.d.ts +9 -0
- package/esm/internals/utils/cleanupTracking/CleanupTracking.js +1 -0
- package/esm/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.d.ts +7 -0
- package/{node → esm}/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +2 -9
- package/esm/internals/utils/cleanupTracking/TimerBasedCleanupTracking.d.ts +9 -0
- package/{node → esm}/internals/utils/cleanupTracking/TimerBasedCleanupTracking.js +2 -9
- package/esm/internals/utils/plugins.d.ts +2 -0
- package/esm/internals/utils/plugins.js +4 -0
- package/esm/internals/utils/publishTreeViewEvent.d.ts +5 -0
- package/esm/internals/utils/publishTreeViewEvent.js +3 -0
- package/esm/internals/utils/selectors.d.ts +9 -0
- package/{node → esm}/internals/utils/selectors.js +5 -12
- package/esm/internals/utils/tree.d.ts +32 -0
- package/{node → esm}/internals/utils/tree.js +41 -55
- package/esm/internals/utils/utils.d.ts +2 -0
- package/{node → esm}/internals/utils/utils.js +2 -10
- package/esm/internals/zero-styled/index.d.ts +3 -0
- package/esm/internals/zero-styled/index.js +7 -0
- package/esm/models/events.d.ts +4 -0
- package/esm/models/events.js +1 -0
- package/esm/models/index.d.ts +3 -0
- package/esm/models/index.js +5 -0
- package/esm/models/items.d.ts +13 -0
- package/esm/models/items.js +1 -0
- package/esm/package.json +1 -0
- package/esm/themeAugmentation/components.d.ts +21 -0
- package/esm/themeAugmentation/index.d.ts +3 -0
- package/esm/themeAugmentation/index.js +0 -0
- package/esm/themeAugmentation/overrides.d.ts +16 -0
- package/esm/themeAugmentation/props.d.ts +14 -0
- package/esm/useTreeItem/index.d.ts +2 -0
- package/esm/useTreeItem/index.js +1 -0
- package/esm/useTreeItem/useTreeItem.d.ts +2 -0
- package/{node → esm}/useTreeItem/useTreeItem.js +54 -62
- package/esm/useTreeItem/useTreeItem.types.d.ts +175 -0
- package/esm/useTreeItem/useTreeItem.types.js +1 -0
- package/hooks/index.d.ts +3 -3
- package/hooks/index.js +26 -3
- package/hooks/useTreeItemModel.d.ts +2 -2
- package/hooks/useTreeItemModel.js +13 -7
- package/hooks/useTreeItemUtils/index.d.ts +1 -1
- package/hooks/useTreeItemUtils/index.js +12 -1
- package/hooks/useTreeItemUtils/useTreeItemUtils.d.ts +22 -24
- package/hooks/useTreeItemUtils/useTreeItemUtils.js +32 -26
- package/hooks/useTreeViewApiRef.d.ts +3 -3
- package/hooks/useTreeViewApiRef.js +9 -2
- package/icons/icons.d.ts +3 -3
- package/icons/icons.js +12 -5
- package/icons/index.d.ts +1 -1
- package/icons/index.js +16 -1
- package/index.d.ts +12 -12
- package/index.js +147 -15
- package/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.d.ts +3 -3
- package/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.js +9 -2
- package/internals/TreeViewItemDepthContext/index.d.ts +1 -1
- package/internals/TreeViewItemDepthContext/index.js +12 -1
- package/internals/TreeViewProvider/TreeViewChildrenItemProvider.d.ts +8 -8
- package/internals/TreeViewProvider/TreeViewChildrenItemProvider.js +23 -14
- package/internals/TreeViewProvider/TreeViewContext.d.ts +2 -2
- package/internals/TreeViewProvider/TreeViewContext.js +9 -2
- package/internals/TreeViewProvider/TreeViewProvider.d.ts +3 -3
- package/internals/TreeViewProvider/TreeViewProvider.js +12 -5
- package/internals/TreeViewProvider/TreeViewProvider.types.d.ts +13 -13
- package/internals/TreeViewProvider/TreeViewProvider.types.js +5 -1
- package/internals/TreeViewProvider/index.d.ts +3 -3
- package/internals/TreeViewProvider/index.js +19 -2
- package/internals/TreeViewProvider/useTreeViewContext.d.ts +3 -3
- package/internals/TreeViewProvider/useTreeViewContext.js +13 -5
- package/internals/components/RichTreeViewItems.d.ts +21 -21
- package/internals/components/RichTreeViewItems.js +31 -23
- package/internals/corePlugins/corePlugins.d.ts +3 -4
- package/internals/corePlugins/corePlugins.js +10 -4
- package/internals/corePlugins/index.d.ts +2 -2
- package/internals/corePlugins/index.js +12 -1
- package/internals/corePlugins/useTreeViewId/index.d.ts +2 -2
- package/internals/corePlugins/useTreeViewId/index.js +12 -1
- package/internals/corePlugins/useTreeViewId/useTreeViewId.d.ts +3 -3
- package/internals/corePlugins/useTreeViewId/useTreeViewId.js +19 -10
- package/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.d.ts +25 -25
- package/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.js +8 -2
- package/internals/corePlugins/useTreeViewId/useTreeViewId.types.d.ts +14 -14
- package/internals/corePlugins/useTreeViewId/useTreeViewId.types.js +5 -1
- package/internals/corePlugins/useTreeViewId/useTreeViewId.utils.d.ts +10 -6
- package/internals/corePlugins/useTreeViewId/useTreeViewId.utils.js +11 -3
- package/internals/corePlugins/useTreeViewInstanceEvents/index.d.ts +2 -2
- package/internals/corePlugins/useTreeViewInstanceEvents/index.js +12 -1
- package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.d.ts +2 -2
- package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.js +12 -4
- package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.d.ts +19 -19
- package/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.js +5 -1
- package/internals/corePlugins/useTreeViewOptionalPlugins/index.d.ts +2 -2
- package/internals/corePlugins/useTreeViewOptionalPlugins/index.js +12 -1
- package/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.d.ts +3 -3
- package/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.js +8 -1
- package/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.d.ts +4 -4
- package/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.js +5 -1
- package/internals/hooks/useInstanceEventHandler.d.ts +8 -8
- package/internals/hooks/useInstanceEventHandler.js +16 -7
- package/internals/hooks/useLazyRef.d.ts +1 -1
- package/internals/hooks/useLazyRef.js +13 -1
- package/internals/hooks/useOnMount.d.ts +1 -1
- package/internals/hooks/useOnMount.js +13 -1
- package/internals/hooks/useSelector.d.ts +4 -4
- package/internals/hooks/useSelector.js +15 -4
- package/internals/hooks/useTimeout.d.ts +1 -1
- package/internals/hooks/useTimeout.js +13 -1
- package/internals/index.d.ts +26 -26
- package/internals/index.js +159 -20
- package/internals/models/events.d.ts +3 -3
- package/internals/models/events.js +5 -1
- package/internals/models/helpers.d.ts +1 -1
- package/internals/models/helpers.js +5 -1
- package/internals/models/index.d.ts +4 -4
- package/internals/models/index.js +49 -4
- package/internals/models/itemPlugin.d.ts +28 -28
- package/internals/models/itemPlugin.js +5 -1
- package/internals/models/plugin.d.ts +125 -148
- package/internals/models/plugin.js +5 -1
- package/internals/models/treeView.d.ts +19 -19
- package/internals/models/treeView.js +5 -1
- package/internals/plugins/useTreeViewExpansion/index.d.ts +2 -2
- package/internals/plugins/useTreeViewExpansion/index.js +12 -1
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.d.ts +3 -3
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +33 -25
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +137 -137
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.js +11 -5
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +66 -66
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.js +5 -1
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.d.ts +6 -3
- package/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.js +11 -3
- package/internals/plugins/useTreeViewFocus/index.d.ts +2 -2
- package/internals/plugins/useTreeViewFocus/index.js +12 -1
- package/internals/plugins/useTreeViewFocus/useTreeViewFocus.d.ts +3 -3
- package/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +40 -31
- package/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.d.ts +121 -121
- package/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.js +11 -5
- package/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +32 -36
- package/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.js +5 -1
- package/internals/plugins/useTreeViewIcons/index.d.ts +2 -2
- package/internals/plugins/useTreeViewIcons/index.js +12 -1
- package/internals/plugins/useTreeViewIcons/useTreeViewIcons.d.ts +3 -3
- package/internals/plugins/useTreeViewIcons/useTreeViewIcons.js +10 -2
- package/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.d.ts +31 -32
- package/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.js +5 -1
- package/internals/plugins/useTreeViewItems/index.d.ts +3 -3
- package/internals/plugins/useTreeViewItems/index.js +25 -2
- package/internals/plugins/useTreeViewItems/useTreeViewItems.d.ts +3 -3
- package/internals/plugins/useTreeViewItems/useTreeViewItems.js +37 -28
- package/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.d.ts +684 -684
- package/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.js +18 -12
- package/internals/plugins/useTreeViewItems/useTreeViewItems.types.d.ts +131 -131
- package/internals/plugins/useTreeViewItems/useTreeViewItems.types.js +5 -1
- package/internals/plugins/useTreeViewItems/useTreeViewItems.utils.d.ts +2 -2
- package/internals/plugins/useTreeViewItems/useTreeViewItems.utils.js +10 -3
- package/internals/plugins/useTreeViewJSXItems/index.d.ts +2 -2
- package/internals/plugins/useTreeViewJSXItems/index.js +12 -1
- package/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.d.ts +3 -3
- package/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +56 -47
- package/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.d.ts +32 -34
- package/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.js +5 -1
- package/internals/plugins/useTreeViewKeyboardNavigation/index.d.ts +2 -2
- package/internals/plugins/useTreeViewKeyboardNavigation/index.js +12 -1
- package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.d.ts +3 -3
- package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.js +40 -31
- package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +26 -31
- package/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.js +5 -1
- package/internals/plugins/useTreeViewLabel/index.d.ts +2 -2
- package/internals/plugins/useTreeViewLabel/index.js +12 -1
- package/internals/plugins/useTreeViewLabel/useTreeViewLabel.d.ts +3 -3
- package/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.d.ts +2 -2
- package/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.js +17 -9
- package/internals/plugins/useTreeViewLabel/useTreeViewLabel.js +20 -11
- package/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.d.ts +49 -49
- package/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.js +10 -4
- package/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.d.ts +44 -46
- package/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.js +5 -1
- package/internals/plugins/useTreeViewSelection/index.d.ts +2 -2
- package/internals/plugins/useTreeViewSelection/index.js +12 -1
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.d.ts +3 -3
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.d.ts +2 -2
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.js +22 -14
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.js +39 -30
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.d.ts +22 -22
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.js +8 -2
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +123 -128
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.js +5 -1
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.d.ts +27 -17
- package/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.js +26 -16
- package/internals/useTreeView/extractPluginParamsFromProps.d.ts +18 -9
- package/internals/useTreeView/extractPluginParamsFromProps.js +12 -4
- package/internals/useTreeView/index.d.ts +1 -1
- package/internals/useTreeView/index.js +12 -1
- package/internals/useTreeView/useTreeView.d.ts +7 -3
- package/internals/useTreeView/useTreeView.js +29 -19
- package/internals/useTreeView/useTreeView.types.d.ts +13 -13
- package/internals/useTreeView/useTreeView.types.js +5 -1
- package/internals/useTreeView/useTreeViewBuildContext.d.ts +17 -11
- package/internals/useTreeView/useTreeViewBuildContext.js +11 -3
- package/internals/useTreeView/useTreeViewModels.d.ts +3 -3
- package/internals/useTreeView/useTreeViewModels.js +14 -5
- package/internals/useTreeView/useTreeViewPlugins.js +1 -0
- package/internals/utils/TreeViewStore.d.ts +7 -7
- package/internals/utils/TreeViewStore.js +9 -2
- package/internals/utils/cleanupTracking/CleanupTracking.d.ts +5 -5
- package/internals/utils/cleanupTracking/CleanupTracking.js +5 -1
- package/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.d.ts +6 -6
- package/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +9 -2
- package/internals/utils/cleanupTracking/TimerBasedCleanupTracking.d.ts +8 -8
- package/internals/utils/cleanupTracking/TimerBasedCleanupTracking.js +9 -2
- package/internals/utils/plugins.d.ts +2 -2
- package/internals/utils/plugins.js +9 -2
- package/internals/utils/publishTreeViewEvent.d.ts +4 -4
- package/internals/utils/publishTreeViewEvent.js +9 -2
- package/internals/utils/selectors.d.ts +2 -2
- package/internals/utils/selectors.js +12 -5
- package/internals/utils/tree.d.ts +2 -2
- package/internals/utils/tree.js +55 -41
- package/internals/utils/utils.d.ts +1 -1
- package/internals/utils/utils.js +10 -2
- package/internals/zero-styled/index.d.ts +1 -1
- package/internals/zero-styled/index.js +14 -4
- package/models/events.d.ts +2 -2
- package/models/events.js +5 -1
- package/models/index.d.ts +3 -3
- package/models/index.js +26 -4
- package/models/items.d.ts +6 -6
- package/models/items.js +5 -1
- package/modern/RichTreeView/RichTreeView.d.ts +18 -0
- package/modern/RichTreeView/RichTreeView.plugins.d.ts +13 -0
- package/modern/RichTreeView/RichTreeView.types.d.ts +52 -0
- package/modern/RichTreeView/index.d.ts +5 -0
- package/modern/RichTreeView/richTreeViewClasses.d.ts +7 -0
- package/modern/SimpleTreeView/SimpleTreeView.d.ts +20 -0
- package/modern/SimpleTreeView/SimpleTreeView.plugins.d.ts +12 -0
- package/modern/SimpleTreeView/SimpleTreeView.types.d.ts +51 -0
- package/modern/SimpleTreeView/index.d.ts +3 -0
- package/modern/SimpleTreeView/simpleTreeViewClasses.d.ts +7 -0
- package/modern/TreeItem/TreeItem.d.ts +31 -0
- package/modern/TreeItem/TreeItem.types.d.ts +93 -0
- package/modern/TreeItem/index.d.ts +3 -0
- package/modern/TreeItem/treeItemClasses.d.ts +33 -0
- package/modern/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.d.ts +7 -0
- package/modern/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.d.ts +6 -0
- package/modern/TreeItemDragAndDropOverlay/index.d.ts +2 -0
- package/modern/TreeItemIcon/TreeItemIcon.d.ts +7 -0
- package/modern/TreeItemIcon/TreeItemIcon.types.d.ts +40 -0
- package/modern/TreeItemIcon/index.d.ts +2 -0
- package/modern/TreeItemLabelInput/TreeItemLabelInput.d.ts +5 -0
- package/modern/TreeItemLabelInput/TreeItemLabelInput.types.d.ts +14 -0
- package/modern/TreeItemLabelInput/index.d.ts +2 -0
- package/modern/TreeItemProvider/TreeItemProvider.d.ts +7 -0
- package/modern/TreeItemProvider/TreeItemProvider.types.d.ts +7 -0
- package/modern/TreeItemProvider/index.d.ts +2 -0
- package/modern/hooks/index.d.ts +3 -0
- package/modern/hooks/useTreeItemModel.d.ts +2 -0
- package/modern/hooks/useTreeItemUtils/index.d.ts +1 -0
- package/modern/hooks/useTreeItemUtils/useTreeItemUtils.d.ts +41 -0
- package/modern/hooks/useTreeViewApiRef.d.ts +7 -0
- package/modern/icons/icons.d.ts +6 -0
- package/modern/icons/index.d.ts +1 -0
- package/modern/index.d.ts +12 -0
- package/modern/index.js +1 -1
- package/modern/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.d.ts +5 -0
- package/modern/internals/TreeViewItemDepthContext/index.d.ts +1 -0
- package/modern/internals/TreeViewProvider/TreeViewChildrenItemProvider.d.ts +17 -0
- package/modern/internals/TreeViewProvider/TreeViewContext.d.ts +6 -0
- package/modern/internals/TreeViewProvider/TreeViewProvider.d.ts +9 -0
- package/modern/internals/TreeViewProvider/TreeViewProvider.types.d.ts +19 -0
- package/modern/internals/TreeViewProvider/index.d.ts +3 -0
- package/modern/internals/TreeViewProvider/useTreeViewContext.d.ts +3 -0
- package/modern/internals/components/RichTreeViewItems.d.ts +32 -0
- package/modern/internals/corePlugins/corePlugins.d.ts +9 -0
- package/modern/internals/corePlugins/index.d.ts +2 -0
- package/modern/internals/corePlugins/useTreeViewId/index.d.ts +2 -0
- package/modern/internals/corePlugins/useTreeViewId/useTreeViewId.d.ts +3 -0
- package/modern/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.d.ts +36 -0
- package/modern/internals/corePlugins/useTreeViewId/useTreeViewId.types.d.ts +20 -0
- package/modern/internals/corePlugins/useTreeViewId/useTreeViewId.utils.d.ts +21 -0
- package/modern/internals/corePlugins/useTreeViewInstanceEvents/index.d.ts +2 -0
- package/modern/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.d.ts +3 -0
- package/modern/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.d.ts +22 -0
- package/modern/internals/corePlugins/useTreeViewOptionalPlugins/index.d.ts +2 -0
- package/modern/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.d.ts +3 -0
- package/modern/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.d.ts +8 -0
- package/modern/internals/hooks/useInstanceEventHandler.d.ts +15 -0
- package/modern/internals/hooks/useLazyRef.d.ts +1 -0
- package/modern/internals/hooks/useOnMount.d.ts +1 -0
- package/modern/internals/hooks/useSelector.d.ts +4 -0
- package/modern/internals/hooks/useSelector.js +4 -1
- package/modern/internals/hooks/useTimeout.d.ts +1 -0
- package/modern/internals/index.d.ts +28 -0
- package/modern/internals/models/events.d.ts +9 -0
- package/modern/internals/models/helpers.d.ts +7 -0
- package/modern/internals/models/index.d.ts +4 -0
- package/modern/internals/models/itemPlugin.d.ts +43 -0
- package/modern/internals/models/plugin.d.ts +151 -0
- package/modern/internals/models/treeView.d.ts +32 -0
- package/modern/internals/plugins/useTreeViewExpansion/index.d.ts +2 -0
- package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.d.ts +3 -0
- package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.d.ts +180 -0
- package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.d.ts +78 -0
- package/modern/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.d.ts +7 -0
- package/modern/internals/plugins/useTreeViewFocus/index.d.ts +2 -0
- package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.d.ts +3 -0
- package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.selectors.d.ts +182 -0
- package/modern/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.d.ts +45 -0
- package/modern/internals/plugins/useTreeViewIcons/index.d.ts +2 -0
- package/modern/internals/plugins/useTreeViewIcons/useTreeViewIcons.d.ts +3 -0
- package/modern/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.d.ts +42 -0
- package/modern/internals/plugins/useTreeViewItems/index.d.ts +3 -0
- package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.d.ts +3 -0
- package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.selectors.d.ts +886 -0
- package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.types.d.ts +156 -0
- package/modern/internals/plugins/useTreeViewItems/useTreeViewItems.utils.d.ts +4 -0
- package/modern/internals/plugins/useTreeViewJSXItems/index.d.ts +2 -0
- package/modern/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.d.ts +3 -0
- package/modern/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.d.ts +35 -0
- package/modern/internals/plugins/useTreeViewKeyboardNavigation/index.d.ts +2 -0
- package/modern/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.d.ts +3 -0
- package/modern/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.d.ts +32 -0
- package/modern/internals/plugins/useTreeViewLabel/index.d.ts +2 -0
- package/modern/internals/plugins/useTreeViewLabel/useTreeViewLabel.d.ts +3 -0
- package/modern/internals/plugins/useTreeViewLabel/useTreeViewLabel.itemPlugin.d.ts +2 -0
- package/modern/internals/plugins/useTreeViewLabel/useTreeViewLabel.selectors.d.ts +74 -0
- package/modern/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.d.ts +59 -0
- package/modern/internals/plugins/useTreeViewSelection/index.d.ts +2 -0
- package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.d.ts +3 -0
- package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.itemPlugin.d.ts +2 -0
- package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.d.ts +32 -0
- package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.d.ts +144 -0
- package/modern/internals/plugins/useTreeViewSelection/useTreeViewSelection.utils.d.ts +38 -0
- package/modern/internals/useTreeView/extractPluginParamsFromProps.d.ts +22 -0
- package/modern/internals/useTreeView/index.d.ts +1 -0
- package/modern/internals/useTreeView/useTreeView.d.ts +9 -0
- package/modern/internals/useTreeView/useTreeView.types.d.ts +23 -0
- package/modern/internals/useTreeView/useTreeViewBuildContext.d.ts +18 -0
- package/modern/internals/useTreeView/useTreeViewModels.d.ts +7 -0
- package/modern/internals/useTreeView/useTreeViewPlugins.d.ts +0 -0
- package/modern/internals/utils/TreeViewStore.d.ts +12 -0
- package/modern/internals/utils/cleanupTracking/CleanupTracking.d.ts +9 -0
- package/modern/internals/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.d.ts +7 -0
- package/modern/internals/utils/cleanupTracking/TimerBasedCleanupTracking.d.ts +9 -0
- package/modern/internals/utils/plugins.d.ts +2 -0
- package/modern/internals/utils/publishTreeViewEvent.d.ts +5 -0
- package/modern/internals/utils/selectors.d.ts +9 -0
- package/modern/internals/utils/tree.d.ts +32 -0
- package/modern/internals/utils/utils.d.ts +2 -0
- package/modern/internals/zero-styled/index.d.ts +3 -0
- package/modern/models/events.d.ts +4 -0
- package/modern/models/index.d.ts +3 -0
- package/modern/models/items.d.ts +13 -0
- package/modern/package.json +1 -0
- package/modern/themeAugmentation/components.d.ts +21 -0
- package/modern/themeAugmentation/index.d.ts +3 -0
- package/modern/themeAugmentation/overrides.d.ts +16 -0
- package/modern/themeAugmentation/props.d.ts +14 -0
- package/modern/useTreeItem/index.d.ts +2 -0
- package/modern/useTreeItem/useTreeItem.d.ts +2 -0
- package/modern/useTreeItem/useTreeItem.types.d.ts +175 -0
- package/package.json +38 -8
- package/themeAugmentation/components.d.ts +1 -3
- package/themeAugmentation/index.d.ts +1 -1
- package/themeAugmentation/index.js +1 -0
- package/themeAugmentation/overrides.d.ts +4 -5
- package/themeAugmentation/props.d.ts +4 -6
- package/tsconfig.build.tsbuildinfo +1 -0
- package/useTreeItem/index.d.ts +2 -2
- package/useTreeItem/index.js +12 -1
- package/useTreeItem/useTreeItem.d.ts +2 -2
- package/useTreeItem/useTreeItem.js +62 -54
- package/useTreeItem/useTreeItem.types.d.ts +140 -151
- package/useTreeItem/useTreeItem.types.js +5 -1
- package/RichTreeView/package.json +0 -6
- package/SimpleTreeView/package.json +0 -6
- package/TreeItem/package.json +0 -6
- package/TreeItemDragAndDropOverlay/package.json +0 -6
- package/TreeItemIcon/package.json +0 -6
- package/TreeItemLabelInput/package.json +0 -6
- package/TreeItemProvider/package.json +0 -6
- package/hooks/package.json +0 -6
- package/icons/package.json +0 -6
- package/internals/package.json +0 -6
- package/models/package.json +0 -6
- package/node/RichTreeView/RichTreeView.plugins.js +0 -16
- package/node/RichTreeView/RichTreeView.types.js +0 -5
- package/node/RichTreeView/index.js +0 -39
- package/node/RichTreeView/richTreeViewClasses.js +0 -14
- package/node/SimpleTreeView/SimpleTreeView.plugins.js +0 -16
- package/node/SimpleTreeView/SimpleTreeView.types.js +0 -5
- package/node/SimpleTreeView/index.js +0 -27
- package/node/SimpleTreeView/simpleTreeViewClasses.js +0 -14
- package/node/TreeItem/TreeItem.types.js +0 -5
- package/node/TreeItem/index.js +0 -69
- package/node/TreeItem/treeItemClasses.js +0 -14
- package/node/TreeItemDragAndDropOverlay/TreeItemDragAndDropOverlay.types.js +0 -5
- package/node/TreeItemDragAndDropOverlay/index.js +0 -12
- package/node/TreeItemIcon/TreeItemIcon.js +0 -78
- package/node/TreeItemIcon/TreeItemIcon.types.js +0 -5
- package/node/TreeItemIcon/index.js +0 -12
- package/node/TreeItemLabelInput/TreeItemLabelInput.js +0 -29
- package/node/TreeItemLabelInput/TreeItemLabelInput.types.js +0 -5
- package/node/TreeItemLabelInput/index.js +0 -12
- package/node/TreeItemProvider/TreeItemProvider.js +0 -51
- package/node/TreeItemProvider/TreeItemProvider.types.js +0 -5
- package/node/TreeItemProvider/index.js +0 -12
- package/node/hooks/index.js +0 -26
- package/node/hooks/useTreeItemModel.js +0 -17
- package/node/hooks/useTreeItemUtils/index.js +0 -12
- package/node/hooks/useTreeViewApiRef.js +0 -14
- package/node/icons/icons.js +0 -16
- package/node/icons/index.js +0 -16
- package/node/index.js +0 -154
- package/node/internals/TreeViewItemDepthContext/TreeViewItemDepthContext.js +0 -12
- package/node/internals/TreeViewItemDepthContext/index.js +0 -12
- package/node/internals/TreeViewProvider/TreeViewContext.js +0 -15
- package/node/internals/TreeViewProvider/TreeViewProvider.js +0 -27
- package/node/internals/TreeViewProvider/TreeViewProvider.types.js +0 -5
- package/node/internals/TreeViewProvider/index.js +0 -19
- package/node/internals/TreeViewProvider/useTreeViewContext.js +0 -17
- package/node/internals/components/RichTreeViewItems.js +0 -76
- package/node/internals/corePlugins/corePlugins.js +0 -14
- package/node/internals/corePlugins/index.js +0 -12
- package/node/internals/corePlugins/useTreeViewId/index.js +0 -12
- package/node/internals/corePlugins/useTreeViewId/useTreeViewId.js +0 -48
- package/node/internals/corePlugins/useTreeViewId/useTreeViewId.selectors.js +0 -15
- package/node/internals/corePlugins/useTreeViewId/useTreeViewId.types.js +0 -5
- package/node/internals/corePlugins/useTreeViewInstanceEvents/index.js +0 -12
- package/node/internals/corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.js +0 -5
- package/node/internals/corePlugins/useTreeViewOptionalPlugins/index.js +0 -12
- package/node/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.js +0 -19
- package/node/internals/corePlugins/useTreeViewOptionalPlugins/useTreeViewOptionalPlugins.types.js +0 -5
- package/node/internals/hooks/useLazyRef.js +0 -13
- package/node/internals/hooks/useOnMount.js +0 -13
- package/node/internals/hooks/useSelector.js +0 -13
- package/node/internals/hooks/useTimeout.js +0 -13
- package/node/internals/index.js +0 -160
- package/node/internals/models/events.js +0 -5
- package/node/internals/models/helpers.js +0 -5
- package/node/internals/models/index.js +0 -49
- package/node/internals/models/itemPlugin.js +0 -5
- package/node/internals/models/plugin.js +0 -5
- package/node/internals/models/treeView.js +0 -5
- package/node/internals/plugins/useTreeViewExpansion/index.js +0 -12
- package/node/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.js +0 -119
- package/node/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.selectors.js +0 -30
- package/node/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.types.js +0 -5
- package/node/internals/plugins/useTreeViewExpansion/useTreeViewExpansion.utils.js +0 -27
- package/node/internals/plugins/useTreeViewFocus/index.js +0 -12
- package/node/internals/plugins/useTreeViewFocus/useTreeViewFocus.js +0 -144
- package/node/internals/plugins/useTreeViewFocus/useTreeViewFocus.types.js +0 -5
- package/node/internals/plugins/useTreeViewIcons/index.js +0 -12
- package/node/internals/plugins/useTreeViewIcons/useTreeViewIcons.types.js +0 -5
- package/node/internals/plugins/useTreeViewItems/index.js +0 -25
- package/node/internals/plugins/useTreeViewItems/useTreeViewItems.types.js +0 -5
- package/node/internals/plugins/useTreeViewItems/useTreeViewItems.utils.js +0 -15
- package/node/internals/plugins/useTreeViewJSXItems/index.js +0 -12
- package/node/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.js +0 -192
- package/node/internals/plugins/useTreeViewJSXItems/useTreeViewJSXItems.types.js +0 -5
- package/node/internals/plugins/useTreeViewKeyboardNavigation/index.js +0 -12
- package/node/internals/plugins/useTreeViewKeyboardNavigation/useTreeViewKeyboardNavigation.types.js +0 -5
- package/node/internals/plugins/useTreeViewLabel/index.js +0 -12
- package/node/internals/plugins/useTreeViewLabel/useTreeViewLabel.types.js +0 -5
- package/node/internals/plugins/useTreeViewSelection/index.js +0 -12
- package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.selectors.js +0 -15
- package/node/internals/plugins/useTreeViewSelection/useTreeViewSelection.types.js +0 -5
- package/node/internals/useTreeView/index.js +0 -12
- package/node/internals/useTreeView/useTreeView.types.js +0 -5
- package/node/internals/useTreeView/useTreeViewPlugins.js +0 -1
- package/node/internals/utils/cleanupTracking/CleanupTracking.js +0 -5
- package/node/internals/utils/plugins.js +0 -11
- package/node/internals/utils/publishTreeViewEvent.js +0 -10
- package/node/internals/zero-styled/index.js +0 -17
- package/node/models/events.js +0 -5
- package/node/models/index.js +0 -27
- package/node/models/items.js +0 -5
- package/node/themeAugmentation/index.js +0 -1
- package/node/useTreeItem/index.js +0 -12
- package/node/useTreeItem/useTreeItem.types.js +0 -5
- package/themeAugmentation/package.json +0 -6
- package/useTreeItem/package.json +0 -6
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { CleanupTracking } from "../utils/cleanupTracking/CleanupTracking.js";
|
|
2
|
+
import { TreeViewAnyPluginSignature, TreeViewUsedEvents } from "../models/index.js";
|
|
3
|
+
import { TreeViewEventListener } from "../models/events.js";
|
|
4
|
+
import { UseTreeViewInstanceEventsInstance } from "../corePlugins/useTreeViewInstanceEvents/useTreeViewInstanceEvents.types.js";
|
|
5
|
+
interface RegistryContainer {
|
|
6
|
+
registry: CleanupTracking | null;
|
|
7
|
+
}
|
|
8
|
+
export declare function createUseInstanceEventHandler(registryContainer: RegistryContainer): <Instance extends UseTreeViewInstanceEventsInstance & {
|
|
9
|
+
$$signature: TreeViewAnyPluginSignature;
|
|
10
|
+
}, E extends keyof TreeViewUsedEvents<Instance["$$signature"]>>(instance: Instance, eventName: E, handler: TreeViewEventListener<TreeViewUsedEvents<Instance["$$signature"]>[E]>) => void;
|
|
11
|
+
export declare const unstable_resetCleanupTracking: () => void;
|
|
12
|
+
export declare const useInstanceEventHandler: <Instance extends UseTreeViewInstanceEventsInstance & {
|
|
13
|
+
$$signature: TreeViewAnyPluginSignature;
|
|
14
|
+
}, E extends keyof TreeViewUsedEvents<Instance["$$signature"]>>(instance: Instance, eventName: E, handler: TreeViewEventListener<TreeViewUsedEvents<Instance["$$signature"]>[E]>) => void;
|
|
15
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as useLazyRef } from '@mui/utils/useLazyRef';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as useOnMount } from '@mui/utils/useOnMount';
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { TreeViewAnyPluginSignature, TreeViewState } from "../models/index.js";
|
|
2
|
+
import { TreeViewStore } from "../utils/TreeViewStore.js";
|
|
3
|
+
import { TreeViewSelector } from "../utils/selectors.js";
|
|
4
|
+
export declare const useSelector: <TSignatures extends readonly TreeViewAnyPluginSignature[], TArgs, TValue>(store: TreeViewStore<TSignatures>, selector: TreeViewSelector<TreeViewState<TSignatures>, TArgs, TValue>, args?: TArgs, equals?: (a: TValue, b: TValue) => boolean) => TValue;
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
// use-sync-external-store has no exports field defined
|
|
2
|
+
// See https://github.com/facebook/react/issues/30698
|
|
3
|
+
// eslint-disable-next-line import/extensions
|
|
4
|
+
import { useSyncExternalStoreWithSelector } from 'use-sync-external-store/with-selector.js';
|
|
2
5
|
const defaultCompare = Object.is;
|
|
3
6
|
export const useSelector = (store, selector, args = undefined, equals = defaultCompare) => {
|
|
4
7
|
const selectorWithArgs = state => selector(state, args);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as useTimeout } from '@mui/utils/useTimeout';
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export { useTreeView } from "./useTreeView/index.js";
|
|
2
|
+
export { TreeViewProvider, useTreeViewContext } from "./TreeViewProvider/index.js";
|
|
3
|
+
export { RichTreeViewItems } from "./components/RichTreeViewItems.js";
|
|
4
|
+
export type { RichTreeViewItemsSlots, RichTreeViewItemsSlotProps } from './components/RichTreeViewItems';
|
|
5
|
+
export { unstable_resetCleanupTracking } from "./hooks/useInstanceEventHandler.js";
|
|
6
|
+
export { useSelector } from "./hooks/useSelector.js";
|
|
7
|
+
export type { TreeViewPlugin, TreeViewPluginSignature, ConvertPluginsIntoSignatures, MergeSignaturesProperty, TreeViewPublicAPI, TreeViewState, TreeViewExperimentalFeatures, TreeViewItemMeta, TreeViewInstance, TreeViewItemPlugin, TreeViewUsedStore } from './models';
|
|
8
|
+
export type { TreeViewCorePluginParameters } from './corePlugins';
|
|
9
|
+
export { useTreeViewExpansion } from "./plugins/useTreeViewExpansion/index.js";
|
|
10
|
+
export type { UseTreeViewExpansionSignature, UseTreeViewExpansionParameters } from './plugins/useTreeViewExpansion';
|
|
11
|
+
export { useTreeViewSelection } from "./plugins/useTreeViewSelection/index.js";
|
|
12
|
+
export type { UseTreeViewSelectionSignature, UseTreeViewSelectionParameters } from './plugins/useTreeViewSelection';
|
|
13
|
+
export { useTreeViewFocus } from "./plugins/useTreeViewFocus/index.js";
|
|
14
|
+
export type { UseTreeViewFocusSignature, UseTreeViewFocusParameters } from './plugins/useTreeViewFocus';
|
|
15
|
+
export { useTreeViewKeyboardNavigation } from "./plugins/useTreeViewKeyboardNavigation/index.js";
|
|
16
|
+
export type { UseTreeViewKeyboardNavigationSignature } from './plugins/useTreeViewKeyboardNavigation';
|
|
17
|
+
export { useTreeViewIcons } from "./plugins/useTreeViewIcons/index.js";
|
|
18
|
+
export type { UseTreeViewIconsSignature, UseTreeViewIconsParameters } from './plugins/useTreeViewIcons';
|
|
19
|
+
export { useTreeViewItems, buildSiblingIndexes, TREE_VIEW_ROOT_PARENT_ID } from "./plugins/useTreeViewItems/index.js";
|
|
20
|
+
export { selectorItemMetaLookup, selectorItemMeta, selectorItemIndex, selectorItemOrderedChildrenIds } from "./plugins/useTreeViewItems/useTreeViewItems.selectors.js";
|
|
21
|
+
export type { UseTreeViewItemsSignature, UseTreeViewItemsParameters, UseTreeViewItemsState } from './plugins/useTreeViewItems';
|
|
22
|
+
export { useTreeViewLabel } from "./plugins/useTreeViewLabel/index.js";
|
|
23
|
+
export type { UseTreeViewLabelSignature, UseTreeViewLabelParameters } from './plugins/useTreeViewLabel';
|
|
24
|
+
export { useTreeViewJSXItems } from "./plugins/useTreeViewJSXItems/index.js";
|
|
25
|
+
export type { UseTreeViewJSXItemsSignature, UseTreeViewJSXItemsParameters } from './plugins/useTreeViewJSXItems';
|
|
26
|
+
export { createSelector } from "./utils/selectors.js";
|
|
27
|
+
export { isTargetInDescendants } from "./utils/tree.js";
|
|
28
|
+
export { TreeViewStore } from "./utils/TreeViewStore.js";
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
export interface TreeViewEventLookupElement {
|
|
3
|
+
params: object;
|
|
4
|
+
}
|
|
5
|
+
export type TreeViewEventListener<E extends TreeViewEventLookupElement> = (params: E['params'], event: MuiEvent<{}>) => void;
|
|
6
|
+
export type MuiBaseEvent = React.SyntheticEvent<HTMLElement> | DocumentEventMap[keyof DocumentEventMap] | {};
|
|
7
|
+
export type MuiEvent<E extends MuiBaseEvent = MuiBaseEvent> = E & {
|
|
8
|
+
defaultMuiPrevented?: boolean;
|
|
9
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { TreeViewAnyPluginSignature, TreeViewPlugin } from './plugin';
|
|
2
|
+
type IsAny<T> = 0 extends 1 & T ? true : false;
|
|
3
|
+
export type OptionalIfEmpty<A extends string, B> = keyof B extends never ? Partial<Record<A, B>> : IsAny<B> extends true ? Partial<Record<A, B>> : Record<A, B>;
|
|
4
|
+
export type MergeSignaturesProperty<TSignatures extends readonly any[], TProperty extends keyof TreeViewAnyPluginSignature> = TSignatures extends readonly [plugin: infer P, ...otherPlugin: infer R] ? P extends TreeViewAnyPluginSignature ? P[TProperty] & MergeSignaturesProperty<R, TProperty> : {} : {};
|
|
5
|
+
export type ConvertPluginsIntoSignatures<TPlugins extends readonly TreeViewPlugin<TreeViewAnyPluginSignature>[]> = TPlugins extends readonly [plugin: infer TPlugin, ...otherPlugin: infer R] ? R extends readonly TreeViewPlugin<any>[] ? TPlugin extends TreeViewPlugin<infer TSignature> ? readonly [TSignature, ...ConvertPluginsIntoSignatures<R>] : never : never : [];
|
|
6
|
+
export type ConvertSignaturesIntoPlugins<TSignatures extends readonly TreeViewAnyPluginSignature[]> = TSignatures extends readonly [signature: infer TSignature, ...otherSignatures: infer R] ? R extends readonly TreeViewAnyPluginSignature[] ? TSignature extends TreeViewAnyPluginSignature ? readonly [TreeViewPlugin<TSignature>, ...ConvertSignaturesIntoPlugins<R>] : never : never : [];
|
|
7
|
+
export {};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { EventHandlers } from '@mui/utils/types';
|
|
3
|
+
import type { UseTreeItemContentSlotOwnProps, UseTreeItemDragAndDropOverlaySlotOwnProps, UseTreeItemLabelInputSlotOwnProps, UseTreeItemRootSlotOwnProps, UseTreeItemCheckboxSlotOwnProps, UseTreeItemStatus } from '../../useTreeItem';
|
|
4
|
+
import type { UseTreeItemInteractions } from '../../hooks/useTreeItemUtils/useTreeItemUtils';
|
|
5
|
+
import type { TreeItemProps } from '../../TreeItem/TreeItem.types';
|
|
6
|
+
export interface TreeViewItemPluginSlotPropsEnhancerParams {
|
|
7
|
+
rootRefObject: React.RefObject<HTMLLIElement | null>;
|
|
8
|
+
contentRefObject: React.RefObject<HTMLDivElement | null>;
|
|
9
|
+
externalEventHandlers: EventHandlers;
|
|
10
|
+
interactions: UseTreeItemInteractions;
|
|
11
|
+
status: UseTreeItemStatus;
|
|
12
|
+
}
|
|
13
|
+
type TreeViewItemPluginSlotPropsEnhancer<TSlotProps> = (params: TreeViewItemPluginSlotPropsEnhancerParams) => Partial<TSlotProps>;
|
|
14
|
+
export interface TreeViewItemPluginSlotPropsEnhancers {
|
|
15
|
+
root?: TreeViewItemPluginSlotPropsEnhancer<UseTreeItemRootSlotOwnProps>;
|
|
16
|
+
content?: TreeViewItemPluginSlotPropsEnhancer<UseTreeItemContentSlotOwnProps>;
|
|
17
|
+
dragAndDropOverlay?: TreeViewItemPluginSlotPropsEnhancer<UseTreeItemDragAndDropOverlaySlotOwnProps>;
|
|
18
|
+
labelInput?: TreeViewItemPluginSlotPropsEnhancer<UseTreeItemLabelInputSlotOwnProps>;
|
|
19
|
+
checkbox?: TreeViewItemPluginSlotPropsEnhancer<UseTreeItemCheckboxSlotOwnProps>;
|
|
20
|
+
}
|
|
21
|
+
export interface TreeViewItemPluginResponse {
|
|
22
|
+
/**
|
|
23
|
+
* Root of the `content` slot enriched by the plugin.
|
|
24
|
+
*/
|
|
25
|
+
contentRef?: React.RefCallback<HTMLElement> | null;
|
|
26
|
+
/**
|
|
27
|
+
* Ref of the `root` slot enriched by the plugin
|
|
28
|
+
*/
|
|
29
|
+
rootRef?: React.RefCallback<HTMLLIElement> | null;
|
|
30
|
+
/**
|
|
31
|
+
* Callback to enhance the slot props of the Tree Item.
|
|
32
|
+
*
|
|
33
|
+
* Not all slots are enabled by default,
|
|
34
|
+
* if a new plugin needs to pass to an unconfigured slot,
|
|
35
|
+
* it just needs to be added to `TreeViewItemPluginSlotPropsEnhancers`
|
|
36
|
+
*/
|
|
37
|
+
propsEnhancers?: TreeViewItemPluginSlotPropsEnhancers;
|
|
38
|
+
}
|
|
39
|
+
export interface TreeViewItemPluginOptions extends Omit<TreeViewItemPluginResponse, 'propsEnhancers'> {
|
|
40
|
+
props: TreeItemProps;
|
|
41
|
+
}
|
|
42
|
+
export type TreeViewItemPlugin = (options: TreeViewItemPluginOptions) => void | TreeViewItemPluginResponse;
|
|
43
|
+
export {};
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { EventHandlers } from '@mui/utils/types';
|
|
3
|
+
import { TreeViewExperimentalFeatures, TreeViewInstance, TreeViewModel } from "./treeView.js";
|
|
4
|
+
import type { MergeSignaturesProperty, OptionalIfEmpty } from './helpers';
|
|
5
|
+
import { TreeViewEventLookupElement } from "./events.js";
|
|
6
|
+
import type { TreeViewCorePluginSignatures } from '../corePlugins';
|
|
7
|
+
import { TreeViewItemPlugin } from "./itemPlugin.js";
|
|
8
|
+
import { TreeViewItemId } from "../../models/index.js";
|
|
9
|
+
import { TreeViewStore } from "../utils/TreeViewStore.js";
|
|
10
|
+
export interface TreeViewPluginOptions<TSignature extends TreeViewAnyPluginSignature> {
|
|
11
|
+
instance: TreeViewUsedInstance<TSignature>;
|
|
12
|
+
params: TreeViewUsedDefaultizedParams<TSignature>;
|
|
13
|
+
slots: TSignature['slots'];
|
|
14
|
+
slotProps: TSignature['slotProps'];
|
|
15
|
+
experimentalFeatures: TreeViewUsedExperimentalFeatures<TSignature>;
|
|
16
|
+
models: TreeViewUsedModels<TSignature>;
|
|
17
|
+
store: TreeViewUsedStore<TSignature>;
|
|
18
|
+
rootRef: React.RefObject<HTMLUListElement | null>;
|
|
19
|
+
plugins: TreeViewPlugin<TreeViewAnyPluginSignature>[];
|
|
20
|
+
}
|
|
21
|
+
type TreeViewModelsInitializer<TSignature extends TreeViewAnyPluginSignature> = { [TControlled in keyof TSignature['models']]: {
|
|
22
|
+
getDefaultValue: (params: TSignature['defaultizedParams']) => Exclude<TSignature['defaultizedParams'][TControlled], undefined>;
|
|
23
|
+
} };
|
|
24
|
+
type TreeViewResponse<TSignature extends TreeViewAnyPluginSignature> = {
|
|
25
|
+
getRootProps?: <TOther extends EventHandlers = {}>(otherHandlers: TOther) => React.HTMLAttributes<HTMLUListElement>;
|
|
26
|
+
} & OptionalIfEmpty<'publicAPI', TSignature['publicAPI']> & OptionalIfEmpty<'instance', TSignature['instance']> & OptionalIfEmpty<'contextValue', TSignature['contextValue']>;
|
|
27
|
+
export type TreeViewPluginSignature<T extends {
|
|
28
|
+
params?: {};
|
|
29
|
+
defaultizedParams?: {};
|
|
30
|
+
instance?: {};
|
|
31
|
+
publicAPI?: {};
|
|
32
|
+
events?: { [key in keyof T['events']]: TreeViewEventLookupElement };
|
|
33
|
+
state?: {};
|
|
34
|
+
cache?: {};
|
|
35
|
+
contextValue?: {};
|
|
36
|
+
slots?: { [key in keyof T['slots']]: React.ElementType };
|
|
37
|
+
slotProps?: { [key in keyof T['slotProps']]: {} | (() => {}) };
|
|
38
|
+
modelNames?: keyof T['defaultizedParams'];
|
|
39
|
+
experimentalFeatures?: string;
|
|
40
|
+
dependencies?: readonly TreeViewAnyPluginSignature[];
|
|
41
|
+
optionalDependencies?: readonly TreeViewAnyPluginSignature[];
|
|
42
|
+
}> = {
|
|
43
|
+
params: T extends {
|
|
44
|
+
params: {};
|
|
45
|
+
} ? T['params'] : {};
|
|
46
|
+
defaultizedParams: T extends {
|
|
47
|
+
defaultizedParams: {};
|
|
48
|
+
} ? T['defaultizedParams'] : {};
|
|
49
|
+
instance: T extends {
|
|
50
|
+
instance: {};
|
|
51
|
+
} ? T['instance'] : {};
|
|
52
|
+
publicAPI: T extends {
|
|
53
|
+
publicAPI: {};
|
|
54
|
+
} ? T['publicAPI'] : {};
|
|
55
|
+
events: T extends {
|
|
56
|
+
events: {};
|
|
57
|
+
} ? T['events'] : {};
|
|
58
|
+
state: T extends {
|
|
59
|
+
state: {};
|
|
60
|
+
} ? T['state'] : {};
|
|
61
|
+
cache: T extends {
|
|
62
|
+
cache: {};
|
|
63
|
+
} ? T['cache'] : {};
|
|
64
|
+
contextValue: T extends {
|
|
65
|
+
contextValue: {};
|
|
66
|
+
} ? T['contextValue'] : {};
|
|
67
|
+
slots: T extends {
|
|
68
|
+
slots: {};
|
|
69
|
+
} ? T['slots'] : {};
|
|
70
|
+
slotProps: T extends {
|
|
71
|
+
slotProps: {};
|
|
72
|
+
} ? T['slotProps'] : {};
|
|
73
|
+
models: T extends {
|
|
74
|
+
defaultizedParams: {};
|
|
75
|
+
modelNames: keyof T['defaultizedParams'];
|
|
76
|
+
} ? { [TControlled in T['modelNames']]-?: TreeViewModel<Exclude<T['defaultizedParams'][TControlled], undefined>> } : {};
|
|
77
|
+
experimentalFeatures: T extends {
|
|
78
|
+
experimentalFeatures: string;
|
|
79
|
+
} ? { [key in T['experimentalFeatures']]?: boolean } : {};
|
|
80
|
+
dependencies: T extends {
|
|
81
|
+
dependencies: Array<any>;
|
|
82
|
+
} ? T['dependencies'] : [];
|
|
83
|
+
optionalDependencies: T extends {
|
|
84
|
+
optionalDependencies: Array<any>;
|
|
85
|
+
} ? T['optionalDependencies'] : [];
|
|
86
|
+
};
|
|
87
|
+
export type TreeViewAnyPluginSignature = {
|
|
88
|
+
cache: any;
|
|
89
|
+
state: any;
|
|
90
|
+
instance: any;
|
|
91
|
+
params: any;
|
|
92
|
+
defaultizedParams: any;
|
|
93
|
+
dependencies: any;
|
|
94
|
+
optionalDependencies: any;
|
|
95
|
+
events: any;
|
|
96
|
+
contextValue: any;
|
|
97
|
+
slots: any;
|
|
98
|
+
slotProps: any;
|
|
99
|
+
models: any;
|
|
100
|
+
experimentalFeatures: any;
|
|
101
|
+
publicAPI: any;
|
|
102
|
+
};
|
|
103
|
+
type TreeViewRequiredPlugins<TSignature extends TreeViewAnyPluginSignature> = [...TreeViewCorePluginSignatures, ...TSignature['dependencies']];
|
|
104
|
+
type PluginPropertyWithDependencies<TSignature extends TreeViewAnyPluginSignature, TProperty extends keyof TreeViewAnyPluginSignature> = TSignature[TProperty] & MergeSignaturesProperty<TreeViewRequiredPlugins<TSignature>, TProperty> & Partial<MergeSignaturesProperty<TSignature['optionalDependencies'], TProperty>>;
|
|
105
|
+
export type TreeViewUsedParams<TSignature extends TreeViewAnyPluginSignature> = PluginPropertyWithDependencies<TSignature, 'params'>;
|
|
106
|
+
export type TreeViewUsedDefaultizedParams<TSignature extends TreeViewAnyPluginSignature> = PluginPropertyWithDependencies<TSignature, 'defaultizedParams'>;
|
|
107
|
+
export type TreeViewUsedInstance<TSignature extends TreeViewAnyPluginSignature> = PluginPropertyWithDependencies<TSignature, 'instance'> & {
|
|
108
|
+
/**
|
|
109
|
+
* Private property only defined in TypeScript to be able to access the plugin signature from the instance object.
|
|
110
|
+
*/
|
|
111
|
+
$$signature: TSignature;
|
|
112
|
+
};
|
|
113
|
+
export type TreeViewUsedStore<TSignature extends TreeViewAnyPluginSignature> = TreeViewStore<[TSignature, ...TSignature['dependencies']]>;
|
|
114
|
+
type TreeViewUsedExperimentalFeatures<TSignature extends TreeViewAnyPluginSignature> = TreeViewExperimentalFeatures<[TSignature, ...TSignature['dependencies']], TSignature['optionalDependencies']>;
|
|
115
|
+
type RemoveSetValue<Models extends Record<string, TreeViewModel<any>>> = { [K in keyof Models]: Omit<Models[K], 'setValue'> };
|
|
116
|
+
export type TreeViewUsedModels<TSignature extends TreeViewAnyPluginSignature> = TSignature['models'] & RemoveSetValue<MergeSignaturesProperty<TreeViewRequiredPlugins<TSignature>, 'models'>>;
|
|
117
|
+
export type TreeViewUsedEvents<TSignature extends TreeViewAnyPluginSignature> = TSignature['events'] & MergeSignaturesProperty<TreeViewRequiredPlugins<TSignature>, 'events'>;
|
|
118
|
+
export type TreeItemWrapper<TSignatures extends readonly TreeViewAnyPluginSignature[]> = (params: {
|
|
119
|
+
itemId: TreeViewItemId;
|
|
120
|
+
children: React.ReactNode;
|
|
121
|
+
instance: TreeViewInstance<TSignatures>;
|
|
122
|
+
idAttribute: string;
|
|
123
|
+
}) => React.ReactNode;
|
|
124
|
+
export type TreeRootWrapper = (params: {
|
|
125
|
+
children: React.ReactNode;
|
|
126
|
+
}) => React.ReactNode;
|
|
127
|
+
export type TreeViewPlugin<TSignature extends TreeViewAnyPluginSignature> = {
|
|
128
|
+
(options: TreeViewPluginOptions<TSignature>): TreeViewResponse<TSignature>;
|
|
129
|
+
getDefaultizedParams?: (options: {
|
|
130
|
+
params: TreeViewUsedParams<TSignature>;
|
|
131
|
+
experimentalFeatures: TreeViewUsedExperimentalFeatures<TSignature>;
|
|
132
|
+
}) => TSignature['defaultizedParams'];
|
|
133
|
+
getInitialState?: (params: TreeViewUsedDefaultizedParams<TSignature>) => TSignature['state'];
|
|
134
|
+
getInitialCache?: () => TSignature['cache'];
|
|
135
|
+
models?: TreeViewModelsInitializer<TSignature>;
|
|
136
|
+
params: Record<keyof TSignature['params'], true>;
|
|
137
|
+
itemPlugin?: TreeViewItemPlugin;
|
|
138
|
+
/**
|
|
139
|
+
* Render function used to add React wrappers around the TreeItem.
|
|
140
|
+
* @param {{ nodeId: TreeViewItemId; children: React.ReactNode; }} params The params of the item.
|
|
141
|
+
* @returns {React.ReactNode} The wrapped item.
|
|
142
|
+
*/
|
|
143
|
+
wrapItem?: TreeItemWrapper<[TSignature, ...TSignature['dependencies']]>;
|
|
144
|
+
/**
|
|
145
|
+
* Render function used to add React wrappers around the TreeView.
|
|
146
|
+
* @param {{ children: React.ReactNode; }} params The params of the root.
|
|
147
|
+
* @returns {React.ReactNode} The wrapped root.
|
|
148
|
+
*/
|
|
149
|
+
wrapRoot?: TreeRootWrapper;
|
|
150
|
+
};
|
|
151
|
+
export {};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { TreeViewAnyPluginSignature } from './plugin';
|
|
2
|
+
import type { MergeSignaturesProperty } from './helpers';
|
|
3
|
+
import type { TreeViewCorePluginSignatures } from '../corePlugins';
|
|
4
|
+
export interface TreeViewItemMeta {
|
|
5
|
+
id: string;
|
|
6
|
+
idAttribute: string | undefined;
|
|
7
|
+
parentId: string | null;
|
|
8
|
+
expandable: boolean;
|
|
9
|
+
disabled: boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Only defined for `<RichTreeView />` and `<RichTreeViewPro />`.
|
|
12
|
+
*/
|
|
13
|
+
depth?: number;
|
|
14
|
+
/**
|
|
15
|
+
* Only defined for `<RichTreeView />` and `<RichTreeViewPro />`.
|
|
16
|
+
*/
|
|
17
|
+
label?: string;
|
|
18
|
+
}
|
|
19
|
+
export interface TreeViewModel<TValue> {
|
|
20
|
+
name: string;
|
|
21
|
+
value: TValue;
|
|
22
|
+
setControlledValue: (value: TValue | ((prevValue: TValue) => TValue)) => void;
|
|
23
|
+
}
|
|
24
|
+
export type TreeViewInstance<TSignatures extends readonly TreeViewAnyPluginSignature[], TOptionalSignatures extends readonly TreeViewAnyPluginSignature[] = []> = MergeSignaturesProperty<[...TreeViewCorePluginSignatures, ...TSignatures], 'instance'> & Partial<MergeSignaturesProperty<TOptionalSignatures, 'instance'>>;
|
|
25
|
+
export type TreeViewPublicAPI<TSignatures extends readonly TreeViewAnyPluginSignature[], TOptionalSignatures extends readonly TreeViewAnyPluginSignature[] = []> = MergeSignaturesProperty<[...TreeViewCorePluginSignatures, ...TSignatures], 'publicAPI'> & Partial<MergeSignaturesProperty<TOptionalSignatures, 'instance'>>;
|
|
26
|
+
export type TreeViewExperimentalFeatures<TSignatures extends readonly TreeViewAnyPluginSignature[], TOptionalSignatures extends readonly TreeViewAnyPluginSignature[] = []> = MergeSignaturesProperty<[...TSignatures, ...TOptionalSignatures], 'experimentalFeatures'>;
|
|
27
|
+
export type TreeViewStateCacheKey = {
|
|
28
|
+
id: number;
|
|
29
|
+
};
|
|
30
|
+
export type TreeViewState<TSignatures extends readonly TreeViewAnyPluginSignature[], TOptionalSignatures extends readonly TreeViewAnyPluginSignature[] = []> = MergeSignaturesProperty<[...TreeViewCorePluginSignatures, ...TSignatures], 'state'> & Partial<MergeSignaturesProperty<TOptionalSignatures, 'state'>> & {
|
|
31
|
+
cacheKey: TreeViewStateCacheKey;
|
|
32
|
+
};
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
import { TreeViewRootSelector } from "../../utils/selectors.js";
|
|
2
|
+
import { UseTreeViewExpansionSignature } from "./useTreeViewExpansion.types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Check if an item is expanded.
|
|
5
|
+
* @param {TreeViewState<[UseTreeViewExpansionSignature]>} state The state of the tree view.
|
|
6
|
+
* @returns {boolean} `true` if the item is expanded, `false` otherwise.
|
|
7
|
+
*/
|
|
8
|
+
export declare const selectorIsItemExpanded: ((state: any, itemId: string) => boolean) & {
|
|
9
|
+
clearCache: () => void;
|
|
10
|
+
resultsCount: () => number;
|
|
11
|
+
resetResultsCount: () => void;
|
|
12
|
+
} & {
|
|
13
|
+
resultFunc: (resultFuncArgs_0: {
|
|
14
|
+
expandedItemsMap: Map<string, true>;
|
|
15
|
+
expansionTrigger: "content" | "iconContainer";
|
|
16
|
+
}, resultFuncArgs_1: string) => boolean;
|
|
17
|
+
memoizedResultFunc: ((resultFuncArgs_0: {
|
|
18
|
+
expandedItemsMap: Map<string, true>;
|
|
19
|
+
expansionTrigger: "content" | "iconContainer";
|
|
20
|
+
}, resultFuncArgs_1: string) => boolean) & {
|
|
21
|
+
clearCache: () => void;
|
|
22
|
+
resultsCount: () => number;
|
|
23
|
+
resetResultsCount: () => void;
|
|
24
|
+
};
|
|
25
|
+
lastResult: () => boolean;
|
|
26
|
+
dependencies: [TreeViewRootSelector<UseTreeViewExpansionSignature>, (_: any, itemId: string) => string];
|
|
27
|
+
recomputations: () => number;
|
|
28
|
+
resetRecomputations: () => void;
|
|
29
|
+
dependencyRecomputations: () => number;
|
|
30
|
+
resetDependencyRecomputations: () => void;
|
|
31
|
+
} & {
|
|
32
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
33
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Check if an item is expandable.
|
|
37
|
+
* @param {TreeViewState<[UseTreeViewItemsSignature]>} state The state of the tree view.
|
|
38
|
+
* @returns {boolean} `true` if the item is expandable, `false` otherwise.
|
|
39
|
+
*/
|
|
40
|
+
export declare const selectorIsItemExpandable: ((state: any, itemId: string | null) => boolean) & {
|
|
41
|
+
clearCache: () => void;
|
|
42
|
+
resultsCount: () => number;
|
|
43
|
+
resetResultsCount: () => void;
|
|
44
|
+
} & {
|
|
45
|
+
resultFunc: (resultFuncArgs_0: import("../..").TreeViewItemMeta | null) => boolean;
|
|
46
|
+
memoizedResultFunc: ((resultFuncArgs_0: import("../..").TreeViewItemMeta | null) => boolean) & {
|
|
47
|
+
clearCache: () => void;
|
|
48
|
+
resultsCount: () => number;
|
|
49
|
+
resetResultsCount: () => void;
|
|
50
|
+
};
|
|
51
|
+
lastResult: () => boolean;
|
|
52
|
+
dependencies: [((state: any, itemId: string | null) => import("../..").TreeViewItemMeta | null) & {
|
|
53
|
+
clearCache: () => void;
|
|
54
|
+
resultsCount: () => number;
|
|
55
|
+
resetResultsCount: () => void;
|
|
56
|
+
} & {
|
|
57
|
+
resultFunc: (resultFuncArgs_0: {
|
|
58
|
+
[itemId: string]: import("../..").TreeViewItemMeta;
|
|
59
|
+
}, resultFuncArgs_1: string | null) => import("../..").TreeViewItemMeta | null;
|
|
60
|
+
memoizedResultFunc: ((resultFuncArgs_0: {
|
|
61
|
+
[itemId: string]: import("../..").TreeViewItemMeta;
|
|
62
|
+
}, resultFuncArgs_1: string | null) => import("../..").TreeViewItemMeta | null) & {
|
|
63
|
+
clearCache: () => void;
|
|
64
|
+
resultsCount: () => number;
|
|
65
|
+
resetResultsCount: () => void;
|
|
66
|
+
};
|
|
67
|
+
lastResult: () => import("../..").TreeViewItemMeta | null;
|
|
68
|
+
dependencies: [((state: import("../../corePlugins/useTreeViewId/useTreeViewId.types").UseTreeViewIdState & import("../useTreeViewItems").UseTreeViewItemsState<import("../../..").TreeViewDefaultItemModelProperties> & Partial<{}> & {
|
|
69
|
+
cacheKey: import("../../models").TreeViewStateCacheKey;
|
|
70
|
+
}) => {
|
|
71
|
+
[itemId: string]: import("../..").TreeViewItemMeta;
|
|
72
|
+
}) & {
|
|
73
|
+
clearCache: () => void;
|
|
74
|
+
resultsCount: () => number;
|
|
75
|
+
resetResultsCount: () => void;
|
|
76
|
+
} & {
|
|
77
|
+
resultFunc: (resultFuncArgs_0: {
|
|
78
|
+
disabledItemsFocusable: boolean;
|
|
79
|
+
itemModelLookup: {
|
|
80
|
+
[itemId: string]: import("../../..").TreeViewBaseItem<import("../../..").TreeViewDefaultItemModelProperties>;
|
|
81
|
+
};
|
|
82
|
+
itemMetaLookup: {
|
|
83
|
+
[itemId: string]: import("../..").TreeViewItemMeta;
|
|
84
|
+
};
|
|
85
|
+
itemOrderedChildrenIdsLookup: {
|
|
86
|
+
[parentItemId: string]: string[];
|
|
87
|
+
};
|
|
88
|
+
itemChildrenIndexesLookup: {
|
|
89
|
+
[parentItemId: string]: {
|
|
90
|
+
[itemId: string]: number;
|
|
91
|
+
};
|
|
92
|
+
};
|
|
93
|
+
}) => {
|
|
94
|
+
[itemId: string]: import("../..").TreeViewItemMeta;
|
|
95
|
+
};
|
|
96
|
+
memoizedResultFunc: ((resultFuncArgs_0: {
|
|
97
|
+
disabledItemsFocusable: boolean;
|
|
98
|
+
itemModelLookup: {
|
|
99
|
+
[itemId: string]: import("../../..").TreeViewBaseItem<import("../../..").TreeViewDefaultItemModelProperties>;
|
|
100
|
+
};
|
|
101
|
+
itemMetaLookup: {
|
|
102
|
+
[itemId: string]: import("../..").TreeViewItemMeta;
|
|
103
|
+
};
|
|
104
|
+
itemOrderedChildrenIdsLookup: {
|
|
105
|
+
[parentItemId: string]: string[];
|
|
106
|
+
};
|
|
107
|
+
itemChildrenIndexesLookup: {
|
|
108
|
+
[parentItemId: string]: {
|
|
109
|
+
[itemId: string]: number;
|
|
110
|
+
};
|
|
111
|
+
};
|
|
112
|
+
}) => {
|
|
113
|
+
[itemId: string]: import("../..").TreeViewItemMeta;
|
|
114
|
+
}) & {
|
|
115
|
+
clearCache: () => void;
|
|
116
|
+
resultsCount: () => number;
|
|
117
|
+
resetResultsCount: () => void;
|
|
118
|
+
};
|
|
119
|
+
lastResult: () => {
|
|
120
|
+
[itemId: string]: import("../..").TreeViewItemMeta;
|
|
121
|
+
};
|
|
122
|
+
dependencies: [TreeViewRootSelector<import("../useTreeViewItems").UseTreeViewItemsSignature>];
|
|
123
|
+
recomputations: () => number;
|
|
124
|
+
resetRecomputations: () => void;
|
|
125
|
+
dependencyRecomputations: () => number;
|
|
126
|
+
resetDependencyRecomputations: () => void;
|
|
127
|
+
} & {
|
|
128
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
129
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
130
|
+
}, (_: any, itemId: string | null) => string | null];
|
|
131
|
+
recomputations: () => number;
|
|
132
|
+
resetRecomputations: () => void;
|
|
133
|
+
dependencyRecomputations: () => number;
|
|
134
|
+
resetDependencyRecomputations: () => void;
|
|
135
|
+
} & {
|
|
136
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
137
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
138
|
+
}];
|
|
139
|
+
recomputations: () => number;
|
|
140
|
+
resetRecomputations: () => void;
|
|
141
|
+
dependencyRecomputations: () => number;
|
|
142
|
+
resetDependencyRecomputations: () => void;
|
|
143
|
+
} & {
|
|
144
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
145
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
146
|
+
};
|
|
147
|
+
/**
|
|
148
|
+
* Get the slot that triggers the item's expansion when clicked.
|
|
149
|
+
* @param {TreeViewState<[UseTreeViewExpansionSignature]>} state The state of the tree view.
|
|
150
|
+
* @returns {'content' | 'iconContainer'} The slot that triggers the item's expansion when clicked. Is `null` if the item is not expandable.
|
|
151
|
+
*/
|
|
152
|
+
export declare const selectorItemExpansionTrigger: ((state: import("../../corePlugins/useTreeViewId/useTreeViewId.types").UseTreeViewIdState & import("./useTreeViewExpansion.types").UseTreeViewExpansionState & Partial<{}> & {
|
|
153
|
+
cacheKey: import("../../models").TreeViewStateCacheKey;
|
|
154
|
+
}) => "content" | "iconContainer") & {
|
|
155
|
+
clearCache: () => void;
|
|
156
|
+
resultsCount: () => number;
|
|
157
|
+
resetResultsCount: () => void;
|
|
158
|
+
} & {
|
|
159
|
+
resultFunc: (resultFuncArgs_0: {
|
|
160
|
+
expandedItemsMap: Map<string, true>;
|
|
161
|
+
expansionTrigger: "content" | "iconContainer";
|
|
162
|
+
}) => "content" | "iconContainer";
|
|
163
|
+
memoizedResultFunc: ((resultFuncArgs_0: {
|
|
164
|
+
expandedItemsMap: Map<string, true>;
|
|
165
|
+
expansionTrigger: "content" | "iconContainer";
|
|
166
|
+
}) => "content" | "iconContainer") & {
|
|
167
|
+
clearCache: () => void;
|
|
168
|
+
resultsCount: () => number;
|
|
169
|
+
resetResultsCount: () => void;
|
|
170
|
+
};
|
|
171
|
+
lastResult: () => "content" | "iconContainer";
|
|
172
|
+
dependencies: [TreeViewRootSelector<UseTreeViewExpansionSignature>];
|
|
173
|
+
recomputations: () => number;
|
|
174
|
+
resetRecomputations: () => void;
|
|
175
|
+
dependencyRecomputations: () => number;
|
|
176
|
+
resetDependencyRecomputations: () => void;
|
|
177
|
+
} & {
|
|
178
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
179
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
180
|
+
};
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { DefaultizedProps } from '@mui/x-internals/types';
|
|
3
|
+
import { TreeViewPluginSignature } from "../../models/index.js";
|
|
4
|
+
import { UseTreeViewItemsSignature } from "../useTreeViewItems/index.js";
|
|
5
|
+
import { TreeViewItemId } from "../../../models/index.js";
|
|
6
|
+
import { UseTreeViewLabelSignature } from "../useTreeViewLabel/index.js";
|
|
7
|
+
export interface UseTreeViewExpansionPublicAPI {
|
|
8
|
+
/**
|
|
9
|
+
* Change the expansion status of a given item.
|
|
10
|
+
* @param {React.SyntheticEvent} event The DOM event that triggered the change.
|
|
11
|
+
* @param {string} itemId The id of the item to expand of collapse.
|
|
12
|
+
* @param {boolean} isExpanded If `true` the item will be expanded. If `false` the item will be collapsed.
|
|
13
|
+
*/
|
|
14
|
+
setItemExpansion: (event: React.SyntheticEvent, itemId: string, isExpanded: boolean) => void;
|
|
15
|
+
}
|
|
16
|
+
export interface UseTreeViewExpansionInstance extends UseTreeViewExpansionPublicAPI {
|
|
17
|
+
/**
|
|
18
|
+
* Toggle the current expansion of an item.
|
|
19
|
+
* If it is expanded, it will be collapsed, and vice versa.
|
|
20
|
+
* @param {React.SyntheticEvent} event The DOM event that triggered the change.
|
|
21
|
+
* @param {TreeViewItemId} itemId The id of the item to toggle.
|
|
22
|
+
*/
|
|
23
|
+
toggleItemExpansion: (event: React.SyntheticEvent, itemId: TreeViewItemId) => void;
|
|
24
|
+
/**
|
|
25
|
+
* Expand all the siblings (i.e.: the items that have the same parent) of a given item.
|
|
26
|
+
* @param {React.SyntheticEvent} event The DOM event that triggered the change.
|
|
27
|
+
* @param {TreeViewItemId} itemId The id of the item whose siblings will be expanded.
|
|
28
|
+
*/
|
|
29
|
+
expandAllSiblings: (event: React.KeyboardEvent, itemId: TreeViewItemId) => void;
|
|
30
|
+
}
|
|
31
|
+
export interface UseTreeViewExpansionParameters {
|
|
32
|
+
/**
|
|
33
|
+
* Expanded item ids.
|
|
34
|
+
* Used when the item's expansion is controlled.
|
|
35
|
+
*/
|
|
36
|
+
expandedItems?: string[];
|
|
37
|
+
/**
|
|
38
|
+
* Expanded item ids.
|
|
39
|
+
* Used when the item's expansion is not controlled.
|
|
40
|
+
* @default []
|
|
41
|
+
*/
|
|
42
|
+
defaultExpandedItems?: string[];
|
|
43
|
+
/**
|
|
44
|
+
* Callback fired when Tree Items are expanded/collapsed.
|
|
45
|
+
* @param {React.SyntheticEvent} event The DOM event that triggered the change.
|
|
46
|
+
* @param {array} itemIds The ids of the expanded items.
|
|
47
|
+
*/
|
|
48
|
+
onExpandedItemsChange?: (event: React.SyntheticEvent, itemIds: string[]) => void;
|
|
49
|
+
/**
|
|
50
|
+
* Callback fired when a Tree Item is expanded or collapsed.
|
|
51
|
+
* @param {React.SyntheticEvent} event The DOM event that triggered the change.
|
|
52
|
+
* @param {array} itemId The itemId of the modified item.
|
|
53
|
+
* @param {array} isExpanded `true` if the item has just been expanded, `false` if it has just been collapsed.
|
|
54
|
+
*/
|
|
55
|
+
onItemExpansionToggle?: (event: React.SyntheticEvent, itemId: string, isExpanded: boolean) => void;
|
|
56
|
+
/**
|
|
57
|
+
* The slot that triggers the item's expansion when clicked.
|
|
58
|
+
* @default 'content'
|
|
59
|
+
*/
|
|
60
|
+
expansionTrigger?: 'content' | 'iconContainer';
|
|
61
|
+
}
|
|
62
|
+
export type UseTreeViewExpansionDefaultizedParameters = DefaultizedProps<UseTreeViewExpansionParameters, 'defaultExpandedItems'>;
|
|
63
|
+
export interface UseTreeViewExpansionState {
|
|
64
|
+
expansion: {
|
|
65
|
+
expandedItemsMap: Map<string, true>;
|
|
66
|
+
expansionTrigger: 'content' | 'iconContainer';
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
export type UseTreeViewExpansionSignature = TreeViewPluginSignature<{
|
|
70
|
+
params: UseTreeViewExpansionParameters;
|
|
71
|
+
defaultizedParams: UseTreeViewExpansionDefaultizedParameters;
|
|
72
|
+
instance: UseTreeViewExpansionInstance;
|
|
73
|
+
publicAPI: UseTreeViewExpansionPublicAPI;
|
|
74
|
+
modelNames: 'expandedItems';
|
|
75
|
+
state: UseTreeViewExpansionState;
|
|
76
|
+
dependencies: [UseTreeViewItemsSignature];
|
|
77
|
+
optionalDependencies: [UseTreeViewLabelSignature];
|
|
78
|
+
}>;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { TreeViewUsedDefaultizedParams } from "../../models/index.js";
|
|
2
|
+
import { UseTreeViewExpansionSignature } from "./useTreeViewExpansion.types.js";
|
|
3
|
+
export declare const createExpandedItemsMap: (expandedItems: string[]) => Map<string, true>;
|
|
4
|
+
export declare const getExpansionTrigger: ({
|
|
5
|
+
isItemEditable,
|
|
6
|
+
expansionTrigger
|
|
7
|
+
}: Pick<TreeViewUsedDefaultizedParams<UseTreeViewExpansionSignature>, "isItemEditable" | "expansionTrigger">) => "content" | "iconContainer";
|