Model

First we define a model that describes the state of the application, just a plain JS object:


        

Buttons

The transitions parameter specifies the state transitions in the button in response to each event.


        

There can be several independent cycles for different kinds of element classes, for instance here we have one for the kind of button, and another for whether it is loading or not.

Delete buttons
Delete buttons can be added with the `DeleteButton` component to any element. They are meant for notifications, and for messages like this one.

Text input fields

Notifications

This button will add a notification with the text from the first text input field, and the class of the cycling buttons.

Progress bars

The progress bar shows the number of notifications sent.