Thanks to visit codestin.com
Credit goes to reactflow.dev

Skip to Content
ExamplesFeature Overview

Feature Overview

This is an overview example of what’s possible with React Flow. Below you can see features like: built-in node and edge types, sub flows, NodeToolbar, NodeResizer components. On the bottom you see the Controls and the MiniMap components.

import React, { useCallback } from 'react'; import { ReactFlow, addEdge, MiniMap, Controls, Background, useNodesState, useEdgesState, } from '@xyflow/react'; import '@xyflow/react/dist/style.css'; import { nodes as initialNodes, edges as initialEdges, } from './initial-elements'; import AnnotationNode from './AnnotationNode'; import ToolbarNode from './ToolbarNode'; import ResizerNode from './ResizerNode'; import CircleNode from './CircleNode'; import TextInputNode from './TextInputNode'; import ButtonEdge from './ButtonEdge'; const nodeTypes = { annotation: AnnotationNode, tools: ToolbarNode, resizer: ResizerNode, circle: CircleNode, textinput: TextInputNode, }; const edgeTypes = { button: ButtonEdge, }; const nodeClassName = (node) => node.type; const OverviewFlow = () => { const [nodes, setNodes, onNodesChange] = useNodesState(initialNodes); const [edges, setEdges, onEdgesChange] = useEdgesState(initialEdges); const onConnect = useCallback( (params) => setEdges((eds) => addEdge(params, eds)), [], ); return ( <ReactFlow nodes={nodes} edges={edges} onNodesChange={onNodesChange} onEdgesChange={onEdgesChange} onConnect={onConnect} fitView attributionPosition="top-right" nodeTypes={nodeTypes} edgeTypes={edgeTypes} > <MiniMap zoomable pannable nodeClassName={nodeClassName} /> <Controls /> <Background /> </ReactFlow> ); }; export default OverviewFlow;
Last updated on