import { fileDownloadUrl } from '../../lib/apiClient';

interface FilePreviewFallbackProps {
  fileId: string;
  fileName: string;
  loading?: boolean;
  error?: string | null;
  message?: string;
}

export function FilePreviewFallback({
  fileId,
  fileName,
  loading,
  error,
  message,
}: FilePreviewFallbackProps) {
  if (loading) {
    return <p className="text-lg text-white/50">미리보기 로딩 중…</p>;
  }

  return (
    <div className="flex max-w-lg flex-col items-center gap-3 px-6 text-center">
      <p className="text-xl font-bold text-white/70">{fileName}</p>
      <p className="text-base leading-relaxed text-white/45">
        {error ?? message ?? '미리보기를 표시할 수 없습니다.'}
      </p>
      {error && (
        <p className="text-sm text-white/35">
          서버 재시작 등으로 파일이 삭제되었을 수 있습니다. 단계 수정에서 다시 첨부해 주세요.
        </p>
      )}
      <a
        href={fileDownloadUrl(fileId)}
        className="rounded-lg bg-white/10 px-4 py-2 text-sm font-bold text-white/80 hover:bg-white/20"
      >
        다운로드
      </a>
    </div>
  );
}
