| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 | {{# def.definitions }}{{# def.errors }}{{# def.setupKeyword }}{{## def._validateRef:_v:  {{? it.opts.passContext }}    {{=_v}}.call(this,  {{??}}    {{=_v}}(  {{?}}    {{=$data}}, {{# def.dataPath }}{{# def.passParentData }}, rootData)#}}{{ var $async, $refCode; }}{{? $schema == '#' || $schema == '#/' }}  {{    if (it.isRoot) {      $async = it.async;      $refCode = 'validate';    } else {      $async = it.root.schema.$async === true;      $refCode = 'root.refVal[0]';    }  }}{{??}}  {{ var $refVal = it.resolveRef(it.baseId, $schema, it.isRoot); }}  {{? $refVal === undefined }}    {{ var $message = it.MissingRefError.message(it.baseId, $schema); }}    {{? it.opts.missingRefs == 'fail' }}      {{ it.logger.error($message); }}      {{# def.error:'$ref' }}      {{? $breakOnError }} if (false) { {{?}}    {{?? it.opts.missingRefs == 'ignore' }}      {{ it.logger.warn($message); }}      {{? $breakOnError }} if (true) { {{?}}    {{??}}      {{ throw new it.MissingRefError(it.baseId, $schema, $message); }}    {{?}}  {{?? $refVal.inline }}    {{# def.setupNextLevel }}    {{      $it.schema = $refVal.schema;      $it.schemaPath = '';      $it.errSchemaPath = $schema;    }}    {{ var $code = it.validate($it).replace(/validate\.schema/g, $refVal.code); }}    {{= $code }}    {{? $breakOnError}}      if ({{=$nextValid}}) {    {{?}}  {{??}}    {{      $async = $refVal.$async === true || (it.async && $refVal.$async !== false);      $refCode = $refVal.code;    }}  {{?}}{{?}}{{? $refCode }}  {{# def.beginDefOut}}    {{# def._validateRef:$refCode }}  {{# def.storeDefOut:__callValidate }}  {{? $async }}    {{ if (!it.async) throw new Error('async schema referenced by sync schema'); }}    {{? $breakOnError }} var {{=$valid}}; {{?}}    try {      await {{=__callValidate}};      {{? $breakOnError }} {{=$valid}} = true; {{?}}    } catch (e) {      if (!(e instanceof ValidationError)) throw e;      if (vErrors === null) vErrors = e.errors;      else vErrors = vErrors.concat(e.errors);      errors = vErrors.length;      {{? $breakOnError }} {{=$valid}} = false; {{?}}    }    {{? $breakOnError }} if ({{=$valid}}) { {{?}}  {{??}}    if (!{{=__callValidate}}) {      if (vErrors === null) vErrors = {{=$refCode}}.errors;      else vErrors = vErrors.concat({{=$refCode}}.errors);      errors = vErrors.length;    } {{? $breakOnError }} else { {{?}}  {{?}}{{?}}
 |