From 0cebdd458152e897c0953dbdd179fef9168a1ce8 Mon Sep 17 00:00:00 2001 From: Jason Ng Date: Wed, 16 Jul 2025 15:32:06 -0400 Subject: [PATCH] [PM-23813] apply dismiss check when setting status inside nudge services addressing footer lag in FF. (#15639) --- .../account-security-nudge.service.ts | 5 ++++- .../custom-nudges-services/has-items-nudge.service.ts | 6 +++++- .../custom-nudges-services/new-item-nudge.service.ts | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/libs/angular/src/vault/services/custom-nudges-services/account-security-nudge.service.ts b/libs/angular/src/vault/services/custom-nudges-services/account-security-nudge.service.ts index a64a4aa975c..dc3f39793d3 100644 --- a/libs/angular/src/vault/services/custom-nudges-services/account-security-nudge.service.ts +++ b/libs/angular/src/vault/services/custom-nudges-services/account-security-nudge.service.ts @@ -74,7 +74,10 @@ export class AccountSecurityNudgeService extends DefaultSingleNudgeService { hasSpotlightDismissed: status.hasSpotlightDismissed || hideNudge, }; - if (isPinSet || biometricUnlockEnabled || hasOrgWithRemovePinPolicyOn) { + if ( + (isPinSet || biometricUnlockEnabled || hasOrgWithRemovePinPolicyOn) && + !status.hasSpotlightDismissed + ) { await this.setNudgeStatus(nudgeType, acctSecurityNudgeStatus, userId); } return acctSecurityNudgeStatus; diff --git a/libs/angular/src/vault/services/custom-nudges-services/has-items-nudge.service.ts b/libs/angular/src/vault/services/custom-nudges-services/has-items-nudge.service.ts index 61fb08ae8c1..d030b37dbd1 100644 --- a/libs/angular/src/vault/services/custom-nudges-services/has-items-nudge.service.ts +++ b/libs/angular/src/vault/services/custom-nudges-services/has-items-nudge.service.ts @@ -44,7 +44,11 @@ export class HasItemsNudgeService extends DefaultSingleNudgeService { return cipher.deletedDate == null; }); - if (profileOlderThanCutoff && filteredCiphers.length > 0) { + if ( + profileOlderThanCutoff && + filteredCiphers.length > 0 && + !nudgeStatus.hasSpotlightDismissed + ) { const dismissedStatus = { hasSpotlightDismissed: true, hasBadgeDismissed: true, diff --git a/libs/angular/src/vault/services/custom-nudges-services/new-item-nudge.service.ts b/libs/angular/src/vault/services/custom-nudges-services/new-item-nudge.service.ts index 2202e88111e..e89b877562a 100644 --- a/libs/angular/src/vault/services/custom-nudges-services/new-item-nudge.service.ts +++ b/libs/angular/src/vault/services/custom-nudges-services/new-item-nudge.service.ts @@ -49,7 +49,7 @@ export class NewItemNudgeService extends DefaultSingleNudgeService { const ciphersBoolean = ciphers.some((cipher) => cipher.type === currentType); - if (ciphersBoolean) { + if (ciphersBoolean && !nudgeStatus.hasSpotlightDismissed) { const dismissedStatus = { hasSpotlightDismissed: true, hasBadgeDismissed: true,