@trpc/react-query 10.4.2 → 10.5.0

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.
package/README.md CHANGED
@@ -1,18 +1,20 @@
1
1
  <p align="center">
2
- <a href="https://trpc.io/"><img src="../../www/static/img/logo-text.svg" alt="tRPC" height="130"/></a>
2
+ <a href="https://trpc.io/"><img src="https://assets.trpc.io/icons/svgs/blue-bg-rounded.svg" alt="tRPC" height="75"/></a>
3
3
  </p>
4
4
 
5
+ <h3 align="center">tRPC</h3>
6
+
5
7
  <p align="center">
6
8
  <strong>End-to-end typesafe APIs made easy</strong>
7
9
  </p>
8
10
 
9
11
  <p align="center">
10
- <img src="https://assets.trpc.io/www/v10/preview-dark.gif" alt="Demo" />
12
+ <img src="https://assets.trpc.io/www/v10/v10-dark-landscape.gif" alt="Demo" />
11
13
  </p>
12
14
 
13
- # `@trpc/react`
15
+ # `@trpc/react-query`
14
16
 
15
- > Connect a tRPC server to React.
17
+ > A tRPC wrapper around react-query.
16
18
 
17
19
  ## Documentation
18
20
 
package/dist/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from '@trpc/client';
2
2
  export { createTRPCReact, type CreateTRPCReact } from './createTRPCReact';
3
3
  export { createReactQueryHooks } from './interop';
4
+ export type { inferReactQueryProcedureOptions } from './utils/inferReactQueryProcedure';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAE7B,OAAO,EAAE,eAAe,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAE7B,OAAO,EAAE,eAAe,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,YAAY,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { TRPCClientErrorLike } from '@trpc/client';
2
+ import { AnyMutationProcedure, AnyProcedure, AnyQueryProcedure, AnyRouter, inferProcedureInput } from '@trpc/server';
3
+ import { inferTransformedProcedureOutput } from '@trpc/server/dist/shared';
4
+ import { UseTRPCMutationOptions, UseTRPCQueryOptions } from '../shared';
5
+ declare type InferQueryOptions<TProcedure extends AnyProcedure, TPath extends string> = Omit<UseTRPCQueryOptions<TPath, inferProcedureInput<TProcedure>, inferTransformedProcedureOutput<TProcedure>, inferTransformedProcedureOutput<TProcedure>, TRPCClientErrorLike<TProcedure>>, 'select'>;
6
+ declare type InferMutationOptions<TProcedure extends AnyProcedure> = UseTRPCMutationOptions<inferProcedureInput<TProcedure>, TRPCClientErrorLike<TProcedure>, inferTransformedProcedureOutput<TProcedure>>;
7
+ export declare type inferReactQueryProcedureOptions<TRouter extends AnyRouter, TPath extends string = ''> = {
8
+ [TKey in keyof TRouter['_def']['record']]: TRouter['_def']['record'][TKey] extends infer TRouterOrProcedure ? TRouterOrProcedure extends AnyRouter ? inferReactQueryProcedureOptions<TRouterOrProcedure, `${TPath}${TKey & string}.`> : TRouterOrProcedure extends AnyMutationProcedure ? InferMutationOptions<TRouterOrProcedure> : TRouterOrProcedure extends AnyQueryProcedure ? InferQueryOptions<TRouterOrProcedure, `${TPath}${TKey & string}`> : never : never;
9
+ };
10
+ export {};
11
+ //# sourceMappingURL=inferReactQueryProcedure.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inferReactQueryProcedure.d.ts","sourceRoot":"","sources":["../../src/utils/inferReactQueryProcedure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EACL,oBAAoB,EACpB,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,mBAAmB,EACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,+BAA+B,EAAE,MAAM,0BAA0B,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAExE,aAAK,iBAAiB,CACpB,UAAU,SAAS,YAAY,EAC/B,KAAK,SAAS,MAAM,IAClB,IAAI,CACN,mBAAmB,CACjB,KAAK,EACL,mBAAmB,CAAC,UAAU,CAAC,EAC/B,+BAA+B,CAAC,UAAU,CAAC,EAC3C,+BAA+B,CAAC,UAAU,CAAC,EAC3C,mBAAmB,CAAC,UAAU,CAAC,CAChC,EACD,QAAQ,CACT,CAAC;AAEF,aAAK,oBAAoB,CAAC,UAAU,SAAS,YAAY,IACvD,sBAAsB,CACpB,mBAAmB,CAAC,UAAU,CAAC,EAC/B,mBAAmB,CAAC,UAAU,CAAC,EAC/B,+BAA+B,CAAC,UAAU,CAAC,CAC5C,CAAC;AAEJ,oBAAY,+BAA+B,CACzC,OAAO,SAAS,SAAS,EACzB,KAAK,SAAS,MAAM,GAAG,EAAE,IACvB;KACD,IAAI,IAAI,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,kBAAkB,GACvG,kBAAkB,SAAS,SAAS,GAClC,+BAA+B,CAC7B,kBAAkB,EAClB,GAAG,KAAK,GAAG,IAAI,GAAG,MAAM,GAAG,CAC5B,GACD,kBAAkB,SAAS,oBAAoB,GAC/C,oBAAoB,CAAC,kBAAkB,CAAC,GACxC,kBAAkB,SAAS,iBAAiB,GAC5C,iBAAiB,CAAC,kBAAkB,EAAE,GAAG,KAAK,GAAG,IAAI,GAAG,MAAM,EAAE,CAAC,GACjE,KAAK,GACP,KAAK;CACV,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trpc/react-query",
3
- "version": "10.4.2",
3
+ "version": "10.5.0",
4
4
  "description": "tRPC React lib",
