export const useAuth = () => { const memberData = useState('auth.member', () => null) const isAuthenticated = computed(() => !!memberData.value) const isMember = computed(() => !!memberData.value) const checkMemberStatus = async () => { console.log('🔍 checkMemberStatus called') console.log(' - Current memberData:', !!memberData.value) try { console.log(' - Making API call to /api/auth/member...') const response = await $fetch('/api/auth/member') console.log(' - API response received:', { email: response.email, id: response.id }) memberData.value = response console.log(' - ✅ Member authenticated successfully') return true } catch (error) { console.error(' - ❌ Failed to fetch member status:', error.statusCode, error.statusMessage) memberData.value = null console.log(' - Cleared memberData') return false } } const logout = async () => { try { await $fetch('/api/auth/logout', { method: 'POST' }) memberData.value = null await navigateTo('/') } catch (error) { console.error('Logout failed:', error) } } return { isAuthenticated: readonly(isAuthenticated), isMember: readonly(isMember), memberData: readonly(memberData), checkMemberStatus, logout } }