import { redirect } from "next/navigation";

export const dynamic = "force-dynamic";
import PlatformApp from "@/components/PlatformApp";
import { getSessionUser } from "@/lib/auth";
import { listProductsForSession } from "@/lib/products";
import { getPlatformSettings } from "@/lib/settings";

export default async function PainelPage({
  params,
}: {
  params: Promise<{ page: string }>;
}) {
  const user = await getSessionUser();
  if (!user) redirect("/login");

  const { page } = await params;
  if ((page === "usuarios" || page === "aprovacoes") && user.role !== "admin") {
    redirect("/painel/inicio");
  }
  const [products, settings] = await Promise.all([
    listProductsForSession(user),
    getPlatformSettings(),
  ]);

  return (
    <PlatformApp
      initialUser={user}
      initialProducts={products}
      initialSettings={settings}
      page={page}
    />
  );
}
