@auth0/auth0-mcp-server
Version:
Auth0 Model Context Protocol (MCP) Server (Beta) — A secure and extendable implementation of an MCP server that provides AI assistants with controlled access to the Auth0 Management API through natural language. This project is in beta and not intended fo
48 lines • 1.84 kB
JavaScript
import { hasNonVerifiableCallbacks } from './onboarding.js';
export function calculateUrlUpdates(resolvedUrls, currentApp) {
const fieldMapping = [
{ resolvedKey: 'callback_urls', appKey: 'callbacks', payloadKey: 'callbacks' },
{
resolvedKey: 'logout_urls',
appKey: 'allowed_logout_urls',
payloadKey: 'allowed_logout_urls',
},
{ resolvedKey: 'web_origins', appKey: 'web_origins', payloadKey: 'web_origins' },
];
const updatePayload = {};
const finalUrls = {
callbacks: [],
allowed_logout_urls: [],
};
let hasUpdates = false;
for (const { resolvedKey, appKey, payloadKey } of fieldMapping) {
const resolved = resolvedUrls[resolvedKey];
if (!resolved)
continue;
const existing = currentApp[appKey] || [];
const missing = resolved.filter((url) => !existing.includes(url));
const merged = missing.length > 0 ? [...existing, ...missing] : existing;
if (payloadKey === 'callbacks') {
finalUrls.callbacks = merged;
}
else if (payloadKey === 'allowed_logout_urls') {
finalUrls.allowed_logout_urls = merged;
}
else if (payloadKey === 'web_origins') {
finalUrls.web_origins = merged;
}
if (missing.length > 0) {
hasUpdates = true;
updatePayload[payloadKey] = merged;
}
}
if (hasUpdates && hasNonVerifiableCallbacks(finalUrls.callbacks)) {
updatePayload.skip_non_verifiable_callback_uri_confirmation_prompt = true;
finalUrls.skip_non_verifiable_callback_uri_confirmation_prompt = true;
}
return {
updatePayload: hasUpdates ? updatePayload : null,
finalUrls,
};
}
//# sourceMappingURL=quickstart-guide.js.map