@azure/msal-browser 3.20.0 → 3.22.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 (187) hide show
  1. package/dist/app/IPublicClientApplication.d.ts +53 -53
  2. package/dist/app/IPublicClientApplication.mjs +105 -105
  3. package/dist/app/PublicClientApplication.d.ts +293 -293
  4. package/dist/app/PublicClientApplication.mjs +364 -364
  5. package/dist/app/PublicClientNext.d.ts +276 -276
  6. package/dist/app/PublicClientNext.mjs +354 -354
  7. package/dist/broker/nativeBroker/NativeMessageHandler.d.ts +62 -62
  8. package/dist/broker/nativeBroker/NativeMessageHandler.mjs +254 -254
  9. package/dist/broker/nativeBroker/NativeRequest.d.ts +45 -45
  10. package/dist/broker/nativeBroker/NativeResponse.d.ts +48 -48
  11. package/dist/broker/nativeBroker/NativeStatusCodes.d.ts +7 -7
  12. package/dist/broker/nativeBroker/NativeStatusCodes.mjs +11 -11
  13. package/dist/cache/AccountManager.d.ts +48 -48
  14. package/dist/cache/AccountManager.mjs +126 -126
  15. package/dist/cache/AsyncMemoryStorage.d.ts +50 -50
  16. package/dist/cache/AsyncMemoryStorage.mjs +131 -131
  17. package/dist/cache/BrowserCacheManager.d.ts +385 -385
  18. package/dist/cache/BrowserCacheManager.mjs +1294 -1294
  19. package/dist/cache/BrowserStorage.d.ts +11 -11
  20. package/dist/cache/BrowserStorage.mjs +32 -32
  21. package/dist/cache/DatabaseStorage.d.ts +56 -56
  22. package/dist/cache/DatabaseStorage.mjs +200 -200
  23. package/dist/cache/IAsyncStorage.d.ts +27 -27
  24. package/dist/cache/ITokenCache.d.ts +11 -11
  25. package/dist/cache/IWindowStorage.d.ts +27 -27
  26. package/dist/cache/MemoryStorage.d.ts +11 -11
  27. package/dist/cache/MemoryStorage.mjs +31 -31
  28. package/dist/cache/TokenCache.d.ts +77 -77
  29. package/dist/cache/TokenCache.mjs +195 -195
  30. package/dist/config/Configuration.d.ts +213 -208
  31. package/dist/config/Configuration.d.ts.map +1 -1
  32. package/dist/config/Configuration.mjs +128 -128
  33. package/dist/config/Configuration.mjs.map +1 -1
  34. package/dist/controllers/ControllerFactory.d.ts +5 -5
  35. package/dist/controllers/ControllerFactory.mjs +25 -25
  36. package/dist/controllers/IController.d.ts +60 -60
  37. package/dist/controllers/NestedAppAuthController.d.ts +202 -202
  38. package/dist/controllers/NestedAppAuthController.mjs +473 -473
  39. package/dist/controllers/StandardController.d.ts +405 -405
  40. package/dist/controllers/StandardController.d.ts.map +1 -1
  41. package/dist/controllers/StandardController.mjs +1334 -1316
  42. package/dist/controllers/StandardController.mjs.map +1 -1
  43. package/dist/controllers/UnknownOperatingContextController.d.ts +86 -86
  44. package/dist/controllers/UnknownOperatingContextController.mjs +256 -256
  45. package/dist/crypto/BrowserCrypto.d.ts +52 -52
  46. package/dist/crypto/BrowserCrypto.mjs +151 -151
  47. package/dist/crypto/CryptoOps.d.ts +74 -74
  48. package/dist/crypto/CryptoOps.mjs +176 -176
  49. package/dist/crypto/PkceGenerator.d.ts +8 -8
  50. package/dist/crypto/PkceGenerator.mjs +54 -54
  51. package/dist/crypto/SignedHttpRequest.d.ts +30 -30
  52. package/dist/crypto/SignedHttpRequest.mjs +39 -39
  53. package/dist/encode/Base64Decode.d.ts +9 -9
  54. package/dist/encode/Base64Decode.mjs +36 -36
  55. package/dist/encode/Base64Encode.d.ts +19 -19
  56. package/dist/encode/Base64Encode.mjs +43 -43
  57. package/dist/error/BrowserAuthError.d.ts +255 -255
  58. package/dist/error/BrowserAuthError.mjs +263 -263
  59. package/dist/error/BrowserAuthErrorCodes.d.ts +46 -46
  60. package/dist/error/BrowserAuthErrorCodes.mjs +50 -50
  61. package/dist/error/BrowserConfigurationAuthError.d.ts +33 -33
  62. package/dist/error/BrowserConfigurationAuthError.mjs +40 -40
  63. package/dist/error/BrowserConfigurationAuthError.mjs.map +1 -1
  64. package/dist/error/BrowserConfigurationAuthErrorCodes.d.ts +3 -3
  65. package/dist/error/BrowserConfigurationAuthErrorCodes.mjs +7 -7
  66. package/dist/error/NativeAuthError.d.ts +29 -29
  67. package/dist/error/NativeAuthError.mjs +60 -60
  68. package/dist/error/NativeAuthErrorCodes.d.ts +2 -2
  69. package/dist/error/NativeAuthErrorCodes.mjs +6 -6
  70. package/dist/error/NestedAppAuthError.d.ts +14 -14
  71. package/dist/error/NestedAppAuthError.mjs +23 -23
  72. package/dist/event/EventHandler.d.ts +41 -41
  73. package/dist/event/EventHandler.mjs +125 -125
  74. package/dist/event/EventMessage.d.ts +25 -25
  75. package/dist/event/EventMessage.mjs +68 -68
  76. package/dist/event/EventType.d.ts +29 -29
  77. package/dist/event/EventType.mjs +32 -32
  78. package/dist/index.d.ts +40 -40
  79. package/dist/index.mjs +1 -1
  80. package/dist/interaction_client/BaseInteractionClient.d.ts +50 -50
  81. package/dist/interaction_client/BaseInteractionClient.mjs +106 -106
  82. package/dist/interaction_client/HybridSpaAuthorizationCodeClient.d.ts +4 -4
  83. package/dist/interaction_client/HybridSpaAuthorizationCodeClient.mjs +10 -10
  84. package/dist/interaction_client/NativeInteractionClient.d.ts +151 -151
  85. package/dist/interaction_client/NativeInteractionClient.mjs +621 -621
  86. package/dist/interaction_client/PopupClient.d.ts +105 -105
  87. package/dist/interaction_client/PopupClient.d.ts.map +1 -1
  88. package/dist/interaction_client/PopupClient.mjs +433 -433
  89. package/dist/interaction_client/PopupClient.mjs.map +1 -1
  90. package/dist/interaction_client/RedirectClient.d.ts +50 -50
  91. package/dist/interaction_client/RedirectClient.d.ts.map +1 -1
  92. package/dist/interaction_client/RedirectClient.mjs +315 -314
  93. package/dist/interaction_client/RedirectClient.mjs.map +1 -1
  94. package/dist/interaction_client/SilentAuthCodeClient.d.ts +23 -23
  95. package/dist/interaction_client/SilentAuthCodeClient.mjs +57 -57
  96. package/dist/interaction_client/SilentCacheClient.d.ts +16 -16
  97. package/dist/interaction_client/SilentCacheClient.mjs +42 -42
  98. package/dist/interaction_client/SilentIframeClient.d.ts +32 -32
  99. package/dist/interaction_client/SilentIframeClient.d.ts.map +1 -1
  100. package/dist/interaction_client/SilentIframeClient.mjs +110 -100
  101. package/dist/interaction_client/SilentIframeClient.mjs.map +1 -1
  102. package/dist/interaction_client/SilentRefreshClient.d.ts +20 -20
  103. package/dist/interaction_client/SilentRefreshClient.mjs +47 -47
  104. package/dist/interaction_client/StandardInteractionClient.d.ts +48 -48
  105. package/dist/interaction_client/StandardInteractionClient.mjs +199 -199
  106. package/dist/interaction_handler/InteractionHandler.d.ts +33 -33
  107. package/dist/interaction_handler/InteractionHandler.mjs +93 -93
  108. package/dist/interaction_handler/RedirectHandler.d.ts +32 -32
  109. package/dist/interaction_handler/RedirectHandler.mjs +134 -134
  110. package/dist/interaction_handler/SilentHandler.d.ts +13 -13
  111. package/dist/interaction_handler/SilentHandler.mjs +134 -134
  112. package/dist/naa/AccountInfo.d.ts +11 -11
  113. package/dist/naa/AuthBridge.d.ts +8 -8
  114. package/dist/naa/AuthResult.d.ts +6 -6
  115. package/dist/naa/BridgeAccountContext.d.ts +12 -12
  116. package/dist/naa/BridgeCapabilities.d.ts +3 -3
  117. package/dist/naa/BridgeError.d.ts +9 -9
  118. package/dist/naa/BridgeError.mjs +7 -7
  119. package/dist/naa/BridgeProxy.d.ts +67 -67
  120. package/dist/naa/BridgeProxy.mjs +148 -148
  121. package/dist/naa/BridgeRequest.d.ts +7 -7
  122. package/dist/naa/BridgeRequestEnvelope.d.ts +12 -12
  123. package/dist/naa/BridgeResponseEnvelope.d.ts +13 -13
  124. package/dist/naa/BridgeStatusCode.d.ts +11 -11
  125. package/dist/naa/BridgeStatusCode.mjs +14 -14
  126. package/dist/naa/IBridgeProxy.d.ts +10 -10
  127. package/dist/naa/InitContext.d.ts +8 -8
  128. package/dist/naa/TokenRequest.d.ts +18 -18
  129. package/dist/naa/TokenResponse.d.ts +13 -13
  130. package/dist/naa/mapping/NestedAppAuthAdapter.d.ts +35 -35
  131. package/dist/naa/mapping/NestedAppAuthAdapter.mjs +179 -179
  132. package/dist/navigation/INavigationClient.d.ts +16 -16
  133. package/dist/navigation/NavigationClient.d.ts +22 -22
  134. package/dist/navigation/NavigationClient.mjs +40 -40
  135. package/dist/navigation/NavigationOptions.d.ts +12 -12
  136. package/dist/network/FetchClient.d.ts +26 -26
  137. package/dist/network/FetchClient.mjs +99 -99
  138. package/dist/operatingcontext/BaseOperatingContext.d.ts +41 -41
  139. package/dist/operatingcontext/BaseOperatingContext.mjs +94 -94
  140. package/dist/operatingcontext/NestedAppOperatingContext.d.ts +34 -34
  141. package/dist/operatingcontext/NestedAppOperatingContext.mjs +71 -71
  142. package/dist/operatingcontext/StandardOperatingContext.d.ts +25 -25
  143. package/dist/operatingcontext/StandardOperatingContext.mjs +43 -43
  144. package/dist/operatingcontext/UnknownOperatingContext.d.ts +25 -25
  145. package/dist/operatingcontext/UnknownOperatingContext.mjs +42 -42
  146. package/dist/packageMetadata.d.ts +2 -2
  147. package/dist/packageMetadata.mjs +4 -4
  148. package/dist/request/AuthorizationCodeRequest.d.ts +8 -8
  149. package/dist/request/AuthorizationUrlRequest.d.ts +8 -8
  150. package/dist/request/ClearCacheRequest.d.ts +10 -10
  151. package/dist/request/EndSessionPopupRequest.d.ts +18 -18
  152. package/dist/request/EndSessionRequest.d.ts +15 -15
  153. package/dist/request/InitializeApplicationRequest.d.ts +8 -8
  154. package/dist/request/PopupRequest.d.ts +34 -34
  155. package/dist/request/PopupWindowAttributes.d.ts +15 -15
  156. package/dist/request/RedirectRequest.d.ts +40 -35
  157. package/dist/request/RedirectRequest.d.ts.map +1 -1
  158. package/dist/request/RequestHelpers.d.ts +13 -13
  159. package/dist/request/RequestHelpers.mjs +53 -53
  160. package/dist/request/SilentRequest.d.ts +33 -33
  161. package/dist/request/SsoSilentRequest.d.ts +29 -29
  162. package/dist/response/AuthenticationResult.d.ts +4 -4
  163. package/dist/response/ResponseHandler.d.ts +7 -7
  164. package/dist/response/ResponseHandler.mjs +36 -36
  165. package/dist/telemetry/BrowserPerformanceClient.d.ts +34 -34
  166. package/dist/telemetry/BrowserPerformanceClient.mjs +162 -162
  167. package/dist/telemetry/BrowserPerformanceMeasurement.d.ts +21 -21
  168. package/dist/telemetry/BrowserPerformanceMeasurement.mjs +92 -92
  169. package/dist/utils/BrowserConstants.d.ts +180 -180
  170. package/dist/utils/BrowserConstants.mjs +212 -212
  171. package/dist/utils/BrowserProtocolUtils.d.ts +11 -11
  172. package/dist/utils/BrowserProtocolUtils.mjs +21 -21
  173. package/dist/utils/BrowserUtils.d.ts +75 -75
  174. package/dist/utils/BrowserUtils.mjs +157 -157
  175. package/lib/msal-browser.cjs +18884 -18855
  176. package/lib/msal-browser.cjs.map +1 -1
  177. package/lib/msal-browser.js +18884 -18855
  178. package/lib/msal-browser.js.map +1 -1
  179. package/lib/msal-browser.min.js +59 -59
  180. package/package.json +2 -2
  181. package/src/config/Configuration.ts +9 -1
  182. package/src/controllers/StandardController.ts +30 -12
  183. package/src/interaction_client/PopupClient.ts +1 -0
  184. package/src/interaction_client/RedirectClient.ts +4 -1
  185. package/src/interaction_client/SilentIframeClient.ts +40 -3
  186. package/src/packageMetadata.ts +1 -1
  187. package/src/request/RedirectRequest.ts +5 -0
