[bootsier] Añade más componentes y repasa código

- Se incorpora nuevo componente Dropdown.
- Se crea un componente Navbar con soporte para marca, elementos de
navegación.
- Se implementa el componente Offcanvas con opciones de posición,
visibilidad y fondo personalizables.
- Mejora el manejo de imágenes con un nuevo componente de Image.
- Se reorganizan los componentes del tema para una mejor estructura y
usabilidad.
This commit is contained in:
Manuel Cillero 2025-10-19 21:57:15 +02:00
parent cf40af13bb
commit 82837c622e
29 changed files with 2608 additions and 9 deletions

View file

@ -68,10 +68,10 @@ use pagetop::prelude::*;
async fn homepage(request: HttpRequest) -> ResultPage<Markup, ErrorPage> {
Page::new(request)
.with_theme("Bootsier")
.add_component(
.add_child(
Block::new()
.with_title(L10n::l("sample_title"))
.add_component(Html::with(|cx| html! {
.add_child(Html::with(|cx| html! {
p { (L10n::l("sample_content").using(cx)) }
})),
)
@ -80,18 +80,32 @@ async fn homepage(request: HttpRequest) -> ResultPage<Markup, ErrorPage> {
```
*/
#![doc(
html_favicon_url = "https://git.cillero.es/manuelcillero/pagetop/raw/branch/main/static/favicon.ico"
)]
use pagetop::prelude::*;
/// El tema usa las mismas regiones predefinidas por [`ThemeRegion`].
pub type BootsierRegion = ThemeRegion;
include_locales!(LOCALES_BOOTSIER);
// Versión de la librería Bootstrap.
const BOOTSTRAP_VERSION: &str = "5.3.8";
/// Tema basado en [Bootstrap](https://getbootstrap.com/) para los componentes base de PageTop.
///
/// Ofrece composición de páginas *responsive*, utilidades y componentes listos para usar, con
/// estilos coherentes y enfoque en accesibilidad.
pub mod config;
pub mod theme;
/// *Prelude* del tema.
pub mod prelude {
pub use crate::config::*;
pub use crate::theme::aux::*;
pub use crate::theme::*;
}
/// El tema usa las mismas regiones predefinidas por [`ThemeRegion`].
pub type BootsierRegion = ThemeRegion;
/// Implementa el tema.
pub struct Bootsier;
impl Extension for Bootsier {