summaryrefslogtreecommitdiff
path: root/src/setup/routes
diff options
context:
space:
mode:
Diffstat (limited to 'src/setup/routes')
-rw-r--r--src/setup/routes/post.rs12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/setup/routes/post.rs b/src/setup/routes/post.rs
index 9e6776f..34f4ed2 100644
--- a/src/setup/routes/post.rs
+++ b/src/setup/routes/post.rs
@@ -5,7 +5,11 @@ use axum::{
};
use crate::{
- app::App, clock::RequestedAt, error::Internal, login::Password, setup::app,
+ app::App,
+ clock::RequestedAt,
+ error::Internal,
+ login::{Login, Password},
+ setup::app,
token::extract::IdentityToken,
};
@@ -14,14 +18,14 @@ pub async fn handler(
RequestedAt(setup_at): RequestedAt,
identity: IdentityToken,
Json(request): Json<Request>,
-) -> Result<(IdentityToken, StatusCode), Error> {
- let secret = app
+) -> Result<(IdentityToken, Json<Login>), Error> {
+ let (login, secret) = app
.setup()
.initial(&request.name, &request.password, &setup_at)
.await
.map_err(Error)?;
let identity = identity.set(secret);
- Ok((identity, StatusCode::NO_CONTENT))
+ Ok((identity, Json(login)))
}
#[derive(serde::Deserialize)]