@negreanucalin8x8/n8n-nodes-8x8
Version:
This is a Work in progress
64 lines • 2.26 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ApiDefHelper = void 0;
const apiDefinition_1 = require("../apiDefinition");
class ApiDefHelper {
static getParameters() {
let parameterList = [];
for (const def of apiDefinition_1.apiDefinition) {
parameterList = parameterList.concat(...def.parameters);
}
return parameterList;
}
static getResource(resource) {
const baseOperationConfig = apiDefinition_1.apiDefinition.find(conf => conf.resource.value === resource);
if (!baseOperationConfig) {
throw new Error(`Could not find resource by name: ${resource}`);
}
return baseOperationConfig;
}
static getOperation(resource, operationName) {
const baseOperationConfig = ApiDefHelper.getResource(resource);
const operationConfig = baseOperationConfig.operations.find(operation => operation.operation === operationName);
if (!operationConfig) {
throw new Error(`Could not find operation by name: ${operationName}`);
}
return operationConfig;
}
static getResources() {
const defList = [];
for (const def of apiDefinition_1.apiDefinition) {
defList.push(def.resource);
}
return defList;
}
static generateApiFromOperation(resource) {
const result = {
displayName: "Operation",
name: "operation",
type: "options",
noDataExpression: true,
displayOptions: {
show: {
resource: [resource],
},
},
default: ''
};
result.options = [];
const config = ApiDefHelper.getResource(resource);
for (const operation of config.operations) {
result.options.push({
name: operation.displayName,
value: operation.operation,
description: operation.description,
});
if (operation.default) {
result.default = operation.displayName;
}
}
return result;
}
}
exports.ApiDefHelper = ApiDefHelper;
//# sourceMappingURL=apiDef.helper.js.map