@trpc/react-query 11.0.0-rc.485 → 11.0.0-rc.487

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,12 +1,12 @@
1
1
  {
2
- "bundleSize": 34530,
3
- "bundleOrigSize": 72782,
4
- "bundleReduction": 52.56,
2
+ "bundleSize": 36931,
3
+ "bundleOrigSize": 75935,
4
+ "bundleReduction": 51.36,
5
5
  "modules": [
6
6
  {
7
7
  "id": "/src/shared/hooks/createHooksInternal.tsx",
8
- "size": 13936,
9
- "origSize": 15882,
8
+ "size": 16337,
9
+ "origSize": 18424,
10
10
  "renderedExports": [
11
11
  "createRootHooks"
12
12
  ],
@@ -14,8 +14,8 @@
14
14
  "dependents": [
15
15
  "/src/createTRPCReact.tsx"
16
16
  ],
17
- "percent": 40.36,
18
- "reduction": 12.25
17
+ "percent": 44.24,
18
+ "reduction": 11.33
19
19
  },
20
20
  {
21
21
  "id": "/src/utils/createUtilityFunctions.ts",
@@ -29,7 +29,7 @@
29
29
  "/src/createTRPCQueryUtils.tsx",
30
30
  "/src/shared/hooks/createHooksInternal.tsx"
31
31
  ],
32
- "percent": 13.36,
32
+ "percent": 12.49,
33
33
  "reduction": 2.31
34
34
  },
35
35
  {
@@ -43,7 +43,7 @@
43
43
  "dependents": [
44
44
  "/src/server/index.ts"
45
45
  ],
46
- "percent": 10.1,
46
+ "percent": 9.44,
47
47
  "reduction": 52.58
48
48
  },
49
49
  {
@@ -59,7 +59,7 @@
59
59
  "dependents": [
60
60
  "/src/shared/index.ts"
61
61
  ],
62
- "percent": 9.82,
62
+ "percent": 9.18,
63
63
  "reduction": 72.89
64
64
  },
65
65
  {
@@ -71,7 +71,7 @@
71
71
  ],
72
72
  "removedExports": [],
73
73
  "dependents": [],
74
- "percent": 9.36,
74
+ "percent": 8.75,
75
75
  "reduction": 39.66
76
76
  },
77
77
  {
@@ -93,13 +93,13 @@
93
93
  "/src/shared/proxy/useQueriesProxy.ts",
94
94
  "/src/shared/hooks/createHooksInternal.tsx"
95
95
  ],
96
- "percent": 7.26,
96
+ "percent": 6.79,
97
97
  "reduction": 40.21
98
98
  },
99
99
  {
100
100
  "id": "/src/createTRPCReact.tsx",
101
101
  "size": 875,
102
- "origSize": 8354,
102
+ "origSize": 8965,
103
103
  "renderedExports": [
104
104
  "createHooksInternal",
105
105
  "createTRPCReact"
@@ -108,8 +108,8 @@
108
108
  "dependents": [
109
109
  "/src/index.ts"
110
110
  ],
111
- "percent": 2.53,
112
- "reduction": 89.53
111
+ "percent": 2.37,
112
+ "reduction": 90.24
113
113
  },
114
114
  {
115
115
  "id": "/src/shared/proxy/decorationProxy.ts",
@@ -122,7 +122,7 @@
122
122
  "dependents": [
123
123
  "/src/shared/index.ts"
124
124
  ],
125
- "percent": 2.26,
125
+ "percent": 2.12,
126
126
  "reduction": 24
127
127
  },
128
128
  {
@@ -137,7 +137,7 @@
137
137
  "/src/shared/index.ts",
138
138
  "/src/shared/hooks/createHooksInternal.tsx"
139
139
  ],
140
- "percent": 1.65,
140
+ "percent": 1.54,
141
141
  "reduction": 82.1
142
142
  },
143
143
  {
@@ -153,7 +153,7 @@
153
153
  "/src/shared/hooks/createHooksInternal.tsx",
154
154
  "/src/utils/createUtilityFunctions.ts"
155
155
  ],
156
- "percent": 1.37,
156
+ "percent": 1.28,
157
157
  "reduction": 17.31
158
158
  },
159
159
  {
@@ -167,7 +167,7 @@
167
167
  "dependents": [
168
168
  "/src/shared/hooks/createHooksInternal.tsx"
169
169
  ],
170
- "percent": 0.64,
170
+ "percent": 0.6,
171
171
  "reduction": 37.82
172
172
  },
173
173
  {
@@ -181,7 +181,7 @@
181
181
  "dependents": [
182
182
  "/src/index.ts"
183
183
  ],
184
- "percent": 0.47,
184
+ "percent": 0.44,
185
185
  "reduction": 66.6
186
186
  },
187
187
  {
@@ -199,7 +199,7 @@
199
199
  "/src/shared/proxy/utilsProxy.ts",
200
200
  "/src/shared/hooks/createHooksInternal.tsx"
201
201
  ],
202
- "percent": 0.45,
202
+ "percent": 0.42,
203
203
  "reduction": 97.85
204
204
  },
205
205
  {
@@ -213,7 +213,7 @@
213
213
  "dependents": [
214
214
  "/src/shared/index.ts"
215
215
  ],
216
- "percent": 0.37,
216
+ "percent": 0.35,
217
217
  "reduction": 74.9
218
218
  },
