canonrs-server 0.1.0

CanonRS server-side rendering support
use leptos::prelude::*;
use canonrs_core::infra::uid::generate;
use canonrs_core::primitives::layout::grid::{GridPrimitive as Grid, GridCols};

#[component]
pub fn StatGroupBlock(
    #[prop(optional)] stats: Option<ChildrenFn>,
    #[prop(default = GridCols::Three)] cols: GridCols,
    #[prop(into, default = String::new())] class: String,
) -> impl IntoView {
    let uid   = generate("bl");
    let stats = StoredValue::new(stats);
    view! {
        <section data-rs-stat-group="" data-rs-uid=uid aria-label="Statistics" class=class>
            <Grid cols=cols>
                {move || stats.get_value().map(|s| view! { <div data-rs-region="stats">{s()}</div> })}
            </Grid>
        </section>
    }
}