morbo-cli
Version:
… All tech debt is vermin in the eyes of Morbo!
54 lines (53 loc) • 2.52 kB
JavaScript
;
/* eslint-disable no-console */
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var fs_extra_1 = __importDefault(require("fs-extra"));
var minimist_1 = __importDefault(require("minimist"));
var src_1 = __importDefault(require("../src"));
var package_json_1 = __importDefault(require("../package.json"));
var defaultOptions_1 = __importDefault(require("../src/lib/defaultOptions"));
function help() {
return "\nUsage:\n\n morbo [options] [file|glob ...]\n\nOptions:\n\n -h, --help output usage information\n -v, --version output version\n\n\nConfiguration:\nCreate a .morborc file in the root directory of your project\n\n// Defaults\n{\n customDefinitions: {},\n fileEncoding: 'utf8',\n filesToScan: ['**/*.{js,php,go}'],\n lineLengthLimit: 1000,\n ignoredDirectories: [\n '**/node_modules/**',\n '.git/**',\n '.hg/**',\n '**/flow-typed/**',\n '**/morbo_report/**',\n 'build/**',\n 'dist/**',\n 'config/**',\n ],\n morboServerUri: 'URI_TO_MORBO_SERVER',\n projectId: 'YOUR_MORBO_PROJECT_ID',\n openReportOnCompletion: false,\n scanPath: process.cwd(),\n sendReportOnCompletion: false,\n showGitBlame: true,\n showSkippedChecks: false,\n skipChecks: [],\n}\n\n";
}
var argv = minimist_1.default(process.argv.slice(2));
if (argv.version || argv.v) {
console.log(package_json_1.default.version);
process.exit();
}
if (argv.help || argv.h) {
console.log(help());
process.exit();
}
var options = defaultOptions_1.default;
// Read options from .morborc
try {
var config = fs_extra_1.default.readFileSync('.morborc', 'utf8');
options = __assign({}, JSON.parse(config));
}
catch (err) {
if (err.message.match(/no such file or directory/)) {
console.log('No .morborc file, using default settings');
}
else {
console.log(err);
}
}
var scanPath = argv._;
if (scanPath.length > 0) {
options.scanPath = scanPath.join(',');
}
src_1.default(options);