Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@azure/msal-common

Package Overview
Dependencies
Maintainers
3
Versions
122
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@azure/msal-common - npm Package Compare versions

Comparing version 4.5.1 to 5.0.0

dist/response/ExternalTokenResponse.d.ts

87

CHANGELOG.json

@@ -5,2 +5,89 @@ {

{
"date": "Tue, 07 Sep 2021 23:22:24 GMT",
"tag": "@azure/msal-common_v5.0.0",
"version": "5.0.0",
"comments": {
"patch": [
{
"comment": "Add correlationId property to AuthError #3930",
"author": "thomas.norling@microsoft.com",
"commit": "c2d19c27d11fdab54fb336b9a455b05c753ae750",
"package": "@azure/msal-common"
},
{
"comment": "Fix logger constructor #3899",
"author": "hemoral@microsoft.com",
"commit": "b864252c09935f31d72ace20ca13a5a42d2a6bc1",
"package": "@azure/msal-common"
},
{
"comment": "Add correlationId to AuthenticationResult type #3947",
"author": "thomas.norling@microsoft.com",
"commit": "931061695df57488a26397763bbdb3e466713df8",
"package": "@azure/msal-common"
},
{
"comment": "Fix accesstoken_with_authscheme implementation #3910",
"author": "hemoral@microsoft.com",
"commit": "9aceb4219ebad900277aa6a59ca1ff93c5a21e0a",
"package": "@azure/msal-common"
},
{
"comment": "Add external token server response type #3895",
"author": "joarroyo@microsoft.com",
"commit": "cef2629499cf997f9167fe3ecc7628cf32513dfc",
"package": "@azure/msal-common"
},
{
"comment": "Fixes unescaped backslash and inefficient regex patterns #3993",
"author": "thomas.norling@microsoft.com",
"commit": "80434004e06dc11f3770ba84e5ead1c45f449156",
"package": "@azure/msal-common"
}
],
"none": [
{
"comment": "Resolve lint warnings #3994",
"author": "thomas.norling@microsoft.com",
"commit": "17cbef3c32f01e526e33964df21b0cda19e632b9",
"package": "@azure/msal-common"
},
{
"comment": "Removes logout cache clearing logic from AuthorizationCodeClient #3982",
"author": "thomas.norling@microsoft.com",
"commit": "9e4d8a161cd8eac51ea7ded5dadc2b6ff028f5d7",
"package": "@azure/msal-common"
}
],
"minor": [
{
"comment": "Adds state param to logout url #3909",
"author": "bmahal@microsoft.com",
"commit": "20c270e030922e3bb9df5beb1c6dcca190c4ac09",
"package": "@azure/msal-common"
},
{
"comment": "Add SignedHttpRequest class #3058",
"author": "janutter@microsoft.com",
"commit": "19fe65ef6562deeae0778db5030f44fa6e24aa5d",
"package": "@azure/msal-common"
}
],
"major": [
{
"comment": "Add pop params to request thumbprint #3973",
"author": "hemoral@microsoft.com",
"commit": "b3b18bc86a5949905be265c9b892e288551ac894",
"package": "@azure/msal-common"
},
{
"comment": "Remove token binding key from key store when refreshing pop token #3500",
"author": "hemoral@microsoft.com",
"commit": "6592652877f31405c8ed73a66f03eada90a78c0a",
"package": "@azure/msal-common"
}
]
}
},
{
"date": "Mon, 02 Aug 2021 23:19:21 GMT",

@@ -7,0 +94,0 @@ "tag": "@azure/msal-common_v4.5.1",

25

changelog.md
# Change Log - @azure/msal-common
This log was last generated on Mon, 02 Aug 2021 23:19:21 GMT and should not be manually modified.
This log was last generated on Tue, 07 Sep 2021 23:22:24 GMT and should not be manually modified.
<!-- Start content -->
## 5.0.0
Tue, 07 Sep 2021 23:22:24 GMT
### Major changes
- Add pop params to request thumbprint #3973 (hemoral@microsoft.com)
- Remove token binding key from key store when refreshing pop token #3500 (hemoral@microsoft.com)
### Minor changes
- Adds state param to logout url #3909 (bmahal@microsoft.com)
- Add SignedHttpRequest class #3058 (janutter@microsoft.com)
### Patches
- Add correlationId property to AuthError #3930 (thomas.norling@microsoft.com)
- Fix logger constructor #3899 (hemoral@microsoft.com)
- Add correlationId to AuthenticationResult type #3947 (thomas.norling@microsoft.com)
- Fix accesstoken_with_authscheme implementation #3910 (hemoral@microsoft.com)
- Add external token server response type #3895 (joarroyo@microsoft.com)
- Fixes unescaped backslash and inefficient regex patterns #3993 (thomas.norling@microsoft.com)
## 4.5.1

@@ -8,0 +31,0 @@

2

dist/_virtual/_tslib.js

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ /*! *****************************************************************************

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { ClientAuthError } from '../error/ClientAuthError.js';

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ /*

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { ClientAuthError } from '../error/ClientAuthError.js';

@@ -24,3 +24,8 @@ /**

x5c_ca?: string;
ts?: number;
at?: string;
u?: string;
p?: string;
m?: string;
};
//# sourceMappingURL=TokenClaims.d.ts.map

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { __awaiter, __generator, __assign } from '../_virtual/_tslib.js';

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { __awaiter, __generator } from '../_virtual/_tslib.js';

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ /*

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ /*

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ /*

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ /*

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { __awaiter, __generator } from '../_virtual/_tslib.js';

@@ -128,3 +128,3 @@ import { AccountCache, AccountFilter, CredentialFilter, CredentialCache, AppMetadataFilter, AppMetadataCache } from "./utils/CacheTypes";

*/
abstract clear(): void;
abstract clear(): Promise<void>;
/**

@@ -138,3 +138,3 @@ * Returns all accounts in cache

*/
saveCacheRecord(cacheRecord: CacheRecord): void;
saveCacheRecord(cacheRecord: CacheRecord): Promise<void>;
/**

@@ -179,2 +179,4 @@ * saves access token credential

* @param target
* @param oboAssertion
* @param tokenType
*/

@@ -201,3 +203,3 @@ private getCredentialsFilteredByInternal;

*/
removeAllAccounts(): boolean;
removeAllAccounts(): Promise<boolean>;
/**

@@ -207,3 +209,3 @@ * returns a boolean if the given account is removed

*/
removeAccount(accountKey: string): boolean;
removeAccount(accountKey: string): Promise<boolean>;
/**

@@ -213,3 +215,3 @@ * returns a boolean if the given account is removed

*/
removeAccountContext(account: AccountEntity): boolean;
removeAccountContext(account: AccountEntity): Promise<boolean>;
/**

@@ -219,3 +221,3 @@ * returns a boolean if the given credential is removed

*/
removeCredential(credential: CredentialEntity): boolean;
removeCredential(credential: CredentialEntity): Promise<boolean>;
/**

@@ -320,2 +322,8 @@ * Removes all app metadata objects from cache.

/**
* Returns true if the credential's tokenType or Authentication Scheme matches the one in the request, false otherwise
* @param entity
* @param tokenType
*/
private matchTokenType;
/**
* returns if a given cache entity is of the type appmetadata

@@ -368,4 +376,4 @@ * @param key

getKeys(): string[];
clear(): void;
clear(): Promise<void>;
}
//# sourceMappingURL=CacheManager.d.ts.map

@@ -1,5 +0,5 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';
import { __extends } from '../_virtual/_tslib.js';
import { Constants, CredentialType, CacheSchemaType, THE_FAMILY_ID, APP_METADATA, AUTHORITY_METADATA_CONSTANTS, AuthenticationScheme } from '../utils/Constants.js';
import { __awaiter, __generator, __extends } from '../_virtual/_tslib.js';
import { Constants, CredentialType, AuthenticationScheme, CacheSchemaType, THE_FAMILY_ID, APP_METADATA, AUTHORITY_METADATA_CONSTANTS } from '../utils/Constants.js';
import { CredentialEntity } from './entities/CredentialEntity.js';

@@ -53,20 +53,31 @@ import { ScopeSet } from '../request/ScopeSet.js';

CacheManager.prototype.saveCacheRecord = function (cacheRecord) {
if (!cacheRecord) {
throw ClientAuthError.createNullOrUndefinedCacheRecord();
}
if (!!cacheRecord.account) {
this.setAccount(cacheRecord.account);
}
if (!!cacheRecord.idToken) {
this.setIdTokenCredential(cacheRecord.idToken);
}
if (!!cacheRecord.accessToken) {
this.saveAccessToken(cacheRecord.accessToken);
}
if (!!cacheRecord.refreshToken) {
this.setRefreshTokenCredential(cacheRecord.refreshToken);
}
if (!!cacheRecord.appMetadata) {
this.setAppMetadata(cacheRecord.appMetadata);
}
return __awaiter(this, void 0, void 0, function () {
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
if (!cacheRecord) {
throw ClientAuthError.createNullOrUndefinedCacheRecord();
}
if (!!cacheRecord.account) {
this.setAccount(cacheRecord.account);
}
if (!!cacheRecord.idToken) {
this.setIdTokenCredential(cacheRecord.idToken);
}
if (!!!cacheRecord.accessToken) return [3 /*break*/, 2];
return [4 /*yield*/, this.saveAccessToken(cacheRecord.accessToken)];
case 1:
_a.sent();
_a.label = 2;
case 2:
if (!!cacheRecord.refreshToken) {
this.setRefreshTokenCredential(cacheRecord.refreshToken);
}
if (!!cacheRecord.appMetadata) {
this.setAppMetadata(cacheRecord.appMetadata);
}
return [2 /*return*/];
}
});
});
};

