const contractAddresses = require('../contract-addresses.json');

const networks = {
  localhost: '0x539',
  sepolia: '0xaa36a7',
};

const getContractAddressByNetworkName = (networkName, contractName) => {
  const address = contractAddresses[networkName][contractName];
  if (!address) throw new Error(`Contract ${contractName} not recognized`);
  return address;
};

const getContractAddressByChainId = (chainId, contractName) => {
  const network = Object.entries(networks).find(([, id]) => id === chainId)[0];
  if (!network) throw new Error(`Chain ID ${chainId} not recognized`);
  return getContractAddressByNetworkName(network, contractName);
};

module.exports = {
  getContractAddressByChainId,
  getContractAddressByNetworkName,
};