Observers topic

Observers follow cache entries and report a result on every change: QueryObserver for one query, InfiniteQueryObserver for paged data, QueriesObserver for a list of queries, MutationObserver for one mutation and MutationStateObserver for a selection over all of them. The Flutter binding is built on them.

Classes

InfiniteQueryObserver<TPageData, TPageParam, TData> Observers
Watches one infinite query, and pages it.
MutationObserver<TData, TVariables, TOnMutateResult> Observers
Runs mutations and reports the latest one's state as a MutationResult.
MutationStateObserver<TSelected> Observers
Watches a selection over every mutation in the cache, in submission order — not just the ones one observer started.
QueriesObserver<TQueryData, TData> Observers
Watches a list of queries at once and reports their results as one list, in the order the queries were given.
QueryObserver<TQueryData, TData> Observers
Watches one query in a QueryClient's cache and reports its state to listeners as a QueryResult.

Typedefs

MutationObserverListener<TData, TVariables> = void Function(MutationResult<TData, TVariables> result) Observers
What a MutationObserver.subscribe listener receives: the new MutationResult, each time it changes.
MutationStateSelect<TSelected> = TSelected Function(Mutation<Object?, Object?, Object?> mutation) Observers
Selects a value from each matching mutation, including concurrent runs sharing one key. The mutation's type arguments are erased because filters span data types; TypedMutationStateSelect is the typed form.
QueryObserverListener<TData> = void Function(QueryResult<TData> result) Observers
What a QueryObserver.subscribe listener receives: the new QueryResult, each time it changes.
TypedMutationStateSelect<TData, TVariables, TOnMutateResult, TSelected> = TSelected Function(Mutation<TData, TVariables, TOnMutateResult> mutation) Observers
MutationStateSelect over mutations of one type: what MutationStateObserver.typed takes.