diff options
author | (quasar) nebula <qznebula@protonmail.com> | 2025-07-02 17:43:34 -0300 |
---|---|---|
committer | (quasar) nebula <qznebula@protonmail.com> | 2025-07-02 17:43:34 -0300 |
commit | 112a840bdf69bfba5aae893e92b0b20c4a4884fd (patch) | |
tree | f82c3244a2f743d69e45556138b4ecd06b5369af /src/data | |
parent | da8d9d616eb4d002126a89e6cba7f26053c6e4c3 (diff) |
data, content: singles
Diffstat (limited to 'src/data')
-rw-r--r-- | src/data/things/album.js | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/src/data/things/album.js b/src/data/things/album.js index 51698148..a922e565 100644 --- a/src/data/things/album.js +++ b/src/data/things/album.js @@ -10,7 +10,7 @@ import {traverse} from '#node-utils'; import {sortAlbumsTracksChronologically, sortChronologically} from '#sort'; import {empty} from '#sugar'; import Thing from '#thing'; -import {isColor, isDate, isDirectory, isNumber} from '#validators'; +import {is, isColor, isDate, isDirectory, isNumber} from '#validators'; import { parseAdditionalFiles, @@ -25,13 +25,18 @@ import { parseWallpaperParts, } from '#yaml'; -import {exitWithoutDependency, exposeDependency, exposeUpdateValueOrContinue} - from '#composite/control-flow'; import {withPropertyFromObject} from '#composite/data'; import {exitWithoutArtwork, withDirectory, withHasArtwork} from '#composite/wiki-data'; import { + exitWithoutDependency, + exposeConstant, + exposeDependency, + exposeUpdateValueOrContinue, +} from '#composite/control-flow'; + +import { color, commentatorArtists, constitutibleArtwork, @@ -102,6 +107,19 @@ export class Album extends Thing { alwaysReferenceTracksByDirectory: flag(false), suffixTrackDirectories: flag(false), + style: [ + exposeUpdateValueOrContinue({ + validate: input.value(is(...[ + 'album', + 'single', + ])), + }), + + exposeConstant({ + value: input.value('album'), + }), + ], + bandcampAlbumIdentifier: simpleString(), bandcampArtworkIdentifier: simpleString(), @@ -541,6 +559,7 @@ export class Album extends Thing { 'Suffix Track Directories': {property: 'suffixTrackDirectories'}, 'Always Reference By Directory': {property: 'alwaysReferenceByDirectory'}, 'Always Reference Tracks By Directory': {property: 'alwaysReferenceTracksByDirectory'}, + 'Style': {property: 'style'}, 'Bandcamp Album ID': { property: 'bandcampAlbumIdentifier', |