index.community/frontend/src/AppRouter.tsx

35 lines
1.1 KiB
TypeScript
Raw Normal View History

2019-07-26 14:34:23 +00:00
import React from "react";
2019-07-23 16:32:43 +00:00
import { Classes } from "@blueprintjs/core";
import { ConnectedRouter } from "connected-react-router";
import { Route } from "react-router-dom";
2020-05-19 13:45:27 +00:00
import { Nav } from "./components/organisms";
2019-08-27 13:50:16 +00:00
import {
AboutScreen,
AdminScreen,
GraphScreen,
LoginScreen,
TableScreen,
2020-05-19 13:45:27 +00:00
VerifyLoginScreen,
} from "./components/screens";
import { history } from "./index";
2019-07-23 16:32:43 +00:00
const AppRouter: React.FC = () => (
<ConnectedRouter history={history}>
<div className={`${Classes.DARK} App`}>
<Nav />
2020-06-19 10:46:43 +00:00
<main role="main">
<Route path="/instances" exact component={TableScreen} />
<Route path="/about" exact component={AboutScreen} />
<Route path="/admin/login" exact component={LoginScreen} />
<Route path="/admin/verify" exact component={VerifyLoginScreen} />
<Route path="/admin" exact component={AdminScreen} />
{/* We always want the GraphScreen to be rendered (since un- and re-mounting it is expensive */}
<GraphScreen />
</main>
2019-07-23 16:32:43 +00:00
</div>
</ConnectedRouter>
);
export default AppRouter;