Add modify_current_member route
This commit is contained in:
parent
7b55590fd0
commit
cce5b507bc
|
@ -307,7 +307,7 @@ impl Guild {
|
||||||
schema: ModifyGuildMemberSchema,
|
schema: ModifyGuildMemberSchema,
|
||||||
audit_log_reason: Option<String>,
|
audit_log_reason: Option<String>,
|
||||||
user: &mut ChorusUser,
|
user: &mut ChorusUser,
|
||||||
) -> ChorusResult<()> {
|
) -> ChorusResult<GuildMember> {
|
||||||
let request = ChorusRequest::new(
|
let request = ChorusRequest::new(
|
||||||
http::Method::PATCH,
|
http::Method::PATCH,
|
||||||
format!(
|
format!(
|
||||||
|
@ -323,7 +323,34 @@ impl Guild {
|
||||||
Some(user),
|
Some(user),
|
||||||
LimitType::Guild(guild_id),
|
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 struct ModifyGuildMemberSchema {
|
||||||
pub nick: Option<String>,
|
pub nick: Option<String>,
|
||||||
pub roles: Option<Vec<Snowflake>>,
|
pub roles: Option<Vec<Snowflake>>,
|
||||||
|
@ -136,3 +136,11 @@ bitflags! {
|
||||||
const AUTOMOD_QUARANTINED_BIO = 1 << 8;
|
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