import { Download } from 'lucide-react';
import { Button } from '@/components/ui/button';
import {
    DropdownMenu,
    DropdownMenuContent,
    DropdownMenuItem,
    DropdownMenuTrigger,
} from '@/components/ui/dropdown-menu';

type ReportsExportMenuProps = {
    onDownloadPdfSummary: () => void;
    onDownloadExcel: () => void;
    onExportRawCsv: () => void;
    className?: string;
};

export function ReportsExportMenu({
    onDownloadPdfSummary,
    onDownloadExcel,
    onExportRawCsv,
    className,
}: ReportsExportMenuProps) {
    return (
        <DropdownMenu>
            <DropdownMenuTrigger asChild>
                <Button variant="outline" size="sm" className={className}>
                    <Download className="size-4" />
                    EXPORT
                </Button>
            </DropdownMenuTrigger>
            <DropdownMenuContent align="end" className="w-64">
                <DropdownMenuItem onClick={onDownloadPdfSummary}>
                    Download as PDF (Summary)
                </DropdownMenuItem>
                <DropdownMenuItem onClick={onDownloadExcel}>
                    Download as Excel (Formatted)
                </DropdownMenuItem>
                <DropdownMenuItem onClick={onExportRawCsv}>
                    Export Raw Data (CSV)
                </DropdownMenuItem>
            </DropdownMenuContent>
        </DropdownMenu>
    );
}
