diff --git a/src/src/content/config.ts b/src/src/content/config.ts index af1d159..f36f0ce 100644 --- a/src/src/content/config.ts +++ b/src/src/content/config.ts @@ -7,7 +7,9 @@ export const collections = { description: z.string(), author: z.string(), tags: z.array(z.string()), - date: z.coerce.date(), + date: z.coerce.date().transform((date) => { + return new Date(date.setUTCHours(12, 0, 0, 0)); + }), image: z.string().optional(), imagePosition: z.string().optional(), }), diff --git a/src/src/pages/blog/[...slug].astro b/src/src/pages/blog/[...slug].astro index 3d391a6..df2fcc5 100644 --- a/src/src/pages/blog/[...slug].astro +++ b/src/src/pages/blog/[...slug].astro @@ -17,7 +17,7 @@ export async function getStaticPaths() { ...post, data: { ...post.data, - date: new Date(post.data.date).toLocaleDateString("en-US", { + date: post.data.date.toLocaleDateString("en-US", { year: "numeric", month: "long", day: "numeric" diff --git a/src/src/pages/blog/index.astro b/src/src/pages/blog/index.astro index 24d5eec..bd16b94 100644 --- a/src/src/pages/blog/index.astro +++ b/src/src/pages/blog/index.astro @@ -2,18 +2,25 @@ import { getCollection } from "astro:content"; import ContentLayout from "@/layouts/content.astro"; import { BlogPostList } from "@/components/blog/post-list"; - const posts = (await getCollection("blog", ({ data }) => { return data.isDraft !== true; })).sort((a, b) => { - return new Date(b.data.date).valueOf() - new Date(a.data.date).valueOf() -}); + return b.data.date.valueOf() - a.data.date.valueOf() +}).map(post => ({ + ...post, + data: { + ...post.data, + date: post.data.date.toLocaleDateString("en-US", { + year: "numeric", + month: "long", + day: "numeric" + }) + } +})); --- - -