Add production dependencies & build

This commit is contained in:
Sascha Mann
2019-11-25 14:58:51 +01:00
parent c8ae0bede2
commit f62b8f8e74
620 changed files with 136417 additions and 1 deletions

View File

@@ -0,0 +1,40 @@
module.exports = paginate;
const iterator = require("./iterator");
function paginate(octokit, route, options, mapFn) {
if (typeof options === "function") {
mapFn = options;
options = undefined;
}
options = octokit.request.endpoint.merge(route, options);
return gather(
octokit,
[],
iterator(octokit, options)[Symbol.asyncIterator](),
mapFn
);
}
function gather(octokit, results, iterator, mapFn) {
return iterator.next().then(result => {
if (result.done) {
return results;
}
let earlyExit = false;
function done() {
earlyExit = true;
}
results = results.concat(
mapFn ? mapFn(result.value, done) : result.value.data
);
if (earlyExit) {
return results;
}
return gather(octokit, results, iterator, mapFn);
});
}