'use client'; import { useState } from 'react'; import PageHeader from '@/components/PageHeader'; const mockLeaderboard = [ { rank: 1, name: 'Ali Mohammadi', points: 2500, badges: 5, level: 'Gold' }, { rank: 2, name: 'Sara Ahmadi', points: 1800, badges: 3, level: 'Silver' }, { rank: 3, name: 'Reza Hosseini', points: 1200, badges: 2, level: 'Silver' }, { rank: 4, name: 'Mehdi Rezaei', points: 800, badges: 1, level: 'Bronze' }, { rank: 5, name: 'Narges Karimi', points: 500, badges: 1, level: 'Bronze' }, ]; const levelColors: Record = { Gold: 'bg-yellow-100 text-yellow-800 dark:bg-yellow-900/30 dark:text-yellow-400', Silver: 'bg-gray-100 text-gray-800 dark:bg-gray-900/30 dark:text-gray-400', Bronze: 'bg-orange-100 text-orange-800 dark:bg-orange-900/30 dark:text-orange-400', }; const badges = [ { name: 'First Donation', icon: '🎖️', description: 'Made your first donation' }, { name: 'Helping Hand', icon: '🤲', description: 'Helped 10 benefactors' }, { name: 'Consistent Giver', icon: '📅', description: 'Active for 30 days' }, { name: 'Top Donor', icon: '👑', description: 'Top 10 donor this month' }, { name: 'Community Star', icon: '⭐', description: 'Referral master' }, ]; export default function GamificationPage() { const [tab, setTab] = useState<'leaderboard' | 'badges'>('leaderboard'); return (
{tab === 'leaderboard' && (
{mockLeaderboard.map((p) => ( ))}
Rank Name Points Badges Level
{p.rank} {p.name} {p.points.toLocaleString()} {p.badges} {p.level}
)} {tab === 'badges' && (
{badges.map((b) => (
{b.icon}

{b.name}

{b.description}

))}
)}
); }