Set up the basic layout of the site and greybox its content based on statically generated pages. Content pages uses general base layouts defined centrally to avoid duplicating code.
32 lines
701 B
TypeScript
32 lines
701 B
TypeScript
import { BasePage } from "./bases.js";
|
|
import type { Page } from "./types.js";
|
|
|
|
export const updates: Page[] = [
|
|
{
|
|
published: "2025-xx-xx",
|
|
title: "Website Launch",
|
|
ref: "updates/site-launch.html",
|
|
}
|
|
].map(page => ({
|
|
title: page.title,
|
|
ref: page.ref,
|
|
content: <BasePage title={page.title}>
|
|
<h1>{page.title}</h1>
|
|
<p>Published: {page.published}</p>
|
|
<p>Placeholder content</p>
|
|
</BasePage>
|
|
}));
|
|
|
|
const title = "Website Updates";
|
|
export const updatesIndex: Page = {
|
|
title,
|
|
ref: "updates.html",
|
|
content: <BasePage title={title}>
|
|
<main>
|
|
<h1>{title}</h1>
|
|
<ul>
|
|
{ updates.map(update => <li><a href={"./" + update.ref}>{update.title}</a></li>)}
|
|
</ul>
|
|
</main>
|
|
</BasePage>
|
|
}
|