grungnet/src/App.js

65 lines
2.0 KiB
JavaScript
Raw Normal View History

import React from "react";
import { ThemeProvider } from "theme-ui";
2020-04-24 14:02:06 +00:00
import { BrowserRouter as Router, Switch, Route } from "react-router-dom";
2020-03-15 05:04:30 +00:00
2020-03-15 06:50:56 +00:00
import theme from "./theme.js";
import Home from "./routes/Home";
import Game from "./routes/Game";
import About from "./routes/About";
import FAQ from "./routes/FAQ";
import ReleaseNotes from "./routes/ReleaseNotes";
2020-06-30 09:19:33 +00:00
import HowTo from "./routes/HowTo";
import Donate from "./routes/Donate";
2020-03-15 05:04:30 +00:00
2020-04-14 06:05:44 +00:00
import { AuthProvider } from "./contexts/AuthContext";
import { DatabaseProvider } from "./contexts/DatabaseContext";
import { SettingsProvider } from "./contexts/SettingsContext";
import { KeyboardProvider } from "./contexts/KeyboardContext";
2020-04-14 06:05:44 +00:00
import { ToastProvider } from "./components/Toast";
function App() {
return (
<ThemeProvider theme={theme}>
<DatabaseProvider>
<SettingsProvider>
<AuthProvider>
<KeyboardProvider>
<ToastProvider>
<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">
2021-05-06 05:04:53 +00:00
<Game />
</Route>
<Route path="/">
<Home />
</Route>
</Switch>
</Router>
</ToastProvider>
</KeyboardProvider>
</AuthProvider>
</SettingsProvider>
</DatabaseProvider>
</ThemeProvider>
);
2020-03-15 05:04:30 +00:00
}
export default App;