UNPKG

n8n-nodes-fatture-in-cloud

Version:

n8n community node for Fatture in Cloud integration using the official TypeScript SDK

49 lines 2.11 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.CompaniesModule = void 0; const fattureincloud_ts_sdk_1 = require("@fattureincloud/fattureincloud-ts-sdk"); const CompaniesResource_1 = require("../resources/CompaniesResource"); class CompaniesModule { constructor() { this.resource = CompaniesResource_1.CompaniesResource; } async execute(context, operation, itemIndex) { var _a; const credentials = await context.getCredentials('fattureInCloudOAuth2Api'); let accessToken; if ((_a = credentials.oauthTokenData) === null || _a === void 0 ? void 0 : _a.access_token) { accessToken = credentials.oauthTokenData.access_token; } else if (credentials.access_token) { accessToken = credentials.access_token; } else if (credentials.accessToken) { accessToken = credentials.accessToken; } else { throw new Error('Access token not found in credentials. Please re-authenticate your Fatture in Cloud connection.'); } const config = new fattureincloud_ts_sdk_1.Configuration({ accessToken, }); const companiesApi = new fattureincloud_ts_sdk_1.CompaniesApi(config); const companyId = context.getNodeParameter('companyId', itemIndex); let responseData; switch (operation) { case 'getInfo': const infoResponse = await companiesApi.getCompanyInfo(companyId); responseData = infoResponse.data; break; case 'getPlanUsage': const category = context.getNodeParameter('category', itemIndex); const usageResponse = await companiesApi.getCompanyPlanUsage(companyId, category); responseData = usageResponse.data; break; default: throw new Error(`Unknown operation: ${operation}`); } return responseData; } } exports.CompaniesModule = CompaniesModule; //# sourceMappingURL=CompaniesModule.js.map