From 299a880cba68c70863f63c831232080fca2d3a9e Mon Sep 17 00:00:00 2001 From: Todd Martin <106564991+trmartin4@users.noreply.github.com> Date: Wed, 6 Dec 2023 11:21:29 -0500 Subject: [PATCH] [PM-5111] Reduce calls to config endpoint (#7069) * Removed second active account observable and added distinctUntilChanged. * Updated comment. --- libs/common/src/platform/services/environment.service.ts | 4 +++- libs/common/src/platform/services/state.service.ts | 1 - 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/libs/common/src/platform/services/environment.service.ts b/libs/common/src/platform/services/environment.service.ts index 813bc17124f..7a6c3cd6ffb 100644 --- a/libs/common/src/platform/services/environment.service.ts +++ b/libs/common/src/platform/services/environment.service.ts @@ -1,4 +1,4 @@ -import { concatMap, Observable, ReplaySubject } from "rxjs"; +import { concatMap, distinctUntilChanged, Observable, ReplaySubject } from "rxjs"; import { EnvironmentUrls } from "../../auth/models/domain/environment-urls"; import { @@ -52,6 +52,8 @@ export class EnvironmentService implements EnvironmentServiceAbstraction { constructor(private stateService: StateService) { this.stateService.activeAccount$ .pipe( + // Use == here to not trigger on undefined -> null transition + distinctUntilChanged((oldUserId: string, newUserId: string) => oldUserId == newUserId), concatMap(async () => { if (!this.initialized) { return; diff --git a/libs/common/src/platform/services/state.service.ts b/libs/common/src/platform/services/state.service.ts index 52cc0953028..65b9ef6ae11 100644 --- a/libs/common/src/platform/services/state.service.ts +++ b/libs/common/src/platform/services/state.service.ts @@ -224,7 +224,6 @@ export class StateService< email: account.profile.email, }); await this.setActiveUser(account.profile.userId); - this.activeAccountSubject.next(account.profile.userId); } async setActiveUser(userId: string): Promise {