@azure/msal-browser 3.3.0 → 3.4.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 (121) hide show
  1. package/dist/app/IPublicClientApplication.mjs +1 -1
  2. package/dist/app/PublicClientApplication.d.ts.map +1 -1
  3. package/dist/app/PublicClientApplication.mjs +3 -4
  4. package/dist/app/PublicClientApplication.mjs.map +1 -1
  5. package/dist/app/PublicClientNext.d.ts.map +1 -1
  6. package/dist/app/PublicClientNext.mjs +4 -6
  7. package/dist/app/PublicClientNext.mjs.map +1 -1
  8. package/dist/broker/nativeBroker/NativeMessageHandler.mjs +1 -1
  9. package/dist/broker/nativeBroker/NativeStatusCodes.mjs +1 -1
  10. package/dist/cache/AsyncMemoryStorage.mjs +1 -1
  11. package/dist/cache/BrowserCacheManager.d.ts.map +1 -1
  12. package/dist/cache/BrowserCacheManager.mjs +20 -20
  13. package/dist/cache/BrowserCacheManager.mjs.map +1 -1
  14. package/dist/cache/BrowserStorage.mjs +1 -1
  15. package/dist/cache/CryptoKeyStore.mjs +1 -1
  16. package/dist/cache/DatabaseStorage.mjs +1 -1
  17. package/dist/cache/MemoryStorage.mjs +1 -1
  18. package/dist/cache/TokenCache.d.ts.map +1 -1
  19. package/dist/cache/TokenCache.mjs +5 -5
  20. package/dist/cache/TokenCache.mjs.map +1 -1
  21. package/dist/config/Configuration.mjs +1 -1
  22. package/dist/controllers/ControllerFactory.d.ts +2 -8
  23. package/dist/controllers/ControllerFactory.d.ts.map +1 -1
  24. package/dist/controllers/ControllerFactory.mjs +21 -38
  25. package/dist/controllers/ControllerFactory.mjs.map +1 -1
  26. package/dist/controllers/IController.d.ts +1 -2
  27. package/dist/controllers/IController.d.ts.map +1 -1
  28. package/dist/controllers/NestedAppAuthController.mjs +1 -1
  29. package/dist/controllers/StandardController.d.ts +4 -4
  30. package/dist/controllers/StandardController.d.ts.map +1 -1
  31. package/dist/controllers/StandardController.mjs +29 -31
  32. package/dist/controllers/StandardController.mjs.map +1 -1
  33. package/dist/controllers/UnknownOperatingContextController.mjs +1 -1
  34. package/dist/crypto/BrowserCrypto.mjs +1 -1
  35. package/dist/crypto/CryptoOps.mjs +1 -1
  36. package/dist/crypto/PkceGenerator.mjs +1 -1
  37. package/dist/crypto/SignedHttpRequest.mjs +1 -1
  38. package/dist/encode/Base64Decode.mjs +1 -1
  39. package/dist/encode/Base64Encode.mjs +1 -1
  40. package/dist/error/BrowserAuthError.mjs +1 -1
  41. package/dist/error/BrowserAuthErrorCodes.mjs +1 -1
  42. package/dist/error/BrowserConfigurationAuthError.mjs +1 -1
  43. package/dist/error/BrowserConfigurationAuthErrorCodes.mjs +1 -1
  44. package/dist/error/NativeAuthError.mjs +1 -1
  45. package/dist/error/NativeAuthErrorCodes.mjs +1 -1
  46. package/dist/error/NestedAppAuthError.mjs +1 -1
  47. package/dist/event/EventHandler.mjs +1 -1
  48. package/dist/event/EventMessage.mjs +1 -1
  49. package/dist/event/EventType.mjs +1 -1
  50. package/dist/index.mjs +1 -1
  51. package/dist/interaction_client/BaseInteractionClient.mjs +1 -1
  52. package/dist/interaction_client/HybridSpaAuthorizationCodeClient.mjs +1 -1
  53. package/dist/interaction_client/NativeInteractionClient.d.ts.map +1 -1
  54. package/dist/interaction_client/NativeInteractionClient.mjs +4 -4
  55. package/dist/interaction_client/NativeInteractionClient.mjs.map +1 -1
  56. package/dist/interaction_client/PopupClient.d.ts +1 -2
  57. package/dist/interaction_client/PopupClient.d.ts.map +1 -1
  58. package/dist/interaction_client/PopupClient.mjs +9 -22
  59. package/dist/interaction_client/PopupClient.mjs.map +1 -1
  60. package/dist/interaction_client/RedirectClient.d.ts.map +1 -1
  61. package/dist/interaction_client/RedirectClient.mjs +11 -19
  62. package/dist/interaction_client/RedirectClient.mjs.map +1 -1
  63. package/dist/interaction_client/SilentAuthCodeClient.d.ts.map +1 -1
  64. package/dist/interaction_client/SilentAuthCodeClient.mjs +3 -5
  65. package/dist/interaction_client/SilentAuthCodeClient.mjs.map +1 -1
  66. package/dist/interaction_client/SilentCacheClient.mjs +1 -1
  67. package/dist/interaction_client/SilentIframeClient.d.ts.map +1 -1
  68. package/dist/interaction_client/SilentIframeClient.mjs +4 -9
  69. package/dist/interaction_client/SilentIframeClient.mjs.map +1 -1
  70. package/dist/interaction_client/SilentRefreshClient.d.ts.map +1 -1
  71. package/dist/interaction_client/SilentRefreshClient.mjs +2 -12
  72. package/dist/interaction_client/SilentRefreshClient.mjs.map +1 -1
  73. package/dist/interaction_client/StandardInteractionClient.mjs +1 -1
  74. package/dist/interaction_handler/InteractionHandler.d.ts +6 -13
  75. package/dist/interaction_handler/InteractionHandler.d.ts.map +1 -1
  76. package/dist/interaction_handler/InteractionHandler.mjs +29 -56
  77. package/dist/interaction_handler/InteractionHandler.mjs.map +1 -1
  78. package/dist/interaction_handler/RedirectHandler.d.ts +14 -7
  79. package/dist/interaction_handler/RedirectHandler.d.ts.map +1 -1
  80. package/dist/interaction_handler/RedirectHandler.mjs +28 -9
  81. package/dist/interaction_handler/RedirectHandler.mjs.map +1 -1
  82. package/dist/interaction_handler/SilentHandler.mjs +1 -1
  83. package/dist/naa/BridgeError.mjs +1 -1
  84. package/dist/naa/BridgeProxy.mjs +1 -1
  85. package/dist/naa/BridgeStatusCode.mjs +1 -1
  86. package/dist/naa/mapping/NestedAppAuthAdapter.mjs +1 -1
  87. package/dist/navigation/NavigationClient.mjs +1 -1
  88. package/dist/network/FetchClient.mjs +1 -1
  89. package/dist/operatingcontext/BaseOperatingContext.mjs +1 -1
  90. package/dist/operatingcontext/StandardOperatingContext.mjs +1 -1
  91. package/dist/operatingcontext/TeamsAppOperatingContext.mjs +1 -1
  92. package/dist/operatingcontext/UnknownOperatingContext.mjs +1 -1
  93. package/dist/packageMetadata.d.ts +1 -1
  94. package/dist/packageMetadata.mjs +2 -2
  95. package/dist/telemetry/BrowserPerformanceClient.mjs +1 -1
  96. package/dist/telemetry/BrowserPerformanceMeasurement.mjs +1 -1
  97. package/dist/utils/BrowserConstants.mjs +1 -1
  98. package/dist/utils/BrowserProtocolUtils.mjs +1 -1
  99. package/dist/utils/BrowserUtils.mjs +1 -1
  100. package/lib/msal-browser.cjs +18564 -61
  101. package/lib/msal-browser.cjs.map +1 -1
  102. package/lib/msal-browser.js +2828 -3394
  103. package/lib/msal-browser.js.map +1 -1
  104. package/lib/msal-browser.min.js +67 -66
  105. package/package.json +2 -2
  106. package/src/app/PublicClientApplication.ts +4 -3
  107. package/src/app/PublicClientNext.ts +7 -5
  108. package/src/cache/BrowserCacheManager.ts +22 -40
  109. package/src/cache/TokenCache.ts +5 -4
  110. package/src/controllers/ControllerFactory.ts +30 -49
  111. package/src/controllers/IController.ts +0 -6
  112. package/src/controllers/StandardController.ts +42 -46
  113. package/src/interaction_client/NativeInteractionClient.ts +4 -3
  114. package/src/interaction_client/PopupClient.ts +39 -60
  115. package/src/interaction_client/RedirectClient.ts +41 -46
  116. package/src/interaction_client/SilentAuthCodeClient.ts +1 -12
  117. package/src/interaction_client/SilentIframeClient.ts +2 -18
  118. package/src/interaction_client/SilentRefreshClient.ts +5 -19
  119. package/src/interaction_handler/InteractionHandler.ts +34 -104
  120. package/src/interaction_handler/RedirectHandler.ts +48 -22
  121. package/src/packageMetadata.ts +1 -1
