UNPKG

@buildable/connections

Version:

Buildable is a fully managed event bus lets you send and receive data across mission-critical cloud apps, databases and warehouses.

76 lines 2.58 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.listSourcesApi = exports.subscribeEventsApi = exports.deleteSourceConnectionApi = exports.createSourceConnectionApi = void 0; const tslib_1 = require("tslib"); const utils_1 = require("@buildable/utils"); const createSourceConnectionApi = (headers, url, payload) => { const authFormData = payload.type === 'webhook' || payload.type === 'nodejs' ? { name: payload.label, } : Object.assign(Object.assign({}, payload.config), { name: payload.label }); const integrationDefinitionId = (0, utils_1.getIntegrationDefinitionId)(payload.type, 'source'); const finalPayload = { integrationDefinitionId, authFormData, type: payload.type, group: payload.group, name: payload.label, key: payload.key, }; return (0, utils_1.makeHttpNetworkCall)({ method: 'POST', url, data: finalPayload, headers, }); }; exports.createSourceConnectionApi = createSourceConnectionApi; const deleteSourceConnectionApi = (headers, url, payload) => { return (0, utils_1.makeHttpNetworkCall)({ method: 'POST', url, data: payload, headers, }); }; exports.deleteSourceConnectionApi = deleteSourceConnectionApi; const subscribeEventsApi = (headers, url, payload) => tslib_1.__awaiter(void 0, void 0, void 0, function* () { const { events, type, key } = payload; if (type === 'nodejs') { const eventList = events.join(','); return (0, utils_1.makeHttpNetworkCall)({ method: 'POST', url, data: { key, events: eventList, }, headers, }); } const result = (0, utils_1.makeHttpNetworkCall)({ method: 'POST', url, data: { events, key, }, headers, }); yield new Promise((resolve) => setTimeout(resolve, 5000)); return result; }); exports.subscribeEventsApi = subscribeEventsApi; const listSourcesApi = (headers, url, payload) => { return (0, utils_1.makeHttpNetworkCall)({ method: 'POST', url, data: Object.assign(Object.assign({}, payload), { query: Object.assign(Object.assign({}, payload === null || payload === void 0 ? void 0 : payload.query), { _id: { $regex: 'conn_src', } }) }), headers, }); }; exports.listSourcesApi = listSourcesApi; //# sourceMappingURL=source.api.js.map