formio / formio.js

JavaScript powered Forms with JSON Form Builder
https://formio.github.io/formio.js
MIT License
1.83k stars 1.04k forks source link

[>= 4.19.0] Data Grid Validation required has changed with Layout components (breaks backward compatibility) #5596

Open bobslee opened 1 month ago

bobslee commented 1 month ago

Describe the bug

The Data Grid required validation - with Input components inside Layout components - doesn't work anymore (or works differently) since version 4.19.0. I don't know if this change was intended that way, but it breaks backward compatibility.

Version/Branch

Since 4.19.0

Synopsis

Prior to version 4.19.0 (eg 4.18.2) The validation of a required Data Grid PASSES, when all inner/sub components are valid.

Since version 4.19.x The validation of a required Data Grid FAILS, when all inner/sub components are valid.

To Reproduce

Steps to reproduce the behavior:

  1. Create form
  2. Add Data Gid component with Validation required
  3. Add a Layout components into the Data Grid (Columns, Fieldset and Panel ... all have this issue).
  4. Add Textfield component into the Layout components (which is inside the Data Grid).
  5. Use form
  6. E.g. fill in the Textfield (inside the Layout component which is inside the Data Grid)
  7. Data Grid validation fails. So the submit is disabled. Also when the submit button "Disable on Form Invalid" is unchecked, the (required Data Grid) validation error is shown.
Tatsiana8 commented 1 month ago

https://github.com/formio/formio.js/assets/157614159/492dd75a-aae8-4d5a-914c-c62bdc293663

Hi @bobslee I was not able to reproduce the issue on v4.19.3 using the steps you provided. Please review the attached video with my result and correct steps if necessary.

bobslee commented 1 month ago

@Tatsiana8 Sorry for the confusion, my bad. I updated the issue title and description. The issue occurs (also in v4.19.3) with a:

Please can you test and confirm / reply? Thanks!

Tatsiana8 commented 1 month ago

@bobslee Thank you for the update! I have created a ticket for our backlog.
 For internal reference: FIO-8414

bobslee commented 1 month ago

@Tatsiana8 Thanks! So you could reproduce the issue?

Tatsiana8 commented 1 month ago

@bobslee yes.