pub fn text_input<T: ToString + FromStr + Send + Sync>( value: &T, props: impl Into<Props>, f: impl FnMut(&str, TextInputState), ) -> (Option<T>, TextInputState)