UNPKG

n8n-nodes-base

Version:

Base nodes of n8n

44 lines 1.6 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.circleciApiRequest = circleciApiRequest; exports.circleciApiRequestAllItems = circleciApiRequestAllItems; const n8n_workflow_1 = require("n8n-workflow"); async function circleciApiRequest(method, resource, body = {}, qs = {}, uri, option = {}) { const credentials = await this.getCredentials('circleCiApi'); let options = { headers: { 'Circle-Token': credentials.apiKey, Accept: 'application/json', }, method, qs, body, uri: uri || `https://circleci.com/api/v2${resource}`, json: true, }; options = Object.assign({}, options, option); if (Object.keys(options.body).length === 0) { delete options.body; } try { return await this.helpers.request(options); } catch (error) { throw new n8n_workflow_1.NodeApiError(this.getNode(), error); } } /** * Make an API request to paginated CircleCI endpoint * and return all results */ async function circleciApiRequestAllItems(propertyName, method, resource, body = {}, query = {}) { const returnData = []; let responseData; do { responseData = await circleciApiRequest.call(this, method, resource, body, query); returnData.push.apply(returnData, responseData[propertyName]); query['page-token'] = responseData.next_page_token; } while (responseData.next_page_token !== undefined && responseData.next_page_token !== null); return returnData; } //# sourceMappingURL=GenericFunctions.js.map