"use client"; import { ChevronDown } from "lucide-react"; import { useTranslation } from "react-i18next"; import { Menu, MenuPopup, MenuRadioGroup, MenuRadioItem, MenuTrigger, } from "@/components/ui/menu"; import { type ChatMode, CHAT_MODES, getMode } from "@/lib/chat-modes"; type ModePickerProps = { mode: ChatMode; onModeChange: (mode: ChatMode) => void; triggerClassName: string; }; /** * The situation-mode control in the chat composer (Chat / Analysis / Graph). * Replaces the old model picker — clinicians pick what they want the assistant * to do, not which LLM runs (that's configured once in Settings → AI). */ export function ModePicker({ mode, onModeChange, triggerClassName, }: ModePickerProps) { const { t } = useTranslation(); const selected = getMode(mode); const SelectedIcon = selected.icon; return ( } > {t(selected.labelKey)} onModeChange(value as ChatMode)} value={mode} > {CHAT_MODES.map((m) => { const Icon = m.icon; return ( {t(m.labelKey)} {t(m.descriptionKey)} ); })} ); }