n8n-nodes-fatture-in-cloud
Version:
n8n community node for Fatture in Cloud integration using the official TypeScript SDK
47 lines • 1.87 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.UserModule = void 0;
const fattureincloud_ts_sdk_1 = require("@fattureincloud/fattureincloud-ts-sdk");
const UserResource_1 = require("../resources/UserResource");
class UserModule {
constructor() {
this.resource = UserResource_1.UserResource;
}
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 userApi = new fattureincloud_ts_sdk_1.UserApi(config);
let responseData;
switch (operation) {
case 'getInfo':
const userInfoResponse = await userApi.getUserInfo();
responseData = userInfoResponse.data;
break;
case 'listCompanies':
const companiesResponse = await userApi.listUserCompanies();
responseData = companiesResponse.data;
break;
default:
throw new Error(`Unknown operation: ${operation}`);
}
return responseData;
}
}
exports.UserModule = UserModule;
//# sourceMappingURL=UserModule.js.map