{"_id":"@terrazzo/json-schema-tools","_rev":"8-6a513995dde947b6b88b8c921881309d","name":"@terrazzo/json-schema-tools","dist-tags":{"alpha":"0.1.0-alpha.1","latest":"0.3.0"},"versions":{"0.0.1":{"name":"@terrazzo/json-schema-tools","version":"0.0.1","keywords":["json","json schema","pointer","ref","rfc","6901"],"author":{"name":"Drew Powers","email":"drew@pow.rs"},"license":"MIT","_id":"@terrazzo/json-schema-tools@0.0.1","maintainers":[{"name":"drewpowers","email":"drew@pow.rs"}],"homepage":"https://terrazzo.app","bugs":{"url":"https://github.com/terrazzoapp/terrazzo/issues"},"dist":{"shasum":"202f0a612a2698d5c4eea59f30f364a1f810b9e8","tarball":"https://registry.npmjs.org/@terrazzo/json-schema-tools/-/json-schema-tools-0.0.1.tgz","fileCount":8,"integrity":"sha512-ep8pUAQmJH6EsJwvkEmQtEKm+pJeJB1NnLgAKMN5UruLi5VdT+qOq9IJ8wzHcAv4RrlbpLrh9Qs32+gZ6UVfIQ==","signatures":[{"sig":"MEQCIHMf6/IuHKEp+ibOv4y5f73DUnKb9iuXePqqNOLrFjqqAiBZ66q/9yFAsQkmbVvI6cIzSdfYCYzDPcTo3eZtTOGdbg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":50122},"main":"./dist/index.js","type":"module","_from":"file:terrazzo-json-schema-tools-0.0.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./*":"./*"},"scripts":{"dev":"rolldown --watch -c","lint":"pnpm --filter @terrazzo/json-schema-tools run \"/^lint:(js|ts)/\"","test":"vitest run","bench":"vitest bench","build":"rolldown -c && attw --profile esm-only --pack .","lint:js":"biome check .","lint:ts":"tsc --noEmit"},"_npmUser":{"name":"drewpowers","email":"drew@pow.rs"},"_resolved":"/private/var/folders/w9/ynyymzmd24bf9rp1x25vqqt00000gn/T/6ba9c5fbf0e6c0e70796b5eda64a55f6/terrazzo-json-schema-tools-0.0.1.tgz","_integrity":"sha512-ep8pUAQmJH6EsJwvkEmQtEKm+pJeJB1NnLgAKMN5UruLi5VdT+qOq9IJ8wzHcAv4RrlbpLrh9Qs32+gZ6UVfIQ==","repository":{"url":"git+https://github.com/terrazzoapp/terrazzo.git","type":"git","directory":"./packages/json-schema-tools/"},"_npmVersion":"11.6.0","description":"Bundle JSON Schema documents and tools for resolving $refs.","directories":{},"_nodeVersion":"24.9.0","dependencies":{"@humanwhocodes/momoa":"^3.3.9"},"_hasShrinkwrap":false,"devDependencies":{"yaml-to-momoa":"0.0.6","@apidevtools/json-schema-ref-parser":"^11.9.3"},"peerDependencies":{"@humanwhocodes/momoa":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-tools_0.0.1_1759693568614_0.37617823041130016","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@terrazzo/json-schema-tools","version":"0.1.0","keywords":["json","json schema","pointer","ref","rfc","6901"],"author":{"name":"Drew Powers","email":"drew@pow.rs"},"license":"MIT","_id":"@terrazzo/json-schema-tools@0.1.0","maintainers":[{"name":"drewpowers","email":"drew@pow.rs"}],"homepage":"https://terrazzo.app","bugs":{"url":"https://github.com/terrazzoapp/terrazzo/issues"},"dist":{"shasum":"6a271987574bbab3dafebab43cd6164f50f3e8f7","tarball":"https://registry.npmjs.org/@terrazzo/json-schema-tools/-/json-schema-tools-0.1.0.tgz","fileCount":9,"integrity":"sha512-s4cE4XYp4DvYTAcLcHGtedKdZnyso78oi8FqJ19vN7cBHs9hqJ2LpHI1gQ6G1Mm9okZpIKq6Ip/6eH747fxfcQ==","signatures":[{"sig":"MEUCIQD7z1dq00LA3O2Lf/UDff+kg9jk0C76mHQ6HXEA2+V8EgIgWrAEzqvp8pWgirHYrZw3LBk1khS+Bc0PqnWr4Mj7VpU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49414},"main":"./dist/index.js","type":"module","_from":"file:terrazzo-json-schema-tools-0.1.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./*":"./*"},"scripts":{"dev":"rolldown --watch -c","lint":"pnpm --filter @terrazzo/json-schema-tools run \"/^lint:(js|ts)/\"","test":"vitest run","bench":"vitest bench","build":"rolldown -c && attw --profile esm-only --pack .","lint:js":"biome check .","lint:ts":"tsc --noEmit"},"_npmUser":{"name":"drewpowers","email":"drew@pow.rs"},"_resolved":"/tmp/8196670beb57024fd714f9dbd11fab16/terrazzo-json-schema-tools-0.1.0.tgz","_integrity":"sha512-s4cE4XYp4DvYTAcLcHGtedKdZnyso78oi8FqJ19vN7cBHs9hqJ2LpHI1gQ6G1Mm9okZpIKq6Ip/6eH747fxfcQ==","repository":{"url":"git+https://github.com/terrazzoapp/terrazzo.git","type":"git","directory":"./packages/json-schema-tools/"},"_npmVersion":"11.6.2","description":"Bundle JSON Schema documents and tools for resolving $refs.","directories":{},"_nodeVersion":"24.11.1","dependencies":{"@humanwhocodes/momoa":"^3.3.10"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"yaml-to-momoa":"0.0.6","@apidevtools/json-schema-ref-parser":"^11.9.3"},"peerDependencies":{"@humanwhocodes/momoa":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-tools_0.1.0_1763600640440_0.9232361208958413","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.0":{"name":"@terrazzo/json-schema-tools","version":"0.1.0-alpha.0","keywords":["json","json schema","pointer","ref","rfc","6901"],"author":{"name":"Drew Powers","email":"drew@pow.rs"},"license":"MIT","_id":"@terrazzo/json-schema-tools@0.1.0-alpha.0","maintainers":[{"name":"drewpowers","email":"drew@pow.rs"}],"homepage":"https://terrazzo.app","bugs":{"url":"https://github.com/terrazzoapp/terrazzo/issues"},"dist":{"shasum":"c1c18a28964388681f0c8780769af82a5cd596b2","tarball":"https://registry.npmjs.org/@terrazzo/json-schema-tools/-/json-schema-tools-0.1.0-alpha.0.tgz","fileCount":9,"integrity":"sha512-Rikt16owCLKWD0BfxhUrEasOX5az56JOFnoKlcdcspxE4OCnLsQwt+bcFzaPSRjS96ypsTUgCs38u2EKR4ZvgA==","signatures":[{"sig":"MEYCIQCZB/pwlhzYW/HHqezlDvyD4kUgVulhzw20joAW4fp73gIhAJKCRS0HSli4gcztppapME+Vy9XM9tX8eGSQ9GRBTS6I","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54974},"main":"./dist/index.js","type":"module","_from":"file:terrazzo-json-schema-tools-0.1.0-alpha.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./*":"./*"},"scripts":{"dev":"rolldown --watch -c","lint":"pnpm --filter @terrazzo/json-schema-tools run \"/^lint:(js|ts)/\"","test":"vitest run","bench":"vitest bench","build":"rolldown -c && attw --profile esm-only --pack .","lint:js":"biome check .","lint:ts":"tsc --noEmit"},"_npmUser":{"name":"drewpowers","email":"drew@pow.rs"},"_resolved":"/tmp/b6921d8846138f0165f3a88f87fd082d/terrazzo-json-schema-tools-0.1.0-alpha.0.tgz","_integrity":"sha512-Rikt16owCLKWD0BfxhUrEasOX5az56JOFnoKlcdcspxE4OCnLsQwt+bcFzaPSRjS96ypsTUgCs38u2EKR4ZvgA==","repository":{"url":"git+https://github.com/terrazzoapp/terrazzo.git","type":"git","directory":"./packages/json-schema-tools/"},"_npmVersion":"11.6.2","description":"Bundle JSON Schema documents and tools for resolving $refs.","directories":{},"_nodeVersion":"24.11.1","dependencies":{"@humanwhocodes/momoa":"^3.3.10"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"yaml-to-momoa":"0.0.8","@apidevtools/json-schema-ref-parser":"^11.9.3"},"peerDependencies":{"@humanwhocodes/momoa":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/json-schema-tools_0.1.0-alpha.0_1763702903386_0.2140607137831294","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.1":{"name":"@terrazzo/json-schema-tools","version":"0.1.0-alpha.1","keywords":["json","json schema","pointer","ref","rfc","6901"],"author":{"name":"Drew Powers","email":"drew@pow.rs"},"license":"MIT","_id":"@terrazzo/json-schema-tools@0.1.0-alpha.1","maintainers":[{"name":"drewpowers","email":"drew@pow.rs"}],"homepage":"https://terrazzo.app","bugs":{"url":"https://github.com/terrazzoapp/terrazzo/issues"},"dist":{"shasum":"41d30023010b36937e0e84d0933a37b7df94f13f","tarball":"https://registry.npmjs.org/@terrazzo/json-schema-tools/-/json-schema-tools-0.1.0-alpha.1.tgz","fileCount":9,"integrity":"sha512-4gNg+dIOzxlk8aMicORH+rbMxogshIOlqFKrWDSsOEfAdSlnRIlkT6c0C02NqqX+9lr8t8GfRW+GdmL47L+CaQ==","signatures":[{"sig":"MEYCIQDKI7AnBkcIxsWsjxMbY2uUHPWHx80nsEUYr4m+UptE4gIhAIfZuaCJQ1p6Y0tV6ftncvMCkG9Re62ldXlQQv/KsyIl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":55111},"main":"./dist/index.js","type":"module","_from":"file:terrazzo-json-schema-tools-0.1.0-alpha.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./*":"./*"},"scripts":{"dev":"rolldown --watch -c","lint":"pnpm --filter @terrazzo/json-schema-tools run \"/^lint:(js|ts)/\"","test":"vitest run","bench":"vitest bench","build":"rolldown -c && attw --profile esm-only --pack .","format":"biome check --fix --unsafe .","lint:js":"biome check .","lint:ts":"tsc --noEmit"},"_npmUser":{"name":"drewpowers","email":"drew@pow.rs"},"_resolved":"/tmp/88c2a59f6f9908658de91eba67dbac20/terrazzo-json-schema-tools-0.1.0-alpha.1.tgz","_integrity":"sha512-4gNg+dIOzxlk8aMicORH+rbMxogshIOlqFKrWDSsOEfAdSlnRIlkT6c0C02NqqX+9lr8t8GfRW+GdmL47L+CaQ==","repository":{"url":"git+https://github.com/terrazzoapp/terrazzo.git","type":"git","directory":"./packages/json-schema-tools/"},"_npmVersion":"11.6.2","description":"Bundle JSON Schema documents and tools for resolving $refs.","directories":{},"_nodeVersion":"24.11.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"yaml-to-momoa":"0.0.8","@humanwhocodes/momoa":"^3.3.10","@apidevtools/json-schema-ref-parser":"^11.9.3"},"peerDependencies":{"yaml-to-momoa":"0.0.8","@humanwhocodes/momoa":"^3.0.0"},"peerDependenciesMeta":{"yaml-to-momoa":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-schema-tools_0.1.0-alpha.1_1765216601700_0.0333657726760106","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@terrazzo/json-schema-tools","version":"0.2.0","keywords":["json","json schema","pointer","ref","rfc","6901"],"author":{"name":"Drew Powers","email":"drew@pow.rs"},"license":"MIT","_id":"@terrazzo/json-schema-tools@0.2.0","maintainers":[{"name":"drewpowers","email":"drew@pow.rs"}],"homepage":"https://terrazzo.app","bugs":{"url":"https://github.com/terrazzoapp/terrazzo/issues"},"dist":{"shasum":"1f55ecf38a2e54f6806845dd71295f7fef32114f","tarball":"https://registry.npmjs.org/@terrazzo/json-schema-tools/-/json-schema-tools-0.2.0.tgz","fileCount":9,"integrity":"sha512-k/yPRIImOjUUYV+P9Joy13DXxiUqt4t1SiFaHX+igWsmpzG5x1BdYo3T/SJKPEy7vb9gLdklOUS/GfdQpH8bnw==","signatures":[{"sig":"MEUCIBZZgvacnTL8/5r7jQiiGTQofZKAeH7PgL4scEfeHjZMAiEA70SB1CgOj06Yu75QdICkWT24hnVpy5df2SAGG9V+ak8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60248},"main":"./dist/index.js","type":"module","_from":"file:terrazzo-json-schema-tools-0.2.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./*":"./*"},"scripts":{"dev":"rolldown --watch -c","lint":"pnpm --filter @terrazzo/json-schema-tools run \"/^lint:(js|ts)/\"","test":"vitest run","bench":"vitest bench","build":"rolldown -c && attw --profile esm-only --pack .","format":"biome check --fix --unsafe .","lint:js":"biome check .","lint:ts":"tsc --noEmit"},"_npmUser":{"name":"drewpowers","email":"drew@pow.rs"},"_resolved":"/private/var/folders/w9/ynyymzmd24bf9rp1x25vqqt00000gn/T/fe32ac7826538f6b18242c447e0e6a7c/terrazzo-json-schema-tools-0.2.0.tgz","_integrity":"sha512-k/yPRIImOjUUYV+P9Joy13DXxiUqt4t1SiFaHX+igWsmpzG5x1BdYo3T/SJKPEy7vb9gLdklOUS/GfdQpH8bnw==","repository":{"url":"git+https://github.com/terrazzoapp/terrazzo.git","type":"git","directory":"./packages/json-schema-tools/"},"_npmVersion":"11.6.1","description":"Bundle JSON Schema documents and tools for resolving $refs.","directories":{},"_nodeVersion":"24.10.0","_hasShrinkwrap":false,"devDependencies":{"yaml-to-momoa":"0.0.8","@humanwhocodes/momoa":"^3.3.10","@apidevtools/json-schema-ref-parser":"^11.9.3"},"peerDependencies":{"yaml-to-momoa":"0.0.8","@humanwhocodes/momoa":"^3.0.0"},"peerDependenciesMeta":{"yaml-to-momoa":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-schema-tools_0.2.0_1765809894625_0.20951797906690706","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@terrazzo/json-schema-tools","version":"0.2.1","keywords":["json","json schema","pointer","ref","rfc","6901"],"author":{"name":"Drew Powers","email":"drew@pow.rs"},"license":"MIT","_id":"@terrazzo/json-schema-tools@0.2.1","maintainers":[{"name":"drewpowers","email":"drew@pow.rs"}],"homepage":"https://terrazzo.app","bugs":{"url":"https://github.com/terrazzoapp/terrazzo/issues"},"dist":{"shasum":"a476ad1333c7eacc98f8fea686b3b14cd1f815db","tarball":"https://registry.npmjs.org/@terrazzo/json-schema-tools/-/json-schema-tools-0.2.1.tgz","fileCount":9,"integrity":"sha512-hJPz/huIuYCbXmTV6TU9PNl8BeFFoSQVXfB2oHf7fiY1rymrfMfoFJAQ0IErVoisuBR0DdYquTlQkY/cnz+vEQ==","signatures":[{"sig":"MEQCIDxVnFy8HvUnDmIUlrHMOWAB43iLRJw2NY7CvTmvS9LQAiAKb+mlbV04Ldt0yDYzZgkAdgBGUvaDJUyFb4Ji1zDS2g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@terrazzo%2fjson-schema-tools@0.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":59362},"main":"./dist/index.js","type":"module","_from":"file:terrazzo-json-schema-tools-0.2.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./*":"./*"},"scripts":{"dev":"rolldown --watch -c","lint":"pnpm --filter @terrazzo/json-schema-tools run \"/^lint:(js|ts)/\"","test":"vitest run","bench":"vitest bench","build":"rolldown -c && attw --profile esm-only --pack .","format":"biome check --fix --unsafe .","lint:js":"biome check .","lint:ts":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:80a792df-febb-4aff-a42f-205332745f28"}},"_resolved":"/tmp/1f792819e31c92a135873caae1e29238/terrazzo-json-schema-tools-0.2.1.tgz","_integrity":"sha512-hJPz/huIuYCbXmTV6TU9PNl8BeFFoSQVXfB2oHf7fiY1rymrfMfoFJAQ0IErVoisuBR0DdYquTlQkY/cnz+vEQ==","repository":{"url":"git+https://github.com/terrazzoapp/terrazzo.git","type":"git","directory":"./packages/json-schema-tools/"},"_npmVersion":"11.11.0","description":"Bundle JSON Schema documents and tools for resolving $refs.","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"yaml-to-momoa":"0.0.9","@humanwhocodes/momoa":"^3.3.10","@apidevtools/json-schema-ref-parser":"^11.9.3"},"peerDependencies":{"yaml-to-momoa":"0.0.9","@humanwhocodes/momoa":"^3.0.0"},"peerDependenciesMeta":{"yaml-to-momoa":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-schema-tools_0.2.1_1775747569173_0.21938633258436258","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@terrazzo/json-schema-tools","version":"0.2.2","keywords":["json","json schema","pointer","ref","rfc","6901"],"author":{"name":"Drew Powers","email":"drew@pow.rs"},"license":"MIT","_id":"@terrazzo/json-schema-tools@0.2.2","maintainers":[{"name":"drewpowers","email":"drew@pow.rs"}],"homepage":"https://terrazzo.app","dist":{"shasum":"265be429dfd39313b0bf81050c482abf1226cca1","tarball":"https://registry.npmjs.org/@terrazzo/json-schema-tools/-/json-schema-tools-0.2.2.tgz","fileCount":29,"integrity":"sha512-4g+n4yG5XfqSJRMiH8wz+mTGibDavrGkxQ3s0gOrUsvYBHe9HU/j0ElW0PMYtR54+dcW8Tt9qpFSE7BfZcInmA==","signatures":[{"sig":"MEUCIQDFPfYN2BWV0L3PCaBRi7hpAhK69uFlQWydmp9TNPUyQgIgWmz0jHsclANWtv8xJwoLNs/L2pDmNNloYvUAIBN1lCY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@terrazzo%2fjson-schema-tools@0.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":57869},"main":"./dist/index.js","type":"module","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./*":"./*"},"scripts":{"dev":"tsc -b tsconfig.build.json -w","fmt":"oxfmt","lint":"oxlint --quiet && oxfmt --check && tsc --noEmit","test":"vitest run","bench":"vitest bench","build":"tsc -b tsconfig.build.json && attw --profile esm-only --pack .","fmt:check":"oxfmt --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:80a792df-febb-4aff-a42f-205332745f28"}},"repository":{"url":"https://github.com/terrazzoapp/terrazzo.git","type":"git","directory":"./packages/json-schema-tools/"},"description":"Bundle JSON Schema documents and tools for resolving $refs.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"yaml-to-momoa":"0.0.9","@humanwhocodes/momoa":"^3.3.10","@apidevtools/json-schema-ref-parser":"^11.9.3"},"peerDependencies":{"yaml-to-momoa":"0.0.9","@humanwhocodes/momoa":"^3.0.0"},"peerDependenciesMeta":{"yaml-to-momoa":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-schema-tools_0.2.2_1785086804924_0.45983539836181153","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@terrazzo/json-schema-tools","version":"0.3.0","description":"Bundle JSON Schema documents and tools for resolving $refs.","type":"module","keywords":["json","json schema","pointer","ref","rfc","6901"],"author":{"name":"Drew Powers","email":"drew@pow.rs"},"main":"./dist/index.js","exports":{".":{"default":"./dist/index.js","types":"./dist/index.d.ts"},"./*":"./*"},"homepage":"https://terrazzo.app","repository":{"type":"git","url":"https://github.com/terrazzoapp/terrazzo.git","directory":"./packages/json-schema-tools/"},"license":"MIT","peerDependencies":{"@humanwhocodes/momoa":"^3.0.0","yaml-to-momoa":"0.1.0"},"peerDependenciesMeta":{"yaml-to-momoa":{"optional":true}},"devDependencies":{"@apidevtools/json-schema-ref-parser":"^11.9.3","@humanwhocodes/momoa":"^3.3.10","yaml-to-momoa":"0.1.0"},"scripts":{"build":"tsc -b tsconfig.build.json && attw --profile esm-only --pack .","dev":"tsc -b tsconfig.build.json -w","bench":"vitest bench","fmt":"oxfmt","fmt:check":"oxfmt --check","lint":"oxlint --quiet && oxfmt --check && tsc --noEmit","test":"vitest run"},"_nodeVersion":"24.18.0","_id":"@terrazzo/json-schema-tools@0.3.0","dist":{"integrity":"sha512-uF6tpAi+slKtvycLvwZGN1siLUTTqVri1iF2b05Dx1hvYM0WWzUdLC9RD7tAwQ39tTPf9rmI6czA8W0rGB5wUQ==","shasum":"19498b22ac3b5918f4280a2fda21e6891e4a3b81","tarball":"https://registry.npmjs.org/@terrazzo/json-schema-tools/-/json-schema-tools-0.3.0.tgz","fileCount":29,"unpackedSize":57947,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@terrazzo%2fjson-schema-tools@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQC2hJTdeL0hQ0K2YdyfH/wU8ieTVnPRuvppCvOUk7XspgIhAIZ8ytVF/VqZT6BUFhySfOoeT7DVBipVfxZtU6FJfgsi"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:80a792df-febb-4aff-a42f-205332745f28"}},"directories":{},"maintainers":[{"name":"drewpowers","email":"drew@pow.rs"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/json-schema-tools_0.3.0_1786486197631_0.9516091716247335"},"_hasShrinkwrap":false}},"time":{"created":"2025-10-05T19:46:08.538Z","modified":"2026-08-11T22:09:58.128Z","0.0.1":"2025-10-05T19:46:08.813Z","0.1.0":"2025-11-20T01:04:00.630Z","0.1.0-alpha.0":"2025-11-21T05:28:23.576Z","0.1.0-alpha.1":"2025-12-08T17:56:41.840Z","0.2.0":"2025-12-15T14:44:54.763Z","0.2.1":"2026-04-09T15:12:49.330Z","0.2.2":"2026-07-26T17:26:45.074Z","0.3.0":"2026-08-11T22:09:57.787Z"},"author":{"name":"Drew Powers","email":"drew@pow.rs"},"license":"MIT","homepage":"https://terrazzo.app","keywords":["json","json schema","pointer","ref","rfc","6901"],"repository":{"type":"git","url":"https://github.com/terrazzoapp/terrazzo.git","directory":"./packages/json-schema-tools/"},"description":"Bundle JSON Schema documents and tools for resolving $refs.","maintainers":[{"name":"drewpowers","email":"drew@pow.rs"}],"readme":"# @terrazzo/json-schema-tools\n\nLibrary for bundling JSON Schema files and parsing [JSON refs](https://datatracker.ietf.org/doc/html/rfc6901). Uses [Momoa](https://github.com/humanwhocodes/momoa) to provide support for JSONC and source mapping.\n\n## API\n\n### parseRef\n\nLower-level function to parse a `$ref` path. Accepts either a string or reference object.\n\n> [!NOTE]\n> If pointing to the same file, it will return `.` as the URL.\n\n```ts\nimport { parseRef } from \"@terrazzo/json-schema-tools\";\n\nparseRef(\"tokens.json#/foo/bar\"); // { url: 'tokens.json', subpath: ['foo', 'bar'] }\nparseRef({ $ref: \"#/baz/bat\" }); // { url: '.', subpath: ['baz', 'bat'] }\n```\n\n### Comparison\n\n| Package                             |      Size | Ops/s | Speed | ESM? |\n| :---------------------------------- | --------: | ----: | ----: | :--: |\n| @terrazzo/json-schema-tools         |  `0.4 kB` |  9.3M |  100% |  ✅  |\n| @apidevtools/json-schema-ref-parser | `82.2 kB` |  2.3M |   25% |      |\n\n_Note: for every package tested, we’re comparing against the lowest-level method that does equivalent work. We’re not comparing apples to oranges and testing extraneous codepaths._\n\n### bundle\n\nGiven an array of JSON schema documents, will bundle them together as a [Momoa AST](https://github.com/humanwhocodes/momoa).\n\n```ts\nimport { bundle } from \"@terrazzo/json-schema-tools\";\nimport * as momoa from \"@humanwhocodes/momoa\";\n\nconst documents = [\n  {\n    filename: new URL(\"file:///a.json\"),\n    src: '{\"a\":\"a\"}',\n  },\n  {\n    filename: new URL(\"file:///b.json\"),\n    src: '{\"b\":\"b\"}',\n  },\n  {\n    filename: new URL(\"file:///b.json\"),\n    src: '{\"c\":\"c\"}',\n  },\n];\n\nconst document = await bundle(documents, {\n  req: (url) => fetch(url).then((res) => res.text()),\n});\n\nconsole.log(momoa.print(document)); // produce JSON string, with original indentation and everything preserved\nconsole.log(momoa.evaluate(document)); // produce in-memory JS\n```\n\n#### Options\n\nThe `bundle()` method takes an options param as its 2nd argument. These are all the options:\n\n| Name            | Type                                       | Description                                                                                                                                                                                                        |\n| :-------------- | :----------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| **req**         | (src: URL, origin: URL) => Promise<string> | Handle remote requests, either via fetching or file system reads.                                                                                                                                                  |\n| **parse**       | (src: any, filename: URL) => DocumentNode; | Optional wrapper around Momoa’s parser. You may want to do this if you want to transform the sources as they come in, before they are parsed. If providing this function, you must `parse()` using Momoa yourself. |\n| **yamlToMomoa** | `yaml-to-momoa`                            | Pass in the module for `yaml-to-momoa` to add support for YAML (`import` it, then pass it as a param).                                                                                                             |\n\n### encodeFragment\n\nRe-encode a path array back into a pointer string.\n\n```ts\nencodeFragment([\"components\", \"schemas\", \"FooBar\"]); // #/components/schemas/FooBar\n```\n\n## Additional information\n\n### Why Momoa?\n\nThere are 3 main problems with relying on JavaScript’s major parser alone:\n\n1. **It doesn’t preserve original source locations.** For hand-authored JSON, it’s helpful to preserve source maps, and original syntax. That way we can provide exact line & column in errors.\n2. **It doesn’t support JSONC (JSON with comments) and other quality of life improvements.** Momoa handles comments in JSONC and JSON5, something standard `JSON.parse()` can’t do.\n3. **Transformations are easier.** The native replacer/reviver API isn’t as intuitive and flexible as standard AST operations.\n\nAll of these improvements make working with Momoa preferable to raw JSON, and also without incurring significant performance cost (`JSON.parse()` will always be a little faster, sure, but this isn’t that much slower either).\n","readmeFilename":""}