mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-20 13:26:08 +00:00
12 lines
321 B
TypeScript
12 lines
321 B
TypeScript
|
|
import { err, ok } from 'neverthrow';
|
||
|
|
import { ZodError, ZodSchema, z } from 'zod';
|
||
|
|
export function zodSafeValidation<T>(schema: ZodSchema, data) {
|
||
|
|
const validation = (schema as ZodSchema<T>).safeParse(data)
|
||
|
|
|
||
|
|
if(validation.success) {
|
||
|
|
return ok(validation.data)
|
||
|
|
} else {
|
||
|
|
return err((validation.error))
|
||
|
|
}
|
||
|
|
}
|