@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.
Files changed (279) hide show
  1. package/README.md +30 -0
  2. package/dist/app/IPublicClientApplication.mjs +1 -1
  3. package/dist/app/PublicClientApplication.mjs +1 -1
  4. package/dist/app/PublicClientNext.mjs +1 -1
  5. package/dist/broker/nativeBroker/NativeStatusCodes.mjs +2 -3
  6. package/dist/broker/nativeBroker/NativeStatusCodes.mjs.map +1 -1
  7. package/dist/broker/nativeBroker/PlatformAuthDOMHandler.mjs +1 -1
  8. package/dist/broker/nativeBroker/PlatformAuthExtensionHandler.mjs +1 -1
  9. package/dist/broker/nativeBroker/PlatformAuthProvider.mjs +1 -1
  10. package/dist/cache/AccountManager.d.ts.map +1 -1
  11. package/dist/cache/AccountManager.mjs +1 -6
  12. package/dist/cache/AccountManager.mjs.map +1 -1
  13. package/dist/cache/AsyncMemoryStorage.mjs +1 -1
  14. package/dist/cache/BrowserCacheManager.mjs +1 -1
  15. package/dist/cache/CacheHelpers.mjs +1 -1
  16. package/dist/cache/CacheKeys.mjs +1 -1
  17. package/dist/cache/CookieStorage.mjs +1 -1
  18. package/dist/cache/DatabaseStorage.mjs +1 -1
  19. package/dist/cache/EncryptedData.mjs +1 -1
  20. package/dist/cache/LocalStorage.mjs +1 -1
  21. package/dist/cache/MemoryStorage.mjs +1 -1
  22. package/dist/cache/SessionStorage.mjs +1 -1
  23. package/dist/cache/TokenCache.mjs +1 -1
  24. package/dist/config/Configuration.mjs +1 -1
  25. package/dist/controllers/ControllerFactory.mjs +1 -1
  26. package/dist/controllers/NestedAppAuthController.mjs +1 -1
  27. package/dist/controllers/StandardController.d.ts.map +1 -1
  28. package/dist/controllers/StandardController.mjs +60 -22
  29. package/dist/controllers/StandardController.mjs.map +1 -1
  30. package/dist/controllers/UnknownOperatingContextController.mjs +1 -1
  31. package/dist/crypto/BrowserCrypto.mjs +1 -1
  32. package/dist/crypto/CryptoOps.mjs +1 -1
  33. package/dist/crypto/PkceGenerator.mjs +1 -1
  34. package/dist/crypto/SignedHttpRequest.mjs +1 -1
  35. package/dist/custom-auth-path/app/PublicClientApplication.mjs +1 -1
  36. package/dist/custom-auth-path/broker/nativeBroker/NativeStatusCodes.mjs +2 -3
  37. package/dist/custom-auth-path/broker/nativeBroker/NativeStatusCodes.mjs.map +1 -1
  38. package/dist/custom-auth-path/broker/nativeBroker/PlatformAuthDOMHandler.mjs +1 -1
  39. package/dist/custom-auth-path/broker/nativeBroker/PlatformAuthExtensionHandler.mjs +1 -1
  40. package/dist/custom-auth-path/broker/nativeBroker/PlatformAuthProvider.mjs +1 -1
  41. package/dist/custom-auth-path/cache/AccountManager.d.ts.map +1 -1
  42. package/dist/custom-auth-path/cache/AccountManager.mjs +1 -6
  43. package/dist/custom-auth-path/cache/AccountManager.mjs.map +1 -1
  44. package/dist/custom-auth-path/cache/AsyncMemoryStorage.mjs +1 -1
  45. package/dist/custom-auth-path/cache/BrowserCacheManager.mjs +1 -1
  46. package/dist/custom-auth-path/cache/CacheHelpers.mjs +1 -1
  47. package/dist/custom-auth-path/cache/CacheKeys.mjs +1 -1
  48. package/dist/custom-auth-path/cache/CookieStorage.mjs +1 -1
  49. package/dist/custom-auth-path/cache/DatabaseStorage.mjs +1 -1
  50. package/dist/custom-auth-path/cache/EncryptedData.mjs +1 -1
  51. package/dist/custom-auth-path/cache/LocalStorage.mjs +1 -1
  52. package/dist/custom-auth-path/cache/MemoryStorage.mjs +1 -1
  53. package/dist/custom-auth-path/cache/SessionStorage.mjs +1 -1
  54. package/dist/custom-auth-path/cache/TokenCache.mjs +1 -1
  55. package/dist/custom-auth-path/config/Configuration.mjs +1 -1
  56. package/dist/custom-auth-path/controllers/ControllerFactory.mjs +1 -1
  57. package/dist/custom-auth-path/controllers/StandardController.d.ts.map +1 -1
  58. package/dist/custom-auth-path/controllers/StandardController.mjs +60 -22
  59. package/dist/custom-auth-path/controllers/StandardController.mjs.map +1 -1
  60. package/dist/custom-auth-path/crypto/BrowserCrypto.mjs +1 -1
  61. package/dist/custom-auth-path/crypto/CryptoOps.mjs +1 -1
  62. package/dist/custom-auth-path/crypto/PkceGenerator.mjs +1 -1
  63. package/dist/custom-auth-path/custom_auth/CustomAuthConstants.d.ts +1 -1
  64. package/dist/custom-auth-path/custom_auth/CustomAuthConstants.mjs +1 -1
  65. package/dist/custom-auth-path/custom_auth/CustomAuthPublicClientApplication.mjs +1 -1
  66. package/dist/custom-auth-path/custom_auth/controller/CustomAuthStandardController.mjs +1 -1
  67. package/dist/custom-auth-path/custom_auth/core/CustomAuthAuthority.mjs +1 -1
  68. package/dist/custom-auth-path/custom_auth/core/auth_flow/AuthFlowErrorBase.mjs +1 -1
  69. package/dist/custom-auth-path/custom_auth/core/auth_flow/AuthFlowResultBase.mjs +1 -1
  70. package/dist/custom-auth-path/custom_auth/core/auth_flow/AuthFlowState.mjs +1 -1
  71. package/dist/custom-auth-path/custom_auth/core/error/CustomAuthApiError.mjs +1 -1
  72. package/dist/custom-auth-path/custom_auth/core/error/CustomAuthError.mjs +1 -1
  73. package/dist/custom-auth-path/custom_auth/core/error/HttpError.mjs +1 -1
  74. package/dist/custom-auth-path/custom_auth/core/error/HttpErrorCodes.mjs +1 -1
  75. package/dist/custom-auth-path/custom_auth/core/error/InvalidArgumentError.mjs +1 -1
  76. package/dist/custom-auth-path/custom_auth/core/error/InvalidConfigurationError.mjs +1 -1
  77. package/dist/custom-auth-path/custom_auth/core/error/InvalidConfigurationErrorCodes.mjs +1 -1
  78. package/dist/custom-auth-path/custom_auth/core/error/MethodNotImplementedError.mjs +1 -1
  79. package/dist/custom-auth-path/custom_auth/core/error/MsalCustomAuthError.mjs +1 -1
  80. package/dist/custom-auth-path/custom_auth/core/error/NoCachedAccountFoundError.mjs +1 -1
  81. package/dist/custom-auth-path/custom_auth/core/error/ParsedUrlError.mjs +1 -1
  82. package/dist/custom-auth-path/custom_auth/core/error/ParsedUrlErrorCodes.mjs +1 -1
  83. package/dist/custom-auth-path/custom_auth/core/error/UnexpectedError.mjs +1 -1
  84. package/dist/custom-auth-path/custom_auth/core/error/UnsupportedEnvironmentError.mjs +1 -1
  85. package/dist/custom-auth-path/custom_auth/core/error/UserAccountAttributeError.mjs +1 -1
  86. package/dist/custom-auth-path/custom_auth/core/error/UserAlreadySignedInError.mjs +1 -1
  87. package/dist/custom-auth-path/custom_auth/core/interaction_client/CustomAuthInteractionClientBase.mjs +1 -1
  88. package/dist/custom-auth-path/custom_auth/core/interaction_client/CustomAuthInterationClientFactory.mjs +1 -1
  89. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/BaseApiClient.mjs +1 -1
  90. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/CustomAuthApiClient.mjs +1 -1
  91. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/CustomAuthApiEndpoint.mjs +1 -1
  92. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/ResetPasswordApiClient.mjs +1 -1
  93. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/SignInApiClient.mjs +1 -1
  94. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/SignupApiClient.mjs +1 -1
  95. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiErrorCodes.mjs +1 -1
  96. package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.mjs +1 -1
  97. package/dist/custom-auth-path/custom_auth/core/network_client/http_client/FetchHttpClient.mjs +1 -1
  98. package/dist/custom-auth-path/custom_auth/core/network_client/http_client/IHttpClient.mjs +1 -1
  99. package/dist/custom-auth-path/custom_auth/core/telemetry/PublicApiId.mjs +1 -1
  100. package/dist/custom-auth-path/custom_auth/core/utils/ArgumentValidator.mjs +1 -1
  101. package/dist/custom-auth-path/custom_auth/core/utils/UrlUtils.mjs +1 -1
  102. package/dist/custom-auth-path/custom_auth/get_account/auth_flow/CustomAuthAccountData.mjs +1 -1
  103. package/dist/custom-auth-path/custom_auth/get_account/auth_flow/error_type/GetAccountError.mjs +1 -1
  104. package/dist/custom-auth-path/custom_auth/get_account/auth_flow/result/GetAccessTokenResult.mjs +1 -1
  105. package/dist/custom-auth-path/custom_auth/get_account/auth_flow/result/GetAccountResult.mjs +1 -1
  106. package/dist/custom-auth-path/custom_auth/get_account/auth_flow/result/SignOutResult.mjs +1 -1
  107. package/dist/custom-auth-path/custom_auth/get_account/auth_flow/state/GetAccessTokenState.mjs +1 -1
  108. package/dist/custom-auth-path/custom_auth/get_account/auth_flow/state/GetAccountState.mjs +1 -1
  109. package/dist/custom-auth-path/custom_auth/get_account/auth_flow/state/SignOutState.mjs +1 -1
  110. package/dist/custom-auth-path/custom_auth/get_account/interaction_client/CustomAuthSilentCacheClient.mjs +1 -1
  111. package/dist/custom-auth-path/custom_auth/index.mjs +1 -1
  112. package/dist/custom-auth-path/custom_auth/operating_context/CustomAuthOperatingContext.mjs +1 -1
  113. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/error_type/ResetPasswordError.mjs +1 -1
  114. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/result/ResetPasswordResendCodeResult.mjs +1 -1
  115. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/result/ResetPasswordStartResult.mjs +1 -1
  116. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/result/ResetPasswordSubmitCodeResult.mjs +1 -1
  117. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/result/ResetPasswordSubmitPasswordResult.mjs +1 -1
  118. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordCodeRequiredState.mjs +1 -1
  119. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordCompletedState.mjs +1 -1
  120. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordFailedState.mjs +1 -1
  121. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordPasswordRequiredState.mjs +1 -1
  122. package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordState.mjs +1 -1
  123. package/dist/custom-auth-path/custom_auth/reset_password/interaction_client/ResetPasswordClient.mjs +1 -1
  124. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/SignInScenario.mjs +1 -1
  125. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/error_type/SignInError.mjs +1 -1
  126. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInResendCodeResult.mjs +1 -1
  127. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInResult.mjs +1 -1
  128. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInSubmitCodeResult.mjs +1 -1
  129. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInSubmitCredentialResult.mjs +1 -1
  130. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInSubmitPasswordResult.mjs +1 -1
  131. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInCodeRequiredState.mjs +1 -1
  132. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInCompletedState.mjs +1 -1
  133. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInContinuationState.mjs +1 -1
  134. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInFailedState.mjs +1 -1
  135. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInPasswordRequiredState.mjs +1 -1
  136. package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInState.mjs +1 -1
  137. package/dist/custom-auth-path/custom_auth/sign_in/interaction_client/SignInClient.mjs +1 -1
  138. package/dist/custom-auth-path/custom_auth/sign_in/interaction_client/result/SignInActionResult.mjs +1 -1
  139. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/error_type/SignUpError.mjs +1 -1
  140. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpResendCodeResult.mjs +1 -1
  141. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpResult.mjs +1 -1
  142. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpSubmitAttributesResult.mjs +1 -1
  143. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpSubmitCodeResult.mjs +1 -1
  144. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpSubmitPasswordResult.mjs +1 -1
  145. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpAttributesRequiredState.mjs +1 -1
  146. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpCodeRequiredState.mjs +1 -1
  147. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpCompletedState.mjs +1 -1
  148. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpFailedState.mjs +1 -1
  149. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpPasswordRequiredState.mjs +1 -1
  150. package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpState.mjs +1 -1
  151. package/dist/custom-auth-path/custom_auth/sign_up/interaction_client/SignUpClient.mjs +1 -1
  152. package/dist/custom-auth-path/custom_auth/sign_up/interaction_client/result/SignUpActionResult.mjs +1 -1
  153. package/dist/custom-auth-path/encode/Base64Decode.mjs +1 -1
  154. package/dist/custom-auth-path/encode/Base64Encode.mjs +1 -1
  155. package/dist/custom-auth-path/error/BrowserAuthError.mjs +1 -1
  156. package/dist/custom-auth-path/error/BrowserAuthErrorCodes.mjs +1 -1
  157. package/dist/custom-auth-path/error/BrowserConfigurationAuthError.mjs +1 -1
  158. package/dist/custom-auth-path/error/BrowserConfigurationAuthErrorCodes.mjs +1 -1
  159. package/dist/custom-auth-path/error/NativeAuthError.d.ts.map +1 -1
  160. package/dist/custom-auth-path/error/NativeAuthError.mjs +3 -4
  161. package/dist/custom-auth-path/error/NativeAuthError.mjs.map +1 -1
  162. package/dist/custom-auth-path/error/NativeAuthErrorCodes.mjs +1 -1
  163. package/dist/custom-auth-path/event/EventHandler.mjs +1 -1
  164. package/dist/custom-auth-path/event/EventType.mjs +1 -1
  165. package/dist/custom-auth-path/interaction_client/BaseInteractionClient.mjs +1 -1
  166. package/dist/custom-auth-path/interaction_client/HybridSpaAuthorizationCodeClient.mjs +1 -1
  167. package/dist/custom-auth-path/interaction_client/PlatformAuthInteractionClient.d.ts.map +1 -1
  168. package/dist/custom-auth-path/interaction_client/PlatformAuthInteractionClient.mjs +15 -6
  169. package/dist/custom-auth-path/interaction_client/PlatformAuthInteractionClient.mjs.map +1 -1
  170. package/dist/custom-auth-path/interaction_client/PopupClient.mjs +1 -1
  171. package/dist/custom-auth-path/interaction_client/RedirectClient.mjs +4 -4
  172. package/dist/custom-auth-path/interaction_client/RedirectClient.mjs.map +1 -1
  173. package/dist/custom-auth-path/interaction_client/SilentAuthCodeClient.mjs +1 -1
  174. package/dist/custom-auth-path/interaction_client/SilentCacheClient.mjs +1 -1
  175. package/dist/custom-auth-path/interaction_client/SilentIframeClient.mjs +1 -1
  176. package/dist/custom-auth-path/interaction_client/SilentRefreshClient.mjs +1 -1
  177. package/dist/custom-auth-path/interaction_client/StandardInteractionClient.mjs +1 -1
  178. package/dist/custom-auth-path/interaction_handler/InteractionHandler.mjs +1 -1
  179. package/dist/custom-auth-path/interaction_handler/SilentHandler.mjs +1 -1
  180. package/dist/custom-auth-path/navigation/NavigationClient.mjs +1 -1
  181. package/dist/custom-auth-path/network/FetchClient.mjs +1 -1
  182. package/dist/custom-auth-path/operatingcontext/BaseOperatingContext.mjs +1 -1
  183. package/dist/custom-auth-path/operatingcontext/StandardOperatingContext.mjs +1 -1
  184. package/dist/custom-auth-path/packageMetadata.d.ts +1 -1
  185. package/dist/custom-auth-path/packageMetadata.mjs +2 -2
  186. package/dist/custom-auth-path/protocol/Authorize.d.ts.map +1 -1
  187. package/dist/custom-auth-path/protocol/Authorize.mjs +5 -1
  188. package/dist/custom-auth-path/protocol/Authorize.mjs.map +1 -1
  189. package/dist/custom-auth-path/request/RequestHelpers.mjs +1 -1
  190. package/dist/custom-auth-path/response/ResponseHandler.mjs +1 -1
  191. package/dist/custom-auth-path/utils/BrowserConstants.mjs +1 -1
  192. package/dist/custom-auth-path/utils/BrowserProtocolUtils.mjs +1 -1
  193. package/dist/custom-auth-path/utils/BrowserUtils.mjs +1 -1
  194. package/dist/custom-auth-path/utils/Helpers.mjs +1 -1
  195. package/dist/custom-auth-path/utils/MsalFrameStatsUtils.mjs +1 -1
  196. package/dist/custom_auth/CustomAuthConstants.d.ts +1 -1
  197. package/dist/encode/Base64Decode.mjs +1 -1
  198. package/dist/encode/Base64Encode.mjs +1 -1
  199. package/dist/error/BrowserAuthError.mjs +1 -1
  200. package/dist/error/BrowserAuthErrorCodes.mjs +1 -1
  201. package/dist/error/BrowserConfigurationAuthError.mjs +1 -1
  202. package/dist/error/BrowserConfigurationAuthErrorCodes.mjs +1 -1
  203. package/dist/error/NativeAuthError.d.ts.map +1 -1
  204. package/dist/error/NativeAuthError.mjs +3 -4
  205. package/dist/error/NativeAuthError.mjs.map +1 -1
  206. package/dist/error/NativeAuthErrorCodes.mjs +1 -1
  207. package/dist/error/NestedAppAuthError.mjs +1 -1
  208. package/dist/event/EventHandler.mjs +1 -1
  209. package/dist/event/EventMessage.mjs +1 -1
  210. package/dist/event/EventType.mjs +1 -1
  211. package/dist/index.mjs +1 -1
  212. package/dist/interaction_client/BaseInteractionClient.mjs +1 -1
  213. package/dist/interaction_client/HybridSpaAuthorizationCodeClient.mjs +1 -1
  214. package/dist/interaction_client/PlatformAuthInteractionClient.d.ts.map +1 -1
  215. package/dist/interaction_client/PlatformAuthInteractionClient.mjs +15 -6
  216. package/dist/interaction_client/PlatformAuthInteractionClient.mjs.map +1 -1
  217. package/dist/interaction_client/PopupClient.mjs +1 -1
  218. package/dist/interaction_client/RedirectClient.mjs +4 -4
  219. package/dist/interaction_client/RedirectClient.mjs.map +1 -1
  220. package/dist/interaction_client/SilentAuthCodeClient.mjs +1 -1
  221. package/dist/interaction_client/SilentCacheClient.mjs +1 -1
  222. package/dist/interaction_client/SilentIframeClient.mjs +1 -1
  223. package/dist/interaction_client/SilentRefreshClient.mjs +1 -1
  224. package/dist/interaction_client/StandardInteractionClient.mjs +1 -1
  225. package/dist/interaction_handler/InteractionHandler.mjs +1 -1
  226. package/dist/interaction_handler/SilentHandler.mjs +1 -1
  227. package/dist/naa/BridgeError.mjs +1 -1
  228. package/dist/naa/BridgeProxy.mjs +1 -1
  229. package/dist/naa/BridgeStatusCode.mjs +1 -1
  230. package/dist/naa/mapping/NestedAppAuthAdapter.mjs +1 -1
  231. package/dist/navigation/NavigationClient.mjs +1 -1
  232. package/dist/network/FetchClient.mjs +1 -1
  233. package/dist/operatingcontext/BaseOperatingContext.mjs +1 -1
  234. package/dist/operatingcontext/NestedAppOperatingContext.mjs +1 -1
  235. package/dist/operatingcontext/StandardOperatingContext.mjs +1 -1
  236. package/dist/operatingcontext/UnknownOperatingContext.mjs +1 -1
  237. package/dist/packageMetadata.d.ts +1 -1
  238. package/dist/packageMetadata.mjs +2 -2
  239. package/dist/protocol/Authorize.d.ts.map +1 -1
  240. package/dist/protocol/Authorize.mjs +5 -1
  241. package/dist/protocol/Authorize.mjs.map +1 -1
  242. package/dist/request/RequestHelpers.mjs +1 -1
  243. package/dist/response/ResponseHandler.mjs +1 -1
  244. package/dist/telemetry/BrowserPerformanceClient.mjs +1 -1
  245. package/dist/telemetry/BrowserPerformanceMeasurement.mjs +1 -1
  246. package/dist/utils/BrowserConstants.mjs +1 -1
  247. package/dist/utils/BrowserProtocolUtils.mjs +1 -1
  248. package/dist/utils/BrowserUtils.mjs +1 -1
  249. package/dist/utils/Helpers.mjs +1 -1
  250. package/dist/utils/MsalFrameStatsUtils.mjs +1 -1
  251. package/lib/custom-auth-path/msal-custom-auth.cjs +206 -102
  252. package/lib/custom-auth-path/msal-custom-auth.cjs.map +1 -1
  253. package/lib/custom-auth-path/types/cache/AccountManager.d.ts.map +1 -1
  254. package/lib/custom-auth-path/types/controllers/StandardController.d.ts.map +1 -1
  255. package/lib/custom-auth-path/types/custom_auth/CustomAuthConstants.d.ts +1 -1
  256. package/lib/custom-auth-path/types/error/NativeAuthError.d.ts.map +1 -1
  257. package/lib/custom-auth-path/types/interaction_client/PlatformAuthInteractionClient.d.ts.map +1 -1
  258. package/lib/custom-auth-path/types/packageMetadata.d.ts +1 -1
  259. package/lib/custom-auth-path/types/protocol/Authorize.d.ts.map +1 -1
  260. package/lib/msal-browser.cjs +208 -104
  261. package/lib/msal-browser.cjs.map +1 -1
  262. package/lib/msal-browser.js +208 -104
  263. package/lib/msal-browser.js.map +1 -1
  264. package/lib/msal-browser.min.js +66 -66
  265. package/lib/types/cache/AccountManager.d.ts.map +1 -1
  266. package/lib/types/controllers/StandardController.d.ts.map +1 -1
  267. package/lib/types/custom_auth/CustomAuthConstants.d.ts +1 -1
  268. package/lib/types/error/NativeAuthError.d.ts.map +1 -1
  269. package/lib/types/interaction_client/PlatformAuthInteractionClient.d.ts.map +1 -1
  270. package/lib/types/packageMetadata.d.ts +1 -1
  271. package/lib/types/protocol/Authorize.d.ts.map +1 -1
  272. package/package.json +2 -2
  273. package/src/cache/AccountManager.ts +0 -6
  274. package/src/controllers/StandardController.ts +69 -20
  275. package/src/error/NativeAuthError.ts +1 -2
  276. package/src/interaction_client/PlatformAuthInteractionClient.ts +17 -5
  277. package/src/interaction_client/RedirectClient.ts +2 -2
  278. package/src/packageMetadata.ts +1 -1
  279. package/src/protocol/Authorize.ts +8 -0
