diff --git a/src/app.html b/src/app.html
index 8950633bb9..86bd6cd574 100644
--- a/src/app.html
+++ b/src/app.html
@@ -19,6 +19,7 @@
%sveltekit.body%
diff --git a/src/hooks/server.ts b/src/hooks/server.ts
index 986493c405..4543ef0ab8 100644
--- a/src/hooks/server.ts
+++ b/src/hooks/server.ts
@@ -1,18 +1,29 @@
import type { Handle } from '@sveltejs/kit';
import redirects from './redirects.json';
+import { sequence } from '@sveltejs/kit/hooks';
+import { BANNER_KEY } from '$lib/constants';
const redirectMap = new Map(redirects.map(({ link, redirect }) => [link, redirect]));
-export const handle: Handle = async ({ event, resolve }) => {
- const currentPath = event.url.pathname;
- if (redirectMap.has(currentPath)) {
- return new Response(null, {
- status: 308,
- headers: {
- location: redirectMap.get(currentPath) ?? ''
- }
- });
- }
+const redirecter: Handle = async ({ event, resolve }) => {
+ const currentPath = event.url.pathname;
+ if (redirectMap.has(currentPath)) {
+ return new Response(null, {
+ status: 308,
+ headers: {
+ location: redirectMap.get(currentPath) ?? ''
+ }
+ });
+ }
- return await resolve(event);
+ return await resolve(event);
};
+
+const bannerRewriter: Handle = async ({ event, resolve }) => {
+ const response = await resolve(event, {
+ transformPageChunk: ({ html }) => html.replace('%aw_banner_key%', BANNER_KEY)
+ });
+ return response;
+};
+
+export const handle = sequence(redirecter, bannerRewriter);
diff --git a/src/lib/constants.ts b/src/lib/constants.ts
new file mode 100644
index 0000000000..bbbcc6c7b7
--- /dev/null
+++ b/src/lib/constants.ts
@@ -0,0 +1 @@
+export const BANNER_KEY = 'discord-banner-01'; // Change key to force banner to show again
diff --git a/src/lib/layouts/Main.svelte b/src/lib/layouts/Main.svelte
index 2ee1dac49e..f7ee35aaa3 100644
--- a/src/lib/layouts/Main.svelte
+++ b/src/lib/layouts/Main.svelte
@@ -12,12 +12,11 @@
@@ -163,30 +161,28 @@
- {#if $showTopBanner}
-
-
-
- We are having lots of fun on
-
- Discord. Come and join us!
-
- {#if browser}
-
- {/if}
-
+
+
diff --git a/src/routes/api/blog/+server.ts b/src/routes/api/blog/+server.ts
deleted file mode 100644
index a5c44e3ee1..0000000000
--- a/src/routes/api/blog/+server.ts
+++ /dev/null
@@ -1,28 +0,0 @@
-const isVercel = process.env.VERCEL === '1';
-
-export const prerender = isVercel;
-
-const parsePosts = (posts: Record) => {
- return Object.fromEntries(
- Object.entries(posts).map(([key, value]) => {
- return [
- key.replace('../../blog/post/', '').replace('/+page.markdoc', ''),
- value.frontmatter
- ];
- })
- );
-};
-
-const posts = parsePosts(
- import.meta.glob('../../blog/post/**/*.markdoc', {
- eager: true
- })
-);
-
-export const GET = async () => {
- return new Response(JSON.stringify({ posts, total: Object.keys(posts).length }), {
- headers: {
- 'content-type': 'application/json;charset=UTF-8'
- }
- });
-};
diff --git a/src/routes/docs/references/+layout.svelte b/src/routes/docs/references/+layout.svelte
index 965ffd6917..d58cdbdb97 100644
--- a/src/routes/docs/references/+layout.svelte
+++ b/src/routes/docs/references/+layout.svelte
@@ -1,18 +1,10 @@
-
-
-
-
+
+
diff --git a/src/routes/docs/references/[version]/[platform]/[service]/+layout.svelte b/src/routes/docs/references/[version]/[platform]/[service]/+layout.svelte
deleted file mode 100644
index 62dfb05f9a..0000000000
--- a/src/routes/docs/references/[version]/[platform]/[service]/+layout.svelte
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
diff --git a/src/scss/7-components/_main-header.scss b/src/scss/7-components/_main-header.scss
index 4cd98aab1a..dbca396d91 100644
--- a/src/scss/7-components/_main-header.scss
+++ b/src/scss/7-components/_main-header.scss
@@ -44,7 +44,11 @@
&-link { color:hsl(var(--color-neutral-0) / 0.64); }
}
- &.is-transparent { background-color:transparent; -webkit-backdrop-filter:blur(pxToRem(10)); backdrop-filter:blur(pxToRem(10)); }
+ &.is-transparent {
+ [data-js-enabled] & {
+ background-color: transparent; -webkit-backdrop-filter:blur(pxToRem(10)); backdrop-filter:blur(pxToRem(10));
+ }
+ }
#{$theme-dark} &,
{$theme-dark} {
diff --git a/src/scss/7-components/_top-banner.scss b/src/scss/7-components/_top-banner.scss
index b5b3f71a46..46623bc1f0 100644
--- a/src/scss/7-components/_top-banner.scss
+++ b/src/scss/7-components/_top-banner.scss
@@ -6,4 +6,8 @@
background: linear-gradient(94deg, rgba(253, 54, 110, 0.00) 0%, rgba(253, 54, 110, 0.50) 50.82%, rgba(253, 54, 110, 0.00) 100%);
&-content { line-height:pxToRem(20); transition:var(--transition); }
&-button { position:absolute; inset-inline-end:pxToRem(12); }
+
+ [data-banner-hidden] & {
+ display: none;
+ }
}
\ No newline at end of file