Add modify_current_member route
This commit is contained in:
parent
b1c352957e
commit
29e0b0e90c
|
@ -307,7 +307,7 @@ impl Guild {
|
|||
schema: ModifyGuildMemberSchema,
|
||||
audit_log_reason: Option<String>,
|
||||
user: &mut ChorusUser,
|
||||
) -> ChorusResult<()> {
|
||||
) -> ChorusResult<GuildMember> {
|
||||
let request = ChorusRequest::new(
|
||||
http::Method::PATCH,
|
||||
format!(
|
||||
|
@ -323,7 +323,34 @@ impl Guild {
|
|||
Some(user),
|
||||
LimitType::Guild(guild_id),
|
||||
);
|
||||
request.handle_request_as_result(user).await
|
||||
request.deserialize_response::<GuildMember>(user).await
|
||||
}
|
||||
|
||||
/// Modifies the current user's member in the guild.
|
||||
///
|
||||
/// # Reference:
|
||||
/// See <https://discord-userdoccers.vercel.app/resources/guild#modify-current-guild-member>
|
||||
pub async fn modify_current_member(
|
||||
guild_id: Snowflake,
|
||||
schema: ModifyGuildMemberSchema,
|
||||
audit_log_reason: Option<String>,
|
||||
user: &mut ChorusUser,
|
||||
) -> ChorusResult<GuildMember> {
|
||||
let request = ChorusRequest::new(
|
||||
http::Method::PATCH,
|
||||
format!(
|
||||
"{}/guilds/{}/members/@me",
|
||||
user.belongs_to.borrow().urls.api,
|
||||
guild_id,
|
||||
)
|
||||
.as_str(),
|
||||
Some(to_string(&schema).unwrap()),
|
||||
audit_log_reason.as_deref(),
|
||||
None,
|
||||
Some(user),
|
||||
LimitType::Guild(guild_id),
|
||||
);
|
||||
request.deserialize_response::<GuildMember>(user).await
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -109,7 +109,7 @@ impl Default for GuildMemberSearchSchema {
|
|||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Serialize, Deserialize)]
|
||||
#[derive(Debug, Deserialize, Serialize, Clone, PartialEq, PartialOrd, Eq, Ord)]
|
||||
pub struct ModifyGuildMemberSchema {
|
||||
pub nick: Option<String>,
|
||||
pub roles: Option<Vec<Snowflake>>,
|
||||
|
@ -136,3 +136,11 @@ bitflags! {
|
|||
const AUTOMOD_QUARANTINED_BIO = 1 << 8;
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Deserialize, Serialize, Clone, PartialEq, PartialOrd, Eq, Ord)]
|
||||
pub struct ModifyCurrentGuildMemberSchema {
|
||||
pub nick: Option<String>,
|
||||
pub avatar: Option<String>,
|
||||
pub bio: Option<String>,
|
||||
pub banner: Option<String>,
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue