From d55b1326f87438de6cf2daec5f3666f11438bc25 Mon Sep 17 00:00:00 2001 From: Alois Date: Thu, 30 Jul 2026 00:41:56 +0200 Subject: [PATCH] (feat): some connection improvements --- apps/backend/src/admin.rs | 13 +++++++++++++ apps/backend/src/main.rs | 2 ++ apps/frontend/index.html | 1 + apps/frontend/src/mtp-options.ts | 12 +++++++++++- 4 files changed, 27 insertions(+), 1 deletion(-) diff --git a/apps/backend/src/admin.rs b/apps/backend/src/admin.rs index 51628c9..459739e 100644 --- a/apps/backend/src/admin.rs +++ b/apps/backend/src/admin.rs @@ -7,6 +7,7 @@ use axum::{ response::{IntoResponse, Response}, routing::{delete, get, post}, }; +use serde::Serialize; use tower_http::{ services::{ServeDir, ServeFile}, trace::TraceLayer, @@ -23,6 +24,7 @@ pub async fn serve( let index = frontend.join("index.html"); let assets = ServeDir::new(frontend).fallback(ServeFile::new(index)); let app = Router::new() + .route("/api/config", get(public_config)) .route("/api/admin", get(admin)) .route("/api/incidents", get(list).post(create)) .route("/api/incidents/{id}", delete(remove)) @@ -35,6 +37,17 @@ pub async fn serve( axum::serve(listener, app).await } +#[derive(Serialize)] +struct PublicConfig { + public_port: u16, +} + +async fn public_config(State(state): State>) -> Json { + Json(PublicConfig { + public_port: state.public_port, + }) +} + async fn admin() -> StatusCode { StatusCode::NO_CONTENT } diff --git a/apps/backend/src/main.rs b/apps/backend/src/main.rs index b624ed4..d385d9e 100644 --- a/apps/backend/src/main.rs +++ b/apps/backend/src/main.rs @@ -20,6 +20,7 @@ use tokio::sync::{RwLock, watch}; pub struct AppState { categories: Arc>>, incidents: IncidentStore, + public_port: u16, updates: watch::Sender, } @@ -70,6 +71,7 @@ async fn main() -> Result<(), Box> { let state = Arc::new(AppState { categories: Arc::clone(&categories), incidents, + public_port: config.public_port, updates, }); diff --git a/apps/frontend/index.html b/apps/frontend/index.html index 17dd22c..2ed4e43 100644 --- a/apps/frontend/index.html +++ b/apps/frontend/index.html @@ -4,6 +4,7 @@ + Methanium Status