Stats Export Formatter
Component Detail
Infrastructure
medium complexity
mobilebackend
1
Dependencies
0
Dependents
0
Entities
0
Integrations
Description
Utility service that transforms team stats data payloads into export-ready formats (CSV and PDF structure) on the client side. CSV export is available immediately; PDF generation delegates to the backend API endpoint. Ensures the data model supports future admin portal export functionality from day one per implementation requirements.
stats-export-formatter
Responsibilities
- Transform TeamReportData into CSV rows with proper headers
- Construct PDF export request payload and invoke backend endpoint
- Handle file sharing via Flutter share_plus for sending CSV/PDF
- Validate export payload completeness before triggering export
- Format date ranges and filter labels for export file metadata
Interfaces
exportToCsv(TeamReportData data, TeamReportFilter filter)
requestPdfExport(String associationId, TeamReportFilter filter)
shareFile(String filePath, ExportFormat format)
buildCsvRows(List<MentorBreakdown> breakdowns)
buildExportFilename(String associationId, DateRange range, ExportFormat format)