diff --git a/src/types/admin.model.ts b/src/types/admin.model.ts index e85e3e822..4147ac79b 100644 --- a/src/types/admin.model.ts +++ b/src/types/admin.model.ts @@ -27,6 +27,7 @@ export interface IAdminSettings { instanceLongDescription: string; contact: string; instanceLogo: IMedia | null; + instanceFavicon: IMedia | null; defaultPicture: IMedia | null; primaryColor: string; secondaryColor: string; diff --git a/src/views/Admin/SettingsView.vue b/src/views/Admin/SettingsView.vue index 9045cae02..fdacc648c 100644 --- a/src/views/Admin/SettingsView.vue +++ b/src/views/Admin/SettingsView.vue @@ -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;