feat: add interactive ProcessDiagram SVG component (sub-project 1/3)
New interactive route diagram component with SVG rendering using server-computed ELK layout coordinates. TIBCO BW5-inspired top-bar card node style with zoom/pan, hover toolbars, config badges, and error handler sections below the main flow. Backend: add direction query parameter (LR/TB) to diagram render endpoints, defaulting to left-to-right layout. Frontend: 14-file ProcessDiagram component in ui/src/components/ with DiagramNode, CompoundNode, DiagramEdge, ConfigBadge, NodeToolbar, ErrorSection, ZoomControls, and supporting hooks. Dev test page at /dev/diagram for validation. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -19,4 +19,14 @@ public interface DiagramRenderer {
|
||||
* Compute a positioned JSON layout for the route graph.
|
||||
*/
|
||||
DiagramLayout layoutJson(RouteGraph graph);
|
||||
|
||||
/**
|
||||
* Compute a positioned JSON layout with a specific flow direction.
|
||||
*
|
||||
* @param graph the route graph
|
||||
* @param direction "LR" for left-to-right, "TB" for top-to-bottom
|
||||
*/
|
||||
default DiagramLayout layoutJson(RouteGraph graph, String direction) {
|
||||
return layoutJson(graph);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user