@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.
- package/adapters/express/dist/trpc-server-adapters-express.cjs.dev.js +7 -6
- package/adapters/express/dist/trpc-server-adapters-express.cjs.prod.js +7 -6
- package/adapters/express/dist/trpc-server-adapters-express.esm.js +7 -6
- package/adapters/express/index.d.ts +1 -0
- package/adapters/express/index.js +1 -0
- package/adapters/fastify/dist/trpc-server-adapters-fastify.cjs.d.ts +1 -0
- package/adapters/fastify/dist/trpc-server-adapters-fastify.cjs.dev.js +109 -0
- package/adapters/fastify/dist/trpc-server-adapters-fastify.cjs.js +7 -0
- package/adapters/fastify/dist/trpc-server-adapters-fastify.cjs.prod.js +109 -0
- package/adapters/fastify/dist/trpc-server-adapters-fastify.esm.js +104 -0
- package/adapters/fastify/index.d.ts +1 -0
- package/adapters/fastify/index.js +1 -0
- package/adapters/fetch/index.d.ts +1 -0
- package/adapters/fetch/index.js +1 -0
- package/adapters/next/dist/trpc-server-adapters-next.cjs.dev.js +4 -3
- package/adapters/next/dist/trpc-server-adapters-next.cjs.prod.js +4 -3
- package/adapters/next/dist/trpc-server-adapters-next.esm.js +4 -3
- package/adapters/next/index.d.ts +1 -0
- package/adapters/next/index.js +1 -0
- package/adapters/node-http/dist/trpc-server-adapters-node-http.cjs.dev.js +4 -3
- package/adapters/node-http/dist/trpc-server-adapters-node-http.cjs.prod.js +4 -3
- package/adapters/node-http/dist/trpc-server-adapters-node-http.esm.js +4 -3
- package/adapters/node-http/index.d.ts +1 -0
- package/adapters/node-http/index.js +1 -0
- package/adapters/standalone/dist/trpc-server-adapters-standalone.cjs.dev.js +5 -4
- package/adapters/standalone/dist/trpc-server-adapters-standalone.cjs.prod.js +5 -4
- package/adapters/standalone/dist/trpc-server-adapters-standalone.esm.js +5 -4
- package/adapters/standalone/index.d.ts +1 -0
- package/adapters/standalone/index.js +1 -0
- package/adapters/ws/dist/trpc-server-adapters-ws.cjs.dev.js +6 -5
- package/adapters/ws/dist/trpc-server-adapters-ws.cjs.prod.js +6 -5
- package/adapters/ws/dist/trpc-server-adapters-ws.esm.js +6 -5
- package/adapters/ws/index.d.ts +1 -0
- package/adapters/ws/index.js +1 -0
- package/dist/TRPCError-7971540a.mjs +65 -0
- package/dist/TRPCError-ddec3395.js +69 -0
- package/dist/TRPCError.d.ts +11 -0
- package/dist/TRPCError.d.ts.map +1 -0
- package/dist/{declarations/src/adapters → adapters}/express.d.ts +5 -5
- package/dist/adapters/express.d.ts.map +1 -0
- package/dist/adapters/express.js +23 -0
- package/dist/adapters/express.mjs +19 -0
- package/dist/adapters/express.ts.js +1 -0
- package/dist/adapters/fastify/fastifyRequestHandler.d.ts +13 -0
- package/dist/adapters/fastify/fastifyRequestHandler.d.ts.map +1 -0
- package/dist/adapters/fastify/fastifyTRPCPlugin.d.ts +12 -0
- package/dist/adapters/fastify/fastifyTRPCPlugin.d.ts.map +1 -0
- package/dist/adapters/fastify/index.d.ts +3 -0
- package/dist/adapters/fastify/index.d.ts.map +1 -0
- package/dist/adapters/fastify/index.js +108 -0
- package/dist/adapters/fastify/index.mjs +103 -0
- package/dist/adapters/fastify/index.ts.js +1 -0
- package/dist/adapters/fetch/fetchRequestHandler.d.ts +8 -0
- package/dist/adapters/fetch/fetchRequestHandler.d.ts.map +1 -0
- package/dist/adapters/fetch/index.d.ts +3 -0
- package/dist/adapters/fetch/index.d.ts.map +1 -0
- package/dist/adapters/fetch/index.js +69 -0
- package/dist/adapters/fetch/index.mjs +65 -0
- package/dist/adapters/fetch/index.ts.js +1 -0
- package/dist/adapters/fetch/types.d.ts +21 -0
- package/dist/adapters/fetch/types.d.ts.map +1 -0
- package/dist/{declarations/src/adapters → adapters}/next.d.ts +5 -5
- package/dist/adapters/next.d.ts.map +1 -0
- package/dist/adapters/next.js +55 -0
- package/dist/adapters/next.mjs +51 -0
- package/dist/adapters/next.ts.js +1 -0
- package/dist/{declarations/src/adapters → adapters}/node-http/index.d.ts +2 -2
- package/dist/adapters/node-http/index.d.ts.map +1 -0
- package/dist/adapters/node-http/index.js +13 -0
- package/dist/adapters/node-http/index.mjs +5 -0
- package/dist/adapters/node-http/index.ts.js +1 -0
- package/dist/{declarations/src/adapters → adapters}/node-http/internals/getPostBody.d.ts +12 -12
- package/dist/adapters/node-http/internals/getPostBody.d.ts.map +1 -0
- package/dist/{declarations/src/adapters → adapters}/node-http/nodeHTTPRequestHandler.d.ts +9 -9
- package/dist/adapters/node-http/nodeHTTPRequestHandler.d.ts.map +1 -0
- package/dist/{declarations/src/adapters → adapters}/node-http/types.d.ts +31 -32
- package/dist/adapters/node-http/types.d.ts.map +1 -0
- package/dist/{declarations/src/adapters → adapters}/standalone.d.ts +13 -13
- package/dist/adapters/standalone.d.ts.map +1 -0
- package/dist/adapters/standalone.js +49 -0
- package/dist/adapters/standalone.mjs +40 -0
- package/dist/adapters/standalone.ts.js +1 -0
- package/dist/{declarations/src/adapters → adapters}/ws.d.ts +16 -16
- package/dist/adapters/ws.d.ts.map +1 -0
- package/dist/adapters/ws.js +384 -0
- package/dist/adapters/ws.mjs +380 -0
- package/dist/adapters/ws.ts.js +1 -0
- package/dist/{declarations/src/assertNotBrowser.d.ts → assertNotBrowser.d.ts} +1 -1
- package/dist/assertNotBrowser.d.ts.map +1 -0
- package/dist/{codes-e0df67c4.cjs.prod.js → envelopes-1deb2fa7.mjs} +19 -5
- package/dist/{codes-33cef953.cjs.dev.js → envelopes-a953b930.js} +18 -0
- package/dist/{declarations/src/http → http}/ResponseMeta.d.ts +4 -4
- package/dist/http/ResponseMeta.d.ts.map +1 -0
- package/dist/{declarations/src/http → http}/index.d.ts +2 -2
- package/dist/http/index.d.ts.map +1 -0
- package/dist/{declarations/src/http → http}/internals/getHTTPStatusCode.d.ts +21 -20
- package/dist/http/internals/getHTTPStatusCode.d.ts.map +1 -0
- package/dist/{declarations/src/http → http}/internals/types.d.ts +40 -39
- package/dist/http/internals/types.d.ts.map +1 -0
- package/dist/{declarations/src/http → http}/resolveHTTPResponse.d.ts +12 -12
- package/dist/http/resolveHTTPResponse.d.ts.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/{trpc-server.cjs.dev.js → index.js} +81 -107
- package/dist/{trpc-server.esm.js → index.mjs} +71 -91
- package/dist/index.ts.js +1 -0
- package/dist/{declarations/src/internals → internals}/BaseHandlerOptions.d.ts +12 -12
- package/dist/internals/BaseHandlerOptions.d.ts.map +1 -0
- package/dist/{declarations/src/internals → internals}/OnErrorFunction.d.ts +10 -10
- package/dist/internals/OnErrorFunction.d.ts.map +1 -0
- package/dist/{declarations/src/internals → internals}/callProcedure.d.ts +9 -9
- package/dist/internals/callProcedure.d.ts.map +1 -0
- package/dist/{declarations/src/internals → internals}/errors.d.ts +4 -3
- package/dist/internals/errors.d.ts.map +1 -0
- package/dist/{declarations/src/internals → internals}/invert.d.ts +8 -8
- package/dist/internals/invert.d.ts.map +1 -0
- package/dist/{declarations/src/internals → internals}/middlewares.d.ts +34 -33
- package/dist/internals/middlewares.d.ts.map +1 -0
- package/dist/internals/procedure.d.ts +87 -0
- package/dist/internals/procedure.d.ts.map +1 -0
- package/dist/internals/transformTRPCResponse.d.ts +9 -0
- package/dist/internals/transformTRPCResponse.d.ts.map +1 -0
- package/dist/nodeHTTPRequestHandler-1cdb6383.mjs +105 -0
- package/dist/nodeHTTPRequestHandler-848f07b5.js +107 -0
- package/dist/observable/index.d.ts +5 -0
- package/dist/observable/index.d.ts.map +1 -0
- package/dist/observable/index.js +204 -0
- package/dist/observable/index.mjs +195 -0
- package/dist/observable/index.ts.js +1 -0
- package/dist/observable/internals/identity.d.ts +2 -0
- package/dist/observable/internals/identity.d.ts.map +1 -0
- package/dist/observable/internals/observableToPromise.d.ts +10 -0
- package/dist/observable/internals/observableToPromise.d.ts.map +1 -0
- package/dist/observable/internals/pipe.d.ts +4 -0
- package/dist/observable/internals/pipe.d.ts.map +1 -0
- package/dist/observable/observable.d.ts +5 -0
- package/dist/observable/observable.d.ts.map +1 -0
- package/dist/observable/operators/index.d.ts +4 -0
- package/dist/observable/operators/index.d.ts.map +1 -0
- package/dist/observable/operators/map.d.ts +3 -0
- package/dist/observable/operators/map.d.ts.map +1 -0
- package/dist/observable/operators/share.d.ts +6 -0
- package/dist/observable/operators/share.d.ts.map +1 -0
- package/dist/observable/operators/tap.d.ts +3 -0
- package/dist/observable/operators/tap.d.ts.map +1 -0
- package/dist/observable/types.d.ts +29 -0
- package/dist/observable/types.d.ts.map +1 -0
- package/dist/observable-137ea1bd.mjs +105 -0
- package/dist/observable-3aa4d911.js +108 -0
- package/dist/{nodeHTTPRequestHandler-2e6cc2d7.esm.js → resolveHTTPResponse-54a79e6c.mjs} +19 -126
- package/dist/{nodeHTTPRequestHandler-b7ff366e.cjs.dev.js → resolveHTTPResponse-ec3dccaa.js} +24 -132
- package/dist/router.d.ts +173 -0
- package/dist/router.d.ts.map +1 -0
- package/dist/{declarations/src/rpc → rpc}/codes.d.ts +48 -46
- package/dist/rpc/codes.d.ts.map +1 -0
- package/dist/rpc/envelopes.d.ts +94 -0
- package/dist/rpc/envelopes.d.ts.map +1 -0
- package/dist/{declarations/src/rpc → rpc}/index.d.ts +2 -2
- package/dist/rpc/index.d.ts.map +1 -0
- package/dist/rpc/index.js +14 -0
- package/dist/rpc/index.mjs +1 -0
- package/dist/rpc/index.ts.js +1 -0
- package/dist/subscription.d.ts +9 -0
- package/dist/subscription.d.ts.map +1 -0
- package/dist/subscription.js +44 -0
- package/dist/subscription.mjs +40 -0
- package/dist/subscription.ts.js +1 -0
- package/dist/transformTRPCResponse-333bed6c.js +56 -0
- package/dist/transformTRPCResponse-e0cba527.mjs +53 -0
- package/dist/{declarations/src/transformer.d.ts → transformer.d.ts} +29 -29
- package/dist/transformer.d.ts.map +1 -0
- package/dist/{declarations/src/types.d.ts → types.d.ts} +40 -40
- package/dist/types.d.ts.map +1 -0
- package/observable/index.d.ts +1 -0
- package/observable/index.js +1 -0
- package/package.json +82 -26
- package/rpc/dist/trpc-server-rpc.cjs.dev.js +1 -1
- package/rpc/dist/trpc-server-rpc.cjs.prod.js +1 -1
- package/rpc/dist/trpc-server-rpc.esm.js +1 -1
- package/rpc/index.d.ts +1 -0
- package/rpc/index.js +1 -0
- package/src/TRPCError.ts +5 -13
- package/src/adapters/express.ts +3 -3
- package/src/adapters/fastify/fastifyRequestHandler.ts +77 -0
- package/src/adapters/fastify/fastifyTRPCPlugin.ts +56 -0
- package/src/adapters/fastify/index.ts +2 -0
- package/src/adapters/fetch/fetchRequestHandler.ts +61 -0
- package/src/adapters/fetch/index.ts +2 -0
- package/src/adapters/fetch/types.ts +28 -0
- package/src/adapters/next.ts +9 -7
- package/src/adapters/node-http/internals/getPostBody.test.ts +2 -1
- package/src/adapters/node-http/nodeHTTPRequestHandler.ts +5 -6
- package/src/adapters/node-http/types.ts +4 -5
- package/src/adapters/standalone.ts +11 -3
- package/src/adapters/ws.ts +122 -81
- package/src/assertNotBrowser.ts +1 -0
- package/src/http/internals/getHTTPStatusCode.ts +2 -1
- package/src/http/internals/types.ts +6 -7
- package/src/http/resolveHTTPResponse.ts +23 -27
- package/src/index.ts +1 -6
- package/src/internals/BaseHandlerOptions.ts +1 -1
- package/src/internals/OnErrorFunction.ts +1 -1
- package/src/internals/callProcedure.ts +6 -3
- package/src/internals/errors.ts +20 -4
- package/src/internals/middlewares.ts +3 -2
- package/src/internals/procedure.ts +213 -93
- package/src/internals/transformTRPCResponse.ts +20 -15
- package/src/observable/index.ts +4 -0
- package/src/observable/internals/identity.ts +3 -0
- package/src/observable/internals/observableToPromise.ts +49 -0
- package/src/observable/internals/pipe.ts +22 -0
- package/src/observable/observable.test.ts +101 -0
- package/src/observable/observable.ts +75 -0
- package/src/observable/operators/index.ts +3 -0
- package/src/observable/operators/map.test.ts +92 -0
- package/src/observable/operators/map.ts +25 -0
- package/src/observable/operators/share.test.ts +60 -0
- package/src/observable/operators/share.ts +67 -0
- package/src/observable/operators/tap.ts +26 -0
- package/src/observable/types.ts +69 -0
- package/src/router.ts +171 -82
- package/src/rpc/codes.ts +1 -0
- package/src/rpc/envelopes.ts +87 -68
- package/src/subscription.ts +6 -124
- package/src/types.ts +7 -9
- package/adapters/express/package.json +0 -4
- package/adapters/next/package.json +0 -4
- package/adapters/node-http/package.json +0 -4
- package/adapters/standalone/package.json +0 -4
- package/adapters/ws/package.json +0 -4
- package/dist/codes-fe07bf82.esm.js +0 -56
- package/dist/declarations/src/TRPCError.d.ts +0 -19
- package/dist/declarations/src/TRPCError.d.ts.map +0 -1
- package/dist/declarations/src/adapters/express.d.ts.map +0 -1
- package/dist/declarations/src/adapters/next.d.ts.map +0 -1
- package/dist/declarations/src/adapters/node-http/index.d.ts.map +0 -1
- package/dist/declarations/src/adapters/node-http/internals/getPostBody.d.ts.map +0 -1
- package/dist/declarations/src/adapters/node-http/nodeHTTPRequestHandler.d.ts.map +0 -1
- package/dist/declarations/src/adapters/node-http/types.d.ts.map +0 -1
- package/dist/declarations/src/adapters/standalone.d.ts.map +0 -1
- package/dist/declarations/src/adapters/ws.d.ts.map +0 -1
- package/dist/declarations/src/assertNotBrowser.d.ts.map +0 -1
- package/dist/declarations/src/deprecated/LegacyRouter.d.ts +0 -3
- package/dist/declarations/src/deprecated/LegacyRouter.d.ts.map +0 -1
- package/dist/declarations/src/deprecated/createHttpServer.d.ts +0 -19
- package/dist/declarations/src/deprecated/createHttpServer.d.ts.map +0 -1
- package/dist/declarations/src/deprecated/requestHandler.d.ts +0 -15
- package/dist/declarations/src/deprecated/requestHandler.d.ts.map +0 -1
- package/dist/declarations/src/http/ResponseMeta.d.ts.map +0 -1
- package/dist/declarations/src/http/index.d.ts.map +0 -1
- package/dist/declarations/src/http/internals/getHTTPStatusCode.d.ts.map +0 -1
- package/dist/declarations/src/http/internals/types.d.ts.map +0 -1
- package/dist/declarations/src/http/resolveHTTPResponse.d.ts.map +0 -1
- package/dist/declarations/src/index.d.ts +0 -10
- package/dist/declarations/src/index.d.ts.map +0 -1
- package/dist/declarations/src/internals/BaseHandlerOptions.d.ts.map +0 -1
- package/dist/declarations/src/internals/OnErrorFunction.d.ts.map +0 -1
- package/dist/declarations/src/internals/callProcedure.d.ts.map +0 -1
- package/dist/declarations/src/internals/errors.d.ts.map +0 -1
- package/dist/declarations/src/internals/invert.d.ts.map +0 -1
- package/dist/declarations/src/internals/middlewares.d.ts.map +0 -1
- package/dist/declarations/src/internals/procedure.d.ts +0 -74
- package/dist/declarations/src/internals/procedure.d.ts.map +0 -1
- package/dist/declarations/src/internals/transformTRPCResponse.d.ts +0 -7
- package/dist/declarations/src/internals/transformTRPCResponse.d.ts.map +0 -1
- package/dist/declarations/src/internals/wrapCallSafe.d.ts +0 -16
- package/dist/declarations/src/internals/wrapCallSafe.d.ts.map +0 -1
- package/dist/declarations/src/router.d.ts +0 -176
- package/dist/declarations/src/router.d.ts.map +0 -1
- package/dist/declarations/src/rpc/codes.d.ts.map +0 -1
- package/dist/declarations/src/rpc/envelopes.d.ts +0 -72
- package/dist/declarations/src/rpc/envelopes.d.ts.map +0 -1
- package/dist/declarations/src/rpc/index.d.ts.map +0 -1
- package/dist/declarations/src/subscription.d.ts +0 -58
- package/dist/declarations/src/subscription.d.ts.map +0 -1
- package/dist/declarations/src/transformer.d.ts.map +0 -1
- package/dist/declarations/src/types.d.ts.map +0 -1
- package/dist/declarations/src/ws/index.d.ts +0 -7
- package/dist/declarations/src/ws/index.d.ts.map +0 -1
- package/dist/nodeHTTPRequestHandler-7325b53f.cjs.prod.js +0 -399
- package/dist/subscription-b8831081.cjs.dev.js +0 -136
- package/dist/subscription-c2e0bfbc.cjs.prod.js +0 -136
- package/dist/subscription-fbda2888.esm.js +0 -133
- package/dist/transformTRPCResponse-8248515e.cjs.dev.js +0 -114
- package/dist/transformTRPCResponse-dcbf66c5.cjs.prod.js +0 -114
- package/dist/transformTRPCResponse-f73dc4a2.esm.js +0 -109
- package/dist/trpc-server.cjs.d.ts +0 -1
- package/dist/trpc-server.cjs.js +0 -7
- package/dist/trpc-server.cjs.prod.js +0 -528
- package/rpc/package.json +0 -4
- package/src/deprecated/LegacyRouter.ts +0 -3
- package/src/deprecated/createHttpServer.ts +0 -29
- package/src/deprecated/requestHandler.ts +0 -26
- package/src/internals/wrapCallSafe.ts +0 -19
- package/src/ws/index.ts +0 -8
- package/ws/dist/trpc-server-ws.cjs.d.ts +0 -1
- package/ws/dist/trpc-server-ws.cjs.dev.js +0 -15
- package/ws/dist/trpc-server-ws.cjs.js +0 -7
- package/ws/dist/trpc-server-ws.cjs.prod.js +0 -15
- package/ws/dist/trpc-server-ws.esm.js +0 -11
- package/ws/package.json +0 -4
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { i as invert, T as TRPC_ERROR_CODES_BY_KEY } from './
|
|
1
|
+
import { T as TRPCError, a as getErrorFromUnknown, g as getCauseFromUnknown } from './TRPCError-7971540a.mjs';
|
|
2
|
+
import { c as callProcedure, t as transformTRPCResponse } from './transformTRPCResponse-e0cba527.mjs';
|
|
3
|
+
import { i as invert, T as TRPC_ERROR_CODES_BY_KEY } from './envelopes-1deb2fa7.mjs';
|
|
4
4
|
|
|
5
5
|
/* istanbul ignore file */
|
|
6
6
|
function assertNotBrowser() {
|
|
7
|
-
if (typeof window !== 'undefined' && process.env.NODE_ENV !== 'test' && process.env.JEST_WORKER_ID === undefined) {
|
|
7
|
+
if (typeof window !== 'undefined' && !('Deno' in window) && process.env.NODE_ENV !== 'test' && process.env.JEST_WORKER_ID === undefined) {
|
|
8
8
|
throw new Error('Imported server-only code in the browser');
|
|
9
9
|
}
|
|
10
10
|
}
|
|
@@ -18,6 +18,7 @@ const JSONRPC2_TO_HTTP_CODE = {
|
|
|
18
18
|
UNAUTHORIZED: 401,
|
|
19
19
|
FORBIDDEN: 403,
|
|
20
20
|
TIMEOUT: 408,
|
|
21
|
+
CONFLICT: 409,
|
|
21
22
|
CLIENT_CLOSED_REQUEST: 499,
|
|
22
23
|
PRECONDITION_FAILED: 412,
|
|
23
24
|
PAYLOAD_TOO_LARGE: 413,
|
|
@@ -80,10 +81,10 @@ function getRawProcedureInputOrThrow(req) {
|
|
|
80
81
|
}
|
|
81
82
|
|
|
82
83
|
return typeof req.body === 'string' ? JSON.parse(req.body) : req.body;
|
|
83
|
-
} catch (
|
|
84
|
+
} catch (err) {
|
|
84
85
|
throw new TRPCError({
|
|
85
86
|
code: 'PARSE_ERROR',
|
|
86
|
-
cause
|
|
87
|
+
cause: getCauseFromUnknown(err)
|
|
87
88
|
});
|
|
88
89
|
}
|
|
89
90
|
}
|
|
@@ -237,8 +238,7 @@ async function resolveHTTPResponse(opts) {
|
|
|
237
238
|
} = obj;
|
|
238
239
|
|
|
239
240
|
if (obj.error) {
|
|
240
|
-
|
|
241
|
-
id: null,
|
|
241
|
+
return {
|
|
242
242
|
error: router.getErrorShape({
|
|
243
243
|
error: obj.error,
|
|
244
244
|
type,
|
|
@@ -247,16 +247,12 @@ async function resolveHTTPResponse(opts) {
|
|
|
247
247
|
ctx
|
|
248
248
|
})
|
|
249
249
|
};
|
|
250
|
-
return json;
|
|
251
250
|
} else {
|
|
252
|
-
|
|
253
|
-
id: null,
|
|
251
|
+
return {
|
|
254
252
|
result: {
|
|
255
|
-
type: 'data',
|
|
256
253
|
data: obj.data
|
|
257
254
|
}
|
|
258
255
|
};
|
|
259
|
-
return json;
|
|
260
256
|
}
|
|
261
257
|
});
|
|
262
258
|
const result = isBatchCall ? resultEnvelopes : resultEnvelopes[0];
|
|
@@ -268,16 +264,6 @@ async function resolveHTTPResponse(opts) {
|
|
|
268
264
|
// - post body is too large
|
|
269
265
|
// - input deserialization fails
|
|
270
266
|
const error = getErrorFromUnknown(cause);
|
|
271
|
-
const json = {
|
|
272
|
-
id: null,
|
|
273
|
-
error: router.getErrorShape({
|
|
274
|
-
error,
|
|
275
|
-
type,
|
|
276
|
-
path: undefined,
|
|
277
|
-
input: undefined,
|
|
278
|
-
ctx
|
|
279
|
-
})
|
|
280
|
-
};
|
|
281
267
|
onError === null || onError === void 0 ? void 0 : onError({
|
|
282
268
|
error,
|
|
283
269
|
path: undefined,
|
|
@@ -286,109 +272,16 @@ async function resolveHTTPResponse(opts) {
|
|
|
286
272
|
type: type,
|
|
287
273
|
req
|
|
288
274
|
});
|
|
289
|
-
return endResponse(
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
})
|
|
297
|
-
|
|
298
|
-
if ('body' in req) {
|
|
299
|
-
resolve({
|
|
300
|
-
ok: true,
|
|
301
|
-
data: req.body
|
|
302
|
-
});
|
|
303
|
-
return;
|
|
304
|
-
}
|
|
305
|
-
|
|
306
|
-
let body = '';
|
|
307
|
-
let hasBody = false;
|
|
308
|
-
req.on('data', function (data) {
|
|
309
|
-
body += data;
|
|
310
|
-
hasBody = true;
|
|
311
|
-
|
|
312
|
-
if (typeof maxBodySize === 'number' && body.length > maxBodySize) {
|
|
313
|
-
resolve({
|
|
314
|
-
ok: false,
|
|
315
|
-
error: new TRPCError({
|
|
316
|
-
code: 'PAYLOAD_TOO_LARGE'
|
|
317
|
-
})
|
|
318
|
-
});
|
|
319
|
-
req.socket.destroy();
|
|
320
|
-
}
|
|
321
|
-
});
|
|
322
|
-
req.on('end', () => {
|
|
323
|
-
resolve({
|
|
324
|
-
ok: true,
|
|
325
|
-
data: hasBody ? body : undefined
|
|
326
|
-
});
|
|
327
|
-
});
|
|
328
|
-
});
|
|
329
|
-
}
|
|
330
|
-
|
|
331
|
-
/* eslint-disable @typescript-eslint/no-non-null-assertion */
|
|
332
|
-
assertNotBrowser();
|
|
333
|
-
async function nodeHTTPRequestHandler(opts) {
|
|
334
|
-
var _opts$teardown;
|
|
335
|
-
|
|
336
|
-
const createContext = async function _createContext() {
|
|
337
|
-
var _opts$createContext;
|
|
338
|
-
|
|
339
|
-
return await ((_opts$createContext = opts.createContext) === null || _opts$createContext === void 0 ? void 0 : _opts$createContext.call(opts, opts));
|
|
340
|
-
};
|
|
341
|
-
|
|
342
|
-
const {
|
|
343
|
-
path,
|
|
344
|
-
router
|
|
345
|
-
} = opts;
|
|
346
|
-
const bodyResult = await getPostBody(opts);
|
|
347
|
-
const query = opts.req.query ? new URLSearchParams(opts.req.query) : new URLSearchParams(opts.req.url.split('?')[1]);
|
|
348
|
-
const req = {
|
|
349
|
-
method: opts.req.method,
|
|
350
|
-
headers: opts.req.headers,
|
|
351
|
-
query,
|
|
352
|
-
body: bodyResult.ok ? bodyResult.data : undefined
|
|
353
|
-
};
|
|
354
|
-
const result = await resolveHTTPResponse({
|
|
355
|
-
batching: opts.batching,
|
|
356
|
-
responseMeta: opts.responseMeta,
|
|
357
|
-
path,
|
|
358
|
-
createContext,
|
|
359
|
-
router,
|
|
360
|
-
req,
|
|
361
|
-
error: bodyResult.ok ? null : bodyResult.error,
|
|
362
|
-
|
|
363
|
-
onError(o) {
|
|
364
|
-
var _opts$onError;
|
|
365
|
-
|
|
366
|
-
opts === null || opts === void 0 ? void 0 : (_opts$onError = opts.onError) === null || _opts$onError === void 0 ? void 0 : _opts$onError.call(opts, { ...o,
|
|
367
|
-
req: opts.req
|
|
368
|
-
});
|
|
369
|
-
}
|
|
370
|
-
|
|
371
|
-
});
|
|
372
|
-
const {
|
|
373
|
-
res
|
|
374
|
-
} = opts;
|
|
375
|
-
|
|
376
|
-
if ('status' in result && (!res.statusCode || res.statusCode === 200)) {
|
|
377
|
-
res.statusCode = result.status;
|
|
378
|
-
}
|
|
379
|
-
|
|
380
|
-
for (const [key, value] of Object.entries((_result$headers = result.headers) !== null && _result$headers !== void 0 ? _result$headers : {})) {
|
|
381
|
-
var _result$headers;
|
|
382
|
-
|
|
383
|
-
if (typeof value === 'undefined') {
|
|
384
|
-
continue;
|
|
385
|
-
}
|
|
386
|
-
|
|
387
|
-
res.setHeader(key, value);
|
|
275
|
+
return endResponse({
|
|
276
|
+
error: router.getErrorShape({
|
|
277
|
+
error,
|
|
278
|
+
type,
|
|
279
|
+
path: undefined,
|
|
280
|
+
input: undefined,
|
|
281
|
+
ctx
|
|
282
|
+
})
|
|
283
|
+
}, [error]);
|
|
388
284
|
}
|
|
389
|
-
|
|
390
|
-
res.end(result.body);
|
|
391
|
-
await ((_opts$teardown = opts.teardown) === null || _opts$teardown === void 0 ? void 0 : _opts$teardown.call(opts));
|
|
392
285
|
}
|
|
393
286
|
|
|
394
|
-
export { assertNotBrowser as a, getHTTPStatusCodeFromError as g,
|
|
287
|
+
export { assertNotBrowser as a, getHTTPStatusCodeFromError as g, resolveHTTPResponse as r };
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var transformTRPCResponse = require('./transformTRPCResponse-
|
|
5
|
-
var
|
|
3
|
+
var TRPCError = require('./TRPCError-ddec3395.js');
|
|
4
|
+
var transformTRPCResponse = require('./transformTRPCResponse-333bed6c.js');
|
|
5
|
+
var envelopes = require('./envelopes-a953b930.js');
|
|
6
6
|
|
|
7
7
|
/* istanbul ignore file */
|
|
8
8
|
function assertNotBrowser() {
|
|
9
|
-
if (typeof window !== 'undefined' && process.env.NODE_ENV !== 'test' && process.env.JEST_WORKER_ID === undefined) {
|
|
9
|
+
if (typeof window !== 'undefined' && !('Deno' in window) && process.env.NODE_ENV !== 'test' && process.env.JEST_WORKER_ID === undefined) {
|
|
10
10
|
throw new Error('Imported server-only code in the browser');
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
-
const TRPC_ERROR_CODES_BY_NUMBER = /*#__PURE__*/
|
|
14
|
+
const TRPC_ERROR_CODES_BY_NUMBER = /*#__PURE__*/envelopes.invert(envelopes.TRPC_ERROR_CODES_BY_KEY);
|
|
15
15
|
const JSONRPC2_TO_HTTP_CODE = {
|
|
16
16
|
PARSE_ERROR: 400,
|
|
17
17
|
BAD_REQUEST: 400,
|
|
@@ -20,6 +20,7 @@ const JSONRPC2_TO_HTTP_CODE = {
|
|
|
20
20
|
UNAUTHORIZED: 401,
|
|
21
21
|
FORBIDDEN: 403,
|
|
22
22
|
TIMEOUT: 408,
|
|
23
|
+
CONFLICT: 409,
|
|
23
24
|
CLIENT_CLOSED_REQUEST: 499,
|
|
24
25
|
PRECONDITION_FAILED: 412,
|
|
25
26
|
PAYLOAD_TOO_LARGE: 413,
|
|
@@ -82,10 +83,10 @@ function getRawProcedureInputOrThrow(req) {
|
|
|
82
83
|
}
|
|
83
84
|
|
|
84
85
|
return typeof req.body === 'string' ? JSON.parse(req.body) : req.body;
|
|
85
|
-
} catch (
|
|
86
|
-
throw new
|
|
86
|
+
} catch (err) {
|
|
87
|
+
throw new TRPCError.TRPCError({
|
|
87
88
|
code: 'PARSE_ERROR',
|
|
88
|
-
cause
|
|
89
|
+
cause: TRPCError.getCauseFromUnknown(err)
|
|
89
90
|
});
|
|
90
91
|
}
|
|
91
92
|
}
|
|
@@ -157,7 +158,7 @@ async function resolveHTTPResponse(opts) {
|
|
|
157
158
|
}
|
|
158
159
|
|
|
159
160
|
if (type === 'unknown' || type === 'subscription') {
|
|
160
|
-
throw new
|
|
161
|
+
throw new TRPCError.TRPCError({
|
|
161
162
|
message: `Unexpected request method ${req.method}`,
|
|
162
163
|
code: 'METHOD_NOT_SUPPORTED'
|
|
163
164
|
});
|
|
@@ -179,7 +180,7 @@ async function resolveHTTPResponse(opts) {
|
|
|
179
180
|
}
|
|
180
181
|
|
|
181
182
|
if (rawInput == null || typeof rawInput !== 'object' || Array.isArray(rawInput)) {
|
|
182
|
-
throw new
|
|
183
|
+
throw new TRPCError.TRPCError({
|
|
183
184
|
code: 'BAD_REQUEST',
|
|
184
185
|
message: '"input" needs to be an object when doing a batch call'
|
|
185
186
|
});
|
|
@@ -215,7 +216,7 @@ async function resolveHTTPResponse(opts) {
|
|
|
215
216
|
data: output
|
|
216
217
|
};
|
|
217
218
|
} catch (cause) {
|
|
218
|
-
const error =
|
|
219
|
+
const error = TRPCError.getErrorFromUnknown(cause);
|
|
219
220
|
onError === null || onError === void 0 ? void 0 : onError({
|
|
220
221
|
error,
|
|
221
222
|
path,
|
|
@@ -239,8 +240,7 @@ async function resolveHTTPResponse(opts) {
|
|
|
239
240
|
} = obj;
|
|
240
241
|
|
|
241
242
|
if (obj.error) {
|
|
242
|
-
|
|
243
|
-
id: null,
|
|
243
|
+
return {
|
|
244
244
|
error: router.getErrorShape({
|
|
245
245
|
error: obj.error,
|
|
246
246
|
type,
|
|
@@ -249,16 +249,12 @@ async function resolveHTTPResponse(opts) {
|
|
|
249
249
|
ctx
|
|
250
250
|
})
|
|
251
251
|
};
|
|
252
|
-
return json;
|
|
253
252
|
} else {
|
|
254
|
-
|
|
255
|
-
id: null,
|
|
253
|
+
return {
|
|
256
254
|
result: {
|
|
257
|
-
type: 'data',
|
|
258
255
|
data: obj.data
|
|
259
256
|
}
|
|
260
257
|
};
|
|
261
|
-
return json;
|
|
262
258
|
}
|
|
263
259
|
});
|
|
264
260
|
const result = isBatchCall ? resultEnvelopes : resultEnvelopes[0];
|
|
@@ -269,17 +265,7 @@ async function resolveHTTPResponse(opts) {
|
|
|
269
265
|
// - `createContext()` throws
|
|
270
266
|
// - post body is too large
|
|
271
267
|
// - input deserialization fails
|
|
272
|
-
const error =
|
|
273
|
-
const json = {
|
|
274
|
-
id: null,
|
|
275
|
-
error: router.getErrorShape({
|
|
276
|
-
error,
|
|
277
|
-
type,
|
|
278
|
-
path: undefined,
|
|
279
|
-
input: undefined,
|
|
280
|
-
ctx
|
|
281
|
-
})
|
|
282
|
-
};
|
|
268
|
+
const error = TRPCError.getErrorFromUnknown(cause);
|
|
283
269
|
onError === null || onError === void 0 ? void 0 : onError({
|
|
284
270
|
error,
|
|
285
271
|
path: undefined,
|
|
@@ -288,112 +274,18 @@ async function resolveHTTPResponse(opts) {
|
|
|
288
274
|
type: type,
|
|
289
275
|
req
|
|
290
276
|
});
|
|
291
|
-
return endResponse(
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
})
|
|
299
|
-
|
|
300
|
-
if ('body' in req) {
|
|
301
|
-
resolve({
|
|
302
|
-
ok: true,
|
|
303
|
-
data: req.body
|
|
304
|
-
});
|
|
305
|
-
return;
|
|
306
|
-
}
|
|
307
|
-
|
|
308
|
-
let body = '';
|
|
309
|
-
let hasBody = false;
|
|
310
|
-
req.on('data', function (data) {
|
|
311
|
-
body += data;
|
|
312
|
-
hasBody = true;
|
|
313
|
-
|
|
314
|
-
if (typeof maxBodySize === 'number' && body.length > maxBodySize) {
|
|
315
|
-
resolve({
|
|
316
|
-
ok: false,
|
|
317
|
-
error: new transformTRPCResponse.TRPCError({
|
|
318
|
-
code: 'PAYLOAD_TOO_LARGE'
|
|
319
|
-
})
|
|
320
|
-
});
|
|
321
|
-
req.socket.destroy();
|
|
322
|
-
}
|
|
323
|
-
});
|
|
324
|
-
req.on('end', () => {
|
|
325
|
-
resolve({
|
|
326
|
-
ok: true,
|
|
327
|
-
data: hasBody ? body : undefined
|
|
328
|
-
});
|
|
329
|
-
});
|
|
330
|
-
});
|
|
331
|
-
}
|
|
332
|
-
|
|
333
|
-
/* eslint-disable @typescript-eslint/no-non-null-assertion */
|
|
334
|
-
assertNotBrowser();
|
|
335
|
-
async function nodeHTTPRequestHandler(opts) {
|
|
336
|
-
var _opts$teardown;
|
|
337
|
-
|
|
338
|
-
const createContext = async function _createContext() {
|
|
339
|
-
var _opts$createContext;
|
|
340
|
-
|
|
341
|
-
return await ((_opts$createContext = opts.createContext) === null || _opts$createContext === void 0 ? void 0 : _opts$createContext.call(opts, opts));
|
|
342
|
-
};
|
|
343
|
-
|
|
344
|
-
const {
|
|
345
|
-
path,
|
|
346
|
-
router
|
|
347
|
-
} = opts;
|
|
348
|
-
const bodyResult = await getPostBody(opts);
|
|
349
|
-
const query = opts.req.query ? new url.URLSearchParams(opts.req.query) : new url.URLSearchParams(opts.req.url.split('?')[1]);
|
|
350
|
-
const req = {
|
|
351
|
-
method: opts.req.method,
|
|
352
|
-
headers: opts.req.headers,
|
|
353
|
-
query,
|
|
354
|
-
body: bodyResult.ok ? bodyResult.data : undefined
|
|
355
|
-
};
|
|
356
|
-
const result = await resolveHTTPResponse({
|
|
357
|
-
batching: opts.batching,
|
|
358
|
-
responseMeta: opts.responseMeta,
|
|
359
|
-
path,
|
|
360
|
-
createContext,
|
|
361
|
-
router,
|
|
362
|
-
req,
|
|
363
|
-
error: bodyResult.ok ? null : bodyResult.error,
|
|
364
|
-
|
|
365
|
-
onError(o) {
|
|
366
|
-
var _opts$onError;
|
|
367
|
-
|
|
368
|
-
opts === null || opts === void 0 ? void 0 : (_opts$onError = opts.onError) === null || _opts$onError === void 0 ? void 0 : _opts$onError.call(opts, { ...o,
|
|
369
|
-
req: opts.req
|
|
370
|
-
});
|
|
371
|
-
}
|
|
372
|
-
|
|
373
|
-
});
|
|
374
|
-
const {
|
|
375
|
-
res
|
|
376
|
-
} = opts;
|
|
377
|
-
|
|
378
|
-
if ('status' in result && (!res.statusCode || res.statusCode === 200)) {
|
|
379
|
-
res.statusCode = result.status;
|
|
380
|
-
}
|
|
381
|
-
|
|
382
|
-
for (const [key, value] of Object.entries((_result$headers = result.headers) !== null && _result$headers !== void 0 ? _result$headers : {})) {
|
|
383
|
-
var _result$headers;
|
|
384
|
-
|
|
385
|
-
if (typeof value === 'undefined') {
|
|
386
|
-
continue;
|
|
387
|
-
}
|
|
388
|
-
|
|
389
|
-
res.setHeader(key, value);
|
|
277
|
+
return endResponse({
|
|
278
|
+
error: router.getErrorShape({
|
|
279
|
+
error,
|
|
280
|
+
type,
|
|
281
|
+
path: undefined,
|
|
282
|
+
input: undefined,
|
|
283
|
+
ctx
|
|
284
|
+
})
|
|
285
|
+
}, [error]);
|
|
390
286
|
}
|
|
391
|
-
|
|
392
|
-
res.end(result.body);
|
|
393
|
-
await ((_opts$teardown = opts.teardown) === null || _opts$teardown === void 0 ? void 0 : _opts$teardown.call(opts));
|
|
394
287
|
}
|
|
395
288
|
|
|
396
289
|
exports.assertNotBrowser = assertNotBrowser;
|
|
397
290
|
exports.getHTTPStatusCodeFromError = getHTTPStatusCodeFromError;
|
|
398
|
-
exports.nodeHTTPRequestHandler = nodeHTTPRequestHandler;
|
|
399
291
|
exports.resolveHTTPResponse = resolveHTTPResponse;
|
package/dist/router.d.ts
ADDED
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import { TRPCError } from './TRPCError';
|
|
2
|
+
import { MiddlewareFunction } from './internals/middlewares';
|
|
3
|
+
import { CreateProcedureWithInput, CreateProcedureWithInputOutputParser, CreateProcedureWithoutInput, Procedure, inferProcedureFromOptions } from './internals/procedure';
|
|
4
|
+
import { Observable, inferObservableValue } from './observable';
|
|
5
|
+
import { TRPCErrorShape, TRPC_ERROR_CODE_KEY, TRPC_ERROR_CODE_NUMBER } from './rpc';
|
|
6
|
+
import { CombinedDataTransformer, DataTransformerOptions } from './transformer';
|
|
7
|
+
import { Prefixer, ThenArg, flatten } from './types';
|
|
8
|
+
/**
|
|
9
|
+
* @public
|
|
10
|
+
*/
|
|
11
|
+
export declare type ProcedureType = 'query' | 'mutation' | 'subscription';
|
|
12
|
+
/**
|
|
13
|
+
* @internal
|
|
14
|
+
*/
|
|
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
|
+
/**
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
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
|
+
/**
|
|
21
|
+
* @public
|
|
22
|
+
*/
|
|
23
|
+
export declare type inferAsyncReturnType<TFunction extends (...args: any) => any> = ThenArg<ReturnType<TFunction>>;
|
|
24
|
+
/**
|
|
25
|
+
* @public
|
|
26
|
+
*/
|
|
27
|
+
export declare type inferProcedureOutput<TProcedure extends Procedure<any, any, any, any, any, any, any>> = inferAsyncReturnType<TProcedure['call']>;
|
|
28
|
+
/**
|
|
29
|
+
* @public
|
|
30
|
+
* @beta
|
|
31
|
+
*/
|
|
32
|
+
export declare type inferSubscriptionOutput<TRouter extends AnyRouter, TPath extends keyof TRouter['_def']['subscriptions']> = inferObservableValue<inferAsyncReturnType<TRouter['_def']['subscriptions'][TPath]['call']>>;
|
|
33
|
+
/**
|
|
34
|
+
* @internal
|
|
35
|
+
*/
|
|
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
|
+
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
|
+
/**
|
|
39
|
+
* @internal
|
|
40
|
+
*/
|
|
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 : {};
|
|
46
|
+
/**
|
|
47
|
+
* @public
|
|
48
|
+
*/
|
|
49
|
+
export declare type AnyRouter<TContext = any> = Router<any, TContext, any, any, any, any, any>;
|
|
50
|
+
/**
|
|
51
|
+
* @internal
|
|
52
|
+
*/
|
|
53
|
+
export declare type inferRouterError<TRouter extends AnyRouter> = ReturnType<TRouter['getErrorShape']>;
|
|
54
|
+
/**
|
|
55
|
+
* @internal
|
|
56
|
+
*/
|
|
57
|
+
export declare type ErrorFormatter<TContext, TShape extends TRPCErrorShape<number>> = ({ error, }: {
|
|
58
|
+
error: TRPCError;
|
|
59
|
+
type: ProcedureType | 'unknown';
|
|
60
|
+
path: string | undefined;
|
|
61
|
+
input: unknown;
|
|
62
|
+
ctx: undefined | TContext;
|
|
63
|
+
shape: DefaultErrorShape;
|
|
64
|
+
}) => TShape;
|
|
65
|
+
declare type DefaultErrorData = {
|
|
66
|
+
code: TRPC_ERROR_CODE_KEY;
|
|
67
|
+
httpStatus: number;
|
|
68
|
+
path?: string;
|
|
69
|
+
stack?: string;
|
|
70
|
+
};
|
|
71
|
+
/**
|
|
72
|
+
* @internal
|
|
73
|
+
*/
|
|
74
|
+
export interface DefaultErrorShape extends TRPCErrorShape<TRPC_ERROR_CODE_NUMBER, DefaultErrorData> {
|
|
75
|
+
message: string;
|
|
76
|
+
code: TRPC_ERROR_CODE_NUMBER;
|
|
77
|
+
}
|
|
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;
|
|
79
|
+
declare type SwapContext<TObj extends ProcedureRecord<any, any, any, any, any, any>, TNewContext> = {
|
|
80
|
+
[P in keyof TObj]: SwapProcedureContext<TObj[P], TNewContext>;
|
|
81
|
+
};
|
|
82
|
+
/**
|
|
83
|
+
* @internal The type signature of this class may change without warning.
|
|
84
|
+
*/
|
|
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, Observable<unknown, unknown>, unknown, unknown>, TErrorShape extends TRPCErrorShape<number>> {
|
|
86
|
+
readonly _def: {
|
|
87
|
+
queries: TQueries;
|
|
88
|
+
mutations: TMutations;
|
|
89
|
+
subscriptions: TSubscriptions;
|
|
90
|
+
middlewares: MiddlewareFunction<TInputContext, TContext, TMeta>[];
|
|
91
|
+
errorFormatter: ErrorFormatter<TContext, TErrorShape>;
|
|
92
|
+
transformer: CombinedDataTransformer;
|
|
93
|
+
};
|
|
94
|
+
constructor(def?: {
|
|
95
|
+
queries?: TQueries;
|
|
96
|
+
mutations?: TMutations;
|
|
97
|
+
subscriptions?: TSubscriptions;
|
|
98
|
+
middlewares?: MiddlewareFunction<TInputContext, TContext, TMeta>[];
|
|
99
|
+
errorFormatter?: ErrorFormatter<TContext, TErrorShape>;
|
|
100
|
+
transformer?: CombinedDataTransformer;
|
|
101
|
+
});
|
|
102
|
+
private static prefixProcedures;
|
|
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>;
|
|
109
|
+
/**
|
|
110
|
+
* @beta Might change without a major version bump
|
|
111
|
+
*/
|
|
112
|
+
subscription<TPath extends string, TInput, TParsedInput, TOutput extends Observable<unknown, 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>;
|
|
113
|
+
/**
|
|
114
|
+
* @beta Might change without a major version bump
|
|
115
|
+
*/
|
|
116
|
+
subscription<TPath extends string, TInput, TOutput extends Observable<unknown, 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>;
|
|
117
|
+
/**
|
|
118
|
+
* @beta Might change without a major version bump
|
|
119
|
+
*/
|
|
120
|
+
subscription<TPath extends string, TOutput extends Observable<unknown, 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>;
|
|
121
|
+
/**
|
|
122
|
+
* Merge router with other router
|
|
123
|
+
* @param router
|
|
124
|
+
*/
|
|
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>;
|
|
126
|
+
/**
|
|
127
|
+
* Merge router with other router
|
|
128
|
+
* @param prefix Prefix that this router should live under
|
|
129
|
+
* @param router
|
|
130
|
+
*/
|
|
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>;
|
|
132
|
+
/**
|
|
133
|
+
* Invoke procedure. Only for internal use within library.
|
|
134
|
+
*/
|
|
135
|
+
private call;
|
|
136
|
+
createCaller(ctx: TInputContext): {
|
|
137
|
+
query: inferHandlerFn<TQueries>;
|
|
138
|
+
mutation: inferHandlerFn<TMutations>;
|
|
139
|
+
subscription: inferHandlerFn<TSubscriptions>;
|
|
140
|
+
};
|
|
141
|
+
/**
|
|
142
|
+
* Function to be called before any procedure is invoked
|
|
143
|
+
* @link https://trpc.io/docs/middlewares
|
|
144
|
+
*/
|
|
145
|
+
middleware<TNewContext>(middleware: MiddlewareFunction<TContext, TNewContext, TMeta>): Router<TInputContext, TNewContext, TMeta, SwapContext<TQueries, TNewContext>, SwapContext<TMutations, TNewContext>, SwapContext<TSubscriptions, TNewContext>, TErrorShape>;
|
|
146
|
+
/**
|
|
147
|
+
* Format errors
|
|
148
|
+
* @link https://trpc.io/docs/error-formatting
|
|
149
|
+
*/
|
|
150
|
+
formatError<TErrorFormatter extends ErrorFormatter<TContext, TRPCErrorShape<number>>>(errorFormatter: TErrorFormatter): Router<TInputContext, TContext, TMeta, TQueries, TMutations, TSubscriptions, ReturnType<TErrorFormatter>>;
|
|
151
|
+
getErrorShape(opts: {
|
|
152
|
+
error: TRPCError;
|
|
153
|
+
type: ProcedureType | 'unknown';
|
|
154
|
+
path: string | undefined;
|
|
155
|
+
input: unknown;
|
|
156
|
+
ctx: undefined | TContext;
|
|
157
|
+
}): TErrorShape;
|
|
158
|
+
/**
|
|
159
|
+
* Add data transformer to serialize/deserialize input args + output
|
|
160
|
+
* @link https://trpc.io/docs/data-transformers
|
|
161
|
+
*/
|
|
162
|
+
transformer(_transformer: DataTransformerOptions): Router<TInputContext, TContext, TMeta, TQueries, TMutations, TSubscriptions, TErrorShape>;
|
|
163
|
+
/**
|
|
164
|
+
* Flattens the generics of TQueries/TMutations/TSubscriptions.
|
|
165
|
+
* ⚠️ Experimental - might disappear. ⚠️
|
|
166
|
+
*
|
|
167
|
+
* @alpha
|
|
168
|
+
*/
|
|
169
|
+
flat(): Router<TInputContext, TContext, TMeta, flatten<{}, TQueries>, flatten<{}, TMutations>, flatten<{}, TSubscriptions>, TErrorShape>;
|
|
170
|
+
}
|
|
171
|
+
export declare function router<TContext, TMeta extends Record<string, any> = {}>(): Router<TContext, TContext, TMeta, {}, {}, {}, DefaultErrorShape>;
|
|
172
|
+
export {};
|
|
173
|
+
//# sourceMappingURL=router.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"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"}
|