| 123456789101112131415161718192021222324252627282930313233343536 |
- // D2 트랙레코드 등급 배지 — 무등급/브론즈/실버/골드/황금개미.
- // 순수 프레젠테이션 (서버·클라이언트 공용, 'use client' 미선언 — 상태·이벤트 없음).
- import '@/app/styles/community.scss';
- import { TIER_META, TrackRecordTierValue } from '@/types/community';
- interface Props {
- // 숫자 코드 우선. 문자열 라벨(tier)만 있을 때 fallback 표기.
- tierCode: TrackRecordTierValue;
- label?: string;
- }
- const TIER_ICON: Record<string, string> = {
- none: '',
- bronze: '🥉',
- silver: '🥈',
- gold: '🥇',
- goldant: '🐜'
- };
- export default function TierBadge({ tierCode, label }: Props)
- {
- const meta = TIER_META[tierCode];
- if (!meta) {
- return <span className='tier-badge tier-badge--none'>{label ?? '무등급'}</span>;
- }
- const icon = TIER_ICON[meta.tone];
- return (
- <span className={`tier-badge tier-badge--${meta.tone}`}>
- {icon && <span className='tier-badge__icon' aria-hidden='true'>{icon}</span>}
- {label ?? meta.label}
- </span>
- );
- }
|