diff options
author | (quasar) nebula <qznebula@protonmail.com> | 2023-07-07 12:53:22 -0300 |
---|---|---|
committer | (quasar) nebula <qznebula@protonmail.com> | 2023-07-07 12:53:22 -0300 |
commit | a04652960a6d62ed74e1f9bd1a6157909d329bdf (patch) | |
tree | f2b57a5ff490d7ad4b7a876d6b4fb97f696939af /src/listing-spec.js | |
parent | 82440b6c53b8c627f801d57b26bfefb7dbcb7eee (diff) |
content: listGroupsBy{Albums,Tracks,Duration}
Diffstat (limited to 'src/listing-spec.js')
-rw-r--r-- | src/listing-spec.js | 50 |
1 files changed, 3 insertions, 47 deletions
diff --git a/src/listing-spec.js b/src/listing-spec.js index 06b2088..5e03cc1 100644 --- a/src/listing-spec.js +++ b/src/listing-spec.js @@ -103,66 +103,22 @@ listingSpec.push({ listingSpec.push({ directory: 'groups/by-albums', stringsKey: 'listGroups.byAlbums', + contentFunction: 'listGroupsByAlbums', featureFlag: 'enableGroupUI', - - data: ({wikiData: {groupData}}) => - groupData - .map(group => ({ - group, - albums: group.albums.length - })) - .sort((a, b) => b.albums - a.albums), - - row: ({group, albums}, {language, link}) => - language.$('listingPage.listGroups.byAlbums.item', { - group: link.groupInfo(group), - albums: language.countAlbums(albums, {unit: true}), - }), }); listingSpec.push({ directory: 'groups/by-tracks', stringsKey: 'listGroups.byTracks', + contentFunction: 'listGroupsByTracks', featureFlag: 'enableGroupUI', - - data: ({wikiData: {groupData}}) => - groupData - .map((group) => ({ - group, - tracks: accumulateSum( - group.albums, - ({tracks}) => tracks.length), - })) - .sort((a, b) => b.tracks - a.tracks), - - row: ({group, tracks}, {language, link}) => - language.$('listingPage.listGroups.byTracks.item', { - group: link.groupInfo(group), - tracks: language.countTracks(tracks, {unit: true}), - }), }); listingSpec.push({ directory: 'groups/by-duration', stringsKey: 'listGroups.byDuration', + contentFunction: 'listGroupsByDuration', featureFlag: 'enableGroupUI', - - data: ({wikiData: {groupData}}) => - groupData - .map(group => ({ - group, - duration: getTotalDuration( - group.albums.flatMap(album => album.tracks), - {originalReleasesOnly: true}), - })) - .filter(({duration}) => duration > 0) - .sort((a, b) => b.duration - a.duration), - - row: ({group, duration}, {language, link}) => - language.$('listingPage.listGroups.byDuration.item', { - group: link.groupInfo(group), - duration: language.formatDuration(duration), - }), }); listingSpec.push({ |