(&self, arg: OpCreateEmoji)
| 1251 | } |
| 1252 | |
| 1253 | async fn discord_create_emoji(&self, arg: OpCreateEmoji) -> Result<CustomEmoji, anyhow::Error> { |
| 1254 | let rt_ctx = get_rt_ctx(&self.state); |
| 1255 | |
| 1256 | let roles = arg |
| 1257 | .roles |
| 1258 | .map(|v| parse_str_snowflake_ids::<RoleMarker>(v.into_iter())) |
| 1259 | .transpose()?; |
| 1260 | |
| 1261 | let out = discord_request(&self.state, async move { |
| 1262 | let mut req = |
| 1263 | rt_ctx |
| 1264 | .discord_config |
| 1265 | .client |
| 1266 | .create_emoji(rt_ctx.guild_id, &arg.name, &arg.data); |
| 1267 | |
| 1268 | if let Some(roles) = &roles { |
| 1269 | req = req.roles(roles.as_slice()); |
| 1270 | } |
| 1271 | |
| 1272 | req.await |
| 1273 | }) |
| 1274 | .await? |
| 1275 | .model() |
| 1276 | .await?; |
| 1277 | |
| 1278 | Ok(out.into()) |
| 1279 | } |
| 1280 | |
| 1281 | async fn discord_edit_emoji(&self, arg: OpUpdateEmoji) -> Result<CustomEmoji, anyhow::Error> { |
| 1282 | let rt_ctx = get_rt_ctx(&self.state); |
nothing calls this directly
no test coverage detected