ajv-validator / ajv-validator/ajv-errors
Property name template not working in unevaluatedProperties
- Dominant language
- TypeScript
- Stars
- 289
- Forks
- 21
- PR merge metrics
- No merged PRs in 30d
Description
The property name template {0#} works great in additionalProperties, but it does not seem to work in unevaluated properties. For example, the schema:
` "actions": {
"type": "array",
"items": {
"type": "object",
"unevaluatedProperties": {
"not": true,
"errorMessage": "Unexpected property {0#} in action object"
},
"properties": {
"_id": {
"type": "string"
},
"type": {
"enum": [
"booking",
"chat"
]
},
"className": {
"type": "string"
},
"cta": {
"type": "string"
},
"inquiryTypeId": {
"type": "string"
}
},
"required": [
"_id",
"type",
"className",
"cta"
],
"oneOf": [
{
"$ref": "#/$defs/chatAction"
},
{
"$ref": "#/$defs/bookingAction"
}
]
}
}
`
Yields an error like:
` {
"instancePath": "/0/guide/actions/1/conversionCode",
"schemaPath": "#/properties/actions/items/unevaluatedProperties/errorMessage",
"keyword": "errorMessage",
"params": {
"errors": [
{
"instancePath": "/0/guide/actions/1/conversionCode",
"schemaPath": "#/properties/actions/items/unevaluatedProperties/not",
"keyword": "not",
"params": {},
"message": "must NOT be valid",
"emUsed": true
}
]
},
"message": "Unexpected property {0#} in action object"
}`
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.