summaryrefslogtreecommitdiffhomepage
path: root/vhosts/blog/nuldoc-src/pages/not_found.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'vhosts/blog/nuldoc-src/pages/not_found.tsx')
-rw-r--r--vhosts/blog/nuldoc-src/pages/not_found.tsx39
1 files changed, 39 insertions, 0 deletions
diff --git a/vhosts/blog/nuldoc-src/pages/not_found.tsx b/vhosts/blog/nuldoc-src/pages/not_found.tsx
new file mode 100644
index 00000000..f0b5f964
--- /dev/null
+++ b/vhosts/blog/nuldoc-src/pages/not_found.tsx
@@ -0,0 +1,39 @@
+import GlobalFooter from "../components/GlobalFooter.tsx";
+import { renderToDOM } from "../jsx/render.ts";
+import GlobalHeader from "../components/GlobalHeader.tsx";
+import PageLayout from "../components/PageLayout.tsx";
+import { Config } from "../config.ts";
+import { el } from "../dom.ts";
+import { Page } from "../page.ts";
+
+export type NotFoundPage = Page;
+
+export async function generateNotFoundPage(
+ config: Config,
+): Promise<NotFoundPage> {
+ const html = await renderToDOM(
+ <PageLayout
+ metaCopyrightYear={config.blog.siteCopyrightYear}
+ metaDescription="リクエストされたページが見つかりません"
+ metaTitle={`Page Not Found|${config.blog.siteName}`}
+ config={config}
+ >
+ <body className="single">
+ <GlobalHeader config={config} />
+ <main className="main">
+ <article>
+ <div className="not-found">404</div>
+ </article>
+ </main>
+ <GlobalFooter config={config} />
+ </body>
+ </PageLayout>,
+ );
+
+ return {
+ root: el("__root__", {}, html),
+ renderer: "html",
+ destFilePath: "/404.html",
+ href: "/404.html",
+ };
+}