import Link from "next/link"; import type { FlowGap as Gap } from "yt-dlp-transcript-common/views/pipeline/channelFlow"; import { SidingList } from "./SidingList"; // THE GAP IS THE WORK. // // The shortfall between two stations lives in the negative space between them, // because that is literally what it is: `videos − downloaded`-shaped. Only the // LARGEST reachable gap is promoted typographically; the rest recede. The eye // lands on the bottleneck without the widths having to lie about proportion — // a 1,675 gap and a 72 gap are drawn the same size, and the type says which is // which. export function GapHead() { // Row 1 is the station numerals; a gap contributes nothing to it. return
; } export function GapRail({ gap }: { gap: Gap }) { const dashed = gap.reachable > 0; return (