From 7342b35d0da518fa5559dadc3239fd574a105432 Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Mon, 14 Apr 2025 20:59:17 -0300 Subject: data: CommentaryEntry Fully integrated, all in one commit! Wow! --- src/data/things/album.js | 35 ++++++++++++++++++++++++++++++----- 1 file changed, 30 insertions(+), 5 deletions(-) (limited to 'src/data/things/album.js') diff --git a/src/data/things/album.js b/src/data/things/album.js index 4c85ddfa..2f5e1093 100644 --- a/src/data/things/album.js +++ b/src/data/things/album.js @@ -16,6 +16,7 @@ import { parseAdditionalNames, parseAnnotatedReferences, parseArtwork, + parseCommentary, parseContributors, parseDate, parseDimensions, @@ -32,7 +33,6 @@ import {exitWithoutContribs, withDirectory, withCoverArtDate} import { additionalFiles, additionalNameList, - commentary, color, commentatorArtists, constitutibleArtwork, @@ -69,6 +69,7 @@ export class Album extends Thing { static [Thing.getPropertyDescriptors] = ({ ArtTag, Artwork, + CommentaryEntry, Group, Track, TrackSection, @@ -204,8 +205,14 @@ export class Album extends Thing { isListedOnHomepage: flag(true), isListedInGalleries: flag(true), - commentary: commentary(), - creditSources: commentary(), + commentary: thingList({ + class: input.value(CommentaryEntry), + }), + + creditSources: thingList({ + class: input.value(CommentaryEntry), + }), + additionalFiles: additionalFiles(), trackSections: thingList({ @@ -596,8 +603,15 @@ export class Album extends Thing { transform: parseDimensions, }, - 'Commentary': {property: 'commentary'}, - 'Credit Sources': {property: 'creditSources'}, + 'Commentary': { + property: 'commentary', + transform: parseCommentary, + }, + + 'Credit Sources': { + property: 'creditSources', + transform: parseCommentary, + }, 'Additional Files': { property: 'additionalFiles', @@ -668,7 +682,10 @@ export class Album extends Thing { const albumData = []; const trackSectionData = []; const trackData = []; + const artworkData = []; + const commentaryData = []; + const creditingSourceData = []; for (const {header: album, entries} of results) { const trackSections = []; @@ -715,6 +732,8 @@ export class Album extends Thing { entry.album = album; artworkData.push(...entry.trackArtworks); + commentaryData.push(...entry.commentary); + creditingSourceData.push(...entry.creditSources); } closeCurrentTrackSection(); @@ -731,6 +750,9 @@ export class Album extends Thing { artworkData.push(album.wallpaperArtwork); } + commentaryData.push(...album.commentary); + creditingSourceData.push(...album.creditSources); + album.trackSections = trackSections; } @@ -738,7 +760,10 @@ export class Album extends Thing { albumData, trackSectionData, trackData, + artworkData, + commentaryData, + creditingSourceData, }; }, -- cgit 1.3.0-6-gf8a5