summaryrefslogtreecommitdiff
path: root/packages/backend/src/models/LatestNote.ts
diff options
context:
space:
mode:
authorHazelnoot <acomputerdog@gmail.com>2024-10-14 11:35:16 -0400
committerHazelnoot <acomputerdog@gmail.com>2024-10-15 14:17:19 -0400
commite19193c9d0dbb624d6e11ee2f97f1986f526b5e7 (patch)
tree9e836a97ed819abf802f8e421f2b75c3bc3174a8 /packages/backend/src/models/LatestNote.ts
parentupdate latest_note for edits (diff)
downloadsharkey-e19193c9d0dbb624d6e11ee2f97f1986f526b5e7.tar.gz
sharkey-e19193c9d0dbb624d6e11ee2f97f1986f526b5e7.tar.bz2
sharkey-e19193c9d0dbb624d6e11ee2f97f1986f526b5e7.zip
unify logic of `SkLatestNote.areEquivalent` and `SkLatestNote.keyFor`
Diffstat (limited to 'packages/backend/src/models/LatestNote.ts')
-rw-r--r--packages/backend/src/models/LatestNote.ts11
1 files changed, 7 insertions, 4 deletions
diff --git a/packages/backend/src/models/LatestNote.ts b/packages/backend/src/models/LatestNote.ts
index ff8815bd42..064fcccc0a 100644
--- a/packages/backend/src/models/LatestNote.ts
+++ b/packages/backend/src/models/LatestNote.ts
@@ -87,11 +87,14 @@ export class SkLatestNote {
* Checks if two notes would produce equivalent compound keys.
*/
static areEquivalent(first: MiNote, second: MiNote): boolean {
+ const firstKey = SkLatestNote.keyFor(first);
+ const secondKey = SkLatestNote.keyFor(second);
+
return (
- first.userId === second.userId &&
- first.visibility === second.visibility &&
- (first.replyId != null) === (second.replyId != null) &&
- (isRenote(first) && isQuote(first)) === (isRenote(second) && isQuote(second))
+ firstKey.userId === secondKey.userId &&
+ firstKey.isPublic === secondKey.isPublic &&
+ firstKey.isReply === secondKey.isReply &&
+ firstKey.isQuote === secondKey.isQuote
);
}
}