@trpc/server 10.0.0-alpha.2 → 10.0.0-alpha.22

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 (301) hide show
  1. package/adapters/express/dist/trpc-server-adapters-express.cjs.dev.js +7 -6
  2. package/adapters/express/dist/trpc-server-adapters-express.cjs.prod.js +7 -6
  3. package/adapters/express/dist/trpc-server-adapters-express.esm.js +7 -6
  4. package/adapters/express/index.d.ts +1 -0
  5. package/adapters/express/index.js +1 -0
  6. package/adapters/fastify/dist/trpc-server-adapters-fastify.cjs.d.ts +1 -0
  7. package/adapters/fastify/dist/trpc-server-adapters-fastify.cjs.dev.js +109 -0
  8. package/adapters/fastify/dist/trpc-server-adapters-fastify.cjs.js +7 -0
  9. package/adapters/fastify/dist/trpc-server-adapters-fastify.cjs.prod.js +109 -0
  10. package/adapters/fastify/dist/trpc-server-adapters-fastify.esm.js +104 -0
  11. package/adapters/fastify/index.d.ts +1 -0
  12. package/adapters/fastify/index.js +1 -0
  13. package/adapters/fetch/index.d.ts +1 -0
  14. package/adapters/fetch/index.js +1 -0
  15. package/adapters/next/dist/trpc-server-adapters-next.cjs.dev.js +4 -3
  16. package/adapters/next/dist/trpc-server-adapters-next.cjs.prod.js +4 -3
  17. package/adapters/next/dist/trpc-server-adapters-next.esm.js +4 -3
  18. package/adapters/next/index.d.ts +1 -0
  19. package/adapters/next/index.js +1 -0
  20. package/adapters/node-http/dist/trpc-server-adapters-node-http.cjs.dev.js +4 -3
  21. package/adapters/node-http/dist/trpc-server-adapters-node-http.cjs.prod.js +4 -3
  22. package/adapters/node-http/dist/trpc-server-adapters-node-http.esm.js +4 -3
  23. package/adapters/node-http/index.d.ts +1 -0
  24. package/adapters/node-http/index.js +1 -0
  25. package/adapters/standalone/dist/trpc-server-adapters-standalone.cjs.dev.js +5 -4
  26. package/adapters/standalone/dist/trpc-server-adapters-standalone.cjs.prod.js +5 -4
  27. package/adapters/standalone/dist/trpc-server-adapters-standalone.esm.js +5 -4
  28. package/adapters/standalone/index.d.ts +1 -0
  29. package/adapters/standalone/index.js +1 -0
  30. package/adapters/ws/dist/trpc-server-adapters-ws.cjs.dev.js +6 -5
  31. package/adapters/ws/dist/trpc-server-adapters-ws.cjs.prod.js +6 -5
  32. package/adapters/ws/dist/trpc-server-adapters-ws.esm.js +6 -5
  33. package/adapters/ws/index.d.ts +1 -0
  34. package/adapters/ws/index.js +1 -0
  35. package/dist/TRPCError-7971540a.mjs +65 -0
  36. package/dist/TRPCError-ddec3395.js +69 -0
  37. package/dist/TRPCError.d.ts +11 -0
  38. package/dist/TRPCError.d.ts.map +1 -0
  39. package/dist/{declarations/src/adapters → adapters}/express.d.ts +5 -5
  40. package/dist/adapters/express.d.ts.map +1 -0
  41. package/dist/adapters/express.js +23 -0
  42. package/dist/adapters/express.mjs +19 -0
  43. package/dist/adapters/express.ts.js +1 -0
  44. package/dist/adapters/fastify/fastifyRequestHandler.d.ts +13 -0
  45. package/dist/adapters/fastify/fastifyRequestHandler.d.ts.map +1 -0
  46. package/dist/adapters/fastify/fastifyTRPCPlugin.d.ts +12 -0
  47. package/dist/adapters/fastify/fastifyTRPCPlugin.d.ts.map +1 -0
  48. package/dist/adapters/fastify/index.d.ts +3 -0
  49. package/dist/adapters/fastify/index.d.ts.map +1 -0
  50. package/dist/adapters/fastify/index.js +108 -0
  51. package/dist/adapters/fastify/index.mjs +103 -0
  52. package/dist/adapters/fastify/index.ts.js +1 -0
  53. package/dist/adapters/fetch/fetchRequestHandler.d.ts +8 -0
  54. package/dist/adapters/fetch/fetchRequestHandler.d.ts.map +1 -0
  55. package/dist/adapters/fetch/index.d.ts +3 -0
  56. package/dist/adapters/fetch/index.d.ts.map +1 -0
  57. package/dist/adapters/fetch/index.js +69 -0
  58. package/dist/adapters/fetch/index.mjs +65 -0
  59. package/dist/adapters/fetch/index.ts.js +1 -0
  60. package/dist/adapters/fetch/types.d.ts +21 -0
  61. package/dist/adapters/fetch/types.d.ts.map +1 -0
  62. package/dist/{declarations/src/adapters → adapters}/next.d.ts +5 -5
  63. package/dist/adapters/next.d.ts.map +1 -0
  64. package/dist/adapters/next.js +55 -0
  65. package/dist/adapters/next.mjs +51 -0
  66. package/dist/adapters/next.ts.js +1 -0
  67. package/dist/{declarations/src/adapters → adapters}/node-http/index.d.ts +2 -2
  68. package/dist/adapters/node-http/index.d.ts.map +1 -0
  69. package/dist/adapters/node-http/index.js +13 -0
  70. package/dist/adapters/node-http/index.mjs +5 -0
  71. package/dist/adapters/node-http/index.ts.js +1 -0
  72. package/dist/{declarations/src/adapters → adapters}/node-http/internals/getPostBody.d.ts +12 -12
  73. package/dist/adapters/node-http/internals/getPostBody.d.ts.map +1 -0
  74. package/dist/{declarations/src/adapters → adapters}/node-http/nodeHTTPRequestHandler.d.ts +9 -9
  75. package/dist/adapters/node-http/nodeHTTPRequestHandler.d.ts.map +1 -0
  76. package/dist/{declarations/src/adapters → adapters}/node-http/types.d.ts +31 -32
  77. package/dist/adapters/node-http/types.d.ts.map +1 -0
  78. package/dist/{declarations/src/adapters → adapters}/standalone.d.ts +13 -13
  79. package/dist/adapters/standalone.d.ts.map +1 -0
  80. package/dist/adapters/standalone.js +49 -0
  81. package/dist/adapters/standalone.mjs +40 -0
  82. package/dist/adapters/standalone.ts.js +1 -0
  83. package/dist/{declarations/src/adapters → adapters}/ws.d.ts +16 -16
  84. package/dist/adapters/ws.d.ts.map +1 -0
  85. package/dist/adapters/ws.js +384 -0
  86. package/dist/adapters/ws.mjs +380 -0
  87. package/dist/adapters/ws.ts.js +1 -0
  88. package/dist/{declarations/src/assertNotBrowser.d.ts → assertNotBrowser.d.ts} +1 -1
  89. package/dist/assertNotBrowser.d.ts.map +1 -0
  90. package/dist/{codes-e0df67c4.cjs.prod.js → envelopes-1deb2fa7.mjs} +19 -5
  91. package/dist/{codes-33cef953.cjs.dev.js → envelopes-a953b930.js} +18 -0
  92. package/dist/{declarations/src/http → http}/ResponseMeta.d.ts +4 -4
  93. package/dist/http/ResponseMeta.d.ts.map +1 -0
  94. package/dist/{declarations/src/http → http}/index.d.ts +2 -2
  95. package/dist/http/index.d.ts.map +1 -0
  96. package/dist/{declarations/src/http → http}/internals/getHTTPStatusCode.d.ts +21 -20
  97. package/dist/http/internals/getHTTPStatusCode.d.ts.map +1 -0
  98. package/dist/{declarations/src/http → http}/internals/types.d.ts +40 -39
  99. package/dist/http/internals/types.d.ts.map +1 -0
  100. package/dist/{declarations/src/http → http}/resolveHTTPResponse.d.ts +12 -12
  101. package/dist/http/resolveHTTPResponse.d.ts.map +1 -0
  102. package/dist/index.d.ts +7 -0
  103. package/dist/index.d.ts.map +1 -0
  104. package/dist/{trpc-server.cjs.dev.js → index.js} +81 -107
  105. package/dist/{trpc-server.esm.js → index.mjs} +71 -91
  106. package/dist/index.ts.js +1 -0
  107. package/dist/{declarations/src/internals → internals}/BaseHandlerOptions.d.ts +12 -12
  108. package/dist/internals/BaseHandlerOptions.d.ts.map +1 -0
  109. package/dist/{declarations/src/internals → internals}/OnErrorFunction.d.ts +10 -10
  110. package/dist/internals/OnErrorFunction.d.ts.map +1 -0
  111. package/dist/{declarations/src/internals → internals}/callProcedure.d.ts +9 -9
  112. package/dist/internals/callProcedure.d.ts.map +1 -0
  113. package/dist/{declarations/src/internals → internals}/errors.d.ts +4 -3
  114. package/dist/internals/errors.d.ts.map +1 -0
  115. package/dist/{declarations/src/internals → internals}/invert.d.ts +8 -8
  116. package/dist/internals/invert.d.ts.map +1 -0
  117. package/dist/{declarations/src/internals → internals}/middlewares.d.ts +34 -33
  118. package/dist/internals/middlewares.d.ts.map +1 -0
  119. package/dist/internals/procedure.d.ts +87 -0
  120. package/dist/internals/procedure.d.ts.map +1 -0
  121. package/dist/internals/transformTRPCResponse.d.ts +9 -0
  122. package/dist/internals/transformTRPCResponse.d.ts.map +1 -0
  123. package/dist/nodeHTTPRequestHandler-1cdb6383.mjs +105 -0
  124. package/dist/nodeHTTPRequestHandler-848f07b5.js +107 -0
  125. package/dist/observable/index.d.ts +5 -0
  126. package/dist/observable/index.d.ts.map +1 -0
  127. package/dist/observable/index.js +204 -0
  128. package/dist/observable/index.mjs +195 -0
  129. package/dist/observable/index.ts.js +1 -0
  130. package/dist/observable/internals/identity.d.ts +2 -0
  131. package/dist/observable/internals/identity.d.ts.map +1 -0
  132. package/dist/observable/internals/observableToPromise.d.ts +10 -0
  133. package/dist/observable/internals/observableToPromise.d.ts.map +1 -0
  134. package/dist/observable/internals/pipe.d.ts +4 -0
  135. package/dist/observable/internals/pipe.d.ts.map +1 -0
  136. package/dist/observable/observable.d.ts +5 -0
  137. package/dist/observable/observable.d.ts.map +1 -0
  138. package/dist/observable/operators/index.d.ts +4 -0
  139. package/dist/observable/operators/index.d.ts.map +1 -0
  140. package/dist/observable/operators/map.d.ts +3 -0
  141. package/dist/observable/operators/map.d.ts.map +1 -0
  142. package/dist/observable/operators/share.d.ts +6 -0
  143. package/dist/observable/operators/share.d.ts.map +1 -0
  144. package/dist/observable/operators/tap.d.ts +3 -0
  145. package/dist/observable/operators/tap.d.ts.map +1 -0
  146. package/dist/observable/types.d.ts +29 -0
  147. package/dist/observable/types.d.ts.map +1 -0
  148. package/dist/observable-137ea1bd.mjs +105 -0
  149. package/dist/observable-3aa4d911.js +108 -0
  150. package/dist/{nodeHTTPRequestHandler-2e6cc2d7.esm.js → resolveHTTPResponse-54a79e6c.mjs} +19 -126
  151. package/dist/{nodeHTTPRequestHandler-b7ff366e.cjs.dev.js → resolveHTTPResponse-ec3dccaa.js} +24 -132
  152. package/dist/router.d.ts +173 -0
  153. package/dist/router.d.ts.map +1 -0
  154. package/dist/{declarations/src/rpc → rpc}/codes.d.ts +48 -46
  155. package/dist/rpc/codes.d.ts.map +1 -0
  156. package/dist/rpc/envelopes.d.ts +94 -0
  157. package/dist/rpc/envelopes.d.ts.map +1 -0
  158. package/dist/{declarations/src/rpc → rpc}/index.d.ts +2 -2
  159. package/dist/rpc/index.d.ts.map +1 -0
  160. package/dist/rpc/index.js +14 -0
  161. package/dist/rpc/index.mjs +1 -0
  162. package/dist/rpc/index.ts.js +1 -0
  163. package/dist/subscription.d.ts +9 -0
  164. package/dist/subscription.d.ts.map +1 -0
  165. package/dist/subscription.js +44 -0
  166. package/dist/subscription.mjs +40 -0
  167. package/dist/subscription.ts.js +1 -0
  168. package/dist/transformTRPCResponse-333bed6c.js +56 -0
  169. package/dist/transformTRPCResponse-e0cba527.mjs +53 -0
  170. package/dist/{declarations/src/transformer.d.ts → transformer.d.ts} +29 -29
  171. package/dist/transformer.d.ts.map +1 -0
  172. package/dist/{declarations/src/types.d.ts → types.d.ts} +40 -40
  173. package/dist/types.d.ts.map +1 -0
  174. package/observable/index.d.ts +1 -0
  175. package/observable/index.js +1 -0
  176. package/package.json +82 -26
  177. package/rpc/dist/trpc-server-rpc.cjs.dev.js +1 -1
  178. package/rpc/dist/trpc-server-rpc.cjs.prod.js +1 -1
  179. package/rpc/dist/trpc-server-rpc.esm.js +1 -1
  180. package/rpc/index.d.ts +1 -0
  181. package/rpc/index.js +1 -0
  182. package/src/TRPCError.ts +5 -13
  183. package/src/adapters/express.ts +3 -3
  184. package/src/adapters/fastify/fastifyRequestHandler.ts +77 -0
  185. package/src/adapters/fastify/fastifyTRPCPlugin.ts +56 -0
  186. package/src/adapters/fastify/index.ts +2 -0
  187. package/src/adapters/fetch/fetchRequestHandler.ts +61 -0
  188. package/src/adapters/fetch/index.ts +2 -0
  189. package/src/adapters/fetch/types.ts +28 -0
  190. package/src/adapters/next.ts +9 -7
  191. package/src/adapters/node-http/internals/getPostBody.test.ts +2 -1
  192. package/src/adapters/node-http/nodeHTTPRequestHandler.ts +5 -6
  193. package/src/adapters/node-http/types.ts +4 -5
  194. package/src/adapters/standalone.ts +11 -3
  195. package/src/adapters/ws.ts +122 -81
  196. package/src/assertNotBrowser.ts +1 -0
  197. package/src/http/internals/getHTTPStatusCode.ts +2 -1
  198. package/src/http/internals/types.ts +6 -7
  199. package/src/http/resolveHTTPResponse.ts +23 -27
  200. package/src/index.ts +1 -6
  201. package/src/internals/BaseHandlerOptions.ts +1 -1
  202. package/src/internals/OnErrorFunction.ts +1 -1
  203. package/src/internals/callProcedure.ts +6 -3
  204. package/src/internals/errors.ts +20 -4
  205. package/src/internals/middlewares.ts +3 -2
  206. package/src/internals/procedure.ts +213 -93
  207. package/src/internals/transformTRPCResponse.ts +20 -15
  208. package/src/observable/index.ts +4 -0
  209. package/src/observable/internals/identity.ts +3 -0
  210. package/src/observable/internals/observableToPromise.ts +49 -0
  211. package/src/observable/internals/pipe.ts +22 -0
  212. package/src/observable/observable.test.ts +101 -0
  213. package/src/observable/observable.ts +75 -0
  214. package/src/observable/operators/index.ts +3 -0
  215. package/src/observable/operators/map.test.ts +92 -0
  216. package/src/observable/operators/map.ts +25 -0
  217. package/src/observable/operators/share.test.ts +60 -0
  218. package/src/observable/operators/share.ts +67 -0
  219. package/src/observable/operators/tap.ts +26 -0
  220. package/src/observable/types.ts +69 -0
  221. package/src/router.ts +171 -82
  222. package/src/rpc/codes.ts +1 -0
  223. package/src/rpc/envelopes.ts +87 -68
  224. package/src/subscription.ts +6 -124
  225. package/src/types.ts +7 -9
  226. package/adapters/express/package.json +0 -4
  227. package/adapters/next/package.json +0 -4
  228. package/adapters/node-http/package.json +0 -4
  229. package/adapters/standalone/package.json +0 -4
  230. package/adapters/ws/package.json +0 -4
  231. package/dist/codes-fe07bf82.esm.js +0 -56
  232. package/dist/declarations/src/TRPCError.d.ts +0 -19
  233. package/dist/declarations/src/TRPCError.d.ts.map +0 -1
  234. package/dist/declarations/src/adapters/express.d.ts.map +0 -1
  235. package/dist/declarations/src/adapters/next.d.ts.map +0 -1
  236. package/dist/declarations/src/adapters/node-http/index.d.ts.map +0 -1
  237. package/dist/declarations/src/adapters/node-http/internals/getPostBody.d.ts.map +0 -1
  238. package/dist/declarations/src/adapters/node-http/nodeHTTPRequestHandler.d.ts.map +0 -1
  239. package/dist/declarations/src/adapters/node-http/types.d.ts.map +0 -1
  240. package/dist/declarations/src/adapters/standalone.d.ts.map +0 -1
  241. package/dist/declarations/src/adapters/ws.d.ts.map +0 -1
  242. package/dist/declarations/src/assertNotBrowser.d.ts.map +0 -1
  243. package/dist/declarations/src/deprecated/LegacyRouter.d.ts +0 -3
  244. package/dist/declarations/src/deprecated/LegacyRouter.d.ts.map +0 -1
  245. package/dist/declarations/src/deprecated/createHttpServer.d.ts +0 -19
  246. package/dist/declarations/src/deprecated/createHttpServer.d.ts.map +0 -1
  247. package/dist/declarations/src/deprecated/requestHandler.d.ts +0 -15
  248. package/dist/declarations/src/deprecated/requestHandler.d.ts.map +0 -1
  249. package/dist/declarations/src/http/ResponseMeta.d.ts.map +0 -1
  250. package/dist/declarations/src/http/index.d.ts.map +0 -1
  251. package/dist/declarations/src/http/internals/getHTTPStatusCode.d.ts.map +0 -1
  252. package/dist/declarations/src/http/internals/types.d.ts.map +0 -1
  253. package/dist/declarations/src/http/resolveHTTPResponse.d.ts.map +0 -1
  254. package/dist/declarations/src/index.d.ts +0 -10
  255. package/dist/declarations/src/index.d.ts.map +0 -1
  256. package/dist/declarations/src/internals/BaseHandlerOptions.d.ts.map +0 -1
  257. package/dist/declarations/src/internals/OnErrorFunction.d.ts.map +0 -1
  258. package/dist/declarations/src/internals/callProcedure.d.ts.map +0 -1
  259. package/dist/declarations/src/internals/errors.d.ts.map +0 -1
  260. package/dist/declarations/src/internals/invert.d.ts.map +0 -1
  261. package/dist/declarations/src/internals/middlewares.d.ts.map +0 -1
  262. package/dist/declarations/src/internals/procedure.d.ts +0 -74
  263. package/dist/declarations/src/internals/procedure.d.ts.map +0 -1
  264. package/dist/declarations/src/internals/transformTRPCResponse.d.ts +0 -7
  265. package/dist/declarations/src/internals/transformTRPCResponse.d.ts.map +0 -1
  266. package/dist/declarations/src/internals/wrapCallSafe.d.ts +0 -16
  267. package/dist/declarations/src/internals/wrapCallSafe.d.ts.map +0 -1
  268. package/dist/declarations/src/router.d.ts +0 -176
  269. package/dist/declarations/src/router.d.ts.map +0 -1
  270. package/dist/declarations/src/rpc/codes.d.ts.map +0 -1
  271. package/dist/declarations/src/rpc/envelopes.d.ts +0 -72
  272. package/dist/declarations/src/rpc/envelopes.d.ts.map +0 -1
  273. package/dist/declarations/src/rpc/index.d.ts.map +0 -1
  274. package/dist/declarations/src/subscription.d.ts +0 -58
  275. package/dist/declarations/src/subscription.d.ts.map +0 -1
  276. package/dist/declarations/src/transformer.d.ts.map +0 -1
  277. package/dist/declarations/src/types.d.ts.map +0 -1
  278. package/dist/declarations/src/ws/index.d.ts +0 -7
  279. package/dist/declarations/src/ws/index.d.ts.map +0 -1
  280. package/dist/nodeHTTPRequestHandler-7325b53f.cjs.prod.js +0 -399
  281. package/dist/subscription-b8831081.cjs.dev.js +0 -136
  282. package/dist/subscription-c2e0bfbc.cjs.prod.js +0 -136
  283. package/dist/subscription-fbda2888.esm.js +0 -133
  284. package/dist/transformTRPCResponse-8248515e.cjs.dev.js +0 -114
  285. package/dist/transformTRPCResponse-dcbf66c5.cjs.prod.js +0 -114
  286. package/dist/transformTRPCResponse-f73dc4a2.esm.js +0 -109
  287. package/dist/trpc-server.cjs.d.ts +0 -1
  288. package/dist/trpc-server.cjs.js +0 -7
  289. package/dist/trpc-server.cjs.prod.js +0 -528
  290. package/rpc/package.json +0 -4
  291. package/src/deprecated/LegacyRouter.ts +0 -3
  292. package/src/deprecated/createHttpServer.ts +0 -29
  293. package/src/deprecated/requestHandler.ts +0 -26
  294. package/src/internals/wrapCallSafe.ts +0 -19
  295. package/src/ws/index.ts +0 -8
  296. package/ws/dist/trpc-server-ws.cjs.d.ts +0 -1
  297. package/ws/dist/trpc-server-ws.cjs.dev.js +0 -15
  298. package/ws/dist/trpc-server-ws.cjs.js +0 -7
  299. package/ws/dist/trpc-server-ws.cjs.prod.js +0 -15
  300. package/ws/dist/trpc-server-ws.esm.js +0 -11
  301. package/ws/package.json +0 -4
