query<T> function

BloomQuery<T> query<T>({
  1. required List key,
  2. required Future<T> fetch(),
  3. Duration staleTime = const Duration(minutes: 5),
  4. Duration cacheTime = const Duration(minutes: 30),
  5. bool enabled = true,
  6. T? initialData,
})

Creates a reactive BloomQuery configured with key, fetch, and caching durations.

Convenience factory function for BloomQuery.

final todosQuery = query<List<Todo>>(
  key: ['todos'],
  fetch: () => api.getTodoList(),
  staleTime: Duration(minutes: 5),
);

Implementation

BloomQuery<T> query<T>({
  required List<dynamic> key,
  required Future<T> Function() fetch,
  Duration staleTime = const Duration(minutes: 5),
  Duration cacheTime = const Duration(minutes: 30),
  bool enabled = true,
  T? initialData,
}) {
  return BloomQuery<T>(
    key: key,
    fetch: fetch,
    staleTime: staleTime,
    cacheTime: cacheTime,
    enabled: enabled,
    initialData: initialData,
  );
}