use tokmd_analysis_types::AnalysisReceipt;
pub(super) fn build_report_json(receipt: &AnalysisReceipt) -> String {
let mut files = Vec::new();
if let Some(derived) = &receipt.derived {
for row in &derived.top.largest_lines {
files.push(serde_json::json!({
"path": row.path,
"module": row.module,
"lang": row.lang,
"code": row.code,
"lines": row.lines,
"tokens": row.tokens,
}));
}
}
serde_json::json!({ "files": files })
.to_string()
.replace('<', "\\u003c")
.replace('>', "\\u003e")
}