« get me outta code hell

data: TrackSection.{directorySuffix,suffixTrackDirectories} - hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
path: root/src/data/things/album.js
diff options
context:
space:
mode:
author(quasar) nebula <qznebula@protonmail.com>2025-10-08 06:20:38 -0300
committer(quasar) nebula <qznebula@protonmail.com>2025-10-08 06:23:30 -0300
commit57ca29d42e9348f9e102ddfd5a70428efa7037e4 (patch)
tree8bca6b57ba1940a0fe4def576b59cbcbfc5c1267 /src/data/things/album.js
parentf85c5329c825f259f0bc30fa0047f056b4f290ba (diff)
data: TrackSection.{directorySuffix,suffixTrackDirectories}
Diffstat (limited to 'src/data/things/album.js')
-rw-r--r--src/data/things/album.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/data/things/album.js b/src/data/things/album.js
index 0f018e44..58d5253c 100644
--- a/src/data/things/album.js
+++ b/src/data/things/album.js
@@ -1049,6 +1049,36 @@ export class TrackSection extends Thing {
 
     unqualifiedDirectory: directory(),
 
+    directorySuffix: [
+      exposeUpdateValueOrContinue({
+        validate: input.value(isDirectory),
+      }),
+
+      withAlbum(),
+
+      withPropertyFromObject({
+        object: '#album',
+        property: input.value('directorySuffix'),
+      }),
+
+      exposeDependency({dependency: '#album.directorySuffix'}),
+    ],
+
+    suffixTrackDirectories: [
+      exposeUpdateValueOrContinue({
+        validate: input.value(isBoolean),
+      }),
+
+      withAlbum(),
+
+      withPropertyFromObject({
+        object: '#album',
+        property: input.value('suffixTrackDirectories'),
+      }),
+
+      exposeDependency({dependency: '#album.suffixTrackDirectories'}),
+    ],
+
     color: [
       exposeUpdateValueOrContinue({
         validate: input.value(isColor),
@@ -1175,6 +1205,9 @@ export class TrackSection extends Thing {
   static [Thing.yamlDocumentSpec] = {
     fields: {
       'Section': {property: 'name'},
+      'Directory Suffix': {property: 'directorySuffix'},
+      'Suffix Track Directories': {property: 'suffixTrackDirectories'},
+
       'Color': {property: 'color'},
       'Start Counting From': {property: 'startCountingFrom'},