Commit graph

24 commits

Author SHA1 Message Date
8072d77457 🎨 Protege el uso de render en PrepareMarkup 2025-12-21 10:25:20 +01:00
04a7ad3a02 ♻️ (bootsier): Refactoriza la gestión de clases
- Mejora la legibilidad del código.
- Simplifica las alteraciones de clases en los componentes `Container`,
  `Dropdown`, `Image`, `Nav`, `Navbar` y `Offcanvas` usando métodos
  dedicados para generar clases en función de sus propiedades.
- Mejora los enums añadiendo métodos que devuelven sus clases
  asociadas, reduciendo código repetitivo.
- Elimina el trait `JoinClasses` y su implementación, integrando la
  lógica de unión de clases directamente en los componentes.
2025-12-21 10:25:13 +01:00
b6cf3f71a0 Añade trait JoinClasses para unir clases CSS
También elimina macros sin uso `join_op!` y `join_strict!` (KISS).
2025-12-21 10:25:13 +01:00
ae90c60591 🍱 Reemplaza imágenes del logo de PageTop con SVG 2025-12-21 10:24:39 +01:00
6403942ff0 (html): Añade soporte para unidades CSS 2025-12-21 10:23:54 +01:00
6c9b9d771f 📝 Evita en los ejemplos use pagetop::prelude::*; 2025-12-21 10:23:37 +01:00
2041465977 🚚 Renombra ErrorParam por ContextError 2025-12-21 10:23:37 +01:00
e53c5e8395 🚧 (core): Mueve Context al ámbito de componentes 2025-12-21 10:23:31 +01:00
378d4f844a 🚚 Renombra AssetsOp por ContextOp 2025-12-21 10:23:31 +01:00
2bf62697b5 🚧 (base): Añade nuevo componente menu 2025-12-21 10:23:25 +01:00
d2a8a169e6 💡 Mejora legibilidad de comentarios 2025-12-21 10:23:19 +01:00
af52de8149 🔥 Elimina definitivamente TypedOpt por Typed 2025-12-21 10:23:19 +01:00
07dbdc8a16 🚚 Renombra TypedSlot por TypedOpt 2025-12-21 10:23:19 +01:00
9aafe19b93 🔥 Elimina Render para usar siempre el contexto 2025-12-21 10:22:53 +01:00
9e9f64b0eb 🎨 Unifica conversiones a String con to_string()
Como `String::from()` y `.to_string()` son equivalentes, se sustituyen
todas las ocurrencias de `String::from()` por `to_string()` para mayor
coherencia y legibilidad.
2025-12-21 10:22:53 +01:00
a9d771fe6e 🚧 (context): Define un trait común de contexto 2025-12-21 10:22:40 +01:00
ae54650955 ♻️ (html): Cambia tipos Option... por Attr...
Renombra los tipos para atributos HTML `Id`, `Name`, `Value` (`String`),
`L10n` (`Translate`) y `Classes`. Y mueve `OptionComponent` al *core* de
componentes como `TypedSlot`.
2025-12-21 10:21:29 +01:00
2d0c1f1bac ♻️ Reemplaza ContextOp por AssetsOp en el contexto 2025-12-21 10:17:55 +01:00
d496141227 🧑‍💻 Mejora las operaciones de cambio en contexto 2025-12-21 10:17:48 +01:00
2ac09060b8 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 10:17:48 +01:00
f06227b738 Añade tipos para renderizar atributos HTML 2025-12-21 10:17:48 +01:00
8ea85a365e 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 10:17:48 +01:00
c5d7b5fef8 ⬆️ Actualiza el código de maud a la versión 0.27.0 2025-12-21 10:17:26 +01:00
4a7b328ea3 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 10:17:26 +01:00