leptos_bootstrap/v5/
toast.rs

1use leptos::prelude::*;
2
3#[component]
4pub fn ToastContainer<'a>(
5    #[prop(optional, into)] class: &'a str,
6    children: Children,
7) -> impl IntoView {
8    let class = format!("toast-container position-static {}", class);
9    view! {
10        <div class=class>
11            {children()}
12        </div>
13    }
14}
15
16#[component]
17pub fn Toast<'a>(#[prop(optional, into)] class: &'a str, children: Children) -> impl IntoView {
18    let class = format!("toast {}", class);
19    view! {
20        <div class=class>
21            {children()}
22        </div>
23    }
24}
25
26#[component]
27pub fn ToastHeader<'a>(
28    #[prop(optional, into)] class: &'a str,
29    children: Children,
30) -> impl IntoView {
31    let class = format!("toast-header {}", class);
32    view! {
33        <div class=class>
34            {children()}
35        </div>
36    }
37}
38
39#[component]
40pub fn ToastBody<'a>(#[prop(optional, into)] class: &'a str, children: Children) -> impl IntoView {
41    let class = format!("toast-body {}", class);
42    view! {
43        <div class=class>
44            {children()}
45        </div>
46    }
47}