We currently have a tools history page that can be accessed with URL path that looks like this "/tools/<tool name>/history". Accessing this URL leads to a page where you can view the revision history of the tool, view diff of the various revisions and take patrolling actions like undo and revert.
There is a need to implement a feature with similar functionalities as the tool history page, but this time for tools list.
Just like we access the tool history with "/tools/<tool name>/history", we need a feature that allows us to access tools list history by visiting the URL path "/lists/<id>/history".
**User story**
As a Toolhub user, I want to view a list's revision history in the same way that this is currently possible for tools so that I can see what changes have been made during the list's existence and take action if needed.
**Acceptance criteria**
[] There should be a “View history” button in toolhub.wikimedia.org/lists/{list-id}
[] When the “View history” button is clicked, it should lead to /lists/{list-id}/history
- **/lists/{list-id}/history should contain the following elements:**
[] The title “List history”
[] The text “view history for this list”
[] A “back to list info” button
[] A “compare two selected revisions” button, which is inactive unless two revisions are selected
[] A list of revisions with checkboxes, in most-recent-first chronological order
[] The options to “undo” or “revert” each revision
[] Other actions, depending on user permissions?
[] Pagination
[] When a specific revision is clicked, it should lead to /lists/{list-id}/history/revision/{revision-id}
* **/lists/{list-id}/history/revision/{revision-id} should contain the following elements:**
[] The text "List revision as of {datetime} by {user} ({revision info})"
[] A “Back to list history button”
[] A view of the list as it looked at that point in its history
[] When the “compare two selected revisions” button is clicked, it should lead to /lists/{list-id}/history/revision/{revision-id}/diff/{other-revision-id}
* **/lists/{list-id}/history/revision/{revision-id}/diff/{other-revision-id} should contain the following elements:**
[] The title “Revisions Diff”
[] The text “View difference between revisions of list {list-name}”
[] A “Back to list history button”
[] A split view of the two revisions displaying the diffs, with the most recent revision on the right side
* **Additional criteria**
[] New messages should be added to vue/src/assets/locales/i18n/{en,qqq}.json