diff --git a/src/app/(app)/calendar/page.tsx b/src/app/(app)/calendar/page.tsx index 27794e8..a54ed24 100644 --- a/src/app/(app)/calendar/page.tsx +++ b/src/app/(app)/calendar/page.tsx @@ -45,19 +45,21 @@ export default function CalendarPage() { const days = eachDayOfInterval({ start: calStart, end: calEnd }); - const [selectedDay, setSelectedDay] = useState(null); + const [selectedDay, setSelectedDay] = useState(() => new Date()); const dayEvents = (day: Date) => events.filter((e) => isSameDay(new Date(e.startedAt), day)); - const selectedDayEvents = selectedDay ? dayEvents(selectedDay) : []; + const selectedDayEvents = dayEvents(selectedDay); function prevMonth() { - setCursor(new Date(cursor.getFullYear(), cursor.getMonth() - 1, 1)); - setSelectedDay(null); + const first = new Date(cursor.getFullYear(), cursor.getMonth() - 1, 1); + setCursor(first); + setSelectedDay(first); } function nextMonth() { - setCursor(new Date(cursor.getFullYear(), cursor.getMonth() + 1, 1)); - setSelectedDay(null); + const first = new Date(cursor.getFullYear(), cursor.getMonth() + 1, 1); + setCursor(first); + setSelectedDay(first); } return ( @@ -75,7 +77,7 @@ export default function CalendarPage() { className="w-9 h-9 rounded-lg flex items-center justify-center text-slate-500 dark:text-slate-400 hover:bg-slate-100 dark:hover:bg-slate-800 transition"> - @@ -102,13 +104,13 @@ export default function CalendarPage() { {days.map((day, i) => { const inMonth = day.getMonth() === cursor.getMonth(); const evs = dayEvents(day); - const isSelected = selectedDay ? isSameDay(day, selectedDay) : false; + const isSelected = isSameDay(day, selectedDay); const today = isToday(day); return (