@trpc/tanstack-react-query 11.0.0-rc.808 → 11.0.0-rc.817

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.
@@ -4,17 +4,8 @@ import { trpcInfiniteQueryOptions } from './infiniteQueryOptions.mjs';
4
4
  import { trpcMutationOptions } from './mutationOptions.mjs';
5
5
  import { trpcQueryOptions } from './queryOptions.mjs';
6
6
  import { trpcSubscriptionOptions } from './subscriptionOptions.mjs';
7
- import { getMutationKeyInternal, getQueryKeyInternal, unwrapLazyArg } from './utils.mjs';
7
+ import { getQueryKeyInternal, getMutationKeyInternal, unwrapLazyArg } from './utils.mjs';
8
8
 
9
- function getQueryType(method) {
10
- const map = {
11
- queryOptions: 'query',
12
- infiniteQueryOptions: 'infinite',
13
- subscriptionOptions: 'any',
14
- mutationOptions: 'any'
15
- };
16
- return map[method];
17
- }
18
9
  /**
19
10
  * Create a typed proxy from your router types. Can also be used on the server.
20
11
  *
@@ -43,41 +34,54 @@ function getQueryType(method) {
43
34
  ];
44
35
  const utilName = path.pop();
45
36
  const [arg1, arg2] = args;
46
- function getQueryKey() {
47
- const queryType = getQueryType(utilName);
48
- return getQueryKeyInternal(path, arg1, queryType ?? 'any');
49
- }
50
37
  const contextMap = {
51
38
  '~types': undefined,
52
- mutationKey: ()=>{
53
- return getMutationKeyInternal(path);
39
+ pathKey: ()=>{
40
+ return getQueryKeyInternal(path);
41
+ },
42
+ pathFilter: ()=>{
43
+ return {
44
+ ...arg1,
45
+ queryKey: getQueryKeyInternal(path)
46
+ };
47
+ },
48
+ queryOptions: ()=>{
49
+ return trpcQueryOptions({
50
+ input: arg1,
51
+ opts: arg2,
52
+ path,
53
+ queryClient: opts.queryClient,
54
+ queryKey: getQueryKeyInternal(path, arg1, 'query'),
55
+ query: callIt('query')
56
+ });
54
57
  },
55
58
  queryKey: ()=>{
56
- return getQueryKey();
59
+ return getQueryKeyInternal(path, arg1, 'query');
57
60
  },
58
61
  queryFilter: ()=>{
59
62
  return {
60
63
  ...arg2,
61
- queryKey: getQueryKey()
64
+ queryKey: getQueryKeyInternal(path, arg1, 'query')
62
65
  };
63
66
  },
64
67
  infiniteQueryOptions: ()=>{
65
68
  return trpcInfiniteQueryOptions({
69
+ input: arg1,
66
70
  opts: arg2,
67
71
  path,
68
72
  queryClient: opts.queryClient,
69
- queryKey: getQueryKey(),
73
+ queryKey: getQueryKeyInternal(path, arg1, 'infinite'),
70
74
  query: callIt('query')
71
75
  });
72
76
  },
73
- queryOptions: ()=>{
74
- return trpcQueryOptions({
75
- opts: arg2,
76
- path,
77
- queryClient: opts.queryClient,
78
- queryKey: getQueryKey(),
79
- query: callIt('query')
80
- });
77
+ infiniteQueryKey: ()=>{
78
+ return getQueryKeyInternal(path, arg1, 'infinite');
79
+ },
80
+ infiniteQueryFilter: ()=>{
81
+ return {
82
+ ...arg2,
83
+ queryKey: getQueryKeyInternal(path, arg1, 'infinite')
84
+ };
81
85
  },
82
86
  mutationOptions: ()=>{
83
87
  return trpcMutationOptions({
@@ -88,11 +92,14 @@ function getQueryType(method) {
88
92
  overrides: opts.overrides?.mutations
89
93
  });
90
94
  },
95
+ mutationKey: ()=>{
96
+ return getMutationKeyInternal(path);
97
+ },
91
98
  subscriptionOptions: ()=>{
92
99
  return trpcSubscriptionOptions({
93
100
  opts: arg2,
94
101
  path,
95
- queryKey: getQueryKey(),
102
+ queryKey: getQueryKeyInternal(path, arg1, 'any'),
96
103
  subscribe: callIt('subscription')
97
104
  });
98
105
  }
@@ -1,37 +1,56 @@
1
- import type { DataTag, DefinedInitialDataInfiniteOptions, InfiniteData, QueryClient, SkipToken, UndefinedInitialDataInfiniteOptions, UnusedSkipTokenInfiniteOptions } from '@tanstack/react-query';
1
+ import type { DataTag, DefinedInitialDataInfiniteOptions, QueryClient, SkipToken, UndefinedInitialDataInfiniteOptions, UnusedSkipTokenInfiniteOptions } from '@tanstack/react-query';
2
2
  import type { TRPCClientErrorLike, TRPCUntypedClient } from '@trpc/client';
3
3
  import type { DistributiveOmit } from '@trpc/server/unstable-core-do-not-import';
4
- import type { ExtractCursorType, ResolverDef, TRPCQueryBaseOptions, TRPCQueryKey, TRPCQueryOptionsResult } from './types';
4
+ import type { ExtractCursorType, ResolverDef, TRPCInfiniteData, TRPCQueryBaseOptions, TRPCQueryKey, TRPCQueryOptionsResult } from './types';
5
5
  type ReservedOptions = 'queryKey' | 'queryFn' | 'queryHashFn' | 'queryHash' | 'initialPageParam';
6
- interface UndefinedTRPCInfiniteQueryOptionsIn<TInput, TQueryFnData, TData, TError> extends DistributiveOmit<UndefinedInitialDataInfiniteOptions<TQueryFnData, TError, InfiniteData<TData, NonNullable<ExtractCursorType<TInput>> | null>, TRPCQueryKey, NonNullable<ExtractCursorType<TInput>> | null>, ReservedOptions>, TRPCQueryBaseOptions {
6
+ interface UndefinedTRPCInfiniteQueryOptionsIn<TInput, TQueryFnData, TData, TError> extends DistributiveOmit<UndefinedInitialDataInfiniteOptions<TQueryFnData, TError, TRPCInfiniteData<TInput, TData>, TRPCQueryKey, NonNullable<ExtractCursorType<TInput>> | null>, ReservedOptions>, TRPCQueryBaseOptions {
7
7
  initialCursor?: NonNullable<ExtractCursorType<TInput>> | null;
8
8
  }
9
- interface UndefinedTRPCInfiniteQueryOptionsOut<TInput, TQueryFnData, TData, TError> extends DistributiveOmit<UndefinedInitialDataInfiniteOptions<TQueryFnData, TError, InfiniteData<TData, NonNullable<ExtractCursorType<TInput>> | null>, TRPCQueryKey, NonNullable<ExtractCursorType<TInput>> | null>, 'initialPageParam'>, TRPCQueryOptionsResult {
10
- queryKey: DataTag<TRPCQueryKey, TData, TError>;
9
+ interface UndefinedTRPCInfiniteQueryOptionsOut<TInput, TQueryFnData, TData, TError> extends DistributiveOmit<UndefinedInitialDataInfiniteOptions<TQueryFnData, TError, TRPCInfiniteData<TInput, TData>, TRPCQueryKey, NonNullable<ExtractCursorType<TInput>> | null>, 'initialPageParam'>, TRPCQueryOptionsResult {
10
+ queryKey: DataTag<TRPCQueryKey, TRPCInfiniteData<TInput, TData>, TError>;
11
11
  initialPageParam: NonNullable<ExtractCursorType<TInput>> | null;
12
12
  }
13
- interface DefinedTRPCInfiniteQueryOptionsIn<TInput, TQueryFnData, TData, TError> extends DistributiveOmit<DefinedInitialDataInfiniteOptions<TQueryFnData, TError, InfiniteData<TData, NonNullable<ExtractCursorType<TInput>> | null>, TRPCQueryKey, NonNullable<ExtractCursorType<TInput>> | null>, ReservedOptions>, TRPCQueryBaseOptions {
13
+ interface DefinedTRPCInfiniteQueryOptionsIn<TInput, TQueryFnData, TData, TError> extends DistributiveOmit<DefinedInitialDataInfiniteOptions<TQueryFnData, TError, TRPCInfiniteData<TInput, TData>, TRPCQueryKey, NonNullable<ExtractCursorType<TInput>> | null>, ReservedOptions>, TRPCQueryBaseOptions {
14
14
  initialCursor?: NonNullable<ExtractCursorType<TInput>> | null;
15
15
  }
16
- interface DefinedTRPCInfiniteQueryOptionsOut<TInput, TQueryFnData, TData, TError> extends DistributiveOmit<DefinedInitialDataInfiniteOptions<TQueryFnData, TError, InfiniteData<TData, NonNullable<ExtractCursorType<TInput>> | null>, TRPCQueryKey, NonNullable<ExtractCursorType<TInput>> | null>, 'initialPageParam'>, TRPCQueryOptionsResult {
17
- queryKey: DataTag<TRPCQueryKey, TData, TError>;
16
+ interface DefinedTRPCInfiniteQueryOptionsOut<TInput, TQueryFnData, TData, TError> extends DistributiveOmit<DefinedInitialDataInfiniteOptions<TQueryFnData, TError, TRPCInfiniteData<TInput, TData>, TRPCQueryKey, NonNullable<ExtractCursorType<TInput>> | null>, 'initialPageParam'>, TRPCQueryOptionsResult {
17
+ queryKey: DataTag<TRPCQueryKey, TRPCInfiniteData<TInput, TData>, TError>;
18
18
  initialPageParam: NonNullable<ExtractCursorType<TInput>> | null;
19
19
  }
20
- interface UnusedSkipTokenTRPCInfiniteQueryOptionsIn<TInput, TQueryFnData, TData, TError> extends DistributiveOmit<UnusedSkipTokenInfiniteOptions<TQueryFnData, TError, InfiniteData<TData, NonNullable<ExtractCursorType<TInput>> | null>, TRPCQueryKey, NonNullable<ExtractCursorType<TInput>> | null>, ReservedOptions>, TRPCQueryBaseOptions {
20
+ interface UnusedSkipTokenTRPCInfiniteQueryOptionsIn<TInput, TQueryFnData, TData, TError> extends DistributiveOmit<UnusedSkipTokenInfiniteOptions<TQueryFnData, TError, TRPCInfiniteData<TInput, TData>, TRPCQueryKey, NonNullable<ExtractCursorType<TInput>> | null>, ReservedOptions>, TRPCQueryBaseOptions {
21
21
  initialCursor?: NonNullable<ExtractCursorType<TInput>> | null;
22
22
  }
23
- interface UnusedSkipTokenTRPCInfiniteQueryOptionsOut<TInput, TQueryFnData, TData, TError> extends DistributiveOmit<UnusedSkipTokenInfiniteOptions<TQueryFnData, TError, InfiniteData<TData, NonNullable<ExtractCursorType<TInput>> | null>, TRPCQueryKey, NonNullable<ExtractCursorType<TInput>> | null>, 'initialPageParam'>, TRPCQueryOptionsResult {
24
- queryKey: DataTag<TRPCQueryKey, TData, TError>;
23
+ interface UnusedSkipTokenTRPCInfiniteQueryOptionsOut<TInput, TQueryFnData, TData, TError> extends DistributiveOmit<UnusedSkipTokenInfiniteOptions<TQueryFnData, TError, TRPCInfiniteData<TInput, TData>, TRPCQueryKey, NonNullable<ExtractCursorType<TInput>> | null>, 'initialPageParam'>, TRPCQueryOptionsResult {
24
+ queryKey: DataTag<TRPCQueryKey, TRPCInfiniteData<TInput, TData>, TError>;
25
25
  initialPageParam: NonNullable<ExtractCursorType<TInput>> | null;
26
26
  }
27
27
  export interface TRPCInfiniteQueryOptions<TDef extends ResolverDef> {
28
- <TQueryFnData extends TDef['output'], TData = TQueryFnData>(input: TDef['input'] | SkipToken, opts: DefinedTRPCInfiniteQueryOptionsIn<TDef['input'], TQueryFnData, TData, TRPCClientErrorLike<TDef>>): DefinedTRPCInfiniteQueryOptionsOut<TDef['input'], TQueryFnData, TData, TRPCClientErrorLike<TDef>>;
29
- <TQueryFnData extends TDef['output'], TData = TQueryFnData>(input: TDef['input'], opts: UnusedSkipTokenTRPCInfiniteQueryOptionsIn<TDef['input'], TQueryFnData, TData, TRPCClientErrorLike<TDef>>): UnusedSkipTokenTRPCInfiniteQueryOptionsOut<TDef['input'], TQueryFnData, TData, TRPCClientErrorLike<TDef>>;
30
- <TQueryFnData extends TDef['output'], TData = TQueryFnData>(input: TDef['input'] | SkipToken, opts?: UndefinedTRPCInfiniteQueryOptionsIn<TDef['input'], TQueryFnData, TData, TRPCClientErrorLike<TDef>>): UndefinedTRPCInfiniteQueryOptionsOut<TDef['input'], TQueryFnData, TData, TRPCClientErrorLike<TDef>>;
28
+ <TQueryFnData extends TDef['output'], TData = TQueryFnData>(input: TDef['input'] | SkipToken, opts: DefinedTRPCInfiniteQueryOptionsIn<TDef['input'], TQueryFnData, TData, TRPCClientErrorLike<{
29
+ transformer: TDef['transformer'];
30
+ errorShape: TDef['errorShape'];
31
+ }>>): DefinedTRPCInfiniteQueryOptionsOut<TDef['input'], TQueryFnData, TData, TRPCClientErrorLike<{
32
+ transformer: TDef['transformer'];
33
+ errorShape: TDef['errorShape'];
34
+ }>>;
35
+ <TQueryFnData extends TDef['output'], TData = TQueryFnData>(input: TDef['input'], opts: UnusedSkipTokenTRPCInfiniteQueryOptionsIn<TDef['input'], TQueryFnData, TData, TRPCClientErrorLike<{
36
+ transformer: TDef['transformer'];
37
+ errorShape: TDef['errorShape'];
38
+ }>>): UnusedSkipTokenTRPCInfiniteQueryOptionsOut<TDef['input'], TQueryFnData, TData, TRPCClientErrorLike<{
39
+ transformer: TDef['transformer'];
40
+ errorShape: TDef['errorShape'];
41
+ }>>;
42
+ <TQueryFnData extends TDef['output'], TData = TQueryFnData>(input: TDef['input'] | SkipToken, opts?: UndefinedTRPCInfiniteQueryOptionsIn<TDef['input'], TQueryFnData, TData, TRPCClientErrorLike<{
43
+ transformer: TDef['transformer'];
44
+ errorShape: TDef['errorShape'];
45
+ }>>): UndefinedTRPCInfiniteQueryOptionsOut<TDef['input'], TQueryFnData, TData, TRPCClientErrorLike<{
46
+ transformer: TDef['transformer'];
47
+ errorShape: TDef['errorShape'];
48
+ }>>;
31
49
  }
32
- type AnyTRPCInfiniteQueryOptionsIn = DefinedTRPCInfiniteQueryOptionsIn<unknown, unknown, unknown, unknown> | UnusedSkipTokenTRPCInfiniteQueryOptionsIn<unknown, unknown, unknown, unknown> | UndefinedTRPCInfiniteQueryOptionsIn<unknown, unknown, unknown, unknown>;
33
- type AnyTRPCInfiniteQueryOptionsOut = DefinedTRPCInfiniteQueryOptionsOut<unknown, unknown, unknown, unknown> | UnusedSkipTokenTRPCInfiniteQueryOptionsOut<unknown, unknown, unknown, unknown> | UndefinedTRPCInfiniteQueryOptionsOut<unknown, unknown, unknown, unknown>;
50
+ type AnyTRPCInfiniteQueryOptionsIn = DefinedTRPCInfiniteQueryOptionsIn<any, any, any, any> | UnusedSkipTokenTRPCInfiniteQueryOptionsIn<any, any, any, any> | UndefinedTRPCInfiniteQueryOptionsIn<any, any, any, any>;
51
+ type AnyTRPCInfiniteQueryOptionsOut = DefinedTRPCInfiniteQueryOptionsOut<any, any, any, any> | UnusedSkipTokenTRPCInfiniteQueryOptionsOut<any, any, any, any> | UndefinedTRPCInfiniteQueryOptionsOut<any, any, any, any>;
34
52
  export declare function trpcInfiniteQueryOptions(args: {
53
+ input: unknown;
35
54
  query: typeof TRPCUntypedClient.prototype.query;
36
55
  queryClient: QueryClient | (() => QueryClient);
37
56
  path: readonly string[];
@@ -1 +1 @@
1
- {"version":3,"file":"infiniteQueryOptions.d.ts","sourceRoot":"","sources":["../../src/internals/infiniteQueryOptions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"infiniteQueryOptions.d.ts","sourceRoot":"","sources":["../../src/internals/infiniteQueryOptions.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,8 @@ var reactQuery = require('@tanstack/react-query');
4
4
  var utils = require('./utils.js');
5
5
 
6
6
  function trpcInfiniteQueryOptions(args) {
7
- const { query, path, queryKey, opts } = args;
8
- const inputIsSkipToken = queryKey[1]?.input === reactQuery.skipToken;
7
+ const { input, query, path, queryKey, opts } = args;
8
+ const inputIsSkipToken = input === reactQuery.skipToken;
9
9
  const queryFn = async (queryFnContext)=>{
10
10
  const actualOpts = {
11
11
  ...opts,
@@ -1,9 +1,9 @@
1
- import { skipToken, infiniteQueryOptions } from '@tanstack/react-query';
1
+ import { infiniteQueryOptions, skipToken } from '@tanstack/react-query';
2
2
  import { createTRPCOptionsResult, getClientArgs } from './utils.mjs';
3
3
 
4
4
  function trpcInfiniteQueryOptions(args) {
5
- const { query, path, queryKey, opts } = args;
6
- const inputIsSkipToken = queryKey[1]?.input === skipToken;
5
+ const { input, query, path, queryKey, opts } = args;
6
+ const inputIsSkipToken = input === skipToken;
7
7
  const queryFn = async (queryFnContext)=>{
8
8
  const actualOpts = {
9
9
  ...opts,
@@ -47,6 +47,7 @@ type AnyTRPCQueryOptionsOut = DefinedTRPCQueryOptionsOut<unknown, unknown, unkno
47
47
  * @internal
48
48
  */
