@azure/msal-browser 3.19.1 → 3.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app/IPublicClientApplication.d.ts +53 -53
- package/dist/app/IPublicClientApplication.mjs +105 -105
- package/dist/app/PublicClientApplication.d.ts +293 -293
- package/dist/app/PublicClientApplication.mjs +364 -364
- package/dist/app/PublicClientNext.d.ts +276 -276
- package/dist/app/PublicClientNext.mjs +354 -354
- package/dist/broker/nativeBroker/NativeMessageHandler.d.ts +62 -62
- package/dist/broker/nativeBroker/NativeMessageHandler.mjs +254 -254
- package/dist/broker/nativeBroker/NativeRequest.d.ts +45 -45
- package/dist/broker/nativeBroker/NativeResponse.d.ts +48 -48
- package/dist/broker/nativeBroker/NativeStatusCodes.d.ts +7 -7
- package/dist/broker/nativeBroker/NativeStatusCodes.mjs +11 -11
- package/dist/cache/AccountManager.d.ts +48 -48
- package/dist/cache/AccountManager.mjs +126 -126
- package/dist/cache/AsyncMemoryStorage.d.ts +50 -50
- package/dist/cache/AsyncMemoryStorage.mjs +131 -131
- package/dist/cache/BrowserCacheManager.d.ts +410 -385
- package/dist/cache/BrowserCacheManager.d.ts.map +1 -1
- package/dist/cache/BrowserCacheManager.mjs +1364 -1294
- package/dist/cache/BrowserCacheManager.mjs.map +1 -1
- package/dist/cache/BrowserStorage.d.ts +11 -11
- package/dist/cache/BrowserStorage.mjs +32 -32
- package/dist/cache/DatabaseStorage.d.ts +56 -56
- package/dist/cache/DatabaseStorage.mjs +200 -200
- package/dist/cache/IAsyncStorage.d.ts +27 -27
- package/dist/cache/ITokenCache.d.ts +11 -11
- package/dist/cache/IWindowStorage.d.ts +27 -27
- package/dist/cache/MemoryStorage.d.ts +11 -11
- package/dist/cache/MemoryStorage.mjs +31 -31
- package/dist/cache/TokenCache.d.ts +77 -77
- package/dist/cache/TokenCache.mjs +195 -195
- package/dist/config/Configuration.d.ts +213 -208
- package/dist/config/Configuration.d.ts.map +1 -1
- package/dist/config/Configuration.mjs +128 -128
- package/dist/config/Configuration.mjs.map +1 -1
- package/dist/controllers/ControllerFactory.d.ts +5 -5
- package/dist/controllers/ControllerFactory.mjs +25 -25
- package/dist/controllers/IController.d.ts +60 -60
- package/dist/controllers/NestedAppAuthController.d.ts +202 -202
- package/dist/controllers/NestedAppAuthController.mjs +473 -473
- package/dist/controllers/StandardController.d.ts +405 -405
- package/dist/controllers/StandardController.d.ts.map +1 -1
- package/dist/controllers/StandardController.mjs +1334 -1316
- package/dist/controllers/StandardController.mjs.map +1 -1
- package/dist/controllers/UnknownOperatingContextController.d.ts +86 -86
- package/dist/controllers/UnknownOperatingContextController.mjs +256 -256
- package/dist/crypto/BrowserCrypto.d.ts +52 -52
- package/dist/crypto/BrowserCrypto.mjs +151 -151
- package/dist/crypto/CryptoOps.d.ts +74 -74
- package/dist/crypto/CryptoOps.mjs +176 -176
- package/dist/crypto/PkceGenerator.d.ts +8 -8
- package/dist/crypto/PkceGenerator.mjs +54 -54
- package/dist/crypto/SignedHttpRequest.d.ts +30 -30
- package/dist/crypto/SignedHttpRequest.mjs +39 -39
- package/dist/encode/Base64Decode.d.ts +9 -9
- package/dist/encode/Base64Decode.mjs +36 -36
- package/dist/encode/Base64Encode.d.ts +19 -19
- package/dist/encode/Base64Encode.mjs +43 -43
- package/dist/error/BrowserAuthError.d.ts +256 -255
- package/dist/error/BrowserAuthError.d.ts.map +1 -1
- package/dist/error/BrowserAuthError.mjs +265 -264
- package/dist/error/BrowserAuthError.mjs.map +1 -1
- package/dist/error/BrowserAuthErrorCodes.d.ts +47 -46
- package/dist/error/BrowserAuthErrorCodes.d.ts.map +1 -1
- package/dist/error/BrowserAuthErrorCodes.mjs +53 -52
- package/dist/error/BrowserAuthErrorCodes.mjs.map +1 -1
- package/dist/error/BrowserConfigurationAuthError.d.ts +33 -33
- package/dist/error/BrowserConfigurationAuthError.mjs +40 -40
- package/dist/error/BrowserConfigurationAuthError.mjs.map +1 -1
- package/dist/error/BrowserConfigurationAuthErrorCodes.d.ts +3 -3
- package/dist/error/BrowserConfigurationAuthErrorCodes.mjs +7 -7
- package/dist/error/NativeAuthError.d.ts +29 -29
- package/dist/error/NativeAuthError.mjs +60 -60
- package/dist/error/NativeAuthErrorCodes.d.ts +2 -2
- package/dist/error/NativeAuthErrorCodes.mjs +6 -6
- package/dist/error/NestedAppAuthError.d.ts +14 -14
- package/dist/error/NestedAppAuthError.mjs +23 -23
- package/dist/event/EventHandler.d.ts +41 -41
- package/dist/event/EventHandler.mjs +125 -125
- package/dist/event/EventMessage.d.ts +25 -25
- package/dist/event/EventMessage.mjs +68 -68
- package/dist/event/EventType.d.ts +29 -29
- package/dist/event/EventType.mjs +32 -32
- package/dist/index.d.ts +40 -40
- package/dist/index.mjs +1 -1
- package/dist/interaction_client/BaseInteractionClient.d.ts +50 -50
- package/dist/interaction_client/BaseInteractionClient.mjs +106 -106
- package/dist/interaction_client/HybridSpaAuthorizationCodeClient.d.ts +4 -4
- package/dist/interaction_client/HybridSpaAuthorizationCodeClient.mjs +10 -10
- package/dist/interaction_client/NativeInteractionClient.d.ts +151 -143
- package/dist/interaction_client/NativeInteractionClient.d.ts.map +1 -1
- package/dist/interaction_client/NativeInteractionClient.mjs +624 -584
- package/dist/interaction_client/NativeInteractionClient.mjs.map +1 -1
- package/dist/interaction_client/PopupClient.d.ts +118 -105
- package/dist/interaction_client/PopupClient.d.ts.map +1 -1
- package/dist/interaction_client/PopupClient.mjs +460 -434
- package/dist/interaction_client/PopupClient.mjs.map +1 -1
- package/dist/interaction_client/RedirectClient.d.ts +50 -50
- package/dist/interaction_client/RedirectClient.d.ts.map +1 -1
- package/dist/interaction_client/RedirectClient.mjs +349 -317
- package/dist/interaction_client/RedirectClient.mjs.map +1 -1
- package/dist/interaction_client/SilentAuthCodeClient.d.ts +23 -23
- package/dist/interaction_client/SilentAuthCodeClient.mjs +57 -57
- package/dist/interaction_client/SilentCacheClient.d.ts +16 -16
- package/dist/interaction_client/SilentCacheClient.mjs +42 -42
- package/dist/interaction_client/SilentIframeClient.d.ts +32 -32
- package/dist/interaction_client/SilentIframeClient.d.ts.map +1 -1
- package/dist/interaction_client/SilentIframeClient.mjs +111 -101
- package/dist/interaction_client/SilentIframeClient.mjs.map +1 -1
- package/dist/interaction_client/SilentRefreshClient.d.ts +20 -20
- package/dist/interaction_client/SilentRefreshClient.mjs +47 -47
- package/dist/interaction_client/StandardInteractionClient.d.ts +48 -48
- package/dist/interaction_client/StandardInteractionClient.mjs +199 -199
- package/dist/interaction_handler/InteractionHandler.d.ts +33 -33
- package/dist/interaction_handler/InteractionHandler.mjs +93 -93
- package/dist/interaction_handler/RedirectHandler.d.ts +32 -32
- package/dist/interaction_handler/RedirectHandler.d.ts.map +1 -1
- package/dist/interaction_handler/RedirectHandler.mjs +135 -134
- package/dist/interaction_handler/RedirectHandler.mjs.map +1 -1
- package/dist/interaction_handler/SilentHandler.d.ts +13 -13
- package/dist/interaction_handler/SilentHandler.mjs +134 -134
- package/dist/naa/AccountInfo.d.ts +11 -11
- package/dist/naa/AuthBridge.d.ts +8 -8
- package/dist/naa/AuthResult.d.ts +6 -6
- package/dist/naa/BridgeAccountContext.d.ts +12 -12
- package/dist/naa/BridgeCapabilities.d.ts +3 -3
- package/dist/naa/BridgeError.d.ts +9 -9
- package/dist/naa/BridgeError.mjs +7 -7
- package/dist/naa/BridgeProxy.d.ts +67 -67
- package/dist/naa/BridgeProxy.d.ts.map +1 -1
- package/dist/naa/BridgeProxy.mjs +153 -148
- package/dist/naa/BridgeProxy.mjs.map +1 -1
- package/dist/naa/BridgeRequest.d.ts +7 -7
- package/dist/naa/BridgeRequestEnvelope.d.ts +12 -12
- package/dist/naa/BridgeResponseEnvelope.d.ts +13 -13
- package/dist/naa/BridgeStatusCode.d.ts +11 -11
- package/dist/naa/BridgeStatusCode.mjs +14 -14
- package/dist/naa/IBridgeProxy.d.ts +10 -10
- package/dist/naa/InitContext.d.ts +8 -8
- package/dist/naa/TokenRequest.d.ts +18 -18
- package/dist/naa/TokenResponse.d.ts +13 -13
- package/dist/naa/mapping/NestedAppAuthAdapter.d.ts +35 -35
- package/dist/naa/mapping/NestedAppAuthAdapter.mjs +179 -179
- package/dist/navigation/INavigationClient.d.ts +16 -16
- package/dist/navigation/NavigationClient.d.ts +22 -22
- package/dist/navigation/NavigationClient.mjs +40 -40
- package/dist/navigation/NavigationOptions.d.ts +12 -12
- package/dist/network/FetchClient.d.ts +26 -26
- package/dist/network/FetchClient.mjs +99 -99
- package/dist/operatingcontext/BaseOperatingContext.d.ts +41 -41
- package/dist/operatingcontext/BaseOperatingContext.mjs +94 -94
- package/dist/operatingcontext/NestedAppOperatingContext.d.ts +34 -34
- package/dist/operatingcontext/NestedAppOperatingContext.mjs +71 -71
- package/dist/operatingcontext/StandardOperatingContext.d.ts +25 -25
- package/dist/operatingcontext/StandardOperatingContext.mjs +43 -43
- package/dist/operatingcontext/UnknownOperatingContext.d.ts +25 -25
- package/dist/operatingcontext/UnknownOperatingContext.mjs +42 -42
- package/dist/packageMetadata.d.ts +2 -2
- package/dist/packageMetadata.mjs +4 -4
- package/dist/request/AuthorizationCodeRequest.d.ts +8 -8
- package/dist/request/AuthorizationUrlRequest.d.ts +8 -8
- package/dist/request/ClearCacheRequest.d.ts +10 -10
- package/dist/request/EndSessionPopupRequest.d.ts +18 -18
- package/dist/request/EndSessionRequest.d.ts +15 -15
- package/dist/request/InitializeApplicationRequest.d.ts +8 -8
- package/dist/request/PopupRequest.d.ts +34 -34
- package/dist/request/PopupWindowAttributes.d.ts +15 -15
- package/dist/request/RedirectRequest.d.ts +40 -35
- package/dist/request/RedirectRequest.d.ts.map +1 -1
- package/dist/request/RequestHelpers.d.ts +13 -13
- package/dist/request/RequestHelpers.mjs +53 -53
- package/dist/request/SilentRequest.d.ts +33 -33
- package/dist/request/SsoSilentRequest.d.ts +29 -29
- package/dist/response/AuthenticationResult.d.ts +4 -4
- package/dist/response/ResponseHandler.d.ts +7 -7
- package/dist/response/ResponseHandler.mjs +36 -36
- package/dist/telemetry/BrowserPerformanceClient.d.ts +38 -34
- package/dist/telemetry/BrowserPerformanceClient.d.ts.map +1 -1
- package/dist/telemetry/BrowserPerformanceClient.mjs +163 -163
- package/dist/telemetry/BrowserPerformanceClient.mjs.map +1 -1
- package/dist/telemetry/BrowserPerformanceMeasurement.d.ts +21 -21
- package/dist/telemetry/BrowserPerformanceMeasurement.mjs +92 -92
- package/dist/utils/BrowserConstants.d.ts +182 -180
- package/dist/utils/BrowserConstants.d.ts.map +1 -1
- package/dist/utils/BrowserConstants.mjs +214 -212
- package/dist/utils/BrowserConstants.mjs.map +1 -1
- package/dist/utils/BrowserProtocolUtils.d.ts +11 -11
- package/dist/utils/BrowserProtocolUtils.mjs +21 -21
- package/dist/utils/BrowserUtils.d.ts +75 -75
- package/dist/utils/BrowserUtils.mjs +157 -157
- package/lib/msal-browser.cjs +19028 -18759
- package/lib/msal-browser.cjs.map +1 -1
- package/lib/msal-browser.js +19028 -18759
- package/lib/msal-browser.js.map +1 -1
- package/lib/msal-browser.min.js +65 -65
- package/package.json +2 -2
- package/src/cache/BrowserCacheManager.ts +95 -0
- package/src/config/Configuration.ts +9 -1
- package/src/controllers/StandardController.ts +30 -12
- package/src/error/BrowserAuthError.ts +2 -0
- package/src/error/BrowserAuthErrorCodes.ts +1 -0
- package/src/interaction_client/NativeInteractionClient.ts +105 -54
- package/src/interaction_client/PopupClient.ts +202 -117
- package/src/interaction_client/RedirectClient.ts +62 -2
- package/src/interaction_client/SilentIframeClient.ts +41 -3
- package/src/interaction_handler/RedirectHandler.ts +1 -0
- package/src/naa/BridgeProxy.ts +7 -2
- package/src/packageMetadata.ts +1 -1
- package/src/request/RedirectRequest.ts +5 -0
- package/src/telemetry/BrowserPerformanceClient.ts +1 -1
- package/src/utils/BrowserConstants.ts +2 -0
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
/*! @azure/msal-browser v3.
|
|
1
|
+
/*! @azure/msal-browser v3.21.0 2024-08-13 */
|
|
2
2
|
'use strict';
|
|
3
|
-
/*
|
|
4
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
5
|
-
* Licensed under the MIT License.
|
|
6
|
-
*/
|
|
7
|
-
const contentError = "ContentError";
|
|
3
|
+
/*
|
|
4
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
5
|
+
* Licensed under the MIT License.
|
|
6
|
+
*/
|
|
7
|
+
const contentError = "ContentError";
|
|
8
8
|
const userSwitch = "user_switch";
|
|
9
9
|
|
|
10
10
|
export { contentError, userSwitch };
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { AuthError } from "@azure/msal-common";
|
|
2
|
-
/**
|
|
3
|
-
* NestedAppAuthErrorMessage class containing string constants used by error codes and messages.
|
|
4
|
-
*/
|
|
5
|
-
export declare const NestedAppAuthErrorMessage: {
|
|
6
|
-
unsupportedMethod: {
|
|
7
|
-
code: string;
|
|
8
|
-
desc: string;
|
|
9
|
-
};
|
|
10
|
-
};
|
|
11
|
-
export declare class NestedAppAuthError extends AuthError {
|
|
12
|
-
constructor(errorCode: string, errorMessage?: string);
|
|
13
|
-
static createUnsupportedError(): NestedAppAuthError;
|
|
14
|
-
}
|
|
1
|
+
import { AuthError } from "@azure/msal-common";
|
|
2
|
+
/**
|
|
3
|
+
* NestedAppAuthErrorMessage class containing string constants used by error codes and messages.
|
|
4
|
+
*/
|
|
5
|
+
export declare const NestedAppAuthErrorMessage: {
|
|
6
|
+
unsupportedMethod: {
|
|
7
|
+
code: string;
|
|
8
|
+
desc: string;
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
export declare class NestedAppAuthError extends AuthError {
|
|
12
|
+
constructor(errorCode: string, errorMessage?: string);
|
|
13
|
+
static createUnsupportedError(): NestedAppAuthError;
|
|
14
|
+
}
|
|
15
15
|
//# sourceMappingURL=NestedAppAuthError.d.ts.map
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
/*! @azure/msal-browser v3.
|
|
1
|
+
/*! @azure/msal-browser v3.21.0 2024-08-13 */
|
|
2
2
|
'use strict';
|
|
3
3
|
import { AuthError } from '@azure/msal-common';
|
|
4
4
|
|
|
5
|
-
/*
|
|
6
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
7
|
-
* Licensed under the MIT License.
|
|
8
|
-
*/
|
|
9
|
-
/**
|
|
10
|
-
* NestedAppAuthErrorMessage class containing string constants used by error codes and messages.
|
|
11
|
-
*/
|
|
12
|
-
const NestedAppAuthErrorMessage = {
|
|
13
|
-
unsupportedMethod: {
|
|
14
|
-
code: "unsupported_method",
|
|
15
|
-
desc: "This method is not supported in nested app environment.",
|
|
16
|
-
},
|
|
17
|
-
};
|
|
18
|
-
class NestedAppAuthError extends AuthError {
|
|
19
|
-
constructor(errorCode, errorMessage) {
|
|
20
|
-
super(errorCode, errorMessage);
|
|
21
|
-
Object.setPrototypeOf(this, NestedAppAuthError.prototype);
|
|
22
|
-
this.name = "NestedAppAuthError";
|
|
23
|
-
}
|
|
24
|
-
static createUnsupportedError() {
|
|
25
|
-
return new NestedAppAuthError(NestedAppAuthErrorMessage.unsupportedMethod.code, NestedAppAuthErrorMessage.unsupportedMethod.desc);
|
|
26
|
-
}
|
|
5
|
+
/*
|
|
6
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
7
|
+
* Licensed under the MIT License.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* NestedAppAuthErrorMessage class containing string constants used by error codes and messages.
|
|
11
|
+
*/
|
|
12
|
+
const NestedAppAuthErrorMessage = {
|
|
13
|
+
unsupportedMethod: {
|
|
14
|
+
code: "unsupported_method",
|
|
15
|
+
desc: "This method is not supported in nested app environment.",
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
class NestedAppAuthError extends AuthError {
|
|
19
|
+
constructor(errorCode, errorMessage) {
|
|
20
|
+
super(errorCode, errorMessage);
|
|
21
|
+
Object.setPrototypeOf(this, NestedAppAuthError.prototype);
|
|
22
|
+
this.name = "NestedAppAuthError";
|
|
23
|
+
}
|
|
24
|
+
static createUnsupportedError() {
|
|
25
|
+
return new NestedAppAuthError(NestedAppAuthErrorMessage.unsupportedMethod.code, NestedAppAuthErrorMessage.unsupportedMethod.desc);
|
|
26
|
+
}
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
export { NestedAppAuthError, NestedAppAuthErrorMessage };
|
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
import { ICrypto, Logger } from "@azure/msal-common";
|
|
2
|
-
import { InteractionType } from "../utils/BrowserConstants";
|
|
3
|
-
import { EventCallbackFunction, EventError, EventPayload } from "./EventMessage";
|
|
4
|
-
import { EventType } from "./EventType";
|
|
5
|
-
export declare class EventHandler {
|
|
6
|
-
private eventCallbacks;
|
|
7
|
-
private logger;
|
|
8
|
-
private browserCrypto;
|
|
9
|
-
private listeningToStorageEvents;
|
|
10
|
-
constructor(logger: Logger, browserCrypto: ICrypto);
|
|
11
|
-
/**
|
|
12
|
-
* Adds event callbacks to array
|
|
13
|
-
* @param callback
|
|
14
|
-
*/
|
|
15
|
-
addEventCallback(callback: EventCallbackFunction): string | null;
|
|
16
|
-
/**
|
|
17
|
-
* Removes callback with provided id from callback array
|
|
18
|
-
* @param callbackId
|
|
19
|
-
*/
|
|
20
|
-
removeEventCallback(callbackId: string): void;
|
|
21
|
-
/**
|
|
22
|
-
* Adds event listener that emits an event when a user account is added or removed from localstorage in a different browser tab or window
|
|
23
|
-
*/
|
|
24
|
-
enableAccountStorageEvents(): void;
|
|
25
|
-
/**
|
|
26
|
-
* Removes event listener that emits an event when a user account is added or removed from localstorage in a different browser tab or window
|
|
27
|
-
*/
|
|
28
|
-
disableAccountStorageEvents(): void;
|
|
29
|
-
/**
|
|
30
|
-
* Emits events by calling callback with event message
|
|
31
|
-
* @param eventType
|
|
32
|
-
* @param interactionType
|
|
33
|
-
* @param payload
|
|
34
|
-
* @param error
|
|
35
|
-
*/
|
|
36
|
-
emitEvent(eventType: EventType, interactionType?: InteractionType, payload?: EventPayload, error?: EventError): void;
|
|
37
|
-
/**
|
|
38
|
-
* Emit account added/removed events when cached accounts are changed in a different tab or frame
|
|
39
|
-
*/
|
|
40
|
-
private handleAccountCacheChange;
|
|
41
|
-
}
|
|
1
|
+
import { ICrypto, Logger } from "@azure/msal-common";
|
|
2
|
+
import { InteractionType } from "../utils/BrowserConstants";
|
|
3
|
+
import { EventCallbackFunction, EventError, EventPayload } from "./EventMessage";
|
|
4
|
+
import { EventType } from "./EventType";
|
|
5
|
+
export declare class EventHandler {
|
|
6
|
+
private eventCallbacks;
|
|
7
|
+
private logger;
|
|
8
|
+
private browserCrypto;
|
|
9
|
+
private listeningToStorageEvents;
|
|
10
|
+
constructor(logger: Logger, browserCrypto: ICrypto);
|
|
11
|
+
/**
|
|
12
|
+
* Adds event callbacks to array
|
|
13
|
+
* @param callback
|
|
14
|
+
*/
|
|
15
|
+
addEventCallback(callback: EventCallbackFunction): string | null;
|
|
16
|
+
/**
|
|
17
|
+
* Removes callback with provided id from callback array
|
|
18
|
+
* @param callbackId
|
|
19
|
+
*/
|
|
20
|
+
removeEventCallback(callbackId: string): void;
|
|
21
|
+
/**
|
|
22
|
+
* Adds event listener that emits an event when a user account is added or removed from localstorage in a different browser tab or window
|
|
23
|
+
*/
|
|
24
|
+
enableAccountStorageEvents(): void;
|
|
25
|
+
/**
|
|
26
|
+
* Removes event listener that emits an event when a user account is added or removed from localstorage in a different browser tab or window
|
|
27
|
+
*/
|
|
28
|
+
disableAccountStorageEvents(): void;
|
|
29
|
+
/**
|
|
30
|
+
* Emits events by calling callback with event message
|
|
31
|
+
* @param eventType
|
|
32
|
+
* @param interactionType
|
|
33
|
+
* @param payload
|
|
34
|
+
* @param error
|
|
35
|
+
*/
|
|
36
|
+
emitEvent(eventType: EventType, interactionType?: InteractionType, payload?: EventPayload, error?: EventError): void;
|
|
37
|
+
/**
|
|
38
|
+
* Emit account added/removed events when cached accounts are changed in a different tab or frame
|
|
39
|
+
*/
|
|
40
|
+
private handleAccountCacheChange;
|
|
41
|
+
}
|
|
42
42
|
//# sourceMappingURL=EventHandler.d.ts.map
|
|
@@ -1,133 +1,133 @@
|
|
|
1
|
-
/*! @azure/msal-browser v3.
|
|
1
|
+
/*! @azure/msal-browser v3.21.0 2024-08-13 */
|
|
2
2
|
'use strict';
|
|
3
3
|
import { PersistentCacheKeys, AccountEntity, CacheManager } from '@azure/msal-common';
|
|
4
4
|
import { EventType } from './EventType.mjs';
|
|
5
5
|
import { createNewGuid } from '../crypto/BrowserCrypto.mjs';
|
|
6
6
|
|
|
7
|
-
/*
|
|
8
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
9
|
-
* Licensed under the MIT License.
|
|
10
|
-
*/
|
|
11
|
-
class EventHandler {
|
|
12
|
-
constructor(logger, browserCrypto) {
|
|
13
|
-
this.eventCallbacks = new Map();
|
|
14
|
-
this.logger = logger;
|
|
15
|
-
this.browserCrypto = browserCrypto;
|
|
16
|
-
this.listeningToStorageEvents = false;
|
|
17
|
-
this.handleAccountCacheChange =
|
|
18
|
-
this.handleAccountCacheChange.bind(this);
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Adds event callbacks to array
|
|
22
|
-
* @param callback
|
|
23
|
-
*/
|
|
24
|
-
addEventCallback(callback) {
|
|
25
|
-
if (typeof window !== "undefined") {
|
|
26
|
-
const callbackId = createNewGuid();
|
|
27
|
-
this.eventCallbacks.set(callbackId, callback);
|
|
28
|
-
this.logger.verbose(`Event callback registered with id: ${callbackId}`);
|
|
29
|
-
return callbackId;
|
|
30
|
-
}
|
|
31
|
-
return null;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Removes callback with provided id from callback array
|
|
35
|
-
* @param callbackId
|
|
36
|
-
*/
|
|
37
|
-
removeEventCallback(callbackId) {
|
|
38
|
-
this.eventCallbacks.delete(callbackId);
|
|
39
|
-
this.logger.verbose(`Event callback ${callbackId} removed.`);
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Adds event listener that emits an event when a user account is added or removed from localstorage in a different browser tab or window
|
|
43
|
-
*/
|
|
44
|
-
enableAccountStorageEvents() {
|
|
45
|
-
if (typeof window === "undefined") {
|
|
46
|
-
return;
|
|
47
|
-
}
|
|
48
|
-
if (!this.listeningToStorageEvents) {
|
|
49
|
-
this.logger.verbose("Adding account storage listener.");
|
|
50
|
-
this.listeningToStorageEvents = true;
|
|
51
|
-
window.addEventListener("storage", this.handleAccountCacheChange);
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
this.logger.verbose("Account storage listener already registered.");
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Removes event listener that emits an event when a user account is added or removed from localstorage in a different browser tab or window
|
|
59
|
-
*/
|
|
60
|
-
disableAccountStorageEvents() {
|
|
61
|
-
if (typeof window === "undefined") {
|
|
62
|
-
return;
|
|
63
|
-
}
|
|
64
|
-
if (this.listeningToStorageEvents) {
|
|
65
|
-
this.logger.verbose("Removing account storage listener.");
|
|
66
|
-
window.removeEventListener("storage", this.handleAccountCacheChange);
|
|
67
|
-
this.listeningToStorageEvents = false;
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
this.logger.verbose("No account storage listener registered.");
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* Emits events by calling callback with event message
|
|
75
|
-
* @param eventType
|
|
76
|
-
* @param interactionType
|
|
77
|
-
* @param payload
|
|
78
|
-
* @param error
|
|
79
|
-
*/
|
|
80
|
-
emitEvent(eventType, interactionType, payload, error) {
|
|
81
|
-
if (typeof window !== "undefined") {
|
|
82
|
-
const message = {
|
|
83
|
-
eventType: eventType,
|
|
84
|
-
interactionType: interactionType || null,
|
|
85
|
-
payload: payload || null,
|
|
86
|
-
error: error || null,
|
|
87
|
-
timestamp: Date.now(),
|
|
88
|
-
};
|
|
89
|
-
this.logger.info(`Emitting event: ${eventType}`);
|
|
90
|
-
this.eventCallbacks.forEach((callback, callbackId) => {
|
|
91
|
-
this.logger.verbose(`Emitting event to callback ${callbackId}: ${eventType}`);
|
|
92
|
-
callback.apply(null, [message]);
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Emit account added/removed events when cached accounts are changed in a different tab or frame
|
|
98
|
-
*/
|
|
99
|
-
handleAccountCacheChange(e) {
|
|
100
|
-
try {
|
|
101
|
-
// Handle active account filter change
|
|
102
|
-
if (e.key?.includes(PersistentCacheKeys.ACTIVE_ACCOUNT_FILTERS)) {
|
|
103
|
-
// This event has no payload, it only signals cross-tab app instances that the results of calling getActiveAccount() will have changed
|
|
104
|
-
this.emitEvent(EventType.ACTIVE_ACCOUNT_CHANGED);
|
|
105
|
-
}
|
|
106
|
-
// Handle account object change
|
|
107
|
-
const cacheValue = e.newValue || e.oldValue;
|
|
108
|
-
if (!cacheValue) {
|
|
109
|
-
return;
|
|
110
|
-
}
|
|
111
|
-
const parsedValue = JSON.parse(cacheValue);
|
|
112
|
-
if (typeof parsedValue !== "object" ||
|
|
113
|
-
!AccountEntity.isAccountEntity(parsedValue)) {
|
|
114
|
-
return;
|
|
115
|
-
}
|
|
116
|
-
const accountEntity = CacheManager.toObject(new AccountEntity(), parsedValue);
|
|
117
|
-
const accountInfo = accountEntity.getAccountInfo();
|
|
118
|
-
if (!e.oldValue && e.newValue) {
|
|
119
|
-
this.logger.info("Account was added to cache in a different window");
|
|
120
|
-
this.emitEvent(EventType.ACCOUNT_ADDED, undefined, accountInfo);
|
|
121
|
-
}
|
|
122
|
-
else if (!e.newValue && e.oldValue) {
|
|
123
|
-
this.logger.info("Account was removed from cache in a different window");
|
|
124
|
-
this.emitEvent(EventType.ACCOUNT_REMOVED, undefined, accountInfo);
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
catch (e) {
|
|
128
|
-
return;
|
|
129
|
-
}
|
|
130
|
-
}
|
|
7
|
+
/*
|
|
8
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
9
|
+
* Licensed under the MIT License.
|
|
10
|
+
*/
|
|
11
|
+
class EventHandler {
|
|
12
|
+
constructor(logger, browserCrypto) {
|
|
13
|
+
this.eventCallbacks = new Map();
|
|
14
|
+
this.logger = logger;
|
|
15
|
+
this.browserCrypto = browserCrypto;
|
|
16
|
+
this.listeningToStorageEvents = false;
|
|
17
|
+
this.handleAccountCacheChange =
|
|
18
|
+
this.handleAccountCacheChange.bind(this);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Adds event callbacks to array
|
|
22
|
+
* @param callback
|
|
23
|
+
*/
|
|
24
|
+
addEventCallback(callback) {
|
|
25
|
+
if (typeof window !== "undefined") {
|
|
26
|
+
const callbackId = createNewGuid();
|
|
27
|
+
this.eventCallbacks.set(callbackId, callback);
|
|
28
|
+
this.logger.verbose(`Event callback registered with id: ${callbackId}`);
|
|
29
|
+
return callbackId;
|
|
30
|
+
}
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Removes callback with provided id from callback array
|
|
35
|
+
* @param callbackId
|
|
36
|
+
*/
|
|
37
|
+
removeEventCallback(callbackId) {
|
|
38
|
+
this.eventCallbacks.delete(callbackId);
|
|
39
|
+
this.logger.verbose(`Event callback ${callbackId} removed.`);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Adds event listener that emits an event when a user account is added or removed from localstorage in a different browser tab or window
|
|
43
|
+
*/
|
|
44
|
+
enableAccountStorageEvents() {
|
|
45
|
+
if (typeof window === "undefined") {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
if (!this.listeningToStorageEvents) {
|
|
49
|
+
this.logger.verbose("Adding account storage listener.");
|
|
50
|
+
this.listeningToStorageEvents = true;
|
|
51
|
+
window.addEventListener("storage", this.handleAccountCacheChange);
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
this.logger.verbose("Account storage listener already registered.");
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Removes event listener that emits an event when a user account is added or removed from localstorage in a different browser tab or window
|
|
59
|
+
*/
|
|
60
|
+
disableAccountStorageEvents() {
|
|
61
|
+
if (typeof window === "undefined") {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
if (this.listeningToStorageEvents) {
|
|
65
|
+
this.logger.verbose("Removing account storage listener.");
|
|
66
|
+
window.removeEventListener("storage", this.handleAccountCacheChange);
|
|
67
|
+
this.listeningToStorageEvents = false;
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
this.logger.verbose("No account storage listener registered.");
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Emits events by calling callback with event message
|
|
75
|
+
* @param eventType
|
|
76
|
+
* @param interactionType
|
|
77
|
+
* @param payload
|
|
78
|
+
* @param error
|
|
79
|
+
*/
|
|
80
|
+
emitEvent(eventType, interactionType, payload, error) {
|
|
81
|
+
if (typeof window !== "undefined") {
|
|
82
|
+
const message = {
|
|
83
|
+
eventType: eventType,
|
|
84
|
+
interactionType: interactionType || null,
|
|
85
|
+
payload: payload || null,
|
|
86
|
+
error: error || null,
|
|
87
|
+
timestamp: Date.now(),
|
|
88
|
+
};
|
|
89
|
+
this.logger.info(`Emitting event: ${eventType}`);
|
|
90
|
+
this.eventCallbacks.forEach((callback, callbackId) => {
|
|
91
|
+
this.logger.verbose(`Emitting event to callback ${callbackId}: ${eventType}`);
|
|
92
|
+
callback.apply(null, [message]);
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Emit account added/removed events when cached accounts are changed in a different tab or frame
|
|
98
|
+
*/
|
|
99
|
+
handleAccountCacheChange(e) {
|
|
100
|
+
try {
|
|
101
|
+
// Handle active account filter change
|
|
102
|
+
if (e.key?.includes(PersistentCacheKeys.ACTIVE_ACCOUNT_FILTERS)) {
|
|
103
|
+
// This event has no payload, it only signals cross-tab app instances that the results of calling getActiveAccount() will have changed
|
|
104
|
+
this.emitEvent(EventType.ACTIVE_ACCOUNT_CHANGED);
|
|
105
|
+
}
|
|
106
|
+
// Handle account object change
|
|
107
|
+
const cacheValue = e.newValue || e.oldValue;
|
|
108
|
+
if (!cacheValue) {
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
const parsedValue = JSON.parse(cacheValue);
|
|
112
|
+
if (typeof parsedValue !== "object" ||
|
|
113
|
+
!AccountEntity.isAccountEntity(parsedValue)) {
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
const accountEntity = CacheManager.toObject(new AccountEntity(), parsedValue);
|
|
117
|
+
const accountInfo = accountEntity.getAccountInfo();
|
|
118
|
+
if (!e.oldValue && e.newValue) {
|
|
119
|
+
this.logger.info("Account was added to cache in a different window");
|
|
120
|
+
this.emitEvent(EventType.ACCOUNT_ADDED, undefined, accountInfo);
|
|
121
|
+
}
|
|
122
|
+
else if (!e.newValue && e.oldValue) {
|
|
123
|
+
this.logger.info("Account was removed from cache in a different window");
|
|
124
|
+
this.emitEvent(EventType.ACCOUNT_REMOVED, undefined, accountInfo);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
catch (e) {
|
|
128
|
+
return;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
131
|
}
|
|
132
132
|
|
|
133
133
|
export { EventHandler };
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
import { AuthError, AccountInfo } from "@azure/msal-common";
|
|
2
|
-
import { EventType } from "./EventType";
|
|
3
|
-
import { InteractionStatus, InteractionType } from "../utils/BrowserConstants";
|
|
4
|
-
import { PopupRequest, RedirectRequest, SilentRequest, SsoSilentRequest, EndSessionRequest, AuthenticationResult } from "..";
|
|
5
|
-
export type EventMessage = {
|
|
6
|
-
eventType: EventType;
|
|
7
|
-
interactionType: InteractionType | null;
|
|
8
|
-
payload: EventPayload;
|
|
9
|
-
error: EventError;
|
|
10
|
-
timestamp: number;
|
|
11
|
-
};
|
|
12
|
-
export type PopupEvent = {
|
|
13
|
-
popupWindow: Window;
|
|
14
|
-
};
|
|
15
|
-
export type EventPayload = AccountInfo | PopupRequest | RedirectRequest | SilentRequest | SsoSilentRequest | EndSessionRequest | AuthenticationResult | PopupEvent | null;
|
|
16
|
-
export type EventError = AuthError | Error | null;
|
|
17
|
-
export type EventCallbackFunction = (message: EventMessage) => void;
|
|
18
|
-
export declare class EventMessageUtils {
|
|
19
|
-
/**
|
|
20
|
-
* Gets interaction status from event message
|
|
21
|
-
* @param message
|
|
22
|
-
* @param currentStatus
|
|
23
|
-
*/
|
|
24
|
-
static getInteractionStatusFromEvent(message: EventMessage, currentStatus?: InteractionStatus): InteractionStatus | null;
|
|
25
|
-
}
|
|
1
|
+
import { AuthError, AccountInfo } from "@azure/msal-common";
|
|
2
|
+
import { EventType } from "./EventType";
|
|
3
|
+
import { InteractionStatus, InteractionType } from "../utils/BrowserConstants";
|
|
4
|
+
import { PopupRequest, RedirectRequest, SilentRequest, SsoSilentRequest, EndSessionRequest, AuthenticationResult } from "..";
|
|
5
|
+
export type EventMessage = {
|
|
6
|
+
eventType: EventType;
|
|
7
|
+
interactionType: InteractionType | null;
|
|
8
|
+
payload: EventPayload;
|
|
9
|
+
error: EventError;
|
|
10
|
+
timestamp: number;
|
|
11
|
+
};
|
|
12
|
+
export type PopupEvent = {
|
|
13
|
+
popupWindow: Window;
|
|
14
|
+
};
|
|
15
|
+
export type EventPayload = AccountInfo | PopupRequest | RedirectRequest | SilentRequest | SsoSilentRequest | EndSessionRequest | AuthenticationResult | PopupEvent | null;
|
|
16
|
+
export type EventError = AuthError | Error | null;
|
|
17
|
+
export type EventCallbackFunction = (message: EventMessage) => void;
|
|
18
|
+
export declare class EventMessageUtils {
|
|
19
|
+
/**
|
|
20
|
+
* Gets interaction status from event message
|
|
21
|
+
* @param message
|
|
22
|
+
* @param currentStatus
|
|
23
|
+
*/
|
|
24
|
+
static getInteractionStatusFromEvent(message: EventMessage, currentStatus?: InteractionStatus): InteractionStatus | null;
|
|
25
|
+
}
|
|
26
26
|
//# sourceMappingURL=EventMessage.d.ts.map
|
|
@@ -1,75 +1,75 @@
|
|
|
1
|
-
/*! @azure/msal-browser v3.
|
|
1
|
+
/*! @azure/msal-browser v3.21.0 2024-08-13 */
|
|
2
2
|
'use strict';
|
|
3
3
|
import { EventType } from './EventType.mjs';
|
|
4
4
|
import { InteractionType, InteractionStatus } from '../utils/BrowserConstants.mjs';
|
|
5
5
|
|
|
6
|
-
/*
|
|
7
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
8
|
-
* Licensed under the MIT License.
|
|
9
|
-
*/
|
|
10
|
-
class EventMessageUtils {
|
|
11
|
-
/**
|
|
12
|
-
* Gets interaction status from event message
|
|
13
|
-
* @param message
|
|
14
|
-
* @param currentStatus
|
|
15
|
-
*/
|
|
16
|
-
static getInteractionStatusFromEvent(message, currentStatus) {
|
|
17
|
-
switch (message.eventType) {
|
|
18
|
-
case EventType.LOGIN_START:
|
|
19
|
-
return InteractionStatus.Login;
|
|
20
|
-
case EventType.SSO_SILENT_START:
|
|
21
|
-
return InteractionStatus.SsoSilent;
|
|
22
|
-
case EventType.ACQUIRE_TOKEN_START:
|
|
23
|
-
if (message.interactionType === InteractionType.Redirect ||
|
|
24
|
-
message.interactionType === InteractionType.Popup) {
|
|
25
|
-
return InteractionStatus.AcquireToken;
|
|
26
|
-
}
|
|
27
|
-
break;
|
|
28
|
-
case EventType.HANDLE_REDIRECT_START:
|
|
29
|
-
return InteractionStatus.HandleRedirect;
|
|
30
|
-
case EventType.LOGOUT_START:
|
|
31
|
-
return InteractionStatus.Logout;
|
|
32
|
-
case EventType.SSO_SILENT_SUCCESS:
|
|
33
|
-
case EventType.SSO_SILENT_FAILURE:
|
|
34
|
-
if (currentStatus &&
|
|
35
|
-
currentStatus !== InteractionStatus.SsoSilent) {
|
|
36
|
-
// Prevent this event from clearing any status other than ssoSilent
|
|
37
|
-
break;
|
|
38
|
-
}
|
|
39
|
-
return InteractionStatus.None;
|
|
40
|
-
case EventType.LOGOUT_END:
|
|
41
|
-
if (currentStatus &&
|
|
42
|
-
currentStatus !== InteractionStatus.Logout) {
|
|
43
|
-
// Prevent this event from clearing any status other than logout
|
|
44
|
-
break;
|
|
45
|
-
}
|
|
46
|
-
return InteractionStatus.None;
|
|
47
|
-
case EventType.HANDLE_REDIRECT_END:
|
|
48
|
-
if (currentStatus &&
|
|
49
|
-
currentStatus !== InteractionStatus.HandleRedirect) {
|
|
50
|
-
// Prevent this event from clearing any status other than handleRedirect
|
|
51
|
-
break;
|
|
52
|
-
}
|
|
53
|
-
return InteractionStatus.None;
|
|
54
|
-
case EventType.LOGIN_SUCCESS:
|
|
55
|
-
case EventType.LOGIN_FAILURE:
|
|
56
|
-
case EventType.ACQUIRE_TOKEN_SUCCESS:
|
|
57
|
-
case EventType.ACQUIRE_TOKEN_FAILURE:
|
|
58
|
-
case EventType.RESTORE_FROM_BFCACHE:
|
|
59
|
-
if (message.interactionType === InteractionType.Redirect ||
|
|
60
|
-
message.interactionType === InteractionType.Popup) {
|
|
61
|
-
if (currentStatus &&
|
|
62
|
-
currentStatus !== InteractionStatus.Login &&
|
|
63
|
-
currentStatus !== InteractionStatus.AcquireToken) {
|
|
64
|
-
// Prevent this event from clearing any status other than login or acquireToken
|
|
65
|
-
break;
|
|
66
|
-
}
|
|
67
|
-
return InteractionStatus.None;
|
|
68
|
-
}
|
|
69
|
-
break;
|
|
70
|
-
}
|
|
71
|
-
return null;
|
|
72
|
-
}
|
|
6
|
+
/*
|
|
7
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
8
|
+
* Licensed under the MIT License.
|
|
9
|
+
*/
|
|
10
|
+
class EventMessageUtils {
|
|
11
|
+
/**
|
|
12
|
+
* Gets interaction status from event message
|
|
13
|
+
* @param message
|
|
14
|
+
* @param currentStatus
|
|
15
|
+
*/
|
|
16
|
+
static getInteractionStatusFromEvent(message, currentStatus) {
|
|
17
|
+
switch (message.eventType) {
|
|
18
|
+
case EventType.LOGIN_START:
|
|
19
|
+
return InteractionStatus.Login;
|
|
20
|
+
case EventType.SSO_SILENT_START:
|
|
21
|
+
return InteractionStatus.SsoSilent;
|
|
22
|
+
case EventType.ACQUIRE_TOKEN_START:
|
|
23
|
+
if (message.interactionType === InteractionType.Redirect ||
|
|
24
|
+
message.interactionType === InteractionType.Popup) {
|
|
25
|
+
return InteractionStatus.AcquireToken;
|
|
26
|
+
}
|
|
27
|
+
break;
|
|
28
|
+
case EventType.HANDLE_REDIRECT_START:
|
|
29
|
+
return InteractionStatus.HandleRedirect;
|
|
30
|
+
case EventType.LOGOUT_START:
|
|
31
|
+
return InteractionStatus.Logout;
|
|
32
|
+
case EventType.SSO_SILENT_SUCCESS:
|
|
33
|
+
case EventType.SSO_SILENT_FAILURE:
|
|
34
|
+
if (currentStatus &&
|
|
35
|
+
currentStatus !== InteractionStatus.SsoSilent) {
|
|
36
|
+
// Prevent this event from clearing any status other than ssoSilent
|
|
37
|
+
break;
|
|
38
|
+
}
|
|
39
|
+
return InteractionStatus.None;
|
|
40
|
+
case EventType.LOGOUT_END:
|
|
41
|
+
if (currentStatus &&
|
|
42
|
+
currentStatus !== InteractionStatus.Logout) {
|
|
43
|
+
// Prevent this event from clearing any status other than logout
|
|
44
|
+
break;
|
|
45
|
+
}
|
|
46
|
+
return InteractionStatus.None;
|
|
47
|
+
case EventType.HANDLE_REDIRECT_END:
|
|
48
|
+
if (currentStatus &&
|
|
49
|
+
currentStatus !== InteractionStatus.HandleRedirect) {
|
|
50
|
+
// Prevent this event from clearing any status other than handleRedirect
|
|
51
|
+
break;
|
|
52
|
+
}
|
|
53
|
+
return InteractionStatus.None;
|
|
54
|
+
case EventType.LOGIN_SUCCESS:
|
|
55
|
+
case EventType.LOGIN_FAILURE:
|
|
56
|
+
case EventType.ACQUIRE_TOKEN_SUCCESS:
|
|
57
|
+
case EventType.ACQUIRE_TOKEN_FAILURE:
|
|
58
|
+
case EventType.RESTORE_FROM_BFCACHE:
|
|
59
|
+
if (message.interactionType === InteractionType.Redirect ||
|
|
60
|
+
message.interactionType === InteractionType.Popup) {
|
|
61
|
+
if (currentStatus &&
|
|
62
|
+
currentStatus !== InteractionStatus.Login &&
|
|
63
|
+
currentStatus !== InteractionStatus.AcquireToken) {
|
|
64
|
+
// Prevent this event from clearing any status other than login or acquireToken
|
|
65
|
+
break;
|
|
66
|
+
}
|
|
67
|
+
return InteractionStatus.None;
|
|
68
|
+
}
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
return null;
|
|
72
|
+
}
|
|
73
73
|
}
|
|
74
74
|
|
|
75
75
|
export { EventMessageUtils };
|