import { History } from 'lucide-react'; import type { PageType } from '../../components/Sidebar'; import type { ViewMode } from './GeneralQA.types'; /** * 顶部栏 Props。 * * `setViewMode` 和 `onNavigate` 由父组件传入,父组件会在生成中切换时做确认拦截; * Header 本身不直接感知 loading,保持纯展示和事件转发。 */ type Props = { isDark: boolean; // 当前是否为暗黑主题,用于样式适配 viewMode: ViewMode; // 当前视图模式:'single' 单一模式 或 'compare' 对比模式 chatHeadTitle?: string; chatDesign?: string; compareShow?: boolean; setViewMode: (mode: ViewMode) => void; // 设置视图模式回调函数 onNavigate: (page: PageType) => void; // 页面导航回调函数,用于跳转到其他页面(如历史记录) }; /** * 通用问答页面顶部栏。 * * 该组件只负责页面标题、模式切换和历史记录入口,所有业务状态仍由父组件维护。 * 这样拆分后,顶部导航的样式和交互不会和中间问答流处理逻辑混在一起,后续如果要新增 * “保存模板”“导出记录”等入口,也可以只改这个文件。 */ export default function GeneralQAHeader({ isDark, viewMode, chatHeadTitle = '通用问答', chatDesign = '支持单轮RAG、多轮RAG、深度检索及结果对比', compareShow = true, setViewMode, onNavigate }: Props): JSX.Element { return (

{chatHeadTitle}

{chatDesign}
{ compareShow &&
{/* */}
}
); }