🔀 Merge branch 'l4u-kitemaker-add-spaceid-to-create-workitem'

This commit is contained in:
Jan Oberhauser 2021-12-23 13:49:30 +01:00
commit 15aa0b79bd
3 changed files with 30 additions and 1 deletions

View file

@ -118,10 +118,16 @@ export class Kitemaker implements INodeType {
},
async getStatuses(this: ILoadOptionsFunctions) {
const spaceId = this.getNodeParameter('spaceId', 0) as string;
if (!spaceId.length) {
throw new Error('Please choose a space to set for the work item to create.');
}
const responseData = await kitemakerRequest.call(this, { query: getStatuses });
const { data: { organization: { spaces } } } = responseData;
const space = spaces.find((e: { [x: string]: string; }) => e.id === spaceId);
return createLoadOptions(spaces[0].statuses);
return createLoadOptions(space.statuses);
},
async getUsers(this: ILoadOptionsFunctions) {

View file

@ -59,11 +59,33 @@ export const workItemFields: INodeProperties[] = [
},
},
},
{
displayName: 'Space ID',
name: 'spaceId',
type: 'options',
typeOptions: {
loadOptionsMethod: 'getSpaces',
},
default: [],
required: true,
description: 'ID of the space to retrieve the work items from.',
displayOptions: {
show: {
resource: [
'workItem',
],
operation: [
'create',
],
},
},
},
{
displayName: 'Status ID',
name: 'statusId',
type: 'options',
typeOptions: {
loadOptionsDependsOn: ['spaceId'],
loadOptionsMethod: 'getStatuses',
},
default: [],

View file

@ -84,6 +84,7 @@ export const getStatuses = `
query {
organization {
spaces {
id
statuses {
id
name