import { base } from '$app/paths'; import { languages } from '$lib/languages'; import { getURLForLanguage } from '$lib/utils'; export async function handle({ event, resolve }) { let language = event.params.language ?? 'en'; let strings; try { strings = await import(`./locales/${language}.json`); } catch { // Unrecognized first path segment (e.g. a missing static asset like favicon.ico) language = 'en'; strings = await import(`./locales/en.json`); } const path = event.url.pathname; const page = event.route.id?.replace('/[[language]]', '').split('/')[1] ?? 'home'; let title = strings.metadata[`${page}_title`]; const description = strings.metadata[`description`]; if (page === 'help' && event.params.guide) { const [guide, subguide] = event.params.guide.split('/'); const guideModule = subguide ? await import(`./lib/docs/${language}/${guide}/${subguide}.mdx`) : await import(`./lib/docs/${language}/${guide}.mdx`); title = `${title} | ${guideModule.metadata.title}`; } const htmlTag = ``; let headTag = ` gpx.studio — ${title} `; if (page !== '404') { for (let lang of Object.keys(languages)) { headTag += ` `; } } const response = await resolve(event, { transformPageChunk: ({ html }) => html.replace('', htmlTag).replace('', headTag), }); return response; }