Skip to Content

EdgeProps

Source on GitHub

When you implement a custom edge it is wrapped in a component that enables some basic functionality. Your custom edge component receives the following props:

export type EdgeProps<EdgeType extends Edge = Edge> = { id: string; animated: boolean; data: EdgeType['data']; style: React.CSSProperties; selected: boolean; source: string; target: string; sourceHandleId?: string | null; targetHandleId?: string | null; interactionWidth: number; sourceX: number; sourceY: number; targetX: number; targetY: number; sourcePosition: Position; targetPosition: Position; label?: string | React.ReactNode; labelStyle?: React.CSSProperties; labelShowBg?: boolean; labelBgStyle?: CSSProperties; labelBgPadding?: [number, number]; labelBgBorderRadius?: number; markerStart?: string; markerEnd?: string; pathOptions?: any; };

Fields

NameTypeDefault
idEdgeType["id"]

Unique id of an edge.

animatedEdgeType["animated"]
dataEdgeType["data"]

Arbitrary data passed to an edge.

styleEdgeType["style"]
selectedEdgeType["selected"]
sourceEdgeType["source"]

Id of source node.

targetEdgeType["target"]

Id of target node.

selectableEdgeType["selectable"]
deletableEdgeType["deletable"]
sourceXnumber
sourceYnumber
targetXnumber
targetYnumber
sourcePositionPosition
targetPositionPosition
labelReactNode

The label or custom element to render along the edge. This is commonly a text label or some custom controls.

labelStyleCSSProperties

Custom styles to apply to the label.

labelShowBgboolean
labelBgStyleCSSProperties
labelBgPadding[number, number]
labelBgBorderRadiusnumber
sourceHandleIdstring | null
targetHandleIdstring | null
markerStartstring
markerEndstring
pathOptionsany
interactionWidthnumber
Last updated on