'use client' import Link from 'next/link' import { cn } from '@/lib/utils' export type BadgeType = 'red' | 'blue' | 'green' export interface SidebarItemProps { label: string href: string icon: React.ReactNode active?: boolean badge?: { type: BadgeType value: string | number } onClick?: () => void } const badgeStyles: Record = { red: 'bg-red-500/90 text-white', blue: 'bg-blue-500/90 text-white', green: 'bg-emerald-500/90 text-white', } export default function SidebarItem({ label, href, icon, active, badge, onClick, }: SidebarItemProps) { const isPill = badge?.type === 'green' && typeof badge.value === 'string' return ( {icon} {label} {badge != null && ( {badge.value} )} ) }