fix: update discoverStore on friend accept and remove WS events
The friend_request_accepted and friend_removed WS handlers updated socialStore but not discoverStore, so the discovery page buttons stayed stale until page refresh. Decline/cancel already updated both stores correctly.
This commit is contained in:
@@ -681,12 +681,18 @@ function handleEvent(origin: string, event: ServerEvent): void {
|
|||||||
if (!isHome) normalizeUserAssets(event.friend, origin);
|
if (!isHome) normalizeUserAssets(event.friend, origin);
|
||||||
const { addFriendFromAccepted } = useSocialStore.getState();
|
const { addFriendFromAccepted } = useSocialStore.getState();
|
||||||
addFriendFromAccepted(event.friend, event.requestId, origin);
|
addFriendFromAccepted(event.friend, event.requestId, origin);
|
||||||
|
import('../stores/discoverStore').then(({ useDiscoverStore }) => {
|
||||||
|
useDiscoverStore.getState().updateRelationship(event.friend.id, origin, 'friends');
|
||||||
|
});
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case 'friend_removed': {
|
case 'friend_removed': {
|
||||||
const { removeFriendLocally } = useSocialStore.getState();
|
const { removeFriendLocally } = useSocialStore.getState();
|
||||||
removeFriendLocally(event.userId, origin);
|
removeFriendLocally(event.userId, origin);
|
||||||
|
import('../stores/discoverStore').then(({ useDiscoverStore }) => {
|
||||||
|
useDiscoverStore.getState().updateRelationship(event.userId, origin, 'none');
|
||||||
|
});
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user