import { notFound } from "next/navigation";
import Link from "next/link";
import { ArrowLeft } from "lucide-react";
import { prisma } from "@/lib/prisma";
import { TestimonialForm } from "@/components/admin/testimonial/TestimonialForm";

export default async function EditTestimonialPage({
  params,
}: {
  params: Promise<{ id: string }>;
}) {
  const { id } = await params;
  const testimonialId = Number(id);

  if (Number.isNaN(testimonialId)) {
    notFound();
  }

  const testimonial = await prisma.testimonial.findUnique({
    where: { id: testimonialId },
  });

  if (!testimonial) {
    notFound();
  }

  return (
    <div className="space-y-6">
      <div className="flex items-center gap-4">
        <Link
          href="/admin/testimonials"
          className="rounded-full p-2 text-gray-500 transition hover:bg-bg-light hover:text-heading"
        >
          <ArrowLeft className="h-5 w-5" />
        </Link>
        <h1 className="text-2xl font-bold text-heading">
          Edit Testimoni
        </h1>
      </div>

      <div className="rounded-2xl bg-white p-6 md:p-8 shadow-sm border border-gray-50">
        <TestimonialForm initialData={testimonial} />
      </div>
    </div>
  );
}
