export default defineNuxtRouteMiddleware(async (to, from) => { // Skip on server-side rendering if (process.server) { console.log('🛡️ Auth middleware - skipping on server') return } const { memberData, checkMemberStatus } = useAuth() const { openLoginModal } = useLoginModal() console.log('🛡️ Auth middleware (CLIENT) - route:', to.path) console.log(' - memberData exists:', !!memberData.value) console.log(' - Running on:', process.server ? 'SERVER' : 'CLIENT') // If no member data, try to check authentication if (!memberData.value) { console.log(' - No member data, checking authentication...') const isAuthenticated = await checkMemberStatus() console.log(' - Authentication result:', isAuthenticated) if (!isAuthenticated) { console.log(' - ❌ Authentication failed, showing login modal') // Open login modal instead of redirecting openLoginModal({ title: 'Sign in to continue', description: 'You need to be signed in to access this page', dismissible: true, redirectTo: to.fullPath, }) // Abort navigation - stay on current page with modal open return abortNavigation() } } console.log(' - ✅ Authentication successful for:', memberData.value?.email) })