web_tools/optimistic/
element.rs1pub trait OptimisticElement {
3 fn contains(&self, target: Option<web_sys::EventTarget>) -> bool;
5}
6
7#[cfg(feature = "yew")]
8impl OptimisticElement for yew::prelude::NodeRef {
9 fn contains(&self, target: Option<web_sys::EventTarget>) -> bool {
10 use web_sys::wasm_bindgen::JsCast;
11
12 let target = target
13 .as_ref()
14 .and_then(|target| target.dyn_ref::<web_sys::Node>());
15 if let Some(element) = self.cast::<web_sys::Element>() {
16 element.contains(target)
17 } else {
18 false
19 }
20 }
21}