use yew::prelude::*;
#[derive(Properties, Clone, PartialEq)]
pub struct SelectOptgroupProps {
pub label: AttrValue,
#[prop_or_default]
pub children: Children,
#[prop_or_default]
pub class: Classes,
}
#[derive(Properties, Clone, PartialEq)]
pub struct SelectOptionProps {
pub label: AttrValue,
#[prop_or_default]
pub value: AttrValue,
#[prop_or_default]
pub selected: bool,
#[prop_or_default]
pub class: Classes,
}
#[function_component]
pub fn SelectOptgroup(props: &SelectOptgroupProps) -> Html {
html! {
<optgroup label={ props.label.clone() } class={ props.class.clone() }>
{ for props.children.iter() }
</optgroup>
}
}
#[function_component]
pub fn SelectOption(props: &SelectOptionProps) -> Html {
html! {
<option value={ props.value.clone() } class={ props.class.clone() }
selected={ props.selected }>
{ props.label.clone()}
</option>
}
}