import { type NextRequest } from "next/server";
import { updateSession } from "@/lib/auth/middleware";
import { productionDbGuardResponse } from "@/lib/db/production-guard";

export async function middleware(request: NextRequest) {
  const guard = productionDbGuardResponse(request);
  if (guard) {
    return guard;
  }

  return updateSession(request);
}

export const config = {
  matcher: [
    "/",
    "/login",
    "/dashboard/:path*",
    "/tutor/:path*",
    "/admin/:path*",
    "/api/:path*",
    "/auth/:path*",
  ],
};
