export function formatTime(totalSeconds) { const isNegative = totalSeconds < 0; if (isNegative) { totalSeconds = -totalSeconds; } const minutes = Math.floor(totalSeconds / 60); const seconds = totalSeconds % 60; const paddedMinutes = String(minutes).padStart(2, '0'); const paddedSeconds = String(seconds).padStart(2, '0'); return `${isNegative ? '-' : ''}${paddedMinutes}:${paddedSeconds}`; } export function parseTime(timeString) { // MM:SS or -MM:SS if (!timeString || typeof timeString !== 'string') return 0; const isNegative = timeString.startsWith('-'); if (isNegative) { timeString = timeString.substring(1); } const parts = timeString.split(':'); if (parts.length !== 2) return 0; const minutes = parseInt(parts[0], 10); const seconds = parseInt(parts[1], 10); if (isNaN(minutes) || isNaN(seconds)) return 0; let totalSeconds = (minutes * 60) + seconds; return isNegative ? -totalSeconds : totalSeconds; }