5
5
  "author": "KATT",
6
6
  "license": "MIT",
@@ -54,15 +54,15 @@
54
54
  },
55
55
  "peerDependencies": {
56
56
  "@tanstack/react-query": "^4.3.8",
57
- "@trpc/client": "10.4.2",
58
- "@trpc/server": "10.4.2",
57
+ "@trpc/client": "10.5.0",
58
+ "@trpc/server": "10.5.0",
59
59
  "react": ">=16.8.0",
60
60
  "react-dom": ">=16.8.0"
61
61
  },
62
62
  "devDependencies": {
63
63
  "@tanstack/react-query": "^4.3.8",
64
- "@trpc/client": "10.4.2",
65
- "@trpc/server": "10.4.2",
64
+ "@trpc/client": "10.5.0",
65
+ "@trpc/server": "10.5.0",
66
66
  "@types/express": "^4.17.12",
67
67
  "@types/node": "^18.7.20",
68
68
  "express": "^4.17.1",
@@ -76,5 +76,5 @@
76
76
  "publishConfig": {
77
77
  "access": "public"
78
78
  },
79
- "gitHead": "74ad50732ff49dde7fb023ffc325e458c6b48324"
79
+ "gitHead": "c7f2d301cb1ab5713bf8b4e7dcaa05d66311cc9f"
80
80
  }
package/src/index.ts CHANGED
@@ -2,3 +2,4 @@ export * from '@trpc/client';
2
2
 
3
3
  export { createTRPCReact, type CreateTRPCReact } from './createTRPCReact';
4
4
  export { createReactQueryHooks } from './interop';
5
+ export type { inferReactQueryProcedureOptions } from './utils/inferReactQueryProcedure';
@@ -0,0 +1,49 @@
1
+ import { TRPCClientErrorLike } from '@trpc/client';
2
+ import {
3
+ AnyMutationProcedure,
4
+ AnyProcedure,
5
+ AnyQueryProcedure,
6
+ AnyRouter,
7
+ inferProcedureInput,
8
+ } from '@trpc/server';
9
+ import { inferTransformedProcedureOutput } from '@trpc/server/dist/shared';
10
+ import { UseTRPCMutationOptions, UseTRPCQueryOptions } from '../shared';
11
+
12
+ type InferQueryOptions<
13
+ TProcedure extends AnyProcedure,
14
+ TPath extends string,
15
+ > = Omit<
16
+ UseTRPCQueryOptions<
17
+ TPath,
18
+ inferProcedureInput<TProcedure>,
19
+ inferTransformedProcedureOutput<TProcedure>,
20
+ inferTransformedProcedureOutput<TProcedure>,
21
+ TRPCClientErrorLike<TProcedure>
22
+ >,
23
+ 'select'
24
+ >;
25
+
26
+ type InferMutationOptions<TProcedure extends AnyProcedure> =
27
+ UseTRPCMutationOptions<
28
+ inferProcedureInput<TProcedure>,
29
+ TRPCClientErrorLike<TProcedure>,
30
+ inferTransformedProcedureOutput<TProcedure>
31
+ >;
32
+
33
+ export type inferReactQueryProcedureOptions<
34
+ TRouter extends AnyRouter,
35
+ TPath extends string = '',
36
+ > = {
37
+ [TKey in keyof TRouter['_def']['record']]: TRouter['_def']['record'][TKey] extends infer TRouterOrProcedure
38
+ ? TRouterOrProcedure extends AnyRouter
39
+ ? inferReactQueryProcedureOptions<
40
+ TRouterOrProcedure,
41
+ `${TPath}${TKey & string}.`
42
+ >
43
+ : TRouterOrProcedure extends AnyMutationProcedure
44
+ ? InferMutationOptions<TRouterOrProcedure>
45
+ : TRouterOrProcedure extends AnyQueryProcedure
46
+ ? InferQueryOptions<TRouterOrProcedure, `${TPath}${TKey & string}`>
47
+ : never
48
+ : never;
49
+ };