gaza/src/features/sessions/CapabilityPanel.tsx
Ubuntu 212b53b923 完善 Session 详情与能力操作组件
Co-authored-by: multica-agent <github@multica.ai>
2026-08-03 19:25:59 +00:00

7 lines
832 B
TypeScript

import type { Capability, CapabilityId } from "../../protocol/model";
export function CapabilityPanel({ declared, catalog, onSelect }: { declared: readonly CapabilityId[]; catalog: readonly Capability[]; onSelect?: (capability: Capability) => void }) {
const visible = catalog.filter((capability) => declared.includes(capability.capability_id));
return <section aria-labelledby="capabilities"><h3 id="capabilities">Capability</h3>{visible.length === 0 ? <p className="empty-state"></p> : <ul className="card-list">{visible.map((capability) => <li key={capability.capability_id}><div><strong>{capability.name}</strong><small>{capability.description ?? capability.capability_id}</small></div>{onSelect && <button onClick={() => onSelect(capability)}></button>}</li>)}</ul>}</section>;
}