'use server' import { revalidatePath } from 'next/cache' import { auth } from '@/lib/auth' import { userService } from '@/services/users/user.service' import { ValidationError, NotFoundError, } from '@/services/errors' export async function updatePassword(data: { currentPassword: string newPassword: string confirmPassword: string }) { try { const session = await auth() if (!session?.user) { return { success: false, error: 'Non authentifié' } } await userService.validateAndUpdatePassword( session.user.id, data.currentPassword, data.newPassword, data.confirmPassword ) revalidatePath('/profile') return { success: true, message: 'Mot de passe modifié avec succès' } } catch (error) { console.error('Error updating password:', error) if (error instanceof ValidationError) { return { success: false, error: error.message } } if (error instanceof NotFoundError) { return { success: false, error: error.message } } return { success: false, error: 'Erreur lors de la modification du mot de passe' } } }