'use client'; import { useMemo } from 'react'; import { cn } from '@/lib/utils'; interface TimeDisplayProps { bar: number; beat: number; durationBars: number; bpm: number; className?: string; } export function TimeDisplay({ bar, beat, durationBars, bpm, className, }: TimeDisplayProps) { const { currentTime, totalTime } = useMemo(() => { const secondsPerBeat = 60 / bpm; const secondsPerBar = secondsPerBeat * 4; const currentSeconds = bar * secondsPerBar + beat * secondsPerBeat; const totalSeconds = durationBars * secondsPerBar; const formatTime = (seconds: number) => { const mins = Math.floor(seconds / 60); const secs = Math.floor(seconds % 60); return `${mins}:${secs.toString().padStart(2, '0')}`; }; return { currentTime: formatTime(currentSeconds), totalTime: formatTime(totalSeconds), }; }, [bar, beat, durationBars, bpm]); return (