{"version":3,"sources":["../../../node_modules/isexe/windows.js","../../../node_modules/isexe/mode.js","../../../node_modules/isexe/index.js","../../../node_modules/which/which.js","../../../node_modules/path-key/index.js","../../../node_modules/cross-spawn/lib/util/resolveCommand.js","../../../node_modules/cross-spawn/lib/util/escape.js","../../../node_modules/shebang-regex/index.js","../../../node_modules/shebang-command/index.js","../../../node_modules/cross-spawn/lib/util/readShebang.js","../../../node_modules/cross-spawn/lib/parse.js","../../../node_modules/cross-spawn/lib/enoent.js","../../../node_modules/cross-spawn/index.js","../../../node_modules/strip-final-newline/index.js","../../../node_modules/npm-run-path/index.js","../../../node_modules/mimic-fn/index.js","../../../node_modules/onetime/index.js","../../../node_modules/human-signals/src/core.js","../../../node_modules/human-signals/src/realtime.js","../../../node_modules/human-signals/src/signals.js","../../../node_modules/human-signals/src/main.js","../../../node_modules/execa/lib/error.js","../../../node_modules/execa/lib/stdio.js","../../../node_modules/signal-exit/signals.js","../../../node_modules/signal-exit/index.js","../../../node_modules/execa/lib/kill.js","../../../node_modules/is-stream/index.js","../../../node_modules/get-stream/buffer-stream.js","../../../node_modules/get-stream/index.js","../../../node_modules/merge-stream/index.js","../../../node_modules/execa/lib/stream.js","../../../node_modules/execa/lib/promise.js","../../../node_modules/execa/lib/command.js","../../../node_modules/execa/index.js","../src/index.ts"],"sourcesContent":["module.exports = isexe\nisexe.sync = sync\n\nvar fs = require('fs')\n\nfunction checkPathExt (path, options) {\n  var pathext = options.pathExt !== undefined ?\n    options.pathExt : process.env.PATHEXT\n\n  if (!pathext) {\n    return true\n  }\n\n  pathext = pathext.split(';')\n  if (pathext.indexOf('') !== -1) {\n    return true\n  }\n  for (var i = 0; i < pathext.length; i++) {\n    var p = pathext[i].toLowerCase()\n    if (p && path.substr(-p.length).toLowerCase() === p) {\n      return true\n    }\n  }\n  return false\n}\n\nfunction checkStat (stat, path, options) {\n  if (!stat.isSymbolicLink() && !stat.isFile()) {\n    return false\n  }\n  return checkPathExt(path, options)\n}\n\nfunction isexe (path, options, cb) {\n  fs.stat(path, function (er, stat) {\n    cb(er, er ? false : checkStat(stat, path, options))\n  })\n}\n\nfunction sync (path, options) {\n  return checkStat(fs.statSync(path), path, options)\n}\n","module.exports = isexe\nisexe.sync = sync\n\nvar fs = require('fs')\n\nfunction isexe (path, options, cb) {\n  fs.stat(path, function (er, stat) {\n    cb(er, er ? false : checkStat(stat, options))\n  })\n}\n\nfunction sync (path, options) {\n  return checkStat(fs.statSync(path), options)\n}\n\nfunction checkStat (stat, options) {\n  return stat.isFile() && checkMode(stat, options)\n}\n\nfunction checkMode (stat, options) {\n  var mod = stat.mode\n  var uid = stat.uid\n  var gid = stat.gid\n\n  var myUid = options.uid !== undefined ?\n    options.uid : process.getuid && process.getuid()\n  var myGid = options.gid !== undefined ?\n    options.gid : process.getgid && process.getgid()\n\n  var u = parseInt('100', 8)\n  var g = parseInt('010', 8)\n  var o = parseInt('001', 8)\n  var ug = u | g\n\n  var ret = (mod & o) ||\n    (mod & g) && gid === myGid ||\n    (mod & u) && uid === myUid ||\n    (mod & ug) && myUid === 0\n\n  return ret\n}\n","var fs = require('fs')\nvar core\nif (process.platform === 'win32' || global.TESTING_WINDOWS) {\n  core = require('./windows.js')\n} else {\n  core = require('./mode.js')\n}\n\nmodule.exports = isexe\nisexe.sync = sync\n\nfunction isexe (path, options, cb) {\n  if (typeof options === 'function') {\n    cb = options\n    options = {}\n  }\n\n  if (!cb) {\n    if (typeof Promise !== 'function') {\n      throw new TypeError('callback not provided')\n    }\n\n    return new Promise(function (resolve, reject) {\n      isexe(path, options || {}, function (er, is) {\n        if (er) {\n          reject(er)\n        } else {\n          resolve(is)\n        }\n      })\n    })\n  }\n\n  core(path, options || {}, function (er, is) {\n    // ignore EACCES because that just means we aren't allowed to run it\n    if (er) {\n      if (er.code === 'EACCES' || options && options.ignoreErrors) {\n        er = null\n        is = false\n      }\n    }\n    cb(er, is)\n  })\n}\n\nfunction sync (path, options) {\n  // my kingdom for a filtered catch\n  try {\n    return core.sync(path, options || {})\n  } catch (er) {\n    if (options && options.ignoreErrors || er.code === 'EACCES') {\n      return false\n    } else {\n      throw er\n    }\n  }\n}\n","const isWindows = process.platform === 'win32' ||\n    process.env.OSTYPE === 'cygwin' ||\n    process.env.OSTYPE === 'msys'\n\nconst path = require('path')\nconst COLON = isWindows ? ';' : ':'\nconst isexe = require('isexe')\n\nconst getNotFoundError = (cmd) =>\n  Object.assign(new Error(`not found: ${cmd}`), { code: 'ENOENT' })\n\nconst getPathInfo = (cmd, opt) => {\n  const colon = opt.colon || COLON\n\n  // If it has a slash, then we don't bother searching the pathenv.\n  // just check the file itself, and that's it.\n  const pathEnv = cmd.match(/\\//) || isWindows && cmd.match(/\\\\/) ? ['']\n    : (\n      [\n        // windows always checks the cwd first\n        ...(isWindows ? [process.cwd()] : []),\n        ...(opt.path || process.env.PATH ||\n          /* istanbul ignore next: very unusual */ '').split(colon),\n      ]\n    )\n  const pathExtExe = isWindows\n    ? opt.pathExt || process.env.PATHEXT || '.EXE;.CMD;.BAT;.COM'\n    : ''\n  const pathExt = isWindows ? pathExtExe.split(colon) : ['']\n\n  if (isWindows) {\n    if (cmd.indexOf('.') !== -1 && pathExt[0] !== '')\n      pathExt.unshift('')\n  }\n\n  return {\n    pathEnv,\n    pathExt,\n    pathExtExe,\n  }\n}\n\nconst which = (cmd, opt, cb) => {\n  if (typeof opt === 'function') {\n    cb = opt\n    opt = {}\n  }\n  if (!opt)\n    opt = {}\n\n  const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt)\n  const found = []\n\n  const step = i => new Promise((resolve, reject) => {\n    if (i === pathEnv.length)\n      return opt.all && found.length ? resolve(found)\n        : reject(getNotFoundError(cmd))\n\n    const ppRaw = pathEnv[i]\n    const pathPart = /^\".*\"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw\n\n    const pCmd = path.join(pathPart, cmd)\n    const p = !pathPart && /^\\.[\\\\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd\n      : pCmd\n\n    resolve(subStep(p, i, 0))\n  })\n\n  const subStep = (p, i, ii) => new Promise((resolve, reject) => {\n    if (ii === pathExt.length)\n      return resolve(step(i + 1))\n    const ext = pathExt[ii]\n    isexe(p + ext, { pathExt: pathExtExe }, (er, is) => {\n      if (!er && is) {\n        if (opt.all)\n          found.push(p + ext)\n        else\n          return resolve(p + ext)\n      }\n      return resolve(subStep(p, i, ii + 1))\n    })\n  })\n\n  return cb ? step(0).then(res => cb(null, res), cb) : step(0)\n}\n\nconst whichSync = (cmd, opt) => {\n  opt = opt || {}\n\n  const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt)\n  const found = []\n\n  for (let i = 0; i < pathEnv.length; i ++) {\n    const ppRaw = pathEnv[i]\n    const pathPart = /^\".*\"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw\n\n    const pCmd = path.join(pathPart, cmd)\n    const p = !pathPart && /^\\.[\\\\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd\n      : pCmd\n\n    for (let j = 0; j < pathExt.length; j ++) {\n      const cur = p + pathExt[j]\n      try {\n        const is = isexe.sync(cur, { pathExt: pathExtExe })\n        if (is) {\n          if (opt.all)\n            found.push(cur)\n          else\n            return cur\n        }\n      } catch (ex) {}\n    }\n  }\n\n  if (opt.all && found.length)\n    return found\n\n  if (opt.nothrow)\n    return null\n\n  throw getNotFoundError(cmd)\n}\n\nmodule.exports = which\nwhich.sync = whichSync\n","'use strict';\n\nconst pathKey = (options = {}) => {\n\tconst environment = options.env || process.env;\n\tconst platform = options.platform || process.platform;\n\n\tif (platform !== 'win32') {\n\t\treturn 'PATH';\n\t}\n\n\treturn Object.keys(environment).reverse().find(key => key.toUpperCase() === 'PATH') || 'Path';\n};\n\nmodule.exports = pathKey;\n// TODO: Remove this for the next major release\nmodule.exports.default = pathKey;\n","'use strict';\n\nconst path = require('path');\nconst which = require('which');\nconst getPathKey = require('path-key');\n\nfunction resolveCommandAttempt(parsed, withoutPathExt) {\n    const env = parsed.options.env || process.env;\n    const cwd = process.cwd();\n    const hasCustomCwd = parsed.options.cwd != null;\n    // Worker threads do not have process.chdir()\n    const shouldSwitchCwd = hasCustomCwd && process.chdir !== undefined && !process.chdir.disabled;\n\n    // If a custom `cwd` was specified, we need to change the process cwd\n    // because `which` will do stat calls but does not support a custom cwd\n    if (shouldSwitchCwd) {\n        try {\n            process.chdir(parsed.options.cwd);\n        } catch (err) {\n            /* Empty */\n        }\n    }\n\n    let resolved;\n\n    try {\n        resolved = which.sync(parsed.command, {\n            path: env[getPathKey({ env })],\n            pathExt: withoutPathExt ? path.delimiter : undefined,\n        });\n    } catch (e) {\n        /* Empty */\n    } finally {\n        if (shouldSwitchCwd) {\n            process.chdir(cwd);\n        }\n    }\n\n    // If we successfully resolved, ensure that an absolute path is returned\n    // Note that when a custom `cwd` was used, we need to resolve to an absolute path based on it\n    if (resolved) {\n        resolved = path.resolve(hasCustomCwd ? parsed.options.cwd : '', resolved);\n    }\n\n    return resolved;\n}\n\nfunction resolveCommand(parsed) {\n    return resolveCommandAttempt(parsed) || resolveCommandAttempt(parsed, true);\n}\n\nmodule.exports = resolveCommand;\n","'use strict';\n\n// See http://www.robvanderwoude.com/escapechars.php\nconst metaCharsRegExp = /([()\\][%!^\"`<>&|;, *?])/g;\n\nfunction escapeCommand(arg) {\n    // Escape meta chars\n    arg = arg.replace(metaCharsRegExp, '^$1');\n\n    return arg;\n}\n\nfunction escapeArgument(arg, doubleEscapeMetaChars) {\n    // Convert to string\n    arg = `${arg}`;\n\n    // Algorithm below is based on https://qntm.org/cmd\n\n    // Sequence of backslashes followed by a double quote:\n    // double up all the backslashes and escape the double quote\n    arg = arg.replace(/(\\\\*)\"/g, '$1$1\\\\\"');\n\n    // Sequence of backslashes followed by the end of the string\n    // (which will become a double quote later):\n    // double up all the backslashes\n    arg = arg.replace(/(\\\\*)$/, '$1$1');\n\n    // All other backslashes occur literally\n\n    // Quote the whole thing:\n    arg = `\"${arg}\"`;\n\n    // Escape meta chars\n    arg = arg.replace(metaCharsRegExp, '^$1');\n\n    // Double escape meta chars if necessary\n    if (doubleEscapeMetaChars) {\n        arg = arg.replace(metaCharsRegExp, '^$1');\n    }\n\n    return arg;\n}\n\nmodule.exports.command = escapeCommand;\nmodule.exports.argument = escapeArgument;\n","'use strict';\nmodule.exports = /^#!(.*)/;\n","'use strict';\nconst shebangRegex = require('shebang-regex');\n\nmodule.exports = (string = '') => {\n\tconst match = string.match(shebangRegex);\n\n\tif (!match) {\n\t\treturn null;\n\t}\n\n\tconst [path, argument] = match[0].replace(/#! ?/, '').split(' ');\n\tconst binary = path.split('/').pop();\n\n\tif (binary === 'env') {\n\t\treturn argument;\n\t}\n\n\treturn argument ? `${binary} ${argument}` : binary;\n};\n","'use strict';\n\nconst fs = require('fs');\nconst shebangCommand = require('shebang-command');\n\nfunction readShebang(command) {\n    // Read the first 150 bytes from the file\n    const size = 150;\n    const buffer = Buffer.alloc(size);\n\n    let fd;\n\n    try {\n        fd = fs.openSync(command, 'r');\n        fs.readSync(fd, buffer, 0, size, 0);\n        fs.closeSync(fd);\n    } catch (e) { /* Empty */ }\n\n    // Attempt to extract shebang (null is returned if not a shebang)\n    return shebangCommand(buffer.toString());\n}\n\nmodule.exports = readShebang;\n","'use strict';\n\nconst path = require('path');\nconst resolveCommand = require('./util/resolveCommand');\nconst escape = require('./util/escape');\nconst readShebang = require('./util/readShebang');\n\nconst isWin = process.platform === 'win32';\nconst isExecutableRegExp = /\\.(?:com|exe)$/i;\nconst isCmdShimRegExp = /node_modules[\\\\/].bin[\\\\/][^\\\\/]+\\.cmd$/i;\n\nfunction detectShebang(parsed) {\n    parsed.file = resolveCommand(parsed);\n\n    const shebang = parsed.file && readShebang(parsed.file);\n\n    if (shebang) {\n        parsed.args.unshift(parsed.file);\n        parsed.command = shebang;\n\n        return resolveCommand(parsed);\n    }\n\n    return parsed.file;\n}\n\nfunction parseNonShell(parsed) {\n    if (!isWin) {\n        return parsed;\n    }\n\n    // Detect & add support for shebangs\n    const commandFile = detectShebang(parsed);\n\n    // We don't need a shell if the command filename is an executable\n    const needsShell = !isExecutableRegExp.test(commandFile);\n\n    // If a shell is required, use cmd.exe and take care of escaping everything correctly\n    // Note that `forceShell` is an hidden option used only in tests\n    if (parsed.options.forceShell || needsShell) {\n        // Need to double escape meta chars if the command is a cmd-shim located in `node_modules/.bin/`\n        // The cmd-shim simply calls execute the package bin file with NodeJS, proxying any argument\n        // Because the escape of metachars with ^ gets interpreted when the cmd.exe is first called,\n        // we need to double escape them\n        const needsDoubleEscapeMetaChars = isCmdShimRegExp.test(commandFile);\n\n        // Normalize posix paths into OS compatible paths (e.g.: foo/bar -> foo\\bar)\n        // This is necessary otherwise it will always fail with ENOENT in those cases\n        parsed.command = path.normalize(parsed.command);\n\n        // Escape command & arguments\n        parsed.command = escape.command(parsed.command);\n        parsed.args = parsed.args.map((arg) => escape.argument(arg, needsDoubleEscapeMetaChars));\n\n        const shellCommand = [parsed.command].concat(parsed.args).join(' ');\n\n        parsed.args = ['/d', '/s', '/c', `\"${shellCommand}\"`];\n        parsed.command = process.env.comspec || 'cmd.exe';\n        parsed.options.windowsVerbatimArguments = true; // Tell node's spawn that the arguments are already escaped\n    }\n\n    return parsed;\n}\n\nfunction parse(command, args, options) {\n    // Normalize arguments, similar to nodejs\n    if (args && !Array.isArray(args)) {\n        options = args;\n        args = null;\n    }\n\n    args = args ? args.slice(0) : []; // Clone array to avoid changing the original\n    options = Object.assign({}, options); // Clone object to avoid changing the original\n\n    // Build our parsed object\n    const parsed = {\n        command,\n        args,\n        options,\n        file: undefined,\n        original: {\n            command,\n            args,\n        },\n    };\n\n    // Delegate further parsing to shell or non-shell\n    return options.shell ? parsed : parseNonShell(parsed);\n}\n\nmodule.exports = parse;\n","'use strict';\n\nconst isWin = process.platform === 'win32';\n\nfunction notFoundError(original, syscall) {\n    return Object.assign(new Error(`${syscall} ${original.command} ENOENT`), {\n        code: 'ENOENT',\n        errno: 'ENOENT',\n        syscall: `${syscall} ${original.command}`,\n        path: original.command,\n        spawnargs: original.args,\n    });\n}\n\nfunction hookChildProcess(cp, parsed) {\n    if (!isWin) {\n        return;\n    }\n\n    const originalEmit = cp.emit;\n\n    cp.emit = function (name, arg1) {\n        // If emitting \"exit\" event and exit code is 1, we need to check if\n        // the command exists and emit an \"error\" instead\n        // See https://github.com/IndigoUnited/node-cross-spawn/issues/16\n        if (name === 'exit') {\n            const err = verifyENOENT(arg1, parsed, 'spawn');\n\n            if (err) {\n                return originalEmit.call(cp, 'error', err);\n            }\n        }\n\n        return originalEmit.apply(cp, arguments); // eslint-disable-line prefer-rest-params\n    };\n}\n\nfunction verifyENOENT(status, parsed) {\n    if (isWin && status === 1 && !parsed.file) {\n        return notFoundError(parsed.original, 'spawn');\n    }\n\n    return null;\n}\n\nfunction verifyENOENTSync(status, parsed) {\n    if (isWin && status === 1 && !parsed.file) {\n        return notFoundError(parsed.original, 'spawnSync');\n    }\n\n    return null;\n}\n\nmodule.exports = {\n    hookChildProcess,\n    verifyENOENT,\n    verifyENOENTSync,\n    notFoundError,\n};\n","'use strict';\n\nconst cp = require('child_process');\nconst parse = require('./lib/parse');\nconst enoent = require('./lib/enoent');\n\nfunction spawn(command, args, options) {\n    // Parse the arguments\n    const parsed = parse(command, args, options);\n\n    // Spawn the child process\n    const spawned = cp.spawn(parsed.command, parsed.args, parsed.options);\n\n    // Hook into child process \"exit\" event to emit an error if the command\n    // does not exists, see: https://github.com/IndigoUnited/node-cross-spawn/issues/16\n    enoent.hookChildProcess(spawned, parsed);\n\n    return spawned;\n}\n\nfunction spawnSync(command, args, options) {\n    // Parse the arguments\n    const parsed = parse(command, args, options);\n\n    // Spawn the child process\n    const result = cp.spawnSync(parsed.command, parsed.args, parsed.options);\n\n    // Analyze if the command does not exist, see: https://github.com/IndigoUnited/node-cross-spawn/issues/16\n    result.error = result.error || enoent.verifyENOENTSync(result.status, parsed);\n\n    return result;\n}\n\nmodule.exports = spawn;\nmodule.exports.spawn = spawn;\nmodule.exports.sync = spawnSync;\n\nmodule.exports._parse = parse;\nmodule.exports._enoent = enoent;\n","'use strict';\n\nmodule.exports = input => {\n\tconst LF = typeof input === 'string' ? '\\n' : '\\n'.charCodeAt();\n\tconst CR = typeof input === 'string' ? '\\r' : '\\r'.charCodeAt();\n\n\tif (input[input.length - 1] === LF) {\n\t\tinput = input.slice(0, input.length - 1);\n\t}\n\n\tif (input[input.length - 1] === CR) {\n\t\tinput = input.slice(0, input.length - 1);\n\t}\n\n\treturn input;\n};\n","'use strict';\nconst path = require('path');\nconst pathKey = require('path-key');\n\nconst npmRunPath = options => {\n\toptions = {\n\t\tcwd: process.cwd(),\n\t\tpath: process.env[pathKey()],\n\t\texecPath: process.execPath,\n\t\t...options\n\t};\n\n\tlet previous;\n\tlet cwdPath = path.resolve(options.cwd);\n\tconst result = [];\n\n\twhile (previous !== cwdPath) {\n\t\tresult.push(path.join(cwdPath, 'node_modules/.bin'));\n\t\tprevious = cwdPath;\n\t\tcwdPath = path.resolve(cwdPath, '..');\n\t}\n\n\t// Ensure the running `node` binary is used\n\tconst execPathDir = path.resolve(options.cwd, options.execPath, '..');\n\tresult.push(execPathDir);\n\n\treturn result.concat(options.path).join(path.delimiter);\n};\n\nmodule.exports = npmRunPath;\n// TODO: Remove this for the next major release\nmodule.exports.default = npmRunPath;\n\nmodule.exports.env = options => {\n\toptions = {\n\t\tenv: process.env,\n\t\t...options\n\t};\n\n\tconst env = {...options.env};\n\tconst path = pathKey({env});\n\n\toptions.path = env[path];\n\tenv[path] = module.exports(options);\n\n\treturn env;\n};\n","'use strict';\n\nconst mimicFn = (to, from) => {\n\tfor (const prop of Reflect.ownKeys(from)) {\n\t\tObject.defineProperty(to, prop, Object.getOwnPropertyDescriptor(from, prop));\n\t}\n\n\treturn to;\n};\n\nmodule.exports = mimicFn;\n// TODO: Remove this for the next major release\nmodule.exports.default = mimicFn;\n","'use strict';\nconst mimicFn = require('mimic-fn');\n\nconst calledFunctions = new WeakMap();\n\nconst onetime = (function_, options = {}) => {\n\tif (typeof function_ !== 'function') {\n\t\tthrow new TypeError('Expected a function');\n\t}\n\n\tlet returnValue;\n\tlet callCount = 0;\n\tconst functionName = function_.displayName || function_.name || '<anonymous>';\n\n\tconst onetime = function (...arguments_) {\n\t\tcalledFunctions.set(onetime, ++callCount);\n\n\t\tif (callCount === 1) {\n\t\t\treturnValue = function_.apply(this, arguments_);\n\t\t\tfunction_ = null;\n\t\t} else if (options.throw === true) {\n\t\t\tthrow new Error(`Function \\`${functionName}\\` can only be called once`);\n\t\t}\n\n\t\treturn returnValue;\n\t};\n\n\tmimicFn(onetime, function_);\n\tcalledFunctions.set(onetime, callCount);\n\n\treturn onetime;\n};\n\nmodule.exports = onetime;\n// TODO: Remove this for the next major release\nmodule.exports.default = onetime;\n\nmodule.exports.callCount = function_ => {\n\tif (!calledFunctions.has(function_)) {\n\t\tthrow new Error(`The given function \\`${function_.name}\\` is not wrapped by the \\`onetime\\` package`);\n\t}\n\n\treturn calledFunctions.get(function_);\n};\n","/* eslint-disable max-lines */\n// List of known process signals with information about them\nexport const SIGNALS = [\n  {\n    name: 'SIGHUP',\n    number: 1,\n    action: 'terminate',\n    description: 'Terminal closed',\n    standard: 'posix',\n  },\n  {\n    name: 'SIGINT',\n    number: 2,\n    action: 'terminate',\n    description: 'User interruption with CTRL-C',\n    standard: 'ansi',\n  },\n  {\n    name: 'SIGQUIT',\n    number: 3,\n    action: 'core',\n    description: 'User interruption with CTRL-\\\\',\n    standard: 'posix',\n  },\n  {\n    name: 'SIGILL',\n    number: 4,\n    action: 'core',\n    description: 'Invalid machine instruction',\n    standard: 'ansi',\n  },\n  {\n    name: 'SIGTRAP',\n    number: 5,\n    action: 'core',\n    description: 'Debugger breakpoint',\n    standard: 'posix',\n  },\n  {\n    name: 'SIGABRT',\n    number: 6,\n    action: 'core',\n    description: 'Aborted',\n    standard: 'ansi',\n  },\n  {\n    name: 'SIGIOT',\n    number: 6,\n    action: 'core',\n    description: 'Aborted',\n    standard: 'bsd',\n  },\n  {\n    name: 'SIGBUS',\n    number: 7,\n    action: 'core',\n    description:\n      'Bus error due to misaligned, non-existing address or paging error',\n    standard: 'bsd',\n  },\n  {\n    name: 'SIGEMT',\n    number: 7,\n    action: 'terminate',\n    description: 'Command should be emulated but is not implemented',\n    standard: 'other',\n  },\n  {\n    name: 'SIGFPE',\n    number: 8,\n    action: 'core',\n    description: 'Floating point arithmetic error',\n    standard: 'ansi',\n  },\n  {\n    name: 'SIGKILL',\n    number: 9,\n    action: 'terminate',\n    description: 'Forced termination',\n    standard: 'posix',\n    forced: true,\n  },\n  {\n    name: 'SIGUSR1',\n    number: 10,\n    action: 'terminate',\n    description: 'Application-specific signal',\n    standard: 'posix',\n  },\n  {\n    name: 'SIGSEGV',\n    number: 11,\n    action: 'core',\n    description: 'Segmentation fault',\n    standard: 'ansi',\n  },\n  {\n    name: 'SIGUSR2',\n    number: 12,\n    action: 'terminate',\n    description: 'Application-specific signal',\n    standard: 'posix',\n  },\n  {\n    name: 'SIGPIPE',\n    number: 13,\n    action: 'terminate',\n    description: 'Broken pipe or socket',\n    standard: 'posix',\n  },\n  {\n    name: 'SIGALRM',\n    number: 14,\n    action: 'terminate',\n    description: 'Timeout or timer',\n    standard: 'posix',\n  },\n  {\n    name: 'SIGTERM',\n    number: 15,\n    action: 'terminate',\n    description: 'Termination',\n    standard: 'ansi',\n  },\n  {\n    name: 'SIGSTKFLT',\n    number: 16,\n    action: 'terminate',\n    description: 'Stack is empty or overflowed',\n    standard: 'other',\n  },\n  {\n    name: 'SIGCHLD',\n    number: 17,\n    action: 'ignore',\n    description: 'Child process terminated, paused or unpaused',\n    standard: 'posix',\n  },\n  {\n    name: 'SIGCLD',\n    number: 17,\n    action: 'ignore',\n    description: 'Child process terminated, paused or unpaused',\n    standard: 'other',\n  },\n  {\n    name: 'SIGCONT',\n    number: 18,\n    action: 'unpause',\n    description: 'Unpaused',\n    standard: 'posix',\n    forced: true,\n  },\n  {\n    name: 'SIGSTOP',\n    number: 19,\n    action: 'pause',\n    description: 'Paused',\n    standard: 'posix',\n    forced: true,\n  },\n  {\n    name: 'SIGTSTP',\n    number: 20,\n    action: 'pause',\n    description: 'Paused using CTRL-Z or \"suspend\"',\n    standard: 'posix',\n  },\n  {\n    name: 'SIGTTIN',\n    number: 21,\n    action: 'pause',\n    description: 'Background process cannot read terminal input',\n    standard: 'posix',\n  },\n  {\n    name: 'SIGBREAK',\n    number: 21,\n    action: 'terminate',\n    description: 'User interruption with CTRL-BREAK',\n    standard: 'other',\n  },\n  {\n    name: 'SIGTTOU',\n    number: 22,\n    action: 'pause',\n    description: 'Background process cannot write to terminal output',\n    standard: 'posix',\n  },\n  {\n    name: 'SIGURG',\n    number: 23,\n    action: 'ignore',\n    description: 'Socket received out-of-band data',\n    standard: 'bsd',\n  },\n  {\n    name: 'SIGXCPU',\n    number: 24,\n    action: 'core',\n    description: 'Process timed out',\n    standard: 'bsd',\n  },\n  {\n    name: 'SIGXFSZ',\n    number: 25,\n    action: 'core',\n    description: 'File too big',\n    standard: 'bsd',\n  },\n  {\n    name: 'SIGVTALRM',\n    number: 26,\n    action: 'terminate',\n    description: 'Timeout or timer',\n    standard: 'bsd',\n  },\n  {\n    name: 'SIGPROF',\n    number: 27,\n    action: 'terminate',\n    description: 'Timeout or timer',\n    standard: 'bsd',\n  },\n  {\n    name: 'SIGWINCH',\n    number: 28,\n    action: 'ignore',\n    description: 'Terminal window size changed',\n    standard: 'bsd',\n  },\n  {\n    name: 'SIGIO',\n    number: 29,\n    action: 'terminate',\n    description: 'I/O is available',\n    standard: 'other',\n  },\n  {\n    name: 'SIGPOLL',\n    number: 29,\n    action: 'terminate',\n    description: 'Watched event',\n    standard: 'other',\n  },\n  {\n    name: 'SIGINFO',\n    number: 29,\n    action: 'ignore',\n    description: 'Request for process information',\n    standard: 'other',\n  },\n  {\n    name: 'SIGPWR',\n    number: 30,\n    action: 'terminate',\n    description: 'Device running out of power',\n    standard: 'systemv',\n  },\n  {\n    name: 'SIGSYS',\n    number: 31,\n    action: 'core',\n    description: 'Invalid system call',\n    standard: 'other',\n  },\n  {\n    name: 'SIGUNUSED',\n    number: 31,\n    action: 'terminate',\n    description: 'Invalid system call',\n    standard: 'other',\n  },\n]\n/* eslint-enable max-lines */\n","// List of realtime signals with information about them\nexport const getRealtimeSignals = function() {\n  const length = SIGRTMAX - SIGRTMIN + 1\n  return Array.from({ length }, getRealtimeSignal)\n}\n\nconst getRealtimeSignal = function(value, index) {\n  return {\n    name: `SIGRT${index + 1}`,\n    number: SIGRTMIN + index,\n    action: 'terminate',\n    description: 'Application-specific signal (realtime)',\n    standard: 'posix',\n  }\n}\n\nconst SIGRTMIN = 34\nexport const SIGRTMAX = 64\n","import { constants } from 'os'\n\nimport { SIGNALS } from './core.js'\nimport { getRealtimeSignals } from './realtime.js'\n\n// Retrieve list of know signals (including realtime) with information about\n// them\nexport const getSignals = function() {\n  const realtimeSignals = getRealtimeSignals()\n  const signals = [...SIGNALS, ...realtimeSignals].map(normalizeSignal)\n  return signals\n}\n\n// Normalize signal:\n//  - `number`: signal numbers are OS-specific. This is taken into account by\n//    `os.constants.signals`. However we provide a default `number` since some\n//     signals are not defined for some OS.\n//  - `forced`: set default to `false`\n//  - `supported`: set value\nconst normalizeSignal = function({\n  name,\n  number: defaultNumber,\n  description,\n  action,\n  forced = false,\n  standard,\n}) {\n  const {\n    signals: { [name]: constantSignal },\n  } = constants\n  const supported = constantSignal !== undefined\n  const number = supported ? constantSignal : defaultNumber\n  return { name, number, description, supported, action, forced, standard }\n}\n","import { constants } from 'os'\n\nimport { getSignals } from './signals.js'\nimport { SIGRTMAX } from './realtime.js'\n\n// Retrieve `signalsByName`, an object mapping signal name to signal properties.\n// We make sure the object is sorted by `number`.\nconst getSignalsByName = function() {\n  const signals = getSignals()\n  return signals.reduce(getSignalByName, {})\n}\n\nconst getSignalByName = function(\n  signalByNameMemo,\n  { name, number, description, supported, action, forced, standard },\n) {\n  return {\n    ...signalByNameMemo,\n    [name]: { name, number, description, supported, action, forced, standard },\n  }\n}\n\nexport const signalsByName = getSignalsByName()\n\n// Retrieve `signalsByNumber`, an object mapping signal number to signal\n// properties.\n// We make sure the object is sorted by `number`.\nconst getSignalsByNumber = function() {\n  const signals = getSignals()\n  const length = SIGRTMAX + 1\n  const signalsA = Array.from({ length }, (value, number) =>\n    getSignalByNumber(number, signals),\n  )\n  return Object.assign({}, ...signalsA)\n}\n\nconst getSignalByNumber = function(number, signals) {\n  const signal = findSignalByNumber(number, signals)\n\n  if (signal === undefined) {\n    return {}\n  }\n\n  const { name, description, supported, action, forced, standard } = signal\n  return {\n    [number]: {\n      name,\n      number,\n      description,\n      supported,\n      action,\n      forced,\n      standard,\n    },\n  }\n}\n\n// Several signals might end up sharing the same number because of OS-specific\n// numbers, in which case those prevail.\nconst findSignalByNumber = function(number, signals) {\n  const signal = signals.find(({ name }) => constants.signals[name] === number)\n\n  if (signal !== undefined) {\n    return signal\n  }\n\n  return signals.find(signalA => signalA.number === number)\n}\n\nexport const signalsByNumber = getSignalsByNumber()\n","'use strict';\nconst {signalsByName} = require('human-signals');\n\nconst getErrorPrefix = ({timedOut, timeout, errorCode, signal, signalDescription, exitCode, isCanceled}) => {\n\tif (timedOut) {\n\t\treturn `timed out after ${timeout} milliseconds`;\n\t}\n\n\tif (isCanceled) {\n\t\treturn 'was canceled';\n\t}\n\n\tif (errorCode !== undefined) {\n\t\treturn `failed with ${errorCode}`;\n\t}\n\n\tif (signal !== undefined) {\n\t\treturn `was killed with ${signal} (${signalDescription})`;\n\t}\n\n\tif (exitCode !== undefined) {\n\t\treturn `failed with exit code ${exitCode}`;\n\t}\n\n\treturn 'failed';\n};\n\nconst makeError = ({\n\tstdout,\n\tstderr,\n\tall,\n\terror,\n\tsignal,\n\texitCode,\n\tcommand,\n\tescapedCommand,\n\ttimedOut,\n\tisCanceled,\n\tkilled,\n\tparsed: {options: {timeout}}\n}) => {\n\t// `signal` and `exitCode` emitted on `spawned.on('exit')` event can be `null`.\n\t// We normalize them to `undefined`\n\texitCode = exitCode === null ? undefined : exitCode;\n\tsignal = signal === null ? undefined : signal;\n\tconst signalDescription = signal === undefined ? undefined : signalsByName[signal].description;\n\n\tconst errorCode = error && error.code;\n\n\tconst prefix = getErrorPrefix({timedOut, timeout, errorCode, signal, signalDescription, exitCode, isCanceled});\n\tconst execaMessage = `Command ${prefix}: ${command}`;\n\tconst isError = Object.prototype.toString.call(error) === '[object Error]';\n\tconst shortMessage = isError ? `${execaMessage}\\n${error.message}` : execaMessage;\n\tconst message = [shortMessage, stderr, stdout].filter(Boolean).join('\\n');\n\n\tif (isError) {\n\t\terror.originalMessage = error.message;\n\t\terror.message = message;\n\t} else {\n\t\terror = new Error(message);\n\t}\n\n\terror.shortMessage = shortMessage;\n\terror.command = command;\n\terror.escapedCommand = escapedCommand;\n\terror.exitCode = exitCode;\n\terror.signal = signal;\n\terror.signalDescription = signalDescription;\n\terror.stdout = stdout;\n\terror.stderr = stderr;\n\n\tif (all !== undefined) {\n\t\terror.all = all;\n\t}\n\n\tif ('bufferedData' in error) {\n\t\tdelete error.bufferedData;\n\t}\n\n\terror.failed = true;\n\terror.timedOut = Boolean(timedOut);\n\terror.isCanceled = isCanceled;\n\terror.killed = killed && !timedOut;\n\n\treturn error;\n};\n\nmodule.exports = makeError;\n","'use strict';\nconst aliases = ['stdin', 'stdout', 'stderr'];\n\nconst hasAlias = options => aliases.some(alias => options[alias] !== undefined);\n\nconst normalizeStdio = options => {\n\tif (!options) {\n\t\treturn;\n\t}\n\n\tconst {stdio} = options;\n\n\tif (stdio === undefined) {\n\t\treturn aliases.map(alias => options[alias]);\n\t}\n\n\tif (hasAlias(options)) {\n\t\tthrow new Error(`It's not possible to provide \\`stdio\\` in combination with one of ${aliases.map(alias => `\\`${alias}\\``).join(', ')}`);\n\t}\n\n\tif (typeof stdio === 'string') {\n\t\treturn stdio;\n\t}\n\n\tif (!Array.isArray(stdio)) {\n\t\tthrow new TypeError(`Expected \\`stdio\\` to be of type \\`string\\` or \\`Array\\`, got \\`${typeof stdio}\\``);\n\t}\n\n\tconst length = Math.max(stdio.length, aliases.length);\n\treturn Array.from({length}, (value, index) => stdio[index]);\n};\n\nmodule.exports = normalizeStdio;\n\n// `ipc` is pushed unless it is already present\nmodule.exports.node = options => {\n\tconst stdio = normalizeStdio(options);\n\n\tif (stdio === 'ipc') {\n\t\treturn 'ipc';\n\t}\n\n\tif (stdio === undefined || typeof stdio === 'string') {\n\t\treturn [stdio, stdio, stdio, 'ipc'];\n\t}\n\n\tif (stdio.includes('ipc')) {\n\t\treturn stdio;\n\t}\n\n\treturn [...stdio, 'ipc'];\n};\n","// This is not the set of all possible signals.\n//\n// It IS, however, the set of all signals that trigger\n// an exit on either Linux or BSD systems.  Linux is a\n// superset of the signal names supported on BSD, and\n// the unknown signals just fail to register, so we can\n// catch that easily enough.\n//\n// Don't bother with SIGKILL.  It's uncatchable, which\n// means that we can't fire any callbacks anyway.\n//\n// If a user does happen to register a handler on a non-\n// fatal signal like SIGWINCH or something, and then\n// exit, it'll end up firing `process.emit('exit')`, so\n// the handler will be fired anyway.\n//\n// SIGBUS, SIGFPE, SIGSEGV and SIGILL, when not raised\n// artificially, inherently leave the process in a\n// state from which it is not safe to try and enter JS\n// listeners.\nmodule.exports = [\n  'SIGABRT',\n  'SIGALRM',\n  'SIGHUP',\n  'SIGINT',\n  'SIGTERM'\n]\n\nif (process.platform !== 'win32') {\n  module.exports.push(\n    'SIGVTALRM',\n    'SIGXCPU',\n    'SIGXFSZ',\n    'SIGUSR2',\n    'SIGTRAP',\n    'SIGSYS',\n    'SIGQUIT',\n    'SIGIOT'\n    // should detect profiler and enable/disable accordingly.\n    // see #21\n    // 'SIGPROF'\n  )\n}\n\nif (process.platform === 'linux') {\n  module.exports.push(\n    'SIGIO',\n    'SIGPOLL',\n    'SIGPWR',\n    'SIGSTKFLT',\n    'SIGUNUSED'\n  )\n}\n","// Note: since nyc uses this module to output coverage, any lines\n// that are in the direct sync flow of nyc's outputCoverage are\n// ignored, since we can never get coverage for them.\n// grab a reference to node's real process object right away\nvar process = global.process\n\nconst processOk = function (process) {\n  return process &&\n    typeof process === 'object' &&\n    typeof process.removeListener === 'function' &&\n    typeof process.emit === 'function' &&\n    typeof process.reallyExit === 'function' &&\n    typeof process.listeners === 'function' &&\n    typeof process.kill === 'function' &&\n    typeof process.pid === 'number' &&\n    typeof process.on === 'function'\n}\n\n// some kind of non-node environment, just no-op\n/* istanbul ignore if */\nif (!processOk(process)) {\n  module.exports = function () {\n    return function () {}\n  }\n} else {\n  var assert = require('assert')\n  var signals = require('./signals.js')\n  var isWin = /^win/i.test(process.platform)\n\n  var EE = require('events')\n  /* istanbul ignore if */\n  if (typeof EE !== 'function') {\n    EE = EE.EventEmitter\n  }\n\n  var emitter\n  if (process.__signal_exit_emitter__) {\n    emitter = process.__signal_exit_emitter__\n  } else {\n    emitter = process.__signal_exit_emitter__ = new EE()\n    emitter.count = 0\n    emitter.emitted = {}\n  }\n\n  // Because this emitter is a global, we have to check to see if a\n  // previous version of this library failed to enable infinite listeners.\n  // I know what you're about to say.  But literally everything about\n  // signal-exit is a compromise with evil.  Get used to it.\n  if (!emitter.infinite) {\n    emitter.setMaxListeners(Infinity)\n    emitter.infinite = true\n  }\n\n  module.exports = function (cb, opts) {\n    /* istanbul ignore if */\n    if (!processOk(global.process)) {\n      return function () {}\n    }\n    assert.equal(typeof cb, 'function', 'a callback must be provided for exit handler')\n\n    if (loaded === false) {\n      load()\n    }\n\n    var ev = 'exit'\n    if (opts && opts.alwaysLast) {\n      ev = 'afterexit'\n    }\n\n    var remove = function () {\n      emitter.removeListener(ev, cb)\n      if (emitter.listeners('exit').length === 0 &&\n          emitter.listeners('afterexit').length === 0) {\n        unload()\n      }\n    }\n    emitter.on(ev, cb)\n\n    return remove\n  }\n\n  var unload = function unload () {\n    if (!loaded || !processOk(global.process)) {\n      return\n    }\n    loaded = false\n\n    signals.forEach(function (sig) {\n      try {\n        process.removeListener(sig, sigListeners[sig])\n      } catch (er) {}\n    })\n    process.emit = originalProcessEmit\n    process.reallyExit = originalProcessReallyExit\n    emitter.count -= 1\n  }\n  module.exports.unload = unload\n\n  var emit = function emit (event, code, signal) {\n    /* istanbul ignore if */\n    if (emitter.emitted[event]) {\n      return\n    }\n    emitter.emitted[event] = true\n    emitter.emit(event, code, signal)\n  }\n\n  // { <signal>: <listener fn>, ... }\n  var sigListeners = {}\n  signals.forEach(function (sig) {\n    sigListeners[sig] = function listener () {\n      /* istanbul ignore if */\n      if (!processOk(global.process)) {\n        return\n      }\n      // If there are no other listeners, an exit is coming!\n      // Simplest way: remove us and then re-send the signal.\n      // We know that this will kill the process, so we can\n      // safely emit now.\n      var listeners = process.listeners(sig)\n      if (listeners.length === emitter.count) {\n        unload()\n        emit('exit', null, sig)\n        /* istanbul ignore next */\n        emit('afterexit', null, sig)\n        /* istanbul ignore next */\n        if (isWin && sig === 'SIGHUP') {\n          // \"SIGHUP\" throws an `ENOSYS` error on Windows,\n          // so use a supported signal instead\n          sig = 'SIGINT'\n        }\n        /* istanbul ignore next */\n        process.kill(process.pid, sig)\n      }\n    }\n  })\n\n  module.exports.signals = function () {\n    return signals\n  }\n\n  var loaded = false\n\n  var load = function load () {\n    if (loaded || !processOk(global.process)) {\n      return\n    }\n    loaded = true\n\n    // This is the number of onSignalExit's that are in play.\n    // It's important so that we can count the correct number of\n    // listeners on signals, and don't wait for the other one to\n    // handle it instead of us.\n    emitter.count += 1\n\n    signals = signals.filter(function (sig) {\n      try {\n        process.on(sig, sigListeners[sig])\n        return true\n      } catch (er) {\n        return false\n      }\n    })\n\n    process.emit = processEmit\n    process.reallyExit = processReallyExit\n  }\n  module.exports.load = load\n\n  var originalProcessReallyExit = process.reallyExit\n  var processReallyExit = function processReallyExit (code) {\n    /* istanbul ignore if */\n    if (!processOk(global.process)) {\n      return\n    }\n    process.exitCode = code || /* istanbul ignore next */ 0\n    emit('exit', process.exitCode, null)\n    /* istanbul ignore next */\n    emit('afterexit', process.exitCode, null)\n    /* istanbul ignore next */\n    originalProcessReallyExit.call(process, process.exitCode)\n  }\n\n  var originalProcessEmit = process.emit\n  var processEmit = function processEmit (ev, arg) {\n    if (ev === 'exit' && processOk(global.process)) {\n      /* istanbul ignore else */\n      if (arg !== undefined) {\n        process.exitCode = arg\n      }\n      var ret = originalProcessEmit.apply(this, arguments)\n      /* istanbul ignore next */\n      emit('exit', process.exitCode, null)\n      /* istanbul ignore next */\n      emit('afterexit', process.exitCode, null)\n      /* istanbul ignore next */\n      return ret\n    } else {\n      return originalProcessEmit.apply(this, arguments)\n    }\n  }\n}\n","'use strict';\nconst os = require('os');\nconst onExit = require('signal-exit');\n\nconst DEFAULT_FORCE_KILL_TIMEOUT = 1000 * 5;\n\n// Monkey-patches `childProcess.kill()` to add `forceKillAfterTimeout` behavior\nconst spawnedKill = (kill, signal = 'SIGTERM', options = {}) => {\n\tconst killResult = kill(signal);\n\tsetKillTimeout(kill, signal, options, killResult);\n\treturn killResult;\n};\n\nconst setKillTimeout = (kill, signal, options, killResult) => {\n\tif (!shouldForceKill(signal, options, killResult)) {\n\t\treturn;\n\t}\n\n\tconst timeout = getForceKillAfterTimeout(options);\n\tconst t = setTimeout(() => {\n\t\tkill('SIGKILL');\n\t}, timeout);\n\n\t// Guarded because there's no `.unref()` when `execa` is used in the renderer\n\t// process in Electron. This cannot be tested since we don't run tests in\n\t// Electron.\n\t// istanbul ignore else\n\tif (t.unref) {\n\t\tt.unref();\n\t}\n};\n\nconst shouldForceKill = (signal, {forceKillAfterTimeout}, killResult) => {\n\treturn isSigterm(signal) && forceKillAfterTimeout !== false && killResult;\n};\n\nconst isSigterm = signal => {\n\treturn signal === os.constants.signals.SIGTERM ||\n\t\t(typeof signal === 'string' && signal.toUpperCase() === 'SIGTERM');\n};\n\nconst getForceKillAfterTimeout = ({forceKillAfterTimeout = true}) => {\n\tif (forceKillAfterTimeout === true) {\n\t\treturn DEFAULT_FORCE_KILL_TIMEOUT;\n\t}\n\n\tif (!Number.isFinite(forceKillAfterTimeout) || forceKillAfterTimeout < 0) {\n\t\tthrow new TypeError(`Expected the \\`forceKillAfterTimeout\\` option to be a non-negative integer, got \\`${forceKillAfterTimeout}\\` (${typeof forceKillAfterTimeout})`);\n\t}\n\n\treturn forceKillAfterTimeout;\n};\n\n// `childProcess.cancel()`\nconst spawnedCancel = (spawned, context) => {\n\tconst killResult = spawned.kill();\n\n\tif (killResult) {\n\t\tcontext.isCanceled = true;\n\t}\n};\n\nconst timeoutKill = (spawned, signal, reject) => {\n\tspawned.kill(signal);\n\treject(Object.assign(new Error('Timed out'), {timedOut: true, signal}));\n};\n\n// `timeout` option handling\nconst setupTimeout = (spawned, {timeout, killSignal = 'SIGTERM'}, spawnedPromise) => {\n\tif (timeout === 0 || timeout === undefined) {\n\t\treturn spawnedPromise;\n\t}\n\n\tlet timeoutId;\n\tconst timeoutPromise = new Promise((resolve, reject) => {\n\t\ttimeoutId = setTimeout(() => {\n\t\t\ttimeoutKill(spawned, killSignal, reject);\n\t\t}, timeout);\n\t});\n\n\tconst safeSpawnedPromise = spawnedPromise.finally(() => {\n\t\tclearTimeout(timeoutId);\n\t});\n\n\treturn Promise.race([timeoutPromise, safeSpawnedPromise]);\n};\n\nconst validateTimeout = ({timeout}) => {\n\tif (timeout !== undefined && (!Number.isFinite(timeout) || timeout < 0)) {\n\t\tthrow new TypeError(`Expected the \\`timeout\\` option to be a non-negative integer, got \\`${timeout}\\` (${typeof timeout})`);\n\t}\n};\n\n// `cleanup` option handling\nconst setExitHandler = async (spawned, {cleanup, detached}, timedPromise) => {\n\tif (!cleanup || detached) {\n\t\treturn timedPromise;\n\t}\n\n\tconst removeExitHandler = onExit(() => {\n\t\tspawned.kill();\n\t});\n\n\treturn timedPromise.finally(() => {\n\t\tremoveExitHandler();\n\t});\n};\n\nmodule.exports = {\n\tspawnedKill,\n\tspawnedCancel,\n\tsetupTimeout,\n\tvalidateTimeout,\n\tsetExitHandler\n};\n","'use strict';\n\nconst isStream = stream =>\n\tstream !== null &&\n\ttypeof stream === 'object' &&\n\ttypeof stream.pipe === 'function';\n\nisStream.writable = stream =>\n\tisStream(stream) &&\n\tstream.writable !== false &&\n\ttypeof stream._write === 'function' &&\n\ttypeof stream._writableState === 'object';\n\nisStream.readable = stream =>\n\tisStream(stream) &&\n\tstream.readable !== false &&\n\ttypeof stream._read === 'function' &&\n\ttypeof stream._readableState === 'object';\n\nisStream.duplex = stream =>\n\tisStream.writable(stream) &&\n\tisStream.readable(stream);\n\nisStream.transform = stream =>\n\tisStream.duplex(stream) &&\n\ttypeof stream._transform === 'function';\n\nmodule.exports = isStream;\n","'use strict';\nconst {PassThrough: PassThroughStream} = require('stream');\n\nmodule.exports = options => {\n\toptions = {...options};\n\n\tconst {array} = options;\n\tlet {encoding} = options;\n\tconst isBuffer = encoding === 'buffer';\n\tlet objectMode = false;\n\n\tif (array) {\n\t\tobjectMode = !(encoding || isBuffer);\n\t} else {\n\t\tencoding = encoding || 'utf8';\n\t}\n\n\tif (isBuffer) {\n\t\tencoding = null;\n\t}\n\n\tconst stream = new PassThroughStream({objectMode});\n\n\tif (encoding) {\n\t\tstream.setEncoding(encoding);\n\t}\n\n\tlet length = 0;\n\tconst chunks = [];\n\n\tstream.on('data', chunk => {\n\t\tchunks.push(chunk);\n\n\t\tif (objectMode) {\n\t\t\tlength = chunks.length;\n\t\t} else {\n\t\t\tlength += chunk.length;\n\t\t}\n\t});\n\n\tstream.getBufferedValue = () => {\n\t\tif (array) {\n\t\t\treturn chunks;\n\t\t}\n\n\t\treturn isBuffer ? Buffer.concat(chunks, length) : chunks.join('');\n\t};\n\n\tstream.getBufferedLength = () => length;\n\n\treturn stream;\n};\n","'use strict';\nconst {constants: BufferConstants} = require('buffer');\nconst stream = require('stream');\nconst {promisify} = require('util');\nconst bufferStream = require('./buffer-stream');\n\nconst streamPipelinePromisified = promisify(stream.pipeline);\n\nclass MaxBufferError extends Error {\n\tconstructor() {\n\t\tsuper('maxBuffer exceeded');\n\t\tthis.name = 'MaxBufferError';\n\t}\n}\n\nasync function getStream(inputStream, options) {\n\tif (!inputStream) {\n\t\tthrow new Error('Expected a stream');\n\t}\n\n\toptions = {\n\t\tmaxBuffer: Infinity,\n\t\t...options\n\t};\n\n\tconst {maxBuffer} = options;\n\tconst stream = bufferStream(options);\n\n\tawait new Promise((resolve, reject) => {\n\t\tconst rejectPromise = error => {\n\t\t\t// Don't retrieve an oversized buffer.\n\t\t\tif (error && stream.getBufferedLength() <= BufferConstants.MAX_LENGTH) {\n\t\t\t\terror.bufferedData = stream.getBufferedValue();\n\t\t\t}\n\n\t\t\treject(error);\n\t\t};\n\n\t\t(async () => {\n\t\t\ttry {\n\t\t\t\tawait streamPipelinePromisified(inputStream, stream);\n\t\t\t\tresolve();\n\t\t\t} catch (error) {\n\t\t\t\trejectPromise(error);\n\t\t\t}\n\t\t})();\n\n\t\tstream.on('data', () => {\n\t\t\tif (stream.getBufferedLength() > maxBuffer) {\n\t\t\t\trejectPromise(new MaxBufferError());\n\t\t\t}\n\t\t});\n\t});\n\n\treturn stream.getBufferedValue();\n}\n\nmodule.exports = getStream;\nmodule.exports.buffer = (stream, options) => getStream(stream, {...options, encoding: 'buffer'});\nmodule.exports.array = (stream, options) => getStream(stream, {...options, array: true});\nmodule.exports.MaxBufferError = MaxBufferError;\n","'use strict';\n\nconst { PassThrough } = require('stream');\n\nmodule.exports = function (/*streams...*/) {\n  var sources = []\n  var output  = new PassThrough({objectMode: true})\n\n  output.setMaxListeners(0)\n\n  output.add = add\n  output.isEmpty = isEmpty\n\n  output.on('unpipe', remove)\n\n  Array.prototype.slice.call(arguments).forEach(add)\n\n  return output\n\n  function add (source) {\n    if (Array.isArray(source)) {\n      source.forEach(add)\n      return this\n    }\n\n    sources.push(source);\n    source.once('end', remove.bind(null, source))\n    source.once('error', output.emit.bind(output, 'error'))\n    source.pipe(output, {end: false})\n    return this\n  }\n\n  function isEmpty () {\n    return sources.length == 0;\n  }\n\n  function remove (source) {\n    sources = sources.filter(function (it) { return it !== source })\n    if (!sources.length && output.readable) { output.end() }\n  }\n}\n","'use strict';\nconst isStream = require('is-stream');\nconst getStream = require('get-stream');\nconst mergeStream = require('merge-stream');\n\n// `input` option\nconst handleInput = (spawned, input) => {\n\t// Checking for stdin is workaround for https://github.com/nodejs/node/issues/26852\n\t// @todo remove `|| spawned.stdin === undefined` once we drop support for Node.js <=12.2.0\n\tif (input === undefined || spawned.stdin === undefined) {\n\t\treturn;\n\t}\n\n\tif (isStream(input)) {\n\t\tinput.pipe(spawned.stdin);\n\t} else {\n\t\tspawned.stdin.end(input);\n\t}\n};\n\n// `all` interleaves `stdout` and `stderr`\nconst makeAllStream = (spawned, {all}) => {\n\tif (!all || (!spawned.stdout && !spawned.stderr)) {\n\t\treturn;\n\t}\n\n\tconst mixed = mergeStream();\n\n\tif (spawned.stdout) {\n\t\tmixed.add(spawned.stdout);\n\t}\n\n\tif (spawned.stderr) {\n\t\tmixed.add(spawned.stderr);\n\t}\n\n\treturn mixed;\n};\n\n// On failure, `result.stdout|stderr|all` should contain the currently buffered stream\nconst getBufferedData = async (stream, streamPromise) => {\n\tif (!stream) {\n\t\treturn;\n\t}\n\n\tstream.destroy();\n\n\ttry {\n\t\treturn await streamPromise;\n\t} catch (error) {\n\t\treturn error.bufferedData;\n\t}\n};\n\nconst getStreamPromise = (stream, {encoding, buffer, maxBuffer}) => {\n\tif (!stream || !buffer) {\n\t\treturn;\n\t}\n\n\tif (encoding) {\n\t\treturn getStream(stream, {encoding, maxBuffer});\n\t}\n\n\treturn getStream.buffer(stream, {maxBuffer});\n};\n\n// Retrieve result of child process: exit code, signal, error, streams (stdout/stderr/all)\nconst getSpawnedResult = async ({stdout, stderr, all}, {encoding, buffer, maxBuffer}, processDone) => {\n\tconst stdoutPromise = getStreamPromise(stdout, {encoding, buffer, maxBuffer});\n\tconst stderrPromise = getStreamPromise(stderr, {encoding, buffer, maxBuffer});\n\tconst allPromise = getStreamPromise(all, {encoding, buffer, maxBuffer: maxBuffer * 2});\n\n\ttry {\n\t\treturn await Promise.all([processDone, stdoutPromise, stderrPromise, allPromise]);\n\t} catch (error) {\n\t\treturn Promise.all([\n\t\t\t{error, signal: error.signal, timedOut: error.timedOut},\n\t\t\tgetBufferedData(stdout, stdoutPromise),\n\t\t\tgetBufferedData(stderr, stderrPromise),\n\t\t\tgetBufferedData(all, allPromise)\n\t\t]);\n\t}\n};\n\nconst validateInputSync = ({input}) => {\n\tif (isStream(input)) {\n\t\tthrow new TypeError('The `input` option cannot be a stream in sync mode');\n\t}\n};\n\nmodule.exports = {\n\thandleInput,\n\tmakeAllStream,\n\tgetSpawnedResult,\n\tvalidateInputSync\n};\n\n","'use strict';\n\nconst nativePromisePrototype = (async () => {})().constructor.prototype;\nconst descriptors = ['then', 'catch', 'finally'].map(property => [\n\tproperty,\n\tReflect.getOwnPropertyDescriptor(nativePromisePrototype, property)\n]);\n\n// The return value is a mixin of `childProcess` and `Promise`\nconst mergePromise = (spawned, promise) => {\n\tfor (const [property, descriptor] of descriptors) {\n\t\t// Starting the main `promise` is deferred to avoid consuming streams\n\t\tconst value = typeof promise === 'function' ?\n\t\t\t(...args) => Reflect.apply(descriptor.value, promise(), args) :\n\t\t\tdescriptor.value.bind(promise);\n\n\t\tReflect.defineProperty(spawned, property, {...descriptor, value});\n\t}\n\n\treturn spawned;\n};\n\n// Use promises instead of `child_process` events\nconst getSpawnedPromise = spawned => {\n\treturn new Promise((resolve, reject) => {\n\t\tspawned.on('exit', (exitCode, signal) => {\n\t\t\tresolve({exitCode, signal});\n\t\t});\n\n\t\tspawned.on('error', error => {\n\t\t\treject(error);\n\t\t});\n\n\t\tif (spawned.stdin) {\n\t\t\tspawned.stdin.on('error', error => {\n\t\t\t\treject(error);\n\t\t\t});\n\t\t}\n\t});\n};\n\nmodule.exports = {\n\tmergePromise,\n\tgetSpawnedPromise\n};\n\n","'use strict';\nconst normalizeArgs = (file, args = []) => {\n\tif (!Array.isArray(args)) {\n\t\treturn [file];\n\t}\n\n\treturn [file, ...args];\n};\n\nconst NO_ESCAPE_REGEXP = /^[\\w.-]+$/;\nconst DOUBLE_QUOTES_REGEXP = /\"/g;\n\nconst escapeArg = arg => {\n\tif (typeof arg !== 'string' || NO_ESCAPE_REGEXP.test(arg)) {\n\t\treturn arg;\n\t}\n\n\treturn `\"${arg.replace(DOUBLE_QUOTES_REGEXP, '\\\\\"')}\"`;\n};\n\nconst joinCommand = (file, args) => {\n\treturn normalizeArgs(file, args).join(' ');\n};\n\nconst getEscapedCommand = (file, args) => {\n\treturn normalizeArgs(file, args).map(arg => escapeArg(arg)).join(' ');\n};\n\nconst SPACES_REGEXP = / +/g;\n\n// Handle `execa.command()`\nconst parseCommand = command => {\n\tconst tokens = [];\n\tfor (const token of command.trim().split(SPACES_REGEXP)) {\n\t\t// Allow spaces to be escaped by a backslash if not meant as a delimiter\n\t\tconst previousToken = tokens[tokens.length - 1];\n\t\tif (previousToken && previousToken.endsWith('\\\\')) {\n\t\t\t// Merge previous token with current one\n\t\t\ttokens[tokens.length - 1] = `${previousToken.slice(0, -1)} ${token}`;\n\t\t} else {\n\t\t\ttokens.push(token);\n\t\t}\n\t}\n\n\treturn tokens;\n};\n\nmodule.exports = {\n\tjoinCommand,\n\tgetEscapedCommand,\n\tparseCommand\n};\n","'use strict';\nconst path = require('path');\nconst childProcess = require('child_process');\nconst crossSpawn = require('cross-spawn');\nconst stripFinalNewline = require('strip-final-newline');\nconst npmRunPath = require('npm-run-path');\nconst onetime = require('onetime');\nconst makeError = require('./lib/error');\nconst normalizeStdio = require('./lib/stdio');\nconst {spawnedKill, spawnedCancel, setupTimeout, validateTimeout, setExitHandler} = require('./lib/kill');\nconst {handleInput, getSpawnedResult, makeAllStream, validateInputSync} = require('./lib/stream');\nconst {mergePromise, getSpawnedPromise} = require('./lib/promise');\nconst {joinCommand, parseCommand, getEscapedCommand} = require('./lib/command');\n\nconst DEFAULT_MAX_BUFFER = 1000 * 1000 * 100;\n\nconst getEnv = ({env: envOption, extendEnv, preferLocal, localDir, execPath}) => {\n\tconst env = extendEnv ? {...process.env, ...envOption} : envOption;\n\n\tif (preferLocal) {\n\t\treturn npmRunPath.env({env, cwd: localDir, execPath});\n\t}\n\n\treturn env;\n};\n\nconst handleArguments = (file, args, options = {}) => {\n\tconst parsed = crossSpawn._parse(file, args, options);\n\tfile = parsed.command;\n\targs = parsed.args;\n\toptions = parsed.options;\n\n\toptions = {\n\t\tmaxBuffer: DEFAULT_MAX_BUFFER,\n\t\tbuffer: true,\n\t\tstripFinalNewline: true,\n\t\textendEnv: true,\n\t\tpreferLocal: false,\n\t\tlocalDir: options.cwd || process.cwd(),\n\t\texecPath: process.execPath,\n\t\tencoding: 'utf8',\n\t\treject: true,\n\t\tcleanup: true,\n\t\tall: false,\n\t\twindowsHide: true,\n\t\t...options\n\t};\n\n\toptions.env = getEnv(options);\n\n\toptions.stdio = normalizeStdio(options);\n\n\tif (process.platform === 'win32' && path.basename(file, '.exe') === 'cmd') {\n\t\t// #116\n\t\targs.unshift('/q');\n\t}\n\n\treturn {file, args, options, parsed};\n};\n\nconst handleOutput = (options, value, error) => {\n\tif (typeof value !== 'string' && !Buffer.isBuffer(value)) {\n\t\t// When `execa.sync()` errors, we normalize it to '' to mimic `execa()`\n\t\treturn error === undefined ? undefined : '';\n\t}\n\n\tif (options.stripFinalNewline) {\n\t\treturn stripFinalNewline(value);\n\t}\n\n\treturn value;\n};\n\nconst execa = (file, args, options) => {\n\tconst parsed = handleArguments(file, args, options);\n\tconst command = joinCommand(file, args);\n\tconst escapedCommand = getEscapedCommand(file, args);\n\n\tvalidateTimeout(parsed.options);\n\n\tlet spawned;\n\ttry {\n\t\tspawned = childProcess.spawn(parsed.file, parsed.args, parsed.options);\n\t} catch (error) {\n\t\t// Ensure the returned error is always both a promise and a child process\n\t\tconst dummySpawned = new childProcess.ChildProcess();\n\t\tconst errorPromise = Promise.reject(makeError({\n\t\t\terror,\n\t\t\tstdout: '',\n\t\t\tstderr: '',\n\t\t\tall: '',\n\t\t\tcommand,\n\t\t\tescapedCommand,\n\t\t\tparsed,\n\t\t\ttimedOut: false,\n\t\t\tisCanceled: false,\n\t\t\tkilled: false\n\t\t}));\n\t\treturn mergePromise(dummySpawned, errorPromise);\n\t}\n\n\tconst spawnedPromise = getSpawnedPromise(spawned);\n\tconst timedPromise = setupTimeout(spawned, parsed.options, spawnedPromise);\n\tconst processDone = setExitHandler(spawned, parsed.options, timedPromise);\n\n\tconst context = {isCanceled: false};\n\n\tspawned.kill = spawnedKill.bind(null, spawned.kill.bind(spawned));\n\tspawned.cancel = spawnedCancel.bind(null, spawned, context);\n\n\tconst handlePromise = async () => {\n\t\tconst [{error, exitCode, signal, timedOut}, stdoutResult, stderrResult, allResult] = await getSpawnedResult(spawned, parsed.options, processDone);\n\t\tconst stdout = handleOutput(parsed.options, stdoutResult);\n\t\tconst stderr = handleOutput(parsed.options, stderrResult);\n\t\tconst all = handleOutput(parsed.options, allResult);\n\n\t\tif (error || exitCode !== 0 || signal !== null) {\n\t\t\tconst returnedError = makeError({\n\t\t\t\terror,\n\t\t\t\texitCode,\n\t\t\t\tsignal,\n\t\t\t\tstdout,\n\t\t\t\tstderr,\n\t\t\t\tall,\n\t\t\t\tcommand,\n\t\t\t\tescapedCommand,\n\t\t\t\tparsed,\n\t\t\t\ttimedOut,\n\t\t\t\tisCanceled: context.isCanceled,\n\t\t\t\tkilled: spawned.killed\n\t\t\t});\n\n\t\t\tif (!parsed.options.reject) {\n\t\t\t\treturn returnedError;\n\t\t\t}\n\n\t\t\tthrow returnedError;\n\t\t}\n\n\t\treturn {\n\t\t\tcommand,\n\t\t\tescapedCommand,\n\t\t\texitCode: 0,\n\t\t\tstdout,\n\t\t\tstderr,\n\t\t\tall,\n\t\t\tfailed: false,\n\t\t\ttimedOut: false,\n\t\t\tisCanceled: false,\n\t\t\tkilled: false\n\t\t};\n\t};\n\n\tconst handlePromiseOnce = onetime(handlePromise);\n\n\thandleInput(spawned, parsed.options.input);\n\n\tspawned.all = makeAllStream(spawned, parsed.options);\n\n\treturn mergePromise(spawned, handlePromiseOnce);\n};\n\nmodule.exports = execa;\n\nmodule.exports.sync = (file, args, options) => {\n\tconst parsed = handleArguments(file, args, options);\n\tconst command = joinCommand(file, args);\n\tconst escapedCommand = getEscapedCommand(file, args);\n\n\tvalidateInputSync(parsed.options);\n\n\tlet result;\n\ttry {\n\t\tresult = childProcess.spawnSync(parsed.file, parsed.args, parsed.options);\n\t} catch (error) {\n\t\tthrow makeError({\n\t\t\terror,\n\t\t\tstdout: '',\n\t\t\tstderr: '',\n\t\t\tall: '',\n\t\t\tcommand,\n\t\t\tescapedCommand,\n\t\t\tparsed,\n\t\t\ttimedOut: false,\n\t\t\tisCanceled: false,\n\t\t\tkilled: false\n\t\t});\n\t}\n\n\tconst stdout = handleOutput(parsed.options, result.stdout, result.error);\n\tconst stderr = handleOutput(parsed.options, result.stderr, result.error);\n\n\tif (result.error || result.status !== 0 || result.signal !== null) {\n\t\tconst error = makeError({\n\t\t\tstdout,\n\t\t\tstderr,\n\t\t\terror: result.error,\n\t\t\tsignal: result.signal,\n\t\t\texitCode: result.status,\n\t\t\tcommand,\n\t\t\tescapedCommand,\n\t\t\tparsed,\n\t\t\ttimedOut: result.error && result.error.code === 'ETIMEDOUT',\n\t\t\tisCanceled: false,\n\t\t\tkilled: result.signal !== null\n\t\t});\n\n\t\tif (!parsed.options.reject) {\n\t\t\treturn error;\n\t\t}\n\n\t\tthrow error;\n\t}\n\n\treturn {\n\t\tcommand,\n\t\tescapedCommand,\n\t\texitCode: 0,\n\t\tstdout,\n\t\tstderr,\n\t\tfailed: false,\n\t\ttimedOut: false,\n\t\tisCanceled: false,\n\t\tkilled: false\n\t};\n};\n\nmodule.exports.command = (command, options) => {\n\tconst [file, ...args] = parseCommand(command);\n\treturn execa(file, args, options);\n};\n\nmodule.exports.commandSync = (command, options) => {\n\tconst [file, ...args] = parseCommand(command);\n\treturn execa.sync(file, args, options);\n};\n\nmodule.exports.node = (scriptPath, args, options = {}) => {\n\tif (args && !Array.isArray(args) && typeof args === 'object') {\n\t\toptions = args;\n\t\targs = [];\n\t}\n\n\tconst stdio = normalizeStdio.node(options);\n\tconst defaultExecArgv = process.execArgv.filter(arg => !arg.startsWith('--inspect'));\n\n\tconst {\n\t\tnodePath = process.execPath,\n\t\tnodeOptions = defaultExecArgv\n\t} = options;\n\n\treturn execa(\n\t\tnodePath,\n\t\t[\n\t\t\t...nodeOptions,\n\t\t\tscriptPath,\n\t\t\t...(Array.isArray(args) ? args : [])\n\t\t],\n\t\t{\n\t\t\t...options,\n\t\t\tstdin: undefined,\n\t\t\tstdout: undefined,\n\t\t\tstderr: undefined,\n\t\t\tstdio,\n\t\t\tshell: false\n\t\t}\n\t);\n};\n","#!/usr/bin/env node\n\nimport { Command } from 'commander';\nimport $ from \"execa\";\n\nconst GIT_REPO = \"https://github.com/1997roylee/create-t3-turbo.git\"\nconst program = new Command();\n\nprogram\n    .name('create-t3-turbo')\n    .description('CLI to create a new T3 APP with Turbo Monorepo')\n    .version('1.0.0');\n\n\nprogram\n    .argument('<app-name>', 'Name of the app')\n// .option('-s, --separator <char>');\n\nprogram.parse();\n\n// const options = program.opts();\n\n(async () => {\n    try {\n        const appName = program.args[0];\n        console.log('Downloading files...');\n        await $(`git clone --depth 1 ${GIT_REPO} ${appName}`);\n        await $(`npx rimraf ./.git`)\n        await $(`npx rimraf ./bin`)\n        console.log('The installation is done, this is ready to use !');\n    } catch (error) {\n        // Catch any error\n        console.warn(error);\n    }\n})();"],"mappings":"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","names":["path","onetime","SIGNALS","name","number","action","description","standard","forced","getRealtimeSignals","length","SIGRTMAX","SIGRTMIN","Array","from","getRealtimeSignal","value","index","name","number","action","description","standard","getSignals","realtimeSignals","signals","SIGNALS","map","normalizeSignal","name","number","defaultNumber","description","action","forced","standard","constantSignal","constants","supported","undefined","getSignalsByName","signals","reduce","getSignalByName","signalByNameMemo","name","number","description","supported","action","forced","standard","signalsByName","getSignalsByNumber","length","SIGRTMAX","signalsA","Array","from","value","getSignalByNumber","Object","assign","signal","findSignalByNumber","undefined","find","constants","signalA","signalsByNumber","require_signals","process","unload","emit","load","processReallyExit","processEmit","stream","$"]}