Skip to main content

alibi_sqlx/store/entities/
user.rs

1use chrono::{DateTime, Utc};
2use serde::Serialize;
3
4#[derive(crate::AuthEntity, Clone, Debug, PartialEq, Serialize, sqlx::FromRow)]
5#[auth(role = "user", table = "users", secondary_storage)]
6pub struct Model {
7    pub id: String,
8    pub name: Option<String>,
9    pub email: Option<String>,
10    pub email_verified: bool,
11    pub image: Option<String>,
12    pub username: Option<String>,
13    pub display_username: Option<String>,
14    pub two_factor_enabled: Option<bool>,
15    pub role: Option<String>,
16    pub banned: Option<bool>,
17    pub ban_reason: Option<String>,
18    pub ban_expires: Option<DateTime<Utc>>,
19    pub metadata: crate::JsonMetadata,
20    pub is_anonymous: Option<bool>,
21    pub phone_number: Option<String>,
22    pub phone_number_verified: Option<bool>,
23    pub last_login_method: Option<String>,
24    pub created_at: DateTime<Utc>,
25    pub updated_at: DateTime<Utc>,
26}