import { useState } from 'react';
import { Link } from 'react-router-dom';
import { Heart, MapPin } from 'lucide-react';
import { Badge } from '../ui/Badge';
import type { Listing } from '../../types';
import { formatCurrency } from '../../utils/format';
interface ListingCardProps {
listing: Listing;
}
export function ListingCard({ listing }: ListingCardProps) {
const [isFav, setIsFav] = useState(listing.isFavorited ?? false);
const conditionVariant = listing.condition === 'NEW' ? 'success'
: listing.condition === 'LIKE_NEW' ? 'info'
: 'default';
return (
{/* Image */}
{listing.category === 'FURNITURE' ? '\uD83E\uDE91' :
listing.category === 'ELECTRONICS' ? '\uD83C\uDFA7' :
listing.category === 'CLOTHING' ? '\uD83D\uDC55' :
listing.category === 'HOME_GARDEN' ? '\u2615' :
listing.category === 'SPORTS' ? '\uD83D\uDEB4' :
listing.category === 'BOOKS' ? '\uD83D\uDCDA' :
listing.category === 'GAMES' ? '\uD83C\uDFAE' : '\uD83D\uDCE6'}
{/* Content */}
{listing.title}
{formatCurrency(listing.price)}
{listing.obo && OBO}
{listing.condition.replace('_', ' ')}
{listing.location}
);
}