"use client"; import Image from "next/image"; import { Button, Card, CardBody } from "@heroui/react"; import { buttonStyles } from "@/lib/buttonStyles"; interface ProductCardListProps { name: string; category: string; categoryColor: "orange" | "green" | "blue" | "purple" | "red"; iconType: "us-flag-1" | "hk-flag" | "us-flag-2" | "sg-flag" | "uk-flag"; poolCap: string; lockUp: string; poolCapacityPercent: number; onInvest?: () => void; } export default function ProductCardList({ name, category, categoryColor, iconType, poolCap, lockUp, poolCapacityPercent, onInvest, }: ProductCardListProps) { const getIconSrc = () => { switch (iconType) { case "us-flag-1": case "hk-flag": case "us-flag-2": default: return "/lr0.svg"; } }; const getIconBg = () => { switch (categoryColor) { case "orange": return "bg-orange-50 dark:bg-orange-900/20"; case "green": return "bg-green-50 dark:bg-green-900/20"; case "blue": return "bg-blue-50 dark:bg-blue-900/20"; case "purple": return "bg-purple-50 dark:bg-purple-900/20"; case "red": return "bg-red-50 dark:bg-red-900/20"; default: return "bg-orange-50 dark:bg-orange-900/20"; } }; return (
{/* Icon and Title - Fixed width */}
{name}
{category}
{name}
{/* Middle section with stats - evenly distributed */}
{/* Lock-up */}
Lock-up
{lockUp}
{/* Pool Cap */}
Pool Cap
{poolCap}
{/* Pool Capacity */}
Pool Capacity
{poolCapacityPercent}% Filled
{/* Invest Button */}
); }