query<T> function
Creates a declarative, cached asynchronous query.
Example:
final postsQuery = query<List<Post>>(
key: ['posts'],
fetch: () => api.fetchPosts(),
staleTime: const Duration(minutes: 2),
);
Implementation
BloomQuery<T> query<T>({
required List<dynamic> key,
required QueryFetcher<T> fetch,
Duration staleTime = const Duration(minutes: 5),
Duration cacheTime = const Duration(minutes: 30),
bool enabled = true,
int retry = 2,
Duration retryDelay = const Duration(milliseconds: 500),
}) {
return BloomQuery<T>(
key: key,
fetch: fetch,
staleTime: staleTime,
cacheTime: cacheTime,
enabled: enabled,
retry: retry,
retryDelay: retryDelay,
);
}