1
0
mirror of https://github.com/bitwarden/browser synced 2026-02-10 13:40:06 +00:00

fix(change-password-component): Change Password Update [18720] - Updates to routing and the extension. Extension is still a wip.

This commit is contained in:
Patrick Pimentel
2025-05-22 15:59:45 -04:00
parent 0aedba8740
commit 227df2fc86
9 changed files with 101 additions and 12 deletions

View File

@@ -10,12 +10,15 @@ import {
} from "@angular/router";
import { firstValueFrom } from "rxjs";
import { RouteList } from "@bitwarden/auth/common";
import { AccountService } from "@bitwarden/common/auth/abstractions/account.service";
import { AuthService } from "@bitwarden/common/auth/abstractions/auth.service";
import { AuthenticationStatus } from "@bitwarden/common/auth/enums/authentication-status";
import { ForceSetPasswordReason } from "@bitwarden/common/auth/models/domain/force-set-password-reason";
import { FeatureFlag } from "@bitwarden/common/enums/feature-flag.enum";
import { KeyConnectorService } from "@bitwarden/common/key-management/key-connector/abstractions/key-connector.service";
import { MasterPasswordServiceAbstraction } from "@bitwarden/common/key-management/master-password/abstractions/master-password.service.abstraction";
import { ConfigService } from "@bitwarden/common/platform/abstractions/config/config.service";
import { MessagingService } from "@bitwarden/common/platform/abstractions/messaging.service";
export const authGuard: CanActivateFn = async (
@@ -28,6 +31,7 @@ export const authGuard: CanActivateFn = async (
const keyConnectorService = inject(KeyConnectorService);
const accountService = inject(AccountService);
const masterPasswordService = inject(MasterPasswordServiceAbstraction);
const configService = inject(ConfigService);
const authStatus = await authService.getAuthStatus();
@@ -65,12 +69,37 @@ export const authGuard: CanActivateFn = async (
return router.createUrlTree(["/set-password"]);
}
if (
forceSetPasswordReason !== ForceSetPasswordReason.None &&
!routerState.url.includes("update-temp-password")
) {
return router.createUrlTree(["/update-temp-password"]);
if (await configService.getFeatureFlag(FeatureFlag.PM16117_ChangeExistingPasswordRefactor)) {
// Check for force set password reason to properly navigate to the right component.
if (
forceSetPasswordReason === ForceSetPasswordReason.AdminForcePasswordReset &&
!routerState.url.includes(RouteList.AdminRecoveryChangePasswordRoute)
) {
return router.createUrlTree([`/${RouteList.AdminRecoveryChangePasswordRoute}`]);
}
if (
forceSetPasswordReason === ForceSetPasswordReason.WeakMasterPassword &&
!routerState.url.includes(RouteList.NonCompliantPasswordRoute)
) {
return router.createUrlTree([`/${RouteList.NonCompliantPasswordRoute}`]);
}
} else {
if (
forceSetPasswordReason !== ForceSetPasswordReason.None &&
!routerState.url.includes("update-temp-password")
) {
return router.createUrlTree(["/update-temp-password"]);
}
}
// if (
// forceSetPasswordReason !== ForceSetPasswordReason.None &&
// !routerState.url.includes("update-temp-password")
// ) {
// return router.createUrlTree(["/update-temp-password"]);
// }
return true;
};