{computed(
() => CATEGORY_INFO[event.category]?.icon || "📌",
)}
{event.title}
CATEGORY_INFO[event.category]?.color ||
"#9ca3af",
),
borderRadius: "4px",
fontSize: "11px",
color: "white",
fontWeight: "500",
}}
>
{computed(
() =>
CATEGORY_INFO[event.category]?.label ||
"Other",
)}
SOURCE_INFO[event.sourceType]?.priority === 1
? "#8b5cf6"
: "#6b7280"
),
borderRadius: "4px",
fontSize: "11px",
color: "white",
fontWeight: "500",
}}
>
{computed(
() =>
SOURCE_INFO[event.sourceType]?.label ||
"School",
)}
{/* Date badge */}
event.date ? "flex" : "none"
),
alignItems: "center",
gap: "8px",
marginBottom: "8px",
}}
>
{
const today = new Date();
today.setHours(0, 0, 0, 0);
return getUrgencyColor(
daysUntil(event.date, today),
event.isUrgent,
);
}),
borderRadius: "6px",
fontSize: "12px",
color: "white",
fontWeight: "600",
}}
>
{computed(() => {
const today = new Date();
today.setHours(0, 0, 0, 0);
return getDateLabel(
daysUntil(event.date, today),
);
})}
{computed(
() =>
`${formatDate(event.date)}${
event.time ? ` at ${event.time}` : ""
}`,
)}
{/* Action required badge */}
event.actionRequired ? "block" : "none"
),
padding: "8px 12px",
backgroundColor: "#fee2e2",
borderRadius: "6px",
marginBottom: "8px",
}}
>
{computed(() => `📌 ${event.actionRequired}`)}
{event.summary}