@trpc/server 11.0.0-rc.340 → 11.0.0-rc.345

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 (145) hide show
  1. package/dist/@trpc/server/http.d.ts +0 -1
  2. package/dist/@trpc/server/http.d.ts.map +1 -1
  3. package/dist/@trpc/server/index.d.ts +2 -1
  4. package/dist/@trpc/server/index.d.ts.map +1 -1
  5. package/dist/adapters/aws-lambda/content-type/json/index.d.ts +10 -0
  6. package/dist/adapters/aws-lambda/content-type/json/index.d.ts.map +1 -0
  7. package/dist/adapters/aws-lambda/content-type/json/index.js +59 -0
  8. package/dist/adapters/aws-lambda/content-type/json/index.mjs +57 -0
  9. package/dist/adapters/aws-lambda/index.d.ts.map +1 -1
  10. package/dist/adapters/aws-lambda/index.js +19 -9
  11. package/dist/adapters/aws-lambda/index.mjs +19 -9
  12. package/dist/adapters/aws-lambda/utils.d.ts +3 -12
  13. package/dist/adapters/aws-lambda/utils.d.ts.map +1 -1
  14. package/dist/adapters/aws-lambda/utils.js +12 -1
  15. package/dist/adapters/aws-lambda/utils.mjs +12 -2
  16. package/dist/adapters/content-handlers/selectContentHandlerOrUnsupportedMediaType.d.ts +4 -0
  17. package/dist/adapters/content-handlers/selectContentHandlerOrUnsupportedMediaType.d.ts.map +1 -0
  18. package/dist/adapters/content-handlers/selectContentHandlerOrUnsupportedMediaType.js +22 -0
  19. package/dist/adapters/content-handlers/selectContentHandlerOrUnsupportedMediaType.mjs +20 -0
  20. package/dist/adapters/express.d.ts.map +1 -1
  21. package/dist/adapters/express.js +0 -1
  22. package/dist/adapters/express.mjs +0 -1
  23. package/dist/adapters/fastify/content-type/json/index.d.ts +8 -0
  24. package/dist/adapters/fastify/content-type/json/index.d.ts.map +1 -0
  25. package/dist/adapters/fastify/content-type/json/index.js +59 -0
  26. package/dist/adapters/fastify/content-type/json/index.mjs +57 -0
  27. package/dist/adapters/fastify/fastifyRequestHandler.d.ts +1 -9
  28. package/dist/adapters/fastify/fastifyRequestHandler.d.ts.map +1 -1
  29. package/dist/adapters/fastify/fastifyRequestHandler.js +10 -2
  30. package/dist/adapters/fastify/fastifyRequestHandler.mjs +10 -2
  31. package/dist/adapters/fastify/fastifyTRPCPlugin.d.ts +1 -1
  32. package/dist/adapters/fastify/fastifyTRPCPlugin.d.ts.map +1 -1
  33. package/dist/adapters/fastify/types.d.ts +11 -0
  34. package/dist/adapters/fastify/types.d.ts.map +1 -0
  35. package/dist/adapters/fetch/content-type/json/index.d.ts +9 -0
  36. package/dist/adapters/fetch/content-type/json/index.d.ts.map +1 -0
  37. package/dist/adapters/fetch/content-type/json/index.js +58 -0
  38. package/dist/adapters/fetch/content-type/json/index.mjs +56 -0
  39. package/dist/adapters/fetch/fetchRequestHandler.d.ts +1 -5
  40. package/dist/adapters/fetch/fetchRequestHandler.d.ts.map +1 -1
  41. package/dist/adapters/fetch/fetchRequestHandler.js +16 -2
  42. package/dist/adapters/fetch/fetchRequestHandler.mjs +16 -2
  43. package/dist/adapters/fetch/types.d.ts +9 -12
  44. package/dist/adapters/fetch/types.d.ts.map +1 -1
  45. package/dist/adapters/next-app-dir/nextAppDirCaller.d.ts +2 -7
  46. package/dist/adapters/next-app-dir/nextAppDirCaller.d.ts.map +1 -1
  47. package/dist/adapters/next.d.ts.map +1 -1
  48. package/dist/adapters/next.js +0 -1
  49. package/dist/adapters/next.mjs +0 -1
  50. package/dist/adapters/node-http/content-type/form-data/fileUploadHandler.js +0 -72
  51. package/dist/adapters/node-http/content-type/form-data/fileUploadHandler.mjs +5 -76
  52. package/dist/adapters/node-http/content-type/form-data/index.d.ts +5 -19
  53. package/dist/adapters/node-http/content-type/form-data/index.d.ts.map +1 -1
  54. package/dist/adapters/node-http/content-type/form-data/index.js +14 -39
  55. package/dist/adapters/node-http/content-type/form-data/index.mjs +15 -35
  56. package/dist/adapters/node-http/content-type/form-data/streamSlice.d.ts +2 -2
  57. package/dist/adapters/node-http/content-type/form-data/streamSlice.d.ts.map +1 -1
  58. package/dist/adapters/node-http/content-type/form-data/uploadHandler.js +0 -12
  59. package/dist/adapters/node-http/content-type/form-data/uploadHandler.mjs +1 -12
  60. package/dist/adapters/node-http/content-type/json/getPostBody.d.ts.map +1 -1
  61. package/dist/adapters/node-http/content-type/json/getPostBody.js +4 -12
  62. package/dist/adapters/node-http/content-type/json/getPostBody.mjs +4 -12
  63. package/dist/adapters/node-http/content-type/json/index.d.ts +4 -1
  64. package/dist/adapters/node-http/content-type/json/index.d.ts.map +1 -1
  65. package/dist/adapters/node-http/content-type/json/index.js +59 -10
  66. package/dist/adapters/node-http/content-type/json/index.mjs +59 -10
  67. package/dist/adapters/node-http/content-type/octet/index.d.ts +5 -0
  68. package/dist/adapters/node-http/content-type/octet/index.d.ts.map +1 -0
  69. package/dist/adapters/node-http/content-type/octet/index.js +19 -0
  70. package/dist/adapters/node-http/content-type/octet/index.mjs +17 -0
  71. package/dist/adapters/node-http/content-type/types.d.ts +8 -0
  72. package/dist/adapters/node-http/content-type/types.d.ts.map +1 -0
  73. package/dist/adapters/node-http/nodeHTTPRequestHandler.d.ts.map +1 -1
  74. package/dist/adapters/node-http/nodeHTTPRequestHandler.js +19 -21
  75. package/dist/adapters/node-http/nodeHTTPRequestHandler.mjs +20 -22
  76. package/dist/adapters/node-http/types.d.ts +8 -19
  77. package/dist/adapters/node-http/types.d.ts.map +1 -1
  78. package/dist/adapters/standalone.d.ts.map +1 -1
  79. package/dist/adapters/standalone.js +0 -1
  80. package/dist/adapters/standalone.mjs +0 -1
  81. package/dist/adapters/ws.d.ts +2 -12
  82. package/dist/adapters/ws.d.ts.map +1 -1
  83. package/dist/bundle-analysis.json +266 -207
  84. package/dist/http.js +0 -2
  85. package/dist/http.mjs +0 -1
  86. package/dist/index.js +2 -0
  87. package/dist/index.mjs +1 -0
  88. package/dist/unstable-core-do-not-import/contentTypeParsers.d.ts +16 -0
  89. package/dist/unstable-core-do-not-import/contentTypeParsers.d.ts.map +1 -0
  90. package/dist/unstable-core-do-not-import/contentTypeParsers.js +23 -0
  91. package/dist/unstable-core-do-not-import/contentTypeParsers.mjs +21 -0
  92. package/dist/unstable-core-do-not-import/http/contentType.d.ts +6 -14
  93. package/dist/unstable-core-do-not-import/http/contentType.d.ts.map +1 -1
  94. package/dist/unstable-core-do-not-import/http/index.d.ts +0 -1
  95. package/dist/unstable-core-do-not-import/http/index.d.ts.map +1 -1
  96. package/dist/unstable-core-do-not-import/http/resolveHTTPResponse.d.ts +5 -5
  97. package/dist/unstable-core-do-not-import/http/resolveHTTPResponse.d.ts.map +1 -1
  98. package/dist/unstable-core-do-not-import/http/resolveHTTPResponse.js +25 -22
  99. package/dist/unstable-core-do-not-import/http/resolveHTTPResponse.mjs +25 -22
  100. package/dist/unstable-core-do-not-import/http/types.d.ts +0 -2
  101. package/dist/unstable-core-do-not-import/http/types.d.ts.map +1 -1
  102. package/dist/unstable-core-do-not-import/rootConfig.d.ts +21 -0
  103. package/dist/unstable-core-do-not-import/rootConfig.d.ts.map +1 -1
  104. package/dist/unstable-core-do-not-import.js +0 -2
  105. package/dist/unstable-core-do-not-import.mjs +0 -1
  106. package/package.json +3 -3
  107. package/src/@trpc/server/http.ts +0 -1
  108. package/src/@trpc/server/index.ts +7 -0
  109. package/src/adapters/aws-lambda/content-type/json/index.ts +99 -0
  110. package/src/adapters/aws-lambda/index.ts +24 -9
  111. package/src/adapters/aws-lambda/utils.ts +21 -15
  112. package/src/adapters/content-handlers/selectContentHandlerOrUnsupportedMediaType.ts +21 -0
  113. package/src/adapters/express.ts +1 -6
  114. package/src/adapters/fastify/content-type/json/index.ts +97 -0
  115. package/src/adapters/fastify/fastifyRequestHandler.ts +15 -21
  116. package/src/adapters/fastify/fastifyTRPCPlugin.ts +1 -1
  117. package/src/adapters/fastify/types.ts +22 -0
  118. package/src/adapters/fetch/content-type/json/index.ts +96 -0
  119. package/src/adapters/fetch/fetchRequestHandler.ts +22 -10
  120. package/src/adapters/fetch/types.ts +22 -15
  121. package/src/adapters/next-app-dir/nextAppDirCaller.ts +2 -9
  122. package/src/adapters/next.ts +1 -6
  123. package/src/adapters/node-http/content-type/form-data/fileUploadHandler.ts +7 -7
  124. package/src/adapters/node-http/content-type/form-data/index.ts +29 -51
  125. package/src/adapters/node-http/content-type/form-data/streamSlice.ts +2 -2
  126. package/src/adapters/node-http/content-type/json/getPostBody.ts +9 -18
  127. package/src/adapters/node-http/content-type/json/index.ts +85 -5
  128. package/src/adapters/node-http/content-type/octet/index.ts +29 -0
  129. package/src/adapters/node-http/{internals/contentType.ts → content-type/types.ts} +2 -14
  130. package/src/adapters/node-http/nodeHTTPRequestHandler.ts +22 -35
  131. package/src/adapters/node-http/types.ts +46 -46
  132. package/src/adapters/standalone.ts +1 -2
  133. package/src/adapters/ws.ts +9 -14
  134. package/src/unstable-core-do-not-import/contentTypeParsers.ts +37 -0
  135. package/src/unstable-core-do-not-import/http/contentType.ts +9 -84
  136. package/src/unstable-core-do-not-import/http/index.ts +0 -1
  137. package/src/unstable-core-do-not-import/http/resolveHTTPResponse.ts +29 -28
  138. package/src/unstable-core-do-not-import/http/types.ts +0 -2
  139. package/src/unstable-core-do-not-import/rootConfig.ts +31 -0
  140. package/dist/adapters/node-http/internals/contentType.d.ts +0 -9
  141. package/dist/adapters/node-http/internals/contentType.d.ts.map +0 -1
  142. package/dist/adapters/node-http/internals/contentType.js +0 -8
  143. package/dist/adapters/node-http/internals/contentType.mjs +0 -6
  144. package/dist/unstable-core-do-not-import/http/contentType.js +0 -54
  145. package/dist/unstable-core-do-not-import/http/contentType.mjs +0 -52
