Fix #5984
This commit is contained in:
parent
883fc5dde0
commit
b23b3e4d21
|
@ -20,6 +20,28 @@ export async function getFallbackReaction(): Promise<string> {
|
||||||
return meta.useStarForReactionFallback ? '⭐' : '👍';
|
return meta.useStarForReactionFallback ? '⭐' : '👍';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function convertLegacyReactions(reactions: Record<string, number>) {
|
||||||
|
const _reactions = {} as Record<string, number>;
|
||||||
|
|
||||||
|
for (const reaction of Object.keys(reactions)) {
|
||||||
|
if (Object.keys(legacy10).includes(reaction)) {
|
||||||
|
if (_reactions[legacy10[reaction]]) {
|
||||||
|
_reactions[legacy10[reaction]] += reactions[reaction];
|
||||||
|
} else {
|
||||||
|
_reactions[legacy10[reaction]] = reactions[reaction];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (_reactions[reaction]) {
|
||||||
|
_reactions[reaction] += reactions[reaction];
|
||||||
|
} else {
|
||||||
|
_reactions[reaction] = reactions[reaction];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return _reactions;
|
||||||
|
}
|
||||||
|
|
||||||
export async function toDbReaction(reaction?: string | null): Promise<string> {
|
export async function toDbReaction(reaction?: string | null): Promise<string> {
|
||||||
if (reaction == null) return await getFallbackReaction();
|
if (reaction == null) return await getFallbackReaction();
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ import { Emojis, Users, PollVotes, DriveFiles, NoteReactions, Followings, Polls
|
||||||
import { ensure } from '../../prelude/ensure';
|
import { ensure } from '../../prelude/ensure';
|
||||||
import { SchemaType } from '../../misc/schema';
|
import { SchemaType } from '../../misc/schema';
|
||||||
import { awaitAll } from '../../prelude/await-all';
|
import { awaitAll } from '../../prelude/await-all';
|
||||||
import { convertLegacyReaction } from '../../misc/reaction-lib';
|
import { convertLegacyReaction, convertLegacyReactions } from '../../misc/reaction-lib';
|
||||||
|
|
||||||
export type PackedNote = SchemaType<typeof packedNoteSchema>;
|
export type PackedNote = SchemaType<typeof packedNoteSchema>;
|
||||||
|
|
||||||
|
@ -187,7 +187,7 @@ export class NoteRepository extends Repository<Note> {
|
||||||
viaMobile: note.viaMobile || undefined,
|
viaMobile: note.viaMobile || undefined,
|
||||||
renoteCount: note.renoteCount,
|
renoteCount: note.renoteCount,
|
||||||
repliesCount: note.repliesCount,
|
repliesCount: note.repliesCount,
|
||||||
reactions: note.reactions, // v12 TODO: convert legacy reaction
|
reactions: convertLegacyReactions(note.reactions),
|
||||||
tags: note.tags.length > 0 ? note.tags : undefined,
|
tags: note.tags.length > 0 ? note.tags : undefined,
|
||||||
emojis: populateEmojis(note.emojis, host, Object.keys(note.reactions)),
|
emojis: populateEmojis(note.emojis, host, Object.keys(note.reactions)),
|
||||||
fileIds: note.fileIds,
|
fileIds: note.fileIds,
|
||||||
|
|
Loading…
Reference in New Issue