Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support undo of mapping deletion and a "trash bin" for deleted mappings #354

Closed
2 tasks done
stefandesu opened this issue May 20, 2019 · 7 comments
Closed
2 tasks done
Labels
feature Additional functionality user experience Usage should be fun and easy
Milestone

Comments

@stefandesu
Copy link
Member

stefandesu commented May 20, 2019

  • When a mapping is deleted, there is a message "Mapping was deleted." That message should 1. stay a bit longer than other messages, and 2. include an undo button to restore that mapping in case it was deleted accidentally.

  • Additionally, recently deleted mappings could be kept in a "trash bin" from which they can be restored later if necessary. This trash bin should be either restricted by time (only keep the recent 7 days, for example), and/or by number of deleted mappings (only keep the last 10 deleted mappings).

@stefandesu stefandesu added user experience Usage should be fun and easy feature Additional functionality labels May 20, 2019
@stefandesu stefandesu added this to the 0.9.0 milestone May 20, 2019
@DennisTobola
Copy link
Collaborator

I would try to put the trash bin in between 'feedback' and the star for favorites.
Any settings can then be adjusted in 'Settings' -> 'Trashbin' (new subitem).
These are just suggestions, whether you implement them or not is up to you.

@stefandesu
Copy link
Member Author

Not sure about adding a new tab to settings just for this, but we can try to put it in the navbar.

I also forgot to mention that I would add a Ctrl/Cmd + z shortcut to undo the last deletion, but depending on how you look at this it can get complicated quickly. Like, should it also undo creating or editing a mapping? Should it still undo deletion if it happened half an hour ago? And so on. Any thoughts on this?

@nichtich
Copy link
Member

nichtich commented May 20, 2019 via email

@stefandesu
Copy link
Member Author

Requires #356.

@nichtich nichtich modified the milestones: 0.9.0, 0.9.1 May 27, 2019
@stefandesu stefandesu modified the milestones: 0.9.2, 0.9.3 Jun 6, 2019
@stefandesu
Copy link
Member Author

Note: This would not be a traditional "undo" of deletion of a mapping, but rather a "restore" in the sense that it will be saved again. This means that it will get the latest modified date as well as a new URI (in case of jskos-server at least). I don't think that this is a problem, but it's a caveat to keep in mind.

stefandesu added a commit to gbv/jskos-server that referenced this issue Jun 12, 2019
@stefandesu
Copy link
Member Author

jskos-server now allows a pre-given URI when POSTing a mapping, so that at least the URI can remain the same. Local mappings already have support for this.

@stefandesu
Copy link
Member Author

stefandesu commented Jun 12, 2019

Please try out the first implementation of this idea in dev.

Some notes:

  • No "undo" mapping on the "Mapping deleted" alert yet. -> it's there now
  • Trash can needs to be clicked to be opened (inconsistent with favorite concepts?). -> made consistent with favorite concepts
  • Trash uses old MappingTable component where the table header is not localized. -> localized and adjusted MappingTable
  • It's not yet clear from which registries the mappings are (but the information is saved, so you can delete and restore mappings from different registries). -> added registries
  • Only the last 5 mappings are kept. -> increased to 10
  • Deleted mappings are not saved in locale storage (yet?), which means they are lost when the page is reloaded. -> now saved to local storage

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature Additional functionality user experience Usage should be fun and easy
Projects
None yet
Development

No branches or pull requests

3 participants