Add Blocks / Mutes management tabs under user settings page
As the first part of #227 (closed), this will add Blocks / Mutes tabs under user settings page. A user can block/unblock/mute/unmute the others in the tabs.
mute* here is mute* via PleromaFE here. I will rename the tab and action buttons along with the other parts of the application via a separate MR. (We are discussing to rename the current mute - PleromaFE mute.)
Mutes tab is not functional at the moment because of the related apis are not ready or functional.
- fetch -> /api/qvitter/mutes.json
- update -> /api/qvitter/set_profile_pref.json
BE also doesn't support MastodonAPI mutes*, so I couldn't support MastodonAPI mutes for now. I will revisit once BE is ready (pleroma#482 (closed)).
I want the original issue to be done in reasonably sized chunks when possible. The other possible features such as multi-deleting and searching can be done in separate MRs.
Technical note: I added a new reusable BasicUserCard
component which has no business logic except toggling view and several higher order components to reduce code repetition and improve code organization. block-list
and mute-list
components are composed using them. We can refactor the existing follow-list
and the other user lists using them.
Screenshots:
Block/unblock: ezgif.com-crop