UNPKG

@ammar-ahmed/automation-app-bot

Version:
31 lines (27 loc) 1.04 kB
const Interceptor = require('./interceptor') /** * Handles milestoned and demilestoned for Pull Requests. */ class Milestoned extends Interceptor { async process (context) { if (this.valid(context)) { const res = await context.octokit.pulls.get(context.repo({ pull_number: context.payload.issue.number })) res.data.action = context.payload.action context.eventName = 'pull_request' context.payload.pull_request = res.data } return context } /** * @return true if issue has the action milestoned or demilestoned but is from a pull_request. */ valid (context) { // GH does not differentiate between issues and pulls for milestones. The only differentiator // is the payload for issues containing a pull_request property. return (context.eventName === 'issues' && (context.payload.action === 'milestoned' || context.payload.action === 'demilestoned')) && !!context.payload.issue.pull_request } } module.exports = Milestoned