aboutsummaryrefslogtreecommitdiffstats
path: root/util
diff options
context:
space:
mode:
Diffstat (limited to 'util')
-rw-r--r--util/jsonschema.lua13
1 files changed, 12 insertions, 1 deletions
diff --git a/util/jsonschema.lua b/util/jsonschema.lua
index 4ace2d2d..97068c5c 100644
--- a/util/jsonschema.lua
+++ b/util/jsonschema.lua
@@ -197,8 +197,19 @@ type_validators.table = function(schema, data)
return true
end
+ local p = 0
+ if schema.prefixItems then
+ for i, s in ipairs(schema.prefixItems) do
+ if validate(s, data[i]) then
+ p = i
+ else
+ return false
+ end
+ end
+ end
+
if schema.items then
- for i = 1, #data do
+ for i = p + 1, #data do
if not validate(schema.items, data[i]) then
return false
end