@@ -1,4 +1,4 @@
1
- /*! @azure/msal-browser v4.19.0 2025-08-05 */
1
+ /*! @azure/msal-browser v4.21.0 2025-08-19 */
2
2
  'use strict';
3
3
  (function (global, factory) {
4
4
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
@@ -6,7 +6,7 @@
6
6
  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.msal = {}));
7
7
  })(this, (function (exports) { 'use strict';
8
8
 
9
- /*! @azure/msal-common v15.10.0 2025-08-05 */
9
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
10
10
  /*
11
11
  * Copyright (c) Microsoft Corporation. All rights reserved.
12
12
  * Licensed under the MIT License.
@@ -283,7 +283,7 @@
283
283
  // Token renewal offset default in seconds
284
284
  const DEFAULT_TOKEN_RENEWAL_OFFSET_SEC = 300;
285
285
 
286
- /*! @azure/msal-common v15.10.0 2025-08-05 */
286
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
287
287
  /*
288
288
  * Copyright (c) Microsoft Corporation. All rights reserved.
289
289
  * Licensed under the MIT License.
@@ -300,7 +300,7 @@
300
300
  unexpectedError: unexpectedError
301
301
  });
302
302
 
303
- /*! @azure/msal-common v15.10.0 2025-08-05 */
303
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
304
304
 
305
305
  /*
306
306
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -349,7 +349,7 @@
349
349
  : AuthErrorMessages[code]);
350
350
  }
351
351
 
352
- /*! @azure/msal-common v15.10.0 2025-08-05 */
352
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
353
353
  /*
354
354
  * Copyright (c) Microsoft Corporation. All rights reserved.
355
355
  * Licensed under the MIT License.
@@ -447,7 +447,7 @@
447
447
  userTimeoutReached: userTimeoutReached
448
448
  });
449
449
 
450
- /*! @azure/msal-common v15.10.0 2025-08-05 */
450
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
451
451
 
452
452
  /*
453
453
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -699,7 +699,7 @@
699
699
  return new ClientAuthError(errorCode, additionalMessage);
700
700
  }
701
701
 
702
- /*! @azure/msal-common v15.10.0 2025-08-05 */
702
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
703
703
 
704
704
  /*
705
705
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -738,7 +738,7 @@
738
738
  },
739
739
  };
740
740
 
741
- /*! @azure/msal-common v15.10.0 2025-08-05 */
741
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
742
742
 
743
743
  /*
744
744
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -929,12 +929,12 @@
929
929
  }
930
930
  }
931
931
 
932
- /*! @azure/msal-common v15.10.0 2025-08-05 */
932
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
933
933
  /* eslint-disable header/header */
934
934
  const name$1 = "@azure/msal-common";
935
- const version$1 = "15.10.0";
935
+ const version$1 = "15.12.0";
936
936
 
937
- /*! @azure/msal-common v15.10.0 2025-08-05 */
937
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
938
938
  /*
939
939
  * Copyright (c) Microsoft Corporation. All rights reserved.
940
940
  * Licensed under the MIT License.
@@ -954,7 +954,7 @@
954
954
  AzureUsGovernment: "https://login.microsoftonline.us",
955
955
  };
956
956
 
957
- /*! @azure/msal-common v15.10.0 2025-08-05 */
957
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
958
958
  /*
959
959
  * Copyright (c) Microsoft Corporation. All rights reserved.
960
960
  * Licensed under the MIT License.
@@ -1010,7 +1010,7 @@
1010
1010
  urlParseError: urlParseError
1011
1011
  });
1012
1012
 
1013
- /*! @azure/msal-common v15.10.0 2025-08-05 */
1013
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
1014
1014
 
1015
1015
  /*
1016
1016
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -1153,7 +1153,7 @@
1153
1153
  return new ClientConfigurationError(errorCode);
1154
1154
  }
1155
1155
 
1156
- /*! @azure/msal-common v15.10.0 2025-08-05 */
1156
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
1157
1157
  /*
1158
1158
  * Copyright (c) Microsoft Corporation. All rights reserved.
1159
1159
  * Licensed under the MIT License.
@@ -1250,7 +1250,7 @@
1250
1250
  }
1251
1251
  }
1252
1252
 
1253
- /*! @azure/msal-common v15.10.0 2025-08-05 */
1253
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
1254
1254
 
1255
1255
  /*
1256
1256
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -1294,7 +1294,11 @@
1294
1294
  * @returns
1295
1295
  */
1296
1296
  static createSearchScopes(inputScopeString) {
1297
- const scopeSet = new ScopeSet(inputScopeString);
1297
+ // Handle empty scopes by using default OIDC scopes for cache lookup
1298
+ const scopesToUse = inputScopeString && inputScopeString.length > 0
1299
+ ? inputScopeString
1300
+ : [...OIDC_DEFAULT_SCOPES];
1301
+ const scopeSet = new ScopeSet(scopesToUse);
1298
1302
  if (!scopeSet.containsOnlyOIDCScopes()) {
1299
1303
  scopeSet.removeOIDCScopes();
1300
1304
  }
@@ -1441,7 +1445,7 @@
1441
1445
  }
1442
1446
  }
1443
1447
 
1444
- /*! @azure/msal-common v15.10.0 2025-08-05 */
1448
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
1445
1449
  /*
1446
1450
  * Copyright (c) Microsoft Corporation. All rights reserved.
1447
1451
  * Licensed under the MIT License.
@@ -1523,7 +1527,7 @@
1523
1527
  return updatedAccountInfo;
1524
1528
  }
1525
1529
 
1526
- /*! @azure/msal-common v15.10.0 2025-08-05 */
1530
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
1527
1531
 
1528
1532
  /*
1529
1533
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -1584,12 +1588,34 @@
1584
1588
  }
1585
1589
  }
1586
1590
 
1587
- /*! @azure/msal-common v15.10.0 2025-08-05 */
1591
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
1588
1592
 
1589
1593
  /*
1590
1594
  * Copyright (c) Microsoft Corporation. All rights reserved.
1591
1595
  * Licensed under the MIT License.
1592
1596
  */
1597
+ /**
1598
+ * Canonicalizes a URL by making it lowercase and ensuring it ends with /
1599
+ * Inlined version of UrlString.canonicalizeUri to avoid circular dependency
1600
+ * @param url - URL to canonicalize
1601
+ * @returns Canonicalized URL
1602
+ */
1603
+ function canonicalizeUrl(url) {
1604
+ if (!url) {
1605
+ return url;
1606
+ }
1607
+ let lowerCaseUrl = url.toLowerCase();
1608
+ if (StringUtils.endsWith(lowerCaseUrl, "?")) {
1609
+ lowerCaseUrl = lowerCaseUrl.slice(0, -1);
1610
+ }
1611
+ else if (StringUtils.endsWith(lowerCaseUrl, "?/")) {
1612
+ lowerCaseUrl = lowerCaseUrl.slice(0, -2);
1613
+ }
1614
+ if (!StringUtils.endsWith(lowerCaseUrl, "/")) {
1615
+ lowerCaseUrl += "/";
1616
+ }
1617
+ return lowerCaseUrl;
1618
+ }
1593
1619
  /**
1594
1620
  * Parses hash string from given string. Returns empty string if no hash symbol is found.
1595
1621
  * @param hashString
@@ -1647,9 +1673,38 @@
1647
1673
  }
1648
1674
  });
1649
1675
  return queryParameterArray.join("&");
1676
+ }
1677
+ /**
1678
+ * Normalizes URLs for comparison by removing hash, canonicalizing,
1679
+ * and ensuring consistent URL encoding in query parameters.
1680
+ * This fixes redirect loops when URLs contain encoded characters like apostrophes (%27).
1681
+ * @param url - URL to normalize
1682
+ * @returns Normalized URL string for comparison
1683
+ */
1684
+ function normalizeUrlForComparison(url) {
1685
+ if (!url) {
1686
+ return url;
1687
+ }
1688
+ // Remove hash first
1689
+ const urlWithoutHash = url.split("#")[0];
1690
+ try {
1691
+ // Parse the URL to handle encoding consistently
1692
+ const urlObj = new URL(urlWithoutHash);
1693
+ /*
1694
+ * Reconstruct the URL with properly decoded query parameters
1695
+ * This ensures that %27 and ' are treated as equivalent
1696
+ */
1697
+ const normalizedUrl = urlObj.origin + urlObj.pathname + urlObj.search;
1698
+ // Apply canonicalization logic inline to avoid circular dependency
1699
+ return canonicalizeUrl(normalizedUrl);
1700
+ }
1701
+ catch (e) {
1702
+ // Fallback to original logic if URL parsing fails
1703
+ return canonicalizeUrl(urlWithoutHash);
1704
+ }
1650
1705
  }
1651
1706
 
1652
- /*! @azure/msal-common v15.10.0 2025-08-05 */
1707
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
1653
1708
 
1654
1709
  /*
1655
1710
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -1813,7 +1868,7 @@
1813
1868
  }
1814
1869
  }
1815
1870
 
1816
- /*! @azure/msal-common v15.10.0 2025-08-05 */
1871
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
1817
1872
 
1818
1873
  /*
1819
1874
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -1952,7 +2007,7 @@
1952
2007
  return null;
1953
2008
  }
1954
2009
 
1955
- /*! @azure/msal-common v15.10.0 2025-08-05 */
2010
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
1956
2011
  /*
1957
2012
  * Copyright (c) Microsoft Corporation. All rights reserved.
1958
2013
  * Licensed under the MIT License.
@@ -1960,7 +2015,7 @@
1960
2015
  const cacheQuotaExceeded = "cache_quota_exceeded";
1961
2016
  const cacheErrorUnknown = "cache_error_unknown";
1962
2017
 
1963
- /*! @azure/msal-common v15.10.0 2025-08-05 */
2018
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
1964
2019
 
1965
2020
  /*
1966
2021
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -2005,7 +2060,7 @@
2005
2060
  }
2006
2061
  }
2007
2062
 
2008
- /*! @azure/msal-common v15.10.0 2025-08-05 */
2063
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
2009
2064
 
2010
2065
  /*
2011
2066
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -2035,6 +2090,11 @@
2035
2090
  * Gets first tenanted AccountInfo object found based on provided filters
2036
2091
  */
2037
2092
  getAccountInfoFilteredBy(accountFilter, correlationId) {
2093
+ if (Object.keys(accountFilter).length === 0 ||
2094
+ Object.values(accountFilter).every((value) => !value)) {
2095
+ this.commonLogger.warning("getAccountInfoFilteredBy: Account filter is empty or invalid, returning null");
2096
+ return null;
2097
+ }
2038
2098
  const allAccounts = this.getAllAccounts(accountFilter, correlationId);
2039
2099
  if (allAccounts.length > 1) {
2040
2100
  // If one or more accounts are found, prioritize accounts that have an ID token
@@ -3109,7 +3169,7 @@
3109
3169
  }
3110
3170
  }
3111
3171
 
3112
- /*! @azure/msal-common v15.10.0 2025-08-05 */
3172
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
3113
3173
  /*
3114
3174
  * Copyright (c) Microsoft Corporation. All rights reserved.
3115
3175
  * Licensed under the MIT License.
@@ -3133,7 +3193,7 @@
3133
3193
  EAR: "EAR",
3134
3194
  };
3135
3195
 
3136
- /*! @azure/msal-common v15.10.0 2025-08-05 */
3196
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
3137
3197
  /*
3138
3198
  * Copyright (c) Microsoft Corporation. All rights reserved.
3139
3199
  * Licensed under the MIT License.
@@ -3655,7 +3715,7 @@
3655
3715
  "upgradedCacheCount",
3656
3716
  ]);
3657
3717
 
3658
- /*! @azure/msal-common v15.10.0 2025-08-05 */
3718
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
3659
3719
 
3660
3720
  /*
3661
3721
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -3734,7 +3794,7 @@
3734
3794
  }
3735
3795
  }
3736
3796
 
3737
- /*! @azure/msal-common v15.10.0 2025-08-05 */
3797
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
3738
3798
 
3739
3799
  /*
3740
3800
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -3834,7 +3894,7 @@
3834
3894
  return (config.authOptions.authority.options.protocolMode === ProtocolMode.OIDC);
3835
3895
  }
3836
3896
 
3837
- /*! @azure/msal-common v15.10.0 2025-08-05 */
3897
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
3838
3898
  /*
3839
3899
  * Copyright (c) Microsoft Corporation. All rights reserved.
3840
3900
  * Licensed under the MIT License.
@@ -3844,7 +3904,7 @@
3844
3904
  UPN: "UPN",
3845
3905
  };
3846
3906
 
3847
- /*! @azure/msal-common v15.10.0 2025-08-05 */
3907
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
3848
3908
 
3849
3909
  /*
3850
3910
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -3884,7 +3944,7 @@
3884
3944
  };
3885
3945
  }
3886
3946
 
3887
- /*! @azure/msal-common v15.10.0 2025-08-05 */
3947
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
3888
3948
  /*
3889
3949
  * Copyright (c) Microsoft Corporation. All rights reserved.
3890
3950
  * Licensed under the MIT License.
@@ -3934,7 +3994,7 @@
3934
3994
  const EAR_JWK = "ear_jwk";
3935
3995
  const EAR_JWE_CRYPTO = "ear_jwe_crypto";
3936
3996
 
3937
- /*! @azure/msal-common v15.10.0 2025-08-05 */
3997
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
3938
3998
 
3939
3999
  /*
3940
4000
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -4314,7 +4374,7 @@
4314
4374
  });
4315
4375
  }
4316
4376
 
4317
- /*! @azure/msal-common v15.10.0 2025-08-05 */
4377
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
4318
4378
  /*
4319
4379
  * Copyright (c) Microsoft Corporation. All rights reserved.
4320
4380
  * Licensed under the MIT License.
@@ -4329,7 +4389,7 @@
4329
4389
  Ciam: 3,
4330
4390
  };
4331
4391
 
4332
- /*! @azure/msal-common v15.10.0 2025-08-05 */
4392
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
4333
4393
  /*
4334
4394
  * Copyright (c) Microsoft Corporation. All rights reserved.
4335
4395
  * Licensed under the MIT License.
@@ -4341,7 +4401,7 @@
4341
4401
  response.hasOwnProperty("jwks_uri"));
4342
4402
  }
4343
4403
 
4344
- /*! @azure/msal-common v15.10.0 2025-08-05 */
4404
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
4345
4405
  /*
4346
4406
  * Copyright (c) Microsoft Corporation. All rights reserved.
4347
4407
  * Licensed under the MIT License.
@@ -4351,7 +4411,7 @@
4351
4411
  response.hasOwnProperty("metadata"));
4352
4412
  }
4353
4413
 
4354
- /*! @azure/msal-common v15.10.0 2025-08-05 */
4414
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
4355
4415
  /*
4356
4416
  * Copyright (c) Microsoft Corporation. All rights reserved.
4357
4417
  * Licensed under the MIT License.
@@ -4361,7 +4421,7 @@
4361
4421
  response.hasOwnProperty("error_description"));
4362
4422
  }
4363
4423
 
4364
- /*! @azure/msal-common v15.10.0 2025-08-05 */
4424
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
4365
4425
  /*
4366
4426
  * Copyright (c) Microsoft Corporation. All rights reserved.
4367
4427
  * Licensed under the MIT License.
@@ -4457,7 +4517,7 @@
4457
4517
  };
4458
4518
  };
4459
4519
 
4460
- /*! @azure/msal-common v15.10.0 2025-08-05 */
4520
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
4461
4521
 
4462
4522
  /*
4463
4523
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -4563,7 +4623,7 @@
4563
4623
  },
4564
4624
  };
4565
4625
 
4566
- /*! @azure/msal-common v15.10.0 2025-08-05 */
4626
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
4567
4627
  /*
4568
4628
  * Copyright (c) Microsoft Corporation. All rights reserved.
4569
4629
  * Licensed under the MIT License.
@@ -4628,7 +4688,7 @@
4628
4688
  return cachedAtSec > nowSeconds();
4629
4689
  }
4630
4690
 
4631
- /*! @azure/msal-common v15.10.0 2025-08-05 */
4691
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
4632
4692
 
4633
4693
  /*
4634
4694
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -4890,7 +4950,7 @@
4890
4950
  return metadata.expiresAt <= nowSeconds();
4891
4951
  }
4892
4952
 
4893
- /*! @azure/msal-common v15.10.0 2025-08-05 */
4953
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
4894
4954
 
4895
4955
  /*
4896
4956
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -5729,7 +5789,7 @@
5729
5789
  };
5730
5790
  }
5731
5791
 
5732
- /*! @azure/msal-common v15.10.0 2025-08-05 */
5792
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
5733
5793
 
5734
5794
  /*
5735
5795
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -5760,7 +5820,7 @@
5760
5820
  }
5761
5821
  }
5762
5822
 
5763
- /*! @azure/msal-common v15.10.0 2025-08-05 */
5823
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
5764
5824
 
5765
5825
  /*
5766
5826
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -5779,7 +5839,7 @@
5779
5839
  }
5780
5840
  }
5781
5841
 
5782
- /*! @azure/msal-common v15.10.0 2025-08-05 */
5842
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
5783
5843
  /*
5784
5844
  * Copyright (c) Microsoft Corporation. All rights reserved.
5785
5845
  * Licensed under the MIT License.
@@ -5800,7 +5860,7 @@
5800
5860
  };
5801
5861
  }
5802
5862
 
5803
- /*! @azure/msal-common v15.10.0 2025-08-05 */
5863
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
5804
5864
 
5805
5865
  /*
5806
5866
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -5887,7 +5947,7 @@
5887
5947
  }
5888
5948
  }
5889
5949
 
5890
- /*! @azure/msal-common v15.10.0 2025-08-05 */
5950
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
5891
5951
 
5892
5952
  /*
5893
5953
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -5918,7 +5978,7 @@
5918
5978
  return new NetworkError(error, httpStatus, responseHeaders);
5919
5979
  }
5920
5980
 
5921
- /*! @azure/msal-common v15.10.0 2025-08-05 */
5981
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
5922
5982
 
5923
5983
  /*
5924
5984
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6066,7 +6126,7 @@
6066
6126
  }
6067
6127
  }
6068
6128
 
6069
- /*! @azure/msal-common v15.10.0 2025-08-05 */
6129
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
6070
6130
  /*
6071
6131
  * Copyright (c) Microsoft Corporation. All rights reserved.
6072
6132
  * Licensed under the MIT License.
@@ -6088,7 +6148,7 @@
6088
6148
  return null;
6089
6149
  }
6090
6150
 
6091
- /*! @azure/msal-common v15.10.0 2025-08-05 */
6151
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
6092
6152
 
6093
6153
  /*
6094
6154
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6303,7 +6363,7 @@
6303
6363
  }
6304
6364
  }
6305
6365
 
6306
- /*! @azure/msal-common v15.10.0 2025-08-05 */
6366
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
6307
6367
  /*
6308
6368
  * Copyright (c) Microsoft Corporation. All rights reserved.
6309
6369
  * Licensed under the MIT License.
@@ -6331,7 +6391,7 @@
6331
6391
  uxNotAllowed: uxNotAllowed
6332
6392
  });
6333
6393
 
6334
- /*! @azure/msal-common v15.10.0 2025-08-05 */
6394
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
6335
6395
 
6336
6396
  /*
6337
6397
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6421,7 +6481,7 @@
6421
6481
  return new InteractionRequiredAuthError(errorCode, InteractionRequiredAuthErrorMessages[errorCode]);
6422
6482
  }
6423
6483
 
6424
- /*! @azure/msal-common v15.10.0 2025-08-05 */
6484
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
6425
6485
 
6426
6486
  /*
6427
6487
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6493,7 +6553,7 @@
6493
6553
  }
6494
6554
  }
6495
6555
 
6496
- /*! @azure/msal-common v15.10.0 2025-08-05 */
6556
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
6497
6557
 
6498
6558
  /*
6499
6559
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6575,7 +6635,7 @@
6575
6635
  }
6576
6636
  }
6577
6637
 
6578
- /*! @azure/msal-common v15.10.0 2025-08-05 */
6638
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
6579
6639
  /*
6580
6640
  * Copyright (c) Microsoft Corporation. All rights reserved.
6581
6641
  * Licensed under the MIT License.
@@ -6602,7 +6662,7 @@
6602
6662
  }
6603
6663
  }
6604
6664
 
6605
- /*! @azure/msal-common v15.10.0 2025-08-05 */
6665
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
6606
6666
 
6607
6667
  /*
6608
6668
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -6933,7 +6993,7 @@
6933
6993
  return baseAccount;
6934
6994
  }
6935
6995
 
6936
- /*! @azure/msal-common v15.10.0 2025-08-05 */
6996
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
6937
6997
  /*
6938
6998
  * Copyright (c) Microsoft Corporation. All rights reserved.
6939
6999
  * Licensed under the MIT License.
@@ -6951,7 +7011,7 @@
6951
7011
  }
6952
7012
  }
6953
7013
 
6954
- /*! @azure/msal-common v15.10.0 2025-08-05 */
7014
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
6955
7015
 
6956
7016
  /*
6957
7017
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7186,7 +7246,7 @@
7186
7246
  }
7187
7247
  }
7188
7248
 
7189
- /*! @azure/msal-common v15.10.0 2025-08-05 */
7249
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
7190
7250
 
7191
7251
  /*
7192
7252
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7395,7 +7455,7 @@
7395
7455
  }
7396
7456
  }
7397
7457
 
7398
- /*! @azure/msal-common v15.10.0 2025-08-05 */
7458
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
7399
7459
 
7400
7460
  /*
7401
7461
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7493,7 +7553,7 @@
7493
7553
  }
7494
7554
  }
7495
7555
 
7496
- /*! @azure/msal-common v15.10.0 2025-08-05 */
7556
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
7497
7557
 
7498
7558
  /*
7499
7559
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7508,7 +7568,7 @@
7508
7568
  },
7509
7569
  };
7510
7570
 
7511
- /*! @azure/msal-common v15.10.0 2025-08-05 */
7571
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
7512
7572
 
7513
7573
  /*
7514
7574
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7732,7 +7792,7 @@
7732
7792
  return account.loginHint || account.idTokenClaims?.login_hint || null;
7733
7793
  }
7734
7794
 
7735
- /*! @azure/msal-common v15.10.0 2025-08-05 */
7795
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
7736
7796
 
7737
7797
  /*
7738
7798
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -7790,7 +7850,7 @@
7790
7850
  }
7791
7851
  }
7792
7852
 
7793
- /*! @azure/msal-common v15.10.0 2025-08-05 */
7853
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
7794
7854
 
7795
7855
  /*
7796
7856
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -8053,7 +8113,7 @@
8053
8113
  }
8054
8114
  }
8055
8115
 
8056
- /*! @azure/msal-common v15.10.0 2025-08-05 */
8116
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
8057
8117
  /*
8058
8118
  * Copyright (c) Microsoft Corporation. All rights reserved.
8059
8119
  * Licensed under the MIT License.
@@ -8061,7 +8121,7 @@
8061
8121
  const missingKidError = "missing_kid_error";
8062
8122
  const missingAlgError = "missing_alg_error";
8063
8123
 
8064
- /*! @azure/msal-common v15.10.0 2025-08-05 */
8124
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
8065
8125
 
8066
8126
  /*
8067
8127
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -8086,7 +8146,7 @@
8086
8146
  return new JoseHeaderError(code, JoseHeaderErrorMessages[code]);
8087
8147
  }
8088
8148
 
8089
- /*! @azure/msal-common v15.10.0 2025-08-05 */
8149
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
8090
8150
 
8091
8151
  /*
8092
8152
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -8126,7 +8186,7 @@
8126
8186
  }
8127
8187
  }
8128
8188
 
8129
- /*! @azure/msal-common v15.10.0 2025-08-05 */
8189
+ /*! @azure/msal-common v15.12.0 2025-08-19 */
8130
8190
 
8131
8191
  /*
8132
8192
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -10222,7 +10282,7 @@
10222
10282
 
10223
10283
  /* eslint-disable header/header */
10224
10284
  const name = "@azure/msal-browser";
10225
- const version = "4.19.0";
10285
+ const version = "4.21.0";
10226
10286
 
10227
10287
  /*
10228
10288
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -12850,11 +12910,6 @@
12850
12910
  * @returns The first account found in the cache matching the provided filter or null if no account could be found.
12851
12911
  */
12852
12912
  function getAccount(accountFilter, logger, browserStorage, correlationId) {
12853
- logger.trace("getAccount called");
12854
- if (Object.keys(accountFilter).length === 0) {
12855
- logger.warning("getAccount: No accountFilter provided");
12856
- return null;
12857
- }
12858
12913
  const account = browserStorage.getAccountInfoFilteredBy(accountFilter, correlationId);
12859
12914
  if (account) {
12860
12915
  logger.verbose("getAccount: Account matching provided filter found, returning");
@@ -13628,7 +13683,6 @@
13628
13683
  const USER_INTERACTION_REQUIRED = "USER_INTERACTION_REQUIRED";
13629
13684
  const USER_CANCEL = "USER_CANCEL";
13630
13685
  const NO_NETWORK = "NO_NETWORK";
13631
- const PERSISTENT_ERROR = "PERSISTENT_ERROR";
13632
13686
  const DISABLED = "DISABLED";
13633
13687
  const ACCOUNT_UNAVAILABLE = "ACCOUNT_UNAVAILABLE";
13634
13688
  const UX_NOT_ALLOWED = "UX_NOT_ALLOWED";
@@ -13655,8 +13709,7 @@
13655
13709
  function isFatalNativeAuthError(error) {
13656
13710
  if (error.ext &&
13657
13711
  error.ext.status &&
13658
- (error.ext.status === PERSISTENT_ERROR ||
13659
- error.ext.status === DISABLED)) {
13712
+ error.ext.status === DISABLED) {
13660
13713
  return true;
13661
13714
  }
13662
13715
  if (error.ext &&
@@ -13780,10 +13833,10 @@
13780
13833
  * @param request
13781
13834
  */
13782
13835
  async acquireToken(request, cacheLookupPolicy) {
13783
- this.performanceClient.addQueueMeasurement(PerformanceEvents.NativeInteractionClientAcquireToken, request.correlationId);
13836
+ this.performanceClient.addQueueMeasurement(PerformanceEvents.NativeInteractionClientAcquireToken, this.correlationId);
13784
13837
  this.logger.trace("NativeInteractionClient - acquireToken called.");
13785
13838
  // start the perf measurement
13786
- const nativeATMeasurement = this.performanceClient.startMeasurement(PerformanceEvents.NativeInteractionClientAcquireToken, request.correlationId);
13839
+ const nativeATMeasurement = this.performanceClient.startMeasurement(PerformanceEvents.NativeInteractionClientAcquireToken, this.correlationId);
13787
13840
  const reqTimestamp = nowSeconds();
13788
13841
  const serverTelemetryManager = this.initializeServerTelemetryManager(this.apiId);
13789
13842
  try {
@@ -13802,6 +13855,10 @@
13802
13855
  catch (e) {
13803
13856
  if (cacheLookupPolicy === CacheLookupPolicy.AccessToken) {
13804
13857
  this.logger.info("MSAL internal Cache does not contain tokens, return error as per cache policy");
13858
+ nativeATMeasurement.end({
13859
+ success: false,
13860
+ brokerErrorCode: "cache_request_failed",
13861
+ });
13805
13862
  throw e;
13806
13863
  }
13807
13864
  // continue with a native call for any and all errors
@@ -13823,7 +13880,6 @@
13823
13880
  success: false,
13824
13881
  errorCode: error.errorCode,
13825
13882
  subErrorCode: error.subError,
13826
- isNativeBroker: true,
13827
13883
  });
13828
13884
  throw error;
13829
13885
  });
@@ -13832,6 +13888,9 @@
13832
13888
  if (e instanceof NativeAuthError) {
13833
13889
  serverTelemetryManager.setNativeBrokerErrorCode(e.errorCode);
13834
13890
  }
13891
+ nativeATMeasurement.end({
13892
+ success: false,
13893
+ });
13835
13894
  throw e;
13836
13895
  }
13837
13896
  }
@@ -13953,6 +14012,9 @@
13953
14012
  const authResult = await this.handleNativeResponse(response, request, reqTimestamp);
13954
14013
  const serverTelemetryManager = this.initializeServerTelemetryManager(this.apiId);
13955
14014
  serverTelemetryManager.clearNativeBrokerErrorCode();
14015
+ if (performanceClient && this.correlationId) {
14016
+ this.performanceClient.addFields({ isNativeBroker: true }, this.correlationId);
14017
+ }
13956
14018
  return authResult;
13957
14019
  }
13958
14020
  catch (e) {
@@ -14269,7 +14331,7 @@
14269
14331
  // generate reqCnf if not provided in the request
14270
14332
  let reqCnfData;
14271
14333
  if (!validatedRequest.keyId) {
14272
- const generatedReqCnfData = await invokeAsync(popTokenGenerator.generateCnf.bind(popTokenGenerator), PerformanceEvents.PopTokenGenerateCnf, this.logger, this.performanceClient, request.correlationId)(shrParameters, this.logger);
14334
+ const generatedReqCnfData = await invokeAsync(popTokenGenerator.generateCnf.bind(popTokenGenerator), PerformanceEvents.PopTokenGenerateCnf, this.logger, this.performanceClient, this.correlationId)(shrParameters, this.logger);
14273
14335
  reqCnfData = generatedReqCnfData.reqCnfString;
14274
14336
  validatedRequest.keyId = generatedReqCnfData.kid;
14275
14337
  validatedRequest.signPopToken = true;
@@ -14355,7 +14417,7 @@
14355
14417
  this.performanceClient?.addFields({
14356
14418
  embeddedClientId: child_client_id,
14357
14419
  embeddedRedirectUri: child_redirect_uri,
14358
- }, request.correlationId);
14420
+ }, this.correlationId);
14359
14421
  }
14360
14422
  }
