"use client"; import Image from "next/image"; import { motion } from "framer-motion"; import { ExternalLink } from "lucide-react"; import { type Product } from "@/lib/products"; import { useLanguage } from "@/context/language-context"; interface ProductCardProps { product: Product; onViewDetails: (slug: number) => void; } export function ProductCard({ product, onViewDetails }: ProductCardProps) { const { t, language } = useLanguage(); const languageIndex = language === "uz" ? true : false; return ( {/* Image Container - Fixed Height */}
{languageIndex?product.name_uz:product.name_ru} {/* Gradient Overlay */}
{/* Content Container - Flex Grow */}
{/* Product Name */}

{languageIndex?product.name_uz:product.name_ru}

{/* Short Description - Fixed Height with Line Clamp */}

{languageIndex?product.name_uz:product.name_ru}

{/* CTA Button - Always at Bottom */} onViewDetails(product.id)} className="w-full flex items-center justify-center gap-2 px-6 py-3 bg-primary text-white rounded-xl font-semibold shadow-lg shadow-blue-500/30 hover:shadow-xl hover:shadow-primary/40 transition-all duration-300 group/button" > {t.details}
{/* Decorative Corner */}
); }