features/wallet/wallet_activity_controller library

Classes

WalletActivityController
WalletActivityState
The activity list's accumulating state (FR-1 keyset pagination). Holds the rows fetched so far and the OPAQUE cursor to continue (nextCursor non-null ⇔ more rows may follow). Rust stays the source of truth — this is ephemeral presentation state (the visible window of the history), never a Dart cache of authoritative data (design invariant 1).

Enums

WalletActivityPhase
Where the activity list is in its load cycle. The rows are carried alongside (in WalletActivityState) so they STAY visible across a refresh/load-more fault — a busy-DB throw must never blank a populated history (invariant 10, the §3.3 last-known-through-error contract the snapshot also honors).

Properties

walletActivityProvider → NotifierProvider<WalletActivityController, WalletActivityState>
Drives the activity list (FR-1): the first page on (re)build, loadMore to page the keyset cursor, refresh to re-read page 1 WITHOUT blanking the current rows (the sync-edge update). Rebuilt — fresh first page — when its one dependency, walletSessionProvider, changes (e.g. the rescan session swap), which is exactly the right reset (the rebuilt DB repopulates from page 1).
final