feat(ui): render the rail timeline as a component behind its builder

The observed-history transport is RailTimeline in src/ui/rail/, rendered
by createRailTimeline() with the same update and destroy API. Drag preview,
the coalesced 150 ms commit, release, cancel and blur behave as before; the
slider keeps the ticks it is dragged over, an update from inside a preview
cannot move the handle back, and readouts follow the handle within the same
task. utcClock moves to its own module and is still exported here.
This commit is contained in:
Sameh Khamis committed 2026-10-30 18:41:31 -07:00
1 parent dcecf5c34c
commit ce6040bde1
7 files changed
+264 -206

No files matched your search

+3 -3
View File
@@ -78,9 +78,9 @@ They contain no application state.
`v-for`, because re-rendering it would bring back the English; component
text uses `t()` instead. Shared builders become components first and
keep their imperative entry points until their owners are components:
the rail cards and card blocks (`src/ui/rail/`) render through Vue's
synchronous `render()` behind `createRailCards()` and
`createRailCardBlocks()`. Order: Scenes (done: `SceneOptions` and
the rail cards, card blocks and timeline (`src/ui/rail/`) render through
Vue's synchronous `render()` behind `createRailCards()`,
`createRailCardBlocks()` and `createRailTimeline()`. Order: Scenes (done: `SceneOptions` and
`SceneShotList` over the `gev-scenes` store), Weather, Recent imagery,
Street level, CCTV, Layers, Display, Context and Radio, the command dock,
the phone shell, then Cockpit. Layers that write into the right rail