From e7530846f236534cc31a0c322c1b9ea6a5d15deb Mon Sep 17 00:00:00 2001 From: Fred Boniface Date: Sat, 14 Feb 2026 21:54:25 +0000 Subject: [PATCH] Improve map loading functions --- src/routes/map/[slug]/+page.ts | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/src/routes/map/[slug]/+page.ts b/src/routes/map/[slug]/+page.ts index 6210c48..7fb4048 100644 --- a/src/routes/map/[slug]/+page.ts +++ b/src/routes/map/[slug]/+page.ts @@ -1,27 +1,30 @@ import type { PageLoad } from '/$types'; import { error } from '@sveltejs/kit'; -export const load: PageLoad = async ({ params, fetch }) => { +const mapDataFiles = import.meta.glob('$lib/assets/route/*.json', { query: '?json' }); + +export const load: PageLoad = async ({ params }) => { const { slug } = params; + const path = `/src/lib/assets/route/${slug}.json`; + console.log(`Finding path: ${path}`); + + if (!(path in mapDataFiles)) { + throw error(404, { + message: `Route ${slug} not found` + }); + } + try { - const res = await fetch(`/mapFiles/json/${slug}.json`); - - if (!res.ok) { - throw error(404, { - message: `Route ${slug} not found` - }); - } - - const rawData = await res.json(); + const rawData = await mapDataFiles[path](); return { route: rawData, - slug: slug + slug: slug, }; + } catch (err) { console.error(`Error loading map ${slug}: `, err); - throw error(500, { message: `Failed to parse map data for ${slug}` });