Banner

A message about the whole app, across the top of every page while it's true. Specification: docs/components/banner.md

Intents

data-intent tints the strip and gives it its icon, whose word screen readers hear first ("Warning: Maintenance tonight"). With none it's plain news.

The new reports are here

Find them under Insights.

Your trial ends in 5 days

Payments are back to normal

Everything delayed this morning has gone through.

Maintenance tonight, 22:00–23:00

Invoices can't be sent during that hour.

Payments are delayed

The bank is slow to answer; nothing is lost.

Emphasis

data-emphasis="high" fills it, for the banner that must not be missed: a state that changes what everything in the app does. These have no close button: they stay while the state does.

Viewing as Ana Duarte

You see what she sees; nothing you do is saved as her.

This workspace is read-only

The last payment failed.

You're in the staging environment

Changes here don't reach customers.

Several

Banners stack, the most important first, each sticking under the one before. Two at most. A close button only on news that can be put away; canon.js names it, fires a cancelable canon-dismiss and hides the banner. Remembering that across pages is the app's.

This workspace is read-only

The new reports are here

Edge cases

Right to left, the icon is on the right and the actions on the left. In a narrow window the description goes under the title, then the actions under it.

صيانة الليلة، ٢٢:٠٠–٢٣:٠٠

لا يمكن إرسال الفواتير خلال تلك الساعة.

Your trial ends in 5 days

Choose a plan to keep your invoices.