mirror of
https://github.com/plankanban/planka.git
synced 2025-07-18 20:59:44 +02:00
parent
38bc4cb0a0
commit
f75b0237d3
12 changed files with 38 additions and 2 deletions
|
@ -59,6 +59,9 @@ module.exports = {
|
||||||
cards: [inputs.card],
|
cards: [inputs.card],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
prevData: {
|
||||||
|
item: inputs.record,
|
||||||
|
},
|
||||||
user: inputs.actorUser,
|
user: inputs.actorUser,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -59,6 +59,9 @@ module.exports = {
|
||||||
cards: [inputs.card],
|
cards: [inputs.card],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
prevData: {
|
||||||
|
item: inputs.record,
|
||||||
|
},
|
||||||
user: inputs.actorUser,
|
user: inputs.actorUser,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -62,6 +62,9 @@ module.exports = {
|
||||||
boards: [inputs.board],
|
boards: [inputs.board],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
prevData: {
|
||||||
|
item: inputs.record,
|
||||||
|
},
|
||||||
user: inputs.actorUser,
|
user: inputs.actorUser,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -100,6 +100,9 @@ module.exports = {
|
||||||
projects: [inputs.project],
|
projects: [inputs.project],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
prevData: {
|
||||||
|
item: inputs.record,
|
||||||
|
},
|
||||||
user: inputs.actorUser,
|
user: inputs.actorUser,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -264,6 +264,9 @@ module.exports = {
|
||||||
lists: [list],
|
lists: [list],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
prevData: {
|
||||||
|
item: inputs.record,
|
||||||
|
},
|
||||||
user: inputs.actorUser,
|
user: inputs.actorUser,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -91,6 +91,9 @@ module.exports = {
|
||||||
boards: [inputs.board],
|
boards: [inputs.board],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
prevData: {
|
||||||
|
item: inputs.record,
|
||||||
|
},
|
||||||
user: inputs.actorUser,
|
user: inputs.actorUser,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -91,6 +91,9 @@ module.exports = {
|
||||||
boards: [inputs.board],
|
boards: [inputs.board],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
prevData: {
|
||||||
|
item: inputs.record,
|
||||||
|
},
|
||||||
user: inputs.actorUser,
|
user: inputs.actorUser,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,6 +48,7 @@ module.exports = {
|
||||||
inputs.request,
|
inputs.request,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// TODO: with prevData?
|
||||||
sails.helpers.utils.sendWebhooks.with({
|
sails.helpers.utils.sendWebhooks.with({
|
||||||
event: 'notificationUpdate',
|
event: 'notificationUpdate',
|
||||||
data: {
|
data: {
|
||||||
|
|
|
@ -118,6 +118,9 @@ module.exports = {
|
||||||
data: {
|
data: {
|
||||||
item: project,
|
item: project,
|
||||||
},
|
},
|
||||||
|
prevData: {
|
||||||
|
item: inputs.record,
|
||||||
|
},
|
||||||
user: inputs.actorUser,
|
user: inputs.actorUser,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -101,6 +101,9 @@ module.exports = {
|
||||||
cards: [inputs.card],
|
cards: [inputs.card],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
prevData: {
|
||||||
|
item: inputs.record,
|
||||||
|
},
|
||||||
user: inputs.actorUser,
|
user: inputs.actorUser,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -159,6 +159,9 @@ module.exports = {
|
||||||
data: {
|
data: {
|
||||||
item: user,
|
item: user,
|
||||||
},
|
},
|
||||||
|
prevData: {
|
||||||
|
item: inputs.record,
|
||||||
|
},
|
||||||
user: inputs.actorUser,
|
user: inputs.actorUser,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -97,10 +97,11 @@ const jsonifyData = (data) => {
|
||||||
* @param {*} webhook - Webhook configuration.
|
* @param {*} webhook - Webhook configuration.
|
||||||
* @param {string} event - The event (see {@link EVENT_TYPES}).
|
* @param {string} event - The event (see {@link EVENT_TYPES}).
|
||||||
* @param {Data} data - The data object containing event data and optionally included data.
|
* @param {Data} data - The data object containing event data and optionally included data.
|
||||||
|
* @param {Data} [prevData] - The data object containing previous state of data (optional).
|
||||||
* @param {ref} user - User object associated with the event.
|
* @param {ref} user - User object associated with the event.
|
||||||
* @returns {Promise<void>}
|
* @returns {Promise<void>}
|
||||||
*/
|
*/
|
||||||
async function sendWebhook(webhook, event, data, user) {
|
async function sendWebhook(webhook, event, data, prevData, user) {
|
||||||
const headers = {
|
const headers = {
|
||||||
'Content-Type': 'application/json',
|
'Content-Type': 'application/json',
|
||||||
'User-Agent': `planka (+${sails.config.custom.baseUrl})`,
|
'User-Agent': `planka (+${sails.config.custom.baseUrl})`,
|
||||||
|
@ -113,6 +114,7 @@ async function sendWebhook(webhook, event, data, user) {
|
||||||
const body = JSON.stringify({
|
const body = JSON.stringify({
|
||||||
event,
|
event,
|
||||||
data: jsonifyData(data),
|
data: jsonifyData(data),
|
||||||
|
prevData: prevData && jsonifyData(prevData),
|
||||||
user: sails.helpers.utils.jsonifyRecord(user),
|
user: sails.helpers.utils.jsonifyRecord(user),
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -148,6 +150,9 @@ module.exports = {
|
||||||
type: 'ref',
|
type: 'ref',
|
||||||
required: true,
|
required: true,
|
||||||
},
|
},
|
||||||
|
prevData: {
|
||||||
|
type: 'ref',
|
||||||
|
},
|
||||||
user: {
|
user: {
|
||||||
type: 'ref',
|
type: 'ref',
|
||||||
required: true,
|
required: true,
|
||||||
|
@ -172,7 +177,7 @@ module.exports = {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
sendWebhook(webhook, inputs.event, inputs.data, inputs.user);
|
sendWebhook(webhook, inputs.event, inputs.data, inputs.prevData, inputs.user);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue