diff options
Diffstat (limited to 'src/handlers')
| -rw-r--r-- | src/handlers/mod.rs | 1 | ||||
| -rw-r--r-- | src/handlers/tailwind.rs | 22 |
2 files changed, 23 insertions, 0 deletions
diff --git a/src/handlers/mod.rs b/src/handlers/mod.rs index dba9275..01811e3 100644 --- a/src/handlers/mod.rs +++ b/src/handlers/mod.rs @@ -18,6 +18,7 @@ pub mod feeds; pub mod gallery; pub mod streams; pub mod talks; +pub mod tailwind; fn weekday_to_name(w: Weekday) -> &'static str { use Weekday::*; diff --git a/src/handlers/tailwind.rs b/src/handlers/tailwind.rs new file mode 100644 index 0000000..621565a --- /dev/null +++ b/src/handlers/tailwind.rs @@ -0,0 +1,22 @@ +use std::sync::Arc; +use axum::response::IntoResponse; +use axum::{Extension, extract::Path}; +use encre_css::Config; +use http::{HeaderMap, header}; +use crate::app::State; +use super::blog; + +#[instrument(skip(state, headers))] +pub async fn post_view( + Path(name): Path<String>, + Extension(state): Extension<Arc<State>>, + headers: HeaderMap, +) -> impl IntoResponse { + let mut config = Config::default(); + + encre_css_typography::register(&mut config); + + let (_code, body) = blog::post_view(Path(name), Extension(state), headers).await.unwrap(); + + ([(header::CONTENT_TYPE, "text/css")], encre_css::generate([body.0.as_str()], &config)) +} |
