29 lines
673 B
Rust
29 lines
673 B
Rust
use axum::Router;
|
|
use std::sync::Arc;
|
|
use utoipa::OpenApi;
|
|
use utoipa_swagger_ui::SwaggerUi;
|
|
|
|
use crate::state::AppState;
|
|
|
|
use self::openapi::ApiDoc;
|
|
|
|
mod admin;
|
|
mod auth;
|
|
mod collections;
|
|
mod openapi;
|
|
mod pagination;
|
|
mod posts;
|
|
mod sites;
|
|
mod users;
|
|
|
|
pub fn create_router() -> Router<Arc<AppState>> {
|
|
Router::new()
|
|
.nest("/auth", auth::router())
|
|
.nest("/admin", admin::router())
|
|
.nest("/posts", posts::router())
|
|
.nest("/sites", sites::router())
|
|
.nest("/collections", collections::router())
|
|
.nest("/users", users::router())
|
|
.merge(SwaggerUi::new("/swagger-ui").url("/api-docs/openapi.json", ApiDoc::openapi()))
|
|
}
|