UNPKG

bemhint-deps-schema

Version:

Plugin for bemhint which checks *.deps.js to be written by specification

2,080 lines (2,079 loc) 1.85 MB
[ { "title": "root: can be a string", "obj": "b-page" }, { "title": "root: can be an object", "obj": {} }, { "title": "root: can be an empty array", "obj": [] }, { "title": "root: can be a string array", "obj": [ "input", "select" ] }, { "title": "root: can be an object array", "obj": [ {} ] }, { "title": "root: can not be a number", "obj": 1234, "error": { "keyword": "type", "params": { "type": "string,object,array" } } }, { "title": "root: can not be a number array", "obj": [ 1234 ], "error": { "keyword": "type", "params": { "type": "string,object" } } }, { "title": "root: can have `block` string field", "obj": { "block": "b-page" } }, { "title": "root: `block` field can not be a number", "obj": { "block": 1234 }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: can have `elem` string field", "obj": { "elem": "spin" } }, { "title": "root: can have `elem` array field", "obj": { "elem": [] } }, { "title": "root: can have `elem` string array field", "obj": { "elem": [ "spin", "button" ] } }, { "title": "root: `elem` field can not be a number", "obj": { "elem": 1234 }, "error": { "keyword": "type", "params": { "type": "string,array" } } }, { "title": "root: `elem` field can not be a number array", "obj": { "elem": [ 1234 ] }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: can have `mod` string field", "obj": { "mod": "color" } }, { "title": "root: `mod` field can not be a number", "obj": { "mod": 1234 }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: can have `val` string field with `mod`", "obj": { "mod": "color", "val": "black" } }, { "title": "root: can have `val` boolean `true` field", "obj": { "mod": "color", "val": true } }, { "title": "root: `val` field can not be a number", "obj": { "mod": "size", "val": 12 }, "error": { "keyword": "type", "params": { "type": "string,boolean" } } }, { "title": "root: `val` field can not be `false`", "obj": { "mod": "size", "val": false }, "error": { "keyword": "enum", "schema": [ true ] } }, { "title": "root: `val` field can not be without `mod`", "obj": { "val": "red" }, "error": { "keyword": "required", "params": { "missingProperty": "mod" } } }, { "title": "root: can have `tech` string field", "obj": { "tech": "bemhtml" } }, { "title": "root: `tech` field can not be a number", "obj": { "tech": 1234 }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: can have `include` boolean `false` field", "obj": { "include": false } }, { "title": "root: include can not be true", "obj": { "include": true }, "error": { "keyword": "enum", "schema": [ false ] } }, { "title": "root: include can not be string", "obj": { "include": "yes" }, "error": { "keyword": "enum", "schema": [ false ] } }, { "title": "root: can have `mod` and `mods` fields", "obj": { "mod": "color", "mods": {} } }, { "title": "root: can have `elem` and `elems` fields", "obj": { "elem": "header", "elems": [] } }, { "title": "root: [mods]: can be an object", "obj": { "mods": {} } }, { "title": "root: [mods]: can not be a number", "obj": { "mods": 1234 }, "error": { "keyword": "type", "params": { "type": "object" } } }, { "title": "root: [mods]: can have string value", "obj": { "mods": { "color": "red" } } }, { "title": "root: [mods]: can not have number value", "obj": { "mods": { "color": 1234 } }, "error": { "keyword": "type", "params": { "type": "boolean,string,array" } } }, { "title": "root: [mods]: can have `true` value", "obj": { "mods": { "color": true } } }, { "title": "root: [mods]: can not have `false` value", "obj": { "mods": { "color": false } }, "error": { "keyword": "enum", "schema": [ true ] } }, { "title": "root: [mods]: can have empty array value", "obj": { "mods": { "color": [] } } }, { "title": "root: [mods]: can have string array value", "obj": { "mods": { "color": [ "red", "white" ] } } }, { "title": "root: [mods]: can not have number array value", "obj": { "mods": { "color": [ 1234 ] } }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: [elems]: can be a string", "obj": { "elems": "header" } }, { "title": "root: [elems]: can be elem-object", "obj": { "elems": { "elem": "header" } } }, { "title": "root: [elems]: can be an empty array", "obj": { "elems": [] } }, { "title": "root: [elems]: can be a string array", "obj": { "elems": [ "header", "footer" ] } }, { "title": "root: [elems]: can be elem-object array", "obj": { "elems": [ { "elem": "header" } ] } }, { "title": "root: [elems]: can not be a number", "obj": { "elems": 1234 }, "error": { "keyword": "type", "params": { "type": "string,object,array" } } }, { "title": "root: [elems]: can not be a number array", "obj": { "elems": [ 1234 ] }, "error": { "keyword": "type", "params": { "type": "string,object" } } }, { "title": "root: [elems]: can have `elem` string field", "obj": { "elems": { "elem": "spin" } } }, { "title": "root: [elems]: can have `elem` array field", "obj": { "elems": { "elem": [] } } }, { "title": "root: [elems]: can have `elem` string array field", "obj": { "elems": { "elem": [ "spin", "button" ] } } }, { "title": "root: [elems]: `elem` field can not be a number", "obj": { "elems": { "elem": 1234 } }, "error": { "keyword": "type", "params": { "type": "string,array" } } }, { "title": "root: [elems]: `elem` field can not be a number array", "obj": { "elems": { "elem": [ 1234 ] } }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: [elems]: `elem` field is required", "obj": { "elems": {} }, "error": { "keyword": "required", "params": { "missingProperty": "elem" } } }, { "title": "root: [elems]: can have `mod` string field", "obj": { "elems": { "elem": "header", "mod": "color" } } }, { "title": "root: [elems]: `mod` field can not be a number", "obj": { "elems": { "elem": "header", "mod": 1234 } }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: [elems]: can have `val` string field with `mod`", "obj": { "elems": { "elem": "header", "mod": "color", "val": "black" } } }, { "title": "root: [elems]: can have `val` boolean `true` field", "obj": { "elems": { "elem": "header", "mod": "color", "val": true } } }, { "title": "root: [elems]: `val` field can not be a number", "obj": { "elems": { "elem": "header", "mod": "size", "val": 12 } }, "error": { "keyword": "type", "params": { "type": "string,boolean" } } }, { "title": "root: [elems]: `val` field can not be `false`", "obj": { "elems": { "elem": "header", "mod": "size", "val": false } }, "error": { "keyword": "enum", "schema": [ true ] } }, { "title": "root: [elems]: `val` field can not be without `mod`", "obj": { "elems": { "elem": "header", "val": "red" } }, "error": { "keyword": "required", "params": { "missingProperty": "mod" } } }, { "title": "root: [elems]: can have `tech` string field", "obj": { "elems": { "elem": "header", "tech": "bemhtml" } } }, { "title": "root: [elems]: `tech` field can not be a number", "obj": { "elems": { "elem": "header", "tech": 1234 } }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: [elems]: can have `include` boolean `false` field", "obj": { "elems": { "elem": "header", "include": false } } }, { "title": "root: [elems]: include can not be true", "obj": { "elems": { "elem": "header", "include": true } }, "error": { "keyword": "enum", "schema": [ false ] } }, { "title": "root: [elems]: include can not be string", "obj": { "elems": { "elem": "header", "include": "yes" } }, "error": { "keyword": "enum", "schema": [ false ] } }, { "title": "root: [elems]: can have `mod` and `mods` fields", "obj": { "elems": { "elem": "header", "mod": "color", "mods": {} } } }, { "title": "root: [elems]: [mods]: can be an object", "obj": { "elems": { "elem": "header", "mods": {} } } }, { "title": "root: [elems]: [mods]: can not be a number", "obj": { "elems": { "elem": "header", "mods": 1234 } }, "error": { "keyword": "type", "params": { "type": "object" } } }, { "title": "root: [elems]: [mods]: can have string value", "obj": { "elems": { "elem": "header", "mods": { "color": "red" } } } }, { "title": "root: [elems]: [mods]: can not have number value", "obj": { "elems": { "elem": "header", "mods": { "color": 1234 } } }, "error": { "keyword": "type", "params": { "type": "boolean,string,array" } } }, { "title": "root: [elems]: [mods]: can have `true` value", "obj": { "elems": { "elem": "header", "mods": { "color": true } } } }, { "title": "root: [elems]: [mods]: can not have `false` value", "obj": { "elems": { "elem": "header", "mods": { "color": false } } }, "error": { "keyword": "enum", "schema": [ true ] } }, { "title": "root: [elems]: [mods]: can have empty array value", "obj": { "elems": { "elem": "header", "mods": { "color": [] } } } }, { "title": "root: [elems]: [mods]: can have string array value", "obj": { "elems": { "elem": "header", "mods": { "color": [ "red", "white" ] } } } }, { "title": "root: [elems]: [mods]: can not have number array value", "obj": { "elems": { "elem": "header", "mods": { "color": [ 1234 ] } } }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: [elems]: [noDeps]: can be a string", "obj": { "elems": { "elem": "header", "noDeps": "b-page" } } }, { "title": "root: [elems]: [noDeps]: can be an object", "obj": { "elems": { "elem": "header", "noDeps": {} } } }, { "title": "root: [elems]: [noDeps]: can be an empty array", "obj": { "elems": { "elem": "header", "noDeps": [] } } }, { "title": "root: [elems]: [noDeps]: can be a string array", "obj": { "elems": { "elem": "header", "noDeps": [ "input", "select" ] } } }, { "title": "root: [elems]: [noDeps]: can be an object array", "obj": { "elems": { "elem": "header", "noDeps": [ {} ] } } }, { "title": "root: [elems]: [noDeps]: can not be a number", "obj": { "elems": { "elem": "header", "noDeps": 1234 } }, "error": { "keyword": "type", "params": { "type": "string,object,array" } } }, { "title": "root: [elems]: [noDeps]: can not be a number array", "obj": { "elems": { "elem": "header", "noDeps": [ 1234 ] } }, "error": { "keyword": "type", "params": { "type": "string,object" } } }, { "title": "root: [elems]: [noDeps]: can have `block` string field", "obj": { "elems": { "elem": "header", "noDeps": { "block": "b-page" } } } }, { "title": "root: [elems]: [noDeps]: `block` field can not be a number", "obj": { "elems": { "elem": "header", "noDeps": { "block": 1234 } } }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: [elems]: [noDeps]: can have `elem` string field", "obj": { "elems": { "elem": "header", "noDeps": { "elem": "spin" } } } }, { "title": "root: [elems]: [noDeps]: can have `elem` array field", "obj": { "elems": { "elem": "header", "noDeps": { "elem": [] } } } }, { "title": "root: [elems]: [noDeps]: can have `elem` string array field", "obj": { "elems": { "elem": "header", "noDeps": { "elem": [ "spin", "button" ] } } } }, { "title": "root: [elems]: [noDeps]: `elem` field can not be a number", "obj": { "elems": { "elem": "header", "noDeps": { "elem": 1234 } } }, "error": { "keyword": "type", "params": { "type": "string,array" } } }, { "title": "root: [elems]: [noDeps]: `elem` field can not be a number array", "obj": { "elems": { "elem": "header", "noDeps": { "elem": [ 1234 ] } } }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: [elems]: [noDeps]: can have `mod` string field", "obj": { "elems": { "elem": "header", "noDeps": { "mod": "color" } } } }, { "title": "root: [elems]: [noDeps]: `mod` field can not be a number", "obj": { "elems": { "elem": "header", "noDeps": { "mod": 1234 } } }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: [elems]: [noDeps]: can have `val` string field with `mod`", "obj": { "elems": { "elem": "header", "noDeps": { "mod": "color", "val": "black" } } } }, { "title": "root: [elems]: [noDeps]: can have `val` boolean `true` field", "obj": { "elems": { "elem": "header", "noDeps": { "mod": "color", "val": true } } } }, { "title": "root: [elems]: [noDeps]: `val` field can not be a number", "obj": { "elems": { "elem": "header", "noDeps": { "mod": "size", "val": 12 } } }, "error": { "keyword": "type", "params": { "type": "string,boolean" } } }, { "title": "root: [elems]: [noDeps]: `val` field can not be `false`", "obj": { "elems": { "elem": "header", "noDeps": { "mod": "size", "val": false } } }, "error": { "keyword": "enum", "schema": [ true ] } }, { "title": "root: [elems]: [noDeps]: `val` field can not be without `mod`", "obj": { "elems": { "elem": "header", "noDeps": { "val": "red" } } }, "error": { "keyword": "required", "params": { "missingProperty": "mod" } } }, { "title": "root: [elems]: [noDeps]: can have `tech` string field", "obj": { "elems": { "elem": "header", "noDeps": { "tech": "bemhtml" } } } }, { "title": "root: [elems]: [noDeps]: `tech` field can not be a number", "obj": { "elems": { "elem": "header", "noDeps": { "tech": 1234 } } }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: [elems]: [noDeps]: can have `include` boolean `false` field", "obj": { "elems": { "elem": "header", "noDeps": { "include": false } } } }, { "title": "root: [elems]: [noDeps]: include can not be true", "obj": { "elems": { "elem": "header", "noDeps": { "include": true } } }, "error": { "keyword": "enum", "schema": [ false ] } }, { "title": "root: [elems]: [noDeps]: include can not be string", "obj": { "elems": { "elem": "header", "noDeps": { "include": "yes" } } }, "error": { "keyword": "enum", "schema": [ false ] } }, { "title": "root: [elems]: [noDeps]: can have `mod` and `mods` fields", "obj": { "elems": { "elem": "header", "noDeps": { "mod": "color", "mods": {} } } } }, { "title": "root: [elems]: [noDeps]: can have `elem` and `elems` fields", "obj": { "elems": { "elem": "header", "noDeps": { "elem": "header", "elems": [] } } } }, { "title": "root: [elems]: [noDeps]: [mods]: can be an object", "obj": { "elems": { "elem": "header", "noDeps": { "mods": {} } } } }, { "title": "root: [elems]: [noDeps]: [mods]: can not be a number", "obj": { "elems": { "elem": "header", "noDeps": { "mods": 1234 } } }, "error": { "keyword": "type", "params": { "type": "object" } } }, { "title": "root: [elems]: [noDeps]: [mods]: can have string value", "obj": { "elems": { "elem": "header", "noDeps": { "mods": { "color": "red" } } } } }, { "title": "root: [elems]: [noDeps]: [mods]: can not have number value", "obj": { "elems": { "elem": "header", "noDeps": { "mods": { "color": 1234 } } } }, "error": { "keyword": "type", "params": { "type": "boolean,string,array" } } }, { "title": "root: [elems]: [noDeps]: [mods]: can have `true` value", "obj": { "elems": { "elem": "header", "noDeps": { "mods": { "color": true } } } } }, { "title": "root: [elems]: [noDeps]: [mods]: can not have `false` value", "obj": { "elems": { "elem": "header", "noDeps": { "mods": { "color": false } } } }, "error": { "keyword": "enum", "schema": [ true ] } }, { "title": "root: [elems]: [noDeps]: [mods]: can have empty array value", "obj": { "elems": { "elem": "header", "noDeps": { "mods": { "color": [] } } } } }, { "title": "root: [elems]: [noDeps]: [mods]: can have string array value", "obj": { "elems": { "elem": "header", "noDeps": { "mods": { "color": [ "red", "white" ] } } } } }, { "title": "root: [elems]: [noDeps]: [mods]: can not have number array value", "obj": { "elems": { "elem": "header", "noDeps": { "mods": { "color": [ 1234 ] } } } }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: [elems]: [noDeps]: [elems]: can be a string", "obj": { "elems": { "elem": "header", "noDeps": { "elems": "header" } } } }, { "title": "root: [elems]: [noDeps]: [elems]: can be elem-object", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header" } } } } }, { "title": "root: [elems]: [noDeps]: [elems]: can be an empty array", "obj": { "elems": { "elem": "header", "noDeps": { "elems": [] } } } }, { "title": "root: [elems]: [noDeps]: [elems]: can be a string array", "obj": { "elems": { "elem": "header", "noDeps": { "elems": [ "header", "footer" ] } } } }, { "title": "root: [elems]: [noDeps]: [elems]: can be elem-object array", "obj": { "elems": { "elem": "header", "noDeps": { "elems": [ { "elem": "header" } ] } } } }, { "title": "root: [elems]: [noDeps]: [elems]: can not be a number", "obj": { "elems": { "elem": "header", "noDeps": { "elems": 1234 } } }, "error": { "keyword": "type", "params": { "type": "string,object,array" } } }, { "title": "root: [elems]: [noDeps]: [elems]: can not be a number array", "obj": { "elems": { "elem": "header", "noDeps": { "elems": [ 1234 ] } } }, "error": { "keyword": "type", "params": { "type": "string,object" } } }, { "title": "root: [elems]: [noDeps]: [elems]: can have `elem` string field", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "spin" } } } } }, { "title": "root: [elems]: [noDeps]: [elems]: can have `elem` array field", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": [] } } } } }, { "title": "root: [elems]: [noDeps]: [elems]: can have `elem` string array field", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": [ "spin", "button" ] } } } } }, { "title": "root: [elems]: [noDeps]: [elems]: `elem` field can not be a number", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": 1234 } } } }, "error": { "keyword": "type", "params": { "type": "string,array" } } }, { "title": "root: [elems]: [noDeps]: [elems]: `elem` field can not be a number array", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": [ 1234 ] } } } }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: [elems]: [noDeps]: [elems]: `elem` field is required", "obj": { "elems": { "elem": "header", "noDeps": { "elems": {} } } }, "error": { "keyword": "required", "params": { "missingProperty": "elem" } } }, { "title": "root: [elems]: [noDeps]: [elems]: can have `mod` string field", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "mod": "color" } } } } }, { "title": "root: [elems]: [noDeps]: [elems]: `mod` field can not be a number", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "mod": 1234 } } } }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: [elems]: [noDeps]: [elems]: can have `val` string field with `mod`", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "mod": "color", "val": "black" } } } } }, { "title": "root: [elems]: [noDeps]: [elems]: can have `val` boolean `true` field", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "mod": "color", "val": true } } } } }, { "title": "root: [elems]: [noDeps]: [elems]: `val` field can not be a number", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "mod": "size", "val": 12 } } } }, "error": { "keyword": "type", "params": { "type": "string,boolean" } } }, { "title": "root: [elems]: [noDeps]: [elems]: `val` field can not be `false`", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "mod": "size", "val": false } } } }, "error": { "keyword": "enum", "schema": [ true ] } }, { "title": "root: [elems]: [noDeps]: [elems]: `val` field can not be without `mod`", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "val": "red" } } } }, "error": { "keyword": "required", "params": { "missingProperty": "mod" } } }, { "title": "root: [elems]: [noDeps]: [elems]: can have `tech` string field", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "tech": "bemhtml" } } } } }, { "title": "root: [elems]: [noDeps]: [elems]: `tech` field can not be a number", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "tech": 1234 } } } }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: [elems]: [noDeps]: [elems]: can have `include` boolean `false` field", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "include": false } } } } }, { "title": "root: [elems]: [noDeps]: [elems]: include can not be true", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "include": true } } } }, "error": { "keyword": "enum", "schema": [ false ] } }, { "title": "root: [elems]: [noDeps]: [elems]: include can not be string", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "include": "yes" } } } }, "error": { "keyword": "enum", "schema": [ false ] } }, { "title": "root: [elems]: [noDeps]: [elems]: can have `mod` and `mods` fields", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "mod": "color", "mods": {} } } } } }, { "title": "root: [elems]: [noDeps]: [elems]: [mods]: can be an object", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "mods": {} } } } } }, { "title": "root: [elems]: [noDeps]: [elems]: [mods]: can not be a number", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "mods": 1234 } } } }, "error": { "keyword": "type", "params": { "type": "object" } } }, { "title": "root: [elems]: [noDeps]: [elems]: [mods]: can have string value", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "mods": { "color": "red" } } } } } }, { "title": "root: [elems]: [noDeps]: [elems]: [mods]: can not have number value", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "mods": { "color": 1234 } } } } }, "error": { "keyword": "type", "params": { "type": "boolean,string,array" } } }, { "title": "root: [elems]: [noDeps]: [elems]: [mods]: can have `true` value", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "mods": { "color": true } } } } } }, { "title": "root: [elems]: [noDeps]: [elems]: [mods]: can not have `false` value", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "mods": { "color": false } } } } }, "error": { "keyword": "enum", "schema": [ true ] } }, { "title": "root: [elems]: [noDeps]: [elems]: [mods]: can have empty array value", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "mods": { "color": [] } } } } } }, { "title": "root: [elems]: [noDeps]: [elems]: [mods]: can have string array value", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "mods": { "color": [ "red", "white" ] } } } } } }, { "title": "root: [elems]: [noDeps]: [elems]: [mods]: can not have number array value", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "mods": { "color": [ 1234 ] } } } } }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: [elems]: [noDeps]: [elems]: other fields are not allowed", "obj": { "elems": { "elem": "header", "noDeps": { "elems": { "elem": "header", "name": "test" } } } }, "error": { "keyword": "additionalProperties", "params": { "additionalProperty": "name" } } }, { "title": "root: [elems]: [noDeps]: [elems]: [0]: can have `elem` string field", "obj": { "elems": { "elem": "header", "noDeps": { "elems": [ { "elem": "spin" } ] } } } }, { "title": "root: [elems]: [noDeps]: [elems]: [0]: can have `elem` array field", "obj": { "elems": { "elem": "header", "noDeps": { "elems": [ { "elem": [] } ] } } } }, { "title": "root: [elems]: [noDeps]: [elems]: [0]: can have `elem` string array field", "obj": { "elems": { "elem": "header", "noDeps": { "elems": [ { "elem": [ "spin", "button" ] } ] } } } }, { "title": "root: [elems]: [noDeps]: [elems]: [0]: `elem` field can not be a number", "obj": { "elems": { "elem": "header", "noDeps": { "elems": [ { "elem": 1234 } ] } } }, "error": { "keyword": "type", "params": { "type": "string,array" } } }, { "title": "root: [elems]: [noDeps]: [elems]: [0]: `elem` field can not be a number array", "obj": { "elems": { "elem": "header", "noDeps": { "elems": [ { "elem": [ 1234 ] } ] } } }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: [elems]: [noDeps]: [elems]: [0]: `elem` field is required", "obj": { "elems": { "elem": "header", "noDeps": { "elems": [ {} ] } } }, "error": { "keyword": "required", "params": { "missingProperty": "elem" } } }, { "title": "root: [elems]: [noDeps]: [elems]: [0]: can have `mod` string field", "obj": { "elems": { "elem": "header", "noDeps": { "elems": [ { "elem": "header", "mod": "color" } ] } } } }, { "title": "root: [elems]: [noDeps]: [elems]: [0]: `mod` field can not be a number", "obj": { "elems": { "elem": "header", "noDeps": { "elems": [ { "elem": "header", "mod": 1234 } ] } } }, "error": { "keyword": "type", "params": { "type": "string" } } }, { "title": "root: [elems]: [noDeps]: [elems]: [0]: can have `val` string field with `mod`", "obj": { "elems": { "elem": "header", "noDeps": { "elems": [ { "elem": "header", "mod": "color", "val": "black" } ] } } } }, { "title": "root: [elems]: [noDeps]: [elems]: [0]: can have `val` boolean `true` field", "obj": { "elems": { "elem": "header", "noDeps": {