nightshade_api/web/
status_bar.rs1use leptos::prelude::*;
4
5#[component]
8pub fn StatusBar(children: Children) -> impl IntoView {
9 view! { <div class="nightshade-status-bar" role="status">{children()}</div> }
10}
11
12#[component]
15pub fn StatusItem(
16 #[prop(into, optional)] icon: String,
17 #[prop(into, optional)] class: String,
18 children: Children,
19) -> impl IntoView {
20 let has_icon = !icon.is_empty();
21 view! {
22 <div class=format!("nightshade-status-item {class}")>
23 {has_icon.then(|| view! { <span class="nightshade-status-icon">{icon}</span> })}
24 {children()}
25 </div>
26 }
27}
28
29#[component]
31pub fn StatusSpacer() -> impl IntoView {
32 view! { <div class="nightshade-status-spacer"></div> }
33}