UNPKG

hardhat-artifactor

Version:

Dynamically generate deployable Hardhat artifacts

30 lines (24 loc) 752 B
const { extendEnvironment } = require('hardhat/config'); const { name: sourceName } = require('./package.json'); extendEnvironment(function (hre) { hre.createArtifactFromTemplate = async function ( templateContract, generatedContract, bytecode ) { const primaryArtifact = await hre.artifacts.readArtifact(templateContract); await hre.artifacts.saveArtifactAndDebugFile({ ...primaryArtifact, sourceName, contractName: generatedContract, bytecode, }); }; hre.overwriteArtifact = async function (contractName, bytecode) { const artifact = await hre.artifacts.readArtifact(contractName); await hre.artifacts.saveArtifactAndDebugFile({ ...artifact, bytecode, }); }; });