import { Ban, LogOut, Calendar, Clock, AlertTriangle, Sparkles } from 'lucide-react' import { useAuthStore } from '@/store/auth' import { NeonButton } from '@/components/ui' interface BanInfo { banned_at: string | null banned_until: string | null reason: string | null } interface BannedScreenProps { banInfo: BanInfo } function formatDate(dateStr: string | null) { if (!dateStr) return null return new Date(dateStr).toLocaleString('ru-RU', { day: '2-digit', month: 'long', year: 'numeric', hour: '2-digit', minute: '2-digit', timeZone: 'Europe/Moscow', }) + ' (МСК)' } export function BannedScreen({ banInfo }: BannedScreenProps) { const logout = useAuthStore((state) => state.logout) const bannedAtFormatted = formatDate(banInfo.banned_at) const bannedUntilFormatted = formatDate(banInfo.banned_until) return (
{/* Background effects */}
{/* Icon */}
{/* Decorative dots */}
{/* Title with glow */}

Аккаунт заблокирован

Аккаунт заблокирован

Ваш доступ к платформе был ограничен администрацией.

{/* Ban Info Card */}
{bannedAtFormatted && (

Дата блокировки

{bannedAtFormatted}

)}

Срок

{bannedUntilFormatted ? `до ${bannedUntilFormatted}` : 'Навсегда'}

{banInfo.reason && (

Причина

{banInfo.reason}

)}
{/* Info text */}

{banInfo.banned_until ? 'Ваш аккаунт будет автоматически разблокирован по истечении срока.' : 'Если вы считаете, что блокировка ошибочна, обратитесь к администрации.'}

{/* Logout button */} } > Выйти из аккаунта {/* Decorative sparkles */}
) }