import { useState } from 'react'; import { ChevronDown, ChevronRight, User } from 'lucide-react'; import { neonModelDisplayName, neonPersonaDisplayName } from '../utils/displayName'; const logoSrc = `${process.env.PUBLIC_URL || ''}/neon-logo.png`; export default function NeonModelSelector({ models, selected, onSelectionChange, loading }) { const [expandedModel, setExpandedModel] = useState(null); const isModelSelected = (modelId, personaName) => selected.some(s => s.model_id === modelId && s.persona_name === personaName); const togglePersona = (model, persona) => { const key = { model_id: model.model_id, persona_name: persona.persona_name, system_prompt: persona.system_prompt || '' }; if (isModelSelected(model.model_id, persona.persona_name)) { onSelectionChange(selected.filter(s => !(s.model_id === model.model_id && s.persona_name === persona.persona_name))); } else { onSelectionChange([...selected, key]); } }; if (loading) { return (
Checking model availability…
Select model + persona for comparison
{!models.length ? (No Neon models available right now.
) : (