feat: hook webhook to events

pull/771/head
HannesOberreiter 2 years ago
parent 9b529024a0
commit 34709e26af

@ -35,7 +35,8 @@ module.exports = {
async fn(inputs) { async fn(inputs) {
const { currentUser } = this.req; const { currentUser } = this.req;
let { list } = await sails.helpers.lists // eslint-disable-next-line prefer-const
let { list, board } = await sails.helpers.lists
.getProjectPath(inputs.id) .getProjectPath(inputs.id)
.intercept('pathNotFound', () => Errors.LIST_NOT_FOUND); .intercept('pathNotFound', () => Errors.LIST_NOT_FOUND);
@ -56,6 +57,7 @@ module.exports = {
list = await sails.helpers.lists.updateOne.with({ list = await sails.helpers.lists.updateOne.with({
values, values,
board,
record: list, record: list,
request: this.req, request: this.req,
}); });

@ -39,7 +39,7 @@ module.exports = {
async fn(inputs) { async fn(inputs) {
const { currentUser } = this.req; const { currentUser } = this.req;
const { card } = await sails.helpers.cards const { card, board } = await sails.helpers.cards
.getProjectPath(inputs.cardId) .getProjectPath(inputs.cardId)
.intercept('pathNotFound', () => Errors.CARD_NOT_FOUND); .intercept('pathNotFound', () => Errors.CARD_NOT_FOUND);
@ -62,6 +62,7 @@ module.exports = {
values: { values: {
...values, ...values,
card, card,
board,
}, },
request: this.req, request: this.req,
}); });

@ -95,6 +95,15 @@ module.exports = {
buildAndSendSlackMessage(values.user, values.card, action); buildAndSendSlackMessage(values.user, values.card, action);
} }
await sails.helpers.utils.sendWebhook.with({
event: 'action_create',
data: action,
projectId: inputs.board.projectId,
user: inputs.request.currentUser,
card: values.card,
board: inputs.board,
});
return action; return action;
}, },
}; };

@ -25,6 +25,14 @@ module.exports = {
}, },
inputs.request, inputs.request,
); );
await sails.helpers.utils.sendWebhook.with({
event: 'action_delete',
data: action,
projectId: inputs.board.projectId,
user: inputs.request.currentUser,
board: inputs.board,
});
} }
return action; return action;

@ -31,6 +31,14 @@ module.exports = {
}, },
inputs.request, inputs.request,
); );
await sails.helpers.utils.sendWebhook.with({
event: 'action_update',
data: action,
projectId: inputs.board.projectId,
user: inputs.request.currentUser,
board: inputs.board,
});
} }
return action; return action;

@ -58,6 +58,15 @@ module.exports = {
}); });
} }
await sails.helpers.utils.sendWebhook.with({
event: 'attachment_create',
data: attachment,
projectId: values.card.board.projectId,
user: inputs.request.currentUser,
card: values.card,
board: values.card.board,
});
return attachment; return attachment;
}, },
}; };

@ -48,6 +48,15 @@ module.exports = {
}, },
inputs.request, inputs.request,
); );
await sails.helpers.utils.sendWebhook.with({
event: 'attachment_delete',
data: attachment,
projectId: inputs.board.projectId,
user: inputs.request.currentUser,
card: inputs.card,
board: inputs.board,
});
} }
return attachment; return attachment;

@ -31,6 +31,14 @@ module.exports = {
}, },
inputs.request, inputs.request,
); );
await sails.helpers.utils.sendWebhook.with({
event: 'attachment_update',
data: attachment,
projectId: inputs.board.projectId,
user: inputs.request.currentUser,
board: inputs.board,
});
} }
return attachment; return attachment;

@ -111,6 +111,14 @@ module.exports = {
); );
}); });
await sails.helpers.utils.sendWebhook.with({
event: 'board_create',
data: board,
projectId: board.projectId,
user: inputs.request.currentUser,
board,
});
return { return {
board, board,
boardMembership, boardMembership,

@ -35,6 +35,14 @@ module.exports = {
}); });
} }
await sails.helpers.utils.sendWebhook.with({
event: 'board_delete',
data: board,
projectId: board.projectId,
user: inputs.request.currentUser,
board,
});
return board; return board;
}, },
}; };

@ -83,6 +83,14 @@ module.exports = {
}); });
} }
await sails.helpers.utils.sendWebhook.with({
event: 'board_update',
data: board,
projectId: board.projectId,
user: inputs.request.currentUser,
board,
});
return board; return board;
}, },
}; };

@ -109,6 +109,17 @@ module.exports = {
user: values.creatorUser, user: values.creatorUser,
}, },
board: inputs.board, board: inputs.board,
request: inputs.request,
});
await sails.helpers.utils.sendWebhook.with({
event: 'card_create',
data: card,
projectId: inputs.board.projectId,
user: inputs.request.currentUser,
card,
board: inputs.board,
list: values.list,
}); });
return card; return card;

