@izzai/n8n-nodes-izzone
Version:
n8n custom node for izz.ONE
71 lines (70 loc) • 2.33 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getLlms = getLlms;
exports.getAgents = getAgents;
exports.getDatasources = getDatasources;
const constants_1 = require("../constants");
const generic_1 = require("./generic");
async function getLlms() {
const credentials = await this.getCredentials('IzzOneApi');
const path = '/v1/model/available-models';
const url = new URL(path, (credentials.baseUrl || constants_1.BASE_URL));
url.searchParams.append('limit', Number.MAX_SAFE_INTEGER.toString());
const response = await this.helpers.httpRequest({
method: 'GET',
url: url.toString(),
headers: (0, generic_1.getHeaders)(credentials),
json: true,
});
const data = response.map((data) => ({
name: data.label + ` (${data.provider})`,
value: data.model,
}));
data.unshift({
name: 'Automatic',
value: '',
});
return data;
}
async function getAgents() {
const credentials = await this.getCredentials('IzzOneApi');
const path = '/v1/agent';
const url = new URL(path, (credentials.baseUrl || constants_1.BASE_URL));
url.searchParams.append('limit', Number.MAX_SAFE_INTEGER.toString());
const response = await this.helpers.httpRequest({
method: 'GET',
url: url.toString(),
headers: (0, generic_1.getHeaders)(credentials),
json: true,
});
const data = response.data.map((data) => ({
name: data.name,
value: data._id,
}));
data.unshift({
name: 'No Agent',
value: '',
});
return data;
}
async function getDatasources() {
const credentials = await this.getCredentials('IzzOneApi');
const path = '/v1/datasource';
const url = new URL(path, (credentials.baseUrl || constants_1.BASE_URL));
url.searchParams.append('limit', Number.MAX_SAFE_INTEGER.toString());
const response = await this.helpers.httpRequest({
method: 'GET',
url: url.toString(),
headers: (0, generic_1.getHeaders)(credentials),
json: true,
});
const data = response.data.map((data) => ({
name: data.displayName + ` (${data.type})`,
value: data._id,
}));
data.unshift({
name: 'Automatic',
value: 'auto',
});
return data;
}