feat: improve book reviews, restore detailed privacy policy, fix header logo, add theme toggle, integrate boneyard-js
- Book reviews: add line-clamp for longer review text with expand/collapse per review - Privacy policy: restore full detailed DSGVO-compliant fallback content - Header (legal pages): change logo from 'dk' to 'dk0' in circle - Header (main page): add ThemeToggle for dark/light mode switching - Skeleton loading: integrate boneyard-js for ReadBooks, CurrentlyReading, Projects - Add boneyard.config.json and bones/registry.ts placeholder
This commit is contained in:
@@ -5,6 +5,7 @@ import { SiGithub, SiLinkedin } from "react-icons/si";
|
||||
import Link from "next/link";
|
||||
import { usePathname, useSearchParams } from "next/navigation";
|
||||
import type { NavTranslations } from "@/types/translations";
|
||||
import { ThemeToggle } from "./ThemeToggle";
|
||||
|
||||
// Inline SVG icons to avoid loading the full lucide-react chunk (~116KB)
|
||||
const MenuIcon = ({ size = 24 }: { size?: number }) => (
|
||||
@@ -128,6 +129,7 @@ export default function HeaderClient({ locale, translations }: HeaderClientProps
|
||||
>
|
||||
DE
|
||||
</Link>
|
||||
<ThemeToggle />
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
@@ -188,7 +190,7 @@ export default function HeaderClient({ locale, translations }: HeaderClientProps
|
||||
</nav>
|
||||
|
||||
{/* Language Switcher Mobile */}
|
||||
<div className="flex gap-2 mt-6 pt-6 border-t border-stone-200">
|
||||
<div className="flex items-center gap-2 mt-6 pt-6 border-t border-stone-200">
|
||||
<Link
|
||||
href={enHref}
|
||||
onClick={() => setIsOpen(false)}
|
||||
@@ -211,6 +213,7 @@ export default function HeaderClient({ locale, translations }: HeaderClientProps
|
||||
>
|
||||
DE
|
||||
</Link>
|
||||
<ThemeToggle />
|
||||
</div>
|
||||
|
||||
<div className="mt-8 pt-6 border-t border-stone-200">
|
||||
|
||||
Reference in New Issue
Block a user