UNPKG

@poli-digital/n8n-nodes-poli

Version:
99 lines 3.79 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.GetUser = exports.executeGetUser = exports.getUserFields = void 0; const n8n_workflow_1 = require("n8n-workflow"); const transport_1 = require("./transport"); const parameterUtils_1 = require("./utils/parameterUtils"); const responseFilter_1 = require("./utils/responseFilter"); exports.getUserFields = [ { displayName: 'User UUID', name: 'userUuid', type: 'string', required: true, default: '', description: 'UUID do usuário para obter informações', }, { displayName: 'Options', name: 'options', type: 'collection', placeholder: 'Add Option', default: {}, options: [ { displayName: 'Include', name: 'include', type: 'multiOptions', options: [ { name: 'Status', value: 'status' }, { name: 'Status of Service', value: 'status_of_service' }, { name: 'Email', value: 'email' }, { name: 'Attributes', value: 'attributes' }, { name: 'Roles', value: 'roles' }, { name: 'Permissions', value: 'permissions' }, { name: 'Active Account', value: 'active_account' }, { name: 'Account Channels', value: 'account_channels' }, { name: 'Accounts', value: 'accounts' }, { name: 'Teams', value: 'teams' }, { name: 'Addresses', value: 'addresses' }, { name: 'Metadata', value: 'metadata' }, ], default: [], description: 'Dados adicionais para incluir na resposta', }, ], }, ]; async function executeGetUser() { var _a; const items = this.getInputData(); const returnData = []; for (let i = 0; i < items.length; i++) { try { const userUuid = (0, parameterUtils_1.getParameterSafe)(this, 'userUuid', i, ''); const options = (0, parameterUtils_1.getParameterSafe)(this, 'options', i, {}); if (!userUuid) { throw new n8n_workflow_1.NodeApiError(this.getNode(), { message: 'User UUID é obrigatório', }); } const params = new URLSearchParams(); if ((_a = options.include) === null || _a === void 0 ? void 0 : _a.length) { params.append('include', options.include.join(',')); } const queryString = params.toString(); const endpoint = `/users/${userUuid}${queryString ? `?${queryString}` : ''}`; const responseData = await transport_1.apiRequest.call(this, 'GET', endpoint); const filteredData = (0, responseFilter_1.processApiResponseForN8n)(responseData, true); returnData.push({ json: filteredData }); } catch (error) { throw new n8n_workflow_1.NodeApiError(this.getNode(), error); } } return [returnData]; } exports.executeGetUser = executeGetUser; class GetUser { constructor() { this.description = { displayName: 'Get User', name: 'getUser', group: ['output'], version: 1, description: 'Get specific user information from Poli API', defaults: { name: 'Get User', }, inputs: ['main'], outputs: ['main'], properties: exports.getUserFields, }; } async execute() { return executeGetUser.call(this); } } exports.GetUser = GetUser; //# sourceMappingURL=GetUser.operation.js.map