Implementa Debug en comp./tipos principales

This commit is contained in:
Manuel Cillero 2026-03-21 11:26:02 +01:00
parent c3feff9efd
commit a0b14aec36
21 changed files with 61 additions and 32 deletions

View file

@ -6,7 +6,7 @@ use crate::prelude::*;
///
/// Envuelve un contenido con la etiqueta HTML indicada por [`container::Kind`]. Sólo se renderiza
/// si existen componentes hijos (*children*).
#[derive(AutoDefault, Getters)]
#[derive(AutoDefault, Debug, Getters)]
pub struct Container {
#[getters(skip)]
id: AttrId,

View file

@ -19,7 +19,7 @@ use crate::LOCALES_BOOTSIER;
///
/// Ver ejemplo en el módulo [`dropdown`].
/// Si no contiene elementos, el componente **no se renderiza**.
#[derive(AutoDefault, Getters)]
#[derive(AutoDefault, Debug, Getters)]
pub struct Dropdown {
#[getters(skip)]
id: AttrId,

View file

@ -7,7 +7,7 @@ use pagetop::prelude::*;
///
/// Define internamente la naturaleza del elemento y su comportamiento al mostrarse o interactuar
/// con él.
#[derive(AutoDefault)]
#[derive(AutoDefault, Debug)]
pub enum ItemKind {
/// Elemento vacío, no produce salida.
#[default]
@ -43,7 +43,7 @@ pub enum ItemKind {
///
/// Permite definir el identificador, las clases de estilo adicionales y el tipo de interacción
/// asociada, manteniendo una interfaz común para renderizar todos los elementos del menú.
#[derive(AutoDefault, Getters)]
#[derive(AutoDefault, Debug, Getters)]
pub struct Item {
#[getters(skip)]
id: AttrId,

View file

@ -27,7 +27,7 @@ use crate::theme::form;
/// .with_classes(ClassesOp::Add, "mb-3")
/// .add_child(Input::new().with_name("q"));
/// ```
#[derive(AutoDefault, Getters)]
#[derive(AutoDefault, Debug, Getters)]
pub struct Form {
#[getters(skip)]
id: AttrId,

View file

@ -3,7 +3,7 @@ use pagetop::prelude::*;
/// Agrupa controles relacionados de un formulario (`<fieldset>`).
///
/// Se usa para mejorar la accesibilidad cuando se acompaña de una leyenda que encabeza el grupo.
#[derive(AutoDefault, Getters)]
#[derive(AutoDefault, Debug, Getters)]
pub struct Fieldset {
#[getters(skip)]
id: AttrId,

View file

@ -3,7 +3,7 @@ use pagetop::prelude::*;
use crate::theme::form;
use crate::LOCALES_BOOTSIER;
#[derive(AutoDefault, Getters)]
#[derive(AutoDefault, Debug, Getters)]
pub struct Input {
classes: Classes,
input_type: form::InputType,

View file

@ -13,7 +13,7 @@ pub enum IconKind {
},
}
#[derive(AutoDefault, Getters)]
#[derive(AutoDefault, Debug, Getters)]
pub struct Icon {
/// Devuelve las clases CSS asociadas al icono.
classes: Classes,

View file

@ -9,7 +9,7 @@ use crate::prelude::*;
/// ([`classes::Border`](crate::theme::classes::Border)) y **redondeo de esquinas**
/// ([`classes::Rounded`](crate::theme::classes::Rounded)).
/// - Resuelve el texto alternativo `alt` con **localización** mediante [`L10n`].
#[derive(AutoDefault, Getters)]
#[derive(AutoDefault, Debug, Getters)]
pub struct Image {
#[getters(skip)]
id: AttrId,

View file

@ -10,7 +10,7 @@ use crate::prelude::*;
///
/// Ver ejemplo en el módulo [`nav`].
/// Si no contiene elementos, el componente **no se renderiza**.
#[derive(AutoDefault, Getters)]
#[derive(AutoDefault, Debug, Getters)]
pub struct Nav {
#[getters(skip)]
id: AttrId,

View file

@ -10,7 +10,7 @@ use crate::LOCALES_BOOTSIER;
///
/// Define internamente la naturaleza del elemento y su comportamiento al mostrarse o interactuar
/// con él.
#[derive(AutoDefault)]
#[derive(AutoDefault, Debug)]
pub enum ItemKind {
/// Elemento vacío, no produce salida.
#[default]
@ -76,7 +76,7 @@ impl ItemKind {
///
/// Permite definir el identificador, las clases de estilo adicionales y el tipo de interacción
/// asociada, manteniendo una interfaz común para renderizar todos los elementos del menú.
#[derive(AutoDefault, Getters)]
#[derive(AutoDefault, Debug, Getters)]
pub struct Item {
#[getters(skip)]
id: AttrId,

View file

@ -11,7 +11,7 @@ use crate::prelude::*;
/// - Si no hay imagen ([`with_image()`](Self::with_image)) ni título
/// ([`with_title()`](Self::with_title)), la marca de identidad no se renderiza.
/// - El eslogan ([`with_slogan()`](Self::with_slogan)) es opcional; por defecto no tiene contenido.
#[derive(AutoDefault, Getters)]
#[derive(AutoDefault, Debug, Getters)]
pub struct Brand {
#[getters(skip)]
id: AttrId,

View file

@ -14,7 +14,7 @@ const TOGGLE_OFFCANVAS: &str = "offcanvas";
///
/// Ver ejemplos en el módulo [`navbar`].
/// Si no contiene elementos, el componente **no se renderiza**.
#[derive(AutoDefault, Getters)]
#[derive(AutoDefault, Debug, Getters)]
pub struct Navbar {
#[getters(skip)]
id: AttrId,

View file

@ -7,7 +7,7 @@ use crate::prelude::*;
/// Cada variante determina qué se renderiza y cómo. Estos elementos se colocan **dentro del
/// contenido** de la barra (la parte colapsable, el *offcanvas* o el bloque simple), por lo que son
/// independientes de la marca o del botón que ya pueda definir el propio [`navbar::Layout`].
#[derive(AutoDefault)]
#[derive(AutoDefault, Debug)]
pub enum Item {
/// Sin contenido, no produce salida.
#[default]

View file

@ -5,7 +5,7 @@ use crate::prelude::*;
// **< Layout >*************************************************************************************
/// Representa los diferentes tipos de presentación de una barra de navegación [`Navbar`].
#[derive(AutoDefault)]
#[derive(AutoDefault, Debug)]
pub enum Layout {
/// Barra simple, sin marca de identidad y sin botón de despliegue.
///

View file

@ -21,7 +21,7 @@ use crate::LOCALES_BOOTSIER;
///
/// Ver ejemplo en el módulo [`offcanvas`].
/// Si no contiene elementos, el componente **no se renderiza**.
#[derive(AutoDefault, Getters)]
#[derive(AutoDefault, Debug, Getters)]
pub struct Offcanvas {
#[getters(skip)]
id: AttrId,