@azure/msal-browser 3.0.2 → 3.2.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 (280) hide show
  1. package/dist/app/IPublicClientApplication.d.ts +2 -0
  2. package/dist/app/IPublicClientApplication.d.ts.map +1 -1
  3. package/dist/app/IPublicClientApplication.mjs +22 -18
  4. package/dist/app/IPublicClientApplication.mjs.map +1 -1
  5. package/dist/app/PublicClientApplication.d.ts +20 -6
  6. package/dist/app/PublicClientApplication.d.ts.map +1 -1
  7. package/dist/app/PublicClientApplication.mjs +24 -7
  8. package/dist/app/PublicClientApplication.mjs.map +1 -1
  9. package/dist/broker/nativeBroker/NativeMessageHandler.d.ts +3 -4
  10. package/dist/broker/nativeBroker/NativeMessageHandler.d.ts.map +1 -1
  11. package/dist/broker/nativeBroker/NativeMessageHandler.mjs +17 -16
  12. package/dist/broker/nativeBroker/NativeMessageHandler.mjs.map +1 -1
  13. package/dist/broker/nativeBroker/NativeStatusCodes.d.ts +8 -0
  14. package/dist/broker/nativeBroker/NativeStatusCodes.d.ts.map +1 -0
  15. package/dist/broker/nativeBroker/NativeStatusCodes.mjs +16 -0
  16. package/dist/broker/nativeBroker/NativeStatusCodes.mjs.map +1 -0
  17. package/dist/cache/AsyncMemoryStorage.mjs +4 -3
  18. package/dist/cache/AsyncMemoryStorage.mjs.map +1 -1
  19. package/dist/cache/BrowserCacheManager.d.ts +10 -3
  20. package/dist/cache/BrowserCacheManager.d.ts.map +1 -1
  21. package/dist/cache/BrowserCacheManager.mjs +58 -29
  22. package/dist/cache/BrowserCacheManager.mjs.map +1 -1
  23. package/dist/cache/BrowserStorage.d.ts.map +1 -1
  24. package/dist/cache/BrowserStorage.mjs +7 -9
  25. package/dist/cache/BrowserStorage.mjs.map +1 -1
  26. package/dist/cache/CryptoKeyStore.mjs +1 -1
  27. package/dist/cache/CryptoKeyStore.mjs.map +1 -1
  28. package/dist/cache/DatabaseStorage.d.ts.map +1 -1
  29. package/dist/cache/DatabaseStorage.mjs +9 -8
  30. package/dist/cache/DatabaseStorage.mjs.map +1 -1
  31. package/dist/cache/MemoryStorage.mjs +1 -1
  32. package/dist/cache/MemoryStorage.mjs.map +1 -1
  33. package/dist/cache/TokenCache.d.ts.map +1 -1
  34. package/dist/cache/TokenCache.mjs +30 -30
  35. package/dist/cache/TokenCache.mjs.map +1 -1
  36. package/dist/config/Configuration.d.ts +1 -0
  37. package/dist/config/Configuration.d.ts.map +1 -1
  38. package/dist/config/Configuration.mjs +12 -16
  39. package/dist/config/Configuration.mjs.map +1 -1
  40. package/dist/controllers/ControllerFactory.mjs +1 -1
  41. package/dist/controllers/ControllerFactory.mjs.map +1 -1
  42. package/dist/controllers/IController.d.ts +5 -28
  43. package/dist/controllers/IController.d.ts.map +1 -1
  44. package/dist/controllers/StandardController.d.ts +17 -31
  45. package/dist/controllers/StandardController.d.ts.map +1 -1
  46. package/dist/controllers/StandardController.mjs +78 -83
  47. package/dist/controllers/StandardController.mjs.map +1 -1
  48. package/dist/crypto/BrowserCrypto.d.ts +44 -49
  49. package/dist/crypto/BrowserCrypto.d.ts.map +1 -1
  50. package/dist/crypto/BrowserCrypto.mjs +78 -77
  51. package/dist/crypto/BrowserCrypto.mjs.map +1 -1
  52. package/dist/crypto/CryptoOps.d.ts +1 -10
  53. package/dist/crypto/CryptoOps.d.ts.map +1 -1
  54. package/dist/crypto/CryptoOps.mjs +23 -34
  55. package/dist/crypto/CryptoOps.mjs.map +1 -1
  56. package/dist/crypto/PkceGenerator.d.ts +6 -22
  57. package/dist/crypto/PkceGenerator.d.ts.map +1 -1
  58. package/dist/crypto/PkceGenerator.mjs +48 -49
  59. package/dist/crypto/PkceGenerator.mjs.map +1 -1
  60. package/dist/crypto/SignedHttpRequest.mjs +1 -1
  61. package/dist/crypto/SignedHttpRequest.mjs.map +1 -1
  62. package/dist/encode/Base64Decode.d.ts +6 -19
  63. package/dist/encode/Base64Decode.d.ts.map +1 -1
  64. package/dist/encode/Base64Decode.mjs +31 -68
  65. package/dist/encode/Base64Decode.mjs.map +1 -1
  66. package/dist/encode/Base64Encode.d.ts +15 -27
  67. package/dist/encode/Base64Encode.d.ts.map +1 -1
  68. package/dist/encode/Base64Encode.mjs +36 -75
  69. package/dist/encode/Base64Encode.mjs.map +1 -1
  70. package/dist/error/BrowserAuthError.d.ts +63 -195
  71. package/dist/error/BrowserAuthError.d.ts.map +1 -1
  72. package/dist/error/BrowserAuthError.mjs +159 -381
  73. package/dist/error/BrowserAuthError.mjs.map +1 -1
  74. package/dist/error/BrowserAuthErrorCodes.d.ts +46 -0
  75. package/dist/error/BrowserAuthErrorCodes.d.ts.map +1 -0
  76. package/dist/error/BrowserAuthErrorCodes.mjs +54 -0
  77. package/dist/error/BrowserAuthErrorCodes.mjs.map +1 -0
  78. package/dist/error/BrowserConfigurationAuthError.d.ts +9 -46
  79. package/dist/error/BrowserConfigurationAuthError.d.ts.map +1 -1
  80. package/dist/error/BrowserConfigurationAuthError.mjs +20 -73
  81. package/dist/error/BrowserConfigurationAuthError.mjs.map +1 -1
  82. package/dist/error/BrowserConfigurationAuthErrorCodes.d.ts +4 -0
  83. package/dist/error/BrowserConfigurationAuthErrorCodes.d.ts.map +1 -0
  84. package/dist/error/BrowserConfigurationAuthErrorCodes.mjs +12 -0
  85. package/dist/error/BrowserConfigurationAuthErrorCodes.mjs.map +1 -0
  86. package/dist/error/NativeAuthError.d.ts +17 -45
  87. package/dist/error/NativeAuthError.d.ts.map +1 -1
  88. package/dist/error/NativeAuthError.mjs +49 -79
  89. package/dist/error/NativeAuthError.mjs.map +1 -1
  90. package/dist/error/NativeAuthErrorCodes.d.ts +3 -0
  91. package/dist/error/NativeAuthErrorCodes.d.ts.map +1 -0
  92. package/dist/error/NativeAuthErrorCodes.mjs +11 -0
  93. package/dist/error/NativeAuthErrorCodes.mjs.map +1 -0
  94. package/dist/event/EventHandler.d.ts.map +1 -1
  95. package/dist/event/EventHandler.mjs +3 -2
  96. package/dist/event/EventHandler.mjs.map +1 -1
  97. package/dist/event/EventMessage.mjs +1 -1
  98. package/dist/event/EventMessage.mjs.map +1 -1
  99. package/dist/event/EventType.mjs +1 -1
  100. package/dist/event/EventType.mjs.map +1 -1
  101. package/dist/index.d.ts +6 -6
  102. package/dist/index.d.ts.map +1 -1
  103. package/dist/index.mjs +8 -4
  104. package/dist/index.mjs.map +1 -1
  105. package/dist/interaction_client/BaseInteractionClient.d.ts +2 -1
  106. package/dist/interaction_client/BaseInteractionClient.d.ts.map +1 -1
  107. package/dist/interaction_client/BaseInteractionClient.mjs +7 -8
  108. package/dist/interaction_client/BaseInteractionClient.mjs.map +1 -1
  109. package/dist/interaction_client/HybridSpaAuthorizationCodeClient.mjs +1 -1
  110. package/dist/interaction_client/HybridSpaAuthorizationCodeClient.mjs.map +1 -1
  111. package/dist/interaction_client/NativeInteractionClient.d.ts +4 -10
  112. package/dist/interaction_client/NativeInteractionClient.d.ts.map +1 -1
  113. package/dist/interaction_client/NativeInteractionClient.mjs +32 -38
  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 +16 -15
  117. package/dist/interaction_client/PopupClient.mjs.map +1 -1
  118. package/dist/interaction_client/RedirectClient.d.ts.map +1 -1
  119. package/dist/interaction_client/RedirectClient.mjs +7 -6
  120. package/dist/interaction_client/RedirectClient.mjs.map +1 -1
  121. package/dist/interaction_client/SilentAuthCodeClient.d.ts.map +1 -1
  122. package/dist/interaction_client/SilentAuthCodeClient.mjs +9 -11
  123. package/dist/interaction_client/SilentAuthCodeClient.mjs.map +1 -1
  124. package/dist/interaction_client/SilentCacheClient.d.ts +4 -2
  125. package/dist/interaction_client/SilentCacheClient.d.ts.map +1 -1
  126. package/dist/interaction_client/SilentCacheClient.mjs +19 -25
  127. package/dist/interaction_client/SilentCacheClient.mjs.map +1 -1
  128. package/dist/interaction_client/SilentIframeClient.d.ts.map +1 -1
  129. package/dist/interaction_client/SilentIframeClient.mjs +20 -47
  130. package/dist/interaction_client/SilentIframeClient.mjs.map +1 -1
  131. package/dist/interaction_client/SilentRefreshClient.d.ts.map +1 -1
  132. package/dist/interaction_client/SilentRefreshClient.mjs +11 -20
  133. package/dist/interaction_client/SilentRefreshClient.mjs.map +1 -1
  134. package/dist/interaction_client/StandardInteractionClient.d.ts.map +1 -1
  135. package/dist/interaction_client/StandardInteractionClient.mjs +18 -38
  136. package/dist/interaction_client/StandardInteractionClient.mjs.map +1 -1
  137. package/dist/interaction_handler/InteractionHandler.d.ts.map +1 -1
  138. package/dist/interaction_handler/InteractionHandler.mjs +13 -16
  139. package/dist/interaction_handler/InteractionHandler.mjs.map +1 -1
  140. package/dist/interaction_handler/RedirectHandler.d.ts.map +1 -1
  141. package/dist/interaction_handler/RedirectHandler.mjs +12 -11
  142. package/dist/interaction_handler/RedirectHandler.mjs.map +1 -1
  143. package/dist/interaction_handler/SilentHandler.d.ts.map +1 -1
  144. package/dist/interaction_handler/SilentHandler.mjs +11 -11
  145. package/dist/interaction_handler/SilentHandler.mjs.map +1 -1
  146. package/dist/navigation/NavigationClient.mjs +1 -1
  147. package/dist/navigation/NavigationClient.mjs.map +1 -1
  148. package/dist/network/FetchClient.d.ts.map +1 -1
  149. package/dist/network/FetchClient.mjs +9 -8
  150. package/dist/network/FetchClient.mjs.map +1 -1
  151. package/dist/operatingcontext/BaseOperatingContext.mjs +1 -1
  152. package/dist/operatingcontext/BaseOperatingContext.mjs.map +1 -1
  153. package/dist/operatingcontext/StandardOperatingContext.mjs +1 -1
  154. package/dist/operatingcontext/StandardOperatingContext.mjs.map +1 -1
  155. package/dist/operatingcontext/TeamsAppOperatingContext.mjs +1 -1
  156. package/dist/operatingcontext/TeamsAppOperatingContext.mjs.map +1 -1
  157. package/dist/packageMetadata.d.ts +1 -1
  158. package/dist/packageMetadata.mjs +2 -2
  159. package/dist/packageMetadata.mjs.map +1 -1
  160. package/dist/request/ClearCacheRequest.d.ts +11 -0
  161. package/dist/request/ClearCacheRequest.d.ts.map +1 -0
  162. package/dist/telemetry/BrowserPerformanceClient.d.ts +2 -4
  163. package/dist/telemetry/BrowserPerformanceClient.d.ts.map +1 -1
  164. package/dist/telemetry/BrowserPerformanceClient.mjs +2 -6
  165. package/dist/telemetry/BrowserPerformanceClient.mjs.map +1 -1
  166. package/dist/telemetry/BrowserPerformanceMeasurement.mjs +1 -1
  167. package/dist/telemetry/BrowserPerformanceMeasurement.mjs.map +1 -1
  168. package/dist/utils/BrowserConstants.mjs +1 -1
  169. package/dist/utils/BrowserConstants.mjs.map +1 -1
  170. package/dist/utils/BrowserProtocolUtils.d.ts.map +1 -1
  171. package/dist/utils/BrowserProtocolUtils.mjs +4 -4
  172. package/dist/utils/BrowserProtocolUtils.mjs.map +1 -1
  173. package/dist/utils/BrowserStringUtils.mjs +1 -1
  174. package/dist/utils/BrowserStringUtils.mjs.map +1 -1
  175. package/dist/utils/BrowserUtils.d.ts +0 -9
  176. package/dist/utils/BrowserUtils.d.ts.map +1 -1
  177. package/dist/utils/BrowserUtils.mjs +8 -33
  178. package/dist/utils/BrowserUtils.mjs.map +1 -1
  179. package/lib/msal-browser.cjs +8729 -9566
  180. package/lib/msal-browser.cjs.map +1 -1
  181. package/lib/msal-browser.js +8729 -9566
  182. package/lib/msal-browser.js.map +1 -1
  183. package/lib/msal-browser.min.js +68 -62
  184. package/package.json +7 -5
  185. package/src/app/IPublicClientApplication.ts +236 -0
  186. package/src/app/PublicClientApplication.ts +417 -0
  187. package/src/broker/nativeBroker/NativeMessageHandler.ts +416 -0
  188. package/src/broker/nativeBroker/NativeRequest.ts +52 -0
  189. package/src/broker/nativeBroker/NativeResponse.ts +56 -0
  190. package/src/broker/nativeBroker/NativeStatusCodes.ts +13 -0
  191. package/src/cache/AsyncMemoryStorage.ts +158 -0
  192. package/src/cache/BrowserCacheManager.ts +2009 -0
  193. package/src/cache/BrowserStorage.ts +52 -0
  194. package/src/cache/CryptoKeyStore.ts +63 -0
  195. package/src/cache/DatabaseStorage.ts +287 -0
  196. package/src/cache/IAsyncMemoryStorage.ts +36 -0
  197. package/src/cache/ITokenCache.ts +21 -0
  198. package/src/cache/IWindowStorage.ts +36 -0
  199. package/src/cache/MemoryStorage.ts +42 -0
  200. package/src/cache/TokenCache.ts +484 -0
  201. package/src/config/Configuration.ts +383 -0
  202. package/src/controllers/ControllerFactory.ts +55 -0
  203. package/src/controllers/IController.ts +134 -0
  204. package/src/controllers/StandardController.ts +2170 -0
  205. package/src/crypto/BrowserCrypto.ts +151 -0
  206. package/src/crypto/CryptoOps.ts +235 -0
  207. package/src/crypto/PkceGenerator.ts +115 -0
  208. package/src/crypto/SignedHttpRequest.ts +76 -0
  209. package/src/encode/Base64Decode.ts +46 -0
  210. package/src/encode/Base64Encode.ts +52 -0
  211. package/src/error/BrowserAuthError.ts +352 -0
  212. package/src/error/BrowserAuthErrorCodes.ts +57 -0
  213. package/src/error/BrowserConfigurationAuthError.ts +64 -0
  214. package/src/error/BrowserConfigurationAuthErrorCodes.ts +9 -0
  215. package/src/error/NativeAuthError.ts +113 -0
  216. package/src/error/NativeAuthErrorCodes.ts +7 -0
  217. package/src/event/EventHandler.ts +177 -0
  218. package/src/event/EventMessage.ts +125 -0
  219. package/src/event/EventType.ts +33 -0
  220. package/src/index.ts +157 -0
  221. package/src/interaction_client/BaseInteractionClient.ts +307 -0
  222. package/src/interaction_client/HybridSpaAuthorizationCodeClient.ts +16 -0
  223. package/src/interaction_client/NativeInteractionClient.ts +925 -0
  224. package/src/interaction_client/PopupClient.ts +926 -0
  225. package/src/interaction_client/RedirectClient.ts +616 -0
  226. package/src/interaction_client/SilentAuthCodeClient.ts +165 -0
  227. package/src/interaction_client/SilentCacheClient.ts +125 -0
  228. package/src/interaction_client/SilentIframeClient.ts +301 -0
  229. package/src/interaction_client/SilentRefreshClient.ts +118 -0
  230. package/src/interaction_client/StandardInteractionClient.ts +450 -0
  231. package/src/interaction_handler/InteractionHandler.ts +251 -0
  232. package/src/interaction_handler/RedirectHandler.ts +229 -0
  233. package/src/interaction_handler/SilentHandler.ts +269 -0
  234. package/src/navigation/INavigationClient.ts +23 -0
  235. package/src/navigation/NavigationClient.ts +55 -0
  236. package/src/navigation/NavigationOptions.ts +18 -0
  237. package/src/network/FetchClient.ts +130 -0
  238. package/src/operatingcontext/BaseOperatingContext.ts +82 -0
  239. package/src/operatingcontext/StandardOperatingContext.ts +49 -0
  240. package/src/operatingcontext/TeamsAppOperatingContext.ts +48 -0
  241. package/src/packageMetadata.ts +3 -0
  242. package/src/request/AuthorizationCodeRequest.ts +19 -0
  243. package/src/request/AuthorizationUrlRequest.ts +17 -0
  244. package/src/request/ClearCacheRequest.ts +16 -0
  245. package/src/request/EndSessionPopupRequest.ts +26 -0
  246. package/src/request/EndSessionRequest.ts +23 -0
  247. package/src/request/PopupRequest.ts +51 -0
  248. package/src/request/PopupWindowAttributes.ts +22 -0
  249. package/src/request/RedirectRequest.ts +51 -0
  250. package/src/request/SilentRequest.ts +49 -0
  251. package/src/request/SsoSilentRequest.ts +44 -0
  252. package/src/response/AuthenticationResult.ts +13 -0
  253. package/src/telemetry/BrowserPerformanceClient.ts +226 -0
  254. package/src/telemetry/BrowserPerformanceMeasurement.ts +144 -0
  255. package/src/utils/BrowserConstants.ts +241 -0
  256. package/src/utils/BrowserProtocolUtils.ts +58 -0
  257. package/src/utils/BrowserStringUtils.ts +143 -0
  258. package/src/utils/BrowserUtils.ts +156 -0
  259. package/dist/crypto/GuidGenerator.d.ts +0 -13
  260. package/dist/crypto/GuidGenerator.d.ts.map +0 -1
  261. package/dist/crypto/GuidGenerator.mjs +0 -104
  262. package/dist/crypto/GuidGenerator.mjs.map +0 -1
  263. package/dist/crypto/ISubtleCrypto.d.ts +0 -10
  264. package/dist/crypto/ISubtleCrypto.d.ts.map +0 -1
  265. package/dist/crypto/ModernBrowserCrypto.d.ts +0 -10
  266. package/dist/crypto/ModernBrowserCrypto.d.ts.map +0 -1
  267. package/dist/crypto/ModernBrowserCrypto.mjs +0 -31
  268. package/dist/crypto/ModernBrowserCrypto.mjs.map +0 -1
  269. package/dist/internals.d.ts +0 -23
  270. package/dist/internals.d.ts.map +0 -1
  271. package/dist/internals.mjs +0 -28
  272. package/dist/internals.mjs.map +0 -1
  273. package/dist/network/XhrClient.d.ts +0 -41
  274. package/dist/network/XhrClient.d.ts.map +0 -1
  275. package/dist/network/XhrClient.mjs +0 -125
  276. package/dist/network/XhrClient.mjs.map +0 -1
  277. package/dist/utils/MathUtils.d.ts +0 -12
  278. package/dist/utils/MathUtils.d.ts.map +0 -1
  279. package/dist/utils/MathUtils.mjs +0 -26
  280. package/dist/utils/MathUtils.mjs.map +0 -1
