File size: 696 Bytes
bbb1195 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | use serde::{Deserialize, Serialize};
use crate::proxy::ProxyConfig;
/// Application configuration
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct AppConfig {
pub language: String,
pub theme: String,
pub auto_refresh: bool,
pub refresh_interval: i32, // minutes
#[serde(default)]
pub proxy: ProxyConfig,
}
impl AppConfig {
pub fn new() -> Self {
Self {
language: "zh".to_string(),
theme: "system".to_string(),
auto_refresh: false,
refresh_interval: 15,
proxy: ProxyConfig::default(),
}
}
}
impl Default for AppConfig {
fn default() -> Self {
Self::new()
}
}
|