@azure/msal-browser 3.1.0 → 3.3.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 (282) hide show
  1. package/dist/app/IPublicClientApplication.d.ts.map +1 -1
  2. package/dist/app/IPublicClientApplication.mjs +20 -19
  3. package/dist/app/IPublicClientApplication.mjs.map +1 -1
  4. package/dist/app/PublicClientApplication.d.ts +14 -6
  5. package/dist/app/PublicClientApplication.d.ts.map +1 -1
  6. package/dist/app/PublicClientApplication.mjs +18 -8
  7. package/dist/app/PublicClientApplication.mjs.map +1 -1
  8. package/dist/app/PublicClientNext.d.ts +274 -0
  9. package/dist/app/PublicClientNext.d.ts.map +1 -0
  10. package/dist/app/PublicClientNext.mjs +362 -0
  11. package/dist/app/PublicClientNext.mjs.map +1 -0
  12. package/dist/broker/nativeBroker/NativeMessageHandler.d.ts +3 -4
  13. package/dist/broker/nativeBroker/NativeMessageHandler.d.ts.map +1 -1
  14. package/dist/broker/nativeBroker/NativeMessageHandler.mjs +13 -13
  15. package/dist/broker/nativeBroker/NativeMessageHandler.mjs.map +1 -1
  16. package/dist/broker/nativeBroker/NativeStatusCodes.d.ts +8 -0
  17. package/dist/broker/nativeBroker/NativeStatusCodes.d.ts.map +1 -0
  18. package/dist/broker/nativeBroker/NativeStatusCodes.mjs +16 -0
  19. package/dist/broker/nativeBroker/NativeStatusCodes.mjs.map +1 -0
  20. package/dist/cache/AsyncMemoryStorage.mjs +1 -1
  21. package/dist/cache/BrowserCacheManager.d.ts +4 -15
  22. package/dist/cache/BrowserCacheManager.d.ts.map +1 -1
  23. package/dist/cache/BrowserCacheManager.mjs +13 -69
  24. package/dist/cache/BrowserCacheManager.mjs.map +1 -1
  25. package/dist/cache/BrowserStorage.d.ts.map +1 -1
  26. package/dist/cache/BrowserStorage.mjs +7 -9
  27. package/dist/cache/BrowserStorage.mjs.map +1 -1
  28. package/dist/cache/CryptoKeyStore.mjs +1 -1
  29. package/dist/cache/DatabaseStorage.mjs +1 -1
  30. package/dist/cache/MemoryStorage.mjs +1 -1
  31. package/dist/cache/TokenCache.mjs +1 -1
  32. package/dist/config/Configuration.d.ts +4 -0
  33. package/dist/config/Configuration.d.ts.map +1 -1
  34. package/dist/config/Configuration.mjs +8 -7
  35. package/dist/config/Configuration.mjs.map +1 -1
  36. package/dist/controllers/ControllerFactory.d.ts +2 -1
  37. package/dist/controllers/ControllerFactory.d.ts.map +1 -1
  38. package/dist/controllers/ControllerFactory.mjs +26 -19
  39. package/dist/controllers/ControllerFactory.mjs.map +1 -1
  40. package/dist/controllers/IController.d.ts +3 -2
  41. package/dist/controllers/IController.d.ts.map +1 -1
  42. package/dist/controllers/NestedAppAuthController.d.ts +96 -0
  43. package/dist/controllers/NestedAppAuthController.d.ts.map +1 -0
  44. package/dist/controllers/NestedAppAuthController.mjs +345 -0
  45. package/dist/controllers/NestedAppAuthController.mjs.map +1 -0
  46. package/dist/controllers/StandardController.d.ts +11 -6
  47. package/dist/controllers/StandardController.d.ts.map +1 -1
  48. package/dist/controllers/StandardController.mjs +67 -45
  49. package/dist/controllers/StandardController.mjs.map +1 -1
  50. package/dist/controllers/UnknownOperatingContextController.d.ts +88 -0
  51. package/dist/controllers/UnknownOperatingContextController.d.ts.map +1 -0
  52. package/dist/controllers/UnknownOperatingContextController.mjs +275 -0
  53. package/dist/controllers/UnknownOperatingContextController.mjs.map +1 -0
  54. package/dist/crypto/BrowserCrypto.d.ts +44 -49
  55. package/dist/crypto/BrowserCrypto.d.ts.map +1 -1
  56. package/dist/crypto/BrowserCrypto.mjs +77 -77
  57. package/dist/crypto/BrowserCrypto.mjs.map +1 -1
  58. package/dist/crypto/CryptoOps.d.ts +1 -7
  59. package/dist/crypto/CryptoOps.d.ts.map +1 -1
  60. package/dist/crypto/CryptoOps.mjs +18 -23
  61. package/dist/crypto/CryptoOps.mjs.map +1 -1
  62. package/dist/crypto/PkceGenerator.d.ts +6 -21
  63. package/dist/crypto/PkceGenerator.d.ts.map +1 -1
  64. package/dist/crypto/PkceGenerator.mjs +45 -46
  65. package/dist/crypto/PkceGenerator.mjs.map +1 -1
  66. package/dist/crypto/SignedHttpRequest.mjs +1 -1
  67. package/dist/encode/Base64Decode.d.ts.map +1 -1
  68. package/dist/encode/Base64Decode.mjs +18 -2
  69. package/dist/encode/Base64Decode.mjs.map +1 -1
  70. package/dist/encode/Base64Encode.mjs +1 -1
  71. package/dist/error/BrowserAuthError.d.ts +10 -1
  72. package/dist/error/BrowserAuthError.d.ts.map +1 -1
  73. package/dist/error/BrowserAuthError.mjs +12 -3
  74. package/dist/error/BrowserAuthError.mjs.map +1 -1
  75. package/dist/error/BrowserAuthErrorCodes.d.ts +1 -0
  76. package/dist/error/BrowserAuthErrorCodes.d.ts.map +1 -1
  77. package/dist/error/BrowserAuthErrorCodes.mjs +3 -2
  78. package/dist/error/BrowserAuthErrorCodes.mjs.map +1 -1
  79. package/dist/error/BrowserConfigurationAuthError.d.ts +9 -46
  80. package/dist/error/BrowserConfigurationAuthError.d.ts.map +1 -1
  81. package/dist/error/BrowserConfigurationAuthError.mjs +20 -73
  82. package/dist/error/BrowserConfigurationAuthError.mjs.map +1 -1
  83. package/dist/error/BrowserConfigurationAuthErrorCodes.d.ts +4 -0
  84. package/dist/error/BrowserConfigurationAuthErrorCodes.d.ts.map +1 -0
  85. package/dist/error/BrowserConfigurationAuthErrorCodes.mjs +12 -0
  86. package/dist/error/BrowserConfigurationAuthErrorCodes.mjs.map +1 -0
  87. package/dist/error/NativeAuthError.d.ts +17 -45
  88. package/dist/error/NativeAuthError.d.ts.map +1 -1
  89. package/dist/error/NativeAuthError.mjs +47 -78
  90. package/dist/error/NativeAuthError.mjs.map +1 -1
  91. package/dist/error/NativeAuthErrorCodes.d.ts +3 -0
  92. package/dist/error/NativeAuthErrorCodes.d.ts.map +1 -0
  93. package/dist/error/NativeAuthErrorCodes.mjs +11 -0
  94. package/dist/error/NativeAuthErrorCodes.mjs.map +1 -0
  95. package/dist/error/NestedAppAuthError.d.ts +15 -0
  96. package/dist/error/NestedAppAuthError.d.ts.map +1 -0
  97. package/dist/error/NestedAppAuthError.mjs +30 -0
  98. package/dist/error/NestedAppAuthError.mjs.map +1 -0
  99. package/dist/event/EventHandler.d.ts.map +1 -1
  100. package/dist/event/EventHandler.mjs +3 -2
  101. package/dist/event/EventHandler.mjs.map +1 -1
  102. package/dist/event/EventMessage.mjs +1 -1
  103. package/dist/event/EventType.mjs +1 -1
  104. package/dist/index.d.ts +5 -7
  105. package/dist/index.d.ts.map +1 -1
  106. package/dist/index.mjs +7 -3
  107. package/dist/index.mjs.map +1 -1
  108. package/dist/interaction_client/BaseInteractionClient.d.ts.map +1 -1
  109. package/dist/interaction_client/BaseInteractionClient.mjs +10 -11
  110. package/dist/interaction_client/BaseInteractionClient.mjs.map +1 -1
  111. package/dist/interaction_client/HybridSpaAuthorizationCodeClient.mjs +1 -1
  112. package/dist/interaction_client/NativeInteractionClient.d.ts.map +1 -1
  113. package/dist/interaction_client/NativeInteractionClient.mjs +26 -13
  114. package/dist/interaction_client/NativeInteractionClient.mjs.map +1 -1
  115. package/dist/interaction_client/PopupClient.d.ts.map +1 -1
  116. package/dist/interaction_client/PopupClient.mjs +5 -4
  117. package/dist/interaction_client/PopupClient.mjs.map +1 -1
  118. package/dist/interaction_client/RedirectClient.mjs +7 -7
  119. package/dist/interaction_client/SilentAuthCodeClient.d.ts.map +1 -1
  120. package/dist/interaction_client/SilentAuthCodeClient.mjs +7 -10
  121. package/dist/interaction_client/SilentAuthCodeClient.mjs.map +1 -1
  122. package/dist/interaction_client/SilentCacheClient.d.ts.map +1 -1
  123. package/dist/interaction_client/SilentCacheClient.mjs +11 -18
  124. package/dist/interaction_client/SilentCacheClient.mjs.map +1 -1
  125. package/dist/interaction_client/SilentIframeClient.d.ts.map +1 -1
  126. package/dist/interaction_client/SilentIframeClient.mjs +27 -13
  127. package/dist/interaction_client/SilentIframeClient.mjs.map +1 -1
  128. package/dist/interaction_client/SilentRefreshClient.d.ts.map +1 -1
  129. package/dist/interaction_client/SilentRefreshClient.mjs +8 -18
  130. package/dist/interaction_client/SilentRefreshClient.mjs.map +1 -1
  131. package/dist/interaction_client/StandardInteractionClient.d.ts.map +1 -1
  132. package/dist/interaction_client/StandardInteractionClient.mjs +16 -37
  133. package/dist/interaction_client/StandardInteractionClient.mjs.map +1 -1
  134. package/dist/interaction_handler/InteractionHandler.d.ts.map +1 -1
  135. package/dist/interaction_handler/InteractionHandler.mjs +6 -9
  136. package/dist/interaction_handler/InteractionHandler.mjs.map +1 -1
  137. package/dist/interaction_handler/RedirectHandler.d.ts.map +1 -1
  138. package/dist/interaction_handler/RedirectHandler.mjs +3 -3
  139. package/dist/interaction_handler/RedirectHandler.mjs.map +1 -1
  140. package/dist/interaction_handler/SilentHandler.d.ts +13 -47
  141. package/dist/interaction_handler/SilentHandler.d.ts.map +1 -1
  142. package/dist/interaction_handler/SilentHandler.mjs +120 -156
  143. package/dist/interaction_handler/SilentHandler.mjs.map +1 -1
  144. package/dist/naa/AccountInfo.d.ts +13 -0
  145. package/dist/naa/AccountInfo.d.ts.map +1 -0
  146. package/dist/naa/AccountRequests.d.ts +10 -0
  147. package/dist/naa/AccountRequests.d.ts.map +1 -0
  148. package/dist/naa/AuthBridge.d.ts +6 -0
  149. package/dist/naa/AuthBridge.d.ts.map +1 -0
  150. package/dist/naa/BridgeCapabilities.d.ts +4 -0
  151. package/dist/naa/BridgeCapabilities.d.ts.map +1 -0
  152. package/dist/naa/BridgeError.d.ts +10 -0
  153. package/dist/naa/BridgeError.d.ts.map +1 -0
  154. package/dist/naa/BridgeError.mjs +12 -0
  155. package/dist/naa/BridgeError.mjs.map +1 -0
  156. package/dist/naa/BridgeProxy.d.ts +72 -0
  157. package/dist/naa/BridgeProxy.d.ts.map +1 -0
  158. package/dist/naa/BridgeProxy.mjs +154 -0
  159. package/dist/naa/BridgeProxy.mjs.map +1 -0
  160. package/dist/naa/BridgeRequest.d.ts +7 -0
  161. package/dist/naa/BridgeRequest.d.ts.map +1 -0
  162. package/dist/naa/BridgeRequestEnvelope.d.ts +14 -0
  163. package/dist/naa/BridgeRequestEnvelope.d.ts.map +1 -0
  164. package/dist/naa/BridgeResponseEnvelope.d.ts +11 -0
  165. package/dist/naa/BridgeResponseEnvelope.d.ts.map +1 -0
  166. package/dist/naa/BridgeStatusCode.d.ts +11 -0
  167. package/dist/naa/BridgeStatusCode.d.ts.map +1 -0
  168. package/dist/naa/BridgeStatusCode.mjs +20 -0
  169. package/dist/naa/BridgeStatusCode.mjs.map +1 -0
  170. package/dist/naa/IBridgeProxy.d.ts +11 -0
  171. package/dist/naa/IBridgeProxy.d.ts.map +1 -0
  172. package/dist/naa/InitializeBridgeResponse.d.ts +7 -0
  173. package/dist/naa/InitializeBridgeResponse.d.ts.map +1 -0
  174. package/dist/naa/TokenRequest.d.ts +22 -0
  175. package/dist/naa/TokenRequest.d.ts.map +1 -0
  176. package/dist/naa/TokenResponse.d.ts +17 -0
  177. package/dist/naa/TokenResponse.d.ts.map +1 -0
  178. package/dist/naa/mapping/NestedAppAuthAdapter.d.ts +26 -0
  179. package/dist/naa/mapping/NestedAppAuthAdapter.d.ts.map +1 -0
  180. package/dist/naa/mapping/NestedAppAuthAdapter.mjs +178 -0
  181. package/dist/naa/mapping/NestedAppAuthAdapter.mjs.map +1 -0
  182. package/dist/navigation/NavigationClient.mjs +1 -1
  183. package/dist/network/FetchClient.mjs +1 -1
  184. package/dist/operatingcontext/BaseOperatingContext.mjs +1 -1
  185. package/dist/operatingcontext/StandardOperatingContext.mjs +1 -1
  186. package/dist/operatingcontext/TeamsAppOperatingContext.d.ts +7 -0
  187. package/dist/operatingcontext/TeamsAppOperatingContext.d.ts.map +1 -1
  188. package/dist/operatingcontext/TeamsAppOperatingContext.mjs +45 -4
  189. package/dist/operatingcontext/TeamsAppOperatingContext.mjs.map +1 -1
  190. package/dist/operatingcontext/UnknownOperatingContext.d.ts +26 -0
  191. package/dist/operatingcontext/UnknownOperatingContext.d.ts.map +1 -0
  192. package/dist/operatingcontext/UnknownOperatingContext.mjs +49 -0
  193. package/dist/operatingcontext/UnknownOperatingContext.mjs.map +1 -0
  194. package/dist/packageMetadata.d.ts +1 -1
  195. package/dist/packageMetadata.mjs +2 -2
  196. package/dist/telemetry/BrowserPerformanceClient.mjs +1 -1
  197. package/dist/telemetry/BrowserPerformanceMeasurement.mjs +1 -1
  198. package/dist/utils/BrowserConstants.mjs +1 -1
  199. package/dist/utils/BrowserProtocolUtils.d.ts.map +1 -1
  200. package/dist/utils/BrowserProtocolUtils.mjs +3 -3
  201. package/dist/utils/BrowserProtocolUtils.mjs.map +1 -1
  202. package/dist/utils/BrowserUtils.d.ts +54 -53
  203. package/dist/utils/BrowserUtils.d.ts.map +1 -1
  204. package/dist/utils/BrowserUtils.mjs +114 -102
  205. package/dist/utils/BrowserUtils.mjs.map +1 -1
  206. package/lib/msal-browser.cjs +61 -18042
  207. package/lib/msal-browser.cjs.map +1 -1
  208. package/lib/msal-browser.js +13593 -12505
  209. package/lib/msal-browser.js.map +1 -1
  210. package/lib/msal-browser.min.js +66 -65
  211. package/package.json +2 -2
  212. package/src/app/IPublicClientApplication.ts +55 -18
  213. package/src/app/PublicClientApplication.ts +19 -7
  214. package/src/app/PublicClientNext.ts +442 -0
  215. package/src/broker/nativeBroker/NativeMessageHandler.ts +12 -15
  216. package/src/broker/nativeBroker/NativeStatusCodes.ts +13 -0
  217. package/src/cache/BrowserCacheManager.ts +29 -103
  218. package/src/cache/BrowserStorage.ts +9 -11
  219. package/src/config/Configuration.ts +21 -8
  220. package/src/controllers/ControllerFactory.ts +36 -25
  221. package/src/controllers/IController.ts +4 -1
  222. package/src/controllers/NestedAppAuthController.ts +525 -0
  223. package/src/controllers/StandardController.ts +163 -98
  224. package/src/controllers/UnknownOperatingContextController.ts +383 -0
  225. package/src/crypto/BrowserCrypto.ts +119 -103
  226. package/src/crypto/CryptoOps.ts +18 -27
  227. package/src/crypto/PkceGenerator.ts +93 -54
  228. package/src/encode/Base64Decode.ts +21 -1
  229. package/src/error/BrowserAuthError.ts +13 -1
  230. package/src/error/BrowserAuthErrorCodes.ts +1 -0
  231. package/src/error/BrowserConfigurationAuthError.ts +33 -102
  232. package/src/error/BrowserConfigurationAuthErrorCodes.ts +9 -0
  233. package/src/error/NativeAuthError.ts +73 -101
  234. package/src/error/NativeAuthErrorCodes.ts +7 -0
  235. package/src/error/NestedAppAuthError.ts +32 -0
  236. package/src/event/EventHandler.ts +2 -1
  237. package/src/index.ts +8 -10
  238. package/src/interaction_client/BaseInteractionClient.ts +14 -8
  239. package/src/interaction_client/NativeInteractionClient.ts +48 -14
  240. package/src/interaction_client/PopupClient.ts +2 -1
  241. package/src/interaction_client/RedirectClient.ts +1 -1
  242. package/src/interaction_client/SilentAuthCodeClient.ts +22 -19
  243. package/src/interaction_client/SilentCacheClient.ts +28 -28
  244. package/src/interaction_client/SilentIframeClient.ts +54 -18
  245. package/src/interaction_client/SilentRefreshClient.ts +26 -28
  246. package/src/interaction_client/StandardInteractionClient.ts +37 -68
  247. package/src/interaction_handler/InteractionHandler.ts +20 -15
  248. package/src/interaction_handler/RedirectHandler.ts +6 -2
  249. package/src/interaction_handler/SilentHandler.ts +177 -230
  250. package/src/naa/AccountInfo.ts +17 -0
  251. package/src/naa/AccountRequests.ts +16 -0
  252. package/src/naa/AuthBridge.ts +16 -0
  253. package/src/naa/BridgeCapabilities.ts +8 -0
  254. package/src/naa/BridgeError.ts +18 -0
  255. package/src/naa/BridgeProxy.ts +230 -0
  256. package/src/naa/BridgeRequest.ts +12 -0
  257. package/src/naa/BridgeRequestEnvelope.ts +46 -0
  258. package/src/naa/BridgeResponseEnvelope.ts +21 -0
  259. package/src/naa/BridgeStatusCode.ts +15 -0
  260. package/src/naa/IBridgeProxy.ts +25 -0
  261. package/src/naa/InitializeBridgeResponse.ts +12 -0
  262. package/src/naa/TokenRequest.ts +26 -0
  263. package/src/naa/TokenResponse.ts +61 -0
  264. package/src/naa/mapping/NestedAppAuthAdapter.ts +252 -0
  265. package/src/operatingcontext/TeamsAppOperatingContext.ts +43 -3
  266. package/src/operatingcontext/UnknownOperatingContext.ts +48 -0
  267. package/src/packageMetadata.ts +1 -1
  268. package/src/utils/BrowserProtocolUtils.ts +3 -2
  269. package/src/utils/BrowserUtils.ts +133 -125
  270. package/dist/crypto/ISubtleCrypto.d.ts +0 -10
  271. package/dist/crypto/ISubtleCrypto.d.ts.map +0 -1
  272. package/dist/crypto/ModernBrowserCrypto.d.ts +0 -10
  273. package/dist/crypto/ModernBrowserCrypto.d.ts.map +0 -1
  274. package/dist/crypto/ModernBrowserCrypto.mjs +0 -31
  275. package/dist/crypto/ModernBrowserCrypto.mjs.map +0 -1
  276. package/dist/utils/BrowserStringUtils.d.ts +0 -22
  277. package/dist/utils/BrowserStringUtils.d.ts.map +0 -1
  278. package/dist/utils/BrowserStringUtils.mjs +0 -144
  279. package/dist/utils/BrowserStringUtils.mjs.map +0 -1
  280. package/src/crypto/ISubtleCrypto.ts +0 -30
  281. package/src/crypto/ModernBrowserCrypto.ts +0 -69
  282. package/src/utils/BrowserStringUtils.ts +0 -143
