import { toTypedSchema } from "@vee-validate/zod"; import { z } from "zod"; import { justOneWord } from ".."; import * as M from "../messages"; const questionObjVal = { name: z .string({ required_error: M.requiredMessage }) .regex(justOneWord, M.nameMessage), surname: z .string({ required_error: M.requiredMessage }) .regex(justOneWord, M.nameMessage), email: z.string({ required_error: M.requiredMessage }).email(M.emailMessage), phone: z .string({ required_error: M.requiredMessage }) .min(1, M.requiredMessage), message: z .string({ required_error: M.requiredMessage }) .min(1, M.requiredMessage), terms: z.boolean({ required_error: M.requiredMessage }).refine((val) => { return val === true; }), }; export const questionSchema = toTypedSchema( z.object(questionObjVal).required() );