aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src-tauri/src/core/account_storage.rs
diff options
context:
space:
mode:
authorNtskwK <natsukawa247@outlook.com>2026-02-28 09:03:19 +0800
committerNtskwK <natsukawa247@outlook.com>2026-02-28 09:03:19 +0800
commitcc53b1cf260e1c67939e50608ef18764da616d55 (patch)
tree119109c62331d4d26612e2df7726cee82d1871f5 /src-tauri/src/core/account_storage.rs
parentee37d044e473217daadd9ce26c7e2e2ad39a0490 (diff)
parent81a62402ef6f8900ff092366121a9b7a4263ba52 (diff)
downloadDropOut-cc53b1cf260e1c67939e50608ef18764da616d55.tar.gz
DropOut-cc53b1cf260e1c67939e50608ef18764da616d55.zip
Merge remote-tracking branch 'upstream/main'
Diffstat (limited to 'src-tauri/src/core/account_storage.rs')
-rw-r--r--src-tauri/src/core/account_storage.rs12
1 files changed, 9 insertions, 3 deletions
diff --git a/src-tauri/src/core/account_storage.rs b/src-tauri/src/core/account_storage.rs
index 8998206..df202cd 100644
--- a/src-tauri/src/core/account_storage.rs
+++ b/src-tauri/src/core/account_storage.rs
@@ -2,23 +2,27 @@ use crate::core::auth::{Account, MicrosoftAccount, OfflineAccount};
use serde::{Deserialize, Serialize};
use std::fs;
use std::path::PathBuf;
+use ts_rs::TS;
/// Stored account data for persistence
-#[derive(Debug, Clone, Serialize, Deserialize, Default)]
+#[derive(Debug, Clone, Serialize, Deserialize, Default, TS)]
+#[ts(export, export_to = "account.ts")]
pub struct AccountStore {
pub accounts: Vec<StoredAccount>,
pub active_account_id: Option<String>,
}
-#[derive(Debug, Clone, Serialize, Deserialize)]
+#[derive(Debug, Clone, Serialize, Deserialize, TS)]
#[serde(tag = "type")]
+#[ts(export, export_to = "account.ts")]
pub enum StoredAccount {
Offline(OfflineAccount),
Microsoft(StoredMicrosoftAccount),
}
/// Microsoft account with refresh token for persistence
-#[derive(Debug, Clone, Serialize, Deserialize)]
+#[derive(Debug, Clone, Serialize, Deserialize, TS)]
+#[ts(export, export_to = "account.ts")]
pub struct StoredMicrosoftAccount {
pub username: String,
pub uuid: String,
@@ -64,6 +68,8 @@ impl StoredAccount {
}
}
+#[derive(Debug, Clone, TS)]
+#[ts(export, export_to = "account.ts")]
pub struct AccountStorage {
file_path: PathBuf,
}