What's New
- Gradient Links - Smooth color transitions between source and target nodes using LinearGradient shaders
- Texture Overlay - Optional subtle patterns on links for enhanced visual depth
- HSL Selection Borders - Contrasting borders on selected nodes using intelligent color manipulation
- Type Safety - Strongly typed
SankeyLink.sourceandSankeyLink.targetasSankeyNode - Improved API - New
onNodeSelected(SankeyNode?)callback with full node object access - Responsive Example - Demo app with
LayoutBuilderfor adaptive sizing
Enhancements
- Renamed node position fields from
x0/x1/y0/y1toleft/right/top/bottomfor clarity - Added
SankeyNode.displayLabelgetter that returns label or falls back toid.toString() - Added
SankeyNode.contains(Offset)method for cleaner tap detection - Fixed
shouldRepaintto properly trigger repaints whenshowLabelsorshowTexturechange - Added comprehensive widget tests
Breaking Changes
- Removed deprecated
onNodeTap(int?)callback. UseonNodeSelected(SankeyNode?)instead.
Thanks to @jheyne for the gradient rendering contribution!