import type { Metadata } from "next"; import Link from "next/link"; import { Container } from "@/components/Container"; import { PageHero } from "@/components/layout/PageHero"; import { Placeholder } from "@/components/Placeholder"; import { blogHref, blogImage, fetchBlogs } from "@/lib/blog"; import { blogPosts } from "@/lib/data"; import { faDigits, formatFaDate } from "@/lib/format"; export const revalidate = 60; export const metadata: Metadata = { title: "مقالات", description: "نکته‌هایی از تعمیرگاه و بورس قطعات لوازم خانگی برادران برقعی.", }; export default async function BlogPage({ searchParams, }: { searchParams: Promise<{ page?: string }>; }) { const { page: pageParam } = await searchParams; const page = Math.max(1, Number(pageParam) || 1); const result = await fetchBlogs({ page, pageSize: 12 }); const usingApi = result.items.length > 0; const pageCount = usingApi ? Math.max(1, Math.ceil((result.total || result.items.length) / (result.pageSize || 12))) : 1; return ( <>
{usingApi ? ( <>
{result.items.map((post) => (

{formatFaDate(post.publishedAt || post.createdAt)}

{post.title}

{post.abstract ? (

{post.abstract}

) : null} ))}
{pageCount > 1 ? (
{Array.from({ length: pageCount }, (_, index) => { const number = index + 1; return ( {faDigits(number)} ); })}
) : null} ) : (
{blogPosts.map((post) => (

{post.date}

{post.title}

{post.excerpt}

))}
)}
); }