71 lines
1.6 KiB
Rust
71 lines
1.6 KiB
Rust
|
use std::collections::HashMap;
|
||
|
|
||
|
use serde::{Serialize, Deserialize};
|
||
|
use utoipa::{ToSchema, IntoParams};
|
||
|
|
||
|
#[derive(Serialize, Deserialize, ToSchema, Debug, IntoParams)]
|
||
|
pub struct AuthParams {
|
||
|
pub token: Option<String>,
|
||
|
}
|
||
|
|
||
|
#[derive(Serialize, ToSchema, Debug, Clone)]
|
||
|
pub struct FullViewData {
|
||
|
pub games: HashMap<i32, ChellarisGame>,
|
||
|
pub ethics: HashMap<i32, Ethic>,
|
||
|
pub species: HashMap<i32, Species>,
|
||
|
}
|
||
|
|
||
|
#[derive(Serialize, ToSchema, Debug, Clone)]
|
||
|
pub struct ChellarisGame {
|
||
|
pub id: i32,
|
||
|
pub name: String,
|
||
|
pub groups: HashMap<i32, ChellarisGameGroup>,
|
||
|
pub empires: HashMap<i32, ChellarisEmpire>,
|
||
|
}
|
||
|
|
||
|
#[derive(Serialize, ToSchema, Debug, Clone)]
|
||
|
pub struct ChellarisGameGroup {
|
||
|
pub id: i32,
|
||
|
pub name: String,
|
||
|
}
|
||
|
|
||
|
#[derive(Serialize, ToSchema, Debug, Clone)]
|
||
|
pub struct ChellarisEmpire {
|
||
|
pub id: i32,
|
||
|
pub gestalt: bool,
|
||
|
pub machine: bool,
|
||
|
pub group: i32,
|
||
|
pub empire_portrait: i32,
|
||
|
pub empire_portrait_group: i32,
|
||
|
pub discord_user: Option<String>,
|
||
|
pub ethics: HashMap<i32, EmpireEthic>,
|
||
|
}
|
||
|
|
||
|
#[derive(Serialize, ToSchema, Debug, Clone)]
|
||
|
pub struct Ethic {
|
||
|
pub id: i32,
|
||
|
pub displayName: String,
|
||
|
pub machine: bool,
|
||
|
}
|
||
|
|
||
|
#[derive(Serialize, ToSchema, Debug, Clone)]
|
||
|
pub struct EmpireEthic {
|
||
|
pub id: i32,
|
||
|
pub displayName: String,
|
||
|
pub machine: bool,
|
||
|
pub fanatic: bool,
|
||
|
}
|
||
|
|
||
|
#[derive(Serialize, ToSchema, Debug, Clone)]
|
||
|
pub struct Species {
|
||
|
pub id: i32,
|
||
|
pub displayName: String,
|
||
|
pub portraits: HashMap<i32, Portrait>,
|
||
|
}
|
||
|
|
||
|
#[derive(Serialize, ToSchema, Debug, Clone)]
|
||
|
pub struct Portrait {
|
||
|
pub id: i32,
|
||
|
pub hires: String,
|
||
|
pub lores: Option<String>,
|
||
|
}
|