import { Job } from "@/lib/types"; import Chip from "./chip"; import formatDate from "@/utils/format-date"; interface ExperienceTimelineProps { jobs: Job[]; newestFirst?: boolean; } const ExperienceTimeline = ({ jobs, newestFirst = true }: ExperienceTimelineProps) => { const sorted = [...jobs].sort((a, b) => { const diff = new Date(b.start_date).getTime() - new Date(a.start_date).getTime(); return newestFirst ? diff : -diff; }); return (
{sorted.map((job) => (

{job.position}

{formatDate(job.start_date)} –{" "} {job.still_working ? "Present" : job.end_date ? formatDate(job.end_date) : "—"}

{job.company}

{job.summary && (

{job.summary}

)} {job.sub_phases && job.sub_phases.length > 0 && (
{job.sub_phases.map((phase) => (
{phase.label} {formatDate(phase.start_date)} –{" "} {phase.end_date ? formatDate(phase.end_date) : "Present"}
    {phase.bullets.map((b, i) => (
  • {b}
  • ))}
))}
)}

Technologies

{job.technologies.map((tech) => ( ))}
))}
); }; export default ExperienceTimeline;