@@ -1,13 +1,15 @@
1
- /*! @azure/msal-browser v3.1.0 2023-09-05 */
1
+ /*! @azure/msal-browser v3.3.0 2023-10-20 */
2
2
  'use strict';
3
3
  import { PerformanceEvents, PromptValue, invokeAsync, Constants, AuthError, UrlString, ProtocolUtils } from '@azure/msal-common';
4
4
  import { StandardInteractionClient } from './StandardInteractionClient.mjs';
5
5
  import { createBrowserAuthError } from '../error/BrowserAuthError.mjs';
6
6
  import { InteractionType } from '../utils/BrowserConstants.mjs';
7
- import { SilentHandler } from '../interaction_handler/SilentHandler.mjs';
7
+ import { initiateAuthRequest, monitorIframeForHash } from '../interaction_handler/SilentHandler.mjs';
8
8
  import { NativeMessageHandler } from '../broker/nativeBroker/NativeMessageHandler.mjs';
9
9
  import { NativeInteractionClient } from './NativeInteractionClient.mjs';
10
- import { silentPromptValueError, silentLogoutUnsupported, nativeConnectionNotEstablished } from '../error/BrowserAuthErrorCodes.mjs';
10
+ import { InteractionHandler } from '../interaction_handler/InteractionHandler.mjs';
11
+ import { preconnect } from '../utils/BrowserUtils.mjs';
12
+ import { silentPromptValueError, silentLogoutUnsupported, hashEmptyError, hashDoesNotContainKnownProperties, nativeConnectionNotEstablished } from '../error/BrowserAuthErrorCodes.mjs';
11
13
 
