github-mergerine
Version:
GitHub bot to automatically merge PRs matching certain criteria.
2 lines • 26.9 kB
JavaScript
!function(e){function r(n){if(t[n])return t[n].exports;var u=t[n]={i:n,l:!1,exports:{}};return e[n].call(u.exports,u,u.exports,r),u.l=!0,u.exports}var t={};r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},r.p="",r(r.s=7)}([function(e,r,t){"use strict";function n(e){if(Array.isArray(e)){for(var r=0,t=Array(e.length);r<e.length;r++)t[r]=e[r];return t}return Array.from(e)}Object.defineProperty(r,"__esModule",{value:!0}),r.trace=r.logDecide=r.logFetchErr=r.logFetchOk=r.logRun=r.log=void 0;var u=t(14),a=function(e){return e&&e.__esModule?e:{default:e}}(u),o=(t(15),function(e){return e.map(function(e){return"string"==typeof e?e:JSON.stringify(e)})}),i=function(e){var r=(0,a.default)(e);return function(){for(var e=arguments.length,t=Array(e),u=0;u<e;u++)t[u]=arguments[u];return r.apply(void 0,n(o(t)))}},c=i("mergerine:log"),s=i("mergerine:trace"),l=i("mergerine:run"),f=i("mergerine:fetch:ok"),p=i("mergerine:fetch:err"),d=i("mergerine:decide");r.log=c,r.logRun=l,r.logFetchOk=f,r.logFetchErr=p,r.logDecide=d,r.trace=s,r.default=c},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.dry=r.deleteBranchAfterMerge=r.interval=r.token=r.config=void 0;var n=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e},u=t(10),a=t(11),o=t(12),i=process.env,c=i.MERGERINE_CONFIG,s=void 0===c?"mergerine.json":c,l=i.MERGERINE_INTERVAL,f=i.MERGERINE_DELETE_BRANCH_AFTER_MERGE,p=i.MERGERINE_DRY,d=i.MERGERINE_GITHUB_TOKEN,v=i.GITHUB_TOKEN,h=JSON.parse((0,a.readFileSync)((0,u.resolve)(process.cwd(),s),"utf8"));h.repos=h.repos||[],h.repos=h.repos.map(function(e){return n({},e,{baseUrl:e.baseUrl||"https://api.github.com"})});var m=d||v||h.token,b=parseInt(l)||h.interval||12e4,g=(0,o.getInterval)(b),x="true"===f||h.deleteBranchAfterMerge,w="true"===p||h.dry;r.config=h,r.token=m,r.interval=g,r.deleteBranchAfterMerge=x,r.dry=w},function(e,r,t){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function u(e,r){var t={};for(var n in e)r.indexOf(n)>=0||Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}Object.defineProperty(r,"__esModule",{value:!0}),r.repoFetch=void 0;var a=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e},o=t(16),i=n(o),c=t(17),s=n(c),l=t(0),f=t(1);global.fetch=i.default;var p=["application/vnd.github.v3+json","application/vnd.github.loki-preview+json","application/vnd.github.hellcat-preview+json","application/vnd.github.polaris-preview","application/vnd.github.polaris-preview+json","application/json"],d=function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=r.headers,n=void 0===t?{}:t,o=r.method,i=void 0===o?"get":o,c=u(r,["headers","method"]),d=a({Accept:p.join(","),Authorization:"token "+f.token},n);return(0,s.default)(e,a({headers:d,method:i,items:function(e){return e.searchData?e.searchData.items:e}},c)).then(function(r){var t=r.res,n=r.data;return(0,l.logFetchOk)(e,{method:i,rateLimit:{limit:t.headers.get("x-ratelimit-limit"),remaining:t.headers.get("x-ratelimit-remaining"),reset:t.headers.get("x-ratelimit-reset")}}),{res:t,data:n}}).catch(function(r){var t=r.message;throw(0,l.logFetchErr)(e,{method:i,message:t}),(0,l.trace)(r),r})},v=function(e,r){return d(r.baseUrl+"/repos/"+r.owner+"/"+r.name+e)};r.repoFetch=v,r.default=d},function(e,r){e.exports=require("timestring")},function(e,r,t){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function u(e){return function(){var r=e.apply(this,arguments);return new Promise(function(e,t){function n(u,a){try{var o=r[u](a),i=o.value}catch(e){return void t(e)}if(!o.done)return Promise.resolve(i).then(function(e){n("next",e)},function(e){n("throw",e)});e(i)}return n("next")})}}Object.defineProperty(r,"__esModule",{value:!0}),r.runOne=void 0;var a=t(5),o=t(0),i=t(6),c=n(i),s=t(20),l=n(s),f=t(21),p=n(f),d=t(1),v=function(){var e=u(regeneratorRuntime.mark(function e(r){var t,n,u;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,c.default)(r);case 2:if(t=e.sent,n=(0,a.get)(t,"result.pull.html_url"),n?(0,o.logDecide)(t.action,n):(0,o.logDecide)(t.action),!d.dry){e.next=8;break}return(0,o.logRun)("dry mode, not acting..."),e.abrupt("return",t);case 8:if((0,o.logRun)("acting..."),e.prev=9,"merge"!==t.action){e.next=31;break}return(0,o.logRun)("merging..."),e.next=14,(0,l.default)(t.result.pull,r);case 14:return(0,o.logRun)("...done merging"),(0,o.logRun)("checking for any others to update..."),u=void 0,e.prev=17,e.next=20,v(r);case 20:u=e.sent,e.next=28;break;case 23:e.prev=23,e.t0=e.catch(17),(0,o.trace)(e.t0),(0,o.logRun)("error executing post-merge decision",t),console.error("error executing post-merge decision",u);case 28:(0,o.logRun)("...done checking for any others to update"),e.next=36;break;case 31:if("update"!==t.action){e.next=36;break}return(0,o.logRun)("updating..."),e.next=35,(0,p.default)(t.result.pull);case 35:(0,o.logRun)("...done updating");case 36:e.next=43;break;case 38:e.prev=38,e.t1=e.catch(9),(0,o.trace)(e.t1),(0,o.logRun)("error executing decision",t),console.error("error executing decision",t);case 43:return(0,o.logRun)("...done acting"),e.abrupt("return",t);case 45:case"end":return e.stop()}},e,void 0,[[9,38],[17,23]])}));return function(r){return e.apply(this,arguments)}}(),h=function(){var e=u(regeneratorRuntime.mark(function e(){var r,t,n,u,a,o,i,c,s;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:r=d.config.repos,t=[],n=!0,u=!1,a=void 0,e.prev=5,o=r[Symbol.iterator]();case 7:if(n=(i=o.next()).done){e.next=16;break}return c=i.value,e.next=11,v(c);case 11:s=e.sent,t.push(s);case 13:n=!0,e.next=7;break;case 16:e.next=22;break;case 18:e.prev=18,e.t0=e.catch(5),u=!0,a=e.t0;case 22:e.prev=22,e.prev=23,!n&&o.return&&o.return();case 25:if(e.prev=25,!u){e.next=28;break}throw a;case 28:return e.finish(25);case 29:return e.finish(22);case 30:return e.abrupt("return",t);case 31:case"end":return e.stop()}},e,void 0,[[5,18,22,30],[23,,25,29]])}));return function(){return e.apply(this,arguments)}}();r.runOne=v,r.default=h},function(e,r){e.exports=require("lodash")},function(e,r,t){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function u(e){return function(){var r=e.apply(this,arguments);return new Promise(function(e,t){function n(u,a){try{var o=r[u](a),i=o.value}catch(e){return void t(e)}if(!o.done)return Promise.resolve(i).then(function(e){n("next",e)},function(e){n("throw",e)});e(i)}return n("next")})}}Object.defineProperty(r,"__esModule",{value:!0}),r.sortResults=r.decideForPull=r.shouldUpdate=r.shouldMerge=void 0;var a=t(5),o=t(2),i=n(o),c=t(0),s=n(c),l=t(18),f=function(){var e=u(regeneratorRuntime.mark(function e(r,t){var n,u,a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,n=t.members_url.replace("{/member}","/"+r),(0,c.trace)("DEV USER IN TEAM",{login:r,team:t,url:n}),e.next=5,(0,i.default)(n);case 5:return u=e.sent,a=u.res,e.abrupt("return",a.ok);case 10:return e.prev=10,e.t0=e.catch(0),(0,c.trace)(e.t0),e.abrupt("return",!1);case 14:case"end":return e.stop()}},e,void 0,[[0,10]])}));return function(r,t){return e.apply(this,arguments)}}(),p=function(e,r){return r.some(function(r){return r.login===e})},d=function(){var e=u(regeneratorRuntime.mark(function e(r,t,n){var u,a,o,i,s,l;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:u=!0,a=!1,o=void 0,e.prev=3,i=n[Symbol.iterator]();case 5:if(u=(s=i.next()).done){e.next=15;break}return l=s.value,e.next=9,f(t,l);case 9:if(!e.sent){e.next=12;break}return(0,c.logDecide)(r.html_url+' allows user "'+t+'" in team "'+l.name+'"'),e.abrupt("return",!0);case 12:u=!0,e.next=5;break;case 15:e.next=21;break;case 17:e.prev=17,e.t0=e.catch(3),a=!0,o=e.t0;case 21:e.prev=21,e.prev=22,!u&&i.return&&i.return();case 24:if(e.prev=24,!a){e.next=27;break}throw o;case 27:return e.finish(24);case 28:return e.finish(21);case 29:return(0,c.logDecide)(r.html_url+' has no user "'+t+'" in teams'),e.abrupt("return",!1);case 31:case"end":return e.stop()}},e,void 0,[[3,17,21,29],[22,,24,28]])}));return function(r,t,n){return e.apply(this,arguments)}}(),v=function(){var e=u(regeneratorRuntime.mark(function e(r,t,n,u){var a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!(a=p(t,n))){e.next=4;break}return(0,c.logDecide)(r.html_url+' allows user "'+t+'" in users'),e.abrupt("return",!0);case 4:return e.abrupt("return",d(r,t,u));case 5:case"end":return e.stop()}},e,void 0)}));return function(r,t,n,u){return e.apply(this,arguments)}}(),h=function(e,r,t){if(!t)return(0,c.logDecide)(r.html_url+' has no restrictions for user "'+e+'"'),!0;var n=t.users,u=t.teams;return v(r,e,n,void 0===u?[]:u)},m=function(e,r){return r.some(function(r){return r.name===e})},b=function(e,r){return r.every(function(r){return m(r,e)})},g=function(e,r){return r.some(function(r){return m(r,e)})},x=function(){var e=u(regeneratorRuntime.mark(function e(r,t){var n,u,a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.url.replace("/pulls/","/issues/")+"/labels",e.next=3,(0,i.default)(n);case 3:return u=e.sent,a=u.data,e.abrupt("return",a);case 6:case"end":return e.stop()}},e,void 0)}));return function(r,t){return e.apply(this,arguments)}}(),w=function(){var e=u(regeneratorRuntime.mark(function e(r,t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(e.t0=r.labels,e.t0){e.next=5;break}return e.next=4,x(r,t);case 4:e.t0=e.sent;case 5:if(n=e.t0,(0,c.logDecide)(r.html_url,"labels",n&&n.map(function(e){return e.name}),"vs. expected",t.labels),!(t.labels&&!b(n,t.labels)||t.notLabels&&g(n,t.notLabels))){e.next=9;break}return e.abrupt("return",!1);case 9:return e.abrupt("return",!0);case 10:case"end":return e.stop()}},e,void 0)}));return function(r,t){return e.apply(this,arguments)}}(),y=function(){var e=u(regeneratorRuntime.mark(function e(r,t){var n,u,a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.base.ref,e.prev=1,e.next=4,(0,o.repoFetch)("/branches/"+n+"/protection/restrictions",t);case 4:return u=e.sent,a=u.data,e.abrupt("return",a);case 9:e.prev=9,e.t0=e.catch(1),(0,c.trace)(e.t0);case 12:case"end":return e.stop()}},e,void 0,[[1,9]])}));return function(r,t){return e.apply(this,arguments)}}(),k=function(){var e=u(regeneratorRuntime.mark(function e(r,t){var n,u,a,o,s,l,f,p,d,v,m,b,g,x,w;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.url+"/reviews",e.next=3,(0,i.default)(n);case 3:if(u=e.sent,(a=u.data)&&a.length){e.next=8;break}return(0,c.logDecide)(r.html_url+" has no reviews"),e.abrupt("return",!1);case 8:if((o=a.filter(function(e){return"APPROVED"===e.state}))&&o.length){e.next=12;break}return(0,c.logDecide)(r.html_url+" has no approvals"),e.abrupt("return",!1);case 12:if(!(s=a.filter(function(e){return"CHANGES_REQUESTED"===e.state}))||!s.length){e.next=21;break}if(!(l=s.every(function(e){return o.filter(function(r){return r.user.login===e.user.login}).some(function(r){return r.submitted_at>e.submitted_at})}))){e.next=19;break}(0,c.logDecide)(r.html_url+" has changes requested but are replaced by later approvals from same users"),e.next=21;break;case 19:return(0,c.logDecide)(r.html_url+" has changes requested that are not replaced by later approvals from same users"),e.abrupt("return",!1);case 21:return e.next=23,y(r,t);case 23:if(!(f=e.sent)){e.next=56;break}p=!0,d=!1,v=void 0,e.prev=28,m=o[Symbol.iterator]();case 30:if(p=(b=m.next()).done){e.next=41;break}return g=b.value,x=g.user.login,e.next=35,h(x,r,f);case 35:if(!(w=e.sent)){e.next=38;break}return e.abrupt("return",!0);case 38:p=!0,e.next=30;break;case 41:e.next=47;break;case 43:e.prev=43,e.t0=e.catch(28),d=!0,v=e.t0;case 47:e.prev=47,e.prev=48,!p&&m.return&&m.return();case 50:if(e.prev=50,!d){e.next=53;break}throw v;case 53:return e.finish(50);case 54:return e.finish(47);case 55:return e.abrupt("return",!1);case 56:return e.abrupt("return",!0);case 57:case"end":return e.stop()}},e,void 0,[[28,43,47,55],[48,,50,54]])}));return function(r,t){return e.apply(this,arguments)}}(),_=function(){var e=u(regeneratorRuntime.mark(function e(r,t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,w(r,t);case 2:if(e.sent){e.next=5;break}return(0,c.logDecide)(r.html_url+" is not mergeable by labels"),e.abrupt("return",!1);case 5:return e.next=7,k(r,t);case 7:if(e.sent){e.next=10;break}return(0,c.logDecide)(r.html_url+" is not mergeable by reviews"),e.abrupt("return",!1);case 10:return e.abrupt("return",!0);case 11:case"end":return e.stop()}},e,void 0)}));return function(r,t){return e.apply(this,arguments)}}(),R=["clean","behind"],M=function(e){return R.includes(e.mergeable_state)},E=function(e){return"open"!==e.state||e.merged},O=function(){var e=u(regeneratorRuntime.mark(function e(r,t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!E(r)){e.next=3;break}return(0,c.logDecide)(r.html_url+" is closed, not merging"),e.abrupt("return",!1);case 3:if("clean"===r.mergeable_state){e.next=6;break}return(0,c.logDecide)(r.html_url+" is not clean, not merging"),e.abrupt("return",!1);case 6:return e.abrupt("return",_(r,t));case 7:case"end":return e.stop()}},e,void 0)}));return function(r,t){return e.apply(this,arguments)}}(),D=function(){var e=u(regeneratorRuntime.mark(function e(r,t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!E(r)){e.next=3;break}return(0,c.logDecide)(r.html_url+" is closed, not updating"),e.abrupt("return",!1);case 3:if("behind"===r.mergeable_state){e.next=6;break}return(0,c.logDecide)(r.html_url+" is not behind, not updating"),e.abrupt("return",!1);case 6:return e.abrupt("return",_(r,t));case 7:case"end":return e.stop()}},e,void 0)}));return function(r,t){return e.apply(this,arguments)}}(),P=function(e){return E(e)||!M(e)},j=function(){var e=u(regeneratorRuntime.mark(function e(r,t){var n,u;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n={pull:r},u=[n],e.next=4,O(r,t);case 4:if(!e.sent){e.next=6;break}return e.abrupt("return",{action:"merge",result:n,results:u,options:t});case 6:return e.next=8,D(r,t);case 8:if(!e.sent){e.next=10;break}return e.abrupt("return",{action:"decide",result:n,results:u,options:t});case 10:return e.abrupt("return",{action:"wait",result:n,results:u,options:t});case 11:case"end":return e.stop()}},e,void 0)}));return function(r,t){return e.apply(this,arguments)}}(),A=function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"desc";if(!e)return 0;var t=new Date(e).getTime();return"asc"===r?t:-t},U=function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e&&(0,a.sortBy)(e,function(e){var t=r.priorityLabels;if(!t)return 0;var n=e.pull.labels;return n?-t.reduce(function(e,r,t){return n.some(function(e){return e.name===r})?e+t+1:e},0):0},function(e){var t=r.sort,n=void 0===t?"created":t,u=r.direction;if("created"===n)return A(e.pull.created_at,u);if("updated"===n)return A(e.pull.updated_at,u);throw new Error('unsupported "sort" value "'+n+'"')},function(e){return e.pull.number})},q=function(){var e=u(regeneratorRuntime.mark(function e(r,t){var n,u,a,o,i,s,l,f,p,d,v,h;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:r=U(r,t),(0,c.logDecide)("results",r.map(function(e){return e.pull.number}).join(",")),n=!0,u=!1,a=void 0,e.prev=5,o=r[Symbol.iterator]();case 7:if(n=(i=o.next()).done){e.next=16;break}return s=i.value,e.next=11,O(s.pull,t);case 11:if(!e.sent){e.next=13;break}return e.abrupt("return",{action:"merge",result:s,results:r,options:t});case 13:n=!0,e.next=7;break;case 16:e.next=22;break;case 18:e.prev=18,e.t0=e.catch(5),u=!0,a=e.t0;case 22:e.prev=22,e.prev=23,!n&&o.return&&o.return();case 25:if(e.prev=25,!u){e.next=28;break}throw a;case 28:return e.finish(25);case 29:return e.finish(22);case 30:l=!0,f=!1,p=void 0,e.prev=33,d=r[Symbol.iterator]();case 35:if(l=(v=d.next()).done){e.next=44;break}return h=v.value,e.next=39,D(h.pull,t);case 39:if(!e.sent){e.next=41;break}return e.abrupt("return",{action:"update",result:h,results:r,options:t});case 41:l=!0,e.next=35;break;case 44:e.next=50;break;case 46:e.prev=46,e.t1=e.catch(33),f=!0,p=e.t1;case 50:e.prev=50,e.prev=51,!l&&d.return&&d.return();case 53:if(e.prev=53,!f){e.next=56;break}throw p;case 56:return e.finish(53);case 57:return e.finish(50);case 58:return e.abrupt("return",{action:"wait",options:t});case 59:case"end":return e.stop()}},e,void 0,[[5,18,22,30],[23,,25,29],[33,46,50,58],[51,,53,57]])}));return function(r,t){return e.apply(this,arguments)}}(),I=function(e,r){return q(e.map(function(e){return{pull:e}}),r)},F=function(){var e=u(regeneratorRuntime.mark(function e(r){var t,n,u,a,o,l=r.baseUrl,f=r.owner,p=r.name,d=r.pullsMode,v=r.query;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t=void 0,"search"!==d){e.next=16;break}return e.prev=2,e.next=5,(0,i.default)(l+"/search/issues?q="+encodeURIComponent(v));case 5:n=e.sent,u=n.data,(0,s.default)({searchData:u}),t=u.items,e.next=14;break;case 11:e.prev=11,e.t0=e.catch(2),(0,c.trace)(e.t0);case 14:e.next=28;break;case 16:return e.prev=16,e.next=19,(0,i.default)(l+"/repos/"+f+"/"+p+"/pulls");case 19:a=e.sent,o=a.data,(0,s.default)({listData:o}),t=o.filter(P),e.next=28;break;case 25:e.prev=25,e.t1=e.catch(16),(0,c.trace)(e.t1);case 28:return(0,s.default)({pulls:t}),e.abrupt("return",t);case 30:case"end":return e.stop()}},e,void 0,[[2,11],[16,25]])}));return function(r){return e.apply(this,arguments)}}(),N=function(){var e=u(regeneratorRuntime.mark(function e(r){var t,n,u,a,o,f,p,d,v,h,m,b,g,x,w,y,k,_;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.query,n=r.baseUrl,u=r.owner,a=r.name,o=r.pullsMode,f=void 0===o?t?"search":"list":o,t=(0,l.processQuery)(t),e.next=5,F({baseUrl:n,owner:u,name:a,pullsMode:f,query:t});case 5:if((p=e.sent)&&p.length){e.next=8;break}return e.abrupt("return",{action:"wait"});case 8:d=[],v=!0,h=!1,m=void 0,e.prev=12,b=p[Symbol.iterator]();case 14:if(v=(g=b.next()).done){e.next=34;break}return x=g.value,e.prev=16,w=n+"/repos/"+u+"/"+a+"/pulls/"+x.number,e.next=20,(0,i.default)(w);case 20:y=e.sent,k=y.res,_=y.data,(0,s.default)({pullNum:x.html_url,res:k,fullPull:_}),_.labels=x.labels,d.push(_),e.next=31;break;case 28:e.prev=28,e.t0=e.catch(16),(0,c.trace)(e.t0);case 31:v=!0,e.next=14;break;case 34:e.next=40;break;case 36:e.prev=36,e.t1=e.catch(12),h=!0,m=e.t1;case 40:e.prev=40,e.prev=41,!v&&b.return&&b.return();case 43:if(e.prev=43,!h){e.next=46;break}throw m;case 46:return e.finish(43);case 47:return e.finish(40);case 48:return e.abrupt("return",I(d,r));case 49:case"end":return e.stop()}},e,void 0,[[12,36,40,48],[16,28],[41,,43,47]])}));return function(r){return e.apply(this,arguments)}}();r.shouldMerge=O,r.shouldUpdate=D,r.decideForPull=j,r.sortResults=U,r.default=N},function(e,r,t){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}t(8);var u=t(9),a=n(u),o=t(1),i=t(13),c=n(i),s=t(6),l=t(2),f=n(l),p=t(22),d=n(p),v=t(4),h=n(v),m=a.default.argv._,b=function(e){return Array.isArray(e)?e:Array.from(e)}(m),g=b[0],x=void 0===g?"poll":g,w=b.slice(1),y=function(e){var r=e.baseUrl,t=e.owner,n=e.name;return o.config.repos.find(function(e){return e.baseUrl===r&&e.owner===t&&e.name===n})};!function(e){return function(){var r=e.apply(this,arguments);return new Promise(function(e,t){function n(u,a){try{var o=r[u](a),i=o.value}catch(e){return void t(e)}if(!o.done)return Promise.resolve(i).then(function(e){n("next",e)},function(e){n("throw",e)});e(i)}return n("next")})}}(regeneratorRuntime.mark(function e(){var r,t,n,u,a,o,i,l,p,m,b,g,k,_,R;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if("decide"!==x){e.next=14;break}return r=(0,d.default)(w),t=r.baseUrl,n=r.owner,u=r.name,a=r.number,o=y({baseUrl:t,owner:n,name:u}),i=t+"/repos/"+n+"/"+u+"/pulls/"+a,e.next=6,(0,f.default)(i);case 6:return l=e.sent,p=l.data,e.next=10,(0,s.decideForPull)(p,o);case 10:m=e.sent,console.log({decision:m}),e.next=26;break;case 14:if("run"!==x){e.next=25;break}if(!w.length){e.next=22;break}return b=(0,d.default)(w),g=b.baseUrl,k=b.owner,_=b.name,R=y({baseUrl:g,owner:k,name:_}),e.next=20,(0,v.runOne)(R);case 20:e.next=23;break;case 22:(0,h.default)();case 23:e.next=26;break;case 25:"poll"===x?(0,c.default)():(console.error('unsupported command "'+x+'"'),process.exit(1));case 26:case"end":return e.stop()}},e,void 0)}))()},function(e,r){e.exports=require("babel-polyfill")},function(e,r){e.exports=require("yargs")},function(e,r){e.exports=require("path")},function(e,r){e.exports=require("fs")},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.getInterval=void 0;var n=t(3),u=function(e){return e&&e.__esModule?e:{default:e}}(n),a=function(e){return"string"!=typeof e||/^\d+$/.test(e)?parseInt(e):1e3*(0,u.default)(e)};r.getInterval=a},function(e,r,t){"use strict";function n(e){return function(){var r=e.apply(this,arguments);return new Promise(function(e,t){function n(u,a){try{var o=r[u](a),i=o.value}catch(e){return void t(e)}if(!o.done)return Promise.resolve(i).then(function(e){n("next",e)},function(e){n("throw",e)});e(i)}return n("next")})}}Object.defineProperty(r,"__esModule",{value:!0});var u=t(1),a=t(0),o=t(4),i=function(e){return e&&e.__esModule?e:{default:e}}(o),c=function(){var e=n(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:(0,a.logRun)("starting poll..."),(0,i.default)().then(function(){(0,a.logRun)("...poll completed, waiting "+u.interval+" milliseconds"),setTimeout(function(){c()},u.interval)});case 2:case"end":return e.stop()}},e,void 0)}));return function(){return e.apply(this,arguments)}}();r.default=c},function(e,r){e.exports=require("debug")},function(e,r){e.exports=require("util")},function(e,r){e.exports=require("node-fetch")},function(e,r){e.exports=require("fetch-paginate")},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.processQuery=void 0;var n=t(3),u=function(e){return e&&e.__esModule?e:{default:e}}(n),a=t(19),o=function(e){return e.replace(/\$\{date\((-)?(.*?)\)\}/g,function(e,r,t){var n=1e3*(0,u.default)(t),o=Date.now(),i=new Date("-"===r?o-n:o+n);return(0,a.format)(i,"YYYY-MM-DD")})};r.processQuery=o},function(e,r){e.exports=require("date-fns")},function(e,r,t){"use strict";function n(e){return function(){var r=e.apply(this,arguments);return new Promise(function(e,t){function n(u,a){try{var o=r[u](a),i=o.value}catch(e){return void t(e)}if(!o.done)return Promise.resolve(i).then(function(e){n("next",e)},function(e){n("throw",e)});e(i)}return n("next")})}}Object.defineProperty(r,"__esModule",{value:!0});var u=t(2),a=function(e){return e&&e.__esModule?e:{default:e}}(u),o=t(0),i=t(1),c=function(){var e=n(regeneratorRuntime.mark(function e(r,t){var n,u,i,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.head,u=n.ref,i=n.repo.git_refs_url,c=i.replace("{/sha}","/heads/"+u),e.prev=2,e.next=5,(0,a.default)(c,{method:"delete"});case 5:return e.abrupt("return",e.sent);case 8:throw e.prev=8,e.t0=e.catch(2),(0,o.trace)(e.t0),e.t0;case 12:case"end":return e.stop()}},e,void 0,[[2,8]])}));return function(r,t){return e.apply(this,arguments)}}(),s=function(){var e=n(regeneratorRuntime.mark(function e(r,t){var n,u,s,l;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.url,u=n+"/merge",s={merge_method:t.merge_method},e.prev=3,e.next=6,(0,a.default)(u,{method:"put",data:s});case 6:if(l=e.sent,!i.config.deleteBranchAfterMerge){e.next=10;break}return e.next=10,c(r,t);case 10:return e.abrupt("return",l);case 13:throw e.prev=13,e.t0=e.catch(3),(0,o.trace)(e.t0),e.t0;case 17:case"end":return e.stop()}},e,void 0,[[3,13]])}));return function(r,t){return e.apply(this,arguments)}}();r.default=s},function(e,r,t){"use strict";function n(e){return function(){var r=e.apply(this,arguments);return new Promise(function(e,t){function n(u,a){try{var o=r[u](a),i=o.value}catch(e){return void t(e)}if(!o.done)return Promise.resolve(i).then(function(e){n("next",e)},function(e){n("throw",e)});e(i)}return n("next")})}}Object.defineProperty(r,"__esModule",{value:!0});var u=t(2),a=function(e){return e&&e.__esModule?e:{default:e}}(u),o=t(0),i=function(){var e=n(regeneratorRuntime.mark(function e(r){var t,n,u,i;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.head,n=r.base,u=t.repo.merges_url,i={base:t.ref,head:n.ref},e.prev=3,e.next=6,(0,a.default)(u,{method:"post",data:i});case 6:return e.abrupt("return",e.sent);case 9:throw e.prev=9,e.t0=e.catch(3),(0,o.trace)(e.t0),e.t0;case 13:case"end":return e.stop()}},e,void 0,[[3,9]])}));return function(r){return e.apply(this,arguments)}}();r.default=i},function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n=function(){function e(e,r){var t=[],n=!0,u=!1,a=void 0;try{for(var o,i=e[Symbol.iterator]();!(n=(o=i.next()).done)&&(t.push(o.value),!r||t.length!==r);n=!0);}catch(e){u=!0,a=e}finally{try{!n&&i.return&&i.return()}finally{if(u)throw a}}return t}return function(r,t){if(Array.isArray(r))return r;if(Symbol.iterator in Object(r))return e(r,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),u=t(23),a=t(24),o=function(e){return e&&e.__esModule?e:{default:e}}(a),i=function(e){return/^http/.test(e)?e:"https://"+e.replace(/^:\/\//,"")},c=function(e){return/\bgithub\.com$/.test(e)?"https://api.github.com":"https://"+e+"/api/v3"},s=function(e){if(e=i(e),/\bapi\.github\.com\b/.test(e)||/\/api\/v3\//.test(e)){e=e.replace("/api/v3/","/");var r=(0,u.parse)(e),t=r.host,a=r.pathname,s=a.split("/"),l=n(s,6),f=l[2],p=l[3],d=l[5];return{baseUrl:c(t),owner:f,name:p,number:d}}var v=(0,o.default)(e),h=v.host,m=v.owner,b=v.name,g=v.filepath;return{baseUrl:c(h),owner:m,name:b,number:g}},l=function(e){if(4===e.length){var r=n(e,4),t=r[0],u=r[1],a=r[2],o=r[3];return s(t+"/"+u+"/"+a+"/pull/"+o)}if(3===e.length){var i=n(e,3),c=i[0],l=i[1],f=i[2];return s(c+"/"+l+"/pull/"+f)}if(2===e.length){var p=n(e,2),d=p[0],v=p[1];return s(d+"/pull/"+v)}var h=n(e,1),m=h[0];return s(m)};r.default=l},function(e,r){e.exports=require("url")},function(e,r){e.exports=require("parse-github-url")}]);