poly_x_tracker/model/
users.rs1use chrono::{DateTime, Utc};
2use serde::{Deserialize, Serialize};
3
4use crate::model::Platform;
5
6#[derive(Debug, Clone, Serialize, Deserialize)]
7#[serde(rename_all = "camelCase")]
8pub struct User {
9 pub id: String,
10 pub handle: String,
11 pub name: String,
12 pub platform: Platform,
13 pub platform_id: String,
14 pub avatar_url: String,
15 pub bio: String,
16 pub verified: bool,
17 pub created_at: DateTime<Utc>,
18 pub updated_at: DateTime<Utc>,
19 pub trackings: Vec<UserTrackings>,
20 #[serde(rename = "_count")]
21 pub count: UserCount,
22}
23
24#[derive(Debug, Clone, Serialize, Deserialize)]
25#[serde(rename_all = "camelCase")]
26pub struct UserTrackings {
27 pub id: String,
28 pub user_id: String,
29 pub title: String,
30 pub start_date: DateTime<Utc>,
31 pub end_date: DateTime<Utc>,
32 pub created_at: DateTime<Utc>,
33 pub updated_at: DateTime<Utc>,
34}
35
36#[derive(Debug, Clone, Serialize, Deserialize)]
37#[serde(rename_all = "camelCase")]
38pub struct UserCount {
39 pub posts: u32,
40}