(options, __opts)
| 32 | ) => CreateMiddlewareResult<TRegister, TType> |
| 33 | |
| 34 | export const createMiddleware: CreateMiddlewareFn<{}> = (options, __opts) => { |
| 35 | const resolvedOptions = { |
| 36 | type: 'request', |
| 37 | ...(__opts || options), |
| 38 | } |
| 39 | const setValidator = (validator: any) => { |
| 40 | return createMiddleware( |
| 41 | {}, |
| 42 | Object.assign(resolvedOptions, { |
| 43 | validator, |
| 44 | // TODO remove upon stable |
| 45 | inputValidator: validator, |
| 46 | }), |
| 47 | ) |
| 48 | } |
| 49 | |
| 50 | return { |
| 51 | options: resolvedOptions, |
| 52 | middleware: (middleware: any) => { |
| 53 | return createMiddleware( |
| 54 | {}, |
| 55 | Object.assign(resolvedOptions, { middleware }), |
| 56 | ) |
| 57 | }, |
| 58 | validator: setValidator, |
| 59 | // TODO remove upon stable |
| 60 | inputValidator: setValidator, |
| 61 | client: (client: any) => { |
| 62 | return createMiddleware({}, Object.assign(resolvedOptions, { client })) |
| 63 | }, |
| 64 | server: (server: any) => { |
| 65 | return createMiddleware({}, Object.assign(resolvedOptions, { server })) |
| 66 | }, |
| 67 | } as any |
| 68 | } |
| 69 | |
| 70 | export type MiddlewareType = 'request' | 'function' |
| 71 |
no outgoing calls
no test coverage detected