{"_id":"@bannynet/core-v6","_rev":"51-f9bd94dc94e9c7dc0622e460ef8070cf","name":"@bannynet/core-v6","dist-tags":{"latest":"1.1.0"},"versions":{"0.0.1":{"name":"@bannynet/core-v6","version":"0.0.1","license":"MIT","_id":"@bannynet/core-v6@0.0.1","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"299f5cf524e6491c988cc82198d10f7e6af42543","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.1.tgz","fileCount":48,"integrity":"sha512-0QAUzklO+ErvKn+F95D9IvgQYbyZlJz3LeDgSZHSzmwanvCLVpHNlq5klvESbt/ktIKHxwJXQT7x5h4mjMunnw==","signatures":[{"sig":"MEMCIC0g82M2lzHaRTEDqBNiyU9x9j/tCwKlDraz1MQItP0vAh99wRgewseiK6ftB+zg7uxw5QkhWfHhspyPnJxuBTqT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12627258},"engines":{"node":">=20.0.0"},"gitHead":"d7a85f12c7cf7cfc83cdd956c6682e6b1cd66e23","scripts":{"test":"forge test","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v5'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","coverage:integration":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","deploy:mainnets:fix:1":"source ./.env && npx sphinx propose ./script/1.Fix.s.sol --networks mainnets","deploy:testnets:fix:1":"source ./.env && npx sphinx propose ./script/1.Fix.s.sol --networks testnets","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets","deploy:mainnets:airdrop":"source ./.env && npx sphinx propose ./script/AirdropOutfits.s.sol --networks mainnets","deploy:testnets:airdrop":"source ./.env && npx sphinx propose ./script/AirdropOutfits.s.sol --networks testnets","deploy:mainnets:airdrop:batch1":"source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch1.s.sol --networks mainnets","deploy:mainnets:airdrop:batch2":"source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch2.s.sol --networks mainnets","deploy:mainnets:airdrop:batch3":"source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch3.s.sol --networks mainnets","deploy:mainnets:airdrop:batch4":"source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch4.s.sol --networks mainnets","deploy:mainnets:airdrop:batch5":"source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch5.s.sol --networks mainnets","deploy:mainnets:airdrop:batch6":"source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch6.s.sol --networks mainnets","deploy:mainnets:airdrop:batch7":"source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch7.s.sol --networks mainnets","deploy:testnets:airdrop:batch1":"source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch1.s.sol --networks testnets","deploy:testnets:airdrop:batch2":"source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch2.s.sol --networks testnets","deploy:testnets:airdrop:batch3":"source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch3.s.sol --networks testnets","deploy:testnets:airdrop:batch4":"source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch4.s.sol --networks testnets","deploy:testnets:airdrop:batch5":"source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch5.s.sol --networks testnets","deploy:testnets:airdrop:batch6":"source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch6.s.sol --networks testnets","deploy:testnets:airdrop:batch7":"source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch7.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.0","description":"On-chain composable avatar system for Juicebox 721 collections -- manages Banny character bodies, backgrounds, and outfit NFTs with layered SVG rendering.","directories":{},"_nodeVersion":"25.8.0","dependencies":{"keccak":"^3.0.4","@rev-net/core-v6":"^0.0.1","@bananapus/core-v6":"^0.0.1","@bananapus/suckers-v6":"^0.0.1","@bananapus/721-hook-v6":"^0.0.1","@openzeppelin/contracts":"^5.2.0","@bananapus/buyback-hook-v6":"^0.0.1","@bananapus/swap-terminal-v6":"^0.0.1"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.2"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.1_1772834437133_0.3605464846396391","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@bannynet/core-v6","version":"0.0.2","license":"MIT","_id":"@bannynet/core-v6@0.0.2","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"b70c8001667059c60c5d131b61c3fa35995844e0","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.2.tgz","fileCount":28,"integrity":"sha512-SMSEfkP+Grio1VOcfqwgIy3ywZco2ImyqtReUAZfgI69foIOdlzpTpugkyS0RYaLrpseTIcu5oAiMJhMnmS9tw==","signatures":[{"sig":"MEUCIQC2uc6OxaWs0NQEcigDq8K0gMxIblZZaSFslSzBY6OFCwIgX+8rRWkIE/2Dywgrrv6nWUAC24KE7B9tN0igCSJ4nZY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12171858},"engines":{"node":">=20.0.0"},"gitHead":"6c53d4a1360d0d0dc8700dc4331771932b00e10b","scripts":{"test":"forge test","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","coverage:integration":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.0","description":"On-chain composable avatar system for Juicebox 721 collections -- manages Banny character bodies, backgrounds, and outfit NFTs with layered SVG rendering.","directories":{},"_nodeVersion":"25.8.0","dependencies":{"keccak":"^3.0.4","@rev-net/core-v6":"^0.0.2","@bananapus/core-v6":"^0.0.4","@bananapus/suckers-v6":"^0.0.2","@bananapus/721-hook-v6":"^0.0.3","@openzeppelin/contracts":"^5.2.0","@bananapus/router-terminal-v6":"^0.0.2"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.2"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.2_1772895966845_0.31320711458424055","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@bannynet/core-v6","version":"0.0.3","license":"MIT","_id":"@bannynet/core-v6@0.0.3","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"ff5d33041eb602568919d3001f29db949dc28f62","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.3.tgz","fileCount":28,"integrity":"sha512-FagO+5KskQM+BhH+3rJfn3QItIkc34JrGtnqXjCEWAFe9eW0lwTOZoMOlN9nnN+57czmN2fQ3tq1JpqJjIGvCg==","signatures":[{"sig":"MEYCIQCpw+0fDt6LnvwJrNYmtCIxuepLTTBKf/dISKVMmFgW7AIhAIEYfj9cYvyODCEJULJNMZ32ZiqR4RREBFMLmNrBow2D","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12171857},"engines":{"node":">=20.0.0"},"gitHead":"0d7295e8ff7e1a310924070a2ce3692907c5a96f","scripts":{"test":"forge test","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","coverage:integration":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.0","description":"On-chain composable avatar system for Juicebox 721 collections -- manages Banny character bodies, backgrounds, and outfit NFTs with layered SVG rendering.","directories":{},"_nodeVersion":"25.8.0","dependencies":{"keccak":"^3.0.4","@rev-net/core-v6":"^0.0.4","@bananapus/core-v6":"^0.0.6","@bananapus/suckers-v6":"^0.0.4","@bananapus/721-hook-v6":"^0.0.7","@openzeppelin/contracts":"5.2.0","@bananapus/router-terminal-v6":"^0.0.6"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.3_1772911252371_0.3618317475005328","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"@bannynet/core-v6","version":"0.0.4","license":"MIT","_id":"@bannynet/core-v6@0.0.4","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"e1a69e6c0a4b0d565232f0f7056494dfdf0b407c","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.4.tgz","fileCount":34,"integrity":"sha512-EdPLOufRXsKxl2YQT2rKPdw2+pVzm9pQQ6xOEF6ccWHDmDSVegv4mj0GqOda9Az1z+xJr5WZAwyBlGYCYy7Lyg==","signatures":[{"sig":"MEUCIQCwOr4qJ4igT+kAN4MuDVYMGgWiFClp7KfIVV60nS8KEgIgDyDn+KaMz/5H+AElkp3J5hh2gN291LC5JjIgYqTpFY4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12213375},"engines":{"node":">=20.0.0"},"gitHead":"5157e4b927fb3ced18f760e9886456107df2758a","scripts":{"test":"forge test","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","coverage:integration":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.0","description":"On-chain composable avatar system for Juicebox 721 collections -- manages Banny character bodies, backgrounds, and outfit NFTs with layered SVG rendering. Bodies can be dressed with outfits and placed on backgrounds, all composed into fully on-chain SVG i","directories":{},"_nodeVersion":"25.8.0","dependencies":{"keccak":"^3.0.4","@rev-net/core-v6":"^0.0.6","@bananapus/core-v6":"^0.0.9","@bananapus/suckers-v6":"^0.0.6","@bananapus/721-hook-v6":"^0.0.9","@openzeppelin/contracts":"5.2.0","@bananapus/router-terminal-v6":"^0.0.6"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.4_1772997270245_0.5358104972101105","host":"s3://npm-registry-packages-npm-production"}},"0.0.5":{"name":"@bannynet/core-v6","version":"0.0.5","license":"MIT","_id":"@bannynet/core-v6@0.0.5","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"5294544ecec8c56d59e4e39445db8909dd9077c5","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.5.tgz","fileCount":34,"integrity":"sha512-AXMfByG42LnS0EyCh0z23TFdrVeGjI4K79io2cvKbcEg6SHvt6W+9A6qO0RJ1dM+tM7wPOgRMhaQ8x1BNPJZfw==","signatures":[{"sig":"MEQCIAdhoeiFCQSyFBMgW0wky6opj6Y3TSxh/8rgNp8Tz5T2AiAJ+skb8tXo+dEj5XKIJyhDmEw9dGn4mHaMCSVify/IfA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12214961},"engines":{"node":">=20.0.0"},"gitHead":"4acf04d14ca72fc8784ccadd18bf9075dcbc1fa4","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.0","description":"On-chain composable avatar system for Juicebox 721 collections -- manages Banny character bodies, backgrounds, and outfit NFTs with layered SVG rendering. Bodies can be dressed with outfits and placed on backgrounds, all composed into fully on-chain SVG i","directories":{},"_nodeVersion":"25.8.0","dependencies":{"keccak":"^3.0.4","@rev-net/core-v6":"^0.0.6","@bananapus/core-v6":"^0.0.10","@bananapus/suckers-v6":"^0.0.7","@bananapus/721-hook-v6":"^0.0.9","@openzeppelin/contracts":"5.2.0","@bananapus/router-terminal-v6":"^0.0.6"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.2"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.5_1773021718531_0.800679278858438","host":"s3://npm-registry-packages-npm-production"}},"0.0.6":{"name":"@bannynet/core-v6","version":"0.0.6","license":"MIT","_id":"@bannynet/core-v6@0.0.6","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"a67a10181d9753d72ceac8773c424b4246cb5204","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.6.tgz","fileCount":40,"integrity":"sha512-2Ws8JJi+740Hd2/83z8AVz8rHkW7OUUf166RQo1Lcb4I3TtsKcWAPGNCUDpEd8ZOzmWJmTSp1mPIO9RLCnG7Cw==","signatures":[{"sig":"MEUCIQCrSxyctvNJU22IpXlst7983q/QrhB/q7ynxr13aQm/CQIgZmN6751pUu5+9hHoZurU7Xhv+BkZX0tQBikQwS68mtQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12361589},"engines":{"node":">=20.0.0"},"gitHead":"7ebe590929dcbfef157dc27018ffc8e9df02b699","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.0","description":"On-chain composable avatar system for Juicebox 721 collections -- manages Banny character bodies, backgrounds, and outfit NFTs with layered SVG rendering. Bodies can be dressed with outfits and placed on backgrounds, all composed into fully on-chain SVG i","directories":{},"_nodeVersion":"25.8.0","dependencies":{"keccak":"^3.0.4","@rev-net/core-v6":"^0.0.6","@bananapus/core-v6":"^0.0.10","@bananapus/suckers-v6":"^0.0.7","@bananapus/721-hook-v6":"^0.0.9","@openzeppelin/contracts":"5.2.0","@bananapus/router-terminal-v6":"^0.0.6"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.2"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.6_1773115674806_0.18105428791979383","host":"s3://npm-registry-packages-npm-production"}},"0.0.7":{"name":"@bannynet/core-v6","version":"0.0.7","license":"MIT","_id":"@bannynet/core-v6@0.0.7","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"9c69de019d244c4168986da8f279325875ca3dd4","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.7.tgz","fileCount":40,"integrity":"sha512-v+YIlKjY3KghPZEJzC5jtkj9cRCAIkRNLwKjUa7uUDcdFfbuSBDxyK4B3Tr2kf1pMRqA7As/TslErKn8o+f6Ng==","signatures":[{"sig":"MEQCIAxcywRvo6Fhs4BOxk+7/DZQv3qhGGAEiGwNdhBCfF5OAiAqCs8K+82ow9Rw16bJIuQwpRrRufxsJKswL39RcSiRGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12363355},"engines":{"node":">=20.0.0"},"gitHead":"2e85cf71aac81563ff53bad5c9bc078cc46ee977","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.0","description":"On-chain composable avatar system for Juicebox 721 collections -- manages Banny character bodies, backgrounds, and outfit NFTs with layered SVG rendering. Bodies can be dressed with outfits and placed on backgrounds, all composed into fully on-chain SVG i","directories":{},"_nodeVersion":"25.8.1","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.12","@rev-net/core-v6":"^0.0.10","@bananapus/core-v6":"^0.0.15","@bananapus/suckers-v6":"^0.0.7","@bananapus/721-hook-v6":"^0.0.14","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.7","@bananapus/router-terminal-v6":"^0.0.6"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.2"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.7_1773356891246_0.28749919921865197","host":"s3://npm-registry-packages-npm-production"}},"0.0.8":{"name":"@bannynet/core-v6","version":"0.0.8","license":"MIT","_id":"@bannynet/core-v6@0.0.8","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"9bb40e109c2a7022d7ddfe80b1ede013ba5b201a","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.8.tgz","fileCount":40,"integrity":"sha512-GPo+shvWnIKcdBdMdLITBGSvq9nVd9wtuL5Hofe7JEB3RC3xl0RdKxnUsyEyKh4wb6WgUg7NtPU7a4f7ISBoAg==","signatures":[{"sig":"MEUCIDs1mE8rPXho9pdRqCdSObXAXie9+PZ2Uo/lMUhvs6b8AiEA3fz2VlMd50mgXa8sYcP94I4qrrV76z/oqKiMCXl2df4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12365817},"engines":{"node":">=20.0.0"},"gitHead":"f175192fa93d7a045bbce625d8d140231337d42f","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.0","description":"On-chain composable avatar system for Juicebox 721 collections -- manages Banny character bodies, backgrounds, and outfit NFTs with layered SVG rendering. Bodies can be dressed with outfits and placed on backgrounds, all composed into fully on-chain SVG i","directories":{},"_nodeVersion":"25.8.1","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.15","@rev-net/core-v6":"^0.0.12","@bananapus/core-v6":"^0.0.16","@bananapus/suckers-v6":"^0.0.10","@bananapus/721-hook-v6":"^0.0.16","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.9","@bananapus/router-terminal-v6":"^0.0.11"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.2"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.8_1773462303084_0.7565318619919768","host":"s3://npm-registry-packages-npm-production"}},"0.0.9":{"name":"@bannynet/core-v6","version":"0.0.9","license":"MIT","_id":"@bannynet/core-v6@0.0.9","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"ca33413e488a50962fe4ff0947de3fb111f616f4","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.9.tgz","fileCount":40,"integrity":"sha512-FRJNbipGoZonxMu4yqniRcwXvwN/nHD3oSTd2ojwOjivUiznqhKhignp8AzXLlhoOi4oXgVzNzmD+wqXtNg8Ng==","signatures":[{"sig":"MEUCIQD5pR12b2SX5mFYA2kG68LfBVO4z1chEzcWVHrSCeBvpQIgOvd1Pa7k525UGObLW9BiMVaNd9kqyXKgVbhZjWGt+os=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12366665},"engines":{"node":">=20.0.0"},"gitHead":"93727f3b86ff628d8e4bd831430474fee8cd8400","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.0","description":"On-chain composable avatar system for Juicebox 721 collections -- manages Banny character bodies, backgrounds, and outfit NFTs with layered SVG rendering. Bodies can be dressed with outfits and placed on backgrounds, all composed into fully on-chain SVG i","directories":{},"_nodeVersion":"25.8.1","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.15","@rev-net/core-v6":"^0.0.12","@bananapus/core-v6":"^0.0.16","@bananapus/suckers-v6":"^0.0.10","@bananapus/721-hook-v6":"^0.0.16","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.9","@bananapus/router-terminal-v6":"^0.0.11"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.2"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.9_1773463051342_0.441865550902532","host":"s3://npm-registry-packages-npm-production"}},"0.0.10":{"name":"@bannynet/core-v6","version":"0.0.10","license":"MIT","_id":"@bannynet/core-v6@0.0.10","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"9651e0b6ef68bd3324c161b8a1ef0b4f183ae1c7","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.10.tgz","fileCount":46,"integrity":"sha512-eUvLXfgyoPgPdcQzyqQNySK4PdkjCyXco45BWPokKQ/9tSfGchkcxVPgteXonNzWNwgNaRV95sHzzpzZDE6nig==","signatures":[{"sig":"MEUCIAHPItcD8jIzXSovKxsbo2VP/v8mqtUvNc4ACjg1iL4PAiEAsF+fDU/Ch7Xui3aJbCkTBAawjI+Gowk0BCTWpUnUUTs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12479274},"engines":{"node":">=20.0.0"},"gitHead":"5a06c6c7e2057bf8d2ed6749cefe8430c0abe37c","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.0","description":"On-chain composable avatar system for Juicebox 721 collections -- manages Banny character bodies, backgrounds, and outfit NFTs with layered SVG rendering. Bodies can be dressed with outfits and placed on backgrounds, all composed into fully on-chain SVG i","directories":{},"_nodeVersion":"25.8.1","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.18","@rev-net/core-v6":"^0.0.13","@bananapus/core-v6":"^0.0.17","@bananapus/suckers-v6":"^0.0.11","@bananapus/721-hook-v6":"^0.0.17","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.10","@bananapus/router-terminal-v6":"^0.0.13"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.2"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.10_1773871309652_0.9409637692439656","host":"s3://npm-registry-packages-npm-production"}},"0.0.11":{"name":"@bannynet/core-v6","version":"0.0.11","license":"MIT","_id":"@bannynet/core-v6@0.0.11","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"bbcb963bfb19b8d887ad534bcf6e7bbb716ce7de","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.11.tgz","fileCount":46,"integrity":"sha512-HIVerd0VABT8W/rbYxuvic7nxIh9dF4CJjRiee9HQgIiRZ1f4tXm5MVpayiqPFFpYrNOaiCPYsXJBvK0FzjWpQ==","signatures":[{"sig":"MEUCIQCKniKTSEapfoGZhEhgYx/Txpb3KJmVj8ZcQ+KKM/ipsgIgWkKtmXQM1P4Y2wKRFeGgjWMcauSx3BvZdOgSZxYr/bU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12482101},"engines":{"node":">=20.0.0"},"gitHead":"ac1ab84c63473e5565cf04cbe81e016d46df0338","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.0","description":"On-chain composable avatar system for Juicebox 721 collections -- manages Banny character bodies, backgrounds, and outfit NFTs with layered SVG rendering. Bodies can be dressed with outfits and placed on backgrounds, all composed into fully on-chain SVG i","directories":{},"_nodeVersion":"25.8.1","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.20","@rev-net/core-v6":"^0.0.15","@bananapus/core-v6":"^0.0.24","@bananapus/suckers-v6":"^0.0.13","@bananapus/721-hook-v6":"^0.0.19","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.10","@bananapus/router-terminal-v6":"^0.0.17"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.2"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.11_1774132103971_0.3681648314975974","host":"s3://npm-registry-packages-npm-production"}},"0.0.12":{"name":"@bannynet/core-v6","version":"0.0.12","license":"MIT","_id":"@bannynet/core-v6@0.0.12","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"f48bb189cb7cef6556c50c4059b6e4d7ff4cdd6c","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.12.tgz","fileCount":41,"integrity":"sha512-2UslpJfxMIq3LORpB3BJoGcl4Xp8SkeXy5KT1ZbhCNOrLYwKZmYjeIt5DXE8eBp6i4cOhzh92eAH392WPI/WMg==","signatures":[{"sig":"MEUCIQDU1Sdl7h8RcfeHxrcewfTNe0H4XtVOKHTEoKNYVEZvhQIgGF3hELI5p3h6tsO/WXVvebGqeZDfRtDCsreqYy6dGQY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9906444},"engines":{"node":">=20.0.0"},"gitHead":"973d348659e9b3397608c2167fb8e5d551029358","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.1","description":"On-chain composable avatar system for Juicebox 721 collections -- manages Banny character bodies, backgrounds, and outfit NFTs with layered SVG rendering. Bodies can be dressed with outfits and placed on backgrounds, all composed into fully on-chain SVG i","directories":{},"_nodeVersion":"25.8.2","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.21","@rev-net/core-v6":"^0.0.16","@bananapus/core-v6":"^0.0.26","@bananapus/suckers-v6":"^0.0.16","@bananapus/721-hook-v6":"^0.0.20","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.12","@bananapus/router-terminal-v6":"^0.0.19"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.2"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.12_1774458638877_0.5422434366404412","host":"s3://npm-registry-packages-npm-production"}},"0.0.13":{"name":"@bannynet/core-v6","version":"0.0.13","license":"MIT","_id":"@bannynet/core-v6@0.0.13","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"ce1e4716434e0fa38919195acb109e3098145ca2","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.13.tgz","fileCount":41,"integrity":"sha512-uqp/Gl2Xv8gqeRcl5at6rncrDhj7Fd5wmKsEF8s1D6aLruXGqQWuHvpFvGOUVFpBlLwFswrK44ULoRGvzCHohg==","signatures":[{"sig":"MEYCIQCrwZkAzAiYZwXNy8GBJm/q7r2MSkf3Vgglnc1fbjQdIQIhAOI/DDs6nNykCG6+KNSy0xZd8noqKmmfNwVy18MAnsvs","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9906417},"engines":{"node":">=20.0.0"},"gitHead":"13551642f7c974483e8600734c06374eb5e9adf9","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.1","description":"On-chain composable avatar system for Juicebox 721 collections -- manages Banny character bodies, backgrounds, and outfit NFTs with layered SVG rendering. Bodies can be dressed with outfits and placed on backgrounds, all composed into fully on-chain SVG i","directories":{},"_nodeVersion":"25.8.2","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.22","@rev-net/core-v6":"^0.0.17","@bananapus/core-v6":"^0.0.27","@bananapus/suckers-v6":"^0.0.17","@bananapus/721-hook-v6":"^0.0.21","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.14","@bananapus/router-terminal-v6":"^0.0.20"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.2"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.13_1774476969534_0.2198682187310057","host":"s3://npm-registry-packages-npm-production"}},"0.0.14":{"name":"@bannynet/core-v6","version":"0.0.14","license":"MIT","_id":"@bannynet/core-v6@0.0.14","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"af4f2fc414eb8a32edf2922d418d0e7487a454e8","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.14.tgz","fileCount":41,"integrity":"sha512-CseCRCIIZlZX0W28+d/MTvTP9k9022vlAipA0EQ1aOonD8UN3klDM/TC6aWFP4InQ71cjN/6/mrO0g7YGsA7kQ==","signatures":[{"sig":"MEYCIQDNHVUyiR68LzrmrXAA2J1+UIRVUhgG8vVnVvBklpTUjwIhAIz0XG3ULELtjZGzazdmrF8neeWCCYfSeY9HLmQ+80nb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9906495},"engines":{"node":">=20.0.0"},"gitHead":"01ac17329775f3766e25025cd110292fb16ffee0","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.1","description":"On-chain composable avatar system for Juicebox 721 collections -- manages Banny character bodies, backgrounds, and outfit NFTs with layered SVG rendering. Bodies can be dressed with outfits and placed on backgrounds, all composed into fully on-chain SVG i","directories":{},"_nodeVersion":"25.8.2","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.23","@rev-net/core-v6":"^0.0.18","@bananapus/core-v6":"^0.0.28","@bananapus/suckers-v6":"^0.0.18","@bananapus/721-hook-v6":"^0.0.22","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.14","@bananapus/router-terminal-v6":"^0.0.21"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.2"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.14_1774721171977_0.9920001558160663","host":"s3://npm-registry-packages-npm-production"}},"0.0.15":{"name":"@bannynet/core-v6","version":"0.0.15","license":"MIT","_id":"@bannynet/core-v6@0.0.15","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"6aee9eb28830446d35cdc742664cd355d0f60c9d","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.15.tgz","fileCount":43,"integrity":"sha512-Rk7b8se53bTyR6Ujww6kmfwOY2W5uqvUN0NftMDwiCoL9TNJZB6xU6xFi8GhuSYu1sJgxAz1IEHNJCrLFYo+Hg==","signatures":[{"sig":"MEYCIQCN7Yn/3scZLjsVLS/bS5d9Bh84gqOxd/gRpqTkJrNbEgIhAM+53Nm/yHsRyQHGByDbVxK6eXlUnInpH4MrnvZCBok8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9913814},"engines":{"node":">=20.0.0"},"gitHead":"5eec889fdd0ce56ae0c81c0d3b29a0358cd1ef65","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.1","description":"On-chain composable avatar system for Juicebox 721 collections -- manages Banny character bodies, backgrounds, and outfit NFTs with layered SVG rendering. Bodies can be dressed with outfits and placed on backgrounds, all composed into fully on-chain SVG i","directories":{},"_nodeVersion":"25.8.2","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.23","@rev-net/core-v6":"^0.0.21","@bananapus/core-v6":"^0.0.28","@bananapus/suckers-v6":"^0.0.18","@bananapus/721-hook-v6":"^0.0.22","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.14","@bananapus/router-terminal-v6":"^0.0.21"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.2"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.15_1774962166418_0.7982501280964207","host":"s3://npm-registry-packages-npm-production"}},"0.0.16":{"name":"@bannynet/core-v6","version":"0.0.16","license":"MIT","_id":"@bannynet/core-v6@0.0.16","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"bd458e93914f261fcee7ea5e9283d4b5f52d47a3","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.16.tgz","fileCount":43,"integrity":"sha512-9rqQrvSROvUKE8y/uPfh0FrBQzC/FU2gIEzczBVlvQAg0G8GHZO5O8gCVTop/Ya7lFEgjjM10tcS21YDnXAMmQ==","signatures":[{"sig":"MEUCIQCbdChTG6QzpXvIA+kpoQSgqdEfuPoPhMVz6wnf0jij8QIgdayx1130fEf/7njfKu4WqPH4SqR/KEV53hbaHh5N16A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9916533},"engines":{"node":">=20.0.0"},"gitHead":"f478d521c859068ae58a75b440c13ff203e0a776","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.1","description":"On-chain composable avatar system for Juicebox 721 collections -- manages Banny character bodies, backgrounds, and outfit NFTs with layered SVG rendering. Bodies can be dressed with outfits and placed on backgrounds, all composed into fully on-chain SVG i","directories":{},"_nodeVersion":"25.8.2","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.26","@rev-net/core-v6":"^0.0.24","@bananapus/core-v6":"^0.0.28","@bananapus/suckers-v6":"^0.0.18","@bananapus/721-hook-v6":"^0.0.26","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.14","@bananapus/router-terminal-v6":"^0.0.21"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.2"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.16_1774976462882_0.8020315167231113","host":"s3://npm-registry-packages-npm-production"}},"0.0.17":{"name":"@bannynet/core-v6","version":"0.0.17","license":"MIT","_id":"@bannynet/core-v6@0.0.17","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"a4671d79b9283d9693c05562e5df7ab12f36c1b2","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.17.tgz","fileCount":43,"integrity":"sha512-CouksepdkHAT1YxP26IbWAaO18IOxtfhmAjIMnD2r5INtR4OPTNCfvgcsS96q4tx3ilNQEN/x0VmAS+asLWR9A==","signatures":[{"sig":"MEUCIHVrprb7jdHLQEr+E5YsPea4bBacoNb05cqjpZIUnwZxAiEArJjAbjtvM4yT+yqUx024inI4lgJSNX2bkmYcPpbMtaw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9916257},"engines":{"node":">=20.0.0"},"gitHead":"0586aa668a14798b092aa26b476b39531f38edc6","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.1","description":"On-chain composable avatar system for Juicebox 721 collections -- manages Banny character bodies, backgrounds, and outfit NFTs with layered SVG rendering. Bodies can be dressed with outfits and placed on backgrounds, all composed into fully on-chain SVG i","directories":{},"_nodeVersion":"25.8.2","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.27","@rev-net/core-v6":"^0.0.24","@bananapus/core-v6":"^0.0.28","@bananapus/suckers-v6":"^0.0.18","@bananapus/721-hook-v6":"^0.0.28","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.14","@bananapus/router-terminal-v6":"^0.0.21"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.2"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.17_1774980788454_0.9269359162087825","host":"s3://npm-registry-packages-npm-production"}},"0.0.18":{"name":"@bannynet/core-v6","version":"0.0.18","license":"MIT","_id":"@bannynet/core-v6@0.0.18","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"090d85690bc92441a335d0140db38b227a3f897f","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.18.tgz","fileCount":45,"integrity":"sha512-plGsAtSPnzN34lEs5ZNE56Z1XHJNCS7DH/2Ro9NEgrmVxI//lJSzPELqXzdWUoshSZL/B6oSQ0PWf5GVrI/mEg==","signatures":[{"sig":"MEQCIB7uuRocq8TS+OmzS1T0S2HHZx+7g5LYsOOE+czgt1PGAiAxHLBOgtOmCRr2+9OqTzj/wsLMSXzmtyWslbZt66MoOw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9852980},"engines":{"node":">=20.0.0"},"gitHead":"fd7967fb5183489edadcc2006a95d61a9e0f6746","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.11.1","description":"Banny Retail is an on-chain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, sit on a background NFT, and render the full composition as an on-chain SVG and base64 metadata payload.","directories":{},"_nodeVersion":"25.8.2","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.28","@rev-net/core-v6":"^0.0.24","@bananapus/core-v6":"^0.0.28","@bananapus/suckers-v6":"^0.0.18","@bananapus/721-hook-v6":"^0.0.30","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.14","@bananapus/router-terminal-v6":"^0.0.21"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.2"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.18_1774997195987_0.6381720039132843","host":"s3://npm-registry-packages-npm-production"}},"0.0.19":{"name":"@bannynet/core-v6","version":"0.0.19","license":"MIT","_id":"@bannynet/core-v6@0.0.19","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"17b2364a71220cb5a9d7ba3d3bfe780f09ad6b4e","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.19.tgz","fileCount":45,"integrity":"sha512-LehoKP3w60Ig4WWxZooHglu5VwtKLoIIg4ludVxMa/fMDOEmD5PnYUcZ4LjJSKf55cUf56EL4Kq47aE483OGjw==","signatures":[{"sig":"MEUCIQCqjBAp8ux5mW+GebwbUpdXX0NeMMX9ecDrQ1mL/jaaHgIgXfNb1FbJOz0icb2dAx+xwfjNqT9iSuo1jpTka6dnKso=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9860149},"engines":{"node":">=20.0.0"},"gitHead":"1fb0b0544bab968facb4654edea7cc6056f29804","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an on-chain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, sit on a background NFT, and render the full composition as an on-chain SVG and base64 metadata payload.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.29","@rev-net/core-v6":"^0.0.26","@bananapus/core-v6":"^0.0.31","@bananapus/suckers-v6":"^0.0.20","@bananapus/721-hook-v6":"^0.0.30","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.15","@bananapus/router-terminal-v6":"^0.0.25"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.2"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.19_1775518290655_0.23595090897747562","host":"s3://npm-registry-packages-npm-production"}},"0.0.20":{"name":"@bannynet/core-v6","version":"0.0.20","license":"MIT","_id":"@bannynet/core-v6@0.0.20","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"fb1aa20016a7a58d373f9e5dba98ef65061406d1","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.20.tgz","fileCount":45,"integrity":"sha512-nn3hd7Qhly8IYRRU2L4MyDjng9Ffsho4l/2uFXCf5ypxc8a547thnaj11RD/pJqLg+EeKECGLXOM/YO1DxMcGg==","signatures":[{"sig":"MEUCIG9Gn0jJP2qVYvR89fCOyxIHKGfdG4jouAw9P2t00n2TAiEArzE01MFzag9aoiY+zVDj7T/FK7mTmO1xZs/QgLaYqxU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9860202},"engines":{"node":">=20.0.0"},"gitHead":"36e1caa97bdc055d024c548e45fe11d53df3732e","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an on-chain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, sit on a background NFT, and render the full composition as an on-chain SVG and base64 metadata payload.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.30","@rev-net/core-v6":"^0.0.28","@bananapus/core-v6":"^0.0.31","@bananapus/suckers-v6":"^0.0.21","@bananapus/721-hook-v6":"^0.0.31","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.15","@bananapus/router-terminal-v6":"^0.0.25"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.2","@bananapus/address-registry-v6":"^0.0.17"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.20_1775525830859_0.6347486088738556","host":"s3://npm-registry-packages-npm-production"}},"0.0.21":{"name":"@bannynet/core-v6","version":"0.0.21","license":"MIT","_id":"@bannynet/core-v6@0.0.21","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"3fff32ef70149e3876a6e6f4820a0af2a49ff6ef","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.21.tgz","fileCount":46,"integrity":"sha512-2DKxPKq2PM3n2JdeNC9Y/8Dv+7UcLq7kekZxE7Z4pMT+sAB4c6crcrOWzmQKy0SjM7w2fyJWZ0qA2E4FP87+Tw==","signatures":[{"sig":"MEUCIH67JelpEhkb5A9y5zjwY3u/H9Io7w5Jqog8mSyx0JZ8AiEA0XqIzXkjBdSnfnOQ1zOgQQ13cxcjDt4usxCjTJWoy3c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9868965},"engines":{"node":">=20.0.0"},"gitHead":"9db84f64dcfdbefb0b617546c34b37683667c497","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an on-chain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, sit on a background NFT, and render the full composition as an on-chain SVG and base64 metadata payload.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.31","@rev-net/core-v6":"^0.0.29","@bananapus/core-v6":"^0.0.32","@bananapus/suckers-v6":"^0.0.22","@bananapus/721-hook-v6":"^0.0.32","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.15","@bananapus/router-terminal-v6":"^0.0.26"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.3","@bananapus/address-registry-v6":"^0.0.17"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.21_1775706214468_0.9506322817199608","host":"s3://npm-registry-packages-npm-production"}},"0.0.22":{"name":"@bannynet/core-v6","version":"0.0.22","license":"MIT","_id":"@bannynet/core-v6@0.0.22","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"b59864528de153c7bc664e17e21ed768d01fbd67","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.22.tgz","fileCount":46,"integrity":"sha512-jswqCcEFR9nL1rcpWDYBTgjmZ1eVTjXwC3GBXGrw6DzpUuGwUxPh4CB+u0hHjscDEMANYCXh6zFp5QdR4NxeCw==","signatures":[{"sig":"MEUCIAkk1i5TqElTSIhe24OLwfzsQaBh6QdKyvvjBFoF440FAiEA6tbjQMeJicPtSVvVnV504xclSeCyKsau2KtMdCMAbZ8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9869206},"engines":{"node":">=20.0.0"},"gitHead":"141bad385bfb6af35197a123272319576ec154fc","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an on-chain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, sit on a background NFT, and render the full composition as an on-chain SVG and base64 metadata payload.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.33","@rev-net/core-v6":"^0.0.32","@bananapus/core-v6":"^0.0.34","@bananapus/suckers-v6":"^0.0.25","@bananapus/721-hook-v6":"^0.0.35","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.17","@bananapus/router-terminal-v6":"^0.0.26"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.3","@bananapus/address-registry-v6":"^0.0.17"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.22_1776654439154_0.8999250001378218","host":"s3://npm-registry-packages-npm-production"}},"0.0.23":{"name":"@bannynet/core-v6","version":"0.0.23","license":"MIT","_id":"@bannynet/core-v6@0.0.23","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"b127d293b875a3956e709795f086d1ed8467ba74","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.23.tgz","fileCount":46,"integrity":"sha512-mx1pyek0VzwhLfZwxob25SpAFT1nxMdyzzLRQhgzsHfdi7u19hib86yTKpSM4SobHL/5jRfDBtRm9DAcd1lBng==","signatures":[{"sig":"MEQCIGMsWPwRm6593evwkQ9oiw1604o1ekQwOZjiETzsveZ8AiBhQlRpgAUjn8AK2uTA2LHP1d8N0cT0n2QmEy/Wrl0sGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9869356},"engines":{"node":">=20.0.0"},"gitHead":"80bca2369858630eecbbc5e27120f68d8c808a4c","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an on-chain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, sit on a background NFT, and resolve to a base64-encoded JSON token URI whose image field contains an on-chain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.33","@rev-net/core-v6":"^0.0.32","@bananapus/core-v6":"^0.0.34","@bananapus/suckers-v6":"^0.0.25","@bananapus/721-hook-v6":"^0.0.35","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.17","@bananapus/router-terminal-v6":"^0.0.26"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.3","@bananapus/address-registry-v6":"^0.0.17"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.23_1776694006663_0.7486319969509156","host":"s3://npm-registry-packages-npm-production"}},"0.0.24":{"name":"@bannynet/core-v6","version":"0.0.24","license":"MIT","_id":"@bannynet/core-v6@0.0.24","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"946d67338f588e159de0a7b40e7e376001da5eff","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.24.tgz","fileCount":46,"integrity":"sha512-NGxYK6qrEtKVa9aLEGYJ0n4w0yZvf6CYKXd1o4eBpwD1sKZby9qC3w+FYYV1JctvqTUR3SrxJA0caMwIAcFURA==","signatures":[{"sig":"MEUCID3jwdmsUs2rvle2JzRf1wG3WjYbmlqVEeujZVAeE+5MAiEAzc58O3sr5bFldSn0kuHA8/o7Jf99Ehu8Rc9JBe13A5E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9861933},"engines":{"node":">=20.0.0"},"gitHead":"d7a2fea9d605216ee4c929f78e8326f2e6e076a0","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"^3.0.4","@croptop/core-v6":"^0.0.36","@rev-net/core-v6":"^0.0.35","@bananapus/core-v6":"^0.0.36","@bananapus/suckers-v6":"^0.0.28","@bananapus/721-hook-v6":"^0.0.38","@openzeppelin/contracts":"^5.6.1","@bananapus/permission-ids-v6":"^0.0.19","@bananapus/router-terminal-v6":"^0.0.30"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"^0.33.3","@bananapus/address-registry-v6":"^0.0.17"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.24_1777204686507_0.4539572751305134","host":"s3://npm-registry-packages-npm-production"}},"0.0.25":{"name":"@bannynet/core-v6","version":"0.0.25","license":"MIT","_id":"@bannynet/core-v6@0.0.25","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"b029a07891bd7329ad5c51ca8ae648f17c1dc05e","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.25.tgz","fileCount":16,"integrity":"sha512-FKbBSUNYgC86OuvR7MJn6zQd/n7NCnDLqQYlczKlA+RhJB/4CmPHd0VLLEs7L6yE6RB2hlPpOKop3071Q2oXuA==","signatures":[{"sig":"MEUCIDv3vHNcOXBjnw5CUmrO/GShQCeiHMKSCyFSzfxTSHBIAiEAhuq1O0Ww7BhM96pk2/y4DO9Et8jP4pUdXQ+Bm7LskzM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9452203},"engines":{"node":">=20.0.0"},"gitHead":"c2224f808d6e21b2d6ef7f65095b89f5b033691d","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@rev-net/core-v6":"0.0.39","@bananapus/core-v6":"0.0.39","@bananapus/suckers-v6":"0.0.33","@bananapus/721-hook-v6":"0.0.43","@openzeppelin/contracts":"5.6.1","@bananapus/router-terminal-v6":"0.0.36"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"0.0.25"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.25_1777956499811_0.9878539290361283","host":"s3://npm-registry-packages-npm-production"}},"0.0.26":{"name":"@bannynet/core-v6","version":"0.0.26","license":"MIT","_id":"@bannynet/core-v6@0.0.26","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"e5dd43b3ed9393c45771a112393b11cb449b9ee0","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.26.tgz","fileCount":16,"integrity":"sha512-fBGCRUSS5BbEhb/UtyVZQLKejJV9Eggxe3z9S+xb9hWoJP70lmGpGTyatnhXKqrgT3XEIGNQPHrMsiHrKsu0TQ==","signatures":[{"sig":"MEYCIQCnHr3aRpeQiIpjLt9GkjwPPn/wDz+p59Pb/DRz/YHdlwIhAJjxLgN5y2jyLfRJOs4Cc4mA4XPlMWsl9M6aZzOgO0fk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9452679},"engines":{"node":">=20.0.0"},"gitHead":"3e08ab501250ec83f4086621ba5f7ffdab765974","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@rev-net/core-v6":"0.0.39","@bananapus/core-v6":"0.0.39","@bananapus/suckers-v6":"0.0.33","@bananapus/721-hook-v6":"0.0.43","@openzeppelin/contracts":"5.6.1","@bananapus/router-terminal-v6":"0.0.36"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"0.0.25"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.26_1777957263886_0.1850956471182965","host":"s3://npm-registry-packages-npm-production"}},"0.0.27":{"name":"@bannynet/core-v6","version":"0.0.27","license":"MIT","_id":"@bannynet/core-v6@0.0.27","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"59ab89ba85b27337515308fc490925c03e07a24b","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.27.tgz","fileCount":16,"integrity":"sha512-M3CCqoRr3Zv4B6s4aCwD0mGbTJWg9SA9pueJ+6s5se1fHgjWz7k5MSCx27gez+qlE/2EqLe06ncE0vR3sKLbYw==","signatures":[{"sig":"MEUCIQCXK7BeoMI/jzuZCjEsgtT0umY2y3llN3P40p4K+ntmEwIgZu8kYeQmI1Tiy4UAvv+jgZT3k8/rpPLcmVo/G/BKASM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9452556},"engines":{"node":">=20.0.0"},"gitHead":"b411d024f77c2dc844ffda91ce4139669cc731c6","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@rev-net/core-v6":"0.0.39","@bananapus/core-v6":"0.0.39","@bananapus/suckers-v6":"0.0.33","@bananapus/721-hook-v6":"0.0.43","@openzeppelin/contracts":"5.6.1","@bananapus/router-terminal-v6":"0.0.36"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"0.0.25"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.27_1777994851430_0.2842445044985886","host":"s3://npm-registry-packages-npm-production"}},"0.0.28":{"name":"@bannynet/core-v6","version":"0.0.28","license":"MIT","_id":"@bannynet/core-v6@0.0.28","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"35667bfe97ff41046b7edbbe1784309701da412c","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.28.tgz","fileCount":16,"integrity":"sha512-ZdzgS9xRP6OVHXalDWGIXtULx0YntrA2II8itoCPVQZf7VEAo9BJLEVdyIAHtV13BUU4QMnywNTdX01SMsf0wA==","signatures":[{"sig":"MEQCIHjHAyGFw0GUK739ayqYxeayc8mBf9sAAGNSLW+KsvF4AiABSYRlxY/pwa+6PGNeJlZcuGW9phUY8wqAss/e+7Os2Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9452644},"engines":{"node":">=20.0.0"},"gitHead":"cdf1d368004ee434baacc7b362c84b9ac53c6871","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@rev-net/core-v6":"0.0.39","@bananapus/core-v6":"0.0.39","@bananapus/suckers-v6":"0.0.33","@bananapus/721-hook-v6":"0.0.43","@openzeppelin/contracts":"5.6.1","@bananapus/router-terminal-v6":"0.0.36"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"0.0.25"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.28_1778080076966_0.41336190803252726","host":"s3://npm-registry-packages-npm-production"}},"0.0.29":{"name":"@bannynet/core-v6","version":"0.0.29","license":"MIT","_id":"@bannynet/core-v6@0.0.29","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"849ccc3036b8e06afe2d0e8c426618babf455c96","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.29.tgz","fileCount":16,"integrity":"sha512-AhQvkpgi6GcEs4/iirUJHHqklUtVRLf1uYxru2ICn9JihwEoSufPqMAwxeXyhD47QI9DKSyI3K3c0MXGbt6CJA==","signatures":[{"sig":"MEQCIAuB7LMETSoGQOwWyZoNbR5imbV3SN772NaKq/ligG1wAiB3DqTQGG26w9wTFF87J720krpj08NmGMZ0P3IbFgeetg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9457832},"engines":{"node":">=20.0.0"},"gitHead":"15d38cbb608ef782eb4e554412d73e860341caa9","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@rev-net/core-v6":"0.0.39","@bananapus/core-v6":"0.0.39","@bananapus/suckers-v6":"0.0.33","@bananapus/721-hook-v6":"0.0.43","@openzeppelin/contracts":"5.6.1","@bananapus/router-terminal-v6":"0.0.36"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"0.0.25"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.29_1778596863766_0.3788598847950313","host":"s3://npm-registry-packages-npm-production"}},"0.0.30":{"name":"@bannynet/core-v6","version":"0.0.30","license":"MIT","_id":"@bannynet/core-v6@0.0.30","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"bbc76f2e9651de7becfc59d8e19be6aaea7dcd57","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.30.tgz","fileCount":16,"integrity":"sha512-1HtkxgBPe3ouGsjKWmGlaSp/xEEh7PWDSjEFRXuyqRwhe7RSd+SgPX3mFxM7CMtKVK3akeZ7TFi/O1kLJ9kQMw==","signatures":[{"sig":"MEUCIFMqk26MDqUYifyO+zHk5P6N1jEfJptMl76wBxUhZrTPAiEAppfKmy5a+pGcdpx8c/v1p12Cl81vm1w9yvwmg8Yhb1w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9458214},"engines":{"node":">=20.0.0"},"gitHead":"d0d6155e14e3d00537bad89ef48614b5a43ee00d","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@rev-net/core-v6":"^0.0.39","@bananapus/core-v6":"^0.0.48","@bananapus/suckers-v6":"^0.0.33","@bananapus/721-hook-v6":"^0.0.43","@openzeppelin/contracts":"5.6.1","@bananapus/router-terminal-v6":"^0.0.36"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"0.0.25"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.30_1778631100991_0.8832497856875012","host":"s3://npm-registry-packages-npm-production"}},"0.0.31":{"name":"@bannynet/core-v6","version":"0.0.31","license":"MIT","_id":"@bannynet/core-v6@0.0.31","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"c03bc706e6d32478f38c0faa4821086ed058244a","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.31.tgz","fileCount":16,"integrity":"sha512-IqCyAU0MWoCmSVnnsMvVFyNBoxNlXuVFYefZWYnMH0hmGnWf8juXryPSau/yptuFmEUvWBiHNddngC04GvsIUw==","signatures":[{"sig":"MEUCIQD4CP/yaxfwWdaTF0WnTYW68/37se2ZPVtx+25f9TqvSgIgDH798qRrsm40PIiUr65oQihMHTZSwinXsseT7sxrO7Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9458307},"engines":{"node":">=20.0.0"},"gitHead":"50f9f7070472f9f35c025b7210fdfa135c7e5100","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@rev-net/core-v6":"^0.0.55","@bananapus/core-v6":"^0.0.49","@bananapus/suckers-v6":"^0.0.43","@bananapus/721-hook-v6":"^0.0.49","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.45","@bananapus/router-terminal-v6":"^0.0.43"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.25"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.31_1778822183854_0.7014973143509222","host":"s3://npm-registry-packages-npm-production"}},"0.0.32":{"name":"@bannynet/core-v6","version":"0.0.32","license":"MIT","_id":"@bannynet/core-v6@0.0.32","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"011700cecfa0321c5bdd6d2e393a57ea7a4132e4","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.32.tgz","fileCount":16,"integrity":"sha512-54em7iyOnEQ4+n0Q8+SY/nDWetfkTC2ZaNzQJgRxd7pvad7kKW4yHXO8QSq1b0SbPzipKAFgPDgww/7/ZlFxXg==","signatures":[{"sig":"MEUCIQC6gsazyxEFMaGZYEkRgeW6vPMfQUOr9aMgTGEjIvqnxgIga3OQyjPnf43myne+doiaP3FreUN8hKX+LLhj26OHK9M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9458734},"engines":{"node":">=20.0.0"},"gitHead":"bb9b1acd64f7e32a9fe168271d5d91290f217d12","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@rev-net/core-v6":"^0.0.57","@bananapus/core-v6":"^0.0.54","@bananapus/suckers-v6":"^0.0.47","@bananapus/721-hook-v6":"^0.0.51","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.47","@bananapus/router-terminal-v6":"^0.0.44"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.25"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.32_1779069428025_0.23311089343876823","host":"s3://npm-registry-packages-npm-production"}},"0.0.33":{"name":"@bannynet/core-v6","version":"0.0.33","license":"MIT","_id":"@bannynet/core-v6@0.0.33","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"fd66e977dca099ecb270d5a978b0459c699b6e7d","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.33.tgz","fileCount":16,"integrity":"sha512-fY6s3l0+olwGDVKSB0llkV30dEdloGbtTZ0x4+tpB5daRnzPZcsS9yP7A4DuCWXiVJpCqhxhdHppDbQJZxHkQw==","signatures":[{"sig":"MEUCIQCzMA1pZVl/zpjwixoqNQ5qQKtWEoIarhCUNOE6nDApvQIgKEEuAx0nm7xI5+Pb+c69UQdpMC0HcamML67YXxQBa/o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9458899},"engines":{"node":">=20.0.0"},"gitHead":"a588a6f131b04f7530d3192a8e1a726650230a04","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@rev-net/core-v6":"^0.0.57","@bananapus/core-v6":"^0.0.54","@bananapus/suckers-v6":"^0.0.47","@bananapus/721-hook-v6":"^0.0.51","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.47","@bananapus/router-terminal-v6":"^0.0.44"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.25"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.33_1779130174101_0.7519827088884175","host":"s3://npm-registry-packages-npm-production"}},"0.0.34":{"name":"@bannynet/core-v6","version":"0.0.34","license":"MIT","_id":"@bannynet/core-v6@0.0.34","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"6e1d0b2bf43d5bb1dc7eb2deb39528942b25e6ed","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.34.tgz","fileCount":16,"integrity":"sha512-wSiOrCpzUhiUVbRP4qrFWfS8YORq5m66NdOjoLDgyOqaOBqZPk0IcHYp0UAitZj/yuTmZ21VM3NOqaPyXyq2rg==","signatures":[{"sig":"MEUCIHwW09n5sGQfNGCRAxVrAgKXoKYr/hd/+tsvfQmDOvd2AiEAzRVFZ6xZYDUPOXlmG1JBV+eaJ/VoDVyYil4FPwwyAa0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9458847},"engines":{"node":">=20.0.0"},"gitHead":"4f950929b1432007af791c66239b700e79e08d57","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@rev-net/core-v6":"^0.0.57","@bananapus/core-v6":"^0.0.54","@bananapus/suckers-v6":"^0.0.47","@bananapus/721-hook-v6":"^0.0.51","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.47","@bananapus/router-terminal-v6":"^0.0.44"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.25"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.34_1779131793524_0.40950873640408614","host":"s3://npm-registry-packages-npm-production"}},"0.0.35":{"name":"@bannynet/core-v6","version":"0.0.35","license":"MIT","_id":"@bannynet/core-v6@0.0.35","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"0e7eebffc2d92929d18c85940cca16f909e31203","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.35.tgz","fileCount":16,"integrity":"sha512-cfA7K569Osq1JIxj2LZs2RrVbqbdEwrtO9Dmd75HGPlTWJDZmCkc2/XXQNitJh38uPJVTv+10wKqqLGRFzgjeA==","signatures":[{"sig":"MEQCIHKosF2kUlHAJwTrbhvtvZ+yK2UpiyWB5m3wDYquHrjWAiB2KNlHslx5ps+ee2heMDkCQz4FXjRxS3isfobZxC0URg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9458847},"engines":{"node":">=20.0.0"},"gitHead":"50bbe9488df4bf48f9f4a3524a42db39e949497b","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@rev-net/core-v6":"^0.0.58","@bananapus/core-v6":"^0.0.55","@bananapus/suckers-v6":"^0.0.48","@bananapus/721-hook-v6":"^0.0.52","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.48","@bananapus/router-terminal-v6":"^0.0.45"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.26"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.35_1779141128969_0.975149818294073","host":"s3://npm-registry-packages-npm-production"}},"0.0.36":{"name":"@bannynet/core-v6","version":"0.0.36","license":"MIT","_id":"@bannynet/core-v6@0.0.36","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"0518f7af5e63d6fcd97b93f3b26b958f76c641b5","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.36.tgz","fileCount":16,"integrity":"sha512-es5wrZbaqcJS6oWw4vAYVhNZHEJ/kMJySm5/vNhZvZDJvy6FFh4o3f5TYU4FtnujEw3Mqz9AhA/odRr+8if4cw==","signatures":[{"sig":"MEUCIB0cev5pfrMv5hkrQ8oylnq8ipcW4eEk3xs3TwHYAv2LAiEAr5DGtSaTnH7OHLlAtwJZ74oO4ABiAL0CJ1ME2VSJCpw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9457784},"engines":{"node":">=20.0.0"},"gitHead":"4f08ccf7c2915087312be944c3469ddb6368875f","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@croptop/core-v6":"^0.0.52","@rev-net/core-v6":"^0.0.61","@bananapus/core-v6":"^0.0.57","@bananapus/suckers-v6":"^0.0.49","@bananapus/721-hook-v6":"^0.0.54","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.49","@bananapus/router-terminal-v6":"^0.0.46"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.26"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.36_1779396138260_0.5899923562235552","host":"s3://npm-registry-packages-npm-production"}},"0.0.37":{"name":"@bannynet/core-v6","version":"0.0.37","license":"MIT","_id":"@bannynet/core-v6@0.0.37","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"179f894ae6709e4472154e587164d1b5185deb1c","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.37.tgz","fileCount":15,"integrity":"sha512-J76C4KyL/dvdckStG9bjOwHLNsbZJJkns5HHFl0hX46ooCUPEvVgeCNRka2HwxI68OXS6B/Cfa6Gth7byRf2uA==","signatures":[{"sig":"MEQCIAGlMPZoaTqZgBYwUkJc35+ljW5fvNiMgn4Mf9fydWRyAiA9WtL1IM18tnJyQCKA/oU3uN5B91wl/9BqrGI1fLJIhA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9454670},"engines":{"node":">=20.0.0"},"gitHead":"14650419ecfe9aa977ffd46d9cc379d0021970e7","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@croptop/core-v6":"^0.0.52","@rev-net/core-v6":"^0.0.61","@bananapus/core-v6":"^0.0.57","@bananapus/suckers-v6":"^0.0.49","@bananapus/721-hook-v6":"^0.0.54","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.49","@bananapus/router-terminal-v6":"^0.0.46"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.26"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.37_1779552331945_0.4810032425565913","host":"s3://npm-registry-packages-npm-production"}},"0.0.38":{"name":"@bannynet/core-v6","version":"0.0.38","license":"MIT","_id":"@bannynet/core-v6@0.0.38","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"36cfa5e828b263d23baf5353a2243dd14e7fe3b0","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.38.tgz","fileCount":15,"integrity":"sha512-unlEQqsvcSQ2lvf6U2czfD7xvtoQnQJpOp9dLRKYZq6nNEH7JD2aRwHjse3kozFNuY+yCbLIhPgGaHRF8VFWZA==","signatures":[{"sig":"MEQCIBHU8tTdIofaJ4e0pKT9nX1gTp6pnL27hhcSTAK8Tu9AAiAkyTp7aw8a4544GxUJmf6ITgB0yXLKMRtciNwp8Oarng==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9454670},"engines":{"node":">=20.0.0"},"gitHead":"9442f0e338327e966af35cdb0dba56fea8db9976","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@croptop/core-v6":"^0.0.53","@rev-net/core-v6":"^0.0.65","@bananapus/core-v6":"^0.0.60","@bananapus/suckers-v6":"^0.0.52","@bananapus/721-hook-v6":"^0.0.55","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.51","@bananapus/router-terminal-v6":"^0.0.49"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.26"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.38_1779557110823_0.49516672650065297","host":"s3://npm-registry-packages-npm-production"}},"0.0.39":{"name":"@bannynet/core-v6","version":"0.0.39","license":"MIT","_id":"@bannynet/core-v6@0.0.39","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"6b354f7945d93c7ba15a9c3a9f4daa7c6fb34367","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.39.tgz","fileCount":15,"integrity":"sha512-98gCmPoH+E0aXSAIKfPTExzwNmYkXjA6GBDDEr4fq+zR85vc+A4FF2TQ6PJObIvdUT1HXrFLt5hWCrp5MC1yIA==","signatures":[{"sig":"MEUCIQCfQweF+jXtHjGQlGiZRJSQXd4rliSOyXPbpyGnSNbD4gIgQwUgJWt67GR0cmfWUnLrj6z2zTafHMeASo46XWqyCaM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9454670},"engines":{"node":">=20.0.0"},"gitHead":"0760a5d2f1cf35f9efa008f880cc93577fc27cf0","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@croptop/core-v6":"^0.0.53","@rev-net/core-v6":"^0.0.67","@bananapus/core-v6":"^0.0.60","@bananapus/suckers-v6":"^0.0.52","@bananapus/721-hook-v6":"^0.0.55","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.51","@bananapus/router-terminal-v6":"^0.0.49"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.26"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.39_1779657970116_0.3099230203649017","host":"s3://npm-registry-packages-npm-production"}},"0.0.40":{"name":"@bannynet/core-v6","version":"0.0.40","license":"MIT","_id":"@bannynet/core-v6@0.0.40","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"9a7eb785b5e86596a894666317d0436014aff109","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.40.tgz","fileCount":15,"integrity":"sha512-RC1gRpAGIMw8PspdTlyTQm8+cmAaFqgEQ9P6T3OhgSRDOJNjZOcHOcGaW5cmVHwo3WKgglR1P8cBYq6MFlx4Lg==","signatures":[{"sig":"MEYCIQDVYLyGVgck8uowKPIkK26/KlZgKptnR03ie0IzmBwWUAIhAPBtR4JvVhfc8pr0QB7tcR5LZUP6DI9T3j5dYfCQiE+4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9454670},"engines":{"node":">=20.0.0"},"gitHead":"4d693cc2c5ad377b78a8e2568d3dcadb753eb490","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@croptop/core-v6":"^0.0.59","@rev-net/core-v6":"^0.0.76","@bananapus/core-v6":"^0.0.68","@bananapus/suckers-v6":"^0.0.58","@bananapus/721-hook-v6":"^0.0.57","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.55","@bananapus/router-terminal-v6":"^0.0.52"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.28"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.40_1779756415648_0.13237609663946293","host":"s3://npm-registry-packages-npm-production"}},"0.0.41":{"name":"@bannynet/core-v6","version":"0.0.41","license":"MIT","_id":"@bannynet/core-v6@0.0.41","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"1a1714fc8f587fc027ab27d25cfc53611229b6a0","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.41.tgz","fileCount":15,"integrity":"sha512-ItnLp0Vu1Wx3r3MnLVoG3nL6mYlxQ+kBigfZTAJqv7czZSOWOBoK/+9vqtv80af9LK2XsJgL12MY4/T9sO7kOA==","signatures":[{"sig":"MEUCICEybs0O7A4388jduYI0MvH3TjTfVtdW6QM+lPSCe4EaAiEAu2MLbRWmgjMUdOtQV8g5p2J+avns+gT3G8THHjTm5Ns=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9454888},"engines":{"node":">=20.0.0"},"gitHead":"24ac31189a9ee558e7cce35000a02f8863a274ec","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@croptop/core-v6":"^0.0.60","@rev-net/core-v6":"^0.0.78","@bananapus/core-v6":"^0.0.72","@bananapus/suckers-v6":"^0.0.60","@bananapus/721-hook-v6":"^0.0.59","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.58","@bananapus/router-terminal-v6":"^0.0.55"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.29"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.41_1779914873419_0.22311265904815358","host":"s3://npm-registry-packages-npm-production"}},"0.0.42":{"name":"@bannynet/core-v6","version":"0.0.42","license":"MIT","_id":"@bannynet/core-v6@0.0.42","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"026e7488545dd14d6413924c0a3cb4a74a4d68fc","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.42.tgz","fileCount":15,"integrity":"sha512-nyE6uXRGzRK8fyTbBSGfziZMF5ZHWtCXnjiyDdmuVjUskjYLlY1mc951zZRN1Wgp5CJ2SFjUkPUEHOOoEJZuVw==","signatures":[{"sig":"MEUCIQCEibt3HERMA/vzbo6b3XmQBtbiGrAS94al0G0lJtmPQgIgaVLkJxFWBByP6uAJ0NzGT0XnMeKbKehS7Wpa3OZD7iw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9456857},"engines":{"node":">=20.0.0"},"gitHead":"d9f9b91938bb9fd2f4be99111439a0476a2f5abb","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@croptop/core-v6":"^0.0.60","@rev-net/core-v6":"^0.0.78","@bananapus/core-v6":"^0.0.72","@bananapus/suckers-v6":"^0.0.60","@bananapus/721-hook-v6":"^0.0.59","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.58","@bananapus/router-terminal-v6":"^0.0.55"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.29"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.42_1780331292558_0.27428037452705945","host":"s3://npm-registry-packages-npm-production"}},"0.0.43":{"name":"@bannynet/core-v6","version":"0.0.43","license":"MIT","_id":"@bannynet/core-v6@0.0.43","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"82842d706eb1ae2ce9bca7e8ec405b271f0482d7","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.43.tgz","fileCount":15,"integrity":"sha512-txeOdaW9EyySBRPseV/cxIN90XR7wCnD7I2i8Tg2WL7nt3+4xOpAiTMTPJP3ShIYevtMeR8K+I7+rd0R5FLSMQ==","signatures":[{"sig":"MEUCIQDzq5X+YSA61dBiD28xe3e+Krm05qOJxsQGuKgkyP8IuAIgfxTnhca/tyBsp1IOvg7P2goW4hpMWVvqk2zhKs/LyBA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9456857},"engines":{"node":">=20.0.0"},"gitHead":"5693730438fbfe784c7e58e43fa36777b8a92cb9","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"Banny Retail is an onchain avatar system for Juicebox 721 collections. A body NFT can wear outfit NFTs, use a background NFT, and resolve to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@croptop/core-v6":"^0.0.64","@rev-net/core-v6":"^0.0.84","@bananapus/core-v6":"^0.0.78","@bananapus/suckers-v6":"^0.0.67","@bananapus/721-hook-v6":"^0.0.65","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.66","@bananapus/router-terminal-v6":"^0.0.60"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.32"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.43_1780346737223_0.7345737453601098","host":"s3://npm-registry-packages-npm-production"}},"0.0.44":{"name":"@bannynet/core-v6","version":"0.0.44","license":"MIT","_id":"@bannynet/core-v6@0.0.44","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"df0254e5502cade5765aff92e3ac208168b357fc","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.44.tgz","fileCount":15,"integrity":"sha512-YqOwfSzjM9rfjAcIRKkPSq+QndwVRFHrRYFQxXbcl6AgVAEuAmOfuq5ozG/lh7mu25p/ixOp8q5fdlwlLzYVZQ==","signatures":[{"sig":"MEQCIAHPpIgKBpqaj6G+20NlixusLdT9ZHrkL5o4PsPilyQ2AiBSuq9XIUq/9DCdfBbwlj3mLBNX1Ycz+EBC3s7Kt9SFfQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9460063},"engines":{"node":">=20.0.0"},"gitHead":"a080a2f5b1a906287ffce921ba4a84a3902513c4","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","generate:migration":"node ./script/outfit_drop/generate-migration.js","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"`@bannynet/core-v6` is the onchain avatar layer for Juicebox 721 collections. It defines how a body NFT wears outfit NFTs, uses a background NFT, and resolves to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"keccak":"3.0.4","@croptop/core-v6":"^0.0.64","@rev-net/core-v6":"^0.0.84","@bananapus/core-v6":"^0.0.78","@bananapus/suckers-v6":"^0.0.67","@bananapus/721-hook-v6":"^0.0.65","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.66","@bananapus/router-terminal-v6":"^0.0.60"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.32"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.44_1780539768878_0.21698437383488756","host":"s3://npm-registry-packages-npm-production"}},"0.0.45":{"name":"@bannynet/core-v6","version":"0.0.45","license":"MIT","_id":"@bannynet/core-v6@0.0.45","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"8ffb9a4ef9f8f0e6a6cefc94427af19ef5032d11","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.45.tgz","fileCount":15,"integrity":"sha512-oyf7RZHIUPmMUfMOx45zjGjPVdnxPgXAz6rwr+BmoNtm2j+BAgRJ6EgzA+yDL1M+2F2RALZuRJF+LMGctyyY0A==","signatures":[{"sig":"MEUCIQDjOCLQ4Ch3UOvw/l+uG7fo03ve+vQyYt5CkKOhNB9GBQIgXmflMI/frOPcTrcYr7VzR3AXLIjBQ56DW7Z/9BAERFs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9459823},"engines":{"node":">=20.0.0"},"gitHead":"5b0ba8eb6d96f776971861acdbc9071dfe842b93","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"`@bannynet/core-v6` is the onchain avatar layer for Juicebox 721 collections. It defines how a body NFT wears outfit NFTs, uses a background NFT, and resolves to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"@rev-net/core-v6":"^0.0.89","@bananapus/core-v6":"^0.0.82","@bananapus/suckers-v6":"^0.0.72","@bananapus/721-hook-v6":"^0.0.69","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.69"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.34"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.45_1780611313043_0.37316501385870526","host":"s3://npm-registry-packages-npm-production"}},"0.0.46":{"name":"@bannynet/core-v6","version":"0.0.46","license":"MIT","_id":"@bannynet/core-v6@0.0.46","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"823fc158b282f41377a8a7fa5027752a5c52e7dd","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.46.tgz","fileCount":15,"integrity":"sha512-Ox702Sw1lJxksLWk+RAK4+G2FnVvN5Wes09y8OSF/h+tR8ivmTS0NQYO4vzyG7XqVRiFQHNLoE/RCO4Vj/gxgA==","signatures":[{"sig":"MEUCIB5nGzeoLpb1l7KoeK7WPx9DCTB9TrOGlmJZdHoyDLUcAiEA/QJd6u1vknWQsFjwydVAEDgxXu8/BmVGwDZ6Pf0IOeU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9459823},"engines":{"node":">=20.0.0"},"gitHead":"804942c9ee576f563fb46b60c24224ba2ceb0f29","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"`@bannynet/core-v6` is the onchain avatar layer for Juicebox 721 collections. It defines how a body NFT wears outfit NFTs, uses a background NFT, and resolves to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"@rev-net/core-v6":"^0.0.89","@bananapus/core-v6":"^0.0.82","@bananapus/suckers-v6":"^0.0.72","@bananapus/721-hook-v6":"^0.0.69","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.70"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.34"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.46_1780882010498_0.8915838910804841","host":"s3://npm-registry-packages-npm-production"}},"0.0.47":{"name":"@bannynet/core-v6","version":"0.0.47","license":"MIT","_id":"@bannynet/core-v6@0.0.47","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"0b4d31a48b2f818155faf8f9c383a9b2e4915c5c","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.47.tgz","fileCount":15,"integrity":"sha512-ghncjVchpi9utHoMeF4VIx3wYsKHtoj8brN13p1GrE76kDEcSDk5CpQAHnjMdNg4GS5mDafxKN+ShxuFiAqFUw==","signatures":[{"sig":"MEYCIQD8G5MGPO4y8NRkgANpXobVhPwXQEi0HHwmLPqsrRo0fAIhAObq2SF5x2l6XmcABIU1D44vhju520HZputgnmtlWnDv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9459823},"engines":{"node":">=20.0.0"},"gitHead":"ec3d5dea99892821c1ef85b57554779e5f886c59","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"`@bannynet/core-v6` is the onchain avatar layer for Juicebox 721 collections. It defines how a body NFT wears outfit NFTs, uses a background NFT, and resolves to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"@rev-net/core-v6":"^0.0.91","@bananapus/core-v6":"^0.0.86","@bananapus/suckers-v6":"^0.0.73","@bananapus/721-hook-v6":"^0.0.73","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.71"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.35"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.47_1780935895377_0.1455185250681299","host":"s3://npm-registry-packages-npm-production"}},"0.0.48":{"name":"@bannynet/core-v6","version":"0.0.48","license":"MIT","_id":"@bannynet/core-v6@0.0.48","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"204969cfe943a1bb7584dd135456491dd125e8b6","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.48.tgz","fileCount":15,"integrity":"sha512-MJ8VEtyd7U3dG75i936ogekN9wSbIroUTxUS6pDfl76FO/7aj+L5p550tPVE3v2coibIMuhs2R+hsc9TFtZjzQ==","signatures":[{"sig":"MEUCIHl++K8NxTOsDRkaYb0LHOyW4rb52IV1Z75dfEvTzvRcAiEA/ztwMqS2kJnVBCVBlquaAjrpbg/Jogm5fc8xybUwEF0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9459823},"engines":{"node":">=20.0.0"},"gitHead":"d7309dad4faf02b09a7bfbf5411dd9a7b6436a59","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"`@bannynet/core-v6` is the onchain avatar layer for Juicebox 721 collections. It defines how a body NFT wears outfit NFTs, uses a background NFT, and resolves to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"@rev-net/core-v6":"^0.0.93","@bananapus/core-v6":"^0.0.87","@bananapus/suckers-v6":"^0.0.76","@bananapus/721-hook-v6":"^0.0.76","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.73"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.48_1781128437973_0.16756758196817634","host":"s3://npm-registry-packages-npm-production"}},"0.0.49":{"name":"@bannynet/core-v6","version":"0.0.49","license":"MIT","_id":"@bannynet/core-v6@0.0.49","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"17e03771862d8d07642b30b3751b9eda6c60e395","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-0.0.49.tgz","fileCount":15,"integrity":"sha512-oJjSPB54EqFXovoNYP2u5VxBr2WdMsdiOc9ejJmXfsVzLwcM+H9KExttsskMumTRbyfC3BOUCLQCoWQE8Qt7Fw==","signatures":[{"sig":"MEYCIQC+AOcMMl55fH56/95nyYjcaHhMsBPx+kKDOjmi36mp4QIhAP0frPuIG9pqPtXDpf8rgNbBzKLC16x4M63jk9C9D2x5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9459823},"engines":{"node":">=20.0.0"},"gitHead":"507ddf060d5b1057ac1def95740561f61ffe97a9","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"`@bannynet/core-v6` is the onchain avatar layer for Juicebox 721 collections. It defines how a body NFT wears outfit NFTs, uses a background NFT, and resolves to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"@rev-net/core-v6":"^0.0.93","@bananapus/core-v6":"^0.0.87","@bananapus/suckers-v6":"^0.0.79","@bananapus/721-hook-v6":"^0.0.76","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^0.0.73"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_0.0.49_1781472824217_0.43833250881636987","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@bannynet/core-v6","version":"1.0.0","license":"MIT","_id":"@bannynet/core-v6@1.0.0","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"homepage":"https://github.com/mejango/banny-retail-v6#readme","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"dist":{"shasum":"788a95a6a825b4ce29ee6e937946f22ce7116cae","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-1.0.0.tgz","fileCount":15,"integrity":"sha512-vSgcz8t+rBIaVsFE818oYvfMwRYGTKVvf/olM8ElokJyd4gFzTsqXp6gWV9g68uw8wvtFV2vVRny7caqn10ikg==","signatures":[{"sig":"MEQCIDmvBmGVBVYqrbHGSdz9uLO6NmRkH/W6DqQsFFiV+P/zAiA1rIz4z/KNWjXywm9EoJ3kX0Un3cPa+2vGq5/6pMdi2Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9459816},"engines":{"node":">=20.0.0"},"gitHead":"ddab8030936e7204957290709b9d73eea6a584df","scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets"},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"repository":{"url":"git+https://github.com/mejango/banny-retail-v6.git","type":"git"},"_npmVersion":"11.12.1","description":"`@bannynet/core-v6` is the onchain avatar layer for Juicebox 721 collections. It defines how a body NFT wears outfit NFTs, uses a background NFT, and resolves to a base64 JSON token URI whose image is an onchain SVG.","directories":{},"_nodeVersion":"25.9.0","dependencies":{"@rev-net/core-v6":"^1.0.0","@bananapus/core-v6":"^1.0.0","@bananapus/suckers-v6":"^1.0.0","@bananapus/721-hook-v6":"^1.0.0","@openzeppelin/contracts":"5.6.1","@bananapus/buyback-hook-v6":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"@sphinx-labs/plugins":"0.33.3","@bananapus/address-registry-v6":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/core-v6_1.0.0_1781487670099_0.899465339712683","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@bannynet/core-v6","version":"1.1.0","license":"MIT","repository":{"type":"git","url":"git+https://github.com/mejango/banny-retail-v6.git"},"engines":{"node":">=20.0.0"},"scripts":{"test":"forge test","coverage":"forge coverage --match-path \"./src/*.sol\" --report lcov --report summary","deploy:mainnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks mainnets","deploy:testnets":"source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets","deploy:testnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets","deploy:mainnets:drop:1":"source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets","artifacts":"source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'"},"dependencies":{"@bananapus/721-hook-v6":"^1.0.0","@bananapus/buyback-hook-v6":"^1.0.0","@bananapus/core-v6":"^1.0.0","@bananapus/suckers-v6":"^1.0.0","@openzeppelin/contracts":"5.6.1","@rev-net/core-v6":"^1.0.0"},"devDependencies":{"@bananapus/address-registry-v6":"^1.0.0","@sphinx-labs/plugins":"0.33.3"},"gitHead":"f29de8e5642df783e9364df5782c5ac1cd778968","_id":"@bannynet/core-v6@1.1.0","description":"`@bannynet/core-v6` is the onchain avatar layer for Juicebox 721 collections. It defines how a body NFT wears outfit NFTs, uses a background NFT, and resolves to a base64 JSON token URI whose image is an onchain SVG.","bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"homepage":"https://github.com/mejango/banny-retail-v6#readme","_nodeVersion":"25.9.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-xfhAqhluW5NwbfkUgOl7jMI3PqzJpgrgDvQG1AFPcsVqt6oSLOddQWgi+SLBfo7b3ITAtBpM/1Feed+b4IBhNw==","shasum":"83c8d52d821235a3e9645430ab23fa61cf3ee648","tarball":"https://registry.npmjs.org/@bannynet/core-v6/-/core-v6-1.1.0.tgz","fileCount":23,"unpackedSize":10900115,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDPrdPM3kUCKvSsvizKAkAx8qZB+COWoIALpgi00ITkLwIgbLpYgBc9xeEgJZf1UObeDTAgEqAnT7pxot7y3vfB0ZI="}]},"_npmUser":{"name":"me.jango","email":"me.jango@protonmail.com"},"directories":{},"maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/core-v6_1.1.0_1781741482497_0.2564491793789694"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-06T22:00:37.055Z","modified":"2026-06-18T00:11:22.849Z","0.0.1":"2026-03-06T22:00:37.319Z","0.0.2":"2026-03-07T15:06:07.078Z","0.0.3":"2026-03-07T19:20:52.640Z","0.0.4":"2026-03-08T19:14:30.479Z","0.0.5":"2026-03-09T02:01:58.791Z","0.0.6":"2026-03-10T04:07:55.048Z","0.0.7":"2026-03-12T23:08:11.490Z","0.0.8":"2026-03-14T04:25:03.343Z","0.0.9":"2026-03-14T04:37:31.520Z","0.0.10":"2026-03-18T22:01:49.859Z","0.0.11":"2026-03-21T22:28:24.200Z","0.0.12":"2026-03-25T17:10:39.075Z","0.0.13":"2026-03-25T22:16:09.921Z","0.0.14":"2026-03-28T18:06:12.189Z","0.0.15":"2026-03-31T13:02:46.659Z","0.0.16":"2026-03-31T17:01:03.186Z","0.0.17":"2026-03-31T18:13:08.632Z","0.0.18":"2026-03-31T22:46:36.233Z","0.0.19":"2026-04-06T23:31:30.967Z","0.0.20":"2026-04-07T01:37:11.057Z","0.0.21":"2026-04-09T03:43:34.691Z","0.0.22":"2026-04-20T03:07:19.345Z","0.0.23":"2026-04-20T14:06:46.901Z","0.0.24":"2026-04-26T11:58:06.694Z","0.0.25":"2026-05-05T04:48:20.117Z","0.0.26":"2026-05-05T05:01:04.057Z","0.0.27":"2026-05-05T15:27:31.681Z","0.0.28":"2026-05-06T15:07:57.248Z","0.0.29":"2026-05-12T14:41:03.990Z","0.0.30":"2026-05-13T00:11:41.266Z","0.0.31":"2026-05-15T05:16:24.017Z","0.0.32":"2026-05-18T01:57:08.179Z","0.0.33":"2026-05-18T18:49:34.292Z","0.0.34":"2026-05-18T19:16:33.727Z","0.0.35":"2026-05-18T21:52:09.175Z","0.0.36":"2026-05-21T20:42:18.455Z","0.0.37":"2026-05-23T16:05:32.120Z","0.0.38":"2026-05-23T17:25:11.038Z","0.0.39":"2026-05-24T21:26:10.310Z","0.0.40":"2026-05-26T00:46:55.836Z","0.0.41":"2026-05-27T20:47:53.575Z","0.0.42":"2026-06-01T16:28:12.699Z","0.0.43":"2026-06-01T20:45:37.388Z","0.0.44":"2026-06-04T02:22:49.057Z","0.0.45":"2026-06-04T22:15:13.294Z","0.0.46":"2026-06-08T01:26:50.695Z","0.0.47":"2026-06-08T16:24:55.597Z","0.0.48":"2026-06-10T21:53:58.165Z","0.0.49":"2026-06-14T21:33:44.397Z","1.0.0":"2026-06-15T01:41:10.260Z","1.1.0":"2026-06-18T00:11:22.705Z"},"bugs":{"url":"https://github.com/mejango/banny-retail-v6/issues"},"license":"MIT","homepage":"https://github.com/mejango/banny-retail-v6#readme","repository":{"type":"git","url":"git+https://github.com/mejango/banny-retail-v6.git"},"description":"`@bannynet/core-v6` is the onchain avatar layer for Juicebox 721 collections. It defines how a body NFT wears outfit NFTs, uses a background NFT, and resolves to a base64 JSON token URI whose image is an onchain SVG.","maintainers":[{"name":"me.jango","email":"me.jango@protonmail.com"}],"readme":"# Banny Retail\n\n`@bannynet/core-v6` is the onchain avatar layer for Juicebox 721 collections. It defines how a body NFT wears outfit NFTs, uses a background NFT, and resolves to a base64 JSON token URI whose image is an onchain SVG.\n\n\n## Documentation\n\n- [ARCHITECTURE.md](./ARCHITECTURE.md) — system structure and contract responsibilities\n- [USER_JOURNEYS.md](./USER_JOURNEYS.md) — end-to-end flows for body owners and asset holders\n- [INVARIANTS.md](./INVARIANTS.md) — properties guaranteed by the resolver\n- [RISKS.md](./RISKS.md) — known risks and edge cases\n- [ADMINISTRATION.md](./ADMINISTRATION.md) — owner-only actions and operational levers\n- [AUDIT_INSTRUCTIONS.md](./AUDIT_INSTRUCTIONS.md) — guidance for security reviewers\n- [SKILLS.md](./SKILLS.md) — repo-specific gotchas and integration notes\n- [STYLE_GUIDE.md](./STYLE_GUIDE.md) — coding and naming conventions\n- [CHANGELOG.md](./CHANGELOG.md) - V5 to V6 migration changelog\n\n## Overview\n\nThis is a resolver-centric app built on top of [`@bananapus/721-hook-v6`](https://www.npmjs.com/package/@bananapus/721-hook-v6). The resolver holds attached outfit and background NFTs while a body is decorated, then composes the active layers into a single token URI response.\n\nThe main user flows are:\n\n- mint body, outfit, and background NFTs through a Juicebox 721 hook\n- attach accessories to a body with `decorateBannyWith`\n- optionally freeze the look for seven days with `lockOutfitChangesFor`\n- upload SVG payloads after an owner registers the content hashes\n\nUse this repo when you need collection-specific, fully onchain metadata composition on top of Juicebox NFTs. Do not use it as a generic 721 hook. It is an app-layer resolver, not a protocol NFT primitive.\n\n## Key contract\n\n| Contract | Role |\n| --- | --- |\n| `Banny721TokenUriResolver` | Resolves metadata, stores equipped accessories, enforces outfit locks, and renders layered SVG output for Banny collections. |\n\n## Mental model\n\nThis repo owns three things:\n\n1. custody of outfit and background NFTs while they are equipped\n2. rules for what a body can wear and when that can change\n3. rendering of the final metadata payload\n\nIt does not own mint pricing, tier issuance, or treasury accounting.\n\n## Read these files first\n\n1. `src/Banny721TokenUriResolver.sol`\n2. `test/DecorateFlow.t.sol`\n3. `test/OutfitTransferLifecycle.t.sol`\n4. `nana-721-hook-v6/src/JB721TiersHook.sol` for upstream mint and tier behavior\n\n## High-signal tests\n\n1. `test/DecorateFlow.t.sol`\n2. `test/OutfitTransferLifecycle.t.sol`\n3. `test/regression/BurnedBodyStrandsAssets.t.sol`\n4. `test/regression/TryTransferFromStrandsAssets.t.sol`\n5. `test/TestQALastMile.t.sol`\n\n## Integration traps\n\n- the resolver holds equipped assets, so transfer edge cases matter as much as rendering output\n- transferred bodies carry their equipped assets, so a new body holder can inherit control of them\n- burned bodies and non-safe transfer patterns can strand expectations around resolver-held assets\n- outfit locks survive body transfers until expiry\n- metadata quality depends on lazily uploaded asset payloads, not only token state\n\n## Where state lives\n\n- equipped outfit and background state live in `Banny721TokenUriResolver`\n- layer rendering and token URI generation live in the same resolver\n- mint pricing, tier inventory, and treasury behavior live upstream in `nana-721-hook-v6`\n\n## Install\n\n```bash\nnpm install @bannynet/core-v6\n```\n\n## Development\n\nThe contract stack relies on `via_ir = true` in `foundry.toml`.\n\n```bash\nnpm install\nforge build --deny notes\nforge test --deny notes\n```\n\nUseful scripts:\n\n- `npm run deploy:mainnets`\n- `npm run deploy:testnets`\n- `npm run deploy:mainnets:drop:1`\n- `npm run deploy:testnets:drop:1`\n\n## Deployment notes\n\nDeployments are handled through Sphinx using the environments configured in `script/Deploy.s.sol`. The resolver is meant to be plugged into a Juicebox 721 hook as that hook's token URI resolver.\n\n## Repository layout\n\n```text\nsrc/\n  Banny721TokenUriResolver.sol\n  interfaces/\ntest/\n  unit, attack, fork, review, QA, and regression coverage\nscript/\n  Deploy.s.sol\n  Drop1.s.sol\n  Add.Denver.s.sol\n  helpers/\n```\n\n## Risks and notes\n\n- attached outfits and backgrounds are held by the resolver while equipped\n- outfit locks are fixed-duration and cannot be shortened once set\n- onchain SVG content is immutable once uploaded for a committed hash\n- plain `transferFrom` can still create asset-tracking surprises around resolver custody\n- rendering quality depends on the integrity of uploaded SVG assets\n\n## For AI agents\n\n- Treat this repo as an app-layer resolver, not as the NFT issuance primitive.\n- Start with `Banny721TokenUriResolver` and the lifecycle tests before summarizing attachment behavior.\n- If the question is about mint economics or tier availability, inspect `nana-721-hook-v6` instead.\n","readmeFilename":"README.md"}