ef0b83a
use export::rest::NoData;
use models::users::user::ProfileVisibility;
use models::users::user_push_subscriptions::PushSubscriptionPlatform;
use models::users::user_reports::ReportStatus;
use models::users::user_suspensions::SuspensionType;
use utoipa::OpenApi;
use crate::handlers;
use crate::services::avatar::{AvatarDto, AvatarFormat};
use crate::services::notifications::{
RecentMentionDto, SaveMessageCmd, SavedMessageDto, UserReportDto,
};
use crate::services::profile::{
ListLimitQuery, MemeDto, MySpaceDto, ProfileDetailDto, SpaceDto, UpsertMemeCmd,
};
use crate::services::push_subscriptions::{PushSubscriptionDto, UpsertPushCmd};
use crate::services::suspensions::{IncludeRevokedQuery, SuspensionDto};
#[derive(OpenApi)]
#[openapi(
info(title = "gitdata user api", version = "1.0"),
paths(
handlers::get_avatar::get_avatar,
handlers::get_user_avatar::get_user_avatar,
handlers::upload_avatar::upload_avatar,
handlers::delete_avatar::delete_avatar,
handlers::my_spaces::my_spaces,
handlers::list_memes::list_memes,
handlers::create_meme::create_meme,
handlers::update_meme::update_meme,
handlers::delete_meme::delete_meme,
handlers::get_profile_detail::get_profile_detail,
handlers::list_push_subscriptions::list_push_subscriptions,
handlers::upsert_push_subscription::upsert_push_subscription,
handlers::delete_push_subscription::delete_push_subscription,
handlers::recent_mentions::recent_mentions,
handlers::my_reports::my_reports,
handlers::list_saved_messages::list_saved_messages,
handlers::save_message::save_message,
handlers::unsave_message::unsave_message,
handlers::my_suspensions::my_suspensions,
handlers::push_config::push_config,
),
components(schemas(
export::pagination::PageQuery,
imaging::layout::ImageVariant,
NoData,
AvatarFormat,
AvatarDto,
SpaceDto,
MySpaceDto,
MemeDto,
UpsertMemeCmd,
ListLimitQuery,
ProfileDetailDto,
PushSubscriptionDto,
UpsertPushCmd,
RecentMentionDto,
UserReportDto,
SavedMessageDto,
SaveMessageCmd,
SuspensionDto,
IncludeRevokedQuery,
crate::handlers::push_config::PushConfigDto,
ProfileVisibility,
PushSubscriptionPlatform,
ReportStatus,
SuspensionType,
))
)]
pub struct UserApiDoc;