Socket
Socket
Sign inDemoInstall

@shelf/gh-sdk

Package Overview
Dependencies
27
Maintainers
25
Versions
19
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.5.0 to 0.6.0

lib/misc/get-orgs.d.ts

22

lib/index.d.ts

@@ -1,19 +0,3 @@

import { PullsCreateReviewResponseData, PullsMergeResponseData } from '@octokit/types';
import { PullsMergeResponse405Data, PullsMergeResponse409Data } from '@octokit/types/dist-types/generated/Endpoints';
export { listPrs, listClosedPRs } from './prs/list-prs';
export { listOrgRepos } from './repos/list-org-repos';
export { getRepoBranch, getRepoBranches, getRepoBranchesNames } from './repos/get-repo-branches';
export { deleteBranch } from './repos/delete-branch';
export { createReleasePR } from './prs/create-release-pr';
export { getPR } from './prs/get-pr';
export { createReleaseBranch } from './repos/create-release-branch';
export { getLatestBranchCommit, getLatestDevelopCommit, getLatestDevelopCommitSHA } from './repos/get-latest-branch-commit';
export { getRepoLabels, createReleaseLabel, assignReleaseLabelToPR } from './repos/labels';
interface ApprovePRParams {
owner: string;
repo: string;
pr: number;
}
export declare function approvePR(params: ApprovePRParams): Promise<PullsCreateReviewResponseData>;
export declare function mergePR(params: ApprovePRParams): Promise<PullsMergeResponseData | PullsMergeResponse405Data | PullsMergeResponse409Data>;
export declare function getUserOrgs(): Promise<string[]>;
export * from './prs';
export * from './repos';
export * from './misc';

@@ -6,155 +6,40 @@ "use strict";

});
exports.approvePR = approvePR;
exports.mergePR = mergePR;
exports.getUserOrgs = getUserOrgs;
Object.defineProperty(exports, "listPrs", {
enumerable: true,
get: function () {
return _listPrs.listPrs;
}
});
Object.defineProperty(exports, "listClosedPRs", {
enumerable: true,
get: function () {
return _listPrs.listClosedPRs;
}
});
Object.defineProperty(exports, "listOrgRepos", {
enumerable: true,
get: function () {
return _listOrgRepos.listOrgRepos;
}
});
Object.defineProperty(exports, "getRepoBranch", {
enumerable: true,
get: function () {
return _getRepoBranches.getRepoBranch;
}
});
Object.defineProperty(exports, "getRepoBranches", {
enumerable: true,
get: function () {
return _getRepoBranches.getRepoBranches;
}
});
Object.defineProperty(exports, "getRepoBranchesNames", {
enumerable: true,
get: function () {
return _getRepoBranches.getRepoBranchesNames;
}
});
Object.defineProperty(exports, "deleteBranch", {
enumerable: true,
get: function () {
return _deleteBranch.deleteBranch;
}
});
Object.defineProperty(exports, "createReleasePR", {
enumerable: true,
get: function () {
return _createReleasePr.createReleasePR;
}
});
Object.defineProperty(exports, "getPR", {
enumerable: true,
get: function () {
return _getPr.getPR;
}
});
Object.defineProperty(exports, "createReleaseBranch", {
enumerable: true,
get: function () {
return _createReleaseBranch.createReleaseBranch;
}
});
Object.defineProperty(exports, "getLatestBranchCommit", {
enumerable: true,
get: function () {
return _getLatestBranchCommit.getLatestBranchCommit;
}
});
Object.defineProperty(exports, "getLatestDevelopCommit", {
enumerable: true,
get: function () {
return _getLatestBranchCommit.getLatestDevelopCommit;
}
});
Object.defineProperty(exports, "getLatestDevelopCommitSHA", {
enumerable: true,
get: function () {
return _getLatestBranchCommit.getLatestDevelopCommitSHA;
}
});
Object.defineProperty(exports, "getRepoLabels", {
enumerable: true,
get: function () {
return _labels.getRepoLabels;
}
});
Object.defineProperty(exports, "createReleaseLabel", {
enumerable: true,
get: function () {
return _labels.createReleaseLabel;
}
});
Object.defineProperty(exports, "assignReleaseLabelToPR", {
enumerable: true,
get: function () {
return _labels.assignReleaseLabelToPR;
}
});
var _restClient = require("./rest-client");
var _prs = require("./prs");
var _listPrs = require("./prs/list-prs");
Object.keys(_prs).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (key in exports && exports[key] === _prs[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _prs[key];
}
});
});
var _listOrgRepos = require("./repos/list-org-repos");
var _repos = require("./repos");
var _getRepoBranches = require("./repos/get-repo-branches");
Object.keys(_repos).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (key in exports && exports[key] === _repos[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _repos[key];
}
});
});
var _deleteBranch = require("./repos/delete-branch");
var _misc = require("./misc");
var _createReleasePr = require("./prs/create-release-pr");
var _getPr = require("./prs/get-pr");
var _createReleaseBranch = require("./repos/create-release-branch");
var _getLatestBranchCommit = require("./repos/get-latest-branch-commit");
var _labels = require("./repos/labels");
async function approvePR(params) {
const gh = (0, _restClient.getClient)();
const {
data
} = await gh.pulls.createReview({
owner: params.owner,
repo: params.repo,
event: 'APPROVE',
pull_number: params.pr
Object.keys(_misc).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (key in exports && exports[key] === _misc[key]) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function () {
return _misc[key];
}
});
return data;
}
async function mergePR(params) {
const gh = (0, _restClient.getClient)();
const {
data
} = await gh.pulls.merge({
repo: params.repo,
pull_number: params.pr,
owner: params.owner,
merge_method: 'merge'
});
return data;
}
async function getUserOrgs() {
const gh = (0, _restClient.getClient)();
const {
data
} = await gh.orgs.listForAuthenticatedUser();
const orgNames = data.map(item => item.login);
return orgNames.sort();
}
});

