Skip to content
Clone
c4cdeb7
189 lines 6.3 KB Rust
use utoipa::OpenApi;
use crate::features::comment;
use crate::features::issue;
use crate::features::issue_attachment;
use crate::features::issue_content_history;
use crate::features::issue_dependency;
use crate::features::issue_event;
use crate::features::issue_member;
use crate::features::issue_pin;
use crate::features::issue_reaction;
use crate::features::issue_repo_rel;
use crate::features::issue_stopwatch;
use crate::features::issue_tracked_time;
use crate::features::issue_user;
use crate::features::issue_watch;
use crate::features::issues;
use crate::features::label;
use crate::features::milestone;
#[derive(OpenApi)]
#[openapi(
info(
title = "lib/issues",
version = env!("CARGO_PKG_VERSION"),
description = "Issue tracking service (board / issue / comment / label / milestone)",
),
paths(
crate::handler::issues::create::handler,
crate::handler::issues::list::handler,
crate::handler::issues::get::handler,
crate::handler::issues::update::handler,
crate::handler::issues::delete::handler,
crate::handler::issue::create::handler,
crate::handler::issue::get::handler,
crate::handler::issue::update::handler,
crate::handler::issue::delete::handler,
crate::handler::issue::close::handler,
crate::handler::comment::create::handler,
crate::handler::comment::list::handler,
crate::handler::comment::get::handler,
crate::handler::comment::update::handler,
crate::handler::comment::delete::handler,
crate::handler::label::create::handler,
crate::handler::label::list::handler,
crate::handler::label::get::handler,
crate::handler::label::update::handler,
crate::handler::label::delete::handler,
crate::handler::label::bind::handler,
crate::handler::label::unbind::handler,
crate::handler::label::list_for_issue::handler,
crate::handler::milestone::create::handler,
crate::handler::milestone::list::handler,
crate::handler::milestone::get::handler,
crate::handler::milestone::update::handler,
crate::handler::milestone::delete::handler,
crate::handler::issue_reaction::create::handler,
crate::handler::issue_reaction::create_comment::handler,
crate::handler::issue_reaction::delete::handler,
crate::handler::issue_reaction::list::handler,
crate::handler::issue_reaction::list_comment::handler,
crate::handler::issue_watch::get::handler,
crate::handler::issue_watch::upsert::handler,
crate::handler::issue_watch::delete::handler,
crate::handler::issue_member::create::handler,
crate::handler::issue_member::list::handler,
crate::handler::issue_member::delete::handler,
crate::handler::issue_pin::create::handler,
crate::handler::issue_pin::list::handler,
crate::handler::issue_pin::delete::handler,
crate::handler::issue_repo_rel::create::handler,
crate::handler::issue_repo_rel::list::handler,
crate::handler::issue_repo_rel::delete::handler,
crate::handler::issue_user::list::handler,
crate::handler::issue_user::update::handler,
crate::handler::issue_event::list::handler,
crate::handler::issue_dependency::create::handler,
crate::handler::issue_dependency::list::handler,
crate::handler::issue_dependency::delete::handler,
crate::handler::issue_content_history::list::handler,
crate::handler::issue_stopwatch::get::handler,
crate::handler::issue_stopwatch::start::handler,
crate::handler::issue_stopwatch::stop::handler,
crate::handler::issue_tracked_time::list::handler,
crate::handler::issue_attachment::upload::handler,
crate::handler::issue_attachment::list::handler,
crate::handler::issue_attachment::delete::handler,
),
components(schemas(
issues::CollectionView,
issues::CollectionPage,
issues::CreateCollectionOption,
issues::UpdateCollectionOption,
issues::ListCollectionQuery,
issue::IssueView,
issue::IssuePage,
issue::IssueState,
issue::CreateIssueOption,
issue::UpdateIssueOption,
issue::CloseIssueOption,
issue::ListIssueQuery,
comment::CommentView,
comment::CommentPage,
comment::CreateCommentOption,
comment::UpdateCommentOption,
comment::ListCommentQuery,
label::LabelView,
label::LabelPage,
label::CreateLabelOption,
label::UpdateLabelOption,
label::ListLabelQuery,
milestone::MilestoneView,
milestone::MilestonePage,
milestone::CreateMilestoneOption,
milestone::UpdateMilestoneOption,
milestone::ListMilestoneQuery,
issue_reaction::ReactionScope,
issue_reaction::ReactionView,
issue_reaction::ReactionAggView,
issue_reaction::CreateReactionOption,
issue_reaction::ListReactionQuery,
issue_watch::WatchView,
issue_watch::UpsertWatchOption,
issue_member::MemberView,
issue_member::MemberPage,
issue_member::CreateMemberOption,
issue_member::ListMemberQuery,
issue_pin::PinView,
issue_pin::CreatePinOption,
issue_repo_rel::RepoRelView,
issue_repo_rel::CreateRepoRelOption,
issue_user::IssueUserView,
issue_user::UpdateIssueUserOption,
issue_event::EventView,
issue_event::EventPage,
issue_event::ListEventQuery,
issue_dependency::DependencyView,
issue_dependency::CreateDependencyOption,
issue_content_history::ContentHistoryView,
issue_content_history::ContentHistoryPage,
issue_content_history::ListContentHistoryQuery,
issue_stopwatch::StopwatchView,
issue_tracked_time::TrackedTimeView,
issue_tracked_time::TrackedTimePage,
issue_tracked_time::ListTrackedTimeQuery,
issue_attachment::AttachmentView,
issue_attachment::UploadAttachmentInput,
issue_attachment::AttachmentPage,
issue_attachment::ListAttachmentQuery,
)),
tags((name = "issues", description = "Issue tracking (lib/issues)"))
)]
pub struct IssuesApiDoc;
pub fn build_openapi() -> utoipa::openapi::OpenApi {
<IssuesApiDoc as utoipa::OpenApi>::openapi()
}