"use client"; import * as React from "react"; import { motion } from "framer-motion"; import { cn } from "../lib/utils"; import { staggerDelay, transitions } from "../lib/motion"; export interface TimelineItem { id: string; title: React.ReactNode; description?: React.ReactNode; time?: React.ReactNode; icon?: React.ReactNode; tone?: "default" | "positive" | "attention" | "risk" | "info"; } const DOT = { default: "bg-muted-foreground/40", positive: "bg-positive", attention: "bg-attention", risk: "bg-risk", info: "bg-action", } as const; /** An activity feed: who did what, when, newest first. */ export function Timeline({ items, className }: { items: TimelineItem[]; className?: string }) { return (
    {items.map((item, index) => ( {index < items.length - 1 ? ( ))}
); }