import React, { useState } from "react"; import useApi from "../../lib/useApi"; import { Button, CircularProgress } from "@chakra-ui/react"; type FileUploadButton = { transcriptId: string; }; export default function FileUploadButton(props: FileUploadButton) { const fileInputRef = React.useRef(null); const api = useApi(); const [progress, setProgress] = useState(0); const triggerFileUpload = () => { fileInputRef.current?.click(); }; const handleFileUpload = (event: React.ChangeEvent) => { const file = event.target.files?.[0]; if (file) { console.log("Calling api.v1TranscriptRecordUpload()..."); // Create an object of the expected type const uploadData = { file: file, // Add other properties if required by the type definition }; api?.httpRequest.config.interceptors.request.use((request) => { request.onUploadProgress = (progressEvent) => { setProgress((progressEvent.progress || 0) * 100); }; return request; }); api?.v1TranscriptRecordUpload({ transcriptId: props.transcriptId, formData: uploadData, }); } }; return ( <> ); }