34 lines
633 B
TypeScript
34 lines
633 B
TypeScript
type postMetadata = {
|
|
title: string;
|
|
date: string;
|
|
coverImage: string;
|
|
blurb: string;
|
|
shortBlurb: string;
|
|
tags: string[];
|
|
};
|
|
|
|
type PostHeaderProps = {
|
|
metadata: postMetadata;
|
|
};
|
|
|
|
// TODO
|
|
export default function PostHeader({
|
|
metadata,
|
|
}: PostHeaderProps): React.JSX.Element {
|
|
return (
|
|
<>
|
|
<h1>{metadata.title}</h1>
|
|
<time dateTime={metadata.date}>{metadata.date}</time>
|
|
<div className="mb-6 flex gap-2">
|
|
{metadata.tags.map((tag) => {
|
|
return (
|
|
<div key={`${metadata.title}_tag_${tag}`}>
|
|
<div className="badge badge-soft badge-info">{tag}</div>
|
|
</div>
|
|
);
|
|
})}
|
|
</div>
|
|
</>
|
|
);
|
|
}
|