Add unauthUiRefreshRedirect utility function.

This commit is contained in:
Alec Rippberger 2024-09-27 12:46:17 -05:00
parent 30af195b9d
commit 58d6770d20
No known key found for this signature in database
GPG Key ID: 9DD8DA583B28154A
1 changed files with 24 additions and 0 deletions

View File

@ -0,0 +1,24 @@
import { inject } from "@angular/core";
import { UrlTree, Router } from "@angular/router";
import { FeatureFlag } from "@bitwarden/common/enums/feature-flag.enum";
import { ConfigService } from "@bitwarden/common/platform/abstractions/config/config.service";
/**
* Helper function to redirect to a new URL based on the UnauthenticatedExtensionUIRefresh feature flag.
* @param redirectUrl - The URL to redirect to if the UnauthenticatedExtensionUIRefresh flag is enabled.
*/
export function unauthUiRefreshRedirect(redirectUrl: string): () => Promise<boolean | UrlTree> {
return async () => {
const configService = inject(ConfigService);
const router = inject(Router);
const shouldRedirect = await configService.getFeatureFlag(
FeatureFlag.UnauthenticatedExtensionUIRefresh,
);
if (shouldRedirect) {
return router.parseUrl(redirectUrl);
} else {
return true;
}
};
}