use super::*;
#[component]
pub fn euv_tooltip(node: VirtualNode<EuvTooltipProps>) -> VirtualNode {
let EuvTooltipProps { text, placement }: EuvTooltipProps =
node.try_get_props().unwrap_or_default();
let children: VirtualNode = node.get_children().into();
let bubble_class: fn() -> &'static Css = match placement {
EuvTooltipPlacement::Top => c_euv_tooltip_bubble_top,
EuvTooltipPlacement::Bottom => c_euv_tooltip_bubble_bottom,
EuvTooltipPlacement::Left => c_euv_tooltip_bubble_left,
EuvTooltipPlacement::Right => c_euv_tooltip_bubble_right,
};
html! {
span {
class: c_euv_tooltip()
children
div {
class: c_euv_tooltip_bubble()
class: bubble_class()
{
text
}
}
}
}
}