2019-08-13 14:47:40 +00:00
|
|
|
import React, { Suspense, lazy } from "react";
|
|
|
|
import { BrowserRouter, Route, Switch } from "react-router-dom";
|
2019-09-03 09:36:52 +00:00
|
|
|
import { Loader } from "asc-web-components";
|
|
|
|
import StudioLayout from "./components/Layout/index";
|
2019-08-13 14:47:40 +00:00
|
|
|
import Login from "./components/pages/Login/Login";
|
|
|
|
import { PrivateRoute } from "./helpers/privateRoute";
|
2019-09-03 09:36:52 +00:00
|
|
|
import { Error404 } from "./components/pages/Error";
|
2019-06-04 11:55:15 +00:00
|
|
|
|
2019-08-15 07:48:16 +00:00
|
|
|
const Home = lazy(() => import("./components/pages/Home/Home"));
|
2019-08-13 14:47:40 +00:00
|
|
|
const About = lazy(() => import("./components/pages/About/About"));
|
2019-05-15 14:56:09 +00:00
|
|
|
|
2019-09-03 09:36:52 +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} />
|
2019-09-03 09:36:52 +00:00
|
|
|
<PrivateRoute component={Error404} />
|
2019-08-13 14:47:40 +00:00
|
|
|
</Switch>
|
|
|
|
</Suspense>
|
|
|
|
</StudioLayout>
|
|
|
|
</BrowserRouter>
|
|
|
|
);
|
2019-05-15 14:56:09 +00:00
|
|
|
};
|
|
|
|
|
2019-09-03 09:36:52 +00:00
|
|
|
export default App;
|