import type { ReactNode } from "react"; import { ExternalLink } from "lucide-react"; import { groupTimelineByDate, type TimelineItem, } from "@/lib/timelineBlocks"; type MdTimelineProps = { items: TimelineItem[]; /** 每项正文已渲染的 React 节点(与 items 等长);缺省则只显示纯文本 */ renderBody?: (item: TimelineItem, index: number) => ReactNode; }; /** * 按日分组的垂直时间线(更新树)。颜色走 CSS 令牌。 */ export default function MdTimeline({ items, renderBody }: MdTimelineProps) { if (!items.length) { return

暂无时间线条目

; } const groups = groupTimelineByDate(items); let flat = 0; return (
{groups.map((g) => (
))}
); }