@@ -1,3 +0,3 @@

import { PullsCreateResponseData } from '@octokit/types';
export declare function createReleasePR({ owner, repo, version, releaseTitle }: {
import { RestEndpointMethodTypes } from '@octokit/plugin-rest-endpoint-methods/dist-types/generated/parameters-and-response-types';
export declare function createReleasePR({ owner, repo, version, releaseTitle, }: {
owner: string;

@@ -7,2 +7,2 @@ repo: string;

releaseTitle: string;
}): Promise<PullsCreateResponseData>;
}): Promise<RestEndpointMethodTypes['pulls']['create']['response']['data']>;

@@ -1,6 +0,6 @@

import { PullsGetResponseData } from '@octokit/types';
export declare function getPR({ repo, owner, pr }: {
import { RestEndpointMethodTypes } from '@octokit/plugin-rest-endpoint-methods';
export declare function getPR({ repo, owner, pr, }: {
repo: string;
owner: string;
pr: number;
}): Promise<PullsGetResponseData>;
}): Promise<RestEndpointMethodTypes['pulls']['get']['response']['data']>;

@@ -1,2 +0,2 @@

import { SearchIssuesAndPullRequestsResponseData } from '@octokit/types';
import { RestEndpointMethodTypes } from '@octokit/plugin-rest-endpoint-methods';
interface ListOpenPRsParams {

@@ -13,3 +13,3 @@ owner: string;

export declare function listClosedPRs(params: ListOpenPRsParams): ReturnType<typeof listPRs>;
declare function listPRs(params: ListPRsParams): Promise<SearchIssuesAndPullRequestsResponseData['items']>;
declare function listPRs(params: ListPRsParams): Promise<RestEndpointMethodTypes['search']['issuesAndPullRequests']['response']['data']['items']>;
export {};

@@ -9,2 +9,4 @@ "use strict";

var _paginateGenerator = require("paginate-generator");
var _restClient = require("../rest-client");

@@ -25,41 +27,23 @@

async function listPRs(params) {
const prs = [];
let page = 1;
let totalCount = 0;
const prs = await (0, _paginateGenerator.all)((0, _paginateGenerator.paginate)(async token => {
if ((token || 1) >= 11) {
return {
page: []
};
}
do {
const data = await search({
page,
q: `is:${params.prStatus} is:pr archived:false user:${params.owner} ${params.searchText || ''}`.trim()
const gh = (0, _restClient.getClient)();
const {
data
} = await gh.search.issuesAndPullRequests({
per_page: 100,
page: token || 1,
q: `is:${params.prStatus} is:pr archived:false user:${params.owner} ${params.searchText || ''}`
});
totalCount = data.total_count;
prs.push(...data.items);
page++;
} while (prs.length < totalCount);
return prs;
}
async function search({
q,
page
}) {
// Because HttpError: Only the first 1000 search results are available
if (page >= 11) {
return {
incomplete_results: false,
items: [],
total_count: 0
next: data.items.length >= 100 ? (token || 1) + 1 : undefined,
page: data.items
};
}
const gh = (0, _restClient.getClient)();
const {
data
} = await gh.search.issuesAndPullRequests({
per_page: 100,
page,
q
});
return data;
}));
return prs;
}

@@ -1,3 +0,3 @@

import { GitCreateRefResponseData } from '@octokit/types';
export declare function createReleaseBranch({ owner, repo, version, sha }: {
import { RestEndpointMethodTypes } from '@octokit/plugin-rest-endpoint-methods';
export declare function createReleaseBranch({ owner, repo, version, sha, }: {
owner: string;

@@ -7,2 +7,2 @@ repo: string;

sha: string;
}): Promise<GitCreateRefResponseData>;
}): Promise<RestEndpointMethodTypes['git']['createRef']['response']['data']>;
import { RestEndpointMethodTypes } from '@octokit/plugin-rest-endpoint-methods';
import { OctokitResponse } from '@octokit/types';
export declare function deleteBranch({ owner, repo, ref }: RestEndpointMethodTypes['git']['deleteRef']['parameters']): Promise<OctokitResponse<any>>;
export declare function deleteBranch({ owner, repo, ref, }: RestEndpointMethodTypes['git']['deleteRef']['parameters']): Promise<RestEndpointMethodTypes['git']['deleteRef']['response']['data'] | undefined>;

@@ -0,32 +1,10 @@

import { RestEndpointMethodTypes } from '@octokit/plugin-rest-endpoint-methods';
import { getRepoBranch } from './get-repo-branches';
declare type LatestBranchCommit = {
author: {
avatar_url: string;
gravatar_id: string;
id: number;
login: string;
url: string;
};
committer: {
avatar_url: string;
gravatar_id: string;
id: number;
login: string;
url: string;
};
parents: Array<{
sha: string;
url: string;
}>;
node_id: string;
sha: string;
url: string;
commit?: Record<string, unknown>;
};
export declare function getLatestBranchCommit({ owner, repo, branch }: Parameters<typeof getRepoBranch>[0]): Promise<LatestBranchCommit>;
export declare function getLatestDevelopCommit({ owner, repo }: {
declare type LatestBranchCommit = RestEndpointMethodTypes['repos']['getBranch']['response']['data']['commit'] | undefined;
export declare function getLatestBranchCommit({ owner, repo, branch, }: Parameters<typeof getRepoBranch>[0]): Promise<LatestBranchCommit>;
export declare function getLatestDevelopCommit({ owner, repo, }: {
owner: string;
repo: string;
}): Promise<LatestBranchCommit>;
export declare function getLatestDevelopCommitSHA({ owner, repo }: {
export declare function getLatestDevelopCommitSHA({ owner, repo, }: {
owner: string;

@@ -33,0 +11,0 @@ repo: string;

@@ -10,4 +10,2 @@ "use strict";

var _lodash = require("lodash");
var _getRepoBranches = require("./get-repo-branches");

@@ -25,3 +23,3 @@

});
return (0, _lodash.get)(branchResponse, 'commit', '');
return branchResponse === null || branchResponse === void 0 ? void 0 : branchResponse.commit;
}

@@ -48,3 +46,3 @@

});
return (0, _lodash.get)(commit, 'sha', '');
return (commit === null || commit === void 0 ? void 0 : commit.sha) || '';
}
import { RestEndpointMethodTypes } from '@octokit/plugin-rest-endpoint-methods';
import { ReposGetBranchResponseData, ReposListBranchesResponseData } from '@octokit/types';
export declare function getRepoBranch({ owner, repo, branch }: RestEndpointMethodTypes['repos']['getBranch']['parameters']): Promise<ReposGetBranchResponseData>;
export declare function getRepoBranches({ owner, repo }: RestEndpointMethodTypes['repos']['listBranches']['parameters']): Promise<ReposListBranchesResponseData>;
export declare function getRepoBranchesNames({ owner, repo }: {
export declare function getRepoBranch({ owner, repo, branch, }: RestEndpointMethodTypes['repos']['getBranch']['parameters']): Promise<RestEndpointMethodTypes['repos']['getBranch']['response']['data']>;
export declare function getRepoBranches({ owner, repo, }: RestEndpointMethodTypes['repos']['listBranches']['parameters']): Promise<RestEndpointMethodTypes['repos']['listBranches']['response']['data']>;
export declare function getRepoBranchesNames({ owner, repo, }: {
owner: string;
repo: string;
}): Promise<string[]>;

@@ -1,2 +0,2 @@

import { ReposListForOrgResponseData } from '@octokit/types';
export declare function listOrgRepos(org: string): Promise<ReposListForOrgResponseData>;
import { RestEndpointMethodTypes } from '@octokit/plugin-rest-endpoint-methods';
export declare function listOrgRepos(org: string): Promise<RestEndpointMethodTypes['repos']['listForOrg']['response']['data']>;
{
"name": "@shelf/gh-sdk",
"version": "0.5.0",
"version": "0.6.0",
"description": "Convenient wrapper for GitHub API for automation tasks",

@@ -43,29 +43,30 @@ "license": "MIT",

},
"babel": {
"extends": "@shelf/babel-config/backend"
},
"prettier": "@shelf/prettier-config",
"jest": {
"testEnvironment": "node"
},
"dependencies": {
"@octokit/rest": "18.0.6",
"lodash": "4.17.20"
"@octokit/rest": "18.6.0",
"lodash": "4.17.21",
"paginate-generator": "1.2.7"
},
"devDependencies": {
"@babel/cli": "7.12.1",
"@babel/core": "7.12.3",
"@babel/preset-env": "7.12.1",
"@babel/preset-typescript": "7.12.1",
"@shelf/eslint-config": "0.23.1",
"@shelf/prettier-config": "0.0.7",
"@types/jest": "26.0.15",
"@types/node": "12.12.31",
"babel-jest": "26.6.0",
"eslint": "7.11.0",
"@babel/cli": "7.14.5",
"@babel/core": "7.14.6",
"@shelf/babel-config": "0.1.4",
"@shelf/eslint-config": "1.3.0",
"@shelf/prettier-config": "1.0.0",
"@shelf/tsconfig": "0.0.6",
"@types/jest": "26.0.23",
"@types/lodash": "4.14.170",
"@types/node": "14",
"eslint": "7.29.0",
"husky": "4.3.0",
"jest": "26.6.0",
"lint-staged": "10.4.2",
"prettier": "2.1.2",
"typescript": "4.0.3"
"jest": "27.0.4",
"lint-staged": "11.0.0",
"prettier": "2.3.1",
"typescript": "4.3.4"
},
"engines": {
"node": ">=12"
"node": ">=14"
},

@@ -72,0 +73,0 @@ "publishConfig": {

@@ -35,2 +35,3 @@ # gh-sdk [![CircleCI](https://circleci.com/gh/shelfio/gh-sdk/tree/master.svg?style=svg)](https://circleci.com/gh/shelfio/gh-sdk/tree/master)![](https://img.shields.io/badge/code_style-prettier-ff69b4.svg)

assignReleaseLabelToPR('shelf', 'api', 134);
extractRepoNameFromURL('https://github.com/shelfio/gh-sdk/pulls/5'); // => gh-sdk
```

@@ -44,3 +45,3 @@

$ yarn publish
$ git push origin master
$ git push origin master --tags
```

@@ -47,0 +48,0 @@

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc