in src/suggestions.ts [22:51]
export function addSuggestion<T>(ctx: WalkContext<T>, message: string, start?: number, width?: number) {
const suggestion: Suggestion = {
fileName: ctx.sourceFile.fileName,
ruleName: ctx.ruleName,
message,
start,
width,
};
const packageName = dtPackageName(ctx.sourceFile.fileName);
if (!packageName) {
return;
}
let flag = "a";
if (!existingPackages.has(packageName)) {
flag = "w";
existingPackages.add(packageName);
}
try {
if (!fs.existsSync(suggestionsDir)) {
fs.mkdirSync(suggestionsDir, { recursive: true });
}
fs.writeFileSync(
path.join(suggestionsDir, packageName + ".txt"),
flag === "a" ? "\n" + formatSuggestion(suggestion) : formatSuggestion(suggestion),
{ flag, encoding: "utf8" });
} catch (e) {
console.log(`Could not write suggestions for package ${packageName}. ${e.message || ""}`);
}
}