/* Header, top accessibility bar, navigation, language switcher, accessibility panel */
const { useState, useEffect, useRef } = React;
function PPHeader({ route, setRoute, lang, setLang, t, openAccPanel }) {
const navItems = [
["home", "/"],
["about", "/o-poradni"],
["services", "/oferta"],
["team", "/zespol"],
["news", "/aktualnosci"],
["resources", "/strefa-rodzica"],
["downloads", "/do-pobrania"],
["contact", "/kontakt"],
];
const [mobileOpen, setMobileOpen] = useState(false);
return (
);
}
// ---- Accessibility Panel ----
function PPAccPanel({ open, onClose, theme, setTheme, fontSize, setFontSize, simple, setSimple, t, lang }) {
const themes = [
{ v: "light", lbl: lang === "uk" ? "Світла" : lang === "en" ? "Light" : "Jasny" },
{ v: "dark", lbl: lang === "uk" ? "Темна" : lang === "en" ? "Dark" : "Ciemny" },
{ v: "hc", lbl: lang === "uk" ? "Контраст" : lang === "en" ? "Contrast" : "Kontrast" },
];
const sizes = [
{ v: "md", lbl: "A" },
{ v: "lg", lbl: "AA" },
{ v: "xl", lbl: "AAA" },
];
if (!open) return null;
const labels = {
pl: { panel: "Dostępność", theme: "Motyw", text: "Rozmiar tekstu", simple: "Wersja uproszczona", simpleHint: "Bez dekoracyjnych grafik, prostszy język" },
en: { panel: "Accessibility", theme: "Theme", text: "Text size", simple: "Simple version", simpleHint: "No decorative graphics, plainer language" },
uk: { panel: "Доступність", theme: "Тема", text: "Розмір тексту", simple: "Спрощена версія", simpleHint: "Без декоративних графік, проста мова" },
}[lang] || {};
return (
{labels.panel}
{labels.theme}
{themes.map((th) => (
))}
{labels.text}
{sizes.map((s) => (
))}
{labels.simple}
{labels.simpleHint}
{ e.preventDefault(); window.location.hash = "#/dostepnosc"; onClose(); }}
style={{
display: "block",
marginTop: 14,
paddingTop: 14,
borderTop: "1px solid var(--rule-soft)",
fontFamily: "var(--font-mono)",
fontSize: 11,
letterSpacing: "0.12em",
textTransform: "uppercase",
textDecoration: "none",
color: "var(--ink-soft)",
}}
>
→ {t.nav.accessibility}
);
}
function PPAccFab({ onClick, lang }) {
return (
);
}
Object.assign(window, { PPHeader, PPAccPanel, PPAccFab });