UNPKG

coveralls-api

Version:
115 lines (85 loc) 3.97 kB
"use strict"; exports.__esModule = true; exports["default"] = void 0; var _crossFetchJson = _interopRequireDefault(require("cross-fetch-json")); var _parseJsonObject = require("parse-json-object"); var _formData = _interopRequireDefault(require("form-data")); var _stringifyJsonObject = _interopRequireDefault(require("stringify-json-object")); var _repo = require("./repo"); exports.CreateRepoArgs = _repo.CreateRepoArgs; exports.CreateRepoResponse = _repo.CreateRepoResponse; exports.GetRepoResponse = _repo.GetRepoResponse; exports.UpdateRepoArgs = _repo.UpdateRepoArgs; exports.UpdateRepoReponse = _repo.UpdateRepoReponse; var _jobs = require("./jobs"); exports.PostJobArgs = _jobs.PostJobArgs; exports.PostJobFromLCOVArgs = _jobs.PostJobFromLCOVArgs; exports.PostJobResponse = _jobs.PostJobResponse; function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } var Coveralls = /*#__PURE__*/function () { function Coveralls(token, hostname) { if (hostname === void 0) { hostname = "coveralls.io"; } _defineProperty(this, "token", void 0); _defineProperty(this, "hostname", void 0); this.token = token; this.hostname = hostname; } var _proto = Coveralls.prototype; _proto.getPath = function getPath(path) { return "https://" + this.hostname + "/api" + path; }; _proto.fetch = function fetch(path, method, args) { return (0, _crossFetchJson["default"])(this.getPath(path), { method: method, headers: { authorization: "token " + this.token }, body: args ? (0, _stringifyJsonObject["default"])(args) : undefined }); }; _proto.createRepo = function createRepo(repo) { return this.fetch("/repos", "POST", { repo: repo }); }; _proto.getRepo = function getRepo(service, user, name) { return this.fetch("/repos/" + service + "/" + user + "/" + name, "GET"); }; _proto.updateRepo = function updateRepo(service, user, name, args) { return this.fetch("/repos/" + service + "/" + user + "/" + name, "PUT", args); }; _proto.postJob = /*#__PURE__*/function () { var _postJob = _asyncToGenerator(function* (service, user, name, args) { var _this = this; return (0, _jobs.getJobBody)(service, user, name, args, this).then(function (body) { var form = new _formData["default"](); form.append("json", (0, _stringifyJsonObject["default"])(body)); return new Promise(function (resolve) { form.submit(_this.getPath("/v1/jobs"), function (err, res) { if (err) { console.error(err); } var data = ""; res.on("data", function (chunk) { data += chunk; }); res.on("end", function () { resolve((0, _parseJsonObject.parseJSONObject)(data)); }); }); }); }); }); function postJob(_x, _x2, _x3, _x4) { return _postJob.apply(this, arguments); } return postJob; }(); return Coveralls; }(); exports["default"] = Coveralls;