diff options
author | (quasar) nebula <qznebula@protonmail.com> | 2025-06-14 10:15:16 -0300 |
---|---|---|
committer | (quasar) nebula <qznebula@protonmail.com> | 2025-06-14 10:15:16 -0300 |
commit | e5a3a3c3eb7cfd8a14d97202d5788947841b4d08 (patch) | |
tree | 1d22705e6e67d6ad1b49329a7d290c8ca5c81bbb /src/data | |
parent | c954b8f66e41785375570f0879f2afa17cbd496e (diff) |
data: various counting rules
Diffstat (limited to 'src/data')
-rw-r--r-- | src/data/things/album.js | 6 | ||||
-rw-r--r-- | src/data/things/artwork.js | 12 | ||||
-rw-r--r-- | src/data/things/track.js | 16 |
3 files changed, 34 insertions, 0 deletions
diff --git a/src/data/things/album.js b/src/data/things/album.js index af42c6fa..e27700f4 100644 --- a/src/data/things/album.js +++ b/src/data/things/album.js @@ -835,6 +835,12 @@ export class Album extends Thing { artwork.fileExtension, ]; } + + // As of writing, albums don't even have a `duration` property... + // so this function will never be called... but the message stands... + countOwnContributionInDurationTotals(_contrib) { + return false; + } } export class TrackSection extends Thing { diff --git a/src/data/things/artwork.js b/src/data/things/artwork.js index 9d7fbcd4..57c293ca 100644 --- a/src/data/things/artwork.js +++ b/src/data/things/artwork.js @@ -472,6 +472,18 @@ export class Artwork extends Thing { return this.thing.getOwnArtworkPath(this); } + countOwnContributionInContributionTotals(contrib) { + if (this.attachAbove) { + return false; + } + + if (contrib.annotation?.startsWith('edits for wiki')) { + return false; + } + + return true; + } + [inspect.custom](depth, options, inspect) { const parts = []; diff --git a/src/data/things/track.js b/src/data/things/track.js index 69fd31bc..10585ade 100644 --- a/src/data/things/track.js +++ b/src/data/things/track.js @@ -789,6 +789,22 @@ export class Track extends Thing { ]; } + countOwnContributionInContributionTotals(_contrib) { + if (this.isSecondaryRelease) { + return false; + } + + return true; + } + + countOwnContributionInDurationTotals(_contrib) { + if (this.isSecondaryRelease) { + return false; + } + + return true; + } + [inspect.custom](depth) { const parts = []; |