import { defineStore } from 'pinia' import { ref, computed } from 'vue' // Token NÃO vive aqui — fica server-side em Redis, exposto ao front // apenas como cookie httpOnly opaco. Este store guarda só metadados do usuário, // hidratados via /api/auth/me em plugins/auth.server.ts (SSR) e useAuth().fetchMe(). export const useAuthStore = defineStore('auth', () => { const user = ref(null) const isAuthenticated = computed(() => !!user.value) const nomeUsuario = computed(() => user.value?.name ?? '') const documento = computed(() => user.value?.documento ?? '') const roles = computed(() => user.value?.roles ?? []) function setUser(info) { user.value = info } function clearUser() { user.value = null } return { user, isAuthenticated, nomeUsuario, documento, roles, setUser, clearUser, } })