Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const GitHubApi = require("github");
- const Rx = require("rx");
- const github = new GitHubApi();
- const getCommitsAsync = (param) => github.repos.getCommits({
- owner: 'amowu',
- repo: 'test-semantic-release',
- ...param
- });
- const checkNextPage = (response) =>
- github.hasNextPage(response)
- ? Rx.Observable.fromPromise(github.getNextPage(response))
- : Rx.Observable.empty();
- const concatAllCommits = (acc, curr) => acc.concat(curr.data);
- const getAllCommits$ = Rx.Observable
- .fromPromise(getCommitsAsync({ per_page: 100 }))
- .expand(checkNextPage)
- .reduce(concatAllCommits, []);
- // getAllCommits$.subscribe(
- // (commits) => console.log(commits)
- // );
- const commits = await getAllCommits$.toPromise();
Add Comment
Please, Sign In to add comment