mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2025-10-16 12:05:41 +00:00
24 lines
938 B
JavaScript
24 lines
938 B
JavaScript
// Usage: npm run lint -- my-package-name
|
|
const pkg = process.argv[2];
|
|
const execSync = require("child_process").execSync;
|
|
const existsSync = require("fs").existsSync;
|
|
const path = require("path");
|
|
|
|
// Path of tslint when `types-publisher` is symlinked
|
|
const symlinkedTslintPath = "../node_modules/types-publisher/node_modules/tslint"
|
|
let tslintPath = existsSync(path.join(pkg, symlinkedTslintPath)) ? symlinkedTslintPath : "../node_modules/tslint";
|
|
// An older version (e.g. abs/v0) is in a nested directory, so needs to look one more level up for tslint.
|
|
if (pkg.includes("/") && pkg[pkg.length - 1] !== "/") {
|
|
tslintPath = path.join("..", tslintPath);
|
|
}
|
|
|
|
const cmd = `node ${tslintPath}/lib/tslint-cli --format stylish "**/*.d.ts"`;
|
|
console.log(cmd);
|
|
|
|
try {
|
|
// Child process writes directly to our own stdout
|
|
execSync(cmd, { cwd: pkg, stdio: "inherit" });
|
|
} catch (_) {
|
|
// Process should have printed out error info
|
|
}
|