@azure/msal-browser 4.19.0 → 4.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +30 -0
- package/dist/app/IPublicClientApplication.mjs +1 -1
- package/dist/app/PublicClientApplication.mjs +1 -1
- package/dist/app/PublicClientNext.mjs +1 -1
- package/dist/broker/nativeBroker/NativeStatusCodes.mjs +2 -3
- package/dist/broker/nativeBroker/NativeStatusCodes.mjs.map +1 -1
- package/dist/broker/nativeBroker/PlatformAuthDOMHandler.mjs +1 -1
- package/dist/broker/nativeBroker/PlatformAuthExtensionHandler.mjs +1 -1
- package/dist/broker/nativeBroker/PlatformAuthProvider.mjs +1 -1
- package/dist/cache/AccountManager.d.ts.map +1 -1
- package/dist/cache/AccountManager.mjs +1 -6
- package/dist/cache/AccountManager.mjs.map +1 -1
- package/dist/cache/AsyncMemoryStorage.mjs +1 -1
- package/dist/cache/BrowserCacheManager.mjs +1 -1
- package/dist/cache/CacheHelpers.mjs +1 -1
- package/dist/cache/CacheKeys.mjs +1 -1
- package/dist/cache/CookieStorage.mjs +1 -1
- package/dist/cache/DatabaseStorage.mjs +1 -1
- package/dist/cache/EncryptedData.mjs +1 -1
- package/dist/cache/LocalStorage.mjs +1 -1
- package/dist/cache/MemoryStorage.mjs +1 -1
- package/dist/cache/SessionStorage.mjs +1 -1
- package/dist/cache/TokenCache.mjs +1 -1
- package/dist/config/Configuration.mjs +1 -1
- package/dist/controllers/ControllerFactory.mjs +1 -1
- package/dist/controllers/NestedAppAuthController.mjs +1 -1
- package/dist/controllers/StandardController.d.ts.map +1 -1
- package/dist/controllers/StandardController.mjs +60 -22
- package/dist/controllers/StandardController.mjs.map +1 -1
- package/dist/controllers/UnknownOperatingContextController.mjs +1 -1
- package/dist/crypto/BrowserCrypto.mjs +1 -1
- package/dist/crypto/CryptoOps.mjs +1 -1
- package/dist/crypto/PkceGenerator.mjs +1 -1
- package/dist/crypto/SignedHttpRequest.mjs +1 -1
- package/dist/custom-auth-path/app/PublicClientApplication.mjs +1 -1
- package/dist/custom-auth-path/broker/nativeBroker/NativeStatusCodes.mjs +2 -3
- package/dist/custom-auth-path/broker/nativeBroker/NativeStatusCodes.mjs.map +1 -1
- package/dist/custom-auth-path/broker/nativeBroker/PlatformAuthDOMHandler.mjs +1 -1
- package/dist/custom-auth-path/broker/nativeBroker/PlatformAuthExtensionHandler.mjs +1 -1
- package/dist/custom-auth-path/broker/nativeBroker/PlatformAuthProvider.mjs +1 -1
- package/dist/custom-auth-path/cache/AccountManager.d.ts.map +1 -1
- package/dist/custom-auth-path/cache/AccountManager.mjs +1 -6
- package/dist/custom-auth-path/cache/AccountManager.mjs.map +1 -1
- package/dist/custom-auth-path/cache/AsyncMemoryStorage.mjs +1 -1
- package/dist/custom-auth-path/cache/BrowserCacheManager.mjs +1 -1
- package/dist/custom-auth-path/cache/CacheHelpers.mjs +1 -1
- package/dist/custom-auth-path/cache/CacheKeys.mjs +1 -1
- package/dist/custom-auth-path/cache/CookieStorage.mjs +1 -1
- package/dist/custom-auth-path/cache/DatabaseStorage.mjs +1 -1
- package/dist/custom-auth-path/cache/EncryptedData.mjs +1 -1
- package/dist/custom-auth-path/cache/LocalStorage.mjs +1 -1
- package/dist/custom-auth-path/cache/MemoryStorage.mjs +1 -1
- package/dist/custom-auth-path/cache/SessionStorage.mjs +1 -1
- package/dist/custom-auth-path/cache/TokenCache.mjs +1 -1
- package/dist/custom-auth-path/config/Configuration.mjs +1 -1
- package/dist/custom-auth-path/controllers/ControllerFactory.mjs +1 -1
- package/dist/custom-auth-path/controllers/StandardController.d.ts.map +1 -1
- package/dist/custom-auth-path/controllers/StandardController.mjs +60 -22
- package/dist/custom-auth-path/controllers/StandardController.mjs.map +1 -1
- package/dist/custom-auth-path/crypto/BrowserCrypto.mjs +1 -1
- package/dist/custom-auth-path/crypto/CryptoOps.mjs +1 -1
- package/dist/custom-auth-path/crypto/PkceGenerator.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/CustomAuthConstants.d.ts +1 -1
- package/dist/custom-auth-path/custom_auth/CustomAuthConstants.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/CustomAuthPublicClientApplication.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/controller/CustomAuthStandardController.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/CustomAuthAuthority.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/auth_flow/AuthFlowErrorBase.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/auth_flow/AuthFlowResultBase.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/auth_flow/AuthFlowState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/CustomAuthApiError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/CustomAuthError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/HttpError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/HttpErrorCodes.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/InvalidArgumentError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/InvalidConfigurationError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/InvalidConfigurationErrorCodes.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/MethodNotImplementedError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/MsalCustomAuthError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/NoCachedAccountFoundError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/ParsedUrlError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/ParsedUrlErrorCodes.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/UnexpectedError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/UnsupportedEnvironmentError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/UserAccountAttributeError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/UserAlreadySignedInError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/interaction_client/CustomAuthInteractionClientBase.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/interaction_client/CustomAuthInterationClientFactory.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/BaseApiClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/CustomAuthApiClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/CustomAuthApiEndpoint.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/ResetPasswordApiClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/SignInApiClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/SignupApiClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiErrorCodes.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/http_client/FetchHttpClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/http_client/IHttpClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/telemetry/PublicApiId.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/utils/ArgumentValidator.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/utils/UrlUtils.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/auth_flow/CustomAuthAccountData.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/auth_flow/error_type/GetAccountError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/auth_flow/result/GetAccessTokenResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/auth_flow/result/GetAccountResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/auth_flow/result/SignOutResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/auth_flow/state/GetAccessTokenState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/auth_flow/state/GetAccountState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/auth_flow/state/SignOutState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/interaction_client/CustomAuthSilentCacheClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/index.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/operating_context/CustomAuthOperatingContext.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/error_type/ResetPasswordError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/result/ResetPasswordResendCodeResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/result/ResetPasswordStartResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/result/ResetPasswordSubmitCodeResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/result/ResetPasswordSubmitPasswordResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordCodeRequiredState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordCompletedState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordFailedState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordPasswordRequiredState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/interaction_client/ResetPasswordClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/SignInScenario.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/error_type/SignInError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInResendCodeResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInSubmitCodeResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInSubmitCredentialResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInSubmitPasswordResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInCodeRequiredState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInCompletedState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInContinuationState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInFailedState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInPasswordRequiredState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/interaction_client/SignInClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/interaction_client/result/SignInActionResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/error_type/SignUpError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpResendCodeResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpSubmitAttributesResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpSubmitCodeResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpSubmitPasswordResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpAttributesRequiredState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpCodeRequiredState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpCompletedState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpFailedState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpPasswordRequiredState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/interaction_client/SignUpClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/interaction_client/result/SignUpActionResult.mjs +1 -1
- package/dist/custom-auth-path/encode/Base64Decode.mjs +1 -1
- package/dist/custom-auth-path/encode/Base64Encode.mjs +1 -1
- package/dist/custom-auth-path/error/BrowserAuthError.mjs +1 -1
- package/dist/custom-auth-path/error/BrowserAuthErrorCodes.mjs +1 -1
- package/dist/custom-auth-path/error/BrowserConfigurationAuthError.mjs +1 -1
- package/dist/custom-auth-path/error/BrowserConfigurationAuthErrorCodes.mjs +1 -1
- package/dist/custom-auth-path/error/NativeAuthError.d.ts.map +1 -1
- package/dist/custom-auth-path/error/NativeAuthError.mjs +3 -4
- package/dist/custom-auth-path/error/NativeAuthError.mjs.map +1 -1
- package/dist/custom-auth-path/error/NativeAuthErrorCodes.mjs +1 -1
- package/dist/custom-auth-path/event/EventHandler.mjs +1 -1
- package/dist/custom-auth-path/event/EventType.mjs +1 -1
- package/dist/custom-auth-path/interaction_client/BaseInteractionClient.mjs +1 -1
- package/dist/custom-auth-path/interaction_client/HybridSpaAuthorizationCodeClient.mjs +1 -1
- package/dist/custom-auth-path/interaction_client/PlatformAuthInteractionClient.d.ts.map +1 -1
- package/dist/custom-auth-path/interaction_client/PlatformAuthInteractionClient.mjs +15 -6
- package/dist/custom-auth-path/interaction_client/PlatformAuthInteractionClient.mjs.map +1 -1
- package/dist/custom-auth-path/interaction_client/PopupClient.mjs +1 -1
- package/dist/custom-auth-path/interaction_client/RedirectClient.mjs +4 -4
- package/dist/custom-auth-path/interaction_client/RedirectClient.mjs.map +1 -1
- package/dist/custom-auth-path/interaction_client/SilentAuthCodeClient.mjs +1 -1
- package/dist/custom-auth-path/interaction_client/SilentCacheClient.mjs +1 -1
- package/dist/custom-auth-path/interaction_client/SilentIframeClient.mjs +1 -1
- package/dist/custom-auth-path/interaction_client/SilentRefreshClient.mjs +1 -1
- package/dist/custom-auth-path/interaction_client/StandardInteractionClient.mjs +1 -1
- package/dist/custom-auth-path/interaction_handler/InteractionHandler.mjs +1 -1
- package/dist/custom-auth-path/interaction_handler/SilentHandler.mjs +1 -1
- package/dist/custom-auth-path/navigation/NavigationClient.mjs +1 -1
- package/dist/custom-auth-path/network/FetchClient.mjs +1 -1
- package/dist/custom-auth-path/operatingcontext/BaseOperatingContext.mjs +1 -1
- package/dist/custom-auth-path/operatingcontext/StandardOperatingContext.mjs +1 -1
- package/dist/custom-auth-path/packageMetadata.d.ts +1 -1
- package/dist/custom-auth-path/packageMetadata.mjs +2 -2
- package/dist/custom-auth-path/protocol/Authorize.d.ts.map +1 -1
- package/dist/custom-auth-path/protocol/Authorize.mjs +5 -1
- package/dist/custom-auth-path/protocol/Authorize.mjs.map +1 -1
- package/dist/custom-auth-path/request/RequestHelpers.mjs +1 -1
- package/dist/custom-auth-path/response/ResponseHandler.mjs +1 -1
- package/dist/custom-auth-path/utils/BrowserConstants.mjs +1 -1
- package/dist/custom-auth-path/utils/BrowserProtocolUtils.mjs +1 -1
- package/dist/custom-auth-path/utils/BrowserUtils.mjs +1 -1
- package/dist/custom-auth-path/utils/Helpers.mjs +1 -1
- package/dist/custom-auth-path/utils/MsalFrameStatsUtils.mjs +1 -1
- package/dist/custom_auth/CustomAuthConstants.d.ts +1 -1
- package/dist/encode/Base64Decode.mjs +1 -1
- package/dist/encode/Base64Encode.mjs +1 -1
- package/dist/error/BrowserAuthError.mjs +1 -1
- package/dist/error/BrowserAuthErrorCodes.mjs +1 -1
- package/dist/error/BrowserConfigurationAuthError.mjs +1 -1
- package/dist/error/BrowserConfigurationAuthErrorCodes.mjs +1 -1
- package/dist/error/NativeAuthError.d.ts.map +1 -1
- package/dist/error/NativeAuthError.mjs +3 -4
- package/dist/error/NativeAuthError.mjs.map +1 -1
- package/dist/error/NativeAuthErrorCodes.mjs +1 -1
- package/dist/error/NestedAppAuthError.mjs +1 -1
- package/dist/event/EventHandler.mjs +1 -1
- package/dist/event/EventMessage.mjs +1 -1
- package/dist/event/EventType.mjs +1 -1
- package/dist/index.mjs +1 -1
- package/dist/interaction_client/BaseInteractionClient.mjs +1 -1
- package/dist/interaction_client/HybridSpaAuthorizationCodeClient.mjs +1 -1
- package/dist/interaction_client/PlatformAuthInteractionClient.d.ts.map +1 -1
- package/dist/interaction_client/PlatformAuthInteractionClient.mjs +15 -6
- package/dist/interaction_client/PlatformAuthInteractionClient.mjs.map +1 -1
- package/dist/interaction_client/PopupClient.mjs +1 -1
- package/dist/interaction_client/RedirectClient.mjs +4 -4
- package/dist/interaction_client/RedirectClient.mjs.map +1 -1
- package/dist/interaction_client/SilentAuthCodeClient.mjs +1 -1
- package/dist/interaction_client/SilentCacheClient.mjs +1 -1
- package/dist/interaction_client/SilentIframeClient.mjs +1 -1
- package/dist/interaction_client/SilentRefreshClient.mjs +1 -1
- package/dist/interaction_client/StandardInteractionClient.mjs +1 -1
- package/dist/interaction_handler/InteractionHandler.mjs +1 -1
- package/dist/interaction_handler/SilentHandler.mjs +1 -1
- package/dist/naa/BridgeError.mjs +1 -1
- package/dist/naa/BridgeProxy.mjs +1 -1
- package/dist/naa/BridgeStatusCode.mjs +1 -1
- package/dist/naa/mapping/NestedAppAuthAdapter.mjs +1 -1
- package/dist/navigation/NavigationClient.mjs +1 -1
- package/dist/network/FetchClient.mjs +1 -1
- package/dist/operatingcontext/BaseOperatingContext.mjs +1 -1
- package/dist/operatingcontext/NestedAppOperatingContext.mjs +1 -1
- package/dist/operatingcontext/StandardOperatingContext.mjs +1 -1
- package/dist/operatingcontext/UnknownOperatingContext.mjs +1 -1
- package/dist/packageMetadata.d.ts +1 -1
- package/dist/packageMetadata.mjs +2 -2
- package/dist/protocol/Authorize.d.ts.map +1 -1
- package/dist/protocol/Authorize.mjs +5 -1
- package/dist/protocol/Authorize.mjs.map +1 -1
- package/dist/request/RequestHelpers.mjs +1 -1
- package/dist/response/ResponseHandler.mjs +1 -1
- package/dist/telemetry/BrowserPerformanceClient.mjs +1 -1
- package/dist/telemetry/BrowserPerformanceMeasurement.mjs +1 -1
- package/dist/utils/BrowserConstants.mjs +1 -1
- package/dist/utils/BrowserProtocolUtils.mjs +1 -1
- package/dist/utils/BrowserUtils.mjs +1 -1
- package/dist/utils/Helpers.mjs +1 -1
- package/dist/utils/MsalFrameStatsUtils.mjs +1 -1
- package/lib/custom-auth-path/msal-custom-auth.cjs +206 -102
- package/lib/custom-auth-path/msal-custom-auth.cjs.map +1 -1
- package/lib/custom-auth-path/types/cache/AccountManager.d.ts.map +1 -1
- package/lib/custom-auth-path/types/controllers/StandardController.d.ts.map +1 -1
- package/lib/custom-auth-path/types/custom_auth/CustomAuthConstants.d.ts +1 -1
- package/lib/custom-auth-path/types/error/NativeAuthError.d.ts.map +1 -1
- package/lib/custom-auth-path/types/interaction_client/PlatformAuthInteractionClient.d.ts.map +1 -1
- package/lib/custom-auth-path/types/packageMetadata.d.ts +1 -1
- package/lib/custom-auth-path/types/protocol/Authorize.d.ts.map +1 -1
- package/lib/msal-browser.cjs +208 -104
- package/lib/msal-browser.cjs.map +1 -1
- package/lib/msal-browser.js +208 -104
- package/lib/msal-browser.js.map +1 -1
- package/lib/msal-browser.min.js +66 -66
- package/lib/types/cache/AccountManager.d.ts.map +1 -1
- package/lib/types/controllers/StandardController.d.ts.map +1 -1
- package/lib/types/custom_auth/CustomAuthConstants.d.ts +1 -1
- package/lib/types/error/NativeAuthError.d.ts.map +1 -1
- package/lib/types/interaction_client/PlatformAuthInteractionClient.d.ts.map +1 -1
- package/lib/types/packageMetadata.d.ts +1 -1
- package/lib/types/protocol/Authorize.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/cache/AccountManager.ts +0 -6
- package/src/controllers/StandardController.ts +69 -20
- package/src/error/NativeAuthError.ts +1 -2
- package/src/interaction_client/PlatformAuthInteractionClient.ts +17 -5
- package/src/interaction_client/RedirectClient.ts +2 -2
- package/src/packageMetadata.ts +1 -1
- package/src/protocol/Authorize.ts +8 -0
package/lib/msal-browser.cjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
/*! @azure/msal-browser v4.
|
|
1
|
+
/*! @azure/msal-browser v4.21.0 2025-08-19 */
|
|
2
2
|
'use strict';
|
|
3
3
|
'use strict';
|
|
4
4
|
|
|
5
|
-
/*! @azure/msal-common v15.
|
|
5
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
6
6
|
/*
|
|
7
7
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
8
8
|
* Licensed under the MIT License.
|
|
@@ -279,7 +279,7 @@ const JsonWebTokenTypes = {
|
|
|
279
279
|
// Token renewal offset default in seconds
|
|
280
280
|
const DEFAULT_TOKEN_RENEWAL_OFFSET_SEC = 300;
|
|
281
281
|
|
|
282
|
-
/*! @azure/msal-common v15.
|
|
282
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
283
283
|
/*
|
|
284
284
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
285
285
|
* Licensed under the MIT License.
|
|
@@ -296,7 +296,7 @@ var AuthErrorCodes = /*#__PURE__*/Object.freeze({
|
|
|
296
296
|
unexpectedError: unexpectedError
|
|
297
297
|
});
|
|
298
298
|
|
|
299
|
-
/*! @azure/msal-common v15.
|
|
299
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
300
300
|
|
|
301
301
|
/*
|
|
302
302
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -345,7 +345,7 @@ function createAuthError(code, additionalMessage) {
|
|
|
345
345
|
: AuthErrorMessages[code]);
|
|
346
346
|
}
|
|
347
347
|
|
|
348
|
-
/*! @azure/msal-common v15.
|
|
348
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
349
349
|
/*
|
|
350
350
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
351
351
|
* Licensed under the MIT License.
|
|
@@ -443,7 +443,7 @@ var ClientAuthErrorCodes = /*#__PURE__*/Object.freeze({
|
|
|
443
443
|
userTimeoutReached: userTimeoutReached
|
|
444
444
|
});
|
|
445
445
|
|
|
446
|
-
/*! @azure/msal-common v15.
|
|
446
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
447
447
|
|
|
448
448
|
/*
|
|
449
449
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -695,7 +695,7 @@ function createClientAuthError(errorCode, additionalMessage) {
|
|
|
695
695
|
return new ClientAuthError(errorCode, additionalMessage);
|
|
696
696
|
}
|
|
697
697
|
|
|
698
|
-
/*! @azure/msal-common v15.
|
|
698
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
699
699
|
|
|
700
700
|
/*
|
|
701
701
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -734,7 +734,7 @@ const DEFAULT_CRYPTO_IMPLEMENTATION = {
|
|
|
734
734
|
},
|
|
735
735
|
};
|
|
736
736
|
|
|
737
|
-
/*! @azure/msal-common v15.
|
|
737
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
738
738
|
|
|
739
739
|
/*
|
|
740
740
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -925,12 +925,12 @@ class Logger {
|
|
|
925
925
|
}
|
|
926
926
|
}
|
|
927
927
|
|
|
928
|
-
/*! @azure/msal-common v15.
|
|
928
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
929
929
|
/* eslint-disable header/header */
|
|
930
930
|
const name$1 = "@azure/msal-common";
|
|
931
|
-
const version$1 = "15.
|
|
931
|
+
const version$1 = "15.12.0";
|
|
932
932
|
|
|
933
|
-
/*! @azure/msal-common v15.
|
|
933
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
934
934
|
/*
|
|
935
935
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
936
936
|
* Licensed under the MIT License.
|
|
@@ -950,7 +950,7 @@ const AzureCloudInstance = {
|
|
|
950
950
|
AzureUsGovernment: "https://login.microsoftonline.us",
|
|
951
951
|
};
|
|
952
952
|
|
|
953
|
-
/*! @azure/msal-common v15.
|
|
953
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
954
954
|
/*
|
|
955
955
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
956
956
|
* Licensed under the MIT License.
|
|
@@ -1006,7 +1006,7 @@ var ClientConfigurationErrorCodes = /*#__PURE__*/Object.freeze({
|
|
|
1006
1006
|
urlParseError: urlParseError
|
|
1007
1007
|
});
|
|
1008
1008
|
|
|
1009
|
-
/*! @azure/msal-common v15.
|
|
1009
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
1010
1010
|
|
|
1011
1011
|
/*
|
|
1012
1012
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -1149,7 +1149,7 @@ function createClientConfigurationError(errorCode) {
|
|
|
1149
1149
|
return new ClientConfigurationError(errorCode);
|
|
1150
1150
|
}
|
|
1151
1151
|
|
|
1152
|
-
/*! @azure/msal-common v15.
|
|
1152
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
1153
1153
|
/*
|
|
1154
1154
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
1155
1155
|
* Licensed under the MIT License.
|
|
@@ -1246,7 +1246,7 @@ class StringUtils {
|
|
|
1246
1246
|
}
|
|
1247
1247
|
}
|
|
1248
1248
|
|
|
1249
|
-
/*! @azure/msal-common v15.
|
|
1249
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
1250
1250
|
|
|
1251
1251
|
/*
|
|
1252
1252
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -1290,7 +1290,11 @@ class ScopeSet {
|
|
|
1290
1290
|
* @returns
|
|
1291
1291
|
*/
|
|
1292
1292
|
static createSearchScopes(inputScopeString) {
|
|
1293
|
-
|
|
1293
|
+
// Handle empty scopes by using default OIDC scopes for cache lookup
|
|
1294
|
+
const scopesToUse = inputScopeString && inputScopeString.length > 0
|
|
1295
|
+
? inputScopeString
|
|
1296
|
+
: [...OIDC_DEFAULT_SCOPES];
|
|
1297
|
+
const scopeSet = new ScopeSet(scopesToUse);
|
|
1294
1298
|
if (!scopeSet.containsOnlyOIDCScopes()) {
|
|
1295
1299
|
scopeSet.removeOIDCScopes();
|
|
1296
1300
|
}
|
|
@@ -1437,7 +1441,7 @@ class ScopeSet {
|
|
|
1437
1441
|
}
|
|
1438
1442
|
}
|
|
1439
1443
|
|
|
1440
|
-
/*! @azure/msal-common v15.
|
|
1444
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
1441
1445
|
/*
|
|
1442
1446
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
1443
1447
|
* Licensed under the MIT License.
|
|
@@ -1519,7 +1523,7 @@ function updateAccountTenantProfileData(baseAccountInfo, tenantProfile, idTokenC
|
|
|
1519
1523
|
return updatedAccountInfo;
|
|
1520
1524
|
}
|
|
1521
1525
|
|
|
1522
|
-
/*! @azure/msal-common v15.
|
|
1526
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
1523
1527
|
|
|
1524
1528
|
/*
|
|
1525
1529
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -1580,12 +1584,34 @@ function checkMaxAge(authTime, maxAge) {
|
|
|
1580
1584
|
}
|
|
1581
1585
|
}
|
|
1582
1586
|
|
|
1583
|
-
/*! @azure/msal-common v15.
|
|
1587
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
1584
1588
|
|
|
1585
1589
|
/*
|
|
1586
1590
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
1587
1591
|
* Licensed under the MIT License.
|
|
1588
1592
|
*/
|
|
1593
|
+
/**
|
|
1594
|
+
* Canonicalizes a URL by making it lowercase and ensuring it ends with /
|
|
1595
|
+
* Inlined version of UrlString.canonicalizeUri to avoid circular dependency
|
|
1596
|
+
* @param url - URL to canonicalize
|
|
1597
|
+
* @returns Canonicalized URL
|
|
1598
|
+
*/
|
|
1599
|
+
function canonicalizeUrl(url) {
|
|
1600
|
+
if (!url) {
|
|
1601
|
+
return url;
|
|
1602
|
+
}
|
|
1603
|
+
let lowerCaseUrl = url.toLowerCase();
|
|
1604
|
+
if (StringUtils.endsWith(lowerCaseUrl, "?")) {
|
|
1605
|
+
lowerCaseUrl = lowerCaseUrl.slice(0, -1);
|
|
1606
|
+
}
|
|
1607
|
+
else if (StringUtils.endsWith(lowerCaseUrl, "?/")) {
|
|
1608
|
+
lowerCaseUrl = lowerCaseUrl.slice(0, -2);
|
|
1609
|
+
}
|
|
1610
|
+
if (!StringUtils.endsWith(lowerCaseUrl, "/")) {
|
|
1611
|
+
lowerCaseUrl += "/";
|
|
1612
|
+
}
|
|
1613
|
+
return lowerCaseUrl;
|
|
1614
|
+
}
|
|
1589
1615
|
/**
|
|
1590
1616
|
* Parses hash string from given string. Returns empty string if no hash symbol is found.
|
|
1591
1617
|
* @param hashString
|
|
@@ -1643,9 +1669,38 @@ function mapToQueryString(parameters, encodeExtraParams = true, extraQueryParame
|
|
|
1643
1669
|
}
|
|
1644
1670
|
});
|
|
1645
1671
|
return queryParameterArray.join("&");
|
|
1672
|
+
}
|
|
1673
|
+
/**
|
|
1674
|
+
* Normalizes URLs for comparison by removing hash, canonicalizing,
|
|
1675
|
+
* and ensuring consistent URL encoding in query parameters.
|
|
1676
|
+
* This fixes redirect loops when URLs contain encoded characters like apostrophes (%27).
|
|
1677
|
+
* @param url - URL to normalize
|
|
1678
|
+
* @returns Normalized URL string for comparison
|
|
1679
|
+
*/
|
|
1680
|
+
function normalizeUrlForComparison(url) {
|
|
1681
|
+
if (!url) {
|
|
1682
|
+
return url;
|
|
1683
|
+
}
|
|
1684
|
+
// Remove hash first
|
|
1685
|
+
const urlWithoutHash = url.split("#")[0];
|
|
1686
|
+
try {
|
|
1687
|
+
// Parse the URL to handle encoding consistently
|
|
1688
|
+
const urlObj = new URL(urlWithoutHash);
|
|
1689
|
+
/*
|
|
1690
|
+
* Reconstruct the URL with properly decoded query parameters
|
|
1691
|
+
* This ensures that %27 and ' are treated as equivalent
|
|
1692
|
+
*/
|
|
1693
|
+
const normalizedUrl = urlObj.origin + urlObj.pathname + urlObj.search;
|
|
1694
|
+
// Apply canonicalization logic inline to avoid circular dependency
|
|
1695
|
+
return canonicalizeUrl(normalizedUrl);
|
|
1696
|
+
}
|
|
1697
|
+
catch (e) {
|
|
1698
|
+
// Fallback to original logic if URL parsing fails
|
|
1699
|
+
return canonicalizeUrl(urlWithoutHash);
|
|
1700
|
+
}
|
|
1646
1701
|
}
|
|
1647
1702
|
|
|
1648
|
-
/*! @azure/msal-common v15.
|
|
1703
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
1649
1704
|
|
|
1650
1705
|
/*
|
|
1651
1706
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -1809,7 +1864,7 @@ class UrlString {
|
|
|
1809
1864
|
}
|
|
1810
1865
|
}
|
|
1811
1866
|
|
|
1812
|
-
/*! @azure/msal-common v15.
|
|
1867
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
1813
1868
|
|
|
1814
1869
|
/*
|
|
1815
1870
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -1948,7 +2003,7 @@ function getCloudDiscoveryMetadataFromNetworkResponse(response, authorityHost) {
|
|
|
1948
2003
|
return null;
|
|
1949
2004
|
}
|
|
1950
2005
|
|
|
1951
|
-
/*! @azure/msal-common v15.
|
|
2006
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
1952
2007
|
/*
|
|
1953
2008
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
1954
2009
|
* Licensed under the MIT License.
|
|
@@ -1956,7 +2011,7 @@ function getCloudDiscoveryMetadataFromNetworkResponse(response, authorityHost) {
|
|
|
1956
2011
|
const cacheQuotaExceeded = "cache_quota_exceeded";
|
|
1957
2012
|
const cacheErrorUnknown = "cache_error_unknown";
|
|
1958
2013
|
|
|
1959
|
-
/*! @azure/msal-common v15.
|
|
2014
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
1960
2015
|
|
|
1961
2016
|
/*
|
|
1962
2017
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -2001,7 +2056,7 @@ function createCacheError(e) {
|
|
|
2001
2056
|
}
|
|
2002
2057
|
}
|
|
2003
2058
|
|
|
2004
|
-
/*! @azure/msal-common v15.
|
|
2059
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
2005
2060
|
|
|
2006
2061
|
/*
|
|
2007
2062
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -2031,6 +2086,11 @@ class CacheManager {
|
|
|
2031
2086
|
* Gets first tenanted AccountInfo object found based on provided filters
|
|
2032
2087
|
*/
|
|
2033
2088
|
getAccountInfoFilteredBy(accountFilter, correlationId) {
|
|
2089
|
+
if (Object.keys(accountFilter).length === 0 ||
|
|
2090
|
+
Object.values(accountFilter).every((value) => !value)) {
|
|
2091
|
+
this.commonLogger.warning("getAccountInfoFilteredBy: Account filter is empty or invalid, returning null");
|
|
2092
|
+
return null;
|
|
2093
|
+
}
|
|
2034
2094
|
const allAccounts = this.getAllAccounts(accountFilter, correlationId);
|
|
2035
2095
|
if (allAccounts.length > 1) {
|
|
2036
2096
|
// If one or more accounts are found, prioritize accounts that have an ID token
|
|
@@ -3105,7 +3165,7 @@ class DefaultStorageClass extends CacheManager {
|
|
|
3105
3165
|
}
|
|
3106
3166
|
}
|
|
3107
3167
|
|
|
3108
|
-
/*! @azure/msal-common v15.
|
|
3168
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
3109
3169
|
/*
|
|
3110
3170
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3111
3171
|
* Licensed under the MIT License.
|
|
@@ -3129,7 +3189,7 @@ const ProtocolMode = {
|
|
|
3129
3189
|
EAR: "EAR",
|
|
3130
3190
|
};
|
|
3131
3191
|
|
|
3132
|
-
/*! @azure/msal-common v15.
|
|
3192
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
3133
3193
|
/*
|
|
3134
3194
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3135
3195
|
* Licensed under the MIT License.
|
|
@@ -3651,7 +3711,7 @@ const IntFields = new Set([
|
|
|
3651
3711
|
"upgradedCacheCount",
|
|
3652
3712
|
]);
|
|
3653
3713
|
|
|
3654
|
-
/*! @azure/msal-common v15.
|
|
3714
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
3655
3715
|
|
|
3656
3716
|
/*
|
|
3657
3717
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -3730,7 +3790,7 @@ class StubPerformanceClient {
|
|
|
3730
3790
|
}
|
|
3731
3791
|
}
|
|
3732
3792
|
|
|
3733
|
-
/*! @azure/msal-common v15.
|
|
3793
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
3734
3794
|
|
|
3735
3795
|
/*
|
|
3736
3796
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -3830,7 +3890,7 @@ function isOidcProtocolMode(config) {
|
|
|
3830
3890
|
return (config.authOptions.authority.options.protocolMode === ProtocolMode.OIDC);
|
|
3831
3891
|
}
|
|
3832
3892
|
|
|
3833
|
-
/*! @azure/msal-common v15.
|
|
3893
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
3834
3894
|
/*
|
|
3835
3895
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3836
3896
|
* Licensed under the MIT License.
|
|
@@ -3840,7 +3900,7 @@ const CcsCredentialType = {
|
|
|
3840
3900
|
UPN: "UPN",
|
|
3841
3901
|
};
|
|
3842
3902
|
|
|
3843
|
-
/*! @azure/msal-common v15.
|
|
3903
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
3844
3904
|
|
|
3845
3905
|
/*
|
|
3846
3906
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -3880,7 +3940,7 @@ function buildClientInfoFromHomeAccountId(homeAccountId) {
|
|
|
3880
3940
|
};
|
|
3881
3941
|
}
|
|
3882
3942
|
|
|
3883
|
-
/*! @azure/msal-common v15.
|
|
3943
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
3884
3944
|
/*
|
|
3885
3945
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3886
3946
|
* Licensed under the MIT License.
|
|
@@ -3930,7 +3990,7 @@ const INSTANCE_AWARE = "instance_aware";
|
|
|
3930
3990
|
const EAR_JWK = "ear_jwk";
|
|
3931
3991
|
const EAR_JWE_CRYPTO = "ear_jwe_crypto";
|
|
3932
3992
|
|
|
3933
|
-
/*! @azure/msal-common v15.
|
|
3993
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
3934
3994
|
|
|
3935
3995
|
/*
|
|
3936
3996
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -4310,7 +4370,7 @@ function addPostBodyParameters(parameters, bodyParameters) {
|
|
|
4310
4370
|
});
|
|
4311
4371
|
}
|
|
4312
4372
|
|
|
4313
|
-
/*! @azure/msal-common v15.
|
|
4373
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
4314
4374
|
/*
|
|
4315
4375
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
4316
4376
|
* Licensed under the MIT License.
|
|
@@ -4325,7 +4385,7 @@ const AuthorityType = {
|
|
|
4325
4385
|
Ciam: 3,
|
|
4326
4386
|
};
|
|
4327
4387
|
|
|
4328
|
-
/*! @azure/msal-common v15.
|
|
4388
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
4329
4389
|
/*
|
|
4330
4390
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
4331
4391
|
* Licensed under the MIT License.
|
|
@@ -4337,7 +4397,7 @@ function isOpenIdConfigResponse(response) {
|
|
|
4337
4397
|
response.hasOwnProperty("jwks_uri"));
|
|
4338
4398
|
}
|
|
4339
4399
|
|
|
4340
|
-
/*! @azure/msal-common v15.
|
|
4400
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
4341
4401
|
/*
|
|
4342
4402
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
4343
4403
|
* Licensed under the MIT License.
|
|
@@ -4347,7 +4407,7 @@ function isCloudInstanceDiscoveryResponse(response) {
|
|
|
4347
4407
|
response.hasOwnProperty("metadata"));
|
|
4348
4408
|
}
|
|
4349
4409
|
|
|
4350
|
-
/*! @azure/msal-common v15.
|
|
4410
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
4351
4411
|
/*
|
|
4352
4412
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
4353
4413
|
* Licensed under the MIT License.
|
|
@@ -4357,7 +4417,7 @@ function isCloudInstanceDiscoveryErrorResponse(response) {
|
|
|
4357
4417
|
response.hasOwnProperty("error_description"));
|
|
4358
4418
|
}
|
|
4359
4419
|
|
|
4360
|
-
/*! @azure/msal-common v15.
|
|
4420
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
4361
4421
|
/*
|
|
4362
4422
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
4363
4423
|
* Licensed under the MIT License.
|
|
@@ -4453,7 +4513,7 @@ const invokeAsync = (callback, eventName, logger, telemetryClient, correlationId
|
|
|
4453
4513
|
};
|
|
4454
4514
|
};
|
|
4455
4515
|
|
|
4456
|
-
/*! @azure/msal-common v15.
|
|
4516
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
4457
4517
|
|
|
4458
4518
|
/*
|
|
4459
4519
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -4559,7 +4619,7 @@ RegionDiscovery.IMDS_OPTIONS = {
|
|
|
4559
4619
|
},
|
|
4560
4620
|
};
|
|
4561
4621
|
|
|
4562
|
-
/*! @azure/msal-common v15.
|
|
4622
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
4563
4623
|
/*
|
|
4564
4624
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
4565
4625
|
* Licensed under the MIT License.
|
|
@@ -4624,7 +4684,7 @@ function wasClockTurnedBack(cachedAt) {
|
|
|
4624
4684
|
return cachedAtSec > nowSeconds();
|
|
4625
4685
|
}
|
|
4626
4686
|
|
|
4627
|
-
/*! @azure/msal-common v15.
|
|
4687
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
4628
4688
|
|
|
4629
4689
|
/*
|
|
4630
4690
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -4886,7 +4946,7 @@ function isAuthorityMetadataExpired(metadata) {
|
|
|
4886
4946
|
return metadata.expiresAt <= nowSeconds();
|
|
4887
4947
|
}
|
|
4888
4948
|
|
|
4889
|
-
/*! @azure/msal-common v15.
|
|
4949
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
4890
4950
|
|
|
4891
4951
|
/*
|
|
4892
4952
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -5725,7 +5785,7 @@ function buildStaticAuthorityOptions(authOptions) {
|
|
|
5725
5785
|
};
|
|
5726
5786
|
}
|
|
5727
5787
|
|
|
5728
|
-
/*! @azure/msal-common v15.
|
|
5788
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
5729
5789
|
|
|
5730
5790
|
/*
|
|
5731
5791
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -5756,7 +5816,7 @@ async function createDiscoveredInstance(authorityUri, networkClient, cacheManage
|
|
|
5756
5816
|
}
|
|
5757
5817
|
}
|
|
5758
5818
|
|
|
5759
|
-
/*! @azure/msal-common v15.
|
|
5819
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
5760
5820
|
|
|
5761
5821
|
/*
|
|
5762
5822
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -5775,7 +5835,7 @@ class ServerError extends AuthError {
|
|
|
5775
5835
|
}
|
|
5776
5836
|
}
|
|
5777
5837
|
|
|
5778
|
-
/*! @azure/msal-common v15.
|
|
5838
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
5779
5839
|
/*
|
|
5780
5840
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
5781
5841
|
* Licensed under the MIT License.
|
|
@@ -5796,7 +5856,7 @@ function getRequestThumbprint(clientId, request, homeAccountId) {
|
|
|
5796
5856
|
};
|
|
5797
5857
|
}
|
|
5798
5858
|
|
|
5799
|
-
/*! @azure/msal-common v15.
|
|
5859
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
5800
5860
|
|
|
5801
5861
|
/*
|
|
5802
5862
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -5883,7 +5943,7 @@ class ThrottlingUtils {
|
|
|
5883
5943
|
}
|
|
5884
5944
|
}
|
|
5885
5945
|
|
|
5886
|
-
/*! @azure/msal-common v15.
|
|
5946
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
5887
5947
|
|
|
5888
5948
|
/*
|
|
5889
5949
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -5914,7 +5974,7 @@ function createNetworkError(error, httpStatus, responseHeaders, additionalError)
|
|
|
5914
5974
|
return new NetworkError(error, httpStatus, responseHeaders);
|
|
5915
5975
|
}
|
|
5916
5976
|
|
|
5917
|
-
/*! @azure/msal-common v15.
|
|
5977
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
5918
5978
|
|
|
5919
5979
|
/*
|
|
5920
5980
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -6062,7 +6122,7 @@ class BaseClient {
|
|
|
6062
6122
|
}
|
|
6063
6123
|
}
|
|
6064
6124
|
|
|
6065
|
-
/*! @azure/msal-common v15.
|
|
6125
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
6066
6126
|
/*
|
|
6067
6127
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
6068
6128
|
* Licensed under the MIT License.
|
|
@@ -6084,7 +6144,7 @@ function getTenantIdFromIdTokenClaims(idTokenClaims) {
|
|
|
6084
6144
|
return null;
|
|
6085
6145
|
}
|
|
6086
6146
|
|
|
6087
|
-
/*! @azure/msal-common v15.
|
|
6147
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
6088
6148
|
|
|
6089
6149
|
/*
|
|
6090
6150
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -6299,7 +6359,7 @@ class AccountEntity {
|
|
|
6299
6359
|
}
|
|
6300
6360
|
}
|
|
6301
6361
|
|
|
6302
|
-
/*! @azure/msal-common v15.
|
|
6362
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
6303
6363
|
/*
|
|
6304
6364
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
6305
6365
|
* Licensed under the MIT License.
|
|
@@ -6327,7 +6387,7 @@ var InteractionRequiredAuthErrorCodes = /*#__PURE__*/Object.freeze({
|
|
|
6327
6387
|
uxNotAllowed: uxNotAllowed
|
|
6328
6388
|
});
|
|
6329
6389
|
|
|
6330
|
-
/*! @azure/msal-common v15.
|
|
6390
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
6331
6391
|
|
|
6332
6392
|
/*
|
|
6333
6393
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -6417,7 +6477,7 @@ function createInteractionRequiredAuthError(errorCode) {
|
|
|
6417
6477
|
return new InteractionRequiredAuthError(errorCode, InteractionRequiredAuthErrorMessages[errorCode]);
|
|
6418
6478
|
}
|
|
6419
6479
|
|
|
6420
|
-
/*! @azure/msal-common v15.
|
|
6480
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
6421
6481
|
|
|
6422
6482
|
/*
|
|
6423
6483
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -6489,7 +6549,7 @@ class ProtocolUtils {
|
|
|
6489
6549
|
}
|
|
6490
6550
|
}
|
|
6491
6551
|
|
|
6492
|
-
/*! @azure/msal-common v15.
|
|
6552
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
6493
6553
|
|
|
6494
6554
|
/*
|
|
6495
6555
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -6571,7 +6631,7 @@ class PopTokenGenerator {
|
|
|
6571
6631
|
}
|
|
6572
6632
|
}
|
|
6573
6633
|
|
|
6574
|
-
/*! @azure/msal-common v15.
|
|
6634
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
6575
6635
|
/*
|
|
6576
6636
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
6577
6637
|
* Licensed under the MIT License.
|
|
@@ -6598,7 +6658,7 @@ class PopTokenGenerator {
|
|
|
6598
6658
|
}
|
|
6599
6659
|
}
|
|
6600
6660
|
|
|
6601
|
-
/*! @azure/msal-common v15.
|
|
6661
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
6602
6662
|
|
|
6603
6663
|
/*
|
|
6604
6664
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -6929,7 +6989,7 @@ function buildAccountToCache(cacheStorage, authority, homeAccountId, base64Decod
|
|
|
6929
6989
|
return baseAccount;
|
|
6930
6990
|
}
|
|
6931
6991
|
|
|
6932
|
-
/*! @azure/msal-common v15.
|
|
6992
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
6933
6993
|
/*
|
|
6934
6994
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
6935
6995
|
* Licensed under the MIT License.
|
|
@@ -6947,7 +7007,7 @@ async function getClientAssertion(clientAssertion, clientId, tokenEndpoint) {
|
|
|
6947
7007
|
}
|
|
6948
7008
|
}
|
|
6949
7009
|
|
|
6950
|
-
/*! @azure/msal-common v15.
|
|
7010
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
6951
7011
|
|
|
6952
7012
|
/*
|
|
6953
7013
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -7182,7 +7242,7 @@ class AuthorizationCodeClient extends BaseClient {
|
|
|
7182
7242
|
}
|
|
7183
7243
|
}
|
|
7184
7244
|
|
|
7185
|
-
/*! @azure/msal-common v15.
|
|
7245
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
7186
7246
|
|
|
7187
7247
|
/*
|
|
7188
7248
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -7391,7 +7451,7 @@ class RefreshTokenClient extends BaseClient {
|
|
|
7391
7451
|
}
|
|
7392
7452
|
}
|
|
7393
7453
|
|
|
7394
|
-
/*! @azure/msal-common v15.
|
|
7454
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
7395
7455
|
|
|
7396
7456
|
/*
|
|
7397
7457
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -7489,7 +7549,7 @@ class SilentFlowClient extends BaseClient {
|
|
|
7489
7549
|
}
|
|
7490
7550
|
}
|
|
7491
7551
|
|
|
7492
|
-
/*! @azure/msal-common v15.
|
|
7552
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
7493
7553
|
|
|
7494
7554
|
/*
|
|
7495
7555
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -7504,7 +7564,7 @@ const StubbedNetworkModule = {
|
|
|
7504
7564
|
},
|
|
7505
7565
|
};
|
|
7506
7566
|
|
|
7507
|
-
/*! @azure/msal-common v15.
|
|
7567
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
7508
7568
|
|
|
7509
7569
|
/*
|
|
7510
7570
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -7728,7 +7788,7 @@ function extractLoginHint(account) {
|
|
|
7728
7788
|
return account.loginHint || account.idTokenClaims?.login_hint || null;
|
|
7729
7789
|
}
|
|
7730
7790
|
|
|
7731
|
-
/*! @azure/msal-common v15.
|
|
7791
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
7732
7792
|
|
|
7733
7793
|
/*
|
|
7734
7794
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -7786,7 +7846,7 @@ class AuthenticationHeaderParser {
|
|
|
7786
7846
|
}
|
|
7787
7847
|
}
|
|
7788
7848
|
|
|
7789
|
-
/*! @azure/msal-common v15.
|
|
7849
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
7790
7850
|
|
|
7791
7851
|
/*
|
|
7792
7852
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -8049,7 +8109,7 @@ class ServerTelemetryManager {
|
|
|
8049
8109
|
}
|
|
8050
8110
|
}
|
|
8051
8111
|
|
|
8052
|
-
/*! @azure/msal-common v15.
|
|
8112
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
8053
8113
|
/*
|
|
8054
8114
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
8055
8115
|
* Licensed under the MIT License.
|
|
@@ -8057,7 +8117,7 @@ class ServerTelemetryManager {
|
|
|
8057
8117
|
const missingKidError = "missing_kid_error";
|
|
8058
8118
|
const missingAlgError = "missing_alg_error";
|
|
8059
8119
|
|
|
8060
|
-
/*! @azure/msal-common v15.
|
|
8120
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
8061
8121
|
|
|
8062
8122
|
/*
|
|
8063
8123
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -8082,7 +8142,7 @@ function createJoseHeaderError(code) {
|
|
|
8082
8142
|
return new JoseHeaderError(code, JoseHeaderErrorMessages[code]);
|
|
8083
8143
|
}
|
|
8084
8144
|
|
|
8085
|
-
/*! @azure/msal-common v15.
|
|
8145
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
8086
8146
|
|
|
8087
8147
|
/*
|
|
8088
8148
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -8122,7 +8182,7 @@ class JoseHeader {
|
|
|
8122
8182
|
}
|
|
8123
8183
|
}
|
|
8124
8184
|
|
|
8125
|
-
/*! @azure/msal-common v15.
|
|
8185
|
+
/*! @azure/msal-common v15.12.0 2025-08-19 */
|
|
8126
8186
|
|
|
8127
8187
|
/*
|
|
8128
8188
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -10218,7 +10278,7 @@ function buildConfiguration({ auth: userInputAuth, cache: userInputCache, system
|
|
|
10218
10278
|
|
|
10219
10279
|
/* eslint-disable header/header */
|
|
10220
10280
|
const name = "@azure/msal-browser";
|
|
10221
|
-
const version = "4.
|
|
10281
|
+
const version = "4.21.0";
|
|
10222
10282
|
|
|
10223
10283
|
/*
|
|
10224
10284
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -12846,11 +12906,6 @@ function getAllAccounts(logger, browserStorage, isInBrowser, correlationId, acco
|
|
|
12846
12906
|
* @returns The first account found in the cache matching the provided filter or null if no account could be found.
|
|
12847
12907
|
*/
|
|
12848
12908
|
function getAccount(accountFilter, logger, browserStorage, correlationId) {
|
|
12849
|
-
logger.trace("getAccount called");
|
|
12850
|
-
if (Object.keys(accountFilter).length === 0) {
|
|
12851
|
-
logger.warning("getAccount: No accountFilter provided");
|
|
12852
|
-
return null;
|
|
12853
|
-
}
|
|
12854
12909
|
const account = browserStorage.getAccountInfoFilteredBy(accountFilter, correlationId);
|
|
12855
12910
|
if (account) {
|
|
12856
12911
|
logger.verbose("getAccount: Account matching provided filter found, returning");
|
|
@@ -13624,7 +13679,6 @@ const userSwitch = "user_switch";
|
|
|
13624
13679
|
const USER_INTERACTION_REQUIRED = "USER_INTERACTION_REQUIRED";
|
|
13625
13680
|
const USER_CANCEL = "USER_CANCEL";
|
|
13626
13681
|
const NO_NETWORK = "NO_NETWORK";
|
|
13627
|
-
const PERSISTENT_ERROR = "PERSISTENT_ERROR";
|
|
13628
13682
|
const DISABLED = "DISABLED";
|
|
13629
13683
|
const ACCOUNT_UNAVAILABLE = "ACCOUNT_UNAVAILABLE";
|
|
13630
13684
|
const UX_NOT_ALLOWED = "UX_NOT_ALLOWED";
|
|
@@ -13651,8 +13705,7 @@ class NativeAuthError extends AuthError {
|
|
|
13651
13705
|
function isFatalNativeAuthError(error) {
|
|
13652
13706
|
if (error.ext &&
|
|
13653
13707
|
error.ext.status &&
|
|
13654
|
-
|
|
13655
|
-
error.ext.status === DISABLED)) {
|
|
13708
|
+
error.ext.status === DISABLED) {
|
|
13656
13709
|
return true;
|
|
13657
13710
|
}
|
|
13658
13711
|
if (error.ext &&
|
|
@@ -13776,10 +13829,10 @@ class PlatformAuthInteractionClient extends BaseInteractionClient {
|
|
|
13776
13829
|
* @param request
|
|
13777
13830
|
*/
|
|
13778
13831
|
async acquireToken(request, cacheLookupPolicy) {
|
|
13779
|
-
this.performanceClient.addQueueMeasurement(PerformanceEvents.NativeInteractionClientAcquireToken,
|
|
13832
|
+
this.performanceClient.addQueueMeasurement(PerformanceEvents.NativeInteractionClientAcquireToken, this.correlationId);
|
|
13780
13833
|
this.logger.trace("NativeInteractionClient - acquireToken called.");
|
|
13781
13834
|
// start the perf measurement
|
|
13782
|
-
const nativeATMeasurement = this.performanceClient.startMeasurement(PerformanceEvents.NativeInteractionClientAcquireToken,
|
|
13835
|
+
const nativeATMeasurement = this.performanceClient.startMeasurement(PerformanceEvents.NativeInteractionClientAcquireToken, this.correlationId);
|
|
13783
13836
|
const reqTimestamp = nowSeconds();
|
|
13784
13837
|
const serverTelemetryManager = this.initializeServerTelemetryManager(this.apiId);
|
|
13785
13838
|
try {
|
|
@@ -13798,6 +13851,10 @@ class PlatformAuthInteractionClient extends BaseInteractionClient {
|
|
|
13798
13851
|
catch (e) {
|
|
13799
13852
|
if (cacheLookupPolicy === CacheLookupPolicy.AccessToken) {
|
|
13800
13853
|
this.logger.info("MSAL internal Cache does not contain tokens, return error as per cache policy");
|
|
13854
|
+
nativeATMeasurement.end({
|
|
13855
|
+
success: false,
|
|
13856
|
+
brokerErrorCode: "cache_request_failed",
|
|
13857
|
+
});
|
|
13801
13858
|
throw e;
|
|
13802
13859
|
}
|
|
13803
13860
|
// continue with a native call for any and all errors
|
|
@@ -13819,7 +13876,6 @@ class PlatformAuthInteractionClient extends BaseInteractionClient {
|
|
|
13819
13876
|
success: false,
|
|
13820
13877
|
errorCode: error.errorCode,
|
|
13821
13878
|
subErrorCode: error.subError,
|
|
13822
|
-
isNativeBroker: true,
|
|
13823
13879
|
});
|
|
13824
13880
|
throw error;
|
|
13825
13881
|
});
|
|
@@ -13828,6 +13884,9 @@ class PlatformAuthInteractionClient extends BaseInteractionClient {
|
|
|
13828
13884
|
if (e instanceof NativeAuthError) {
|
|
13829
13885
|
serverTelemetryManager.setNativeBrokerErrorCode(e.errorCode);
|
|
13830
13886
|
}
|
|
13887
|
+
nativeATMeasurement.end({
|
|
13888
|
+
success: false,
|
|
13889
|
+
});
|
|
13831
13890
|
throw e;
|
|
13832
13891
|
}
|
|
13833
13892
|
}
|
|
@@ -13949,6 +14008,9 @@ class PlatformAuthInteractionClient extends BaseInteractionClient {
|
|
|
13949
14008
|
const authResult = await this.handleNativeResponse(response, request, reqTimestamp);
|
|
13950
14009
|
const serverTelemetryManager = this.initializeServerTelemetryManager(this.apiId);
|
|
13951
14010
|
serverTelemetryManager.clearNativeBrokerErrorCode();
|
|
14011
|
+
if (performanceClient && this.correlationId) {
|
|
14012
|
+
this.performanceClient.addFields({ isNativeBroker: true }, this.correlationId);
|
|
14013
|
+
}
|
|
13952
14014
|
return authResult;
|
|
13953
14015
|
}
|
|
13954
14016
|
catch (e) {
|
|
@@ -14265,7 +14327,7 @@ class PlatformAuthInteractionClient extends BaseInteractionClient {
|
|
|
14265
14327
|
// generate reqCnf if not provided in the request
|
|
14266
14328
|
let reqCnfData;
|
|
14267
14329
|
if (!validatedRequest.keyId) {
|
|
14268
|
-
const generatedReqCnfData = await invokeAsync(popTokenGenerator.generateCnf.bind(popTokenGenerator), PerformanceEvents.PopTokenGenerateCnf, this.logger, this.performanceClient,
|
|
14330
|
+
const generatedReqCnfData = await invokeAsync(popTokenGenerator.generateCnf.bind(popTokenGenerator), PerformanceEvents.PopTokenGenerateCnf, this.logger, this.performanceClient, this.correlationId)(shrParameters, this.logger);
|
|
14269
14331
|
reqCnfData = generatedReqCnfData.reqCnfString;
|
|
14270
14332
|
validatedRequest.keyId = generatedReqCnfData.kid;
|
|
14271
14333
|
validatedRequest.signPopToken = true;
|
|
@@ -14351,7 +14413,7 @@ class PlatformAuthInteractionClient extends BaseInteractionClient {
|
|
|
14351
14413
|
this.performanceClient?.addFields({
|
|
14352
14414
|
embeddedClientId: child_client_id,
|
|
14353
14415
|
embeddedRedirectUri: child_redirect_uri,
|
|
14354
|
-
},
|
|
14416
|
+
}, this.correlationId);
|
|
14355
14417
|
}
|
|
14356
14418
|
}
|
|
14357
14419
|
|
|
@@ -14382,6 +14444,10 @@ async function getStandardParameters(config, authority, request, logger, perform
|
|
|
14382
14444
|
if (request.platformBroker) {
|
|
14383
14445
|
// signal ests that this is a WAM call
|
|
14384
14446
|
addNativeBroker(parameters);
|
|
14447
|
+
// instrument JS-platform bridge specific fields
|
|
14448
|
+
performanceClient.addFields({
|
|
14449
|
+
isPlatformAuthorizeRequest: true,
|
|
14450
|
+
}, request.correlationId);
|
|
14385
14451
|
// pass the req_cnf for POP
|
|
14386
14452
|
if (request.authenticationScheme === AuthenticationScheme.POP) {
|
|
14387
14453
|
const cryptoOps = new CryptoOps(logger, performanceClient);
|
|
@@ -15774,8 +15840,8 @@ class RedirectClient extends StandardInteractionClient {
|
|
|
15774
15840
|
}
|
|
15775
15841
|
// If navigateToLoginRequestUrl is true, get the url where the redirect request was initiated
|
|
15776
15842
|
const loginRequestUrl = this.browserStorage.getTemporaryCache(TemporaryCacheKeys.ORIGIN_URI, true) || Constants.EMPTY_STRING;
|
|
15777
|
-
const loginRequestUrlNormalized =
|
|
15778
|
-
const currentUrlNormalized =
|
|
15843
|
+
const loginRequestUrlNormalized = normalizeUrlForComparison(loginRequestUrl);
|
|
15844
|
+
const currentUrlNormalized = normalizeUrlForComparison(window.location.href);
|
|
15779
15845
|
if (loginRequestUrlNormalized === currentUrlNormalized &&
|
|
15780
15846
|
this.config.auth.navigateToLoginRequestUrl) {
|
|
15781
15847
|
// We are on the page we need to navigate to - handle hash
|
|
@@ -16904,6 +16970,9 @@ class StandardController {
|
|
|
16904
16970
|
if (useNative && this.platformAuthProvider) {
|
|
16905
16971
|
rootMeasurement = this.performanceClient.startMeasurement(PerformanceEvents.AcquireTokenRedirect, platformBrokerRequest?.correlationId || "");
|
|
16906
16972
|
this.logger.trace("handleRedirectPromise - acquiring token from native platform");
|
|
16973
|
+
rootMeasurement.add({
|
|
16974
|
+
isPlatformBrokerRequest: true,
|
|
16975
|
+
});
|
|
16907
16976
|
const nativeClient = new PlatformAuthInteractionClient(this.config, this.browserStorage, this.browserCrypto, this.logger, this.eventHandler, this.navigationClient, ApiId.handleRedirectPromise, this.performanceClient, this.platformAuthProvider, platformBrokerRequest.accountId, this.nativeInternalStorage, platformBrokerRequest.correlationId);
|
|
16908
16977
|
redirectResponse = invokeAsync(nativeClient.handleRedirectPromise.bind(nativeClient), PerformanceEvents.HandleNativeRedirectPromiseMeasurement, this.logger, this.performanceClient, rootMeasurement.event.correlationId)(this.performanceClient, rootMeasurement.event.correlationId);
|
|
16909
16978
|
}
|
|
@@ -16997,12 +17066,12 @@ class StandardController {
|
|
|
16997
17066
|
const navigate = typeof onRedirectNavigateCb === "function"
|
|
16998
17067
|
? onRedirectNavigateCb(url)
|
|
16999
17068
|
: undefined;
|
|
17000
|
-
|
|
17001
|
-
|
|
17002
|
-
}
|
|
17003
|
-
|
|
17004
|
-
atrMeasurement.
|
|
17005
|
-
|
|
17069
|
+
atrMeasurement.add({
|
|
17070
|
+
navigateCallbackResult: navigate !== false,
|
|
17071
|
+
});
|
|
17072
|
+
atrMeasurement.event =
|
|
17073
|
+
atrMeasurement.end({ success: true }) ||
|
|
17074
|
+
atrMeasurement.event;
|
|
17006
17075
|
return navigate;
|
|
17007
17076
|
};
|
|
17008
17077
|
}
|
|
@@ -17012,12 +17081,12 @@ class StandardController {
|
|
|
17012
17081
|
const navigate = typeof configOnRedirectNavigateCb === "function"
|
|
17013
17082
|
? configOnRedirectNavigateCb(url)
|
|
17014
17083
|
: undefined;
|
|
17015
|
-
|
|
17016
|
-
|
|
17017
|
-
}
|
|
17018
|
-
|
|
17019
|
-
atrMeasurement.
|
|
17020
|
-
|
|
17084
|
+
atrMeasurement.add({
|
|
17085
|
+
navigateCallbackResult: navigate !== false,
|
|
17086
|
+
});
|
|
17087
|
+
atrMeasurement.event =
|
|
17088
|
+
atrMeasurement.end({ success: true }) ||
|
|
17089
|
+
atrMeasurement.event;
|
|
17021
17090
|
return navigate;
|
|
17022
17091
|
};
|
|
17023
17092
|
}
|
|
@@ -17039,9 +17108,13 @@ class StandardController {
|
|
|
17039
17108
|
result = nativeClient
|
|
17040
17109
|
.acquireTokenRedirect(request, atrMeasurement)
|
|
17041
17110
|
.catch((e) => {
|
|
17111
|
+
atrMeasurement.add({
|
|
17112
|
+
brokerErrorName: e.name,
|
|
17113
|
+
brokerErrorCode: e.errorCode,
|
|
17114
|
+
});
|
|
17042
17115
|
if (e instanceof NativeAuthError &&
|
|
17043
17116
|
isFatalNativeAuthError(e)) {
|
|
17044
|
-
this.platformAuthProvider = undefined; // If extension gets uninstalled during session prevent future requests from continuing to attempt
|
|
17117
|
+
this.platformAuthProvider = undefined; // If extension gets uninstalled during session prevent future requests from continuing to attempt platform broker calls
|
|
17045
17118
|
const redirectClient = this.createRedirectClient(correlationId);
|
|
17046
17119
|
return redirectClient.acquireToken(request);
|
|
17047
17120
|
}
|
|
@@ -17061,7 +17134,18 @@ class StandardController {
|
|
|
17061
17134
|
}
|
|
17062
17135
|
catch (e) {
|
|
17063
17136
|
this.browserStorage.resetRequestCache();
|
|
17064
|
-
|
|
17137
|
+
/*
|
|
17138
|
+
* Pre-redirect event completes before navigation occurs.
|
|
17139
|
+
* Timed out navigation needs to be instrumented separately as a post-redirect event.
|
|
17140
|
+
*/
|
|
17141
|
+
if (atrMeasurement.event.status === 2) {
|
|
17142
|
+
this.performanceClient
|
|
17143
|
+
.startMeasurement(PerformanceEvents.AcquireTokenRedirect, correlationId)
|
|
17144
|
+
.end({ success: false }, e);
|
|
17145
|
+
}
|
|
17146
|
+
else {
|
|
17147
|
+
atrMeasurement.end({ success: false }, e);
|
|
17148
|
+
}
|
|
17065
17149
|
if (isLoggedIn) {
|
|
17066
17150
|
this.eventHandler.emitEvent(EventType.ACQUIRE_TOKEN_FAILURE, exports.InteractionType.Redirect, null, e);
|
|
17067
17151
|
}
|
|
@@ -17107,6 +17191,9 @@ class StandardController {
|
|
|
17107
17191
|
let result;
|
|
17108
17192
|
const pkce = this.getPreGeneratedPkceCodes(correlationId);
|
|
17109
17193
|
if (this.canUsePlatformBroker(request)) {
|
|
17194
|
+
atPopupMeasurement.add({
|
|
17195
|
+
isPlatformBrokerRequest: true,
|
|
17196
|
+
});
|
|
17110
17197
|
result = this.acquireTokenNative({
|
|
17111
17198
|
...request,
|
|
17112
17199
|
correlationId,
|
|
@@ -17114,15 +17201,18 @@ class StandardController {
|
|
|
17114
17201
|
.then((response) => {
|
|
17115
17202
|
atPopupMeasurement.end({
|
|
17116
17203
|
success: true,
|
|
17117
|
-
isNativeBroker: true,
|
|
17118
17204
|
accountType: getAccountType(response.account),
|
|
17119
17205
|
});
|
|
17120
17206
|
return response;
|
|
17121
17207
|
})
|
|
17122
17208
|
.catch((e) => {
|
|
17209
|
+
atPopupMeasurement.add({
|
|
17210
|
+
brokerErrorName: e.name,
|
|
17211
|
+
brokerErrorCode: e.errorCode,
|
|
17212
|
+
});
|
|
17123
17213
|
if (e instanceof NativeAuthError &&
|
|
17124
17214
|
isFatalNativeAuthError(e)) {
|
|
17125
|
-
this.platformAuthProvider = undefined; // If extension gets uninstalled during session prevent future requests from continuing to attempt
|
|
17215
|
+
this.platformAuthProvider = undefined; // If extension gets uninstalled during session prevent future requests from continuing to continuing to attempt platform broker calls
|
|
17126
17216
|
const popupClient = this.createPopupClient(correlationId);
|
|
17127
17217
|
return popupClient.acquireToken(request, pkce);
|
|
17128
17218
|
}
|
|
@@ -17228,7 +17318,14 @@ class StandardController {
|
|
|
17228
17318
|
this.eventHandler.emitEvent(EventType.SSO_SILENT_START, exports.InteractionType.Silent, validRequest);
|
|
17229
17319
|
let result;
|
|
17230
17320
|
if (this.canUsePlatformBroker(validRequest)) {
|
|
17321
|
+
this.ssoSilentMeasurement?.add({
|
|
17322
|
+
isPlatformBrokerRequest: true,
|
|
17323
|
+
});
|
|
17231
17324
|
result = this.acquireTokenNative(validRequest, ApiId.ssoSilent).catch((e) => {
|
|
17325
|
+
this.ssoSilentMeasurement?.add({
|
|
17326
|
+
brokerErrorName: e.name,
|
|
17327
|
+
brokerErrorCode: e.errorCode,
|
|
17328
|
+
});
|
|
17232
17329
|
// If native token acquisition fails for availability reasons fallback to standard flow
|
|
17233
17330
|
if (e instanceof NativeAuthError && isFatalNativeAuthError(e)) {
|
|
17234
17331
|
this.platformAuthProvider = undefined; // If extension gets uninstalled during session prevent future requests from continuing to attempt
|
|
@@ -17247,7 +17344,6 @@ class StandardController {
|
|
|
17247
17344
|
this.eventHandler.emitEvent(EventType.SSO_SILENT_SUCCESS, exports.InteractionType.Silent, response);
|
|
17248
17345
|
this.ssoSilentMeasurement?.end({
|
|
17249
17346
|
success: true,
|
|
17250
|
-
isNativeBroker: response.fromNativeBroker,
|
|
17251
17347
|
accessTokenSize: response.accessToken.length,
|
|
17252
17348
|
idTokenSize: response.idToken.length,
|
|
17253
17349
|
accountType: getAccountType(response.account),
|
|
@@ -17301,7 +17397,6 @@ class StandardController {
|
|
|
17301
17397
|
this.hybridAuthCodeResponses.delete(hybridAuthCode);
|
|
17302
17398
|
atbcMeasurement.end({
|
|
17303
17399
|
success: true,
|
|
17304
|
-
isNativeBroker: result.fromNativeBroker,
|
|
17305
17400
|
accessTokenSize: result.accessToken.length,
|
|
17306
17401
|
idTokenSize: result.idToken.length,
|
|
17307
17402
|
accountType: getAccountType(result.account),
|
|
@@ -17326,6 +17421,9 @@ class StandardController {
|
|
|
17326
17421
|
}
|
|
17327
17422
|
else if (request.nativeAccountId) {
|
|
17328
17423
|
if (this.canUsePlatformBroker(request, request.nativeAccountId)) {
|
|
17424
|
+
atbcMeasurement.add({
|
|
17425
|
+
isPlatformBrokerRequest: true,
|
|
17426
|
+
});
|
|
17329
17427
|
const result = await this.acquireTokenNative({
|
|
17330
17428
|
...request,
|
|
17331
17429
|
correlationId,
|
|
@@ -17335,6 +17433,10 @@ class StandardController {
|
|
|
17335
17433
|
isFatalNativeAuthError(e)) {
|
|
17336
17434
|
this.platformAuthProvider = undefined; // If extension gets uninstalled during session prevent future requests from continuing to attempt
|
|
17337
17435
|
}
|
|
17436
|
+
atbcMeasurement.add({
|
|
17437
|
+
brokerErrorName: e.name,
|
|
17438
|
+
brokerErrorCode: e.errorCode,
|
|
17439
|
+
});
|
|
17338
17440
|
throw e;
|
|
17339
17441
|
});
|
|
17340
17442
|
atbcMeasurement.end({
|
|
@@ -17379,7 +17481,6 @@ class StandardController {
|
|
|
17379
17481
|
this.acquireTokenByCodeAsyncMeasurement?.end({
|
|
17380
17482
|
success: true,
|
|
17381
17483
|
fromCache: response.fromCache,
|
|
17382
|
-
isNativeBroker: response.fromNativeBroker,
|
|
17383
17484
|
});
|
|
17384
17485
|
return response;
|
|
17385
17486
|
})
|
|
@@ -17877,7 +17978,6 @@ class StandardController {
|
|
|
17877
17978
|
atsMeasurement.end({
|
|
17878
17979
|
success: true,
|
|
17879
17980
|
fromCache: result.fromCache,
|
|
17880
|
-
isNativeBroker: result.fromNativeBroker,
|
|
17881
17981
|
accessTokenSize: result.accessToken.length,
|
|
17882
17982
|
idTokenSize: result.idToken.length,
|
|
17883
17983
|
});
|
|
@@ -18010,7 +18110,6 @@ class StandardController {
|
|
|
18010
18110
|
if (request.correlationId) {
|
|
18011
18111
|
this.performanceClient.addFields({
|
|
18012
18112
|
fromCache: response.fromCache,
|
|
18013
|
-
isNativeBroker: response.fromNativeBroker,
|
|
18014
18113
|
}, request.correlationId);
|
|
18015
18114
|
}
|
|
18016
18115
|
return response;
|
|
@@ -18034,7 +18133,12 @@ class StandardController {
|
|
|
18034
18133
|
if (isPlatformAuthAllowed(this.config, this.logger, this.platformAuthProvider, silentRequest.authenticationScheme) &&
|
|
18035
18134
|
silentRequest.account.nativeAccountId) {
|
|
18036
18135
|
this.logger.verbose("acquireTokenSilent - attempting to acquire token from native platform");
|
|
18136
|
+
this.performanceClient.addFields({ isPlatformBrokerRequest: true }, silentRequest.correlationId);
|
|
18037
18137
|
return this.acquireTokenNative(silentRequest, ApiId.acquireTokenSilent_silentFlow, silentRequest.account.nativeAccountId, cacheLookupPolicy).catch(async (e) => {
|
|
18138
|
+
this.performanceClient.addFields({
|
|
18139
|
+
brokerErrorName: e.name,
|
|
18140
|
+
brokerErrorCode: e.errorCode,
|
|
18141
|
+
}, silentRequest.correlationId);
|
|
18038
18142
|
// If native token acquisition fails for availability reasons fallback to web flow
|
|
18039
18143
|
if (e instanceof NativeAuthError && isFatalNativeAuthError(e)) {
|
|
18040
18144
|
this.logger.verbose("acquireTokenSilent - native platform unavailable, falling back to web flow");
|