DocSpace-buildtools/web/ASC.Web.Client/src/App.js

32 lines
1.0 KiB
JavaScript
Raw Normal View History

2019-08-13 14:47:40 +00:00
import React, { Suspense, lazy } from "react";
import { BrowserRouter, Route, Switch } from "react-router-dom";
import { Loader } from "asc-web-components";
import StudioLayout from "./components/Layout/index";
2019-09-03 09:40:08 +00:00
import Login from "./components/pages/Login";
2019-08-13 14:47:40 +00:00
import { PrivateRoute } from "./helpers/privateRoute";
import { Error404 } from "./components/pages/Error";
2019-06-04 11:55:15 +00:00
2019-09-03 09:38:31 +00:00
const Home = lazy(() => import("./components/pages/Home"));
const About = lazy(() => import("./components/pages/About"));
2019-05-15 14:56:09 +00:00
const App = () => {
2019-08-13 14:47:40 +00:00
return (
<BrowserRouter>
<StudioLayout>
<Suspense
fallback={<Loader className="pageLoader" type="rombs" size={40} />}
>
<Switch>
<Route exact path="/login" component={Login} />
<PrivateRoute exact path="/" component={Home} />
<PrivateRoute exact path="/about" component={About} />
<PrivateRoute component={Error404} />
2019-08-13 14:47:40 +00:00
</Switch>
</Suspense>
</StudioLayout>
</BrowserRouter>
);
2019-05-15 14:56:09 +00:00
};
export default App;