The connect-wallet atom — one button, three states (disconnected · connecting · connected).
Anatomy
disconnected [ Connect wallet ] ← primary Button
connecting [ ● Connecting… ] ← disabled, warning dot pulses
connected [ ● 7xKt…9fQ2 ] ← secondary, buy dot, mono
└ truncated 4…4 (full address in aria-label)Props
| Prop | Type | Default | Notes | ||
|---|---|---|---|---|---|
status | "disconnected" | "connecting" \ | "connected"` | — | Drives the whole rendering. |
address | string | — | Required when connected; truncated 4…4 visually. | ||
onClick | () => void | — | Connect (disconnected) / open account (connected). | ||
className | string | — | cn-merged onto the Button. |
Motion
The connecting dot pulses (status, not data — TxStatus's rule). Press
and hover ride Button's 150ms/0.96 contract.
A11y
Composes Button (real <button>, focusable, 0.96 press). Connected
state's aria-label carries the full address — truncation is
visual only (AddressChip's rule). Dots are aria-hidden; the visible
text names each state.