import { useRouter } from "@tanstack/react-router"; import { toast } from "sonner"; import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; import { authClient } from "@/lib/auth-client"; import { useAppForm } from "@/lib/formSutff"; export default function ChangePassword() { const router = useRouter(); const form = useAppForm({ defaultValues: { currentPassword: "", newPassword: "", confirmPassword: "", }, onSubmit: async ({ value }) => { if (value.newPassword !== value.confirmPassword) { toast.error("Passwords do not match"); return; } const { data, error } = await authClient.changePassword({ newPassword: value.newPassword, currentPassword: value.currentPassword, revokeOtherSessions: true, }); if (data) { toast.success("Password has been updated"); form.reset(); router.invalidate(); //navigate({ to: "/login" }); } if (error) { toast.success(error.message); } }, }); return (
Change password
{ e.preventDefault(); form.handleSubmit(); }} > {(field) => ( )} {(field) => ( )} {(field) => ( )}
Update Password
); }