import { Select, SelectContent, SelectItem, SelectItemIndicator, SelectItemText, SelectTrigger, SelectValue, } from '@langgenius/dify-ui/select' import * as React from 'react' import { useMemo } from 'react' import { useTranslation } from 'react-i18next' import { languages } from '@/i18n-config/language' type Props = Readonly<{ currentModel: any language: string voice: string onChange: (language: string, voice: string) => void }> const supportedLanguages = languages.filter((item) => item.supported) const TTSParamsPanel = ({ currentModel, language, voice, onChange }: Props) => { const { t } = useTranslation() const voiceList = useMemo>(() => { if (!currentModel) return [] return currentModel.model_properties.voices.map((item: { mode: string; name: string }) => ({ label: item.name, value: item.mode, })) }, [currentModel]) const setLanguage = (language: string) => { onChange(language, voice) } const setVoice = (voice: string) => { onChange(language, voice) } return ( <>
{t(($) => $['voice.voiceSettings.language'], { ns: 'appDebug' })}
{t(($) => $['voice.voiceSettings.voice'], { ns: 'appDebug' })}
) } export default TTSParamsPanel