Estructura inicial del proyecto
This commit is contained in:
1146
backend/node_modules/@azure/msal-common/dist/cache/CacheManager.mjs
generated
vendored
Normal file
1146
backend/node_modules/@azure/msal-common/dist/cache/CacheManager.mjs
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1
backend/node_modules/@azure/msal-common/dist/cache/CacheManager.mjs.map
generated
vendored
Normal file
1
backend/node_modules/@azure/msal-common/dist/cache/CacheManager.mjs.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
30
backend/node_modules/@azure/msal-common/dist/cache/persistence/TokenCacheContext.mjs
generated
vendored
Normal file
30
backend/node_modules/@azure/msal-common/dist/cache/persistence/TokenCacheContext.mjs
generated
vendored
Normal file
@ -0,0 +1,30 @@
|
||||
/*! @azure/msal-common v16.6.2 2026-05-19 */
|
||||
'use strict';
|
||||
/*
|
||||
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
* Licensed under the MIT License.
|
||||
*/
|
||||
/**
|
||||
* This class instance helps track the memory changes facilitating
|
||||
* decisions to read from and write to the persistent cache
|
||||
*/ class TokenCacheContext {
|
||||
constructor(tokenCache, hasChanged) {
|
||||
this.cache = tokenCache;
|
||||
this.hasChanged = hasChanged;
|
||||
}
|
||||
/**
|
||||
* boolean which indicates the changes in cache
|
||||
*/
|
||||
get cacheHasChanged() {
|
||||
return this.hasChanged;
|
||||
}
|
||||
/**
|
||||
* function to retrieve the token cache
|
||||
*/
|
||||
get tokenCache() {
|
||||
return this.cache;
|
||||
}
|
||||
}
|
||||
|
||||
export { TokenCacheContext };
|
||||
//# sourceMappingURL=TokenCacheContext.mjs.map
|
||||
1
backend/node_modules/@azure/msal-common/dist/cache/persistence/TokenCacheContext.mjs.map
generated
vendored
Normal file
1
backend/node_modules/@azure/msal-common/dist/cache/persistence/TokenCacheContext.mjs.map
generated
vendored
Normal file
@ -0,0 +1 @@
|
||||
{"version":3,"file":"TokenCacheContext.mjs","sources":["../../../src/cache/persistence/TokenCacheContext.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;;;AAGG;AAIH;;;UAGiB,iBAAiB,CAAA;IAU9B,WAAY,CAAA,UAAmC,EAAE,UAAmB,EAAA;AAChE,QAAA,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC;AACxB,QAAA,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;KAChC;AAED;;AAEG;AACH,IAAA,IAAI,eAAe,GAAA;QACf,OAAO,IAAI,CAAC,UAAU,CAAC;KAC1B;AAED;;AAEG;AACH,IAAA,IAAI,UAAU,GAAA;QACV,OAAO,IAAI,CAAC,KAAK,CAAC;KACrB;AACJ;;;;"}
|
||||
207
backend/node_modules/@azure/msal-common/dist/cache/utils/AccountEntityUtils.mjs
generated
vendored
Normal file
207
backend/node_modules/@azure/msal-common/dist/cache/utils/AccountEntityUtils.mjs
generated
vendored
Normal file
@ -0,0 +1,207 @@
|
||||
/*! @azure/msal-common v16.6.2 2026-05-19 */
|
||||
'use strict';
|
||||
import { CACHE_KEY_SEPARATOR, CACHE_ACCOUNT_TYPE_GENERIC, CACHE_ACCOUNT_TYPE_ADFS, CACHE_ACCOUNT_TYPE_MSSTS } from '../../utils/Constants.mjs';
|
||||
import { buildClientInfo } from '../../account/ClientInfo.mjs';
|
||||
import { buildTenantProfile } from '../../account/AccountInfo.mjs';
|
||||
import { createClientAuthError } from '../../error/ClientAuthError.mjs';
|
||||
import { AuthorityType } from '../../authority/AuthorityType.mjs';
|
||||
import { getTenantIdFromIdTokenClaims } from '../../account/TokenClaims.mjs';
|
||||
import { ProtocolMode } from '../../authority/ProtocolMode.mjs';
|
||||
import { invalidCacheEnvironment } from '../../error/ClientAuthErrorCodes.mjs';
|
||||
|
||||
/*
|
||||
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
* Licensed under the MIT License.
|
||||
*/
|
||||
/**
|
||||
* Generate Account Id key component as per the schema: <home_account_id>-<environment>
|
||||
*/
|
||||
function generateAccountId(accountEntity) {
|
||||
const accountId = [
|
||||
accountEntity.homeAccountId,
|
||||
accountEntity.environment,
|
||||
];
|
||||
return accountId.join(CACHE_KEY_SEPARATOR).toLowerCase();
|
||||
}
|
||||
/**
|
||||
* Returns the AccountInfo interface for this account.
|
||||
*/
|
||||
function getAccountInfo(accountEntity) {
|
||||
const tenantProfiles = accountEntity.tenantProfiles || [];
|
||||
// Ensure at least the home tenant profile exists
|
||||
if (tenantProfiles.length === 0 &&
|
||||
accountEntity.realm &&
|
||||
accountEntity.localAccountId) {
|
||||
tenantProfiles.push(buildTenantProfile(accountEntity.homeAccountId, accountEntity.localAccountId, accountEntity.realm));
|
||||
}
|
||||
return {
|
||||
homeAccountId: accountEntity.homeAccountId,
|
||||
environment: accountEntity.environment,
|
||||
tenantId: accountEntity.realm,
|
||||
username: accountEntity.username,
|
||||
localAccountId: accountEntity.localAccountId,
|
||||
loginHint: accountEntity.loginHint,
|
||||
name: accountEntity.name,
|
||||
nativeAccountId: accountEntity.nativeAccountId,
|
||||
authorityType: accountEntity.authorityType,
|
||||
// Deserialize tenant profiles array into a Map
|
||||
tenantProfiles: new Map(tenantProfiles.map((tenantProfile) => {
|
||||
return [tenantProfile.tenantId, tenantProfile];
|
||||
})),
|
||||
dataBoundary: accountEntity.dataBoundary,
|
||||
};
|
||||
}
|
||||
/**
|
||||
* Returns true if the account entity is in single tenant format (outdated), false otherwise
|
||||
*/
|
||||
function isSingleTenant(accountEntity) {
|
||||
return !accountEntity.tenantProfiles;
|
||||
}
|
||||
/**
|
||||
* Build Account cache from IdToken, clientInfo and authority/policy. Associated with AAD.
|
||||
* @param accountDetails
|
||||
*/
|
||||
function createAccountEntity(accountDetails, authority, base64Decode) {
|
||||
let authorityType;
|
||||
if (authority.authorityType === AuthorityType.Adfs) {
|
||||
authorityType = CACHE_ACCOUNT_TYPE_ADFS;
|
||||
}
|
||||
else if (authority.protocolMode === ProtocolMode.OIDC) {
|
||||
authorityType = CACHE_ACCOUNT_TYPE_GENERIC;
|
||||
}
|
||||
else {
|
||||
authorityType = CACHE_ACCOUNT_TYPE_MSSTS;
|
||||
}
|
||||
let clientInfo;
|
||||
let dataBoundary;
|
||||
if (accountDetails.clientInfo && base64Decode) {
|
||||
clientInfo = buildClientInfo(accountDetails.clientInfo, base64Decode);
|
||||
if (clientInfo.xms_tdbr) {
|
||||
dataBoundary = clientInfo.xms_tdbr === "EU" ? "EU" : "None";
|
||||
}
|
||||
}
|
||||
const env = accountDetails.environment ||
|
||||
(authority && authority.getPreferredCache());
|
||||
if (!env) {
|
||||
throw createClientAuthError(invalidCacheEnvironment);
|
||||
}
|
||||
/*
|
||||
* In B2C scenarios the emails claim is used instead of preferred_username and it is an array.
|
||||
* In most cases it will contain a single email. This field should not be relied upon if a custom
|
||||
* policy is configured to return more than 1 email.
|
||||
*/
|
||||
const preferredUsername = accountDetails.idTokenClaims?.preferred_username ||
|
||||
accountDetails.idTokenClaims?.upn;
|
||||
const email = accountDetails.idTokenClaims?.emails
|
||||
? accountDetails.idTokenClaims.emails[0]
|
||||
: null;
|
||||
const username = preferredUsername || email || "";
|
||||
const loginHint = accountDetails.idTokenClaims?.login_hint;
|
||||
const realm = clientInfo?.utid ||
|
||||
getTenantIdFromIdTokenClaims(accountDetails.idTokenClaims) ||
|
||||
""; // non-AAD scenarios can have empty realm
|
||||
// How do you account for MSA CID here?
|
||||
const localAccountId = clientInfo?.uid ||
|
||||
accountDetails.idTokenClaims?.oid ||
|
||||
accountDetails.idTokenClaims?.sub ||
|
||||
"";
|
||||
let tenantProfiles;
|
||||
if (accountDetails.tenantProfiles) {
|
||||
tenantProfiles = accountDetails.tenantProfiles;
|
||||
}
|
||||
else {
|
||||
const tenantProfile = buildTenantProfile(accountDetails.homeAccountId, localAccountId, realm, accountDetails.idTokenClaims);
|
||||
tenantProfiles = [tenantProfile];
|
||||
}
|
||||
return {
|
||||
homeAccountId: accountDetails.homeAccountId,
|
||||
environment: env,
|
||||
realm: realm,
|
||||
localAccountId: localAccountId,
|
||||
username: username,
|
||||
authorityType: authorityType,
|
||||
loginHint: loginHint,
|
||||
clientInfo: accountDetails.clientInfo,
|
||||
name: accountDetails.idTokenClaims?.name || "",
|
||||
lastModificationTime: undefined,
|
||||
lastModificationApp: undefined,
|
||||
cloudGraphHostName: accountDetails.cloudGraphHostName,
|
||||
msGraphHost: accountDetails.msGraphHost,
|
||||
nativeAccountId: accountDetails.nativeAccountId,
|
||||
tenantProfiles: tenantProfiles,
|
||||
dataBoundary,
|
||||
};
|
||||
}
|
||||
/**
|
||||
* Creates an AccountEntity object from AccountInfo
|
||||
* @param accountInfo
|
||||
* @param cloudGraphHostName
|
||||
* @param msGraphHost
|
||||
* @returns
|
||||
*/
|
||||
function createAccountEntityFromAccountInfo(accountInfo, cloudGraphHostName, msGraphHost) {
|
||||
// Serialize tenant profiles map into an array
|
||||
const tenantProfiles = Array.from(accountInfo.tenantProfiles?.values() || []);
|
||||
// Ensure at least the home tenant profile exists
|
||||
if (tenantProfiles.length === 0 &&
|
||||
accountInfo.tenantId &&
|
||||
accountInfo.localAccountId) {
|
||||
tenantProfiles.push(buildTenantProfile(accountInfo.homeAccountId, accountInfo.localAccountId, accountInfo.tenantId, accountInfo.idTokenClaims));
|
||||
}
|
||||
return {
|
||||
authorityType: accountInfo.authorityType || CACHE_ACCOUNT_TYPE_GENERIC,
|
||||
homeAccountId: accountInfo.homeAccountId,
|
||||
localAccountId: accountInfo.localAccountId,
|
||||
nativeAccountId: accountInfo.nativeAccountId,
|
||||
realm: accountInfo.tenantId,
|
||||
environment: accountInfo.environment,
|
||||
username: accountInfo.username,
|
||||
loginHint: accountInfo.loginHint,
|
||||
name: accountInfo.name,
|
||||
cloudGraphHostName: cloudGraphHostName,
|
||||
msGraphHost: msGraphHost,
|
||||
tenantProfiles: tenantProfiles,
|
||||
dataBoundary: accountInfo.dataBoundary,
|
||||
};
|
||||
}
|
||||
/**
|
||||
* Generate HomeAccountId from server response
|
||||
* @param serverClientInfo
|
||||
* @param authType
|
||||
*/
|
||||
function generateHomeAccountId(serverClientInfo, authType, logger, cryptoObj, correlationId, idTokenClaims) {
|
||||
// since ADFS/DSTS do not have tid and does not set client_info
|
||||
if (!(authType === AuthorityType.Adfs || authType === AuthorityType.Dsts)) {
|
||||
// for cases where there is clientInfo
|
||||
if (serverClientInfo) {
|
||||
try {
|
||||
const clientInfo = buildClientInfo(serverClientInfo, cryptoObj.base64Decode);
|
||||
if (clientInfo.uid && clientInfo.utid) {
|
||||
return `${clientInfo.uid}.${clientInfo.utid}`;
|
||||
}
|
||||
}
|
||||
catch (e) { }
|
||||
}
|
||||
logger.warning("No client info in response", correlationId);
|
||||
}
|
||||
// default to "sub" claim
|
||||
return idTokenClaims?.sub || "";
|
||||
}
|
||||
/**
|
||||
* Validates an entity: checks for all expected params
|
||||
* @param entity
|
||||
*/
|
||||
function isAccountEntity(entity) {
|
||||
if (!entity) {
|
||||
return false;
|
||||
}
|
||||
return (entity.hasOwnProperty("homeAccountId") &&
|
||||
entity.hasOwnProperty("environment") &&
|
||||
entity.hasOwnProperty("realm") &&
|
||||
entity.hasOwnProperty("localAccountId") &&
|
||||
entity.hasOwnProperty("username") &&
|
||||
entity.hasOwnProperty("authorityType"));
|
||||
}
|
||||
|
||||
export { createAccountEntity, createAccountEntityFromAccountInfo, generateAccountId, generateHomeAccountId, getAccountInfo, isAccountEntity, isSingleTenant };
|
||||
//# sourceMappingURL=AccountEntityUtils.mjs.map
|
||||
1
backend/node_modules/@azure/msal-common/dist/cache/utils/AccountEntityUtils.mjs.map
generated
vendored
Normal file
1
backend/node_modules/@azure/msal-common/dist/cache/utils/AccountEntityUtils.mjs.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
267
backend/node_modules/@azure/msal-common/dist/cache/utils/CacheHelpers.mjs
generated
vendored
Normal file
267
backend/node_modules/@azure/msal-common/dist/cache/utils/CacheHelpers.mjs
generated
vendored
Normal file
@ -0,0 +1,267 @@
|
||||
/*! @azure/msal-common v16.6.2 2026-05-19 */
|
||||
'use strict';
|
||||
import { extractTokenClaims } from '../../account/AuthToken.mjs';
|
||||
import { createClientAuthError } from '../../error/ClientAuthError.mjs';
|
||||
import { CredentialType, AuthenticationScheme, SERVER_TELEM_CACHE_KEY, THROTTLING_PREFIX, APP_METADATA, CACHE_KEY_SEPARATOR, AUTHORITY_METADATA_CACHE_KEY, AUTHORITY_METADATA_REFRESH_TIME_SECONDS } from '../../utils/Constants.mjs';
|
||||
import { nowSeconds } from '../../utils/TimeUtils.mjs';
|
||||
import { tokenClaimsCnfRequiredForSignedJwt } from '../../error/ClientAuthErrorCodes.mjs';
|
||||
|
||||
/*
|
||||
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
* Licensed under the MIT License.
|
||||
*/
|
||||
/**
|
||||
* Create IdTokenEntity
|
||||
* @param homeAccountId
|
||||
* @param authenticationResult
|
||||
* @param clientId
|
||||
* @param authority
|
||||
*/
|
||||
function createIdTokenEntity(homeAccountId, environment, idToken, clientId, tenantId) {
|
||||
const idTokenEntity = {
|
||||
credentialType: CredentialType.ID_TOKEN,
|
||||
homeAccountId: homeAccountId,
|
||||
environment: environment,
|
||||
clientId: clientId,
|
||||
secret: idToken,
|
||||
realm: tenantId,
|
||||
lastUpdatedAt: Date.now().toString(), // Set the last updated time to now
|
||||
};
|
||||
return idTokenEntity;
|
||||
}
|
||||
/**
|
||||
* Create AccessTokenEntity
|
||||
* @param homeAccountId
|
||||
* @param environment
|
||||
* @param accessToken
|
||||
* @param clientId
|
||||
* @param tenantId
|
||||
* @param scopes
|
||||
* @param expiresOn
|
||||
* @param extExpiresOn
|
||||
*/
|
||||
function createAccessTokenEntity(homeAccountId, environment, accessToken, clientId, tenantId, scopes, expiresOn, extExpiresOn, base64Decode, refreshOn, tokenType, userAssertionHash, keyId) {
|
||||
const atEntity = {
|
||||
homeAccountId: homeAccountId,
|
||||
credentialType: CredentialType.ACCESS_TOKEN,
|
||||
secret: accessToken,
|
||||
cachedAt: nowSeconds().toString(),
|
||||
expiresOn: expiresOn.toString(),
|
||||
extendedExpiresOn: extExpiresOn.toString(),
|
||||
environment: environment,
|
||||
clientId: clientId,
|
||||
realm: tenantId,
|
||||
target: scopes,
|
||||
tokenType: tokenType || AuthenticationScheme.BEARER,
|
||||
lastUpdatedAt: Date.now().toString(), // Set the last updated time to now
|
||||
};
|
||||
if (userAssertionHash) {
|
||||
atEntity.userAssertionHash = userAssertionHash;
|
||||
}
|
||||
if (refreshOn) {
|
||||
atEntity.refreshOn = refreshOn.toString();
|
||||
}
|
||||
/*
|
||||
* Create Access Token With Auth Scheme instead of regular access token
|
||||
* Cast to lower to handle "bearer" from ADFS
|
||||
*/
|
||||
if (atEntity.tokenType?.toLowerCase() !==
|
||||
AuthenticationScheme.BEARER.toLowerCase()) {
|
||||
atEntity.credentialType =
|
||||
CredentialType.ACCESS_TOKEN_WITH_AUTH_SCHEME;
|
||||
switch (atEntity.tokenType) {
|
||||
case AuthenticationScheme.POP:
|
||||
// Make sure keyId is present and add it to credential
|
||||
const tokenClaims = extractTokenClaims(accessToken, base64Decode);
|
||||
if (!tokenClaims?.cnf?.kid) {
|
||||
throw createClientAuthError(tokenClaimsCnfRequiredForSignedJwt);
|
||||
}
|
||||
atEntity.keyId = tokenClaims.cnf.kid;
|
||||
break;
|
||||
case AuthenticationScheme.SSH:
|
||||
atEntity.keyId = keyId;
|
||||
}
|
||||
}
|
||||
return atEntity;
|
||||
}
|
||||
/**
|
||||
* Create RefreshTokenEntity
|
||||
* @param homeAccountId
|
||||
* @param authenticationResult
|
||||
* @param clientId
|
||||
* @param authority
|
||||
*/
|
||||
function createRefreshTokenEntity(homeAccountId, environment, refreshToken, clientId, familyId, userAssertionHash, expiresOn) {
|
||||
const rtEntity = {
|
||||
credentialType: CredentialType.REFRESH_TOKEN,
|
||||
homeAccountId: homeAccountId,
|
||||
environment: environment,
|
||||
clientId: clientId,
|
||||
secret: refreshToken,
|
||||
lastUpdatedAt: Date.now().toString(),
|
||||
};
|
||||
if (userAssertionHash) {
|
||||
rtEntity.userAssertionHash = userAssertionHash;
|
||||
}
|
||||
if (familyId) {
|
||||
rtEntity.familyId = familyId;
|
||||
}
|
||||
if (expiresOn) {
|
||||
rtEntity.expiresOn = expiresOn.toString();
|
||||
}
|
||||
return rtEntity;
|
||||
}
|
||||
function isCredentialEntity(entity) {
|
||||
return (entity.hasOwnProperty("homeAccountId") &&
|
||||
entity.hasOwnProperty("environment") &&
|
||||
entity.hasOwnProperty("credentialType") &&
|
||||
entity.hasOwnProperty("clientId") &&
|
||||
entity.hasOwnProperty("secret"));
|
||||
}
|
||||
/**
|
||||
* Validates an entity: checks for all expected params
|
||||
* @param entity
|
||||
*/
|
||||
function isAccessTokenEntity(entity) {
|
||||
if (!entity) {
|
||||
return false;
|
||||
}
|
||||
return (isCredentialEntity(entity) &&
|
||||
entity.hasOwnProperty("realm") &&
|
||||
entity.hasOwnProperty("target") &&
|
||||
(entity["credentialType"] === CredentialType.ACCESS_TOKEN ||
|
||||
entity["credentialType"] ===
|
||||
CredentialType.ACCESS_TOKEN_WITH_AUTH_SCHEME));
|
||||
}
|
||||
/**
|
||||
* Validates an entity: checks for all expected params
|
||||
* @param entity
|
||||
*/
|
||||
function isIdTokenEntity(entity) {
|
||||
if (!entity) {
|
||||
return false;
|
||||
}
|
||||
return (isCredentialEntity(entity) &&
|
||||
entity.hasOwnProperty("realm") &&
|
||||
entity["credentialType"] === CredentialType.ID_TOKEN);
|
||||
}
|
||||
/**
|
||||
* Validates an entity: checks for all expected params
|
||||
* @param entity
|
||||
*/
|
||||
function isRefreshTokenEntity(entity) {
|
||||
if (!entity) {
|
||||
return false;
|
||||
}
|
||||
return (isCredentialEntity(entity) &&
|
||||
entity["credentialType"] === CredentialType.REFRESH_TOKEN);
|
||||
}
|
||||
/**
|
||||
* validates if a given cache entry is "Telemetry", parses <key,value>
|
||||
* @param key
|
||||
* @param entity
|
||||
*/
|
||||
function isServerTelemetryEntity(key, entity) {
|
||||
const validateKey = key.indexOf(SERVER_TELEM_CACHE_KEY) === 0;
|
||||
let validateEntity = true;
|
||||
if (entity) {
|
||||
validateEntity =
|
||||
entity.hasOwnProperty("failedRequests") &&
|
||||
entity.hasOwnProperty("errors") &&
|
||||
entity.hasOwnProperty("cacheHits");
|
||||
}
|
||||
return validateKey && validateEntity;
|
||||
}
|
||||
/**
|
||||
* validates if a given cache entry is "Throttling", parses <key,value>
|
||||
* @param key
|
||||
* @param entity
|
||||
*/
|
||||
function isThrottlingEntity(key, entity) {
|
||||
let validateKey = false;
|
||||
if (key) {
|
||||
validateKey = key.indexOf(THROTTLING_PREFIX) === 0;
|
||||
}
|
||||
let validateEntity = true;
|
||||
if (entity) {
|
||||
validateEntity = entity.hasOwnProperty("throttleTime");
|
||||
}
|
||||
return validateKey && validateEntity;
|
||||
}
|
||||
/**
|
||||
* Generate AppMetadata Cache Key as per the schema: appmetadata-<environment>-<client_id>
|
||||
*/
|
||||
function generateAppMetadataKey({ environment, clientId, }) {
|
||||
const appMetaDataKeyArray = [
|
||||
APP_METADATA,
|
||||
environment,
|
||||
clientId,
|
||||
];
|
||||
return appMetaDataKeyArray
|
||||
.join(CACHE_KEY_SEPARATOR)
|
||||
.toLowerCase();
|
||||
}
|
||||
/*
|
||||
* Validates an entity: checks for all expected params
|
||||
* @param entity
|
||||
*/
|
||||
function isAppMetadataEntity(key, entity) {
|
||||
if (!entity) {
|
||||
return false;
|
||||
}
|
||||
return (key.indexOf(APP_METADATA) === 0 &&
|
||||
entity.hasOwnProperty("clientId") &&
|
||||
entity.hasOwnProperty("environment"));
|
||||
}
|
||||
/**
|
||||
* Validates an entity: checks for all expected params
|
||||
* @param entity
|
||||
*/
|
||||
function isAuthorityMetadataEntity(key, entity) {
|
||||
if (!entity) {
|
||||
return false;
|
||||
}
|
||||
return (key.indexOf(AUTHORITY_METADATA_CACHE_KEY) === 0 &&
|
||||
entity.hasOwnProperty("aliases") &&
|
||||
entity.hasOwnProperty("preferred_cache") &&
|
||||
entity.hasOwnProperty("preferred_network") &&
|
||||
entity.hasOwnProperty("canonical_authority") &&
|
||||
entity.hasOwnProperty("authorization_endpoint") &&
|
||||
entity.hasOwnProperty("token_endpoint") &&
|
||||
entity.hasOwnProperty("issuer") &&
|
||||
entity.hasOwnProperty("aliasesFromNetwork") &&
|
||||
entity.hasOwnProperty("endpointsFromNetwork") &&
|
||||
entity.hasOwnProperty("expiresAt") &&
|
||||
entity.hasOwnProperty("jwks_uri"));
|
||||
}
|
||||
/**
|
||||
* Reset the exiresAt value
|
||||
*/
|
||||
function generateAuthorityMetadataExpiresAt() {
|
||||
return (nowSeconds() +
|
||||
AUTHORITY_METADATA_REFRESH_TIME_SECONDS);
|
||||
}
|
||||
function updateAuthorityEndpointMetadata(authorityMetadata, updatedValues, fromNetwork) {
|
||||
authorityMetadata.authorization_endpoint =
|
||||
updatedValues.authorization_endpoint;
|
||||
authorityMetadata.token_endpoint = updatedValues.token_endpoint;
|
||||
authorityMetadata.end_session_endpoint = updatedValues.end_session_endpoint;
|
||||
authorityMetadata.issuer = updatedValues.issuer;
|
||||
authorityMetadata.endpointsFromNetwork = fromNetwork;
|
||||
authorityMetadata.jwks_uri = updatedValues.jwks_uri;
|
||||
}
|
||||
function updateCloudDiscoveryMetadata(authorityMetadata, updatedValues, fromNetwork) {
|
||||
authorityMetadata.aliases = updatedValues.aliases;
|
||||
authorityMetadata.preferred_cache = updatedValues.preferred_cache;
|
||||
authorityMetadata.preferred_network = updatedValues.preferred_network;
|
||||
authorityMetadata.aliasesFromNetwork = fromNetwork;
|
||||
}
|
||||
/**
|
||||
* Returns whether or not the data needs to be refreshed
|
||||
*/
|
||||
function isAuthorityMetadataExpired(metadata) {
|
||||
return metadata.expiresAt <= nowSeconds();
|
||||
}
|
||||
|
||||
export { createAccessTokenEntity, createIdTokenEntity, createRefreshTokenEntity, generateAppMetadataKey, generateAuthorityMetadataExpiresAt, isAccessTokenEntity, isAppMetadataEntity, isAuthorityMetadataEntity, isAuthorityMetadataExpired, isCredentialEntity, isIdTokenEntity, isRefreshTokenEntity, isServerTelemetryEntity, isThrottlingEntity, updateAuthorityEndpointMetadata, updateCloudDiscoveryMetadata };
|
||||
//# sourceMappingURL=CacheHelpers.mjs.map
|
||||
1
backend/node_modules/@azure/msal-common/dist/cache/utils/CacheHelpers.mjs.map
generated
vendored
Normal file
1
backend/node_modules/@azure/msal-common/dist/cache/utils/CacheHelpers.mjs.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user