mirror of
https://github.com/bilawalsidhu/gods-eye-view.git
synced 2026-11-05 10:53:59 +00:00
merge main 07094d9 into feat/voice-outlines
This commit is contained in:
commit
c5aa0d28c3
593 files changed
+42386
-19629
No files matched your search
@@ -3,12 +3,18 @@ import { createStandalonePlaceSearch } from './placeSearch.js';
|
||||
import { CITY_POIS } from '../cityPois.js';
|
||||
import { createApplication } from '../app/application.js';
|
||||
import { createStandaloneScene } from './scene.js';
|
||||
import { createGoogleTokenSource } from '../maps/googleTokens.js';
|
||||
import { createStandaloneControls } from './controls.js';
|
||||
import { createStandaloneData } from './data.js';
|
||||
import { createStandaloneTools } from './tools.js';
|
||||
import { resolveLocale, applyDocumentLanguage } from '../i18n/locale.js';
|
||||
import { applyDocumentTranslations, setLocale } from '../i18n/index.js';
|
||||
import {
|
||||
applyDocumentTranslations,
|
||||
getLocale,
|
||||
onLocaleChange,
|
||||
setLocale,
|
||||
} from '../i18n/index.js';
|
||||
import { mountApplicationViews } from '../ui/views/index.js';
|
||||
import { createGoogleTokenSource } from '../maps/googleTokens.js';
|
||||
|
||||
// The existing controls and layer catalog contain page-scoped state.
|
||||
let constructed = false;
|
||||
@@ -28,11 +34,14 @@ export function createStandaloneApplication({
|
||||
constructed = true;
|
||||
// Locale is resolved before any UI initialization so <html lang>/<html dir>
|
||||
// and every catalog lookup agree from the first painted frame. Module
|
||||
// scripts execute after parsing, so the DOM is ready here and every
|
||||
// data-i18n* element honors the resolved locale without a reload.
|
||||
// scripts execute after parsing, so the DOM is ready here: the views
|
||||
// translate as they render, and the page's static data-i18n* markup (the
|
||||
// loading screen) is translated here and after every language switch.
|
||||
const activeLocale = resolveLocale();
|
||||
setLocale(activeLocale);
|
||||
applyDocumentLanguage(document, activeLocale);
|
||||
// Views render the page's markup; wiring reads it.
|
||||
mountApplicationViews(document);
|
||||
applyDocumentTranslations(document);
|
||||
const loadingScreen = document.getElementById('loading-screen');
|
||||
const loaderStatus = loadingScreen.querySelector('.loader-status');
|
||||
@@ -40,6 +49,13 @@ export function createStandaloneApplication({
|
||||
let catalog;
|
||||
return createApplication({
|
||||
createScene: async (context) => {
|
||||
// A language switch applies in place; the page's own markup follows.
|
||||
context.defer(
|
||||
onLocaleChange(() => {
|
||||
applyDocumentLanguage(document, getLocale());
|
||||
applyDocumentTranslations(document);
|
||||
}),
|
||||
);
|
||||
placeSearch = createStandalonePlaceSearch({
|
||||
// The bundled city and landmark data the offline name provider reads.
|
||||
// The search package takes it as plain data rather than importing it,
|
||||
@@ -52,6 +68,8 @@ export function createStandaloneApplication({
|
||||
const scene = await createStandaloneScene({
|
||||
...context,
|
||||
googleApiKey,
|
||||
// Without a key, Google 3D can still load with tokens from the
|
||||
// app's server when it offers them.
|
||||
googleTokens: googleApiKey ? null : createGoogleTokenSource(),
|
||||
cesiumToken,
|
||||
loaderStatus,
|
||||
|
||||
Reference in new issue
Block a user