{"_id":"@0xsequence/catapult","_rev":"22-ee1d241b586bccbc4e9a6612a377542f","name":"@0xsequence/catapult","dist-tags":{"latest":"1.5.0"},"versions":{"1.1.0":{"name":"@0xsequence/catapult","version":"1.1.0","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.1.0","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"3e63b370228e63f07a9267d23aa27239814f77cd","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.1.0.tgz","fileCount":393,"integrity":"sha512-zkdZSduVz0IBoaDEk8ETWYM1U4DLduLVDcV4ranqgn++Hfh8tXD66LmSzZOO7YfN9cAG2pC297ZdFHAnFh68Pw==","signatures":[{"sig":"MEUCIEI3SBckQ8f4iENafXXwEWQqYXBHrLxFDW0bcm1drZtXAiEAhNfgvylrBm6to58mIDJV1jXwqvw4+3B8DBcCtRSdecc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1827102},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"3014f8e73bff37fa0004cc9770a93dcbc3920965","scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"10.8.1","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"22.3.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.1.0_1754668138601_0.7529939094166413","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@0xsequence/catapult","version":"1.2.0","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.2.0","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"3e5da3d585fd1be8696f1b2dac388821632ccbbb","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.2.0.tgz","fileCount":398,"integrity":"sha512-2eS/K6RrMSZscXCWSCneUWlPtZ9yrkidhX8H0zTsMsEwP+hBc/DrClAU23gZpwYqN7DY6e6BVlK5RWCRtdQjoQ==","signatures":[{"sig":"MEQCIBc82y1t1s+ZA7U2v/0pk4t9GDn2MB5p3xw0dH8kpHVGAiAoGVq0q5z9qn57l5KC5ZgpGK364uaNb96+CLxOSB7u/g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1849846},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"69985ceacd2e3043a553681d0609142e66b40a1a","scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"10.8.1","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"22.3.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.2.0_1754674941623_0.789867537658443","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@0xsequence/catapult","version":"1.2.1","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.2.1","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"eb60cfbfa506aee1e36659aa3b6fa3ca9adfc660","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.2.1.tgz","fileCount":398,"integrity":"sha512-5AuPMLXH/82Dbo1TM7DaEZiiBoCwHMsmkQY9rjSxJKhh6FkPZNaMW120Ihw9MD1oLCH2aKq9cm7+kkcwdLxCmQ==","signatures":[{"sig":"MEUCIQDxR1FR8rHrl92pfUxSoTEtklnrwNqNZ50ubJz2G1+BvwIgD7mbGJ2rANCKc555z4xWahfgFb6Rc0WmLbMjoJ6hIU0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1850484},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"ba794ef4c50fe88c4997055d2d60462bb0ebe66b","scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"10.8.1","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"22.3.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.2.1_1754676088080_0.5704602178197125","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@0xsequence/catapult","version":"1.3.1","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.3.1","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"0c17e1fc012d7c6fe8cd6de80afa53b516fbd051","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.3.1.tgz","fileCount":408,"integrity":"sha512-4uS8LxNjQaeIPd/jyuvLip1kHvxmQwe1fqGgfK0P4DJJ4KBQ5SNHt0bO6oufyeGr9N7DFo4Luk6oIzM0VWle6A==","signatures":[{"sig":"MEYCIQDIOL4lFQmYl0f0Ap4TPu5JmIvCAQ+m0XN8zIl7kn198AIhAMPNCUM3LkYXh1fqyG8O00nKll0d3u4B3ftIDIlSDFeV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1899899},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"cbad874ac37271e04c0c0c1280d7e14c6dbf087b","scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"10.8.1","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"22.3.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.3.1_1754732384459_0.8196702776668756","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"@0xsequence/catapult","version":"1.3.2","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.3.2","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"67d90146e9dfab424668b0a293442991655d2f61","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.3.2.tgz","fileCount":407,"integrity":"sha512-6mtB6zSuaOGWMlmofi2eLcFSeK3s0aA7Jgh07P8dX0wvRuC12BiwztkAB+BVm6KuBsmWwMdtT/eWe+fDtrIaOw==","signatures":[{"sig":"MEYCIQCgFqtu+5CnR/5Wnl6TlGQYMCqyLuDwc9bRnd9o6C6d+QIhAKRjIXFabBVN2irvR8O0toThNXOVAL9AtOFxHBNnI3K4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1900753},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"64e5fd11a51c4a99e4510cf47fc95f7524dfb511","scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"10.8.1","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"22.3.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.3.2_1757020669441_0.6873054966026311","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"@0xsequence/catapult","version":"1.3.3","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.3.3","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"61392e635fdc0d145768302fe3e38d618533ba74","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.3.3.tgz","fileCount":410,"integrity":"sha512-trcFIQGrQf53fU6XJv80SLft7FQnjsTWjZiOF+FuF3NHvM/EWBdv5Px4YD5iOnQEcLMxIeG3BaoVtfiR/Boauw==","signatures":[{"sig":"MEUCIQCrorIHKSs/wteZMpWnned3hfZPY6HtwEoxcNWfB9La6QIgEMlWapi7zD2pJJmKwLGMwvDCbgeXwmEXRRVNvxFxVko=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1923665},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"69c4b7f06a7e80f3946e9e03c5d227f37fa5075a","scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"10.8.1","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"22.3.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.3.3_1757021836031_0.30221424885605597","host":"s3://npm-registry-packages-npm-production"}},"1.3.4":{"name":"@0xsequence/catapult","version":"1.3.4","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.3.4","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"1c7ed8d4dbd3c5a5340d1349abc1985f22bbd314","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.3.4.tgz","fileCount":415,"integrity":"sha512-y0z4q3jeaBO8JA9QbmRgFTPTD3MBwJjE2vFLhh7ESn2afM5EsGwDahJOxEKipkHxX7TLsFdx2UYmK7kuc5TaZQ==","signatures":[{"sig":"MEUCIQCfHFG6GkxLD9LBrfP+1gntmCpqcUaXTSLj6NTgao8dhwIgN3j3D7aFor6A4o0zoUt+Noui0CUEIqFOM5zT0ABEoFs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2002229},"main":"dist/index.js","_from":"file:0xsequence-catapult-1.3.4.tgz","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"_resolved":"/tmp/4c95a3fe5430c753063502e32be741f5/0xsequence-catapult-1.3.4.tgz","_integrity":"sha512-y0z4q3jeaBO8JA9QbmRgFTPTD3MBwJjE2vFLhh7ESn2afM5EsGwDahJOxEKipkHxX7TLsFdx2UYmK7kuc5TaZQ==","repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"10.8.1","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"22.3.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.3.4_1757432510406_0.05369895132882396","host":"s3://npm-registry-packages-npm-production"}},"1.3.5":{"name":"@0xsequence/catapult","version":"1.3.5","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.3.5","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"38010993411c8b6ef0832ca79b715e37ddfafcab","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.3.5.tgz","fileCount":415,"integrity":"sha512-N44BsUIlq+DJsEKBoqn4E5nE78oj72EDB3zbkdsuDeCRZjr0xjixlPGSX6KAsydhttbqc8itfdU4SKW76JZsjw==","signatures":[{"sig":"MEQCIDBITPlgI3KvXHK2rWYhhdgAebg90r5yyZu9IpzBBq7HAiAr0gJHtzQxPjVO8veHKJtlkdrnWmzcRlqh8540cTygGg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2013417},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"b3f34a97916bdd0cbf2ad3f2db688d254ebdf203","scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"10.8.1","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"22.3.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.3.5_1757589359156_0.07035414533159745","host":"s3://npm-registry-packages-npm-production"}},"1.3.6":{"name":"@0xsequence/catapult","version":"1.3.6","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.3.6","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"caccf96dc4d5891e2ea54571859b05cf80f13ec8","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.3.6.tgz","fileCount":420,"integrity":"sha512-+ARC0Y3JArKjzs95yAkLq1UPq73kUoldq/q/95UlZhm9aDiYheJSwlUpdPRNd/Ft7zjD+oLLxEs0btLx99boIA==","signatures":[{"sig":"MEUCIQDJpkxzcDhIpsmCw0c569pBFmv89S/FVRodBe451mUcXgIge/k971VK88otYn+BE8jJX1pg+FvjmW/tPlSmxpHgCdM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2081083},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"f354e2beef9251b4645fca7f6e3e71879de0a44d","scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"10.8.1","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"22.3.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.3.6_1757622515490_0.646115682477614","host":"s3://npm-registry-packages-npm-production"}},"1.3.7":{"name":"@0xsequence/catapult","version":"1.3.7","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.3.7","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"a7ad6da7c4e313356cbf157b228c4ef68657ad06","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.3.7.tgz","fileCount":420,"integrity":"sha512-aTTT0zmxDRyzaD2Z5fwnUCrEQc5v8DIrfawsYL9Jr6DDETzX3AkvzISeMts5CFsq/gv7Ww/8nmni/Ti2pfWdMA==","signatures":[{"sig":"MEUCIGi+dXgOlHR/QloUjyucoKAuoueR1CAYzqQIU63D4LkiAiEAi0tFTaTRTZ7Mu6sc+TDsrfAGUfc/0yQLONC1fA4I11o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2121985},"main":"dist/index.js","_from":"file:0xsequence-catapult-1.3.7.tgz","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"_resolved":"/tmp/5cc102f4dc0d0cc5cb92a029b9f109cb/0xsequence-catapult-1.3.7.tgz","_integrity":"sha512-aTTT0zmxDRyzaD2Z5fwnUCrEQc5v8DIrfawsYL9Jr6DDETzX3AkvzISeMts5CFsq/gv7Ww/8nmni/Ti2pfWdMA==","repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"10.8.1","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"22.3.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.3.7_1759148044232_0.1502164765101024","host":"s3://npm-registry-packages-npm-production"}},"1.3.8":{"name":"@0xsequence/catapult","version":"1.3.8","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.3.8","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"4f6d8e388b0a85a71591e5e7fd8483d95ad946fa","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.3.8.tgz","fileCount":416,"integrity":"sha512-aDtIO2Z6qMMQGr3PT/BAEGCp+3nzCjAnj0NHa+2RokgWU/1QDPlbEBL6illKLX/+xu/E/joJOUGOUFbaOaxmUA==","signatures":[{"sig":"MEYCIQDLu0N8p+W1tWyZ1C6cBsUb2MXApxFkftm0wcueTMkovQIhANGcmWgKgw3mUqw6bLzvmVU9aFwGcBhRN+sNUcI1a+uq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2162877},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"fc9925f2b15035c1b6b1e1bea3586b4180ce5f8b","scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"milkytaste","email":"screaminghawk@gmail.com"},"repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"10.5.0","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"20.12.2","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.3.8_1759259079848_0.8461659626020976","host":"s3://npm-registry-packages-npm-production"}},"1.3.9":{"name":"@0xsequence/catapult","version":"1.3.9","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.3.9","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"52955351f96a50c578fd14cc06dc411ee1449da6","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.3.9.tgz","fileCount":422,"integrity":"sha512-s98L00v0+TgGkLU/4VpsRy/HEot6zGvZjBsxAqEt4hUmgk6+oykyIgn8UgQ9wARGYknXs6lautMwShdiWx2FfQ==","signatures":[{"sig":"MEUCIBE5OxfSfbi6sHSw6NzGLf5GBAS/d3LcD+fKpx75bKaNAiEA4RPo2SI3q5rN1v0oyHE1Dz0SefRRJgKcSl2Ym6SlRIs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2172210},"main":"dist/index.js","_from":"file:0xsequence-catapult-1.3.9.tgz","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"_resolved":"/tmp/e4841917d1da9323732ba9b4f6e34d87/0xsequence-catapult-1.3.9.tgz","_integrity":"sha512-s98L00v0+TgGkLU/4VpsRy/HEot6zGvZjBsxAqEt4hUmgk6+oykyIgn8UgQ9wARGYknXs6lautMwShdiWx2FfQ==","repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"10.8.1","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"22.3.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.3.9_1763032943123_0.44787093886047424","host":"s3://npm-registry-packages-npm-production"}},"1.3.10":{"name":"@0xsequence/catapult","version":"1.3.10","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.3.10","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"f48d33b324be25d742fe5dc6d95c6719b18b3df7","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.3.10.tgz","fileCount":422,"integrity":"sha512-ZxycYWEJdRblmWWruJn6FS+lPTXRxVhlg5QcCnnULZ8/bEznjoD7yPZuywzfH25dBguY8241zlTSFR2Ay6J8mA==","signatures":[{"sig":"MEUCIDUmGA6ahXhAgZEoU6Gbkwf9SO/H7zHRW0Hyt+pwTIWUAiEAp6n2kGYoxGuJMvvLbKAWEABifnXxWou/hMGh5o9vipQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2192017},"main":"dist/index.js","_from":"file:0xsequence-catapult-1.3.10.tgz","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"_resolved":"/tmp/e93b35659fb732aacf465cc7d62320d4/0xsequence-catapult-1.3.10.tgz","_integrity":"sha512-ZxycYWEJdRblmWWruJn6FS+lPTXRxVhlg5QcCnnULZ8/bEznjoD7yPZuywzfH25dBguY8241zlTSFR2Ay6J8mA==","repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"10.8.1","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"22.3.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.3.10_1763044873112_0.493887099014235","host":"s3://npm-registry-packages-npm-production"}},"1.3.11":{"name":"@0xsequence/catapult","version":"1.3.11","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.3.11","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"5cb1de6e2559d9c7b5a7ecc18f11a8ad8b0a8d7b","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.3.11.tgz","fileCount":427,"integrity":"sha512-wxwK+wDSicE+PIDbFDZaqO3h2NkPDQpt5OG1t6tzf/ZT6urKoptwYImOA4haVHzCLR8F18gZ7oFkGRsBl6lsGw==","signatures":[{"sig":"MEUCIEDmzEWMiBp4RKwS47+4LmKNAZjYnbpYHbrZNWdYoyyyAiEAuRelQoMYZBx88hWu4QbzV7uVsjdL76XAzLW4ef4vgCU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2222460},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"237a20ba7c163772da00244a7bb4078333c938ff","scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"10.8.1","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"22.3.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.3.11_1764072289129_0.03433048826908691","host":"s3://npm-registry-packages-npm-production"}},"1.3.12":{"name":"@0xsequence/catapult","version":"1.3.12","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.3.12","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"96fbd86d8ca9ff12334cdf0020bcaba354bd5d76","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.3.12.tgz","fileCount":418,"integrity":"sha512-4fltFslNPFvlEe17GpPF/Jlmnf3rgpMaRoxY1skR7BImZ0lwWlYL9Vq4UXipq57FJsnFZN8anwXHryGK7KaEpA==","signatures":[{"sig":"MEYCIQCxNDrLTvm1GXI+4tW+al+NEfO0Wmd1w+hSmN557rJZwAIhALxkI4TF4cvjEuw2Y+opXXcZDipWlfmyOf+2rx8sJFRB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2193095},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"f496fa7fe92a946778252dd0fb4b1d98f6375dee","scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"11.6.2","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"24.13.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.3.12_1774880976256_0.3800321847373662","host":"s3://npm-registry-packages-npm-production"}},"1.3.13":{"name":"@0xsequence/catapult","version":"1.3.13","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.3.13","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"41a10333d580fc70f7fde6fd6b71fb0bda721b31","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.3.13.tgz","fileCount":418,"integrity":"sha512-ryRs3JojHbSwZGuPWN+E/tYKr9OreqR5UVz+GBGfrpjQLH3g0UmAjAPo/5dDRUV6ruRO9028QImIbWyWR1BDZw==","signatures":[{"sig":"MEQCIDEpmGnEpcXZNm93KZPsc+3TSJGixWQgYSWcjdgCua+qAiBlXg8lnv1b86TvTHTGIF1twGs8u3X3TcGocRQcH4GUyA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2199811},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"ec105124a11cdffbb67204c6e60c006f27a06842","scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"11.6.2","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"24.13.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.3.13_1774894070749_0.8190103144454481","host":"s3://npm-registry-packages-npm-production"}},"1.3.14":{"name":"@0xsequence/catapult","version":"1.3.14","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.3.14","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"bccb677c7c03a79576049596366ddd1329054dec","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.3.14.tgz","fileCount":418,"integrity":"sha512-orNmNqv5JMtmfCFp0A//RzM0tJtKMfkEZOZ0Nog6tqVj76CtSvodlf197gGiY6/ZUQK3pR3Mv+pyh1AGX/z2IQ==","signatures":[{"sig":"MEQCICHBLzrKINinmJQiySP3/AMM59N/a8CExc3q/8AABnhaAiAN210JtZU9QtCDR/FA3YXDA4V68MeL6SgykGd5DfNQPw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2205470},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"a065891a614bebdcf7d8f8a0474f67ee1812362c","scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"11.6.2","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"24.13.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.3.14_1774939236578_0.9214318515099917","host":"s3://npm-registry-packages-npm-production"}},"1.3.15":{"name":"@0xsequence/catapult","version":"1.3.15","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.3.15","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"f163f5396b4a0d8a242c076c72314680c2bdf4bf","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.3.15.tgz","fileCount":423,"integrity":"sha512-7uqsToPa3e2EKiXbIKpNVM0S5awSFGBbc9Matw0MIkaOAW7vsoYPOc8AX6SzFt7IjA0wpg+y9dHGjOC4wU72cg==","signatures":[{"sig":"MEUCIQCPHIcnFdyGPVnHiTYY4UbES6MSLplObsXSOQD1kb5F3gIgOtf/M4EaBDxIP+SrCp/EhyLJHz0HIPmububc5qNMhYw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2213249},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"0f24819831476b6cb9b648cc35cd7f0a451de60a","scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"11.6.2","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"24.13.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.3.15_1774951249048_0.28077575676653654","host":"s3://npm-registry-packages-npm-production"}},"1.3.16":{"name":"@0xsequence/catapult","version":"1.3.16","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.3.16","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"9e9c803bc50b843dd2698fd362daf4303e7ed456","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.3.16.tgz","fileCount":423,"integrity":"sha512-ZXTyuNNnEaYf0jzkwkqKUN/tAOKVUhNFVaIkvJIxmh62DbsMsUdDmdwDHr12edhcZ+nfBVxeJLGYdg/cel59LA==","signatures":[{"sig":"MEYCIQCeEgFB9XtwtqaGlzA0kW+5rPOZFfPZjxCjdVUqzbB94AIhAKuXwlLaYFjJfLFoF4BfaRaubrzI/tHEZTB0ClVZ6MGL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2225577},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"3b5bc183beb014c9df5c2738c4ff323b66fd9c33","scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"milkytaste","email":"screaminghawk@gmail.com"},"repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"11.6.2","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"24.13.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.3.16_1779053505818_0.5687108424237286","host":"s3://npm-registry-packages-npm-production"}},"1.3.17":{"name":"@0xsequence/catapult","version":"1.3.17","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.3.17","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"81dd28714f41ecd4689859adac772708788e7c52","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.3.17.tgz","fileCount":423,"integrity":"sha512-rj5O94NhngrzgXwn/zYVPFMNXdjD7KZL5t2giHyW7XDuP4OA15S9eWoECVM51eLMYgs+LVqP/sM2RJMSXzZM1A==","signatures":[{"sig":"MEUCIQDtuaqGflH0PvahqsV+OPEySIWgY/aJPwA3B7ujE1GqrQIgYt9lmuyx1K5sxRmo5kktZXLZ8EaSCpGdI79WEnVO8Pc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2232656},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"a759872376b9beacf83dfba7b9cb5be7f563c627","scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"milkytaste","email":"screaminghawk@gmail.com"},"repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"11.6.2","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"24.13.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.3.17_1779055773128_0.5970514656220265","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@0xsequence/catapult","version":"1.4.0","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"url":"Agusx1211","name":"Sequence"},"license":"MIT","_id":"@0xsequence/catapult@1.4.0","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"homepage":"https://github.com/0xsequence/catapult#readme","bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"bin":{"catapult":"dist/index.js"},"dist":{"shasum":"ffbeb8a2d3940d14c71b479a0f7a8c984c919d2c","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.4.0.tgz","fileCount":458,"integrity":"sha512-jnwCOKGuKwTFOhktcqxG3OUEPtSoEiHmwv/fvo5EqCQKUx9+nC9lTsPiPRnpGDPmHBUt0MT+txanmXYAyjTOgw==","signatures":[{"sig":"MEUCIQC7ur3e3acDgFMoaIfAaPKpV2u3os6LiAkatjSJ+ize3AIgAg2nzaXGr6xOFJk6TIi0HI+jXc6gDt7BVE+1AMQ9+fA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2584486},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"539dd32c16d371e39aecbbcd6b77c92707979445","scripts":{"dev":"ts-node src/index.ts","lint":"eslint src/**/*.ts","test":"jest --runInBand --detectOpenHandles","build":"tsc && cp -r src/lib/std dist/lib/","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","lint:fix":"eslint src/**/*.ts --fix","start:dev":"npm run build && npm run start"},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"repository":{"url":"git+https://github.com/0xsequence/catapult.git","type":"git"},"_npmVersion":"11.6.2","description":"Ethereum contract deployment CLI tool","directories":{},"_nodeVersion":"24.13.0","dependencies":{"ox":"^0.8.5","solc":"^0.8.30","yaml":"^2.8.0","chalk":"^4.1.2","dotenv":"^16.3.0","ethers":"^6.15.0","commander":"^11.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^5.2.1","jest":"^29.7.0","eslint":"^9.0.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0","@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/catapult_1.4.0_1782761600600_0.0059971998526235915","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@0xsequence/catapult","version":"1.5.0","description":"Ethereum contract deployment CLI tool","main":"dist/index.js","bin":{"catapult":"dist/index.js"},"scripts":{"build":"tsc && cp -r src/lib/std dist/lib/","dev":"ts-node src/index.ts","start":"node dist/index.js","start:dev":"npm run build && npm run start","watch":"tsc --watch","clean":"rm -rf dist","prepare":"npm run build","test":"jest --runInBand --detectOpenHandles","lint":"eslint src/**/*.ts","lint:fix":"eslint src/**/*.ts --fix"},"keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"author":{"name":"Sequence","url":"Agusx1211"},"repository":{"type":"git","url":"git+https://github.com/0xsequence/catapult.git"},"bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"homepage":"https://github.com/0xsequence/catapult#readme","license":"MIT","publishConfig":{"access":"public"},"devDependencies":{"@types/chai":"^5.2.2","@types/jest":"^29.5.14","@types/mocha":"^10.0.10","@types/node":"^20.10.0","@typescript-eslint/eslint-plugin":"^8.0.0","@typescript-eslint/parser":"^8.0.0","chai":"^5.2.1","eslint":"^9.0.0","jest":"^29.7.0","ts-jest":"^29.1.0","ts-node":"^10.9.0","typescript":"^5.3.0"},"dependencies":{"chalk":"^4.1.2","commander":"^11.1.0","dotenv":"^16.3.0","ethers":"^6.15.0","solc":"^0.8.30","ox":"^0.8.5","yaml":"^2.8.0"},"engines":{"node":">=16.0.0"},"gitHead":"9b1ad42b2b33da793ac1335c622e9662c563ab1e","types":"./dist/index.d.ts","_id":"@0xsequence/catapult@1.5.0","_nodeVersion":"24.13.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-qdraPFKcPkJ8LEgeN0Mp4SUNmcT+fgKh/t8LE1NZzbtXQ2u6Eq8gDfWaUFcEmmo8Qc5kZuAdWfnTdAYTyD0Fbw==","shasum":"2d59ede131ab28635b91b49168b8a5d9135d2e8c","tarball":"https://registry.npmjs.org/@0xsequence/catapult/-/catapult-1.5.0.tgz","fileCount":344,"unpackedSize":1712670,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDZBTaakXovcsSRo26wM4Nd0/WIzW0ZLJHdLlGrWoBV7wIga8ltUM8lFlzpDweb7RMzfrWAMz+n5ylrvVs2fOcfi2Q="}]},"_npmUser":{"name":"agusx1211","email":"agusxrun@gmail.com"},"directories":{},"maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/catapult_1.5.0_1782824197764_0.6403922193602487"},"_hasShrinkwrap":false}},"time":{"created":"2025-08-08T15:48:58.488Z","modified":"2026-06-30T12:56:38.170Z","1.1.0":"2025-08-08T15:48:58.873Z","1.2.0":"2025-08-08T17:42:21.899Z","1.2.1":"2025-08-08T18:01:28.438Z","1.3.1":"2025-08-09T09:39:44.685Z","1.3.2":"2025-09-04T21:17:49.732Z","1.3.3":"2025-09-04T21:37:16.282Z","1.3.4":"2025-09-09T15:41:50.643Z","1.3.5":"2025-09-11T11:15:59.390Z","1.3.6":"2025-09-11T20:28:35.781Z","1.3.7":"2025-09-29T12:14:04.449Z","1.3.8":"2025-09-30T19:04:40.087Z","1.3.9":"2025-11-13T11:22:23.364Z","1.3.10":"2025-11-13T14:41:13.381Z","1.3.11":"2025-11-25T12:04:49.446Z","1.3.12":"2026-03-30T14:29:36.441Z","1.3.13":"2026-03-30T18:07:50.966Z","1.3.14":"2026-03-31T06:40:36.788Z","1.3.15":"2026-03-31T10:00:49.324Z","1.3.16":"2026-05-17T21:31:45.997Z","1.3.17":"2026-05-17T22:09:33.287Z","1.4.0":"2026-06-29T19:33:20.742Z","1.5.0":"2026-06-30T12:56:37.934Z"},"bugs":{"url":"https://github.com/0xsequence/catapult/issues"},"author":{"name":"Sequence","url":"Agusx1211"},"license":"MIT","homepage":"https://github.com/0xsequence/catapult#readme","keywords":["ethereum","deployment","cli","smart-contracts","blockchain","typescript"],"repository":{"type":"git","url":"git+https://github.com/0xsequence/catapult.git"},"description":"Ethereum contract deployment CLI tool","maintainers":[{"name":"naivesheep","email":"wh@horizongames.net"},{"name":"pkieltyka","email":"pk@horizon.io"},{"name":"agusx1211","email":"agusxrun@gmail.com"},{"name":"taylanpince","email":"taylan@hipolabs.com"},{"name":"milkytaste","email":"screaminghawk@gmail.com"}],"readme":"# Catapult\n\n[![CI](https://github.com/0xsequence/catapult/actions/workflows/ci.yml/badge.svg)](https://github.com/0xsequence/catapult/actions/workflows/ci.yml)\n\n**Catapult** is a powerful Ethereum contract deployment and management framework designed to simplify the orchestration of complex contract deployments across multiple blockchain networks. Built with TypeScript and Node.js, it provides a declarative YAML-based approach to defining deployment jobs, templates, and dependencies.\n\n## Overview\n\nCatapult addresses the challenge of managing complex contract deployment scenarios where multiple contracts need to be deployed in a specific order, with dependencies between them, across multiple blockchain networks. Instead of writing custom deployment scripts for each scenario, you define your deployment logic declaratively using YAML files.\n\n### Key Features\n\n- **🔄 Declarative Deployment Jobs**: Define complex deployment workflows using YAML configuration files\n- **📋 Template System**: Create reusable deployment templates that can be shared across projects\n- **🔗 Dependency Management**: Automatic resolution of deployment dependencies and execution ordering\n- **🌐 Multi-Network Support**: Deploy to multiple blockchain networks simultaneously\n- **⚡ Built-in Actions**: Comprehensive set of built-in actions for common deployment tasks\n- **🧮 Value Resolvers**: Powerful system for computing values, encoding data, and performing calculations\n- **✅ Skip Conditions**: Smart conditional logic to avoid redundant deployments\n- **🔍 Validation & Dry Run**: Validate configurations and preview deployment plans without execution\n- **📊 Event System**: Rich event system for monitoring deployment progress and debugging\n- **🧾 Multi-platform Verification**: Verify on Etherscan v2 and Sourcify (tries all configured platforms by default)\n\n## Installation\n\n### From npm (recommended)\n\nAvailable on npm as `@0xsequence/catapult`.\n\nGlobal install (provides the `catapult` CLI on your PATH):\n\n```bash\nnpm install -g @0xsequence/catapult\n# or\nyarn global add @0xsequence/catapult\n# or\npnpm add -g @0xsequence/catapult\n```\n\nProject-local install (use via npx or package.json scripts):\n\n```bash\nnpm install -D @0xsequence/catapult\n# or\nyarn add -D @0xsequence/catapult\n# or\npnpm add -D @0xsequence/catapult\n\n# then run\nnpx catapult --help\n```\n\n### From Source\n\n```bash\ngit clone <repository-url>\ncd catapult\nnpm install\nnpm run build\nnpm link\n```\n\n### Global Installation (from npm)\n\n```bash\nnpm install -g @0xsequence/catapult\n```\n\n## Project Structure\n\nA Catapult project follows this structure:\n\n```\nmy-deployment-project/\n├── networks.yaml              # Network configurations\n├── jobs/                      # Deployment job definitions\n│   ├── core-contracts.yaml\n│   ├── factory-setup.yaml\n│   └── token-deployment.yaml\n├── templates/                 # Custom template definitions\n│   ├── erc20-factory.yaml\n│   └── proxy-deployment.yaml\n├── artifacts/                 # Contract build artifacts\n│   ├── MyContract.json\n│   └── Factory.json\n└── output/                    # Generated deployment results\n```\n\n## Configuration\n\n### Networks Configuration\n\nCreate a `networks.yaml` file in your project root to define target networks:\n\n```yaml\n- name: \"Ethereum Mainnet\"\n  chainId: 1\n  rpcUrl: \"https://mainnet.infura.io/v3/YOUR_PROJECT_ID\"\n\n- name: \"Arbitrum One\"\n  chainId: 42161\n  rpcUrl: \"https://arb1.arbitrum.io/rpc\"\n\n- name: \"Polygon\"\n  chainId: 137\n  rpcUrl: \"https://polygon-rpc.com\"\n  supports: [\"etherscan_v2\"]  # Optional: verification platforms supported\n  gasLimit: 500000            # Optional: gas limit for all transactions on this network\n  testnet: true               # Optional: mark as test network\n  evmVersion: \"cancun\"        # Optional: network EVM hardfork (e.g., london, paris, shanghai, cancun)\n```\n\nThe `supports` field is optional and specifies which verification platforms are available for the network. Currently supported platforms:\n\n- `etherscan_v2`: Etherscan v2 verification API (supports Ethereum, Polygon, Arbitrum, BSC, etc.)\n- `sourcify`: Sourcify verification (no API key required)\n\nIf `supports` is omitted, all built-in platforms are allowed for that network. Etherscan requires an API key to be considered “configured”; Sourcify requires no configuration. The `gasLimit` field is optional and specifies a fixed gas limit to use for all transactions on this network. If not specified, the system will use ethers.js default gas estimation.\n\n### Constants\n\nYou can define reusable values in constants files or directly within a job.\n\n- Top-level constants are discovered anywhere under your project root by adding YAML files with `type: \"constants\"`.\n- Keys must be unique across all constants files; duplicates will fail the load.\n- Within jobs/templates, reference constants using bare placeholders like `{{MY_CONSTANT}}`.\n- Job-level constants override top-level constants when names collide.\n\nExample top-level constants file (can be placed anywhere, e.g., `constants.yaml`):\n\n```yaml\ntype: \"constants\"\n\nconstants:\n  address-zero: \"0x0000000000000000000000000000000000000000\"\n  salt-zero: \"0x0000000000000000000000000000000000000000000000000000000000000000\"\n  developer-multisig-01: \"0x007a47e6BF40C1e0ed5c01aE42fDC75879140bc4\"\n  entrypoint-4337-07: \"0x0000000071727de22e5e9d8baf0edac6f37da032\"\n```\n\nJob-level constants example (defined at the top of a job):\n\n```yaml\nname: \"job-with-constants\"\nversion: \"1\"\nconstants:\n  FEE: \"1000\"\n  ADMIN: \"0x0000000000000000000000000000000000000001\"\nactions:\n  - name: \"example\"\n    template: \"some-template\"\n    arguments:\n      admin: \"{{ADMIN}}\"      # resolves to job-level constant\n      defaultSalt: \"{{salt-zero}}\"  # resolves to top-level constant\n```\n\nTip: Use `catapult list constants` to see discovered top-level constants and any job-level constants.\n\n#### RPC URL tokens via environment variables\n\nYou can inject secrets (like access tokens) into `rpcUrl` using placeholders of the form `{{RPC_...}}`. At load time, any placeholder whose name starts with `RPC` will be replaced with the value of the corresponding environment variable. Placeholders not starting with `RPC` are left as-is.\n\nExample `networks.yaml`:\n\n```yaml\n- name: \"MyNet\"\n  chainId: 999\n  rpcUrl: \"https://node.url/something/{{RPC_URL_TOKEN}}\"\n```\n\nWith an environment variable:\n\n```bash\nexport RPC_URL_TOKEN=\"my-secret-token\"\n```\n\nResulting `rpcUrl` at runtime:\n\n```\nhttps://node.url/something/my-secret-token\n```\n\nNotes:\n- If an `{{RPC_*}}` placeholder is present and the corresponding environment variable is not set, it now defaults to an empty string. This allows templates like `https://node.url/{{RPC_TOKEN}}` to collapse gracefully to `https://node.url/` without failing the load.\n- Multiple RPC tokens in one URL are supported, and whitespace inside the token delimiters is ignored (e.g., `{{  RPC_TOKEN  }}`).\n\n### Job Definitions\n\nJobs are the core deployment units. Create YAML files in the `jobs/` directory:\n\n```yaml\n# jobs/core-contracts.yaml\nname: \"core-contracts\"\nversion: \"1.0.0\"\ndescription: \"Deploy core system contracts\"\n\nactions:\n  - name: \"deploy-factory\"\n    template: \"sequence-universal-deployer-2\"\n    arguments:\n      creationCode: \"{{Contract(MyFactory).creationCode}}\"\n      salt: \"0\"\n\n  - name: \"deploy-implementation\"\n    template: \"sequence-universal-deployer-2\"\n    depends_on: [\"deploy-factory\"]\n    arguments:\n      creationCode:\n        type: \"constructor-encode\"\n        arguments:\n          creationCode: \"{{Contract(MyImplementation).creationCode}}\"\n          types: [\"address\"]\n          values: [\"{{deploy-factory.address}}\"]\n      salt: \"0\"\n```\n\n#### Per-job network filters\n\nJobs run on all selected networks by default. You can restrict or exclude networks for a specific job by chain ID:\n\n```yaml\nname: \"token-deployment\"\nversion: \"1.0.0\"\n\n# Run only on these networks (takes precedence if present)\nonly_networks: [1, 42161]\n\n# Or, skip these networks (used only if only_networks is not set)\n# skip_networks: [137]\n\nactions:\n  - name: \"deploy\"\n    template: \"erc-2470\"\n    arguments: { /* ... */ }\n```\n\nRules:\n- If `only_networks` is set and non-empty, the job runs only on those chain IDs.\n- Else, if `skip_networks` is set and non-empty, the job is skipped on those chain IDs.\n- Otherwise, the job runs on all networks selected for the run (via `networks.yaml` or `--network`).\n\n#### Minimum EVM version per job\n\nJobs can declare a minimum EVM hardfork they require. When a network’s `evmVersion` is older than the job’s `min_evm_version`, the job is skipped on that network.\n\n```yaml\nname: \"post-shanghai-feature\"\nversion: \"1.0.0\"\nmin_evm_version: \"shanghai\"\n\nactions:\n  - name: \"deploy\"\n    template: \"erc-2470\"\n    arguments: { /* ... */ }\n```\n\nSupported identifiers include: `frontier`, `homestead`, `tangerine`, `spuriousdragon`, `byzantium`, `constantinople`, `petersburg`, `istanbul`, `berlin`, `london`, `paris` (The Merge), `shanghai`, `cancun`, `prague`.\n\n#### Deprecating jobs\n\nMark a job as deprecated to opt it out of normal runs without deleting it:\n\n```yaml\nname: \"legacy-seed\"\nversion: \"1.2.3\"\ndeprecated: true\nactions:\n  - name: \"noop\"\n    type: \"static\"\n    arguments: { value: null }\n```\n\nBehavior:\n- Deprecated jobs are skipped by default when running without specifying job names.\n- Explicitly targeting a deprecated job on the CLI will run it even without extra flags: `catapult run legacy-seed -k $PRIVATE_KEY`.\n- To include all deprecated jobs in a normal run, pass `--run-deprecated`: `catapult run --run-deprecated -k $PRIVATE_KEY`.\n- If a non-deprecated job depends on a deprecated job, that deprecated dependency is ALWAYS included automatically to satisfy dependencies (even without `--run-deprecated`).\n\n### Template Definitions\n\nTemplates are reusable deployment patterns. Create them in the `templates/` directory:\n\n```yaml\n# templates/proxy-factory.yaml\nname: \"proxy-factory\"\ntype: \"template\"\n\narguments:\n  implementation:\n    type: \"address\"\n  salt:\n    type: \"bytes32\"\n\nreturns:\n  address:\n    type: \"address\"\n\nsetup:\n  - type: \"job-completed\"\n    arguments:\n      job: \"core-contracts\"\n\nactions:\n  - type: \"send-transaction\"\n    arguments:\n      to: \"{{core-contracts.deploy-factory.address}}\"\n      data:\n        type: \"abi-encode\"\n        arguments:\n          signature: \"createProxy(address,bytes32)\"\n          values:\n            - \"{{implementation}}\"\n            - \"{{salt}}\"\n\nskip_condition:\n  - type: \"contract-exists\"\n    arguments:\n      address:\n        type: \"compute-create2\"\n        arguments:\n          deployerAddress: \"{{core-contracts.deploy-factory.address}}\"\n          salt: \"{{salt}}\"\n          initCode:\n            type: \"constructor-encode\"\n            arguments:\n              creationCode: \"{{Contract(ProxyBytecode).creationCode}}\"\n              types: [\"address\"]\n              values: [\"{{implementation}}\"]\n\noutputs:\n  address:\n    type: \"compute-create2\"\n    arguments:\n      deployerAddress: \"{{core-contracts.deploy-factory.address}}\"\n      salt: \"{{salt}}\"\n      initCode:\n        type: \"constructor-encode\"\n        arguments:\n          creationCode: \"{{Contract(ProxyBytecode).creationCode}}\"\n          types: [\"address\"]\n          values: [\"{{implementation}}\"]\n```\n\nNotes about template files:\n- The `type: \"template\"` discriminator is optional but recommended for clarity. If provided, it must be exactly `template`.\n- Templates are auto-discovered from your project `templates/` folder and any `templates/` subfolders under `jobs/`.\n\n## Usage\n\n### Running Deployments\n\nDeploy all jobs to all configured networks:\n\n```bash\ncatapult run --private-key YOUR_PRIVATE_KEY\n```\n\nDeploy specific jobs:\n\n```bash\ncatapult run core-contracts token-setup --private-key YOUR_PRIVATE_KEY\n```\n\nDeploy multiple jobs using wildcards (matches job names, including nested names like `sequence_v3/beta_4`):\n\n```bash\n# Run all jobs whose name starts with \"sequence_\"\ncatapult run sequence_* -k $PRIVATE_KEY\n\n# Run all jobs under a namespace/folder-like prefix\ncatapult run \"sequence_v3/*\" -k $PRIVATE_KEY\n\n# Combine patterns and exact names; duplicates are de-duplicated\ncatapult run job1 job? -k $PRIVATE_KEY\n```\n\nDeploy to specific networks:\n\n```bash\n# Comma-separated, supports chain IDs and network names (name matches include all networks with that name)\ncatapult run --network 1,42161 --private-key YOUR_PRIVATE_KEY\ncatapult run --network mainnet --private-key YOUR_PRIVATE_KEY       # all networks named \"Mainnet\"\ncatapult run --network mainnet,polygon -k $PRIVATE_KEY core-contracts\n```\n\nCommon options (run):\n\n- `-p, --project <path>`: Project root directory (defaults to current directory)\n- `--dotenv <path>`: Load environment variables from a custom .env file (run command only)\n- `-n, --network <selectors>`: Comma-separated selectors by chain ID or network name\n- `--rpc-url <url>`: Run against a single custom RPC; chain ID is auto-detected. If `networks.yaml` defines that chain, Catapult merges yaml settings (name, `supports`, `gasLimit`, `testnet`, `evmVersion`, `params`) while using your RPC URL.\n- `-k, --private-key <key>`: EOA private key (or set `PRIVATE_KEY`)\n- `--etherscan-api-key <key>`: Etherscan API key (or set `ETHERSCAN_API_KEY`)\n- `--fail-early`: Stop as soon as any job fails\n- `--ignore-verify-errors`: Convert verification errors to warnings and show complete report at end (instead of exiting with error code)\n- `--no-post-check-conditions`: Skip post-execution evaluation of skip conditions\n- `--flat-output`: Write outputs in a single flat `output/` directory (do not mirror `jobs/` structure)\n- `--no-summary`: Hide the end-of-run summary\n- `--run-deprecated`: Allow running jobs marked `deprecated: true` (otherwise skipped unless explicitly targeted)\n- `--no-std`: Do not load built-in standard templates\n- `-v, --verbose` (repeatable): Increase logging verbosity (`-v`, `-vv`, `-vvv`)\n\nExamples:\n\n- Using a custom RPC (no networks.yaml needed):\n\n```bash\ncatapult run --rpc-url http://127.0.0.1:8545 -k $PRIVATE_KEY\n```\n\n- Write outputs flat instead of mirroring `jobs/` folders:\n\n```bash\ncatapult run --flat-output -k $PRIVATE_KEY\n```\n\n- Run a deprecated job explicitly:\n  - Without flag (explicit targeting runs it):\n    ```bash\n    catapult run legacy-job -k $PRIVATE_KEY\n    ```\n  - Or include all deprecated jobs in the plan:\n    ```bash\n    catapult run --run-deprecated -k $PRIVATE_KEY\n    ```\n\n### Validation and Dry Run\n\nValidate your configuration without executing transactions:\n\n```bash\ncatapult dry-run\n```\n\nValidate specific jobs:\n\n```bash\ncatapult dry-run core-contracts --network 1\ncatapult dry-run core-contracts --network polygon\ncatapult dry-run core-contracts --network mainnet,42161\n```\n\n### Listing Resources\n\nList available jobs:\n\n```bash\ncatapult list jobs\n```\n\nList detected contracts:\n\n```bash\ncatapult list contracts\n```\n\nList available templates:\n\n```bash\ncatapult list templates\n```\n\nList configured networks:\n\n```bash\ncatapult list networks\n```\n\nList only test networks:\n\n```bash\ncatapult list networks --only-testnets\n```\n\nList only non-test networks:\n\n```bash\ncatapult list networks --only-non-testnets\n```\n\nList constants (top-level and per-job):\n\n```bash\ncatapult list constants\n```\n\nSimple outputs for scripting:\n\n```bash\n# Names only, one per line\ncatapult list networks --simple\n\n# Chain IDs only, one per line\ncatapult list networks --simple-chain-ids\n```\n\nUtilities:\n\n```bash\n# Convert chain ID to network name\ncatapult utils chain-id-to-name 42161 -p ./my-project\n```\n\nEtherscan helpers:\n\n```bash\n# Fetch ABI from Etherscan v2\ncatapult etherscan abi -n 1 -a 0xdAC17F958D2ee523a2206206994597C13D831ec7 --etherscan-api-key $ETHERSCAN_API_KEY\ncatapult etherscan abi -n mainnet -a 0xdAC17F... --etherscan-api-key $ETHERSCAN_API_KEY\n\n# Fetch source (standard-json or flattened) from Etherscan v2\ncatapult etherscan source -n 1 -a 0xdAC17F958D2ee523a2206206994597C13D831ec7 --etherscan-api-key $ETHERSCAN_API_KEY\ncatapult etherscan source -n mainnet -a 0xdAC17F... --etherscan-api-key $ETHERSCAN_API_KEY\n```\n\nSource provenance helpers:\n\n```bash\n# Verify every source.yaml provenance entry in the project\ncatapult provenance verify\n\n# Verify only one job's provenance entries\ncatapult provenance verify my-job\n\n# Verify a job and the jobs it depends on\ncatapult provenance verify my-job --include-dependencies\n\n# Generate missing build-info JSON files from source.yaml provenance\ncatapult provenance generate\n```\n\n## Built-in Actions\n\nCatapult provides several built-in primitive actions:\n\n### `send-transaction`\nSend a transaction to the blockchain:\n\n```yaml\n- type: \"send-transaction\"\n  arguments:\n    to: \"0x742...\"\n    value: \"1000000000000000000\"  # 1 ETH in wei\n    data: \"0x...\"\n    gasMultiplier: 1.5  # Optional: multiply gas limit by this factor\n```\n\nThe `gasMultiplier` parameter is optional and allows you to tune the gas limit before sending the transaction:\n- If a network gas limit is configured, it will be multiplied by this factor\n- If no network gas limit is set, gas will be estimated first, then multiplied by this factor\n- Must be a positive number (e.g., 1.5 for 50% more gas, 0.8 for 20% less gas)\n\n### `send-signed-transaction`\nBroadcast a pre-signed transaction:\n\n```yaml\n- type: \"send-signed-transaction\"\n  arguments:\n    transaction: \"0x...\"  # Raw signed transaction\n```\n\n### `static`\nSets a static value that can be referenced in subsequent steps. Useful for defining constants or passing data between actions.\n\n```yaml\n- type: \"static\"\n  name: \"my-value\"\n  arguments:\n    value: \"hello world\"\n```\n\nThe `name` field is optional. When provided, the value is stored under [`name.value`](src/lib/core/engine.ts:560) in the context. If omitted, the value is computed but not stored. Supports all JSON data types including strings, numbers, booleans, objects, and arrays.\n\nExample with complex data:\n\n```yaml\n- type: \"static\"\n  name: \"config\"\n  arguments:\n    value:\n      endpoint: \"https://api.example.com\"\n      timeout: 5000\n      enabled: true\n```\n\nThis makes `config.value.endpoint`, `config.value.timeout`, and `config.value.enabled` available for use in subsequent actions.\n\n### `create-contract`\nCreate a contract by sending its creation bytecode (and optional value):\n\n```yaml\n- type: \"create-contract\"\n  name: \"deploy-foo\"\n  arguments:\n    data: \"{{Contract(Foo).creationCode}}\"\n    gasMultiplier: 1.2\n```\n\n### `json-request`\nMake an HTTP JSON request and use the result downstream:\n\n```yaml\n- type: \"json-request\"\n  name: \"get-config\"\n  arguments:\n    url: \"https://example.com/config.json\"\n    method: \"GET\"\n```\n\n### `assert`\nAssert an on-chain invariant or value comparison. Evaluates a condition and throws a clear error if it doesn't hold (no broadcast, ever).\n\nThe action provides two ways to obtain the **ACTUAL** value:\n\n1. **`to` + `signature`** — performs an `eth_call` (like the `call` value resolver)\n2. **`actual`** — resolves any Value resolver (e.g. `read-balance`, `static`, etc.)\n\nThen provide **exactly one** comparator key (`eq`, `neq`, `gt`, `lt`, `gte`, `lte`) whose value is the **EXPECTED** result. If the comparison is `false`, the action throws an error that fails the run.\n\nExample — call a view function and compare:\n\n```yaml\n- type: assert\n  name: check-deposit-manager\n  arguments:\n    to: \"{{some-proxy}}\"\n    signature: \"depositManager() returns (address)\"\n    eq: \"{{expected-deposit-manager}}\"\n```\n\nExample — resolve a value and compare:\n\n```yaml\n- type: assert\n  name: check-balance\n  arguments:\n    actual: { type: read-balance, arguments: { address: \"{{deployer}}\" } }\n    gte: \"1000000000000000000\"\n    message: \"deployer underfunded\"\n```\n\nAn optional `message` field is included in the error output for clarity.\n\n## Value Resolvers\n\nCatapult includes powerful value resolvers for computing complex values:\n\n### `abi-encode`\nABI-encode function call data:\n\n```yaml\ndata:\n  type: \"abi-encode\"\n  arguments:\n    signature: \"transfer(address,uint256)\"\n    values:\n      - \"0x742...\"\n      - \"1000000000000000000\"\n```\n\n### `constructor-encode`\nEncode constructor parameters with bytecode:\n\n```yaml\ncreationCode:\n  type: \"constructor-encode\"\n  arguments:\n    creationCode: \"{{Contract(MyContract).creationCode}}\"\n    types: [\"address\", \"uint256\"]\n    values: [\"{{factory.address}}\", \"100\"]\n```\n\n### `abi-pack`\nPack values per ABI types into bytes:\n\n```yaml\npayload:\n  type: \"abi-pack\"\n  arguments:\n    types: [\"address\", \"uint256\"]\n    values: [\"{{recipient}}\", \"{{amount}}\"]\n```\n\n### `compute-create2`\nCompute CREATE2 addresses:\n\n```yaml\naddress:\n  type: \"compute-create2\"\n  arguments:\n    deployerAddress: \"{{factory.address}}\"\n    salt: \"{{salt}}\"\n    initCode: \"{{creationCode}}\"\n```\n\n### `basic-arithmetic`\nPerform mathematical operations:\n\n```yaml\namount:\n  type: \"basic-arithmetic\"\n  arguments:\n    operation: \"add\"\n    values: [\"{{current_balance}}\", \"1000000000000000000\"]\n```\n\n### `read-balance`\nRead account balance:\n\n```yaml\nbalance:\n  type: \"read-balance\"\n  arguments:\n    address: \"{{deployer_address}}\"\n```\n\n### `call`\nMake view/pure function calls:\n\n```yaml\nresult:\n  type: \"call\"\n  arguments:\n    to: \"{{contract.address}}\"\n    signature: \"getName()\"\n    values: []\n```\n\n### `get-storage-at`\nRead a raw EVM storage slot via `eth_getStorageAt`:\n\n```yaml\nstorageValue:\n  type: \"get-storage-at\"\n  arguments:\n    address: \"{{contract.address}}\"\n    slot: \"0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc\"  # EIP-1967 implementation slot\n```\n\nThe slot can be a hex string, a number, or a reference to another value. Returns the 32-byte storage value as a hex string.\n\n### `compute-slot`\nCompute EVM storage slots for the common Solidity storage layouts. The result is always a 32-byte, `0x`-prefixed hex string, so it can be fed directly into `get-storage-at` or nested as the `slot` of another `compute-slot` (e.g. for nested mappings). Select a layout with `kind`:\n\n**`mapping`** — value slot of `mapping[key]` (`keccak256(h(key) . slot)`):\n\n```yaml\nslot:\n  type: \"compute-slot\"\n  arguments:\n    kind: \"mapping\"\n    slot: 0                 # declaration slot of the mapping\n    key: \"{{owner}}\"\n    keyType: \"address\"      # optional, default \"uint256\"; \"string\"/\"bytes\" keys are packed\n```\n\nNested mappings (`balances[a][b]`) are expressed by nesting `compute-slot` in the `slot` field:\n\n```yaml\nslot:\n  type: \"compute-slot\"\n  arguments:\n    kind: \"mapping\"\n    key: \"{{spender}}\"\n    keyType: \"address\"\n    slot:\n      type: \"compute-slot\"\n      arguments:\n        kind: \"mapping\"\n        slot: 1\n        key: \"{{owner}}\"\n        keyType: \"address\"\n```\n\n**`dynamic-array`** — element slot of a dynamic array (`keccak256(slot) + index * elementSize`). The array length lives at `slot` itself:\n\n```yaml\nslot:\n  type: \"compute-slot\"\n  arguments:\n    kind: \"dynamic-array\"\n    slot: 3\n    index: 4            # optional, default 0\n    elementSize: 1      # optional slots-per-element, default 1\n```\n\n**`struct-field`** — a struct field or fixed-array element (`slot + offset`):\n\n```yaml\nslot:\n  type: \"compute-slot\"\n  arguments:\n    kind: \"struct-field\"\n    slot: \"{{structBase}}\"\n    offset: 2\n```\n\n**`erc7201`** — ERC-7201 namespaced storage root (`keccak256(abi.encode(uint256(keccak256(id)) - 1)) & ~0xff`):\n\n```yaml\nslot:\n  type: \"compute-slot\"\n  arguments:\n    kind: \"erc7201\"\n    id: \"openzeppelin.storage.Ownable\"\n```\n\n**`eip1967`** — well-known EIP-1967 proxy slot (`keccak256(\"eip1967.proxy.<name>\") - 1`), where `name` is `implementation`, `admin`, or `beacon`:\n\n```yaml\nimplementation:\n  type: \"get-storage-at\"\n  arguments:\n    address: \"{{proxy.address}}\"\n    slot:\n      type: \"compute-slot\"\n      arguments:\n        kind: \"eip1967\"\n        name: \"implementation\"\n```\n\n### `verify-contract`\n### `read-json`\nRead a value from a JSON object at a given path:\n\n```yaml\ntokenAddress:\n  type: \"read-json\"\n  arguments:\n    json: \"{{get-config.response}}\"\n    path: \"tokens.usdc.address\"\n```\n\n### `slice-bytes`\nSlice hex strings by byte offsets (supports negative indexes and range syntax):\n\n```yaml\ntrimmedPatchData:\n  type: \"slice-bytes\"\n  arguments:\n    value:\n      type: \"read-json\"\n      arguments:\n        json: \"{{get-guard-v1-signature.response}}\"\n        path: \"txs.data\"\n    range: \":-1\"  # Drop the trailing byte from the payload\n```\n\nYou can also provide explicit `start` and `end` byte positions (end is exclusive). Negative indexes count from the end of the byte array, so `end: -1` trims the last byte and `start: -32` keeps the final 32 bytes. `range` accepts either `start:end` or the bracket form `[start:end]`.\n\nVerify deployed contracts on block explorers:\n\n```yaml\n- type: \"verify-contract\"\n  arguments:\n    address: \"{{deploy-factory.address}}\"\n    contract: \"{{Contract(MyContract)}}\"  # Reference to the contract to verify\n    constructorArguments: \"0x000000000000000000000000...\"  # Optional hex-encoded args\n    platform: \"etherscan_v2\"  # Optional, defaults to \"all\" (tries all configured platforms)\n```\n\n#### Verification Error Handling\n\nBy default, verification failures will cause the deployment to exit with an error code. To continue deployment even when verification fails and receive a comprehensive warning report at the end, use the `--ignore-verify-errors` flag:\n\n```bash\ncatapult run --ignore-verify-errors\n```\n\nThis is useful when:\n- You want to complete all deployments even if some contract verifications fail\n- Working with networks where verification platforms may be unreliable\n- Running in CI/CD environments where you prefer warnings over hard failures for verification issues\n\nWhen enabled, verification errors are converted to warnings and a detailed report is shown at the end of the deployment with all verification failures.\n\n## Skip Conditions\n\nAvoid redundant operations with skip conditions:\n\n### `contract-exists`\nSkip if contract exists at address:\n\n```yaml\nskip_condition:\n  - type: \"contract-exists\"\n    arguments:\n      address: \"{{computed_address}}\"\n```\n\n### `job-completed`\nSkip if another job is completed:\n\n```yaml\nskip_condition:\n  - type: \"job-completed\"\n    arguments:\n      job: \"prerequisite-job\"\n```\n\n### `skip_if` (pure gate, no post-execution check)\n\nIn addition to `skip_condition`, jobs support a `skip_if` field for **pure gate** semantics:\n\n- Evaluated ONCE, BEFORE the job runs (the pre-skip decision)\n- If ANY condition in `skip_if` is true → skip the whole job (status `skipped`)\n- **NEVER** post-execution-checked (this is the key difference from `skip_condition`)\n\nUse `skip_if` for jobs that generate artifacts (e.g., Safe/multisig transaction payloads for human execution out-of-band) and should skip when already in the desired state, without requiring convergence within the run itself.\n\n```yaml\nname: \"generate-upgrade-payload\"\nversion: \"1.0.0\"\nskip_if:\n  - type: \"contract-exists\"\n    arguments:\n      address: \"{{computed_upgrade_address}}\"\nactions:\n  - name: \"generate\"\n    type: \"static\"\n    arguments:\n      value: \"upgrade-payload-data\"\n```\n\n**Combining `skip_condition` and `skip_if`:**\n\nIf both are present, the job is skipped if ANY condition in either array is true at pre-skip time. Only `skip_condition` is post-execution-checked.\n\n```yaml\nname: \"hybrid-job\"\nversion: \"1.0.0\"\nskip_condition:\n  - type: \"contract-exists\"\n    arguments:\n      address: \"{{deployed_address}}\"\nskip_if:\n  - type: \"job-completed\"\n    arguments:\n      job: \"setup-job\"\nactions:\n  - name: \"deploy\"\n    template: \"erc-2470\"\n    arguments:\n      creationCode: \"{{Contract(MyContract).creationCode}}\"\n      salt: \"0\"\n```\n\n## Standard Templates\n\nCatapult includes several standard templates:\n\n- **`sequence-universal-deployer-2`**: Deploy contracts using Sequence's Universal Deployer v2\n- **`nano-universal-deployer`**: Deploy contracts using the Nano Universal Deployer\n- **`arachnid-deterministic-deployment-proxy`**: Deploy contracts via Arachnid's CREATE2 proxy at `0x4e59…`, with automatic factory bootstrapping\n- **`erc-2470`** and raw variant: CREATE2 Deployer (singleton factory)\n- **`assured-deployment`**: Helper to ensure a contract is deployed at a specific address\n- **`min-balance`**: Ensure minimum balance for any given address\n- Raw building blocks: `raw-sequence-universal-deployer-2`, `raw-nano-universal-deployer`, `raw-erc-2470`\n\n## Contract Resolution\n\nCatapult automatically discovers and indexes contract artifacts in your project. It supports:\n\n- **JSON artifacts** (Hardhat, Truffle, Foundry)\n- **Nested directory structures**\n- **Hash-based contract references**\n- **Path-based contract references**\n- **Name-based contract references**\n\nReference contracts in your YAML using the new unified Contract() syntax:\n\n```yaml\ncreationCode: \"{{Contract(path/to/MyContract).creationCode}}\"\n# or\ncreationCode: \"{{Contract(0x1234...hash).creationCode}}\"\n```\n\nBuild-info files can carry optional source provenance through a nearby `source.yaml`\nsidecar. Deployment runs still use committed artifacts; Catapult does not rebuild\nfrom the source repository during `catapult run`.\n\n```text\njobs/my-stack/build-info/rc-5/\n├── stage1.json\n└── source.yaml\n```\n\n```yaml\ntype: source\n\nbuild_info:\n  \"./stage1.json\":\n    repo: \"https://github.com/0xsequence/wallet-contracts-v3\"\n    ref: \"v3.0.0-rc.5\"\n    commit: \"0d9061f229da73edae890e6fdd1fbf753028df6d\"\n    build: \"forge build --build-info\"\n```\n\nCatapult can use the same provenance to rebuild and compare build-info files on\ndemand:\n\n```bash\n# Rebuild each source provenance entry and compare it with the committed file\ncatapult provenance verify\n\n# Scope to one job, or include that job's dependencies\ncatapult provenance verify my-job\ncatapult provenance verify my-job --include-dependencies\n\n# Clone/build from provenance and write missing build-info files\ncatapult provenance generate\ncatapult provenance generate my-job --include-dependencies\n```\n\n`provenance generate` skips existing build-info files by default; pass `--force`\nto overwrite them. Both commands clone the configured `repo`, check out `ref` or\n`commit`, run the `build` command in that checkout, and look for generated\n`build-info/*.json` files. If the build produces more than one build-info file,\nCatapult selects by matching the committed build-info `id`, then by filename; if\nneither is unique, the entry fails with an ambiguity error.\n\n### Pinning the build toolchain with `image`\n\nBecause provenance compares the *entire* build-info JSON (including compiler\nsettings such as `evmVersion`), the rebuild must use the same toolchain that\nproduced the committed file. Add an optional `image` field to run the `build`\ncommand inside a pinned Docker image instead of on the host:\n\n```yaml\ntype: source\n\nbuild_info:\n  \"./stage1.json\":\n    repo: \"https://github.com/0xsequence/wallet-contracts-v3\"\n    commit: \"0d9061f229da73edae890e6fdd1fbf753028df6d\"\n    image: \"ghcr.io/foundry-rs/foundry:v1.5.1\"\n    build: \"forge build --build-info\"\n```\n\nWhen `image` is set, Catapult runs `docker run <image>` with the checkout\nbind-mounted at `/workspace` (also the working directory and `$HOME`), the build\ncommand executed via `sh -c`, and — on POSIX hosts — the container running as the\ncaller's `uid:gid` so the generated files are owned by you and the temporary\ncheckout can be cleaned up. This keeps the toolchain pinned per entry (different\nbuild-info files can use different images) and leaves the host/runner untouched;\nit requires Docker to be installed and running. The `image` field is also\nsupported in per-contract `contracts` overrides.\n\nIf a build-info file needs a per-contract override, key it by fully-qualified\ncontract name:\n\n```yaml\ntype: source\n\nbuild_info:\n  \"./stage1.json\":\n    repo: \"https://github.com/0xsequence/wallet-contracts-v3\"\n    commit: \"0d9061f229da73edae890e6fdd1fbf753028df6d\"\n    contracts:\n      \"src/Stage1Module.sol:Stage1Module\":\n        ref: \"stage1-special\"\n```\n\n## Output Format\n\nAfter successful deployment, Catapult generates JSON files in the `output/` directory for each job. The output format is optimized to reduce repetition:\n\n### Success Grouping\n\nNetworks with identical deployment outputs are grouped together:\n\n```json\n{\n  \"jobName\": \"core-contracts\",\n  \"jobVersion\": \"1.0.0\",\n  \"lastRun\": \"2025-01-15T10:30:45.123Z\",\n  \"networks\": [\n    {\n      \"status\": \"success\",\n      \"chainIds\": [\"1\", \"42161\", \"137\"],\n      \"outputs\": {\n        \"deploy-factory.address\": \"0x742d35Cc6ab8b3c7B3d4B8b3aB4c8f9e9C8e8aB6\",\n        \"deploy-factory.txHash\": \"0xabc123...\",\n        \"deploy-implementation.address\": \"0x123abc...\"\n      }\n    }\n  ]\n}\n```\n\n### Error Handling\n\nWhen deployments fail on specific networks, each failure is recorded separately:\n\n```json\n{\n  \"jobName\": \"core-contracts\", \n  \"jobVersion\": \"1.0.0\",\n  \"lastRun\": \"2025-01-15T10:30:45.123Z\",\n  \"networks\": [\n    {\n      \"status\": \"success\",\n      \"chainIds\": [\"1\", \"42161\"],\n      \"outputs\": {\n        \"deploy-factory.address\": \"0x742d35Cc6ab8b3c7B3d4B8b3aB4c8f9e9C8e8aB6\"\n      }\n    },\n    {\n      \"status\": \"error\",\n      \"chainId\": \"137\",\n      \"error\": \"Transaction failed: insufficient funds\"\n    }\n  ]\n}\n```\n\nThis format ensures:\n- **Minimal repetition**: Successful deployments with identical outputs across multiple networks are grouped together\n- **Clear error tracking**: Individual network failures are clearly documented\n- **Scalability**: The format remains readable even with deployments across dozens of networks\n\nOutput layout and selection:\n\n- By default, output files mirror the structure under `jobs/` (e.g., `jobs/core/job.yaml` -> `output/core/job.json`). Use `--flat-output` to write all job JSON files directly under `output/`.\n- You can control which action outputs are persisted per job using the `output` flag on actions:\n  - `output: true` to include all outputs for that action\n  - `output: false` to exclude outputs for that action\n  - `output: { key1: true, key2: true }` to include only specific keys from that action (e.g., `txHash`, `address`)\n\n## Environment Variables\n\n- `PRIVATE_KEY`: Signer private key (alternative to `--private-key`)\n- `ETHERSCAN_API_KEY`: API key for Etherscan v2 verification (alternative to `--etherscan-api-key`)\n\nYou can load environment variables from a file using `--dotenv <path>` on the `run` command (defaults to `.env` in the current directory when provided).\n\n## Development\n\n### Prerequisites\n- Node.js >= 16.0.0\n- npm or yarn\n\n### Setup\n```bash\n# Install dependencies\nnpm install\n\n# Build the project\nnpm run build\n\n# Run in development mode\nnpm run dev\n\n# Watch for changes\nnpm run watch\n```\n\n### Scripts\n- `npm run build` - Compile TypeScript to JavaScript\n- `npm run dev` - Run the CLI in development mode with ts-node\n- `npm run watch` - Watch for changes\n","readmeFilename":"README.md"}