@gravity-ui/graph
Version:
Modern graph editor component
15 lines (14 loc) • 618 B
JavaScript
import { isTBlock } from "../../components/canvas/blocks/Block";
import { useComputedSignal } from "./useSignal";
export function useBlockState(graph, block) {
return useComputedSignal(() => {
return graph.rootStore.blocksList.$blocksMap.value.get(isTBlock(block) ? block.id : block);
}, [graph, block]);
}
export function useSyncBlockState(graph, block) {
return graph.rootStore.blocksList.$blocksMap.value.get(isTBlock(block) ? block.id : block);
}
export function useBlockViewState(graph, block) {
const blockState = useBlockState(graph, block);
return blockState?.getViewComponent();
}