From c6ed33aa9d1d0cdd65aa8d81aa9a05551e975822 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Tue, 3 Mar 2026 13:24:22 -0800 Subject: prerender static pages and add edge cache headers Co-Authored-By: Claude Opus 4.6 --- src/hooks.server.ts | 23 ++++++++++++++++++++++- src/routes/(static)/privacy/+page.ts | 1 + src/routes/(static)/removal/+page.ts | 1 + 3 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 src/routes/(static)/privacy/+page.ts create mode 100644 src/routes/(static)/removal/+page.ts (limited to 'src') diff --git a/src/hooks.server.ts b/src/hooks.server.ts index 1bb8e132..fcb1d461 100644 --- a/src/hooks.server.ts +++ b/src/hooks.server.ts @@ -17,5 +17,26 @@ export const handle: Handle = async ({ event, resolve }) => { } } - return ipStore.run(ip, () => resolve(event)); + return ipStore.run(ip, async () => { + const response = await resolve(event); + const { pathname } = event.url; + const hasToken = event.cookies.get("token"); + + if (!hasToken) { + const cacheTTL: Record = { + "/": 300, + "/bounties": 300, + "/privacy": 86400, + "/removal": 86400, + "/forgot": 3600, + }; + + const ttl = cacheTTL[pathname]; + if (ttl) { + response.headers.set("CDN-Cache-Control", `max-age=${ttl}`); + } + } + + return response; + }); }; diff --git a/src/routes/(static)/privacy/+page.ts b/src/routes/(static)/privacy/+page.ts new file mode 100644 index 00000000..189f71e2 --- /dev/null +++ b/src/routes/(static)/privacy/+page.ts @@ -0,0 +1 @@ +export const prerender = true; diff --git a/src/routes/(static)/removal/+page.ts b/src/routes/(static)/removal/+page.ts new file mode 100644 index 00000000..189f71e2 --- /dev/null +++ b/src/routes/(static)/removal/+page.ts @@ -0,0 +1 @@ +export const prerender = true; -- cgit v1.2.3