219
219
  {
@@ -2,7 +2,7 @@ import type { SkipToken } from '@tanstack/react-query';
2
2
  import type { TRPCClientErrorLike } from '@trpc/client';
3
3
  import type { AnyProcedure, AnyRootTypes, AnyRouter, inferProcedureInput, inferTransformedProcedureOutput, ProcedureType, ProtectedIntersection, RouterRecord } from '@trpc/server/unstable-core-do-not-import';
4
4
  import type { TRPCUseQueries, TRPCUseSuspenseQueries } from './internals/useQueries';
5
- import type { CreateReactUtils } from './shared';
5
+ import type { CreateReactUtils, TRPCFetchInfiniteQueryOptions, TRPCFetchQueryOptions } from './shared';
6
6
  import type { CreateReactQueryHooks } from './shared/hooks/createHooksInternal';
7
7
  import type { CreateClient, DefinedUseTRPCQueryOptions, DefinedUseTRPCQueryResult, TRPCProvider, UseTRPCInfiniteQueryOptions, UseTRPCInfiniteQueryResult, UseTRPCMutationOptions, UseTRPCMutationResult, UseTRPCQueryOptions, UseTRPCQueryResult, UseTRPCSubscriptionOptions, UseTRPCSuspenseInfiniteQueryOptions, UseTRPCSuspenseInfiniteQueryResult, UseTRPCSuspenseQueryOptions, UseTRPCSuspenseQueryResult } from './shared/hooks/types';
8
8
  import type { CreateTRPCReactOptions } from './shared/types';
@@ -25,6 +25,10 @@ export interface ProcedureUseQuery<TDef extends ResolverDef> {
25
25
  }>>;
26
26
  <TQueryFnData extends TDef['output'] = TDef['output'], TData = TQueryFnData>(input: TDef['input'] | SkipToken, opts?: UseTRPCQueryOptions<TQueryFnData, TData, TRPCClientErrorLike<TDef>, TDef['output']>): UseTRPCQueryResult<TData, TRPCClientErrorLike<TDef>>;
27
27
  }
28
+ /**
29
+ * @internal
30
+ */
31
+ export type ProcedureUsePrefetchQuery<TDef extends ResolverDef> = (input: TDef['input'] | SkipToken, opts?: TRPCFetchQueryOptions<TDef['output'], TRPCClientErrorLike<TDef>>) => void;
28
32
  /**
29
33
  * @remark `void` is here due to https://github.com/trpc/trpc/pull/4374
30
34
  */
