import type { EventSummary } from '../../types' import { startOfWeek, addDays, isSameDay, eventOccursOnDay, formatDayHeader, formatTime, HOURS, HOUR_PX, timedLayout, } from '../../dateUtils' export default function WeekGrid({ events, date, onSelectDate, onSelectEvent }: { events: EventSummary[] date: Date onSelectDate?: (d: Date) => void onSelectEvent: (id: number) => void }) { const weekStart = startOfWeek(date) const days = Array.from({ length: 7 }, (_, i) => addDays(weekStart, i)) const today = new Date() const allDayByDay = days.map(day => events.filter(ev => ev.all_day && eventOccursOnDay(ev, day))) const timedByDay = days.map(day => events.filter(ev => !ev.all_day && eventOccursOnDay(ev, day))) return (