import { notFound } from "next/navigation";

import { AssetDefinitionForm } from "../_components/asset-definition-form/asset-definition-form";
import { fetchBackendAssetDefinitionDetail } from "../_lib/asset-definition-server-api";

type PageProps = {
  params: Promise<{ id: string }>;
};

export default async function AssetDefinitionUpdatePage({ params }: PageProps) {
  const { id } = await params;

  try {
    const { row, moduleOptions } = await fetchBackendAssetDefinitionDetail(
      decodeURIComponent(id),
    );
    return (
      <AssetDefinitionForm
        mode="update"
        initialRow={row}
        moduleOptions={moduleOptions}
      />
    );
  } catch {
    notFound();
  }
}
