@olundot/ui · Feedback
Badge
짧은 상태, 분류, 수량, 메타데이터 값을 빠르게 스캔하게 하는 조밀한 라벨입니다.
- variant
- status(dot 자동) · semantic · neutral · brand · pill
- tone
- neutral · success · warning · danger · info · accent
- 크기
- xs(18px) · sm(22px) · md(24px)
- 정적 라벨
- 읽기 전용 분류나 속성 라벨은 Badge variant=pill로 표현합니다.
- 상태와 구분
- 분류, 속성, 수량은 Badge를 사용합니다. 객체의 생명주기나 처리 결과 상태는 StatusBadge를 사용합니다.
- 접근성
- 색+텍스트 조합 필수 — 색만으로 상태 전달 금지
기본
상태·브랜드·분류 레이블 — 표면은 중립, 색은 점만중립진행 중대기오류검토OLUN
코드 보기tsx
import { Badge } from "@olundot/ui";
// 단일 tone 축: 표면은 항상 중립(--bg-surface), 의미색은 leading dot만 carry.
export function BadgeBasic() {
return (
<div style={{ display: "flex", gap: "8px", flexWrap: "wrap", alignItems: "center" }}>
<Badge>중립</Badge>
<Badge tone="success">진행 중</Badge>
<Badge tone="warning">대기</Badge>
<Badge tone="error">오류</Badge>
<Badge tone="info">검토</Badge>
<Badge tone="brand">OLUN</Badge>
</div>
);
}의미 색조
상태 의미에 맞춰 tone 선택 (점 색만 변경)제출 완료검토 필요기한 초과진행 중대기
코드 보기tsx
import { Badge } from "@olundot/ui";
export function BadgeTones() {
return (
<div style={{ display: "flex", gap: "8px", flexWrap: "wrap" }}>
<Badge tone="success">제출 완료</Badge>
<Badge tone="warning">검토 필요</Badge>
<Badge tone="error">기한 초과</Badge>
<Badge tone="info">진행 중</Badge>
<Badge tone="neutral">대기</Badge>
</div>
);
}상태 dot
상태 텍스트 + 점 — 표면 tint 없이 dot만으로 의미 전달활성보류중단검토 중
코드 보기tsx
import { Badge } from "@olundot/ui";
export function BadgeStatusDot() {
return (
<div style={{ display: "flex", gap: "8px", flexWrap: "wrap", alignItems: "center" }}>
<Badge tone="success">활성</Badge>
<Badge tone="warning">보류</Badge>
<Badge tone="error">중단</Badge>
<Badge tone="info">검토 중</Badge>
</div>
);
}브랜드·분류
brand tone은 lime 점, 그 외 분류는 neutralOLUN심장학
코드 보기tsx
import { Badge } from "@olundot/ui";
export function BadgeBrand() {
return (
<div style={{ display: "flex", gap: "8px", flexWrap: "wrap", alignItems: "center" }}>
<Badge tone="brand">OLUN</Badge>
<Badge tone="neutral">심장학</Badge>
</div>
);
}