{"_id":"@biorate/unimock","_rev":"24-67f1c0d1f373d203a489863e8cf074cb","name":"@biorate/unimock","dist-tags":{"latest":"1.14.0"},"versions":{"1.1.0":{"name":"@biorate/unimock","version":"1.1.0","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.1.0","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"549503a5905aea9aaa4ec9bcb54bbaf1de7550fa","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.1.0.tgz","fileCount":38,"integrity":"sha512-+PN948bZSelcRbb0X+O4c0GlUxSfZ5SchzWuStjz8XqQv6MQXICoxQUZW5DXrOyXdgfFsRGBeB9SkgUMfEOeRA==","signatures":[{"sig":"MEYCIQC8NhLa3KZm9LWTBU979tiswcsztH1/SDisVkPb2Sy0DAIhAIirSaCKlaVxlx3UyRpZIEbp9rx3Y2j0Rt3qHeNJC+P7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":50490},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"597075dce442d85c256f7e850c271c30664f747f","scripts":{"lint":"eslint src --ext .ts","test":"npx vitest run --coverage","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.3/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.0.0","@biorate/inversion":"3.0.2","@biorate/lifecycled":"3.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/unimock_1.1.0_1779999157360_0.3734982541152274","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@biorate/unimock","version":"1.2.0","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.2.0","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"11df135d88ca29a751c64e2096eddc207fbd8be2","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.2.0.tgz","fileCount":44,"integrity":"sha512-FON95XGBDN8bQmyVev/cXazp0l4D0KoublqZ1bmTwwmBYrPxiKyIel65EbpWEtcDtR7ghXhTNcpMcJE4zUwizw==","signatures":[{"sig":"MEUCIQChIswmplYXNkBUhNna1cFIoYGuYjza3luDEhBIrKgxagIgS7o3y4ZddswDGpwAuNwSmFH3yZRTpV6cLfUL99r+1Sc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90268},"main":"./dist/cjs/index.js","_from":"file:biorate-unimock-1.2.0.tgz","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"_resolved":"/tmp/8f8c2f3fcbbfe692e1e2bca88025544c/biorate-unimock-1.2.0.tgz","_integrity":"sha512-FON95XGBDN8bQmyVev/cXazp0l4D0KoublqZ1bmTwwmBYrPxiKyIel65EbpWEtcDtR7ghXhTNcpMcJE4zUwizw==","repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"11.6.2","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.0","@biorate/inversion":"3.1.0","@biorate/lifecycled":"3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.0","@biorate/mssql":"2.1.0","@biorate/proxy":"2.1.0","@biorate/redis":"2.1.0","@biorate/tools":"3.1.0","@biorate/config":"3.2.0","@biorate/ioredis":"2.1.0","@biorate/mongodb":"2.1.0","@biorate/rdkafka":"2.3.0","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.0","@biorate/clickhouse":"2.3.0","@biorate/opensearch":"2.1.0","@biorate/prometheus":"3.1.0","@biorate/schema-registry":"3.1.0","@biorate/proxy-prometheus":"2.1.0","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.2.0_1781714071235_0.005988725299742592","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@biorate/unimock","version":"1.3.0","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.3.0","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"7e3c7b9713ed46c0afee353c96227d517bc07eb9","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.3.0.tgz","fileCount":44,"integrity":"sha512-X6iAeCY7eiDoIF/F9HELW683QxU73YEgFnJt74AUHlHB22B8+Bb5RamFiEuFWJegpUwbzvilVmxAOqo3azo0vw==","signatures":[{"sig":"MEUCID1KC91q/AjgKRGUtC+Hp9IQFaGyAazINI6R8PKYdrLmAiEA0KFd24SQT1BCz0ld7dHqEQcXWJ7at1a364VR9M6ip10=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":91166},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"7dd655becaff955ee5904180b2a59236cc193833","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.0","@biorate/inversion":"3.1.0","@biorate/lifecycled":"3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.0","@biorate/mssql":"2.1.0","@biorate/proxy":"2.1.0","@biorate/redis":"2.1.0","@biorate/tools":"3.1.0","@biorate/config":"3.2.0","@biorate/ioredis":"2.1.0","@biorate/mongodb":"2.1.0","@biorate/rdkafka":"2.3.0","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.0","@biorate/clickhouse":"2.4.0","@biorate/opensearch":"2.1.0","@biorate/prometheus":"3.1.0","@biorate/schema-registry":"3.1.0","@biorate/proxy-prometheus":"2.1.0","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.3.0_1781729943801_0.586328040860669","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@biorate/unimock","version":"1.4.0","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.4.0","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"361ca03d482705433513c0aa1f3aba38cfef6a63","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.4.0.tgz","fileCount":44,"integrity":"sha512-O/XDp+v2JUc4h4ph5Npe5muo3/FwAGNP86v5pW58edVK78UkOqkm6LGN4cUbreMWOQJusIm2nZiB8oUxRyu0vQ==","signatures":[{"sig":"MEYCIQDm3PHbDWSFTtupV9p4tmLXReGDky/oO+D5YFlMjY1ncgIhAJiIh5BdfbdQvzTI1OiFDgofWzyp/pYrV3kV5qPDp5zR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":92656},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"d220a7e81a893bad409daeeef7ab5021d3b20d84","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.0","@biorate/inversion":"3.1.0","@biorate/lifecycled":"3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.0","@biorate/mssql":"2.1.0","@biorate/proxy":"2.1.0","@biorate/redis":"2.1.0","@biorate/tools":"3.1.0","@biorate/config":"3.2.0","@biorate/ioredis":"2.1.0","@biorate/mongodb":"2.1.0","@biorate/rdkafka":"2.3.0","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.0","@biorate/clickhouse":"2.4.0","@biorate/opensearch":"2.1.0","@biorate/prometheus":"3.1.0","@biorate/schema-registry":"3.1.0","@biorate/proxy-prometheus":"2.1.0","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.4.0_1781731237051_0.22009415899775164","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@biorate/unimock","version":"1.5.0","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.5.0","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"dd00e4a34bb4631b9b7036baf0e1db52190ce564","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.5.0.tgz","fileCount":44,"integrity":"sha512-lQ9ZG8WYSPaIIVcnBAI4EtFGrhWEFdyM+8+R3Z8yZ4GUvFCkLWRPV6JWgq/8ILy18kDy4FeJP/ZcX1s/ZcaC9A==","signatures":[{"sig":"MEQCICjnJi78yTgzoDZLIyvsXEiFQ/SwDk64poRPQ93UNJdaAiAfqZoAi8wGxctJNZGfCD5bRW49utyyDUBCNERbkS8M5g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95424},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"7ac13619450b7ee8710399dd98e1593fe9b71e2e","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.0","@biorate/inversion":"3.1.0","@biorate/lifecycled":"3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.0","@biorate/mssql":"2.1.0","@biorate/proxy":"2.1.0","@biorate/redis":"2.1.0","@biorate/tools":"3.1.0","@biorate/config":"3.2.0","@biorate/ioredis":"2.1.0","@biorate/mongodb":"2.1.0","@biorate/rdkafka":"2.3.0","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.0","@biorate/clickhouse":"2.4.0","@biorate/opensearch":"2.1.0","@biorate/prometheus":"3.1.0","@biorate/schema-registry":"3.1.0","@biorate/proxy-prometheus":"2.1.0","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.5.0_1781732680228_0.8493565532295093","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@biorate/unimock","version":"1.6.0","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.6.0","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"bdd70a7672a18c0985ee1776d0c6da25876de0c1","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.6.0.tgz","fileCount":44,"integrity":"sha512-i79lhpmreFzgmTWnNBYaz0NKrPVzO/AkDxEQ5WWRk9YllSHneSc4/+qn7IDmCKyRkZb4k0a9pp3Pl/hf1u2M9g==","signatures":[{"sig":"MEYCIQDo/hFD2jG3KSr4cqi106dHD+qv5AONTDauu1Tl9UTEPAIhAIAVIKq9jAjSdDIHM8IZSfHPvTXl/mesM+6v0SNr25CW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":96692},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"06c46e5ef600792d4d6684ac057bda68764a8624","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.0","@biorate/inversion":"3.1.0","@biorate/lifecycled":"3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.0","@biorate/mssql":"2.1.0","@biorate/proxy":"2.1.0","@biorate/redis":"2.1.0","@biorate/tools":"3.1.0","@biorate/config":"3.2.0","@biorate/ioredis":"2.1.0","@biorate/mongodb":"2.1.0","@biorate/rdkafka":"2.3.0","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.0","@biorate/clickhouse":"2.4.0","@biorate/opensearch":"2.1.0","@biorate/prometheus":"3.1.0","@biorate/schema-registry":"3.1.0","@biorate/proxy-prometheus":"2.1.0","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.6.0_1781768605023_0.33446544692630176","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"name":"@biorate/unimock","version":"1.6.1","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.6.1","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"5462428850727468d67ba00a05b7ebef98617415","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.6.1.tgz","fileCount":44,"integrity":"sha512-Z83Mi1jVn06C3Q8vg+3dsrRO6vTVTqosQBMlW6IVHjU/1gzvxsM2neOp5b9iCWiWlv28n51NYmeASihZN1efFw==","signatures":[{"sig":"MEUCIQDjiKLkkl+RE6tuWIkLIc+dMJ/vFNXUUUwBtmsdjeJELAIgXxlz3GAMXK7Iw8TznRCGqwZIsCtR3DJLGl2+xfxvgR4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":96692},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"60abe6a6f1ed0ca0c1851e4c3af09568143b1e9f","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.0","@biorate/inversion":"3.1.0","@biorate/lifecycled":"3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.0","@biorate/mssql":"2.1.0","@biorate/proxy":"2.1.0","@biorate/redis":"2.1.0","@biorate/tools":"3.1.0","@biorate/config":"3.2.0","@biorate/ioredis":"2.1.0","@biorate/mongodb":"2.1.0","@biorate/rdkafka":"2.3.0","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.0","@biorate/clickhouse":"2.4.0","@biorate/opensearch":"2.1.0","@biorate/prometheus":"3.1.0","@biorate/schema-registry":"3.1.0","@biorate/proxy-prometheus":"2.1.0","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.6.1_1781782287137_0.5918887502020169","host":"s3://npm-registry-packages-npm-production"}},"1.6.2":{"name":"@biorate/unimock","version":"1.6.2","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.6.2","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"65fc5719a3ae9f1dae523780f00023c1cd8ca48d","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.6.2.tgz","fileCount":44,"integrity":"sha512-AxvpPafc6o9dChVnB73LrFCG49cf9e6hBEUXRDmtteaZtbAwX50hWk1DB8QvVXywhuTZAL8xYnUIBYI0iPayiQ==","signatures":[{"sig":"MEQCIE2h6jUGXXWYqBUyBblSJbzdkoW7BUoway82BVIgIMpoAiAa+Sca2IokLzdIkQxSzMXV+cvabA0HFGO2hlDGOB6BjQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":96692},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"4ec073f69a7fc223e802ced6a632e7a45fa324d9","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.0","@biorate/inversion":"3.1.0","@biorate/lifecycled":"3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.0","@biorate/mssql":"2.1.0","@biorate/proxy":"2.1.1","@biorate/redis":"2.1.0","@biorate/tools":"3.1.0","@biorate/config":"3.2.0","@biorate/ioredis":"2.1.0","@biorate/mongodb":"2.1.0","@biorate/rdkafka":"2.3.0","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.0","@biorate/clickhouse":"2.4.0","@biorate/opensearch":"2.1.0","@biorate/prometheus":"3.1.0","@biorate/schema-registry":"3.1.1","@biorate/proxy-prometheus":"2.1.1","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.6.2_1781792391116_0.8901811009577896","host":"s3://npm-registry-packages-npm-production"}},"1.8.0":{"name":"@biorate/unimock","version":"1.8.0","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.8.0","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"ac9a9bd6d5082c4b2aef9f6b3f55a7cdcb161356","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.8.0.tgz","fileCount":47,"integrity":"sha512-QDc+ynuNj6PHpPAgxabGJklUOJx4Ml+yQ+qscHd6XNIXjx1f7RNZmC2uNEPPJgpCfdQdKqlTMtluM4eRMaqaIA==","signatures":[{"sig":"MEUCIFuuVSGCLMNQuHvVQXPxalz9NLAwciSYZMDUp5tmjRsjAiEAr1Wlp3sn2dlg5wwNukyra9kWNphMncJa3ZWU5/D8HjA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":104457},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"f34621f6d1ce5fe7a0bb9281a7e05c6b87338154","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.0","@biorate/inversion":"3.1.0","@biorate/lifecycled":"3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.0","@biorate/mssql":"2.1.0","@biorate/proxy":"2.1.1","@biorate/redis":"2.1.0","@biorate/tools":"3.1.0","@biorate/config":"3.2.0","@biorate/ioredis":"2.1.0","@biorate/mongodb":"2.1.0","@biorate/rdkafka":"2.3.0","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.0","@biorate/clickhouse":"2.4.0","@biorate/opensearch":"2.1.0","@biorate/prometheus":"3.1.0","@biorate/schema-registry":"3.1.1","@biorate/proxy-prometheus":"2.1.1","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.8.0_1781800497187_0.10530540077598505","host":"s3://npm-registry-packages-npm-production"}},"1.8.1":{"name":"@biorate/unimock","version":"1.8.1","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.8.1","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"42751324332fc7c3a4f51d60cd1a87937ecb9f3a","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.8.1.tgz","fileCount":47,"integrity":"sha512-obmTeQKDkGrHqW+MY+glfi58tiqZqC1VFNS1yYVh5FoxgDT6wovvJ3mZOfrhH8sppVz2CmCzLBCJO1rrlEK4cQ==","signatures":[{"sig":"MEQCID6sbIvVgq9T/+wubNthBegEhWcjtbtV/RrTyeu01NsNAiBDHP+t0WEeVXGA+WFyJvdTjuoPMKxdYK7cpDGo4e5QAA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":104457},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"dc90022a2d8b15f5351e8554f885dd2cdcd0e528","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.0","@biorate/inversion":"3.1.0","@biorate/lifecycled":"3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.0","@biorate/mssql":"2.1.0","@biorate/proxy":"2.1.1","@biorate/redis":"2.1.0","@biorate/tools":"3.1.0","@biorate/config":"3.2.0","@biorate/ioredis":"2.1.0","@biorate/mongodb":"2.1.0","@biorate/rdkafka":"2.3.0","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.0","@biorate/clickhouse":"2.4.0","@biorate/opensearch":"2.1.0","@biorate/prometheus":"3.1.0","@biorate/schema-registry":"3.1.2","@biorate/proxy-prometheus":"2.1.1","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.8.1_1782471972497_0.6626667640311077","host":"s3://npm-registry-packages-npm-production"}},"1.8.2":{"name":"@biorate/unimock","version":"1.8.2","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.8.2","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"117f85fff6c56219af899cc0e33bce9a016cfba1","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.8.2.tgz","fileCount":47,"integrity":"sha512-MbQc6nSuGnuKpitJbd998LtMkXmz0nkSuI/lGbRhoxIf4xVkczfi/nq6b8O7hjYq3i5XMoERfBIxPbkRLyaS9w==","signatures":[{"sig":"MEQCICU6u2kEL4/YLa6K/S8Z3Bs/6DHp/AHSw+S19PO/XzGeAiANh3h4pb36E+kSe62ZaBApsac7p4wTJYIgfDgEIA7HtA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":104457},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"ff1dcf14a733ce8004ca582d2c421a2154ce97cb","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.1","@biorate/inversion":"3.1.1","@biorate/lifecycled":"3.2.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.1","@biorate/mssql":"2.1.1","@biorate/proxy":"2.1.2","@biorate/redis":"2.1.1","@biorate/tools":"3.1.1","@biorate/config":"3.2.1","@biorate/ioredis":"2.1.1","@biorate/mongodb":"2.1.1","@biorate/rdkafka":"2.3.1","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.1","@biorate/clickhouse":"2.4.1","@biorate/opensearch":"2.1.1","@biorate/prometheus":"3.1.1","@biorate/schema-registry":"3.1.3","@biorate/proxy-prometheus":"2.1.2","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.8.2_1782482290254_0.07703561335411613","host":"s3://npm-registry-packages-npm-production"}},"1.8.3":{"name":"@biorate/unimock","version":"1.8.3","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.8.3","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"82c352234cab229df826aba9ee55b4f064f19777","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.8.3.tgz","fileCount":47,"integrity":"sha512-+V20/lvAEat64hVHaTnwgUyNuvLeL58YwFGB5D++b3WL0I4OlNQ/Cwi4d1ITfPBCzhzoDSgibsApkATu3P0aRg==","signatures":[{"sig":"MEYCIQCgarYyJ3ss4h2O/h7mU2z4VBkAVFbhGeLxUpZYFTxJ+QIhAJSmeNrnSvW7H/wXt27/kFDh8bx5kQDHkiQHKsfS8sOo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":104456},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"e17a03900999e261a0eb04c6afb09b9535cad952","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.2","@biorate/inversion":"3.1.2","@biorate/lifecycled":"3.2.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.2","@biorate/mssql":"2.1.2","@biorate/proxy":"2.1.3","@biorate/redis":"2.1.2","@biorate/tools":"3.1.2","@biorate/config":"3.2.2","@biorate/ioredis":"2.1.2","@biorate/mongodb":"2.1.2","@biorate/rdkafka":"2.3.2","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.2","@biorate/clickhouse":"2.4.2","@biorate/opensearch":"2.1.2","@biorate/prometheus":"3.1.2","@biorate/schema-registry":"3.1.4","@biorate/proxy-prometheus":"2.1.3","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.18.1"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.8.3_1782484177291_0.22235854193599236","host":"s3://npm-registry-packages-npm-production"}},"1.8.4":{"name":"@biorate/unimock","version":"1.8.4","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.8.4","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"b66aff42dec14ee75f17e016ad93e4e7b22bf1f0","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.8.4.tgz","fileCount":47,"integrity":"sha512-LjvZyuwPONzD60EGHIxZPioDaa7eWghUr/oHeqCM+Qm5Xkr75KTCJgMz0xpHHitlqKMZVhvtKhkmw2kfsjyEVw==","signatures":[{"sig":"MEQCIHgD/f+26ysAeLItbsAcLPqwW/yhtmNKfPPmFF7MWHwXAiAsF49lzGiUpdW38RQ473z+Hd9LAxnmzFMuSZKRfkpvEw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":104456},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"146d0a721093d0327ba4cacd275783a779bc3059","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.2","@biorate/inversion":"3.1.3","@biorate/lifecycled":"3.2.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.3","@biorate/mssql":"2.1.3","@biorate/proxy":"2.1.4","@biorate/redis":"2.1.3","@biorate/tools":"3.1.2","@biorate/config":"3.2.3","@biorate/ioredis":"2.1.3","@biorate/mongodb":"2.1.3","@biorate/rdkafka":"2.3.3","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.3","@biorate/clickhouse":"2.4.3","@biorate/opensearch":"2.1.3","@biorate/prometheus":"3.1.3","@biorate/schema-registry":"3.1.5","@biorate/proxy-prometheus":"2.1.4","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.18.1"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.8.4_1782484747424_0.5936570583492147","host":"s3://npm-registry-packages-npm-production"}},"1.8.5":{"name":"@biorate/unimock","version":"1.8.5","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.8.5","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"1f6374d2744ff27f9b2dee18b58828bcd0c70439","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.8.5.tgz","fileCount":47,"integrity":"sha512-zSFsfnRYOsP3j+JVt2V4hkh/z/TzK0KxoJayL4e8Hq6dlLQ5zHW1zP9b8ZzoEVAqADGJxd6ylR0xdP2Gierqlg==","signatures":[{"sig":"MEQCIGGiv/4kHE8TLy3Fo6mYgIvrQzTbSgd89GZF7M2+f/dtAiBnjqF5N0hBX7u+S3Kt4aeqosXcVgZ8EzdUelElpKOH2A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":104456},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"0696f1a30056198ed9371cad19789cb586fe79d1","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.2","@biorate/inversion":"3.1.3","@biorate/lifecycled":"3.2.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.3","@biorate/mssql":"2.1.3","@biorate/proxy":"2.1.5","@biorate/redis":"2.1.3","@biorate/tools":"3.1.2","@biorate/config":"3.2.3","@biorate/ioredis":"2.1.3","@biorate/mongodb":"2.1.3","@biorate/rdkafka":"2.3.3","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.3","@biorate/clickhouse":"2.4.3","@biorate/opensearch":"2.1.3","@biorate/prometheus":"3.1.3","@biorate/schema-registry":"3.1.6","@biorate/proxy-prometheus":"2.1.5","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.18.1"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.8.5_1782486013349_0.4543309649495666","host":"s3://npm-registry-packages-npm-production"}},"1.8.6":{"name":"@biorate/unimock","version":"1.8.6","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.8.6","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"edab3f545afbb11c929de3074ebda98eda68d484","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.8.6.tgz","fileCount":47,"integrity":"sha512-jTgjefq3PhrB95BbGHT3FS4Y7W9kkW1bJFU2jzHGBa4YS+pwtlKPgRjxBiIuKUBC0TK/bymR3dQDlA43jNyPtQ==","signatures":[{"sig":"MEUCIBCUQw88hH83hq3zk4OwSGOEN/k+Cc5PSPz5QqnzJrHXAiEAnWbV8eVlekWNmAySunHruoR232MNcTFXxR/HKCNaAzA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":104456},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"e9d14c200a1c88ee2b6bb7ca3fa13599e3785f53","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.2","@biorate/inversion":"3.1.3","@biorate/lifecycled":"3.2.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.3","@biorate/mssql":"2.1.3","@biorate/proxy":"2.1.5","@biorate/redis":"2.1.3","@biorate/tools":"3.1.2","@biorate/config":"3.2.3","@biorate/ioredis":"2.1.3","@biorate/mongodb":"2.1.3","@biorate/rdkafka":"2.3.3","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.3","@biorate/clickhouse":"2.4.3","@biorate/opensearch":"2.1.3","@biorate/prometheus":"3.1.3","@biorate/schema-registry":"3.1.7","@biorate/proxy-prometheus":"2.1.5","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.18.1"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.8.6_1783335620075_0.38446072786048147","host":"s3://npm-registry-packages-npm-production"}},"1.8.7":{"name":"@biorate/unimock","version":"1.8.7","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.8.7","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"29e348201834684ffeaf859719c453a4243b30d4","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.8.7.tgz","fileCount":47,"integrity":"sha512-3ZMHKNozIY9rzL55AOL9EhAl0+M3l0GKjK2/PSnnnDeif+Xy6f50cyEHVSWdHKwUXkCFrmZt5wRK7RD0tFx1Bg==","signatures":[{"sig":"MEYCIQC7mvNe0RWuhhIbrWpG7KEIxBUxJ5EwWNck91gKoLSXYwIhAM/SCu6ooU2f7toCwsd+acLIe92aZZ0xk1J5ALtPAoPZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105659},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"2c281f6c7141a1dc3720b0a8fe0c8892826adac6","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.2","@biorate/inversion":"3.1.3","@biorate/lifecycled":"3.2.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.3","@biorate/mssql":"2.1.3","@biorate/proxy":"2.1.5","@biorate/redis":"2.1.3","@biorate/tools":"3.1.2","@biorate/config":"3.2.3","@biorate/ioredis":"2.1.3","@biorate/mongodb":"2.1.3","@biorate/rdkafka":"2.3.3","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.3","@biorate/clickhouse":"2.4.3","@biorate/opensearch":"2.1.3","@biorate/prometheus":"3.1.3","@biorate/schema-registry":"3.1.7","@biorate/proxy-prometheus":"2.1.5","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.18.1"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.8.7_1783347564632_0.5085764736154512","host":"s3://npm-registry-packages-npm-production"}},"1.8.8":{"name":"@biorate/unimock","version":"1.8.8","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.8.8","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"a4022f6c9850b1d7332f04d9a38d8892434d1a85","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.8.8.tgz","fileCount":47,"integrity":"sha512-VMAdLLoQ80iBxE5qYge83jxRp04BNJx5Vj2Lts+Svx7RWw8FNGhLqFcLUHroZZBlfxYtBtnlcDzue80Dn65Mxw==","signatures":[{"sig":"MEUCIADIimM7JzOA2qoC5qiSCjvdOtQaVsLdkzYuSLq9hPs0AiEAmT23OLUcSIKIVaBFhOvUDP4UhHHcedVJCgus3wxk5ng=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105659},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"da3a3753523ba3a5b872fc8698cea30680f2aad8","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.2","@biorate/inversion":"3.1.3","@biorate/lifecycled":"3.2.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.3","@biorate/mssql":"2.1.3","@biorate/proxy":"2.1.5","@biorate/redis":"2.1.3","@biorate/tools":"3.1.2","@biorate/config":"3.2.3","@biorate/ioredis":"2.2.0","@biorate/mongodb":"2.1.3","@biorate/rdkafka":"2.3.3","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.3","@biorate/clickhouse":"2.4.3","@biorate/opensearch":"2.1.3","@biorate/prometheus":"3.1.3","@biorate/schema-registry":"3.1.7","@biorate/proxy-prometheus":"2.1.5","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.18.1"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.8.8_1785754916407_0.2886827381142236","host":"s3://npm-registry-packages-npm-production"}},"1.8.9":{"name":"@biorate/unimock","version":"1.8.9","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.8.9","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"e30a1675a56d0f7838c4eea4c9b594511aafa212","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.8.9.tgz","fileCount":47,"integrity":"sha512-EdNQcplEmQpV21gyZJiF1yPp9efz5rEXIlo+zJIU2Ru11Z4qzOFd7Ggpr9Q5b9yuLtF2EtSsBHKNUy1PXCZlGQ==","signatures":[{"sig":"MEQCIC9rhaa26u+umvEJ3zXh1zNueHSP2a7fgSlUnGOf3cUhAiA5WcfX2WcJoGiJxNHw6XwWkriv/CiSlPB2eVaP4y63AA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105659},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"2434bb720d6ab5250f82ce3cf51a488c190e71a8","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.2","@biorate/inversion":"3.1.3","@biorate/lifecycled":"3.2.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.3","@biorate/mssql":"2.1.3","@biorate/proxy":"2.1.5","@biorate/redis":"2.1.3","@biorate/tools":"3.1.2","@biorate/config":"3.2.3","@biorate/ioredis":"2.2.1","@biorate/mongodb":"2.1.3","@biorate/rdkafka":"2.3.3","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.3","@biorate/clickhouse":"2.4.3","@biorate/opensearch":"2.1.3","@biorate/prometheus":"3.1.3","@biorate/schema-registry":"3.1.7","@biorate/proxy-prometheus":"2.1.5","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.18.1"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.8.9_1785831388470_0.2735708172899116","host":"s3://npm-registry-packages-npm-production"}},"1.8.10":{"name":"@biorate/unimock","version":"1.8.10","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.8.10","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"292cf01b80473157cde00ef38ef8244c92ea791a","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.8.10.tgz","fileCount":47,"integrity":"sha512-2zXZ2WezhmRnJiLkSbAw1wdIPT6739/kIpZRAn1d0qFvXNkNoaVK0/n/lgzsoawc8LAWKd4F01QU9Pm7TF9LVg==","signatures":[{"sig":"MEQCICxpp6HdqG8LMY2ZbdSy6nxbfbyNYBhaEzV8z+lN+mhmAiAH4rijnod+NeBt+zZL12wL72MbIyO1pFwIxFShhIrPgw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105660},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"e1d55863dad08b59a96eee95b45edcb3da813670","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.2","@biorate/inversion":"3.1.3","@biorate/lifecycled":"3.2.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.3","@biorate/mssql":"2.1.3","@biorate/proxy":"2.1.5","@biorate/redis":"2.1.3","@biorate/tools":"3.1.2","@biorate/config":"3.2.3","@biorate/ioredis":"2.3.0","@biorate/mongodb":"2.1.3","@biorate/rdkafka":"2.3.3","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.3","@biorate/clickhouse":"2.4.3","@biorate/opensearch":"2.1.3","@biorate/prometheus":"3.1.3","@biorate/schema-registry":"3.1.7","@biorate/proxy-prometheus":"2.1.5","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.18.1"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.8.10_1786612320896_0.1872962364207318","host":"s3://npm-registry-packages-npm-production"}},"1.8.11":{"name":"@biorate/unimock","version":"1.8.11","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.8.11","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"ab6b0c060bdbcdff09a32f2b12ec36c239cb244a","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.8.11.tgz","fileCount":47,"integrity":"sha512-2SyBcsMA0WkvZNq3D2D+DSTAoCHPEB/dRZHUn6nmIqI0oFoXEOd4TBhKzrKQJaww3nLmvTyt2EjicG6TxvP1OA==","signatures":[{"sig":"MEUCIQCNuKXDix7SORBur+MRDQi051ysGyDgwYRX0rIpahyAqQIgIBI1qGyTFkC4bWxURaoi3oAjoxyelIUpGhrdHzFwK2E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105660},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"e24019783b77fff5f6208b83a39055ab216c06b6","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.13.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@biorate/errors":"3.1.2","@biorate/inversion":"3.1.3","@biorate/lifecycled":"3.2.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.3","@biorate/mssql":"2.1.3","@biorate/proxy":"2.1.6","@biorate/redis":"2.1.3","@biorate/tools":"3.1.2","@biorate/config":"3.2.3","@biorate/ioredis":"2.3.0","@biorate/mongodb":"2.1.3","@biorate/rdkafka":"2.3.3","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.3","@biorate/clickhouse":"2.4.3","@biorate/opensearch":"2.1.3","@biorate/prometheus":"3.1.3","@biorate/schema-registry":"3.1.8","@biorate/proxy-prometheus":"2.1.6","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.18.1"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.8.11_1788272822879_0.4643800966896856","host":"s3://npm-registry-packages-npm-production"}},"1.10.0":{"name":"@biorate/unimock","version":"1.10.0","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.10.0","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"7ee11263441c5c9fbaa2a361564c493b8cf7c95f","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.10.0.tgz","fileCount":47,"integrity":"sha512-hhty/VBbREcxCraIZUXBdnG/bKTaU6s+qwiqxBttoTm7fehqpuZScflmnZgxzsvC9lnD5CuEvcw0vETSs4PlXA==","signatures":[{"sig":"MEQCIGhzEszqoQwIvrf/mqp5V1FHIfrstnQqXAu5yJEeO0WwAiBcWOgqUpvyBtLlNoy58PhKrQ4tqEWN6fOXKfRXz4UNRw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":126984},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"4dee2e6f12777caa1fad432fe093d4a7ba81ab60","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.20.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@biorate/errors":"3.1.2","@biorate/inversion":"3.1.3","@biorate/lifecycled":"3.2.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.3","@biorate/mssql":"2.1.3","@biorate/proxy":"2.1.6","@biorate/redis":"2.1.3","@biorate/tools":"3.1.2","@biorate/config":"3.2.3","@biorate/ioredis":"2.3.0","@biorate/mongodb":"2.1.3","@biorate/rdkafka":"2.3.3","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.3","@biorate/clickhouse":"2.4.3","@biorate/opensearch":"2.1.3","@biorate/prometheus":"3.1.3","@biorate/schema-registry":"3.1.9","@biorate/proxy-prometheus":"2.1.6","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.18.1"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.10.0_1788893685077_0.48809193619802116","host":"s3://npm-registry-packages-npm-production"}},"1.11.0":{"name":"@biorate/unimock","version":"1.11.0","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.11.0","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"2051cfdb2d24b608dcc2525bbc3f64295bcd0d78","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.11.0.tgz","fileCount":47,"integrity":"sha512-9NFEY0koAxDB6evtwqpxfUPtQRH1b3dGbyYViGslni5IDhvAoUHCby3vFDOHCJXopjX9Wii/ECCDjhUhjCHPlg==","signatures":[{"sig":"MEUCIQCf3H0cctp0SUzEVZXMt61ygInS0bqWwOnkp4pvf80CcwIgc0hmwTx2jd6wY+cACi9y2+LphmJ5Q1alFx3M3wBp87s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":128571},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"581e8c5d28712651bacf68d49cf3c0f423804cf6","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"llevkin","email":"llevkin@yandex.ru"},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/9.0.7/node@v24.20.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@biorate/errors":"3.1.2","@biorate/inversion":"3.1.3","@biorate/lifecycled":"3.2.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.3","@biorate/mssql":"2.1.3","@biorate/proxy":"2.1.6","@biorate/redis":"2.1.3","@biorate/tools":"3.1.2","@biorate/config":"3.2.3","@biorate/ioredis":"2.3.0","@biorate/mongodb":"2.1.3","@biorate/rdkafka":"2.3.3","@types/lodash-es":"^4.17.12","@biorate/sequelize":"2.2.3","@biorate/clickhouse":"2.4.3","@biorate/opensearch":"2.1.3","@biorate/prometheus":"3.1.3","@biorate/schema-registry":"3.1.9","@biorate/proxy-prometheus":"2.1.6","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.18.1"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.11.0_1788950672893_0.9448437137573293","host":"s3://npm-registry-packages-npm-production"}},"1.13.0":{"name":"@biorate/unimock","version":"1.13.0","keywords":["mock","snapshot","e2e","connector"],"author":{"name":"llevkin"},"license":"MIT","_id":"@biorate/unimock@1.13.0","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"homepage":"https://biorate.github.io/core","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"675dd3202abaebec77a9cb0f289e9d4cbfb23753","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.13.0.tgz","fileCount":59,"integrity":"sha512-5yLCbVgkFAsKrRNtrKypo0JyNP2nFxdht+M/QnziCaVMYj9PWfIs/xnRO9FLGILBcfUt2hceMlR3328v4Kze+g==","signatures":[{"sig":"MEUCIEhBKzQkKzCjIKkNqkNJNujLzuHjBbkHzYfCzmbNbgocAiEAwaKHNofA+pROO+PYfD0W1VIzNOa6S1QIjGKhnW7oJy4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDdhmsirXyYotsz7H7l+HkjZr9LNUoS48TOtwMmjT/XjwIhAMy1sLjq/KOONL2RC89S7NjDPUkdwsgheeHsOakPW1h4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@biorate%2funimock@1.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":187532},"main":"./dist/cjs/index.js","types":"./dist/types/index.d.ts","module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"d90176b1b09427c5db2b9f1ede06090fca1f89c8","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","test:e2e":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage tests/e2e","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","test:unit":"npx vitest run --coverage tests/unit","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d3044989-328d-4169-a983-08e14d4926e1"}},"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/10.0.1/node@v24.20.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@biorate/errors":"3.1.2","@biorate/inversion":"3.1.3","@biorate/sequelize":"^2.3.0","@biorate/lifecycled":"3.2.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.3","@biorate/mssql":"2.1.3","@biorate/proxy":"2.1.6","@biorate/redis":"2.1.3","@biorate/tools":"3.1.2","@biorate/config":"3.2.3","@biorate/ioredis":"2.3.0","@biorate/mongodb":"2.1.3","@biorate/rdkafka":"2.3.3","@types/lodash-es":"^4.17.12","@biorate/clickhouse":"2.4.3","@biorate/opensearch":"2.1.3","@biorate/prometheus":"3.1.3","@biorate/schema-registry":"3.1.9","@biorate/proxy-prometheus":"2.1.6","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.18.1"},"_npmOperationalInternal":{"tmp":"tmp/unimock_1.13.0_1789794198021_0.008305107012841262","host":"s3://npm-registry-packages-npm-production"}},"1.14.0":{"_id":"@biorate/unimock@1.14.0","bugs":{"url":"https://github.com/biorate/core/issues"},"dist":{"shasum":"a1ecfc8d500f307c53cb8b9f86a1ddeeebf9213b","tarball":"https://registry.npmjs.org/@biorate/unimock/-/unimock-1.14.0.tgz","fileCount":59,"integrity":"sha512-xIUMxMbmGpTiKn5/kWZH4/Kz3LxWz0w3x1hIp1E25wUwIvYGvpfiutFnu8lnOcdOTnaztLi/bAh+cOnLChrrAQ==","signatures":[{"sig":"MEUCICDzT+YXLoQfyWp813QMLYSd39VfAe/w8GeKI17UVOKsAiEAlv1CsGQvF5/53acta9AitfiTdIxsCLl30YEiVpXxYZc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIAtcraKcpcQNPA+t2dMQ54tOcz5HA+hjpBUkyh9uxXpLAiAeMGqht33y2/WwlMImXmI318jOmimCpkFJjAs6yZhiXg=="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@biorate%2funimock@1.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":199313},"main":"./dist/cjs/index.js","name":"@biorate/unimock","types":"./dist/types/index.d.ts","author":{"name":"llevkin"},"module":"./dist/esm/index.js","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","default":"./dist/cjs/index.js","require":"./dist/cjs/index.js"},"./vitest":{"types":"./dist/types/src/vitest/index.d.ts","import":"./dist/esm/src/vitest/index.js","default":"./dist/cjs/src/vitest/index.js","require":"./dist/cjs/src/vitest/index.js"},"./vitest/setup":{"types":"./dist/types/src/vitest/setup.d.ts","import":"./dist/esm/src/vitest/setup.js","default":"./dist/cjs/src/vitest/setup.js","require":"./dist/cjs/src/vitest/setup.js"}},"gitHead":"4266fe1579ee6aca2e2c3e9584cd735798a595f5","license":"MIT","scripts":{"lint":"eslint src --ext .ts","test":"pnpm run test:replay","build":"pnpm run clean && pnpm run build:cjs && pnpm run build:esm && pnpm run build:types","clean":"cleanup dist","format":"prettier --check src","lint:fix":"eslint src --ext .ts --fix","test:e2e":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage tests/e2e","build:cjs":"npx tsc -p ./tsconfig.build.cjs.json","build:esm":"npx tsc -p ./tsconfig.build.esm.json","test:unit":"npx vitest run --coverage tests/unit","format:fix":"prettier --write src","build:types":"npx tsc -p ./tsconfig.build.types.json","test:record":"UNIMOCK_STRIP_REQUEST=1 UNIMOCK_SKIP_CONN_ARGS=1 UNIMOCK_GZIP=1 UNIMOCK=record npx vitest run --coverage","test:replay":"UNIMOCK=replay npx vitest run --coverage","postbuild:cjs":"node ../../../.scripts/write-package-type.js dist/cjs commonjs","postbuild:esm":"tsc-esm-fix --tsconfig=./tsconfig.build.esm.json --target=./dist/esm && node ../../../.scripts/write-package-type.js dist/esm module","prepublishOnly":"pnpm run build"},"version":"1.14.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d3044989-328d-4169-a983-08e14d4926e1"}},"homepage":"https://biorate.github.io/core","keywords":["mock","snapshot","e2e","connector"],"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"_npmVersion":"lerna/10.0.1/node@v24.20.0+x64 (linux)","description":"Snapshot-based proxy mocking for connectors and services","directories":{},"maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"_nodeVersion":"24.20.0","dependencies":{"@biorate/errors":"3.1.2","@biorate/inversion":"3.1.3","@biorate/sequelize":"^2.3.0","@biorate/lifecycled":"3.2.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@biorate/pg":"2.1.3","@biorate/mssql":"2.1.3","@biorate/proxy":"2.1.6","@biorate/redis":"2.1.3","@biorate/tools":"3.1.2","@biorate/config":"3.2.3","@biorate/ioredis":"2.3.0","@biorate/mongodb":"2.1.3","@biorate/rdkafka":"2.3.3","@types/lodash-es":"^4.17.12","@biorate/clickhouse":"2.4.3","@biorate/opensearch":"2.1.3","@biorate/prometheus":"3.1.3","@biorate/schema-registry":"3.1.9","@biorate/proxy-prometheus":"2.1.6","@confluentinc/kafka-javascript":"latest"},"peerDependencies":{"lodash-es":">=4.18.1"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/unimock_1.14.0_1790094041436_0.5819352752601836"}}},"time":{"created":"2026-05-28T20:12:36.790Z","modified":"2026-09-22T16:20:41.922Z","1.1.0":"2026-05-28T20:12:37.505Z","1.2.0":"2026-06-17T16:34:31.366Z","1.3.0":"2026-06-17T20:59:03.952Z","1.4.0":"2026-06-17T21:20:37.219Z","1.5.0":"2026-06-17T21:44:40.366Z","1.6.0":"2026-06-18T07:43:25.163Z","1.6.1":"2026-06-18T11:31:27.305Z","1.6.2":"2026-06-18T14:19:51.257Z","1.8.0":"2026-06-18T16:34:57.308Z","1.8.1":"2026-06-26T11:06:12.638Z","1.8.2":"2026-06-26T13:58:10.382Z","1.8.3":"2026-06-26T14:29:37.417Z","1.8.4":"2026-06-26T14:39:07.558Z","1.8.5":"2026-06-26T15:00:13.499Z","1.8.6":"2026-07-06T11:00:20.257Z","1.8.7":"2026-07-06T14:19:24.768Z","1.8.8":"2026-08-03T11:01:56.573Z","1.8.9":"2026-08-04T08:16:28.628Z","1.8.10":"2026-08-13T09:12:01.032Z","1.8.11":"2026-09-01T14:27:03.019Z","1.10.0":"2026-09-08T18:54:45.223Z","1.11.0":"2026-09-09T10:44:33.026Z","1.13.0":"2026-09-19T05:03:18.122Z","1.14.0":"2026-09-22T16:20:41.531Z"},"bugs":{"url":"https://github.com/biorate/core/issues"},"author":{"name":"llevkin"},"license":"MIT","homepage":"https://biorate.github.io/core","keywords":["mock","snapshot","e2e","connector"],"repository":{"url":"git+https://github.com/biorate/core.git","type":"git","directory":"packages/@biorate/unimock"},"description":"Snapshot-based proxy mocking for connectors and services","maintainers":[{"name":"llevkin","email":"llevkin@yandex.ru"}],"readme":"# @biorate/unimock\n\nSnapshot-based proxy mocking for connectors and services.\n\nRecord real calls once, replay them later without live infrastructure. Ideal for integration tests that depend on databases, message brokers, HTTP APIs, or any other external service.\n\n## How it works\n\n`@Mockable()` extends the decorated class and replaces its prototype methods with wrappers. In **record** mode, each call passes through to the original implementation and the arguments + result are persisted into a JSON snapshot file. In **replay** mode, the wrappers return the recorded responses without invoking the original logic.\n\nConnection objects returned by `.get()` or getter properties are automatically wrapped in a `MockHandler` (Proxy), so subsequent method calls on them are also recorded and replayed.\n\n## Installation\n\n```bash\npnpm add @biorate/unimock\n```\n\n## Usage\n\n> 💡 **Examples** — полные примеры интеграции по видам мокируемых зависимостей (что добавить в vitest setup и в `__mocks__/`): см. [`examples/`](examples/README.md).\n\n### Basic service mocking\n\n```ts\nimport {\n  Mockable,\n  mock,\n  SnapshotStore,\n  flushAllSnapshots,\n  isReplay,\n  isRecord,\n} from '@biorate/unimock';\n\nclass TestService {\n  public async query(sql: string) {\n    return { data: [1, 2, 3] };\n  }\n  public get value() {\n    return 'real-value';\n  }\n}\n\n// Record phase (needs live service)\nSnapshotStore.setMode('record');\n\n@Mockable({ importMeta: import.meta })\nclass MockedService extends TestService {}\n\nconst service = new MockedService();\nconsole.log(await service.query('SELECT 1')); // { data: [1, 2, 3] } — real call\nflushAllSnapshots(); // writes tests/__snapshots__/MockedService.unimock.json (next to test file)\n\n// Replay phase (no live service needed)\nSnapshotStore.setMode('replay');\n\nconst replayed = new MockedService();\nconsole.log(await replayed.query('SELECT 1')); // { data: [1, 2, 3] } — from snapshot\n```\n\n> 📚 Пример — [`examples/service-class.md`](examples/service-class.md).\n\n### Functional style\n\nIf you prefer not to use decorators, use `mock()` — it works identically to `@Mockable()`:\n\n```ts\nimport { mock, SnapshotStore, flushAllSnapshots } from '@biorate/unimock';\n\nclass TestService {\n  public async query(sql: string) {\n    return { data: [1, 2, 3] };\n  }\n}\n\nconst MockedService = mock(TestService, { importMeta: import.meta });\n\nSnapshotStore.setMode('record');\nconst service = new MockedService();\nconsole.log(await service.query('SELECT 1')); // { data: [1, 2, 3] } — real call\nflushAllSnapshots();\n\nSnapshotStore.setMode('replay');\nconst replayed = new MockedService();\nconsole.log(await replayed.query('SELECT 1')); // { data: [1, 2, 3] } — from snapshot\n```\n\n> 📚 Пример — [`examples/service-class.md`](examples/service-class.md).\n\n### Plain object mocking\n\n`mock()` also accepts plain objects and class instances — every method is wrapped for record/replay:\n\n```ts\nimport { mock, SnapshotStore, flushAllSnapshots } from '@biorate/unimock';\n\nconst obj = mock(\n  {\n    query: async (sql: string) => ({ data: [1, 2, 3] }),\n  },\n  { importMeta: import.meta },\n);\n\n// Record phase\nSnapshotStore.setMode('record');\nconsole.log(await obj.query('SELECT 1')); // { data: [1, 2, 3] } — real call\nflushAllSnapshots();\n\n// Replay phase\nSnapshotStore.setMode('replay');\nconsole.log(await obj.query('SELECT 1')); // { data: [1, 2, 3] } — from snapshot\n```\n\n> 📚 Пример — [`examples/plain-object.md`](examples/plain-object.md).\n\nThe snapshot name is auto-derived: `constructor.name` for class instances, or `Object_<hash>` for literals. Use `name` in options to override:\n\n```ts\nconst obj = mock(service, { name: 'MyService', importMeta: import.meta });\n```\n\nThe original object is not mutated — a copy is returned.\n\n### Static method wrapping\n\nSome ORMs and frameworks expose operations as static methods (e.g. Sequelize `Model.findByPk()`). Use the `statics` option to wrap them for recording and replay.\n\n```ts\nimport { Mockable, SEQUELIZE_STATICS } from '@biorate/unimock';\n\n// Use a predefined list\n@Mockable({ statics: [SEQUELIZE_STATICS] })\nclass TestModel extends Model {}\n```\n\nEach element in the `statics` array is a list of method names:\n\n```ts\n// Custom static methods\n@Mockable({ statics: [['myMethod', 'another']] })\nclass MyService extends BaseService {}\n\n// Combined\n@Mockable({ statics: [SEQUELIZE_STATICS, ['myMethod']] })\nclass HybridModel extends Model {\n  static myMethod() { ... }\n}\n```\n\nAvailable static method lists:\n\n| Export              | Methods                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |\n| ------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `SEQUELIZE_STATICS` | `sync`, `drop`, `create`, `findOne`, `findAll`, `findByPk`, `findOrCreate`, `findOrBuild`, `findCreateFind`, `findAndCountAll`, `destroy`, `update`, `upsert`, `bulkCreate`, `truncate`, `restore`, `count`, `sum`, `min`, `max`, `increment`, `decrement`, `describe`, `scope`, `unscoped`, `schema`, `getTableName`, `addScope`, `removeAttribute`, `getAttributes`, `hasAlias`, `hasMany`, `belongsToMany`, `hasOne`, `belongsTo`, `build`, `bulkBuild`, `warnOnInvalidOptions` |\n\n> 📚 Пример (включая offline-биндинг моделей в replay — обход `ModelNotInitializedError`) — [`examples/static-methods.md`](examples/static-methods.md).\n\n#### Replay reconstruction of model instances\n\nIn replay mode, the recorded result of a static that returns model instances is reconstructed into real model instances (with working `toJSON()`, `get()`, `save()`, etc.) by the model's own **original** static `build(plain, { isNewRecord: false })`, captured before wrapping. The result shape determines how the recorded data is rebuilt:\n\n**Constructor-internal pass-through (1.10.1).** While the original `build` is running, the vanilla constructor may re-enter the model's own wrapped prototype methods (e.g. Sequelize `_initValues`). Those inner calls are **not** looked up in the snapshot store — they pass through to the original implementations, and instance state is populated by the model's own constructor. This means the construction options seen in record mode (hydration: `raw: true, attributes: [...]`) and in replay (reconstruction: `{ isNewRecord: false }`) **do not need to match**, and seeding a `build()` call with identical args is no longer required. Post-construction calls (`toJSON()`, `get()`, …) are served from the recorded per-instance `call:{refId}:` entries.\n\n| Statics                                                   | Replayed result                                                             |\n| --------------------------------------------------------- | --------------------------------------------------------------------------- |\n| `create`, `findOne`, `findByPk`, `build`                  | a single model instance                                                     |\n| `findAll`, `bulkCreate`, `bulkBuild`                      | an array of model instances                                                 |\n| `findOrCreate`, `findOrBuild`, `findCreateFind`, `upsert` | an `[instance, created]` pair                                               |\n| `update`                                                  | a `[count, instances]` pair                                                 |\n| `findAndCountAll`                                         | `{ count, rows: instances }`                                                |\n| `scope`, `unscoped`, `schema`                             | the model class itself, so chaining like `Model.scope('x').findAll()` works |\n\nUnknown or custom statics keep the legacy behaviour: the recorded result is deserialized as plain data. Instance methods called on reconstructed instances are replayed with per-instance call keys (`call:{refId}:...`), so each row of a multi-row result returns its own data.\n\n### Symbol serialization\n\nBy default, symbol values are serialized as a string marker (`'<symbol>'`). To preserve symbol identity across record/replay, enable the `symbols` option:\n\n```ts\n@Mockable({ symbols: true })\nclass MockedService extends RealService {}\n```\n\n> 📚 Пример — [`examples/options.md`](examples/options.md).\n\nWhen enabled, symbols are serialized as `{ t: 'symbol', v: '<description>' }` and restored via `Symbol(description)`. This is an opt-in feature because it changes the snapshot format and would break existing snapshots.\n\n### Nested wrapping depth\n\nBy default, `MockHandler` recursively wraps any result with methods (e.g., a connection returned by `.get()`), and methods on that wrapper are also wrapped, and so on indefinitely. Use the `depth` option to limit this recursion:\n\n```ts\n// Decorator style\n@Mockable({ depth: 2 })\nclass ShallowService extends RealService {}\n\n// Functional style (identical)\nconst ShallowService = mock(RealService, { depth: 2 });\n```\n\n> 📚 Пример — [`examples/options.md`](examples/options.md).\n\nWhen the limit is reached, nested results are serialized directly as plain data instead of being wrapped in a `MockHandler`.\n\n### Callback arguments\n\nFunctions passed as arguments to mocked methods are intercepted: their invocations are recorded in record mode and replayed in replay mode.\n\n> 📚 Пример — [`examples/callbacks.md`](examples/callbacks.md).\n\n### Connector mocking (ClickHouse)\n\n```ts\nimport { Core, inject, container, Types } from '@biorate/inversion';\nimport { IConfig, Config } from '@biorate/config';\nimport { Mockable, SnapshotStore, flushAllSnapshots } from '@biorate/unimock';\nimport { ClickhouseConnector as ChConnector } from '@biorate/clickhouse';\n\n@Mockable()\nclass ClickhouseConnector extends ChConnector {}\n\nclass Root extends Core() {\n  @inject(ClickhouseConnector) public connector: ClickhouseConnector;\n}\n\ncontainer.bind<IConfig>(Types.Config).to(Config).inSingletonScope();\ncontainer.bind(ClickhouseConnector).toSelf().inSingletonScope();\ncontainer.bind(Root).toSelf().inSingletonScope();\n\ncontainer.get<IConfig>(Types.Config).merge({\n  Clickhouse: [{ name: 'connection', options: {} }],\n});\n\n// Record\nSnapshotStore.setMode('record');\nconst root = container.get<Root>(Root);\nawait root.$run();\nconst { data } = await root.connector\n  .get()\n  .query({ query: 'SELECT 1 AS result;', format: 'JSON' });\nconsole.log(data); // [{ result: 1 }]\nflushAllSnapshots();\n\n// Replay (saved snapshot, no ClickHouse needed)\nSnapshotStore.setMode('replay');\nconst { data: data2 } = await root.connector\n  .get()\n  .query({ query: 'SELECT 1 AS result;', format: 'JSON' });\nconsole.log(data2); // [{ result: 1 }] — from snapshot\n```\n\n> 📚 Пример — [`examples/connector.md`](examples/connector.md).\n\n### Supported connectors\n\nUnimock is connector-agnostic and works with any class that returns a connection object from a getter or a `.get()` method. The following connectors have integration tests:\n\n- [ClickHouse](https://github.com/biorate/core/tree/master/packages/%40biorate/clickhouse)\n- [Kafka (rdkafka)](https://github.com/biorate/core/tree/master/packages/%40biorate/rdkafka)\n- [Schema Registry](https://github.com/biorate/core/tree/master/packages/%40biorate/schema-registry)\n- [OpenSearch](https://github.com/biorate/core/tree/master/packages/%40biorate/opensearch)\n- [MongoDB](https://github.com/biorate/core/tree/master/packages/%40biorate/mongodb)\n- [Sequelize](https://github.com/biorate/core/tree/master/packages/%40biorate/sequelize)\n- [PostgreSQL](https://github.com/biorate/core/tree/master/packages/%40biorate/pg)\n- [MSSQL](https://github.com/biorate/core/tree/master/packages/%40biorate/mssql)\n- [Redis / ioredis](https://github.com/biorate/core/tree/master/packages/%40biorate/redis)\n- [Proxy](https://github.com/biorate/core/tree/master/packages/%40biorate/proxy)\n\n## Environment\n\n### Mode selection\n\n| `UNIMOCK`                          | Behaviour                                                                                                                                                                                                 |\n| ---------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| _(unset)_ / `off` / `0` / `false`  | Mocking off — **zero-overhead pass-through**: wrapped calls go straight to the original implementation without any argument hashing or call-key computation; nothing is read from or written to snapshots |\n| `record` / `update` / `1` / `true` | Record mode — call real implementation, persist snapshots on flush                                                                                                                                        |\n| `replay`                           | Replay mode — return recorded responses; miss → `UnimockReplayMissError`                                                                                                                                  |\n\n### Mode helpers\n\nUse `isReplay()` and `isRecord()` in application code to conditionally skip or adapt logic during tests:\n\n```ts\nimport { isReplay, isRecord } from '@biorate/unimock';\n\nif (isReplay()) {\n  // skip infrastructure-dependent setup\n}\n\nif (!isRecord()) {\n  // run cleanup only outside record mode\n}\n```\n\nThese functions always read the current global mode — they work correctly after `SnapshotStore.setMode()`. Also accessible via `Unimock.isReplay` and `Unimock.isRecord` getters.\n\n> 📚 Setup для vitest, режимы, флаги и контракт снапшотов — [`examples/setup.md`](examples/setup.md).\n\n### Mode contract and snapshot lifecycle (Контракт режимов и жизненный цикл снапшотов)\n\nSnapshot files follow a strict mode contract. It is enforced at three levels: the `@Mockable()` wrappers (they never touch the store outside record mode), the store API itself, and the contract tests (`tests/mode-guards.spec.ts`, `tests/record-session.spec.ts`).\n\n1. **Only record mode writes.** `SnapshotStore.record()` and `store.flush()` are no-ops outside record mode (defense in depth: the wrappers already skip them, and the guards also cover direct API calls). `flushAllSnapshots()` is guarded the same way.\n\n2. **A record session starts from a clean slate.** In record mode the store constructor does not load an existing snapshot file, and the first `flush()` of a session rewrites the file in full (truncate + rewrite). Cross-session duplicate `_t:'c'` lines for the same call key are therefore impossible. The transition into record, for example `setMode('replay')` followed by `setMode('record')`, sweeps every cached store: in-memory calls, pools and pending buffers are reset, so the next flush rewrites the file again. Repeating `setMode('record')` while already in record mode does **not** sweep, the current session stays intact.\n\n3. **Replay and off physically cannot change snapshot files.** Neither mode creates, appends to, or truncates anything. A replay run against committed snapshots leaves them byte-for-byte identical.\n\n**Edge case: an unflushed session leaves the file stale.** Snapshot data lives in memory until `flush()` runs (the vitest setup calls `flushAllSnapshots()` for you in an `afterAll` hook). If a record session ends without a single flush, the old file stays on disk untouched and still holds the previous session's content.\n\n**Parallel safety convention.** One snapshot file belongs to exactly one record session at a time. Keep `className` + snapshot directory unique per spec file, or let each spec record into its own `mkdtempSync` directory. Under this convention concurrent record sessions never write the same file. Concurrent replay runs are safe by construction since replay never writes.\n\n### Optimisation flags\n\n| Variable                                                    | Description                                                                                               |\n| ----------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |\n| `UNIMOCK_GZIP=1`                                            | Gzip-compress snapshot files on write (~97 % reduction). Auto-detected on read.                           |\n| `UNIMOCK_STRIP_REQUEST=1`                                   | Strip the `request` field (Axios HTTP internals, ~40 KB per entry).                                       |\n| `UNIMOCK_SKIP_PROXY_ARGS=1` (or `UNIMOCK_SKIP_CONN_ARGS=1`) | Skip serialising `args` for `call:*` entries — they are not used in replay.                               |\n| `UNIMOCK_SNAPSHOT_DIR`                                      | Custom snapshot directory fallback (default: `tests/__snapshots__`). Ignored when `importMeta` is passed. |\n| `SNAPSHOT_EXT`                                              | Snapshot file extension (default: `.snap`). File name: `{ClassName}.unimock{ext}`.                        |\n\n### Always-on optimisations\n\n- **refId caching** — `WeakMap<object, string>` deduplicates `call:ref_X:method:hash` entries when the same connection object is returned by `.get()`.\n- **String pool** — strings >500 B are moved to a shared dictionary (`strings:` key in the JSON file) and transparently expanded back on read.\n\n## Vitest setup\n\n```ts\n// vitest.config.ts\nimport { defineConfig } from 'vitest/config';\n\nexport default defineConfig({\n  test: {\n    setupFiles: ['@biorate/unimock/vitest/setup'],\n  },\n});\n```\n\nThe setup hooks `afterAll` to call `flushAllSnapshots()` automatically when `UNIMOCK=record`.\n\n> 📚 Пример — [`examples/setup.md`](examples/setup.md).\n\n## Scripts\n\n```bash\n# CI — replay committed snapshots, no live infrastructure\nUNIMOCK=replay pnpm --filter @biorate/clickhouse test\n\n# Re-record snapshots (needs live ClickHouse)\nUNIMOCK=record pnpm --filter @biorate/clickhouse test\n\n# With gzip compression and optimisations\nUNIMOCK=record UNIMOCK_GZIP=1 UNIMOCK_STRIP_REQUEST=1 pnpm --filter @biorate/schema-registry test\n```\n\n## Snapshot file format\n\nSnapshot files are stored in `__snapshots__/<ClassName>.unimock.json` — one directory level above the test file when using `importMeta: import.meta`, or under `tests/__snapshots__/` by default.\n\n```json\n{\n  \"version\": 1,\n  \"className\": \"MockedService\",\n  \"calls\": {\n    \"query:a1b2c3d4\": {\n      \"args\": [{ \"t\": \"string\", \"v\": \"SELECT 1\" }],\n      \"result\": { \"t\": \"object\", \"v\": [{ \"k\": \"data\", \"v\": { \"t\": \"array\", ... } }] }\n    }\n  },\n  \"strings\": {\n    \"$0\": \"a very long repeated string...\"\n  }\n}\n```\n\n### Migration note\n\n- **v2 JSONL format (`_jsonl: 2`)** — every `_t:'c'` call entry now carries an explicit `refs` field (`null` when the result held no model instance). The reader identifies the version from the header and falls back to the legacy path for files written as v1 (no `refs` key on some entries). Legacy `.fmt` files (non-JSONL, `{version: 1, ...}`) are still readable but are no longer written.\n- **1.9.0 data shape change** — `findAll`, `bulkCreate`, `bulkBuild`, `findAndCountAll` rows are now clean `toJSON()` data (no `dataValues`, `_previousDataValues`, `uniqno` keys); top-level `Date` static results are now `t: 'date'` instead of an ISO string produced by `Date.toJSON()`.\n\nIf you have committed snapshots generated before these changes, **re-record them** (`UNIMOCK=record`). Replaying old v1 snapshots still works; the reader reconstructs results via the legacy path.\n\n## noop — universal mock stub\n\nA singleton for use as a drop-in dependency for any service — no call will ever throw:\n\n```ts\nimport { noop } from '@biorate/unimock';\n\nnoop.database.query('SELECT 1'); // → noop\nnoop.config.get('key').nested; // → noop\n'query' in noop.database; // true\nawait noop.asyncMethod(); // → noop\nfor (const x of noop.items) {\n} // empty iterator\nJSON.stringify(noop); // {}\ntypeof noop.callback; // 'function'\n```\n\n> 📚 Пример — [`examples/noop.md`](examples/noop.md).\n\n**Note:** `typeof noop` returns `'function'` (the Proxy target is a function). This is a JavaScript limitation — `typeof` is not interceptable by Proxy.\n\n## Known limitations\n\n1. **`@init()` from `@biorate/lifecycled`** still runs in replay mode because the decorator stores the original descriptor in constructor metadata, not on the instance. Workaround: override `initialize` in the test subclass as a no-op, or check `SnapshotStore.mode` inside `initialize()`.\n\n2. **MockHandler returns synchronously in replay mode.** In record mode, `query()` returns a Promise. In replay mode, it returns the deserialised value directly (await on a non-Promise works, but behaviour is not identical).\n\n3. **Private `#` fields** are not wrapped — `wrapPrototype` and `MockHandler` filter keys starting with `#`.\n\n4. **Nested model objects stay plain in replay.** Reconstruction rebuilds only the top-level shape elements of a static result (single / array / pair / wrapper). Nested include/association objects inside a row remain plain deserialized objects.\n\n5. **Unrecorded instance methods throw in replay.** An instance method that was never invoked on an instance during the record phase throws `UnimockReplayMissError` when called in replay.\n\n6. **Replayed instances are rebuilt by the model's own static `build`.** The model class must be importable and initialized at replay time (for Sequelize models: bound to a `Sequelize` instance — use the [`bindReplaySequelizeModels`](examples/static-methods.md) test-setup helper, which does an offline no-I/O bind in replay mode and is a no-op otherwise). Since 1.10.1, constructor-internal calls during the rebuild pass through to the originals — record/replay construction options no longer need to match and a seeded `build()` call is not required.\n\n7. **Replay is fully DB-less when `bindReplaySequelizeModels` is used.** The helper makes the bound `Sequelize` instance hermetic: its connection manager is replaced with an offline stub (`getConnection` returns an inert in-memory connection whose every query resolves to an empty postgres-shaped result). Any code path that executes raw library code on the instance during replay — strays like `Model.sequelize?.query('SELECT setval(...)')`, `authenticate()`, or a direct `transaction()` — terminates offline instead of opening a live connection. The stub is instance-level and idempotent. When `UNIMOCK_FALLBACK_ON_MISS=1` the connection manager is intentionally left live so the replay-miss fallback can run against the real backend.\n\n### Learn\n\n- Documentation can be found here - [docs](https://biorate.github.io/core/modules/unimock.html).\n\n### Release History\n\nSee the [CHANGELOG](https://github.com/biorate/core/blob/master/packages/%40biorate/unimock/CHANGELOG.md)\n\n### License\n\n[MIT](https://github.com/biorate/core/blob/master/packages/%40biorate/unimock/LICENSE)\n\nCopyright (c) 2021-present [Leonid Levkin (llevkin)](mailto:llevkin@yandex.ru)\n","readmeFilename":"README.md"}