feat: splitpages now have better rich content support

This commit is contained in:
William Grant 2023-04-20 15:41:13 +10:00
parent ebd30647cb
commit 9331a27397
4 changed files with 9 additions and 7 deletions

View File

@ -21,7 +21,7 @@ export default function BlogPost(props: Props) {
dispatch(setPageType(PageType.POST));
dispatch(setPostTitle(post.title));
}
}, []);
}, [dispatch, post]);
return (
<>

View File

@ -58,10 +58,11 @@ export async function getStaticProps({ params }) {
page = await cms.fetchPageById(SideMenuItem[id]);
} else {
page = await cms.fetchEntryBySlug(url, 'post');
// embedded links in post body need metadata for preview
page.body = await generateLinkMeta(page.body);
}
// embedded links in post body need metadata for preview
page.body = await generateLinkMeta(page.body);
return {
props: {
page,

View File

@ -48,10 +48,11 @@ export const getServerSideProps: GetServerSideProps = async (
let query = slug;
if (slug.indexOf('blog/') >= 0) query = slug.split('blog/')[1];
page = await cms.fetchEntryPreview(query, 'post');
// embedded links in post body need metadata for preview
page.body = await generateLinkMeta(page.body);
}
// embedded links in post body need metadata for preview
page.body = await generateLinkMeta(page.body);
console.log(`Built Preview %c${slug}`, 'color: purple;');
return {
props: {

View File

@ -2,8 +2,8 @@ import { Block, Document, Inline } from '@contentful/rich-text-types';
import {
ContentfulClientApi,
EntryCollection,
createClient,
Tag,
createClient,
} from 'contentful';
import {
IAuthor,
@ -335,7 +335,7 @@ export class CmsApi {
};
};
public convertPage = (rawData): ISplitPage => {
public convertPage = (rawData: any): ISplitPage => {
const rawPage = rawData.fields;
const rawHero = rawPage?.hero ? rawPage?.hero?.fields : null;