diff --git a/src/components/nodes/GenerateAudioNode.tsx b/src/components/nodes/GenerateAudioNode.tsx index aa32d93a..22c478ca 100644 --- a/src/components/nodes/GenerateAudioNode.tsx +++ b/src/components/nodes/GenerateAudioNode.tsx @@ -193,6 +193,18 @@ export function GenerateAudioNode({ id, data, selected }: NodeProps) => { + if (!audioRef.current || !audioRef.current.duration || !isFinite(audioRef.current.duration) || !waveformContainerRef.current) return; + + const rect = waveformContainerRef.current.getBoundingClientRect(); + const x = e.clientX - rect.left; + const progress = x / rect.width; + const newTime = progress * audioRef.current.duration; + + audioRef.current.currentTime = newTime; + setCurrentTime(newTime); + }, []); + const handlePlayPause = useCallback(() => { if (!audioRef.current) return; @@ -418,6 +430,7 @@ export function GenerateAudioNode({ id, data, selected }: NodeProps