Mercurial
view love/epi/src/hooks/useComposer.ts @ 275:78699f810817
Add Qwen3-VL and WebRTC dictation services
Add Bazel targets for the CUDA-backed Qwen3-VL server and a local WebRTC faster-whisper dictation service.
Co-authored-by: Copilot <[email protected]>
Copilot-Session: e3d8cb06-6c95-4ae0-9757-651d3796ab00
| author | MrJuneJune <me@mrjunejune.com> |
|---|---|
| date | Mon, 17 Aug 2026 10:58:47 -0700 |
| parents | cf9caa4abc3e |
| children |
line wrap: on
line source
import { useCallback } from 'react'; import { useAtom } from 'jotai'; import { composerTextAtom, composerStatusAtom } from '@/atoms/composerAtom'; export const useComposer = () => { const [text, setText] = useAtom(composerTextAtom); const [status, setStatus] = useAtom(composerStatusAtom); const setSending = useCallback(() => setStatus('sending' as const), [setStatus]); const setIdle = useCallback(() => setStatus('idle' as const), [setStatus]); const reset = useCallback(() => { setText(''); setIdle(); }, [setText, setIdle]); const isSending = status === 'sending'; const isEmpty = text.trim() === ''; return { text, setText, status, isSending, isEmpty, isDisabled: isEmpty && !isSending, setSending, setIdle, reset, }; };