diff --git a/apps/web/src/app/components/password-strength.component.ts b/apps/web/src/app/components/password-strength.component.ts
deleted file mode 100644
index 3063ba4689..0000000000
--- a/apps/web/src/app/components/password-strength.component.ts
+++ /dev/null
@@ -1,40 +0,0 @@
-import { Component, Input, OnChanges } from "@angular/core";
-
-import { I18nService } from "@bitwarden/common/abstractions/i18n.service";
-
-@Component({
- selector: "app-password-strength",
- templateUrl: "password-strength.component.html",
-})
-export class PasswordStrengthComponent implements OnChanges {
- @Input() score?: number;
- @Input() showText = false;
-
- scoreWidth = 0;
- color = "bg-danger";
- text: string;
-
- constructor(private i18nService: I18nService) {}
-
- ngOnChanges(): void {
- this.scoreWidth = this.score == null ? 0 : (this.score + 1) * 20;
- switch (this.score) {
- case 4:
- this.color = "bg-success";
- this.text = this.i18nService.t("strong");
- break;
- case 3:
- this.color = "bg-primary";
- this.text = this.i18nService.t("good");
- break;
- case 2:
- this.color = "bg-warning";
- this.text = this.i18nService.t("weak");
- break;
- default:
- this.color = "bg-danger";
- this.text = this.score != null ? this.i18nService.t("weak") : null;
- break;
- }
- }
-}
diff --git a/apps/web/src/app/modules/register-form/register-form.component.html b/apps/web/src/app/modules/register-form/register-form.component.html
index 21d5772677..951fa9b34e 100644
--- a/apps/web/src/app/modules/register-form/register-form.component.html
+++ b/apps/web/src/app/modules/register-form/register-form.component.html
@@ -34,7 +34,6 @@
@@ -50,7 +49,13 @@
{{ "masterPassImportant" | i18n }}
-
+
diff --git a/apps/web/src/app/modules/register-form/register-form.component.ts b/apps/web/src/app/modules/register-form/register-form.component.ts
index fbcfa62c61..30f7160178 100644
--- a/apps/web/src/app/modules/register-form/register-form.component.ts
+++ b/apps/web/src/app/modules/register-form/register-form.component.ts
@@ -69,7 +69,7 @@ export class RegisterFormComponent extends BaseRegisterComponent {
if (
this.enforcedPolicyOptions != null &&
!this.policyService.evaluateMasterPassword(
- this.masterPasswordScore,
+ this.passwordStrengthResult.score,
this.formGroup.get("masterPassword")?.value,
this.enforcedPolicyOptions
)
diff --git a/apps/web/src/app/modules/shared.module.ts b/apps/web/src/app/modules/shared.module.ts
index 79f967f23a..10469e9423 100644
--- a/apps/web/src/app/modules/shared.module.ts
+++ b/apps/web/src/app/modules/shared.module.ts
@@ -66,7 +66,6 @@ import {
MenuModule,
} from "@bitwarden/components";
-import { PasswordStrengthComponent } from "../components/password-strength.component";
import { PaymentComponent } from "../settings/payment.component";
import { TaxInfoComponent } from "../settings/tax-info.component";
@@ -122,7 +121,7 @@ registerLocaleData(localeZhCn, "zh-CN");
registerLocaleData(localeZhTw, "zh-TW");
@NgModule({
- declarations: [PasswordStrengthComponent, PaymentComponent, TaxInfoComponent],
+ declarations: [PaymentComponent, TaxInfoComponent],
imports: [
CommonModule,
DragDropModule,
@@ -158,7 +157,6 @@ registerLocaleData(localeZhTw, "zh-TW");
MenuModule,
FormFieldModule,
SubmitButtonModule,
- PasswordStrengthComponent,
PaymentComponent,
TaxInfoComponent,
],
diff --git a/apps/web/src/app/organizations/manage/reset-password.component.html b/apps/web/src/app/organizations/manage/reset-password.component.html
index 137720dc72..ea6e75fee8 100644
--- a/apps/web/src/app/organizations/manage/reset-password.component.html
+++ b/apps/web/src/app/organizations/manage/reset-password.component.html
@@ -53,7 +53,6 @@
required
appInputVerbatim
autocomplete="new-password"
- (input)="updatePasswordStrength()"
/>
diff --git a/apps/web/src/app/settings/emergency-access-takeover.component.html b/apps/web/src/app/settings/emergency-access-takeover.component.html
index 5bbd36df83..468e80d005 100644
--- a/apps/web/src/app/settings/emergency-access-takeover.component.html
+++ b/apps/web/src/app/settings/emergency-access-takeover.component.html
@@ -39,12 +39,16 @@
name="NewMasterPasswordHash"
class="form-control mb-1"
[(ngModel)]="masterPassword"
- (input)="updatePasswordStrength()"
required
appInputVerbatim
autocomplete="new-password"
/>
-
+
diff --git a/libs/angular/src/components/change-password.component.ts b/libs/angular/src/components/change-password.component.ts
index cd3c0a5e24..f513af5b85 100644
--- a/libs/angular/src/components/change-password.component.ts
+++ b/libs/angular/src/components/change-password.component.ts
@@ -12,20 +12,22 @@ import { EncString } from "@bitwarden/common/models/domain/encString";
import { MasterPasswordPolicyOptions } from "@bitwarden/common/models/domain/masterPasswordPolicyOptions";
import { SymmetricCryptoKey } from "@bitwarden/common/models/domain/symmetricCryptoKey";
+import { PasswordColorText } from "../shared/components/password-strength/password-strength.component";
+
@Directive()
export class ChangePasswordComponent implements OnInit {
masterPassword: string;
masterPasswordRetype: string;
formPromise: Promise