diff options
| author | 2026-01-14 15:54:39 +0800 | |
|---|---|---|
| committer | 2026-01-14 15:54:39 +0800 | |
| commit | ce4b0c2053d5d16f7091d74840d4a502401f1a4e (patch) | |
| tree | 170667359ecb773800cd334e4176341cf09306b2 /src-tauri/src/core/account_storage.rs | |
| parent | fd6d7ffef4a1c6b093ad1d5b83579ab27ef5327e (diff) | |
| parent | 505e3485f3dfa31969651f7f281fde33e9843fe8 (diff) | |
| download | DropOut-ce4b0c2053d5d16f7091d74840d4a502401f1a4e.tar.gz DropOut-ce4b0c2053d5d16f7091d74840d4a502401f1a4e.zip | |
Merge pull request #25 from HsiangNianian/main
Diffstat (limited to 'src-tauri/src/core/account_storage.rs')
| -rw-r--r-- | src-tauri/src/core/account_storage.rs | 29 |
1 files changed, 12 insertions, 17 deletions
diff --git a/src-tauri/src/core/account_storage.rs b/src-tauri/src/core/account_storage.rs index b8e15e1..569df7b 100644 --- a/src-tauri/src/core/account_storage.rs +++ b/src-tauri/src/core/account_storage.rs @@ -4,21 +4,12 @@ use std::fs; use std::path::PathBuf; /// Stored account data for persistence -#[derive(Debug, Clone, Serialize, Deserialize)] +#[derive(Debug, Clone, Serialize, Deserialize, Default)] pub struct AccountStore { pub accounts: Vec<StoredAccount>, pub active_account_id: Option<String>, } -impl Default for AccountStore { - fn default() -> Self { - Self { - accounts: Vec::new(), - active_account_id: None, - } - } -} - #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(tag = "type")] pub enum StoredAccount { @@ -131,13 +122,17 @@ impl AccountStorage { pub fn get_active_account(&self) -> Option<(StoredAccount, Option<String>)> { let store = self.load(); if let Some(active_id) = &store.active_account_id { - store.accounts.iter().find(|a| &a.id() == active_id).map(|a| { - let ms_token = match a { - StoredAccount::Microsoft(m) => m.ms_refresh_token.clone(), - _ => None, - }; - (a.clone(), ms_token) - }) + store + .accounts + .iter() + .find(|a| &a.id() == active_id) + .map(|a| { + let ms_token = match a { + StoredAccount::Microsoft(m) => m.ms_refresh_token.clone(), + _ => None, + }; + (a.clone(), ms_token) + }) } else { None } |