mirror of
https://github.com/bilawalsidhu/gods-eye-view.git
synced 2026-11-05 10:53:59 +00:00
feat(ui): render rail cards and card blocks as components behind their builders
The rail cards, card blocks, settings, chips and row lists are Vue components in src/ui/rail/. createRailCards() and createRailCardBlocks() keep their update and destroy API and patch the components synchronously with render(), so Weather and Recent imagery are unchanged. Controls of a removed block dispatch nothing, a released range keeps its value until the owner's next update, and range values are written only when they differ. Weather's remount state is keyed by its panel. Tests of rendered parts run on happy-dom.
This commit is contained in:
1 parent
d9fdcfc641
commit
dcecf5c34c
20 files changed
+754
-766
No files matched your search
@@ -76,11 +76,16 @@ They contain no application state.
|
||||
the store, so the owner keeps every decision. Static markup that the
|
||||
translation pass rewrites (`data-i18n*`) stays outside `v-if` and
|
||||
`v-for`, because re-rendering it would bring back the English; component
|
||||
text uses `t()` instead. Order: Scenes (done: `SceneOptions` and
|
||||
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
|
||||
`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
|
||||
directly gain a slot instead.
|
||||
|
||||
4. **Cleanup.** The build-time template expansion and the attribute
|
||||
translation pass are retired once nothing uses them. Hosts register panels
|
||||
and rail items through an explicit API instead of editing markup.
|
||||
|
||||
Reference in new issue
Block a user