"use client"; import Image from "next/image"; import { useApp } from "@/contexts/AppContext"; interface VipCardProps { memberTier: string; level: number; currentPoints: number; totalPoints: number; nextTier: string; pointsToNextTier: number; } export default function VipCard({ memberTier = "Silver Member", level = 2, currentPoints = 2450, totalPoints = 3000, nextTier = "Gold", pointsToNextTier = 550, }: VipCardProps) { const { t } = useApp(); const progressPercent = (currentPoints / totalPoints) * 100; const progressBarPercent = Math.min(progressPercent * 0.47, 38.4); // 根据原型调整比例 return (
{/* Top Left - Member Info */}
{memberTier} {t("points.currentTier")}
{/* Top Right - VIP Badge */}
{/* Badge Layers */}
{/* Decorative circles */}
{/* Level Badge */}
LV{level}
{/* Bottom - Progress Section */}
{/* Progress Label */}
{t("points.progress")} {currentPoints} / {totalPoints}
{/* Progress Bar */}
{/* Bottom - Next Tier */}
{t("points.pointsToNextTier") .replace("{points}", pointsToNextTier.toString()) .split("{tier}")[0]} {nextTier}
); }