json-schema-form
json-schema-form copied to clipboard
Allow choicesUrl to include parts of the current JSON object
In forms, the choices of one input field often depend on another field. For instance, choosing a country (e.g. US) would restrict the state choices to AL, AR, AK, ....
We could achieve this in two ways / syntaxes:
-
JavaScript template literal (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals): choicesUrl = /get/states/$ {country}. This is more readable but raises the question what kind of expressions are allowed. For instance, Can we use a more complex expression like $ {address[1].state}?
-
Allowing choicesUrl to be computed using a JSONata expression, similar to this "compute" example: https://dashjoin.github.io/#/example/compute. Less readable, since the expression requires JSONata string concat and escaped quotes. We have the full flexibility though.