import { ModalContent, ModalOverlay, ModalRoot, } from '../elements/ModalPrimitives' import { Box, HStack, VStack } from '../elements/LayoutPrimitives' import { Button } from '../elements/Button' import { StyledText } from '../elements/StyledText' export interface FormInputProps { name: string label: string value?: any onChange?: (value: any) => void type?: string placeholder?: string disabled?: boolean hidden?: boolean required?: boolean } export interface FormModalProps { inputs?: FormInputProps[] title: string acceptButtonLabel?: string onSubmit: () => void onOpenChange: (open: boolean) => void } export function FormModal(props: FormModalProps): JSX.Element { return ( {props.title}
{ event.preventDefault() props.onSubmit() props.onOpenChange(false) }} > {props.inputs?.map((input) => ( {input.label} { input.onChange && input.onChange( event.target.value || event.target.checked ) }} disabled={input.disabled} hidden={input.hidden} required={input.required} checked={input.value} /> ))}
) }