@@ -1,6 +1,6 @@
1
- /*! @azure/msal-browser v3.3.0 2023-10-20 */
1
+ /*! @azure/msal-browser v3.4.0 2023-10-30 */
2
2
  'use strict';
3
- import { PerformanceEvents, Constants, AuthError, UrlString, ProtocolUtils, ThrottlingUtils, ProtocolMode } from '@azure/msal-common';
3
+ import { invokeAsync, PerformanceEvents, AuthError, UrlString, Constants, ProtocolUtils, ThrottlingUtils, ProtocolMode } from '@azure/msal-common';
4
4
  import { StandardInteractionClient } from './StandardInteractionClient.mjs';
5
5
  import { InteractionType, ApiId, TemporaryCacheKeys } from '../utils/BrowserConstants.mjs';
6
6
  import { RedirectHandler } from '../interaction_handler/RedirectHandler.mjs';
@@ -25,9 +25,8 @@ class RedirectClient extends StandardInteractionClient {
25
25
  * @param request
26
26
  */
27
27
  async acquireToken(request) {
28
- this.performanceClient.setPreQueueTime(PerformanceEvents.StandardInteractionClientInitializeAuthorizationRequest, request.correlationId);
29
- const validRequest = await this.initializeAuthorizationRequest(request, InteractionType.Redirect);
30
- this.browserStorage.updateCacheEntries(validRequest.state, validRequest.nonce, validRequest.authority, validRequest.loginHint || Constants.EMPTY_STRING, validRequest.account || null);
28
+ const validRequest = await invokeAsync(this.initializeAuthorizationRequest.bind(this), PerformanceEvents.StandardInteractionClientInitializeAuthorizationRequest, this.logger, this.performanceClient, this.correlationId)(request, InteractionType.Redirect);
29
+ this.browserStorage.updateCacheEntries(validRequest.state, validRequest.nonce, validRequest.authority, validRequest.loginHint || "", validRequest.account || null);
31
30
  const serverTelemetryManager = this.initializeServerTelemetryManager(ApiId.acquireTokenRedirect);
32
31
  const handleBackButton = (event) => {
33
32
  // Clear temporary cache if the back button is clicked during the redirect flow.
@@ -39,14 +38,11 @@ class RedirectClient extends StandardInteractionClient {
39
38
  };
40
39
  try {
41
40
  // Create auth code request and generate PKCE params
42
- this.performanceClient.setPreQueueTime(PerformanceEvents.StandardInteractionClientInitializeAuthorizationCodeRequest, request.correlationId);
43
- const authCodeRequest = await this.initializeAuthorizationCodeRequest(validRequest);
41
+ const authCodeRequest = await invokeAsync(this.initializeAuthorizationCodeRequest.bind(this), PerformanceEvents.StandardInteractionClientInitializeAuthorizationCodeRequest, this.logger, this.performanceClient, this.correlationId)(validRequest);
44
42
  // Initialize the client
45
- this.performanceClient.setPreQueueTime(PerformanceEvents.StandardInteractionClientCreateAuthCodeClient, request.correlationId);
46
- const authClient = await this.createAuthCodeClient(serverTelemetryManager, validRequest.authority, validRequest.azureCloudOptions);
47
- this.logger.verbose("Auth code client created");
43
+ const authClient = await invokeAsync(this.createAuthCodeClient.bind(this), PerformanceEvents.StandardInteractionClientCreateAuthCodeClient, this.logger, this.performanceClient, this.correlationId)(serverTelemetryManager, validRequest.authority, validRequest.azureCloudOptions);
48
44
  // Create redirect interaction handler.
49
- const interactionHandler = new RedirectHandler(authClient, this.browserStorage, authCodeRequest, this.logger, this.browserCrypto, this.performanceClient);
45
+ const interactionHandler = new RedirectHandler(authClient, this.browserStorage, authCodeRequest, this.logger, this.performanceClient);
50
46
  // Create acquire token url.
51
47
  const navigateUrl = await authClient.getAuthCodeUrl({
52
48
  ...validRequest,
@@ -223,12 +219,10 @@ class RedirectClient extends StandardInteractionClient {
223
219
  if (!currentAuthority) {
224
220
  throw createBrowserAuthError(noCachedAuthorityError);
225
221
  }
226
- this.performanceClient.setPreQueueTime(PerformanceEvents.StandardInteractionClientCreateAuthCodeClient, cachedRequest.correlationId);
227
- const authClient = await this.createAuthCodeClient(serverTelemetryManager, currentAuthority);
228
- this.logger.verbose("Auth code client created");
222
+ const authClient = await invokeAsync(this.createAuthCodeClient.bind(this), PerformanceEvents.StandardInteractionClientCreateAuthCodeClient, this.logger, this.performanceClient, this.correlationId)(serverTelemetryManager, currentAuthority);
229
223
  ThrottlingUtils.removeThrottle(this.browserStorage, this.config.auth.clientId, cachedRequest);
230
- const interactionHandler = new RedirectHandler(authClient, this.browserStorage, cachedRequest, this.logger, this.browserCrypto, this.performanceClient);
231
- return await interactionHandler.handleCodeResponseFromHash(hash, state, authClient.authority, this.networkClient);
224
+ const interactionHandler = new RedirectHandler(authClient, this.browserStorage, cachedRequest, this.logger, this.performanceClient);
225
+ return await interactionHandler.handleCodeResponseFromHash(hash, state);
232
226
  }
233
227
  /**
234
228
  * Use to log out the current user, and redirect the user to the postLogoutRedirectUri.
@@ -248,9 +242,7 @@ class RedirectClient extends StandardInteractionClient {
248
242
  timeout: this.config.system.redirectNavigationTimeout,
249
243
  noHistory: false,
250
244
  };
251
- this.performanceClient.setPreQueueTime(PerformanceEvents.StandardInteractionClientCreateAuthCodeClient, validLogoutRequest.correlationId);
252
- const authClient = await this.createAuthCodeClient(serverTelemetryManager, logoutRequest && logoutRequest.authority);
253
- this.logger.verbose("Auth code client created");
245
+ const authClient = await invokeAsync(this.createAuthCodeClient.bind(this), PerformanceEvents.StandardInteractionClientCreateAuthCodeClient, this.logger, this.performanceClient, this.correlationId)(serverTelemetryManager, logoutRequest && logoutRequest.authority);
254
246
  if (authClient.authority.protocolMode === ProtocolMode.OIDC) {
255
247
  try {
256
248
  authClient.authority.endSessionEndpoint;
@@ -1 +1 @@
1
- {"version":3,"file":"RedirectClient.mjs","sources":["../../src/interaction_client/RedirectClient.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;;AAKA;AAgBA;AAQA;AAOA;AAuCI,MAAA,cAAA,SAAA,yBAAA,CAAA;;;AAGG,QAAA,IAAA,CAAA,aAAA,GAAA,iBAAA,CAAA;KACe;AAuGlB;;;;;AAKG,QAAA,IAAA,CAAA,iBAAA,CAAA,eAAA,CAAA,iBAAA,CAAA,uDAAA,EAAA,OAAA,CAAA,aAAA,CAAA,CAAA;QACwB,MAAA,YACvB,GAAI,MAAG,IAAM,CACd,8BAA4B,CAAG,OAAK,EAAA,eAAA,CAAA,QAAA,CAAA,CAAA;AAkKvC,QAAA,IAAA,CAAA,cAAA,CAAA,kBAAA,CAAA,YAAA,CAAA,KAAA,EAAA,YAAA,CAAA,KAAA,EAAA,YAAA,CAAA,SAAA,EAAA,YAAA,CAAA,SAAA,IAAA,SAAA,CAAA,YAAA,EAAA,YAAA,CAAA,OAAA,IAAA,IAAA,CAAA,CAAA;;;;AAIG,YAAA,IAAA,KAAA,CAAA,SAAA,EAAA;0GAC2D,CAAA,CAAA;AA4B9D,gBAAA,IAAA,CAAA,cAAA,CAAA,mBAAA,CAAA,YAAA,CAAA,KAAA,CAAA,CAAA;;;;AAIG,QAAA,IAAA;AACa;AAsFhB,YAAA,IAAA,CAAA,iBAAA,CAAA,eAAA,CAAA,iBAAA,CAAA,2DAAA,EAAA,OAAA,CAAA,aAAA,CAAA,CAAA;;;;AAIG,YAAA,MAAA,UAAA,GAAA,MAAA,IAAA,CAAA,oBAAA,CAAA,sBAAA,EAAA,YAAA,CAAA,SAAA,EAAA,YAAA,CAAA,iBAAA,CAAA,CAAA;wBACuB,kCAA+B,CAAI,CAAC;AA2H9D;;;AAGG,YAAA,MAAA,WAAA,GAAA,MAAA,UAAA,CAAA,cAAA,CAAA;;AAQN,gBAAA,YAAA,EAAA,oBAAA,CAAA,iBAAA,CAAA,IAAA,CAAA,MAAA,EAAA,IAAA,CAAA,MAAA,EAAA,IAAA,CAAA,oBAAA,EAAA,OAAA,CAAA,oBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"RedirectClient.mjs","sources":["../../src/interaction_client/RedirectClient.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;;AAKA;AAiBA;AAQA;AAOA;AAuCI,MAAA,cAAA,SAAA,yBAAA,CAAA;;;AAGG,QAAA,IAAA,CAAA,aAAA,GAAA,iBAAA,CAAA;KACe;AAwGlB;;;;;AAKG,QAAA,MAAA,YAAA,GAAA,MAAA,WAAA,CAAA,IAAA,CAAA,8BAAA,CAAA,IAAA,CAAA,IAAA,CAAA,EAAA,iBAAA,CAAA,uDAAA,EAAA,IAAA,CAAA,MAAA,EAAA,IAAA,CAAA,iBAAA,EAAA,IAAA,CAAA,aAAA,CAAA,CAAA,OAAA,EAAA,eAAA,CAAA,QAAA,CAAA,CAAA;QACwB,IAAA,CAAA,cACnB,CAAA,kBACL,CAAA,YAAQ,CAAA,KAAA,EAAA,YAA4B,CAAA,KAAA,EAAA,YAAA,CAAA,SAAA,EAAA,YAAA,CAAA,SAAA,IAAA,EAAA,EAAA,YAAA,CAAA,OAAA,IAAA,IAAA,CAAA,CAAA;AAkKvC,QAAA,MAAA,sBAAA,GAAA,IAAA,CAAA,gCAAA,CAAA,KAAA,CAAA,oBAAA,CAAA,CAAA;;;;AAIG,gBAAA,IAAA,CAAA,MAAA,CAAA,OAAA,CAAA,sEAAA,CAAA,CAAA;uDACoD,CAAA,YAAO,CAAA,KAAA,CAAA,CAAA;AA4B9D,gBAAA,IAAA,CAAA,YAAA,CAAA,SAAA,CAAA,SAAA,CAAA,oBAAA,EAAA,eAAA,CAAA,QAAA,CAAA,CAAA;;;;AAIG;AACa,YAAA,MAAA,eACA,GAAA,iBAEZ,CAAA,IAAA,CAAA,kCAA8C,CAAA,IAAA,CAAA,IAC/C,CAAO,EAAA,6EAAsB,EAAA,IAAA,CAAA,MAAA,EAAA,IAAA,CAAA,iBAAA,EAAA,IAAA,CAAA,aAAA,CAAA,CAAA,YAAA,CAAA,CAAA;AA4EhC;;;;AAIG;gDAC8C,CAAA,cAAa,CAAA;AA0H9D,gBAAA,GAAA,YAAA;;;AAGG,YAAA,MAAA,iBAAA,GAAA,IAAA,CAAA,oBAAA,CAAA,OAAA,CAAA,iBAAA,CAAA,CAAA;YACM,sBAAqB,CAAC,CAAA,qBAAmB,EAAA,iBAAe,CAAA,CAAA,CAAA,CAAA;AAOpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"SilentAuthCodeClient.d.ts","sourceRoot":"","sources":["../../src/interaction_client/SilentAuthCodeClient.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,OAAO,EACP,MAAM,EAIN,kBAAkB,EAGrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAExE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAKpE,OAAO,EAAmB,KAAK,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAE/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AACnF,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAGxE,qBAAa,oBAAqB,SAAQ,yBAAyB;IAC/D,OAAO,CAAC,KAAK,CAAQ;gBAGjB,MAAM,EAAE,oBAAoB,EAC5B,WAAW,EAAE,mBAAmB,EAChC,aAAa,EAAE,OAAO,EACtB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,YAAY,EAC1B,gBAAgB,EAAE,iBAAiB,EACnC,KAAK,EAAE,KAAK,EACZ,iBAAiB,EAAE,kBAAkB,EACrC,oBAAoB,CAAC,EAAE,oBAAoB,EAC3C,aAAa,CAAC,EAAE,MAAM;IAgB1B;;;OAGG;IACG,YAAY,CACd,OAAO,EAAE,wBAAwB,GAClC,OAAO,CAAC,oBAAoB,CAAC;IAuFhC;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAQ1B"}
1
+ {"version":3,"file":"SilentAuthCodeClient.d.ts","sourceRoot":"","sources":["../../src/interaction_client/SilentAuthCodeClient.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,OAAO,EACP,MAAM,EAGN,kBAAkB,EAGrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAExE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAKpE,OAAO,EAAmB,KAAK,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAE/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AACnF,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAGxE,qBAAa,oBAAqB,SAAQ,yBAAyB;IAC/D,OAAO,CAAC,KAAK,CAAQ;gBAGjB,MAAM,EAAE,oBAAoB,EAC5B,WAAW,EAAE,mBAAmB,EAChC,aAAa,EAAE,OAAO,EACtB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,YAAY,EAC1B,gBAAgB,EAAE,iBAAiB,EACnC,KAAK,EAAE,KAAK,EACZ,iBAAiB,EAAE,kBAAkB,EACrC,oBAAoB,CAAC,EAAE,oBAAoB,EAC3C,aAAa,CAAC,EAAE,MAAM;IAgB1B;;;OAGG;IACG,YAAY,CACd,OAAO,EAAE,wBAAwB,GAClC,OAAO,CAAC,oBAAoB,CAAC;IA6EhC;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAQ1B"}
@@ -1,6 +1,6 @@
1
- /*! @azure/msal-browser v3.3.0 2023-10-20 */
1
+ /*! @azure/msal-browser v3.4.0 2023-10-30 */
2
2
  'use strict';
3
- import { invokeAsync, PerformanceEvents, Constants, AuthError } from '@azure/msal-common';
3
+ import { invokeAsync, PerformanceEvents, AuthError } 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';
@@ -28,7 +28,6 @@ class SilentAuthCodeClient extends StandardInteractionClient {
28
28
  }
29
29
  // Create silent request
30
30
  const silentRequest = await invokeAsync(this.initializeAuthorizationRequest.bind(this), PerformanceEvents.StandardInteractionClientInitializeAuthorizationRequest, this.logger, this.performanceClient, request.correlationId)(request, InteractionType.Silent);
31
- this.browserStorage.updateCacheEntries(silentRequest.state, silentRequest.nonce, silentRequest.authority, silentRequest.loginHint || Constants.EMPTY_STRING, silentRequest.account || null);
32
31
  const serverTelemetryManager = this.initializeServerTelemetryManager(this.apiId);
33
32
  try {
34
33
  // Create auth code request (PKCE not needed)
@@ -48,14 +47,13 @@ class SilentAuthCodeClient extends StandardInteractionClient {
48
47
  msgraph_host: request.msGraphHost,
49
48
  cloud_graph_host_name: request.cloudGraphHostName,
50
49
  cloud_instance_host_name: request.cloudInstanceHostName,
51
- }, silentRequest.state, authClient.authority, this.networkClient, false);
50
+ }, silentRequest, false);
52
51
  }
53
52
  catch (e) {
54
53
  if (e instanceof AuthError) {
55
54
  e.setCorrelationId(this.correlationId);
56
55
  serverTelemetryManager.cacheFailedRequest(e);
57
56
  }
58
- this.browserStorage.cleanRequestByState(silentRequest.state);
59
57
  throw e;
60
58
  }
61
59
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SilentAuthCodeClient.mjs","sources":["../../src/interaction_client/SilentAuthCodeClient.ts"],"sourcesContent":[null],"names":["BrowserAuthErrorCodes.authCodeRequired"],"mappings":";;;;;;;;;;AAKA;AAUA;AAEA;AACA;AAca,MAAA,oBAAA,kCAAsD,CAAA;IAC/D,kBAAqB,EAAA,WAAA,EAAA,aAAA,EAAA,MAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,aAAA,EAAA;AAGjB,QAAA,KAAA,CAAA,MAAA,EAAM,WAAsB,EAAA,aACjB,EAAA,MAAA,EAAA,8BACX,EAAA,iBACM,EAAA,oBACN,EAAA,aAA0B,CAAA,CAAA;AAqB9B,QAAA,IAAA,CAAA,KAAA,GAAA,KAAA,CAAA;;;AAGG;;AA0FH;;AAEG;AACH,QAAA,IAAU,CAAA,OAAA,CAAO,IAAC,EAAK;AAQ1B,YAAA,MAAA,sBAAA,CAAAA,gBAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"SilentAuthCodeClient.mjs","sources":["../../src/interaction_client/SilentAuthCodeClient.ts"],"sourcesContent":[null],"names":["BrowserAuthErrorCodes.authCodeRequired"],"mappings":";;;;;;;;;;AAKA;AASA;AAEA;AACA;AAca,MAAA,oBAAA,kCAAsD,CAAA;IAC/D,kBAAqB,EAAA,WAAA,EAAA,aAAA,EAAA,MAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,aAAA,EAAA;AAGjB,QAAA,KAAA,CAAA,MAAA,EAAM,WAAsB,EAAA,aACjB,EAAA,MAAA,EAAA,8BACX,EAAA,iBACM,EAAA,oBACN,EAAA,aAA0B,CAAA,CAAA;AAqB9B,QAAA,IAAA,CAAA,KAAA,GAAA,KAAA,CAAA;;;AAGG;;AAgFH;;AAEG;AACH,QAAA,IAAU,CAAA,OAAA,CAAO,IAAC,EAAK;AAQ1B,YAAA,MAAA,sBAAA,CAAAA,gBAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,4 @@
1
- /*! @azure/msal-browser v3.3.0 2023-10-20 */
1
+ /*! @azure/msal-browser v3.4.0 2023-10-30 */
2
2
  'use strict';
3
3
  import { StandardInteractionClient } from './StandardInteractionClient.mjs';
4
4
  import { PerformanceEvents, invokeAsync, SilentFlowClient } from '@azure/msal-common';
@@ -1 +1 @@
1
- {"version":3,"file":"SilentIframeClient.d.ts","sourceRoot":"","sources":["../../src/interaction_client/SilentIframeClient.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,OAAO,EACP,MAAM,EAGN,uBAAuB,EAMvB,kBAAkB,EAGrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAKpE,OAAO,EAAmB,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAKnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAEnF,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAIxE,qBAAa,kBAAmB,SAAQ,yBAAyB;IAC7D,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;IACvB,SAAS,CAAC,aAAa,EAAE,mBAAmB,CAAC;gBAGzC,MAAM,EAAE,oBAAoB,EAC5B,WAAW,EAAE,mBAAmB,EAChC,aAAa,EAAE,OAAO,EACtB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,YAAY,EAC1B,gBAAgB,EAAE,iBAAiB,EACnC,KAAK,EAAE,KAAK,EACZ,iBAAiB,EAAE,kBAAkB,EACrC,iBAAiB,EAAE,mBAAmB,EACtC,oBAAoB,CAAC,EAAE,oBAAoB,EAC3C,aAAa,CAAC,EAAE,MAAM;IAiB1B;;;OAGG;IACG,YAAY,CACd,OAAO,EAAE,gBAAgB,GAC1B,OAAO,CAAC,oBAAoB,CAAC;IAqFhC;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IASvB;;;;;OAKG;cACa,iBAAiB,CAC7B,UAAU,EAAE,uBAAuB,EACnC,aAAa,EAAE,uBAAuB,GACvC,OAAO,CAAC,oBAAoB,CAAC;CAsJnC"}
1
+ {"version":3,"file":"SilentIframeClient.d.ts","sourceRoot":"","sources":["../../src/interaction_client/SilentIframeClient.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,OAAO,EACP,MAAM,EAGN,uBAAuB,EAKvB,kBAAkB,EAGrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAKpE,OAAO,EAAmB,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAKnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAEnF,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAIxE,qBAAa,kBAAmB,SAAQ,yBAAyB;IAC7D,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;IACvB,SAAS,CAAC,aAAa,EAAE,mBAAmB,CAAC;gBAGzC,MAAM,EAAE,oBAAoB,EAC5B,WAAW,EAAE,mBAAmB,EAChC,aAAa,EAAE,OAAO,EACtB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,YAAY,EAC1B,gBAAgB,EAAE,iBAAiB,EACnC,KAAK,EAAE,KAAK,EACZ,iBAAiB,EAAE,kBAAkB,EACrC,iBAAiB,EAAE,mBAAmB,EACtC,oBAAoB,CAAC,EAAE,oBAAoB,EAC3C,aAAa,CAAC,EAAE,MAAM;IAiB1B;;;OAGG;IACG,YAAY,CACd,OAAO,EAAE,gBAAgB,GAC1B,OAAO,CAAC,oBAAoB,CAAC;IA6EhC;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IASvB;;;;;OAKG;cACa,iBAAiB,CAC7B,UAAU,EAAE,uBAAuB,EACnC,aAAa,EAAE,uBAAuB,GACvC,OAAO,CAAC,oBAAoB,CAAC;CA+InC"}
@@ -1,6 +1,6 @@
1
- /*! @azure/msal-browser v3.3.0 2023-10-20 */
1
+ /*! @azure/msal-browser v3.4.0 2023-10-30 */
2
2
  'use strict';
3
- import { PerformanceEvents, PromptValue, invokeAsync, Constants, AuthError, UrlString, ProtocolUtils } from '@azure/msal-common';
3
+ import { PerformanceEvents, PromptValue, invokeAsync, 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';
@@ -45,7 +45,6 @@ class SilentIframeClient extends StandardInteractionClient {
45
45
  prompt: request.prompt || PromptValue.NONE,
46
46
  }, InteractionType.Silent);
47
47
  preconnect(silentRequest.authority);
48
- this.browserStorage.updateCacheEntries(silentRequest.state, silentRequest.nonce, silentRequest.authority, silentRequest.loginHint || Constants.EMPTY_STRING, silentRequest.account || null);
49
48
  const serverTelemetryManager = this.initializeServerTelemetryManager(this.apiId);
50
49
  try {
51
50
  // Initialize the client
@@ -57,7 +56,6 @@ class SilentIframeClient extends StandardInteractionClient {
57
56
  e.setCorrelationId(this.correlationId);
58
57
  serverTelemetryManager.cacheFailedRequest(e);
59
58
  }
60
- this.browserStorage.cleanRequestByState(silentRequest.state);
61
59
  throw e;
62
60
  }
63
61
  }
@@ -102,24 +100,21 @@ class SilentIframeClient extends StandardInteractionClient {
102
100
  }
103
101
  // Deserialize hash fragment response parameters.
104
102
  const serverParams = UrlString.getDeserializedHash(hash);
105
- const state = this.validateAndExtractStateFromHash(serverParams, InteractionType.Silent, correlationId);
106
103
  if (serverParams.accountId) {
107
104
  this.logger.verbose("Account id found in hash, calling WAM for token");
108
105
  if (!this.nativeMessageHandler) {
109
106
  throw createBrowserAuthError(nativeConnectionNotEstablished);
110
107
  }
111
108
  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);
112
- const { userRequestState } = ProtocolUtils.parseRequestState(this.browserCrypto, state);
109
+ const { userRequestState } = ProtocolUtils.parseRequestState(this.browserCrypto, silentRequest.state);
113
110
  return invokeAsync(nativeInteractionClient.acquireToken.bind(nativeInteractionClient), PerformanceEvents.NativeInteractionClientAcquireToken, this.logger, this.performanceClient, correlationId)({
114
111
  ...silentRequest,
115
112
  state: userRequestState,
116
113
  prompt: silentRequest.prompt || PromptValue.NONE,
117
- }).finally(() => {
118
- this.browserStorage.cleanRequestByState(state);
119
114
  });
120
115
  }
121
116
  // Handle response from hash string
122
- return invokeAsync(interactionHandler.handleCodeResponseFromHash.bind(interactionHandler), PerformanceEvents.HandleCodeResponseFromHash, this.logger, this.performanceClient, correlationId)(hash, state, authClient.authority, this.networkClient);
117
+ return invokeAsync(interactionHandler.handleCodeResponseFromHash.bind(interactionHandler), PerformanceEvents.HandleCodeResponseFromHash, this.logger, this.performanceClient, correlationId)(hash, silentRequest);
123
118
  }
124
119
  }
125
120
 
@@ -1 +1 @@
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
+ {"version":3,"file":"SilentIframeClient.mjs","sources":["../../src/interaction_client/SilentIframeClient.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;;AAKA;AAcA;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;;AAgFH;;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;AAkJnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -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,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
+ {"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;IA0ChC;;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,4 +1,4 @@
1
- /*! @azure/msal-browser v3.3.0 2023-10-20 */
1
+ /*! @azure/msal-browser v3.4.0 2023-10-30 */
2
2
  'use strict';
3
3
  import { StandardInteractionClient } from './StandardInteractionClient.mjs';
4
4
  import { PerformanceEvents, invokeAsync, RefreshTokenClient } from '@azure/msal-common';
@@ -24,18 +24,8 @@ class SilentRefreshClient extends StandardInteractionClient {
24
24
  };
25
25
  const serverTelemetryManager = this.initializeServerTelemetryManager(ApiId.acquireTokenSilent_silentFlow);
26
26
  const refreshTokenClient = await this.createRefreshTokenClient(serverTelemetryManager, silentRequest.authority, silentRequest.azureCloudOptions);
27
- this.logger.verbose("Refresh token client created");
28
27
  // Send request to renew token. Auth module will throw errors if token cannot be renewed.
29
- return invokeAsync(refreshTokenClient.acquireTokenByRefreshToken.bind(refreshTokenClient), PerformanceEvents.RefreshTokenClientAcquireTokenByRefreshToken, this.logger, this.performanceClient, request.correlationId)(silentRequest)
30
- .then((result) => result)
31
- .then((result) => {
32
- this.performanceClient.addFields({
33
- fromCache: result.fromCache,
34
- requestId: result.requestId,
35
- }, request.correlationId);
36
- return result;
37
- })
38
- .catch((e) => {
28
+ return invokeAsync(refreshTokenClient.acquireTokenByRefreshToken.bind(refreshTokenClient), PerformanceEvents.RefreshTokenClientAcquireTokenByRefreshToken, this.logger, this.performanceClient, request.correlationId)(silentRequest).catch((e) => {
39
29
  e.setCorrelationId(this.correlationId);
40
30
  serverTelemetryManager.cacheFailedRequest(e);
41
31
  throw e;
@@ -1 +1 @@
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
+ {"version":3,"file":"SilentRefreshClient.mjs","sources":["../../src/interaction_client/SilentRefreshClient.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;AAKA;AACA;AAcA;AAEA;AAKsB,MAAA,mBACL,SAAA;AA2Cb;;AAEG;AACH;AASA,IAAA,MAAA,YAAA,CAAA,OAAA,EAAA;;;;AAIG,YAAA,GAAA,OAAA;AACa,YAAA,GAAA,WAAA;AAenB,SAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,4 @@
1
- /*! @azure/msal-browser v3.3.0 2023-10-20 */
1
+ /*! @azure/msal-browser v3.4.0 2023-10-30 */
2
2
  'use strict';
3
3
  import { PerformanceEvents, invokeAsync, Constants, UrlString, AuthorizationCodeClient, Authority, AuthorityFactory, ProtocolUtils } from '@azure/msal-common';
4
4
  import { BaseInteractionClient } from './BaseInteractionClient.mjs';
@@ -1,7 +1,7 @@
1
- import { AuthorizationCodePayload, CommonAuthorizationCodeRequest, AuthorizationCodeClient, Authority, INetworkModule, CcsCredential, Logger, IPerformanceClient } from "@azure/msal-common";
1
+ import { AuthorizationCodePayload, CommonAuthorizationCodeRequest, AuthorizationCodeClient, CcsCredential, Logger, IPerformanceClient } from "@azure/msal-common";
2
2
  import { BrowserCacheManager } from "../cache/BrowserCacheManager";
3
3
  import { AuthenticationResult } from "../response/AuthenticationResult";
4
- export type InteractionParams = {};
4
+ import { AuthorizationUrlRequest } from "../request/AuthorizationUrlRequest";
5
5
  /**
6
6
  * Abstract class which defines operations for a browser interaction handling class.
7
7
  */
@@ -16,7 +16,7 @@ export declare class InteractionHandler {
16
16
  * Function to handle response parameters from hash.
17
17
  * @param locationHash
18
18
  */
19
- handleCodeResponseFromHash(locationHash: string, state: string, authority: Authority, networkModule: INetworkModule): Promise<AuthenticationResult>;
19
+ handleCodeResponseFromHash(locationHash: string, request: AuthorizationUrlRequest): Promise<AuthenticationResult>;
20
20
  /**
21
21
  * Process auth code response from AAD
22
22
  * @param authCodeResponse
@@ -25,17 +25,10 @@ export declare class InteractionHandler {
25
25
  * @param networkModule
26
26
  * @returns
27
27
  */
28
- handleCodeResponseFromServer(authCodeResponse: AuthorizationCodePayload, state: string, authority: Authority, networkModule: INetworkModule, validateNonce?: boolean): Promise<AuthenticationResult>;
28
+ handleCodeResponseFromServer(authCodeResponse: AuthorizationCodePayload, request: AuthorizationUrlRequest, validateNonce?: boolean): Promise<AuthenticationResult>;
29
29
  /**
30
- * Updates authority based on cloudInstanceHostname
31
- * @param cloudInstanceHostname
32
- * @param authority
33
- * @param networkModule
34
- */
35
- protected updateTokenEndpointAuthority(cloudInstanceHostname: string, authority: Authority, networkModule: INetworkModule): Promise<void>;
36
- /**
37
- * Looks up ccs creds in the cache
30
+ * Build ccs creds if available
38
31
  */
39
- protected checkCcsCredentials(): CcsCredential | null;
32
+ protected createCcsCredentials(request: AuthorizationUrlRequest): CcsCredential | null;
40
33
  }
41
34
  //# sourceMappingURL=InteractionHandler.d.ts.map
@@ -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,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
+ {"version":3,"file":"InteractionHandler.d.ts","sourceRoot":"","sources":["../../src/interaction_handler/InteractionHandler.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,wBAAwB,EACxB,8BAA8B,EAC9B,uBAAuB,EACvB,aAAa,EACb,MAAM,EAEN,kBAAkB,EAIrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAKnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAE7E;;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,OAAO,EAAE,uBAAuB,GACjC,OAAO,CAAC,oBAAoB,CAAC;IAuChC;;;;;;;OAOG;IACG,4BAA4B,CAC9B,gBAAgB,EAAE,wBAAwB,EAC1C,OAAO,EAAE,uBAAuB,EAChC,aAAa,GAAE,OAAc,GAC9B,OAAO,CAAC,oBAAoB,CAAC;IAoDhC;;OAEG;IACH,SAAS,CAAC,oBAAoB,CAC1B,OAAO,EAAE,uBAAuB,GACjC,aAAa,GAAG,IAAI;CAe1B"}
@@ -1,8 +1,7 @@
1
- /*! @azure/msal-browser v3.3.0 2023-10-20 */
1
+ /*! @azure/msal-browser v3.4.0 2023-10-30 */
2
2
  'use strict';
3
- import { PerformanceEvents, createClientAuthError, ClientAuthErrorCodes, ServerError, invokeAsync, AuthorityFactory } from '@azure/msal-common';
3
+ import { PerformanceEvents, ServerError, invokeAsync, CcsCredentialType } from '@azure/msal-common';
4
4
  import { createBrowserAuthError } from '../error/BrowserAuthError.mjs';
5
- import { TemporaryCacheKeys } from '../utils/BrowserConstants.mjs';
6
5
  import { hashEmptyError, userCancelled } from '../error/BrowserAuthErrorCodes.mjs';
7
6
 
8
7
  /*
@@ -24,21 +23,15 @@ class InteractionHandler {
24
23
  * Function to handle response parameters from hash.
25
24
  * @param locationHash
26
25
  */
27
- async handleCodeResponseFromHash(locationHash, state, authority, networkModule) {
28
- this.performanceClient.addQueueMeasurement(PerformanceEvents.HandleCodeResponseFromHash, this.authCodeRequest.correlationId);
26
+ async handleCodeResponseFromHash(locationHash, request) {
27
+ this.performanceClient.addQueueMeasurement(PerformanceEvents.HandleCodeResponseFromHash, request.correlationId);
29
28
  // Check that location hash isn't empty.
30
29
  if (!locationHash) {
31
30
  throw createBrowserAuthError(hashEmptyError);
32
31
  }
33
- // Handle code response.
34
- const stateKey = this.browserStorage.generateStateKey(state);
35
- const requestState = this.browserStorage.getTemporaryCache(stateKey);
36
- if (!requestState) {
37
- throw createClientAuthError(ClientAuthErrorCodes.stateNotFound, "Cached State");
38
- }
39
32
  let authCodeResponse;
40
33
  try {
41
- authCodeResponse = this.authModule.handleFragmentResponse(locationHash, requestState);
34
+ authCodeResponse = this.authModule.handleFragmentResponse(locationHash, request.state);
42
35
  }
43
36
  catch (e) {
44
37
  if (e instanceof ServerError &&
@@ -50,7 +43,7 @@ class InteractionHandler {
50
43
  throw e;
51
44
  }
52
45
  }
53
- return invokeAsync(this.handleCodeResponseFromServer.bind(this), PerformanceEvents.HandleCodeResponseFromServer, this.logger, this.performanceClient, this.authCodeRequest.correlationId)(authCodeResponse, state, authority, networkModule);
46
+ return invokeAsync(this.handleCodeResponseFromServer.bind(this), PerformanceEvents.HandleCodeResponseFromServer, this.logger, this.performanceClient, request.correlationId)(authCodeResponse, request);
54
47
  }
55
48
  /**
56
49
  * Process auth code response from AAD
@@ -60,70 +53,50 @@ class InteractionHandler {
60
53
  * @param networkModule
61
54
  * @returns
62
55
  */
63
- async handleCodeResponseFromServer(authCodeResponse, state, authority, networkModule, validateNonce = true) {
64
- this.performanceClient.addQueueMeasurement(PerformanceEvents.HandleCodeResponseFromServer, this.authCodeRequest.correlationId);
56
+ async handleCodeResponseFromServer(authCodeResponse, request, validateNonce = true) {
57
+ this.performanceClient.addQueueMeasurement(PerformanceEvents.HandleCodeResponseFromServer, request.correlationId);
65
58
  this.logger.trace("InteractionHandler.handleCodeResponseFromServer called");
66
- // Handle code response.
67
- const stateKey = this.browserStorage.generateStateKey(state);
68
- const requestState = this.browserStorage.getTemporaryCache(stateKey);
69
- if (!requestState) {
70
- throw createClientAuthError(ClientAuthErrorCodes.stateNotFound, "Cached State");
71
- }
72
- // Get cached items
73
- const nonceKey = this.browserStorage.generateNonceKey(requestState);
74
- const cachedNonce = this.browserStorage.getTemporaryCache(nonceKey);
75
59
  // Assign code to request
76
60
  this.authCodeRequest.code = authCodeResponse.code;
77
61
  // Check for new cloud instance
78
62
  if (authCodeResponse.cloud_instance_host_name) {
79
- await invokeAsync(this.updateTokenEndpointAuthority.bind(this), PerformanceEvents.UpdateTokenEndpointAuthority, this.logger, this.performanceClient, this.authCodeRequest.correlationId)(authCodeResponse.cloud_instance_host_name, authority, networkModule);
63
+ await invokeAsync(this.authModule.updateAuthority.bind(this.authModule), PerformanceEvents.UpdateTokenEndpointAuthority, this.logger, this.performanceClient, request.correlationId)(authCodeResponse.cloud_instance_host_name, request.correlationId);
80
64
  }
81
65
  // Nonce validation not needed when redirect not involved (e.g. hybrid spa, renewing token via rt)
82
66
  if (validateNonce) {
83
- authCodeResponse.nonce = cachedNonce || undefined;
67
+ // TODO: Assigning "response nonce" to "request nonce" is confusing. Refactor the function doing validation to accept request nonce directly
68
+ authCodeResponse.nonce = request.nonce || undefined;
84
69
  }
85
- authCodeResponse.state = requestState;
70
+ authCodeResponse.state = request.state;
86
71
  // Add CCS parameters if available
87
72
  if (authCodeResponse.client_info) {
88
73
  this.authCodeRequest.clientInfo = authCodeResponse.client_info;
89
74
  }
90
75
  else {
91
- const cachedCcsCred = this.checkCcsCredentials();
92
- if (cachedCcsCred) {
93
- this.authCodeRequest.ccsCredential = cachedCcsCred;
76
+ const ccsCred = this.createCcsCredentials(request);
77
+ if (ccsCred) {
78
+ this.authCodeRequest.ccsCredential = ccsCred;
94
79
  }
95
80
  }
96
81
  // Acquire token with retrieved code.
97
- const tokenResponse = (await invokeAsync(this.authModule.acquireToken.bind(this.authModule), PerformanceEvents.AuthClientAcquireToken, this.logger, this.performanceClient, this.authCodeRequest.correlationId)(this.authCodeRequest, authCodeResponse));
98
- this.browserStorage.cleanRequestByState(state);
82
+ const tokenResponse = (await invokeAsync(this.authModule.acquireToken.bind(this.authModule), PerformanceEvents.AuthClientAcquireToken, this.logger, this.performanceClient, request.correlationId)(this.authCodeRequest, authCodeResponse));
99
83
  return tokenResponse;
100
84
  }
101
85
  /**
102
- * Updates authority based on cloudInstanceHostname
103
- * @param cloudInstanceHostname
104
- * @param authority
105
- * @param networkModule
106
- */
107
- async updateTokenEndpointAuthority(cloudInstanceHostname, authority, networkModule) {
108
- this.performanceClient.addQueueMeasurement(PerformanceEvents.UpdateTokenEndpointAuthority, this.authCodeRequest.correlationId);
109
- const cloudInstanceAuthorityUri = `https://${cloudInstanceHostname}/${authority.tenant}/`;
110
- const cloudInstanceAuthority = await AuthorityFactory.createDiscoveredInstance(cloudInstanceAuthorityUri, networkModule, this.browserStorage, authority.options, this.logger, this.performanceClient, this.authCodeRequest.correlationId);
111
- this.authModule.updateAuthority(cloudInstanceAuthority);
112
- }
113
- /**
114
- * Looks up ccs creds in the cache
86
+ * Build ccs creds if available
115
87
  */
116
- checkCcsCredentials() {
117
- // Look up ccs credential in temp cache
118
- const cachedCcsCred = this.browserStorage.getTemporaryCache(TemporaryCacheKeys.CCS_CREDENTIAL, true);
119
- if (cachedCcsCred) {
120
- try {
121
- return JSON.parse(cachedCcsCred);
122
- }
123
- catch (e) {
124
- this.authModule.logger.error("Cache credential could not be parsed");
125
- this.authModule.logger.errorPii(`Cache credential could not be parsed: ${cachedCcsCred}`);
126
- }
88
+ createCcsCredentials(request) {
89
+ if (request.account) {
90
+ return {
91
+ credential: request.account.homeAccountId,
92
+ type: CcsCredentialType.HOME_ACCOUNT_ID,
93
+ };
94
+ }
95
+ else if (request.loginHint) {
96
+ return {
97
+ credential: request.loginHint,
98
+ type: CcsCredentialType.UPN,
99
+ };
127
100
  }
128
101
  return null;
129
102
  }
@@ -1 +1 @@
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
+ {"version":3,"file":"InteractionHandler.mjs","sources":["../../src/interaction_handler/InteractionHandler.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAKA;AAaA;AAKA;AACA;AAIG;AACH;AACI;AACA,MAAS,kBAAiB,CAAA;AAC1B,IAAA,WAAU,CAAA,cAAiB,EAAA,WAAA,EAAA,eAAA,EAA+B,MAAA,EAAA,iBAAA,EAAA;AAC1D,QAAA,IAAA,CAAS,UAAS,GAAA,cAAO,CAAA;AACzB,QAAA,IAAA,CAAS,cAAC,GAAA,WAAmB,CAAA;AAGzB,QAAA,IAAA,CAAA,eAAA,kBAAuC,CAAA;AAa3C,QAAA,IAAA,CAAA,MAAA,GAAA,MAAA,CAAA;;;AAGG;AACG;AA0CN;;;;;;;AAOG,SAAA;AACG,QAAA,IAAA,gBAAA,CAAA;AAwDN,QAAA,IAAA;;AAEG,SAAA;QACM;AAiBZ,YAAA,IAAA,CAAA,YAAA,WAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,17 +1,20 @@
1
- import { AuthorizationCodeClient, CommonAuthorizationCodeRequest, ICrypto, Authority, INetworkModule, Logger, IPerformanceClient } from "@azure/msal-common";
1
+ import { AuthorizationCodeClient, CommonAuthorizationCodeRequest, Logger, IPerformanceClient, CcsCredential } from "@azure/msal-common";
2
2
  import { BrowserCacheManager } from "../cache/BrowserCacheManager";
3
- import { InteractionHandler, InteractionParams } from "./InteractionHandler";
4
3
  import { INavigationClient } from "../navigation/INavigationClient";
5
4
  import { AuthenticationResult } from "../response/AuthenticationResult";
6
- export type RedirectParams = InteractionParams & {
5
+ export type RedirectParams = {
7
6
  navigationClient: INavigationClient;
8
7
  redirectTimeout: number;
9
8
  redirectStartPage: string;
10
9
  onRedirectNavigate?: (url: string) => void | boolean;
11
10
  };
12
- export declare class RedirectHandler extends InteractionHandler {
13
- private browserCrypto;
14
- constructor(authCodeModule: AuthorizationCodeClient, storageImpl: BrowserCacheManager, authCodeRequest: CommonAuthorizationCodeRequest, logger: Logger, browserCrypto: ICrypto, performanceClient: IPerformanceClient);
11
+ export declare class RedirectHandler {
12
+ authModule: AuthorizationCodeClient;
13
+ browserStorage: BrowserCacheManager;
14
+ authCodeRequest: CommonAuthorizationCodeRequest;
15
+ logger: Logger;
16
+ performanceClient: IPerformanceClient;
17
+ constructor(authCodeModule: AuthorizationCodeClient, storageImpl: BrowserCacheManager, authCodeRequest: CommonAuthorizationCodeRequest, logger: Logger, performanceClient: IPerformanceClient);
15
18
  /**
16
19
  * Redirects window to given URL.
17
20
  * @param urlNavigate
@@ -21,6 +24,10 @@ export declare class RedirectHandler extends InteractionHandler {
21
24
  * Handle authorization code response in the window.
22
25
  * @param hash
23
26
  */
24
- handleCodeResponseFromHash(locationHash: string, state: string, authority: Authority, networkModule: INetworkModule): Promise<AuthenticationResult>;
27
+ handleCodeResponseFromHash(locationHash: string, state: string): Promise<AuthenticationResult>;
28
+ /**
29
+ * Looks up ccs creds in the cache
30
+ */
31
+ protected checkCcsCredentials(): CcsCredential | null;
25
32
  }
26
33
  //# sourceMappingURL=RedirectHandler.d.ts.map
@@ -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,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
+ {"version":3,"file":"RedirectHandler.d.ts","sourceRoot":"","sources":["../../src/interaction_handler/RedirectHandler.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,uBAAuB,EACvB,8BAA8B,EAC9B,MAAM,EAEN,kBAAkB,EAGlB,aAAa,EAGhB,MAAM,oBAAoB,CAAC;AAM5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE,MAAM,MAAM,cAAc,GAAG;IACzB,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,eAAe;IACxB,UAAU,EAAE,uBAAuB,CAAC;IACpC,cAAc,EAAE,mBAAmB,CAAC;IACpC,eAAe,EAAE,8BAA8B,CAAC;IAChD,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,kBAAkB,CAAC;gBAGlC,cAAc,EAAE,uBAAuB,EACvC,WAAW,EAAE,mBAAmB,EAChC,eAAe,EAAE,8BAA8B,EAC/C,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,kBAAkB;IASzC;;;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,GACd,OAAO,CAAC,oBAAoB,CAAC;IAqFhC;;OAEG;IACH,SAAS,CAAC,mBAAmB,IAAI,aAAa,GAAG,IAAI;CAoBxD"}
@@ -1,19 +1,21 @@
1
- /*! @azure/msal-browser v3.3.0 2023-10-20 */
1
+ /*! @azure/msal-browser v3.4.0 2023-10-30 */
2
2
  'use strict';
3
- import { createClientAuthError, ClientAuthErrorCodes, ServerError } from '@azure/msal-common';
3
+ import { createClientAuthError, ClientAuthErrorCodes, ServerError, invokeAsync, PerformanceEvents } from '@azure/msal-common';
4
4
  import { createBrowserAuthError } from '../error/BrowserAuthError.mjs';
5
5
  import { TemporaryCacheKeys, ApiId } from '../utils/BrowserConstants.mjs';
6
- import { InteractionHandler } from './InteractionHandler.mjs';
7
6
  import { emptyNavigateUri, hashEmptyError, userCancelled } from '../error/BrowserAuthErrorCodes.mjs';
8
7
 
9
8
  /*
10
9
  * Copyright (c) Microsoft Corporation. All rights reserved.
11
10
  * Licensed under the MIT License.
12
11
  */
13
- class RedirectHandler extends InteractionHandler {
14
- constructor(authCodeModule, storageImpl, authCodeRequest, logger, browserCrypto, performanceClient) {
15
- super(authCodeModule, storageImpl, authCodeRequest, logger, performanceClient);
16
- this.browserCrypto = browserCrypto;
12
+ class RedirectHandler {
13
+ constructor(authCodeModule, storageImpl, authCodeRequest, logger, performanceClient) {
14
+ this.authModule = authCodeModule;
15
+ this.browserStorage = storageImpl;
16
+ this.authCodeRequest = authCodeRequest;
17
+ this.logger = logger;
18
+ this.performanceClient = performanceClient;
17
19
  }
18
20
  /**
19
21
  * Redirects window to given URL.
@@ -69,7 +71,7 @@ class RedirectHandler extends InteractionHandler {
69
71
  * Handle authorization code response in the window.
70
72
  * @param hash
71
73
  */
72
- async handleCodeResponseFromHash(locationHash, state, authority, networkModule) {
74
+ async handleCodeResponseFromHash(locationHash, state) {
73
75
  this.logger.verbose("RedirectHandler.handleCodeResponse called");
74
76
  // Check that location hash isn't empty.
75
77
  if (!locationHash) {
@@ -104,7 +106,7 @@ class RedirectHandler extends InteractionHandler {
104
106
  this.authCodeRequest.code = authCodeResponse.code;
105
107
  // Check for new cloud instance
106
108
  if (authCodeResponse.cloud_instance_host_name) {
107
- await this.updateTokenEndpointAuthority(authCodeResponse.cloud_instance_host_name, authority, networkModule);
109
+ await invokeAsync(this.authModule.updateAuthority.bind(this.authModule), PerformanceEvents.UpdateTokenEndpointAuthority, this.logger, this.performanceClient, this.authCodeRequest.correlationId)(authCodeResponse.cloud_instance_host_name, this.authCodeRequest.correlationId);
108
110
  }
109
111
  authCodeResponse.nonce = cachedNonce || undefined;
110
112
  authCodeResponse.state = requestState;
@@ -123,6 +125,23 @@ class RedirectHandler extends InteractionHandler {
123
125
  this.browserStorage.cleanRequestByState(state);
124
126
  return tokenResponse;
125
127
  }
128
+ /**
129
+ * Looks up ccs creds in the cache
130
+ */
131
+ checkCcsCredentials() {
132
+ // Look up ccs credential in temp cache
133
+ const cachedCcsCred = this.browserStorage.getTemporaryCache(TemporaryCacheKeys.CCS_CREDENTIAL, true);
134
+ if (cachedCcsCred) {
135
+ try {
136
+ return JSON.parse(cachedCcsCred);
137
+ }
138
+ catch (e) {
139
+ this.authModule.logger.error("Cache credential could not be parsed");
140
+ this.authModule.logger.errorPii(`Cache credential could not be parsed: ${cachedCcsCred}`);
141
+ }
142
+ }
143
+ return null;
144
+ }
126
145
  }
127
146
 
128
147
  export { RedirectHandler };
@@ -1 +1 @@
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
+ {"version":3,"file":"RedirectHandler.mjs","sources":["../../src/interaction_handler/RedirectHandler.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;AAKA;AAiBA;AACA;AAEA;AAKqB,MAAA,gBAAQ;IACzB,WAAkB,CAAA,cAAO,aAAa,EAAA,eAAe,EAAA,MAAA,EAAA,iBAAA,EAAA;QACvD,IAAA,CAAA,UAAA,GAAA,cAAA,CAAA;AAEF,QAAA,IAAA,CAAA,cAA4B,GAAA,WAAA,CAAA;QACd,IAAA,CAAA,iCAA0B,CAAA;QACtB,IAAA,CAAA,MAAA;QACC,IAAA,CAAA,sCAAgC;KACzC;;AAIF;AAaJ;;;AAGG,QAAA,IAAA,CAAA,MAAA,CAAA,OAAA,CAAA,4CAAA,CAAA,CAAA;AACG;AAgFN,QAAA,IAAA,UAAA,EAAA;;;AAGG,gBAAA,IAAA,CAAA,MAAA,CAAA,OAAA,CAAA,gFAAA,CAAA,CAAA;AACG,gBAAA,IAAA,CAAA,cACF,CAAA,iBACA,CAAA,kBACD,CAAA,UAAQ,EAAA,MAAA,CAAA,iBAAqB,EAAA,IAAA,CAAA,CAAA;AAqFhC,aAAA;;AAEG,YAAA,IAAA,CAAA,cAAA,CAAA,iBAAA,CAAA,kBAAA,CAAA,cAAA,EAAA,IAAA,CAAA,eAAA,CAAA,aAAA,EAAA,IAAA,CAAA,CAAA;AACH,YAAA,IAAU,CAAA,cAAA,CAAA,gBAAuB,CAAA,IAAgB,CAAI,eAAA,CAAA,CAAA;AAoBxD,YAAA,IAAA,CAAA,MAAA,CAAA,OAAA,CAAA,CAAA,kDAAA,EAAA,UAAA,CAAA,CAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,4 @@
1
- /*! @azure/msal-browser v3.3.0 2023-10-20 */
1
+ /*! @azure/msal-browser v3.4.0 2023-10-30 */
2
2
  'use strict';
3
3
  import { PerformanceEvents, invokeAsync, invoke } from '@azure/msal-common';
4
4
  import { createBrowserAuthError } from '../error/BrowserAuthError.mjs';
@@ -1,4 +1,4 @@
1
- /*! @azure/msal-browser v3.3.0 2023-10-20 */
1
+ /*! @azure/msal-browser v3.4.0 2023-10-30 */
2
2
  'use strict';
3
3
  /*
4
4
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -1,4 +1,4 @@
1
- /*! @azure/msal-browser v3.3.0 2023-10-20 */
1
+ /*! @azure/msal-browser v3.4.0 2023-10-30 */
2
2
  'use strict';
3
3
  /*
4
4
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -1,4 +1,4 @@
1
- /*! @azure/msal-browser v3.3.0 2023-10-20 */
1
+ /*! @azure/msal-browser v3.4.0 2023-10-30 */
2
2
  'use strict';
3
3
  /*
4
4
  * Copyright (c) Microsoft Corporation. All rights reserved.