@@ -40,6 +44,7 @@ export type MaybeDecoratedInfiniteQuery<TDef extends ResolverDef> = TDef['input'
40
44
  * @link https://trpc.io/docs/v11/client/react/suspense#useinfinitesuspensequery
41
45
  */
42
46
  useInfiniteQuery: (input: Omit<TDef['input'], ReservedInfiniteQueryKeys> | SkipToken, opts: UseTRPCInfiniteQueryOptions<TDef['input'], TDef['output'], TRPCClientErrorLike<TDef>>) => UseTRPCInfiniteQueryResult<TDef['output'], TRPCClientErrorLike<TDef>, TDef['input']>;
47
+ usePrefetchInfiniteQuery: (input: Omit<TDef['input'], ReservedInfiniteQueryKeys> | SkipToken, opts: TRPCFetchInfiniteQueryOptions<TDef['input'], TDef['output'], TRPCClientErrorLike<TDef>>) => void;
43
48
  /**
44
49
  * @link https://trpc.io/docs/v11/client/react/suspense
45
50
  */
@@ -53,6 +58,7 @@ export type DecoratedQueryMethods<TDef extends ResolverDef> = {
53
58
  * @link https://trpc.io/docs/v11/client/react/useQuery
54
59
  */
55
60
  useQuery: ProcedureUseQuery<TDef>;
61
+ usePrefetchQuery: ProcedureUsePrefetchQuery<TDef>;
56
62
  /**
57
63
  * @link https://trpc.io/docs/v11/client/react/suspense#usesuspensequery
58
64
  */
@@ -1 +1 @@
1
- {"version":3,"file":"createTRPCReact.d.ts","sourceRoot":"","sources":["../src/createTRPCReact.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createTRPCReact.d.ts","sourceRoot":"","sources":["../src/createTRPCReact.tsx"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import type { AnyRouter } from '@trpc/server/unstable-core-do-not-import';
3
3
  import type { TRPCContextState } from '../../internals/context';
4
4
  import type { TRPCUseQueries, TRPCUseSuspenseQueries } from '../../internals/useQueries';
5
5
  import type { CreateTRPCReactOptions } from '../types';
6
- import type { CreateClient, TRPCProvider, UseTRPCInfiniteQueryOptions, UseTRPCInfiniteQueryResult, UseTRPCMutationOptions, UseTRPCMutationResult, UseTRPCQueryOptions, UseTRPCQueryResult, UseTRPCSubscriptionOptions, UseTRPCSuspenseInfiniteQueryOptions, UseTRPCSuspenseInfiniteQueryResult, UseTRPCSuspenseQueryOptions, UseTRPCSuspenseQueryResult } from './types';
6
+ import type { CreateClient, TRPCProvider, UseTRPCInfiniteQueryOptions, UseTRPCInfiniteQueryResult, UseTRPCMutationOptions, UseTRPCMutationResult, UseTRPCPrefetchInfiniteQueryOptions, UseTRPCPrefetchQueryOptions, UseTRPCQueryOptions, UseTRPCQueryResult, UseTRPCSubscriptionOptions, UseTRPCSuspenseInfiniteQueryOptions, UseTRPCSuspenseInfiniteQueryResult, UseTRPCSuspenseQueryOptions, UseTRPCSuspenseQueryResult } from './types';
7
7
  /**
8
8
  * @internal
9
9
  */
@@ -13,12 +13,14 @@ export declare function createRootHooks<TRouter extends AnyRouter, TSSRContext =
13
13
  useContext: () => TRPCContextState<TRouter, TSSRContext>;
14
14
  useUtils: () => TRPCContextState<TRouter, TSSRContext>;
15
15
  useQuery: (path: readonly string[], input: unknown, opts?: UseTRPCQueryOptions<unknown, unknown, TRPCClientErrorLike<TRouter>>) => UseTRPCQueryResult<unknown, TRPCClientErrorLike<TRouter>>;
16
+ usePrefetchQuery: (path: string[], input: unknown, opts?: UseTRPCPrefetchQueryOptions<unknown, unknown, TRPCClientErrorLike<TRouter>>) => void;
16
17
  useSuspenseQuery: (path: readonly string[], input: unknown, opts?: UseTRPCSuspenseQueryOptions<unknown, unknown, TRPCClientErrorLike<TRouter>>) => UseTRPCSuspenseQueryResult<unknown, TRPCClientErrorLike<TRouter>>;
17
18
  useQueries: TRPCUseQueries<TRouter>;
18
19
  useSuspenseQueries: TRPCUseSuspenseQueries<TRouter>;
19
20
  useMutation: (path: readonly string[], opts?: UseTRPCMutationOptions<unknown, TRPCClientErrorLike<TRouter>, unknown, unknown>) => UseTRPCMutationResult<unknown, TRPCClientErrorLike<TRouter>, unknown, unknown>;
20
21
  useSubscription: (path: readonly string[], input: unknown, opts: UseTRPCSubscriptionOptions<unknown, TRPCClientErrorLike<TRouter>>) => void;
21
22
  useInfiniteQuery: (path: readonly string[], input: unknown, opts: UseTRPCInfiniteQueryOptions<unknown, unknown, TRPCClientErrorLike<TRouter>>) => UseTRPCInfiniteQueryResult<unknown, TRPCClientErrorLike<TRouter>, unknown>;
23
+ usePrefetchInfiniteQuery: (path: string[], input: unknown, opts: UseTRPCPrefetchInfiniteQueryOptions<unknown, unknown, TRPCClientErrorLike<TRouter>>) => void;
22
24
  useSuspenseInfiniteQuery: (path: readonly string[], input: unknown, opts: UseTRPCSuspenseInfiniteQueryOptions<unknown, unknown, TRPCClientErrorLike<TRouter>>) => UseTRPCSuspenseInfiniteQueryResult<unknown, TRPCClientErrorLike<TRouter>, unknown>;
23
25
  };
24
26
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"createHooksInternal.d.ts","sourceRoot":"","sources":["../../../src/shared/hooks/createHooksInternal.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAExD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAG1E,OAAO,KAAK,EAAY,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAS1E,OAAO,KAAK,EACV,cAAc,EACd,sBAAsB,EACvB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EAAE,sBAAsB,EAAuB,MAAM,UAAU,CAAC;AAC5E,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EAEZ,2BAA2B,EAC3B,0BAA0B,EAC1B,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EAClB,0BAA0B,EAC1B,mCAAmC,EACnC,kCAAkC,EAClC,2BAA2B,EAC3B,0BAA0B,EAC3B,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,wBAAgB,eAAe,CAC7B,OAAO,SAAS,SAAS,EACzB,WAAW,GAAG,OAAO,EACrB,MAAM,CAAC,EAAE,sBAAsB,CAAC,OAAO,CAAC;;;;;qBAmFhC,SAAS,MAAM,EAAE,SAChB,OAAO,SACP,mBAAmB,CAAC,OAAO,EAAE,OAAO,+BAAS,KACnD,kBAAkB,CAAC,OAAO,+BAAS;6BAqF9B,SAAS,MAAM,EAAE,SAChB,OAAO,SACP,2BAA2B,CAAC,OAAO,EAAE,OAAO,+BAAS,KAC3D,0BAA0B,CAAC,OAAO,+BAAS;;;wBAoCtC,SAAS,MAAM,EAAE,SAChB,sBAAsB,CAAC,OAAO,gCAAU,OAAO,EAAE,OAAO,CAAC,KAC/D,qBAAqB,CAAC,OAAO,gCAAU,OAAO,EAAE,OAAO,CAAC;4BAuCnD,SAAS,MAAM,EAAE,SAChB,OAAO,QACR,0BAA0B,CAAC,OAAO,+BAAS;6BA4C3C,SAAS,MAAM,EAAE,SAChB,OAAO,QACR,2BAA2B,CAAC,OAAO,EAAE,OAAO,+BAAS,KAC1D,0BAA0B,CAAC,OAAO,gCAAU,OAAO,CAAC;qCAuE/C,SAAS,MAAM,EAAE,SAChB,OAAO,QACR,mCAAmC,CAAC,OAAO,EAAE,OAAO,+BAAS,KAClE,kCAAkC,CAAC,OAAO,gCAAU,OAAO,CAAC;EAoHhE;AAED;;;GAGG;AACH,MAAM,MAAM,qBAAqB,CAC/B,OAAO,SAAS,SAAS,EACzB,WAAW,GAAG,OAAO,IACnB,UAAU,CAAC,OAAO,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"createHooksInternal.d.ts","sourceRoot":"","sources":["../../../src/shared/hooks/createHooksInternal.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAExD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAG1E,OAAO,KAAK,EAAY,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAS1E,OAAO,KAAK,EACV,cAAc,EACd,sBAAsB,EACvB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EAAE,sBAAsB,EAAuB,MAAM,UAAU,CAAC;AAC5E,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EAEZ,2BAA2B,EAC3B,0BAA0B,EAC1B,sBAAsB,EACtB,qBAAqB,EACrB,mCAAmC,EACnC,2BAA2B,EAC3B,mBAAmB,EACnB,kBAAkB,EAClB,0BAA0B,EAC1B,mCAAmC,EACnC,kCAAkC,EAClC,2BAA2B,EAC3B,0BAA0B,EAC3B,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,wBAAgB,eAAe,CAC7B,OAAO,SAAS,SAAS,EACzB,WAAW,GAAG,OAAO,EACrB,MAAM,CAAC,EAAE,sBAAsB,CAAC,OAAO,CAAC;;;;;qBAmFhC,SAAS,MAAM,EAAE,SAChB,OAAO,SACP,mBAAmB,CAAC,OAAO,EAAE,OAAO,+BAAS,KACnD,kBAAkB,CAAC,OAAO,+BAAS;6BAqF9B,MAAM,EAAE,SACP,OAAO,SACP,2BAA2B,CAAC,OAAO,EAAE,OAAO,+BAAS,KAC3D,IAAI;6BA+BC,SAAS,MAAM,EAAE,SAChB,OAAO,SACP,2BAA2B,CAAC,OAAO,EAAE,OAAO,+BAAS,KAC3D,0BAA0B,CAAC,OAAO,+BAAS;;;wBAoCtC,SAAS,MAAM,EAAE,SAChB,sBAAsB,CAAC,OAAO,gCAAU,OAAO,EAAE,OAAO,CAAC,KAC/D,qBAAqB,CAAC,OAAO,gCAAU,OAAO,EAAE,OAAO,CAAC;4BAuCnD,SAAS,MAAM,EAAE,SAChB,OAAO,QACR,0BAA0B,CAAC,OAAO,+BAAS;6BA4C3C,SAAS,MAAM,EAAE,SAChB,OAAO,QACR,2BAA2B,CAAC,OAAO,EAAE,OAAO,+BAAS,KAC1D,0BAA0B,CAAC,OAAO,gCAAU,OAAO,CAAC;qCAuE/C,MAAM,EAAE,SACP,OAAO,QACR,mCAAmC,CAAC,OAAO,EAAE,OAAO,+BAAS,KAClE,IAAI;qCA6CC,SAAS,MAAM,EAAE,SAChB,OAAO,QACR,mCAAmC,CAAC,OAAO,EAAE,OAAO,+BAAS,KAClE,kCAAkC,CAAC,OAAO,gCAAU,OAAO,CAAC;EAsHhE;AAED;;;GAGG;AACH,MAAM,MAAM,qBAAqB,CAC/B,OAAO,SAAS,SAAS,EACzB,WAAW,GAAG,OAAO,IACnB,UAAU,CAAC,OAAO,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC"}
@@ -151,6 +151,26 @@ var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
151
151
  });
152
152
  return hook;
153
153
  }
154
+ function usePrefetchQuery(path, input, opts) {
155
+ const context = useContext();
156
+ const queryKey = getQueryKey.getQueryKeyInternal(path, input, 'query');
157
+ const isInputSkipToken = input === reactQuery.skipToken;
158
+ const shouldAbortOnUnmount = opts?.trpc?.abortOnUnmount ?? config?.abortOnUnmount ?? context.abortOnUnmount;
159
+ reactQuery.usePrefetchQuery({
160
+ ...opts,
161
+ queryKey: queryKey,
162
+ queryFn: isInputSkipToken ? input : (queryFunctionContext)=>{
163
+ const actualOpts = {
164
+ trpc: {
165
+ ...shouldAbortOnUnmount ? {
166
+ signal: queryFunctionContext.signal
167
+ } : {}
168
+ }
169
+ };
170
+ return context.client.query(...getClientArgs.getClientArgs(queryKey, actualOpts));
171
+ }
172
+ });
173
+ }
154
174
  function useSuspenseQuery(path, input, opts) {
155
175
  const context = useContext();
156
176
  const queryKey = getQueryKey.getQueryKeyInternal(path, input, 'query');
@@ -293,6 +313,38 @@ var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
293
313
  });
294
314
  return hook;
295
315
  }
