{"maintainers":[{"name":"anonymous","email":"e.poberezkin@me.com"}],"keywords":["ajv","json-schema","validator","error","messages"],"dist-tags":{"latest":"3.0.0","beta":"2.0.0-beta.0"},"description":"Custom error messages in JSON Schemas for Ajv validator","readme":"# ajv-errors\n\nCustom error messages in JSON-Schema for Ajv validator\n\n[![build](https://github.com/ajv-validator/ajv-errors/workflows/build/badge.svg)](https://github.com/ajv-validator/ajv-errors/actions?query=workflow%3Abuild)\n[![npm](https://img.shields.io/npm/v/ajv-errors.svg)](https://www.npmjs.com/package/ajv-errors)\n[![coverage](https://coveralls.io/repos/github/ajv-validator/ajv-errors/badge.svg?branch=master)](https://coveralls.io/github/ajv-validator/ajv-errors?branch=master)\n[![gitter](https://img.shields.io/gitter/room/ajv-validator/ajv.svg)](https://gitter.im/ajv-validator/ajv)\n\n**Please note**\n\najv-errors v3 supports [ajv v8](https://github.com/ajv-validator/ajv).\n\nIf you are using ajv v6, you should use [ajv-errors v1](https://github.com/ajv-validator/ajv-errors/tree/v1)\n\n## Contents\n\n- [Install](#install)\n- [Usage](#usage)\n  - [Single message](#single-message)\n  - [Messages for keywords](#messages-for-keywords)\n  - [Messages for properties and items](#messages-for-properties-and-items)\n  - [Default message](#default-message)\n- [Templates](#templates)\n- [Options](#options)\n- [Supporters, Enterprise support, Security contact](#supporters)\n- [License](#license)\n\n## Install\n\n```\nnpm install ajv-errors\n```\n\n## Usage\n\nAdd the keyword `errorMessages` to Ajv instance:\n\n```javascript\nconst Ajv = require(\"ajv\").default\nconst ajv = new Ajv({allErrors: true})\n// Ajv option allErrors is required\nrequire(\"ajv-errors\")(ajv /*, {singleError: true} */)\n```\n\nSee [Options](#options) below.\n\n### Single message\n\nReplace all errors in the current schema and subschemas with a single message:\n\n```javascript\nconst schema = {\n  type: \"object\",\n  required: [\"foo\"],\n  properties: {\n    foo: {type: \"integer\"},\n  },\n  additionalProperties: false,\n  errorMessage: \"should be an object with an integer property foo only\",\n}\n\nconst validate = ajv.compile(schema)\nconsole.log(validate({foo: \"a\", bar: 2})) // false\nconsole.log(validate.errors) // processed errors\n```\n\nProcessed errors:\n\n```json5\n[\n  {\n    keyword: \"errorMessage\",\n    message: \"should be an object with an integer property foo only\",\n    // ...\n    params: {\n      errors: [\n        {keyword: \"additionalProperties\", instancePath: \"\" /* , ... */},\n        {keyword: \"type\", instancePath: \".foo\" /* , ... */},\n      ],\n    },\n  },\n]\n```\n\n### Messages for keywords\n\nReplace errors for certain keywords in the current schema only:\n\n```javascript\nconst schema = {\n  type: \"object\",\n  required: [\"foo\"],\n  properties: {\n    foo: {type: \"integer\"},\n  },\n  additionalProperties: false,\n  errorMessage: {\n    type: \"should be an object\", // will not replace internal \"type\" error for the property \"foo\"\n    required: \"should have property foo\",\n    additionalProperties: \"should not have properties other than foo\",\n  },\n}\n\nconst validate = ajv.compile(schema)\nconsole.log(validate({foo: \"a\", bar: 2})) // false\nconsole.log(validate.errors) // processed errors\n```\n\nProcessed errors:\n\n```json5\n[\n  {\n    // original error\n    keyword: type,\n    instancePath: \"/foo\",\n    // ...\n    message: \"should be integer\",\n  },\n  {\n    // generated error\n    keyword: \"errorMessage\",\n    message: \"should not have properties other than foo\",\n    // ...\n    params: {\n      errors: [{keyword: \"additionalProperties\" /* , ... */}],\n    },\n  },\n]\n```\n\nFor keywords \"required\" and \"dependencies\" it is possible to specify different messages for different properties:\n\n```javascript\nconst schema = {\n  type: \"object\",\n  required: [\"foo\", \"bar\"],\n  properties: {\n    foo: {type: \"integer\"},\n    bar: {type: \"string\"},\n  },\n  errorMessage: {\n    type: \"should be an object\", // will not replace internal \"type\" error for the property \"foo\"\n    required: {\n      foo: 'should have an integer property \"foo\"',\n      bar: 'should have a string property \"bar\"',\n    },\n  },\n}\n```\n\n### Messages for properties and items\n\nReplace errors for properties / items (and deeper), regardless where in schema they were created:\n\n```javascript\nconst schema = {\n  type: \"object\",\n  required: [\"foo\", \"bar\"],\n  allOf: [\n    {\n      properties: {\n        foo: {type: \"integer\", minimum: 2},\n        bar: {type: \"string\", minLength: 2},\n      },\n      additionalProperties: false,\n    },\n  ],\n  errorMessage: {\n    properties: {\n      foo: \"data.foo should be integer >= 2\",\n      bar: \"data.bar should be string with length >= 2\",\n    },\n  },\n}\n\nconst validate = ajv.compile(schema)\nconsole.log(validate({foo: 1, bar: \"a\"})) // false\nconsole.log(validate.errors) // processed errors\n```\n\nProcessed errors:\n\n```json5\n[\n  {\n    keyword: \"errorMessage\",\n    message: \"data.foo should be integer >= 2\",\n    instancePath: \"/foo\",\n    // ...\n    params: {\n      errors: [{keyword: \"minimum\" /* , ... */}],\n    },\n  },\n  {\n    keyword: \"errorMessage\",\n    message: \"data.bar should be string with length >= 2\",\n    instancePath: \"/bar\",\n    // ...\n    params: {\n      errors: [{keyword: \"minLength\" /* , ... */}],\n    },\n  },\n]\n```\n\n### Default message\n\nWhen the value of keyword `errorMessage` is an object you can specify a message that will be used if any error appears that is not specified by keywords/properties/items using `_` property:\n\n```javascript\nconst schema = {\n  type: \"object\",\n  required: [\"foo\", \"bar\"],\n  allOf: [\n    {\n      properties: {\n        foo: {type: \"integer\", minimum: 2},\n        bar: {type: \"string\", minLength: 2},\n      },\n      additionalProperties: false,\n    },\n  ],\n  errorMessage: {\n    type: \"data should be an object\",\n    properties: {\n      foo: \"data.foo should be integer >= 2\",\n      bar: \"data.bar should be string with length >= 2\",\n    },\n    _: 'data should have properties \"foo\" and \"bar\" only',\n  },\n}\n\nconst validate = ajv.compile(schema)\nconsole.log(validate({})) // false\nconsole.log(validate.errors) // processed errors\n```\n\nProcessed errors:\n\n```json5\n[\n  {\n    keyword: \"errorMessage\",\n    message: 'data should be an object with properties \"foo\" and \"bar\" only',\n    instancePath: \"\",\n    // ...\n    params: {\n      errors: [{keyword: \"required\" /* , ... */}, {keyword: \"required\" /* , ... */}],\n    },\n  },\n]\n```\n\nThe message in property `_` of `errorMessage` replaces the same errors that would have been replaced if `errorMessage` were a string.\n\n## Templates\n\nCustom error messages used in `errorMessage` keyword can be templates using [JSON-pointers](https://tools.ietf.org/html/rfc6901) or [relative JSON-pointers](http://tools.ietf.org/html/draft-luff-relative-json-pointer-00) to data being validated, in which case the value will be interpolated. Also see [examples](https://gist.github.com/geraintluff/5911303) of relative JSON-pointers.\n\nThe syntax to interpolate a value is `${<pointer>}`.\n\nThe values used in messages will be JSON-stringified:\n\n- to differentiate between `false` and `\"false\"`, etc.\n- to support structured values.\n\nExample:\n\n```javascript\nconst schema = {\n  type: \"object\",\n  properties: {\n    size: {\n      type: \"number\",\n      minimum: 4,\n    },\n  },\n  errorMessage: {\n    properties: {\n      size: \"size should be a number bigger or equal to 4, current value is ${/size}\",\n    },\n  },\n}\n```\n\n#### Using property names in error messages\n\nProperty names can be used in error messages with the relative JSON-pointer (e.g. `0#`). \n\nExample: \n```javascript\nconst schema = {\n  type: \"object\",\n  properties: {\n    size: {\n      type: \"number\",\n    },\n  },\n  additionalProperties: {\n    not: true,\n    errorMessage: “extra property is ${0#}”\n  }\n}\n```\n\n## Options\n\nDefaults:\n\n```json5\n{\n  keepErrors: false,\n  singleError: false,\n}\n```\n\n- _keepErrors_: keep original errors. Default is to remove matched errors (they will still be available in `params.errors` property of generated error). If an error was matched and included in the error generated by `errorMessage` keyword it will have property `emUsed: true`.\n- _singleError_: create one error for all keywords used in `errorMessage` keyword (error messages defined for properties and items are not merged because they have different instancePaths). Multiple error messages are concatenated. Option values:\n  - `false` (default): create multiple errors, one for each message\n  - `true`: create single error, messages are concatenated using `\"; \"`\n  - non-empty string: this string is used as a separator to concatenate messages\n\n## Supporters\n\n[Roger Kepler](https://www.linkedin.com/in/rogerkepler/)\n\n## Enterprise support\n\najv-errors package is a part of [Tidelift enterprise subscription](https://tidelift.com/subscription/pkg/npm-ajv-errors?utm_source=npm-ajv-errors&utm_medium=referral&utm_campaign=enterprise&utm_term=repo) - it provides a centralised commercial support to open-source software users, in addition to the support provided by software maintainers.\n\n## Security contact\n\nTo report a security vulnerability, please use the\n[Tidelift security contact](https://tidelift.com/security).\nTidelift will coordinate the fix and disclosure. Please do NOT report security vulnerability via GitHub issues.\n\n## License\n\n[MIT](https://github.com/epoberezkin/ajv-errors/blob/master/LICENSE)\n","repository":{"type":"git","url":"git+https://github.com/epoberezkin/ajv-errors.git"},"users":{"esilva2902":true,"sopov":true,"flumpus-dev":true},"bugs":{"url":"https://github.com/epoberezkin/ajv-errors/issues"},"license":"MIT","versions":{"0.0.1":{"name":"ajv-errors","version":"0.0.1","description":"Custom error messages in JSON-Schema for Ajv validator","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://github.com/epoberezkin/ajv-errors.git"},"keywords":["ajv","json-schema","validator","error","messages"],"author":"","license":"MIT","bugs":{"url":"https://github.com/epoberezkin/ajv-errors/issues"},"homepage":"https://github.com/epoberezkin/ajv-errors#readme","gitHead":"c30cfd8987e0cf23cc39ff8dd6dc1feede17ad9e","_id":"ajv-errors@0.0.1","_shasum":"9d25c7a77ec8e9ec88017059d32cd699251f2e5b","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"anonymous","email":"e.poberezkin@me.com"},"maintainers":[{"name":"anonymous","email":"e.poberezkin@me.com"}],"dist":{"shasum":"9d25c7a77ec8e9ec88017059d32cd699251f2e5b","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/ajv-errors/-/ajv-errors-0.0.1.tgz","integrity":"sha512-vAzGy2W/7Ya7uwdjUkWdaIyvPdU78A9S1osWG4JGgaeFfqELVQPgtr3QtaEhhK4BqAmFqPXg8T8plNEYgO07YA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCH0fnE1zH5M/K9EfxjxltNgrw79I4dR0rxbh8ShIyf9QIhAIyaIDZ89boqNU2m9JevPlo4PsS1+Pwgx4n7Am7Lrr+r"}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/ajv-errors-0.0.1.tgz_1488714041336_0.44593694899231195"},"directories":{}},"0.1.0":{"name":"ajv-errors","version":"0.1.0","description":"Custom error messages in JSON-Schema for Ajv validator","main":"index.js","scripts":{"build":"node node_modules/ajv/scripts/compile-dots.js node_modules/ajv/lib lib","eslint":"eslint *.js spec","test-spec":"mocha spec/*.spec.js -R spec","test-cov":"nyc npm run test-spec","test":"npm run eslint && npm run build && npm run test-cov"},"repository":{"type":"git","url":"git+https://github.com/epoberezkin/ajv-errors.git"},"keywords":["ajv","json-schema","validator","error","messages"],"author":"","license":"MIT","bugs":{"url":"https://github.com/epoberezkin/ajv-errors/issues"},"homepage":"https://github.com/epoberezkin/ajv-errors#readme","peerDependencies":{"ajv":">=5.0.0"},"devDependencies":{"ajv":"^5.0.0","coveralls":"^2.11.16","dot":"^1.1.1","eslint":"^3.17.0","glob":"^7.1.1","js-beautify":"^1.6.12","mocha":"^3.2.0","nyc":"^10.1.2","pre-commit":"^1.2.2"},"nyc":{"exclude":["**/spec/**","node_modules"],"reporter":["lcov","text-summary"]},"gitHead":"24eb684608f778a592905e8ecc7b1e124683e98d","_id":"ajv-errors@0.1.0","_shasum":"575fe73af89ca815664c97534f6cb21e0fd3143f","_from":".","_npmVersion":"2.15.9","_nodeVersion":"4.6.1","_npmUser":{"name":"anonymous","email":"e.poberezkin@me.com"},"maintainers":[{"name":"anonymous","email":"e.poberezkin@me.com"}],"dist":{"shasum":"575fe73af89ca815664c97534f6cb21e0fd3143f","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/ajv-errors/-/ajv-errors-0.1.0.tgz","integrity":"sha512-4CHd3brEhUaaXMu1elLejhqLQvEvT8bH1a5YEk97y5Eopg4k3MRwA8KtS/FCfAZsMFHvkxU1gZWBLV250qIZxg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCZJqV9C0booYyufKLbMKAhd4ixb+5NI2X6tYa5yYq4TAIgHzeaJaW72ce1uAs9LEJUwSD+7IMQV271YIdXt+IuFXY="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/ajv-errors-0.1.0.tgz_1493578076194_0.40459733200259507"},"directories":{}},"0.1.1":{"name":"ajv-errors","version":"0.1.1","description":"Custom error messages in JSON-Schema for Ajv validator","main":"index.js","scripts":{"build":"node node_modules/ajv/scripts/compile-dots.js node_modules/ajv/lib lib","eslint":"eslint *.js spec","test-spec":"mocha spec/*.spec.js -R spec","test-cov":"nyc npm run test-spec","test":"npm run eslint && npm run build && npm run test-cov"},"repository":{"type":"git","url":"git+https://github.com/epoberezkin/ajv-errors.git"},"keywords":["ajv","json-schema","validator","error","messages"],"author":"","license":"MIT","bugs":{"url":"https://github.com/epoberezkin/ajv-errors/issues"},"homepage":"https://github.com/epoberezkin/ajv-errors#readme","peerDependencies":{"ajv":">=5.0.0"},"devDependencies":{"ajv":"^5.0.0","coveralls":"^2.11.16","dot":"^1.1.1","eslint":"^3.17.0","glob":"^7.1.1","js-beautify":"^1.6.12","mocha":"^3.2.0","nyc":"^10.1.2","pre-commit":"^1.2.2"},"nyc":{"exclude":["**/spec/**","node_modules"],"reporter":["lcov","text-summary"]},"gitHead":"5f5941837a99e14593d254dee53476cd64ea4959","_id":"ajv-errors@0.1.1","_shasum":"0e3efa3f1c043b8ba9cbd7c792a1c4d159b7541c","_from":".","_npmVersion":"2.15.9","_nodeVersion":"4.6.1","_npmUser":{"name":"anonymous","email":"e.poberezkin@me.com"},"maintainers":[{"name":"anonymous","email":"e.poberezkin@me.com"}],"dist":{"shasum":"0e3efa3f1c043b8ba9cbd7c792a1c4d159b7541c","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/ajv-errors/-/ajv-errors-0.1.1.tgz","integrity":"sha512-uIzy42WwNt2C6oVWXydlQ1Yoq+feCD3x35v1dzdh5NrxQrUKUfuBqqwZdkaZy1PVk4cz2DZ6hKORNP2beU10vQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGWsxd53Zv6Wg+R+febfIUug6gM4q+trWbicWNAYzRHaAiA0gSyd7GAUqhw3mOLAevBlFQM+JjQrlY0JtqKqfe6/CA=="}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/ajv-errors-0.1.1.tgz_1493581004672_0.3394001806154847"},"directories":{}},"0.1.2":{"name":"ajv-errors","version":"0.1.2","description":"Custom error messages in JSON-Schema for Ajv validator","main":"index.js","files":["lib"],"scripts":{"build":"node node_modules/ajv/scripts/compile-dots.js node_modules/ajv/lib lib","eslint":"eslint *.js spec","test-spec":"mocha spec/*.spec.js -R spec","test-cov":"nyc npm run test-spec","test":"npm run eslint && npm run build && npm run test-cov","prepublish":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/epoberezkin/ajv-errors.git"},"keywords":["ajv","json-schema","validator","error","messages"],"author":"","license":"MIT","bugs":{"url":"https://github.com/epoberezkin/ajv-errors/issues"},"homepage":"https://github.com/epoberezkin/ajv-errors#readme","peerDependencies":{"ajv":">=5.0.0"},"devDependencies":{"ajv":"^5.0.0","coveralls":"^2.11.16","dot":"^1.1.1","eslint":"^3.17.0","glob":"^7.1.1","js-beautify":"^1.6.12","mocha":"^3.2.0","nyc":"^10.1.2","pre-commit":"^1.2.2"},"nyc":{"exclude":["**/spec/**","node_modules"],"reporter":["lcov","text-summary"]},"gitHead":"ef36fa1ad34937b6baab7f5fccc9b1cbed88b7b7","_id":"ajv-errors@0.1.2","_shasum":"561877abb7f15c44032687e37fd9b7638ada7909","_from":".","_npmVersion":"2.15.9","_nodeVersion":"4.6.1","_npmUser":{"name":"anonymous","email":"e.poberezkin@me.com"},"maintainers":[{"name":"anonymous","email":"e.poberezkin@me.com"}],"dist":{"shasum":"561877abb7f15c44032687e37fd9b7638ada7909","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/ajv-errors/-/ajv-errors-0.1.2.tgz","integrity":"sha512-Jx/x3q537/XsiaVEYA3xN6Dy3zOOiqG3Z9ogfyLqZ75+Zky7pAL1ozD9rFhxsF+BQSPgPVfQU0ipK+x2w5Xg3A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDcgZrsTU9Z41JAvxxycmkXA7sPdKn1PVGFqU3aVS9MxAiEA2vV50foahbU2UII4CqYeJpPKMlVgRdBkbsrnDU21DrE="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/ajv-errors-0.1.2.tgz_1493583855068_0.06978772417642176"},"directories":{}},"0.2.0":{"name":"ajv-errors","version":"0.2.0","description":"Custom error messages in JSON-Schema for Ajv validator","main":"index.js","files":["lib"],"scripts":{"build":"node node_modules/ajv/scripts/compile-dots.js node_modules/ajv/lib lib","eslint":"eslint *.js spec","test-spec":"mocha spec/*.spec.js -R spec","test-cov":"nyc npm run test-spec","test":"npm run eslint && npm run build && npm run test-cov","prepublish":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/epoberezkin/ajv-errors.git"},"keywords":["ajv","json-schema","validator","error","messages"],"author":"","license":"MIT","bugs":{"url":"https://github.com/epoberezkin/ajv-errors/issues"},"homepage":"https://github.com/epoberezkin/ajv-errors#readme","peerDependencies":{"ajv":">=5.0.0"},"devDependencies":{"ajv":"^5.0.0","coveralls":"^2.11.16","dot":"^1.1.1","eslint":"^3.17.0","glob":"^7.1.1","js-beautify":"^1.6.12","mocha":"^3.2.0","nyc":"^10.1.2","pre-commit":"^1.2.2"},"nyc":{"exclude":["**/spec/**","node_modules"],"reporter":["lcov","text-summary"]},"gitHead":"cd9af6681bfdcf3d6f4bb1c143790b1470762999","_id":"ajv-errors@0.2.0","_shasum":"008204c64a57c9be5ced529a80b05c094f7cd3c0","_from":".","_npmVersion":"2.15.9","_nodeVersion":"4.6.1","_npmUser":{"name":"anonymous","email":"e.poberezkin@me.com"},"maintainers":[{"name":"anonymous","email":"e.poberezkin@me.com"}],"dist":{"shasum":"008204c64a57c9be5ced529a80b05c094f7cd3c0","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/ajv-errors/-/ajv-errors-0.2.0.tgz","integrity":"sha512-WIFMC/fYIwBBwitoSXl2tCAFt4qRZbwY0dpew6/AuM2HlpU1qmVSk4kTGX6C/gAY2xVRuoamzDu+KP4GEA349g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDtfgDQll3DwRQ7dswRPlb6L7gX4XwwitsKON8R3LEiHAiEA0UIpReUotMBEaBKvDCuZVw57OlFzDlmiY7XQYAMJhwo="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/ajv-errors-0.2.0.tgz_1493656328770_0.18939133686944842"},"directories":{}},"0.3.0":{"name":"ajv-errors","version":"0.3.0","description":"Custom error messages in JSON-Schema for Ajv validator","main":"index.js","files":["lib"],"scripts":{"build":"node node_modules/ajv/scripts/compile-dots.js node_modules/ajv/lib lib","eslint":"eslint *.js spec","test-spec":"mocha spec/*.spec.js -R spec","test-cov":"nyc npm run test-spec","test":"npm run eslint && npm run build && npm run test-cov","prepublish":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/epoberezkin/ajv-errors.git"},"keywords":["ajv","json-schema","validator","error","messages"],"author":"","license":"MIT","bugs":{"url":"https://github.com/epoberezkin/ajv-errors/issues"},"homepage":"https://github.com/epoberezkin/ajv-errors#readme","peerDependencies":{"ajv":">=5.0.0"},"devDependencies":{"ajv":"^5.0.0","coveralls":"^2.11.16","dot":"^1.1.1","eslint":"^3.17.0","glob":"^7.1.1","js-beautify":"^1.6.12","mocha":"^3.2.0","nyc":"^10.1.2","pre-commit":"^1.2.2"},"nyc":{"exclude":["**/spec/**","node_modules"],"reporter":["lcov","text-summary"]},"gitHead":"2198d2e98180658c3f11aa27a5b1be6105dd64c3","_id":"ajv-errors@0.3.0","_shasum":"539c41568e1bfd9cf0f50a33a3bf02c11a38f917","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"anonymous","email":"e.poberezkin@me.com"},"maintainers":[{"name":"anonymous","email":"e.poberezkin@me.com"}],"dist":{"shasum":"539c41568e1bfd9cf0f50a33a3bf02c11a38f917","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/ajv-errors/-/ajv-errors-0.3.0.tgz","integrity":"sha512-ntyAvq1SMzHAkZl1r+v8KITZoNdm7ztAQ63Q0sdBJhpHR4yD3xZiwdoFb6N6prMAPCZ+6TGbI4Y3xKeoZ9OSpQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC81OFDf/NMMWVTm0QaBZVZ2aOC7ydURwZQP7AcyKWfbgIgbixNCRv8tdmpYq90cgOdMJ4itsFtKoHIg570cq5e2ok="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/ajv-errors-0.3.0.tgz_1494357272151_0.45966680673882365"},"directories":{}},"0.4.0":{"name":"ajv-errors","version":"0.4.0","description":"Custom error messages in JSON-Schema for Ajv validator","main":"index.js","files":["lib"],"scripts":{"build":"node node_modules/ajv/scripts/compile-dots.js node_modules/ajv/lib lib","eslint":"eslint *.js spec","test-spec":"mocha spec/*.spec.js -R spec","test-cov":"nyc npm run test-spec","test":"npm run eslint && npm run build && npm run test-cov","prepublish":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/epoberezkin/ajv-errors.git"},"keywords":["ajv","json-schema","validator","error","messages"],"author":"","license":"MIT","bugs":{"url":"https://github.com/epoberezkin/ajv-errors/issues"},"homepage":"https://github.com/epoberezkin/ajv-errors#readme","peerDependencies":{"ajv":">=5.0.0"},"devDependencies":{"ajv":"^5.0.0","coveralls":"^2.11.16","dot":"^1.1.1","eslint":"^3.17.0","glob":"^7.1.1","js-beautify":"^1.6.12","mocha":"^3.2.0","nyc":"^10.1.2","pre-commit":"^1.2.2"},"nyc":{"exclude":["**/spec/**","node_modules"],"reporter":["lcov","text-summary"]},"gitHead":"463b2a6dd8b806b0b22bf1a19b55b7bd5141fb48","_id":"ajv-errors@0.4.0","_shasum":"22f351b6faafdb65c99a04e48d9c0ef608649138","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"anonymous","email":"e.poberezkin@me.com"},"maintainers":[{"name":"anonymous","email":"e.poberezkin@me.com"}],"dist":{"shasum":"22f351b6faafdb65c99a04e48d9c0ef608649138","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/ajv-errors/-/ajv-errors-0.4.0.tgz","integrity":"sha512-VnMlPELKcrUA/JIVWLiDKsBt7oNjEnUg6y41LGclYI3pHrMqH46RF/SfBFsRZ9zzFS9Fg/MFEm888ryXsRQvxg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCgi6zDovDlG+2pYNU9RBq9K5O08aXUp90hCX59wLI31QIgA0Xc3cAZXF8/cZsAQXJywH34R1qxVqGlPt/EBdw5FNg="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/ajv-errors-0.4.0.tgz_1494366397805_0.6618154644966125"},"directories":{}},"0.5.0":{"name":"ajv-errors","version":"0.5.0","description":"Custom error messages in JSON-Schema for Ajv validator","main":"index.js","files":["lib"],"scripts":{"build":"node node_modules/ajv/scripts/compile-dots.js node_modules/ajv/lib lib","eslint":"eslint *.js spec","test-spec":"mocha spec/*.spec.js -R spec","test-cov":"nyc npm run test-spec","test":"npm run eslint && npm run build && npm run test-cov","prepublish":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/epoberezkin/ajv-errors.git"},"keywords":["ajv","json-schema","validator","error","messages"],"author":"","license":"MIT","bugs":{"url":"https://github.com/epoberezkin/ajv-errors/issues"},"homepage":"https://github.com/epoberezkin/ajv-errors#readme","peerDependencies":{"ajv":">=5.0.0"},"devDependencies":{"ajv":"^5.0.0","coveralls":"^2.11.16","dot":"^1.1.1","eslint":"^3.17.0","glob":"^7.1.1","js-beautify":"^1.6.12","mocha":"^3.2.0","nyc":"^10.1.2","pre-commit":"^1.2.2"},"nyc":{"exclude":["**/spec/**","node_modules"],"reporter":["lcov","text-summary"]},"gitHead":"6896050438a254710a674e52802087de0a7d0eb6","_id":"ajv-errors@0.5.0","_shasum":"e0df4940776e36fa7084c7944c636ac5ea9b747a","_from":".","_npmVersion":"2.15.9","_nodeVersion":"4.6.1","_npmUser":{"name":"anonymous","email":"e.poberezkin@me.com"},"maintainers":[{"name":"anonymous","email":"e.poberezkin@me.com"}],"dist":{"shasum":"e0df4940776e36fa7084c7944c636ac5ea9b747a","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/ajv-errors/-/ajv-errors-0.5.0.tgz","integrity":"sha512-kom6KnHxbTBavppPD5TtCOJC1iVNFW9qW3e8gQOYNbTb99CSylJX6TTintf3jHI1pq/4tze/MqCIpbsfyFe0wg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID9qY/MS8xeAdrgwV7FwAaOmSTgFHi2rzrNIuONxAjANAiBsSuOwkWjqPeghQC2KZyIXoqbm8pWsPHZGUXPuqsWpGw=="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ajv-errors-0.5.0.tgz_1495899292681_0.15062517416663468"},"directories":{}},"1.0.0":{"name":"ajv-errors","version":"1.0.0","description":"Custom error messages in JSON-Schema for Ajv validator","main":"index.js","files":["lib"],"scripts":{"build":"node node_modules/ajv/scripts/compile-dots.js node_modules/ajv/lib lib","eslint":"eslint *.js spec","test-spec":"mocha spec/*.spec.js -R spec","test-cov":"nyc npm run test-spec","test":"npm run eslint && npm run build && npm run test-cov","prepublish":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/epoberezkin/ajv-errors.git"},"keywords":["ajv","json-schema","validator","error","messages"],"author":"","license":"MIT","bugs":{"url":"https://github.com/epoberezkin/ajv-errors/issues"},"homepage":"https://github.com/epoberezkin/ajv-errors#readme","peerDependencies":{"ajv":">=5.0.0"},"devDependencies":{"ajv":"^5.0.0","coveralls":"^2.11.16","dot":"^1.1.1","eslint":"^3.17.0","glob":"^7.1.1","js-beautify":"^1.6.12","mocha":"^3.2.0","nyc":"^10.1.2","pre-commit":"^1.2.2"},"nyc":{"exclude":["**/spec/**","node_modules"],"reporter":["lcov","text-summary"]},"gitHead":"99e3352b1b3544efc8ec9c7d40e8e0e4fb76545d","_id":"ajv-errors@1.0.0","_shasum":"ecf021fa108fd17dfb5e6b383f2dd233e31ffc59","_from":".","_npmVersion":"2.15.9","_nodeVersion":"4.6.1","_npmUser":{"name":"anonymous","email":"e.poberezkin@me.com"},"maintainers":[{"name":"anonymous","email":"e.poberezkin@me.com"}],"dist":{"shasum":"ecf021fa108fd17dfb5e6b383f2dd233e31ffc59","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/ajv-errors/-/ajv-errors-1.0.0.tgz","integrity":"sha512-HZzChtp4F1FIhfQ7i62E3Tliy+Bjh0lkebSOxGYSQidCHOEZ5g6Obvc4A3gucsKo3K5+LYeI7ZzMwORE2k4oSA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICI8kc7XB0GPH1vpPriRSxZ4eETW8dezdvV1a3D7AgqUAiAinQhwGcWcQaMIC+9uWsiJqaQTp6o90/rblV8r8Ahr3g=="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ajv-errors-1.0.0.tgz_1495907979993_0.6698060610797256"},"directories":{}},"1.0.1":{"name":"ajv-errors","version":"1.0.1","description":"Custom error messages in JSON-Schema for Ajv validator","main":"index.js","scripts":{"build":"node node_modules/ajv/scripts/compile-dots.js node_modules/ajv/lib lib","eslint":"eslint *.js spec","test-spec":"mocha spec/*.spec.js -R spec","test-cov":"nyc npm run test-spec","test":"npm run eslint && npm run build && npm run test-cov","prepublish":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/epoberezkin/ajv-errors.git"},"keywords":["ajv","json-schema","validator","error","messages"],"author":"","license":"MIT","bugs":{"url":"https://github.com/epoberezkin/ajv-errors/issues"},"homepage":"https://github.com/epoberezkin/ajv-errors#readme","peerDependencies":{"ajv":">=5.0.0"},"devDependencies":{"ajv":"^5.0.0","coveralls":"^2.11.16","dot":"^1.1.1","eslint":"^3.17.0","glob":"^7.1.1","js-beautify":"^1.6.12","mocha":"^3.2.0","nyc":"^10.1.2","pre-commit":"^1.2.2"},"nyc":{"exclude":["**/spec/**","node_modules"],"reporter":["lcov","text-summary"]},"gitHead":"5d134394acb6429840438cc262c36c76d91e356c","_id":"ajv-errors@1.0.1","_npmVersion":"5.6.0","_nodeVersion":"10.0.0","_npmUser":{"name":"anonymous","email":"e.poberezkin@me.com"},"dist":{"integrity":"sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==","shasum":"f35986aceb91afadec4102fbd85014950cefa64d","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/ajv-errors/-/ajv-errors-1.0.1.tgz","fileCount":7,"unpackedSize":41660,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcDX6nCRA9TVsSAnZWagAAu1sP/R1PmaZCddDScGEKSaDw\npqT+zr5jNjcjyX24Pi8uDye/QwvTdAnqO8kqzg6ZHWJk78kmOw3WsqBGk8S9\nzMDXPJweSTWAZvrNYRiGfchCt9lLuuTdGjvgYxGrTEFiUdEXl9U6SScTxs7X\npy9Vd8hfdTa8TKPxWt8Aj7ELTM13Er71B8V82J63k42YomtsMssxER5d2mqx\nOt92KJvlu+w/cvVzjAS1QquBybVzUwlWWTGzxP/SdN6Z0EzPAT9XoKyr0aeg\n2q+6C0+j88ObOP2tMBS5VOl0E5HTB/1lb0VPVZkMEEDedmnT/bj5r+kSnVKU\nTYQRsLb1VsbYqtHWyCIS996DxtfiAh8hUchHJYSdCSz4eiOkteYRvGYKQlYa\n4t/T9EmDpe6HH7GYKujMIFKSSTZRSAIWwenAlARWSEscZlXyD5ql2CiSLdRh\n2UOWf/DK8QzjbaBX4Iki9W+8ResOA/2nA15o2YT9RSfeX10qymAckwkgU/U4\nRB1QSKFpkdpYvrhcdxSnPIGXB5nhmRik/NP+VbdRz8Fqm4Rjz4LmUg4wqkq4\nbs9JsnrqSsknsNrMxB83nBR0L/iHHWfyJZAIow/KWYHF3cIU5CvmBQQIRDc+\nJ6zgHs6x80YIb0qWey/Wz98rJb2L1uYSI3j8TgBzePf/B+g2ozqKS9+pou0K\n6Z7v\r\n=0kuF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFRdUgIJqmhPtW6l7HPBcS3vPfaoyZvDejmfM9EE75uDAiEAhqXFz0bjL2pBiL6oJ14grATvVwmcimPSB8iaVgT/gwY="}]},"maintainers":[{"name":"anonymous","email":"e.poberezkin@me.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ajv-errors_1.0.1_1544388262825_0.438145911563087"},"_hasShrinkwrap":false},"2.0.0-beta.0":{"name":"ajv-errors","version":"2.0.0-beta.0","description":"Custom error messages in JSON-Schema for Ajv validator","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"rm -rf dist && tsc","eslint":"eslint \"src/**/*.*s\" \"spec/**/*.*s\"","prettier:write":"prettier --write \"./**/*.{md,json,ts,js}\"","prettier:check":"prettier --list-different \"./**/*.{md,json,ts,js}\"","test-spec":"jest \"spec/*.ts\"","test-cov":"jest \"spec/*.ts\" --coverage","test":"npm run eslint && npm run build && npm run test-cov","prepublish":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/epoberezkin/ajv-errors.git"},"keywords":["ajv","json-schema","validator","error","messages"],"author":"","license":"MIT","bugs":{"url":"https://github.com/epoberezkin/ajv-errors/issues"},"homepage":"https://github.com/epoberezkin/ajv-errors#readme","peerDependencies":{"ajv":"^7.0.0-beta.7"},"devDependencies":{"@ajv-validator/config":"^0.3.0","@types/jest":"^26.0.15","@types/node":"^14.14.7","@typescript-eslint/eslint-plugin":"^4.7.0","@typescript-eslint/parser":"^4.7.0","ajv":"^7.0.0-beta.7","eslint":"^7.2.0","eslint-config-prettier":"^6.15.0","husky":"^4.3.0","jest":"^26.6.3","lint-staged":"^10.5.1","pre-commit":"^1.2.2","prettier":"^2.1.2","ts-jest":"^26.4.4","typescript":"^4.0.5"},"prettier":"@ajv-validator/config/prettierrc.json","husky":{"hooks":{"pre-commit":"lint-staged && npm test"}},"lint-staged":{"*.{md,json,yaml,js,ts}":"prettier --write"},"readme":"# ajv-errors\n\nCustom error messages in JSON-Schema for Ajv validator\n\n[![Build Status](https://travis-ci.org/ajv-validator/ajv-errors.svg?branch=master)](https://travis-ci.org/ajv-validator/ajv-errors)\n[![npm](https://img.shields.io/npm/v/ajv-errors.svg)](https://www.npmjs.com/package/ajv-errors)\n[![npm (beta)](https://img.shields.io/npm/v/ajv-errors/beta)](https://www.npmjs.com/package/ajv-errors/v/2.0.0-beta.0)\n[![Coverage Status](https://coveralls.io/repos/github/ajv-validator/ajv-errors/badge.svg?branch=master)](https://coveralls.io/github/ajv-validator/ajv-errors?branch=master)\n[![Gitter](https://img.shields.io/gitter/room/ajv-validator/ajv.svg)](https://gitter.im/ajv-validator/ajv)\n\n**Please note**\n\najv-errors v2-beta supports [ajv v7-beta](https://github.com/ajv-validator/ajv).\n\nIf you are using ajv v6, you should use [ajv-errors v1](https://github.com/ajv-validator/ajv-errors/tree/v1)\n\n## Contents\n\n- [Install](#install)\n- [Usage](#usage)\n  - [Single message](#single-message)\n  - [Messages for keywords](#messages-for-keywords)\n  - [Messages for properties and items](#messages-for-properties-and-items)\n  - [Default message](#default-message)\n- [Templates](#templates)\n- [Options](#options)\n- [Supporters, Enterprise support, Security contact](#supporters)\n- [License](#license)\n\n## Install\n\nv2-beta:\n\n```\nnpm install ajv-errors@beta\n```\n\nv1:\n\n```\nnpm install ajv-errors\n```\n\n## Usage\n\nAdd the keyword `errorMessages` to Ajv instance:\n\n```javascript\nconst Ajv = require(\"ajv\").default\nconst ajv = new Ajv({allErrors: true})\n// Ajv option allErrors is required\nrequire(\"ajv-errors\")(ajv /*, {singleError: true} */)\n```\n\nSee [Options](#options) below.\n\n### Single message\n\nReplace all errors in the current schema and subschemas with a single message:\n\n```javascript\nconst schema = {\n  type: \"object\",\n  required: [\"foo\"],\n  properties: {\n    foo: {type: \"integer\"},\n  },\n  additionalProperties: false,\n  errorMessage: \"should be an object with an integer property foo only\",\n}\n\nconst validate = ajv.compile(schema)\nconsole.log(validate({foo: \"a\", bar: 2})) // false\nconsole.log(validate.errors) // processed errors\n```\n\nProcessed errors:\n\n```javascript\n;[\n  {\n    keyword: \"errorMessage\",\n    message: \"should be an object with an integer property foo only\",\n    // ...\n    params: {\n      errors: [\n        {keyword: \"additionalProperties\", dataPath: \"\" /* , ... */},\n        {keyword: \"type\", dataPath: \".foo\" /* , ... */},\n      ],\n    },\n  },\n]\n```\n\n### Messages for keywords\n\nReplace errors for certain keywords in the current schema only:\n\n```javascript\nconst schema = {\n  type: \"object\",\n  required: [\"foo\"],\n  properties: {\n    foo: {type: \"integer\"},\n  },\n  additionalProperties: false,\n  errorMessage: {\n    type: \"should be an object\", // will not replace internal \"type\" error for the property \"foo\"\n    required: \"should have property foo\",\n    additionalProperties: \"should not have properties other than foo\",\n  },\n}\n\nconst validate = ajv.compile(schema)\nconsole.log(validate({foo: \"a\", bar: 2})) // false\nconsole.log(validate.errors) // processed errors\n```\n\nProcessed errors:\n\n```javascript\n;[\n  {\n    // original error\n    keyword: type,\n    dataPath: \"/foo\",\n    // ...\n    message: \"should be integer\",\n  },\n  {\n    // generated error\n    keyword: \"errorMessage\",\n    message: \"should not have properties other than foo\",\n    // ...\n    params: {\n      errors: [{keyword: \"additionalProperties\" /* , ... */}],\n    },\n  },\n]\n```\n\nFor keywords \"required\" and \"dependencies\" it is possible to specify different messages for different properties:\n\n```javascript\nconst schema = {\n  type: \"object\",\n  required: [\"foo\", \"bar\"],\n  properties: {\n    foo: {type: \"integer\"},\n    bar: {type: \"string\"},\n  },\n  errorMessage: {\n    type: \"should be an object\", // will not replace internal \"type\" error for the property \"foo\"\n    required: {\n      foo: 'should have an integer property \"foo\"',\n      bar: 'should have a string property \"bar\"',\n    },\n  },\n}\n```\n\n### Messages for properties and items\n\nReplace errors for properties / items (and deeper), regardless where in schema they were created:\n\n```javascript\nconst schema = {\n  type: \"object\",\n  required: [\"foo\", \"bar\"],\n  allOf: [\n    {\n      properties: {\n        foo: {type: \"integer\", minimum: 2},\n        bar: {type: \"string\", minLength: 2},\n      },\n      additionalProperties: false,\n    },\n  ],\n  errorMessage: {\n    properties: {\n      foo: \"data.foo should be integer >= 2\",\n      bar: \"data.bar should be string with length >= 2\",\n    },\n  },\n}\n\nconst validate = ajv.compile(schema)\nconsole.log(validate({foo: 1, bar: \"a\"})) // false\nconsole.log(validate.errors) // processed errors\n```\n\nProcessed errors:\n\n```javascript\n;[\n  {\n    keyword: \"errorMessage\",\n    message: \"data.foo should be integer >= 2\",\n    dataPath: \"/foo\",\n    // ...\n    params: {\n      errors: [{keyword: \"minimum\" /* , ... */}],\n    },\n  },\n  {\n    keyword: \"errorMessage\",\n    message: \"data.bar should be string with length >= 2\",\n    dataPath: \"/bar\",\n    // ...\n    params: {\n      errors: [{keyword: \"minLength\" /* , ... */}],\n    },\n  },\n]\n```\n\n### Default message\n\nWhen the value of keyword `errorMessage` is an object you can specify a message that will be used if any error appears that is not specified by keywords/properties/items using `_` property:\n\n```javascript\nconst schema = {\n  type: \"object\",\n  required: [\"foo\", \"bar\"],\n  allOf: [\n    {\n      properties: {\n        foo: {type: \"integer\", minimum: 2},\n        bar: {type: \"string\", minLength: 2},\n      },\n      additionalProperties: false,\n    },\n  ],\n  errorMessage: {\n    type: \"data should be an object\",\n    properties: {\n      foo: \"data.foo should be integer >= 2\",\n      bar: \"data.bar should be string with length >= 2\",\n    },\n    _: 'data should have properties \"foo\" and \"bar\" only',\n  },\n}\n\nconst validate = ajv.compile(schema)\nconsole.log(validate({})) // false\nconsole.log(validate.errors) // processed errors\n```\n\nProcessed errors:\n\n```javascript\n;[\n  {\n    keyword: \"errorMessage\",\n    message: 'data should be an object with properties \"foo\" and \"bar\" only',\n    dataPath: \"\",\n    // ...\n    params: {\n      errors: [{keyword: \"required\" /* , ... */}, {keyword: \"required\" /* , ... */}],\n    },\n  },\n]\n```\n\nThe message in property `_` of `errorMessage` replaces the same errors that would have been replaced if `errorMessage` were a string.\n\n## Templates\n\nCustom error messages used in `errorMessage` keyword can be templates using [JSON-pointers](https://tools.ietf.org/html/rfc6901) or [relative JSON-pointers](http://tools.ietf.org/html/draft-luff-relative-json-pointer-00) to data being validated, in which case the value will be interpolated. Also see [examples](https://gist.github.com/geraintluff/5911303) of relative JSON-pointers.\n\nThe syntax to interpolate a value is `${<pointer>}`.\n\nThe values used in messages will be JSON-stringified:\n\n- to differentiate between `false` and `\"false\"`, etc.\n- to support structured values.\n\nExample:\n\n```javascript\nconst schema = {\n  type: \"object\",\n  properties: {\n    size: {\n      type: \"number\",\n      minimum: 4,\n    },\n  },\n  errorMessage: {\n    properties: {\n      size: \"size should be a number bigger or equal to 4, current value is ${/size}\",\n    },\n  },\n}\n```\n\n## Options\n\nDefaults:\n\n```javascript\n{\n  keepErrors: false,\n  singleError: false\n}\n```\n\n- _keepErrors_: keep original errors. Default is to remove matched errors (they will still be available in `params.errors` property of generated error). If an error was matched and included in the error generated by `errorMessage` keyword it will have property `emUsed: true`.\n- _singleError_: create one error for all keywords used in `errorMessage` keyword (error messages defined for properties and items are not merged because they have different dataPaths). Multiple error messages are concatenated. Option values:\n  - `false` (default): create multiple errors, one for each message\n  - `true`: create single error, messages are concatenated using `\"; \"`\n  - non-empty string: this string is used as a separator to concatenate messages\n\n## Supporters\n\n[Roger Kepler](https://www.linkedin.com/in/rogerkepler/)\n\n## Enterprise support\n\najv-errors package is a part of [Tidelift enterprise subscription](https://tidelift.com/subscription/pkg/npm-ajv-errors?utm_source=npm-ajv-errors&utm_medium=referral&utm_campaign=enterprise&utm_term=repo) - it provides a centralised commercial support to open-source software users, in addition to the support provided by software maintainers.\n\n## Security contact\n\nTo report a security vulnerability, please use the\n[Tidelift security contact](https://tidelift.com/security).\nTidelift will coordinate the fix and disclosure. Please do NOT report security vulnerability via GitHub issues.\n\n## License\n\n[MIT](https://github.com/epoberezkin/ajv-errors/blob/master/LICENSE)\n","readmeFilename":"README.md","gitHead":"19fac02dda893fc940bd86deb6fb09b0b14272aa","_id":"ajv-errors@2.0.0-beta.0","_nodeVersion":"14.14.0","_npmVersion":"6.14.9","dist":{"integrity":"sha512-P3UwTN6Beq88yyXs8CGVQXdGHD9Mdj4umYf4lkmjT3bm39R9H1MWCa64L4A7t+wgKVMIe0axoVPN4ALaWI7bvA==","shasum":"400b9e8e574e353ad1d4e234c6119da4a0aec1c0","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/ajv-errors/-/ajv-errors-2.0.0-beta.0.tgz","fileCount":7,"unpackedSize":52593,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfumHNCRA9TVsSAnZWagAAuf4P/2Treqs64U4VJuYvXnTl\nDnQolsPElXv3mcyWfLDac2CbSy3RabGNlSP/dlWX8crw6Pr7ajZySo9HqSUE\nGT5WZoYBevE98flSlPi5bTMvJDF6JTD8E8K6TDjWaW3IUMdywsac76Ou8QdK\n1zK8C/aM5jrFJUh3GJW5AbW1Vsl6DJr9nUk5yDi4ghJV7l9iKJDlOQZcafCI\nhPqMCh9o9A7U+/vOeR7JIQeHLqDyDnAL0j69HpfrUULzJ/u/UggYCjl0YCxr\nXYpuVRQUX7jZNO+thN69+K0Wd+ysv2UwGYoWOMJ/n+v8T8K4DK2+ddSrYWWA\naO4U6VyuFrnciAAlR5EH/5tyIfkXFwlJ8ll3mijLWgzo8O5Yafe2yod0Jt/p\nR7yKdSv8N/SziCiVJQGTLh8RzIdzqPepy/PI8mTnlcBTDU9gkjzW5zNBnx3X\noFI9b2l3PkXoozMrT7Dr5eXcAHlKo3EQnzLknwLG1M3q2EljMn4XSOACZa0m\nX7TSR5EpSGHoSKkTDhHFSetqYwxFYiMXC0HrBCX58GJvt/dikgoP52vsc3zf\nd9cKDfbXmoKlh4EjIerWOPUv7zxM0O3iByC/6EhzGgaYkhVT/FprjF/O0GOL\n3I1Z33zem5NnYnzVO0dpW8pd3yjLVbUkNFtEax3Bh+QN6gVUe442ErVv9DDx\nb32j\r\n=mMw1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCoDxKwY7T5doGDthZQPhESYEvhDu3ynmWryQSRHxrHSQIhAOYkTo8RwzoCmD5MoFPpcLciXjQyOWTcXgjZV01OeWNM"}]},"_npmUser":{"name":"anonymous","email":"e.poberezkin@me.com"},"directories":{},"maintainers":[{"name":"anonymous","email":"e.poberezkin@me.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ajv-errors_2.0.0-beta.0_1606050253498_0.754455729832824"},"_hasShrinkwrap":false},"2.0.0":{"name":"ajv-errors","version":"2.0.0","description":"Custom error messages in JSON-Schema for Ajv validator","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"rm -rf dist && tsc","eslint":"eslint \"src/**/*.*s\" \"spec/**/*.*s\"","prettier:write":"prettier --write \"./**/*.{md,json,ts,js}\"","prettier:check":"prettier --list-different \"./**/*.{md,json,ts,js}\"","test-spec":"jest \"spec/*.ts\"","test-cov":"jest \"spec/*.ts\" --coverage","test":"npm run prettier:check && npm run eslint && npm run build && npm run test-cov","prepublish":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/epoberezkin/ajv-errors.git"},"keywords":["ajv","json-schema","validator","error","messages"],"author":"","license":"MIT","bugs":{"url":"https://github.com/epoberezkin/ajv-errors/issues"},"homepage":"https://github.com/epoberezkin/ajv-errors#readme","peerDependencies":{"ajv":"^7.0.0"},"devDependencies":{"@ajv-validator/config":"^0.3.0","@types/jest":"^26.0.15","@types/node":"^14.14.7","@typescript-eslint/eslint-plugin":"^4.7.0","@typescript-eslint/parser":"^4.7.0","ajv":"^7.0.0","eslint":"^7.2.0","eslint-config-prettier":"^7.0.0","husky":"^4.3.0","jest":"^26.6.3","lint-staged":"^10.5.1","pre-commit":"^1.2.2","prettier":"^2.1.2","ts-jest":"^26.4.4","typescript":"^4.0.5"},"prettier":"@ajv-validator/config/prettierrc.json","husky":{"hooks":{"pre-commit":"lint-staged && npm test"}},"lint-staged":{"*.{md,json,yaml,js,ts}":"prettier --write"},"gitHead":"47a40b5c68a500315188d41e1102ce6505528293","_id":"ajv-errors@2.0.0","_nodeVersion":"14.15.1","_npmVersion":"6.14.8","dist":{"integrity":"sha512-Qi+I07e2Kc7Tgza7cZMvROyWuWmandN0BLbAiQUGLAMN/IfwIyg5kjg1qz/+q7p+uJ/x3THplnuGmihg/+WnXg==","shasum":"d48231d8de44bf52c517bbfcb298bb628ead4f89","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/ajv-errors/-/ajv-errors-2.0.0.tgz","fileCount":7,"unpackedSize":52886,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf2SQdCRA9TVsSAnZWagAAeGAP/1QY2QsJvXg60DB4Q9GE\nFuefhKZV9tzstWBQr4b4mkQThOr8sTYP232IBj7sxKrPACmWDr9dyXCJPa+R\n96cm2e3eK2SCyd73gFXmllKlAbvnJ3eivd+MErqX6tH8rIWj+5eEiFcmc/BF\ntP71pmOnYAPKBrwx/9UEuSZTH1feNymLc8N6smJ+WKc7LWLGNNarL7ulpIUZ\nUD/sAmueQ3sAyCQvIxs0tXEAUA0v1EUATGg+1XW6ayLUcRGSxSyhs5i5n6Cf\nYlAjK6MioDkh3smMnGEu1RerddS49RkadtaQhkbzxtcHDa3WG1vcoN32vMpA\nEhm6U8sJ0sIP6fF9BMd/wqt/VC5gECH5bWLCRzBSNZPe3fQr3sUWl0+Kl1T/\nukH9fZ54tUs/DPGFRKQDndKHTCsbSlmv8Cl0ud4dq6uJG1g0KtTe7/rtoa08\nV74ecGQGHHtnmOmz1Feh9BJeNlR2IPvCb/UnFnXuep7kRxk42yC1r27aHHFJ\nkkAVJwk/WPYDti59HPaCMJZXAScECkjDWI16zORplwhxGfNFq2UKv9fEddo5\npF/nAl8wzYtlfesaCaMPqtsKrBANVq/gmwfMEJ+icBUI0Lc+uj+x7eqqFeZ9\nKXCf9I1UNee45GwRhCQP4KKRQrXsLsIo0U9h000+giT0ked+tM3hnPN16lXt\nELG+\r\n=jqLA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAdeYbvEuhTv0bsOemVKr5WG1h9BtTcwN/J9GGGp6RTIAiAdnnbvScf6Kj8L7Hgc+F7OsWDt0r39qfRfV9kfgteEzg=="}]},"_npmUser":{"name":"anonymous","email":"e.poberezkin@me.com"},"directories":{},"maintainers":[{"name":"anonymous","email":"e.poberezkin@me.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ajv-errors_2.0.0_1608066077227_0.7667282838683316"},"_hasShrinkwrap":false},"2.0.1":{"name":"ajv-errors","version":"2.0.1","description":"Custom error messages in JSON-Schema for Ajv validator","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"rm -rf dist && tsc","eslint":"eslint \"src/**/*.*s\" \"spec/**/*.*s\"","prettier:write":"prettier --write \"./**/*.{json,ts,js}\"","prettier:check":"prettier --list-different \"./**/*.{json,ts,js}\"","test-spec":"jest \"spec/*.ts\"","test-cov":"jest \"spec/*.ts\" --coverage","test":"npm run prettier:check && npm run eslint && npm run build && npm run test-cov","prepublish":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/epoberezkin/ajv-errors.git"},"keywords":["ajv","json-schema","validator","error","messages"],"author":"","license":"MIT","bugs":{"url":"https://github.com/epoberezkin/ajv-errors/issues"},"homepage":"https://github.com/epoberezkin/ajv-errors#readme","peerDependencies":{"ajv":"^7.0.0"},"devDependencies":{"@ajv-validator/config":"^0.3.0","@types/jest":"^26.0.15","@types/node":"^14.14.7","@typescript-eslint/eslint-plugin":"^4.7.0","@typescript-eslint/parser":"^4.7.0","ajv":"^7.0.0","eslint":"^7.2.0","eslint-config-prettier":"^7.0.0","husky":"^5.1.3","jest":"^26.6.3","lint-staged":"^10.5.1","prettier":"^2.1.2","ts-jest":"^26.4.4","typescript":"^4.0.5"},"prettier":"@ajv-validator/config/prettierrc.json","husky":{"hooks":{"pre-commit":"lint-staged && npm test"}},"lint-staged":{"*.{json,yaml,js,ts}":"prettier --write"},"gitHead":"623c07b3dab96482d66fd592e47d74c4510b5d8a","_id":"ajv-errors@2.0.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-hGH2npS6nUdBr61gf3rcG8R04DwwgQsdt6goZGmaZHYRHtLF948Emsdta/bcP9AD6/X1jnHm9lMbgujOQG7W6A==","shasum":"af5a199a0de65e6c5be738e108ad480578898a9f","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/ajv-errors/-/ajv-errors-2.0.1.tgz","fileCount":7,"unpackedSize":53068,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSTdkCRA9TVsSAnZWagAAKQ8QAJmco/eLHZs/WPNfNsTb\nTdUK8ypiXuJvCpRdEvzv/IOyYHHYNtldfm6/SeGrXVM4Xrr/p0Mojm8qJfkK\nRbucM0Bs1n1hOZ9EiWuc/hHyoePN1sn474DmOXJt7c/ycTCZTbFKxfsUT3an\nHgQydrehpvPQOira+jekAvjuAxoyPjISyzOaA402d3pGE5ighRvtN9FHKZOH\nrh7GIIV7aN8l5yTyqUAAV9PphQ+N/XE4cfGhPeuNPrbGOPjOZPa/5FrOGd/3\nKRRwdBEnUJRRlx2JfZRELmnu2pnZ1jTS+aYDE67USGIASemjs5QE3HR9i6BV\npUjTUU9ElUq8Vmc/hd4YGUg7MeQgP9IDqulmPnrUGzwqQgMKD9cjPFWwWRy5\nYRV7USphZsR6z5o8AA2NXX1NhTU/ROUb1YY1Yypo6XZM8SzT6Mq0346Rw6z2\nA3gE5jRHHGYNwHZHIo/XefYGejVMKncZivBybJUkqDLX2m4RJcVTzmFdbdes\nOFZEZ7ZoZjpQruJW1+EWfoZKdZ8jFmJ9RBqmNtJbL6LjnR5UniPswAV0h1+s\n+2dG2xSwEAueTjZNz4F5J4/m6qFDeB6Of9x0m8frL/82l6/JMfzwp3MpandQ\nRdBJIsKIbvcgMWtczJD/DfbQKkmdNwq7YTCOhXGEInNB66i0n3GfeBYP36zT\nlLoM\r\n=jd43\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEZiZbnv1x1VFhT0lvtvykLg5ITXgBTA2XSwskqKAC49AiEAmatTtxtQviNhC9n9Oyi81QJYPqwKzVR2JwKNq2y28Zk="}]},"_npmUser":{"name":"anonymous","email":"e.poberezkin@me.com"},"directories":{},"maintainers":[{"name":"anonymous","email":"e.poberezkin@me.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ajv-errors_2.0.1_1615411043722_0.4779803299011609"},"_hasShrinkwrap":false},"3.0.0":{"name":"ajv-errors","version":"3.0.0","description":"Custom error messages in JSON Schemas for Ajv validator","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"rm -rf dist && tsc","eslint":"eslint \"src/**/*.*s\" \"spec/**/*.*s\"","prettier:write":"prettier --write \"./**/*.{json,ts,js}\"","prettier:check":"prettier --list-different \"./**/*.{json,ts,js}\"","test-spec":"jest \"spec/*.ts\"","test-cov":"jest \"spec/*.ts\" --coverage","test":"npm run prettier:check && npm run eslint && npm run build && npm run test-cov","prepublish":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/epoberezkin/ajv-errors.git"},"keywords":["ajv","json-schema","validator","error","messages"],"author":"","license":"MIT","bugs":{"url":"https://github.com/epoberezkin/ajv-errors/issues"},"homepage":"https://github.com/epoberezkin/ajv-errors#readme","peerDependencies":{"ajv":"^8.0.1"},"devDependencies":{"@ajv-validator/config":"^0.3.0","@types/jest":"^26.0.15","@types/node":"^14.14.7","@typescript-eslint/eslint-plugin":"^4.7.0","@typescript-eslint/parser":"^4.7.0","ajv":"^8.0.1","eslint":"^7.2.0","eslint-config-prettier":"^7.0.0","husky":"^5.1.3","jest":"^26.6.3","lint-staged":"^10.5.1","prettier":"^2.1.2","ts-jest":"^26.4.4","typescript":"^4.0.5"},"prettier":"@ajv-validator/config/prettierrc.json","husky":{"hooks":{"pre-commit":"lint-staged && npm test"}},"lint-staged":{"*.{json,yaml,js,ts}":"prettier --write"},"gitHead":"7efe8c29c3ea461eef29335e0199742dbc18e791","_id":"ajv-errors@3.0.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-V3wD15YHfHz6y0KdhYFjyy9vWtEVALT9UrxfN3zqlI6dMioHnJrqOYfyPKol3oqrnCM9uwkcdCwkJ0WUcbLMTQ==","shasum":"e54f299f3a3d30fe144161e5f0d8d51196c527bc","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/ajv-errors/-/ajv-errors-3.0.0.tgz","fileCount":7,"unpackedSize":53233,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgX7iTCRA9TVsSAnZWagAAlUAQAJ/wtbLOi+ebNW6JpzTu\nM7qYiN1gRpk6fBp0jkYngzEqBsDE5dlExsLC5Zldmxk7n8tcS5f95nCPpzD0\ncHrD/SZGLcktBw4BJgtAo7LCZnc2F1zigE5fefBNnsYkFdAZbTryOG6wgAtw\n9tm5drPa9cyprSF7JhfUHea8m34s2MFgizYnjlr/Rvt7zWYvKaHHnxn/1jS9\nCmtt9r4gDDndJsl0gGopHhrOxjJGIED8yZfnuA6uUNeQ7fGvIDTFPcnR7RcM\n5xIntPhbW6waV1Q/BSBLkrLRL8Dz41DrQRlFL5smjFio3aTSLdqLAu6waSSp\n50AL52t1uQZyjXtosJOYv2CBEqm1Gl2EhplV7775acEZDXbgJ+T3iYzaYTAS\nibeyiKMf52AmWPSD+wvAXupsr/R7zK5OwiVg5qCkNOridCTxon8L//CQTuBc\nDnInmT0dJvjRLr04xg0pWR+cGkfcVbUzxmFwxttKFoK/TXLOwi0R/hbvwyWT\nANupN3MkvPs2I3vv7sZFrvftcaEEsJa8Sm4dwOktNskPqD9Ll44uh/ecAzkr\nu4JfhHUxBrioOFHAx3r8Mooyg4p1EAt8TpzYC9i48Qq/EUg8sCY9xlhIfdcq\nknIUzlvULZeOuuRFiMeqEF3Y+D+GrpDPxyYpp7zK3Xjb59GSTsgMAi0gqCvp\nzcLQ\r\n=LoIo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCIaK0JaqpfOcA0RijBt/KuDFPZwiCMRBVF24mbaG/znQIhAPYS/UFk2/Wg3lIx4XrM7fMATpzQSdeRUtuP5NQOd94W"}]},"_npmUser":{"name":"anonymous","email":"e.poberezkin@me.com"},"directories":{},"maintainers":[{"name":"anonymous","email":"e.poberezkin@me.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ajv-errors_3.0.0_1616885906932_0.28464778966165705"},"_hasShrinkwrap":false}},"name":"ajv-errors","time":{"modified":"2023-04-28T02:15:20.736Z","created":"2017-03-05T11:40:42.016Z","0.0.1":"2017-03-05T11:40:42.016Z","0.1.0":"2017-04-30T18:47:58.032Z","0.1.1":"2017-04-30T19:36:45.272Z","0.1.2":"2017-04-30T20:24:16.937Z","0.2.0":"2017-05-01T16:32:10.431Z","0.3.0":"2017-05-09T19:14:33.951Z","0.4.0":"2017-05-09T21:46:40.263Z","0.5.0":"2017-05-27T15:34:53.768Z","1.0.0":"2017-05-27T17:59:41.038Z","1.0.1":"2018-12-09T20:44:23.016Z","2.0.0-beta.0":"2020-11-22T13:04:13.703Z","2.0.0":"2020-12-15T21:01:17.375Z","2.0.1":"2021-03-10T21:17:23.906Z","3.0.0":"2021-03-27T22:58:27.086Z"},"readmeFilename":"README.md","homepage":"https://github.com/epoberezkin/ajv-errors#readme"}