use serde::{Deserialize, Serialize};
#[non_exhaustive]
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct UserProfile {
pub provider: String,
pub provider_user_id: String,
pub email: String,
pub email_verified: bool,
pub name: Option<String>,
pub avatar_url: Option<String>,
pub raw: serde_json::Value,
}
impl UserProfile {
pub fn new(
provider: impl Into<String>,
provider_user_id: impl Into<String>,
email: impl Into<String>,
) -> Self {
Self {
provider: provider.into(),
provider_user_id: provider_user_id.into(),
email: email.into(),
email_verified: false,
name: None,
avatar_url: None,
raw: serde_json::Value::Null,
}
}
}