/** * Validation utilities for Fastify */ import { zodToJsonSchema } from 'zod-to-json-schema'; /** * Convert Zod schema to Fastify JSON schema */ export function zodToFastifySchema(zodSchema) { const jsonSchema = zodToJsonSchema(zodSchema, { target: 'openApi3', }); return { body: jsonSchema, }; } /** * Create Fastify schema from Zod schema for request body */ export function createBodySchema(schema) { return zodToFastifySchema(schema); } /** * Create Fastify schema with body and response */ export function createSchema(bodySchema, responseSchema) { const schema = zodToFastifySchema(bodySchema); if (responseSchema) { schema.response = { 200: zodToJsonSchema(responseSchema, { target: 'openApi3' }), }; } return schema; } //# sourceMappingURL=validation.js.map