From a7057f9e9fde68a4684d1ef36f68dca97ae8fc24 Mon Sep 17 00:00:00 2001 From: Steven Date: Tue, 30 Jul 2024 21:39:47 +0800 Subject: [PATCH] chore: update favicon with custom branding --- frontend/web/src/App.tsx | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/frontend/web/src/App.tsx b/frontend/web/src/App.tsx index 3c489e2..f0d8a9d 100644 --- a/frontend/web/src/App.tsx +++ b/frontend/web/src/App.tsx @@ -4,6 +4,7 @@ import { Outlet } from "react-router-dom"; import DemoBanner from "@/components/DemoBanner"; import { useWorkspaceStore } from "@/stores"; import useNavigateTo from "./hooks/useNavigateTo"; +import { PlanType } from "./types/proto/api/v1/subscription_service"; function App() { const navigateTo = useNavigateTo(); @@ -26,6 +27,16 @@ function App() { document.body.insertAdjacentElement("beforeend", styleEl); }, [workspaceStore.setting.customStyle]); + useEffect(() => { + const hasCustomBranding = workspaceStore.profile.plan === PlanType.PRO; + if (!hasCustomBranding || !workspaceStore.setting.branding) { + return; + } + + const favicon = document.querySelector("link[rel='icon']") as HTMLLinkElement; + favicon.href = new TextDecoder().decode(workspaceStore.setting.branding); + }, [workspaceStore.setting.branding]); + useEffect(() => { const root = document.documentElement; if (colorScheme === "light") {