import Image from 'next/image' import { Link } from '@/i18n/routing' import { useLocale } from 'next-intl' import { Star } from 'lucide-react' export interface Gallery { id: string url: string } export interface Category { slug: string nameTr: string nameEn: string nameRu: string } export interface Neighborhood { slug: string nameTr: string nameEn: string nameRu: string } export interface Listing { id: string slug: string categoryId: string neighborhoodId: string nameTr: string nameEn: string nameRu: string descriptionTr: string descriptionEn: string descriptionRu: string address: string priceRange: number rating?: number | null isLocalApproved: boolean images: Gallery[] category?: Category neighborhood?: Neighborhood } export default function ListingCard({ listing }: { listing: Listing }) { const locale = useLocale() const name = locale === 'ru' ? listing.nameRu : locale === 'en' ? listing.nameEn : listing.nameTr const description = locale === 'ru' ? listing.descriptionRu : locale === 'en' ? listing.descriptionEn : listing.descriptionTr const categoryName = listing.category ? locale === 'ru' ? listing.category.nameRu : locale === 'en' ? listing.category.nameEn : listing.category.nameTr : '' const neighborhoodName = listing.neighborhood ? locale === 'ru' ? listing.neighborhood.nameRu : locale === 'en' ? listing.neighborhood.nameEn : listing.neighborhood.nameTr : '' const priceSymbols = '₺'.repeat(listing.priceRange) const categorySlug = listing.category?.slug || 'isletme' const mainImageUrl = listing.images && listing.images.length > 0 ? listing.images[0].url : 'https://images.unsplash.com/photo-1555396273-367ea4eb4db5?w=800&auto=format&fit=crop&q=80' return ( {/* Local Approved Seal */} {listing.isLocalApproved && (