onlyAvailableItems is not a property of ValidateOptions
LoLei opened this issue · comments
Describe the bug
A clear and concise description of what the bug is.
When using https://formio.github.io/formio.js/app/builder, you can enable onlyAvailableItems
on a select
component like this:
"components": [
{
"label": "Select",
"widget": "choicesjs",
"tableView": true,
"validate": {
"onlyAvailableItems": true // <--- Here
},
"key": "select",
"type": "select",
"input": true
}
]
However, when using the JS (TS) library, I cannot do the same, e.g.:
const form: FormioForm = {
components: [
{
label: 'Select',
widget: 'choicesjs',
tableView: true,
validate: {
onlyAvailableItems: true // <--- Typescript error see below
},
key: 'select',
type: 'select',
input: true
}
]
}
Object literal may only specify known properties, and 'onlyAvailableItems' does not exist in type 'ValidateOptions'.ts(2353)
schema.d.ts(82, 3): The expected type comes from property 'validate' which is declared here on type 'ExtendedComponentSchema'
If I view the definition of ValidateOptions
, I can see that onlyAvailableItems
does not exist.
formio.js/types/components/schema.d.ts
Line 170 in faf7220
Version/Branch
What release version or branch are you experiencing the behavior
4.19.x
To Reproduce
Steps to reproduce the behavior:
- Create Typescript variable using
FormioForm
as a type. - Add component based on the typescript code posted above.
- See error
Expected behavior
A clear and concise description of what you expected to happen.
The error should not occur and the property should exist on the interface, as would be expected due to it being accepted in the JSON.
Additional context
If I'm doing something wrong, or my understanding is incorrect, please let me know, of course.