...
Note |
---|
Please note that thise is still under development, so any of the specifics are subject to change. |
Top level
At the top level, this schema (this does not include the fields at the level above for name/version) looks like the following:
...
Code Block |
---|
"configurableProperties": { "type": "object", "title": "Other properties", "description": "A collection of other properties which can be configured/made configurable", "additionalProperties": false, "properties": { "urlLink": { "$ref": "#/$defs/urlLink" }, "numberOfRows": { "$ref": "#/$defs/numberOfRows" } } } |
We use these as a place to hold other configurable fields, where we know things such as what type of data we're expecting. The urlLink will be used to display a link at the bottom of the simpleSearch widget, which the user can configure to take them to the same query in the SASQ screen of whatever app is relevant. The numberOfRows is how we specify a maximum number of rows for the fetch to return.
The way that SimpleSearch type is set up is that these can either be set to be user-configurable or not in the WidgetDefinition. For example the ERM Agreements WidgetDefinition entry for this section might look like the following:
Code Block |
---|
"configurableProperties": {
"urlLink": {
"configurable": true
},
"numberOfRows": {
"configurable": false,
"defValue": 5
}
} |
Here you can see that urlLink is set to be configurable, whereas numberOfRows is non-configruable, and has a defaultValue. This will remove that entry on the dynamic widget form. The Type schema is set up to enforce defValue if configurable is set to false. In the case where a defValue is set and configurable is set to true this will manifest as a default value in the initial form creation.