import { useState } from "react"; import { GameProvider } from "./context/GameContext.js"; import { GameLayout } from "./components/game/GameLayout.js"; import { LoginPage } from "./components/game/LoginPage.js"; const handleAuthCallback = (): boolean => { if (window.location.pathname !== "/auth/callback") { return false; } const params = new URLSearchParams(window.location.search); const token = params.get("token"); if (token) { localStorage.setItem("elysium_token", token); } window.history.replaceState(null, "", "/"); return Boolean(token); }; const isAuthenticated = (): boolean => { const fromCallback = handleAuthCallback(); return fromCallback || Boolean(localStorage.getItem("elysium_token")); }; export const App = (): React.JSX.Element => { const [loggedIn, setLoggedIn] = useState(isAuthenticated); if (!loggedIn) { return { setLoggedIn(true); }} />; } return ( ); };