Skip to content

Bug: issue with typescript types for version 3.17.0 #1229

@stijnvanhulle

Description

@stijnvanhulle

Scope: Form renderer

FormTemplate and onSubmit seem to be optional in version 3.17.0(see propTypes) but when checking the types for typescript it is still a required prop.

https://github.com/data-driven-forms/react-forms/blob/753075cf987308c819fa3d42cf56881ea8e2f347/packages/react-form-renderer/src/form-renderer/form-renderer.d.ts

afbeelding

export interface FormRendererProps extends FormProps {
  initialValues?: object;
  onCancel?: (values: AnyObject, ...args: any[]) => void;
  onReset?: () => void;
  onError?: (...args: any[]) => void;
  schema: Schema;
  clearOnUnmount?: boolean;
  clearedValue?: any;
  componentMapper: ComponentMapper;
  FormTemplate: ComponentType<FormTemplateRenderProps> | FunctionComponent<FormTemplateRenderProps>;
  validatorMapper?: ValidatorMapper;
  actionMapper?: ActionMapper;
  schemaValidatorMapper?: SchemaValidatorMapper;
  FormTemplateProps?: AnyObject;
  children?: ReactNode | ((props: FormTemplateRenderProps) => ReactNode)
}
FormRenderer.propTypes = {
  children: PropTypes.oneOfType([PropTypes.func, PropTypes.element]),
  onSubmit: PropTypes.func,
  onCancel: PropTypes.func,
  onReset: PropTypes.func,
  onError: PropTypes.func,
  schema: PropTypes.object.isRequired,
  clearOnUnmount: PropTypes.bool,
  subscription: PropTypes.shape({ [PropTypes.string]: PropTypes.bool }),
  clearedValue: PropTypes.any,
  componentMapper: PropTypes.shape({
    [PropTypes.string]: PropTypes.oneOfType([PropTypes.node, PropTypes.element, PropTypes.func, PropTypes.elementType]),
  }).isRequired,
  FormTemplate: PropTypes.elementType,
  FormTemplateProps: PropTypes.object,
  validatorMapper: PropTypes.shape({
    [PropTypes.string]: PropTypes.func,
  }),
  actionMapper: PropTypes.shape({
    [PropTypes.string]: PropTypes.func,
  }),
  schemaValidatorMapper: PropTypes.shape({
    components: PropTypes.shape({
      [PropTypes.string]: PropTypes.func,
    }),
    validators: PropTypes.shape({
      [PropTypes.string]: PropTypes.func,
    }),
    actions: PropTypes.shape({
      [PropTypes.string]: PropTypes.func,
    }),
  }),
  initialValues: PropTypes.object,
  decorators: PropTypes.array,
  mutators: PropTypes.object,
};

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions