From 90c36c8ead14f90a24e7821c582489277425ff02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?nicole=20miko=C5=82ajczyk?= Date: Sat, 2 Aug 2025 14:13:03 +0200 Subject: [PATCH] pl-fe: do not fetch reports count before fetching instance, but this time fr MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: nicole mikołajczyk --- packages/pl-fe/src/queries/admin/use-reports.ts | 2 +- packages/pl-fe/src/reducers/instance.ts | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/pl-fe/src/queries/admin/use-reports.ts b/packages/pl-fe/src/queries/admin/use-reports.ts index b0926d911..2584a887f 100644 --- a/packages/pl-fe/src/queries/admin/use-reports.ts +++ b/packages/pl-fe/src/queries/admin/use-reports.ts @@ -39,7 +39,7 @@ const usePendingReportsCount = () => { return useInfiniteQuery({ ...pendingReportsQuery, select: (data) => data.pages.at(-1)?.total || data.pages.map(page => page.items).flat().length || 0, - enabled: !!instance.domain && (account?.is_admin || account?.is_moderator), + enabled: !!instance.fetched && (account?.is_admin || account?.is_moderator), }); }; diff --git a/packages/pl-fe/src/reducers/instance.ts b/packages/pl-fe/src/reducers/instance.ts index a6015eed8..8e4f18380 100644 --- a/packages/pl-fe/src/reducers/instance.ts +++ b/packages/pl-fe/src/reducers/instance.ts @@ -8,9 +8,9 @@ import { PLEROMA_PRELOAD_IMPORT, type PreloadAction } from 'pl-fe/actions/preloa import KVStore from 'pl-fe/storage/kv-store'; import ConfigDB from 'pl-fe/utils/config-db'; -const initialState: State = v.parse(instanceSchema, {}); +const initialState: State = { fetched: false, ...v.parse(instanceSchema, {}) }; -type State = Instance; +type State = Instance & { fetched : boolean }; const preloadImport = (state: State, action: Record, path: string) => { const instance = action.data[path]; @@ -87,10 +87,10 @@ const handleInstanceFetchFail = (state: State, error: any) => { const instance = (state = initialState, action: AdminActions | InstanceAction | PreloadAction): State => { switch (action.type) { case PLEROMA_PRELOAD_IMPORT: - return create(state, (draft) => preloadImport(draft, action, '/api/v1/instance')); + return create(state, (draft) => ({ fetched: true, ...preloadImport(draft, action, '/api/v1/instance') })); case INSTANCE_FETCH_SUCCESS: persistInstance(action.instance); - return action.instance; + return { fetched: true, ...action.instance }; case INSTANCE_FETCH_FAIL: return handleInstanceFetchFail(state, action.error); case ADMIN_CONFIG_UPDATE_REQUEST: