import { ExternalLink, Heart, MessageCircle, Repeat2, Eye, Twitter, Check, X } from 'lucide-react'; import { formatDistanceToNow } from 'date-fns'; import { useState, useEffect } from 'react'; import type { TwitterProject } from '@/lib/csv-loader'; import { markProjectAsSeen, markProjectAsUnseen, isProjectSeen } from '@/lib/seen-projects'; import { Button } from './ui/button'; interface ProjectCardProps { project: TwitterProject; onSeenStatusChange?: () => void; } export function ProjectCard({ project, onSeenStatusChange }: ProjectCardProps) { const formattedDate = project.created_at && !isNaN(new Date(project.created_at).getTime()) ? formatDistanceToNow(new Date(project.created_at), { addSuffix: true }) : 'N/A'; const [seen, setSeen] = useState(false); useEffect(() => { setSeen(isProjectSeen(project.id)); }, [project.id]); const toggleSeen = () => { if (seen) { markProjectAsUnseen(project.id); setSeen(false); } else { markProjectAsSeen(project.id); setSeen(true); } onSeenStatusChange?.(); }; return (
{project.author_name}
@{project.author_screen_name}
{project.project_description}
{/* Seen Checkbox - moved here */}