Files
cultureat-bak/wp-content/themes/ccat/app/composables/useLogout.ts
Pascal Martineau 312a6f1b62
Some checks failed
NuxtHub deployment / deploy (push) Failing after 21s
WordPress deployment / deploy (push) Successful in 8s
feat: Initial Nuxt app
2025-08-27 13:37:40 -04:00

24 lines
737 B
TypeScript

export function useLogout() {
const toast = useToast();
const redirect = useRoute().query.redirect as string || "/";
const router = useRouter();
const { fetch: refreshUserSession } = useUserSession();
async function onLogoutClick() {
try {
const result = await $fetch("/api/logout", { method: "POST" });
if (!result.success) {
throw new Error("Une erreur est survenue.");
}
await router.push(redirect);
await refreshUserSession();
}
catch (error) {
const message = error instanceof Error ? error.message : "Une erreur est survenue.";
toast.add({ title: "Échec de la déconnexion", description: message, color: "error" });
}
}
return { onLogoutClick };
}