import React from 'react' import { Link } from 'react-router-dom' import { ArrowLeftIcon, ClockIcon } from 'lucide-react' import { PageHero } from '../components/PageHero' import { Reveal } from '../components/Reveal' import { ArticleCard } from '../components/ArticleCard' import { Newsletter } from '../components/home/Newsletter' import { useSite } from '../api' import { useLang } from '../i18n/lang' import { EditableItem } from '../admin/Editable' import { useAdmin } from '../admin/AdminContext' import { formatJalali } from '../utils/date' import { toPersianDigits } from '../utils/digits' import { PlusIcon } from 'lucide-react' function DraftBadge({ className = '' }: { className?: string }) { const { t } = useLang() return ( {t('draft')} ) } export function Blog() { const { articles } = useSite() const { t, href, lang } = useLang() const { isEditMode } = useAdmin() // دکمه «نوشتن مقاله جدید» فقط در حالت ویرایش ادمین دیده می‌شود const writeButton = isEditMode ? ( {t('writeNewArticle')} ) : null // حالت خالی — وبلاگ بدون مقاله نباید کرش کند if (articles.length === 0) { return ( <>

{t('blogEmpty')}

{t('blogEmptyText')}

{writeButton}
) } const [featured, ...rest] = articles return ( <>
{writeButton}
{`${t('articleImagePrefix')}

{t('featuredArticle')} — {featured.category} {featured.status === 'draft' && ( )}

{featured.title}

{featured.excerpt}

{lang === 'en' ? new Intl.DateTimeFormat('en-GB', { day: 'numeric', month: 'long', year: 'numeric' }).format(new Date(featured.date)) : formatJalali(featured.date)} {lang === 'en' ? featured.read : toPersianDigits(featured.read)} {t('readMore')}
{rest.map((article, i) => (
{article.status === 'draft' && ( )}
))}
) }