diff options
Diffstat (limited to 'src/components/modal.rs')
-rw-r--r-- | src/components/modal.rs | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/components/modal.rs b/src/components/modal.rs new file mode 100644 index 0000000..62e1fac --- /dev/null +++ b/src/components/modal.rs @@ -0,0 +1,16 @@ +use leptos::prelude::*; +use leptos::ev::MouseEvent; + +#[component] +pub fn Modal(on_background_click: impl Fn(MouseEvent) + 'static, children: Children) -> impl IntoView { + view! { + <div class="modal" on:click=move |e| { + if e.current_target() == e.target() { + on_background_click(e) + } + }> + {children()} + </div> + } +} + |