Add scroll cap and fix all-day event time display

Restore max-h-[400px] on ScrollArea so the widget caps and scrolls
instead of growing unbounded and making cards uneven. All-day events
now show "All day" instead of the misleading "12:00 AM" time.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Kyle 2026-03-11 21:37:04 +08:00
parent 28e1673f05
commit 076b2fc3c9

View File

@ -164,6 +164,7 @@ export default function UpcomingWidget({ items }: UpcomingWidgetProps) {
if (isToday(d)) return 'Due today';
return null; // date shown in header
}
if (item.type === 'event' && item.all_day) return 'All day';
if (!item.datetime) return null;
const d = new Date(item.date + 'T00:00:00');
if (isToday(d)) return getRelativeTime(item.datetime);
@ -215,7 +216,7 @@ export default function UpcomingWidget({ items }: UpcomingWidgetProps) {
{focusMode ? 'Nothing for today or tomorrow' : 'Nothing upcoming'}
</p>
) : (
<ScrollArea className="flex-1">
<ScrollArea className="flex-1 max-h-[400px]">
<div>
{dayEntries.map(([dateKey, dayItems], groupIdx) => {
const isCollapsed = collapsedDays.has(dateKey);