## Spec for "Progress" Plugin...

A configurable Progress widget that can be added to any web page

## Table of Contents​

- [Spec for "Progress" Plugin...](#spec-for-%22progress%22-plugin)
- [Table of Contents​](#table-of-contents%e2%80%8b)
- [Workflow](#workflow)
- [User Stories](#user-stories)
- [Screens / States​](#screens--states%e2%80%8b)
- [Sections Used](#sections-used)
- [Test Plan](#test-plan)

## Workflow

(N/A)​

## User Stories

As a user, I can...

- Add a Progress object on my page
- Choose from a few pre-built designs for me to choose from
- Control basic layout (width, height, alignment, up/down position)
- Progress percentage

## Screens / States​

![]()

## Sections Used

- Presets
- Percent Complete (amount - more/less)
- Actions

## Test Plan

| √   | Scenario                                                            | Expected                                                              |
| --- | ------------------------------------------------------------------- | --------------------------------------------------------------------- |
| √   | When a user opens the [add new] tab                                 | A [Progress Widget] appears                                           |
| √   | When a user drags the Progress widget to the canvas                 | A simple Progress appears                                             |
| √   | When a user clicks the [*] button on the widget                     | The Progress properties box appears                                   |
| √   | When a user changes the layout (align, position)                    | settings adjust accordingly (both editor & live mode)                 |
| √   | When a user configures the design (font, color, bg, border, shadow) | settings adjust accordingly (both editor & live mode)                 |
| √   | When a user publishes a page with the Progress                      | The destination page shows the Progress as specified on the live page |
| x   | When a user chooses a preset                                        | settings overwrite to the preset settings                             |
