import { BasicSidebarItem, SidebarItem } from "@/app/(stats)/_components/sidebar" import { Button } from "@/components/ui/button" import { Card, CardContent } from "@/components/ui/card" import { Separator } from "@/components/ui/separator" import { getColor } from "@/lib/colors" import { formatDate, formatNumber } from "@/lib/formatters" import { getCoinMultiplier, getTotalChallenges, getTotalCoins, getTotalQuests, rewardClaimed } from "@/lib/hypixel/general/stats" import { getGame, getGameMode } from "@/lib/hypixel/general/status" import { getGuildMember, getGuildRankTag, getMemberGEXP, getMemberWeeklyGEXP } from "@/lib/hypixel/guild/guild" import { Guild } from "@/lib/schema/guild" import { Player } from "@/lib/schema/player" import { Session } from "@/lib/schema/status" import Link from "next/link" import SocialIcons from "./social-icons" type SidebarProps = { level: number ign: string player: Player["player"] guild: Guild["guild"] | undefined rank: string | undefined specialRank: string | undefined eulaCoins: boolean | undefined session: Session["session"] | null } export default function Sidebar({ level, ign, player, guild, rank, specialRank, eulaCoins, session }: SidebarProps) { const levelMultiplier = getCoinMultiplier(level, rank, specialRank, eulaCoins) const levelMultiplierVal = levelMultiplier.value const levelMultiplierText = levelMultiplier.level === true ? `(Level ${level.toString().split(".")[0]})` : `(${levelMultiplier.name})` function General() { return (
Hypixel level
{formatNumber(level)}
Karma
{formatNumber(player.karma)}
Achievement Points {": "} {formatNumber(player.achievementPoints ?? 0)}
Quests Completed {": "} {formatNumber(getTotalQuests(player.quests))}