2022-01-28 10:56:55 +08:00
|
|
|
use flowy_derive::ProtoBuf;
|
|
|
|
use serde::{Deserialize, Serialize};
|
|
|
|
|
|
|
|
#[derive(ProtoBuf, Default, Debug, Clone)]
|
|
|
|
pub struct UserPreferences {
|
|
|
|
#[pb(index = 1)]
|
|
|
|
user_id: String,
|
|
|
|
|
|
|
|
#[pb(index = 2)]
|
|
|
|
appearance_setting: AppearanceSettings,
|
|
|
|
}
|
|
|
|
|
|
|
|
#[derive(ProtoBuf, Serialize, Deserialize, Debug, Clone)]
|
|
|
|
pub struct AppearanceSettings {
|
|
|
|
#[pb(index = 1)]
|
|
|
|
pub theme: String,
|
|
|
|
|
|
|
|
#[pb(index = 2)]
|
|
|
|
pub language: String,
|
|
|
|
}
|
|
|
|
|
2022-01-29 22:56:20 +08:00
|
|
|
pub const APPEARANCE_DEFAULT_THEME: &str = "light";
|
2022-01-28 10:56:55 +08:00
|
|
|
pub const APPEARANCE_DEFAULT_LANGUAGE: &str = "en";
|
|
|
|
|
|
|
|
impl std::default::Default for AppearanceSettings {
|
|
|
|
fn default() -> Self {
|
|
|
|
AppearanceSettings {
|
|
|
|
theme: APPEARANCE_DEFAULT_THEME.to_owned(),
|
|
|
|
language: APPEARANCE_DEFAULT_LANGUAGE.to_owned(),
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|