316
+ function usePrefetchInfiniteQuery(path, input, opts) {
317
+ const context = useContext();
318
+ const queryKey = getQueryKey.getQueryKeyInternal(path, input, 'infinite');
319
+ const defaultOpts = context.queryClient.getQueryDefaults(queryKey);
320
+ const isInputSkipToken = input === reactQuery.skipToken;
321
+ const ssrOpts = useSSRQueryOptionsIfNeeded(queryKey, {
322
+ ...defaultOpts,
323
+ ...opts
324
+ });
325
+ // request option should take priority over global
326
+ const shouldAbortOnUnmount = opts?.trpc?.abortOnUnmount ?? context.abortOnUnmount;
327
+ reactQuery.usePrefetchInfiniteQuery({
328
+ ...opts,
329
+ initialPageParam: opts.initialCursor ?? null,
330
+ queryKey,
331
+ queryFn: isInputSkipToken ? input : (queryFunctionContext)=>{
332
+ const actualOpts = {
333
+ ...ssrOpts,
334
+ trpc: {
335
+ ...ssrOpts?.trpc,
336
+ ...shouldAbortOnUnmount ? {
337
+ signal: queryFunctionContext.signal
338
+ } : {}
339
+ }
340
+ };
341
+ return context.client.query(...getClientArgs.getClientArgs(queryKey, actualOpts, {
342
+ pageParam: queryFunctionContext.pageParam ?? opts.initialCursor,
343
+ direction: queryFunctionContext.direction
344
+ }));
345
+ }
346
+ });
347
+ }
296
348
  function useSuspenseInfiniteQuery(path, input, opts) {
297
349
  const context = useContext();
298
350
  const queryKey = getQueryKey.getQueryKeyInternal(path, input, 'infinite');
@@ -374,12 +426,14 @@ var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
374
426
  useContext,
375
427
  useUtils: useContext,
376
428
  useQuery,
429
+ usePrefetchQuery,
377
430
  useSuspenseQuery,
378
431
  useQueries,
379
432
  useSuspenseQueries,
380
433
  useMutation,
381
434
  useSubscription,
382
435
  useInfiniteQuery,
436
+ usePrefetchInfiniteQuery,
383
437
  useSuspenseInfiniteQuery
384
438
  };
385
439
  }
@@ -1,4 +1,4 @@
1
- import { useQuery, useSuspenseQuery, useMutation, skipToken, hashKey, useInfiniteQuery, useSuspenseInfiniteQuery, useQueries, useSuspenseQueries } from '@tanstack/react-query';
1
+ import { useQuery, usePrefetchQuery, useSuspenseQuery, useMutation, skipToken, hashKey, useInfiniteQuery, usePrefetchInfiniteQuery, useSuspenseInfiniteQuery, useQueries, useSuspenseQueries } from '@tanstack/react-query';
2
2
  import { createTRPCUntypedClient } from '@trpc/client';
3
3
  import { isAsyncIterable } from '@trpc/server/unstable-core-do-not-import';
4
4
  import * as React from 'react';
@@ -130,6 +130,26 @@ import { createUseQueries } from '../proxy/useQueriesProxy.mjs';
130
130
  });
131
131
  return hook;
132
132
  }
133
+ function usePrefetchQuery$1(path, input, opts) {
134
+ const context = useContext();
135
+ const queryKey = getQueryKeyInternal(path, input, 'query');
136
+ const isInputSkipToken = input === skipToken;
137
+ const shouldAbortOnUnmount = opts?.trpc?.abortOnUnmount ?? config?.abortOnUnmount ?? context.abortOnUnmount;
138
+ usePrefetchQuery({
139
+ ...opts,
140
+ queryKey: queryKey,
141
+ queryFn: isInputSkipToken ? input : (queryFunctionContext)=>{
142
+ const actualOpts = {
143
+ trpc: {
144
+ ...shouldAbortOnUnmount ? {
145
+ signal: queryFunctionContext.signal
146
+ } : {}
147
+ }
148
+ };
149
+ return context.client.query(...getClientArgs(queryKey, actualOpts));
150
+ }
151
+ });
152
+ }
133
153
  function useSuspenseQuery$1(path, input, opts) {
134
154
  const context = useContext();
135
155
  const queryKey = getQueryKeyInternal(path, input, 'query');
@@ -272,6 +292,38 @@ import { createUseQueries } from '../proxy/useQueriesProxy.mjs';
272
292
  });