@@ -1,4 +1,4 @@
1
- /*! @azure/msal-browser v3.20.0 2024-07-23 */
1
+ /*! @azure/msal-browser v3.22.0 2024-08-28 */
2
2
  'use strict';
3
3
  import { DEFAULT_CRYPTO_IMPLEMENTATION } from '@azure/msal-common';
4
4
  import { BrowserCacheManager, DEFAULT_BROWSER_CACHE_MANAGER } from '../cache/BrowserCacheManager.mjs';
@@ -6,261 +6,261 @@ import { CryptoOps } from '../crypto/CryptoOps.mjs';
6
6
  import { blockAPICallsBeforeInitialize, blockNonBrowserEnvironment } from '../utils/BrowserUtils.mjs';
7
7
  import { EventHandler } from '../event/EventHandler.mjs';
8
8
 
9
- /*
10
- * Copyright (c) Microsoft Corporation. All rights reserved.
11
- * Licensed under the MIT License.
12
- */
13
- /**
14
- * UnknownOperatingContextController class
15
- *
16
- * - Until initialize method is called, this controller is the default
17
- * - AFter initialize method is called, this controller will be swapped out for the appropriate controller
18
- * if the operating context can be determined; otherwise this controller will continued be used
19
- *
20
- * - Why do we have this? We don't want to dynamically import (download) all of the code in StandardController if we don't need to.
21
- *
22
- * - Only includes implementation for getAccounts and handleRedirectPromise
23
- * - All other methods are will throw initialization error (because either initialize method or the factory method were not used)
24
- * - This controller is necessary for React Native wrapper, server side rendering and any other scenario where we don't have a DOM
25
- *
26
- */
27
- class UnknownOperatingContextController {
28
- constructor(operatingContext) {
29
- // Flag representing whether or not the initialize API has been called and completed
30
- this.initialized = false;
31
- this.operatingContext = operatingContext;
32
- this.isBrowserEnvironment =
33
- this.operatingContext.isBrowserEnvironment();
34
- this.config = operatingContext.getConfig();
35
- this.logger = operatingContext.getLogger();
36
- // Initialize performance client
37
- this.performanceClient = this.config.telemetry.client;
38
- // Initialize the crypto class.
39
- this.browserCrypto = this.isBrowserEnvironment
40
- ? new CryptoOps(this.logger, this.performanceClient)
41
- : DEFAULT_CRYPTO_IMPLEMENTATION;
42
- // Initialize the browser storage class.
43
- this.browserStorage = this.isBrowserEnvironment
44
- ? new BrowserCacheManager(this.config.auth.clientId, this.config.cache, this.browserCrypto, this.logger, undefined, this.performanceClient)
45
- : DEFAULT_BROWSER_CACHE_MANAGER(this.config.auth.clientId, this.logger);
46
- this.eventHandler = new EventHandler(this.logger, this.browserCrypto);
47
- }
48
- getBrowserStorage() {
49
- return this.browserStorage;
50
- }
51
- getEventHandler() {
52
- return this.eventHandler;
53
- }
54
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
55
- getAccount(accountFilter) {
56
- return null;
57
- }
58
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
59
- getAccountByHomeId(homeAccountId) {
60
- return null;
61
- }
62
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
63
- getAccountByLocalId(localAccountId) {
64
- return null;
65
- }
66
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
67
- getAccountByUsername(username) {
68
- return null;
69
- }
70
- getAllAccounts() {
71
- return [];
72
- }
73
- initialize() {
74
- this.initialized = true;
75
- return Promise.resolve();
76
- }
77
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
78
- acquireTokenPopup(request) {
79
- blockAPICallsBeforeInitialize(this.initialized);
80
- blockNonBrowserEnvironment();
81
- return {};
82
- }
83
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
84
- acquireTokenRedirect(request) {
85
- blockAPICallsBeforeInitialize(this.initialized);
86
- blockNonBrowserEnvironment();
87
- return Promise.resolve();
88
- }
89
- acquireTokenSilent(
90
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
91
- silentRequest) {
92
- blockAPICallsBeforeInitialize(this.initialized);
93
- blockNonBrowserEnvironment();
94
- return {};
95
- }
96
- acquireTokenByCode(
97
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
98
- request) {
99
- blockAPICallsBeforeInitialize(this.initialized);
100
- blockNonBrowserEnvironment();
101
- return {};
102
- }
103
- acquireTokenNative(
104
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
105
- request,
106
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
107
- apiId,
108
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
109
- accountId) {
110
- blockAPICallsBeforeInitialize(this.initialized);
111
- blockNonBrowserEnvironment();
112
- return {};
113
- }
114
- acquireTokenByRefreshToken(
115
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
116
- commonRequest,
117
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
118
- silentRequest) {
119
- blockAPICallsBeforeInitialize(this.initialized);
120
- blockNonBrowserEnvironment();
121
- return {};
122
- }
123
- addEventCallback(callback) {
124
- return this.eventHandler.addEventCallback(callback);
125
- }
126
- removeEventCallback(callbackId) {
127
- this.eventHandler.removeEventCallback(callbackId);
128
- }
129
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
130
- addPerformanceCallback(callback) {
131
- blockAPICallsBeforeInitialize(this.initialized);
132
- blockNonBrowserEnvironment();
133
- return "";
134
- }
135
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
136
- removePerformanceCallback(callbackId) {
137
- blockAPICallsBeforeInitialize(this.initialized);
138
- blockNonBrowserEnvironment();
139
- return true;
140
- }
141
- enableAccountStorageEvents() {
142
- blockAPICallsBeforeInitialize(this.initialized);
143
- blockNonBrowserEnvironment();
144
- }
145
- disableAccountStorageEvents() {
146
- blockAPICallsBeforeInitialize(this.initialized);
147
- blockNonBrowserEnvironment();
148
- }
149
- handleRedirectPromise(
150
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
151
- hash) {
152
- blockAPICallsBeforeInitialize(this.initialized);
153
- return Promise.resolve(null);
154
- }
155
- loginPopup(
156
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
157
- request) {
158
- blockAPICallsBeforeInitialize(this.initialized);
159
- blockNonBrowserEnvironment();
160
- return {};
161
- }
162
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
163
- loginRedirect(request) {
164
- blockAPICallsBeforeInitialize(this.initialized);
165
- blockNonBrowserEnvironment();
166
- return {};
167
- }
168
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
169
- logout(logoutRequest) {
170
- blockAPICallsBeforeInitialize(this.initialized);
171
- blockNonBrowserEnvironment();
172
- return {};
173
- }
174
- logoutRedirect(
175
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
176
- logoutRequest) {
177
- blockAPICallsBeforeInitialize(this.initialized);
178
- blockNonBrowserEnvironment();
179
- return {};
180
- }
181
- logoutPopup(
182
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
183
- logoutRequest) {
184
- blockAPICallsBeforeInitialize(this.initialized);
185
- blockNonBrowserEnvironment();
186
- return {};
187
- }
188
- ssoSilent(
189
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
190
- request) {
191
- blockAPICallsBeforeInitialize(this.initialized);
192
- blockNonBrowserEnvironment();
193
- return {};
194
- }
195
- getTokenCache() {
196
- blockAPICallsBeforeInitialize(this.initialized);
197
- blockNonBrowserEnvironment();
198
- return {};
199
- }
200
- getLogger() {
201
- return this.logger;
202
- }
203
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
204
- setLogger(logger) {
205
- blockAPICallsBeforeInitialize(this.initialized);
206
- blockNonBrowserEnvironment();
207
- }
208
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
209
- setActiveAccount(account) {
210
- blockAPICallsBeforeInitialize(this.initialized);
211
- blockNonBrowserEnvironment();
212
- }
213
- getActiveAccount() {
214
- blockAPICallsBeforeInitialize(this.initialized);
215
- blockNonBrowserEnvironment();
216
- return null;
217
- }
218
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
219
- initializeWrapperLibrary(sku, version) {
220
- this.browserStorage.setWrapperMetadata(sku, version);
221
- }
222
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
223
- setNavigationClient(navigationClient) {
224
- blockAPICallsBeforeInitialize(this.initialized);
225
- blockNonBrowserEnvironment();
226
- }
227
- getConfiguration() {
228
- return this.config;
229
- }
230
- isBrowserEnv() {
231
- blockAPICallsBeforeInitialize(this.initialized);
232
- blockNonBrowserEnvironment();
233
- return true;
234
- }
235
- getBrowserCrypto() {
236
- blockAPICallsBeforeInitialize(this.initialized);
237
- blockNonBrowserEnvironment();
238
- return {};
239
- }
240
- getPerformanceClient() {
241
- blockAPICallsBeforeInitialize(this.initialized);
242
- blockNonBrowserEnvironment();
243
- return {};
244
- }
245
- getRedirectResponse() {
246
- blockAPICallsBeforeInitialize(this.initialized);
247
- blockNonBrowserEnvironment();
248
- return {};
249
- }
250
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
251
- async clearCache(logoutRequest) {
252
- blockAPICallsBeforeInitialize(this.initialized);
253
- blockNonBrowserEnvironment();
254
- }
255
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
256
- async hydrateCache(
257
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
258
- result,
259
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
260
- request) {
261
- blockAPICallsBeforeInitialize(this.initialized);
262
- blockNonBrowserEnvironment();
263
- }
9
+ /*
10
+ * Copyright (c) Microsoft Corporation. All rights reserved.
11
+ * Licensed under the MIT License.
12
+ */
13
+ /**
14
+ * UnknownOperatingContextController class
15
+ *
16
+ * - Until initialize method is called, this controller is the default
17
+ * - AFter initialize method is called, this controller will be swapped out for the appropriate controller
18
+ * if the operating context can be determined; otherwise this controller will continued be used
19
+ *
20
+ * - Why do we have this? We don't want to dynamically import (download) all of the code in StandardController if we don't need to.
21
+ *
22
+ * - Only includes implementation for getAccounts and handleRedirectPromise
23
+ * - All other methods are will throw initialization error (because either initialize method or the factory method were not used)
24
+ * - This controller is necessary for React Native wrapper, server side rendering and any other scenario where we don't have a DOM
25
+ *
26
+ */
27
+ class UnknownOperatingContextController {
28
+ constructor(operatingContext) {
29
+ // Flag representing whether or not the initialize API has been called and completed
30
+ this.initialized = false;
31
+ this.operatingContext = operatingContext;
32
+ this.isBrowserEnvironment =
33
+ this.operatingContext.isBrowserEnvironment();
34
+ this.config = operatingContext.getConfig();
35
+ this.logger = operatingContext.getLogger();
36
+ // Initialize performance client
37
+ this.performanceClient = this.config.telemetry.client;
38
+ // Initialize the crypto class.
39
+ this.browserCrypto = this.isBrowserEnvironment
40
+ ? new CryptoOps(this.logger, this.performanceClient)
41
+ : DEFAULT_CRYPTO_IMPLEMENTATION;
42
+ // Initialize the browser storage class.
43
+ this.browserStorage = this.isBrowserEnvironment
44
+ ? new BrowserCacheManager(this.config.auth.clientId, this.config.cache, this.browserCrypto, this.logger, undefined, this.performanceClient)
45
+ : DEFAULT_BROWSER_CACHE_MANAGER(this.config.auth.clientId, this.logger);
46
+ this.eventHandler = new EventHandler(this.logger, this.browserCrypto);
47
+ }
48
+ getBrowserStorage() {
49
+ return this.browserStorage;
50
+ }
51
+ getEventHandler() {
52
+ return this.eventHandler;
53
+ }
54
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
55
+ getAccount(accountFilter) {
56
+ return null;
57
+ }
58
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
59
+ getAccountByHomeId(homeAccountId) {
60
+ return null;
61
+ }
62
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
63
+ getAccountByLocalId(localAccountId) {
64
+ return null;
65
+ }
66
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
67
+ getAccountByUsername(username) {
68
+ return null;
69
+ }
70
+ getAllAccounts() {
71
+ return [];
72
+ }
73
+ initialize() {
74
+ this.initialized = true;
75
+ return Promise.resolve();
76
+ }
77
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
78
+ acquireTokenPopup(request) {
79
+ blockAPICallsBeforeInitialize(this.initialized);
80
+ blockNonBrowserEnvironment();
81
+ return {};
82
+ }
83
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
84
+ acquireTokenRedirect(request) {
85
+ blockAPICallsBeforeInitialize(this.initialized);
86
+ blockNonBrowserEnvironment();
87
+ return Promise.resolve();
88
+ }
89
+ acquireTokenSilent(
90
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
91
+ silentRequest) {
92
+ blockAPICallsBeforeInitialize(this.initialized);
93
+ blockNonBrowserEnvironment();
94
+ return {};
95
+ }
96
+ acquireTokenByCode(
97
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
98
+ request) {
99
+ blockAPICallsBeforeInitialize(this.initialized);
100
+ blockNonBrowserEnvironment();
101
+ return {};
102
+ }
103
+ acquireTokenNative(
104
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
105
+ request,
106
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
107
+ apiId,
108
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
109
+ accountId) {
110
+ blockAPICallsBeforeInitialize(this.initialized);
111
+ blockNonBrowserEnvironment();
112
+ return {};
113
+ }
114
+ acquireTokenByRefreshToken(
115
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
116
+ commonRequest,
117
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
118
+ silentRequest) {
119
+ blockAPICallsBeforeInitialize(this.initialized);
120
+ blockNonBrowserEnvironment();
121
+ return {};
122
+ }
123
+ addEventCallback(callback) {
124
+ return this.eventHandler.addEventCallback(callback);
125
+ }
126
+ removeEventCallback(callbackId) {
127
+ this.eventHandler.removeEventCallback(callbackId);
128
+ }
129
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
130
+ addPerformanceCallback(callback) {
131
+ blockAPICallsBeforeInitialize(this.initialized);
132
+ blockNonBrowserEnvironment();
133
+ return "";
134
+ }
135
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
136
+ removePerformanceCallback(callbackId) {
137
+ blockAPICallsBeforeInitialize(this.initialized);
138
+ blockNonBrowserEnvironment();
139
+ return true;
140
+ }
141
+ enableAccountStorageEvents() {
142
+ blockAPICallsBeforeInitialize(this.initialized);
143
+ blockNonBrowserEnvironment();
144
+ }
145
+ disableAccountStorageEvents() {
146
+ blockAPICallsBeforeInitialize(this.initialized);
147
+ blockNonBrowserEnvironment();
148
+ }
149
+ handleRedirectPromise(
150
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
151
+ hash) {
152
+ blockAPICallsBeforeInitialize(this.initialized);
153
+ return Promise.resolve(null);
154
+ }
155
+ loginPopup(
156
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
157
+ request) {
158
+ blockAPICallsBeforeInitialize(this.initialized);
159
+ blockNonBrowserEnvironment();
160
+ return {};
161
+ }
162
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
163
+ loginRedirect(request) {
164
+ blockAPICallsBeforeInitialize(this.initialized);
165
+ blockNonBrowserEnvironment();
166
+ return {};
167
+ }
168
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
169
+ logout(logoutRequest) {
170
+ blockAPICallsBeforeInitialize(this.initialized);
171
+ blockNonBrowserEnvironment();
172
+ return {};
173
+ }
174
+ logoutRedirect(
175
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
176
+ logoutRequest) {
177
+ blockAPICallsBeforeInitialize(this.initialized);
178
+ blockNonBrowserEnvironment();
179
+ return {};
180
+ }
181
+ logoutPopup(
182
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
183
+ logoutRequest) {
184
+ blockAPICallsBeforeInitialize(this.initialized);
185
+ blockNonBrowserEnvironment();
186
+ return {};
187
+ }
188
+ ssoSilent(
189
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
190
+ request) {
191
+ blockAPICallsBeforeInitialize(this.initialized);
192
+ blockNonBrowserEnvironment();
193
+ return {};
194
+ }
195
+ getTokenCache() {
196
+ blockAPICallsBeforeInitialize(this.initialized);
197
+ blockNonBrowserEnvironment();
198
+ return {};
199
+ }
200
+ getLogger() {
201
+ return this.logger;
202
+ }
203
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
204
+ setLogger(logger) {
205
+ blockAPICallsBeforeInitialize(this.initialized);
206
+ blockNonBrowserEnvironment();
207
+ }
208
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
209
+ setActiveAccount(account) {
210
+ blockAPICallsBeforeInitialize(this.initialized);
211
+ blockNonBrowserEnvironment();
212
+ }
213
+ getActiveAccount() {
214
+ blockAPICallsBeforeInitialize(this.initialized);
215
+ blockNonBrowserEnvironment();
216
+ return null;
217
+ }
218
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
219
+ initializeWrapperLibrary(sku, version) {
220
+ this.browserStorage.setWrapperMetadata(sku, version);
221
+ }
222
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
223
+ setNavigationClient(navigationClient) {
224
+ blockAPICallsBeforeInitialize(this.initialized);
225
+ blockNonBrowserEnvironment();
226
+ }
227
+ getConfiguration() {
228
+ return this.config;
229
+ }
230
+ isBrowserEnv() {
231
+ blockAPICallsBeforeInitialize(this.initialized);
232
+ blockNonBrowserEnvironment();
233
+ return true;
234
+ }
235
+ getBrowserCrypto() {
236
+ blockAPICallsBeforeInitialize(this.initialized);
237
+ blockNonBrowserEnvironment();
238
+ return {};
239
+ }
240
+ getPerformanceClient() {
241
+ blockAPICallsBeforeInitialize(this.initialized);
242
+ blockNonBrowserEnvironment();
243
+ return {};
244
+ }
245
+ getRedirectResponse() {
246
+ blockAPICallsBeforeInitialize(this.initialized);
247
+ blockNonBrowserEnvironment();
248
+ return {};
249
+ }
250
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
251
+ async clearCache(logoutRequest) {
252
+ blockAPICallsBeforeInitialize(this.initialized);
253
+ blockNonBrowserEnvironment();
254
+ }
255
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
256
+ async hydrateCache(
257
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
258
+ result,
259
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
260
+ request) {
261
+ blockAPICallsBeforeInitialize(this.initialized);
262
+ blockNonBrowserEnvironment();
263
+ }
264
264
  }
265
265
 
266
266
  export { UnknownOperatingContextController };
@@ -1,53 +1,53 @@
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 {string} data string
9
- * @param performanceClient {?IPerformanceClient}
10
- * @param correlationId {?string} correlation id
11
- */
12
- export declare function sha256Digest(dataString: string, performanceClient?: IPerformanceClient, correlationId?: string): Promise<ArrayBuffer>;
13
- /**
14
- * Populates buffer with cryptographically random values.
15
- * @param dataBuffer
16
- */
17
- export declare function getRandomValues(dataBuffer: Uint8Array): Uint8Array;
18
- /**
19
- * Creates a UUID v7 from the current timestamp.
20
- * Implementation relies on the system clock to guarantee increasing order of generated identifiers.
21
- * @returns {number}
22
- */
23
- export declare function createNewGuid(): string;
24
- /**
25
- * Generates a keypair based on current keygen algorithm config.
26
- * @param extractable
27
- * @param usages
28
- */
29
- export declare function generateKeyPair(extractable: boolean, usages: Array<KeyUsage>): Promise<CryptoKeyPair>;
30
- /**
31
- * Export key as Json Web Key (JWK)
32
- * @param key
33
- */
34
- export declare function exportJwk(key: CryptoKey): Promise<JsonWebKey>;
35
- /**
36
- * Imports key as Json Web Key (JWK), can set extractable and usages.
37
- * @param key
38
- * @param extractable
39
- * @param usages
40
- */
41
- export declare function importJwk(key: JsonWebKey, extractable: boolean, usages: Array<KeyUsage>): Promise<CryptoKey>;
42
- /**
43
- * Signs given data with given key
44
- * @param key
45
- * @param data
46
- */
47
- export declare function sign(key: CryptoKey, data: ArrayBuffer): Promise<ArrayBuffer>;
48
- /**
49
- * Returns the SHA-256 hash of an input string
50
- * @param plainText
51
- */
52
- export declare function hashString(plainText: string): Promise<string>;
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 {string} data string
9
+ * @param performanceClient {?IPerformanceClient}
10
+ * @param correlationId {?string} correlation id
11
+ */
12
+ export declare function sha256Digest(dataString: string, performanceClient?: IPerformanceClient, correlationId?: string): Promise<ArrayBuffer>;
13
+ /**
14
+ * Populates buffer with cryptographically random values.
15
+ * @param dataBuffer
16
+ */
17
+ export declare function getRandomValues(dataBuffer: Uint8Array): Uint8Array;
18
+ /**
19
+ * Creates a UUID v7 from the current timestamp.
20
+ * Implementation relies on the system clock to guarantee increasing order of generated identifiers.
21
+ * @returns {number}
22
+ */
23
+ export declare function createNewGuid(): string;
24
+ /**
25
+ * Generates a keypair based on current keygen algorithm config.
26
+ * @param extractable
27
+ * @param usages
28
+ */
29
+ export declare function generateKeyPair(extractable: boolean, usages: Array<KeyUsage>): Promise<CryptoKeyPair>;
30
+ /**
31
+ * Export key as Json Web Key (JWK)
32
+ * @param key
33
+ */
34
+ export declare function exportJwk(key: CryptoKey): Promise<JsonWebKey>;
35
+ /**
36
+ * Imports key as Json Web Key (JWK), can set extractable and usages.
37
+ * @param key
38
+ * @param extractable
39
+ * @param usages
40
+ */
41
+ export declare function importJwk(key: JsonWebKey, extractable: boolean, usages: Array<KeyUsage>): Promise<CryptoKey>;
42
+ /**
43
+ * Signs given data with given key
44
+ * @param key
45
+ * @param data
46
+ */
47
+ export declare function sign(key: CryptoKey, data: ArrayBuffer): Promise<ArrayBuffer>;
48
+ /**
49
+ * Returns the SHA-256 hash of an input string
50
+ * @param plainText
51
+ */
52
+ export declare function hashString(plainText: string): Promise<string>;
53
53
  //# sourceMappingURL=BrowserCrypto.d.ts.map