refactor: clean up keyword templates
parent
3f61cf73a6
commit
c02a3bdc48
|
@ -24,7 +24,7 @@
|
|||
|
||||
{{# def.insertSubschemaCode }}
|
||||
|
||||
{{=$valid}} = {{=$valid}} || valid{{=$it.level}};
|
||||
{{=$valid}} = {{=$valid}} || {{=$nextValid}};
|
||||
|
||||
if (!{{=$valid}}) {
|
||||
{{ $closingBraces += '}'; }}
|
||||
|
|
|
@ -72,7 +72,7 @@ var valid{{=$lvl}};
|
|||
({{= $ruleValidate.validate }})
|
||||
{{?}}
|
||||
{{?? $macro }}
|
||||
valid{{=$it.level}}
|
||||
{{=$nextValid}}
|
||||
{{??}}
|
||||
{{? $asyncKeyword }}
|
||||
{{? $rDef.errors === false }}
|
||||
|
|
|
@ -33,6 +33,7 @@
|
|||
var $it = it.util.copy(it);
|
||||
var $closingBraces = '';
|
||||
$it.level++;
|
||||
var $nextValid = 'valid' + $it.level;
|
||||
}}
|
||||
#}}
|
||||
|
||||
|
@ -47,7 +48,7 @@
|
|||
|
||||
{{## def.ifResultValid:
|
||||
{{? $breakOnError }}
|
||||
if (valid{{=$it.level}}) {
|
||||
if ({{=$nextValid}}) {
|
||||
{{ $closingBraces += '}'; }}
|
||||
{{?}}
|
||||
#}}
|
||||
|
|
|
@ -45,7 +45,7 @@ var missing{{=$lvl}};
|
|||
{{ for (var $property in $schemaDeps) { }}
|
||||
{{ var $sch = $schemaDeps[$property]; }}
|
||||
{{? {{# def.nonEmptySchema:$sch }} }}
|
||||
valid{{=$it.level}} = true;
|
||||
{{=$nextValid}} = true;
|
||||
|
||||
if ({{=$data}}['{{= $property }}'] !== undefined) {
|
||||
{{
|
||||
|
|
|
@ -3,9 +3,13 @@
|
|||
{{# def.setupKeyword }}
|
||||
{{# def.$data }}
|
||||
|
||||
{{ var $i = 'i' + $lvl; }}
|
||||
{{
|
||||
var $i = 'i' + $lvl
|
||||
, $vSchema = 'schema' + $lvl;
|
||||
}}
|
||||
|
||||
{{? !$isData }}
|
||||
var schema{{=$lvl}} = validate.schema{{=$schemaPath}};
|
||||
var {{=$vSchema}} = validate.schema{{=$schemaPath}};
|
||||
{{?}}
|
||||
var {{=$valid}};
|
||||
|
||||
|
@ -13,8 +17,8 @@ var {{=$valid}};
|
|||
|
||||
{{=$valid}} = false;
|
||||
|
||||
for (var {{=$i}}=0; {{=$i}}<schema{{=$lvl}}.length; {{=$i}}++)
|
||||
if (equal({{=$data}}, schema{{=$lvl}}[{{=$i}}])) {
|
||||
for (var {{=$i}}=0; {{=$i}}<{{=$vSchema}}.length; {{=$i}}++)
|
||||
if (equal({{=$data}}, {{=$vSchema}}[{{=$i}}])) {
|
||||
{{=$valid}} = true;
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -5,24 +5,25 @@
|
|||
|
||||
|
||||
{{## def.validateItems:startFrom:
|
||||
for (var i{{=$lvl}} = {{=startFrom}}; i{{=$lvl}} < {{=$data}}.length; i{{=$lvl}}++) {
|
||||
for (var {{=$idx}} = {{=startFrom}}; {{=$idx}} < {{=$data}}.length; {{=$idx}}++) {
|
||||
{{
|
||||
$it.errorPath = it.util.getPathExpr(it.errorPath, 'i' + $lvl, it.opts.jsonPointers, true);
|
||||
var $passData = $data + '[i' + $lvl + ']';
|
||||
$it.dataPathArr[$dataNxt] = 'i' + $lvl;
|
||||
$it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true);
|
||||
var $passData = $data + '[' + $idx + ']';
|
||||
$it.dataPathArr[$dataNxt] = $idx;
|
||||
}}
|
||||
|
||||
{{# def.generateSubschemaCode }}
|
||||
{{# def.optimizeValidate }}
|
||||
|
||||
{{? $breakOnError }}
|
||||
if (!valid{{=$it.level}}) break;
|
||||
if (!{{=$nextValid}}) break;
|
||||
{{?}}
|
||||
}
|
||||
#}}
|
||||
|
||||
{{
|
||||
var $dataNxt = $it.dataLevel = it.dataLevel + 1
|
||||
var $idx = 'i' + $lvl
|
||||
, $dataNxt = $it.dataLevel = it.dataLevel + 1
|
||||
, $nextData = 'data' + $dataNxt
|
||||
, $currentBaseId = it.baseId;
|
||||
}}
|
||||
|
@ -46,7 +47,7 @@ var {{=$valid}};
|
|||
|
||||
{{~ $schema:$sch:$i }}
|
||||
{{? {{# def.nonEmptySchema:$sch }} }}
|
||||
valid{{=$it.level}} = true;
|
||||
{{=$nextValid}} = true;
|
||||
|
||||
if ({{=$data}}.length > {{=$i}}) {
|
||||
{{
|
||||
|
@ -72,7 +73,7 @@ var {{=$valid}};
|
|||
$it.schemaPath = it.schemaPath + '.additionalItems';
|
||||
$it.errSchemaPath = it.errSchemaPath + '/additionalItems';
|
||||
}}
|
||||
valid{{=$it.level}} = true;
|
||||
{{=$nextValid}} = true;
|
||||
|
||||
if ({{=$data}}.length > {{= $schema.length }}) {
|
||||
{{# def.validateItems: $schema.length }}
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
|
||||
{{# def.resetCompositeRule }}
|
||||
|
||||
if (valid{{=$it.level}}) {
|
||||
if ({{=$nextValid}}) {
|
||||
{{# def.error:'not' }}
|
||||
} else {
|
||||
{{# def.resetErrors }}
|
||||
|
|
|
@ -20,17 +20,17 @@ var {{=$valid}} = false;
|
|||
|
||||
{{# def.insertSubschemaCode }}
|
||||
{{??}}
|
||||
var valid{{=$it.level}} = true;
|
||||
var {{=$nextValid}} = true;
|
||||
{{?}}
|
||||
|
||||
{{? $i }}
|
||||
if (valid{{=$it.level}} && prevValid{{=$lvl}})
|
||||
if ({{=$nextValid}} && prevValid{{=$lvl}})
|
||||
{{=$valid}} = false;
|
||||
else {
|
||||
{{ $closingBraces += '}'; }}
|
||||
{{?}}
|
||||
|
||||
if (valid{{=$it.level}}) {{=$valid}} = prevValid{{=$lvl}} = true;
|
||||
if ({{=$nextValid}}) {{=$valid}} = prevValid{{=$lvl}} = true;
|
||||
{{~}}
|
||||
|
||||
{{# def.resetCompositeRule }}
|
||||
|
|
|
@ -11,9 +11,9 @@
|
|||
$it.errSchemaPath = it.errSchemaPath + '/additionalProperties';
|
||||
$it.errorPath = it.opts._errorDataPathProperty
|
||||
? it.errorPath
|
||||
: it.util.getPathExpr(it.errorPath, 'key' + $lvl, it.opts.jsonPointers);
|
||||
var $passData = $data + '[key' + $lvl + ']';
|
||||
$it.dataPathArr[$dataNxt] = 'key' + $lvl;
|
||||
: it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers);
|
||||
var $passData = $data + '[' + $key + ']';
|
||||
$it.dataPathArr[$dataNxt] = $key;
|
||||
}}
|
||||
|
||||
{{# def.generateSubschemaCode }}
|
||||
|
@ -51,7 +51,7 @@
|
|||
|
||||
|
||||
var {{=$errs}} = errors;
|
||||
var valid{{=$it.level}} = true;
|
||||
var {{=$nextValid}} = true;
|
||||
|
||||
{{? $checkAdditional }}
|
||||
for (var {{=$key}} in {{=$data}}) {
|
||||
|
@ -86,16 +86,16 @@ var valid{{=$it.level}} = true;
|
|||
{{??}}
|
||||
{{
|
||||
var $currentErrorPath = it.errorPath;
|
||||
var $additionalProperty = '\' + key' + $lvl + ' + \'';
|
||||
var $additionalProperty = '\' + ' + $key + ' + \'';
|
||||
if (it.opts._errorDataPathProperty) {
|
||||
it.errorPath = it.util.getPathExpr(it.errorPath, 'key' + $lvl, it.opts.jsonPointers);
|
||||
it.errorPath = it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers);
|
||||
}
|
||||
}}
|
||||
{{? $noAdditional }}
|
||||
{{? $removeAdditional }}
|
||||
delete {{=$data}}[{{=$key}}];
|
||||
{{??}}
|
||||
valid{{=$it.level}} = false;
|
||||
{{=$nextValid}} = false;
|
||||
{{
|
||||
var $currErrSchemaPath = $errSchemaPath;
|
||||
$errSchemaPath = it.errSchemaPath + '/additionalProperties';
|
||||
|
@ -111,7 +111,7 @@ var valid{{=$it.level}} = true;
|
|||
|
||||
{{# def.validateAdditional }}
|
||||
|
||||
if (!valid{{=$it.level}}) {
|
||||
if (!{{=$nextValid}}) {
|
||||
errors = {{=$errs}};
|
||||
if (validate.errors !== null) {
|
||||
if (errors) validate.errors.length = errors;
|
||||
|
@ -123,7 +123,7 @@ var valid{{=$it.level}} = true;
|
|||
{{# def.resetCompositeRule }}
|
||||
{{??}}
|
||||
{{# def.validateAdditional }}
|
||||
{{? $breakOnError }} if (!valid{{=$it.level}}) break; {{?}}
|
||||
{{? $breakOnError }} if (!{{=$nextValid}}) break; {{?}}
|
||||
{{?}}
|
||||
{{?}}
|
||||
{{ it.errorPath = $currentErrorPath; }}
|
||||
|
@ -171,7 +171,7 @@ var valid{{=$it.level}} = true;
|
|||
{{??}}
|
||||
{{? $requiredHash && $requiredHash[$propertyKey] }}
|
||||
if ({{=$useData}} === undefined) {
|
||||
valid{{=$it.level}} = false;
|
||||
{{=$nextValid}} = false;
|
||||
{{
|
||||
var $currentErrorPath = it.errorPath
|
||||
, $currErrSchemaPath = $errSchemaPath
|
||||
|
@ -188,7 +188,7 @@ var valid{{=$it.level}} = true;
|
|||
{{??}}
|
||||
{{? $breakOnError }}
|
||||
if ({{=$useData}} === undefined) {
|
||||
valid{{=$it.level}} = true;
|
||||
{{=$nextValid}} = true;
|
||||
} else {
|
||||
{{??}}
|
||||
if ({{=$useData}} !== undefined) {
|
||||
|
@ -219,17 +219,17 @@ var valid{{=$it.level}} = true;
|
|||
{{# def.checkOwnProperty }}
|
||||
if ({{= it.usePattern($pProperty) }}.test({{=$key}})) {
|
||||
{{
|
||||
$it.errorPath = it.util.getPathExpr(it.errorPath, 'key' + $lvl, it.opts.jsonPointers);
|
||||
var $passData = $data + '[key' + $lvl + ']';
|
||||
$it.dataPathArr[$dataNxt] = 'key' + $lvl;
|
||||
$it.errorPath = it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers);
|
||||
var $passData = $data + '[' + $key + ']';
|
||||
$it.dataPathArr[$dataNxt] = $key;
|
||||
}}
|
||||
|
||||
{{# def.generateSubschemaCode }}
|
||||
{{# def.optimizeValidate }}
|
||||
|
||||
{{? $breakOnError }} if (!valid{{=$it.level}}) break; {{?}}
|
||||
{{? $breakOnError }} if (!{{=$nextValid}}) break; {{?}}
|
||||
}
|
||||
{{? $breakOnError }} else valid{{=$it.level}} = true; {{?}}
|
||||
{{? $breakOnError }} else {{=$nextValid}} = true; {{?}}
|
||||
}
|
||||
|
||||
{{# def.ifResultValid }}
|
||||
|
@ -261,17 +261,17 @@ var valid{{=$it.level}} = true;
|
|||
pgPropCount{{=$lvl}}++;
|
||||
|
||||
{{
|
||||
$it.errorPath = it.util.getPathExpr(it.errorPath, 'key' + $lvl, it.opts.jsonPointers);
|
||||
var $passData = $data + '[key' + $lvl + ']';
|
||||
$it.dataPathArr[$dataNxt] = 'key' + $lvl;
|
||||
$it.errorPath = it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers);
|
||||
var $passData = $data + '[' + $key + ']';
|
||||
$it.dataPathArr[$dataNxt] = $key;
|
||||
}}
|
||||
|
||||
{{# def.generateSubschemaCode }}
|
||||
{{# def.optimizeValidate }}
|
||||
|
||||
{{? $breakOnError }} if (!valid{{=$it.level}}) break; {{?}}
|
||||
{{? $breakOnError }} if (!{{=$nextValid}}) break; {{?}}
|
||||
}
|
||||
{{? $breakOnError }} else valid{{=$it.level}} = true; {{?}}
|
||||
{{? $breakOnError }} else {{=$nextValid}} = true; {{?}}
|
||||
}
|
||||
|
||||
{{# def.ifResultValid }}
|
||||
|
|
|
@ -51,7 +51,7 @@
|
|||
{{ var $code = it.validate($it).replace(/validate\.schema/g, $refVal.code); }}
|
||||
{{= $code }}
|
||||
{{? $breakOnError}}
|
||||
if (valid{{=$it.level}}) {
|
||||
if ({{=$nextValid}}) {
|
||||
{{?}}
|
||||
{{??}}
|
||||
{{
|
||||
|
|
|
@ -4,10 +4,11 @@
|
|||
{{# def.setupKeyword }}
|
||||
{{# def.$data }}
|
||||
|
||||
{{ var $vSchema = 'schema' + $lvl; }}
|
||||
|
||||
{{## def.setupLoop:
|
||||
{{? !$isData }}
|
||||
var schema{{=$lvl}} = validate.schema{{=$schemaPath}};
|
||||
var {{=$vSchema}} = validate.schema{{=$schemaPath}};
|
||||
{{?}}
|
||||
|
||||
{{
|
||||
|
@ -51,8 +52,8 @@
|
|||
|
||||
{{?$isData}}{{# def.check$dataIsArray }}{{?}}
|
||||
|
||||
for (var {{=$i}} = 0; {{=$i}} < schema{{=$lvl}}.length; {{=$i}}++) {
|
||||
{{=$valid}} = {{=$data}}[schema{{=$lvl}}[{{=$i}}]] !== undefined;
|
||||
for (var {{=$i}} = 0; {{=$i}} < {{=$vSchema}}.length; {{=$i}}++) {
|
||||
{{=$valid}} = {{=$data}}[{{=$vSchema}}[{{=$i}}]] !== undefined;
|
||||
if (!{{=$valid}}) break;
|
||||
}
|
||||
|
||||
|
@ -69,13 +70,13 @@
|
|||
{{? $loopRequired }}
|
||||
{{# def.setupLoop }}
|
||||
{{? $isData }}
|
||||
if (schema{{=$lvl}} && !Array.isArray(schema{{=$lvl}})) {
|
||||
if ({{=$vSchema}} && !Array.isArray({{=$vSchema}})) {
|
||||
{{# def.addError:'required' }}
|
||||
} else if (schema{{=$lvl}} !== undefined) {
|
||||
} else if ({{=$vSchema}} !== undefined) {
|
||||
{{?}}
|
||||
|
||||
for (var {{=$i}} = 0; {{=$i}} < schema{{=$lvl}}.length; {{=$i}}++) {
|
||||
if ({{=$data}}[schema{{=$lvl}}[{{=$i}}]] === undefined) {
|
||||
for (var {{=$i}} = 0; {{=$i}} < {{=$vSchema}}.length; {{=$i}}++) {
|
||||
if ({{=$data}}[{{=$vSchema}}[{{=$i}}]] === undefined) {
|
||||
{{# def.addError:'required' }}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
{{# def._validateSwitchRule:if }}
|
||||
{{ $it.createErrors = true; }}
|
||||
{{# def.resetCompositeRule }}
|
||||
{{=$ifPassed}} = valid{{=$it.level}};
|
||||
{{=$ifPassed}} = {{=$nextValid}};
|
||||
#}}
|
||||
|
||||
{{## def.validateThen:
|
||||
|
@ -18,7 +18,7 @@
|
|||
{{? $sch.then === false }}
|
||||
{{# def.error:'switch' }}
|
||||
{{?}}
|
||||
var valid{{=$it.level}} = {{= $sch.then }};
|
||||
var {{=$nextValid}} = {{= $sch.then }};
|
||||
{{??}}
|
||||
{{# def._validateSwitchRule:then }}
|
||||
{{?}}
|
||||
|
@ -68,6 +68,6 @@ var {{=$ifPassed}};
|
|||
|
||||
{{= $closingBraces }}
|
||||
|
||||
var {{=$valid}} = valid{{=$it.level}};
|
||||
var {{=$valid}} = {{=$nextValid}};
|
||||
|
||||
{{# def.cleanUp }}
|
||||
|
|
Loading…
Reference in New Issue