UNPKG

@p0llen/speaker-detector-client

Version:

React client for interfacing with the [speaker-detector](https://pypi.org/project/speaker-detector) Python backend. Supports real-time speaker identification, meeting transcription, and speaker enrollment.

39 lines 1.32 kB
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator"; import { useState, useEffect } from "react"; import { generateTranscript } from "../lib/api"; export default function useMeetingTranscript() { var auto = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; var interval = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 10000; var [transcript, setTranscript] = useState(null); var [error, setError] = useState(null); var [loading, setLoading] = useState(false); function fetchTranscript() { return _fetchTranscript.apply(this, arguments); } function _fetchTranscript() { _fetchTranscript = _asyncToGenerator(function* () { setLoading(true); try { var data = yield generateTranscript(); setTranscript(data); } catch (err) { console.error("Transcript error:", err); setError("❌ Failed to fetch transcript"); } finally { setLoading(false); } }); return _fetchTranscript.apply(this, arguments); } useEffect(() => { if (!auto) return; var intervalId = setInterval(fetchTranscript, interval); return () => clearInterval(intervalId); }, [auto, interval]); return { transcript, fetchTranscript, loading, error }; }