mirror of
https://github.com/bilawalsidhu/gods-eye-view.git
synced 2026-11-15 15:52:21 +00:00
Merge feat/voice-geometry onto main
Both stack parents (#837, #842) are on main, so the voice geometry branch now builds on main directly. Conflict resolutions keep main's behaviour and add the geometry work on top: osm_query gating on every provider, restored admin identity for Nominatim outlines, merged analyst follow-up memory, and the cancelled Globe View reset instruction ahead of the generic cancellation.
This commit is contained in:
commit
ecaddd838b
102 files changed
+12925
-1006
No files matched your search
@@ -9,6 +9,7 @@
|
||||
* get_entity_context {scope:'pointer'} | {referent:n}
|
||||
* analyst_query {scope:{kind:'pointer', km?}}
|
||||
* annotate_map annotations[].target / toTarget / points[].target = 'pointer'
|
||||
* find_imagery {area:'pointer'}
|
||||
*
|
||||
* The pointer is the current turn's snapshot (see pointerContext.js); the
|
||||
* referents are the latest result's numbered list (see referents.js).
|
||||
@@ -266,6 +267,20 @@ function resolveAnnotate(args, { pointer }) {
|
||||
};
|
||||
}
|
||||
|
||||
function resolveImagery(args, { pointer }) {
|
||||
if (!isPointer(args.area)) return null;
|
||||
const target = pointerTarget(pointer);
|
||||
if (!target || !hasPosition(target)) return { error: NO_POINTER };
|
||||
return {
|
||||
args: {
|
||||
...withoutKeys(args, ['area']),
|
||||
center: { lat: target.lat, lon: target.lon },
|
||||
...(target.label ? { centerLabel: target.label } : {}),
|
||||
},
|
||||
used: { source: 'pointer', label: target.label || null },
|
||||
};
|
||||
}
|
||||
|
||||
const SCREEN_PAIRS = [
|
||||
['screenX', 'screenY'],
|
||||
['toScreenX', 'toScreenY'],
|
||||
@@ -333,6 +348,7 @@ const RESOLVERS = Object.freeze({
|
||||
get_entity_context: resolveContext,
|
||||
analyst_query: resolveAnalyst,
|
||||
annotate_map: resolveAnnotate,
|
||||
find_imagery: resolveImagery,
|
||||
});
|
||||
|
||||
/**
|
||||
|
||||
Reference in new issue
Block a user