@@ -78,21 +89,36 @@ /**

CacheManager.prototype.saveAccessToken = function (credential) {
var _this = this;
var currentTokenCache = this.getCredentialsFilteredBy({
clientId: credential.clientId,
credentialType: credential.credentialType,
environment: credential.environment,
homeAccountId: credential.homeAccountId,
realm: credential.realm,
});
var currentScopes = ScopeSet.fromString(credential.target);
var currentAccessTokens = Object.keys(currentTokenCache.accessTokens).map(function (key) { return currentTokenCache.accessTokens[key]; });
if (currentAccessTokens) {
currentAccessTokens.forEach(function (tokenEntity) {
var tokenScopeSet = ScopeSet.fromString(tokenEntity.target);
if (tokenScopeSet.intersectingScopeSets(currentScopes)) {
_this.removeCredential(tokenEntity);
return __awaiter(this, void 0, void 0, function () {
var currentTokenCache, currentScopes, currentAccessTokens, removedAccessTokens_1;
var _this = this;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
currentTokenCache = this.getCredentialsFilteredBy({
clientId: credential.clientId,
credentialType: credential.credentialType,
environment: credential.environment,
homeAccountId: credential.homeAccountId,
realm: credential.realm,
tokenType: credential.tokenType
});
currentScopes = ScopeSet.fromString(credential.target);
currentAccessTokens = Object.keys(currentTokenCache.accessTokens).map(function (key) { return currentTokenCache.accessTokens[key]; });
if (!currentAccessTokens) return [3 /*break*/, 2];
removedAccessTokens_1 = [];
currentAccessTokens.forEach(function (tokenEntity) {
var tokenScopeSet = ScopeSet.fromString(tokenEntity.target);
if (tokenScopeSet.intersectingScopeSets(currentScopes)) {
removedAccessTokens_1.push(_this.removeCredential(tokenEntity));
}
});
return [4 /*yield*/, Promise.all(removedAccessTokens_1)];
case 1:
_a.sent();
_a.label = 2;
case 2:
this.setAccessTokenCredential(credential);
return [2 /*return*/];
}
});
}
this.setAccessTokenCredential(credential);
});
};

@@ -148,3 +174,3 @@ /**

CacheManager.prototype.getCredentialsFilteredBy = function (filter) {
return this.getCredentialsFilteredByInternal(filter.homeAccountId, filter.environment, filter.credentialType, filter.clientId, filter.familyId, filter.realm, filter.target, filter.oboAssertion);
return this.getCredentialsFilteredByInternal(filter.homeAccountId, filter.environment, filter.credentialType, filter.clientId, filter.familyId, filter.realm, filter.target, filter.oboAssertion, filter.tokenType);
};

@@ -159,4 +185,6 @@ /**

* @param target
* @param oboAssertion
* @param tokenType
*/
CacheManager.prototype.getCredentialsFilteredByInternal = function (homeAccountId, environment, credentialType, clientId, familyId, realm, target, oboAssertion) {
CacheManager.prototype.getCredentialsFilteredByInternal = function (homeAccountId, environment, credentialType, clientId, familyId, realm, target, oboAssertion, tokenType) {
var _this = this;

@@ -208,2 +236,13 @@ var allCacheKeys = this.getKeys();

}
if (credentialType === CredentialType.ACCESS_TOKEN_WITH_AUTH_SCHEME) {
if (!!tokenType && !_this.matchTokenType(entity, tokenType)) {
return;
}
// This check avoids matching outdated POP tokens that don't have the <-scheme> in the cache key
if (cacheKey.indexOf(AuthenticationScheme.POP) === -1) {
// AccessToken_With_AuthScheme that doesn't have pop in the key is outdated
_this.removeItem(cacheKey, CacheSchemaType.CREDENTIAL);
return;
}
}
switch (credType) {

@@ -289,12 +328,24 @@ case CredentialType.ID_TOKEN:

CacheManager.prototype.removeAllAccounts = function () {
var _this = this;
var allCacheKeys = this.getKeys();
allCacheKeys.forEach(function (cacheKey) {
var entity = _this.getAccount(cacheKey);
if (!entity) {
return;
}
_this.removeAccount(cacheKey);
return __awaiter(this, void 0, void 0, function () {
var allCacheKeys, removedAccounts;
var _this = this;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
allCacheKeys = this.getKeys();
removedAccounts = [];
allCacheKeys.forEach(function (cacheKey) {
var entity = _this.getAccount(cacheKey);
if (!entity) {
return;
}
removedAccounts.push(_this.removeAccount(cacheKey));
});
return [4 /*yield*/, Promise.all(removedAccounts)];
case 1:
_a.sent();
return [2 /*return*/, true];
}
});
});
return true;
};

@@ -306,7 +357,16 @@ /**

CacheManager.prototype.removeAccount = function (accountKey) {
var account = this.getAccount(accountKey);
if (!account) {
throw ClientAuthError.createNoAccountFoundError();
}
return (this.removeAccountContext(account) && this.removeItem(accountKey, CacheSchemaType.ACCOUNT));
return __awaiter(this, void 0, void 0, function () {
var account;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
account = this.getAccount(accountKey);
if (!account) {
throw ClientAuthError.createNoAccountFoundError();
}
return [4 /*yield*/, this.removeAccountContext(account)];
case 1: return [2 /*return*/, ((_a.sent()) && this.removeItem(accountKey, CacheSchemaType.ACCOUNT))];
}
});
});
};

