1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
//! First-party Leptos SSR adapter for Salvo.
//!
//! This module provides a native server-side rendering integration for Leptos
//! 0.8 on top of Salvo. It does not depend on `leptos_axum`/`leptos_actix`.
//!
//! Capabilities:
//!
//! - SEO-grade HTML rendering with `leptos_meta` (`<title>`, `<meta>`,
//! `<link>`, OpenGraph, Twitter Cards, canonical, robots, locale).
//! - `<Suspense>` streaming via in-order or out-of-order modes
//! ([`handler::SsrStreamMode`]).
//! - Hydration bootstrap: when [`LeptosOptions::include_hydration_script`] is
//! `true`, the rendered HTML embeds the `<script>` that loads the wasm
//! bundle and calls `hydrate()` on the client.
//! - `#[server]` functions through [`server_fn_router`], which bridges Salvo
//! to `server_fn`'s axum-compatible adapter.
//!
//! Typical wiring:
//!
//! ```rust,ignore
//! use impulse_server_kit::prelude::*;
//!
//! #[tokio::main]
//! async fn main() {
//! let setup = load_generic_config::<Setup>("server").await.unwrap();
//! let state = load_generic_state(&setup, true).await.unwrap();
//! let opts = LeptosOptions::from_generic_values(setup.generic_values());
//!
//! let router = get_root_router_autoinject(&state, setup.clone())
//! .push(server_fn_router(opts.server_fn_prefix.clone()))
//! .push(leptos_router(opts, || leptos::view! { <App/> }));
//!
//! let (server, _) = start(state, &setup, router).await.unwrap();
//! server.await
//! }
//! ```
pub use assets_only_router;
pub use ;
pub use ;
pub use ;
pub use ;
pub use leptos;
pub use leptos_meta;