import { useState } from "react"; import { Check, Trash2, X, Play, Wand2, ArrowRight } from "lucide-react"; import type { MediaItem } from "../types"; interface MediaTileProps { item: MediaItem; onOpen: () => void; onDelete: (item: MediaItem) => Promise | void; onGenerateVideo?: (item: MediaItem, motionPrompt: string) => void; } export function MediaTile({ item, onOpen, onDelete, onGenerateVideo }: MediaTileProps) { const [confirmDelete, setConfirmDelete] = useState(false); const [deleting, setDeleting] = useState(false); const [showI2VInput, setShowI2VInput] = useState(false); const [motionPrompt, setMotionPrompt] = useState(""); async function confirm(event: React.MouseEvent) { event.stopPropagation(); if (deleting) return; setDeleting(true); try { await onDelete(item); } finally { setDeleting(false); setConfirmDelete(false); } } return (
{/* Media */} {item.type === "video" ? (
); }