Expand description
Data export functionality for external analysis and backup.
Provides a comprehensive data export system that enables users to extract their work tracking data in multiple formats for external analysis, backup, integration with other tools, or compliance reporting.
§Features
- Export Formats: CSV, JSON, Excel with formatting and multiple sheets
- Data Types: Reports, tasks, summaries, and complete data export
- File Naming: Intelligent naming conventions with timestamp-based uniqueness
- Error Handling: Robust validation and error recovery
§Usage
use kasl::libs::export::{Exporter, ExportFormat, ExportData};
use chrono::NaiveDate;
let exporter = Exporter::new(ExportFormat::Csv, None);
exporter.export(ExportData::Report, NaiveDate::from_ymd_opt(2025, 1, 15).unwrap()).await?;Structs§
- Export
DaySum - Serializable structure representing a single day within a monthly summary.
- Export
Interval - Serializable structure representing a work interval within a daily report.
- Export
Report - Serializable structure representing a daily work report for export.
- Export
Summary - Serializable structure representing a monthly summary for export.
- Export
Task - Serializable structure representing a task record for export.
- Exporter
- Main export handler responsible for orchestrating data export operations.
Enums§
- Export
Data - Enumeration of data types available for export.
- Export
Format - Enumeration of supported export output formats.