react-jsonschema-form icon indicating copy to clipboard operation
react-jsonschema-form copied to clipboard

Initial values don't set for array -> items -> oneOf -> oneOf schemaStructure

Open v1valasvegan opened this issue 2 years ago • 4 comments

Prerequisites

What theme are you using?

core

Version

4.1.1

Current Behavior

When form is loaded it's empty, though there is formData provided. https://rjsf-team.github.io/react-jsonschema-form/#eyJmb3JtRGF0YSI6W3siaXBzdW0iOnsibmlnaHQiOiJuaWNodCJ9fV0sInNjaGVtYSI6eyJ0eXBlIjoiYXJyYXkiLCJpdGVtcyI6eyJvbmVPZiI6W3sicHJvcGVydGllcyI6eyJsb3JlbSI6eyJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJsb3JlbSJdfSx7InByb3BlcnRpZXMiOnsiaXBzdW0iOnsib25lT2YiOlt7InByb3BlcnRpZXMiOnsiZGF5Ijp7InR5cGUiOiJzdHJpbmcifX19LHsicHJvcGVydGllcyI6eyJuaWdodCI6eyJ0eXBlIjoic3RyaW5nIn19fV19fSwicmVxdWlyZWQiOlsiaXBzdW0iXX1dfX0sInVpU2NoZW1hIjp7fSwidGhlbWUiOiJkZWZhdWx0IiwibGl2ZVNldHRpbmdzIjp7InZhbGlkYXRlIjpmYWxzZSwiZGlzYWJsZSI6ZmFsc2UsInJlYWRvbmx5IjpmYWxzZSwib21pdEV4dHJhRGF0YSI6ZmFsc2UsImxpdmVPbWl0IjpmYWxzZX19

Expected Behavior

Form values should match formData Here's a example with initial data from docs, form is filled with initial formData: https://rjsf-team.github.io/react-jsonschema-form/#eyJmb3JtRGF0YSI6eyJmaXJzdE5hbWUiOiJDaHVja2xlIiwibGFzdE5hbWUiOiJOb3JyaWxzayIsImFnZSI6NzUsImJpbyI6IlJvdW5kaG91c2Uga2lja2luZyBhc3NlcyBzaW5jZSAxOTQwIiwicGFzc3dvcmQiOiJub25lZWQifSwic2NoZW1hIjp7InRpdGxlIjoiQSByZWdpc3RyYXRpb24gZm9ybSIsImRlc2NyaXB0aW9uIjoiQSBzaW1wbGUgZm9ybSBleGFtcGxlLiIsInR5cGUiOiJvYmplY3QiLCJyZXF1aXJlZCI6WyJmaXJzdE5hbWUiLCJsYXN0TmFtZSJdLCJwcm9wZXJ0aWVzIjp7ImZpcnN0TmFtZSI6eyJ0eXBlIjoic3RyaW5nIiwidGl0bGUiOiJGaXJzdCBuYW1lIiwiZGVmYXVsdCI6IkNodWNrIn0sImxhc3ROYW1lIjp7InR5cGUiOiJzdHJpbmciLCJ0aXRsZSI6Ikxhc3QgbmFtZSJ9LCJ0ZWxlcGhvbmUiOnsidHlwZSI6InN0cmluZyIsInRpdGxlIjoiVGVsZXBob25lIiwibWluTGVuZ3RoIjoxMH19fSwidWlTY2hlbWEiOnsiZmlyc3ROYW1lIjp7InVpOmF1dG9mb2N1cyI6dHJ1ZSwidWk6ZW1wdHlWYWx1ZSI6IiIsInVpOmF1dG9jb21wbGV0ZSI6ImZhbWlseS1uYW1lIn0sImxhc3ROYW1lIjp7InVpOmVtcHR5VmFsdWUiOiIiLCJ1aTphdXRvY29tcGxldGUiOiJnaXZlbi1uYW1lIn0sImFnZSI6eyJ1aTp3aWRnZXQiOiJ1cGRvd24iLCJ1aTp0aXRsZSI6IkFnZSBvZiBwZXJzb24iLCJ1aTpkZXNjcmlwdGlvbiI6IihlYXJ0aGlhbiB5ZWFyKSJ9LCJiaW8iOnsidWk6d2lkZ2V0IjoidGV4dGFyZWEifSwicGFzc3dvcmQiOnsidWk6d2lkZ2V0IjoicGFzc3dvcmQiLCJ1aTpoZWxwIjoiSGludDogTWFrZSBpdCBzdHJvbmchIn0sImRhdGUiOnsidWk6d2lkZ2V0IjoiYWx0LWRhdGV0aW1lIn0sInRlbGVwaG9uZSI6eyJ1aTpvcHRpb25zIjp7ImlucHV0VHlwZSI6InRlbCJ9fX0sInRoZW1lIjoiZGVmYXVsdCIsImxpdmVTZXR0aW5ncyI6eyJ2YWxpZGF0ZSI6ZmFsc2UsImRpc2FibGUiOmZhbHNlLCJyZWFkb25seSI6ZmFsc2UsIm9taXRFeHRyYURhdGEiOmZhbHNlLCJsaXZlT21pdCI6ZmFsc2V9fQ==

Steps To Reproduce

When updating formData (typing smth in input or updating manually in right bottom window) its shape doesn't change and form fills with corresponding values.

Environment

No response

Anything else?

Occurs when the schemaStructure is array > items > oneOf > oneOf

v1valasvegan avatar Jul 20 '22 12:07 v1valasvegan

@v1valasvegan this looks like its fixed in the latest v5 beta? If I click your link above and select option 2. its filled with the data

jacqueswho avatar Sep 01 '22 12:09 jacqueswho

@v1valasvegan this looks like its fixed in the latest v5 beta? If I click your link above and select option 2. its filled with the data

It should be selected when the page is loaded. If you visit second link you'll notice that formData matches data you see it form inputs.

Screenshot 2022-09-02 at 11 48 56

v1valasvegan avatar Sep 02 '22 08:09 v1valasvegan

@epicfaace im not sure about the second comment. Does oneOf automatically select the option based on initial formData?

jacqueswho avatar Sep 02 '22 09:09 jacqueswho

Does oneOf automatically select the option based on initial formData?

oneOf should do so.

epicfaace avatar Sep 02 '22 18:09 epicfaace

This is definitely a bug with the oneOf selection. I have a fix in my local build that I think will solve this. I guess it is time to port it

heath-freenome avatar Dec 09 '22 17:12 heath-freenome