@openzeppelin/hardhat-upgrades
Version:
[](https://docs.openzeppelin.com/upgrades-plugins/hardhat-upgrades) [](https://www.npmjs.org/package/@openzeppelin/h
17 lines • 881 B
JavaScript
import { enableDefender } from './defender/utils.js';
import { getContractInstance } from './utils/contract-instance.js';
import { makeEthersBinding, contractInfo } from './ethers-binding.js';
import { deployProxy as engineDeployProxy } from './engine/deploy-proxy.js';
export function makeDeployProxy(hre, defenderModule, connection) {
return async function deployProxy(ImplFactory, args = [], opts = {}) {
if (!Array.isArray(args)) {
opts = args;
args = [];
}
opts = enableDefender(hre, defenderModule, opts);
const binding = makeEthersBinding(hre, connection, ImplFactory.runner, opts);
const proxyDeployment = await engineDeployProxy(binding, contractInfo(ImplFactory), args, opts);
return getContractInstance(hre, ImplFactory, opts, proxyDeployment);
};
}
//# sourceMappingURL=deploy-proxy.js.map