diff options
Diffstat (limited to 'deps/npm/node_modules/request/node_modules/har-validator/node_modules/ajv/lib/dot/required.jst')
-rw-r--r-- | deps/npm/node_modules/request/node_modules/har-validator/node_modules/ajv/lib/dot/required.jst | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/ajv/lib/dot/required.jst b/deps/npm/node_modules/request/node_modules/har-validator/node_modules/ajv/lib/dot/required.jst index e109568f3e..80fde35e8c 100644 --- a/deps/npm/node_modules/request/node_modules/har-validator/node_modules/ajv/lib/dot/required.jst +++ b/deps/npm/node_modules/request/node_modules/har-validator/node_modules/ajv/lib/dot/required.jst @@ -22,6 +22,11 @@ #}} +{{## def.isRequiredOwnProperty: + Object.prototype.hasOwnProperty.call({{=$data}}, {{=$vSchema}}[{{=$i}}]) +#}} + + {{? !$isData }} {{? $schema.length < it.opts.loopRequired && it.schema.properties && Object.keys(it.schema.properties).length }} @@ -41,7 +46,8 @@ {{? $isData || $required.length }} {{ var $currentErrorPath = it.errorPath - , $loopRequired = $isData || $required.length >= it.opts.loopRequired; + , $loopRequired = $isData || $required.length >= it.opts.loopRequired + , $ownProperties = it.opts.ownProperties; }} {{? $breakOnError }} @@ -53,7 +59,10 @@ {{?$isData}}{{# def.check$dataIsArray }}{{?}} for (var {{=$i}} = 0; {{=$i}} < {{=$vSchema}}.length; {{=$i}}++) { - {{=$valid}} = {{=$data}}[{{=$vSchema}}[{{=$i}}]] !== undefined; + {{=$valid}} = {{=$data}}[{{=$vSchema}}[{{=$i}}]] !== undefined + {{? $ownProperties }} + && {{# def.isRequiredOwnProperty }} + {{?}}; if (!{{=$valid}}) break; } @@ -76,14 +85,17 @@ {{?}} for (var {{=$i}} = 0; {{=$i}} < {{=$vSchema}}.length; {{=$i}}++) { - if ({{=$data}}[{{=$vSchema}}[{{=$i}}]] === undefined) { + if ({{=$data}}[{{=$vSchema}}[{{=$i}}]] === undefined + {{? $ownProperties }} + || !{{# def.isRequiredOwnProperty }} + {{?}}) { {{# def.addError:'required' }} } } {{? $isData }} } {{?}} {{??}} - {{~ $required:$reqProperty }} + {{~ $required:$propertyKey }} {{# def.allErrorsMissingProperty:'required' }} {{~}} {{?}} |