sliver_tree/synced_sliver_tree library

A declarative sliver tree with data-first input modes.

SyncedSliverTree owns both a TreeController and a TreeSyncController internally. Callers provide domain data through one of five input shapes:

The widget diffs the normalized tree on rebuild and applies animated insertions, removals, and reparenting.

Classes

SyncedSliverTree<TKey, TItem>
A sliver widget that declaratively displays a tree and animates changes.
TreeItemView<TKey, TItem>
Rich view of a visible synced tree node passed to itemBuilder.
TreeSnapshot<TKey, TItem>
Immutable normalized tree structure consumed by SyncedSliverTree.

Extensions

TreeItemViewWatch on TreeItemView<TKey, TItem>

Typedefs

TreeItemBuilder<TKey, TItem> = Widget Function(BuildContext context, TreeItemView<TKey, TItem> node)
Builds a widget for a visible synced tree node.