12
14
  /*
13
15
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -42,6 +44,7 @@ class SilentIframeClient extends StandardInteractionClient {
42
44
  ...request,
43
45
  prompt: request.prompt || PromptValue.NONE,
44
46
  }, InteractionType.Silent);
47
+ preconnect(silentRequest.authority);
45
48
  this.browserStorage.updateCacheEntries(silentRequest.state, silentRequest.nonce, silentRequest.authority, silentRequest.loginHint || Constants.EMPTY_STRING, silentRequest.account || null);
46
49
  const serverTelemetryManager = this.initializeServerTelemetryManager(this.apiId);
47
50
  try {
@@ -72,31 +75,42 @@ class SilentIframeClient extends StandardInteractionClient {
72
75
  * @param userRequestScopes
73
76
  */
74
77
  async silentTokenHelper(authClient, silentRequest) {
75
- this.performanceClient.addQueueMeasurement(PerformanceEvents.SilentIframeClientTokenHelper, silentRequest.correlationId);
78
+ const correlationId = silentRequest.correlationId;
79
+ this.performanceClient.addQueueMeasurement(PerformanceEvents.SilentIframeClientTokenHelper, correlationId);
76
80
  // Create auth code request and generate PKCE params
77
- const authCodeRequest = await invokeAsync(this.initializeAuthorizationCodeRequest.bind(this), PerformanceEvents.StandardInteractionClientInitializeAuthorizationCodeRequest, this.logger, this.performanceClient, silentRequest.correlationId)(silentRequest);
81
+ const authCodeRequest = await invokeAsync(this.initializeAuthorizationCodeRequest.bind(this), PerformanceEvents.StandardInteractionClientInitializeAuthorizationCodeRequest, this.logger, this.performanceClient, correlationId)(silentRequest);
78
82
  // Create authorize request url
79
- const navigateUrl = await invokeAsync(authClient.getAuthCodeUrl.bind(authClient), PerformanceEvents.GetAuthCodeUrl, this.logger, this.performanceClient, silentRequest.correlationId)({
83
+ const navigateUrl = await invokeAsync(authClient.getAuthCodeUrl.bind(authClient), PerformanceEvents.GetAuthCodeUrl, this.logger, this.performanceClient, correlationId)({
80
84
  ...silentRequest,
81
85
  nativeBroker: NativeMessageHandler.isNativeAvailable(this.config, this.logger, this.nativeMessageHandler, silentRequest.authenticationScheme),
82
86
  });
83
87
  // Create silent handler
84
- const silentHandler = new SilentHandler(authClient, this.browserStorage, authCodeRequest, this.logger, this.config.system, this.performanceClient);
88
+ const interactionHandler = new InteractionHandler(authClient, this.browserStorage, authCodeRequest, this.logger, this.performanceClient);
85
89
  // Get the frame handle for the silent request
86
- const msalFrame = await invokeAsync(silentHandler.initiateAuthRequest.bind(silentHandler), PerformanceEvents.SilentHandlerInitiateAuthRequest, this.logger, this.performanceClient, silentRequest.correlationId)(navigateUrl);
90
+ const msalFrame = await invokeAsync(initiateAuthRequest, PerformanceEvents.SilentHandlerInitiateAuthRequest, this.logger, this.performanceClient, correlationId)(navigateUrl, this.performanceClient, this.logger, correlationId, this.config.system.navigateFrameWait);
87
91
  // Monitor the window for the hash. Return the string value and close the popup when the hash is received. Default timeout is 60 seconds.
88
- const hash = await invokeAsync(silentHandler.monitorIframeForHash.bind(silentHandler), PerformanceEvents.SilentHandlerInitiateAuthRequest, this.logger, this.performanceClient, silentRequest.correlationId)(msalFrame, this.config.system.iframeHashTimeout);
92
+ const hash = await invokeAsync(monitorIframeForHash, PerformanceEvents.SilentHandlerMonitorIframeForHash, this.logger, this.performanceClient, correlationId)(msalFrame, this.config.system.iframeHashTimeout, this.config.system.pollIntervalMilliseconds, this.performanceClient, this.logger, correlationId);
93
+ if (!hash) {
94
+ // No hash is present
95
+ this.logger.error("The request has returned to the redirectUri but a hash is not present in the iframe. It's likely that the hash has been removed or the page has been redirected by code running on the redirectUri page.");
96
+ throw createBrowserAuthError(hashEmptyError);
97
+ }
98
+ else if (!UrlString.hashContainsKnownProperties(hash)) {
99
+ this.logger.error("A hash is present in the iframe but it does not contain known properties. It's likely that the hash has been replaced by code running on the redirectUri page.");
100
+ this.logger.errorPii(`The hash detected in the iframe is: ${hash}`);
101
+ throw createBrowserAuthError(hashDoesNotContainKnownProperties);
102
+ }
89
103
  // Deserialize hash fragment response parameters.
90
104
  const serverParams = UrlString.getDeserializedHash(hash);
91
- const state = this.validateAndExtractStateFromHash(serverParams, InteractionType.Silent, authCodeRequest.correlationId);
105
+ const state = this.validateAndExtractStateFromHash(serverParams, InteractionType.Silent, correlationId);
92
106
  if (serverParams.accountId) {
93
107
  this.logger.verbose("Account id found in hash, calling WAM for token");
94
108
  if (!this.nativeMessageHandler) {
95
109
  throw createBrowserAuthError(nativeConnectionNotEstablished);
96
110
  }
97
- const nativeInteractionClient = new NativeInteractionClient(this.config, this.browserStorage, this.browserCrypto, this.logger, this.eventHandler, this.navigationClient, this.apiId, this.performanceClient, this.nativeMessageHandler, serverParams.accountId, this.browserStorage, this.correlationId);
111
+ const nativeInteractionClient = new NativeInteractionClient(this.config, this.browserStorage, this.browserCrypto, this.logger, this.eventHandler, this.navigationClient, this.apiId, this.performanceClient, this.nativeMessageHandler, serverParams.accountId, this.browserStorage, correlationId);
98
112
  const { userRequestState } = ProtocolUtils.parseRequestState(this.browserCrypto, state);
99
- return invokeAsync(nativeInteractionClient.acquireToken.bind(nativeInteractionClient), PerformanceEvents.NativeInteractionClientAcquireToken, this.logger, this.performanceClient, silentRequest.correlationId)({
113
+ return invokeAsync(nativeInteractionClient.acquireToken.bind(nativeInteractionClient), PerformanceEvents.NativeInteractionClientAcquireToken, this.logger, this.performanceClient, correlationId)({
100
114
  ...silentRequest,
101
115
  state: userRequestState,
102
116
  prompt: silentRequest.prompt || PromptValue.NONE,
@@ -105,7 +119,7 @@ class SilentIframeClient extends StandardInteractionClient {
105
119
  });
106
120
  }
107
121
  // Handle response from hash string
108
- return invokeAsync(silentHandler.handleCodeResponseFromHash.bind(silentHandler), PerformanceEvents.HandleCodeResponseFromHash, this.logger, this.performanceClient, silentRequest.correlationId)(hash, state, authClient.authority, this.networkClient);
122
+ return invokeAsync(interactionHandler.handleCodeResponseFromHash.bind(interactionHandler), PerformanceEvents.HandleCodeResponseFromHash, this.logger, this.performanceClient, correlationId)(hash, state, authClient.authority, this.networkClient);
109
123
  }
110
124
  }
111
125
 
@@ -1 +1 @@
1
- {"version":3,"file":"SilentIframeClient.mjs","sources":["../../src/interaction_client/SilentIframeClient.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;AAKA;AAeA;AACA;AACA;AAea,MAAA,kBAAA,kCAAoD,CAAA;AAC7D,IAAA,WAAU,CAAA,MAAO,EAAA,WAAM,EAAA,aAAA,EAAA,MAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,aAAA,EAAA;AACvB,QAAA,KAAS,CAAC,MAAA,EAAA,WAAe,EAAA,aAAmB,EAAC,MAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,aAAA,CAAA,CAAA;AAGzC,QAAA,IAAA,CAAA,KAAA,GAAA,KAA4B,CAAA;AA2BhC,QAAA,IAAA,CAAA,aAAA,GAAA,iBAAA,CAAA;;;AAGG;;AAuFH;;AAEG,QAAA,IAAA,CAAA,iBAAA,CAAA,mBAAA,CAAA,iBAAA,CAAA,8BAAA,EAAA,OAAA,CAAA,aAAA,CAAA,CAAA;AACH;AASA,QAAA,IAAA,CAAA,OAAA,CAAA,SAAA;;;;;AAKG;AACa,QAAA,IAAA,OAAA,CAAA,MAAA;AA2HnB,YAAA,OAAA,CAAA,MAAA,KAAA,WAAA,CAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"SilentIframeClient.mjs","sources":["../../src/interaction_client/SilentIframeClient.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;;AAKA;AAeA;AACA;AACA;AAsBI,MAAS,kBAAgB,SAAA,yBAAoB,CAAA;AAGzC,IAAA,WAAA,CAAA,MAAM,EAAE,WAAoB,EAAA,qBACf,EAAA,YAAA,EAAA,gBACA,EAAA,wBACC,EAAA,iBACA,EAAA,oBACE,EAAA;AAsBpB,QAAA,KAAA,CAAA,MAAA,EAAA,WAAA,EAAA,aAAA,EAAA,MAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,aAAA,CAAA,CAAA;;;AAGG,KAAA;;AAwFH;;AAEG;AACH,IAAA,MAAM,YAAY,CAAA,OAAK,EAAA;AASvB,QAAA,IAAA,CAAA,iBAAA,CAAA,mBAAA,CAAA,iBAAA,CAAA,8BAAA,EAAA,OAAA,CAAA,aAAA,CAAA,CAAA;;;;;AAKG,YAAA,IAAA,CAAA,MAAA,CAAA,OAAA,CAAA,qGAAA,CAAA,CAAA;AACa,SAAA;AAyJnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"SilentRefreshClient.d.ts","sourceRoot":"","sources":["../../src/interaction_client/SilentRefreshClient.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EACH,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAElB,iBAAiB,EAEpB,MAAM,oBAAoB,CAAC;AAM5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE,qBAAa,mBAAoB,SAAQ,yBAAyB;IAC9D;;;OAGG;IACG,YAAY,CACd,OAAO,EAAE,uBAAuB,GACjC,OAAO,CAAC,oBAAoB,CAAC;IAyDhC;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IASvB;;;;OAIG;cACa,wBAAwB,CACpC,sBAAsB,EAAE,sBAAsB,EAC9C,YAAY,CAAC,EAAE,MAAM,EACrB,iBAAiB,CAAC,EAAE,iBAAiB,GACtC,OAAO,CAAC,kBAAkB,CAAC;CAajC"}
1
+ {"version":3,"file":"SilentRefreshClient.d.ts","sourceRoot":"","sources":["../../src/interaction_client/SilentRefreshClient.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EACH,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAElB,iBAAiB,EAGpB,MAAM,oBAAoB,CAAC;AAM5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE,qBAAa,mBAAoB,SAAQ,yBAAyB;IAC9D;;;OAGG;IACG,YAAY,CACd,OAAO,EAAE,uBAAuB,GACjC,OAAO,CAAC,oBAAoB,CAAC;IAwDhC;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IASvB;;;;OAIG;cACa,wBAAwB,CACpC,sBAAsB,EAAE,sBAAsB,EAC9C,YAAY,CAAC,EAAE,MAAM,EACrB,iBAAiB,CAAC,EAAE,iBAAiB,GACtC,OAAO,CAAC,kBAAkB,CAAC;CAWjC"}
@@ -1,7 +1,7 @@
1
- /*! @azure/msal-browser v3.1.0 2023-09-05 */
1
+ /*! @azure/msal-browser v3.3.0 2023-10-20 */
2
2
  'use strict';
3
3
  import { StandardInteractionClient } from './StandardInteractionClient.mjs';
4
- import { PerformanceEvents, RefreshTokenClient } from '@azure/msal-common';
4
+ import { PerformanceEvents, invokeAsync, RefreshTokenClient } from '@azure/msal-common';
5
5
  import { ApiId } from '../utils/BrowserConstants.mjs';
6
6
  import { createBrowserAuthError } from '../error/BrowserAuthError.mjs';
7
7
  import { silentLogoutUnsupported } from '../error/BrowserAuthErrorCodes.mjs';
@@ -17,36 +17,27 @@ class SilentRefreshClient extends StandardInteractionClient {
17
17
  */
18
18
  async acquireToken(request) {
19
19
  this.performanceClient.addQueueMeasurement(PerformanceEvents.SilentRefreshClientAcquireToken, request.correlationId);
20
- this.performanceClient.setPreQueueTime(PerformanceEvents.InitializeBaseRequest, request.correlationId);
20
+ const baseRequest = await invokeAsync(this.initializeBaseRequest.bind(this), PerformanceEvents.InitializeBaseRequest, this.logger, this.performanceClient, request.correlationId)(request, request.account);
21
21
  const silentRequest = {
22
22
  ...request,
23
- ...(await this.initializeBaseRequest(request, request.account)),
23
+ ...baseRequest,
24
24
  };
25
- const acquireTokenMeasurement = this.performanceClient.startMeasurement(PerformanceEvents.SilentRefreshClientAcquireToken, silentRequest.correlationId);
26
25
  const serverTelemetryManager = this.initializeServerTelemetryManager(ApiId.acquireTokenSilent_silentFlow);
27
26
  const refreshTokenClient = await this.createRefreshTokenClient(serverTelemetryManager, silentRequest.authority, silentRequest.azureCloudOptions);
28
27
  this.logger.verbose("Refresh token client created");
29
28
  // Send request to renew token. Auth module will throw errors if token cannot be renewed.
30
- this.performanceClient.setPreQueueTime(PerformanceEvents.RefreshTokenClientAcquireTokenByRefreshToken, request.correlationId);
31
- return refreshTokenClient
32
- .acquireTokenByRefreshToken(silentRequest)
29
+ return invokeAsync(refreshTokenClient.acquireTokenByRefreshToken.bind(refreshTokenClient), PerformanceEvents.RefreshTokenClientAcquireTokenByRefreshToken, this.logger, this.performanceClient, request.correlationId)(silentRequest)
33
30
  .then((result) => result)
34
31
  .then((result) => {
35
- acquireTokenMeasurement.end({
36
- success: true,
32
+ this.performanceClient.addFields({
37
33
  fromCache: result.fromCache,
38
34
  requestId: result.requestId,
39
- });
35
+ }, request.correlationId);
40
36
  return result;
41
37
  })
42
38
  .catch((e) => {
43
39
  e.setCorrelationId(this.correlationId);
44
40
  serverTelemetryManager.cacheFailedRequest(e);
45
- acquireTokenMeasurement.end({
46
- errorCode: e.errorCode,
47
- subErrorCode: e.subError,
48
- success: false,
49
- });
50
41
  throw e;
51
42
  });
52
43
  }
@@ -64,8 +55,7 @@ class SilentRefreshClient extends StandardInteractionClient {
64
55
  */
65
56
  async createRefreshTokenClient(serverTelemetryManager, authorityUrl, azureCloudOptions) {
66
57
  // Create auth module.
67
- this.performanceClient.setPreQueueTime(PerformanceEvents.StandardInteractionClientGetClientConfiguration, this.correlationId);
68
- const clientConfig = await this.getClientConfiguration(serverTelemetryManager, authorityUrl, azureCloudOptions);
58
+ const clientConfig = await invokeAsync(this.getClientConfiguration.bind(this), PerformanceEvents.StandardInteractionClientGetClientConfiguration, this.logger, this.performanceClient, this.correlationId)(serverTelemetryManager, authorityUrl, azureCloudOptions);
69
59
  return new RefreshTokenClient(clientConfig, this.performanceClient);
70
60
  }
71
61
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SilentRefreshClient.mjs","sources":["../../src/interaction_client/SilentRefreshClient.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;AAKA;AACA;AAaA;AAEA;AAKsB,MAAA,mBACL,SAAA;AA0Db;;AAEG;AACH;AASA,IAAA,MAAA,YAAA,CAAA,OAAA,EAAA;;;;AAIG,YAAA,GAAA,OAAA;AACa,YAAA,IAAA,MAAA,IAAA,CAAA,qBACU,CAAA,OAAA,EAAA;AAgB7B,SAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"SilentRefreshClient.mjs","sources":["../../src/interaction_client/SilentRefreshClient.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;AAKA;AACA;AAcA;AAEA;AAKsB,MAAA,mBACL,SAAA;AAyDb;;AAEG;AACH;AASA,IAAA,MAAA,YAAA,CAAA,OAAA,EAAA;;;;AAIG,YAAA,GAAA,OAAA;AACa,YAAA,GAAA,WAAA;AAenB,SAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"StandardInteractionClient.d.ts","sourceRoot":"","sources":["../../src/interaction_client/StandardInteractionClient.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,sBAAsB,EACtB,8BAA8B,EAE9B,uBAAuB,EACvB,mBAAmB,EAEnB,SAAS,EAET,+BAA+B,EAE/B,uBAAuB,EAIvB,WAAW,EACX,iBAAiB,EAGpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAoB,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAU9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D;;GAEG;AACH,8BAAsB,yBAA0B,SAAQ,qBAAqB;IACzE;;;OAGG;cACa,kCAAkC,CAC9C,OAAO,EAAE,uBAAuB,GACjC,OAAO,CAAC,8BAA8B,CAAC;IAyB1C;;;OAGG;IACH,SAAS,CAAC,uBAAuB,CAC7B,aAAa,CAAC,EAAE,iBAAiB,GAClC,uBAAuB;IAgG1B;;;;OAIG;IACH,SAAS,CAAC,8BAA8B,CACpC,OAAO,EAAE,WAAW,GACrB,MAAM,GAAG,IAAI;IAmBhB;;;;OAIG;cACa,oBAAoB,CAChC,sBAAsB,EAAE,sBAAsB,EAC9C,YAAY,CAAC,EAAE,MAAM,EACrB,wBAAwB,CAAC,EAAE,iBAAiB,GAC7C,OAAO,CAAC,uBAAuB,CAAC;IAqBnC;;;;;OAKG;cACa,sBAAsB,CAClC,sBAAsB,EAAE,sBAAsB,EAC9C,gBAAgB,CAAC,EAAE,MAAM,EACzB,wBAAwB,CAAC,EAAE,iBAAiB,GAC7C,OAAO,CAAC,mBAAmB,CAAC;IAsD/B;;;OAGG;IACH,SAAS,CAAC,+BAA+B,CACrC,YAAY,EAAE,+BAA+B,EAC7C,eAAe,EAAE,eAAe,EAChC,oBAAoB,CAAC,EAAE,MAAM,GAC9B,MAAM;IA8BT;;;;OAIG;cACa,sBAAsB,CAClC,gBAAgB,CAAC,EAAE,MAAM,EACzB,wBAAwB,CAAC,EAAE,iBAAiB,GAC7C,OAAO,CAAC,SAAS,CAAC;IAqErB;;;;OAIG;cACa,8BAA8B,CAC1C,OAAO,EAAE,eAAe,GAAG,YAAY,GAAG,gBAAgB,EAC1D,eAAe,EAAE,eAAe,GACjC,OAAO,CAAC,uBAAuB,CAAC;CAyDtC"}
1
+ {"version":3,"file":"StandardInteractionClient.d.ts","sourceRoot":"","sources":["../../src/interaction_client/StandardInteractionClient.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,sBAAsB,EACtB,8BAA8B,EAE9B,uBAAuB,EACvB,mBAAmB,EAEnB,SAAS,EAET,+BAA+B,EAE/B,uBAAuB,EAIvB,WAAW,EACX,iBAAiB,EAIpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAoB,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAU9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAI/D;;GAEG;AACH,8BAAsB,yBAA0B,SAAQ,qBAAqB;IACzE;;;OAGG;cACa,kCAAkC,CAC9C,OAAO,EAAE,uBAAuB,GACjC,OAAO,CAAC,8BAA8B,CAAC;IA0B1C;;;OAGG;IACH,SAAS,CAAC,uBAAuB,CAC7B,aAAa,CAAC,EAAE,iBAAiB,GAClC,uBAAuB;IA+F1B;;;;OAIG;IACH,SAAS,CAAC,8BAA8B,CACpC,OAAO,EAAE,WAAW,GACrB,MAAM,GAAG,IAAI;IAmBhB;;;;OAIG;cACa,oBAAoB,CAChC,sBAAsB,EAAE,sBAAsB,EAC9C,YAAY,CAAC,EAAE,MAAM,EACrB,wBAAwB,CAAC,EAAE,iBAAiB,GAC7C,OAAO,CAAC,uBAAuB,CAAC;IAmBnC;;;;;OAKG;cACa,sBAAsB,CAClC,sBAAsB,EAAE,sBAAsB,EAC9C,gBAAgB,CAAC,EAAE,MAAM,EACzB,wBAAwB,CAAC,EAAE,iBAAiB,GAC7C,OAAO,CAAC,mBAAmB,CAAC;IAiD/B;;;OAGG;IACH,SAAS,CAAC,+BAA+B,CACrC,YAAY,EAAE,+BAA+B,EAC7C,eAAe,EAAE,eAAe,EAChC,oBAAoB,CAAC,EAAE,MAAM,GAC9B,MAAM;IA8BT;;;;OAIG;cACa,sBAAsB,CAClC,gBAAgB,CAAC,EAAE,MAAM,EACzB,wBAAwB,CAAC,EAAE,iBAAiB,GAC7C,OAAO,CAAC,SAAS,CAAC;IA0CrB;;;;OAIG;cACa,8BAA8B,CAC1C,OAAO,EAAE,eAAe,GAAG,YAAY,GAAG,gBAAgB,EAC1D,eAAe,EAAE,eAAe,GACjC,OAAO,CAAC,uBAAuB,CAAC;CAyDtC"}
@@ -1,12 +1,14 @@
1
- /*! @azure/msal-browser v3.1.0 2023-09-05 */
1
+ /*! @azure/msal-browser v3.3.0 2023-10-20 */
2
2
  'use strict';
3
- import { PerformanceEvents, Constants, UrlString, AuthorizationCodeClient, Authority, AuthorityFactory, ProtocolUtils } from '@azure/msal-common';
3
+ import { PerformanceEvents, invokeAsync, Constants, UrlString, AuthorizationCodeClient, Authority, AuthorityFactory, ProtocolUtils } from '@azure/msal-common';
4
4
  import { BaseInteractionClient } from './BaseInteractionClient.mjs';
5
5
  import { BrowserConstants } from '../utils/BrowserConstants.mjs';
6
6
  import { version } from '../packageMetadata.mjs';
7
7
  import { createBrowserAuthError } from '../error/BrowserAuthError.mjs';
8
8
  import { BrowserProtocolUtils } from '../utils/BrowserProtocolUtils.mjs';
9
- import { BrowserUtils } from '../utils/BrowserUtils.mjs';
9
+ import { getCurrentUri } from '../utils/BrowserUtils.mjs';
10
+ import { generatePkceCodes } from '../crypto/PkceGenerator.mjs';
11
+ import { createNewGuid } from '../crypto/BrowserCrypto.mjs';
10
12
  import { noStateInHash, unableToParseState, stateInteractionTypeMismatch } from '../error/BrowserAuthErrorCodes.mjs';
11
13
 
12
14
  /*
@@ -23,8 +25,7 @@ class StandardInteractionClient extends BaseInteractionClient {
23
25
  */
24
26
  async initializeAuthorizationCodeRequest(request) {
25
27
  this.performanceClient.addQueueMeasurement(PerformanceEvents.StandardInteractionClientInitializeAuthorizationCodeRequest, request.correlationId);
26
- this.logger.verbose("initializeAuthorizationRequest called", request.correlationId);
27
- const generatedPkceParams = await this.browserCrypto.generatePkceCodes();
28
+ const generatedPkceParams = await invokeAsync(generatePkceCodes, PerformanceEvents.GeneratePkceCodes, this.logger, this.performanceClient, this.correlationId)(this.performanceClient, this.logger, this.correlationId);
28
29
  const authCodeRequest = {
29
30
  ...request,
30
31
  redirectUri: request.redirectUri,
@@ -42,7 +43,7 @@ class StandardInteractionClient extends BaseInteractionClient {
42
43
  initializeLogoutRequest(logoutRequest) {
43
44
  this.logger.verbose("initializeLogoutRequest called", logoutRequest?.correlationId);
44
45
  const validLogoutRequest = {
45
- correlationId: this.correlationId || this.browserCrypto.createNewGuid(),
46
+ correlationId: this.correlationId || createNewGuid(),
46
47
  ...logoutRequest,
47
48
  };
48
49
  /**
@@ -78,7 +79,7 @@ class StandardInteractionClient extends BaseInteractionClient {
78
79
  if (logoutRequest && logoutRequest.postLogoutRedirectUri) {
79
80
  this.logger.verbose("Setting postLogoutRedirectUri to uri set on logout request", validLogoutRequest.correlationId);
80
81
  validLogoutRequest.postLogoutRedirectUri =
81
- UrlString.getAbsoluteUrl(logoutRequest.postLogoutRedirectUri, BrowserUtils.getCurrentUri());
82
+ UrlString.getAbsoluteUrl(logoutRequest.postLogoutRedirectUri, getCurrentUri());
82
83
  }
83
84
  else if (this.config.auth.postLogoutRedirectUri === null) {
84
85
  this.logger.verbose("postLogoutRedirectUri configured as null and no uri set on request, not passing post logout redirect", validLogoutRequest.correlationId);
@@ -86,12 +87,12 @@ class StandardInteractionClient extends BaseInteractionClient {
86
87
  else if (this.config.auth.postLogoutRedirectUri) {
87
88
  this.logger.verbose("Setting postLogoutRedirectUri to configured uri", validLogoutRequest.correlationId);
88
89
  validLogoutRequest.postLogoutRedirectUri =
89
- UrlString.getAbsoluteUrl(this.config.auth.postLogoutRedirectUri, BrowserUtils.getCurrentUri());
90
+ UrlString.getAbsoluteUrl(this.config.auth.postLogoutRedirectUri, getCurrentUri());
90
91
  }
91
92
  else {
92
93
  this.logger.verbose("Setting postLogoutRedirectUri to current page", validLogoutRequest.correlationId);
93
94
  validLogoutRequest.postLogoutRedirectUri =
94
- UrlString.getAbsoluteUrl(BrowserUtils.getCurrentUri(), BrowserUtils.getCurrentUri());
95
+ UrlString.getAbsoluteUrl(getCurrentUri(), getCurrentUri());
95
96
  }
96
97
  }
97
98
  else {
@@ -127,8 +128,7 @@ class StandardInteractionClient extends BaseInteractionClient {
127
128
  async createAuthCodeClient(serverTelemetryManager, authorityUrl, requestAzureCloudOptions) {
128
129
  this.performanceClient.addQueueMeasurement(PerformanceEvents.StandardInteractionClientCreateAuthCodeClient, this.correlationId);
129
130
  // Create auth module.
130
- this.performanceClient.setPreQueueTime(PerformanceEvents.StandardInteractionClientGetClientConfiguration, this.correlationId);
131
- const clientConfig = await this.getClientConfiguration(serverTelemetryManager, authorityUrl, requestAzureCloudOptions);
131
+ const clientConfig = await invokeAsync(this.getClientConfiguration.bind(this), PerformanceEvents.StandardInteractionClientGetClientConfiguration, this.logger, this.performanceClient, this.correlationId)(serverTelemetryManager, authorityUrl, requestAzureCloudOptions);
132
132
  return new AuthorizationCodeClient(clientConfig, this.performanceClient);
133
133
  }
134
134
  /**
@@ -139,9 +139,7 @@ class StandardInteractionClient extends BaseInteractionClient {
139
139
  */
140
140
  async getClientConfiguration(serverTelemetryManager, requestAuthority, requestAzureCloudOptions) {
141
141
  this.performanceClient.addQueueMeasurement(PerformanceEvents.StandardInteractionClientGetClientConfiguration, this.correlationId);
142
- this.logger.verbose("getClientConfiguration called", this.correlationId);
143
- this.performanceClient.setPreQueueTime(PerformanceEvents.StandardInteractionClientGetDiscoveredAuthority, this.correlationId);
144
- const discoveredAuthority = await this.getDiscoveredAuthority(requestAuthority, requestAzureCloudOptions);
142
+ const discoveredAuthority = await invokeAsync(this.getDiscoveredAuthority.bind(this), PerformanceEvents.StandardInteractionClientGetDiscoveredAuthority, this.logger, this.performanceClient, this.correlationId)(requestAuthority, requestAzureCloudOptions);
145
143
  const logger = this.config.system.loggerOptions;
146
144
  return {
147
145
  authOptions: {
@@ -201,8 +199,6 @@ class StandardInteractionClient extends BaseInteractionClient {
201
199
  */
202
200
  async getDiscoveredAuthority(requestAuthority, requestAzureCloudOptions) {
203
201
  this.performanceClient.addQueueMeasurement(PerformanceEvents.StandardInteractionClientGetDiscoveredAuthority, this.correlationId);
204
- this.logger.verbose("getDiscoveredAuthority called", this.correlationId);
205
- const getAuthorityMeasurement = this.performanceClient?.startMeasurement(PerformanceEvents.StandardInteractionClientGetDiscoveredAuthority, this.correlationId);
206
202
  const authorityOptions = {
207
203
  protocolMode: this.config.auth.protocolMode,
208
204
  OIDCOptions: this.config.auth.OIDCOptions,
@@ -217,23 +213,7 @@ class StandardInteractionClient extends BaseInteractionClient {
217
213
  : this.config.auth.authority;
218
214
  // fall back to the authority from config
219
215
  const builtAuthority = Authority.generateAuthority(userAuthority, requestAzureCloudOptions || this.config.auth.azureCloudOptions);
220
- this.logger.verbose("Creating discovered authority with configured authority", this.correlationId);
221
- this.performanceClient.setPreQueueTime(PerformanceEvents.AuthorityFactoryCreateDiscoveredInstance, this.correlationId);
222
- return await AuthorityFactory.createDiscoveredInstance(builtAuthority, this.config.system.networkClient, this.browserStorage, authorityOptions, this.logger, this.performanceClient, this.correlationId)
223
- .then((result) => {
224
- getAuthorityMeasurement.end({
225
- success: true,
226
- });
227
- return result;
228
- })
229
- .catch((error) => {
230
- getAuthorityMeasurement.end({
231
- errorCode: error.errorCode,
232
- subErrorCode: error.subError,
233
- success: false,
234
- });
235
- throw error;
236
- });
216
+ return await invokeAsync(AuthorityFactory.createDiscoveredInstance.bind(AuthorityFactory), PerformanceEvents.AuthorityFactoryCreateDiscoveredInstance, this.logger, this.performanceClient, this.correlationId)(builtAuthority, this.config.system.networkClient, this.browserStorage, authorityOptions, this.logger, this.performanceClient, this.correlationId);
237
217
  }
238
218
  /**
239
219
  * Helper to initialize required request parameters for interactive APIs and ssoSilent()
@@ -242,18 +222,17 @@ class StandardInteractionClient extends BaseInteractionClient {
242
222
  */
243
223
  async initializeAuthorizationRequest(request, interactionType) {
244
224
  this.performanceClient.addQueueMeasurement(PerformanceEvents.StandardInteractionClientInitializeAuthorizationRequest, this.correlationId);
245
- this.logger.verbose("initializeAuthorizationRequest called", this.correlationId);
246
225
  const redirectUri = this.getRedirectUri(request.redirectUri);
247
226
  const browserState = {
248
227
  interactionType: interactionType,
249
228
  };
250
229
  const state = ProtocolUtils.setRequestState(this.browserCrypto, (request && request.state) || Constants.EMPTY_STRING, browserState);
251
- this.performanceClient.setPreQueueTime(PerformanceEvents.InitializeBaseRequest, this.correlationId);
230
+ const baseRequest = await invokeAsync(this.initializeBaseRequest.bind(this), PerformanceEvents.InitializeBaseRequest, this.logger, this.performanceClient, this.correlationId)(request);
252
231
  const validatedRequest = {
253
- ...(await this.initializeBaseRequest(request)),
232
+ ...baseRequest,
254
233
  redirectUri: redirectUri,
255
234
  state: state,
256
- nonce: request.nonce || this.browserCrypto.createNewGuid(),
235
+ nonce: request.nonce || createNewGuid(),
257
236
  responseMode: this.config.auth.OIDCOptions
258
237
  .serverResponseType,
259
238
  };
@@ -1 +1 @@
1
- {"version":3,"file":"StandardInteractionClient.mjs","sources":["../../src/interaction_client/StandardInteractionClient.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;AAKA;AAoBA;AACA;AACA;AAmBA;AACI;;;AAGG;;AA4BH;;;AAGG,QAAA,IAAA,CAAA,iBAAA,CAAA,mBAAA,CAAA,iBAAA,CAAA,2DAAA,EAAA,OAAA,CAAA,aAAA,CAAA,CAAA;QACM,IAAA,CAAA,sDACW,EAAA,OACM,CAAA,aAAA,CAAA,CAAA;AAgG1B,QAAA,MAAA,mBAAA,GAAA,MAAA,IAAA,CAAA,aAAA,CAAA,iBAAA,EAAA,CAAA;;;;AAIG,YAAA,IAAA,EAAA,SAAA,CAAA,YAAA;YACM,iCACL,CAAA,QAAS;AAoBb,SAAA,CAAA;;;;AAIG,KAAA;AACa;AAyBhB;;;;;AAKG,QAAA,MAAA,kBAAA,GAAA;AACa,YAAA,aAAA,EAAA,IAAA,CAAA,aACU,IAAA,IAAA,CAAA,6BAAwB;AAyDlD,YAAA,GAAA,aAAA;;;AAGG;AACH;AAkCA;;;;AAIG,gBAAA,IAAA,aAAA,CAAA,OAAA,EAAA;AACa,oBAAA,MAAA,UAAsB,GAClC,IAAA,CAAA,8BACA,CAAA,aAAwB,CAAC,OAAmB,CAAA,CAAA;AAsEhD,oBAAA,IAAA,UAAA,EAAA;;;;AAIG,iBAAA;AACa,qBAAA;AA4DnB,oBAAA,IAAA,CAAA,MAAA,CAAA,OAAA,CAAA,mGAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"StandardInteractionClient.mjs","sources":["../../src/interaction_client/StandardInteractionClient.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;;AAKA;AAqBA;AACA;AACA;;;AAyBO;+BAC+C,SAAA,qBACrC,CAAA;AA2Bb;;;AAGG;IACH,MAAS,kCACL,CAAA,OAAc,EAAE;AAgGpB,QAAA,IAAA,CAAA,iBAAA,CAAA,mBAAA,CAAA,iBAAA,CAAA,2DAAA,EAAA,OAAA,CAAA,aAAA,CAAA,CAAA;;;;AAIG,YAAA,WAAA,EAAA,OAAA,CAAA,WAAA;YACM;AAqBT,YAAA,YAAA,EAAA,mBAAA,CAAA,QAAA;;;;AAIG,QAAA,OAAA,eAAA,CAAA;AACa,KAAA;AAuBhB;;;;;AAKG,QAAA,IAAA,CAAA,MAAA,CAAA,OAAA,CAAA,gCAAA,EAAA,aAAA,EAAA,aAAA,CAAA,CAAA;AACa,QAAA,MAAA,kBAAA,GAAA;AAqDhB,YAAA,aAAA,EAAA,IAAA,CAAA,aAAA,IAAA,aAAA,EAAA;;;AAGG;AACH;AAkCA;;;;AAIG,YAAA,IAAA,CAAA,aAAA,CAAA,UAAA,EAAA;AACa,gBAAA,IAAA,aAAA,CAAA,OACZ,EAAA;AA4CJ,oBAAA,MAAA,UAAA,GAAA,IAAA,CAAA,8BAAA,CAAA,aAAA,CAAA,OAAA,CAAA,CAAA;;;;AAIG,qBAAA;AACa,iBAAA;AA4DnB,qBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"InteractionHandler.d.ts","sourceRoot":"","sources":["../../src/interaction_handler/InteractionHandler.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,wBAAwB,EACxB,8BAA8B,EAC9B,uBAAuB,EAEvB,SAAS,EACT,cAAc,EAEd,aAAa,EACb,MAAM,EAEN,kBAAkB,EAGrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAMnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE,MAAM,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAEnC;;GAEG;AACH,qBAAa,kBAAkB;IAC3B,SAAS,CAAC,UAAU,EAAE,uBAAuB,CAAC;IAC9C,SAAS,CAAC,cAAc,EAAE,mBAAmB,CAAC;IAC9C,SAAS,CAAC,eAAe,EAAE,8BAA8B,CAAC;IAC1D,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;gBAG5C,cAAc,EAAE,uBAAuB,EACvC,WAAW,EAAE,mBAAmB,EAChC,eAAe,EAAE,8BAA8B,EAC/C,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,kBAAkB;IASzC;;;OAGG;IACG,0BAA0B,CAC5B,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,cAAc,GAC9B,OAAO,CAAC,oBAAoB,CAAC;IAkDhC;;;;;;;OAOG;IACG,4BAA4B,CAC9B,gBAAgB,EAAE,wBAAwB,EAC1C,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,cAAc,EAC7B,aAAa,GAAE,OAAc,GAC9B,OAAO,CAAC,oBAAoB,CAAC;IAiEhC;;;;;OAKG;cACa,4BAA4B,CACxC,qBAAqB,EAAE,MAAM,EAC7B,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,cAAc,GAC9B,OAAO,CAAC,IAAI,CAAC;IAmBhB;;OAEG;IACH,SAAS,CAAC,mBAAmB,IAAI,aAAa,GAAG,IAAI;CAoBxD"}
1
+ {"version":3,"file":"InteractionHandler.d.ts","sourceRoot":"","sources":["../../src/interaction_handler/InteractionHandler.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,wBAAwB,EACxB,8BAA8B,EAC9B,uBAAuB,EAEvB,SAAS,EACT,cAAc,EACd,aAAa,EACb,MAAM,EAEN,kBAAkB,EAKrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAMnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE,MAAM,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAEnC;;GAEG;AACH,qBAAa,kBAAkB;IAC3B,SAAS,CAAC,UAAU,EAAE,uBAAuB,CAAC;IAC9C,SAAS,CAAC,cAAc,EAAE,mBAAmB,CAAC;IAC9C,SAAS,CAAC,eAAe,EAAE,8BAA8B,CAAC;IAC1D,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;gBAG5C,cAAc,EAAE,uBAAuB,EACvC,WAAW,EAAE,mBAAmB,EAChC,eAAe,EAAE,8BAA8B,EAC/C,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,kBAAkB;IASzC;;;OAGG;IACG,0BAA0B,CAC5B,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,cAAc,GAC9B,OAAO,CAAC,oBAAoB,CAAC;IAiDhC;;;;;;;OAOG;IACG,4BAA4B,CAC9B,gBAAgB,EAAE,wBAAwB,EAC1C,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,cAAc,EAC7B,aAAa,GAAE,OAAc,GAC9B,OAAO,CAAC,oBAAoB,CAAC;IAsEhC;;;;;OAKG;cACa,4BAA4B,CACxC,qBAAqB,EAAE,MAAM,EAC7B,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,cAAc,GAC9B,OAAO,CAAC,IAAI,CAAC;IAmBhB;;OAEG;IACH,SAAS,CAAC,mBAAmB,IAAI,aAAa,GAAG,IAAI;CAoBxD"}
@@ -1,6 +1,6 @@
1
- /*! @azure/msal-browser v3.1.0 2023-09-05 */
1
+ /*! @azure/msal-browser v3.3.0 2023-10-20 */
2
2
  'use strict';
3
- import { PerformanceEvents, ClientAuthError, ServerError, invokeAsync, AuthorityFactory } from '@azure/msal-common';
3
+ import { PerformanceEvents, createClientAuthError, ClientAuthErrorCodes, ServerError, invokeAsync, AuthorityFactory } from '@azure/msal-common';
4
4
  import { createBrowserAuthError } from '../error/BrowserAuthError.mjs';
5
5
  import { TemporaryCacheKeys } from '../utils/BrowserConstants.mjs';
6
6
  import { hashEmptyError, userCancelled } from '../error/BrowserAuthErrorCodes.mjs';
@@ -26,7 +26,6 @@ class InteractionHandler {
26
26
  */
27
27
  async handleCodeResponseFromHash(locationHash, state, authority, networkModule) {
28
28
  this.performanceClient.addQueueMeasurement(PerformanceEvents.HandleCodeResponseFromHash, this.authCodeRequest.correlationId);
29
- this.logger.verbose("InteractionHandler.handleCodeResponse called");
30
29
  // Check that location hash isn't empty.
31
30
  if (!locationHash) {
32
31
  throw createBrowserAuthError(hashEmptyError);
@@ -35,7 +34,7 @@ class InteractionHandler {
35
34
  const stateKey = this.browserStorage.generateStateKey(state);
36
35
  const requestState = this.browserStorage.getTemporaryCache(stateKey);
37
36
  if (!requestState) {
38
- throw ClientAuthError.createStateNotFoundError("Cached State");
37
+ throw createClientAuthError(ClientAuthErrorCodes.stateNotFound, "Cached State");
39
38
  }
40
39
  let authCodeResponse;
41
40
  try {
@@ -51,8 +50,7 @@ class InteractionHandler {
51
50
  throw e;
52
51
  }
53
52
  }
54
- this.performanceClient.setPreQueueTime(PerformanceEvents.HandleCodeResponseFromServer, this.authCodeRequest.correlationId);
55
- return this.handleCodeResponseFromServer(authCodeResponse, state, authority, networkModule);
53
+ return invokeAsync(this.handleCodeResponseFromServer.bind(this), PerformanceEvents.HandleCodeResponseFromServer, this.logger, this.performanceClient, this.authCodeRequest.correlationId)(authCodeResponse, state, authority, networkModule);
56
54
  }
57
55
  /**
58
56
  * Process auth code response from AAD
@@ -69,7 +67,7 @@ class InteractionHandler {
69
67
  const stateKey = this.browserStorage.generateStateKey(state);
70
68
  const requestState = this.browserStorage.getTemporaryCache(stateKey);
71
69
  if (!requestState) {
72
- throw ClientAuthError.createStateNotFoundError("Cached State");
70
+ throw createClientAuthError(ClientAuthErrorCodes.stateNotFound, "Cached State");
73
71
  }
74
72
  // Get cached items
75
73
  const nonceKey = this.browserStorage.generateNonceKey(requestState);
@@ -78,8 +76,7 @@ class InteractionHandler {
78
76
  this.authCodeRequest.code = authCodeResponse.code;
79
77
  // Check for new cloud instance
80
78
  if (authCodeResponse.cloud_instance_host_name) {
81
- this.performanceClient.setPreQueueTime(PerformanceEvents.UpdateTokenEndpointAuthority, this.authCodeRequest.correlationId);
82
- await this.updateTokenEndpointAuthority(authCodeResponse.cloud_instance_host_name, authority, networkModule);
79
+ await invokeAsync(this.updateTokenEndpointAuthority.bind(this), PerformanceEvents.UpdateTokenEndpointAuthority, this.logger, this.performanceClient, this.authCodeRequest.correlationId)(authCodeResponse.cloud_instance_host_name, authority, networkModule);
83
80
  }
84
81
  // Nonce validation not needed when redirect not involved (e.g. hybrid spa, renewing token via rt)
85
82
  if (validateNonce) {
@@ -1 +1 @@
1
- {"version":3,"file":"InteractionHandler.mjs","sources":["../../src/interaction_handler/InteractionHandler.ts"],"sourcesContent":[null],"names":["BrowserAuthErrorCodes.hashEmptyError"],"mappings":";;;;;;;AAKA;AAgBA;AAMA;AAEA;AAKA;AACI;AACA;AACA,MAAS,kBAAkB,CAAA;AAC3B,IAAA,WAAU,CAAA,cAAe,EAAA,WAAA,EAAA,eAAA,EAAA,MAAA,EAAA,iBAAA,EAAA;AACzB,QAAA,IAAA,CAAS,UAAC,GAAA,cAAmB,CAAA;AAGzB,QAAA,IAAA,CAAA,cAAA,GAAc,WAAyB,CAAA;AAa3C,QAAA,IAAA,CAAA,eAAA,GAAA,eAAA,CAAA;;;AAGG,KAAA;;AAwDH;;;;;;;AAOG,QAAA,IAAA,CAAA,YAAA,EAAA;YAC+B,MAAA,sBACd,CAAAA,cAChB;AAqEJ,SAAA;;;;;AAKG,YAAA,MAAA,eAAA,CAAA,wBAAA,CAAA,cAAA,CAAA,CAAA;AACa,SAAA;AAuBhB,QAAA,IAAA,gBAAA,CAAA;;AAEG,YAAA,gBAAA,GAAA,IAAA,CAAA,UAAA,CAAA,sBAAA,CAAA,YAAA,EAAA,YAAA,CAAA,CAAA;AACH,SAAA;AAoBH,QAAA,OAAA,CAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"InteractionHandler.mjs","sources":["../../src/interaction_handler/InteractionHandler.ts"],"sourcesContent":[null],"names":["BrowserAuthErrorCodes.hashEmptyError"],"mappings":";;;;;;;AAKA;AAiBA;AAMA;AAEA;AAKA;AACI;AACA;AACA,MAAS,kBAAkB,CAAA;AAC3B,IAAA,WAAU,CAAA,cAAe,EAAA,WAAA,EAAA,eAAA,EAAA,MAAA,EAAA,iBAAA,EAAA;AACzB,QAAA,IAAA,CAAS,UAAC,GAAA,cAAmB,CAAA;AAGzB,QAAA,IAAA,CAAA,cAAA,GAAc,WAAyB,CAAA;AAa3C,QAAA,IAAA,CAAA,eAAA,GAAA,eAAA,CAAA;;;AAGG,KAAA;;AAuDH;;;;;;;AAOG,YAAA,MAAA,sBAAA,CAAAA,cAAA,CAAA,CAAA;SAC+B;AA4ElC;;;;;AAKG,SAAA;AACa,QAAA,IAAA,gBAAA,CAAA;AAuBhB,QAAA,IAAA;;AAEG,SAAA;AACH,QAAA,OAAU,CAAA,EAAA;AAoBb,YAAA,IAAA,CAAA,YAAA,WAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"RedirectHandler.d.ts","sourceRoot":"","sources":["../../src/interaction_handler/RedirectHandler.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,uBAAuB,EACvB,8BAA8B,EAC9B,OAAO,EACP,SAAS,EACT,cAAc,EAEd,MAAM,EAEN,kBAAkB,EACrB,MAAM,oBAAoB,CAAC;AAM5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE,MAAM,MAAM,cAAc,GAAG,iBAAiB,GAAG;IAC7C,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC;CACxD,CAAC;AAEF,qBAAa,eAAgB,SAAQ,kBAAkB;IACnD,OAAO,CAAC,aAAa,CAAU;gBAG3B,cAAc,EAAE,uBAAuB,EACvC,WAAW,EAAE,mBAAmB,EAChC,eAAe,EAAE,8BAA8B,EAC/C,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,OAAO,EACtB,iBAAiB,EAAE,kBAAkB;IAYzC;;;OAGG;IACG,mBAAmB,CACrB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC;IA6EhB;;;OAGG;IACG,0BAA0B,CAC5B,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,cAAc,GAC9B,OAAO,CAAC,oBAAoB,CAAC;CA4EnC"}
1
+ {"version":3,"file":"RedirectHandler.d.ts","sourceRoot":"","sources":["../../src/interaction_handler/RedirectHandler.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,uBAAuB,EACvB,8BAA8B,EAC9B,OAAO,EACP,SAAS,EACT,cAAc,EACd,MAAM,EAEN,kBAAkB,EAGrB,MAAM,oBAAoB,CAAC;AAM5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE,MAAM,MAAM,cAAc,GAAG,iBAAiB,GAAG;IAC7C,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC;CACxD,CAAC;AAEF,qBAAa,eAAgB,SAAQ,kBAAkB;IACnD,OAAO,CAAC,aAAa,CAAU;gBAG3B,cAAc,EAAE,uBAAuB,EACvC,WAAW,EAAE,mBAAmB,EAChC,eAAe,EAAE,8BAA8B,EAC/C,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,OAAO,EACtB,iBAAiB,EAAE,kBAAkB;IAYzC;;;OAGG;IACG,mBAAmB,CACrB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC;IA6EhB;;;OAGG;IACG,0BAA0B,CAC5B,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,cAAc,GAC9B,OAAO,CAAC,oBAAoB,CAAC;CA+EnC"}
@@ -1,6 +1,6 @@
1
- /*! @azure/msal-browser v3.1.0 2023-09-05 */
1
+ /*! @azure/msal-browser v3.3.0 2023-10-20 */
2
2
  'use strict';
3
- import { ClientAuthError, ServerError } from '@azure/msal-common';
3
+ import { createClientAuthError, ClientAuthErrorCodes, ServerError } from '@azure/msal-common';
4
4
  import { createBrowserAuthError } from '../error/BrowserAuthError.mjs';
5
5
  import { TemporaryCacheKeys, ApiId } from '../utils/BrowserConstants.mjs';
6
6
  import { InteractionHandler } from './InteractionHandler.mjs';
@@ -81,7 +81,7 @@ class RedirectHandler extends InteractionHandler {
81
81
  const stateKey = this.browserStorage.generateStateKey(state);
82
82
  const requestState = this.browserStorage.getTemporaryCache(stateKey);
83
83
  if (!requestState) {
84
- throw ClientAuthError.createStateNotFoundError("Cached State");
84
+ throw createClientAuthError(ClientAuthErrorCodes.stateNotFound, "Cached State");
85
85
  }
86
86
  let authCodeResponse;
87
87
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"RedirectHandler.mjs","sources":["../../src/interaction_handler/RedirectHandler.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;AAKA;AAgBA;AACA;AACA;AAOqB,MAAA,wBAAS,kBAAA,CAAA;IAC1B,WAAkB,CAAA,cAAO,aAAa,EAAA,eAAe,EAAA,MAAA,EAAA,aAAA,EAAA,iBAAA,EAAA;QACvD,KAAA,CAAA,cAAA,EAAA,WAAA,EAAA,eAAA,EAAA,MAAA,EAAA,iBAAA,CAAA,CAAA;AAEF,QAAa,IAAA,CAAA,aAAA,GAAA;KACF;;AAoBP;;;AAGG,IAAA,MAAA,mBAAA,CAAA,UAAA,EAAA,MAAA,EAAA;AACG,QAAA,IAAA,CAAA,MAAA,CAAA,OACF,CAAA,4CAED,CAAA,CAAA;AA6EH;;;AAGG,YAAA,IAAA,MAAA,CAAA,iBAAA,EAAA;gBAC6B,IAAA,CAAA,MAAA,CAAA,wFAIb,CAAA,CAAA;AA6EtB,gBAAA,IAAA,CAAA,cAAA,CAAA,iBAAA,CAAA,kBAAA,CAAA,UAAA,EAAA,MAAA,CAAA,iBAAA,EAAA,IAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"RedirectHandler.mjs","sources":["../../src/interaction_handler/RedirectHandler.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;AAKA;AAiBA;AACA;AACA;AAOqB,MAAA,wBAAS,kBAAA,CAAA;IAC1B,WAAkB,CAAA,cAAO,aAAa,EAAA,eAAe,EAAA,MAAA,EAAA,aAAA,EAAA,iBAAA,EAAA;QACvD,KAAA,CAAA,cAAA,EAAA,WAAA,EAAA,eAAA,EAAA,MAAA,EAAA,iBAAA,CAAA,CAAA;AAEF,QAAa,IAAA,CAAA,aAAA,GAAA;KACF;;AAoBP;;;AAGG,IAAA,MAAA,mBAAA,CAAA,UAAA,EAAA,MAAA,EAAA;AACG,QAAA,IAAA,CAAA,MAAA,CAAA,OACF,CAAA,4CAED,CAAA,CAAA;AA6EH;;;AAGG,YAAA,IAAA,MAAA,CAAA,iBAAA,EAAA;gBAC6B,IAAA,CAAA,MAAA,CAAA,wFAIb,CAAA,CAAA;AAgFtB,gBAAA,IAAA,CAAA,cAAA,CAAA,iBAAA,CAAA,kBAAA,CAAA,UAAA,EAAA,MAAA,CAAA,iBAAA,EAAA,IAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,48 +1,14 @@
1
- import { CommonAuthorizationCodeRequest, AuthorizationCodeClient, Logger, IPerformanceClient } from "@azure/msal-common";
2
- import { InteractionHandler } from "./InteractionHandler";
3
- import { BrowserCacheManager } from "../cache/BrowserCacheManager";
4
- import { BrowserSystemOptions } from "../config/Configuration";
5
- export declare class SilentHandler extends InteractionHandler {
6
- private navigateFrameWait;
7
- private pollIntervalMilliseconds;
8
- constructor(authCodeModule: AuthorizationCodeClient, storageImpl: BrowserCacheManager, authCodeRequest: CommonAuthorizationCodeRequest, logger: Logger, systemOptions: Required<Pick<BrowserSystemOptions, "navigateFrameWait" | "pollIntervalMilliseconds">>, performanceClient: IPerformanceClient);
9
- /**
10
- * Creates a hidden iframe to given URL using user-requested scopes as an id.
11
- * @param urlNavigate
12
- * @param userRequestScopes
13
- */
14
- initiateAuthRequest(requestUrl: string): Promise<HTMLIFrameElement>;
15
- /**
16
- * Monitors an iframe content window until it loads a url with a known hash, or hits a specified timeout.
17
- * @param iframe
18
- * @param timeout
19
- */
20
- monitorIframeForHash(iframe: HTMLIFrameElement, timeout: number): Promise<string>;
21
- /**
22
- * @hidden
23
- * Loads iframe with authorization endpoint URL
24
- * @ignore
25
- */
26
- private loadFrame;
27
- /**
28
- * @hidden
29
- * Loads the iframe synchronously when the navigateTimeFrame is set to `0`
30
- * @param urlNavigate
31
- * @param frameName
32
- * @param logger
33
- */
34
- private loadFrameSync;
35
- /**
36
- * @hidden
37
- * Creates a new hidden iframe or gets an existing one for silent token renewal.
38
- * @ignore
39
- */
40
- private createHiddenIframe;
41
- /**
42
- * @hidden
43
- * Removes a hidden iframe from the page.
44
- * @ignore
45
- */
46
- private removeHiddenIframe;
47
- }
1
+ import { Logger, IPerformanceClient } from "@azure/msal-common";
2
+ /**
3
+ * Creates a hidden iframe to given URL using user-requested scopes as an id.
4
+ * @param urlNavigate
5
+ * @param userRequestScopes
6
+ */
7
+ export declare function initiateAuthRequest(requestUrl: string, performanceClient: IPerformanceClient, logger: Logger, correlationId: string, navigateFrameWait?: number): Promise<HTMLIFrameElement>;
8
+ /**
9
+ * Monitors an iframe content window until it loads a url with a known hash, or hits a specified timeout.
10
+ * @param iframe
11
+ * @param timeout
12
+ */
13
+ export declare function monitorIframeForHash(iframe: HTMLIFrameElement, timeout: number, pollIntervalMilliseconds: number, performanceClient: IPerformanceClient, logger: Logger, correlationId: string): Promise<string>;
48
14
  //# sourceMappingURL=SilentHandler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SilentHandler.d.ts","sourceRoot":"","sources":["../../src/interaction_handler/SilentHandler.ts"],"names":[],"mappings":"AAKA,OAAO,EAEH,8BAA8B,EAC9B,uBAAuB,EAEvB,MAAM,EACN,kBAAkB,EAErB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAK1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EACH,oBAAoB,EAEvB,MAAM,yBAAyB,CAAC;AAEjC,qBAAa,aAAc,SAAQ,kBAAkB;IACjD,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,wBAAwB,CAAS;gBAGrC,cAAc,EAAE,uBAAuB,EACvC,WAAW,EAAE,mBAAmB,EAChC,eAAe,EAAE,8BAA8B,EAC/C,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,QAAQ,CACnB,IAAI,CACA,oBAAoB,EACpB,mBAAmB,GAAG,0BAA0B,CACnD,CACJ,EACD,iBAAiB,EAAE,kBAAkB;IAazC;;;;OAIG;IACG,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAwBzE;;;;OAIG;IACH,oBAAoB,CAChB,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC;IAiGlB;;;;OAIG;IACH,OAAO,CAAC,SAAS;IA2BjB;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAQrB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAgB1B;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;CAK7B"}
1
+ {"version":3,"file":"SilentHandler.d.ts","sourceRoot":"","sources":["../../src/interaction_handler/SilentHandler.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,MAAM,EACN,kBAAkB,EAIrB,MAAM,oBAAoB,CAAC;AAO5B;;;;GAIG;AACH,wBAAsB,mBAAmB,CACrC,UAAU,EAAE,MAAM,EAClB,iBAAiB,EAAE,kBAAkB,EACrC,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EACrB,iBAAiB,CAAC,EAAE,MAAM,GAC3B,OAAO,CAAC,iBAAiB,CAAC,CA2B5B;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CACtC,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,MAAM,EACf,wBAAwB,EAAE,MAAM,EAChC,iBAAiB,EAAE,kBAAkB,EACrC,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,CAAC,CA0DjB"}