import { NextRequest, NextResponse } from "next/server";
import { createClient } from '@/utils/supabase/server';
export async function middleware(request: NextRequest) {
const { pathname } = request.nextUrl;
if (pathname === '/login') {
return NextResponse.next();
}
const supabase = createClient();
const { data } = await supabase.auth.getSession();
if (!data?.session?.user) {
return NextResponse.redirect(new URL('/login', request.url));
}
if (pathname === "/" || pathname.includes("/home")) {
return NextResponse.redirect(new URL('/dashboard', request.url));
}
return NextResponse.next();
}
export const config = {
matcher: [
'/((?!_next/static|_next/image|favicon.ico).*)',
],
};