Releases: rjsf-team/react-jsonschema-form
Releases · rjsf-team/react-jsonschema-form
6.0.0-beta.22
Many BREAKING CHANGES
- Due to some refactoring and performance improvements, every theme and
@rjsf/utilshave breaking changes
@rjsf/antd
- Updated most of the widgets to get
formContextfrom theregistryinstead of thepropssince it will no longer be passed - BREAKING CHANGE: Updated
FieldTemplate,ObjectFieldTemplateandWrapIfAdditionalTemplateto rename the oldadditionalPropertiesinterface props to the new ones - Updated
BaseInputTemplate,CheckboxesWidget,CheckboxWidget,RadioWidget,SelectWidget, andTextareaWidgetto usehtmlNamefor the HTMLnameattribute - BREAKING CHANGE: Updated
ArrayFieldTemplateto remove theArrayFieldItemTemplaterender in favor of simply usingitemsdue toArrayFieldchanges
@rjsf/chakra-ui
- BREAKING CHANGE: Updated
FieldTemplate,ObjectFieldTemplateandWrapIfAdditionalTemplateto rename the oldadditionalPropertiesinterface props to the new ones - Updated
BaseInputTemplate,CheckboxesWidget,CheckboxWidget,RadioWidget,SelectWidget, andTextareaWidgetto usehtmlNamefor the HTMLnameattribute - BREAKING CHANGE: Updated
ArrayFieldTemplateto remove theArrayFieldItemTemplaterender in favor of simply usingitemsdue toArrayFieldchanges
@rjsf/core
- Updated
MultiSchemaFieldandSchemaFieldto properly displayanyOf/oneOfoptional data fields by hiding the label and selector control when it is an optional field AND there is no form data - Updated
ArrayField,BooleanField,LayoutMultiSchemaField,MultiSchemaField,ObjectField,SchemaField,StringFieldandBaseInputTemplateto removeformContextfrom the props - Updated
ObjectFieldto refactor the code from a class component to two stateless functional components, replacing the 3 generator-props with the 4 memoized props mentioned in the@rjsf/utilschanges - Updated
Formto "memoize" thefieldPathIdandregistryinto theFormState, adding atoIChangeEvent()helper to restrict the state returned on theIChangeEventinterface callbacks - BREAKING CHANGE: Updated
FieldTemplate,ObjectFieldTemplateandWrapIfAdditionalTemplateto rename the oldadditionalPropertiesinterface props to the new ones - Added
nameGeneratorprop toFormcomponent to enable custom HTMLnameattribute generation for form fields - Updated
ArrayFieldto refactor code from a class component to seven stateless functional components, replacing the 4 generator-props with the 5 memoized props mentioned in the@rjsf/utilschanges- BREAKING CHANGE: The refactor included rendering the
ArrayFieldItemTemplatedirectly by theArrayFieldrather than deferring it to theArrayFieldTemplate - Updated the
ArrayFieldtests to adjust for the rendering change AND to remove 2 tests due to them no longer being valid
- BREAKING CHANGE: The refactor included rendering the
- BREAKING CHANGE: Updated
ArrayFieldTemplateto remove theArrayFieldItemTemplaterender in favor of simply usingitemsdue toArrayFieldchanges - BREAKING CHANGE: Updated
ArrayFieldItemButtonsTemplateto replace the old callback-generator functions with the new memoizable callback functions - Fixed a bug in
Formto avoid getting errors being reported at the root level viaonChangewhen there aren't - Refactored
LayoutGridFieldas function components instead of a single class component.
@rjsf/daisyui
- Updated the test mocks to remove
formContextfor the widget mock - BREAKING CHANGE: Updated
FieldTemplate,ObjectFieldTemplateandWrapIfAdditionalTemplateto rename the oldadditionalPropertiesinterface props to the new ones - Updated
BaseInputTemplate,CheckboxesWidget,CheckboxWidget,RadioWidget, andTextareaWidgetto usehtmlNamefor the HTMLnameattribute - BREAKING CHANGE: Updated
ArrayFieldTemplateto remove theArrayFieldItemTemplaterender in favor of simply usingitemsdue toArrayFieldchanges - BREAKING CHANGE: Updated
ArrayFieldItemButtonsTemplateto replace the old callback-generator functions with the new memoizable callback functions
@rjsf/fluentui-rc
- BREAKING CHANGE: Updated
FieldTemplate,ObjectFieldTemplateandWrapIfAdditionalTemplateto rename the oldadditionalPropertiesinterface props to the new ones - Updated
BaseInputTemplate,CheckboxesWidget,CheckboxWidget,RadioWidget,SelectWidget, andTextareaWidgetto usehtmlNamefor the HTMLnameattribute - BREAKING CHANGE: Updated
ArrayFieldTemplateto remove theArrayFieldItemTemplaterender in favor of simply usingitemsdue toArrayFieldchanges
@rjsf/mantine
- BREAKING CHANGE: Updated
FieldTemplate,ObjectFieldTemplateandWrapIfAdditionalTemplateto rename the oldadditionalPropertiesinterface props to the new ones - Updated
BaseInputTemplate,CheckboxesWidget,CheckboxWidget,RadioWidget,SelectWidget, andTextareaWidgetto usehtmlNamefor the HTMLnameattribute - BREAKING CHANGE: Updated
ArrayFieldTemplateto remove theArrayFieldItemTemplaterender in favor of simply usingitemsdue toArrayFieldchanges
@rjsf/mui
- Updated
BaseInputTemplateandSelectWidgetto removeformContextfrom the props - BREAKING CHANGE: Updated
FieldTemplate,ObjectFieldTemplateandWrapIfAdditionalTemplateto rename the oldadditionalPropertiesinterface props to the new ones - Updated
BaseInputTemplate,CheckboxesWidget,CheckboxWidget,RadioWidget,SelectWidget, andTextareaWidgetto usehtmlNamefor the HTMLnameattribute - BREAKING CHANGE: Updated
ArrayFieldTemplateto remove theArrayFieldItemTemplaterender in favor of simply usingitemsdue toArrayFieldchanges
@rjsf/primereact
- Updated
SelectWidgetto removeformContextfrom the props - BREAKING CHANGE: Updated
FieldTemplate,ObjectFieldTemplateandWrapIfAdditionalTemplateto rename the oldadditionalPropertiesinterface props to the new ones - Updated
BaseInputTemplate,CheckboxesWidget,CheckboxWidget,RadioWidget,SelectWidget, andTextareaWidgetto usehtmlNamefor the HTMLnameattribute - BREAKING CHANGE: Updated
ArrayFieldTemplateto remove theArrayFieldItemTemplaterender in favor of simply usingitemsdue toArrayFieldchanges
@rjsf/react-bootstrap
- BREAKING CHANGE: Updated
FieldTemplate,ObjectFieldTemplateandWrapIfAdditionalTemplateto rename the oldadditionalPropertiesinterface props to the new ones - Updated
BaseInputTemplate,CheckboxesWidget,CheckboxWidget,RadioWidget,SelectWidget, andTextareaWidgetto usehtmlNamefor the HTMLnameattribute - BREAKING CHANGE: Updated
ArrayFieldTemplateto remove theArrayFieldItemTemplaterender in favor of simply usingitemsdue toArrayFieldchanges
@rjsf/semantic-ui
- BREAKING CHANGE: Updated
FieldTemplate,ObjectFieldTemplateandWrapIfAdditionalTemplateto rename the oldadditionalPropertiesinterface props to the new ones - Updated
BaseInputTemplate,CheckboxesWidget,CheckboxWidget,RadioWidget,SelectWidget, andTextareaWidgetto usehtmlNamefor the HTMLnameattribute - BREAKING CHANGE: Updated
ArrayFieldTemplateto remove theArrayFieldItemTemplaterender in favor of simply usingitemsdue toArrayFieldchanges - Updated
ArrayFieldItemTemplateto refactor the getting of thesemanticPropsfromArrayFieldTemplate, using the newparentUiSchemaprop to maintain the feature
@rjsf/shadcn
- Updated the test mocks to remove
formContextfor the widget mock and addedglobalFormOptionsin the registry mock - BREAKING CHANGE: Updated
FieldTemplate,ObjectFieldTemplateandWrapIfAdditionalTemplateto rename the oldadditionalPropertiesinterface props to the new ones - Updated
BaseInputTemplate,CheckboxesWidget,CheckboxWidget,SelectWidget, andTextareaWidgetto usehtmlNamefor the HTMLnameattribute (Note:RadioWidgetdoes not supporthtmlNamedue to Radix UI RadioGroup limitations) - BREAKING CHANGE: Updated
ArrayFieldTemplateto remove theArrayFieldItemTemplaterender in favor of simply usingitemsdue toArrayFieldchanges
@rjsf/utils
- BREAKING CHANGE: Updated
FieldTemplatePropsandWrapIfAdditionalTemplatePropsto replace theonKeyChange()andonDropPropertyClick()callback-generator props with theonKeyRename(),onKeyRenameBlur()andonRemoveProperty()callback props - BREAKING CHANGE: Updated
ObjectFieldTemplatePropsto replace theonAddClick()callback-generator prop with theonAddProperty()callback prop - Added new hook
useDeepCompareMemo()and its associated tests - Added
NameGeneratorFunctiontype and two built-in name generators:bracketNameGeneratoranddotNotationNameGenerator - Updated
GlobalFormOptionstype to include optionalnameGeneratorfield - Updated
toFieldPathId()function to support name generation via thenameGeneratoroption inGlobalFormOptions - Added
htmlNamefield toWidgetPropsinterface to provide the generated HTMLnameattribute to widgets - BREAKING CHANGE: Renamed
ArrayFieldItemTemplateTypetoArrayFieldItemTemplatePropsand updated it to changekey: stringtoitemKey: stringto avoid a name collision with React - BREAKING CHANGE: Updated
ArrayFieldTemplatePropsto change the type of theitemsprop fromArrayFieldItemTemplateType<T, S, F>[]toReactElement[] - BREAKING CHANGE: Updated
ArrayFieldItemButtonsTemplateTypeto replace theonAddIndexClick(),onCopyIndexClick(),onDropIndexClick()andonReorderClick()callback-generator props with theonAddItem(),onCopyItem(),onMoveUpItem(),onMoveDownItem()andonRemoveItem()callback props - BREAKING CHANGE: Updated
ArrayFieldItemTemplateTypeto changekey: stringtoitemKey: stringto avoid a name coll...
6.0.0-beta.21
New feature added
- Optional Data Controls - see docs
@rjsf/antd
- Updated
ArrayFieldTemplate,ObjectFieldTemplate,TitleFieldto add support for the newoptionalDataControlfeature- Added the new
OptionalDataControlTemplateto the theme, adding it to thetemplateslist
- Added the new
- Updated the
ButtonTemplatesclasses to fix up the props inAntdIconButtonPropsand theIconButtons associated with them to better support theOptionalDataControlTemplate
@rjsf/chakra-ui
- Updated
ArrayFieldTemplate,ObjectFieldTemplate,TitleFieldto add support for the newoptionalDataControlfeature- Added the new
OptionalDataControlTemplateto the theme, adding it to thetemplateslist
- Added the new
- Updated the
ButtonTemplatesclasses to addChakraIconButtonPropsand theIconButtons associated with them to better support theOptionalDataControlTemplate
@rjsf/core
- Added
initialDefaultsGeneratedflag to state, which indicates whether the initial generation of defaults has been completed - Added
ObjectFieldtests for additionalProperties with defaults - Added a new
OptionalDataControlsFieldto thefieldsthat renders either undefined (when there is data for a readonly/disabled field) or gets theOptionalDataControlsTemplateand renders thelabeland potentially anonAddClickoronRemoveClickfunction - Updated
ArrayFieldandObjectFieldto check whether itshouldRenderOptionalData()and if true, callsObjectDataControlsFieldand passes the result to its associated render template asoptionalDataControl - Updated
ArrayFieldTemplate,ObjectFieldTemplate,TitleFieldto add support for the newoptionalDataControlfeature- Added the new
OptionalDataControlTemplateto the theme, adding it to thetemplateslist
- Added the new
- Updated
Formas follows to fix #4796- Refactored the
liveValidate()andmergeErrors()functions out ofgetStateFromProp()andprocessPendingChange() - Added new, optional
customErrors?: ErrorSchemaBuilder<T>to theFormState, updating theIChangeEventinterface to remove all of the private variables - Reworked the
newErrorSchemahandling inprocessPendingChange()to simplify the handling sincenewErrorSchemais now path-specific, addingnewErrorSchematocustomErrorswhen they don't match an existing validator-based validation- This rework resulted in any custom errors passed from custom widgets/fields will now be remembered during the validation stage
- Removed the now unused
getPreviousCustomValidateErrors()andfilterErrorsBasedOnSchema()methods
- Refactored the
- Updated
LayoutGridFieldto simplifyonFieldChange()to just return the givenerrorSchemanow that it is path-specific, fixing #4796 - Updated
NullFieldto passfieldPathId.pathfor theonChange()instead of[name]
@rjsf/daisyui
- Updated
ArrayFieldTemplate,ArrayFieldTitleTemplate,ObjectFieldTemplate,TitleFieldto add support for the newoptionalDataControlfeature- Added the new
OptionalDataControlTemplateto the theme, adding it to thetemplateslist
- Added the new
- Updated the
ButtonTemplatesclasses to better support theOptionalDataControlTemplate
@rjsf/fluentui-rc
- Updated
ArrayFieldTemplate,ObjectFieldTemplate,TitleFieldto add support for the newoptionalDataControlfeature- Added the new
OptionalDataControlTemplateto the theme, adding it to thetemplateslist
- Added the new
- Updated the
ButtonTemplatesclasses to addFluentIconButtonPropsand theIconButtons associated with them to better support theOptionalDataControlTemplate
@rjsf/mantine
- Updated
ArrayFieldTemplate,ObjectFieldTemplate,TitleFieldto add support for the newoptionalDataControlfeature- Added the new
OptionalDataControlTemplateto the theme, adding it to thetemplateslist
- Added the new
@rjsf/mui
- Updated
ArrayFieldTemplate,ObjectFieldTemplate,TitleFieldto add support for the newoptionalDataControlfeature- Added the new
OptionalDataControlTemplateto the theme, adding it to thetemplateslist
- Added the new
@rjsf/primereact
- Updated
ArrayFieldTemplate,ObjectFieldTemplate,TitleFieldto add support for the newoptionalDataControlfeature- Added the new
OptionalDataControlTemplateto the theme, adding it to thetemplateslist
- Added the new
- Updated the
ButtonTemplatesclasses to addPrimeIconButtonPropsand theIconButtons associated with them to better support theOptionalDataControlTemplate
@rjsf/react-bootstrap
- Updated
ArrayFieldTemplate,ObjectFieldTemplate,TitleFieldto add support for the newoptionalDataControlfeature- Added the new
OptionalDataControlTemplateto the theme, adding it to thetemplateslist
- Added the new
- Updated the
ButtonTemplatesclasses to addBootstrapIconButtonPropsand theIconButtons associated with them to better support theOptionalDataControlTemplate
@rjsf/semantic-ui
- Updated
ArrayFieldTemplate,ObjectFieldTemplate,TitleFieldto add support for the newoptionalDataControlfeature- Added the new
OptionalDataControlTemplateto the theme, adding it to thetemplateslist
- Added the new
- Updated the
ButtonTemplatesclasses to addSemanticIconButtonPropsand theIconButtons associated with them to better support theOptionalDataControlTemplate
@rjsf/shadcn
- Updated
ArrayFieldTemplate,ObjectFieldTemplate,TitleFieldto add support for the newoptionalDataControlfeature- Added the new
OptionalDataControlTemplateto the theme, adding it to thetemplateslist
- Added the new
- Updated the
ButtonTemplatesclasses to addShadIconButtonPropsand theIconButtons associated with them to better support theOptionalDataControlTemplate
@rjsf/utils
- Updated
getDefaultFormStateto add a newinitialDefaultsGeneratedprop flag, along with type definitions, fixing uneditable & permanent defaults with additional properties 3759 - Updated
createSchemaUtilsdefinition to reflect addition ofinitialDefaultsGenerated - Updated existing tests where
getDefaultFormStateis used to reflect addition ofinitialDefaultsGenerated - Updated
types.tsto support the newOptional Data Controlsfeature as follows:- Added new
OptionalDataControlsTemplatePropsand refactored the common props fromArrayFieldTemplatePropsandObjectFieldTemplatePropsinto a new super type,ContainerFieldTemplateProps - Added new
optionalDataControl?: ReactNodeto theArrayFieldTitleProps,TitleFieldPropsandContainerFieldTemplateProps - Updated
GlobalFormOptionsto add newenableOptionalDataFieldForType?: ('object' | 'array')[]prop - Updated
SchemaUtilsType'sretrieveSchema()function to add an additional, propertyresolveAnyOfOrOneOfRefs?: boolean
- Added new
- Updated the
Templatesinterface to add a new required templateOptionalDataControlsTemplate: ComponentType<OptionalDataControlsTemplateProps<T, S, F>> - Updated
retrieveSchema()to add an additional propertyresolveAnyOfOrOneOfRefs?: booleanwhich causesresolveAllSchemas()to resolve$refs inside of the options ofanyOf/oneOfschemas - Updated
getDefaultFormStateto fix an issue where optional array props had their default set to an empty array when they shouldn't be - Updated the
TranslatableStringenum to add three new strings in support of the new feature:OptionalObjectAdd,OptionalObjectRemoveandOptionalObjectEmptyMsg - Added four new utility functions:
isFormDataAvailable(),isRootSchema(),optionalControlsId(), andshouldRenderOptionalField() - Updated
validationDataMerge()to add an additional, optional parameterpreventDuplicates = false, that causes themergeObjects()call to receivepreventDuplicatesinstead oftrue
Dev / docs / playground
- Updated docs for
getDefaultFormStateto reflect addition of theinitialDefaultsGeneratedprop - Updated
utility-function.medocs to add documentation for the new functions and to update thevalidationDataMerge()function's new parameter- Also updated docs for
retrieveSchemaandSchemaUtilsTypefor the new prop
- Also updated docs for
- Updated
uiSchema.mdto add documentation for the newenableOptionalDataFieldForTypeprop - Updated the playground to add a new
Optional Data Controlsexample - Updated the snapshot and jest tests for
Formto test the newOptional Data Controlsfeature - Updated
custom-widgets-fields.mdto change the documentation around passing errors viaonChange()to reflect the new reality - Updated the
v6x upgrade guide.mdto document the new feature, utility functions and changes to existing method parameters
6.0.0-beta.20
Significant Breaking Changes in this release
In order to support future features and to improve performance, IdSchema was replaced with FieldPathId. See below
@rjsf/antd
- BREAKING CHANGES - Updated all of the templates and widgets to change
idSchematofieldPathIdor to remove the<T>off of the idGenerator functions
@rjsf/chakra-ui
- BREAKING CHANGES - Updated all of the templates and widgets to change
idSchematofieldPathIdor to remove the<T>off of the idGenerator functions
@rjsf/core
- BREAKING CHANGES
- Updated all of the fields, templates and widgets to change
idSchematofieldPathIdor to remove the<T>off of the idGenerator functions ObjectFieldandArrayFieldto usetoFieldPathIdinstead oftoIdSchema()to generate thefieldPathIds of all its children- Updated the
onChangehandling of fields to makepathrequired and either pass it straight through, or use thefieldPathId.pathinstead of using an empty array or appending path information - Updated
Formto usetoFieldPathId()to generatefieldPathIdinstead ofidSchema, always providing theidPrefixandidSeparatorin theglobalFormOptionsand make thepath: FieldPathListrequired - Updated
LayoutGridFieldto remove theIdSchemarelated code in favor ofFieldPathIdcode
- Updated all of the fields, templates and widgets to change
- Also exported the
getTestRegistry()function from the mainindex.tsto assist developers in creatingregistryobject for tests - Updated all of the test to deal with the
idSchema->fieldPathIdchanges
@rjsf/daisyui
- BREAKING CHANGES - Updated all of the templates and widgets to change
idSchematofieldPathIdor to remove the<T>off of the idGenerator functions - Also fixed the
FieldTemplateto extract thedescriptionelement so that it was not spread onto thediv, fixing the snapshots
@rjsf/fluent-ui
- BREAKING CHANGES - Updated all of the templates and widgets to change
idSchematofieldPathIdor to remove the<T>off of the idGenerator functions
@rjsf/mantine
- BREAKING CHANGES - Updated all of the templates and widgets to change
idSchematofieldPathIdor to remove the<T>off of the idGenerator functions
@rjsf/mui
- BREAKING CHANGES - Updated all of the templates and widgets to change
idSchematofieldPathIdor to remove the<T>off of the idGenerator functions
@rjsf/primereact
- BREAKING CHANGES - Updated all of the templates and widgets to change
idSchematofieldPathIdor to remove the<T>off of the idGenerator functions
@rjsf/react-bootstrap
- BREAKING CHANGES - Updated all of the templates and widgets to change
idSchematofieldPathIdor to remove the<T>off of the idGenerator functions
@rjsf/semantic-ui
- BREAKING CHANGES - Updated all of the templates and widgets to change
idSchematofieldPathIdor to remove the<T>off of the idGenerator functions
@rjsf/shadcn
- BREAKING CHANGES - Updated all of the templates and widgets to change
idSchematofieldPathIdor to remove the<T>off of the idGenerator functions
@rjsf/utils
- Added new
FieldPathListandFieldPathIdtypes andDEFAULT_ID_PREFIXandDEFAULT_ID_SEPARATORtoconstants.ts - Added the new
toFieldPathId()function to generateFieldPathIds, exporting it from the library - Deprecated the
ui:rootFieldIdin theUiSchemasinceidPrefixdoes the same exact thing - BREAKING CHANGES
- Removed the
IdSchematype, replacingidSchema: IdSchema<T>in all types withfieldPathId: FieldPathId - Updated the
idGeneratorsto replaceid: IdSchema<T> | stringwithid: FieldPathId | stringremoving the need for the<T = any>generic on the functions - Removed the
toIdSchema()function in theschemadirectory - Updated the
FieldPropstype'sonChange()callback to make thepath: FieldPathListparameter be required instead of optional - Updated the
SchemaUtilsTypeandcreateSchemaUtils()to remove thetoIdSchema()function
- Removed the
@rjsf/validator-ajv8
- Updated the test to no longer try to test the delete
toIdSchemafunction
Dev / docs / playground
- Updated
custom-templates.md,custom-widgets-fields.mdandlayout-grid.mdto change theidSchemadocumentation tofieldPathId - Updated
uiSchema.mdto mark theui:rootFieldIdas deprecated in the documentation - Updated
utility-functions.mddeletetoIdSchema(), addtoFieldPathId()and to remove the<T>from the id generator functions - Updated
v6.x upgrade guide.mdto document all the breaking changes, new functions and deprecations made in6.0.0-beta.20
6.0.0-beta.19
@rjsf/core
- Updated
Formto fix live validation ingetStateFromProps()broken by an optimization, fixing #4782 - Updated
Formto fix error messages being displayed abnormally whencustomValidateis provided, fixing #4783 - Updated
Formto fixomitExtraDatawhen the leaf node happens to have an object value, fixing #4784
@rjsf/utils
- Updated
resolveSchema()to pass theexperimental_customMergeAllOfoptions properly toresolveReference()andresolveDependencies()called within it
6.0.0-beta.18
@rjsf/chakra-ui
- Updated
ObjectFieldTemplateto always generate the "Add" button whencanExpand()is true, fixing #4772
@rjsf/core
- Updated
Formto add theglobalFormOptionsto theregistrywhen there areGlobalFormOptionsprovided, also stopped passingidPrefixandidSeparatortoSchemaField - Updated
ArrayField,LayoutGridField,ObjectFieldandSchemaFieldto getidPrefix,idSeparatorfrom theregistry.globalFormOptions, no longer passing them onFieldProps- Updated
SchemaFieldto getexperimental_componentUpdateStrategyfrom theregistry.globalFormOptionsas well
- Updated
@rjsf/utils
- Update
getDefaultFormState()to add support fornulldefaults for["null", "object"]and["null", "array"], fixing #1581 - Added a new
GlobalFormPropsinterface which contains the following props and replaced theexperimental_componentUpdateStrategyinRegistrywithglobalFormProps?: GlobalFormPropsexperimental_componentUpdateStrategy(refactored fromRegistry) andidPrefix&idSeparator(refactored fromFieldProps)
- BREAKING CHANGE: Removed the optional
idPrefixandidSeparatorprops from theFieldPropsinterface
Dev / docs / playground
- Updated the
custom-widget-fields.mdandv6.x upgrade guide.mdto document the refactor of theidPrefixandidSeparatorrefactor
6.0.0-beta.17
@rjsf/core
- Updated
ObjectFieldto remove thenamefrom the path passed toonChange()callback inhandleAddClick()andonDropPropertyClick(), fixing #4763 - Updated
Formto restore the passing of an empty string fornameto avoid accidentally showing it as the title for the whole schema
@rjsf/shadcn
- Update
ArrayFieldItemTemplateto align buttons with the input field, fixing #4753
6.0.0-beta.16
@rjsf/antd
- Updated the
ArrayFieldTemplate,FieldTemplateandObjectFieldTemplateto getformContextfrom theregistry
@rjsf/core
- Updated
ArrayField,Form,LayoutMultiSchemaFieldandSchemaFieldto stop passingformContext
@rjsf/daisyui
- Updated
FieldTemplateto removeformContextas it is never used
@rjsf/semantic-ui
- Updated the
ArrayFieldTemplate,BaseInputTemplate,CheckboxWidget,FieldTemplate,RadioWidget,RangeSelect,SelectWidget,TextareaWidgetandObjectFieldTemplateto getformContextfrom theregistry
@rjsf/utils
- BREAKING CHANGE: Removed
formContextfrom the following interfaces because it is available onregistry:ErrorListProps,FieldProps,FieldTemplateProps,ArrayFieldTemplatePropsandWidgetProps
- Update
mergeDefaultsWithFormDatato properly handle overridingundefinedformData with anulldefault value, fixing #4734 - Fixed object reference sharing in arrays with minItems when using oneOf schemas, fixing #4756
- Updated
getWigets()to output theschemawhen throwing errors, fixing #4731
Dev / docs / playground
- Updated the documentation to remove
formContextfrom the interface documentation, adding a BREAKING CHANGE notification in thev6.x upgrade guide - POTENTIAL BREAKING CHANGE: Updated the
cjsbuild for all packages to generate.cjsfiles instead of.jsfiles and updating theexportsto make therequirestatements use.cjs, fixing [#4754]#4754) - Updated
v6.x upgrade guide.mdto note the change to thecjsbuilds
6.0.0-beta.15
@rjsf/chakra-ui
- Updated
package.jsonfor to makelucide-reacta dependency rather than a devDependency, fixing #4739
@rjsf/core
- Updated
ArrayFieldonSelectChangeto not passnamein thepathsince theObjectFieldwill automatically add it #4733 - Updated
Formto optimize the need for live validation in an attempt to improve performance, potentially fixing #3616
@rjsf/semantic-ui
- Updated
ArrayFieldto stop usingnanoidand instead uselodash/uniqueIdto fix #4762
@rjsf/shadcn
- Update
README.mdwith picture of the theme! - Allow passing
classNameprops toAddButton,BaseInputTemplate,CheckboxWidget,CheckboxesWidget,RadioWidget,SelectWidget,SubmitButton,TextareaWidgetfor extra Tailwind CSS customization throughui:className
@rjsf/utils
- Updated
getTestIdsto stop usingnanoidand instead uselodash/uniqueIdto fix #4762
Dev / docs / playground
- Removed
nanoidfrom the build system andjest.config.jsfiles
5.24.13
6.0.0-beta.14
- A BREAKING CHANGE to the FieldProps.onChange callback function was made that COULD affect custom fields, depending on the implementation.
@rjsf/core
- Added support for dynamic UI schema in array fields - the
itemsproperty inuiSchemacan now accept a function that returns a UI schema based on the array item's data, index, and form context (#4706) - Fixed checkbox widget to use current value instead of event target in onFocus/onBlur handlers, fixing #4704
- Updated all of the
XxxxFieldcomponents andFormto handle the newpathparameter inFieldProps.onChange, makingFormqueue up changes so that they are all processed and no data is lost, fixing #3367 - Updated a bug in
AltDateWidgetrelated to theclearbutton not working after the fix for #3367 - Fixed the missing hook dependencies for the
CheckboxesWidgetso that they work properly
@rjsf/chakra-ui
- Fixed checkbox widget to use current value instead of event target in onFocus/onBlur handlers, fixing #4704
@rjsf/daisyui
- Fixed checkbox widget to use current value instead of event target in onFocus/onBlur handlers, fixing #4704
- Fixed additional properties rendering by properly connecting the
FieldTemplateandWrapIfAdditionalTemplate, fixing 4707 - Fixed the missing hook dependencies in the
DateTimeWidgetandDateWidgetso that they work properly
@rjsf/fluentui-rc
- Fixed checkbox widget to use current value instead of event target in onFocus/onBlur handlers, fixing #4704
@rjsf/mantine
- Added new theme!
@rjsf/mui
- Fixed checkbox widget to use current value instead of event target in onFocus/onBlur handlers, fixing #4704
@rjsf/primereact
- Fixed checkbox widget to use current value instead of event target in onFocus/onBlur handlers, fixing #4704
@rjsf/semantic-ui
- Fixed checkbox widget to use current value instead of event target in onFocus/onBlur handlers, fixing #4704
@rjsf/shadcn
- Bump
@shadcn/uicomponents to use latest version from https://ui.shadcn.com/ - Bump
tailwindcssto using v4 and css compiling process to use latest@tailwindcss/cli - Remove
postcssdue to new Oxide compiler of tailwindcss - Update playground themes with
default,Amethyst Haze,Caffeine,Claude,Neo Brutalism,Pastel Dreams,Soft Pop,Twitter,Vercel - Radio widget labels are now accessible and can be clicked on to select the associated option.
@rjsf/utils
- Updated
UiSchematype to support dynamic array item UI schemas - theitemsproperty can now be either aUiSchemaobject or a function that returns aUiSchema(#4706) - Added
titleproperty toRJSFValidationErrorPR - BREAKING CHANGE: Updated the
FieldPropsinterface'sonChangehandler to inject a new optionalpathbefore theErrorSchemaparameter as part of the fix for #3367
@rjsf/validator-ajv8
- Updated
transformRJSFValidationErrors()to include thetitleproperty of a field with error fixing #4504 with PR - Updated
AJVValidatorto handle the attempted compile of a bad schema, fixing #4357
Dev / docs / playground
- Added comprehensive documentation for dynamic UI schema feature with TypeScript examples #4706
- Updated array documentation to reference the new dynamic UI schema capabilities #4706
- Updated nearly all of the libraries in the
package.jsonfiles to the latest non-breaking versions - Fixed the broken
Custom Arraysample - Improved the
Any Of with Custom Fieldsample so that it renders using the appropriate theme components - Updated the
custom-widgets-fields.mdandv6.x upgrade guide.mdto document the BREAKING CHANGE to theFieldProps.onChangebehavior - Updated the playground to properly output the
validationErrorwhen runningRaw Validate