Skip to main content

alibi_sqlx/store/entities/
team_member.rs

1use crate::SqlxModel;
2use alibi_core::types::TeamMember;
3use chrono::{DateTime, Utc};
4
5#[derive(Clone, Debug, PartialEq, Eq, sqlx::FromRow, SqlxModel)]
6#[auth(table = "teamMember")]
7pub struct Model {
8    pub id: String,
9    #[sqlx(rename = "teamId")]
10    pub team_id: String,
11    #[sqlx(rename = "userId")]
12    pub user_id: String,
13    #[sqlx(rename = "membershipKey")]
14    pub membership_key: Option<String>,
15    #[sqlx(rename = "createdAt")]
16    pub created_at: Option<DateTime<Utc>>,
17}
18
19impl From<Model> for TeamMember {
20    fn from(model: Model) -> Self {
21        Self {
22            id: model.id,
23            team_id: model.team_id,
24            user_id: model.user_id,
25            membership_key: model.membership_key,
26            created_at: model.created_at,
27        }
28    }
29}