UNPKG

@data-driven-forms/react-form-renderer

Version:

React Form Renderer. Data Driven Forms converts JSON form definitions into fully functional React forms.

38 lines (37 loc) 1.68 kB
import { ReactNode } from 'react'; import { FormApi } from 'final-form'; import ComponentMapper from '../common-types/component-mapper'; import { ValidatorMapper } from '../validator-mapper'; import { ActionMapper } from '../form-renderer/action-mapper'; import Field from '../common-types/field'; import Schema from '../common-types/schema'; import { ConditionMapper } from '../form-renderer/condition-mapper'; export interface FormOptions<FormValues = Record<string, any>, InitialFormValues = Partial<FormValues>> extends FormApi<FormValues, InitialFormValues> { registerInputFile?: (name: keyof FormValues) => void; unRegisterInputFile?: (name: keyof FormValues) => void; onCancel?: (values: FormValues, ...args: any[]) => void; onReset?: () => void; onSubmit?: (...args: any[]) => void | any | Promise<any>; handleSubmit: () => Promise<FormValues | undefined> | undefined; onError?: (...args: any[]) => void; clearOnUnmount?: boolean; clearedValue?: any; renderForm: (fields: Field[]) => ReactNode[]; internalRegisterField: (name: keyof FormValues) => void; internalUnRegisterField: (name: keyof FormValues) => void; getRegisteredFields: () => string[]; ffGetRegisteredFields: () => string[]; initialValues: InitialFormValues; schema: Schema; pristine: boolean; valid: boolean; } export interface RendererContextValue { componentMapper: ComponentMapper; validatorMapper: ValidatorMapper; actionMapper: ActionMapper; formOptions: FormOptions; conditionMapper: ConditionMapper; } declare const RendererContext: import("react").Context<RendererContextValue>; export default RendererContext;