« get me outta code hell

Revert "contracts: initial commit" - hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
path: root/src/content/dependencies/generateAlbumSidebarGroupBox.js
diff options
context:
space:
mode:
author(quasar) nebula <qznebula@protonmail.com>2023-05-25 08:54:29 -0300
committer(quasar) nebula <qznebula@protonmail.com>2023-05-25 08:54:29 -0300
commitbd0741dcf0c23489bf710249ab8fd9ba647db843 (patch)
tree644a7cacb30aed48d49dfc44f7a91ecb14339c28 /src/content/dependencies/generateAlbumSidebarGroupBox.js
parentb11cd3418188b8c4e4c8346577f9f7577736f807 (diff)
Revert "contracts: initial commit"
This reverts commit 4280c6240b88dadc8e5ea187b78c10aca9dfc163.
Diffstat (limited to 'src/content/dependencies/generateAlbumSidebarGroupBox.js')
-rw-r--r--src/content/dependencies/generateAlbumSidebarGroupBox.js22
1 files changed, 7 insertions, 15 deletions
diff --git a/src/content/dependencies/generateAlbumSidebarGroupBox.js b/src/content/dependencies/generateAlbumSidebarGroupBox.js
index 4e46c93..0679e8f 100644
--- a/src/content/dependencies/generateAlbumSidebarGroupBox.js
+++ b/src/content/dependencies/generateAlbumSidebarGroupBox.js
@@ -4,28 +4,20 @@ export default {
   contentDependencies: ['linkAlbum', 'linkExternal', 'linkGroup'],
   extraDependencies: ['html', 'language', 'transformMultiline'],
 
-  contracts: {
-    relations(contract, [album, group]) {
-      contract.provide({
-        group, album,
-
-        urls: contract.selectProperty(group, 'urls'),
-        adjacentAlbums: contract.subcontract('adjacentAlbumsInGroup', album, group),
-      });
-    },
-  },
-
-  relations(relation, {group, album, urls, adjacentAlbums}) {
+  relations(relation, album, group) {
     const relations = {};
 
     relations.groupLink =
       relation('linkGroup', group);
 
     relations.externalLinks =
-      urls.map(url =>
-        relation('linkExternal', urls));
+      group.urls.map(url =>
+        relation('linkExternal', url));
 
-    const {previousAlbum, nextAlbum} = adjacentAlbums;
+    const albums = group.albums.filter(album => album.date);
+    const index = albums.indexOf(album);
+    const previousAlbum = (index > 0) && albums[index - 1];
+    const nextAlbum = (index < albums.length - 1) && albums[index + 1];
 
     if (previousAlbum) {
       relations.previousAlbumLink =