/* Tidewell β€” app entry with hash router */ const TWEAK_DEFAULTS = /*EDITMODE-BEGIN*/{ "region": "US", "palette": "aqua", "heroVariant": "split", "cardStyle": "grid" }/*EDITMODE-END*/; const PALETTE_SWATCHES = { "#3680b8": "aqua", "#3a6b48": "forest", "#a07248": "sand", "#1f2a3a": "ink" }; const PALETTE_BY_NAME = { aqua: "#3680b8", forest: "#3a6b48", sand: "#a07248", ink: "#1f2a3a" }; function App() { const [t, setTweak] = window.useTweaks(TWEAK_DEFAULTS); const route = window.useRoute(); // Persist region in localStorage so it survives reload across pages React.useEffect(() => { const saved = localStorage.getItem("tidewell-region"); if (saved && saved !== t.region && (saved === "US" || saved === "CA")) { setTweak("region", saved); } }, []); React.useEffect(() => { localStorage.setItem("tidewell-region", t.region); }, [t.region]); function setRegion(r) { setTweak("region", r); } React.useEffect(() => { document.documentElement.setAttribute("data-palette", t.palette); document.documentElement.setAttribute("data-cardstyle", t.cardStyle); }, [t.palette, t.cardStyle]); function HomePage() { return ( <> ); } let page; switch (route.name) { case "catalog": page = ; break; case "product": page = ; break; case "applications": page = ; break; case "about": page = ; break; case "contact": page = ; break; case "home": default: page = ; break; } return (
{page} setTweak("region", v)} /> setTweak("palette", PALETTE_SWATCHES[hex] || "aqua")} /> setTweak("heroVariant", v)} /> setTweak("cardStyle", v)} />
); } ReactDOM.createRoot(document.getElementById("root")).render();