UNPKG

@tanstack/react-query

Version:

Hooks for managing, caching and syncing asynchronous and remote data in React

102 lines (99 loc) 2.23 kB
'use client' import { InfiniteQueryObserver, parseQueryArgs } from '@tanstack/query-core' import { useBaseQuery } from './useBaseQuery' import type { QueryFunction, QueryKey, QueryObserver, } from '@tanstack/query-core' import type { UseInfiniteQueryOptions, UseInfiniteQueryResult } from './types' // HOOK export function useInfiniteQuery< TQueryFnData = unknown, TError = unknown, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, >( options: UseInfiniteQueryOptions< TQueryFnData, TError, TData, TQueryFnData, TQueryKey >, ): UseInfiniteQueryResult<TData, TError> export function useInfiniteQuery< TQueryFnData = unknown, TError = unknown, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, >( queryKey: TQueryKey, options?: Omit< UseInfiniteQueryOptions< TQueryFnData, TError, TData, TQueryFnData, TQueryKey >, 'queryKey' >, ): UseInfiniteQueryResult<TData, TError> export function useInfiniteQuery< TQueryFnData = unknown, TError = unknown, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, >( queryKey: TQueryKey, queryFn: QueryFunction<TQueryFnData, TQueryKey>, options?: Omit< UseInfiniteQueryOptions< TQueryFnData, TError, TData, TQueryFnData, TQueryKey >, 'queryKey' | 'queryFn' >, ): UseInfiniteQueryResult<TData, TError> export function useInfiniteQuery< TQueryFnData, TError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, >( arg1: | TQueryKey | UseInfiniteQueryOptions< TQueryFnData, TError, TData, TQueryFnData, TQueryKey >, arg2?: | QueryFunction<TQueryFnData, TQueryKey> | UseInfiniteQueryOptions< TQueryFnData, TError, TData, TQueryFnData, TQueryKey >, arg3?: UseInfiniteQueryOptions< TQueryFnData, TError, TData, TQueryFnData, TQueryKey >, ): UseInfiniteQueryResult<TData, TError> { const options = parseQueryArgs(arg1, arg2, arg3) return useBaseQuery( options, InfiniteQueryObserver as typeof QueryObserver, ) as UseInfiniteQueryResult<TData, TError> }