34 lines
		
	
	
		
			781 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			781 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
{{# def.definitions }}
 | 
						|
{{# def.errors }}
 | 
						|
{{# def.setupKeyword }}
 | 
						|
 | 
						|
{{
 | 
						|
  var $key = 'key' + $lvl
 | 
						|
    , $idx = 'idx' + $lvl
 | 
						|
    , $matched = 'patternMatched' + $lvl
 | 
						|
    , $dataProperties = 'dataProperties' + $lvl
 | 
						|
    , $closingBraces = ''
 | 
						|
    , $ownProperties = it.opts.ownProperties;
 | 
						|
}}
 | 
						|
 | 
						|
var {{=$valid}} = true;
 | 
						|
{{? $ownProperties }}
 | 
						|
  var {{=$dataProperties}} = undefined;
 | 
						|
{{?}}
 | 
						|
 | 
						|
{{~ $schema:$pProperty }}
 | 
						|
  var {{=$matched}} = false;
 | 
						|
  {{# def.iterateProperties }}
 | 
						|
    {{=$matched}} = {{= it.usePattern($pProperty) }}.test({{=$key}});
 | 
						|
    if ({{=$matched}}) break;
 | 
						|
  }
 | 
						|
 | 
						|
  {{ var $missingPattern = it.util.escapeQuotes($pProperty); }}
 | 
						|
  if (!{{=$matched}}) {
 | 
						|
    {{=$valid}} = false;
 | 
						|
    {{# def.addError:'patternRequired' }}
 | 
						|
  } {{# def.elseIfValid }}
 | 
						|
{{~}}
 | 
						|
 | 
						|
{{= $closingBraces }}
 |