import { useState } from 'react';
export default function CardItem({
card,
viewMode = 'grid',
isSelected = false,
onToggleSelect,
onAddToCollection,
onAddToDeck,
onToggleFavorite,
isFavorited = false
}) {
const [imageError, setImageError] = useState(false);
const handleSelectChange = (e) => {
e.stopPropagation();
onToggleSelect(card);
};
const handleImageError = () => {
setImageError(true);
};
if (viewMode === 'list') {
return (
{/* Selection Checkbox */}
{/* Card Image */}
{!imageError ? (

) : (
No Image
)}
{/* Card Info */}
{card.name}
{card.set_name} • {card.rarity}
{card.card_type}
{/* Game Badge */}
{card.game}
{/* Price */}
${card.market_price}
{/* Actions */}
);
}
// Grid view
return (
{/* Selection Checkbox */}
{/* Favorite Button */}
{/* Card Image */}
{!imageError ? (

) : (
)}
{/* Card Info */}
{card.name}
${card.market_price}
{card.set_name}
{card.rarity} • {card.card_type}
{/* Game Badge */}
{card.game}
{/* Quick Actions */}
);
}