@@ -1,7 +1,10 @@
1
1
  import { resolveHTTPResponse } from '../../unstable-core-do-not-import/http/resolveHTTPResponse.mjs';
2
2
  import { getBatchStreamFormatter } from '../../unstable-core-do-not-import/http/batchStreamFormatter.mjs';
3
3
  import '../../unstable-core-do-not-import/rootConfig.mjs';
4
- import { nodeHTTPJSONContentTypeHandler } from './content-type/json/index.mjs';
4
+ import { selectContentHandlerOrUnsupportedMediaType } from '../content-handlers/selectContentHandlerOrUnsupportedMediaType.mjs';
5
+ import { getFormDataContentTypeHandler } from './content-type/form-data/index.mjs';
6
+ import { getNodeHTTPJSONContentTypeHandler } from './content-type/json/index.mjs';
7
+ import { getOctetContentTypeHandler } from './content-type/octet/index.mjs';
5
8
 
6
9
  /**
7
10
  * If you're making an adapter for tRPC and looking at this file for reference, you should import types and functions from `@trpc/server` and `@trpc/server/http`
@@ -12,7 +15,6 @@ import { nodeHTTPJSONContentTypeHandler } from './content-type/json/index.mjs';
12
15
  * import type { HTTPBaseHandlerOptions } from '@trpc/server/http'
13
16
  * ```
14
17
  */ /* eslint-disable @typescript-eslint/no-non-null-assertion */ // @trpc/server
