Commit graph

37 commits

Author SHA1 Message Date
2dfca51c31 Añade soporte a respuestas JSON 2025-07-25 19:18:06 +02:00
d85458d357 Añade respuestas web con redirecciones HTTP 2025-07-25 18:25:42 +02:00
0748261692 Añade gestión de regiones en temas 2025-07-24 21:20:35 +02:00
126fe3a8ea 🧑‍💻 Mejora las operaciones de cambio en contexto 2025-07-24 13:16:39 +02:00
ed25a17e80 Añade el primer componente básico nativo
Este componente renderiza directamente código HTML durante el
renderizado del documento.
2025-07-24 09:11:29 +02:00
37df2ada75 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-07-24 08:38:17 +02:00
f76a208520 🏗️ Añade el tema para renderizar en contexto HTML 2025-07-21 21:17:40 +02:00
f88513d67f Añade tipos para renderizar atributos HTML 2025-07-21 20:52:45 +02:00
613ab5243c Añade soporte para inyectar acciones en código 2025-07-21 08:58:09 +02:00
86e4c4f110 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-07-20 23:51:15 +02:00
f4e142a242 📝 Retoques en la documentación 2025-07-20 14:28:09 +02:00
d042467f50 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-07-20 14:24:19 +02:00
3ed94457fa 🧑‍💻 [build] Más opciones de tipo para funciones
Cambia parámetros de tipo en las funciones `from_dir` y `with_name` para
aceptar referencias a cadenas.
2025-07-20 11:58:17 +02:00
39b94ec584 🧑‍💻 Mejora uso y doc. de la API de localización 2025-07-19 00:13:49 +02:00
4eb9a87344 🚑 [macros] Corrige rutas absolutas en html!
- Mantiene fijas las rutas absolutas en las funciones de la macro html!.
- Introduce un alias interno del crate (`extern crate self as pagetop;`)
  en `src/lib.rs` para que las expansiones funcionen uniformemente en
  tests, ejemplos y dependencias externas.
2025-07-16 02:53:49 +02:00
c4518d2eeb 📝 Actualiza documentación con favicon propio 2025-07-16 01:04:36 +02:00
74e497f170 🧑‍💻 Añade macros para concatenar cadenas 2025-07-16 00:45:05 +02:00
0df5f3f1c7 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-07-15 20:12:15 +02:00
5d2f293942 🎨 Mejora definición encapsulando uso de recursos 2025-07-13 11:10:06 +02:00
c30c4cdf66 [macros] Añade macro builder_fn 2025-07-12 12:04:37 +02:00
34c4ac262f 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-07-12 06:35:09 +02:00
500f69fa4f 🚩 Añade feature "testing"
- Permite desactivar trazas y registro de eventos al ejecutar tests.
- Añade opción de configuración para activar o desactivar las trazas.
2025-07-11 22:17:59 +02:00
432caf292f Añade estáticos y SCSS compilados para binarios
Módulo auxiliar para ejecutar durante la compilación de proyectos de
PageTop para incluir archivos estáticos o archivos SCSS compilados en
los binarios de los proyectos.
2025-07-10 22:51:47 +02:00
880761fe9a 📝 Actualiza el banner en la documentación 2025-07-09 22:05:42 +02:00
467664ec90 🍱 Añade el banner de PageTop 2025-07-09 21:59:09 +02:00
0dc9dd6ef1 Añade soporte para manejo de fechas y horas 2025-07-09 20:51:43 +02:00
208ad83bea 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-07-09 20:39:39 +02:00
efc4839613 🚨 Aplica retoques por ejecución de clippy 2025-07-08 20:57:39 +02:00
3bb2355b4f Añade AutoDefault para derivar Default avanzado 2025-07-07 21:23:06 +02:00
bceb43e6d0 ⬆️ Actualiza el código de maud a la versión 0.27.0 2025-07-07 20:31:00 +02:00
5ec1b0dc8f 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-07-07 18:21:00 +02:00
91139d43d3 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-07-06 23:03:21 +02:00
6b8eee46f9 📝 [config] Amplía y corrige documentación 2025-07-06 20:08:17 +02: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
45e2882653 📄 Añade las licencias del proyecto 2025-06-24 20:23:28 +02:00
5b9c5ffdae 🎉 Inicia el proyecto 2025-06-24 15:57:55 +02:00