import { pb } from "@/lib/pb"; import Link from "next/link"; import { Badge } from "@/components/ui/badge"; import { getDictionary } from "@/lib/dictionaries"; interface PBPost { id: string; title: string; slug: string; excerpt: string; lang: string; created: string; published: boolean; } interface Props { params: Promise<{ lang: string }>; } export default async function BlogIndexPage({ params }: Props) { const { lang } = await params; const dict = await getDictionary(lang); // Подключаем словарь let records: PBPost[] = []; try { records = await pb.collection(`posts_${lang}`).getFullList({ filter: "published = true", sort: "-created", fetch: (url, config) => fetch(url, { ...config, next: { revalidate: 3600 } }), }); } catch (err) { console.error("Failed to fetch blog posts:", err); } return (
{dict.blog.archive}

{dict.blog.systemLogs}

{records.length === 0 ? (

{dict.blog.emptySector}

) : (
{records.map((post) => (
{new Date(post.created).toLocaleDateString( lang === "ru" ? "ru-RU" : "en-US", )}

{post.title}

{post.excerpt}

{dict.blog.decrypt}
))}
)}
); }