import './assets/main.css' import React from 'react' import ReactDOM from 'react-dom/client' import IndexPage from './pages' import SettingsPage from './pages/settings' import { defaultConfig } from '../../common/config' const search = new URLSearchParams(window.location.search) const scaleFactorRaw = search.get('scaleFactor') || defaultConfig.scaleFactor const scaleFactorTryNumber = Number(scaleFactorRaw) const scaleFactor = Number.isFinite(scaleFactorTryNumber) ? scaleFactorTryNumber : 1 window.document.documentElement.style.setProperty('--size-scale-factor', scaleFactor.toString()) const naturalKeyColor = search.get('naturalKeyColor') || defaultConfig.naturalKeyColor window.document.documentElement.style.setProperty('--color-natural-key', naturalKeyColor) const accidentalKeyColor = search.get('accidentalKeyColor') || defaultConfig.accidentalKeyColor window.document.documentElement.style.setProperty('--color-accidental-key', accidentalKeyColor) window.document.documentElement.style.setProperty('--color-channel-0', search.get('highlightColor')) const windows = { main: IndexPage, settings: SettingsPage } const currentWindowKey = search.get('window') ?? 'main' const Page = windows[currentWindowKey] ReactDOM.createRoot(document.getElementById('root') as HTMLElement).render( )