Prepare 1.8.9 release
Some checks failed
Test / check_pr (push) Has been cancelled

This commit is contained in:
Nick Cipollo
2021-09-12 18:09:12 -04:00
parent e97ceb3e08
commit 238505795d
629 changed files with 288215 additions and 1 deletions

View File

@@ -0,0 +1,24 @@
import { iterator } from "./iterator";
export function paginate(octokit, route, parameters, mapFn) {
if (typeof parameters === "function") {
mapFn = parameters;
parameters = undefined;
}
return gather(octokit, [], iterator(octokit, route, parameters)[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);
});
}