« get me outta code hell

content: gAIP{*}ChunkedList: stub processEntries refactor - hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
path: root/src/content/dependencies/generateArtistInfoPageCommentaryChunkedList.js
diff options
context:
space:
mode:
author(quasar) nebula <qznebula@protonmail.com>2024-02-06 09:56:50 -0400
committer(quasar) nebula <qznebula@protonmail.com>2024-02-06 09:56:50 -0400
commitc876fa2573d877f60198b24259d6908a1e775239 (patch)
treee14961ec0a6b73cfcccb4074bed2a39a085737f5 /src/content/dependencies/generateArtistInfoPageCommentaryChunkedList.js
parent10f57c4bbc5fc84d57c32c85a1dae55873088973 (diff)
content: gAIP{*}ChunkedList: stub processEntries refactor
Diffstat (limited to 'src/content/dependencies/generateArtistInfoPageCommentaryChunkedList.js')
-rw-r--r--src/content/dependencies/generateArtistInfoPageCommentaryChunkedList.js31
1 files changed, 20 insertions, 11 deletions
diff --git a/src/content/dependencies/generateArtistInfoPageCommentaryChunkedList.js b/src/content/dependencies/generateArtistInfoPageCommentaryChunkedList.js
index af5a923..2892152 100644
--- a/src/content/dependencies/generateArtistInfoPageCommentaryChunkedList.js
+++ b/src/content/dependencies/generateArtistInfoPageCommentaryChunkedList.js
@@ -18,23 +18,32 @@ export default {
   extraDependencies: ['html', 'language'],
 
   query(artist) {
-    const entries = [
-      ...artist.albumsAsCommentator.map(album => ({
-        thing: album,
-        entry: {
+    const processEntries = (things, details) =>
+      things.map(thing => ({
+        thing,
+        entry: details(thing),
+      }));
+
+    const albumEntries =
+      processEntries(
+        artist.albumsAsCommentator,
+        album => ({
           type: 'album',
           album,
-        },
-      })),
+        }));
 
-      ...artist.tracksAsCommentator.map(track => ({
-        thing: track,
-        entry: {
+    const trackEntries =
+      processEntries(
+        artist.tracksAsCommentator,
+        track => ({
           type: 'track',
           album: track.album,
           track,
-        },
-      })),
+        }));
+
+    const entries = [
+      ...albumEntries,
+      ...trackEntries,
     ];
 
     sortEntryThingPairs(entries, sortAlbumsTracksChronologically);