« get me outta code hell

data: Album.nameFor{ReferencingAcrossWiki,Sorting} - hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
path: root/src/data/things/album
diff options
context:
space:
mode:
author(quasar) nebula <qznebula@protonmail.com>2026-06-05 10:56:55 -0300
committer(quasar) nebula <qznebula@protonmail.com>2026-06-05 11:23:45 -0300
commit6c563804c1c327afb3dc56b16f50bba14d9d0882 (patch)
tree6435af49898a1f95cd634e1999c7343f101c4c34 /src/data/things/album
parent582ba55324d612d8bdfd57f41c23d1b3d33e104e (diff)
data: Album.nameFor{ReferencingAcrossWiki,Sorting}
Diffstat (limited to 'src/data/things/album')
-rw-r--r--src/data/things/album/Album.js24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/data/things/album/Album.js b/src/data/things/album/Album.js
index 1a07656a..b89770aa 100644
--- a/src/data/things/album/Album.js
+++ b/src/data/things/album/Album.js
@@ -519,6 +519,30 @@ export class Album extends Thing {
 
     isAlbum: exposeConstant(V(true)),
 
+    nameForReferencingAcrossWiki: [
+      {
+        dependencies: ['alwaysReferenceByDirectory'],
+        compute: (continuation, {alwaysReferenceByDirectory}) =>
+          (alwaysReferenceByDirectory
+            ? continuation.exit(null)
+            : continuation()),
+      },
+
+      exposeDependency('nameForSorting'),
+    ],
+
+    nameForSorting: [
+      {
+        dependencies: ['name', 'nameDetail'],
+        compute: (continuation, {name, nameDetail}) =>
+          (nameDetail
+            ? continuation.exit(`${name} (${nameDetail})`)
+            : continuation()),
+      },
+
+      exposeDependency('name'),
+    ],
+
     commentatorArtists: commentatorArtists(),
 
     tracks: [