fix: Update Apollo cache after updating admin settings

Fixes #1770
This commit is contained in:
Massedil
2025-06-10 16:05:10 +02:00
parent 569d27f0b9
commit 52a6115866
2 changed files with 16 additions and 1 deletions

View File

@@ -27,6 +27,7 @@ export interface IAdminSettings {
instanceLongDescription: string;
contact: string;
instanceLogo: IMedia | null;
instanceFavicon: IMedia | null;
defaultPicture: IMedia | null;
primaryColor: string;
secondaryColor: string;

View File

@@ -556,7 +556,21 @@ const {
mutate: saveAdminSettings,
onDone: saveAdminSettingsDone,
onError: saveAdminSettingsError,
} = useMutation(SAVE_ADMIN_SETTINGS);
} = useMutation(SAVE_ADMIN_SETTINGS, () => ({
// We need to update the cache because we just changed admin settings
// We want to update the related query ADMIN_SETTINGS
update(cache, { data }) {
if (!data?.saveAdminSettings) {
console.error("can't acces new admin settings");
return;
}
cache.writeQuery({
query: ADMIN_SETTINGS,
data: { adminSettings: data?.saveAdminSettings },
});
},
}));
saveAdminSettingsDone(() => {
instanceLogo.firstHash = instanceLogo.hash;