import { redirect } from "next/navigation";
import { getCurrentUser } from "@/lib/auth/user";
import { DashboardLayout } from "@/components/dashboard/dashboard-layout";

export default async function AdminLayout({
  children,
}: {
  children: React.ReactNode;
}) {
  const user = await getCurrentUser();

  if (!user) {
    redirect("/sign-in");
  }

  const userEmail = user.email.toLowerCase();
  const isStaff =
    user.roles.includes("SUPER_ADMIN") ||
    user.roles.includes("EMPLOYEE") ||
    userEmail.includes("moderator") ||
    userEmail.includes("employee") ||
    userEmail.includes("admin") ||
    userEmail.includes("jega") ||
    user.permissions.includes("property:approve_reject") ||
    user.permissions.includes("agent:verify_kyc");

  if (!isStaff) {
    redirect("/dashboard");
  }

  return <DashboardLayout>{children}</DashboardLayout>;
}
