// Faire vérifier le token présent dans le cookie // à WP via Pinia au 1er chargement de l'app. import type { User } from "~/types/auth.ts" export default defineNuxtPlugin(async () => { const auth = useAuthStore() const config = useRuntimeConfig() // On n'exécute la vérification que s'il y a un token // et qu'on n'a pas encore chargé l'utilisateur (ex: au refresh) if (auth.token && !auth.user) { try { // On appelle le endpoint WP qui renvoie l'utilisateur connecté // Note: l'URL dépend du plugin perso auth const data = await $fetch(`${config.public.apiBase}/users/me`, { headers: { Authorization: `Bearer ${auth.token}` } }) // Si ça marche, on met à jour l'user dans Pinia auth.user = data } catch (error) { // Si le token est expiré ou invalide, WP renvoie une erreur // On vide tout pour forcer la reconnexion console.error("Session expirée ou token invalide") auth.logout() } } })