@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
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var transformTRPCResponse = require('../../../dist/transformTRPCResponse-
|
|
6
|
-
var subscription = require('../../../dist/subscription-
|
|
5
|
+
var transformTRPCResponse = require('../../../dist/transformTRPCResponse-1e125b28.cjs.prod.js');
|
|
6
|
+
var subscription = require('../../../dist/subscription-f03bec71.cjs.prod.js');
|
|
7
7
|
require('events');
|
|
8
8
|
|
|
9
9
|
/* istanbul ignore next */
|
|
@@ -96,7 +96,7 @@ function applyWSSHandler(opts) {
|
|
|
96
96
|
const {
|
|
97
97
|
transformer
|
|
98
98
|
} = router._def;
|
|
99
|
-
wss.on('connection', (client, req) => {
|
|
99
|
+
wss.on('connection', async (client, req) => {
|
|
100
100
|
const clientSubscriptions = new Map();
|
|
101
101
|
|
|
102
102
|
function respond(untransformedJSON) {
|
|
@@ -263,7 +263,8 @@ function applyWSSHandler(opts) {
|
|
|
263
263
|
try {
|
|
264
264
|
const msgJSON = JSON.parse(message.toString());
|
|
265
265
|
const msgs = Array.isArray(msgJSON) ? msgJSON : [msgJSON];
|
|
266
|
-
msgs.map(raw => parseMessage(raw, transformer)).map(handleRequest);
|
|
266
|
+
const promises = msgs.map(raw => parseMessage(raw, transformer)).map(handleRequest);
|
|
267
|
+
await Promise.all(promises);
|
|
267
268
|
} catch (cause) {
|
|
268
269
|
const error = new transformTRPCResponse.TRPCError({
|
|
269
270
|
code: 'PARSE_ERROR',
|
|
@@ -322,7 +323,7 @@ function applyWSSHandler(opts) {
|
|
|
322
323
|
}
|
|
323
324
|
}
|
|
324
325
|
|
|
325
|
-
createContextAsync();
|
|
326
|
+
await createContextAsync();
|
|
326
327
|
});
|
|
327
328
|
return {
|
|
328
329
|
broadcastReconnectNotification: () => {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { T as TRPCError, t as transformTRPCResponse, c as callProcedure, g as getErrorFromUnknown } from '../../../dist/transformTRPCResponse-
|
|
2
|
-
import { S as Subscription } from '../../../dist/subscription-
|
|
1
|
+
import { T as TRPCError, t as transformTRPCResponse, c as callProcedure, g as getErrorFromUnknown } from '../../../dist/transformTRPCResponse-45c225c3.esm.js';
|
|
2
|
+
import { S as Subscription } from '../../../dist/subscription-2ea469a3.esm.js';
|
|
3
3
|
import 'events';
|
|
4
4
|
|
|
5
5
|
/* istanbul ignore next */
|
|
@@ -92,7 +92,7 @@ function applyWSSHandler(opts) {
|
|
|
92
92
|
const {
|
|
93
93
|
transformer
|
|
94
94
|
} = router._def;
|
|
95
|
-
wss.on('connection', (client, req) => {
|
|
95
|
+
wss.on('connection', async (client, req) => {
|
|
96
96
|
const clientSubscriptions = new Map();
|
|
97
97
|
|
|
98
98
|
function respond(untransformedJSON) {
|
|
@@ -259,7 +259,8 @@ function applyWSSHandler(opts) {
|
|
|
259
259
|
try {
|
|
260
260
|
const msgJSON = JSON.parse(message.toString());
|
|
261
261
|
const msgs = Array.isArray(msgJSON) ? msgJSON : [msgJSON];
|
|
262
|
-
msgs.map(raw => parseMessage(raw, transformer)).map(handleRequest);
|
|
262
|
+
const promises = msgs.map(raw => parseMessage(raw, transformer)).map(handleRequest);
|
|
263
|
+
await Promise.all(promises);
|
|
263
264
|
} catch (cause) {
|
|
264
265
|
const error = new TRPCError({
|
|
265
266
|
code: 'PARSE_ERROR',
|
|
@@ -318,7 +319,7 @@ function applyWSSHandler(opts) {
|
|
|
318
319
|
}
|
|
319
320
|
}
|
|
320
321
|
|
|
321
|
-
createContextAsync();
|
|
322
|
+
await createContextAsync();
|
|
322
323
|
});
|
|
323
324
|
return {
|
|
324
325
|
broadcastReconnectNotification: () => {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../../dist/adapters/ws';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require('../../dist/adapters/ws');
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
function getMessageFromUnkownError(err, fallback) {
|
|
2
|
+
if (typeof err === 'string') {
|
|
3
|
+
return err;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
if (err instanceof Error && typeof err.message === 'string') {
|
|
7
|
+
return err.message;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
return fallback;
|
|
11
|
+
}
|
|
12
|
+
function getErrorFromUnknown(cause) {
|
|
13
|
+
// this should ideally be an `instanceof TRPCError` but for some reason that isn't working
|
|
14
|
+
// ref https://github.com/trpc/trpc/issues/331
|
|
15
|
+
if (cause instanceof Error && cause.name === 'TRPCError') {
|
|
16
|
+
return cause;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
let errorCause = undefined;
|
|
20
|
+
let stack = undefined;
|
|
21
|
+
|
|
22
|
+
if (cause instanceof Error) {
|
|
23
|
+
errorCause = cause; // take stack trace from cause
|
|
24
|
+
|
|
25
|
+
stack = cause.stack;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
const err = new TRPCError({
|
|
29
|
+
code: 'INTERNAL_SERVER_ERROR',
|
|
30
|
+
cause: errorCause
|
|
31
|
+
});
|
|
32
|
+
err.stack = stack;
|
|
33
|
+
return err;
|
|
34
|
+
}
|
|
35
|
+
function getCauseFromUnknown(cause) {
|
|
36
|
+
if (cause instanceof Error) {
|
|
37
|
+
return cause;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
return undefined;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
class TRPCError extends Error {
|
|
44
|
+
constructor(opts) {
|
|
45
|
+
var _opts$message;
|
|
46
|
+
|
|
47
|
+
const cause = opts.cause;
|
|
48
|
+
const code = opts.code;
|
|
49
|
+
const message = (_opts$message = opts.message) !== null && _opts$message !== void 0 ? _opts$message : getMessageFromUnkownError(cause, code); // eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
50
|
+
// @ts-ignore https://github.com/tc39/proposal-error-cause
|
|
51
|
+
|
|
52
|
+
super(message, {
|
|
53
|
+
cause
|
|
54
|
+
});
|
|
55
|
+
this.cause = void 0;
|
|
56
|
+
this.code = void 0;
|
|
57
|
+
this.code = code;
|
|
58
|
+
this.cause = cause;
|
|
59
|
+
this.name = 'TRPCError';
|
|
60
|
+
Object.setPrototypeOf(this, new.target.prototype);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export { TRPCError as T, getErrorFromUnknown as a, getCauseFromUnknown as g };
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
function getMessageFromUnkownError(err, fallback) {
|
|
4
|
+
if (typeof err === 'string') {
|
|
5
|
+
return err;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
if (err instanceof Error && typeof err.message === 'string') {
|
|
9
|
+
return err.message;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
return fallback;
|
|
13
|
+
}
|
|
14
|
+
function getErrorFromUnknown(cause) {
|
|
15
|
+
// this should ideally be an `instanceof TRPCError` but for some reason that isn't working
|
|
16
|
+
// ref https://github.com/trpc/trpc/issues/331
|
|
17
|
+
if (cause instanceof Error && cause.name === 'TRPCError') {
|
|
18
|
+
return cause;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
let errorCause = undefined;
|
|
22
|
+
let stack = undefined;
|
|
23
|
+
|
|
24
|
+
if (cause instanceof Error) {
|
|
25
|
+
errorCause = cause; // take stack trace from cause
|
|
26
|
+
|
|
27
|
+
stack = cause.stack;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
const err = new TRPCError({
|
|
31
|
+
code: 'INTERNAL_SERVER_ERROR',
|
|
32
|
+
cause: errorCause
|
|
33
|
+
});
|
|
34
|
+
err.stack = stack;
|
|
35
|
+
return err;
|
|
36
|
+
}
|
|
37
|
+
function getCauseFromUnknown(cause) {
|
|
38
|
+
if (cause instanceof Error) {
|
|
39
|
+
return cause;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
return undefined;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
class TRPCError extends Error {
|
|
46
|
+
constructor(opts) {
|
|
47
|
+
var _opts$message;
|
|
48
|
+
|
|
49
|
+
const cause = opts.cause;
|
|
50
|
+
const code = opts.code;
|
|
51
|
+
const message = (_opts$message = opts.message) !== null && _opts$message !== void 0 ? _opts$message : getMessageFromUnkownError(cause, code); // eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
52
|
+
// @ts-ignore https://github.com/tc39/proposal-error-cause
|
|
53
|
+
|
|
54
|
+
super(message, {
|
|
55
|
+
cause
|
|
56
|
+
});
|
|
57
|
+
this.cause = void 0;
|
|
58
|
+
this.code = void 0;
|
|
59
|
+
this.code = code;
|
|
60
|
+
this.cause = cause;
|
|
61
|
+
this.name = 'TRPCError';
|
|
62
|
+
Object.setPrototypeOf(this, new.target.prototype);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
exports.TRPCError = TRPCError;
|
|
68
|
+
exports.getCauseFromUnknown = getCauseFromUnknown;
|
|
69
|
+
exports.getErrorFromUnknown = getErrorFromUnknown;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { TRPC_ERROR_CODE_KEY } from './rpc/codes';
|
|
2
|
+
export declare class TRPCError extends Error {
|
|
3
|
+
readonly cause?: Error | undefined;
|
|
4
|
+
readonly code: "PARSE_ERROR" | "BAD_REQUEST" | "INTERNAL_SERVER_ERROR" | "UNAUTHORIZED" | "FORBIDDEN" | "NOT_FOUND" | "METHOD_NOT_SUPPORTED" | "TIMEOUT" | "CONFLICT" | "PRECONDITION_FAILED" | "PAYLOAD_TOO_LARGE" | "CLIENT_CLOSED_REQUEST";
|
|
5
|
+
constructor(opts: {
|
|
6
|
+
message?: string;
|
|
7
|
+
code: TRPC_ERROR_CODE_KEY;
|
|
8
|
+
cause?: Error;
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=TRPCError.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TRPCError.d.ts","sourceRoot":"","sources":["../src/TRPCError.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAElD,qBAAa,SAAU,SAAQ,KAAK;IAClC,SAAgB,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IAC1C,SAAgB,IAAI,iOAAC;gBAET,IAAI,EAAE;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,mBAAmB,CAAC;QAC1B,KAAK,CAAC,EAAE,KAAK,CAAC;KACf;CAeF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type * as express from 'express';
|
|
2
|
-
import { AnyRouter } from '../router';
|
|
3
|
-
import { NodeHTTPCreateContextFnOptions, NodeHTTPHandlerOptions } from './node-http';
|
|
4
|
-
export declare type CreateExpressContextOptions = NodeHTTPCreateContextFnOptions<express.Request, express.Response>;
|
|
5
|
-
export declare function createExpressMiddleware<TRouter extends AnyRouter>(opts: NodeHTTPHandlerOptions<TRouter, express.Request, express.Response>): express.Handler;
|
|
1
|
+
import type * as express from 'express';
|
|
2
|
+
import { AnyRouter } from '../router';
|
|
3
|
+
import { NodeHTTPCreateContextFnOptions, NodeHTTPHandlerOptions } from './node-http';
|
|
4
|
+
export declare type CreateExpressContextOptions = NodeHTTPCreateContextFnOptions<express.Request, express.Response>;
|
|
5
|
+
export declare function createExpressMiddleware<TRouter extends AnyRouter>(opts: NodeHTTPHandlerOptions<TRouter, express.Request, express.Response>): express.Handler;
|
|
6
6
|
//# sourceMappingURL=express.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"express.d.ts","sourceRoot":"","sources":["../../src/adapters/express.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,OAAO,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,OAAO,EACL,8BAA8B,EAC9B,sBAAsB,EACvB,MAAM,aAAa,CAAC;AAErB,oBAAY,2BAA2B,GAAG,8BAA8B,CACtE,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,QAAQ,CACjB,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,OAAO,SAAS,SAAS,EAC/D,IAAI,EAAE,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,GACvE,OAAO,CAAC,OAAO,CAWjB"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var nodeHTTPRequestHandler = require('../nodeHTTPRequestHandler-848f07b5.js');
|
|
6
|
+
require('../resolveHTTPResponse-ec3dccaa.js');
|
|
7
|
+
require('../TRPCError-ddec3395.js');
|
|
8
|
+
require('../transformTRPCResponse-333bed6c.js');
|
|
9
|
+
require('../envelopes-a953b930.js');
|
|
10
|
+
|
|
11
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
12
|
+
function createExpressMiddleware(opts) {
|
|
13
|
+
return async (req, res) => {
|
|
14
|
+
const endpoint = req.path.slice(1);
|
|
15
|
+
await nodeHTTPRequestHandler.nodeHTTPRequestHandler({ ...opts,
|
|
16
|
+
req,
|
|
17
|
+
res,
|
|
18
|
+
path: endpoint
|
|
19
|
+
});
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
exports.createExpressMiddleware = createExpressMiddleware;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { n as nodeHTTPRequestHandler } from '../nodeHTTPRequestHandler-1cdb6383.mjs';
|
|
2
|
+
import '../resolveHTTPResponse-54a79e6c.mjs';
|
|
3
|
+
import '../TRPCError-7971540a.mjs';
|
|
4
|
+
import '../transformTRPCResponse-e0cba527.mjs';
|
|
5
|
+
import '../envelopes-1deb2fa7.mjs';
|
|
6
|
+
|
|
7
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
8
|
+
function createExpressMiddleware(opts) {
|
|
9
|
+
return async (req, res) => {
|
|
10
|
+
const endpoint = req.path.slice(1);
|
|
11
|
+
await nodeHTTPRequestHandler({ ...opts,
|
|
12
|
+
req,
|
|
13
|
+
res,
|
|
14
|
+
path: endpoint
|
|
15
|
+
});
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export { createExpressMiddleware };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { FastifyReply, FastifyRequest } from 'fastify';
|
|
2
|
+
import { HTTPBaseHandlerOptions } from '../../http/internals/types';
|
|
3
|
+
import { AnyRouter } from '../../router';
|
|
4
|
+
import { NodeHTTPCreateContextOption } from '../node-http';
|
|
5
|
+
export declare type FastifyHandlerOptions<TRouter extends AnyRouter, TRequest extends FastifyRequest, TResponse extends FastifyReply> = HTTPBaseHandlerOptions<TRouter, TRequest> & NodeHTTPCreateContextOption<TRouter, TRequest, TResponse>;
|
|
6
|
+
declare type FastifyRequestHandlerOptions<TRouter extends AnyRouter, TRequest extends FastifyRequest, TResponse extends FastifyReply> = {
|
|
7
|
+
req: TRequest;
|
|
8
|
+
res: TResponse;
|
|
9
|
+
path: string;
|
|
10
|
+
} & FastifyHandlerOptions<TRouter, TRequest, TResponse>;
|
|
11
|
+
export declare function fastifyRequestHandler<TRouter extends AnyRouter, TRequest extends FastifyRequest, TResponse extends FastifyReply>(opts: FastifyRequestHandlerOptions<TRouter, TRequest, TResponse>): Promise<void>;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=fastifyRequestHandler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fastifyRequestHandler.d.ts","sourceRoot":"","sources":["../../../src/adapters/fastify/fastifyRequestHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEvD,OAAO,EACL,sBAAsB,EAEvB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,SAAS,EAAsB,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,cAAc,CAAC;AAI3D,oBAAY,qBAAqB,CAC/B,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,cAAc,EAC/B,SAAS,SAAS,YAAY,IAC5B,sBAAsB,CAAC,OAAO,EAAE,QAAQ,CAAC,GAC3C,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAE5D,aAAK,4BAA4B,CAC/B,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,cAAc,EAC/B,SAAS,SAAS,YAAY,IAC5B;IACF,GAAG,EAAE,QAAQ,CAAC;IACd,GAAG,EAAE,SAAS,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,qBAAqB,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAExD,wBAAsB,qBAAqB,CACzC,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,cAAc,EAC/B,SAAS,SAAS,YAAY,EAC9B,IAAI,EAAE,4BAA4B,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,iBA2CjE"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { FastifyInstance, FastifyReply, FastifyRequest } from 'fastify';
|
|
2
|
+
import { FastifyHandlerOptions } from '.';
|
|
3
|
+
import { AnyRouter } from '../..';
|
|
4
|
+
import { NodeHTTPCreateContextFnOptions } from '../node-http';
|
|
5
|
+
export interface FastifyTRPCPluginOptions<TRouter extends AnyRouter> {
|
|
6
|
+
prefix?: string;
|
|
7
|
+
useWSS?: boolean;
|
|
8
|
+
trpcOptions: FastifyHandlerOptions<TRouter, FastifyRequest, FastifyReply>;
|
|
9
|
+
}
|
|
10
|
+
export declare type CreateFastifyContextOptions = NodeHTTPCreateContextFnOptions<FastifyRequest, FastifyReply>;
|
|
11
|
+
export declare function fastifyTRPCPlugin<TRouter extends AnyRouter>(fastify: FastifyInstance, opts: FastifyTRPCPluginOptions<TRouter>, done: (err?: Error) => void): void;
|
|
12
|
+
//# sourceMappingURL=fastifyTRPCPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fastifyTRPCPlugin.d.ts","sourceRoot":"","sources":["../../../src/adapters/fastify/fastifyTRPCPlugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,GAAG,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAC;AAI9D,MAAM,WAAW,wBAAwB,CAAC,OAAO,SAAS,SAAS;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,qBAAqB,CAAC,OAAO,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;CAC3E;AAED,oBAAY,2BAA2B,GAAG,8BAA8B,CACtE,cAAc,EACd,YAAY,CACb,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,OAAO,SAAS,SAAS,EACzD,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACvC,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,KAAK,IAAI,QAiC5B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/fastify/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var resolveHTTPResponse = require('../../resolveHTTPResponse-ec3dccaa.js');
|
|
6
|
+
var adapters_ws = require('../ws.js');
|
|
7
|
+
require('../../TRPCError-ddec3395.js');
|
|
8
|
+
require('../../transformTRPCResponse-333bed6c.js');
|
|
9
|
+
require('../../envelopes-a953b930.js');
|
|
10
|
+
require('../../observable-3aa4d911.js');
|
|
11
|
+
|
|
12
|
+
resolveHTTPResponse.assertNotBrowser();
|
|
13
|
+
async function fastifyRequestHandler(opts) {
|
|
14
|
+
var _opts$req$body;
|
|
15
|
+
|
|
16
|
+
const createContext = async function _createContext() {
|
|
17
|
+
var _opts$createContext;
|
|
18
|
+
|
|
19
|
+
return (_opts$createContext = opts.createContext) === null || _opts$createContext === void 0 ? void 0 : _opts$createContext.call(opts, opts);
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
const query = opts.req.query ? new URLSearchParams(opts.req.query) : new URLSearchParams(opts.req.url.split('?')[1]);
|
|
23
|
+
const req = {
|
|
24
|
+
query,
|
|
25
|
+
method: opts.req.method,
|
|
26
|
+
headers: opts.req.headers,
|
|
27
|
+
body: (_opts$req$body = opts.req.body) !== null && _opts$req$body !== void 0 ? _opts$req$body : 'null'
|
|
28
|
+
};
|
|
29
|
+
const result = await resolveHTTPResponse.resolveHTTPResponse({
|
|
30
|
+
req,
|
|
31
|
+
createContext,
|
|
32
|
+
path: opts.path,
|
|
33
|
+
router: opts.router,
|
|
34
|
+
batching: opts.batching,
|
|
35
|
+
responseMeta: opts.responseMeta,
|
|
36
|
+
|
|
37
|
+
onError(o) {
|
|
38
|
+
var _opts$onError;
|
|
39
|
+
|
|
40
|
+
opts === null || opts === void 0 ? void 0 : (_opts$onError = opts.onError) === null || _opts$onError === void 0 ? void 0 : _opts$onError.call(opts, { ...o,
|
|
41
|
+
req: opts.req
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
});
|
|
46
|
+
const {
|
|
47
|
+
res
|
|
48
|
+
} = opts;
|
|
49
|
+
|
|
50
|
+
if ('status' in result && (!res.statusCode || res.statusCode === 200)) {
|
|
51
|
+
res.statusCode = result.status;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
for (const [key, value] of Object.entries((_result$headers = result.headers) !== null && _result$headers !== void 0 ? _result$headers : {})) {
|
|
55
|
+
var _result$headers;
|
|
56
|
+
|
|
57
|
+
if (typeof value === 'undefined') {
|
|
58
|
+
continue;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
void res.header(key, value);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
await res.send(result.body);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/// <reference types="fastify-websocket" />
|
|
68
|
+
function fastifyTRPCPlugin(fastify, opts, done) {
|
|
69
|
+
var _opts$prefix;
|
|
70
|
+
|
|
71
|
+
fastify.addContentTypeParser('application/json', {
|
|
72
|
+
parseAs: 'string'
|
|
73
|
+
}, function (_, body, _done) {
|
|
74
|
+
_done(null, body);
|
|
75
|
+
});
|
|
76
|
+
let prefix = (_opts$prefix = opts.prefix) !== null && _opts$prefix !== void 0 ? _opts$prefix : ''; // https://github.com/fastify/fastify-plugin/blob/fe079bef6557a83794bf437e14b9b9edb8a74104/plugin.js#L11
|
|
77
|
+
// @ts-expect-error property 'default' does not exists on type ...
|
|
78
|
+
|
|
79
|
+
if (typeof fastifyTRPCPlugin.default !== 'function') {
|
|
80
|
+
prefix = ''; // handled by fastify internally
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
fastify.all(`${prefix}/:path`, async (req, res) => {
|
|
84
|
+
const path = req.params.path;
|
|
85
|
+
await fastifyRequestHandler({ ...opts.trpcOptions,
|
|
86
|
+
req,
|
|
87
|
+
res,
|
|
88
|
+
path
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
|
|
92
|
+
if (opts.useWSS) {
|
|
93
|
+
var _prefix;
|
|
94
|
+
|
|
95
|
+
adapters_ws.applyWSSHandler({ ...opts.trpcOptions,
|
|
96
|
+
wss: fastify.websocketServer
|
|
97
|
+
}); // eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
98
|
+
|
|
99
|
+
fastify.get((_prefix = prefix) !== null && _prefix !== void 0 ? _prefix : '/', {
|
|
100
|
+
websocket: true
|
|
101
|
+
}, () => {});
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
done();
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
exports.fastifyRequestHandler = fastifyRequestHandler;
|
|
108
|
+
exports.fastifyTRPCPlugin = fastifyTRPCPlugin;
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { a as assertNotBrowser, r as resolveHTTPResponse } from '../../resolveHTTPResponse-54a79e6c.mjs';
|
|
2
|
+
import { applyWSSHandler } from '../ws.mjs';
|
|
3
|
+
import '../../TRPCError-7971540a.mjs';
|
|
4
|
+
import '../../transformTRPCResponse-e0cba527.mjs';
|
|
5
|
+
import '../../envelopes-1deb2fa7.mjs';
|
|
6
|
+
import '../../observable-137ea1bd.mjs';
|
|
7
|
+
|
|
8
|
+
assertNotBrowser();
|
|
9
|
+
async function fastifyRequestHandler(opts) {
|
|
10
|
+
var _opts$req$body;
|
|
11
|
+
|
|
12
|
+
const createContext = async function _createContext() {
|
|
13
|
+
var _opts$createContext;
|
|
14
|
+
|
|
15
|
+
return (_opts$createContext = opts.createContext) === null || _opts$createContext === void 0 ? void 0 : _opts$createContext.call(opts, opts);
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
const query = opts.req.query ? new URLSearchParams(opts.req.query) : new URLSearchParams(opts.req.url.split('?')[1]);
|
|
19
|
+
const req = {
|
|
20
|
+
query,
|
|
21
|
+
method: opts.req.method,
|
|
22
|
+
headers: opts.req.headers,
|
|
23
|
+
body: (_opts$req$body = opts.req.body) !== null && _opts$req$body !== void 0 ? _opts$req$body : 'null'
|
|
24
|
+
};
|
|
25
|
+
const result = await resolveHTTPResponse({
|
|
26
|
+
req,
|
|
27
|
+
createContext,
|
|
28
|
+
path: opts.path,
|
|
29
|
+
router: opts.router,
|
|
30
|
+
batching: opts.batching,
|
|
31
|
+
responseMeta: opts.responseMeta,
|
|
32
|
+
|
|
33
|
+
onError(o) {
|
|
34
|
+
var _opts$onError;
|
|
35
|
+
|
|
36
|
+
opts === null || opts === void 0 ? void 0 : (_opts$onError = opts.onError) === null || _opts$onError === void 0 ? void 0 : _opts$onError.call(opts, { ...o,
|
|
37
|
+
req: opts.req
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
});
|
|
42
|
+
const {
|
|
43
|
+
res
|
|
44
|
+
} = opts;
|
|
45
|
+
|
|
46
|
+
if ('status' in result && (!res.statusCode || res.statusCode === 200)) {
|
|
47
|
+
res.statusCode = result.status;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
for (const [key, value] of Object.entries((_result$headers = result.headers) !== null && _result$headers !== void 0 ? _result$headers : {})) {
|
|
51
|
+
var _result$headers;
|
|
52
|
+
|
|
53
|
+
if (typeof value === 'undefined') {
|
|
54
|
+
continue;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
void res.header(key, value);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
await res.send(result.body);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/// <reference types="fastify-websocket" />
|
|
64
|
+
function fastifyTRPCPlugin(fastify, opts, done) {
|
|
65
|
+
var _opts$prefix;
|
|
66
|
+
|
|
67
|
+
fastify.addContentTypeParser('application/json', {
|
|
68
|
+
parseAs: 'string'
|
|
69
|
+
}, function (_, body, _done) {
|
|
70
|
+
_done(null, body);
|
|
71
|
+
});
|
|
72
|
+
let prefix = (_opts$prefix = opts.prefix) !== null && _opts$prefix !== void 0 ? _opts$prefix : ''; // https://github.com/fastify/fastify-plugin/blob/fe079bef6557a83794bf437e14b9b9edb8a74104/plugin.js#L11
|
|
73
|
+
// @ts-expect-error property 'default' does not exists on type ...
|
|
74
|
+
|
|
75
|
+
if (typeof fastifyTRPCPlugin.default !== 'function') {
|
|
76
|
+
prefix = ''; // handled by fastify internally
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
fastify.all(`${prefix}/:path`, async (req, res) => {
|
|
80
|
+
const path = req.params.path;
|
|
81
|
+
await fastifyRequestHandler({ ...opts.trpcOptions,
|
|
82
|
+
req,
|
|
83
|
+
res,
|
|
84
|
+
path
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
if (opts.useWSS) {
|
|
89
|
+
var _prefix;
|
|
90
|
+
|
|
91
|
+
applyWSSHandler({ ...opts.trpcOptions,
|
|
92
|
+
wss: fastify.websocketServer
|
|
93
|
+
}); // eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
94
|
+
|
|
95
|
+
fastify.get((_prefix = prefix) !== null && _prefix !== void 0 ? _prefix : '/', {
|
|
96
|
+
websocket: true
|
|
97
|
+
}, () => {});
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
done();
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
export { fastifyRequestHandler, fastifyTRPCPlugin };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AnyRouter } from '../../router';
|
|
2
|
+
import { FetchHandlerOptions } from './types';
|
|
3
|
+
export declare type FetchHandlerRequestOptions<TRouter extends AnyRouter> = {
|
|
4
|
+
req: Request;
|
|
5
|
+
endpoint: string;
|
|
6
|
+
} & FetchHandlerOptions<TRouter>;
|
|
7
|
+
export declare function fetchRequestHandler<TRouter extends AnyRouter>(opts: FetchHandlerRequestOptions<TRouter>): Promise<Response>;
|
|
8
|
+
//# sourceMappingURL=fetchRequestHandler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchRequestHandler.d.ts","sourceRoot":"","sources":["../../../src/adapters/fetch/fetchRequestHandler.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAI9C,oBAAY,0BAA0B,CAAC,OAAO,SAAS,SAAS,IAAI;IAClE,GAAG,EAAE,OAAO,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;AAEjC,wBAAsB,mBAAmB,CAAC,OAAO,SAAS,SAAS,EACjE,IAAI,EAAE,0BAA0B,CAAC,OAAO,CAAC,GACxC,OAAO,CAAC,QAAQ,CAAC,CA6CnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/fetch/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var resolveHTTPResponse = require('../../resolveHTTPResponse-ec3dccaa.js');
|
|
6
|
+
require('../../TRPCError-ddec3395.js');
|
|
7
|
+
require('../../transformTRPCResponse-333bed6c.js');
|
|
8
|
+
require('../../envelopes-a953b930.js');
|
|
9
|
+
|
|
10
|
+
resolveHTTPResponse.assertNotBrowser();
|
|
11
|
+
async function fetchRequestHandler(opts) {
|
|
12
|
+
const createContext = async () => {
|
|
13
|
+
var _opts$createContext;
|
|
14
|
+
|
|
15
|
+
return (_opts$createContext = opts.createContext) === null || _opts$createContext === void 0 ? void 0 : _opts$createContext.call(opts, {
|
|
16
|
+
req: opts.req
|
|
17
|
+
});
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
const url = new URL(opts.req.url);
|
|
21
|
+
const path = url.pathname.slice(opts.endpoint.length + 1);
|
|
22
|
+
const req = {
|
|
23
|
+
query: url.searchParams,
|
|
24
|
+
method: opts.req.method,
|
|
25
|
+
headers: Object.fromEntries(opts.req.headers),
|
|
26
|
+
body: await opts.req.text()
|
|
27
|
+
};
|
|
28
|
+
const result = await resolveHTTPResponse.resolveHTTPResponse({
|
|
29
|
+
req,
|
|
30
|
+
createContext,
|
|
31
|
+
path,
|
|
32
|
+
router: opts.router,
|
|
33
|
+
batching: opts.batching,
|
|
34
|
+
responseMeta: opts.responseMeta,
|
|
35
|
+
|
|
36
|
+
onError(o) {
|
|
37
|
+
var _opts$onError;
|
|
38
|
+
|
|
39
|
+
opts === null || opts === void 0 ? void 0 : (_opts$onError = opts.onError) === null || _opts$onError === void 0 ? void 0 : _opts$onError.call(opts, { ...o,
|
|
40
|
+
req: opts.req
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
});
|
|
45
|
+
const res = new Response(result.body, {
|
|
46
|
+
status: result.status
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
for (const [key, value] of Object.entries((_result$headers = result.headers) !== null && _result$headers !== void 0 ? _result$headers : {})) {
|
|
50
|
+
var _result$headers;
|
|
51
|
+
|
|
52
|
+
if (typeof value === 'undefined') {
|
|
53
|
+
continue;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
if (typeof value === 'string') {
|
|
57
|
+
res.headers.set(key, value);
|
|
58
|
+
continue;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
for (const v of value) {
|
|
62
|
+
res.headers.append(key, v);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
return res;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
exports.fetchRequestHandler = fetchRequestHandler;
|