use std::sync::Arc; use crate::users::queries::GetUsersQuery; use domain::{errors::DomainError, models::UserSummary, ports::{RemoteActorInfo, SocialQueryPort, UserRepository}}; pub struct UsersListData { pub users: Vec, pub remote_actors: Vec, } pub async fn execute( user: Arc, social_query: Arc, _query: GetUsersQuery, ) -> Result { let (users_result, actors_result) = tokio::join!( user.list_with_stats(), social_query.list_all_followed_remote_actors() ); Ok(UsersListData { users: users_result?, remote_actors: actors_result?, }) } #[cfg(test)] #[path = "tests/get_users.rs"] mod tests;