nicolium: migrate notifications to tanstack/react-query

Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
This commit is contained in:
nicole mikołajczyk
2026-02-23 22:51:10 +01:00
parent e3aaa580b5
commit 6ceee73b60
16 changed files with 581 additions and 685 deletions

View File

@ -580,4 +580,9 @@ const Notification: React.FC<INotification> = (props) => {
);
};
export { Notification as default, buildLink, getNotificationStatus };
export {
Notification as default,
buildLink,
getNotificationStatus,
messages as notificationMessages,
};

View File

@ -4,8 +4,6 @@ import React, { Suspense, useEffect, useRef } from 'react';
import { Toaster } from 'react-hot-toast';
import { fetchConfig } from '@/actions/admin';
import { fetchMarker } from '@/actions/markers';
import { expandNotifications } from '@/actions/notifications';
import { register as registerPushNotifications } from '@/actions/push-notifications/registerer';
import { fetchHomeTimeline } from '@/actions/timelines';
import { useUserStream } from '@/api/hooks/streaming/use-user-stream';
@ -22,6 +20,10 @@ import { useOwnAccount } from '@/hooks/use-own-account';
import { prefetchFollowRequests } from '@/queries/accounts/use-follow-requests';
import { queryClient } from '@/queries/client';
import { prefetchCustomEmojis } from '@/queries/instance/use-custom-emojis';
import {
usePrefetchNotifications,
usePrefetchNotificationsMarker,
} from '@/queries/notifications/use-notifications';
import { useFilters } from '@/queries/settings/use-filters';
import { scheduledStatusesQueryOptions } from '@/queries/statuses/scheduled-statuses';
import { useSettings } from '@/stores/settings';
@ -61,6 +63,8 @@ const UI: React.FC = React.memo(() => {
useShoutboxSubscription();
useFilters();
usePrefetchNotifications();
usePrefetchNotificationsMarker();
const { isDragging } = useDraggedFiles(node);
@ -93,10 +97,6 @@ const UI: React.FC = React.memo(() => {
dispatch(fetchHomeTimeline());
dispatch(expandNotifications())
.then(() => dispatch(fetchMarker(['notifications'])))
.catch(console.error);
if (account.is_admin && features.pleromaAdminAccounts) {
dispatch(fetchConfig());
}