import React from 'react'; import { Routes, Route } from "react-router-dom"; import { UserProfile } from './types/Profile'; import Sidebar from './components/Sidebar'; import "./App.css"; import Profile from './pages/Profile'; import Games from './pages/Games'; import Maps from './pages/Maps'; import User from './pages/User'; import Homepage from './pages/Homepage'; import UploadRunDialog from './components/UploadRunDialog'; import Rules from './pages/Rules'; import About from './pages/About'; import { Game } from './types/Game'; import { API } from './api/Api'; import Maplist from './pages/Maplist'; import Rankings from './pages/Rankings'; const App: React.FC = () => { const [token, setToken] = React.useState(undefined); const [profile, setProfile] = React.useState(undefined); const [isModerator, setIsModerator] = React.useState(true); const [games, setGames] = React.useState([]); const [uploadRunDialog, setUploadRunDialog] = React.useState(false); const [uploadRunDialogMapID, setUploadRunDialogMapID] = React.useState(undefined); // React.useEffect(() => { // if (token) { // setIsModerator(JSON.parse(atob(token.split(".")[1])).mod) // } // }, [token]); const _fetch_games = async () => { const games = await API.get_games(); setGames(games); }; React.useEffect(() => { _fetch_games(); }, []); if (!games) { return ( <> ) }; return ( <> setUploadRunDialog(false)} mapID={uploadRunDialogMapID} games={games} /> setUploadRunDialog(true)} /> } /> } /> } /> } /> }> {setUploadRunDialog(true);setUploadRunDialogMapID(mapID)}} />}/> } /> } /> }> ); }; export default App;