Shallie/src/routes/[tag]/[slug]/+page.ts

24 lines
773 B
TypeScript

import { browseNextPost, browsePrevPost, browseRelatedPost, readPost } from '$lib/content/contentApi';
import { processPostHtml } from '$lib/content/postProcessor';
import { error } from '@sveltejs/kit';
import type { PageLoad } from './$types';
export const load: PageLoad = async ({ params }) => {
const postSlug = params.slug;
const post = await readPost(postSlug);
if (!post) {
throw error(404, 'Post not found');
}
const newHtml = await processPostHtml(post.html);
post.html = newHtml;
const prevPost = await browsePrevPost(post);
const nextPost = await browseNextPost(post);
const relatedPost = await browseRelatedPost(post.primary_tag?.slug, post.id);
return {
post: post,
prevPost: prevPost,
nextPost: nextPost,
relatedPost: relatedPost
};
};