import { useEffect } from 'react' import { useStore } from '@/lib/store' export function useAuth() { const { user, setUser } = useStore() useEffect(() => { const token = localStorage.getItem('authToken') if (token && !user) { // Validate token and get user info fetch('/api/auth/me', { headers: { 'Authorization': `Bearer ${token}` } }) .then(res => res.json()) .then(data => { if (data.user) { setUser(data.user) } else { localStorage.removeItem('authToken') } }) .catch(() => { localStorage.removeItem('authToken') }) } }, [user, setUser]) const logout = () => { setUser(null) localStorage.removeItem('authToken') } const isAuthenticated = !!user const token = typeof window !== 'undefined' ? localStorage.getItem('authToken') : null return { user, isAuthenticated, token, logout } }