Spaces:
Sleeping
Sleeping
| {{# def.definitions }} | |
| {{## def._error:_rule: | |
| {{ 'istanbul ignore else'; }} | |
| {{? it.createErrors !== false }} | |
| { | |
| keyword: '{{= $errorKeyword || _rule }}' | |
| , dataPath: (dataPath || '') + {{= it.errorPath }} | |
| , schemaPath: {{=it.util.toQuotedString($errSchemaPath)}} | |
| , params: {{# def._errorParams[_rule] }} | |
| {{? it.opts.messages !== false }} | |
| , message: {{# def._errorMessages[_rule] }} | |
| {{?}} | |
| {{? it.opts.verbose }} | |
| , schema: {{# def._errorSchemas[_rule] }} | |
| , parentSchema: validate.schema{{=it.schemaPath}} | |
| , data: {{=$data}} | |
| {{?}} | |
| } | |
| {{??}} | |
| {} | |
| {{?}} | |
| #}} | |
| {{## def._addError:_rule: | |
| if (vErrors === null) vErrors = [err]; | |
| else vErrors.push(err); | |
| errors++; | |
| #}} | |
| {{## def.addError:_rule: | |
| var err = {{# def._error:_rule }}; | |
| {{# def._addError:_rule }} | |
| #}} | |
| {{## def.error:_rule: | |
| {{# def.beginDefOut}} | |
| {{# def._error:_rule }} | |
| {{# def.storeDefOut:__err }} | |
| {{? !it.compositeRule && $breakOnError }} | |
| {{ 'istanbul ignore if'; }} | |
| {{? it.async }} | |
| throw new ValidationError([{{=__err}}]); | |
| {{??}} | |
| validate.errors = [{{=__err}}]; | |
| return false; | |
| {{?}} | |
| {{??}} | |
| var err = {{=__err}}; | |
| {{# def._addError:_rule }} | |
| {{?}} | |
| #}} | |
| {{## def.extraError:_rule: | |
| {{# def.addError:_rule}} | |
| {{? !it.compositeRule && $breakOnError }} | |
| {{ 'istanbul ignore if'; }} | |
| {{? it.async }} | |
| throw new ValidationError(vErrors); | |
| {{??}} | |
| validate.errors = vErrors; | |
| return false; | |
| {{?}} | |
| {{?}} | |
| #}} | |
| {{## def.checkError:_rule: | |
| if (!{{=$valid}}) { | |
| {{# def.error:_rule }} | |
| } | |
| #}} | |
| {{## def.resetErrors: | |
| errors = {{=$errs}}; | |
| if (vErrors !== null) { | |
| if ({{=$errs}}) vErrors.length = {{=$errs}}; | |
| else vErrors = null; | |
| } | |
| #}} | |
| {{## def.concatSchema:{{?$isData}}' + {{=$schemaValue}} + '{{??}}{{=$schema}}{{?}}#}} | |
| {{## def.appendSchema:{{?$isData}}' + {{=$schemaValue}}{{??}}{{=$schemaValue}}'{{?}}#}} | |
| {{## def.concatSchemaEQ:{{?$isData}}' + {{=$schemaValue}} + '{{??}}{{=it.util.escapeQuotes($schema)}}{{?}}#}} | |
| {{## def._errorMessages = { | |
| 'false schema': "'boolean schema is false'", | |
| $ref: "'can\\\'t resolve reference {{=it.util.escapeQuotes($schema)}}'", | |
| additionalItems: "'should NOT have more than {{=$schema.length}} items'", | |
| additionalProperties: "'{{? it.opts._errorDataPathProperty }}is an invalid additional property{{??}}should NOT have additional properties{{?}}'", | |
| anyOf: "'should match some schema in anyOf'", | |
| const: "'should be equal to constant'", | |
| contains: "'should contain a valid item'", | |
| dependencies: "'should have {{? $deps.length == 1 }}property {{= it.util.escapeQuotes($deps[0]) }}{{??}}properties {{= it.util.escapeQuotes($deps.join(\", \")) }}{{?}} when property {{= it.util.escapeQuotes($property) }} is present'", | |
| 'enum': "'should be equal to one of the allowed values'", | |
| format: "'should match format \"{{#def.concatSchemaEQ}}\"'", | |
| 'if': "'should match \"' + {{=$ifClause}} + '\" schema'", | |
| _limit: "'should be {{=$opStr}} {{#def.appendSchema}}", | |
| _exclusiveLimit: "'{{=$exclusiveKeyword}} should be boolean'", | |
| _limitItems: "'should NOT have {{?$keyword=='maxItems'}}more{{??}}fewer{{?}} than {{#def.concatSchema}} items'", | |
| _limitLength: "'should NOT be {{?$keyword=='maxLength'}}longer{{??}}shorter{{?}} than {{#def.concatSchema}} characters'", | |
| _limitProperties:"'should NOT have {{?$keyword=='maxProperties'}}more{{??}}fewer{{?}} than {{#def.concatSchema}} properties'", | |
| multipleOf: "'should be multiple of {{#def.appendSchema}}", | |
| not: "'should NOT be valid'", | |
| oneOf: "'should match exactly one schema in oneOf'", | |
| pattern: "'should match pattern \"{{#def.concatSchemaEQ}}\"'", | |
| propertyNames: "'property name \\'{{=$invalidName}}\\' is invalid'", | |
| required: "'{{? it.opts._errorDataPathProperty }}is a required property{{??}}should have required property \\'{{=$missingProperty}}\\'{{?}}'", | |
| type: "'should be {{? $typeIsArray }}{{= $typeSchema.join(\",\") }}{{??}}{{=$typeSchema}}{{?}}'", | |
| uniqueItems: "'should NOT have duplicate items (items ## ' + j + ' and ' + i + ' are identical)'", | |
| custom: "'should pass \"{{=$rule.keyword}}\" keyword validation'", | |
| patternRequired: "'should have property matching pattern \\'{{=$missingPattern}}\\''", | |
| switch: "'should pass \"switch\" keyword validation'", | |
| _formatLimit: "'should be {{=$opStr}} \"{{#def.concatSchemaEQ}}\"'", | |
| _formatExclusiveLimit: "'{{=$exclusiveKeyword}} should be boolean'" | |
| } #}} | |
| {{## def.schemaRefOrVal: {{?$isData}}validate.schema{{=$schemaPath}}{{??}}{{=$schema}}{{?}} #}} | |
| {{## def.schemaRefOrQS: {{?$isData}}validate.schema{{=$schemaPath}}{{??}}{{=it.util.toQuotedString($schema)}}{{?}} #}} | |
| {{## def._errorSchemas = { | |
| 'false schema': "false", | |
| $ref: "{{=it.util.toQuotedString($schema)}}", | |
| additionalItems: "false", | |
| additionalProperties: "false", | |
| anyOf: "validate.schema{{=$schemaPath}}", | |
| const: "validate.schema{{=$schemaPath}}", | |
| contains: "validate.schema{{=$schemaPath}}", | |
| dependencies: "validate.schema{{=$schemaPath}}", | |
| 'enum': "validate.schema{{=$schemaPath}}", | |
| format: "{{#def.schemaRefOrQS}}", | |
| 'if': "validate.schema{{=$schemaPath}}", | |
| _limit: "{{#def.schemaRefOrVal}}", | |
| _exclusiveLimit: "validate.schema{{=$schemaPath}}", | |
| _limitItems: "{{#def.schemaRefOrVal}}", | |
| _limitLength: "{{#def.schemaRefOrVal}}", | |
| _limitProperties:"{{#def.schemaRefOrVal}}", | |
| multipleOf: "{{#def.schemaRefOrVal}}", | |
| not: "validate.schema{{=$schemaPath}}", | |
| oneOf: "validate.schema{{=$schemaPath}}", | |
| pattern: "{{#def.schemaRefOrQS}}", | |
| propertyNames: "validate.schema{{=$schemaPath}}", | |
| required: "validate.schema{{=$schemaPath}}", | |
| type: "validate.schema{{=$schemaPath}}", | |
| uniqueItems: "{{#def.schemaRefOrVal}}", | |
| custom: "validate.schema{{=$schemaPath}}", | |
| patternRequired: "validate.schema{{=$schemaPath}}", | |
| switch: "validate.schema{{=$schemaPath}}", | |
| _formatLimit: "{{#def.schemaRefOrQS}}", | |
| _formatExclusiveLimit: "validate.schema{{=$schemaPath}}" | |
| } #}} | |
| {{## def.schemaValueQS: {{?$isData}}{{=$schemaValue}}{{??}}{{=it.util.toQuotedString($schema)}}{{?}} #}} | |
| {{## def._errorParams = { | |
| 'false schema': "{}", | |
| $ref: "{ ref: '{{=it.util.escapeQuotes($schema)}}' }", | |
| additionalItems: "{ limit: {{=$schema.length}} }", | |
| additionalProperties: "{ additionalProperty: '{{=$additionalProperty}}' }", | |
| anyOf: "{}", | |
| const: "{ allowedValue: schema{{=$lvl}} }", | |
| contains: "{}", | |
| dependencies: "{ property: '{{= it.util.escapeQuotes($property) }}', missingProperty: '{{=$missingProperty}}', depsCount: {{=$deps.length}}, deps: '{{= it.util.escapeQuotes($deps.length==1 ? $deps[0] : $deps.join(\", \")) }}' }", | |
| 'enum': "{ allowedValues: schema{{=$lvl}} }", | |
| format: "{ format: {{#def.schemaValueQS}} }", | |
| 'if': "{ failingKeyword: {{=$ifClause}} }", | |
| _limit: "{ comparison: {{=$opExpr}}, limit: {{=$schemaValue}}, exclusive: {{=$exclusive}} }", | |
| _exclusiveLimit: "{}", | |
| _limitItems: "{ limit: {{=$schemaValue}} }", | |
| _limitLength: "{ limit: {{=$schemaValue}} }", | |
| _limitProperties:"{ limit: {{=$schemaValue}} }", | |
| multipleOf: "{ multipleOf: {{=$schemaValue}} }", | |
| not: "{}", | |
| oneOf: "{ passingSchemas: {{=$passingSchemas}} }", | |
| pattern: "{ pattern: {{#def.schemaValueQS}} }", | |
| propertyNames: "{ propertyName: '{{=$invalidName}}' }", | |
| required: "{ missingProperty: '{{=$missingProperty}}' }", | |
| type: "{ type: '{{? $typeIsArray }}{{= $typeSchema.join(\",\") }}{{??}}{{=$typeSchema}}{{?}}' }", | |
| uniqueItems: "{ i: i, j: j }", | |
| custom: "{ keyword: '{{=$rule.keyword}}' }", | |
| patternRequired: "{ missingPattern: '{{=$missingPattern}}' }", | |
| switch: "{ caseIndex: {{=$caseIndex}} }", | |
| _formatLimit: "{ comparison: {{=$opExpr}}, limit: {{#def.schemaValueQS}}, exclusive: {{=$exclusive}} }", | |
| _formatExclusiveLimit: "{}" | |
| } #}} | |