|
@@ -17,6 +17,7 @@ import ReactFlow, {
|
|
|
useEdgesState,
|
|
|
useNodesState,
|
|
|
useOnViewportChange,
|
|
|
+ useReactFlow,
|
|
|
} from 'reactflow'
|
|
|
import type { Viewport } from 'reactflow'
|
|
|
import 'reactflow/dist/style.css'
|
|
@@ -71,6 +72,7 @@ const Workflow: FC<WorkflowProps> = memo(({
|
|
|
edges: originalEdges,
|
|
|
viewport,
|
|
|
}) => {
|
|
|
+ const reactflow = useReactFlow()
|
|
|
const [nodes, setNodes] = useNodesState(originalNodes)
|
|
|
const [edges, setEdges] = useEdgesState(originalEdges)
|
|
|
const showFeaturesPanel = useStore(state => state.showFeaturesPanel)
|
|
@@ -91,6 +93,17 @@ const Workflow: FC<WorkflowProps> = memo(({
|
|
|
}
|
|
|
})
|
|
|
|
|
|
+ useEffect(() => {
|
|
|
+ setNodes(originalNodes)
|
|
|
+ }, [originalNodes, setNodes])
|
|
|
+ useEffect(() => {
|
|
|
+ setEdges(originalEdges)
|
|
|
+ }, [originalEdges, setEdges])
|
|
|
+ useEffect(() => {
|
|
|
+ if (viewport)
|
|
|
+ reactflow.setViewport(viewport)
|
|
|
+ }, [reactflow, viewport])
|
|
|
+
|
|
|
useEffect(() => {
|
|
|
setAutoFreeze(false)
|
|
|
|