feat(presentation): add GET /federation/me/friends handler and route
Some checks failed
lint / lint (push) Failing after 9m24s
test / unit (push) Successful in 16m41s

This commit is contained in:
2026-05-28 03:48:59 +02:00
parent 0e2b72b77a
commit e406464f9f
2 changed files with 14 additions and 2 deletions

View File

@@ -5,8 +5,8 @@ use crate::{
}; };
use api_types::responses::{ProfileField, RemoteActorResponse}; use api_types::responses::{ProfileField, RemoteActorResponse};
use application::use_cases::federation_management::{ use application::use_cases::federation_management::{
accept_follow_request, initiate_actor_move, list_pending_requests, list_remote_followers, accept_follow_request, get_remote_friends, initiate_actor_move, list_pending_requests,
list_remote_following, reject_follow_request, remove_remote_following, list_remote_followers, list_remote_following, reject_follow_request, remove_remote_following,
}; };
use axum::{http::StatusCode, Json}; use axum::{http::StatusCode, Json};
use domain::ports::{EventPublisher, FederationActionPort, FollowRepository, UserRepository}; use domain::ports::{EventPublisher, FederationActionPort, FollowRepository, UserRepository};
@@ -96,6 +96,14 @@ pub async fn get_remote_following(
Ok(Json(actors.into_iter().map(to_response).collect())) Ok(Json(actors.into_iter().map(to_response).collect()))
} }
pub async fn get_remote_friends_handler(
Deps(d): Deps<FederationManagementDeps>,
AuthUser(uid): AuthUser,
) -> Result<Json<Vec<RemoteActorResponse>>, ApiError> {
let actors = get_remote_friends(&*d.federation, &uid).await?;
Ok(Json(actors.into_iter().map(to_response).collect()))
}
pub async fn delete_following( pub async fn delete_following(
Deps(d): Deps<FederationManagementDeps>, Deps(d): Deps<FederationManagementDeps>,
AuthUser(uid): AuthUser, AuthUser(uid): AuthUser,

View File

@@ -105,6 +105,10 @@ pub fn router() -> Router<AppState> {
get(federation_management::get_remote_following) get(federation_management::get_remote_following)
.delete(federation_management::delete_following), .delete(federation_management::delete_following),
) )
.route(
"/federation/me/friends",
get(federation_management::get_remote_friends_handler),
)
.route( .route(
"/federation/me/move", "/federation/me/move",
post(federation_management::post_move_account), post(federation_management::post_move_account),