mirror of
https://github.com/bilawalsidhu/gods-eye-view.git
synced 2026-11-04 10:24:02 +00:00
feat(ui): render the location tray's pills, mini status and search error from a store
LocationControls (./ui/location) no longer builds the city and landmark pills or writes the mini status and the search error: it presents the tray and hands it to its publish option, so the entry stays Vue-free. The shell publishes it to a new gev-location store and connects the controls, and the dock renders it and calls chooseCity() and choosePoi(). The landmark row still expands a frame after its pills render. The search field, its toggle and the reset buttons keep their listeners. The location QA harness reads the rendered elements.
This commit is contained in:
1 parent
4966877859
commit
5f8f9bb921
14 files changed
+333
-141
No files matched your search
@@ -55,6 +55,7 @@ import { PanelNavigation } from './panelNavigation.js';
|
||||
import { applicationPinia, createUiRuntime } from './vueRuntime.js';
|
||||
import { useContextStore } from './stores/context.js';
|
||||
import { useDisplayStore } from './stores/display.js';
|
||||
import { useLocationStore } from './stores/location.js';
|
||||
|
||||
/**
|
||||
* Central UI orchestrator for the God's Eye View application.
|
||||
@@ -311,18 +312,16 @@ export class StyleManager extends ShellFacade {
|
||||
rocketLaunchesLayer: services.rocketLaunchesLayer,
|
||||
},
|
||||
elements: {
|
||||
_locationPills: this._locationPills,
|
||||
_poiRow: this._poiRow,
|
||||
_locationBarDivider: this._locationBarDivider,
|
||||
_locationSearch: this._locationSearch,
|
||||
_locationSearchError: this._locationSearchError,
|
||||
_searchToggle: this._searchToggle,
|
||||
_resetGlobeBtn: this._resetGlobeBtn,
|
||||
_cockpitResetGlobeBtn: this._cockpitResetGlobeBtn,
|
||||
_locationMiniCity: this._locationMiniCity,
|
||||
_locationMiniPoi: this._locationMiniPoi,
|
||||
},
|
||||
operations: {
|
||||
_publishLocation: (view) =>
|
||||
useLocationStore(applicationPinia()).publish(view),
|
||||
_connectLocation: (controls) =>
|
||||
useLocationStore(applicationPinia()).connect(controls),
|
||||
_beginDeferredNavigation: (...args) =>
|
||||
this._beginDeferredNavigation(...args),
|
||||
_reassertNavigationHandoff: (...args) =>
|
||||
|
||||
Reference in new issue
Block a user