@@ -1,12 +1,12 @@
1
- /*! @azure/msal-browser v3.0.2 2023-08-18 */
1
+ /*! @azure/msal-browser v3.2.0 2023-10-05 */
2
2
  'use strict';
3
3
  import { CryptoOps } from '../crypto/CryptoOps.mjs';
4
- import { DEFAULT_CRYPTO_IMPLEMENTATION, PerformanceEvents, ServerResponseType, UrlString, Constants, InteractionRequiredAuthError, AuthError, ClientAuthError, AccountEntity, PromptValue, ServerError } from '@azure/msal-common';
4
+ import { DEFAULT_CRYPTO_IMPLEMENTATION, PerformanceEvents, invokeAsync, ServerResponseType, UrlString, Constants, InteractionRequiredAuthError, AuthError, createClientAuthError, ClientAuthErrorCodes, AccountEntity, PromptValue, ServerError } from '@azure/msal-common';
5
5
  import { BrowserCacheManager, DEFAULT_BROWSER_CACHE_MANAGER } from '../cache/BrowserCacheManager.mjs';
6
6
  import { InteractionType, ApiId, TemporaryCacheKeys, CacheLookupPolicy, BrowserCacheLocation, DEFAULT_REQUEST, BrowserConstants } from '../utils/BrowserConstants.mjs';
