import type { Metadata } from "next";
import Container from "@/components/Container";
import PageBanner from "@/components/PageBanner";
import PostCard from "@/components/PostCard";
import Pagination from "@/components/Pagination";
import { getPosts } from "@/lib/meshkee";

export const metadata: Metadata = {
  title: "مقالات | آراد آریسمان",
  description:
    "مقالات آموزشی درباره تغذیه دام، طیور و زنبور عسل از تیم آراد آریسمان.",
};

const PAGE_SIZE = 6;

export default async function BlogPage({
  searchParams,
}: {
  searchParams: Promise<{ page?: string }>;
}) {
  const { page } = await searchParams;
  const requestedPage = Math.max(1, Number(page) || 1);

  const { items, total } = await getPosts({
    page: requestedPage,
    pageSize: PAGE_SIZE,
  });

  const totalPages = Math.max(1, Math.ceil(total / PAGE_SIZE));
  const currentPage = Math.min(requestedPage, totalPages);

  return (
    <>
      <PageBanner
        title="مقالات آراد آریسمان"
        subtitle="نکات آموزشی و تخصصی درباره تغذیه دام، طیور و زنبور عسل"
        breadcrumb="مقالات"
      />

      <section className="py-16 sm:py-20">
        <Container>
          {items.length > 0 ? (
            <>
              <div className="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6">
                {items.map((post) => (
                  <PostCard key={post.id} post={post} />
                ))}
              </div>

              <Pagination
                currentPage={currentPage}
                totalPages={totalPages}
                basePath="/blog"
              />
            </>
          ) : (
            <p className="text-center text-foreground py-10">
              به‌زودی مقالات آموزشی جدیدی منتشر می‌شود.
            </p>
          )}
        </Container>
      </section>
    </>
  );
}
