mirror of
https://github.com/bitwarden/browser
synced 2026-02-25 09:03:28 +00:00
* PM-31804 - WIP * PM-31804 - Profile Component - fix missing translation * PM-31804 - Web - Emergency Access Takeover Dialog Comp - remove screen reader only span as arialabel on spinner should be sufficient * PM-31804 - Web - EmergencyAccessViewComp - remove redundant span as aria label handles accessibility. * PM-31804 - Web - EmergencyAccessViewComp - Remove redundant sr only span - replaced w/ aria label * PM-31804 - Web - EmergencyAccessViewComp - Remove redundant sr only span - replaced w/ aria label * PM-31804 - EmergencyAccessComp - Replace redundant sr only span with aria label * PM-31804 - two-factor-setup.component.html - Replace redundant sr only spans with aria labels * PM-31804 - WebauthnLoginSettingsModule - remove unnecessary IconModule - it's imported via SharedModule * PM-31804 - web - emergency-access.component.html - Replace redundant sr only span with aria label * PM-31804 - LoginDecryptionOptionsComponent - Replace redundant sr only span with aria label * PM-31804 - ChangePasswordComp - Replace redundant sr only span with aria label * PM-31804 - AccountComponent - add BitwardenIcon type to satisfy template type requirements for name property. * PM-31804 - Browser Account Security Component - replace nonexistent chevron icon with existing angle right icon. * PM-31804 - Fix A11y issues with missing aria labels * PM-31804 - Remove remaining redundant sr only spans since we now have aria labels
111 lines
3.3 KiB
HTML
111 lines
3.3 KiB
HTML
<ng-container *ngIf="loading">
|
|
<div class="tw-flex tw-items-center tw-justify-center">
|
|
<bit-icon name="bwi-spinner" class="bwi-spin bwi-3x" [ariaLabel]="'loading' | i18n"></bit-icon>
|
|
</div>
|
|
</ng-container>
|
|
|
|
<ng-container *ngIf="!loading">
|
|
<form
|
|
[bitSubmit]="submit"
|
|
[formGroup]="form"
|
|
autocomplete="off"
|
|
(keydown.enter)="handleEnterKeyPress()"
|
|
>
|
|
<app-two-factor-auth-email
|
|
[tokenFormControl]="tokenFormControl"
|
|
(tokenChange)="saveFormDataWithPartialData($event)"
|
|
*ngIf="selectedProviderType === providerType.Email"
|
|
/>
|
|
|
|
<app-two-factor-auth-authenticator
|
|
[tokenFormControl]="tokenFormControl"
|
|
(tokenChange)="saveFormDataWithPartialData($event)"
|
|
*ngIf="selectedProviderType === providerType.Authenticator"
|
|
/>
|
|
<app-two-factor-auth-yubikey
|
|
[tokenFormControl]="tokenFormControl"
|
|
*ngIf="selectedProviderType === providerType.Yubikey"
|
|
/>
|
|
|
|
<app-two-factor-auth-duo
|
|
(tokenEmitter)="submit($event)"
|
|
[providerData]="selectedProviderData"
|
|
*ngIf="
|
|
selectedProviderType === providerType.OrganizationDuo ||
|
|
selectedProviderType === providerType.Duo
|
|
"
|
|
#duoComponent
|
|
/>
|
|
<bit-form-control *ngIf="!hideRememberMe()">
|
|
<bit-label>{{ "dontAskAgainOnThisDeviceFor30Days" | i18n }}</bit-label>
|
|
<input type="checkbox" bitCheckbox formControlName="remember" (change)="onRememberChange()" />
|
|
</bit-form-control>
|
|
|
|
<app-two-factor-auth-webauthn
|
|
(webAuthnResultEmitter)="submit($event.token, $event.remember)"
|
|
(webAuthnInNewTabEmitter)="webAuthInNewTab = $event"
|
|
*ngIf="selectedProviderType === providerType.WebAuthn"
|
|
/>
|
|
|
|
<ng-container *ngIf="selectedProviderType == null">
|
|
<p bitTypography="body1">{{ "noTwoStepProviders" | i18n }}</p>
|
|
<p bitTypography="body1">{{ "noTwoStepProviders2" | i18n }}</p>
|
|
</ng-container>
|
|
|
|
<!-- Buttons -->
|
|
<div class="tw-flex tw-flex-col tw-space-y-3">
|
|
<button
|
|
type="submit"
|
|
buttonType="primary"
|
|
bitButton
|
|
bitFormButton
|
|
#continueButton
|
|
*ngIf="showContinueButton()"
|
|
>
|
|
<span> {{ "continueLoggingIn" | i18n }} </span>
|
|
</button>
|
|
|
|
<button
|
|
type="button"
|
|
buttonType="primary"
|
|
bitButton
|
|
(click)="launchDuo()"
|
|
*ngIf="
|
|
selectedProviderType === providerType.Duo ||
|
|
selectedProviderType === providerType.OrganizationDuo
|
|
"
|
|
>
|
|
<span *ngIf="duoLaunchAction === DuoLaunchAction.DIRECT_LAUNCH">
|
|
{{ "launchDuo" | i18n }}</span
|
|
>
|
|
<span *ngIf="duoLaunchAction === DuoLaunchAction.SINGLE_ACTION_POPOUT">
|
|
{{ "popoutExtension" | i18n }}</span
|
|
>
|
|
</button>
|
|
|
|
<p class="tw-text-center tw-mb-0">{{ "or" | i18n }}</p>
|
|
|
|
<button
|
|
type="button"
|
|
buttonType="secondary"
|
|
bitButton
|
|
bitFormButton
|
|
*ngIf="twoFactorProviders?.size > 1"
|
|
(click)="selectOtherTwoFactorMethod()"
|
|
>
|
|
<span> {{ "selectAnotherMethod" | i18n }} </span>
|
|
</button>
|
|
|
|
<button
|
|
type="button"
|
|
buttonType="secondary"
|
|
bitButton
|
|
bitFormButton
|
|
(click)="use2faRecoveryCode()"
|
|
>
|
|
<span> {{ "useYourRecoveryCode" | i18n }} </span>
|
|
</button>
|
|
</div>
|
|
</form>
|
|
</ng-container>
|