@vechain/vebetterdao-contracts
Version:
Open-source repository that houses the smart contracts powering the decentralized VeBetterDAO on the VeChain Thor blockchain.
38 lines (37 loc) • 1.73 kB
JavaScript
import { ethers } from "hardhat";
export async function deployStargateNFTLibraries({ logOutput = false, } = {}) {
// NOTE: No versioned libraries exist for Stargate NFT
// ------------------- LATEST VERSION ------------------- //
// Deploy Clock Library
const Clock = await ethers.getContractFactory("Clock");
const StargateNFTClockLib = (await Clock.deploy());
await StargateNFTClockLib.waitForDeployment();
logOutput && console.log("Clock Library deployed");
// Deploy Levels Library
const Levels = await ethers.getContractFactory("Levels");
const StargateNFTLevelsLib = (await Levels.deploy());
await StargateNFTLevelsLib.waitForDeployment();
logOutput && console.log("Levels Library deployed");
// Deploy MintingLogic Library
const MintingLogic = await ethers.getContractFactory("MintingLogic");
const StargateNFTMintingLib = (await MintingLogic.deploy());
await StargateNFTMintingLib.waitForDeployment();
logOutput && console.log("MintingLogic Library deployed");
// Deploy Settings Library
const Settings = await ethers.getContractFactory("Settings");
const StargateNFTSettingsLib = (await Settings.deploy());
await StargateNFTSettingsLib.waitForDeployment();
logOutput && console.log("Settings Library deployed");
// Deploy Token Library
const Token = await ethers.getContractFactory("Token");
const StargateNFTTokenLib = (await Token.deploy());
await StargateNFTTokenLib.waitForDeployment();
logOutput && console.log("Token Library deployed");
return {
StargateNFTClockLib,
StargateNFTLevelsLib,
StargateNFTMintingLib,
StargateNFTSettingsLib,
StargateNFTTokenLib,
};
}