import { Label } from '@/components/ui/label'; import { Input } from '@/components/ui/input'; import { Checkbox } from '@/components/ui/checkbox'; import { AlertCircle, User, Users, Sparkles, Info } from 'lucide-react'; import { cn } from '@/lib/utils'; import { useI18n } from '@/lib/hooks/use-i18n'; import { Avatar, AvatarImage, AvatarFallback } from '@/components/ui/avatar'; interface Agent { id: string; name: string; avatar: string; role: string; priority: number; allowedActions: string[]; } interface AgentSettingsProps { agents: Agent[]; selectedAgentIds: string[]; maxTurns: string; agentMode: 'preset' | 'auto'; onToggleAgent: (agentId: string) => void; onMaxTurnsChange: (value: string) => void; onAgentModeChange: (mode: 'preset' | 'auto') => void; } export function AgentSettings({ agents, selectedAgentIds, maxTurns, agentMode, onToggleAgent, onMaxTurnsChange, onAgentModeChange, }: AgentSettingsProps) { const { t } = useI18n(); const getAgentName = (agent: Agent) => { const key = `settings.agentNames.${agent.id}`; const translated = t(key); return translated !== key ? translated : agent.name; }; const getAgentRole = (agent: Agent) => { const key = `settings.agentRoles.${agent.role}`; const translated = t(key); return translated !== key ? translated : agent.role; }; return (
{/* Mode Toggle */}
{agentMode === 'preset' ? ( <> {/* Preset mode: existing agent multi-select */}

{t('settings.agentSettingsDesc')}

{agents.map((agent) => (
onToggleAgent(agent.id)} > onToggleAgent(agent.id)} disabled={agent.role === 'teacher'} /> {getAgentName(agent).charAt(0)}
{getAgentName(agent)} {agent.role === 'teacher' && ( {t('settings.required')} )}
{getAgentRole(agent)}
))}
{/* Mode indicator */}
{selectedAgentIds.length === 0 && ( {t('settings.atLeastOneAgent')} )} {selectedAgentIds.length === 1 && ( {t('settings.singleAgentMode')} -{' '} {(() => { const agent = agents.find((a) => a.id === selectedAgentIds[0]); return agent ? getAgentName(agent) : t('settings.selectedAgent'); })()}{' '} {t('settings.directAnswer')} )} {selectedAgentIds.length > 1 && ( {t('settings.multiAgentMode')} -{' '} {t('settings.agentsCollaboratingCount', { count: selectedAgentIds.length, })} )}
{/* Max turns config - only show for multi-agent */} {selectedAgentIds.length > 1 && (

{t('settings.maxTurnsDesc')}

onMaxTurnsChange(e.target.value)} className="w-24" />
)} ) : ( <> {/* Auto mode: description */}
{t('settings.agentModeAutoDesc')}
)}
); }