Files
joeac.net/website/src/layouts/BlogPost.astro
T
2026-04-25 13:08:54 +01:00

52 lines
1.3 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
import BaseHead from '../components/BaseHead.astro';
import FormattedDate from '../components/FormattedDate.astro';
import Navbar from '../components/Navbar.astro';
type Props = {
title: string;
description?: string;
updatedDate?: Date;
pubDate: Date;
}
const { title, description, pubDate, updatedDate } = Astro.props;
const canonicalUrl = new URL(Astro.url.pathname, Astro.site);
---
<html lang="en">
<head>
<BaseHead title={`${title} | joeacs blog`} description={description} />
<link rel="stylesheet" href="/css/post.css">
</head>
<body>
<Navbar />
<article class="h-entry">
<aside>
<span>
This is a blog post by
<a class="p-author h-card" href="/">Joe Carstairs</a>.
</span>
{ updatedDate
? (
<span>Updated: <FormattedDate date={updatedDate} className="dt-updated"/>.</span>
<span>Originally published: <FormattedDate date={pubDate} className="dt-published"/>.</span>
) : <span>Published: <FormattedDate date={pubDate} className="dt-published"/>.</span>
}
<span hidden><a class="u-url uid" href={canonicalUrl}>Permalink</a></span>
</aside>
<header>
<h1 class="h-name">{title}</h1>
<p class="p-summary" set:html={description} />
</header>
<section class="e-content">
<slot />
</section>
</article>
</body>
</html>