mirror of
https://github.com/Sendouc/sendou.ink.git
synced 2026-05-11 13:15:18 -05:00
57 lines
2.4 KiB
JavaScript
57 lines
2.4 KiB
JavaScript
import React, { useState } from 'react'
|
|
import { Container } from 'semantic-ui-react'
|
|
import Footer from './components/Misc/Footer'
|
|
import MainMenu from './components/Misc/MainMenu'
|
|
import NotFound from './components/Misc/NotFound'
|
|
import { BrowserRouter as Router, Route, Switch, Redirect } from 'react-router-dom'
|
|
|
|
import WeaponLeaderboardSelector from './components/XLeaderboard/WeaponLeaderboardSelector'
|
|
import XSearch from './components/XSearch/XSearch'
|
|
import InfoPlayer from './components/XSearch/InfoPlayer'
|
|
import InfoWeapon from './components/XSearch/InfoWeapon'
|
|
import ScrollToTop from './utils/ScrollToTop'
|
|
import MapListGenerator from './components/Tools/MapListGenerator'
|
|
import Rotations from './components/Tools/Rotations'
|
|
import Links from './components/Misc/Links'
|
|
|
|
const App = () => {
|
|
const [menuSelection, setMenuSelection] = useState('home')
|
|
return (
|
|
<div>
|
|
<Router>
|
|
<Container>
|
|
<MainMenu menuSelection={menuSelection} setMenuSelection={setMenuSelection} />
|
|
<div>
|
|
<ScrollToTop />
|
|
<Switch>
|
|
<Route exact path="/" render={() => <Redirect to="/xsearch"/>} />
|
|
<Route path="/xleaderboard" render={() => <WeaponLeaderboardSelector setMenuSelection={setMenuSelection} />} />
|
|
<Route exact path="/xsearch" render={() => <XSearch setMenuSelection={setMenuSelection} />} />
|
|
<Route exact path="/xsearch/w/:wpn" render={({ match }) =>
|
|
<InfoWeapon wpn={match.params.wpn.replace(/-/g, '_')} />
|
|
} />
|
|
<Route exact path="/xsearch/p/:uid" render={({ match }) =>
|
|
<InfoPlayer uid={match.params.uid} setMenuSelection={setMenuSelection} />
|
|
} />
|
|
<Route exact path="/maps" render={() =>
|
|
<MapListGenerator setMenuSelection={setMenuSelection} />
|
|
} />
|
|
<Route exact path="/rotation" render={() =>
|
|
<Rotations setMenuSelection={setMenuSelection} />
|
|
} />
|
|
<Route exact path="/links" render={() =>
|
|
<Links setMenuSelection={setMenuSelection} />
|
|
} />
|
|
<Route path="/404" render={() => <NotFound />} />
|
|
<Route path="*" render={() => <NotFound />} />
|
|
</Switch>
|
|
</div>
|
|
<Footer />
|
|
</Container>
|
|
</Router>
|
|
</div>
|
|
)
|
|
}
|
|
|
|
export default App
|