You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
{{# def.definitions }} {{# def.errors }} {{# def.setupKeyword }} {{# def.setupNextLevel }}
{{## def.validateIf: {{# def.setCompositeRule }} {{ $it.createErrors = false; }} {{# def._validateSwitchRule:if }} {{ $it.createErrors = true; }} {{# def.resetCompositeRule }} {{=$ifPassed}} = {{=$nextValid}}; #}}
{{## def.validateThen: {{? typeof $sch.then == 'boolean' }} {{? $sch.then === false }} {{# def.error:'switch' }} {{?}} var {{=$nextValid}} = {{= $sch.then }}; {{??}} {{# def._validateSwitchRule:then }} {{?}} #}}
{{## def._validateSwitchRule:_clause: {{ $it.schema = $sch._clause; $it.schemaPath = $schemaPath + '[' + $caseIndex + ']._clause'; $it.errSchemaPath = $errSchemaPath + '/' + $caseIndex + '/_clause'; }} {{# def.insertSubschemaCode }} #}}
{{## def.switchCase: {{? $sch.if && {{# def.nonEmptySchema:$sch.if }} }} var {{=$errs}} = errors; {{# def.validateIf }} if ({{=$ifPassed}}) { {{# def.validateThen }} } else { {{# def.resetErrors }} } {{??}} {{=$ifPassed}} = true; {{# def.validateThen }} {{?}} #}}
{{ var $ifPassed = 'ifPassed' + it.level , $currentBaseId = $it.baseId , $shouldContinue; }} var {{=$ifPassed}};
{{~ $schema:$sch:$caseIndex }} {{? $caseIndex && !$shouldContinue }} if (!{{=$ifPassed}}) { {{ $closingBraces+= '}'; }} {{?}}
{{# def.switchCase }} {{ $shouldContinue = $sch.continue }} {{~}}
{{= $closingBraces }}
var {{=$valid}} = {{=$nextValid}};
|