UNPKG

6.68 kBJavaScriptView Raw
1/* eslint-disable */
2"use strict";
3
4Object.defineProperty(exports, "__esModule", {
5 value: true
6});
7exports.default = install;
8
9var _utilNpm = require("@pagedip/util-npm");
10
11var _utilResolvePackage = require("@pagedip/util-resolve-package");
12
13function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }
14
15function _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; }
16
17function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }
18
19function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); }
20
21function _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
22
23function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
24
25function 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); } }
26
27function _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); }); }; }
28
29function formatPackageName(pkg) {
30 if (typeof pkg !== "string" || !pkg) {
31 throw new Error("Expecting non-empty string for package name.");
32 }
33
34 if (!_utilResolvePackage.isPath.test(pkg) && pkg.substr(0, 9) !== "@pagedip/") {
35 pkg = "@pagedip/" + pkg;
36 }
37
38 return pkg;
39}
40
41function install(_x, _x2) {
42 return _install.apply(this, arguments);
43}
44
45function _install() {
46 _install = _asyncToGenerator(function* (pkgs, opts) {
47 if (!Array.isArray(pkgs)) pkgs = pkgs == null ? [] : [pkgs];
48 opts = opts || {};
49 pkgs = pkgs.map(formatPackageName);
50
51 if (opts.tag) {
52 pkgs = pkgs.map(function (p) {
53 return p + "@" + opts.tag;
54 });
55 }
56
57 if (opts.logger) opts.logger.debug("Installing packages %s", pkgs);
58
59 var _ref = yield (0, _utilNpm.npmCommand)(["prefix", "-g"], {
60 buffer: true
61 }),
62 _ref2 = _slicedToArray(_ref, 1),
63 globalPrefix = _ref2[0];
64
65 yield (0, _utilNpm.npmInstall)(pkgs.concat("-g"), {
66 env: _objectSpread({}, process.env, {
67 PREFIX: globalPrefix.trim()
68 })
69 });
70 });
71 return _install.apply(this, arguments);
72}
73
74module.exports = exports.default;
75//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbnN0YWxsLmpzIl0sIm5hbWVzIjpbImZvcm1hdFBhY2thZ2VOYW1lIiwicGtnIiwiRXJyb3IiLCJpc1BhdGgiLCJ0ZXN0Iiwic3Vic3RyIiwiaW5zdGFsbCIsInBrZ3MiLCJvcHRzIiwiQXJyYXkiLCJpc0FycmF5IiwibWFwIiwidGFnIiwicCIsImxvZ2dlciIsImRlYnVnIiwiYnVmZmVyIiwiZ2xvYmFsUHJlZml4IiwiY29uY2F0IiwiZW52IiwicHJvY2VzcyIsIlBSRUZJWCIsInRyaW0iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7O0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVBLFNBQVNBLGlCQUFULENBQTJCQyxHQUEzQixFQUFnQztBQUM5QixNQUFJLE9BQU9BLEdBQVAsS0FBZSxRQUFmLElBQTJCLENBQUNBLEdBQWhDLEVBQXFDO0FBQ25DLFVBQU0sSUFBSUMsS0FBSixDQUFVLDhDQUFWLENBQU47QUFDRDs7QUFFRCxNQUFJLENBQUNDLDJCQUFPQyxJQUFQLENBQVlILEdBQVosQ0FBRCxJQUFxQkEsR0FBRyxDQUFDSSxNQUFKLENBQVcsQ0FBWCxFQUFjLENBQWQsTUFBcUIsV0FBOUMsRUFBMkQ7QUFDekRKLElBQUFBLEdBQUcsR0FBRyxjQUFjQSxHQUFwQjtBQUNEOztBQUVELFNBQU9BLEdBQVA7QUFDRDs7U0FFNkJLLE87Ozs7OytCQUFmLFdBQXVCQyxJQUF2QixFQUE2QkMsSUFBN0IsRUFBbUM7QUFDaEQsUUFBSSxDQUFDQyxLQUFLLENBQUNDLE9BQU4sQ0FBY0gsSUFBZCxDQUFMLEVBQTBCQSxJQUFJLEdBQUdBLElBQUksSUFBSSxJQUFSLEdBQWUsRUFBZixHQUFvQixDQUFFQSxJQUFGLENBQTNCO0FBRTFCQyxJQUFBQSxJQUFJLEdBQUdBLElBQUksSUFBSSxFQUFmO0FBQ0FELElBQUFBLElBQUksR0FBR0EsSUFBSSxDQUFDSSxHQUFMLENBQVNYLGlCQUFULENBQVA7O0FBRUEsUUFBSVEsSUFBSSxDQUFDSSxHQUFULEVBQWM7QUFDWkwsTUFBQUEsSUFBSSxHQUFHQSxJQUFJLENBQUNJLEdBQUwsQ0FBUyxVQUFDRSxDQUFEO0FBQUEsZUFBT0EsQ0FBQyxHQUFHLEdBQUosR0FBVUwsSUFBSSxDQUFDSSxHQUF0QjtBQUFBLE9BQVQsQ0FBUDtBQUNEOztBQUVELFFBQUlKLElBQUksQ0FBQ00sTUFBVCxFQUFpQk4sSUFBSSxDQUFDTSxNQUFMLENBQVlDLEtBQVosQ0FBa0Isd0JBQWxCLEVBQTRDUixJQUE1Qzs7QUFWK0IscUJBWW5CLHlCQUFXLENBQUMsUUFBRCxFQUFVLElBQVYsQ0FBWCxFQUE0QjtBQUFFUyxNQUFBQSxNQUFNLEVBQUU7QUFBVixLQUE1QixDQVptQjtBQUFBO0FBQUEsUUFZekNDLFlBWnlDOztBQWNoRCxVQUFNLHlCQUFXVixJQUFJLENBQUNXLE1BQUwsQ0FBWSxJQUFaLENBQVgsRUFBOEI7QUFDbENDLE1BQUFBLEdBQUcsb0JBQ0VDLE9BQU8sQ0FBQ0QsR0FEVjtBQUVERSxRQUFBQSxNQUFNLEVBQUVKLFlBQVksQ0FBQ0ssSUFBYjtBQUZQO0FBRCtCLEtBQTlCLENBQU47QUFNRCxHIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtucG1JbnN0YWxsLCBucG1Db21tYW5kfSBmcm9tIFwiQHBhZ2VkaXAvdXRpbC1ucG1cIjtcbmltcG9ydCB7aXNQYXRofSBmcm9tIFwiQHBhZ2VkaXAvdXRpbC1yZXNvbHZlLXBhY2thZ2VcIjtcblxuZnVuY3Rpb24gZm9ybWF0UGFja2FnZU5hbWUocGtnKSB7XG4gIGlmICh0eXBlb2YgcGtnICE9PSBcInN0cmluZ1wiIHx8ICFwa2cpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJFeHBlY3Rpbmcgbm9uLWVtcHR5IHN0cmluZyBmb3IgcGFja2FnZSBuYW1lLlwiKTtcbiAgfVxuXG4gIGlmICghaXNQYXRoLnRlc3QocGtnKSAmJiBwa2cuc3Vic3RyKDAsIDkpICE9PSBcIkBwYWdlZGlwL1wiKSB7XG4gICAgcGtnID0gXCJAcGFnZWRpcC9cIiArIHBrZztcbiAgfVxuXG4gIHJldHVybiBwa2c7XG59XG5cbmV4cG9ydCBkZWZhdWx0IGFzeW5jIGZ1bmN0aW9uIGluc3RhbGwocGtncywgb3B0cykge1xuICBpZiAoIUFycmF5LmlzQXJyYXkocGtncykpIHBrZ3MgPSBwa2dzID09IG51bGwgPyBbXSA6IFsgcGtncyBdO1xuXG4gIG9wdHMgPSBvcHRzIHx8IHt9O1xuICBwa2dzID0gcGtncy5tYXAoZm9ybWF0UGFja2FnZU5hbWUpO1xuXG4gIGlmIChvcHRzLnRhZykge1xuICAgIHBrZ3MgPSBwa2dzLm1hcCgocCkgPT4gcCArIFwiQFwiICsgb3B0cy50YWcpO1xuICB9XG5cbiAgaWYgKG9wdHMubG9nZ2VyKSBvcHRzLmxvZ2dlci5kZWJ1ZyhcIkluc3RhbGxpbmcgcGFja2FnZXMgJXNcIiwgcGtncyk7XG5cbiAgY29uc3QgW2dsb2JhbFByZWZpeF0gPSBhd2FpdCBucG1Db21tYW5kKFtcInByZWZpeFwiLFwiLWdcIl0sIHsgYnVmZmVyOiB0cnVlIH0pO1xuXG4gIGF3YWl0IG5wbUluc3RhbGwocGtncy5jb25jYXQoXCItZ1wiKSwge1xuICAgIGVudjoge1xuICAgICAgLi4ucHJvY2Vzcy5lbnYsXG4gICAgICBQUkVGSVg6IGdsb2JhbFByZWZpeC50cmltKClcbiAgICB9XG4gIH0pO1xufVxuIl19
\No newline at end of file