feat(portfolio): add field notes section bridging to blog
This commit is contained in:
@@ -26,45 +26,49 @@ export function FieldNotes({ posts }: FieldNotesProps) {
|
|||||||
className="border-y border-blacksite-line bg-blacksite-bg2 px-4 py-24 text-blacksite-text sm:px-6 lg:px-8"
|
className="border-y border-blacksite-line bg-blacksite-bg2 px-4 py-24 text-blacksite-text sm:px-6 lg:px-8"
|
||||||
>
|
>
|
||||||
<div className="mx-auto max-w-7xl">
|
<div className="mx-auto max-w-7xl">
|
||||||
<div className="mb-10 flex flex-col gap-4 sm:flex-row sm:items-end sm:justify-between">
|
<div className="mb-10 max-w-4xl">
|
||||||
<div>
|
<div>
|
||||||
<p className="section-label mb-3">FIELD NOTES /.04</p>
|
<p className="section-label mb-3">FIELD NOTES /.04</p>
|
||||||
<h2 className="font-display text-4xl font-semibold tracking-[-0.04em] text-blacksite-text sm:text-6xl">
|
<h2 className="font-display text-4xl font-semibold tracking-[-0.04em] text-blacksite-text sm:text-6xl">
|
||||||
Blog telemetry from the archive.
|
Blog telemetry from the archive.
|
||||||
</h2>
|
</h2>
|
||||||
</div>
|
</div>
|
||||||
<Link
|
|
||||||
href="/blog/"
|
|
||||||
className="section-label w-fit rounded-md border border-blacksite-line px-4 py-3 !text-blacksite-text transition-colors hover:border-signal-cyan/70 hover:!text-signal-cyan focus-visible:outline-signal-cyan"
|
|
||||||
>
|
|
||||||
All field notes →
|
|
||||||
</Link>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{recentPosts.length > 0 ? (
|
{recentPosts.length > 0 ? (
|
||||||
<div className="divide-y divide-blacksite-line border-y border-blacksite-line">
|
<>
|
||||||
{recentPosts.map((post) => (
|
<div className="divide-y divide-blacksite-line border-y border-blacksite-line">
|
||||||
<Link
|
{recentPosts.map((post) => (
|
||||||
key={post.slug}
|
<Link
|
||||||
href={`/blog/${post.slug}/`}
|
key={post.slug}
|
||||||
className="group grid gap-3 px-0 py-6 transition-colors hover:bg-blacksite-surface/55 focus-visible:outline-signal-cyan sm:grid-cols-[12rem_minmax(0,1fr)] sm:px-4"
|
href={`/blog/${post.slug}/`}
|
||||||
>
|
className="group grid gap-3 px-0 py-6 transition-colors hover:bg-blacksite-surface/55 focus-visible:outline-signal-cyan sm:grid-cols-[12rem_minmax(0,1fr)] sm:px-4"
|
||||||
<time className="section-label pt-1" dateTime={post.date}>
|
>
|
||||||
{formatPostDate(post.date)}
|
<time className="section-label pt-1" dateTime={post.date}>
|
||||||
</time>
|
{formatPostDate(post.date)}
|
||||||
<span className="min-w-0">
|
</time>
|
||||||
<span className="block font-display text-2xl font-medium tracking-[-0.03em] text-blacksite-text transition-colors group-hover:text-signal-cyan group-focus-visible:text-signal-cyan">
|
<span className="min-w-0">
|
||||||
{post.title}
|
<span className="block font-display text-2xl font-medium tracking-[-0.03em] text-blacksite-text transition-colors group-hover:text-signal-cyan group-focus-visible:text-signal-cyan">
|
||||||
</span>
|
{post.title}
|
||||||
{post.excerpt && (
|
|
||||||
<span className="mt-2 block max-w-3xl text-sm leading-6 text-blacksite-muted">
|
|
||||||
{post.excerpt}
|
|
||||||
</span>
|
</span>
|
||||||
)}
|
{post.excerpt && (
|
||||||
</span>
|
<span className="mt-2 block max-w-3xl text-sm leading-6 text-blacksite-muted">
|
||||||
|
{post.excerpt}
|
||||||
|
</span>
|
||||||
|
)}
|
||||||
|
</span>
|
||||||
|
</Link>
|
||||||
|
))}
|
||||||
|
</div>
|
||||||
|
<div className="mt-8 flex justify-end">
|
||||||
|
<Link
|
||||||
|
href="/blog/"
|
||||||
|
className="section-label rounded-md border border-blacksite-line px-4 py-3 !text-blacksite-text transition-colors hover:border-signal-cyan/70 hover:!text-signal-cyan focus-visible:outline-signal-cyan"
|
||||||
|
>
|
||||||
|
All field notes →
|
||||||
</Link>
|
</Link>
|
||||||
))}
|
</div>
|
||||||
</div>
|
</>
|
||||||
) : (
|
) : (
|
||||||
<div className="border border-dashed border-blacksite-line bg-blacksite-surface/45 p-8 sm:p-10">
|
<div className="border border-dashed border-blacksite-line bg-blacksite-surface/45 p-8 sm:p-10">
|
||||||
<p className="section-label mb-5 !text-blacksite-text">
|
<p className="section-label mb-5 !text-blacksite-text">
|
||||||
@@ -74,7 +78,7 @@ export function FieldNotes({ posts }: FieldNotesProps) {
|
|||||||
href="/blog/"
|
href="/blog/"
|
||||||
className="section-label inline-flex rounded-md border border-blacksite-line px-4 py-3 !text-blacksite-text transition-colors hover:border-signal-cyan/70 hover:!text-signal-cyan focus-visible:outline-signal-cyan"
|
className="section-label inline-flex rounded-md border border-blacksite-line px-4 py-3 !text-blacksite-text transition-colors hover:border-signal-cyan/70 hover:!text-signal-cyan focus-visible:outline-signal-cyan"
|
||||||
>
|
>
|
||||||
Visit archive →
|
All field notes →
|
||||||
</Link>
|
</Link>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
|
|||||||
Reference in New Issue
Block a user