'use client'; import { updateUserPassword } from '@/services/user/user'; import { zodResolver } from '@hookform/resolvers/zod'; import { Button } from '@workspace/ui/components/button'; import { Card } from '@workspace/ui/components/card'; import { Form, FormControl, FormField, FormItem, FormMessage } from '@workspace/ui/components/form'; import { Input } from '@workspace/ui/components/input'; import { useTranslations } from 'next-intl'; import { useForm } from 'react-hook-form'; import { toast } from 'sonner'; import { z } from 'zod'; const FormSchema = z .object({ password: z.string().min(6), repeat_password: z.string(), }) .refine((data) => data.password === data.repeat_password, { message: 'passwordMismatch', path: ['repeat_password'], }); export default function ChangePassword() { const t = useTranslations('profile.accountSettings'); const form = useForm>({ resolver: zodResolver(FormSchema), }); async function onSubmit(data: z.infer) { await updateUserPassword({ password: data.password }); toast.success(t('updateSuccess')); form.reset(); } return (
{t('accountSettings')}
{t('description')}
( )} /> ( )} />
); }