diff --git a/apps/web/src/app/auth/settings/emergency-access/takeover/emergency-access-takeover-dialog.component.html b/apps/web/src/app/auth/settings/emergency-access/takeover/emergency-access-takeover-dialog.component.html new file mode 100644 index 00000000000..56469d363eb --- /dev/null +++ b/apps/web/src/app/auth/settings/emergency-access/takeover/emergency-access-takeover-dialog.component.html @@ -0,0 +1,23 @@ + + + {{ "takeover" | i18n }} + {{ dialogData.grantorName }} + + +
+ {{ + "emergencyAccessLoggedOutWarning" | i18n: dialogData.grantorName + }} + + +
+ + + + + +
diff --git a/apps/web/src/app/auth/settings/emergency-access/takeover/emergency-access-takeover-dialog.component.ts b/apps/web/src/app/auth/settings/emergency-access/takeover/emergency-access-takeover-dialog.component.ts index 3e3f8d7bcf2..1f80e91ff5c 100644 --- a/apps/web/src/app/auth/settings/emergency-access/takeover/emergency-access-takeover-dialog.component.ts +++ b/apps/web/src/app/auth/settings/emergency-access/takeover/emergency-access-takeover-dialog.component.ts @@ -1,6 +1,17 @@ +import { CommonModule } from "@angular/common"; import { Component, Inject } from "@angular/core"; -import { DIALOG_DATA, DialogConfig, DialogService } from "@bitwarden/components"; +import { ChangePasswordComponent } from "@bitwarden/auth/angular"; +import { + ButtonModule, + CalloutModule, + DIALOG_DATA, + DialogConfig, + DialogModule, + DialogService, + FormFieldModule, +} from "@bitwarden/components"; +import { I18nPipe } from "@bitwarden/ui-common"; type EmergencyAccessTakeoverDialogData = { grantorName: string; @@ -24,9 +35,18 @@ export enum EmergencyAccessTakeoverDialogResultType { standalone: true, selector: "auth-emergency-access-takeover-dialog", templateUrl: "./emergency-access-takeover-dialog.component.html", + imports: [ + ButtonModule, + CommonModule, + CalloutModule, + ChangePasswordComponent, + DialogModule, + FormFieldModule, + I18nPipe, + ], }) export class EmergencyAccessTakeoverDialogComponent { - constructor(@Inject(DIALOG_DATA) private dialogData: EmergencyAccessTakeoverDialogData) {} + constructor(@Inject(DIALOG_DATA) protected dialogData: EmergencyAccessTakeoverDialogData) {} /** * Strongly typed helper to open a EmergencyAccessTakeoverDialogComponent diff --git a/apps/web/src/locales/en/messages.json b/apps/web/src/locales/en/messages.json index a170612fab2..af30943dcd7 100644 --- a/apps/web/src/locales/en/messages.json +++ b/apps/web/src/locales/en/messages.json @@ -5770,6 +5770,15 @@ } } }, + "emergencyAccessLoggedOutWarning": { + "message": "Proceeding will log $NAME$ out of their current session, requiring them to log back in. Active sessions on other devices may continue to remain active for up to one hour.", + "placeholders": { + "name": { + "content": "$1", + "example": "John Smith" + } + } + }, "thisUser": { "message": "this user" },