ts-import-types-cli
Version:
Autofix TypeScript types to be imported using `import type`
63 lines (62 loc) • 2.25 kB
JavaScript
;
var __read = (this && this.__read) || function (o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
};
var __spread = (this && this.__spread) || function () {
for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));
return ar;
};
exports.__esModule = true;
var chalk = require("chalk");
var program = require("commander");
var path_1 = require("path");
var _1 = require(".");
var sourcePatterns = [];
program
.version(require('../package.json').version)
.arguments('[patterns...]')
.action(function (args) {
sourcePatterns.push.apply(sourcePatterns, __spread(args.filter(function (arg) { return arg && typeof arg === 'string'; })));
})
.option('-d, --dry-run', 'write output to stdout instead of overwriting files')
.option('-p, --project [path]', 'path to tsconfig.json')
.option('-O, --no-organise-imports', "disable use of VS Code's organise imports refactoring")
.parse(process.argv);
var dryRun = program.dryRun === true;
var organiseImports = program.organiseImports !== false;
var project = program.project || './tsconfig.json';
var tsConfigFilePath = path_1.resolve(process.cwd(), project);
try {
require(tsConfigFilePath);
}
catch (err) {
var message = "ts-import-types-cli --project " + tsConfigFilePath + " is not a tsconfig.json file";
console.error(chalk.red(message));
process.exit(1);
}
try {
_1.tsImportTypes({
dryRun: dryRun,
organiseImports: organiseImports,
sourcePatterns: sourcePatterns,
tsConfigFilePath: tsConfigFilePath
});
}
catch (err) {
console.error(chalk.red('! %s\n\n! Please raise an issue at %s\n\n%s'), err.message, chalk.underline('https://github.com/JamieMason/ts-import-types-cli/issues'), String(err.stack).replace(/^/gm, ' '));
process.exit(1);
}