diff --git a/apps/client/src/assets/icon-classic.svg b/apps/client/src/assets/icon-classic.svg
new file mode 100644
index 0000000000..0fbc903d8a
--- /dev/null
+++ b/apps/client/src/assets/icon-classic.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/apps/client/src/assets/icon-alt.svg b/apps/client/src/assets/icon-nightly.svg
similarity index 100%
rename from apps/client/src/assets/icon-alt.svg
rename to apps/client/src/assets/icon-nightly.svg
diff --git a/apps/client/src/widgets/dialogs/about.css b/apps/client/src/widgets/dialogs/about.css
index ef98b26f78..20182f1104 100644
--- a/apps/client/src/widgets/dialogs/about.css
+++ b/apps/client/src/widgets/dialogs/about.css
@@ -10,6 +10,24 @@
--bs-modal-width: 680px;
+ .icon {
+ width: 160px;
+ height: 160px;
+
+ &.icon-default {
+ background-image: url(../../assets/icon.svg);
+ }
+
+ &.icon-nightly {
+ background-image: url(../../assets/icon-nightly.svg);
+ }
+
+ &.icon-classic {
+ mask-image: url(../../assets/icon-classic.svg);
+ background-color: var(--muted-text-color);
+ }
+ }
+
h2 {
all: unset;
font-size: 2em;
diff --git a/apps/client/src/widgets/dialogs/about.tsx b/apps/client/src/widgets/dialogs/about.tsx
index b70f4ef7f5..b45cd19905 100644
--- a/apps/client/src/widgets/dialogs/about.tsx
+++ b/apps/client/src/widgets/dialogs/about.tsx
@@ -16,11 +16,13 @@ import { useCallback, useEffect } from "react";
import contributors from "../../../../../contributors.json";
import { Fragment } from "preact/jsx-runtime";
import { ComponentChildren } from "preact";
+import clsx from "clsx";
export default function AboutDialog() {
const [appInfo, setAppInfo] = useState(null);
const [shown, setShown] = useState(false);
const [isNightly, setNightly] = useState(false);
+ const [iconClassName, setIconClassName] = useState("icon-default");
const onLoad = useCallback(async () => {
if (!appInfo) {
@@ -33,17 +35,21 @@ export default function AboutDialog() {
useEffect(() => {
setNightly(!!appInfo?.appVersion.includes("test"));
+ if (isNightly) {
+ setIconClassName("icon-nightly");
+ }
}, [appInfo])
return (
setShown(false)}
>