@trpc/server 10.0.0-alpha.20 → 10.0.0-alpha.21

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.
Files changed (89) hide show
  1. package/adapters/express/dist/trpc-server-adapters-express.cjs.dev.js +3 -3
  2. package/adapters/express/dist/trpc-server-adapters-express.cjs.prod.js +3 -3
  3. package/adapters/express/dist/trpc-server-adapters-express.esm.js +3 -3
  4. package/adapters/fastify/dist/trpc-server-adapters-fastify.cjs.dev.js +3 -3
  5. package/adapters/fastify/dist/trpc-server-adapters-fastify.cjs.prod.js +3 -3
  6. package/adapters/fastify/dist/trpc-server-adapters-fastify.esm.js +3 -3
  7. package/adapters/next/dist/trpc-server-adapters-next.cjs.dev.js +3 -3
  8. package/adapters/next/dist/trpc-server-adapters-next.cjs.prod.js +3 -3
  9. package/adapters/next/dist/trpc-server-adapters-next.esm.js +3 -3
  10. package/adapters/node-http/dist/trpc-server-adapters-node-http.cjs.dev.js +3 -3
  11. package/adapters/node-http/dist/trpc-server-adapters-node-http.cjs.prod.js +3 -3
  12. package/adapters/node-http/dist/trpc-server-adapters-node-http.esm.js +3 -3
  13. package/adapters/standalone/dist/trpc-server-adapters-standalone.cjs.dev.js +3 -3
  14. package/adapters/standalone/dist/trpc-server-adapters-standalone.cjs.prod.js +3 -3
  15. package/adapters/standalone/dist/trpc-server-adapters-standalone.esm.js +3 -3
  16. package/adapters/ws/dist/trpc-server-adapters-ws.cjs.dev.js +2 -2
  17. package/adapters/ws/dist/trpc-server-adapters-ws.cjs.prod.js +2 -2
  18. package/adapters/ws/dist/trpc-server-adapters-ws.esm.js +2 -2
  19. package/dist/TRPCError.d.ts +3 -3
  20. package/dist/TRPCError.d.ts.map +1 -1
  21. package/dist/adapters/express.js +4 -5
  22. package/dist/adapters/express.mjs +4 -5
  23. package/dist/adapters/fastify/fastifyRequestHandler.d.ts.map +1 -1
  24. package/dist/adapters/fastify/index.js +5 -6
  25. package/dist/adapters/fastify/index.mjs +4 -5
  26. package/dist/adapters/next.js +4 -5
  27. package/dist/adapters/next.mjs +4 -5
  28. package/dist/adapters/node-http/index.js +4 -5
  29. package/dist/adapters/node-http/index.mjs +4 -5
  30. package/dist/adapters/node-http/nodeHTTPRequestHandler.d.ts.map +1 -1
  31. package/dist/adapters/node-http/types.d.ts +3 -3
  32. package/dist/adapters/node-http/types.d.ts.map +1 -1
  33. package/dist/adapters/standalone.d.ts.map +1 -1
  34. package/dist/adapters/standalone.js +10 -8
  35. package/dist/adapters/standalone.mjs +10 -7
  36. package/dist/adapters/ws.d.ts +3 -3
  37. package/dist/adapters/ws.d.ts.map +1 -1
  38. package/dist/adapters/ws.js +3 -3
  39. package/dist/adapters/ws.mjs +3 -3
  40. package/dist/assertNotBrowser.d.ts.map +1 -1
  41. package/dist/{codes-7f46544e.js → codes-4e4d55a9.js} +2 -0
  42. package/dist/{codes-7a3d4f65.mjs → codes-6c13cf43.mjs} +2 -0
  43. package/dist/http/internals/getHTTPStatusCode.d.ts +1 -0
  44. package/dist/http/internals/getHTTPStatusCode.d.ts.map +1 -1
  45. package/dist/http/internals/types.d.ts +4 -3
  46. package/dist/http/internals/types.d.ts.map +1 -1
  47. package/dist/http/resolveHTTPResponse.d.ts +1 -1
  48. package/dist/http/resolveHTTPResponse.d.ts.map +1 -1
  49. package/dist/index.js +13 -8
  50. package/dist/index.mjs +15 -10
  51. package/dist/internals/errors.d.ts +1 -0
  52. package/dist/internals/errors.d.ts.map +1 -1
  53. package/dist/internals/middlewares.d.ts +2 -1
  54. package/dist/internals/middlewares.d.ts.map +1 -1
  55. package/dist/internals/procedure.d.ts +16 -11
  56. package/dist/internals/procedure.d.ts.map +1 -1
  57. package/dist/{nodeHTTPRequestHandler-5fccb3bb.mjs → nodeHTTPRequestHandler-13c4bded.mjs} +2 -3
  58. package/dist/{nodeHTTPRequestHandler-7d71ac09.js → nodeHTTPRequestHandler-745e43e5.js} +3 -4
  59. package/dist/{resolveHTTPResponse-c3777a47.js → resolveHTTPResponse-b1167b6a.js} +6 -5
  60. package/dist/{resolveHTTPResponse-3292a84a.mjs → resolveHTTPResponse-de40fda7.mjs} +6 -5
  61. package/dist/router.d.ts +29 -25
  62. package/dist/router.d.ts.map +1 -1
  63. package/dist/rpc/codes.d.ts +2 -0
  64. package/dist/rpc/codes.d.ts.map +1 -1
  65. package/dist/rpc/index.js +1 -1
  66. package/dist/rpc/index.mjs +1 -1
  67. package/dist/{subscription-41611bc2.js → subscription-4b936ba3.js} +1 -1
  68. package/dist/{subscription-0d8a48ec.mjs → subscription-8a85f253.mjs} +1 -1
  69. package/dist/{transformTRPCResponse-ff424ff4.mjs → transformTRPCResponse-9fdeecca.mjs} +18 -6
  70. package/dist/{transformTRPCResponse-43a869de.js → transformTRPCResponse-a57d3226.js} +18 -5
  71. package/package.json +7 -3
  72. package/src/TRPCError.ts +2 -2
  73. package/src/adapters/fastify/fastifyRequestHandler.ts +0 -1
  74. package/src/adapters/node-http/nodeHTTPRequestHandler.ts +0 -1
  75. package/src/adapters/node-http/types.ts +3 -3
  76. package/src/adapters/standalone.ts +10 -3
  77. package/src/adapters/ws.ts +5 -5
  78. package/src/assertNotBrowser.ts +1 -0
  79. package/src/http/internals/getHTTPStatusCode.ts +1 -0
  80. package/src/http/internals/types.ts +5 -6
  81. package/src/http/resolveHTTPResponse.ts +4 -4
  82. package/src/internals/errors.ts +20 -4
  83. package/src/internals/middlewares.ts +2 -1
  84. package/src/internals/procedure.ts +63 -16
  85. package/src/router.ts +89 -28
  86. package/src/rpc/codes.ts +1 -0
  87. package/ws/dist/trpc-server-ws.cjs.dev.js +2 -2
  88. package/ws/dist/trpc-server-ws.cjs.prod.js +2 -2
  89. package/ws/dist/trpc-server-ws.esm.js +2 -2
