aboutsummaryrefslogtreecommitdiff
path: root/src/lib/validation.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/validation.ts')
-rw-r--r--src/lib/validation.ts8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/lib/validation.ts b/src/lib/validation.ts
index 02983e4..ab9416e 100644
--- a/src/lib/validation.ts
+++ b/src/lib/validation.ts
@@ -45,11 +45,19 @@ export const updatePasswordSchema = z.object({
newPassword: registerSchema.shape.password,
})
+export const passwordChangeSchema = updatePasswordSchema.extend({
+ confirmPassword: z.string()
+}).refine((data) => data.newPassword === data.confirmPassword, {
+ message: "Passwords don't match",
+ path: ["confirmPassword"],
+})
+
// Type inference from schemas
export type RegisterInput = z.infer<typeof registerSchema>
export type LoginInput = z.infer<typeof loginSchema>
export type UpdateProfileInput = z.infer<typeof updateProfileSchema>
export type UpdatePasswordInput = z.infer<typeof updatePasswordSchema>
+export type PasswordChangeInput = z.infer<typeof passwordChangeSchema>
export const emailSchema = z.object({
email: z