273
293
  return hook;
274
294
  }
295
+ function usePrefetchInfiniteQuery$1(path, input, opts) {
296
+ const context = useContext();
297
+ const queryKey = getQueryKeyInternal(path, input, 'infinite');
298
+ const defaultOpts = context.queryClient.getQueryDefaults(queryKey);
299
+ const isInputSkipToken = input === skipToken;
300
+ const ssrOpts = useSSRQueryOptionsIfNeeded(queryKey, {
301
+ ...defaultOpts,
302
+ ...opts
303
+ });
304
+ // request option should take priority over global
305
+ const shouldAbortOnUnmount = opts?.trpc?.abortOnUnmount ?? context.abortOnUnmount;
306
+ usePrefetchInfiniteQuery({
307
+ ...opts,
308
+ initialPageParam: opts.initialCursor ?? null,
309
+ queryKey,
310
+ queryFn: isInputSkipToken ? input : (queryFunctionContext)=>{
311
+ const actualOpts = {
312
+ ...ssrOpts,
313
+ trpc: {
314
+ ...ssrOpts?.trpc,
315
+ ...shouldAbortOnUnmount ? {
316
+ signal: queryFunctionContext.signal
317
+ } : {}
318
+ }
319
+ };
320
+ return context.client.query(...getClientArgs(queryKey, actualOpts, {
321
+ pageParam: queryFunctionContext.pageParam ?? opts.initialCursor,
322
+ direction: queryFunctionContext.direction
323
+ }));
324
+ }
325
+ });
326
+ }
275
327
  function useSuspenseInfiniteQuery$1(path, input, opts) {
276
328
  const context = useContext();
277
329
  const queryKey = getQueryKeyInternal(path, input, 'infinite');
@@ -353,12 +405,14 @@ import { createUseQueries } from '../proxy/useQueriesProxy.mjs';
353
405
  useContext,
354
406
  useUtils: useContext,
355
407
  useQuery: useQuery$1,
408
+ usePrefetchQuery: usePrefetchQuery$1,
356
409
  useSuspenseQuery: useSuspenseQuery$1,
357
410
  useQueries: useQueries$1,
358
411
  useSuspenseQueries: useSuspenseQueries$1,
359
412
  useMutation: useMutation$1,
360
413
  useSubscription,
361
414
  useInfiniteQuery: useInfiniteQuery$1,
415
+ usePrefetchInfiniteQuery: usePrefetchInfiniteQuery$1,
362
416
  useSuspenseInfiniteQuery: useSuspenseInfiniteQuery$1
363
417
  };
364
418
  }
@@ -1,4 +1,4 @@
1
- import type { DefinedUseQueryResult, DehydratedState, InfiniteData, InfiniteQueryObserverSuccessResult, InitialDataFunction, QueryObserverSuccessResult, QueryOptions, UseBaseQueryOptions, UseInfiniteQueryOptions, UseInfiniteQueryResult, UseMutationOptions, UseMutationResult, UseQueryResult, UseSuspenseInfiniteQueryOptions, UseSuspenseInfiniteQueryResult, UseSuspenseQueryOptions, UseSuspenseQueryResult } from '@tanstack/react-query';
1
+ import type { DefinedUseQueryResult, DehydratedState, FetchInfiniteQueryOptions, FetchQueryOptions, InfiniteData, InfiniteQueryObserverSuccessResult, InitialDataFunction, QueryObserverSuccessResult, QueryOptions, UseBaseQueryOptions, UseInfiniteQueryOptions, UseInfiniteQueryResult, UseMutationOptions, UseMutationResult, UseQueryResult, UseSuspenseInfiniteQueryOptions, UseSuspenseInfiniteQueryResult, UseSuspenseQueryOptions, UseSuspenseQueryResult } from '@tanstack/react-query';
2
2
  import type { CreateTRPCClientOptions, TRPCRequestOptions, TRPCUntypedClient } from '@trpc/client';
3
3
  import type { AnyRouter, DistributiveOmit } from '@trpc/server/unstable-core-do-not-import';
4
4
  import type { ReactNode } from 'react';
@@ -28,6 +28,8 @@ export interface UseTRPCQueryOptions<TOutput, TData, TError, TQueryOptsData = TO
28
28
  }
29
29
  export interface UseTRPCSuspenseQueryOptions<TOutput, TData, TError> extends DistributiveOmit<UseSuspenseQueryOptions<TOutput, TError, TData, any>, 'queryKey'>, TRPCUseQueryBaseOptions {
30
30
  }
31
+ export interface UseTRPCPrefetchQueryOptions<TOutput, TData, TError> extends DistributiveOmit<FetchQueryOptions<TOutput, TError, TData, any>, 'queryKey'>, TRPCUseQueryBaseOptions {
32
+ }
31
33
  /** @internal **/
