eclipsesource / eclipsesource/jsonforms

Generating UI schemas for complex JSON schemas

Open
#2,348 1 comment 0 reactions 0 assignees View on GitHub
core enhancement
Dominant language
TypeScript
Stars
2.7k
Forks
424
Avg merge
17d 8h
Merged PRs (30d)
1

Description

### Is your feature request related to a problem? Please describe.

With a large JSON schema, or a schema that has many `$ref` tags, calling [generateDefaultUISchema](https://jsonforms.io/api/core/functions/generatedefaultuischema) does not result in the creation of an all-inclusive UI schema because the uischema generator only generates “shallow” UI schemas. This means a UI schema would need to be created from scratch for every control, a potentially cumbersome and involved task. [](url)

### Describe the solution you'd like

Two suggestions:

1. Revise `generateDefaultUISchema` to generate a complete UI schema instead of a shallow one.
2. Enable the ability to create a partial UI schema that would allow modification to specific control(s) without having to specify _all_ JSON schema objects in the UI schema. In other words, display all objects by default (similar to not specifying a UI schema at all) but alter the specific ones called out in the UI schema. As it works now, if they aren't called out in the UI schema they aren't displayed.

### Describe alternatives you've considered

I haven't found any alternatives other than to manually create a large UI schema from scratch. Even then it's unclear whether that would work due to the shallow process previously described.

### Framework

Core

### RendererSet

Material

### Additional context

The main goal was to alter the display of a subset of controls in my UI which are referenced by `$ref` tags. Being able to alter a specific subset of controls without having to add all controls to a UI schema strikes me as a common use-case.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.