import { FunctionComponent, ReactElement, useCallback } from "react"; import { styled } from "@mui/joy"; import IconButton from "@mui/joy/IconButton"; import { MinusSmIcon } from "@heroicons/react/solid"; import lodash from "lodash"; export interface IFieldType { name: string; placeholder: string; required?: boolean; } export interface IRecordProps { formik: any; fields: IFieldType[]; index: number; onRemove: (index: number) => void; } const Root = styled("div")` display: flex; flex-direction: row; justify-content: flex-start; align-items: center; column-gap: ${({ theme }) => theme.spacing(2)}; `; const RemoveButton = styled(IconButton)``; const Record: FunctionComponent = ( props: IRecordProps ): ReactElement => { const { formik, fields, index, onRemove } = props; const handleRemove = useCallback(() => { onRemove(index); }, [index, onRemove]); return ( {fields.map(({ name, placeholder, required }) => ( ))} ); }; export default Record;