diff --git a/app/components/StaticMarkdownRender.server.ts b/app/components/StaticMarkdownRender.server.ts index 0f2adc4b..b8ce6d2d 100644 --- a/app/components/StaticMarkdownRender.server.ts +++ b/app/components/StaticMarkdownRender.server.ts @@ -1,17 +1,18 @@ -import { ContentRendererMarkdown } from '#components' +import { ContentRenderer } from '#components' export default defineComponent({ props: { - path: String, + collection: { type: String as () => 'page' | 'blog', required: true }, + path: { type: String, required: true }, }, async setup (props) { if (import.meta.dev) { const { data } = await useAsyncData(() => - queryContent(props.path!).findOne(), + queryCollection(props.collection).path(props.path!).first(), ) - return () => h(ContentRendererMarkdown, { value: data.value! }) + return () => h(ContentRenderer, { value: data.value! }) } - const value = await queryContent(props.path!).findOne() - return () => h(ContentRendererMarkdown, { value }) + const value = await queryCollection(props.collection).path(props.path!).first() + return () => h(ContentRenderer, { value }) }, }) diff --git a/app/components/TheBlogIndex.server.vue b/app/components/TheBlogIndex.server.vue index 56642b99..19acb140 100644 --- a/app/components/TheBlogIndex.server.vue +++ b/app/components/TheBlogIndex.server.vue @@ -1,13 +1,9 @@ diff --git a/app/components/TheHome.server.vue b/app/components/TheHome.server.vue index 76a131c5..e93056f8 100644 --- a/app/components/TheHome.server.vue +++ b/app/components/TheHome.server.vue @@ -40,14 +40,8 @@ const { data: streams } = await useFetch('/api/streams', { }) const { data: articles } = await useAsyncData(async () => { - const result = await queryContent('/blog') - .only(['title', 'date', '_path']) - .find() - return (result as Array<{ title?: string, date: string, _path: string }>) - .map(e => ({ - ...e, - path: e._path, - })) + const result = await queryCollection('blog').select('title', 'date', 'path').all() + return result .sort((a, b) => new Date(b.date).getTime() - new Date(a.date).getTime()) .slice(0, 4) }) @@ -355,7 +349,7 @@ const { data: talks } = await useAsyncData(