Sustituye `attrs/` y `classes/` por tres capas diferenciadas: - `token/`: primitivas CSS (BreakPoint, Color, ScaleSize, etc.). - `class/`: tipos compuestos (Border, Background, Margin, etc.). - `bs/*/props.rs`: props tipadas para cada componente de Bootstrap. El patrón de construcción es `suffix()` -> `push_to()` -> `to_class()`. `push_to()` es `pub` en `class/` y `bs/*/props.rs` para que los temas derivados puedan acceder a los mismos mecanismos de construcción.
17 lines
706 B
Rust
17 lines
706 B
Rust
//! Definiciones para crear menús desplegables ([`Dropdown`]).
|
|
//!
|
|
//! Cada [`dropdown::Item`](crate::theme::bs::dropdown::Item) representa un elemento individual del
|
|
//! desplegable [`Dropdown`], con distintos comportamientos según su finalidad, como enlaces de
|
|
//! navegación, botones de acción, encabezados o divisores visuales.
|
|
//!
|
|
//! Los ítems pueden estar activos, deshabilitados o abrirse en nueva ventana según su contexto y
|
|
//! configuración, y permiten incluir etiquetas localizables usando [`L10n`](pagetop::locale::L10n).
|
|
|
|
mod props;
|
|
pub use props::{AutoClose, Direction, MenuAlign, MenuPosition};
|
|
|
|
mod component;
|
|
pub use component::Dropdown;
|
|
|
|
mod item;
|
|
pub use item::{Item, ItemKind};
|