diff --git a/packages/app/constants/settings/about/index.jsx b/packages/app/constants/settings/about/index.jsx
index 610c0f02..a675dbf2 100755
--- a/packages/app/constants/settings/about/index.jsx
+++ b/packages/app/constants/settings/about/index.jsx
@@ -1,6 +1,5 @@
import React from "react"
import * as antd from "antd"
-import moment from "moment"
import { Icons } from "components/Icons"
@@ -8,7 +7,13 @@ import config from "config"
import "./index.less"
-const Footer = (props) => {
+const connectionsTooltipStrings = {
+ secure: "This connection is secure",
+ insecure: "This connection is insecure, cause it's not using HTTPS protocol and the server cannot be verified on the trusted certificate authority.",
+ warning: "This connection is secure but the server cannot be verified on the trusted certificate authority.",
+}
+
+const Footer = () => {
const isDevMode = window.__evite?.env?.NODE_ENV !== "production"
return
@@ -39,6 +44,8 @@ export default {
const [serverManifest, setServerManifest] = React.useState(null)
const [serverOrigin, setServerOrigin] = React.useState(null)
+ const [serverHealth, setServerHealth] = React.useState(null)
+ const [secureConnection, setSecureConnection] = React.useState(false)
const checkServerVersion = async () => {
const serverManifest = await app.cores.api.customRequest()
@@ -51,12 +58,30 @@ export default {
if (instance) {
setServerOrigin(instance.origin)
+
+ if (instance.origin.startsWith("https")) {
+ setSecureConnection(true)
+ }
+ }
+ }
+
+ const featchServerHealth = async () => {
+ const response = await app.cores.api.customRequest({
+ method: "GET",
+ url: "/server/health",
+ }).catch(() => null)
+
+ console.log(response.data)
+
+ if (response) {
+ setServerHealth(response.data)
}
}
React.useEffect(() => {
checkServerVersion()
checkServerOrigin()
+ featchServerHealth()
}, [])
return
@@ -83,23 +108,59 @@ export default {
+ Server information
-
Server info
-
- Powered by Linebridgeâ„¢
+
+
Origin
-
-
v{serverManifest?.LINEBRIDGE_SERVER_VERSION ?? "Unknown"}
+
+ : }
+ >
+ {
+ secureConnection ? " Secure connection" : "Insecure connection"
+ }
+
+
+
+
+
+ {serverOrigin ?? "Unknown"}
- Server origin
-
-
-
{serverOrigin ?? "Unknown"}
+
+
Version
+
+
+ {serverManifest?.version ?? "Unknown"}
+
+
+
+
+
+
Instance usage
+
+
+
+
+
+
+ {
+ serverManifest?.LINEBRIDGE_SERVER_VERSION &&
Powered by Linebridgeâ„¢
+ }
diff --git a/packages/app/constants/settings/about/index.less b/packages/app/constants/settings/about/index.less
index c975b1f5..7790a2e2 100755
--- a/packages/app/constants/settings/about/index.less
+++ b/packages/app/constants/settings/about/index.less
@@ -71,22 +71,75 @@
margin-bottom: 10px;
+ background-color: var(--background-color-primary);
+
+ border-radius: 12px;
+
+ padding: 15px;
+
+ h1,
+ h2,
+ h3,
+ h4,
+ h5,
+ h6 {
+ margin-top: 0;
+ margin-bottom: 5px;
+ }
+
.field {
display: inline-flex;
flex-direction: column;
margin-bottom: 10px;
- font-size: 0.9rem;
+ .field_header {
+ display: flex;
+ flex-direction: row;
+
+ align-items: center;
+ justify-content: space-between;
- .value {
font-size: 0.8rem;
+ margin-bottom: 8px;
+
+ h3 {
+ margin: 0;
+ }
+ }
+
+ .field_value {
+ font-size: 0.9rem;
+
display: inline-flex;
flex-direction: row;
margin-left: 10px;
- margin-top: 5px;
+
+ font-family: "DM Mono", monospace;
+
+ background-color: var(--background-color-accent);
+ border-radius: 7px;
+ padding: 7px;
+
+ .ant-progress {
+ margin: 0;
+ }
+ }
+ }
+
+ .group_footer {
+ display: flex;
+ flex-direction: row;
+
+ justify-content: center;
+ align-items: center;
+
+ margin-top: 10px;
+
+ .button {
+ margin-left: 10px;
}
}
}