use chrono::{DateTime, Utc};
use serde::{Deserialize};
use crate::{teams::TeamWithMembers, users::BaseUser};
#[derive(Clone, Debug, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Website {
pub id: String,
pub name: String,
pub domain: String,
pub share_id: Option<String>,
pub reset_at: Option<DateTime<Utc>>,
pub user_id: Option<String>,
pub team_id: Option<String>,
pub created_by: Option<String>,
pub created_at: DateTime<Utc>,
pub updated_at: Option<DateTime<Utc>>,
pub deleted_at: Option<DateTime<Utc>>,
}
#[derive(Clone, Debug, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct WebsiteWithCreateUser {
#[serde(flatten)]
pub website: Website,
pub create_user: BaseUser,
}
#[derive(Clone, Debug, Deserialize)]
pub struct WebsiteWithUser {
#[serde(flatten)]
pub website: Website,
pub user: Option<BaseUser>,
}
#[derive(Clone, Debug, Deserialize)]
pub struct WebsiteWithUserTeam {
#[serde(flatten)]
pub website: WebsiteWithUser,
pub team: Option<TeamWithMembers>,
}