feat(clickup/actions): add create task and find task by id (#1615)

* feat(clickup): add create task action

* feat(clickup): add find task by id action

* fix(clickup): send optional parameters only when provided

---------

Co-authored-by: Ali BARIN <ali.barin53@gmail.com>
This commit is contained in:
Rıdvan Akca
2024-08-15 15:59:58 +02:00
committed by GitHub
parent da2884d53c
commit 98e4b843ea
12 changed files with 524 additions and 12 deletions

View File

@@ -1,7 +1,19 @@
import listAssignees from './list-assignees/index.js';
import listFolders from './list-folders/index.js';
import listLists from './list-lists/index.js';
import listSpaces from './list-spaces/index.js';
import listStatuses from './list-statuses/index.js';
import listTags from './list-tags/index.js';
import listTasks from './list-tasks/index.js';
import listWorkspaces from './list-workspaces/index.js';
export default [listFolders, listLists, listSpaces, listTasks, listWorkspaces];
export default [
listAssignees,
listFolders,
listLists,
listSpaces,
listStatuses,
listTags,
listTasks,
listWorkspaces,
];

View File

@@ -0,0 +1,28 @@
export default {
name: 'List assignees',
key: 'listAssignees',
async run($) {
const assignees = {
data: [],
};
const listId = $.step.parameters.listId;
if (!listId) {
return assignees;
}
const { data } = await $.http.get(`/v2/list/${listId}/member`);
if (data.members) {
for (const member of data.members) {
assignees.data.push({
value: member.id,
name: member.username,
});
}
}
return assignees;
},
};

View File

@@ -0,0 +1,28 @@
export default {
name: 'List statuses',
key: 'listStatuses',
async run($) {
const statuses = {
data: [],
};
const listId = $.step.parameters.listId;
if (!listId) {
return statuses;
}
const { data } = await $.http.get(`/v2/list/${listId}`);
if (data.statuses) {
for (const status of data.statuses) {
statuses.data.push({
value: status.status,
name: status.status,
});
}
}
return statuses;
},
};

View File

@@ -0,0 +1,28 @@
export default {
name: 'List tags',
key: 'listTags',
async run($) {
const tags = {
data: [],
};
const spaceId = $.step.parameters.spaceId;
if (!spaceId) {
return spaceId;
}
const { data } = await $.http.get(`v2/space/${spaceId}/tag`);
if (data.tags) {
for (const tag of data.tags) {
tags.data.push({
value: tag.name,
name: tag.name,
});
}
}
return tags;
},
};