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.
28 lines
714 B
Rust
28 lines
714 B
Rust
//! Tipos enumerados para construir clases del tema.
|
|
//!
|
|
//! Incluyen puntos de ruptura, colores, escalas de tamaño, lados, etc. Se pueden importar
|
|
//! globalmente junto al resto del tema:
|
|
//!
|
|
//! ```rust,no_run
|
|
//! use pagetop_bootsier::theme::*;
|
|
//!
|
|
//! let bg = class::Background::with(token::Color::Primary);
|
|
//! let border = class::Border::new()
|
|
//! .with_side(token::Side::Top, token::ScaleSize::Zero)
|
|
//! .with_color(token::Color::Danger);
|
|
//! ```
|
|
|
|
mod breakpoint;
|
|
pub use breakpoint::BreakPoint;
|
|
|
|
mod color;
|
|
pub use color::{Color, ColorBg, ColorText, Opacity};
|
|
|
|
mod border;
|
|
pub use border::ColorBorder;
|
|
|
|
mod rounded;
|
|
pub use rounded::RoundedRadius;
|
|
|
|
mod layout;
|
|
pub use layout::{ScaleSize, Side};
|