UNPKG

@wpk-cli/cli

Version:

an unofficial CLI for webpack

64 lines (48 loc) 1.75 kB
#!/usr/bin/env node "use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")); run(); function run() { return _run.apply(this, arguments); } function _run() { _run = (0, _asyncToGenerator2.default)(function* () { if (process.argv.join(" ").indexOf("--version") !== -1) { console.log(require("../package").version); process.exit(0); return; } const IS_PROFILING_FLAG = "--wpk-is-profiling"; const SHOULD_PROFILE_FLAG = "--wpk-profile"; const shouldProfile = "WPK_PROFILE" in process.env || process.argv.find(f => f === SHOULD_PROFILE_FLAG); const isProfiling = process.argv.find(f => f === IS_PROFILING_FLAG); if (shouldProfile && !isProfiling) { try { const file = yield require("0x")({ argv: process.argv.slice(1).concat(IS_PROFILING_FLAG), workingDir: process.cwd() }); console.log("\nprofiling complete:"); console.log(`flamegraph in ${file}`); } catch (err) { console.error("\nprofiling error:"); console.error(err); } return; } global.WPK_START_TIME = Date.now(); if (!isProfiling && !("WPK_DISABLE_COMPILE_CACHE" in process.env)) { require("v8-compile-cache"); } require("@babel/polyfill"); global.Promise = require("bluebird"); const _require = require("./util"), processError = _require.processError; process.on("uncaughtException", processError); process.on("unhandledRejection", processError); require("./global"); require("./cli").run(); }); return _run.apply(this, arguments); }