bluesky-social / atproto

Social networking technology created by Bluesky
Other
6.17k stars 432 forks source link

Grouped labels (labelValueGroups?) #2564

Open Bossett opened 3 months ago

Bossett commented 3 months ago

Is your feature request related to a problem? Please describe.

The number of labels provided by a labeller is a challenge to manage for both administrators and users once it gets past around 10 (i.e. one 'screen') - to alleviate this, I would like to group up labels to allow users to choose one action on all grouped labels, and allow the UI to collapse groups (e.g. an accordion or similar) for easier management.

These groups can be leveraged to collapse the number of individual labels under items in the UI as well.

In the UI, I'm imagining that the grouped headings end up with a button that just changes the 'sliders' for all the children (i.e. it's not 'set' at the parent) - as this handled the non-intuitive behaviour of a slider where items are in multiple groups. This approach also limits the required validation. Users could later be presented with a choice for each group to 'combine' or similar - to indicate that the UI should not show those labels individually on posts/accounts. There are a lot of potential 'tidy-ups' that can happen.

Describe the solution you'd like

An addition to app.bsky.labeler.service that allows this definition - something like labelValueGroups that just takes a description and array of label identifiers.

Describe alternatives you've considered

The only way to currently solve this is to minimise labels in use - which can lead to (for an end user) undesirable groupings.