We have released version 4.4 of MindFusion JavaScript Diagram library. It contains the following new features and improvements:
Web componentsThe library registers each control class as a web component. You can use the following tags to create corresponding components:
- <mindfusion-diagramview> creates a DiagramView instance.
- <mindfusion-ruler> creates a Ruler instance.
- <mindfusion-zoomcontrol> creates a ZoomControl instance.
- <mindfusion-overview> creates an Overview instance.
- <mindfusion-nodelistview> creates a NodeListView instance.
When instantiated as a web component, each control class creates required HTML elements as internal shadow DOM. You can get the JavaScript object corresponding to a web component by calling controls' find method with id argument.
<mindfusion-diagramview
id="diagramView"
style="position: absolute; left: 0px; top: 0px; right: 0px; bottom: 0px; overflow: auto;">
</mindfusion-diagramview>
var diagramView = DiagramView.find("diagramView");
var diagram = diagramView.diagram;
AnimationsThe library now includes several standard animation classes and methods.
The animate method of DiagramItem can run following animations:
- FillColorAnimation animates the fill color of nodes or link arrowheads.
- StrokeColorAnimation animates the color of node borders or link segments.
- OpacityAnimation animates items' opacity for fade-in and fade-out effects.
Following animations can be applied to DiagramNodes:
- BounceAnimation animates vertical position of nodes.
- ShakeAnimation animates horizontal position of nodes.
- PulseAnimation animates node's local scale factor.
- PathAnimation moves nodes along specified path.
The animate method of DiagramView can run following animations:
- ScrollAnimation animates the scroll position of a view.
- ZoomAnimation animates the zoom factor of a view.
DiagramLink improvements- Set the intermediateShape property to display arrowheads at the middle of each link segment. This could help users follow longer link paths. Intermediate arrowheads can be customized further by setting intermediateBrush and intermediateShapeSize.
- Set the allowSplitLinks property of Diagram to let users insert new link segments by dragging any point of a selected link's segment. In this mode users can also merge link segments by making them close to collinear, or by moving adjustment handles close to each other, as set via mergeThreshold.
Distribution for the latest version can be downloaded here, or from the
clients area on our site:
https://mindfusion.eu/JsDiagramTrial.zipUpdated scripts are also available as
@mindfusion/diagramming NPM package.
Enjoy!