@@ -44,6 +44,8 @@ const TRPC_ERROR_CODES_BY_KEY = {
44
44
  // 405
45
45
  TIMEOUT: -32008,
46
46
  // 408
47
+ CONFLICT: -32009,
48
+ // 409
47
49
  PRECONDITION_FAILED: -32012,
48
50
  // 412
49
51
  PAYLOAD_TOO_LARGE: -32013,
@@ -9,6 +9,7 @@ export declare const TRPC_ERROR_CODES_BY_NUMBER: {
9
9
  [-32004]: "NOT_FOUND";
10
10
  [-32005]: "METHOD_NOT_SUPPORTED";
11
11
  [-32008]: "TIMEOUT";
12
+ [-32009]: "CONFLICT";
12
13
  [-32012]: "PRECONDITION_FAILED";
13
14
  [-32013]: "PAYLOAD_TOO_LARGE";
14
15
  [-32099]: "CLIENT_CLOSED_REQUEST";
@@ -1 +1 @@
1
- {"version":3,"file":"getHTTPStatusCode.d.ts","sourceRoot":"","sources":["../../../src/http/internals/getHTTPStatusCode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAElE,eAAO,MAAM,0BAA0B;;;;;;;;;;;;CAAkC,CAAC;AAC1E,aAAK,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAE7B,oBAAY,sBAAsB,GAAG,OAAO,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAsB7E,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,EAAE,OAuBpE;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,SAAS,UAI1D"}
1
+ {"version":3,"file":"getHTTPStatusCode.d.ts","sourceRoot":"","sources":["../../../src/http/internals/getHTTPStatusCode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAElE,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;CAAkC,CAAC;AAC1E,aAAK,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAE7B,oBAAY,sBAAsB,GAAG,OAAO,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAuB7E,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,EAAE,OAuBpE;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,SAAS,UAI1D"}
@@ -1,8 +1,9 @@
1
- /// <reference types="node" />
2
- import { AnyRouter, Dict, ProcedureType, ResponseMeta, TRPCError, inferRouterContext, inferRouterError } from '@trpc/server';
3
- import { URLSearchParams } from 'url';
1
+ import { TRPCError } from '../../TRPCError';
4
2
  import { BaseHandlerOptions } from '../../internals/BaseHandlerOptions';
3
+ import { AnyRouter, ProcedureType, inferRouterContext, inferRouterError } from '../../router';
5
4
  import { TRPCResponse } from '../../rpc';
5
+ import { Dict } from '../../types';
6
+ import { ResponseMeta } from '../ResponseMeta';
6
7
  export declare type HTTPHeaders = Dict<string | string[]>;
7
8
  export interface HTTPResponse {
8
9
  status: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/http/internals/types.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,SAAS,EACT,IAAI,EACJ,aAAa,EACb,YAAY,EACZ,SAAS,EACT,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,KAAK,CAAC;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,oBAAY,WAAW,GAAG,IAAI,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;AAElD,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;CACf;AAED,aAAK,cAAc,CAAC,OAAO,SAAS,SAAS,IAAI,CAAC,IAAI,EAAE;IACtD,IAAI,EAAE,YAAY,CAAC,OAAO,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;IACzD,GAAG,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAClC;;QAEI;IACJ,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,EAAE,aAAa,GAAG,SAAS,CAAC;IAChC,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB,KAAK,YAAY,CAAC;AAEnB;;GAEG;AACH,MAAM,WAAW,sBAAsB,CAAC,OAAO,SAAS,SAAS,EAAE,QAAQ,CACzE,SAAQ,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC;IAC7C;;;;OAIG;IACH,YAAY,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;CACxC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/http/internals/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EACL,SAAS,EACT,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,oBAAY,WAAW,GAAG,IAAI,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;AAElD,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;CACf;AAED,aAAK,cAAc,CAAC,OAAO,SAAS,SAAS,IAAI,CAAC,IAAI,EAAE;IACtD,IAAI,EAAE,YAAY,CAAC,OAAO,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;IACzD,GAAG,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAClC;;QAEI;IACJ,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,EAAE,aAAa,GAAG,SAAS,CAAC;IAChC,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB,KAAK,YAAY,CAAC;AAEnB;;GAEG;AACH,MAAM,WAAW,sBAAsB,CAAC,OAAO,SAAS,SAAS,EAAE,QAAQ,CACzE,SAAQ,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC;IAC7C;;;;OAIG;IACH,YAAY,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;CACxC"}
@@ -1,6 +1,6 @@
1
- import { Maybe } from '@trpc/server';
2
1
  import { TRPCError } from '../TRPCError';
3
2
  import { AnyRouter, inferRouterContext } from '../router';
3
+ import { Maybe } from '../types';
4
4
  import { HTTPBaseHandlerOptions, HTTPRequest, HTTPResponse } from './internals/types';
5
5
  interface ResolveHTTPRequestOptions<TRouter extends AnyRouter, TRequest extends HTTPRequest> extends HTTPBaseHandlerOptions<TRouter, TRequest> {
6
6
  createContext: () => Promise<inferRouterContext<TRouter>>;
@@ -1 +1 @@
1
- {"version":3,"file":"resolveHTTPResponse.d.ts","sourceRoot":"","sources":["../../src/http/resolveHTTPResponse.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAIzC,OAAO,EACL,SAAS,EAET,kBAAkB,EAEnB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,sBAAsB,EAEtB,WAAW,EACX,YAAY,EACb,MAAM,mBAAmB,CAAC;AA4B3B,UAAU,yBAAyB,CACjC,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,WAAW,CAC5B,SAAQ,sBAAsB,CAAC,OAAO,EAAE,QAAQ,CAAC;IACjD,aAAa,EAAE,MAAM,OAAO,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,GAAG,EAAE,QAAQ,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;CAC1B;AAED,wBAAsB,mBAAmB,CACvC,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,WAAW,EAC5B,IAAI,EAAE,yBAAyB,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAmM3E"}
1
+ {"version":3,"file":"resolveHTTPResponse.d.ts","sourceRoot":"","sources":["../../src/http/resolveHTTPResponse.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAIzC,OAAO,EACL,SAAS,EAET,kBAAkB,EAEnB,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,OAAO,EACL,sBAAsB,EAEtB,WAAW,EACX,YAAY,EACb,MAAM,mBAAmB,CAAC;AA4B3B,UAAU,yBAAyB,CACjC,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,WAAW,CAC5B,SAAQ,sBAAsB,CAAC,OAAO,EAAE,QAAQ,CAAC;IACjD,aAAa,EAAE,MAAM,OAAO,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,GAAG,EAAE,QAAQ,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;CAC1B;AAED,wBAAsB,mBAAmB,CACvC,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,WAAW,EAC5B,IAAI,EAAE,yBAAyB,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAmM3E"}
package/dist/index.js CHANGED
@@ -2,10 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var resolveHTTPResponse = require('./resolveHTTPResponse-c3777a47.js');
6
- var subscription = require('./subscription-41611bc2.js');
7
- var transformTRPCResponse = require('./transformTRPCResponse-43a869de.js');
8
- var codes = require('./codes-7f46544e.js');
5
+ var resolveHTTPResponse = require('./resolveHTTPResponse-b1167b6a.js');
6
+ var subscription = require('./subscription-4b936ba3.js');
7
+ var transformTRPCResponse = require('./transformTRPCResponse-a57d3226.js');
8
+ var codes = require('./codes-4e4d55a9.js');
9
9
  require('events');
10
10
 
11
11
  resolveHTTPResponse.assertNotBrowser();
@@ -77,12 +77,14 @@ class Procedure {
77
77
  this.parseInputFn = void 0;
78
78
  this.outputParser = void 0;
79
79
  this.parseOutputFn = void 0;
80
+ this.meta = void 0;
80
81
  this.middlewares = opts.middlewares;
81
82
  this.resolver = opts.resolver;
82
83
  this.inputParser = opts.inputParser;
83
84
  this.parseInputFn = getParseFn(this.inputParser);
84
85
  this.outputParser = opts.outputParser;
85
86
  this.parseOutputFn = getParseFn(this.outputParser);
87
+ this.meta = opts.meta;
86
88
  }
87
89
 
88
90
  async parseInput(rawInput) {
@@ -91,7 +93,7 @@ class Procedure {
91
93
  } catch (cause) {
92
94
  throw new transformTRPCResponse.TRPCError({
93
95
  code: 'BAD_REQUEST',
94
- cause
96
+ cause: transformTRPCResponse.getCauseFromUnknown(cause)
95
97
  });
96
98
  }
97
99
  }
@@ -102,7 +104,7 @@ class Procedure {
102
104
  } catch (cause) {
103
105
  throw new transformTRPCResponse.TRPCError({
104
106
  code: 'INTERNAL_SERVER_ERROR',
105
- cause,
107
+ cause: transformTRPCResponse.getCauseFromUnknown(cause),
106
108
  message: 'Output validation failed'
107
109
  });
108
110
  }
@@ -139,6 +141,7 @@ class Procedure {
139
141
  type: opts.type,
140
142
  path: opts.path,
141
143
  rawInput: opts.rawInput,
144
+ meta: this.meta,
142
145
  next: nextFns[index + 1]
143
146
  }));
144
147
 
@@ -181,7 +184,8 @@ class Procedure {
181
184
  middlewares: [...middlewares, ...this.middlewares],
182
185
  resolver: this.resolver,
183
186
  inputParser: this.inputParser,
184
- outputParser: this.outputParser
187
+ outputParser: this.outputParser,
188
+ meta: this.meta
185
189
  });
186
190
  return instance;
187
191
  }
@@ -203,7 +207,8 @@ function createProcedure(opts) {
203
207
  inputParser: inputParser,
204
208
  resolver: opts.resolve,
205
209
  middlewares: [],
206
- outputParser: outputParser
210
+ outputParser: outputParser,
211
+ meta: opts.meta
207
212
  });
208
213
  }
209
214
 
package/dist/index.mjs CHANGED
@@ -1,9 +1,9 @@
1
- import { a as assertNotBrowser, g as getHTTPStatusCodeFromError } from './resolveHTTPResponse-3292a84a.mjs';
2
- export { a as assertNotBrowser, r as resolveHTTPResponse } from './resolveHTTPResponse-3292a84a.mjs';
3
- export { S as Subscription, s as subscriptionPullFactory } from './subscription-0d8a48ec.mjs';
4
- import { T as TRPCError, g as getErrorFromUnknown } from './transformTRPCResponse-ff424ff4.mjs';
5
- export { T as TRPCError } from './transformTRPCResponse-ff424ff4.mjs';
6
- import { T as TRPC_ERROR_CODES_BY_KEY } from './codes-7a3d4f65.mjs';
1
+ import { a as assertNotBrowser, g as getHTTPStatusCodeFromError } from './resolveHTTPResponse-de40fda7.mjs';
2
+ export { a as assertNotBrowser, r as resolveHTTPResponse } from './resolveHTTPResponse-de40fda7.mjs';
3
+ export { S as Subscription, s as subscriptionPullFactory } from './subscription-8a85f253.mjs';
4
+ import { T as TRPCError, g as getCauseFromUnknown, a as getErrorFromUnknown } from './transformTRPCResponse-9fdeecca.mjs';
5
+ export { T as TRPCError } from './transformTRPCResponse-9fdeecca.mjs';
6
+ import { T as TRPC_ERROR_CODES_BY_KEY } from './codes-6c13cf43.mjs';
7
7
  import 'events';
8
8
 
9
9
  assertNotBrowser();
@@ -75,12 +75,14 @@ class Procedure {
75
75
  this.parseInputFn = void 0;
76
76
  this.outputParser = void 0;
77
77
  this.parseOutputFn = void 0;
78
+ this.meta = void 0;
78
79
  this.middlewares = opts.middlewares;
79
80
  this.resolver = opts.resolver;
80
81
  this.inputParser = opts.inputParser;
81
82
  this.parseInputFn = getParseFn(this.inputParser);
82
83
  this.outputParser = opts.outputParser;
83
84
  this.parseOutputFn = getParseFn(this.outputParser);
85
+ this.meta = opts.meta;
84
86
  }
85
87
 
86
88
  async parseInput(rawInput) {
@@ -89,7 +91,7 @@ class Procedure {
89
91
  } catch (cause) {
90
92
  throw new TRPCError({
91
93
  code: 'BAD_REQUEST',
92
- cause
94
+ cause: getCauseFromUnknown(cause)
93
95
  });
94
96
  }
95
97
  }
@@ -100,7 +102,7 @@ class Procedure {
100
102
  } catch (cause) {
101
103
  throw new TRPCError({
102
104
  code: 'INTERNAL_SERVER_ERROR',
103
- cause,
105
+ cause: getCauseFromUnknown(cause),
104
106
  message: 'Output validation failed'
105
107
  });
106
108
  }
@@ -137,6 +139,7 @@ class Procedure {
137
139
  type: opts.type,
138
140
  path: opts.path,
139
141
  rawInput: opts.rawInput,
142
+ meta: this.meta,
140
143
  next: nextFns[index + 1]
141
144
  }));
