fix(desktop): DeerFlow UI — ChatArea refactor + ai-elements + dead CSS cleanup
ChatArea retry button uses setInput instead of direct sendToGateway, fix bootstrap spinner stuck for non-logged-in users, remove dead CSS (aurora-title/sidebar-open/quick-action-chips), add ai components (ReasoningBlock/StreamingText/ChatMode/ModelSelector/TaskProgress), add ClassroomPlayer + ResizableChatLayout + artifact panel Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -29,6 +29,7 @@ import { useProposalNotifications, ProposalNotificationHandler } from './lib/use
|
||||
import { useToast } from './components/ui/Toast';
|
||||
import type { Clone } from './store/agentStore';
|
||||
import { createLogger } from './lib/logger';
|
||||
import { startOfflineMonitor } from './store/offlineStore';
|
||||
|
||||
const log = createLogger('App');
|
||||
|
||||
@@ -86,6 +87,8 @@ function App() {
|
||||
|
||||
useEffect(() => {
|
||||
document.title = 'ZCLAW';
|
||||
const stopOfflineMonitor = startOfflineMonitor();
|
||||
return () => { stopOfflineMonitor(); };
|
||||
}, []);
|
||||
|
||||
// Restore SaaS session from OS keyring on startup (before auth gate)
|
||||
@@ -152,8 +155,11 @@ function App() {
|
||||
let mounted = true;
|
||||
|
||||
const bootstrap = async () => {
|
||||
// 未登录时不启动 bootstrap
|
||||
if (!useSaaSStore.getState().isLoggedIn) return;
|
||||
// 未登录时不启动 bootstrap,直接结束 loading
|
||||
if (!useSaaSStore.getState().isLoggedIn) {
|
||||
setBootstrapping(false);
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
// Step 1: Check and start local gateway in Tauri environment
|
||||
|
||||
Reference in New Issue
Block a user