const DetailPanel = ({ data, onMarkWrong, isMarkedWrong }) => { if (!data) { return (

Select a segment to view details

); } const { start, end, speaker_id, transcription, confidence, contains_voiceover, perceived_voice_gender, speaker_identification } = data; return (

Segment Details

{start} - {end}

{/* Confidence Score */}
Transcription Confidence {(confidence * 100).toFixed(1)}%
{/* Speaker Info */}
Speaker Identity
{speaker_identification ? ( <>
{speaker_identification.name || "Unknown"}
{speaker_identification.title}
Prob: {speaker_identification.probability} ({speaker_identification.source_of_information})
) : (
{speaker_id}
)}
{/* Gender Info */}
Voice Analysis
{perceived_voice_gender.gender === 'male' ? ( ♂ Male ) : perceived_voice_gender.gender === 'female' ? ( ♀ Female ) : ( ? Unknown )}
Certainty: {perceived_voice_gender.probability}
{contains_voiceover ? 'Voiceover' : 'On-screen'}
); }; window.DetailPanel = DetailPanel;