Commit graph

16 commits

Author SHA1 Message Date
7d3a135058 Añade el primer componente básico nativo
Este componente renderiza directamente código HTML durante el
renderizado del documento.
2025-12-21 09:51:43 +01:00
0683d8cdfa Añade acciones base y renderizado de componentes
- Añade acciones BeforeRender y AfterRender para ejecutar código
  personalizado antes y después de renderizar un componente.
- Introduce la acción PrepareRender para personalizar totalmente el
  renderizado de un componente.
- Se actualizan las definiciones de acciones para utilizar el nuevo
  "trait" ActionDispatcher.
- Se crea un nuevo trait ComponentTrait para definir componentes
  renderizables.
- Se implementan las estructuras Children y Child para gestionar
  componentes hijos dentro de un componente padre.
- Se añade OptionComponent para encapsular de forma segura componentes
  opcionales y poder usarlos en otros componentes.
2025-12-21 09:51:43 +01:00
aa748b7f0a Añade soporte para inyectar acciones en código 2025-12-21 09:51:43 +01:00
25d5050e39 Añade soporte a temas en la API de extensiones
- Incluye una opción de configuración para definir el tema por defecto.
- Añade un tema básico predeterminado.
2025-12-21 09:51:43 +01:00
16b8123768 Añade soporte para recursos en documentos HTML
- Incluye los recursos favicon, hojas de estilo y scripts JavaScript.
- Se introduce una estructura de contexto que, además de gestionar el
  idioma y el uso de parámetros contextuales, permite administrar estos
  recursos en documentos HTML.
2025-12-21 09:51:43 +01:00
03a3fc487e 🧑‍💻 Añade macros para concatenar cadenas 2025-12-21 09:51:25 +01:00
e903277ea1 Añade API para extensiones con funcionalidades
Añade el interfaz común que debe implementar cualquier extensión de
PageTop para añadir nuevas funcionalidades a la aplicación en forma de
servicios web y API de uso.
2025-12-21 09:51:25 +01:00
5652c1b186 (macros): Añade macro builder_fn 2025-12-21 09:51:15 +01:00
8284a65e36 Añade gestión de recursos en binario o de disco
- Añade dosnuevas macros `include_files` y `include_files_service` para
  incluir los recursos preparados con `pagetop-build`.
- Añade nueva función útil `absolute_dir` y sus tests correspondientes.
2025-12-21 09:51:15 +01:00
5c1cd683c8 Añade soporte para manejo de fechas y horas 2025-12-21 09:51:15 +01:00
6ba5451f06 Añade soporte para localización y traducción
- Incluye recursos Fluent básicos y pruebas asociadas.
- Nueva variable de configuración global para definir el idioma
  predeterminado.
2025-12-21 09:51:15 +01:00
b6e4d54fd4 Añade AutoDefault para derivar Default avanzado 2025-12-21 09:51:15 +01:00
e6035ffa92 Añade macro para componer HTML en código
- Incorpora el código de la versión 0.25.0 de `maud_macros` creado por
  Chris Wong.
- Y reexporta los elementos esenciales desde la librería principal.
2025-12-21 09:51:15 +01:00
2af1e93a9b Añade gestión de trazas y registro de eventos
- Reexporta macros esenciales de `tracing` para el registro de eventos.
- Inicializa el gestor de trazas en el servidor web.
2025-12-21 09:51:15 +01:00
f7dbd90af2 Añade lectura de configuración global y modular
- Soporta jerarquía de ficheros TOML que mapean ajustes a estructuras
  fuertemente tipadas con valores predefinidos.
- Permite definir configuraciones distintas para cada entorno.
- Añade la macro `include_config!` para facilitar la asignación modular
  de ajustes de configuración.
- Añade documentación detallada y tests de verificación.
2025-07-05 22:23:05 +02:00
cbee4c2cb8 Añade servidor web y primeras macros de PageTop
- Crea el crate raíz `pagetop` y configura el workspace con
  `helpers/pagetop-macros`.
- Añade las macros #[pagetop::main] y #[pagetop::test] que envuelven
  Actix-web para crear aplicaciones y pruebas asíncronas sin depender
  explícitamente del framework.
- Reexporta, mediante el módulo `service`, los tipos esenciales de
  Actix-web para gestionar servidores y servicios web.
- Implementa `Application::{new, run, test}` para simplificar el
  arranque y la ejecución de tests.
- Expone `pagetop::prelude` con las macros, `service` y `Application`
  para una API pública coherente.
- Incorpora ejemplo `examples/app-basic.rs` que levanta un servidor web
  vacío con el código mínimo para hacerlo.
2025-07-03 20:33:52 +02:00