Import/export feature for config and data

This commit is contained in:
2026-02-22 07:36:34 +00:00
parent 9cc8a214ad
commit 9deffc3d1d
15 changed files with 1717 additions and 125 deletions

View File

@@ -1,5 +1,7 @@
use chrono::{DateTime, Utc};
use serde::{Deserialize, Serialize};
use crate::config::Config;
use crate::engine::key_stats::KeyStatsStore;
use crate::engine::skill_tree::SkillTreeProgress;
use crate::session::result::DrillResult;
@@ -69,3 +71,16 @@ impl Default for DrillHistoryData {
}
}
}
pub const EXPORT_VERSION: u32 = 1;
#[derive(Clone, Debug, Serialize, Deserialize)]
pub struct ExportData {
pub keydr_export_version: u32,
pub exported_at: DateTime<Utc>,
pub config: Config,
pub profile: ProfileData,
pub key_stats: KeyStatsData,
pub ranked_key_stats: KeyStatsData,
pub drill_history: DrillHistoryData,
}