import React from 'react'

export default function GenerationProgress({ model, progress, isGenerating }) {
  if (!isGenerating) return null

  return (
    <div className="py-3">
      {model === 'ace-step' && (
        <div className="space-y-1.5">
          <div className="flex items-center justify-between text-xs">
            <span className="text-gray-400">Generating with ACE-Step...</span>
            {progress?.step && progress?.totalSteps && (
              <span className="font-mono text-accent-400">
                Step {progress.step}/{progress.totalSteps}
              </span>
            )}
          </div>
          <div className="h-1.5 rounded-full bg-white/[0.06] overflow-hidden">
            <div
              className="h-full bg-accent-500 rounded-full transition-all duration-300"
              style={{
                width: progress?.step && progress?.totalSteps
                  ? `${(progress.step / progress.totalSteps) * 100}%`
                  : '60%',
                animation: (!progress?.step) ? 'pulse 2s ease-in-out infinite' : 'none',
              }}
            />
          </div>
          <span className="text-[10px] text-gray-600">
            {progress?.estimateSeconds
              ? `~${progress.estimateSeconds}s remaining`
              : 'XL Turbo: ~20-60s depending on duration'}
          </span>
        </div>
      )}

      {model === 'musicgen' && (
        <div className="space-y-1.5">
          <span className="text-xs text-gray-400">Generating with MusicGen...</span>
          <div className="h-1.5 rounded-full bg-white/[0.06] overflow-hidden">
            <div
              className="h-full bg-accent-500 rounded-full"
              style={{
                width: '100%',
                animation: 'pulse 2s ease-in-out infinite',
                opacity: 0.7,
              }}
            />
          </div>
        </div>
      )}
    </div>
  )
}
