From f04a03aa949da3eb260c6b3e553fe7e7007c2d3e Mon Sep 17 00:00:00 2001 From: futa-ikeda Date: Wed, 17 Dec 2025 16:38:31 -0500 Subject: [PATCH] fix(addons): Show connected addon icon after oauth --- src/app/shared/stores/addons/addons.state.spec.ts | 2 +- src/app/shared/stores/addons/addons.state.ts | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/app/shared/stores/addons/addons.state.spec.ts b/src/app/shared/stores/addons/addons.state.spec.ts index b01e35596..5ed772577 100644 --- a/src/app/shared/stores/addons/addons.state.spec.ts +++ b/src/app/shared/stores/addons/addons.state.spec.ts @@ -370,7 +370,7 @@ describe('State: Addons', () => { supportedFeatures: [], type: 'authorized-storage-accounts', credentialsFormat: '', // No credentialsFormat in a PATCH response - iconUrl: '', // No iconUrl in a PATCH response + iconUrl: 'https://osf.io/assets/images/logo.svg', // iconUrl should be preserved after OAuth PATCH response if it existed before }) ); diff --git a/src/app/shared/stores/addons/addons.state.ts b/src/app/shared/stores/addons/addons.state.ts index b3866375f..8618683f8 100644 --- a/src/app/shared/stores/addons/addons.state.ts +++ b/src/app/shared/stores/addons/addons.state.ts @@ -181,6 +181,10 @@ export class AddonsState { const existing = state.authorizedStorageAddons.data.find( (existingAddon: AuthorizedAccountModel) => existingAddon.id === addon.id ); + + if (existing && !addon.iconUrl) { + addon.iconUrl = existing.iconUrl; + } const updatedData = existing ? state.authorizedStorageAddons.data.map((existingAddon: AuthorizedAccountModel) => existingAddon.id === addon.id ? { ...existingAddon, ...addon } : existingAddon