@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.
- 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 +385 -385
- package/dist/cache/BrowserCacheManager.mjs +1294 -1294
- 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 +255 -255
- package/dist/error/BrowserAuthError.mjs +263 -263
- package/dist/error/BrowserAuthErrorCodes.d.ts +46 -46
- package/dist/error/BrowserAuthErrorCodes.mjs +50 -50
- 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 -151
- package/dist/interaction_client/NativeInteractionClient.mjs +621 -621
- package/dist/interaction_client/PopupClient.d.ts +105 -105
- package/dist/interaction_client/PopupClient.d.ts.map +1 -1
- package/dist/interaction_client/PopupClient.mjs +433 -433
- 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 +315 -314
- 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 +110 -100
- 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.mjs +134 -134
- 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.mjs +148 -148
- 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 +34 -34
- package/dist/telemetry/BrowserPerformanceClient.mjs +162 -162
- package/dist/telemetry/BrowserPerformanceMeasurement.d.ts +21 -21
- package/dist/telemetry/BrowserPerformanceMeasurement.mjs +92 -92
- package/dist/utils/BrowserConstants.d.ts +180 -180
- package/dist/utils/BrowserConstants.mjs +212 -212
- 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 +18884 -18855
- package/lib/msal-browser.cjs.map +1 -1
- package/lib/msal-browser.js +18884 -18855
- package/lib/msal-browser.js.map +1 -1
- package/lib/msal-browser.min.js +59 -59
- package/package.json +2 -2
- package/src/config/Configuration.ts +9 -1
- package/src/controllers/StandardController.ts +30 -12
- package/src/interaction_client/PopupClient.ts +1 -0
- package/src/interaction_client/RedirectClient.ts +4 -1
- package/src/interaction_client/SilentIframeClient.ts +40 -3
- package/src/packageMetadata.ts +1 -1
- package/src/request/RedirectRequest.ts +5 -0
package/package.json
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"type": "git",
|
|
11
11
|
"url": "https://github.com/AzureAD/microsoft-authentication-library-for-js.git"
|
|
12
12
|
},
|
|
13
|
-
"version": "3.
|
|
13
|
+
"version": "3.22.0",
|
|
14
14
|
"description": "Microsoft Authentication Library for js",
|
|
15
15
|
"keywords": [
|
|
16
16
|
"implicit",
|
|
@@ -104,6 +104,6 @@
|
|
|
104
104
|
"typescript": "^4.9.5"
|
|
105
105
|
},
|
|
106
106
|
"dependencies": {
|
|
107
|
-
"@azure/msal-common": "14.14.
|
|
107
|
+
"@azure/msal-common": "14.14.2"
|
|
108
108
|
}
|
|
109
109
|
}
|
|
@@ -99,11 +99,19 @@ export type BrowserAuthOptions = {
|
|
|
99
99
|
* @deprecated This flag is deprecated and will be removed in the next major version. createNestablePublicClientApplication should be used instead.
|
|
100
100
|
*/
|
|
101
101
|
supportsNestedAppAuth?: boolean;
|
|
102
|
+
/**
|
|
103
|
+
* Callback that will be passed the url that MSAL will navigate to in redirect flows. Returning false in the callback will stop navigation.
|
|
104
|
+
*/
|
|
105
|
+
onRedirectNavigate?: (url: string) => boolean | void;
|
|
102
106
|
};
|
|
103
107
|
|
|
104
108
|
/** @internal */
|
|
105
|
-
export type InternalAuthOptions =
|
|
109
|
+
export type InternalAuthOptions = Omit<
|
|
110
|
+
Required<BrowserAuthOptions>,
|
|
111
|
+
"onRedirectNavigate"
|
|
112
|
+
> & {
|
|
106
113
|
OIDCOptions: Required<OIDCOptions>;
|
|
114
|
+
onRedirectNavigate?: (url: string) => boolean | void;
|
|
107
115
|
};
|
|
108
116
|
|
|
109
117
|
/**
|
|
@@ -584,19 +584,37 @@ export class StandardController implements IController {
|
|
|
584
584
|
scenarioId: request.scenarioId,
|
|
585
585
|
});
|
|
586
586
|
|
|
587
|
+
// Override on request only if set, as onRedirectNavigate field is deprecated
|
|
587
588
|
const onRedirectNavigateCb = request.onRedirectNavigate;
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
589
|
+
if (onRedirectNavigateCb) {
|
|
590
|
+
request.onRedirectNavigate = (url: string) => {
|
|
591
|
+
const navigate =
|
|
592
|
+
typeof onRedirectNavigateCb === "function"
|
|
593
|
+
? onRedirectNavigateCb(url)
|
|
594
|
+
: undefined;
|
|
595
|
+
if (navigate !== false) {
|
|
596
|
+
atrMeasurement.end({ success: true });
|
|
597
|
+
} else {
|
|
598
|
+
atrMeasurement.discard();
|
|
599
|
+
}
|
|
600
|
+
return navigate;
|
|
601
|
+
};
|
|
602
|
+
} else {
|
|
603
|
+
const configOnRedirectNavigateCb =
|
|
604
|
+
this.config.auth.onRedirectNavigate;
|
|
605
|
+
this.config.auth.onRedirectNavigate = (url: string) => {
|
|
606
|
+
const navigate =
|
|
607
|
+
typeof configOnRedirectNavigateCb === "function"
|
|
608
|
+
? configOnRedirectNavigateCb(url)
|
|
609
|
+
: undefined;
|
|
610
|
+
if (navigate !== false) {
|
|
611
|
+
atrMeasurement.end({ success: true });
|
|
612
|
+
} else {
|
|
613
|
+
atrMeasurement.discard();
|
|
614
|
+
}
|
|
615
|
+
return navigate;
|
|
616
|
+
};
|
|
617
|
+
}
|
|
600
618
|
|
|
601
619
|
// If logged in, emit acquire token events
|
|
602
620
|
const isLoggedIn = this.getAllAccounts().length > 0;
|
|
@@ -174,7 +174,9 @@ export class RedirectClient extends StandardInteractionClient {
|
|
|
174
174
|
navigationClient: this.navigationClient,
|
|
175
175
|
redirectTimeout: this.config.system.redirectNavigationTimeout,
|
|
176
176
|
redirectStartPage: redirectStartPage,
|
|
177
|
-
onRedirectNavigate:
|
|
177
|
+
onRedirectNavigate:
|
|
178
|
+
request.onRedirectNavigate ||
|
|
179
|
+
this.config.auth.onRedirectNavigate,
|
|
178
180
|
});
|
|
179
181
|
} catch (e) {
|
|
180
182
|
if (e instanceof AuthError) {
|
|
@@ -201,6 +203,7 @@ export class RedirectClient extends StandardInteractionClient {
|
|
|
201
203
|
const serverTelemetryManager = this.initializeServerTelemetryManager(
|
|
202
204
|
ApiId.handleRedirectPromise
|
|
203
205
|
);
|
|
206
|
+
|
|
204
207
|
try {
|
|
205
208
|
if (!this.browserStorage.isInteractionInProgress(true)) {
|
|
206
209
|
this.logger.info(
|
|
@@ -26,7 +26,11 @@ import {
|
|
|
26
26
|
createBrowserAuthError,
|
|
27
27
|
BrowserAuthErrorCodes,
|
|
28
28
|
} from "../error/BrowserAuthError";
|
|
29
|
-
import {
|
|
29
|
+
import {
|
|
30
|
+
InteractionType,
|
|
31
|
+
ApiId,
|
|
32
|
+
BrowserConstants,
|
|
33
|
+
} from "../utils/BrowserConstants";
|
|
30
34
|
import {
|
|
31
35
|
initiateAuthRequest,
|
|
32
36
|
monitorIframeForHash,
|
|
@@ -123,9 +127,11 @@ export class SilentIframeClient extends StandardInteractionClient {
|
|
|
123
127
|
this.apiId
|
|
124
128
|
);
|
|
125
129
|
|
|
130
|
+
let authClient: AuthorizationCodeClient | undefined;
|
|
131
|
+
|
|
126
132
|
try {
|
|
127
133
|
// Initialize the client
|
|
128
|
-
|
|
134
|
+
authClient = await invokeAsync(
|
|
129
135
|
this.createAuthCodeClient.bind(this),
|
|
130
136
|
PerformanceEvents.StandardInteractionClientCreateAuthCodeClient,
|
|
131
137
|
this.logger,
|
|
@@ -150,7 +156,38 @@ export class SilentIframeClient extends StandardInteractionClient {
|
|
|
150
156
|
(e as AuthError).setCorrelationId(this.correlationId);
|
|
151
157
|
serverTelemetryManager.cacheFailedRequest(e);
|
|
152
158
|
}
|
|
153
|
-
|
|
159
|
+
|
|
160
|
+
if (
|
|
161
|
+
!authClient ||
|
|
162
|
+
!(e instanceof AuthError) ||
|
|
163
|
+
e.errorCode !== BrowserConstants.INVALID_GRANT_ERROR
|
|
164
|
+
) {
|
|
165
|
+
throw e;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
this.performanceClient.addFields(
|
|
169
|
+
{
|
|
170
|
+
retryError: e.errorCode,
|
|
171
|
+
},
|
|
172
|
+
this.correlationId
|
|
173
|
+
);
|
|
174
|
+
|
|
175
|
+
const retrySilentRequest: AuthorizationUrlRequest =
|
|
176
|
+
await invokeAsync(
|
|
177
|
+
this.initializeAuthorizationRequest.bind(this),
|
|
178
|
+
PerformanceEvents.StandardInteractionClientInitializeAuthorizationRequest,
|
|
179
|
+
this.logger,
|
|
180
|
+
this.performanceClient,
|
|
181
|
+
request.correlationId
|
|
182
|
+
)(inputRequest, InteractionType.Silent);
|
|
183
|
+
|
|
184
|
+
return await invokeAsync(
|
|
185
|
+
this.silentTokenHelper.bind(this),
|
|
186
|
+
PerformanceEvents.SilentIframeClientTokenHelper,
|
|
187
|
+
this.logger,
|
|
188
|
+
this.performanceClient,
|
|
189
|
+
this.correlationId
|
|
190
|
+
)(authClient, retrySilentRequest);
|
|
154
191
|
}
|
|
155
192
|
}
|
|
156
193
|
|
package/src/packageMetadata.ts
CHANGED
|
@@ -46,6 +46,11 @@ export type RedirectRequest = Partial<
|
|
|
46
46
|
> & {
|
|
47
47
|
scopes: Array<string>;
|
|
48
48
|
redirectStartPage?: string;
|
|
49
|
+
/**
|
|
50
|
+
* @deprecated
|
|
51
|
+
* onRedirectNavigate is deprecated and will be removed in the next major version.
|
|
52
|
+
* Set onRedirectNavigate in Configuration instead.
|
|
53
|
+
*/
|
|
49
54
|
onRedirectNavigate?: (url: string) => boolean | void;
|
|
50
55
|
tokenBodyParameters?: StringDict;
|
|
51
56
|
};
|