diff --git a/packages/pl-fe/src/queries/notifications/use-notifications.ts b/packages/pl-fe/src/queries/notifications/use-notifications.ts index a71b4d33b..e20678e0d 100644 --- a/packages/pl-fe/src/queries/notifications/use-notifications.ts +++ b/packages/pl-fe/src/queries/notifications/use-notifications.ts @@ -34,6 +34,7 @@ import { minifyGroupedNotifications } from '../utils/minify-list'; import type { GetGroupedNotificationsParams, + Marker, Notification, NotificationGroup, PaginatedResponse, @@ -243,6 +244,11 @@ const useMarkNotificationsReadMutation = () => { mutationFn: async (lastReadId?: string | null) => { if (!lastReadId) return; + const currentMarker = queryClient.getQueryData(['markers', 'notifications']); + if (currentMarker && compareId(currentMarker.last_read_id, lastReadId) >= 0) { + return; + } + return await client.timelines.saveMarkers({ notifications: { last_read_id: lastReadId,