"use client"; import { useState, useEffect } from "react"; import { getLevelInfo } from "@/lib/level-config"; import { UserLevel } from "@prisma/client"; import MemberBadge from "@/components/common/MemberBadge"; import { TrendingUp, BarChart3, Activity } from "lucide-react"; interface LevelProgressProps { level: UserLevel; points: number; } export default function LevelProgress({ level, points }: LevelProgressProps) { const info = getLevelInfo(points); return (
{info.points}分
{info.nextLevel && (
距离 {info.nextLevel.label} 还差 {info.nextLevel.remaining}分
= 15 ? "bg-amber-500" : parseInt(info.nextLevel.level.replace("LV", "")) >= 10 ? "bg-violet-500" : "bg-slate-400"}`} style={{ width: `${info.progress}%` }} />
)} {!info.nextLevel && (

🎉 已达到最高等级!

)}
); }