{"_id":"@criteria/json-schema-validation","_rev":"12-0833ef9d62c41b0514751e94149d28fe","name":"@criteria/json-schema-validation","description":"Validate JSON instances using JSON Schema.","dist-tags":{"latest":"0.10.0"},"versions":{"0.1.0":{"name":"@criteria/json-schema-validation","version":"0.1.0","keywords":["json","json-schema","jsonschema","draft-04","draft04","draft-2020-12","draft202012"],"author":{"name":"Criteria Labs Pty Ltd"},"license":"MIT","_id":"@criteria/json-schema-validation@0.1.0","maintainers":[{"name":"jamesmoschou-criteria","email":"james@criteria.sh"}],"homepage":"https://github.com/criteria-labs/criteria-api-tools","bugs":{"url":"https://github.com/criteria-labs/criteria-api-tools/issues","email":"support@criteria.sh"},"dist":{"shasum":"a96ebdda16e1a16b049d9ff74535d6f832647203","tarball":"https://registry.npmjs.org/@criteria/json-schema-validation/-/json-schema-validation-0.1.0.tgz","fileCount":423,"integrity":"sha512-emsmlEVddqQGFiEBS3/3QPslAacfnR0sNTuACUNSTRsR4os998sNGcR0OIKodvlD0N1p4bapszHSqBXRu3c0Eg==","signatures":[{"sig":"MEUCIQDsiptniO1MwsWqw+nT0RVYnCQizK4Ss1vlZst8pA9uBwIgXsKICvqk++q+VNrSff2exkl8+uLOSIjq/gxENG303nM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":432531},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.12.1"},"exports":{".":"./dist/index.js","./draft-04":"./dist/draft-04.js","./draft-2020-12":"./dist/draft-2020-12.js"},"gitHead":"32021da3537a1f20484e7ae5771bf4905a81062a","scripts":{"dev":"tsc --watch","test":"jest .","build":"tsc --build"},"_npmUser":{"name":"jamesmoschou-criteria","email":"james@criteria.sh"},"repository":{"url":"git+https://github.com/criteria-labs/criteria-api-tools.git","type":"git","directory":"packages/criteria-json-schema-validation"},"_npmVersion":"8.19.2","description":"Validate JSON instances using JSON Schema.","directories":{},"_nodeVersion":"18.12.1","dependencies":{"uri-js":"^4.4.1","@criteria/json-schema":"^0.3.0","@criteria/json-pointer":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","ts-jest":"^29.0.3","typescript":"^4.9.4","@types/jest":"^29.2.4","jest-matcher-utils":"^29.3.1"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-validation_0.1.0_1693460636871_0.401540047010299","host":"s3://npm-registry-packages"}},"0.1.1":{"name":"@criteria/json-schema-validation","version":"0.1.1","keywords":["json","json-schema","jsonschema","draft-04","draft04","draft-2020-12","draft202012"],"author":{"name":"Criteria Labs Pty Ltd"},"license":"MIT","_id":"@criteria/json-schema-validation@0.1.1","maintainers":[{"name":"jamesmoschou-criteria","email":"james@criteria.sh"}],"homepage":"https://github.com/criteria-labs/criteria-api-tools","bugs":{"url":"https://github.com/criteria-labs/criteria-api-tools/issues","email":"support@criteria.sh"},"dist":{"shasum":"aab55f90e4b7bfedcd930f3f620b03260edf9821","tarball":"https://registry.npmjs.org/@criteria/json-schema-validation/-/json-schema-validation-0.1.1.tgz","fileCount":423,"integrity":"sha512-5uKFjkCvMUmMS/E0E3tUEiHzTYLxlPeGlzmrZoHnDwzYwvjaQp1Hgbzu0avT+zjxKegHn9ghOXTfUpqpsgxO/w==","signatures":[{"sig":"MEQCIFtG+AbJ3+oBFSHvd3egtjLX9fYJZBDMAgYGp9aOoZoPAiBtfB4KClOWy/SYkyRkxslMleWSU6wPeTSjzy47wzvgxw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":432743},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.12.1"},"exports":{".":"./dist/index.js","./draft-04":"./dist/draft-04.js","./draft-2020-12":"./dist/draft-2020-12.js"},"gitHead":"ab52be1e21c71ba22e62527baae6c2dccd8bc91b","scripts":{"dev":"tsc --watch","test":"jest .","build":"tsc --build"},"_npmUser":{"name":"jamesmoschou-criteria","email":"james@criteria.sh"},"repository":{"url":"git+https://github.com/criteria-labs/criteria-api-tools.git","type":"git","directory":"packages/criteria-json-schema-validation"},"_npmVersion":"8.19.2","description":"Validate JSON instances using JSON Schema.","directories":{},"_nodeVersion":"18.12.1","dependencies":{"uri-js":"^4.4.1","@criteria/json-schema":"^0.3.1","@criteria/json-pointer":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","ts-jest":"^29.0.3","typescript":"^4.9.4","@types/jest":"^29.2.4","jest-matcher-utils":"^29.3.1"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-validation_0.1.1_1693541230525_0.14849125642703176","host":"s3://npm-registry-packages"}},"0.1.2":{"name":"@criteria/json-schema-validation","version":"0.1.2","keywords":["json","json-schema","jsonschema","draft-04","draft04","draft-2020-12","draft202012"],"author":{"name":"Criteria Labs Pty Ltd"},"license":"MIT","_id":"@criteria/json-schema-validation@0.1.2","maintainers":[{"name":"jamesmoschou-criteria","email":"james@criteria.sh"}],"homepage":"https://github.com/criteria-labs/criteria-api-tools","bugs":{"url":"https://github.com/criteria-labs/criteria-api-tools/issues","email":"support@criteria.sh"},"dist":{"shasum":"ca836c1a2c3a9a35967df890b891fa81a3230489","tarball":"https://registry.npmjs.org/@criteria/json-schema-validation/-/json-schema-validation-0.1.2.tgz","fileCount":423,"integrity":"sha512-0MyEFK/Lurk77MCw8BHSheADY7r63lc6VcXgjqYMHUA9m+GvMvCU5jdp652XF3n0RotK7NOlujwp+R6etXywgg==","signatures":[{"sig":"MEQCIB5PgIzw+OJJmAOg3KNtf4XiBSEo9b4i0xYEPz5fiP/0AiBVgrOzBISA2gI8MQRcWWu/hHr355hfki5YQtG9svLgZg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":500007},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.12.1"},"exports":{".":"./dist/index.js","./draft-04":"./dist/draft-04.js","./draft-2020-12":"./dist/draft-2020-12.js"},"gitHead":"a7c9a0a562e954b6456f7fd6171320532c56317a","scripts":{"dev":"tsc --watch","test":"jest .","build":"tsc --build"},"_npmUser":{"name":"jamesmoschou-criteria","email":"james@criteria.sh"},"repository":{"url":"git+https://github.com/criteria-labs/criteria-api-tools.git","type":"git","directory":"packages/criteria-json-schema-validation"},"_npmVersion":"8.19.2","description":"Validate JSON instances using JSON Schema.","directories":{},"_nodeVersion":"18.12.1","dependencies":{"uri-js":"^4.4.1","@criteria/json-schema":"^0.3.1","@criteria/json-pointer":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","ts-jest":"^29.0.3","typescript":"^4.9.4","@types/jest":"^29.2.4","jest-matcher-utils":"^29.3.1"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-validation_0.1.2_1694392956287_0.6904309937918767","host":"s3://npm-registry-packages"}},"0.2.0":{"name":"@criteria/json-schema-validation","version":"0.2.0","keywords":["json","json-schema","jsonschema","draft-04","draft04","draft-2020-12","draft202012"],"author":{"name":"Criteria Labs Pty Ltd"},"license":"MIT","_id":"@criteria/json-schema-validation@0.2.0","maintainers":[{"name":"jamesmoschou-criteria","email":"james@criteria.sh"}],"homepage":"https://github.com/criteria-labs/criteria-api-tools","bugs":{"url":"https://github.com/criteria-labs/criteria-api-tools/issues","email":"support@criteria.sh"},"dist":{"shasum":"19c0e786ac947ab235236577c1288801f722c3b6","tarball":"https://registry.npmjs.org/@criteria/json-schema-validation/-/json-schema-validation-0.2.0.tgz","fileCount":195,"integrity":"sha512-QvaE/EKIR5BpNNLpK+FRT8XzV79VGmj4N40N46eOtxffewvX7Q9Qibv5lU7qurC+ggVBLuJmn2qagN9M3Np/BQ==","signatures":[{"sig":"MEUCIQDwJ4a2zKnP30lUxRMF++ablYM5OeHHilQ51SDmpv3CxgIgfyvJrAHhaToriSRdpNKP7jKyChpPgqMFdDyJn4KA5jQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":268069},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.12.1"},"exports":{".":"./dist/index.js","./draft-04":"./dist/draft-04.js","./draft-2020-12":"./dist/draft-2020-12.js"},"gitHead":"27f937277a7701c3f49c7b15c319b81b8024cba5","scripts":{"dev":"tsc --watch","test":"jest .","build":"tsc --build"},"_npmUser":{"name":"jamesmoschou-criteria","email":"james@criteria.sh"},"repository":{"url":"git+https://github.com/criteria-labs/criteria-api-tools.git","type":"git","directory":"packages/criteria-json-schema-validation"},"_npmVersion":"9.8.1","description":"Validate JSON instances using JSON Schema.","directories":{},"_nodeVersion":"18.18.2","dependencies":{"uri-js":"^4.4.1","@criteria/json-schema":"^0.4.0","@criteria/json-pointer":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","ts-jest":"^29.0.3","typescript":"^4.9.4","@types/jest":"^29.2.4","jest-matcher-utils":"^29.3.1"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-validation_0.2.0_1700906569234_0.4803513629000524","host":"s3://npm-registry-packages"}},"0.3.0":{"name":"@criteria/json-schema-validation","version":"0.3.0","keywords":["json","json-schema","jsonschema","draft-04","draft04","draft-2020-12","draft202012"],"author":{"name":"Criteria Labs Pty Ltd"},"license":"MIT","_id":"@criteria/json-schema-validation@0.3.0","maintainers":[{"name":"jamesmoschou-criteria","email":"james@criteria.sh"}],"homepage":"https://github.com/criteria-labs/criteria-api-tools","bugs":{"url":"https://github.com/criteria-labs/criteria-api-tools/issues","email":"support@criteria.sh"},"dist":{"shasum":"854f599f49695a97f59c1f35d53d12406c557126","tarball":"https://registry.npmjs.org/@criteria/json-schema-validation/-/json-schema-validation-0.3.0.tgz","fileCount":197,"integrity":"sha512-7ODVdFqcPSn5p5iujUz0Hzyaz+sshZ8n6U3roK3Jb/hDzo1EVLeSGsgc5bqY+3jL+jawlzWAGqP0gq215fT8Tw==","signatures":[{"sig":"MEUCIQCZXaretwfjm65Y3KHGwn3Qs+P+Uykk++aJaOLjjak5IwIgWGtSDKAKlDKgkuhZF4wYfDBUjp/uurtkpLXc3rGShLM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":270096},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.12.1"},"exports":{".":"./dist/index.js","./draft-04":"./dist/draft-04.js","./draft-2020-12":"./dist/draft-2020-12.js"},"gitHead":"a5af45edc640ab8ebbb82bdf9b4fa79046fdc19d","scripts":{"dev":"tsc --watch","test":"jest .","build":"tsc --build"},"_npmUser":{"name":"jamesmoschou-criteria","email":"james@criteria.sh"},"repository":{"url":"git+https://github.com/criteria-labs/criteria-api-tools.git","type":"git","directory":"packages/criteria-json-schema-validation"},"_npmVersion":"9.8.1","description":"Validate JSON instances using JSON Schema.","directories":{},"_nodeVersion":"18.18.2","dependencies":{"uri-js":"^4.4.1","@criteria/json-schema":"^0.4.0","@criteria/json-pointer":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","ts-jest":"^29.0.3","typescript":"^4.9.4","@types/jest":"^29.2.4","jest-matcher-utils":"^29.3.1"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-validation_0.3.0_1701398324949_0.8549697869626378","host":"s3://npm-registry-packages"}},"0.5.0":{"name":"@criteria/json-schema-validation","version":"0.5.0","keywords":["json","json-schema","jsonschema","draft-04","draft04","draft-2020-12","draft202012"],"author":{"name":"Criteria Labs Pty Ltd"},"license":"MIT","_id":"@criteria/json-schema-validation@0.5.0","maintainers":[{"name":"jamesmoschou-criteria","email":"james@criteria.sh"}],"homepage":"https://github.com/criteria-labs/criteria-api-tools","bugs":{"url":"https://github.com/criteria-labs/criteria-api-tools/issues","email":"support@criteria.sh"},"dist":{"shasum":"baa0483c4a5dee41c3fe3696df28a4c18542539e","tarball":"https://registry.npmjs.org/@criteria/json-schema-validation/-/json-schema-validation-0.5.0.tgz","fileCount":203,"integrity":"sha512-YQK/ZNYs6qMnqkdK81ebcMyNuGmCb20eFzMHLJ/J9lkpz6WB3zIJxTKAEMOXjdEra73XnHfHlZzXyby43su4dg==","signatures":[{"sig":"MEUCIQDXRAPPkUFsWCbrNtTuaeZKN60LK2XFcVRyIHEuORFjjgIgJSpzrU7AcTmplaeB+SAQQzXVnerP1hmV6wVF4o8muC4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":292299},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.12.1"},"exports":{".":"./dist/index.js","./draft-04":"./dist/draft-04.js","./draft-2020-12":"./dist/draft-2020-12.js"},"gitHead":"8c690258da0d860cd1d74e297ff33bc7aefb4065","scripts":{"dev":"tsc --watch","test":"jest .","build":"tsc --build"},"_npmUser":{"name":"jamesmoschou-criteria","email":"james@criteria.sh"},"repository":{"url":"git+https://github.com/criteria-labs/criteria-api-tools.git","type":"git","directory":"packages/criteria-json-schema-validation"},"_npmVersion":"9.8.1","description":"Validate JSON instances using JSON Schema.","directories":{},"_nodeVersion":"18.18.2","dependencies":{"uri-js":"^4.4.1","punycode":"^2.3.1","smtp-address-parser":"^1.0.10","@criteria/json-schema":"^0.5.0","@criteria/json-pointer":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","ts-jest":"^29.0.3","typescript":"^4.9.4","@types/jest":"^29.2.4","jest-matcher-utils":"^29.3.1"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-validation_0.5.0_1702530487986_0.32243188338784945","host":"s3://npm-registry-packages"}},"0.6.0":{"name":"@criteria/json-schema-validation","version":"0.6.0","keywords":["json","json-schema","jsonschema","draft-04","draft04","draft-2020-12","draft202012"],"author":{"name":"Criteria Labs Pty Ltd"},"license":"MIT","_id":"@criteria/json-schema-validation@0.6.0","maintainers":[{"name":"jamesmoschou-criteria","email":"james@criteria.sh"}],"homepage":"https://github.com/criteria-labs/criteria-api-tools","bugs":{"url":"https://github.com/criteria-labs/criteria-api-tools/issues","email":"support@criteria.sh"},"dist":{"shasum":"23150d93f78f09ef4eb28fbfdb9d46dcdcc5d6a0","tarball":"https://registry.npmjs.org/@criteria/json-schema-validation/-/json-schema-validation-0.6.0.tgz","fileCount":223,"integrity":"sha512-iK83q8gjJmqCDg2J+p5MdoypiW3biHPTds2erMLOGHPXR9qhFG4n1m7ygwWNrs9+wtF4aTB2FuLKENW8gXVyHA==","signatures":[{"sig":"MEUCID7gNonocsKw9JZCTQA1HQDZwPfTeTdxOlCCWNrpYFxfAiEAqufI5sHExiOkpFgJr4oWXQlLGLjxSR1YT8zc81Zs4uc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":313313},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.12.1"},"exports":{".":"./dist/index.js","./draft-04":"./dist/draft-04.js","./draft-2020-12":"./dist/draft-2020-12.js"},"gitHead":"17be08761295a5eb08af1f272615de55cd674108","scripts":{"dev":"tsc --watch","test":"jest .","build":"tsc --build","clean":"rimraf tsconfig.build.tsbuildinfo ./dist"},"_npmUser":{"name":"jamesmoschou-criteria","email":"james@criteria.sh"},"repository":{"url":"git+https://github.com/criteria-labs/criteria-api-tools.git","type":"git","directory":"packages/criteria-json-schema-validation"},"_npmVersion":"9.8.1","description":"Validate JSON instances using JSON Schema.","directories":{},"_nodeVersion":"18.18.2","dependencies":{"uri-js":"^4.4.1","punycode":"^2.3.1","smtp-address-parser":"^1.0.10","@criteria/json-schema":"^0.6.0","@criteria/json-pointer":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","ts-jest":"^29.0.3","typescript":"^4.9.4","@types/jest":"^29.2.4","jest-matcher-utils":"^29.3.1"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-validation_0.6.0_1702862928475_0.7913314384284373","host":"s3://npm-registry-packages"}},"0.7.0":{"name":"@criteria/json-schema-validation","version":"0.7.0","keywords":["json","json-schema","jsonschema","draft-04","draft04","draft-2020-12","draft202012"],"author":{"name":"Criteria Labs Pty Ltd"},"license":"MIT","_id":"@criteria/json-schema-validation@0.7.0","maintainers":[{"name":"jamesmoschou-criteria","email":"james@criteria.sh"}],"homepage":"https://github.com/criteria-labs/criteria-api-tools","bugs":{"url":"https://github.com/criteria-labs/criteria-api-tools/issues","email":"support@criteria.sh"},"dist":{"shasum":"0f93926fff496b23818e927fa9cd34fd90bd3dc2","tarball":"https://registry.npmjs.org/@criteria/json-schema-validation/-/json-schema-validation-0.7.0.tgz","fileCount":213,"integrity":"sha512-2+RAzweIF0x5NdQrJWgp9ns4BBSWvIhnQVjLklVGRz5aveEG6c1ErawhNILBqQlYhbgAvNMSVglSkufG7qBGwA==","signatures":[{"sig":"MEYCIQD01ufuLnlMn2N40FIyl+x1LKqcIeQtFOm2J1VWbSVzDgIhAInP2/V8CtfCkiujUnAauRnkzsHLeGlyZYmIRbw7n4Yp","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":381826},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.12.1"},"exports":{".":"./dist/index.js","./draft-04":"./dist/draft-04.js","./draft-2020-12":"./dist/draft-2020-12.js"},"gitHead":"29bd1aa6d1055533a8d2c7b0d7b6af335b368fd4","scripts":{"dev":"tsc --watch","test":"jest .","build":"tsc --build","clean":"rimraf tsconfig.build.tsbuildinfo ./dist"},"_npmUser":{"name":"jamesmoschou-criteria","email":"james@criteria.sh"},"repository":{"url":"git+https://github.com/criteria-labs/criteria-api-tools.git","type":"git","directory":"packages/criteria-json-schema-validation"},"_npmVersion":"9.8.1","description":"Validate JSON instances using JSON Schema.","directories":{},"_nodeVersion":"18.18.2","dependencies":{"uri-js":"^4.4.1","punycode":"^2.3.1","fast-deep-equal":"^3.1.3","smtp-address-parser":"^1.0.10","@criteria/json-schema":"^0.7.0","@criteria/json-pointer":"^0.1.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","ts-jest":"^29.0.3","typescript":"^4.9.4","@types/jest":"^29.2.4","jest-matcher-utils":"^29.3.1"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-validation_0.7.0_1704181154238_0.49290460220221965","host":"s3://npm-registry-packages"}},"0.8.0":{"name":"@criteria/json-schema-validation","version":"0.8.0","keywords":["json","json-schema","jsonschema","draft-04","draft04","draft-2020-12","draft202012"],"author":{"name":"Criteria Labs Pty Ltd"},"license":"MIT","_id":"@criteria/json-schema-validation@0.8.0","maintainers":[{"name":"jamesmoschou-criteria","email":"james@criteria.sh"}],"homepage":"https://github.com/criteria-labs/criteria-api-tools","bugs":{"url":"https://github.com/criteria-labs/criteria-api-tools/issues","email":"support@criteria.sh"},"dist":{"shasum":"7869f9e1a684626c92d2bb9f2e4fdf44d035e74c","tarball":"https://registry.npmjs.org/@criteria/json-schema-validation/-/json-schema-validation-0.8.0.tgz","fileCount":215,"integrity":"sha512-crArgbWY9GhJ719fzAj/FoaLFGNGn8krN3xNni0X+9IpqfTRi+pVcM77GFJV7+cHEkQjMwOWATYrY4vA8fXlSA==","signatures":[{"sig":"MEYCIQCLEtBqdEJ+hgZUWkJnhPe+K5Kl+YRLdZ1OSkirPckoiAIhALXyRrotX0AK7ylYCeos5bcUSQhWkCmNPXFC0HclvvKc","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":413996},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.12.1"},"exports":{".":"./dist/index.js","./draft-04":"./dist/draft-04.js","./draft-06":"./dist/draft-06.js","./draft-2020-12":"./dist/draft-2020-12.js"},"gitHead":"6c439f6a68c19306cde39e20c504c4519570a2f2","scripts":{"dev":"tsc --watch","test":"jest .","build":"tsc --build","clean":"rimraf tsconfig.build.tsbuildinfo ./dist"},"_npmUser":{"name":"jamesmoschou-criteria","email":"james@criteria.sh"},"repository":{"url":"git+https://github.com/criteria-labs/criteria-api-tools.git","type":"git","directory":"packages/criteria-json-schema-validation"},"_npmVersion":"9.8.1","description":"Validate JSON instances using JSON Schema.","directories":{},"_nodeVersion":"18.18.2","dependencies":{"uri-js":"^4.4.1","punycode":"^2.3.1","fast-deep-equal":"^3.1.3","smtp-address-parser":"^1.0.10","@criteria/json-schema":"^0.8.0","@criteria/json-pointer":"^0.1.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","ts-jest":"^29.0.3","typescript":"^4.9.4","@types/jest":"^29.2.4","jest-matcher-utils":"^29.3.1"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-validation_0.8.0_1704689411434_0.19457679503134062","host":"s3://npm-registry-packages"}},"0.9.0":{"name":"@criteria/json-schema-validation","version":"0.9.0","keywords":["json","json-schema","jsonschema","draft-04","draft04","draft-06","draft06","draft-07","draft07","draft-2020-12","draft202012"],"author":{"name":"Criteria Labs Pty Ltd"},"license":"MIT","_id":"@criteria/json-schema-validation@0.9.0","maintainers":[{"name":"jamesmoschou-criteria","email":"james@criteria.sh"}],"homepage":"https://github.com/criteria-labs/criteria-api-tools","bugs":{"url":"https://github.com/criteria-labs/criteria-api-tools/issues","email":"support@criteria.sh"},"dist":{"shasum":"e94638d125285e48219d3ad94a9d62e0b91d4103","tarball":"https://registry.npmjs.org/@criteria/json-schema-validation/-/json-schema-validation-0.9.0.tgz","fileCount":229,"integrity":"sha512-C5DYAa4WW4Wc9u2gYyUr5aHodzLn4OhMTFplGgtNP7Ca7sAMLazDbSZpfqayRmGXwumOxEq+LPspnYfeWaxYxQ==","signatures":[{"sig":"MEUCIBg8EbNrtmp0RB52ttrA4sVq10xjy/6imBfh2+YFRNvcAiEA6x1cjV7GJr8j3J2a7St7Y9e1iUt1sxVf6Wc7pYyxDWo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":451188},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.12.1"},"exports":{".":"./dist/index.js","./draft-04":"./dist/draft-04.js","./draft-06":"./dist/draft-06.js","./draft-07":"./dist/draft-07.js","./draft-2020-12":"./dist/draft-2020-12.js"},"gitHead":"6536526035914d4aed43eedf2a42dd5979e44cc9","scripts":{"dev":"tsc --watch","test":"jest .","build":"tsc --build","clean":"rimraf tsconfig.build.tsbuildinfo ./dist"},"_npmUser":{"name":"jamesmoschou-criteria","email":"james@criteria.sh"},"repository":{"url":"git+https://github.com/criteria-labs/criteria-api-tools.git","type":"git","directory":"packages/criteria-json-schema-validation"},"_npmVersion":"9.8.1","description":"Validate JSON instances using JSON Schema.","directories":{},"_nodeVersion":"18.18.2","dependencies":{"uri-js":"^4.4.1","punycode":"^2.3.1","fast-deep-equal":"^3.1.3","smtp-address-parser":"^1.0.10","@criteria/json-schema":"^0.9.0","@criteria/json-pointer":"^0.1.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","ts-jest":"^29.0.3","typescript":"^4.9.4","@types/jest":"^29.2.4","jest-matcher-utils":"^29.3.1"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-validation_0.9.0_1705215522887_0.513324910261066","host":"s3://npm-registry-packages"}},"0.9.1":{"name":"@criteria/json-schema-validation","version":"0.9.1","keywords":["json","json-schema","jsonschema","draft-04","draft04","draft-06","draft06","draft-07","draft07","draft-2020-12","draft202012"],"author":{"name":"Criteria Labs Pty Ltd"},"license":"MIT","_id":"@criteria/json-schema-validation@0.9.1","maintainers":[{"name":"jamesmoschou-criteria","email":"james@criteria.sh"}],"homepage":"https://github.com/criteria-labs/criteria-api-tools","bugs":{"url":"https://github.com/criteria-labs/criteria-api-tools/issues","email":"support@criteria.sh"},"dist":{"shasum":"57ee7cc011a35038a312f59a328b29fda4cf1ec4","tarball":"https://registry.npmjs.org/@criteria/json-schema-validation/-/json-schema-validation-0.9.1.tgz","fileCount":231,"integrity":"sha512-kBJDBdxZGxF6x8oMcWMHqjkEXgLBmpMk0SxyQ+rE+IrclNMIXd6+obfHysk42hwhnGTyFaPTDFunMj/A4jZAfg==","signatures":[{"sig":"MEUCIQDlvv/4lwAUnCrYCLfQE0YsGsGLE4HBphcZcPOAdovL4AIgKmebpqze1W1xsyNsXXsC7mkQXyW617elF/CQZ+oq5Gk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":452080},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.12.1"},"exports":{".":"./dist/index.js","./draft-04":"./dist/draft-04.js","./draft-06":"./dist/draft-06.js","./draft-07":"./dist/draft-07.js","./draft-2020-12":"./dist/draft-2020-12.js"},"gitHead":"efc707e1504212199000d6a393cb21685266538d","scripts":{"dev":"tsc --watch","test":"jest .","build":"tsc --build","clean":"rimraf tsconfig.build.tsbuildinfo ./dist"},"_npmUser":{"name":"jamesmoschou-criteria","email":"james@criteria.sh"},"repository":{"url":"git+https://github.com/criteria-labs/criteria-api-tools.git","type":"git","directory":"packages/criteria-json-schema-validation"},"_npmVersion":"9.8.1","description":"Validate JSON instances using JSON Schema.","directories":{},"_nodeVersion":"18.18.2","dependencies":{"uri-js":"^4.4.1","punycode":"^2.3.1","fast-deep-equal":"^3.1.3","smtp-address-parser":"^1.0.10","@criteria/json-schema":"^0.9.0","@criteria/json-pointer":"^0.1.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","ts-jest":"^29.0.3","typescript":"^4.9.4","@types/jest":"^29.2.4","jest-matcher-utils":"^29.3.1"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-validation_0.9.1_1705217022030_0.2329371036657626","host":"s3://npm-registry-packages"}},"0.9.2":{"name":"@criteria/json-schema-validation","version":"0.9.2","keywords":["json","json-schema","jsonschema","draft-04","draft04","draft-06","draft06","draft-07","draft07","draft-2020-12","draft202012"],"author":{"name":"Criteria Labs Pty Ltd"},"license":"MIT","_id":"@criteria/json-schema-validation@0.9.2","maintainers":[{"name":"jamesmoschou-criteria","email":"james@criteria.sh"}],"homepage":"https://github.com/criteria-labs/criteria-api-tools","bugs":{"url":"https://github.com/criteria-labs/criteria-api-tools/issues","email":"support@criteria.sh"},"dist":{"shasum":"b3a74b652a8c0fa6b3873f4fd1820c3a2c7a1cb7","tarball":"https://registry.npmjs.org/@criteria/json-schema-validation/-/json-schema-validation-0.9.2.tgz","fileCount":231,"integrity":"sha512-qSZRgF4ndFbyEmdZgJ/Hs3YqHpo8Xqtzq3DC9LoSVnnbXFMhi3BM5nCfyALPXLMa3zkOKjIf998eYrQMWImVyQ==","signatures":[{"sig":"MEUCIQDBZqN8uW63kqPUbCoWAeJukNMR6R1x+UWDmsDJTvAosAIgcwMAgDRDH8LVNuH3EBW5QqNxH9CThCtG6ZuMqZnRGu4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":452125},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.12.1"},"exports":{".":"./dist/index.js","./draft-04":"./dist/draft-04.js","./draft-06":"./dist/draft-06.js","./draft-07":"./dist/draft-07.js","./draft-2020-12":"./dist/draft-2020-12.js"},"gitHead":"3dfc60861d8c8d9d3a5a5fb37c77ae9098daf064","scripts":{"dev":"tsc --watch","test":"jest .","build":"tsc --build","clean":"rimraf tsconfig.build.tsbuildinfo ./dist"},"_npmUser":{"name":"jamesmoschou-criteria","email":"james@criteria.sh"},"repository":{"url":"git+https://github.com/criteria-labs/criteria-api-tools.git","type":"git","directory":"packages/criteria-json-schema-validation"},"_npmVersion":"9.8.1","description":"Validate JSON instances using JSON Schema.","directories":{},"_nodeVersion":"18.18.2","dependencies":{"punycode":"^2.3.1","toad-uri-js":"^5.0.1","fast-deep-equal":"^3.1.3","smtp-address-parser":"^1.0.10","@criteria/json-schema":"^0.9.0","@criteria/json-pointer":"^0.1.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","ts-jest":"^29.0.3","typescript":"^4.9.4","@types/jest":"^29.2.4","jest-matcher-utils":"^29.3.1"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-validation_0.9.2_1707973381204_0.03685671401407209","host":"s3://npm-registry-packages"}},"0.10.0":{"name":"@criteria/json-schema-validation","version":"0.10.0","description":"Validate JSON instances using JSON Schema.","keywords":["json","json-schema","jsonschema","draft-04","draft04","draft-06","draft06","draft-07","draft07","draft-2020-12","draft202012"],"homepage":"https://github.com/criteria-labs/criteria-api-tools","bugs":{"url":"https://github.com/criteria-labs/criteria-api-tools/issues","email":"support@criteria.sh"},"license":"MIT","author":{"name":"Criteria Labs Pty Ltd"},"exports":{".":"./dist/index.js","./draft-04":"./dist/draft-04.js","./draft-06":"./dist/draft-06.js","./draft-07":"./dist/draft-07.js","./draft-2020-12":"./dist/draft-2020-12.js"},"main":"dist/index.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/criteria-labs/criteria-api-tools.git","directory":"packages/criteria-json-schema-validation"},"scripts":{"dev":"tsc --watch","build":"tsc --build","test":"jest .","clean":"rimraf tsconfig.build.tsbuildinfo ./dist"},"devDependencies":{"@types/jest":"^29.2.4","jest":"^29.3.1","jest-matcher-utils":"^29.3.1","ts-jest":"^29.0.3","typescript":"^4.9.4"},"engines":{"node":">=18.12.1"},"dependencies":{"@criteria/json-pointer":"^0.2.1","@criteria/json-schema":"^0.10.0","fast-deep-equal":"^3.1.3","punycode":"^2.3.1","smtp-address-parser":"^1.0.10","toad-uri-js":"^5.0.1"},"_id":"@criteria/json-schema-validation@0.10.0","gitHead":"8133d0207165378af388dfdd5a64c50de34e6f53","_nodeVersion":"20.15.0","_npmVersion":"10.7.0","dist":{"integrity":"sha512-QqkO0uEAjMIEdybZPSGZEOa2HExAr83lE5ya3bRTVFMByb9sXq7JK7ZyHHAhSOWQyUN1Tgkk/sozfLygG5VOuw==","shasum":"2bdd80b9f5b0afe3eb64ac584f897bdfeceb564b","tarball":"https://registry.npmjs.org/@criteria/json-schema-validation/-/json-schema-validation-0.10.0.tgz","fileCount":229,"unpackedSize":451875,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCa8jeX87CjidQEq89iTgBx5uWO+ihnA/CXHhWrkxc1BgIhAIxGmbxZBilzQ8g/Ommqjj27MA6Z2HOS9D2KPgDS6Xuv"}]},"_npmUser":{"name":"jamesmoschou-criteria","email":"james@criteria.sh"},"directories":{},"maintainers":[{"name":"jamesmoschou-criteria","email":"james@criteria.sh"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/json-schema-validation_0.10.0_1720070872792_0.8919910666112871"},"_hasShrinkwrap":false}},"time":{"created":"2023-08-31T05:43:56.754Z","modified":"2024-07-04T05:27:53.163Z","0.1.0":"2023-08-31T05:43:57.200Z","0.1.1":"2023-09-01T04:07:10.950Z","0.1.2":"2023-09-11T00:42:36.512Z","0.2.0":"2023-11-25T10:02:49.536Z","0.3.0":"2023-12-01T02:38:45.189Z","0.5.0":"2023-12-14T05:08:08.263Z","0.6.0":"2023-12-18T01:28:48.685Z","0.7.0":"2024-01-02T07:39:14.394Z","0.8.0":"2024-01-08T04:50:11.622Z","0.9.0":"2024-01-14T06:58:43.063Z","0.9.1":"2024-01-14T07:23:42.213Z","0.9.2":"2024-02-15T05:03:01.447Z","0.10.0":"2024-07-04T05:27:52.956Z"},"maintainers":[{"name":"jamesmoschou-criteria","email":"james@criteria.sh"}],"author":{"name":"Criteria Labs Pty Ltd"},"repository":{"type":"git","url":"git+https://github.com/criteria-labs/criteria-api-tools.git","directory":"packages/criteria-json-schema-validation"},"keywords":["json","json-schema","jsonschema","draft-04","draft04","draft-06","draft06","draft-07","draft07","draft-2020-12","draft202012"],"license":"MIT","homepage":"https://github.com/criteria-labs/criteria-api-tools","bugs":{"url":"https://github.com/criteria-labs/criteria-api-tools/issues","email":"support@criteria.sh"},"readme":"# JSON Schema Validation\n\nValidate JSON instances using the JSON Schema specification.\n\n## Table of Contents\n\n- [Overview](#overview)\n- [Getting Started](#getting-started)\n- [Usage](#usage)\n- [Options](#options)\n- [The Output object](#the-output-object)\n- [Usage](#usage)\n- [Acknowledgments](#acknowledgments)\n- [License](#license)\n- [About Criteria](#about-criteria)\n\n## Overview\n\nThis package provides TypeScript functions for validating JSON values using the JSON Schema specification.\n\nThe following drafts are currently supported:\n\n- [Draft 04](https://json-schema.org/specification-links.html#draft-4)\n- [Draft 06](https://json-schema.org/specification-links.html#draft-6)\n- [Draft 2020-12](https://json-schema.org/specification-links.html#2020-12)\n\n## Getting Started\n\nInstall JSON Schema Validation using npm:\n\n```sh\nnpm install @criteria/json-schema-validation\n```\n\nLet's define a simple JSON schema in code to get started:\n\n```ts\nimport { validateJSON } from '@criteria/json-schema-validation'\n\nconst schema = {\n  type: 'object',\n  title: 'person',\n  required: ['name'],\n  properties: {\n    name: {\n      type: 'string'\n    }\n  }\n}\n\nvalidateJSON({ name: 'Joan' }, schema)\n```\n\nIf the value is not valid, `validateJSON` will throw a `ValidationError`.\n\n```ts\ntry {\n  validateJSON({}, schema)\n} catch (error) {\n  console.log(error.message)\n  // The value is missing 'name'\n}\n```\n\nAlternatively, use the `isJSONValid` function to return a boolean value instead of throwing an error.\n\n```ts\nimport { isJSONValid } from '@criteria/json-schema-validation'\n\nif (isJSONValid({}, schema)) {\n  // valid\n} else {\n  // invalid\n}\n```\n\n## Usage\n\n### Reusing validators\n\nThe `jsonValidator` and `jsonValidatorAsync` functions can be used to create a reusable validator function. This allows you to efficiently validate multiple values against the same schema.\n\n```ts\nimport { jsonValidator } from '@criteria/json-schema-validation'\n\nconst schema = {\n  type: 'object',\n  title: 'person',\n  required: ['name']\n  properties: {\n    name: {\n      type: 'string'\n    }\n  },\n}\n\nconst validator = jsonValidator(schema)\n\nvalidator({ name: 'Joan' })\nvalidator({ name: 'Jean' })\nvalidator({ name: 'John' })\n```\n\n### Dereferencing schemas\n\nReferences to remote schemas can be dereferenced by specifying the `retrieve` option.\n\n```ts\nimport { jsonValidator } from '@criteria/json-schema-validation'\n\nconst schema = {\n  type: 'object',\n  title: 'person',\n  properties: {\n    name: {\n      $ref: '#/definitions/requiredString'\n    },\n    children: {\n      type: 'array',\n      items: {\n        $ref: '#'\n      }\n    },\n    address: {\n      $ref: 'https://example.com/schemas/address.json'\n    }\n  },\n  $defs: {\n    requiredString: {\n      title: 'requiredString',\n      type: 'string',\n      minLength: 1\n    }\n  }\n}\n\n// will be called once with uri = 'https://example.com/schemas/address.json'\nconst retrieve = (uri: string): any => {\n  return schemasByID[uri]\n}\nconst validator = jsonValidator(schema, { retrieve })\n\nvalidator({ name: 'Joan', address: { street: 'Example St' } })\n```\n\n#### Retrieving referenced schemas asynchronously\n\nThe `validateJSON`, `isJSONValid` and `jsonValidator` functions have asynchronous counterparts `validateJSONAsync`, `isJSONValidAsync` and `jsonValidatorAsync`.\n\nThese functions accept an asynchronous retrieve function.\n\n```ts\n// will be called once with uri = 'https://example.com/schemas/address.json'\nconst asyncRetrieve = async (uri: string): Promise<any> => {\n  const response = await fetch(uri)\n  return await response.json()\n}\nconst validator = await jsonValidatorAsync(schema, { retrieve: asyncRetrieve })\n\nvalidator({ name: 'Joan', address: { street: 'Example St' } })\n```\n\n### Querying validation failure details\n\nYou can query details about why validation failed using the Output object that is returned from the reusable validator function.\n\n```ts\nimport { jsonValidator } from '@criteria/json-schema-validation'\n\nconst validator = jsonValidator(schema)\n\nconst output = validator({})\n\nif (!output.valid) {\n  for (const error of output.errors ?? []) {\n    console.log(error.message)\n    console.log(error.schemaLocation)\n    console.log(error.instanceLocation)\n  }\n}\n```\n\nSee [The Output object](#the-output-object) for available properties.\n\n### Using particular drafts of JSON Schema\n\nIf the `$schema` keyword is present in a schema, that draft will be used.\n\n```ts\nconst schema = {\n  $schema: 'http://json-schema.org/draft-04/schema#'\n  type: 'number'\n  maximum: 100\n  exclusiveMaximum: true\n}\n\nconst validator = jsonValidator(schema)\n```\n\nOtherwise, the defaultMetaSchemaURI option will be used to specify the draft to use.\n\n```ts\nconst schema = {\n  type: 'number'\n  maximum: 100\n  exclusiveMaximum: true\n}\n\nconst validator = jsonValidator(schema, { defaultMetaSchemaURI: 'http://json-schema.org/draft-04/schema#' })\n```\n\n| Draft         | Meta Schema URI                                |\n| ------------- | ---------------------------------------------- |\n| Draft 04      | 'http://json-schema.org/draft-04/schema#'      |\n| Draft 06      | 'http://json-schema.org/draft-06/schema#'      |\n| Draft 2020-12 | 'https://json-schema.org/draft/2020-12/schema' |\n\nAs an alternative to providing the `defaultMetaSchemaURI` option, you can import functions from the relevant draft-specific module.\n\n```ts\nimport { validateJSON, isValidJSON, jsonValidator } from '@criteria/json-schema-validation/draft-2020-12'\n```\n\n```ts\nimport { validateJSON, isValidJSON, jsonValidator } from '@criteria/json-schema-validation/draft-06'\n```\n\n```ts\nimport { validateJSON, isValidJSON, jsonValidator } from '@criteria/json-schema-validation/draft-04'\n```\n\n## Options\n\nAll functions accept an optional object containing options as their final argument.\n\n```ts\nvalidateJSON(instance, schema, options)\n```\n\n```ts\nisValidJSON(instance, schema, options)\n```\n\n```ts\njsonValidator(schema, options)\n```\n\n### `outputFormat`\n\n`'flag' | 'verbose'`\n\nDetermines whether the `Output` object contains validation failure details.\n\nThe default value is `'flag'`.\n\n### `failFast`\n\n`boolean`\n\nWhether to failure validation after encountering the first issue.\n\nThe default value is `false`.\n\n### `assertFormat`\n\n`boolean`\n\nWhether to evaluate `format` keywords as assertions. When `true`, values that do not conform to the expected format will fail validation.\n\nNote, this option only applies to Draft 2020-12. In earlier drafts the `format` keyword is always evaluated as assertions.\n\nThe default value is `false`.\n\n### `baseURI`\n\n`string`\n\nThe base URI to use when resolving URI references.\n\n### `retrieve`\n\n`(uri: string) => any`\n\nA function used to dereference remote schemas.\n\nIf `retrieve` is called and returns a Promise then the return value `isJSONValid`, `validateJSON` and `jsonValidator` will also be a Promise. To ensure that these functions always return a Promise, regardless of whether `retrieve` is called or not, use the `isJSONValidAsync`, `validateJSONAsync` and `jsonValidatorAsync` functions instead.\n\n### `defaultMetaSchemaURI`\n\n`string`\n\nSpecifies the JSON Schema Specification draft to use when the meta schema of a schema cannot be determined.\n\nThe default value is `'https://json-schema.org/draft/2020-12/schema'`.\n\n## The Output object\n\n### `valid`\n\n`boolean`\n\nWhether or not the JSON value is valid.\n\n### `schemaLocation`\n\n`string`\n\nA JSON Pointer describing the location of the schema that was used to produce this output.\n\nFor the top-level output this will be an empty string, indicating the root schema was used.\n\n### `instanceLocation`\n\n`string`\n\nA JSON Pointer describing the location of the value within the JSON document that was validated to produce this output.\n\n### `errors`\n\n`Output[]`\n\nAn array of output objects describing the validation failure in further detail.\n\n## License\n\nThis project is [MIT](https://github.com/criteria-labs/criteria-api-tools/blob/main/packages/criteria-json-schema-validation/LICENSE) licensed.\n\n## About Criteria\n\n[Criteria](https://criteria.sh) is a collaborative platform for designing APIs.\n","readmeFilename":"README.md"}