canonical
Version:
Canonical code style linter and formatter for JavaScript, SCSS, CSS and JSON.
97 lines (74 loc) • 2.56 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _yargs = require('yargs');
var _yargs2 = _interopRequireDefault(_yargs);
var _getStdin = require('get-stdin');
var _getStdin2 = _interopRequireDefault(_getStdin);
var _utilities = require('./../../utilities');
var _bin = require('./../../utilities/bin');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var handleStdin = undefined,
handleFilePaths = undefined;
handleStdin = function handleStdin(yargs, argv) {
/* eslint-disable no-unused-expressions */
yargs
/* eslint-enable */
.demand(0, 0).argv;
(0, _getStdin2.default)().then(function (stdin) {
var report = undefined;
report = (0, _utilities.lintText)(stdin, {
filePath: argv.filePath,
syntax: argv.syntax
});
(0, _bin.outputReport)({
errorCount: report.errorCount,
results: [report],
warningCount: report.warningCount
}, argv.outputFormat);
});
};
handleFilePaths = function handleFilePaths(yargs, argv) {
var report = undefined,
targetPaths = undefined;
/* eslint-disable no-unused-expressions */
yargs
/* eslint-enable */
.demand(1).argv;
targetPaths = (0, _bin.getTargetPaths)(argv._);
report = (0, _utilities.lintFiles)(targetPaths);
(0, _bin.outputReport)(report, argv.outputFormat);
};
exports.default = function () {
var argv = undefined;
argv = (0, _yargs2.default)(process.argv.splice(3)).fail(_bin.failHandler).help('help').strict().options({
'file-path': {
default: '<text>',
describe: 'Name of the file being linted with stdin (if any). Used in reporting.',
type: 'string'
},
'output-format': {
choices: ['json', 'checkstyle', 'table'],
default: 'table'
},
stdin: {
default: false,
describe: 'Used to indicate that subject body will be read from stdin.',
type: 'boolean'
},
syntax: {
// @todo This need to be true when using stdin.
choices: ['css', 'js', 'json', 'scss'],
demand: false,
describe: 'Syntax of the input.'
}
}).argv;
if (argv.stdin) {
handleStdin(_yargs2.default, argv);
} else {
handleFilePaths(_yargs2.default, argv);
}
};
module.exports = exports['default'];
//# sourceMappingURL=lintCommand.js.map