mirror of
https://github.com/mastodon/mastodon
synced 2024-12-05 02:08:21 +09:00
Fix unsupported grouped notifications from streaming causing duplicate IDs (#32243)
This commit is contained in:
parent
81cd489208
commit
6d5aa58f88
@ -206,7 +206,13 @@ function processNewNotification(
|
||||
groups: NotificationGroupsState['groups'],
|
||||
notification: ApiNotificationJSON,
|
||||
) {
|
||||
if (shouldGroupNotificationType(notification.type)) {
|
||||
if (!shouldGroupNotificationType(notification.type)) {
|
||||
notification = {
|
||||
...notification,
|
||||
group_key: `ungrouped-${notification.id}`,
|
||||
};
|
||||
}
|
||||
|
||||
const existingGroupIndex = groups.findIndex(
|
||||
(group) =>
|
||||
group.type !== 'gap' && group.group_key === notification.group_key,
|
||||
@ -242,15 +248,12 @@ function processNewNotification(
|
||||
mergeGapsAround(groups, existingGroupIndex);
|
||||
|
||||
groups.unshift(existingGroup);
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} else {
|
||||
// We have not found an existing group, create a new one
|
||||
groups.unshift(createNotificationGroupFromNotificationJSON(notification));
|
||||
}
|
||||
}
|
||||
|
||||
function trimNotifications(state: NotificationGroupsState) {
|
||||
if (state.scrolledToTop && state.groups.length > NOTIFICATIONS_TRIM_LIMIT) {
|
||||
|
Loading…
Reference in New Issue
Block a user