From caa86074680d46223cebc20f41e9c91c41ec825d Mon Sep 17 00:00:00 2001 From: Zomatree Date: Sun, 24 Aug 2025 03:40:10 +0100 Subject: [PATCH] feat: include groups and dms in fetch mutuals --- crates/core/models/src/v0/users.rs | 4 +++- crates/delta/src/routes/users/find_mutual.rs | 5 +++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/crates/core/models/src/v0/users.rs b/crates/core/models/src/v0/users.rs index ef1c8f1a..fc681e00 100644 --- a/crates/core/models/src/v0/users.rs +++ b/crates/core/models/src/v0/users.rs @@ -255,12 +255,14 @@ auto_derived!( pub flags: i32, } - /// Mutual friends and servers response + /// Mutual friends, servers, groups and DMs response pub struct MutualResponse { /// Array of mutual user IDs that both users are friends with pub users: Vec, /// Array of mutual server IDs that both users are in pub servers: Vec, + /// Array of mutual group and dm IDs that both users are in + pub channels: Vec, } /// Bot information for if the user is a bot diff --git a/crates/delta/src/routes/users/find_mutual.rs b/crates/delta/src/routes/users/find_mutual.rs index 9f7fd950..78d5256f 100644 --- a/crates/delta/src/routes/users/find_mutual.rs +++ b/crates/delta/src/routes/users/find_mutual.rs @@ -8,9 +8,9 @@ use revolt_result::{create_error, Result}; use rocket::serde::json::Json; use rocket::State; -/// # Fetch Mutual Friends And Servers +/// # Fetch Mutual Friends, Servers, Groups and DMs /// -/// Retrieve a list of mutual friends and servers with another user. +/// Retrieve a list of mutual friends, servers, groups and DMs with another user. #[openapi(tag = "Relationships")] #[get("//mutual")] pub async fn mutual( @@ -32,5 +32,6 @@ pub async fn mutual( Ok(Json(v0::MutualResponse { users: db.fetch_mutual_user_ids(&user.id, &target.id).await?, servers: db.fetch_mutual_server_ids(&user.id, &target.id).await?, + channels: db.fetch_mutual_channel_ids(&user.id, &target.id).await?, })) }