@trpc/server 11.0.0-next-alpha.133 → 11.0.0-next-alpha.139
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/bundle-analysis.json +21 -21
- package/dist/core/index.d.ts +0 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/initTRPC.d.ts +2 -41
- package/dist/core/initTRPC.d.ts.map +1 -1
- package/dist/core/internals/procedureBuilder.d.ts +46 -60
- package/dist/core/internals/procedureBuilder.d.ts.map +1 -1
- package/dist/core/internals/utils.d.ts +1 -9
- package/dist/core/internals/utils.d.ts.map +1 -1
- package/dist/core/middleware.d.ts +33 -85
- package/dist/core/middleware.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.mjs +2 -2
- package/dist/{procedureBuilder-0ee77d9c.js → procedureBuilder-416387b5.js} +10 -9
- package/dist/{procedureBuilder-88b211d2.mjs → procedureBuilder-5431b157.mjs} +10 -9
- package/dist/{procedureBuilder-c990500b.js → procedureBuilder-e77bab71.js} +11 -13
- package/dist/unstableInternalsExport.js +1 -1
- package/dist/unstableInternalsExport.mjs +1 -1
- package/package.json +2 -2
- package/src/core/index.ts +0 -1
- package/src/core/initTRPC.ts +8 -2
- package/src/core/internals/procedureBuilder.ts +173 -104
- package/src/core/internals/utils.ts +1 -14
- package/src/core/middleware.ts +114 -163
- package/dist/core/internals/builderTypes.d.ts +0 -14
- package/dist/core/internals/builderTypes.d.ts.map +0 -1
- package/src/core/internals/builderTypes.ts +0 -14
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
|
-
"bundleSize":
|
|
3
|
-
"bundleOrigSize":
|
|
4
|
-
"bundleReduction":
|
|
2
|
+
"bundleSize": 96886,
|
|
3
|
+
"bundleOrigSize": 148348,
|
|
4
|
+
"bundleReduction": 34.69,
|
|
5
5
|
"modules": [
|
|
6
6
|
{
|
|
7
7
|
"id": "/src/adapters/ws.ts",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"dependents": [
|
|
15
15
|
"/src/adapters/fastify/fastifyTRPCPlugin.ts"
|
|
16
16
|
],
|
|
17
|
-
"percent": 10.
|
|
17
|
+
"percent": 10.07,
|
|
18
18
|
"reduction": 0
|
|
19
19
|
},
|
|
20
20
|
{
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"/src/http/index.ts",
|
|
32
32
|
"/src/adapters/node-http/nodeHTTPRequestHandler.ts"
|
|
33
33
|
],
|
|
34
|
-
"percent": 9.
|
|
34
|
+
"percent": 9.62,
|
|
35
35
|
"reduction": 22.5
|
|
36
36
|
},
|
|
37
37
|
{
|
|
@@ -52,8 +52,8 @@
|
|
|
52
52
|
},
|
|
53
53
|
{
|
|
54
54
|
"id": "/src/core/internals/procedureBuilder.ts",
|
|
55
|
-
"size":
|
|
56
|
-
"origSize":
|
|
55
|
+
"size": 5565,
|
|
56
|
+
"origSize": 11545,
|
|
57
57
|
"renderedExports": [
|
|
58
58
|
"createBuilder"
|
|
59
59
|
],
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
"/src/unstableInternalsExport.ts"
|
|
64
64
|
],
|
|
65
65
|
"percent": 5.74,
|
|
66
|
-
"reduction":
|
|
66
|
+
"reduction": 51.8
|
|
67
67
|
},
|
|
68
68
|
{
|
|
69
69
|
"id": "/src/adapters/node-http/content-type/form-data/fileUploadHandler.ts",
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
],
|
|
117
117
|
"removedExports": [],
|
|
118
118
|
"dependents": [],
|
|
119
|
-
"percent": 4.
|
|
119
|
+
"percent": 4.49,
|
|
120
120
|
"reduction": 34.59
|
|
121
121
|
},
|
|
122
122
|
{
|
|
@@ -130,7 +130,7 @@
|
|
|
130
130
|
"dependents": [
|
|
131
131
|
"/src/adapters/node-http/index.ts"
|
|
132
132
|
],
|
|
133
|
-
"percent": 3.
|
|
133
|
+
"percent": 3.68,
|
|
134
134
|
"reduction": 14.43
|
|
135
135
|
},
|
|
136
136
|
{
|
|
@@ -194,13 +194,13 @@
|
|
|
194
194
|
"/src/adapters/fastify/fastifyTRPCPlugin.ts",
|
|
195
195
|
"/src/adapters/fastify/index.ts"
|
|
196
196
|
],
|
|
197
|
-
"percent": 2.
|
|
197
|
+
"percent": 2.67,
|
|
198
198
|
"reduction": 29.47
|
|
199
199
|
},
|
|
200
200
|
{
|
|
201
201
|
"id": "/src/core/middleware.ts",
|
|
202
|
-
"size":
|
|
203
|
-
"origSize":
|
|
202
|
+
"size": 2482,
|
|
203
|
+
"origSize": 5721,
|
|
204
204
|
"renderedExports": [
|
|
205
205
|
"createMiddlewareFactory",
|
|
206
206
|
"experimental_standaloneMiddleware",
|
|
@@ -212,20 +212,20 @@
|
|
|
212
212
|
"/src/core/initTRPC.ts",
|
|
213
213
|
"/src/core/internals/procedureBuilder.ts"
|
|
214
214
|
],
|
|
215
|
-
"percent": 2.
|
|
216
|
-
"reduction":
|
|
215
|
+
"percent": 2.56,
|
|
216
|
+
"reduction": 56.62
|
|
217
217
|
},
|
|
218
218
|
{
|
|
219
219
|
"id": "/src/core/initTRPC.ts",
|
|
220
220
|
"size": 2326,
|
|
221
|
-
"origSize":
|
|
221
|
+
"origSize": 4970,
|
|
222
222
|
"renderedExports": [
|
|
223
223
|
"initTRPC"
|
|
224
224
|
],
|
|
225
225
|
"removedExports": [],
|
|
226
226
|
"dependents": [],
|
|
227
227
|
"percent": 2.4,
|
|
228
|
-
"reduction":
|
|
228
|
+
"reduction": 53.2
|
|
229
229
|
},
|
|
230
230
|
{
|
|
231
231
|
"id": "/src/adapters/aws-lambda/index.ts",
|
|
@@ -278,7 +278,7 @@
|
|
|
278
278
|
"/src/adapters/node-http/content-type/json/index.ts",
|
|
279
279
|
"/src/http/resolveHTTPResponse.ts"
|
|
280
280
|
],
|
|
281
|
-
"percent": 1.
|
|
281
|
+
"percent": 1.69,
|
|
282
282
|
"reduction": 34.21
|
|
283
283
|
},
|
|
284
284
|
{
|
|
@@ -382,7 +382,7 @@
|
|
|
382
382
|
"dependents": [
|
|
383
383
|
"/src/adapters/fastify/index.ts"
|
|
384
384
|
],
|
|
385
|
-
"percent": 1.
|
|
385
|
+
"percent": 1.23,
|
|
386
386
|
"reduction": 36.52
|
|
387
387
|
},
|
|
388
388
|
{
|
|
@@ -753,7 +753,7 @@
|
|
|
753
753
|
{
|
|
754
754
|
"id": "/src/core/internals/utils.ts",
|
|
755
755
|
"size": 129,
|
|
756
|
-
"origSize":
|
|
756
|
+
"origSize": 1914,
|
|
757
757
|
"renderedExports": [
|
|
758
758
|
"middlewareMarker",
|
|
759
759
|
"unsetMarker"
|
|
@@ -764,7 +764,7 @@
|
|
|
764
764
|
"/src/core/internals/procedureBuilder.ts"
|
|
765
765
|
],
|
|
766
766
|
"percent": 0.13,
|
|
767
|
-
"reduction":
|
|
767
|
+
"reduction": 93.26
|
|
768
768
|
},
|
|
769
769
|
{
|
|
770
770
|
"id": "/src/adapters/node-http/internals/contentType.ts",
|
package/dist/core/index.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
export type { AnyRouter, ProcedureRecord, ProcedureRouterRecord, CreateRouterInner, Router, } from './router';
|
|
2
2
|
export { callProcedure } from './router';
|
|
3
3
|
export type { Procedure, AnyProcedure, AnyQueryProcedure, AnyMutationProcedure, AnySubscriptionProcedure, ProcedureArgs, ProcedureOptions, } from './procedure';
|
|
4
|
-
export type { AnyProcedureBuilderParams } from './internals/builderTypes';
|
|
5
4
|
export type { inferParser } from './parser';
|
|
6
5
|
export { createInputMiddleware, createOutputMiddleware, experimental_standaloneMiddleware, } from './middleware';
|
|
7
6
|
export type { MiddlewareFunction, MiddlewareBuilder } from './middleware';
|
package/dist/core/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,SAAS,EACT,eAAe,EACf,qBAAqB,EACrB,iBAAiB,EACjB,MAAM,GACP,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,YAAY,EACV,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,oBAAoB,EACpB,wBAAwB,EACxB,aAAa,EACb,gBAAgB,GACjB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,SAAS,EACT,eAAe,EACf,qBAAqB,EACrB,iBAAiB,EACjB,MAAM,GACP,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,YAAY,EACV,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,oBAAoB,EACpB,wBAAwB,EACxB,aAAa,EACb,gBAAgB,GACjB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,iCAAiC,GAClC,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,cAAc,SAAS,CAAC"}
|
package/dist/core/initTRPC.d.ts
CHANGED
|
@@ -42,50 +42,11 @@ declare class TRPCBuilder<TParams extends PartialRootConfigTypes = object> {
|
|
|
42
42
|
/**
|
|
43
43
|
* Builder object for creating procedures
|
|
44
44
|
*/
|
|
45
|
-
procedure: import("./internals/procedureBuilder").ProcedureBuilder<
|
|
46
|
-
_config: RootConfig<{
|
|
47
|
-
ctx: TParams["ctx"] extends object ? TParams["ctx"] : object;
|
|
48
|
-
meta: TParams["meta"] extends object ? TParams["meta"] : object;
|
|
49
|
-
errorShape: ErrorFormatterShape<PickFirstDefined<TOptions["errorFormatter"], ErrorFormatter<TParams["ctx"] extends object ? TParams["ctx"] : object, DefaultErrorShape>>>;
|
|
50
|
-
transformer: TOptions["transformer"] extends DataTransformerOptions ? TOptions["transformer"] : DefaultDataTransformer;
|
|
51
|
-
}>;
|
|
52
|
-
_ctx_out: TParams["ctx"] extends object ? TParams["ctx"] : object;
|
|
53
|
-
_input_in: typeof import("./internals/utils").unsetMarker;
|
|
54
|
-
_input_out: typeof import("./internals/utils").unsetMarker;
|
|
55
|
-
_output_in: typeof import("./internals/utils").unsetMarker;
|
|
56
|
-
_output_out: typeof import("./internals/utils").unsetMarker;
|
|
57
|
-
_meta: TParams["meta"] extends object ? TParams["meta"] : object;
|
|
58
|
-
}>;
|
|
45
|
+
procedure: import("./internals/procedureBuilder").ProcedureBuilder<TParams["ctx"] extends object ? TParams["ctx"] : object, TParams["meta"] extends object ? TParams["meta"] : object, object, typeof import("./internals/utils").unsetMarker, typeof import("./internals/utils").unsetMarker, typeof import("./internals/utils").unsetMarker, typeof import("./internals/utils").unsetMarker>;
|
|
59
46
|
/**
|
|
60
47
|
* Create reusable middlewares
|
|
61
48
|
*/
|
|
62
|
-
middleware:
|
|
63
|
-
_config: RootConfig<{
|
|
64
|
-
ctx: TParams["ctx"] extends object ? TParams["ctx"] : object;
|
|
65
|
-
meta: TParams["meta"] extends object ? TParams["meta"] : object;
|
|
66
|
-
errorShape: ErrorFormatterShape<PickFirstDefined<TOptions["errorFormatter"], ErrorFormatter<TParams["ctx"] extends object ? TParams["ctx"] : object, DefaultErrorShape>>>;
|
|
67
|
-
transformer: TOptions["transformer"] extends DataTransformerOptions ? TOptions["transformer"] : DefaultDataTransformer;
|
|
68
|
-
}>;
|
|
69
|
-
_ctx_out: {};
|
|
70
|
-
_input_out: typeof import("./internals/utils").unsetMarker;
|
|
71
|
-
_input_in: unknown;
|
|
72
|
-
_output_in: unknown;
|
|
73
|
-
_output_out: unknown;
|
|
74
|
-
_meta: TParams["meta"] extends object ? TParams["meta"] : object;
|
|
75
|
-
}, TNewParams>) => import("./middleware").MiddlewareBuilder<{
|
|
76
|
-
_config: RootConfig<{
|
|
77
|
-
ctx: TParams["ctx"] extends object ? TParams["ctx"] : object;
|
|
78
|
-
meta: TParams["meta"] extends object ? TParams["meta"] : object;
|
|
79
|
-
errorShape: ErrorFormatterShape<PickFirstDefined<TOptions["errorFormatter"], ErrorFormatter<TParams["ctx"] extends object ? TParams["ctx"] : object, DefaultErrorShape>>>;
|
|
80
|
-
transformer: TOptions["transformer"] extends DataTransformerOptions ? TOptions["transformer"] : DefaultDataTransformer;
|
|
81
|
-
}>;
|
|
82
|
-
_ctx_out: {};
|
|
83
|
-
_input_out: typeof import("./internals/utils").unsetMarker;
|
|
84
|
-
_input_in: unknown;
|
|
85
|
-
_output_in: unknown;
|
|
86
|
-
_output_out: unknown;
|
|
87
|
-
_meta: TParams["meta"] extends object ? TParams["meta"] : object;
|
|
88
|
-
}, TNewParams>;
|
|
49
|
+
middleware: <$ContextOverrides>(fn: import("./middleware").MiddlewareFunction<TParams["ctx"] extends object ? TParams["ctx"] : object, TParams["meta"] extends object ? TParams["meta"] : object, object, $ContextOverrides, unknown>) => import("./middleware").MiddlewareBuilder<TParams["ctx"] extends object ? TParams["ctx"] : object, TParams["meta"] extends object ? TParams["meta"] : object, $ContextOverrides, unknown>;
|
|
89
50
|
/**
|
|
90
51
|
* Create a router
|
|
91
52
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initTRPC.d.ts","sourceRoot":"","sources":["../../src/core/initTRPC.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EAEjB,cAAc,EACd,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EAGvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EACL,qBAAqB,EAErB,UAAU,EACV,eAAe,EACf,aAAa,EACd,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EAAa,gBAAgB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAI/E,KAAK,sBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAEvD,KAAK,gCAAgC,CAAC,MAAM,SAAS,sBAAsB,IACzE,qBAAqB,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,eAAe,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;IAC3E,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,eAAe,CAAC,MAAM,CAAC,GAChD,MAAM,CAAC,MAAM,CAAC,GACd,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;IACjC,WAAW,EAAE,sBAAsB,CAAC;CACrC,CAAC,CAAC;AAEL;;;;;GAKG;AAEH,cAAM,WAAW,CAAC,OAAO,SAAS,sBAAsB,GAAG,MAAM;IAC/D,OAAO,CACL,WAAW,SACP,eAAe,CAAC,KAAK,CAAC,GACtB,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,eAAe,CAAC,KAAK,CAAC,CAAC;aAER,OAAO,WAAW,CAAC;;aAAnB,OAAO,WAAW,CAAC;;IAKjE,IAAI,CAAC,QAAQ,SAAS,eAAe,CAAC,MAAM,CAAC;cACE,QAAQ;;cAAR,QAAQ;;IAKvD,MAAM,CACJ,QAAQ,SAAS,OAAO,CACtB,aAAa,CAAC,gCAAgC,CAAC,OAAO,CAAC,CAAC,CACzD,EAED,OAAO,CAAC,EACJ,aAAa,CACX,QAAQ,EACR,OAAO,CAAC,aAAa,CAAC,gCAAgC,CAAC,OAAO,CAAC,CAAC,CAAC,CAClE,GACD,SAAS;QAwEX;;;WAGG;;;;;;;QAEH;;WAEG
|
|
1
|
+
{"version":3,"file":"initTRPC.d.ts","sourceRoot":"","sources":["../../src/core/initTRPC.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EAEjB,cAAc,EACd,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EAGvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EACL,qBAAqB,EAErB,UAAU,EACV,eAAe,EACf,aAAa,EACd,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EAAa,gBAAgB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAI/E,KAAK,sBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAEvD,KAAK,gCAAgC,CAAC,MAAM,SAAS,sBAAsB,IACzE,qBAAqB,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,eAAe,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;IAC3E,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,eAAe,CAAC,MAAM,CAAC,GAChD,MAAM,CAAC,MAAM,CAAC,GACd,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;IACjC,WAAW,EAAE,sBAAsB,CAAC;CACrC,CAAC,CAAC;AAEL;;;;;GAKG;AAEH,cAAM,WAAW,CAAC,OAAO,SAAS,sBAAsB,GAAG,MAAM;IAC/D,OAAO,CACL,WAAW,SACP,eAAe,CAAC,KAAK,CAAC,GACtB,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,eAAe,CAAC,KAAK,CAAC,CAAC;aAER,OAAO,WAAW,CAAC;;aAAnB,OAAO,WAAW,CAAC;;IAKjE,IAAI,CAAC,QAAQ,SAAS,eAAe,CAAC,MAAM,CAAC;cACE,QAAQ;;cAAR,QAAQ;;IAKvD,MAAM,CACJ,QAAQ,SAAS,OAAO,CACtB,aAAa,CAAC,gCAAgC,CAAC,OAAO,CAAC,CAAC,CACzD,EAED,OAAO,CAAC,EACJ,aAAa,CACX,QAAQ,EACR,OAAO,CAAC,aAAa,CAAC,gCAAgC,CAAC,OAAO,CAAC,CAAC,CAAC,CAClE,GACD,SAAS;QAwEX;;;WAGG;;;;;;;QAEH;;WAEG;;QAOH;;WAEG;;QAKH;;WAEG;;;;;;;QAEH;;WAEG;;;CA/FR;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ,qBAAoB,CAAC"}
|
|
@@ -1,104 +1,90 @@
|
|
|
1
1
|
import { MaybePromise, Simplify } from '../../types';
|
|
2
|
-
import { MiddlewareBuilder, MiddlewareFunction } from '../middleware';
|
|
2
|
+
import { AnyMiddlewareFunction, MiddlewareBuilder, MiddlewareFunction } from '../middleware';
|
|
3
3
|
import { inferParser, Parser } from '../parser';
|
|
4
4
|
import { MutationProcedure, QueryProcedure, SubscriptionProcedure } from '../procedure';
|
|
5
5
|
import { ProcedureType } from '../types';
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
import { DefaultValue, GetRawInputFn, Overwrite, ResolveOptions, UnsetMarker } from './utils';
|
|
9
|
-
type CreateProcedureReturnInput<TPrev extends AnyProcedureBuilderParams, TNext extends AnyProcedureBuilderParams> = ProcedureBuilder<{
|
|
10
|
-
_config: TPrev['_config'];
|
|
11
|
-
_meta: TPrev['_meta'];
|
|
12
|
-
_ctx_out: Overwrite<TPrev['_ctx_out'], TNext['_ctx_out']>;
|
|
13
|
-
_input_in: TPrev['_input_in'];
|
|
14
|
-
_input_out: UnsetMarker extends TNext['_input_out'] ? TPrev['_input_out'] : Overwrite<TPrev['_input_out'], TNext['_input_out']>;
|
|
15
|
-
_output_in: DefaultValue<TNext['_output_in'], TPrev['_output_in']>;
|
|
16
|
-
_output_out: DefaultValue<TNext['_output_out'], TPrev['_output_out']>;
|
|
17
|
-
}>;
|
|
18
|
-
type OverwriteIfDefined<TType, TWith> = UnsetMarker extends TType ? TWith : Simplify<TType & TWith>;
|
|
6
|
+
import { DefaultValue, GetRawInputFn, Overwrite, UnsetMarker } from './utils';
|
|
7
|
+
type IntersectIfDefined<TType, TWith> = UnsetMarker extends TType ? TWith : Simplify<TType & TWith>;
|
|
19
8
|
type ErrorMessage<TMessage extends string> = TMessage;
|
|
20
|
-
export type ProcedureBuilderDef<
|
|
9
|
+
export type ProcedureBuilderDef<TMeta> = {
|
|
21
10
|
procedure: true;
|
|
22
11
|
inputs: Parser[];
|
|
23
12
|
output?: Parser;
|
|
24
|
-
meta?:
|
|
13
|
+
meta?: TMeta;
|
|
25
14
|
resolver?: ProcedureBuilderResolver;
|
|
26
|
-
middlewares:
|
|
15
|
+
middlewares: AnyMiddlewareFunction[];
|
|
27
16
|
mutation?: boolean;
|
|
28
17
|
query?: boolean;
|
|
29
18
|
subscription?: boolean;
|
|
30
19
|
};
|
|
31
20
|
export type AnyProcedureBuilderDef = ProcedureBuilderDef<any>;
|
|
32
|
-
|
|
21
|
+
/**
|
|
22
|
+
* Procedure resolver options
|
|
23
|
+
* @internal
|
|
24
|
+
*/
|
|
25
|
+
interface ResolverOptions<TContext, _TMeta, TContextOverridesIn, TInputOut> {
|
|
26
|
+
ctx: Simplify<Overwrite<TContext, TContextOverridesIn>>;
|
|
27
|
+
input: TInputOut extends UnsetMarker ? undefined : TInputOut;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* A procedure resolver
|
|
31
|
+
*/
|
|
32
|
+
type ProcedureResolver<TContext, _TMeta, TContextOverrides, TInputOut, TOutputIn, TOutputOut> = (opts: {
|
|
33
|
+
ctx: Simplify<Overwrite<TContext, TContextOverrides>>;
|
|
34
|
+
input: TInputOut extends UnsetMarker ? undefined : TInputOut;
|
|
35
|
+
}) => MaybePromise<DefaultValue<TOutputIn, TOutputOut>>;
|
|
36
|
+
export interface ProcedureBuilder<TContext, TMeta, TContextOverrides, TInputIn, TInputOut, TOutputIn, TOutputOut> {
|
|
33
37
|
/**
|
|
34
38
|
* Add an input parser to the procedure.
|
|
39
|
+
* @see https://trpc.io/docs/server/validators
|
|
35
40
|
*/
|
|
36
|
-
input<$Parser extends Parser>(schema:
|
|
37
|
-
_config: TParams['_config'];
|
|
38
|
-
_meta: TParams['_meta'];
|
|
39
|
-
_ctx_out: TParams['_ctx_out'];
|
|
40
|
-
_input_in: OverwriteIfDefined<TParams['_input_in'], inferParser<$Parser>['in']>;
|
|
41
|
-
_input_out: OverwriteIfDefined<TParams['_input_out'], inferParser<$Parser>['out']>;
|
|
42
|
-
_output_in: TParams['_output_in'];
|
|
43
|
-
_output_out: TParams['_output_out'];
|
|
44
|
-
}>;
|
|
41
|
+
input<$Parser extends Parser>(schema: TInputOut extends UnsetMarker ? $Parser : inferParser<$Parser>['out'] extends Record<string, unknown> | undefined ? TInputOut extends Record<string, unknown> | undefined ? undefined extends inferParser<$Parser>['out'] ? undefined extends TInputOut ? $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<TContext, TMeta, TContextOverrides, IntersectIfDefined<TInputIn, inferParser<$Parser>['in']>, IntersectIfDefined<TInputOut, inferParser<$Parser>['out']>, TOutputIn, TOutputOut>;
|
|
45
42
|
/**
|
|
46
43
|
* Add an output parser to the procedure.
|
|
44
|
+
* @see https://trpc.io/docs/server/validators
|
|
47
45
|
*/
|
|
48
|
-
output<$Parser extends Parser>(schema: $Parser): ProcedureBuilder<
|
|
49
|
-
_config: TParams['_config'];
|
|
50
|
-
_meta: TParams['_meta'];
|
|
51
|
-
_ctx_out: TParams['_ctx_out'];
|
|
52
|
-
_input_in: TParams['_input_in'];
|
|
53
|
-
_input_out: TParams['_input_out'];
|
|
54
|
-
_output_in: inferParser<$Parser>['in'];
|
|
55
|
-
_output_out: inferParser<$Parser>['out'];
|
|
56
|
-
}>;
|
|
46
|
+
output<$Parser extends Parser>(schema: $Parser): ProcedureBuilder<TContext, TMeta, TContextOverrides, TInputIn, TInputOut, IntersectIfDefined<TOutputIn, inferParser<$Parser>['in']>, IntersectIfDefined<TOutputOut, inferParser<$Parser>['out']>>;
|
|
57
47
|
/**
|
|
58
48
|
* Add a meta data to the procedure.
|
|
49
|
+
* @see https://trpc.io/docs/server/metadata
|
|
59
50
|
*/
|
|
60
|
-
meta(meta:
|
|
51
|
+
meta(meta: TMeta): ProcedureBuilder<TContext, TMeta, TContextOverrides, TInputIn, TInputOut, TOutputIn, TOutputOut>;
|
|
61
52
|
/**
|
|
62
53
|
* Add a middleware to the procedure.
|
|
54
|
+
* @see https://trpc.io/docs/server/middlewares
|
|
63
55
|
*/
|
|
64
|
-
use<$
|
|
56
|
+
use<$ContextOverridesOut>(fn: MiddlewareBuilder<Overwrite<TContext, TContextOverrides>, TMeta, $ContextOverridesOut, TInputIn> | MiddlewareFunction<TContext, TMeta, TContextOverrides, $ContextOverridesOut, TInputIn>): ProcedureBuilder<TContext, TMeta, Overwrite<TContextOverrides, $ContextOverridesOut>, TInputIn, TInputOut, TOutputIn, TOutputOut>;
|
|
65
57
|
/**
|
|
66
58
|
* Query procedure
|
|
59
|
+
* @see https://trpc.io/docs/concepts#vocabulary
|
|
67
60
|
*/
|
|
68
|
-
query<$Output>(resolver:
|
|
69
|
-
input: DefaultValue<
|
|
70
|
-
output: DefaultValue<
|
|
61
|
+
query<$Output>(resolver: ProcedureResolver<TContext, TMeta, TContextOverrides, TInputOut, TOutputIn, $Output>): QueryProcedure<{
|
|
62
|
+
input: DefaultValue<TInputIn, void>;
|
|
63
|
+
output: DefaultValue<TOutputOut, $Output>;
|
|
71
64
|
}>;
|
|
72
65
|
/**
|
|
73
66
|
* Mutation procedure
|
|
67
|
+
* @see https://trpc.io/docs/concepts#vocabulary
|
|
74
68
|
*/
|
|
75
|
-
mutation<$Output>(resolver:
|
|
76
|
-
input: DefaultValue<
|
|
77
|
-
output: DefaultValue<
|
|
69
|
+
mutation<$Output>(resolver: ProcedureResolver<TContext, TMeta, TContextOverrides, TInputOut, TOutputIn, $Output>): MutationProcedure<{
|
|
70
|
+
input: DefaultValue<TInputIn, void>;
|
|
71
|
+
output: DefaultValue<TOutputOut, $Output>;
|
|
78
72
|
}>;
|
|
79
73
|
/**
|
|
80
|
-
*
|
|
74
|
+
* Subscription procedure
|
|
75
|
+
* @see https://trpc.io/docs/concepts#vocabulary
|
|
81
76
|
*/
|
|
82
|
-
subscription<$Output>(resolver:
|
|
83
|
-
input: DefaultValue<
|
|
84
|
-
output: DefaultValue<
|
|
77
|
+
subscription<$Output>(resolver: ProcedureResolver<TContext, TMeta, TContextOverrides, TInputOut, TOutputIn, $Output>): SubscriptionProcedure<{
|
|
78
|
+
input: DefaultValue<TInputIn, void>;
|
|
79
|
+
output: DefaultValue<TOutputOut, $Output>;
|
|
85
80
|
}>;
|
|
86
81
|
/**
|
|
87
82
|
* @internal
|
|
88
83
|
*/
|
|
89
|
-
_def: ProcedureBuilderDef<
|
|
84
|
+
_def: ProcedureBuilderDef<TMeta>;
|
|
90
85
|
}
|
|
91
|
-
export type
|
|
92
|
-
export
|
|
93
|
-
export declare function createBuilder<TConfig extends AnyRootConfig>(initDef?: Partial<AnyProcedureBuilderDef>): ProcedureBuilder<{
|
|
94
|
-
_config: TConfig;
|
|
95
|
-
_ctx_out: TConfig['$types']['ctx'];
|
|
96
|
-
_input_in: UnsetMarker;
|
|
97
|
-
_input_out: UnsetMarker;
|
|
98
|
-
_output_in: UnsetMarker;
|
|
99
|
-
_output_out: UnsetMarker;
|
|
100
|
-
_meta: TConfig['$types']['meta'];
|
|
101
|
-
}>;
|
|
86
|
+
export type ProcedureBuilderResolver = (opts: ResolverOptions<any, any, any, any>) => Promise<unknown>;
|
|
87
|
+
export declare function createBuilder<TContext, TMeta>(initDef?: Partial<AnyProcedureBuilderDef>): ProcedureBuilder<TContext, TMeta, object, UnsetMarker, UnsetMarker, UnsetMarker, UnsetMarker>;
|
|
102
88
|
/**
|
|
103
89
|
* @internal
|
|
104
90
|
*/
|
|
@@ -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,
|
|
1
|
+
{"version":3,"file":"procedureBuilder.d.ts","sourceRoot":"","sources":["../../../src/core/internals/procedureBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { AnyProcedureBuilderParams } from './builderTypes';
|
|
1
|
+
import { WithoutIndexSignature } from '../../types';
|
|
3
2
|
/**
|
|
4
3
|
* @internal
|
|
5
4
|
* Overwrite properties in `TType` with properties in `TWith`
|
|
@@ -35,13 +34,6 @@ export declare const unsetMarker: unique symbol;
|
|
|
35
34
|
* @internal
|
|
36
35
|
*/
|
|
37
36
|
export type UnsetMarker = typeof unsetMarker;
|
|
38
|
-
/**
|
|
39
|
-
* @internal
|
|
40
|
-
*/
|
|
41
|
-
export interface ResolveOptions<TParams extends AnyProcedureBuilderParams> {
|
|
42
|
-
ctx: Simplify<Overwrite<TParams['_config']['$types']['ctx'], TParams['_ctx_out']>>;
|
|
43
|
-
input: TParams['_input_out'] extends UnsetMarker ? undefined : TParams['_input_out'];
|
|
44
|
-
}
|
|
45
37
|
/**
|
|
46
38
|
* @internal
|
|
47
39
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/core/internals/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/core/internals/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD;;;;;GAKG;AACH,MAAM,MAAM,SAAS,CAAC,KAAK,EAAE,KAAK,IAAI,KAAK,SAAS,GAAG,GACnD,KAAK,SAAS,MAAM,GAClB;KACG,CAAC,IACE,MAAM,qBAAqB,CAAC,KAAK,CAAC,GAClC,MAAM,qBAAqB,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,MAAM,KAAK,GAC1D,KAAK,CAAC,CAAC,CAAC,GACR,CAAC,SAAS,MAAM,KAAK,GACrB,KAAK,CAAC,CAAC,CAAC,GACR,KAAK;CACV,GAAG,CAAC,MAAM,SAAS,MAAM,KAAK,GAC3B;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;CAAE,GAChC,MAAM,SAAS,MAAM,KAAK,GAC1B;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;CAAE,GAEhC,EAAE,CAAC,GACP,KAAK,GACP,KAAK,CAAC;AAEV;;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,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;AAEV;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
import { TRPCError } from '../error/TRPCError';
|
|
2
2
|
import { Simplify } from '../types';
|
|
3
|
-
import { AnyProcedureBuilderParams } from './internals/builderTypes';
|
|
4
|
-
import { AnyRootConfig, RootConfig } from './internals/config';
|
|
5
3
|
import { ParseFn } from './internals/getParseFn';
|
|
6
|
-
import {
|
|
7
|
-
import { DefaultValue, GetRawInputFn, MiddlewareMarker, Overwrite, UnsetMarker } from './internals/utils';
|
|
4
|
+
import { GetRawInputFn, MiddlewareMarker, Overwrite } from './internals/utils';
|
|
8
5
|
import { ProcedureType } from './types';
|
|
9
6
|
/**
|
|
10
7
|
* @internal
|
|
@@ -19,140 +16,91 @@ interface MiddlewareResultBase {
|
|
|
19
16
|
/**
|
|
20
17
|
* @internal
|
|
21
18
|
*/
|
|
22
|
-
interface MiddlewareOKResult<
|
|
19
|
+
interface MiddlewareOKResult<_TContextOverride> extends MiddlewareResultBase {
|
|
23
20
|
ok: true;
|
|
24
21
|
data: unknown;
|
|
25
22
|
}
|
|
26
23
|
/**
|
|
27
24
|
* @internal
|
|
28
25
|
*/
|
|
29
|
-
interface MiddlewareErrorResult<
|
|
26
|
+
interface MiddlewareErrorResult<_TContextOverride> extends MiddlewareResultBase {
|
|
30
27
|
ok: false;
|
|
31
28
|
error: TRPCError;
|
|
32
29
|
}
|
|
33
30
|
/**
|
|
34
31
|
* @internal
|
|
35
32
|
*/
|
|
36
|
-
export type MiddlewareResult<
|
|
33
|
+
export type MiddlewareResult<_TContextOverride> = MiddlewareErrorResult<_TContextOverride> | MiddlewareOKResult<_TContextOverride>;
|
|
37
34
|
/**
|
|
38
35
|
* @internal
|
|
39
36
|
*/
|
|
40
|
-
export interface MiddlewareBuilder<
|
|
37
|
+
export interface MiddlewareBuilder<TContext, TMeta, TContextOverrides, TInputIn> {
|
|
41
38
|
/**
|
|
42
39
|
* Create a new builder based on the current middleware builder
|
|
43
40
|
*/
|
|
44
|
-
unstable_pipe<$
|
|
45
|
-
_config: TRoot['_config'];
|
|
46
|
-
_meta: TRoot['_meta'];
|
|
47
|
-
_ctx_out: Overwrite<TRoot['_ctx_out'], TNewParams['_ctx_out']>;
|
|
48
|
-
_input_in: DefaultValue<TRoot['_input_in'], TNewParams['_input_in']>;
|
|
49
|
-
_input_out: DefaultValue<TRoot['_input_out'], TNewParams['_input_out']>;
|
|
50
|
-
_output_in: DefaultValue<TRoot['_output_in'], TNewParams['_output_in']>;
|
|
51
|
-
_output_out: DefaultValue<TRoot['_output_out'], TNewParams['_output_out']>;
|
|
52
|
-
} extends infer OParams extends AnyProcedureBuilderParams ? MiddlewareBuilder<OParams, $Params> | MiddlewareFunction<OParams, $Params> : never): CreateMiddlewareReturnInput<TRoot, TNewParams, Overwrite<TNewParams, $Params>>;
|
|
41
|
+
unstable_pipe<$ContextOverridesOut>(fn: MiddlewareFunction<TContext, TMeta, TContextOverrides, $ContextOverridesOut, TInputIn> | MiddlewareBuilder<Overwrite<TContext, TContextOverrides>, TMeta, $ContextOverridesOut, TInputIn>): MiddlewareBuilder<TContext, TMeta, Overwrite<TContextOverrides, $ContextOverridesOut>, TInputIn>;
|
|
53
42
|
/**
|
|
54
43
|
* List of middlewares within this middleware builder
|
|
55
44
|
*/
|
|
56
|
-
_middlewares: MiddlewareFunction<
|
|
45
|
+
_middlewares: MiddlewareFunction<TContext, TMeta, TContextOverrides, object, TInputIn>[];
|
|
57
46
|
}
|
|
58
47
|
/**
|
|
59
48
|
* @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
49
|
*/
|
|
62
|
-
type
|
|
63
|
-
_config: TPrev['_config'];
|
|
64
|
-
_meta: TPrev['_meta'];
|
|
65
|
-
_ctx_out: Overwrite<TPrev['_ctx_out'], TNext['_ctx_out']>;
|
|
66
|
-
_input_in: DefaultValue<TNext['_input_in'], TPrev['_input_in']>;
|
|
67
|
-
_input_out: DefaultValue<TNext['_input_out'], TPrev['_input_out']>;
|
|
68
|
-
_output_in: DefaultValue<TNext['_output_in'], TPrev['_output_in']>;
|
|
69
|
-
_output_out: DefaultValue<TNext['_output_out'], TPrev['_output_out']>;
|
|
70
|
-
}>;
|
|
71
|
-
/**
|
|
72
|
-
* @internal
|
|
73
|
-
*/
|
|
74
|
-
type deriveParamsFromConfig<TConfig extends AnyRootConfig, TInputIn = unknown> = {
|
|
75
|
-
_config: TConfig;
|
|
76
|
-
_ctx_out: {};
|
|
77
|
-
_input_out: UnsetMarker;
|
|
78
|
-
_input_in: TInputIn;
|
|
79
|
-
_output_in: unknown;
|
|
80
|
-
_output_out: unknown;
|
|
81
|
-
_meta: TConfig['$types']['meta'];
|
|
82
|
-
};
|
|
83
|
-
/**
|
|
84
|
-
* @internal
|
|
85
|
-
*/
|
|
86
|
-
export type MiddlewareFunction<TParams extends AnyProcedureBuilderParams, TParamsAfter extends AnyProcedureBuilderParams> = {
|
|
50
|
+
export type MiddlewareFunction<TContext, TMeta, TContextOverridesIn, $ContextOverridesOut, TInputIn> = {
|
|
87
51
|
(opts: {
|
|
88
|
-
ctx: Simplify<Overwrite<
|
|
52
|
+
ctx: Simplify<Overwrite<TContext, TContextOverridesIn>>;
|
|
89
53
|
type: ProcedureType;
|
|
90
54
|
path: string;
|
|
91
|
-
input:
|
|
55
|
+
input: TInputIn;
|
|
92
56
|
getRawInput: GetRawInputFn;
|
|
93
|
-
meta:
|
|
57
|
+
meta: TMeta | undefined;
|
|
94
58
|
next: {
|
|
95
|
-
(): Promise<MiddlewareResult<
|
|
96
|
-
<$
|
|
97
|
-
ctx?: $
|
|
59
|
+
(): Promise<MiddlewareResult<TContextOverridesIn>>;
|
|
60
|
+
<$ContextOverride>(opts: {
|
|
61
|
+
ctx?: $ContextOverride;
|
|
98
62
|
input?: unknown;
|
|
99
|
-
}): Promise<MiddlewareResult
|
|
100
|
-
_config: TParams['_config'];
|
|
101
|
-
_ctx_out: $Context;
|
|
102
|
-
_input_in: TParams['_input_in'];
|
|
103
|
-
_input_out: TParams['_input_out'];
|
|
104
|
-
_output_in: TParams['_output_in'];
|
|
105
|
-
_output_out: TParams['_output_out'];
|
|
106
|
-
_meta: TParams['_meta'];
|
|
107
|
-
}>>;
|
|
63
|
+
}): Promise<MiddlewareResult<$ContextOverride>>;
|
|
108
64
|
(opts: {
|
|
109
65
|
getRawInput: GetRawInputFn;
|
|
110
|
-
}): Promise<MiddlewareResult<
|
|
66
|
+
}): Promise<MiddlewareResult<TContextOverridesIn>>;
|
|
111
67
|
};
|
|
112
|
-
}): Promise<MiddlewareResult
|
|
68
|
+
}): Promise<MiddlewareResult<$ContextOverridesOut>>;
|
|
113
69
|
_type?: string | undefined;
|
|
114
70
|
};
|
|
71
|
+
export type AnyMiddlewareFunction = MiddlewareFunction<any, any, any, any, any>;
|
|
72
|
+
export type AnyMiddlewareBuilder = MiddlewareBuilder<any, any, any, any>;
|
|
115
73
|
/**
|
|
116
74
|
* @internal
|
|
117
75
|
*/
|
|
118
|
-
export declare function createMiddlewareFactory<
|
|
76
|
+
export declare function createMiddlewareFactory<TContext, TMeta, TInputIn = unknown>(): <$ContextOverrides>(fn: MiddlewareFunction<TContext, TMeta, object, $ContextOverrides, TInputIn>) => MiddlewareBuilder<TContext, TMeta, $ContextOverrides, TInputIn>;
|
|
119
77
|
export declare const experimental_standaloneMiddleware: <TCtx extends {
|
|
120
78
|
ctx?: object | undefined;
|
|
121
79
|
meta?: object | undefined;
|
|
122
80
|
input?: unknown;
|
|
123
81
|
}>() => {
|
|
124
|
-
create:
|
|
125
|
-
ctx:
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
meta: infer T_1 extends object;
|
|
130
|
-
} ? T_1 : object;
|
|
131
|
-
errorShape: object;
|
|
132
|
-
transformer: object;
|
|
133
|
-
}>, TCtx extends {
|
|
82
|
+
create: <$ContextOverrides>(fn: MiddlewareFunction<TCtx extends {
|
|
83
|
+
ctx: infer T extends object;
|
|
84
|
+
} ? T : any, TCtx extends {
|
|
85
|
+
meta: infer T_1 extends object;
|
|
86
|
+
} ? T_1 : object, object, $ContextOverrides, TCtx extends {
|
|
134
87
|
input: infer T_2;
|
|
135
|
-
} ? T_2 : unknown
|
|
136
|
-
ctx:
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
meta: infer T_1 extends object;
|
|
141
|
-
} ? T_1 : object;
|
|
142
|
-
errorShape: object;
|
|
143
|
-
transformer: object;
|
|
144
|
-
}>, TCtx extends {
|
|
88
|
+
} ? T_2 : unknown>) => MiddlewareBuilder<TCtx extends {
|
|
89
|
+
ctx: infer T extends object;
|
|
90
|
+
} ? T : any, TCtx extends {
|
|
91
|
+
meta: infer T_1 extends object;
|
|
92
|
+
} ? T_1 : object, $ContextOverrides, TCtx extends {
|
|
145
93
|
input: infer T_2;
|
|
146
|
-
} ? T_2 : unknown
|
|
94
|
+
} ? T_2 : unknown>;
|
|
147
95
|
};
|
|
148
96
|
/**
|
|
149
97
|
* @internal
|
|
150
98
|
* Please note, `trpc-openapi` uses this function.
|
|
151
99
|
*/
|
|
152
|
-
export declare function createInputMiddleware<TInput>(parse: ParseFn<TInput>):
|
|
100
|
+
export declare function createInputMiddleware<TInput>(parse: ParseFn<TInput>): AnyMiddlewareFunction;
|
|
153
101
|
/**
|
|
154
102
|
* @internal
|
|
155
103
|
*/
|
|
156
|
-
export declare function createOutputMiddleware<TOutput>(parse: ParseFn<TOutput>):
|
|
104
|
+
export declare function createOutputMiddleware<TOutput>(parse: ParseFn<TOutput>): AnyMiddlewareFunction;
|
|
157
105
|
export {};
|
|
158
106
|
//# sourceMappingURL=middleware.d.ts.map
|