import React, { useMemo } from 'react'; import { FastifyForm, regField, FastifyFormContainerComponent, regFormContainer, } from 'react-fastify-form'; import { Form, Button } from 'antd'; import { FastifyFormText } from './types/Text'; import { FastifyFormTextArea } from './types/TextArea'; import { FastifyFormPassword } from './types/Password'; import { FastifyFormSelect } from './types/Select'; import { FastifyFormCheckbox } from './types/Checkbox'; import { FastifyFormCustom } from './types/Custom'; regField('text', FastifyFormText); regField('textarea', FastifyFormTextArea); regField('password', FastifyFormPassword); regField('select', FastifyFormSelect); regField('checkbox', FastifyFormCheckbox); regField('custom', FastifyFormCustom); const WebFastifyFormContainer: FastifyFormContainerComponent = React.memo( (props) => { const layout = props.layout; const submitButtonRender = useMemo(() => { return ( ); }, [ props.loading, props.handleSubmit, props.canSubmit, props.submitLabel, layout, ]); return (
{props.children} {submitButtonRender}
); } ); WebFastifyFormContainer.displayName = 'WebFastifyFormContainer'; regFormContainer(WebFastifyFormContainer); export const WebMetaForm = FastifyForm; (WebMetaForm as any).displayName = 'WebMetaForm';