diff --git a/extensions/pagetop-htmx/src/hx.rs b/extensions/pagetop-htmx/src/hx.rs index 2f1edc34..fb4ae54b 100644 --- a/extensions/pagetop-htmx/src/hx.rs +++ b/extensions/pagetop-htmx/src/hx.rs @@ -381,7 +381,8 @@ pub fn on_htmx(event: &str) -> String { /// /// Están en minúsculas porque así las normaliza el módulo `http`. Se pueden usar con /// [`HttpRequest::headers()`](pagetop::web::HttpRequest::headers) para leer sus valores -/// directamente, aunque lo habitual es usar el trait [`HtmxRequestExt`](crate::HtmxRequestExt). +/// directamente, aunque lo habitual es usar el trait +/// [`HtmxRequestExt`](crate::request::HtmxRequestExt). /// /// ```rust,no_run /// use pagetop::prelude::*; @@ -417,7 +418,8 @@ pub mod request { /// Cabeceras de respuesta HTTP para HTMX. /// /// Se pueden usar con [`HeaderMap`](pagetop::web::http::HeaderMap) para construir respuestas -/// manualmente, aunque lo habitual es usar el constructor [`HtmxResponse`](crate::HtmxResponse). +/// manualmente, aunque lo habitual es usar el constructor +/// [`HtmxResponse`](crate::response::HtmxResponse). /// /// ```rust,no_run /// use pagetop::prelude::*; @@ -431,38 +433,38 @@ pub mod request { /// ``` pub mod response { /// Redirige mediante AJAX a la URL o configuración JSON indicada. Ver - /// [`HtmxResponse::location()`](crate::HtmxResponse::location) y - /// [`HtmxResponse::location_json()`](crate::HtmxResponse::location_json). + /// [`HtmxResponse::location()`](crate::response::HtmxResponse::location) y + /// [`HtmxResponse::location_json()`](crate::response::HtmxResponse::location_json). pub const LOCATION: &str = "HX-Location"; /// Empuja la URL indicada al historial del navegador. Ver - /// [`HtmxResponse::push_url()`](crate::HtmxResponse::push_url). + /// [`HtmxResponse::push_url()`](crate::response::HtmxResponse::push_url). pub const PUSH_URL: &str = "HX-Push-Url"; /// Provoca una redirección completa del navegador. Ver - /// [`HtmxResponse::redirect()`](crate::HtmxResponse::redirect). + /// [`HtmxResponse::redirect()`](crate::response::HtmxResponse::redirect). pub const REDIRECT: &str = "HX-Redirect"; /// Provoca una recarga completa de la página. Ver - /// [`HtmxResponse::refresh()`](crate::HtmxResponse::refresh). + /// [`HtmxResponse::refresh()`](crate::response::HtmxResponse::refresh). pub const REFRESH: &str = "HX-Refresh"; /// Reemplaza la URL actual en el historial. Ver - /// [`HtmxResponse::replace_url()`](crate::HtmxResponse::replace_url). + /// [`HtmxResponse::replace_url()`](crate::response::HtmxResponse::replace_url). pub const REPLACE_URL: &str = "HX-Replace-Url"; /// Anula el `hx-swap` del elemento. Ver - /// [`HtmxResponse::reswap()`](crate::HtmxResponse::reswap). + /// [`HtmxResponse::reswap()`](crate::response::HtmxResponse::reswap). pub const RESWAP: &str = "HX-Reswap"; /// Anula el `hx-target` del elemento. Ver - /// [`HtmxResponse::retarget()`](crate::HtmxResponse::retarget). + /// [`HtmxResponse::retarget()`](crate::response::HtmxResponse::retarget). pub const RETARGET: &str = "HX-Retarget"; /// Anula el `hx-select` del elemento. Ver - /// [`HtmxResponse::reselect()`](crate::HtmxResponse::reselect). + /// [`HtmxResponse::reselect()`](crate::response::HtmxResponse::reselect). pub const RESELECT: &str = "HX-Reselect"; /// Dispara eventos JavaScript al completar la respuesta. Ver - /// [`HtmxResponse::trigger()`](crate::HtmxResponse::trigger). + /// [`HtmxResponse::trigger()`](crate::response::HtmxResponse::trigger). pub const TRIGGER: &str = "HX-Trigger"; /// Dispara eventos tras la fase *settle*. Ver - /// [`HtmxResponse::trigger_after_settle()`](crate::HtmxResponse::trigger_after_settle). + /// [`HtmxResponse::trigger_after_settle()`](crate::response::HtmxResponse::trigger_after_settle). pub const TRIGGER_AFTER_SETTLE: &str = "HX-Trigger-After-Settle"; /// Dispara eventos tras el *swap*. Ver - /// [`HtmxResponse::trigger_after_swap()`](crate::HtmxResponse::trigger_after_swap). + /// [`HtmxResponse::trigger_after_swap()`](crate::response::HtmxResponse::trigger_after_swap). pub const TRIGGER_AFTER_SWAP: &str = "HX-Trigger-After-Swap"; } diff --git a/extensions/pagetop-htmx/src/lib.rs b/extensions/pagetop-htmx/src/lib.rs index 30c96dba..f127c227 100644 --- a/extensions/pagetop-htmx/src/lib.rs +++ b/extensions/pagetop-htmx/src/lib.rs @@ -93,18 +93,13 @@ include_locales!(LOCALES_HTMX); pub mod hx; pub mod hx_table; - -mod request; -pub use request::HtmxRequestExt; - -mod response; -pub use response::HtmxResponse; +pub mod request; +pub mod response; /// Prelude de `pagetop-htmx`. pub mod prelude { pub use crate::hx; pub use crate::hx_table; - pub use crate::request::HtmxRequestExt; pub use crate::response::HtmxResponse; } diff --git a/extensions/pagetop-htmx/src/request.rs b/extensions/pagetop-htmx/src/request.rs index ff14e2f0..cb571e71 100644 --- a/extensions/pagetop-htmx/src/request.rs +++ b/extensions/pagetop-htmx/src/request.rs @@ -4,8 +4,7 @@ use pagetop::prelude::*; // **< HtmxRequestExt >***************************************************************************** -/// Extiende [`HttpRequest`](pagetop::web::HttpRequest) con métodos para detectar y leer peticiones -/// HTMX. +/// Extiende [`HttpRequest`] con métodos para detectar y leer peticiones HTMX. /// /// HTMX añade cabeceras especiales a cada petición AJAX. Este trait permite acceder a ellas de /// forma expresiva, sin manipular [`pagetop::web::http::HeaderMap`] directamente. diff --git a/extensions/pagetop-htmx/src/response.rs b/extensions/pagetop-htmx/src/response.rs index b9221e92..0712ae20 100644 --- a/extensions/pagetop-htmx/src/response.rs +++ b/extensions/pagetop-htmx/src/response.rs @@ -1,4 +1,4 @@ -//! Implementación de [`HtmxResponse`] e [`IntoResponse`](pagetop::web::IntoResponse) para HTMX. +//! Implementación de [`HtmxResponse`] e [`IntoResponse`] para HTMX. use pagetop::prelude::*; @@ -10,8 +10,7 @@ use pagetop::prelude::*; /// parciales acompañados de cabeceras especiales que instruyen al cliente sobre qué hacer con la /// respuesta: actualizar la URL del historial, disparar eventos JavaScript, redirigir, etc. /// -/// Implementa [`IntoResponse`](pagetop::web::IntoResponse), por lo que puede devolverse -/// directamente desde cualquier handler. +/// Implementa [`IntoResponse`], por lo que puede devolverse directamente desde cualquier handler. /// /// # Ejemplo /// diff --git a/extensions/pagetop-htmx/tests/request.rs b/extensions/pagetop-htmx/tests/request.rs index 63bd842c..90995ec0 100644 --- a/extensions/pagetop-htmx/tests/request.rs +++ b/extensions/pagetop-htmx/tests/request.rs @@ -1,5 +1,5 @@ use pagetop::prelude::*; -use pagetop_htmx::HtmxRequestExt; +use pagetop_htmx::prelude::*; struct TestApp;