forked from github/cinny
Fix recent emoji does not persist (#2722)
Fix recent emoji are not getting saved Refactor recent emoji retrieval to ensure structured cloning and proper type checking. The sdk was not updating account data because we are mutating the original and it compare and early return if found same.
This commit is contained in:
@@ -27,7 +27,11 @@ export const getRecentEmojis = (mx: MatrixClient, limit?: number): IEmoji[] => {
|
||||
|
||||
export function addRecentEmoji(mx: MatrixClient, unicode: string) {
|
||||
const recentEmojiEvent = getAccountData(mx, AccountDataEvent.ElementRecentEmoji);
|
||||
const recentEmoji = recentEmojiEvent?.getContent<IRecentEmojiContent>().recent_emoji ?? [];
|
||||
const recentEmojiContent = recentEmojiEvent?.getContent<IRecentEmojiContent>();
|
||||
const recentEmoji =
|
||||
recentEmojiContent && Array.isArray(recentEmojiContent.recent_emoji)
|
||||
? structuredClone(recentEmojiContent.recent_emoji)
|
||||
: [];
|
||||
|
||||
const emojiIndex = recentEmoji.findIndex(([u]) => u === unicode);
|
||||
let entry: [EmojiUnicode, EmojiUsageCount];
|
||||
|
||||
Reference in New Issue
Block a user