diff options
author | (quasar) nebula <qznebula@protonmail.com> | 2024-05-21 06:42:02 -0300 |
---|---|---|
committer | (quasar) nebula <qznebula@protonmail.com> | 2024-05-21 06:42:20 -0300 |
commit | f151e4266b41fb5dfc7414f98ffb4b9c341cd976 (patch) | |
tree | 04b6aada7048ee591ddb1d25390cb930235276ae /src/content/dependencies | |
parent | 2383ce6c48e499e486e8ede66621af11af237c46 (diff) |
content: listArtistsByDuration: don't double-count double-credits
Diffstat (limited to 'src/content/dependencies')
-rw-r--r-- | src/content/dependencies/listArtistsByDuration.js | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/content/dependencies/listArtistsByDuration.js b/src/content/dependencies/listArtistsByDuration.js index f677d82c..66fab8be 100644 --- a/src/content/dependencies/listArtistsByDuration.js +++ b/src/content/dependencies/listArtistsByDuration.js @@ -1,5 +1,5 @@ import {sortAlphabetically, sortByCount} from '#sort'; -import {filterByCount, stitchArrays} from '#sugar'; +import {filterByCount, stitchArrays, unique} from '#sugar'; import {getTotalDuration} from '#wiki-data'; export default { @@ -17,10 +17,12 @@ export default { const durations = artists.map(artist => - getTotalDuration([ - ...(artist.tracksAsArtist ?? []), - ...(artist.tracksAsContributor ?? []), - ], {originalReleasesOnly: true})); + getTotalDuration( + unique([ + ...(artist.tracksAsArtist ?? []), + ...(artist.tracksAsContributor ?? []), + ]), + {originalReleasesOnly: true})); filterByCount(artists, durations); sortByCount(artists, durations, {greatestFirst: true}); |