2024-08-06 11:08:15 -04:00
|
|
|
use axum::Router;
|
2024-08-22 17:29:24 -04:00
|
|
|
use tower::ServiceBuilder;
|
|
|
|
use tower_sessions::{
|
|
|
|
cookie::{time::Duration, SameSite},
|
|
|
|
Expiry, MemoryStore, SessionManagerLayer,
|
|
|
|
};
|
2024-08-06 11:08:15 -04:00
|
|
|
|
|
|
|
use super::AppState;
|
|
|
|
|
|
|
|
pub mod new_user;
|
2024-08-22 17:29:24 -04:00
|
|
|
// pub mod verify;
|
2024-08-06 11:08:15 -04:00
|
|
|
|
|
|
|
pub fn requests(app_state: AppState) -> Router {
|
2024-08-22 17:29:24 -04:00
|
|
|
let domain = app_state.env().domain().to_owned();
|
|
|
|
let user_requests_middleware = ServiceBuilder::new().layer(
|
|
|
|
SessionManagerLayer::new(MemoryStore::default())
|
|
|
|
.with_domain(domain)
|
|
|
|
.with_secure(false)
|
|
|
|
.with_same_site(SameSite::Strict)
|
|
|
|
.with_expiry(Expiry::OnInactivity(Duration::seconds(300))),
|
|
|
|
);
|
|
|
|
|
|
|
|
Router::new()
|
|
|
|
.nest(
|
|
|
|
"/user",
|
|
|
|
Router::new().merge(new_user::request(app_state.clone())), // .merge(verify::request(app_state.clone())),
|
|
|
|
)
|
|
|
|
.layer(user_requests_middleware)
|
2024-08-06 11:08:15 -04:00
|
|
|
}
|