const { resolve } = require('path'); const { Linter, Configuration: { findConfiguration } } = require('tslint'); const tslintJsonPath = resolve(__dirname, '../tslint.json'); const { results: config } = findConfiguration(tslintJsonPath); const formatRule = (rule) => `${rule.ruleName}:${rule.ruleSeverity}`; const linter = new Linter({ fix: false }); const rules = linter.getEnabledRules(config, false); rules.map(r => formatRule(r)).sort().forEach(r => console.log(r));
presetをextendsするのが主流だけど、このpresetってデフォルトでどういう設定を提供するんだっけ? と調べはじめたりしてまあまあ不毛だし、そういうのとってくるAPIあるでしょと思い調べたらやはりあった。
内部向けっぽいAPIを無理矢理使っているわけでもないので、まあまあ安定しそう。