n8n
Version:
n8n Workflow Automation Tool
25 lines • 1.35 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.resolveCredentialAwareModelConfig = resolveCredentialAwareModelConfig;
const agent_config_1 = require("@n8n/ai-utilities/agent-config");
const api_types_1 = require("@n8n/api-types");
const n8n_workflow_1 = require("n8n-workflow");
const credential_field_mapping_1 = require("./credential-field-mapping");
async function resolveCredentialAwareModelConfig(model, credential, credentialProvider) {
const provider = (0, agent_config_1.getProviderPrefix)(model);
if (credential === api_types_1.AI_GATEWAY_MANAGED_TAG) {
if (!credentialProvider.resolveAiGatewayModelCredential) {
throw new n8n_workflow_1.UserError('This credential provider cannot resolve n8n credits model credentials.');
}
const raw = await credentialProvider.resolveAiGatewayModelCredential(provider);
return {
id: model,
...(0, credential_field_mapping_1.mapCredentialForProvider)(provider, raw),
...(provider === 'openai' ? { apiStyle: 'responses' } : {}),
};
}
const raw = await credentialProvider.resolve(credential);
const mapped = (0, credential_field_mapping_1.mapCredentialForProvider)(provider, raw);
return { id: model, ...mapped };
}
//# sourceMappingURL=model-config.js.map