refactor: replace Toast with Sonner

This commit is contained in:
tao.chen
2026-08-26 14:06:12 +08:00
parent f99b543100
commit d7f3db1cc4
18 changed files with 126 additions and 320 deletions
-11
View File
@@ -7,7 +7,6 @@ import type { ActivePage, NavigationItem, SubPage } from "./platform.navigation"
import { Collapsible } from "@base-ui/react/collapsible";
import type { Route } from "./+types/platform";
import { Toast } from "../components/common/Toast";
import { Topbar } from "../components/common/Topbar";
import Icon from "../components/common/Icon";
import {
@@ -165,8 +164,6 @@ function AuthenticatedLayout() {
const endEditing = useScriptWorkspaceStore((s) => s.endEditing);
const selectScript = useScriptWorkspaceStore((s) => s.selectScript);
const toast = useUiStore((s) => s.toast);
const dismissToast = useUiStore((s) => s.dismissToast);
const workspaceMenuOpen = useUiStore((s) => s.workspaceMenuOpen);
const setWorkspaceMenuOpen = useUiStore((s) => s.setWorkspaceMenuOpen);
@@ -199,13 +196,6 @@ function AuthenticatedLayout() {
// 心跳 / cleanup / 切页结束编辑 / 卸载前释放
useEditSessionLifecycle({ activePage });
// toast 自动消失
useEffect(() => {
if (!toast) return;
const timer = window.setTimeout(dismissToast, 3200);
return () => window.clearTimeout(timer);
}, [toast, dismissToast]);
// 原 common/Sidebar 的编辑会话守卫上移到这里:切出 /scripts 时有活动编辑
// 会话先 endEditing,回工作台时清空选中脚本;再按当前激活页导航。
function guardedNavigate(page: ActivePage, sub?: SubPage) {
@@ -279,7 +269,6 @@ function AuthenticatedLayout() {
<Outlet />
</SidebarInset>
<Toast toast={toast} />
</SidebarProvider>
);
}