From 062e2873b4a0003b6fbf430deb8011472654f860 Mon Sep 17 00:00:00 2001 From: Medcl Date: Fri, 7 Mar 2025 17:14:20 +0800 Subject: [PATCH 1/4] fix: typo (#268) * v0.2.0 * fix: typo --------- Co-authored-by: ayang <473033518@qq.com> --- docs/content.en/docs/release-notes/_index.md | 4 ++-- package.json | 2 +- src-tauri/Cargo.lock | 2 +- src-tauri/Cargo.toml | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/content.en/docs/release-notes/_index.md b/docs/content.en/docs/release-notes/_index.md index b1380cae..0a914ed1 100644 --- a/docs/content.en/docs/release-notes/_index.md +++ b/docs/content.en/docs/release-notes/_index.md @@ -17,7 +17,7 @@ Information about release notes of Coco Server is provided here. ### Improvements -## 0.2.0 (2015-03-07) +## 0.2.0 (2025-03-07) ### Features @@ -55,7 +55,7 @@ Information about release notes of Coco Server is provided here. - etc. -## 0.1.0 (2015-02-16) +## 0.1.0 (2025-02-16) ### Features diff --git a/package.json b/package.json index f472b6a0..3d87591c 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "coco", "private": true, - "version": "0.2.0-rc.1", + "version": "0.2.0", "type": "module", "scripts": { "dev": "vite", diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index 683df21a..0f07b66b 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -733,7 +733,7 @@ dependencies = [ [[package]] name = "coco" -version = "0.2.0-rc.1" +version = "0.2.0" dependencies = [ "applications", "async-trait", diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index 2d5d38c6..18e92673 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "coco" -version = "0.2.0-rc.1" +version = "0.2.0" description = "Search, connect, collaborate – all in one place." authors = ["INFINI Labs"] edition = "2021" -- Gitee From 18b6e1cbc96d5a765af30d219ce4969395a0d27e Mon Sep 17 00:00:00 2001 From: ayangweb <75017711+ayangweb@users.noreply.github.com> Date: Fri, 7 Mar 2025 17:17:43 +0800 Subject: [PATCH 2/4] chore: fallback version (#269) --- package.json | 2 +- src-tauri/Cargo.lock | 2 +- src-tauri/Cargo.toml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 3d87591c..f472b6a0 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "coco", "private": true, - "version": "0.2.0", + "version": "0.2.0-rc.1", "type": "module", "scripts": { "dev": "vite", diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index 0f07b66b..683df21a 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -733,7 +733,7 @@ dependencies = [ [[package]] name = "coco" -version = "0.2.0" +version = "0.2.0-rc.1" dependencies = [ "applications", "async-trait", diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index 18e92673..2d5d38c6 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "coco" -version = "0.2.0" +version = "0.2.0-rc.1" description = "Search, connect, collaborate – all in one place." authors = ["INFINI Labs"] edition = "2021" -- Gitee From e68e8f7954ddcc52051447027af23304af97f787 Mon Sep 17 00:00:00 2001 From: ayangweb <75017711+ayangweb@users.noreply.github.com> Date: Fri, 7 Mar 2025 17:38:05 +0800 Subject: [PATCH 3/4] refactor: optimized theme switching (#270) --- src/components/Assistant/ConnectPrompt.tsx | 4 ++-- src/components/Cloud/DataSourceItem.tsx | 6 ++---- src/components/Settings/AboutView.tsx | 4 ++-- src/routes/layout.tsx | 19 ++++++++++++++----- src/stores/themeStore.ts | 4 ++++ 5 files changed, 24 insertions(+), 13 deletions(-) diff --git a/src/components/Assistant/ConnectPrompt.tsx b/src/components/Assistant/ConnectPrompt.tsx index 05ff4b52..e3178741 100644 --- a/src/components/Assistant/ConnectPrompt.tsx +++ b/src/components/Assistant/ConnectPrompt.tsx @@ -8,9 +8,9 @@ import { useThemeStore } from "@/stores/themeStore"; const ConnectPrompt = () => { const { t } = useTranslation(); - const activeTheme = useThemeStore((state) => state.activeTheme); + const isDark = useThemeStore((state) => state.isDark); - const logo = activeTheme === "dark" ? LoginDark : LoginLight; + const logo = isDark ? LoginDark : LoginLight; const handleConnect = async () => { emit("open_settings", "connect"); diff --git a/src/components/Cloud/DataSourceItem.tsx b/src/components/Cloud/DataSourceItem.tsx index 9cc11647..d5ae128f 100644 --- a/src/components/Cloud/DataSourceItem.tsx +++ b/src/components/Cloud/DataSourceItem.tsx @@ -20,7 +20,7 @@ interface DataSourceItemProps { export function DataSourceItem({ name, connector }: DataSourceItemProps) { // const isConnected = true; - const activeTheme = useThemeStore((state) => state.activeTheme); + const isDark = useThemeStore((state) => state.isDark); const connector_data = useConnectStore((state) => state.connector_data); const endpoint_http = useAppStore((state) => state.endpoint_http); @@ -42,9 +42,7 @@ export function DataSourceItem({ name, connector }: DataSourceItemProps) { const icons = connectorSource?.icon; if (!icons) { - return activeTheme === "dark" - ? source_default_dark_img - : source_default_img; + return isDark ? source_default_dark_img : source_default_img; } if (icons?.startsWith("http://") || icons?.startsWith("https://")) { diff --git a/src/components/Settings/AboutView.tsx b/src/components/Settings/AboutView.tsx index 81e5600d..6cf49789 100644 --- a/src/components/Settings/AboutView.tsx +++ b/src/components/Settings/AboutView.tsx @@ -8,9 +8,9 @@ import { useThemeStore } from "@/stores/themeStore"; export default function AboutView() { const { t } = useTranslation(); - const activeTheme = useThemeStore((state) => state.activeTheme); + const isDark = useThemeStore((state) => state.isDark); - const logo = activeTheme === "dark" ? logoDark : logoLight; + const logo = isDark ? logoDark : logoLight; return (
diff --git a/src/routes/layout.tsx b/src/routes/layout.tsx index bbf5780b..ddbd4670 100644 --- a/src/routes/layout.tsx +++ b/src/routes/layout.tsx @@ -18,6 +18,8 @@ export default function Layout() { const activeTheme = useThemeStore((state) => state.activeTheme); const setTheme = useThemeStore((state) => state.setTheme); + const isDark = useThemeStore((state) => state.isDark); + const setIsDark = useThemeStore((state) => state.setIsDark); function updateBodyClass(path: string) { const body = document.body; @@ -34,10 +36,9 @@ export default function Layout() { }); appWindow.onThemeChanged(({ payload }) => { - console.log("onThemeChanged", payload); if (activeTheme !== "auto") return; - setTheme(payload); + setIsDark(payload === "dark"); }); }); @@ -46,11 +47,19 @@ export default function Layout() { await appWindow.setTheme(nextTheme); - const root = window.document.documentElement; - root.className = nextTheme ?? "light"; - root.dataset.theme = nextTheme ?? "light"; + nextTheme = nextTheme ?? (await appWindow.theme()); + + setIsDark(nextTheme === "dark"); }, [activeTheme]); + useEffect(() => { + const theme = isDark ? "dark" : "light"; + const root = window.document.documentElement; + + root.className = theme; + root.dataset.theme = theme; + }, [isDark]); + useEffect(() => { updateBodyClass(location.pathname); }, [location.pathname]); diff --git a/src/stores/themeStore.ts b/src/stores/themeStore.ts index edea512a..c7f4a7c3 100644 --- a/src/stores/themeStore.ts +++ b/src/stores/themeStore.ts @@ -9,6 +9,8 @@ export type IThemeStore = { themes: AppTheme[]; activeTheme: AppTheme; setTheme: (theme: AppTheme) => void; + isDark: boolean; + setIsDark: (isDark: boolean) => void; }; export const useThemeStore = create()( @@ -17,6 +19,8 @@ export const useThemeStore = create()( themes: ["dark", "light", "auto"], activeTheme: "auto", setTheme: (activeTheme: AppTheme) => set(() => ({ activeTheme })), + isDark: false, + setIsDark: (isDark: boolean) => set(() => ({ isDark })), }), { name: "active-theme", -- Gitee From f02b8bb28a556195322cb78bad10c538d0e8a15d Mon Sep 17 00:00:00 2001 From: ayang <473033518@qq.com> Date: Fri, 7 Mar 2025 17:38:43 +0800 Subject: [PATCH 4/4] v0.2.0 --- package.json | 2 +- src-tauri/Cargo.lock | 2 +- src-tauri/Cargo.toml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index f472b6a0..3d87591c 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "coco", "private": true, - "version": "0.2.0-rc.1", + "version": "0.2.0", "type": "module", "scripts": { "dev": "vite", diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index 683df21a..0f07b66b 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -733,7 +733,7 @@ dependencies = [ [[package]] name = "coco" -version = "0.2.0-rc.1" +version = "0.2.0" dependencies = [ "applications", "async-trait", diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index 2d5d38c6..18e92673 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "coco" -version = "0.2.0-rc.1" +version = "0.2.0" description = "Search, connect, collaborate – all in one place." authors = ["INFINI Labs"] edition = "2021" -- Gitee