Fix legal-page autolink color, add Blog breadcrumb, revert breadcrumb color
- RichText.tsx: Lexical's auto-detected "autolink" nodes (a typed-out email/URL, as opposed to an editor-inserted link) fell through to Payload's unstyled default converter — only "link" was overridden. AGB's Vertragspartner email rendered as plain black text because of this. Both node types now get the same text-brand/hover:underline treatment. - Breadcrumb color revert: the breadcrumb Startseite links across the 4 legal pages/shop should stay their original hover:text-brand treatment — only the actual content/contact links needed the always-brand-colored style, not page-level breadcrumbs. - /blog was the one page missing both a breadcrumb and the text-h-feature heading size every other section page (/shop, legal pages) already uses — added to match. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018unaXmuzVA8ct1b6WoyP1U
This commit is contained in:
+1
-1
@@ -27,7 +27,7 @@ export default async function AgbPage() {
|
||||
<main className="flex flex-col flex-1 bg-bg-base">
|
||||
<Reveal className="flex flex-col gap-3 items-start pb-6 pt-10 px-[var(--layout-padding-x)] w-full">
|
||||
<p className="flex items-center gap-2 text-body-sm text-text-muted">
|
||||
<Link href="/" className="text-brand hover:underline">Startseite</Link>
|
||||
<Link href="/" className="hover:text-brand transition-colors">Startseite</Link>
|
||||
<span>›</span>
|
||||
<span className="text-text-primary">AGB</span>
|
||||
</p>
|
||||
|
||||
+11
-1
@@ -66,8 +66,18 @@ export default async function BlogOverviewPage({
|
||||
hero-fade-left/hero-fade-bottom overlays (node 4577:330). */}
|
||||
<Reveal className="relative flex flex-col sm:flex-row items-center w-full min-h-[20rem] sm:min-h-[27.5rem] border-b border-border overflow-hidden">
|
||||
<div className="relative z-10 flex flex-col gap-4 items-start px-[var(--layout-padding-x)] py-10 sm:py-0 w-full sm:w-auto sm:max-w-[26rem]">
|
||||
{/* Breadcrumb + text-h-feature heading — same treatment as
|
||||
/shop's ShopHeader.tsx and every legal page, this hero was
|
||||
the one page missing both (its own bespoke photo-bleed
|
||||
layout predates that convention being established
|
||||
elsewhere). */}
|
||||
<p className="flex items-center gap-2 text-body-sm text-text-muted">
|
||||
<Link href="/" className="hover:text-brand transition-colors">Startseite</Link>
|
||||
<span>›</span>
|
||||
<span className="text-text-primary">Blog</span>
|
||||
</p>
|
||||
<p
|
||||
className="font-semibold text-display text-text-primary"
|
||||
className="font-semibold text-h-feature text-text-primary"
|
||||
style={{ fontFamily: "var(--font-lora)" }}
|
||||
>
|
||||
Blog
|
||||
|
||||
@@ -160,6 +160,16 @@ function buildConverters(quoteLabel: string): JSXConvertersFunction {
|
||||
{nodesToJSX({ nodes: node.children })}
|
||||
</a>
|
||||
),
|
||||
// Lexical auto-detects a typed-out URL/email as its own "autolink" node,
|
||||
// distinct from an editor-inserted "link" node — falls through to
|
||||
// Payload's unstyled default converter without this, which is why the
|
||||
// Impressum/AGB's typed-in-place mailto addresses rendered as plain
|
||||
// black text instead of matching every editor-inserted link.
|
||||
autolink: ({ node, nodesToJSX }) => (
|
||||
<a href={node.fields?.url ?? "#"} className="text-brand hover:underline">
|
||||
{nodesToJSX({ nodes: node.children })}
|
||||
</a>
|
||||
),
|
||||
// Lexical's native blockquote feature — used by every post written
|
||||
// before Blocks existed. Kept working exactly as before (own comment on
|
||||
// Posts.ts's `content` field editor config on why this stays enabled
|
||||
|
||||
@@ -26,7 +26,7 @@ export default async function DatenschutzPage() {
|
||||
<main className="flex flex-col flex-1 bg-bg-base">
|
||||
<Reveal className="flex flex-col gap-3 items-start pb-6 pt-10 px-[var(--layout-padding-x)] w-full">
|
||||
<p className="flex items-center gap-2 text-body-sm text-text-muted">
|
||||
<Link href="/" className="text-brand hover:underline">Startseite</Link>
|
||||
<Link href="/" className="hover:text-brand transition-colors">Startseite</Link>
|
||||
<span>›</span>
|
||||
<span className="text-text-primary">Datenschutz</span>
|
||||
</p>
|
||||
|
||||
@@ -29,7 +29,7 @@ export default async function ImpressumPage() {
|
||||
<main className="flex flex-col flex-1 bg-bg-base">
|
||||
<Reveal className="flex flex-col gap-3 items-start pb-6 pt-10 px-[var(--layout-padding-x)] w-full">
|
||||
<p className="flex items-center gap-2 text-body-sm text-text-muted">
|
||||
<Link href="/" className="text-brand hover:underline">Startseite</Link>
|
||||
<Link href="/" className="hover:text-brand transition-colors">Startseite</Link>
|
||||
<span>›</span>
|
||||
<span className="text-text-primary">Impressum</span>
|
||||
</p>
|
||||
|
||||
@@ -27,7 +27,7 @@ export default async function WiderrufPage() {
|
||||
<main className="flex flex-col flex-1 bg-bg-base">
|
||||
<Reveal className="flex flex-col gap-3 items-start pb-6 pt-10 px-[var(--layout-padding-x)] w-full">
|
||||
<p className="flex items-center gap-2 text-body-sm text-text-muted">
|
||||
<Link href="/" className="text-brand hover:underline">Startseite</Link>
|
||||
<Link href="/" className="hover:text-brand transition-colors">Startseite</Link>
|
||||
<span>›</span>
|
||||
<span className="text-text-primary">Widerruf</span>
|
||||
</p>
|
||||
|
||||
Reference in New Issue
Block a user