@@ -318,17 +378,29 @@ /**

CacheManager.prototype.removeAccountContext = function (account) {
var _this = this;
var allCacheKeys = this.getKeys();
var accountId = account.generateAccountId();
allCacheKeys.forEach(function (cacheKey) {
// don't parse any non-credential type cache entities
var credType = CredentialEntity.getCredentialType(cacheKey);
if (credType === Constants.NOT_DEFINED) {
return;
}
var cacheEntity = _this.getSpecificCredential(cacheKey, credType);
if (!!cacheEntity && accountId === cacheEntity.generateAccountId()) {
_this.removeCredential(cacheEntity);
}
return __awaiter(this, void 0, void 0, function () {
var allCacheKeys, accountId, removedCredentials;
var _this = this;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
allCacheKeys = this.getKeys();
accountId = account.generateAccountId();
removedCredentials = [];
allCacheKeys.forEach(function (cacheKey) {
// don't parse any non-credential type cache entities
var credType = CredentialEntity.getCredentialType(cacheKey);
if (credType === Constants.NOT_DEFINED) {
return;
}
var cacheEntity = _this.getSpecificCredential(cacheKey, credType);
if (!!cacheEntity && accountId === cacheEntity.generateAccountId()) {
removedCredentials.push(_this.removeCredential(cacheEntity));
}
});
return [4 /*yield*/, Promise.all(removedCredentials)];
case 1:
_a.sent();
return [2 /*return*/, true];
}
});
});
return true;
};

@@ -340,4 +412,26 @@ /**

CacheManager.prototype.removeCredential = function (credential) {
var key = credential.generateCredentialKey();
return this.removeItem(key, CacheSchemaType.CREDENTIAL);
return __awaiter(this, void 0, void 0, function () {
var key, accessTokenWithAuthSchemeEntity, kid;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
key = credential.generateCredentialKey();
if (!(credential.credentialType.toLowerCase() === CredentialType.ACCESS_TOKEN_WITH_AUTH_SCHEME.toLowerCase())) return [3 /*break*/, 4];
accessTokenWithAuthSchemeEntity = credential;
kid = accessTokenWithAuthSchemeEntity.keyId;
if (!kid) return [3 /*break*/, 4];
_a.label = 1;
case 1:
_a.trys.push([1, 3, , 4]);
return [4 /*yield*/, this.cryptoImpl.removeTokenBindingKey(kid)];
case 2:
_a.sent();
return [3 /*break*/, 4];
case 3:
_a.sent();
throw ClientAuthError.createBindingKeyNotRemovedError();
case 4: return [2 /*return*/, this.removeItem(key, CacheSchemaType.CREDENTIAL)];
}
});
});
};

