Lewati ke konten
aksesin.Design system
FondasiKomponenAlur produk
Coba prototype
MULAI DI SINI
IkhtisarFondasi & tokenKomponen AksesinAlur produkTangkapan layar
PRIMITIVES30
Aksi⌄
ButtonDropdown Menu
Formulir⌄
FieldInputTextareaSelectCheckboxRadioSwitch
Tampilan Data⌄
CardBadgeChipAvatarTableStatProgressSkeleton
Umpan Balik⌄
AlertToastDialogSheetPopoverTooltipEmpty State
Navigasi⌄
TabsAccordionBreadcrumbPaginationStepper
Tata Letak⌄
Divider
Buka prototype
Sumber kebenaran visualToken → komponen → layar

Button

Tombol aksi dengan tujuh varian, empat ukuran, dan status muat.

Basis: Elemen <button> asli — fokus, aktivasi papan ketik, dan status nonaktif ditangani peramban.

src/components/ui/button.tsx

Varian

Tujuh varian yang seluruhnya memakai alias token semantik, tanpa satu pun nilai warna literal.

Ukuran

Tinggi tetap 32 / 40 / 48 piksel, ditambah ukuran ikon persegi.

Matriks Status

Status hover, fokus, dan ditekan dipaksa lewat atribut data-preview sehingga seluruhnya tampak sekaligus dalam satu tangkapan layar.

Statusprimarysecondaryoutlinedestructive
Normal
Hover
Fokus
Ditekan
Nonaktif

Status Muat

Menonaktifkan tombol dan menukar ikon awal dengan pemutar, sekaligus menyetel aria-busy.

Dengan Ikon

Ikon awal dan akhir menerima simpul React apa pun.

Lebar Penuh

Props

PropTipeBawaanKeterangan
variant"primary" | "secondary" | "outline" | "ghost" | "subtle" | "destructive" | "link""primary"Gaya visual tombol.
size"sm" | "md" | "lg" | "icon""md"Tinggi dan padding tombol.
loadingbooleanfalseMenampilkan pemutar, menonaktifkan tombol, dan menyetel aria-busy.
leadingIconReactNode—Ikon sebelum label. Disembunyikan saat loading.
trailingIconReactNode—Ikon setelah label.
…propsButtonHTMLAttributes<HTMLButtonElement>—Seluruh atribut tombol bawaan diteruskan, termasuk disabled, type, dan onClick.
BerikutnyaDropdown Menu