diff options
author | (quasar) nebula <qznebula@protonmail.com> | 2025-04-02 18:41:13 -0300 |
---|---|---|
committer | (quasar) nebula <qznebula@protonmail.com> | 2025-04-10 16:02:38 -0300 |
commit | b99aaacf875b826bc196d992412a0bf246bd4f9b (patch) | |
tree | b5cbba7297a128cb82d3d0cbac14a8fdb756dd29 /src/data/things | |
parent | 58fba5a7a859c5398e0e58f31d7e8e5a649db63b (diff) |
data, content: Artwork.path
Lots of cleanup for generateCoverArtwork now that it's in charge of its own image (again, apparently) Still broken for anything besides tracks
Diffstat (limited to 'src/data/things')
-rw-r--r-- | src/data/things/album.js | 8 | ||||
-rw-r--r-- | src/data/things/artwork.js | 7 | ||||
-rw-r--r-- | src/data/things/track.js | 11 |
3 files changed, 26 insertions, 0 deletions
diff --git a/src/data/things/album.js b/src/data/things/album.js index 36069afb..606bc194 100644 --- a/src/data/things/album.js +++ b/src/data/things/album.js @@ -671,6 +671,14 @@ export class Album extends Thing { sortAlbumsTracksChronologically(trackData); }, }); + + getOwnArtworkPath(_artwork) { + return [ + 'media.albumCover', + this.directory, + this.coverArtFileExtension, + ]; + } } export class TrackSection extends Thing { diff --git a/src/data/things/artwork.js b/src/data/things/artwork.js index 24850057..bf5753b8 100644 --- a/src/data/things/artwork.js +++ b/src/data/things/artwork.js @@ -135,4 +135,11 @@ export class Artwork extends Thing { 'Tags': {property: 'artTags'}, }, }; + + get path() { + if (!this.thing) return null; + if (!this.thing.getOwnArtworkPath) return null; + + return this.thing.getOwnArtworkPath(this); + } } diff --git a/src/data/things/track.js b/src/data/things/track.js index 7188178a..f514f7bb 100644 --- a/src/data/things/track.js +++ b/src/data/things/track.js @@ -724,6 +724,17 @@ export class Track extends Thing { // Track YAML loading is handled in album.js. static [Thing.getYamlLoadingSpec] = null; + getOwnArtworkPath(_artwork) { + if (!this.album) return null; + + return [ + 'media.trackCover', + this.album.directory, + this.directory, + this.coverArtFileExtension, + ]; + } + [inspect.custom](depth) { const parts = []; |