Files
socweb/frontend/components/workspace/cards/KnowledgeResultCard.tsx
T
gongzhiyongandClaude Sonnet 4.6 c6ca9dc126 fix: restore workspace components accidentally dropped from git index
workspace/ files existed on disk but were not included in previous
incremental commit, causing git to record them as deleted. Re-adding
all workspace card components, AgentWorkspace, ActivityTimeline, and
WorkspaceCardRenderer to properly track them.

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-04-10 03:09:41 +08:00

47 lines
1.7 KiB
TypeScript

"use client";
import { BookOpen } from "lucide-react";
interface KnowledgeResult {
title: string;
category: string;
snippet: string;
}
interface KnowledgeResultCardProps {
query: string;
total: number;
results: KnowledgeResult[];
}
export function KnowledgeResultCard({ query, total, results }: KnowledgeResultCardProps) {
return (
<div className="rounded-xl border border-[var(--gem-border)] bg-[var(--gem-surface)] p-4">
<div className="flex items-center gap-2 mb-3">
<BookOpen size={15} className="text-[var(--gem-blue,#4285f4)]" />
<span className="text-sm font-medium text-[var(--gem-text)]">知识库检索</span>
<span className="ml-auto text-xs text-[var(--gem-text-muted)] bg-[var(--gem-surface-2)] px-2 py-0.5 rounded-full">
{total} 条结果
</span>
</div>
{query && (
<p className="text-xs text-[var(--gem-text-muted)] mb-3">查询:{query}</p>
)}
<div className="space-y-3">
{results.map((r, i) => (
<div key={i} className="border-t border-[var(--gem-border)] pt-2 first:border-0 first:pt-0">
<div className="flex items-start gap-2">
<span className="text-xs text-[var(--gem-text)] font-medium leading-snug flex-1">{r.title}</span>
{r.category && (
<span className="text-[10px] text-[var(--gem-text-muted)] bg-[var(--gem-surface-2)] px-1.5 py-0.5 rounded flex-shrink-0">{r.category}</span>
)}
</div>
{r.snippet && (
<p className="text-xs text-[var(--gem-text-muted)] mt-1 leading-relaxed line-clamp-2">{r.snippet}</p>
)}
</div>
))}
</div>
</div>
);
}