wrobbinz / tension-ui Goto Github PK
View Code? Open in Web Editor NEWProductivity suite
Productivity suite
Below are specifications for how notes are saved and how multiple versions of a note can be created and accessed.
As a user
I want my notes to always be saved
So that I know they will always be saved and current
Given a user is editing a note
And the user has an internet connection
When they stop editing for ~1000ms
Then the note is saved to the DB
Given a user is editing a note
And there is no internet connection
When they view the application
Then the user made aware of the lack of connection
And notes are saved locally
And notes are saved automatically when internet access is regained
As a user
I want to save a version of my note
So that I can revert back to it at a later time
Given a user has edited a note
When they click into NoteOptions dropdown
Then a "Save New Version" option is available
Given a user has opened the NoteOptions dropdown
When they click the "Save New Version" option
Then a modal opens containing an "Version Name" input field and a "Save" button
And the input field is blank
And the "Save" button is disabled
Given a user has opened the "Save New Version" modal
When they type a version name into the input field
Then the "Save" button is enabled
Given a user has entered a name in the "Save New Version" modal
When "Save" button is clicked
Then the modal disappears
And the user is notified that the new version has been saved
As a user
I want to be able to see and revert back to any of a note's versions
So that I can get my note back to its previous state
Given a user has a note selected
And no versions have been saved for that note
When noteOptions dropdown is clicked
Then the option "Previous Versions" is disabled
Given a user has a note selected
And a version was previously created
When noteOptions dropdown is clicked
Then the option "Previous Versions" is enabled
And clicking the option opens the "Previous Versions" modal
Given a user has a note with previous versions
When they open the "Previous Versions" modal
Then a table of all saved versions is shown
And each row shows the version name, date created
And each row has a "Revert" button
Given a user has opened the "Previous Versions" modal
When they click the "Revert" button for note version
Then the modal closes
And the editor loads the selected note version's contents
The contents of a note (and so any version of a note) is stored as JSON. The note resource should have two fields:
contents
: An object representing the current content state of the note. This value is displayed in the editor.versions
: An array of note IDs referencing previously saved note versions.{
"contents": {},
"versions": [34, 98, 213]
}
The '+' next to the search box can be confusing.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.