diff --git a/static/pdf_generator.js b/static/pdf_generator.js
index 65316c9..5fb0f33 100644
--- a/static/pdf_generator.js
+++ b/static/pdf_generator.js
@@ -6,22 +6,11 @@ function buildPdfDocument(results, summary, metadata, gradeReport) {
const esc = (t) => t == null ? '' : String(t)
.replace(/&/g,'&').replace(//g,'>').replace(/"/g,'"');
- // Render Markdown to HTML if marked.js is available, otherwise plain-text escape
+ // Render as plain text with line breaks (no CDN dependencies)
const parseMarkdown = (t) => {
if (!t) return '';
- if (typeof marked !== 'undefined' && marked.parse) {
- return marked.parse(String(t));
- }
- // Fallback: minimal inline rendering without marked
- let s = esc(t);
- s = s.replace(/\*\*(.+?)\*\*/g, '$1');
- s = s.replace(/`([^`]+)`/g, '$1');
- s = s.replace(/^> (.+)$/gm, '
$1
');
- s = s.replace(/\[(.+?)\]\((.+?)\)/g, '$1');
- s = s.replace(/^- (.+)$/gm, '$1');
- s = s.replace(/(.*<\/li>)/gs, '');
- s = s.replace(/\n\n/g, '
');
- return s;
+ const s = esc(String(t));
+ return s.replace(/\n/g, '
');
};
// ── Meta ──────────────────────────────────────────────────────────────────
@@ -178,7 +167,7 @@ function buildPdfDocument(results, summary, metadata, gradeReport) {
return `${esc(trunc(res,60))}
`;
}).join('') + (findings.length>4?`+${findings.length-4} more…
`:'');
return `
- | ${esc(ruleId)} |
+ ${esc(ruleId)} |
${esc(f.rule_name)} ${esc(f.description || '')} |
${sevBadge(f.severity)} |
${findings.length} |
@@ -229,7 +218,7 @@ function buildPdfDocument(results, summary, metadata, gradeReport) {
const cveRows = ordered.map(v => {
const hasRichDesc = v.description && (v.description.includes('**') || v.description.includes('##') || v.description.includes('`'));
return `
- | ${esc(v.rule_id||'—')} |
+ ${esc(v.rule_id||'—')} |
${esc(v.package)} v${esc(v.package_version)} |
${sevBadge(v.severity)} |
${v.fix_version && v.fix_version!=='N/A' ? `→ ${esc(v.fix_version)}` : 'No fix yet'} |
@@ -256,12 +245,10 @@ function buildPdfDocument(results, summary, metadata, gradeReport) {
InfraScan Report — ${repoName}
-
-