15
- const defaultJSONContentTypeHandler = nodeHTTPJSONContentTypeHandler();
16
18
  async function nodeHTTPRequestHandler(opts) {
17
19
  const handleViaMiddleware = opts.middleware ?? ((_req, _res, next)=>next());
18
20
  return handleViaMiddleware(opts.req, opts.res, async (err)=>{
@@ -26,26 +28,10 @@ async function nodeHTTPRequestHandler(opts) {
26
28
  });
27
29
  };
28
30
  const query = opts.req.query ? new URLSearchParams(opts.req.query) : new URLSearchParams(opts.req.url.split('?')[1]);
29
- const jsonContentTypeHandler = defaultJSONContentTypeHandler;
30
- const contentTypeHandlers = opts.experimental_contentTypeHandlers ?? [
31
- jsonContentTypeHandler
32
- ];
33
- const contentTypeHandler = contentTypeHandlers.find((handler)=>handler.isMatch({
34
- // FIXME: no typecasting should be needed here
35
- ...opts,
36
- query
37
- })) ?? // fallback to json
38
- jsonContentTypeHandler;
39
- const bodyResult = await contentTypeHandler.getBody({
40
- // FIXME: no typecasting should be needed here
41
- ...opts,
42
- query
43
- });
44
31
  const req = {
45
32
  method: opts.req.method,
46
33
  headers: opts.req.headers,
47
- query,
48
- body: bodyResult.ok ? bodyResult.data : undefined
34
+ query
49
35
  };
50
36
  let isStream = false;
51
37
  let formatter;
@@ -80,19 +66,31 @@ async function nodeHTTPRequestHandler(opts) {
80
66
  opts.res.flush?.();
81
67
  }
82
68
  };
