use crate::{prelude::*, props::*, render}; use yew::prelude::*; pub struct FormGroup { pub props: Props, } impl Component for FormGroup { type Message = (); type Properties = Props; fn create(props: Self::Properties, _: ComponentLink) -> Self { Self { props } } fn update(&mut self, _: Self::Message) -> ShouldRender { false } fn change(&mut self, props: Self::Properties) -> ShouldRender { render_if_ne(&mut self.props, props) } #[cfg(not(feature = "validate"))] fn view(&self) -> Html { render::render_with_prefix(&self.props, "form-group", render::div(&self.props.children)) } } pub struct Form { pub props: Props, } impl Component for Form { type Message = (); type Properties = Props; fn create(props: Self::Properties, _: ComponentLink) -> Self { Self { props } } fn update(&mut self, _: Self::Message) -> ShouldRender { false } fn change(&mut self, props: Self::Properties) -> ShouldRender { render_if_ne(&mut self.props, props) } #[cfg(not(feature = "validate"))] fn view(&self) -> Html { let form = html! {
{ for self.props.children.iter() }
}; render::render_with_prefix(&self.props, "form", form) } #[cfg(feature = "validate")] fn view(&self) -> Html { let form = html! {
{ for self.props.children.iter() }
}; render::render_with_prefix(&self.props, "form", form) } }