Files
gpx.studio/website/src/routes/+layout.server.ts

28 lines
896 B
TypeScript
Raw Normal View History

2024-09-20 13:22:05 +02:00
import { guides } from '$lib/components/docs/docs.js';
2024-09-20 14:22:55 +02:00
function getModule(language: string | undefined, guide: string) {
2024-09-20 13:22:05 +02:00
language = language ?? 'en';
2024-09-21 10:18:01 +02:00
let subguide = undefined;
if (guide.includes('/')) {
[guide, subguide] = guide.split('/');
2024-09-20 13:22:05 +02:00
}
return subguide
2024-09-24 10:42:15 +02:00
? import(`./../lib/docs/${language}/${guide}/${subguide}.mdx`)
: import(`./../lib/docs/${language}/${guide}.mdx`);
2024-09-20 13:22:05 +02:00
}
export async function load({ params }) {
const { language } = params;
2024-09-23 15:21:01 +02:00
const guideTitles: Record<string, string> = {};
2024-09-20 13:22:05 +02:00
for (let guide of Object.keys(guides)) {
2024-09-23 15:21:01 +02:00
guideTitles[guide] = (await getModule(language, guide)).metadata.title;
2024-09-20 13:22:05 +02:00
for (let subguide of guides[guide]) {
2024-09-23 15:21:01 +02:00
guideTitles[`${guide}/${subguide}`] = (await getModule(language, `${guide}/${subguide}`)).metadata.title;
2024-09-20 13:22:05 +02:00
}
}
return {
2024-09-23 15:21:01 +02:00
guideTitles
2024-09-20 13:22:05 +02:00
};
}