55 lines
1012 B
Plaintext
55 lines
1012 B
Plaintext
---
|
|
import BaseHead from '../components/BaseHead.astro';
|
|
import Header from '../components/Header.astro';
|
|
import Footer from '../components/Footer.astro';
|
|
|
|
export interface Props {
|
|
content: {
|
|
title: string;
|
|
description: string;
|
|
pubDate?: string;
|
|
updatedDate?: string;
|
|
heroImage?: string;
|
|
};
|
|
}
|
|
|
|
const {
|
|
content: { title, description, pubDate, updatedDate, heroImage },
|
|
} = Astro.props;
|
|
---
|
|
|
|
<html lang="en">
|
|
<head>
|
|
<BaseHead title={title} description={description} />
|
|
<style>
|
|
.title {
|
|
font-size: 2em;
|
|
margin: 0.25em 0 0;
|
|
}
|
|
hr {
|
|
border-top: 1px solid #ddd;
|
|
margin: 1rem 0;
|
|
}
|
|
</style>
|
|
</head>
|
|
|
|
<body>
|
|
<Header />
|
|
<main>
|
|
<article>
|
|
{heroImage && <img width={720} height={360} src={heroImage} alt="" />}
|
|
<h1 class="title">{title}</h1>
|
|
{pubDate && <time>{pubDate}</time>}
|
|
{updatedDate && (
|
|
<div>
|
|
Last updated on <time>{updatedDate}</time>
|
|
</div>
|
|
)}
|
|
<hr />
|
|
<slot />
|
|
</article>
|
|
</main>
|
|
<Footer />
|
|
</body>
|
|
</html>
|