MCPcopy Index your code
hub / github.com/HuolalaTech/react-query-kit / createBaseQuery

Function createBaseQuery

src/createBaseQuery.ts:18–91  ·  view source on GitHub ↗
(
  defaultOptions: any,
  useRQHook: (options: any, queryClient?: any) => any,
  overrideOptions?: Partial<UseInfiniteQueryOptions>
)

Source from the content-addressed store, hash-verified

16}
17
18export const createBaseQuery = (
19 defaultOptions: any,
20 useRQHook: (options: any, queryClient?: any) => any,
21 overrideOptions?: Partial<UseInfiniteQueryOptions>
22): any => {
23 if (process.env.NODE_ENV !== 'production') {
24 // @ts-ignore
25 if (defaultOptions.useDefaultOptions) {
26 console.error(
27 '[Bug] useDefaultOptions is not supported, please use middleware instead.'
28 )
29 }
30
31 // @ts-ignore
32 if (defaultOptions.queryFn) {
33 console.error(
34 '[Bug] queryFn is not supported, please use fetcher instead.'
35 )
36 }
37 }
38
39 const getQueryOptions = (fetcherFn: any, variables: any) => {
40 return {
41 queryFn:
42 variables && variables === ReactQuery.skipToken
43 ? ReactQuery.skipToken
44 : (context: QueryFunctionContext) => fetcherFn(variables, context),
45 queryKey: getFullKey(defaultOptions.queryKey, variables),
46 }
47 }
48
49 const getKey = (variables?: any) =>
50 getFullKey(defaultOptions.queryKey, variables)
51
52 const getOptions = (variables: any) => {
53 return {
54 ...defaultOptions,
55 ...getQueryOptions(defaultOptions.fetcher, variables),
56 }
57 }
58
59 const getFetchOptions = (variables: any) => {
60 return {
61 ...getQueryOptions(defaultOptions.fetcher, variables),
62 queryKeyHashFn: defaultOptions.queryKeyHashFn,
63 getPreviousPageParam: defaultOptions.getPreviousPageParam,
64 getNextPageParam: defaultOptions.getNextPageParam,
65 initialPageParam: defaultOptions.initialPageParam,
66 staleTime: defaultOptions.staleTime,
67 gcTime: defaultOptions.gcTime,
68 }
69 }
70
71 const useBaseHook = (
72 options: QueryBaseHookOptions,
73 queryClient?: QueryClient
74 ) => {
75 return useRQHook(

Callers 4

createInfiniteQueryFunction · 0.90
createQueryFunction · 0.90
createSuspenseQueryFunction · 0.90

Calls 1

withMiddlewareFunction · 0.90

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…