Skip to content

feat(flow): edge marker/decoration library — crow's-foot, UML arrowheads, dashed message-flow, end labels #201

Description

@ivanmkc

Gap

The viewer sets only MarkerType.ArrowClosed by default (confirmed in flow.tsx); a per-edge markerEnd override exists but there is no library of edge-end decorations. ER, UML, and BPMN are all unrenderable natively as a result:

  • ER crow's-foot — each end carries a (modality, cardinality) pair: ||, o|, }|, }o (Creately). This is the missing half of our otherwise-good entity node.
  • UML — association, aggregation (hollow ◇), composition (filled ◆), generalization (hollow ▷), realization (dashed + hollow ▷) (Visual Paradigm).
  • BPMN message flow — dashed line + open-circle origin + open arrowhead.
  • Plus open arrow, filled/hollow diamond, circle.

Proposal

  • An edge marker enum (start + end) covering the set above, rendered as SVG marker defs.
  • dash/dot edge style knob surfaced as a recipe option.
  • Optional sourceLabel / targetLabel end-labels (for multiplicity 0..1/1..*, protocols, roles) — today every edge has one mid-label only.

Surface / effort

Viewer only (marker SVG set + edge style passthrough + recipe knobs). M. Roughly doubles the diagram families we can render natively (ER + UML class + BPMN message-flow).

Part of the external-flowchart parity audit (see tracking epic).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions