const { HashRouter, Routes, Route, Navigate } = ReactRouterDOM;
const { useState } = React;

function App() {
    const [isAuthenticated, setIsAuthenticated] = useState(() => {
        return localStorage.getItem("machado_auth") === "true";
    });

    const handleLogin = () => {
        localStorage.setItem("machado_auth", "true");
        setIsAuthenticated(true);
    };

    if (!isAuthenticated) {
        return <window.Login onLogin={handleLogin} />;
    }

    return (
        <HashRouter>
            <Routes>
                {/* Admin Routes with Sidebar Layout */}
                <Route path="/" element={<window.Layout />}>
                    <Route index element={<window.Dashboard />} />
                    <Route path="agenda" element={<window.Agenda />} />
                    <Route path="mechanics" element={<window.Mechanics />} />
                </Route>

                {/* TV Mode Route without Sidebar */}
                <Route path="/tv-mode" element={<window.TvMode />} />

                {/* Fallback */}
                <Route path="*" element={<Navigate to="/" replace />} />
            </Routes>
        </HashRouter>
    );
}

const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<App />);
