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