« get me outta code hell

data: Album.hideTracKSectionDurations, TrackSection.hideDuration - 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-07-04 13:19:47 -0300
committer(quasar) nebula <qznebula@protonmail.com>2026-07-04 13:19:47 -0300
commit46d936a5485d69551a3c30c5d9a1400f7fa3cd42 (patch)
tree85f790e9b1378d335291afe3d6de964b2ffcbc0e /src/data/things/album
parent26c6d6ccb887cbdac10d26160c923d2afcc7d521 (diff)
data: Album.hideTracKSectionDurations, TrackSection.hideDuration
Diffstat (limited to 'src/data/things/album')
-rw-r--r--src/data/things/album/Album.js9
-rw-r--r--src/data/things/album/TrackSection.js10
2 files changed, 19 insertions, 0 deletions
diff --git a/src/data/things/album/Album.js b/src/data/things/album/Album.js
index 5da54419..54b7ef2d 100644
--- a/src/data/things/album/Album.js
+++ b/src/data/things/album/Album.js
@@ -328,6 +328,14 @@ export class Album extends Thing {
       },
     ],
 
+    hideTrackSectionDurations: [
+      exposeUpdateValueOrContinue({
+        validate: input.value(isBoolean),
+      }),
+
+      exposeDependency('hideDuration'),
+    ],
+
     // > Update & expose - General metadata
 
     color: color(),
@@ -860,6 +868,7 @@ export class Album extends Thing {
       'Show Section In Nav Bar': {property: 'showTrackSectionInNavBar'},
       'Show Artists In Track List': {property: 'showArtistsInTrackList'},
       'Hide Duration': {property: 'hideDuration'},
+      'Hide Track Section Durations': {property: 'hideTrackSectionDurations'},
 
       // General metadata
 
diff --git a/src/data/things/album/TrackSection.js b/src/data/things/album/TrackSection.js
index 58515954..45c42250 100644
--- a/src/data/things/album/TrackSection.js
+++ b/src/data/things/album/TrackSection.js
@@ -146,6 +146,15 @@ export class TrackSection extends Thing {
       exposeDependency('#album.countTracksInArtistTotals'),
     ],
 
+    hideDuration: [
+      exposeUpdateValueOrContinue({
+        validate: input.value(isBoolean),
+      }),
+
+      withPropertyFromObject('album', V('hideTrackSectionDurations')),
+      exposeDependency('#album.hideTrackSectionDurations'),
+    ],
+
     excludingTrackURLs: [
       exposeUpdateValueOrContinue({
         validate: input.value(
@@ -244,6 +253,7 @@ export class TrackSection extends Thing {
       },
 
       'Count Tracks In Artist Totals': {property: 'countTracksInArtistTotals'},
+      'Hide Duration': {property: 'hideDuration'},
 
       'Excluding Track URLs': {
         property: 'excludingTrackURLs',