Controls
Loading Button
Action button that compresses into loading before resolving with feedback.
Installation
Coming soon. Components will be available via the registry once checkout goes live.
Usage
<LoadingButton
label="Publish"
successLabel="Published"
onClick={async () => {
await publish();
}}
/>Props
| Prop | Type | Default | Description |
|---|---|---|---|
| label | string | "Submit" | Idle-state label. |
| successLabel | string | "Done" | Label shown briefly on success before returning to idle. |
| ...rest | HTMLMotionProps<"button"> | — | All standard button / Motion props (onClick, disabled, className, etc.) are forwarded. |
Use cases
Form submission
Sign-up, checkout, or settings save where async feedback matters.
Destructive confirms
Delete / archive flows — the compress-then-resolve gives users time to register the action.
Webhook & deploy triggers
“Run”, “Deploy”, “Trigger” buttons in dev tooling that call long-running endpoints.
AI generate actions
“Generate”, “Summarize”, “Rewrite” buttons that call a model and need a calm in-flight state.