7
7
  import { BrowserUtils } from '../utils/BrowserUtils.mjs';
8
8
  import { EventType } from '../event/EventType.mjs';
9
- import { BrowserConfigurationAuthError } from '../error/BrowserConfigurationAuthError.mjs';
9
+ import { createBrowserConfigurationAuthError } from '../error/BrowserConfigurationAuthError.mjs';
10
10
  import { EventHandler } from '../event/EventHandler.mjs';
11
11
  import { PopupClient } from '../interaction_client/PopupClient.mjs';
12
12
  import { RedirectClient } from '../interaction_client/RedirectClient.mjs';
@@ -15,10 +15,13 @@ import { SilentRefreshClient } from '../interaction_client/SilentRefreshClient.m
15
15
  import { TokenCache } from '../cache/TokenCache.mjs';
16
16
  import { NativeInteractionClient } from '../interaction_client/NativeInteractionClient.mjs';
17
17
  import { NativeMessageHandler } from '../broker/nativeBroker/NativeMessageHandler.mjs';
18
- import { NativeAuthError } from '../error/NativeAuthError.mjs';
18
+ import { NativeAuthError, isFatalNativeAuthError } from '../error/NativeAuthError.mjs';
19
19
  import { SilentCacheClient } from '../interaction_client/SilentCacheClient.mjs';
20
20
  import { SilentAuthCodeClient } from '../interaction_client/SilentAuthCodeClient.mjs';
21
- import { BrowserAuthError } from '../error/BrowserAuthError.mjs';
21
+ import { createBrowserAuthError } from '../error/BrowserAuthError.mjs';
22
+ import { createNewGuid } from '../crypto/BrowserCrypto.mjs';
23
+ import { spaCodeAndNativeAccountIdPresent, unableToAcquireTokenFromNativePlatform, authCodeOrNativeAccountIdRequired, nativeConnectionNotEstablished, noAccountError } from '../error/BrowserAuthErrorCodes.mjs';
24
+ import { inMemRedirectUnavailable } from '../error/BrowserConfigurationAuthErrorCodes.mjs';
22
25
 
