import { Meta, Story, Controls, Canvas, Primary } from "@storybook/addon-docs";
import * as stories from "./banner.stories";
# Banner
Banners are used for important communication with the user that needs to be seen right away, but has
little effect on the experience. Banners appear at the top of the user's screen on page load and
persist across all pages a user navigates to.
- They should always be dismissible and never use a timeout. If a user dismisses a banner, it should
not reappear during that same active session.
- Use banners sparingly, as they can feel intrusive to the user if they appear unexpectedly. Their
effectiveness may decrease if too many are used.
- Avoid stacking multiple banners.
- Banners support a button link (text button).
## Types
Icons should remain consistent across these types. Do not change the icon without consulting
designers.
Use the following guidelines to help choose the correct type of banner.
### Premium
Used primarily to encourage user to upgrade to premium.
### Info
Used to communicate release notes, server maintenance or other informative event.
### Warning
Used to alert the user of outdated info or versions.
### Danger
Rarely used, but may be used to alert users over critical messages or very outdated versions.
## Accessibility
Banners sets the `role="status"` and `aria-live="polite"` attributes to ensure screen readers
announce the content prior to the test of the page. This behaviour can be disabled by setting
`[useAlertRole]="false"`.