guidebook/src/routes/p/[...name].js

32 lines
645 B
JavaScript

import { getPost, getPostsFlat, isDir } from "$lib/pages";
export async function get({ params }) {
let dir = await isDir(params.name);
if (dir === null) {
return {status: 404};
} else if (dir) {
return {
body: {
pages: await getPostsFlat(params.name)
}
}
} else {
let pages = [];
let split = params.name.split('/');
if (split.length > 1) {
pages = await getPostsFlat(split[split.length - 2]);
}
let post = await getPost(params.name);
pages = pages.filter(l => l.path !== post.path);
return {
body: {
page: post,
pages: pages
}
}
}
}