use crate::components::form::input_element::input_element;
use crate::components::form::props::InputProps;
use crate::components::form::select_element::select_element;
use crate::defaults::{ELEMENT_INPUT, ELEMENT_LABEL, ELEMENT_SELECT};
use crate::utils::types::HTMLResult;
use rumtk_core::strings::rumtk_format;
pub fn form_element(element: &str, data: &str, props: InputProps, css_class: &str) -> HTMLResult {
match element {
ELEMENT_INPUT | ELEMENT_LABEL => input_element(element, data, props, css_class),
ELEMENT_SELECT => select_element(element, data, props, css_class),
_ => Err(rumtk_format!("Element of type {} not supported!", element))
}
}