Servers: Add TextChannel.

This commit is contained in:
Paul
2021-06-01 20:38:35 +01:00
parent 6bb4501c52
commit 46bf5fcdd1
6 changed files with 45 additions and 3 deletions

View File

@@ -50,6 +50,18 @@ pub enum Channel {
#[serde(skip_serializing_if = "Option::is_none")]
last_message: Option<LastMessage>,
},
TextChannel {
#[serde(rename = "_id")]
id: String,
server: String,
#[serde(skip_serializing_if = "Option::is_none")]
nonce: Option<String>,
name: String,
description: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
icon: Option<File>,
}
}
impl Channel {
@@ -57,7 +69,8 @@ impl Channel {
match self {
Channel::SavedMessages { id, .. }
| Channel::DirectMessage { id, .. }
| Channel::Group { id, .. } => id,
| Channel::Group { id, .. }
| Channel::TextChannel { id, .. } => id,
}
}

View File

@@ -43,9 +43,10 @@ pub struct Server {
pub name: String,
// pub default_permissions: u32,
pub channels: Vec<String>,
// pub invites: Vec<Invite>,
// pub bans: Vec<Ban>,
pub channels: Vec<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub icon: Option<File>,
#[serde(skip_serializing_if = "Option::is_none")]

View File

@@ -81,6 +81,9 @@ impl<'a> PermissionCalculator<'a> {
Ok(0)
}
}
Channel::TextChannel { .. } => {
Ok(ChannelPermission::View + ChannelPermission::SendMessage)
}
}
}