142
145
 
@@ -179,7 +182,8 @@ class Procedure {
179
182
  middlewares: [...middlewares, ...this.middlewares],
180
183
  resolver: this.resolver,
181
184
  inputParser: this.inputParser,
182
- outputParser: this.outputParser
185
+ outputParser: this.outputParser,
186
+ meta: this.meta
183
187
  });
184
188
  return instance;
185
189
  }
@@ -201,7 +205,8 @@ function createProcedure(opts) {
201
205
  inputParser: inputParser,
202
206
  resolver: opts.resolve,
203
207
  middlewares: [],
204
- outputParser: outputParser
208
+ outputParser: outputParser,
209
+ meta: opts.meta
205
210
  });
206
211
  }
207
212
 
@@ -1,4 +1,5 @@
1
1
  import { TRPCError } from '../TRPCError';
2
2
  export declare function getMessageFromUnkownError(err: unknown, fallback: string): string;
3
3
  export declare function getErrorFromUnknown(cause: unknown): TRPCError;
4
+ export declare function getCauseFromUnknown(cause: unknown): Error | undefined;
4
5
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/internals/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,OAAO,EACZ,QAAQ,EAAE,MAAM,GACf,MAAM,CASR;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,CAgB7D"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/internals/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,OAAO,EACZ,QAAQ,EAAE,MAAM,GACf,MAAM,CASR;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,CAwB7D;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,qBAMjD"}
@@ -18,11 +18,12 @@ interface MiddlewareErrorResult<TContext> extends MiddlewareResultBase<TContext>
18
18
  error: TRPCError;
