From ad6155068e7072c35aee85b6824858e456fb771d Mon Sep 17 00:00:00 2001 From: Ricardo Espinoza Date: Tue, 10 Nov 2020 01:43:39 -0500 Subject: [PATCH] :zap: Jira retrieve all projects (#1140) Fixes #1138 --- packages/nodes-base/nodes/Jira/GenericFunctions.ts | 2 +- packages/nodes-base/nodes/Jira/Jira.node.ts | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/nodes-base/nodes/Jira/GenericFunctions.ts b/packages/nodes-base/nodes/Jira/GenericFunctions.ts index 93cbdd5cc1..3d2198d34f 100644 --- a/packages/nodes-base/nodes/Jira/GenericFunctions.ts +++ b/packages/nodes-base/nodes/Jira/GenericFunctions.ts @@ -73,7 +73,7 @@ export async function jiraSoftwareCloudApiRequest(this: IHookFunctions | IExecut } } -export async function jiraSoftwareCloudApiRequestAllItems(this: IHookFunctions | IExecuteFunctions, propertyName: string, endpoint: string, method: string, body: any = {}, query: IDataObject = {}): Promise { // tslint:disable-line:no-any +export async function jiraSoftwareCloudApiRequestAllItems(this: IHookFunctions | IExecuteFunctions | ILoadOptionsFunctions, propertyName: string, endpoint: string, method: string, body: any = {}, query: IDataObject = {}): Promise { // tslint:disable-line:no-any const returnData: IDataObject[] = []; diff --git a/packages/nodes-base/nodes/Jira/Jira.node.ts b/packages/nodes-base/nodes/Jira/Jira.node.ts index 0418f0b42c..0a455fd405 100644 --- a/packages/nodes-base/nodes/Jira/Jira.node.ts +++ b/packages/nodes-base/nodes/Jira/Jira.node.ts @@ -112,12 +112,16 @@ export class Jira implements INodeType { async getProjects(this: ILoadOptionsFunctions): Promise { const returnData: INodePropertyOptions[] = []; const jiraVersion = this.getCurrentNodeParameter('jiraVersion') as string; + let endpoint = ''; + let projects; - let endpoint = '/api/2/project/search'; if (jiraVersion === 'server') { endpoint = '/api/2/project'; + projects = await jiraSoftwareCloudApiRequest.call(this, endpoint, 'GET'); + } else { + endpoint = '/api/2/project/search'; + projects = await jiraSoftwareCloudApiRequestAllItems.call(this, 'values', endpoint, 'GET'); } - let projects = await jiraSoftwareCloudApiRequest.call(this, endpoint, 'GET'); if (projects.values && Array.isArray(projects.values)) { projects = projects.values;