use leptos::prelude::*;
#[component]
pub fn BaseDialogBody(
#[prop(optional, into)] class: MaybeProp<String>,
children: Children,
) -> impl IntoView {
view! {
<div class=move || format_class("orbital-dialog-body", class.get())>
{children()}
</div>
}
}
#[component]
pub fn BaseDialogTitle(
#[prop(optional, into)] class: MaybeProp<String>,
children: Children,
) -> impl IntoView {
view! {
<div class=move || format_class("orbital-dialog-title", class.get())>
{children()}
</div>
}
}
#[component]
pub fn BaseDialogContent(
#[prop(optional, into)] class: MaybeProp<String>,
children: Children,
) -> impl IntoView {
view! {
<div class=move || format_class("orbital-dialog-content", class.get())>
{children()}
</div>
}
}
#[component]
pub fn BaseDialogActions(
#[prop(optional, into)] class: MaybeProp<String>,
children: Children,
) -> impl IntoView {
view! {
<div class=move || format_class("orbital-dialog-actions", class.get())>
{children()}
</div>
}
}
fn format_class(base: &str, extra: Option<String>) -> String {
match extra {
Some(extra) if !extra.is_empty() => format!("{base} {extra}"),
_ => base.to_string(),
}
}