Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import * as React from 'react';
import useEnhancedEffect from '@mui/utils/useEnhancedEffect';
import { useIsoLayoutEffect } from '@base-ui-components/utils/useIsoLayoutEffect';
import { TreeViewPlugin, itemsSelectors, labelSelectors } from '@mui/x-tree-view/internals';
import { TreeViewItemsReorderingAction } from '@mui/x-tree-view/models';
import {
Expand Down Expand Up @@ -249,7 +249,7 @@ export const useTreeViewItemsReordering: TreeViewPlugin<UseTreeViewItemsReorderi
[store, params.itemChildrenIndentation],
);

useEnhancedEffect(() => {
useIsoLayoutEffect(() => {
store.set('itemsReordering', {
...store.state.itemsReordering,
isItemReorderable: params.itemsReordering
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
'use client';
import * as React from 'react';
import useLazyRef from '@mui/utils/useLazyRef';
import useEventCallback from '@mui/utils/useEventCallback';
import { useRefWithInit } from '@base-ui-components/utils/useRefWithInit';
import { useEventCallback } from '@base-ui-components/utils/useEventCallback';
import {
itemsSelectors,
expansionSelectors,
Expand Down Expand Up @@ -42,11 +42,11 @@ export const useTreeViewLazyLoading: TreeViewPlugin<UseTreeViewLazyLoadingSignat
const isLazyLoadingEnabled = !!params.dataSource;
const firstRenderRef = React.useRef(true);

const nestedDataManager = useLazyRef<NestedDataManager, void>(
const nestedDataManager = useRefWithInit<NestedDataManager>(
() => new NestedDataManager(instance),
).current;

const cacheRef = useLazyRef<DataSourceCache, void>(() => getCache(params.dataSourceCache));
const cacheRef = useRefWithInit<DataSourceCache>(() => getCache(params.dataSourceCache));

const setDataSourceLoading = useEventCallback((itemId: TreeViewItemId, isLoading: boolean) => {
if (!isLazyLoadingEnabled) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import useLazyRef from '@mui/utils/useLazyRef';
import { useRefWithInit } from '@base-ui-components/utils/useRefWithInit';
import { TreeViewItemId, TreeViewSelectionPropagation } from '../models';
import { getLookupFromArray } from '../internals/plugins/useTreeViewSelection/useTreeViewSelection.utils';

Expand Down Expand Up @@ -58,7 +58,7 @@ export function useApplyPropagationToSelectedItemsOnMount(
selectionPropagation,
} = parameters;

return useLazyRef(() => {
return useRefWithInit(() => {
const lookup = getLookupFromArray(selectedItems);

function walk(items: any[], isParentSelected: boolean) {
Expand Down
1 change: 0 additions & 1 deletion packages/x-tree-view/src/internals/hooks/useLazyRef.ts

This file was deleted.

1 change: 0 additions & 1 deletion packages/x-tree-view/src/internals/hooks/useOnMount.ts

This file was deleted.

1 change: 0 additions & 1 deletion packages/x-tree-view/src/internals/hooks/useTimeout.ts

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import * as React from 'react';
import { useAssertModelConsistency } from '@mui/x-internals/useAssertModelConsistency';
import useEventCallback from '@mui/utils/useEventCallback';
import useEnhancedEffect from '@mui/utils/useEnhancedEffect';
import { useEventCallback } from '@base-ui-components/utils/useEventCallback';
import { useIsoLayoutEffect } from '@base-ui-components/utils/useIsoLayoutEffect';
import { TreeViewPlugin } from '../../models';
import {
UseTreeViewExpansionInstance,
Expand All @@ -26,7 +26,7 @@ export const useTreeViewExpansion: TreeViewPlugin<UseTreeViewExpansionSignature>
defaultValue: params.defaultExpandedItems,
});

useEnhancedEffect(() => {
useIsoLayoutEffect(() => {
const newExpansionTrigger = getExpansionTrigger({
isItemEditable: params.isItemEditable,
expansionTrigger: params.expansionTrigger,
Expand Down Expand Up @@ -132,7 +132,7 @@ export const useTreeViewExpansion: TreeViewPlugin<UseTreeViewExpansionSignature>
/**
* Update the controlled model when the `expandedItems` prop changes.
*/
useEnhancedEffect(() => {
useIsoLayoutEffect(() => {
const expandedItems = params.expandedItems;
if (expandedItems !== undefined) {
store.set('expansion', { ...store.state.expansion, expandedItems });
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import * as React from 'react';
import useEventCallback from '@mui/utils/useEventCallback';
import { useEventCallback } from '@base-ui-components/utils/useEventCallback';
import { EventHandlers } from '@mui/utils/types';
import { useStoreEffect } from '@mui/x-internals/store';
import { TreeViewPlugin } from '../../models';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
'use client';
import * as React from 'react';
import useEventCallback from '@mui/utils/useEventCallback';
import { useEventCallback } from '@base-ui-components/utils/useEventCallback';
import { TreeViewPlugin } from '../../models';
import {
UseTreeViewItemsSignature,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
'use client';
import * as React from 'react';
import { useStore } from '@mui/x-internals/store';
import useEventCallback from '@mui/utils/useEventCallback';
import useForkRef from '@mui/utils/useForkRef';
import useEnhancedEffect from '@mui/utils/useEnhancedEffect';
import { useEventCallback } from '@base-ui-components/utils/useEventCallback';
import { useMergedRefs } from '@base-ui-components/utils/useMergedRefs';
import { useIsoLayoutEffect } from '@base-ui-components/utils/useIsoLayoutEffect';
import { TreeViewItemPlugin, TreeViewItemMeta, TreeViewPlugin } from '../../models';
import { UseTreeViewJSXItemsSignature } from './useTreeViewJSXItems.types';
import { useTreeViewContext } from '../../TreeViewProvider';
Expand Down Expand Up @@ -119,11 +119,11 @@ const useTreeViewJSXItemsItemPlugin: TreeViewItemPlugin = ({ props, rootRef, con

const expandable = itemHasChildren(children);
const pluginContentRef = React.useRef<HTMLDivElement>(null);
const handleContentRef = useForkRef(pluginContentRef, contentRef);
const handleContentRef = useMergedRefs(pluginContentRef, contentRef);
const treeId = useStore(store, idSelectors.treeId);

// Prevent any flashing
useEnhancedEffect(() => {
useIsoLayoutEffect(() => {
const idAttribute = generateTreeItemIdAttribute({ itemId, treeId, id });
registerChild(idAttribute, itemId);

Expand All @@ -133,7 +133,7 @@ const useTreeViewJSXItemsItemPlugin: TreeViewItemPlugin = ({ props, rootRef, con
};
}, [store, instance, registerChild, unregisterChild, itemId, id, treeId]);

useEnhancedEffect(() => {
useIsoLayoutEffect(() => {
return instance.insertJSXItem({
id: itemId,
idAttribute: id,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
import * as React from 'react';
import { useStore } from '@mui/x-internals/store';
import { useRtl } from '@mui/system/RtlProvider';
import useEventCallback from '@mui/utils/useEventCallback';
import { useEventCallback } from '@base-ui-components/utils/useEventCallback';
import { TreeViewCancellableEvent } from '../../../models';
import { TreeViewItemMeta, TreeViewPlugin } from '../../models';
import {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import useEnhancedEffect from '@mui/utils/useEnhancedEffect';
import { useIsoLayoutEffect } from '@base-ui-components/utils/useIsoLayoutEffect';
import { TreeViewPlugin } from '../../models';
import { TreeViewItemId } from '../../../models';
import { UseTreeViewLabelSignature } from './useTreeViewLabel.types';
Expand Down Expand Up @@ -44,7 +44,7 @@ export const useTreeViewLabel: TreeViewPlugin<UseTreeViewLabelSignature> = ({ st
}
};

useEnhancedEffect(() => {
useIsoLayoutEffect(() => {
store.set('label', { ...store.state.items, isItemEditable: params.isItemEditable });
}, [store, params.isItemEditable]);

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import * as React from 'react';
import { useAssertModelConsistency } from '@mui/x-internals/useAssertModelConsistency';
import useEnhancedEffect from '@mui/utils/useEnhancedEffect';
import { useIsoLayoutEffect } from '@base-ui-components/utils/useIsoLayoutEffect';
import { TreeViewPlugin } from '../../models';
import { TreeViewItemId } from '../../../models';
import {
Expand Down Expand Up @@ -224,7 +224,7 @@ export const useTreeViewSelection: TreeViewPlugin<UseTreeViewSelectionSignature>
setSelectedItems(event, newSelectedItems);
};

useEnhancedEffect(() => {
useIsoLayoutEffect(() => {
store.set('selection', {
selectedItems:
params.selectedItems === undefined
Expand Down
4 changes: 2 additions & 2 deletions packages/x-tree-view/src/internals/useTreeView/useTreeView.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import * as React from 'react';
import { useRefWithInit } from '@base-ui-components/utils/useRefWithInit';
import { Store } from '@mui/x-internals/store';
import useForkRef from '@mui/utils/useForkRef';
import { useMergedRefs } from '@base-ui-components/utils/useMergedRefs';
import { EventHandlers } from '@mui/utils/types';
import {
TreeViewAnyPluginSignature,
Expand Down Expand Up @@ -81,7 +81,7 @@ export const useTreeView = <
const instance = useRefWithInit(() => ({}) as TreeViewInstance<TSignatures>).current;
const publicAPI = useTreeViewApiInitialization<TreeViewPublicAPI<TSignatures>>(apiRef);
const innerRootRef = React.useRef<HTMLUListElement>(null);
const handleRootRef = useForkRef(innerRootRef, rootRef);
const handleRootRef = useMergedRefs(innerRootRef, rootRef);

const store = useRefWithInit(() => {
const initialState = {} as TreeViewState<TSignaturesWithCorePluginSignatures>;
Expand Down
6 changes: 3 additions & 3 deletions packages/x-tree-view/src/useTreeItem/useTreeItem.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import * as React from 'react';
import { useStore } from '@mui/x-internals/store';
import { EventHandlers } from '@mui/utils/types';
import extractEventHandlers from '@mui/utils/extractEventHandlers';
import useForkRef from '@mui/utils/useForkRef';
import { useMergedRefs } from '@base-ui-components/utils/useMergedRefs';
import { TreeViewCancellableEvent } from '../models';
import {
UseTreeItemParameters,
Expand Down Expand Up @@ -65,8 +65,8 @@ export const useTreeItem = <
const { interactions, status } = useTreeItemUtils({ itemId, children });
const rootRefObject = React.useRef<HTMLLIElement>(null);
const contentRefObject = React.useRef<HTMLDivElement>(null);
const handleRootRef = useForkRef(rootRef, pluginRootRef, rootRefObject)!;
const handleContentRef = useForkRef(contentRef, contentRefObject)!;
const handleRootRef = useMergedRefs(rootRef, pluginRootRef, rootRefObject)!;
const handleContentRef = useMergedRefs(contentRef, contentRefObject)!;
const checkboxRef = React.useRef<HTMLButtonElement>(null);

const treeId = useStore(store, idSelectors.treeId);
Expand Down
Loading