@azure/msal-browser 2.37.0 → 3.0.0-alpha.1
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.map +1 -1
- package/dist/app/IPublicClientApplication.js +33 -33
- package/dist/app/IPublicClientApplication.js.map +1 -1
- package/dist/app/PublicClientApplication.d.ts +198 -24
- package/dist/app/PublicClientApplication.d.ts.map +1 -1
- package/dist/app/PublicClientApplication.js +263 -220
- package/dist/app/PublicClientApplication.js.map +1 -1
- package/dist/broker/nativeBroker/NativeMessageHandler.d.ts +5 -4
- package/dist/broker/nativeBroker/NativeMessageHandler.d.ts.map +1 -1
- package/dist/broker/nativeBroker/NativeMessageHandler.js +118 -124
- package/dist/broker/nativeBroker/NativeMessageHandler.js.map +1 -1
- package/dist/broker/nativeBroker/NativeRequest.d.ts +4 -4
- package/dist/broker/nativeBroker/NativeRequest.d.ts.map +1 -1
- package/dist/broker/nativeBroker/NativeResponse.d.ts +4 -4
- package/dist/broker/nativeBroker/NativeResponse.d.ts.map +1 -1
- package/dist/cache/AsyncMemoryStorage.d.ts.map +1 -1
- package/dist/cache/AsyncMemoryStorage.js +83 -152
- package/dist/cache/AsyncMemoryStorage.js.map +1 -1
- package/dist/cache/BrowserCacheManager.d.ts.map +1 -1
- package/dist/cache/BrowserCacheManager.js +420 -412
- package/dist/cache/BrowserCacheManager.js.map +1 -1
- package/dist/cache/BrowserStorage.d.ts.map +1 -1
- package/dist/cache/BrowserStorage.js +19 -19
- package/dist/cache/BrowserStorage.js.map +1 -1
- package/dist/cache/CryptoKeyStore.d.ts.map +1 -1
- package/dist/cache/CryptoKeyStore.js +26 -36
- package/dist/cache/CryptoKeyStore.js.map +1 -1
- package/dist/cache/DatabaseStorage.d.ts.map +1 -1
- package/dist/cache/DatabaseStorage.js +127 -191
- package/dist/cache/DatabaseStorage.js.map +1 -1
- package/dist/cache/ITokenCache.d.ts.map +1 -1
- package/dist/cache/MemoryStorage.d.ts.map +1 -1
- package/dist/cache/MemoryStorage.js +18 -19
- package/dist/cache/MemoryStorage.js.map +1 -1
- package/dist/cache/TokenCache.d.ts +1 -1
- package/dist/cache/TokenCache.d.ts.map +1 -1
- package/dist/cache/TokenCache.js +55 -49
- package/dist/cache/TokenCache.js.map +1 -1
- package/dist/config/Configuration.d.ts +8 -8
- package/dist/config/Configuration.d.ts.map +1 -1
- package/dist/config/Configuration.js +53 -31
- package/dist/config/Configuration.js.map +1 -1
- package/dist/controllers/ControllerFactory.d.ts +10 -0
- package/dist/controllers/ControllerFactory.d.ts.map +1 -0
- package/dist/controllers/ControllerFactory.js +47 -0
- package/dist/controllers/ControllerFactory.js.map +1 -0
- package/dist/controllers/IController.d.ts +67 -0
- package/dist/controllers/IController.d.ts.map +1 -0
- package/dist/{app/ClientApplication.d.ts → controllers/StandardController.d.ts} +96 -15
- package/dist/controllers/StandardController.d.ts.map +1 -0
- package/dist/controllers/StandardController.js +1299 -0
- package/dist/controllers/StandardController.js.map +1 -0
- package/dist/crypto/BrowserCrypto.d.ts.map +1 -1
- package/dist/crypto/BrowserCrypto.js +36 -60
- package/dist/crypto/BrowserCrypto.js.map +1 -1
- package/dist/crypto/CryptoOps.d.ts +1 -1
- package/dist/crypto/CryptoOps.d.ts.map +1 -1
- package/dist/crypto/CryptoOps.js +93 -151
- package/dist/crypto/CryptoOps.js.map +1 -1
- package/dist/crypto/GuidGenerator.d.ts.map +1 -1
- package/dist/crypto/GuidGenerator.js +36 -25
- package/dist/crypto/GuidGenerator.js.map +1 -1
- package/dist/crypto/ISubtleCrypto.d.ts.map +1 -1
- package/dist/crypto/ModernBrowserCrypto.d.ts.map +1 -1
- package/dist/crypto/ModernBrowserCrypto.js +20 -44
- package/dist/crypto/ModernBrowserCrypto.js.map +1 -1
- package/dist/crypto/MsBrowserCrypto.d.ts.map +1 -1
- package/dist/crypto/MsBrowserCrypto.js +65 -89
- package/dist/crypto/MsBrowserCrypto.js.map +1 -1
- package/dist/crypto/MsrBrowserCrypto.d.ts.map +1 -1
- package/dist/crypto/MsrBrowserCrypto.js +23 -47
- package/dist/crypto/MsrBrowserCrypto.js.map +1 -1
- package/dist/crypto/PkceGenerator.d.ts.map +1 -1
- package/dist/crypto/PkceGenerator.js +28 -49
- package/dist/crypto/PkceGenerator.js.map +1 -1
- package/dist/crypto/SignedHttpRequest.d.ts +1 -1
- package/dist/crypto/SignedHttpRequest.d.ts.map +1 -1
- package/dist/crypto/SignedHttpRequest.js +15 -37
- package/dist/crypto/SignedHttpRequest.js.map +1 -1
- package/dist/encode/Base64Decode.d.ts.map +1 -1
- package/dist/encode/Base64Decode.js +32 -33
- package/dist/encode/Base64Decode.js.map +1 -1
- package/dist/encode/Base64Encode.d.ts.map +1 -1
- package/dist/encode/Base64Encode.js +34 -35
- package/dist/encode/Base64Encode.js.map +1 -1
- package/dist/error/BrowserAuthError.d.ts +1 -1
- package/dist/error/BrowserAuthError.d.ts.map +1 -1
- package/dist/error/BrowserAuthError.js +161 -163
- package/dist/error/BrowserAuthError.js.map +1 -1
- package/dist/error/BrowserConfigurationAuthError.d.ts.map +1 -1
- package/dist/error/BrowserConfigurationAuthError.js +32 -36
- package/dist/error/BrowserConfigurationAuthError.js.map +1 -1
- package/dist/error/NativeAuthError.d.ts +1 -1
- package/dist/error/NativeAuthError.d.ts.map +1 -1
- package/dist/error/NativeAuthError.js +26 -27
- package/dist/error/NativeAuthError.js.map +1 -1
- package/dist/event/EventHandler.d.ts.map +1 -1
- package/dist/event/EventHandler.js +33 -33
- package/dist/event/EventHandler.js.map +1 -1
- package/dist/event/EventMessage.d.ts +5 -5
- package/dist/event/EventMessage.d.ts.map +1 -1
- package/dist/event/EventMessage.js +18 -14
- package/dist/event/EventMessage.js.map +1 -1
- package/dist/event/EventType.js +1 -1
- package/dist/event/EventType.js.map +1 -1
- package/dist/index.d.ts +8 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/interaction_client/BaseInteractionClient.d.ts.map +1 -1
- package/dist/interaction_client/BaseInteractionClient.js +92 -123
- package/dist/interaction_client/BaseInteractionClient.js.map +1 -1
- package/dist/interaction_client/HybridSpaAuthorizationCodeClient.d.ts.map +1 -1
- package/dist/interaction_client/HybridSpaAuthorizationCodeClient.js +6 -10
- package/dist/interaction_client/HybridSpaAuthorizationCodeClient.js.map +1 -1
- package/dist/interaction_client/NativeInteractionClient.d.ts.map +1 -1
- package/dist/interaction_client/NativeInteractionClient.js +336 -393
- package/dist/interaction_client/NativeInteractionClient.js.map +1 -1
- package/dist/interaction_client/PopupClient.d.ts +1 -1
- package/dist/interaction_client/PopupClient.d.ts.map +1 -1
- package/dist/interaction_client/PopupClient.js +224 -246
- package/dist/interaction_client/PopupClient.js.map +1 -1
- package/dist/interaction_client/RedirectClient.d.ts.map +1 -1
- package/dist/interaction_client/RedirectClient.js +244 -292
- package/dist/interaction_client/RedirectClient.js.map +1 -1
- package/dist/interaction_client/SilentAuthCodeClient.d.ts.map +1 -1
- package/dist/interaction_client/SilentAuthCodeClient.js +50 -63
- package/dist/interaction_client/SilentAuthCodeClient.js.map +1 -1
- package/dist/interaction_client/SilentCacheClient.d.ts.map +1 -1
- package/dist/interaction_client/SilentCacheClient.js +50 -81
- package/dist/interaction_client/SilentCacheClient.js.map +1 -1
- package/dist/interaction_client/SilentIframeClient.d.ts.map +1 -1
- package/dist/interaction_client/SilentIframeClient.js +107 -125
- package/dist/interaction_client/SilentIframeClient.js.map +1 -1
- package/dist/interaction_client/SilentRefreshClient.d.ts.map +1 -1
- package/dist/interaction_client/SilentRefreshClient.js +44 -72
- package/dist/interaction_client/SilentRefreshClient.js.map +1 -1
- package/dist/interaction_client/StandardInteractionClient.d.ts.map +1 -1
- package/dist/interaction_client/StandardInteractionClient.js +144 -180
- package/dist/interaction_client/StandardInteractionClient.js.map +1 -1
- package/dist/interaction_handler/InteractionHandler.d.ts +1 -1
- package/dist/interaction_handler/InteractionHandler.d.ts.map +1 -1
- package/dist/interaction_handler/InteractionHandler.js +84 -110
- package/dist/interaction_handler/InteractionHandler.js.map +1 -1
- package/dist/interaction_handler/RedirectHandler.d.ts +1 -1
- package/dist/interaction_handler/RedirectHandler.d.ts.map +1 -1
- package/dist/interaction_handler/RedirectHandler.js +105 -122
- package/dist/interaction_handler/RedirectHandler.js.map +1 -1
- package/dist/interaction_handler/SilentHandler.d.ts.map +1 -1
- package/dist/interaction_handler/SilentHandler.js +76 -65
- package/dist/interaction_handler/SilentHandler.js.map +1 -1
- package/dist/internals.js +1 -1
- package/dist/internals.js.map +1 -1
- package/dist/navigation/NavigationClient.d.ts.map +1 -1
- package/dist/navigation/NavigationClient.js +11 -14
- package/dist/navigation/NavigationClient.js.map +1 -1
- package/dist/navigation/NavigationOptions.d.ts +1 -1
- package/dist/navigation/NavigationOptions.d.ts.map +1 -1
- package/dist/network/FetchClient.d.ts.map +1 -1
- package/dist/network/FetchClient.js +66 -96
- package/dist/network/FetchClient.js.map +1 -1
- package/dist/network/XhrClient.d.ts.map +1 -1
- package/dist/network/XhrClient.js +38 -51
- package/dist/network/XhrClient.js.map +1 -1
- package/dist/operatingcontext/BaseOperatingContext.d.ts +41 -0
- package/dist/operatingcontext/BaseOperatingContext.d.ts.map +1 -0
- package/dist/operatingcontext/BaseOperatingContext.js +53 -0
- package/dist/operatingcontext/BaseOperatingContext.js.map +1 -0
- package/dist/operatingcontext/StandardOperatingContext.d.ts +26 -0
- package/dist/operatingcontext/StandardOperatingContext.d.ts.map +1 -0
- package/dist/operatingcontext/StandardOperatingContext.js +50 -0
- package/dist/operatingcontext/StandardOperatingContext.js.map +1 -0
- package/dist/operatingcontext/TeamsAppOperatingContext.d.ts +26 -0
- package/dist/operatingcontext/TeamsAppOperatingContext.d.ts.map +1 -0
- package/dist/operatingcontext/TeamsAppOperatingContext.js +49 -0
- package/dist/operatingcontext/TeamsAppOperatingContext.js.map +1 -0
- package/dist/packageMetadata.d.ts +1 -1
- package/dist/packageMetadata.d.ts.map +1 -1
- package/dist/packageMetadata.js +3 -3
- package/dist/packageMetadata.js.map +1 -1
- package/dist/request/AuthorizationCodeRequest.d.ts +1 -1
- package/dist/request/AuthorizationCodeRequest.d.ts.map +1 -1
- package/dist/request/AuthorizationUrlRequest.d.ts +1 -1
- package/dist/request/AuthorizationUrlRequest.d.ts.map +1 -1
- package/dist/request/EndSessionPopupRequest.d.ts +1 -1
- package/dist/request/EndSessionPopupRequest.d.ts.map +1 -1
- package/dist/request/EndSessionRequest.d.ts +1 -1
- package/dist/request/EndSessionRequest.d.ts.map +1 -1
- package/dist/request/PopupRequest.d.ts +1 -1
- package/dist/request/PopupRequest.d.ts.map +1 -1
- package/dist/request/PopupWindowAttributes.d.ts +3 -3
- package/dist/request/PopupWindowAttributes.d.ts.map +1 -1
- package/dist/request/RedirectRequest.d.ts +1 -1
- package/dist/request/RedirectRequest.d.ts.map +1 -1
- package/dist/request/SilentRequest.d.ts +1 -1
- package/dist/request/SilentRequest.d.ts.map +1 -1
- package/dist/request/SsoSilentRequest.d.ts +1 -1
- package/dist/request/SsoSilentRequest.d.ts.map +1 -1
- package/dist/telemetry/BrowserPerformanceClient.d.ts +1 -1
- package/dist/telemetry/BrowserPerformanceClient.d.ts.map +1 -1
- package/dist/telemetry/BrowserPerformanceClient.js +62 -57
- package/dist/telemetry/BrowserPerformanceClient.js.map +1 -1
- package/dist/telemetry/BrowserPerformanceMeasurement.d.ts.map +1 -1
- package/dist/telemetry/BrowserPerformanceMeasurement.js +30 -31
- package/dist/telemetry/BrowserPerformanceMeasurement.js.map +1 -1
- package/dist/utils/BrowserConstants.d.ts.map +1 -1
- package/dist/utils/BrowserConstants.js +10 -10
- package/dist/utils/BrowserConstants.js.map +1 -1
- package/dist/utils/BrowserProtocolUtils.d.ts +1 -1
- package/dist/utils/BrowserProtocolUtils.d.ts.map +1 -1
- package/dist/utils/BrowserProtocolUtils.js +9 -12
- package/dist/utils/BrowserProtocolUtils.js.map +1 -1
- package/dist/utils/BrowserStringUtils.d.ts.map +1 -1
- package/dist/utils/BrowserStringUtils.js +83 -49
- package/dist/utils/BrowserStringUtils.js.map +1 -1
- package/dist/utils/BrowserUtils.d.ts.map +1 -1
- package/dist/utils/BrowserUtils.js +51 -49
- package/dist/utils/BrowserUtils.js.map +1 -1
- package/dist/utils/MathUtils.d.ts.map +1 -1
- package/dist/utils/MathUtils.js +6 -9
- package/dist/utils/MathUtils.js.map +1 -1
- package/package.json +17 -16
- package/dist/_virtual/_tslib.js +0 -117
- package/dist/_virtual/_tslib.js.map +0 -1
- package/dist/app/ClientApplication.d.ts.map +0 -1
- package/dist/app/ClientApplication.js +0 -1053
- package/dist/app/ClientApplication.js.map +0 -1
- package/dist/index.cjs.js +0 -18080
- package/dist/index.cjs.js.map +0 -1
- package/lib/msal-browser.js +0 -18086
- package/lib/msal-browser.js.map +0 -1
- package/lib/msal-browser.min.js +0 -70
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MsrBrowserCrypto.js","sources":["../../src/crypto/MsrBrowserCrypto.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"MsrBrowserCrypto.js","sources":["../../src/crypto/MsrBrowserCrypto.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAAA;;;AAGG;MAaU,gBAAgB,CAAA;AACzB,IAAA,QAAQ,CAAC,OAAmB,EAAA;;QAExB,OAAO,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;KAClD;AAED,IAAA,eAAe,CAAC,UAAsB,EAAA;QAClC,OAAO,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;KACvD;AAED,IAAA,MAAM,WAAW,CACb,SAAgC,EAChC,WAAoB,EACpB,SAAqB,EAAA;AAErB,QAAA,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CACtC,SAAS,EACT,WAAW,EACX,SAAS,CACc,CAAC;KAC/B;IAED,MAAM,SAAS,CAAC,GAAc,EAAA;AAC1B,QAAA,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CACpC,cAAc,EACd,GAAG,CACwC,CAAC;KACnD;IAED,MAAM,SAAS,CACX,OAAmB,EACnB,SAAgC,EAChC,WAAoB,EACpB,SAAqB,EAAA;AAErB,QAAA,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CACpC,cAAc,EACd,OAAO,EACP,SAAS,EACT,WAAW,EACX,SAAS,CACU,CAAC;KAC3B;AAED,IAAA,MAAM,IAAI,CACN,SAA8B,EAC9B,GAAc,EACd,IAAiB,EAAA;AAEjB,QAAA,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAC/B,SAAS,EACT,GAAG,EACH,IAAI,CACiB,CAAC;KAC7B;AAED,IAAA,MAAM,MAAM,CACR,SAA8B,EAC9B,IAAgB,EAAA;AAEhB,QAAA,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CACjC,SAAS,EACT,IAAI,CACiB,CAAC;KAC7B;AACJ;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PkceGenerator.d.ts","sourceRoot":"","sources":["../../src/crypto/PkceGenerator.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAG/C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAKhD;;GAEG;AACH,qBAAa,aAAa;
|
|
1
|
+
{"version":3,"file":"PkceGenerator.d.ts","sourceRoot":"","sources":["../../src/crypto/PkceGenerator.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAG/C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAKhD;;GAEG;AACH,qBAAa,aAAa;IACtB,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,SAAS,CAAgB;gBAErB,SAAS,EAAE,aAAa;IAKpC;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,SAAS,CAAC;IAWzC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAc5B;;;OAGG;YACW,iCAAiC;CAgBlD"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
/*! @azure/msal-browser
|
|
1
|
+
/*! @azure/msal-browser v3.0.0-alpha.1 2023-05-08 */
|
|
2
2
|
'use strict';
|
|
3
|
-
import { __awaiter, __generator } from '../_virtual/_tslib.js';
|
|
4
3
|
import { BrowserAuthError } from '../error/BrowserAuthError.js';
|
|
5
4
|
import { Base64Encode } from '../encode/Base64Encode.js';
|
|
6
5
|
|
|
@@ -9,79 +8,59 @@ import { Base64Encode } from '../encode/Base64Encode.js';
|
|
|
9
8
|
* Licensed under the MIT License.
|
|
10
9
|
*/
|
|
11
10
|
// Constant byte array length
|
|
12
|
-
|
|
11
|
+
const RANDOM_BYTE_ARR_LENGTH = 32;
|
|
13
12
|
/**
|
|
14
13
|
* Class which exposes APIs to generate PKCE codes and code verifiers.
|
|
15
14
|
*/
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
class PkceGenerator {
|
|
16
|
+
constructor(cryptoObj) {
|
|
18
17
|
this.base64Encode = new Base64Encode();
|
|
19
18
|
this.cryptoObj = cryptoObj;
|
|
20
19
|
}
|
|
21
20
|
/**
|
|
22
21
|
* Generates PKCE Codes. See the RFC for more information: https://tools.ietf.org/html/rfc7636
|
|
23
22
|
*/
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
case 1:
|
|
33
|
-
codeChallenge = _a.sent();
|
|
34
|
-
return [2 /*return*/, {
|
|
35
|
-
verifier: codeVerifier,
|
|
36
|
-
challenge: codeChallenge
|
|
37
|
-
}];
|
|
38
|
-
}
|
|
39
|
-
});
|
|
40
|
-
});
|
|
41
|
-
};
|
|
23
|
+
async generateCodes() {
|
|
24
|
+
const codeVerifier = this.generateCodeVerifier();
|
|
25
|
+
const codeChallenge = await this.generateCodeChallengeFromVerifier(codeVerifier);
|
|
26
|
+
return {
|
|
27
|
+
verifier: codeVerifier,
|
|
28
|
+
challenge: codeChallenge,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
42
31
|
/**
|
|
43
32
|
* Generates a random 32 byte buffer and returns the base64
|
|
44
33
|
* encoded string to be used as a PKCE Code Verifier
|
|
45
34
|
*/
|
|
46
|
-
|
|
35
|
+
generateCodeVerifier() {
|
|
47
36
|
try {
|
|
48
37
|
// Generate random values as utf-8
|
|
49
|
-
|
|
38
|
+
const buffer = new Uint8Array(RANDOM_BYTE_ARR_LENGTH);
|
|
50
39
|
this.cryptoObj.getRandomValues(buffer);
|
|
51
40
|
// encode verifier as base64
|
|
52
|
-
|
|
41
|
+
const pkceCodeVerifierB64 = this.base64Encode.urlEncodeArr(buffer);
|
|
53
42
|
return pkceCodeVerifierB64;
|
|
54
43
|
}
|
|
55
44
|
catch (e) {
|
|
56
45
|
throw BrowserAuthError.createPkceNotGeneratedError(e);
|
|
57
46
|
}
|
|
58
|
-
}
|
|
47
|
+
}
|
|
59
48
|
/**
|
|
60
49
|
* Creates a base64 encoded PKCE Code Challenge string from the
|
|
61
50
|
* hash created from the PKCE Code Verifier supplied
|
|
62
51
|
*/
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
case 2:
|
|
76
|
-
e_1 = _a.sent();
|
|
77
|
-
throw BrowserAuthError.createPkceNotGeneratedError(e_1);
|
|
78
|
-
case 3: return [2 /*return*/];
|
|
79
|
-
}
|
|
80
|
-
});
|
|
81
|
-
});
|
|
82
|
-
};
|
|
83
|
-
return PkceGenerator;
|
|
84
|
-
}());
|
|
52
|
+
async generateCodeChallengeFromVerifier(pkceCodeVerifier) {
|
|
53
|
+
try {
|
|
54
|
+
// hashed verifier
|
|
55
|
+
const pkceHashedCodeVerifier = await this.cryptoObj.sha256Digest(pkceCodeVerifier);
|
|
56
|
+
// encode hash as base64
|
|
57
|
+
return this.base64Encode.urlEncodeArr(new Uint8Array(pkceHashedCodeVerifier));
|
|
58
|
+
}
|
|
59
|
+
catch (e) {
|
|
60
|
+
throw BrowserAuthError.createPkceNotGeneratedError(e);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
85
64
|
|
|
86
65
|
export { PkceGenerator };
|
|
87
66
|
//# sourceMappingURL=PkceGenerator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PkceGenerator.js","sources":["../../src/crypto/PkceGenerator.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"PkceGenerator.js","sources":["../../src/crypto/PkceGenerator.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAAA;;;AAGG;AAOH;AACA,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAElC;;AAEG;MACU,aAAa,CAAA;AAItB,IAAA,WAAA,CAAY,SAAwB,EAAA;AAChC,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;AACvC,QAAA,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;KAC9B;AAED;;AAEG;AACH,IAAA,MAAM,aAAa,GAAA;AACf,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACjD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,iCAAiC,CAC9D,YAAY,CACf,CAAC;QACF,OAAO;AACH,YAAA,QAAQ,EAAE,YAAY;AACtB,YAAA,SAAS,EAAE,aAAa;SAC3B,CAAC;KACL;AAED;;;AAGG;IACK,oBAAoB,GAAA;QACxB,IAAI;;AAEA,YAAA,MAAM,MAAM,GAAe,IAAI,UAAU,CAAC,sBAAsB,CAAC,CAAC;AAClE,YAAA,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;;YAEvC,MAAM,mBAAmB,GACrB,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AAC3C,YAAA,OAAO,mBAAmB,CAAC;AAC9B,SAAA;AAAC,QAAA,OAAO,CAAC,EAAE;AACR,YAAA,MAAM,gBAAgB,CAAC,2BAA2B,CAAC,CAAW,CAAC,CAAC;AACnE,SAAA;KACJ;AAED;;;AAGG;IACK,MAAM,iCAAiC,CAC3C,gBAAwB,EAAA;QAExB,IAAI;;YAEA,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAC5D,gBAAgB,CACnB,CAAC;;AAEF,YAAA,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,CACjC,IAAI,UAAU,CAAC,sBAAsB,CAAC,CACzC,CAAC;AACL,SAAA;AAAC,QAAA,OAAO,CAAC,EAAE;AACR,YAAA,MAAM,gBAAgB,CAAC,2BAA2B,CAAC,CAAW,CAAC,CAAC;AACnE,SAAA;KACJ;AACJ;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignedHttpRequest.d.ts","sourceRoot":"","sources":["../../src/crypto/SignedHttpRequest.ts"],"names":[],"mappings":"AAMA,OAAO,
|
|
1
|
+
{"version":3,"file":"SignedHttpRequest.d.ts","sourceRoot":"","sources":["../../src/crypto/SignedHttpRequest.ts"],"names":[],"mappings":"AAMA,OAAO,EAEH,aAAa,EAEb,2BAA2B,EAC9B,MAAM,oBAAoB,CAAC;AAG5B,MAAM,MAAM,wBAAwB,GAAG;IACnC,aAAa,EAAE,aAAa,CAAC;CAChC,CAAC;AAEF,qBAAa,iBAAiB;IAC1B,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,MAAM,CAAS;gBAGnB,aAAa,EAAE,2BAA2B,EAC1C,UAAU,CAAC,EAAE,wBAAwB;IASzC;;;OAGG;IACG,2BAA2B,IAAI,OAAO,CAAC,MAAM,CAAC;IAQpD;;;;;;OAMG;IACG,WAAW,CACb,OAAO,EAAE,MAAM,EACf,mBAAmB,EAAE,MAAM,EAC3B,MAAM,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC;IASlB;;;;OAIG;IACG,UAAU,CAAC,mBAAmB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAGlE"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
/*! @azure/msal-browser
|
|
1
|
+
/*! @azure/msal-browser v3.0.0-alpha.1 2023-05-08 */
|
|
2
2
|
'use strict';
|
|
3
|
-
import { __awaiter, __generator } from '../_virtual/_tslib.js';
|
|
4
3
|
import { CryptoOps } from './CryptoOps.js';
|
|
5
4
|
import { Logger, PopTokenGenerator } from '@azure/msal-common';
|
|
6
5
|
import { name, version } from '../packageMetadata.js';
|
|
@@ -9,9 +8,9 @@ import { name, version } from '../packageMetadata.js';
|
|
|
9
8
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
10
9
|
* Licensed under the MIT License.
|
|
11
10
|
*/
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
class SignedHttpRequest {
|
|
12
|
+
constructor(shrParameters, shrOptions) {
|
|
13
|
+
const loggerOptions = (shrOptions && shrOptions.loggerOptions) || {};
|
|
15
14
|
this.logger = new Logger(loggerOptions, name, version);
|
|
16
15
|
this.cryptoOps = new CryptoOps(this.logger);
|
|
17
16
|
this.popTokenGenerator = new PopTokenGenerator(this.cryptoOps);
|
|
@@ -21,19 +20,10 @@ var SignedHttpRequest = /** @class */ (function () {
|
|
|
21
20
|
* Generates and caches a keypair for the given request options.
|
|
22
21
|
* @returns Public key digest, which should be sent to the token issuer.
|
|
23
22
|
*/
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
switch (_a.label) {
|
|
29
|
-
case 0: return [4 /*yield*/, this.popTokenGenerator.generateKid(this.shrParameters)];
|
|
30
|
-
case 1:
|
|
31
|
-
kid = (_a.sent()).kid;
|
|
32
|
-
return [2 /*return*/, kid];
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
});
|
|
36
|
-
};
|
|
23
|
+
async generatePublicKeyThumbprint() {
|
|
24
|
+
const { kid } = await this.popTokenGenerator.generateKid(this.shrParameters);
|
|
25
|
+
return kid;
|
|
26
|
+
}
|
|
37
27
|
/**
|
|
38
28
|
* Generates a signed http request for the given payload with the given key.
|
|
39
29
|
* @param payload Payload to sign (e.g. access token)
|
|
@@ -41,30 +31,18 @@ var SignedHttpRequest = /** @class */ (function () {
|
|
|
41
31
|
* @param claims Additional claims to include/override in the signed JWT
|
|
42
32
|
* @returns Pop token signed with the corresponding private key
|
|
43
33
|
*/
|
|
44
|
-
|
|
45
|
-
return
|
|
46
|
-
|
|
47
|
-
return [2 /*return*/, this.popTokenGenerator.signPayload(payload, publicKeyThumbprint, this.shrParameters, claims)];
|
|
48
|
-
});
|
|
49
|
-
});
|
|
50
|
-
};
|
|
34
|
+
async signRequest(payload, publicKeyThumbprint, claims) {
|
|
35
|
+
return this.popTokenGenerator.signPayload(payload, publicKeyThumbprint, this.shrParameters, claims);
|
|
36
|
+
}
|
|
51
37
|
/**
|
|
52
38
|
* Removes cached keys from browser for given public key thumbprint
|
|
53
39
|
* @param publicKeyThumbprint Public key digest (from generatePublicKeyThumbprint API)
|
|
54
40
|
* @returns If keys are properly deleted
|
|
55
41
|
*/
|
|
56
|
-
|
|
57
|
-
return
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
case 0: return [4 /*yield*/, this.cryptoOps.removeTokenBindingKey(publicKeyThumbprint)];
|
|
61
|
-
case 1: return [2 /*return*/, _a.sent()];
|
|
62
|
-
}
|
|
63
|
-
});
|
|
64
|
-
});
|
|
65
|
-
};
|
|
66
|
-
return SignedHttpRequest;
|
|
67
|
-
}());
|
|
42
|
+
async removeKeys(publicKeyThumbprint) {
|
|
43
|
+
return await this.cryptoOps.removeTokenBindingKey(publicKeyThumbprint);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
68
46
|
|
|
69
47
|
export { SignedHttpRequest };
|
|
70
48
|
//# sourceMappingURL=SignedHttpRequest.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignedHttpRequest.js","sources":["../../src/crypto/SignedHttpRequest.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"SignedHttpRequest.js","sources":["../../src/crypto/SignedHttpRequest.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAAA;;;AAGG;MAeU,iBAAiB,CAAA;IAM1B,WACI,CAAA,aAA0C,EAC1C,UAAqC,EAAA;QAErC,MAAM,aAAa,GAAG,CAAC,UAAU,IAAI,UAAU,CAAC,aAAa,KAAK,EAAE,CAAC;AACrE,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,aAAa,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACvD,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAC/D,QAAA,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;KACtC;AAED;;;AAGG;AACH,IAAA,MAAM,2BAA2B,GAAA;AAC7B,QAAA,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,CACpD,IAAI,CAAC,aAAa,CACrB,CAAC;AAEF,QAAA,OAAO,GAAG,CAAC;KACd;AAED;;;;;;AAMG;AACH,IAAA,MAAM,WAAW,CACb,OAAe,EACf,mBAA2B,EAC3B,MAAe,EAAA;AAEf,QAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,WAAW,CACrC,OAAO,EACP,mBAAmB,EACnB,IAAI,CAAC,aAAa,EAClB,MAAM,CACT,CAAC;KACL;AAED;;;;AAIG;IACH,MAAM,UAAU,CAAC,mBAA2B,EAAA;QACxC,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,mBAAmB,CAAC,CAAC;KAC1E;AACJ;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Base64Decode.d.ts","sourceRoot":"","sources":["../../src/encode/Base64Decode.ts"],"names":[],"mappings":"AAQA;;;GAGG;AACH,qBAAa,YAAY;
|
|
1
|
+
{"version":3,"file":"Base64Decode.d.ts","sourceRoot":"","sources":["../../src/encode/Base64Decode.ts"],"names":[],"mappings":"AAQA;;;GAGG;AACH,qBAAa,YAAY;IACrB;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAmB7B;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAqCtB;;;OAGG;IACH,OAAO,CAAC,UAAU;CAarB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @azure/msal-browser
|
|
1
|
+
/*! @azure/msal-browser v3.0.0-alpha.1 2023-05-08 */
|
|
2
2
|
'use strict';
|
|
3
3
|
import { Constants } from '@azure/msal-common';
|
|
4
4
|
import { BrowserStringUtils } from '../utils/BrowserStringUtils.js';
|
|
@@ -11,15 +11,13 @@ import { BrowserStringUtils } from '../utils/BrowserStringUtils.js';
|
|
|
11
11
|
* Class which exposes APIs to decode base64 strings to plaintext. See here for implementation details:
|
|
12
12
|
* https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/Base64_encoding_and_decoding#Solution_2_%E2%80%93_JavaScript's_UTF-16_%3E_UTF-8_%3E_base64
|
|
13
13
|
*/
|
|
14
|
-
|
|
15
|
-
function Base64Decode() {
|
|
16
|
-
}
|
|
14
|
+
class Base64Decode {
|
|
17
15
|
/**
|
|
18
16
|
* Returns a URL-safe plaintext decoded string from b64 encoded input.
|
|
19
17
|
* @param input
|
|
20
18
|
*/
|
|
21
|
-
|
|
22
|
-
|
|
19
|
+
decode(input) {
|
|
20
|
+
let encodedString = input.replace(/-/g, "+").replace(/_/g, "/");
|
|
23
21
|
switch (encodedString.length % 4) {
|
|
24
22
|
case 0:
|
|
25
23
|
break;
|
|
@@ -32,51 +30,52 @@ var Base64Decode = /** @class */ (function () {
|
|
|
32
30
|
default:
|
|
33
31
|
throw new Error("Invalid base64 string");
|
|
34
32
|
}
|
|
35
|
-
|
|
33
|
+
const inputUtf8Arr = this.base64DecToArr(encodedString);
|
|
36
34
|
return BrowserStringUtils.utf8ArrToString(inputUtf8Arr);
|
|
37
|
-
}
|
|
35
|
+
}
|
|
38
36
|
/**
|
|
39
37
|
* Decodes base64 into Uint8Array
|
|
40
38
|
* @param base64String
|
|
41
39
|
* @param nBlockSize
|
|
42
40
|
*/
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
41
|
+
base64DecToArr(base64String, nBlockSize) {
|
|
42
|
+
const sB64Enc = base64String.replace(/[^A-Za-z0-9\+\/]/g, Constants.EMPTY_STRING);
|
|
43
|
+
const nInLen = sB64Enc.length;
|
|
44
|
+
const nOutLen = nBlockSize
|
|
45
|
+
? Math.ceil(((nInLen * 3 + 1) >>> 2) / nBlockSize) * nBlockSize
|
|
46
|
+
: (nInLen * 3 + 1) >>> 2;
|
|
47
|
+
const aBytes = new Uint8Array(nOutLen);
|
|
48
|
+
for (let nMod3, nMod4, nUint24 = 0, nOutIdx = 0, nInIdx = 0; nInIdx < nInLen; nInIdx++) {
|
|
49
49
|
nMod4 = nInIdx & 3;
|
|
50
|
-
nUint24 |=
|
|
50
|
+
nUint24 |=
|
|
51
|
+
this.b64ToUint6(sB64Enc.charCodeAt(nInIdx)) << (18 - 6 * nMod4);
|
|
51
52
|
if (nMod4 === 3 || nInLen - nInIdx === 1) {
|
|
52
53
|
for (nMod3 = 0; nMod3 < 3 && nOutIdx < nOutLen; nMod3++, nOutIdx++) {
|
|
53
|
-
aBytes[nOutIdx] = nUint24 >>> (16 >>> nMod3 & 24) & 255;
|
|
54
|
+
aBytes[nOutIdx] = (nUint24 >>> ((16 >>> nMod3) & 24)) & 255;
|
|
54
55
|
}
|
|
55
56
|
nUint24 = 0;
|
|
56
57
|
}
|
|
57
58
|
}
|
|
58
59
|
return aBytes;
|
|
59
|
-
}
|
|
60
|
+
}
|
|
60
61
|
/**
|
|
61
62
|
* Base64 string to array decoding helper
|
|
62
63
|
* @param charNum
|
|
63
64
|
*/
|
|
64
|
-
|
|
65
|
-
return charNum > 64 && charNum < 91
|
|
66
|
-
charNum - 65
|
|
67
|
-
: charNum > 96 && charNum < 123
|
|
68
|
-
charNum - 71
|
|
69
|
-
: charNum > 47 && charNum < 58
|
|
70
|
-
charNum + 4
|
|
71
|
-
: charNum === 43
|
|
72
|
-
62
|
|
73
|
-
: charNum === 47
|
|
74
|
-
63
|
|
75
|
-
:
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
return Base64Decode;
|
|
79
|
-
}());
|
|
65
|
+
b64ToUint6(charNum) {
|
|
66
|
+
return charNum > 64 && charNum < 91
|
|
67
|
+
? charNum - 65
|
|
68
|
+
: charNum > 96 && charNum < 123
|
|
69
|
+
? charNum - 71
|
|
70
|
+
: charNum > 47 && charNum < 58
|
|
71
|
+
? charNum + 4
|
|
72
|
+
: charNum === 43
|
|
73
|
+
? 62
|
|
74
|
+
: charNum === 47
|
|
75
|
+
? 63
|
|
76
|
+
: 0;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
80
79
|
|
|
81
80
|
export { Base64Decode };
|
|
82
81
|
//# sourceMappingURL=Base64Decode.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Base64Decode.js","sources":["../../src/encode/Base64Decode.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"Base64Decode.js","sources":["../../src/encode/Base64Decode.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAAA;;;AAGG;AAKH;;;AAGG;MACU,YAAY,CAAA;AACrB;;;AAGG;AACH,IAAA,MAAM,CAAC,KAAa,EAAA;AAChB,QAAA,IAAI,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AAChE,QAAA,QAAQ,aAAa,CAAC,MAAM,GAAG,CAAC;AAC5B,YAAA,KAAK,CAAC;gBACF,MAAM;AACV,YAAA,KAAK,CAAC;gBACF,aAAa,IAAI,IAAI,CAAC;gBACtB,MAAM;AACV,YAAA,KAAK,CAAC;gBACF,aAAa,IAAI,GAAG,CAAC;gBACrB,MAAM;AACV,YAAA;AACI,gBAAA,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;AAChD,SAAA;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;AACxD,QAAA,OAAO,kBAAkB,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;KAC3D;AAED;;;;AAIG;IACK,cAAc,CAClB,YAAoB,EACpB,UAAmB,EAAA;AAEnB,QAAA,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAChC,mBAAmB,EACnB,SAAS,CAAC,YAAY,CACzB,CAAC;AACF,QAAA,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,MAAM,OAAO,GAAG,UAAU;cACpB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,GAAG,UAAU;cAC7D,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAC7B,QAAA,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC;QAEvC,KACI,IAAI,KAAK,EAAE,KAAK,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,EACtD,MAAM,GAAG,MAAM,EACf,MAAM,EAAE,EACV;AACE,YAAA,KAAK,GAAG,MAAM,GAAG,CAAC,CAAC;YACnB,OAAO;AACH,gBAAA,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;YACpE,IAAI,KAAK,KAAK,CAAC,IAAI,MAAM,GAAG,MAAM,KAAK,CAAC,EAAE;AACtC,gBAAA,KACI,KAAK,GAAG,CAAC,EACT,KAAK,GAAG,CAAC,IAAI,OAAO,GAAG,OAAO,EAC9B,KAAK,EAAE,EAAE,OAAO,EAAE,EACpB;AACE,oBAAA,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,MAAM,CAAC,EAAE,KAAK,KAAK,IAAI,EAAE,CAAC,IAAI,GAAG,CAAC;AAC/D,iBAAA;gBACD,OAAO,GAAG,CAAC,CAAC;AACf,aAAA;AACJ,SAAA;AAED,QAAA,OAAO,MAAM,CAAC;KACjB;AAED;;;AAGG;AACK,IAAA,UAAU,CAAC,OAAe,EAAA;AAC9B,QAAA,OAAO,OAAO,GAAG,EAAE,IAAI,OAAO,GAAG,EAAE;cAC7B,OAAO,GAAG,EAAE;AACd,cAAE,OAAO,GAAG,EAAE,IAAI,OAAO,GAAG,GAAG;kBAC7B,OAAO,GAAG,EAAE;AACd,kBAAE,OAAO,GAAG,EAAE,IAAI,OAAO,GAAG,EAAE;sBAC5B,OAAO,GAAG,CAAC;sBACX,OAAO,KAAK,EAAE;AAChB,0BAAE,EAAE;0BACF,OAAO,KAAK,EAAE;AAChB,8BAAE,EAAE;8BACF,CAAC,CAAC;KACX;AACJ;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Base64Encode.d.ts","sourceRoot":"","sources":["../../src/encode/Base64Encode.ts"],"names":[],"mappings":"AAQA;;;GAGG;AACH,qBAAa,YAAY;
|
|
1
|
+
{"version":3,"file":"Base64Encode.d.ts","sourceRoot":"","sources":["../../src/encode/Base64Encode.ts"],"names":[],"mappings":"AAQA;;;GAGG;AACH,qBAAa,YAAY;IACrB;;;OAGG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAShC;;;OAGG;IACH,YAAY,CAAC,QAAQ,EAAE,UAAU,GAAG,MAAM;IAO1C;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAK7B;;;OAGG;IACH,OAAO,CAAC,YAAY;IAgCpB;;;OAGG;IACH,OAAO,CAAC,UAAU;CAarB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @azure/msal-browser
|
|
1
|
+
/*! @azure/msal-browser v3.0.0-alpha.1 2023-05-08 */
|
|
2
2
|
'use strict';
|
|
3
3
|
import { Constants } from '@azure/msal-common';
|
|
4
4
|
import { BrowserStringUtils } from '../utils/BrowserStringUtils.js';
|
|
@@ -11,78 +11,77 @@ import { BrowserStringUtils } from '../utils/BrowserStringUtils.js';
|
|
|
11
11
|
* Class which exposes APIs to encode plaintext to base64 encoded string. See here for implementation details:
|
|
12
12
|
* https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/Base64_encoding_and_decoding#Solution_2_%E2%80%93_JavaScript's_UTF-16_%3E_UTF-8_%3E_base64
|
|
13
13
|
*/
|
|
14
|
-
|
|
15
|
-
function Base64Encode() {
|
|
16
|
-
}
|
|
14
|
+
class Base64Encode {
|
|
17
15
|
/**
|
|
18
16
|
* Returns URL Safe b64 encoded string from a plaintext string.
|
|
19
17
|
* @param input
|
|
20
18
|
*/
|
|
21
|
-
|
|
19
|
+
urlEncode(input) {
|
|
22
20
|
return encodeURIComponent(this.encode(input)
|
|
23
21
|
.replace(/=/g, Constants.EMPTY_STRING)
|
|
24
22
|
.replace(/\+/g, "-")
|
|
25
23
|
.replace(/\//g, "_"));
|
|
26
|
-
}
|
|
24
|
+
}
|
|
27
25
|
/**
|
|
28
26
|
* Returns URL Safe b64 encoded string from an int8Array.
|
|
29
27
|
* @param inputArr
|
|
30
28
|
*/
|
|
31
|
-
|
|
29
|
+
urlEncodeArr(inputArr) {
|
|
32
30
|
return this.base64EncArr(inputArr)
|
|
33
31
|
.replace(/=/g, Constants.EMPTY_STRING)
|
|
34
32
|
.replace(/\+/g, "-")
|
|
35
33
|
.replace(/\//g, "_");
|
|
36
|
-
}
|
|
34
|
+
}
|
|
37
35
|
/**
|
|
38
36
|
* Returns b64 encoded string from plaintext string.
|
|
39
37
|
* @param input
|
|
40
38
|
*/
|
|
41
|
-
|
|
42
|
-
|
|
39
|
+
encode(input) {
|
|
40
|
+
const inputUtf8Arr = BrowserStringUtils.stringToUtf8Arr(input);
|
|
43
41
|
return this.base64EncArr(inputUtf8Arr);
|
|
44
|
-
}
|
|
42
|
+
}
|
|
45
43
|
/**
|
|
46
44
|
* Base64 encode byte array
|
|
47
45
|
* @param aBytes
|
|
48
46
|
*/
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
for (
|
|
47
|
+
base64EncArr(aBytes) {
|
|
48
|
+
const eqLen = (3 - (aBytes.length % 3)) % 3;
|
|
49
|
+
let sB64Enc = Constants.EMPTY_STRING;
|
|
50
|
+
for (let nMod3, nLen = aBytes.length, nUint24 = 0, nIdx = 0; nIdx < nLen; nIdx++) {
|
|
53
51
|
nMod3 = nIdx % 3;
|
|
54
52
|
/* Uncomment the following line in order to split the output in lines 76-character long: */
|
|
55
53
|
/*
|
|
56
54
|
*if (nIdx > 0 && (nIdx * 4 / 3) % 76 === 0) { sB64Enc += "\r\n"; }
|
|
57
55
|
*/
|
|
58
|
-
nUint24 |= aBytes[nIdx] << (16 >>> nMod3 & 24);
|
|
56
|
+
nUint24 |= aBytes[nIdx] << ((16 >>> nMod3) & 24);
|
|
59
57
|
if (nMod3 === 2 || aBytes.length - nIdx === 1) {
|
|
60
|
-
sB64Enc += String.fromCharCode(this.uint6ToB64(nUint24 >>> 18 & 63), this.uint6ToB64(nUint24 >>> 12 & 63), this.uint6ToB64(nUint24 >>> 6 & 63), this.uint6ToB64(nUint24 & 63));
|
|
58
|
+
sB64Enc += String.fromCharCode(this.uint6ToB64((nUint24 >>> 18) & 63), this.uint6ToB64((nUint24 >>> 12) & 63), this.uint6ToB64((nUint24 >>> 6) & 63), this.uint6ToB64(nUint24 & 63));
|
|
61
59
|
nUint24 = 0;
|
|
62
60
|
}
|
|
63
61
|
}
|
|
64
|
-
return eqLen === 0
|
|
65
|
-
|
|
62
|
+
return eqLen === 0
|
|
63
|
+
? sB64Enc
|
|
64
|
+
: sB64Enc.substring(0, sB64Enc.length - eqLen) +
|
|
65
|
+
(eqLen === 1 ? "=" : "==");
|
|
66
|
+
}
|
|
66
67
|
/**
|
|
67
68
|
* Base64 string to array encoding helper
|
|
68
69
|
* @param nUint6
|
|
69
70
|
*/
|
|
70
|
-
|
|
71
|
-
return nUint6 < 26
|
|
72
|
-
nUint6 + 65
|
|
73
|
-
: nUint6 < 52
|
|
74
|
-
nUint6 + 71
|
|
75
|
-
: nUint6 < 62
|
|
76
|
-
nUint6 - 4
|
|
77
|
-
: nUint6 === 62
|
|
78
|
-
43
|
|
79
|
-
: nUint6 === 63
|
|
80
|
-
47
|
|
81
|
-
:
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
return Base64Encode;
|
|
85
|
-
}());
|
|
71
|
+
uint6ToB64(nUint6) {
|
|
72
|
+
return nUint6 < 26
|
|
73
|
+
? nUint6 + 65
|
|
74
|
+
: nUint6 < 52
|
|
75
|
+
? nUint6 + 71
|
|
76
|
+
: nUint6 < 62
|
|
77
|
+
? nUint6 - 4
|
|
78
|
+
: nUint6 === 62
|
|
79
|
+
? 43
|
|
80
|
+
: nUint6 === 63
|
|
81
|
+
? 47
|
|
82
|
+
: 65;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
86
85
|
|
|
87
86
|
export { Base64Encode };
|
|
88
87
|
//# sourceMappingURL=Base64Encode.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Base64Encode.js","sources":["../../src/encode/Base64Encode.ts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"Base64Encode.js","sources":["../../src/encode/Base64Encode.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAAA;;;AAGG;AAKH;;;AAGG;MACU,YAAY,CAAA;AACrB;;;AAGG;AACH,IAAA,SAAS,CAAC,KAAa,EAAA;AACnB,QAAA,OAAO,kBAAkB,CACrB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;AACb,aAAA,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,YAAY,CAAC;AACrC,aAAA,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;AACnB,aAAA,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAC3B,CAAC;KACL;AAED;;;AAGG;AACH,IAAA,YAAY,CAAC,QAAoB,EAAA;AAC7B,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC;AAC7B,aAAA,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,YAAY,CAAC;AACrC,aAAA,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;AACnB,aAAA,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;KAC5B;AAED;;;AAGG;AACH,IAAA,MAAM,CAAC,KAAa,EAAA;QAChB,MAAM,YAAY,GAAG,kBAAkB,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;AAC/D,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;KAC1C;AAED;;;AAGG;AACK,IAAA,YAAY,CAAC,MAAkB,EAAA;AACnC,QAAA,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;AAC5C,QAAA,IAAI,OAAO,GAAG,SAAS,CAAC,YAAY,CAAC;QAErC,KACI,IAAI,KAAK,EAAE,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,EACtD,IAAI,GAAG,IAAI,EACX,IAAI,EAAE,EACR;AACE,YAAA,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC;;AAEjB;;AAEG;AACH,YAAA,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,EAAE,CAAC,CAAC;YACjD,IAAI,KAAK,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,EAAE;gBAC3C,OAAO,IAAI,MAAM,CAAC,YAAY,CAC1B,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,KAAK,EAAE,IAAI,EAAE,CAAC,EACtC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,KAAK,EAAE,IAAI,EAAE,CAAC,EACtC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,EACrC,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG,EAAE,CAAC,CAChC,CAAC;gBACF,OAAO,GAAG,CAAC,CAAC;AACf,aAAA;AACJ,SAAA;QAED,OAAO,KAAK,KAAK,CAAC;AACd,cAAE,OAAO;AACT,cAAE,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC;AACxC,iBAAC,KAAK,KAAK,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC;KACxC;AAED;;;AAGG;AACK,IAAA,UAAU,CAAC,MAAc,EAAA;QAC7B,OAAO,MAAM,GAAG,EAAE;cACZ,MAAM,GAAG,EAAE;cACX,MAAM,GAAG,EAAE;kBACX,MAAM,GAAG,EAAE;kBACX,MAAM,GAAG,EAAE;sBACX,MAAM,GAAG,CAAC;sBACV,MAAM,KAAK,EAAE;AACf,0BAAE,EAAE;0BACF,MAAM,KAAK,EAAE;AACf,8BAAE,EAAE;8BACF,EAAE,CAAC;KACZ;AACJ;;;;"}
|
|
@@ -212,7 +212,7 @@ export declare class BrowserAuthError extends AuthError {
|
|
|
212
212
|
* Creates an error thrown when the hash string value is unexpectedly empty.
|
|
213
213
|
* @param hashValue
|
|
214
214
|
*/
|
|
215
|
-
static createEmptyHashError(
|
|
215
|
+
static createEmptyHashError(): BrowserAuthError;
|
|
216
216
|
/**
|
|
217
217
|
* Creates an error thrown when the hash string value is unexpectedly empty.
|
|
218
218
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BrowserAuthError.d.ts","sourceRoot":"","sources":["../../src/error/BrowserAuthError.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAe,MAAM,oBAAoB,CAAC;AAE5D;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqLnC,CAAC;AAEF;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,SAAS;
|
|
1
|
+
{"version":3,"file":"BrowserAuthError.d.ts","sourceRoot":"","sources":["../../src/error/BrowserAuthError.ts"],"names":[],"mappings":"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"}
|