// App + tweaks integration
const TWEAK_DEFAULTS = /*EDITMODE-BEGIN*/{
"accentColor": "#1B98E8",
"showStats": true,
"heroVariant": "default"
}/*EDITMODE-END*/;
function App() {
const [scrolled, setScrolled] = React.useState(false);
const [lang, setLang] = React.useState("EN");
const [tweaks, setTweak] = (window.useTweaks || (() => [TWEAK_DEFAULTS, () => {}]))(TWEAK_DEFAULTS);
React.useEffect(() => {
const onScroll = () => setScrolled(window.scrollY > 40);
window.addEventListener("scroll", onScroll, { passive: true });
return () => window.removeEventListener("scroll", onScroll);
}, []);
// apply accent color via CSS var
React.useEffect(() => {
document.documentElement.style.setProperty("--blue", tweaks.accentColor || "#1B98E8");
}, [tweaks.accentColor]);
const TweaksPanel = window.TweaksPanel;
const TweakSection = window.TweakSection;
const TweakColor = window.TweakColor;
const TweakRadio = window.TweakRadio;
const TweakToggle = window.TweakToggle;
return (
<>
{tweaks.showStats && }
{TweaksPanel && (
setTweak("accentColor", v)} />
setTweak("showStats", v)} />
)}
>
);
}
ReactDOM.createRoot(document.getElementById("root")).render();