import React from 'react'; import { THEME_PALETTES, THEME_PALETTE_LABELS, type View } from '../types'; import { GlobalSearch } from './GlobalSearch'; import { useTheme } from '../lib/theme'; interface HeaderProps { view: View; onToggleSidebar: () => void; } const SUN = 'M12 7a5 5 0 1 0 0 10 5 5 0 0 0 0-10Zm0-5v3m0 14v3M2 12h3m14 0h3M4.2 4.2l2.1 2.1m11.4 11.4 2.1 2.1M19.8 4.2l-2.1 2.1M6.3 17.7l-2.1 2.1'; const MOON = 'M21 13a9 9 0 1 1-10-10 7 7 0 0 0 10 10Z'; export const Header: React.FC = ({ view, onToggleSidebar }) => { const { theme, setTheme, mode, toggleMode, resetMode, followsSystem } = useTheme(); const isDark = mode === 'dark'; /* * Sicherheitsnetz: kennt die Liste den Namen nicht, darf der Kopf trotzdem * nicht mit einer TypeError-Ausnahme aussteigen - er trägt die ganze * Anwendung. Ein entfernter Wert hat genau das schon einmal getan. */ const label = THEME_PALETTE_LABELS[theme] ?? THEME_PALETTE_LABELS.icon; return (

{view}

{/* Farbwelt. Ein Auswahlfeld und keine Knopfreihe: es kommen weitere Designs dazu, und drei bis fünf Knöpfe im Kopf würden die Suche verdrängen. Die Wahl gilt für den angemeldeten Benutzer - sie steht an seinem Konto, nicht nur im Browser. */} {/* Doppelklick löst die manuelle Wahl und folgt wieder dem System. */}
); };