Skip to main content

yauth_entity/
oauth.rs

1use chrono::NaiveDateTime;
2use serde::{Deserialize, Serialize};
3use uuid::Uuid;
4
5#[derive(Debug, Clone, Serialize, Deserialize)]
6pub struct OauthAccount {
7    pub id: Uuid,
8    pub user_id: Uuid,
9    pub provider: String,
10    pub provider_user_id: String,
11    pub access_token_enc: Option<String>,
12    pub refresh_token_enc: Option<String>,
13    pub created_at: NaiveDateTime,
14    pub expires_at: Option<NaiveDateTime>,
15    pub updated_at: NaiveDateTime,
16}
17
18#[derive(Debug, Clone, Serialize, Deserialize)]
19pub struct NewOauthAccount {
20    pub id: Uuid,
21    pub user_id: Uuid,
22    pub provider: String,
23    pub provider_user_id: String,
24    pub access_token_enc: Option<String>,
25    pub refresh_token_enc: Option<String>,
26    pub created_at: NaiveDateTime,
27    pub expires_at: Option<NaiveDateTime>,
28    pub updated_at: NaiveDateTime,
29}
30
31#[derive(Debug, Clone, Serialize, Deserialize)]
32pub struct OauthState {
33    pub state: String,
34    pub provider: String,
35    pub redirect_url: Option<String>,
36    pub expires_at: NaiveDateTime,
37    pub created_at: NaiveDateTime,
38}
39
40#[derive(Debug, Clone, Serialize, Deserialize)]
41pub struct NewOauthState {
42    pub state: String,
43    pub provider: String,
44    pub redirect_url: Option<String>,
45    pub expires_at: NaiveDateTime,
46    pub created_at: NaiveDateTime,
47}