From f079d79426a6b8becc53c9de561934b87b8bc910 Mon Sep 17 00:00:00 2001 From: Brandon Treston Date: Tue, 29 Jul 2025 19:19:30 -0400 Subject: [PATCH] [PM-24261] Fix infinite loading on members tab (#15833) Use combineLatest instead of withLatestFrom to ensure the observable always emits whenever any value is updated --- .../organizations/members/members.component.ts | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/apps/web/src/app/admin-console/organizations/members/members.component.ts b/apps/web/src/app/admin-console/organizations/members/members.component.ts index 2a84efd3320..a9cfd79ad60 100644 --- a/apps/web/src/app/admin-console/organizations/members/members.component.ts +++ b/apps/web/src/app/admin-console/organizations/members/members.component.ts @@ -13,7 +13,6 @@ import { Observable, shareReplay, switchMap, - withLatestFrom, tap, } from "rxjs"; @@ -310,10 +309,13 @@ export class MembersComponent extends BaseMembersComponent ), ); - const decryptedCollections$ = this.accountService.activeAccount$.pipe( - getUserId, - switchMap((userId) => this.keyService.orgKeys$(userId)), - withLatestFrom(response), + const decryptedCollections$ = combineLatest([ + this.accountService.activeAccount$.pipe( + getUserId, + switchMap((userId) => this.keyService.orgKeys$(userId)), + ), + response, + ]).pipe( switchMap(([orgKeys, collections]) => this.collectionService.decryptMany$(collections, orgKeys), ),