@olundot/ui · Actions
Button
저장, 제출, 시작, 재개, 삭제처럼 명확한 명령을 실행하는 기본 액션입니다.
- 변형
- primary · outline · ghost · danger · emergency · subtle
- 핵심 토큰
- accent-solid / accent-on-solid · focus-ring
- 접근성 기준
- 아이콘 전용이 아니면 보이는 텍스트 라벨 필수
종류
6종 변형primary
outline
ghost
danger
emergency
subtle
코드 보기tsx
import { Button } from "@olundot/ui";
export function ButtonVariants() {
return (
<div style={{ display: "flex", flexWrap: "wrap", gap: "8px" }}>
<Button variant="primary">저장</Button>
<Button variant="outline">임시저장</Button>
<Button variant="ghost">취소</Button>
<Button variant="danger">삭제</Button>
<Button variant="emergency">긴급 중단</Button>
<Button variant="subtle">더보기</Button>
</div>
);
}크기
xs ~ xlxs 32
sm 34
md 38
lg 44
xl 48
코드 보기tsx
import { Button } from "@olundot/ui";
export function ButtonSizes() {
return (
<div style={{ display: "flex", flexWrap: "wrap", alignItems: "center", gap: "8px" }}>
<Button size="xs" variant="outline">최소</Button>
<Button size="sm" variant="outline">작음</Button>
<Button size="md" variant="outline">기본</Button>
<Button size="lg" variant="outline">큰</Button>
<Button size="xl" variant="outline">최대</Button>
</div>
);
}상태
disabled / loadingdisabled
loading
코드 보기tsx
import { Button } from "@olundot/ui";
export function ButtonStates() {
return (
<div style={{ display: "flex", flexWrap: "wrap", gap: "8px" }}>
<Button disabled>비활성화</Button>
<Button variant="outline" disabled>비활성 보조</Button>
<Button loading>저장 중…</Button>
<Button variant="outline" loading>처리 중…</Button>
</div>
);
}