forked from projectmoon/tenebrous-dicebot
43 lines
1.1 KiB
JavaScript
43 lines
1.1 KiB
JavaScript
|
#!/usr/bin/env node
|
||
|
|
||
|
'use strict';
|
||
|
|
||
|
const Module = require('module');
|
||
|
|
||
|
const originalModuleCompile = Module.prototype._compile;
|
||
|
|
||
|
require('v8-compile-cache');
|
||
|
|
||
|
const importLocal = require('import-local');
|
||
|
const runCLI = require('../lib/bootstrap');
|
||
|
const utils = require('../lib/utils');
|
||
|
|
||
|
if (!process.env.WEBPACK_CLI_SKIP_IMPORT_LOCAL) {
|
||
|
// Prefer the local installation of `webpack-cli`
|
||
|
if (importLocal(__filename)) {
|
||
|
return;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
process.title = 'webpack';
|
||
|
|
||
|
if (utils.packageExists('webpack')) {
|
||
|
runCLI(process.argv, originalModuleCompile);
|
||
|
} else {
|
||
|
const { promptInstallation, logger, colors } = utils;
|
||
|
|
||
|
promptInstallation('webpack', () => {
|
||
|
utils.logger.error(`It looks like ${colors.bold('webpack')} is not installed.`);
|
||
|
})
|
||
|
.then(() => {
|
||
|
logger.success(`${colors.bold('webpack')} was installed successfully.`);
|
||
|
|
||
|
runCLI(process.argv, originalModuleCompile);
|
||
|
})
|
||
|
.catch(() => {
|
||
|
logger.error(`Action Interrupted, Please try once again or install ${colors.bold('webpack')} manually.`);
|
||
|
|
||
|
process.exit(2);
|
||
|
});
|
||
|
}
|