💄 create lead UI done

This commit is contained in:
Ricardo Espinoza
2019-11-16 17:16:11 -05:00
parent 8d886e3766
commit 7a19837833
3 changed files with 252 additions and 0 deletions

View File

@@ -9,6 +9,13 @@ import {
ILoadOptionsFunctions,
INodePropertyOptions,
} from 'n8n-workflow';
import {
leadOpeations,
leadFields,
} from './LeadDescription';
import {
intercomApiRequest,
} from './GenericFunctions';
export class Intercom implements INodeType {
@@ -47,9 +54,37 @@ export class Intercom implements INodeType {
default: '',
description: 'Resource to consume.',
},
...leadOpeations,
...leadFields,
],
};
methods = {
loadOptions: {
// Get all the available companies to display them to user so that he can
// select them easily
async getCompanies(this: ILoadOptionsFunctions): Promise<INodePropertyOptions[]> {
const returnData: INodePropertyOptions[] = [];
let companies, response;
try {
response = await intercomApiRequest.call(this, '/companies', 'GET');
} catch (err) {
throw new Error(`Intercom Error: ${err}`);
}
companies = response.companies;
for (const company of companies) {
const companyName = company.name;
const companyId = company.id;
returnData.push({
name: companyName,
value: companyId,
});
}
return returnData;
}
},
};
async executeSingle(this: IExecuteSingleFunctions): Promise<INodeExecutionData> {
return {