@trpc/server 10.0.0-alpha.3 → 10.0.0-alpha.32
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/aws-lambda/dist/trpc-server-adapters-aws-lambda.cjs.d.ts +1 -0
- package/adapters/aws-lambda/dist/trpc-server-adapters-aws-lambda.cjs.dev.js +170 -0
- package/adapters/aws-lambda/dist/trpc-server-adapters-aws-lambda.cjs.js +7 -0
- package/adapters/aws-lambda/dist/trpc-server-adapters-aws-lambda.cjs.prod.js +170 -0
- package/adapters/aws-lambda/dist/trpc-server-adapters-aws-lambda.esm.js +166 -0
- package/adapters/aws-lambda/index.d.ts +1 -0
- package/adapters/aws-lambda/index.js +1 -0
- 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/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/lambda/dist/trpc-server-adapters-lambda.cjs.d.ts +1 -0
- package/adapters/lambda/dist/trpc-server-adapters-lambda.cjs.dev.js +25 -0
- package/adapters/lambda/dist/trpc-server-adapters-lambda.cjs.js +7 -0
- package/adapters/lambda/dist/trpc-server-adapters-lambda.cjs.prod.js +25 -0
- package/adapters/lambda/dist/trpc-server-adapters-lambda.esm.js +21 -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/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/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/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/dist/TRPCError-9050a68d.js +69 -0
- package/dist/TRPCError-b7fa0c31.mjs +65 -0
- package/dist/adapters/aws-lambda/index.d.ts +14 -0
- package/dist/adapters/aws-lambda/index.d.ts.map +1 -0
- package/dist/adapters/aws-lambda/utils.d.ts +34 -0
- package/dist/adapters/aws-lambda/utils.d.ts.map +1 -0
- package/dist/adapters/express.d.ts +1 -1
- package/dist/adapters/express.d.ts.map +1 -1
- package/dist/adapters/express.js +8 -7
- package/dist/adapters/express.mjs +8 -7
- 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/{ws → adapters/fastify}/index.ts.js +0 -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/adapters/lambda/index.d.ts +12 -0
- package/dist/adapters/lambda/index.d.ts.map +1 -0
- package/dist/adapters/next.d.ts +2 -2
- package/dist/adapters/next.d.ts.map +1 -1
- package/dist/adapters/next.js +9 -9
- package/dist/adapters/next.mjs +8 -8
- package/dist/adapters/node-http/index.js +5 -4
- package/dist/adapters/node-http/index.mjs +5 -4
- package/dist/adapters/node-http/internals/getPostBody.d.ts +1 -1
- package/dist/adapters/node-http/internals/getPostBody.d.ts.map +1 -1
- package/dist/adapters/node-http/nodeHTTPRequestHandler.d.ts +2 -2
- package/dist/adapters/node-http/nodeHTTPRequestHandler.d.ts.map +1 -1
- package/dist/adapters/node-http/types.d.ts +11 -9
- package/dist/adapters/node-http/types.d.ts.map +1 -1
- package/dist/adapters/standalone.d.ts +2 -2
- package/dist/adapters/standalone.d.ts.map +1 -1
- package/dist/adapters/standalone.js +11 -7
- package/dist/adapters/standalone.mjs +11 -6
- package/dist/adapters/ws.d.ts +8 -6
- package/dist/adapters/ws.d.ts.map +1 -1
- package/dist/adapters/ws.js +123 -90
- package/dist/adapters/ws.mjs +118 -85
- package/dist/assertNotBrowser.d.ts.map +1 -1
- package/dist/core/index.d.ts +5 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/initTRPC.d.ts +87 -0
- package/dist/core/initTRPC.d.ts.map +1 -0
- package/dist/core/internals/__generated__/mergeRoutersGeneric.d.ts +282 -0
- package/dist/core/internals/__generated__/mergeRoutersGeneric.d.ts.map +1 -0
- package/dist/core/internals/config.d.ts +36 -0
- package/dist/core/internals/config.d.ts.map +1 -0
- package/dist/core/internals/getParseFn.d.ts +9 -0
- package/dist/core/internals/getParseFn.d.ts.map +1 -0
- package/dist/core/internals/internalProcedure.d.ts +78 -0
- package/dist/core/internals/internalProcedure.d.ts.map +1 -0
- package/dist/core/internals/mergeRouters.d.ts +3 -0
- package/dist/core/internals/mergeRouters.d.ts.map +1 -0
- package/dist/core/internals/mergeWithoutOverrides.d.ts +5 -0
- package/dist/core/internals/mergeWithoutOverrides.d.ts.map +1 -0
- package/dist/core/internals/omitPrototype.d.ts +6 -0
- package/dist/core/internals/omitPrototype.d.ts.map +1 -0
- package/dist/core/internals/prefixObjectKeys.d.ts +2 -0
- package/dist/core/internals/prefixObjectKeys.d.ts.map +1 -0
- package/dist/core/internals/procedureBuilder.d.ts +103 -0
- package/dist/core/internals/procedureBuilder.d.ts.map +1 -0
- package/dist/core/internals/utils.d.ts +44 -0
- package/dist/core/internals/utils.d.ts.map +1 -0
- package/dist/core/middleware.d.ts +87 -0
- package/dist/core/middleware.d.ts.map +1 -0
- package/dist/core/parser.d.ts +25 -0
- package/dist/core/parser.d.ts.map +1 -0
- package/dist/core/procedure.d.ts +80 -0
- package/dist/core/procedure.d.ts.map +1 -0
- package/dist/core/router.d.ts +114 -0
- package/dist/core/router.d.ts.map +1 -0
- package/dist/core/types.d.ts +17 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/{internals → deprecated/internals}/callProcedure.d.ts +5 -2
- package/dist/deprecated/internals/callProcedure.d.ts.map +1 -0
- package/dist/{internals → deprecated/internals}/middlewares.d.ts +21 -3
- package/dist/deprecated/internals/middlewares.d.ts.map +1 -0
- package/dist/deprecated/internals/procedure.d.ts +96 -0
- package/dist/deprecated/internals/procedure.d.ts.map +1 -0
- package/dist/deprecated/interop.d.ts +34 -0
- package/dist/deprecated/interop.d.ts.map +1 -0
- package/dist/deprecated/router.d.ts +194 -0
- package/dist/deprecated/router.d.ts.map +1 -0
- package/dist/{codes-7a3d4f65.mjs → envelopes-af8c2959.mjs} +30 -1
- package/dist/{codes-7f46544e.js → envelopes-b6dd0367.js} +29 -1
- package/dist/error/TRPCError.d.ts +11 -0
- package/dist/error/TRPCError.d.ts.map +1 -0
- package/dist/error/formatter.d.ts +33 -0
- package/dist/error/formatter.d.ts.map +1 -0
- package/dist/{internals/errors.d.ts → error/utils.d.ts} +3 -2
- package/dist/error/utils.d.ts.map +1 -0
- package/dist/http/index.d.ts +1 -1
- package/dist/http/index.d.ts.map +1 -1
- package/dist/http/internals/getHTTPStatusCode.d.ts +2 -1
- package/dist/http/internals/getHTTPStatusCode.d.ts.map +1 -1
- package/dist/http/internals/types.d.ts +11 -8
- package/dist/http/internals/types.d.ts.map +1 -1
- package/dist/http/resolveHTTPResponse.d.ts +4 -4
- package/dist/http/resolveHTTPResponse.d.ts.map +1 -1
- package/dist/http/{ResponseMeta.d.ts → types.d.ts} +1 -1
- package/dist/http/types.d.ts.map +1 -0
- package/dist/index.d.ts +3 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +800 -105
- package/dist/index.mjs +789 -90
- package/dist/internals/transformTRPCResponse.d.ts +5 -3
- package/dist/internals/transformTRPCResponse.d.ts.map +1 -1
- package/dist/internals/types.d.ts +23 -0
- package/dist/internals/types.d.ts.map +1 -0
- package/dist/nodeHTTPRequestHandler-174459c5.mjs +105 -0
- package/dist/nodeHTTPRequestHandler-6b7c8622.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-10e6d2f9.mjs → resolveHTTPResponse-8657b8de.mjs} +32 -133
- package/dist/{nodeHTTPRequestHandler-d7c307d3.js → resolveHTTPResponse-fcc8f644.js} +37 -139
- package/dist/rpc/codes.d.ts +2 -0
- package/dist/rpc/codes.d.ts.map +1 -1
- package/dist/rpc/envelopes.d.ts +62 -40
- package/dist/rpc/envelopes.d.ts.map +1 -1
- package/dist/rpc/index.js +7 -3
- package/dist/rpc/index.mjs +1 -1
- package/dist/rpc/internals/invert.d.ts +18 -0
- package/dist/rpc/internals/invert.d.ts.map +1 -0
- package/dist/subscription.d.ts +3 -52
- package/dist/subscription.d.ts.map +1 -1
- package/dist/subscription.js +44 -0
- package/dist/subscription.mjs +40 -0
- package/dist/subscription.ts.js +1 -0
- package/dist/transformTRPCResponse-0c261655.js +29 -0
- package/dist/transformTRPCResponse-747b9a68.mjs +27 -0
- package/dist/transformer.d.ts +14 -0
- package/dist/transformer.d.ts.map +1 -1
- package/dist/types.d.ts +25 -8
- package/dist/types.d.ts.map +1 -1
- package/observable/index.d.ts +1 -0
- package/observable/index.js +1 -0
- package/package.json +50 -16
- 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/src/adapters/aws-lambda/index.ts +156 -0
- package/src/adapters/aws-lambda/utils.ts +91 -0
- package/src/adapters/express.ts +4 -4
- 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/lambda/index.ts +18 -0
- package/src/adapters/next.ts +10 -8
- package/src/adapters/node-http/internals/getPostBody.test.ts +2 -1
- package/src/adapters/node-http/internals/getPostBody.ts +1 -1
- package/src/adapters/node-http/nodeHTTPRequestHandler.ts +7 -7
- package/src/adapters/node-http/types.ts +11 -9
- package/src/adapters/standalone.ts +12 -4
- package/src/adapters/ws.ts +135 -91
- package/src/assertNotBrowser.ts +1 -0
- package/src/core/index.ts +5 -0
- package/src/core/initTRPC.ts +95 -0
- package/src/core/internals/__generated__/mergeRoutersGeneric.ts +386 -0
- package/src/core/internals/config.ts +43 -0
- package/src/core/internals/getParseFn.ts +47 -0
- package/src/core/internals/internalProcedure.ts +296 -0
- package/src/core/internals/mergeRouters.ts +45 -0
- package/src/core/internals/mergeWithoutOverrides.ts +19 -0
- package/src/core/internals/omitPrototype.ts +9 -0
- package/src/core/internals/prefixObjectKeys.ts +9 -0
- package/src/core/internals/procedureBuilder.ts +184 -0
- package/src/core/internals/utils.ts +64 -0
- package/src/core/middleware.ts +96 -0
- package/src/core/parser.ts +45 -0
- package/src/core/procedure.ts +108 -0
- package/src/core/router.ts +365 -0
- package/src/core/types.ts +54 -0
- package/src/{internals → deprecated/internals}/callProcedure.ts +9 -3
- package/src/{internals → deprecated/internals}/middlewares.ts +23 -3
- package/src/deprecated/internals/procedure.ts +415 -0
- package/src/deprecated/interop.ts +229 -0
- package/src/{router.ts → deprecated/router.ts} +216 -100
- package/src/{TRPCError.ts → error/TRPCError.ts} +6 -14
- package/src/error/formatter.ts +51 -0
- package/src/{internals/errors.ts → error/utils.ts} +21 -5
- package/src/http/index.ts +1 -1
- package/src/http/internals/getHTTPStatusCode.ts +3 -2
- package/src/http/internals/types.ts +11 -14
- package/src/http/resolveHTTPResponse.ts +28 -37
- package/src/http/{ResponseMeta.ts → types.ts} +0 -0
- package/src/index.ts +3 -7
- package/src/internals/transformTRPCResponse.ts +21 -16
- package/src/internals/types.ts +24 -0
- 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 +78 -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/rpc/codes.ts +2 -1
- package/src/rpc/envelopes.ts +88 -69
- package/src/rpc/internals/invert.ts +27 -0
- package/src/subscription.ts +7 -125
- package/src/transformer.ts +28 -0
- package/src/types.ts +28 -9
- package/dist/TRPCError.d.ts +0 -19
- package/dist/TRPCError.d.ts.map +0 -1
- package/dist/deprecated/LegacyRouter.d.ts +0 -3
- package/dist/deprecated/LegacyRouter.d.ts.map +0 -1
- package/dist/deprecated/createHttpServer.d.ts +0 -19
- package/dist/deprecated/createHttpServer.d.ts.map +0 -1
- package/dist/deprecated/requestHandler.d.ts +0 -15
- package/dist/deprecated/requestHandler.d.ts.map +0 -1
- package/dist/http/ResponseMeta.d.ts.map +0 -1
- package/dist/internals/BaseHandlerOptions.d.ts +0 -13
- package/dist/internals/BaseHandlerOptions.d.ts.map +0 -1
- package/dist/internals/OnErrorFunction.d.ts +0 -11
- package/dist/internals/OnErrorFunction.d.ts.map +0 -1
- package/dist/internals/callProcedure.d.ts.map +0 -1
- package/dist/internals/errors.d.ts.map +0 -1
- package/dist/internals/middlewares.d.ts.map +0 -1
- package/dist/internals/procedure.d.ts +0 -74
- package/dist/internals/procedure.d.ts.map +0 -1
- package/dist/internals/wrapCallSafe.d.ts +0 -16
- package/dist/internals/wrapCallSafe.d.ts.map +0 -1
- package/dist/router.d.ts +0 -176
- package/dist/router.d.ts.map +0 -1
- package/dist/subscription-5b7e1eba.js +0 -136
- package/dist/subscription-e1d42e69.mjs +0 -133
- package/dist/transformTRPCResponse-76e0c91e.mjs +0 -109
- package/dist/transformTRPCResponse-bd24f548.js +0 -114
- package/dist/ws/index.d.ts +0 -7
- package/dist/ws/index.d.ts.map +0 -1
- package/dist/ws/index.js +0 -15
- package/dist/ws/index.mjs +0 -11
- package/src/deprecated/LegacyRouter.ts +0 -3
- package/src/deprecated/createHttpServer.ts +0 -29
- package/src/deprecated/requestHandler.ts +0 -26
- package/src/internals/BaseHandlerOptions.ts +0 -13
- package/src/internals/OnErrorFunction.ts +0 -11
- package/src/internals/procedure.ts +0 -283
- 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/index.d.ts +0 -1
- package/ws/index.js +0 -1
package/src/subscription.ts
CHANGED
|
@@ -1,135 +1,17 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { getErrorFromUnknown } from './error/utils';
|
|
2
|
+
import { Observable, Observer, observable } from './observable';
|
|
3
3
|
|
|
4
|
-
interface SubscriptionEvents<TOutput> {
|
|
5
|
-
data: (data: TOutput) => void;
|
|
6
|
-
destroy: () => void;
|
|
7
|
-
error: (error: Error) => void;
|
|
8
|
-
}
|
|
9
|
-
declare interface SubscriptionEventEmitter<TOutput> {
|
|
10
|
-
on<U extends keyof SubscriptionEvents<TOutput>>(
|
|
11
|
-
event: U,
|
|
12
|
-
listener: SubscriptionEvents<TOutput>[U],
|
|
13
|
-
): this;
|
|
14
|
-
|
|
15
|
-
once<U extends keyof SubscriptionEvents<TOutput>>(
|
|
16
|
-
event: U,
|
|
17
|
-
listener: SubscriptionEvents<TOutput>[U],
|
|
18
|
-
): this;
|
|
19
|
-
|
|
20
|
-
emit<U extends keyof SubscriptionEvents<TOutput>>(
|
|
21
|
-
event: U,
|
|
22
|
-
...args: Parameters<SubscriptionEvents<TOutput>[U]>
|
|
23
|
-
): boolean;
|
|
24
|
-
}
|
|
25
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
26
|
-
class SubscriptionEventEmitter<TOutput> extends EventEmitter {}
|
|
27
|
-
|
|
28
|
-
type UnsubscribeFn = () => void;
|
|
29
|
-
type EmitFn<TOutput> = (data: TOutput) => void;
|
|
30
|
-
|
|
31
|
-
export type SubscriptionEmit<TOutput> = {
|
|
32
|
-
data: EmitFn<TOutput>;
|
|
33
|
-
error: EmitFn<Error>;
|
|
34
|
-
};
|
|
35
|
-
export type SubscriptionCallback<TOutput> = (
|
|
36
|
-
emit: SubscriptionEmit<TOutput>,
|
|
37
|
-
) => UnsubscribeFn | Promise<UnsubscribeFn>;
|
|
38
|
-
|
|
39
|
-
/**
|
|
40
|
-
* @beta
|
|
41
|
-
*/
|
|
42
|
-
export class Subscription<TOutput = unknown> {
|
|
43
|
-
private readonly events: SubscriptionEventEmitter<TOutput>;
|
|
44
|
-
private callback;
|
|
45
|
-
private isDestroyed: boolean;
|
|
46
|
-
|
|
47
|
-
constructor(callback: SubscriptionCallback<TOutput>) {
|
|
48
|
-
this.isDestroyed = false;
|
|
49
|
-
this.events = new SubscriptionEventEmitter<TOutput>();
|
|
50
|
-
this.callback = callback;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
public destroy() {
|
|
54
|
-
if (this.isDestroyed) {
|
|
55
|
-
return;
|
|
56
|
-
}
|
|
57
|
-
// debug('Subscription.destroy()', reason);
|
|
58
|
-
this.isDestroyed = true;
|
|
59
|
-
this.events.emit('destroy');
|
|
60
|
-
this.events.removeAllListeners();
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
public async start() {
|
|
64
|
-
/* istanbul ignore next */
|
|
65
|
-
if (this.isDestroyed) {
|
|
66
|
-
throw new Error('Called start() on a destroyed subscription');
|
|
67
|
-
}
|
|
68
|
-
try {
|
|
69
|
-
const emit: SubscriptionEmit<TOutput> = {
|
|
70
|
-
error: (err) => this.emitError(err),
|
|
71
|
-
data: (data) => this.emitOutput(data),
|
|
72
|
-
};
|
|
73
|
-
const cancel = await this.callback(emit);
|
|
74
|
-
if (
|
|
75
|
-
this.isDestroyed
|
|
76
|
-
/* istanbul ignore next */
|
|
77
|
-
) {
|
|
78
|
-
cancel();
|
|
79
|
-
} else {
|
|
80
|
-
this.events.on('destroy', cancel);
|
|
81
|
-
}
|
|
82
|
-
} catch (
|
|
83
|
-
cause
|
|
84
|
-
/* istanbul ignore next */
|
|
85
|
-
) {
|
|
86
|
-
this.emitError(getErrorFromUnknown(cause));
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
/* istanbul ignore next */
|
|
91
|
-
/**
|
|
92
|
-
* @deprecated This method is just here to help with `inferSubscriptionOutput` which I can't get working without it
|
|
93
|
-
*/
|
|
94
|
-
public output(): TOutput {
|
|
95
|
-
throw new Error('Not in use');
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
/**
|
|
99
|
-
* Emit data
|
|
100
|
-
*/
|
|
101
|
-
emitOutput(data: TOutput) {
|
|
102
|
-
this.events.emit('data', data);
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* Emit error
|
|
106
|
-
*/
|
|
107
|
-
emitError(err: Error) {
|
|
108
|
-
this.events.emit('error', err);
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
on(...args: Parameters<SubscriptionEventEmitter<TOutput>['on']>) {
|
|
112
|
-
return this.events.on(...args);
|
|
113
|
-
}
|
|
114
|
-
off(...args: Parameters<SubscriptionEventEmitter<TOutput>['off']>) {
|
|
115
|
-
return this.events.off(...args);
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
/**
|
|
120
|
-
* @alpha Might be removed
|
|
121
|
-
*/
|
|
122
4
|
export function subscriptionPullFactory<TOutput>(opts: {
|
|
123
5
|
/**
|
|
124
6
|
* The interval of how often the function should run
|
|
125
7
|
*/
|
|
126
8
|
intervalMs: number;
|
|
127
|
-
pull(emit:
|
|
128
|
-
}):
|
|
9
|
+
pull(emit: Observer<TOutput, unknown>): void | Promise<void>;
|
|
10
|
+
}): Observable<TOutput, unknown> {
|
|
129
11
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
130
12
|
let timer: any;
|
|
131
13
|
let stopped = false;
|
|
132
|
-
async function _pull(emit:
|
|
14
|
+
async function _pull(emit: Observer<TOutput, unknown>) {
|
|
133
15
|
/* istanbul ignore next */
|
|
134
16
|
if (stopped) {
|
|
135
17
|
return;
|
|
@@ -146,8 +28,8 @@ export function subscriptionPullFactory<TOutput>(opts: {
|
|
|
146
28
|
}
|
|
147
29
|
}
|
|
148
30
|
|
|
149
|
-
return
|
|
150
|
-
_pull(emit);
|
|
31
|
+
return observable<TOutput>((emit) => {
|
|
32
|
+
_pull(emit).catch((err) => emit.error(getErrorFromUnknown(err)));
|
|
151
33
|
return () => {
|
|
152
34
|
clearTimeout(timer);
|
|
153
35
|
stopped = true;
|
package/src/transformer.ts
CHANGED
|
@@ -35,3 +35,31 @@ export type DataTransformerOptions = DataTransformer | CombinedDataTransformer;
|
|
|
35
35
|
export type ClientDataTransformerOptions =
|
|
36
36
|
| DataTransformer
|
|
37
37
|
| CombinedDataTransformerClient;
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* @internal
|
|
41
|
+
*/
|
|
42
|
+
export function getDataTransformer(
|
|
43
|
+
transformer: DataTransformerOptions,
|
|
44
|
+
): CombinedDataTransformer {
|
|
45
|
+
if ('input' in transformer) {
|
|
46
|
+
return transformer;
|
|
47
|
+
}
|
|
48
|
+
return { input: transformer, output: transformer };
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* @internal
|
|
53
|
+
*/
|
|
54
|
+
export type DefaultDataTransformer = CombinedDataTransformer & {
|
|
55
|
+
_default: true;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* @internal
|
|
60
|
+
*/
|
|
61
|
+
export const defaultTransformer: DefaultDataTransformer = {
|
|
62
|
+
_default: true,
|
|
63
|
+
input: { serialize: (obj) => obj, deserialize: (obj) => obj },
|
|
64
|
+
output: { serialize: (obj) => obj, deserialize: (obj) => obj },
|
|
65
|
+
};
|
package/src/types.ts
CHANGED
|
@@ -8,18 +8,9 @@ export type Prefix<K extends string, T extends string> = `${K}${T}`;
|
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* @internal
|
|
11
|
-
* @deprecated will be removed in next major
|
|
12
11
|
*/
|
|
13
12
|
export type identity<T> = T;
|
|
14
13
|
|
|
15
|
-
/**
|
|
16
|
-
* @internal
|
|
17
|
-
* @deprecated will be removed in next major
|
|
18
|
-
*/
|
|
19
|
-
export type format<T> = {
|
|
20
|
-
[k in keyof T]: T[k];
|
|
21
|
-
};
|
|
22
|
-
|
|
23
14
|
/**
|
|
24
15
|
* @internal
|
|
25
16
|
*/
|
|
@@ -55,3 +46,31 @@ export type ThenArg<T> = T extends PromiseLike<infer U> ? ThenArg<U> : T;
|
|
|
55
46
|
* @public
|
|
56
47
|
*/
|
|
57
48
|
export type Dict<T> = Record<string, T | undefined>;
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* @public
|
|
52
|
+
*/
|
|
53
|
+
export type MaybePromise<T> = T | Promise<T>;
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* @internal
|
|
57
|
+
*
|
|
58
|
+
* Creates a "lower-priority" type inference.
|
|
59
|
+
* https://github.com/microsoft/TypeScript/issues/14829#issuecomment-322267089
|
|
60
|
+
*/
|
|
61
|
+
export type InferLast<T> = T & { [K in keyof T]: T[K] };
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* @public
|
|
65
|
+
*/
|
|
66
|
+
export type inferAsyncReturnType<TFunction extends (...args: any) => any> =
|
|
67
|
+
ThenArg<ReturnType<TFunction>>;
|
|
68
|
+
|
|
69
|
+
type FilterKeys<T extends object, K> = {
|
|
70
|
+
[TKey in keyof T]: T[TKey] extends K ? TKey : never;
|
|
71
|
+
}[keyof T];
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* @internal
|
|
75
|
+
*/
|
|
76
|
+
export type Filter<T extends object, K> = Pick<T, FilterKeys<T, K>>;
|
package/dist/TRPCError.d.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { TRPC_ERROR_CODE_KEY } from './rpc/codes';
|
|
2
|
-
export declare class TRPCError extends Error {
|
|
3
|
-
/**
|
|
4
|
-
* @deprecated use `cause`
|
|
5
|
-
*/
|
|
6
|
-
readonly originalError?: unknown;
|
|
7
|
-
readonly cause?: unknown;
|
|
8
|
-
readonly code: "PARSE_ERROR" | "BAD_REQUEST" | "INTERNAL_SERVER_ERROR" | "UNAUTHORIZED" | "FORBIDDEN" | "NOT_FOUND" | "METHOD_NOT_SUPPORTED" | "TIMEOUT" | "PRECONDITION_FAILED" | "PAYLOAD_TOO_LARGE" | "CLIENT_CLOSED_REQUEST";
|
|
9
|
-
constructor(opts: {
|
|
10
|
-
message?: string;
|
|
11
|
-
code: TRPC_ERROR_CODE_KEY;
|
|
12
|
-
/**
|
|
13
|
-
* @deprecated use `cause`
|
|
14
|
-
*/
|
|
15
|
-
originalError?: unknown;
|
|
16
|
-
cause?: unknown;
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=TRPCError.d.ts.map
|
package/dist/TRPCError.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TRPCError.d.ts","sourceRoot":"","sources":["../src/TRPCError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAGlD,qBAAa,SAAU,SAAQ,KAAK;IAClC;;OAEG;IACH,SAAgB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxC,SAAgB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChC,SAAgB,IAAI,oNAAC;gBAET,IAAI,EAAE;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,mBAAmB,CAAC;QAC1B;;WAEG;QACH,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,KAAK,CAAC,EAAE,OAAO,CAAC;KACjB;CAeF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LegacyRouter.d.ts","sourceRoot":"","sources":["../../src/deprecated/LegacyRouter.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAE1B,OAAO,EAAE,YAAY,IAAI,MAAM,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { createHTTPHandler, CreateHTTPHandlerOptions, createHTTPServer, CreateHTTPContextOptions } from '../adapters/standalone';
|
|
2
|
-
import { AnyRouter } from '../router';
|
|
3
|
-
/**
|
|
4
|
-
* @deprecated use `createHTTPServer` from `@trpc/server/adapters/standalone`
|
|
5
|
-
*/
|
|
6
|
-
export declare const createHttpServer: typeof createHTTPServer;
|
|
7
|
-
/**
|
|
8
|
-
* @deprecated use `createHTTPHandler` from `@trpc/server/adapters/standalone`
|
|
9
|
-
*/
|
|
10
|
-
export declare const createHttpHandler: typeof createHTTPHandler;
|
|
11
|
-
/**
|
|
12
|
-
* @deprecated use `CreateHTTPHandlerOptions` from `@trpc/server/adapters/standalone`
|
|
13
|
-
*/
|
|
14
|
-
export declare type CreateHttpHandlerOptions<TRouter extends AnyRouter> = CreateHTTPHandlerOptions<TRouter>;
|
|
15
|
-
/**
|
|
16
|
-
* @deprecated use `CreateHTTPContextOptions` from `@trpc/server/adapters/standalone`
|
|
17
|
-
*/
|
|
18
|
-
export declare type CreateHttpContextOptions = CreateHTTPContextOptions;
|
|
19
|
-
//# sourceMappingURL=createHttpServer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"createHttpServer.d.ts","sourceRoot":"","sources":["../../src/deprecated/createHttpServer.ts"],"names":[],"mappings":"AACA,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,gBAAgB,EAChB,wBAAwB,EACzB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC;;GAEG;AACH,eAAO,MAAM,gBAAgB,yBAAmB,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,iBAAiB,0BAAoB,CAAC;AAEnD;;GAEG;AACH,oBAAY,wBAAwB,CAAC,OAAO,SAAS,SAAS,IAC5D,wBAAwB,CAAC,OAAO,CAAC,CAAC;AAEpC;;GAEG;AACH,oBAAY,wBAAwB,GAAG,wBAAwB,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { nodeHTTPRequestHandler as requestHandlerInner, NodeHTTPCreateContextFn, NodeHTTPCreateContextFnOptions } from '../adapters/node-http';
|
|
2
|
-
import type { AnyRouter } from '../';
|
|
3
|
-
/**
|
|
4
|
-
* @deprecated use `nodeHTTPRequestHandler` from `@trpc/server/adapters/node-http`
|
|
5
|
-
*/
|
|
6
|
-
export declare const requestHandler: typeof requestHandlerInner;
|
|
7
|
-
/**
|
|
8
|
-
* @deprecated use `NodeHTTPCreateContextFn` from `@trpc/server/adapters/node-http`
|
|
9
|
-
*/
|
|
10
|
-
export declare type CreateContextFn<TRouter extends AnyRouter, TRequest, TResponse> = NodeHTTPCreateContextFn<TRouter, TRequest, TResponse>;
|
|
11
|
-
/**
|
|
12
|
-
* @deprecated use `NodeHTTPCreateContextFnOptions` from `@trpc/server/adapters/node-http`
|
|
13
|
-
*/
|
|
14
|
-
export declare type CreateContextFnOptions<TRequest, TResponse> = NodeHTTPCreateContextFnOptions<TRequest, TResponse>;
|
|
15
|
-
//# sourceMappingURL=requestHandler.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"requestHandler.d.ts","sourceRoot":"","sources":["../../src/deprecated/requestHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,IAAI,mBAAmB,EAC7C,uBAAuB,EACvB,8BAA8B,EAC/B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAErC;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,OAAO,mBAAyC,CAAC;AAE9E;;GAEG;AACH,oBAAY,eAAe,CACzB,OAAO,SAAS,SAAS,EACzB,QAAQ,EACR,SAAS,IACP,uBAAuB,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAE1D;;GAEG;AACH,oBAAY,sBAAsB,CAAC,QAAQ,EAAE,SAAS,IACpD,8BAA8B,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ResponseMeta.d.ts","sourceRoot":"","sources":["../../src/http/ResponseMeta.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { OnErrorFunction } from './OnErrorFunction';
|
|
2
|
-
import { AnyRouter } from '../router';
|
|
3
|
-
/**
|
|
4
|
-
* Base interface for any response handler
|
|
5
|
-
*/
|
|
6
|
-
export interface BaseHandlerOptions<TRouter extends AnyRouter, TRequest> {
|
|
7
|
-
onError?: OnErrorFunction<TRouter, TRequest>;
|
|
8
|
-
batching?: {
|
|
9
|
-
enabled: boolean;
|
|
10
|
-
};
|
|
11
|
-
router: TRouter;
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=BaseHandlerOptions.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BaseHandlerOptions.d.ts","sourceRoot":"","sources":["../../src/internals/BaseHandlerOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC;;GAEG;AACH,MAAM,WAAW,kBAAkB,CAAC,OAAO,SAAS,SAAS,EAAE,QAAQ;IACrE,OAAO,CAAC,EAAE,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7C,QAAQ,CAAC,EAAE;QACT,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;IACF,MAAM,EAAE,OAAO,CAAC;CACjB"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { AnyRouter, inferRouterContext, ProcedureType } from '../router';
|
|
2
|
-
import { TRPCError } from '../TRPCError';
|
|
3
|
-
export declare type OnErrorFunction<TRouter extends AnyRouter, TRequest> = (opts: {
|
|
4
|
-
error: TRPCError;
|
|
5
|
-
type: ProcedureType | 'unknown';
|
|
6
|
-
path: string | undefined;
|
|
7
|
-
req: TRequest;
|
|
8
|
-
input: unknown;
|
|
9
|
-
ctx: undefined | inferRouterContext<TRouter>;
|
|
10
|
-
}) => void;
|
|
11
|
-
//# sourceMappingURL=OnErrorFunction.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OnErrorFunction.d.ts","sourceRoot":"","sources":["../../src/internals/OnErrorFunction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,oBAAY,eAAe,CAAC,OAAO,SAAS,SAAS,EAAE,QAAQ,IAAI,CAAC,IAAI,EAAE;IACxE,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,EAAE,aAAa,GAAG,SAAS,CAAC;IAChC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,GAAG,EAAE,QAAQ,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;CAC9C,KAAK,IAAI,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"callProcedure.d.ts","sourceRoot":"","sources":["../../src/internals/callProcedure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,wBAAsB,aAAa,CACjC,OAAO,SAAS,SAAS,CAAC,QAAQ,CAAC,EACnC,QAAQ,EACR,IAAI,EAAE;IACN,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,GAAG,EAAE,QAAQ,CAAC;IACd,IAAI,EAAE,aAAa,CAAC;CACrB,GAAG,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAgB3C"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/internals/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,OAAO,EACZ,QAAQ,EAAE,MAAM,GACf,MAAM,CASR;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,CAgB7D"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"middlewares.d.ts","sourceRoot":"","sources":["../../src/internals/middlewares.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,eAAO,MAAM,gBAAgB,eAA6B,CAAC;AAC3D,UAAU,oBAAoB,CAAC,QAAQ;IACrC;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,OAAO,gBAAgB,CAAC;IACzC,GAAG,EAAE,QAAQ,CAAC;CACf;AAED,UAAU,kBAAkB,CAAC,QAAQ,CAAE,SAAQ,oBAAoB,CAAC,QAAQ,CAAC;IAC3E,EAAE,EAAE,IAAI,CAAC;IACT,IAAI,EAAE,OAAO,CAAC;CAEf;AACD,UAAU,qBAAqB,CAAC,QAAQ,CACtC,SAAQ,oBAAoB,CAAC,QAAQ,CAAC;IACtC,EAAE,EAAE,KAAK,CAAC;IACV,KAAK,EAAE,SAAS,CAAC;CAElB;AAED,oBAAY,gBAAgB,CAAC,QAAQ,IACjC,kBAAkB,CAAC,QAAQ,CAAC,GAC5B,qBAAqB,CAAC,QAAQ,CAAC,CAAC;AAEpC,oBAAY,kBAAkB,CAAC,aAAa,EAAE,QAAQ,IAAI,CAAC,IAAI,EAAE;IAC/D,GAAG,EAAE,aAAa,CAAC;IACnB,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE;QACJ,IAAI,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC;QAC7C,CAAC,CAAC,EAAE,IAAI,EAAE;YAAE,GAAG,EAAE,CAAC,CAAA;SAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;KACrD,CAAC;CACH,KAAK,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC"}
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
import { ProcedureType } from '../router';
|
|
2
|
-
import { MiddlewareFunction } from './middlewares';
|
|
3
|
-
export declare type ProcedureInputParserZodEsque<TInput, TParsedInput> = {
|
|
4
|
-
_input: TInput;
|
|
5
|
-
_output: TParsedInput;
|
|
6
|
-
};
|
|
7
|
-
export declare type ProcedureInputParserMyZodEsque<TInput> = {
|
|
8
|
-
parse: (input: any) => TInput;
|
|
9
|
-
};
|
|
10
|
-
export declare type ProcedureInputParserSuperstructEsque<TInput> = {
|
|
11
|
-
create: (input: unknown) => TInput;
|
|
12
|
-
};
|
|
13
|
-
export declare type ProcedureInputParserCustomValidatorEsque<TInput> = (input: unknown) => TInput | Promise<TInput>;
|
|
14
|
-
export declare type ProcedureInputParserYupEsque<TInput> = {
|
|
15
|
-
validateSync: (input: unknown) => TInput;
|
|
16
|
-
};
|
|
17
|
-
export declare type ProcedureInputParser<TInput> = ProcedureInputParserYupEsque<TInput> | ProcedureInputParserSuperstructEsque<TInput> | ProcedureInputParserCustomValidatorEsque<TInput> | ProcedureInputParserMyZodEsque<TInput>;
|
|
18
|
-
export declare type ProcedureInputParserWithInputOutput<TInput, TParsedInput> = ProcedureInputParserZodEsque<TInput, TParsedInput>;
|
|
19
|
-
export declare type ProcedureResolver<TContext, TParsedInput, TOutput> = (opts: {
|
|
20
|
-
ctx: TContext;
|
|
21
|
-
input: TParsedInput;
|
|
22
|
-
type: ProcedureType;
|
|
23
|
-
}) => Promise<TOutput> | TOutput;
|
|
24
|
-
interface ProcedureOptions<TContext, TParsedInput, TOutput> {
|
|
25
|
-
middlewares: Array<MiddlewareFunction<any, any>>;
|
|
26
|
-
resolver: ProcedureResolver<TContext, TParsedInput, TOutput>;
|
|
27
|
-
inputParser: ProcedureInputParser<TParsedInput>;
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* @internal
|
|
31
|
-
*/
|
|
32
|
-
export interface ProcedureCallOptions<TContext> {
|
|
33
|
-
ctx: TContext;
|
|
34
|
-
rawInput: unknown;
|
|
35
|
-
path: string;
|
|
36
|
-
type: ProcedureType;
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* @internal
|
|
40
|
-
*/
|
|
41
|
-
export declare class Procedure<TInputContext, TContext, TInput, TParsedInput, TOutput> {
|
|
42
|
-
private middlewares;
|
|
43
|
-
private resolver;
|
|
44
|
-
private readonly inputParser;
|
|
45
|
-
private parse;
|
|
46
|
-
constructor(opts: ProcedureOptions<TContext, TParsedInput, TOutput>);
|
|
47
|
-
private parseInput;
|
|
48
|
-
/**
|
|
49
|
-
* Trigger middlewares in order, parse raw input & call resolver
|
|
50
|
-
* @internal
|
|
51
|
-
*/
|
|
52
|
-
call(opts: ProcedureCallOptions<TInputContext>): Promise<TOutput>;
|
|
53
|
-
/**
|
|
54
|
-
* Create new procedure with passed middlewares
|
|
55
|
-
* @param middlewares
|
|
56
|
-
*/
|
|
57
|
-
inheritMiddlewares(middlewares: MiddlewareFunction<TInputContext, TContext>[]): this;
|
|
58
|
-
}
|
|
59
|
-
export declare type CreateProcedureWithInput<TContext, TInput, TParsedInput, TOutput> = {
|
|
60
|
-
input: ProcedureInputParser<TInput>;
|
|
61
|
-
resolve: ProcedureResolver<TContext, TParsedInput, TOutput>;
|
|
62
|
-
};
|
|
63
|
-
export declare type CreateProcedureWithInputOutputParser<TContext, TInput, TParsedInput, TOutput> = {
|
|
64
|
-
input: ProcedureInputParserWithInputOutput<TInput, TParsedInput>;
|
|
65
|
-
resolve: ProcedureResolver<TContext, TParsedInput, TOutput>;
|
|
66
|
-
};
|
|
67
|
-
export declare type CreateProcedureWithoutInput<TContext, TOutput> = {
|
|
68
|
-
resolve: ProcedureResolver<TContext, undefined, TOutput>;
|
|
69
|
-
};
|
|
70
|
-
export declare type CreateProcedureOptions<TContext, TInput = undefined, TParsedInput = undefined, TOutput = undefined> = CreateProcedureWithInput<TContext, TInput, TParsedInput, TOutput> | CreateProcedureWithInputOutputParser<TContext, TInput, TParsedInput, TOutput> | CreateProcedureWithoutInput<TContext, TOutput>;
|
|
71
|
-
export declare function createProcedure<TContext, TInput, TParsedInput, TOutput>(opts: CreateProcedureOptions<TContext, TInput, TParsedInput, TOutput>): Procedure<unknown, TContext, TInput, TParsedInput, TOutput>;
|
|
72
|
-
export declare type inferProcedureFromOptions<TInputContext, TOptions extends CreateProcedureOptions<any, any, any, any>> = TOptions extends CreateProcedureOptions<infer TContext, infer TInput, infer TParsedInput, infer TOutput> ? Procedure<TInputContext, TContext, unknown extends TInput ? undefined : TInput, unknown extends TParsedInput ? undefined : TParsedInput, TOutput> : never;
|
|
73
|
-
export {};
|
|
74
|
-
//# sourceMappingURL=procedure.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"procedure.d.ts","sourceRoot":"","sources":["../../src/internals/procedure.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
declare type AsyncFn<T> = () => Promise<T> | T;
|
|
2
|
-
/**
|
|
3
|
-
* Wrap a function in a safe wrapper that never throws
|
|
4
|
-
* Returns a discriminated union
|
|
5
|
-
*/
|
|
6
|
-
export declare function wrapCallSafe<T>(fn: AsyncFn<T>): Promise<{
|
|
7
|
-
ok: true;
|
|
8
|
-
data: T;
|
|
9
|
-
error?: undefined;
|
|
10
|
-
} | {
|
|
11
|
-
ok: false;
|
|
12
|
-
error: unknown;
|
|
13
|
-
data?: undefined;
|
|
14
|
-
}>;
|
|
15
|
-
export {};
|
|
16
|
-
//# sourceMappingURL=wrapCallSafe.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"wrapCallSafe.d.ts","sourceRoot":"","sources":["../../src/internals/wrapCallSafe.ts"],"names":[],"mappings":"AAAA,aAAK,OAAO,CAAC,CAAC,IAAI,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AACvC;;;GAGG;AACH,wBAAsB,YAAY,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;;;;;;;;GAanD"}
|
package/dist/router.d.ts
DELETED
|
@@ -1,176 +0,0 @@
|
|
|
1
|
-
import { MiddlewareFunction } from './internals/middlewares';
|
|
2
|
-
import { CreateProcedureWithInput, CreateProcedureWithInputOutputParser, CreateProcedureWithoutInput, inferProcedureFromOptions, Procedure } from './internals/procedure';
|
|
3
|
-
import { TRPCErrorShape, TRPC_ERROR_CODE_KEY, TRPC_ERROR_CODE_NUMBER } from './rpc';
|
|
4
|
-
import { Subscription } from './subscription';
|
|
5
|
-
import { CombinedDataTransformer, DataTransformerOptions } from './transformer';
|
|
6
|
-
import { TRPCError } from './TRPCError';
|
|
7
|
-
import { flatten, Prefixer, ThenArg } 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, TInput = any, TParsedInput = any, TOutput = any> = Record<string, Procedure<TInputContext, TContext, TInput, TParsedInput, TOutput>>;
|
|
16
|
-
/**
|
|
17
|
-
* @public
|
|
18
|
-
*/
|
|
19
|
-
export declare type inferProcedureInput<TProcedure extends Procedure<any, any, any, any, any>> = TProcedure extends Procedure<any, any, infer Input, 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>> = inferAsyncReturnType<TProcedure['call']>;
|
|
28
|
-
/**
|
|
29
|
-
* @public
|
|
30
|
-
* @beta
|
|
31
|
-
*/
|
|
32
|
-
export declare type inferSubscriptionOutput<TRouter extends AnyRouter, TPath extends keyof TRouter['_def']['subscriptions']> = ReturnType<inferAsyncReturnType<TRouter['_def']['subscriptions'][TPath]['call']>['output']>;
|
|
33
|
-
/**
|
|
34
|
-
* @internal
|
|
35
|
-
*/
|
|
36
|
-
export declare type inferHandlerInput<TProcedure extends Procedure<any, any, any, any, any>> = TProcedure extends Procedure<any, any, infer TInput, 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
|
-
* @public
|
|
44
|
-
*/
|
|
45
|
-
export declare type AnyRouter<TContext = any> = Router<any, TContext, any, any, any, any>;
|
|
46
|
-
/**
|
|
47
|
-
* @internal
|
|
48
|
-
*/
|
|
49
|
-
export declare type inferRouterError<TRouter extends AnyRouter> = ReturnType<TRouter['getErrorShape']>;
|
|
50
|
-
/**
|
|
51
|
-
* @internal
|
|
52
|
-
*/
|
|
53
|
-
export declare type ErrorFormatter<TContext, TShape extends TRPCErrorShape<number>> = ({ error, }: {
|
|
54
|
-
error: TRPCError;
|
|
55
|
-
type: ProcedureType | 'unknown';
|
|
56
|
-
path: string | undefined;
|
|
57
|
-
input: unknown;
|
|
58
|
-
ctx: undefined | TContext;
|
|
59
|
-
shape: DefaultErrorShape;
|
|
60
|
-
}) => TShape;
|
|
61
|
-
declare type DefaultErrorData = {
|
|
62
|
-
code: TRPC_ERROR_CODE_KEY;
|
|
63
|
-
httpStatus: number;
|
|
64
|
-
path?: string;
|
|
65
|
-
stack?: string;
|
|
66
|
-
};
|
|
67
|
-
/**
|
|
68
|
-
* @internal
|
|
69
|
-
*/
|
|
70
|
-
export interface DefaultErrorShape extends TRPCErrorShape<TRPC_ERROR_CODE_NUMBER, DefaultErrorData> {
|
|
71
|
-
message: string;
|
|
72
|
-
code: TRPC_ERROR_CODE_NUMBER;
|
|
73
|
-
}
|
|
74
|
-
declare type SwapProcedureContext<TProcedure extends Procedure<any, any, any, any, any>, TNewContext> = TProcedure extends Procedure<infer TInputContext, infer _TOldContext, infer TInput, infer TParsedInput, infer TOutput> ? Procedure<TInputContext, TNewContext, TInput, TParsedInput, TOutput> : never;
|
|
75
|
-
declare type SwapContext<TObj extends ProcedureRecord<any, any, any, any>, TNewContext> = {
|
|
76
|
-
[P in keyof TObj]: SwapProcedureContext<TObj[P], TNewContext>;
|
|
77
|
-
};
|
|
78
|
-
/**
|
|
79
|
-
* @internal The type signature of this class may change without warning.
|
|
80
|
-
*/
|
|
81
|
-
export declare class Router<TInputContext, TContext, TQueries extends ProcedureRecord<TInputContext, TContext>, TMutations extends ProcedureRecord<TInputContext, TContext>, TSubscriptions extends ProcedureRecord<TInputContext, TContext, unknown, Subscription<unknown>>, TErrorShape extends TRPCErrorShape<number>> {
|
|
82
|
-
readonly _def: {
|
|
83
|
-
queries: TQueries;
|
|
84
|
-
mutations: TMutations;
|
|
85
|
-
subscriptions: TSubscriptions;
|
|
86
|
-
middlewares: MiddlewareFunction<TInputContext, TContext>[];
|
|
87
|
-
errorFormatter: ErrorFormatter<TContext, TErrorShape>;
|
|
88
|
-
transformer: CombinedDataTransformer;
|
|
89
|
-
};
|
|
90
|
-
constructor(def?: {
|
|
91
|
-
queries?: TQueries;
|
|
92
|
-
mutations?: TMutations;
|
|
93
|
-
subscriptions?: TSubscriptions;
|
|
94
|
-
middlewares?: MiddlewareFunction<TInputContext, TContext>[];
|
|
95
|
-
errorFormatter?: ErrorFormatter<TContext, TErrorShape>;
|
|
96
|
-
transformer?: CombinedDataTransformer;
|
|
97
|
-
});
|
|
98
|
-
private static prefixProcedures;
|
|
99
|
-
query<TPath extends string, TInput, TParsedInput, TOutput>(path: TPath, procedure: CreateProcedureWithInputOutputParser<TContext, TInput, TParsedInput, TOutput>): Router<TInputContext, TContext, TQueries & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TMutations, TSubscriptions, TErrorShape>;
|
|
100
|
-
query<TPath extends string, TInput, TOutput>(path: TPath, procedure: CreateProcedureWithInput<TContext, TInput, TInput, TOutput>): Router<TInputContext, TContext, TQueries & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TMutations, TSubscriptions, TErrorShape>;
|
|
101
|
-
query<TPath extends string, TOutput>(path: TPath, procedure: CreateProcedureWithoutInput<TContext, TOutput>): Router<TInputContext, TContext, TQueries & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TMutations, TSubscriptions, TErrorShape>;
|
|
102
|
-
mutation<TPath extends string, TInput, TParsedInput, TOutput>(path: TPath, procedure: CreateProcedureWithInputOutputParser<TContext, TInput, TParsedInput, TOutput>): Router<TInputContext, TContext, TQueries, TMutations & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TSubscriptions, TErrorShape>;
|
|
103
|
-
mutation<TPath extends string, TInput, TOutput>(path: TPath, procedure: CreateProcedureWithInput<TContext, TInput, TInput, TOutput>): Router<TInputContext, TContext, TQueries, TMutations & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TSubscriptions, TErrorShape>;
|
|
104
|
-
mutation<TPath extends string, TOutput>(path: TPath, procedure: CreateProcedureWithoutInput<TContext, TOutput>): Router<TInputContext, TContext, TQueries, TMutations & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TSubscriptions, TErrorShape>;
|
|
105
|
-
/**
|
|
106
|
-
* @beta Might change without a major version bump
|
|
107
|
-
*/
|
|
108
|
-
subscription<TPath extends string, TInput, TParsedInput, TOutput extends Subscription<unknown>>(path: TPath, procedure: CreateProcedureWithInputOutputParser<TContext, TInput, TParsedInput, TOutput>): Router<TInputContext, TContext, TQueries, TMutations, TSubscriptions & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TErrorShape>;
|
|
109
|
-
/**
|
|
110
|
-
* @beta Might change without a major version bump
|
|
111
|
-
*/
|
|
112
|
-
subscription<TPath extends string, TInput, TOutput extends Subscription<unknown>>(path: TPath, procedure: CreateProcedureWithInput<TContext, TInput, TInput, TOutput>): Router<TInputContext, TContext, 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, TOutput extends Subscription<unknown>>(path: TPath, procedure: CreateProcedureWithoutInput<TContext, TOutput>): Router<TInputContext, TContext, TQueries, TMutations, TSubscriptions & Record<TPath, inferProcedureFromOptions<TInputContext, typeof procedure>>, TErrorShape>;
|
|
117
|
-
/**
|
|
118
|
-
* Merge router with other router
|
|
119
|
-
* @param router
|
|
120
|
-
*/
|
|
121
|
-
merge<TChildRouter extends Router<TContext, any, any, any, any, any>>(router: TChildRouter): Router<TInputContext, inferRouterContext<TChildRouter>, TQueries & TChildRouter['_def']['queries'], TMutations & TChildRouter['_def']['mutations'], TSubscriptions & TChildRouter['_def']['subscriptions'], TErrorShape>;
|
|
122
|
-
/**
|
|
123
|
-
* Merge router with other router
|
|
124
|
-
* @param prefix Prefix that this router should live under
|
|
125
|
-
* @param router
|
|
126
|
-
*/
|
|
127
|
-
merge<TPath extends string, TChildRouter extends Router<TContext, any, any, any, any, any>>(prefix: TPath, router: TChildRouter): Router<TInputContext, inferRouterContext<TChildRouter>, TQueries & Prefixer<TChildRouter['_def']['queries'], `${TPath}`>, TMutations & Prefixer<TChildRouter['_def']['mutations'], `${TPath}`>, TSubscriptions & Prefixer<TChildRouter['_def']['subscriptions'], `${TPath}`>, TErrorShape>;
|
|
128
|
-
/**
|
|
129
|
-
* Invoke procedure. Only for internal use within library.
|
|
130
|
-
*/
|
|
131
|
-
private call;
|
|
132
|
-
createCaller(ctx: TInputContext): {
|
|
133
|
-
query: inferHandlerFn<TQueries>;
|
|
134
|
-
mutation: inferHandlerFn<TMutations>;
|
|
135
|
-
subscription: inferHandlerFn<TSubscriptions>;
|
|
136
|
-
};
|
|
137
|
-
/**
|
|
138
|
-
* Function to be called before any procedure is invoked
|
|
139
|
-
* @link https://trpc.io/docs/middlewares
|
|
140
|
-
*/
|
|
141
|
-
middleware<TNewContext>(middleware: MiddlewareFunction<TContext, TNewContext>): Router<TInputContext, TNewContext, SwapContext<TQueries, TNewContext>, SwapContext<TMutations, TNewContext>, SwapContext<TSubscriptions, TNewContext>, TErrorShape>;
|
|
142
|
-
/**
|
|
143
|
-
* Format errors
|
|
144
|
-
* @link https://trpc.io/docs/error-formatting
|
|
145
|
-
*/
|
|
146
|
-
formatError<TErrorFormatter extends ErrorFormatter<TContext, TRPCErrorShape<number>>>(errorFormatter: TErrorFormatter): Router<TInputContext, TContext, TQueries, TMutations, TSubscriptions, ReturnType<TErrorFormatter>>;
|
|
147
|
-
getErrorShape(opts: {
|
|
148
|
-
error: TRPCError;
|
|
149
|
-
type: ProcedureType | 'unknown';
|
|
150
|
-
path: string | undefined;
|
|
151
|
-
input: unknown;
|
|
152
|
-
ctx: undefined | TContext;
|
|
153
|
-
}): TErrorShape;
|
|
154
|
-
/**
|
|
155
|
-
* Add data transformer to serialize/deserialize input args + output
|
|
156
|
-
* @link https://trpc.io/docs/data-transformers
|
|
157
|
-
*/
|
|
158
|
-
transformer(_transformer: DataTransformerOptions): Router<TInputContext, TContext, TQueries, TMutations, TSubscriptions, TErrorShape>;
|
|
159
|
-
/**
|
|
160
|
-
* Flattens the generics of TQueries/TMutations/TSubscriptions.
|
|
161
|
-
* ⚠️ Experimental - might disappear. ⚠️
|
|
162
|
-
*
|
|
163
|
-
* @alpha
|
|
164
|
-
*/
|
|
165
|
-
flat(): Router<TInputContext, TContext, flatten<{}, TQueries>, flatten<{}, TMutations>, flatten<{}, TSubscriptions>, TErrorShape>;
|
|
166
|
-
}
|
|
167
|
-
/**
|
|
168
|
-
* Subclass of `VNextRouter` with `TInputContext` and `TContext` set to the same type, for backcompat.
|
|
169
|
-
*
|
|
170
|
-
* @deprecated
|
|
171
|
-
*/
|
|
172
|
-
export declare class LegacyRouter<TContext, TQueries extends ProcedureRecord<TContext, TContext>, TMutations extends ProcedureRecord<TContext, TContext>, TSubscriptions extends ProcedureRecord<TContext, TContext, unknown, Subscription<unknown>>, TErrorShape extends TRPCErrorShape<number>> extends Router<TContext, TContext, TQueries, TMutations, TSubscriptions, TErrorShape> {
|
|
173
|
-
}
|
|
174
|
-
export declare function router<TContext>(): Router<TContext, TContext, {}, {}, {}, DefaultErrorShape>;
|
|
175
|
-
export {};
|
|
176
|
-
//# sourceMappingURL=router.d.ts.map
|