@@ -423,2 +517,3 @@ /**

CacheManager.prototype.readAccessTokenFromCache = function (clientId, account, scopes, authScheme) {
// Distinguish between Bearer and PoP token cache types
var credentialType = (authScheme === AuthenticationScheme.POP) ? CredentialType.ACCESS_TOKEN_WITH_AUTH_SCHEME : CredentialType.ACCESS_TOKEN;

@@ -432,2 +527,3 @@ var accessTokenFilter = {

target: scopes.printScopesLowerCase(),
tokenType: authScheme
};

@@ -578,2 +674,10 @@ var credentialCache = this.getCredentialsFilteredBy(accessTokenFilter);

/**
* Returns true if the credential's tokenType or Authentication Scheme matches the one in the request, false otherwise
* @param entity
* @param tokenType
*/
CacheManager.prototype.matchTokenType = function (entity, tokenType) {
return !!(entity.tokenType && entity.tokenType === tokenType);
};
/**
* returns if a given cache entity is of the type appmetadata

@@ -718,4 +822,9 @@ * @param key

DefaultStorageClass.prototype.clear = function () {
var notImplErr = "Storage interface - clear() has not been implemented for the cacheStorage interface.";
throw AuthError.createUnexpectedError(notImplErr);
return __awaiter(this, void 0, void 0, function () {
var notImplErr;
return __generator(this, function (_a) {
notImplErr = "Storage interface - clear() has not been implemented for the cacheStorage interface.";
throw AuthError.createUnexpectedError(notImplErr);
});
});
};

@@ -722,0 +831,0 @@ return DefaultStorageClass;

import { CredentialEntity } from "./CredentialEntity";
import { AuthenticationScheme } from "../../utils/Constants";
import { ICrypto } from "../../crypto/ICrypto";

@@ -35,3 +36,3 @@ /**

keyId?: string;
tokenType?: string;
tokenType?: AuthenticationScheme;
/**

@@ -48,3 +49,3 @@ * Create AccessTokenEntity

*/
static createAccessTokenEntity(homeAccountId: string, environment: string, accessToken: string, clientId: string, tenantId: string, scopes: string, expiresOn: number, extExpiresOn: number, cryptoUtils: ICrypto, refreshOn?: number, tokenType?: string, oboAssertion?: string): AccessTokenEntity;
static createAccessTokenEntity(homeAccountId: string, environment: string, accessToken: string, clientId: string, tenantId: string, scopes: string, expiresOn: number, extExpiresOn: number, cryptoUtils: ICrypto, refreshOn?: number, tokenType?: AuthenticationScheme, oboAssertion?: string): AccessTokenEntity;
/**

@@ -51,0 +52,0 @@ * Validates an entity: checks for all expected params

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { __extends } from '../../_virtual/_tslib.js';

@@ -74,3 +74,3 @@ import { Authority } from "../../authority/Authority";

*/
static createAccount(clientInfo: string, homeAccountId: string, authority: Authority, idToken: AuthToken, oboAssertion?: string, cloudGraphHostName?: string, msGraphHost?: string): AccountEntity;
static createAccount(clientInfo: string, homeAccountId: string, idToken: AuthToken, authority?: Authority, oboAssertion?: string, cloudGraphHostName?: string, msGraphHost?: string, environment?: string): AccountEntity;
/**

@@ -81,3 +81,3 @@ * Builds non-AAD/ADFS account.

*/
static createGenericAccount(authority: Authority, homeAccountId: string, idToken: AuthToken, oboAssertion?: string, cloudGraphHostName?: string, msGraphHost?: string): AccountEntity;
static createGenericAccount(homeAccountId: string, idToken: AuthToken, authority?: Authority, oboAssertion?: string, cloudGraphHostName?: string, msGraphHost?: string, environment?: string): AccountEntity;
/**

@@ -84,0 +84,0 @@ * Generate HomeAccountId from server response

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -109,3 +109,3 @@ import { Separators, CacheAccountType, CacheType, Constants } from '../../utils/Constants.js';

*/
AccountEntity.createAccount = function (clientInfo, homeAccountId, authority, idToken, oboAssertion, cloudGraphHostName, msGraphHost) {
AccountEntity.createAccount = function (clientInfo, homeAccountId, idToken, authority, oboAssertion, cloudGraphHostName, msGraphHost, environment) {
var _a, _b, _c, _d, _e, _f;

@@ -116,4 +116,4 @@ var account = new AccountEntity();

account.homeAccountId = homeAccountId;
var env = authority.getPreferredCache();
if (StringUtils.isEmpty(env)) {
var env = environment || (authority && authority.getPreferredCache());
if (!env) {
throw ClientAuthError.createInvalidCacheEnvironmentError();

@@ -145,6 +145,6 @@ }

*/
AccountEntity.createGenericAccount = function (authority, homeAccountId, idToken, oboAssertion, cloudGraphHostName, msGraphHost) {
AccountEntity.createGenericAccount = function (homeAccountId, idToken, authority, oboAssertion, cloudGraphHostName, msGraphHost, environment) {
var _a, _b, _c, _d;
var account = new AccountEntity();
account.authorityType = (authority.authorityType === AuthorityType.Adfs) ? CacheAccountType.ADFS_ACCOUNT_TYPE : CacheAccountType.GENERIC_ACCOUNT_TYPE;
account.authorityType = (authority && authority.authorityType === AuthorityType.Adfs) ? CacheAccountType.ADFS_ACCOUNT_TYPE : CacheAccountType.GENERIC_ACCOUNT_TYPE;
account.homeAccountId = homeAccountId;

@@ -154,4 +154,4 @@ // non AAD scenarios can have empty realm

account.oboAssertion = oboAssertion;
var env = authority.getPreferredCache();
if (StringUtils.isEmpty(env)) {
var env = environment || authority && authority.getPreferredCache();
if (!env) {
throw ClientAuthError.createInvalidCacheEnvironmentError();

@@ -158,0 +158,0 @@ }

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { Separators, APP_METADATA } from '../../utils/Constants.js';

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { AUTHORITY_METADATA_CONSTANTS } from '../../utils/Constants.js';

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ /*

@@ -1,2 +0,2 @@

import { CredentialType } from "../../utils/Constants";
import { CredentialType, AuthenticationScheme } from "../../utils/Constants";
/**

@@ -7,3 +7,3 @@ * Base type for credentials to be stored in the cache: eg: ACCESS_TOKEN, ID_TOKEN etc

*
* Key: <home_account_id*>-<environment>-<credential_type>-<client_id>-<realm*>-<target*>
* Key: <home_account_id*>-<environment>-<credential_type>-<client_id>-<realm*>-<target*>-<scheme>
*

@@ -21,2 +21,3 @@ * Value Schema:

* oboAssertion: access token passed in as part of OBO request
* tokenType: Matches the authentication scheme for which the token was issued (i.e. Bearer or pop)
* }

@@ -34,2 +35,3 @@ */

oboAssertion?: string;
tokenType?: AuthenticationScheme;
/**

@@ -62,4 +64,5 @@ * Generate Account Id key component as per the schema: <home_account_id>-<environment>

* generates credential key
* <home_account_id*>-\<environment>-<credential_type>-<client_id>-<realm\*>-<target\*>-<scheme\*>
*/
static generateCredentialCacheKey(homeAccountId: string, environment: string, credentialType: CredentialType, clientId: string, realm?: string, target?: string, familyId?: string): string;
static generateCredentialCacheKey(homeAccountId: string, environment: string, credentialType: CredentialType, clientId: string, realm?: string, target?: string, familyId?: string, tokenType?: AuthenticationScheme): string;
/**

@@ -66,0 +69,0 @@ * generates Account Id for keys

@@ -1,4 +0,4 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';
import { CredentialType, CacheType, Constants, Separators } from '../../utils/Constants.js';
import { CredentialType, CacheType, Constants, AuthenticationScheme, Separators } from '../../utils/Constants.js';
import { ClientAuthError } from '../../error/ClientAuthError.js';

@@ -15,3 +15,3 @@

*
* Key: <home_account_id*>-<environment>-<credential_type>-<client_id>-<realm*>-<target*>
* Key: <home_account_id*>-<environment>-<credential_type>-<client_id>-<realm*>-<target*>-<scheme>
*

@@ -29,2 +29,3 @@ * Value Schema:

* oboAssertion: access token passed in as part of OBO request
* tokenType: Matches the authentication scheme for which the token was issued (i.e. Bearer or pop)
* }

@@ -57,3 +58,3 @@ */

CredentialEntity.prototype.generateCredentialKey = function () {
return CredentialEntity.generateCredentialCacheKey(this.homeAccountId, this.environment, this.credentialType, this.clientId, this.realm, this.target, this.familyId);
return CredentialEntity.generateCredentialCacheKey(this.homeAccountId, this.environment, this.credentialType, this.clientId, this.realm, this.target, this.familyId, this.tokenType);
};

@@ -68,2 +69,3 @@ /**

case CredentialType.ACCESS_TOKEN:
case CredentialType.ACCESS_TOKEN_WITH_AUTH_SCHEME:
return CacheType.ACCESS_TOKEN;

@@ -100,9 +102,14 @@ case CredentialType.REFRESH_TOKEN:

* generates credential key
* <home_account_id*>-\<environment>-<credential_type>-<client_id>-<realm\*>-<target\*>-<scheme\*>
*/
CredentialEntity.generateCredentialCacheKey = function (homeAccountId, environment, credentialType, clientId, realm, target, familyId) {
CredentialEntity.generateCredentialCacheKey = function (homeAccountId, environment, credentialType, clientId, realm, target, familyId, tokenType) {
var credentialKey = [
this.generateAccountIdForCacheKey(homeAccountId, environment),
this.generateCredentialIdForCacheKey(credentialType, clientId, realm, familyId),
this.generateTargetForCacheKey(target),
this.generateTargetForCacheKey(target)
];
// PoP Tokens include scheme in cache key
if (tokenType === AuthenticationScheme.POP) {
credentialKey.push(tokenType.toLowerCase());
}
return credentialKey.join(Separators.CACHE_KEY_SEPARATOR).toLowerCase();

@@ -109,0 +116,0 @@ };

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { __extends } from '../../_virtual/_tslib.js';

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { __extends } from '../../_virtual/_tslib.js';

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { SERVER_TELEM_CONSTANTS } from '../../utils/Constants.js';

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { ThrottlingConstants } from '../../utils/Constants.js';

@@ -119,3 +119,3 @@ import { CredentialEntity } from "../entities/CredentialEntity";

*/
saveCacheRecord(cacheRecord: CacheRecord): void;
saveCacheRecord(cacheRecord: CacheRecord): Promise<void>;
/**

@@ -141,3 +141,3 @@ * retrieve accounts matching all provided filters; if no filter is set, get all accounts

*/
removeAllAccounts(): boolean;
removeAllAccounts(): Promise<boolean>;
/**

@@ -147,3 +147,3 @@ * returns a boolean if the given account is removed

*/
removeAccount(accountKey: string): boolean;
removeAccount(accountKey: string): Promise<boolean>;
/**

@@ -153,3 +153,3 @@ * returns a boolean if the given account is removed

*/
removeAccountContext(account: AccountEntity): boolean;
removeAccountContext(account: AccountEntity): Promise<boolean>;
/**

@@ -159,4 +159,4 @@ * returns a boolean if the given credential is removed

*/
removeCredential(credential: CredentialEntity): boolean;
removeCredential(credential: CredentialEntity): Promise<boolean>;
}
//# sourceMappingURL=ICacheManager.d.ts.map

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ /*

@@ -9,2 +9,3 @@ import { AccountEntity } from "../entities/AccountEntity";

import { AuthorityMetadataEntity } from "../entities/AuthorityMetadataEntity";
import { AuthenticationScheme } from "../../utils/Constants";
export declare type AccountCache = Record<string, AccountEntity>;

@@ -37,3 +38,3 @@ export declare type IdTokenCache = Record<string, IdTokenEntity>;

/**
* Credential: <home_account_id*>-<environment>-<credential_type>-<client_id>-<realm*>-<target*>
* Credential: <home_account_id*>-<environment>-<credential_type>-<client_id>-<realm*>-<target*>-<scheme*>
*/

@@ -49,2 +50,3 @@ export declare type CredentialFilter = {

oboAssertion?: string;
tokenType?: AuthenticationScheme;
};

@@ -51,0 +53,0 @@ /**

@@ -37,3 +37,3 @@ import { BaseClient } from "./BaseClient";

/**
* Use to log out the current user, and redirect the user to the postLogoutRedirectUri.
* Used to log out the current user, and redirect the user to the postLogoutRedirectUri.
* Default behaviour is to redirect the user to `window.location.href`.

@@ -40,0 +40,0 @@ * @param authorityUri

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -11,4 +11,2 @@ import { __extends, __awaiter, __generator, __assign, __spreadArrays } from '../_virtual/_tslib.js';

import { UrlString } from '../url/UrlString.js';
import { AccountEntity } from '../cache/entities/AccountEntity.js';
import { ClientConfigurationError } from '../error/ClientConfigurationError.js';
import { PopTokenGenerator } from '../crypto/PopTokenGenerator.js';

@@ -18,2 +16,3 @@ import { TimeUtils } from '../utils/TimeUtils.js';

import { CcsCredentialType } from '../account/CcsCredential.js';
import { ClientConfigurationError } from '../error/ClientConfigurationError.js';

@@ -102,3 +101,3 @@ /*

/**
* Use to log out the current user, and redirect the user to the postLogoutRedirectUri.
* Used to log out the current user, and redirect the user to the postLogoutRedirectUri.
* Default behaviour is to redirect the user to `window.location.href`.

@@ -112,10 +111,2 @@ * @param authorityUri

}
if (logoutRequest.account) {
// Clear given account.
this.cacheManager.removeAccount(AccountEntity.generateAccountCacheKey(logoutRequest.account));
}
else {
// Clear all accounts and tokens
this.cacheManager.clear();
}
var queryString = this.createLogoutUrlQueryString(logoutRequest);

@@ -139,3 +130,7 @@ // Construct logout URI.

authority: authority.canonicalAuthority,
scopes: request.scopes
scopes: request.scopes,
authenticationScheme: request.authenticationScheme,
resourceRequestMethod: request.resourceRequestMethod,
resourceRequestUri: request.resourceRequestUri,
shrClaims: request.shrClaims
};

@@ -376,2 +371,8 @@ return [4 /*yield*/, this.createTokenRequestBody(request)];

}
if (request.state) {
parameterBuilder.addState(request.state);
}
if (request.extraQueryParameters) {
parameterBuilder.addExtraQueryParameters(request.extraQueryParameters);
}
return parameterBuilder.createQueryString();

@@ -378,0 +379,0 @@ };

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { __awaiter, __generator } from '../_virtual/_tslib.js';

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -120,3 +120,7 @@ import { __extends, __awaiter, __generator } from '../_virtual/_tslib.js';

authority: request.authority,
scopes: request.scopes
scopes: request.scopes,
authenticationScheme: request.authenticationScheme,
resourceRequestMethod: request.resourceRequestMethod,
resourceRequestUri: request.resourceRequestUri,
shrClaims: request.shrClaims
};

@@ -123,0 +127,0 @@ reqTimestamp = TimeUtils.nowSeconds();

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -64,3 +64,7 @@ import { __extends, __awaiter, __generator } from '../_virtual/_tslib.js';

authority: request.authority,
scopes: request.scopes
scopes: request.scopes,
authenticationScheme: request.authenticationScheme,
resourceRequestMethod: request.resourceRequestMethod,
resourceRequestUri: request.resourceRequestUri,
shrClaims: request.shrClaims
};

@@ -158,3 +162,7 @@ return [2 /*return*/, this.executePostRequestToDeviceCodeEndpoint(this.authority.deviceCodeEndpoint, queryString, headers, thumbprint)];

authority: request.authority,
scopes: request.scopes
scopes: request.scopes,
authenticationScheme: request.authenticationScheme,
resourceRequestMethod: request.resourceRequestMethod,
resourceRequestUri: request.resourceRequestUri,
shrClaims: request.shrClaims
};

