When used in linear mode (default), the progressbar role is implemented, providing the additional context of progression within the defined flow to screen readers.
For cases where the steps are not necessarily sequential, the mode can be set to non-linear.
In this mode, the activeStep prop is required and the completion of an individual step can be controlled by providing the complete prop to the Step itself.
Steps can be made interactive by providing a handler via the onStepClick prop. This function receives the stepNumber and the id (as provided to the Step component itself).
In linear mode, a user can only interact with previous steps, e.g. steps that come before the current progress.
In linear mode, the step number passed to the progress prop will also be the active step. Any previous step can be made active using the activeStep prop.
In non-linear mode, the activeStep prop is required to set the starting point.