From 9fb9881c74c9acb2f1be371739347c00b0aac087 Mon Sep 17 00:00:00 2001 From: Lewin Kelly Date: Tue, 11 Jul 2023 23:54:37 +0100 Subject: [PATCH] Add reviews page with list of revival reviews --- src/lib/components/Navbar.svelte | 2 +- src/routes/reviews/+page.svelte | 31 +++++++++++++++++++++++++++++++ src/routes/reviews/+page.ts | 27 +++++++++++++++++++++++++++ 3 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 src/routes/reviews/+page.svelte create mode 100644 src/routes/reviews/+page.ts diff --git a/src/lib/components/Navbar.svelte b/src/lib/components/Navbar.svelte index 52977a6..112bb9c 100644 --- a/src/lib/components/Navbar.svelte +++ b/src/lib/components/Navbar.svelte @@ -15,7 +15,7 @@ Home About Revival Index - Reviews + Reviews Blog diff --git a/src/routes/reviews/+page.svelte b/src/routes/reviews/+page.svelte new file mode 100644 index 0000000..13b6502 --- /dev/null +++ b/src/routes/reviews/+page.svelte @@ -0,0 +1,31 @@ + + + + Reviews • Revival Archive + + +

Reviews

+ +{#each data.reviews.sort((a, b) => new Date(b.date).getTime() - new Date(a.date).getTime()) as review} + +
+

{review.name}

+

+ {when(review.date)} +

+
+
+{/each} + + diff --git a/src/routes/reviews/+page.ts b/src/routes/reviews/+page.ts new file mode 100644 index 0000000..31e4587 --- /dev/null +++ b/src/routes/reviews/+page.ts @@ -0,0 +1,27 @@ +export async function load() { + const allPostFiles = import.meta.glob("../../../pages/revivals/*.md") + + return { + reviews: Promise.all( + Object.keys(allPostFiles).map(async path => { + const { metadata } = (await allPostFiles[path]()) as any + + return { + ...(metadata as { + name: string + date: Date + clients: number[] + rating: { + website: number + community: number + clients: number + overall: number + } + overview: string + }), + path: path.match(/(\w+)\.md/)?.[1], + } + }) + ), + } +}