import { redirect } from "next/navigation";
import { getCurrentUser } from "@/lib/auth/user";
import { getModerationMetrics, listModerationProperties } from "@/lib/services/moderation.service";
import { AdminOverviewDashboard } from "@/components/admin/admin-overview-dashboard";

export default async function AdminRootPage() {
  const user = await getCurrentUser();
  if (!user) return null;

  // If user is a Moderator, redirect to their dedicated Property Moderation Desk
  if (!user.roles.includes("SUPER_ADMIN")) {
    redirect("/admin/properties");
  }

  const [metrics, pendingRes] = await Promise.all([
    getModerationMetrics(),
    listModerationProperties(user, { status: "PENDING_REVIEW", limit: 6 }),
  ]);

  return (
    <AdminOverviewDashboard
      user={user}
      metrics={metrics}
      recentPending={pendingRes?.properties || []}
    />
  );
}

