n8n-nodes-quepasa
Version:
This is an n8n community node. It lets you use Quepasa in your n8n workflows. (use with Quepasa >= v4)
50 lines • 2.19 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.resourceControl = void 0;
const GenericFunctions_1 = require("../GenericFunctions");
async function resourceControl(operation, items, i) {
const paramChatId = this.getNodeParameter('chatid', i);
let fullResponse;
if (operation === 'picture') {
const paramBinary = this.getNodeParameter('binary', i, false);
const paramPictureId = this.getNodeParameter('pictureId', i, '');
const endpoint = paramBinary ? '/picdata' : '/picinfo';
const reqQuery = {};
reqQuery['chatid'] = paramChatId;
if (paramPictureId) {
reqQuery['pictureid'] = paramPictureId;
}
if (paramBinary) {
const itemsData = {};
if (items[i].binary !== undefined) {
Object.assign(itemsData, items[i].binary);
}
fullResponse = await GenericFunctions_1.apiRequest.call(this, 'GET', endpoint, {}, reqQuery);
let fileName = this.getNodeParameter('fileName', i);
if (!fileName) {
fileName = (0, GenericFunctions_1.getFileNameFromHeaderContent)(fullResponse.headers);
}
const buffer = fullResponse.body;
const binaryData = await this.helpers.prepareBinaryData(buffer, fileName || "unknownFileName");
const binaryPropertyName = this.getNodeParameter('binaryPropertyName', i);
const responseItem = {
json: items[i].json,
binary: itemsData,
};
responseItem.binary[binaryPropertyName] = binaryData;
items[i] = responseItem;
return;
}
}
else if (operation === 'invite') {
const reqQuery = {};
reqQuery['chatid'] = paramChatId;
fullResponse = await GenericFunctions_1.apiRequest.call(this, 'GET', '/invite', {}, reqQuery);
return fullResponse.body;
}
else {
throw new Error('Operation not implemented: ' + operation);
}
}
exports.resourceControl = resourceControl;
//# sourceMappingURL=ControlMethods.js.map