@azure/msal-browser 3.0.0-alpha.1 → 3.0.0-alpha.2
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/LICENSE +21 -21
- package/README.md +213 -213
- package/dist/app/IPublicClientApplication.d.ts +45 -45
- package/dist/app/IPublicClientApplication.js +96 -96
- package/dist/app/PublicClientApplication.d.ts +244 -244
- package/dist/app/PublicClientApplication.js +307 -307
- package/dist/broker/nativeBroker/NativeMessageHandler.d.ts +63 -63
- package/dist/broker/nativeBroker/NativeMessageHandler.js +255 -255
- package/dist/broker/nativeBroker/NativeRequest.d.ts +43 -43
- package/dist/broker/nativeBroker/NativeResponse.d.ts +48 -48
- package/dist/cache/AsyncMemoryStorage.d.ts +51 -51
- package/dist/cache/AsyncMemoryStorage.js +132 -132
- package/dist/cache/BrowserCacheManager.d.ts +377 -377
- package/dist/cache/BrowserCacheManager.js +1276 -1276
- package/dist/cache/BrowserStorage.d.ts +11 -11
- package/dist/cache/BrowserStorage.js +35 -35
- package/dist/cache/CryptoKeyStore.d.ts +17 -17
- package/dist/cache/CryptoKeyStore.js +41 -41
- package/dist/cache/DatabaseStorage.d.ts +56 -56
- package/dist/cache/DatabaseStorage.js +190 -190
- package/dist/cache/IAsyncMemoryStorage.d.ts +27 -27
- package/dist/cache/ITokenCache.d.ts +10 -10
- package/dist/cache/IWindowStorage.d.ts +27 -27
- package/dist/cache/MemoryStorage.d.ts +11 -11
- package/dist/cache/MemoryStorage.js +31 -31
- package/dist/cache/TokenCache.d.ts +76 -76
- package/dist/cache/TokenCache.js +225 -225
- package/dist/config/Configuration.d.ts +203 -203
- package/dist/config/Configuration.js +101 -101
- package/dist/controllers/ControllerFactory.d.ts +9 -9
- package/dist/controllers/ControllerFactory.js +37 -37
- package/dist/controllers/IController.d.ts +66 -66
- package/dist/controllers/StandardController.d.ts +413 -413
- package/dist/controllers/StandardController.js +1272 -1272
- package/dist/crypto/BrowserCrypto.d.ts +61 -61
- package/dist/crypto/BrowserCrypto.js +131 -131
- package/dist/crypto/CryptoOps.d.ts +73 -73
- package/dist/crypto/CryptoOps.js +150 -150
- package/dist/crypto/GuidGenerator.d.ts +12 -12
- package/dist/crypto/GuidGenerator.js +96 -96
- package/dist/crypto/ISubtleCrypto.d.ts +9 -9
- package/dist/crypto/ModernBrowserCrypto.d.ts +9 -9
- package/dist/crypto/ModernBrowserCrypto.js +24 -24
- package/dist/crypto/MsBrowserCrypto.d.ts +9 -9
- package/dist/crypto/MsBrowserCrypto.js +79 -79
- package/dist/crypto/MsrBrowserCrypto.d.ts +17 -17
- package/dist/crypto/MsrBrowserCrypto.js +28 -28
- package/dist/crypto/PkceGenerator.d.ts +24 -24
- package/dist/crypto/PkceGenerator.js +58 -58
- package/dist/crypto/SignedHttpRequest.d.ts +30 -30
- package/dist/crypto/SignedHttpRequest.js +39 -39
- package/dist/encode/Base64Decode.d.ts +22 -22
- package/dist/encode/Base64Decode.js +73 -73
- package/dist/encode/Base64Encode.d.ts +31 -31
- package/dist/encode/Base64Encode.js +79 -79
- package/dist/error/BrowserAuthError.d.ts +382 -382
- package/dist/error/BrowserAuthError.js +483 -483
- package/dist/error/BrowserConfigurationAuthError.d.ts +70 -70
- package/dist/error/BrowserConfigurationAuthError.js +96 -96
- package/dist/error/NativeAuthError.d.ts +56 -56
- package/dist/error/NativeAuthError.js +88 -88
- package/dist/event/EventHandler.d.ts +41 -41
- package/dist/event/EventHandler.js +119 -119
- package/dist/event/EventMessage.d.ts +25 -25
- package/dist/event/EventMessage.js +67 -67
- package/dist/event/EventType.d.ts +26 -26
- package/dist/event/EventType.js +31 -31
- package/dist/index.d.ts +35 -35
- package/dist/index.js +1 -1
- package/dist/interaction_client/BaseInteractionClient.d.ts +52 -52
- package/dist/interaction_client/BaseInteractionClient.js +138 -138
- package/dist/interaction_client/HybridSpaAuthorizationCodeClient.d.ts +4 -4
- package/dist/interaction_client/HybridSpaAuthorizationCodeClient.js +10 -10
- package/dist/interaction_client/NativeInteractionClient.d.ts +148 -148
- package/dist/interaction_client/NativeInteractionClient.js +516 -516
- package/dist/interaction_client/PopupClient.d.ts +111 -111
- package/dist/interaction_client/PopupClient.js +476 -476
- package/dist/interaction_client/RedirectClient.d.ts +48 -48
- package/dist/interaction_client/RedirectClient.js +290 -290
- package/dist/interaction_client/SilentAuthCodeClient.d.ts +22 -22
- package/dist/interaction_client/SilentAuthCodeClient.js +62 -62
- package/dist/interaction_client/SilentCacheClient.d.ts +21 -21
- package/dist/interaction_client/SilentCacheClient.js +67 -67
- package/dist/interaction_client/SilentIframeClient.d.ts +31 -31
- package/dist/interaction_client/SilentIframeClient.js +127 -127
- package/dist/interaction_client/SilentRefreshClient.d.ts +19 -19
- package/dist/interaction_client/SilentRefreshClient.js +62 -62
- package/dist/interaction_client/StandardInteractionClient.d.ts +59 -59
- package/dist/interaction_client/StandardInteractionClient.js +259 -259
- package/dist/interaction_handler/InteractionHandler.d.ts +39 -39
- package/dist/interaction_handler/InteractionHandler.js +127 -127
- package/dist/interaction_handler/RedirectHandler.d.ts +24 -24
- package/dist/interaction_handler/RedirectHandler.js +118 -118
- package/dist/interaction_handler/SilentHandler.d.ts +47 -47
- package/dist/interaction_handler/SilentHandler.js +162 -162
- package/dist/internals.d.ts +23 -23
- package/dist/internals.js +4 -4
- package/dist/navigation/INavigationClient.d.ts +16 -16
- package/dist/navigation/NavigationClient.d.ts +22 -22
- package/dist/navigation/NavigationClient.js +40 -40
- package/dist/navigation/NavigationOptions.d.ts +12 -12
- package/dist/network/FetchClient.d.ts +26 -26
- package/dist/network/FetchClient.js +99 -99
- package/dist/network/XhrClient.d.ts +40 -40
- package/dist/network/XhrClient.js +117 -117
- package/dist/operatingcontext/BaseOperatingContext.d.ts +40 -40
- package/dist/operatingcontext/BaseOperatingContext.js +44 -44
- package/dist/operatingcontext/StandardOperatingContext.d.ts +25 -25
- package/dist/operatingcontext/StandardOperatingContext.js +43 -43
- package/dist/operatingcontext/TeamsAppOperatingContext.d.ts +25 -25
- package/dist/operatingcontext/TeamsAppOperatingContext.js +42 -42
- package/dist/packageMetadata.d.ts +2 -2
- package/dist/packageMetadata.js +4 -4
- package/dist/request/AuthorizationCodeRequest.d.ts +8 -8
- package/dist/request/AuthorizationUrlRequest.d.ts +8 -8
- package/dist/request/EndSessionPopupRequest.d.ts +18 -18
- package/dist/request/EndSessionRequest.d.ts +15 -15
- package/dist/request/PopupRequest.d.ts +32 -32
- package/dist/request/PopupWindowAttributes.d.ts +15 -15
- package/dist/request/RedirectRequest.d.ts +33 -33
- package/dist/request/SilentRequest.d.ts +30 -30
- package/dist/request/SsoSilentRequest.d.ts +26 -26
- package/dist/telemetry/BrowserPerformanceClient.d.ts +38 -38
- package/dist/telemetry/BrowserPerformanceClient.js +124 -124
- package/dist/telemetry/BrowserPerformanceMeasurement.d.ts +21 -21
- package/dist/telemetry/BrowserPerformanceMeasurement.js +92 -92
- package/dist/utils/BrowserConstants.d.ts +166 -166
- package/dist/utils/BrowserConstants.js +214 -214
- package/dist/utils/BrowserProtocolUtils.d.ts +18 -18
- package/dist/utils/BrowserProtocolUtils.js +34 -34
- package/dist/utils/BrowserStringUtils.d.ts +26 -26
- package/dist/utils/BrowserStringUtils.js +149 -149
- package/dist/utils/BrowserUtils.d.ts +65 -65
- package/dist/utils/BrowserUtils.js +138 -138
- package/dist/utils/MathUtils.d.ts +11 -11
- package/dist/utils/MathUtils.js +21 -21
- package/lib/msal-browser.cjs.js +18383 -0
- package/lib/msal-browser.cjs.js.map +1 -0
- package/lib/msal-browser.js +18389 -0
- package/lib/msal-browser.js.map +1 -0
- package/lib/msal-browser.min.js +74 -0
- package/package.json +97 -95
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @azure/msal-browser v3.0.0-alpha.
|
|
1
|
+
/*! @azure/msal-browser v3.0.0-alpha.2 2023-05-17 */
|
|
2
2
|
'use strict';
|
|
3
3
|
import { Constants, UrlString } from '@azure/msal-common';
|
|
4
4
|
import { FetchClient } from '../network/FetchClient.js';
|
|
@@ -6,143 +6,143 @@ import { XhrClient } from '../network/XhrClient.js';
|
|
|
6
6
|
import { BrowserAuthError } from '../error/BrowserAuthError.js';
|
|
7
7
|
import { BrowserConstants, InteractionType } from './BrowserConstants.js';
|
|
8
8
|
|
|
9
|
-
/*
|
|
10
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
11
|
-
* Licensed under the MIT License.
|
|
12
|
-
*/
|
|
13
|
-
/**
|
|
14
|
-
* Utility class for browser specific functions
|
|
15
|
-
*/
|
|
16
|
-
class BrowserUtils {
|
|
17
|
-
// #region Window Navigation and URL management
|
|
18
|
-
/**
|
|
19
|
-
* Clears hash from window url.
|
|
20
|
-
*/
|
|
21
|
-
static clearHash(contentWindow) {
|
|
22
|
-
// Office.js sets history.replaceState to null
|
|
23
|
-
contentWindow.location.hash = Constants.EMPTY_STRING;
|
|
24
|
-
if (typeof contentWindow.history.replaceState === "function") {
|
|
25
|
-
// Full removes "#" from url
|
|
26
|
-
contentWindow.history.replaceState(null, Constants.EMPTY_STRING, `${contentWindow.location.origin}${contentWindow.location.pathname}${contentWindow.location.search}`);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Replaces current hash with hash from provided url
|
|
31
|
-
*/
|
|
32
|
-
static replaceHash(url) {
|
|
33
|
-
const urlParts = url.split("#");
|
|
34
|
-
urlParts.shift(); // Remove part before the hash
|
|
35
|
-
window.location.hash =
|
|
36
|
-
urlParts.length > 0 ? urlParts.join("#") : Constants.EMPTY_STRING;
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Returns boolean of whether the current window is in an iframe or not.
|
|
40
|
-
*/
|
|
41
|
-
static isInIframe() {
|
|
42
|
-
return window.parent !== window;
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Returns boolean of whether or not the current window is a popup opened by msal
|
|
46
|
-
*/
|
|
47
|
-
static isInPopup() {
|
|
48
|
-
return (typeof window !== "undefined" &&
|
|
49
|
-
!!window.opener &&
|
|
50
|
-
window.opener !== window &&
|
|
51
|
-
typeof window.name === "string" &&
|
|
52
|
-
window.name.indexOf(`${BrowserConstants.POPUP_NAME_PREFIX}.`) === 0);
|
|
53
|
-
}
|
|
54
|
-
// #endregion
|
|
55
|
-
/**
|
|
56
|
-
* Returns current window URL as redirect uri
|
|
57
|
-
*/
|
|
58
|
-
static getCurrentUri() {
|
|
59
|
-
return window.location.href.split("?")[0].split("#")[0];
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Gets the homepage url for the current window location.
|
|
63
|
-
*/
|
|
64
|
-
static getHomepage() {
|
|
65
|
-
const currentUrl = new UrlString(window.location.href);
|
|
66
|
-
const urlComponents = currentUrl.getUrlComponents();
|
|
67
|
-
return `${urlComponents.Protocol}//${urlComponents.HostNameAndPort}/`;
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* Returns best compatible network client object.
|
|
71
|
-
*/
|
|
72
|
-
static getBrowserNetworkClient() {
|
|
73
|
-
// @ts-ignore TS2774
|
|
74
|
-
if (window.fetch && window.Headers) {
|
|
75
|
-
return new FetchClient();
|
|
76
|
-
}
|
|
77
|
-
else {
|
|
78
|
-
return new XhrClient();
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* Throws error if we have completed an auth and are
|
|
83
|
-
* attempting another auth request inside an iframe.
|
|
84
|
-
*/
|
|
85
|
-
static blockReloadInHiddenIframes() {
|
|
86
|
-
const isResponseHash = UrlString.hashContainsKnownProperties(window.location.hash);
|
|
87
|
-
// return an error if called from the hidden iframe created by the msal js silent calls
|
|
88
|
-
if (isResponseHash && BrowserUtils.isInIframe()) {
|
|
89
|
-
throw BrowserAuthError.createBlockReloadInHiddenIframeError();
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Block redirect operations in iframes unless explicitly allowed
|
|
94
|
-
* @param interactionType Interaction type for the request
|
|
95
|
-
* @param allowRedirectInIframe Config value to allow redirects when app is inside an iframe
|
|
96
|
-
*/
|
|
97
|
-
static blockRedirectInIframe(interactionType, allowRedirectInIframe) {
|
|
98
|
-
const isIframedApp = BrowserUtils.isInIframe();
|
|
99
|
-
if (interactionType === InteractionType.Redirect &&
|
|
100
|
-
isIframedApp &&
|
|
101
|
-
!allowRedirectInIframe) {
|
|
102
|
-
// If we are not in top frame, we shouldn't redirect. This is also handled by the service.
|
|
103
|
-
throw BrowserAuthError.createRedirectInIframeError(isIframedApp);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Block redirectUri loaded in popup from calling AcquireToken APIs
|
|
108
|
-
*/
|
|
109
|
-
static blockAcquireTokenInPopups() {
|
|
110
|
-
// Popups opened by msal popup APIs are given a name that starts with "msal."
|
|
111
|
-
if (BrowserUtils.isInPopup()) {
|
|
112
|
-
throw BrowserAuthError.createBlockAcquireTokenInPopupsError();
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* Throws error if token requests are made in non-browser environment
|
|
117
|
-
* @param isBrowserEnvironment Flag indicating if environment is a browser.
|
|
118
|
-
*/
|
|
119
|
-
static blockNonBrowserEnvironment(isBrowserEnvironment) {
|
|
120
|
-
if (!isBrowserEnvironment) {
|
|
121
|
-
throw BrowserAuthError.createNonBrowserEnvironmentError();
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
/**
|
|
125
|
-
* Throws error if native brokering is enabled but initialize hasn't been called
|
|
126
|
-
* @param allowNativeBroker
|
|
127
|
-
* @param initialized
|
|
128
|
-
*/
|
|
129
|
-
static blockNativeBrokerCalledBeforeInitialized(allowNativeBroker, initialized) {
|
|
130
|
-
if (allowNativeBroker && !initialized) {
|
|
131
|
-
throw BrowserAuthError.createNativeBrokerCalledBeforeInitialize();
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
/**
|
|
135
|
-
* Returns boolean of whether current browser is an Internet Explorer or Edge browser.
|
|
136
|
-
*/
|
|
137
|
-
static detectIEOrEdge() {
|
|
138
|
-
const ua = window.navigator.userAgent;
|
|
139
|
-
const msie = ua.indexOf("MSIE ");
|
|
140
|
-
const msie11 = ua.indexOf("Trident/");
|
|
141
|
-
const msedge = ua.indexOf("Edge/");
|
|
142
|
-
const isIE = msie > 0 || msie11 > 0;
|
|
143
|
-
const isEdge = msedge > 0;
|
|
144
|
-
return isIE || isEdge;
|
|
145
|
-
}
|
|
9
|
+
/*
|
|
10
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
11
|
+
* Licensed under the MIT License.
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Utility class for browser specific functions
|
|
15
|
+
*/
|
|
16
|
+
class BrowserUtils {
|
|
17
|
+
// #region Window Navigation and URL management
|
|
18
|
+
/**
|
|
19
|
+
* Clears hash from window url.
|
|
20
|
+
*/
|
|
21
|
+
static clearHash(contentWindow) {
|
|
22
|
+
// Office.js sets history.replaceState to null
|
|
23
|
+
contentWindow.location.hash = Constants.EMPTY_STRING;
|
|
24
|
+
if (typeof contentWindow.history.replaceState === "function") {
|
|
25
|
+
// Full removes "#" from url
|
|
26
|
+
contentWindow.history.replaceState(null, Constants.EMPTY_STRING, `${contentWindow.location.origin}${contentWindow.location.pathname}${contentWindow.location.search}`);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Replaces current hash with hash from provided url
|
|
31
|
+
*/
|
|
32
|
+
static replaceHash(url) {
|
|
33
|
+
const urlParts = url.split("#");
|
|
34
|
+
urlParts.shift(); // Remove part before the hash
|
|
35
|
+
window.location.hash =
|
|
36
|
+
urlParts.length > 0 ? urlParts.join("#") : Constants.EMPTY_STRING;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Returns boolean of whether the current window is in an iframe or not.
|
|
40
|
+
*/
|
|
41
|
+
static isInIframe() {
|
|
42
|
+
return window.parent !== window;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Returns boolean of whether or not the current window is a popup opened by msal
|
|
46
|
+
*/
|
|
47
|
+
static isInPopup() {
|
|
48
|
+
return (typeof window !== "undefined" &&
|
|
49
|
+
!!window.opener &&
|
|
50
|
+
window.opener !== window &&
|
|
51
|
+
typeof window.name === "string" &&
|
|
52
|
+
window.name.indexOf(`${BrowserConstants.POPUP_NAME_PREFIX}.`) === 0);
|
|
53
|
+
}
|
|
54
|
+
// #endregion
|
|
55
|
+
/**
|
|
56
|
+
* Returns current window URL as redirect uri
|
|
57
|
+
*/
|
|
58
|
+
static getCurrentUri() {
|
|
59
|
+
return window.location.href.split("?")[0].split("#")[0];
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Gets the homepage url for the current window location.
|
|
63
|
+
*/
|
|
64
|
+
static getHomepage() {
|
|
65
|
+
const currentUrl = new UrlString(window.location.href);
|
|
66
|
+
const urlComponents = currentUrl.getUrlComponents();
|
|
67
|
+
return `${urlComponents.Protocol}//${urlComponents.HostNameAndPort}/`;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Returns best compatible network client object.
|
|
71
|
+
*/
|
|
72
|
+
static getBrowserNetworkClient() {
|
|
73
|
+
// @ts-ignore TS2774
|
|
74
|
+
if (window.fetch && window.Headers) {
|
|
75
|
+
return new FetchClient();
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
return new XhrClient();
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Throws error if we have completed an auth and are
|
|
83
|
+
* attempting another auth request inside an iframe.
|
|
84
|
+
*/
|
|
85
|
+
static blockReloadInHiddenIframes() {
|
|
86
|
+
const isResponseHash = UrlString.hashContainsKnownProperties(window.location.hash);
|
|
87
|
+
// return an error if called from the hidden iframe created by the msal js silent calls
|
|
88
|
+
if (isResponseHash && BrowserUtils.isInIframe()) {
|
|
89
|
+
throw BrowserAuthError.createBlockReloadInHiddenIframeError();
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Block redirect operations in iframes unless explicitly allowed
|
|
94
|
+
* @param interactionType Interaction type for the request
|
|
95
|
+
* @param allowRedirectInIframe Config value to allow redirects when app is inside an iframe
|
|
96
|
+
*/
|
|
97
|
+
static blockRedirectInIframe(interactionType, allowRedirectInIframe) {
|
|
98
|
+
const isIframedApp = BrowserUtils.isInIframe();
|
|
99
|
+
if (interactionType === InteractionType.Redirect &&
|
|
100
|
+
isIframedApp &&
|
|
101
|
+
!allowRedirectInIframe) {
|
|
102
|
+
// If we are not in top frame, we shouldn't redirect. This is also handled by the service.
|
|
103
|
+
throw BrowserAuthError.createRedirectInIframeError(isIframedApp);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Block redirectUri loaded in popup from calling AcquireToken APIs
|
|
108
|
+
*/
|
|
109
|
+
static blockAcquireTokenInPopups() {
|
|
110
|
+
// Popups opened by msal popup APIs are given a name that starts with "msal."
|
|
111
|
+
if (BrowserUtils.isInPopup()) {
|
|
112
|
+
throw BrowserAuthError.createBlockAcquireTokenInPopupsError();
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Throws error if token requests are made in non-browser environment
|
|
117
|
+
* @param isBrowserEnvironment Flag indicating if environment is a browser.
|
|
118
|
+
*/
|
|
119
|
+
static blockNonBrowserEnvironment(isBrowserEnvironment) {
|
|
120
|
+
if (!isBrowserEnvironment) {
|
|
121
|
+
throw BrowserAuthError.createNonBrowserEnvironmentError();
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Throws error if native brokering is enabled but initialize hasn't been called
|
|
126
|
+
* @param allowNativeBroker
|
|
127
|
+
* @param initialized
|
|
128
|
+
*/
|
|
129
|
+
static blockNativeBrokerCalledBeforeInitialized(allowNativeBroker, initialized) {
|
|
130
|
+
if (allowNativeBroker && !initialized) {
|
|
131
|
+
throw BrowserAuthError.createNativeBrokerCalledBeforeInitialize();
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Returns boolean of whether current browser is an Internet Explorer or Edge browser.
|
|
136
|
+
*/
|
|
137
|
+
static detectIEOrEdge() {
|
|
138
|
+
const ua = window.navigator.userAgent;
|
|
139
|
+
const msie = ua.indexOf("MSIE ");
|
|
140
|
+
const msie11 = ua.indexOf("Trident/");
|
|
141
|
+
const msedge = ua.indexOf("Edge/");
|
|
142
|
+
const isIE = msie > 0 || msie11 > 0;
|
|
143
|
+
const isEdge = msedge > 0;
|
|
144
|
+
return isIE || isEdge;
|
|
145
|
+
}
|
|
146
146
|
}
|
|
147
147
|
|
|
148
148
|
export { BrowserUtils };
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Utility class for math specific functions in browser.
|
|
3
|
-
*/
|
|
4
|
-
export declare class MathUtils {
|
|
5
|
-
/**
|
|
6
|
-
* Decimal to Hex
|
|
7
|
-
*
|
|
8
|
-
* @param num
|
|
9
|
-
*/
|
|
10
|
-
static decimalToHex(num: number): string;
|
|
11
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* Utility class for math specific functions in browser.
|
|
3
|
+
*/
|
|
4
|
+
export declare class MathUtils {
|
|
5
|
+
/**
|
|
6
|
+
* Decimal to Hex
|
|
7
|
+
*
|
|
8
|
+
* @param num
|
|
9
|
+
*/
|
|
10
|
+
static decimalToHex(num: number): string;
|
|
11
|
+
}
|
|
12
12
|
//# sourceMappingURL=MathUtils.d.ts.map
|
package/dist/utils/MathUtils.js
CHANGED
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
/*! @azure/msal-browser v3.0.0-alpha.
|
|
1
|
+
/*! @azure/msal-browser v3.0.0-alpha.2 2023-05-17 */
|
|
2
2
|
'use strict';
|
|
3
|
-
/*
|
|
4
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
5
|
-
* Licensed under the MIT License.
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* Utility class for math specific functions in browser.
|
|
9
|
-
*/
|
|
10
|
-
class MathUtils {
|
|
11
|
-
/**
|
|
12
|
-
* Decimal to Hex
|
|
13
|
-
*
|
|
14
|
-
* @param num
|
|
15
|
-
*/
|
|
16
|
-
static decimalToHex(num) {
|
|
17
|
-
let hex = num.toString(16);
|
|
18
|
-
while (hex.length < 2) {
|
|
19
|
-
hex = "0" + hex;
|
|
20
|
-
}
|
|
21
|
-
return hex;
|
|
22
|
-
}
|
|
3
|
+
/*
|
|
4
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
5
|
+
* Licensed under the MIT License.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Utility class for math specific functions in browser.
|
|
9
|
+
*/
|
|
10
|
+
class MathUtils {
|
|
11
|
+
/**
|
|
12
|
+
* Decimal to Hex
|
|
13
|
+
*
|
|
14
|
+
* @param num
|
|
15
|
+
*/
|
|
16
|
+
static decimalToHex(num) {
|
|
17
|
+
let hex = num.toString(16);
|
|
18
|
+
while (hex.length < 2) {
|
|
19
|
+
hex = "0" + hex;
|
|
20
|
+
}
|
|
21
|
+
return hex;
|
|
22
|
+
}
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
export { MathUtils };
|