| |
| """Report Generation Plugin""" |
| from typing import Dict, Any, List |
| from datetime import datetime |
|
|
| class ReportGenerator: |
| """Generate formatted reports.""" |
| |
| def generate_markdown_report(self, title: str, sections: List[Dict[str, Any]]) -> str: |
| """Generate markdown formatted report.""" |
| report = [f"# {title}", f"*Generated: {datetime.now().strftime('%Y-%m-%d %H:%M:%S')}*", ""] |
| |
| for section in sections: |
| report.append(f"## {section.get('heading', 'Section')}") |
| report.append(section.get('content', '')) |
| report.append("") |
| |
| return "\n".join(report) |
| |
| def generate_summary(self, data: Dict[str, Any]) -> str: |
| """Generate executive summary.""" |
| summary = ["## Executive Summary", ""] |
| for key, value in data.items(): |
| summary.append(f"**{key}:** {value}") |
| return "\n".join(summary) |
|
|