use super::*;
#[component]
pub fn euv_debug(node: VirtualNode<EuvDebugProps>) -> VirtualNode {
let EuvDebugProps {
label,
value,
expanded,
}: EuvDebugProps = node.try_get_props().unwrap_or_default();
let rendered: String = match value.as_ref() {
Some(formatter) => formatter(),
None => String::from("<no formatter>"),
};
if expanded {
html! {
div {
class: c_debug()
data-euv-debug: "expanded"
span {
class: c_debug_label()
data-euv-debug-label: label
label
}
pre {
class: c_debug_value()
data-euv-debug-value: "expanded"
rendered
}
}
}
} else {
html! {
div {
class: c_debug()
data-euv-debug: "inline"
span {
class: c_debug_label()
data-euv-debug-label: label
label
}
code {
class: c_debug_value()
data-euv-debug-value: "inline"
rendered
}
}
}
}
}