diff --git a/apps/browser/src/background/main.background.ts b/apps/browser/src/background/main.background.ts index 8fb6411d6f..296117d55d 100644 --- a/apps/browser/src/background/main.background.ts +++ b/apps/browser/src/background/main.background.ts @@ -598,7 +598,7 @@ export default class MainBackground { return Promise.resolve(); }, this.logService, - (logoutReason: LogoutReason) => this.logout(logoutReason), + (logoutReason: LogoutReason, userId?: UserId) => this.logout(logoutReason, userId), ); this.domainSettingsService = new DefaultDomainSettingsService(this.stateProvider); @@ -1226,7 +1226,6 @@ export default class MainBackground { } } - // TODO: figure out what this should look like async logout(logoutReason: LogoutReason, userId?: UserId) { const activeUserId = await firstValueFrom( this.accountService.activeAccount$.pipe( @@ -1297,6 +1296,7 @@ export default class MainBackground { this.messagingService.send("switchAccountFinish"); } else { this.messagingService.send("doneLoggingOut", { + logoutReason: logoutReason, userId: userBeingLoggedOut, }); } diff --git a/apps/browser/src/platform/background/service-factories/api-service.factory.ts b/apps/browser/src/platform/background/service-factories/api-service.factory.ts index 3a892cd26d..b5c36da53a 100644 --- a/apps/browser/src/platform/background/service-factories/api-service.factory.ts +++ b/apps/browser/src/platform/background/service-factories/api-service.factory.ts @@ -1,6 +1,7 @@ import { LogoutReason } from "@bitwarden/auth/common"; import { ApiService as AbstractApiService } from "@bitwarden/common/abstractions/api.service"; import { ApiService } from "@bitwarden/common/services/api.service"; +import { UserId } from "@bitwarden/common/types/guid"; import { tokenServiceFactory, @@ -27,7 +28,7 @@ import { stateServiceFactory, StateServiceInitOptions } from "./state-service.fa type ApiServiceFactoryOptions = FactoryOptions & { apiServiceOptions: { refreshAccessTokenErrorCallback?: () => Promise; - logoutCallback: (logoutReason: LogoutReason) => Promise; + logoutCallback: (logoutReason: LogoutReason, userId?: UserId) => Promise; customUserAgent?: string; }; }; diff --git a/apps/desktop/src/main.ts b/apps/desktop/src/main.ts index ad7ebb494f..eda4bf59bb 100644 --- a/apps/desktop/src/main.ts +++ b/apps/desktop/src/main.ts @@ -32,6 +32,7 @@ import { DefaultSingleUserStateProvider } from "@bitwarden/common/platform/state import { DefaultStateProvider } from "@bitwarden/common/platform/state/implementations/default-state.provider"; import { StateEventRegistrarService } from "@bitwarden/common/platform/state/state-event-registrar.service"; import { MemoryStorageService as MemoryStorageServiceForStateProviders } from "@bitwarden/common/platform/state/storage/memory-storage.service"; +import { UserId } from "@bitwarden/common/types/guid"; /* eslint-enable import/no-restricted-paths */ import { DesktopAutofillSettingsService } from "./autofill/services/desktop-autofill-settings.service"; @@ -204,7 +205,7 @@ export class Main { this.keyGenerationService, this.encryptService, this.logService, - async (logoutReason: LogoutReason) => {}, + async (logoutReason: LogoutReason, userId?: UserId) => {}, ); this.migrationRunner = new MigrationRunner(