|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194 |
- {{# 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: "{}"
- } #}}
|