From 39b8d2e70d615c149b7e57eaea62ac9999b39905 Mon Sep 17 00:00:00 2001 From: vcoppe Date: Sun, 9 Nov 2025 18:45:20 +0100 Subject: [PATCH] initialize missing settings --- .../src/lib/components/embedding/Embedding.svelte | 5 +++-- website/src/lib/logic/settings.ts | 12 ++++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/website/src/lib/components/embedding/Embedding.svelte b/website/src/lib/components/embedding/Embedding.svelte index 9a9fdfee3..6b4b8a2be 100644 --- a/website/src/lib/components/embedding/Embedding.svelte +++ b/website/src/lib/components/embedding/Embedding.svelte @@ -6,7 +6,7 @@ import Map from '$lib/components/map/Map.svelte'; import LayerControl from '$lib/components/map/layer-control/LayerControl.svelte'; import OpenIn from '$lib/components/embedding/OpenIn.svelte'; - import { readable, writable } from 'svelte/store'; + import { writable } from 'svelte/store'; import type { GPXFile } from 'gpx'; import { allowedEmbeddingBasemaps, @@ -17,7 +17,6 @@ import { settings } from '$lib/logic/settings'; import { fileStateCollection } from '$lib/logic/file-state'; import { gpxStatistics, slicedGPXStatistics } from '$lib/logic/statistics'; - import { GPXStatisticsTree } from '$lib/logic/statistics-tree'; import { loadFile } from '$lib/logic/file-actions'; import { selection } from '$lib/logic/selection'; import { untrack } from 'svelte'; @@ -41,6 +40,8 @@ directionMarkers, } = settings; + settings.initialize(); + function applyOptions() { let downloads: Promise[] = getFilesFromEmbeddingOptions(options).map( (url) => { diff --git a/website/src/lib/logic/settings.ts b/website/src/lib/logic/settings.ts index 622c6e4a1..f4e6e2cf8 100644 --- a/website/src/lib/logic/settings.ts +++ b/website/src/lib/logic/settings.ts @@ -98,6 +98,10 @@ export class SettingInitOnFirstRead { }); } + initialize() { + this.set(this._initial); + } + disconnectFromDatabase() { this._subscription?.unsubscribe(); this._subscription = null; @@ -174,4 +178,12 @@ export const settings = { } } }, + initialize() { + for (const key in settings) { + const setting = (settings as any)[key]; + if (setting instanceof SettingInitOnFirstRead) { + setting.initialize(); + } + } + }, };