« get me outta code hell

content, data: drop previous productions feature - hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
diff options
context:
space:
mode:
author(quasar) nebula <qznebula@protonmail.com>2025-12-31 07:29:40 -0400
committer(quasar) nebula <qznebula@protonmail.com>2025-12-31 07:29:40 -0400
commit0e15b509d725dc0ab16f9b7bad050bacb1ec9bf2 (patch)
treea3cba245c9fcbbd0a007e3713a9971172da85918
parent8749691c4242b6da831ed30540a12708fb7d655f (diff)
content, data: drop previous productions feature preview
-rw-r--r--src/content/dependencies/generateReferencedTracksList.js18
-rw-r--r--src/content/dependencies/generateTrackInfoPage.js6
-rw-r--r--src/content/dependencies/generateTrackInfoPagePreviousProductionLine.js38
-rw-r--r--src/data/checks.js1
-rw-r--r--src/data/things/track.js21
-rw-r--r--src/strings-default.yaml8
6 files changed, 7 insertions, 85 deletions
diff --git a/src/content/dependencies/generateReferencedTracksList.js b/src/content/dependencies/generateReferencedTracksList.js
index 1d566ce9..9a211998 100644
--- a/src/content/dependencies/generateReferencedTracksList.js
+++ b/src/content/dependencies/generateReferencedTracksList.js
@@ -1,29 +1,25 @@
 export default {
   relations: (relation, track) => ({
-    previousProductionTrackList:
-      relation('generateNearbyTrackList',
-        track.previousProductionTracks,
-        track,
-        track.artistContribs),
-
-    referencedTrackList:
+   trackList:
       relation('generateNearbyTrackList',
         track.referencedTracks,
         track,
         []),
   }),
 
-  generate: (relations, {html, language}) =>
+  generate: (relations, {html}) =>
     html.tag('ul', {[html.onlyIfContent]: true}, [
+      // This code is kept here because it's probably the only
+      // detailed example of html.inside() lol
+      /*
       html.inside(relations.previousProductionTrackList)
         .map(li => html.inside(li))
         .map(label =>
           html.tag('li',
             language.$('trackList.item.previousProduction',
               {track: label}))),
+      */
 
-      html.inside(relations.referencedTrackList),
+      html.inside(relations.trackList),
     ]),
 };