69
+ const [contentTypeHandler, unsupportedMediaTypeError] = selectContentHandlerOrUnsupportedMediaType([
70
+ getNodeHTTPJSONContentTypeHandler(),
71
+ getFormDataContentTypeHandler(),
72
+ getOctetContentTypeHandler()
73
+ ], {
74
+ ...opts,
75
+ query
76
+ });
83
77
  await resolveHTTPResponse({
84
78
  ...opts,
85
79
  req,
86
80
  createContext,
87
- error: bodyResult.ok ? null : bodyResult.error,
88
- preprocessedBody: bodyResult.ok ? bodyResult.preprocessed : false,
81
+ error: unsupportedMediaTypeError,
89
82
  onError (o) {
90
83
  opts?.onError?.({
91
84
  ...o,
92
85
  req: opts.req
93
86
  });
94
87
  },
95
- contentTypeHandler,
88
+ async getInput (inputsOpts) {
89
+ return await contentTypeHandler?.getInputs({
90
+ ...opts,
91
+ query
92
+ }, inputsOpts);
93
+ },
96
94
  unstable_onHead,
97
95
  unstable_onChunk
98
96
  });
@@ -9,10 +9,9 @@
9
9
  * ```
10
10
  */
11
11
  import type * as http from 'http';
12
- import type { AnyRouter, inferRouterContext } from '../../@trpc/server';
12
+ import type { AnyRouter, CreateContextCallback, inferRouterContext, WrapCreateContext } from '../../@trpc/server';
13
13
  import type { HTTPBaseHandlerOptions, TRPCRequestInfo } from '../../@trpc/server/http';
14
14
  import type { MaybePromise } from '../../unstable-core-do-not-import';
15
- import type { NodeHTTPContentTypeHandler } from './internals/contentType';
16
15
  interface ParsedQs {
17
16
  [key: string]: ParsedQs | ParsedQs[] | string[] | string | undefined;
18
17
  }
@@ -31,22 +30,12 @@ export type NodeHTTPResponse = http.ServerResponse & {
31
30
  */
32
31
  flush?: () => void;
33
32
  };
34
- export type NodeHTTPCreateContextOption<TRouter extends AnyRouter, TRequest, TResponse> = object extends inferRouterContext<TRouter> ? {
35
- /**
36
- * @link https://trpc.io/docs/v11/context
37
- **/
38
- createContext?: NodeHTTPCreateContextFn<TRouter, TRequest, TResponse>;
39
- } : {
40
- /**
41
- * @link https://trpc.io/docs/v11/context
42
- **/
43
- createContext: NodeHTTPCreateContextFn<TRouter, TRequest, TResponse>;
44
- };
33
+ export type NodeHTTPConditionCreateContextOption<TRouter extends AnyRouter, TRequest, TResponse> = CreateContextCallback<inferRouterContext<TRouter>, NodeHTTPCreateContextFn<TRouter, TRequest, TResponse>>;
45
34
  /**
46
35
  * @internal
47
36
  */
48
37
  type ConnectMiddleware<TRequest extends NodeHTTPRequest = NodeHTTPRequest, TResponse extends NodeHTTPResponse = NodeHTTPResponse> = (req: TRequest, res: TResponse, next: (err?: any) => any) => void;
49
- export type NodeHTTPHandlerOptions<TRouter extends AnyRouter, TRequest extends NodeHTTPRequest, TResponse extends NodeHTTPResponse> = HTTPBaseHandlerOptions<TRouter, TRequest> & NodeHTTPCreateContextOption<TRouter, TRequest, TResponse> & {
38
+ interface CoreNodeHTTPHandlerOptions<TRouter extends AnyRouter, TRequest extends NodeHTTPRequest, TResponse extends NodeHTTPResponse> extends HTTPBaseHandlerOptions<TRouter, TRequest> {
50
39
  /**
51
40
  * By default, http `OPTIONS` requests are not handled, and CORS headers are not returned.
52
41
  *
@@ -63,15 +52,15 @@ export type NodeHTTPHandlerOptions<TRouter extends AnyRouter, TRequest extends N
63
52
  * You can also use it for other needs which a connect/node.js compatible middleware can solve,
64
53
  * though you might wish to consider an alternative solution like the Express adapter if your needs are complex.
65
54
  */
66
- middleware?: ConnectMiddleware;
55
+ middleware?: ConnectMiddleware<TRequest, TResponse>;
67
56
  maxBodySize?: number;
68
- experimental_contentTypeHandlers?: NodeHTTPContentTypeHandler<TRequest, TResponse>[];
69
- };
70
- export type NodeHTTPRequestHandlerOptions<TRouter extends AnyRouter, TRequest extends NodeHTTPRequest, TResponse extends NodeHTTPResponse> = {
57
+ }
58
+ export type NodeHTTPHandlerOptions<TRouter extends AnyRouter, TRequest extends NodeHTTPRequest, TResponse extends NodeHTTPResponse> = CoreNodeHTTPHandlerOptions<TRouter, TRequest, TResponse> & NodeHTTPConditionCreateContextOption<TRouter, TRequest, TResponse>;
59
+ export type NodeHTTPRequestHandlerOptions<TRouter extends AnyRouter, TRequest extends NodeHTTPRequest, TResponse extends NodeHTTPResponse> = CoreNodeHTTPHandlerOptions<TRouter, TRequest, TResponse> & WrapCreateContext<NodeHTTPCreateContextFn<TRouter, TRequest, TResponse>> & {
71
60
  req: TRequest;
72
61
  res: TResponse;
73
62
  path: string;
74
- } & NodeHTTPHandlerOptions<TRouter, TRequest, TResponse>;
63
+ };
75
64
  export type NodeHTTPCreateContextFnOptions<TRequest, TResponse> = {
76
65
  req: TRequest;
77
66
  res: TResponse;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/adapters/node-http/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,KAAK,IAAI,MAAM,MAAM,CAAC;AAElC,OAAO,KAAK,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExE,OAAO,KAAK,EACV,sBAAsB,EACtB,eAAe,EAChB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAE1E,UAAU,QAAQ;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,CAAC;CACtE;AAED,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,GAAG;IACnD,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,GAAG;IACnD;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,2BAA2B,CACrC,OAAO,SAAS,SAAS,EACzB,QAAQ,EACR,SAAS,IACP,MAAM,SAAS,kBAAkB,CAAC,OAAO,CAAC,GAC1C;IACE;;QAEI;IACJ,aAAa,CAAC,EAAE,uBAAuB,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;CACvE,GACD;IACE;;QAEI;IACJ,aAAa,EAAE,uBAAuB,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;CACtE,CAAC;AAEN;;GAEG;AACH,KAAK,iBAAiB,CACpB,QAAQ,SAAS,eAAe,GAAG,eAAe,EAClD,SAAS,SAAS,gBAAgB,GAAG,gBAAgB,IACnD,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,GAAG,KAAK,IAAI,CAAC;AAEtE,MAAM,MAAM,sBAAsB,CAChC,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,eAAe,EAChC,SAAS,SAAS,gBAAgB,IAChC,sBAAsB,CAAC,OAAO,EAAE,QAAQ,CAAC,GAC3C,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,GAAG;IAC1D;;;;;;;;;;;;;;;OAeG;IACH,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gCAAgC,CAAC,EAAE,0BAA0B,CAC3D,QAAQ,EACR,SAAS,CACV,EAAE,CAAC;CACL,CAAC;AAEJ,MAAM,MAAM,6BAA6B,CACvC,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,eAAe,EAChC,SAAS,SAAS,gBAAgB,IAChC;IACF,GAAG,EAAE,QAAQ,CAAC;IACd,GAAG,EAAE,SAAS,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,sBAAsB,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAEzD,MAAM,MAAM,8BAA8B,CAAC,QAAQ,EAAE,SAAS,IAAI;IAChE,GAAG,EAAE,QAAQ,CAAC;IACd,GAAG,EAAE,SAAS,CAAC;IACf,IAAI,EAAE,eAAe,CAAC;CACvB,CAAC;AACF,MAAM,MAAM,uBAAuB,CACjC,OAAO,SAAS,SAAS,EACzB,QAAQ,EACR,SAAS,IACP,CACF,IAAI,EAAE,8BAA8B,CAAC,QAAQ,EAAE,SAAS,CAAC,KACtD,YAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/adapters/node-http/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,KAAK,IAAI,MAAM,MAAM,CAAC;AAElC,OAAO,KAAK,EACV,SAAS,EACT,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EACV,sBAAsB,EACtB,eAAe,EAChB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAEtE,UAAU,QAAQ;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,CAAC;CACtE;AAED,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,GAAG;IACnD,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,GAAG;IACnD;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,oCAAoC,CAC9C,OAAO,SAAS,SAAS,EACzB,QAAQ,EACR,SAAS,IACP,qBAAqB,CACvB,kBAAkB,CAAC,OAAO,CAAC,EAC3B,uBAAuB,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CACtD,CAAC;AAEF;;GAEG;AACH,KAAK,iBAAiB,CACpB,QAAQ,SAAS,eAAe,GAAG,eAAe,EAClD,SAAS,SAAS,gBAAgB,GAAG,gBAAgB,IACnD,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,GAAG,KAAK,IAAI,CAAC;AAEtE,UAAU,0BAA0B,CAClC,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,eAAe,EAChC,SAAS,SAAS,gBAAgB,CAClC,SAAQ,sBAAsB,CAAC,OAAO,EAAE,QAAQ,CAAC;IACjD;;;;;;;;;;;;;;;OAeG;IACH,UAAU,CAAC,EAAE,iBAAiB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAGD,MAAM,MAAM,sBAAsB,CAChC,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,eAAe,EAChC,SAAS,SAAS,gBAAgB,IAChC,0BAA0B,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,GAC1D,oCAAoC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAGrE,MAAM,MAAM,6BAA6B,CACvC,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,eAAe,EAChC,SAAS,SAAS,gBAAgB,IAChC,0BAA0B,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,GAC1D,iBAAiB,CAAC,uBAAuB,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,GAAG;IACzE,GAAG,EAAE,QAAQ,CAAC;IACd,GAAG,EAAE,SAAS,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEJ,MAAM,MAAM,8BAA8B,CAAC,QAAQ,EAAE,SAAS,IAAI;IAChE,GAAG,EAAE,QAAQ,CAAC;IACd,GAAG,EAAE,SAAS,CAAC;IACf,IAAI,EAAE,eAAe,CAAC;CACvB,CAAC;AACF,MAAM,MAAM,uBAAuB,CACjC,OAAO,SAAS,SAAS,EACzB,QAAQ,EACR,SAAS,IACP,CACF,IAAI,EAAE,8BAA8B,CAAC,QAAQ,EAAE,SAAS,CAAC,KACtD,YAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"standalone.d.ts","sourceRoot":"","sources":["../../src/adapters/standalone.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,KAAK,EACV,8BAA8B,EAC9B,sBAAsB,EACvB,MAAM,aAAa,CAAC;AAGrB,MAAM,MAAM,wBAAwB,CAAC,OAAO,SAAS,SAAS,IAC5D,sBAAsB,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;AAE7E,MAAM,MAAM,wBAAwB,GAAG,8BAA8B,CACnE,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,cAAc,CACpB,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,OAAO,SAAS,SAAS,EACzD,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAEpB,KAAK,eAAe,OAAO,KAAK,cAAc,mBAelE;AAED,wBAAgB,gBAAgB,CAAC,OAAO,SAAS,SAAS,EACxD,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,wEAIxC"}
1
+ {"version":3,"file":"standalone.d.ts","sourceRoot":"","sources":["../../src/adapters/standalone.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,KAAK,EACV,8BAA8B,EAC9B,sBAAsB,EACvB,MAAM,aAAa,CAAC;AAGrB,MAAM,MAAM,wBAAwB,CAAC,OAAO,SAAS,SAAS,IAC5D,sBAAsB,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;AAE7E,MAAM,MAAM,wBAAwB,GAAG,8BAA8B,CACnE,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,cAAc,CACpB,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,OAAO,SAAS,SAAS,EACzD,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAEpB,KAAK,eAAe,OAAO,KAAK,cAAc,mBAclE;AAED,wBAAgB,gBAAgB,CAAC,OAAO,SAAS,SAAS,EACxD,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,wEAIxC"}
@@ -12,7 +12,6 @@ function createHTTPHandler(opts) {
12
12
  // /procedure -> procedure
13
13
  const path = url.pathname.slice(1);
14
14
  await nodeHTTPRequestHandler.nodeHTTPRequestHandler({
15
- // FIXME: no typecasting should be needed here
16
15
  ...opts,
17
16
  req,
18
17
  res,
@@ -10,7 +10,6 @@ function createHTTPHandler(opts) {
10
10
  // /procedure -> procedure
11
11
  const path = url.pathname.slice(1);
12
12
  await nodeHTTPRequestHandler({
13
- // FIXME: no typecasting should be needed here
14
13
  ...opts,
15
14
  req,
16
15
  res,
@@ -1,7 +1,7 @@
1
1
  /// <reference types="node" />
2
2
  import type { IncomingMessage } from 'http';
3
3
  import type ws from 'ws';
4
- import type { AnyRouter, inferRouterContext } from '../@trpc/server';
4
+ import type { AnyRouter, CreateContextCallback, inferRouterContext } from '../@trpc/server';
5
5
  import type { BaseHandlerOptions } from '../@trpc/server/http';
6
6
  import type { MaybePromise } from '../unstable-core-do-not-import';
7
7
  import type { NodeHTTPCreateContextFnOptions } from './node-http';
@@ -13,17 +13,7 @@ export type CreateWSSContextFnOptions = Omit<NodeHTTPCreateContextFnOptions<Inco
13
13
  * @public
14
14
  */
15
15
  export type CreateWSSContextFn<TRouter extends AnyRouter> = (opts: CreateWSSContextFnOptions) => MaybePromise<inferRouterContext<TRouter>>;
16
- export type WSConnectionHandlerOptions<TRouter extends AnyRouter> = BaseHandlerOptions<TRouter, IncomingMessage> & (object extends inferRouterContext<TRouter> ? {
17
- /**
18
- * @link https://trpc.io/docs/v11/context
19
- **/
20
- createContext?: CreateWSSContextFn<TRouter>;
21
- } : {
22
- /**
23
- * @link https://trpc.io/docs/v11/context
24
- **/
25
- createContext: CreateWSSContextFn<TRouter>;
26
- });
16
+ export type WSConnectionHandlerOptions<TRouter extends AnyRouter> = BaseHandlerOptions<TRouter, IncomingMessage> & CreateContextCallback<inferRouterContext<TRouter>, CreateWSSContextFn<TRouter>>;
27
17
  /**
28
18
  * Web socket server handler
29
19
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../../src/adapters/ws.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAQrE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAY/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAC;AAQlE;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAC1C,8BAA8B,CAAC,eAAe,EAAE,EAAE,CAAC,SAAS,CAAC,EAC7D,MAAM,CACP,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kBAAkB,CAAC,OAAO,SAAS,SAAS,IAAI,CAC1D,IAAI,EAAE,yBAAyB,KAC5B,YAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;AAE/C,MAAM,MAAM,0BAA0B,CAAC,OAAO,SAAS,SAAS,IAC9D,kBAAkB,CAAC,OAAO,EAAE,eAAe,CAAC,GAC1C,CAAC,MAAM,SAAS,kBAAkB,CAAC,OAAO,CAAC,GACvC;IACE;;QAEI;IACJ,aAAa,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;CAC7C,GACD;IACE;;QAEI;IACJ,aAAa,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;CAC5C,CAAC,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,OAAO,SAAS,SAAS,IACrD,0BAA0B,CAAC,OAAO,CAAC,GAAG;IACpC,GAAG,EAAE,EAAE,CAAC,eAAe,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEJ,wBAAgB,sBAAsB,CAAC,OAAO,SAAS,SAAS,EAC9D,IAAI,EAAE,0BAA0B,CAAC,OAAO,CAAC,YAKnB,YAAY,OAAO,eAAe,mBAoPzD;AAED,wBAAgB,eAAe,CAAC,OAAO,SAAS,SAAS,EACvD,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC;;EA2BjC"}
1
+ {"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../../src/adapters/ws.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,EACV,SAAS,EACT,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,iBAAiB,CAAC;AAQzB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAY/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAC;AAQlE;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAC1C,8BAA8B,CAAC,eAAe,EAAE,EAAE,CAAC,SAAS,CAAC,EAC7D,MAAM,CACP,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kBAAkB,CAAC,OAAO,SAAS,SAAS,IAAI,CAC1D,IAAI,EAAE,yBAAyB,KAC5B,YAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;AAE/C,MAAM,MAAM,0BAA0B,CAAC,OAAO,SAAS,SAAS,IAC9D,kBAAkB,CAAC,OAAO,EAAE,eAAe,CAAC,GAC1C,qBAAqB,CACnB,kBAAkB,CAAC,OAAO,CAAC,EAC3B,kBAAkB,CAAC,OAAO,CAAC,CAC5B,CAAC;AAEN;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,OAAO,SAAS,SAAS,IACrD,0BAA0B,CAAC,OAAO,CAAC,GAAG;IACpC,GAAG,EAAE,EAAE,CAAC,eAAe,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEJ,wBAAgB,sBAAsB,CAAC,OAAO,SAAS,SAAS,EAC9D,IAAI,EAAE,0BAA0B,CAAC,OAAO,CAAC,YAKnB,YAAY,OAAO,eAAe,mBAoPzD;AAED,wBAAgB,eAAe,CAAC,OAAO,SAAS,SAAS,EACvD,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC;;EA2BjC"}