Feedback
Feedback is quiet. A tinted fill with no border on top of it; text mixed toward the foreground so one rule reads correctly on every theme; a shimmer instead of a pulse.
Error and warning notes
.folio-error-note / .folio-warning-noteDelivery failed
No keys remaining for Pro licence. Add more to resume delivery.
Sandbox mode: nothing here moves real money.
Skeleton
.folio-skeletonA light band sweeping a static bar. The sheen is themed: 0.3 white in light, 0.05 in dark.
Empty state
.folio-lv-emptyNo deliveries yet
They appear here the moment a payment completes.
tsx
<ErrorNote title="Delivery failed">No keys remaining. Add more to resume.</ErrorNote>
<Skeleton className="h-4 w-2/3" />
paysio.toast('Saved') // the dashboard's toast, outside your frame
paysio.toast('Could not save', { tone: 'error' })Rules
- Errors say what to do next. “Could not save” is not an error message; “Could not save: the name is already taken” is.
- Toasts for outcomes of an action the merchant just took; notes for state they need to see when they arrive.
- Skeletons appear where the content will be, at the content’s size. Never a spinner in the middle of the page.