From 47587812b809fee2a95c76266d9d0e42fc4ac1ca Mon Sep 17 00:00:00 2001 From: crupest Date: Tue, 15 Jun 2021 14:14:28 +0800 Subject: ... --- FrontEnd/src/App.tsx | 83 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 FrontEnd/src/App.tsx (limited to 'FrontEnd/src/App.tsx') diff --git a/FrontEnd/src/App.tsx b/FrontEnd/src/App.tsx new file mode 100644 index 00000000..a4363ff5 --- /dev/null +++ b/FrontEnd/src/App.tsx @@ -0,0 +1,83 @@ +import React, { ReactElement } from "react"; +import { BrowserRouter as Router, Route, Switch } from "react-router-dom"; + +import AppBar from "./views/common/AppBar"; +import LoadingPage from "./views/common/LoadingPage"; +import Center from "./views/center"; +import Home from "./views/home"; +import Login from "./views/login"; +import Settings from "./views/settings"; +import About from "./views/about"; +import User from "./views/user"; +import TimelinePage from "./views/timeline"; +import Search from "./views/search"; +import AlertHost from "./views/common/alert/AlertHost"; + +import { useRawUser } from "./services/user"; + +const NoMatch: React.FC = () => { + return
Ah-oh, 404!
; +}; + +const LazyAdmin = React.lazy( + () => import(/* webpackChunkName: "admin" */ "./views/admin/Admin") +); + +function App(): ReactElement | null { + const user = useRawUser(); + + if (user === undefined) { + return ; + } else { + return ( + }> + + +
+ + + {user == null ? :
} + + + + + {user != null ? ( + +
+ + ) : null} + + + + + + + + + + + + + + + + + + + {user && user.hasAdministrationPermission && ( + + + + )} + + + + + + + + ); + } +} + +export default App; -- cgit v1.2.3