/** * HTML Reporter for Footprint/Symbol Validation * * Generates side-by-side HTML reports comparing reference vs generated output */ import type { ValidationResult, FootprintComparisonResult, SymbolComparisonResult, PadDiff, PinDiff, } from './types.js'; // ============================================================================= // HTML Report Generation // ============================================================================= export interface ReportSvgs { footprintRef?: string; footprintGen?: string; symbolRef?: string; symbolGen?: string; } /** * Generate an HTML report for a single validation result */ export function generateValidationReport( result: ValidationResult, svgs?: ReportSvgs ): string { const statusClass = result.passed ? 'pass' : 'fail'; const statusText = result.passed ? 'PASS' : 'FAIL'; return `
| LCSC | Component | Footprint | Symbol | Status | Duration |
|---|