@@ -161,0 +169,0 @@ return [4 /*yield*/, this.executePostToTokenEndpoint(this.authority.tokenEndpoint, requestBody, headers, thumbprint)];

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -160,3 +160,7 @@ import { __extends, __awaiter, __generator } from '../_virtual/_tslib.js';

authority: request.authority,
scopes: request.scopes
scopes: request.scopes,
authenticationScheme: request.authenticationScheme,
resourceRequestMethod: request.resourceRequestMethod,
resourceRequestUri: request.resourceRequestUri,
shrClaims: request.shrClaims
};

@@ -163,0 +167,0 @@ reqTimestamp = TimeUtils.nowSeconds();

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -126,3 +126,7 @@ import { __extends, __awaiter, __generator, __assign } from '../_virtual/_tslib.js';

authority: authority.canonicalAuthority,
scopes: request.scopes
scopes: request.scopes,
authenticationScheme: request.authenticationScheme,
resourceRequestMethod: request.resourceRequestMethod,
resourceRequestUri: request.resourceRequestUri,
shrClaims: request.shrClaims
};

@@ -129,0 +133,0 @@ endpoint = UrlString.appendQueryString(authority.tokenEndpoint, queryParameters);

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { __extends, __awaiter, __generator } from '../_virtual/_tslib.js';

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -62,3 +62,7 @@ import { __extends, __awaiter, __generator } from '../_virtual/_tslib.js';

authority: authority.canonicalAuthority,
scopes: request.scopes
scopes: request.scopes,
authenticationScheme: request.authenticationScheme,
resourceRequestMethod: request.resourceRequestMethod,
resourceRequestUri: request.resourceRequestUri,
shrClaims: request.shrClaims
};

@@ -65,0 +69,0 @@ requestBody = this.createTokenRequestBody(request);

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -68,6 +68,7 @@ import { __assign, __awaiter, __generator } from '../_virtual/_tslib.js';

