UNPKG

t-comm

Version:

专业、稳定、纯粹的工具库

173 lines (168 loc) 4.67 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var tslib_es6 = require('../tslib.es6-01322ba9.js'); var tgit_helper = require('./helper.js'); var tgit_project = require('./project.js'); require('axios'); /** * 获取tGit上某分支生命周期 * @param {object} options 输入配置 * @param {string} options.projectName 项目名称 * @param {string} options.branchName 分支名称 * @param {string} options.privateToken 密钥 * @returns {Promise<object>} 请求Promise * @example * * getBranchLifeCycle({ * projectName: 't-comm', * branchName: 'master', * privateToken: 'xxxxx', * }).then((resp) => { * * }) */ function getBranchLifeCycle(_a) { var projectName = _a.projectName, branchName = _a.branchName, privateToken = _a.privateToken; return new Promise(function (resolve, reject) { if (!projectName || !branchName) { return; } tgit_helper.instance({ url: "/projects/".concat(encodeURIComponent(projectName), "/tloc/branch/lifecycle"), method: 'GET', params: { branch_name: branchName }, headers: { 'PRIVATE-TOKEN': privateToken } }).then(function (res) { resolve(res.data); })["catch"](function (err) { reject(err); }); }); } /** * 获取默认分支 * @param {object} options 输入配置 * @param {string} options.projectName 项目名称 * @param {string} options.privateToken 密钥 * @returns {Promise<string>} 请求Promise * @example * * getProjectDefaultBranch({ * projectName: 't-comm', * privateToken: 'xxxxx', * }).then((branch) => { * console.log('branch: ', branch) * }) */ function getProjectDefaultBranch(_a) { var projectName = _a.projectName, privateToken = _a.privateToken; return tslib_es6.__awaiter(this, void 0, void 0, function () { function getMainBranch() { return detail.default_branch || ''; } var detail, branch; return tslib_es6.__generator(this, function (_b) { switch (_b.label) { case 0: return [4 /*yield*/, tgit_project.getOneProjectDetail({ projectName: projectName, privateToken: privateToken })]; case 1: detail = _b.sent(); branch = getMainBranch(); return [2 /*return*/, branch]; } }); }); } /** * 获取仓库的分支列表 * @param {object} options 输入配置 * @param {string} options.projectName 项目名称 * @param {string} options.privateToken 密钥 * @param {string} options.baseUrl baseUrl * @returns {Promise<Array<object>>} 请求Promise * @example * * getBranchesByProjectName({ * projectName: 't-comm', * privateToken: 'xxxxx', * }).then((resp) => { * * }) */ function getBranchesByProjectName(_a) { var projectName = _a.projectName, privateToken = _a.privateToken, baseUrl = _a.baseUrl; return new Promise(function (resolve, reject) { if (!projectName) { reject('No ProjectName'); return; } tgit_helper.instance({ url: "".concat(baseUrl, "/api/v3/projects/").concat(encodeURIComponent(projectName), "/repository/branches"), method: 'GET', params: { per_page: 100 }, headers: { 'PRIVATE-TOKEN': privateToken } }).then(function (res) { resolve(res.data); })["catch"](function (err) { reject(err); }); }); } /** * 获取分支详情 * @param {object} options 输入配置 * @param {string} options.projectName 项目名称 * @param {string} options.branchName 分支名称 * @param {string} options.privateToken 密钥 * @returns {Promise<object>} 请求Promise * @example * * getOneBranchDetail({ * projectName: 't-comm', * branchName: 'master', * privateToken: 'xxxxx', * }).then((resp) => { * * }) */ function getOneBranchDetail(_a) { var projectName = _a.projectName, branchName = _a.branchName, privateToken = _a.privateToken; return new Promise(function (resolve, reject) { if (!projectName || !branchName) { return; } tgit_helper.instance({ url: "/projects/".concat(encodeURIComponent(projectName), "/repository/branches/").concat(encodeURIComponent(branchName)), method: 'GET', headers: { 'PRIVATE-TOKEN': privateToken } }).then(function (res) { resolve(res.data); })["catch"](function (err) { reject(err); }); }); } exports.getBranchLifeCycle = getBranchLifeCycle; exports.getBranchesByProjectName = getBranchesByProjectName; exports.getOneBranchDetail = getOneBranchDetail; exports.getProjectDefaultBranch = getProjectDefaultBranch;