const { extendEnvironment } = require('hardhat/config') require('@nomicfoundation/hardhat-toolbox') const deployer = require('./.secret-config') const logger = require('./utils/logger') const debug = require('./utils/debug') const FTM_RPC = 'http://3.227.34.41:8545' const FTM_WS = 'ws://3.227.34.41:8546' const FTM_IPC = '/ethereum/data/opera.ipc' const config = { defaultNetwork: 'FTM', solidity: "0.7.6", networks: { FTM: { url: FTM_RPC, chainId: 250, accounts: [deployer.private] } }, paths: { sources: "./contracts", tests: "./test", cache: "./cache", artifacts: "./artifacts" }, mocha: { timeout: 40000 } } extendEnvironment(async (hre) => { const Web3 = require('web3') hre.Web3 = Web3 logger.debug(`is ${debug.isDev() ? 'dev' : 'pro'} model.`) if (debug.isDev()) { logger.debug(`use ${FTM_WS}`) hre.web3 = new Web3(FTM_WS) logger.debug(await hre.web3.eth.getBlockNumber()) } else { const net = require('net') logger.debug(`use ${FTM_IPC}`) hre.web3 = new Web3(FTM_IPC, net) } }) module.exports=config