Skip to content
Snippets Groups Projects

Add Blocks / Mutes management tabs under user settings page

Merged Tae Hoon requested to merge tae/pleroma-fe:227-manage-blocks-mutes into develop

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:

UI: download

Block/unblock: ezgif.com-crop

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • HJ
  • HJ
  • HJ
  • Maintainer

    biggest question is - does muting a user remove their posts from TL or not?

  • I don't think that's a concern of this issue, we have the option to show filtered statuses on timeline or not already (which btw is a bit fugged as it defaults to the opposite of existing behavior but I don't think it's a big deal either way if we can actually manage mutes with this MR)

    Edited by Shpuld Shpludson
  • Maintainer

    Hell yes it is a concern of this issue. Muting in pleromafe just collapses user's posts and we want to keep that behavior in.

  • I mean, this MR is about being able to manage mutes and blocks, it shouldn't have anything to do with what happens when you mute or block someone. I agree otherwise that filtering by user and displaying filtered statuses as thin lines should remain a thing.

  • Tae Hoon added 1 commit

    added 1 commit

    Compare with previous version

  • Tae Hoon added 1 commit

    added 1 commit

    Compare with previous version

  • Author Contributor

    Thanks for reviewing, guys! :thumbsup:

    fyi, 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

    We can hide that tab for now.

  • Tae Hoon added 1 commit

    added 1 commit

    Compare with previous version

  • Tae Hoon added 32 commits

    added 32 commits

    • 22ca85ee...cfdd885e - 5 commits from branch pleroma:develop
    • 12df967c - Add withLoadMore hoc
    • 4a737cbe - Add reusable BasicUserCard and UserList components
    • a56d2dfe - Add blocks tab with test data to user settings page
    • a817cc7c - Wire up ui to real blocks api data
    • 94e6de11 - Add withList hoc and remove UserList component
    • 5d6e1864 - Update BasicUserCard template and add a slot for customization
    • 0220d3d3 - Finally, added BlockCard
    • 52913d8f - Complete functionality of BlockCard
    • 82702748 - Update hocs to pass parent-scope bindings to the wrapped component
    • 159e8453 - Add withSubscription hoc
    • 8c8a6edc - Remove pagination support from block-list
    • 09315b27 - Add a prop to force-refresh data to withSubscription hoc
    • e91a94ff - Add mutes tab
    • 1fd9a1c7 - Set blockIds and muteIds to the currentUser state only
    • 8f608e06 - Just save blocks/mutes instead of adding
    • f81b82b4 - Use hoc definitions to be factor of factory
    • 339373b4 - Improve chaining hocs using vue-compose
    • 6d4d705c - Rename some options and add comments to HOCs
    • 8680046c - Pass down slots into wrapped components
    • b4a5b520 - Minor css improvements of hocs
    • a5162bd6 - Add note for empty state to the lists using slot
    • 395d2129 - Add new strings to i18n
    • 32c112bc - Remove pagination logic in fetchBlocks api
    • 85d43d17 - Add missing translation strings
    • 46e1f303 - Fix indent
    • 5bd36c64 - Remove needless css
    • 37eec09b - Comment out the mutes tab

    Compare with previous version

  • Maintainer

    Hell yes it is a concern of this issue. Muting in pleromafe just collapses user's posts and we want to keep that behavior in.

    Yes but we have to rename this feature because it's a direct conflict with Mastodon Mutes which is the functionality everyone expects -- something that's global for your account and not something that is only a feature of the PleromaFE "client".

  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Please register or sign in to reply
    Loading