import { type NextRequest, NextResponse } from "next/server" import { updateSupabaseSession } from "@/lib/supabase/middleware" export async function middleware(request: NextRequest) { const { user, supabaseResponse } = await updateSupabaseSession(request) const isReaderRoute = request.nextUrl.pathname.startsWith("/reader") const isAuthRoute = request.nextUrl.pathname.startsWith("/sign-") if (!user && isReaderRoute) { const signInUrl = new URL("/sign-in", request.url) return NextResponse.redirect(signInUrl) } if (user && isAuthRoute) { const readerUrl = new URL("/reader", request.url) return NextResponse.redirect(readerUrl) } return supabaseResponse } export const config = { matcher: [ "/((?!_next/static|_next/image|favicon.ico|manifest.json|sw.js|icons|api/billing/webhook).*)", ], }