var userAuthOptions = _a.authOptions, userSystemOptions = _a.systemOptions, userLoggerOption = _a.loggerOptions, storageImplementation = _a.storageInterface, networkImplementation = _a.networkInterface, cryptoImplementation = _a.cryptoInterface, clientCredentials = _a.clientCredentials, libraryInfo = _a.libraryInfo, serverTelemetryManager = _a.serverTelemetryManager, persistencePlugin = _a.persistencePlugin, serializableCache = _a.serializableCache;
var loggerOptions = __assign(__assign({}, DEFAULT_LOGGER_IMPLEMENTATION), userLoggerOption);
return {
authOptions: buildAuthOptions(userAuthOptions),
systemOptions: __assign(__assign({}, DEFAULT_SYSTEM_OPTIONS), userSystemOptions),
loggerOptions: __assign(__assign({}, DEFAULT_LOGGER_IMPLEMENTATION), userLoggerOption),
loggerOptions: loggerOptions,
storageInterface: storageImplementation || new DefaultStorageClass(userAuthOptions.clientId, DEFAULT_CRYPTO_IMPLEMENTATION),

@@ -74,0 +75,0 @@ networkInterface: networkImplementation || DEFAULT_NETWORK_IMPLEMENTATION,

@@ -12,2 +12,3 @@ import { BaseAuthRequest } from "../request/BaseAuthRequest";

};
export declare type SignedHttpRequestParameters = Pick<BaseAuthRequest, "resourceRequestMethod" | "resourceRequestUri" | "shrClaims">;
/**

@@ -39,4 +40,13 @@ * Interface for crypto functions used by library

*/
getPublicKeyThumbprint(request: BaseAuthRequest): Promise<string>;
getPublicKeyThumbprint(request: SignedHttpRequestParameters): Promise<string>;
/**
* Removes cryptographic keypair from key store matching the keyId passed in
* @param kid
*/
removeTokenBindingKey(kid: string): Promise<boolean>;
/**
* Removes all cryptographic keys from IndexedDB storage
*/
clearKeystore(): Promise<boolean>;
/**
* Returns a signed proof-of-possession token with a given acces token that contains a cnf claim with the required kid.

@@ -43,0 +53,0 @@ * @param accessToken

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -41,2 +41,20 @@ import { __awaiter, __generator } from '../_virtual/_tslib.js';

},
removeTokenBindingKey: function () {
return __awaiter(this, void 0, void 0, function () {
var notImplErr;
return __generator(this, function (_a) {
notImplErr = "Crypto interface - removeTokenBindingKey() has not been implemented";
throw AuthError.createUnexpectedError(notImplErr);
});
});
},
clearKeystore: function () {
return __awaiter(this, void 0, void 0, function () {
var notImplErr;
return __generator(this, function (_a) {
notImplErr = "Crypto interface - clearKeystore() has not been implemented";
throw AuthError.createUnexpectedError(notImplErr);
});
});
},
signJwt: function () {

@@ -43,0 +61,0 @@ return __awaiter(this, void 0, void 0, function () {

@@ -1,9 +0,26 @@

import { ICrypto } from "./ICrypto";
import { BaseAuthRequest } from "../request/BaseAuthRequest";
import { ICrypto, SignedHttpRequestParameters } from "./ICrypto";
/**
* See eSTS docs for more info.
* - A kid element, with the value containing an RFC 7638-compliant JWK thumbprint that is base64 encoded.
* - xms_ksl element, representing the storage location of the key's secret component on the client device. One of two values:
* - sw: software storage
* - uhw: hardware storage
*/
declare type ReqCnf = {
kid: string;
xms_ksl: KeyLocation;
};
declare enum KeyLocation {
SW = "sw",
UHW = "uhw"
}
export declare class PopTokenGenerator {
private cryptoUtils;
constructor(cryptoUtils: ICrypto);
generateCnf(request: BaseAuthRequest): Promise<string>;
signPopToken(accessToken: string, request: BaseAuthRequest): Promise<string>;
generateCnf(request: SignedHttpRequestParameters): Promise<string>;
generateKid(request: SignedHttpRequestParameters): Promise<ReqCnf>;
signPopToken(accessToken: string, request: SignedHttpRequestParameters): Promise<string>;
signPayload(payload: string, kid: string, request: SignedHttpRequestParameters, claims?: object): Promise<string>;
}
export {};
//# sourceMappingURL=PopTokenGenerator.d.ts.map

@@ -1,4 +0,4 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';
import { __awaiter, __generator } from '../_virtual/_tslib.js';
import { __awaiter, __generator, __assign } from '../_virtual/_tslib.js';
import { AuthToken } from '../account/AuthToken.js';

@@ -24,13 +24,25 @@ import { TimeUtils } from '../utils/TimeUtils.js';

return __awaiter(this, void 0, void 0, function () {
var kidThumbprint, reqCnf;
var reqCnf;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, this.generateKid(request)];
case 1:
reqCnf = _a.sent();
return [2 /*return*/, this.cryptoUtils.base64Encode(JSON.stringify(reqCnf))];
}
});
});
};
PopTokenGenerator.prototype.generateKid = function (request) {
return __awaiter(this, void 0, void 0, function () {
var kidThumbprint;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, this.cryptoUtils.getPublicKeyThumbprint(request)];
case 1:
kidThumbprint = _a.sent();
reqCnf = {
kid: kidThumbprint,
xms_ksl: KeyLocation.SW
};
return [2 /*return*/, this.cryptoUtils.base64Encode(JSON.stringify(reqCnf))];
return [2 /*return*/, {
kid: kidThumbprint,
xms_ksl: KeyLocation.SW
}];
}

@@ -43,24 +55,23 @@ });

return __awaiter(this, void 0, void 0, function () {
var tokenClaims, resourceRequestMethod, resourceRequestUri, shrClaims, resourceUrlString, resourceUrlComponents;
var tokenClaims;
return __generator(this, function (_b) {
switch (_b.label) {
tokenClaims = AuthToken.extractTokenClaims(accessToken, this.cryptoUtils);
if (!((_a = tokenClaims === null || tokenClaims === void 0 ? void 0 : tokenClaims.cnf) === null || _a === void 0 ? void 0 : _a.kid)) {
throw ClientAuthError.createTokenClaimsRequiredError();
}
return [2 /*return*/, this.signPayload(accessToken, tokenClaims.cnf.kid, request)];
});
});
};
PopTokenGenerator.prototype.signPayload = function (payload, kid, request, claims) {
return __awaiter(this, void 0, void 0, function () {
var resourceRequestMethod, resourceRequestUri, shrClaims, resourceUrlString, resourceUrlComponents;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
tokenClaims = AuthToken.extractTokenClaims(accessToken, this.cryptoUtils);
resourceRequestMethod = request.resourceRequestMethod, resourceRequestUri = request.resourceRequestUri, shrClaims = request.shrClaims;
resourceUrlString = (resourceRequestUri) ? new UrlString(resourceRequestUri) : undefined;
resourceUrlComponents = resourceUrlString === null || resourceUrlString === void 0 ? void 0 : resourceUrlString.getUrlComponents();
if (!((_a = tokenClaims === null || tokenClaims === void 0 ? void 0 : tokenClaims.cnf) === null || _a === void 0 ? void 0 : _a.kid)) {
throw ClientAuthError.createTokenClaimsRequiredError();
}
return [4 /*yield*/, this.cryptoUtils.signJwt({
at: accessToken,
ts: TimeUtils.nowSeconds(),
m: resourceRequestMethod === null || resourceRequestMethod === void 0 ? void 0 : resourceRequestMethod.toUpperCase(),
u: resourceUrlComponents === null || resourceUrlComponents === void 0 ? void 0 : resourceUrlComponents.HostNameAndPort,
nonce: this.cryptoUtils.createNewGuid(),
p: resourceUrlComponents === null || resourceUrlComponents === void 0 ? void 0 : resourceUrlComponents.AbsolutePath,
q: (resourceUrlComponents === null || resourceUrlComponents === void 0 ? void 0 : resourceUrlComponents.QueryString) ? [[], resourceUrlComponents.QueryString] : undefined,
client_claims: shrClaims || undefined
}, tokenClaims.cnf.kid)];
case 1: return [2 /*return*/, _b.sent()];
return [4 /*yield*/, this.cryptoUtils.signJwt(__assign({ at: payload, ts: TimeUtils.nowSeconds(), m: resourceRequestMethod === null || resourceRequestMethod === void 0 ? void 0 : resourceRequestMethod.toUpperCase(), u: resourceUrlComponents === null || resourceUrlComponents === void 0 ? void 0 : resourceUrlComponents.HostNameAndPort, nonce: this.cryptoUtils.createNewGuid(), p: resourceUrlComponents === null || resourceUrlComponents === void 0 ? void 0 : resourceUrlComponents.AbsolutePath, q: (resourceUrlComponents === null || resourceUrlComponents === void 0 ? void 0 : resourceUrlComponents.QueryString) ? [[], resourceUrlComponents.QueryString] : undefined, client_claims: shrClaims || undefined }, claims), kid)];
case 1: return [2 /*return*/, _a.sent()];
}

@@ -67,0 +78,0 @@ });

