"Fossies" - the Fresh Open Source Software Archive

Member "node-v12.18.4-win-x64/node_modules/npm/node_modules/ajv/lib/dot/custom.jst" (14 Feb 2020, 5160 Bytes) of package /windows/www/node-v12.18.4-win-x64.zip:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 {{# def.definitions }}
    2 {{# def.errors }}
    3 {{# def.setupKeyword }}
    4 {{# def.$data }}
    5 
    6 {{
    7   var $rule = this
    8     , $definition = 'definition' + $lvl
    9     , $rDef = $rule.definition
   10     , $closingBraces = '';
   11   var $validate = $rDef.validate;
   12   var $compile, $inline, $macro, $ruleValidate, $validateCode;
   13 }}
   14 
   15 {{? $isData && $rDef.$data }}
   16   {{
   17     $validateCode = 'keywordValidate' + $lvl;
   18     var $validateSchema = $rDef.validateSchema;
   19   }}
   20   var {{=$definition}} = RULES.custom['{{=$keyword}}'].definition;
   21   var {{=$validateCode}} = {{=$definition}}.validate;
   22 {{??}}
   23   {{
   24     $ruleValidate = it.useCustomRule($rule, $schema, it.schema, it);
   25     if (!$ruleValidate) return;
   26     $schemaValue = 'validate.schema' + $schemaPath;
   27     $validateCode = $ruleValidate.code;
   28     $compile = $rDef.compile;
   29     $inline = $rDef.inline;
   30     $macro = $rDef.macro;
   31   }}
   32 {{?}}
   33 
   34 {{
   35   var $ruleErrs = $validateCode + '.errors'
   36     , $i = 'i' + $lvl
   37     , $ruleErr = 'ruleErr' + $lvl
   38     , $asyncKeyword = $rDef.async;
   39 
   40   if ($asyncKeyword && !it.async)
   41     throw new Error('async keyword in sync schema');
   42 }}
   43 
   44 
   45 {{? !($inline || $macro) }}{{=$ruleErrs}} = null;{{?}}
   46 var {{=$errs}} = errors;
   47 var {{=$valid}};
   48 
   49 {{## def.callRuleValidate:
   50   {{=$validateCode}}.call(
   51     {{? it.opts.passContext }}this{{??}}self{{?}}
   52     {{? $compile || $rDef.schema === false }}
   53       , {{=$data}}
   54     {{??}}
   55       , {{=$schemaValue}}
   56       , {{=$data}}
   57       , validate.schema{{=it.schemaPath}}
   58     {{?}}
   59     , {{# def.dataPath }}
   60     {{# def.passParentData }}
   61     , rootData
   62   )
   63 #}}
   64 
   65 {{## def.extendErrors:_inline:
   66   for (var {{=$i}}={{=$errs}}; {{=$i}}<errors; {{=$i}}++) {
   67     var {{=$ruleErr}} = vErrors[{{=$i}}];
   68     if ({{=$ruleErr}}.dataPath === undefined)
   69       {{=$ruleErr}}.dataPath = (dataPath || '') + {{= it.errorPath }};
   70     {{# _inline ? 'if (\{\{=$ruleErr\}\}.schemaPath === undefined) {' : '' }}
   71       {{=$ruleErr}}.schemaPath = "{{=$errSchemaPath}}";
   72     {{# _inline ? '}' : '' }}
   73     {{? it.opts.verbose }}
   74       {{=$ruleErr}}.schema = {{=$schemaValue}};
   75       {{=$ruleErr}}.data = {{=$data}};
   76     {{?}}
   77   }
   78 #}}
   79 
   80 
   81 {{? $isData && $rDef.$data }}
   82   {{ $closingBraces += '}'; }}
   83   if ({{=$schemaValue}} === undefined) {
   84     {{=$valid}} = true;
   85   } else {
   86   {{? $validateSchema }}
   87     {{ $closingBraces += '}'; }}
   88     {{=$valid}} = {{=$definition}}.validateSchema({{=$schemaValue}});
   89     if ({{=$valid}}) {
   90   {{?}}
   91 {{?}}
   92 
   93 {{? $inline }}
   94   {{? $rDef.statements }}
   95     {{= $ruleValidate.validate }}
   96   {{??}}
   97     {{=$valid}} = {{= $ruleValidate.validate }};
   98   {{?}}
   99 {{?? $macro }}
  100   {{# def.setupNextLevel }}
  101   {{
  102     $it.schema = $ruleValidate.validate;
  103     $it.schemaPath = '';
  104   }}
  105   {{# def.setCompositeRule }}
  106   {{ var $code = it.validate($it).replace(/validate\.schema/g, $validateCode); }}
  107   {{# def.resetCompositeRule }}
  108   {{= $code }}
  109 {{??}}
  110   {{# def.beginDefOut}}
  111     {{# def.callRuleValidate }}
  112   {{# def.storeDefOut:def_callRuleValidate }}
  113 
  114   {{? $rDef.errors === false }}
  115     {{=$valid}} = {{? $asyncKeyword }}{{=it.yieldAwait}}{{?}}{{= def_callRuleValidate }};
  116   {{??}}
  117     {{? $asyncKeyword }}
  118       {{ $ruleErrs = 'customErrors' + $lvl; }}
  119       var {{=$ruleErrs}} = null;
  120       try {
  121         {{=$valid}} = {{=it.yieldAwait}}{{= def_callRuleValidate }};
  122       } catch (e) {
  123         {{=$valid}} = false;
  124         if (e instanceof ValidationError) {{=$ruleErrs}} = e.errors;
  125         else throw e;
  126       }
  127     {{??}}
  128       {{=$ruleErrs}} = null;
  129       {{=$valid}} = {{= def_callRuleValidate }};
  130     {{?}}
  131   {{?}}
  132 {{?}}
  133 
  134 {{? $rDef.modifying }}
  135   if ({{=$parentData}}) {{=$data}} = {{=$parentData}}[{{=$parentDataProperty}}];
  136 {{?}}
  137 
  138 {{= $closingBraces }}
  139 
  140 {{## def.notValidationResult:
  141   {{? $rDef.valid === undefined }}
  142     !{{? $macro }}{{=$nextValid}}{{??}}{{=$valid}}{{?}}
  143   {{??}}
  144     {{= !$rDef.valid }}
  145   {{?}}
  146 #}}
  147 
  148 {{? $rDef.valid }}
  149   {{? $breakOnError }} if (true) { {{?}}
  150 {{??}}
  151   if ({{# def.notValidationResult }}) {
  152     {{ $errorKeyword = $rule.keyword; }}
  153     {{# def.beginDefOut}}
  154       {{# def.error:'custom' }}
  155     {{# def.storeDefOut:def_customError }}
  156 
  157     {{? $inline }}
  158       {{? $rDef.errors }}
  159         {{? $rDef.errors != 'full' }}
  160           {{# def.extendErrors:true }}
  161         {{?}}
  162       {{??}}
  163         {{? $rDef.errors === false}}
  164           {{= def_customError }}
  165         {{??}}
  166           if ({{=$errs}} == errors) {
  167             {{= def_customError }}
  168           } else {
  169             {{# def.extendErrors:true }}
  170           }
  171         {{?}}
  172       {{?}}
  173     {{?? $macro }}
  174       {{# def.extraError:'custom' }}
  175     {{??}}
  176       {{? $rDef.errors === false}}
  177         {{= def_customError }}
  178       {{??}}
  179         if (Array.isArray({{=$ruleErrs}})) {
  180           if (vErrors === null) vErrors = {{=$ruleErrs}};
  181           else vErrors = vErrors.concat({{=$ruleErrs}});
  182           errors = vErrors.length;
  183           {{# def.extendErrors:false }}
  184         } else {
  185           {{= def_customError }}
  186         }
  187       {{?}}
  188     {{?}}
  189 
  190   } {{? $breakOnError }} else { {{?}}
  191 {{?}}