-
+
+
+ {/* Audio source: file picker or record */}
+
+ {/* Recording: filename + start/stop */}
+ {(recordingStep === "naming" || isRecording) && (
+
+ {recordingStep === "naming" && (
+ <>
+
+
+ setRecordingFilename(e.target.value)}
+ autoFocus
+ />
+
+
+
+
+
+ >
+ )}
+ {isRecording && (
+
+
+
+
+
+
+ {Math.floor(recordingDuration / 60)}:{(recordingDuration % 60).toString().padStart(2, "0")}
+
+ {recordingFilename}
+
+
+ )}
+
+ )}
+
+ {/* Transcribing progress */}
+ {isTranscribing && (
+
+
+ Transcribing audio...
+
+ )}
+
+ {/* Language */}
+
+
+
+
+
+ {/* Transcript */}
- setTranscript(e.target.value)}
+ disabled={isTranscribing}
+ rows={3}
+ className="resize-none text-sm"
/>
+