pagetop/src/base/component
Manuel Cillero 8573aca29e (theme): Añade componentes Region y Template
Introduce Region y Template (`base::component::layout`) para componer el
`<body>` de una página, con captura explícita vía `handle_component()`
en lugar de maquetado implícito:

- `RegionName`/`TemplateName` (`core/theme.rs`) como interfaces de
  identidad; `CoreRegion` (`Header`/`Content`/`Footer`) y `CoreTemplate`
  (`Standard`/`Admin`) como catálogo por defecto.
- `ReservedRegion` (`PageTop`/`PageBottom`, en `response/page.rs`) queda
  fuera de `CoreRegion`. `Page::render()` las renderiza siempre,
  envolviendo `Theme::render_page_body()`, con independencia de la
  plantilla o el tema activos.
- Elimina `TemplateSource` en `Context`: la plantilla pasa a ser un
  `TemplateRef` fijo, sin resolución por tema (ese mecanismo nunca llegó
  a implementarse).
- La personalización por tema es por captura (`handle_component()` +
  `downcast_ref()`), no por sustituir qué constante se resuelve.
- Corrige referencias obsoletas a `DefaultRegions` por `CoreRegion`.
- Sustituye `tests/theme_template.rs` (API anterior) por
  `tests/component_template.rs`, que cubre el patrón de captura con el
  API nuevo.
2026-07-26 09:51:27 +02:00
..
form ♻️ (bootsier): Mueve Container al core de PageTop 2026-07-09 21:44:52 +02:00
layout (theme): Añade componentes Region y Template 2026-07-26 09:51:27 +02:00
block.rs ♻️ (html): Añade valores extra a Props 2026-07-09 00:05:28 +02:00
button.rs ♻️ (html): Añade valores extra a Props 2026-07-09 00:05:28 +02:00
container.rs ♻️ (bootsier): Mueve Container al core de PageTop 2026-07-09 21:44:52 +02:00
form.rs ♻️ (bootsier): Mueve Container al core de PageTop 2026-07-09 21:44:52 +02:00
html.rs 🐛 (web): HttpRequest clona ahora las extensiones 2026-07-17 00:54:35 +02:00
intro.rs (core): Añade Route, RoutePath y Waypoint 2026-07-19 22:16:21 +02:00
layout.rs (theme): Añade componentes Region y Template 2026-07-26 09:51:27 +02:00
poweredby.rs 🎨 Convierte el ciclo de renderizado en async 2026-07-06 00:48:41 +02:00