import { useEffect, useState } from 'react'; import { shouldShowVoiceInputControl, isVoiceInputAvailable } from '../voice/capabilities'; import { VoiceInputDialog } from './VoiceInputDialog'; function MicIcon() { return ( ); } export function VoiceInputButton({ disabled = false, onSend, onError, }: { disabled?: boolean; onSend: (text: string) => void; onError?: (message: string) => void; }) { const [open, setOpen] = useState(false); const [sessionKey, setSessionKey] = useState(0); const [available, setAvailable] = useState(true); useEffect(() => { setAvailable(isVoiceInputAvailable()); }, []); if (!shouldShowVoiceInputControl()) return null; const blocked = disabled || !available; return ( <> setOpen(false)} onSend={onSend} onError={onError} /> ); }