19
19
  }
20
20
  export declare type MiddlewareResult<TContext> = MiddlewareOKResult<TContext> | MiddlewareErrorResult<TContext>;
21
- export declare type MiddlewareFunction<TInputContext, TContext> = (opts: {
21
+ export declare type MiddlewareFunction<TInputContext, TContext, TMeta> = (opts: {
22
22
  ctx: TInputContext;
23
23
  type: ProcedureType;
24
24
  path: string;
25
25
  rawInput: unknown;
26
+ meta?: TMeta;
26
27
  next: {
27
28
  (): Promise<MiddlewareResult<TInputContext>>;
28
29
  <T>(opts: {
@@ -1 +1 @@
1
- {"version":3,"file":"middlewares.d.ts","sourceRoot":"","sources":["../../src/internals/middlewares.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,eAAO,MAAM,gBAAgB,eAA6B,CAAC;AAC3D,UAAU,oBAAoB,CAAC,QAAQ;IACrC;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,OAAO,gBAAgB,CAAC;IACzC,GAAG,EAAE,QAAQ,CAAC;CACf;AAED,UAAU,kBAAkB,CAAC,QAAQ,CAAE,SAAQ,oBAAoB,CAAC,QAAQ,CAAC;IAC3E,EAAE,EAAE,IAAI,CAAC;IACT,IAAI,EAAE,OAAO,CAAC;CAEf;AACD,UAAU,qBAAqB,CAAC,QAAQ,CACtC,SAAQ,oBAAoB,CAAC,QAAQ,CAAC;IACtC,EAAE,EAAE,KAAK,CAAC;IACV,KAAK,EAAE,SAAS,CAAC;CAElB;AAED,oBAAY,gBAAgB,CAAC,QAAQ,IACjC,kBAAkB,CAAC,QAAQ,CAAC,GAC5B,qBAAqB,CAAC,QAAQ,CAAC,CAAC;AAEpC,oBAAY,kBAAkB,CAAC,aAAa,EAAE,QAAQ,IAAI,CAAC,IAAI,EAAE;IAC/D,GAAG,EAAE,aAAa,CAAC;IACnB,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE;QACJ,IAAI,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC;QAC7C,CAAC,CAAC,EAAE,IAAI,EAAE;YAAE,GAAG,EAAE,CAAC,CAAA;SAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;KACrD,CAAC;CACH,KAAK,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"middlewares.d.ts","sourceRoot":"","sources":["../../src/internals/middlewares.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,eAAO,MAAM,gBAAgB,eAA6B,CAAC;AAC3D,UAAU,oBAAoB,CAAC,QAAQ;IACrC;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,OAAO,gBAAgB,CAAC;IACzC,GAAG,EAAE,QAAQ,CAAC;CACf;AAED,UAAU,kBAAkB,CAAC,QAAQ,CAAE,SAAQ,oBAAoB,CAAC,QAAQ,CAAC;IAC3E,EAAE,EAAE,IAAI,CAAC;IACT,IAAI,EAAE,OAAO,CAAC;CAEf;AACD,UAAU,qBAAqB,CAAC,QAAQ,CACtC,SAAQ,oBAAoB,CAAC,QAAQ,CAAC;IACtC,EAAE,EAAE,KAAK,CAAC;IACV,KAAK,EAAE,SAAS,CAAC;CAElB;AAED,oBAAY,gBAAgB,CAAC,QAAQ,IACjC,kBAAkB,CAAC,QAAQ,CAAC,GAC5B,qBAAqB,CAAC,QAAQ,CAAC,CAAC;AAEpC,oBAAY,kBAAkB,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAC,IAAI,EAAE;IACtE,GAAG,EAAE,aAAa,CAAC;IACnB,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,IAAI,EAAE;QACJ,IAAI,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC;QAC7C,CAAC,CAAC,EAAE,IAAI,EAAE;YAAE,GAAG,EAAE,CAAC,CAAA;SAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;KACrD,CAAC;CACH,KAAK,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC"}
@@ -21,11 +21,12 @@ export declare type ProcedureResolver<TContext, TInput, TOutput> = (opts: {
21
21
  input: TInput;
22
22
  type: ProcedureType;
23
23
  }) => Promise<TOutput> | TOutput;
24
- interface ProcedureOptions<TContext, TInput, TOutput, TParsedOutput> {
25
- middlewares: Array<MiddlewareFunction<any, any>>;
24
+ interface ProcedureOptions<TContext, TMeta, TInput, TOutput, TParsedOutput> {
25
+ middlewares: Array<MiddlewareFunction<any, any, any>>;
26
26
  resolver: ProcedureResolver<TContext, TInput, TOutput>;
27
27
  inputParser: ProcedureParser<TInput>;
28
28
  outputParser: ProcedureParser<TParsedOutput>;
29
+ meta: TMeta;
29
30
  }
30
31
  /**
31
32
  * @internal
@@ -39,14 +40,15 @@ export interface ProcedureCallOptions<TContext> {
39
40
  /**
40
41
  * @internal
41
42
  */
42
- export declare class Procedure<TInputContext, TContext, TInput, TParsedInput, TOutput, TParsedOutput, TFinalOutput = unknown extends TParsedOutput ? TOutput : TParsedOutput> {
43
+ export declare class Procedure<TInputContext, TContext, TMeta, TInput, TParsedInput, TOutput, TParsedOutput, TFinalOutput = unknown extends TParsedOutput ? TOutput : TParsedOutput> {
43
44
  private middlewares;
44
45
  private resolver;
45
46
  private readonly inputParser;
46
47
  private parseInputFn;
47
48
  private readonly outputParser;
48
49
  private parseOutputFn;
49
- constructor(opts: ProcedureOptions<TContext, TParsedInput, TOutput, TFinalOutput>);
50
+ readonly meta: TMeta;
51
+ constructor(opts: ProcedureOptions<TContext, TMeta, TParsedInput, TOutput, TFinalOutput>);
50
52
  private parseInput;
51
53
  private parseOutput;
52
54
  /**
@@ -58,24 +60,27 @@ export declare class Procedure<TInputContext, TContext, TInput, TParsedInput, TO
58
60
  * Create new procedure with passed middlewares
59
61
  * @param middlewares
60
62
  */
61
- inheritMiddlewares(middlewares: MiddlewareFunction<TInputContext, TContext>[]): this;
63
+ inheritMiddlewares(middlewares: MiddlewareFunction<TInputContext, TContext, TMeta>[]): this;
62
64
  }
63
- export declare type CreateProcedureWithInput<TContext, TInput, TOutput> = {
65
+ export declare type CreateProcedureWithInput<TContext, TMeta, TInput, TOutput> = {
64
66
  input: ProcedureParser<TInput>;
65
67
  output?: ProcedureParser<TOutput>;
68
+ meta?: TMeta;
66
69
  resolve: ProcedureResolver<TContext, TInput, TOutput>;
67
70
  };
68
- export declare type CreateProcedureWithInputOutputParser<TContext, TInput, TParsedInput, TOutput, TParsedOutput> = {
71
+ export declare type CreateProcedureWithInputOutputParser<TContext, TMeta, TInput, TParsedInput, TOutput, TParsedOutput> = {
69
72
  input: ProcedureParserWithInputOutput<TInput, TParsedInput>;
70
73
  output?: ProcedureParserWithInputOutput<TOutput, TParsedOutput>;
74
+ meta?: TMeta;
71
75
  resolve: ProcedureResolver<TContext, TParsedInput, TOutput>;
72
76
  };
73
- export declare type CreateProcedureWithoutInput<TContext, TOutput, TParsedOutput> = {
77
+ export declare type CreateProcedureWithoutInput<TContext, TMeta, TOutput, TParsedOutput> = {
74
78
  output?: ProcedureParserWithInputOutput<TOutput, TParsedOutput> | ProcedureParser<TOutput>;
79
+ meta?: TMeta;
75
80
  resolve: ProcedureResolver<TContext, undefined, TOutput>;
76
81
  };
77
- export declare type CreateProcedureOptions<TContext, TInput = undefined, TParsedInput = undefined, TOutput = undefined, TParsedOutput = undefined> = CreateProcedureWithInputOutputParser<TContext, TInput, TParsedInput, TOutput, TParsedOutput> | CreateProcedureWithInput<TContext, TInput, TOutput> | CreateProcedureWithoutInput<TContext, TOutput, TParsedOutput>;
78
- export declare function createProcedure<TContext, TInput, TParsedInput, TOutput, TParsedOutput>(opts: CreateProcedureOptions<TContext, TInput, TParsedInput, TOutput, TParsedOutput>): Procedure<unknown, TContext, TInput, TParsedInput, TOutput, TParsedOutput>;
79
- export declare type inferProcedureFromOptions<TInputContext, TOptions extends CreateProcedureOptions<any, any, any, any, any>> = TOptions extends CreateProcedureOptions<infer TContext, infer TInput, infer TParsedInput, infer TOutput, infer TParsedOutput> ? Procedure<TInputContext, TContext, unknown extends TInput ? undefined : TInput, unknown extends TParsedInput ? undefined : TParsedInput, TOutput, TParsedOutput> : never;
82
+ export declare type CreateProcedureOptions<TContext, TMeta = undefined, TInput = undefined, TParsedInput = undefined, TOutput = undefined, TParsedOutput = undefined> = CreateProcedureWithInputOutputParser<TContext, TMeta, TInput, TParsedInput, TOutput, TParsedOutput> | CreateProcedureWithInput<TContext, TMeta, TInput, TOutput> | CreateProcedureWithoutInput<TContext, TMeta, TOutput, TParsedOutput>;
83
+ export declare function createProcedure<TContext, TMeta, TInput, TParsedInput, TOutput, TParsedOutput>(opts: CreateProcedureOptions<TContext, TMeta, TInput, TParsedInput, TOutput, TParsedOutput>): Procedure<unknown, TContext, TMeta, TInput, TParsedInput, TOutput, TParsedOutput>;
84
+ export declare type inferProcedureFromOptions<TInputContext, TOptions extends CreateProcedureOptions<any, any, any, any, any, any>> = TOptions extends CreateProcedureOptions<infer TContext, infer TMeta, infer TInput, infer TParsedInput, infer TOutput, infer TParsedOutput> ? Procedure<TInputContext, TContext, TMeta, unknown extends TInput ? undefined : TInput, unknown extends TParsedInput ? undefined : TParsedInput, TOutput, TParsedOutput> : never;
80
85
  export {};
81
86
  //# sourceMappingURL=procedure.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"procedure.d.ts","sourceRoot":"","sources":["../../src/internals/procedure.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"procedure.d.ts","sourceRoot":"","sources":["../../src/internals/procedure.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
- import { URLSearchParams } from 'url';
2
- import { a as assertNotBrowser, r as resolveHTTPResponse } from './resolveHTTPResponse-3292a84a.mjs';
3
- import { T as TRPCError } from './transformTRPCResponse-ff424ff4.mjs';
1
+ import { a as assertNotBrowser, r as resolveHTTPResponse } from './resolveHTTPResponse-de40fda7.mjs';
2
+ import { T as TRPCError } from './transformTRPCResponse-9fdeecca.mjs';
4
3
 
5
4
  async function getPostBody({
6
5
  req,
@@ -1,8 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var url = require('url');
4
- var resolveHTTPResponse = require('./resolveHTTPResponse-c3777a47.js');
5
- var transformTRPCResponse = require('./transformTRPCResponse-43a869de.js');
3
+ var resolveHTTPResponse = require('./resolveHTTPResponse-b1167b6a.js');
4
+ var transformTRPCResponse = require('./transformTRPCResponse-a57d3226.js');
6
5
 
7
6
  async function getPostBody({
8
7
  req,
@@ -58,7 +57,7 @@ async function nodeHTTPRequestHandler(opts) {
58
57
  router
59
58
  } = opts;
60
59
  const bodyResult = await getPostBody(opts);
61
- const query = opts.req.query ? new url.URLSearchParams(opts.req.query) : new url.URLSearchParams(opts.req.url.split('?')[1]);
60
+ const query = opts.req.query ? new URLSearchParams(opts.req.query) : new URLSearchParams(opts.req.url.split('?')[1]);
62
61
  const req = {
63
62
  method: opts.req.method,
64
63
  headers: opts.req.headers,
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var transformTRPCResponse = require('./transformTRPCResponse-43a869de.js');
4
- var codes = require('./codes-7f46544e.js');
3
+ var transformTRPCResponse = require('./transformTRPCResponse-a57d3226.js');
4
+ var codes = require('./codes-4e4d55a9.js');
5
5
 
6
6
  /* istanbul ignore file */
7
7
  function assertNotBrowser() {
8
- if (typeof window !== 'undefined' && process.env.NODE_ENV !== 'test' && process.env.JEST_WORKER_ID === undefined) {
8
+ if (typeof window !== 'undefined' && !('Deno' in window) && process.env.NODE_ENV !== 'test' && process.env.JEST_WORKER_ID === undefined) {
9
9
  throw new Error('Imported server-only code in the browser');
10
10
  }
11
11
  }
@@ -19,6 +19,7 @@ const JSONRPC2_TO_HTTP_CODE = {
19
19
  UNAUTHORIZED: 401,
20
20
  FORBIDDEN: 403,
21
21
  TIMEOUT: 408,
22
+ CONFLICT: 409,
22
23
  CLIENT_CLOSED_REQUEST: 499,
23
24
  PRECONDITION_FAILED: 412,
24
25
  PAYLOAD_TOO_LARGE: 413,
@@ -81,10 +82,10 @@ function getRawProcedureInputOrThrow(req) {
81
82
  }
82
83
 
83
84
  return typeof req.body === 'string' ? JSON.parse(req.body) : req.body;
84
- } catch (cause) {
85
+ } catch (err) {
85
86
  throw new transformTRPCResponse.TRPCError({
86
87
  code: 'PARSE_ERROR',
87
- cause
88
+ cause: transformTRPCResponse.getCauseFromUnknown(err)
88
89
  });
89
90
  }
90
91
  }
@@ -1,9 +1,9 @@
1
- import { T as TRPCError, c as callProcedure, g as getErrorFromUnknown, t as transformTRPCResponse } from './transformTRPCResponse-ff424ff4.mjs';
2
- import { i as invert, T as TRPC_ERROR_CODES_BY_KEY } from './codes-7a3d4f65.mjs';
1
+ import { T as TRPCError, c as callProcedure, a as getErrorFromUnknown, g as getCauseFromUnknown, t as transformTRPCResponse } from './transformTRPCResponse-9fdeecca.mjs';
2
+ import { i as invert, T as TRPC_ERROR_CODES_BY_KEY } from './codes-6c13cf43.mjs';
3
3
 
4
4
  /* istanbul ignore file */
5
5
  function assertNotBrowser() {
6
- if (typeof window !== 'undefined' && process.env.NODE_ENV !== 'test' && process.env.JEST_WORKER_ID === undefined) {
6
+ if (typeof window !== 'undefined' && !('Deno' in window) && process.env.NODE_ENV !== 'test' && process.env.JEST_WORKER_ID === undefined) {
7
7
  throw new Error('Imported server-only code in the browser');
8
8
  }
9
9
  }
@@ -17,6 +17,7 @@ const JSONRPC2_TO_HTTP_CODE = {
17
17
  UNAUTHORIZED: 401,
18
18
  FORBIDDEN: 403,
19
19
  TIMEOUT: 408,
20
+ CONFLICT: 409,
20
21
  CLIENT_CLOSED_REQUEST: 499,
21
22
  PRECONDITION_FAILED: 412,
22
23
  PAYLOAD_TOO_LARGE: 413,
@@ -79,10 +80,10 @@ function getRawProcedureInputOrThrow(req) {
79
80
  }
80
81
 
81
82
  return typeof req.body === 'string' ? JSON.parse(req.body) : req.body;
82
- } catch (cause) {
83
+ } catch (err) {
83
84
  throw new TRPCError({
84
85
  code: 'PARSE_ERROR',
85
- cause
86
+ cause: getCauseFromUnknown(err)
86
87
  });
87
88
  }
88
89
  }
package/dist/router.d.ts CHANGED
@@ -12,11 +12,11 @@ export declare type ProcedureType = 'query' | 'mutation' | 'subscription';
12
12
  /**
13
13
  * @internal
14
14
  */
15
- export declare type ProcedureRecord<TInputContext = any, TContext = any, TInput = any, TParsedInput = any, TOutput = any, TParsedOutput = any> = Record<string, Procedure<TInputContext, TContext, TInput, TParsedInput, TOutput, TParsedOutput>>;
15
+ export declare type ProcedureRecord<TInputContext = any, TContext = any, TMeta = any, TInput = any, TParsedInput = any, TOutput = any, TParsedOutput = any> = Record<string, Procedure<TInputContext, TContext, TMeta, TInput, TParsedInput, TOutput, TParsedOutput>>;
16
16
  /**
17
17
  * @public
18
18
  */
19
- export declare type inferProcedureInput<TProcedure extends Procedure<any, any, any, any, any, any>> = TProcedure extends Procedure<any, any, infer Input, any, any, any> ? undefined extends Input ? Input | null | void : Input : undefined;
19
+ export declare type inferProcedureInput<TProcedure extends Procedure<any, any, any, any, any, any, any>> = TProcedure extends Procedure<any, any, any, infer Input, any, any, any> ? undefined extends Input ? Input | null | void : Input : undefined;
20
20
  /**
21
21
  * @public
22
22
  */
@@ -24,7 +24,7 @@ export declare type inferAsyncReturnType<TFunction extends (...args: any) => any
24
24
  /**
25
25
  * @public
26
26
  */
27
- export declare type inferProcedureOutput<TProcedure extends Procedure<any, any, any, any, any, any>> = inferAsyncReturnType<TProcedure['call']>;
27
+ export declare type inferProcedureOutput<TProcedure extends Procedure<any, any, any, any, any, any, any>> = inferAsyncReturnType<TProcedure['call']>;
28
28
  /**
29
29
  * @public
30
30
  * @beta
@@ -33,16 +33,20 @@ export declare type inferSubscriptionOutput<TRouter extends AnyRouter, TPath ext
33
33
  /**
34
34
  * @internal
35
35
  */
36
- export declare type inferHandlerInput<TProcedure extends Procedure<any, any, any, any, any, any>> = TProcedure extends Procedure<any, any, infer TInput, any, any, any> ? undefined extends TInput ? unknown extends TInput ? [(null | undefined)?] : [(TInput | null | undefined)?] : [TInput] : [(undefined | null)?];
36
+ export declare type inferHandlerInput<TProcedure extends Procedure<any, any, any, any, any, any, any>> = TProcedure extends Procedure<any, any, any, infer TInput, any, any, any> ? undefined extends TInput ? unknown extends TInput ? [(null | undefined)?] : [(TInput | null | undefined)?] : [TInput] : [(undefined | null)?];
37
37
  declare type inferHandlerFn<TProcedures extends ProcedureRecord> = <TProcedure extends TProcedures[TPath], TPath extends keyof TProcedures & string>(path: TPath, ...args: inferHandlerInput<TProcedure>) => Promise<inferProcedureOutput<TProcedures[TPath]>>;
38
38
  /**
39
39
  * @internal
40
40
  */
41
41
  export declare type inferRouterContext<TRouter extends AnyRouter> = Parameters<TRouter['createCaller']>[0];
42
+ /**
43
+ * @internal
44
+ */
45
+ export declare type inferRouterMeta<TRouter extends AnyRouter> = TRouter extends Router<any, any, infer TMeta, any, any, any, any> ? TMeta : {};
42
46
  /**
43
47
  * @public
44
48
  */
45
- export declare type AnyRouter<TContext = any> = Router<any, TContext, any, any, any, any>;
49
+ export declare type AnyRouter<TContext = any> = Router<any, TContext, any, any, any, any, any>;
46
50
  /**
47
51
  * @internal
48
52
  */
@@ -71,19 +75,19 @@ export interface DefaultErrorShape extends TRPCErrorShape<TRPC_ERROR_CODE_NUMBER
71
75
  message: string;
72
76
  code: TRPC_ERROR_CODE_NUMBER;
73
77
  }
74
- declare type SwapProcedureContext<TProcedure extends Procedure<any, any, any, any, any, any>, TNewContext> = TProcedure extends Procedure<infer TInputContext, infer _TOldContext, infer TInput, infer TParsedInput, infer TOutput, infer TParsedOutput> ? Procedure<TInputContext, TNewContext, TInput, TParsedInput, TOutput, TParsedOutput> : never;
78
+ declare type SwapProcedureContext<TProcedure extends Procedure<any, any, any, any, any, any, any>, TNewContext> = TProcedure extends Procedure<infer TInputContext, infer _TOldContext, infer TMeta, infer TInput, infer TParsedInput, infer TOutput, infer TParsedOutput> ? Procedure<TInputContext, TNewContext, TMeta, TInput, TParsedInput, TOutput, TParsedOutput> : never;
75
79
  declare type SwapContext<TObj extends ProcedureRecord<any, any, any, any, any, any>, TNewContext> = {
76
80
  [P in keyof TObj]: SwapProcedureContext<TObj[P], TNewContext>;
77
81
  };
78
82
  /**
79
83
  * @internal The type signature of this class may change without warning.
80
84
  */
81
- export declare class Router<TInputContext, TContext, TQueries extends ProcedureRecord<TInputContext, TContext, any, any, any, any>, TMutations extends ProcedureRecord<TInputContext, TContext, any, any, any, any>, TSubscriptions extends ProcedureRecord<TInputContext, TContext, unknown, unknown, Subscription<unknown>, unknown>, TErrorShape extends TRPCErrorShape<number>> {
85
+ export declare class Router<TInputContext, TContext, TMeta extends Record<string, any>, TQueries extends ProcedureRecord<TInputContext, TContext, any, any, any, any, any>, TMutations extends ProcedureRecord<TInputContext, TContext, any, any, any, any, any>, TSubscriptions extends ProcedureRecord<TInputContext, TContext, unknown, unknown, Subscription<unknown>, unknown, unknown>, TErrorShape extends TRPCErrorShape<number>> {
82
86
  readonly _def: {
83
87
  queries: TQueries;
84
88
  mutations: TMutations;
85
89
  subscriptions: TSubscriptions;
86
- middlewares: MiddlewareFunction<TInputContext, TContext>[];
90
+ middlewares: MiddlewareFunction<TInputContext, TContext, TMeta>[];
87
91
  errorFormatter: ErrorFormatter<TContext, TErrorShape>;
88
92
  transformer: CombinedDataTransformer;
89
93
  };
@@ -91,40 +95,40 @@ export declare class Router<TInputContext, TContext, TQueries extends ProcedureR
91
95
  queries?: TQueries;
92
96
  mutations?: TMutations;
93
97
  subscriptions?: TSubscriptions;
94
- middlewares?: MiddlewareFunction<TInputContext, TContext>[];
98
+ middlewares?: MiddlewareFunction<TInputContext, TContext, TMeta>[];
95
99
  errorFormatter?: ErrorFormatter<TContext, TErrorShape>;
96
100
  transformer?: CombinedDataTransformer;
97
101
  });
98
102
  private static prefixProcedures;
99
- query<TPath extends string, TInput, TParsedInput, TOutput, TParsedOutput>(path: TPath, procedure: CreateProcedureWithInputOutputParser<TContext, TInput, TParsedInput, TOutput, TParsedOutput>): Router<TInputContext, TContext, TQueries & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TMutations, TSubscriptions, TErrorShape>;
100
- query<TPath extends string, TInput, TOutput>(path: TPath, procedure: CreateProcedureWithInput<TContext, TInput, TOutput>): Router<TInputContext, TContext, TQueries & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TMutations, TSubscriptions, TErrorShape>;
101
- query<TPath extends string, TOutput, TParsedOutput>(path: TPath, procedure: CreateProcedureWithoutInput<TContext, TOutput, TParsedOutput>): Router<TInputContext, TContext, TQueries & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TMutations, TSubscriptions, TErrorShape>;
102
- mutation<TPath extends string, TInput, TParsedInput, TOutput, TParsedOutput>(path: TPath, procedure: CreateProcedureWithInputOutputParser<TContext, TInput, TParsedInput, TOutput, TParsedOutput>): Router<TInputContext, TContext, TQueries, TMutations & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TSubscriptions, TErrorShape>;
103
- mutation<TPath extends string, TInput, TOutput>(path: TPath, procedure: CreateProcedureWithInput<TContext, TInput, TOutput>): Router<TInputContext, TContext, TQueries, TMutations & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TSubscriptions, TErrorShape>;
104
- mutation<TPath extends string, TOutput, TParsedOutput>(path: TPath, procedure: CreateProcedureWithoutInput<TContext, TOutput, TParsedOutput>): Router<TInputContext, TContext, TQueries, TMutations & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TSubscriptions, TErrorShape>;
103
+ query<TPath extends string, TInput, TParsedInput, TOutput, TParsedOutput>(path: TPath, procedure: CreateProcedureWithInputOutputParser<TContext, TMeta, TInput, TParsedInput, TOutput, TParsedOutput>): Router<TInputContext, TContext, TMeta, TQueries & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TMutations, TSubscriptions, TErrorShape>;
104
+ query<TPath extends string, TInput, TOutput>(path: TPath, procedure: CreateProcedureWithInput<TContext, TMeta, TInput, TOutput>): Router<TInputContext, TContext, TMeta, TQueries & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TMutations, TSubscriptions, TErrorShape>;
105
+ query<TPath extends string, TOutput, TParsedOutput>(path: TPath, procedure: CreateProcedureWithoutInput<TContext, TMeta, TOutput, TParsedOutput>): Router<TInputContext, TContext, TMeta, TQueries & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TMutations, TSubscriptions, TErrorShape>;
106
+ mutation<TPath extends string, TInput, TParsedInput, TOutput, TParsedOutput>(path: TPath, procedure: CreateProcedureWithInputOutputParser<TContext, TMeta, TInput, TParsedInput, TOutput, TParsedOutput>): Router<TInputContext, TContext, TMeta, TQueries, TMutations & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TSubscriptions, TErrorShape>;
107
+ mutation<TPath extends string, TInput, TOutput>(path: TPath, procedure: CreateProcedureWithInput<TContext, TMeta, TInput, TOutput>): Router<TInputContext, TContext, TMeta, TQueries, TMutations & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TSubscriptions, TErrorShape>;
108
+ mutation<TPath extends string, TOutput, TParsedOutput>(path: TPath, procedure: CreateProcedureWithoutInput<TContext, TMeta, TOutput, TParsedOutput>): Router<TInputContext, TContext, TMeta, TQueries, TMutations & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TSubscriptions, TErrorShape>;
105
109
  /**
106
110
  * @beta Might change without a major version bump
107
111
  */
108
- subscription<TPath extends string, TInput, TParsedInput, TOutput extends Subscription<unknown>>(path: TPath, procedure: Omit<CreateProcedureWithInputOutputParser<TContext, TInput, TParsedInput, TOutput, unknown>, 'output'>): Router<TInputContext, TContext, TQueries, TMutations, TSubscriptions & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TErrorShape>;
112
+ subscription<TPath extends string, TInput, TParsedInput, TOutput extends Subscription<unknown>>(path: TPath, procedure: Omit<CreateProcedureWithInputOutputParser<TContext, TMeta, TInput, TParsedInput, TOutput, unknown>, 'output'>): Router<TInputContext, TContext, TMeta, TQueries, TMutations, TSubscriptions & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TErrorShape>;
109
113
  /**
110
114
  * @beta Might change without a major version bump
111
115
  */
112
- subscription<TPath extends string, TInput, TOutput extends Subscription<unknown>>(path: TPath, procedure: Omit<CreateProcedureWithInput<TContext, TInput, TOutput>, 'output'>): Router<TInputContext, TContext, TQueries, TMutations, TSubscriptions & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TErrorShape>;
116
+ subscription<TPath extends string, TInput, TOutput extends Subscription<unknown>>(path: TPath, procedure: Omit<CreateProcedureWithInput<TContext, TMeta, TInput, TOutput>, 'output'>): Router<TInputContext, TContext, TMeta, TQueries, TMutations, TSubscriptions & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TErrorShape>;
113
117
  /**
114
118
  * @beta Might change without a major version bump
115
119
  */
116
- subscription<TPath extends string, TOutput extends Subscription<unknown>>(path: TPath, procedure: Omit<CreateProcedureWithoutInput<TContext, TOutput, unknown>, 'output'>): Router<TInputContext, TContext, TQueries, TMutations, TSubscriptions & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TErrorShape>;
120
+ subscription<TPath extends string, TOutput extends Subscription<unknown>>(path: TPath, procedure: Omit<CreateProcedureWithoutInput<TContext, TMeta, TOutput, unknown>, 'output'>): Router<TInputContext, TContext, TMeta, TQueries, TMutations, TSubscriptions & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TErrorShape>;
117
121
  /**
118
122
  * Merge router with other router
119
123
  * @param router
120
124
  */
121
- merge<TChildRouter extends Router<TContext, any, any, any, any, any>>(router: TChildRouter): Router<TInputContext, inferRouterContext<TChildRouter>, TQueries & TChildRouter['_def']['queries'], TMutations & TChildRouter['_def']['mutations'], TSubscriptions & TChildRouter['_def']['subscriptions'], TErrorShape>;
125
+ merge<TChildRouter extends Router<TContext, any, TMeta, any, any, any, any>>(router: TChildRouter): Router<TInputContext, inferRouterContext<TChildRouter>, TMeta, TQueries & TChildRouter['_def']['queries'], TMutations & TChildRouter['_def']['mutations'], TSubscriptions & TChildRouter['_def']['subscriptions'], TErrorShape>;
122
126
  /**
123
127
  * Merge router with other router
124
128
  * @param prefix Prefix that this router should live under
125
129
  * @param router
126
130
  */
127
- merge<TPath extends string, TChildRouter extends Router<TContext, any, any, any, any, any>>(prefix: TPath, router: TChildRouter): Router<TInputContext, inferRouterContext<TChildRouter>, TQueries & Prefixer<TChildRouter['_def']['queries'], `${TPath}`>, TMutations & Prefixer<TChildRouter['_def']['mutations'], `${TPath}`>, TSubscriptions & Prefixer<TChildRouter['_def']['subscriptions'], `${TPath}`>, TErrorShape>;
131
+ merge<TPath extends string, TChildRouter extends Router<TContext, any, TMeta, any, any, any, any>>(prefix: TPath, router: TChildRouter): Router<TInputContext, inferRouterContext<TChildRouter>, TMeta, TQueries & Prefixer<TChildRouter['_def']['queries'], `${TPath}`>, TMutations & Prefixer<TChildRouter['_def']['mutations'], `${TPath}`>, TSubscriptions & Prefixer<TChildRouter['_def']['subscriptions'], `${TPath}`>, TErrorShape>;
128
132
  /**
129
133
  * Invoke procedure. Only for internal use within library.
130
134
  */
@@ -138,12 +142,12 @@ export declare class Router<TInputContext, TContext, TQueries extends ProcedureR
138
142
  * Function to be called before any procedure is invoked
139
143
  * @link https://trpc.io/docs/middlewares
140
144
  */
141
- middleware<TNewContext>(middleware: MiddlewareFunction<TContext, TNewContext>): Router<TInputContext, TNewContext, SwapContext<TQueries, TNewContext>, SwapContext<TMutations, TNewContext>, SwapContext<TSubscriptions, TNewContext>, TErrorShape>;
145
+ middleware<TNewContext>(middleware: MiddlewareFunction<TContext, TNewContext, TMeta>): Router<TInputContext, TNewContext, TMeta, SwapContext<TQueries, TNewContext>, SwapContext<TMutations, TNewContext>, SwapContext<TSubscriptions, TNewContext>, TErrorShape>;
142
146
  /**
143
147
  * Format errors
144
148
  * @link https://trpc.io/docs/error-formatting
145
149
  */
146
- formatError<TErrorFormatter extends ErrorFormatter<TContext, TRPCErrorShape<number>>>(errorFormatter: TErrorFormatter): Router<TInputContext, TContext, TQueries, TMutations, TSubscriptions, ReturnType<TErrorFormatter>>;
150
+ formatError<TErrorFormatter extends ErrorFormatter<TContext, TRPCErrorShape<number>>>(errorFormatter: TErrorFormatter): Router<TInputContext, TContext, TMeta, TQueries, TMutations, TSubscriptions, ReturnType<TErrorFormatter>>;
147
151
  getErrorShape(opts: {
148
152
  error: TRPCError;
149
153
  type: ProcedureType | 'unknown';
@@ -155,15 +159,15 @@ export declare class Router<TInputContext, TContext, TQueries extends ProcedureR
155
159
  * Add data transformer to serialize/deserialize input args + output
156
160
  * @link https://trpc.io/docs/data-transformers
157
161
  */
158
- transformer(_transformer: DataTransformerOptions): Router<TInputContext, TContext, TQueries, TMutations, TSubscriptions, TErrorShape>;
162
+ transformer(_transformer: DataTransformerOptions): Router<TInputContext, TContext, TMeta, TQueries, TMutations, TSubscriptions, TErrorShape>;
159
163
  /**
160
164
  * Flattens the generics of TQueries/TMutations/TSubscriptions.
161
165
  * ⚠️ Experimental - might disappear. ⚠️
162
166
  *
163
167
  * @alpha
164
168
  */
165
- flat(): Router<TInputContext, TContext, flatten<{}, TQueries>, flatten<{}, TMutations>, flatten<{}, TSubscriptions>, TErrorShape>;
169
+ flat(): Router<TInputContext, TContext, TMeta, flatten<{}, TQueries>, flatten<{}, TMutations>, flatten<{}, TSubscriptions>, TErrorShape>;
166
170
  }
167
- export declare function router<TContext>(): Router<TContext, TContext, {}, {}, {}, DefaultErrorShape>;
171
+ export declare function router<TContext, TMeta extends Record<string, any> = {}>(): Router<TContext, TContext, TMeta, {}, {}, {}, DefaultErrorShape>;
168
172
  export {};
169
173
  //# sourceMappingURL=router.d.ts.map