diff options
author | (quasar) nebula <qznebula@protonmail.com> | 2025-04-14 21:16:30 -0300 |
---|---|---|
committer | (quasar) nebula <qznebula@protonmail.com> | 2025-04-16 13:03:15 -0300 |
commit | be421bae8d73ae06e66c705a6c78858bcf8568c3 (patch) | |
tree | e3e3b24e96172309fed81d6c890756f33b4e482a /src/data/things/track.js | |
parent | 14f9c99b13e499068b36ca67142fc20c3b3732a2 (diff) |
data: LyricsEntry & co
Diffstat (limited to 'src/data/things/track.js')
-rw-r--r-- | src/data/things/track.js | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/src/data/things/track.js b/src/data/things/track.js index 4a30433c..ae7be170 100644 --- a/src/data/things/track.js +++ b/src/data/things/track.js @@ -14,9 +14,11 @@ import { parseArtwork, parseCommentary, parseContributors, + parseCreditingSources, parseDate, parseDimensions, parseDuration, + parseLyrics, } from '#yaml'; import {withPropertyFromObject} from '#composite/data'; @@ -46,7 +48,6 @@ import { directory, duration, flag, - lyrics, name, referenceList, referencedArtworkList, @@ -89,7 +90,9 @@ export class Track extends Thing { ArtTag, Artwork, CommentaryEntry, + CreditingSourcesEntry, Flash, + LyricsEntry, TrackSection, WikiInfo, }) => ({ @@ -223,12 +226,18 @@ export class Track extends Thing { }), creditSources: thingList({ - class: input.value(CommentaryEntry), + class: input.value(CreditingSourcesEntry), }), lyrics: [ + // TODO: Inherited lyrics are literally the same objects, so of course + // their .thing properties aren't going to point back to this one, and + // certainly couldn't be recontextualized... inheritFromMainRelease(), - lyrics(), + + thingList({ + class: input.value(LyricsEntry), + }), ], additionalFiles: additionalFiles(), @@ -488,7 +497,10 @@ export class Track extends Thing { 'Always Reference By Directory': {property: 'alwaysReferenceByDirectory'}, - 'Lyrics': {property: 'lyrics'}, + 'Lyrics': { + property: 'lyrics', + transform: parseLyrics, + }, 'Commentary': { property: 'commentary', @@ -497,7 +509,7 @@ export class Track extends Thing { 'Credit Sources': { property: 'creditSources', - transform: parseCommentary, + transform: parseCreditingSources, }, 'Additional Files': { |