/* * SPDX-FileCopyrightText: 2023 The Refinery Authors * * SPDX-License-Identifier: EPL-2.0 */ import Box from '@mui/material/Box'; import { useTheme } from '@mui/material/styles'; import { observer } from 'mobx-react-lite'; import { useResizeDetector } from 'react-resize-detector'; import Loading from '../Loading'; import { useRootStore } from '../RootStoreProvider'; import DotGraphVisualizer from './DotGraphVisualizer'; import VisibilityPanel from './VisibilityPanel'; import ZoomCanvas from './ZoomCanvas'; function GraphArea(): JSX.Element { const { editorStore } = useRootStore(); const { breakpoints } = useTheme(); const { ref, width, height } = useResizeDetector({ refreshMode: 'debounce', }); if (editorStore === undefined) { return ; } const { graph } = editorStore; const breakpoint = breakpoints.values.sm; const dialog = width === undefined || height === undefined || width < breakpoint || height < breakpoint; return ( {(fitZoom) => } ); } export default observer(GraphArea);