import { useTranslation } from '@/lib/use-translation' import type { PiModelSummary } from '@/types/api' import { groupModelsByProvider } from './piModelGroups' import { FloatingOverlay } from '@/components/ChatInput/FloatingOverlay' export function PiModelPanel(props: { models: PiModelSummary[] currentModel: { provider: string; modelId: string } | null controlsDisabled?: boolean onSelect: (model: PiModelSummary) => void onClose: () => void }) { const { t } = useTranslation() const groups = groupModelsByProvider(props.models) const disabled = props.controlsDisabled ?? false const isSelected = (piModel: PiModelSummary) => props.currentModel?.provider === piModel.provider && props.currentModel?.modelId === piModel.modelId return (
{t('misc.model')}
{groups.map((group) => (
{group.label}
{group.models.map((piModel) => { const selected = isSelected(piModel) return ( ) })}
))}
) }