'use client' import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card' import { Badge } from '@/components/ui/badge' import { formatDistanceToNow } from 'date-fns' interface RecentActivityProps { recentUsers: Array<{ _id: string name: string email: string siliconId: string createdAt: string }> recentTransactions: Array<{ _id: string type: string amount: number description: string status: string createdAt: string userId: { name: string email: string siliconId: string } }> } export default function RecentActivity({ recentUsers, recentTransactions }: RecentActivityProps) { const formatCurrency = (amount: number) => { return new Intl.NumberFormat('en-IN', { style: 'currency', currency: 'INR', minimumFractionDigits: 0, maximumFractionDigits: 0, }).format(amount) } const getTransactionBadgeColor = (type: string) => { switch (type) { case 'credit': return 'bg-green-100 dark:bg-green-900/30 text-green-800 dark:text-green-300' case 'debit': return 'bg-red-100 dark:bg-red-900/30 text-red-800 dark:text-red-300' default: return 'bg-gray-100 dark:bg-gray-800 text-gray-800 dark:text-gray-300' } } return (
No recent users
) : ( recentUsers.map((user) => ({user.name}
{user.email}
ID: {user.siliconId}
{user.createdAt ? formatDistanceToNow(new Date(user.createdAt), { addSuffix: true }) : 'N/A'}
No recent transactions
) : ( recentTransactions.map((transaction) => ({transaction.description}
{transaction.userId?.name} ({transaction.userId?.siliconId})
{transaction.createdAt ? formatDistanceToNow(new Date(transaction.createdAt), { addSuffix: true }) : 'N/A'}