@@ -1,9 +1,9 @@
1
- declare type KeyFromValue<V, T extends Record<PropertyKey, PropertyKey>> = {
2
- [K in keyof T]: V extends T[K] ? K : never;
3
- }[keyof T];
4
- declare type Invert<T extends Record<PropertyKey, PropertyKey>> = {
5
- [V in T[keyof T]]: KeyFromValue<V, T>;
6
- };
7
- export declare function invert<T extends Record<PropertyKey, PropertyKey>>(obj: T): Invert<T>;
8
- export {};
1
+ declare type KeyFromValue<V, T extends Record<PropertyKey, PropertyKey>> = {
2
+ [K in keyof T]: V extends T[K] ? K : never;
3
+ }[keyof T];
4
+ declare type Invert<T extends Record<PropertyKey, PropertyKey>> = {
5
+ [V in T[keyof T]]: KeyFromValue<V, T>;
6
+ };
7
+ export declare function invert<T extends Record<PropertyKey, PropertyKey>>(obj: T): Invert<T>;
8
+ export {};
9
9
  //# sourceMappingURL=invert.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invert.d.ts","sourceRoot":"","sources":["../../src/internals/invert.ts"],"names":[],"mappings":"AAAA,aAAK,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,IAAI;KAChE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK;CAC3C,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX,aAAK,MAAM,CAAC,CAAC,SAAS,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,IAAI;KACvD,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC;CACtC,CAAC;AAEF,wBAAgB,MAAM,CAAC,CAAC,SAAS,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,EAC/D,GAAG,EAAE,CAAC,GACL,MAAM,CAAC,CAAC,CAAC,CAOX"}
