Skip to content

Commit 88b4c79

Browse files
committed
✨ 添加“测试版”菜单
1 parent 2a73fb6 commit 88b4c79

File tree

1 file changed

+27
-1
lines changed

1 file changed

+27
-1
lines changed

app/src/core/service/GlobalMenu.tsx

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,19 @@ import { activeProjectAtom, isClassroomModeAtom, projectsAtom, store } from "@/s
1616
import AIWindow from "@/sub/AIWindow";
1717
import SettingsWindow from "@/sub/SettingsWindow";
1818
import { deserialize, serialize } from "@graphif/serializer";
19+
import { getVersion } from "@tauri-apps/api/app";
1920
import { appCacheDir, dataDir, join } from "@tauri-apps/api/path";
2021
import { getCurrentWindow } from "@tauri-apps/api/window";
2122
import { open, save } from "@tauri-apps/plugin-dialog";
2223
import { readTextFile, writeTextFile } from "@tauri-apps/plugin-fs";
23-
import { open as openFilePath } from "@tauri-apps/plugin-shell";
24+
import { open as openFilePath, open as shellOpen } from "@tauri-apps/plugin-shell";
2425
import { useAtom } from "jotai";
2526
import {
2627
Airplay,
2728
AppWindow,
2829
Axe,
2930
Bot,
31+
Bug,
3032
CircleAlert,
3133
ExternalLink,
3234
File,
@@ -87,13 +89,18 @@ export function GlobalMenu() {
8789
const [activeProject] = useAtom(activeProjectAtom);
8890
const [isClassroomMode, setIsClassroomMode] = useAtom(isClassroomModeAtom);
8991
const [recentFiles, setRecentFiles] = useState<RecentFileManager.RecentFile[]>([]);
92+
const [version, setVersion] = useState<string>("");
93+
const [isUnstableVersion, setIsUnstableVersion] = useState(false);
9094

9195
useEffect(() => {
9296
refresh();
9397
}, []);
9498

9599
async function refresh() {
96100
setRecentFiles(await RecentFileManager.getRecentFiles());
101+
const ver = await getVersion();
102+
setVersion(ver);
103+
setIsUnstableVersion(ver.includes("alpha") || ver.includes("beta") || ver.includes("rc") || ver.includes("dev"));
97104
}
98105

99106
return (
@@ -527,6 +534,25 @@ export function GlobalMenu() {
527534
</Item>
528535
</Content>
529536
</Menu>
537+
538+
{isUnstableVersion && (
539+
<Menu>
540+
<Trigger className="*:text-destructive! text-destructive!">
541+
<MessageCircleWarning />
542+
测试版
543+
</Trigger>
544+
<Content>
545+
<Item variant="destructive">v{version}</Item>
546+
<Item variant="destructive">此版本并非正式版</Item>
547+
<Item variant="destructive">可能包含 Bug 和未完善的功能</Item>
548+
<Separator />
549+
<Item onClick={() => shellOpen("https://github.com/graphif/project-graph/issues/487")}>
550+
<Bug />
551+
报告 Bug: 在 Issue #487 中评论
552+
</Item>
553+
</Content>
554+
</Menu>
555+
)}
530556
</Menubar>
531557
);
532558
}

0 commit comments

Comments
 (0)