23
26
  /*
24
27
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -96,7 +99,7 @@ class StandardController {
96
99
  }
97
100
  static async createController(operatingContext) {
98
101
  const controller = new StandardController(operatingContext);
99
- controller.initialize();
102
+ await controller.initialize();
100
103
  return controller;
101
104
  }
102
105
  trackPageVisibility() {
@@ -123,12 +126,16 @@ class StandardController {
123
126
  if (allowNativeBroker) {
124
127
  try {
125
128
  this.nativeExtensionProvider =
126
- await NativeMessageHandler.createProvider(this.logger, this.config.system.nativeBrokerHandshakeTimeout, this.performanceClient, this.browserCrypto);
129
+ await NativeMessageHandler.createProvider(this.logger, this.config.system.nativeBrokerHandshakeTimeout, this.performanceClient);
127
130
  }
128
131
  catch (e) {
129
132
  this.logger.verbose(e);
130
133
  }
131
134
  }
135
+ if (!this.config.cache.claimsBasedCachingEnabled) {
136
+ this.logger.verbose("Claims-based caching is disabled. Clearing the previous cache with claims");
137
+ await invokeAsync(this.browserStorage.clearTokensAndKeysWithClaims.bind(this.browserStorage), PerformanceEvents.ClearTokensAndKeysWithClaims, this.logger, this.performanceClient)(this.performanceClient);
138
+ }
132
139
  this.initialized = true;
133
140
  this.eventHandler.emitEvent(EventType.INITIALIZE_END);
134
141
  initMeasurement.end({ allowNativeBroker, success: true });
@@ -247,7 +254,8 @@ class StandardController {
247
254
  result = nativeClient
248
255
  .acquireTokenRedirect(request)
249
256
  .catch((e) => {
250
- if (e instanceof NativeAuthError && e.isFatal()) {
257
+ if (e instanceof NativeAuthError &&
258
+ isFatalNativeAuthError(e)) {
251
259
  this.nativeExtensionProvider = undefined; // If extension gets uninstalled during session prevent future requests from continuing to attempt
252
260
  const redirectClient = this.createRedirectClient(request.correlationId);
253
261
  return redirectClient.acquireToken(request);
@@ -257,7 +265,7 @@ class StandardController {
257
265
  const redirectClient = this.createRedirectClient(request.correlationId);
258
266
  return redirectClient.acquireToken(request);
259
267
  }
260
- this.browserStorage.setInteractionInProgress(false);
268
+ this.getBrowserStorage().setInteractionInProgress(false);
261
269
  throw e;
262
270
  });
263
271
  }
@@ -308,7 +316,7 @@ class StandardController {
308
316
  if (this.canUseNative(request)) {
309
317
  result = this.acquireTokenNative(request, ApiId.acquireTokenPopup)
310
318
  .then((response) => {
311
- this.browserStorage.setInteractionInProgress(false);
319
+ this.getBrowserStorage().setInteractionInProgress(false);
312
320
  atPopupMeasurement.end({
313
321
  success: true,
314
322
  isNativeBroker: true,
@@ -317,7 +325,8 @@ class StandardController {
317
325
  return response;
318
326
  })
319
327
  .catch((e) => {
320
- if (e instanceof NativeAuthError && e.isFatal()) {
328
+ if (e instanceof NativeAuthError &&
329
+ isFatalNativeAuthError(e)) {
321
330
  this.nativeExtensionProvider = undefined; // If extension gets uninstalled during session prevent future requests from continuing to attempt
322
331
  const popupClient = this.createPopupClient(request.correlationId);
323
332
  return popupClient.acquireToken(request);
@@ -327,7 +336,7 @@ class StandardController {
327
336
  const popupClient = this.createPopupClient(request.correlationId);
328
337
  return popupClient.acquireToken(request);
329
338
  }
330
- this.browserStorage.setInteractionInProgress(false);
339
+ this.getBrowserStorage().setInteractionInProgress(false);
331
340
  throw e;
332
341
  });
333
342
  }
@@ -421,7 +430,7 @@ class StandardController {
421
430
  if (this.canUseNative(validRequest)) {
422
431
  result = this.acquireTokenNative(validRequest, ApiId.ssoSilent).catch((e) => {
423
432
  // If native token acquisition fails for availability reasons fallback to standard flow
424
- if (e instanceof NativeAuthError && e.isFatal()) {
433
+ if (e instanceof NativeAuthError && isFatalNativeAuthError(e)) {
425
434
  this.nativeExtensionProvider = undefined; // If extension gets uninstalled during session prevent future requests from continuing to attempt
426
435
  const silentIframeClient = this.createSilentIframeClient(validRequest.correlationId);
427
436
  return silentIframeClient.acquireToken(validRequest);
@@ -479,7 +488,7 @@ class StandardController {
479
488
  try {
480
489
  if (request.code && request.nativeAccountId) {
481
490
  // Throw error in case server returns both spa_code and spa_accountid in exchange for auth code.
482
- throw BrowserAuthError.createSpaCodeAndNativeAccountIdPresentError();
491
+ throw createBrowserAuthError(spaCodeAndNativeAccountIdPresent);
483
492
  }
484
493
  else if (request.code) {
485
494
  const hybridAuthCode = request.code;
@@ -526,18 +535,19 @@ class StandardController {
526
535
  if (this.canUseNative(request, request.nativeAccountId)) {
527
536
  return this.acquireTokenNative(request, ApiId.acquireTokenByCode, request.nativeAccountId).catch((e) => {
528
537
  // If native token acquisition fails for availability reasons fallback to standard flow
529
- if (e instanceof NativeAuthError && e.isFatal()) {
538
+ if (e instanceof NativeAuthError &&
539
+ isFatalNativeAuthError(e)) {
530
540
  this.nativeExtensionProvider = undefined; // If extension gets uninstalled during session prevent future requests from continuing to attempt
531
541
  }
532
542
  throw e;
533
543
  });
534
544
  }
535
545
  else {
536
- throw BrowserAuthError.createUnableToAcquireTokenFromNativePlatformError();
546
+ throw createBrowserAuthError(unableToAcquireTokenFromNativePlatform);
537
547
  }
538
548
  }
539
549
  else {
540
- throw BrowserAuthError.createAuthCodeOrNativeAccountIdRequiredError();
550
+ throw createBrowserAuthError(authCodeOrNativeAccountIdRequired);
541
551
  }
542
552
  }
543
553
  catch (e) {
@@ -601,9 +611,9 @@ class StandardController {
601
611
  case CacheLookupPolicy.Default:
602
612
  case CacheLookupPolicy.AccessToken:
603
613
  case CacheLookupPolicy.AccessTokenAndRefreshToken:
604
- return silentCacheClient.acquireToken(commonRequest);
614
+ return invokeAsync(silentCacheClient.acquireToken.bind(silentCacheClient), PerformanceEvents.SilentCacheClientAcquireToken, this.logger, this.performanceClient, commonRequest.correlationId)(commonRequest);
605
615
  default:
606
- throw ClientAuthError.createRefreshRequiredError();
616
+ throw createClientAuthError(ClientAuthErrorCodes.tokenRefreshRequired);
607
617
  }
608
618
  }
609
619
  /**
@@ -620,10 +630,9 @@ class StandardController {
620
630
  case CacheLookupPolicy.RefreshToken:
621
631
  case CacheLookupPolicy.RefreshTokenAndNetwork:
622
632
  const silentRefreshClient = this.createSilentRefreshClient(commonRequest.correlationId);
623
- this.performanceClient.setPreQueueTime(PerformanceEvents.SilentRefreshClientAcquireToken, commonRequest.correlationId);
624
- return silentRefreshClient.acquireToken(commonRequest);
633
+ return invokeAsync(silentRefreshClient.acquireToken.bind(silentRefreshClient), PerformanceEvents.SilentRefreshClientAcquireToken, this.logger, this.performanceClient, commonRequest.correlationId)(commonRequest);
625
634
  default:
626
- throw ClientAuthError.createRefreshRequiredError();
635
+ throw createClientAuthError(ClientAuthErrorCodes.tokenRefreshRequired);
627
636
  }
628
637
  }
629
638
  /**
@@ -634,8 +643,7 @@ class StandardController {
634
643
  async acquireTokenBySilentIframe(request) {
635
644
  this.performanceClient.addQueueMeasurement(PerformanceEvents.AcquireTokenBySilentIframe, request.correlationId);
636
645
  const silentIframeClient = this.createSilentIframeClient(request.correlationId);
637
- this.performanceClient.setPreQueueTime(PerformanceEvents.SilentIframeClientAcquireToken, request.correlationId);
638
- return silentIframeClient.acquireToken(request);
646
+ return invokeAsync(silentIframeClient.acquireToken.bind(silentIframeClient), PerformanceEvents.SilentIframeClientAcquireToken, this.logger, this.performanceClient, request.correlationId)(request);
639
647
  }
640
648
  // #endregion
641
649
  // #region Logout
@@ -679,20 +687,49 @@ class StandardController {
679
687
  return Promise.reject(e);
680
688
  }
681
689
  }
690
+ /**
691
+ * Creates a cache interaction client to clear broswer cache.
692
+ * @param logoutRequest
693
+ */
694
+ async clearCache(logoutRequest) {
695
+ const correlationId = this.getRequestCorrelationId(logoutRequest);
696
+ const cacheClient = this.createSilentCacheClient(correlationId);
697
+ return cacheClient.logout(logoutRequest);
698
+ }
682
699
  // #endregion