32
34
  export interface DefinedUseTRPCQueryOptions<TOutput, TData, TError, TQueryOptsData = TOutput> extends DistributiveOmit<UseTRPCQueryOptions<TOutput, TData, TError, TQueryOptsData>, 'queryKey'> {
33
35
  initialData: InitialDataFunction<TQueryOptsData> | TQueryOptsData;
@@ -41,6 +43,9 @@ export type ExtractCursorType<TInput> = TInput extends {
41
43
  export interface UseTRPCInfiniteQueryOptions<TInput, TOutput, TError> extends DistributiveOmit<UseInfiniteQueryOptions<TOutput, TError, TOutput, TOutput, any, ExtractCursorType<TInput>>, 'queryKey' | 'initialPageParam'>, TRPCUseQueryBaseOptions {
42
44
  initialCursor?: ExtractCursorType<TInput>;
43
45
  }
46
+ export type UseTRPCPrefetchInfiniteQueryOptions<TInput, TOutput, TError> = DistributiveOmit<FetchInfiniteQueryOptions<TOutput, TError, TOutput, any, ExtractCursorType<TInput>>, 'queryKey' | 'initialPageParam'> & TRPCUseQueryBaseOptions & {
47
+ initialCursor?: ExtractCursorType<TInput>;
48
+ };
44
49
  export interface UseTRPCSuspenseInfiniteQueryOptions<TInput, TOutput, TError> extends DistributiveOmit<UseSuspenseInfiniteQueryOptions<TOutput, TError, TOutput, TOutput, any, ExtractCursorType<TInput>>, 'queryKey' | 'initialPageParam'>, TRPCUseQueryBaseOptions {
45
50
  initialCursor?: ExtractCursorType<TInput>;
46
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/shared/hooks/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/shared/hooks/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,eAAe,EACf,yBAAyB,EACzB,iBAAiB,EACjB,YAAY,EACZ,kCAAkC,EAClC,mBAAmB,EACnB,0BAA0B,EAC1B,YAAY,EACZ,mBAAmB,EACnB,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,+BAA+B,EAC/B,8BAA8B,EAC9B,uBAAuB,EACvB,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EACV,uBAAuB,EACvB,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EACV,SAAS,EACT,gBAAgB,EACjB,MAAM,0CAA0C,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,MAAM,MAAM,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,GAAG,IAAI;IACnD,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IACvB,IAAI,EAAE,KAAK,CAAC;CACb,CAAC;AAEF,MAAM,WAAW,uBAEf,SAAQ,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAC;IAC1C;;OAEG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,IAAI,CAAC,EAAE,uBAAuB,CAAC;CAChC;AAED,MAAM,WAAW,mBAAmB,CAClC,OAAO,EACP,KAAK,EACL,MAAM,EACN,cAAc,GAAG,OAAO,CACxB,SAAQ,gBAAgB,CACpB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,CAAC,EAChE,UAAU,CACX,EACD,uBAAuB;CAAG;AAE9B,MAAM,WAAW,2BAA2B,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CACjE,SAAQ,gBAAgB,CACpB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,EACpD,UAAU,CACX,EACD,uBAAuB;CAAG;AAE9B,MAAM,WAAW,2BAA2B,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CACjE,SAAQ,gBAAgB,CACpB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,EAC9C,UAAU,CACX,EACD,uBAAuB;CAAG;AAE9B,iBAAiB;AACjB,MAAM,WAAW,0BAA0B,CACzC,OAAO,EACP,KAAK,EACL,MAAM,EACN,cAAc,GAAG,OAAO,CACxB,SAAQ,gBAAgB,CACtB,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,CAAC,EAC3D,UAAU,CACX;IACD,WAAW,EAAE,mBAAmB,CAAC,cAAc,CAAC,GAAG,cAAc,CAAC;CACnE;AAED,MAAM,WAAW,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAC7C,SAAQ,gBAAgB,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,UAAU,CAAC,EAC3E,uBAAuB;IACzB,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,MAAM,iBAAiB,CAAC,MAAM,IAAI,MAAM,SAAS;IAAE,MAAM,CAAC,EAAE,GAAG,CAAA;CAAE,GACnE,MAAM,CAAC,QAAQ,CAAC,GAChB,OAAO,CAAC;AAEZ,MAAM,WAAW,2BAA2B,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAClE,SAAQ,gBAAgB,CACpB,uBAAuB,CACrB,OAAO,EACP,MAAM,EACN,OAAO,EACP,OAAO,EACP,GAAG,EACH,iBAAiB,CAAC,MAAM,CAAC,CAC1B,EACD,UAAU,GAAG,kBAAkB,CAChC,EACD,uBAAuB;IACzB,aAAa,CAAC,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC;CAC3C;AAED,MAAM,MAAM,mCAAmC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,IACrE,gBAAgB,CACd,yBAAyB,CACvB,OAAO,EACP,MAAM,EACN,OAAO,EACP,GAAG,EACH,iBAAiB,CAAC,MAAM,CAAC,CAC1B,EACD,UAAU,GAAG,kBAAkB,CAChC,GACC,uBAAuB,GAAG;IACxB,aAAa,CAAC,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC;CAC3C,CAAC;AAEN,MAAM,WAAW,mCAAmC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAC1E,SAAQ,gBAAgB,CACpB,+BAA+B,CAC7B,OAAO,EACP,MAAM,EACN,OAAO,EACP,OAAO,EACP,GAAG,EACH,iBAAiB,CAAC,MAAM,CAAC,CAC1B,EACD,UAAU,GAAG,kBAAkB,CAChC,EACD,uBAAuB;IACzB,aAAa,CAAC,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,sBAAsB,CACrC,MAAM,EACN,MAAM,EACN,OAAO,EACP,QAAQ,GAAG,OAAO,CAClB,SAAQ,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAC3D,uBAAuB;CAAG;AAE9B,MAAM,WAAW,0BAA0B,CAAC,OAAO,EAAE,MAAM;IACzD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAChC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC;AACD,MAAM,WAAW,iBAAiB,CAAC,OAAO,SAAS,SAAS,EAAE,WAAW,CACvE,SAAQ,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9C,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,MAAM,YAAY,CAAC,OAAO,SAAS,SAAS,EAAE,WAAW,IAAI,CACjE,KAAK,EAAE,iBAAiB,CAAC,OAAO,EAAE,WAAW,CAAC,KAC3C,GAAG,CAAC,OAAO,CAAC;AAEjB,MAAM,MAAM,kBAAkB,CAAC,OAAO,SAAS,SAAS,IAAI,CAC1D,MAAM,EAAE,iBAAiB,CAAC,OAAO,CAAC,EAClC,SAAS,EAAE,eAAe,GAAG,SAAS,KACnC,eAAe,GAAG,SAAS,CAAC;AAEjC,MAAM,MAAM,YAAY,CAAC,OAAO,SAAS,SAAS,IAAI,CACpD,IAAI,EAAE,uBAAuB,CAAC,OAAO,CAAC,KACnC,iBAAiB,CAAC,OAAO,CAAC,CAAC;AAEhC,KAAK,0BAA0B,CAAC,MAAM,IAAI,MAAM,SAAS,aAAa,CACpE,MAAM,SAAS,CAChB,GACG,SAAS,EAAE,GACX,MAAM,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,kBAAkB,CAAC,KAAK,EAAE,MAAM,IAAI,cAAc,GAC5D,cAAc,CAAC,0BAA0B,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;AAE5D;;GAEG;AACH,MAAM,MAAM,yBAAyB,CAAC,KAAK,EAAE,MAAM,IAAI,qBAAqB,CAC1E,KAAK,EACL,MAAM,CACP,GACC,cAAc,CAAC;AAEjB;;GAEG;AACH,MAAM,MAAM,yBAAyB,CAAC,KAAK,EAAE,MAAM,IACjD,0BAA0B,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,cAAc,CAAC;AAE7D;;GAEG;AACH,MAAM,MAAM,0BAA0B,CAAC,KAAK,EAAE,MAAM,IAAI;IACtD,KAAK;IACL,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,cAAc;CACvD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,IAAI,cAAc,GAC5E,sBAAsB,CACpB,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,EAClE,MAAM,CACP,CAAC;AAEJ;;GAEG;AACH,MAAM,MAAM,iCAAiC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,IACjE,kCAAkC,CAChC,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,EAClE,MAAM,CACP,GACC,cAAc,CAAC;AAEnB;;GAEG;AACH,MAAM,MAAM,kCAAkC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,IAAI;IACtE,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC;IAClE,8BAA8B,CAC5B,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,EAClE,MAAM,CACP,GACC,cAAc;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,IACnE,cAAc,GAAG,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;AAE1E,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE;QACJ,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trpc/react-query",
3
- "version": "11.0.0-rc.485+1c1d824cd",
3
+ "version": "11.0.0-rc.487+3cf8f49f5",
4
4
  "description": "The tRPC React library",
5
5
  "author": "KATT",
6
6
  "license": "MIT",
@@ -64,15 +64,15 @@
64
64
  },
65
65
  "peerDependencies": {
66
66
  "@tanstack/react-query": "^5.49.2",
67
- "@trpc/client": "11.0.0-rc.485+1c1d824cd",
68
- "@trpc/server": "11.0.0-rc.485+1c1d824cd",
67
+ "@trpc/client": "11.0.0-rc.487+3cf8f49f5",
68
+ "@trpc/server": "11.0.0-rc.487+3cf8f49f5",
69
69
  "react": ">=18.2.0",
70
70
  "react-dom": ">=18.2.0"
71
71
  },
72
72
  "devDependencies": {
73
73
  "@tanstack/react-query": "^5.51.11",
74
- "@trpc/client": "11.0.0-rc.485+1c1d824cd",
75
- "@trpc/server": "11.0.0-rc.485+1c1d824cd",
74
+ "@trpc/client": "11.0.0-rc.487+3cf8f49f5",
75
+ "@trpc/server": "11.0.0-rc.487+3cf8f49f5",
76
76
  "@types/express": "^4.17.17",
77
77
  "@types/node": "^20.10.0",
78
78
  "@types/react": "^18.3.1",
@@ -92,5 +92,5 @@
92
92
  "funding": [
93
93
  "https://trpc.io/sponsor"
94
94
  ],
95
- "gitHead": "1c1d824cd61bb00bf115c91010147f11fe026154"
95
+ "gitHead": "3cf8f49f5b2ca262d7a13ad780f3e76956922cbb"
96
96
  }
@@ -16,7 +16,11 @@ import type {
16
16
  TRPCUseQueries,
17
17
  TRPCUseSuspenseQueries,
18
18
  } from './internals/useQueries';
19
- import type { CreateReactUtils } from './shared';
19
+ import type {
20
+ CreateReactUtils,
21
+ TRPCFetchInfiniteQueryOptions,
22
+ TRPCFetchQueryOptions,
23
+ } from './shared';
20
24
  import { createReactDecoration, createReactQueryUtils } from './shared';
21
25
  import type { CreateReactQueryHooks } from './shared/hooks/createHooksInternal';
22
26
  import { createRootHooks } from './shared/hooks/createHooksInternal';
@@ -79,6 +83,14 @@ export interface ProcedureUseQuery<TDef extends ResolverDef> {
79
83
  ): UseTRPCQueryResult<TData, TRPCClientErrorLike<TDef>>;
80
84
  }
81
85
 
86
+ /**
87
+ * @internal
88
+ */
89
+ export type ProcedureUsePrefetchQuery<TDef extends ResolverDef> = (
90
+ input: TDef['input'] | SkipToken,
91
+ opts?: TRPCFetchQueryOptions<TDef['output'], TRPCClientErrorLike<TDef>>,
92
+ ) => void;
93
+
82
94
  /**
83
95
  * @remark `void` is here due to https://github.com/trpc/trpc/pull/4374
84
96
  */
@@ -108,6 +120,14 @@ export type MaybeDecoratedInfiniteQuery<TDef extends ResolverDef> =
108
120
  TRPCClientErrorLike<TDef>,
109
121
  TDef['input']
110
122
  >;
123
+ usePrefetchInfiniteQuery: (
124
+ input: Omit<TDef['input'], ReservedInfiniteQueryKeys> | SkipToken,
125
+ opts: TRPCFetchInfiniteQueryOptions<
126
+ TDef['input'],
127
+ TDef['output'],
128
+ TRPCClientErrorLike<TDef>
129
+ >,
130
+ ) => void;
111
131
  /**
112
132
  * @link https://trpc.io/docs/v11/client/react/suspense
113
133
  */
@@ -134,6 +154,7 @@ export type DecoratedQueryMethods<TDef extends ResolverDef> = {
134
154
  * @link https://trpc.io/docs/v11/client/react/useQuery
135
155
  */
136
156
  useQuery: ProcedureUseQuery<TDef>;
157
+ usePrefetchQuery: ProcedureUsePrefetchQuery<TDef>;
137
158
  /**
138
159
  * @link https://trpc.io/docs/v11/client/react/suspense#usesuspensequery
139
160
  */
@@ -1,11 +1,13 @@
1
1
  import {
2
2
  useInfiniteQuery as __useInfiniteQuery,
3
3
  useMutation as __useMutation,
4
+ usePrefetchInfiniteQuery as __usePrefetchInfiniteQuery,
4
5
  useQueries as __useQueries,
5
6
  useQuery as __useQuery,
6
7
  useSuspenseInfiniteQuery as __useSuspenseInfiniteQuery,
7
8
  useSuspenseQueries as __useSuspenseQueries,
8
9
  useSuspenseQuery as __useSuspenseQuery,
10
+ usePrefetchQuery as _usePrefetchQuery,
9
11
  hashKey,
10
12
  skipToken,
11
13
  } from '@tanstack/react-query';
@@ -38,6 +40,8 @@ import type {
38
40
  UseTRPCInfiniteQueryResult,
39
41
  UseTRPCMutationOptions,
40
42
  UseTRPCMutationResult,
43
+ UseTRPCPrefetchInfiniteQueryOptions,
44
+ UseTRPCPrefetchQueryOptions,
41
45
  UseTRPCQueryOptions,
42
46
  UseTRPCQueryResult,
43
47
  UseTRPCSubscriptionOptions,
@@ -223,6 +227,40 @@ export function createRootHooks<
223
227
  return hook;
224
228
  }
225
229
 
230
+ function usePrefetchQuery(
231
+ path: string[],
232
+ input: unknown,
233
+ opts?: UseTRPCPrefetchQueryOptions<unknown, unknown, TError>,
234
+ ): void {
235
+ const context = useContext();
236
+ const queryKey = getQueryKeyInternal(path, input, 'query');
237
+
238
+ const isInputSkipToken = input === skipToken;
239
+
240
+ const shouldAbortOnUnmount =
241
+ opts?.trpc?.abortOnUnmount ??
242
+ config?.abortOnUnmount ??
243
+ context.abortOnUnmount;
244
+
245
+ _usePrefetchQuery({
246
+ ...opts,
247
+ queryKey: queryKey as any,
248
+ queryFn: isInputSkipToken
249
+ ? input
250
+ : (queryFunctionContext) => {
251
+ const actualOpts = {
252
+ trpc: {
253
+ ...(shouldAbortOnUnmount
254
+ ? { signal: queryFunctionContext.signal }
255
+ : {}),
256
+ },
257
+ };
258
+
259
+ return context.client.query(...getClientArgs(queryKey, actualOpts));
260
+ },
261
+ });
262
+ }
263
+
226
264
  function useSuspenseQuery(
227
265
  path: readonly string[],
228
266
  input: unknown,
@@ -423,6 +461,54 @@ export function createRootHooks<
423
461
  return hook;
424
462
  }
425
463
 
464
+ function usePrefetchInfiniteQuery(
465
+ path: string[],
466
+ input: unknown,
467
+ opts: UseTRPCPrefetchInfiniteQueryOptions<unknown, unknown, TError>,
468
+ ): void {
469
+ const context = useContext();
470
+ const queryKey = getQueryKeyInternal(path, input, 'infinite');
471
+
472
+ const defaultOpts = context.queryClient.getQueryDefaults(queryKey);
473
+
474
+ const isInputSkipToken = input === skipToken;
475
+
476
+ const ssrOpts = useSSRQueryOptionsIfNeeded(queryKey, {
477
+ ...defaultOpts,
478
+ ...opts,
479
+ });
480
+
481
+ // request option should take priority over global
482
+ const shouldAbortOnUnmount =
483
+ opts?.trpc?.abortOnUnmount ?? context.abortOnUnmount;
484
+
485
+ __usePrefetchInfiniteQuery({
486
+ ...opts,
487
+ initialPageParam: opts.initialCursor ?? null,
488
+ queryKey,
489
+ queryFn: isInputSkipToken
490
+ ? input
491
+ : (queryFunctionContext) => {
492
+ const actualOpts = {
493
+ ...ssrOpts,
494
+ trpc: {
495
+ ...ssrOpts?.trpc,
496
+ ...(shouldAbortOnUnmount
497
+ ? { signal: queryFunctionContext.signal }
498
+ : {}),
499
+ },
500
+ };
501
+
502
+ return context.client.query(
503
+ ...getClientArgs(queryKey, actualOpts, {
504
+ pageParam: queryFunctionContext.pageParam ?? opts.initialCursor,
505
+ direction: queryFunctionContext.direction,
506
+ }),
507
+ );
508
+ },
509
+ });
510
+ }
511
+
426
512
  function useSuspenseInfiniteQuery(
427
513
  path: readonly string[],
428
514
  input: unknown,
@@ -535,12 +621,14 @@ export function createRootHooks<
535
621
  useContext,
536
622
  useUtils: useContext,
537
623
  useQuery,
624
+ usePrefetchQuery,
538
625
  useSuspenseQuery,
539
626
  useQueries,
540
627
  useSuspenseQueries,
541
628
  useMutation,
542
629
  useSubscription,
543
630
  useInfiniteQuery,
631
+ usePrefetchInfiniteQuery,
544
632
  useSuspenseInfiniteQuery,
545
633
  };
546
634
  }
@@ -1,6 +1,8 @@
1
1
  import type {
2
2
  DefinedUseQueryResult,
3
3
  DehydratedState,
4
+ FetchInfiniteQueryOptions,
5
+ FetchQueryOptions,
4
6
  InfiniteData,
5
7
  InfiniteQueryObserverSuccessResult,
6
8
  InitialDataFunction,
@@ -73,6 +75,13 @@ export interface UseTRPCSuspenseQueryOptions<TOutput, TData, TError>
73
75
  >,
74
76
  TRPCUseQueryBaseOptions {}
75
77
 
78
+ export interface UseTRPCPrefetchQueryOptions<TOutput, TData, TError>
79
+ extends DistributiveOmit<
80
+ FetchQueryOptions<TOutput, TError, TData, any>,
81
+ 'queryKey'
82
+ >,
83
+ TRPCUseQueryBaseOptions {}
84
+
76
85
  /** @internal **/
77
86
  export interface DefinedUseTRPCQueryOptions<
78
87
  TOutput,
@@ -112,6 +121,21 @@ export interface UseTRPCInfiniteQueryOptions<TInput, TOutput, TError>
112
121
  initialCursor?: ExtractCursorType<TInput>;
113
122
  }
114
123
 
124
+ export type UseTRPCPrefetchInfiniteQueryOptions<TInput, TOutput, TError> =
125
+ DistributiveOmit<
126
+ FetchInfiniteQueryOptions<
127
+ TOutput,
128
+ TError,
129
+ TOutput,
130
+ any,
131
+ ExtractCursorType<TInput>
132
+ >,
133
+ 'queryKey' | 'initialPageParam'
134
+ > &
135
+ TRPCUseQueryBaseOptions & {
136
+ initialCursor?: ExtractCursorType<TInput>;
137
+ };
138
+
115
139
  export interface UseTRPCSuspenseInfiniteQueryOptions<TInput, TOutput, TError>
116
140
  extends DistributiveOmit<
117
141
  UseSuspenseInfiniteQueryOptions<