dioxus_tw_components/components/organisms/form/textarea/
props.rs1use crate::attributes::*;
2use dioxus::prelude::*;
3use dioxus_tw_components_macro::UiComp;
4
5#[derive(Default, Clone, PartialEq, Props, UiComp)]
6pub struct TextAreaProps {
7 #[props(extends = textarea, extends = GlobalAttributes)]
8 attributes: Vec<Attribute>,
9 #[props(optional)]
10 value: String,
11
12 #[props(optional)]
13 oninput: EventHandler<FormEvent>,
14 #[props(optional)]
15 onmounted: EventHandler<Event<MountedData>>,
16
17 #[props(optional, default)]
18 pub color: ReadOnlySignal<Color>,
19}
20
21#[component]
22pub fn TextArea(mut props: TextAreaProps) -> Element {
23 props.update_class_attribute();
24
25 let oninput = move |event| props.oninput.call(event);
26
27 let onmounted = move |event: Event<MountedData>| props.onmounted.call(event);
28
29 rsx! {
30 textarea {
31 onmounted,
32 oninput,
33 value: props.value,
34 ..props.attributes.clone(),
35 }
36 }
37}