'use client'; import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card'; import { Avatar, AvatarFallback } from '@/components/ui/avatar'; import { Badge } from '@/components/ui/badge'; import { formatDistanceToNow } from 'date-fns'; import { ActivityLog } from '@/types/dashboard'; import Link from 'next/link'; interface RecentActivityProps { activities: ActivityLog[] | undefined; isLoading: boolean; } export function RecentActivity({ activities, isLoading }: RecentActivityProps) { if (isLoading) { return ( Recent Activity
{[...Array(3)].map((_, i) => (
))}
); } if (!activities || activities.length === 0) { return ( Recent Activity No recent activity. ); } return ( Recent Activity
{activities.map((activity) => (
{activity.user.initials}
{activity.user.name} {activity.action}
{formatDistanceToNow(new Date(activity.createdAt), { addSuffix: true, })}

{activity.description}

))}
); }