// SATS — Tweaks panel app
// Mounts a Tweaks panel that lets the user adjust the prototype live.
const { useEffect } = React;
function SatsTweaks() {
const [t, setTweak] = useTweaks(TWEAK_DEFAULTS);
// Apply tweaks to the running site
useEffect(() => { window.SATS && window.SATS.setAccent(t.accent); }, [t.accent]);
useEffect(() => { window.SATS && window.SATS.setMotion(t.motion); }, [t.motion]);
useEffect(() => { window.SATS && window.SATS.setMesh(t.mesh); }, [t.mesh]);
useEffect(() => {
document.documentElement.style.setProperty('--decrypt-duration', t.decryptSpeed + 'ms');
}, [t.decryptSpeed]);
return (
setTweak('accent', v)}
/>
setTweak('motion', v)}
/>
setTweak('decryptSpeed', v)}
/>
setTweak('mesh', v)}
/>
window.SATS && window.SATS.setLang(v)}
/>
);
}
// Mount
const __satsTweaksMount = document.createElement('div');
document.body.appendChild(__satsTweaksMount);
ReactDOM.createRoot(__satsTweaksMount).render();