
Adds new Hierarchy layout.
Features
- The concept of
ui states
was extracted from the Surface component and moved into a plugin, in a new package@jsplumbtoolkit/browser-ui-plugin-ui-states
. This functionality lends itself well to being in a plugin, and moving this code out from the Surface shaves a few kilobytes off the size of your bundles if you don't make use of it. - Several parameters used to configure the behavior of the mouse wheel, which were deprecated in 5.3.0, have now been moved/renamed.
- A brand new layout has been introduced - the
Hierarchy
layout. This layout is an implementation of the 'Sugiyama' algorithm, in which nodes are grouped into layers which are then reordered with a view to reducing edge crossings. The Hierarchy layout has an advantage over jsPlumb's Hierarchical layout as it does not expect each node to have only a single parent, and datasets in which nodes do have multiple parents (and edges that traverse more than one level in the hierarchy) are handled much better by the Hierarchy layout than the Hierarchical layout.