// Tweaks panel for RecordingsViewer
// Loaded after tweaks-panel.jsx
function TweaksApp() {
const { TweaksPanel, TweakSection, TweakToggle, TweakRadio, TweakColor, useTweaks } = window;
const [tweaks, setTweak] = useTweaks(/*EDITMODE-BEGIN*/{
"accentColor": "oklch(0.75 0.15 65)",
"density": "normal",
"monoTimestamps": true,
"showQualityColors": true,
"sidebarCollapsed": false
}/*EDITMODE-END*/);
// Apply tweaks to CSS vars live
React.useEffect(() => {
const root = document.documentElement;
// Accent color
root.style.setProperty('--amber', tweaks.accentColor);
// Density
const pad = tweaks.density === 'compact' ? '6px 10px' : tweaks.density === 'comfortable' ? '14px 18px' : '9px 12px';
root.style.setProperty('--row-padding', pad);
// Monospace timestamps
document.querySelectorAll('.mono-ts').forEach(el => {
el.style.fontFamily = tweaks.monoTimestamps ? 'var(--font-mono)' : 'var(--font-sans)';
});
}, [tweaks]);
return (
setTweak('accentColor', v)} />
setTweak('density', v)}
/>
setTweak('monoTimestamps', v)} />
setTweak('showQualityColors', v)} />
);
}
// Mount tweaks panel in a separate div
const tweaksRoot = document.createElement('div');
tweaksRoot.id = 'tweaks-root';
document.body.appendChild(tweaksRoot);
ReactDOM.createRoot(tweaksRoot).render();