49
49
  export declare function trpcQueryOptions(args: {
50
+ input: unknown;
50
51
  query: typeof TRPCUntypedClient.prototype.query;
51
52
  queryClient: QueryClient | (() => QueryClient);
52
53
  path: readonly string[];
@@ -1 +1 @@
1
- {"version":3,"file":"queryOptions.d.ts","sourceRoot":"","sources":["../../src/internals/queryOptions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queryOptions.d.ts","sourceRoot":"","sources":["../../src/internals/queryOptions.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,9 @@ var utils = require('./utils.js');
7
7
  /**
8
8
  * @internal
9
9
  */ function trpcQueryOptions(args) {
10
- const { query, path, queryKey, opts } = args;
10
+ const { input, query, path, queryKey, opts } = args;
11
11
  const queryClient = utils.unwrapLazyArg(args.queryClient);
12
- const inputIsSkipToken = queryKey[1]?.input === reactQuery.skipToken;
12
+ const inputIsSkipToken = input === reactQuery.skipToken;
13
13
  const queryFn = async (queryFnContext)=>{
14
14
  const actualOpts = {
15
15
  ...opts,
@@ -1,13 +1,13 @@
1
- import { skipToken, queryOptions } from '@tanstack/react-query';
1
+ import { queryOptions, skipToken } from '@tanstack/react-query';
2
2
  import { isAsyncIterable } from '@trpc/server/unstable-core-do-not-import';
3
3
  import { unwrapLazyArg, createTRPCOptionsResult, getClientArgs, buildQueryFromAsyncIterable } from './utils.mjs';
4
4
 
5
5
  /**
6
6
  * @internal
7
7
  */ function trpcQueryOptions(args) {
8
- const { query, path, queryKey, opts } = args;
8
+ const { input, query, path, queryKey, opts } = args;
9
9
  const queryClient = unwrapLazyArg(args.queryClient);
10
- const inputIsSkipToken = queryKey[1]?.input === skipToken;
10
+ const inputIsSkipToken = input === skipToken;
11
11
  const queryFn = async (queryFnContext)=>{
12
12
  const actualOpts = {
13
13
  ...opts,
@@ -1,4 +1,12 @@
1
+ import type { InfiniteData } from '@tanstack/react-query';
1
2
  import type { TRPCRequestOptions } from '@trpc/client';
3
+ /**
4
+ * Turn a set of optional properties into required
5
+ * @internal
6
+ */
7
+ export type WithRequired<TObj, TKey extends keyof TObj> = TObj & {
8
+ [P in TKey]-?: TObj[P];
9
+ };
2
10
  /**
3
11
  * @internal
4
12
  */
@@ -9,11 +17,20 @@ export type ResolverDef = {
9
17
  errorShape: any;
10
18
  };
11
19
  /**
12
- * @internal
20
+ * @remark `void` is here due to https://github.com/trpc/trpc/pull/4374
13
21
  */
14
- export type ExtractCursorType<TInput> = TInput extends {
22
+ type CursorInput = {
15
23
  cursor?: any;
16
- } ? TInput['cursor'] : unknown;
24
+ };
25
+ export type OptionalCursorInput = CursorInput | void;
26
+ /**
27
+ * @internal
28
+ */
29
+ export type ExtractCursorType<TInput> = TInput extends CursorInput ? TInput['cursor'] : unknown;
30
+ /**
31
+ * @internal
32
+ */
33
+ export type TRPCInfiniteData<TInput, TOutput> = InfiniteData<TOutput, NonNullable<ExtractCursorType<TInput>> | null>;
17
34
  /**
18
35
  * @public
19
36
  */
@@ -62,4 +79,5 @@ export type TRPCQueryKey = [
62
79
  * @public
63
80
  */
64
81
  export type TRPCMutationKey = [readonly string[]];
82
+ export {};
65
83
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/internals/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEvD;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,GAAG,CAAC;IACX,MAAM,EAAE,GAAG,CAAC;IACZ,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,GAAG,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,MAAM,IAAI,MAAM,SAAS;IAAE,MAAM,CAAC,EAAE,GAAG,CAAA;CAAE,GACnE,MAAM,CAAC,QAAQ,CAAC,GAChB,OAAO,CAAC;AAEZ;;GAEG;AACH,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;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,IAAI,CAAC,EAAE,uBAAuB,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE;QACJ,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,UAAU,GAAG,OAAO,CAAC;AAErD;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,SAAS,MAAM,EAAE;IACjB;QAAE,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;KAAE,CAAC;CACvD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/internals/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEvD;;;GAGG;AACH,MAAM,MAAM,YAAY,CAAC,IAAI,EAAE,IAAI,SAAS,MAAM,IAAI,IAAI,IAAI,GAAG;KAC9D,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,GAAG,CAAC;IACX,MAAM,EAAE,GAAG,CAAC;IACZ,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,GAAG,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,KAAK,WAAW,GAAG;IAAE,MAAM,CAAC,EAAE,GAAG,CAAA;CAAE,CAAC;AACpC,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,IAAI,CAAC;AAErD;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,MAAM,IAAI,MAAM,SAAS,WAAW,GAC9D,MAAM,CAAC,QAAQ,CAAC,GAChB,OAAO,CAAC;AAEZ;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAAC,MAAM,EAAE,OAAO,IAAI,YAAY,CAC1D,OAAO,EACP,WAAW,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAC9C,CAAC;AAEF;;GAEG;AACH,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;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,IAAI,CAAC,EAAE,uBAAuB,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE;QACJ,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,UAAU,GAAG,OAAO,CAAC;AAErD;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,SAAS,MAAM,EAAE;IACjB;QAAE,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;KAAE,CAAC;CACvD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { QueryClient } from '@tanstack/react-query';
1
+ import { type QueryClient } from '@tanstack/react-query';
2
2
  import type { QueryType, TRPCMutationKey, TRPCQueryKey, TRPCQueryOptionsResult } from './types';
3
3
  /**
4
4
  * @internal
@@ -24,7 +24,7 @@ export declare function buildQueryFromAsyncIterable(asyncIterable: AsyncIterable
24
24
  *
25
25
  * @internal
26
26
  */
27
- export declare function getQueryKeyInternal(path: readonly string[], input: unknown, type: QueryType): TRPCQueryKey;
27
+ export declare function getQueryKeyInternal(path: readonly string[], input?: unknown, type?: QueryType): TRPCQueryKey;
28
28
  /**
29
29
  * @internal
30
30
  */
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/internals/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGzD,OAAO,KAAK,EACV,SAAS,EACT,eAAe,EACf,YAAY,EACZ,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;CACzB,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAMjC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EACpC,QAAQ,EAAE,YAAY,EACtB,IAAI,EAAE,QAAQ,EACd,cAAc,CAAC,EAAE;IACf,SAAS,EAAE,GAAG,CAAC;IACf,SAAS,EAAE,SAAS,GAAG,UAAU,CAAC;CACnC,mCAYF;AAED;;GAEG;AACH,wBAAsB,2BAA2B,CAC/C,aAAa,EAAE,aAAa,CAAC,OAAO,CAAC,EACrC,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,YAAY,sBAsBvB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,SAAS,GACd,YAAY,CA0Cd;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,SAAS,MAAM,EAAE,GACtB,eAAe,CAKjB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAE9D"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/internals/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpE,OAAO,KAAK,EACV,SAAS,EACT,eAAe,EACf,YAAY,EACZ,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;CACzB,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAMjC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EACpC,QAAQ,EAAE,YAAY,EACtB,IAAI,EAAE,QAAQ,EACd,cAAc,CAAC,EAAE;IACf,SAAS,EAAE,GAAG,CAAC;IACf,SAAS,EAAE,SAAS,GAAG,UAAU,CAAC;CACnC,mCAYF;AAED;;GAEG;AACH,wBAAsB,2BAA2B,CAC/C,aAAa,EAAE,aAAa,CAAC,OAAO,CAAC,EACrC,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,YAAY,sBAsBvB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,KAAK,CAAC,EAAE,OAAO,EACf,IAAI,CAAC,EAAE,SAAS,GACf,YAAY,CA2Cd;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,SAAS,MAAM,EAAE,GACtB,eAAe,CAKjB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAE9D"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trpc/tanstack-react-query",
3
- "version": "11.0.0-rc.808+4df1eb8fa",
3
+ "version": "11.0.0-rc.817+53ebeae30",
4
4
  "description": "TanStack React Query Integration for tRPC",
5
5
  "author": "juliusmarminge",
6
6
  "license": "MIT",
@@ -49,16 +49,16 @@
49
49
  },
50
50
  "peerDependencies": {
51
51
  "@tanstack/react-query": "^5.62.8",
52
- "@trpc/client": "11.0.0-rc.808+4df1eb8fa",
53
- "@trpc/server": "11.0.0-rc.808+4df1eb8fa",
52
+ "@trpc/client": "11.0.0-rc.817+53ebeae30",
53
+ "@trpc/server": "11.0.0-rc.817+53ebeae30",
54
54
  "react": ">=18.2.0",
55
55
  "react-dom": ">=18.2.0",
56
56
  "typescript": ">=5.7.2"
57
57
  },
58
58
  "devDependencies": {
59
59
  "@tanstack/react-query": "^5.66.0",
60
- "@trpc/client": "11.0.0-rc.808+4df1eb8fa",
61
- "@trpc/server": "11.0.0-rc.808+4df1eb8fa",
60
+ "@trpc/client": "11.0.0-rc.817+53ebeae30",
61
+ "@trpc/server": "11.0.0-rc.817+53ebeae30",
62
62
  "@types/node": "^22.13.5",
63
63
  "@types/react": "^19.0.0",
64
64
  "eslint": "^9.21.0",
@@ -79,5 +79,5 @@
79
79
  "funding": [
80
80
  "https://trpc.io/sponsor"
81
81
  ],
82
- "gitHead": "4df1eb8fa820341db81bc7cb9907f30dfebbf4d7"
82
+ "gitHead": "53ebeae30b9c9b3e0cb9bda30cb8dcff598d9077"
83
83
  }
package/src/index.ts CHANGED
@@ -5,7 +5,7 @@ export type {
5
5
  inferOutput,
6
6
  DecorateMutationProcedure,
7
7
  DecorateProcedure,
8
- DecorateQueryKeyable,
8
+ DecorateRouterKeyable,
9
9
  DecorateQueryProcedure,
10
10
  DecorateSubscriptionProcedure,
11
11
  } from './internals/createOptionsProxy';
@@ -1,5 +1,5 @@
1
1
  import type { QueryClient } from '@tanstack/react-query';
2
- import type { CreateTRPCClient, TRPCClient } from '@trpc/client';
2
+ import type { TRPCClient } from '@trpc/client';
3
3
  import type { AnyTRPCRouter } from '@trpc/server';
4
4
  import * as React from 'react';
5
5
  import type { TRPCOptionsProxy } from './createOptionsProxy';
@@ -9,9 +9,10 @@ export interface CreateTRPCContextResult<TRouter extends AnyTRPCRouter> {
9
9
  TRPCProvider: React.FC<{
10
10
  children: React.ReactNode;
11
11
  queryClient: QueryClient;
12
- trpcClient: CreateTRPCClient<TRouter>;
12
+ trpcClient: TRPCClient<TRouter>;
13
13
  }>;
14
14
  useTRPC: () => TRPCOptionsProxy<TRouter>;
15
+ useTRPCClient: () => TRPCClient<TRouter>;
15
16
  }
16
17
  /**
17
18
  * Create a set of type-safe provider-consumers
@@ -21,6 +22,9 @@ export interface CreateTRPCContextResult<TRouter extends AnyTRPCRouter> {
21
22
  export function createTRPCContext<
22
23
  TRouter extends AnyTRPCRouter,
23
24
  >(): CreateTRPCContextResult<TRouter> {
25
+ const TRPCClientContext = React.createContext<TRPCClient<TRouter> | null>(
26
+ null,
27
+ );
24
28
  const TRPCContext = React.createContext<TRPCOptionsProxy<TRouter> | null>(
25
29
  null,
26
30
  );
@@ -41,9 +45,11 @@ export function createTRPCContext<
41
45
  [props.trpcClient, props.queryClient],
42
46
  );
43
47
  return (
44
- <TRPCContext.Provider value={value}>
45
- {props.children}
46
- </TRPCContext.Provider>
48
+ <TRPCClientContext.Provider value={props.trpcClient}>
49
+ <TRPCContext.Provider value={value}>
50
+ {props.children}
51
+ </TRPCContext.Provider>
52
+ </TRPCClientContext.Provider>
47
53
  );
48
54
  }
49
55
 
@@ -55,5 +61,15 @@ export function createTRPCContext<
55
61
  return utils;
56
62
  }
57
63
 
58
- return { TRPCProvider, useTRPC };
64
+ function useTRPCClient() {
65
+ const client = React.useContext(TRPCClientContext);
66
+ if (!client) {
67
+ throw new Error(
68
+ 'useTRPCClient() can only be used inside of a <TRPCProvider>',
69
+ );
70
+ }
71
+ return client;
72
+ }
73
+
74
+ return { TRPCProvider, useTRPC, useTRPCClient };
59
75
  }