14361
14423
 
@@ -14386,6 +14448,10 @@
14386
14448
  if (request.platformBroker) {
14387
14449
  // signal ests that this is a WAM call
14388
14450
  addNativeBroker(parameters);
14451
+ // instrument JS-platform bridge specific fields
14452
+ performanceClient.addFields({
14453
+ isPlatformAuthorizeRequest: true,
14454
+ }, request.correlationId);
14389
14455
  // pass the req_cnf for POP
14390
14456
  if (request.authenticationScheme === AuthenticationScheme.POP) {
14391
14457
  const cryptoOps = new CryptoOps(logger, performanceClient);
@@ -15778,8 +15844,8 @@
15778
15844
  }
15779
15845
  // If navigateToLoginRequestUrl is true, get the url where the redirect request was initiated
15780
15846
  const loginRequestUrl = this.browserStorage.getTemporaryCache(TemporaryCacheKeys.ORIGIN_URI, true) || Constants.EMPTY_STRING;
15781
- const loginRequestUrlNormalized = UrlString.removeHashFromUrl(loginRequestUrl);
15782
- const currentUrlNormalized = UrlString.removeHashFromUrl(window.location.href);
15847
+ const loginRequestUrlNormalized = normalizeUrlForComparison(loginRequestUrl);
15848
+ const currentUrlNormalized = normalizeUrlForComparison(window.location.href);
15783
15849
  if (loginRequestUrlNormalized === currentUrlNormalized &&
15784
15850
  this.config.auth.navigateToLoginRequestUrl) {
15785
15851
  // We are on the page we need to navigate to - handle hash
@@ -16908,6 +16974,9 @@
16908
16974
  if (useNative && this.platformAuthProvider) {
16909
16975
  rootMeasurement = this.performanceClient.startMeasurement(PerformanceEvents.AcquireTokenRedirect, platformBrokerRequest?.correlationId || "");
16910
16976
  this.logger.trace("handleRedirectPromise - acquiring token from native platform");
16977
+ rootMeasurement.add({
16978
+ isPlatformBrokerRequest: true,
16979
+ });
16911
16980
  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);
16912
16981
  redirectResponse = invokeAsync(nativeClient.handleRedirectPromise.bind(nativeClient), PerformanceEvents.HandleNativeRedirectPromiseMeasurement, this.logger, this.performanceClient, rootMeasurement.event.correlationId)(this.performanceClient, rootMeasurement.event.correlationId);
16913
16982
  }
@@ -17001,12 +17070,12 @@
17001
17070
  const navigate = typeof onRedirectNavigateCb === "function"
17002
17071
  ? onRedirectNavigateCb(url)
17003
17072
  : undefined;
17004
- if (navigate !== false) {
17005
- atrMeasurement.end({ success: true });
17006
- }
17007
- else {
17008
- atrMeasurement.discard();
17009
- }
17073
+ atrMeasurement.add({
17074
+ navigateCallbackResult: navigate !== false,
17075
+ });
17076
+ atrMeasurement.event =
17077
+ atrMeasurement.end({ success: true }) ||
17078
+ atrMeasurement.event;
17010
17079
  return navigate;
17011
17080
  };
