Files
doneit-web/src/app/utils/zodValidation.ts
T

12 lines
330 B
TypeScript
Raw Normal View History

2024-08-15 14:29:11 +01:00
import { err, ok } from 'neverthrow';
import { ZodError, ZodSchema, z } from 'zod';
2024-08-22 12:27:57 +01:00
export function zodSafeValidation<T>(schema: ZodSchema, data: unknown) {
2024-08-15 14:29:11 +01:00
const validation = (schema as ZodSchema<T>).safeParse(data)
if(validation.success) {
return ok(validation.data)
} else {
return err((validation.error))
}
}