"use client"; import { Play, Pause, RefreshCw, Settings } from "lucide-react"; import { cn } from "@/utils/cn"; import { GradientSpinner } from "@/components/ui/GradientSpinner"; import type { DiscoverPlaylist, DiscoverConfig } from "../types"; interface BatchStatus { active: boolean; status: "downloading" | "scanning" | null; progress?: number; completed?: number; failed?: number; total?: number; } interface DiscoverActionBarProps { playlist: DiscoverPlaylist | null; config: DiscoverConfig | null; isPlaylistPlaying: boolean; isPlaying: boolean; onPlayToggle: () => void; onGenerate: () => void; onToggleSettings: () => void; isGenerating: boolean; batchStatus?: BatchStatus | null; } export function DiscoverActionBar({ playlist, config, isPlaylistPlaying, isPlaying, onPlayToggle, onGenerate, onToggleSettings, isGenerating, batchStatus, }: DiscoverActionBarProps) { const getStatusText = () => { if (!isGenerating) return null; if (batchStatus?.status === "scanning") { return "Importing tracks..."; } if (batchStatus?.total) { return `Downloading ${batchStatus.completed || 0}/${batchStatus.total}`; } return "Starting..."; }; return (
{/* Play Button */} {playlist && playlist.tracks.length > 0 && ( )} {/* Generate Button */} {/* Settings Button */}
); }