@trpc/server 10.27.3 → 10.28.1
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/dist/{TRPCError-61026c9a.js → TRPCError-7c3909ea.js} +47 -47
- package/dist/adapters/aws-lambda/index.d.ts +9 -9
- package/dist/adapters/aws-lambda/index.d.ts.map +1 -1
- package/dist/adapters/aws-lambda/index.js +4 -4
- package/dist/adapters/aws-lambda/index.mjs +4 -4
- package/dist/adapters/aws-lambda/utils.d.ts +37 -37
- package/dist/adapters/aws-lambda/utils.d.ts.map +1 -1
- package/dist/adapters/express.d.ts +5 -5
- package/dist/adapters/express.d.ts.map +1 -1
- package/dist/adapters/express.js +5 -5
- package/dist/adapters/express.mjs +5 -5
- package/dist/adapters/fastify/fastifyRequestHandler.d.ts +12 -12
- package/dist/adapters/fastify/fastifyRequestHandler.d.ts.map +1 -1
- package/dist/adapters/fastify/fastifyTRPCPlugin.d.ts +11 -11
- package/dist/adapters/fastify/fastifyTRPCPlugin.d.ts.map +1 -1
- package/dist/adapters/fastify/index.d.ts +2 -2
- package/dist/adapters/fastify/index.js +4 -4
- package/dist/adapters/fastify/index.mjs +4 -4
- package/dist/adapters/fetch/fetchRequestHandler.d.ts +7 -7
- package/dist/adapters/fetch/fetchRequestHandler.d.ts.map +1 -1
- package/dist/adapters/fetch/index.d.ts +2 -2
- package/dist/adapters/fetch/index.js +4 -4
- package/dist/adapters/fetch/index.mjs +4 -4
- package/dist/adapters/fetch/types.d.ts +19 -19
- package/dist/adapters/fetch/types.d.ts.map +1 -1
- package/dist/adapters/lambda/index.d.ts +11 -11
- package/dist/adapters/lambda/index.d.ts.map +1 -1
- package/dist/adapters/next.d.ts +5 -5
- package/dist/adapters/next.d.ts.map +1 -1
- package/dist/adapters/next.js +5 -5
- package/dist/adapters/next.mjs +5 -5
- package/dist/adapters/node-http/content-type/form-data/fileUploadHandler.d.ts +69 -69
- package/dist/adapters/node-http/content-type/form-data/fileUploadHandler.d.ts.map +1 -1
- package/dist/adapters/node-http/content-type/form-data/index.d.ts +23 -23
- package/dist/adapters/node-http/content-type/form-data/index.js +1 -3
- package/dist/adapters/node-http/content-type/form-data/index.mjs +1 -3
- package/dist/adapters/node-http/content-type/form-data/memoryUploadHandler.d.ts +30 -30
- package/dist/adapters/node-http/content-type/form-data/memoryUploadHandler.d.ts.map +1 -1
- package/dist/adapters/node-http/content-type/form-data/streamSlice.d.ts +10 -10
- package/dist/adapters/node-http/content-type/form-data/uploadHandler.d.ts +40 -39
- package/dist/adapters/node-http/content-type/form-data/uploadHandler.d.ts.map +1 -1
- package/dist/adapters/node-http/content-type/json/getPostBody.d.ts +6 -6
- package/dist/adapters/node-http/content-type/json/index.d.ts +1 -1
- package/dist/adapters/node-http/index.d.ts +2 -2
- package/dist/adapters/node-http/index.js +5 -5
- package/dist/adapters/node-http/index.mjs +5 -5
- package/dist/adapters/node-http/internals/contentType.d.ts +8 -8
- package/dist/adapters/node-http/nodeHTTPRequestHandler.d.ts +3 -3
- package/dist/adapters/node-http/types.d.ts +63 -63
- package/dist/adapters/node-http/types.d.ts.map +1 -1
- package/dist/adapters/standalone.d.ts +13 -13
- package/dist/adapters/standalone.d.ts.map +1 -1
- package/dist/adapters/standalone.js +5 -5
- package/dist/adapters/standalone.mjs +5 -5
- package/dist/adapters/ws.d.ts +21 -21
- package/dist/adapters/ws.d.ts.map +1 -1
- package/dist/adapters/ws.js +3 -3
- package/dist/adapters/ws.mjs +3 -3
- package/dist/{codes-b3c262d8.js → codes-1c9ad84e.js} +44 -44
- package/dist/{config-91ab0b1d.js → config-54786004.js} +168 -192
- package/dist/{config-d1cf9de0.mjs → config-65c5b6d1.mjs} +5 -28
- package/dist/{config-f355c4d8.js → config-f3ce0144.js} +5 -28
- package/dist/{contentType-f27e4bfc.js → contentType-24c44bba.js} +2 -2
- package/dist/{contentType-a75c990c.js → contentType-7354963c.js} +54 -54
- package/dist/core/index.d.ts +8 -8
- package/dist/core/initTRPC.d.ts +104 -104
- package/dist/core/initTRPC.d.ts.map +1 -1
- package/dist/core/internals/config.d.ts +74 -74
- package/dist/core/internals/config.d.ts.map +1 -1
- package/dist/core/internals/getParseFn.d.ts +8 -8
- package/dist/core/internals/getParseFn.d.ts.map +1 -1
- package/dist/core/internals/mergeRouters.d.ts +17 -17
- package/dist/core/internals/mergeRouters.d.ts.map +1 -1
- package/dist/core/internals/mergeWithoutOverrides.d.ts +4 -4
- package/dist/core/internals/omitPrototype.d.ts +5 -5
- package/dist/core/internals/procedureBuilder.d.ts +115 -115
- package/dist/core/internals/procedureBuilder.d.ts.map +1 -1
- package/dist/core/internals/utils.d.ts +51 -51
- package/dist/core/internals/utils.d.ts.map +1 -1
- package/dist/core/middleware.d.ts +127 -127
- package/dist/core/middleware.d.ts.map +1 -1
- package/dist/core/parser.d.ts +27 -27
- package/dist/core/parser.d.ts.map +1 -1
- package/dist/core/procedure.d.ts +72 -72
- package/dist/core/procedure.d.ts.map +1 -1
- package/dist/core/router.d.ts +111 -111
- package/dist/core/router.d.ts.map +1 -1
- package/dist/core/types.d.ts +28 -28
- package/dist/core/types.d.ts.map +1 -1
- package/dist/deprecated/internals/middlewares.d.ts +51 -51
- package/dist/deprecated/internals/middlewares.d.ts.map +1 -1
- package/dist/deprecated/internals/procedure.d.ts +95 -95
- package/dist/deprecated/internals/procedure.d.ts.map +1 -1
- package/dist/deprecated/interop.d.ts +43 -43
- package/dist/deprecated/interop.d.ts.map +1 -1
- package/dist/deprecated/router.d.ts +203 -203
- package/dist/deprecated/router.d.ts.map +1 -1
- package/dist/error/TRPCError.d.ts +11 -11
- package/dist/error/formatter.d.ts +32 -32
- package/dist/error/formatter.d.ts.map +1 -1
- package/dist/error/utils.d.ts +5 -5
- package/dist/http/contentType.d.ts +28 -28
- package/dist/http/contentType.d.ts.map +1 -1
- package/dist/http/getHTTPStatusCode.d.ts +23 -23
- package/dist/http/getHTTPStatusCode.d.ts.map +1 -1
- package/dist/http/index.d.ts +3 -3
- package/dist/http/index.js +4 -4
- package/dist/http/index.mjs +4 -4
- package/dist/http/internals/types.d.ts +24 -24
- package/dist/http/internals/types.d.ts.map +1 -1
- package/dist/http/resolveHTTPResponse.d.ts +16 -16
- package/dist/http/types.d.ts +24 -24
- package/dist/{index-315a9f08.mjs → index-044a193b.mjs} +3 -2
- package/dist/{index-8e243a74.js → index-4a823936.js} +3 -2
- package/dist/{index-cddfa242.js → index-ca9a128e.js} +88 -87
- package/dist/index.d.ts +6 -6
- package/dist/index.js +2 -2
- package/dist/index.mjs +3 -3
- package/dist/internals/invert.d.ts +11 -11
- package/dist/internals/invert.d.ts.map +1 -1
- package/dist/internals/types.d.ts +25 -25
- package/dist/internals/types.d.ts.map +1 -1
- package/dist/internals.d.ts +9 -9
- package/dist/{nodeHTTPRequestHandler-8a261b10.mjs → nodeHTTPRequestHandler-0f979796.mjs} +1 -1
- package/dist/{nodeHTTPRequestHandler-7762c7d4.js → nodeHTTPRequestHandler-5bbf93f1.js} +1 -1
- package/dist/{nodeHTTPRequestHandler-fc509b47.js → nodeHTTPRequestHandler-bd47641d.js} +62 -62
- package/dist/observable/index.d.ts +4 -4
- package/dist/observable/internals/identity.d.ts +1 -1
- package/dist/observable/internals/observableToPromise.d.ts +9 -9
- package/dist/observable/internals/pipe.d.ts +3 -3
- package/dist/observable/observable.d.ts +4 -4
- package/dist/observable/observable.d.ts.map +1 -1
- package/dist/observable/operators/index.d.ts +3 -3
- package/dist/observable/operators/map.d.ts +2 -2
- package/dist/observable/operators/share.d.ts +5 -5
- package/dist/observable/operators/tap.d.ts +2 -2
- package/dist/observable/types.d.ts +28 -28
- package/dist/observable/types.d.ts.map +1 -1
- package/dist/{observable-a1c2103f.js → observable-15588f28.js} +76 -76
- package/dist/{resolveHTTPResponse-36f4e729.mjs → resolveHTTPResponse-4e576698.mjs} +3 -3
- package/dist/{resolveHTTPResponse-27fe1108.js → resolveHTTPResponse-9523b4e3.js} +3 -3
- package/dist/{resolveHTTPResponse-5f8945d7.js → resolveHTTPResponse-ba557d3e.js} +162 -162
- package/dist/rpc/codes.d.ts +52 -52
- package/dist/rpc/codes.d.ts.map +1 -1
- package/dist/rpc/envelopes.d.ts +98 -98
- package/dist/rpc/envelopes.d.ts.map +1 -1
- package/dist/rpc/index.d.ts +2 -2
- package/dist/shared/createProxy/index.d.ts +18 -18
- package/dist/shared/createProxy/index.d.ts.map +1 -1
- package/dist/shared/getErrorShape.d.ts +14 -14
- package/dist/shared/index.d.ts +5 -5
- package/dist/shared/index.js +2 -2
- package/dist/shared/index.mjs +2 -2
- package/dist/shared/internal/serialize.d.ts +29 -29
- package/dist/shared/internal/serialize.d.ts.map +1 -1
- package/dist/shared/jsonify.d.ts +9 -9
- package/dist/shared/jsonify.d.ts.map +1 -1
- package/dist/shared/transformTRPCResponse.d.ts +8 -8
- package/dist/shared/transformTRPCResponse.d.ts.map +1 -1
- package/dist/subscription.d.ts +12 -12
- package/dist/{transformTRPCResponse-6887ae6d.mjs → transformTRPCResponse-3dca0b20.mjs} +1 -1
- package/dist/{transformTRPCResponse-f7b2ffd1.js → transformTRPCResponse-48d70ef6.js} +1 -1
- package/dist/{transformTRPCResponse-8cb7e890.js → transformTRPCResponse-7fcbe472.js} +48 -48
- package/dist/transformer.d.ts +73 -73
- package/dist/transformer.d.ts.map +1 -1
- package/dist/types.d.ts +77 -77
- package/dist/types.d.ts.map +1 -1
- package/package.json +10 -6
- package/src/adapters/node-http/content-type/form-data/fileUploadHandler.ts +3 -3
- package/src/adapters/node-http/content-type/form-data/uploadHandler.ts +3 -1
- package/src/core/router.ts +6 -41
- package/src/shared/createProxy/index.ts +3 -2
- package/src/adapters/node-http/content-type/json/getPostBody.test.ts +0 -49
- package/src/observable/observable.test.ts +0 -100
- package/src/observable/operators/map.test.ts +0 -91
- package/src/observable/operators/share.test.ts +0 -60
|
@@ -1,116 +1,116 @@
|
|
|
1
|
-
import { MaybePromise, Simplify } from '../../types';
|
|
2
|
-
import { MiddlewareBuilder, MiddlewareFunction } from '../middleware';
|
|
3
|
-
import { Parser, inferParser } from '../parser';
|
|
4
|
-
import { Procedure, ProcedureParams } from '../procedure';
|
|
5
|
-
import { ProcedureType } from '../types';
|
|
6
|
-
import { AnyRootConfig } from './config';
|
|
7
|
-
import { DefaultValue as FallbackValue, Overwrite, OverwriteKnown, ResolveOptions, UnsetMarker } from './utils';
|
|
8
|
-
|
|
9
|
-
_config: TPrev['_config'];
|
|
10
|
-
_meta: TPrev['_meta'];
|
|
11
|
-
_ctx_out: Overwrite<TPrev['_ctx_out'], TNext['_ctx_out']>;
|
|
12
|
-
_input_in: FallbackValue<TNext['_input_in'], TPrev['_input_in']>;
|
|
13
|
-
_input_out: FallbackValue<TNext['_input_out'], TPrev['_input_out']>;
|
|
14
|
-
_output_in: FallbackValue<TNext['_output_in'], TPrev['_output_in']>;
|
|
15
|
-
_output_out: FallbackValue<TNext['_output_out'], TPrev['_output_out']>;
|
|
16
|
-
}>;
|
|
17
|
-
/**
|
|
18
|
-
* @internal
|
|
19
|
-
*/
|
|
20
|
-
export interface BuildProcedure<TType extends ProcedureType, TParams extends ProcedureParams, TOutput> extends Procedure<TType, UnsetMarker extends TParams['_output_out'] ? OverwriteKnown<TParams, {
|
|
21
|
-
_output_in: TOutput;
|
|
22
|
-
_output_out: TOutput;
|
|
23
|
-
}> : TParams> {
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
export
|
|
28
|
-
inputs: Parser[];
|
|
29
|
-
output?: Parser;
|
|
30
|
-
meta?: TParams['_meta'];
|
|
31
|
-
resolver?: ProcedureBuilderResolver;
|
|
32
|
-
middlewares: ProcedureBuilderMiddleware[];
|
|
33
|
-
mutation?: boolean;
|
|
34
|
-
query?: boolean;
|
|
35
|
-
subscription?: boolean;
|
|
36
|
-
};
|
|
37
|
-
export
|
|
38
|
-
export interface ProcedureBuilder<TParams extends ProcedureParams> {
|
|
39
|
-
/**
|
|
40
|
-
* Add an input parser to the procedure.
|
|
41
|
-
*/
|
|
42
|
-
input<$Parser extends Parser>(schema: TParams['_input_out'] extends UnsetMarker ? $Parser : inferParser<$Parser>['out'] extends Record<string, unknown> | undefined ? TParams['_input_out'] extends Record<string, unknown> | undefined ? undefined extends inferParser<$Parser>['out'] ? undefined extends TParams['_input_out'] ? $Parser : ErrorMessage<'Cannot chain an optional parser to a required parser'> : $Parser : ErrorMessage<'All input parsers did not resolve to an object'> : ErrorMessage<'All input parsers did not resolve to an object'>): ProcedureBuilder<{
|
|
43
|
-
_config: TParams['_config'];
|
|
44
|
-
_meta: TParams['_meta'];
|
|
45
|
-
_ctx_out: TParams['_ctx_out'];
|
|
46
|
-
_input_in: OverwriteIfDefined<TParams['_input_in'], inferParser<$Parser>['in']>;
|
|
47
|
-
_input_out: OverwriteIfDefined<TParams['_input_out'], inferParser<$Parser>['out']>;
|
|
48
|
-
_output_in: TParams['_output_in'];
|
|
49
|
-
_output_out: TParams['_output_out'];
|
|
50
|
-
}>;
|
|
51
|
-
/**
|
|
52
|
-
* Add an output parser to the procedure.
|
|
53
|
-
*/
|
|
54
|
-
output<$Parser extends Parser>(schema: $Parser): ProcedureBuilder<{
|
|
55
|
-
_config: TParams['_config'];
|
|
56
|
-
_meta: TParams['_meta'];
|
|
57
|
-
_ctx_out: TParams['_ctx_out'];
|
|
58
|
-
_input_in: TParams['_input_in'];
|
|
59
|
-
_input_out: TParams['_input_out'];
|
|
60
|
-
_output_in: inferParser<$Parser>['in'];
|
|
61
|
-
_output_out: inferParser<$Parser>['out'];
|
|
62
|
-
}>;
|
|
63
|
-
/**
|
|
64
|
-
* Add a meta data to the procedure.
|
|
65
|
-
*/
|
|
66
|
-
meta(meta: TParams['_meta']): ProcedureBuilder<TParams>;
|
|
67
|
-
/**
|
|
68
|
-
* Add a middleware to the procedure.
|
|
69
|
-
*/
|
|
70
|
-
use<$Params extends ProcedureParams>(fn: MiddlewareBuilder<TParams, $Params> | MiddlewareFunction<TParams, $Params>): CreateProcedureReturnInput<TParams, $Params>;
|
|
71
|
-
/**
|
|
72
|
-
* Extend the procedure with another procedure.
|
|
73
|
-
* @warning The TypeScript inference fails when chaining concatenated procedures.
|
|
74
|
-
*/
|
|
75
|
-
unstable_concat<$ProcedureBuilder extends AnyProcedureBuilder>(proc: $ProcedureBuilder): $ProcedureBuilder extends ProcedureBuilder<infer $TParams> ? CreateProcedureReturnInput<TParams, $TParams> : never;
|
|
76
|
-
/**
|
|
77
|
-
* Query procedure
|
|
78
|
-
*/
|
|
79
|
-
query<$Output>(resolver: (opts: ResolveOptions<TParams>) => MaybePromise<FallbackValue<TParams['_output_in'], $Output>>): BuildProcedure<'query', TParams, $Output>;
|
|
80
|
-
/**
|
|
81
|
-
* Mutation procedure
|
|
82
|
-
*/
|
|
83
|
-
mutation<$Output>(resolver: (opts: ResolveOptions<TParams>) => MaybePromise<FallbackValue<TParams['_output_in'], $Output>>): BuildProcedure<'mutation', TParams, $Output>;
|
|
84
|
-
/**
|
|
85
|
-
* Mutation procedure
|
|
86
|
-
*/
|
|
87
|
-
subscription<$Output>(resolver: (opts: ResolveOptions<TParams>) => MaybePromise<FallbackValue<TParams['_output_in'], $Output>>): BuildProcedure<'subscription', TParams, $Output>;
|
|
88
|
-
/**
|
|
89
|
-
* @internal
|
|
90
|
-
*/
|
|
91
|
-
_def: ProcedureBuilderDef<TParams>;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
export
|
|
95
|
-
export
|
|
96
|
-
export declare function createBuilder<TConfig extends AnyRootConfig>(initDef?: Partial<AnyProcedureBuilderDef>): ProcedureBuilder<{
|
|
97
|
-
_config: TConfig;
|
|
98
|
-
_ctx_out: TConfig['$types']['ctx'];
|
|
99
|
-
_input_in: UnsetMarker;
|
|
100
|
-
_input_out: UnsetMarker;
|
|
101
|
-
_output_in: UnsetMarker;
|
|
102
|
-
_output_out: UnsetMarker;
|
|
103
|
-
_meta: TConfig['$types']['meta'];
|
|
104
|
-
}>;
|
|
105
|
-
/**
|
|
106
|
-
* @internal
|
|
107
|
-
*/
|
|
108
|
-
export interface ProcedureCallOptions {
|
|
109
|
-
ctx: unknown;
|
|
110
|
-
rawInput: unknown;
|
|
111
|
-
input?: unknown;
|
|
112
|
-
path: string;
|
|
113
|
-
type: ProcedureType;
|
|
114
|
-
}
|
|
115
|
-
export {};
|
|
1
|
+
import { MaybePromise, Simplify } from '../../types';
|
|
2
|
+
import { MiddlewareBuilder, MiddlewareFunction } from '../middleware';
|
|
3
|
+
import { Parser, inferParser } from '../parser';
|
|
4
|
+
import { Procedure, ProcedureParams } from '../procedure';
|
|
5
|
+
import { ProcedureType } from '../types';
|
|
6
|
+
import { AnyRootConfig } from './config';
|
|
7
|
+
import { DefaultValue as FallbackValue, Overwrite, OverwriteKnown, ResolveOptions, UnsetMarker } from './utils';
|
|
8
|
+
type CreateProcedureReturnInput<TPrev extends ProcedureParams, TNext extends ProcedureParams> = ProcedureBuilder<{
|
|
9
|
+
_config: TPrev['_config'];
|
|
10
|
+
_meta: TPrev['_meta'];
|
|
11
|
+
_ctx_out: Overwrite<TPrev['_ctx_out'], TNext['_ctx_out']>;
|
|
12
|
+
_input_in: FallbackValue<TNext['_input_in'], TPrev['_input_in']>;
|
|
13
|
+
_input_out: FallbackValue<TNext['_input_out'], TPrev['_input_out']>;
|
|
14
|
+
_output_in: FallbackValue<TNext['_output_in'], TPrev['_output_in']>;
|
|
15
|
+
_output_out: FallbackValue<TNext['_output_out'], TPrev['_output_out']>;
|
|
16
|
+
}>;
|
|
17
|
+
/**
|
|
18
|
+
* @internal
|
|
19
|
+
*/
|
|
20
|
+
export interface BuildProcedure<TType extends ProcedureType, TParams extends ProcedureParams, TOutput> extends Procedure<TType, UnsetMarker extends TParams['_output_out'] ? OverwriteKnown<TParams, {
|
|
21
|
+
_output_in: TOutput;
|
|
22
|
+
_output_out: TOutput;
|
|
23
|
+
}> : TParams> {
|
|
24
|
+
}
|
|
25
|
+
type OverwriteIfDefined<TType, TWith> = UnsetMarker extends TType ? TWith : Simplify<TType & TWith>;
|
|
26
|
+
type ErrorMessage<TMessage extends string> = TMessage;
|
|
27
|
+
export type ProcedureBuilderDef<TParams extends ProcedureParams> = {
|
|
28
|
+
inputs: Parser[];
|
|
29
|
+
output?: Parser;
|
|
30
|
+
meta?: TParams['_meta'];
|
|
31
|
+
resolver?: ProcedureBuilderResolver;
|
|
32
|
+
middlewares: ProcedureBuilderMiddleware[];
|
|
33
|
+
mutation?: boolean;
|
|
34
|
+
query?: boolean;
|
|
35
|
+
subscription?: boolean;
|
|
36
|
+
};
|
|
37
|
+
export type AnyProcedureBuilderDef = ProcedureBuilderDef<any>;
|
|
38
|
+
export interface ProcedureBuilder<TParams extends ProcedureParams> {
|
|
39
|
+
/**
|
|
40
|
+
* Add an input parser to the procedure.
|
|
41
|
+
*/
|
|
42
|
+
input<$Parser extends Parser>(schema: TParams['_input_out'] extends UnsetMarker ? $Parser : inferParser<$Parser>['out'] extends Record<string, unknown> | undefined ? TParams['_input_out'] extends Record<string, unknown> | undefined ? undefined extends inferParser<$Parser>['out'] ? undefined extends TParams['_input_out'] ? $Parser : ErrorMessage<'Cannot chain an optional parser to a required parser'> : $Parser : ErrorMessage<'All input parsers did not resolve to an object'> : ErrorMessage<'All input parsers did not resolve to an object'>): ProcedureBuilder<{
|
|
43
|
+
_config: TParams['_config'];
|
|
44
|
+
_meta: TParams['_meta'];
|
|
45
|
+
_ctx_out: TParams['_ctx_out'];
|
|
46
|
+
_input_in: OverwriteIfDefined<TParams['_input_in'], inferParser<$Parser>['in']>;
|
|
47
|
+
_input_out: OverwriteIfDefined<TParams['_input_out'], inferParser<$Parser>['out']>;
|
|
48
|
+
_output_in: TParams['_output_in'];
|
|
49
|
+
_output_out: TParams['_output_out'];
|
|
50
|
+
}>;
|
|
51
|
+
/**
|
|
52
|
+
* Add an output parser to the procedure.
|
|
53
|
+
*/
|
|
54
|
+
output<$Parser extends Parser>(schema: $Parser): ProcedureBuilder<{
|
|
55
|
+
_config: TParams['_config'];
|
|
56
|
+
_meta: TParams['_meta'];
|
|
57
|
+
_ctx_out: TParams['_ctx_out'];
|
|
58
|
+
_input_in: TParams['_input_in'];
|
|
59
|
+
_input_out: TParams['_input_out'];
|
|
60
|
+
_output_in: inferParser<$Parser>['in'];
|
|
61
|
+
_output_out: inferParser<$Parser>['out'];
|
|
62
|
+
}>;
|
|
63
|
+
/**
|
|
64
|
+
* Add a meta data to the procedure.
|
|
65
|
+
*/
|
|
66
|
+
meta(meta: TParams['_meta']): ProcedureBuilder<TParams>;
|
|
67
|
+
/**
|
|
68
|
+
* Add a middleware to the procedure.
|
|
69
|
+
*/
|
|
70
|
+
use<$Params extends ProcedureParams>(fn: MiddlewareBuilder<TParams, $Params> | MiddlewareFunction<TParams, $Params>): CreateProcedureReturnInput<TParams, $Params>;
|
|
71
|
+
/**
|
|
72
|
+
* Extend the procedure with another procedure.
|
|
73
|
+
* @warning The TypeScript inference fails when chaining concatenated procedures.
|
|
74
|
+
*/
|
|
75
|
+
unstable_concat<$ProcedureBuilder extends AnyProcedureBuilder>(proc: $ProcedureBuilder): $ProcedureBuilder extends ProcedureBuilder<infer $TParams> ? CreateProcedureReturnInput<TParams, $TParams> : never;
|
|
76
|
+
/**
|
|
77
|
+
* Query procedure
|
|
78
|
+
*/
|
|
79
|
+
query<$Output>(resolver: (opts: ResolveOptions<TParams>) => MaybePromise<FallbackValue<TParams['_output_in'], $Output>>): BuildProcedure<'query', TParams, $Output>;
|
|
80
|
+
/**
|
|
81
|
+
* Mutation procedure
|
|
82
|
+
*/
|
|
83
|
+
mutation<$Output>(resolver: (opts: ResolveOptions<TParams>) => MaybePromise<FallbackValue<TParams['_output_in'], $Output>>): BuildProcedure<'mutation', TParams, $Output>;
|
|
84
|
+
/**
|
|
85
|
+
* Mutation procedure
|
|
86
|
+
*/
|
|
87
|
+
subscription<$Output>(resolver: (opts: ResolveOptions<TParams>) => MaybePromise<FallbackValue<TParams['_output_in'], $Output>>): BuildProcedure<'subscription', TParams, $Output>;
|
|
88
|
+
/**
|
|
89
|
+
* @internal
|
|
90
|
+
*/
|
|
91
|
+
_def: ProcedureBuilderDef<TParams>;
|
|
92
|
+
}
|
|
93
|
+
type AnyProcedureBuilder = ProcedureBuilder<any>;
|
|
94
|
+
export type ProcedureBuilderMiddleware = MiddlewareFunction<any, any>;
|
|
95
|
+
export type ProcedureBuilderResolver = (opts: ResolveOptions<any>) => Promise<unknown>;
|
|
96
|
+
export declare function createBuilder<TConfig extends AnyRootConfig>(initDef?: Partial<AnyProcedureBuilderDef>): ProcedureBuilder<{
|
|
97
|
+
_config: TConfig;
|
|
98
|
+
_ctx_out: TConfig['$types']['ctx'];
|
|
99
|
+
_input_in: UnsetMarker;
|
|
100
|
+
_input_out: UnsetMarker;
|
|
101
|
+
_output_in: UnsetMarker;
|
|
102
|
+
_output_out: UnsetMarker;
|
|
103
|
+
_meta: TConfig['$types']['meta'];
|
|
104
|
+
}>;
|
|
105
|
+
/**
|
|
106
|
+
* @internal
|
|
107
|
+
*/
|
|
108
|
+
export interface ProcedureCallOptions {
|
|
109
|
+
ctx: unknown;
|
|
110
|
+
rawInput: unknown;
|
|
111
|
+
input?: unknown;
|
|
112
|
+
path: string;
|
|
113
|
+
type: ProcedureType;
|
|
114
|
+
}
|
|
115
|
+
export {};
|
|
116
116
|
//# sourceMappingURL=procedureBuilder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"procedureBuilder.d.ts","sourceRoot":"","sources":["../../../src/core/internals/procedureBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAInB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAKL,SAAS,EACT,eAAe,EAChB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,OAAO,EACL,YAAY,IAAI,aAAa,EAC7B,SAAS,EACT,cAAc,EACd,cAAc,EACd,WAAW,EAEZ,MAAM,SAAS,CAAC;AAEjB,
|
|
1
|
+
{"version":3,"file":"procedureBuilder.d.ts","sourceRoot":"","sources":["../../../src/core/internals/procedureBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
import { Simplify } from '../../types';
|
|
2
|
-
import { ProcedureParams } from '../procedure';
|
|
3
|
-
/**
|
|
4
|
-
* @internal
|
|
5
|
-
*/
|
|
6
|
-
export
|
|
7
|
-
[K in keyof TType | keyof TWith]: K extends keyof TWith ? TWith[K] : K extends keyof TType ? TType[K] : never;
|
|
8
|
-
} : never : never;
|
|
9
|
-
/**
|
|
10
|
-
* @internal
|
|
11
|
-
*/
|
|
12
|
-
export
|
|
13
|
-
[K in keyof TType]: K extends keyof TWith ? TWith[K] : TType[K];
|
|
14
|
-
};
|
|
15
|
-
/**
|
|
16
|
-
* @internal
|
|
17
|
-
*/
|
|
18
|
-
export
|
|
19
|
-
/**
|
|
20
|
-
* @internal
|
|
21
|
-
*/
|
|
22
|
-
export declare const middlewareMarker: "middlewareMarker" & {
|
|
23
|
-
__brand: 'middlewareMarker';
|
|
24
|
-
};
|
|
25
|
-
/**
|
|
26
|
-
* @internal
|
|
27
|
-
*/
|
|
28
|
-
export
|
|
29
|
-
/**
|
|
30
|
-
* @internal
|
|
31
|
-
*/
|
|
32
|
-
export declare const unsetMarker: unique symbol;
|
|
33
|
-
/**
|
|
34
|
-
* @internal
|
|
35
|
-
*/
|
|
36
|
-
export
|
|
37
|
-
/**
|
|
38
|
-
* @internal
|
|
39
|
-
*/
|
|
40
|
-
export interface ResolveOptions<TParams extends ProcedureParams> {
|
|
41
|
-
ctx: Simplify<TParams['_ctx_out']>;
|
|
42
|
-
input: TParams['_input_out'] extends UnsetMarker ? undefined : TParams['_input_out'];
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* @internal
|
|
46
|
-
*/
|
|
47
|
-
export
|
|
48
|
-
/**
|
|
49
|
-
* @internal
|
|
50
|
-
*/
|
|
51
|
-
export
|
|
1
|
+
import { Simplify } from '../../types';
|
|
2
|
+
import { ProcedureParams } from '../procedure';
|
|
3
|
+
/**
|
|
4
|
+
* @internal
|
|
5
|
+
*/
|
|
6
|
+
export type Overwrite<TType, TWith> = TType extends any ? TWith extends any ? {
|
|
7
|
+
[K in keyof TType | keyof TWith]: K extends keyof TWith ? TWith[K] : K extends keyof TType ? TType[K] : never;
|
|
8
|
+
} : never : never;
|
|
9
|
+
/**
|
|
10
|
+
* @internal
|
|
11
|
+
*/
|
|
12
|
+
export type OverwriteKnown<TType, TWith> = {
|
|
13
|
+
[K in keyof TType]: K extends keyof TWith ? TWith[K] : TType[K];
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* @internal
|
|
17
|
+
*/
|
|
18
|
+
export type DefaultValue<TValue, TFallback> = UnsetMarker extends TValue ? TFallback : TValue;
|
|
19
|
+
/**
|
|
20
|
+
* @internal
|
|
21
|
+
*/
|
|
22
|
+
export declare const middlewareMarker: "middlewareMarker" & {
|
|
23
|
+
__brand: 'middlewareMarker';
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* @internal
|
|
27
|
+
*/
|
|
28
|
+
export type MiddlewareMarker = typeof middlewareMarker;
|
|
29
|
+
/**
|
|
30
|
+
* @internal
|
|
31
|
+
*/
|
|
32
|
+
export declare const unsetMarker: unique symbol;
|
|
33
|
+
/**
|
|
34
|
+
* @internal
|
|
35
|
+
*/
|
|
36
|
+
export type UnsetMarker = typeof unsetMarker;
|
|
37
|
+
/**
|
|
38
|
+
* @internal
|
|
39
|
+
*/
|
|
40
|
+
export interface ResolveOptions<TParams extends ProcedureParams> {
|
|
41
|
+
ctx: Simplify<TParams['_ctx_out']>;
|
|
42
|
+
input: TParams['_input_out'] extends UnsetMarker ? undefined : TParams['_input_out'];
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* @internal
|
|
46
|
+
*/
|
|
47
|
+
export type ValidateShape<TActualShape, TExpectedShape> = TActualShape extends TExpectedShape ? Exclude<keyof TActualShape, keyof TExpectedShape> extends never ? TActualShape : TExpectedShape : never;
|
|
48
|
+
/**
|
|
49
|
+
* @internal
|
|
50
|
+
*/
|
|
51
|
+
export type PickFirstDefined<TType, TPick> = undefined extends TType ? undefined extends TPick ? never : TPick : TType;
|
|
52
52
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/core/internals/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C;;GAEG;AACH,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/core/internals/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C;;GAEG;AACH,MAAM,MAAM,SAAS,CAAC,KAAK,EAAE,KAAK,IAAI,KAAK,SAAS,GAAG,GACnD,KAAK,SAAS,GAAG,GACf;KACG,CAAC,IAAI,MAAM,KAAK,GAAG,MAAM,KAAK,GAAG,CAAC,SAAS,MAAM,KAAK,GACnD,KAAK,CAAC,CAAC,CAAC,GACR,CAAC,SAAS,MAAM,KAAK,GACrB,KAAK,CAAC,CAAC,CAAC,GACR,KAAK;CACV,GACD,KAAK,GACP,KAAK,CAAC;AACV;;GAEG;AACH,MAAM,MAAM,cAAc,CAAC,KAAK,EAAE,KAAK,IAAI;KACxC,CAAC,IAAI,MAAM,KAAK,GAAG,CAAC,SAAS,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;CAChE,CAAC;AACF;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,MAAM,EAAE,SAAS,IAAI,WAAW,SAAS,MAAM,GACpE,SAAS,GACT,MAAM,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,gBAAgB;aAClB,kBAAkB;CAC5B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,OAAO,gBAAgB,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,WAAW,eAAwB,CAAC;AACjD;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,OAAO,SAAS,eAAe;IAC7D,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IACnC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,SAAS,WAAW,GAC5C,SAAS,GACT,OAAO,CAAC,YAAY,CAAC,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,CAAC,YAAY,EAAE,cAAc,IACpD,YAAY,SAAS,cAAc,GAC/B,OAAO,CAAC,MAAM,YAAY,EAAE,MAAM,cAAc,CAAC,SAAS,KAAK,GAC7D,YAAY,GACZ,cAAc,GAChB,KAAK,CAAC;AAEZ;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAAC,KAAK,EAAE,KAAK,IAAI,SAAS,SAAS,KAAK,GAChE,SAAS,SAAS,KAAK,GACrB,KAAK,GACL,KAAK,GACP,KAAK,CAAC"}
|
|
@@ -1,128 +1,128 @@
|
|
|
1
|
-
import { TRPCError } from '../error/TRPCError';
|
|
2
|
-
import { Simplify } from '../types';
|
|
3
|
-
import { AnyRootConfig } from './internals/config';
|
|
4
|
-
import { ParseFn } from './internals/getParseFn';
|
|
5
|
-
import { ProcedureBuilderMiddleware } from './internals/procedureBuilder';
|
|
6
|
-
import { DefaultValue as FallbackValue, MiddlewareMarker, Overwrite } from './internals/utils';
|
|
7
|
-
import { ProcedureParams } from './procedure';
|
|
8
|
-
import { ProcedureType } from './types';
|
|
9
|
-
/**
|
|
10
|
-
* @internal
|
|
11
|
-
*/
|
|
12
|
-
interface MiddlewareResultBase {
|
|
13
|
-
/**
|
|
14
|
-
* All middlewares should pass through their `next()`'s output.
|
|
15
|
-
* Requiring this marker makes sure that can't be forgotten at compile-time.
|
|
16
|
-
*/
|
|
17
|
-
readonly marker: MiddlewareMarker;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* @internal
|
|
21
|
-
*/
|
|
22
|
-
interface MiddlewareOKResult<_TParams extends ProcedureParams> extends MiddlewareResultBase {
|
|
23
|
-
ok: true;
|
|
24
|
-
data: unknown;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* @internal
|
|
28
|
-
*/
|
|
29
|
-
interface MiddlewareErrorResult<_TParams extends ProcedureParams> extends MiddlewareResultBase {
|
|
30
|
-
ok: false;
|
|
31
|
-
error: TRPCError;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* @internal
|
|
35
|
-
*/
|
|
36
|
-
export
|
|
37
|
-
/**
|
|
38
|
-
* @internal
|
|
39
|
-
*/
|
|
40
|
-
export interface MiddlewareBuilder<TRoot extends ProcedureParams, TNewParams extends ProcedureParams> {
|
|
41
|
-
/**
|
|
42
|
-
* Create a new builder based on the current middleware builder
|
|
43
|
-
*/
|
|
44
|
-
unstable_pipe<$Params extends ProcedureParams>(fn: {
|
|
45
|
-
_config: TRoot['_config'];
|
|
46
|
-
_meta: TRoot['_meta'];
|
|
47
|
-
_ctx_out: Overwrite<TRoot['_ctx_out'], TNewParams['_ctx_out']>;
|
|
48
|
-
_input_in: FallbackValue<TRoot['_input_in'], TNewParams['_input_in']>;
|
|
49
|
-
_input_out: FallbackValue<TRoot['_input_out'], TNewParams['_input_out']>;
|
|
50
|
-
_output_in: FallbackValue<TRoot['_output_in'], TNewParams['_output_in']>;
|
|
51
|
-
_output_out: FallbackValue<TRoot['_output_out'], TNewParams['_output_out']>;
|
|
52
|
-
} extends infer OParams extends ProcedureParams ? MiddlewareBuilder<OParams, $Params> | MiddlewareFunction<OParams, $Params> : never): CreateMiddlewareReturnInput<TRoot, TNewParams, Overwrite<TNewParams, $Params>>;
|
|
53
|
-
/**
|
|
54
|
-
* List of middlewares within this middleware builder
|
|
55
|
-
*/
|
|
56
|
-
_middlewares: MiddlewareFunction<TRoot, TNewParams>[];
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* @internal
|
|
60
|
-
* FIXME: there must be a nicer way of doing this, it's hard to maintain when we have several structures like this
|
|
61
|
-
*/
|
|
62
|
-
|
|
63
|
-
_config: TPrev['_config'];
|
|
64
|
-
_meta: TPrev['_meta'];
|
|
65
|
-
_ctx_out: Overwrite<TPrev['_ctx_out'], TNext['_ctx_out']>;
|
|
66
|
-
_input_in: FallbackValue<TNext['_input_in'], TPrev['_input_in']>;
|
|
67
|
-
_input_out: FallbackValue<TNext['_input_out'], TPrev['_input_out']>;
|
|
68
|
-
_output_in: FallbackValue<TNext['_output_in'], TPrev['_output_in']>;
|
|
69
|
-
_output_out: FallbackValue<TNext['_output_out'], TPrev['_output_out']>;
|
|
70
|
-
}>;
|
|
71
|
-
/**
|
|
72
|
-
* @internal
|
|
73
|
-
*/
|
|
74
|
-
|
|
75
|
-
_config: TConfig;
|
|
76
|
-
_ctx_out: TConfig['$types']['ctx'];
|
|
77
|
-
_input_out: unknown;
|
|
78
|
-
_input_in: unknown;
|
|
79
|
-
_output_in: unknown;
|
|
80
|
-
_output_out: unknown;
|
|
81
|
-
_meta: TConfig['$types']['meta'];
|
|
82
|
-
};
|
|
83
|
-
/**
|
|
84
|
-
* @internal
|
|
85
|
-
*/
|
|
86
|
-
export
|
|
87
|
-
(opts: {
|
|
88
|
-
ctx: Simplify<TParams['_ctx_out']>;
|
|
89
|
-
type: ProcedureType;
|
|
90
|
-
path: string;
|
|
91
|
-
input: TParams['_input_out'];
|
|
92
|
-
rawInput: unknown;
|
|
93
|
-
meta: TParams['_meta'] | undefined;
|
|
94
|
-
next: {
|
|
95
|
-
(): Promise<MiddlewareResult<TParams>>;
|
|
96
|
-
<$Context>(opts: {
|
|
97
|
-
ctx: $Context;
|
|
98
|
-
}): Promise<MiddlewareResult<{
|
|
99
|
-
_config: TParams['_config'];
|
|
100
|
-
_ctx_out: $Context;
|
|
101
|
-
_input_in: TParams['_input_in'];
|
|
102
|
-
_input_out: TParams['_input_out'];
|
|
103
|
-
_output_in: TParams['_output_in'];
|
|
104
|
-
_output_out: TParams['_output_out'];
|
|
105
|
-
_meta: TParams['_meta'];
|
|
106
|
-
}>>;
|
|
107
|
-
(opts: {
|
|
108
|
-
rawInput: unknown;
|
|
109
|
-
}): Promise<MiddlewareResult<TParams>>;
|
|
110
|
-
};
|
|
111
|
-
}): Promise<MiddlewareResult<TParamsAfter>>;
|
|
112
|
-
_type?: string | undefined;
|
|
113
|
-
};
|
|
114
|
-
/**
|
|
115
|
-
* @internal
|
|
116
|
-
*/
|
|
117
|
-
export declare function createMiddlewareFactory<TConfig extends AnyRootConfig>(): <TNewParams extends ProcedureParams<AnyRootConfig, unknown, unknown, unknown, unknown, unknown, unknown>>(fn: MiddlewareFunction<deriveParamsFromConfig<TConfig>, TNewParams>) => MiddlewareBuilder<deriveParamsFromConfig<TConfig>, TNewParams>;
|
|
118
|
-
/**
|
|
119
|
-
* @internal
|
|
120
|
-
* Please note, `trpc-openapi` uses this function.
|
|
121
|
-
*/
|
|
122
|
-
export declare function createInputMiddleware<TInput>(parse: ParseFn<TInput>): ProcedureBuilderMiddleware;
|
|
123
|
-
/**
|
|
124
|
-
* @internal
|
|
125
|
-
*/
|
|
126
|
-
export declare function createOutputMiddleware<TOutput>(parse: ParseFn<TOutput>): ProcedureBuilderMiddleware;
|
|
127
|
-
export {};
|
|
1
|
+
import { TRPCError } from '../error/TRPCError';
|
|
2
|
+
import { Simplify } from '../types';
|
|
3
|
+
import { AnyRootConfig } from './internals/config';
|
|
4
|
+
import { ParseFn } from './internals/getParseFn';
|
|
5
|
+
import { ProcedureBuilderMiddleware } from './internals/procedureBuilder';
|
|
6
|
+
import { DefaultValue as FallbackValue, MiddlewareMarker, Overwrite } from './internals/utils';
|
|
7
|
+
import { ProcedureParams } from './procedure';
|
|
8
|
+
import { ProcedureType } from './types';
|
|
9
|
+
/**
|
|
10
|
+
* @internal
|
|
11
|
+
*/
|
|
12
|
+
interface MiddlewareResultBase {
|
|
13
|
+
/**
|
|
14
|
+
* All middlewares should pass through their `next()`'s output.
|
|
15
|
+
* Requiring this marker makes sure that can't be forgotten at compile-time.
|
|
16
|
+
*/
|
|
17
|
+
readonly marker: MiddlewareMarker;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* @internal
|
|
21
|
+
*/
|
|
22
|
+
interface MiddlewareOKResult<_TParams extends ProcedureParams> extends MiddlewareResultBase {
|
|
23
|
+
ok: true;
|
|
24
|
+
data: unknown;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* @internal
|
|
28
|
+
*/
|
|
29
|
+
interface MiddlewareErrorResult<_TParams extends ProcedureParams> extends MiddlewareResultBase {
|
|
30
|
+
ok: false;
|
|
31
|
+
error: TRPCError;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* @internal
|
|
35
|
+
*/
|
|
36
|
+
export type MiddlewareResult<TParams extends ProcedureParams> = MiddlewareOKResult<TParams> | MiddlewareErrorResult<TParams>;
|
|
37
|
+
/**
|
|
38
|
+
* @internal
|
|
39
|
+
*/
|
|
40
|
+
export interface MiddlewareBuilder<TRoot extends ProcedureParams, TNewParams extends ProcedureParams> {
|
|
41
|
+
/**
|
|
42
|
+
* Create a new builder based on the current middleware builder
|
|
43
|
+
*/
|
|
44
|
+
unstable_pipe<$Params extends ProcedureParams>(fn: {
|
|
45
|
+
_config: TRoot['_config'];
|
|
46
|
+
_meta: TRoot['_meta'];
|
|
47
|
+
_ctx_out: Overwrite<TRoot['_ctx_out'], TNewParams['_ctx_out']>;
|
|
48
|
+
_input_in: FallbackValue<TRoot['_input_in'], TNewParams['_input_in']>;
|
|
49
|
+
_input_out: FallbackValue<TRoot['_input_out'], TNewParams['_input_out']>;
|
|
50
|
+
_output_in: FallbackValue<TRoot['_output_in'], TNewParams['_output_in']>;
|
|
51
|
+
_output_out: FallbackValue<TRoot['_output_out'], TNewParams['_output_out']>;
|
|
52
|
+
} extends infer OParams extends ProcedureParams ? MiddlewareBuilder<OParams, $Params> | MiddlewareFunction<OParams, $Params> : never): CreateMiddlewareReturnInput<TRoot, TNewParams, Overwrite<TNewParams, $Params>>;
|
|
53
|
+
/**
|
|
54
|
+
* List of middlewares within this middleware builder
|
|
55
|
+
*/
|
|
56
|
+
_middlewares: MiddlewareFunction<TRoot, TNewParams>[];
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* @internal
|
|
60
|
+
* FIXME: there must be a nicer way of doing this, it's hard to maintain when we have several structures like this
|
|
61
|
+
*/
|
|
62
|
+
type CreateMiddlewareReturnInput<TRoot extends ProcedureParams, TPrev extends ProcedureParams, TNext extends ProcedureParams> = MiddlewareBuilder<TRoot, {
|
|
63
|
+
_config: TPrev['_config'];
|
|
64
|
+
_meta: TPrev['_meta'];
|
|
65
|
+
_ctx_out: Overwrite<TPrev['_ctx_out'], TNext['_ctx_out']>;
|
|
66
|
+
_input_in: FallbackValue<TNext['_input_in'], TPrev['_input_in']>;
|
|
67
|
+
_input_out: FallbackValue<TNext['_input_out'], TPrev['_input_out']>;
|
|
68
|
+
_output_in: FallbackValue<TNext['_output_in'], TPrev['_output_in']>;
|
|
69
|
+
_output_out: FallbackValue<TNext['_output_out'], TPrev['_output_out']>;
|
|
70
|
+
}>;
|
|
71
|
+
/**
|
|
72
|
+
* @internal
|
|
73
|
+
*/
|
|
74
|
+
type deriveParamsFromConfig<TConfig extends AnyRootConfig> = {
|
|
75
|
+
_config: TConfig;
|
|
76
|
+
_ctx_out: TConfig['$types']['ctx'];
|
|
77
|
+
_input_out: unknown;
|
|
78
|
+
_input_in: unknown;
|
|
79
|
+
_output_in: unknown;
|
|
80
|
+
_output_out: unknown;
|
|
81
|
+
_meta: TConfig['$types']['meta'];
|
|
82
|
+
};
|
|
83
|
+
/**
|
|
84
|
+
* @internal
|
|
85
|
+
*/
|
|
86
|
+
export type MiddlewareFunction<TParams extends ProcedureParams, TParamsAfter extends ProcedureParams> = {
|
|
87
|
+
(opts: {
|
|
88
|
+
ctx: Simplify<TParams['_ctx_out']>;
|
|
89
|
+
type: ProcedureType;
|
|
90
|
+
path: string;
|
|
91
|
+
input: TParams['_input_out'];
|
|
92
|
+
rawInput: unknown;
|
|
93
|
+
meta: TParams['_meta'] | undefined;
|
|
94
|
+
next: {
|
|
95
|
+
(): Promise<MiddlewareResult<TParams>>;
|
|
96
|
+
<$Context>(opts: {
|
|
97
|
+
ctx: $Context;
|
|
98
|
+
}): Promise<MiddlewareResult<{
|
|
99
|
+
_config: TParams['_config'];
|
|
100
|
+
_ctx_out: $Context;
|
|
101
|
+
_input_in: TParams['_input_in'];
|
|
102
|
+
_input_out: TParams['_input_out'];
|
|
103
|
+
_output_in: TParams['_output_in'];
|
|
104
|
+
_output_out: TParams['_output_out'];
|
|
105
|
+
_meta: TParams['_meta'];
|
|
106
|
+
}>>;
|
|
107
|
+
(opts: {
|
|
108
|
+
rawInput: unknown;
|
|
109
|
+
}): Promise<MiddlewareResult<TParams>>;
|
|
110
|
+
};
|
|
111
|
+
}): Promise<MiddlewareResult<TParamsAfter>>;
|
|
112
|
+
_type?: string | undefined;
|
|
113
|
+
};
|
|
114
|
+
/**
|
|
115
|
+
* @internal
|
|
116
|
+
*/
|
|
117
|
+
export declare function createMiddlewareFactory<TConfig extends AnyRootConfig>(): <TNewParams extends ProcedureParams<AnyRootConfig, unknown, unknown, unknown, unknown, unknown, unknown>>(fn: MiddlewareFunction<deriveParamsFromConfig<TConfig>, TNewParams>) => MiddlewareBuilder<deriveParamsFromConfig<TConfig>, TNewParams>;
|
|
118
|
+
/**
|
|
119
|
+
* @internal
|
|
120
|
+
* Please note, `trpc-openapi` uses this function.
|
|
121
|
+
*/
|
|
122
|
+
export declare function createInputMiddleware<TInput>(parse: ParseFn<TInput>): ProcedureBuilderMiddleware;
|
|
123
|
+
/**
|
|
124
|
+
* @internal
|
|
125
|
+
*/
|
|
126
|
+
export declare function createOutputMiddleware<TOutput>(parse: ParseFn<TOutput>): ProcedureBuilderMiddleware;
|
|
127
|
+
export {};
|
|
128
128
|
//# sourceMappingURL=middleware.d.ts.map
|