teksilo-data 0.9.2

Reactive data models for Teksilo — list, tree, selection and sort-filter projections, with no GUI dependency.
Documentation

Data model abstractions for Teksilo.

Provides reactive collection types (ListModel<T>, TreeModel<T>) and change notification enums (DataChange, TreeChange) for data-driven widgets like ListView, TreeView, and Repeater.

The two source traits — [ListDataSource] (flat) and [TreeDataSource] (hierarchical) — are the read-and-command interfaces every data view talks to. ListModel / TreeModel are built-in implementations; an external source of truth (e.g. a Qleany entity store) implements a source trait directly and so never mirrors itself into a built-in model. Each trait carries a capability protocol — identity (key_at/index_of), DnD validation (drag/can_accept/accept_drop/on_drag_out), and lazy loading (row_state/request_window/can_fetch_more/fetch_more) — as defaulted methods (see [dnd_types]).

Chart data follows the same shape: [ChartModel<T>] is the reactive, multi-series primary model (mirroring ListModel/TreeModel), with [ChartWindow<T>] / [ChartAggregate<T>] streaming/rollup projections and [ChartSelection] for point-level selection.