Global changes across all themes:
- Node 16 is now the default node engine for all packages, fixing (#2687)
- Refactored all themes to use the new
@rjsf/utils
library functions and types - Refactored the individual theme forms to consolidate
templates
as part of the fix for #2526 - Bumped most devDependencies to the latest versions where possible
- Switched all repos
package.json
andpackage-lock.json
files to be built and maintained by Node 16. - Adding button templates help to change text for buttons (#2082, #2357)
@rjsf/utils
- New package created by refactoring and converting to Typescript the
utils.js
file fromcore
into independent functions. - Updated
types
fromcore
inutils
to better match the implementation across all themes - Clear errors on
formData
change whenliveOmit=true
when "additionalProperties: false" issue 1507 (#2631)
@rjsf/validator-ajv6
- New package created by refactoring and converting to Typescript the
validator.js
file fromcore
into independent functions as well as a class that implements the newValidatorType
interface. - Added support for customizing the options passed to the creation of the
ajv
instance.
@rjsf/validator-ajv6
- A BREAKING CHANGE to
toErrorList()
was made so that it takesfieldPath: string[]
rather thanfieldName='root'
as part of the fix to (#1596)- The returned
errors
also now addsproperty
from thefieldPath
along with the proper path from theproperty
to thestack
message, making it consistent with the AJV errors.- Previously the
stack
attribute would sayroot: error message
; now it says. error message
- Previously the
- In addition, the extra information provided by AJV is no longer lost from the
errors
when merged with custom validation, fixing (#1596).
- The returned
@rjsf/core
- Converted core to Typescript (#583)
ui:emptyValue
now works with selects (#1041)- Refactoring
utils.js
into the new@rjsf/utils
fixes (#2719) - BREAKING CHANGE Fix overriding core submit button className (#2979)
- Fix
ui:field
with anyOf or oneOf no longer rendered twice (#2890) - BREAKING CHANGE Fixed
anyOf
andoneOf
getting incorrect, potentially duplicate ids when combined with array (#2197) formContext
is now passed properly toSchemaField
, fixes (#2394, #2274)- Added
ui:duplicateKeySuffixSeparator
to customize how duplicate object keys are renamed when usingadditionalProperties
. - The
extraErrors
are now consistently appended onto the end of the schema validation-basederrors
information that is returned via theonErrors()
callback when submit fails.- In addition, the extra information provided by AJV is no longer stripped from the
errors
during the merge process, fixing (#1596).
- In addition, the extra information provided by AJV is no longer stripped from the
- Fixed id generation for
RadioWidget
to no longer use random numbers fixing (#2461) - Correctly call the
onChange
handler in the new set of props if it changed, fixing (#1708). - Fixed race condition for
onChange
whenformData
is controlled prop, fixing (#513),
@rjsf/antd
- Fix esm build to use
@rollup/plugin-replace
to replaceantd/lib
andrc-picker/lib
withantd/es
andrc-picker/es
respectively, fixing (#2962)
@rjsf/bootstrap-4
- Bootstrap-4
withTheme
customizations should work properly now (#2058) ArrayFieldTemplate
refactor seems to have fixed #2775- Fix issues with
SelectField
(#2616, #2875)
@rjsf/chakra-ui
- Properly handle the hidden field in this theme (#2571)
@rjsf/material-ui
- The theme for Material UI version 5 (i.e.
@rjsf/mui
) was split out of the theme for version 4 (i.e.@rjsf/material-ui
) to resolve the following issues: - Material-UI TextWidget now respects
inputType
in uiSchema (#2057)- Also respects
step
fornumber
type (#2488)
- Also respects
- Material-UI UpDownWidget now support min/max/step (#2022)
- Properly handle the hidden field in this theme (#2571)
- Select properly accepts true or false (#2326)
@rjsf/mui
- The theme for Material UI version 5 (i.e.
@rjsf/mui
) was split out of the theme for version 4 (i.e.@rjsf/material-ui
) to resolve the following issues: - Material-UI TextWidget now respects
inputType
in uiSchema (#2057)- Also respects
step
fornumber
type (#2488)
- Also respects
- Material-UI UpDownWidget now support min/max/step (#2022)
- Properly handle the hidden field in this theme (#2571)
@rjsf/semantic-ui
- Fix missing error class on fields (#2666)
- Fixed the
main
definition insemantic-ui
to fix (withastro/astro#4357) - Properly handle the hidden field in this theme (#2571)