useQueries<TData, TError> function

List<UseQueryResult<TData, TError>> useQueries<TData, TError>(
  1. List<UseQueriesOptions<TData, TError>> options
)

Implementation

List<UseQueryResult<TData, TError>> useQueries<TData, TError>(
  List<UseQueriesOptions<TData, TError>> options,
) {
  final client = useQueryClient();
  final observer = useMemoized(
    () => QueriesObserver<TData, TError>(
      client: client,
    ),
  );

  useListenable(observer);

  useEffect(() {
    observer.setOptions(options);
    return null;
  }, options);

  useEffect(() {
    return () {
      observer.destroy();
    };
  }, [observer]);

  return observer.observers
      .map(
        (observer) => UseQueryResult(
          data: observer.query.state.data,
          dataUpdatedAt: observer.query.state.dataUpdatedAt,
          error: observer.query.state.error,
          errorUpdatedAt: observer.query.state.errorUpdatedAt,
          isError: observer.query.state.isError,
          isLoading: observer.query.state.isLoading,
          isFetching: observer.query.state.isFetching,
          isSuccess: observer.query.state.isSuccess,
          status: observer.query.state.status,
          refetch: observer.fetch,
          isInvalidated: observer.query.state.isInvalidated,
          isRefetchError: observer.query.state.isRefetchError,
        ),
      )
      .toList();
}