Connector routing
Package: vyuh_diagram_extension_connectors. Optional commercial extension; import it alongside vyuh_diagram_flutter in a Flutter application, or alongside core in Dart.
Public entry points
ConnectorsExtension({routes = ConnectorRoutes.all, arrowheads = true}), id vyuh.connectors: the elbow and curved routes and the full arrowhead set, in one extension. Limit routes to the ones your application offers, or turn arrowheads off. Install it once in the configuration's extensions; it supplies headless providers, and shared rendering consumes their output.
The extension owns its route identities: ConnectorRoutes.orthogonal, ConnectorRoutes.quadratic and ConnectorRoutes.bezier. The library exports only ConnectorsExtension and ConnectorRoutes; the route providers behind those names are private to the package. Core keeps only ConnectorRoute.straight. Each provider declares its options schema and capabilities: an installed route places its own bend handle, and a route whose control editor moves free points draws arms from its terminals to its controls on the canvas.
dart
import 'package:vyuh_diagram_extension_connectors/vyuh_diagram_extension_connectors.dart';
import 'package:vyuh_diagram_extension_editor/vyuh_diagram_extension_editor.dart';
import 'package:vyuh_diagram_flutter/vyuh_diagram_flutter.dart';
final controller = DiagramController(
configuration: DiagramConfiguration(
extensions: [EditorExtension(), ConnectorsExtension()],
),
);
controller.edits.connect('a', 'b', route: ConnectorRoutes.orthogonal);Routes are a separate contribution from connector definitions: any connector type may select any installed route, as the inspector's route choice does.
See connectors API for the shared commands and configuration.