Vendor entrypoint bytecode (#5362)
parent
ad906fe39b
commit
5df10703cd
File diff suppressed because one or more lines are too long
Binary file not shown.
@ -0,0 +1 @@ |
||||
[{"inputs":[{"internalType":"bytes","name":"initCode","type":"bytes"}],"name":"createSender","outputs":[{"internalType":"address","name":"sender","type":"address"}],"stateMutability":"nonpayable","type":"function"}] |
Binary file not shown.
@ -0,0 +1,31 @@ |
||||
const { ethers } = require('hardhat'); |
||||
const { setCode } = require('@nomicfoundation/hardhat-network-helpers'); |
||||
const fs = require('fs'); |
||||
const path = require('path'); |
||||
|
||||
const INSTANCES = { |
||||
entrypoint: { |
||||
address: '0x0000000071727De22E5E9d8BAf0edAc6f37da032', |
||||
abi: JSON.parse(fs.readFileSync(path.resolve(__dirname, '../bin/EntryPoint070.abi'), 'utf-8')), |
||||
bytecode: fs.readFileSync(path.resolve(__dirname, '../bin/EntryPoint070.bytecode'), 'hex'), |
||||
}, |
||||
sendercreator: { |
||||
address: '0xEFC2c1444eBCC4Db75e7613d20C6a62fF67A167C', |
||||
abi: JSON.parse(fs.readFileSync(path.resolve(__dirname, '../bin/SenderCreator070.abi'), 'utf-8')), |
||||
bytecode: fs.readFileSync(path.resolve(__dirname, '../bin/SenderCreator070.bytecode'), 'hex'), |
||||
}, |
||||
}; |
||||
|
||||
function deployEntrypoint() { |
||||
return Promise.all( |
||||
Object.entries(INSTANCES).map(([name, { address, abi, bytecode }]) => |
||||
setCode(address, '0x' + bytecode.replace(/0x/, '')) |
||||
.then(() => ethers.getContractAt(abi, address)) |
||||
.then(instance => ({ [name]: instance })), |
||||
), |
||||
).then(namedInstances => Object.assign(...namedInstances)); |
||||
} |
||||
|
||||
module.exports = { |
||||
deployEntrypoint, |
||||
}; |
Loading…
Reference in new issue