An open API service indexing awesome lists of open source software.

https://github.com/arlac77/github-repository-provider

repository provider for github
https://github.com/arlac77/github-repository-provider

github

Last synced: 2 months ago
JSON representation

repository provider for github

Awesome Lists containing this project

README

          

[![npm](https://img.shields.io/npm/v/github-repository-provider.svg)](https://www.npmjs.com/package/github-repository-provider)
[![License](https://img.shields.io/badge/License-0BSD-blue.svg)](https://spdx.org/licenses/0BSD.html)
[![bundlejs](https://deno.bundlejs.com/?q=github-repository-provider\&badge=detailed)](https://bundlejs.com/?q=github-repository-provider)
[![downloads](http://img.shields.io/npm/dm/github-repository-provider.svg?style=flat-square)](https://npmjs.org/package/github-repository-provider)
[![GitHub Issues](https://img.shields.io/github/issues/arlac77/github-repository-provider.svg?style=flat-square)](https://github.com/arlac77/github-repository-provider/issues)
[![Build Status](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Farlac77%2Fgithub-repository-provider%2Fbadge\&style=flat)](https://actions-badge.atrox.dev/arlac77/github-repository-provider/goto)
[![Styled with prettier](https://img.shields.io/badge/styled_with-prettier-ff69b4.svg)](https://github.com/prettier/prettier)
[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg)](http://commitizen.github.io/cz-cli/)
[![Known Vulnerabilities](https://snyk.io/test/github/arlac77/github-repository-provider/badge.svg)](https://snyk.io/test/github/arlac77/github-repository-provider)

# github-repository-provider

repository provider for github

```javascript
import { GithubProvider } from 'github-repository-provider';

const config = GithubProvider.optionsFromEnvironment(process.env);
const provider = new GithubProvider(config);
const repository = await provider.repository(`myuser/repo1`);

for async (const entry of repository.entries('\*_/_.md')) {
console.log(entry.name);
console.log(entry.string);
}
```

# API

### Table of Contents

* [GithubBranch](#githubbranch)
* [Parameters](#parameters)
* [writeEntry](#writeentry)
* [Parameters](#parameters-1)
* [commit](#commit)
* [Parameters](#parameters-2)
* [entry](#entry)
* [Parameters](#parameters-3)
* [entries](#entries)
* [Parameters](#parameters-4)
* [removeEntries](#removeentries)
* [Parameters](#parameters-5)
* [GithubOwner](#githubowner)
* [createRepository](#createrepository)
* [Parameters](#parameters-6)
* [deleteRepository](#deleterepository)
* [Parameters](#parameters-7)
* [GithubProvider](#githubprovider)
* [Examples](#examples)
* [initializeRepositories](#initializerepositories)
* [repositoryBases](#repositorybases)
* [name](#name)
* [instanceIdentifier](#instanceidentifier)
* [GithubPullRequest](#githubpullrequest)
* [\_merge](#_merge)
* [Parameters](#parameters-8)
* [update](#update)
* [validMergeMethods](#validmergemethods)
* [list](#list)
* [Parameters](#parameters-9)
* [open](#open)
* [Parameters](#parameters-10)
* [GithubRepository](#githubrepository)
* [commits](#commits)
* [Parameters](#parameters-11)
* [commitForSha](#commitforsha)
* [Parameters](#parameters-12)
* [tree](#tree)
* [Parameters](#parameters-13)
* [addTree](#addtree)
* [Parameters](#parameters-14)
* [initializeBranches](#initializebranches)
* [initializeTags](#initializetags)
* [url](#url)
* [issuesURL](#issuesurl)
* [homePageURL](#homepageurl)
* [api](#api)
* [update](#update-1)
* [refId](#refid)
* [Parameters](#parameters-15)
* [\_setRefId](#_setrefid)
* [Parameters](#parameters-16)
* [setRefId](#setrefid)
* [Parameters](#parameters-17)
* [deletePullRequest](#deletepullrequest)
* [Parameters](#parameters-18)
* [initializeHooks](#initializehooks)

## GithubBranch

**Extends Branch**

Branch on GitHub.

### Parameters

* `owner`
* `name`
* `options`

### writeEntry

Writes content into the branch

#### Parameters

* `entry` **ContentEntry**

Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\** written content with sha values set

### commit

#### Parameters

* `message` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
* `entries` **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)\**
* `options` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)?**

### entry

#### Parameters

* `name` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**

### entries

#### Parameters

* `patterns` **([Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)> | [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String))**

Returns **AsyncGenerator\** all matching entries in the branch

### removeEntries

#### Parameters

* `entries` **AsyncIterable\**

## GithubOwner

**Extends RepositoryGroup**

Represents github repo owner either

* users
* organization

### createRepository

#### Parameters

* `name` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
* `options` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** (optional, default `{}`)

Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\** newly created repository

### deleteRepository

#### Parameters

* `name` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**

## GithubProvider

**Extends MultiGroupProvider**

GitHub provider.
Lookup a repository.
known environment variables

* GITHUB\_TOKEN or GH\_TOKEN api token

### Examples

```javascript
import GithubProvider from 'github-repository-provider';

const ghp = new GithubProvider();
const r1 = ghp.repository('git@github.com:arlac77/github-repository-provider.git');
const r2 = ghp.repository('git://github.com/arlac77/github-repository-provider.git');
const r3 = ghp.repository('git+ssh://github.com/arlac77/github-repository-provider.git');
const r4 = ghp.repository('https://github.com/arlac77/github-repository-provider.git#master');
const r5 = ghp.repository('git+https://github.com/arlac77/github-repository-provider.git#master');
const r6 = ghp.repository('arlac77/github-repository-provider');
// different ways to address the same repository
```

### initializeRepositories

### repositoryBases

All possible base urls

* github:
*
* git://github.com
* git+ssh://github.com
*
* git+

Returns **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)>** common base urls of all repositories

### name

We are called github.

Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** github

### instanceIdentifier

Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** default environment name prefix for the provider instance

## GithubPullRequest

**Extends PullRequest**

Github pull request.

### \_merge

#### Parameters

* `method` (optional, default `"MERGE"`)

### update

### validMergeMethods

All valid merge methods.

Returns **[Set](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Set)<[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)>** valid merge methods

### list

#### Parameters

* `repository` **Repository**
* `filter` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** (optional, default `{}`)

### open

#### Parameters

* `source` **Branch**
* `destination` **Branch**
* `options` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)?**

## GithubRepository

**Extends Repository**

Repository on GitHub.

### commits

#### Parameters

* `options` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**

Returns **AsyncIterable\**

### commitForSha

#### Parameters

* `sha` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**

Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)>** response

### tree

* **See**:

#### Parameters

* `sha` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**

Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)>>**

### addTree

* **See**:

#### Parameters

* `updates` **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)>**
* `base` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** base tree sha

Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)>** newly created tree

### initializeBranches

### initializeTags

### url

Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** github https url

### issuesURL

Deliver the url of issue tracking system.

Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**

### homePageURL

Deliver the url of the repositories home page.

Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**

### api

API endpoint for ourselfs.

Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**

### update

### refId

Get sha of a ref.

#### Parameters

* `ref` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**

Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)>** sha of the ref

### \_setRefId

#### Parameters

* `ref` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
* `sha` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**

### setRefId

#### Parameters

* `ref` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
* `sha` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
* `options` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**

Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)>**

### deletePullRequest

#### Parameters

* `name` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**

### initializeHooks

# install

With [npm](http://npmjs.org) do:

```shell
npm install github-repository-provider
```

# license

BSD-2-Clause