{"_id":"@inixiative/json-rules","_rev":"63-92033605d233bfd8f23ea5529c516bda","name":"@inixiative/json-rules","dist-tags":{"latest":"2.25.0"},"versions":{"1.0.0":{"name":"@inixiative/json-rules","version":"1.0.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@1.0.0","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"8fa8b77a362db99c012bfbf64faea568f5cc03ef","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-1.0.0.tgz","fileCount":9,"integrity":"sha512-UmAvkddL8GyKQfC9p59pAg+wGZ4hs8NwYv0t9hdGwuT3Hy9e9LjGrRUK124Vit//F1irFdTK12L38gUeg+GlvA==","signatures":[{"sig":"MEYCIQDEfCgpk/9kxwRzgifJPv28QJb3J32THJSrLAJlNyWPKAIhAMktdwi00cr6sZHyEWYiyqNERZ5NvoY1WVUu4XUOjMf/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":88919},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"d85a6c0e9ceee859db91858721f79caef5cbac09","scripts":{"test":"bun test","build":"tsup","prepublishOnly":"bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.0.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"dayjs":"^1.11.13","lodash":"^4.17.21"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","@types/bun":"latest","typescript":"^5.0.0","@types/lodash":"^4.17.20"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_1.0.0_1752292733815_0.24035723121286612","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@inixiative/json-rules","version":"1.0.1","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@1.0.1","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"5574896cd24b692824c9ef5e1d29bf732cd72be5","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-1.0.1.tgz","fileCount":9,"integrity":"sha512-4T+WoxDPNEwQ3xLY8o8h4c6wFcgX7pGGGzhXsqd0KLerPcSaHsJsscNp1Fy3C86pEW3PFkjOA5PohwKnLbjQcw==","signatures":[{"sig":"MEUCIAeZrlU+XjTdVisQM0IY3/y6h9lBApoqMlBjKD6QOiexAiEAvHxxgw/bBPgWByyVWoCwKmXnezzwUwWLpHzHtOQ4d4Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":88919},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"da2a5d74e98b04f949c6987756ed1705e393950e","scripts":{"test":"bun test","build":"tsup","prepublishOnly":"bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.0.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"dayjs":"^1.11.13","lodash":"^4.17.21"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","@types/bun":"latest","typescript":"^5.0.0","@types/lodash":"^4.17.20"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_1.0.1_1752453099485_0.07299738809665612","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@inixiative/json-rules","version":"1.0.2","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@1.0.2","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"fd94c794de7d4dd8630815c6cb9888a2f4e6e409","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-1.0.2.tgz","fileCount":9,"integrity":"sha512-CNgWtJuz0ZY0rMIKPO2HRGG3mMoXnk1S/8vL2OWdK8hBv70DFlvgdO9mjGhKBuFc67EqiM2OGWPWO06vFefwtg==","signatures":[{"sig":"MEUCIQDNs2bMQyv9OMTgW0WfYjxyvIJExwvpmOk+21tdtLI2MAIgcZ3XnquExgy2VpxKnjL6r0zm4Cb0kFjR7rGyBZpHRkI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89052},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"15699cd67e3239a94e29d90894900e7a882eada3","scripts":{"test":"bun test","build":"tsup","prepublishOnly":"bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.0.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"dayjs":"^1.11.13","lodash":"^4.17.21"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","@types/bun":"latest","typescript":"^5.0.0","@types/lodash":"^4.17.20"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_1.0.2_1752458451326_0.23816836676796216","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@inixiative/json-rules","version":"1.1.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@1.1.0","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"3e9c3647d96c05607cdfd79be12865f5f681800b","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-1.1.0.tgz","fileCount":9,"integrity":"sha512-cRlJrW3RayJNB2QCaBhTuNVcH5uXyWrJ6YTvLl+HkE2u7Pe4X6oKz/HO9oymtPvtONMVkJ3L/qoIM+yajUScQw==","signatures":[{"sig":"MEQCIBC4zqtS6+wmlGmQKZw1osdj16s3Ol8Vd/5amCzl+s9dAiAEz2C9BkWjM9lhNela6OdZ1v12ouca1jrej2rOkVhdZQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":140472},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"3e6009f1fcc33373e6b53f72828cd17d0dd89e65","scripts":{"test":"bun test","build":"tsup","prepublishOnly":"bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.0.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"dayjs":"^1.11.13","lodash":"^4.17.21"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","@types/bun":"latest","typescript":"^5.0.0","@types/lodash":"^4.17.20","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_1.1.0_1769573311901_0.5147633179516893","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@inixiative/json-rules","version":"1.1.1","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@1.1.1","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"c7e47bd12bc2769488a102cb78293fc951976193","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-1.1.1.tgz","fileCount":9,"integrity":"sha512-9BoxssXu5CI0CoUHphWUW8Jli1vQHzSNUmsuwKS+d3ghvBJGVfXP12ffxywOjH+pGBS4EZvRkJfNGmqTWQjQyg==","signatures":[{"sig":"MEQCID/oEyExUElzgbRDH/u1OKII57HEai1T1JdDrZqRNQ2+AiBz/U0bOFgg+xlrgvdnwzSg4JaARzOiIzc+euqkwyhgbQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":145411},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"4450311df652b4890b3100a58f7814a143e0cdbb","scripts":{"test":"bun test","build":"tsup","prepublishOnly":"bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.0.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"pg":"^8.17.2","dayjs":"^1.11.13","lodash":"^4.17.21"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","@types/pg":"^8.16.0","@types/bun":"latest","typescript":"^5.0.0","@types/lodash":"^4.17.20","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_1.1.1_1769574195525_0.8143948783924349","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@inixiative/json-rules","version":"1.1.2","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@1.1.2","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"4a511b9b65a12c2ad074ad1f0386a664f51b67c9","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-1.1.2.tgz","fileCount":9,"integrity":"sha512-Fs663pxNG8BIWmw92jH2RG2u8rxbfgVnLzCnIwelbzoRGlLeR57l/7IzFIwyiup+v5SUgz84clC2Y5rzux1AiA==","signatures":[{"sig":"MEUCIQC639XGQZUMzG7O9GWooVQLyNGnKFnC5Jt+COp6SrP/wgIgIW4es4A5uhr70y62kA+dE+F6nJerwCh0hYFLgLNBEhg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":146797},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"8464a430b9cded6e12d17bdd3cfe4dbf037ed73c","scripts":{"test":"bun test","build":"tsup","prepublishOnly":"bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.0.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"pg":"^8.17.2","dayjs":"^1.11.13","lodash":"^4.17.21"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","@types/pg":"^8.16.0","@types/bun":"latest","typescript":"^5.0.0","@types/lodash":"^4.17.20","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_1.1.2_1769999284963_0.26545203145545404","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@inixiative/json-rules","version":"1.2.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@1.2.0","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"2be61ba79fa8c3e6175612990f2cbb4d782f1b96","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-1.2.0.tgz","fileCount":9,"integrity":"sha512-+yQivpKffyHU32Zz9/TgS/U64Y72Nuk6z3k3bLMw3X+xCzW2P9qTitPSZNv7JXCY7rRfuCbjE5tZBLA5mh7ZHQ==","signatures":[{"sig":"MEQCIAJh/0woFbi/+3S2yiCgfWO4D5SQuacJOHj4NTEwMSAaAiAshT35r7fQlTq+n3L2PIF77QMGAjqxfe4rG7tBD3N50Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":409383},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"e2b7bbc061a1d0e5b4e711a1692c37f25bee945c","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.11.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"pg":"^8.17.2","dayjs":"^1.11.13","lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","@types/pg":"^8.16.0","@types/bun":"^1.3.10","typescript":"^5.0.0","@types/lodash":"^4.17.20","@biomejs/biome":"^2.4.6","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_1.2.0_1772923026564_0.7185271478455755","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@inixiative/json-rules","version":"1.3.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@1.3.0","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"68814abe784cd9a1fe01fa6da23f3995352ab722","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-1.3.0.tgz","fileCount":9,"integrity":"sha512-EfyzBBJq0r4eewogK8VlSMDZ26JmaUCvFlXFsDPsnsk4DScNjErohY4JIN0nzX1zw+RqZc8bJnL1+LquDCxJag==","signatures":[{"sig":"MEUCIB0M4EEBQg+1cENbSImtDOpAdySPTNLGZcYKZGPCs2JaAiEAkME2XqWoBJGNY2Ta/cdRFm5YcGjlJGALtT2ePyb/PzY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":500558},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"7e469dac3e5a5f5c98525f783ce9fa02e819e5e4","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"pg":"^8.17.2","dayjs":"^1.11.13","lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","@types/pg":"^8.16.0","@types/bun":"^1.3.10","typescript":"^5.0.0","@types/lodash":"^4.17.20","@biomejs/biome":"^2.4.6","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_1.3.0_1777333669716_0.2883077796151228","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@inixiative/json-rules","version":"1.3.1","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@1.3.1","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"3920b0ba3964ff77a006bcc8ea42262acaed0434","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-1.3.1.tgz","fileCount":9,"integrity":"sha512-GD4KnvV1WLokx7nyVlc4QkH0xN2lIDSWrM/27qh/h3jG8EVEAhJDQunbAey1FGekafRqAxcC+G8zDv7g+15zCA==","signatures":[{"sig":"MEQCIARhkSuix4h/m8/aeKW+hEKNsUKqISQdhlrEPoLq9BCsAiBsAmHIccqrDTVzb33n/nGQaGUcYmEwYttJz9t303EWXw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":500558},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"67a5a88c4a3379b21980454f74cd59a5d188e2fd","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"pg":"^8.17.2","dayjs":"^1.11.13","lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","@types/pg":"^8.16.0","@types/bun":"^1.3.10","typescript":"^5.0.0","@types/lodash":"^4.17.20","@biomejs/biome":"^2.4.6","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_1.3.1_1777343600868_0.9385832203895919","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"@inixiative/json-rules","version":"1.3.2","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@1.3.2","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"761d60e50e7a6f1e587cdb2ceea662ba10da3226","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-1.3.2.tgz","fileCount":9,"integrity":"sha512-n36sTSxxhC3qC39s6EWmzJ4CemJCd36cBhCzcc/3jyOpw4986trAIiA2zt4m5O3/HmNqG9lk/jIzv4MgOuQjEQ==","signatures":[{"sig":"MEQCIGoisZnOmw26kCLnGBxoEu5pqwdJJPHLRIr2n6+VNdyZAiBdODrsBRbGbd4fW5Pxi54joR4E6jYHvba/TRDRyattBQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":501610},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"b98a76f585a86e45401f06cd4d9ee41a9c331940","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"pg":"^8.17.2","dayjs":"^1.11.13","lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","@types/pg":"^8.16.0","@types/bun":"^1.3.10","typescript":"^5.0.0","@types/lodash":"^4.17.20","@biomejs/biome":"^2.4.6","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_1.3.2_1777344364373_0.8985589919330159","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"@inixiative/json-rules","version":"1.3.3","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@1.3.3","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"e8e91937afb453e6ca24dcda57a9d66be0c2ca2d","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-1.3.3.tgz","fileCount":9,"integrity":"sha512-PgdJJnFktAV11dLHZutLxN0CgmxKl3JiK0dPZ6YCbKFogI9FmVhOXIvBtblyT2uEVxzZ3WTfq5Mt9bXBpqSu1w==","signatures":[{"sig":"MEUCIQD8P1WX6nkANH9aXWL8JyAytAbZnKJIBAV3r3P52VThogIgSxdQnvAnRxMqj+y7wb7AD3YU9qPDRYzbRyK94AEeJdE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":521431},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"4f7492fd8ebfde1ad8971bc2a00c21fe145fb7df","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"pg":"^8.17.2","dayjs":"^1.11.13","lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","@types/pg":"^8.16.0","@types/bun":"^1.3.10","typescript":"^5.0.0","@types/lodash":"^4.17.20","@biomejs/biome":"^2.4.6","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_1.3.3_1777388367789_0.6914827923332187","host":"s3://npm-registry-packages-npm-production"}},"1.3.4":{"name":"@inixiative/json-rules","version":"1.3.4","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@1.3.4","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"50ef5b8546307aba9c041f9a47c4b6b984f03b74","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-1.3.4.tgz","fileCount":9,"integrity":"sha512-gBZFoCHkkuonLFqARauEp09snR2LipnHk6XcmaYi+AGCbwnTbXOEngy6TTsFY9t5bd7IH8odQBY9HpsMqu8V0g==","signatures":[{"sig":"MEUCIQDsi8PujLyC1BivI5AUZpfWL4yBBuDv+8u5AObUJ2GJMgIgTtCTa+iWNl/dheRCsHHzwMeFkSG9TRvitiy8oIncAhg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":521632},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"3b3c7627a9641582608ca457d326e9f9ca263783","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","@types/pg":"^8.16.0","@types/bun":"^1.3.10","typescript":"^5.0.0","@types/lodash":"^4.17.20","@biomejs/biome":"^2.4.6","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"pg":"^8.0.0","typescript":"^5.0.0"},"peerDependenciesMeta":{"pg":{"optional":true},"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_1.3.4_1778511513623_0.15918255625378297","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@inixiative/json-rules","version":"2.0.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.0.0","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"a50a956ecaacc2542945133d89d94950f4646b4e","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.0.0.tgz","fileCount":9,"integrity":"sha512-BNeNtSFSqjNP5wnQm46zx7Q0V6g//CsO6mRqImFmRWN4lEiu7ga8jviuPnFkVpBQSDcVSn87mhPfNZ1ZkZ7qKQ==","signatures":[{"sig":"MEUCIBg+h0cbd53KZrRChSCPbI45xk4LDH8/yuq8x7zbWUIHAiEA+kB4umK+SAu4bpk699dB6kEk9TY4+7mXYrb0pwH9nLs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":646098},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"6cfedb6aeda79622dda453a12e8a9d3f4acf75c6","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","@types/bun":"^1.3.10","typescript":"^5.0.0","@types/lodash":"^4.17.20","@biomejs/biome":"^2.4.6","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.0.0_1779500790161_0.5820498106754901","host":"s3://npm-registry-packages-npm-production"}},"2.0.3":{"name":"@inixiative/json-rules","version":"2.0.3","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.0.3","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"fcff73a569f4b78c861963bec6d9fdf8b805e031","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.0.3.tgz","fileCount":9,"integrity":"sha512-YicSrEZlrgzcJAidvwzjWNHrTCNDOk/VTUOHQMwLanYZZQYyNQq07uWUpyWXJGDwwxslsidJJ47Aac15WFvQoA==","signatures":[{"sig":"MEQCIHxYFnAl8K8iziyYvWpHfbgsEA8PoXdVe+pxngZHkDfiAiBnH2oxPPxOiW0/NyDLUFREKj9jlraA4K2vmgcu3Ft8rA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1040248},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"1da799ee524edb630f8dbdec8ec2f100acde1b60","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.11.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.0.3_1779631807306_0.9589958463212642","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@inixiative/json-rules","version":"2.1.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.1.0","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"4de9fa7c6686497e4abf9e07cd487965f3f3f95e","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.1.0.tgz","fileCount":9,"integrity":"sha512-pC9Wz9Q8OZGh2EuhES31X8k5a2gdHxcCr7ZufBG3zJGGEYnCaEsBtfvDGtP98+6q/z8j4zZE4WrA2FTIGNGI+w==","signatures":[{"sig":"MEQCIF1A5s8RU41dZ/TIXCQwsi5fg7n9m6u7XYlPW+Hj4eVkAiAJ1iCAWnfznv+ivi7yAS6gB7uxVxhuEN3hZF+39Fn2Lw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1219117},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"0b7e64e8817277ef18a0054d95e0571c12f25cec","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.11.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.1.0_1779678744201_0.5830197772334436","host":"s3://npm-registry-packages-npm-production"}},"2.1.1":{"name":"@inixiative/json-rules","version":"2.1.1","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.1.1","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"5949659c4a0aad547ffb5b49d7c2c012042e4d30","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.1.1.tgz","fileCount":9,"integrity":"sha512-mOpcWtxoxlZY84uFZFDtjsAHAqgBQ2hA1ZCHY08seApk/ozH/e67BFdgX8Drhk/q2LwykZ9wb8m0TsBDazAs5A==","signatures":[{"sig":"MEUCIQCmHX6g0EY8OuYEbu/kAPbosE+EYn9PQkqkwqyNtr8OMwIgYFKteFDETK8k5KtZYKvDQmSqUIGSZParIed0Nr2cm8U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1221110},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"5a6419ac8d715580236684065a9d8e3f59f87a91","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.11.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.1.1_1779685375351_0.02942542915367663","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"@inixiative/json-rules","version":"2.2.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.2.0","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"7d93aad24f83b7047185508605c38e3e53222c53","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.2.0.tgz","fileCount":9,"integrity":"sha512-lVQpg3KBVf8OIN0JKDqc6ZVCEyyrGxKa0ptBlTbe3QDovBIrGnJrguaWvjBtN7nFDpmwdBVgjorEHyf6oneHNQ==","signatures":[{"sig":"MEUCIFJaxflXAJ7i6F9VkpcBPuBo3TA8T8yiiJNut+j74WT+AiEAl46LQ+Ne3unn9os5AJswttC8rB4MvdsHi7AVdVH9VyA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1223994},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"9a28cd41516e3fda49b5a2e9d7481b11dd58744d","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.11.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.2.0_1779729346556_0.606690073089069","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"@inixiative/json-rules","version":"2.3.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.3.0","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"94316ab9125b60b363e5808d02163aff71dee7a0","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.3.0.tgz","fileCount":9,"integrity":"sha512-dG3dY4GqOU5i5Jzt+8jCWmKl3pfsMWeLTcwT+Ni3UOHiDZ92YvSM83vB0fTbRzTIMAiXQAGzQ9KL9r0PkoBFNQ==","signatures":[{"sig":"MEUCIGh5lzR+F2o9yZOCHuQr6t+QTofMUNOY3St+00e4WZ6cAiEAsrfBZ9WzU4FkYD5H5sy7VHDjqxXBXv3TB7OWwhPN2eE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1212416},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"8d3ca4d418927b914773576ba19a86e66a22580b","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.11.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.3.0_1779756381050_0.060521376105270086","host":"s3://npm-registry-packages-npm-production"}},"2.4.0":{"name":"@inixiative/json-rules","version":"2.4.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.4.0","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"9db25171949007186cfebc141cb68fec970e6c5b","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.4.0.tgz","fileCount":9,"integrity":"sha512-GLCdBCoDF5TQuFlX/3PegnVZh2KFAQ8kFzsPRJukRrXDaIlI9i57x0iW2wnwQ/3CsKgNeTNnr3q38wv+4051GQ==","signatures":[{"sig":"MEQCIBAr+UaF6szEp0AYSla6nRthq+Hlo3Owp9rK+MAZEmohAiAls7V2w9GP9pi2euepCXGSjxTzyqSXiRVU7WPw2wCWYg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1212229},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"3010edcef46b5364387eaa8142f0a93d05eba1cf","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.11.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.4.0_1779759017011_0.7091239319587068","host":"s3://npm-registry-packages-npm-production"}},"2.5.0":{"name":"@inixiative/json-rules","version":"2.5.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.5.0","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"35f73ecbf0d4b03ae9f4408e4e394c4d4e75b1bb","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.5.0.tgz","fileCount":9,"integrity":"sha512-fmHPhIsreGjJqu6KPGf/g2DtM1a0mx9SNOVfpCAtjSNrdtFi5reek3lWSFRKKsY8CSXIdJ9IXSsdq/UGUx+5Zg==","signatures":[{"sig":"MEQCIEvFbpyY6Gs1X2JE9eB818AjuniNlo0WVHqGp05S0XS5AiAvngt+VU+TDNlwPd4NW1pD4VT/2kSjkv1zHy3Tlca4Ug==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1183852},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"f1ff884694e88c5a223819cda3e51cf54fe93dfa","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.11.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.5.0_1779766177058_0.8664677294322423","host":"s3://npm-registry-packages-npm-production"}},"2.5.1":{"name":"@inixiative/json-rules","version":"2.5.1","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.5.1","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"e8071bf62083e78da80b04fcea8893af70c6d873","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.5.1.tgz","fileCount":9,"integrity":"sha512-Wi6aUwnx8S2R9oFUEZrozQHEnKa9Jxq6Q1aBYwe2ZJOKAEStCIfaGc4qLN0lXQlb+jUj0ngZ6YgFOlMHIqrOMQ==","signatures":[{"sig":"MEYCIQDbkcnIL9O393I54UQ/5ZeBr8wKWxxceobgbvUZup52YwIhALyDaiPVUscRW04HUh+MRNEOiE6NyRUEGva0GbTkatca","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1184242},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"0e0d56027ceeeb61cd082840821583a4e63a0b14","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.11.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.5.1_1781007943294_0.21712489498519938","host":"s3://npm-registry-packages-npm-production"}},"2.6.0":{"name":"@inixiative/json-rules","version":"2.6.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.6.0","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"4998540ed5b5792d133d1a5828dd28b231e4d46a","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.6.0.tgz","fileCount":9,"integrity":"sha512-babxwDMNbtsyMOxQhEsLpkRB2dSGyskrOcl5k128raJhb2KaGKTsu/J4R1SJu9onfdT8yn7wo1m4XWTQuK+G/Q==","signatures":[{"sig":"MEUCIQDvDNOVzbWeHQl+Z9UgNfnNhAN4fqUJLqVsAZ0VOVUnlAIgDeY3fgfuFJ9hiztPe2B2ukiiw6kzOxQ9NNMtlqM30U0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1306687},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"70f3c948758cb7440022ef177fd521ae8e7b471b","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.6.0_1781202678546_0.3739152134831252","host":"s3://npm-registry-packages-npm-production"}},"2.7.0":{"name":"@inixiative/json-rules","version":"2.7.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.7.0","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"efbe97c7dc3b4a7a733be7fc6908c9bcc69d0db2","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.7.0.tgz","fileCount":9,"integrity":"sha512-1vkF6cE81jR6BWC4+E+uCj/p6wjmORRzDQ/Hax4E2xRN0ouob0XoS2qaDo7V/1xMxCWYzw/30522XDgx9pNbdA==","signatures":[{"sig":"MEYCIQDVJwiSHgtkV8IgabvqdqOb98Sk+259bB8u/jq2a5rT+QIhAOtjEDbH/mURyLBSMKnhcxTwGT+ZPxzFEI16YEGcaMRu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1318260},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"ab3a4a85d2f5ab5190b7a06530a94399db070e66","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run check:catalog","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run test && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.11.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.7.0_1781355221740_0.010985868981652658","host":"s3://npm-registry-packages-npm-production"}},"2.8.0":{"name":"@inixiative/json-rules","version":"2.8.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.8.0","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"89355d835b238924284f6d7bee1fbc726c6ead9f","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.8.0.tgz","fileCount":9,"integrity":"sha512-gmVPmp+xaFc11EpjMjTILR7ZMNNMHPA5EG6qvd79BFMfXSkfE7ibrcaUTW3FkZk1utz2niMIUP2nql7/kv+JGA==","signatures":[{"sig":"MEUCIG3dGM6/fa1UDR/5QvmvLq49ijWA68CPYvTDcKvHVeEOAiEAjPMatGM5woca8bMF1RgSME66aofqtTg7W8YB2hdczUg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1362805},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"cda7460fdc554d1d1a18c8943c224f063d858883","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run check:catalog","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run test && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.11.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.8.0_1781362035695_0.566146308307784","host":"s3://npm-registry-packages-npm-production"}},"2.9.0":{"name":"@inixiative/json-rules","version":"2.9.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.9.0","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"083755b6ccd52cc3b9355dde38f6676d6551cc76","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.9.0.tgz","fileCount":9,"integrity":"sha512-GghVoILQobHEpr7XhoRqpjn9rqE5nbEmRmz4RbicJWdlFEYfcVpuIHQAveTVDvGTQfhllZljzK7eAu2KVqw/Ng==","signatures":[{"sig":"MEUCIQD4X3XesIdg+5VyardhN0sNuGJHpc0jRY+6ecq/J9RaGwIgULtCE6tVUKKDvEpgkAgoCXxHfltCeY/now46K6+xHzE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1387540},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"c504eab4e6abce4c71c2a0b244fe5160b26c001e","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run check:catalog","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run test && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.9.0_1782598602921_0.07378788353323551","host":"s3://npm-registry-packages-npm-production"}},"2.9.1":{"name":"@inixiative/json-rules","version":"2.9.1","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.9.1","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"60f4b774da31b655d9564067ba4470d2b34c8b0c","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.9.1.tgz","fileCount":9,"integrity":"sha512-hA27JmSFsa3ZuqUZH/Sl62g1MA5HqiPEW9fiVHyNiueP+yJihA0Fk+hUHySRuUyQMlB2sR03dqDkosD4sMZPvA==","signatures":[{"sig":"MEUCIG3x2diQXOJybhN5D1NfvXcAOUyHnI7nuiwTq9WzEuJ5AiEAjhQDyIEjaeBe44/ACaxG38RScaMMOxCB5WWQ+jZIfuM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1388614},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"c504eab4e6abce4c71c2a0b244fe5160b26c001e","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run check:catalog","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run test && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.9.1_1782600182931_0.8970185071442882","host":"s3://npm-registry-packages-npm-production"}},"2.10.0":{"name":"@inixiative/json-rules","version":"2.10.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.10.0","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"26254ca563ee1c95842344b648342e71b8ab60d7","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.10.0.tgz","fileCount":9,"integrity":"sha512-WbtrxDNKc4VrqGpa70Ppg/buayMj2Avpf6JTeDJwsoCfmvWvJ3ZcVhfc+Im1Lztu0VRfXV0d6JPS8XiEcuBJBQ==","signatures":[{"sig":"MEQCIEHjHfPgb1IbH5D+W1aAnF19D/Qz6jzLGq7pprwdRwsVAiA53oNBx/h2dXRXfzjIWtyCGB6mZpGCvOKcFT0Zx3IVZQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1387150},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"c504eab4e6abce4c71c2a0b244fe5160b26c001e","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run check:catalog","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run test && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.10.0_1782611502782_0.669438678343883","host":"s3://npm-registry-packages-npm-production"}},"2.10.1":{"name":"@inixiative/json-rules","version":"2.10.1","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.10.1","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"a15ac78161f98a91e47b26a29f1082ea36461705","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.10.1.tgz","fileCount":9,"integrity":"sha512-//IggVHKD5LXZ0uwJAb5d30I9M6QEHdoO0DiSuLb4tOGAJ+raNYO2ICiLi+YJXnQ2FmXtXOQnn+tDT3b8zuYrQ==","signatures":[{"sig":"MEUCIQCZb5uzfwwihPU1H2JrQuhjwDSsrRevnqNv5MzAX92QBAIgTXj6mLTZys8Y0Hj9D/uxnYXHy8v/eXHBucn7c0IFG60=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1389599},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"4680e7e38a3351e438cc42a3aaae34f7a08dd2d0","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run check:catalog","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run test && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.10.1_1782687169356_0.9560795952685597","host":"s3://npm-registry-packages-npm-production"}},"2.11.0":{"name":"@inixiative/json-rules","version":"2.11.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.11.0","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"1d1f412c50c53e704f3393de15b698ea0de06f34","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.11.0.tgz","fileCount":9,"integrity":"sha512-cf1LixrsKog5rpKhwhMOrVC1U4JAXU06bqPOzFtfZBJYdHpx5KxnmHR+ki0eicKFUTLRrqQ6IpdxEuOoWe+KpA==","signatures":[{"sig":"MEUCIBHanR8oXPF53lYVGKBJXCLcVofEqApsbzQW+HJiiE1ZAiEA9fi45UP73Yc1kEWy2SwjsKm3IWz7UMiG0hUl85dFcyE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1428670},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"8b725cfc19b5575e452e57649a6faa3d1f160269","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run check:catalog","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run test && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.11.0_1782757503882_0.226348282579097","host":"s3://npm-registry-packages-npm-production"}},"2.11.1":{"name":"@inixiative/json-rules","version":"2.11.1","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.11.1","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"970faa50d73efce5fb6c62f11db1707cf6b705b5","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.11.1.tgz","fileCount":9,"integrity":"sha512-JZfTnuddhXG/nxuaoxpGG/5N0Xq5M/+UIkie7/vGNKtN0eEKqnVYEDfBzfiCUoqn73iZAps7nboO/MWiApofGQ==","signatures":[{"sig":"MEUCIFv/Y8xQ77Dy4942n6PQDeAWVVYb793wS0DZ4Pdd6zrzAiEAzG/rRYk+z5lWBZuBPM+UaeJJRW8RUpotzxBUsABhxIY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1432208},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"75b0e9c6b80097d5721781d99acf3a4b0514228b","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run check:catalog","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run test && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.11.1_1782837932371_0.7936137121045861","host":"s3://npm-registry-packages-npm-production"}},"2.12.0":{"name":"@inixiative/json-rules","version":"2.12.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.12.0","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"bd6fbb573bd98ca88e61e96c23ae45808042df4d","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.12.0.tgz","fileCount":9,"integrity":"sha512-CN0dfywZIO3iBAMfyzEyOijdXWfkUdbghMro/B4l4S6lBurKHMUKL94JY7pKSYFPHwv6Gvo/cgH4q6HbtMveOQ==","signatures":[{"sig":"MEQCICmf/byB70VNCuVoH4U/n6CjZihRlogqHwV1gFS/mwXeAiARJSsiXJtFT8YKvv0DCKSk70Z+viGICFGz671otiZsuQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1471967},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"75b0e9c6b80097d5721781d99acf3a4b0514228b","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run check:catalog","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run test && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.12.0_1783004568246_0.5123109558586787","host":"s3://npm-registry-packages-npm-production"}},"2.12.1":{"name":"@inixiative/json-rules","version":"2.12.1","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.12.1","maintainers":[{"name":"inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"1c39f3e24c95bb94942e52e00fde29d17aae8f3f","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.12.1.tgz","fileCount":9,"integrity":"sha512-lamE/AJQBajEpKHIWh/KD/ioeDtEkQ63MTAMKLllScfo1NsB7r88FbC/lsCericDWLsT84l/z74ixEmprKGBrA==","signatures":[{"sig":"MEUCIBeKLDFSGbK/wWYbpWSpMwhZ97d/OgIq5hdzy4gmr8ruAiEAh5KcZPuTgBDM4hPFSrl7JV+xCN6ILnmEnTkaTYzLOGI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1446625},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"b9587c3bda3f0de7bb9c8751eb141321ed8f5bd8","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run check:catalog","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run test && bun run build"},"_npmUser":{"name":"inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","lefthook":"^2.1.2","lodash-es":"^4.17.21","@types/bun":"^1.3.10","typescript":"^5.0.0","@biomejs/biome":"^2.4.6","@types/lodash-es":"^4.17.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.12.1_1783008333264_0.20366060953001552","host":"s3://npm-registry-packages-npm-production"}},"2.13.0":{"name":"@inixiative/json-rules","version":"2.13.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.13.0","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"fd5b5c25041973814af16a6236f40a5534d5ed7e","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.13.0.tgz","fileCount":9,"integrity":"sha512-O2BHEXBll4dC/F2fbf/xu4brSFYYbNATh4dQXJxUNv19uikhgz6MtVs+4FDzRejXWGtsnXF+oxpMHorIX+aIvA==","signatures":[{"sig":"MEUCIAFfy7Lblig5JtUhxc1aqq7YzzFcY9FTsKY581sawzO5AiEAuCjvAr3LkRLEfoXa4fD7HIThSoPL6bq4/6isOSbhGl0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1475790},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"f5c602e126c0b2d83f0c97373e290ba9b38e6f61","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.2.1","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.13.0_1783046218412_0.4614128854478827","host":"s3://npm-registry-packages-npm-production"}},"2.13.1":{"name":"@inixiative/json-rules","version":"2.13.1","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.13.1","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"97f852e01cc440ab57ea89835d5c7be101fccfbe","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.13.1.tgz","fileCount":9,"integrity":"sha512-SF1nA1694E17o4/V+Ou5OdN825CAQiZwGEbyGiG1TkDkSP8ncqWCQ5UKafXWyhaRQ7/scVoOIm5LGNPyZ8QPrw==","signatures":[{"sig":"MEUCIQCsoc1wkw45mIN7tiwldaNdN6XnSNtvDvQS3+thHdL8uwIgJuNm3Er2Lxs0KLurb2WA101K8w0mffrT1d5WquNMI6U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1477382},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"2d0bd6b3319d536519f58eb25138dda1bda96ba4","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.3.0","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.13.1_1783053252625_0.3556100927440855","host":"s3://npm-registry-packages-npm-production"}},"2.14.0":{"name":"@inixiative/json-rules","version":"2.14.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.14.0","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"ee88d792862b3d06f893fc1bb9fbabde4b321913","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.14.0.tgz","fileCount":9,"integrity":"sha512-m0HiMWo/jlYj22651h6885MNyGnsLcYUS4Wv/Y80OlEA3OoegAkYbKvGKyCEiDIcq3MU6OcF4HHiMUQc0NIclQ==","signatures":[{"sig":"MEUCIDIXm44pAXQZPK4QHW+Tcz2dI/mdkYYwHA92Rip1GU3VAiEA1wJ8wDLLydb7LwF478+HyJqv+POOSV4VVFyCGefMA5s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1496295},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"79ab1f1aae70701cc3bf7a8da1a10e62707be61c","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.3.0","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.14.0_1783054319373_0.7569935292358083","host":"s3://npm-registry-packages-npm-production"}},"2.14.1":{"name":"@inixiative/json-rules","version":"2.14.1","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.14.1","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"54edfd41daebb8e55074a00d00aa59bd032686a4","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.14.1.tgz","fileCount":9,"integrity":"sha512-Z3ywqJDUNnURspzlySfJnQugBBVoYi1G+GfrbWsM0FRXQot425m4wzY7iqJb0Sg+PYSvDuvcV7i5AHvTvvmFrg==","signatures":[{"sig":"MEYCIQCSBhCt6Xp6mbVkJye0C0VZK9hIyS5ffDFtd9NXla5/FwIhAMjUkcRvS86k6igCPoZ20eXES5hPexrF8w2/9j6D30UM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1497463},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"e6289d798e5c0b38d23e8e9e36ba372ba5908c15","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.4.0","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.14.1_1783099669377_0.15504914865925556","host":"s3://npm-registry-packages-npm-production"}},"2.15.0":{"name":"@inixiative/json-rules","version":"2.15.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.15.0","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"d467b0243f91d378af2ed8b52a11894f4e21a2e0","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.15.0.tgz","fileCount":9,"integrity":"sha512-SvWxDMJos+Y5/L+HmlqIAFg15Hx4ZDxxKSDmctzx3hu+E3Gh5RpZ8onjwjggKHs6o8tkh81FuESIbXSBf9BK4Q==","signatures":[{"sig":"MEQCICMahEJF9eKOqmeccgS1zko+QsfIQycMnZB6jjD5wNUSAiAEhWJ2OPQtF3P0BXNoKF2EL+J7zz+T6+vXaVALo/gZGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1597279},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"3e33a31265c46b492acf696081bc31a8750dde72","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.0","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.15.0_1783382342558_0.4483626560850593","host":"s3://npm-registry-packages-npm-production"}},"2.15.1":{"name":"@inixiative/json-rules","version":"2.15.1","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.15.1","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"37d61ac898debee35fafaac86f305db04fb0f190","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.15.1.tgz","fileCount":9,"integrity":"sha512-QQ4z7asN8WRznGMUyTQHWBwiaOYahFXigW1vGZ0MqDJK6WfbSD6BIn+Ec0qlqs2flNhiy8+UkjpOUqgi4C7OQA==","signatures":[{"sig":"MEQCIGEacIvPUBzCu23AnnPeea5bTYGc0OT0zVN4TuT9LwjMAiBIYA6C7CCFo3Sj0tOk8x9E/M1QxzBFn8moTRA+Db4EZQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1599324},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"42bf3ef43c83b8c1b004f8a2c35e626ee26c8aff","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.1","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.15.1_1783384578305_0.9341393759049439","host":"s3://npm-registry-packages-npm-production"}},"2.16.0":{"name":"@inixiative/json-rules","version":"2.16.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.16.0","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"f91774134774fd70aba67490c6a010070bbc6130","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.16.0.tgz","fileCount":9,"integrity":"sha512-JHa1b9UYNEN0OWaJ73bzh4xBwlcSCnkmq/3oOyCgxTgo9SPuyvdMDRxywSwWSgB+27suQKbAZYM77tjo1+1c+g==","signatures":[{"sig":"MEUCIG+M/LIDlx1BlAnb20u7n+TdzjPtldoSW9CfBaU1C5w3AiEAiPAuKmWhzW3XswjUetZGnieM+qtRrCDFdf25qbXxHTs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1666334},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"a45968d70094885627ab64af48b969edc72a452d","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.2","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.16.0_1783386937810_0.44812542972620895","host":"s3://npm-registry-packages-npm-production"}},"2.17.0":{"name":"@inixiative/json-rules","version":"2.17.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.17.0","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"7f78e2da82611c68950410d974e31fbfdbb94720","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.17.0.tgz","fileCount":9,"integrity":"sha512-qLtifTsqHq41nyl7hch8iV+6NptlqhHmB+xMkw7pOu/nzdThsrs/c5AI0qqaPNx4XKP6jaakgZwdWqd4PSGIAg==","signatures":[{"sig":"MEUCIQD9EjKYaX/AsiL3tyZEbFA5NXVzeioaruR2B2OzzPClCQIgVFKEtodSncLBCorP2BqyhidF2CLbakbC6/7+uNZs7Gk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1732623},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"9e6eb9e8bcea4697cc23af1b32573292a51263ce","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.6","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.17.0_1784236504695_0.694929923558514","host":"s3://npm-registry-packages-npm-production"}},"2.17.1":{"name":"@inixiative/json-rules","version":"2.17.1","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.17.1","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"433274925b3a96ecbf2c9d2e56e5b3161e05ecd4","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.17.1.tgz","fileCount":9,"integrity":"sha512-7973s4QSdHqQoCJfsoT4XsHLo7h20No/yanklh9RhbT/05Q5qJzwB1yEnGelkJM5gr7C3V1ZMIIk5HEuwro4gA==","signatures":[{"sig":"MEUCIBbxhAALvFgvrj8NhFcE308RXOzoDqJFpdiyzNn1i8ZWAiEA1lUrk4Ok0ovKYaV4U1/Qu13lcXwKjV/YnuOrdh7Dfig=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1750689},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"3763b130f2e45fb4b5655785dbfd39fb750a0dcb","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.6","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.17.1_1784238711210_0.5718614435732787","host":"s3://npm-registry-packages-npm-production"}},"2.18.0":{"name":"@inixiative/json-rules","version":"2.18.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.18.0","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"fb258134e1d75881b105bc936f4d800489a96961","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.18.0.tgz","fileCount":9,"integrity":"sha512-aqi6HeYQLRAvYZnfPniFavcXMBuRoEnTjy0L4w45T67d7z6RbM1CvCBiVUu8viwaqjVaoPb6TKYl0Cq8SF2hpg==","signatures":[{"sig":"MEUCIAcqoRolzzuIDlTL73fcdvduJxGCy0zF0eNEsgX+BfoBAiEArRto/UifCdl240yze+Im+fpNg6lvbHjy96BtvUoxG9E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1777295},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"660a1bd3a8113b4cf129c4d15f49dd3be71c718f","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.8","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.18.0_1784258626290_0.44890380262975693","host":"s3://npm-registry-packages-npm-production"}},"2.18.1":{"name":"@inixiative/json-rules","version":"2.18.1","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.18.1","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"4c75e9456c636c4c0417de2da68bcf53a7922cdf","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.18.1.tgz","fileCount":9,"integrity":"sha512-GXtmj0ThK6Nty3hxKOmHfQGAAQSdmV1LevELbLHjJ8NqG4bUvQsROgti+ZJpD+/4nKWd46CvUn7Ibe+zMK81mw==","signatures":[{"sig":"MEYCIQD6f3j9NRZcZcc6UzCX81laBpzUER5SKfp+9rOV8Py9uAIhANJdFzFivTJlBNkSgfrFiTVxHdMWe8tcbdMRgU16KaIX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1778543},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"02792b4164f1c792cb5d10842162f576b1d36f32","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.9","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.18.1_1784261867671_0.44496486765851917","host":"s3://npm-registry-packages-npm-production"}},"2.18.2":{"name":"@inixiative/json-rules","version":"2.18.2","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.18.2","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"2318b01c9ea615ff4bec79eb104db176285611f0","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.18.2.tgz","fileCount":9,"integrity":"sha512-q09/pzSPqBV3AFi0ZBOuqLNgR8iZQuS0b34MnWoJIalwHric0aUdrviRbw4YGGkT77kbJ3tJmj14QImid47/ag==","signatures":[{"sig":"MEUCIQCzCr/NZFVQV4Wo8l3u+ZUeemeRci54tEMlD6VWenJgRgIgAo7bdUgEqvf7HMebOzItIP8cYnE/Hk1awOLMjKOHq7Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1779606},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"b1589fa14d5b6ff3ff4790738ba79bda7f845d69","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.10","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.18.2_1784555502571_0.3087742702176377","host":"s3://npm-registry-packages-npm-production"}},"2.18.3":{"name":"@inixiative/json-rules","version":"2.18.3","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.18.3","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"63c61a59c1299441eb45a7a2a24bf8ac3c7cb792","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.18.3.tgz","fileCount":9,"integrity":"sha512-PCLMYqpYiJzLkzJoT2aaSUJh1q28Y4H54YXh0U9ksve9+HHIqbT72df1KsjEDzZAJbC/8K21gZp4enHZu/r/Iw==","signatures":[{"sig":"MEYCIQDeIzPEoMqB7wcXvCeweEG6/VlQHCo4QJfBmYqyqOwPIgIhANHP+gyNBz7i/TrqdZNLq8nf8t0QuN6KYKAOBwN6XimK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1785440},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"23879001a7ee26f1cb4824ecdda688263ed03b3e","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"11.11.0","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.12.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.12","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.18.3_1785309301841_0.0009255962022496345","host":"s3://npm-registry-packages-npm-production"}},"2.18.4":{"name":"@inixiative/json-rules","version":"2.18.4","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.18.4","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"0f27f8bbbfad785967d76c6e31fcfd20ae03d9df","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.18.4.tgz","fileCount":9,"integrity":"sha512-ix9+G/qquBsqmTRZZzeRzd+bsRJnyGvAjOUTksu05AOg3ZhLjRkoOyViwrMWJ0jRvx51LOJg1LnXp/qAZvN75g==","signatures":[{"sig":"MEUCIBVv3Y1p9ojJwjTtpXVzAdJ+b2jNcukB4X6LOCBXG8KAAiEAwE7CHd5XJH2sCLuUD1u80X2gSF7wZ9vsNrcm9WcFpuk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1791830},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"577de4fab95f5f76fbdb1d19326a2bcc7ddd8d96","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.17","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.18.4_1786476244026_0.3347805658508074","host":"s3://npm-registry-packages-npm-production"}},"2.19.0":{"name":"@inixiative/json-rules","version":"2.19.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.19.0","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"fe7beddf47bcb88f09c5fb8d0a2cfa284bf9b6c9","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.19.0.tgz","fileCount":9,"integrity":"sha512-sbMZcOVOUxDemnMUu/5QaCzDfyK1NZtvGmzxTHxoDmDVnGgMkNqBuc9RyM26TYG3nrSKK4+8lPHxr9kY2Q1c9Q==","signatures":[{"sig":"MEUCIQCauAHv2G4Zmh12WA5tg0ctK8G9HXgL4KbwY3zJFbA4ygIgP6FxSre3Yd7A0u8GHSeW/tGU32C7a3WbMV9xMKEY2d4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1807059},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"2b36280bee0dc39e03910fb0bcaa569d094d88e1","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.17","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.19.0_1787676761177_0.5135809831608407","host":"s3://npm-registry-packages-npm-production"}},"2.19.1":{"name":"@inixiative/json-rules","version":"2.19.1","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.19.1","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"431e1ec51ab36fb27d90fe5c8fc4d234897de178","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.19.1.tgz","fileCount":9,"integrity":"sha512-AHZc4Qq251FPy1TR6fdFyNaP/rMMbDnm0gpcg8/16jdJEblmBhQaxUbQI2ErY/Mj88Gm+VF59sse2jrxBx0mBg==","signatures":[{"sig":"MEQCIGoFDhL+6mtWF90qoGgsasF3hGY1HxJQuQ9a5BOLrf2TAiB0xIWuIpj5S2mXhMWGjxnzAstTXek04Me28e932MlKFg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1809097},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"3ddf71f8958f71542a14fbab18ada78ab72c6fbf","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.19","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.19.1_1787688105514_0.15374524849767268","host":"s3://npm-registry-packages-npm-production"}},"2.19.2":{"name":"@inixiative/json-rules","version":"2.19.2","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.19.2","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"0690325945141d09a2f933412b6b63f1880ecd53","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.19.2.tgz","fileCount":9,"integrity":"sha512-uRCt8kb3Svnkx4JRa2rxTiBbNwxN5XZWyCzn3v8ivTHMnRPu/UxyxcevrYIQD7yJPMLYGmtC2jzlabOnR7CELQ==","signatures":[{"sig":"MEQCIG5cGOPqb3VcLvM++QuTuJAtQxnGKNZz4T0MnxAZuGwdAiAcrySYAn3dDfEN3hf1XdJYKTcICUsS1yMHF8i8BM50XQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1812545},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"fd1b28fa374e79309ff87c0c6b8cce14fb666597","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.19","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.19.2_1787694915048_0.6253340304937607","host":"s3://npm-registry-packages-npm-production"}},"2.19.3":{"name":"@inixiative/json-rules","version":"2.19.3","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.19.3","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"a5b1c9bb8f574b8ebcc6157af2541e4e85a6cc19","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.19.3.tgz","fileCount":9,"integrity":"sha512-FfhS+DFfgK6lUkw3tENVPnZOOCNUwwZP+0pg12xTkLrAfF49uVPITewTgSB2rha7mq6ksbVpatfGXQt9ByZhYw==","signatures":[{"sig":"MEUCIQCJI/NhJj4Qnc9cqzCwgGr1FnKN/sizfe9PdKIO1dOTigIgbIjzvDUn76gPltFLmpDMV4i15TFv8G7hfi5OgZxaHp0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1813435},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"1e83a68afb2bb97b5df5c5c60be43654da83779f","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.19","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.19.3_1787702378848_0.7578929370474126","host":"s3://npm-registry-packages-npm-production"}},"2.19.4":{"name":"@inixiative/json-rules","version":"2.19.4","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.19.4","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"83c9f26c5236e5d4166e07f01b368dba960f0428","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.19.4.tgz","fileCount":9,"integrity":"sha512-QNk4ry8pZM1DmN+DeYeoOJ+Cr1fqskjfn5jlHez1gsgSVUq9Uixq3h5Qb9z8hE5dT962BL4JxPrjD4I9KXX4vw==","signatures":[{"sig":"MEUCICr0F6EgK4ua3cr6zpYUieS4D8XVvc9nUct1hcX91fSsAiEAy0UUKRQOB8VvswuS7J2mC4kKwgMCOmlW2M2d/tRSGX0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1826393},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"4076a59957234185118ece16605562f0b0f3c53e","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.20","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.19.4_1787705837302_0.452360914979268","host":"s3://npm-registry-packages-npm-production"}},"2.19.5":{"name":"@inixiative/json-rules","version":"2.19.5","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.19.5","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"f3a21373c38c489da35d0d1385a88d9cf429e987","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.19.5.tgz","fileCount":9,"integrity":"sha512-cmlEKOSW5SJRseLaoof7yJtqWQactVOYoQXQeW3AbxA6aqSshUvxOXWhCFmzgMcEg9gebIsPFm2L5lQwAuY7VQ==","signatures":[{"sig":"MEQCIGb80VwtzDAp9hDMH4LLPE2MksSoZBrPIMHc+vP5iusYAiAKcteGwdUKNHDzEatcPWIgCTseKJRKksGhnuCVarstZw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1834539},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"f4273fa33eeded8defb4d325eaa4789b333f4541","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.20","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.19.5_1787762927199_0.633162240856679","host":"s3://npm-registry-packages-npm-production"}},"2.19.6":{"name":"@inixiative/json-rules","version":"2.19.6","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.19.6","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"261fea1091bcaddec4f43ac3c86982f8a2c2f9fb","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.19.6.tgz","fileCount":9,"integrity":"sha512-A3vHmGEQIzgzJONPNCqjqRdH+qvZxyXBzSb/af2xXI1sJ6MXOWoQsyfarbObhNodYW53CotXF4+ShrAoGgC5Zw==","signatures":[{"sig":"MEYCIQD/ZJu/2CtnQZW1MOpuktNsh5SmsEFpMX1Xslu10iibAwIhALzF0hPqda8cGAORhco368PfOjfkb2xONodHTGV7UeaO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1841843},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"7c6b4a45cd656b14943c0453cd165b37e60c2a4e","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.20","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.19.6_1787764500588_0.23176467306672377","host":"s3://npm-registry-packages-npm-production"}},"2.19.7":{"name":"@inixiative/json-rules","version":"2.19.7","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.19.7","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"e871903fbfd12bb1648727a1dd271449bd9b1abf","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.19.7.tgz","fileCount":9,"integrity":"sha512-J77ecDO5fuFTHj3qI7rzzlZq+fN3f9kZfuaPAYt04sPq7zMkCoaDaYmLxHCfHR/DeMAy5+7e25g6EMrIRvVizA==","signatures":[{"sig":"MEYCIQDeSKfNS9RS0aGOizk8UyNSUpMwqhnmLT7tu6G0CM04TwIhAOfa477utcEV6FGr7fqAzQ9lUhIzLFQeCg6Hl/j3/1UR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1846529},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"82bc381142bf5f6778afcca1e878bbf93c57e47c","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.20","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.19.7_1787779733306_0.5975081390687313","host":"s3://npm-registry-packages-npm-production"}},"2.19.8":{"name":"@inixiative/json-rules","version":"2.19.8","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.19.8","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"a05cb4e41328174e45856c83f3734c2d3c748a97","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.19.8.tgz","fileCount":9,"integrity":"sha512-WdA4bfOvhTt5XRxWi1au8h3pBjyIBSPdNJnyEKr+xAdE9Cks5Um+pS7FbbDU38k/MdKw0Yj7orw+vXsajqvwEw==","signatures":[{"sig":"MEQCIC2ZwcBZdU1ik/Fdp6G+5tsXBs/jVbO+th1W9x2pLQe2AiB4ica+qh3RxA5iEmUvJBd6yFfn/flCwmqVnGqogE4++g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1855555},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"6d44bfed299ae2db39595ac85b3cb8f9e42b69ca","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.20","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.19.8_1787779926836_0.8885587488613667","host":"s3://npm-registry-packages-npm-production"}},"2.20.0":{"name":"@inixiative/json-rules","version":"2.20.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.20.0","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"df4c1e6b9bbf22dd73709cf786cf054ce7033621","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.20.0.tgz","fileCount":9,"integrity":"sha512-Hve5qgfFK2vQetYAhL3x1gKll/vS+sES9Sijcv8fNw+9zLn42W+w6obJ6SR9R73+YMHGFdElovz+plk5P1neng==","signatures":[{"sig":"MEQCIGKK6IDjFXyEZCsD7rnDEtoI8O0D8YKz6/Dmj7Hvpr4jAiA/gRVufDWArUvEhBx/5tZaHwy8NwSj48pozUsE+ABhGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1882058},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"13706c7e31720719840c305d01aff528b28111ec","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.20","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.20.0_1788201878717_0.9892217461224058","host":"s3://npm-registry-packages-npm-production"}},"2.21.0":{"name":"@inixiative/json-rules","version":"2.21.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.21.0","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"d146a2241ad0e4d88561e104bf852f1f68b8695c","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.21.0.tgz","fileCount":9,"integrity":"sha512-YYwYDNQaXCg1xlgwgWMni7PIoMyY5CcRPVPoTHzB/CsMvfagLAXJaT1RyLEjYuQM75UrDkOpmNDVpTda87PCWg==","signatures":[{"sig":"MEUCIQD1QU9WBRc5fanEKiMKQxSMBQkc/ls9G4GG4YG8zGBQRAIgPlBZpcWO8G+oxdtJQzfMHa30Sn5jhvxFBL9CNC/IXnk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1886903},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"35e6322550ead363c30403ae84c3d3f58d5c4b57","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.25","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.21.0_1788359865669_0.4842456338143659","host":"s3://npm-registry-packages-npm-production"}},"2.21.1":{"name":"@inixiative/json-rules","version":"2.21.1","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.21.1","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"a0ceff4bf64c25a202c47ba9e2c82ff3a1014126","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.21.1.tgz","fileCount":9,"integrity":"sha512-N6KVy5zQg55lE/CuelXJu541IbN3klWvrXOi8Es6SFgToD3XT8lYj2tFxaQR2ROktCniS/SoiYZ5XHyJmmdx1Q==","signatures":[{"sig":"MEYCIQDe6JRHhSnsiLQnKvaVl9MxmcMbkUm9daO7WrFIFqUH8wIhAKvBEAP1IHGbiqqJsbCNr99mdI3PsZEkvNrqQcQT9rs2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1899797},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"0346333e48189b232b8bb1db7966f5d2de9f9be2","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.26","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.21.1_1788748439356_0.9848756987041785","host":"s3://npm-registry-packages-npm-production"}},"2.22.0":{"name":"@inixiative/json-rules","version":"2.22.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.22.0","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"6fb7960c5a74bca061ef895ea31bb29a01e4fc46","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.22.0.tgz","fileCount":9,"integrity":"sha512-kCQ/fEPiK0cTSjnCtwnezqrpKShq3OzD6kppcVjZvPN3dSm4LTPa8TMJ+Qe5CaU+vzbLXccULAZsz+c0ka3VDQ==","signatures":[{"sig":"MEUCIFzs+08JzGQ5nfX8ckhOZRPNuMlk8r1NLq3aAFq0xBqnAiEAoqODFkP3oHQ2HPFm5ovi0JZCv69jXeolSY4GE8HxXkc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1904815},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"6239782031b45d8b36c5a5cc97e804621fc91b76","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.27","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.22.0_1789050568683_0.4243606929980446","host":"s3://npm-registry-packages-npm-production"}},"2.23.0":{"name":"@inixiative/json-rules","version":"2.23.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.23.0","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"c0ee4ee3edd94397f0ea1b656b97b051a4d7b4d3","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.23.0.tgz","fileCount":9,"integrity":"sha512-mbtdjV6ddziQS/seLgOh957Ll/M0gfbkg1wknbfHzEDicyyI8plM98QQyXTPnzsPLnPDRVVrtJ7eWuUwLkrf9w==","signatures":[{"sig":"MEUCIGIlVOBXdBW7OYtk4UldPhZ8GY00WKklM1Q/6zEovcmiAiEAuYocrWJxEGyNIgpSU3Fpf+wauXH92N4XgreeWj4ri6M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1942564},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"cabf97afae99edd31b8e0109de8b12a1671e4416","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.28","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.23.0_1789063378010_0.7856558769769375","host":"s3://npm-registry-packages-npm-production"}},"2.24.0":{"name":"@inixiative/json-rules","version":"2.24.0","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"author":{"name":"Aron Greenspan"},"license":"MIT","_id":"@inixiative/json-rules@2.24.0","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"homepage":"https://github.com/inixiative/json-rules#readme","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"4079895d5b86b0da12e4fe7c33742d60f0b1ced5","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.24.0.tgz","fileCount":9,"integrity":"sha512-XNmZ3TqGugQreBGU78PUknabb7UqtrBOFwOlrrPXrou2QMXaal5YYNv5ZsD9o+Jsh74y0s8YbbBi3LcCGJijkg==","signatures":[{"sig":"MEQCIFUCLcyy9jpZif+yjsYg90XB+2ooPOa2ovG1962Xq/IQAiBBvVUbHnElEc0J5LlIb+7Yr0NXiJeHyACg9zXDcUwxUg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD7US3bYQHYSDSHYviyaukNhhRaNFJK+C5tj9eSnapoJQIhAM96IUaW63l4i545/VADAdIwifxIWRgDM8G6QUtiikyu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1954102},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"42ecff5d7441f4acd54566f3faf8f3e15628f90a","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.14","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.3.14","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.28","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/json-rules_2.24.0_1789518219174_0.3887223012179575","host":"s3://npm-registry-packages-npm-production"}},"2.25.0":{"_id":"@inixiative/json-rules@2.25.0","bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"dist":{"shasum":"48edee106ad60a7c5e4bd5eeae42f73f58eb2b37","tarball":"https://registry.npmjs.org/@inixiative/json-rules/-/json-rules-2.25.0.tgz","fileCount":9,"integrity":"sha512-3NVyr6ejR1XcIBWOPFnJ7rAtCpH3Hp7HfCWlkGG7QBw2Wy4/qf6+QXbVbJF64LhWJ6nkJnt7Ciy99TsdKccU/A==","signatures":[{"sig":"MEUCIQD7SJ+CY8Rlof8FyuxISUZJex2y6hIOJ2H/tGJarGzIlQIgWPg2/jTSIQxXJy1c3o76fDziNkfwRWAZxwEWo1cJ4Ks=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIE+pjH0s1E8QfY7fHRnTR2Oz73cwiUnJMido4XyLCIvoAiAdSLO3XW4Y6bLcddLmDh92JDYD9IF9IaznUrS+3NPpYA=="}],"unpackedSize":1967993},"main":"./dist/index.cjs","name":"@inixiative/json-rules","type":"module","types":"./dist/index.d.ts","author":{"name":"Aron Greenspan"},"module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"d8fd3d81cfefe11b45699bad21b7dab7da42480b","license":"MIT","scripts":{"lint":"biome check .","test":"bun test","build":"tsup","check":"bun run typecheck && bun run lint && bun run test","format":"biome format --write .","prepare":"lefthook install","typecheck":"tsc --noEmit","check:catalog":"bun test test/operatorCatalog.integrity.test.ts","prepublishOnly":"bun run check && bun run build"},"version":"2.25.0","_npmUser":{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"},"homepage":"https://github.com/inixiative/json-rules#readme","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"_npmVersion":"10.9.3","description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","directories":{},"maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"_nodeVersion":"22.19.0","dependencies":{"dayjs":"^1.11.13","fastest-levenshtein":"^1.0.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.4.2","devDependencies":{"tsup":"8.5.1","lefthook":"2.1.9","lodash-es":"^4.17.21","@types/bun":"1.4.2","typescript":"6.0.3","@biomejs/biome":"2.5.2","@types/lodash-es":"^4.17.12","@inixiative/config":"^0.5.31","@electric-sql/pglite":"^0.3.15"},"peerDependencies":{"typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/json-rules_2.25.0_1789938519655_0.572920931161927"}}},"time":{"created":"2025-07-12T03:58:53.721Z","modified":"2026-09-20T21:08:39.957Z","1.0.0":"2025-07-12T03:58:53.999Z","1.0.1":"2025-07-14T00:31:39.697Z","1.0.2":"2025-07-14T02:00:51.538Z","1.1.0":"2026-01-28T04:08:32.073Z","1.1.1":"2026-01-28T04:23:15.696Z","1.1.2":"2026-02-02T02:28:05.127Z","1.2.0":"2026-03-07T22:37:06.734Z","1.3.0":"2026-04-27T23:47:49.949Z","1.3.1":"2026-04-28T02:33:21.002Z","1.3.2":"2026-04-28T02:46:04.532Z","1.3.3":"2026-04-28T14:59:27.945Z","1.3.4":"2026-05-11T14:58:33.788Z","2.0.0":"2026-05-23T01:46:30.354Z","2.0.3":"2026-05-24T14:10:07.451Z","2.1.0":"2026-05-25T03:12:24.341Z","2.1.1":"2026-05-25T05:02:55.583Z","2.2.0":"2026-05-25T17:15:46.826Z","2.3.0":"2026-05-26T00:46:21.272Z","2.4.0":"2026-05-26T01:30:17.230Z","2.5.0":"2026-05-26T03:29:37.222Z","2.5.1":"2026-06-09T12:25:43.464Z","2.6.0":"2026-06-11T18:31:18.713Z","2.7.0":"2026-06-13T12:53:41.915Z","2.8.0":"2026-06-13T14:47:15.888Z","2.9.0":"2026-06-27T22:16:43.068Z","2.9.1":"2026-06-27T22:43:03.126Z","2.10.0":"2026-06-28T01:51:42.914Z","2.10.1":"2026-06-28T22:52:49.533Z","2.11.0":"2026-06-29T18:25:04.068Z","2.11.1":"2026-06-30T16:45:32.544Z","2.12.0":"2026-07-02T15:02:48.433Z","2.12.1":"2026-07-02T16:05:33.395Z","2.13.0":"2026-07-03T02:36:58.576Z","2.13.1":"2026-07-03T04:34:12.786Z","2.14.0":"2026-07-03T04:51:59.553Z","2.14.1":"2026-07-03T17:27:49.602Z","2.15.0":"2026-07-06T23:59:02.749Z","2.15.1":"2026-07-07T00:36:18.506Z","2.16.0":"2026-07-07T01:15:38.046Z","2.17.0":"2026-07-16T21:15:04.899Z","2.17.1":"2026-07-16T21:51:51.398Z","2.18.0":"2026-07-17T03:23:46.472Z","2.18.1":"2026-07-17T04:17:47.862Z","2.18.2":"2026-07-20T13:51:42.738Z","2.18.3":"2026-07-29T07:15:02.047Z","2.18.4":"2026-08-11T19:24:04.198Z","2.19.0":"2026-08-25T16:52:41.349Z","2.19.1":"2026-08-25T20:01:45.655Z","2.19.2":"2026-08-25T21:55:15.232Z","2.19.3":"2026-08-25T23:59:39.012Z","2.19.4":"2026-08-26T00:57:17.461Z","2.19.5":"2026-08-26T16:48:47.368Z","2.19.6":"2026-08-26T17:15:00.752Z","2.19.7":"2026-08-26T21:28:53.508Z","2.19.8":"2026-08-26T21:32:06.981Z","2.20.0":"2026-08-31T18:44:38.899Z","2.21.0":"2026-09-02T14:37:45.812Z","2.21.1":"2026-09-07T02:33:59.517Z","2.22.0":"2026-09-10T14:29:28.820Z","2.23.0":"2026-09-10T18:02:58.157Z","2.24.0":"2026-09-16T00:23:39.269Z","2.25.0":"2026-09-20T21:08:39.751Z"},"bugs":{"url":"https://github.com/inixiative/json-rules/issues"},"author":{"name":"Aron Greenspan"},"license":"MIT","homepage":"https://github.com/inixiative/json-rules#readme","keywords":["json","rules","engine","validation","typescript","rules-engine","business-rules"],"repository":{"url":"git+https://github.com/inixiative/json-rules.git","type":"git"},"description":"TypeScript-first JSON rules engine with intuitive syntax and detailed error messages","maintainers":[{"name":"aron.inixiative","email":"aron.greenspan@inixiative.com"}],"readme":"# @inixiative/json-rules\n\nA TypeScript-first JSON rules library for:\n\n- runtime validation with custom error messages\n- Prisma query planning\n- PostgreSQL `WHERE` generation\n\nThe same rule AST can be evaluated against in-memory data with `check()`, converted into a Prisma query plan with `toPrisma()`, or compiled into SQL with `toSql()`.\n\n> Part of the [inixiative ecosystem](https://github.com/inixiative). See the **[full vocabulary](https://www.inixiative.com/vocabulary.html)** for every primitive — `Condition`, `FieldMap`, lens, sources, builders, and the layers built on them — with what each solves and how it works.\n\n## Installation\n\n```bash\nnpm install @inixiative/json-rules\n# or\nyarn add @inixiative/json-rules\n# or\nbun add @inixiative/json-rules\n```\n\n## Quick Start\n\n```ts\nimport { check, Operator } from '@inixiative/json-rules';\n\nconst rule = {\n  field: 'age',\n  operator: Operator.greaterThanEquals,\n  value: 18,\n  error: 'Must be 18 or older',\n};\n\ncheck(rule, { age: 21 }); // true\ncheck(rule, { age: 16 }); // \"Must be 18 or older\"\n```\n\n## What It Supports\n\n- scalar comparisons\n- nested logical conditions with `all` / `any`\n- `if` / `then` / `else`\n- array validation against nested object elements\n- array aggregates — `sum` and `avg` across numeric arrays or relation lists\n- ordered windowing — first/last `N` with `orderBy` / `take` / `skip` (check-only)\n- date comparisons with timezone-aware runtime evaluation\n- relative & calendar date expressions — \"last 30 days\", \"this month\" — via `within` and `ago`/`ahead`/`this`/`last`/`next`\n- relative value references via `path`, and `$$.` scope refs up through nested arrays\n- custom error messages on every rule\n- compilation to Prisma and PostgreSQL for supported subsets\n\n## Operators\n\n### Field Operators\n\n- `equals`\n- `notEquals`\n- `lessThan`\n- `lessThanEquals`\n- `greaterThan`\n- `greaterThanEquals`\n- `contains`\n- `notContains`\n- `in`\n- `notIn`\n- `matches`\n- `notMatches`\n- `between`\n- `notBetween`\n- `isEmpty`\n- `notEmpty`\n- `exists`\n- `notExists`\n- `startsWith`\n- `endsWith`\n\n### Array Operators\n\n- `all`\n- `any`\n- `none`\n- `atLeast`\n- `atMost`\n- `exactly`\n- `empty`\n- `notEmpty`\n\n### Aggregate Operators\n\nUsed in `aggregate.mode`:\n\n- `sum`\n- `avg`\n\nSupported comparison operators for aggregate rules: `equals`, `notEquals`, `lessThan`, `lessThanEquals`, `greaterThan`, `greaterThanEquals`, `between`, `notBetween`.\n\n### Date Operators\n\n- `before`\n- `after`\n- `onOrBefore`\n- `onOrAfter`\n- `notBefore`\n- `notAfter`\n- `within`\n- `notWithin`\n- `between`\n- `notBetween`\n- `dayIn`\n- `dayNotIn`\n\n## Rule Shapes\n\n### Field Rule\n\n```ts\n{\n  field: 'status',\n  operator: Operator.equals,\n  value: 'active'\n}\n```\n\n### Logical Rules\n\n```ts\n{\n  all: [\n    { field: 'age', operator: Operator.greaterThanEquals, value: 18 },\n    { field: 'hasLicense', operator: Operator.equals, value: true }\n  ]\n}\n\n{\n  any: [\n    { field: 'role', operator: Operator.equals, value: 'admin' },\n    { field: 'isOwner', operator: Operator.equals, value: true }\n  ]\n}\n```\n\n### Conditional Rule\n\n```ts\n{\n  if: { field: 'type', operator: Operator.equals, value: 'premium' },\n  then: { field: 'discount', operator: Operator.greaterThan, value: 0 },\n  else: { field: 'discount', operator: Operator.equals, value: 0 }\n}\n```\n\n### Array Rule\n\n```ts\n{\n  field: 'orders',\n  arrayOperator: ArrayOperator.all,\n  condition: {\n    field: 'total',\n    operator: Operator.lessThanEquals,\n    path: '$.maxBudget'\n  }\n}\n```\n\n### Aggregate Rule\n\nComputes `sum` or `avg` of an array and compares the result to a value.\n\n```ts\n// Primitive numeric array\n{\n  field: 'scores',\n  aggregate: { mode: 'avg' },\n  operator: Operator.greaterThanEquals,\n  value: 80\n}\n\n// Object array — aggregate.field selects the numeric property per element\n{\n  field: 'orders',\n  aggregate: { mode: 'sum', field: 'total' },\n  operator: Operator.greaterThan,\n  value: 1000\n}\n\n// Filtered aggregate — only aggregate elements matching a condition\n{\n  field: 'orders',\n  aggregate: { mode: 'sum', field: 'total' },\n  condition: { field: 'status', operator: Operator.equals, value: 'completed' },\n  operator: Operator.greaterThan,\n  value: 1000\n}\n\n// Dot-path field traversal — aggregate through relations\n{\n  field: 'department.projects',\n  aggregate: { mode: 'sum', field: 'budget' },\n  condition: { field: 'status', operator: Operator.equals, value: 'active' },\n  operator: Operator.greaterThan,\n  value: 50000\n}\n```\n\nEmpty-array semantics: `sum([]) = 0`, `avg([]) = null` (comparison fails).\n\n### Date Rule\n\n```ts\n{\n  field: 'expiryDate',\n  dateOperator: DateOperator.after,\n  value: '2026-01-01'\n}\n```\n\n### Relative & Calendar Date Expressions\n\nA date rule's `value` can be a structured, serializable expression instead of an\nabsolute date. Magnitudes are always **positive** — direction lives in the keyword.\nUnits are dayjs words: `day`, `week`, `isoWeek`, `month`, `quarter`, `year`,\n`hour`, `minute`, `second`.\n\n**Point expressions** — pair with `before` / `after` / `onOrBefore` / `onOrAfter` /\n`notBefore` / `notAfter`,\nor as `between` endpoints:\n\n```ts\n// \"more than 30 days ago\"\n{ field: 'completedAt', dateOperator: DateOperator.before, value: { ago: { days: 30 } } }\n\n// \"not since 30 days ago\" — on/before the point OR never (notAfter is the null-carrying\n// complement of after; onOrBefore is positive and skips NULL). Takes a literal date too.\n{ field: 'lastLoginAt', dateOperator: DateOperator.notAfter, value: { ago: { days: 30 } } }\n\n// \"within the next 2 months\"\n{ field: 'dueAt', dateOperator: DateOperator.after, value: { ahead: { months: 2 } } }\n\n// a named edge of a calendar period\n{ field: 'completedAt', dateOperator: DateOperator.before, value: { end: { last: 'month' } } }\n```\n\n**Range expressions** — pair with `within` / `notWithin`:\n\n```ts\n// \"this month\"\n{ field: 'completedAt', dateOperator: DateOperator.within, value: { this: 'month' } }\n\n// \"last week\", \"next quarter\"\n{ field: 'completedAt', dateOperator: DateOperator.within, value: { last: 'week' } }\n\n// rolling window: \"within the last 30 days\"  →  [now - 30d, now]\n{ field: 'completedAt', dateOperator: DateOperator.within, value: { ago: { days: 30 } } }\n\n// its complement: \"not in the last 30 days\" — a never-set date is not in the window, so\n// NULL matches (see NULL Semantics). The dormancy rule, in one leaf.\n{ field: 'lastLoginAt', dateOperator: DateOperator.notWithin, value: { ago: { days: 30 } } }\n```\n\nA **bare period** with `before` / `after` resolves to the only sensible edge —\n`before { last: 'month' }` is *before the start* of last month, `after { next: 'month' }`\nis *after the end* of next month. Use `{ start: … }` / `{ end: … }` for the other edge.\n\n#### The `now` contract and config\n\nRelative/calendar expressions need a reference instant. `now` is an **explicit\nevaluator input** — there is no implicit `Date.now()` inside the library. Pass it\non the same options bag as everything else; `check`/`toPrisma`/`toSql` **throw** if\na relative expression is used without it.\n\n```ts\ncheck(rule, data, { now, timeZone: 'America/New_York', weekStart: 'sunday' });\ntoPrisma(rule, { map, model, now });\ntoSql(rule, { now });\n```\n\n| Option | Default | Governs |\n| --- | --- | --- |\n| `now` | — (required when a relative/period expression is present) | the anchor instant |\n| `timeZone` | `'UTC'` | how `now` and period boundaries localize |\n| `weekStart` | `'monday'` (ISO / isoWeek) | start of `week` for `this`/`last`/`next` |\n\nCompilers resolve expressions to concrete `Date` bounds at compile time, so\n`check()`, `toPrisma()`, and `toSql()` all compare the same instant.\n\n### Windowing — first/last with `orderBy` / `take` / `skip`\n\nArray and aggregate rules accept an ordered-window selector that runs **before** the\npredicate. Pipeline: order → skip → take. Direction comes from `orderBy.dir`, so\n\"the last fanMission\" is `order by date desc, take 1`.\n\n```ts\n// \"user whose last fanMission was more than 30 days ago\"\n{\n  field: 'fanMissions',\n  orderBy: [{ field: 'completedAt', dir: 'desc' }],\n  take: 1,\n  arrayOperator: ArrayOperator.all,\n  condition: { field: 'completedAt', dateOperator: DateOperator.before, value: { ago: { days: 30 } } },\n}\n```\n\n`orderBy` is a non-empty array of `{ field, dir: 'asc' | 'desc' }` (multi-key);\n`take`/`skip` are non-negative integers. **Empty-window semantics are author-driven**:\n`all` is vacuously true on an empty window, `atLeast: 1` (or `any`) is false. To require\n\"the windowed element matches **and** one exists,\" combine `all` with `notEmpty` / `atLeast: 1`.\n\n> **Compilation.** `toPrisma()` compiles the **extremal** case — `take: 1`, a single\n> `orderBy`, and a monotonic condition on that same field, with the direction aligned so\n> the extremal element is binding (`all` + desc + `before`, `any` + desc + `after`, etc.).\n> It rewrites to `every` / `some` (e.g. the rule above → `{ fanMissions: { every: { completedAt:\n> { lt: <now-30d> } } } }`). Any other windowed rule — `take > 1`, `skip`, multi-key\n> `orderBy`, a different/non-monotonic condition, or a misaligned direction — throws a clear\n> \"unsupported\" error. `toSql()` does not compile windowing at all (no relation subqueries in\n> a `WHERE` fragment). Evaluate the unsupported cases in memory with `check()`.\n\n## Path Semantics\n\n`path` lets a rule resolve its comparison value from somewhere other than `value`.\n\n### Root Context Reference\n\nIn runtime validation, a plain path is resolved from the root context:\n\n```ts\n{\n  field: 'confirmPassword',\n  operator: Operator.equals,\n  path: 'password'\n}\n```\n\n### Scope References\n\nInside an array operator's `condition` or `filter`, `$.` reads from the current element.\nEach additional `$` reaches one enclosing element further out: `$$.` is the element of the\nenclosing array operator, `$$$.` the one above that, up to the root row. Logical\ncombinators (`all` / `any` / `if`) never add a level — only array and aggregate rules do.\n\nBoth `field` and `path` take the prefix. A bare `field` is always the current element; a\nbare `path` is always the root context (`options.context`, defaulting to the root row).\n\n```ts\n{\n  field: 'orders',\n  arrayOperator: ArrayOperator.all,\n  condition: {\n    field: 'lineItems',\n    arrayOperator: ArrayOperator.all,\n    condition: {\n      all: [\n        // line item qty against its order's cap\n        { field: 'qty', operator: Operator.lessThanEquals, path: '$$.maxQty' },\n        // order cap against the root row's limit — neither side is the line item\n        { field: '$$.maxQty', operator: Operator.lessThanEquals, path: '$$$.orgLimit' },\n      ],\n    },\n  },\n}\n```\n\nA ref deeper than the nesting (`$$.` at the top level, `$$$.` one array deep) throws in\n`check()`, is a `scope_out_of_bounds` issue from `validateRule`, and a violation from\n`checkRuleAgainstLens`. A reachable ancestor that lacks the named key fails the comparison\nlike any absent field.\n\n`toSql()` keeps `path: '$.x'` as a same-row column comparison. Every other scope ref — a\n`$$.` path or any prefixed `field` — is check-only; both compilers throw.\n\n## Rule Introspection\n\nReading a stored rule's own content — which values it names, which bindings it needs — is\nengine work, not caller work: a walk written outside the engine goes blind the day the rule\nformat grows a node type, and it goes blind silently.\n\n| Function | Purpose |\n| --- | --- |\n| `requiredBindings(rule)` | Names a bindings map must cover — every `{ bind }` token not marked `bindOptional`. A name optional at one leaf and required at another is required. |\n| `bindingNames(rule)` | Every `{ bind }` name in the tree, optional or not — what a lens declares. |\n| `resolveBindings(rule, bindings)` | Substitutes covered binds with their values, leaving uncovered tokens in place (partial resolution). |\n\nA leaf may mark its bind optional: `{ field, operator, bind: 'region', bindOptional: true }`. An\nunsupplied required bind is a caller bug — `check()` throws, and both compilers refuse a\nsurviving token. An unsupplied *optional* bind is `null` wherever absence is final: `check()`\ncompares against `null`, `toPrisma` / `toSql` compile the token as `null`. The rule is evaluated\nas written — the leaf is never pruned, so `in {{bind}}` with nothing bound matches nothing rather\nthan everything.\n\n\n## Runtime Validation\n\n`check()` evaluates a rule against data and returns:\n\n- `true` when the rule passes\n- a string when the rule fails\n\n```ts\nimport { ArrayOperator, check, Operator } from '@inixiative/json-rules';\n\nconst rule = {\n  all: [\n    { field: 'status', operator: Operator.equals, value: 'active' },\n    {\n      field: 'orders',\n      arrayOperator: ArrayOperator.atLeast,\n      count: 2,\n      condition: { field: 'status', operator: Operator.equals, value: 'completed' },\n    },\n  ],\n};\n\ncheck(rule, {\n  status: 'active',\n  orders: [\n    { status: 'completed' },\n    { status: 'pending' },\n    { status: 'completed' },\n  ],\n}); // true\n```\n\n### Custom Errors\n\nEvery rule can define its own error:\n\n```ts\n{\n  field: 'email',\n  operator: Operator.matches,\n  value: /^[^@]+@[^@]+\\.[^@]+$/,\n  error: 'Please enter a valid email address'\n}\n```\n\n## Prisma Query Planning\n\n`toPrisma()` converts a rule into a Prisma query plan.\n\n```ts\nimport { Operator, toPrisma } from '@inixiative/json-rules';\n\nconst plan = toPrisma({\n  field: 'status',\n  operator: Operator.equals,\n  value: 'active',\n});\n\n// plan.steps => [{ operation: 'where', where: { status: { equals: 'active' } } }]\n```\n\nAggregate relation filters (`sum`, `avg`) and count-based filters (`atLeast`, `atMost`, `exactly`) can produce multi-step plans. Use `executePrismaQueryPlan()` to resolve `groupBy` step references before passing the final `where` into Prisma.\n\n```ts\nimport {\n  ArrayOperator,\n  Operator,\n  executePrismaQueryPlan,\n  toPrisma,\n} from '@inixiative/json-rules';\n\nconst plan = toPrisma(\n  {\n    field: 'posts',\n    arrayOperator: ArrayOperator.atLeast,\n    count: 3,\n    condition: {\n      field: 'published',\n      operator: Operator.equals,\n      value: true,\n    },\n  },\n  { map, model: 'User' },\n);\n\nconst where = await executePrismaQueryPlan(plan, { post: prisma.post });\nawait prisma.user.findMany({ where });\n```\n\nAggregate rules on relation lists work the same way:\n\n```ts\nconst plan = toPrisma(\n  {\n    field: 'orders',\n    aggregate: { mode: 'sum', field: 'total' },\n    operator: Operator.greaterThan,\n    value: 1000,\n  },\n  { map, model: 'User' },\n);\n\nconst where = await executePrismaQueryPlan(plan, { order: prisma.order });\nawait prisma.user.findMany({ where }); // users whose orders sum to more than 1000\n```\n\n## PostgreSQL SQL Generation\n\n`toSql()` converts a rule into a parameterized PostgreSQL `WHERE` clause.\n\n```ts\nimport { Operator, toSql } from '@inixiative/json-rules';\n\nconst result = toSql({\n  field: 'status',\n  operator: Operator.equals,\n  value: 'active',\n});\n\n// {\n//   sql: '\"status\" = $1',\n//   params: ['active'],\n//   joins: []\n// }\n```\n\nWith a field map and model, `toSql()` can generate `LEFT JOIN`s for relation traversal:\n\n```ts\nconst result = toSql(\n  { field: 'author.email', operator: Operator.equals, value: 'a@b.com' },\n  { map, model: 'Post', alias: 't0' },\n);\n\n// result.sql   => '\"t1\".\"email\" = $1'\n// result.joins => ['LEFT JOIN \"User\" AS \"t1\" ON \"t1\".\"id\" = \"t0\".\"authorId\"']\n```\n\n## Backend Support Matrix\n\nNot every backend supports every rule shape.\n\n| Capability | `check()` | `toPrisma()` | `toSql()` |\n| --- | --- | --- | --- |\n| Field operators | Yes | Most | Yes |\n| `matches` / `notMatches` | Yes | No | Yes |\n| Logical operators | Yes | Yes | Yes |\n| Array `all` / `any` / `none` | Yes | Yes | No |\n| Array `atLeast` / `atMost` / `exactly` | Yes | Yes, with `map` + `model` | No |\n| Array `empty` / `notEmpty` | Yes | Yes | Yes |\n| Aggregate `sum` / `avg` — primitive or object array | Yes | No | Yes |\n| Aggregate `sum` / `avg` — relation list | Yes | Yes, with `map` + `model` | No |\n| Date comparisons | Yes | Most | Yes |\n| Date expressions (`ago`/`ahead`/`this`/`last`/`next`/`start`/`end`) + `within` | Yes | Yes | Yes |\n| `dayIn` / `dayNotIn` | Yes | No | Yes |\n| Windowing (`orderBy` / `take` / `skip`) | Yes | Extremal (`take:1`, aligned) | No |\n| `path: '$.field'` current-element / same-row refs | Yes | No | Yes |\n| `$$.` scope refs and `$`-prefixed `field` | Yes | No | No |\n\n### NULL Semantics\n\nA negated operator is the complement of its positive form — the same answer\n`check()` gives, where `null !== 'x'` is simply true. SQL's three-valued logic\ndisagrees (`col <> 'x'` is NULL, never true, for a NULL column), so the\ncompilers carry NULL rows explicitly:\n\n| Rule | `check()` on `{ col: null }` | `toSql()` | `toPrisma()` (nullable column) |\n| --- | --- | --- | --- |\n| `notEquals 'x'` / `notContains` / `notMatches` / `notBetween` | matches | `(col <> $1 OR col IS NULL)` | `{ OR: [{ col: { not: 'x' } }, { col: { equals: null } }] }` |\n| `notIn ['x']` | matches | `(col <> ALL($1) OR col IS NULL)` | `{ OR: [{ col: { notIn: ['x'] } }, { col: { equals: null } }] }` |\n| `in ['x', null]` | matches | `(col = ANY($1) OR col IS NULL)` | `{ OR: [{ col: { in: ['x'] } }, { col: { equals: null } }] }` |\n| `notIn ['x', null]` | no match | `(col <> ALL($1) AND col IS NOT NULL)` | `{ AND: [{ col: { notIn: ['x'] } }, { col: { not: null } }] }` |\n| `equals` / `notEquals` with `path: '$.other'` | `null === null` | `IS [NOT] DISTINCT FROM` | — |\n| `exists` / `notExists` | `!= null` / `== null` | `IS NOT NULL` / `IS NULL` | `{ not: null }` / `{ equals: null }` |\n\nThe **absent set** of a path is wider than a NULL leaf: an optional to-one hop can be NULL too,\nand `{ rel: { col: { equals: null } } }` only matches when the relation exists. So every negation\nalso carries `{ rel: { is: null } }` for each optional to-one hop on the path (licensed by the\nrelation entry's `isRequired: false`) — `profile.bio notEquals 'x'` compiles to\n`{ OR: [{ profile: { bio: { not: 'x' } } }, { profile: { bio: { equals: null } } }, { profile: { is: null } }] }`,\nmatching check() (a missing hop reads as `undefined`) and toSql (LEFT JOIN + `IS NULL`).\n\n`toPrisma()` can only add the null arm when it knows the column is nullable —\nan `equals: null` on a NOT NULL column is a Prisma validation error. Nullability\ncomes from the field map: `FieldMapEntry.isRequired: false` (prisma-map emits it).\nWithout `{ map, model }`, or on an entry that doesn't declare it, the bare\n`not` / `notIn` is emitted and NULL rows fall out, as they always did.\n\nDate rules follow the same split. The positive operators answer non-match on both\nrails — a bare boundary is not something a NULL column satisfies, so `check()`\nreports the rule's ordinary non-match (honoring `error`) and the compilers keep the\nbare `<` / `BETWEEN`. The negative-flavored ones (`notBefore`, `notAfter`, `notWithin`, `notBetween`, `dayNotIn`) follow\nthe negation ruling instead: a never-set date is not in the range, so a null column\nMATCHES, and the compilers carry the `IS NULL` arm. To match never-seen rows under a\npositive operator, ask for them:\n`{ any: [{ field, operator: 'notExists' }, { field, dateOperator: 'before', … }] }`.\n\n| Rule | `check()` on `{ col: null }` | `toSql()` | `toPrisma()` |\n| --- | --- | --- | --- |\n| positive `dateOperator` (`before`, `between`, `dayIn`, …) | no match | `col < $1` (NULL never satisfies) | `{ col: { lt: … } }` |\n| `notAfter X` / `notBefore X` | matches | `(col <= $1 OR col IS NULL)` / `(col >= $1 OR col IS NULL)` | `{ OR: [{ col: { lte } }, { col: { equals: null } }] }` (nullable column) |\n| `notWithin { ago: { days: 30 } }` | matches | `(col NOT BETWEEN $1 AND $2 OR col IS NULL)` | `{ OR: [{ NOT: { col: { gte, lte } } }, { col: { equals: null } }] }` (nullable column) |\n| `notBetween` | matches | `(col NOT BETWEEN $1 AND $2 OR col IS NULL)` | `{ OR: [{ NOT: { col: … } }, { col: { equals: null } }] }` (nullable column, same field-map licensing as above) |\n| `dayNotIn` | matches | `(EXTRACT(DOW FROM col) <> ALL($1) OR col IS NULL)` | — (no Prisma output) |\n| `notExists` OR `before` | matches via the first arm | `(col IS NULL OR col < $1)` | `{ OR: [{ col: { equals: null } }, { col: { lt: … } }] }` |\n\n`0` is an instant (1970-01-01) and compares; `''` is malformed data and raises\n`\"is not a valid date\"`.\n\n### Prisma Limitations\n\n- `matches` and `notMatches` are not supported by Prisma output\n- `dayIn` and `dayNotIn` are not supported by Prisma output\n- `path: '$.field'` column-to-column comparisons are not supported by Prisma `WHERE`; no scope ref (`$$.` path, prefixed `field`) compiles\n- count-based and aggregate relation operators require `{ map, model }`\n- aggregate rules with `notBetween` are not supported by Prisma output\n- aggregate rules on JSON/native stored arrays are not supported by Prisma — use `toSql()` or `check()` for those\n\n### SQL Limitations\n\n- complex array element operators are not supported in SQL output:\n  - `all`\n  - `any`\n  - `none`\n  - `atLeast`\n  - `atMost`\n  - `exactly`\n- `toSql()` generates `WHERE` fragments and `LEFT JOIN`s, not complete queries\n\n## TypeScript Types\n\nThe public rule types are generic over comparison payloads:\n\n```ts\ntype Condition<TRuleValue = RuleValue, TDateValue = DateRuleValue> =\n  | Rule<TRuleValue>\n  | AggregateRule\n  | ArrayRule<TRuleValue, TDateValue>\n  | DateRule<TDateValue>\n  | All<TRuleValue, TDateValue>\n  | Any<TRuleValue, TDateValue>\n  | IfThenElse<TRuleValue, TDateValue>\n  | boolean;\n```\n\nUseful exports:\n\n- `check`\n- `toPrisma`\n- `executePrismaQueryPlan`\n- `toSql`\n- `validateRule`\n- `assertValidRule`\n- `Operator`\n- `ArrayOperator`\n- `DateOperator`\n- `Condition`\n- `StrictCondition`\n- `Rule`\n- `AggregateRule`\n- `AggregateMode`\n- `ArrayRule`\n- `DateRule`\n\nLens & bridges:\n\n- `Lens`, `LensNarrowing`, `ModelNarrowing`, `ModelDefaultNarrowing`, `NarrowingDefaults`, `EnumNarrowing`\n- `FieldMapSet`, `Bridge`, `BridgeEndpoint`, `BridgeCardinality`\n- `createLens`, `stitchFieldMaps`, `validateFieldMap`, `validateFieldMapSet`\n- `validateNarrowing`, `projectByPath`, `exposedSurface`, `describeRule`, `checkRuleAgainstLens`, `applyLens`\n- `PathProjection`, `ProjectedVisit`, `RuleDescription`\n- `buildBridgeDictionary`\n\nTwo shapes come out of a lens, and they are different things:\n\n- **Lens** (maps intact — the navigable graph): `exposedSurface(lensOrNarrowing)`\n  returns the leak-safe total exposed surface *as a Lens* — every reachable model\n  with the full narrowing applied (root + path-specific + `mapDefaults`), unioned\n  per model, `where` stripped. Use it as the server→client builder surface; it\n  never exposes the raw, un-narrowed lens.\n- **Projection** (path-keyed view — graph flattened away): `projectByPath(lens)`\n  returns `Map<dottedPath, ProjectedVisit>` for per-path checks where sibling\n  paths to the same model diverge.\n\nOperator catalog (builder-facing):\n\n- `FIELD_OPERATOR_CATALOG`, `DATE_OPERATOR_CATALOG`, `ARRAY_OPERATOR_CATALOG`\n- `FieldKind`, `RuleTarget`, `ValueShape`\n- `NUMERIC_KINDS`, `ORDERABLE_KINDS`, `STRINGY_KINDS`, `EQUATABLE_KINDS`, `ALL_KINDS`\n- `getOperatorsForKind`, `getArrayOperators`, `getValueShape`, `isOperatorSupportedForTarget`\n- `WINDOW_SELECTOR`, `WindowSupport`, `getWindowSupport` (windowing fields + per-ruleType×target support)\n\n## Error Handling\n\nThe library throws when a rule is structurally invalid, for example:\n\n- array operators used against non-arrays\n- missing `count` for count-based array rules\n- invalid date values\n- unsupported backend translations\n\nIt returns string errors only from runtime `check()`.\n\nIf rules come from JSON, a database, an API, or an editor, validate them first:\n\n```ts\nimport { assertValidRule, validateRule } from '@inixiative/json-rules';\n\nconst result = validateRule(rule, { target: 'check' });\nif (!result.ok) {\n  console.error(result.errors);\n}\n\nassertValidRule(rule, { target: 'toPrisma' });\n```\n\n## Root-Array Rules in `check()`\n\nWhen `data` is an array, the rule must be a tree of `all` / `any` whose leaves are **fieldless** `ArrayRule`s (no `field`, `arrayOperator` operates on the array itself).\n\n```ts\nconst users = [\n  { industry: 'tech', status: 'active' },\n  { industry: 'finance', status: 'active' },\n  { industry: 'tech', status: 'inactive' },\n];\n\n// \"Is there any tech user AND are at least 2 active?\"\ncheck(\n  {\n    all: [\n      { arrayOperator: ArrayOperator.any, condition: { field: 'industry', operator: Operator.equals, value: 'tech' } },\n      { arrayOperator: ArrayOperator.atLeast, count: 2, condition: { field: 'status', operator: Operator.equals, value: 'active' } },\n    ],\n  },\n  users,\n);\n```\n\n`check()` throws if `data` is an array but the rule contains any field-based leaf, or if the rule is a fieldless `ArrayRule` and `data` is not an array. Root-array compilation to Prisma/SQL is not yet implemented — these are `check()`-only.\n\n## Lens & Multi-Source Data\n\n> **For the full v2.2 lens guide — including the three anchor layers for `where`\n> (root, model-default, relation-descent), the `all` operator filter-first\n> trick, per-model enum narrowing, and a validate-then-apply usage pattern —\n> see [docs/LENS.md](./docs/LENS.md).**\n> This section covers the high-level shape and the multi-source bridges.\n\n### What a lens is *for*\n\nA lens is not a query filter. It's a composable, **enforceable model of authority\nover data** — *what a party can see and what it can do* — delegated down a chain of\ntrust boundaries (platform → org → space → subtenant → client). Each layer can only\n**narrow**, never widen (`validateNarrowing` keeps the chain monotonic), and the\nboundary is **enforced, not documented**:\n\n- a rule authored against a lens provably can't reference outside it —\n  `checkRuleAgainstLens`, at author time;\n- the row-scope **`where` is the grant, applied server-side at execution** via\n  `applyLens` — the authored rule never sees it and can't escape it;\n- what reaches an untrusted party reveals nothing hidden — `exposedSurface`.\n\nA lens defines a **surface area**, reused for distinct, separately-enforced\nconstraints that may **diverge**: the *data-flow* surface (what you receive / pass\ninto an interpolated template / expose to a client) vs the *reasoning* surface\n(what you may author predicates against — which can be narrower than what you\nactually get back). One predicate DSL (`Condition`) expresses both the **grant**\n(`where`) and the **use** (rules), compiling to `check` / `toPrisma` / `toSql`.\nThat's why the same primitive backs permissions, email targeting/conditions,\nfeature flags, and state-transition guards — it's the authority/visibility spine\nthey compose on, not a filter helper.\n\n### How it's built\n\nThe `Lens` primitive is a schema-aware view layer over one or more `FieldMap`s. It enables rule authoring against multi-source data (e.g. Prisma + an external CRM), with declarative cross-source `Bridge`s and recursive `Narrowing`s for both schema (picks/omits/enumPicks/enumOmits) and data (`where`).\n\n### FieldMap & FieldMapSet\n\nA `FieldMap` is `{ models, enums? }` — models keyed by name, plus an optional enum registry scoped to that source. A `FieldMapSet` groups one or more `FieldMap`s and declares the cross-source edges between them:\n\n```ts\nimport { stitchFieldMaps } from '@inixiative/json-rules';\n\nconst prismaMap = {\n  models: {\n    FanUser: { fields: { /* ... */ } },\n  },\n  enums: { UserRole: ['admin', 'member'] },\n};\n\nconst set = stitchFieldMaps({\n  maps: { prisma: prismaMap, salesforce: salesforceMap },\n  bridges: [\n    {\n      endpoints: [\n        { fieldMap: 'salesforce', model: 'Contact', on: 'id' },\n        { fieldMap: 'prisma',     model: 'FanUser', on: 'crmId' },\n      ],\n      cardinality: 'oneToMany',\n    },\n  ],\n});\n```\n\n`stitchFieldMaps()` injects bridge entries as `kind: 'bridge'` fields on each endpoint model — addressable in rules via `<fieldMap>:<Model>` notation (e.g. `salesforce:Contact.industry`). Each endpoint's `on` is the symmetric join field used at eval time for hydration. Bridge cardinality controls list-vs-single on each side.\n\n### Lens\n\n```ts\n// Lens extends FieldMapSet — maps and bridges live at the top level.\n// Use `createLens` (it stitches bridges internally) instead of constructing by hand.\nimport { createLens } from '@inixiative/json-rules';\n\nconst lens = createLens({\n  maps: { prisma: prismaMap, salesforce: salesforceMap },\n  bridges,\n  mapName: 'prisma',         // which map in `maps` holds the anchor model\n  model: 'FanUser',          // anchor model\n});\n```\n\nThe lens is **schema only** — no data lives on it. Runtime data (rows, foreign tables, FE picker sources) is passed alongside, separately, when you need it.\n\n### LensNarrowing & `where`\n\n`LensNarrowing` is a recursive tree that narrows a parent `Lens` (or another `LensNarrowing`). Each narrowing can add schema picks/omits per model, per-field enum picks/omits, and `where` clauses for data scope:\n\n```ts\nconst narrowing: LensNarrowing = {\n  parent: lens,\n  root: {\n    // path-specific narrowing at the lens anchor (FanUser)\n    picks: ['email', 'firstName', 'crmId'],\n    where: { field: 'tenantId', operator: Operator.equals, path: 'tenantId' },\n  },\n  mapDefaults: {\n    prisma: {\n      // applies wherever FanUser appears, root or nested\n      models: {\n        FanUser: { where: { field: 'deletedAt', operator: Operator.isEmpty } },\n      },\n    },\n  },\n};\n```\n\nComposition across chained narrowings is pure intersection. `where` clauses are anchored to the model they describe — `root.where` ANDs at the lens anchor, `mapDefaults[X].models[Y].where` injects at every visit of Y in map X, and `root.relations[R]...where` injects when the rule descends through R. The `all` array operator gets a filter-first rewrite via implication so out-of-scope rows don't fail the user's \"every row matches\" check. See [docs/LENS.md](./docs/LENS.md) for the full anchor semantics.\n\n### Lens Utilities\n\n| Function | Purpose |\n| --- | --- |\n| `validateNarrowing(narrowing)` | Throws on structural or chain violations (incl. unresolvable `where` paths and items invisible from ancestors). Call at narrowing construction. |\n| `projectByPath(lens)` | Returns `Map<dottedPath, ProjectedVisit>` — each declared path keys its own resolved narrowing (path picks/omits/enums chain-intersected ∩ `mapDefaults` for the target model). Sibling paths to the same model stay independent. Use for SDK-contract / OpenAPI emission, search-field enumeration, validation whitelists. See [docs/LENS.md §10](./docs/LENS.md). |\n| `ruleSourceValues(lens, rule)` | The values a rule names at each source the lens declares, keyed like `projectByPath` (`path` + `field`, with the source's `mapName` / `model`). Resolved via `walkLensPath`, so `mapDefaults` sources answer wherever their model appears. `dynamic: true` when the set can't be enumerated: a `path` / `bind` leaf, a substring / pattern / range / window operator, or an operator the catalog doesn't know — callers fail closed on it. The reverse question for a reference registry (\"which rows does this rule name\") — join `model` + `values`. |\n| `checkRuleAgainstLens(rule, lens)` | Validates a user rule's field paths and enum values against the narrowed lens, path-aware. Returns `{ ok, violations }`. The security gate. |\n| `applyLens(rule, narrowing)` | Composes the user rule with the lens's `where` clauses, injecting each at its anchor in the rule tree. Pass the result to `check` / `toPrisma` / `toSql`. |\n\n### Evaluating Across Bridges\n\n`path:` refs (used for value comparisons) walk via the same dotted-path mechanism as `field:`. Bridge keys (`'salesforce:Contact'`) are just plain object properties, so `path: 'salesforce:Contact.industry'` works in both `field:` (left side) and `path:` (right side) positions.\n\n**Limitations to know:**\n\n- **1-many bridge arrays are not iterable mid-path.** `field: 'crm:MarketingEvent.campaign'` or `path: 'crm:MarketingEvent.campaign'` returns `undefined` when the bridge value is an array — `lodash.get` can't fan out across array elements. Use a numeric index (`crm:MarketingEvent.0.campaign`) or `arrayOperator` on the `field:` side to iterate.\n- **Bridge keys are plain object properties.** The engine doesn't consult `lens.bridges` at eval time — callers structure `data` correctly using the schema as a guide. Use `buildBridgeDictionary(lens, rawForeign)` to pre-index foreign rows by `on` field, then embed under bridge keys per anchor row.\n\n\n`check()` itself is bridge-unaware — it walks paths via plain property access. The lens primitive is **schema metadata** (what fields exist, what bridges link them, what `on` fields join each side). The caller is responsible for structuring `data` accordingly:\n\n```ts\nconst fanUser = { id: 'u1', email: 'a@b.com', crmId: 'c1' };\nconst contact = await fetchContact(fanUser.crmId);\n\n// Embed the foreign row under its bridge key\nconst data = { ...fanUser, 'salesforce:Contact': contact };\n\n// Rule references the bridge key in the path\nconst rule = { field: 'salesforce:Contact.industry', operator: Operator.equals, value: 'tech' };\ncheck(rule, data);\n```\n\nFor **bidirectional traversal**, use JavaScript object references — `check`'s path walker handles circular structures fine because rules are finite trees and only resolve named paths:\n\n```ts\nfanUser['salesforce:Contact'] = contact;\ncontact['prisma:FanUser']     = fanUser;   // back-ref\n\n// Rule walks fanUser → contact → fanUser → email\nconst rule = { field: 'salesforce:Contact.prisma:FanUser.email', operator: Operator.equals, value: 'a@b.com' };\ncheck(rule, fanUser);\n```\n\nFor **batch evaluation**, build the anchor array yourself (engine supports root-array rules via fieldless arrayOperators):\n\n```ts\nconst enriched = fanUsers.map((u) => ({\n  ...u,\n  'salesforce:Contact': contactsByCrmId[u.crmId],\n  'crm:MarketingEvent': eventsByUserId[u.id],\n}));\n\ncheck(\n  {\n    arrayOperator: ArrayOperator.any,\n    condition: { field: 'salesforce:Contact.industry', operator: Operator.equals, value: 'tech' },\n  },\n  enriched,\n);\n```\n\nThe lens schema (with `Bridge.endpoints[*].on`) is what tells the caller how to fetch and index foreign data. The runtime engine just walks the resulting structure.\n\n## Examples\n\nSee [`examples/basic-validation.ts`](./examples/basic-validation.ts), [`examples/array-operations.ts`](./examples/array-operations.ts), [`examples/aggregate-rules.ts`](./examples/aggregate-rules.ts), [`examples/date-operations.ts`](./examples/date-operations.ts), and [`examples/advanced-features.ts`](./examples/advanced-features.ts).\n\n## License\n\nMIT\n","readmeFilename":"README.md"}