Auth: nombre por defecto 'Ricardo Gonzalez' + persistencia en localStorage

- Si KAPPA no devuelve first_name/last_name, usa 'Ricardo Gonzalez'
- user se persiste en localStorage (kappa_user) y sobrevive refrescos
This commit is contained in:
2026-05-22 23:17:48 -05:00
parent 79240bc1c3
commit 10da34380f
2 changed files with 15 additions and 3 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

+15 -3
View File
@@ -3,9 +3,18 @@ import { ref, computed } from 'vue'
import { kappa } from '@/services/kappa-api' import { kappa } from '@/services/kappa-api'
import type { KappaLoginPayload } from '@/types/kappa' import type { KappaLoginPayload } from '@/types/kappa'
function loadUser(): { name: string; email: string } | null {
const raw = localStorage.getItem('kappa_user')
return raw ? JSON.parse(raw) : null
}
function saveUser(user: { name: string; email: string }) {
localStorage.setItem('kappa_user', JSON.stringify(user))
}
export const useAuthStore = defineStore('auth', () => { export const useAuthStore = defineStore('auth', () => {
const token = ref<string | null>(localStorage.getItem('kappa_token')) const token = ref<string | null>(localStorage.getItem('kappa_token'))
const user = ref<{ name: string; email: string } | null>(null) const user = ref<{ name: string; email: string } | null>(loadUser())
const loading = ref(false) const loading = ref(false)
const error = ref<string | null>(null) const error = ref<string | null>(null)
@@ -16,11 +25,13 @@ export const useAuthStore = defineStore('auth', () => {
error.value = null error.value = null
try { try {
const data = await kappa.login(payload) const data = await kappa.login(payload)
token.value = kappa['token'] // sync with the service instance token.value = kappa['token']
const name = `${data.user?.first_name || ''} ${data.user?.last_name || ''}`.trim()
user.value = { user.value = {
name: `${data.user?.first_name || ''} ${data.user?.last_name || ''}`.trim(), name: name || 'Ricardo Gonzalez',
email: payload.email, email: payload.email,
} }
saveUser(user.value)
return true return true
} catch (e: any) { } catch (e: any) {
error.value = e.message error.value = e.message
@@ -34,6 +45,7 @@ export const useAuthStore = defineStore('auth', () => {
kappa.logout() kappa.logout()
token.value = null token.value = null
user.value = null user.value = null
localStorage.removeItem('kappa_user')
} }
return { token, user, loading, error, isAuthenticated, login, logout } return { token, user, loading, error, isAuthenticated, login, logout }