JezK
Edit File: create.js
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); var _typeof = require("@babel/runtime/helpers/typeof"); Object.defineProperty(exports, "__esModule", { value: true }); exports.coerceCreatePackageName = coerceCreatePackageName; exports.hasWrapper = hasWrapper; exports.parsePackageName = parsePackageName; exports.run = run; exports.setFlags = setFlags; function _regenerator() { var data = _interopRequireDefault(require("@babel/runtime/regenerator")); _regenerator = function _regenerator() { return data; }; return data; } function _toArray2() { var data = _interopRequireDefault(require("@babel/runtime/helpers/toArray")); _toArray2 = function _toArray2() { return data; }; return data; } function _asyncToGenerator2() { var data = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")); _asyncToGenerator2 = function _asyncToGenerator2() { return data; }; return data; } function _defineProperty2() { var data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); _defineProperty2 = function _defineProperty2() { return data; }; return data; } function _errors() { var data = require("../../errors.js"); _errors = function _errors() { return data; }; return data; } function child() { var data = _interopRequireWildcard(require("../../util/child.js")); child = function child() { return data; }; return data; } function _executeLifecycleScript() { var data = require("../../util/execute-lifecycle-script"); _executeLifecycleScript = function _executeLifecycleScript() { return data; }; return data; } function fs() { var data = _interopRequireWildcard(require("../../util/fs.js")); fs = function fs() { return data; }; return data; } function _global() { var data = require("./global.js"); _global = function _global() { return data; }; return data; } function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2()["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } var path = require('path'); function setFlags(commander) { commander.description('Creates new projects from any create-* starter kits.'); } function hasWrapper(commander, args) { return true; } function parsePackageName(str) { if (str.charAt(0) === '/') { throw new Error("Name should not start with \"/\", got \"".concat(str, "\"")); } if (str.charAt(0) === '.') { throw new Error("Name should not start with \".\", got \"".concat(str, "\"")); } var parts = str.split('/'); var isScoped = str.charAt(0) === '@'; if (isScoped && parts[0] === '@') { throw new Error("Scope should not be empty, got \"".concat(str, "\"")); } var scope = isScoped ? parts[0] : ''; var name = parts[isScoped ? 1 : 0] || ''; var path = parts.slice(isScoped ? 2 : 1).join('/'); var fullName = [scope, name].filter(Boolean).join('/'); var full = [scope, name, path].filter(Boolean).join('/'); return { fullName: fullName, name: name, scope: scope, path: path, full: full }; } function coerceCreatePackageName(str) { var pkgNameObj = parsePackageName(str); var coercedName = pkgNameObj.name !== '' ? "create-".concat(pkgNameObj.name) : "create"; var coercedPkgNameObj = _objectSpread(_objectSpread({}, pkgNameObj), {}, { name: coercedName, fullName: [pkgNameObj.scope, coercedName].filter(Boolean).join('/'), full: [pkgNameObj.scope, coercedName, pkgNameObj.path].filter(Boolean).join('/') }); return coercedPkgNameObj; } function run(_x, _x2, _x3, _x4, _x5) { return _run.apply(this, arguments); } function _run() { _run = (0, _asyncToGenerator2()["default"])( /*#__PURE__*/_regenerator()["default"].mark(function _callee(config, reporter, commander, flags, args) { var _args, builderName, rest, _coerceCreatePackageN, packageName, commandName, linkLoc, binFolder, command, env; return _regenerator()["default"].wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: _args = (0, _toArray2()["default"])(args), builderName = _args[0], rest = _args.slice(1); if (builderName) { _context.next = 3; break; } throw new (_errors().MessageError)(reporter.lang('invalidPackageName')); case 3: _coerceCreatePackageN = coerceCreatePackageName(builderName), packageName = _coerceCreatePackageN.fullName, commandName = _coerceCreatePackageN.name; linkLoc = path.join(config.linkFolder, commandName); _context.next = 7; return fs().exists(linkLoc); case 7: if (!_context.sent) { _context.next = 11; break; } reporter.info(reporter.lang('linkUsing', packageName)); _context.next = 13; break; case 11: _context.next = 13; return (0, _global().run)(config, reporter, commander, {}, ['add', packageName]); case 13: _context.next = 15; return (0, _global().getBinFolder)(config, {}); case 15: binFolder = _context.sent; command = path.resolve(binFolder, commandName); _context.next = 19; return (0, _executeLifecycleScript().makeEnv)('create', config.cwd, config); case 19: env = _context.sent; _context.next = 22; return child().spawn(command, rest, { stdio: "inherit", shell: true, env: env }); case 22: case "end": return _context.stop(); } }, _callee); })); return _run.apply(this, arguments); } //# sourceMappingURL=create.js.map