Skip to content

Conversation

@Lyall-A
Copy link
Contributor

@Lyall-A Lyall-A commented Oct 25, 2025

This allows sorting by explicit status and displays it in album/track info page (either Explicit, Clean or empty)

image image image

@vercel
Copy link

vercel bot commented Oct 25, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
feishin Ready Ready Preview Comment Oct 26, 2025 11:25am

Copy link
Collaborator

@kgarner7 kgarner7 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

explicitStatus is an OpenSubsonic concept that Navidrome is storing differently. Additional considerations:

  1. You can filter by tracks that are explicit in Navidrome (e), but for whatever reason you cannot search by tracks that are not explicit
  2. Jellyfin has the concept of OfficialRating, I couldn't really map that to an explicit/clean (and it's meant more for videos anyway). No clue if anyone actually passes that for audio.

comment: null | string;
createdAt: string;
duration: null | number;
explicitStatus: null | number;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use an enum instead of just a number.

discNumber: number;
discSubtitle: null | string;
duration: number;
explicitStatus: null | number;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here

discNumber: item.discNumber || 1,
discSubtitle: null,
duration: item.duration ? item.duration * 1000 : 0,
explicitStatus: null,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

comment: null,
createdAt: item.created,
duration: item.duration * 1000,
explicitStatus: null,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

{ key: 'songCount', label: 'filter.songCount' },
{
label: 'filter.explicitStatus',
render: (album) =>
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It would be better to translate this. You can pass in the TFunction to ItemDetailRow.render instead.

@Lyall-A
Copy link
Contributor Author

Lyall-A commented Oct 26, 2025

I switched to enum instead of number for the explicit status and added support for OpenSubsonic (only tested with Navidrome server though). I also added the explicit status to the cards of albums and tracks.

I considered adding support for it on Jellyfin, but as you said it seems to be parental ratings meant for videos and doesn't seem to pull it from metadata

@Lyall-A Lyall-A changed the title Add Navidrome explicit status Add explicit status for Navidrome and OpenSubsonic Oct 26, 2025
@kgarner7 kgarner7 merged commit 4dd52b0 into jeffvli:development Oct 26, 2025
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants