"use client"; import Link from "next/link"; import type { Locale } from "@/i18n/routes"; import { switchLocale } from "@/i18n/routes"; export function LanguageSwitcher({ currentLocale, className = "", }: { currentLocale: Locale; className?: string; }) { // Die aktuelle Path wird über die Server-Komponente nicht direkt übergeben; // stattdessen rendern wir einen Link, der die aktuelle URL auf die andere // Locale umschreibt. Da der Switcher in jeder Page gesetzt wird, geben wir // ein kleines Client-Skript mit, das die URL window.location.pathname // zur Laufzeit austauscht. const target: Locale = currentLocale === "de" ? "en" : "de"; return ( { // Fallback, falls JS aus ist: statischer Link auf die andere Locale der Homepage. e.preventDefault(); if (typeof window === "undefined") return; const path = window.location.pathname; const next = switchLocale(path, target) ?? (target === "en" ? "/en" : "/"); window.location.href = next; }} > [{target}] ); }