use std::sync::Arc; use axum::extract::FromRef; use crate::admin::state::AdminRegistry; use crate::service::templates; #[derive(Clone)] pub struct AppState { pub templates: templates::Templates, pub admin: Arc, } impl FromRef for templates::Templates { fn from_ref(app_state: &AppState) -> templates::Templates { app_state.templates.clone() } } impl FromRef for Arc { fn from_ref(app_state: &AppState) -> Arc { app_state.admin.clone() } }