import { PipeTransform, BadRequestException } from '@nestjs/common'; import { ZodSchema } from 'zod'; export class ZodValidationPipe implements PipeTransform { constructor(private schema: ZodSchema) {} transform(value: unknown) { try { const result = this.schema.parse(value); return result; } catch (error: any) { throw new BadRequestException('Validation failed', { cause: error, description: error.errors, }); } } }