683
700
  // #region Account APIs
684
701
  /**
685
- * Returns all accounts that MSAL currently has data for.
686
- * (the account object is created at the time of successful login)
687
- * or empty array when no accounts are found
688
- * @returns Array of account objects in cache
702
+ * Returns all the accounts in the cache that match the optional filter. If no filter is provided, all accounts are returned.
703
+ * @param accountFilter - (Optional) filter to narrow down the accounts returned
704
+ * @returns Array of AccountInfo objects in cache
689
705
  */
690
- getAllAccounts() {
706
+ getAllAccounts(accountFilter) {
691
707
  this.logger.verbose("getAllAccounts called");
692
708
  return this.isBrowserEnvironment
693
- ? this.browserStorage.getAllAccounts()
709
+ ? this.browserStorage.getAllAccounts(accountFilter)
694
710
  : [];
695
711
  }
712
+ /**
713
+ * Returns the first account found in the cache that matches the account filter passed in.
714
+ * @param accountFilter
715
+ * @returns The first account found in the cache matching the provided filter or null if no account could be found.
716
+ */
717
+ getAccount(accountFilter) {
718
+ this.logger.trace("getAccount called");
719
+ if (Object.keys(accountFilter).length === 0) {
720
+ this.logger.warning("getAccount: No accountFilter provided");
721
+ return null;
722
+ }
723
+ const account = this.browserStorage.getAccountInfoFilteredBy(accountFilter);
724
+ if (account) {
725
+ this.logger.verbose("getAccount: Account matching provided filter found, returning");
726
+ return account;
727
+ }
728
+ else {
729
+ this.logger.verbose("getAccount: No matching account found, returning null");
730
+ return null;
731
+ }
732
+ }
696
733
  /**
697
734
  * Returns the signed in account matching username.
698
735
  * (the account object is created at the time of successful login)
@@ -831,7 +868,7 @@ class StandardController {
831
868
  this.config.cache.cacheLocation ===
832
869
  BrowserCacheLocation.MemoryStorage &&
833
870
  !this.config.cache.storeAuthStateInCookie) {
834
- throw BrowserConfigurationAuthError.createInMemoryRedirectUnavailableError();
871
+ throw createBrowserConfigurationAuthError(inMemRedirectUnavailable);
835
872
  }
836
873
  if (interactionType === InteractionType.Redirect ||
837
874
  interactionType === InteractionType.Popup) {
@@ -850,7 +887,7 @@ class StandardController {
850
887
  BrowserUtils.blockReloadInHiddenIframes();
851
888
  // Set interaction in progress temporary cache or throw if alread set.
852
889
  if (setInteractionInProgress) {
853
- this.browserStorage.setInteractionInProgress(true);
890
+ this.getBrowserStorage().setInteractionInProgress(true);
854
891
  }
855
892
  }
856
893
  /**
@@ -860,7 +897,7 @@ class StandardController {
860
897
  async acquireTokenNative(request, apiId, accountId) {
861
898
  this.logger.trace("acquireTokenNative called");
862
899
  if (!this.nativeExtensionProvider) {
863
- throw BrowserAuthError.createNativeConnectionNotEstablishedError();
900
+ throw createBrowserAuthError(nativeConnectionNotEstablished);
864
901
  }
865
902
  const nativeClient = new NativeInteractionClient(this.config, this.browserStorage, this.browserCrypto, this.logger, this.eventHandler, this.navigationClient, apiId, this.performanceClient, this.nativeExtensionProvider, accountId || this.getNativeAccountId(request), this.nativeInternalStorage, request.correlationId);
866
903
  return nativeClient.acquireToken(request);
@@ -1040,55 +1077,18 @@ class StandardController {
1040
1077
  getBrowserStorage() {
1041
1078
  return this.browserStorage;
1042
1079
  }
1043
- /**
1044
- * Returns the native internal storage
1045
- */
1046
- getNativeInternalStorage() {
1047
- return this.nativeInternalStorage;
1048
- }
1049
- /**
1050
- * Returns the instance of interface for crypto functions
1051
- */
1052
- getBrowserCrypto() {
1053
- return this.browserCrypto;
1054
- }
1055
1080
  /**
1056
1081
  * Returns the browser env indicator
1057
1082
  */
1058
1083
  isBrowserEnv() {
1059
1084
  return this.isBrowserEnvironment;
1060
1085
  }
1061
- /**
1062
- * Returns the native message handler
1063
- */
1064
- getNativeExtensionProvider() {
1065
- return this.nativeExtensionProvider;
1066
- }
1067
- /**
1068
- * Sets the native message handler
1069
- * @param provider {?NativeMessageHandler}
1070
- */
1071
- setNativeExtensionProvider(provider) {
1072
- this.nativeExtensionProvider = provider;
1073
- }
1074
1086
  /**
1075
1087
  * Returns the event handler
1076
1088
  */
1077
1089
  getEventHandler() {
1078
1090
  return this.eventHandler;
1079
1091
  }
1080
- /**
1081
- * Returns the navigation client
1082
- */
1083
- getNavigationClient() {
1084
- return this.navigationClient;
1085
- }
1086
- /**
1087
- * Returns the redirect response map
1088
- */
1089
- getRedirectResponse() {
1090
- return this.redirectResponse;
1091
- }
1092
1092
  /**
1093
1093
  * Generates a correlation id for a request if none is provided.
1094
1094
  *
@@ -1101,7 +1101,7 @@ class StandardController {
1101
1101
  return request.correlationId;
1102
1102
  }
1103
1103
  if (this.isBrowserEnvironment) {
1104
- return this.browserCrypto.createNewGuid();
1104
+ return createNewGuid();
1105
1105
  }
1106
1106
  /*
1107
1107
  * Included for fallback for non-browser environments,
@@ -1158,7 +1158,7 @@ class StandardController {
1158
1158
  this.logger.verbose("acquireTokenSilent called", correlationId);
1159
1159
  const account = request.account || this.getActiveAccount();
1160
1160
  if (!account) {
1161
- throw BrowserAuthError.createNoAccountError();
1161
+ throw createBrowserAuthError(noAccountError);
1162
1162
  }
1163
1163
  const thumbprint = {
1164
1164
  clientId: this.config.auth.clientId,
@@ -1176,8 +1176,7 @@ class StandardController {
1176
1176
  const cachedResponse = this.activeSilentTokenRequests.get(silentRequestKey);
1177
1177
  if (typeof cachedResponse === "undefined") {
1178
1178
  this.logger.verbose("acquireTokenSilent called for the first time, storing active request", correlationId);
1179
- this.performanceClient.setPreQueueTime(PerformanceEvents.AcquireTokenSilentAsync, correlationId);
1180
- const response = this.acquireTokenSilentAsync({
1179
+ const response = invokeAsync(this.acquireTokenSilentAsync.bind(this), PerformanceEvents.AcquireTokenSilentAsync, this.logger, this.performanceClient, correlationId)({
1181
1180
  ...request,
1182
1181
  correlationId,
1183
1182
  }, account)
@@ -1239,7 +1238,7 @@ class StandardController {
1239
1238
  };
1240
1239
  result = this.acquireTokenNative(silentRequest, ApiId.acquireTokenSilent_silentFlow).catch(async (e) => {
1241
1240
  // If native token acquisition fails for availability reasons fallback to web flow
1242
- if (e instanceof NativeAuthError && e.isFatal()) {
1241
+ if (e instanceof NativeAuthError && isFatalNativeAuthError(e)) {
1243
1242
  this.logger.verbose("acquireTokenSilent - native platform unavailable, falling back to web flow");
1244
1243
  this.nativeExtensionProvider = undefined; // Prevent future requests from continuing to attempt
1245
1244
  // Cache will not contain tokens, given that previous WAM requests succeeded. Skip cache and RT renewal and go straight to iframe renewal
@@ -1252,15 +1251,13 @@ class StandardController {
1252
1251
  else {
1253
1252
  this.logger.verbose("acquireTokenSilent - attempting to acquire token from web flow");
1254
1253
  const silentCacheClient = this.createSilentCacheClient(request.correlationId);
1255
- this.performanceClient.setPreQueueTime(PerformanceEvents.InitializeSilentRequest, request.correlationId);
1256
- const silentRequest = await silentCacheClient.initializeSilentRequest(request, account);
1254
+ const silentRequest = await invokeAsync(silentCacheClient.initializeSilentRequest.bind(silentCacheClient), PerformanceEvents.InitializeSilentRequest, this.logger, this.performanceClient, request.correlationId)(request, account);
1257
1255
  const requestWithCLP = {
1258
1256
  ...request,
1259
1257
  // set the request's CacheLookupPolicy to Default if it was not optionally passed in
1260
1258
  cacheLookupPolicy: request.cacheLookupPolicy || CacheLookupPolicy.Default,
1261
1259
  };
1262
- this.performanceClient.setPreQueueTime(PerformanceEvents.AcquireTokenFromCache, silentRequest.correlationId);
1263
- result = this.acquireTokenFromCache(silentCacheClient, silentRequest, requestWithCLP).catch((cacheError) => {
1260
+ result = invokeAsync(this.acquireTokenFromCache.bind(this), PerformanceEvents.AcquireTokenFromCache, this.logger, this.performanceClient, silentRequest.correlationId)(silentCacheClient, silentRequest, requestWithCLP).catch((cacheError) => {
1264
1261
  if (requestWithCLP.cacheLookupPolicy ===
1265
1262
  CacheLookupPolicy.AccessToken) {
1266
1263
  throw cacheError;
@@ -1268,8 +1265,7 @@ class StandardController {
1268
1265
  // block the reload if it occurred inside a hidden iframe
1269
1266
  BrowserUtils.blockReloadInHiddenIframes();
1270
1267
  this.eventHandler.emitEvent(EventType.ACQUIRE_TOKEN_NETWORK_START, InteractionType.Silent, silentRequest);
1271
- this.performanceClient.setPreQueueTime(PerformanceEvents.AcquireTokenByRefreshToken, silentRequest.correlationId);
1272
- return this.acquireTokenByRefreshToken(silentRequest, requestWithCLP).catch((refreshTokenError) => {
1268
+ return invokeAsync(this.acquireTokenByRefreshToken.bind(this), PerformanceEvents.AcquireTokenByRefreshToken, this.logger, this.performanceClient, silentRequest.correlationId)(silentRequest, requestWithCLP).catch((refreshTokenError) => {
1273
1269
  const isServerError = refreshTokenError instanceof ServerError;
1274
1270
  const isInteractionRequiredError = refreshTokenError instanceof
1275
1271
  InteractionRequiredAuthError;
@@ -1287,8 +1283,7 @@ class StandardController {
1287
1283
  throw refreshTokenError;
1288
1284
  }
1289
1285
  this.logger.verbose("Refresh token expired/invalid or CacheLookupPolicy is set to Skip, attempting acquire token by iframe.", request.correlationId);
1290
- this.performanceClient.setPreQueueTime(PerformanceEvents.AcquireTokenBySilentIframe, silentRequest.correlationId);
1291
- return this.acquireTokenBySilentIframe(silentRequest);
1286
+ return invokeAsync(this.acquireTokenBySilentIframe.bind(this), PerformanceEvents.AcquireTokenBySilentIframe, this.logger, this.performanceClient, silentRequest.correlationId)(silentRequest);
1292
1287
  });
1293
1288
  });
1294
1289
  }
@@ -1 +1 @@
1
- {"version":3,"file":"StandardController.mjs","sources":["../../src/controllers/StandardController.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StandardController.mjs","sources":["../../src/controllers/StandardController.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAMA;AA0BA;AAIA;AACA;AA+CO,MAAE;AACT;AACA;AAGA;AAEI;AAGA;AAGA;AAGA;AAGA;AAGA;AAGA;;AAMA;AAGA;AAEA;AAGA;AAMA;;AAMA;AAGA;;;IASA,WAA4B,CAAA,gBAAA,EAA8B;QACnD,IAAC,CAAkC,mBAAA,GAAA,SAAA,CAAA;AAC1C,QAAA,IAAA,CAAA,gBAAA,GAAA,gBAAA,CAAA;;;;;;;;;;;;;;;;;;;;AAoBG,cAAA,IAAA,SAAA,CAAA,IAAA,CAAA,MAAA,EAAA,IAAA,CAAA,iBAAA,CAAA;AACS,cAAA,6BAA0C,CAAA;YAgFzB,CAAA,YAAA,GACzB,gBAAgB,CAAE,IAAA,CAAA,MAAA,EAAA,IAAA,CAAA,aACZ,CAAC;AAMX;AAUA,QAAA,IAAA,CAAA,cAAA,GAAA,IAAA,CAAA,oBAAA;;AAEG,cAAA,6BAAA,CAAA,IAAA,CAAA,MAAA,CAAA,IAAA,CAAA,QAAA,EAAA,IAAA,CAAA,MAAA,CAAA,CAAA;AACG;AAmDN,QAAA,MAAA,kBAAA,GAAA;;;;;;AAMG,YAAA,yBAAA,EAAA,KAAA;SACwB,CAAA;AA8J3B,QAAA,IAAA,CAAA,qBAAA,GAAA,IAAA,mBAAA,CAAA,IAAA,CAAA,MAAA,CAAA,IAAA,CAAA,QAAA,EAAA,kBAAA,EAAA,IAAA,CAAA,aAAA,EAAA,IAAA,CAAA,MAAA,CAAA,CAAA;;;;;;;;AAQG,YAAA,IAAA,CAAA,kCAAA,CAAA,IAAA,CAAA,IAAA,CAAA,CAAA;KACuB;AA+F1B,IAAA,aAAA,gBAAA,CAAA,gBAAA,EAAA;;;;;;AAMG,QAAA,IAAA,CAAA,IAAA,CAAA,mBAAA,EAAA;YACc,OAAA;AAiIjB,SAAA;AAoBA,QAAA,IAAA,CAAA,MAAA,CAAA,IAAA,CAAA,kCAAA,CAAA,CAAA;;;;;;;;;;;;;;AAcG,QAAA,MAAA,iBAAA,GAAA,IAAA,CAAA,MAAA,CAAA,MAAA,CAAA,iBAAA,CAAA;QACY,MAAC,eAAS,GAAA,IAAA,CAAA,kCAAgD,CAAA,iBAAA,CAAA,2BAAA,CAAA,CAAA;AA2FzE,QAAA,IAAA,CAAA,YAAA,CAAA,SAAA,CAAA,SAAA,CAAA,gBAAA,CAAA,CAAA;;;;;;;;;AASG,SAAA;QACqB,IAAA,CAAA,IAAA,CAAA,YACb,CAAE,yBAAwB;AAsHrC,YAAA,IAAA,CAAA,MAAA,CAAA,OAAA,CAAA,2EAAA,CAAA,CAAA;;;;AAIG,QAAA,IAAA,CAAA,YAAA,CAAA,SAAA,CAAA,SAAA,CAAA,cAAA,CAAA,CAAA;uBACkC,CAAA,GAAA,CAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,IAAA,EAAA,CAAA,CAAA;AAkDrC,KAAA;;;;;;AAMG;AACa;AA2BhB;;;;;AAKG,QAAA,IAAA,mBAAA,GAAA,IAAA,CAAA;AACU,QAAA,IAAA,IAAA,CAAA,MAAA,CAAA,IAAA,CAAA,WACT,EAAA,kBAAe;AA8BnB,YAAA,kBAAA,CAAA,KAAA,EAAA;;;;AAIG,QAAA,MAAA,gBAAA,GAAA,IAAA,CAAA,cAAA,EAAA,CAAA;gBACuC,CAAA,oBAAA,EAAA;AAyB1C;;;;AAIG;2DAC0D,IAAC,SAAA,CAAA,YAAA,CAAA;AAY9D,YAAA,IAAA,QAAA,GAAA,IAAA,CAAA,gBAAA,CAAA,GAAA,CAAA,mBAAA,CAAA,CAAA;;;;AAIG,gBAAA,MAAA,OAAA,GAAA,IAAA,CAAA,cAAA,CAAA,sBAAA,EAAA,CAAA;gBACiB;AAQpB,gBAAA,IAAA,OAAA;;;AAGG,oBAAA,CAAA,mBAAA,EAAA;+BACuB,CAAE,oEAAsC,CAAA,CAAA;AAYlE,oBAAA,MAAA,YAAA,GAAA,IAAA,uBAAA,CAAA,IAAA,CAAA,MAAA,EAAA,IAAA,CAAA,cAAA,EAAA,IAAA,CAAA,aAAA,EAAA,IAAA,CAAA,MAAA,EAAA,IAAA,CAAA,YAAA,EAAA,IAAA,CAAA,gBAAA,EAAA,KAAA,CAAA,qBAAA,EAAA,IAAA,CAAA,iBAAA,EAAA,IAAA,CAAA,uBAAA,EAAA,OAAA,CAAA,SAAA,EAAA,IAAA,CAAA,qBAAA,EAAA,OAAA,CAAA,aAAA,CAAA,CAAA;;;AAGG,qBAAA;+BAC8B,8DAAiC,CAAA,CAAA;AAUlE,oBAAA,MAAA,aAAA,GAAA,IAAA,CAAA,cAAA,CAAA,iBAAA,CAAA,kBAAA,CAAA,cAAA,EAAA,IAAA,CAAA,IAAA,SAAA,CAAA,YAAA,CAAA;;;;AAIG,iBAAA;AACH,gBAAA,QAA4B,GAAA,gBAAgB;AAO5C,qBAAA,IAAA,CAAA,CAAA,MAAA,KAAA;;;;AAIG,4BAAA,IAAA,CAAA,cAAA,EAAA,CAAA,MAAA,CAAA;AACH,wBAAwB,IAAA;AAuBxB,4BAAA,IAAA,CAAA,YAAA,CAAA,SAAA,CAAA,SAAA,CAAA,aAAA,EAAA,eAAA,CAAA,QAAA,EAAA,MAAA,CAAA,CAAA;;;;;;;AAOG,qBAAA;AACH,oBAAA,IAAoB,CAAC,sBAAmB,CAAA,UAAc,mBAAI,EAAA,eAAA,CAAA,QAAA,CAAA,CAAA;AA0B1D,oBAAA,OAAA,MAAA,CAAA;;;;;;AAMG,qBAAA;AACH,yBAAgC;AA4BhC,wBAAA,IAAA,CAAA,YAAA,CAAA,SAAA,CAAA,SAAA,CAAA,aAAA,EAAA,eAAA,CAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA;;;;;;AAMG,aAAA;AACH,iBAAA;AA4BA,gBAAA,IAAA,CAAA,MAAA,CAAA,OAAA,CAAA,4FAAA,CAAA,CAAA;;;AAGG,SAAA;AACH,QAAA,IAAA,CAAA,MAAA,CAAgB,OAAQ,CAAA,6DAA2B,CAAA,CAAA;AAInD,QAAA,OAAA,IAAA,CAAA;;AAEG;;AAOH;;;;;AAKG;AACG;AA+BN,IAAA,MAAA,oBAAA,CAAA,OAAA,EAAA;;;;;;AAMG,QAAA,MAAA,UAAA,GAAA,IAAA,CAAA,cAAA,EAAA,CAAA,MAAA,GAAA,CAAA,CAAA;QACoC,IAAA,UAAA,EAAA;AA2CvC,YAAA,IAAA,CAAA,YAAA,CAAA,SAAA,CAAA,SAAA,CAAA,mBAAA,EAAA,eAAA,CAAA,QAAA,EAAA,OAAA,CAAA,CAAA;;;;;AAKG,QAAA,IAAA,MAAA,CAAA;AACH,QAAA,IAAA,IAAqC,CAAA,uBAAA,6BACP,CAAA,EAAA;AAc9B,YAAA,MAAA,YAAA,GAAA,IAAA,uBAAA,CAAA,IAAA,CAAA,MAAA,EAAA,IAAA,CAAA,cAAA,EAAA,IAAA,CAAA,aAAA,EAAA,IAAA,CAAA,MAAA,EAAA,IAAA,CAAA,YAAA,EAAA,IAAA,CAAA,gBAAA,EAAA,KAAA,CAAA,oBAAA,EAAA,IAAA,CAAA,iBAAA,EAAA,IAAA,CAAA,uBAAA,EAAA,IAAA,CAAA,kBAAA,CAAA,OAAA,CAAA,EAAA,IAAA,CAAA,qBAAA,EAAA,OAAA,CAAA,aAAA,CAAA,CAAA;;;AAGG,iBAAA,KAAA,CAAA,CAAA,CAAA,KAAA;gBAC4B,IAAA,CAAA,YAClB,eAA4B;AA6BzC,oBAAA,sBAAA,CAAA,CAAA,CAAA,EAAA;;;AAGG,oBAAA,OAAA,cAAA,CAAA,YAAA,CAAA,OAAA,CAAA,CAAA;AACI,iBACH;AA6CJ,qBAAA,IAAA,CAAA,YAAA,4BAAA,EAAA;;;;AAIG,iBAAA;gBACsB,IAAA,CAAA,iBACZ,EAAA,CAAA,wBAAiC,CAAgB,KAAA,CAAA,CAAA;AAa9D,gBAAA,MAAA,CAAA,CAAA;;;AAGG,aAAA;AACI,YAAA,MAAA,cAA+B,GAAA,IAAG,CAAA,oBAAoB,CAAA,OAAA,CAAA,aAAA,CAAA,CAAA;AAe7D,YAAA,MAAA,GAAA,cAAA,CAAA,YAAA,CAAA,OAAA,CAAA,CAAA;;;AAGG;YACM;AAeT,gBAAA,IAAA,CAAA,YAAA,CAAA,SAAA,CAAA,SAAA,CAAA,qBAAA,EAAA,eAAA,CAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA;;;AAGG,gBAAA,IAAA,CAAA,YAAA,CAAA,SAAA,CAAA,SAAA,CAAA,aAAA,EAAA,eAAA,CAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA;AACI,aAAA;AAkBP,YAAA,MAAA,CAAA,CAAA;;AAEG,KAAA;;AAiBH;;AAEG;;AAiBH;;AAEG;;AAkBH,IAAA,iBAAA,CAAA,OAAA,EAAA;;;AAGG,QAAA,IAAA;AACH,YAAA,IAAA,CAAA,MAAyB,CAAA,OAAE,2BAAwB,EAAA,aAAa,CAAA,CAAA;AAIhE,YAAA,IAAA,CAAA,gCAAA,CAAA,eAAA,CAAA,KAAA,CAAA,CAAA;;;AAGG;AACH,YAAA,OAAA,OAAoB,CAAA,MAAA,CAAU,CAAE,CAAA,CAAA;AAIhC,SAAA;;;;;AAKG,SAAA;AACH,aAAA;AAIA,YAAA,IAAA,CAAA,YAAA,CAAA,SAAA,CAAA,SAAA,CAAA,WAAA,EAAA,eAAA,CAAA,KAAA,EAAA,OAAA,CAAA,CAAA;;;;;AAKG,iBAAA,IAAA,CAAA,CAAA,QAAA,KAAA;AACH,gBAAA,IAAA,CAAA,iBAA0B,EAAU,CAAE,wBAAgB,CAAA,KAAA,CAAA,CAAA;AAItD,gBAAA,kBAAA,CAAA,GAAA,CAAA;;AAEG,oBAAA,cAAA,EAAA,IAAA;AACH,oBAAA,SAAA,UAAkC,CAAA,SAAA;AAIlC,iBAAA,CAAA,CAAA;;AAEG,aAAA,CAAA;AACH,iBAAA,KAAA,CAAA,CAAA,CAAA,KAAA;AAIA,gBAAA,IAAA,CAAA,YAAA,eAAA;;AAEG,oBAAA,IAAA,CAAA,uBAAA,GAAA,SAAA,CAAA;AACH,0BAA4B,WAAA,GAAA,IAAA,CAAA,iBAAA,CAAA,OAAA,CAAA,aAAA,CAAA,CAAA;AAI5B,oBAAA,OAAA,WAAA,CAAA,YAAA,CAAA,OAAA,CAAA,CAAA;;AAEG,qBAAA,IAAA,CAAA,YAAA,4BAAA,EAAA;AACI,oBAAmB,IAAA,CAAA,MAAA,CAAA,OAAA,CAAA,8GAAA,CAAA,CAAA;AAI1B,oBAAA,MAAA,WAAA,GAAA,IAAA,CAAA,iBAAA,CAAA,OAAA,CAAA,aAAA,CAAA,CAAA;;;AAGG,gBAAA,IAAA,CAAA,iBAAA,EAAA,CAAA,wBAAA,CAAA,KAAA,CAAA,CAAA;AACH,gBAAU,MAAQ,CAAA,CAAA;AAIlB,aAAA,CAAA,CAAA;;;;AAIG,YAAA,MAAA,GAAA,WAAA,CAAA,YAAA,CAAA,OAAA,CAAA,CAAA;SACqB;AAKxB,QAAA,OAAA,MAAA;;;AAGG;AACH;AAIA,YAAA,MAAA,WAAA,GAAA,gBAAA,CAAA,MAAA,GAAA,IAAA,CAAA,cAAA,EAAA,CAAA,MAAA,CAAA;;AAEG,gBAAA,IAAA,CAAA,YAAA,CAAA,SAAA,CAAA,SAAA,CAAA,aAAA,EAAA,eAAA,CAAA,KAAA,EAAA,MAAA,CAAA,CAAA;AACI,aAAA;AAIP,iBAAA;;AAEG,aAAA;AACI,YAAA,kBAA0C,CAAA,GAAA,CAAA;AAIjD,gBAAA,eAAA,EAAA,MAAA,CAAA,WAAA,CAAA,MAAA;;AAEG,aAAA,CAAA,CAAA;AACI,YAAA,kBAAwC,CAAA,GAAA,CAAA;AAI/C,gBAAA,OAAA,EAAA,IAAA;;AAEG,aAAA,CAAA,CAAA;AACI,YAAA,aAAuB,CAAA;AAI9B,SAAA,CAAA;;AAEG,YAAA,IAAA,gBAAA,CAAA,MAAA,GAAA,CAAA,EAAA;AACH,gBAAA,iBAA+B,CAAA,SAAA,CAAA,SAAA,CAAA,qBAAA,EAAA,eAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA;AAI/B,aAAA;;;;;;AAMG,gBAAA,YAAA,EAAA,CAAA,CAAA,QAAA;gBAC8B,OAAA,EAAA,KAAA;AAoBjC,aAAA,CAAA,CAAA;;;;;;;;AAQG,QAAA,IAAA,CAAA,WAAA,EAAA;YACgB;AASnB,SAAA;;;;;;AAMG;;AAUH;;;;;AAKG;;AA6FH;;;;;AAKG;AACa;AA+LnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,50 +1,45 @@
1
- import { Logger } from "@azure/msal-common";
2
- /**
3
- * This class implements functions used by the browser library to perform cryptography operations such as
4
- * hashing and encoding. It also has helper functions to validate the availability of specific APIs.
5
- */
6
- export declare class BrowserCrypto {
7
- private keygenAlgorithmOptions;
8
- private subtleCrypto;
9
- private logger;
10
- constructor(logger: Logger);
11
- /**
12
- * Check whether browser crypto is available.
13
- */
14
- private hasBrowserCrypto;
15
- /**
16
- * Returns a sha-256 hash of the given dataString as an ArrayBuffer.
17
- * @param dataString
18
- */
19
- sha256Digest(dataString: string): Promise<ArrayBuffer>;
20
- /**
21
- * Populates buffer with cryptographically random values.
22
- * @param dataBuffer
23
- */
24
- getRandomValues(dataBuffer: Uint8Array): Uint8Array;
25
- /**
26
- * Generates a keypair based on current keygen algorithm config.
27
- * @param extractable
28
- * @param usages
29
- */
30
- generateKeyPair(extractable: boolean, usages: Array<KeyUsage>): Promise<CryptoKeyPair>;
31
- /**
32
- * Export key as Json Web Key (JWK)
33
- * @param key
34
- */
35
- exportJwk(key: CryptoKey): Promise<JsonWebKey>;
36
- /**
37
- * Imports key as Json Web Key (JWK), can set extractable and usages.
38
- * @param key
39
- * @param extractable
40
- * @param usages
41
- */
42
- importJwk(key: JsonWebKey, extractable: boolean, usages: Array<KeyUsage>): Promise<CryptoKey>;
43
- /**
44
- * Signs given data with given key
45
- * @param key
46
- * @param data
47
- */
48
- sign(key: CryptoKey, data: ArrayBuffer): Promise<ArrayBuffer>;
49
- }
1
+ import { IPerformanceClient, Logger } from "@azure/msal-common";
2
+ /**
3
+ * Check whether browser crypto is available.
4
+ */
5
+ export declare function validateCryptoAvailable(logger: Logger): void;
6
+ /**
7
+ * Returns a sha-256 hash of the given dataString as an ArrayBuffer.
8
+ * @param dataString
9
+ */
10
+ export declare function sha256Digest(dataString: string, performanceClient?: IPerformanceClient, correlationId?: string): Promise<ArrayBuffer>;
11
+ /**
12
+ * Populates buffer with cryptographically random values.
13
+ * @param dataBuffer
14
+ */
15
+ export declare function getRandomValues(dataBuffer: Uint8Array): Uint8Array;
16
+ /**
17
+ * Creates a new random GUID
18
+ * @returns
19
+ */
20
+ export declare function createNewGuid(): string;
21
+ /**
22
+ * Generates a keypair based on current keygen algorithm config.
23
+ * @param extractable
24
+ * @param usages
25
+ */
26
+ export declare function generateKeyPair(extractable: boolean, usages: Array<KeyUsage>): Promise<CryptoKeyPair>;
27
+ /**
28
+ * Export key as Json Web Key (JWK)
29
+ * @param key
30
+ */
31
+ export declare function exportJwk(key: CryptoKey): Promise<JsonWebKey>;
32
+ /**
33
+ * Imports key as Json Web Key (JWK), can set extractable and usages.
34
+ * @param key
35
+ * @param extractable
36
+ * @param usages
37
+ */
38
+ export declare function importJwk(key: JsonWebKey, extractable: boolean, usages: Array<KeyUsage>): Promise<CryptoKey>;
39
+ /**
40
+ * Signs given data with given key
41
+ * @param key
42
+ * @param data
43
+ */
44
+ export declare function sign(key: CryptoKey, data: ArrayBuffer): Promise<ArrayBuffer>;
50
45
  //# sourceMappingURL=BrowserCrypto.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BrowserCrypto.d.ts","sourceRoot":"","sources":["../../src/crypto/BrowserCrypto.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAa5C;;;GAGG;AACH,qBAAa,aAAa;IACtB,OAAO,CAAC,sBAAsB,CAAwB;IACtD,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,EAAE,MAAM;IAwB1B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAIxB;;;OAGG;IACG,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAM5D;;;OAGG;IACH,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;IAInD;;;;OAIG;IACG,eAAe,CACjB,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,GACxB,OAAO,CAAC,aAAa,CAAC;IAQzB;;;OAGG;IACG,SAAS,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC;IAIpD;;;;;OAKG;IACG,SAAS,CACX,GAAG,EAAE,UAAU,EACf,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,GACxB,OAAO,CAAC,SAAS,CAAC;IASrB;;;;OAIG;IACG,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;CAGtE"}
1
+ {"version":3,"file":"BrowserCrypto.d.ts","sourceRoot":"","sources":["../../src/crypto/BrowserCrypto.ts"],"names":[],"mappings":"AAUA,OAAO,EACH,kBAAkB,EAClB,MAAM,EAET,MAAM,oBAAoB,CAAC;AA2B5B;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAO5D;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAC9B,UAAU,EAAE,MAAM,EAClB,iBAAiB,CAAC,EAAE,kBAAkB,EACtC,aAAa,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,WAAW,CAAC,CAUtB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU,CAElE;AAED;;;GAGG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CACjC,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,GACxB,OAAO,CAAC,aAAa,CAAC,CAMxB;AAED;;;GAGG;AACH,wBAAsB,SAAS,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAKnE;AAED;;;;;GAKG;AACH,wBAAsB,SAAS,CAC3B,GAAG,EAAE,UAAU,EACf,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,GACxB,OAAO,CAAC,SAAS,CAAC,CAQpB;AAED;;;;GAIG;AACH,wBAAsB,IAAI,CACtB,GAAG,EAAE,SAAS,EACd,IAAI,EAAE,WAAW,GAClB,OAAO,CAAC,WAAW,CAAC,CAMtB"}