import { listCategories, listBrands } from "@/lib/actions/catalog";
import { getProductForEdit } from "@/lib/actions/products";
import { AddProductPageClient } from "./AddProductPageClient";

export const dynamic = "force-dynamic";

export default async function AddProductPage({
  searchParams,
}: {
  searchParams: Promise<{ edit?: string; id?: string }>;
}) {
  const sp = await searchParams;
  const isEditing = sp.edit === "true";
  const productId = sp.id ?? null;

  const [categories, brands] = await Promise.all([
    listCategories(),
    listBrands(),
  ]);

  const initialData =
    isEditing && productId ? await getProductForEdit(productId) : null;

  return (
    <AddProductPageClient
      isEditing={isEditing}
      productId={productId}
      initialData={initialData}
      categories={categories}
      brands={brands}
    />
  );
}