"use server"; import { revalidatePath } from "next/cache"; import { PreferencesService } from "@/lib/services/preferences.service"; import { AppError } from "@/utils/errors"; import type { UserPreferences } from "@/types/preferences"; /** * Met à jour les préférences utilisateur */ export async function updatePreferences( newPreferences: Partial ): Promise<{ success: boolean; message: string; data?: UserPreferences }> { try { const updatedPreferences = await PreferencesService.updatePreferences(newPreferences); // Invalider les pages qui utilisent les préférences revalidatePath("/"); revalidatePath("/libraries"); revalidatePath("/series"); return { success: true, message: "Préférences mises à jour", data: updatedPreferences }; } catch (error) { if (error instanceof AppError) { return { success: false, message: error.message }; } return { success: false, message: "Erreur lors de la mise à jour des préférences" }; } }