UNPKG

spacerr

Version:

This starter pack provides a comprehensive Next.js setup, built on top of `create-next-app`, and includes additional features. Developed by spacerrr.

46 lines (40 loc) 1.36 kB
import { z } from "zod"; export const signInFormSchema = z.object({ email: z.union([ z.string().email("Invalid email address"), z .string() .min(6, "Email must be at least 6 characters long") .max(50, "Email must be at most 50 characters long"), ]), password: z.string().min(4, "Password must be at least 4 characters long"), }); export const signUpFormSchema = z .object({ name: z.string().min(2).max(50), email: z.string().email(), password: z.string().min(6).max(100), confirmPassword: z.string().min(6, "Confirm password must be at least 6 characters long"), }) .refine((data) => data.password === data.confirmPassword, { message: "Passwords don't match", path: ["confirmPassword"], }); export const verifyUserEmailSchema = z.object({ token: z.string(), email: z.string().email(), }); export const recoverPasswordSchema = z.object({ email: z.string().email(), }); export const resetPasswordSchema = z .object({ email: z.string().email(), token: z.string(), password: z.string().min(6, "Password must be at least 6 characters long"), confirmPassword: z.string().min(6, "Confirm password must be at least 6 characters long"), }) .refine((data) => data.password === data.confirmPassword, { message: "Passwords don't match", path: ["confirmPassword"], });