/* global React, ReactDOM */ const { useState, useEffect } = React; const TWEAK_DEFAULTS = /*EDITMODE-BEGIN*/{ "brandName": "Centrum Odwołań Prawniczych", "greenShade": "bottle", "typo": "serif", "darkHero": false }/*EDITMODE-END*/; const SHADES = { bottle: { p: "#2d5a44", d: "#1a3d2f", deep: "#0f2820", l: "#3d7a5f", soft: "#eff4f0", soft2: "#dde8e1" }, emerald: { p: "#2d6a4f", d: "#1b4332", deep: "#0f2e22", l: "#52b788", soft: "#edf6f1", soft2: "#d8eee0" }, olive: { p: "#5a8a3a", d: "#2d4220", deep: "#1c2912", l: "#74a64f", soft: "#f3f6ec", soft2: "#e8efde" }, sage: { p: "#4a7c59", d: "#345a3f", deep: "#1f3826", l: "#7a9d83", soft: "#eef3ee", soft2: "#d3e0d4" }, dark: { p: "#0b3d2e", d: "#06251c", deep: "#031711", l: "#1f6048", soft: "#e6ede9", soft2: "#c7d6cf" }, }; const PAGE_URLS = { home: "index.html", procedura: "procedura-odwolania.html", wyroznia: "co-nas-wyroznia.html", kontakt: "kontakt.html", polityka: "polityka-prywatnosci.html", }; const App = () => { const [tweaks, setTweaks] = useTweaks(TWEAK_DEFAULTS); const initialPage = (typeof window !== "undefined" && window.__INITIAL_PAGE__) || "home"; const [page, _setPage] = useState(initialPage); const setPage = (p) => { _setPage(p); // Navigate to the static URL so each page has its own indexable HTML. if (typeof window !== "undefined" && PAGE_URLS[p] && p !== initialPage) { window.location.href = PAGE_URLS[p]; } }; // Apply theme tokens useEffect(() => { const sh = SHADES[tweaks.greenShade] || SHADES.olive; const r = document.documentElement; r.style.setProperty("--green-600", sh.p); r.style.setProperty("--green-800", sh.d); r.style.setProperty("--green-900", sh.deep); r.style.setProperty("--green-500", sh.l); r.style.setProperty("--green-50", sh.soft); r.style.setProperty("--green-100", sh.soft2); r.style.setProperty("--accent", sh.p); r.style.setProperty("--accent-deep", sh.d); r.style.setProperty("--accent-soft", sh.soft); document.body.dataset.typo = tweaks.typo; }, [tweaks.greenShade, tweaks.typo]); // Scroll to top on page change useEffect(() => { window.scrollTo({ top: 0, behavior: "instant" }); }, [page]); let pageContent; switch (page) { case "procedura": pageContent = ; break; case "wyroznia": pageContent = ; break; case "kontakt": pageContent = ; break; case "polityka": pageContent = ; break; default: pageContent = ; } return ( <>
{pageContent}