@ -33,6 +33,15 @@ module.exports = {
if (sails.config.custom.slackBotToken) { if (sails.config.custom.slackBotToken) {
buildAndSendSlackMessage(inputs.user, card); buildAndSendSlackMessage(inputs.user, card);
} }
await sails.helpers.utils.sendWebhook.with({
event: 'card_delete',
data: card,
projectId: card.board.projectId,
user: inputs.request.currentUser,
card,
board: card.board,
});
} }
return card; return card;

@ -134,6 +134,16 @@ module.exports = {
board: inputs.board, board: inputs.board,
}); });
await sails.helpers.utils.sendWebhook.with({
event: 'card_create',
data: card,
projectId: inputs.board.projectId,
user: inputs.request.currentUser,
card,
board: inputs.board,
list: inputs.list,
});
return { return {
card, card,
cardMemberships: nextCardMemberships, cardMemberships: nextCardMemberships,

@ -269,6 +269,15 @@ module.exports = {
} }
} }
await sails.helpers.utils.sendWebhook.with({
event: 'card_update',
data: card,
projectId: inputs.board.projectId,
user: inputs.request.currentUser,
card,
board: inputs.board,
});
return card; return card;
}, },
}; };

@ -67,6 +67,14 @@ module.exports = {
inputs.request, inputs.request,
); );
await sails.helpers.utils.sendWebhook.with({
event: 'list_create',
data: list,
projectId: values.board.projectId,
user: inputs.request.currentUser,
board: values.board,
});
return list; return list;
}, },
}; };

@ -21,6 +21,14 @@ module.exports = {
}, },
inputs.request, inputs.request,
); );
await sails.helpers.utils.sendWebhook.with({
event: 'list_delete',
data: list,
projectId: list.board.projectId,
user: inputs.request.currentUser,
board: list.board,
});
} }
return list; return list;

@ -21,6 +21,10 @@ module.exports = {
custom: valuesValidator, custom: valuesValidator,
required: true, required: true,
}, },
board: {
type: 'ref',
required: true,
},
request: { request: {
type: 'ref', type: 'ref',
}, },
@ -67,6 +71,14 @@ module.exports = {
}, },
inputs.request, inputs.request,
); );
await sails.helpers.utils.sendWebhook.with({
event: 'list_update',
data: list,
projectId: inputs.board.projectId,
user: inputs.request.currentUser,
board: inputs.board,
});
} }
return list; return list;

@ -32,6 +32,13 @@ module.exports = {
inputs.request, inputs.request,
); );
await sails.helpers.utils.sendWebhook.with({
event: 'project_create',
data: project,
projectId: project.id,
user: inputs.request.currentUser,
});
return { return {
project, project,
projectManager, projectManager,

@ -37,6 +37,13 @@ module.exports = {
inputs.request, inputs.request,
); );
}); });
await sails.helpers.utils.sendWebhook.with({
event: 'project_delete',
data: project,
projectId: project.id,
user: inputs.request.currentUser,
});
} }
return project; return project;

@ -108,6 +108,13 @@ module.exports = {
inputs.request, inputs.request,
); );
}); });
await sails.helpers.utils.sendWebhook.with({
event: 'project_update',
data: project,
projectId: project.id,
user: inputs.request.currentUser,
});
} }
return project; return project;

@ -21,6 +21,10 @@ module.exports = {
custom: valuesValidator, custom: valuesValidator,
required: true, required: true,
}, },
board: {
type: 'ref',
required: true,
},
request: { request: {
type: 'ref', type: 'ref',
}, },
@ -67,6 +71,15 @@ module.exports = {
inputs.request, inputs.request,
); );
await sails.helpers.utils.sendWebhook.with({
event: 'task_create',
data: task,
projectId: inputs.board.projectId,
user: inputs.request.currentUser,
card: values.card,
board: inputs.board,
});
return task; return task;
}, },
}; };

@ -25,6 +25,14 @@ module.exports = {
}, },
inputs.request, inputs.request,
); );
await sails.helpers.utils.sendWebhook.with({
event: 'task_delete',
data: task,
projectId: inputs.board.projectId,
user: inputs.request.currentUser,
board: inputs.board,
});
} }
return task; return task;

@ -71,6 +71,15 @@ module.exports = {
}, },
inputs.request, inputs.request,
); );
await sails.helpers.utils.sendWebhook.with({
event: 'task_update',
data: task,
projectId: inputs.board.projectId,
user: inputs.request.currentUser,
card: values.card,
board: inputs.board,
});
} }
return task; return task;

Loading…
Cancel
Save