import Link from "next/link"; import { format } from "date-fns"; import HitCounter from "../HitCounter/HitCounter"; import NoteTitle from "../NoteTitle/NoteTitle"; import { DateIcon, TagIcon, EditIcon, ViewsIcon } from "../Icons"; import { styled } from "../../lib/styles/stitches.config"; import * as config from "../../lib/config"; import type { NoteType } from "../../types"; const Wrapper = styled("div", { display: "inline-flex", flexWrap: "wrap", fontSize: "0.825em", lineHeight: 2.3, letterSpacing: "0.04em", color: "$medium", }); const MetaItem = styled("div", { display: "inline-flex", marginRight: "1.6em", whiteSpace: "nowrap", }); const MetaLink = styled("a", { color: "inherit", textDecoration: "none", }); const Icon = styled("svg", { width: "1.2em", height: "1.2em", verticalAlign: "-0.2em", marginRight: "0.6em", }); const Tag = styled("span", { textTransform: "lowercase", whiteSpace: "nowrap", marginRight: "0.75em", "&::before": { content: "\\0023", // cosmetically hashtagify tags paddingRight: "0.125em", color: "$light", }, "&:last-of-type": { marginRight: 0, }, }); export type NoteMetaProps = Pick; const NoteMeta = ({ slug, date, title, htmlTitle, tags = [] }: NoteMetaProps) => ( <> {format(new Date(date), "MMMM d, yyyy")} {tags.length > 0 && ( {tags.map((tag) => ( {tag} ))} )} Improve This Post {/* only count hits on production site */} {process.env.NEXT_PUBLIC_VERCEL_ENV === "production" && ( )} ); export default NoteMeta;