props.onModelChange(props.model.id)}>
{props.model.name}
{subtitle()}
);
}
export function ModelSwitcher(props: ModelSwitcherProps) {
const [local] = splitProps(props, ['models', 'currentModelId', 'onModelChange', 'class']);
const currentModel = () => local.models.find((m) => m.id === local.currentModelId);
// Ungrouped models list first; grouped models collect under their group name,
// preserving first-seen group order.
const ungrouped = () => local.models.filter((m) => !m.group);
const groups = () => {
const order: string[] = [];
const byGroup = new Map