@@ -26,3 +26,8 @@ /**

subError: string;
/**
* CorrelationId associated with the error
*/
correlationId: string;
constructor(errorCode?: string, errorMessage?: string, suberror?: string);
setCorrelationId(correlationId: string): void;
/**

@@ -29,0 +34,0 @@ * Creates an error that is thrown when something unexpected happens in the library.

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -35,2 +35,5 @@ import { __extends } from '../_virtual/_tslib.js';

}
AuthError.prototype.setCorrelationId = function (correlationId) {
this.correlationId = correlationId;
};
/**

@@ -37,0 +40,0 @@ * Creates an error that is thrown when something unexpected happens in the library.

@@ -178,2 +178,6 @@ import { AuthError } from "./AuthError";

};
bindingKeyNotRemovedError: {
code: string;
desc: string;
};
};

@@ -355,3 +359,4 @@ /**

static createNoAuthCodeInServerResponseError(): ClientAuthError;
static createBindingKeyNotRemovedError(): ClientAuthError;
}
//# sourceMappingURL=ClientAuthError.d.ts.map

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -186,2 +186,6 @@ import { __extends } from '../_virtual/_tslib.js';

desc: "Access token entity is null, please check logs and cache to ensure a valid access token is present."
},
bindingKeyNotRemovedError: {
code: "binding_key_not_removed",
desc: "Could not remove the credential's binding key from storage."
}

@@ -453,2 +457,5 @@ };

};
ClientAuthError.createBindingKeyNotRemovedError = function () {
return new ClientAuthError(ClientAuthErrorMessage.bindingKeyNotRemovedError.code, ClientAuthErrorMessage.bindingKeyNotRemovedError.desc);
};
return ClientAuthError;

@@ -455,0 +462,0 @@ }(AuthError));

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { __extends } from '../_virtual/_tslib.js';

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { __extends } from '../_virtual/_tslib.js';

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { __extends } from '../_virtual/_tslib.js';

@@ -45,3 +45,3 @@ /**

export { UrlString } from "./url/UrlString";
export { ICrypto, PkceCodes, DEFAULT_CRYPTO_IMPLEMENTATION } from "./crypto/ICrypto";
export { ICrypto, PkceCodes, DEFAULT_CRYPTO_IMPLEMENTATION, SignedHttpRequestParameters } from "./crypto/ICrypto";
export { SignedHttpRequest } from "./crypto/SignedHttpRequest";

@@ -64,3 +64,5 @@ export { BaseAuthRequest } from "./request/BaseAuthRequest";

export { ServerAuthorizationTokenResponse } from "./response/ServerAuthorizationTokenResponse";
export { ExternalTokenResponse } from "./response/ExternalTokenResponse";
export { DeviceCodeResponse } from "./response/DeviceCodeResponse";
export { ScopeSet } from "./request/ScopeSet";
export { ILoggerCallback, LogLevel, Logger } from "./logger/Logger";

@@ -79,2 +81,3 @@ export { InteractionRequiredAuthError } from "./error/InteractionRequiredAuthError";

export { ServerTelemetryRequest } from "./telemetry/server/ServerTelemetryRequest";
export { PopTokenGenerator } from "./crypto/PopTokenGenerator";
//# sourceMappingURL=index.d.ts.map

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -33,2 +33,3 @@ export { AuthorizationCodeClient } from './client/AuthorizationCodeClient.js';

export { DEFAULT_CRYPTO_IMPLEMENTATION } from './crypto/ICrypto.js';
export { ScopeSet } from './request/ScopeSet.js';
export { LogLevel, Logger } from './logger/Logger.js';

@@ -45,2 +46,3 @@ export { InteractionRequiredAuthError } from './error/InteractionRequiredAuthError.js';

export { ServerTelemetryManager } from './telemetry/server/ServerTelemetryManager.js';
export { PopTokenGenerator } from './crypto/PopTokenGenerator.js';
//# sourceMappingURL=index.js.map

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -28,6 +28,8 @@ import { StringUtils } from '../utils/StringUtils.js';

this.level = LogLevel.Info;
var defaultLoggerCallback = function () { };
var defaultLoggerCallback = function () {
return;
};
this.localCallback = loggerOptions.loggerCallback || defaultLoggerCallback;
this.piiLoggingEnabled = loggerOptions.piiLoggingEnabled || false;
this.level = loggerOptions.logLevel || LogLevel.Info;
this.level = typeof (loggerOptions.logLevel) === "number" ? loggerOptions.logLevel : LogLevel.Info;
this.correlationId = loggerOptions.correlationId || "";

@@ -34,0 +36,0 @@ this.packageName = packageName || Constants.EMPTY_STRING;

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { AuthError } from '../error/AuthError.js';

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { __awaiter, __generator } from '../_virtual/_tslib.js';

@@ -0,1 +1,2 @@

import { AuthenticationScheme } from "../utils/Constants";
/**

@@ -9,3 +10,7 @@ * Type representing a unique request thumbprint.

homeAccountIdentifier?: string;
authenticationScheme?: AuthenticationScheme;
resourceRequestMethod?: string;
resourceRequestUri?: string;
shrClaims?: string;
};
//# sourceMappingURL=RequestThumbprint.d.ts.map

@@ -5,2 +5,3 @@ import { NetworkResponse } from "./NetworkManager";

import { RequestThumbprint } from "./RequestThumbprint";
import { BaseAuthRequest } from "../request/BaseAuthRequest";
export declare class ThrottlingUtils {

@@ -40,4 +41,4 @@ /**

static calculateThrottleTime(throttleTime: number): number;
static removeThrottle(cacheManager: CacheManager, clientId: string, authority: string, scopes: Array<string>, homeAccountIdentifier?: string): boolean;
static removeThrottle(cacheManager: CacheManager, clientId: string, request: BaseAuthRequest, homeAccountIdentifier?: string): boolean;
}
//# sourceMappingURL=ThrottlingUtils.d.ts.map

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -81,8 +81,12 @@ import { ThrottlingConstants, CacheSchemaType, Constants, HeaderNames } from '../utils/Constants.js';

};
ThrottlingUtils.removeThrottle = function (cacheManager, clientId, authority, scopes, homeAccountIdentifier) {
ThrottlingUtils.removeThrottle = function (cacheManager, clientId, request, homeAccountIdentifier) {
var thumbprint = {
clientId: clientId,
authority: authority,
scopes: scopes,
homeAccountIdentifier: homeAccountIdentifier
authority: request.authority,
scopes: request.scopes,
homeAccountIdentifier: homeAccountIdentifier,
authenticationScheme: request.authenticationScheme,
resourceRequestMethod: request.resourceRequestMethod,
resourceRequestUri: request.resourceRequestUri,
shrClaims: request.shrClaims
};

@@ -89,0 +93,0 @@ var key = this.generateThrottlingStorageKey(thumbprint);

export declare const name = "@azure/msal-common";
export declare const version = "4.5.1";
export declare const version = "5.0.0";
//# sourceMappingURL=packageMetadata.d.ts.map

@@ -1,8 +0,8 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';
/* eslint-disable header/header */
var name = "@azure/msal-common";
var version = "4.5.1";
var version = "5.0.0";
export { name, version };
//# sourceMappingURL=packageMetadata.js.map
import { AccountInfo } from "../account/AccountInfo";
import { StringDict } from "../utils/MsalTypes";
/**

@@ -8,2 +9,3 @@ * CommonEndSessionRequest

* - idTokenHint - ID Token used by B2C to validate logout if required by the policy
* - state - A value included in the request to the logout endpoint which will be returned in the query string upon post logout redirection
*/

@@ -15,3 +17,5 @@ export declare type CommonEndSessionRequest = {

idTokenHint?: string;
state?: string;
extraQueryParameters?: StringDict;
};
//# sourceMappingURL=CommonEndSessionRequest.d.ts.map

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { __spreadArrays } from '../_virtual/_tslib.js';

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { StringUtils } from '../utils/StringUtils.js';

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { __spreadArrays } from '../_virtual/_tslib.js';