17012
17081
  }
@@ -17016,12 +17085,12 @@
17016
17085
  const navigate = typeof configOnRedirectNavigateCb === "function"
17017
17086
  ? configOnRedirectNavigateCb(url)
17018
17087
  : undefined;
17019
- if (navigate !== false) {
17020
- atrMeasurement.end({ success: true });
17021
- }
17022
- else {
17023
- atrMeasurement.discard();
17024
- }
17088
+ atrMeasurement.add({
17089
+ navigateCallbackResult: navigate !== false,
17090
+ });
17091
+ atrMeasurement.event =
17092
+ atrMeasurement.end({ success: true }) ||
17093
+ atrMeasurement.event;
17025
17094
  return navigate;
17026
17095
  };
17027
17096
  }
@@ -17043,9 +17112,13 @@
17043
17112
  result = nativeClient
17044
17113
  .acquireTokenRedirect(request, atrMeasurement)
17045
17114
  .catch((e) => {
17115
+ atrMeasurement.add({
17116
+ brokerErrorName: e.name,
17117
+ brokerErrorCode: e.errorCode,
17118
+ });
17046
17119
  if (e instanceof NativeAuthError &&
17047
17120
  isFatalNativeAuthError(e)) {
17048
- this.platformAuthProvider = undefined; // If extension gets uninstalled during session prevent future requests from continuing to attempt
17121
+ this.platformAuthProvider = undefined; // If extension gets uninstalled during session prevent future requests from continuing to attempt platform broker calls
17049
17122
  const redirectClient = this.createRedirectClient(correlationId);
17050
17123
  return redirectClient.acquireToken(request);
17051
17124
  }
@@ -17065,7 +17138,18 @@
17065
17138
  }
17066
17139
  catch (e) {
17067
17140
  this.browserStorage.resetRequestCache();
17068
- atrMeasurement.end({ success: false }, e);
17141
+ /*
17142
+ * Pre-redirect event completes before navigation occurs.
17143
+ * Timed out navigation needs to be instrumented separately as a post-redirect event.
17144
+ */
17145
+ if (atrMeasurement.event.status === 2) {
17146
+ this.performanceClient
17147
+ .startMeasurement(PerformanceEvents.AcquireTokenRedirect, correlationId)
17148
+ .end({ success: false }, e);
17149
+ }
17150
+ else {
17151
+ atrMeasurement.end({ success: false }, e);
17152
+ }
17069
17153
  if (isLoggedIn) {
17070
17154
  this.eventHandler.emitEvent(EventType.ACQUIRE_TOKEN_FAILURE, exports.InteractionType.Redirect, null, e);
17071
17155
  }
@@ -17111,6 +17195,9 @@
17111
17195
  let result;
17112
17196
  const pkce = this.getPreGeneratedPkceCodes(correlationId);
17113
17197
  if (this.canUsePlatformBroker(request)) {
17198
+ atPopupMeasurement.add({
17199
+ isPlatformBrokerRequest: true,
17200
+ });
17114
17201
  result = this.acquireTokenNative({
17115
17202
  ...request,
17116
17203
  correlationId,
@@ -17118,15 +17205,18 @@
17118
17205
  .then((response) => {
17119
17206
  atPopupMeasurement.end({
17120
17207
  success: true,
17121
- isNativeBroker: true,
17122
17208
  accountType: getAccountType(response.account),
17123
17209
  });
17124
17210
  return response;
17125
17211
  })
17126
17212
  .catch((e) => {
17213
+ atPopupMeasurement.add({
17214
+ brokerErrorName: e.name,
17215
+ brokerErrorCode: e.errorCode,
17216
+ });
17127
17217
  if (e instanceof NativeAuthError &&
17128
17218
  isFatalNativeAuthError(e)) {
17129
- this.platformAuthProvider = undefined; // If extension gets uninstalled during session prevent future requests from continuing to attempt
17219
+ this.platformAuthProvider = undefined; // If extension gets uninstalled during session prevent future requests from continuing to continuing to attempt platform broker calls
17130
17220
  const popupClient = this.createPopupClient(correlationId);
17131
17221
  return popupClient.acquireToken(request, pkce);
17132
17222
  }
@@ -17232,7 +17322,14 @@
17232
17322
  this.eventHandler.emitEvent(EventType.SSO_SILENT_START, exports.InteractionType.Silent, validRequest);
17233
17323
  let result;
17234
17324
  if (this.canUsePlatformBroker(validRequest)) {
17325
+ this.ssoSilentMeasurement?.add({
17326
+ isPlatformBrokerRequest: true,
17327
+ });
17235
17328
  result = this.acquireTokenNative(validRequest, ApiId.ssoSilent).catch((e) => {
17329
+ this.ssoSilentMeasurement?.add({
17330
+ brokerErrorName: e.name,
17331
+ brokerErrorCode: e.errorCode,
17332
+ });
17236
17333
  // If native token acquisition fails for availability reasons fallback to standard flow
17237
17334
  if (e instanceof NativeAuthError && isFatalNativeAuthError(e)) {
17238
17335
  this.platformAuthProvider = undefined; // If extension gets uninstalled during session prevent future requests from continuing to attempt
@@ -17251,7 +17348,6 @@
17251
17348
  this.eventHandler.emitEvent(EventType.SSO_SILENT_SUCCESS, exports.InteractionType.Silent, response);
17252
17349
  this.ssoSilentMeasurement?.end({
17253
17350
  success: true,
17254
- isNativeBroker: response.fromNativeBroker,
17255
17351
  accessTokenSize: response.accessToken.length,
17256
17352
  idTokenSize: response.idToken.length,
17257
17353
  accountType: getAccountType(response.account),
@@ -17305,7 +17401,6 @@
17305
17401
  this.hybridAuthCodeResponses.delete(hybridAuthCode);
17306
17402
  atbcMeasurement.end({
17307
17403
  success: true,
17308
- isNativeBroker: result.fromNativeBroker,
17309
17404
  accessTokenSize: result.accessToken.length,
17310
17405
  idTokenSize: result.idToken.length,
17311
17406
  accountType: getAccountType(result.account),
@@ -17330,6 +17425,9 @@
17330
17425
  }
17331
17426
  else if (request.nativeAccountId) {
17332
17427
  if (this.canUsePlatformBroker(request, request.nativeAccountId)) {
17428
+ atbcMeasurement.add({
17429
+ isPlatformBrokerRequest: true,
17430
+ });
17333
17431
  const result = await this.acquireTokenNative({
17334
17432
  ...request,
17335
17433
  correlationId,
@@ -17339,6 +17437,10 @@
17339
17437
  isFatalNativeAuthError(e)) {
17340
17438
  this.platformAuthProvider = undefined; // If extension gets uninstalled during session prevent future requests from continuing to attempt
17341
17439
  }
17440
+ atbcMeasurement.add({
17441
+ brokerErrorName: e.name,
17442
+ brokerErrorCode: e.errorCode,
17443
+ });
17342
17444
  throw e;
17343
17445
  });
17344
17446
  atbcMeasurement.end({
@@ -17383,7 +17485,6 @@
17383
17485
  this.acquireTokenByCodeAsyncMeasurement?.end({
17384
17486
  success: true,
17385
17487
  fromCache: response.fromCache,
17386
- isNativeBroker: response.fromNativeBroker,
17387
17488
  });
17388
17489
  return response;
17389
17490
  })
@@ -17881,7 +17982,6 @@
17881
17982
  atsMeasurement.end({
17882
17983
  success: true,
17883
17984
  fromCache: result.fromCache,
17884
- isNativeBroker: result.fromNativeBroker,
17885
17985
  accessTokenSize: result.accessToken.length,
17886
17986
  idTokenSize: result.idToken.length,
17887
17987
  });
@@ -18014,7 +18114,6 @@
18014
18114
  if (request.correlationId) {
18015
18115
  this.performanceClient.addFields({
18016
18116
  fromCache: response.fromCache,
18017
- isNativeBroker: response.fromNativeBroker,
18018
18117
  }, request.correlationId);
18019
18118
  }
18020
18119
  return response;
@@ -18038,7 +18137,12 @@
18038
18137
  if (isPlatformAuthAllowed(this.config, this.logger, this.platformAuthProvider, silentRequest.authenticationScheme) &&
18039
18138
  silentRequest.account.nativeAccountId) {
18040
18139
  this.logger.verbose("acquireTokenSilent - attempting to acquire token from native platform");
18140
+ this.performanceClient.addFields({ isPlatformBrokerRequest: true }, silentRequest.correlationId);
18041
18141
  return this.acquireTokenNative(silentRequest, ApiId.acquireTokenSilent_silentFlow, silentRequest.account.nativeAccountId, cacheLookupPolicy).catch(async (e) => {
18142
+ this.performanceClient.addFields({
18143
+ brokerErrorName: e.name,
18144
+ brokerErrorCode: e.errorCode,
18145
+ }, silentRequest.correlationId);
18042
18146
  // If native token acquisition fails for availability reasons fallback to web flow
18043
18147
  if (e instanceof NativeAuthError && isFatalNativeAuthError(e)) {
18044
18148
  this.logger.verbose("acquireTokenSilent - native platform unavailable, falling back to web flow");