import { NextResponse } from "next/server" function getProvidedToken(request: Request) { const authHeader = request.headers.get("authorization") || "" const bearerToken = authHeader.startsWith("Bearer ") ? authHeader.slice("Bearer ".length).trim() : "" return request.headers.get("x-admin-token") || bearerToken } export function requireAdminToken(request: Request) { const configuredToken = process.env.ADMIN_API_TOKEN if (!configuredToken) { return NextResponse.json( { error: "Admin API is disabled." }, { status: 503 } ) } const providedToken = getProvidedToken(request) if (providedToken !== configuredToken) { return NextResponse.json({ error: "Unauthorized" }, { status: 401 }) } return null } export function isAdminUiEnabled() { return process.env.ADMIN_UI_ENABLED === "true" }