@@ -1,34 +1,35 @@
1
- import { ProcedureType } from '../router';
2
- import { TRPCError } from '../TRPCError';
3
- export declare const middlewareMarker: unique symbol;
4
- interface MiddlewareResultBase<TContext> {
5
- /**
6
- * All middlewares should pass through their `next()`'s output.
7
- * Requiring this marker makes sure that can't be forgotten at compile-time.
8
- */
9
- readonly marker: typeof middlewareMarker;
10
- ctx: TContext;
11
- }
12
- interface MiddlewareOKResult<TContext> extends MiddlewareResultBase<TContext> {
13
- ok: true;
14
- data: unknown;
15
- }
16
- interface MiddlewareErrorResult<TContext> extends MiddlewareResultBase<TContext> {
17
- ok: false;
18
- error: TRPCError;
19
- }
20
- export declare type MiddlewareResult<TContext> = MiddlewareOKResult<TContext> | MiddlewareErrorResult<TContext>;
21
- export declare type MiddlewareFunction<TInputContext, TContext> = (opts: {
22
- ctx: TInputContext;
23
- type: ProcedureType;
24
- path: string;
25
- rawInput: unknown;
26
- next: {
27
- (): Promise<MiddlewareResult<TInputContext>>;
28
- <T>(opts: {
29
- ctx: T;
30
- }): Promise<MiddlewareResult<T>>;
31
- };
32
- }) => Promise<MiddlewareResult<TContext>>;
33
- export {};
1
+ import { TRPCError } from '../TRPCError';
2
+ import { ProcedureType } from '../router';
3
+ export declare const middlewareMarker: unique symbol;
4
+ interface MiddlewareResultBase<TContext> {
5
+ /**
6
+ * All middlewares should pass through their `next()`'s output.
7
+ * Requiring this marker makes sure that can't be forgotten at compile-time.
8
+ */
9
+ readonly marker: typeof middlewareMarker;
10
+ ctx: TContext;
11
+ }
12
+ interface MiddlewareOKResult<TContext> extends MiddlewareResultBase<TContext> {
13
+ ok: true;
14
+ data: unknown;
15
+ }
16
+ interface MiddlewareErrorResult<TContext> extends MiddlewareResultBase<TContext> {
17
+ ok: false;
18
+ error: TRPCError;
19
+ }
20
+ export declare type MiddlewareResult<TContext> = MiddlewareOKResult<TContext> | MiddlewareErrorResult<TContext>;
21
+ export declare type MiddlewareFunction<TInputContext, TContext, TMeta> = (opts: {
22
+ ctx: TInputContext;
23
+ type: ProcedureType;
24
+ path: string;
25
+ rawInput: unknown;
26
+ meta?: TMeta;
27
+ next: {
28
+ (): Promise<MiddlewareResult<TInputContext>>;
29
+ <T>(opts: {
30
+ ctx: T;
31
+ }): Promise<MiddlewareResult<T>>;
32
+ };
33
+ }) => Promise<MiddlewareResult<TContext>>;
34
+ export {};
34
35
  //# sourceMappingURL=middlewares.d.ts.map
