route handler for account/main

This commit is contained in:
2025-05-20 13:04:50 +03:00
parent a132c8a314
commit 73e206be5d
7 changed files with 408 additions and 16 deletions

View File

@@ -14,10 +14,12 @@ const validationRules = {
lastName: { required: false },
phone_number: { required: true },
email: { required: true },
country: { required: false },
city: { required: false },
}
const AccountPage = () => {
const { user } = useUserStore()
const { user, setUser } = useUserStore()
const { values, handleChange, handleSubmit } = useForm(
{
@@ -31,10 +33,30 @@ const AccountPage = () => {
validationRules,
async (values) => {
try {
// await updateMainTab(values)
const response = await fetch('/api/account/main', {
method: 'PATCH',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify(values),
})
if (!response.ok) {
const error = await response.json()
throw new Error(error.error || 'Ошибка при обновлении данных')
}
const result = await response.json()
setUser(result.user)
showToast({ type: 'success', message: 'Данные успешно обновлены!' })
} catch {
showToast({ type: 'error', message: 'Ой, что то пошло не так..' })
} catch (error) {
showToast({
type: 'error',
message:
error instanceof Error
? error.message
: 'Ой, что то пошло не так..',
})
}
}
)