'use client'; import { useRouter } from 'next/navigation'; import { Download, Eye, MoreVertical, PlayCircle, RotateCcw, Ticket, Trash2, } from 'lucide-react'; import { Button } from '@/components/ui/button'; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, } from '@/components/ui/dropdown-menu'; import type { UploadListItem } from '@/types'; interface UploadActionsMenuProps { upload: UploadListItem; onViewVideo: (upload: UploadListItem) => void; } export function UploadActionsMenu({ upload, onViewVideo, }: UploadActionsMenuProps) { const router = useRouter(); return ( {upload.raw_video_url ? ( { event.stopPropagation(); onViewVideo(upload); }} > View Video ) : null} View Details Retry Analysis { event.stopPropagation(); if (upload.ticket_id) { router.push(`/ticket/${upload.ticket_id}`); } }} > Open Ticket Delete ); }