@@ -29,2 +29,3 @@ import { AccountInfo } from "../account/AccountInfo";

tokenType: string;
correlationId: string;
extExpiresOn?: Date;

@@ -31,0 +32,0 @@ state?: string;

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -105,3 +105,3 @@ import { __awaiter, __generator } from '../_virtual/_tslib.js';

case 1:
_a.trys.push([1, , 4, 7]);
_a.trys.push([1, , 5, 8]);
if (!(this.persistencePlugin && this.serializableCache)) return [3 /*break*/, 3];

@@ -128,13 +128,15 @@ this.logger.verbose("Persistence enabled, calling beforeCacheAccess");

}
this.cacheStorage.saveCacheRecord(cacheRecord);
return [3 /*break*/, 7];
return [4 /*yield*/, this.cacheStorage.saveCacheRecord(cacheRecord)];
case 4:
if (!(this.persistencePlugin && this.serializableCache && cacheContext)) return [3 /*break*/, 6];
_a.sent();
return [3 /*break*/, 8];
case 5:
if (!(this.persistencePlugin && this.serializableCache && cacheContext)) return [3 /*break*/, 7];
this.logger.verbose("Persistence enabled, calling afterCacheAccess");
return [4 /*yield*/, this.persistencePlugin.afterCacheAccess(cacheContext)];
case 5:
case 6:
_a.sent();
_a.label = 6;
case 6: return [7 /*endfinally*/];
case 7: return [2 /*return*/, ResponseHandler.generateAuthenticationResult(this.cryptoObj, authority, cacheRecord, false, request, idTokenObj, requestStateObj)];
_a.label = 7;
case 7: return [7 /*endfinally*/];
case 8: return [2 /*return*/, ResponseHandler.generateAuthenticationResult(this.cryptoObj, authority, cacheRecord, false, request, idTokenObj, requestStateObj)];
}

@@ -205,3 +207,3 @@ });

this.logger.verbose("Authority type is ADFS, creating ADFS account");
return AccountEntity.createGenericAccount(authority, this.homeAccountIdentifier, idToken, oboAssertion, cloudGraphHostName, msGraphhost);
return AccountEntity.createGenericAccount(this.homeAccountIdentifier, idToken, authority, oboAssertion, cloudGraphHostName, msGraphhost);
}

@@ -213,4 +215,4 @@ // This fallback applies to B2C as well as they fall under an AAD account type.

return serverTokenResponse.client_info ?
AccountEntity.createAccount(serverTokenResponse.client_info, this.homeAccountIdentifier, authority, idToken, oboAssertion, cloudGraphHostName, msGraphhost) :
AccountEntity.createGenericAccount(authority, this.homeAccountIdentifier, idToken, oboAssertion, cloudGraphHostName, msGraphhost);
AccountEntity.createAccount(serverTokenResponse.client_info, this.homeAccountIdentifier, idToken, authority, oboAssertion, cloudGraphHostName, msGraphhost) :
AccountEntity.createGenericAccount(this.homeAccountIdentifier, idToken, authority, oboAssertion, cloudGraphHostName, msGraphhost);
};

@@ -270,2 +272,3 @@ /**

expiresOn: expiresOn,
correlationId: request.correlationId,
extExpiresOn: extExpiresOn,

@@ -272,0 +275,0 @@ familyId: familyId,

@@ -0,4 +1,5 @@

import { AuthenticationScheme } from "../utils/Constants";
/**
* Deserialized response object from server authorization code request.
* - token_type: Indicates the token type value. The only type that Azure AD supports is Bearer.
* - token_type: Indicates the token type value. Can be either Bearer or pop.
* - scope: The scopes that the access_token is valid for.

@@ -21,3 +22,3 @@ * - expires_in: How long the access token is valid (in seconds).

export declare type ServerAuthorizationTokenResponse = {
token_type?: string;
token_type?: AuthenticationScheme;
scope?: string;

@@ -24,0 +25,0 @@ expires_in?: number;

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { SERVER_TELEM_CONSTANTS, CacheOutcome, Constants, Separators } from '../../utils/Constants.js';

@@ -20,8 +20,2 @@ import { ServerAuthorizationCodeResponse } from "../response/ServerAuthorizationCodeResponse";

/**
* Function to remove query string params from url. Returns the new url.
* @param url
* @param name
*/
urlRemoveQueryStringParameter(name: string): string;
/**
* Given a url and a query string return the url with provided query string appended

@@ -28,0 +22,0 @@ * @param url

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -75,18 +75,2 @@ import { ClientConfigurationError } from '../error/ClientConfigurationError.js';

/**
* Function to remove query string params from url. Returns the new url.
* @param url
* @param name
*/
UrlString.prototype.urlRemoveQueryStringParameter = function (name) {
var regex = new RegExp("(\\&" + name + "=)[^\&]+");
this._urlString = this.urlString.replace(regex, "");
// name=value&
regex = new RegExp("(" + name + "=)[^\&]+&");
this._urlString = this.urlString.replace(regex, "");
// name=value
regex = new RegExp("(" + name + "=)[^\&]+");
this._urlString = this.urlString.replace(regex, "");
return this.urlString;
};
/**
* Given a url and a query string return the url with provided query string appended

@@ -211,3 +195,4 @@ * @param url

UrlString.hashContainsKnownProperties = function (hash) {
if (StringUtils.isEmpty(hash)) {
if (StringUtils.isEmpty(hash) || hash.indexOf("=") < 0) {
// Hash doesn't contain key/value pairs
return false;

@@ -214,0 +199,0 @@ }

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { __spreadArrays } from '../_virtual/_tslib.js';

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ import { StringUtils } from './StringUtils.js';

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -70,12 +70,13 @@ import { ClientAuthError } from '../error/ClientAuthError.js';

StringUtils.queryStringToObject = function (query) {
var match; // Regex for replacing addition symbol with a space
var pl = /\+/g;
var search = /([^&=]+)=([^&]*)/g;
var decode = function (s) { return decodeURIComponent(s.replace(pl, " ")); };
var obj = {};
match = search.exec(query);
while (match) {
obj[decode(match[1])] = decode(match[2]);
match = search.exec(query);
}
var params = query.split("&");
var decode = function (s) { return decodeURIComponent(s.replace(/\+/g, " ")); };
params.forEach(function (pair) {
if (pair.trim()) {
var _a = pair.split(/=(.+)/g, 2), key = _a[0], value = _a[1]; // Split on the first occurence of the '=' character
if (key && value) {
obj[decode(key)] = decode(value);
}
}
});
return obj;

@@ -122,3 +123,3 @@ };

*/
var regex = new RegExp(pattern.replace(/\*/g, "[^ ]*").replace(/\?/g, "\\\?"));
var regex = new RegExp(pattern.replace(/\\/g, "\\\\").replace(/\*/g, "[^ ]*").replace(/\?/g, "\\\?")); // eslint-disable-line security/detect-non-literal-regexp
return regex.test(input);

@@ -125,0 +126,0 @@ };

@@ -1,2 +0,2 @@

/*! @azure/msal-common v4.5.1 2021-08-02 */
/*! @azure/msal-common v5.0.0 2021-09-08 */
'use strict';

@@ -3,0 +3,0 @@ /*

@@ -13,3 +13,3 @@ {

},
"version": "4.5.1",
"version": "5.0.0",
"description": "Microsoft Authentication Library for js",

@@ -16,0 +16,0 @@ "keywords": [

@@ -0,0 +0,0 @@ # Microsoft Authentication Library for JavaScript (MSAL.js) Common Protocols Package

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc