forked from rollup/rollup
/
rollup.map
1 lines (1 loc) · 111 KB
/
rollup.map
1
{"version":3,"file":"rollup","sources":["../node_modules/minimist/index.js","../src/utils/mergeOptions.ts","../node_modules/require-relative/index.js","../src/utils/path.ts","../src/utils/relativeId.ts","../node_modules/turbocolor/index.js","src/logging.ts","src/run/batchWarnings.ts","../node_modules/parse-ms/index.js","../node_modules/pretty-ms/index.js","src/sourceMappingUrl.ts","../node_modules/pretty-bytes/index.js","src/run/timings.ts","src/run/build.ts","src/run/loadConfigFile.ts","../node_modules/time-zone/index.js","../node_modules/date-time/index.js","../node_modules/signal-exit/signals.js","../node_modules/signal-exit/index.js","src/run/resetScreen.ts","src/run/watch.ts","src/run/index.ts","src/index.ts"],"sourcesContent":["module.exports = function (args, opts) {\n if (!opts) opts = {};\n \n var flags = { bools : {}, strings : {}, unknownFn: null };\n\n if (typeof opts['unknown'] === 'function') {\n flags.unknownFn = opts['unknown'];\n }\n\n if (typeof opts['boolean'] === 'boolean' && opts['boolean']) {\n flags.allBools = true;\n } else {\n [].concat(opts['boolean']).filter(Boolean).forEach(function (key) {\n flags.bools[key] = true;\n });\n }\n \n var aliases = {};\n Object.keys(opts.alias || {}).forEach(function (key) {\n aliases[key] = [].concat(opts.alias[key]);\n aliases[key].forEach(function (x) {\n aliases[x] = [key].concat(aliases[key].filter(function (y) {\n return x !== y;\n }));\n });\n });\n\n [].concat(opts.string).filter(Boolean).forEach(function (key) {\n flags.strings[key] = true;\n if (aliases[key]) {\n flags.strings[aliases[key]] = true;\n }\n });\n\n var defaults = opts['default'] || {};\n \n var argv = { _ : [] };\n Object.keys(flags.bools).forEach(function (key) {\n setArg(key, defaults[key] === undefined ? false : defaults[key]);\n });\n \n var notFlags = [];\n\n if (args.indexOf('--') !== -1) {\n notFlags = args.slice(args.indexOf('--')+1);\n args = args.slice(0, args.indexOf('--'));\n }\n\n function argDefined(key, arg) {\n return (flags.allBools && /^--[^=]+$/.test(arg)) ||\n flags.strings[key] || flags.bools[key] || aliases[key];\n }\n\n function setArg (key, val, arg) {\n if (arg && flags.unknownFn && !argDefined(key, arg)) {\n if (flags.unknownFn(arg) === false) return;\n }\n\n var value = !flags.strings[key] && isNumber(val)\n ? Number(val) : val\n ;\n setKey(argv, key.split('.'), value);\n \n (aliases[key] || []).forEach(function (x) {\n setKey(argv, x.split('.'), value);\n });\n }\n\n function setKey (obj, keys, value) {\n var o = obj;\n keys.slice(0,-1).forEach(function (key) {\n if (o[key] === undefined) o[key] = {};\n o = o[key];\n });\n\n var key = keys[keys.length - 1];\n if (o[key] === undefined || flags.bools[key] || typeof o[key] === 'boolean') {\n o[key] = value;\n }\n else if (Array.isArray(o[key])) {\n o[key].push(value);\n }\n else {\n o[key] = [ o[key], value ];\n }\n }\n \n function aliasIsBoolean(key) {\n return aliases[key].some(function (x) {\n return flags.bools[x];\n });\n }\n\n for (var i = 0; i < args.length; i++) {\n var arg = args[i];\n \n if (/^--.+=/.test(arg)) {\n // Using [\\s\\S] instead of . because js doesn't support the\n // 'dotall' regex modifier. See:\n // http://stackoverflow.com/a/1068308/13216\n var m = arg.match(/^--([^=]+)=([\\s\\S]*)$/);\n var key = m[1];\n var value = m[2];\n if (flags.bools[key]) {\n value = value !== 'false';\n }\n setArg(key, value, arg);\n }\n else if (/^--no-.+/.test(arg)) {\n var key = arg.match(/^--no-(.+)/)[1];\n setArg(key, false, arg);\n }\n else if (/^--.+/.test(arg)) {\n var key = arg.match(/^--(.+)/)[1];\n var next = args[i + 1];\n if (next !== undefined && !/^-/.test(next)\n && !flags.bools[key]\n && !flags.allBools\n && (aliases[key] ? !aliasIsBoolean(key) : true)) {\n setArg(key, next, arg);\n i++;\n }\n else if (/^(true|false)$/.test(next)) {\n setArg(key, next === 'true', arg);\n i++;\n }\n else {\n setArg(key, flags.strings[key] ? '' : true, arg);\n }\n }\n else if (/^-[^-]+/.test(arg)) {\n var letters = arg.slice(1,-1).split('');\n \n var broken = false;\n for (var j = 0; j < letters.length; j++) {\n var next = arg.slice(j+2);\n \n if (next === '-') {\n setArg(letters[j], next, arg)\n continue;\n }\n \n if (/[A-Za-z]/.test(letters[j]) && /=/.test(next)) {\n setArg(letters[j], next.split('=')[1], arg);\n broken = true;\n break;\n }\n \n if (/[A-Za-z]/.test(letters[j])\n && /-?\\d+(\\.\\d*)?(e-?\\d+)?$/.test(next)) {\n setArg(letters[j], next, arg);\n broken = true;\n break;\n }\n \n if (letters[j+1] && letters[j+1].match(/\\W/)) {\n setArg(letters[j], arg.slice(j+2), arg);\n broken = true;\n break;\n }\n else {\n setArg(letters[j], flags.strings[letters[j]] ? '' : true, arg);\n }\n }\n \n var key = arg.slice(-1)[0];\n if (!broken && key !== '-') {\n if (args[i+1] && !/^(-|--)[^-]/.test(args[i+1])\n && !flags.bools[key]\n && (aliases[key] ? !aliasIsBoolean(key) : true)) {\n setArg(key, args[i+1], arg);\n i++;\n }\n else if (args[i+1] && /true|false/.test(args[i+1])) {\n setArg(key, args[i+1] === 'true', arg);\n i++;\n }\n else {\n setArg(key, flags.strings[key] ? '' : true, arg);\n }\n }\n }\n else {\n if (!flags.unknownFn || flags.unknownFn(arg) !== false) {\n argv._.push(\n flags.strings['_'] || !isNumber(arg) ? arg : Number(arg)\n );\n }\n if (opts.stopEarly) {\n argv._.push.apply(argv._, args.slice(i + 1));\n break;\n }\n }\n }\n \n Object.keys(defaults).forEach(function (key) {\n if (!hasKey(argv, key.split('.'))) {\n setKey(argv, key.split('.'), defaults[key]);\n \n (aliases[key] || []).forEach(function (x) {\n setKey(argv, x.split('.'), defaults[key]);\n });\n }\n });\n \n if (opts['--']) {\n argv['--'] = new Array();\n notFlags.forEach(function(key) {\n argv['--'].push(key);\n });\n }\n else {\n notFlags.forEach(function(key) {\n argv._.push(key);\n });\n }\n\n return argv;\n};\n\nfunction hasKey (obj, keys) {\n var o = obj;\n keys.slice(0,-1).forEach(function (key) {\n o = (o[key] || {});\n });\n\n var key = keys[keys.length - 1];\n return key in o;\n}\n\nfunction isNumber (x) {\n if (typeof x === 'number') return true;\n if (/^0x[0-9a-f]+$/i.test(x)) return true;\n return /^[-+]?(?:\\d+(?:\\.\\d*)?|\\.\\d+)(e[-+]?\\d+)?$/.test(x);\n}\n\n","import {\n\tInputOptions,\n\tOutputOptions,\n\tWarningHandler,\n\tWarningHandlerWithDefault\n} from '../rollup/types';\n\nexport interface GenericConfigObject {\n\t[key: string]: unknown;\n}\n\nexport interface CommandConfigObject {\n\texternal: string[];\n\tglobals: { [id: string]: string } | undefined;\n\t[key: string]: unknown;\n}\n\nconst createGetOption = (config: GenericConfigObject, command: GenericConfigObject) => (\n\tname: string,\n\tdefaultValue?: unknown\n): any =>\n\tcommand[name] !== undefined\n\t\t? command[name]\n\t\t: config[name] !== undefined\n\t\t? config[name]\n\t\t: defaultValue;\n\nconst normalizeObjectOptionValue = (optionValue: any) => {\n\tif (!optionValue) {\n\t\treturn optionValue;\n\t}\n\tif (typeof optionValue !== 'object') {\n\t\treturn {};\n\t}\n\treturn optionValue;\n};\n\nconst getObjectOption = (\n\tconfig: GenericConfigObject,\n\tcommand: GenericConfigObject,\n\tname: string\n) => {\n\tconst commandOption = normalizeObjectOptionValue(command[name]);\n\tconst configOption = normalizeObjectOptionValue(config[name]);\n\tif (commandOption !== undefined) {\n\t\treturn commandOption && configOption ? { ...configOption, ...commandOption } : commandOption;\n\t}\n\treturn configOption;\n};\n\nconst defaultOnWarn: WarningHandler = warning => {\n\tif (typeof warning === 'string') {\n\t\tconsole.warn(warning);\n\t} else {\n\t\tconsole.warn(warning.message);\n\t}\n};\n\nconst getOnWarn = (\n\tconfig: GenericConfigObject,\n\tdefaultOnWarnHandler: WarningHandler = defaultOnWarn\n): WarningHandler =>\n\tconfig.onwarn\n\t\t? warning => (config.onwarn as WarningHandlerWithDefault)(warning, defaultOnWarnHandler)\n\t\t: defaultOnWarnHandler;\n\nconst getExternal = (config: GenericConfigObject, command: CommandConfigObject) => {\n\tconst configExternal = config.external;\n\treturn typeof configExternal === 'function'\n\t\t? (id: string, ...rest: string[]) =>\n\t\t\t\tconfigExternal(id, ...rest) || command.external.indexOf(id) !== -1\n\t\t: (typeof config.external === 'string'\n\t\t\t\t? [configExternal]\n\t\t\t\t: Array.isArray(configExternal)\n\t\t\t\t? configExternal\n\t\t\t\t: []\n\t\t ).concat(command.external);\n};\n\nexport const commandAliases: { [key: string]: string } = {\n\tc: 'config',\n\td: 'dir',\n\te: 'external',\n\tf: 'format',\n\tg: 'globals',\n\th: 'help',\n\ti: 'input',\n\tm: 'sourcemap',\n\tn: 'name',\n\to: 'file',\n\tv: 'version',\n\tw: 'watch'\n};\n\nexport default function mergeOptions({\n\tconfig = {},\n\tcommand: rawCommandOptions = {},\n\tdefaultOnWarnHandler\n}: {\n\tcommand?: GenericConfigObject;\n\tconfig: GenericConfigObject;\n\tdefaultOnWarnHandler?: WarningHandler;\n}): {\n\tinputOptions: InputOptions;\n\toptionError: string | null;\n\toutputOptions: any;\n} {\n\tconst command = getCommandOptions(rawCommandOptions);\n\tconst inputOptions = getInputOptions(config, command, defaultOnWarnHandler as WarningHandler);\n\n\tif (command.output) {\n\t\tObject.assign(command, command.output);\n\t}\n\n\tconst output = config.output;\n\tconst normalizedOutputOptions = Array.isArray(output) ? output : output ? [output] : [];\n\tif (normalizedOutputOptions.length === 0) normalizedOutputOptions.push({});\n\tconst outputOptions = normalizedOutputOptions.map(singleOutputOptions =>\n\t\tgetOutputOptions(singleOutputOptions, command)\n\t);\n\n\tconst unknownOptionErrors: string[] = [];\n\tconst validInputOptions = Object.keys(inputOptions);\n\taddUnknownOptionErrors(\n\t\tunknownOptionErrors,\n\t\tObject.keys(config),\n\t\tvalidInputOptions,\n\t\t'input option',\n\t\t/^output$/\n\t);\n\n\tconst validOutputOptions = Object.keys(outputOptions[0]);\n\taddUnknownOptionErrors(\n\t\tunknownOptionErrors,\n\t\toutputOptions.reduce<string[]>((allKeys, options) => allKeys.concat(Object.keys(options)), []),\n\t\tvalidOutputOptions,\n\t\t'output option'\n\t);\n\n\tconst validCliOutputOptions = validOutputOptions.filter(\n\t\toption => option !== 'sourcemapPathTransform'\n\t);\n\taddUnknownOptionErrors(\n\t\tunknownOptionErrors,\n\t\tObject.keys(command),\n\t\tvalidInputOptions.concat(\n\t\t\tvalidCliOutputOptions,\n\t\t\tObject.keys(commandAliases),\n\t\t\t'config',\n\t\t\t'environment',\n\t\t\t'silent'\n\t\t),\n\t\t'CLI flag',\n\t\t/^_|output|(config.*)$/\n\t);\n\n\treturn {\n\t\tinputOptions,\n\t\toptionError: unknownOptionErrors.length > 0 ? unknownOptionErrors.join('\\n') : null,\n\t\toutputOptions\n\t};\n}\n\nfunction addUnknownOptionErrors(\n\terrors: string[],\n\toptions: string[],\n\tvalidOptions: string[],\n\toptionType: string,\n\tignoredKeys: RegExp = /$./\n) {\n\tconst unknownOptions = options.filter(\n\t\tkey => validOptions.indexOf(key) === -1 && !ignoredKeys.test(key)\n\t);\n\tif (unknownOptions.length > 0)\n\t\terrors.push(\n\t\t\t`Unknown ${optionType}: ${unknownOptions.join(\n\t\t\t\t', '\n\t\t\t)}. Allowed options: ${validOptions.sort().join(', ')}`\n\t\t);\n}\n\nfunction getCommandOptions(rawCommandOptions: GenericConfigObject): CommandConfigObject {\n\tconst external =\n\t\trawCommandOptions.external && typeof rawCommandOptions.external === 'string'\n\t\t\t? rawCommandOptions.external.split(',')\n\t\t\t: [];\n\treturn {\n\t\t...rawCommandOptions,\n\t\texternal,\n\t\tglobals:\n\t\t\ttypeof rawCommandOptions.globals === 'string'\n\t\t\t\t? rawCommandOptions.globals.split(',').reduce((globals, globalDefinition) => {\n\t\t\t\t\t\tconst [id, variableName] = globalDefinition.split(':');\n\t\t\t\t\t\tglobals[id] = variableName;\n\t\t\t\t\t\tif (external.indexOf(id) === -1) {\n\t\t\t\t\t\t\texternal.push(id);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn globals;\n\t\t\t\t }, Object.create(null))\n\t\t\t\t: undefined\n\t};\n}\n\nfunction getInputOptions(\n\tconfig: GenericConfigObject,\n\tcommand: CommandConfigObject = { external: [], globals: undefined },\n\tdefaultOnWarnHandler: WarningHandler\n): InputOptions {\n\tconst getOption = createGetOption(config, command);\n\n\tconst inputOptions: InputOptions = {\n\t\tacorn: config.acorn,\n\t\tacornInjectPlugins: config.acornInjectPlugins as any,\n\t\tcache: getOption('cache'),\n\t\tchunkGroupingSize: getOption('chunkGroupingSize', 5000),\n\t\tcontext: config.context as any,\n\t\texperimentalCacheExpiry: getOption('experimentalCacheExpiry', 10),\n\t\texperimentalOptimizeChunks: getOption('experimentalOptimizeChunks'),\n\t\texperimentalTopLevelAwait: getOption('experimentalTopLevelAwait'),\n\t\texternal: getExternal(config, command) as any,\n\t\tinlineDynamicImports: getOption('inlineDynamicImports', false),\n\t\tinput: getOption('input', []),\n\t\tmanualChunks: getOption('manualChunks'),\n\t\tmoduleContext: config.moduleContext as any,\n\t\tonwarn: getOnWarn(config, defaultOnWarnHandler),\n\t\tperf: getOption('perf', false),\n\t\tplugins: config.plugins as any,\n\t\tpreserveModules: getOption('preserveModules'),\n\t\tpreserveSymlinks: getOption('preserveSymlinks'),\n\t\tshimMissingExports: getOption('shimMissingExports'),\n\t\tstrictDeprecations: getOption('strictDeprecations', false),\n\t\ttreeshake: getObjectOption(config, command, 'treeshake'),\n\t\twatch: config.watch as any\n\t};\n\n\t// support rollup({ cache: prevBuildObject })\n\tif (inputOptions.cache && (inputOptions.cache as any).cache)\n\t\tinputOptions.cache = (inputOptions.cache as any).cache;\n\n\treturn inputOptions;\n}\n\nfunction getOutputOptions(\n\tconfig: GenericConfigObject,\n\tcommand: GenericConfigObject = {}\n): OutputOptions {\n\tconst getOption = createGetOption(config, command);\n\tlet format = getOption('format');\n\n\t// Handle format aliases\n\tswitch (format) {\n\t\tcase 'esm':\n\t\tcase 'module':\n\t\t\tformat = 'es';\n\t\t\tbreak;\n\t\tcase 'commonjs':\n\t\t\tformat = 'cjs';\n\t}\n\n\treturn {\n\t\tamd: { ...config.amd, ...command.amd } as any,\n\t\tassetFileNames: getOption('assetFileNames'),\n\t\tbanner: getOption('banner'),\n\t\tchunkFileNames: getOption('chunkFileNames'),\n\t\tcompact: getOption('compact', false),\n\t\tdir: getOption('dir'),\n\t\tdynamicImportFunction: getOption('dynamicImportFunction'),\n\t\tentryFileNames: getOption('entryFileNames'),\n\t\tesModule: getOption('esModule', true),\n\t\texports: getOption('exports'),\n\t\textend: getOption('extend'),\n\t\tfile: getOption('file'),\n\t\tfooter: getOption('footer'),\n\t\tformat: format === 'esm' ? 'es' : format,\n\t\tfreeze: getOption('freeze', true),\n\t\tglobals: getOption('globals'),\n\t\tindent: getOption('indent', true),\n\t\tinterop: getOption('interop', true),\n\t\tintro: getOption('intro'),\n\t\tname: getOption('name'),\n\t\tnamespaceToStringTag: getOption('namespaceToStringTag', false),\n\t\tnoConflict: getOption('noConflict'),\n\t\toutro: getOption('outro'),\n\t\tpaths: getOption('paths'),\n\t\tpreferConst: getOption('preferConst'),\n\t\tsourcemap: getOption('sourcemap'),\n\t\tsourcemapExcludeSources: getOption('sourcemapExcludeSources'),\n\t\tsourcemapFile: getOption('sourcemapFile'),\n\t\tsourcemapPathTransform: getOption('sourcemapPathTransform'),\n\t\tstrict: getOption('strict', true)\n\t};\n}\n","/*\nrelative require\n*/'use strict';\n\nvar path = require('path');\nvar Module = require('module');\n\nvar modules = {};\n\nvar getModule = function(dir) {\n var rootPath = dir ? path.resolve(dir) : process.cwd();\n var rootName = path.join(rootPath, '@root');\n var root = modules[rootName];\n if (!root) {\n root = new Module(rootName);\n root.filename = rootName;\n root.paths = Module._nodeModulePaths(rootPath);\n modules[rootName] = root;\n }\n return root;\n};\n\nvar requireRelative = function(requested, relativeTo) {\n var root = getModule(relativeTo);\n return root.require(requested);\n};\n\nrequireRelative.resolve = function(requested, relativeTo) {\n var root = getModule(relativeTo);\n return Module._resolveFilename(requested, root);\n};\n\nmodule.exports = requireRelative;\n","const absolutePath = /^(?:\\/|(?:[A-Za-z]:)?[\\\\|/])/;\nconst relativePath = /^\\.?\\.\\//;\n\nexport function isAbsolute(path: string) {\n\treturn absolutePath.test(path);\n}\n\nexport function isRelative(path: string) {\n\treturn relativePath.test(path);\n}\n\nexport function normalize(path: string) {\n\tif (path.indexOf('\\\\') == -1) return path;\n\treturn path.replace(/\\\\/g, '/');\n}\n\nexport { basename, dirname, extname, relative, resolve } from 'path';\n","import { basename, extname, isAbsolute, relative } from './path';\n\nexport function getAliasName(id: string) {\n\tconst base = basename(id);\n\treturn base.substr(0, base.length - extname(id).length);\n}\n\nexport default function relativeId(id: string) {\n\tif (typeof process === 'undefined' || !isAbsolute(id)) return id;\n\treturn relative(process.cwd(), id);\n}\n\nexport function isPlainName(name: string) {\n\t// not starting with \"./\", \"/\". \"../\"\n\treturn !(\n\t\tname[0] === '/' ||\n\t\t(name[1] === '.' && (name[2] === '/' || (name[2] === '.' && name[3] === '/')))\n\t);\n}\n","\"use strict\"\n\nconst tc = {\n enabled:\n process.env.FORCE_COLOR ||\n process.platform === \"win32\" ||\n (process.stdout.isTTY && process.env.TERM && process.env.TERM !== \"dumb\")\n}\nconst Styles = (tc.Styles = {})\nconst defineProp = Object.defineProperty\n\nconst init = (style, open, close, re) => {\n let i,\n len = 1,\n seq = [(Styles[style] = { open, close, re })]\n\n const fn = s => {\n if (tc.enabled) {\n for (i = 0, s += \"\"; i < len; i++) {\n style = seq[i]\n s =\n (open = style.open) +\n (~s.indexOf((close = style.close), 4) // skip first \\x1b[\n ? s.replace(style.re, open)\n : s) +\n close\n }\n len = 1\n }\n return s\n }\n\n defineProp(tc, style, {\n get: () => {\n for (let k in Styles)\n defineProp(fn, k, {\n get: () => ((seq[len++] = Styles[k]), fn)\n })\n delete tc[style]\n return (tc[style] = fn)\n },\n configurable: true\n })\n}\n\ninit(\"reset\", \"\\x1b[0m\", \"\\x1b[0m\", /\\x1b\\[0m/g)\ninit(\"bold\", \"\\x1b[1m\", \"\\x1b[22m\", /\\x1b\\[22m/g)\ninit(\"dim\", \"\\x1b[2m\", \"\\x1b[22m\", /\\x1b\\[22m/g)\ninit(\"italic\", \"\\x1b[3m\", \"\\x1b[23m\", /\\x1b\\[23m/g)\ninit(\"underline\", \"\\x1b[4m\", \"\\x1b[24m\", /\\x1b\\[24m/g)\ninit(\"inverse\", \"\\x1b[7m\", \"\\x1b[27m\", /\\x1b\\[27m/g)\ninit(\"hidden\", \"\\x1b[8m\", \"\\x1b[28m\", /\\x1b\\[28m/g)\ninit(\"strikethrough\", \"\\x1b[9m\", \"\\x1b[29m\", /\\x1b\\[29m/g)\ninit(\"black\", \"\\x1b[30m\", \"\\x1b[39m\", /\\x1b\\[39m/g)\ninit(\"red\", \"\\x1b[31m\", \"\\x1b[39m\", /\\x1b\\[39m/g)\ninit(\"green\", \"\\x1b[32m\", \"\\x1b[39m\", /\\x1b\\[39m/g)\ninit(\"yellow\", \"\\x1b[33m\", \"\\x1b[39m\", /\\x1b\\[39m/g)\ninit(\"blue\", \"\\x1b[34m\", \"\\x1b[39m\", /\\x1b\\[39m/g)\ninit(\"magenta\", \"\\x1b[35m\", \"\\x1b[39m\", /\\x1b\\[39m/g)\ninit(\"cyan\", \"\\x1b[36m\", \"\\x1b[39m\", /\\x1b\\[39m/g)\ninit(\"white\", \"\\x1b[37m\", \"\\x1b[39m\", /\\x1b\\[39m/g)\ninit(\"gray\", \"\\x1b[90m\", \"\\x1b[39m\", /\\x1b\\[39m/g)\ninit(\"bgBlack\", \"\\x1b[40m\", \"\\x1b[49m\", /\\x1b\\[49m/g)\ninit(\"bgRed\", \"\\x1b[41m\", \"\\x1b[49m\", /\\x1b\\[49m/g)\ninit(\"bgGreen\", \"\\x1b[42m\", \"\\x1b[49m\", /\\x1b\\[49m/g)\ninit(\"bgYellow\", \"\\x1b[43m\", \"\\x1b[49m\", /\\x1b\\[49m/g)\ninit(\"bgBlue\", \"\\x1b[44m\", \"\\x1b[49m\", /\\x1b\\[49m/g)\ninit(\"bgMagenta\", \"\\x1b[45m\", \"\\x1b[49m\", /\\x1b\\[49m/g)\ninit(\"bgCyan\", \"\\x1b[46m\", \"\\x1b[49m\", /\\x1b\\[49m/g)\ninit(\"bgWhite\", \"\\x1b[47m\", \"\\x1b[49m\", /\\x1b\\[49m/g)\n\nmodule.exports = tc\n","import tc from 'turbocolor';\nimport { RollupError } from '../../src/rollup/types';\nimport relativeId from '../../src/utils/relativeId';\n\n// log to stderr to keep `rollup main.js > bundle.js` from breaking\nexport const stderr = console.error.bind(console);\n\nexport function handleError(err: RollupError, recover = false) {\n\tlet description = err.message || err;\n\tif (err.name) description = `${err.name}: ${description}`;\n\tconst message =\n\t\t((err as { plugin?: string }).plugin\n\t\t\t? `(plugin ${(err as { plugin?: string }).plugin}) ${description}`\n\t\t\t: description) || err;\n\n\tstderr(tc.bold.red(`[!] ${tc.bold(message.toString())}`));\n\n\tif (err.url) {\n\t\tstderr(tc.cyan(err.url));\n\t}\n\n\tif (err.loc) {\n\t\tstderr(`${relativeId((err.loc.file || err.id) as string)} (${err.loc.line}:${err.loc.column})`);\n\t} else if (err.id) {\n\t\tstderr(relativeId(err.id));\n\t}\n\n\tif (err.frame) {\n\t\tstderr(tc.dim(err.frame));\n\t}\n\n\tif (err.stack) {\n\t\tstderr(tc.dim(err.stack));\n\t}\n\n\tstderr('');\n\n\tif (!recover) process.exit(1);\n}\n","import tc from 'turbocolor';\nimport { RollupWarning } from '../../../src/rollup/types';\nimport relativeId from '../../../src/utils/relativeId';\nimport { stderr } from '../logging';\n\nexport interface BatchWarnings {\n\tadd: (warning: string | RollupWarning) => void;\n\treadonly count: number;\n\tflush: () => void;\n}\n\nexport default function batchWarnings() {\n\tlet allWarnings = new Map<string, RollupWarning[]>();\n\tlet count = 0;\n\n\treturn {\n\t\tget count() {\n\t\t\treturn count;\n\t\t},\n\n\t\tadd: (warning: string | RollupWarning) => {\n\t\t\tif (typeof warning === 'string') {\n\t\t\t\twarning = { code: 'UNKNOWN', message: warning };\n\t\t\t}\n\n\t\t\tif ((warning.code as string) in immediateHandlers) {\n\t\t\t\timmediateHandlers[warning.code as string](warning);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (!allWarnings.has(warning.code as string)) allWarnings.set(warning.code as string, []);\n\t\t\t(allWarnings.get(warning.code as string) as RollupWarning[]).push(warning);\n\n\t\t\tcount += 1;\n\t\t},\n\n\t\tflush: () => {\n\t\t\tif (count === 0) return;\n\n\t\t\tconst codes = Array.from(allWarnings.keys()).sort((a, b) => {\n\t\t\t\tif (deferredHandlers[a] && deferredHandlers[b]) {\n\t\t\t\t\treturn deferredHandlers[a].priority - deferredHandlers[b].priority;\n\t\t\t\t}\n\n\t\t\t\tif (deferredHandlers[a]) return -1;\n\t\t\t\tif (deferredHandlers[b]) return 1;\n\t\t\t\treturn (\n\t\t\t\t\t(allWarnings.get(b) as RollupWarning[]).length -\n\t\t\t\t\t(allWarnings.get(a) as RollupWarning[]).length\n\t\t\t\t);\n\t\t\t});\n\n\t\t\tcodes.forEach(code => {\n\t\t\t\tconst handler = deferredHandlers[code];\n\t\t\t\tconst warnings = allWarnings.get(code);\n\n\t\t\t\tif (handler) {\n\t\t\t\t\thandler.fn(warnings as RollupWarning[]);\n\t\t\t\t} else {\n\t\t\t\t\t(warnings as RollupWarning[]).forEach(warning => {\n\t\t\t\t\t\ttitle(warning.message);\n\n\t\t\t\t\t\tif (warning.url) info(warning.url);\n\n\t\t\t\t\t\tconst id = (warning.loc && warning.loc.file) || warning.id;\n\t\t\t\t\t\tif (id) {\n\t\t\t\t\t\t\tconst loc = warning.loc\n\t\t\t\t\t\t\t\t? `${relativeId(id)}: (${warning.loc.line}:${warning.loc.column})`\n\t\t\t\t\t\t\t\t: relativeId(id);\n\n\t\t\t\t\t\t\tstderr(tc.bold(relativeId(loc)));\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (warning.frame) info(warning.frame);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tallWarnings = new Map();\n\t\t\tcount = 0;\n\t\t}\n\t};\n}\n\nconst immediateHandlers: {\n\t[code: string]: (warning: RollupWarning) => void;\n} = {\n\tUNKNOWN_OPTION: warning => {\n\t\ttitle(`You have passed an unrecognized option`);\n\t\tstderr(warning.message);\n\t},\n\n\tMISSING_NODE_BUILTINS: warning => {\n\t\ttitle(`Missing shims for Node.js built-ins`);\n\n\t\tconst detail =\n\t\t\t(warning.modules as string[]).length === 1\n\t\t\t\t? `'${(warning.modules as string[])[0]}'`\n\t\t\t\t: `${(warning.modules as string[])\n\t\t\t\t\t\t.slice(0, -1)\n\t\t\t\t\t\t.map((name: string) => `'${name}'`)\n\t\t\t\t\t\t.join(', ')} and '${(warning.modules as string[]).slice(-1)}'`;\n\t\tstderr(\n\t\t\t`Creating a browser bundle that depends on ${detail}. You might need to include https://www.npmjs.com/package/rollup-plugin-node-builtins`\n\t\t);\n\t},\n\n\tMIXED_EXPORTS: () => {\n\t\ttitle('Mixing named and default exports');\n\t\tstderr(\n\t\t\t`Consumers of your bundle will have to use bundle['default'] to access the default export, which may not be what you want. Use \\`output.exports: 'named'\\` to disable this warning`\n\t\t);\n\t},\n\n\tEMPTY_BUNDLE: () => {\n\t\ttitle(`Generated an empty bundle`);\n\t}\n};\n\n// TODO select sensible priorities\nconst deferredHandlers: {\n\t[code: string]: {\n\t\tfn: (warnings: RollupWarning[]) => void;\n\t\tpriority: number;\n\t};\n} = {\n\tUNUSED_EXTERNAL_IMPORT: {\n\t\tfn: warnings => {\n\t\t\ttitle('Unused external imports');\n\t\t\twarnings.forEach(warning => {\n\t\t\t\tstderr(`${warning.names} imported from external module '${warning.source}' but never used`);\n\t\t\t});\n\t\t},\n\t\tpriority: 1\n\t},\n\n\tUNRESOLVED_IMPORT: {\n\t\tfn: warnings => {\n\t\t\ttitle('Unresolved dependencies');\n\t\t\tinfo('https://rollupjs.org/guide/en/#warning-treating-module-as-external-dependency');\n\n\t\t\tconst dependencies = new Map();\n\t\t\twarnings.forEach(warning => {\n\t\t\t\tif (!dependencies.has(warning.source)) dependencies.set(warning.source, []);\n\t\t\t\tdependencies.get(warning.source).push(warning.importer);\n\t\t\t});\n\n\t\t\tArray.from(dependencies.keys()).forEach(dependency => {\n\t\t\t\tconst importers = dependencies.get(dependency);\n\t\t\t\tstderr(`${tc.bold(dependency)} (imported by ${importers.join(', ')})`);\n\t\t\t});\n\t\t},\n\t\tpriority: 1\n\t},\n\n\tMISSING_EXPORT: {\n\t\tfn: warnings => {\n\t\t\ttitle('Missing exports');\n\t\t\tinfo('https://rollupjs.org/guide/en/#error-name-is-not-exported-by-module-');\n\n\t\t\twarnings.forEach(warning => {\n\t\t\t\tstderr(tc.bold(warning.importer as string));\n\t\t\t\tstderr(`${warning.missing} is not exported by ${warning.exporter}`);\n\t\t\t\tstderr(tc.gray(warning.frame as string));\n\t\t\t});\n\t\t},\n\t\tpriority: 1\n\t},\n\n\tTHIS_IS_UNDEFINED: {\n\t\tfn: warnings => {\n\t\t\ttitle('`this` has been rewritten to `undefined`');\n\t\t\tinfo('https://rollupjs.org/guide/en/#error-this-is-undefined');\n\t\t\tshowTruncatedWarnings(warnings);\n\t\t},\n\t\tpriority: 1\n\t},\n\n\tEVAL: {\n\t\tfn: warnings => {\n\t\t\ttitle('Use of eval is strongly discouraged');\n\t\t\tinfo('https://rollupjs.org/guide/en/#avoiding-eval');\n\t\t\tshowTruncatedWarnings(warnings);\n\t\t},\n\t\tpriority: 1\n\t},\n\n\tNON_EXISTENT_EXPORT: {\n\t\tfn: warnings => {\n\t\t\ttitle(`Import of non-existent ${warnings.length > 1 ? 'exports' : 'export'}`);\n\t\t\tshowTruncatedWarnings(warnings);\n\t\t},\n\t\tpriority: 1\n\t},\n\n\tNAMESPACE_CONFLICT: {\n\t\tfn: warnings => {\n\t\t\ttitle(`Conflicting re-exports`);\n\t\t\twarnings.forEach(warning => {\n\t\t\t\tstderr(\n\t\t\t\t\t`${tc.bold(relativeId(warning.reexporter as string))} re-exports '${\n\t\t\t\t\t\twarning.name\n\t\t\t\t\t}' from both ${relativeId((warning.sources as string[])[0])} and ${relativeId(\n\t\t\t\t\t\t(warning.sources as string[])[1]\n\t\t\t\t\t)} (will be ignored)`\n\t\t\t\t);\n\t\t\t});\n\t\t},\n\t\tpriority: 1\n\t},\n\n\tMISSING_GLOBAL_NAME: {\n\t\tfn: warnings => {\n\t\t\ttitle(`Missing global variable ${warnings.length > 1 ? 'names' : 'name'}`);\n\t\t\tstderr(\n\t\t\t\t`Use output.globals to specify browser global variable names corresponding to external modules`\n\t\t\t);\n\t\t\twarnings.forEach(warning => {\n\t\t\t\tstderr(`${tc.bold(warning.source as string)} (guessing '${warning.guess}')`);\n\t\t\t});\n\t\t},\n\t\tpriority: 1\n\t},\n\n\tSOURCEMAP_BROKEN: {\n\t\tfn: warnings => {\n\t\t\ttitle(`Broken sourcemap`);\n\t\t\tinfo('https://rollupjs.org/guide/en/#warning-sourcemap-is-likely-to-be-incorrect');\n\n\t\t\tconst plugins = Array.from(new Set(warnings.map(w => w.plugin).filter(Boolean)));\n\t\t\tconst detail =\n\t\t\t\tplugins.length === 0\n\t\t\t\t\t? ''\n\t\t\t\t\t: plugins.length > 1\n\t\t\t\t\t? ` (such as ${plugins\n\t\t\t\t\t\t\t.slice(0, -1)\n\t\t\t\t\t\t\t.map(p => `'${p}'`)\n\t\t\t\t\t\t\t.join(', ')} and '${plugins.slice(-1)}')`\n\t\t\t\t\t: ` (such as '${plugins[0]}')`;\n\n\t\t\tstderr(`Plugins that transform code${detail} should generate accompanying sourcemaps`);\n\t\t},\n\t\tpriority: 1\n\t},\n\n\tPLUGIN_WARNING: {\n\t\tfn: warnings => {\n\t\t\tconst nestedByPlugin = nest(warnings, 'plugin');\n\n\t\t\tnestedByPlugin.forEach(({ key: plugin, items }) => {\n\t\t\t\tconst nestedByMessage = nest(items, 'message');\n\n\t\t\t\tlet lastUrl: string;\n\n\t\t\t\tnestedByMessage.forEach(({ key: message, items }) => {\n\t\t\t\t\ttitle(`Plugin ${plugin}: ${message}`);\n\t\t\t\t\titems.forEach(warning => {\n\t\t\t\t\t\tif (warning.url !== lastUrl) info((lastUrl = warning.url as string));\n\n\t\t\t\t\t\tif (warning.id) {\n\t\t\t\t\t\t\tlet loc = relativeId(warning.id);\n\t\t\t\t\t\t\tif (warning.loc) {\n\t\t\t\t\t\t\t\tloc += `: (${warning.loc.line}:${warning.loc.column})`;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tstderr(tc.bold(loc));\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (warning.frame) info(warning.frame);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t});\n\t\t},\n\t\tpriority: 1\n\t}\n};\n\nfunction title(str: string) {\n\tstderr(`${tc.bold.yellow('(!)')} ${tc.bold.yellow(str)}`);\n}\n\nfunction info(url: string) {\n\tstderr(tc.gray(url));\n}\n\nfunction nest<T>(array: T[], prop: string) {\n\tconst nested: { items: T[]; key: string }[] = [];\n\tconst lookup = new Map<string, { items: T[]; key: string }>();\n\n\tarray.forEach(item => {\n\t\tconst key = (item as any)[prop];\n\t\tif (!lookup.has(key)) {\n\t\t\tlookup.set(key, {\n\t\t\t\titems: [],\n\t\t\t\tkey\n\t\t\t});\n\n\t\t\tnested.push(lookup.get(key) as { items: T[]; key: string });\n\t\t}\n\n\t\t(lookup.get(key) as { items: T[]; key: string }).items.push(item);\n\t});\n\n\treturn nested;\n}\n\nfunction showTruncatedWarnings(warnings: RollupWarning[]) {\n\tconst nestedByModule = nest(warnings, 'id');\n\n\tconst sliced = nestedByModule.length > 5 ? nestedByModule.slice(0, 3) : nestedByModule;\n\tsliced.forEach(({ key: id, items }) => {\n\t\tstderr(tc.bold(relativeId(id)));\n\t\tstderr(tc.gray(items[0].frame as string));\n\n\t\tif (items.length > 1) {\n\t\t\tstderr(`...and ${items.length - 1} other ${items.length > 2 ? 'occurrences' : 'occurrence'}`);\n\t\t}\n\t});\n\n\tif (nestedByModule.length > sliced.length) {\n\t\tstderr(`\\n...and ${nestedByModule.length - sliced.length} other files`);\n\t}\n}\n","'use strict';\nmodule.exports = milliseconds => {\n\tif (typeof milliseconds !== 'number') {\n\t\tthrow new TypeError('Expected a number');\n\t}\n\n\tconst roundTowardsZero = milliseconds > 0 ? Math.floor : Math.ceil;\n\n\treturn {\n\t\tdays: roundTowardsZero(milliseconds / 86400000),\n\t\thours: roundTowardsZero(milliseconds / 3600000) % 24,\n\t\tminutes: roundTowardsZero(milliseconds / 60000) % 60,\n\t\tseconds: roundTowardsZero(milliseconds / 1000) % 60,\n\t\tmilliseconds: roundTowardsZero(milliseconds) % 1000,\n\t\tmicroseconds: roundTowardsZero(milliseconds * 1000) % 1000,\n\t\tnanoseconds: roundTowardsZero(milliseconds * 1e6) % 1000\n\t};\n};\n","'use strict';\nconst parseMilliseconds = require('parse-ms');\n\nconst pluralize = (word, count) => count === 1 ? word : word + 's';\n\nmodule.exports = (milliseconds, options = {}) => {\n\tif (!Number.isFinite(milliseconds)) {\n\t\tthrow new TypeError('Expected a finite number');\n\t}\n\n\tif (options.compact) {\n\t\toptions.secondsDecimalDigits = 0;\n\t\toptions.millisecondsDecimalDigits = 0;\n\t}\n\n\tconst result = [];\n\n\tconst add = (value, long, short, valueString) => {\n\t\tif (value === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst postfix = options.verbose ? ' ' + pluralize(long, value) : short;\n\n\t\tresult.push((valueString || value) + postfix);\n\t};\n\n\tconst secondsDecimalDigits =\n\t\ttypeof options.secondsDecimalDigits === 'number' ?\n\t\t\toptions.secondsDecimalDigits :\n\t\t\t1;\n\n\tif (secondsDecimalDigits < 1) {\n\t\tconst difference = 1000 - (milliseconds % 1000);\n\t\tif (difference < 500) {\n\t\t\tmilliseconds += difference;\n\t\t}\n\t}\n\n\tconst parsed = parseMilliseconds(milliseconds);\n\n\tadd(Math.trunc(parsed.days / 365), 'year', 'y');\n\tadd(parsed.days % 365, 'day', 'd');\n\tadd(parsed.hours, 'hour', 'h');\n\tadd(parsed.minutes, 'minute', 'm');\n\n\tif (\n\t\toptions.separateMilliseconds ||\n\t\toptions.formatSubMilliseconds ||\n\t\tmilliseconds < 1000\n\t) {\n\t\tadd(parsed.seconds, 'second', 's');\n\t\tif (options.formatSubMilliseconds) {\n\t\t\tadd(parsed.milliseconds, 'millisecond', 'ms');\n\t\t\tadd(parsed.microseconds, 'microsecond', 'µs');\n\t\t\tadd(parsed.nanoseconds, 'nanosecond', 'ns');\n\t\t} else {\n\t\t\tconst millisecondsAndBelow =\n\t\t\t\tparsed.milliseconds +\n\t\t\t\t(parsed.microseconds / 1000) +\n\t\t\t\t(parsed.nanoseconds / 1e6);\n\n\t\t\tconst millisecondsDecimalDigits =\n\t\t\t\ttypeof options.millisecondsDecimalDigits === 'number' ?\n\t\t\t\t\toptions.millisecondsDecimalDigits :\n\t\t\t\t\t0;\n\n\t\t\tconst millisecondsString = millisecondsDecimalDigits ?\n\t\t\t\tmillisecondsAndBelow.toFixed(millisecondsDecimalDigits) :\n\t\t\t\tMath.ceil(millisecondsAndBelow);\n\n\t\t\tadd(\n\t\t\t\tparseFloat(millisecondsString, 10),\n\t\t\t\t'millisecond',\n\t\t\t\t'ms',\n\t\t\t\tmillisecondsString\n\t\t\t);\n\t\t}\n\t} else {\n\t\tconst seconds = (milliseconds / 1000) % 60;\n\t\tconst secondsDecimalDigits =\n\t\t\ttypeof options.secondsDecimalDigits === 'number' ?\n\t\t\t\toptions.secondsDecimalDigits :\n\t\t\t\t1;\n\t\tconst secondsFixed = seconds.toFixed(secondsDecimalDigits);\n\t\tconst secondsString = options.keepDecimalsOnWholeSeconds ?\n\t\t\tsecondsFixed :\n\t\t\tsecondsFixed.replace(/\\.0+$/, '');\n\t\tadd(parseFloat(secondsString, 10), 'second', 's', secondsString);\n\t}\n\n\tif (result.length === 0) {\n\t\treturn '0' + (options.verbose ? ' milliseconds' : 'ms');\n\t}\n\n\tif (options.compact) {\n\t\treturn '~' + result[0];\n\t}\n\n\tif (typeof options.unitCount === 'number') {\n\t\treturn '~' + result.slice(0, Math.max(options.unitCount, 1)).join(' ');\n\t}\n\n\treturn result.join(' ');\n};\n","let SOURCEMAPPING_URL = 'sourceMa';\nSOURCEMAPPING_URL += 'ppingURL';\n\nexport default SOURCEMAPPING_URL;\n","'use strict';\n\nconst UNITS = [\n\t'B',\n\t'kB',\n\t'MB',\n\t'GB',\n\t'TB',\n\t'PB',\n\t'EB',\n\t'ZB',\n\t'YB'\n];\n\n/*\nFormats the given number using `Number#toLocaleString`.\n- If locale is a string, the value is expected to be a locale-key (for example: `de`).\n- If locale is true, the system default locale is used for translation.\n- If no value for locale is specified, the number is returned unmodified.\n*/\nconst toLocaleString = (number, locale) => {\n\tlet result = number;\n\tif (typeof locale === 'string') {\n\t\tresult = number.toLocaleString(locale);\n\t} else if (locale === true) {\n\t\tresult = number.toLocaleString();\n\t}\n\n\treturn result;\n};\n\nmodule.exports = (number, options) => {\n\tif (!Number.isFinite(number)) {\n\t\tthrow new TypeError(`Expected a finite number, got ${typeof number}: ${number}`);\n\t}\n\n\toptions = Object.assign({}, options);\n\n\tif (options.signed && number === 0) {\n\t\treturn ' 0 B';\n\t}\n\n\tconst isNegative = number < 0;\n\tconst prefix = isNegative ? '-' : (options.signed ? '+' : '');\n\n\tif (isNegative) {\n\t\tnumber = -number;\n\t}\n\n\tif (number < 1) {\n\t\tconst numberString = toLocaleString(number, options.locale);\n\t\treturn prefix + numberString + ' B';\n\t}\n\n\tconst exponent = Math.min(Math.floor(Math.log10(number) / 3), UNITS.length - 1);\n\t// eslint-disable-next-line unicorn/prefer-exponentiation-operator\n\tnumber = Number((number / Math.pow(1000, exponent)).toPrecision(3));\n\tconst numberString = toLocaleString(number, options.locale);\n\n\tconst unit = UNITS[exponent];\n\n\treturn prefix + numberString + ' ' + unit;\n};\n","import prettyBytes from 'pretty-bytes';\nimport tc from 'turbocolor';\nimport { SerializedTimings } from '../../../src/rollup/types';\n\nexport function printTimings(timings: SerializedTimings) {\n\tObject.keys(timings).forEach(label => {\n\t\tconst color =\n\t\t\tlabel[0] === '#' ? (label[1] !== '#' ? tc.underline : tc.bold) : (text: string) => text;\n\t\tconst [time, memory, total] = timings[label];\n\t\tconst row = `${label}: ${time.toFixed(0)}ms, ${prettyBytes(memory)} / ${prettyBytes(total)}`;\n\t\tconsole.info(color(row));\n\t});\n}\n","import ms from 'pretty-ms';\nimport * as rollup from 'rollup';\nimport tc from 'turbocolor';\nimport {\n\tInputOptions,\n\tOutputAsset,\n\tOutputChunk,\n\tOutputOptions,\n\tRollupBuild,\n\tSourceMap\n} from '../../../src/rollup/types';\nimport relativeId from '../../../src/utils/relativeId';\nimport { handleError, stderr } from '../logging';\nimport SOURCEMAPPING_URL from '../sourceMappingUrl';\nimport { BatchWarnings } from './batchWarnings';\nimport { printTimings } from './timings';\n\nexport default function build(\n\tinputOptions: InputOptions,\n\toutputOptions: OutputOptions[],\n\twarnings: BatchWarnings,\n\tsilent = false\n) {\n\tconst useStdout = !outputOptions[0].file && !outputOptions[0].dir;\n\n\tconst start = Date.now();\n\tconst files = useStdout\n\t\t? ['stdout']\n\t\t: outputOptions.map(t => relativeId(t.file || (t.dir as string)));\n\tif (!silent) {\n\t\tlet inputFiles: string = undefined as any;\n\t\tif (typeof inputOptions.input === 'string') {\n\t\t\tinputFiles = inputOptions.input;\n\t\t} else if (inputOptions.input instanceof Array) {\n\t\t\tinputFiles = inputOptions.input.join(', ');\n\t\t} else if (typeof inputOptions.input === 'object' && inputOptions.input !== null) {\n\t\t\tinputFiles = Object.keys(inputOptions.input)\n\t\t\t\t.map(name => (inputOptions.input as Record<string, string>)[name])\n\t\t\t\t.join(', ');\n\t\t}\n\t\tstderr(tc.cyan(`\\n${tc.bold(inputFiles)} → ${tc.bold(files.join(', '))}...`));\n\t}\n\n\treturn rollup\n\t\t.rollup(inputOptions)\n\t\t.then((bundle: RollupBuild) => {\n\t\t\tif (useStdout) {\n\t\t\t\tconst output = outputOptions[0];\n\t\t\t\tif (output.sourcemap && output.sourcemap !== 'inline') {\n\t\t\t\t\thandleError({\n\t\t\t\t\t\tcode: 'MISSING_OUTPUT_OPTION',\n\t\t\t\t\t\tmessage: 'You must specify a --file (-o) option when creating a file with a sourcemap'\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\treturn bundle.generate(output).then(({ output: outputs }) => {\n\t\t\t\t\tfor (const file of outputs) {\n\t\t\t\t\t\tlet source: string | Buffer;\n\t\t\t\t\t\tif ((file as OutputAsset).isAsset) {\n\t\t\t\t\t\t\tsource = (file as OutputAsset).source;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tsource = (file as OutputChunk).code;\n\t\t\t\t\t\t\tif (output.sourcemap === 'inline') {\n\t\t\t\t\t\t\t\tsource += `\\n//# ${SOURCEMAPPING_URL}=${((file as OutputChunk)\n\t\t\t\t\t\t\t\t\t.map as SourceMap).toUrl()}\\n`;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (outputs.length > 1)\n\t\t\t\t\t\t\tprocess.stdout.write('\\n' + tc.cyan(tc.bold('//→ ' + file.fileName + ':')) + '\\n');\n\t\t\t\t\t\tprocess.stdout.write(source);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\n\t\t\treturn Promise.all(outputOptions.map(output => bundle.write(output) as Promise<any>)).then(\n\t\t\t\t() => bundle\n\t\t\t);\n\t\t})\n\t\t.then((bundle?: RollupBuild) => {\n\t\t\tif (!silent) {\n\t\t\t\twarnings.flush();\n\t\t\t\tstderr(\n\t\t\t\t\ttc.green(`created ${tc.bold(files.join(', '))} in ${tc.bold(ms(Date.now() - start))}`)\n\t\t\t\t);\n\t\t\t\tif (bundle && bundle.getTimings) {\n\t\t\t\t\tprintTimings(bundle.getTimings());\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\t\t.catch((err: any) => {\n\t\t\tif (warnings.count > 0) warnings.flush();\n\t\t\thandleError(err);\n\t\t});\n}\n","import path from 'path';\nimport rollup from 'rollup';\nimport tc from 'turbocolor';\nimport { RollupBuild, RollupOutput } from '../../../src/rollup/types';\nimport { GenericConfigObject } from '../../../src/utils/mergeOptions';\nimport relativeId from '../../../src/utils/relativeId';\nimport { handleError, stderr } from '../logging';\nimport batchWarnings from './batchWarnings';\n\ninterface NodeModuleWithCompile extends NodeModule {\n\t_compile(code: string, filename: string): any;\n}\n\nexport default function loadConfigFile(\n\tconfigFile: string,\n\tcommandOptions: any = {}\n): Promise<GenericConfigObject[]> {\n\tconst silent = commandOptions.silent || false;\n\tconst warnings = batchWarnings();\n\n\treturn rollup\n\t\t.rollup({\n\t\t\texternal: (id: string) =>\n\t\t\t\t(id[0] !== '.' && !path.isAbsolute(id)) || id.slice(-5, id.length) === '.json',\n\t\t\tinput: configFile,\n\t\t\tonwarn: warnings.add,\n\t\t\ttreeshake: false\n\t\t})\n\t\t.then((bundle: RollupBuild) => {\n\t\t\tif (!silent && warnings.count > 0) {\n\t\t\t\tstderr(tc.bold(`loaded ${relativeId(configFile)} with warnings`));\n\t\t\t\twarnings.flush();\n\t\t\t}\n\n\t\t\treturn bundle.generate({\n\t\t\t\texports: 'named',\n\t\t\t\tformat: 'cjs'\n\t\t\t});\n\t\t})\n\t\t.then(({ output: [{ code }] }: RollupOutput) => {\n\t\t\t// temporarily override require\n\t\t\tconst defaultLoader = require.extensions['.js'];\n\t\t\trequire.extensions['.js'] = (module: NodeModule, filename: string) => {\n\t\t\t\tif (filename === configFile) {\n\t\t\t\t\t(module as NodeModuleWithCompile)._compile(code, filename);\n\t\t\t\t} else {\n\t\t\t\t\tdefaultLoader(module, filename);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdelete require.cache[configFile];\n\n\t\t\treturn Promise.resolve(require(configFile))\n\t\t\t\t.then(configFileContent => {\n\t\t\t\t\tif (configFileContent.default) configFileContent = configFileContent.default;\n\t\t\t\t\tif (typeof configFileContent === 'function') {\n\t\t\t\t\t\treturn configFileContent(commandOptions);\n\t\t\t\t\t}\n\t\t\t\t\treturn configFileContent;\n\t\t\t\t})\n\t\t\t\t.then(configs => {\n\t\t\t\t\tif (Object.keys(configs).length === 0) {\n\t\t\t\t\t\thandleError({\n\t\t\t\t\t\t\tcode: 'MISSING_CONFIG',\n\t\t\t\t\t\t\tmessage: 'Config file must export an options object, or an array of options objects',\n\t\t\t\t\t\t\turl: 'https://rollupjs.org/guide/en/#configuration-files'\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\n\t\t\t\t\trequire.extensions['.js'] = defaultLoader;\n\n\t\t\t\t\treturn Array.isArray(configs) ? configs : [configs];\n\t\t\t\t});\n\t\t});\n}\n","'use strict';\nmodule.exports = date => {\n\tconst offset = (date || new Date()).getTimezoneOffset();\n\tconst absOffset = Math.abs(offset);\n\tconst hours = Math.floor(absOffset / 60);\n\tconst minutes = absOffset % 60;\n\tconst minutesOut = minutes > 0 ? ':' + ('0' + minutes).slice(-2) : '';\n\n\treturn (offset < 0 ? '+' : '-') + hours + minutesOut;\n};\n","'use strict';\nconst timeZone = require('time-zone');\n\nconst dateTime = options => {\n\toptions = Object.assign({\n\t\tdate: new Date(),\n\t\tlocal: true,\n\t\tshowTimeZone: false,\n\t\tshowMilliseconds: false\n\t}, options);\n\n\tlet {date} = options;\n\n\tif (options.local) {\n\t\t// Offset the date so it will return the correct value when getting the ISO string\n\t\tdate = new Date(date.getTime() - (date.getTimezoneOffset() * 60000));\n\t}\n\n\tlet end = '';\n\n\tif (options.showTimeZone) {\n\t\tend = ' UTC' + (options.local ? timeZone(date) : '');\n\t}\n\n\tif (options.showMilliseconds && date.getUTCMilliseconds() > 0) {\n\t\tend = ` ${date.getUTCMilliseconds()}ms${end}`;\n\t}\n\n\treturn date\n\t\t.toISOString()\n\t\t.replace(/T/, ' ')\n\t\t.replace(/\\..+/, end);\n};\n\nmodule.exports = dateTime;\n// TODO: Remove this for the next major release\nmodule.exports.default = dateTime;\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.\nvar assert = require('assert')\nvar signals = require('./signals.js')\n\nvar EE = require('events')\n/* istanbul ignore if */\nif (typeof EE !== 'function') {\n EE = EE.EventEmitter\n}\n\nvar emitter\nif (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.\nif (!emitter.infinite) {\n emitter.setMaxListeners(Infinity)\n emitter.infinite = true\n}\n\nmodule.exports = function (cb, opts) {\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\nmodule.exports.unload = unload\nfunction unload () {\n if (!loaded) {\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\nfunction emit (event, code, signal) {\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>, ... }\nvar sigListeners = {}\nsignals.forEach(function (sig) {\n sigListeners[sig] = function listener () {\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 process.kill(process.pid, sig)\n }\n }\n})\n\nmodule.exports.signals = function () {\n return signals\n}\n\nmodule.exports.load = load\n\nvar loaded = false\n\nfunction load () {\n if (loaded) {\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\nvar originalProcessReallyExit = process.reallyExit\nfunction processReallyExit (code) {\n process.exitCode = code || 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\nvar originalProcessEmit = process.emit\nfunction processEmit (ev, arg) {\n if (ev === 'exit') {\n if (arg !== undefined) {\n process.exitCode = arg\n }\n var ret = originalProcessEmit.apply(this, arguments)\n emit('exit', process.exitCode, null)\n /* istanbul ignore next */\n emit('afterexit', process.exitCode, null)\n return ret\n } else {\n return originalProcessEmit.apply(this, arguments)\n }\n}\n","import { stderr } from '../logging';\n\nconst CLEAR_SCREEN = '\\u001Bc';\n\nexport function getResetScreen(clearScreen: boolean) {\n\tif (clearScreen) {\n\t\treturn (heading: string) => stderr(CLEAR_SCREEN + heading);\n\t}\n\n\tlet firstRun = true;\n\treturn (heading: string) => {\n\t\tif (firstRun) {\n\t\t\tstderr(heading);\n\t\t\tfirstRun = false;\n\t\t}\n\t};\n}\n","import dateTime from 'date-time';\nimport fs from 'fs';\nimport ms from 'pretty-ms';\nimport * as rollup from 'rollup';\nimport onExit from 'signal-exit';\nimport tc from 'turbocolor';\nimport {\n\tInputOption,\n\tRollupBuild,\n\tRollupError,\n\tRollupWatchOptions,\n\tWarningHandler,\n\tWatcherOptions\n} from '../../../src/rollup/types';\nimport mergeOptions, { GenericConfigObject } from '../../../src/utils/mergeOptions';\nimport relativeId from '../../../src/utils/relativeId';\nimport { handleError, stderr } from '../logging';\nimport batchWarnings from './batchWarnings';\nimport loadConfigFile from './loadConfigFile';\nimport { getResetScreen } from './resetScreen';\nimport { printTimings } from './timings';\n\ninterface WatchEvent {\n\tcode?: string;\n\tduration?: number;\n\terror?: RollupError | Error;\n\tinput?: InputOption;\n\toutput?: string[];\n\tresult?: RollupBuild;\n}\n\ninterface Watcher {\n\tclose: () => void;\n\ton: (event: string, fn: (event: WatchEvent) => void) => void;\n}\n\nexport default function watch(\n\tconfigFile: string,\n\tconfigs: GenericConfigObject[],\n\tcommand: any,\n\tsilent = false\n) {\n\tconst isTTY = Boolean(process.stderr.isTTY);\n\tconst warnings = batchWarnings();\n\tconst initialConfigs = processConfigs(configs);\n\tconst clearScreen = initialConfigs.every(\n\t\tconfig => (config.watch as WatcherOptions).clearScreen !== false\n\t);\n\n\tconst resetScreen = getResetScreen(isTTY && clearScreen);\n\tlet watcher: Watcher;\n\tlet configWatcher: Watcher;\n\n\tfunction processConfigs(configs: GenericConfigObject[]): RollupWatchOptions[] {\n\t\treturn configs.map(options => {\n\t\t\tconst merged = mergeOptions({\n\t\t\t\tcommand,\n\t\t\t\tconfig: options,\n\t\t\t\tdefaultOnWarnHandler: warnings.add\n\t\t\t});\n\n\t\t\tconst result: RollupWatchOptions = {\n\t\t\t\t...merged.inputOptions,\n\t\t\t\toutput: merged.outputOptions\n\t\t\t};\n\n\t\t\tif (!result.watch) result.watch = {};\n\n\t\t\tif (merged.optionError)\n\t\t\t\t(merged.inputOptions.onwarn as WarningHandler)({\n\t\t\t\t\tcode: 'UNKNOWN_OPTION',\n\t\t\t\t\tmessage: merged.optionError\n\t\t\t\t});\n\n\t\t\treturn result;\n\t\t});\n\t}\n\n\tfunction start(configs: RollupWatchOptions[]) {\n\t\twatcher = rollup.watch(configs);\n\n\t\twatcher.on('event', (event: WatchEvent) => {\n\t\t\tswitch (event.code) {\n\t\t\t\tcase 'FATAL':\n\t\t\t\t\thandleError(event.error as RollupError, true);\n\t\t\t\t\tprocess.exit(1);\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'ERROR':\n\t\t\t\t\twarnings.flush();\n\t\t\t\t\thandleError(event.error as RollupError, true);\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'START':\n\t\t\t\t\tif (!silent) {\n\t\t\t\t\t\tresetScreen(tc.underline(`rollup v${rollup.VERSION}`));\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'BUNDLE_START':\n\t\t\t\t\tif (!silent) {\n\t\t\t\t\t\tlet input = event.input;\n\t\t\t\t\t\tif (typeof input !== 'string') {\n\t\t\t\t\t\t\tinput = Array.isArray(input)\n\t\t\t\t\t\t\t\t? input.join(', ')\n\t\t\t\t\t\t\t\t: Object.keys(input as Record<string, string>)\n\t\t\t\t\t\t\t\t\t\t.map(key => (input as Record<string, string>)[key])\n\t\t\t\t\t\t\t\t\t\t.join(', ');\n\t\t\t\t\t\t}\n\t\t\t\t\t\tstderr(\n\t\t\t\t\t\t\ttc.cyan(\n\t\t\t\t\t\t\t\t`bundles ${tc.bold(input)} → ${tc.bold(\n\t\t\t\t\t\t\t\t\t(event.output as string[]).map(relativeId).join(', ')\n\t\t\t\t\t\t\t\t)}...`\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'BUNDLE_END':\n\t\t\t\t\twarnings.flush();\n\t\t\t\t\tif (!silent)\n\t\t\t\t\t\tstderr(\n\t\t\t\t\t\t\ttc.green(\n\t\t\t\t\t\t\t\t`created ${tc.bold(\n\t\t\t\t\t\t\t\t\t(event.output as string[]).map(relativeId).join(', ')\n\t\t\t\t\t\t\t\t)} in ${tc.bold(ms(event.duration as number))}`\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t);\n\t\t\t\t\tif (event.result && event.result.getTimings) {\n\t\t\t\t\t\tprintTimings(event.result.getTimings());\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'END':\n\t\t\t\t\tif (!silent && isTTY) {\n\t\t\t\t\t\tstderr(`\\n[${dateTime()}] waiting for changes...`);\n\t\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\t// catch ctrl+c, kill, and uncaught errors\n\tconst removeOnExit = onExit(close);\n\tprocess.on('uncaughtException', close);\n\n\t// only listen to stdin if it is a pipe\n\tif (!process.stdin.isTTY) {\n\t\tprocess.stdin.on('end', close); // in case we ever support stdin!\n\t}\n\n\tfunction close(err: Error) {\n\t\tremoveOnExit();\n\t\tprocess.removeListener('uncaughtException', close);\n\t\t// removing a non-existent listener is a no-op\n\t\tprocess.stdin.removeListener('end', close);\n\n\t\tif (watcher) watcher.close();\n\n\t\tif (configWatcher) configWatcher.close();\n\n\t\tif (err) {\n\t\t\tconsole.error(err);\n\t\t\tprocess.exit(1);\n\t\t}\n\t}\n\n\ttry {\n\t\tstart(initialConfigs);\n\t} catch (err) {\n\t\tclose(err);\n\t\treturn;\n\t}\n\n\tif (configFile && !configFile.startsWith('node:')) {\n\t\tlet restarting = false;\n\t\tlet aborted = false;\n\t\tlet configFileData = fs.readFileSync(configFile, 'utf-8');\n\n\t\tconst restart = () => {\n\t\t\tconst newConfigFileData = fs.readFileSync(configFile, 'utf-8');\n\t\t\tif (newConfigFileData === configFileData) return;\n\t\t\tconfigFileData = newConfigFileData;\n\n\t\t\tif (restarting) {\n\t\t\t\taborted = true;\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\trestarting = true;\n\n\t\t\tloadConfigFile(configFile, command)\n\t\t\t\t.then((_configs: RollupWatchOptions[]) => {\n\t\t\t\t\trestarting = false;\n\n\t\t\t\t\tif (aborted) {\n\t\t\t\t\t\taborted = false;\n\t\t\t\t\t\trestart();\n\t\t\t\t\t} else {\n\t\t\t\t\t\twatcher.close();\n\t\t\t\t\t\tstart(initialConfigs);\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\t.catch((err: Error) => {\n\t\t\t\t\thandleError(err, true);\n\t\t\t\t});\n\t\t};\n\n\t\tconfigWatcher = fs.watch(configFile, (event: string) => {\n\t\t\tif (event === 'change') restart();\n\t\t});\n\t}\n}\n","import { realpathSync } from 'fs';\nimport relative from 'require-relative';\nimport { WarningHandler } from '../../../src/rollup/types';\nimport mergeOptions, { GenericConfigObject } from '../../../src/utils/mergeOptions';\nimport { getAliasName } from '../../../src/utils/relativeId';\nimport { handleError } from '../logging';\nimport batchWarnings from './batchWarnings';\nimport build from './build';\nimport loadConfigFile from './loadConfigFile';\nimport watch from './watch';\n\nexport default function runRollup(command: any) {\n\tlet inputSource;\n\tif (command._.length > 0) {\n\t\tif (command.input) {\n\t\t\thandleError({\n\t\t\t\tcode: 'DUPLICATE_IMPORT_OPTIONS',\n\t\t\t\tmessage: 'use --input, or pass input path as argument'\n\t\t\t});\n\t\t}\n\t\tinputSource = command._;\n\t} else if (typeof command.input === 'string') {\n\t\tinputSource = [command.input];\n\t} else {\n\t\tinputSource = command.input;\n\t}\n\n\tif (inputSource && inputSource.length > 0) {\n\t\tif (inputSource.some((input: string) => input.indexOf('=') !== -1)) {\n\t\t\tcommand.input = {};\n\t\t\tinputSource.forEach((input: string) => {\n\t\t\t\tconst equalsIndex = input.indexOf('=');\n\t\t\t\tconst value = input.substr(equalsIndex + 1);\n\t\t\t\tlet key = input.substr(0, equalsIndex);\n\t\t\t\tif (!key) key = getAliasName(input);\n\t\t\t\tcommand.input[key] = value;\n\t\t\t});\n\t\t} else {\n\t\t\tcommand.input = inputSource;\n\t\t}\n\t}\n\n\tif (command.environment) {\n\t\tconst environment = Array.isArray(command.environment)\n\t\t\t? command.environment\n\t\t\t: [command.environment];\n\n\t\tenvironment.forEach((arg: string) => {\n\t\t\targ.split(',').forEach((pair: string) => {\n\t\t\t\tconst [key, value] = pair.split(':');\n\t\t\t\tif (value) {\n\t\t\t\t\tprocess.env[key] = value;\n\t\t\t\t} else {\n\t\t\t\t\tprocess.env[key] = String(true);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\tlet configFile = command.config === true ? 'rollup.config.js' : command.config;\n\n\tif (configFile) {\n\t\tif (configFile.slice(0, 5) === 'node:') {\n\t\t\tconst pkgName = configFile.slice(5);\n\t\t\ttry {\n\t\t\t\tconfigFile = relative.resolve(`rollup-config-${pkgName}`, process.cwd());\n\t\t\t} catch (err) {\n\t\t\t\ttry {\n\t\t\t\t\tconfigFile = relative.resolve(pkgName, process.cwd());\n\t\t\t\t} catch (err) {\n\t\t\t\t\tif (err.code === 'MODULE_NOT_FOUND') {\n\t\t\t\t\t\thandleError({\n\t\t\t\t\t\t\tcode: 'MISSING_EXTERNAL_CONFIG',\n\t\t\t\t\t\t\tmessage: `Could not resolve config file ${configFile}`\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\n\t\t\t\t\tthrow err;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\t// find real path of config so it matches what Node provides to callbacks in require.extensions\n\t\t\tconfigFile = realpathSync(configFile);\n\t\t}\n\n\t\tif (command.watch) process.env.ROLLUP_WATCH = 'true';\n\n\t\tloadConfigFile(configFile, command)\n\t\t\t.then(configs => execute(configFile, configs, command))\n\t\t\t.catch(handleError);\n\t} else {\n\t\treturn execute(configFile, [{ input: null }] as any, command);\n\t}\n}\n\nfunction execute(configFile: string, configs: GenericConfigObject[], command: any) {\n\tif (command.watch) {\n\t\twatch(configFile, configs, command, command.silent);\n\t} else {\n\t\tlet promise = Promise.resolve();\n\t\tfor (const config of configs) {\n\t\t\tpromise = promise.then(() => {\n\t\t\t\tconst warnings = batchWarnings();\n\t\t\t\tconst { inputOptions, outputOptions, optionError } = mergeOptions({\n\t\t\t\t\tcommand,\n\t\t\t\t\tconfig,\n\t\t\t\t\tdefaultOnWarnHandler: warnings.add\n\t\t\t\t});\n\n\t\t\t\tif (optionError)\n\t\t\t\t\t(inputOptions.onwarn as WarningHandler)({ code: 'UNKNOWN_OPTION', message: optionError });\n\t\t\t\treturn build(inputOptions, outputOptions, warnings, command.silent);\n\t\t\t});\n\t\t}\n\t\treturn promise;\n\t}\n}\n","import help from 'help.md';\nimport minimist from 'minimist';\nimport { version } from 'package.json';\nimport { commandAliases } from '../../src/utils/mergeOptions';\nimport run from './run/index';\n\nconst command = minimist(process.argv.slice(2), {\n\talias: commandAliases\n});\n\nif (command.help || (process.argv.length <= 2 && process.stdin.isTTY)) {\n\tconsole.log(`\\n${help.replace('__VERSION__', version)}\\n`);\n} else if (command.version) {\n\tconsole.log(`rollup v${version}`);\n} else {\n\ttry {\n\t\trequire('source-map-support').install();\n\t} catch (err) {\n\t\t// do nothing\n\t}\n\n\trun(command);\n}\n"],"names":["path","Module","basename","extname","relative","tc","parseMilliseconds","rollup\n .rollup","SOURCEMAPPING_URL","ms","rollup","signals","require$$0","require$$1","rollup.watch","rollup.VERSION","dateTime","onExit","fs","realpathSync","run"],"mappings":"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"}