Commit iniziale
This commit is contained in:
52
node_modules/@azure/msal-common/dist/utils/UrlUtils.mjs
generated
vendored
Normal file
52
node_modules/@azure/msal-common/dist/utils/UrlUtils.mjs
generated
vendored
Normal file
@@ -0,0 +1,52 @@
|
||||
/*! @azure/msal-common v15.1.1 2025-02-05 */
|
||||
'use strict';
|
||||
import { createClientAuthError } from '../error/ClientAuthError.mjs';
|
||||
import { hashNotDeserialized } from '../error/ClientAuthErrorCodes.mjs';
|
||||
|
||||
/*
|
||||
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
* Licensed under the MIT License.
|
||||
*/
|
||||
/**
|
||||
* Parses hash string from given string. Returns empty string if no hash symbol is found.
|
||||
* @param hashString
|
||||
*/
|
||||
function stripLeadingHashOrQuery(responseString) {
|
||||
if (responseString.startsWith("#/")) {
|
||||
return responseString.substring(2);
|
||||
}
|
||||
else if (responseString.startsWith("#") ||
|
||||
responseString.startsWith("?")) {
|
||||
return responseString.substring(1);
|
||||
}
|
||||
return responseString;
|
||||
}
|
||||
/**
|
||||
* Returns URL hash as server auth code response object.
|
||||
*/
|
||||
function getDeserializedResponse(responseString) {
|
||||
// Check if given hash is empty
|
||||
if (!responseString || responseString.indexOf("=") < 0) {
|
||||
return null;
|
||||
}
|
||||
try {
|
||||
// Strip the # or ? symbol if present
|
||||
const normalizedResponse = stripLeadingHashOrQuery(responseString);
|
||||
// If # symbol was not present, above will return empty string, so give original hash value
|
||||
const deserializedHash = Object.fromEntries(new URLSearchParams(normalizedResponse));
|
||||
// Check for known response properties
|
||||
if (deserializedHash.code ||
|
||||
deserializedHash.error ||
|
||||
deserializedHash.error_description ||
|
||||
deserializedHash.state) {
|
||||
return deserializedHash;
|
||||
}
|
||||
}
|
||||
catch (e) {
|
||||
throw createClientAuthError(hashNotDeserialized);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
export { getDeserializedResponse, stripLeadingHashOrQuery };
|
||||
//# sourceMappingURL=UrlUtils.mjs.map
|
||||
Reference in New Issue
Block a user