6.0.0-beta.1
Pre-release
Pre-release
·
79 commits
to main
since this release
@rjsf/antd
- BREAKING CHANGE: Refactored
ArrayFieldItemTemplate
to use the newArrayFieldItemButtonsTemplate
- Updated the
ArrayFieldTemplate
,ObjectFieldTemplate
, andWrapIfAdditionalTemplate
to a unique id using thebuttonId()
function and adding consistent marker classes - Implemented the
GridTemplate
component, adding it to thetemplates
for the theme - BREAKING CHANGE: Removed support for version 4 of
antd
- Updated
ArrayFieldItemTemplate
to replaceButton.Group
withSpace.Compact
sinceButton.Group
is deprecated inantd
version 5 - Upgraded to
@ant-design/icon@5
- BREAKING CHANGE: Removed the addition of
Bootstrap 3
classes from theSchemaField
and addedrjsf-
prefix to marker classes, thereby changing themeFieldTemplate
className prop output and associated snapshots
@rjsf/chakra-ui
- BREAKING CHANGE: upgrade from v2 to v3
- BREAKING CHANGE: remove deprecated
@chakra-ui/icon
in favor oflucide-react
- BREAKING CHANGE: Refactored
ArrayFieldItemTemplate
to use the newArrayFieldItemButtonsTemplate
- Updated the
ArrayFieldTemplate
,ObjectFieldTemplate
, andWrapIfAdditionalTemplate
to a unique id using thebuttonId()
function and adding consistent marker classes - Implemented the
GridTemplate
component, adding it to thetemplates
for the theme - BREAKING CHANGE: Removed the addition of
Bootstrap 3
classes from theSchemaField
and addedrjsf-
prefix to marker classes, thereby changing themeFieldTemplate
className prop output and associated snapshots
@rjsf/core
- BREAKING CHANGE: Updated
ArrayField
to provide thebuttonsProps
to theArrayFieldItemTemplateType
- Added
ArrayFieldItemButtonsTemplate
component as a refactor of all the common buttons code from all theArrayFieldItemTemplate
implementations, adding a unique id using thebuttonId()
function - Refactored
ArrayFieldItemTemplate
to use the newArrayFieldItemButtonsTemplate
- Updated the
ArrayFieldTemplate
,ObjectFieldTemplate
, andWrapIfAdditionalTemplate
to a unique id using thebuttonId()
function and adding consistent marker classes - Implemented the
GridTemplate
component, adding it to thetemplates
for the theme - Implemented the new
LayoutGridField
,LayoutMultiSchemaField
andLayoutHeaderField
fields, adding them to thefields
list - BREAKING CHANGE: Removed support for the deprecated
schema.enumNames
anduiSchema.classNames
as well as the deprecatedacceptcharset
prop onForm
- BREAKING CHANGE: Moved the addition of
Bootstrap 3
classes from theSchemaField
to theWrapIfAdditionalTemplate
, thereby affecting all the other themes, fixing #2280 - BREAKING CHANGE: Added
rjsf-
prefix onto the following marker classes used in the fields and templates:field
,field-<schema.type>
,field-error
,field-hidden
,field-array
,field-array-of-<schema.type>
,field-array-fixed-items
,array-item
,config-error
,array-item-add
,array-item-copy
,array-item-move-down
,array-item-move-up
,array-item-remove
,object-property-expand
- Added support for
patternProperties
#1944
@rjsf/daisyui
- Added new theme!
@rjsf/fluent-ui
- BREAKING CHANGE: Deleted this theme in favor of
fluentui-rc
@rjsf/fluentui-rc
- BREAKING CHANGE: Refactored
ArrayFieldItemTemplate
to use the newArrayFieldItemButtonsTemplate
- Updated the
ArrayFieldTemplate
,ObjectFieldTemplate
, andWrapIfAdditionalTemplate
to a unique id using thebuttonId()
function and adding consistent marker classes - Implemented the
GridTemplate
component, adding it to thetemplates
for the theme - BREAKING CHANGE: Removed the addition of
Bootstrap 3
classes from theSchemaField
and addedrjsf-
prefix to marker classes, thereby changing themeFieldTemplate
className prop output and associated snapshots
@rjsf/material-ui
- BREAKING CHANGE: Deleted this theme in favor of
mui
@rjsf/mui
- BREAKING CHANGE: Refactored
ArrayFieldItemTemplate
to use the newArrayFieldItemButtonsTemplate
- Updated the
ArrayFieldTemplate
,ObjectFieldTemplate
, andWrapIfAdditionalTemplate
to a unique id using thebuttonId()
function and adding consistent marker classes - Updated the theme to use
Grid2
instead of the deprecatedGrid
- Implemented the
GridTemplate
component, adding it to thetemplates
for the theme - BREAKING CHANGE: Removed the addition of
Bootstrap 3
classes from theSchemaField
and addedrjsf-
prefix to marker classes, thereby changing themeFieldTemplate
className prop output and associated snapshots
@rjsf/semantic-ui
- BREAKING CHANGE: Refactored
ArrayFieldItemTemplate
to use the newArrayFieldItemButtonsTemplate
- Updated the
ArrayFieldTemplate
,ObjectFieldTemplate
, andWrapIfAdditionalTemplate
to a unique id using thebuttonId()
function and adding consistent marker classes - Implemented the
GridTemplate
component, adding it to thetemplates
for the theme - BREAKING CHANGE: Removed the addition of
Bootstrap 3
classes from theSchemaField
and addedrjsf-
prefix to marker classes, thereby changing themeFieldTemplate
className prop output and associated snapshots - BREAKING CHANGE: Removed support for the v1 version of
semantic-ui-react
@rjsf/shadcn
- Added new theme!
@rjsf/utils
- BREAKING CHANGE: Refactored the
ArrayFieldItemTemplateType
to extract out all the button related props toArrayFieldItemButtonsTemplateType
, addingbuttonsProps: ArrayFieldItemButtonsTemplateType
as a new prop- Also created a deprecated alias type
ArrayFieldTemplateItemType
that points toArrayFieldItemTemplateType
for backwards compatibility
- Also created a deprecated alias type
- Added new
GridTemplateProps
type - BREAKING CHANGE: Added two the following new, required props to
TemplatesType
:ArrayFieldItemButtonsTemplate: ComponentType<ArrayFieldItemButtonsTemplateType<T, S, F>>;
GridTemplate: ComponentType<GridTemplateProps>
- BREAKING CHANGE: Updated the
SchemaUtilsType
to add new validator-based functions to the interface - Added the following new non-validator utility functions:
buttonId<T>(id: IdSchema<T> | string, btn: 'add' | 'copy' | 'moveDown' | 'moveUp' | 'remove')
: used to generate consistent ids for RJSF buttonsgetTestIds(): TestIdShape
: Returns an object of test IDs that can only be used in test mode, helpful for writing unit tests for React componentshashObject(object: unknown): string
: Stringifies anobject
and returns the hash of the resulting stringhashString(string: string): string
: Hashes a string into hex formatlookupFromFormContext<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(regOrFc: Registry<T, S, F> | Registry<T, S, F>['formContext'], toLookup: string, fallback?: unknown)
: Given a React JSON Schema Form registry or formContext object, return the value associated withtoLookup
- Added the following new validator-based utility functions:
findFieldInSchema<T = undefined, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, rootSchema: S, path: string | string[], schema: S, formData?: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): FoundFieldType<S>
: Finds the field specified by thepath
within the root or recursedschema
findSelectedOptionInXxxOf<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, rootSchema: S, schema: S, fallbackField: string,xxx: 'anyOf' | 'oneOf', formData?: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): S | undefined
: Finds the option that matches the selector field in theschema
or undefined if nothing is selectedgetFromSchema<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, rootSchema: S, schema: S, path: string | string[], defaultValue: T | S, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): T | S
: Helper that acts like lodash'sget
but additionally retrieves$ref
s as needed to get the path for schemas
- BREAKING CHANGE: Removed support for the deprecated
schema.enumNames
fromgetOptionsList()
while switching the order of its generic types - BREAKING CHANGE: Removed the deprecated
getMatchingOption()
andmergeValidationData()
from the library export and theSchemaUtilsType
interface - BREAKING CHANGE: Removed the deprecated
toErrorList()
function from theValidatorType
interface - BREAKING CHANGE: Removed the deprecated
RJSF_ADDITONAL_PROPERTIES_FLAG
constant - Updated the
WrapIfAdditionalTemplateProps
to includehideError
andrawErrors
in support of movingBootstrap 3
marker classes out ofSchemaField
- Added support for
patternProperties
#1944 - Updated
getTemplate()
to allow per-field customization using string key fromRegistry
, fixing #3695. - Updated
TemplatesType
to allow for a string key to be used to reference a custom template in theRegistry
, fixing #3695 - Updated tests to cover the new
getTemplate()
functionality
@rjsf/validator-ajv6
- BREAKING CHANGE: This deprecated validator has been removed
@rjsf/validator-ajv8
- BREAKING CHANGE: Removed the implementation of the deprecated
toErrorList()
function from the validator implementations
Dev / docs / playground
- Updated the playground to Chakra UI v3
- Updated the playground to remove
fluent-ui
theme - Updated the
custom-templates.md
documentation for the changes to theArrayFieldTemplateItem
and add the two new templates - Updated the
utility-functions.md
documentation to add thebuttonId()
function - Added the
v6.x upgrade guide.md
documentation - Updated the
playground
to add aLayout Grid
example and made the selected example now be part of the shared export - Replaced Lerna with Nx, updated all lerna commands to use the Nx CLI
- BREAKING CHANGE: Updated all
peerDependencies
to change minimalReact
support to>=18
- Added documentation and playground example for
patternProperties
- Updated
advanced-customization/custom-templates
with the new feature.