import { Col, Row, Skeleton } from "antd";
import BAComponentSwitcher, { formElement } from "./BAComponentSwitcher"
import BABox from "./BABox";
import BAButton from "./BAButton";
import { checkRequiredElement } from "./config/helpers";
type propsType = {
model: any,
setModel: any,
formElement: formElement[],
onSaveClick?: () => void,
saveLoader?: boolean
disabledForm?: boolean,
loading?: boolean,
containerClass?: string,
buttonContainerClass?: string,
customButton?: React.ReactNode,
hideButton?: boolean
disabledSaveButton?: boolean
saveButtonLabel?: string
saveButtonIcon?: any
saveButtonAlignment?: "center" | "start" | "end" | undefined
saveButtonType?: "primary" | "default" | "dashed" | "link" | "text" | undefined
}
export default function BAFormElement(props: propsType) {
const {
model,
setModel,
formElement,
disabledForm,
saveLoader,
onSaveClick,
loading,
customButton,
hideButton,
saveButtonLabel,
saveButtonIcon,
disabledSaveButton,
saveButtonAlignment,
saveButtonType,
} = props;
const saveClick = () => {
if (checkRequiredElement(formElement, model) && onSaveClick) {
onSaveClick()
}
}
return <>
{formElement.map((element, index) => {
return !element.isHide &&
{loading ? :
}
})}
{!hideButton &&
{customButton ? customButton : }
}
>
}