Skip to main content

Function: validateAll()

validateAll<TQuery, TBody, TParams>(options): MiddlewareHandler<ChiveEnv>

Defined in: src/api/middleware/validation.ts:202

Combines multiple validation middlewares.

Type Parameters​

• TQuery = unknown

Query schema output type

• TBody = unknown

Body schema output type

• TParams = unknown

Params schema output type

Parameters​

options​

Validation schemas for query, body, and params

body​

ZodType<TBody, unknown, $ZodTypeInternals<TBody, unknown>>

params​

ZodType<TParams, unknown, $ZodTypeInternals<TParams, unknown>>

query​

ZodType<TQuery, unknown, $ZodTypeInternals<TQuery, unknown>>

Returns​

MiddlewareHandler<ChiveEnv>

Middleware that validates all inputs

Remarks​

Validates query, body, and params in order. First validation failure throws an error. Combined validated input is stored as an object with query, body, and params keys.

Example​

app.post(
'/api/v1/eprints/:id/comments',
validateAll({
params: paramsSchema,
body: bodySchema,
}),
(c) => {
const { params, body } = c.get('validatedInput');
}
);