Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | 1x 1x 1x 1x | import { useQueryClient } from "@tanstack/react-query";
import { messageThreadsListKey } from "features/queryKeys";
import useNotifications from "features/useNotifications";
import { useEffect } from "react";
/**
* Refetches the unified message-threads list whenever any of the unseen counts
* on the ping query change, so badge counts and list contents stay in sync.
*/
export default function useMessageListsAutoRefetch() {
const { data: notifications } = useNotifications();
const queryClient = useQueryClient();
const unseenMessageCount = notifications?.unseenMessageCount;
const unseenHostingHostRequestCount = notifications?.unseenHostingHostRequestCount;
const unseenSurfingHostRequestCount = notifications?.unseenSurfingHostRequestCount;
const unseenPublicTripOfferCount = notifications?.unseenPublicTripOfferCount;
useEffect(() => {
queryClient.invalidateQueries({ queryKey: messageThreadsListKey() });
}, [
unseenMessageCount,
unseenHostingHostRequestCount,
unseenSurfingHostRequestCount,
unseenPublicTripOfferCount,
queryClient,
]);
}
|