/* Panneau Tweaks — Infosolutions30 */ const TWEAK_DEFAULTS = /*EDITMODE-BEGIN*/{ "direction": "Nuit Cévenole", "palette": ["#5B7CFA", "#8B5CF6"], "fontDisplay": "Poppins", "fontBody": "Poppins", "typeScale": 100, "fx": 100, "rain": true, "anim": true, "radius": 16, "btnStyle": "Pilule", "space": 100, "contentW": 1180, "caps": false, "fab": true, "zone": true }/*EDITMODE-END*/; const DIR_MAP = { "Nuit Cévenole": "nuit", "Carbone Électrique": "carbone", "Clair Premium": "clair" }; const FONT_MAP = { "Poppins": "'Poppins', sans-serif", "Space Grotesk": "'Space Grotesk', sans-serif", "Sora": "'Sora', sans-serif", "JetBrains Mono": "'JetBrains Mono', monospace" }; const BTN_MAP = { "Pilule": "999px", "Arrondi": "14px", "Carré": "5px" }; function applyTweaks(t) { const b = document.body; b.dataset.dir = DIR_MAP[t.direction] || "nuit"; b.dataset.rain = t.rain ? "on" : "off"; b.dataset.anim = t.anim ? "on" : "off"; b.dataset.fab = t.fab ? "on" : "off"; b.dataset.zone = t.zone ? "on" : "off"; b.dataset.caps = t.caps ? "on" : "off"; const pal = Array.isArray(t.palette) ? t.palette : ["#5B7CFA", "#8B5CF6"]; b.style.setProperty("--accent", pal[0]); b.style.setProperty("--accent-2", pal[1] || pal[0]); b.style.setProperty("--fx", String((t.fx ?? 100) / 100)); b.style.setProperty("--radius", (t.radius ?? 16) + "px"); b.style.setProperty("--btn-radius", BTN_MAP[t.btnStyle] || "999px"); b.style.setProperty("--space", String((t.space ?? 100) / 100)); b.style.setProperty("--content-w", (t.contentW ?? 1180) + "px"); b.style.setProperty("--font-display", FONT_MAP[t.fontDisplay] || FONT_MAP["Poppins"]); b.style.setProperty("--font-body", FONT_MAP[t.fontBody] || FONT_MAP["Poppins"]); b.style.fontSize = (17 * (t.typeScale ?? 100) / 100).toFixed(2) + "px"; } function TweaksApp() { const [t, setTweak] = useTweaks(TWEAK_DEFAULTS); React.useEffect(() => { applyTweaks(t); }, [t]); return ( setTweak("direction", v)} /> setTweak("palette", v)} /> setTweak("fontDisplay", v)} /> setTweak("fontBody", v)} /> setTweak("typeScale", v)} /> setTweak("caps", v)} /> setTweak("contentW", v)} /> setTweak("space", v)} /> setTweak("radius", v)} /> setTweak("btnStyle", v)} /> setTweak("fx", v)} /> setTweak("rain", v)} /> setTweak("anim", v)} /> setTweak("fab", v)} /> setTweak("zone", v)} /> ); } applyTweaks(TWEAK_DEFAULTS); const tweaksRoot = ReactDOM.createRoot(document.getElementById("tweaks-root")); tweaksRoot.render();