@platform/ts
Version:
TypesScript build, prepare and publish toolchain.
69 lines (68 loc) • 2.81 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.lint = void 0;
var tslib_1 = require("tslib");
var common_1 = require("../common");
var CONFIG = "\nmodule.exports = {\n extends: '../../node_modules/@platform/ts.libs/lint',\n rules: {},\n}; \n".substring(1);
function lint(args) {
if (args === void 0) { args = {}; }
return tslib_1.__awaiter(this, void 0, void 0, function () {
var silent, cwd, tslint, eslintrc, dir, _a, log, res, error_1;
return tslib_1.__generator(this, function (_b) {
switch (_b.label) {
case 0:
silent = args.silent;
cwd = common_1.fs.resolve('.');
tslint = 'tslint.json';
return [4, common_1.fs.pathExists(common_1.fs.join(cwd, tslint))];
case 1:
if (_b.sent()) {
common_1.fs.rename(common_1.fs.join(cwd, tslint), common_1.fs.join(cwd, '.tslint.json.OLD'));
}
eslintrc = '.eslintrc.js';
_a = args.dir;
if (_a) return [3, 3];
return [4, common_1.paths.closestParentOf(eslintrc)];
case 2:
_a = (_b.sent());
_b.label = 3;
case 3:
dir = _a;
if (!!dir) return [3, 5];
dir = cwd;
return [4, common_1.fs.writeFile(common_1.fs.join(dir, eslintrc), CONFIG)];
case 4:
_b.sent();
_b.label = 5;
case 5:
log = (0, common_1.getLog)(silent);
_b.label = 6;
case 6:
_b.trys.push([6, 8, , 9]);
log.info();
return [4, common_1.exec.cmd.runList([
{
title: 'prettier',
cmd: "prettier --write 'src/**/*.ts{,x}'",
},
{
title: 'lint',
cmd: "eslint 'src/**/*.ts{,x}' --fix",
},
], {
concurrent: true,
silent: silent,
})];
case 7:
res = _b.sent();
res.errors.log({ log: log });
return [2, res];
case 8:
error_1 = _b.sent();
return [2, common_1.result.fail(error_1)];
case 9: return [2];
}
});
});
}
exports.lint = lint;
;