@tanstack/start-client-core 1.120.4-alpha.19 → 1.120.5
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/README.md +27 -6
- package/dist/cjs/createMiddleware.cjs +5 -8
- package/dist/cjs/createMiddleware.cjs.map +1 -1
- package/dist/cjs/createMiddleware.d.cts +81 -125
- package/dist/cjs/createServerFn.cjs +0 -1
- package/dist/cjs/createServerFn.cjs.map +1 -1
- package/dist/cjs/createServerFn.d.cts +5 -6
- package/dist/cjs/index.cjs +0 -1
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/index.d.cts +2 -2
- package/dist/cjs/registerGlobalMiddleware.cjs.map +1 -1
- package/dist/cjs/registerGlobalMiddleware.d.cts +3 -3
- package/dist/cjs/ssr-client.cjs +25 -24
- package/dist/cjs/ssr-client.cjs.map +1 -1
- package/dist/cjs/ssr-client.d.cts +1 -2
- package/dist/esm/createMiddleware.d.ts +81 -125
- package/dist/esm/createMiddleware.js +5 -8
- package/dist/esm/createMiddleware.js.map +1 -1
- package/dist/esm/createServerFn.d.ts +5 -6
- package/dist/esm/createServerFn.js +0 -1
- package/dist/esm/createServerFn.js.map +1 -1
- package/dist/esm/index.d.ts +2 -2
- package/dist/esm/index.js +1 -2
- package/dist/esm/registerGlobalMiddleware.d.ts +3 -3
- package/dist/esm/registerGlobalMiddleware.js.map +1 -1
- package/dist/esm/ssr-client.d.ts +1 -2
- package/dist/esm/ssr-client.js +25 -24
- package/dist/esm/ssr-client.js.map +1 -1
- package/package.json +2 -2
- package/src/createMiddleware.ts +368 -479
- package/src/createServerFn.ts +16 -31
- package/src/index.tsx +21 -22
- package/src/registerGlobalMiddleware.ts +3 -3
- package/src/ssr-client.tsx +29 -33
- package/src/tests/createServerFn.test-d.ts +13 -20
- package/src/tests/createServerMiddleware.test-d.ts +73 -186
package/src/createMiddleware.ts
CHANGED
|
@@ -14,225 +14,21 @@ import type {
|
|
|
14
14
|
SerializerStringify,
|
|
15
15
|
} from '@tanstack/router-core'
|
|
16
16
|
|
|
17
|
-
export
|
|
18
|
-
options: {
|
|
19
|
-
type: TType
|
|
20
|
-
validateClient?: boolean
|
|
21
|
-
},
|
|
22
|
-
__opts?: FunctionMiddlewareOptions<
|
|
23
|
-
unknown,
|
|
24
|
-
undefined,
|
|
25
|
-
undefined,
|
|
26
|
-
undefined,
|
|
27
|
-
ServerFnResponseType
|
|
28
|
-
>,
|
|
29
|
-
): CreateMiddlewareResult<TType> {
|
|
30
|
-
// const resolvedOptions = (__opts || options) as MiddlewareOptions<
|
|
31
|
-
const resolvedOptions = {
|
|
32
|
-
type: 'function',
|
|
33
|
-
...(__opts ||
|
|
34
|
-
(options as FunctionMiddlewareOptions<
|
|
35
|
-
unknown,
|
|
36
|
-
undefined,
|
|
37
|
-
undefined,
|
|
38
|
-
undefined,
|
|
39
|
-
ServerFnResponseType
|
|
40
|
-
>)),
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
return {
|
|
44
|
-
options: resolvedOptions,
|
|
45
|
-
middleware: (middleware: any) => {
|
|
46
|
-
return createMiddleware(
|
|
47
|
-
{} as any,
|
|
48
|
-
Object.assign(resolvedOptions, { middleware }),
|
|
49
|
-
) as any
|
|
50
|
-
},
|
|
51
|
-
validator: (validator: any) => {
|
|
52
|
-
return createMiddleware(
|
|
53
|
-
{} as any,
|
|
54
|
-
Object.assign(resolvedOptions, { validator }),
|
|
55
|
-
) as any
|
|
56
|
-
},
|
|
57
|
-
client: (client: any) => {
|
|
58
|
-
return createMiddleware(
|
|
59
|
-
{} as any,
|
|
60
|
-
Object.assign(resolvedOptions, { client }),
|
|
61
|
-
) as any
|
|
62
|
-
},
|
|
63
|
-
server: (server: any) => {
|
|
64
|
-
return createMiddleware(
|
|
65
|
-
{} as any,
|
|
66
|
-
Object.assign(resolvedOptions, { server }),
|
|
67
|
-
) as any
|
|
68
|
-
},
|
|
69
|
-
} as unknown as CreateMiddlewareResult<TType>
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
export type MiddlewareType = 'request' | 'function'
|
|
73
|
-
|
|
74
|
-
export type CreateMiddlewareResult<TType extends MiddlewareType> =
|
|
75
|
-
'function' extends TType
|
|
76
|
-
? FunctionMiddleware<ServerFnResponseType>
|
|
77
|
-
: RequestMiddleware
|
|
78
|
-
|
|
79
|
-
export interface FunctionMiddleware<
|
|
80
|
-
TServerFnResponseType extends ServerFnResponseType,
|
|
81
|
-
> extends FunctionMiddlewareAfterMiddleware<unknown, TServerFnResponseType> {
|
|
82
|
-
middleware: <const TNewMiddlewares = undefined>(
|
|
83
|
-
middlewares: Constrain<
|
|
84
|
-
TNewMiddlewares,
|
|
85
|
-
ReadonlyArray<AnyFunctionMiddleware>
|
|
86
|
-
>,
|
|
87
|
-
) => FunctionMiddlewareAfterMiddleware<TNewMiddlewares, TServerFnResponseType>
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
export interface FunctionMiddlewareAfterMiddleware<
|
|
91
|
-
TMiddlewares,
|
|
92
|
-
TServerFnResponseType extends ServerFnResponseType,
|
|
93
|
-
> extends FunctionMiddlewareWithTypes<
|
|
94
|
-
TMiddlewares,
|
|
95
|
-
undefined,
|
|
96
|
-
undefined,
|
|
97
|
-
undefined,
|
|
98
|
-
undefined,
|
|
99
|
-
undefined,
|
|
100
|
-
TServerFnResponseType
|
|
101
|
-
>,
|
|
102
|
-
FunctionMiddlewareServer<
|
|
103
|
-
TMiddlewares,
|
|
104
|
-
undefined,
|
|
105
|
-
undefined,
|
|
106
|
-
undefined,
|
|
107
|
-
TServerFnResponseType
|
|
108
|
-
>,
|
|
109
|
-
FunctionMiddlewareClient<TMiddlewares, undefined, TServerFnResponseType>,
|
|
110
|
-
FunctionMiddlewareValidator<TMiddlewares, TServerFnResponseType> {}
|
|
111
|
-
|
|
112
|
-
export interface FunctionMiddlewareWithTypes<
|
|
113
|
-
TMiddlewares,
|
|
114
|
-
TValidator,
|
|
115
|
-
TServerContext,
|
|
116
|
-
TServerSendContext,
|
|
117
|
-
TClientContext,
|
|
118
|
-
TClientSendContext,
|
|
119
|
-
TServerFnResponseType extends ServerFnResponseType,
|
|
120
|
-
> {
|
|
121
|
-
_types: FunctionMiddlewareTypes<
|
|
122
|
-
TMiddlewares,
|
|
123
|
-
TValidator,
|
|
124
|
-
TServerContext,
|
|
125
|
-
TServerSendContext,
|
|
126
|
-
TClientContext,
|
|
127
|
-
TClientSendContext
|
|
128
|
-
>
|
|
129
|
-
options: FunctionMiddlewareOptions<
|
|
130
|
-
TMiddlewares,
|
|
131
|
-
TValidator,
|
|
132
|
-
TServerContext,
|
|
133
|
-
TClientContext,
|
|
134
|
-
TServerFnResponseType
|
|
135
|
-
>
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
export interface FunctionMiddlewareTypes<
|
|
139
|
-
in out TMiddlewares,
|
|
140
|
-
in out TValidator,
|
|
141
|
-
in out TServerContext,
|
|
142
|
-
in out TServerSendContext,
|
|
143
|
-
in out TClientContext,
|
|
144
|
-
in out TClientSendContext,
|
|
145
|
-
> {
|
|
146
|
-
type: 'function'
|
|
147
|
-
middlewares: TMiddlewares
|
|
148
|
-
input: ResolveValidatorInput<TValidator>
|
|
149
|
-
allInput: IntersectAllValidatorInputs<TMiddlewares, TValidator>
|
|
150
|
-
output: ResolveValidatorOutput<TValidator>
|
|
151
|
-
allOutput: IntersectAllValidatorOutputs<TMiddlewares, TValidator>
|
|
152
|
-
clientContext: TClientContext
|
|
153
|
-
allClientContextBeforeNext: AssignAllClientContextBeforeNext<
|
|
154
|
-
TMiddlewares,
|
|
155
|
-
TClientContext
|
|
156
|
-
>
|
|
157
|
-
allClientContextAfterNext: AssignAllClientContextAfterNext<
|
|
158
|
-
TMiddlewares,
|
|
159
|
-
TClientContext,
|
|
160
|
-
TClientSendContext
|
|
161
|
-
>
|
|
162
|
-
serverContext: TServerContext
|
|
163
|
-
serverSendContext: TServerSendContext
|
|
164
|
-
allServerSendContext: AssignAllServerSendContext<
|
|
165
|
-
TMiddlewares,
|
|
166
|
-
TServerSendContext
|
|
167
|
-
>
|
|
168
|
-
allServerContext: AssignAllServerContext<
|
|
169
|
-
TMiddlewares,
|
|
170
|
-
TServerSendContext,
|
|
171
|
-
TServerContext
|
|
172
|
-
>
|
|
173
|
-
clientSendContext: TClientSendContext
|
|
174
|
-
allClientSendContext: AssignAllClientSendContext<
|
|
175
|
-
TMiddlewares,
|
|
176
|
-
TClientSendContext
|
|
177
|
-
>
|
|
178
|
-
validator: TValidator
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
/**
|
|
182
|
-
* Recursively resolve the input type produced by a sequence of middleware
|
|
183
|
-
*/
|
|
184
|
-
export type IntersectAllValidatorInputs<TMiddlewares, TValidator> =
|
|
185
|
-
unknown extends TValidator
|
|
186
|
-
? TValidator
|
|
187
|
-
: TValidator extends undefined
|
|
188
|
-
? IntersectAllMiddleware<TMiddlewares, 'allInput'>
|
|
189
|
-
: IntersectAssign<
|
|
190
|
-
IntersectAllMiddleware<TMiddlewares, 'allInput'>,
|
|
191
|
-
ResolveValidatorInput<TValidator>
|
|
192
|
-
>
|
|
193
|
-
|
|
194
|
-
export type IntersectAllMiddleware<
|
|
17
|
+
export type AssignAllMiddleware<
|
|
195
18
|
TMiddlewares,
|
|
196
|
-
TType extends
|
|
197
|
-
| keyof AnyFunctionMiddleware['_types']
|
|
198
|
-
| keyof AnyRequestMiddleware['_types'],
|
|
19
|
+
TType extends keyof AnyMiddleware['_types'],
|
|
199
20
|
TAcc = undefined,
|
|
200
|
-
> = TMiddlewares extends readonly [
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
>
|
|
210
|
-
: TAcc
|
|
21
|
+
> = TMiddlewares extends readonly [
|
|
22
|
+
infer TMiddleware extends AnyMiddleware,
|
|
23
|
+
...infer TRest,
|
|
24
|
+
]
|
|
25
|
+
? AssignAllMiddleware<
|
|
26
|
+
TRest,
|
|
27
|
+
TType,
|
|
28
|
+
Assign<TAcc, TMiddleware['_types'][TType]>
|
|
29
|
+
>
|
|
211
30
|
: TAcc
|
|
212
31
|
|
|
213
|
-
export type AnyFunctionMiddleware = FunctionMiddlewareWithTypes<
|
|
214
|
-
any,
|
|
215
|
-
any,
|
|
216
|
-
any,
|
|
217
|
-
any,
|
|
218
|
-
any,
|
|
219
|
-
any,
|
|
220
|
-
any
|
|
221
|
-
>
|
|
222
|
-
|
|
223
|
-
/**
|
|
224
|
-
* Recursively merge the output type produced by a sequence of middleware
|
|
225
|
-
*/
|
|
226
|
-
export type IntersectAllValidatorOutputs<TMiddlewares, TValidator> =
|
|
227
|
-
unknown extends TValidator
|
|
228
|
-
? TValidator
|
|
229
|
-
: TValidator extends undefined
|
|
230
|
-
? IntersectAllMiddleware<TMiddlewares, 'allOutput'>
|
|
231
|
-
: IntersectAssign<
|
|
232
|
-
IntersectAllMiddleware<TMiddlewares, 'allOutput'>,
|
|
233
|
-
ResolveValidatorOutput<TValidator>
|
|
234
|
-
>
|
|
235
|
-
|
|
236
32
|
/**
|
|
237
33
|
* Recursively resolve the client context type produced by a sequence of middleware
|
|
238
34
|
*/
|
|
@@ -246,21 +42,15 @@ export type AssignAllClientContextBeforeNext<
|
|
|
246
42
|
TClientContext
|
|
247
43
|
>
|
|
248
44
|
|
|
249
|
-
export type
|
|
45
|
+
export type AssignAllClientSendContext<
|
|
250
46
|
TMiddlewares,
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
TRest,
|
|
259
|
-
TType,
|
|
260
|
-
Assign<TAcc, TMiddleware['_types'][TType & keyof TMiddleware['_types']]>
|
|
261
|
-
>
|
|
262
|
-
: TAcc
|
|
263
|
-
: TAcc
|
|
47
|
+
TSendContext = undefined,
|
|
48
|
+
> = unknown extends TSendContext
|
|
49
|
+
? TSendContext
|
|
50
|
+
: Assign<
|
|
51
|
+
AssignAllMiddleware<TMiddlewares, 'allClientSendContext'>,
|
|
52
|
+
TSendContext
|
|
53
|
+
>
|
|
264
54
|
|
|
265
55
|
export type AssignAllClientContextAfterNext<
|
|
266
56
|
TMiddlewares,
|
|
@@ -273,16 +63,6 @@ export type AssignAllClientContextAfterNext<
|
|
|
273
63
|
Assign<TClientContext, TSendContext>
|
|
274
64
|
>
|
|
275
65
|
|
|
276
|
-
export type AssignAllServerSendContext<
|
|
277
|
-
TMiddlewares,
|
|
278
|
-
TSendContext = undefined,
|
|
279
|
-
> = unknown extends TSendContext
|
|
280
|
-
? TSendContext
|
|
281
|
-
: Assign<
|
|
282
|
-
AssignAllMiddleware<TMiddlewares, 'allServerSendContext'>,
|
|
283
|
-
TSendContext
|
|
284
|
-
>
|
|
285
|
-
|
|
286
66
|
/**
|
|
287
67
|
* Recursively resolve the server context type produced by a sequence of middleware
|
|
288
68
|
*/
|
|
@@ -297,17 +77,57 @@ export type AssignAllServerContext<
|
|
|
297
77
|
Assign<TSendContext, TServerContext>
|
|
298
78
|
>
|
|
299
79
|
|
|
300
|
-
export type
|
|
80
|
+
export type AssignAllServerSendContext<
|
|
301
81
|
TMiddlewares,
|
|
302
82
|
TSendContext = undefined,
|
|
303
83
|
> = unknown extends TSendContext
|
|
304
84
|
? TSendContext
|
|
305
85
|
: Assign<
|
|
306
|
-
AssignAllMiddleware<TMiddlewares, '
|
|
86
|
+
AssignAllMiddleware<TMiddlewares, 'allServerSendContext'>,
|
|
307
87
|
TSendContext
|
|
308
88
|
>
|
|
309
89
|
|
|
310
|
-
export
|
|
90
|
+
export type IntersectAllMiddleware<
|
|
91
|
+
TMiddlewares,
|
|
92
|
+
TType extends keyof AnyMiddleware['_types'],
|
|
93
|
+
TAcc = undefined,
|
|
94
|
+
> = TMiddlewares extends readonly [
|
|
95
|
+
infer TMiddleware extends AnyMiddleware,
|
|
96
|
+
...infer TRest,
|
|
97
|
+
]
|
|
98
|
+
? IntersectAllMiddleware<
|
|
99
|
+
TRest,
|
|
100
|
+
TType,
|
|
101
|
+
IntersectAssign<TAcc, TMiddleware['_types'][TType]>
|
|
102
|
+
>
|
|
103
|
+
: TAcc
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
* Recursively resolve the input type produced by a sequence of middleware
|
|
107
|
+
*/
|
|
108
|
+
export type IntersectAllValidatorInputs<TMiddlewares, TValidator> =
|
|
109
|
+
unknown extends TValidator
|
|
110
|
+
? TValidator
|
|
111
|
+
: IntersectAssign<
|
|
112
|
+
IntersectAllMiddleware<TMiddlewares, 'allInput'>,
|
|
113
|
+
TValidator extends undefined
|
|
114
|
+
? undefined
|
|
115
|
+
: ResolveValidatorInput<TValidator>
|
|
116
|
+
>
|
|
117
|
+
/**
|
|
118
|
+
* Recursively merge the output type produced by a sequence of middleware
|
|
119
|
+
*/
|
|
120
|
+
export type IntersectAllValidatorOutputs<TMiddlewares, TValidator> =
|
|
121
|
+
unknown extends TValidator
|
|
122
|
+
? TValidator
|
|
123
|
+
: IntersectAssign<
|
|
124
|
+
IntersectAllMiddleware<TMiddlewares, 'allOutput'>,
|
|
125
|
+
TValidator extends undefined
|
|
126
|
+
? undefined
|
|
127
|
+
: ResolveValidatorOutput<TValidator>
|
|
128
|
+
>
|
|
129
|
+
|
|
130
|
+
export interface MiddlewareOptions<
|
|
311
131
|
in out TMiddlewares,
|
|
312
132
|
in out TValidator,
|
|
313
133
|
in out TServerContext,
|
|
@@ -317,14 +137,14 @@ export interface FunctionMiddlewareOptions<
|
|
|
317
137
|
validateClient?: boolean
|
|
318
138
|
middleware?: TMiddlewares
|
|
319
139
|
validator?: ConstrainValidator<TValidator>
|
|
320
|
-
client?:
|
|
140
|
+
client?: MiddlewareClientFn<
|
|
321
141
|
TMiddlewares,
|
|
322
142
|
TValidator,
|
|
323
143
|
TServerContext,
|
|
324
144
|
TClientContext,
|
|
325
145
|
TServerFnResponseType
|
|
326
146
|
>
|
|
327
|
-
server?:
|
|
147
|
+
server?: MiddlewareServerFn<
|
|
328
148
|
TMiddlewares,
|
|
329
149
|
TValidator,
|
|
330
150
|
TServerContext,
|
|
@@ -334,44 +154,38 @@ export interface FunctionMiddlewareOptions<
|
|
|
334
154
|
>
|
|
335
155
|
}
|
|
336
156
|
|
|
337
|
-
export type
|
|
157
|
+
export type MiddlewareServerNextFn<TMiddlewares, TServerSendContext> = <
|
|
158
|
+
TNewServerContext = undefined,
|
|
338
159
|
TSendContext = undefined,
|
|
339
|
-
TNewClientContext = undefined,
|
|
340
160
|
>(ctx?: {
|
|
341
|
-
context?:
|
|
161
|
+
context?: TNewServerContext
|
|
342
162
|
sendContext?: SerializerStringify<TSendContext>
|
|
343
|
-
headers?: HeadersInit
|
|
344
163
|
}) => Promise<
|
|
345
|
-
|
|
346
|
-
>
|
|
347
|
-
|
|
348
|
-
export interface FunctionMiddlewareServer<
|
|
349
|
-
TMiddlewares,
|
|
350
|
-
TValidator,
|
|
351
|
-
TServerSendContext,
|
|
352
|
-
TClientContext,
|
|
353
|
-
TServerFnResponseType extends ServerFnResponseType,
|
|
354
|
-
> {
|
|
355
|
-
server: <TNewServerContext = undefined, TSendContext = undefined>(
|
|
356
|
-
server: FunctionMiddlewareServerFn<
|
|
357
|
-
TMiddlewares,
|
|
358
|
-
TValidator,
|
|
359
|
-
TServerSendContext,
|
|
360
|
-
TNewServerContext,
|
|
361
|
-
TSendContext,
|
|
362
|
-
TServerFnResponseType
|
|
363
|
-
>,
|
|
364
|
-
) => FunctionMiddlewareAfterServer<
|
|
164
|
+
ServerResultWithContext<
|
|
365
165
|
TMiddlewares,
|
|
366
|
-
TValidator,
|
|
367
|
-
TNewServerContext,
|
|
368
166
|
TServerSendContext,
|
|
369
|
-
|
|
370
|
-
TSendContext
|
|
371
|
-
ServerFnResponseType
|
|
167
|
+
TNewServerContext,
|
|
168
|
+
TSendContext
|
|
372
169
|
>
|
|
170
|
+
>
|
|
171
|
+
|
|
172
|
+
export interface MiddlewareServerFnOptions<
|
|
173
|
+
in out TMiddlewares,
|
|
174
|
+
in out TValidator,
|
|
175
|
+
in out TServerSendContext,
|
|
176
|
+
in out TServerFnResponseType,
|
|
177
|
+
> {
|
|
178
|
+
data: Expand<IntersectAllValidatorOutputs<TMiddlewares, TValidator>>
|
|
179
|
+
context: Expand<AssignAllServerContext<TMiddlewares, TServerSendContext>>
|
|
180
|
+
next: MiddlewareServerNextFn<TMiddlewares, TServerSendContext>
|
|
181
|
+
response: TServerFnResponseType
|
|
182
|
+
method: Method
|
|
183
|
+
filename: string
|
|
184
|
+
functionId: string
|
|
185
|
+
signal: AbortSignal
|
|
373
186
|
}
|
|
374
|
-
|
|
187
|
+
|
|
188
|
+
export type MiddlewareServerFn<
|
|
375
189
|
TMiddlewares,
|
|
376
190
|
TValidator,
|
|
377
191
|
TServerSendContext,
|
|
@@ -379,47 +193,96 @@ export type FunctionMiddlewareServerFn<
|
|
|
379
193
|
TSendContext,
|
|
380
194
|
TServerFnResponseType extends ServerFnResponseType,
|
|
381
195
|
> = (
|
|
382
|
-
options:
|
|
196
|
+
options: MiddlewareServerFnOptions<
|
|
383
197
|
TMiddlewares,
|
|
384
198
|
TValidator,
|
|
385
199
|
TServerSendContext,
|
|
386
200
|
TServerFnResponseType
|
|
387
201
|
>,
|
|
388
|
-
) =>
|
|
202
|
+
) => MiddlewareServerFnResult<
|
|
389
203
|
TMiddlewares,
|
|
390
204
|
TServerSendContext,
|
|
391
205
|
TNewServerContext,
|
|
392
206
|
TSendContext
|
|
393
207
|
>
|
|
394
208
|
|
|
395
|
-
export
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
209
|
+
export type MiddlewareServerFnResult<
|
|
210
|
+
TMiddlewares,
|
|
211
|
+
TServerSendContext,
|
|
212
|
+
TServerContext,
|
|
213
|
+
TSendContext,
|
|
214
|
+
> =
|
|
215
|
+
| Promise<
|
|
216
|
+
ServerResultWithContext<
|
|
217
|
+
TMiddlewares,
|
|
218
|
+
TServerSendContext,
|
|
219
|
+
TServerContext,
|
|
220
|
+
TSendContext
|
|
221
|
+
>
|
|
222
|
+
>
|
|
223
|
+
| ServerResultWithContext<
|
|
224
|
+
TMiddlewares,
|
|
225
|
+
TServerSendContext,
|
|
226
|
+
TServerContext,
|
|
227
|
+
TSendContext
|
|
228
|
+
>
|
|
229
|
+
|
|
230
|
+
export type MiddlewareClientNextFn<TMiddlewares> = <
|
|
231
|
+
TSendContext = undefined,
|
|
232
|
+
TNewClientContext = undefined,
|
|
233
|
+
>(ctx?: {
|
|
234
|
+
context?: TNewClientContext
|
|
235
|
+
sendContext?: SerializerStringify<TSendContext>
|
|
236
|
+
headers?: HeadersInit
|
|
237
|
+
}) => Promise<
|
|
238
|
+
ClientResultWithContext<TMiddlewares, TSendContext, TNewClientContext>
|
|
239
|
+
>
|
|
240
|
+
|
|
241
|
+
export interface MiddlewareClientFnOptions<
|
|
242
|
+
in out TMiddlewares,
|
|
243
|
+
in out TValidator,
|
|
244
|
+
in out TServerFnResponseType extends ServerFnResponseType,
|
|
245
|
+
> {
|
|
246
|
+
data: Expand<IntersectAllValidatorInputs<TMiddlewares, TValidator>>
|
|
247
|
+
context: Expand<AssignAllClientContextBeforeNext<TMiddlewares>>
|
|
248
|
+
sendContext: Expand<AssignAllServerSendContext<TMiddlewares>>
|
|
249
|
+
method: Method
|
|
250
|
+
response: TServerFnResponseType
|
|
251
|
+
signal: AbortSignal
|
|
252
|
+
next: MiddlewareClientNextFn<TMiddlewares>
|
|
253
|
+
filename: string
|
|
254
|
+
functionId: string
|
|
255
|
+
type: ServerFnTypeOrTypeFn<
|
|
256
|
+
Method,
|
|
257
|
+
TServerFnResponseType,
|
|
415
258
|
TMiddlewares,
|
|
416
|
-
|
|
417
|
-
TNewServerContext,
|
|
418
|
-
TSendContext
|
|
259
|
+
TValidator
|
|
419
260
|
>
|
|
420
|
-
|
|
261
|
+
}
|
|
421
262
|
|
|
422
|
-
export type
|
|
263
|
+
export type MiddlewareClientFn<
|
|
264
|
+
TMiddlewares,
|
|
265
|
+
TValidator,
|
|
266
|
+
TSendContext,
|
|
267
|
+
TClientContext,
|
|
268
|
+
TServerFnResponseType extends ServerFnResponseType,
|
|
269
|
+
> = (
|
|
270
|
+
options: MiddlewareClientFnOptions<
|
|
271
|
+
TMiddlewares,
|
|
272
|
+
TValidator,
|
|
273
|
+
TServerFnResponseType
|
|
274
|
+
>,
|
|
275
|
+
) => MiddlewareClientFnResult<TMiddlewares, TSendContext, TClientContext>
|
|
276
|
+
|
|
277
|
+
export type MiddlewareClientFnResult<
|
|
278
|
+
TMiddlewares,
|
|
279
|
+
TSendContext,
|
|
280
|
+
TClientContext,
|
|
281
|
+
> =
|
|
282
|
+
| Promise<ClientResultWithContext<TMiddlewares, TSendContext, TClientContext>>
|
|
283
|
+
| ClientResultWithContext<TMiddlewares, TSendContext, TClientContext>
|
|
284
|
+
|
|
285
|
+
export type ServerResultWithContext<
|
|
423
286
|
in out TMiddlewares,
|
|
424
287
|
in out TServerSendContext,
|
|
425
288
|
in out TServerContext,
|
|
@@ -436,44 +299,70 @@ export type FunctionServerResultWithContext<
|
|
|
436
299
|
sendContext: Expand<AssignAllClientSendContext<TMiddlewares, TSendContext>>
|
|
437
300
|
}
|
|
438
301
|
|
|
439
|
-
export
|
|
302
|
+
export type ClientResultWithContext<
|
|
303
|
+
in out TMiddlewares,
|
|
304
|
+
in out TSendContext,
|
|
305
|
+
in out TClientContext,
|
|
306
|
+
> = {
|
|
307
|
+
'use functions must return the result of next()': true
|
|
308
|
+
context: Expand<AssignAllClientContextAfterNext<TMiddlewares, TClientContext>>
|
|
309
|
+
sendContext: Expand<AssignAllServerSendContext<TMiddlewares, TSendContext>>
|
|
310
|
+
headers: HeadersInit
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
export type AnyMiddleware = MiddlewareWithTypes<
|
|
314
|
+
any,
|
|
315
|
+
any,
|
|
316
|
+
any,
|
|
317
|
+
any,
|
|
318
|
+
any,
|
|
319
|
+
any,
|
|
320
|
+
any
|
|
321
|
+
>
|
|
322
|
+
|
|
323
|
+
export interface MiddlewareTypes<
|
|
440
324
|
in out TMiddlewares,
|
|
441
325
|
in out TValidator,
|
|
326
|
+
in out TServerContext,
|
|
442
327
|
in out TServerSendContext,
|
|
443
|
-
in out
|
|
328
|
+
in out TClientContext,
|
|
329
|
+
in out TClientSendContext,
|
|
444
330
|
> {
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
331
|
+
middlewares: TMiddlewares
|
|
332
|
+
input: ResolveValidatorInput<TValidator>
|
|
333
|
+
allInput: IntersectAllValidatorInputs<TMiddlewares, TValidator>
|
|
334
|
+
output: ResolveValidatorOutput<TValidator>
|
|
335
|
+
allOutput: IntersectAllValidatorOutputs<TMiddlewares, TValidator>
|
|
336
|
+
clientContext: TClientContext
|
|
337
|
+
allClientContextBeforeNext: AssignAllClientContextBeforeNext<
|
|
338
|
+
TMiddlewares,
|
|
339
|
+
TClientContext
|
|
340
|
+
>
|
|
341
|
+
allClientContextAfterNext: AssignAllClientContextAfterNext<
|
|
342
|
+
TMiddlewares,
|
|
343
|
+
TClientContext,
|
|
344
|
+
TClientSendContext
|
|
345
|
+
>
|
|
346
|
+
serverContext: TServerContext
|
|
347
|
+
serverSendContext: TServerSendContext
|
|
348
|
+
allServerSendContext: AssignAllServerSendContext<
|
|
349
|
+
TMiddlewares,
|
|
350
|
+
TServerSendContext
|
|
351
|
+
>
|
|
352
|
+
allServerContext: AssignAllServerContext<
|
|
353
|
+
TMiddlewares,
|
|
354
|
+
TServerSendContext,
|
|
355
|
+
TServerContext
|
|
356
|
+
>
|
|
357
|
+
clientSendContext: TClientSendContext
|
|
358
|
+
allClientSendContext: AssignAllClientSendContext<
|
|
359
|
+
TMiddlewares,
|
|
360
|
+
TClientSendContext
|
|
361
|
+
>
|
|
362
|
+
validator: TValidator
|
|
453
363
|
}
|
|
454
364
|
|
|
455
|
-
export
|
|
456
|
-
TMiddlewares,
|
|
457
|
-
TServerSendContext,
|
|
458
|
-
TServerContext,
|
|
459
|
-
TSendContext,
|
|
460
|
-
> =
|
|
461
|
-
| Promise<
|
|
462
|
-
FunctionServerResultWithContext<
|
|
463
|
-
TMiddlewares,
|
|
464
|
-
TServerSendContext,
|
|
465
|
-
TServerContext,
|
|
466
|
-
TSendContext
|
|
467
|
-
>
|
|
468
|
-
>
|
|
469
|
-
| FunctionServerResultWithContext<
|
|
470
|
-
TMiddlewares,
|
|
471
|
-
TServerSendContext,
|
|
472
|
-
TServerContext,
|
|
473
|
-
TSendContext
|
|
474
|
-
>
|
|
475
|
-
|
|
476
|
-
export interface FunctionMiddlewareAfterServer<
|
|
365
|
+
export interface MiddlewareWithTypes<
|
|
477
366
|
TMiddlewares,
|
|
478
367
|
TValidator,
|
|
479
368
|
TServerContext,
|
|
@@ -481,110 +370,111 @@ export interface FunctionMiddlewareAfterServer<
|
|
|
481
370
|
TClientContext,
|
|
482
371
|
TClientSendContext,
|
|
483
372
|
TServerFnResponseType extends ServerFnResponseType,
|
|
484
|
-
>
|
|
373
|
+
> {
|
|
374
|
+
_types: MiddlewareTypes<
|
|
485
375
|
TMiddlewares,
|
|
486
376
|
TValidator,
|
|
487
377
|
TServerContext,
|
|
488
378
|
TServerSendContext,
|
|
489
379
|
TClientContext,
|
|
490
|
-
TClientSendContext
|
|
380
|
+
TClientSendContext
|
|
381
|
+
>
|
|
382
|
+
options: MiddlewareOptions<
|
|
383
|
+
TMiddlewares,
|
|
384
|
+
TValidator,
|
|
385
|
+
TServerContext,
|
|
386
|
+
TClientContext,
|
|
491
387
|
TServerFnResponseType
|
|
492
|
-
>
|
|
388
|
+
>
|
|
389
|
+
}
|
|
493
390
|
|
|
494
|
-
export interface
|
|
391
|
+
export interface MiddlewareAfterValidator<
|
|
495
392
|
TMiddlewares,
|
|
496
393
|
TValidator,
|
|
497
394
|
TServerFnResponseType extends ServerFnResponseType,
|
|
498
|
-
>
|
|
499
|
-
client: <TSendServerContext = undefined, TNewClientContext = undefined>(
|
|
500
|
-
client: FunctionMiddlewareClientFn<
|
|
395
|
+
> extends MiddlewareWithTypes<
|
|
501
396
|
TMiddlewares,
|
|
502
397
|
TValidator,
|
|
503
|
-
|
|
504
|
-
|
|
398
|
+
undefined,
|
|
399
|
+
undefined,
|
|
400
|
+
undefined,
|
|
401
|
+
undefined,
|
|
402
|
+
ServerFnResponseType
|
|
403
|
+
>,
|
|
404
|
+
MiddlewareServer<
|
|
405
|
+
TMiddlewares,
|
|
406
|
+
TValidator,
|
|
407
|
+
undefined,
|
|
408
|
+
undefined,
|
|
505
409
|
TServerFnResponseType
|
|
506
410
|
>,
|
|
507
|
-
|
|
411
|
+
MiddlewareClient<TMiddlewares, TValidator, ServerFnResponseType> {}
|
|
412
|
+
|
|
413
|
+
export interface MiddlewareValidator<
|
|
414
|
+
TMiddlewares,
|
|
415
|
+
TServerFnResponseType extends ServerFnResponseType,
|
|
416
|
+
> {
|
|
417
|
+
validator: <TNewValidator>(
|
|
418
|
+
input: ConstrainValidator<TNewValidator>,
|
|
419
|
+
) => MiddlewareAfterValidator<
|
|
508
420
|
TMiddlewares,
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
TNewClientContext,
|
|
512
|
-
ServerFnResponseType
|
|
421
|
+
TNewValidator,
|
|
422
|
+
TServerFnResponseType
|
|
513
423
|
>
|
|
514
424
|
}
|
|
515
425
|
|
|
516
|
-
export
|
|
426
|
+
export interface MiddlewareAfterServer<
|
|
517
427
|
TMiddlewares,
|
|
518
428
|
TValidator,
|
|
519
|
-
|
|
429
|
+
TServerContext,
|
|
430
|
+
TServerSendContext,
|
|
520
431
|
TClientContext,
|
|
432
|
+
TClientSendContext,
|
|
521
433
|
TServerFnResponseType extends ServerFnResponseType,
|
|
522
|
-
>
|
|
523
|
-
options: FunctionMiddlewareClientFnOptions<
|
|
434
|
+
> extends MiddlewareWithTypes<
|
|
524
435
|
TMiddlewares,
|
|
525
436
|
TValidator,
|
|
437
|
+
TServerContext,
|
|
438
|
+
TServerSendContext,
|
|
439
|
+
TClientContext,
|
|
440
|
+
TClientSendContext,
|
|
526
441
|
TServerFnResponseType
|
|
527
|
-
|
|
528
|
-
) => FunctionMiddlewareClientFnResult<
|
|
529
|
-
TMiddlewares,
|
|
530
|
-
TSendContext,
|
|
531
|
-
TClientContext
|
|
532
|
-
>
|
|
442
|
+
> {}
|
|
533
443
|
|
|
534
|
-
export interface
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
444
|
+
export interface MiddlewareServer<
|
|
445
|
+
TMiddlewares,
|
|
446
|
+
TValidator,
|
|
447
|
+
TServerSendContext,
|
|
448
|
+
TClientContext,
|
|
449
|
+
TServerFnResponseType extends ServerFnResponseType,
|
|
538
450
|
> {
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
Method,
|
|
550
|
-
TServerFnResponseType,
|
|
451
|
+
server: <TNewServerContext = undefined, TSendContext = undefined>(
|
|
452
|
+
server: MiddlewareServerFn<
|
|
453
|
+
TMiddlewares,
|
|
454
|
+
TValidator,
|
|
455
|
+
TServerSendContext,
|
|
456
|
+
TNewServerContext,
|
|
457
|
+
TSendContext,
|
|
458
|
+
TServerFnResponseType
|
|
459
|
+
>,
|
|
460
|
+
) => MiddlewareAfterServer<
|
|
551
461
|
TMiddlewares,
|
|
552
|
-
TValidator
|
|
462
|
+
TValidator,
|
|
463
|
+
TNewServerContext,
|
|
464
|
+
TServerSendContext,
|
|
465
|
+
TClientContext,
|
|
466
|
+
TSendContext,
|
|
467
|
+
ServerFnResponseType
|
|
553
468
|
>
|
|
554
469
|
}
|
|
555
470
|
|
|
556
|
-
export
|
|
557
|
-
TMiddlewares,
|
|
558
|
-
TSendContext,
|
|
559
|
-
TClientContext,
|
|
560
|
-
> =
|
|
561
|
-
| Promise<
|
|
562
|
-
FunctionClientResultWithContext<
|
|
563
|
-
TMiddlewares,
|
|
564
|
-
TSendContext,
|
|
565
|
-
TClientContext
|
|
566
|
-
>
|
|
567
|
-
>
|
|
568
|
-
| FunctionClientResultWithContext<TMiddlewares, TSendContext, TClientContext>
|
|
569
|
-
|
|
570
|
-
export type FunctionClientResultWithContext<
|
|
571
|
-
in out TMiddlewares,
|
|
572
|
-
in out TSendContext,
|
|
573
|
-
in out TClientContext,
|
|
574
|
-
> = {
|
|
575
|
-
'use functions must return the result of next()': true
|
|
576
|
-
context: Expand<AssignAllClientContextAfterNext<TMiddlewares, TClientContext>>
|
|
577
|
-
sendContext: Expand<AssignAllServerSendContext<TMiddlewares, TSendContext>>
|
|
578
|
-
headers: HeadersInit
|
|
579
|
-
}
|
|
580
|
-
|
|
581
|
-
export interface FunctionMiddlewareAfterClient<
|
|
471
|
+
export interface MiddlewareAfterClient<
|
|
582
472
|
TMiddlewares,
|
|
583
473
|
TValidator,
|
|
584
474
|
TServerSendContext,
|
|
585
475
|
TClientContext,
|
|
586
476
|
TServerFnResponseType extends ServerFnResponseType,
|
|
587
|
-
> extends
|
|
477
|
+
> extends MiddlewareWithTypes<
|
|
588
478
|
TMiddlewares,
|
|
589
479
|
TValidator,
|
|
590
480
|
undefined,
|
|
@@ -593,7 +483,7 @@ export interface FunctionMiddlewareAfterClient<
|
|
|
593
483
|
undefined,
|
|
594
484
|
TServerFnResponseType
|
|
595
485
|
>,
|
|
596
|
-
|
|
486
|
+
MiddlewareServer<
|
|
597
487
|
TMiddlewares,
|
|
598
488
|
TValidator,
|
|
599
489
|
TServerSendContext,
|
|
@@ -601,106 +491,105 @@ export interface FunctionMiddlewareAfterClient<
|
|
|
601
491
|
TServerFnResponseType
|
|
602
492
|
> {}
|
|
603
493
|
|
|
604
|
-
export interface
|
|
494
|
+
export interface MiddlewareClient<
|
|
605
495
|
TMiddlewares,
|
|
496
|
+
TValidator,
|
|
606
497
|
TServerFnResponseType extends ServerFnResponseType,
|
|
607
498
|
> {
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
499
|
+
client: <TSendServerContext = undefined, TNewClientContext = undefined>(
|
|
500
|
+
client: MiddlewareClientFn<
|
|
501
|
+
TMiddlewares,
|
|
502
|
+
TValidator,
|
|
503
|
+
TSendServerContext,
|
|
504
|
+
TNewClientContext,
|
|
505
|
+
TServerFnResponseType
|
|
506
|
+
>,
|
|
507
|
+
) => MiddlewareAfterClient<
|
|
611
508
|
TMiddlewares,
|
|
612
|
-
|
|
613
|
-
|
|
509
|
+
TValidator,
|
|
510
|
+
TSendServerContext,
|
|
511
|
+
TNewClientContext,
|
|
512
|
+
ServerFnResponseType
|
|
614
513
|
>
|
|
615
514
|
}
|
|
616
515
|
|
|
617
|
-
export interface
|
|
516
|
+
export interface MiddlewareAfterMiddleware<
|
|
618
517
|
TMiddlewares,
|
|
619
|
-
TValidator,
|
|
620
518
|
TServerFnResponseType extends ServerFnResponseType,
|
|
621
|
-
> extends
|
|
519
|
+
> extends MiddlewareWithTypes<
|
|
622
520
|
TMiddlewares,
|
|
623
|
-
TValidator,
|
|
624
521
|
undefined,
|
|
625
522
|
undefined,
|
|
626
523
|
undefined,
|
|
627
524
|
undefined,
|
|
628
|
-
|
|
525
|
+
undefined,
|
|
526
|
+
TServerFnResponseType
|
|
629
527
|
>,
|
|
630
|
-
|
|
528
|
+
MiddlewareServer<
|
|
631
529
|
TMiddlewares,
|
|
632
|
-
|
|
530
|
+
undefined,
|
|
633
531
|
undefined,
|
|
634
532
|
undefined,
|
|
635
533
|
TServerFnResponseType
|
|
636
534
|
>,
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
export interface RequestMiddleware
|
|
640
|
-
extends RequestMiddlewareAfterMiddleware<undefined> {
|
|
641
|
-
middleware: <const TMiddlewares = undefined>(
|
|
642
|
-
middlewares: Constrain<TMiddlewares, ReadonlyArray<AnyRequestMiddleware>>,
|
|
643
|
-
) => RequestMiddlewareAfterMiddleware<TMiddlewares>
|
|
644
|
-
}
|
|
535
|
+
MiddlewareClient<TMiddlewares, undefined, TServerFnResponseType>,
|
|
536
|
+
MiddlewareValidator<TMiddlewares, TServerFnResponseType> {}
|
|
645
537
|
|
|
646
|
-
export
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
538
|
+
export interface Middleware<TServerFnResponseType extends ServerFnResponseType>
|
|
539
|
+
extends MiddlewareAfterMiddleware<unknown, TServerFnResponseType> {
|
|
540
|
+
middleware: <const TNewMiddlewares = undefined>(
|
|
541
|
+
middlewares: Constrain<TNewMiddlewares, ReadonlyArray<AnyMiddleware>>,
|
|
542
|
+
) => MiddlewareAfterMiddleware<TNewMiddlewares, TServerFnResponseType>
|
|
650
543
|
}
|
|
651
544
|
|
|
652
|
-
export
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
545
|
+
export function createMiddleware(
|
|
546
|
+
options?: {
|
|
547
|
+
validateClient?: boolean
|
|
548
|
+
},
|
|
549
|
+
__opts?: MiddlewareOptions<
|
|
550
|
+
unknown,
|
|
658
551
|
undefined,
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
options: RequestServerOptions<TMiddlewares>,
|
|
675
|
-
) => RequestMiddlewareServerFnResult<TMiddlewares, TServerContext>
|
|
676
|
-
|
|
677
|
-
export interface RequestServerOptions<TMiddlewares> {
|
|
678
|
-
request: Request
|
|
679
|
-
pathname: string
|
|
680
|
-
context: AssignAllServerContext<TMiddlewares>
|
|
681
|
-
next: RequestServerNextFn<TMiddlewares>
|
|
682
|
-
}
|
|
683
|
-
|
|
684
|
-
export type RequestServerNextFn<TMiddlewares> = <TServerContext = undefined>(
|
|
685
|
-
options?: RequestServerNextFnOptions<TServerContext>,
|
|
686
|
-
) => RequestMiddlewareServerFnResult<TMiddlewares, TServerContext>
|
|
687
|
-
|
|
688
|
-
export interface RequestServerNextFnOptions<TServerContext> {
|
|
689
|
-
context?: TServerContext
|
|
690
|
-
}
|
|
691
|
-
|
|
692
|
-
export type RequestMiddlewareServerFnResult<TMiddlewares, TServerContext> =
|
|
693
|
-
| Promise<RequestServerResult<TMiddlewares, TServerContext>>
|
|
694
|
-
| RequestServerResult<TMiddlewares, TServerContext>
|
|
552
|
+
undefined,
|
|
553
|
+
undefined,
|
|
554
|
+
ServerFnResponseType
|
|
555
|
+
>,
|
|
556
|
+
): Middleware<ServerFnResponseType> {
|
|
557
|
+
// const resolvedOptions = (__opts || options) as MiddlewareOptions<
|
|
558
|
+
const resolvedOptions =
|
|
559
|
+
__opts ||
|
|
560
|
+
((options || {}) as MiddlewareOptions<
|
|
561
|
+
unknown,
|
|
562
|
+
undefined,
|
|
563
|
+
undefined,
|
|
564
|
+
undefined,
|
|
565
|
+
ServerFnResponseType
|
|
566
|
+
>)
|
|
695
567
|
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
568
|
+
return {
|
|
569
|
+
options: resolvedOptions as any,
|
|
570
|
+
middleware: (middleware: any) => {
|
|
571
|
+
return createMiddleware(
|
|
572
|
+
undefined,
|
|
573
|
+
Object.assign(resolvedOptions, { middleware }),
|
|
574
|
+
) as any
|
|
575
|
+
},
|
|
576
|
+
validator: (validator: any) => {
|
|
577
|
+
return createMiddleware(
|
|
578
|
+
undefined,
|
|
579
|
+
Object.assign(resolvedOptions, { validator }),
|
|
580
|
+
) as any
|
|
581
|
+
},
|
|
582
|
+
client: (client: any) => {
|
|
583
|
+
return createMiddleware(
|
|
584
|
+
undefined,
|
|
585
|
+
Object.assign(resolvedOptions, { client }),
|
|
586
|
+
) as any
|
|
587
|
+
},
|
|
588
|
+
server: (server: any) => {
|
|
589
|
+
return createMiddleware(
|
|
590
|
+
undefined,
|
|
591
|
+
Object.assign(resolvedOptions, { server }),
|
|
592
|
+
) as any
|
|
593
|
+
},
|
|
594
|
+
} as unknown as Middleware<ServerFnResponseType>
|
|
703
595
|
}
|
|
704
|
-
|
|
705
|
-
export interface RequestMiddlewareAfterServer<TMiddlewares, TServerContext>
|
|
706
|
-
extends RequestMiddlewareWithTypes<TMiddlewares, TServerContext> {}
|