diff --git a/src/pages/ChatPage.tsx b/src/pages/ChatPage.tsx index 691b048..c5d40a7 100644 --- a/src/pages/ChatPage.tsx +++ b/src/pages/ChatPage.tsx @@ -1,5 +1,5 @@ import React, { useState, useEffect, useRef, useCallback, useMemo } from 'react' -import { Search, MessageSquare, AlertCircle, Loader2, RefreshCw, X, ChevronDown, Info, Calendar, Database, Hash, Play, Pause, Image as ImageIcon, Link, Mic, CheckCircle, Copy, Check, Download } from 'lucide-react' +import { Search, MessageSquare, AlertCircle, Loader2, RefreshCw, X, ChevronDown, Info, Calendar, Database, Hash, Play, Pause, Image as ImageIcon, Link, Mic, CheckCircle, Copy, Check, Download, BarChart3 } from 'lucide-react' import { useNavigate } from 'react-router-dom' import { createPortal } from 'react-dom' import { useChatStore } from '../stores/chatStore' @@ -1257,6 +1257,15 @@ function ChatPage(_props: ChatPageProps) { }) }, [currentSessionId, navigate]) + const handleGroupAnalytics = useCallback(() => { + if (!currentSessionId || !isGroupChat(currentSessionId)) return + navigate('/group-analytics', { + state: { + preselectGroupIds: [currentSessionId] + } + }) + }, [currentSessionId, navigate]) + // 确认批量转写 const confirmBatchTranscribe = useCallback(async () => { if (!currentSessionId) return @@ -1477,6 +1486,15 @@ function ChatPage(_props: ChatPageProps) { )}
+ {isGroupChat(currentSession.username) && ( + + )}