import { format } from 'date-fns'; import { useNavigate } from 'react-router-dom'; import { Calendar } from 'lucide-react'; import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card'; interface DashboardEvent { id: number; title: string; start_datetime: string; end_datetime: string; all_day: boolean; color?: string; is_starred?: boolean; } interface CalendarWidgetProps { events: DashboardEvent[]; } export default function CalendarWidget({ events }: CalendarWidgetProps) { const navigate = useNavigate(); const todayStr = format(new Date(), 'yyyy-MM-dd'); return (
Today's Events
{events.length === 0 ? (

No events today

) : (
{events.map((event) => (
navigate('/calendar', { state: { date: todayStr, view: 'timeGridDay', eventId: event.id } })} className="flex items-center gap-2 py-1.5 px-2 rounded-md hover:bg-white/5 transition-colors duration-150 cursor-pointer" >
{event.all_day ? 'All day' : `${format(new Date(event.start_datetime), 'h:mm a')} – ${format(new Date(event.end_datetime), 'h:mm a')}`} {event.title}
))}
)} ); }