summaryrefslogtreecommitdiff
path: root/src/utils/date.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/utils/date.ts')
-rw-r--r--src/utils/date.ts23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/utils/date.ts b/src/utils/date.ts
new file mode 100644
index 0000000..fb943a5
--- /dev/null
+++ b/src/utils/date.ts
@@ -0,0 +1,23 @@
+import type { CollectionEntry } from "astro:content";
+import { siteConfig } from "@/site.config";
+
+export function getFormattedDate(
+ date: Date | undefined,
+ options?: Intl.DateTimeFormatOptions,
+): string {
+ if (date === undefined) {
+ return "Invalid Date";
+ }
+
+ return new Intl.DateTimeFormat(siteConfig.date.locale, {
+ ...(siteConfig.date.options as Intl.DateTimeFormatOptions),
+ ...options,
+ }).format(date);
+}
+
+export function collectionDateSort(
+ a: CollectionEntry<"post" | "note">,
+ b: CollectionEntry<"post" | "note">,
+) {
+ return b.data.publishDate.getTime() - a.data.publishDate.getTime();
+}