Skip to content

Commit

Permalink
feat: bump @tableland/sdk, ethers, hardhat
Browse files Browse the repository at this point in the history
  • Loading branch information
dtbuchholz committed May 8, 2024
1 parent 63d42cf commit 870fbf3
Show file tree
Hide file tree
Showing 8 changed files with 2,836 additions and 1,850 deletions.
8 changes: 4 additions & 4 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,12 @@ FILECOIN_PRIVATE_KEY=0x0123456789abcdef0123456789abcdef0123456789abcdef012345678
# testnets
ETHEREUM_SEPOLIA_PRIVATE_KEY=0x0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
ETHEREUM_SEPOLIA_API_KEY=fixme
OPTIMISM_GOERLI_PRIVATE_KEY=0x0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
OPTIMISM_GOERLI_API_KEY=fixme
OPTIMISM_SEPOLIA_PRIVATE_KEY=0x0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
OPTIMISM_SEPOLIA_API_KEY=fixme
ARBITRUM_SEPOLIA_PRIVATE_KEY=0x0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
ARBITRUM_SEPOLIA_API_KEY=fixme
POLYGON_MUMBAI_PRIVATE_KEY=0x0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
POLYGON_MUMBAI_API_KEY=fixme
POLYGON_AMOY_PRIVATE_KEY=0x0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
POLYGON_AMOY_API_KEY=fixme
FILECOIN_CALIBRATION_PRIVATE_KEY=0x0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
# contract verification
ETHERSCAN_API_KEY=fixme
Expand Down
85 changes: 67 additions & 18 deletions hardhat.config.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,23 @@
import * as dotenv from "dotenv";
import { HardhatUserConfig, extendEnvironment } from "hardhat/config";
import { HardhatRuntimeEnvironment } from "hardhat/types";
import "hardhat-dependency-compiler";
import "hardhat-gas-reporter";
import "hardhat-contract-sizer";
import "solidity-coverage";
import "@nomicfoundation/hardhat-ethers";
import "@nomicfoundation/hardhat-verify";
import "@nomicfoundation/hardhat-toolbox";
import "@nomicfoundation/hardhat-chai-matchers";
import "@openzeppelin/hardhat-upgrades";
import "@tableland/hardhat";
import { HardhatUserConfig } from "hardhat/config";
import "hardhat-dependency-compiler";
import "@typechain/hardhat";

dotenv.config();

// Replace with your deployed contract address
export const deployedContract = "";

const homestead = {
url: `https://eth-mainnet.alchemyapi.io/v2/${
process.env.ETHEREUM_API_KEY ?? ""
Expand Down Expand Up @@ -38,7 +49,7 @@ const config: HardhatUserConfig = {
currency: "USD",
},
localTableland: {
silent: false,
silent: true,
verbose: false,
},
etherscan: {
Expand All @@ -48,16 +59,26 @@ const config: HardhatUserConfig = {
sepolia: process.env.ETHERSCAN_API_KEY || "",
// optimism
optimisticEthereum: process.env.OPTIMISM_ETHERSCAN_API_KEY || "",
optimisticGoerli: process.env.OPTIMISM_ETHERSCAN_API_KEY || "",
optimisticSepolia: process.env.OPTIMISM_ETHERSCAN_API_KEY || "",
// arbitrum
arbitrumOne: process.env.ARBISCAN_API_KEY || "",
arbitrumNova: process.env.ARBISCAN_NOVA_API_KEY || "",
arbitrumSepolia: process.env.ARBISCAN_API_KEY || "",
// polygon
polygon: process.env.POLYGONSCAN_API_KEY || "",
polygonMumbai: process.env.POLYGONSCAN_API_KEY || "",
polygon: process.env.POLYSCAN_API_KEY || "",
polygonAmoy: process.env.POLYSCAN_API_KEY || "",
},
customChains: [
// optimism
{
network: "optimisticSepolia",
chainId: 11155420,
urls: {
apiURL: "https://api-sepolia-optimistic.etherscan.io/api",
browserURL: "https://sepolia-optimism.etherscan.io/",
},
},
// arbitrum
{
network: "arbitrumNova",
chainId: 42170,
Expand All @@ -74,6 +95,15 @@ const config: HardhatUserConfig = {
browserURL: "https://sepolia.arbiscan.io/",
},
},
// polygon
{
network: "polygonAmoy",
chainId: 80002,
urls: {
apiURL: "https://api-amoy.polygonscan.com/api",
browserURL: "https://amoy.polygonscan.com/",
},
},
],
},
networks: {
Expand All @@ -99,15 +129,13 @@ const config: HardhatUserConfig = {
: [],
},
"arbitrum-nova": {
url: `https://skilled-yolo-mountain.nova-mainnet.discover.quiknode.pro/${
process.env.ARBITRUM_NOVA_API_KEY ?? ""
}`,
url: `https://arbitrum-one-rpc.publicnode.com/${process.env.ARBITRUM_NOVA_API_KEY ?? ""}`,
accounts:
process.env.ARBITRUM_NOVA_PRIVATE_KEY !== undefined
? [process.env.ARBITRUM_NOVA_PRIVATE_KEY]
: [],
},
matic: {
polygon: {
url: `https://polygon-mainnet.g.alchemy.com/v2/${
process.env.POLYGON_API_KEY ?? ""
}`,
Expand Down Expand Up @@ -136,11 +164,11 @@ const config: HardhatUserConfig = {
},
"optimism-goerli": {
url: `https://opt-goerli.g.alchemy.com/v2/${
process.env.OPTIMISM_GOERLI_API_KEY ?? ""
process.env.OPTIMISM_SEPOLIA_API_KEY ?? ""
}`,
accounts:
process.env.OPTIMISM_GOERLI_PRIVATE_KEY !== undefined
? [process.env.OPTIMISM_GOERLI_PRIVATE_KEY]
process.env.OPTIMISM_SEPOLIA_PRIVATE_KEY !== undefined
? [process.env.OPTIMISM_SEPOLIA_PRIVATE_KEY]
: [],
},
"arbitrum-sepolia": {
Expand All @@ -152,13 +180,13 @@ const config: HardhatUserConfig = {
? [process.env.ARBITRUM_SEPOLIA_PRIVATE_KEY]
: [],
},
maticmum: {
url: `https://polygon-mumbai.g.alchemy.com/v2/${
process.env.POLYGON_MUMBAI_API_KEY ?? ""
"polygon-amoy": {
url: `https://polygon-amoy.g.alchemy.com/v2/${
process.env.POLYGON_AMOY_API_KEY ?? ""
}`,
accounts:
process.env.POLYGON_MUMBAI_PRIVATE_KEY !== undefined
? [process.env.POLYGON_MUMBAI_PRIVATE_KEY]
process.env.POLYGON_AMOY_PRIVATE_KEY !== undefined
? [process.env.POLYGON_AMOY_PRIVATE_KEY]
: [],
},
"filecoin-calibration": {
Expand All @@ -170,6 +198,27 @@ const config: HardhatUserConfig = {
timeout: 60_000,
},
},
deployedContract,
};

declare module "hardhat/types/config" {
// eslint-disable-next-line no-unused-vars
interface HardhatUserConfig {
deployedContract: string;
}
}

declare module "hardhat/types/runtime" {
// eslint-disable-next-line no-unused-vars
interface HardhatRuntimeEnvironment {
deployedContract: string;
}
}

extendEnvironment((hre: HardhatRuntimeEnvironment) => {
// Get contract address for user-selected network
const contract = hre.userConfig.deployedContract;
hre.deployedContract = contract;
});

export default config;
Loading

0 comments on commit 870fbf3

Please sign in to comment.