From e0c03640641c8a2ca2b242fdb31774df0c7c7e0a Mon Sep 17 00:00:00 2001 From: Kyle Denney <4227399+kdenney@users.noreply.github.com> Date: Tue, 11 Nov 2025 10:32:07 -0600 Subject: [PATCH] [PM-27854] close dialog when redirecting to premium page (#17243) --- .../services/web-premium-upgrade-prompt.service.spec.ts | 7 +++++++ .../vault/services/web-premium-upgrade-prompt.service.ts | 3 +++ 2 files changed, 10 insertions(+) diff --git a/apps/web/src/app/vault/services/web-premium-upgrade-prompt.service.spec.ts b/apps/web/src/app/vault/services/web-premium-upgrade-prompt.service.spec.ts index ad16baee42e..f9319e87656 100644 --- a/apps/web/src/app/vault/services/web-premium-upgrade-prompt.service.spec.ts +++ b/apps/web/src/app/vault/services/web-premium-upgrade-prompt.service.spec.ts @@ -187,6 +187,13 @@ describe("WebVaultPremiumUpgradePromptService", () => { expect(routerMock.navigate).toHaveBeenCalledWith(["settings/subscription/premium"]); expect(dialogServiceMock.openSimpleDialog).not.toHaveBeenCalled(); }); + + it("should close dialog when redirecting to subscription page", async () => { + await service.promptForPremium(); + + expect(dialogRefMock.close).toHaveBeenCalledWith(VaultItemDialogResult.PremiumUpgrade); + expect(routerMock.navigate).toHaveBeenCalledWith(["settings/subscription/premium"]); + }); }); describe("when not self-hosted", () => { diff --git a/apps/web/src/app/vault/services/web-premium-upgrade-prompt.service.ts b/apps/web/src/app/vault/services/web-premium-upgrade-prompt.service.ts index c456cf6cc13..917a2761e24 100644 --- a/apps/web/src/app/vault/services/web-premium-upgrade-prompt.service.ts +++ b/apps/web/src/app/vault/services/web-premium-upgrade-prompt.service.ts @@ -107,6 +107,9 @@ export class WebVaultPremiumUpgradePromptService implements PremiumUpgradePrompt private async redirectToSubscriptionPage() { await this.router.navigate([this.subscriptionPageRoute]); + if (this.dialog) { + this.dialog.close(VaultItemDialogResult.PremiumUpgrade); + } } private async openUpgradeDialog(account: Account) {