From cd3b605f3afb4a451486be91f37d0010a68aa1df Mon Sep 17 00:00:00 2001 From: Cory Dransfeldt Date: Tue, 10 Oct 2023 11:44:19 -0700 Subject: [PATCH] chore: dry up music data --- src/_data/music.js | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/src/_data/music.js b/src/_data/music.js index df4106d3..c335a9b1 100644 --- a/src/_data/music.js +++ b/src/_data/music.js @@ -46,9 +46,11 @@ module.exports = async function () { } res.forEach((track) => { - if (!response['artists'][aliasArtist(track['attributes']['artistName'])]) { - response['artists'][aliasArtist(track['attributes']['artistName'])] = { - title: aliasArtist(track['attributes']['artistName']), + const artist = aliasArtist(track['attributes']['artistName']) + const album = sanitizeMedia(track['attributes']['albumName']) + if (!response['artists'][artist]) { + response['artists'][artist] = { + title: artist, image: `https://cdn.coryd.dev/artists/${track['attributes']['artistName'] .replace(/\s+/g, '-') .toLowerCase()}.jpg`, @@ -62,13 +64,13 @@ module.exports = async function () { type: 'artist', } } else { - response['artists'][aliasArtist(track['attributes']['artistName'])].plays++ + response['artists'][artist].plays++ } // aggregate albums - if (!response.albums[sanitizeMedia(track['attributes']['albumName'])]) { - response.albums[sanitizeMedia(track['attributes']['albumName'])] = { - title: sanitizeMedia(track['attributes']['albumName']), + if (!response.albums[album]) { + response.albums[album] = { + title: album, artist: aliasArtist(track['attributes']['artistName']), image: track['attributes']['artwork']['url'].replace('{w}', '500').replace('{h}', '500'), url: @@ -76,14 +78,12 @@ module.exports = async function () { ? `https://song.link/${track['relationships'].albums.data.pop().attributes.url}` : `https://musicbrainz.org/taglookup/index?tag-lookup.artist=${track['attributes'][ 'artistName' - ].replace(/\s+/g, '+')}&tag-lookup.release=${sanitizeMedia( - track['attributes']['albumName'] - ).replace(/\s+/g, '+')}`, + ].replace(/\s+/g, '+')}&tag-lookup.release=${album.replace(/\s+/g, '+')}`, plays: 1, type: 'album', } } else { - response.albums[sanitizeMedia(track['attributes']['albumName'])].plays++ + response.albums[album].plays++ } }) response.artists = sortByPlays(response.artists)