import { NextResponse } from "next/server"
import { prisma } from "@/server/db"
import { getSession } from "@/server/session"

export async function GET() {
  const session = await getSession()
  const user = session.user

  if (!user) {
    return NextResponse.json({ error: "UNAUTHORIZED" }, { status: 401 })
  }

  // Cliente obrigatoriamente precisa estar amarrado a um tenant
  if (!user.tenantId) {
    return NextResponse.json({ error: "FORBIDDEN_NO_TENANT" }, { status: 403 })
  }

  // Se quiser restringir mais ainda (opcional):
  // if (user.role === "ADMIN" || user.role === "SUPPORT") { ... } // admin pode usar rota admin
  // aqui deixamos funcionar para qualquer role, mas sempre pelo tenant da sessão

  const domains = await prisma.domain.findMany({
    where: { tenantId: user.tenantId },
    orderBy: { createdAt: "desc" },
  })

  return NextResponse.json({ domains })
}
