Skip to content

v0.14.0

Choose a tag to compare

@angel-ip angel-ip released this 30 Sep 15:54
· 721 commits to main since this release

@kanzo-tech/graph

The live layout runs only when someone asks for it. A graph draws the corpus's positions and
nothing moves them at load. GraphToolbar now always shows the layout controls: play runs the force
layout from where the points are, pause leaves them where they stopped. simulate still starts and
stops it from the host, but you no longer need it to offer the controls — if you passed simulate
only so the toolbar would show them, remove it. Changing a force preference re-runs a layout only
once one has been started, and releasing pinned nodes no longer starts one. Dragging a node works
with no layout running. The play button's label for a layout at rest is now "Run the layout".

The graph stays responsive on large corpora. Points and colours no longer animate into place
when tiles arrive: they appear where they belong, so a pan no longer keeps the canvas redrawing for
the better part of a second after it stops. Selecting, focusing and pinning a node, and hovering one,
no longer redo work proportional to the whole graph. Nothing to change in your code.

@kanzo-tech/mosaic, @kanzo-tech/ui

IdSetClient and IdSetClientOptions are gone from @kanzo-tech/mosaic and
@kanzo-tech/ui/analytics. To publish a set of ids into a Selection, call
selection.update(clausePoints([column], ids.map((id) => [id]), { source })) — clausePoints is
exported from both packages. To read the ids that survive the crossfilter, use useChartQuery.