WIP: work in progress. This upgrade is not complete. Additional work is required.
This draft PR describes first attempt to upgrade rsjf to v5. The following packages are upgraded:
@rjsf/bootstrap-4 to version 5.17.0
@rjsf/core to version 5.17.0
@rjsf/utils to version 5.17.0: this is new dependency. In v5 the utils and core are split in 2 dependencies
@rjsf/validator-ajv8 to version 5.17.0: this is new dependency. New validation package is created to include ajv8 validation library.
react-bootstrap to version 2
Next steps
The upgrade contains multiple breaking changes. Further improvements are required in order to have working solution. The area requiring further development are:
Validation. New validation package is introduced (@rjsf/validator-ajv8). The validation prop is required to be passed to Form component. Old validation approach is not compatible with v5. Additional improvements of the validation process are needed. The custom validation procedures should be implemented using new approach. One of the identified custom validation procedures that cannot be implemented using old approach is moleculeFormatValidators
Custom fields and widgets. New approach for custom widgets and fields is introduced. I tried to use new template approach with the old custom widgets and fields. Unfortunately, custom components do not work properly. As far as I can assess, the function signatures for the custom widgets and fields is changed. The parameters passed to the custom widgets are not correct and the widgets are not functioning properly. The widgets which are not functioning properly are:
Table widget: the table layout is not applied
ArrayFieldTemplate: this custom component breaks the solution with number of errors. It is clear that new parameters passed to the component are changed and that logic in the component cannot be applied properly
WIP: work in progress. This upgrade is not complete. Additional work is required.
This draft PR describes first attempt to upgrade rsjf to v5. The following packages are upgraded:
Next steps
The upgrade contains multiple breaking changes. Further improvements are required in order to have working solution. The area requiring further development are:
moleculeFormatValidators