{"_id":"@readme/json-schema-ref-parser","_rev":"22-5be2bf20c1ca842dc68119265d9b2f1c","name":"@readme/json-schema-ref-parser","dist-tags":{"latest":"1.2.0"},"versions":{"1.0.0":{"name":"@readme/json-schema-ref-parser","version":"1.0.0","keywords":["json","schema","jsonschema","json-schema","json-pointer","$ref","dereference","resolve"],"author":{"url":"https://jamesmessinger.com","name":"James Messinger"},"license":"MIT","_id":"@readme/json-schema-ref-parser@1.0.0","maintainers":[{"name":"dok","email":"dokko1230@gmail.com"},{"name":"owlbert","email":"support@readme.io"},{"name":"gkoberger","email":"gkoberger@gmail.com"},{"name":"domharrington","email":"domharrington+npm@protonmail.com"},{"name":"mjcuva","email":"marc@readme.io"},{"name":"kanadgupta","email":"kanad@readme.io"},{"name":"jonursenbach","email":"jon@ursenba.ch"},{"name":"rafegoldberg","email":"rafegoldberg@gmail.com"},{"name":"dashron","email":"aaron@dashron.com"},{"name":"iliast","email":"iliastsangaris@gmail.com"}],"contributors":[{"name":"Boris Cherny","email":"boris@performancejs.com"},{"name":"Jakub Rożek","email":"jakub@stoplight.io"}],"homepage":"https://apitools.dev/json-schema-ref-parser/","bugs":{"url":"https://github.com/readmeio/json-schema-ref-parser/issues"},"dist":{"shasum":"a3ae5f1a54c6e1a2a1603e9b7aab00cf941817a1","tarball":"https://registry.npmjs.org/@readme/json-schema-ref-parser/-/json-schema-ref-parser-1.0.0.tgz","fileCount":23,"integrity":"sha512-M3b8E4l6+MGFyhznQoQ1yoVFkre8vQEkk9doGGp4okHAwYLikwZRKeC/UWp88cGbr8+ZB1a7pMmHu2iteDWmPg==","signatures":[{"sig":"MEQCIED6swH4UZieFMysOs1AVlnAzSZVHpnKPBbZxnN8ofBxAiA4BnxT08BMRod1ei1V6t9F7jQywl3A74SSABNCysY/VQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsRC3CRA9TVsSAnZWagAAUo4P/1RYXEYxQDWrqptHD+nN\netDssiTWNokdMS83Yr97YEyWvD7wik6kXJ5/bKHlTHKmyNdvZhy3BGRqD3Nq\nKhBPrgE1bN9ZFoAeTjbQtjAyKwuCSZxW/GId9KBjPmgAWXG8JiOCH+aNtJ3V\nWIEPSCH471WO3MWO7DJED9ootS4wrPoGTDq0XEeOLHtt6uQ/R+Wmq97y5Y0+\n2ExsasD8W3yoYnAlXqkptGpqMJRLQuXW68zr2ewcdsq8xR9kkjcCfosTrwiO\nSQg0tBPnUj1kHGKMTJBxXF1hirIyP/YPfdJPd30dmdDVFi5GZFv0niBcGNoO\n5Ruptul3Fw/i8GiY4q+3HWAEVDGGliSgL0XA/llGmi6tPPRIckErCEcatM8t\nLEpFviTIla+UD9+GUuudNM9SignECNNQax+OJAqnLcH8enjHgS/vvbNUKANd\nzUFSBlHcnGVicUseVoOu77aWgcN1qEarNj4+bq5Oy8wXzAoaPKnIOLqzspyc\nDh6akxPo7Uahd7oyYmnkZBFDt4MZFKCmfjP29wd8y5swgM9ewrNHshyr6Cze\nRFREL0E+3zike7Ppxs/mBc4nQyt9VEO+Lq5M4xWSIVVt8I4sNlL6eyHvKsz3\nN5l0rLFiyh2uSlpl4wbEcbdXNcO+kh53+CM4LO6Ic0LhDZCpLlANBKKQOVrn\nBe+R\r\n=pMkl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","browser":{"fs":false},"gitHead":"8736330b4e685d2e9fe2ed51baa58562bff8171c","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator",["semantic-release-plugin-update-version-in-files",{"files":["dist/package.json"],"placeholder":"X.X.X"}],["@amanda-mitchell/semantic-release-npm-multiple",{"registries":{"scoped":{"pkgRoot":"."},"unscoped":{"pkgRoot":"dist"}}}],"@semantic-release/github"],"branches":["main"]},"scripts":{"lint":"eslint lib test/fixtures test/specs","test":"npm run test:node && npm run test:typescript && npm run test:browser && npm run lint","build":"cp LICENSE *.md dist","clean":"shx rm -rf .nyc_output coverage","upgrade":"npm-check -u && npm audit fix","coverage":"npm run coverage:node && npm run coverage:browser","test:node":"mocha","test:browser":"karma start --single-run","coverage:node":"nyc node_modules/mocha/bin/mocha","test:typescript":"tsc --noEmit --strict --lib esnext,dom test/specs/typescript-definition.spec.ts","coverage:browser":"npm run test:browser -- --coverage"},"typings":"lib/index.d.ts","_npmUser":{"name":"jonursenbach","email":"jon@ursenba.ch"},"deprecated":"This package is no longer maintained. Please use `@apidevtools/json-schema-ref-parser` instead.","repository":{"url":"git+https://github.com/readmeio/json-schema-ref-parser.git","type":"git"},"_npmVersion":"7.24.2","description":"Parse, Resolve, and Dereference JSON Schema $ref pointers","directories":{},"_nodeVersion":"14.17.6","dependencies":{"js-yaml":"^4.1.0","call-me-maybe":"^1.0.1","@jsdevtools/ono":"^7.1.3","@types/json-schema":"^7.0.6"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^15.0.1","shx":"^0.3.2","chai":"^4.2.0","karma":"^5.0.2","mocha":"^8.2.1","eslint":"^7.18.0","karma-cli":"^2.0.0","npm-check":"^5.9.0","typescript":"^4.0.5","@types/node":"^14.14.21","chai-subset":"^1.6.0","@babel/polyfill":"^7.12.1","@jsdevtools/karma-config":"^3.1.7","@jsdevtools/eslint-config":"^1.0.7","@jsdevtools/host-environment":"^2.1.2","@amanda-mitchell/semantic-release-npm-multiple":"^2.5.0","semantic-release-plugin-update-version-in-files":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-ref-parser_1.0.0_1638994103739_0.18322568558641006","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"@readme/json-schema-ref-parser","version":"1.1.0","keywords":["json","schema","jsonschema","json-schema","json-pointer","$ref","dereference","resolve"],"author":{"url":"https://jamesmessinger.com","name":"James Messinger"},"license":"MIT","_id":"@readme/json-schema-ref-parser@1.1.0","maintainers":[{"name":"dok","email":"dokko1230@gmail.com"},{"name":"owlbert","email":"support@readme.io"},{"name":"gkoberger","email":"gkoberger@gmail.com"},{"name":"domharrington","email":"domharrington+npm@protonmail.com"},{"name":"mjcuva","email":"marc@readme.io"},{"name":"kanadgupta","email":"kanad@readme.io"},{"name":"jonursenbach","email":"jon@ursenba.ch"},{"name":"rafegoldberg","email":"rafegoldberg@gmail.com"},{"name":"dashron","email":"aaron@dashron.com"},{"name":"iliast","email":"iliastsangaris@gmail.com"}],"contributors":[{"name":"Boris Cherny","email":"boris@performancejs.com"},{"name":"Jakub Rożek","email":"jakub@stoplight.io"}],"homepage":"https://apitools.dev/json-schema-ref-parser/","bugs":{"url":"https://github.com/readmeio/json-schema-ref-parser/issues"},"dist":{"shasum":"e30994fed39024065379541740cb36f73dce9fc6","tarball":"https://registry.npmjs.org/@readme/json-schema-ref-parser/-/json-schema-ref-parser-1.1.0.tgz","fileCount":23,"integrity":"sha512-T0DxTMSEfOQHAlpI68LqYCwSFfP3u0w7E6zXWf16YphmAgWSOhLKuvnMSLXAlh27uxwclRekIvQf8AAUoQSDiw==","signatures":[{"sig":"MEUCIQDlMRvJ9igWwu+RRqElRebxv8i6fA3Ap7Dys+I0ladkzQIgBNUUQIAF+wHA3wVEp8nd37QsvlgU0LrBomDdOAZ/IIw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137931,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRec+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqi2g/+Jic2FNeJIU55AnGTveQ6CkcqMkIsZbRU8hi0YbkJRh23yPFG\r\ndfpXq4alcL7GpAdrpL3wLwNEs2kBpNijpBOYS773CdEif0VJf9FRwTJbCWhG\r\nVJfbUKixNwJoh3Xf9ADxTW2vSqWurLW0Pv9AuqBPuPWGphUx5BTI+HRAsxBD\r\nSDoGUoiOWNGPkg2/KhHq1SD/BQLpM1TA+sQxX5pp8mLLtLFIuDPvK185LOHo\r\nOTSdJs+J0mdNtpaE57I2/xUfQ/Q9+1kNlVPyVzU/GygZOJTowmNMNnQYOv17\r\n9HBPK+OVn3rB7bkKl9vu/t+tL/tFI2k8UjcnXmiu82haJtjMfTlEwmMXjFzb\r\naz5hkIucx8bH72C36GygGIdTTR+GzTacKErYHx4wiPWKrWgpMMOkL+i8ensM\r\n6wsXEzb239rPVeW5lsc8QxQRNqH4afvJTfuIku/9eGrE6EjFrJiuJBHqsi3o\r\nbeY2ddvOtiWz8WLu3CbFwsMxvSWrerUr5r85btZyNbbS/sna2/YTO392I/V4\r\n51Ou21AkUfDJ+ivMVrs2+XwnUudRZu6ZOuUCR3XcmBIPNIFt9OseP8gyDhLW\r\nELoCSnutHk2KVjry8h4rBJjZaxPdssCqrNN2Rk8WQKto/gZadbsjJFv2+6EA\r\nPYsY6SGAo55XnXQiqs+YDQLpsiThZ08HPOU=\r\n=A1w6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","browser":{"fs":false},"gitHead":"4a29e29e2a02a0c15ac94636c230d29e8b3c1586","scripts":{"lint":"eslint .","test":"npm run test:node && npm run test:typescript && npm run test:browser && npm run lint","coverage":"npm run coverage:node && npm run coverage:browser","prettier":"prettier --list-different --write \"./**/**.{js,ts}\"","test:node":"mocha","test:browser":"karma start --single-run","coverage:node":"nyc node_modules/mocha/bin/mocha","test:typescript":"tsc --noEmit --strict --lib esnext,dom test/specs/typescript-definition.spec.ts","coverage:browser":"npm run test:browser -- --coverage"},"typings":"lib/index.d.ts","_npmUser":{"name":"jonursenbach","email":"jon@ursenba.ch"},"prettier":"@readme/eslint-config/prettier","deprecated":"This package is no longer maintained. Please use `@apidevtools/json-schema-ref-parser` instead.","repository":{"url":"git+https://github.com/readmeio/json-schema-ref-parser.git","type":"git"},"_npmVersion":"7.24.2","description":"Parse, Resolve, and Dereference JSON Schema $ref pointers","directories":{},"_nodeVersion":"14.19.1","dependencies":{"js-yaml":"^4.1.0","call-me-maybe":"^1.0.1","@jsdevtools/ono":"^7.1.3","@types/json-schema":"^7.0.6"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^15.0.1","chai":"^4.3.6","karma":"^6.3.17","mocha":"^9.2.2","eslint":"^8.11.0","prettier":"^2.6.0","karma-cli":"^2.0.0","typescript":"^4.6.2","@types/node":"^17.0.21","chai-subset":"^1.6.0","@readme/eslint-config":"^8.5.1","@jsdevtools/karma-config":"^3.1.7","@jsdevtools/host-environment":"^2.1.2"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-ref-parser_1.1.0_1648748350072_0.6534397568424675","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"@readme/json-schema-ref-parser","version":"1.2.0","keywords":["json","schema","jsonschema","json-schema","json-pointer","$ref","dereference","resolve"],"author":{"url":"https://jamesmessinger.com","name":"James Messinger"},"license":"MIT","_id":"@readme/json-schema-ref-parser@1.2.0","maintainers":[{"name":"dannobytes","email":"dannlee@gmail.com"},{"name":"gkoberger","email":"gkoberger@gmail.com"},{"name":"domharrington","email":"domharrington+npm@protonmail.com"},{"name":"mjcuva","email":"marc@readme.io"},{"name":"kanadgupta","email":"npm@kanad.dev"},{"name":"jonursenbach","email":"jon@ursenba.ch"},{"name":"rafegoldberg","email":"rafegoldberg@gmail.com"},{"name":"dashron","email":"ahh@fastmail.com"},{"name":"iliast","email":"iliastsangaris@gmail.com"}],"contributors":[{"name":"Boris Cherny","email":"boris@performancejs.com"},{"name":"Jakub Rożek","email":"jakub@stoplight.io"}],"homepage":"https://apitools.dev/json-schema-ref-parser/","bugs":{"url":"https://github.com/readmeio/json-schema-ref-parser/issues"},"dist":{"shasum":"8552cde8f8ecf455398c59aa6e2cf5ed2d0f3d31","tarball":"https://registry.npmjs.org/@readme/json-schema-ref-parser/-/json-schema-ref-parser-1.2.0.tgz","fileCount":23,"integrity":"sha512-Bt3QVovFSua4QmHa65EHUmh2xS0XJ3rgTEUPH998f4OW4VVJke3BuS16f+kM0ZLOGdvIrzrPRqwihuv5BAjtrA==","signatures":[{"sig":"MEQCIAn1JBNuxikLpuZizfhe3vfSzt+9z0Yjl1UT/ssIViZKAiBLSDFVgk7d0MIiuCoYfE+/Ip3IM9jWuJ4t1candoU0Eg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138412,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjkPH+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpRZw/9GtbiXSLNlZ8N92D9RcQKBE9UwrmCWs1+Lk5ApWKnEqN7j/qO\r\n+rjyu6iISwQVtHvP1zorYCRPDeh/vBwPxIbvtw8T5esuP8pXFFn6kJkOmNXZ\r\nmI+iFDp0yvVfzd25rdn/Pyv9TWQfZE6pLQIrkNtVb4g01rfOKbmeIAagbR+g\r\nMAbgeJp7+ouaTb+XbqktcMy4b9NpTuqATgfGPM/YrFjIR0nwP7TinTkTTTuI\r\ngmnQTkhtTHzT1G5AtH11RRc0g7HndWVzikrhwNSM5jcxbn619opt/4Gy4ugH\r\niE9hZLG9QimDQrngcTRgJECgt9RwRdgKFCfMb10GZrPJXBXgYfLxOuKZufF5\r\nzwepjyW3EUGire9n9Mtb9HzdWO9ar6uY9dB75v4v+YiPaXCMAKz4WD/A8AOQ\r\n1lmtsOOYg+K8yRPoCyvLH+i0Mxs6636KazJ89s1Yu3ezPYQIgxz7KF4jBh6x\r\n9fCFOq88S5cNi+aDQWoljiAs9aFtnJ3mv0VmH9S5ovaXMGKxvPVJfV2vMfeW\r\ngQk8g5+uq0oJ7zH/dK65uTg4iMUk05uKigqnvSt5g3aP0iuRc5d3cSELcXAV\r\nK5CQFd0hq+cTDrAj0ymp86qy5UYNyEpjDVHakD4CJyETABw0QjOfqgUS1x12\r\nmBLSmrGTof/jpzKFIHAkIgEq1nj2+u01L4I=\r\n=orYx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","browser":{"fs":false},"gitHead":"dfb1b519376346978b867c065d8e01d84a9f5dc2","scripts":{"lint":"eslint .","test":"npm run test:node && npm run test:typescript && npm run test:browser && npm run lint","coverage":"npm run coverage:node && npm run coverage:browser","prettier":"prettier --list-different --write \"./**/**.{js,ts}\"","test:node":"mocha","test:browser":"karma start --single-run","coverage:node":"nyc mocha","test:typescript":"tsc --noEmit --strict --lib esnext,dom test/specs/typescript-definition.spec.ts","coverage:browser":"npm run test:browser -- --coverage"},"typings":"lib/index.d.ts","_npmUser":{"name":"jonursenbach","email":"jon@ursenba.ch"},"prettier":"@readme/eslint-config/prettier","deprecated":"This package is no longer maintained. Please use `@apidevtools/json-schema-ref-parser` instead.","repository":{"url":"git+https://github.com/readmeio/json-schema-ref-parser.git","type":"git"},"_npmVersion":"7.24.2","description":"Parse, Resolve, and Dereference JSON Schema $ref pointers","directories":{},"_nodeVersion":"16.14.0","dependencies":{"js-yaml":"^4.1.0","call-me-maybe":"^1.0.1","@jsdevtools/ono":"^7.1.3","@types/json-schema":"^7.0.6"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^15.0.1","chai":"^4.3.6","karma":"^6.3.17","mocha":"^10.0.0","eslint":"^8.29.0","prettier":"^2.8.1","karma-cli":"^2.0.0","typescript":"^4.6.2","@types/node":"^18.11.11","chai-subset":"^1.6.0","@readme/eslint-config":"^10.3.1","@jsdevtools/karma-config":"^3.1.7","@jsdevtools/host-environment":"^2.1.2"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-ref-parser_1.2.0_1670443518746_0.5928962921217793","host":"s3://npm-registry-packages"}},"1.2.1":{"name":"@readme/json-schema-ref-parser","version":"1.2.1","keywords":["json","schema","jsonschema","json-schema","json-pointer","$ref","dereference","resolve"],"author":{"url":"https://jamesmessinger.com","name":"James Messinger"},"license":"MIT","_id":"@readme/json-schema-ref-parser@1.2.1","maintainers":[{"name":"gratcliff","email":"gabriel@readme.io"},{"name":"dannobytes","email":"dannlee@gmail.com"},{"name":"gkoberger","email":"gkoberger@gmail.com"},{"name":"domharrington","email":"domharrington+npm@protonmail.com"},{"name":"mjcuva","email":"marc@readme.io"},{"name":"kanadgupta","email":"npm@kanad.dev"},{"name":"jonursenbach","email":"jon@ursenba.ch"},{"name":"rafegoldberg","email":"rafegoldberg@gmail.com"},{"name":"dashron","email":"ahh@fastmail.com"},{"name":"iliast","email":"iliastsangaris@gmail.com"}],"contributors":[{"name":"Boris Cherny","email":"boris@performancejs.com"},{"name":"Jakub Rożek","email":"jakub@stoplight.io"}],"homepage":"https://apitools.dev/json-schema-ref-parser/","bugs":{"url":"https://github.com/readmeio/json-schema-ref-parser/issues"},"dist":{"shasum":"3b8e7e979f4d4ef38c6bc6064a26163cd8ec91d6","tarball":"https://registry.npmjs.org/@readme/json-schema-ref-parser/-/json-schema-ref-parser-1.2.1.tgz","fileCount":23,"integrity":"sha512-FKCnFnpKklBPu8atyXqmSRBPSYlZLdcdbIilX19y0vVFiVthqKV9SQp4GZ8L4rOqSVmjn14uZ4Ono5tZKMr1SQ==","signatures":[{"sig":"MEUCICDb8HMiLIET4miVfjr2ksASEk7pyO6EOwbOJbgqpup4AiEApylmRRhND7LLM0/XoDJmddb70Gu2kO4Ej9mngixAzug=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":139177},"main":"lib/index.js","browser":{"fs":false},"engines":{"node":">=18"},"gitHead":"ce1636c86c9bac48420059c987589f63d96b6c7e","scripts":{"lint":"eslint .","test":"npm run test:node && npm run test:typescript && npm run test:browser && npm run lint","coverage":"npm run coverage:node && npm run coverage:browser","prettier":"prettier --list-different --write \"./**/**.{js,ts}\"","test:node":"mocha","test:browser":"karma start --single-run","coverage:node":"nyc mocha","test:typescript":"tsc --noEmit --strict --lib esnext,dom test/specs/typescript-definition.spec.ts","coverage:browser":"npm run test:browser -- --coverage"},"typings":"lib/index.d.ts","_npmUser":{"name":"jonursenbach","email":"jon@ursenba.ch"},"prettier":"@readme/eslint-config/prettier","deprecated":"This package is no longer maintained. Please use `@apidevtools/json-schema-ref-parser` instead.","repository":{"url":"git+https://github.com/readmeio/json-schema-ref-parser.git","type":"git"},"_npmVersion":"9.8.1","description":"Parse, Resolve, and Dereference JSON Schema $ref pointers","directories":{},"_nodeVersion":"18.18.2","dependencies":{"js-yaml":"^4.1.0","call-me-maybe":"^1.0.1","@jsdevtools/ono":"^7.1.3","@types/json-schema":"^7.0.12"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^15.0.1","chai":"^4.3.6","karma":"^6.3.17","mocha":"^10.2.0","eslint":"^8.44.0","prettier":"^2.8.7","karma-cli":"^2.0.0","typescript":"^5.1.6","@types/node":"^20.3.3","chai-subset":"^1.6.0","@readme/eslint-config":"^10.6.1","@jsdevtools/karma-config":"^3.1.7","@jsdevtools/host-environment":"^2.1.2"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-ref-parser_1.2.1_1698185481256_0.7268890872772469","host":"s3://npm-registry-packages"}}},"time":{"created":"2021-12-08T20:08:23.607Z","modified":"2026-06-22T17:50:16.197Z","1.0.0":"2021-12-08T20:08:23.911Z","1.1.0":"2022-03-31T17:39:10.672Z","1.2.0":"2022-12-07T20:05:18.964Z","1.2.1":"2023-10-24T22:11:21.497Z"},"bugs":{"url":"https://github.com/readmeio/json-schema-ref-parser/issues"},"author":{"url":"https://jamesmessinger.com","name":"James Messinger"},"license":"MIT","homepage":"https://apitools.dev/json-schema-ref-parser/","keywords":["json","schema","jsonschema","json-schema","json-pointer","$ref","dereference","resolve"],"repository":{"url":"git+https://github.com/readmeio/json-schema-ref-parser.git","type":"git"},"description":"Parse, Resolve, and Dereference JSON Schema $ref pointers","contributors":[{"name":"Boris Cherny","email":"boris@performancejs.com"},{"name":"Jakub Rożek","email":"jakub@stoplight.io"}],"maintainers":[{"email":"gkoberger@gmail.com","name":"gkoberger"},{"email":"warm.cord4996@fastmail.com","name":"domharrington"},{"email":"marc@readme.io","name":"mjcuva"},{"email":"jon@ursenba.ch","name":"jonursenbach"},{"email":"rafegoldberg@gmail.com","name":"rafegoldberg"},{"email":"contact.darrenyong@gmail.com","name":"darrenyong"}],"readme":"# JSON Schema $Ref Parser\n\nParse, Resolve, and Dereference JSON Schema $ref pointers\n\n[![Build Status](https://github.com/readmeio/json-schema-ref-parser/workflows/CI/badge.svg)](https://github.com/readmeio/json-schema-ref-parser/actions)\n[![npm](https://img.shields.io/npm/v/@readme/json-schema-ref-parser.svg)](https://www.npmjs.com/package/@readme/json-schema-ref-parser)\n[![License](https://img.shields.io/npm/l/@readme/json-schema-ref-parser.svg)](LICENSE)\n\n[![OS and Browser Compatibility](https://apitools.dev/img/badges/ci-badges-with-ie.svg)](https://github.com/readmeio/json-schema-ref-parser/actions)\n\n## The Problem\nYou've got a JSON Schema with `$ref` pointers to other files and/or URLs.  Maybe you know all the referenced files ahead of time.  Maybe you don't.  Maybe some are local files, and others are remote URLs.  Maybe they are a mix of JSON and YAML format.  Maybe some of the files contain cross-references to each other.\n\n```javascript\n{\n  \"definitions\": {\n    \"person\": {\n      // references an external file\n      \"$ref\": \"schemas/people/Bruce-Wayne.json\"\n    },\n    \"place\": {\n      // references a sub-schema in an external file\n      \"$ref\": \"schemas/places.yaml#/definitions/Gotham-City\"\n    },\n    \"thing\": {\n      // references a URL\n      \"$ref\": \"http://wayne-enterprises.com/things/batmobile\"\n    },\n    \"color\": {\n      // references a value in an external file via an internal reference\n      \"$ref\": \"#/definitions/thing/properties/colors/black-as-the-night\"\n    }\n  }\n}\n```\n\n## The Solution\nJSON Schema $Ref Parser is a full [JSON Reference](https://tools.ietf.org/html/draft-pbryan-zyp-json-ref-03) and [JSON Pointer](https://tools.ietf.org/html/rfc6901) implementation that crawls even the most complex [JSON Schemas](http://json-schema.org/latest/json-schema-core.html) and gives you simple, straightforward JavaScript objects.\n\n- Use **JSON** or **YAML** schemas &mdash; or even a mix of both!\n- Supports `$ref` pointers to external files and URLs, as well as [custom sources](https://apitools.dev/json-schema-ref-parser/docs/plugins/resolvers.html) such as databases\n- Can [bundle](https://apitools.dev/json-schema-ref-parser/docs/ref-parser.html#bundlepath-options-callback) multiple files into a single schema that only has _internal_ `$ref` pointers\n- Can [dereference](https://apitools.dev/json-schema-ref-parser/docs/ref-parser.html#dereferencepath-options-callback) your schema, producing a plain-old JavaScript object that's easy to work with\n- Supports [circular references](https://apitools.dev/json-schema-ref-parser/docs/#circular-refs), nested references, back-references, and cross-references between files\n- Maintains object reference equality &mdash; `$ref` pointers to the same value always resolve to the same object instance\n- Tested in Node v10, v12, & v14, and all major web browsers on Windows, Mac, and Linux\n\n\n## Example\n\n```javascript\n$RefParser.dereference(mySchema, (err, schema) => {\n  if (err) {\n    console.error(err);\n  } else {\n    // `schema` is just a normal JavaScript object that contains your entire JSON Schema,\n    // including referenced files, combined into a single object\n    console.log(schema.definitions.person.properties.firstName);\n  }\n})\n```\n\nOr use `async`/`await` syntax instead. The following example is the same as above:\n\n```javascript\ntry {\n  const schema = await $RefParser.dereference(mySchema);\n  console.log(schema.definitions.person.properties.firstName);\n} catch(err) {\n  console.error(err);\n}\n```\n\nFor more detailed examples, please see the [API Documentation](https://apitools.dev/json-schema-ref-parser/docs/)\n\n## Installation\nInstall using [npm](https://docs.npmjs.com/about-npm/):\n\n```bash\nnpm install @readme/json-schema-ref-parser\n```\n\n## Usage\nWhen using JSON Schema $Ref Parser in Node.js apps, you'll probably want to use **CommonJS** syntax:\n\n```javascript\nconst $RefParser = require(\"@readme/json-schema-ref-parser\");\n```\n\nWhen using a transpiler such as [Babel](https://babeljs.io/) or [TypeScript](https://www.typescriptlang.org/), or a bundler such as [Webpack](https://webpack.js.org/) or [Rollup](https://rollupjs.org/), you can use **ECMAScript modules** syntax instead:\n\n```javascript\nimport $RefParser from \"@readme/json-schema-ref-parser\";\n```\n\n## Differences from `@apidevtools/json-schema-ref-parser`\n\n* Forces YAML to conform to JSON-compatible types. https://github.com/APIDevTools/json-schema-ref-parser/pull/247\n* Improved support for OpenAPI 3.1 definitions where `$ref` pointers may live alongside a `description` property. https://github.com/readmeio/json-schema-ref-parser/pull/2\n* Exposes a new `$refs.circularRefs` property containing an array of any circular `$ref` pointers that may exist within the schema definition.\n\n## Browser support\nJSON Schema $Ref Parser supports recent versions of every major web browser.  Older browsers may require [Babel](https://babeljs.io/) and/or [polyfills](https://babeljs.io/docs/en/next/babel-polyfill).\n\nTo use JSON Schema $Ref Parser in a browser, you'll need to use a bundling tool such as [Webpack](https://webpack.js.org/), [Rollup](https://rollupjs.org/), [Parcel](https://parceljs.org/), or [Browserify](http://browserify.org/). Some bundlers may require a bit of configuration, such as setting `browser: true` in [rollup-plugin-resolve](https://github.com/rollup/rollup-plugin-node-resolve).\n\n## API Documentation\nFull API documentation is available [right here](https://apitools.dev/json-schema-ref-parser/docs/)\n\n## License\nJSON Schema $Ref Parser is 100% free and open-source, under the [MIT license](LICENSE). Use it however you want.\n\nThis package is [Treeware](http://treeware.earth). If you use it in production, then we ask that you [**buy the world a tree**](https://plant.treeware.earth/APIDevTools/json-schema-ref-parser) to thank us for our work. By contributing to the Treeware forest you’ll be creating employment for local families and restoring wildlife habitats.\n","readmeFilename":"README.md"}