import type { CommitGraphRow } from '../../utils/commitGraph'; import { laneColor } from '../../utils/commitGraph'; // Geometry: each lane is a fixed-width column; the commit dot sits at NODE_Y // inside a fixed-height top zone (matching the collapsed row header), and // plain rails continue below it so lines stretch through expanded content. const LANE_WIDTH = 12; const NODE_ZONE_HEIGHT = 56; const NODE_Y = 28; const NODE_RADIUS = 3.5; const STROKE_WIDTH = 2; const laneX = (lane: number) => lane * LANE_WIDTH + LANE_WIDTH / 2; type CommitGraphStripProps = { row: CommitGraphRow; }; export default function CommitGraphStrip({ row }: CommitGraphStripProps) { const width = row.laneCount * LANE_WIDTH; const nodeX = laneX(row.nodeLane); const nodeColor = laneColor(row.nodeLane); return (