diff --git a/web/src/App.js b/web/src/App.js
index c6ca541c..4e89e794 100644
--- a/web/src/App.js
+++ b/web/src/App.js
@@ -17,7 +17,7 @@ import "./App.less";
import {Helmet} from "react-helmet";
import * as Setting from "./Setting";
import {BarsOutlined, DownOutlined, LogoutOutlined, SettingOutlined} from "@ant-design/icons";
-import {Avatar, Button, Card, ConfigProvider, Drawer, Dropdown, FloatButton, Layout, Menu, Result} from "antd";
+import {Avatar, Button, Card, ConfigProvider, Drawer, Dropdown, FloatButton, Layout, Menu, Result, theme} from "antd";
import {Link, Redirect, Route, Switch, withRouter} from "react-router-dom";
import OrganizationListPage from "./OrganizationListPage";
import OrganizationEditPage from "./OrganizationEditPage";
@@ -69,6 +69,7 @@ import SystemInfo from "./SystemInfo";
import AdapterListPage from "./AdapterListPage";
import AdapterEditPage from "./AdapterEditPage";
import {withTranslation} from "react-i18next";
+import SelectThemeBox from "./SelectThemeBox";
const {Header, Footer, Content} = Layout;
@@ -81,6 +82,8 @@ class App extends Component {
account: undefined,
uri: null,
menuVisible: false,
+ themeAlgorithm: null,
+ logo: null,
};
Setting.initServerUrl();
@@ -95,6 +98,16 @@ class App extends Component {
this.getAccount();
}
+ componentDidMount() {
+ localStorage.getItem("theme") ?
+ this.setState({"themeAlgorithm": this.getTheme()}) : this.setState({"themeAlgorithm": theme.defaultAlgorithm});
+ this.setState({"logo": Setting.getLogo(localStorage.getItem("theme"))});
+ addEventListener("themeChange", (e) => {
+ this.setState({"themeAlgorithm": this.getTheme()});
+ this.setState({"logo": Setting.getLogo(localStorage.getItem("theme"))});
+ });
+ }
+
componentDidUpdate() {
// eslint-disable-next-line no-restricted-globals
const uri = location.pathname;
@@ -184,6 +197,10 @@ class App extends Component {
return "";
}
+ getTheme() {
+ return Setting.Themes.find(t => t.key === localStorage.getItem("theme"))["style"];
+ }
+
setLanguage(account) {
const language = account?.language;
if (language !== "" && language !== i18next.language) {
@@ -465,54 +482,62 @@ class App extends Component {
renderRouter() {
return (
-
-
- this.renderHomeIfLoggedIn()} />
- this.renderHomeIfLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- } />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- {/* this.renderLoginIfNotLoggedIn()}/>*/}
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- this.renderLoginIfNotLoggedIn()} />
- } />
- this.renderLoginIfNotLoggedIn()} />
- } />} />
-
-
+
+
+
+ this.renderHomeIfLoggedIn()} />
+ this.renderHomeIfLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ } />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ {/* this.renderLoginIfNotLoggedIn()}/>*/}
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ this.renderLoginIfNotLoggedIn()} />
+ } />
+ this.renderLoginIfNotLoggedIn()} />
+ } />} />
+
+
+
);
}
@@ -532,30 +557,27 @@ class App extends Component {
if (!Setting.isMobile()) {
return (
-