github rjsf-team/react-jsonschema-form v6.5.0
6.5.0

latest releases: 6.5.1, v6.5.1, 6.5.0...
9 hours ago

New Feature

  • Added support for passing MUI-specific props (e.g., sx, rjsfSlotProps, variant) directly through uiSchema for all templates and widgets see the documentation

@rjsf/antd

  • Updated BaseInputTemplate to remove type and set changeOnWheel to false for the InputNumber component, fixing #5002
  • Updated ErrorList and IconButton to destructure icons imported from @ant-design/icons, fixing #4953
  • Added key={label} to key input in WrapIfAdditionalTemplate to reset input value after duplicate key rename (#4999)
  • Updated BaseInputTemplate to destructure and guard min/max before spreading onto InputNumber, fixing a build error caused by the widened InputPropsType (number | string)
  • Added support for Antd v6, addressing #4995

@rjsf/chakra-ui

  • Added key={label} to key input in WrapIfAdditionalTemplate to reset input value after duplicate key rename (#4999)
  • Added opt-in optionValueFormat: 'realValue' support to SelectWidget, RadioWidget, and CheckboxesWidget (#4693)

@rjsf/core

  • Added a new removeEmptyOptionalObjects boolean prop to gracefully prune optional empty objects preventing form submission lockouts, fixing #4954
  • Included button elements in focusOnError querySelector so that radio and checkbox groups receive focus on validation error, fixing #4870
  • Fixed focus being lost when renaming additional property keys by preserving React key for renamed properties (#4999)
  • Removed expandUiSchemaDefinitions call at form init, now handled at runtime by resolveUiSchema, fixing #4986
  • Used useRef to track latest formData in handleKeyRename, preventing stale closure data when multiple additional property keys are renamed in quick succession, fixing #5021
  • Added opt-in optionValueFormat: 'realValue' support to SelectWidget, RadioWidget, and CheckboxesWidget for rendering real enum values in DOM attributes instead of array indices (#4693)

@rjsf/daisyui

  • Added key={label} to key input in WrapIfAdditionalTemplate to reset input value after duplicate key rename (#4999)
  • Added opt-in optionValueFormat: 'realValue' support to SelectWidget, RadioWidget, and CheckboxesWidget (#4693)

@rjsf/fluentui-rc

  • Added key={label} to key input in WrapIfAdditionalTemplate to reset input value after duplicate key rename (#4999)
  • Added opt-in optionValueFormat: 'realValue' support to SelectWidget, RadioWidget, and CheckboxesWidget (#4693)

@rjsf/mantine

  • Added key={label} to key input in WrapIfAdditionalTemplate to reset input value after duplicate key rename (#4999)
  • Updated BaseInputTemplate to destructure and guard min/max before spreading onto NumberInput, fixing a build error caused by the widened InputPropsType (number | string)
  • Added opt-in optionValueFormat: 'realValue' support to SelectWidget, RadioWidget, and CheckboxesWidget (#4693)

@rjsf/mui

  • Added key={label} to key input in WrapIfAdditionalTemplate to reset input value after duplicate key rename (#4999)
  • Added opt-in optionValueFormat: 'realValue' support to SelectWidget, RadioWidget, and CheckboxesWidget (#4693)
  • Added support for passing MUI-specific props (e.g., sx, rjsfSlotProps, variant) directly through uiSchema for all templates and widgets, fixing #4996

@rjsf/primereact

  • Added key={label} to key input in WrapIfAdditionalTemplate to reset input value after duplicate key rename (#4999)
  • Added opt-in optionValueFormat: 'realValue' support to SelectWidget, RadioWidget, and CheckboxesWidget (#4693)

@rjsf/react-bootstrap

  • Added key={label} to key input in WrapIfAdditionalTemplate to reset input value after duplicate key rename (#4999)
  • Added opt-in optionValueFormat: 'realValue' support to SelectWidget, RadioWidget, and CheckboxesWidget (#4693)

@rjsf/semantic-ui

  • Added key={label} to key input in WrapIfAdditionalTemplate to reset input value after duplicate key rename (#4999)
  • Added opt-in optionValueFormat: 'realValue' support to SelectWidget, RadioWidget, and CheckboxesWidget (#4693)

@rjsf/shadcn

  • Added key={label} to key input in WrapIfAdditionalTemplate to reset input value after duplicate key rename (#4999)
  • Added opt-in optionValueFormat: 'realValue' support to SelectWidget, RadioWidget, and CheckboxesWidget (#4693)

@rjsf/utils

  • Added removeOptionalEmptyObjects utility function to recursively strip fully empty optional objects based on their parent's required properties, fixing #4954
  • Updated InputPropsType to widen min and max to number | string to support date values (e.g. "2020-01-01")
  • Updated getInputProps() to propagate formatMinimum and formatMaximum schema keywords to the HTML min/max attributes for date, datetime-local, time, week, and month input types, aligning browser-native date picker constraints with AJV validation
  • Fixed ui:title from ui:definitions not applied to oneOf/anyOf dropdowns beyond first recursion level, fixing #4986
  • Added enumOptionValueEncoder, enumOptionValueDecoder, and enumOptionSelectedValue utilities for opt-in real enum value rendering in select/radio/checkbox widgets (#4693)
  • Added optionValueFormat: 'indexed' | 'realValue' to GlobalUISchemaOptions and the OptionValueFormat type for opt-in real enum values in widget DOM attributes (#4693)

@rjsf/validator-ajv8

  • Updated CustomValidatorOptionsType to add the new suppressDuplicateFiltering flag prop, updating the validators to pass it through to the transformRJSFValidationErrors() which suppresses the appropriate duplicate errors if specified, fixing #5028

Dev / docs / playground

  • Updated References playground sample to demonstrate oneOf with ui:title at recursive depth, related to #4986
  • Updated the building of the mantine theme to properly support ESM, fixing #5025
  • Updated the validator-ajv8.md and validation.md documetation for the new suppressDuplicateFiltering configuration prop
  • Added comprehensive documentation for @rjsf/mui customization via uiSchema (including rjsfSlotProps usage).

Don't miss a new react-jsonschema-form release

NewReleases is sending notifications on new releases.