From c0b3cfd76ef16b450d1523cbc951adb803966db6 Mon Sep 17 00:00:00 2001 From: Alex <55413326+AlexRubik@users.noreply.github.com> Date: Fri, 7 Nov 2025 11:03:02 -0500 Subject: [PATCH] fix: show correct title/description in new applications dialog based on critical apps state (#17275) - Show "Prioritize critical applications" when org has no critical apps - Show "Review new applications" when org already has critical apps - Add hasExistingCriticalApplications flag to dialog data - Add reviewNewApplications i18n keys --- .../activity/all-activity.component.ts | 1 + .../new-applications-dialog.component.html | 10 ++++++++-- .../new-applications-dialog.component.ts | 13 +++++++++++++ 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/bitwarden_license/bit-web/src/app/dirt/access-intelligence/activity/all-activity.component.ts b/bitwarden_license/bit-web/src/app/dirt/access-intelligence/activity/all-activity.component.ts index 8a2b2825208..7e737be0bdc 100644 --- a/bitwarden_license/bit-web/src/app/dirt/access-intelligence/activity/all-activity.component.ts +++ b/bitwarden_license/bit-web/src/app/dirt/access-intelligence/activity/all-activity.component.ts @@ -143,6 +143,7 @@ export class AllActivityComponent implements OnInit { const dialogRef = NewApplicationsDialogComponent.open(this.dialogService, { newApplications: this.newApplications, organizationId: organizationId as OrganizationId, + hasExistingCriticalApplications: this.totalCriticalAppsCount > 0, }); await lastValueFrom(dialogRef.closed); diff --git a/bitwarden_license/bit-web/src/app/dirt/access-intelligence/activity/application-review-dialog/new-applications-dialog.component.html b/bitwarden_license/bit-web/src/app/dirt/access-intelligence/activity/application-review-dialog/new-applications-dialog.component.html index bfba3cabf03..8e597234f14 100644 --- a/bitwarden_license/bit-web/src/app/dirt/access-intelligence/activity/application-review-dialog/new-applications-dialog.component.html +++ b/bitwarden_license/bit-web/src/app/dirt/access-intelligence/activity/application-review-dialog/new-applications-dialog.component.html @@ -2,7 +2,9 @@ {{ currentView() === DialogView.SelectApplications - ? ("reviewNewApplications" | i18n) + ? hasNoCriticalApplications() + ? ("prioritizeCriticalApplications" | i18n) + : ("reviewNewApplications" | i18n) : ("assignTasksToMembers" | i18n) }} @@ -11,7 +13,11 @@ @if (currentView() === DialogView.SelectApplications) {

- {{ "reviewNewApplicationsDescription" | i18n }} + {{ + hasNoCriticalApplications() + ? ("selectCriticalApplicationsDescription" | i18n) + : ("reviewNewApplicationsDescription" | i18n) + }}

diff --git a/bitwarden_license/bit-web/src/app/dirt/access-intelligence/activity/application-review-dialog/new-applications-dialog.component.ts b/bitwarden_license/bit-web/src/app/dirt/access-intelligence/activity/application-review-dialog/new-applications-dialog.component.ts index a83acb70e93..8a1a90245b3 100644 --- a/bitwarden_license/bit-web/src/app/dirt/access-intelligence/activity/application-review-dialog/new-applications-dialog.component.ts +++ b/bitwarden_license/bit-web/src/app/dirt/access-intelligence/activity/application-review-dialog/new-applications-dialog.component.ts @@ -45,6 +45,11 @@ export interface NewApplicationsDialogData { * the route subscription has fired. */ organizationId: OrganizationId; + /** + * Whether the organization has any existing critical applications. + * Used to determine which title and description to show in the dialog. + */ + hasExistingCriticalApplications: boolean; } /** @@ -130,6 +135,14 @@ export class NewApplicationsDialogComponent { return this.dialogParams.newApplications; } + /** + * Returns true if the organization has no existing critical applications. + * Used to conditionally show different titles and descriptions. + */ + protected hasNoCriticalApplications(): boolean { + return !this.dialogParams.hasExistingCriticalApplications; + } + /** * Toggles the selection state of an application. * @param applicationName The application to toggle