@tomsd/github-repo
v2.7.0
Published
Utility for GitHub repo
Downloads
318
Readme
@tomsd/github-repo
It's a utility for GitHub.
See github-repo-package.netlify.app for details.
installation
npm install @tomsd/github-repo
usage
import GitHub
class.
import { GitHub } froom "@tomsd/github-repo";
create an instance
const github = new GitHub(GITHUB_TOKEN);
get repo instance
const repo = github.organization(OWNER).repo(REPO);
instance chainings
const issue = github
.organization(ORG)
.repo(REPO)
.issue(issueNumber);
const pull = repo
.pull(pullNumber);
fetching data
// call ensureData() of each instance
await repo.ensureData();
await issue.ensureData();
await pull.ensureData();
get branches
await repo.getBranches();
get tags
await repo.getTags();
get branch sha
await repo.getBranchSha("main");
get branch tree
await repo.getBranchTree("main");
get file content
await repo.getFileContent("path/to/file");
create a tag
await repo.createTag("my-tag", "main");
list pull requests
const pulls = await repo.listPulls({ base: "main" });
await Promise.all(pulls.values().map(pull => pull.ensureData()));
list issues
const issues = await repo.listIssues({ state: "all" });
await Promise.all(issues.values().map(issue => issue.ensureData()));