import * as Slider from "@radix-ui/react-slider"; import { formatDurationMilliseconds } from "@trigger.dev/core/v3"; import { useState } from "react"; import { Paragraph } from "~/components/primitives/Paragraph"; import { Switch } from "~/components/primitives/Switch"; import * as Timeline from "~/components/primitives/Timeline"; import type { SpanProps } from "~/components/primitives/Timeline"; import { cn } from "~/utils/cn"; const maxDuration = 10_000; type Element = { span?: { startMs: number; durationMs: number; }; points?: { ms: number; }[]; }; const elements: Element[] = [ { span: { startMs: 0, durationMs: 1_121, }, }, { span: { startMs: 19, durationMs: 1_121 - 19, }, }, { span: { startMs: 19 + 22, durationMs: 412, }, }, { span: { startMs: 19 + 22 + 3, durationMs: 412 - 3, }, points: [ { ms: 19 + 22 + 3 + 412 - 3, }, ], }, { points: [ { ms: 19 + 22 + 3 + 94, }, ], }, { span: { startMs: 19 + 22 + 3 + 94 + 3, durationMs: 3, }, }, { span: { startMs: 19 + 22 + 3 + 94 + 3 + 3, durationMs: 39, }, }, { span: { startMs: 19 + 22 + 3 + 94 + 3 + 3 + 40, durationMs: 192, }, }, ]; export default function Story() { const [scale, setScale] = useState(0.25); const [durationScale, setDurationScale] = useState(0.12); const [tickCount, setTickCount] = useState(5); const [showDuration, setShowDurations] = useState(true); const durationMs = maxDuration * durationScale; return (