Fix some deserialization errors
This commit is contained in:
parent
6932e567b7
commit
0fd800c4c2
|
@ -12,7 +12,7 @@ use crate::types::{
|
||||||
#[derive(Serialize, Deserialize, Debug, Default, Clone)]
|
#[derive(Serialize, Deserialize, Debug, Default, Clone)]
|
||||||
pub struct Guild {
|
pub struct Guild {
|
||||||
pub id: Snowflake,
|
pub id: Snowflake,
|
||||||
pub name: String,
|
pub name: Option<String>,
|
||||||
pub icon: Option<String>,
|
pub icon: Option<String>,
|
||||||
pub icon_hash: Option<String>,
|
pub icon_hash: Option<String>,
|
||||||
pub splash: Option<String>,
|
pub splash: Option<String>,
|
||||||
|
@ -30,7 +30,7 @@ pub struct Guild {
|
||||||
pub explicit_content_filter: Option<u8>,
|
pub explicit_content_filter: Option<u8>,
|
||||||
pub roles: Vec<RoleObject>,
|
pub roles: Vec<RoleObject>,
|
||||||
pub emojis: Vec<Emoji>,
|
pub emojis: Vec<Emoji>,
|
||||||
pub features: Vec<String>,
|
pub features: Option<Vec<String>>,
|
||||||
pub application_id: Option<String>,
|
pub application_id: Option<String>,
|
||||||
pub system_channel_id: Option<Snowflake>,
|
pub system_channel_id: Option<Snowflake>,
|
||||||
pub system_channel_flags: Option<u8>,
|
pub system_channel_flags: Option<u8>,
|
||||||
|
@ -53,8 +53,8 @@ pub struct Guild {
|
||||||
pub member_count: Option<u64>,
|
pub member_count: Option<u64>,
|
||||||
pub presence_count: Option<u64>,
|
pub presence_count: Option<u64>,
|
||||||
pub welcome_screen: Option<WelcomeScreenObject>,
|
pub welcome_screen: Option<WelcomeScreenObject>,
|
||||||
pub nsfw_level: u8,
|
pub nsfw_level: Option<u8>,
|
||||||
pub nsfw: bool,
|
pub nsfw: Option<bool>,
|
||||||
pub stickers: Option<Vec<Sticker>>,
|
pub stickers: Option<Vec<Sticker>>,
|
||||||
pub premium_progress_bar_enabled: Option<bool>,
|
pub premium_progress_bar_enabled: Option<bool>,
|
||||||
pub joined_at: String,
|
pub joined_at: String,
|
||||||
|
@ -70,7 +70,7 @@ pub struct Guild {
|
||||||
pub webhooks: Option<Vec<Webhook>>,
|
pub webhooks: Option<Vec<Webhook>>,
|
||||||
pub mfa_level: Option<u8>,
|
pub mfa_level: Option<u8>,
|
||||||
pub region: Option<String>,
|
pub region: Option<String>,
|
||||||
pub unavailable: bool,
|
pub unavailable: Option<bool>,
|
||||||
pub parent: Option<String>,
|
pub parent: Option<String>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -29,7 +29,7 @@ pub struct User {
|
||||||
username: String,
|
username: String,
|
||||||
discriminator: String,
|
discriminator: String,
|
||||||
avatar: Option<String>,
|
avatar: Option<String>,
|
||||||
bot: bool,
|
bot: Option<bool>,
|
||||||
system: Option<bool>,
|
system: Option<bool>,
|
||||||
mfa_enabled: Option<bool>,
|
mfa_enabled: Option<bool>,
|
||||||
accent_color: Option<u8>,
|
accent_color: Option<u8>,
|
||||||
|
@ -52,11 +52,11 @@ pub struct User {
|
||||||
nsfw_allowed: bool,
|
nsfw_allowed: bool,
|
||||||
premium: bool,
|
premium: bool,
|
||||||
purchased_flags: i32,
|
purchased_flags: i32,
|
||||||
premium_usage_flags: i32,
|
premium_usage_flags: Option<i32>,
|
||||||
disabled: Option<bool>,
|
disabled: Option<bool>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, Default, Clone, PartialEq, Serialize, Deserialize)]
|
||||||
pub struct PublicUser {
|
pub struct PublicUser {
|
||||||
pub id: Snowflake,
|
pub id: Snowflake,
|
||||||
pub username: String,
|
pub username: String,
|
||||||
|
@ -66,7 +66,7 @@ pub struct PublicUser {
|
||||||
pub banner: Option<String>,
|
pub banner: Option<String>,
|
||||||
pub theme_colors: Option<Vec<u8>>,
|
pub theme_colors: Option<Vec<u8>>,
|
||||||
pub pronouns: Option<String>,
|
pub pronouns: Option<String>,
|
||||||
pub bot: bool,
|
pub bot: Option<bool>,
|
||||||
pub bio: String,
|
pub bio: String,
|
||||||
pub premium_type: u8,
|
pub premium_type: u8,
|
||||||
pub premium_since: Option<DateTime<Utc>>,
|
pub premium_since: Option<DateTime<Utc>>,
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use crate::types::entities::User;
|
use crate::types::PublicUser;
|
||||||
use crate::types::events::WebSocketEvent;
|
use crate::types::events::WebSocketEvent;
|
||||||
use crate::types::interfaces::Activity;
|
use crate::types::interfaces::Activity;
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
@ -6,7 +6,7 @@ use serde::{Deserialize, Serialize};
|
||||||
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#presence-update-presence-update-event-fields
|
/// See https://discord.com/developers/docs/topics/gateway-events#presence-update-presence-update-event-fields
|
||||||
pub struct PresenceUpdate {
|
pub struct PresenceUpdate {
|
||||||
pub user: User,
|
pub user: PublicUser,
|
||||||
pub guild_id: Option<String>,
|
pub guild_id: Option<String>,
|
||||||
pub status: String,
|
pub status: String,
|
||||||
pub activities: Vec<Activity>,
|
pub activities: Vec<Activity>,
|
||||||
|
|
|
@ -71,7 +71,7 @@ pub struct MergedPresenceGuild {
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default)]
|
||||||
pub struct SupplimentalGuild {
|
pub struct SupplimentalGuild {
|
||||||
pub voice_states: Vec<VoiceState>,
|
pub voice_states: Option<Vec<VoiceState>>,
|
||||||
pub id: String,
|
pub id: String,
|
||||||
pub embedded_activities: Vec<serde_json::Value>
|
pub embedded_activities: Vec<serde_json::Value>
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue