fix(utils/isTrackPlayable): songs that have been removed from the shelves cannot be played either

This commit is contained in:
njzy 2020-12-02 00:37:57 +08:00
parent 962b81a628
commit ff98dc7d9b
3 changed files with 15 additions and 3 deletions

View file

@ -25,12 +25,21 @@ export function isTrackPlayable(track) {
) {
result.playable = false;
result.reason = "No Copyright";
} else if (track.privilege?.st < 0) {
result.playable = false;
result.reason = "The song has been removed from the shelves";
}
return result;
}
export function mapTrackPlayableStatus(tracks) {
export function mapTrackPlayableStatus(tracks, privileges = []) {
return tracks.map((t) => {
const privilege = privileges.find((item) => item.id === t.id) || {};
if (t.privilege) {
Object.assign(t.privilege, privilege);
} else {
t.privilege = privilege;
}
let result = isTrackPlayable(t);
t.playable = result.playable;
t.reason = result.reason;