Headers, cache tweaks

This commit is contained in:
2025-11-05 08:46:33 -08:00
parent e9863707d8
commit 063ea165d1
8 changed files with 455 additions and 132 deletions

View File

@@ -1,4 +1,4 @@
use std::{pin::Pin, sync::Arc, time::Duration};
use std::{pin::Pin, sync::Arc};
use assetserver::Asset;
use axum::Router;
@@ -7,7 +7,7 @@ use tracing::info;
use crate::{
components::misc::FarLink,
page::{Page, PageServer},
page::{Page, PageServer, RequestContext},
pages,
routes::assets::Styles_Main,
};
@@ -18,9 +18,7 @@ pub(super) fn router() -> Router<()> {
let (asset_prefix, asset_router) = assets::asset_router();
info!("Serving assets at {asset_prefix}");
let server = build_server();
tokio::task::spawn(server.clone().start_rerender_task(Duration::from_secs(3)));
let router = server.into_router();
let router = build_server().into_router();
Router::new().merge(router).nest(asset_prefix, asset_router)
}
@@ -35,7 +33,10 @@ fn build_server() -> Arc<PageServer> {
server
}
fn page_wrapper<'a>(page: &'a Page) -> Pin<Box<dyn Future<Output = Markup> + 'a + Send + Sync>> {
fn page_wrapper<'a>(
page: &'a Page,
req_ctx: &'a RequestContext,
) -> Pin<Box<dyn Future<Output = Markup> + 'a + Send + Sync>> {
Box::pin(async move {
html! {
(DOCTYPE)
@@ -54,7 +55,7 @@ fn page_wrapper<'a>(page: &'a Page) -> Pin<Box<dyn Future<Output = Markup> + 'a
body {
div class="wrapper" {
main { ( page.generate_html().await ) }
main { ( page.generate_html(req_ctx).await ) }
footer {
hr class = "footline" {}