import React from 'react'; import { DropdownMenuRadioItem } from '../../ui/DropdownMenu.tsx'; import EditIcon from '../../svg/EditIcon'; import getIcon from '~/utils/getIcon'; export default function PresetItem({ preset = {}, value, onSelect, onChangePreset }) { const { endpoint } = preset; const icon = getIcon({ size: 20, endpoint: preset?.endpoint, error: false, className: 'mr-2' }); const getPresetTitle = () => { let _title = `${endpoint}`; if (endpoint === 'azureOpenAI' || endpoint === 'openAI') { const { chatGptLabel, model } = preset; if (model) _title += `: ${model}`; if (chatGptLabel) _title += ` as ${chatGptLabel}`; } else if (endpoint === 'bingAI') { const { jailbreak, toneStyle } = preset; if (toneStyle) _title += `: ${toneStyle}`; if (jailbreak) _title += ` as Sydney`; } else if (endpoint === 'chatGPTBrowser') { const { model } = preset; if (model) _title += `: ${model}`; } else if (endpoint === null) { null; } else { null; } return _title; }; // regular model return ( {icon} {preset?.title} ({getPresetTitle()}) {/* */}
); }