-
-
diff --git a/src/content/dependencies/generateTrackInfoPage.js b/src/content/dependencies/generateTrackInfoPage.js
index d3c2d766..0937c42c 100644
--- a/src/content/dependencies/generateTrackInfoPage.js
+++ b/src/content/dependencies/generateTrackInfoPage.js
@@ -83,9 +83,6 @@ export default {
     otherReleasesLine:
       relation('generateTrackInfoPageOtherReleasesLine', track),
 
-    previousProductionLine:
-      relation('generateTrackInfoPagePreviousProductionLine', track),
-
     contributorContributionList:
       relation('generateContributionList', track.contributorContribs),
 
@@ -234,9 +231,6 @@ export default {
           html.tag('p', {[html.onlyIfContent]: true},
             relations.otherReleasesLine),
 
-          html.tag('p', {[html.onlyIfContent]: true},
-            relations.previousProductionLine),
-
           html.tags([
             relations.contentHeading.clone()
               .slots({
diff --git a/src/content/dependencies/generateTrackInfoPagePreviousProductionLine.js b/src/content/dependencies/generateTrackInfoPagePreviousProductionLine.js
deleted file mode 100644
index f7f455c1..00000000
--- a/src/content/dependencies/generateTrackInfoPagePreviousProductionLine.js
+++ /dev/null
@@ -1,38 +0,0 @@
-import {stitchArrays} from '#sugar';
-import {getKebabCase} from '#wiki-data';
-
-export default {
-  relations: (relation, track) => ({
-    trackLinks:
-      track.followingProductionTracks
-        .map(track => relation('linkTrack', track)),
-
-    albumLinks:
-      track.followingProductionTracks
-        .map(following =>
-          (following.album !== track.album &&
-           getKebabCase(following.name) === getKebabCase(track.name)
-
-            ? relation('linkAlbum', following.album)
-            : null)),
-  }),
-
-  generate: (relations, {language}) =>
-    language.encapsulate('releaseInfo.previousProduction', capsule =>
-      language.$(capsule, {
-        [language.onlyIfOptions]: ['tracks'],
-
-        tracks:
-          language.formatConjunctionList(
-            stitchArrays({
-              trackLink: relations.trackLinks,
-              albumLink: relations.albumLinks,
-            }).map(({trackLink, albumLink}) =>
-                (albumLink
-                  ? language.$(capsule, 'trackOnAlbum', {
-                      track: trackLink,
-                      album: albumLink,
-                    })
-                  : trackLink))),
-      })),
-};
diff --git a/src/data/checks.js b/src/data/checks.js
index ac1b6257..e99a40de 100644
--- a/src/data/checks.js
+++ b/src/data/checks.js
@@ -293,7 +293,6 @@ export function filterReferenceErrors(wikiData, {
       artistContribs: '_contrib',
       contributorContribs: '_contrib',
       coverArtistContribs: '_contrib',
-      previousProductionTracks: '_trackMainReleasesOnly',
       referencedTracks: '_trackMainReleasesOnly',
       sampledTracks: '_trackMainReleasesOnly',
       artTags: '_artTag',
diff --git a/src/data/things/track.js b/src/data/things/track.js
index d8d61ebf..f07bba82 100644
--- a/src/data/things/track.js
+++ b/src/data/things/track.js
@@ -495,15 +495,6 @@ export class Track extends Thing {
 
     // > Update & expose - Referenced tracks
 
-    previousProductionTracks: [
-      inheritFromMainRelease(),
-
-      referenceList({
-        class: input.value(Track),
-        find: soupyFind.input('trackMainReleasesOnly'),
-      }),
-    ],
-
     referencedTracks: [
       inheritFromMainRelease(),
 
@@ -891,10 +882,6 @@ export class Track extends Thing {
       exposeDependency('#album.groups'),
     ],
 
-    followingProductionTracks: reverseReferenceList({
-      reverse: soupyReverse.input('tracksWhichAreFollowingProductionsOf'),
-    }),
-
     referencedByTracks: reverseReferenceList({
       reverse: soupyReverse.input('tracksWhichReference'),
     }),
@@ -1032,7 +1019,6 @@ export class Track extends Thing {
 
       // Referenced tracks
 
-      'Previous Productions': {property: 'previousProductionTracks'},
       'Referenced Tracks': {property: 'referencedTracks'},
       'Sampled Tracks': {property: 'sampledTracks'},
 
@@ -1234,13 +1220,6 @@ export class Track extends Thing {
       referencing: track => track.isSecondaryRelease ? [track] : [],
       referenced: track => [track.mainReleaseTrack],
     },
-
-    tracksWhichAreFollowingProductionsOf: {
-      bindTo: 'trackData',
-
-      referencing: track => track.isMainRelease ? [track] : [],
-      referenced: track => track.previousProductionTracks,
-    },
   };
 
   // Track YAML loading is handled in album.js.
diff --git a/src/strings-default.yaml b/src/strings-default.yaml
index b105cb62..e718aee6 100644
--- a/src/strings-default.yaml
+++ b/src/strings-default.yaml
@@ -301,11 +301,6 @@ releaseInfo:
 
     single: "as a single"
 
-  previousProduction:
-    _: "This track is a previous version or production of {TRACKS}."
-
-    trackOnAlbum: "{TRACK} (on {ALBUM})"
-
   tracksReferenced:
     _: "Tracks that {TRACK} references:"
     sticky: "Tracks that this one references:"
@@ -467,9 +462,6 @@ trackList:
     rerelease: >-
       {TRACK} (rerelease)
 
-    previousProduction: >-
-      {TRACK} (previous version or production)
-
 #
 # misc:
 #