Toast

DESIGN IN PROGRESS IMPLEMENTATION PENDING

The three statuses above and their possible values:

PROPOSAL STATUS

DESIGN STATUS

IMPLEMENTATION STATUS

PROPOSAL STATUS

DESIGN STATUS

IMPLEMENTATION STATUS

DRAFT

DESIGN PENDING

IMPLEMENTATION PENDING

READY FOR REVIEW

DESIGN PLANNED

IMPLEMENTATION PLANNED

APPROVED TO ADD

DESIGN IN PROGRESS

IMPLEMENTATION IN PROGRESS

DEFERRED

DESIGN COMPLETE

IMPLEMENTATION COMPLETE

NEEDS CHANGES

 

 

For more information see the Contribution Process | Step 1 – Start a component proposal.

Toast is a pop-up style message that shows the user a brief, fleeting, dismissible message about a successful app process.


Design

https://www.figma.com/file/eGmDp94FlqEr4iSqy1Uc1K/Paragon-2021?node-id=7583%3A878

Variants

Property

 

Property

 

withAction
Toast has an optional button to be used for optional actions related to the actions that triggered the Toast. For example, if Toast is triggered after the learner shifts their due dates, you could offer them an optional link to view the new dates

False, True


Best Practices

Example use cases: Saving changes in Studio, or shifting your due dates in the LMS.

Use only for success

Toast is only used for success because it cannot show the user where their error occurred. Errors should be handled at the source of the error, not with Toast

Optional button should only have an optional action

Toast disappears after 5 seconds. Any action that a user is required to take, (ie completing an assignment in order to pass the course), should not be used inside Toast.

 

One at a time

Give the user time to process. Don’t overload them with too much information

 


Specification

 

Background: Gray 700

Font: Small Paragraph

Icon Button(Dark Palette)

Icon: Close

Optional Button, Secondary, Small, Dark

Corner radius: Radius 1 (4px)

Positioning: Bottom, Left

 

Z Index: Top-most layer

Elevation 5 Shadow

Behaviors

Auto-dismiss

Toast automatically dismisses after 5 seconds by default.

Disable timer:

  • On hover of the Toast container

  • On hover or focus of dismiss icon or optional button

Re-enable timer:

  • On mouse leave of the Toast container

  • On blur of dismiss icon or option button

Auto-dismiss timer: 5 - 15 second range

Animation when Toast is triggered

Fade-in duration: 500ms
Animation-timing-functions: ease-out
Keyframes:

  • from bottom -20px

  • to bottom 0px

Animation when Toast is dismissed or auto-dismissed

Fade-out duration: 200ms
Animation-timing-functions: ease-out
Keyframes:

  • from bottom 0px

  • to bottom 0px

Accessibility

Focus Management Expectations


The X should be a <button >with aria-label=”Close”.

It’s best if the whole message container appear near the top of the DOM though it may physically be anywhere on screen.

For urgent or modal messages, focus should be set on the container and then return to the previous origin when dismissed.

Persistence

Important messages may auto-dismiss after 5s if they can be located again. If they can’t be located again, they should persist until dismisses.

The persistence timer should stop if, on focus of any element in the snackbar, or on hover over the snackbar. The snackbar should not auto-dismiss while the user is attending to it.


Animation Behaviors

Subtle (<2s) transition animations on open or close are OK.

Semantics

A snackbar with no controls other than the close button should have role=”note”, role=”status”, or role=”alert” depending on the message urgency (are you intending to interrupt the user? Then it’s an alert.)

A snackbar with controls other than the close button should have role=”dialog” or role=”alertdialog” depending on the message urgency.


Notes

Notes from collaborator conversations or meetings regarding this component.

XX.XX.20XX