repository-provider
abstract interface to git repository providers like github bitbucket
Example
import { GithubProvider } from 'repository-provider';
const provider = new GithubProvider({ token: 'xxx' });
const repository = await provider.repository('myuser/myrepo');
const branch = await repository.branch('master');
const files = await branch.list();
API
Table of Contents
Content
Type: Object
Properties
Provider
Base repository provider acts as a source of repositories
Parameters
Properties
repositoryClass
Returns Class repository class used by the Provider
branchClass
Returns Class branch class used by the Provider
pullRequestClass
Returns Class pull request class used by the Provider
createRepository
Create a new repository
Parameters
Returns Promise<Repository>
repository
Lookup a repository
Parameters
Returns Promise<Repository>
branch
Lookup a branch
First lookup repository then the branch
If no branch was specified then the default branch will be delivered.
Parameters
Returns Promise<Branch>
rateLimitReached
Is our rate limit reached.
By default we have no rate limit
Returns boolean always false
type
Deliver the repository type
Returns string 'git'
defaultOptions
Default configuration options
Returns Object
options
Pepare configuration by mixing together defaultOptions with actual options
Parameters
Returns Object combined options
Branch
Abstract branch
Parameters
Properties
initialize
called one after constructing
Returns Promise
provider
Returns Provider
owner
Branch owner
By default we provide the repository owner
Returns string
project
Branch project
By default we provide the repository project
Returns string
fullName
Deliver repository and branch name combined
Returns string 'repo#branch'
delete
Delete the branch from the Repository.
Returns Promise
content
Deliver file content
Parameters
Returns Promise<Content> content of a given file
commit
Commit files
Parameters
Returns Promise
createPullRequest
Create a pull request
Parameters
Returns Promise
list
File list
rateLimitReached
Value delivered from the provider
Returns boolean providers rateLimitReached
rateLimitReached
forward to the Provider
Parameters
Repository
Abstract repository
Parameters
Properties
initialize
Called one after constructing
Returns Promise<undefined>
content
Lookup content form the default branch
Parameters
Returns Content
urls
Deliver urls to access the repo
Returns Array<string>
owner
Repository owner
Default implementation delivers undefined
Returns string undefined
project
Repository project
Default implementation delivers undefined
Returns string undefined
branch
Lookup branch by name
Parameters
Returns Promise<Branch>
defaultBranch
Lookup the default branch
Returns Promise<Branch> 'master' branch
branches
Returns Promise<Map> of all branches
createBranch
Create a new Branch by cloning a given source branch
Parameters
Returns Promise<Branch> newly created branch
deleteBranch
Delete a Branch
Parameters
Returns Promise<undefined>
addBranch
Add a branch
Parameters
Returns Promise<undefined>
pullRequests
Deliver all @{link PullRequest}s
Returns Promise<Map> of all pull requests
pullRequest
Deliver @{link PullRequest} for a given name
Parameters
Returns Promise<PullRequest>
addPullRequest
Add a pull request
Parameters
Returns Promise
deletePullRequest
Delete a PullRequest
Parameters
Returns Promise
rateLimitReached
Value delivered from the provider
Returns boolean providers rateLimitReached
rateLimitReached
forward to the Provider
Parameters
PullRequest
Abstract pull request
Parameters
repository
Repositoyname
stringoptions
Object (optional, default {}
)
Properties
provider
Returns Provider
delete
Delete the pull request from the Repository.
Returns Promise
install
With npm do:
npm install repository-provider
license
BSD-2-Clause