diff options
Diffstat (limited to 'src/data/things/album')
| -rw-r--r-- | src/data/things/album/TrackSection.js | 14 | ||||
| -rw-r--r-- | src/data/things/album/index.js | 3 |
2 files changed, 17 insertions, 0 deletions
diff --git a/src/data/things/album/TrackSection.js b/src/data/things/album/TrackSection.js index e579a0f6..86c754ac 100644 --- a/src/data/things/album/TrackSection.js +++ b/src/data/things/album/TrackSection.js @@ -50,6 +50,12 @@ export class TrackSection extends Thing { name: name(V('Unnamed Track Section')), + style: { + flags: {update: true, expose: true}, + update: {validate: is('section', 'aside')}, + expose: {transform: value => value ?? 'section'}, + }, + // Track sections don't have a Name Detail themselves, but they do provide // a value which tracks can reference via 'Name Detail: section'. nameDetailForTracks: { @@ -147,6 +153,14 @@ export class TrackSection extends Thing { validate: input.value(isBoolean), }), + { + dependencies: ['style'], + compute: (continuation, {style}) => + (style === 'aside' + ? true + : continuation()), + }, + withPropertyFromObject('album', V('hideTrackSectionDurations')), exposeDependency('#album.hideTrackSectionDurations'), ], diff --git a/src/data/things/album/index.js b/src/data/things/album/index.js index 67bf47ab..a19144d9 100644 --- a/src/data/things/album/index.js +++ b/src/data/things/album/index.js @@ -1,2 +1,5 @@ export * from './Album.js'; export * from './TrackSection.js'; + +export * from './AsideTrackSection.js'; +export * from './CloseAsideTrackSection.js'; |