@@ -0,0 +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,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"}
@@ -0,0 +1,87 @@
1
+ import { ProcedureType } from '../router';
2
+ import { InferLast } from '../types';
3
+ import { MiddlewareFunction } from './middlewares';
4
+ export declare type ProcedureParserZodEsque<TInput, TOutput> = {
5
+ _input: TInput;
6
+ _output: TOutput;
7
+ };
8
+ export declare type ProcedureParserMyZodEsque<T> = {
9
+ parse: (input: any) => T;
10
+ };
11
+ export declare type ProcedureParserSuperstructEsque<T> = {
12
+ create: (input: unknown) => T;
13
+ };
14
+ export declare type ProcedureParserCustomValidatorEsque<T> = (input: unknown) => T | Promise<T>;
15
+ export declare type ProcedureParserYupEsque<T> = {
16
+ validateSync: (input: unknown) => T;
17
+ };
18
+ export declare type ProcedureParserWithInputOutput<TInput, TOutput> = ProcedureParserZodEsque<TInput, TOutput>;
19
+ export declare type ProcedureParser<T> = ProcedureParserYupEsque<T> | ProcedureParserSuperstructEsque<T> | ProcedureParserCustomValidatorEsque<T> | ProcedureParserMyZodEsque<T>;
20
+ export declare type ProcedureResolver<TContext, TInput, TOutput> = (opts: {
21
+ ctx: TContext;
22
+ input: TInput;
23
+ type: ProcedureType;
24
+ }) => Promise<TOutput> | TOutput;
25
+ interface ProcedureOptions<TContext, TMeta, TInput, TOutput, TParsedOutput> {
26
+ middlewares: Array<MiddlewareFunction<any, any, any>>;
27
+ resolver: ProcedureResolver<TContext, TInput, TOutput>;
28
+ inputParser: ProcedureParser<TInput>;
29
+ outputParser: ProcedureParser<TParsedOutput>;
30
+ meta: TMeta;
31
+ }
32
+ /**
33
+ * @internal
34
+ */
35
+ export interface ProcedureCallOptions<TContext> {
36
+ ctx: TContext;
37
+ rawInput: unknown;
38
+ path: string;
39
+ type: ProcedureType;
40
+ }
41
+ /**
42
+ * @internal
43
+ */
44
+ export declare class Procedure<TInputContext, TContext, TMeta, TInput, TParsedInput, TOutput, TParsedOutput, TFinalOutput = unknown extends TParsedOutput ? TOutput : TParsedOutput> {
45
+ private middlewares;
46
+ private resolver;
47
+ private readonly inputParser;
48
+ private parseInputFn;
49
+ private readonly outputParser;
50
+ private parseOutputFn;
51
+ readonly meta: TMeta;
52
+ constructor(opts: ProcedureOptions<TContext, TMeta, TParsedInput, TOutput, TFinalOutput>);
53
+ private parseInput;
54
+ private parseOutput;
55
+ /**
56
+ * Trigger middlewares in order, parse raw input, call resolver & parse raw output
57
+ * @internal
58
+ */
59
+ call(opts: ProcedureCallOptions<TInputContext>): Promise<TFinalOutput>;
60
+ /**
61
+ * Create new procedure with passed middlewares
62
+ * @param middlewares
63
+ */
64
+ inheritMiddlewares(middlewares: MiddlewareFunction<TInputContext, TContext, TMeta>[]): this;
65
+ }
66
+ export declare type CreateProcedureWithInput<TContext, TMeta, TInput, TOutput> = {
67
+ input: ProcedureParser<TInput>;
68
+ output?: ProcedureParser<TOutput>;
69
+ meta?: TMeta;
70
+ resolve: ProcedureResolver<TContext, TInput, InferLast<TOutput>>;
71
+ };
72
+ export declare type CreateProcedureWithInputOutputParser<TContext, TMeta, TInput, TParsedInput, TOutput, TParsedOutput> = {
73
+ input: ProcedureParserWithInputOutput<TInput, TParsedInput>;
74
+ output?: ProcedureParserWithInputOutput<TOutput, TParsedOutput>;
75
+ meta?: TMeta;
76
+ resolve: ProcedureResolver<TContext, TParsedInput, InferLast<TOutput>>;
77
+ };
78
+ export declare type CreateProcedureWithoutInput<TContext, TMeta, TOutput, TParsedOutput> = {
79
+ output?: ProcedureParserWithInputOutput<TOutput, TParsedOutput> | ProcedureParser<TOutput>;
80
+ meta?: TMeta;
81
+ resolve: ProcedureResolver<TContext, undefined, InferLast<TOutput>>;
82
+ };
83
+ 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>;
84
+ 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>;
85
+ 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;
86
+ export {};
87
+ //# sourceMappingURL=procedure.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"procedure.d.ts","sourceRoot":"","sources":["../../src/internals/procedure.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,EACL,kBAAkB,EAGnB,MAAM,eAAe,CAAC;AAIvB,oBAAY,uBAAuB,CAAC,MAAM,EAAE,OAAO,IAAI;IACrD,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,oBAAY,yBAAyB,CAAC,CAAC,IAAI;IACzC,KAAK,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,CAAC,CAAC;CAC1B,CAAC;AAEF,oBAAY,+BAA+B,CAAC,CAAC,IAAI;IAC/C,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,CAAC,CAAC;CAC/B,CAAC;AAEF,oBAAY,mCAAmC,CAAC,CAAC,IAAI,CACnD,KAAK,EAAE,OAAO,KACX,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAEpB,oBAAY,uBAAuB,CAAC,CAAC,IAAI;IACvC,YAAY,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,CAAC,CAAC;CACrC,CAAC;AAEF,oBAAY,8BAA8B,CAAC,MAAM,EAAE,OAAO,IACxD,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE3C,oBAAY,eAAe,CAAC,CAAC,IACzB,uBAAuB,CAAC,CAAC,CAAC,GAC1B,+BAA+B,CAAC,CAAC,CAAC,GAClC,mCAAmC,CAAC,CAAC,CAAC,GACtC,yBAAyB,CAAC,CAAC,CAAC,CAAC;AAEjC,oBAAY,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,IAAI,CAAC,IAAI,EAAE;IAChE,GAAG,EAAE,QAAQ,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,aAAa,CAAC;CACrB,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;AAEjC,UAAU,gBAAgB,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa;IACxE,WAAW,EAAE,KAAK,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IACtD,QAAQ,EAAE,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACvD,WAAW,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IACrC,YAAY,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC;IAC7C,IAAI,EAAE,KAAK,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB,CAAC,QAAQ;IAC5C,GAAG,EAAE,QAAQ,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,aAAa,CAAC;CACrB;AAmCD;;GAEG;AACH,qBAAa,SAAS,CACpB,aAAa,EACb,QAAQ,EACR,KAAK,EACL,MAAM,EACN,YAAY,EACZ,OAAO,EACP,aAAa,EACb,YAAY,GAAG,OAAO,SAAS,aAAa,GAAG,OAAO,GAAG,aAAa;IAEtE,OAAO,CAAC,WAAW,CAAqD;IACxE,OAAO,CAAC,QAAQ,CAAqD;IACrE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAgC;IAC5D,OAAO,CAAC,YAAY,CAAwB;IAC5C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgC;IAC7D,OAAO,CAAC,aAAa,CAAwB;IAC7C,SAAgB,IAAI,EAAE,KAAK,CAAC;gBAG1B,IAAI,EAAE,gBAAgB,CACpB,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,OAAO,EACP,YAAY,CACb;YAWW,UAAU;YAWV,WAAW;IAYzB;;;OAGG;IACU,IAAI,CACf,IAAI,EAAE,oBAAoB,CAAC,aAAa,CAAC,GACxC,OAAO,CAAC,YAAY,CAAC;IAqExB;;;OAGG;IACI,kBAAkB,CACvB,WAAW,EAAE,kBAAkB,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,GAChE,IAAI;CA+BR;AAED,oBAAY,wBAAwB,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,IAAI;IACvE,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IAC/B,MAAM,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;CAClE,CAAC;AAEF,oBAAY,oCAAoC,CAC9C,QAAQ,EACR,KAAK,EACL,MAAM,EACN,YAAY,EACZ,OAAO,EACP,aAAa,IACX;IACF,KAAK,EAAE,8BAA8B,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAC5D,MAAM,CAAC,EAAE,8BAA8B,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAChE,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,iBAAiB,CAAC,QAAQ,EAAE,YAAY,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;CACxE,CAAC;AAEF,oBAAY,2BAA2B,CACrC,QAAQ,EACR,KAAK,EACL,OAAO,EACP,aAAa,IACX;IACF,MAAM,CAAC,EACH,8BAA8B,CAAC,OAAO,EAAE,aAAa,CAAC,GACtD,eAAe,CAAC,OAAO,CAAC,CAAC;IAC7B,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;CACrE,CAAC;AAEF,oBAAY,sBAAsB,CAChC,QAAQ,EACR,KAAK,GAAG,SAAS,EACjB,MAAM,GAAG,SAAS,EAClB,YAAY,GAAG,SAAS,EACxB,OAAO,GAAG,SAAS,EACnB,aAAa,GAAG,SAAS,IAEvB,oCAAoC,CAClC,QAAQ,EACR,KAAK,EACL,MAAM,EACN,YAAY,EACZ,OAAO,EACP,aAAa,CACd,GACD,wBAAwB,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,GAC1D,2BAA2B,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;AAEzE,wBAAgB,eAAe,CAC7B,QAAQ,EACR,KAAK,EACL,MAAM,EACN,YAAY,EACZ,OAAO,EACP,aAAa,EAEb,IAAI,EAAE,sBAAsB,CAC1B,QAAQ,EACR,KAAK,EACL,MAAM,EACN,YAAY,EACZ,OAAO,EACP,aAAa,CACd,GACA,SAAS,CACV,OAAO,EACP,QAAQ,EACR,KAAK,EACL,MAAM,EACN,YAAY,EACZ,OAAO,EACP,aAAa,CACd,CA0BA;AAED,oBAAY,yBAAyB,CACnC,aAAa,EACb,QAAQ,SAAS,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IACnE,QAAQ,SAAS,sBAAsB,CACzC,MAAM,QAAQ,EACd,MAAM,KAAK,EACX,MAAM,MAAM,EACZ,MAAM,YAAY,EAClB,MAAM,OAAO,EACb,MAAM,aAAa,CACpB,GACG,SAAS,CACP,aAAa,EACb,QAAQ,EACR,KAAK,EACL,OAAO,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,EAC3C,OAAO,SAAS,YAAY,GAAG,SAAS,GAAG,YAAY,EACvD,OAAO,EACP,aAAa,CACd,GACD,KAAK,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { AnyRouter } from '../router';
2
+ import { TRPCResponse, TRPCResponseMessage } from '../rpc';
3
+ /**
4
+ * Takes a unserialized `TRPCResponse` and serializes it with the router's transformers
5
+ **/
6
+ export declare function transformTRPCResponse<TResponse extends TRPCResponse | TRPCResponse[] | TRPCResponseMessage | TRPCResponseMessage[]>(router: AnyRouter, itemOrItems: TResponse): import("../rpc").JSONRPC2.ResultResponse<import("../rpc").TRPCResult<unknown>> | import("../rpc").TRPCErrorResponse<import("../rpc").TRPCErrorShape<import("../rpc").TRPC_ERROR_CODE_NUMBER, Record<string, unknown>>> | ({
7
+ id: import("../rpc").JSONRPC2.RequestId;
8
+ } & import("../rpc").JSONRPC2.ResultResponse<import("../rpc").TRPCResultMessage<unknown>>) | (TRPCResponse<unknown, import("../rpc").TRPCErrorShape<import("../rpc").TRPC_ERROR_CODE_NUMBER, Record<string, unknown>>> | TRPCResponseMessage<unknown, import("../rpc").TRPCErrorShape<import("../rpc").TRPC_ERROR_CODE_NUMBER, Record<string, unknown>>>)[];
9
+ //# sourceMappingURL=transformTRPCResponse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformTRPCResponse.d.ts","sourceRoot":"","sources":["../../src/internals/transformTRPCResponse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAyB3D;;IAEI;AACJ,wBAAgB,qBAAqB,CACnC,SAAS,SACL,YAAY,GACZ,YAAY,EAAE,GACd,mBAAmB,GACnB,mBAAmB,EAAE,EACzB,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS;;4VAI1C"}
@@ -0,0 +1,105 @@
1
+ import { a as assertNotBrowser, r as resolveHTTPResponse } from './resolveHTTPResponse-54a79e6c.mjs';
2
+ import { T as TRPCError } from './TRPCError-7971540a.mjs';
3
+
4
+ async function getPostBody({
5
+ req,
6
+ maxBodySize
7
+ }) {
8
+ return new Promise(resolve => {
9
+ if ('body' in req) {
10
+ resolve({
11
+ ok: true,
12
+ data: req.body
13
+ });
14
+ return;
15
+ }
16
+
17
+ let body = '';
18
+ let hasBody = false;
19
+ req.on('data', function (data) {
20
+ body += data;
21
+ hasBody = true;
22
+
23
+ if (typeof maxBodySize === 'number' && body.length > maxBodySize) {
24
+ resolve({
25
+ ok: false,
26
+ error: new TRPCError({
27
+ code: 'PAYLOAD_TOO_LARGE'
28
+ })
29
+ });
30
+ req.socket.destroy();
31
+ }
32
+ });
33
+ req.on('end', () => {
34
+ resolve({
35
+ ok: true,
36
+ data: hasBody ? body : undefined
37
+ });
38
+ });
39
+ });
40
+ }
41
+
42
+ /* eslint-disable @typescript-eslint/no-non-null-assertion */
43
+ assertNotBrowser();
44
+ async function nodeHTTPRequestHandler(opts) {
45
+ var _opts$teardown;
46
+
47
+ const createContext = async function _createContext() {
48
+ var _opts$createContext;
49
+
50
+ return await ((_opts$createContext = opts.createContext) === null || _opts$createContext === void 0 ? void 0 : _opts$createContext.call(opts, opts));
51
+ };
52
+
53
+ const {
54
+ path,
55
+ router
56
+ } = opts;
57
+ const bodyResult = await getPostBody(opts);
58
+ const query = opts.req.query ? new URLSearchParams(opts.req.query) : new URLSearchParams(opts.req.url.split('?')[1]);
59
+ const req = {
60
+ method: opts.req.method,
61
+ headers: opts.req.headers,
62
+ query,
63
+ body: bodyResult.ok ? bodyResult.data : undefined
64
+ };
65
+ const result = await resolveHTTPResponse({
66
+ batching: opts.batching,
67
+ responseMeta: opts.responseMeta,
68
+ path,
69
+ createContext,
70
+ router,
71
+ req,
72
+ error: bodyResult.ok ? null : bodyResult.error,
73
+
74
+ onError(o) {
75
+ var _opts$onError;
76
+
77
+ opts === null || opts === void 0 ? void 0 : (_opts$onError = opts.onError) === null || _opts$onError === void 0 ? void 0 : _opts$onError.call(opts, { ...o,
78
+ req: opts.req
79
+ });
80
+ }
81
+
82
+ });
83
+ const {
84
+ res
85
+ } = opts;
86
+
87
+ if ('status' in result && (!res.statusCode || res.statusCode === 200)) {
88
+ res.statusCode = result.status;
89
+ }
90
+
91
+ for (const [key, value] of Object.entries((_result$headers = result.headers) !== null && _result$headers !== void 0 ? _result$headers : {})) {
92
+ var _result$headers;
93
+
94
+ if (typeof value === 'undefined') {
95
+ continue;
96
+ }
97
+
98
+ res.setHeader(key, value);
99
+ }
100
+
101
+ res.end(result.body);
102
+ await ((_opts$teardown = opts.teardown) === null || _opts$teardown === void 0 ? void 0 : _opts$teardown.call(opts));
103
+ }
104
+
105
+ export { nodeHTTPRequestHandler as n };
@@ -0,0 +1,107 @@
1
+ 'use strict';
2
+
3
+ var resolveHTTPResponse = require('./resolveHTTPResponse-ec3dccaa.js');
4
+ var TRPCError = require('./TRPCError-ddec3395.js');
5
+
6
+ async function getPostBody({
7
+ req,
8
+ maxBodySize
9
+ }) {
10
+ return new Promise(resolve => {
11
+ if ('body' in req) {
12
+ resolve({
13
+ ok: true,
14
+ data: req.body
15
+ });
16
+ return;
17
+ }
18
+
19
+ let body = '';
20
+ let hasBody = false;
21
+ req.on('data', function (data) {
22
+ body += data;
23
+ hasBody = true;
24
+
25
+ if (typeof maxBodySize === 'number' && body.length > maxBodySize) {
26
+ resolve({
27
+ ok: false,
28
+ error: new TRPCError.TRPCError({
29
+ code: 'PAYLOAD_TOO_LARGE'
30
+ })
31
+ });
32
+ req.socket.destroy();
33
+ }
34
+ });
35
+ req.on('end', () => {
36
+ resolve({
37
+ ok: true,
38
+ data: hasBody ? body : undefined
39
+ });
40
+ });
41
+ });
42
+ }
43
+
44
+ /* eslint-disable @typescript-eslint/no-non-null-assertion */
45
+ resolveHTTPResponse.assertNotBrowser();
46
+ async function nodeHTTPRequestHandler(opts) {
47
+ var _opts$teardown;
48
+
49
+ const createContext = async function _createContext() {
50
+ var _opts$createContext;
51
+
52
+ return await ((_opts$createContext = opts.createContext) === null || _opts$createContext === void 0 ? void 0 : _opts$createContext.call(opts, opts));
53
+ };
54
+
55
+ const {
56
+ path,
57
+ router
58
+ } = opts;
59
+ const bodyResult = await getPostBody(opts);
60
+ const query = opts.req.query ? new URLSearchParams(opts.req.query) : new URLSearchParams(opts.req.url.split('?')[1]);
61
+ const req = {
62
+ method: opts.req.method,
63
+ headers: opts.req.headers,
64
+ query,
65
+ body: bodyResult.ok ? bodyResult.data : undefined
66
+ };
67
+ const result = await resolveHTTPResponse.resolveHTTPResponse({
68
+ batching: opts.batching,
69
+ responseMeta: opts.responseMeta,
70
+ path,
71
+ createContext,
72
+ router,
73
+ req,
74
+ error: bodyResult.ok ? null : bodyResult.error,
75
+
76
+ onError(o) {
77
+ var _opts$onError;
78
+
79
+ opts === null || opts === void 0 ? void 0 : (_opts$onError = opts.onError) === null || _opts$onError === void 0 ? void 0 : _opts$onError.call(opts, { ...o,
80
+ req: opts.req
81
+ });
82
+ }
83
+
84
+ });
85
+ const {
86
+ res
87
+ } = opts;
88
+
89
+ if ('status' in result && (!res.statusCode || res.statusCode === 200)) {
90
+ res.statusCode = result.status;
91
+ }
92
+
93
+ for (const [key, value] of Object.entries((_result$headers = result.headers) !== null && _result$headers !== void 0 ? _result$headers : {})) {
94
+ var _result$headers;
95
+
96
+ if (typeof value === 'undefined') {
97
+ continue;
98
+ }
99
+
100
+ res.setHeader(key, value);
101
+ }
102
+
103
+ res.end(result.body);
104
+ await ((_opts$teardown = opts.teardown) === null || _opts$teardown === void 0 ? void 0 : _opts$teardown.call(opts));
105
+ }
106
+
107
+ exports.nodeHTTPRequestHandler = nodeHTTPRequestHandler;
@@ -0,0 +1,5 @@
1
+ export * from './observable';
2
+ export * from './types';
3
+ export * from './operators';
4
+ export { observableToPromise } from './internals/observableToPromise';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/observable/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC"}
@@ -0,0 +1,204 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var observable = require('../observable-3aa4d911.js');
6
+
7
+ /* eslint-disable @typescript-eslint/no-empty-interface */
8
+ function share( // eslint-disable-next-line @typescript-eslint/no-unused-vars
9
+ _opts) {
10
+ return originalObserver => {
11
+ let refCount = 0;
12
+ let subscription = null;
13
+ const observers = [];
14
+
15
+ function startIfNeeded() {
16
+ if (subscription) {
17
+ return;
18
+ }
19
+
20
+ subscription = originalObserver.subscribe({
21
+ next(value) {
22
+ for (const observer of observers) {
23
+ var _observer$next;
24
+
25
+ (_observer$next = observer.next) === null || _observer$next === void 0 ? void 0 : _observer$next.call(observer, value);
26
+ }
27
+ },
28
+
29
+ error(error) {
30
+ for (const observer of observers) {
31
+ var _observer$error;
32
+
33
+ (_observer$error = observer.error) === null || _observer$error === void 0 ? void 0 : _observer$error.call(observer, error);
34
+ }
35
+ },
36
+
37
+ complete() {
38
+ for (const observer of observers) {
39
+ var _observer$complete;
40
+
41
+ (_observer$complete = observer.complete) === null || _observer$complete === void 0 ? void 0 : _observer$complete.call(observer);
42
+ }
43
+ }
44
+
45
+ });
46
+ }
47
+
48
+ function resetIfNeeded() {
49
+ // "resetOnRefCountZero"
50
+ if (refCount === 0 && subscription) {
51
+ const _sub = subscription;
52
+ subscription = null;
53
+
54
+ _sub.unsubscribe();
55
+ }
56
+ }
57
+
58
+ return {
59
+ subscribe(observer) {
60
+ refCount++;
61
+ observers.push(observer);
62
+ startIfNeeded();
63
+ return {
64
+ unsubscribe() {
65
+ refCount--;
66
+ resetIfNeeded();
67
+ const index = observers.findIndex(v => v === observer);
68
+
69
+ if (index > -1) {
70
+ observers.splice(index, 1);
71
+ }
72
+ }
73
+
74
+ };
75
+ }
76
+
77
+ };
78
+ };
79
+ }
80
+
81
+ function map(project) {
82
+ return originalObserver => {
83
+ return {
84
+ subscribe(observer) {
85
+ let index = 0;
86
+ const subscription = originalObserver.subscribe({
87
+ next(value) {
88
+ var _observer$next;
89
+
90
+ (_observer$next = observer.next) === null || _observer$next === void 0 ? void 0 : _observer$next.call(observer, project(value, index++));
91
+ },
92
+
93
+ error(error) {
94
+ var _observer$error;
95
+
96
+ (_observer$error = observer.error) === null || _observer$error === void 0 ? void 0 : _observer$error.call(observer, error);
97
+ },
98
+
99
+ complete() {
100
+ var _observer$complete;
101
+
102
+ (_observer$complete = observer.complete) === null || _observer$complete === void 0 ? void 0 : _observer$complete.call(observer);
103
+ }
104
+
105
+ });
106
+ return subscription;
107
+ }
108
+
109
+ };
110
+ };
111
+ }
112
+
113
+ function tap(observer) {
114
+ return originalObserver => {
115
+ return {
116
+ subscribe(observer2) {
117
+ return originalObserver.subscribe({
118
+ next(v) {
119
+ var _observer$next, _observer2$next;
120
+
121
+ (_observer$next = observer.next) === null || _observer$next === void 0 ? void 0 : _observer$next.call(observer, v);
122
+ (_observer2$next = observer2.next) === null || _observer2$next === void 0 ? void 0 : _observer2$next.call(observer2, v);
123
+ },
124
+
125
+ error(v) {
126
+ var _observer$error, _observer2$error;
127
+
128
+ (_observer$error = observer.error) === null || _observer$error === void 0 ? void 0 : _observer$error.call(observer, v);
129
+ (_observer2$error = observer2.error) === null || _observer2$error === void 0 ? void 0 : _observer2$error.call(observer2, v);
130
+ },
131
+
132
+ complete() {
133
+ var _observer$complete, _observer2$complete;
134
+
135
+ (_observer$complete = observer.complete) === null || _observer$complete === void 0 ? void 0 : _observer$complete.call(observer);
136
+ (_observer2$complete = observer2.complete) === null || _observer2$complete === void 0 ? void 0 : _observer2$complete.call(observer2);
137
+ }
138
+
139
+ });
140
+ }
141
+
142
+ };
143
+ };
144
+ }
145
+
146
+ class ObservableAbortError extends Error {
147
+ constructor(message) {
148
+ super(message);
149
+ this.name = 'ObservableAbortError';
150
+ Object.setPrototypeOf(this, ObservableAbortError.prototype);
151
+ }
152
+
153
+ }
154
+ /** @internal */
155
+
156
+ function observableToPromise(observable) {
157
+ let abort;
158
+ const promise = new Promise((resolve, reject) => {
159
+ let isDone = false;
160
+
161
+ function onDone() {
162
+ if (isDone) {
163
+ return;
164
+ }
165
+
166
+ isDone = true;
167
+ reject(new ObservableAbortError('This operation was cancelled.'));
168
+ obs$.unsubscribe();
169
+ }
170
+
171
+ const obs$ = observable.subscribe({
172
+ next(data) {
173
+ isDone = true;
174
+ resolve(data);
175
+ onDone();
176
+ },
177
+
178
+ error(data) {
179
+ isDone = true;
180
+ reject(data);
181
+ onDone();
182
+ },
183
+
184
+ complete() {
185
+ isDone = true;
186
+ onDone();
187
+ }
188
+
189
+ });
190
+ abort = onDone;
191
+ });
192
+ return {
193
+ promise,
194
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
195
+ abort: abort
196
+ };
197
+ }
198
+
199
+ exports.isObservable = observable.isObservable;
200
+ exports.observable = observable.observable;
201
+ exports.map = map;
202
+ exports.observableToPromise = observableToPromise;
203
+ exports.share = share;
204
+ exports.tap = tap;