2020-03-16 06:31:08 -04:00
|
|
|
import { ThemeProvider } from "theme-ui";
|
2020-04-24 10:02:06 -04:00
|
|
|
import { BrowserRouter as Router, Switch, Route } from "react-router-dom";
|
2020-03-15 01:04:30 -04:00
|
|
|
|
2021-05-25 03:35:26 -04:00
|
|
|
import theme from "./theme";
|
2020-03-16 06:31:08 -04:00
|
|
|
import Home from "./routes/Home";
|
|
|
|
import Game from "./routes/Game";
|
2020-04-09 04:19:07 -04:00
|
|
|
import About from "./routes/About";
|
|
|
|
import FAQ from "./routes/FAQ";
|
2020-05-07 08:29:31 -04:00
|
|
|
import ReleaseNotes from "./routes/ReleaseNotes";
|
2020-06-30 05:19:33 -04:00
|
|
|
import HowTo from "./routes/HowTo";
|
2020-10-16 07:09:36 -04:00
|
|
|
import Donate from "./routes/Donate";
|
2020-03-15 01:04:30 -04:00
|
|
|
|
2020-04-14 02:05:44 -04:00
|
|
|
import { AuthProvider } from "./contexts/AuthContext";
|
2020-05-03 04:22:09 -04:00
|
|
|
import { DatabaseProvider } from "./contexts/DatabaseContext";
|
2020-05-19 02:21:01 -04:00
|
|
|
import { MapDataProvider } from "./contexts/MapDataContext";
|
|
|
|
import { TokenDataProvider } from "./contexts/TokenDataContext";
|
2020-05-25 01:34:22 -04:00
|
|
|
import { MapLoadingProvider } from "./contexts/MapLoadingContext";
|
2020-09-29 23:26:39 -04:00
|
|
|
import { SettingsProvider } from "./contexts/SettingsContext";
|
|
|
|
import { KeyboardProvider } from "./contexts/KeyboardContext";
|
2021-03-12 01:35:26 -05:00
|
|
|
import { ImageSourcesProvider } from "./contexts/ImageSourceContext";
|
2020-04-14 02:05:44 -04:00
|
|
|
|
2020-10-27 03:25:50 -04:00
|
|
|
import { ToastProvider } from "./components/Toast";
|
|
|
|
|
2020-03-16 04:44:49 -04:00
|
|
|
function App() {
|
2020-04-05 10:07:24 -04:00
|
|
|
return (
|
|
|
|
<ThemeProvider theme={theme}>
|
2020-05-03 04:22:09 -04:00
|
|
|
<DatabaseProvider>
|
2020-08-07 03:15:16 -04:00
|
|
|
<SettingsProvider>
|
|
|
|
<AuthProvider>
|
2020-09-29 23:26:39 -04:00
|
|
|
<KeyboardProvider>
|
2020-10-27 03:25:50 -04:00
|
|
|
<ToastProvider>
|
2021-03-12 01:35:26 -05:00
|
|
|
<ImageSourcesProvider>
|
|
|
|
<Router>
|
|
|
|
<Switch>
|
|
|
|
<Route path="/donate">
|
|
|
|
<Donate />
|
|
|
|
</Route>
|
|
|
|
{/* Legacy support camel case routes */}
|
|
|
|
<Route path={["/howTo", "/how-to"]}>
|
|
|
|
<HowTo />
|
|
|
|
</Route>
|
|
|
|
<Route path={["/releaseNotes", "/release-notes"]}>
|
|
|
|
<ReleaseNotes />
|
|
|
|
</Route>
|
|
|
|
<Route path="/about">
|
|
|
|
<About />
|
|
|
|
</Route>
|
|
|
|
<Route path="/faq">
|
|
|
|
<FAQ />
|
|
|
|
</Route>
|
|
|
|
<Route path="/game/:id">
|
|
|
|
<MapLoadingProvider>
|
|
|
|
<MapDataProvider>
|
|
|
|
<TokenDataProvider>
|
|
|
|
<Game />
|
|
|
|
</TokenDataProvider>
|
|
|
|
</MapDataProvider>
|
|
|
|
</MapLoadingProvider>
|
|
|
|
</Route>
|
|
|
|
<Route path="/">
|
|
|
|
<Home />
|
|
|
|
</Route>
|
|
|
|
</Switch>
|
|
|
|
</Router>
|
|
|
|
</ImageSourcesProvider>
|
2020-10-27 03:25:50 -04:00
|
|
|
</ToastProvider>
|
2020-09-29 23:26:39 -04:00
|
|
|
</KeyboardProvider>
|
2020-08-07 03:15:16 -04:00
|
|
|
</AuthProvider>
|
|
|
|
</SettingsProvider>
|
2020-05-03 04:22:09 -04:00
|
|
|
</DatabaseProvider>
|
2020-04-05 10:07:24 -04:00
|
|
|
</ThemeProvider>
|
|
|
|
);
|
2020-03-15 01:04:30 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
export default App;
|